UNPKG

@smcgann/node-red-face-vectorization-plus

Version:
113 lines (108 loc) 3.5 kB
<script type="text/javascript"> function validateInputType(v) { const returnType = Number(v); if (returnType == 0) { this._def.inputLabels = ["Single Face Image"]; } else if (returnType == 1) { this._def.inputLabels = ["Face Image Array"]; } return true; } function validateReturnType(v) { const returnType = Number(v); if (returnType == 0) { $("#path-form").css("display", "none"); $("#method-form").css("display", "none"); this.outputs = 1; } else if (returnType == 1) { $("#path-form").css("display", "block"); $("#method-form").css("display", "block"); this.outputs = 0; } return true; } RED.nodes.registerType("face-vectorization-plus", { category: "AI VISION", color: "#1AE5BE", defaults: { name: { value: "" }, data: { value: "payload", required: true, validate: RED.validators.typedInput("dataType") }, dataType: { value: "msg" }, inputType: { value: "0", validate: validateInputType }, returnType: { value: "0", validate: validateReturnType }, method: { value: "0" }, path: { value: "" }, }, inputs: 1, outputs: 1, paletteLabel: "Face Vectorization Plus", icon: "status.svg", label: function () { return this.name || "Face Vectorization"; }, inputLabels: ["Single Face Image"], outputLabels: ["Face Vector Array"], oneditprepare: function () { $('#node-input-data').typedInput({ default: 'msg', typeField: $("#node-input-dataType"), types: ['msg'] }); } }); </script> <script type="text/html" data-template-name="face-vectorization-plus"> <div class="form-row"> <label for="node-input-name"><i class="fa fa-tag"></i> Name </label> <input type="text" id="node-input-name" placeholder="Name" /> </div> <div class="form-row"> <label style="padding-top: 8px" for="node-input-data"><i class="fa fa-ellipsis-h"></i> Property</label> <input type="text" id="node-input-data" style="width:70%"> <input type="hidden" id="node-input-dataType"> </div> <div class="form-row"> <label for="node-input-inputType" ><i class="fa fa-file"></i> Input Type </label> <select type="text" id="node-input-inputType"> <option value="0">Single Image</option> <option value="1">Image Array</option> </select> </div> <div class="form-row"> <label for="node-input-returnType" ><i class="fa fa-file"></i> Return Type </label> <select type="text" id="node-input-returnType"> <option value="0">Array of Arrays</option> <option value="1">Text File</option> </select> </div> <div class="form-row" id="path-form"> <label for="node-input-path"><i class="fa fa-folder"></i> Path </label> <input type="text" id="node-input-path" /> </div> <div class="form-row" id="method-form"> <label for="node-input-method" ><i class="fa fa-database"></i> Method </label> <select type="text" id="node-input-method"> <option value="0">Overwrite</option> <option value="1">Add</option> </select> </div> </script> <script type="text/html" data-help-name="face-vectorization-plus"> <p>A node that converts the face image payloads into vector data</p> </script>