zet-lib 1.3.25 → 1.3.26

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lib/Util.js CHANGED
@@ -1204,13 +1204,17 @@ Util.selectParser = (fields = [], MYMODEL = {}) => {
1204
1204
  return select
1205
1205
  }
1206
1206
 
1207
- Util.fieldWithTable = (field, MYMODEL) => {
1207
+ Util.fieldWithTable = (field, MYMODEL, isWhere = false) => {
1208
1208
  let name = ''
1209
1209
  let joinList = MYMODEL.joins && MYMODEL.joins.list.length > 0 ? MYMODEL.joins.list : []
1210
1210
  if (joinList.length > 0) {
1211
1211
  if (joinList.includes(field)) {
1212
1212
  let split = field.split('___')
1213
- name = `${split[0]}.${split[1]} as ${field}`
1213
+ if (isWhere) {
1214
+ name = `${split[0]}.${split[1]}`
1215
+ } else {
1216
+ name = `${split[0]}.${split[1]} as ${field}`
1217
+ }
1214
1218
  } else {
1215
1219
  name = `${MYMODEL.table}.${field}`
1216
1220
  }
@@ -670,8 +670,6 @@ const buildJoin = async (MYMODEL, result) => {
670
670
  if (result.joins && Object.keys(joins).length > 0) {
671
671
  let newDataObj = {}
672
672
  for (let key in joins) {
673
- //find relation
674
- //sql.push(` LEFT JOIN ${key} ON ${key}.id = ${table}.${key}_id `)
675
673
  let THEIR_MODEL = require(`${dirRoot}/models/${key}`)
676
674
  //console.log(THEIR_MODEL)
677
675
  let arr = joins[key] || []
@@ -680,7 +678,8 @@ const buildJoin = async (MYMODEL, result) => {
680
678
  arr.map((item) => {
681
679
  //console.log(item)
682
680
  //console.log(typeof item)
683
- const originKey = key.replace(`${key}___`, '')
681
+ const originKey = item.key.replace(`${key}___`, '')
682
+ console.log(originKey)
684
683
  newDataObj[item.key] = item.value
685
684
  MYMODEL.keys.push(item.key)
686
685
  MYMODEL.keysExcel.push(item.key)
@@ -689,7 +688,7 @@ const buildJoin = async (MYMODEL, result) => {
689
688
  MYMODEL.options[item.key] = THEIR_MODEL.options[originKey]
690
689
  MYMODEL.grids.invisibles.push(item.key)
691
690
  MYMODEL.datas[item.key] = THEIR_MODEL.datas[originKey]
692
- //MYMODEL.widgets[item.key] = THEIR_MODEL.widgets[originKey];
691
+ MYMODEL.widgets[item.key] = THEIR_MODEL.widgets[originKey]
693
692
  join_list.push(item.key)
694
693
  })
695
694
  }
@@ -744,7 +743,7 @@ const buildJoin = async (MYMODEL, result) => {
744
743
  foreignTables.push(row.foreign_table_name)
745
744
  foreign_table_name[row.foreign_table_name] = ` LEFT JOIN ${row.foreign_table_name} ON ${row.foreign_table_name}.id = ${table_steps_item}.${row.column_name} `
746
745
  })
747
- console.log(foreignTables)
746
+ //console.log(foreignTables)
748
747
  table_joins.map((item) => {
749
748
  if (!table_steps.includes(item)) {
750
749
  if (foreignTables.includes(item)) {
@@ -1392,7 +1391,6 @@ const scanning = async (MYMODEL, result) => {
1392
1391
  newModel += `${Util.newLine}`
1393
1392
  newModel += `}`
1394
1393
  fs.writeFileSync(`${dirRoot}/models/${MYMODEL.table}.js`, newModel)
1395
-
1396
1394
  //return MYMODEL;
1397
1395
  }
1398
1396
 
package/lib/zRoute.js CHANGED
@@ -512,7 +512,7 @@ zRoute.selectData = (MYMODEL) => {
512
512
  return data
513
513
  }
514
514
 
515
- zRoute.relations = async (req, res, table) => {
515
+ zRoute.relationTable = async (req, res, table) => {
516
516
  try {
517
517
  const MYMODELS = myCache.get('MYMODELS')
518
518
  const MYMODEL = MYMODELS[table]
@@ -523,7 +523,7 @@ zRoute.relations = async (req, res, table) => {
523
523
  let hasAttributes = false
524
524
  let zattributes = {}
525
525
  let company_id = res.locals.companyId
526
- //f0r widgets
526
+ //widgets
527
527
  for (let key in MYMODEL.widgets) {
528
528
  const keyRow = key + 'Row'
529
529
  const keyFields = key + 'Fields'
@@ -717,7 +717,6 @@ zRoute.relations = async (req, res, table) => {
717
717
  }
718
718
  }
719
719
  //console.log(relations);
720
-
721
720
  let selectZvirtuals = ''
722
721
  for (let key in relations['zvirtuals']) {
723
722
  selectZvirtuals += `${relations['zvirtuals'][key]} , `
@@ -733,6 +732,51 @@ zRoute.relations = async (req, res, table) => {
733
732
  }
734
733
  }
735
734
 
735
+ zRoute.relations = async (req, res, table) => {
736
+ try {
737
+ const MYMODELS = myCache.get('MYMODELS')
738
+ const MYMODEL = MYMODELS[table]
739
+ let relation = await zRoute.relationTable(req, res, table)
740
+ let relations = {}
741
+ if (MYMODEL.joins && MYMODEL.joins.list) {
742
+ let joinOfTables = MYMODEL.joins.tables
743
+ for (let key of joinOfTables) {
744
+ relations[key] = await zRoute.relationTable(req, res, key)
745
+ }
746
+ let listData = MYMODEL.joins.list || []
747
+ listData.map((item) => {
748
+ let split = item.split('___')
749
+ let mytable = split[0]
750
+ let key = split[1]
751
+ const itemRow = item + 'Row'
752
+ const itemFields = item + 'Fields'
753
+ const itemObject = item + 'Object'
754
+ const keyRow = key + 'Row'
755
+ const keyFields = key + 'Fields'
756
+ const keyObject = key + 'Object'
757
+
758
+ let relName = relations[mytable]
759
+ if (relName[key]) {
760
+ relation[item] = relName[key]
761
+ }
762
+ if (relName[keyRow]) {
763
+ relation[itemRow] = relName[keyRow]
764
+ }
765
+ if (relName[keyFields]) {
766
+ relation[itemFields] = relName[keyFields]
767
+ }
768
+ if (relName[keyObject]) {
769
+ relation[itemObject] = relName[keyObject]
770
+ }
771
+ })
772
+ }
773
+
774
+ return relation
775
+ } catch (e) {
776
+ console.log(e)
777
+ }
778
+ }
779
+
736
780
  /*
737
781
  Function to create filter elements on data table grid
738
782
  */
@@ -1903,7 +1947,9 @@ zRoute.listDataTable = async (req, res, objData = {}) => {
1903
1947
  const MYMODEL = objData.MYMODEL || {}
1904
1948
  const table = MYMODEL.table
1905
1949
  const fields = Object.prototype.hasOwnProperty.call(objData, 'fields') ? objData.fields : req.body.fields
1906
- const relations = await zRoute.relations(req, res, MYMODEL.table)
1950
+ let relations = await zRoute.relations(req, res, MYMODEL.table)
1951
+ //find relation with joins
1952
+
1907
1953
  const select = Object.prototype.hasOwnProperty.call(objData, 'select') ? objData.select : Util.selectParser(fields, MYMODEL)
1908
1954
  const columns = Object.prototype.hasOwnProperty.call(objData, 'columns') ? objData.columns : body.columns
1909
1955
  const asDate = []
@@ -1955,7 +2001,7 @@ zRoute.listDataTable = async (req, res, objData = {}) => {
1955
2001
  }
1956
2002
  if (astype === 'jsonb') {
1957
2003
  whereArray.push({
1958
- field: Util.fieldWithTable(fields[item.data], MYMODEL),
2004
+ field: Util.fieldWithTable(fields[item.data], MYMODEL, true),
1959
2005
  option: ' ',
1960
2006
  value: ` @> '["${item.search.value}"]'`,
1961
2007
  operator: 'AND',
@@ -1965,13 +2011,13 @@ zRoute.listDataTable = async (req, res, objData = {}) => {
1965
2011
  whereArray.push({
1966
2012
  field: '',
1967
2013
  option: '',
1968
- value: ` ${Util.fieldWithTable(fields[item.data], MYMODEL)}::text ILIKE '${item.search.value}' `,
2014
+ value: ` ${Util.fieldWithTable(fields[item.data], MYMODEL, true)}::text ILIKE '${item.search.value}' `,
1969
2015
  operator: 'AND',
1970
2016
  type: 'inline',
1971
2017
  })
1972
2018
  } else {
1973
2019
  whereArray.push({
1974
- field: Util.fieldWithTable(fields[item.data], MYMODEL),
2020
+ field: Util.fieldWithTable(fields[item.data], MYMODEL, true),
1975
2021
  option: MYMODEL.options[fields[item.data]],
1976
2022
  value: item.search.value,
1977
2023
  operator: 'AND',
@@ -2086,6 +2132,7 @@ zRoute.listData = async (req, res, MYMODEL, zRole, actionButtonsFn) => {
2086
2132
  operator: 'AND',
2087
2133
  })
2088
2134
  }
2135
+
2089
2136
  columns.forEach(function (item) {
2090
2137
  if (item.search.value) {
2091
2138
  let astype = 'text'
@@ -2100,7 +2147,7 @@ zRoute.listData = async (req, res, MYMODEL, zRole, actionButtonsFn) => {
2100
2147
  }
2101
2148
  if (astype === 'jsonb') {
2102
2149
  whereArray.push({
2103
- field: Util.fieldWithTable(fields[item.data], MYMODEL),
2150
+ field: Util.fieldWithTable(fields[item.data], MYMODEL, true),
2104
2151
  option: ' ',
2105
2152
  value: ` @> '["${item.search.value}"]'`,
2106
2153
  operator: 'AND',
@@ -2110,13 +2157,13 @@ zRoute.listData = async (req, res, MYMODEL, zRole, actionButtonsFn) => {
2110
2157
  whereArray.push({
2111
2158
  field: '',
2112
2159
  option: '',
2113
- value: ` ${Util.fieldWithTable(fields[item.data], MYMODEL)}::text ILIKE '${item.search.value}' `,
2160
+ value: ` ${Util.fieldWithTable(fields[item.data], MYMODEL, true)}::text ILIKE '${item.search.value}' `,
2114
2161
  operator: 'AND',
2115
2162
  type: 'inline',
2116
2163
  })
2117
2164
  } else {
2118
2165
  whereArray.push({
2119
- field: Util.fieldWithTable(fields[item.data], MYMODEL),
2166
+ field: Util.fieldWithTable(fields[item.data], MYMODEL, true),
2120
2167
  option: MYMODEL.options[fields[item.data]],
2121
2168
  value: item.search.value,
2122
2169
  operator: 'AND',
@@ -3258,70 +3305,76 @@ zRoute.generateJS = (req, res, MYMODEL, relations, zForms = '', data = {}) => {
3258
3305
  let lexicals = []
3259
3306
  let mapKey = ''
3260
3307
  let hasAttributes = []
3308
+ let joinsFields = []
3309
+ if (MYMODEL.joins) {
3310
+ joinsFields = MYMODEL.joins.list
3311
+ }
3261
3312
  for (let key in widgets) {
3262
- if (widgets[key].name == 'datepicker') {
3263
- hasDatePicker = true
3264
- } else if (widgets[key].name == 'number') {
3265
- hasNumber = true
3266
- } else if (widgets[key].name == 'clockpicker') {
3267
- hasClockPicker = true
3268
- } else if (widgets[key].name == 'editor') {
3269
- hasEditor = true
3270
- } else if (widgets[key].name == 'ide_editor') {
3271
- hasIde = true
3272
- } else if (widgets[key].name == 'switch') {
3273
- let switchObj = moduleLib.switch(req, res, `#${key}`, widgets[key].fields)
3274
- scriptForm += switchObj.script
3275
- headObj.switch = switchObj.head
3276
- endObj.switch = switchObj.end
3277
- } else if (widgets[key].name == 'typeahead') {
3278
- let typeaheadObj = moduleLib.typeahead(req, res, MYMODEL.table, `#${key}Typeahead`)
3279
- scriptForm += typeaheadObj.script
3280
- headObj.typeahead = typeaheadObj.head
3281
- endObj.typeahead = typeaheadObj.end
3282
- } else if (widgets[key].name == 'location') {
3283
- let locationObj = moduleLib.location(req, res, key)
3284
- scriptForm += locationObj.script
3285
- endObj.location = locationObj.end
3286
- hasLocation = true
3287
- mapKey = key
3288
- } else if (widgets[key].name == 'dragdrop') {
3289
- let dragdropObj = moduleLib.dragdrop(req, res, key)
3290
- scriptForm += dragdropObj.script
3291
- headObj.dragdrop = dragdropObj.head
3292
- endObj.dragdrop = dragdropObj.end
3293
- } else if (widgets[key].name == 'datetime') {
3294
- hasDateTimePicker = true
3295
- } else if (widgets[key].name == 'table') {
3296
- hasTable = true
3297
- hasDateTimePicker = true
3298
- hasClockPicker = true
3299
- hasDatePicker = true
3300
- } else if (widgets[key].name == 'tags') {
3301
- hasTags = true
3302
- } else if (widgets[key].name == 'lexical') {
3303
- let lexicalObj = moduleLib.lexical(req, res, `#${key}`)
3304
- hasLexical = true
3305
- headObj.lexical = lexicalObj.head
3306
- endObj.lexical = lexicalObj.end
3307
- lexicals.push(key)
3308
- } else if (widgets[key].name == 'tinymce') {
3309
- hasTinymce = true
3310
- } else if (widgets[key].name == 'dropzone') {
3311
- hasDropzone = true
3312
- dropzones.push(key)
3313
- }
3314
- // has chains
3315
- if (widgets[key].name == 'relation') {
3316
- if (widgets[key].isChain) {
3317
- if (widgets[key].chains.length) {
3318
- chainsObj[key] = widgets[key].chains
3319
- hasChain = true
3320
- }
3313
+ if (!joinsFields.includes(key)) {
3314
+ if (widgets[key].name == 'datepicker') {
3315
+ hasDatePicker = true
3316
+ } else if (widgets[key].name == 'number') {
3317
+ hasNumber = true
3318
+ } else if (widgets[key].name == 'clockpicker') {
3319
+ hasClockPicker = true
3320
+ } else if (widgets[key].name == 'editor') {
3321
+ hasEditor = true
3322
+ } else if (widgets[key].name == 'ide_editor') {
3323
+ hasIde = true
3324
+ } else if (widgets[key].name == 'switch') {
3325
+ let switchObj = moduleLib.switch(req, res, `#${key}`, widgets[key].fields)
3326
+ scriptForm += switchObj.script
3327
+ headObj.switch = switchObj.head
3328
+ endObj.switch = switchObj.end
3329
+ } else if (widgets[key].name == 'typeahead') {
3330
+ let typeaheadObj = moduleLib.typeahead(req, res, MYMODEL.table, `#${key}Typeahead`)
3331
+ scriptForm += typeaheadObj.script
3332
+ headObj.typeahead = typeaheadObj.head
3333
+ endObj.typeahead = typeaheadObj.end
3334
+ } else if (widgets[key].name == 'location') {
3335
+ let locationObj = moduleLib.location(req, res, key)
3336
+ scriptForm += locationObj.script
3337
+ endObj.location = locationObj.end
3338
+ hasLocation = true
3339
+ mapKey = key
3340
+ } else if (widgets[key].name == 'dragdrop') {
3341
+ let dragdropObj = moduleLib.dragdrop(req, res, key)
3342
+ scriptForm += dragdropObj.script
3343
+ headObj.dragdrop = dragdropObj.head
3344
+ endObj.dragdrop = dragdropObj.end
3345
+ } else if (widgets[key].name == 'datetime') {
3346
+ hasDateTimePicker = true
3347
+ } else if (widgets[key].name == 'table') {
3348
+ hasTable = true
3349
+ hasDateTimePicker = true
3350
+ hasClockPicker = true
3351
+ hasDatePicker = true
3352
+ } else if (widgets[key].name == 'tags') {
3353
+ hasTags = true
3354
+ } else if (widgets[key].name == 'lexical') {
3355
+ let lexicalObj = moduleLib.lexical(req, res, `#${key}`)
3356
+ hasLexical = true
3357
+ headObj.lexical = lexicalObj.head
3358
+ endObj.lexical = lexicalObj.end
3359
+ lexicals.push(key)
3360
+ } else if (widgets[key].name == 'tinymce') {
3361
+ hasTinymce = true
3362
+ } else if (widgets[key].name == 'dropzone') {
3363
+ hasDropzone = true
3364
+ dropzones.push(key)
3321
3365
  }
3322
- //relation_all_attributes
3323
- if (widgets[key].isAttributes) {
3324
- hasAttributes.push(key)
3366
+ // has chains
3367
+ if (widgets[key].name == 'relation') {
3368
+ if (widgets[key].isChain) {
3369
+ if (widgets[key].chains.length) {
3370
+ chainsObj[key] = widgets[key].chains
3371
+ hasChain = true
3372
+ }
3373
+ }
3374
+ //relation_all_attributes
3375
+ if (widgets[key].isAttributes) {
3376
+ hasAttributes.push(key)
3377
+ }
3325
3378
  }
3326
3379
  }
3327
3380
  }
@@ -3559,10 +3612,11 @@ zRoute.generateJS = (req, res, MYMODEL, relations, zForms = '', data = {}) => {
3559
3612
  });`
3560
3613
 
3561
3614
  for (let keys in widgets) {
3562
- let widgetName = widgets[keys].name
3563
- switch (widgetName) {
3564
- case 'multi_line_editor':
3565
- scriptForm += `$(".text-toggle").on("click", function(){
3615
+ if (!joinsFields.includes(keys)) {
3616
+ let widgetName = widgets[keys].name
3617
+ switch (widgetName) {
3618
+ case 'multi_line_editor':
3619
+ scriptForm += `$(".text-toggle").on("click", function(){
3566
3620
  let editorId = $(this).data("id");
3567
3621
  $("#"+editorId).attr("type","text");
3568
3622
  $("#a_"+editorId).hide();
@@ -3578,10 +3632,10 @@ zRoute.generateJS = (req, res, MYMODEL, relations, zForms = '', data = {}) => {
3578
3632
  }
3579
3633
  }
3580
3634
  });`
3581
- break
3635
+ break
3582
3636
 
3583
- case 'dropdown_multi':
3584
- scriptForm += ` $("#dropdownadd${keys}").on("click", function () {
3637
+ case 'dropdown_multi':
3638
+ scriptForm += ` $("#dropdownadd${keys}").on("click", function () {
3585
3639
  var val = $("#${keys}").val();
3586
3640
  if(val == ""){
3587
3641
  alert("Please select data");
@@ -3592,25 +3646,25 @@ zRoute.generateJS = (req, res, MYMODEL, relations, zForms = '', data = {}) => {
3592
3646
  $("#dropdownbox${keys}").append(data);
3593
3647
  $("#${keys}").val("");
3594
3648
  });${Util.newLine}`
3595
- break
3649
+ break
3596
3650
 
3597
- case 'table':
3598
- let MODEL_TABLE = MYMODELS[MYMODEL.widgets[keys].table] || require(`${dirRoot}/models/${MYMODEL.widgets[keys].table}`)
3599
- //let MODEL_TABLE_RELATIONS = await zRoute.relations(req, res, MODEL_TABLE.table);
3600
- //relations[key + "TABLE"]
3601
- let RELATIONS_MODEL_TABLE = relations && relations.hasOwnProperty(keys + 'TABLE') ? relations[keys + 'TABLE'] : {}
3602
- let zForm = zRoute.formField(req, res, MODEL_TABLE, RELATIONS_MODEL_TABLE)
3603
- zRoute.moduleLib(req, res, MODEL_TABLE, RELATIONS_MODEL_TABLE, zForms)
3604
- let trash = `trash_${keys}_${MYMODEL.widgets[keys].table}`
3605
- let subname = MYMODEL.table + '_' + keys
3606
- let relationsWithKeys = relations ? relations[keys] : {}
3607
- let dropdownMultis = []
3608
-
3609
- for (let qq in MODEL_TABLE.widgets) {
3610
- //check if have dropdown_multi
3611
- if (MODEL_TABLE.widgets[qq].name == 'dropdown_multi') {
3612
- dropdownMultis.push(qq)
3613
- scriptForm += `$("#body-${keys}").on("click", "#dropdownadd${qq}",function () {
3651
+ case 'table':
3652
+ let MODEL_TABLE = MYMODELS[MYMODEL.widgets[keys].table] || require(`${dirRoot}/models/${MYMODEL.widgets[keys].table}`)
3653
+ //let MODEL_TABLE_RELATIONS = await zRoute.relations(req, res, MODEL_TABLE.table);
3654
+ //relations[key + "TABLE"]
3655
+ let RELATIONS_MODEL_TABLE = relations && relations.hasOwnProperty(keys + 'TABLE') ? relations[keys + 'TABLE'] : {}
3656
+ let zForm = zRoute.formField(req, res, MODEL_TABLE, RELATIONS_MODEL_TABLE)
3657
+ zRoute.moduleLib(req, res, MODEL_TABLE, RELATIONS_MODEL_TABLE, zForms)
3658
+ let trash = `trash_${keys}_${MYMODEL.widgets[keys].table}`
3659
+ let subname = MYMODEL.table + '_' + keys
3660
+ let relationsWithKeys = relations ? relations[keys] : {}
3661
+ let dropdownMultis = []
3662
+
3663
+ for (let qq in MODEL_TABLE.widgets) {
3664
+ //check if have dropdown_multi
3665
+ if (MODEL_TABLE.widgets[qq].name == 'dropdown_multi') {
3666
+ dropdownMultis.push(qq)
3667
+ scriptForm += `$("#body-${keys}").on("click", "#dropdownadd${qq}",function () {
3614
3668
  let elm = $(this).siblings("#${qq}");
3615
3669
  var val = elm.val();
3616
3670
  if(val == ""){
@@ -3624,13 +3678,13 @@ zRoute.generateJS = (req, res, MYMODEL, relations, zForms = '', data = {}) => {
3624
3678
  $(this).parent().parent().find("#dropdownbox${qq}").append(data);
3625
3679
  $(this).siblings("#${qq}").val("");
3626
3680
  });${Util.newLine}`
3681
+ }
3627
3682
  }
3628
- }
3629
3683
 
3630
- scriptForm += `var append${keys} = (increment, callback) => { buildform(increment,'${MYMODEL.table}','${keys}','${JSON.stringify(relationsWithKeys)}', (data) => callback(data)) } `
3631
- scriptForm += Util.newLine
3632
- scriptForm += `var append${keys}Max = $('tbody#body-${keys}>tr').length;${Util.newLine}`
3633
- scriptForm += `function ${keys}Handler(){
3684
+ scriptForm += `var append${keys} = (increment, callback) => { buildform(increment,'${MYMODEL.table}','${keys}','${JSON.stringify(relationsWithKeys)}', (data) => callback(data)) } `
3685
+ scriptForm += Util.newLine
3686
+ scriptForm += `var append${keys}Max = $('tbody#body-${keys}>tr').length;${Util.newLine}`
3687
+ scriptForm += `function ${keys}Handler(){
3634
3688
  var index = $("#body-${keys}>tr").length || 0;
3635
3689
  $("#body-${keys}>tr").each(function (index, tr) {
3636
3690
  let dataname = $(tr).data("name") || "";
@@ -3670,12 +3724,12 @@ $("#body-${keys}>tr").each(function (index, tr) {
3670
3724
 
3671
3725
  }); ${Util.newLine}};${Util.newLine}`
3672
3726
 
3673
- scriptForm += ` $('#add${keys}').on('click',function(){
3727
+ scriptForm += ` $('#add${keys}').on('click',function(){
3674
3728
  append${keys}(append${keys}Max, (data) => $('#body-${keys}').append(data));
3675
3729
  append${keys}Max++;
3676
3730
  ${keys}Handler();
3677
3731
  }); ${Util.newLine}`
3678
- scriptForm += `function set${keys}value(index,myobj) {
3732
+ scriptForm += `function set${keys}value(index,myobj) {
3679
3733
  for(var key in myobj){
3680
3734
  if($(".${subname}_" + key).eq(index).attr("type") == "checkbox" && myobj[key] == 1){
3681
3735
  $(".${subname}_" + key).eq(index).prop("checked", true);
@@ -3708,7 +3762,7 @@ $("#body-${keys}>tr").each(function (index, tr) {
3708
3762
  }
3709
3763
  `
3710
3764
 
3711
- scriptForm += `function build${keys}form(index, myobj) {
3765
+ scriptForm += `function build${keys}form(index, myobj) {
3712
3766
  append${keys}(index, (data) => {
3713
3767
  $("#body-${keys}").append(data);
3714
3768
  ${keys}Handler();
@@ -3720,24 +3774,24 @@ $("#body-${keys}>tr").each(function (index, tr) {
3720
3774
  }
3721
3775
  `
3722
3776
 
3723
- /* scriptForm += ` $(function () {
3777
+ /* scriptForm += ` $(function () {
3724
3778
  var ${keys} = $("#body-${keys}").data("value") ? $("#body-${keys}").data("value") : [];
3725
3779
  ${keys}.forEach(function (myobj, index) {
3726
3780
  build${keys}form(index, myobj);
3727
3781
  });
3728
3782
  });${Util.newLine}`*/
3729
3783
 
3730
- break
3784
+ break
3731
3785
 
3732
- case 'ide_editor':
3733
- //var additionalScripts = `if (!!session.$worker) {session.$worker.send("setOptions", [{"esversion": 9,"esnext": false,}]);}`;
3734
- let script_annotaions = ''
3735
- let script_enabled = ''
3736
- let script_looping = ''
3737
- if (widgets[keys].language == 'javascript') {
3738
- script_annotaions = `editor_${keys}.session.setOption("useWorker", true);`
3739
- script_enabled = `editor_${keys}.session.setOption("useWorker", true);`
3740
- script_looping = `
3786
+ case 'ide_editor':
3787
+ //var additionalScripts = `if (!!session.$worker) {session.$worker.send("setOptions", [{"esversion": 9,"esnext": false,}]);}`;
3788
+ let script_annotaions = ''
3789
+ let script_enabled = ''
3790
+ let script_looping = ''
3791
+ if (widgets[keys].language == 'javascript') {
3792
+ script_annotaions = `editor_${keys}.session.setOption("useWorker", true);`
3793
+ script_enabled = `editor_${keys}.session.setOption("useWorker", true);`
3794
+ script_looping = `
3741
3795
  var errors = editor_${keys}.getSession().getAnnotations().filter(a=>a.type==='error');
3742
3796
  arr = [];
3743
3797
  errors.forEach(function(erItem) {
@@ -3749,8 +3803,8 @@ ${keys}.forEach(function (myobj, index) {
3749
3803
  editor_${keys}.getSession().setAnnotations(arr);
3750
3804
  editor_${keys}.session.setOption("useWorker", true);
3751
3805
  `
3752
- }
3753
- scriptForm += `var editor_${keys} = ace.edit("editor_${keys}");
3806
+ }
3807
+ scriptForm += `var editor_${keys} = ace.edit("editor_${keys}");
3754
3808
  editor_${keys}.getSession().setMode("ace/mode/${widgets[keys].language}");
3755
3809
  editor_${keys}.setValue(ace_value(ide_editor_${keys}));
3756
3810
  $("#${keys}").text(ace_value(ide_editor_${keys}));
@@ -3761,7 +3815,8 @@ ${keys}.forEach(function (myobj, index) {
3761
3815
  });
3762
3816
  `
3763
3817
 
3764
- break
3818
+ break
3819
+ }
3765
3820
  }
3766
3821
  }
3767
3822
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "zet-lib",
3
- "version": "1.3.25",
3
+ "version": "1.3.26",
4
4
  "description": "zet is a library that part of zet generator.",
5
5
  "engines": {
6
6
  "node": ">=18"