@siliconst/metaui 1.2.0 → 1.4.4

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 (600) hide show
  1. package/README.md +102 -33
  2. package/package.json +1 -1
  3. package/src/nz/co/siliconst/ui5/metaui/controls/BaseHardwareControl-dbg.js +70 -0
  4. package/src/nz/co/siliconst/ui5/metaui/controls/BaseHardwareControl-dbg.js.map +1 -0
  5. package/src/nz/co/siliconst/ui5/metaui/controls/BaseHardwareControl.d.ts +67 -0
  6. package/src/nz/co/siliconst/ui5/metaui/controls/BaseHardwareControl.d.ts.map +1 -0
  7. package/src/nz/co/siliconst/ui5/metaui/controls/BaseHardwareControl.js +2 -0
  8. package/src/nz/co/siliconst/ui5/metaui/controls/BaseHardwareControl.js.map +1 -0
  9. package/src/nz/co/siliconst/ui5/metaui/controls/BaseHardwareControl.ts +58 -0
  10. package/src/nz/co/siliconst/ui5/metaui/controls/BaseHardwareControlRenderer-dbg.js +28 -0
  11. package/src/nz/co/siliconst/ui5/metaui/controls/BaseHardwareControlRenderer-dbg.js.map +1 -0
  12. package/src/nz/co/siliconst/ui5/metaui/controls/BaseHardwareControlRenderer.d.ts +16 -0
  13. package/src/nz/co/siliconst/ui5/metaui/controls/BaseHardwareControlRenderer.d.ts.map +1 -0
  14. package/src/nz/co/siliconst/ui5/metaui/controls/BaseHardwareControlRenderer.js +2 -0
  15. package/src/nz/co/siliconst/ui5/metaui/controls/BaseHardwareControlRenderer.js.map +1 -0
  16. package/src/nz/co/siliconst/ui5/metaui/controls/BaseHardwareControlRenderer.ts +28 -0
  17. package/src/nz/co/siliconst/ui5/metaui/controls/CameraControl-dbg.js +142 -0
  18. package/src/nz/co/siliconst/ui5/metaui/controls/CameraControl-dbg.js.map +1 -0
  19. package/src/nz/co/siliconst/ui5/metaui/controls/CameraControl.d.ts +33 -0
  20. package/src/nz/co/siliconst/ui5/metaui/controls/CameraControl.d.ts.map +1 -0
  21. package/src/nz/co/siliconst/ui5/metaui/controls/CameraControl.js +2 -0
  22. package/src/nz/co/siliconst/ui5/metaui/controls/CameraControl.js.map +1 -0
  23. package/src/nz/co/siliconst/ui5/metaui/controls/CameraControl.ts +164 -0
  24. package/src/nz/co/siliconst/ui5/metaui/controls/DynamicHost-dbg.js +266 -0
  25. package/src/nz/co/siliconst/ui5/metaui/controls/DynamicHost-dbg.js.map +1 -0
  26. package/src/nz/co/siliconst/ui5/metaui/controls/DynamicHost.d.ts +162 -0
  27. package/src/nz/co/siliconst/ui5/metaui/controls/DynamicHost.d.ts.map +1 -0
  28. package/src/nz/co/siliconst/ui5/metaui/controls/DynamicHost.js +2 -0
  29. package/src/nz/co/siliconst/ui5/metaui/controls/DynamicHost.js.map +1 -0
  30. package/src/nz/co/siliconst/ui5/metaui/controls/DynamicHost.ts +203 -0
  31. package/src/nz/co/siliconst/ui5/metaui/controls/GeolocationControl-dbg.js +73 -0
  32. package/src/nz/co/siliconst/ui5/metaui/controls/GeolocationControl-dbg.js.map +1 -0
  33. package/src/nz/co/siliconst/ui5/metaui/controls/GeolocationControl.d.ts +32 -0
  34. package/src/nz/co/siliconst/ui5/metaui/controls/GeolocationControl.d.ts.map +1 -0
  35. package/src/nz/co/siliconst/ui5/metaui/controls/GeolocationControl.js +2 -0
  36. package/src/nz/co/siliconst/ui5/metaui/controls/GeolocationControl.js.map +1 -0
  37. package/src/nz/co/siliconst/ui5/metaui/controls/GeolocationControl.ts +86 -0
  38. package/src/nz/co/siliconst/ui5/metaui/controls/RichTextControl-dbg.js +60 -0
  39. package/src/nz/co/siliconst/ui5/metaui/controls/RichTextControl-dbg.js.map +1 -0
  40. package/src/nz/co/siliconst/ui5/metaui/controls/RichTextControl.d.ts +32 -0
  41. package/src/nz/co/siliconst/ui5/metaui/controls/RichTextControl.d.ts.map +1 -0
  42. package/src/nz/co/siliconst/ui5/metaui/controls/RichTextControl.js +2 -0
  43. package/src/nz/co/siliconst/ui5/metaui/controls/RichTextControl.js.map +1 -0
  44. package/src/nz/co/siliconst/ui5/metaui/controls/RichTextControl.ts +61 -0
  45. package/src/nz/co/siliconst/ui5/metaui/controls/SignatureControl-dbg.js +157 -0
  46. package/src/nz/co/siliconst/ui5/metaui/controls/SignatureControl-dbg.js.map +1 -0
  47. package/src/nz/co/siliconst/ui5/metaui/controls/SignatureControl.d.ts +33 -0
  48. package/src/nz/co/siliconst/ui5/metaui/controls/SignatureControl.d.ts.map +1 -0
  49. package/src/nz/co/siliconst/ui5/metaui/controls/SignatureControl.js +2 -0
  50. package/src/nz/co/siliconst/ui5/metaui/controls/SignatureControl.js.map +1 -0
  51. package/src/nz/co/siliconst/ui5/metaui/controls/SignatureControl.ts +169 -0
  52. package/src/nz/co/siliconst/ui5/metaui/controls/VoiceInputControl-dbg.js +160 -0
  53. package/src/nz/co/siliconst/ui5/metaui/controls/VoiceInputControl-dbg.js.map +1 -0
  54. package/src/nz/co/siliconst/ui5/metaui/controls/VoiceInputControl.d.ts +28 -0
  55. package/src/nz/co/siliconst/ui5/metaui/controls/VoiceInputControl.d.ts.map +1 -0
  56. package/src/nz/co/siliconst/ui5/metaui/controls/VoiceInputControl.js +2 -0
  57. package/src/nz/co/siliconst/ui5/metaui/controls/VoiceInputControl.js.map +1 -0
  58. package/src/nz/co/siliconst/ui5/metaui/controls/VoiceInputControl.ts +185 -0
  59. package/src/nz/co/siliconst/ui5/metaui/controls/host/GeneratorHost-dbg.js +443 -0
  60. package/src/nz/co/siliconst/ui5/metaui/controls/host/GeneratorHost-dbg.js.map +1 -0
  61. package/src/nz/co/siliconst/ui5/metaui/controls/host/GeneratorHost.d.ts +227 -0
  62. package/src/nz/co/siliconst/ui5/metaui/controls/host/GeneratorHost.d.ts.map +1 -0
  63. package/src/nz/co/siliconst/ui5/metaui/controls/host/GeneratorHost.js +2 -0
  64. package/src/nz/co/siliconst/ui5/metaui/controls/host/GeneratorHost.js.map +1 -0
  65. package/src/nz/co/siliconst/ui5/metaui/controls/host/GeneratorHost.ts +421 -0
  66. package/src/nz/co/siliconst/ui5/metaui/controls/host/delegates/DataSyncDelegate-dbg.js +103 -0
  67. package/src/nz/co/siliconst/ui5/metaui/controls/host/delegates/DataSyncDelegate-dbg.js.map +1 -0
  68. package/src/nz/co/siliconst/ui5/metaui/controls/host/delegates/DataSyncDelegate.d.ts +32 -0
  69. package/src/nz/co/siliconst/ui5/metaui/controls/host/delegates/DataSyncDelegate.d.ts.map +1 -0
  70. package/src/nz/co/siliconst/ui5/metaui/controls/host/delegates/DataSyncDelegate.js +2 -0
  71. package/src/nz/co/siliconst/ui5/metaui/controls/host/delegates/DataSyncDelegate.js.map +1 -0
  72. package/src/nz/co/siliconst/ui5/metaui/controls/host/delegates/DataSyncDelegate.ts +119 -0
  73. package/src/nz/co/siliconst/ui5/metaui/controls/host/delegates/DialogDelegate-dbg.js +64 -0
  74. package/src/nz/co/siliconst/ui5/metaui/controls/host/delegates/DialogDelegate-dbg.js.map +1 -0
  75. package/src/nz/co/siliconst/ui5/metaui/controls/host/delegates/DialogDelegate.d.ts +21 -0
  76. package/src/nz/co/siliconst/ui5/metaui/controls/host/delegates/DialogDelegate.d.ts.map +1 -0
  77. package/src/nz/co/siliconst/ui5/metaui/controls/host/delegates/DialogDelegate.js +2 -0
  78. package/src/nz/co/siliconst/ui5/metaui/controls/host/delegates/DialogDelegate.js.map +1 -0
  79. package/src/nz/co/siliconst/ui5/metaui/controls/host/delegates/DialogDelegate.ts +64 -0
  80. package/src/nz/co/siliconst/ui5/metaui/controls/host/delegates/ValidationDelegate-dbg.js +120 -0
  81. package/src/nz/co/siliconst/ui5/metaui/controls/host/delegates/ValidationDelegate-dbg.js.map +1 -0
  82. package/src/nz/co/siliconst/ui5/metaui/controls/host/delegates/ValidationDelegate.d.ts +45 -0
  83. package/src/nz/co/siliconst/ui5/metaui/controls/host/delegates/ValidationDelegate.d.ts.map +1 -0
  84. package/src/nz/co/siliconst/ui5/metaui/controls/host/delegates/ValidationDelegate.js +2 -0
  85. package/src/nz/co/siliconst/ui5/metaui/controls/host/delegates/ValidationDelegate.js.map +1 -0
  86. package/src/nz/co/siliconst/ui5/metaui/controls/host/delegates/ValidationDelegate.ts +131 -0
  87. package/src/nz/co/siliconst/ui5/metaui/core/ConditionEngine-dbg.js +40 -15
  88. package/src/nz/co/siliconst/ui5/metaui/core/ConditionEngine-dbg.js.map +1 -1
  89. package/src/nz/co/siliconst/ui5/metaui/core/ConditionEngine.d.ts +27 -7
  90. package/src/nz/co/siliconst/ui5/metaui/core/ConditionEngine.d.ts.map +1 -1
  91. package/src/nz/co/siliconst/ui5/metaui/core/ConditionEngine.js +1 -1
  92. package/src/nz/co/siliconst/ui5/metaui/core/ConditionEngine.js.map +1 -1
  93. package/src/nz/co/siliconst/ui5/metaui/core/ConditionEngine.ts +41 -15
  94. package/src/nz/co/siliconst/ui5/metaui/core/DefaultLayoutGenerator-dbg.js +62 -0
  95. package/src/nz/co/siliconst/ui5/metaui/core/DefaultLayoutGenerator-dbg.js.map +1 -0
  96. package/src/nz/co/siliconst/ui5/metaui/core/DefaultLayoutGenerator.d.ts +26 -0
  97. package/src/nz/co/siliconst/ui5/metaui/core/DefaultLayoutGenerator.d.ts.map +1 -0
  98. package/src/nz/co/siliconst/ui5/metaui/core/DefaultLayoutGenerator.js +2 -0
  99. package/src/nz/co/siliconst/ui5/metaui/core/DefaultLayoutGenerator.js.map +1 -0
  100. package/src/nz/co/siliconst/ui5/metaui/core/DefaultLayoutGenerator.ts +62 -0
  101. package/src/nz/co/siliconst/ui5/metaui/core/Engine-dbg.js +159 -43
  102. package/src/nz/co/siliconst/ui5/metaui/core/Engine-dbg.js.map +1 -1
  103. package/src/nz/co/siliconst/ui5/metaui/core/Engine.d.ts +64 -3
  104. package/src/nz/co/siliconst/ui5/metaui/core/Engine.d.ts.map +1 -1
  105. package/src/nz/co/siliconst/ui5/metaui/core/Engine.js +1 -1
  106. package/src/nz/co/siliconst/ui5/metaui/core/Engine.js.map +1 -1
  107. package/src/nz/co/siliconst/ui5/metaui/core/Engine.ts +166 -43
  108. package/src/nz/co/siliconst/ui5/metaui/core/LayoutRegistry-dbg.js +32 -0
  109. package/src/nz/co/siliconst/ui5/metaui/core/LayoutRegistry-dbg.js.map +1 -0
  110. package/src/nz/co/siliconst/ui5/metaui/core/LayoutRegistry.d.ts +16 -0
  111. package/src/nz/co/siliconst/ui5/metaui/core/LayoutRegistry.d.ts.map +1 -0
  112. package/src/nz/co/siliconst/ui5/metaui/core/LayoutRegistry.js +2 -0
  113. package/src/nz/co/siliconst/ui5/metaui/core/LayoutRegistry.js.map +1 -0
  114. package/src/nz/co/siliconst/ui5/metaui/core/LayoutRegistry.ts +26 -0
  115. package/src/nz/co/siliconst/ui5/metaui/core/PipelineManager-dbg.js +123 -0
  116. package/src/nz/co/siliconst/ui5/metaui/core/PipelineManager-dbg.js.map +1 -0
  117. package/src/nz/co/siliconst/ui5/metaui/core/PipelineManager.d.ts +49 -0
  118. package/src/nz/co/siliconst/ui5/metaui/core/PipelineManager.d.ts.map +1 -0
  119. package/src/nz/co/siliconst/ui5/metaui/core/PipelineManager.js +2 -0
  120. package/src/nz/co/siliconst/ui5/metaui/core/PipelineManager.js.map +1 -0
  121. package/src/nz/co/siliconst/ui5/metaui/core/PipelineManager.ts +106 -0
  122. package/src/nz/co/siliconst/ui5/metaui/core/PluginRegistry-dbg.js +104 -25
  123. package/src/nz/co/siliconst/ui5/metaui/core/PluginRegistry-dbg.js.map +1 -1
  124. package/src/nz/co/siliconst/ui5/metaui/core/PluginRegistry.d.ts +21 -13
  125. package/src/nz/co/siliconst/ui5/metaui/core/PluginRegistry.d.ts.map +1 -1
  126. package/src/nz/co/siliconst/ui5/metaui/core/PluginRegistry.js +1 -1
  127. package/src/nz/co/siliconst/ui5/metaui/core/PluginRegistry.js.map +1 -1
  128. package/src/nz/co/siliconst/ui5/metaui/core/PluginRegistry.ts +110 -21
  129. package/src/nz/co/siliconst/ui5/metaui/core/Registry-dbg.js +79 -0
  130. package/src/nz/co/siliconst/ui5/metaui/core/Registry-dbg.js.map +1 -0
  131. package/src/nz/co/siliconst/ui5/metaui/core/Registry.d.ts +43 -0
  132. package/src/nz/co/siliconst/ui5/metaui/core/Registry.d.ts.map +1 -0
  133. package/src/nz/co/siliconst/ui5/metaui/core/Registry.js +2 -0
  134. package/src/nz/co/siliconst/ui5/metaui/core/Registry.js.map +1 -0
  135. package/src/nz/co/siliconst/ui5/metaui/core/Registry.ts +70 -0
  136. package/src/nz/co/siliconst/ui5/metaui/core/SchemaNormalizer-dbg.js +71 -20
  137. package/src/nz/co/siliconst/ui5/metaui/core/SchemaNormalizer-dbg.js.map +1 -1
  138. package/src/nz/co/siliconst/ui5/metaui/core/SchemaNormalizer.d.ts +1 -0
  139. package/src/nz/co/siliconst/ui5/metaui/core/SchemaNormalizer.d.ts.map +1 -1
  140. package/src/nz/co/siliconst/ui5/metaui/core/SchemaNormalizer.js +1 -1
  141. package/src/nz/co/siliconst/ui5/metaui/core/SchemaNormalizer.js.map +1 -1
  142. package/src/nz/co/siliconst/ui5/metaui/core/SchemaNormalizer.ts +71 -20
  143. package/src/nz/co/siliconst/ui5/metaui/core/SchemaValidator-dbg.js +54 -0
  144. package/src/nz/co/siliconst/ui5/metaui/core/SchemaValidator-dbg.js.map +1 -0
  145. package/src/nz/co/siliconst/ui5/metaui/core/SchemaValidator.d.ts +11 -0
  146. package/src/nz/co/siliconst/ui5/metaui/core/SchemaValidator.d.ts.map +1 -0
  147. package/src/nz/co/siliconst/ui5/metaui/core/SchemaValidator.js +2 -0
  148. package/src/nz/co/siliconst/ui5/metaui/core/SchemaValidator.js.map +1 -0
  149. package/src/nz/co/siliconst/ui5/metaui/core/SchemaValidator.ts +53 -0
  150. package/src/nz/co/siliconst/ui5/metaui/core/StateManager-dbg.js +88 -2
  151. package/src/nz/co/siliconst/ui5/metaui/core/StateManager-dbg.js.map +1 -1
  152. package/src/nz/co/siliconst/ui5/metaui/core/StateManager.d.ts +15 -1
  153. package/src/nz/co/siliconst/ui5/metaui/core/StateManager.d.ts.map +1 -1
  154. package/src/nz/co/siliconst/ui5/metaui/core/StateManager.js +1 -1
  155. package/src/nz/co/siliconst/ui5/metaui/core/StateManager.js.map +1 -1
  156. package/src/nz/co/siliconst/ui5/metaui/core/StateManager.ts +103 -1
  157. package/src/nz/co/siliconst/ui5/metaui/interfaces/ILayoutManager-dbg.js.map +1 -1
  158. package/src/nz/co/siliconst/ui5/metaui/interfaces/ILayoutManager.d.ts +7 -8
  159. package/src/nz/co/siliconst/ui5/metaui/interfaces/ILayoutManager.d.ts.map +1 -1
  160. package/src/nz/co/siliconst/ui5/metaui/interfaces/ILayoutManager.ts +7 -7
  161. package/src/nz/co/siliconst/ui5/metaui/interfaces/IPipeline-dbg.js +2 -0
  162. package/src/nz/co/siliconst/ui5/metaui/interfaces/IPipeline-dbg.js.map +1 -0
  163. package/src/nz/co/siliconst/ui5/metaui/interfaces/IPipeline.d.ts +38 -0
  164. package/src/nz/co/siliconst/ui5/metaui/interfaces/IPipeline.d.ts.map +1 -0
  165. package/src/nz/co/siliconst/ui5/metaui/interfaces/IPipeline.js +2 -0
  166. package/src/nz/co/siliconst/ui5/metaui/interfaces/IPipeline.js.map +1 -0
  167. package/src/nz/co/siliconst/ui5/metaui/interfaces/IPipeline.ts +39 -0
  168. package/src/nz/co/siliconst/ui5/metaui/interfaces/IPlugin-dbg.js.map +1 -1
  169. package/src/nz/co/siliconst/ui5/metaui/interfaces/IPlugin.d.ts +38 -2
  170. package/src/nz/co/siliconst/ui5/metaui/interfaces/IPlugin.d.ts.map +1 -1
  171. package/src/nz/co/siliconst/ui5/metaui/interfaces/IPlugin.ts +43 -2
  172. package/src/nz/co/siliconst/ui5/metaui/interfaces/ISchema-dbg.js.map +1 -1
  173. package/src/nz/co/siliconst/ui5/metaui/interfaces/ISchema.d.ts +32 -3
  174. package/src/nz/co/siliconst/ui5/metaui/interfaces/ISchema.d.ts.map +1 -1
  175. package/src/nz/co/siliconst/ui5/metaui/interfaces/ISchema.ts +35 -3
  176. package/src/nz/co/siliconst/ui5/metaui/layouts/CompactLayout-dbg.js +144 -0
  177. package/src/nz/co/siliconst/ui5/metaui/layouts/CompactLayout-dbg.js.map +1 -0
  178. package/src/nz/co/siliconst/ui5/metaui/layouts/CompactLayout.d.ts +27 -0
  179. package/src/nz/co/siliconst/ui5/metaui/layouts/CompactLayout.d.ts.map +1 -0
  180. package/src/nz/co/siliconst/ui5/metaui/layouts/CompactLayout.js +2 -0
  181. package/src/nz/co/siliconst/ui5/metaui/layouts/CompactLayout.js.map +1 -0
  182. package/src/nz/co/siliconst/ui5/metaui/layouts/CompactLayout.ts +139 -0
  183. package/src/nz/co/siliconst/ui5/metaui/layouts/FormLayout-dbg.js +132 -61
  184. package/src/nz/co/siliconst/ui5/metaui/layouts/FormLayout-dbg.js.map +1 -1
  185. package/src/nz/co/siliconst/ui5/metaui/layouts/FormLayout.d.ts +19 -12
  186. package/src/nz/co/siliconst/ui5/metaui/layouts/FormLayout.d.ts.map +1 -1
  187. package/src/nz/co/siliconst/ui5/metaui/layouts/FormLayout.js +1 -1
  188. package/src/nz/co/siliconst/ui5/metaui/layouts/FormLayout.js.map +1 -1
  189. package/src/nz/co/siliconst/ui5/metaui/layouts/FormLayout.ts +135 -71
  190. package/src/nz/co/siliconst/ui5/metaui/layouts/TableLayout-dbg.js +118 -51
  191. package/src/nz/co/siliconst/ui5/metaui/layouts/TableLayout-dbg.js.map +1 -1
  192. package/src/nz/co/siliconst/ui5/metaui/layouts/TableLayout.d.ts +21 -8
  193. package/src/nz/co/siliconst/ui5/metaui/layouts/TableLayout.d.ts.map +1 -1
  194. package/src/nz/co/siliconst/ui5/metaui/layouts/TableLayout.js +1 -1
  195. package/src/nz/co/siliconst/ui5/metaui/layouts/TableLayout.js.map +1 -1
  196. package/src/nz/co/siliconst/ui5/metaui/layouts/TableLayout.ts +134 -65
  197. package/src/nz/co/siliconst/ui5/metaui/layouts/WizardLayout-dbg.js +125 -0
  198. package/src/nz/co/siliconst/ui5/metaui/layouts/WizardLayout-dbg.js.map +1 -0
  199. package/src/nz/co/siliconst/ui5/metaui/layouts/WizardLayout.d.ts +28 -0
  200. package/src/nz/co/siliconst/ui5/metaui/layouts/WizardLayout.d.ts.map +1 -0
  201. package/src/nz/co/siliconst/ui5/metaui/layouts/WizardLayout.js +2 -0
  202. package/src/nz/co/siliconst/ui5/metaui/layouts/WizardLayout.js.map +1 -0
  203. package/src/nz/co/siliconst/ui5/metaui/layouts/WizardLayout.ts +127 -0
  204. package/src/nz/co/siliconst/ui5/metaui/library-dbg.js +17 -12
  205. package/src/nz/co/siliconst/ui5/metaui/library-dbg.js.map +1 -1
  206. package/src/nz/co/siliconst/ui5/metaui/library-preload.js +72 -25
  207. package/src/nz/co/siliconst/ui5/metaui/library-preload.js.map +1 -1
  208. package/src/nz/co/siliconst/ui5/metaui/library.d.ts +1 -0
  209. package/src/nz/co/siliconst/ui5/metaui/library.d.ts.map +1 -1
  210. package/src/nz/co/siliconst/ui5/metaui/library.js +1 -1
  211. package/src/nz/co/siliconst/ui5/metaui/library.js.map +1 -1
  212. package/src/nz/co/siliconst/ui5/metaui/library.ts +25 -12
  213. package/src/nz/co/siliconst/ui5/metaui/manifest.json +8 -1
  214. package/src/nz/co/siliconst/ui5/metaui/plugins/actions/ClearFormActionPlugin-dbg.js +58 -0
  215. package/src/nz/co/siliconst/ui5/metaui/plugins/actions/ClearFormActionPlugin-dbg.js.map +1 -0
  216. package/src/nz/co/siliconst/ui5/metaui/plugins/actions/ClearFormActionPlugin.d.ts +22 -0
  217. package/src/nz/co/siliconst/ui5/metaui/plugins/actions/ClearFormActionPlugin.d.ts.map +1 -0
  218. package/src/nz/co/siliconst/ui5/metaui/plugins/actions/ClearFormActionPlugin.js +2 -0
  219. package/src/nz/co/siliconst/ui5/metaui/plugins/actions/ClearFormActionPlugin.js.map +1 -0
  220. package/src/nz/co/siliconst/ui5/metaui/plugins/actions/ClearFormActionPlugin.ts +57 -0
  221. package/src/nz/co/siliconst/ui5/metaui/plugins/actions/SubmitFormActionPlugin-dbg.js +55 -0
  222. package/src/nz/co/siliconst/ui5/metaui/plugins/actions/SubmitFormActionPlugin-dbg.js.map +1 -0
  223. package/src/nz/co/siliconst/ui5/metaui/plugins/actions/SubmitFormActionPlugin.d.ts +21 -0
  224. package/src/nz/co/siliconst/ui5/metaui/plugins/actions/SubmitFormActionPlugin.d.ts.map +1 -0
  225. package/src/nz/co/siliconst/ui5/metaui/plugins/actions/SubmitFormActionPlugin.js +2 -0
  226. package/src/nz/co/siliconst/ui5/metaui/plugins/actions/SubmitFormActionPlugin.js.map +1 -0
  227. package/src/nz/co/siliconst/ui5/metaui/plugins/actions/SubmitFormActionPlugin.ts +54 -0
  228. package/src/nz/co/siliconst/ui5/metaui/plugins/actions/UrlNavigationActionPlugin-dbg.js +46 -0
  229. package/src/nz/co/siliconst/ui5/metaui/plugins/actions/UrlNavigationActionPlugin-dbg.js.map +1 -0
  230. package/src/nz/co/siliconst/ui5/metaui/plugins/actions/UrlNavigationActionPlugin.d.ts +23 -0
  231. package/src/nz/co/siliconst/ui5/metaui/plugins/actions/UrlNavigationActionPlugin.d.ts.map +1 -0
  232. package/src/nz/co/siliconst/ui5/metaui/plugins/actions/UrlNavigationActionPlugin.js +2 -0
  233. package/src/nz/co/siliconst/ui5/metaui/plugins/actions/UrlNavigationActionPlugin.js.map +1 -0
  234. package/src/nz/co/siliconst/ui5/metaui/plugins/actions/UrlNavigationActionPlugin.ts +45 -0
  235. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/ArrayPlugin-dbg.js +74 -0
  236. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/ArrayPlugin-dbg.js.map +1 -0
  237. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/ArrayPlugin.d.ts +15 -0
  238. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/ArrayPlugin.d.ts.map +1 -0
  239. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/ArrayPlugin.js +2 -0
  240. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/ArrayPlugin.js.map +1 -0
  241. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/ArrayPlugin.ts +80 -0
  242. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/BarcodeScannerPlugin-dbg.js +75 -0
  243. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/BarcodeScannerPlugin-dbg.js.map +1 -0
  244. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/BarcodeScannerPlugin.d.ts +12 -0
  245. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/BarcodeScannerPlugin.d.ts.map +1 -0
  246. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/BarcodeScannerPlugin.js +2 -0
  247. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/BarcodeScannerPlugin.js.map +1 -0
  248. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/BarcodeScannerPlugin.ts +83 -0
  249. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/BasePlugin-dbg.js +174 -0
  250. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/BasePlugin-dbg.js.map +1 -0
  251. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/BasePlugin.d.ts +78 -0
  252. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/BasePlugin.d.ts.map +1 -0
  253. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/BasePlugin.js +2 -0
  254. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/BasePlugin.js.map +1 -0
  255. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/BasePlugin.ts +165 -0
  256. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/BooleanPlugin-dbg.js +79 -0
  257. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/BooleanPlugin-dbg.js.map +1 -0
  258. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/BooleanPlugin.d.ts +36 -0
  259. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/BooleanPlugin.d.ts.map +1 -0
  260. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/BooleanPlugin.js +2 -0
  261. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/BooleanPlugin.js.map +1 -0
  262. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/BooleanPlugin.ts +77 -0
  263. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/CameraPlugin-dbg.js +60 -0
  264. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/CameraPlugin-dbg.js.map +1 -0
  265. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/CameraPlugin.d.ts +11 -0
  266. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/CameraPlugin.d.ts.map +1 -0
  267. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/CameraPlugin.js +2 -0
  268. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/CameraPlugin.js.map +1 -0
  269. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/CameraPlugin.ts +56 -0
  270. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/CodeEditorPlugin-dbg.js +122 -0
  271. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/CodeEditorPlugin-dbg.js.map +1 -0
  272. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/CodeEditorPlugin.d.ts +24 -0
  273. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/CodeEditorPlugin.d.ts.map +1 -0
  274. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/CodeEditorPlugin.js +2 -0
  275. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/CodeEditorPlugin.js.map +1 -0
  276. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/CodeEditorPlugin.ts +125 -0
  277. package/src/nz/co/siliconst/ui5/metaui/plugins/{DatePlugin-dbg.js → controls/DatePlugin-dbg.js} +29 -20
  278. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/DatePlugin-dbg.js.map +1 -0
  279. package/src/nz/co/siliconst/ui5/metaui/plugins/{DatePlugin.d.ts → controls/DatePlugin.d.ts} +4 -4
  280. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/DatePlugin.d.ts.map +1 -0
  281. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/DatePlugin.js +2 -0
  282. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/DatePlugin.js.map +1 -0
  283. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/DatePlugin.ts +74 -0
  284. package/src/nz/co/siliconst/ui5/metaui/plugins/{DateTimePlugin-dbg.js → controls/DateTimePlugin-dbg.js} +30 -20
  285. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/DateTimePlugin-dbg.js.map +1 -0
  286. package/src/nz/co/siliconst/ui5/metaui/plugins/{DateTimePlugin.d.ts → controls/DateTimePlugin.d.ts} +4 -4
  287. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/DateTimePlugin.d.ts.map +1 -0
  288. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/DateTimePlugin.js +2 -0
  289. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/DateTimePlugin.js.map +1 -0
  290. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/DateTimePlugin.ts +75 -0
  291. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/DropdownPlugin-dbg.js +109 -0
  292. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/DropdownPlugin-dbg.js.map +1 -0
  293. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/DropdownPlugin.d.ts +37 -0
  294. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/DropdownPlugin.d.ts.map +1 -0
  295. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/DropdownPlugin.js +2 -0
  296. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/DropdownPlugin.js.map +1 -0
  297. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/DropdownPlugin.ts +105 -0
  298. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/FileUploaderPlugin-dbg.js +65 -0
  299. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/FileUploaderPlugin-dbg.js.map +1 -0
  300. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/FileUploaderPlugin.d.ts +21 -0
  301. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/FileUploaderPlugin.d.ts.map +1 -0
  302. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/FileUploaderPlugin.js +2 -0
  303. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/FileUploaderPlugin.js.map +1 -0
  304. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/FileUploaderPlugin.ts +64 -0
  305. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/GeolocationPlugin-dbg.js +59 -0
  306. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/GeolocationPlugin-dbg.js.map +1 -0
  307. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/GeolocationPlugin.d.ts +11 -0
  308. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/GeolocationPlugin.d.ts.map +1 -0
  309. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/GeolocationPlugin.js +2 -0
  310. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/GeolocationPlugin.js.map +1 -0
  311. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/GeolocationPlugin.ts +56 -0
  312. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/MessageStripPlugin-dbg.js +45 -0
  313. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/MessageStripPlugin-dbg.js.map +1 -0
  314. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/MessageStripPlugin.d.ts +22 -0
  315. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/MessageStripPlugin.d.ts.map +1 -0
  316. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/MessageStripPlugin.js +2 -0
  317. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/MessageStripPlugin.js.map +1 -0
  318. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/MessageStripPlugin.ts +42 -0
  319. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/MultiSelectPlugin-dbg.js +74 -0
  320. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/MultiSelectPlugin-dbg.js.map +1 -0
  321. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/MultiSelectPlugin.d.ts +22 -0
  322. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/MultiSelectPlugin.d.ts.map +1 -0
  323. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/MultiSelectPlugin.js +2 -0
  324. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/MultiSelectPlugin.js.map +1 -0
  325. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/MultiSelectPlugin.ts +73 -0
  326. package/src/nz/co/siliconst/ui5/metaui/plugins/{NumberPlugin-dbg.js → controls/NumberPlugin-dbg.js} +21 -16
  327. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/NumberPlugin-dbg.js.map +1 -0
  328. package/src/nz/co/siliconst/ui5/metaui/plugins/{NumberPlugin.d.ts → controls/NumberPlugin.d.ts} +4 -4
  329. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/NumberPlugin.d.ts.map +1 -0
  330. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/NumberPlugin.js +2 -0
  331. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/NumberPlugin.js.map +1 -0
  332. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/NumberPlugin.ts +62 -0
  333. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/ObjectPlugin-dbg.js +74 -0
  334. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/ObjectPlugin-dbg.js.map +1 -0
  335. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/ObjectPlugin.d.ts +17 -0
  336. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/ObjectPlugin.d.ts.map +1 -0
  337. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/ObjectPlugin.js +2 -0
  338. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/ObjectPlugin.js.map +1 -0
  339. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/ObjectPlugin.ts +81 -0
  340. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/RatingIndicatorPlugin-dbg.js +61 -0
  341. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/RatingIndicatorPlugin-dbg.js.map +1 -0
  342. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/RatingIndicatorPlugin.d.ts +21 -0
  343. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/RatingIndicatorPlugin.d.ts.map +1 -0
  344. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/RatingIndicatorPlugin.js +2 -0
  345. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/RatingIndicatorPlugin.js.map +1 -0
  346. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/RatingIndicatorPlugin.ts +62 -0
  347. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/RichTextPlugin-dbg.js +64 -0
  348. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/RichTextPlugin-dbg.js.map +1 -0
  349. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/RichTextPlugin.d.ts +16 -0
  350. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/RichTextPlugin.d.ts.map +1 -0
  351. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/RichTextPlugin.js +2 -0
  352. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/RichTextPlugin.js.map +1 -0
  353. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/RichTextPlugin.ts +67 -0
  354. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/SignaturePlugin-dbg.js +58 -0
  355. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/SignaturePlugin-dbg.js.map +1 -0
  356. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/SignaturePlugin.d.ts +11 -0
  357. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/SignaturePlugin.d.ts.map +1 -0
  358. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/SignaturePlugin.js +2 -0
  359. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/SignaturePlugin.js.map +1 -0
  360. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/SignaturePlugin.ts +55 -0
  361. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/SliderPlugin-dbg.js +64 -0
  362. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/SliderPlugin-dbg.js.map +1 -0
  363. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/SliderPlugin.d.ts +21 -0
  364. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/SliderPlugin.d.ts.map +1 -0
  365. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/SliderPlugin.js +2 -0
  366. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/SliderPlugin.js.map +1 -0
  367. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/SliderPlugin.ts +65 -0
  368. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/StringPlugin-dbg.js +87 -0
  369. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/StringPlugin-dbg.js.map +1 -0
  370. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/StringPlugin.d.ts +37 -0
  371. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/StringPlugin.d.ts.map +1 -0
  372. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/StringPlugin.js +2 -0
  373. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/StringPlugin.js.map +1 -0
  374. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/StringPlugin.ts +85 -0
  375. package/src/nz/co/siliconst/ui5/metaui/plugins/{SwitchPlugin-dbg.js → controls/SwitchPlugin-dbg.js} +24 -6
  376. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/SwitchPlugin-dbg.js.map +1 -0
  377. package/src/nz/co/siliconst/ui5/metaui/plugins/{SwitchPlugin.d.ts → controls/SwitchPlugin.d.ts} +4 -4
  378. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/SwitchPlugin.d.ts.map +1 -0
  379. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/SwitchPlugin.js +2 -0
  380. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/SwitchPlugin.js.map +1 -0
  381. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/SwitchPlugin.ts +62 -0
  382. package/src/nz/co/siliconst/ui5/metaui/plugins/{TextAreaPlugin-dbg.js → controls/TextAreaPlugin-dbg.js} +20 -14
  383. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/TextAreaPlugin-dbg.js.map +1 -0
  384. package/src/nz/co/siliconst/ui5/metaui/plugins/{TextAreaPlugin.d.ts → controls/TextAreaPlugin.d.ts} +4 -4
  385. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/TextAreaPlugin.d.ts.map +1 -0
  386. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/TextAreaPlugin.js +2 -0
  387. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/TextAreaPlugin.js.map +1 -0
  388. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/TextAreaPlugin.ts +63 -0
  389. package/src/nz/co/siliconst/ui5/metaui/plugins/{TimePlugin-dbg.js → controls/TimePlugin-dbg.js} +30 -25
  390. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/TimePlugin-dbg.js.map +1 -0
  391. package/src/nz/co/siliconst/ui5/metaui/plugins/{TimePlugin.d.ts → controls/TimePlugin.d.ts} +4 -4
  392. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/TimePlugin.d.ts.map +1 -0
  393. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/TimePlugin.js +2 -0
  394. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/TimePlugin.js.map +1 -0
  395. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/TimePlugin.ts +76 -0
  396. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/VoiceInputPlugin-dbg.js +62 -0
  397. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/VoiceInputPlugin-dbg.js.map +1 -0
  398. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/VoiceInputPlugin.d.ts +11 -0
  399. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/VoiceInputPlugin.d.ts.map +1 -0
  400. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/VoiceInputPlugin.js +2 -0
  401. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/VoiceInputPlugin.js.map +1 -0
  402. package/src/nz/co/siliconst/ui5/metaui/plugins/controls/VoiceInputPlugin.ts +59 -0
  403. package/src/nz/co/siliconst/ui5/metaui/plugins/datasources/LiveSearchPlugin-dbg.js +94 -0
  404. package/src/nz/co/siliconst/ui5/metaui/plugins/datasources/LiveSearchPlugin-dbg.js.map +1 -0
  405. package/src/nz/co/siliconst/ui5/metaui/plugins/datasources/LiveSearchPlugin.d.ts +29 -0
  406. package/src/nz/co/siliconst/ui5/metaui/plugins/datasources/LiveSearchPlugin.d.ts.map +1 -0
  407. package/src/nz/co/siliconst/ui5/metaui/plugins/datasources/LiveSearchPlugin.js +2 -0
  408. package/src/nz/co/siliconst/ui5/metaui/plugins/datasources/LiveSearchPlugin.js.map +1 -0
  409. package/src/nz/co/siliconst/ui5/metaui/plugins/datasources/LiveSearchPlugin.ts +102 -0
  410. package/src/nz/co/siliconst/ui5/metaui/plugins/datasources/ODataListBindingPlugin-dbg.js +60 -0
  411. package/src/nz/co/siliconst/ui5/metaui/plugins/datasources/ODataListBindingPlugin-dbg.js.map +1 -0
  412. package/src/nz/co/siliconst/ui5/metaui/plugins/datasources/ODataListBindingPlugin.d.ts +22 -0
  413. package/src/nz/co/siliconst/ui5/metaui/plugins/datasources/ODataListBindingPlugin.d.ts.map +1 -0
  414. package/src/nz/co/siliconst/ui5/metaui/plugins/datasources/ODataListBindingPlugin.js +2 -0
  415. package/src/nz/co/siliconst/ui5/metaui/plugins/datasources/ODataListBindingPlugin.js.map +1 -0
  416. package/src/nz/co/siliconst/ui5/metaui/plugins/datasources/ODataListBindingPlugin.ts +57 -0
  417. package/src/nz/co/siliconst/ui5/metaui/plugins/datasources/RemoteDropdownPlugin-dbg.js +106 -0
  418. package/src/nz/co/siliconst/ui5/metaui/plugins/datasources/RemoteDropdownPlugin-dbg.js.map +1 -0
  419. package/src/nz/co/siliconst/ui5/metaui/plugins/datasources/RemoteDropdownPlugin.d.ts +22 -0
  420. package/src/nz/co/siliconst/ui5/metaui/plugins/datasources/RemoteDropdownPlugin.d.ts.map +1 -0
  421. package/src/nz/co/siliconst/ui5/metaui/plugins/datasources/RemoteDropdownPlugin.js +2 -0
  422. package/src/nz/co/siliconst/ui5/metaui/plugins/datasources/RemoteDropdownPlugin.js.map +1 -0
  423. package/src/nz/co/siliconst/ui5/metaui/plugins/datasources/RemoteDropdownPlugin.ts +101 -0
  424. package/src/nz/co/siliconst/ui5/metaui/plugins/datasources/RemoteValueHelpPlugin-dbg.js +77 -0
  425. package/src/nz/co/siliconst/ui5/metaui/plugins/datasources/RemoteValueHelpPlugin-dbg.js.map +1 -0
  426. package/src/nz/co/siliconst/ui5/metaui/plugins/datasources/RemoteValueHelpPlugin.d.ts +25 -0
  427. package/src/nz/co/siliconst/ui5/metaui/plugins/datasources/RemoteValueHelpPlugin.d.ts.map +1 -0
  428. package/src/nz/co/siliconst/ui5/metaui/plugins/datasources/RemoteValueHelpPlugin.js +2 -0
  429. package/src/nz/co/siliconst/ui5/metaui/plugins/datasources/RemoteValueHelpPlugin.js.map +1 -0
  430. package/src/nz/co/siliconst/ui5/metaui/plugins/datasources/RemoteValueHelpPlugin.ts +86 -0
  431. package/src/nz/co/siliconst/ui5/metaui/plugins/formatters/CurrencyFormatterPlugin-dbg.js +36 -0
  432. package/src/nz/co/siliconst/ui5/metaui/plugins/formatters/CurrencyFormatterPlugin-dbg.js.map +1 -0
  433. package/src/nz/co/siliconst/ui5/metaui/plugins/formatters/CurrencyFormatterPlugin.d.ts +25 -0
  434. package/src/nz/co/siliconst/ui5/metaui/plugins/formatters/CurrencyFormatterPlugin.d.ts.map +1 -0
  435. package/src/nz/co/siliconst/ui5/metaui/plugins/formatters/CurrencyFormatterPlugin.js +2 -0
  436. package/src/nz/co/siliconst/ui5/metaui/plugins/formatters/CurrencyFormatterPlugin.js.map +1 -0
  437. package/src/nz/co/siliconst/ui5/metaui/plugins/formatters/CurrencyFormatterPlugin.ts +36 -0
  438. package/src/nz/co/siliconst/ui5/metaui/plugins/formatters/DateFormatterPlugin-dbg.js +32 -0
  439. package/src/nz/co/siliconst/ui5/metaui/plugins/formatters/DateFormatterPlugin-dbg.js.map +1 -0
  440. package/src/nz/co/siliconst/ui5/metaui/plugins/formatters/DateFormatterPlugin.d.ts +19 -0
  441. package/src/nz/co/siliconst/ui5/metaui/plugins/formatters/DateFormatterPlugin.d.ts.map +1 -0
  442. package/src/nz/co/siliconst/ui5/metaui/plugins/formatters/DateFormatterPlugin.js +2 -0
  443. package/src/nz/co/siliconst/ui5/metaui/plugins/formatters/DateFormatterPlugin.js.map +1 -0
  444. package/src/nz/co/siliconst/ui5/metaui/plugins/formatters/DateFormatterPlugin.ts +31 -0
  445. package/src/nz/co/siliconst/ui5/metaui/plugins/formatters/PhoneFormatterPlugin-dbg.js +32 -0
  446. package/src/nz/co/siliconst/ui5/metaui/plugins/formatters/PhoneFormatterPlugin-dbg.js.map +1 -0
  447. package/src/nz/co/siliconst/ui5/metaui/plugins/formatters/PhoneFormatterPlugin.d.ts +17 -0
  448. package/src/nz/co/siliconst/ui5/metaui/plugins/formatters/PhoneFormatterPlugin.d.ts.map +1 -0
  449. package/src/nz/co/siliconst/ui5/metaui/plugins/formatters/PhoneFormatterPlugin.js +2 -0
  450. package/src/nz/co/siliconst/ui5/metaui/plugins/formatters/PhoneFormatterPlugin.js.map +1 -0
  451. package/src/nz/co/siliconst/ui5/metaui/plugins/formatters/PhoneFormatterPlugin.ts +27 -0
  452. package/src/nz/co/siliconst/ui5/metaui/plugins/formatters/TextCaseFormatterPlugin-dbg.js +31 -0
  453. package/src/nz/co/siliconst/ui5/metaui/plugins/formatters/TextCaseFormatterPlugin-dbg.js.map +1 -0
  454. package/src/nz/co/siliconst/ui5/metaui/plugins/formatters/TextCaseFormatterPlugin.d.ts +18 -0
  455. package/src/nz/co/siliconst/ui5/metaui/plugins/formatters/TextCaseFormatterPlugin.d.ts.map +1 -0
  456. package/src/nz/co/siliconst/ui5/metaui/plugins/formatters/TextCaseFormatterPlugin.js +2 -0
  457. package/src/nz/co/siliconst/ui5/metaui/plugins/formatters/TextCaseFormatterPlugin.js.map +1 -0
  458. package/src/nz/co/siliconst/ui5/metaui/plugins/formatters/TextCaseFormatterPlugin.ts +23 -0
  459. package/src/nz/co/siliconst/ui5/metaui/plugins/validators/EmailValidatorPlugin-dbg.js +45 -0
  460. package/src/nz/co/siliconst/ui5/metaui/plugins/validators/EmailValidatorPlugin-dbg.js.map +1 -0
  461. package/src/nz/co/siliconst/ui5/metaui/plugins/validators/EmailValidatorPlugin.d.ts +24 -0
  462. package/src/nz/co/siliconst/ui5/metaui/plugins/validators/EmailValidatorPlugin.d.ts.map +1 -0
  463. package/src/nz/co/siliconst/ui5/metaui/plugins/validators/EmailValidatorPlugin.js +2 -0
  464. package/src/nz/co/siliconst/ui5/metaui/plugins/validators/EmailValidatorPlugin.js.map +1 -0
  465. package/src/nz/co/siliconst/ui5/metaui/plugins/validators/EmailValidatorPlugin.ts +30 -0
  466. package/src/nz/co/siliconst/ui5/metaui/plugins/validators/IbanValidatorPlugin-dbg.js +42 -0
  467. package/src/nz/co/siliconst/ui5/metaui/plugins/validators/IbanValidatorPlugin-dbg.js.map +1 -0
  468. package/src/nz/co/siliconst/ui5/metaui/plugins/validators/IbanValidatorPlugin.d.ts +18 -0
  469. package/src/nz/co/siliconst/ui5/metaui/plugins/validators/IbanValidatorPlugin.d.ts.map +1 -0
  470. package/src/nz/co/siliconst/ui5/metaui/plugins/validators/IbanValidatorPlugin.js +2 -0
  471. package/src/nz/co/siliconst/ui5/metaui/plugins/validators/IbanValidatorPlugin.js.map +1 -0
  472. package/src/nz/co/siliconst/ui5/metaui/plugins/validators/IbanValidatorPlugin.ts +29 -0
  473. package/src/nz/co/siliconst/ui5/metaui/plugins/validators/MinLengthValidatorPlugin-dbg.js +41 -0
  474. package/src/nz/co/siliconst/ui5/metaui/plugins/validators/MinLengthValidatorPlugin-dbg.js.map +1 -0
  475. package/src/nz/co/siliconst/ui5/metaui/plugins/validators/MinLengthValidatorPlugin.d.ts +17 -0
  476. package/src/nz/co/siliconst/ui5/metaui/plugins/validators/MinLengthValidatorPlugin.d.ts.map +1 -0
  477. package/src/nz/co/siliconst/ui5/metaui/plugins/validators/MinLengthValidatorPlugin.js +2 -0
  478. package/src/nz/co/siliconst/ui5/metaui/plugins/validators/MinLengthValidatorPlugin.js.map +1 -0
  479. package/src/nz/co/siliconst/ui5/metaui/plugins/validators/MinLengthValidatorPlugin.ts +25 -0
  480. package/src/nz/co/siliconst/ui5/metaui/plugins/validators/PatternValidatorPlugin-dbg.js +51 -0
  481. package/src/nz/co/siliconst/ui5/metaui/plugins/validators/PatternValidatorPlugin-dbg.js.map +1 -0
  482. package/src/nz/co/siliconst/ui5/metaui/plugins/validators/PatternValidatorPlugin.d.ts +17 -0
  483. package/src/nz/co/siliconst/ui5/metaui/plugins/validators/PatternValidatorPlugin.d.ts.map +1 -0
  484. package/src/nz/co/siliconst/ui5/metaui/plugins/validators/PatternValidatorPlugin.js +2 -0
  485. package/src/nz/co/siliconst/ui5/metaui/plugins/validators/PatternValidatorPlugin.js.map +1 -0
  486. package/src/nz/co/siliconst/ui5/metaui/plugins/validators/PatternValidatorPlugin.ts +33 -0
  487. package/src/nz/co/siliconst/ui5/metaui/plugins/validators/RangeValidatorPlugin-dbg.js +48 -0
  488. package/src/nz/co/siliconst/ui5/metaui/plugins/validators/RangeValidatorPlugin-dbg.js.map +1 -0
  489. package/src/nz/co/siliconst/ui5/metaui/plugins/validators/RangeValidatorPlugin.d.ts +17 -0
  490. package/src/nz/co/siliconst/ui5/metaui/plugins/validators/RangeValidatorPlugin.d.ts.map +1 -0
  491. package/src/nz/co/siliconst/ui5/metaui/plugins/validators/RangeValidatorPlugin.js +2 -0
  492. package/src/nz/co/siliconst/ui5/metaui/plugins/validators/RangeValidatorPlugin.js.map +1 -0
  493. package/src/nz/co/siliconst/ui5/metaui/plugins/validators/RangeValidatorPlugin.ts +32 -0
  494. package/src/nz/co/siliconst/ui5/metaui/plugins/validators/UrlValidatorPlugin-dbg.js +46 -0
  495. package/src/nz/co/siliconst/ui5/metaui/plugins/validators/UrlValidatorPlugin-dbg.js.map +1 -0
  496. package/src/nz/co/siliconst/ui5/metaui/plugins/validators/UrlValidatorPlugin.d.ts +17 -0
  497. package/src/nz/co/siliconst/ui5/metaui/plugins/validators/UrlValidatorPlugin.d.ts.map +1 -0
  498. package/src/nz/co/siliconst/ui5/metaui/plugins/validators/UrlValidatorPlugin.js +2 -0
  499. package/src/nz/co/siliconst/ui5/metaui/plugins/validators/UrlValidatorPlugin.js.map +1 -0
  500. package/src/nz/co/siliconst/ui5/metaui/plugins/validators/UrlValidatorPlugin.ts +29 -0
  501. package/src/nz/co/siliconst/ui5/metaui/utils/Logger-dbg.js +83 -0
  502. package/src/nz/co/siliconst/ui5/metaui/utils/Logger-dbg.js.map +1 -0
  503. package/src/nz/co/siliconst/ui5/metaui/utils/Logger.d.ts +29 -0
  504. package/src/nz/co/siliconst/ui5/metaui/utils/Logger.d.ts.map +1 -0
  505. package/src/nz/co/siliconst/ui5/metaui/utils/Logger.js +2 -0
  506. package/src/nz/co/siliconst/ui5/metaui/utils/Logger.js.map +1 -0
  507. package/src/nz/co/siliconst/ui5/metaui/utils/Logger.ts +75 -0
  508. package/src/nz/co/siliconst/ui5/metaui/controls/GeneratorHost-dbg.js +0 -300
  509. package/src/nz/co/siliconst/ui5/metaui/controls/GeneratorHost-dbg.js.map +0 -1
  510. package/src/nz/co/siliconst/ui5/metaui/controls/GeneratorHost.d.ts +0 -130
  511. package/src/nz/co/siliconst/ui5/metaui/controls/GeneratorHost.d.ts.map +0 -1
  512. package/src/nz/co/siliconst/ui5/metaui/controls/GeneratorHost.js +0 -2
  513. package/src/nz/co/siliconst/ui5/metaui/controls/GeneratorHost.js.map +0 -1
  514. package/src/nz/co/siliconst/ui5/metaui/controls/GeneratorHost.ts +0 -292
  515. package/src/nz/co/siliconst/ui5/metaui/core/EventBus-dbg.js +0 -66
  516. package/src/nz/co/siliconst/ui5/metaui/core/EventBus-dbg.js.map +0 -1
  517. package/src/nz/co/siliconst/ui5/metaui/core/EventBus.d.ts +0 -40
  518. package/src/nz/co/siliconst/ui5/metaui/core/EventBus.d.ts.map +0 -1
  519. package/src/nz/co/siliconst/ui5/metaui/core/EventBus.js +0 -2
  520. package/src/nz/co/siliconst/ui5/metaui/core/EventBus.js.map +0 -1
  521. package/src/nz/co/siliconst/ui5/metaui/core/EventBus.ts +0 -60
  522. package/src/nz/co/siliconst/ui5/metaui/interfaces/IEventBus-dbg.js +0 -2
  523. package/src/nz/co/siliconst/ui5/metaui/interfaces/IEventBus-dbg.js.map +0 -1
  524. package/src/nz/co/siliconst/ui5/metaui/interfaces/IEventBus.d.ts +0 -29
  525. package/src/nz/co/siliconst/ui5/metaui/interfaces/IEventBus.d.ts.map +0 -1
  526. package/src/nz/co/siliconst/ui5/metaui/interfaces/IEventBus.js +0 -2
  527. package/src/nz/co/siliconst/ui5/metaui/interfaces/IEventBus.js.map +0 -1
  528. package/src/nz/co/siliconst/ui5/metaui/interfaces/IEventBus.ts +0 -29
  529. package/src/nz/co/siliconst/ui5/metaui/layouts/BaseLayout-dbg.js +0 -24
  530. package/src/nz/co/siliconst/ui5/metaui/layouts/BaseLayout-dbg.js.map +0 -1
  531. package/src/nz/co/siliconst/ui5/metaui/layouts/BaseLayout.d.ts +0 -15
  532. package/src/nz/co/siliconst/ui5/metaui/layouts/BaseLayout.d.ts.map +0 -1
  533. package/src/nz/co/siliconst/ui5/metaui/layouts/BaseLayout.js +0 -2
  534. package/src/nz/co/siliconst/ui5/metaui/layouts/BaseLayout.js.map +0 -1
  535. package/src/nz/co/siliconst/ui5/metaui/layouts/BaseLayout.ts +0 -22
  536. package/src/nz/co/siliconst/ui5/metaui/plugins/ArrayPlugin-dbg.js +0 -68
  537. package/src/nz/co/siliconst/ui5/metaui/plugins/ArrayPlugin-dbg.js.map +0 -1
  538. package/src/nz/co/siliconst/ui5/metaui/plugins/ArrayPlugin.d.ts +0 -15
  539. package/src/nz/co/siliconst/ui5/metaui/plugins/ArrayPlugin.d.ts.map +0 -1
  540. package/src/nz/co/siliconst/ui5/metaui/plugins/ArrayPlugin.js +0 -2
  541. package/src/nz/co/siliconst/ui5/metaui/plugins/ArrayPlugin.js.map +0 -1
  542. package/src/nz/co/siliconst/ui5/metaui/plugins/ArrayPlugin.ts +0 -71
  543. package/src/nz/co/siliconst/ui5/metaui/plugins/BasePlugin-dbg.js +0 -55
  544. package/src/nz/co/siliconst/ui5/metaui/plugins/BasePlugin-dbg.js.map +0 -1
  545. package/src/nz/co/siliconst/ui5/metaui/plugins/BasePlugin.d.ts +0 -24
  546. package/src/nz/co/siliconst/ui5/metaui/plugins/BasePlugin.d.ts.map +0 -1
  547. package/src/nz/co/siliconst/ui5/metaui/plugins/BasePlugin.js +0 -2
  548. package/src/nz/co/siliconst/ui5/metaui/plugins/BasePlugin.js.map +0 -1
  549. package/src/nz/co/siliconst/ui5/metaui/plugins/BasePlugin.ts +0 -56
  550. package/src/nz/co/siliconst/ui5/metaui/plugins/BooleanPlugin-dbg.js +0 -42
  551. package/src/nz/co/siliconst/ui5/metaui/plugins/BooleanPlugin-dbg.js.map +0 -1
  552. package/src/nz/co/siliconst/ui5/metaui/plugins/BooleanPlugin.d.ts +0 -18
  553. package/src/nz/co/siliconst/ui5/metaui/plugins/BooleanPlugin.d.ts.map +0 -1
  554. package/src/nz/co/siliconst/ui5/metaui/plugins/BooleanPlugin.js +0 -2
  555. package/src/nz/co/siliconst/ui5/metaui/plugins/BooleanPlugin.js.map +0 -1
  556. package/src/nz/co/siliconst/ui5/metaui/plugins/BooleanPlugin.ts +0 -41
  557. package/src/nz/co/siliconst/ui5/metaui/plugins/DatePlugin-dbg.js.map +0 -1
  558. package/src/nz/co/siliconst/ui5/metaui/plugins/DatePlugin.d.ts.map +0 -1
  559. package/src/nz/co/siliconst/ui5/metaui/plugins/DatePlugin.js +0 -2
  560. package/src/nz/co/siliconst/ui5/metaui/plugins/DatePlugin.js.map +0 -1
  561. package/src/nz/co/siliconst/ui5/metaui/plugins/DatePlugin.ts +0 -69
  562. package/src/nz/co/siliconst/ui5/metaui/plugins/DateTimePlugin-dbg.js.map +0 -1
  563. package/src/nz/co/siliconst/ui5/metaui/plugins/DateTimePlugin.d.ts.map +0 -1
  564. package/src/nz/co/siliconst/ui5/metaui/plugins/DateTimePlugin.js +0 -2
  565. package/src/nz/co/siliconst/ui5/metaui/plugins/DateTimePlugin.js.map +0 -1
  566. package/src/nz/co/siliconst/ui5/metaui/plugins/DateTimePlugin.ts +0 -68
  567. package/src/nz/co/siliconst/ui5/metaui/plugins/DropdownPlugin-dbg.js +0 -67
  568. package/src/nz/co/siliconst/ui5/metaui/plugins/DropdownPlugin-dbg.js.map +0 -1
  569. package/src/nz/co/siliconst/ui5/metaui/plugins/DropdownPlugin.d.ts +0 -18
  570. package/src/nz/co/siliconst/ui5/metaui/plugins/DropdownPlugin.d.ts.map +0 -1
  571. package/src/nz/co/siliconst/ui5/metaui/plugins/DropdownPlugin.js +0 -2
  572. package/src/nz/co/siliconst/ui5/metaui/plugins/DropdownPlugin.js.map +0 -1
  573. package/src/nz/co/siliconst/ui5/metaui/plugins/DropdownPlugin.ts +0 -65
  574. package/src/nz/co/siliconst/ui5/metaui/plugins/NumberPlugin-dbg.js.map +0 -1
  575. package/src/nz/co/siliconst/ui5/metaui/plugins/NumberPlugin.d.ts.map +0 -1
  576. package/src/nz/co/siliconst/ui5/metaui/plugins/NumberPlugin.js +0 -2
  577. package/src/nz/co/siliconst/ui5/metaui/plugins/NumberPlugin.js.map +0 -1
  578. package/src/nz/co/siliconst/ui5/metaui/plugins/NumberPlugin.ts +0 -56
  579. package/src/nz/co/siliconst/ui5/metaui/plugins/StringPlugin-dbg.js +0 -57
  580. package/src/nz/co/siliconst/ui5/metaui/plugins/StringPlugin-dbg.js.map +0 -1
  581. package/src/nz/co/siliconst/ui5/metaui/plugins/StringPlugin.d.ts +0 -18
  582. package/src/nz/co/siliconst/ui5/metaui/plugins/StringPlugin.d.ts.map +0 -1
  583. package/src/nz/co/siliconst/ui5/metaui/plugins/StringPlugin.js +0 -2
  584. package/src/nz/co/siliconst/ui5/metaui/plugins/StringPlugin.js.map +0 -1
  585. package/src/nz/co/siliconst/ui5/metaui/plugins/StringPlugin.ts +0 -58
  586. package/src/nz/co/siliconst/ui5/metaui/plugins/SwitchPlugin-dbg.js.map +0 -1
  587. package/src/nz/co/siliconst/ui5/metaui/plugins/SwitchPlugin.d.ts.map +0 -1
  588. package/src/nz/co/siliconst/ui5/metaui/plugins/SwitchPlugin.js +0 -2
  589. package/src/nz/co/siliconst/ui5/metaui/plugins/SwitchPlugin.js.map +0 -1
  590. package/src/nz/co/siliconst/ui5/metaui/plugins/SwitchPlugin.ts +0 -42
  591. package/src/nz/co/siliconst/ui5/metaui/plugins/TextAreaPlugin-dbg.js.map +0 -1
  592. package/src/nz/co/siliconst/ui5/metaui/plugins/TextAreaPlugin.d.ts.map +0 -1
  593. package/src/nz/co/siliconst/ui5/metaui/plugins/TextAreaPlugin.js +0 -2
  594. package/src/nz/co/siliconst/ui5/metaui/plugins/TextAreaPlugin.js.map +0 -1
  595. package/src/nz/co/siliconst/ui5/metaui/plugins/TextAreaPlugin.ts +0 -58
  596. package/src/nz/co/siliconst/ui5/metaui/plugins/TimePlugin-dbg.js.map +0 -1
  597. package/src/nz/co/siliconst/ui5/metaui/plugins/TimePlugin.d.ts.map +0 -1
  598. package/src/nz/co/siliconst/ui5/metaui/plugins/TimePlugin.js +0 -2
  599. package/src/nz/co/siliconst/ui5/metaui/plugins/TimePlugin.js.map +0 -1
  600. package/src/nz/co/siliconst/ui5/metaui/plugins/TimePlugin.ts +0 -71
