node-red-contrib-mobilex
Version:
Nós Node-RED para gerar interfaces mobileX usando a linguagem X
80 lines (78 loc) • 3.15 kB
HTML
<script type="text/javascript">
RED.nodes.registerType('mobilex-page', {
category: 'mobileX Front',
color: '#4CAF50',
icon: 'font-awesome/fa-file',
inputs: 1, // Uma entrada para cada seção
outputs: 1,
defaults: {
componentes: {value: []},
tab: {value: false},
outputs: {value: 1, validate: RED.validators.number()},
wiresTo: {value: false},
},
label: function () {
return "MobileX Page";
},
oneditprepare: function () {
let selecionados = this.componentes || [];
$("#campo-tab").hide();
$("#node-input-componentes").val(selecionados);
$("#node-input-componentes").change(function () {
let valor = $(this).val();
if (valor.includes("pageContent")) {
$("#contem-tab").show()
} else {
$("#contem-tab").hide();
};
selecionados = valor || [];
$("#node-input-outputs").val(selecionados.length);
});
},
oneditsave: function () {
this.componentes = $("#node-input-componentes").val() || [];
this.tab = $("#node-input-tab").val();
this.path = $("#node-input-path").val();
this.wiresTo = $("#node-input-wiresTo").val();
}
});
</script>
<script type="text/html" data-template-name="mobilex-page">
<div class="form-row">
<label for="node-input-componentes"><i class="fa fa-list"></i>Componentes da tela</label>
<select id="node-input-componentes" multiple>
<option value="pageContent">Page Content</option>
<option value="pageHeader">Page Header</option>
<option value="pageSearch">Page Search</option>
<option value="pageFooter">Page Footer</option>
<option value="pageNavigation">Page Navigation</option>
</select>
</div>
<div class="form-row" id="contem-tab">
<label for="tab">Conteúdo da página será dividido em tabulação?</label>
<input type="checkbox" name="tab" id="node-input-tab"></input>
</div>
<div class="form-row" style="display: inline-block; margin-right: 50px;"> -->
<label for="node-input-outputs"><i class="fa fa-random"></i> <span data-i18n="function.label.outputs"></span></label>
<input id="node-input-outputs" style="width: 60px;" value="1">
</div>
</script>
<script type="text/html" data-help-name="mobilex-page">
<p>Instrução de uso do node</p>
<h3>Outputs</h3>
<dl class="message-properties">
<dt>payload
<span class="property-type">object | buffer</span>
<pre><code>{
"pageContent": {},
"pageHeader": {},
"pageFooter": {},
"pageNavigation": {},
"pageSearch": {},
}</code></pre>
</dt>
<h3>Details</h3>
<p>Pode ser definido um tempo de espera em segundo, que cada node em sequência aguardará para executar o proximo, definindo o timeout</p>
<p>Caso seja selecionado para aguardar pela quantidades de mensagem, o tempo não será levado em consideração. Mas sim pelo tamanho do array de mensagens recebidas.</p>
<p>O tamanho sempre será definido pelo array do json recebido de maior numero de elementos, caso não seja este comportamento informar o path no json que conterá o array a ser utilizado.</p>
</script>