zet-lib 1.0.95 → 1.0.97

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/moduleLib.js CHANGED
@@ -265,22 +265,21 @@ m.typeahead = (req, res, elem, data) => {
265
265
  let elemData = elem.replace('.', '')
266
266
  elemData = elemData.replace('#', '')
267
267
  let element = elem.replace('Typeahead', '')
268
-
269
268
  // var script using existing cache
270
- script += `$("body").on("change", "${elem}", function(){
271
- var current = $("${elem}").typeahead("getActive");
272
- if(current){
273
- $("${element}").val(current.id);
274
- $("${element}").change();
275
- }
276
- });${Util.newLine}`
277
269
  script += `$("body").on("click", "${element}Clear", function(){
278
270
  $("${elem}").val("");
279
271
  $("${element}").val("");
280
- $("${elem}").change();
272
+ $("${element}").change();
281
273
  });${Util.newLine}`
282
- script += '$("' + elem + '").typeahead({source: ' + elemData + 'Data ,items: 50, displayText: function(item){ return item.zname.toString();}});' + newLine
283
-
274
+ script += `$("${elem}").typeahead({highlight: true,source:${elemData}Data, items: 50, displayText: function (item) {
275
+ return item.zname.toString();
276
+ },
277
+ updater:function (item) {
278
+ $("${element}").val(item.id);
279
+ $("${element}").change();
280
+ return item;
281
+ }
282
+ }); ${Util.newLine}`
284
283
  return {
285
284
  head: head,
286
285
  end: end,
package/lib/zRoute.js CHANGED
@@ -633,6 +633,7 @@ zRoute.relations = async (req, res, table) => {
633
633
 
634
634
  zRoute.dataTableFilterSync = async (req, res, MYMODEL, filter) => {
635
635
  const relations = await zRoute.relations(req, res, MYMODEL.table)
636
+ zRoute.moduleLib(req, res, MYMODEL, relations)
636
637
  const dataTable = zRoute.dataTableFilter(MYMODEL, relations, filter)
637
638
  return dataTable
638
639
  }
@@ -643,6 +644,10 @@ zRoute.dataTableFilter = (MYMODEL, relations, filter) => {
643
644
  let filterObject = {}
644
645
  let filterKey = ''
645
646
  let isFilter = false
647
+ let hasTypeahed = false
648
+ let typeaheads = []
649
+ let hasDatePicker = false
650
+ let datepickers = []
646
651
  filterColumns.forEach(function (item) {
647
652
  var value = item.search.value
648
653
  if (value) {
@@ -664,7 +669,7 @@ zRoute.dataTableFilter = (MYMODEL, relations, filter) => {
664
669
  const value = filterObject.hasOwnProperty(key) ? filterObject[key] : ''
665
670
  if (key == 'id') {
666
671
  types[key] = 'input'
667
- dataTable[key] = `<input type="number" placeholder="${fields[key].title}" value="${value}" id="data_table_${key}" >`
672
+ dataTable[key] = `<input type="number" class="search" placeholder="${fields[key].title}" value="${value}" id="data_table_${key}" >`
668
673
  } else {
669
674
  if (widgets.hasOwnProperty(key)) {
670
675
  const widgetName = widgets[key].name
@@ -674,12 +679,17 @@ zRoute.dataTableFilter = (MYMODEL, relations, filter) => {
674
679
  var selected = value === item.id ? ' selected ' : ''
675
680
  return result + `<option value="${item.id}" ${selected}>${item.name}</option>`
676
681
  }, '')
677
- dataTable[key] = `<select id="data_table_${key}" class="form-control form-select" >${options}</select>`
682
+ dataTable[key] = `<select id="data_table_${key}" class="form-control form-select search" >${options}</select>`
678
683
  types[key] = 'select'
679
684
  break
680
685
 
681
686
  case 'color':
682
- dataTable[key] = `<input type="color" class="form-control form-control-color" value="${value}" id="data_table_${key}" >`
687
+ dataTable[key] = `<input type="color" class="form-control form-control-color search" value="${value}" id="data_table_${key}" >`
688
+ types[key] = 'input'
689
+ break
690
+
691
+ case 'datepicker':
692
+ dataTable[key] = `<input type="text" class="form-control search datepicker" value="${value}" id="data_table_${key}" >`
683
693
  types[key] = 'input'
684
694
  break
685
695
 
@@ -688,7 +698,7 @@ zRoute.dataTableFilter = (MYMODEL, relations, filter) => {
688
698
  var selected = value === item.id ? ' selected ' : ''
689
699
  return result + `<option value="${item.id}" ${selected}>${item.zname}</option>`
690
700
  }, '')
691
- dataTable[key] = `<select id="data_table_${key}" class="form-control form-select " >${options}</select>`
701
+ dataTable[key] = `<select id="data_table_${key}" class="form-control form-select search" >${options}</select>`
692
702
  types[key] = 'select'
693
703
  break
694
704
 
@@ -697,7 +707,7 @@ zRoute.dataTableFilter = (MYMODEL, relations, filter) => {
697
707
  var selected = value == item.id ? ' selected ' : ''
698
708
  return result + `<option value="${item.id}" ${selected} >${item.zname}</option>`
699
709
  }, '')
700
- dataTable[key] = `<select id="data_table_${key}" class="form-control form-select " >${options}</select>`
710
+ dataTable[key] = `<select id="data_table_${key}" class="form-control form-select search" >${options}</select>`
701
711
  types[key] = 'select'
702
712
  break
703
713
 
@@ -706,7 +716,7 @@ zRoute.dataTableFilter = (MYMODEL, relations, filter) => {
706
716
  var selected = value == item.id ? ' selected ' : ''
707
717
  return result + `<option value="${item.id}" ${selected}>${item.zname}</option>`
708
718
  }, '')
709
- dataTable[key] = `<select id="data_table_${key}" class="form-control form-select " >${options}</select>`
719
+ dataTable[key] = `<select id="data_table_${key}" class="form-control form-select search" >${options}</select>`
710
720
  types[key] = 'select'
711
721
  break
712
722
 
@@ -722,7 +732,7 @@ zRoute.dataTableFilter = (MYMODEL, relations, filter) => {
722
732
  const selected = value === k ? ' selected ' : ''
723
733
  options += `<option value="${k}" ${selected}>${relations[key][k]}</option>`
724
734
  }
725
- dataTable[key] = `<select id="data_table_${key}" class="form-control form-select " >${options}</select>`
735
+ dataTable[key] = `<select id="data_table_${key}" class="form-control form-select search" >${options}</select>`
726
736
  types[key] = 'select'
727
737
  break
728
738
 
@@ -740,26 +750,28 @@ zRoute.dataTableFilter = (MYMODEL, relations, filter) => {
740
750
  options += `<option value="${k}" ${selected}>${relations[key][k]}</option>`
741
751
  }
742
752
  }
743
- dataTable[key] = `<select id="data_table_${key}" class="form-control form-select " >${options}</select>`
753
+ dataTable[key] = `<select id="data_table_${key}" class="form-control form-select search" >${options}</select>`
744
754
  types[key] = 'select'
745
755
  break
746
756
 
747
757
  case 'typeahead':
748
- options = relations[key].reduce((result, item) => {
749
- var selected = value === item.id ? ' selected ' : ''
750
- return result + `<option value="${item.id}" ${selected}>${item.zname}</option>`
751
- }, '')
752
- dataTable[key] = `<select id="data_table_${key}" class="form-control form-select " >${options}</select>`
753
- types[key] = 'select'
758
+ dataTable[key] = `<div class="input-group">
759
+ <input type="text" class="form-control" id="${key}Typeahead" autocomplete="off" data-provide="typeahead" id="${key}Typeahead" placeholder="Please type a word" >
760
+ <input type="hidden" id="${key}" class="search" required="" value="">
761
+ <span id="${key}Clear" class="input-group-addon input-group-text dropdownadd" title="Clear" style="cursor: pointer;" title=" Add Data "><img src="/assets/icons/ban.svg" class="icons-bg-black" ></span>
762
+ </div>`
763
+ types[key] = 'input'
764
+ hasTypeahed = true
765
+ typeaheads.push(key)
754
766
  break
755
767
 
756
768
  case 'number':
757
- dataTable[key] = `<input type="text" class="form-control " value="${value}" id="data_table_${key}" >`
769
+ dataTable[key] = `<input type="text" class="form-control search" value="${value}" id="data_table_${key}" >`
758
770
  types[key] = 'input'
759
771
  break
760
772
 
761
773
  case 'integer':
762
- dataTable[key] = `<input type="number" class="form-control " value="${value}" id="data_table_${key}" >`
774
+ dataTable[key] = `<input type="number" class="form-control search" value="${value}" id="data_table_${key}" >`
763
775
  types[key] = 'input'
764
776
  break
765
777
 
@@ -773,7 +785,7 @@ zRoute.dataTableFilter = (MYMODEL, relations, filter) => {
773
785
  break
774
786
 
775
787
  default:
776
- dataTable[key] = `<input type="text" class="form-control " value="${value}" id="data_table_${key}" >`
788
+ dataTable[key] = `<input type="text" class="form-control search" value="${value}" id="data_table_${key}" >`
777
789
  types[key] = 'input'
778
790
  break
779
791
  }
@@ -783,6 +795,15 @@ zRoute.dataTableFilter = (MYMODEL, relations, filter) => {
783
795
  }
784
796
  }
785
797
 
798
+ /* if(hasTypeahed) {
799
+ typeaheads.map((item) => {
800
+ moduleLib.typeahead(req,res,`#${item}`)
801
+ })
802
+ }
803
+ if(hasDatePicker) {
804
+ moduleLib.datepicker(req,res);
805
+ }*/
806
+
786
807
  dataTable.MYMODEL = MYMODEL
787
808
  dataTable.RELATIONS = relations
788
809
  dataTable.TYPES = types
package/lib/zdataTable.js CHANGED
@@ -9,7 +9,7 @@ class dataTable {
9
9
  this.setColumns = ''
10
10
  this.setTable = ''
11
11
  this.srcScript = 'https://cdn.datatables.net/v/bs5/dt-1.11.3/date-1.1.1/fc-4.0.1/fh-3.2.1/r-2.2.9/rg-1.1.4/sc-2.0.5/sl-1.3.4/datatables.min.js'
12
- this.dataTableScript = '/js/datatable-default.js'
12
+ this.dataTableScript = '/js/datatable-grids.js'
13
13
  this.dataTableButtons = '/js/datatable-buttons.min.js'
14
14
  this.customButtons = ''
15
15
  this.MYMODEL = null
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "zet-lib",
3
- "version": "1.0.95",
3
+ "version": "1.0.97",
4
4
  "description": "zet is a library that part of zet generator.",
5
5
  "engines": {
6
6
  "node": ">=18"