<script type="text/x-red" data-template-name="tail"> <div class="form-row"> <label for="node-input-filename"><i class="fa fa-file"></i> <span data-i18n="tail.label.filename"></span></label> <input id="node-input-filename" type="text"> </div> <div class="form-row"> <label for="node-input-filetype"><i class="fa fa-file-text-o"></i> <span data-i18n="tail.label.type"></span></label> <select type="text" id="node-input-filetype"> <option value="text" data-i18n="tail.action.text"></option> <option value="binary" data-i18n="tail.action.binary"></option> </select> </div> <div class="form-row" id="node-tail-split"> <label> </label> <input type="checkbox" id="node-input-split" placeholder="Name" style="display: inline-block; width: auto; vertical-align: top;"> <label for="node-input-split" style="width: 70%;"><span data-i18n="tail.label.splitlines"></span></label> </div> <div class="form-row"> <label for="node-input-name"><i class="fa fa-tag"></i> <span data-i18n="common.label.name"></span></label> <input type="text" id="node-input-name" data-i18n="[placeholder]common.label.name"> </div> </script> <script type="text/x-red" data-help-name="tail"> <p>Tails (watches for things to be added) to the configured file. (Linux/Mac ONLY)</p> <p>This will not work on Windows filesystems, as it relies on the <b>tail -F</b> command.</p> <h3>Outputs</h3> <ul> <li>Text (UTF-8) files will be returned as strings.</li> <li>Binary files will be returned as Buffer objects.</li> </ul> </script> <script type="text/javascript"> RED.nodes.registerType('tail',{ category: 'storage-input', defaults: { name: {value:""}, filetype: {value:"text"}, split: {value:false}, filename: {value:"",required:true} }, color:"BurlyWood", inputs:0, outputs:1, icon: "file.png", label: function() { return this.name||this.filename||"tail"; }, labelStyle: function() { return this.name?"node_label_italic":""; }, oneditprepare: function() { $("#node-input-filetype").on("change",function() { if (this.value === "text") { $("#node-tail-split").show(); } else { $("#node-tail-split").hide(); } }); } }); </script>