@sankhyalabs/ezui 2.14.0-develop.1 → 2.14.0

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.
Files changed (90) hide show
  1. package/dist/cjs/ez-filter-input_3.cjs.entry.js +14 -3
  2. package/dist/cjs/ez-form-view.cjs.entry.js +140 -0
  3. package/dist/cjs/ez-form.cjs.entry.js +184 -325
  4. package/dist/cjs/ezui.cjs.js +1 -1
  5. package/dist/cjs/loader.cjs.js +1 -1
  6. package/dist/collection/collection-manifest.json +1 -0
  7. package/dist/collection/components/ez-form/{structure/FormMetadata.js → FormMetadata.js} +38 -53
  8. package/dist/collection/components/ez-form/ez-form.css +1 -1
  9. package/dist/collection/components/ez-form/ez-form.js +16 -20
  10. package/dist/collection/components/ez-form/interfaces/IDefaultConfig.js +1 -0
  11. package/dist/collection/components/ez-form/interfaces/IFieldConfig.js +1 -0
  12. package/dist/collection/components/ez-form/interfaces/IFormConfig.js +1 -0
  13. package/dist/collection/components/ez-form/interfaces/IFormSheetMetadata.js +1 -0
  14. package/dist/collection/components/ez-form/interfaces/IInvalidField.js +1 -0
  15. package/dist/collection/components/ez-form/interfaces/IRecordValidator.js +1 -0
  16. package/dist/collection/components/ez-form/interfaces/ITabConfig.js +1 -0
  17. package/dist/collection/components/ez-form/interfaces/IValidationResult.js +1 -0
  18. package/dist/collection/components/ez-form/interfaces/index.js +1 -0
  19. package/dist/collection/components/ez-form-view/ez-form-view.css +6 -0
  20. package/dist/collection/components/ez-form-view/ez-form-view.js +71 -0
  21. package/dist/collection/components/ez-form-view/fieldbuilder/FieldBuilder.js +26 -0
  22. package/dist/collection/components/{ez-form/fieldbuilder/tpl → ez-form-view/fieldbuilder/templates}/CheckBox.tpl.js +4 -4
  23. package/dist/collection/components/{ez-form/fieldbuilder/tpl → ez-form-view/fieldbuilder/templates}/ComboBox.tpl.js +2 -2
  24. package/dist/collection/components/{ez-form/fieldbuilder/tpl → ez-form-view/fieldbuilder/templates}/DateInput.tpl.js +1 -1
  25. package/dist/collection/components/{ez-form/fieldbuilder/tpl → ez-form-view/fieldbuilder/templates}/NumberInput.tpl.js +3 -3
  26. package/dist/collection/components/ez-form-view/interfaces/IFormViewField.js +1 -0
  27. package/dist/collection/components/ez-form-view/interfaces/index.js +1 -0
  28. package/dist/collection/components/ez-tree/ez-tree.js +3 -3
  29. package/dist/collection/components/ez-tree/types/Tree.js +11 -0
  30. package/dist/custom-elements/index.d.ts +6 -0
  31. package/dist/custom-elements/index.js +334 -329
  32. package/dist/esm/ez-filter-input_3.entry.js +14 -3
  33. package/dist/esm/ez-form-view.entry.js +136 -0
  34. package/dist/esm/ez-form.entry.js +186 -327
  35. package/dist/esm/ezui.js +1 -1
  36. package/dist/esm/loader.js +1 -1
  37. package/dist/ezui/ezui.esm.js +1 -1
  38. package/dist/ezui/p-97d2d2f6.entry.js +1 -0
  39. package/dist/ezui/p-a47b3526.entry.js +1 -0
  40. package/dist/ezui/p-ba03ac61.entry.js +1 -0
  41. package/dist/types/components/ez-form/DataBinder.d.ts +1 -1
  42. package/dist/types/components/ez-form/{structure/FormMetadata.d.ts → FormMetadata.d.ts} +2 -5
  43. package/dist/types/components/ez-form/ez-form.d.ts +4 -3
  44. package/dist/types/components/ez-form/interfaces/IDefaultConfig.d.ts +5 -0
  45. package/dist/types/components/ez-form/interfaces/IFieldConfig.d.ts +13 -0
  46. package/dist/types/components/ez-form/interfaces/IFormConfig.d.ts +7 -0
  47. package/dist/types/components/ez-form/interfaces/IFormSheetMetadata.d.ts +9 -0
  48. package/dist/types/components/ez-form/interfaces/IInvalidField.d.ts +4 -0
  49. package/dist/types/components/ez-form/interfaces/IRecordValidator.d.ts +6 -0
  50. package/dist/types/components/ez-form/interfaces/ITabConfig.d.ts +5 -0
  51. package/dist/types/components/ez-form/interfaces/IValidationResult.d.ts +8 -0
  52. package/dist/types/components/ez-form/interfaces/index.d.ts +8 -0
  53. package/dist/types/components/ez-form/store/form.slice.d.ts +2 -2
  54. package/dist/types/components/ez-form-view/fieldbuilder/FieldBuilder.d.ts +2 -0
  55. package/dist/types/components/ez-form-view/fieldbuilder/templates/CheckBox.tpl.d.ts +3 -0
  56. package/dist/types/components/ez-form-view/fieldbuilder/templates/ComboBox.tpl.d.ts +2 -0
  57. package/dist/types/components/ez-form-view/fieldbuilder/templates/DateInput.tpl.d.ts +4 -0
  58. package/dist/types/components/ez-form-view/fieldbuilder/templates/FileInput.tpl.d.ts +2 -0
  59. package/dist/types/components/ez-form-view/fieldbuilder/templates/NumberInput.tpl.d.ts +3 -0
  60. package/dist/types/components/ez-form-view/fieldbuilder/templates/SearchInput.tpl.d.ts +2 -0
  61. package/dist/types/components/ez-form-view/fieldbuilder/templates/TextArea.tpl.d.ts +2 -0
  62. package/dist/types/components/ez-form-view/fieldbuilder/templates/TextInput.tpl.d.ts +2 -0
  63. package/dist/types/components/ez-form-view/interfaces/IFormViewField.d.ts +10 -0
  64. package/dist/types/components/ez-form-view/interfaces/index.d.ts +1 -0
  65. package/dist/types/components/ez-tree/types/Tree.d.ts +1 -0
  66. package/dist/types/components.d.ts +26 -3
  67. package/package.json +1 -1
  68. package/react/components.d.ts +1 -0
  69. package/react/components.js +1 -0
  70. package/react/components.js.map +1 -1
  71. package/dist/collection/components/ez-form/fieldbuilder/FieldBuilder.js +0 -48
  72. package/dist/collection/components/ez-form/structure/FormItem.js +0 -11
  73. package/dist/collection/components/ez-form/structure/FormSheet.js +0 -6
  74. package/dist/ezui/p-6500a260.entry.js +0 -1
  75. package/dist/ezui/p-6c45dc64.entry.js +0 -1
  76. package/dist/types/components/ez-form/fieldbuilder/FieldBuilder.d.ts +0 -2
  77. package/dist/types/components/ez-form/fieldbuilder/tpl/CheckBox.tpl.d.ts +0 -3
  78. package/dist/types/components/ez-form/fieldbuilder/tpl/ComboBox.tpl.d.ts +0 -6
  79. package/dist/types/components/ez-form/fieldbuilder/tpl/DateInput.tpl.d.ts +0 -15
  80. package/dist/types/components/ez-form/fieldbuilder/tpl/FileInput.tpl.d.ts +0 -5
  81. package/dist/types/components/ez-form/fieldbuilder/tpl/NumberInput.tpl.d.ts +0 -7
  82. package/dist/types/components/ez-form/fieldbuilder/tpl/SearchInput.tpl.d.ts +0 -6
  83. package/dist/types/components/ez-form/fieldbuilder/tpl/TextArea.tpl.d.ts +0 -5
  84. package/dist/types/components/ez-form/fieldbuilder/tpl/TextInput.tpl.d.ts +0 -5
  85. package/dist/types/components/ez-form/structure/FormItem.d.ts +0 -9
  86. package/dist/types/components/ez-form/structure/FormSheet.d.ts +0 -10
  87. /package/dist/collection/components/{ez-form/fieldbuilder/tpl → ez-form-view/fieldbuilder/templates}/FileInput.tpl.js +0 -0
  88. /package/dist/collection/components/{ez-form/fieldbuilder/tpl → ez-form-view/fieldbuilder/templates}/SearchInput.tpl.js +0 -0
  89. /package/dist/collection/components/{ez-form/fieldbuilder/tpl → ez-form-view/fieldbuilder/templates}/TextArea.tpl.js +0 -0
  90. /package/dist/collection/components/{ez-form/fieldbuilder/tpl → ez-form-view/fieldbuilder/templates}/TextInput.tpl.js +0 -0