@@ -1 +1 @@
1
- {"version":3,"file":"TableLayout-dbg.js","names":["PluginRegistry","___core_PluginRegistry","TableLayout","build","tableMeta","bindingPath","tableTitle","trackPlugin","properties","Error","parts","split","actualModelName","length","undefined","actualPath","table","Table","headerToolbar","Toolbar","content","Title","text","ToolbarSpacer","Button","icon","press","oEvent","btn","getSource","tbl","getParent","model","getModel","info","getBindingInfo","path","data","getProperty","push","setProperty","fixedLayout","mode","delete","item","getParameter","getBindingContext","getPath","splitPaths","index","parseInt","pop","arrayPath","join","splice","templateCells","registry","getInstance","props","Object","keys","forEach","key","fieldMeta","isKey","ui","column","Column","header","Text","label","demandPopin","minScreenWidth","popinDisplay","addColumn","plugin","getPlugin","type","widget","control","render","error","sap","require","Log","message","rowTemplate","ColumnListItem","cells","bindItems","template","templateShareable","__exports","__esModule"],"sources":["TableLayout.ts"],"sourcesContent":["/**\n * @file TableLayout.ts\n * @description Generates a responsive SAP Fiori Table layout for v2 schema.\n */\n\nimport Table from \"sap/m/Table\";\nimport Column from \"sap/m/Column\";\nimport Text from \"sap/m/Text\";\nimport ColumnListItem from \"sap/m/ColumnListItem\";\nimport Toolbar from \"sap/m/Toolbar\";\nimport Title from \"sap/m/Title\";\nimport ToolbarSpacer from \"sap/m/ToolbarSpacer\";\nimport Button from \"sap/m/Button\";\nimport JSONModel from \"sap/ui/model/json/JSONModel\";\nimport { PluginRegistry } from \"../core/PluginRegistry\";\nimport Control from \"sap/ui/core/Control\";\nimport { IPlugin } from \"../interfaces/IPlugin\";\nimport { IPropertyMetadata } from \"../interfaces/ISchema\";\n\nexport class TableLayout {\n /**\n * Builds a responsive Table, dynamically calculating column priorities.\n */\n public static build(tableMeta: IPropertyMetadata, bindingPath: string = \"meta>/\", tableTitle: string = \"Table\", trackPlugin?: (plugin: IPlugin) => void): Table {\n if (!tableMeta.properties) {\n throw new Error(\"[MetaUI] Table requires an items schema with properties.\");\n }\n\n const parts = bindingPath.split(\">\");\n const actualModelName = parts.length > 1 ? parts[0] : undefined;\n const actualPath = parts.length > 1 ? parts[1] : bindingPath;\n // e.g. \"meta>/Contacts\" -> actualModelName = \"meta\", actualPath = \"/Contacts\"\n\n const table = new Table({\n headerToolbar: new Toolbar({\n content: [\n new Title({ text: tableTitle }),\n new ToolbarSpacer(),\n new Button({\n text: \"Add Row\",\n icon: \"sap-icon://add\",\n press: (oEvent: any) => {\n const btn = oEvent.getSource();\n const tbl = btn.getParent().getParent() as Table;\n const model = tbl.getModel(actualModelName) as JSONModel;\n const info = tbl.getBindingInfo(\"items\");\n if (!info || !info.path) return;\n \n const data = model.getProperty(info.path) || [];\n data.push({}); // append empty row\n model.setProperty(info.path, data);\n }\n })\n ]\n }),\n fixedLayout: false,\n mode: \"Delete\",\n delete: (oEvent: any) => {\n const item = oEvent.getParameter(\"listItem\");\n const path = item.getBindingContext(actualModelName).getPath(); \n const model = item.getModel(actualModelName) as JSONModel;\n \n const splitPaths = path.split(\"/\");\n const index = parseInt(splitPaths.pop() || \"0\", 10);\n let arrayPath = splitPaths.join(\"/\");\n if (arrayPath === \"\") arrayPath = \"/\";\n \n const data = model.getProperty(arrayPath);\n data.splice(index, 1);\n model.setProperty(arrayPath, data);\n }\n });\n\n const templateCells: Control[] = [];\n const registry = PluginRegistry.getInstance();\n const props = tableMeta.properties;\n\n Object.keys(props).forEach((key) => {\n try {\n const fieldMeta = props[key];\n const isKey = !!fieldMeta.ui?.isKey;\n \n const column = new Column({\n header: new Text({ text: fieldMeta.ui?.label || key }),\n demandPopin: !isKey, \n minScreenWidth: isKey ? \"\" : \"Tablet\",\n popinDisplay: \"Inline\"\n });\n table.addColumn(column);\n\n const plugin = registry.getPlugin(fieldMeta.type, fieldMeta.ui?.widget);\n if (trackPlugin) trackPlugin(plugin);\n const control = plugin.render(fieldMeta, key, actualModelName); // No trailing slash for relative bindings\n templateCells.push(control);\n } catch (error) {\n sap.ui.require([\"sap/base/Log\"], (Log: any) => {\n if (Log) Log.error(`[MetaUI] Failed to render column ${key}`, (error as Error).message, \"TableLayout\");\n });\n \n // Add an empty text control as a fallback so the table columns match the cells array length\n templateCells.push(new Text({ text: \"Error\" }));\n }\n });\n\n const rowTemplate = new ColumnListItem({\n cells: templateCells\n });\n\n // V2 Fix: Actually bind the items to the table!\n table.bindItems({\n path: actualPath,\n model: actualModelName,\n template: rowTemplate,\n templateShareable: false\n });\n\n return table;\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"TableLayout-dbg.js","names":["Logger","___utils_Logger","TableLayout","render","schema","modelName","engine","onSubmit","bindingPath","type","items","properties","Error","tableTitle","title","actualModelName","actualPath","table","Table","headerToolbar","Toolbar","content","Title","text","ToolbarSpacer","isDisplayMode","Button","icon","press","oEvent","btn","getSource","tbl","getParent","model","getModel","info","getBindingInfo","path","rawData","getProperty","data","Array","isArray","newData","setProperty","fixedLayout","mode","delete","item","getParameter","getBindingContext","getPath","splitPaths","split","index","parseInt","pop","arrayPath","join","splice","templateCells","props","layoutElements","uiLayout","forEach","element","scope","startsWith","error","propKey","replace","fieldMeta","isKey","ui","column","Column","header","Text","label","demandPopin","minScreenWidth","popinDisplay","addColumn","effectiveMeta","widget","control","generateField","push","msg","message","showErrorPopup","warn","debug","Object","keys","key","rowTemplate","ColumnListItem","cells","bindItems","template","templateShareable","__exports","__esModule"],"sources":["TableLayout.ts"],"sourcesContent":["/**\n * @file TableLayout.ts\n * @description Generates a responsive SAP Fiori Table layout for v2 schema.\n */\n\nimport Table from \"sap/m/Table\";\nimport Column from \"sap/m/Column\";\nimport Text from \"sap/m/Text\";\nimport ColumnListItem from \"sap/m/ColumnListItem\";\nimport Toolbar from \"sap/m/Toolbar\";\nimport Title from \"sap/m/Title\";\nimport ToolbarSpacer from \"sap/m/ToolbarSpacer\";\nimport Button from \"sap/m/Button\";\nimport JSONModel from \"sap/ui/model/json/JSONModel\";\nimport Control from \"sap/ui/core/Control\";\nimport { IPropertyMetadata, ISchema, ILayoutElement } from \"../interfaces/ISchema\";\nimport { ILayoutManager } from \"../interfaces/ILayoutManager\";\nimport { Engine } from \"../core/Engine\";\nimport { Logger } from \"../utils/Logger\";\n\n/**\n * Layout Manager responsible for generating a responsive SAP Fiori Table.\n * It is automatically utilized by the Engine when the schema root or property is of type 'array'.\n * Includes built-in support for adding and deleting rows via dynamic data binding manipulation.\n * \n * @namespace nz.co.siliconst.ui5.metaui.layouts\n * @public\n */\nexport class TableLayout implements ILayoutManager {\n /**\n * Renders the JSON Schema array properties into a UI5 Table.\n * \n * @param schema The active JSON schema array definition.\n * @param modelName The UI5 JSONModel name used for data binding.\n * @param engine The central orchestrator for delegating column plugin generation.\n * @param onSubmit Optional submit hook.\n * @param bindingPath The JSON path representing the array within the payload.\n * @returns {Control} The generated sap.m.Table control.\n * @throws {Error} If the provided schema is not of type 'array'.\n */\n public render(schema: ISchema, modelName: string, engine: Engine, onSubmit?: () => void, bindingPath: string = \"/\"): Control {\n if (schema.type !== \"array\" || !schema.items || !schema.items.properties) {\n throw new Error(\"[MetaUI] TableLayout requires an array schema with items.properties.\");\n }\n\n const tableTitle = schema.title || \"Table\";\n const actualModelName = modelName;\n const actualPath = bindingPath;\n\n const table = new Table({\n headerToolbar: new Toolbar({\n content: [\n new Title({ text: tableTitle }),\n new ToolbarSpacer(),\n ...(engine.isDisplayMode ? [] : [\n new Button({\n text: \"Add Row\",\n icon: \"sap-icon://add\",\n press: (oEvent: sap.ui.base.Event) => {\n const btn = oEvent.getSource();\n const tbl = btn.getParent().getParent() as Table;\n const model = tbl.getModel(actualModelName) as JSONModel;\n const info = tbl.getBindingInfo(\"items\");\n if (!info || !info.path) return;\n\n const rawData = model.getProperty(info.path);\n const data = Array.isArray(rawData) ? rawData : [];\n const newData = [...data, {}];\n model.setProperty(info.path, newData);\n }\n })\n ])\n ]\n }),\n fixedLayout: false,\n mode: engine.isDisplayMode ? \"None\" : \"Delete\",\n delete: (oEvent: sap.ui.base.Event) => {\n const item = oEvent.getParameter(\"listItem\");\n const path = item.getBindingContext(actualModelName).getPath();\n const model = item.getModel(actualModelName) as JSONModel;\n\n const splitPaths = path.split(\"/\");\n const index = parseInt(splitPaths.pop() || \"0\", 10);\n let arrayPath = splitPaths.join(\"/\");\n if (arrayPath === \"\") arrayPath = \"/\";\n\n const rawData = model.getProperty(arrayPath);\n const data = Array.isArray(rawData) ? rawData : [];\n const newData = [...data];\n newData.splice(index, 1);\n model.setProperty(arrayPath, newData);\n }\n });\n\n const templateCells: Control[] = [];\n const props = schema.items.properties;\n const layoutElements = schema.uiLayout;\n\n if (layoutElements && Array.isArray(layoutElements)) {\n // Only render columns defined in uiLayout\n layoutElements.forEach((element: ILayoutElement) => {\n if (element.type === \"Control\") {\n if (!element.scope || !element.scope.startsWith(\"#/properties/\")) {\n Logger.error(`[MetaUI] Invalid scope '${element.scope}' in uiLayout Control for Table.`, \"\", \"TableLayout\");\n return;\n }\n\n const propKey = element.scope.replace(\"#/properties/\", \"\");\n const fieldMeta = props[propKey];\n\n if (!fieldMeta) {\n Logger.error(`[MetaUI] Property '${propKey}' not found in schema definitions for Table.`, \"\", \"TableLayout\");\n return;\n }\n\n try {\n const isKey = !!fieldMeta.ui?.isKey;\n\n const column = new Column({\n header: new Text({ text: element.label || fieldMeta.ui?.label || propKey }),\n demandPopin: !isKey,\n minScreenWidth: isKey ? \"\" : \"Tablet\",\n popinDisplay: \"Inline\"\n });\n table.addColumn(column);\n\n // Override widget if specified in the layout element\n const effectiveMeta = { ...fieldMeta };\n if (element.widget) {\n effectiveMeta.ui = { ...fieldMeta.ui, widget: element.widget };\n }\n\n // Use engine to generate fields natively and track validation\n const control = engine.generateField(effectiveMeta, propKey, actualModelName || \"meta\", true);\n templateCells.push(control);\n } catch (error) {\n const msg = (error as Error).message;\n Logger.error(`[MetaUI] Failed to render column ${propKey}`, msg, \"TableLayout\");\n Logger.showErrorPopup(`Failed to render table column '${propKey}'.\\n\\nDetails: ${msg}`);\n templateCells.push(new Text({ text: \"Error\" }));\n }\n } else {\n Logger.warn(`[MetaUI] Unsupported layout element type '${element.type}' inside TableLayout. Only 'Control' is supported for columns.`, \"\", \"TableLayout\");\n }\n });\n } else {\n Logger.debug(\"[MetaUI TableLayout]\", \"No uiLayout provided. Falling back to rendering all properties as columns.\", \"TableLayout\");\n // Fallback: If no uiLayout is provided, render all properties as columns\n Object.keys(props).forEach((key) => {\n try {\n const fieldMeta = props[key];\n const isKey = !!fieldMeta.ui?.isKey;\n\n const column = new Column({\n header: new Text({ text: fieldMeta.ui?.label || key }),\n demandPopin: !isKey,\n minScreenWidth: isKey ? \"\" : \"Tablet\",\n popinDisplay: \"Inline\"\n });\n table.addColumn(column);\n\n const control = engine.generateField(fieldMeta, key, actualModelName || \"meta\", true);\n templateCells.push(control);\n } catch (error) {\n const msg = (error as Error).message;\n Logger.error(`[MetaUI] Failed to render fallback column ${key}`, msg, \"TableLayout\");\n Logger.showErrorPopup(`Failed to render fallback table column '${key}'.\\n\\nDetails: ${msg}`);\n templateCells.push(new Text({ text: \"Error\" }));\n }\n });\n }\n\n\n\n const rowTemplate = new ColumnListItem({\n cells: templateCells\n });\n\n table.bindItems({\n path: actualPath,\n model: actualModelName,\n template: rowTemplate,\n templateShareable: false\n });\n\n return table;\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,16 +1,29 @@
1
1
  declare module "nz/co/siliconst/ui5/metaui/layouts/TableLayout" {
2
+ import Control from "sap/ui/core/Control";
3
+ import { ISchema } from "nz/co/siliconst/ui5/metaui/interfaces/ISchema";
4
+ import { ILayoutManager } from "nz/co/siliconst/ui5/metaui/interfaces/ILayoutManager";
5
+ import { Engine } from "nz/co/siliconst/ui5/metaui/core/Engine";
2
6
  /**
3
- * @file TableLayout.ts
4
- * @description Generates a responsive SAP Fiori Table layout for v2 schema.
7
+ * Layout Manager responsible for generating a responsive SAP Fiori Table.
8
+ * It is automatically utilized by the Engine when the schema root or property is of type 'array'.
9
+ * Includes built-in support for adding and deleting rows via dynamic data binding manipulation.
10
+ *
11
+ * @namespace nz.co.siliconst.ui5.metaui.layouts
12
+ * @public
5
13
  */
6
- import Table from "sap/m/Table";
7
- import { IPlugin } from "nz/co/siliconst/ui5/metaui/interfaces/IPlugin";
8
- import { IPropertyMetadata } from "nz/co/siliconst/ui5/metaui/interfaces/ISchema";
9
- export class TableLayout {
14
+ export class TableLayout implements ILayoutManager {
10
15
  /**
11
- * Builds a responsive Table, dynamically calculating column priorities.
16
+ * Renders the JSON Schema array properties into a UI5 Table.
17
+ *
18
+ * @param schema The active JSON schema array definition.
19
+ * @param modelName The UI5 JSONModel name used for data binding.
20
+ * @param engine The central orchestrator for delegating column plugin generation.
21
+ * @param onSubmit Optional submit hook.
22
+ * @param bindingPath The JSON path representing the array within the payload.
23
+ * @returns {Control} The generated sap.m.Table control.
24
+ * @throws {Error} If the provided schema is not of type 'array'.
12
25
  */
13
- static build(tableMeta: IPropertyMetadata, bindingPath?: string, tableTitle?: string, trackPlugin?: (plugin: IPlugin) => void): Table;
26
+ render(schema: ISchema, modelName: string, engine: Engine, onSubmit?: () => void, bindingPath?: string): Control;
14
27
  }
15
28
  }
16
29
  //# sourceMappingURL=TableLayout.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"TableLayout.d.ts","sourceRoot":"../../../../../../../..","sources":["src/nz/co/siliconst/ui5/metaui/layouts/TableLayout.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,gDAAgD,CAAC;IAChE;;;OAGG;IAEH,OAAO,KAAK,MAAM,aAAa,CAAC;IAWhC,OAAO,EAAE,OAAO,EAAE,MAAM,+CAA+C,CAAC;IACxE,OAAO,EAAE,iBAAiB,EAAE,MAAM,+CAA+C,CAAC;IAElF,MAAa,WAAW;QACpB;;WAEG;eACW,KAAK,CAAC,SAAS,EAAE,iBAAiB,EAAE,WAAW,GAAE,MAAiB,EAAE,UAAU,GAAE,MAAgB,EAAE,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,IAAI,GAAG,KAAK;KA+FlK;CAEA"}
1
+ {"version":3,"file":"TableLayout.d.ts","sourceRoot":"../../../../../../../..","sources":["src/nz/co/siliconst/ui5/metaui/layouts/TableLayout.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,gDAAgD,CAAC;IAehE,OAAO,OAAO,MAAM,qBAAqB,CAAC;IAC1C,OAAO,EAAqB,OAAO,EAAkB,MAAM,+CAA+C,CAAC;IAC3G,OAAO,EAAE,cAAc,EAAE,MAAM,sDAAsD,CAAC;IACtF,OAAO,EAAE,MAAM,EAAE,MAAM,wCAAwC,CAAC;IAGhE;;;;;;;OAOG;IACH,MAAa,WAAY,YAAW,cAAc;QAC9C;;;;;;;;;;WAUG;QACI,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,IAAI,EAAE,WAAW,GAAE,MAAY,GAAG,OAAO;KAmJ/H;CAEA"}
@@ -1,2 +1,2 @@
1
- sap.ui.define(["sap/m/Table","sap/m/Column","sap/m/Text","sap/m/ColumnListItem","sap/m/Toolbar","sap/m/Title","sap/m/ToolbarSpacer","sap/m/Button","../core/PluginRegistry"],function(e,t,n,s,o,a,r,i,c){"use strict";const l=c["PluginRegistry"];class p{static build(c,p="meta>/",u="Table",d){if(!c.properties){throw new Error("[MetaUI] Table requires an items schema with properties.")}const m=p.split(">");const g=m.length>1?m[0]:undefined;const h=m.length>1?m[1]:p;const b=new e({headerToolbar:new o({content:[new a({text:u}),new r,new i({text:"Add Row",icon:"sap-icon://add",press:e=>{const t=e.getSource();const n=t.getParent().getParent();const s=n.getModel(g);const o=n.getBindingInfo("items");if(!o||!o.path)return;const a=s.getProperty(o.path)||[];a.push({});s.setProperty(o.path,a)}})]}),fixedLayout:false,mode:"Delete",delete:e=>{const t=e.getParameter("listItem");const n=t.getBindingContext(g).getPath();const s=t.getModel(g);const o=n.split("/");const a=parseInt(o.pop()||"0",10);let r=o.join("/");if(r==="")r="/";const i=s.getProperty(r);i.splice(a,1);s.setProperty(r,i)}});const w=[];const y=l.getInstance();const f=c.properties;Object.keys(f).forEach(e=>{try{const s=f[e];const o=!!s.ui?.isKey;const a=new t({header:new n({text:s.ui?.label||e}),demandPopin:!o,minScreenWidth:o?"":"Tablet",popinDisplay:"Inline"});b.addColumn(a);const r=y.getPlugin(s.type,s.ui?.widget);if(d)d(r);const i=r.render(s,e,g);w.push(i)}catch(t){sap.ui.require(["sap/base/Log"],n=>{if(n)n.error(`[MetaUI] Failed to render column ${e}`,t.message,"TableLayout")});w.push(new n({text:"Error"}))}});const P=new s({cells:w});b.bindItems({path:h,model:g,template:P,templateShareable:false});return b}}var u={__esModule:true};u.TableLayout=p;return u});
1
+ sap.ui.define(["sap/m/Table","sap/m/Column","sap/m/Text","sap/m/ColumnListItem","sap/m/Toolbar","sap/m/Title","sap/m/ToolbarSpacer","sap/m/Button","../utils/Logger"],function(e,t,o,r,a,n,s,i,l){"use strict";const p=l["Logger"];class c{render(l,c,u,d,m="/"){if(l.type!=="array"||!l.items||!l.items.properties){throw new Error("[MetaUI] TableLayout requires an array schema with items.properties.")}const y=l.title||"Table";const b=c;const g=m;const h=new e({headerToolbar:new a({content:[new n({text:y}),new s,...u.isDisplayMode?[]:[new i({text:"Add Row",icon:"sap-icon://add",press:e=>{const t=e.getSource();const o=t.getParent().getParent();const r=o.getModel(b);const a=o.getBindingInfo("items");if(!a||!a.path)return;const n=r.getProperty(a.path);const s=Array.isArray(n)?n:[];const i=[...s,{}];r.setProperty(a.path,i)}})]]}),fixedLayout:false,mode:u.isDisplayMode?"None":"Delete",delete:e=>{const t=e.getParameter("listItem");const o=t.getBindingContext(b).getPath();const r=t.getModel(b);const a=o.split("/");const n=parseInt(a.pop()||"0",10);let s=a.join("/");if(s==="")s="/";const i=r.getProperty(s);const l=Array.isArray(i)?i:[];const p=[...l];p.splice(n,1);r.setProperty(s,p)}});const f=[];const w=l.items.properties;const T=l.uiLayout;if(T&&Array.isArray(T)){T.forEach(e=>{if(e.type==="Control"){if(!e.scope||!e.scope.startsWith("#/properties/")){p.error(`[MetaUI] Invalid scope '${e.scope}' in uiLayout Control for Table.`,"","TableLayout");return}const r=e.scope.replace("#/properties/","");const a=w[r];if(!a){p.error(`[MetaUI] Property '${r}' not found in schema definitions for Table.`,"","TableLayout");return}try{const n=!!a.ui?.isKey;const s=new t({header:new o({text:e.label||a.ui?.label||r}),demandPopin:!n,minScreenWidth:n?"":"Tablet",popinDisplay:"Inline"});h.addColumn(s);const i={...a};if(e.widget){i.ui={...a.ui,widget:e.widget}}const l=u.generateField(i,r,b||"meta",true);f.push(l)}catch(e){const t=e.message;p.error(`[MetaUI] Failed to render column ${r}`,t,"TableLayout");p.showErrorPopup(`Failed to render table column '${r}'.\n\nDetails: ${t}`);f.push(new o({text:"Error"}))}}else{p.warn(`[MetaUI] Unsupported layout element type '${e.type}' inside TableLayout. Only 'Control' is supported for columns.`,"","TableLayout")}})}else{p.debug("[MetaUI TableLayout]","No uiLayout provided. Falling back to rendering all properties as columns.","TableLayout");Object.keys(w).forEach(e=>{try{const r=w[e];const a=!!r.ui?.isKey;const n=new t({header:new o({text:r.ui?.label||e}),demandPopin:!a,minScreenWidth:a?"":"Tablet",popinDisplay:"Inline"});h.addColumn(n);const s=u.generateField(r,e,b||"meta",true);f.push(s)}catch(t){const r=t.message;p.error(`[MetaUI] Failed to render fallback column ${e}`,r,"TableLayout");p.showErrorPopup(`Failed to render fallback table column '${e}'.\n\nDetails: ${r}`);f.push(new o({text:"Error"}))}})}const L=new r({cells:f});h.bindItems({path:g,model:b,template:L,templateShareable:false});return h}}var u={__esModule:true};u.TableLayout=c;return u});
2
2
  //# sourceMappingURL=TableLayout.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"TableLayout.js","names":["PluginRegistry","___core_PluginRegistry","TableLayout","build","tableMeta","bindingPath","tableTitle","trackPlugin","properties","Error","parts","split","actualModelName","length","undefined","actualPath","table","Table","headerToolbar","Toolbar","content","Title","text","ToolbarSpacer","Button","icon","press","oEvent","btn","getSource","tbl","getParent","model","getModel","info","getBindingInfo","path","data","getProperty","push","setProperty","fixedLayout","mode","delete","item","getParameter","getBindingContext","getPath","splitPaths","index","parseInt","pop","arrayPath","join","splice","templateCells","registry","getInstance","props","Object","keys","forEach","key","fieldMeta","isKey","ui","column","Column","header","Text","label","demandPopin","minScreenWidth","popinDisplay","addColumn","plugin","getPlugin","type","widget","control","render","error","sap","require","Log","message","rowTemplate","ColumnListItem","cells","bindItems","template","templateShareable","__exports","__esModule"],"sources":["TableLayout.ts"],"sourcesContent":["/**\n * @file TableLayout.ts\n * @description Generates a responsive SAP Fiori Table layout for v2 schema.\n */\n\nimport Table from \"sap/m/Table\";\nimport Column from \"sap/m/Column\";\nimport Text from \"sap/m/Text\";\nimport ColumnListItem from \"sap/m/ColumnListItem\";\nimport Toolbar from \"sap/m/Toolbar\";\nimport Title from \"sap/m/Title\";\nimport ToolbarSpacer from \"sap/m/ToolbarSpacer\";\nimport Button from \"sap/m/Button\";\nimport JSONModel from \"sap/ui/model/json/JSONModel\";\nimport { PluginRegistry } from \"../core/PluginRegistry\";\nimport Control from \"sap/ui/core/Control\";\nimport { IPlugin } from \"../interfaces/IPlugin\";\nimport { IPropertyMetadata } from \"../interfaces/ISchema\";\n\nexport class TableLayout {\n /**\n * Builds a responsive Table, dynamically calculating column priorities.\n */\n public static build(tableMeta: IPropertyMetadata, bindingPath: string = \"meta>/\", tableTitle: string = \"Table\", trackPlugin?: (plugin: IPlugin) => void): Table {\n if (!tableMeta.properties) {\n throw new Error(\"[MetaUI] Table requires an items schema with properties.\");\n }\n\n const parts = bindingPath.split(\">\");\n const actualModelName = parts.length > 1 ? parts[0] : undefined;\n const actualPath = parts.length > 1 ? parts[1] : bindingPath;\n // e.g. \"meta>/Contacts\" -> actualModelName = \"meta\", actualPath = \"/Contacts\"\n\n const table = new Table({\n headerToolbar: new Toolbar({\n content: [\n new Title({ text: tableTitle }),\n new ToolbarSpacer(),\n new Button({\n text: \"Add Row\",\n icon: \"sap-icon://add\",\n press: (oEvent: any) => {\n const btn = oEvent.getSource();\n const tbl = btn.getParent().getParent() as Table;\n const model = tbl.getModel(actualModelName) as JSONModel;\n const info = tbl.getBindingInfo(\"items\");\n if (!info || !info.path) return;\n \n const data = model.getProperty(info.path) || [];\n data.push({}); // append empty row\n model.setProperty(info.path, data);\n }\n })\n ]\n }),\n fixedLayout: false,\n mode: \"Delete\",\n delete: (oEvent: any) => {\n const item = oEvent.getParameter(\"listItem\");\n const path = item.getBindingContext(actualModelName).getPath(); \n const model = item.getModel(actualModelName) as JSONModel;\n \n const splitPaths = path.split(\"/\");\n const index = parseInt(splitPaths.pop() || \"0\", 10);\n let arrayPath = splitPaths.join(\"/\");\n if (arrayPath === \"\") arrayPath = \"/\";\n \n const data = model.getProperty(arrayPath);\n data.splice(index, 1);\n model.setProperty(arrayPath, data);\n }\n });\n\n const templateCells: Control[] = [];\n const registry = PluginRegistry.getInstance();\n const props = tableMeta.properties;\n\n Object.keys(props).forEach((key) => {\n try {\n const fieldMeta = props[key];\n const isKey = !!fieldMeta.ui?.isKey;\n \n const column = new Column({\n header: new Text({ text: fieldMeta.ui?.label || key }),\n demandPopin: !isKey, \n minScreenWidth: isKey ? \"\" : \"Tablet\",\n popinDisplay: \"Inline\"\n });\n table.addColumn(column);\n\n const plugin = registry.getPlugin(fieldMeta.type, fieldMeta.ui?.widget);\n if (trackPlugin) trackPlugin(plugin);\n const control = plugin.render(fieldMeta, key, actualModelName); // No trailing slash for relative bindings\n templateCells.push(control);\n } catch (error) {\n sap.ui.require([\"sap/base/Log\"], (Log: any) => {\n if (Log) Log.error(`[MetaUI] Failed to render column ${key}`, (error as Error).message, \"TableLayout\");\n });\n \n // Add an empty text control as a fallback so the table columns match the cells array length\n templateCells.push(new Text({ text: \"Error\" }));\n }\n });\n\n const rowTemplate = new ColumnListItem({\n cells: templateCells\n });\n\n // V2 Fix: Actually bind the items to the table!\n table.bindItems({\n path: actualPath,\n model: actualModelName,\n template: rowTemplate,\n templateShareable: false\n });\n\n return table;\n }\n}\n"],"mappings":"4NAcSA,EAAcC,EAAA,kBAKhB,MAAMC,EAIT,YAAcC,CAAMC,EAA8BC,EAAsB,SAAUC,EAAqB,QAASC,GAC5G,IAAKH,EAAUI,WAAY,CACvB,MAAM,IAAIC,MAAM,2DACpB,CAEA,MAAMC,EAAQL,EAAYM,MAAM,KAChC,MAAMC,EAAkBF,EAAMG,OAAS,EAAIH,EAAM,GAAKI,UACtD,MAAMC,EAAaL,EAAMG,OAAS,EAAIH,EAAM,GAAKL,EAGjD,MAAMW,EAAQ,IAAIC,EAAM,CACpBC,cAAe,IAAIC,EAAQ,CACvBC,QAAS,CACL,IAAIC,EAAM,CAAEC,KAAMhB,IAClB,IAAIiB,EACJ,IAAIC,EAAO,CACPF,KAAM,UACNG,KAAM,iBACNC,MAAQC,IACJ,MAAMC,EAAMD,EAAOE,YACnB,MAAMC,EAAMF,EAAIG,YAAYA,YAC5B,MAAMC,EAAQF,EAAIG,SAASrB,GAC3B,MAAMsB,EAAOJ,EAAIK,eAAe,SAChC,IAAKD,IAASA,EAAKE,KAAM,OAEzB,MAAMC,EAAOL,EAAMM,YAAYJ,EAAKE,OAAS,GAC7CC,EAAKE,KAAK,CAAC,GACXP,EAAMQ,YAAYN,EAAKE,KAAMC,SAK7CI,YAAa,MACbC,KAAM,SACNC,OAAShB,IACL,MAAMiB,EAAOjB,EAAOkB,aAAa,YACjC,MAAMT,EAAOQ,EAAKE,kBAAkBlC,GAAiBmC,UACrD,MAAMf,EAAQY,EAAKX,SAASrB,GAE5B,MAAMoC,EAAaZ,EAAKzB,MAAM,KAC9B,MAAMsC,EAAQC,SAASF,EAAWG,OAAS,IAAK,IAChD,IAAIC,EAAYJ,EAAWK,KAAK,KAChC,GAAID,IAAc,GAAIA,EAAY,IAElC,MAAMf,EAAOL,EAAMM,YAAYc,GAC/Bf,EAAKiB,OAAOL,EAAO,GACnBjB,EAAMQ,YAAYY,EAAWf,MAIrC,MAAMkB,EAA2B,GACjC,MAAMC,EAAWxD,EAAeyD,cAChC,MAAMC,EAAQtD,EAAUI,WAExBmD,OAAOC,KAAKF,GAAOG,QAASC,IACxB,IACI,MAAMC,EAAYL,EAAMI,GACxB,MAAME,IAAUD,EAAUE,IAAID,MAE9B,MAAME,EAAS,IAAIC,EAAO,CACtBC,OAAQ,IAAIC,EAAK,CAAE/C,KAAMyC,EAAUE,IAAIK,OAASR,IAChDS,aAAcP,EACdQ,eAAgBR,EAAQ,GAAK,SAC7BS,aAAc,WAElBzD,EAAM0D,UAAUR,GAEhB,MAAMS,EAASnB,EAASoB,UAAUb,EAAUc,KAAMd,EAAUE,IAAIa,QAChE,GAAIvE,EAAaA,EAAYoE,GAC7B,MAAMI,EAAUJ,EAAOK,OAAOjB,EAAWD,EAAKlD,GAC9C2C,EAAchB,KAAKwC,EACvB,CAAE,MAAOE,GACLC,IAAIjB,GAAGkB,QAAQ,CAAC,gBAAkBC,IAC9B,GAAIA,EAAKA,EAAIH,MAAM,oCAAoCnB,IAAQmB,EAAgBI,QAAS,iBAI5F9B,EAAchB,KAAK,IAAI8B,EAAK,CAAE/C,KAAM,UACxC,IAGJ,MAAMgE,EAAc,IAAIC,EAAe,CACnCC,MAAOjC,IAIXvC,EAAMyE,UAAU,CACZrD,KAAMrB,EACNiB,MAAOpB,EACP8E,SAAUJ,EACVK,kBAAmB,QAGvB,OAAO3E,CACX,EACH,IAAA4E,EAAA,CAAAC,WAAA,MAAAD,EAAA1F,cAAA,OAAA0F,CAAA","ignoreList":[]}
1
+ {"version":3,"file":"TableLayout.js","names":["Logger","___utils_Logger","TableLayout","render","schema","modelName","engine","onSubmit","bindingPath","type","items","properties","Error","tableTitle","title","actualModelName","actualPath","table","Table","headerToolbar","Toolbar","content","Title","text","ToolbarSpacer","isDisplayMode","Button","icon","press","oEvent","btn","getSource","tbl","getParent","model","getModel","info","getBindingInfo","path","rawData","getProperty","data","Array","isArray","newData","setProperty","fixedLayout","mode","delete","item","getParameter","getBindingContext","getPath","splitPaths","split","index","parseInt","pop","arrayPath","join","splice","templateCells","props","layoutElements","uiLayout","forEach","element","scope","startsWith","error","propKey","replace","fieldMeta","isKey","ui","column","Column","header","Text","label","demandPopin","minScreenWidth","popinDisplay","addColumn","effectiveMeta","widget","control","generateField","push","msg","message","showErrorPopup","warn","debug","Object","keys","key","rowTemplate","ColumnListItem","cells","bindItems","template","templateShareable","__exports","__esModule"],"sources":["TableLayout.ts"],"sourcesContent":["/**\n * @file TableLayout.ts\n * @description Generates a responsive SAP Fiori Table layout for v2 schema.\n */\n\nimport Table from \"sap/m/Table\";\nimport Column from \"sap/m/Column\";\nimport Text from \"sap/m/Text\";\nimport ColumnListItem from \"sap/m/ColumnListItem\";\nimport Toolbar from \"sap/m/Toolbar\";\nimport Title from \"sap/m/Title\";\nimport ToolbarSpacer from \"sap/m/ToolbarSpacer\";\nimport Button from \"sap/m/Button\";\nimport JSONModel from \"sap/ui/model/json/JSONModel\";\nimport Control from \"sap/ui/core/Control\";\nimport { IPropertyMetadata, ISchema, ILayoutElement } from \"../interfaces/ISchema\";\nimport { ILayoutManager } from \"../interfaces/ILayoutManager\";\nimport { Engine } from \"../core/Engine\";\nimport { Logger } from \"../utils/Logger\";\n\n/**\n * Layout Manager responsible for generating a responsive SAP Fiori Table.\n * It is automatically utilized by the Engine when the schema root or property is of type 'array'.\n * Includes built-in support for adding and deleting rows via dynamic data binding manipulation.\n * \n * @namespace nz.co.siliconst.ui5.metaui.layouts\n * @public\n */\nexport class TableLayout implements ILayoutManager {\n /**\n * Renders the JSON Schema array properties into a UI5 Table.\n * \n * @param schema The active JSON schema array definition.\n * @param modelName The UI5 JSONModel name used for data binding.\n * @param engine The central orchestrator for delegating column plugin generation.\n * @param onSubmit Optional submit hook.\n * @param bindingPath The JSON path representing the array within the payload.\n * @returns {Control} The generated sap.m.Table control.\n * @throws {Error} If the provided schema is not of type 'array'.\n */\n public render(schema: ISchema, modelName: string, engine: Engine, onSubmit?: () => void, bindingPath: string = \"/\"): Control {\n if (schema.type !== \"array\" || !schema.items || !schema.items.properties) {\n throw new Error(\"[MetaUI] TableLayout requires an array schema with items.properties.\");\n }\n\n const tableTitle = schema.title || \"Table\";\n const actualModelName = modelName;\n const actualPath = bindingPath;\n\n const table = new Table({\n headerToolbar: new Toolbar({\n content: [\n new Title({ text: tableTitle }),\n new ToolbarSpacer(),\n ...(engine.isDisplayMode ? [] : [\n new Button({\n text: \"Add Row\",\n icon: \"sap-icon://add\",\n press: (oEvent: sap.ui.base.Event) => {\n const btn = oEvent.getSource();\n const tbl = btn.getParent().getParent() as Table;\n const model = tbl.getModel(actualModelName) as JSONModel;\n const info = tbl.getBindingInfo(\"items\");\n if (!info || !info.path) return;\n\n const rawData = model.getProperty(info.path);\n const data = Array.isArray(rawData) ? rawData : [];\n const newData = [...data, {}];\n model.setProperty(info.path, newData);\n }\n })\n ])\n ]\n }),\n fixedLayout: false,\n mode: engine.isDisplayMode ? \"None\" : \"Delete\",\n delete: (oEvent: sap.ui.base.Event) => {\n const item = oEvent.getParameter(\"listItem\");\n const path = item.getBindingContext(actualModelName).getPath();\n const model = item.getModel(actualModelName) as JSONModel;\n\n const splitPaths = path.split(\"/\");\n const index = parseInt(splitPaths.pop() || \"0\", 10);\n let arrayPath = splitPaths.join(\"/\");\n if (arrayPath === \"\") arrayPath = \"/\";\n\n const rawData = model.getProperty(arrayPath);\n const data = Array.isArray(rawData) ? rawData : [];\n const newData = [...data];\n newData.splice(index, 1);\n model.setProperty(arrayPath, newData);\n }\n });\n\n const templateCells: Control[] = [];\n const props = schema.items.properties;\n const layoutElements = schema.uiLayout;\n\n if (layoutElements && Array.isArray(layoutElements)) {\n // Only render columns defined in uiLayout\n layoutElements.forEach((element: ILayoutElement) => {\n if (element.type === \"Control\") {\n if (!element.scope || !element.scope.startsWith(\"#/properties/\")) {\n Logger.error(`[MetaUI] Invalid scope '${element.scope}' in uiLayout Control for Table.`, \"\", \"TableLayout\");\n return;\n }\n\n const propKey = element.scope.replace(\"#/properties/\", \"\");\n const fieldMeta = props[propKey];\n\n if (!fieldMeta) {\n Logger.error(`[MetaUI] Property '${propKey}' not found in schema definitions for Table.`, \"\", \"TableLayout\");\n return;\n }\n\n try {\n const isKey = !!fieldMeta.ui?.isKey;\n\n const column = new Column({\n header: new Text({ text: element.label || fieldMeta.ui?.label || propKey }),\n demandPopin: !isKey,\n minScreenWidth: isKey ? \"\" : \"Tablet\",\n popinDisplay: \"Inline\"\n });\n table.addColumn(column);\n\n // Override widget if specified in the layout element\n const effectiveMeta = { ...fieldMeta };\n if (element.widget) {\n effectiveMeta.ui = { ...fieldMeta.ui, widget: element.widget };\n }\n\n // Use engine to generate fields natively and track validation\n const control = engine.generateField(effectiveMeta, propKey, actualModelName || \"meta\", true);\n templateCells.push(control);\n } catch (error) {\n const msg = (error as Error).message;\n Logger.error(`[MetaUI] Failed to render column ${propKey}`, msg, \"TableLayout\");\n Logger.showErrorPopup(`Failed to render table column '${propKey}'.\\n\\nDetails: ${msg}`);\n templateCells.push(new Text({ text: \"Error\" }));\n }\n } else {\n Logger.warn(`[MetaUI] Unsupported layout element type '${element.type}' inside TableLayout. Only 'Control' is supported for columns.`, \"\", \"TableLayout\");\n }\n });\n } else {\n Logger.debug(\"[MetaUI TableLayout]\", \"No uiLayout provided. Falling back to rendering all properties as columns.\", \"TableLayout\");\n // Fallback: If no uiLayout is provided, render all properties as columns\n Object.keys(props).forEach((key) => {\n try {\n const fieldMeta = props[key];\n const isKey = !!fieldMeta.ui?.isKey;\n\n const column = new Column({\n header: new Text({ text: fieldMeta.ui?.label || key }),\n demandPopin: !isKey,\n minScreenWidth: isKey ? \"\" : \"Tablet\",\n popinDisplay: \"Inline\"\n });\n table.addColumn(column);\n\n const control = engine.generateField(fieldMeta, key, actualModelName || \"meta\", true);\n templateCells.push(control);\n } catch (error) {\n const msg = (error as Error).message;\n Logger.error(`[MetaUI] Failed to render fallback column ${key}`, msg, \"TableLayout\");\n Logger.showErrorPopup(`Failed to render fallback table column '${key}'.\\n\\nDetails: ${msg}`);\n templateCells.push(new Text({ text: \"Error\" }));\n }\n });\n }\n\n\n\n const rowTemplate = new ColumnListItem({\n cells: templateCells\n });\n\n table.bindItems({\n path: actualPath,\n model: actualModelName,\n template: rowTemplate,\n templateShareable: false\n });\n\n return table;\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -12,101 +12,170 @@ import Title from "sap/m/Title";
12
12
  import ToolbarSpacer from "sap/m/ToolbarSpacer";
13
13
  import Button from "sap/m/Button";
14
14
  import JSONModel from "sap/ui/model/json/JSONModel";
15
- import { PluginRegistry } from "../core/PluginRegistry";
16
15
  import Control from "sap/ui/core/Control";
17
- import { IPlugin } from "../interfaces/IPlugin";
18
- import { IPropertyMetadata } from "../interfaces/ISchema";
16
+ import { IPropertyMetadata, ISchema, ILayoutElement } from "../interfaces/ISchema";
17
+ import { ILayoutManager } from "../interfaces/ILayoutManager";
18
+ import { Engine } from "../core/Engine";
19
+ import { Logger } from "../utils/Logger";
19
20
 
20
- export class TableLayout {
21
+ /**
22
+ * Layout Manager responsible for generating a responsive SAP Fiori Table.
23
+ * It is automatically utilized by the Engine when the schema root or property is of type 'array'.
24
+ * Includes built-in support for adding and deleting rows via dynamic data binding manipulation.
25
+ *
26
+ * @namespace nz.co.siliconst.ui5.metaui.layouts
27
+ * @public
28
+ */
29
+ export class TableLayout implements ILayoutManager {
21
30
  /**
22
- * Builds a responsive Table, dynamically calculating column priorities.
31
+ * Renders the JSON Schema array properties into a UI5 Table.
32
+ *
33
+ * @param schema The active JSON schema array definition.
34
+ * @param modelName The UI5 JSONModel name used for data binding.
35
+ * @param engine The central orchestrator for delegating column plugin generation.
36
+ * @param onSubmit Optional submit hook.
37
+ * @param bindingPath The JSON path representing the array within the payload.
38
+ * @returns {Control} The generated sap.m.Table control.
39
+ * @throws {Error} If the provided schema is not of type 'array'.
23
40
  */
24
- public static build(tableMeta: IPropertyMetadata, bindingPath: string = "meta>/", tableTitle: string = "Table", trackPlugin?: (plugin: IPlugin) => void): Table {
25
- if (!tableMeta.properties) {
26
- throw new Error("[MetaUI] Table requires an items schema with properties.");
41
+ public render(schema: ISchema, modelName: string, engine: Engine, onSubmit?: () => void, bindingPath: string = "/"): Control {
42
+ if (schema.type !== "array" || !schema.items || !schema.items.properties) {
43
+ throw new Error("[MetaUI] TableLayout requires an array schema with items.properties.");
27
44
  }
28
45
 
29
- const parts = bindingPath.split(">");
30
- const actualModelName = parts.length > 1 ? parts[0] : undefined;
31
- const actualPath = parts.length > 1 ? parts[1] : bindingPath;
32
- // e.g. "meta>/Contacts" -> actualModelName = "meta", actualPath = "/Contacts"
46
+ const tableTitle = schema.title || "Table";
47
+ const actualModelName = modelName;
48
+ const actualPath = bindingPath;
33
49
 
34
50
  const table = new Table({
35
51
  headerToolbar: new Toolbar({
36
52
  content: [
37
53
  new Title({ text: tableTitle }),
38
54
  new ToolbarSpacer(),
39
- new Button({
40
- text: "Add Row",
41
- icon: "sap-icon://add",
42
- press: (oEvent: any) => {
43
- const btn = oEvent.getSource();
44
- const tbl = btn.getParent().getParent() as Table;
45
- const model = tbl.getModel(actualModelName) as JSONModel;
46
- const info = tbl.getBindingInfo("items");
47
- if (!info || !info.path) return;
48
-
49
- const data = model.getProperty(info.path) || [];
50
- data.push({}); // append empty row
51
- model.setProperty(info.path, data);
52
- }
53
- })
55
+ ...(engine.isDisplayMode ? [] : [
56
+ new Button({
57
+ text: "Add Row",
58
+ icon: "sap-icon://add",
59
+ press: (oEvent: sap.ui.base.Event) => {
60
+ const btn = oEvent.getSource();
61
+ const tbl = btn.getParent().getParent() as Table;
62
+ const model = tbl.getModel(actualModelName) as JSONModel;
63
+ const info = tbl.getBindingInfo("items");
64
+ if (!info || !info.path) return;
65
+
66
+ const rawData = model.getProperty(info.path);
67
+ const data = Array.isArray(rawData) ? rawData : [];
68
+ const newData = [...data, {}];
69
+ model.setProperty(info.path, newData);
70
+ }
71
+ })
72
+ ])
54
73
  ]
55
74
  }),
56
75
  fixedLayout: false,
57
- mode: "Delete",
58
- delete: (oEvent: any) => {
76
+ mode: engine.isDisplayMode ? "None" : "Delete",
77
+ delete: (oEvent: sap.ui.base.Event) => {
59
78
  const item = oEvent.getParameter("listItem");
60
- const path = item.getBindingContext(actualModelName).getPath();
79
+ const path = item.getBindingContext(actualModelName).getPath();
61
80
  const model = item.getModel(actualModelName) as JSONModel;
62
-
81
+
63
82
  const splitPaths = path.split("/");
64
83
  const index = parseInt(splitPaths.pop() || "0", 10);
65
84
  let arrayPath = splitPaths.join("/");
66
85
  if (arrayPath === "") arrayPath = "/";
67
-
68
- const data = model.getProperty(arrayPath);
69
- data.splice(index, 1);
70
- model.setProperty(arrayPath, data);
86
+
87
+ const rawData = model.getProperty(arrayPath);
88
+ const data = Array.isArray(rawData) ? rawData : [];
89
+ const newData = [...data];
90
+ newData.splice(index, 1);
91
+ model.setProperty(arrayPath, newData);
71
92
  }
72
93
  });
73
94
 
74
95
  const templateCells: Control[] = [];
75
- const registry = PluginRegistry.getInstance();
76
- const props = tableMeta.properties;
77
-
78
- Object.keys(props).forEach((key) => {
79
- try {
80
- const fieldMeta = props[key];
81
- const isKey = !!fieldMeta.ui?.isKey;
82
-
83
- const column = new Column({
84
- header: new Text({ text: fieldMeta.ui?.label || key }),
85
- demandPopin: !isKey,
86
- minScreenWidth: isKey ? "" : "Tablet",
87
- popinDisplay: "Inline"
88
- });
89
- table.addColumn(column);
90
-
91
- const plugin = registry.getPlugin(fieldMeta.type, fieldMeta.ui?.widget);
92
- if (trackPlugin) trackPlugin(plugin);
93
- const control = plugin.render(fieldMeta, key, actualModelName); // No trailing slash for relative bindings
94
- templateCells.push(control);
95
- } catch (error) {
96
- sap.ui.require(["sap/base/Log"], (Log: any) => {
97
- if (Log) Log.error(`[MetaUI] Failed to render column ${key}`, (error as Error).message, "TableLayout");
98
- });
99
-
100
- // Add an empty text control as a fallback so the table columns match the cells array length
101
- templateCells.push(new Text({ text: "Error" }));
102
- }
103
- });
96
+ const props = schema.items.properties;
97
+ const layoutElements = schema.uiLayout;
98
+
99
+ if (layoutElements && Array.isArray(layoutElements)) {
100
+ // Only render columns defined in uiLayout
101
+ layoutElements.forEach((element: ILayoutElement) => {
102
+ if (element.type === "Control") {
103
+ if (!element.scope || !element.scope.startsWith("#/properties/")) {
104
+ Logger.error(`[MetaUI] Invalid scope '${element.scope}' in uiLayout Control for Table.`, "", "TableLayout");
105
+ return;
106
+ }
107
+
108
+ const propKey = element.scope.replace("#/properties/", "");
109
+ const fieldMeta = props[propKey];
110
+
111
+ if (!fieldMeta) {
112
+ Logger.error(`[MetaUI] Property '${propKey}' not found in schema definitions for Table.`, "", "TableLayout");
113
+ return;
114
+ }
115
+
116
+ try {
117
+ const isKey = !!fieldMeta.ui?.isKey;
118
+
119
+ const column = new Column({
120
+ header: new Text({ text: element.label || fieldMeta.ui?.label || propKey }),
121
+ demandPopin: !isKey,
122
+ minScreenWidth: isKey ? "" : "Tablet",
123
+ popinDisplay: "Inline"
124
+ });
125
+ table.addColumn(column);
126
+
127
+ // Override widget if specified in the layout element
128
+ const effectiveMeta = { ...fieldMeta };
129
+ if (element.widget) {
130
+ effectiveMeta.ui = { ...fieldMeta.ui, widget: element.widget };
131
+ }
132
+
133
+ // Use engine to generate fields natively and track validation
134
+ const control = engine.generateField(effectiveMeta, propKey, actualModelName || "meta", true);
135
+ templateCells.push(control);
136
+ } catch (error) {
137
+ const msg = (error as Error).message;
138
+ Logger.error(`[MetaUI] Failed to render column ${propKey}`, msg, "TableLayout");
139
+ Logger.showErrorPopup(`Failed to render table column '${propKey}'.\n\nDetails: ${msg}`);
140
+ templateCells.push(new Text({ text: "Error" }));
141
+ }
142
+ } else {
143
+ Logger.warn(`[MetaUI] Unsupported layout element type '${element.type}' inside TableLayout. Only 'Control' is supported for columns.`, "", "TableLayout");
144
+ }
145
+ });
146
+ } else {
147
+ Logger.debug("[MetaUI TableLayout]", "No uiLayout provided. Falling back to rendering all properties as columns.", "TableLayout");
148
+ // Fallback: If no uiLayout is provided, render all properties as columns
149
+ Object.keys(props).forEach((key) => {
150
+ try {
151
+ const fieldMeta = props[key];
152
+ const isKey = !!fieldMeta.ui?.isKey;
153
+
154
+ const column = new Column({
155
+ header: new Text({ text: fieldMeta.ui?.label || key }),
156
+ demandPopin: !isKey,
157
+ minScreenWidth: isKey ? "" : "Tablet",
158
+ popinDisplay: "Inline"
159
+ });
160
+ table.addColumn(column);
161
+
162
+ const control = engine.generateField(fieldMeta, key, actualModelName || "meta", true);
163
+ templateCells.push(control);
164
+ } catch (error) {
165
+ const msg = (error as Error).message;
166
+ Logger.error(`[MetaUI] Failed to render fallback column ${key}`, msg, "TableLayout");
167
+ Logger.showErrorPopup(`Failed to render fallback table column '${key}'.\n\nDetails: ${msg}`);
168
+ templateCells.push(new Text({ text: "Error" }));
169
+ }
170
+ });
171
+ }
172
+
173
+
104
174
 
105
175
  const rowTemplate = new ColumnListItem({
106
176
  cells: templateCells
107
177
  });
108
178
 
109
- // V2 Fix: Actually bind the items to the table!
110
179
  table.bindItems({
111
180
  path: actualPath,
112
181
  model: actualModelName,
@@ -0,0 +1,125 @@
1
+ sap.ui.define(["sap/m/Wizard", "sap/m/WizardStep", "sap/ui/layout/form/SimpleForm", "sap/m/Label", "../utils/Logger"], function (Wizard, WizardStep, SimpleForm, Label, ___utils_Logger) {
2
+ "use strict";
3
+
4
+ const Logger = ___utils_Logger["Logger"];
5
+ /**
6
+ * Layout Manager responsible for generating a responsive SAP Fiori Wizard.
7
+ * It segments the schema fields into discrete Wizard Steps based on `uiLayout` elements
8
+ * of type `Group` or `WizardStep`.
9
+ *
10
+ * @namespace nz.co.siliconst.ui5.metaui.layouts
11
+ * @public
12
+ */
13
+ class WizardLayout {
14
+ /**
15
+ * Renders the JSON Schema properties into a paginated UI5 Wizard using uiLayout.
16
+ *
17
+ * @param schema The active JSON schema object.
18
+ * @param modelName The bound UI5 model name.
19
+ * @param engine The central orchestrator for delegating plugin generation.
20
+ * @param onSubmit Hook executed when the Wizard's native 'complete' event is fired.
21
+ * @returns {Control} The generated sap.m.Wizard control.
22
+ */
23
+ render(schema, modelName, engine, onSubmit) {
24
+ const wizard = new Wizard({
25
+ renderMode: "Page",
26
+ showNextButton: true,
27
+ complete: function () {
28
+ if (onSubmit) onSubmit();
29
+ }
30
+ });
31
+ if (!schema.uiLayout || !Array.isArray(schema.uiLayout)) {
32
+ Logger.warn("[MetaUI] Missing 'uiLayout' array in wizard schema. Wizard will not render any steps.");
33
+ return wizard;
34
+ }
35
+ schema.uiLayout.forEach(element => {
36
+ if (element.type === "Group" || element.type === "WizardStep") {
37
+ const step = new WizardStep({
38
+ title: element.label || "Step",
39
+ validated: true // The PipelineManager handles global validation, wizard step validation can be local later
40
+ });
41
+ const form = new SimpleForm({
42
+ editable: true,
43
+ layout: "ResponsiveGridLayout",
44
+ labelSpanXL: 4,
45
+ labelSpanL: 4,
46
+ labelSpanM: 4,
47
+ labelSpanS: 12,
48
+ adjustLabelSpan: false,
49
+ emptySpanXL: 0,
50
+ emptySpanL: 0,
51
+ emptySpanM: 0,
52
+ emptySpanS: 0,
53
+ columnsXL: 1,
54
+ columnsL: 1,
55
+ columnsM: 1,
56
+ singleContainerFullSize: false
57
+ });
58
+ if (element.elements && Array.isArray(element.elements)) {
59
+ element.elements.forEach(childElement => {
60
+ this._renderElementInForm(form, childElement, schema, modelName, engine);
61
+ });
62
+ }
63
+ step.addContent(form);
64
+ wizard.addStep(step);
65
+ } else {
66
+ Logger.warn(`[MetaUI] Top-level element '${element.type}' inside WizardLayout must be 'Group' or 'WizardStep'.`, "", "WizardLayout");
67
+ }
68
+ });
69
+ return wizard;
70
+ }
71
+ _renderElementInForm(form, element, schema, modelName, engine) {
72
+ if (element.type === "Control") {
73
+ if (!element.scope || !element.scope.startsWith("#/properties/")) {
74
+ Logger.error(`[MetaUI] Invalid scope '${element.scope}' in uiLayout Control.`, "", "WizardLayout");
75
+ return;
76
+ }
77
+ const propKey = element.scope.replace("#/properties/", "");
78
+ const meta = schema.properties?.[propKey];
79
+ if (!meta) {
80
+ Logger.error(`[MetaUI] Property '${propKey}' not found in schema definitions.`, "", "WizardLayout");
81
+ return;
82
+ }
83
+ try {
84
+ const labelText = element.label || meta.ui?.label || propKey;
85
+ const label = new Label({
86
+ text: labelText,
87
+ required: meta.required
88
+ });
89
+ const effectiveMeta = {
90
+ ...meta
91
+ };
92
+ if (element.widget) {
93
+ effectiveMeta.ui = {
94
+ ...meta.ui,
95
+ widget: element.widget
96
+ };
97
+ }
98
+ const control = engine.generateField(effectiveMeta, `/${propKey}`, modelName);
99
+ if (effectiveMeta.ui?.fullWidth) {
100
+ sap.ui.require(["sap/ui/layout/GridData"], GridData => {
101
+ control.setLayoutData(new GridData({
102
+ span: "XL12 L12 M12 S12"
103
+ }));
104
+ });
105
+ }
106
+ form.addContent(label);
107
+ form.addContent(control);
108
+ } catch (error) {
109
+ Logger.error(`[MetaUI] Failed to render Wizard field ${propKey}`, error.message, "WizardLayout");
110
+ form.addContent(new Label({
111
+ text: propKey
112
+ }));
113
+ }
114
+ } else {
115
+ Logger.warn(`[MetaUI] Nested groups within Wizard steps are not fully supported in SimpleForm yet.`, "", "WizardLayout");
116
+ }
117
+ }
118
+ }
119
+ var __exports = {
120
+ __esModule: true
121
+ };
122
+ __exports.WizardLayout = WizardLayout;
123
+ return __exports;
124
+ });
125
+ //# sourceMappingURL=WizardLayout-dbg.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WizardLayout-dbg.js","names":["Logger","___utils_Logger","WizardLayout","render","schema","modelName","engine","onSubmit","wizard","Wizard","renderMode","showNextButton","complete","uiLayout","Array","isArray","warn","forEach","element","type","step","WizardStep","title","label","validated","form","SimpleForm","editable","layout","labelSpanXL","labelSpanL","labelSpanM","labelSpanS","adjustLabelSpan","emptySpanXL","emptySpanL","emptySpanM","emptySpanS","columnsXL","columnsL","columnsM","singleContainerFullSize","elements","childElement","_renderElementInForm","addContent","addStep","scope","startsWith","error","propKey","replace","meta","properties","labelText","ui","Label","text","required","effectiveMeta","widget","control","generateField","fullWidth","sap","require","GridData","setLayoutData","span","message","__exports","__esModule"],"sources":["WizardLayout.ts"],"sourcesContent":["/**\n * @file WizardLayout.ts\n * @description Generates a fully responsive SAP Fiori Wizard layout.\n */\n\nimport Wizard from \"sap/m/Wizard\";\nimport WizardStep from \"sap/m/WizardStep\";\nimport SimpleForm from \"sap/ui/layout/form/SimpleForm\";\nimport Label from \"sap/m/Label\";\nimport VBox from \"sap/m/VBox\";\nimport { IPropertyMetadata, ISchema, ILayoutElement } from \"../interfaces/ISchema\";\nimport { ILayoutManager } from \"../interfaces/ILayoutManager\";\nimport { Engine } from \"../core/Engine\";\nimport { Logger } from \"../utils/Logger\";\nimport Control from \"sap/ui/core/Control\";\n\n/**\n * Layout Manager responsible for generating a responsive SAP Fiori Wizard.\n * It segments the schema fields into discrete Wizard Steps based on `uiLayout` elements \n * of type `Group` or `WizardStep`.\n * \n * @namespace nz.co.siliconst.ui5.metaui.layouts\n * @public\n */\nexport class WizardLayout implements ILayoutManager {\n /**\n * Renders the JSON Schema properties into a paginated UI5 Wizard using uiLayout.\n * \n * @param schema The active JSON schema object.\n * @param modelName The bound UI5 model name.\n * @param engine The central orchestrator for delegating plugin generation.\n * @param onSubmit Hook executed when the Wizard's native 'complete' event is fired.\n * @returns {Control} The generated sap.m.Wizard control.\n */\n public render(schema: ISchema, modelName: string, engine: Engine, onSubmit?: () => void): Control {\n const wizard = new Wizard({\n renderMode: \"Page\",\n showNextButton: true,\n complete: function() {\n if (onSubmit) onSubmit();\n }\n });\n\n if (!schema.uiLayout || !Array.isArray(schema.uiLayout)) {\n Logger.warn(\"[MetaUI] Missing 'uiLayout' array in wizard schema. Wizard will not render any steps.\");\n return wizard;\n }\n\n schema.uiLayout.forEach((element: ILayoutElement) => {\n if (element.type === \"Group\" || element.type === \"WizardStep\") {\n const step = new WizardStep({\n title: element.label || \"Step\",\n validated: true // The PipelineManager handles global validation, wizard step validation can be local later\n });\n\n const form = new SimpleForm({\n editable: true,\n layout: \"ResponsiveGridLayout\",\n labelSpanXL: 4, labelSpanL: 4, labelSpanM: 4, labelSpanS: 12,\n adjustLabelSpan: false,\n emptySpanXL: 0, emptySpanL: 0, emptySpanM: 0, emptySpanS: 0,\n columnsXL: 1, columnsL: 1, columnsM: 1,\n singleContainerFullSize: false\n });\n \n if (element.elements && Array.isArray(element.elements)) {\n element.elements.forEach(childElement => {\n this._renderElementInForm(form, childElement, schema, modelName, engine);\n });\n }\n\n step.addContent(form);\n wizard.addStep(step);\n } else {\n Logger.warn(`[MetaUI] Top-level element '${element.type}' inside WizardLayout must be 'Group' or 'WizardStep'.`, \"\", \"WizardLayout\");\n }\n });\n\n return wizard;\n }\n\n private _renderElementInForm(form: SimpleForm, element: ILayoutElement, schema: ISchema, modelName: string, engine: Engine): void {\n if (element.type === \"Control\") {\n if (!element.scope || !element.scope.startsWith(\"#/properties/\")) {\n Logger.error(`[MetaUI] Invalid scope '${element.scope}' in uiLayout Control.`, \"\", \"WizardLayout\");\n return;\n }\n \n const propKey = element.scope.replace(\"#/properties/\", \"\");\n const meta = schema.properties?.[propKey];\n \n if (!meta) {\n Logger.error(`[MetaUI] Property '${propKey}' not found in schema definitions.`, \"\", \"WizardLayout\");\n return;\n }\n\n try {\n const labelText = element.label || meta.ui?.label || propKey;\n const label = new Label({\n text: labelText,\n required: meta.required\n });\n\n const effectiveMeta = { ...meta };\n if (element.widget) {\n effectiveMeta.ui = { ...meta.ui, widget: element.widget };\n }\n\n const control = engine.generateField(effectiveMeta, `/${propKey}`, modelName);\n\n if (effectiveMeta.ui?.fullWidth) {\n sap.ui.require([\"sap/ui/layout/GridData\"], (GridData: any) => {\n control.setLayoutData(new GridData({ span: \"XL12 L12 M12 S12\" }));\n });\n }\n\n form.addContent(label);\n form.addContent(control);\n } catch (error) {\n Logger.error(`[MetaUI] Failed to render Wizard field ${propKey}`, (error as Error).message, \"WizardLayout\");\n form.addContent(new Label({ text: propKey }));\n }\n } else {\n Logger.warn(`[MetaUI] Nested groups within Wizard steps are not fully supported in SimpleForm yet.`, \"\", \"WizardLayout\");\n }\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,28 @@
1
+ declare module "nz/co/siliconst/ui5/metaui/layouts/WizardLayout" {
2
+ import { ISchema } from "nz/co/siliconst/ui5/metaui/interfaces/ISchema";
3
+ import { ILayoutManager } from "nz/co/siliconst/ui5/metaui/interfaces/ILayoutManager";
4
+ import { Engine } from "nz/co/siliconst/ui5/metaui/core/Engine";
5
+ import Control from "sap/ui/core/Control";
6
+ /**
7
+ * Layout Manager responsible for generating a responsive SAP Fiori Wizard.
8
+ * It segments the schema fields into discrete Wizard Steps based on `uiLayout` elements
9
+ * of type `Group` or `WizardStep`.
10
+ *
11
+ * @namespace nz.co.siliconst.ui5.metaui.layouts
12
+ * @public
13
+ */
14
+ export class WizardLayout implements ILayoutManager {
15
+ /**
16
+ * Renders the JSON Schema properties into a paginated UI5 Wizard using uiLayout.
17
+ *
18
+ * @param schema The active JSON schema object.
19
+ * @param modelName The bound UI5 model name.
20
+ * @param engine The central orchestrator for delegating plugin generation.
21
+ * @param onSubmit Hook executed when the Wizard's native 'complete' event is fired.
22
+ * @returns {Control} The generated sap.m.Wizard control.
23
+ */
24
+ render(schema: ISchema, modelName: string, engine: Engine, onSubmit?: () => void): Control;
25
+ private _renderElementInForm;
26
+ }
27
+ }
28
+ //# sourceMappingURL=WizardLayout.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WizardLayout.d.ts","sourceRoot":"../../../../../../../..","sources":["src/nz/co/siliconst/ui5/metaui/layouts/WizardLayout.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,iDAAiD,CAAC;IAWjE,OAAO,EAAqB,OAAO,EAAkB,MAAM,+CAA+C,CAAC;IAC3G,OAAO,EAAE,cAAc,EAAE,MAAM,sDAAsD,CAAC;IACtF,OAAO,EAAE,MAAM,EAAE,MAAM,wCAAwC,CAAC;IAEhE,OAAO,OAAO,MAAM,qBAAqB,CAAC;IAE1C;;;;;;;OAOG;IACH,MAAa,YAAa,YAAW,cAAc;QAC/C;;;;;;;;WAQG;QACI,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,IAAI,GAAG,OAAO;QA+CjG,OAAO,CAAC,oBAAoB;KA6C/B;CAEA"}