udp-stencil-component-library 25.18.2-beta.4 → 25.18.2-beta.6

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 (536) hide show
  1. package/dist/cjs/add-map-feature-popup_4.cjs.entry.js +12 -12
  2. package/dist/cjs/advanced-search_12.cjs.entry.js +1 -1
  3. package/dist/cjs/ag-grid-base.ghost-render.grid-header.hint-panel.udp-dialog.udp-list-item.entry.cjs.js.map +1 -1
  4. package/dist/cjs/ag-grid-base_6.cjs.entry.js +27 -11
  5. package/dist/cjs/api-method-instance-grid.cjs.entry.js +1 -1
  6. package/dist/cjs/app-bar.cjs.entry.js +1 -1
  7. package/dist/cjs/check-box.cjs.entry.js +2 -2
  8. package/dist/cjs/chip-section.cjs.entry.js +2 -2
  9. package/dist/cjs/client-side-grid_2.cjs.entry.js +3 -3
  10. package/dist/cjs/date-time-renderer.file-upload-renderer.form-metadata-display-renderer.list-options-renderer.question-specific-configs-renderer.signature-renderer.text-input-renderer.entry.cjs.js.map +1 -1
  11. package/dist/cjs/date-time-renderer_7.cjs.entry.js +13 -13
  12. package/dist/cjs/entity-maintenance-grid.cjs.entry.js +1 -1
  13. package/dist/cjs/{enums-DVbZnzL8.js → enums-CgcTuQjC.js} +8 -2
  14. package/dist/cjs/enums-CgcTuQjC.js.map +1 -0
  15. package/dist/cjs/feature-details-card_2.cjs.entry.js +5 -5
  16. package/dist/cjs/filter-conditions_7.cjs.entry.js +2 -2
  17. package/dist/cjs/form-metadata-display.image-upload.signature-input.stencil-form.tally-display.udp-question.udp-question-comments.udp-save-draft-button.entry.cjs.js.map +1 -1
  18. package/dist/cjs/form-metadata-display_8.cjs.entry.js +15 -15
  19. package/dist/cjs/index-CGCOXUJE.js +10 -10
  20. package/dist/cjs/loader.cjs.js +1 -1
  21. package/dist/cjs/map-component_2.cjs.entry.js +2 -2
  22. package/dist/cjs/numeric-field_5.cjs.entry.js +15 -15
  23. package/dist/cjs/primary-action-header.udp-tabs.entry.cjs.js.map +1 -0
  24. package/dist/cjs/{primary-action-header_3.cjs.entry.js → primary-action-header_2.cjs.entry.js} +4 -266
  25. package/dist/cjs/question-configs-renderer.section-configs-renderer.udp-forms-builder-menu.udp-forms-builder-question-item.entry.cjs.js.map +1 -1
  26. package/dist/cjs/question-configs-renderer_4.cjs.entry.js +7 -7
  27. package/dist/cjs/resource-timeline-calendar.cjs.entry.js +1 -1
  28. package/dist/cjs/search-method-grid.cjs.entry.js +2 -1
  29. package/dist/cjs/search-method-grid.entry.cjs.js.map +1 -1
  30. package/dist/cjs/server-side-grid.cjs.entry.js +1 -1
  31. package/dist/cjs/side-sheet-container.cjs.entry.js +1 -1
  32. package/dist/cjs/stencil-library.cjs.js +1 -1
  33. package/dist/cjs/stencil-toggle.cjs.entry.js +4 -4
  34. package/dist/cjs/text-field_2.cjs.entry.js +7 -7
  35. package/dist/cjs/udp-chip_3.cjs.entry.js +1 -1
  36. package/dist/cjs/udp-container-query-grid-item.cjs.entry.js +1 -1
  37. package/dist/cjs/udp-container-query-grid.cjs.entry.js +1 -1
  38. package/dist/cjs/udp-container-query.cjs.entry.js +2 -2
  39. package/dist/cjs/udp-container.cjs.entry.js +35 -0
  40. package/dist/cjs/udp-container.entry.cjs.js.map +1 -0
  41. package/dist/cjs/udp-date-range-selector.cjs.entry.js +1 -1
  42. package/dist/cjs/udp-dynamic-container-with-menu.cjs.entry.js +1 -1
  43. package/dist/cjs/{udp-forms-builder-question-template-CNONS2l5.js → udp-forms-builder-question-template-BMMpObLX.js} +3 -3
  44. package/dist/cjs/udp-forms-builder-question-template-BMMpObLX.js.map +1 -0
  45. package/dist/cjs/udp-forms-builder.cjs.entry.js +2 -2
  46. package/dist/cjs/udp-forms-builder.entry.cjs.js.map +1 -1
  47. package/dist/cjs/udp-forms-follow-up-list-card.cjs.entry.js +3 -3
  48. package/dist/cjs/udp-forms-follow-up-list-card.entry.cjs.js.map +1 -1
  49. package/dist/cjs/udp-forms-list-card.cjs.entry.js +6 -6
  50. package/dist/cjs/udp-forms-list-card.entry.cjs.js.map +1 -1
  51. package/dist/cjs/udp-forms-list.cjs.entry.js +2 -2
  52. package/dist/cjs/udp-forms-list.entry.cjs.js.map +1 -1
  53. package/dist/cjs/udp-forms-renderer.cjs.entry.js +270 -202
  54. package/dist/cjs/udp-forms-renderer.entry.cjs.js.map +1 -1
  55. package/dist/cjs/udp-forms-ui.cjs.entry.js +6 -6
  56. package/dist/cjs/udp-forms-ui.entry.cjs.js.map +1 -1
  57. package/dist/cjs/udp-linear-loader.udp-side-sheet.entry.cjs.js.map +1 -0
  58. package/dist/cjs/udp-linear-loader_2.cjs.entry.js +289 -0
  59. package/dist/cjs/udp-map.cjs.entry.js +3 -3
  60. package/dist/cjs/udp-menu-item.udp-pop-over.entry.cjs.js.map +1 -0
  61. package/dist/cjs/{udp-pop-over.cjs.entry.js → udp-menu-item_2.cjs.entry.js} +23 -1
  62. package/dist/cjs/udp-page.cjs.entry.js +1 -1
  63. package/dist/cjs/udp-skeleton-loading.cjs.entry.js +1 -1
  64. package/dist/cjs/udp-split-screen.cjs.entry.js +1 -1
  65. package/dist/cjs/udp-stepper-demo.cjs.entry.js +1 -1
  66. package/dist/cjs/udp-tab-panel.cjs.entry.js +2 -2
  67. package/dist/cjs/udp-tab.cjs.entry.js +1 -1
  68. package/dist/cjs/udp-timeline-connector.cjs.entry.js +1 -1
  69. package/dist/cjs/udp-timeline-dot.cjs.entry.js +1 -1
  70. package/dist/cjs/udp-timeline-item.cjs.entry.js +2 -2
  71. package/dist/cjs/udp-timeline-separator.cjs.entry.js +1 -1
  72. package/dist/cjs/udp-timeline.cjs.entry.js +1 -1
  73. package/dist/cjs/udp-vertical-spacer.cjs.entry.js +1 -1
  74. package/dist/cjs/{utils-DZ_OMtAy.js → utils-Bp02BX38.js} +8 -8
  75. package/dist/cjs/utils-Bp02BX38.js.map +1 -0
  76. package/dist/collection/components/forms/udp-forms/udp-forms-builder/forms-builder-utils.js +1 -1
  77. package/dist/collection/components/forms/udp-forms/udp-forms-builder/forms-builder-utils.js.map +1 -1
  78. package/dist/collection/components/forms/udp-forms/udp-forms-builder/udp-forms-builder-item/date-time-renderer/date-time-renderer.js +3 -3
  79. package/dist/collection/components/forms/udp-forms/udp-forms-builder/udp-forms-builder-item/date-time-renderer/date-time-renderer.js.map +1 -1
  80. package/dist/collection/components/forms/udp-forms/udp-forms-builder/udp-forms-builder-item/file-upload-renderer/file-upload-renderer.js +4 -4
  81. package/dist/collection/components/forms/udp-forms/udp-forms-builder/udp-forms-builder-item/file-upload-renderer/file-upload-renderer.js.map +1 -1
  82. package/dist/collection/components/forms/udp-forms/udp-forms-builder/udp-forms-builder-item/form-metadata-display-renderer/form-metadata-display-renderer.js +5 -5
  83. package/dist/collection/components/forms/udp-forms/udp-forms-builder/udp-forms-builder-item/form-metadata-display-renderer/form-metadata-display-renderer.js.map +1 -1
  84. package/dist/collection/components/forms/udp-forms/udp-forms-builder/udp-forms-builder-item/list-option-renderer/list-options-renderer.js +5 -5
  85. package/dist/collection/components/forms/udp-forms/udp-forms-builder/udp-forms-builder-item/list-option-renderer/list-options-renderer.js.map +1 -1
  86. package/dist/collection/components/forms/udp-forms/udp-forms-builder/udp-forms-builder-item/question-configs-renderer/question-configs-renderer.js +6 -6
  87. package/dist/collection/components/forms/udp-forms/udp-forms-builder/udp-forms-builder-item/question-configs-renderer/question-configs-renderer.js.map +1 -1
  88. package/dist/collection/components/forms/udp-forms/udp-forms-builder/udp-forms-builder-item/question-specific-configs-renderer/question-specific-configs-renderer.js +1 -1
  89. package/dist/collection/components/forms/udp-forms/udp-forms-builder/udp-forms-builder-item/question-specific-configs-renderer/question-specific-configs-renderer.js.map +1 -1
  90. package/dist/collection/components/forms/udp-forms/udp-forms-builder/udp-forms-builder-item/signature-renderer/signature-renderer.js +3 -3
  91. package/dist/collection/components/forms/udp-forms/udp-forms-builder/udp-forms-builder-item/signature-renderer/signature-renderer.js.map +1 -1
  92. package/dist/collection/components/forms/udp-forms/udp-forms-builder/udp-forms-builder-item/text-input-renderer/text-input-renderer.js +4 -4
  93. package/dist/collection/components/forms/udp-forms/udp-forms-builder/udp-forms-builder-item/text-input-renderer/text-input-renderer.js.map +1 -1
  94. package/dist/collection/components/forms/udp-forms/udp-forms-builder/udp-forms-builder-question-template.js +1 -1
  95. package/dist/collection/components/forms/udp-forms/udp-forms-builder/udp-forms-builder-question-template.js.map +1 -1
  96. package/dist/collection/components/forms/udp-forms/udp-forms-builder/udp-forms-builder.js +3 -3
  97. package/dist/collection/components/forms/udp-forms/udp-forms-builder/udp-forms-builder.js.map +1 -1
  98. package/dist/collection/components/forms/udp-forms/udp-forms-list/udp-forms-list-card/udp-forms-list-card.js +7 -7
  99. package/dist/collection/components/forms/udp-forms/udp-forms-list/udp-forms-list-card/udp-forms-list-card.js.map +1 -1
  100. package/dist/collection/components/forms/udp-forms/udp-forms-list/udp-forms-list.js +2 -2
  101. package/dist/collection/components/forms/udp-forms/udp-forms-list/udp-forms-list.js.map +1 -1
  102. package/dist/collection/components/forms/udp-forms/udp-forms-renderer/udp-forms-renderer-follow-up-list-card/udp-forms-follow-up-list-card.js +3 -3
  103. package/dist/collection/components/forms/udp-forms/udp-forms-renderer/udp-forms-renderer-follow-up-list-card/udp-forms-follow-up-list-card.js.map +1 -1
  104. package/dist/collection/components/forms/udp-forms/udp-forms-renderer/udp-forms-renderer-ui/udp-forms-ui.js +13 -13
  105. package/dist/collection/components/forms/udp-forms/udp-forms-renderer/udp-forms-renderer-ui/udp-forms-ui.js.map +1 -1
  106. package/dist/collection/components/forms/udp-forms/udp-forms-renderer/udp-forms-renderer-utils.js +195 -0
  107. package/dist/collection/components/forms/udp-forms/udp-forms-renderer/udp-forms-renderer-utils.js.map +1 -0
  108. package/dist/collection/components/forms/udp-forms/udp-forms-renderer/udp-forms-renderer.js +86 -238
  109. package/dist/collection/components/forms/udp-forms/udp-forms-renderer/udp-forms-renderer.js.map +1 -1
  110. package/dist/collection/components/forms/udp-forms/udp-forms-utils/classes/UdpForm.js.map +1 -0
  111. package/dist/collection/components/forms/udp-forms/{utils → udp-forms-utils}/classes/UdpFormSubmission.js +4 -12
  112. package/dist/collection/components/forms/udp-forms/udp-forms-utils/classes/UdpFormSubmission.js.map +1 -0
  113. package/dist/collection/components/forms/udp-forms/{utils → udp-forms-utils}/enums.js +6 -0
  114. package/dist/collection/components/forms/udp-forms/udp-forms-utils/enums.js.map +1 -0
  115. package/dist/collection/components/forms/udp-forms/udp-forms-utils/form-handler/IFormHandler.js.map +1 -0
  116. package/dist/collection/components/forms/udp-forms/udp-forms-utils/form-handler/UdpFormHandler.js.map +1 -0
  117. package/dist/collection/components/forms/udp-forms/udp-forms-utils/form-submission-handler/FormSubmissionHandlerFactory.js.map +1 -0
  118. package/dist/collection/components/forms/udp-forms/udp-forms-utils/form-submission-handler/IFormSubmissionHandler.js.map +1 -0
  119. package/dist/collection/components/forms/udp-forms/{utils → udp-forms-utils}/form-submission-handler/PrivateFormSubmissionHandler.js +6 -4
  120. package/dist/collection/components/forms/udp-forms/udp-forms-utils/form-submission-handler/PrivateFormSubmissionHandler.js.map +1 -0
  121. package/dist/collection/components/forms/udp-forms/udp-forms-utils/form-submission-handler/PublicFormSubmissionHandler.js.map +1 -0
  122. package/dist/collection/components/forms/udp-forms/udp-forms-utils/form-submission-handler/formUtils.js.map +1 -0
  123. package/dist/collection/components/forms/udp-forms/udp-forms-utils/types.js.map +1 -0
  124. package/dist/collection/components/forms/udp-forms/{utils → udp-forms-utils}/utils.js +5 -5
  125. package/dist/collection/components/forms/udp-forms/udp-forms-utils/utils.js.map +1 -0
  126. package/dist/collection/components/forms/udp-forms/udp-question/udp-question-comment/udp-question-comments.js +10 -10
  127. package/dist/collection/components/forms/udp-forms/udp-question/udp-question-comment/udp-question-comments.js.map +1 -1
  128. package/dist/collection/components/forms/udp-forms/udp-question/udp-question.js +13 -13
  129. package/dist/collection/components/forms/udp-forms/udp-question/udp-question.js.map +1 -1
  130. package/dist/collection/components/grid/new-grid/ag-grid-base.js +2 -1
  131. package/dist/collection/components/grid/new-grid/ag-grid-base.js.map +1 -1
  132. package/dist/collection/components/grid/new-grid/api-method-instance-grid.js +1 -1
  133. package/dist/collection/components/grid/new-grid/client-side-grid.js +1 -1
  134. package/dist/collection/components/grid/new-grid/datasources/searchMethodDatasource.js +1 -0
  135. package/dist/collection/components/grid/new-grid/datasources/searchMethodDatasource.js.map +1 -1
  136. package/dist/collection/components/grid/new-grid/entity-maintenance-grid.js +1 -1
  137. package/dist/collection/components/grid/new-grid/gridFunctions/bulkActions.js +24 -9
  138. package/dist/collection/components/grid/new-grid/gridFunctions/bulkActions.js.map +1 -1
  139. package/dist/collection/components/grid/new-grid/interfaces/grid.js.map +1 -1
  140. package/dist/collection/components/grid/new-grid/search-method-grid.js +1 -1
  141. package/dist/collection/components/grid/new-grid/server-side-grid.js +1 -1
  142. package/dist/collection/components/grid/resource-timeline-calendar/resource-timeline-calendar.js +1 -1
  143. package/dist/collection/components/grid/resource-timeline-calendar/resource-timeline-primary-bar.js +2 -2
  144. package/dist/collection/components/inputs/checkbox/check-box.js +2 -2
  145. package/dist/collection/components/inputs/date-range-selector/udp-date-range-selector.js +1 -1
  146. package/dist/collection/components/inputs/date-selector/udp-date-selector.js +3 -3
  147. package/dist/collection/components/inputs/date-time-selector/udp-datetime-selector.js +3 -3
  148. package/dist/collection/components/inputs/form metadata display/form-metadata-display.js +2 -2
  149. package/dist/collection/components/inputs/form metadata display/form-metadata-display.js.map +1 -1
  150. package/dist/collection/components/inputs/image-upload/image-upload.js +1 -1
  151. package/dist/collection/components/inputs/numeric-field/numeric-field.js +3 -3
  152. package/dist/collection/components/inputs/signature-input/signature-input.js +2 -2
  153. package/dist/collection/components/inputs/tally/tally.js +2 -2
  154. package/dist/collection/components/inputs/text-area/text-area.js +3 -3
  155. package/dist/collection/components/inputs/text-field/text-field.js +3 -3
  156. package/dist/collection/components/inputs/time-selector/udp-time-selector.js +3 -3
  157. package/dist/collection/components/inputs/toggle/stencil-toggle.js +4 -4
  158. package/dist/collection/components/inputs/udp-selector/udp-selector.js +4 -4
  159. package/dist/collection/components/layout/udp-container/udp-container.js +2 -2
  160. package/dist/collection/components/layout/udp-container-query/udp-container-query.js +2 -2
  161. package/dist/collection/components/layout/udp-container-query-grid/udp-container-query-grid.js +1 -1
  162. package/dist/collection/components/layout/udp-container-query-grid-item/udp-container-query-grid-item.js +1 -1
  163. package/dist/collection/components/layout/udp-page/udp-page.js +1 -1
  164. package/dist/collection/components/layout/udp-split-screen/udp-split-screen.js +1 -1
  165. package/dist/collection/components/layout/udp-vertical-spacer.js +1 -1
  166. package/dist/collection/components/loaders/udp-grid-loader/udp-grid-loader.js +2 -2
  167. package/dist/collection/components/loaders/udp-linear-loader/udp-linear-loader.js +1 -1
  168. package/dist/collection/components/loaders/udp-skeleton-loading.js +1 -1
  169. package/dist/collection/components/map/udp-map/map-component.js +1 -1
  170. package/dist/collection/components/map/udp-map/popups/add-map-feature-popup.js +3 -3
  171. package/dist/collection/components/map/udp-map/popups/feature-details-card/feature-details-card.js +4 -4
  172. package/dist/collection/components/map/udp-map/popups/feature-details-popup.js +1 -1
  173. package/dist/collection/components/map/udp-map/popups/select-layer-popup.js +2 -2
  174. package/dist/collection/components/map/udp-map/popups/split-line-popup.js +1 -1
  175. package/dist/collection/components/map/udp-map/toolbar/map-toolbar.js +6 -6
  176. package/dist/collection/components/map/udp-map/udp-map-toolbar.js +1 -1
  177. package/dist/collection/components/map/udp-map/udp-map.js +3 -3
  178. package/dist/collection/components/menu/menu-item/udp-menu-item.js +1 -1
  179. package/dist/collection/components/menu/udp-menu.js +1 -1
  180. package/dist/collection/components/stepper/udp-stepper-demo.js +1 -1
  181. package/dist/collection/components/tabs/tab/tabs/udp-tabs.js +2 -2
  182. package/dist/collection/components/tabs/tab/udp-tab.js +1 -1
  183. package/dist/collection/components/tabs/udp-tab-panel/udp-tab-panel.js +2 -2
  184. package/dist/collection/components/timeline/udp-timeline-connector.js +1 -1
  185. package/dist/collection/components/timeline/udp-timeline-dot.js +1 -1
  186. package/dist/collection/components/timeline/udp-timeline-item.js +2 -2
  187. package/dist/collection/components/timeline/udp-timeline-separator.js +1 -1
  188. package/dist/collection/components/timeline/udp-timeline.js +1 -1
  189. package/dist/collection/components/toolbars/app-bar/app-bar.js +1 -1
  190. package/dist/collection/components/util/ghost-render/ghost-render.js +1 -1
  191. package/dist/collection/deprecated/components/side-sheet/side-sheet-container.js +1 -1
  192. package/dist/collection/deprecated/components/side-sheet/side-sheet.js +1 -1
  193. package/dist/collection/udp-utilities/layout/udp-dynamic-container-with-menu/chip-section/chip-section.js +2 -2
  194. package/dist/collection/udp-utilities/layout/udp-dynamic-container-with-menu/udp-dynamic-container-with-menu.js +1 -1
  195. package/dist/components/add-map-feature-popup2.js +3 -3
  196. package/dist/components/ag-grid-base2.js +78 -38
  197. package/dist/components/ag-grid-base2.js.map +1 -1
  198. package/dist/components/api-method-instance-grid.js +59 -35
  199. package/dist/components/api-method-instance-grid.js.map +1 -1
  200. package/dist/components/app-bar.js +1 -1
  201. package/dist/components/check-box.js +2 -2
  202. package/dist/components/chip-section.js +2 -2
  203. package/dist/components/client-side-grid2.js +55 -31
  204. package/dist/components/client-side-grid2.js.map +1 -1
  205. package/dist/components/date-time-renderer2.js.map +1 -1
  206. package/dist/components/entity-maintenance-grid.js +1 -1
  207. package/dist/components/enums.js +7 -1
  208. package/dist/components/enums.js.map +1 -1
  209. package/dist/components/feature-details-card2.js +4 -4
  210. package/dist/components/feature-details-popup2.js +1 -1
  211. package/dist/components/file-upload-renderer2.js +2 -2
  212. package/dist/components/file-upload-renderer2.js.map +1 -1
  213. package/dist/components/form-metadata-display-renderer2.js +3 -3
  214. package/dist/components/form-metadata-display-renderer2.js.map +1 -1
  215. package/dist/components/form-metadata-display2.js +1 -1
  216. package/dist/components/form-metadata-display2.js.map +1 -1
  217. package/dist/components/forms-builder-utils.js.map +1 -1
  218. package/dist/components/ghost-render2.js +1 -1
  219. package/dist/components/image-upload2.js +1 -1
  220. package/dist/components/list-options-renderer2.js +3 -3
  221. package/dist/components/list-options-renderer2.js.map +1 -1
  222. package/dist/components/map-component2.js +1 -1
  223. package/dist/components/map-toolbar2.js +6 -6
  224. package/dist/components/numeric-field2.js +3 -3
  225. package/dist/components/question-configs-renderer2.js +5 -5
  226. package/dist/components/question-configs-renderer2.js.map +1 -1
  227. package/dist/components/question-specific-configs-renderer2.js.map +1 -1
  228. package/dist/components/resource-timeline-calendar.js +59 -35
  229. package/dist/components/resource-timeline-calendar.js.map +1 -1
  230. package/dist/components/resource-timeline-primary-bar2.js +2 -2
  231. package/dist/components/search-method-grid2.js +58 -33
  232. package/dist/components/search-method-grid2.js.map +1 -1
  233. package/dist/components/select-layer-popup2.js +2 -2
  234. package/dist/components/server-side-grid2.js +55 -31
  235. package/dist/components/server-side-grid2.js.map +1 -1
  236. package/dist/components/side-sheet-container2.js +1 -1
  237. package/dist/components/side-sheet2.js +1 -1
  238. package/dist/components/signature-input2.js +2 -2
  239. package/dist/components/signature-renderer2.js +1 -1
  240. package/dist/components/signature-renderer2.js.map +1 -1
  241. package/dist/components/split-line-popup2.js +1 -1
  242. package/dist/components/stencil-toggle2.js +4 -4
  243. package/dist/components/tally.js +2 -2
  244. package/dist/components/text-area2.js +3 -3
  245. package/dist/components/text-field2.js +3 -3
  246. package/dist/components/text-input-renderer2.js +2 -2
  247. package/dist/components/text-input-renderer2.js.map +1 -1
  248. package/dist/components/udp-container-query-grid-item.js +1 -1
  249. package/dist/components/udp-container-query-grid.js +1 -1
  250. package/dist/components/udp-container-query2.js +2 -2
  251. package/dist/components/udp-container2.js +2 -2
  252. package/dist/components/udp-date-range-selector.js +1 -1
  253. package/dist/components/udp-date-selector2.js +3 -3
  254. package/dist/components/udp-datetime-selector2.js +3 -3
  255. package/dist/components/udp-dynamic-container-with-menu2.js +1 -1
  256. package/dist/components/udp-forms-builder.js.map +1 -1
  257. package/dist/components/udp-forms-follow-up-list-card.js +2 -2
  258. package/dist/components/udp-forms-follow-up-list-card.js.map +1 -1
  259. package/dist/components/udp-forms-list-card2.js +4 -4
  260. package/dist/components/udp-forms-list-card2.js.map +1 -1
  261. package/dist/components/udp-forms-list.js +1 -1
  262. package/dist/components/udp-forms-list.js.map +1 -1
  263. package/dist/components/udp-forms-renderer.js +273 -207
  264. package/dist/components/udp-forms-renderer.js.map +1 -1
  265. package/dist/components/udp-forms-ui2.js +6 -6
  266. package/dist/components/udp-forms-ui2.js.map +1 -1
  267. package/dist/components/udp-grid-loader2.js +2 -2
  268. package/dist/components/udp-linear-loader2.js +1 -1
  269. package/dist/components/udp-map-toolbar2.js +1 -1
  270. package/dist/components/udp-map.js +3 -3
  271. package/dist/components/udp-menu-item2.js +1 -1
  272. package/dist/components/udp-menu2.js +1 -1
  273. package/dist/components/udp-page.js +1 -1
  274. package/dist/components/udp-question-comments2.js +5 -5
  275. package/dist/components/udp-question-comments2.js.map +1 -1
  276. package/dist/components/udp-question2.js +4 -4
  277. package/dist/components/udp-question2.js.map +1 -1
  278. package/dist/components/udp-selector2.js +4 -4
  279. package/dist/components/udp-skeleton-loading2.js +1 -1
  280. package/dist/components/udp-split-screen.js +1 -1
  281. package/dist/components/udp-stepper-demo.js +1 -1
  282. package/dist/components/udp-tab-panel.js +2 -2
  283. package/dist/components/udp-tab.js +1 -1
  284. package/dist/components/udp-tabs2.js +2 -2
  285. package/dist/components/udp-time-selector2.js +3 -3
  286. package/dist/components/udp-timeline-connector.js +1 -1
  287. package/dist/components/udp-timeline-dot.js +1 -1
  288. package/dist/components/udp-timeline-item.js +2 -2
  289. package/dist/components/udp-timeline-separator.js +1 -1
  290. package/dist/components/udp-timeline.js +1 -1
  291. package/dist/components/udp-vertical-spacer.js +1 -1
  292. package/dist/components/utils.js +6 -6
  293. package/dist/components/utils.js.map +1 -1
  294. package/dist/docs.json +258 -205
  295. package/dist/esm/add-map-feature-popup_4.entry.js +12 -12
  296. package/dist/esm/advanced-search_12.entry.js +1 -1
  297. package/dist/esm/ag-grid-base.ghost-render.grid-header.hint-panel.udp-dialog.udp-list-item.entry.js.map +1 -1
  298. package/dist/esm/ag-grid-base_6.entry.js +27 -11
  299. package/dist/esm/api-method-instance-grid.entry.js +1 -1
  300. package/dist/esm/app-bar.entry.js +1 -1
  301. package/dist/esm/check-box.entry.js +2 -2
  302. package/dist/esm/chip-section.entry.js +2 -2
  303. package/dist/esm/client-side-grid_2.entry.js +3 -3
  304. package/dist/esm/date-time-renderer.file-upload-renderer.form-metadata-display-renderer.list-options-renderer.question-specific-configs-renderer.signature-renderer.text-input-renderer.entry.js.map +1 -1
  305. package/dist/esm/date-time-renderer_7.entry.js +13 -13
  306. package/dist/esm/entity-maintenance-grid.entry.js +1 -1
  307. package/dist/esm/{enums-CHxgVY-B.js → enums-DHT5wSnX.js} +9 -3
  308. package/dist/esm/enums-DHT5wSnX.js.map +1 -0
  309. package/dist/esm/feature-details-card_2.entry.js +5 -5
  310. package/dist/esm/filter-conditions_7.entry.js +2 -2
  311. package/dist/esm/form-metadata-display.image-upload.signature-input.stencil-form.tally-display.udp-question.udp-question-comments.udp-save-draft-button.entry.js.map +1 -1
  312. package/dist/esm/form-metadata-display_8.entry.js +15 -15
  313. package/dist/esm/index-CaZq3YdB.js +10 -10
  314. package/dist/esm/loader.js +1 -1
  315. package/dist/esm/map-component_2.entry.js +2 -2
  316. package/dist/esm/numeric-field_5.entry.js +15 -15
  317. package/dist/esm/primary-action-header.udp-tabs.entry.js.map +1 -0
  318. package/dist/esm/{primary-action-header_3.entry.js → primary-action-header_2.entry.js} +5 -262
  319. package/dist/esm/question-configs-renderer.section-configs-renderer.udp-forms-builder-menu.udp-forms-builder-question-item.entry.js.map +1 -1
  320. package/dist/esm/question-configs-renderer_4.entry.js +7 -7
  321. package/dist/esm/resource-timeline-calendar.entry.js +1 -1
  322. package/dist/esm/search-method-grid.entry.js +2 -1
  323. package/dist/esm/search-method-grid.entry.js.map +1 -1
  324. package/dist/esm/server-side-grid.entry.js +1 -1
  325. package/dist/esm/side-sheet-container.entry.js +1 -1
  326. package/dist/esm/stencil-library.js +1 -1
  327. package/dist/esm/stencil-toggle.entry.js +4 -4
  328. package/dist/esm/text-field_2.entry.js +7 -7
  329. package/dist/esm/udp-chip_3.entry.js +1 -1
  330. package/dist/esm/udp-container-query-grid-item.entry.js +1 -1
  331. package/dist/esm/udp-container-query-grid.entry.js +1 -1
  332. package/dist/esm/udp-container-query.entry.js +2 -2
  333. package/dist/esm/udp-container.entry.js +33 -0
  334. package/dist/esm/udp-container.entry.js.map +1 -0
  335. package/dist/esm/udp-date-range-selector.entry.js +1 -1
  336. package/dist/esm/udp-dynamic-container-with-menu.entry.js +1 -1
  337. package/dist/esm/{udp-forms-builder-question-template-DQJb7f4Y.js → udp-forms-builder-question-template-D6ADNZEG.js} +3 -3
  338. package/dist/esm/udp-forms-builder-question-template-D6ADNZEG.js.map +1 -0
  339. package/dist/esm/udp-forms-builder.entry.js +2 -2
  340. package/dist/esm/udp-forms-builder.entry.js.map +1 -1
  341. package/dist/esm/udp-forms-follow-up-list-card.entry.js +3 -3
  342. package/dist/esm/udp-forms-follow-up-list-card.entry.js.map +1 -1
  343. package/dist/esm/udp-forms-list-card.entry.js +6 -6
  344. package/dist/esm/udp-forms-list-card.entry.js.map +1 -1
  345. package/dist/esm/udp-forms-list.entry.js +2 -2
  346. package/dist/esm/udp-forms-list.entry.js.map +1 -1
  347. package/dist/esm/udp-forms-renderer.entry.js +270 -202
  348. package/dist/esm/udp-forms-renderer.entry.js.map +1 -1
  349. package/dist/esm/udp-forms-ui.entry.js +6 -6
  350. package/dist/esm/udp-forms-ui.entry.js.map +1 -1
  351. package/dist/esm/udp-linear-loader.udp-side-sheet.entry.js.map +1 -0
  352. package/dist/esm/udp-linear-loader_2.entry.js +282 -0
  353. package/dist/esm/udp-map.entry.js +3 -3
  354. package/dist/esm/udp-menu-item.udp-pop-over.entry.js.map +1 -0
  355. package/dist/esm/{udp-pop-over.entry.js → udp-menu-item_2.entry.js} +24 -3
  356. package/dist/esm/udp-page.entry.js +1 -1
  357. package/dist/esm/udp-skeleton-loading.entry.js +1 -1
  358. package/dist/esm/udp-split-screen.entry.js +1 -1
  359. package/dist/esm/udp-stepper-demo.entry.js +1 -1
  360. package/dist/esm/udp-tab-panel.entry.js +2 -2
  361. package/dist/esm/udp-tab.entry.js +1 -1
  362. package/dist/esm/udp-timeline-connector.entry.js +1 -1
  363. package/dist/esm/udp-timeline-dot.entry.js +1 -1
  364. package/dist/esm/udp-timeline-item.entry.js +2 -2
  365. package/dist/esm/udp-timeline-separator.entry.js +1 -1
  366. package/dist/esm/udp-timeline.entry.js +1 -1
  367. package/dist/esm/udp-vertical-spacer.entry.js +1 -1
  368. package/dist/esm/{utils-CiUp9KGZ.js → utils-kwLwITIE.js} +8 -8
  369. package/dist/esm/utils-kwLwITIE.js.map +1 -0
  370. package/dist/stencil-library/add-map-feature-popup_4.entry.js +1 -1
  371. package/dist/stencil-library/advanced-search_12.entry.js +1 -1
  372. package/dist/stencil-library/ag-grid-base.ghost-render.grid-header.hint-panel.udp-dialog.udp-list-item.entry.esm.js.map +1 -1
  373. package/dist/stencil-library/ag-grid-base_6.entry.js +1 -1
  374. package/dist/stencil-library/ag-grid-base_6.entry.js.map +1 -1
  375. package/dist/stencil-library/api-method-instance-grid.entry.js +1 -1
  376. package/dist/stencil-library/app-bar.entry.js +1 -1
  377. package/dist/stencil-library/check-box.entry.js +1 -1
  378. package/dist/stencil-library/chip-section.entry.js +1 -1
  379. package/dist/stencil-library/client-side-grid_2.entry.js +1 -1
  380. package/dist/stencil-library/date-time-renderer.file-upload-renderer.form-metadata-display-renderer.list-options-renderer.question-specific-configs-renderer.signature-renderer.text-input-renderer.entry.esm.js.map +1 -1
  381. package/dist/stencil-library/date-time-renderer_7.entry.js +1 -1
  382. package/dist/stencil-library/entity-maintenance-grid.entry.js +1 -1
  383. package/dist/stencil-library/{enums-CHxgVY-B.js → enums-DHT5wSnX.js} +2 -2
  384. package/dist/stencil-library/enums-DHT5wSnX.js.map +1 -0
  385. package/dist/stencil-library/feature-details-card_2.entry.js +1 -1
  386. package/dist/stencil-library/filter-conditions_7.entry.js +1 -1
  387. package/dist/stencil-library/form-metadata-display.image-upload.signature-input.stencil-form.tally-display.udp-question.udp-question-comments.udp-save-draft-button.entry.esm.js.map +1 -1
  388. package/dist/stencil-library/form-metadata-display_8.entry.js +1 -1
  389. package/dist/stencil-library/form-metadata-display_8.entry.js.map +1 -1
  390. package/dist/stencil-library/map-component_2.entry.js +1 -1
  391. package/dist/stencil-library/numeric-field_5.entry.js +1 -1
  392. package/dist/stencil-library/primary-action-header.udp-tabs.entry.esm.js.map +1 -0
  393. package/dist/stencil-library/primary-action-header_2.entry.js +2 -0
  394. package/dist/stencil-library/primary-action-header_2.entry.js.map +1 -0
  395. package/dist/stencil-library/question-configs-renderer.section-configs-renderer.udp-forms-builder-menu.udp-forms-builder-question-item.entry.esm.js.map +1 -1
  396. package/dist/stencil-library/question-configs-renderer_4.entry.js +1 -1
  397. package/dist/stencil-library/resource-timeline-calendar.entry.js +1 -1
  398. package/dist/stencil-library/search-method-grid.entry.esm.js.map +1 -1
  399. package/dist/stencil-library/search-method-grid.entry.js +1 -1
  400. package/dist/stencil-library/search-method-grid.entry.js.map +1 -1
  401. package/dist/stencil-library/server-side-grid.entry.js +1 -1
  402. package/dist/stencil-library/side-sheet-container.entry.js +1 -1
  403. package/dist/stencil-library/stencil-library.esm.js +1 -1
  404. package/dist/stencil-library/stencil-toggle.entry.js +1 -1
  405. package/dist/stencil-library/text-field_2.entry.js +1 -1
  406. package/dist/stencil-library/udp-chip_3.entry.js +1 -1
  407. package/dist/stencil-library/udp-container-query-grid-item.entry.js +1 -1
  408. package/dist/stencil-library/udp-container-query-grid.entry.js +1 -1
  409. package/dist/stencil-library/udp-container-query.entry.js +1 -1
  410. package/dist/stencil-library/udp-container.entry.esm.js.map +1 -0
  411. package/dist/stencil-library/udp-container.entry.js +2 -0
  412. package/dist/stencil-library/udp-container.entry.js.map +1 -0
  413. package/dist/stencil-library/udp-date-range-selector.entry.js +1 -1
  414. package/dist/stencil-library/udp-dynamic-container-with-menu.entry.js +1 -1
  415. package/dist/stencil-library/{udp-forms-builder-question-template-DQJb7f4Y.js → udp-forms-builder-question-template-D6ADNZEG.js} +2 -2
  416. package/dist/stencil-library/udp-forms-builder-question-template-D6ADNZEG.js.map +1 -0
  417. package/dist/stencil-library/udp-forms-builder.entry.esm.js.map +1 -1
  418. package/dist/stencil-library/udp-forms-builder.entry.js +1 -1
  419. package/dist/stencil-library/udp-forms-follow-up-list-card.entry.esm.js.map +1 -1
  420. package/dist/stencil-library/udp-forms-follow-up-list-card.entry.js +1 -1
  421. package/dist/stencil-library/udp-forms-list-card.entry.esm.js.map +1 -1
  422. package/dist/stencil-library/udp-forms-list-card.entry.js +1 -1
  423. package/dist/stencil-library/udp-forms-list-card.entry.js.map +1 -1
  424. package/dist/stencil-library/udp-forms-list.entry.esm.js.map +1 -1
  425. package/dist/stencil-library/udp-forms-list.entry.js +1 -1
  426. package/dist/stencil-library/udp-forms-renderer.entry.esm.js.map +1 -1
  427. package/dist/stencil-library/udp-forms-renderer.entry.js +1 -1
  428. package/dist/stencil-library/udp-forms-renderer.entry.js.map +1 -1
  429. package/dist/stencil-library/udp-forms-ui.entry.esm.js.map +1 -1
  430. package/dist/stencil-library/udp-forms-ui.entry.js +1 -1
  431. package/dist/stencil-library/udp-forms-ui.entry.js.map +1 -1
  432. package/dist/stencil-library/udp-linear-loader.udp-side-sheet.entry.esm.js.map +1 -0
  433. package/dist/stencil-library/udp-linear-loader_2.entry.js +2 -0
  434. package/dist/stencil-library/udp-linear-loader_2.entry.js.map +1 -0
  435. package/dist/stencil-library/udp-map.entry.js +1 -1
  436. package/dist/stencil-library/udp-menu-item.udp-pop-over.entry.esm.js.map +1 -0
  437. package/dist/stencil-library/udp-menu-item_2.entry.js +2 -0
  438. package/dist/stencil-library/udp-menu-item_2.entry.js.map +1 -0
  439. package/dist/stencil-library/udp-page.entry.js +1 -1
  440. package/dist/stencil-library/udp-skeleton-loading.entry.js +1 -1
  441. package/dist/stencil-library/udp-split-screen.entry.js +1 -1
  442. package/dist/stencil-library/udp-stepper-demo.entry.js +1 -1
  443. package/dist/stencil-library/udp-tab-panel.entry.js +1 -1
  444. package/dist/stencil-library/udp-tab.entry.js +1 -1
  445. package/dist/stencil-library/udp-timeline-connector.entry.js +1 -1
  446. package/dist/stencil-library/udp-timeline-dot.entry.js +1 -1
  447. package/dist/stencil-library/udp-timeline-item.entry.js +1 -1
  448. package/dist/stencil-library/udp-timeline-item.entry.js.map +1 -1
  449. package/dist/stencil-library/udp-timeline-separator.entry.js +1 -1
  450. package/dist/stencil-library/udp-timeline.entry.js +1 -1
  451. package/dist/stencil-library/udp-vertical-spacer.entry.js +1 -1
  452. package/dist/stencil-library/{utils-CiUp9KGZ.js → utils-kwLwITIE.js} +1 -1
  453. package/dist/stencil-library/utils-kwLwITIE.js.map +1 -0
  454. package/dist/types/components/forms/udp-forms/udp-forms-builder/forms-builder-utils.d.ts +2 -2
  455. package/dist/types/components/forms/udp-forms/udp-forms-builder/udp-forms-builder-item/date-time-renderer/date-time-renderer.d.ts +1 -1
  456. package/dist/types/components/forms/udp-forms/udp-forms-builder/udp-forms-builder-item/file-upload-renderer/file-upload-renderer.d.ts +1 -1
  457. package/dist/types/components/forms/udp-forms/udp-forms-builder/udp-forms-builder-item/form-metadata-display-renderer/form-metadata-display-renderer.d.ts +1 -1
  458. package/dist/types/components/forms/udp-forms/udp-forms-builder/udp-forms-builder-item/list-option-renderer/list-options-renderer.d.ts +1 -1
  459. package/dist/types/components/forms/udp-forms/udp-forms-builder/udp-forms-builder-item/signature-renderer/signature-renderer.d.ts +1 -1
  460. package/dist/types/components/forms/udp-forms/udp-forms-builder/udp-forms-builder-item/text-input-renderer/text-input-renderer.d.ts +1 -1
  461. package/dist/types/components/forms/udp-forms/udp-forms-builder/udp-forms-builder-question-template.d.ts +1 -1
  462. package/dist/types/components/forms/udp-forms/udp-forms-builder/udp-forms-builder.d.ts +2 -2
  463. package/dist/types/components/forms/udp-forms/udp-forms-renderer/udp-forms-renderer-ui/udp-forms-ui.d.ts +4 -4
  464. package/dist/types/components/forms/udp-forms/udp-forms-renderer/udp-forms-renderer-utils.d.ts +12 -0
  465. package/dist/types/components/forms/udp-forms/udp-forms-renderer/udp-forms-renderer.d.ts +4 -9
  466. package/dist/types/components/forms/udp-forms/{utils → udp-forms-utils}/classes/UdpFormSubmission.d.ts +4 -5
  467. package/dist/types/components/forms/udp-forms/{utils → udp-forms-utils}/enums.d.ts +5 -0
  468. package/dist/types/components/forms/udp-forms/{utils → udp-forms-utils}/types.d.ts +0 -1
  469. package/dist/types/components/forms/udp-forms/{utils → udp-forms-utils}/utils.d.ts +1 -1
  470. package/dist/types/components/forms/udp-forms/udp-question/udp-question-comment/udp-question-comments.d.ts +2 -2
  471. package/dist/types/components/forms/udp-forms/udp-question/udp-question.d.ts +4 -4
  472. package/dist/types/components/grid/new-grid/gridFunctions/bulkActions.d.ts +4 -2
  473. package/dist/types/components/grid/new-grid/interfaces/grid.d.ts +1 -0
  474. package/dist/types/components.d.ts +32 -30
  475. package/package.json +1 -1
  476. package/dist/cjs/enums-DVbZnzL8.js.map +0 -1
  477. package/dist/cjs/primary-action-header.udp-side-sheet.udp-tabs.entry.cjs.js.map +0 -1
  478. package/dist/cjs/udp-container.udp-linear-loader.entry.cjs.js.map +0 -1
  479. package/dist/cjs/udp-container_2.cjs.entry.js +0 -56
  480. package/dist/cjs/udp-forms-builder-question-template-CNONS2l5.js.map +0 -1
  481. package/dist/cjs/udp-menu-item.cjs.entry.js +0 -27
  482. package/dist/cjs/udp-menu-item.entry.cjs.js.map +0 -1
  483. package/dist/cjs/udp-pop-over.entry.cjs.js.map +0 -1
  484. package/dist/cjs/utils-DZ_OMtAy.js.map +0 -1
  485. package/dist/collection/components/forms/udp-forms/utils/classes/UdpForm.js.map +0 -1
  486. package/dist/collection/components/forms/udp-forms/utils/classes/UdpFormSubmission.js.map +0 -1
  487. package/dist/collection/components/forms/udp-forms/utils/enums.js.map +0 -1
  488. package/dist/collection/components/forms/udp-forms/utils/form-handler/IFormHandler.js.map +0 -1
  489. package/dist/collection/components/forms/udp-forms/utils/form-handler/UdpFormHandler.js.map +0 -1
  490. package/dist/collection/components/forms/udp-forms/utils/form-submission-handler/FormSubmissionHandlerFactory.js.map +0 -1
  491. package/dist/collection/components/forms/udp-forms/utils/form-submission-handler/IFormSubmissionHandler.js.map +0 -1
  492. package/dist/collection/components/forms/udp-forms/utils/form-submission-handler/PrivateFormSubmissionHandler.js.map +0 -1
  493. package/dist/collection/components/forms/udp-forms/utils/form-submission-handler/PublicFormSubmissionHandler.js.map +0 -1
  494. package/dist/collection/components/forms/udp-forms/utils/form-submission-handler/formUtils.js.map +0 -1
  495. package/dist/collection/components/forms/udp-forms/utils/types.js.map +0 -1
  496. package/dist/collection/components/forms/udp-forms/utils/utils.js.map +0 -1
  497. package/dist/esm/enums-CHxgVY-B.js.map +0 -1
  498. package/dist/esm/primary-action-header.udp-side-sheet.udp-tabs.entry.js.map +0 -1
  499. package/dist/esm/udp-container.udp-linear-loader.entry.js.map +0 -1
  500. package/dist/esm/udp-container_2.entry.js +0 -53
  501. package/dist/esm/udp-forms-builder-question-template-DQJb7f4Y.js.map +0 -1
  502. package/dist/esm/udp-menu-item.entry.js +0 -25
  503. package/dist/esm/udp-menu-item.entry.js.map +0 -1
  504. package/dist/esm/udp-pop-over.entry.js.map +0 -1
  505. package/dist/esm/utils-CiUp9KGZ.js.map +0 -1
  506. package/dist/stencil-library/enums-CHxgVY-B.js.map +0 -1
  507. package/dist/stencil-library/primary-action-header.udp-side-sheet.udp-tabs.entry.esm.js.map +0 -1
  508. package/dist/stencil-library/primary-action-header_3.entry.js +0 -2
  509. package/dist/stencil-library/primary-action-header_3.entry.js.map +0 -1
  510. package/dist/stencil-library/udp-container.udp-linear-loader.entry.esm.js.map +0 -1
  511. package/dist/stencil-library/udp-container_2.entry.js +0 -2
  512. package/dist/stencil-library/udp-container_2.entry.js.map +0 -1
  513. package/dist/stencil-library/udp-forms-builder-question-template-DQJb7f4Y.js.map +0 -1
  514. package/dist/stencil-library/udp-menu-item.entry.esm.js.map +0 -1
  515. package/dist/stencil-library/udp-menu-item.entry.js +0 -2
  516. package/dist/stencil-library/udp-menu-item.entry.js.map +0 -1
  517. package/dist/stencil-library/udp-pop-over.entry.esm.js.map +0 -1
  518. package/dist/stencil-library/udp-pop-over.entry.js +0 -2
  519. package/dist/stencil-library/udp-pop-over.entry.js.map +0 -1
  520. package/dist/stencil-library/utils-CiUp9KGZ.js.map +0 -1
  521. /package/dist/collection/components/forms/udp-forms/{utils → udp-forms-utils}/classes/UdpForm.js +0 -0
  522. /package/dist/collection/components/forms/udp-forms/{utils → udp-forms-utils}/form-handler/IFormHandler.js +0 -0
  523. /package/dist/collection/components/forms/udp-forms/{utils → udp-forms-utils}/form-handler/UdpFormHandler.js +0 -0
  524. /package/dist/collection/components/forms/udp-forms/{utils → udp-forms-utils}/form-submission-handler/FormSubmissionHandlerFactory.js +0 -0
  525. /package/dist/collection/components/forms/udp-forms/{utils → udp-forms-utils}/form-submission-handler/IFormSubmissionHandler.js +0 -0
  526. /package/dist/collection/components/forms/udp-forms/{utils → udp-forms-utils}/form-submission-handler/PublicFormSubmissionHandler.js +0 -0
  527. /package/dist/collection/components/forms/udp-forms/{utils → udp-forms-utils}/form-submission-handler/formUtils.js +0 -0
  528. /package/dist/collection/components/forms/udp-forms/{utils → udp-forms-utils}/types.js +0 -0
  529. /package/dist/types/components/forms/udp-forms/{utils → udp-forms-utils}/classes/UdpForm.d.ts +0 -0
  530. /package/dist/types/components/forms/udp-forms/{utils → udp-forms-utils}/form-handler/IFormHandler.d.ts +0 -0
  531. /package/dist/types/components/forms/udp-forms/{utils → udp-forms-utils}/form-handler/UdpFormHandler.d.ts +0 -0
  532. /package/dist/types/components/forms/udp-forms/{utils → udp-forms-utils}/form-submission-handler/FormSubmissionHandlerFactory.d.ts +0 -0
  533. /package/dist/types/components/forms/udp-forms/{utils → udp-forms-utils}/form-submission-handler/IFormSubmissionHandler.d.ts +0 -0
  534. /package/dist/types/components/forms/udp-forms/{utils → udp-forms-utils}/form-submission-handler/PrivateFormSubmissionHandler.d.ts +0 -0
  535. /package/dist/types/components/forms/udp-forms/{utils → udp-forms-utils}/form-submission-handler/PublicFormSubmissionHandler.d.ts +0 -0
  536. /package/dist/types/components/forms/udp-forms/{utils → udp-forms-utils}/form-submission-handler/formUtils.d.ts +0 -0