@@ -14,7 +14,7 @@ const patchEsm = () => {
14
14
  const defineCustomElements = (win, options) => {
15
15
  if (typeof window === 'undefined') return Promise.resolve();
16
16
  return patchEsm().then(() => {
17
- return index.bootstrapLazy([["ez-actions-button.cjs",[[1,"ez-actions-button",{"enabled":[516],"actions":[1040],"size":[513],"showLabel":[516,"show-label"],"displayIcon":[513,"display-icon"],"checkOption":[516,"check-option"],"value":[513],"isTransparent":[516,"is-transparent"],"arrowActive":[516,"arrow-active"],"_selectedAction":[32],"hideActions":[64],"isOpened":[64]}]]],["ez-dialog.cjs",[[1,"ez-dialog",{"confirm":[1028],"dialogType":[1025,"dialog-type"],"message":[1025],"opened":[1540],"personalizedIconPath":[1025,"personalized-icon-path"],"ezTitle":[1025,"ez-title"],"show":[64]}]]],["ez-grid.cjs",[[6,"ez-grid",{"multipleSelection":[4,"multiple-selection"],"config":[1040],"serverUrl":[1,"server-url"],"dataUnit":[16],"statusResolver":[16],"_paginationInfo":[32],"_paginationChangedByKeyboard":[32],"setColumnsDef":[64],"addColumnMenuItem":[64],"setColumnsState":[64],"setData":[64],"getSelection":[64],"getColumnsState":[64],"getColumns":[64],"quickFilter":[64]},[[0,"ezSelectionChange","onSelectionChange"]]]]],["ez-alert.cjs",[[1,"ez-alert",{"alertType":[513,"alert-type"]}]]],["ez-breadcrumb.cjs",[[1,"ez-breadcrumb",{"items":[1040]}]]],["ez-chip.cjs",[[1,"ez-chip",{"label":[513],"enabled":[516],"removePosition":[513,"remove-position"],"mode":[513],"value":[1540],"setFocus":[64],"setBlur":[64]}]]],["ez-dropdown.cjs",[[1,"ez-dropdown",{"items":[1040],"value":[1040],"itemBuilder":[16]}]]],["ez-file-item.cjs",[[1,"ez-file-item",{"canRemove":[4,"can-remove"],"fileName":[1,"file-name"],"iconName":[1,"icon-name"],"fileSize":[2,"file-size"],"progress":[2]}]]],["ez-application.cjs",[[0,"ez-application"]]],["ez-card-item.cjs",[[1,"ez-card-item",{"item":[16]}]]],["ez-list.cjs",[[1,"ez-list",{"dataSource":[1040],"useGroups":[1540,"use-groups"],"ezDraggable":[1028,"ez-draggable"],"ezSelectable":[1028,"ez-selectable"],"itemSlotBuilder":[1040],"_listItems":[32],"_listGroupItems":[32],"clearHistory":[64],"scrollToTop":[64],"setSelection":[64],"getSelection":[64],"getList":[64]}]]],["ez-modal.cjs",[[1,"ez-modal",{"modalSize":[1,"modal-size"],"align":[1],"opened":[1028],"closeEsc":[4,"close-esc"],"closeOutsideClick":[4,"close-outside-click"]}]]],["ez-popover.cjs",[[1,"ez-popover",{"autoClose":[516,"auto-close"],"top":[1537],"left":[1537],"bottom":[1537],"right":[1537],"boxWidth":[513,"box-width"],"opened":[1540],"innerElement":[1537,"inner-element"],"overlayType":[513,"overlay-type"],"updatePosition":[64],"show":[64],"hide":[64]}]]],["ez-popup.cjs",[[1,"ez-popup",{"size":[1],"opened":[1540],"useHeader":[516,"use-header"],"heightMode":[513,"height-mode"],"ezTitle":[1,"ez-title"]}]]],["ez-toast.cjs",[[1,"ez-toast",{"message":[1025],"fadeTime":[1026,"fade-time"],"useIcon":[1028,"use-icon"],"canClose":[1028,"can-close"],"show":[64]}]]],["ez-text-input.cjs",[[1,"ez-text-input",{"label":[513],"value":[1537],"enabled":[516],"errorMessage":[1537,"error-message"],"mask":[1],"canShowError":[516,"can-show-error"],"restrict":[1],"mode":[513],"noBorder":[516,"no-border"],"setFocus":[64],"setBlur":[64],"isInvalid":[64]}]]],["ez-guide-navigator.cjs",[[1,"ez-guide-navigator",{"binder":[16],"open":[1540],"items":[32],"filterText":[32],"enableOnly":[64],"enableAll":[64]}]]],["ez-modal-container.cjs",[[6,"ez-modal-container",{"modalTitle":[1,"modal-title"],"modalSubTitle":[1,"modal-sub-title"],"showTitleBar":[4,"show-title-bar"],"cancelButtonLabel":[1,"cancel-button-label"],"okButtonLabel":[1,"ok-button-label"],"cancelButtonStatus":[1,"cancel-button-status"],"okButtonStatus":[1,"ok-button-status"]}]]],["ez-loading-bar.cjs",[[1,"ez-loading-bar",{"_showLoading":[32],"hide":[64],"show":[64]}]]],["ez-radio-button.cjs",[[1,"ez-radio-button",{"value":[1544],"options":[1040],"enabled":[516],"label":[513],"direction":[1537]}]]],["ez-scroller.cjs",[[1,"ez-scroller",{"direction":[1],"locked":[4],"activeShadow":[4,"active-shadow"],"isActive":[32]},[[2,"click","clickListener"],[1,"mousedown","mouseDownHandler"],[1,"mouseup","mouseUpHandler"],[1,"mousemove","mouseMoveHandler"]]]]],["ez-view-stack.cjs",[[0,"ez-view-stack",{"show":[64],"getSelectedIndex":[64]}]]],["ez-collapsible-box.cjs",[[1,"ez-collapsible-box",{"value":[1540],"label":[513],"headerSize":[513,"header-size"],"iconPlacement":[513,"icon-placement"],"headerAlign":[513,"header-align"],"removable":[516],"editable":[516],"conditionalSave":[16],"_activeEditText":[32],"showHide":[64],"applyFocusTextEdit":[64],"cancelEdition":[64]}]]],["ez-search.cjs",[[1,"ez-search",{"value":[1537],"label":[1537],"enabled":[1540],"errorMessage":[1537,"error-message"],"optionLoader":[16],"showSelectedValue":[4,"show-selected-value"],"showOptionValue":[4,"show-option-value"],"suppressEmptyOption":[4,"suppress-empty-option"],"mode":[513],"setFocus":[64],"setBlur":[64],"isInvalid":[64]}]]],["ez-date-input.cjs",[[1,"ez-date-input",{"label":[513],"value":[1040],"enabled":[516],"errorMessage":[1537,"error-message"],"mode":[513],"setFocus":[64],"setBlur":[64],"isInvalid":[64]}]]],["ez-date-time-input.cjs",[[1,"ez-date-time-input",{"label":[513],"value":[1040],"enabled":[516],"errorMessage":[1537,"error-message"],"showSeconds":[516,"show-seconds"],"mode":[513],"setFocus":[64],"setBlur":[64],"isInvalid":[64]}]]],["ez-time-input.cjs",[[1,"ez-time-input",{"label":[513],"value":[1026],"enabled":[516],"errorMessage":[1537,"error-message"],"showSeconds":[516,"show-seconds"],"mode":[513],"setFocus":[64],"setBlur":[64],"isInvalid":[64]}]]],["ez-number-input.cjs",[[1,"ez-number-input",{"label":[1],"value":[1538],"enabled":[4],"errorMessage":[1537,"error-message"],"precision":[2],"prettyPrecision":[2,"pretty-precision"],"mode":[513],"setFocus":[64],"setBlur":[64],"isInvalid":[64]}]]],["ez-tabselector.cjs",[[1,"ez-tabselector",{"selectedIndex":[1538,"selected-index"],"selectedTab":[1537,"selected-tab"],"tabs":[1],"_processedTabs":[32]}]]],["ez-check.cjs",[[1,"ez-check",{"label":[513],"value":[1540],"enabled":[1540],"indeterminate":[516],"mode":[513],"getMode":[64],"setFocus":[64]}]]],["ez-text-area.cjs",[[1,"ez-text-area",{"label":[513],"value":[1537],"enabled":[516],"errorMessage":[1537,"error-message"],"rows":[1538],"canShowError":[516,"can-show-error"],"mode":[513],"setFocus":[64],"setBlur":[64],"isInvalid":[64]}]]],["ez-upload.cjs",[[1,"ez-upload",{"label":[1],"enabled":[4],"maxFileSize":[2,"max-file-size"],"maxFiles":[2,"max-files"],"requestHeaders":[8,"request-headers"],"urlUpload":[1,"url-upload"],"urlDelete":[1,"url-delete"],"value":[1040],"addFiles":[64],"setFocus":[64],"setBlur":[64]}]]],["ez-combo-box.cjs",[[1,"ez-combo-box",{"value":[1537],"label":[513],"enabled":[516],"options":[1040],"errorMessage":[1537,"error-message"],"searchMode":[4,"search-mode"],"showSelectedValue":[4,"show-selected-value"],"showOptionValue":[4,"show-option-value"],"suppressSearch":[4,"suppress-search"],"optionLoader":[16],"suppressEmptyOption":[4,"suppress-empty-option"],"canShowError":[516,"can-show-error"],"mode":[513],"_preSelection":[32],"_visibleOptions":[32],"_startLoading":[32],"_showLoading":[32],"_criteria":[32],"setFocus":[64],"setBlur":[64],"isInvalid":[64]}]]],["ez-calendar.cjs",[[1,"ez-calendar",{"value":[1040],"floating":[516],"time":[516],"showSeconds":[516,"show-seconds"],"show":[64],"fitVertical":[64],"hide":[64]}]]],["ez-icon.cjs",[[1,"ez-icon",{"size":[513],"href":[513],"iconName":[513,"icon-name"]}]]],["ez-filter-input_3.cjs",[[1,"ez-filter-input",{"label":[1],"value":[1537],"enabled":[4],"errorMessage":[1537,"error-message"],"restrict":[1],"mode":[513],"setFocus":[64],"setBlur":[64],"isInvalid":[64]}],[1,"ez-sidebar-button"],[1,"ez-tree",{"items":[1040],"value":[1040],"selectedId":[1537,"selected-id"],"iconResolver":[16],"tooltipResolver":[16],"_waintingForLoad":[32],"selectItem":[64],"openItem":[64],"disableItem":[64],"enableItem":[64],"addChild":[64]},[[2,"keydown","onKeyDownListener"]]]]],["ez-button.cjs",[[1,"ez-button",{"label":[513],"enabled":[516],"mode":[513],"image":[513],"iconName":[513,"icon-name"],"size":[513],"setFocus":[64],"setBlur":[64]}]]],["ez-text-edit.cjs",[[1,"ez-text-edit",{"value":[1],"styled":[16],"_newValue":[32],"applyFocusSelect":[64]}]]],["ez-form.cjs",[[2,"ez-form",{"dataUnit":[1040],"config":[16],"recordsValidator":[16],"multiLevel":[4,"multi-level"],"levelResolver":[16],"contentBuilder":[16],"validate":[64]}]]]], options);
17
+ return index.bootstrapLazy([["ez-guide-navigator.cjs",[[1,"ez-guide-navigator",{"binder":[16],"open":[1540],"items":[32],"filterText":[32],"enableOnly":[64],"enableAll":[64]}]]],["ez-actions-button.cjs",[[1,"ez-actions-button",{"enabled":[516],"actions":[1040],"size":[513],"showLabel":[516,"show-label"],"displayIcon":[513,"display-icon"],"checkOption":[516,"check-option"],"value":[513],"isTransparent":[516,"is-transparent"],"arrowActive":[516,"arrow-active"],"_selectedAction":[32],"hideActions":[64],"isOpened":[64]}]]],["ez-dialog.cjs",[[1,"ez-dialog",{"confirm":[1028],"dialogType":[1025,"dialog-type"],"message":[1025],"opened":[1540],"personalizedIconPath":[1025,"personalized-icon-path"],"ezTitle":[1025,"ez-title"],"show":[64]}]]],["ez-grid.cjs",[[6,"ez-grid",{"multipleSelection":[4,"multiple-selection"],"config":[1040],"serverUrl":[1,"server-url"],"dataUnit":[16],"statusResolver":[16],"_paginationInfo":[32],"_paginationChangedByKeyboard":[32],"setColumnsDef":[64],"addColumnMenuItem":[64],"setColumnsState":[64],"setData":[64],"getSelection":[64],"getColumnsState":[64],"getColumns":[64],"quickFilter":[64]},[[0,"ezSelectionChange","onSelectionChange"]]]]],["ez-modal-container.cjs",[[6,"ez-modal-container",{"modalTitle":[1,"modal-title"],"modalSubTitle":[1,"modal-sub-title"],"showTitleBar":[4,"show-title-bar"],"cancelButtonLabel":[1,"cancel-button-label"],"okButtonLabel":[1,"ok-button-label"],"cancelButtonStatus":[1,"cancel-button-status"],"okButtonStatus":[1,"ok-button-status"]}]]],["ez-alert.cjs",[[1,"ez-alert",{"alertType":[513,"alert-type"]}]]],["ez-breadcrumb.cjs",[[1,"ez-breadcrumb",{"items":[1040]}]]],["ez-chip.cjs",[[1,"ez-chip",{"label":[513],"enabled":[516],"removePosition":[513,"remove-position"],"mode":[513],"value":[1540],"setFocus":[64],"setBlur":[64]}]]],["ez-dropdown.cjs",[[1,"ez-dropdown",{"items":[1040],"value":[1040],"itemBuilder":[16]}]]],["ez-file-item.cjs",[[1,"ez-file-item",{"canRemove":[4,"can-remove"],"fileName":[1,"file-name"],"iconName":[1,"icon-name"],"fileSize":[2,"file-size"],"progress":[2]}]]],["ez-application.cjs",[[0,"ez-application"]]],["ez-card-item.cjs",[[1,"ez-card-item",{"item":[16]}]]],["ez-list.cjs",[[1,"ez-list",{"dataSource":[1040],"useGroups":[1540,"use-groups"],"ezDraggable":[1028,"ez-draggable"],"ezSelectable":[1028,"ez-selectable"],"itemSlotBuilder":[1040],"_listItems":[32],"_listGroupItems":[32],"clearHistory":[64],"scrollToTop":[64],"setSelection":[64],"getSelection":[64],"getList":[64]}]]],["ez-loading-bar.cjs",[[1,"ez-loading-bar",{"_showLoading":[32],"hide":[64],"show":[64]}]]],["ez-modal.cjs",[[1,"ez-modal",{"modalSize":[1,"modal-size"],"align":[1],"opened":[1028],"closeEsc":[4,"close-esc"],"closeOutsideClick":[4,"close-outside-click"]}]]],["ez-popover.cjs",[[1,"ez-popover",{"autoClose":[516,"auto-close"],"top":[1537],"left":[1537],"bottom":[1537],"right":[1537],"boxWidth":[513,"box-width"],"opened":[1540],"innerElement":[1537,"inner-element"],"overlayType":[513,"overlay-type"],"updatePosition":[64],"show":[64],"hide":[64]}]]],["ez-popup.cjs",[[1,"ez-popup",{"size":[1],"opened":[1540],"useHeader":[516,"use-header"],"heightMode":[513,"height-mode"],"ezTitle":[1,"ez-title"]}]]],["ez-radio-button.cjs",[[1,"ez-radio-button",{"value":[1544],"options":[1040],"enabled":[516],"label":[513],"direction":[1537]}]]],["ez-scroller.cjs",[[1,"ez-scroller",{"direction":[1],"locked":[4],"activeShadow":[4,"active-shadow"],"isActive":[32]},[[2,"click","clickListener"],[1,"mousedown","mouseDownHandler"],[1,"mouseup","mouseUpHandler"],[1,"mousemove","mouseMoveHandler"]]]]],["ez-toast.cjs",[[1,"ez-toast",{"message":[1025],"fadeTime":[1026,"fade-time"],"useIcon":[1028,"use-icon"],"canClose":[1028,"can-close"],"show":[64]}]]],["ez-view-stack.cjs",[[0,"ez-view-stack",{"show":[64],"getSelectedIndex":[64]}]]],["ez-tabselector.cjs",[[1,"ez-tabselector",{"selectedIndex":[1538,"selected-index"],"selectedTab":[1537,"selected-tab"],"tabs":[1],"_processedTabs":[32]}]]],["ez-text-input.cjs",[[1,"ez-text-input",{"label":[513],"value":[1537],"enabled":[516],"errorMessage":[1537,"error-message"],"mask":[1],"canShowError":[516,"can-show-error"],"restrict":[1],"mode":[513],"noBorder":[516,"no-border"],"setFocus":[64],"setBlur":[64],"isInvalid":[64]}]]],["ez-collapsible-box.cjs",[[1,"ez-collapsible-box",{"value":[1540],"label":[513],"headerSize":[513,"header-size"],"iconPlacement":[513,"icon-placement"],"headerAlign":[513,"header-align"],"removable":[516],"editable":[516],"conditionalSave":[16],"_activeEditText":[32],"showHide":[64],"applyFocusTextEdit":[64],"cancelEdition":[64]}]]],["ez-search.cjs",[[1,"ez-search",{"value":[1537],"label":[1537],"enabled":[1540],"errorMessage":[1537,"error-message"],"optionLoader":[16],"showSelectedValue":[4,"show-selected-value"],"showOptionValue":[4,"show-option-value"],"suppressEmptyOption":[4,"suppress-empty-option"],"mode":[513],"setFocus":[64],"setBlur":[64],"isInvalid":[64]}]]],["ez-date-input.cjs",[[1,"ez-date-input",{"label":[513],"value":[1040],"enabled":[516],"errorMessage":[1537,"error-message"],"mode":[513],"setFocus":[64],"setBlur":[64],"isInvalid":[64]}]]],["ez-date-time-input.cjs",[[1,"ez-date-time-input",{"label":[513],"value":[1040],"enabled":[516],"errorMessage":[1537,"error-message"],"showSeconds":[516,"show-seconds"],"mode":[513],"setFocus":[64],"setBlur":[64],"isInvalid":[64]}]]],["ez-time-input.cjs",[[1,"ez-time-input",{"label":[513],"value":[1026],"enabled":[516],"errorMessage":[1537,"error-message"],"showSeconds":[516,"show-seconds"],"mode":[513],"setFocus":[64],"setBlur":[64],"isInvalid":[64]}]]],["ez-number-input.cjs",[[1,"ez-number-input",{"label":[1],"value":[1538],"enabled":[4],"errorMessage":[1537,"error-message"],"precision":[2],"prettyPrecision":[2,"pretty-precision"],"mode":[513],"setFocus":[64],"setBlur":[64],"isInvalid":[64]}]]],["ez-check.cjs",[[1,"ez-check",{"label":[513],"value":[1540],"enabled":[1540],"indeterminate":[516],"mode":[513],"getMode":[64],"setFocus":[64]}]]],["ez-text-area.cjs",[[1,"ez-text-area",{"label":[513],"value":[1537],"enabled":[516],"errorMessage":[1537,"error-message"],"rows":[1538],"canShowError":[516,"can-show-error"],"mode":[513],"setFocus":[64],"setBlur":[64],"isInvalid":[64]}]]],["ez-upload.cjs",[[1,"ez-upload",{"label":[1],"enabled":[4],"maxFileSize":[2,"max-file-size"],"maxFiles":[2,"max-files"],"requestHeaders":[8,"request-headers"],"urlUpload":[1,"url-upload"],"urlDelete":[1,"url-delete"],"value":[1040],"addFiles":[64],"setFocus":[64],"setBlur":[64]}]]],["ez-text-edit.cjs",[[1,"ez-text-edit",{"value":[1],"styled":[16],"_newValue":[32],"applyFocusSelect":[64]}]]],["ez-combo-box.cjs",[[1,"ez-combo-box",{"value":[1537],"label":[513],"enabled":[516],"options":[1040],"errorMessage":[1537,"error-message"],"searchMode":[4,"search-mode"],"showSelectedValue":[4,"show-selected-value"],"showOptionValue":[4,"show-option-value"],"suppressSearch":[4,"suppress-search"],"optionLoader":[16],"suppressEmptyOption":[4,"suppress-empty-option"],"canShowError":[516,"can-show-error"],"mode":[513],"_preSelection":[32],"_visibleOptions":[32],"_startLoading":[32],"_showLoading":[32],"_criteria":[32],"setFocus":[64],"setBlur":[64],"isInvalid":[64]}]]],["ez-filter-input_3.cjs",[[1,"ez-filter-input",{"label":[1],"value":[1537],"enabled":[4],"errorMessage":[1537,"error-message"],"restrict":[1],"mode":[513],"setFocus":[64],"setBlur":[64],"isInvalid":[64]}],[1,"ez-sidebar-button"],[1,"ez-tree",{"items":[1040],"value":[1040],"selectedId":[1537,"selected-id"],"iconResolver":[16],"tooltipResolver":[16],"_waintingForLoad":[32],"selectItem":[64],"openItem":[64],"disableItem":[64],"enableItem":[64],"addChild":[64]},[[2,"keydown","onKeyDownListener"]]]]],["ez-calendar.cjs",[[1,"ez-calendar",{"value":[1040],"floating":[516],"time":[516],"showSeconds":[516,"show-seconds"],"show":[64],"fitVertical":[64],"hide":[64]}]]],["ez-icon.cjs",[[1,"ez-icon",{"size":[513],"href":[513],"iconName":[513,"icon-name"]}]]],["ez-button.cjs",[[1,"ez-button",{"label":[513],"enabled":[516],"mode":[513],"image":[513],"iconName":[513,"icon-name"],"size":[513],"setFocus":[64],"setBlur":[64]}]]],["ez-form-view.cjs",[[2,"ez-form-view",{"fields":[16]}]]],["ez-form.cjs",[[2,"ez-form",{"dataUnit":[1040],"config":[16],"recordsValidator":[16],"multiLevel":[4,"multi-level"],"levelResolver":[16],"contentBuilder":[16],"validate":[64]}]]]], options);
18
18
  });
19
19
  };
20
20
 
@@ -23,6 +23,7 @@
23
23
  "./components/ez-dropdown/ez-dropdown.js",
24
24
  "./components/ez-file-item/ez-file-item.js",
25
25
  "./components/ez-filter-input/ez-filter-input.js",
26
+ "./components/ez-form-view/ez-form-view.js",
26
27
  "./components/ez-grid/ez-grid.js",
27
28
  "./components/ez-guide-navigator/ez-guide-navigator.js",
28
29
  "./components/ez-icon/ez-icon.js",
@@ -1,3 +1,4 @@
1
+ import { UserInterface } from "@sankhyalabs/core";
1
2
  export class FormMetadata {
2
3
  constructor() {
3
4
  this._sheets = new Map();
@@ -27,40 +28,20 @@ export class FormMetadata {
27
28
  return this._defaultValues;
28
29
  }
29
30
  }
30
- export const isRequiredField = (descriptor, config) => {
31
- if (descriptor.required) {
32
- //Se for required pelo descritor não olha pra configuração.
33
- return true;
34
- }
35
- return config === null || config === void 0 ? void 0 : config.required;
36
- };
37
- export const isReadOnlyField = (descriptor, config) => {
38
- if (descriptor.readOnly) {
39
- //Se for readOnly pelo descritor não olha pra configuração.
40
- return true;
41
- }
42
- return config === null || config === void 0 ? void 0 : config.readOnly;
43
- };
44
31
  export const buildFromDataUnit = (dataUnit) => {
45
- var _a, _b;
46
32
  const unitMD = dataUnit.metadata;
47
33
  const metadata = new FormMetadata();
48
34
  if (unitMD) {
49
- const visibleFields = (_a = unitMD.fields) === null || _a === void 0 ? void 0 : _a.filter(descriptor => descriptor.visible !== false);
50
- const items = new Map();
51
- (_b = unitMD === null || unitMD === void 0 ? void 0 : unitMD.fields) === null || _b === void 0 ? void 0 : _b.forEach((descriptor) => {
52
- if (descriptor.visible !== false) {
53
- resolveFieldGroup(items, null, descriptor);
54
- }
55
- });
35
+ const visibleFields = (unitMD.fields || []).filter(descriptor => descriptor.visible !== false);
36
+ const fields = visibleFields.map(descriptor => buildFormField(descriptor));
56
37
  let defaultValues = {};
57
38
  visibleFields
58
39
  .filter(descriptor => descriptor.defaultValue)
59
40
  .forEach((descriptor) => defaultValues[descriptor.name] = descriptor.defaultValue);
60
41
  metadata.addSheet({
61
- label: unitMD.label,
62
42
  name: unitMD.name,
63
- items: Array.from(items.values()),
43
+ label: unitMD.label,
44
+ fields,
64
45
  requiredFields: visibleFields
65
46
  .filter(descriptor => descriptor.required)
66
47
  .map(descriptor => descriptor.name),
@@ -72,29 +53,6 @@ export const buildFromDataUnit = (dataUnit) => {
72
53
  }
73
54
  return metadata;
74
55
  };
75
- function getTabConfig(tab, sheets) {
76
- const tabConfig = (typeof tab === "string" ? Array.from(sheets.keys()).find(t => t.label === tab) : tab);
77
- return tabConfig || { label: tab, visible: true };
78
- }
79
- function sortTabs(a, b) {
80
- return a[0].label == '__main' ? -1 : (a[0].order || 10000) - (b[0].order || 10000);
81
- }
82
- function resolveFieldGroup(items, field, descriptor) {
83
- const fieldMD = { config: field, descriptor: descriptor };
84
- let group = (field === null || field === void 0 ? void 0 : field.group) || descriptor.group;
85
- if (group) {
86
- const key = `group::${group}`;
87
- if (!items.has(key)) {
88
- items.set(key, { label: group, items: [fieldMD] });
89
- }
90
- else {
91
- items.get(key).items.push(fieldMD);
92
- }
93
- }
94
- else {
95
- items.set((field === null || field === void 0 ? void 0 : field.name) || descriptor.name, fieldMD);
96
- }
97
- }
98
56
  export const buildFromConfig = (config, dataUnit) => {
99
57
  var _a, _b;
100
58
  const sheets = new Map();
@@ -117,10 +75,11 @@ export const buildFromConfig = (config, dataUnit) => {
117
75
  const descriptor = dataUnit.getField(field.name);
118
76
  if (descriptor && tabConfig.visible) {
119
77
  if (!sheets.has(tabConfig)) {
120
- sheets.set(tabConfig, new Map());
78
+ sheets.set(tabConfig, []);
121
79
  }
122
- const tabItens = sheets.get(tabConfig);
123
- if (isRequiredField(descriptor, field)) {
80
+ const formField = buildFormField(descriptor, field);
81
+ sheets.get(tabConfig).push(formField);
82
+ if (formField.required) {
124
83
  requiredFields.push(field.name);
125
84
  }
126
85
  const cleanOnCopy = field.cleanOnCopy == undefined ? (_a = descriptor.properties) === null || _a === void 0 ? void 0 : _a.cleanOnCopy : field.cleanOnCopy;
@@ -131,18 +90,17 @@ export const buildFromConfig = (config, dataUnit) => {
131
90
  if (defaultValue) {
132
91
  defaultValues[field.name] = field.defaultValue;
133
92
  }
134
- resolveFieldGroup(tabItens, field, descriptor);
135
93
  }
136
94
  }
137
95
  });
138
96
  const metadata = new FormMetadata();
139
97
  Array.from(sheets.entries())
140
98
  .sort(sortTabs)
141
- .forEach(([key, value]) => {
99
+ .forEach(([key, fields]) => {
142
100
  metadata.addSheet({
143
101
  label: (key.label === "__main") ? "Principal" : key.label,
144
102
  name: key.label,
145
- items: Array.from(value.values()),
103
+ fields,
146
104
  requiredFields,
147
105
  cleanOnCopyFields,
148
106
  defaultValues
@@ -150,3 +108,30 @@ export const buildFromConfig = (config, dataUnit) => {
150
108
  });
151
109
  return metadata;
152
110
  };
111
+ const buildFormField = (descriptor, config) => {
112
+ let { name, label, group } = Object.assign({}, config);
113
+ let { readOnly, required } = Object.assign({}, config);
114
+ let props;
115
+ let userInterface;
116
+ if (descriptor) {
117
+ label = label || descriptor.label;
118
+ name = name || descriptor.name;
119
+ required = descriptor.required || (config === null || config === void 0 ? void 0 : config.required);
120
+ readOnly = descriptor.readOnly || (config === null || config === void 0 ? void 0 : config.readOnly);
121
+ props = descriptor.properties;
122
+ userInterface = descriptor.userInterface;
123
+ }
124
+ return {
125
+ name, label, group,
126
+ readOnly, required,
127
+ props,
128
+ userInterface: userInterface || UserInterface.SHORTTEXT
129
+ };
130
+ };
131
+ const getTabConfig = (tab, sheets) => {
132
+ const tabConfig = (typeof tab === "string" ? Array.from(sheets.keys()).find(t => t.label === tab) : tab);
133
+ return tabConfig || { label: tab, visible: true };
134
+ };
135
+ const sortTabs = (a, b) => {
136
+ return a[0].label == '__main' ? -1 : (a[0].order || 10000) - (b[0].order || 10000);
137
+ };
@@ -1,4 +1,4 @@
1
- ez-form {
1
+ :host {
2
2
  display: flex;
3
3
  flex-direction: column;
4
4
  width: 100%;
@@ -1,12 +1,10 @@
1
- import { Component, h, Host, Prop, Element, forceUpdate, Method, Watch, Event } from "@stencil/core";
2
- import { DataUnit, Action, DataUnitAction, ElementIDUtils, StringUtils } from "@sankhyalabs/core";
3
- import { FormSheet } from "./structure/FormSheet";
4
- import { buildFromConfig, buildFromDataUnit } from "./structure/FormMetadata";
1
+ import { Action, DataUnit, DataUnitAction, ElementIDUtils, StringUtils } from "@sankhyalabs/core";
2
+ import { Component, Element, Event, Host, Method, Prop, Watch, forceUpdate, h } from "@stencil/core";
5
3
  import { createStore } from "redux";
6
- import { formReducer, selectCurrentSheet, selectFormMetadata, loadMetadata, changeTab, selectCurrentSheetId } from "./store/form.slice";
7
- import DataBinder from "./DataBinder";
8
4
  import ApplicationUtils from "../../utils/ApplicationUtils";
9
- import { buildField } from "./fieldbuilder/FieldBuilder";
5
+ import DataBinder from "./DataBinder";
6
+ import { changeTab, formReducer, loadMetadata, selectCurrentSheet, selectCurrentSheetId, selectFormMetadata } from "./store/form.slice";
7
+ import { buildFromConfig, buildFromDataUnit } from "./FormMetadata";
10
8
  export class EzForm {
11
9
  constructor() {
12
10
  this.onDataUnitAction = (action) => {
@@ -134,8 +132,9 @@ export class EzForm {
134
132
  return result;
135
133
  }
136
134
  buildFormContent(sheetId, currentSheet) {
135
+ const fields = currentSheet === null || currentSheet === void 0 ? void 0 : currentSheet.fields;
137
136
  if (this.contentBuilder != undefined) {
138
- const customContent = this.contentBuilder(sheetId, currentSheet === null || currentSheet === void 0 ? void 0 : currentSheet.items, buildField);
137
+ const customContent = this.contentBuilder(sheetId, fields);
139
138
  if (customContent != undefined) {
140
139
  return h("div", { "innerHTML": customContent });
141
140
  }
@@ -144,7 +143,8 @@ export class EzForm {
144
143
  return;
145
144
  }
146
145
  const idFormSheet = `${StringUtils.replaceAccentuatedChars(StringUtils.toCamelCase(currentSheet === null || currentSheet === void 0 ? void 0 : currentSheet.label), false)}_selectorContainer`;
147
- return h(FormSheet, { store: this._store, source: currentSheet, dataElementId: idFormSheet });
146
+ return (h("div", { class: "dynamic-content ez-box__container", "data-element-id": idFormSheet },
147
+ h("ez-form-view", { class: "ez-row ez-padding-vertical--small", fields: fields })));
148
148
  }
149
149
  processMetadata() {
150
150
  if (!this.isStatic() && this.dataUnit && this._store) {
@@ -273,7 +273,7 @@ export class EzForm {
273
273
  "references": {
274
274
  "IFormConfig": {
275
275
  "location": "import",
276
- "path": "../../interfaces/ez-form"
276
+ "path": "./interfaces"
277
277
  }
278
278
  }
279
279
  },
@@ -293,7 +293,7 @@ export class EzForm {
293
293
  "references": {
294
294
  "IRecordValidator": {
295
295
  "location": "import",
296
- "path": "../../interfaces/ez-form"
296
+ "path": "./interfaces"
297
297
  }
298
298
  }
299
299
  },
@@ -348,19 +348,15 @@ export class EzForm {
348
348
  "type": "unknown",
349
349
  "mutable": false,
350
350
  "complexType": {
351
- "original": "(selectedTab: string, fields: Array<IFieldMetadata | IFieldSetMetadata>, fieldBuilder: (field: IFieldMetadata) => HTMLElement) => HTMLElement | string",
352
- "resolved": "(selectedTab: string, fields: (IFieldMetadata | IFieldSetMetadata)[], fieldBuilder: (field: IFieldMetadata) => HTMLElement) => string | HTMLElement",
351
+ "original": "(selectedTab: string, fields: Array<IFormViewField>) => HTMLElement | string",
352
+ "resolved": "(selectedTab: string, fields: IFormViewField[]) => string | HTMLElement",
353
353
  "references": {
354
354
  "Array": {
355
355
  "location": "global"
356
356
  },
357
- "IFieldMetadata": {
358
- "location": "import",
359
- "path": "../../interfaces/ez-form"
360
- },
361
- "IFieldSetMetadata": {
357
+ "IFormViewField": {
362
358
  "location": "import",
363
- "path": "../../interfaces/ez-form"
359
+ "path": "../ez-form-view/interfaces"
364
360
  },
365
361
  "HTMLElement": {
366
362
  "location": "global"
@@ -409,7 +405,7 @@ export class EzForm {
409
405
  },
410
406
  "IValidationResult": {
411
407
  "location": "import",
412
- "path": "../../interfaces/ez-form"
408
+ "path": "./interfaces"
413
409
  }
414
410
  },
415
411
  "return": "Promise<void>"
@@ -0,0 +1,6 @@
1
+ :host {
2
+ display: flex;
3
+ flex-direction: row;
4
+ flex-wrap: wrap;
5
+ width: 100%;
6
+ }
@@ -0,0 +1,71 @@
1
+ import { Component, Element, Host, Prop, h } from '@stencil/core';
2
+ import { fieldBuilder } from './fieldbuilder/FieldBuilder';
3
+ import { ElementIDUtils } from '@sankhyalabs/core';
4
+ export class EzFormView {
5
+ groupFields(fields) {
6
+ const result = new Map();
7
+ fields.forEach(item => {
8
+ const groupLabel = item.group;
9
+ if (groupLabel) {
10
+ let groupFields = result.get(groupLabel);
11
+ if (groupFields == undefined) {
12
+ groupFields = [];
13
+ result.set(groupLabel, groupFields);
14
+ }
15
+ groupFields.push(item);
16
+ }
17
+ else {
18
+ result.set(item.name, item);
19
+ }
20
+ });
21
+ return result;
22
+ }
23
+ render() {
24
+ ElementIDUtils.addIDInfoIfNotExists(this._element, 'ezFormView');
25
+ if (this.fields == undefined) {
26
+ return;
27
+ }
28
+ return (h(Host, null, Array.from(this.groupFields(this.fields).entries()).map(([label, value]) => {
29
+ if (Array.isArray(value)) {
30
+ return (h("ez-collapsible-box", { id: `group-${label}`, label: label, "header-size": "large", key: label }, value.map(fi => fieldBuilder(fi))));
31
+ }
32
+ else {
33
+ return fieldBuilder(value);
34
+ }
35
+ })));
36
+ }
37
+ static get is() { return "ez-form-view"; }
38
+ static get encapsulation() { return "scoped"; }
39
+ static get originalStyleUrls() { return {
40
+ "$": ["ez-form-view.css"]
41
+ }; }
42
+ static get styleUrls() { return {
43
+ "$": ["ez-form-view.css"]
44
+ }; }
45
+ static get properties() { return {
46
+ "fields": {
47
+ "type": "unknown",
48
+ "mutable": false,
49
+ "complexType": {
50
+ "original": "Array<IFormViewField>",
51
+ "resolved": "IFormViewField[]",
52
+ "references": {
53
+ "Array": {
54
+ "location": "global"
55
+ },
56
+ "IFormViewField": {
57
+ "location": "import",
58
+ "path": "./interfaces/IFormViewField"
59
+ }
60
+ }
61
+ },
62
+ "required": false,
63
+ "optional": false,
64
+ "docs": {
65
+ "tags": [],
66
+ "text": "Define a lista de metadados usada para criar os campos de user interface."
67
+ }
68
+ }
69
+ }; }
70
+ static get elementRef() { return "_element"; }
71
+ }
@@ -0,0 +1,26 @@
1
+ import { UserInterface } from "@sankhyalabs/core";
2
+ import { buildCheckBox, buildSwitch } from "./templates/CheckBox.tpl";
3
+ import { buildComboBox } from "./templates/ComboBox.tpl";
4
+ import { buildDate, buildTime, buildDateTime } from "./templates/DateInput.tpl";
5
+ import { buildFile } from "./templates/FileInput.tpl";
6
+ import { buildDecimal, buildInteger } from "./templates/NumberInput.tpl";
7
+ import { buildSearch } from "./templates/SearchInput.tpl";
8
+ import { buildTextArea } from "./templates/TextArea.tpl";
9
+ import { buildTextInput } from "./templates/TextInput.tpl";
10
+ const uiBuilders = new Map();
11
+ uiBuilders.set(UserInterface.CHECKBOX, buildCheckBox);
12
+ uiBuilders.set(UserInterface.SWITCH, buildSwitch);
13
+ uiBuilders.set(UserInterface.OPTIONSELECTOR, buildComboBox);
14
+ uiBuilders.set(UserInterface.DATE, buildDate);
15
+ uiBuilders.set(UserInterface.TIME, buildTime);
16
+ uiBuilders.set(UserInterface.DATETIME, buildDateTime);
17
+ uiBuilders.set(UserInterface.FILE, buildFile);
18
+ uiBuilders.set(UserInterface.DECIMALNUMBER, buildDecimal);
19
+ uiBuilders.set(UserInterface.INTEGERNUMBER, buildInteger);
20
+ uiBuilders.set(UserInterface.SEARCH, buildSearch);
21
+ uiBuilders.set(UserInterface.LONGTEXT, buildTextArea);
22
+ export const fieldBuilder = (field) => {
23
+ const builder = uiBuilders.get(field.userInterface) || buildTextInput;
24
+ const label = field.required ? `${field.label} (obrigatório) *` : field.label;
25
+ return builder(Object.assign(Object.assign({}, field), { label }));
26
+ };
@@ -1,10 +1,10 @@
1
1
  import { h } from "@stencil/core";
2
2
  import { CheckMode } from "../../../ez-check/CheckMode";
3
- export const buildSwitch = (fieldConfig) => {
4
- return buildField(fieldConfig.name, fieldConfig.label, fieldConfig.readOnly, true);
3
+ export const buildSwitch = (field) => {
4
+ return buildField(field.name, field.label, field.readOnly, true);
5
5
  };
6
- export const buildCheckBox = (fieldConfig) => {
7
- return buildField(fieldConfig.name, fieldConfig.label, fieldConfig.readOnly, false);
6
+ export const buildCheckBox = (field) => {
7
+ return buildField(field.name, field.label, field.readOnly, false);
8
8
  };
9
9
  function buildField(fieldName, fieldLabel, readOnly, switchMode = false) {
10
10
  return (h("div", { class: "ez-col ez-col--sd-12 ez-col--tb-3 ez-align--middle ez-padding-horizontal--small ez-padding-bottom--large" },
@@ -1,6 +1,6 @@
1
1
  import { h } from "@stencil/core";
2
- export const buildComboBox = ({ name, label, readOnly, required }, properties) => {
3
- const prop = properties === null || properties === void 0 ? void 0 : properties.options;
2
+ export const buildComboBox = ({ name, label, readOnly, required, props }) => {
3
+ const prop = props === null || props === void 0 ? void 0 : props.options;
4
4
  let options;
5
5
  if (typeof prop === "string") {
6
6
  const parsed = JSON.parse(prop);
@@ -7,7 +7,7 @@ export const buildTime = ({ name, label, readOnly }) => {
7
7
  return (h("div", { class: "ez-col ez-col--sd-12 ez-col--tb-3 ez-padding-horizontal--small" },
8
8
  h("ez-time-input", { enabled: !readOnly, label: label, "data-field-name": name, key: name })));
9
9
  };
10
- export const buildTimeDate = ({ name, label, readOnly }) => {
10
+ export const buildDateTime = ({ name, label, readOnly }) => {
11
11
  return (h("div", { class: "ez-col ez-col--sd-12 ez-col--tb-3 ez-padding-horizontal--small" },
12
12
  h("ez-date-time-input", { enabled: !readOnly, label: label, "data-field-name": name, key: name })));
13
13
  };
@@ -1,7 +1,7 @@
1
1
  import { h } from "@stencil/core";
2
- export const buildDecimal = ({ name, label, readOnly }, properties) => {
3
- const precision = Number((properties === null || properties === void 0 ? void 0 : properties.precision) || 2);
4
- const prettyPrecision = Number((properties === null || properties === void 0 ? void 0 : properties.prettyPrecision) || precision);
2
+ export const buildDecimal = ({ name, label, readOnly, props }) => {
3
+ const precision = Number((props === null || props === void 0 ? void 0 : props.precision) || 2);
4
+ const prettyPrecision = Number((props === null || props === void 0 ? void 0 : props.prettyPrecision) || precision);
5
5
  return buildNumeric(name, label, readOnly, precision, prettyPrecision);
6
6
  };
7
7
  export const buildInteger = ({ name, label, readOnly }) => {
@@ -129,7 +129,7 @@ export class EzTree {
129
129
  if (expanded) {
130
130
  this.ezOpenItem.emit(item);
131
131
  }
132
- forceUpdate(this);
132
+ this._tree.updateItem(item);
133
133
  }
134
134
  previousLevel() {
135
135
  var _a;
@@ -138,7 +138,7 @@ export class EzTree {
138
138
  }
139
139
  if (this.value.expanded) {
140
140
  this.value.expanded = false;
141
- forceUpdate(this);
141
+ this._tree.updateItem(this.value);
142
142
  }
143
143
  else {
144
144
  const node = this._tree.getNode(this.value.id);
@@ -161,7 +161,7 @@ export class EzTree {
161
161
  }
162
162
  else {
163
163
  this.value.expanded = true;
164
- forceUpdate(this);
164
+ this._tree.updateItem(this.value);
165
165
  }
166
166
  }
167
167
  indexOf(id) {
@@ -37,6 +37,17 @@ export class Tree extends Node {
37
37
  }
38
38
  });
39
39
  }
40
+ updateItem(item) {
41
+ if (item == undefined) {
42
+ return;
43
+ }
44
+ const node = this.getNode(item.id);
45
+ if (node == undefined) {
46
+ return;
47
+ }
48
+ Object.keys(item).forEach(attrib => node.item[attrib] = item[attrib]);
49
+ this._changeCallback();
50
+ }
40
51
  async open(path) {
41
52
  return new Promise(async (resolve) => {
42
53
  await this.walk(this, path, node => node.item.expanded = true);
@@ -110,6 +110,12 @@ export const EzForm: {
110
110
  new (): EzForm;
111
111
  };
112
112
 
113
+ interface EzFormView extends Components.EzFormView, HTMLElement {}
114
+ export const EzFormView: {
115
+ prototype: EzFormView;
116
+ new (): EzFormView;
117
+ };
118
+
113
119
  interface EzGrid extends Components.EzGrid, HTMLElement {}
114
120
  export const EzGrid: {
115
121
  prototype: EzGrid;