@@ -20,7 +20,7 @@ const UdpContainerQueryGridItem = class {
20
20
  .join('\n');
21
21
  }
22
22
  render() {
23
- return (index.h(index.Host, { key: 'a12c7a9e3567019bfa3129cf0b45b9e5f9454044' }, index.h("style", { key: 'c41e5e648f8a78f965ff1044479ca1e7c785b598' }, this.getSpanStyles()), index.h("slot", { key: 'a6ac351a5a3ec74ce36667cdef91c88c1459482a' })));
23
+ return (index.h(index.Host, { key: '9e1c6d6c0f8011400b6271af8bcdbf5574d725dc' }, index.h("style", { key: '6243776119bad211fe96af76fdc18d8fe4b8aa1e' }, this.getSpanStyles()), index.h("slot", { key: '57c8cab142be8b9fcd66509c70bd0e01a08b08d8' })));
24
24
  }
25
25
  };
26
26
  UdpContainerQueryGridItem.style = udpContainerQueryGridItemCss;
@@ -34,7 +34,7 @@ const UdpContainerQueryGrid = class {
34
34
  gap: `${this.gaps[breakpoint]}rem`,
35
35
  }));
36
36
  });
37
- return (index.h(index.Host, { key: '63e6f7902336ffc08bd3bb251907877325cf0d12' }, index.h("udp-container-query", { key: 'c8206e4612990b72e81105673e2c72e3e63410bb', queries: queries }, index.h("div", { key: 'cc01e88216ba2dd069ad1cd194ceb8c5026b4a37', class: "grid-container" }, index.h("slot", { key: '37b9a99849d97ef8e8c33d1e401f90b919115a51' }))), index.h("style", { key: '4ec725b30fc8e830798e4816ae1bc0c5a9b38fd4' }, `
37
+ return (index.h(index.Host, { key: '8fcf614cb145b65faa50f9cd77f2196931e5ac3e' }, index.h("udp-container-query", { key: '7f9e61025ff57faae311f536f479e36360334b44', queries: queries }, index.h("div", { key: 'c810de4cea74a5278556751f9148123e91ad7f21', class: "grid-container" }, index.h("slot", { key: '71a1ab5854110ebfaaab31bc76751d8925881801' }))), index.h("style", { key: '39d63f3510f1bf7abc892c3131480c71b969cb5d' }, `
38
38
  .grid-container {
39
39
  display: grid;
40
40
  grid-template-columns: repeat(${this.columns[0]}, 1fr);
@@ -27,9 +27,9 @@ const UdpContainerQuery = class {
27
27
  return styleRules;
28
28
  }
29
29
  render() {
30
- return (index.h(index.Host, { key: '9bc9f62ca83c3c794e909ee966947675fb9870da', class: {
30
+ return (index.h(index.Host, { key: 'abba69fdcf35ed43f74dea1cfa19a6e7e9ae80d2', class: {
31
31
  [this.customClass]: !!this.customClass,
32
- } }, index.h("style", { key: '43ba2fd574da0e60066064c06413a84004e57d83' }, this.getContainerQueryStyle()), index.h("slot", { key: '17633bfe61d8993a986de0263a4a68399d0f9262' })));
32
+ } }, index.h("style", { key: 'dc349f2310a763938cd017553a49296e397cf645' }, this.getContainerQueryStyle()), index.h("slot", { key: '481e4dfe1f0f7a7fcf153461d5f3a0cfae6ecfee' })));
33
33
  }
34
34
  };
35
35
  UdpContainerQuery.style = udpContainerQueryCss;
@@ -0,0 +1,35 @@
1
+ 'use strict';
2
+
3
+ var index = require('./index-CGCOXUJE.js');
4
+
5
+ const udpContainerCss = ":host{display:block;width:100%}.udp-container{width:100%;margin-left:auto;margin-right:auto;box-sizing:border-box}.udp-container--padded{padding-left:1rem;padding-right:1rem}.udp-container--fluid{max-width:100%}.udp-container--sm{max-width:640px}.udp-container--md{max-width:768px}.udp-container--lg{max-width:1024px}.udp-container--xl{max-width:1280px}.udp-container--2xl{max-width:1536px}";
6
+
7
+ const UdpContainer = class {
8
+ constructor(hostRef) {
9
+ index.registerInstance(this, hostRef);
10
+ /**
11
+ * If true, the container will be fluid (100% width at all breakpoints)
12
+ */
13
+ this.fluid = false;
14
+ /**
15
+ * Maximum width for the container at different breakpoints
16
+ */
17
+ this.maxWidth = 'lg';
18
+ /**
19
+ * Add padding to the container
20
+ */
21
+ this.padding = true;
22
+ }
23
+ render() {
24
+ return (index.h("div", { key: 'fb6ff14c09a223d0181b361acc1243f070e062e3', class: {
25
+ 'udp-container': true,
26
+ 'udp-container--fluid': this.fluid,
27
+ 'udp-container--padded': this.padding,
28
+ [`udp-container--${this.maxWidth}`]: true,
29
+ } }, index.h("slot", { key: '00a20124101fcbed8deef25139de5598b44f178a' })));
30
+ }
31
+ };
32
+ UdpContainer.style = udpContainerCss;
33
+
34
+ exports.udp_container = UdpContainer;
35
+ //# sourceMappingURL=udp-container.entry.cjs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"udp-container.entry.cjs.js","sources":["src/components/layout/udp-container/udp-container.css?tag=udp-container&encapsulation=shadow","src/components/layout/udp-container/udp-container.tsx"],"sourcesContent":[":host {\n display: block;\n width: 100%;\n}\n\n.udp-container {\n width: 100%;\n margin-left: auto;\n margin-right: auto;\n box-sizing: border-box;\n}\n\n.udp-container--padded {\n padding-left: 1rem;\n padding-right: 1rem;\n}\n\n/* Fluid container takes full width */\n.udp-container--fluid {\n max-width: 100%;\n}\n\n/* Responsive container max-widths */\n.udp-container--sm {\n max-width: 640px;\n}\n\n.udp-container--md {\n max-width: 768px;\n}\n\n.udp-container--lg {\n max-width: 1024px;\n}\n\n.udp-container--xl {\n max-width: 1280px;\n}\n\n.udp-container--2xl {\n max-width: 1536px;\n} ","import { Component, Prop, h } from '@stencil/core';\n\n@Component({\n tag: 'udp-container',\n styleUrl: 'udp-container.css',\n shadow: true,\n})\nexport class UdpContainer {\n /**\n * If true, the container will be fluid (100% width at all breakpoints)\n */\n @Prop() fluid: boolean = false;\n\n /**\n * Maximum width for the container at different breakpoints\n */\n @Prop() maxWidth: 'sm' | 'md' | 'lg' | 'xl' | '2xl' = 'lg';\n\n /**\n * Add padding to the container\n */\n @Prop() padding: boolean = true;\n\n render() {\n return (\n <div\n class={{\n 'udp-container': true,\n 'udp-container--fluid': this.fluid,\n 'udp-container--padded': this.padding,\n [`udp-container--${this.maxWidth}`]: true,\n }}\n >\n <slot></slot>\n </div>\n );\n }\n}\n"],"names":["h"],"mappings":";;;;AAAA,MAAM,eAAe,GAAG,wYAAwY;;MCOnZ,YAAY,GAAA,MAAA;AALzB,IAAA,WAAA,CAAA,OAAA,EAAA;;AAME;;AAEG;AACK,QAAA,IAAK,CAAA,KAAA,GAAY,KAAK;AAE9B;;AAEG;AACK,QAAA,IAAQ,CAAA,QAAA,GAAsC,IAAI;AAE1D;;AAEG;AACK,QAAA,IAAO,CAAA,OAAA,GAAY,IAAI;AAgBhC;IAdC,MAAM,GAAA;QACJ,QACEA,OACE,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAE;AACL,gBAAA,eAAe,EAAE,IAAI;gBACrB,sBAAsB,EAAE,IAAI,CAAC,KAAK;gBAClC,uBAAuB,EAAE,IAAI,CAAC,OAAO;AACrC,gBAAA,CAAC,kBAAkB,IAAI,CAAC,QAAQ,CAAE,CAAA,GAAG,IAAI;AAC1C,aAAA,EAAA,EAEDA,OAAa,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,CAAA,CACT;;;;;;;"}
@@ -35,7 +35,7 @@ const UdpDateRangeSelector = class {
35
35
  : this.variant === 'single'
36
36
  ? 'calendar-date'
37
37
  : 'calendar-range';
38
- return (index.h(index.Host, { key: '98fb48f793658c67a5ae8e84daa712295a9e3080', style: { '--calendar-width': this.width } }, index.h(CalendarTag, { key: '03bd3adc716431fcfc7da2ab6bc40ccb804e9113', value: this.value, min: this.minDate, max: this.maxDate, firstDayOfWeek: 0, months: this.monthsToDisplay, showOutsideDays: true, pageBy: "single", isDateDisallowed: this.isDateDisallowed, getDayParts: this.getDayParts, onChange: this.handleChange }, index.h("udp-icon", { key: '7f8a4aa9e0ecebdc6e806c3d20fe9fb55559e0ab', slot: "previous", iconName: 'chevronLeft16', color: "inherit" }), index.h("udp-icon", { key: 'ab0efbca0d3bd404c2e9fe43864eac1f156a73d0', slot: "next", iconName: 'chevronRight16', color: "inherit" }), index.h("div", { key: 'aadb14be39e4ef95630514ae378aa254bcfb2d53', class: "grid" }, Array.from({ length: this.monthsToDisplay }).map((_, index$1) => (index.h("calendar-month", { offset: index$1 })))))));
38
+ return (index.h(index.Host, { key: '872a0ac12d8ba50108eb2c996f5c68d853fe538b', style: { '--calendar-width': this.width } }, index.h(CalendarTag, { key: 'e1348c050e9b49f4a5826bd5f6b07be7e6e2ed2b', value: this.value, min: this.minDate, max: this.maxDate, firstDayOfWeek: 0, months: this.monthsToDisplay, showOutsideDays: true, pageBy: "single", isDateDisallowed: this.isDateDisallowed, getDayParts: this.getDayParts, onChange: this.handleChange }, index.h("udp-icon", { key: 'eaf925e2c0ad13010adc17825dd012377e736a69', slot: "previous", iconName: 'chevronLeft16', color: "inherit" }), index.h("udp-icon", { key: '1bc7f790f4b310fd80ed48824b63acef742ef196', slot: "next", iconName: 'chevronRight16', color: "inherit" }), index.h("div", { key: 'df184ba087089ce5e53ea80d1cda01e6428e36f3', class: "grid" }, Array.from({ length: this.monthsToDisplay }).map((_, index$1) => (index.h("calendar-month", { offset: index$1 })))))));
39
39
  }
40
40
  };
41
41
  UdpDateRangeSelector.style = udpDateRangeSelectorCss;
@@ -121,7 +121,7 @@ const DynamicContainerWithMenu = class {
121
121
  this.udpChipClicked.emit(chipText);
122
122
  }
123
123
  render() {
124
- return (index.h("div", { key: '7aa41191a2fd7b8852f465ac8a1957fb57a9791d', class: "container" }, index.h("div", { key: 'd62603a8717a3b95f6d4552c6ba44ad58885da3c', class: "chips" }, console.log('Received data for chips via executeQwith', this.visibleChildren), this.visibleChildren && this.visibleChildren.map((child, index$1) => (index.h("stencil-chip", { color: "secondary", key: index$1, text: child.description, "show-delete": "false", externalToggleString: this.externalToggle })))), index.h("div", { key: '584c495f74c2f53a0c6b53e3b23fe1dbbba481f4', class: "overflow" }, index.h("udp-pop-over", { key: '8ee9fb7ca327b54f6bf120d1e57fed80eb7211b4', isOpen: this.popoverOpen, anchorElement: document.getElementById('anchorElement') }, index.h("div", { key: '84ed96340e2c4eb20ee83dafb868301eea36b939', class: "menu" }, this.menuChildren && this.menuChildren.map((child, index$1) => (index.h("stencil-chip", { key: index$1, text: child.label, "show-delete": "false" }, " "))))))));
124
+ return (index.h("div", { key: 'f09bf517019dc24f5a721b4c8be5856eb0b457ac', class: "container" }, index.h("div", { key: '6881c4b03240b798a2377957131d824a6086f2a0', class: "chips" }, console.log('Received data for chips via executeQwith', this.visibleChildren), this.visibleChildren && this.visibleChildren.map((child, index$1) => (index.h("stencil-chip", { color: "secondary", key: index$1, text: child.description, "show-delete": "false", externalToggleString: this.externalToggle })))), index.h("div", { key: '039f9472b7beb854f632859ba4c4718bea5a05c8', class: "overflow" }, index.h("udp-pop-over", { key: '358e339b4e83af974cd5470a593638becac83754', isOpen: this.popoverOpen, anchorElement: document.getElementById('anchorElement') }, index.h("div", { key: 'ec28e9f5ad344f13d319da7576188200044c60f5', class: "menu" }, this.menuChildren && this.menuChildren.map((child, index$1) => (index.h("stencil-chip", { key: index$1, text: child.label, "show-delete": "false" }, " "))))))));
125
125
  }
126
126
  get el() { return index.getElement(this); }
127
127
  static get watchers() { return {
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var enums = require('./enums-DVbZnzL8.js');
3
+ var enums = require('./enums-CgcTuQjC.js');
4
4
 
5
5
  const deepCloneFormSections = (formSections) => {
6
6
  return structuredClone(formSections);
@@ -388,6 +388,6 @@ exports.formMetadataDefault = formMetadataDefault;
388
388
  exports.formSectionDefault = formSectionDefault;
389
389
  exports.questionsTemplate = questionsTemplate;
390
390
  exports.styleOverrideDefault = styleOverrideDefault;
391
- //# sourceMappingURL=udp-forms-builder-question-template-CNONS2l5.js.map
391
+ //# sourceMappingURL=udp-forms-builder-question-template-BMMpObLX.js.map
392
392
 
393
- //# sourceMappingURL=udp-forms-builder-question-template-CNONS2l5.js.map
393
+ //# sourceMappingURL=udp-forms-builder-question-template-BMMpObLX.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"udp-forms-builder-question-template-BMMpObLX.js","sources":["src/components/forms/udp-forms/udp-forms-builder/forms-builder-utils.ts","src/components/forms/udp-forms/udp-forms-builder/udp-forms-builder-question-template.ts"],"sourcesContent":["import { UdpFormsTypeEnum } from '../udp-forms-utils/enums';\nimport { StyleOverrides } from '../udp-forms-utils/types';\n\nexport const deepCloneFormSections = (formSections: any[]): any[] => {\n return structuredClone(formSections);\n};\n\nexport const styleOverrideDefault: StyleOverrides = {\n background: {\n backgroundImage: null,\n backgroundColor: null,\n },\n headerBackgroundColor: null,\n fontFamily: null,\n helperText: {\n variant: null,\n fontFamily: null,\n },\n questionText: {\n variant: null,\n fontFamily: null,\n },\n titleText: {\n variant: null,\n fontFamily: null,\n },\n paragraphText: {\n variant: null,\n fontFamily: null,\n },\n};\n\nexport const formSectionDefault = {\n title: '',\n sectionText: '',\n sectionProperties: {},\n formQuestions: [],\n};\n\nexport const formMetadataDefault = {\n isPrivate: true,\n type: UdpFormsTypeEnum.Standard,\n version: 1,\n name: '',\n description: '',\n};\n","import { UdpFormsFieldTypeEnum } from '../udp-forms-utils/enums';\nimport { deepCloneFormSections } from './forms-builder-utils';\n\ntype FormSections = any[];\n\n// === Helper Functions ===\n\nconst updateFieldProperties = (formSections: FormSections, sIndex: number, qIndex: number, updateFn: (props: any) => any): FormSections => {\n const newSections = deepCloneFormSections(formSections);\n const questionItem = { ...newSections[sIndex].formQuestions[qIndex] };\n const oldProps = questionItem.fieldProperties || {};\n questionItem.fieldProperties = updateFn(oldProps);\n newSections[sIndex].formQuestions[qIndex] = questionItem;\n return newSections;\n};\n\n// === Handlers ===\n\nconst handleFieldPropertyAddListItem = (formSections: FormSections, sIndex: number, qIndex: number, displayText: string, valueText: string) =>\n updateFieldProperties(formSections, sIndex, qIndex, props => ({\n ...props,\n items: [...(props.items || []), { display: displayText, value: valueText }],\n }));\n\nconst handleFieldPropertyRemoveListItem = (formSections: FormSections, sIndex: number, qIndex: number, itemIndex: number) =>\n updateFieldProperties(formSections, sIndex, qIndex, props => {\n const items = [...(props.items || [])];\n items.splice(itemIndex, 1);\n return { ...props, items };\n });\n\nconst handleFieldPropertyListItemChange = (event: Event, formSections: FormSections, sIndex: number, qIndex: number, idx: number, field: 'display' | 'value') => {\n const input = event.target as HTMLInputElement;\n return updateFieldProperties(formSections, sIndex, qIndex, props => {\n const items = [...(props.items || [])];\n items[idx] = { ...items[idx], [field]: input.value };\n return { ...props, items };\n });\n};\n\nconst handleFieldPropertyLookupChange = (selectedLookupId: string, formSections: FormSections, sIndex: number, qIndex: number) => {\n return updateFieldProperties(formSections, sIndex, qIndex, props => ({\n ...props,\n lookupId: selectedLookupId,\n }));\n};\n\nconst handleFieldPropertyToggleManualOrLookupOptions = (formSections: FormSections, sIndex: number, qIndex: number) => {\n return updateFieldProperties(formSections, sIndex, qIndex, props => {\n const { items, lookupId, ...otherConfigs } = props;\n\n if (items && !lookupId) {\n return {\n ...otherConfigs,\n lookupId: '',\n };\n } else {\n return {\n ...otherConfigs,\n items: [\n {\n display: '',\n value: '',\n },\n ],\n };\n }\n });\n};\n\nconst handleFieldPropertyMinMaxCharacter = (event: Event, formSections: FormSections, sIndex: number, qIndex: number, fieldName: 'maxCharacter' | 'minCharacter') => {\n const input = event.target as HTMLInputElement;\n return updateFieldProperties(formSections, sIndex, qIndex, props => ({\n ...props,\n [fieldName]: input.value,\n }));\n};\n\nconst handleFieldPropertyBooleanToggle = (\n formSections: FormSections,\n sIndex: number,\n qIndex: number,\n fieldName: 'allowFutureDate' | 'hideDragAndDrop' | 'hideButton' | 'allowComments' | 'allowFollowUpForms' | 'includeLocation',\n) =>\n updateFieldProperties(formSections, sIndex, qIndex, props => ({\n ...props,\n [fieldName]: !props[fieldName],\n }));\n\nconst handleFieldPropertyDateTime = (event: Event, formSections: FormSections, sIndex: number, qIndex: number, fieldName: string) => {\n const input = event.target as HTMLInputElement;\n return updateFieldProperties(formSections, sIndex, qIndex, props => ({\n ...props,\n [fieldName]: input.value,\n }));\n};\n\nconst handleGenericProperty = (value: any, formSections: FormSections, sIndex: number, qIndex: number, fieldName: 'questionText' | 'helperText' | 'required') => {\n const newSections = deepCloneFormSections(formSections);\n const questionItem = { ...newSections[sIndex].formQuestions[qIndex] };\n questionItem[fieldName] = value;\n newSections[sIndex].formQuestions[qIndex] = questionItem;\n return newSections;\n};\n\n// Paragraph-specific: store the paragraph text under fieldProperties.paragraphText\nconst handleParagraphValueChange = (event: Event, formSections: FormSections, sIndex: number, qIndex: number) => {\n const input = event.target as HTMLTextAreaElement | HTMLInputElement;\n const newValue = input?.value ?? '';\n return updateFieldProperties(formSections, sIndex, qIndex, props => ({\n ...props,\n paragraphText: newValue,\n }));\n};\n\n\nconst questionsTemplate = [\n {\n fieldTypeId: UdpFormsFieldTypeEnum.Hidden,\n questionTypeName: 'Hidden',\n icon: 'formHiddenField',\n handlers: { handleGenericProperty, handleFieldPropertyBooleanToggle },\n defaultFieldProperties: { allowComments: false, allowFollowUpForms: false },\n },\n {\n fieldTypeId: UdpFormsFieldTypeEnum.SingleLineText,\n questionTypeName: 'Single Line Text',\n icon: 'formTextField',\n handlers: {\n handleGenericProperty,\n handleFieldPropertyMinMaxCharacter,\n handleFieldPropertyBooleanToggle,\n },\n defaultFieldProperties: { allowComments: false, allowFollowUpForms: false, maxCharacter: 64, minCharacter: 0 },\n },\n {\n fieldTypeId: UdpFormsFieldTypeEnum.MultiLineText,\n questionTypeName: 'Multi Line Text',\n icon: 'formTextArea',\n handlers: {\n handleGenericProperty,\n handleFieldPropertyMinMaxCharacter,\n handleFieldPropertyBooleanToggle,\n },\n defaultFieldProperties: { allowComments: false, allowFollowUpForms: false, maxCharacter: 256, minCharacter: 0 },\n },\n {\n fieldTypeId: UdpFormsFieldTypeEnum.Checkbox,\n questionTypeName: 'Checkbox',\n icon: 'formCheckbox',\n isContainsOptionItems: true,\n handlers: {\n handleGenericProperty,\n handleFieldPropertyAddListItem,\n handleFieldPropertyRemoveListItem,\n handleFieldPropertyListItemChange,\n handleFieldPropertyToggleManualOrLookupOptions,\n handleFieldPropertyLookupChange,\n handleFieldPropertyBooleanToggle,\n },\n defaultFieldProperties: {\n allowComments: false,\n allowFollowUpForms: false,\n items: [\n {\n display: '',\n value: '',\n },\n ],\n },\n },\n {\n fieldTypeId: UdpFormsFieldTypeEnum.RadioButton,\n questionTypeName: 'Radio Button',\n icon: 'formRadioButton',\n isContainsOptionItems: true,\n handlers: {\n handleGenericProperty,\n handleFieldPropertyAddListItem,\n handleFieldPropertyRemoveListItem,\n handleFieldPropertyListItemChange,\n handleFieldPropertyToggleManualOrLookupOptions,\n handleFieldPropertyLookupChange,\n handleFieldPropertyBooleanToggle,\n },\n defaultFieldProperties: {\n allowComments: false,\n allowFollowUpForms: false,\n items: [\n {\n display: '',\n value: '',\n },\n ],\n },\n },\n {\n fieldTypeId: UdpFormsFieldTypeEnum.DropdownSingleSelect,\n questionTypeName: 'Dropdown Single Select',\n icon: 'formSingleSelectField',\n isContainsOptionItems: true,\n handlers: {\n handleGenericProperty,\n handleFieldPropertyAddListItem,\n handleFieldPropertyRemoveListItem,\n handleFieldPropertyListItemChange,\n handleFieldPropertyToggleManualOrLookupOptions,\n handleFieldPropertyLookupChange,\n handleFieldPropertyBooleanToggle,\n },\n defaultFieldProperties: {\n allowComments: false,\n allowFollowUpForms: false,\n items: [\n {\n display: '',\n value: '',\n },\n ],\n },\n },\n {\n fieldTypeId: UdpFormsFieldTypeEnum.DropdownMultipleSelect,\n questionTypeName: 'Dropdown Multiple Select',\n icon: 'formMultiSelectField',\n isContainsOptionItems: true,\n handlers: {\n handleGenericProperty,\n handleFieldPropertyAddListItem,\n handleFieldPropertyRemoveListItem,\n handleFieldPropertyListItemChange,\n handleFieldPropertyToggleManualOrLookupOptions,\n handleFieldPropertyLookupChange,\n handleFieldPropertyBooleanToggle,\n },\n defaultFieldProperties: {\n allowComments: false,\n allowFollowUpForms: false,\n items: [\n {\n display: '',\n value: '',\n },\n ],\n },\n },\n {\n fieldTypeId: UdpFormsFieldTypeEnum.ListMultiSelect,\n questionTypeName: 'List',\n icon: 'list',\n isContainsOptionItems: true,\n handlers: {\n handleGenericProperty,\n handleFieldPropertyAddListItem,\n handleFieldPropertyRemoveListItem,\n handleFieldPropertyListItemChange,\n handleFieldPropertyToggleManualOrLookupOptions,\n handleFieldPropertyLookupChange,\n handleFieldPropertyBooleanToggle,\n },\n defaultFieldProperties: {\n allowComments: false,\n allowFollowUpForms: false,\n items: [\n {\n display: '',\n value: '',\n },\n ],\n },\n },\n {\n fieldTypeId: UdpFormsFieldTypeEnum.DateSelector,\n questionTypeName: 'Date Selector',\n icon: 'formDateField',\n handlers: {\n handleGenericProperty,\n handleFieldPropertyDateTime,\n handleFieldPropertyBooleanToggle,\n },\n defaultFieldProperties: {\n allowComments: false,\n allowFollowUpForms: false,\n allowFutureDate: false,\n maxDate: '2099-12-31',\n minDate: '1980-01-01',\n },\n },\n {\n fieldTypeId: UdpFormsFieldTypeEnum.TimeSelector,\n questionTypeName: 'Time Selector',\n icon: 'formTimeField',\n handlers: {\n handleGenericProperty,\n handleFieldPropertyDateTime,\n handleFieldPropertyBooleanToggle,\n },\n defaultFieldProperties: { allowComments: false, allowFollowUpForms: false, maxTime: '17:00:00', minTime: '09:00:00' },\n },\n {\n fieldTypeId: UdpFormsFieldTypeEnum.DateTimeSelector,\n questionTypeName: 'DateTime Selector',\n icon: 'formDateTimeField',\n handlers: {\n handleGenericProperty,\n handleFieldPropertyDateTime,\n handleFieldPropertyBooleanToggle,\n },\n defaultFieldProperties: {\n allowComments: false,\n allowFollowUpForms: false,\n allowFutureDate: false,\n maxDateTime: '2099-12-31 23:59:59',\n minDateTime: '1980-01-01 00:00:00',\n },\n },\n {\n fieldTypeId: UdpFormsFieldTypeEnum.FileUpload,\n questionTypeName: 'File Upload',\n icon: 'formFileUpload',\n handlers: { handleGenericProperty, handleFieldPropertyBooleanToggle },\n defaultFieldProperties: { allowComments: false, allowFollowUpForms: false, hideDragAndDrop: false, hideButton: false },\n },\n {\n fieldTypeId: UdpFormsFieldTypeEnum.YesNo,\n questionTypeName: 'Yes/No',\n icon: 'checkMark',\n handlers: { handleGenericProperty, handleFieldPropertyBooleanToggle },\n defaultFieldProperties: { allowComments: false, allowFollowUpForms: false },\n },\n {\n fieldTypeId: UdpFormsFieldTypeEnum.Signature,\n questionTypeName: 'Signature',\n icon: 'document',\n handlers: { handleGenericProperty, handleFieldPropertyBooleanToggle },\n defaultFieldProperties: { allowComments: false, allowFollowUpForms: false, includeLocation: false },\n },\n {\n fieldTypeId: UdpFormsFieldTypeEnum.Tally,\n questionTypeName: 'Tally Display',\n icon: 'formNumberField',\n handlers: { handleGenericProperty, handleFieldPropertyBooleanToggle },\n defaultFieldProperties: { allowComments: false, allowFollowUpForms: false, ignoreRequiredConfig: true },\n },\n {\n fieldTypeId: UdpFormsFieldTypeEnum.Number,\n questionTypeName: 'Numeric',\n icon: 'box',\n handlers: { handleGenericProperty, handleFieldPropertyBooleanToggle },\n defaultFieldProperties: { allowComments: false, allowFollowUpForms: false },\n },\n {\n fieldTypeId: UdpFormsFieldTypeEnum.Paragraph,\n questionTypeName: 'Paragraph',\n icon: 'formTextArea',\n // Store paragraph text alongside other question properties\n handlers: { handleGenericProperty, handleParagraphValueChange },\n defaultFieldProperties: { paragraphText: '' },\n // Signal that question text is optional for this type; builder UI can use this to relax validation/UX\n questionTextOptional: true,\n },\n {\n fieldTypeId: UdpFormsFieldTypeEnum.ImageUpload,\n questionTypeName: 'Image Upload',\n icon: 'formFileUpload',\n // Align options/handlers with File Upload\n handlers: { handleGenericProperty, handleFieldPropertyBooleanToggle },\n defaultFieldProperties: { hideDragAndDrop: false, allowComments: false, allowFollowUpForms: false, hideButton: false },\n },\n {\n fieldTypeId: UdpFormsFieldTypeEnum.FormMetadataDisplay,\n questionTypeName: 'Form Metadata Display',\n icon: 'user',\n handlers: { handleGenericProperty, handleFieldPropertyBooleanToggle },\n defaultFieldProperties: { displayOwnerFullName: true, displayOwnerEmail: true, displaySubmissionDate: true, allowComments: false, allowFollowUpForms: false},\n }, \n];\n\nexport default questionsTemplate;"],"names":["UdpFormsTypeEnum","UdpFormsFieldTypeEnum"],"mappings":"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"}
@@ -2,12 +2,12 @@
2
2
 
3
3
  var index = require('./index-CGCOXUJE.js');
4
4
  var makeApiCall = require('./makeApiCall-CFfg9gI0.js');
5
- var udpFormsBuilderQuestionTemplate = require('./udp-forms-builder-question-template-CNONS2l5.js');
5
+ var udpFormsBuilderQuestionTemplate = require('./udp-forms-builder-question-template-BMMpObLX.js');
6
6
  var iconUtils = require('./iconUtils-BuDk48Xh.js');
7
7
  var tenantUtils = require('./tenantUtils-BCKSE0vq.js');
8
8
  var Sortable = require('sortablejs');
9
9
  var uuid = require('uuid');
10
- var enums = require('./enums-DVbZnzL8.js');
10
+ var enums = require('./enums-CgcTuQjC.js');
11
11
  var configService = require('./configService-BmGAegZf.js');
12
12
  require('axios');
13
13
  require('./iconMapping-CkHR1LGY.js');
@@ -1 +1 @@
1
- {"version":3,"file":"udp-forms-builder.entry.cjs.js","sources":["src/components/forms/udp-forms/udp-forms-builder/udp-forms-builder.css?tag=udp-forms-builder&encapsulation=shadow","src/components/forms/udp-forms/udp-forms-builder/udp-forms-builder.tsx"],"sourcesContent":[":host {\n display: block;\n --udp-form-primary-color: #007bff; /* Example primary color */\n --udp-form-spacing-unit: 16px;\n\n}\n\n/* ################### FORM PAGE ################### */\n.udp-forms-page {\n display: flex;\n flex-direction: column;\n gap: var(--spacing-06, 32px);\n /* background-color: white; */\n padding: var(--spacing-06, 32px);\n padding-bottom: var(--spacing-12);\n}\n\n\n.form-section-questions-container {\n display: flex;\n flex-direction: column;\n}\n\n\n/* ################### FORM METADATA ################### */\n\n\n.form-details-container {\n display: flex;\n flex-direction: column;\n /* align-items: flex-start; */\n /* margin: 0 2rem; */\n /* gap: var(--spacing-05, 24px); */\n padding: var(--spacing-05, 24px);\n background-color: var(--card-background-color, white);\n}\n\n.form-details-version-container {\n margin-bottom: var(--spacing-05)\n}\n\n.udp-form-builder-field-container,\n.udp-forms-builder-item-generic-configs,\n.udp-forms-builder-item-specific-configs {\n display: flex;\n flex-direction: column;\n gap: var(--spacing-04, 16px);\n}\n\n/* ################### SECTIONS ################### */\n.form-section {\n /* background-color: var(--primary-color-alpha-15); */\n /* border: 2px solid var(--primary-color-alpha-50); */\n /* border-radius: 8px; */\n /* padding: var(--spacing-04); */\n}\n\n\n.form-section-header {\n display: flex;\n flex-direction: row;\n justify-content: space-between;\n background-color: var(--primary-color-dark, #000);\n color: var(--primary-contrast-text, #FFF);\n padding: var(--spacing-04, 16px) var(--spacing-05, 24px);\n /* margin-bottom: var(--spacing-04); */\n align-items: center;\n}\n\n.add-question-button-container {\n display: flex;\n justify-content: center;\n align-items: center;\n}\n\n.question-editor-container {\n padding: var(--spacing-05, 24px);\n display: flex;\n flex-direction: column;\n gap: var(--spacing-05, 24px);\n}\n\n.add-question-to-section-button-container {\n padding: var(--spacing-02, 8px) 0;\n margin: auto;\n}\n\n.sortable-ghost {\n opacity: 0.5;\n transform: scale(0.98);\n background: #f4f4f4;\n border: 1px dashed #ccc;\n}\n\n.sortable-chosen {\n background: #eef6ff;\n box-shadow: 0 0 4px 2px rgba(51, 153, 255, 0.3);\n}\n\n.form-question-drag-handle {\n transform: rotate(90deg);\n cursor: grab;\n}\n\n.form-question-drag-handle:active {\n cursor: grabbing;\n}\n\n.form-question-drag-handle .drag-wrapper {\n cursor: inherit;\n}\n\n.form-question-drag-handle stencil-icon-button {\n pointer-events: none; /* disables click so cursor applies from parent */\n}\n\n\n","import { Component, h, State, Prop, Watch } from '@stencil/core';\nimport { Guid } from '../utils/types';\nimport { makeApiCall } from '../../../../udp-utilities/api/makeApiCall/makeApiCall';\nimport questionsTemplate from './udp-forms-builder-question-template';\nimport { getIconFromName } from '../../../data-display/icons/iconUtils';\nimport { ConfigService } from '../../../../udp-utilities/api-config';\nimport { getCurrentTenantId } from 'src/udp-utilities/tenant/tenantUtils';\nimport Sortable from 'sortablejs';\nimport { Element } from '@stencil/core';\nimport { v4 as uuidv4 } from 'uuid';\nimport { styleOverrideDefault, formSectionDefault, formMetadataDefault, deepCloneFormSections } from './forms-builder-utils';\nimport { UdpFormsPageIdEnum, UdpFormsTypeEnum } from '../utils/enums';\nimport { UdpFormMetadata } from '../utils/types';\n\n@Component({\n tag: 'udp-forms-builder',\n styleUrl: 'udp-forms-builder.css',\n shadow: true,\n})\nexport class UdpFormsBuilder {\n @Element() private hostEl: HTMLElement;\n\n @Prop() formId: Guid;\n @Prop() version: number;\n @Prop() enqueueSnackbar: Function;\n @Prop() closeSnackbar: Function;\n @Prop() history: { push: (path: string) => void };\n @Prop() isFollowUpFormConfigOn: boolean = false; // allow form engine to use follow-up forms feature\n @Prop() isPublicFormConfigOn: boolean = false; // allow form engine to use public forms feature\n @Prop() isCommentingConfigOn: boolean = true; // allow form engine to use commenting feature\n @Prop() formsBuilderUrlPath: string = ''; // alternative path for redirect to the form builder page. If not provided, use default path.\n\n\n @State() formMetadata: UdpFormMetadata = formMetadataDefault as UdpFormMetadata;\n @State() formSections: any[] = [];\n @State() formSectionsDraft: any[] = [];\n @State() isNewForm: boolean = true;\n @State() isMostRecentFormVersion: boolean = false;\n\n @State() isError: boolean = false;\n @State() isLoading: boolean = false;\n\n @State() isShowStyleOverrides: boolean = false;\n @State() isStyleSheetOpen: boolean = false;\n @State() isDialogOpen: boolean = false;\n @State() showMenuAtIndex: { sIndex: number; qIndex: number } | null = null;\n @State() editingQuestion: { sIndex: number; qIndex: number } | null = null;\n @State() editingSection: { sIndex: number } | null = null;\n @State() isQuestionEditorOpen: boolean = false;\n @State() isSectionEditorOpen: boolean = false;\n @State() lookupOptionsDataProcessed: any[] = [];\n\n\n @State() dialogAction: (() => void) | null = null;\n @State() dialogMessage: string = 'Are you sure you want to delete this?';\n\n\n\n private sortableInstances: Sortable[] = [];\n private formsBuilderPageId = UdpFormsPageIdEnum.FormBuilderPageId;\n private formTypeOptions: { value: string; label: string }[] = Object.keys(UdpFormsTypeEnum)\n .filter(key => isNaN(Number(key))) // only keep the named keys\n .map(key => ({\n value: String(UdpFormsTypeEnum[key as keyof typeof UdpFormsTypeEnum]), // cast to string\n label: key,\n }));\n\n // ********************************** API CALLS **********************************\n\n async initializeForm() {\n // set default form values\n this.formMetadata.isPrivate = formMetadataDefault.isPrivate;\n this.formMetadata.tenantId = getCurrentTenantId();\n this.formMetadata.type = formMetadataDefault.type;\n this.formMetadata.version = formMetadataDefault.version;\n this.formMetadata.name = formMetadataDefault.name;\n this.formMetadata.description = formMetadataDefault.description;\n this.formMetadata.styleOverrides = styleOverrideDefault;\n\n try {\n this.isLoading = true;\n\n // get lookup options\n const lookupResponse = await makeApiCall('GET', ConfigService.productV1ApiUrl + '/UdpLookup');\n\n if (!lookupResponse) {\n throw new Error(`Error fetching lookup data`);\n }\n\n\n this.lookupOptionsDataProcessed = lookupResponse.map(lookupObj => {\n return { ...lookupObj, value: lookupObj.id, label: lookupObj.name };\n });\n\n // determine if it's to create a new form, view an old form, or create a new version\n if (this.formId && this.version) {\n const formDataResponse = await makeApiCall('GET', `${ConfigService.productV1ApiUrl}/UdpForm/${this.formId}/${this.version}/describe`);\n const formLatestVersionResponse = await makeApiCall('GET', `${ConfigService.productV1ApiUrl}/UdpForm/${this.formId}/describe`);\n\n this.isNewForm = false;\n\n if (!formDataResponse || !formLatestVersionResponse || !formDataResponse.id || !formLatestVersionResponse) {\n throw new Error(`Error fetching form data`);\n }\n\n // view only mode\n if (formDataResponse.id == formLatestVersionResponse.id && formDataResponse.version == formLatestVersionResponse.version) {\n this.isMostRecentFormVersion = true;\n }\n\n // Clone formSections and initialize empty question arrays\n const tempSections = structuredClone(formDataResponse.udpFormUdpFormSection).map(section => ({ ...section, formQuestions: [] }));\n tempSections.forEach(section => {\n if(!section.sectionProperties) {\n section.sectionProperties = {}\n } else {\n section.sectionProperties = JSON.parse(section.sectionProperties)\n }\n })\n\n\n // Map questions into their respective sections\n formDataResponse.formQuestions.forEach(question => {\n const section = tempSections.find(s => s.id === question.formSectionId);\n if (section) {\n const fieldProps = { ...question.fieldProperties };\n\n // Remove items if lookupId exists\n if ('lookupId' in fieldProps && 'items' in fieldProps) {\n delete fieldProps.items;\n }\n\n section.formQuestions.push({\n ...question,\n fieldProperties: fieldProps,\n questionTypeName: this.getQuestionTypeName(question.fieldTypeId),\n isContainsOptionItems: this.getIsContainsOptionItems(question.fieldTypeId),\n icon: this.getIconForQuestion(question.fieldTypeId),\n });\n\n\n }\n });\n\n // Sort questions within each section\n tempSections.forEach(section => {\n section.formQuestions.sort((a, b) => a.questionOrder - b.questionOrder);\n });\n\n // Sort sections\n tempSections.sort((a, b) => a.order - b.order)\n\n\n const { ...metadata } = formDataResponse;\n\n // Merge fetched styleOverrides with defaults\n metadata.styleOverrides = this.deepMerge(styleOverrideDefault, JSON.parse(metadata.styleOverrides) || {});\n\n // Set form metadata and sections\n this.formMetadata = metadata;\n this.formSections = tempSections;\n this.isLoading = false;\n }\n } catch (e) {\n this.isError = true;\n\n this.enqueueSnackbar('Error loading form data', {\n variant: 'error',\n anchorOrigin: { vertical: 'top', horizontal: 'center' },\n });\n } finally {\n this.isLoading = false;\n }\n }\n\n async submitForm() {\n if (!this.isValidForm()) {\n return;\n }\n\n this.isLoading = true;\n\n try {\n // Prepare and send form metadata\n const processedFormMetadata = {\n name: this.formMetadata.name,\n description: this.formMetadata.description,\n tenantId: this.formMetadata.tenantId,\n isPrivate: this.formMetadata.isPrivate,\n type: this.formMetadata.type,\n styleOverrides: JSON.stringify(this.formMetadata.styleOverrides),\n id: this.formMetadata.id,\n version: this.formMetadata.version,\n };\n\n\n const formUrl = `${ConfigService.productV1ApiUrl}/UdpForm${this.isMostRecentFormVersion ? '/versions' : ''}`;\n const formResponse = await makeApiCall('POST', formUrl, processedFormMetadata);\n\n const formId = formResponse.id;\n const formVersion = formResponse.version;\n\n if (!formResponse || !formResponse.id || !formResponse.version) {\n throw new Error(`Invalid form response: ${JSON.stringify(formResponse)}`);\n }\n\n // Prepare and send questions in order\n let sectionOrder = 0;\n let questionOrder = 0;\n const questionRequests: Promise<any>[] = [];\n\n for (const [sIndex, section] of this.formSections.entries()) {\n sectionOrder += 1;\n\n const processedSectionData = {\n ...section,\n formId,\n formVersion,\n order: sectionOrder,\n sectionProperties: JSON.stringify(section.sectionProperties),\n name: `section${sectionOrder}`\n };\n\n const sectionResponse = await makeApiCall('POST', `${ConfigService.productV1ApiUrl}/UdpFormSection`, processedSectionData);\n\n if (!sectionResponse || !sectionResponse.id) {\n throw new Error(`Invalid section response: ${JSON.stringify(sectionResponse)}`);\n }\n\n const sectionId = sectionResponse.id;\n\n for (const question of section.formQuestions) {\n questionOrder += 1;\n\n const processedQuestionData = {\n ...question,\n formId,\n formVersion,\n section: sIndex + 1,\n questionOrder,\n formSectionId: sectionId,\n name: `question${questionOrder}`,\n };\n\n const questionRequest = makeApiCall('POST', `${ConfigService.productV1ApiUrl}/UdpFormQuestion`, processedQuestionData);\n questionRequests.push(questionRequest);\n }\n }\n\n // Wait for all questions to be submitted\n await Promise.all(questionRequests);\n\n this.enqueueSnackbar('Success', {\n variant: 'success',\n anchorOrigin: { vertical: 'top', horizontal: 'center' },\n });\n\n if(this.formsBuilderUrlPath) {\n this.history.push(`${this.formsBuilderUrlPath}&udpf_formId=${formId}&udpf_version=${formVersion}`);\n return \n }\n\n this.history.push(`/page/${this.formsBuilderPageId}?udpf_formId=${formId}&udpf_version=${formVersion}`);\n } catch (error) {\n console.error('Form submission error:', error);\n this.enqueueSnackbar('Error saving form', {\n variant: 'error',\n anchorOrigin: { vertical: 'top', horizontal: 'center' },\n });\n } finally {\n this.isLoading = false;\n }\n }\n\n // ********************************** STENCIL RELATED **********************************\n\n componentDidLoad() {\n this.initializeSortable();\n }\n\n componentDidUpdate() {\n this.initializeSortable();\n }\n\n componentWillLoad() {\n this.initializeForm();\n }\n\n // @Watch('formSections')\n // onFormSectionsChange(newValue: any[]) {\n // console.log(newValue);\n // }\n\n // @Watch('formMetadata')\n // onFormMetadataChange(newValue) {\n // console.log(newValue);\n // }\n\n @Watch('formId')\n @Watch('version')\n onFormIdOrVersionChange() {\n this.initializeForm();\n }\n\n // ********************************** SORTABLE LOGIC **********************************\n\n private initializeSortable() {\n // sortable only if the form is editable\n if (!(this.isNewForm || this.isMostRecentFormVersion)) {\n return;\n }\n\n this.sortableInstances.forEach(instance => instance.destroy());\n this.sortableInstances = [];\n\n this.formSections.forEach((_, sIndex) => {\n const el = this.hostEl.shadowRoot.querySelector(`#section-${sIndex}`);\n if (el) {\n const sortable = new Sortable(el, {\n animation: 200,\n easing: 'cubic-bezier(0.25, 1, 0.5, 1)',\n draggable: 'udp-forms-builder-question-item',\n handle: '.form-question-drag-handle',\n ghostClass: 'sortable-ghost',\n chosenClass: 'sortable-chosen',\n direction: 'vertical',\n forceFallback: false,\n dragoverBubble: false,\n swapThreshold: 0.6,\n onEnd: evt => this.handleDragEnd(evt, sIndex),\n });\n this.sortableInstances.push(sortable);\n }\n });\n }\n\n private handleDragEnd(evt: Sortable.SortableEvent, sIndex: number) {\n const oldIndex = evt.oldIndex;\n const newIndex = evt.newIndex;\n if (oldIndex === newIndex || oldIndex == null || newIndex == null) return;\n\n const sectionCopy = structuredClone(this.formSections[sIndex]);\n const [moved] = sectionCopy.formQuestions.splice(oldIndex, 1);\n sectionCopy.formQuestions.splice(newIndex, 0, moved);\n\n // const newFormSections = [...this.formSections];\n const newFormSections = deepCloneFormSections(this.formSections);\n newFormSections[sIndex] = sectionCopy;\n\n this.formSections = newFormSections;\n }\n\n // ********************************** SIDE SHEET LOGIC **********************************\n\n private toggleStyleSheet = () => {\n this.isStyleSheetOpen = !this.isStyleSheetOpen;\n };\n\n // ********************************** QUESTION HANDLERS **********************************\n private getQuestionTypeName = fieldTypeId => {\n const question = questionsTemplate.find(q => q.fieldTypeId === fieldTypeId);\n return question ? question.questionTypeName : 'Unknown';\n };\n\n private getIsContainsOptionItems = fieldTypeId => {\n const question = questionsTemplate.find(q => q.fieldTypeId === fieldTypeId);\n return question ? question.isContainsOptionItems || false : false;\n };\n\n private getIconForQuestion = fieldTypeId => {\n const question = questionsTemplate.find(q => q.fieldTypeId === fieldTypeId);\n return question ? question.icon : null;\n };\n\n private handleQuestionDelete = (sIndex: number, qIndex: number) => {\n const sectionsCopy = deepCloneFormSections(this.formSections);\n sectionsCopy[sIndex].formQuestions.splice(qIndex, 1);\n this.formSections = sectionsCopy;\n };\n\n private handleQuestionCopy = (sIndex: number, qIndex: number) => {\n const sectionsCopy = deepCloneFormSections(this.formSections);\n const targetQuestion = this.formSections[sIndex].formQuestions[qIndex];\n\n const newQuestion = {\n ...targetQuestion,\n questionText: (targetQuestion.questionText || '') + ' (Copy)',\n id: uuidv4(),\n };\n\n sectionsCopy[sIndex].formQuestions.splice(qIndex + 1, 0, newQuestion);\n this.formSections = sectionsCopy;\n };\n\n private handleQuestionClick = (sIndex: number, qIndex: number) => {\n this.editingQuestion = { sIndex, qIndex };\n this.isQuestionEditorOpen = true;\n this.formSectionsDraft = deepCloneFormSections(this.formSections);\n };\n\n private closeQuestionEditor = () => {\n this.isQuestionEditorOpen = false;\n this.editingQuestion = null;\n this.formSectionsDraft = null;\n };\n\n private addQuestionOfType = (defaultQuestionObj, sIndex?: number, qIndex?: number): { sIndex: number; qIndex: number } => {\n const newQuestion = {\n questionTypeName: defaultQuestionObj.questionTypeName,\n fieldTypeId: defaultQuestionObj.fieldTypeId,\n fieldProperties: defaultQuestionObj.defaultFieldProperties,\n helperText: '',\n questionText: '',\n section: sIndex !== undefined ? sIndex + 1 : this.formSections.length > 0 ? this.formSections[this.formSections.length - 1].formQuestions[0].section : 1, // Assign section based on sIndex or last section\n isContainsOptionItems: defaultQuestionObj.isContainsOptionItems,\n icon: defaultQuestionObj.icon,\n required: false,\n form: null,\n isPrivate: true,\n id: uuidv4(),\n };\n\n const newFormSections = deepCloneFormSections(this.formSections); // Use helper to get a deep copy\n\n let actualSIndex = sIndex;\n let actualQIndex = qIndex;\n\n if (sIndex !== undefined && qIndex !== undefined) {\n // Insert at specific index\n if (newFormSections[sIndex].formQuestions) {\n newFormSections[sIndex].formQuestions.splice(qIndex, 0, newQuestion);\n } else {\n // fallback\n const lastSectionIdx = newFormSections.length - 1;\n newFormSections[lastSectionIdx].formQuestions.push(newQuestion);\n actualSIndex = lastSectionIdx;\n actualQIndex = newFormSections[lastSectionIdx].formQuestions.length - 1;\n }\n } else {\n // Append to the last section or create a new one\n const lastSectionIdx = newFormSections.length - 1;\n if (lastSectionIdx < 0 || newFormSections[lastSectionIdx].formQuestions.length === 0) {\n newFormSections.push({ ...formSectionDefault, formQuestions: [newQuestion] });\n actualSIndex = newFormSections.length - 1;\n actualQIndex = 0;\n } else {\n newFormSections[lastSectionIdx].formQuestions.push(newQuestion);\n actualSIndex = lastSectionIdx;\n actualQIndex = newFormSections[lastSectionIdx].formQuestions.length - 1;\n }\n }\n\n // this.formSections = newFormSections;\n this.formSectionsDraft = newFormSections;\n if (this.showMenuAtIndex) this.showMenuAtIndex = null;\n\n return { sIndex: actualSIndex, qIndex: actualQIndex };\n };\n\n private deepMerge(target: any, source: any): any {\n const output = { ...target };\n for (const key in source) {\n if (source[key] && typeof source[key] === 'object' && !Array.isArray(source[key])) {\n output[key] = this.deepMerge(target[key] || {}, source[key]);\n } else {\n output[key] = source[key];\n }\n }\n return output;\n }\n\n // ********************************** SECTION HANDLERS **********************************\n\n private handleSectionMoveDown = (sIndex: number) => {\n if (sIndex >= this.formSections.length - 1) return;\n\n const sectionsCopy = [...this.formSections];\n [sectionsCopy[sIndex], sectionsCopy[sIndex + 1]] = [sectionsCopy[sIndex + 1], sectionsCopy[sIndex]];\n this.formSections = sectionsCopy;\n };\n\n private handleSectionMoveUp = (sIndex: number) => {\n if (sIndex <= 0) return;\n\n const sectionsCopy = [...this.formSections];\n [sectionsCopy[sIndex], sectionsCopy[sIndex - 1]] = [sectionsCopy[sIndex - 1], sectionsCopy[sIndex]];\n this.formSections = sectionsCopy;\n };\n\n private handleSectionDelete = (sIndex: number) => {\n const newFormSections = [...this.formSections];\n newFormSections.splice(sIndex, 1);\n this.formSections = newFormSections;\n };\n\n private updateFormSectionsWithDraft = () => {\n this.formSections = this.formSectionsDraft;\n this.formSectionsDraft = null;\n };\n\n private hasUnsavedFormSectionsChanges = (): boolean => {\n // return !isEqual(this.formSections, this.formSectionsDraft); // NEED TO INSTALL PACKAGE\n return JSON.stringify(this.formSections) !== JSON.stringify(this.formSectionsDraft); // Breaks on circular refs or non-serializable types (like Dates, Maps, etc.)\n };\n\n private handleSectionEditClick = (sIndex: number) => {\n this.editingSection = { sIndex };\n this.isSectionEditorOpen = true;\n this.formSectionsDraft = deepCloneFormSections(this.formSections);\n };\n\n private closeSectionEditor = () => {\n this.isSectionEditorOpen = false;\n this.editingSection = null;\n this.formSectionsDraft = null;\n };\n\n // ********************************** FORM VALIDATION HELPERS **********************************\n\n private isValidForm(): boolean {\n return this.validateFormMetadata() && this.validateFormSections() && this.validateAllQuestions() ;\n }\n\n private validateFormMetadata(): boolean {\n if (!this.formMetadata.name?.trim()) {\n this.enqueueSnackbar('Please enter a form name.', {\n variant: 'error',\n anchorOrigin: { vertical: 'top', horizontal: 'center' },\n });\n return false;\n }\n\n return true;\n }\n\n private validateFormSections(): boolean {\n if (this.formSections.length < 1) {\n this.enqueueSnackbar('Please add at least one section to the form.', {\n variant: 'error',\n anchorOrigin: { vertical: 'top', horizontal: 'center' },\n });\n\n return false;\n }\n\n for (let sIndex = 0; sIndex < this.formSections.length; sIndex++) {\n const formSection = this.formSections[sIndex];\n const questions = formSection?.formQuestions || [];\n\n if (questions.length < 1) {\n const sectionTitle = formSection?.title ? `\"${formSection.title}\"` : `#${sIndex + 1}`;\n this.enqueueSnackbar(`Section ${sectionTitle} must contain at least one question.`, {\n variant: 'error',\n anchorOrigin: { vertical: 'top', horizontal: 'center' },\n });\n return false;\n }\n }\n\n return true;\n }\n\n private validateAllQuestions(): boolean {\n for (let sIndex = 0; sIndex < this.formSections.length; sIndex++) {\n const formSection = this.formSections[sIndex];\n const questions = formSection?.formQuestions || [];\n for (let qIndex = 0; qIndex < questions.length; qIndex++) {\n const isValid = this.validateQuestionItem(sIndex, qIndex);\n if (!isValid) {\n this.enqueueSnackbar('Please validate all questions.', {\n variant: 'error',\n anchorOrigin: { vertical: 'top', horizontal: 'center' },\n });\n return false;\n }\n }\n }\n return true;\n }\n\n private validateQuestionItem(sIndex: number, qIndex: number): boolean {\n const questionItem = this.formSections[sIndex].formQuestions[qIndex];\n // Respect template metadata for optional question text (e.g., Paragraph)\n const template = questionsTemplate.find(q => q.fieldTypeId === questionItem.fieldTypeId);\n const requiresQuestionText = !(template && (template as any).questionTextOptional);\n if (requiresQuestionText && !questionItem.questionText) {\n return false;\n }\n\n if (questionItem.isContainsOptionItems) {\n const fieldProps = questionItem.fieldProperties;\n\n // If there's a lookupId, assume it's valid and skip item validation\n if (!fieldProps?.lookupId) {\n // If no items or empty, invalid\n if (!Array.isArray(fieldProps?.items) || fieldProps.items.length === 0) {\n return false;\n }\n\n // Check that each item has both display and value\n const invalidItemExists = fieldProps.items.some(item => !item.display || !item.value);\n\n if (invalidItemExists) {\n return false;\n }\n }\n }\n\n return true;\n }\n\n\n render() {\n if (this.isError) {\n return <div> There is an Error With the Form Builder</div>;\n }\n\n const isEditable = this.isNewForm || this.isMostRecentFormVersion;\n\n return (\n <div>\n {/* FIXME: Review this */}\n <primary-action-header\n title={'UDP Form Builder'}\n actionButtonLabel={isEditable ? (this.isMostRecentFormVersion ? `Create New Version (v.${this.version + 1})` : 'Create New Form') : ''}\n primaryActionClick={isEditable ? () => this.submitForm() : null}\n // HIDE STYLE OVERRIDE IN UI\n defaultActionButtons={\n isEditable ? [{ label: 'Style Overrides', clickHandler: this.toggleStyleSheet, tooltip: 'Style Overrides', visible: false, icon: getIconFromName('settings') }] : []\n }\n tabs={false}\n />\n {/* <udp-side-sheet open={this.isStyleSheetOpen} onUdpSideSheetClose={() => (this.isStyleSheetOpen = false)} title=\"Style Overrides\" position=\"right\" width=\"md\">\n <udp-forms-builder-style-override formMetadata={this.formMetadata} onFormMetadataChange={updated => (this.formMetadata = updated)}></udp-forms-builder-style-override>\n </udp-side-sheet> */}\n\n <udp-side-sheet\n open={this.isQuestionEditorOpen}\n onUdpSideSheetClose={() => this.closeQuestionEditor()}\n onUdpPrimaryButtonClick={() => {\n // don't do anything if no changes are made.\n // it'll close the side sheet without this\n if (!this.hasUnsavedFormSectionsChanges()) {\n return;\n }\n this.updateFormSectionsWithDraft();\n this.closeQuestionEditor();\n }}\n primaryButtonDisabled={!this.hasUnsavedFormSectionsChanges()}\n title=\"Edit Question\"\n position=\"right\"\n width=\"md\"\n primaryButtonLabel=\"Update\"\n >\n {this.isQuestionEditorOpen && (\n <div class=\"question-editor-container\">\n <question-configs-renderer\n formSectionsDraft={this.formSectionsDraft}\n sIndex={this.editingQuestion.sIndex}\n qIndex={this.editingQuestion.qIndex}\n isViewOnly={!isEditable}\n onFormSectionsDraftChange={updated => (this.formSectionsDraft = updated)}\n lookupOptions={this.lookupOptionsDataProcessed}\n formType={this.formMetadata.type}\n isFollowUpFormConfigOn={this.isFollowUpFormConfigOn}\n isCommentingConfigOn={this.isCommentingConfigOn}\n />\n </div>\n )}\n </udp-side-sheet>\n\n <udp-side-sheet\n open={this.isSectionEditorOpen}\n onUdpSideSheetClose={() => this.closeSectionEditor()}\n title=\"Edit Section Fields\"\n position=\"right\"\n width=\"md\"\n primaryButtonDisabled={!this.hasUnsavedFormSectionsChanges()}\n primaryButtonLabel=\"Update\"\n onUdpPrimaryButtonClick={() => {\n // don't do anything if no changes are made.\n // it'll close the side sheet without this\n if (!this.hasUnsavedFormSectionsChanges()) {\n return;\n }\n this.updateFormSectionsWithDraft();\n this.closeSectionEditor();\n }}\n >\n {this.isSectionEditorOpen && (\n <div class=\"section-editor-container\">\n <section-configs-renderer\n formSectionsDraft={this.formSectionsDraft}\n sIndex={this.editingSection.sIndex}\n isViewOnly={!isEditable}\n onFormSectionsDraftChange={updated => (this.formSectionsDraft = updated)}\n />\n </div>\n )}\n </udp-side-sheet>\n <fluent-dialog\n open={this.isDialogOpen}\n message={this.dialogMessage}\n labelOne={'Confirm'}\n labelTwo={'Cancel'}\n actionOne={() => {\n if (typeof this.dialogAction === 'function') {\n this.dialogAction();\n }\n }}\n actionTwo={() => (this.isDialogOpen = false)}\n />\n\n {this.isLoading && <udp-linear-loader />}\n {!this.isLoading && (\n <udp-container maxWidth=\"lg\">\n <div class=\"udp-forms-page\">\n <div class=\"form-details-container\">\n <div class=\"form-details-name-container\">\n {isEditable ? (\n <div class=\"form-details-name-input\">\n <text-field\n label=\"Form Name\"\n value={this.formMetadata.name}\n placeholder=\"Form Name\"\n disabled={!isEditable}\n required={true}\n margin=\"none\"\n maxCharacter={128}\n onInput={e => {\n this.formMetadata = {\n ...this.formMetadata,\n name: (e.target as HTMLInputElement).value,\n };\n }}\n ></text-field>\n </div>\n ) : (\n <div class=\"form-details-name-display\">\n <unity-typography variant={'h2'}>{this.formMetadata.name + ' (View Only)'}</unity-typography>\n </div>\n )}\n </div>\n\n <div class=\"form-details-description-container\">\n {isEditable ? (\n <div class=\"form-details-details-input\">\n <text-area\n label=\"Form Description\"\n value={this.formMetadata.description}\n placeholder=\"Form Description\"\n disabled={!isEditable}\n required={false}\n margin=\"none\"\n maxCharacter={256}\n onInput={e => {\n this.formMetadata = {\n ...this.formMetadata,\n description: (e.target as HTMLInputElement).value,\n };\n }}\n ></text-area>\n </div>\n ) : (\n <div class=\"form-details-description-display\">\n <unity-typography>{this.formMetadata.description}</unity-typography>\n </div>\n )}\n </div>\n {this.isFollowUpFormConfigOn && (\n this.isNewForm ? \n <udp-selector\n label=\"Form Type\"\n key=\"udo-form-type-selector\"\n initialValue={this.formMetadata.type}\n options={this.formTypeOptions}\n disabled={!isEditable || !this.isNewForm}\n required={true}\n onChange={(e: CustomEvent) => {\n this.formMetadata = {\n ...this.formMetadata,\n type: e.detail,\n };\n }}\n /> :\n <div class=\"form-details-version-container\">\n <unity-typography>Form Type: {UdpFormsTypeEnum[this.formMetadata.type]}</unity-typography>\n </div>\n )}\n <div class=\"form-details-version-container\">\n <unity-typography>Version: {this.formMetadata.version}</unity-typography>\n </div>\n {this.isPublicFormConfigOn && (\n <div class=\"form-details-private-container\">\n <div class=\"toggle-container\">\n <stencil-toggle\n label=\"Private Form\"\n margin=\"none\"\n disabled={!isEditable}\n checked={this.formMetadata.isPrivate === true}\n labelPosition=\"right\"\n onToggledChange={() => {\n let newIsPrivate = !this.formMetadata.isPrivate;\n this.formMetadata = {\n ...this.formMetadata,\n isPrivate: newIsPrivate,\n };\n }}\n ></stencil-toggle>\n </div>\n </div>\n )}\n </div>\n\n {isEditable && (\n <div class=\"add-question-button-container\">\n <udp-button\n startIcon={<udp-icon iconName={'add'} color={'inherit'} />}\n onClick={() => {\n const newSectionIndex = this.formSections.length;\n const newFormSections = deepCloneFormSections(this.formSections);\n newFormSections.push({ ...formSectionDefault, order: newSectionIndex + 1, title: `Section ${newSectionIndex + 1}` });\n this.formSections = newFormSections;\n }}\n >\n Add a Section\n </udp-button>\n </div>\n )}\n\n {this.formSections.map((section, sIndex) => {\n return (\n <div key={sIndex} class=\"form-section\">\n <div class=\"form-section-header\">\n <div class=\"form-section-header-title\">\n <unity-typography variant=\"h6\" color=\"inherit\">\n {section.title}\n </unity-typography>\n </div>\n\n {isEditable && (\n <div class=\"form-section-header-actions\">\n {sIndex > 0 && (\n <stencil-icon-button\n icon={getIconFromName('arrowUp')}\n tooltip=\"Move Section Up\"\n onClick={() => {\n this.handleSectionMoveUp(sIndex);\n }}\n />\n )}\n {sIndex < this.formSections.length - 1 && (\n <stencil-icon-button\n icon={getIconFromName('arrowDown')}\n tooltip=\"Move Section Down\"\n onClick={() => {\n this.handleSectionMoveDown(sIndex);\n }}\n />\n )}\n <stencil-icon-button icon={getIconFromName('edit')} tooltip={`Edit Section Fields`} onClick={() => this.handleSectionEditClick(sIndex)} />\n <stencil-icon-button\n icon={getIconFromName('trashCan')}\n tooltip=\"Delete Section\"\n onClick={e => {\n e.stopPropagation();\n this.dialogMessage = 'Are you sure you want to delete this section?';\n this.dialogAction = () => {\n this.handleSectionDelete(sIndex);\n this.isDialogOpen = false;\n };\n\n this.isDialogOpen = true;\n }}\n />\n </div>\n )}\n </div>\n\n <div class=\"form-section-questions-container\">\n {(this.isNewForm || this.isMostRecentFormVersion) && this.showMenuAtIndex && this.showMenuAtIndex.sIndex === sIndex && this.showMenuAtIndex.qIndex === 0 && (\n <udp-forms-builder-menu\n isVisible={true}\n questionsTemplate={questionsTemplate}\n onAddSection={() => {\n const newSectionIndex = this.formSections.length;\n const newFormSections = deepCloneFormSections(this.formSections);\n newFormSections.push({ ...formSectionDefault, order: newSectionIndex, title: `Section ${newSectionIndex + 1}` });\n this.formSections = newFormSections;\n this.showMenuAtIndex = { sIndex: newSectionIndex, qIndex: 0 };\n }}\n onAddQuestion={e => {\n const indices = this.showMenuAtIndex\n ? this.addQuestionOfType(e.detail, this.showMenuAtIndex.sIndex, this.showMenuAtIndex.qIndex)\n : this.addQuestionOfType(e.detail);\n\n this.editingQuestion = { ...indices };\n this.isQuestionEditorOpen = true;\n }}\n onCancelClick={() => (this.showMenuAtIndex = null)}\n />\n )}\n <div class=\"form-section-questions-draggable-container\" id={`section-${sIndex}`}>\n {section.formQuestions.map((questionItem, qIndex) => {\n return (\n <udp-forms-builder-question-item\n key={questionItem.id}\n iconName={questionItem.icon}\n primaryText={`${questionItem.questionText}`}\n secondaryText={questionItem.helperText ? questionItem.helperText : null}\n avatarBackgroundColor={this.validateQuestionItem(sIndex, qIndex) ? 'info' : 'warning'}\n >\n <stencil-chip slot=\"status-chip\" text=\"Required\" showDelete={false} clickable={false} hidden={!questionItem.required} />\n {isEditable && (\n <div slot=\"drag-and-drop\">\n <div class=\"form-question-drag-handle\">\n <div class=\"drag-wrapper\">\n <stencil-icon-button icon={getIconFromName('draggable')} tooltip=\"Move Question\" noBackground={true} />\n </div>\n </div>\n </div>\n )}\n\n <div slot=\"actions\">\n {isEditable ? (\n <fragment>\n <stencil-icon-button\n icon={getIconFromName('edit')}\n tooltip=\"Edit Question Details\"\n onClick={e => {\n e.stopPropagation();\n this.handleQuestionClick(sIndex, qIndex);\n }}\n noBackground={true}\n />\n <stencil-icon-button\n icon={getIconFromName('copy')}\n tooltip=\"Duplicate Question\"\n onClick={e => {\n e.stopPropagation();\n this.handleQuestionCopy(sIndex, qIndex);\n }}\n noBackground={true}\n />\n <stencil-icon-button\n icon={getIconFromName('trashCan')}\n tooltip=\"Delete Question\"\n onClick={e => {\n e.stopPropagation();\n this.dialogMessage = 'Are you sure you want to delete this question?';\n this.dialogAction = () => {\n this.handleQuestionDelete(sIndex, qIndex);\n this.isDialogOpen = false;\n };\n this.isDialogOpen = true;\n }}\n noBackground={true}\n />\n </fragment>\n ) : (\n <stencil-icon-button\n icon={getIconFromName('view')}\n tooltip=\"View Question Details\"\n onClick={e => {\n e.stopPropagation();\n this.handleQuestionClick(sIndex, qIndex);\n }}\n noBackground={true}\n />\n )}\n </div>\n </udp-forms-builder-question-item>\n );\n })}\n </div>\n\n {isEditable &&\n !this.showMenuAtIndex && ( // Only show button if no menu is active\n <div class=\"add-question-to-section-button-container\">\n <udp-button\n variant=\"text\"\n onClick={() => {\n this.showMenuAtIndex = { sIndex: sIndex, qIndex: section.formQuestions.length };\n }}\n startIcon={<udp-icon iconName={'add'} color={'inherit'} />}\n >\n Add a Question\n </udp-button>\n </div>\n )}\n\n {isEditable &&\n this.showMenuAtIndex?.sIndex === sIndex &&\n this.showMenuAtIndex?.qIndex === section.formQuestions.length &&\n section.formQuestions.length > 0 && (\n <udp-forms-builder-menu\n isVisible={true}\n questionsTemplate={questionsTemplate}\n onAddSection={() => {\n const newFormSections = deepCloneFormSections(this.formSections);\n newFormSections.splice(sIndex + 1, 0, []);\n this.formSections = newFormSections;\n this.showMenuAtIndex = null;\n }}\n onAddQuestion={e => {\n if (this.showMenuAtIndex) {\n const indices = this.addQuestionOfType(e.detail, this.showMenuAtIndex.sIndex, this.showMenuAtIndex.qIndex);\n this.editingQuestion = { ...indices };\n this.isQuestionEditorOpen = true;\n }\n }}\n onCancelClick={() => (this.showMenuAtIndex = null)}\n />\n )}\n </div>\n </div>\n );\n })}\n </div>\n </udp-container>\n )}\n </div>\n );\n }\n}\n"],"names":["formMetadataDefault","UdpFormsPageIdEnum","UdpFormsTypeEnum","questionsTemplate","deepCloneFormSections","uuidv4","formSectionDefault","getCurrentTenantId","styleOverrideDefault","makeApiCall","ConfigService","Sortable","h","getIconFromName"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,MAAM,kBAAkB,GAAG,qnDAAqnD;;;;;;;;;;;;;;MCmBnoD,eAAe,GAAA,MAAA;AAL5B,IAAA,WAAA,CAAA,OAAA,EAAA;;AAaU,QAAA,IAAA,CAAA,sBAAsB,GAAY,KAAK,CAAC;AACxC,QAAA,IAAA,CAAA,oBAAoB,GAAY,KAAK,CAAC;AACtC,QAAA,IAAA,CAAA,oBAAoB,GAAY,IAAI,CAAC;AACrC,QAAA,IAAA,CAAA,mBAAmB,GAAW,EAAE,CAAC;AAGhC,QAAA,IAAY,CAAA,YAAA,GAAoBA,mDAAsC;AACtE,QAAA,IAAY,CAAA,YAAA,GAAU,EAAE;AACxB,QAAA,IAAiB,CAAA,iBAAA,GAAU,EAAE;AAC7B,QAAA,IAAS,CAAA,SAAA,GAAY,IAAI;AACzB,QAAA,IAAuB,CAAA,uBAAA,GAAY,KAAK;AAExC,QAAA,IAAO,CAAA,OAAA,GAAY,KAAK;AACxB,QAAA,IAAS,CAAA,SAAA,GAAY,KAAK;AAE1B,QAAA,IAAoB,CAAA,oBAAA,GAAY,KAAK;AACrC,QAAA,IAAgB,CAAA,gBAAA,GAAY,KAAK;AACjC,QAAA,IAAY,CAAA,YAAA,GAAY,KAAK;AAC7B,QAAA,IAAe,CAAA,eAAA,GAA8C,IAAI;AACjE,QAAA,IAAe,CAAA,eAAA,GAA8C,IAAI;AACjE,QAAA,IAAc,CAAA,cAAA,GAA8B,IAAI;AAChD,QAAA,IAAoB,CAAA,oBAAA,GAAY,KAAK;AACrC,QAAA,IAAmB,CAAA,mBAAA,GAAY,KAAK;AACpC,QAAA,IAA0B,CAAA,0BAAA,GAAU,EAAE;AAGtC,QAAA,IAAY,CAAA,YAAA,GAAyB,IAAI;AACzC,QAAA,IAAa,CAAA,aAAA,GAAW,uCAAuC;AAIhE,QAAA,IAAiB,CAAA,iBAAA,GAAe,EAAE;AAClC,QAAA,IAAA,CAAA,kBAAkB,GAAGC,wBAAkB,CAAC,iBAAiB;QACzD,IAAA,CAAA,eAAe,GAAuC,MAAM,CAAC,IAAI,CAACC,sBAAgB;AACvF,aAAA,MAAM,CAAC,GAAG,IAAI,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;AACjC,aAAA,GAAG,CAAC,GAAG,KAAK;YACX,KAAK,EAAE,MAAM,CAACA,sBAAgB,CAAC,GAAoC,CAAC,CAAC;AACrE,YAAA,KAAK,EAAE,GAAG;AACX,SAAA,CAAC,CAAC;;AAiSG,QAAA,IAAgB,CAAA,gBAAA,GAAG,MAAK;AAC9B,YAAA,IAAI,CAAC,gBAAgB,GAAG,CAAC,IAAI,CAAC,gBAAgB;AAChD,SAAC;;AAGO,QAAA,IAAmB,CAAA,mBAAA,GAAG,WAAW,IAAG;AAC1C,YAAA,MAAM,QAAQ,GAAGC,iDAAiB,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,WAAW,KAAK,WAAW,CAAC;YAC3E,OAAO,QAAQ,GAAG,QAAQ,CAAC,gBAAgB,GAAG,SAAS;AACzD,SAAC;AAEO,QAAA,IAAwB,CAAA,wBAAA,GAAG,WAAW,IAAG;AAC/C,YAAA,MAAM,QAAQ,GAAGA,iDAAiB,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,WAAW,KAAK,WAAW,CAAC;AAC3E,YAAA,OAAO,QAAQ,GAAG,QAAQ,CAAC,qBAAqB,IAAI,KAAK,GAAG,KAAK;AACnE,SAAC;AAEO,QAAA,IAAkB,CAAA,kBAAA,GAAG,WAAW,IAAG;AACzC,YAAA,MAAM,QAAQ,GAAGA,iDAAiB,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,WAAW,KAAK,WAAW,CAAC;YAC3E,OAAO,QAAQ,GAAG,QAAQ,CAAC,IAAI,GAAG,IAAI;AACxC,SAAC;QAEO,IAAA,CAAA,oBAAoB,GAAG,CAAC,MAAc,EAAE,MAAc,KAAI;YAChE,MAAM,YAAY,GAAGC,qDAAqB,CAAC,IAAI,CAAC,YAAY,CAAC;AAC7D,YAAA,YAAY,CAAC,MAAM,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;AACpD,YAAA,IAAI,CAAC,YAAY,GAAG,YAAY;AAClC,SAAC;QAEO,IAAA,CAAA,kBAAkB,GAAG,CAAC,MAAc,EAAE,MAAc,KAAI;YAC9D,MAAM,YAAY,GAAGA,qDAAqB,CAAC,IAAI,CAAC,YAAY,CAAC;AAC7D,YAAA,MAAM,cAAc,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC;AAEtE,YAAA,MAAM,WAAW,mCACZ,cAAc,CAAA,EAAA,EACjB,YAAY,EAAE,CAAC,cAAc,CAAC,YAAY,IAAI,EAAE,IAAI,SAAS,EAC7D,EAAE,EAAEC,OAAM,EAAE,EAAA,CACb;AAED,YAAA,YAAY,CAAC,MAAM,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,EAAE,WAAW,CAAC;AACrE,YAAA,IAAI,CAAC,YAAY,GAAG,YAAY;AAClC,SAAC;QAEO,IAAA,CAAA,mBAAmB,GAAG,CAAC,MAAc,EAAE,MAAc,KAAI;YAC/D,IAAI,CAAC,eAAe,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE;AACzC,YAAA,IAAI,CAAC,oBAAoB,GAAG,IAAI;YAChC,IAAI,CAAC,iBAAiB,GAAGD,qDAAqB,CAAC,IAAI,CAAC,YAAY,CAAC;AACnE,SAAC;AAEO,QAAA,IAAmB,CAAA,mBAAA,GAAG,MAAK;AACjC,YAAA,IAAI,CAAC,oBAAoB,GAAG,KAAK;AACjC,YAAA,IAAI,CAAC,eAAe,GAAG,IAAI;AAC3B,YAAA,IAAI,CAAC,iBAAiB,GAAG,IAAI;AAC/B,SAAC;QAEO,IAAiB,CAAA,iBAAA,GAAG,CAAC,kBAAkB,EAAE,MAAe,EAAE,MAAe,KAAwC;AACvH,YAAA,MAAM,WAAW,GAAG;gBAClB,gBAAgB,EAAE,kBAAkB,CAAC,gBAAgB;gBACrD,WAAW,EAAE,kBAAkB,CAAC,WAAW;gBAC3C,eAAe,EAAE,kBAAkB,CAAC,sBAAsB;AAC1D,gBAAA,UAAU,EAAE,EAAE;AACd,gBAAA,YAAY,EAAE,EAAE;gBAChB,OAAO,EAAE,MAAM,KAAK,SAAS,GAAG,MAAM,GAAG,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,OAAO,GAAG,CAAC;gBACxJ,qBAAqB,EAAE,kBAAkB,CAAC,qBAAqB;gBAC/D,IAAI,EAAE,kBAAkB,CAAC,IAAI;AAC7B,gBAAA,QAAQ,EAAE,KAAK;AACf,gBAAA,IAAI,EAAE,IAAI;AACV,gBAAA,SAAS,EAAE,IAAI;gBACf,EAAE,EAAEC,OAAM,EAAE;aACb;YAED,MAAM,eAAe,GAAGD,qDAAqB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAEjE,IAAI,YAAY,GAAG,MAAM;YACzB,IAAI,YAAY,GAAG,MAAM;YAEzB,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,KAAK,SAAS,EAAE;;AAEhD,gBAAA,IAAI,eAAe,CAAC,MAAM,CAAC,CAAC,aAAa,EAAE;AACzC,oBAAA,eAAe,CAAC,MAAM,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,WAAW,CAAC;;qBAC/D;;AAEL,oBAAA,MAAM,cAAc,GAAG,eAAe,CAAC,MAAM,GAAG,CAAC;oBACjD,eAAe,CAAC,cAAc,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC;oBAC/D,YAAY,GAAG,cAAc;oBAC7B,YAAY,GAAG,eAAe,CAAC,cAAc,CAAC,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC;;;iBAEpE;;AAEL,gBAAA,MAAM,cAAc,GAAG,eAAe,CAAC,MAAM,GAAG,CAAC;AACjD,gBAAA,IAAI,cAAc,GAAG,CAAC,IAAI,eAAe,CAAC,cAAc,CAAC,CAAC,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE;oBACpF,eAAe,CAAC,IAAI,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EAAME,kDAAkB,CAAA,EAAA,EAAE,aAAa,EAAE,CAAC,WAAW,CAAC,EAAA,CAAA,CAAG;AAC7E,oBAAA,YAAY,GAAG,eAAe,CAAC,MAAM,GAAG,CAAC;oBACzC,YAAY,GAAG,CAAC;;qBACX;oBACL,eAAe,CAAC,cAAc,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC;oBAC/D,YAAY,GAAG,cAAc;oBAC7B,YAAY,GAAG,eAAe,CAAC,cAAc,CAAC,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC;;;;AAK3E,YAAA,IAAI,CAAC,iBAAiB,GAAG,eAAe;YACxC,IAAI,IAAI,CAAC,eAAe;AAAE,gBAAA,IAAI,CAAC,eAAe,GAAG,IAAI;YAErD,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,YAAY,EAAE;AACvD,SAAC;;AAgBO,QAAA,IAAA,CAAA,qBAAqB,GAAG,CAAC,MAAc,KAAI;YACjD,IAAI,MAAM,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC;gBAAE;YAE5C,MAAM,YAAY,GAAG,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC;YAC3C,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC;AACnG,YAAA,IAAI,CAAC,YAAY,GAAG,YAAY;AAClC,SAAC;AAEO,QAAA,IAAA,CAAA,mBAAmB,GAAG,CAAC,MAAc,KAAI;YAC/C,IAAI,MAAM,IAAI,CAAC;gBAAE;YAEjB,MAAM,YAAY,GAAG,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC;YAC3C,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC;AACnG,YAAA,IAAI,CAAC,YAAY,GAAG,YAAY;AAClC,SAAC;AAEO,QAAA,IAAA,CAAA,mBAAmB,GAAG,CAAC,MAAc,KAAI;YAC/C,MAAM,eAAe,GAAG,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC;AAC9C,YAAA,eAAe,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;AACjC,YAAA,IAAI,CAAC,YAAY,GAAG,eAAe;AACrC,SAAC;AAEO,QAAA,IAA2B,CAAA,2BAAA,GAAG,MAAK;AACzC,YAAA,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,iBAAiB;AAC1C,YAAA,IAAI,CAAC,iBAAiB,GAAG,IAAI;AAC/B,SAAC;AAEO,QAAA,IAA6B,CAAA,6BAAA,GAAG,MAAc;;AAEpD,YAAA,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;AACtF,SAAC;AAEO,QAAA,IAAA,CAAA,sBAAsB,GAAG,CAAC,MAAc,KAAI;AAClD,YAAA,IAAI,CAAC,cAAc,GAAG,EAAE,MAAM,EAAE;AAChC,YAAA,IAAI,CAAC,mBAAmB,GAAG,IAAI;YAC/B,IAAI,CAAC,iBAAiB,GAAGF,qDAAqB,CAAC,IAAI,CAAC,YAAY,CAAC;AACnE,SAAC;AAEO,QAAA,IAAkB,CAAA,kBAAA,GAAG,MAAK;AAChC,YAAA,IAAI,CAAC,mBAAmB,GAAG,KAAK;AAChC,YAAA,IAAI,CAAC,cAAc,GAAG,IAAI;AAC1B,YAAA,IAAI,CAAC,iBAAiB,GAAG,IAAI;AAC/B,SAAC;AA6fF;;AA37BC,IAAA,MAAM,cAAc,GAAA;;QAElB,IAAI,CAAC,YAAY,CAAC,SAAS,GAAGJ,mDAAmB,CAAC,SAAS;AAC3D,QAAA,IAAI,CAAC,YAAY,CAAC,QAAQ,GAAGO,8BAAkB,EAAE;QACjD,IAAI,CAAC,YAAY,CAAC,IAAI,GAAGP,mDAAmB,CAAC,IAAI;QACjD,IAAI,CAAC,YAAY,CAAC,OAAO,GAAGA,mDAAmB,CAAC,OAAO;QACvD,IAAI,CAAC,YAAY,CAAC,IAAI,GAAGA,mDAAmB,CAAC,IAAI;QACjD,IAAI,CAAC,YAAY,CAAC,WAAW,GAAGA,mDAAmB,CAAC,WAAW;AAC/D,QAAA,IAAI,CAAC,YAAY,CAAC,cAAc,GAAGQ,oDAAoB;AAEvD,QAAA,IAAI;AACF,YAAA,IAAI,CAAC,SAAS,GAAG,IAAI;;AAGrB,YAAA,MAAM,cAAc,GAAG,MAAMC,uBAAW,CAAC,KAAK,EAAEC,2BAAa,CAAC,eAAe,GAAG,YAAY,CAAC;YAE7F,IAAI,CAAC,cAAc,EAAE;AACnB,gBAAA,MAAM,IAAI,KAAK,CAAC,CAAA,0BAAA,CAA4B,CAAC;;YAI/C,IAAI,CAAC,0BAA0B,GAAG,cAAc,CAAC,GAAG,CAAC,SAAS,IAAG;gBAC/D,OAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EAAY,SAAS,CAAA,EAAA,EAAE,KAAK,EAAE,SAAS,CAAC,EAAE,EAAE,KAAK,EAAE,SAAS,CAAC,IAAI,EAAG,CAAA;AACtE,aAAC,CAAC;;YAGF,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,OAAO,EAAE;gBAC/B,MAAM,gBAAgB,GAAG,MAAMD,uBAAW,CAAC,KAAK,EAAE,GAAGC,2BAAa,CAAC,eAAe,CAAY,SAAA,EAAA,IAAI,CAAC,MAAM,CAAA,CAAA,EAAI,IAAI,CAAC,OAAO,CAAW,SAAA,CAAA,CAAC;AACrI,gBAAA,MAAM,yBAAyB,GAAG,MAAMD,uBAAW,CAAC,KAAK,EAAE,CAAA,EAAGC,2BAAa,CAAC,eAAe,CAAY,SAAA,EAAA,IAAI,CAAC,MAAM,CAAA,SAAA,CAAW,CAAC;AAE9H,gBAAA,IAAI,CAAC,SAAS,GAAG,KAAK;AAEtB,gBAAA,IAAI,CAAC,gBAAgB,IAAI,CAAC,yBAAyB,IAAI,CAAC,gBAAgB,CAAC,EAAE,IAAI,CAAC,yBAAyB,EAAE;AACzG,oBAAA,MAAM,IAAI,KAAK,CAAC,CAAA,wBAAA,CAA0B,CAAC;;;AAI7C,gBAAA,IAAI,gBAAgB,CAAC,EAAE,IAAI,yBAAyB,CAAC,EAAE,IAAI,gBAAgB,CAAC,OAAO,IAAI,yBAAyB,CAAC,OAAO,EAAE;AACxH,oBAAA,IAAI,CAAC,uBAAuB,GAAG,IAAI;;;AAIrC,gBAAA,MAAM,YAAY,GAAG,eAAe,CAAC,gBAAgB,CAAC,qBAAqB,CAAC,CAAC,GAAG,CAAC,OAAO,KAAI,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EAAM,OAAO,CAAA,EAAA,EAAE,aAAa,EAAE,EAAE,EAAG,CAAA,CAAA,CAAC;AAChI,gBAAA,YAAY,CAAC,OAAO,CAAC,OAAO,IAAG;AAC5B,oBAAA,IAAG,CAAC,OAAO,CAAC,iBAAiB,EAAE;AAC5B,wBAAA,OAAO,CAAC,iBAAiB,GAAG,EAAE;;yBACzB;wBACL,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,iBAAiB,CAAC;;AAEvE,iBAAC,CAAC;;AAIF,gBAAA,gBAAgB,CAAC,aAAa,CAAC,OAAO,CAAC,QAAQ,IAAG;AAChD,oBAAA,MAAM,OAAO,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,KAAK,QAAQ,CAAC,aAAa,CAAC;oBACvE,IAAI,OAAO,EAAE;AACX,wBAAA,MAAM,UAAU,GAAQ,MAAA,CAAA,MAAA,CAAA,EAAA,EAAA,QAAQ,CAAC,eAAe,CAAE;;wBAGlD,IAAI,UAAU,IAAI,UAAU,IAAI,OAAO,IAAI,UAAU,EAAE;4BACrD,OAAO,UAAU,CAAC,KAAK;;wBAGzB,OAAO,CAAC,aAAa,CAAC,IAAI,iCACrB,QAAQ,CAAA,EAAA,EACX,eAAe,EAAE,UAAU,EAC3B,gBAAgB,EAAE,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,WAAW,CAAC,EAChE,qBAAqB,EAAE,IAAI,CAAC,wBAAwB,CAAC,QAAQ,CAAC,WAAW,CAAC,EAC1E,IAAI,EAAE,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,WAAW,CAAC,IACnD;;AAIN,iBAAC,CAAC;;AAGF,gBAAA,YAAY,CAAC,OAAO,CAAC,OAAO,IAAG;oBAC7B,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,aAAa,GAAG,CAAC,CAAC,aAAa,CAAC;AACzE,iBAAC,CAAC;;AAGF,gBAAA,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC;gBAG9C,MAAW,QAAQ,GAAK,MAAA,CAAA,gBAAgB,EAAlC,EAAe,CAAmB;;gBAGxC,QAAQ,CAAC,cAAc,GAAG,IAAI,CAAC,SAAS,CAACF,oDAAoB,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC;;AAGzG,gBAAA,IAAI,CAAC,YAAY,GAAG,QAAQ;AAC5B,gBAAA,IAAI,CAAC,YAAY,GAAG,YAAY;AAChC,gBAAA,IAAI,CAAC,SAAS,GAAG,KAAK;;;QAExB,OAAO,CAAC,EAAE;AACV,YAAA,IAAI,CAAC,OAAO,GAAG,IAAI;AAEnB,YAAA,IAAI,CAAC,eAAe,CAAC,yBAAyB,EAAE;AAC9C,gBAAA,OAAO,EAAE,OAAO;gBAChB,YAAY,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE;AACxD,aAAA,CAAC;;gBACM;AACR,YAAA,IAAI,CAAC,SAAS,GAAG,KAAK;;;AAI1B,IAAA,MAAM,UAAU,GAAA;AACd,QAAA,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE;YACvB;;AAGF,QAAA,IAAI,CAAC,SAAS,GAAG,IAAI;AAErB,QAAA,IAAI;;AAEF,YAAA,MAAM,qBAAqB,GAAG;AAC5B,gBAAA,IAAI,EAAE,IAAI,CAAC,YAAY,CAAC,IAAI;AAC5B,gBAAA,WAAW,EAAE,IAAI,CAAC,YAAY,CAAC,WAAW;AAC1C,gBAAA,QAAQ,EAAE,IAAI,CAAC,YAAY,CAAC,QAAQ;AACpC,gBAAA,SAAS,EAAE,IAAI,CAAC,YAAY,CAAC,SAAS;AACtC,gBAAA,IAAI,EAAE,IAAI,CAAC,YAAY,CAAC,IAAI;gBAC5B,cAAc,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,cAAc,CAAC;AAChE,gBAAA,EAAE,EAAE,IAAI,CAAC,YAAY,CAAC,EAAE;AACxB,gBAAA,OAAO,EAAE,IAAI,CAAC,YAAY,CAAC,OAAO;aACnC;AAGD,YAAA,MAAM,OAAO,GAAG,CAAA,EAAGE,2BAAa,CAAC,eAAe,WAAW,IAAI,CAAC,uBAAuB,GAAG,WAAW,GAAG,EAAE,EAAE;YAC5G,MAAM,YAAY,GAAG,MAAMD,uBAAW,CAAC,MAAM,EAAE,OAAO,EAAE,qBAAqB,CAAC;AAE9E,YAAA,MAAM,MAAM,GAAG,YAAY,CAAC,EAAE;AAC9B,YAAA,MAAM,WAAW,GAAG,YAAY,CAAC,OAAO;AAExC,YAAA,IAAI,CAAC,YAAY,IAAI,CAAC,YAAY,CAAC,EAAE,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE;AAC9D,gBAAA,MAAM,IAAI,KAAK,CAAC,CAAA,uBAAA,EAA0B,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAAE,CAAA,CAAC;;;YAI3E,IAAI,YAAY,GAAG,CAAC;YACpB,IAAI,aAAa,GAAG,CAAC;YACrB,MAAM,gBAAgB,GAAmB,EAAE;AAE3C,YAAA,KAAK,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,EAAE;gBAC3D,YAAY,IAAI,CAAC;AAEjB,gBAAA,MAAM,oBAAoB,GAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EACrB,OAAO,CAAA,EAAA,EACV,MAAM;oBACN,WAAW,EACX,KAAK,EAAE,YAAY,EACnB,iBAAiB,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,iBAAiB,CAAC,EAC5D,IAAI,EAAE,UAAU,YAAY,CAAA,CAAE,EAAA,CAC/B;AAED,gBAAA,MAAM,eAAe,GAAG,MAAMA,uBAAW,CAAC,MAAM,EAAE,CAAG,EAAAC,2BAAa,CAAC,eAAe,CAAA,eAAA,CAAiB,EAAE,oBAAoB,CAAC;gBAE1H,IAAI,CAAC,eAAe,IAAI,CAAC,eAAe,CAAC,EAAE,EAAE;AAC3C,oBAAA,MAAM,IAAI,KAAK,CAAC,CAAA,0BAAA,EAA6B,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,CAAE,CAAA,CAAC;;AAGjF,gBAAA,MAAM,SAAS,GAAG,eAAe,CAAC,EAAE;AAEpC,gBAAA,KAAK,MAAM,QAAQ,IAAI,OAAO,CAAC,aAAa,EAAE;oBAC5C,aAAa,IAAI,CAAC;AAElB,oBAAA,MAAM,qBAAqB,GAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EACtB,QAAQ,CAAA,EAAA,EACX,MAAM;wBACN,WAAW,EACX,OAAO,EAAE,MAAM,GAAG,CAAC,EACnB,aAAa,EACb,aAAa,EAAE,SAAS,EACxB,IAAI,EAAE,CAAA,QAAA,EAAW,aAAa,CAAE,CAAA,GACjC;AAED,oBAAA,MAAM,eAAe,GAAGD,uBAAW,CAAC,MAAM,EAAE,CAAA,EAAGC,2BAAa,CAAC,eAAe,CAAA,gBAAA,CAAkB,EAAE,qBAAqB,CAAC;AACtH,oBAAA,gBAAgB,CAAC,IAAI,CAAC,eAAe,CAAC;;;;AAK1C,YAAA,MAAM,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC;AAEnC,YAAA,IAAI,CAAC,eAAe,CAAC,SAAS,EAAE;AAC9B,gBAAA,OAAO,EAAE,SAAS;gBAClB,YAAY,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE;AACxD,aAAA,CAAC;AAEF,YAAA,IAAG,IAAI,CAAC,mBAAmB,EAAE;AAC3B,gBAAA,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAG,EAAA,IAAI,CAAC,mBAAmB,gBAAgB,MAAM,CAAA,cAAA,EAAiB,WAAW,CAAA,CAAE,CAAC;gBAClG;;AAGF,YAAA,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAS,MAAA,EAAA,IAAI,CAAC,kBAAkB,gBAAgB,MAAM,CAAA,cAAA,EAAiB,WAAW,CAAA,CAAE,CAAC;;QACvG,OAAO,KAAK,EAAE;AACd,YAAA,OAAO,CAAC,KAAK,CAAC,wBAAwB,EAAE,KAAK,CAAC;AAC9C,YAAA,IAAI,CAAC,eAAe,CAAC,mBAAmB,EAAE;AACxC,gBAAA,OAAO,EAAE,OAAO;gBAChB,YAAY,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE;AACxD,aAAA,CAAC;;gBACM;AACR,YAAA,IAAI,CAAC,SAAS,GAAG,KAAK;;;;IAM1B,gBAAgB,GAAA;QACd,IAAI,CAAC,kBAAkB,EAAE;;IAG3B,kBAAkB,GAAA;QAChB,IAAI,CAAC,kBAAkB,EAAE;;IAG3B,iBAAiB,GAAA;QACf,IAAI,CAAC,cAAc,EAAE;;;;;;;;;;IAevB,uBAAuB,GAAA;QACrB,IAAI,CAAC,cAAc,EAAE;;;IAKf,kBAAkB,GAAA;;QAExB,IAAI,EAAE,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,uBAAuB,CAAC,EAAE;YACrD;;AAGF,QAAA,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,QAAQ,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;AAC9D,QAAA,IAAI,CAAC,iBAAiB,GAAG,EAAE;QAE3B,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,MAAM,KAAI;AACtC,YAAA,MAAM,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,aAAa,CAAC,CAAA,SAAA,EAAY,MAAM,CAAA,CAAE,CAAC;YACrE,IAAI,EAAE,EAAE;AACN,gBAAA,MAAM,QAAQ,GAAG,IAAIC,yBAAQ,CAAC,EAAE,EAAE;AAChC,oBAAA,SAAS,EAAE,GAAG;AACd,oBAAA,MAAM,EAAE,+BAA+B;AACvC,oBAAA,SAAS,EAAE,iCAAiC;AAC5C,oBAAA,MAAM,EAAE,4BAA4B;AACpC,oBAAA,UAAU,EAAE,gBAAgB;AAC5B,oBAAA,WAAW,EAAE,iBAAiB;AAC9B,oBAAA,SAAS,EAAE,UAAU;AACrB,oBAAA,aAAa,EAAE,KAAK;AACpB,oBAAA,cAAc,EAAE,KAAK;AACrB,oBAAA,aAAa,EAAE,GAAG;AAClB,oBAAA,KAAK,EAAE,GAAG,IAAI,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,MAAM,CAAC;AAC9C,iBAAA,CAAC;AACF,gBAAA,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC;;AAEzC,SAAC,CAAC;;IAGI,aAAa,CAAC,GAA2B,EAAE,MAAc,EAAA;AAC/D,QAAA,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ;AAC7B,QAAA,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ;QAC7B,IAAI,QAAQ,KAAK,QAAQ,IAAI,QAAQ,IAAI,IAAI,IAAI,QAAQ,IAAI,IAAI;YAAE;QAEnE,MAAM,WAAW,GAAG,eAAe,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;AAC9D,QAAA,MAAM,CAAC,KAAK,CAAC,GAAG,WAAW,CAAC,aAAa,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;QAC7D,WAAW,CAAC,aAAa,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,EAAE,KAAK,CAAC;;QAGpD,MAAM,eAAe,GAAGP,qDAAqB,CAAC,IAAI,CAAC,YAAY,CAAC;AAChE,QAAA,eAAe,CAAC,MAAM,CAAC,GAAG,WAAW;AAErC,QAAA,IAAI,CAAC,YAAY,GAAG,eAAe;;IA8G7B,SAAS,CAAC,MAAW,EAAE,MAAW,EAAA;QACxC,MAAM,MAAM,GAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EAAQ,MAAM,CAAE;AAC5B,QAAA,KAAK,MAAM,GAAG,IAAI,MAAM,EAAE;YACxB,IAAI,MAAM,CAAC,GAAG,CAAC,IAAI,OAAO,MAAM,CAAC,GAAG,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE;gBACjF,MAAM,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;;iBACvD;gBACL,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC;;;AAG7B,QAAA,OAAO,MAAM;;;IAmDP,WAAW,GAAA;AACjB,QAAA,OAAO,IAAI,CAAC,oBAAoB,EAAE,IAAI,IAAI,CAAC,oBAAoB,EAAE,IAAI,IAAI,CAAC,oBAAoB,EAAE;;IAG1F,oBAAoB,GAAA;;AAC3B,QAAA,IAAI,EAAC,CAAA,EAAA,GAAA,IAAI,CAAC,YAAY,CAAC,IAAI,MAAE,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAA,IAAI,EAAE,CAAA,EAAE;AACnC,YAAA,IAAI,CAAC,eAAe,CAAC,2BAA2B,EAAE;AAChD,gBAAA,OAAO,EAAE,OAAO;gBAChB,YAAY,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE;AACxD,aAAA,CAAC;AACD,YAAA,OAAO,KAAK;;AAGd,QAAA,OAAO,IAAI;;IAGL,oBAAoB,GAAA;QAC1B,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE;AAChC,YAAA,IAAI,CAAC,eAAe,CAAC,8CAA8C,EAAE;AACnE,gBAAA,OAAO,EAAE,OAAO;gBAChB,YAAY,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE;AACxD,aAAA,CAAC;AAEF,YAAA,OAAO,KAAK;;AAGd,QAAA,KAAK,IAAI,MAAM,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE;YAChE,MAAM,WAAW,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC;YAC7C,MAAM,SAAS,GAAG,CAAA,WAAW,KAAX,IAAA,IAAA,WAAW,KAAX,MAAA,GAAA,MAAA,GAAA,WAAW,CAAE,aAAa,KAAI,EAAE;AAElD,YAAA,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE;AACxB,gBAAA,MAAM,YAAY,GAAG,CAAA,WAAW,KAAA,IAAA,IAAX,WAAW,KAAA,MAAA,GAAA,MAAA,GAAX,WAAW,CAAE,KAAK,IAAG,CAAA,CAAA,EAAI,WAAW,CAAC,KAAK,CAAG,CAAA,CAAA,GAAG,CAAA,CAAA,EAAI,MAAM,GAAG,CAAC,EAAE;AACrF,gBAAA,IAAI,CAAC,eAAe,CAAC,CAAW,QAAA,EAAA,YAAY,sCAAsC,EAAE;AAClF,oBAAA,OAAO,EAAE,OAAO;oBAChB,YAAY,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE;AACxD,iBAAA,CAAC;AACF,gBAAA,OAAO,KAAK;;;AAIhB,QAAA,OAAO,IAAI;;IAGL,oBAAoB,GAAA;AAC1B,QAAA,KAAK,IAAI,MAAM,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE;YAChE,MAAM,WAAW,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC;YAC7C,MAAM,SAAS,GAAG,CAAA,WAAW,KAAX,IAAA,IAAA,WAAW,KAAX,MAAA,GAAA,MAAA,GAAA,WAAW,CAAE,aAAa,KAAI,EAAE;AAClD,YAAA,KAAK,IAAI,MAAM,GAAG,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE;gBACxD,MAAM,OAAO,GAAG,IAAI,CAAC,oBAAoB,CAAC,MAAM,EAAE,MAAM,CAAC;gBACzD,IAAI,CAAC,OAAO,EAAE;AACZ,oBAAA,IAAI,CAAC,eAAe,CAAC,gCAAgC,EAAE;AACrD,wBAAA,OAAO,EAAE,OAAO;wBAChB,YAAY,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE;AACxD,qBAAA,CAAC;AACF,oBAAA,OAAO,KAAK;;;;AAIlB,QAAA,OAAO,IAAI;;IAGL,oBAAoB,CAAC,MAAc,EAAE,MAAc,EAAA;AACzD,QAAA,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC;;AAEpE,QAAA,MAAM,QAAQ,GAAGD,iDAAiB,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,WAAW,KAAK,YAAY,CAAC,WAAW,CAAC;QACxF,MAAM,oBAAoB,GAAG,EAAE,QAAQ,IAAK,QAAgB,CAAC,oBAAoB,CAAC;AAClF,QAAA,IAAI,oBAAoB,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE;AACtD,YAAA,OAAO,KAAK;;AAGd,QAAA,IAAI,YAAY,CAAC,qBAAqB,EAAE;AACtC,YAAA,MAAM,UAAU,GAAG,YAAY,CAAC,eAAe;;YAG/C,IAAI,EAAC,UAAU,KAAV,IAAA,IAAA,UAAU,KAAV,MAAA,GAAA,MAAA,GAAA,UAAU,CAAE,QAAQ,CAAA,EAAE;;AAEzB,gBAAA,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,KAAA,IAAA,IAAV,UAAU,KAAA,MAAA,GAAA,MAAA,GAAV,UAAU,CAAE,KAAK,CAAC,IAAI,UAAU,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;AACtE,oBAAA,OAAO,KAAK;;;gBAId,MAAM,iBAAiB,GAAG,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;gBAErF,IAAI,iBAAiB,EAAE;AACrB,oBAAA,OAAO,KAAK;;;;AAKlB,QAAA,OAAO,IAAI;;IAIb,MAAM,GAAA;AACJ,QAAA,IAAI,IAAI,CAAC,OAAO,EAAE;YAChB,OAAOS,gEAAmD;;QAG5D,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,uBAAuB;AAEjE,QAAA,QACEA,OAAA,CAAA,KAAA,EAAA,IAAA,EAEEA,OACE,CAAA,uBAAA,EAAA,EAAA,KAAK,EAAE,kBAAkB,EACzB,iBAAiB,EAAE,UAAU,IAAI,IAAI,CAAC,uBAAuB,GAAG,CAAyB,sBAAA,EAAA,IAAI,CAAC,OAAO,GAAG,CAAC,CAAG,CAAA,CAAA,GAAG,iBAAiB,IAAI,EAAE,EACtI,kBAAkB,EAAE,UAAU,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,GAAG,IAAI;;AAE/D,YAAA,oBAAoB,EAClB,UAAU,GAAG,CAAC,EAAE,KAAK,EAAE,iBAAiB,EAAE,YAAY,EAAE,IAAI,CAAC,gBAAgB,EAAE,OAAO,EAAE,iBAAiB,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAEC,yBAAe,CAAC,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,EAEtK,IAAI,EAAE,KAAK,EACX,CAAA,EAKFD,OAAA,CAAA,gBAAA,EAAA,EACE,IAAI,EAAE,IAAI,CAAC,oBAAoB,EAC/B,mBAAmB,EAAE,MAAM,IAAI,CAAC,mBAAmB,EAAE,EACrD,uBAAuB,EAAE,MAAK;;;AAG5B,gBAAA,IAAI,CAAC,IAAI,CAAC,6BAA6B,EAAE,EAAE;oBACzC;;gBAEF,IAAI,CAAC,2BAA2B,EAAE;gBAClC,IAAI,CAAC,mBAAmB,EAAE;AAC5B,aAAC,EACD,qBAAqB,EAAE,CAAC,IAAI,CAAC,6BAA6B,EAAE,EAC5D,KAAK,EAAC,eAAe,EACrB,QAAQ,EAAC,OAAO,EAChB,KAAK,EAAC,IAAI,EACV,kBAAkB,EAAC,QAAQ,EAAA,EAE1B,IAAI,CAAC,oBAAoB,KACxBA,OAAK,CAAA,KAAA,EAAA,EAAA,KAAK,EAAC,2BAA2B,EAAA,EACpCA,OAAA,CAAA,2BAAA,EAAA,EACE,iBAAiB,EAAE,IAAI,CAAC,iBAAiB,EACzC,MAAM,EAAE,IAAI,CAAC,eAAe,CAAC,MAAM,EACnC,MAAM,EAAE,IAAI,CAAC,eAAe,CAAC,MAAM,EACnC,UAAU,EAAE,CAAC,UAAU,EACvB,yBAAyB,EAAE,OAAO,KAAK,IAAI,CAAC,iBAAiB,GAAG,OAAO,CAAC,EACxE,aAAa,EAAE,IAAI,CAAC,0BAA0B,EAC9C,QAAQ,EAAE,IAAI,CAAC,YAAY,CAAC,IAAI,EAChC,sBAAsB,EAAE,IAAI,CAAC,sBAAsB,EACnD,oBAAoB,EAAE,IAAI,CAAC,oBAAoB,EAC/C,CAAA,CACE,CACP,CACc,EAEjBA,OAAA,CAAA,gBAAA,EAAA,EACE,IAAI,EAAE,IAAI,CAAC,mBAAmB,EAC9B,mBAAmB,EAAE,MAAM,IAAI,CAAC,kBAAkB,EAAE,EACpD,KAAK,EAAC,qBAAqB,EAC3B,QAAQ,EAAC,OAAO,EAChB,KAAK,EAAC,IAAI,EACV,qBAAqB,EAAE,CAAC,IAAI,CAAC,6BAA6B,EAAE,EAC5D,kBAAkB,EAAC,QAAQ,EAC3B,uBAAuB,EAAE,MAAK;;;AAG5B,gBAAA,IAAI,CAAC,IAAI,CAAC,6BAA6B,EAAE,EAAE;oBACzC;;gBAEF,IAAI,CAAC,2BAA2B,EAAE;gBAClC,IAAI,CAAC,kBAAkB,EAAE;AAC3B,aAAC,EAAA,EAEA,IAAI,CAAC,mBAAmB,KACvBA,OAAA,CAAA,KAAA,EAAA,EAAK,KAAK,EAAC,0BAA0B,EAAA,EACnCA,OAAA,CAAA,0BAAA,EAAA,EACE,iBAAiB,EAAE,IAAI,CAAC,iBAAiB,EACzC,MAAM,EAAE,IAAI,CAAC,cAAc,CAAC,MAAM,EAClC,UAAU,EAAE,CAAC,UAAU,EACvB,yBAAyB,EAAE,OAAO,KAAK,IAAI,CAAC,iBAAiB,GAAG,OAAO,CAAC,EACxE,CAAA,CACE,CACP,CACc,EACjBA,OACE,CAAA,eAAA,EAAA,EAAA,IAAI,EAAE,IAAI,CAAC,YAAY,EACvB,OAAO,EAAE,IAAI,CAAC,aAAa,EAC3B,QAAQ,EAAE,SAAS,EACnB,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,MAAK;AACd,gBAAA,IAAI,OAAO,IAAI,CAAC,YAAY,KAAK,UAAU,EAAE;oBAC3C,IAAI,CAAC,YAAY,EAAE;;AAEvB,aAAC,EACD,SAAS,EAAE,OAAO,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC,EAC5C,CAAA,EAED,IAAI,CAAC,SAAS,IAAIA,OAAqB,CAAA,mBAAA,EAAA,IAAA,CAAA,EACvC,CAAC,IAAI,CAAC,SAAS,KACdA,OAAe,CAAA,eAAA,EAAA,EAAA,QAAQ,EAAC,IAAI,EAAA,EAC1BA,OAAK,CAAA,KAAA,EAAA,EAAA,KAAK,EAAC,gBAAgB,EAAA,EACzBA,OAAK,CAAA,KAAA,EAAA,EAAA,KAAK,EAAC,wBAAwB,EAAA,EACjCA,OAAA,CAAA,KAAA,EAAA,EAAK,KAAK,EAAC,6BAA6B,EAAA,EACrC,UAAU,IACTA,OAAA,CAAA,KAAA,EAAA,EAAK,KAAK,EAAC,yBAAyB,EAAA,EAClCA,OAAA,CAAA,YAAA,EAAA,EACE,KAAK,EAAC,WAAW,EACjB,KAAK,EAAE,IAAI,CAAC,YAAY,CAAC,IAAI,EAC7B,WAAW,EAAC,WAAW,EACvB,QAAQ,EAAE,CAAC,UAAU,EACrB,QAAQ,EAAE,IAAI,EACd,MAAM,EAAC,MAAM,EACb,YAAY,EAAE,GAAG,EACjB,OAAO,EAAE,CAAC,IAAG;AACX,gBAAA,IAAI,CAAC,YAAY,GACZ,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EAAA,IAAI,CAAC,YAAY,CAAA,EAAA,EACpB,IAAI,EAAG,CAAC,CAAC,MAA2B,CAAC,KAAK,GAC3C;aACF,EAAA,CACW,CACV,KAENA,OAAA,CAAA,KAAA,EAAA,EAAK,KAAK,EAAC,2BAA2B,EAAA,EACpCA,OAAA,CAAA,kBAAA,EAAA,EAAkB,OAAO,EAAE,IAAI,EAAA,EAAG,IAAI,CAAC,YAAY,CAAC,IAAI,GAAG,cAAc,CAAoB,CACzF,CACP,CACG,EAENA,OAAA,CAAA,KAAA,EAAA,EAAK,KAAK,EAAC,oCAAoC,EAAA,EAC5C,UAAU,IACTA,OAAA,CAAA,KAAA,EAAA,EAAK,KAAK,EAAC,4BAA4B,EAAA,EACrCA,OAAA,CAAA,WAAA,EAAA,EACE,KAAK,EAAC,kBAAkB,EACxB,KAAK,EAAE,IAAI,CAAC,YAAY,CAAC,WAAW,EACpC,WAAW,EAAC,kBAAkB,EAC9B,QAAQ,EAAE,CAAC,UAAU,EACrB,QAAQ,EAAE,KAAK,EACf,MAAM,EAAC,MAAM,EACb,YAAY,EAAE,GAAG,EACjB,OAAO,EAAE,CAAC,IAAG;AACX,gBAAA,IAAI,CAAC,YAAY,GACZ,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EAAA,IAAI,CAAC,YAAY,CAAA,EAAA,EACpB,WAAW,EAAG,CAAC,CAAC,MAA2B,CAAC,KAAK,GAClD;AACH,aAAC,EAAA,CACU,CACT,KAENA,OAAA,CAAA,KAAA,EAAA,EAAK,KAAK,EAAC,kCAAkC,EAAA,EAC3CA,OAAmB,CAAA,kBAAA,EAAA,IAAA,EAAA,IAAI,CAAC,YAAY,CAAC,WAAW,CAAoB,CAChE,CACP,CACG,EACL,IAAI,CAAC,sBAAsB,KACxB,IAAI,CAAC,SAAS;YACZA,OAAA,CAAA,cAAA,EAAA,EACA,KAAK,EAAC,WAAW,EACnB,GAAG,EAAC,wBAAwB,EAC5B,YAAY,EAAE,IAAI,CAAC,YAAY,CAAC,IAAI,EACpC,OAAO,EAAE,IAAI,CAAC,eAAe,EAC7B,QAAQ,EAAE,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,SAAS,EACxC,QAAQ,EAAE,IAAI,EACd,QAAQ,EAAE,CAAC,CAAc,KAAI;oBAC3B,IAAI,CAAC,YAAY,GACZ,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EAAA,IAAI,CAAC,YAAY,CACpB,EAAA,EAAA,IAAI,EAAE,CAAC,CAAC,MAAM,GACf;iBACF,EAAA,CACC;YACFA,OAAK,CAAA,KAAA,EAAA,EAAA,KAAK,EAAC,gCAAgC,EAAA,EACzCA,OAAA,CAAA,kBAAA,EAAA,IAAA,iBAA8BV,sBAAgB,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAoB,CACtF,CACT,EACDU,OAAK,CAAA,KAAA,EAAA,EAAA,KAAK,EAAC,gCAAgC,EAAA,EACzCA,OAAA,CAAA,kBAAA,EAAA,IAAA,eAA4B,IAAI,CAAC,YAAY,CAAC,OAAO,CAAoB,CACrE,EACL,IAAI,CAAC,oBAAoB,KACxBA,OAAK,CAAA,KAAA,EAAA,EAAA,KAAK,EAAC,gCAAgC,EAAA,EAC3CA,OAAK,CAAA,KAAA,EAAA,EAAA,KAAK,EAAC,kBAAkB,EAAA,EAC3BA,OAAA,CAAA,gBAAA,EAAA,EACE,KAAK,EAAC,cAAc,EACpB,MAAM,EAAC,MAAM,EACb,QAAQ,EAAE,CAAC,UAAU,EACrB,OAAO,EAAE,IAAI,CAAC,YAAY,CAAC,SAAS,KAAK,IAAI,EAC7C,aAAa,EAAC,OAAO,EACrB,eAAe,EAAE,MAAK;gBACpB,IAAI,YAAY,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,SAAS;gBAC/C,IAAI,CAAC,YAAY,GAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EACZ,IAAI,CAAC,YAAY,CAAA,EAAA,EACpB,SAAS,EAAE,YAAY,EAAA,CACxB;aACF,EACiB,CAAA,CAChB,CACF,CACL,CACG,EAEL,UAAU,KACTA,OAAK,CAAA,KAAA,EAAA,EAAA,KAAK,EAAC,+BAA+B,EAAA,EACxCA,OAAA,CAAA,YAAA,EAAA,EACE,SAAS,EAAEA,OAAU,CAAA,UAAA,EAAA,EAAA,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,EAAI,CAAA,EAC1D,OAAO,EAAE,MAAK;AACZ,gBAAA,MAAM,eAAe,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM;gBAChD,MAAM,eAAe,GAAGR,qDAAqB,CAAC,IAAI,CAAC,YAAY,CAAC;AAChE,gBAAA,eAAe,CAAC,IAAI,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EAAME,kDAAkB,CAAE,EAAA,EAAA,KAAK,EAAE,eAAe,GAAG,CAAC,EAAE,KAAK,EAAE,CAAW,QAAA,EAAA,eAAe,GAAG,CAAC,CAAA,CAAE,IAAG;AACpH,gBAAA,IAAI,CAAC,YAAY,GAAG,eAAe;AACrC,aAAC,EAAA,EAAA,eAAA,CAGU,CACT,CACP,EAEA,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,MAAM,KAAI;;YACzC,QACEM,iBAAK,GAAG,EAAE,MAAM,EAAE,KAAK,EAAC,cAAc,EAAA,EACpCA,OAAK,CAAA,KAAA,EAAA,EAAA,KAAK,EAAC,qBAAqB,EAAA,EAC9BA,OAAK,CAAA,KAAA,EAAA,EAAA,KAAK,EAAC,2BAA2B,EAAA,EACpCA,OAAA,CAAA,kBAAA,EAAA,EAAkB,OAAO,EAAC,IAAI,EAAC,KAAK,EAAC,SAAS,EAAA,EAC3C,OAAO,CAAC,KAAK,CACG,CACf,EAEL,UAAU,KACTA,OAAK,CAAA,KAAA,EAAA,EAAA,KAAK,EAAC,6BAA6B,EAAA,EACrC,MAAM,GAAG,CAAC,KACTA,OACE,CAAA,qBAAA,EAAA,EAAA,IAAI,EAAEC,yBAAe,CAAC,SAAS,CAAC,EAChC,OAAO,EAAC,iBAAiB,EACzB,OAAO,EAAE,MAAK;AACZ,oBAAA,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC;AAClC,iBAAC,GACD,CACH,EACA,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,KACpCD,OACE,CAAA,qBAAA,EAAA,EAAA,IAAI,EAAEC,yBAAe,CAAC,WAAW,CAAC,EAClC,OAAO,EAAC,mBAAmB,EAC3B,OAAO,EAAE,MAAK;AACZ,oBAAA,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC;iBACnC,GACD,CACH,EACDD,OAAqB,CAAA,qBAAA,EAAA,EAAA,IAAI,EAAEC,yBAAe,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,CAAA,mBAAA,CAAqB,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,EAAI,CAAA,EAC1ID,OAAA,CAAA,qBAAA,EAAA,EACE,IAAI,EAAEC,yBAAe,CAAC,UAAU,CAAC,EACjC,OAAO,EAAC,gBAAgB,EACxB,OAAO,EAAE,CAAC,IAAG;oBACX,CAAC,CAAC,eAAe,EAAE;AACnB,oBAAA,IAAI,CAAC,aAAa,GAAG,+CAA+C;AACpE,oBAAA,IAAI,CAAC,YAAY,GAAG,MAAK;AACvB,wBAAA,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC;AAChC,wBAAA,IAAI,CAAC,YAAY,GAAG,KAAK;AAC3B,qBAAC;AAED,oBAAA,IAAI,CAAC,YAAY,GAAG,IAAI;AAC1B,iBAAC,EAAA,CACD,CACE,CACP,CACG,EAEND,OAAK,CAAA,KAAA,EAAA,EAAA,KAAK,EAAC,kCAAkC,EAAA,EAC1C,CAAC,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,uBAAuB,KAAK,IAAI,CAAC,eAAe,IAAI,IAAI,CAAC,eAAe,CAAC,MAAM,KAAK,MAAM,IAAI,IAAI,CAAC,eAAe,CAAC,MAAM,KAAK,CAAC,KACtJA,OACE,CAAA,wBAAA,EAAA,EAAA,SAAS,EAAE,IAAI,EACf,iBAAiB,EAAET,iDAAiB,EACpC,YAAY,EAAE,MAAK;AACjB,oBAAA,MAAM,eAAe,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM;oBAChD,MAAM,eAAe,GAAGC,qDAAqB,CAAC,IAAI,CAAC,YAAY,CAAC;AAChE,oBAAA,eAAe,CAAC,IAAI,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EAAME,kDAAkB,CAAA,EAAA,EAAE,KAAK,EAAE,eAAe,EAAE,KAAK,EAAE,CAAA,QAAA,EAAW,eAAe,GAAG,CAAC,CAAA,CAAE,IAAG;AAChH,oBAAA,IAAI,CAAC,YAAY,GAAG,eAAe;AACnC,oBAAA,IAAI,CAAC,eAAe,GAAG,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,CAAC,EAAE;AAC/D,iBAAC,EACD,aAAa,EAAE,CAAC,IAAG;AACjB,oBAAA,MAAM,OAAO,GAAG,IAAI,CAAC;0BACjB,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,MAAM,EAAE,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,IAAI,CAAC,eAAe,CAAC,MAAM;0BACzF,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,MAAM,CAAC;oBAEpC,IAAI,CAAC,eAAe,GAAQ,MAAA,CAAA,MAAA,CAAA,EAAA,EAAA,OAAO,CAAE;AACrC,oBAAA,IAAI,CAAC,oBAAoB,GAAG,IAAI;iBACjC,EACD,aAAa,EAAE,OAAO,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,GAClD,CACH,EACDM,OAAK,CAAA,KAAA,EAAA,EAAA,KAAK,EAAC,4CAA4C,EAAC,EAAE,EAAE,WAAW,MAAM,CAAA,CAAE,EAAA,EAC5E,OAAO,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,YAAY,EAAE,MAAM,KAAI;gBAClD,QACEA,OACE,CAAA,iCAAA,EAAA,EAAA,GAAG,EAAE,YAAY,CAAC,EAAE,EACpB,QAAQ,EAAE,YAAY,CAAC,IAAI,EAC3B,WAAW,EAAE,CAAG,EAAA,YAAY,CAAC,YAAY,CAAA,CAAE,EAC3C,aAAa,EAAE,YAAY,CAAC,UAAU,GAAG,YAAY,CAAC,UAAU,GAAG,IAAI,EACvE,qBAAqB,EAAE,IAAI,CAAC,oBAAoB,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,GAAG,SAAS,EAAA,EAErFA,OAAc,CAAA,cAAA,EAAA,EAAA,IAAI,EAAC,aAAa,EAAC,IAAI,EAAC,UAAU,EAAC,UAAU,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAI,CAAA,EACvH,UAAU,KACTA,OAAK,CAAA,KAAA,EAAA,EAAA,IAAI,EAAC,eAAe,EAAA,EACvBA,OAAK,CAAA,KAAA,EAAA,EAAA,KAAK,EAAC,2BAA2B,EAAA,EACpCA,OAAK,CAAA,KAAA,EAAA,EAAA,KAAK,EAAC,cAAc,EAAA,EACvBA,OAAA,CAAA,qBAAA,EAAA,EAAqB,IAAI,EAAEC,yBAAe,CAAC,WAAW,CAAC,EAAE,OAAO,EAAC,eAAe,EAAC,YAAY,EAAE,IAAI,GAAI,CACnG,CACF,CACF,CACP,EAEDD,OAAK,CAAA,KAAA,EAAA,EAAA,IAAI,EAAC,SAAS,EAAA,EAChB,UAAU,IACTA,OAAA,CAAA,UAAA,EAAA,IAAA,EACEA,OAAA,CAAA,qBAAA,EAAA,EACE,IAAI,EAAEC,yBAAe,CAAC,MAAM,CAAC,EAC7B,OAAO,EAAC,uBAAuB,EAC/B,OAAO,EAAE,CAAC,IAAG;wBACX,CAAC,CAAC,eAAe,EAAE;AACnB,wBAAA,IAAI,CAAC,mBAAmB,CAAC,MAAM,EAAE,MAAM,CAAC;qBACzC,EACD,YAAY,EAAE,IAAI,EAClB,CAAA,EACFD,OAAA,CAAA,qBAAA,EAAA,EACE,IAAI,EAAEC,yBAAe,CAAC,MAAM,CAAC,EAC7B,OAAO,EAAC,oBAAoB,EAC5B,OAAO,EAAE,CAAC,IAAG;wBACX,CAAC,CAAC,eAAe,EAAE;AACnB,wBAAA,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,MAAM,CAAC;qBACxC,EACD,YAAY,EAAE,IAAI,EAClB,CAAA,EACFD,OAAA,CAAA,qBAAA,EAAA,EACE,IAAI,EAAEC,yBAAe,CAAC,UAAU,CAAC,EACjC,OAAO,EAAC,iBAAiB,EACzB,OAAO,EAAE,CAAC,IAAG;wBACX,CAAC,CAAC,eAAe,EAAE;AACnB,wBAAA,IAAI,CAAC,aAAa,GAAG,gDAAgD;AACrE,wBAAA,IAAI,CAAC,YAAY,GAAG,MAAK;AACvB,4BAAA,IAAI,CAAC,oBAAoB,CAAC,MAAM,EAAE,MAAM,CAAC;AACzC,4BAAA,IAAI,CAAC,YAAY,GAAG,KAAK;AAC3B,yBAAC;AACD,wBAAA,IAAI,CAAC,YAAY,GAAG,IAAI;AAC1B,qBAAC,EACD,YAAY,EAAE,IAAI,EAAA,CAClB,CACO,KAEXD,OACE,CAAA,qBAAA,EAAA,EAAA,IAAI,EAAEC,yBAAe,CAAC,MAAM,CAAC,EAC7B,OAAO,EAAC,uBAAuB,EAC/B,OAAO,EAAE,CAAC,IAAG;wBACX,CAAC,CAAC,eAAe,EAAE;AACnB,wBAAA,IAAI,CAAC,mBAAmB,CAAC,MAAM,EAAE,MAAM,CAAC;qBACzC,EACD,YAAY,EAAE,IAAI,GAClB,CACH,CACG,CAC0B;aAErC,CAAC,CACE,EAEL,UAAU;AACT,gBAAA,CAAC,IAAI,CAAC,eAAe;YACnBD,OAAK,CAAA,KAAA,EAAA,EAAA,KAAK,EAAC,0CAA0C,EAAA,EACnDA,OAAA,CAAA,YAAA,EAAA,EACE,OAAO,EAAC,MAAM,EACd,OAAO,EAAE,MAAK;AACZ,oBAAA,IAAI,CAAC,eAAe,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,aAAa,CAAC,MAAM,EAAE;iBAChF,EACD,SAAS,EAAEA,OAAA,CAAA,UAAA,EAAA,EAAU,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,EAAI,CAAA,EAAA,EAAA,gBAAA,CAG/C,CACT,CACP,EAEF,UAAU;gBACT,CAAA,MAAA,IAAI,CAAC,eAAe,MAAE,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAA,MAAM,MAAK,MAAM;AACvC,gBAAA,CAAA,CAAA,EAAA,GAAA,IAAI,CAAC,eAAe,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAE,MAAM,MAAK,OAAO,CAAC,aAAa,CAAC,MAAM;gBAC7D,OAAO,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,KAC9BA,OACE,CAAA,wBAAA,EAAA,EAAA,SAAS,EAAE,IAAI,EACf,iBAAiB,EAAET,iDAAiB,EACpC,YAAY,EAAE,MAAK;oBACjB,MAAM,eAAe,GAAGC,qDAAqB,CAAC,IAAI,CAAC,YAAY,CAAC;oBAChE,eAAe,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;AACzC,oBAAA,IAAI,CAAC,YAAY,GAAG,eAAe;AACnC,oBAAA,IAAI,CAAC,eAAe,GAAG,IAAI;AAC7B,iBAAC,EACD,aAAa,EAAE,CAAC,IAAG;AACjB,oBAAA,IAAI,IAAI,CAAC,eAAe,EAAE;wBACxB,MAAM,OAAO,GAAG,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,MAAM,EAAE,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC;wBAC1G,IAAI,CAAC,eAAe,GAAQ,MAAA,CAAA,MAAA,CAAA,EAAA,EAAA,OAAO,CAAE;AACrC,wBAAA,IAAI,CAAC,oBAAoB,GAAG,IAAI;;AAEpC,iBAAC,EACD,aAAa,EAAE,OAAO,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,EAAA,CAClD,CACH,CACC,CACF;AAEV,SAAC,CAAC,CACE,CACQ,CACjB,CACG;;;;;;;;;;;;"}
1
+ {"version":3,"file":"udp-forms-builder.entry.cjs.js","sources":["src/components/forms/udp-forms/udp-forms-builder/udp-forms-builder.css?tag=udp-forms-builder&encapsulation=shadow","src/components/forms/udp-forms/udp-forms-builder/udp-forms-builder.tsx"],"sourcesContent":[":host {\n display: block;\n --udp-form-primary-color: #007bff; /* Example primary color */\n --udp-form-spacing-unit: 16px;\n\n}\n\n/* ################### FORM PAGE ################### */\n.udp-forms-page {\n display: flex;\n flex-direction: column;\n gap: var(--spacing-06, 32px);\n /* background-color: white; */\n padding: var(--spacing-06, 32px);\n padding-bottom: var(--spacing-12);\n}\n\n\n.form-section-questions-container {\n display: flex;\n flex-direction: column;\n}\n\n\n/* ################### FORM METADATA ################### */\n\n\n.form-details-container {\n display: flex;\n flex-direction: column;\n /* align-items: flex-start; */\n /* margin: 0 2rem; */\n /* gap: var(--spacing-05, 24px); */\n padding: var(--spacing-05, 24px);\n background-color: var(--card-background-color, white);\n}\n\n.form-details-version-container {\n margin-bottom: var(--spacing-05)\n}\n\n.udp-form-builder-field-container,\n.udp-forms-builder-item-generic-configs,\n.udp-forms-builder-item-specific-configs {\n display: flex;\n flex-direction: column;\n gap: var(--spacing-04, 16px);\n}\n\n/* ################### SECTIONS ################### */\n.form-section {\n /* background-color: var(--primary-color-alpha-15); */\n /* border: 2px solid var(--primary-color-alpha-50); */\n /* border-radius: 8px; */\n /* padding: var(--spacing-04); */\n}\n\n\n.form-section-header {\n display: flex;\n flex-direction: row;\n justify-content: space-between;\n background-color: var(--primary-color-dark, #000);\n color: var(--primary-contrast-text, #FFF);\n padding: var(--spacing-04, 16px) var(--spacing-05, 24px);\n /* margin-bottom: var(--spacing-04); */\n align-items: center;\n}\n\n.add-question-button-container {\n display: flex;\n justify-content: center;\n align-items: center;\n}\n\n.question-editor-container {\n padding: var(--spacing-05, 24px);\n display: flex;\n flex-direction: column;\n gap: var(--spacing-05, 24px);\n}\n\n.add-question-to-section-button-container {\n padding: var(--spacing-02, 8px) 0;\n margin: auto;\n}\n\n.sortable-ghost {\n opacity: 0.5;\n transform: scale(0.98);\n background: #f4f4f4;\n border: 1px dashed #ccc;\n}\n\n.sortable-chosen {\n background: #eef6ff;\n box-shadow: 0 0 4px 2px rgba(51, 153, 255, 0.3);\n}\n\n.form-question-drag-handle {\n transform: rotate(90deg);\n cursor: grab;\n}\n\n.form-question-drag-handle:active {\n cursor: grabbing;\n}\n\n.form-question-drag-handle .drag-wrapper {\n cursor: inherit;\n}\n\n.form-question-drag-handle stencil-icon-button {\n pointer-events: none; /* disables click so cursor applies from parent */\n}\n\n\n","import { Component, h, State, Prop, Watch } from '@stencil/core';\nimport { Guid } from '../udp-forms-utils/types';\nimport { makeApiCall } from '../../../../udp-utilities/api/makeApiCall/makeApiCall';\nimport questionsTemplate from './udp-forms-builder-question-template';\nimport { getIconFromName } from '../../../data-display/icons/iconUtils';\nimport { ConfigService } from '../../../../udp-utilities/api-config';\nimport { getCurrentTenantId } from 'src/udp-utilities/tenant/tenantUtils';\nimport Sortable from 'sortablejs';\nimport { Element } from '@stencil/core';\nimport { v4 as uuidv4 } from 'uuid';\nimport { styleOverrideDefault, formSectionDefault, formMetadataDefault, deepCloneFormSections } from './forms-builder-utils';\nimport { UdpFormsPageIdEnum, UdpFormsTypeEnum } from '../udp-forms-utils/enums';\nimport { UdpFormMetadata } from '../udp-forms-utils/types';\n\n@Component({\n tag: 'udp-forms-builder',\n styleUrl: 'udp-forms-builder.css',\n shadow: true,\n})\nexport class UdpFormsBuilder {\n @Element() private hostEl: HTMLElement;\n\n @Prop() formId: Guid;\n @Prop() version: number;\n @Prop() enqueueSnackbar: Function;\n @Prop() closeSnackbar: Function;\n @Prop() history: { push: (path: string) => void };\n @Prop() isFollowUpFormConfigOn: boolean = false; // allow form engine to use follow-up forms feature\n @Prop() isPublicFormConfigOn: boolean = false; // allow form engine to use public forms feature\n @Prop() isCommentingConfigOn: boolean = true; // allow form engine to use commenting feature\n @Prop() formsBuilderUrlPath: string = ''; // alternative path for redirect to the form builder page. If not provided, use default path.\n\n\n @State() formMetadata: UdpFormMetadata = formMetadataDefault as UdpFormMetadata;\n @State() formSections: any[] = [];\n @State() formSectionsDraft: any[] = [];\n @State() isNewForm: boolean = true;\n @State() isMostRecentFormVersion: boolean = false;\n\n @State() isError: boolean = false;\n @State() isLoading: boolean = false;\n\n @State() isShowStyleOverrides: boolean = false;\n @State() isStyleSheetOpen: boolean = false;\n @State() isDialogOpen: boolean = false;\n @State() showMenuAtIndex: { sIndex: number; qIndex: number } | null = null;\n @State() editingQuestion: { sIndex: number; qIndex: number } | null = null;\n @State() editingSection: { sIndex: number } | null = null;\n @State() isQuestionEditorOpen: boolean = false;\n @State() isSectionEditorOpen: boolean = false;\n @State() lookupOptionsDataProcessed: any[] = [];\n\n\n @State() dialogAction: (() => void) | null = null;\n @State() dialogMessage: string = 'Are you sure you want to delete this?';\n\n\n\n private sortableInstances: Sortable[] = [];\n private formsBuilderPageId = UdpFormsPageIdEnum.FormBuilderPageId;\n private formTypeOptions: { value: string; label: string }[] = Object.keys(UdpFormsTypeEnum)\n .filter(key => isNaN(Number(key))) // only keep the named keys\n .map(key => ({\n value: String(UdpFormsTypeEnum[key as keyof typeof UdpFormsTypeEnum]), // cast to string\n label: key,\n }));\n\n // ********************************** API CALLS **********************************\n\n async initializeForm() {\n // set default form values\n this.formMetadata.isPrivate = formMetadataDefault.isPrivate;\n this.formMetadata.tenantId = getCurrentTenantId();\n this.formMetadata.type = formMetadataDefault.type;\n this.formMetadata.version = formMetadataDefault.version;\n this.formMetadata.name = formMetadataDefault.name;\n this.formMetadata.description = formMetadataDefault.description;\n this.formMetadata.styleOverrides = styleOverrideDefault;\n\n try {\n this.isLoading = true;\n\n // get lookup options\n const lookupResponse = await makeApiCall('GET', ConfigService.productV1ApiUrl + '/UdpLookup');\n\n if (!lookupResponse) {\n throw new Error(`Error fetching lookup data`);\n }\n\n\n this.lookupOptionsDataProcessed = lookupResponse.map(lookupObj => {\n return { ...lookupObj, value: lookupObj.id, label: lookupObj.name };\n });\n\n // determine if it's to create a new form, view an old form, or create a new version\n if (this.formId && this.version) {\n const formDataResponse = await makeApiCall('GET', `${ConfigService.productV1ApiUrl}/UdpForm/${this.formId}/${this.version}/describe`);\n const formLatestVersionResponse = await makeApiCall('GET', `${ConfigService.productV1ApiUrl}/UdpForm/${this.formId}/describe`);\n\n this.isNewForm = false;\n\n if (!formDataResponse || !formLatestVersionResponse || !formDataResponse.id || !formLatestVersionResponse) {\n throw new Error(`Error fetching form data`);\n }\n\n // view only mode\n if (formDataResponse.id == formLatestVersionResponse.id && formDataResponse.version == formLatestVersionResponse.version) {\n this.isMostRecentFormVersion = true;\n }\n\n // Clone formSections and initialize empty question arrays\n const tempSections = structuredClone(formDataResponse.udpFormUdpFormSection).map(section => ({ ...section, formQuestions: [] }));\n tempSections.forEach(section => {\n if(!section.sectionProperties) {\n section.sectionProperties = {}\n } else {\n section.sectionProperties = JSON.parse(section.sectionProperties)\n }\n })\n\n\n // Map questions into their respective sections\n formDataResponse.formQuestions.forEach(question => {\n const section = tempSections.find(s => s.id === question.formSectionId);\n if (section) {\n const fieldProps = { ...question.fieldProperties };\n\n // Remove items if lookupId exists\n if ('lookupId' in fieldProps && 'items' in fieldProps) {\n delete fieldProps.items;\n }\n\n section.formQuestions.push({\n ...question,\n fieldProperties: fieldProps,\n questionTypeName: this.getQuestionTypeName(question.fieldTypeId),\n isContainsOptionItems: this.getIsContainsOptionItems(question.fieldTypeId),\n icon: this.getIconForQuestion(question.fieldTypeId),\n });\n\n\n }\n });\n\n // Sort questions within each section\n tempSections.forEach(section => {\n section.formQuestions.sort((a, b) => a.questionOrder - b.questionOrder);\n });\n\n // Sort sections\n tempSections.sort((a, b) => a.order - b.order)\n\n\n const { ...metadata } = formDataResponse;\n\n // Merge fetched styleOverrides with defaults\n metadata.styleOverrides = this.deepMerge(styleOverrideDefault, JSON.parse(metadata.styleOverrides) || {});\n\n // Set form metadata and sections\n this.formMetadata = metadata;\n this.formSections = tempSections;\n this.isLoading = false;\n }\n } catch (e) {\n this.isError = true;\n\n this.enqueueSnackbar('Error loading form data', {\n variant: 'error',\n anchorOrigin: { vertical: 'top', horizontal: 'center' },\n });\n } finally {\n this.isLoading = false;\n }\n }\n\n async submitForm() {\n if (!this.isValidForm()) {\n return;\n }\n\n this.isLoading = true;\n\n try {\n // Prepare and send form metadata\n const processedFormMetadata = {\n name: this.formMetadata.name,\n description: this.formMetadata.description,\n tenantId: this.formMetadata.tenantId,\n isPrivate: this.formMetadata.isPrivate,\n type: this.formMetadata.type,\n styleOverrides: JSON.stringify(this.formMetadata.styleOverrides),\n id: this.formMetadata.id,\n version: this.formMetadata.version,\n };\n\n\n const formUrl = `${ConfigService.productV1ApiUrl}/UdpForm${this.isMostRecentFormVersion ? '/versions' : ''}`;\n const formResponse = await makeApiCall('POST', formUrl, processedFormMetadata);\n\n const formId = formResponse.id;\n const formVersion = formResponse.version;\n\n if (!formResponse || !formResponse.id || !formResponse.version) {\n throw new Error(`Invalid form response: ${JSON.stringify(formResponse)}`);\n }\n\n // Prepare and send questions in order\n let sectionOrder = 0;\n let questionOrder = 0;\n const questionRequests: Promise<any>[] = [];\n\n for (const [sIndex, section] of this.formSections.entries()) {\n sectionOrder += 1;\n\n const processedSectionData = {\n ...section,\n formId,\n formVersion,\n order: sectionOrder,\n sectionProperties: JSON.stringify(section.sectionProperties),\n name: `section${sectionOrder}`\n };\n\n const sectionResponse = await makeApiCall('POST', `${ConfigService.productV1ApiUrl}/UdpFormSection`, processedSectionData);\n\n if (!sectionResponse || !sectionResponse.id) {\n throw new Error(`Invalid section response: ${JSON.stringify(sectionResponse)}`);\n }\n\n const sectionId = sectionResponse.id;\n\n for (const question of section.formQuestions) {\n questionOrder += 1;\n\n const processedQuestionData = {\n ...question,\n formId,\n formVersion,\n section: sIndex + 1,\n questionOrder,\n formSectionId: sectionId,\n name: `question${questionOrder}`,\n };\n\n const questionRequest = makeApiCall('POST', `${ConfigService.productV1ApiUrl}/UdpFormQuestion`, processedQuestionData);\n questionRequests.push(questionRequest);\n }\n }\n\n // Wait for all questions to be submitted\n await Promise.all(questionRequests);\n\n this.enqueueSnackbar('Success', {\n variant: 'success',\n anchorOrigin: { vertical: 'top', horizontal: 'center' },\n });\n\n if(this.formsBuilderUrlPath) {\n this.history.push(`${this.formsBuilderUrlPath}&udpf_formId=${formId}&udpf_version=${formVersion}`);\n return \n }\n\n this.history.push(`/page/${this.formsBuilderPageId}?udpf_formId=${formId}&udpf_version=${formVersion}`);\n } catch (error) {\n console.error('Form submission error:', error);\n this.enqueueSnackbar('Error saving form', {\n variant: 'error',\n anchorOrigin: { vertical: 'top', horizontal: 'center' },\n });\n } finally {\n this.isLoading = false;\n }\n }\n\n // ********************************** STENCIL RELATED **********************************\n\n componentDidLoad() {\n this.initializeSortable();\n }\n\n componentDidUpdate() {\n this.initializeSortable();\n }\n\n componentWillLoad() {\n this.initializeForm();\n }\n\n // @Watch('formSections')\n // onFormSectionsChange(newValue: any[]) {\n // console.log(newValue);\n // }\n\n // @Watch('formMetadata')\n // onFormMetadataChange(newValue) {\n // console.log(newValue);\n // }\n\n @Watch('formId')\n @Watch('version')\n onFormIdOrVersionChange() {\n this.initializeForm();\n }\n\n // ********************************** SORTABLE LOGIC **********************************\n\n private initializeSortable() {\n // sortable only if the form is editable\n if (!(this.isNewForm || this.isMostRecentFormVersion)) {\n return;\n }\n\n this.sortableInstances.forEach(instance => instance.destroy());\n this.sortableInstances = [];\n\n this.formSections.forEach((_, sIndex) => {\n const el = this.hostEl.shadowRoot.querySelector(`#section-${sIndex}`);\n if (el) {\n const sortable = new Sortable(el, {\n animation: 200,\n easing: 'cubic-bezier(0.25, 1, 0.5, 1)',\n draggable: 'udp-forms-builder-question-item',\n handle: '.form-question-drag-handle',\n ghostClass: 'sortable-ghost',\n chosenClass: 'sortable-chosen',\n direction: 'vertical',\n forceFallback: false,\n dragoverBubble: false,\n swapThreshold: 0.6,\n onEnd: evt => this.handleDragEnd(evt, sIndex),\n });\n this.sortableInstances.push(sortable);\n }\n });\n }\n\n private handleDragEnd(evt: Sortable.SortableEvent, sIndex: number) {\n const oldIndex = evt.oldIndex;\n const newIndex = evt.newIndex;\n if (oldIndex === newIndex || oldIndex == null || newIndex == null) return;\n\n const sectionCopy = structuredClone(this.formSections[sIndex]);\n const [moved] = sectionCopy.formQuestions.splice(oldIndex, 1);\n sectionCopy.formQuestions.splice(newIndex, 0, moved);\n\n // const newFormSections = [...this.formSections];\n const newFormSections = deepCloneFormSections(this.formSections);\n newFormSections[sIndex] = sectionCopy;\n\n this.formSections = newFormSections;\n }\n\n // ********************************** SIDE SHEET LOGIC **********************************\n\n private toggleStyleSheet = () => {\n this.isStyleSheetOpen = !this.isStyleSheetOpen;\n };\n\n // ********************************** QUESTION HANDLERS **********************************\n private getQuestionTypeName = fieldTypeId => {\n const question = questionsTemplate.find(q => q.fieldTypeId === fieldTypeId);\n return question ? question.questionTypeName : 'Unknown';\n };\n\n private getIsContainsOptionItems = fieldTypeId => {\n const question = questionsTemplate.find(q => q.fieldTypeId === fieldTypeId);\n return question ? question.isContainsOptionItems || false : false;\n };\n\n private getIconForQuestion = fieldTypeId => {\n const question = questionsTemplate.find(q => q.fieldTypeId === fieldTypeId);\n return question ? question.icon : null;\n };\n\n private handleQuestionDelete = (sIndex: number, qIndex: number) => {\n const sectionsCopy = deepCloneFormSections(this.formSections);\n sectionsCopy[sIndex].formQuestions.splice(qIndex, 1);\n this.formSections = sectionsCopy;\n };\n\n private handleQuestionCopy = (sIndex: number, qIndex: number) => {\n const sectionsCopy = deepCloneFormSections(this.formSections);\n const targetQuestion = this.formSections[sIndex].formQuestions[qIndex];\n\n const newQuestion = {\n ...targetQuestion,\n questionText: (targetQuestion.questionText || '') + ' (Copy)',\n id: uuidv4(),\n };\n\n sectionsCopy[sIndex].formQuestions.splice(qIndex + 1, 0, newQuestion);\n this.formSections = sectionsCopy;\n };\n\n private handleQuestionClick = (sIndex: number, qIndex: number) => {\n this.editingQuestion = { sIndex, qIndex };\n this.isQuestionEditorOpen = true;\n this.formSectionsDraft = deepCloneFormSections(this.formSections);\n };\n\n private closeQuestionEditor = () => {\n this.isQuestionEditorOpen = false;\n this.editingQuestion = null;\n this.formSectionsDraft = null;\n };\n\n private addQuestionOfType = (defaultQuestionObj, sIndex?: number, qIndex?: number): { sIndex: number; qIndex: number } => {\n const newQuestion = {\n questionTypeName: defaultQuestionObj.questionTypeName,\n fieldTypeId: defaultQuestionObj.fieldTypeId,\n fieldProperties: defaultQuestionObj.defaultFieldProperties,\n helperText: '',\n questionText: '',\n section: sIndex !== undefined ? sIndex + 1 : this.formSections.length > 0 ? this.formSections[this.formSections.length - 1].formQuestions[0].section : 1, // Assign section based on sIndex or last section\n isContainsOptionItems: defaultQuestionObj.isContainsOptionItems,\n icon: defaultQuestionObj.icon,\n required: false,\n form: null,\n isPrivate: true,\n id: uuidv4(),\n };\n\n const newFormSections = deepCloneFormSections(this.formSections); // Use helper to get a deep copy\n\n let actualSIndex = sIndex;\n let actualQIndex = qIndex;\n\n if (sIndex !== undefined && qIndex !== undefined) {\n // Insert at specific index\n if (newFormSections[sIndex].formQuestions) {\n newFormSections[sIndex].formQuestions.splice(qIndex, 0, newQuestion);\n } else {\n // fallback\n const lastSectionIdx = newFormSections.length - 1;\n newFormSections[lastSectionIdx].formQuestions.push(newQuestion);\n actualSIndex = lastSectionIdx;\n actualQIndex = newFormSections[lastSectionIdx].formQuestions.length - 1;\n }\n } else {\n // Append to the last section or create a new one\n const lastSectionIdx = newFormSections.length - 1;\n if (lastSectionIdx < 0 || newFormSections[lastSectionIdx].formQuestions.length === 0) {\n newFormSections.push({ ...formSectionDefault, formQuestions: [newQuestion] });\n actualSIndex = newFormSections.length - 1;\n actualQIndex = 0;\n } else {\n newFormSections[lastSectionIdx].formQuestions.push(newQuestion);\n actualSIndex = lastSectionIdx;\n actualQIndex = newFormSections[lastSectionIdx].formQuestions.length - 1;\n }\n }\n\n // this.formSections = newFormSections;\n this.formSectionsDraft = newFormSections;\n if (this.showMenuAtIndex) this.showMenuAtIndex = null;\n\n return { sIndex: actualSIndex, qIndex: actualQIndex };\n };\n\n private deepMerge(target: any, source: any): any {\n const output = { ...target };\n for (const key in source) {\n if (source[key] && typeof source[key] === 'object' && !Array.isArray(source[key])) {\n output[key] = this.deepMerge(target[key] || {}, source[key]);\n } else {\n output[key] = source[key];\n }\n }\n return output;\n }\n\n // ********************************** SECTION HANDLERS **********************************\n\n private handleSectionMoveDown = (sIndex: number) => {\n if (sIndex >= this.formSections.length - 1) return;\n\n const sectionsCopy = [...this.formSections];\n [sectionsCopy[sIndex], sectionsCopy[sIndex + 1]] = [sectionsCopy[sIndex + 1], sectionsCopy[sIndex]];\n this.formSections = sectionsCopy;\n };\n\n private handleSectionMoveUp = (sIndex: number) => {\n if (sIndex <= 0) return;\n\n const sectionsCopy = [...this.formSections];\n [sectionsCopy[sIndex], sectionsCopy[sIndex - 1]] = [sectionsCopy[sIndex - 1], sectionsCopy[sIndex]];\n this.formSections = sectionsCopy;\n };\n\n private handleSectionDelete = (sIndex: number) => {\n const newFormSections = [...this.formSections];\n newFormSections.splice(sIndex, 1);\n this.formSections = newFormSections;\n };\n\n private updateFormSectionsWithDraft = () => {\n this.formSections = this.formSectionsDraft;\n this.formSectionsDraft = null;\n };\n\n private hasUnsavedFormSectionsChanges = (): boolean => {\n // return !isEqual(this.formSections, this.formSectionsDraft); // NEED TO INSTALL PACKAGE\n return JSON.stringify(this.formSections) !== JSON.stringify(this.formSectionsDraft); // Breaks on circular refs or non-serializable types (like Dates, Maps, etc.)\n };\n\n private handleSectionEditClick = (sIndex: number) => {\n this.editingSection = { sIndex };\n this.isSectionEditorOpen = true;\n this.formSectionsDraft = deepCloneFormSections(this.formSections);\n };\n\n private closeSectionEditor = () => {\n this.isSectionEditorOpen = false;\n this.editingSection = null;\n this.formSectionsDraft = null;\n };\n\n // ********************************** FORM VALIDATION HELPERS **********************************\n\n private isValidForm(): boolean {\n return this.validateFormMetadata() && this.validateFormSections() && this.validateAllQuestions() ;\n }\n\n private validateFormMetadata(): boolean {\n if (!this.formMetadata.name?.trim()) {\n this.enqueueSnackbar('Please enter a form name.', {\n variant: 'error',\n anchorOrigin: { vertical: 'top', horizontal: 'center' },\n });\n return false;\n }\n\n return true;\n }\n\n private validateFormSections(): boolean {\n if (this.formSections.length < 1) {\n this.enqueueSnackbar('Please add at least one section to the form.', {\n variant: 'error',\n anchorOrigin: { vertical: 'top', horizontal: 'center' },\n });\n\n return false;\n }\n\n for (let sIndex = 0; sIndex < this.formSections.length; sIndex++) {\n const formSection = this.formSections[sIndex];\n const questions = formSection?.formQuestions || [];\n\n if (questions.length < 1) {\n const sectionTitle = formSection?.title ? `\"${formSection.title}\"` : `#${sIndex + 1}`;\n this.enqueueSnackbar(`Section ${sectionTitle} must contain at least one question.`, {\n variant: 'error',\n anchorOrigin: { vertical: 'top', horizontal: 'center' },\n });\n return false;\n }\n }\n\n return true;\n }\n\n private validateAllQuestions(): boolean {\n for (let sIndex = 0; sIndex < this.formSections.length; sIndex++) {\n const formSection = this.formSections[sIndex];\n const questions = formSection?.formQuestions || [];\n for (let qIndex = 0; qIndex < questions.length; qIndex++) {\n const isValid = this.validateQuestionItem(sIndex, qIndex);\n if (!isValid) {\n this.enqueueSnackbar('Please validate all questions.', {\n variant: 'error',\n anchorOrigin: { vertical: 'top', horizontal: 'center' },\n });\n return false;\n }\n }\n }\n return true;\n }\n\n private validateQuestionItem(sIndex: number, qIndex: number): boolean {\n const questionItem = this.formSections[sIndex].formQuestions[qIndex];\n // Respect template metadata for optional question text (e.g., Paragraph)\n const template = questionsTemplate.find(q => q.fieldTypeId === questionItem.fieldTypeId);\n const requiresQuestionText = !(template && (template as any).questionTextOptional);\n if (requiresQuestionText && !questionItem.questionText) {\n return false;\n }\n\n if (questionItem.isContainsOptionItems) {\n const fieldProps = questionItem.fieldProperties;\n\n // If there's a lookupId, assume it's valid and skip item validation\n if (!fieldProps?.lookupId) {\n // If no items or empty, invalid\n if (!Array.isArray(fieldProps?.items) || fieldProps.items.length === 0) {\n return false;\n }\n\n // Check that each item has both display and value\n const invalidItemExists = fieldProps.items.some(item => !item.display || !item.value);\n\n if (invalidItemExists) {\n return false;\n }\n }\n }\n\n return true;\n }\n\n\n render() {\n if (this.isError) {\n return <div> There is an Error With the Form Builder</div>;\n }\n\n const isEditable = this.isNewForm || this.isMostRecentFormVersion;\n\n return (\n <div>\n {/* FIXME: Review this */}\n <primary-action-header\n title={'UDP Form Builder'}\n actionButtonLabel={isEditable ? (this.isMostRecentFormVersion ? `Create New Version (v.${this.version + 1})` : 'Create New Form') : ''}\n primaryActionClick={isEditable ? () => this.submitForm() : null}\n // HIDE STYLE OVERRIDE IN UI\n defaultActionButtons={\n isEditable ? [{ label: 'Style Overrides', clickHandler: this.toggleStyleSheet, tooltip: 'Style Overrides', visible: false, icon: getIconFromName('settings') }] : []\n }\n tabs={false}\n />\n {/* <udp-side-sheet open={this.isStyleSheetOpen} onUdpSideSheetClose={() => (this.isStyleSheetOpen = false)} title=\"Style Overrides\" position=\"right\" width=\"md\">\n <udp-forms-builder-style-override formMetadata={this.formMetadata} onFormMetadataChange={updated => (this.formMetadata = updated)}></udp-forms-builder-style-override>\n </udp-side-sheet> */}\n\n <udp-side-sheet\n open={this.isQuestionEditorOpen}\n onUdpSideSheetClose={() => this.closeQuestionEditor()}\n onUdpPrimaryButtonClick={() => {\n // don't do anything if no changes are made.\n // it'll close the side sheet without this\n if (!this.hasUnsavedFormSectionsChanges()) {\n return;\n }\n this.updateFormSectionsWithDraft();\n this.closeQuestionEditor();\n }}\n primaryButtonDisabled={!this.hasUnsavedFormSectionsChanges()}\n title=\"Edit Question\"\n position=\"right\"\n width=\"md\"\n primaryButtonLabel=\"Update\"\n >\n {this.isQuestionEditorOpen && (\n <div class=\"question-editor-container\">\n <question-configs-renderer\n formSectionsDraft={this.formSectionsDraft}\n sIndex={this.editingQuestion.sIndex}\n qIndex={this.editingQuestion.qIndex}\n isViewOnly={!isEditable}\n onFormSectionsDraftChange={updated => (this.formSectionsDraft = updated)}\n lookupOptions={this.lookupOptionsDataProcessed}\n formType={this.formMetadata.type}\n isFollowUpFormConfigOn={this.isFollowUpFormConfigOn}\n isCommentingConfigOn={this.isCommentingConfigOn}\n />\n </div>\n )}\n </udp-side-sheet>\n\n <udp-side-sheet\n open={this.isSectionEditorOpen}\n onUdpSideSheetClose={() => this.closeSectionEditor()}\n title=\"Edit Section Fields\"\n position=\"right\"\n width=\"md\"\n primaryButtonDisabled={!this.hasUnsavedFormSectionsChanges()}\n primaryButtonLabel=\"Update\"\n onUdpPrimaryButtonClick={() => {\n // don't do anything if no changes are made.\n // it'll close the side sheet without this\n if (!this.hasUnsavedFormSectionsChanges()) {\n return;\n }\n this.updateFormSectionsWithDraft();\n this.closeSectionEditor();\n }}\n >\n {this.isSectionEditorOpen && (\n <div class=\"section-editor-container\">\n <section-configs-renderer\n formSectionsDraft={this.formSectionsDraft}\n sIndex={this.editingSection.sIndex}\n isViewOnly={!isEditable}\n onFormSectionsDraftChange={updated => (this.formSectionsDraft = updated)}\n />\n </div>\n )}\n </udp-side-sheet>\n <fluent-dialog\n open={this.isDialogOpen}\n message={this.dialogMessage}\n labelOne={'Confirm'}\n labelTwo={'Cancel'}\n actionOne={() => {\n if (typeof this.dialogAction === 'function') {\n this.dialogAction();\n }\n }}\n actionTwo={() => (this.isDialogOpen = false)}\n />\n\n {this.isLoading && <udp-linear-loader />}\n {!this.isLoading && (\n <udp-container maxWidth=\"lg\">\n <div class=\"udp-forms-page\">\n <div class=\"form-details-container\">\n <div class=\"form-details-name-container\">\n {isEditable ? (\n <div class=\"form-details-name-input\">\n <text-field\n label=\"Form Name\"\n value={this.formMetadata.name}\n placeholder=\"Form Name\"\n disabled={!isEditable}\n required={true}\n margin=\"none\"\n maxCharacter={128}\n onInput={e => {\n this.formMetadata = {\n ...this.formMetadata,\n name: (e.target as HTMLInputElement).value,\n };\n }}\n ></text-field>\n </div>\n ) : (\n <div class=\"form-details-name-display\">\n <unity-typography variant={'h2'}>{this.formMetadata.name + ' (View Only)'}</unity-typography>\n </div>\n )}\n </div>\n\n <div class=\"form-details-description-container\">\n {isEditable ? (\n <div class=\"form-details-details-input\">\n <text-area\n label=\"Form Description\"\n value={this.formMetadata.description}\n placeholder=\"Form Description\"\n disabled={!isEditable}\n required={false}\n margin=\"none\"\n maxCharacter={256}\n onInput={e => {\n this.formMetadata = {\n ...this.formMetadata,\n description: (e.target as HTMLInputElement).value,\n };\n }}\n ></text-area>\n </div>\n ) : (\n <div class=\"form-details-description-display\">\n <unity-typography>{this.formMetadata.description}</unity-typography>\n </div>\n )}\n </div>\n {this.isFollowUpFormConfigOn && (\n this.isNewForm ? \n <udp-selector\n label=\"Form Type\"\n key=\"udo-form-type-selector\"\n initialValue={this.formMetadata.type}\n options={this.formTypeOptions}\n disabled={!isEditable || !this.isNewForm}\n required={true}\n onChange={(e: CustomEvent) => {\n this.formMetadata = {\n ...this.formMetadata,\n type: e.detail,\n };\n }}\n /> :\n <div class=\"form-details-version-container\">\n <unity-typography>Form Type: {UdpFormsTypeEnum[this.formMetadata.type]}</unity-typography>\n </div>\n )}\n <div class=\"form-details-version-container\">\n <unity-typography>Version: {this.formMetadata.version}</unity-typography>\n </div>\n {this.isPublicFormConfigOn && (\n <div class=\"form-details-private-container\">\n <div class=\"toggle-container\">\n <stencil-toggle\n label=\"Private Form\"\n margin=\"none\"\n disabled={!isEditable}\n checked={this.formMetadata.isPrivate === true}\n labelPosition=\"right\"\n onToggledChange={() => {\n let newIsPrivate = !this.formMetadata.isPrivate;\n this.formMetadata = {\n ...this.formMetadata,\n isPrivate: newIsPrivate,\n };\n }}\n ></stencil-toggle>\n </div>\n </div>\n )}\n </div>\n\n {isEditable && (\n <div class=\"add-question-button-container\">\n <udp-button\n startIcon={<udp-icon iconName={'add'} color={'inherit'} />}\n onClick={() => {\n const newSectionIndex = this.formSections.length;\n const newFormSections = deepCloneFormSections(this.formSections);\n newFormSections.push({ ...formSectionDefault, order: newSectionIndex + 1, title: `Section ${newSectionIndex + 1}` });\n this.formSections = newFormSections;\n }}\n >\n Add a Section\n </udp-button>\n </div>\n )}\n\n {this.formSections.map((section, sIndex) => {\n return (\n <div key={sIndex} class=\"form-section\">\n <div class=\"form-section-header\">\n <div class=\"form-section-header-title\">\n <unity-typography variant=\"h6\" color=\"inherit\">\n {section.title}\n </unity-typography>\n </div>\n\n {isEditable && (\n <div class=\"form-section-header-actions\">\n {sIndex > 0 && (\n <stencil-icon-button\n icon={getIconFromName('arrowUp')}\n tooltip=\"Move Section Up\"\n onClick={() => {\n this.handleSectionMoveUp(sIndex);\n }}\n />\n )}\n {sIndex < this.formSections.length - 1 && (\n <stencil-icon-button\n icon={getIconFromName('arrowDown')}\n tooltip=\"Move Section Down\"\n onClick={() => {\n this.handleSectionMoveDown(sIndex);\n }}\n />\n )}\n <stencil-icon-button icon={getIconFromName('edit')} tooltip={`Edit Section Fields`} onClick={() => this.handleSectionEditClick(sIndex)} />\n <stencil-icon-button\n icon={getIconFromName('trashCan')}\n tooltip=\"Delete Section\"\n onClick={e => {\n e.stopPropagation();\n this.dialogMessage = 'Are you sure you want to delete this section?';\n this.dialogAction = () => {\n this.handleSectionDelete(sIndex);\n this.isDialogOpen = false;\n };\n\n this.isDialogOpen = true;\n }}\n />\n </div>\n )}\n </div>\n\n <div class=\"form-section-questions-container\">\n {(this.isNewForm || this.isMostRecentFormVersion) && this.showMenuAtIndex && this.showMenuAtIndex.sIndex === sIndex && this.showMenuAtIndex.qIndex === 0 && (\n <udp-forms-builder-menu\n isVisible={true}\n questionsTemplate={questionsTemplate}\n onAddSection={() => {\n const newSectionIndex = this.formSections.length;\n const newFormSections = deepCloneFormSections(this.formSections);\n newFormSections.push({ ...formSectionDefault, order: newSectionIndex, title: `Section ${newSectionIndex + 1}` });\n this.formSections = newFormSections;\n this.showMenuAtIndex = { sIndex: newSectionIndex, qIndex: 0 };\n }}\n onAddQuestion={e => {\n const indices = this.showMenuAtIndex\n ? this.addQuestionOfType(e.detail, this.showMenuAtIndex.sIndex, this.showMenuAtIndex.qIndex)\n : this.addQuestionOfType(e.detail);\n\n this.editingQuestion = { ...indices };\n this.isQuestionEditorOpen = true;\n }}\n onCancelClick={() => (this.showMenuAtIndex = null)}\n />\n )}\n <div class=\"form-section-questions-draggable-container\" id={`section-${sIndex}`}>\n {section.formQuestions.map((questionItem, qIndex) => {\n return (\n <udp-forms-builder-question-item\n key={questionItem.id}\n iconName={questionItem.icon}\n primaryText={`${questionItem.questionText}`}\n secondaryText={questionItem.helperText ? questionItem.helperText : null}\n avatarBackgroundColor={this.validateQuestionItem(sIndex, qIndex) ? 'info' : 'warning'}\n >\n <stencil-chip slot=\"status-chip\" text=\"Required\" showDelete={false} clickable={false} hidden={!questionItem.required} />\n {isEditable && (\n <div slot=\"drag-and-drop\">\n <div class=\"form-question-drag-handle\">\n <div class=\"drag-wrapper\">\n <stencil-icon-button icon={getIconFromName('draggable')} tooltip=\"Move Question\" noBackground={true} />\n </div>\n </div>\n </div>\n )}\n\n <div slot=\"actions\">\n {isEditable ? (\n <fragment>\n <stencil-icon-button\n icon={getIconFromName('edit')}\n tooltip=\"Edit Question Details\"\n onClick={e => {\n e.stopPropagation();\n this.handleQuestionClick(sIndex, qIndex);\n }}\n noBackground={true}\n />\n <stencil-icon-button\n icon={getIconFromName('copy')}\n tooltip=\"Duplicate Question\"\n onClick={e => {\n e.stopPropagation();\n this.handleQuestionCopy(sIndex, qIndex);\n }}\n noBackground={true}\n />\n <stencil-icon-button\n icon={getIconFromName('trashCan')}\n tooltip=\"Delete Question\"\n onClick={e => {\n e.stopPropagation();\n this.dialogMessage = 'Are you sure you want to delete this question?';\n this.dialogAction = () => {\n this.handleQuestionDelete(sIndex, qIndex);\n this.isDialogOpen = false;\n };\n this.isDialogOpen = true;\n }}\n noBackground={true}\n />\n </fragment>\n ) : (\n <stencil-icon-button\n icon={getIconFromName('view')}\n tooltip=\"View Question Details\"\n onClick={e => {\n e.stopPropagation();\n this.handleQuestionClick(sIndex, qIndex);\n }}\n noBackground={true}\n />\n )}\n </div>\n </udp-forms-builder-question-item>\n );\n })}\n </div>\n\n {isEditable &&\n !this.showMenuAtIndex && ( // Only show button if no menu is active\n <div class=\"add-question-to-section-button-container\">\n <udp-button\n variant=\"text\"\n onClick={() => {\n this.showMenuAtIndex = { sIndex: sIndex, qIndex: section.formQuestions.length };\n }}\n startIcon={<udp-icon iconName={'add'} color={'inherit'} />}\n >\n Add a Question\n </udp-button>\n </div>\n )}\n\n {isEditable &&\n this.showMenuAtIndex?.sIndex === sIndex &&\n this.showMenuAtIndex?.qIndex === section.formQuestions.length &&\n section.formQuestions.length > 0 && (\n <udp-forms-builder-menu\n isVisible={true}\n questionsTemplate={questionsTemplate}\n onAddSection={() => {\n const newFormSections = deepCloneFormSections(this.formSections);\n newFormSections.splice(sIndex + 1, 0, []);\n this.formSections = newFormSections;\n this.showMenuAtIndex = null;\n }}\n onAddQuestion={e => {\n if (this.showMenuAtIndex) {\n const indices = this.addQuestionOfType(e.detail, this.showMenuAtIndex.sIndex, this.showMenuAtIndex.qIndex);\n this.editingQuestion = { ...indices };\n this.isQuestionEditorOpen = true;\n }\n }}\n onCancelClick={() => (this.showMenuAtIndex = null)}\n />\n )}\n </div>\n </div>\n );\n })}\n </div>\n </udp-container>\n )}\n </div>\n );\n }\n}\n"],"names":["formMetadataDefault","UdpFormsPageIdEnum","UdpFormsTypeEnum","questionsTemplate","deepCloneFormSections","uuidv4","formSectionDefault","getCurrentTenantId","styleOverrideDefault","makeApiCall","ConfigService","Sortable","h","getIconFromName"],"mappings":"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"}
@@ -1,15 +1,15 @@
1
1
  'use strict';
2
2
 
3
3
  var index = require('./index-CGCOXUJE.js');
4
- var enums = require('./enums-DVbZnzL8.js');
4
+ var enums = require('./enums-CgcTuQjC.js');
5
5
 
6
6
  const UdpFormsFollowUpListCard = class {
7
7
  constructor(hostRef) {
8
8
  index.registerInstance(this, hostRef);
9
9
  }
10
10
  render() {
11
- const contentJsx = (index.h(index.Fragment, { key: 'af4d232501675041c5634dec614cb7e1d85306e8' }, index.h("unity-typography", { key: 'dcbe122b7125db4985ef56e2b3dfdc43aa8d3dff', variant: "body1", color: "textSecondary" }, "Version: ", this.listItemData.version), index.h("unity-typography", { key: '3e979696dceff562c3877fb4301a80e7e8284018', variant: "body1", color: "textSecondary" }, "Form Type: ", enums.UdpFormsTypeEnum[this.listItemData.type])));
12
- return (index.h("udp-card", { key: '5a232f80f8e4ad9b1bc2953d14c894c4ceff0c1f', cardTitle: this.listItemData.name, subheader: this.listItemData.description, onTitleClick: () => this.handleLaunchFollowUpForm(), disableContentPadding: true, adornmentStatus: 'info' }, contentJsx));
11
+ const contentJsx = (index.h(index.Fragment, { key: '0148fa047cd997bc9cff28cd98833074e8dc8f64' }, index.h("unity-typography", { key: 'e6d1704c0d97d94253cfda377818114234bd46c9', variant: "body1", color: "textSecondary" }, "Version: ", this.listItemData.version), index.h("unity-typography", { key: 'f6e98358257ddf8596abfdb100f5a633c063752a', variant: "body1", color: "textSecondary" }, "Form Type: ", enums.UdpFormsTypeEnum[this.listItemData.type])));
12
+ return (index.h("udp-card", { key: '6a5285ec5d718bb09965e61621544e81b900e9eb', cardTitle: this.listItemData.name, subheader: this.listItemData.description, onTitleClick: () => this.handleLaunchFollowUpForm(), disableContentPadding: true, adornmentStatus: 'info' }, contentJsx));
13
13
  }
14
14
  };
15
15