udp-stencil-component-library 25.18.1 → 25.18.2-beta.2

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 (416) 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 +5 -5
  3. package/dist/cjs/ag-grid-base_6.cjs.entry.js +2 -2
  4. package/dist/cjs/ambient-template-grid.cjs.entry.js +16 -16
  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 -0
  11. package/dist/cjs/{date-time-renderer_6.cjs.entry.js → date-time-renderer_7.cjs.entry.js} +43 -9
  12. package/dist/cjs/entity-maintenance-grid.cjs.entry.js +1 -1
  13. package/dist/cjs/{enums-ibNZ4cZ4.js → enums-DVbZnzL8.js} +3 -2
  14. package/dist/cjs/enums-DVbZnzL8.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 -0
  18. package/dist/cjs/{image-upload_7.cjs.entry.js → form-metadata-display_8.cjs.entry.js} +70 -12
  19. package/dist/cjs/index-CGCOXUJE.js +4 -4
  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_3.cjs.entry.js +2 -2
  24. package/dist/cjs/question-configs-renderer_4.cjs.entry.js +12 -12
  25. package/dist/cjs/resource-timeline-calendar.cjs.entry.js +1 -1
  26. package/dist/cjs/search-method-grid.cjs.entry.js +2 -1
  27. package/dist/cjs/search-method-grid.entry.cjs.js.map +1 -1
  28. package/dist/cjs/server-side-grid.cjs.entry.js +1 -1
  29. package/dist/cjs/side-sheet-container.cjs.entry.js +1 -1
  30. package/dist/cjs/stencil-library.cjs.js +1 -1
  31. package/dist/cjs/stencil-toggle.cjs.entry.js +4 -4
  32. package/dist/cjs/text-field_2.cjs.entry.js +7 -7
  33. package/dist/cjs/udp-chip_3.cjs.entry.js +1 -1
  34. package/dist/cjs/udp-container-query-grid-item.cjs.entry.js +1 -1
  35. package/dist/cjs/udp-container-query-grid.cjs.entry.js +1 -1
  36. package/dist/cjs/udp-container-query.cjs.entry.js +2 -2
  37. package/dist/cjs/udp-container_2.cjs.entry.js +3 -3
  38. package/dist/cjs/udp-date-range-selector.cjs.entry.js +1 -1
  39. package/dist/cjs/udp-dynamic-container-with-menu.cjs.entry.js +1 -1
  40. package/dist/cjs/{udp-forms-builder-question-template-BlgDh7P5.js → udp-forms-builder-question-template-CNONS2l5.js} +10 -3
  41. package/dist/cjs/{udp-forms-builder-question-template-BlgDh7P5.js.map → udp-forms-builder-question-template-CNONS2l5.js.map} +1 -1
  42. package/dist/cjs/udp-forms-builder-style-override.cjs.entry.js +1 -1
  43. package/dist/cjs/udp-forms-builder.cjs.entry.js +3 -3
  44. package/dist/cjs/udp-forms-builder.entry.cjs.js.map +1 -1
  45. package/dist/cjs/udp-forms-follow-up-list-card.cjs.entry.js +3 -3
  46. package/dist/cjs/udp-forms-list-card.cjs.entry.js +5 -5
  47. package/dist/cjs/udp-forms-list.cjs.entry.js +2 -2
  48. package/dist/cjs/udp-forms-renderer.cjs.entry.js +21 -18
  49. package/dist/cjs/udp-forms-renderer.entry.cjs.js.map +1 -1
  50. package/dist/cjs/udp-forms-ui.cjs.entry.js +7 -4
  51. package/dist/cjs/udp-forms-ui.entry.cjs.js.map +1 -1
  52. package/dist/cjs/udp-map.cjs.entry.js +3 -3
  53. package/dist/cjs/udp-menu-item.cjs.entry.js +1 -1
  54. package/dist/cjs/udp-page.cjs.entry.js +1 -1
  55. package/dist/cjs/udp-skeleton-loading.cjs.entry.js +1 -1
  56. package/dist/cjs/udp-split-screen.cjs.entry.js +1 -1
  57. package/dist/cjs/udp-stepper-demo.cjs.entry.js +1 -1
  58. package/dist/cjs/udp-tab-panel.cjs.entry.js +2 -2
  59. package/dist/cjs/udp-tab.cjs.entry.js +1 -1
  60. package/dist/cjs/udp-timeline-connector.cjs.entry.js +1 -1
  61. package/dist/cjs/udp-timeline-dot.cjs.entry.js +1 -1
  62. package/dist/cjs/udp-timeline-item.cjs.entry.js +2 -2
  63. package/dist/cjs/udp-timeline-separator.cjs.entry.js +1 -1
  64. package/dist/cjs/udp-timeline.cjs.entry.js +1 -1
  65. package/dist/cjs/udp-vertical-spacer.cjs.entry.js +1 -1
  66. package/dist/collection/collection-manifest.json +2 -0
  67. package/dist/collection/components/forms/udp-forms/udp-forms-builder/udp-forms-builder-item/form-metadata-display-renderer/form-metadata-display-renderer.css +8 -0
  68. package/dist/collection/components/forms/udp-forms/udp-forms-builder/udp-forms-builder-item/form-metadata-display-renderer/form-metadata-display-renderer.js +173 -0
  69. 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 -0
  70. package/dist/collection/components/forms/udp-forms/udp-forms-builder/udp-forms-builder-item/list-option-renderer/list-options-renderer.js +3 -3
  71. package/dist/collection/components/forms/udp-forms/udp-forms-builder/udp-forms-builder-item/question-configs-renderer/question-configs-renderer.js +5 -5
  72. package/dist/collection/components/forms/udp-forms/udp-forms-builder/udp-forms-builder-item/question-specific-configs-renderer/question-specific-configs-renderer.js +2 -0
  73. 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
  74. package/dist/collection/components/forms/udp-forms/udp-forms-builder/udp-forms-builder-item/section-configs-renderer/section-configs-renderer.js +3 -3
  75. package/dist/collection/components/forms/udp-forms/udp-forms-builder/udp-forms-builder-item/signature-renderer/signature-renderer.js +1 -1
  76. package/dist/collection/components/forms/udp-forms/udp-forms-builder/udp-forms-builder-item/text-input-renderer/text-input-renderer.js +2 -2
  77. package/dist/collection/components/forms/udp-forms/udp-forms-builder/udp-forms-builder-menu/udp-forms-builder-menu.js +2 -2
  78. package/dist/collection/components/forms/udp-forms/udp-forms-builder/udp-forms-builder-question-template.js +7 -0
  79. package/dist/collection/components/forms/udp-forms/udp-forms-builder/udp-forms-builder-question-template.js.map +1 -1
  80. package/dist/collection/components/forms/udp-forms/udp-forms-builder/udp-forms-builder-style-override/udp-forms-builder-style-override.js +1 -1
  81. package/dist/collection/components/forms/udp-forms/udp-forms-builder/udp-forms-builder.js +2 -2
  82. package/dist/collection/components/forms/udp-forms/udp-forms-builder/udp-forms-builder.js.map +1 -1
  83. package/dist/collection/components/forms/udp-forms/udp-forms-list/udp-forms-list-card/udp-forms-list-card.js +4 -4
  84. package/dist/collection/components/forms/udp-forms/udp-forms-list/udp-forms-list.js +1 -1
  85. package/dist/collection/components/forms/udp-forms/udp-forms-renderer/udp-forms-renderer-follow-up-list-card/udp-forms-follow-up-list-card.js +2 -2
  86. package/dist/collection/components/forms/udp-forms/udp-forms-renderer/udp-forms-renderer-ui/udp-forms-ui.js +12 -37
  87. package/dist/collection/components/forms/udp-forms/udp-forms-renderer/udp-forms-renderer-ui/udp-forms-ui.js.map +1 -1
  88. package/dist/collection/components/forms/udp-forms/udp-forms-renderer/udp-forms-renderer.js +19 -17
  89. package/dist/collection/components/forms/udp-forms/udp-forms-renderer/udp-forms-renderer.js.map +1 -1
  90. package/dist/collection/components/forms/udp-forms/udp-question/udp-question.js +40 -26
  91. package/dist/collection/components/forms/udp-forms/udp-question/udp-question.js.map +1 -1
  92. package/dist/collection/components/forms/udp-forms/utils/classes/UdpFormSubmission.js +1 -0
  93. package/dist/collection/components/forms/udp-forms/utils/classes/UdpFormSubmission.js.map +1 -1
  94. package/dist/collection/components/forms/udp-forms/utils/enums.js +1 -0
  95. package/dist/collection/components/forms/udp-forms/utils/enums.js.map +1 -1
  96. package/dist/collection/components/grid/ag-table/ag-table.js +1 -1
  97. package/dist/collection/components/grid/ambient-template-grid/ambient-template-grid.js +16 -16
  98. package/dist/collection/components/grid/grid-primary-bar/grid-primary-bar.js +2 -2
  99. package/dist/collection/components/grid/hotlists/udp-hotlist-form/udp-hotlist-form.js +1 -1
  100. package/dist/collection/components/grid/new-grid/ag-grid-base.js +1 -1
  101. package/dist/collection/components/grid/new-grid/api-method-instance-grid.js +1 -1
  102. package/dist/collection/components/grid/new-grid/client-side-grid.js +1 -1
  103. package/dist/collection/components/grid/new-grid/entity-maintenance-grid.js +1 -1
  104. package/dist/collection/components/grid/new-grid/search-method-grid.js +2 -1
  105. package/dist/collection/components/grid/new-grid/search-method-grid.js.map +1 -1
  106. package/dist/collection/components/grid/new-grid/server-side-grid.js +1 -1
  107. package/dist/collection/components/grid/resource-timeline-calendar/resource-timeline-calendar.js +1 -1
  108. package/dist/collection/components/grid/resource-timeline-calendar/resource-timeline-primary-bar.js +2 -2
  109. package/dist/collection/components/inputs/checkbox/check-box.js +2 -2
  110. package/dist/collection/components/inputs/date-range-selector/udp-date-range-selector.js +1 -1
  111. package/dist/collection/components/inputs/date-selector/udp-date-selector.js +3 -3
  112. package/dist/collection/components/inputs/date-time-selector/udp-datetime-selector.js +3 -3
  113. package/dist/collection/components/inputs/form metadata display/form-metadata-display.css +37 -0
  114. package/dist/collection/components/inputs/form metadata display/form-metadata-display.js +191 -0
  115. package/dist/collection/components/inputs/form metadata display/form-metadata-display.js.map +1 -0
  116. package/dist/collection/components/inputs/image-upload/image-upload.js +1 -1
  117. package/dist/collection/components/inputs/numeric-field/numeric-field.js +3 -3
  118. package/dist/collection/components/inputs/signature-input/signature-input.js +2 -2
  119. package/dist/collection/components/inputs/tally/tally.js +2 -2
  120. package/dist/collection/components/inputs/text-area/text-area.js +3 -3
  121. package/dist/collection/components/inputs/text-field/text-field.js +3 -3
  122. package/dist/collection/components/inputs/time-selector/udp-time-selector.js +3 -3
  123. package/dist/collection/components/inputs/toggle/stencil-toggle.js +4 -4
  124. package/dist/collection/components/inputs/udp-selector/udp-selector.js +4 -4
  125. package/dist/collection/components/layout/udp-container/udp-container.js +2 -2
  126. package/dist/collection/components/layout/udp-container-query/udp-container-query.js +2 -2
  127. package/dist/collection/components/layout/udp-container-query-grid/udp-container-query-grid.js +1 -1
  128. package/dist/collection/components/layout/udp-container-query-grid-item/udp-container-query-grid-item.js +1 -1
  129. package/dist/collection/components/layout/udp-page/udp-page.js +1 -1
  130. package/dist/collection/components/layout/udp-split-screen/udp-split-screen.js +1 -1
  131. package/dist/collection/components/layout/udp-vertical-spacer.js +1 -1
  132. package/dist/collection/components/loaders/udp-grid-loader/udp-grid-loader.js +2 -2
  133. package/dist/collection/components/loaders/udp-linear-loader/udp-linear-loader.js +1 -1
  134. package/dist/collection/components/loaders/udp-skeleton-loading.js +1 -1
  135. package/dist/collection/components/map/udp-map/map-component.js +1 -1
  136. package/dist/collection/components/map/udp-map/popups/add-map-feature-popup.js +3 -3
  137. package/dist/collection/components/map/udp-map/popups/feature-details-card/feature-details-card.js +4 -4
  138. package/dist/collection/components/map/udp-map/popups/feature-details-popup.js +1 -1
  139. package/dist/collection/components/map/udp-map/popups/select-layer-popup.js +2 -2
  140. package/dist/collection/components/map/udp-map/popups/split-line-popup.js +1 -1
  141. package/dist/collection/components/map/udp-map/toolbar/map-toolbar.js +6 -6
  142. package/dist/collection/components/map/udp-map/udp-map-toolbar.js +1 -1
  143. package/dist/collection/components/map/udp-map/udp-map.js +3 -3
  144. package/dist/collection/components/menu/menu-item/udp-menu-item.js +1 -1
  145. package/dist/collection/components/menu/udp-menu.js +1 -1
  146. package/dist/collection/components/stepper/udp-stepper-demo.js +1 -1
  147. package/dist/collection/components/tabs/tab/tabs/udp-tabs.js +2 -2
  148. package/dist/collection/components/tabs/tab/udp-tab.js +1 -1
  149. package/dist/collection/components/tabs/udp-tab-panel/udp-tab-panel.js +2 -2
  150. package/dist/collection/components/timeline/udp-timeline-connector.js +1 -1
  151. package/dist/collection/components/timeline/udp-timeline-dot.js +1 -1
  152. package/dist/collection/components/timeline/udp-timeline-item.js +2 -2
  153. package/dist/collection/components/timeline/udp-timeline-separator.js +1 -1
  154. package/dist/collection/components/timeline/udp-timeline.js +1 -1
  155. package/dist/collection/components/toolbars/app-bar/app-bar.js +1 -1
  156. package/dist/collection/components/util/ghost-render/ghost-render.js +1 -1
  157. package/dist/collection/deprecated/components/side-sheet/side-sheet-container.js +1 -1
  158. package/dist/collection/deprecated/components/side-sheet/side-sheet.js +1 -1
  159. package/dist/collection/udp-utilities/layout/udp-dynamic-container-with-menu/chip-section/chip-section.js +2 -2
  160. package/dist/collection/udp-utilities/layout/udp-dynamic-container-with-menu/udp-dynamic-container-with-menu.js +1 -1
  161. package/dist/components/add-map-feature-popup2.js +3 -3
  162. package/dist/components/ag-grid-base2.js +1 -1
  163. package/dist/components/ag-table2.js +1 -1
  164. package/dist/components/ambient-template-grid.js +16 -16
  165. package/dist/components/api-method-instance-grid.js +1 -1
  166. package/dist/components/app-bar.js +1 -1
  167. package/dist/components/check-box.js +2 -2
  168. package/dist/components/chip-section.js +2 -2
  169. package/dist/components/client-side-grid2.js +1 -1
  170. package/dist/components/entity-maintenance-grid.js +1 -1
  171. package/dist/components/enums.js +1 -0
  172. package/dist/components/enums.js.map +1 -1
  173. package/dist/components/feature-details-card2.js +4 -4
  174. package/dist/components/feature-details-popup2.js +1 -1
  175. package/dist/components/form-metadata-display-renderer.d.ts +11 -0
  176. package/dist/components/form-metadata-display-renderer.js +9 -0
  177. package/dist/components/form-metadata-display-renderer.js.map +1 -0
  178. package/dist/components/form-metadata-display-renderer2.js +74 -0
  179. package/dist/components/form-metadata-display-renderer2.js.map +1 -0
  180. package/dist/components/form-metadata-display.d.ts +11 -0
  181. package/dist/components/form-metadata-display.js +9 -0
  182. package/dist/components/form-metadata-display.js.map +1 -0
  183. package/dist/components/form-metadata-display2.js +77 -0
  184. package/dist/components/form-metadata-display2.js.map +1 -0
  185. package/dist/components/ghost-render2.js +1 -1
  186. package/dist/components/grid-primary-bar2.js +2 -2
  187. package/dist/components/image-upload2.js +1 -1
  188. package/dist/components/list-options-renderer2.js +3 -3
  189. package/dist/components/map-component2.js +1 -1
  190. package/dist/components/map-toolbar2.js +6 -6
  191. package/dist/components/numeric-field2.js +3 -3
  192. package/dist/components/question-configs-renderer2.js +15 -9
  193. package/dist/components/question-configs-renderer2.js.map +1 -1
  194. package/dist/components/question-specific-configs-renderer2.js +19 -4
  195. package/dist/components/question-specific-configs-renderer2.js.map +1 -1
  196. package/dist/components/resource-timeline-calendar.js +1 -1
  197. package/dist/components/resource-timeline-primary-bar2.js +2 -2
  198. package/dist/components/search-method-grid2.js +2 -1
  199. package/dist/components/search-method-grid2.js.map +1 -1
  200. package/dist/components/section-configs-renderer2.js +3 -3
  201. package/dist/components/select-layer-popup2.js +2 -2
  202. package/dist/components/server-side-grid2.js +1 -1
  203. package/dist/components/side-sheet-container2.js +1 -1
  204. package/dist/components/side-sheet2.js +1 -1
  205. package/dist/components/signature-input2.js +2 -2
  206. package/dist/components/signature-renderer2.js +1 -1
  207. package/dist/components/split-line-popup2.js +1 -1
  208. package/dist/components/stencil-toggle2.js +4 -4
  209. package/dist/components/tally.js +2 -2
  210. package/dist/components/text-area2.js +3 -3
  211. package/dist/components/text-field2.js +3 -3
  212. package/dist/components/text-input-renderer2.js +2 -2
  213. package/dist/components/udp-container-query-grid-item.js +1 -1
  214. package/dist/components/udp-container-query-grid.js +1 -1
  215. package/dist/components/udp-container-query2.js +2 -2
  216. package/dist/components/udp-container2.js +2 -2
  217. package/dist/components/udp-date-range-selector.js +1 -1
  218. package/dist/components/udp-date-selector2.js +3 -3
  219. package/dist/components/udp-datetime-selector2.js +3 -3
  220. package/dist/components/udp-dynamic-container-with-menu2.js +1 -1
  221. package/dist/components/udp-forms-builder-menu2.js +2 -2
  222. package/dist/components/udp-forms-builder-style-override.js +1 -1
  223. package/dist/components/udp-forms-builder.js +15 -9
  224. package/dist/components/udp-forms-builder.js.map +1 -1
  225. package/dist/components/udp-forms-follow-up-list-card.js +2 -2
  226. package/dist/components/udp-forms-list-card2.js +4 -4
  227. package/dist/components/udp-forms-list.js +1 -1
  228. package/dist/components/udp-forms-renderer.js +32 -23
  229. package/dist/components/udp-forms-renderer.js.map +1 -1
  230. package/dist/components/udp-forms-ui2.js +19 -11
  231. package/dist/components/udp-forms-ui2.js.map +1 -1
  232. package/dist/components/udp-grid-loader2.js +2 -2
  233. package/dist/components/udp-hotlist-form2.js +1 -1
  234. package/dist/components/udp-linear-loader2.js +1 -1
  235. package/dist/components/udp-map-toolbar2.js +1 -1
  236. package/dist/components/udp-map.js +3 -3
  237. package/dist/components/udp-menu-item2.js +1 -1
  238. package/dist/components/udp-menu2.js +1 -1
  239. package/dist/components/udp-page.js +1 -1
  240. package/dist/components/udp-question2.js +33 -10
  241. package/dist/components/udp-question2.js.map +1 -1
  242. package/dist/components/udp-selector2.js +4 -4
  243. package/dist/components/udp-skeleton-loading2.js +1 -1
  244. package/dist/components/udp-split-screen.js +1 -1
  245. package/dist/components/udp-stepper-demo.js +1 -1
  246. package/dist/components/udp-tab-panel.js +2 -2
  247. package/dist/components/udp-tab.js +1 -1
  248. package/dist/components/udp-tabs2.js +2 -2
  249. package/dist/components/udp-time-selector2.js +3 -3
  250. package/dist/components/udp-timeline-connector.js +1 -1
  251. package/dist/components/udp-timeline-dot.js +1 -1
  252. package/dist/components/udp-timeline-item.js +2 -2
  253. package/dist/components/udp-timeline-separator.js +1 -1
  254. package/dist/components/udp-timeline.js +1 -1
  255. package/dist/components/udp-vertical-spacer.js +1 -1
  256. package/dist/docs.json +487 -103
  257. package/dist/esm/add-map-feature-popup_4.entry.js +12 -12
  258. package/dist/esm/advanced-search_12.entry.js +5 -5
  259. package/dist/esm/ag-grid-base_6.entry.js +2 -2
  260. package/dist/esm/ambient-template-grid.entry.js +16 -16
  261. package/dist/esm/api-method-instance-grid.entry.js +1 -1
  262. package/dist/esm/app-bar.entry.js +1 -1
  263. package/dist/esm/check-box.entry.js +2 -2
  264. package/dist/esm/chip-section.entry.js +2 -2
  265. package/dist/esm/client-side-grid_2.entry.js +3 -3
  266. 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 -0
  267. package/dist/esm/{date-time-renderer_6.entry.js → date-time-renderer_7.entry.js} +43 -10
  268. package/dist/esm/entity-maintenance-grid.entry.js +1 -1
  269. package/dist/esm/{enums-BnKmfKJT.js → enums-CHxgVY-B.js} +3 -2
  270. package/dist/esm/enums-CHxgVY-B.js.map +1 -0
  271. package/dist/esm/feature-details-card_2.entry.js +5 -5
  272. package/dist/esm/filter-conditions_7.entry.js +2 -2
  273. 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 -0
  274. package/dist/esm/{image-upload_7.entry.js → form-metadata-display_8.entry.js} +71 -14
  275. package/dist/esm/index-CaZq3YdB.js +4 -4
  276. package/dist/esm/loader.js +1 -1
  277. package/dist/esm/map-component_2.entry.js +2 -2
  278. package/dist/esm/numeric-field_5.entry.js +15 -15
  279. package/dist/esm/primary-action-header_3.entry.js +2 -2
  280. package/dist/esm/question-configs-renderer_4.entry.js +12 -12
  281. package/dist/esm/resource-timeline-calendar.entry.js +1 -1
  282. package/dist/esm/search-method-grid.entry.js +2 -1
  283. package/dist/esm/search-method-grid.entry.js.map +1 -1
  284. package/dist/esm/server-side-grid.entry.js +1 -1
  285. package/dist/esm/side-sheet-container.entry.js +1 -1
  286. package/dist/esm/stencil-library.js +1 -1
  287. package/dist/esm/stencil-toggle.entry.js +4 -4
  288. package/dist/esm/text-field_2.entry.js +7 -7
  289. package/dist/esm/udp-chip_3.entry.js +1 -1
  290. package/dist/esm/udp-container-query-grid-item.entry.js +1 -1
  291. package/dist/esm/udp-container-query-grid.entry.js +1 -1
  292. package/dist/esm/udp-container-query.entry.js +2 -2
  293. package/dist/esm/udp-container_2.entry.js +3 -3
  294. package/dist/esm/udp-date-range-selector.entry.js +1 -1
  295. package/dist/esm/udp-dynamic-container-with-menu.entry.js +1 -1
  296. package/dist/esm/{udp-forms-builder-question-template-C60LMUS4.js → udp-forms-builder-question-template-DQJb7f4Y.js} +10 -3
  297. package/dist/{stencil-library/udp-forms-builder-question-template-C60LMUS4.js.map → esm/udp-forms-builder-question-template-DQJb7f4Y.js.map} +1 -1
  298. package/dist/esm/udp-forms-builder-style-override.entry.js +1 -1
  299. package/dist/esm/udp-forms-builder.entry.js +3 -3
  300. package/dist/esm/udp-forms-builder.entry.js.map +1 -1
  301. package/dist/esm/udp-forms-follow-up-list-card.entry.js +3 -3
  302. package/dist/esm/udp-forms-list-card.entry.js +5 -5
  303. package/dist/esm/udp-forms-list.entry.js +2 -2
  304. package/dist/esm/udp-forms-renderer.entry.js +21 -18
  305. package/dist/esm/udp-forms-renderer.entry.js.map +1 -1
  306. package/dist/esm/udp-forms-ui.entry.js +7 -4
  307. package/dist/esm/udp-forms-ui.entry.js.map +1 -1
  308. package/dist/esm/udp-map.entry.js +3 -3
  309. package/dist/esm/udp-menu-item.entry.js +1 -1
  310. package/dist/esm/udp-page.entry.js +1 -1
  311. package/dist/esm/udp-skeleton-loading.entry.js +1 -1
  312. package/dist/esm/udp-split-screen.entry.js +1 -1
  313. package/dist/esm/udp-stepper-demo.entry.js +1 -1
  314. package/dist/esm/udp-tab-panel.entry.js +2 -2
  315. package/dist/esm/udp-tab.entry.js +1 -1
  316. package/dist/esm/udp-timeline-connector.entry.js +1 -1
  317. package/dist/esm/udp-timeline-dot.entry.js +1 -1
  318. package/dist/esm/udp-timeline-item.entry.js +2 -2
  319. package/dist/esm/udp-timeline-separator.entry.js +1 -1
  320. package/dist/esm/udp-timeline.entry.js +1 -1
  321. package/dist/esm/udp-vertical-spacer.entry.js +1 -1
  322. package/dist/stencil-library/add-map-feature-popup_4.entry.js +1 -1
  323. package/dist/stencil-library/advanced-search_12.entry.js +1 -1
  324. package/dist/stencil-library/ag-grid-base_6.entry.js +1 -1
  325. package/dist/stencil-library/ambient-template-grid.entry.js +1 -1
  326. package/dist/stencil-library/api-method-instance-grid.entry.js +1 -1
  327. package/dist/stencil-library/app-bar.entry.js +1 -1
  328. package/dist/stencil-library/check-box.entry.js +1 -1
  329. package/dist/stencil-library/chip-section.entry.js +1 -1
  330. package/dist/stencil-library/client-side-grid_2.entry.js +1 -1
  331. 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 -0
  332. package/dist/stencil-library/date-time-renderer_7.entry.js +2 -0
  333. package/dist/stencil-library/date-time-renderer_7.entry.js.map +1 -0
  334. package/dist/stencil-library/entity-maintenance-grid.entry.js +1 -1
  335. package/dist/stencil-library/enums-CHxgVY-B.js +2 -0
  336. package/dist/stencil-library/enums-CHxgVY-B.js.map +1 -0
  337. package/dist/stencil-library/feature-details-card_2.entry.js +1 -1
  338. package/dist/stencil-library/filter-conditions_7.entry.js +1 -1
  339. 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 -0
  340. package/dist/stencil-library/form-metadata-display_8.entry.js +2 -0
  341. package/dist/stencil-library/form-metadata-display_8.entry.js.map +1 -0
  342. package/dist/stencil-library/map-component_2.entry.js +1 -1
  343. package/dist/stencil-library/numeric-field_5.entry.js +1 -1
  344. package/dist/stencil-library/primary-action-header_3.entry.js +1 -1
  345. package/dist/stencil-library/question-configs-renderer_4.entry.js +1 -1
  346. package/dist/stencil-library/resource-timeline-calendar.entry.js +1 -1
  347. package/dist/stencil-library/search-method-grid.entry.esm.js.map +1 -1
  348. package/dist/stencil-library/search-method-grid.entry.js +1 -1
  349. package/dist/stencil-library/search-method-grid.entry.js.map +1 -1
  350. package/dist/stencil-library/server-side-grid.entry.js +1 -1
  351. package/dist/stencil-library/side-sheet-container.entry.js +1 -1
  352. package/dist/stencil-library/stencil-library.esm.js +1 -1
  353. package/dist/stencil-library/stencil-toggle.entry.js +1 -1
  354. package/dist/stencil-library/text-field_2.entry.js +1 -1
  355. package/dist/stencil-library/udp-chip_3.entry.js +1 -1
  356. package/dist/stencil-library/udp-container-query-grid-item.entry.js +1 -1
  357. package/dist/stencil-library/udp-container-query-grid.entry.js +1 -1
  358. package/dist/stencil-library/udp-container-query.entry.js +1 -1
  359. package/dist/stencil-library/udp-container_2.entry.js +1 -1
  360. package/dist/stencil-library/udp-date-range-selector.entry.js +1 -1
  361. package/dist/stencil-library/udp-dynamic-container-with-menu.entry.js +1 -1
  362. package/dist/stencil-library/{udp-forms-builder-question-template-C60LMUS4.js → udp-forms-builder-question-template-DQJb7f4Y.js} +2 -2
  363. package/dist/{esm/udp-forms-builder-question-template-C60LMUS4.js.map → stencil-library/udp-forms-builder-question-template-DQJb7f4Y.js.map} +1 -1
  364. package/dist/stencil-library/udp-forms-builder-style-override.entry.js +1 -1
  365. package/dist/stencil-library/udp-forms-builder.entry.esm.js.map +1 -1
  366. package/dist/stencil-library/udp-forms-builder.entry.js +1 -1
  367. package/dist/stencil-library/udp-forms-builder.entry.js.map +1 -1
  368. package/dist/stencil-library/udp-forms-follow-up-list-card.entry.js +1 -1
  369. package/dist/stencil-library/udp-forms-list-card.entry.js +1 -1
  370. package/dist/stencil-library/udp-forms-list-card.entry.js.map +1 -1
  371. package/dist/stencil-library/udp-forms-list.entry.js +1 -1
  372. package/dist/stencil-library/udp-forms-renderer.entry.esm.js.map +1 -1
  373. package/dist/stencil-library/udp-forms-renderer.entry.js +1 -1
  374. package/dist/stencil-library/udp-forms-renderer.entry.js.map +1 -1
  375. package/dist/stencil-library/udp-forms-ui.entry.esm.js.map +1 -1
  376. package/dist/stencil-library/udp-forms-ui.entry.js +1 -1
  377. package/dist/stencil-library/udp-forms-ui.entry.js.map +1 -1
  378. package/dist/stencil-library/udp-map.entry.js +1 -1
  379. package/dist/stencil-library/udp-menu-item.entry.js +1 -1
  380. package/dist/stencil-library/udp-page.entry.js +1 -1
  381. package/dist/stencil-library/udp-skeleton-loading.entry.js +1 -1
  382. package/dist/stencil-library/udp-split-screen.entry.js +1 -1
  383. package/dist/stencil-library/udp-stepper-demo.entry.js +1 -1
  384. package/dist/stencil-library/udp-tab-panel.entry.js +1 -1
  385. package/dist/stencil-library/udp-tab.entry.js +1 -1
  386. package/dist/stencil-library/udp-timeline-connector.entry.js +1 -1
  387. package/dist/stencil-library/udp-timeline-dot.entry.js +1 -1
  388. package/dist/stencil-library/udp-timeline-item.entry.js +1 -1
  389. package/dist/stencil-library/udp-timeline-item.entry.js.map +1 -1
  390. package/dist/stencil-library/udp-timeline-separator.entry.js +1 -1
  391. package/dist/stencil-library/udp-timeline.entry.js +1 -1
  392. package/dist/stencil-library/udp-vertical-spacer.entry.js +1 -1
  393. package/dist/types/components/forms/udp-forms/udp-forms-builder/udp-forms-builder-item/form-metadata-display-renderer/form-metadata-display-renderer.d.ts +11 -0
  394. package/dist/types/components/forms/udp-forms/udp-forms-builder/udp-forms-builder-question-template.d.ts +70 -0
  395. package/dist/types/components/forms/udp-forms/udp-forms-renderer/udp-forms-renderer-ui/udp-forms-ui.d.ts +5 -2
  396. package/dist/types/components/forms/udp-forms/udp-forms-renderer/udp-forms-renderer.d.ts +1 -3
  397. package/dist/types/components/forms/udp-forms/udp-question/udp-question.d.ts +8 -3
  398. package/dist/types/components/forms/udp-forms/utils/classes/UdpFormSubmission.d.ts +1 -0
  399. package/dist/types/components/forms/udp-forms/utils/enums.d.ts +2 -1
  400. package/dist/types/components/inputs/form metadata display/form-metadata-display.d.ts +62 -0
  401. package/dist/types/components.d.ts +178 -28
  402. package/package.json +2 -2
  403. package/dist/cjs/date-time-renderer.file-upload-renderer.list-options-renderer.question-specific-configs-renderer.signature-renderer.text-input-renderer.entry.cjs.js.map +0 -1
  404. package/dist/cjs/enums-ibNZ4cZ4.js.map +0 -1
  405. package/dist/cjs/image-upload.signature-input.stencil-form.tally-display.udp-question.udp-question-comments.udp-save-draft-button.entry.cjs.js.map +0 -1
  406. package/dist/esm/date-time-renderer.file-upload-renderer.list-options-renderer.question-specific-configs-renderer.signature-renderer.text-input-renderer.entry.js.map +0 -1
  407. package/dist/esm/enums-BnKmfKJT.js.map +0 -1
  408. package/dist/esm/image-upload.signature-input.stencil-form.tally-display.udp-question.udp-question-comments.udp-save-draft-button.entry.js.map +0 -1
  409. package/dist/stencil-library/date-time-renderer.file-upload-renderer.list-options-renderer.question-specific-configs-renderer.signature-renderer.text-input-renderer.entry.esm.js.map +0 -1
  410. package/dist/stencil-library/date-time-renderer_6.entry.js +0 -2
  411. package/dist/stencil-library/date-time-renderer_6.entry.js.map +0 -1
  412. package/dist/stencil-library/enums-BnKmfKJT.js +0 -2
  413. package/dist/stencil-library/enums-BnKmfKJT.js.map +0 -1
  414. package/dist/stencil-library/image-upload.signature-input.stencil-form.tally-display.udp-question.udp-question-comments.udp-save-draft-button.entry.esm.js.map +0 -1
  415. package/dist/stencil-library/image-upload_7.entry.js +0 -2
  416. package/dist/stencil-library/image-upload_7.entry.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"image-upload.signature-input.stencil-form.tally-display.udp-question.udp-question-comments.udp-save-draft-button.entry.js","sources":["src/components/inputs/image-upload/image-upload.css?tag=image-upload&encapsulation=shadow","src/components/inputs/image-upload/image-upload.tsx","src/components/inputs/signature-input/signature-input.css?tag=signature-input&encapsulation=shadow","src/components/inputs/signature-input/signature-input.tsx","src/components/forms/form/stencil-form.tsx","src/components/inputs/tally/tally.css?tag=tally-display&encapsulation=shadow","src/components/inputs/tally/tally.tsx","src/components/forms/form/useFormApi.ts","src/components/forms/udp-forms/udp-question/udp-question.css?tag=udp-question&encapsulation=shadow","src/components/forms/udp-forms/udp-question/udp-question.tsx","src/components/forms/udp-forms/udp-question/udp-question-comment/udp-question-comments.css?tag=udp-question-comments&encapsulation=shadow","src/components/forms/udp-forms/udp-question/udp-question-comment/udp-question-comments.tsx","src/components/forms/udp-forms/udp-forms-renderer/udp-save-draft-button/udp-save-draft-button.css?tag=udp-save-draft-button&encapsulation=shadow","src/components/forms/udp-forms/udp-forms-renderer/udp-save-draft-button/udp-save-draft-button.tsx"],"sourcesContent":[":host {\n display: block;\n}\n","import { Component, h, Host, Prop, Event, EventEmitter } from '@stencil/core';\nimport { UdpDriveFile } from '../../../global/types';\n\n/**\n * A specialized image upload component that wraps the file-upload component\n * with image-specific functionality including image preview, rendering, and validation.\n *\n * This component automatically restricts file types to common image formats\n * and provides image preview functionality.\n *\n * @example\n * ```tsx\n * // Basic image upload\n * <image-upload\n * allowMultiple={true}\n * onChange={(e) => console.log('Images:', e.detail.files)}\n * />\n *\n * // With existing images and preview\n * <image-upload\n * initialValue={existingImages}\n * renderImages={true}\n * onChange={handleImageChange}\n * />\n * ```\n */\n@Component({\n tag: 'image-upload',\n styleUrl: 'image-upload.css',\n shadow: true,\n})\nexport class ImageUpload {\n\n\n /**\n * Array of allowed image MIME types. Defaults to common image formats.\n * Overrides the default image MIME types if specified.\n * Example: ['image/jpeg', 'image/png', 'image/gif']\n */\n @Prop() allowedMimeTypes: Array<string> = ['image/jpeg', 'image/png', 'image/gif', 'image/svg+xml', 'image/webp'];\n\n /**\n * Whether the component should take the full width of its container.\n */\n @Prop() fullWidth: boolean = false;\n\n /**\n * Whether image selection is required.\n */\n @Prop() required: boolean;\n\n /**\n * Error message to display.\n */\n @Prop() error: string;\n\n /**\n * Message for the drag-and-drop area.\n */\n @Prop() dragAndDropMessage: string = 'Drag and drop your image here';\n\n /**\n * Text for the browse files button.\n */\n @Prop() browseFileMessage: string = 'Browse Image';\n\n /**\n * Whether to hide the drag-and-drop area.\n */\n @Prop() hideDragAndDrop: boolean = false;\n\n /**\n * Whether to hide the browse files button.\n */\n @Prop() hideButton: boolean = false;\n\n /**\n * Unique identifier for the component.\n */\n @Prop() id: string;\n\n /**\n * Name attribute for the component.\n */\n @Prop() name: string;\n\n /**\n * Label for the component.\n */\n @Prop() label: string;\n\n /**\n * Whether the component is disabled.\n */\n @Prop() disabled: boolean = false;\n\n /**\n * Whether the component is in a read-only state.\n */\n @Prop() readonly: boolean = false;\n\n /**\n * Initial value for the component (UdpDriveFile, File, or string).\n */\n @Prop() initialValue: UdpDriveFile | UdpDriveFile[] | File | File[] | string;\n\n /**\n * Emitted when the selected images change.\n */\n @Event() change: EventEmitter<{ value: string; files: File[] }>;\n\n private handleFileChange = (event: CustomEvent) => {\n // Prevent the event from bubbling up further, as we are re-emitting it.\n event.stopPropagation();\n this.change.emit(event.detail);\n };\n\n render() {\n return (\n <Host>\n <file-upload\n allowMultiple={false}\n allowedMimeTypes={this.allowedMimeTypes}\n fullWidth={this.fullWidth}\n required={this.required}\n error={this.error}\n dragAndDropMessage={this.dragAndDropMessage}\n browseFileMessage={this.browseFileMessage}\n hideDragAndDrop={this.hideDragAndDrop}\n hideButton={this.hideButton}\n id={this.id}\n name={this.name}\n label={this.label}\n disabled={this.disabled}\n readonly={this.readonly}\n initialValue={this.initialValue}\n renderImage={true}\n onChange={this.handleFileChange}\n ></file-upload>\n </Host>\n );\n }\n}\n","@import '../inputs.css';\n\n/* Size variants for canvas sizing */\n:host(.udp-input--size-small) .signature-canvas {\n height: 150px;\n}\n\n:host(.udp-input--size-normal) .signature-canvas {\n height: 200px;\n}\n\n:host(.udp-input--size-large) .signature-canvas {\n height: 250px;\n}\n\n/* Size variants for clear button */\n:host(.udp-input--size-small) .clear-button {\n padding: var(--spacing-01) var(--spacing-02);\n font-size: var(--caption-font-size, 0.875rem);\n top: var(--spacing-02);\n right: var(--spacing-02);\n}\n\n:host(.udp-input--size-normal) .clear-button {\n padding: var(--spacing-02) var(--spacing-03);\n font-size: var(--body-font-size);\n top: var(--spacing-02);\n right: var(--spacing-02);\n}\n\n:host(.udp-input--size-large) .clear-button {\n padding: var(--spacing-03) var(--spacing-04);\n font-size: var(--body-font-size);\n top: var(--spacing-03);\n right: var(--spacing-03);\n}\n\n.signature-pad-container {\n position: relative;\n border: 1px solid var(--udp-mid-gray-color);\n border-radius: 4px;\n background-color: var(--udp-light-gray-color);\n}\n\n.signature-canvas {\n display: block;\n width: 100%;\n height: 200px; /* Default height, overridden by density variants */\n}\n\n.signature-pad-container.readonly {\n background-color: var(--udp-disabled-gray-color);\n}\n\n.signature-canvas.readonly {\n cursor: not-allowed;\n}\n\n.clear-button {\n position: absolute;\n top: var(--spacing-02); /* Default, overridden by density variants */\n right: var(--spacing-02); /* Default, overridden by density variants */\n background-color: var(--udp-light-gray-color);\n border: 1px solid var(--udp-mid-gray-color);\n color: var(--udp-primary-color);\n cursor: pointer;\n border-radius: 4px;\n padding: var(--spacing-02) var(--spacing-03); /* Default, overridden by density variants */\n}\n\n.clear-button:hover {\n background-color: var(--udp-mid-gray-color);\n}\n\n.clear-button:disabled {\n cursor: not-allowed;\n opacity: 0.5;\n}\n","import { Component, Prop, h, State, Watch, Event, EventEmitter, Element, Host } from '@stencil/core';\nimport type SignaturePad from 'signature_pad';\nimport { UdpDriveFile } from '../../../global/types';\nimport { InputSize, InputMargin } from '../input-types';\nimport {\n isUdpDriveFile,\n isFileReference,\n parseFileReference,\n downloadFileFromUdpDriveFile,\n createFileFromString,\n isFile,\n} from '../file-upload/udp-drive-utils';\n\n\n@Component({\n tag: 'signature-input',\n styleUrl: 'signature-input.css',\n shadow: true,\n})\nexport class SignatureInput {\n @Element() el: HTMLElement;\n\n /**\n * Label for the input field.\n */\n @Prop() label: string;\n\n /**\n * Unique identifier for the input.\n */\n @Prop() id: string;\n\n /**\n * Whether the field is required.\n */\n @Prop() required: boolean;\n\n /**\n * Whether to save location and timestamp data in the submission.\n */\n @Prop() includeLocation: boolean = false;\n\n /**\n * Whether the field is disabled.\n */\n @Prop() disabled: boolean = false;\n\n /**\n * Whether the field is read-only.\n */\n @Prop() readonly: boolean = false;\n\n /**\n * Error message to display.\n */\n @Prop() error: string;\n\n /**\n * Size variant for the signature input.\n * - 'small': Compact signature area\n * - 'normal': Standard signature area (default)\n * - 'large': Generous signature area\n */\n @Prop() size: InputSize = 'normal';\n\n /**\n * Margin variant for the input spacing.\n * - 'none': No margin\n * - 'dense': Minimal margin spacing\n * - 'normal': Standard margin spacing (default)\n */\n @Prop() margin: InputMargin = 'normal';\n\n /**\n * The current value of the signature, can be a File or UdpDriveFile.\n */\n @Prop({ mutable: true }) value: File | UdpDriveFile;\n\n /**\n * The initial value, used if `value` is not provided.\n */\n @Prop() initialValue: File | UdpDriveFile | string;\n\n /**\n * Emitted when the signature changes.\n */\n @Event() change: EventEmitter<File | null>;\n @Event() metadataEmit: EventEmitter<{ key: string; value: any } | null>;\n\n @State() private internalError: string;\n @State() private signaturePad: SignaturePad;\n @State() private cachedLocation: GeolocationPosition | null = null;\n \n private canvasEl: HTMLCanvasElement;\n private SignaturePadLib: typeof SignaturePad;\n \n private lastCanvasRect: DOMRect;\n private resizeTimeout: any;\n private isInternalChange = false;\n\n private async processAndLoadValue(incomingValue: any) {\n if (!incomingValue) {\n if (this.signaturePad) this.signaturePad.clear();\n return;\n }\n\n try {\n const rawValue = Array.isArray(incomingValue) ? incomingValue[0] : incomingValue;\n let loadedFile: File | null = null;\n\n // --- Parsing Logic ---\n if (typeof rawValue === 'string' && isFileReference(rawValue)) {\n const parsedFile = await parseFileReference(rawValue);\n if (parsedFile && (parsedFile as any).driveFileId) {\n loadedFile = await downloadFileFromUdpDriveFile({\n name: parsedFile.name,\n driveFileId: (parsedFile as any).driveFileId,\n extension: parsedFile.name.split('.').pop() || '',\n } as any);\n } else {\n loadedFile = parsedFile as File;\n }\n } \n else if (isUdpDriveFile(rawValue)) {\n loadedFile = await downloadFileFromUdpDriveFile(rawValue);\n } \n else if (typeof rawValue === 'string') {\n loadedFile = await createFileFromString(rawValue, 'signature.png');\n } \n else if (isFile(rawValue)) {\n loadedFile = rawValue;\n }\n\n // --- Application Logic ---\n if (loadedFile) {\n this.value = loadedFile; // Update internal prop\n if (this.signaturePad) {\n await this.loadSignature(loadedFile);\n } else {\n // If pad isn't ready yet, initializeSignaturePad will pick up this.value\n this.initializeSignaturePad();\n }\n }\n } catch (err) {\n console.error('Failed to process signature value:', err);\n }\n}\n\n\n @Watch('error')\n onErrorChange(newValue: string) {\n this.internalError = newValue;\n }\n\n\n @Watch('value')\n async handleValueUpdate(newValue: any) {\n // Guard against loops from our own 'endStroke'\n if (this.isInternalChange) {\n this.isInternalChange = false;\n return;\n }\n\n // If the value changed from outside, we need to re-parse/re-load\n if (this.canvasEl) {\n await this.processAndLoadValue(newValue);\n }\n }\n\n @Watch('initialValue')\n async handleInitialValueUpdate(newValue: any) {\n // Only react to initialValue changes if we have a canvas\n if (this.canvasEl) {\n await this.processAndLoadValue(newValue);\n }\n }\n\n async componentWillLoad() {\n this.internalError = this.error;\n await this.loadSignaturePad();\n\n // Prewarm location if enabled\n if (this.includeLocation) {\n navigator.geolocation.getCurrentPosition(\n (coords) => {\n this.cachedLocation = coords;\n },\n (err) => {\n console.warn(\"Prewarm geolocation error:\", err);\n this.cachedLocation = null;\n },\n { enableHighAccuracy: true, timeout: 30000, maximumAge: 0 }\n );\n }\n }\n\n async componentDidLoad() {\n // 1. Initialize the pad (this sets up the canvas and library)\n this.initializeSignaturePad();\n\n // 2. Load whatever we have (preferring value over initialValue)\n const starterValue = this.value || this.initialValue;\n if (starterValue) {\n await this.processAndLoadValue(starterValue);\n }\n\n this.lastCanvasRect = this.canvasEl.getBoundingClientRect();\n window.addEventListener('resize', this.handleResize);\n }\n\n \n\n disconnectedCallback() {\n window.removeEventListener('resize', this.handleResize);\n if (this.resizeTimeout) clearTimeout(this.resizeTimeout);\n }\n\n private handleResize = () => {\n if (this.resizeTimeout) clearTimeout(this.resizeTimeout);\n this.resizeTimeout = setTimeout(() => {\n const rect = this.canvasEl.getBoundingClientRect();\n if (!this.lastCanvasRect || rect.width !== this.lastCanvasRect.width || rect.height !== this.lastCanvasRect.height) {\n // Save current signature as dataURL\n let dataURL = this.signaturePad && !this.signaturePad.isEmpty() ? this.signaturePad.toDataURL() : null;\n this.resizeCanvasForDPR();\n this.initializeSignaturePad();\n this.lastCanvasRect = rect;\n // Restore signature if it existed\n if (dataURL && this.signaturePad) {\n this.signaturePad.fromDataURL(dataURL);\n }\n }\n }, 200);\n }\n\n private resizeCanvasForDPR() {\n if (!this.canvasEl) return;\n const ratio = window.devicePixelRatio || 1;\n const rect = this.canvasEl.getBoundingClientRect();\n \n // Setting width/height automatically clears the canvas and resets the context\n this.canvasEl.width = rect.width * ratio;\n this.canvasEl.height = rect.height * ratio;\n \n const ctx = this.canvasEl.getContext('2d');\n // Just to be safe, reset transform before scaling\n ctx.setTransform(1, 0, 0, 1, 0, 0); \n ctx.scale(ratio, ratio);\n }\n\n private async loadSignaturePad() {\n if (!this.SignaturePadLib) {\n try {\n const module = await import('signature_pad');\n this.SignaturePadLib = module.default;\n } catch (e) {\n console.error('Failed to load signature_pad library', e);\n }\n }\n }\n\n private initializeSignaturePad() {\n if (this.SignaturePadLib && this.canvasEl) {\n // 1. Reset the canvas dimensions and scale first\n this.resizeCanvasForDPR();\n\n // 2. Destroy old instance if it exists\n if (this.signaturePad) {\n this.signaturePad.off();\n }\n \n // 3. Create new instance\n this.signaturePad = new this.SignaturePadLib(this.canvasEl);\n this.signaturePad.addEventListener(\"endStroke\", this.handleSignatureEnd);\n this.handleStateChange();\n \n // 4. Load value if exists\n if (this.value) {\n this.loadSignature(this.value);\n }\n }\n }\n\n @Watch('disabled')\n @Watch('readonly')\n handleStateChange() {\n if (this.signaturePad) {\n if (this.disabled || this.readonly) {\n this.signaturePad.off();\n } else {\n this.signaturePad.on();\n }\n }\n }\n\n\n private handleSignatureEnd = async () => {\n if (this.signaturePad.isEmpty()) {\n this.isInternalChange = true; \n this.value = null;\n this.change.emit(null);\n this.metadataEmit.emit({ key: 'signature.latitude', value: null });\n this.metadataEmit.emit({ key: 'signature.longitude', value: null });\n this.metadataEmit.emit({ key: 'signature.timestamp', value: null });\n } else {\n const dataURL = this.signaturePad.toDataURL();\n const signatureFile = await this.urlToFile(dataURL, 'signature.png');\n \n this.isInternalChange = true;\n this.value = signatureFile; \n this.change.emit(signatureFile);\n\n // Timestamp always emitted\n this.metadataEmit.emit({\n key: 'signature.timestamp',\n value: new Date().toISOString(),\n });\n\n // Location handling\n if (this.includeLocation) {\n try {\n let coords = this.cachedLocation;\n\n if (!coords) {\n // Fallback if prewarm failed\n coords = await new Promise<GeolocationPosition>((resolve, reject) => {\n navigator.geolocation.getCurrentPosition(resolve, reject, {\n enableHighAccuracy: true,\n timeout: 30000,\n maximumAge: 0,\n });\n });\n }\n\n if (coords) {\n this.metadataEmit.emit({ key: 'signature.latitude', value: coords.coords.latitude });\n this.metadataEmit.emit({ key: 'signature.longitude', value: coords.coords.longitude });\n } else {\n this.metadataEmit.emit({ key: 'signature.latitude', value: null });\n this.metadataEmit.emit({ key: 'signature.longitude', value: null });\n }\n\n } catch (err) {\n console.warn(\"Geolocation error:\", err);\n this.metadataEmit.emit({ key: 'signature.latitude', value: null });\n this.metadataEmit.emit({ key: 'signature.longitude', value: null });\n }\n }\n }\n };\n\n\n private async loadSignature(signatureValue: File | UdpDriveFile | string) {\n let imageUrl: string;\n if (typeof signatureValue === 'string') {\n imageUrl = signatureValue;\n } else if (isUdpDriveFile(signatureValue)) {\n try {\n const file = await downloadFileFromUdpDriveFile(signatureValue as UdpDriveFile);\n imageUrl = URL.createObjectURL(file);\n } catch (error) {\n console.error('Error loading signature image from UdpDriveFile:', error);\n return;\n }\n } else if (signatureValue instanceof File) {\n imageUrl = URL.createObjectURL(signatureValue);\n }\n\n if (imageUrl && this.signaturePad) {\n // 1. Clear the pad first to prevent double signatures\n this.signaturePad.clear(); \n \n // 2. Load the image\n this.signaturePad.fromDataURL(imageUrl, {\n ratio: window.devicePixelRatio || 1 // Explicitly tell it the ratio\n });\n }\n }\n\n private async urlToFile(url: string, filename: string): Promise<File> {\n const res = await fetch(url);\n const blob = await res.blob();\n return new File([blob], filename, { type: blob.type });\n }\n\n private clearSignature = () => {\n if (this.signaturePad) {\n this.signaturePad.clear();\n this.handleSignatureEnd(); // to emit the change\n }\n };\n\n render() {\n const isError = !!this.internalError;\n const containerClasses = {\n 'signature-pad-container': true,\n 'readonly': this.readonly,\n 'disabled': this.disabled,\n };\n\n return (\n <Host\n class={{\n 'udp-input': true,\n 'udp-input--error': isError,\n 'udp-input--disabled': this.disabled,\n 'udp-input--required': this.required,\n 'udp-input--readonly': this.readonly,\n [`udp-input--size-${this.size}`]: true,\n [`udp-input--margin-${this.margin}`]: true,\n }}\n >\n <div class=\"bx--form-item\">\n {this.label && (\n <unity-typography variant=\"caption-text\">\n <label htmlFor={this.id} class=\"bx--label\">\n {this.label}\n {this.required && '*'}\n </label>\n </unity-typography>\n )}\n <div class={containerClasses}>\n <canvas\n ref={el => (this.canvasEl = el as HTMLCanvasElement)}\n class={{ 'signature-canvas': true, 'readonly': this.readonly || this.disabled }}\n id={this.id}\n ></canvas>\n {!this.readonly && !this.disabled && (\n <button\n type=\"button\"\n class=\"clear-button\"\n onClick={this.clearSignature}\n disabled={this.disabled}\n >\n Clear\n </button>\n )}\n </div>\n {isError && (\n <div class=\"error-message\">\n <unity-typography variant=\"caption-text\" color=\"error\">{this.internalError}</unity-typography>\n </div>\n )}\n </div>\n </Host>\n );\n }\n}\n\n","import { Component, h, Prop, Event as StencilEvent, EventEmitter, State, Element, Method } from '@stencil/core';\nimport { createForm, FormApi } from 'final-form';\nimport debounce from 'lodash.debounce';\n\n@Component({\n tag: 'stencil-form',\n shadow: true,\n})\nexport class StencilForm {\n @Element() el: HTMLElement;\n @Prop() handleSubmit: (values: Object) => void;\n @Prop() initialValues: Object;\n @Prop() handleValidate: (values: Object, errors: Object) => Object;\n @Prop() validateOnBlur: boolean = true;\n @Prop() handleChange: (values: Object) => void;\n @StencilEvent() stencilFormInvalidEvent: EventEmitter<Object>;\n @StencilEvent() dirtyChange: EventEmitter<boolean>;\n\n private observer: MutationObserver;\n\n @State() api: FormApi;\n @State() registeredFields: { [key: string]: { required: boolean, ignoreDirty?: boolean } } = {};\n @State() customErrors: { [key: string]: string } = {};\n\n constructor() {\n this.submitWithValidation = this.submitWithValidation.bind(this);\n this.defaultValidation = this.defaultValidation.bind(this);\n this.submit = this.submit.bind(this);\n this.onFormChange = this.onFormChange.bind(this);\n }\n\n private connectField(field: HTMLStencilFieldElement) {\n if ((field as any).__connectedToForm) return;\n\n field.setFormApi({\n api: this.api,\n registeredFields: this.registeredFields,\n customErrors: this.customErrors,\n });\n\n (field as any).__connectedToForm = true;\n }\n\n /**\n * Asynchronously and recursively traverses a node and all of its light DOM\n * and shadow DOM descendants, connecting any stencil-fields it finds.\n */\n private async processNodeRecursively(node: Node) {\n // 1. Skip anything that isn't an element\n if (node.nodeType !== Node.ELEMENT_NODE) {\n return;\n }\n const element = node as Element;\n\n // 2. If the element is a custom component, wait for it to be defined.\n // This ensures its shadowRoot is available if it has one.\n if (element.localName.includes('-')) {\n await customElements.whenDefined(element.localName);\n }\n\n // 3. Process the element itself\n if (element.matches('stencil-field')) {\n this.connectField(element as HTMLStencilFieldElement);\n }\n\n // 4. Connect submit buttons\n this.connectSubmitButtons(element);\n\n // 5. If the element has a shadowRoot, recursively process its children\n if (element.shadowRoot) {\n for (const child of Array.from(element.shadowRoot.childNodes)) {\n await this.processNodeRecursively(child);\n }\n }\n\n // 6. Recursively process all light DOM children\n for (const child of Array.from(element.childNodes)) {\n await this.processNodeRecursively(child);\n }\n }\n\n /**\n * The event handler for slot changes. It kicks off the recursive processing.\n */\n private handleSlotChange = () => {\n const slot = this.el.shadowRoot.querySelector('slot');\n if (!slot) return;\n\n // Process every node assigned to the slot\n slot.assignedNodes().forEach(node => this.processNodeRecursively(node));\n };\n\n /**\n * Connect submit buttons in slotted content to this form\n */\n private connectSubmitButtons(node: Node) {\n if (node.nodeType !== Node.ELEMENT_NODE) {\n return;\n }\n const element = node as Element;\n\n // Check if the element itself is a submit button\n if (element.matches('input[type=\"submit\"], button[type=\"submit\"]')) {\n const htmlElement = element as HTMLElement;\n // Avoid duplicate event listeners\n if (!htmlElement.dataset.stencilFormConnected) {\n htmlElement.dataset.stencilFormConnected = 'true';\n element.addEventListener('click', e => {\n e.preventDefault();\n this.submit(e);\n });\n }\n }\n\n // Find submit buttons in descendants and connect them\n const submitButtons = element.querySelectorAll('input[type=\"submit\"], button[type=\"submit\"]');\n submitButtons.forEach((button: Element) => {\n const htmlButton = button as HTMLElement;\n // Avoid duplicate event listeners\n if (!htmlButton.dataset.stencilFormConnected) {\n htmlButton.dataset.stencilFormConnected = 'true';\n button.addEventListener('click', e => {\n e.preventDefault();\n this.submit(e);\n });\n }\n });\n }\n\n componentWillLoad() {\n this.api = createForm({\n onSubmit: this.submitWithValidation,\n initialValues: this.initialValues,\n validate: this.defaultValidation,\n validateOnBlur: this.validateOnBlur,\n });\n\n if (this.handleChange) {\n this.api.subscribe(this.onFormChange, { values: true });\n }\n\n // Subscription for the dirty state change event, but consider ignoreDirty flags and ignore any fields configured with ignoreDirty=true\n this.api.subscribe(\n formState => {\n const { dirtyFields } = formState;\n const registered = this.registeredFields;\n\n // Determine if any field that is *not ignored* is dirty\n const hasDirtyFields = Object.keys(dirtyFields || {}).some(\n name => dirtyFields[name] && !registered[name]?.ignoreDirty\n );\n\n this.dirtyChange.emit(hasDirtyFields);\n },\n { dirtyFields: true },\n );\n }\n\n componentDidLoad() {\n const slot = this.el.shadowRoot.querySelector('slot');\n\n // Create the observer first\n this.observer = new MutationObserver(mutations => {\n for (const mutation of mutations) {\n mutation.addedNodes.forEach(node => {\n this.processNodeRecursively(node);\n });\n }\n });\n\n // Function to handle slot changes or initial processing\n const observeAssignedNodes = () => {\n const assignedNodes = slot?.assignedNodes({ flatten: true }) || [];\n\n assignedNodes.forEach(node => {\n if (node.nodeType === Node.ELEMENT_NODE) {\n this.observer.observe(node, { childList: true, subtree: true });\n this.processNodeRecursively(node); // Process immediately in case nodes are already present\n }\n });\n };\n\n if (slot) {\n observeAssignedNodes(); // Initial\n slot.addEventListener('slotchange', observeAssignedNodes); // Handle dynamic slot content\n }\n\n // If you're also rendering some fields directly in this.el (not through slot), you can keep this:\n this.observer.observe(this.el, { childList: true, subtree: true });\n\n this.el.dispatchEvent(new CustomEvent('stencilFormReady', { bubbles: true, composed: true }));\n }\n\n disconnectedCallback() {\n this.api = null;\n this.registeredFields = {};\n\n const slot = this.el.shadowRoot?.querySelector('slot');\n if (slot) {\n slot.removeEventListener('slotchange', this.handleSlotChange);\n }\n }\n\n onFormChange(formState: any): void {\n if (this.handleChange && formState.values) {\n this.handleChange(formState.values);\n }\n }\n\n async submitWithValidation(values: { [key: string]: any }): Promise<void> {\n const errors = this.defaultValidation(values);\n if (Object.keys(errors).length === 0) {\n this.handleSubmit(values);\n } else {\n this.stencilFormInvalidEvent.emit(errors);\n }\n }\n\n defaultValidation(values: Object): Object {\n const { registeredFields, customErrors } = this;\n const errors = {};\n\n // Helper to get value from nested path (dot + bracket notation)\n const getByPath = (obj, path) =>\n path\n .replace(/\\[(\\d+)\\]/g, '.$1') // convert [0] to .0\n .split('.')\n .reduce((o, k) => (o != null ? o[k] : undefined), obj);\n\n // Check for required field validation\n Object.keys(registeredFields).forEach(field => {\n const meta = registeredFields[field];\n if (meta?.ignoreDirty) return; // skip ignored fields entirely\n\n const valRef = getByPath(values, field);\n\n // null or undefined, empty string, or false/'false' are considered \"empty\" values\n if (\n meta.required &&\n (valRef == null ||\n (typeof valRef === 'string' && valRef.trim() === '') ||\n valRef === false ||\n valRef === 'false')\n ) {\n errors[field] = 'This field is required';\n }\n });\n\n // Merge in any custom errors from stencil-field components\n if (customErrors) {\n Object.keys(customErrors).forEach(field => {\n if (customErrors[field]) {\n errors[field] = customErrors[field];\n }\n });\n }\n\n // Merge with user-provided custom validation\n if (this?.handleValidate) {\n const customErrorsFromHandler = this.handleValidate(values, errors);\n return { ...errors, ...customErrorsFromHandler };\n }\n\n return errors;\n }\n\n @Method()\n async getApi(): Promise<FormApi> {\n if (!this.api) {\n console.error('❌ Form API not initialized yet.');\n return null;\n }\n return this.api;\n }\n\n submit(e) {\n e?.preventDefault?.();\n const values = this.api.getState().values;\n const errors = this.defaultValidation(values);\n\n const submitFunction = () => {\n if (Object.keys(errors).length) {\n this.stencilFormInvalidEvent.emit(errors);\n return;\n }\n this.api?.submit();\n };\n debounce(submitFunction, 1000, { leading: true, trailing: false })();\n }\n\n render() {\n return (\n <form>\n <slot />\n </form>\n );\n }\n}\n",":host {\n display: block;\n width: 100%;\n}\n\n.tally-container {\n display: flex;\n flex-direction: column;\n gap: var(--spacing-02, 8px);\n}\n\n.tally-label {\n font-weight: 600;\n margin-bottom: var(--spacing-02, 8px);\n}\n\n.tally-loading {\n display: flex;\n align-items: center;\n justify-content: center;\n padding: var(--spacing-04, 16px);\n color: var(--text-secondary, #6b7280);\n}\n\n.tally-content {\n display: flex;\n flex-direction: column;\n gap: var(--spacing-03, 12px);\n}\n\n.tally-stats {\n display: flex;\n gap: var(--spacing-04, 16px);\n flex-wrap: wrap;\n}\n\n.tally-item {\n display: flex;\n flex-direction: column;\n align-items: center;\n padding: var(--spacing-03, 12px) var(--spacing-04, 16px);\n border-radius: var(--border-radius-01, 4px);\n border: 1px solid var(--border-subtle, #e5e7eb);\n background-color: var(--layer-01, #ffffff);\n min-width: 80px;\n flex: 1;\n max-width: 120px;\n}\n\n.tally-item.tally-yes {\n border-color: var(--support-success, #42be65);\n background-color: var(--support-success-hover, #f6f8ff);\n}\n\n.tally-item.tally-no {\n border-color: var(--support-error, #da1e28);\n background-color: var(--support-error-hover, #fff1f1);\n}\n\n.tally-item.tally-unanswered {\n border-color: var(--support-warning, #f1c21b);\n background-color: var(--support-warning-hover, #fcf4d6);\n}\n\n.tally-count {\n font-weight: 700;\n line-height: 1.2;\n margin-bottom: var(--spacing-01, 4px);\n}\n\n.tally-yes .tally-count {\n color: var(--support-success, #42be65);\n}\n\n.tally-no .tally-count {\n color: var(--support-error, #da1e28);\n}\n\n.tally-unanswered .tally-count {\n color: var(--support-warning, #f1c21b);\n}\n\n.tally-item .tally-label {\n margin: 0;\n font-weight: 500;\n text-transform: uppercase;\n font-size: 0.75rem;\n letter-spacing: 0.02em;\n}\n\n.tally-summary {\n padding: var(--spacing-02, 8px) 0;\n border-top: 1px solid var(--border-subtle, #e5e7eb);\n text-align: center;\n}\n\n.error-message {\n margin-top: var(--spacing-02, 8px);\n padding: var(--spacing-02, 8px);\n border-radius: var(--border-radius-01, 4px);\n background-color: var(--support-error-hover, #fff1f1);\n border: 1px solid var(--support-error, #da1e28);\n}\n\n/* Size variants */\n:host(.udp-input--size-small) .tally-item {\n padding: var(--spacing-02, 8px) var(--spacing-03, 12px);\n min-width: 60px;\n max-width: 90px;\n}\n\n:host(.udp-input--size-small) .tally-count {\n font-size: 1.25rem;\n}\n\n:host(.udp-input--size-large) .tally-item {\n padding: var(--spacing-04, 16px) var(--spacing-05, 20px);\n min-width: 100px;\n max-width: 150px;\n}\n\n:host(.udp-input--size-large) .tally-count {\n font-size: 2rem;\n}\n\n/* Margin variants */\n:host(.udp-input--margin-none) .tally-container {\n gap: 0;\n}\n\n:host(.udp-input--margin-dense) .tally-container {\n gap: var(--spacing-01, 4px);\n}\n\n:host(.udp-input--margin-comfortable) .tally-container {\n gap: var(--spacing-04, 16px);\n}\n\n/* Disabled state */\n:host(.udp-input--disabled) .tally-item {\n opacity: 0.5;\n pointer-events: none;\n}\n\n/* Read-only state */\n:host(.udp-input--readonly) .tally-item {\n background-color: var(--field-01, #f4f4f4);\n}\n\n/* Responsive design */\n@media (max-width: 480px) {\n .tally-stats {\n flex-direction: column;\n }\n \n .tally-item {\n max-width: none;\n flex: none;\n }\n}\n","import { Component, Prop, h, Host } from '@stencil/core';\nimport { InputSize, InputMargin } from '../input-types';\n\n/**\n * A tally component that displays counts of Yes/No responses.\n * This is a pure display component that receives tally data as props.\n */\n@Component({\n tag: 'tally-display',\n styleUrl: 'tally.css',\n shadow: true,\n})\nexport class TallyDisplay {\n\n /**\n * Label for the tally display.\n */\n @Prop() label: string = 'Response Tally';\n\n /**\n * Unique identifier for the tally.\n */\n @Prop() id: string;\n\n /**\n * Number of Yes responses.\n */\n @Prop() yesCount: number = 0;\n\n /**\n * Number of No responses.\n */\n @Prop() noCount: number = 0;\n\n /**\n * Number of Not Applicable responses.\n */\n @Prop() naCount: number = 0;\n\n /**\n * Total number of fields being tallied.\n */\n @Prop() totalFields: number = 0;\n\n /**\n * Whether the component is disabled.\n */\n @Prop() disabled: boolean = false;\n\n /**\n * Whether the component is read-only.\n */\n @Prop() readonly: boolean = false;\n\n /**\n * Error message to display.\n */\n @Prop() error: string;\n\n /**\n * Size variant for the tally display.\n */\n @Prop() size: InputSize = 'normal';\n\n /**\n * Margin variant for the component spacing.\n */\n @Prop() margin: InputMargin = 'normal';\n\n render() {\n const isError = !!this.error;\n const answeredCount = this.yesCount + this.noCount + this.naCount;\n const unansweredCount = this.totalFields - answeredCount;\n \n return (\n <Host\n class={{\n 'udp-input': true,\n 'udp-input--error': isError,\n 'udp-input--disabled': this.disabled,\n 'udp-input--readonly': this.readonly,\n [`udp-input--size-${this.size}`]: true,\n [`udp-input--margin-${this.margin}`]: true,\n }}\n >\n <div class=\"tally-container\">\n {this.label && (\n <unity-typography variant=\"caption-text\">\n <label htmlFor={this.id} class=\"tally-label\">\n {this.label}\n </label>\n </unity-typography>\n )}\n <div class=\"tally-content\" id={this.id}>\n <div class=\"tally-stats\">\n <div class=\"tally-item tally-yes\">\n <unity-typography variant=\"h4\" class=\"tally-count\">\n {this.yesCount}\n </unity-typography>\n <unity-typography variant=\"caption-text\" class=\"tally-label\">\n Yes\n </unity-typography>\n </div>\n <div class=\"tally-item tally-no\">\n <unity-typography variant=\"h4\" class=\"tally-count\">\n {this.noCount}\n </unity-typography>\n <unity-typography variant=\"caption-text\" class=\"tally-label\">\n No\n </unity-typography>\n </div>\n <div class=\"tally-item tally-na\">\n <unity-typography variant=\"h4\" class=\"tally-count\">\n {this.naCount}\n </unity-typography>\n <unity-typography variant=\"caption-text\" class=\"tally-label\">\n Not Applicable\n </unity-typography>\n </div>\n {unansweredCount > 0 && (\n <div class=\"tally-item tally-unanswered\">\n <unity-typography variant=\"h4\" class=\"tally-count\">\n {unansweredCount}\n </unity-typography>\n <unity-typography variant=\"caption-text\" class=\"tally-label\">\n Unanswered\n </unity-typography>\n </div>\n )}\n </div>\n <div class=\"tally-summary\">\n <unity-typography variant=\"caption-text\">\n Total Questions: {this.totalFields}\n </unity-typography>\n </div>\n </div>\n {isError && (\n <div class=\"error-message\">\n <unity-typography variant=\"caption-text\" color=\"error\">\n {this.error}\n </unity-typography>\n </div>\n )}\n </div>\n </Host>\n );\n }\n}\n","/**\n * Finds the parent stencil-form and returns its Final Form API.\n * This function correctly traverses up through nested Shadow DOM boundaries.\n *\n * @param element The host element of the component calling this function.\n * @returns A promise that resolves with the FormApi instance, or null if not found.\n */\nexport async function useFormApi(element: HTMLElement): Promise<any | null> {\n let current: HTMLElement | null = element;\n let form: Element | null = null;\n\n // Walk up the DOM tree, escaping shadow roots as we go.\n while (current) {\n // Look for the form in the current scope\n const foundForm = current.closest('stencil-form');\n if (foundForm) {\n form = foundForm;\n break; // Found it!\n }\n\n // If not found, we might be in a shadow root.\n // Let's try to escape it.\n const root = current.getRootNode();\n if (root instanceof ShadowRoot) {\n current = root.host as HTMLElement;\n } else {\n // We're in the main document and didn't find it.\n break;\n }\n }\n\n if (!form) {\n return null;\n }\n\n // Check if getApi method exists\n if (typeof (form as any).getApi !== 'function') {\n return null;\n }\n\n const formApi = await (form as any).getApi();\n \n if (!formApi) {\n return null;\n }\n \n return formApi;\n}\n","\n.hidden {\n display: none;\n}\n\n.question-container {\n border-top: 1px solid rgba(0, 0, 0, 0.08); \n padding-top: 1rem; \n}\n\n.question-title-and-helper-container {\n display: flex;\n flex-direction: column;\n gap: var(--spacing-03)\n}\n\n.question-title-and-followup-container {\n display: flex;\n justify-content: space-between;\n align-items: center;\n}\n","import { Component, ComponentInterface, Element, h, Prop, State, Watch, Event, EventEmitter } from '@stencil/core';\nimport { UdpFormQuestion, Guid } from '../utils/types';\nimport { UdpFormsFieldTypeEnum } from '../utils/enums';\nimport { FontOverrides } from '../utils/types';\nimport { fontOverrideMapping, overrideFont } from '../utils/utils';\nimport { useFormApi } from '../../form/useFormApi';\nimport { getIconFromName } from '../../../data-display/icons/iconUtils';\nimport { UdpFormsPageIdEnum } from '../utils/enums';\n\n@Component({\n tag: 'udp-question',\n styleUrl: 'udp-question.css',\n shadow: true,\n})\nexport class UdpQuestion {\n @Prop() question: UdpFormQuestion;\n @Prop() questionNumber: number;\n @Prop({ mutable: true }) value: string; // only used for Paragraph type (UdpFormsFieldTypeEnum.Paragraph)\n @Prop() disabled: boolean = false;\n @Prop() readonly: boolean = false;\n @Prop() styleOverrides: {\n helperText: FontOverrides;\n questionText: FontOverrides;\n paragraphText: FontOverrides;\n };\n @Prop() initialValues: { [name: string]: any } = {};\n @Prop() userId: Guid | null = null;\n @Prop() isCommentAllowed: boolean = false;\n\n @Event() launchFollowUpFormSideSheet: EventEmitter<any>;\n\n @State() private _fieldComponent: ComponentInterface;\n @State() private tallyData: {\n yesCount: number;\n noCount: number;\n naCount: number;\n totalFields: number;\n } = { yesCount: 0, noCount: 0, naCount: 0, totalFields: 0 };\n @State() private formApi: any = null;\n\n @Element() el: HTMLElement;\n\n @Watch('question')\n @Watch('questionNumber')\n @Watch('value')\n @Watch('disabled')\n @Watch('readonly')\n @Watch('styleOverrides')\n protected propChanged() {\n this.updateFieldComponent();\n }\n\n async componentWillLoad() {\n this.updateFieldComponent();\n if (this.question.fieldTypeId === UdpFormsFieldTypeEnum.Tally) {\n await this.initializeFormApiForTally();\n }\n }\n\n private async initializeFormApiForTally() {\n try {\n this.formApi = await useFormApi(this.el);\n\n if (this.formApi) {\n // Subscribe to form changes to update tally in real-time\n const unsubscribe = this.formApi.subscribe(\n () => {\n this.calculateTally();\n },\n { active: true, dirty: true, values: true },\n );\n\n // Store unsubscribe function for cleanup if needed\n (this as any).unsubscribeFormApi = unsubscribe;\n\n // Initial calculation\n this.calculateTally();\n }\n } catch (error) {\n console.error('Failed to initialize form API for tally:', error);\n }\n }\n\n private calculateTally() {\n if (!this.formApi || this.question.fieldTypeId !== UdpFormsFieldTypeEnum.Tally) {\n return;\n }\n\n try {\n const formValues = this.formApi.getState().values;\n\n const formElement = this.el.closest('stencil-form');\n if (!formElement) {\n return;\n }\n\n // Get all udp-question elements in the form\n const questionElements = formElement.querySelectorAll('udp-question');\n const yesNoFields: string[] = [];\n\n // Identify YesNo field types\n questionElements.forEach((questionEl: any) => {\n if (questionEl.question && questionEl.question.fieldTypeId === UdpFormsFieldTypeEnum.YesNo) {\n const fieldName = `${questionEl.question.questionIdentifierKey}.value`;\n if (fieldName) {\n const shouldInclude = this.shouldIncludeFieldInTally(fieldName);\n if (shouldInclude) {\n yesNoFields.push(fieldName);\n }\n }\n }\n });\n\n // Count Yes/No/NA responses\n let yesCount = 0;\n let noCount = 0;\n let naCount = 0;\n\n yesNoFields.forEach(fieldName => {\n const [sectionKey, questionKey] = fieldName.split(\".\");\n const value = formValues[sectionKey][questionKey].value;\n\n if (value === 'true' || value === true) {\n yesCount++;\n } else if (value === 'false' || value === false) {\n noCount++;\n } else if (value === 'na') {\n naCount++;\n }\n });\n\n this.tallyData = {\n yesCount,\n noCount,\n naCount,\n totalFields: yesNoFields.length,\n };\n\n // Force a re-render to update the component\n this.updateFieldComponent();\n } catch (error) {\n console.error('Error calculating tally:', error);\n }\n }\n\n private shouldIncludeFieldInTally(fieldName: string): boolean {\n const fieldProps = this.question.fieldProperties;\n\n // If includeFields is specified, only include those fields\n if (fieldProps?.includeFields && fieldProps.includeFields.length > 0) {\n return fieldProps.includeFields.includes(fieldName);\n }\n\n // If excludeFields is specified, exclude those fields\n if (fieldProps?.excludeFields && fieldProps.excludeFields.length > 0) {\n return !fieldProps.excludeFields.includes(fieldName);\n }\n\n // Include all fields by default\n return true;\n }\n\n private updateFieldComponent() {\n this._fieldComponent = this.getFieldComponent();\n }\n\n private getFieldComponent(): ComponentInterface {\n const props = {\n name: `${this.question.questionIdentifierKey}.value`,\n required: this.question.required,\n };\n\n const fieldProps = { ...this.question.fieldProperties, id: this.questionNumber, disabled: this.disabled, readonly: this.readonly };\n switch (this.question.fieldTypeId) {\n case UdpFormsFieldTypeEnum.SingleLineText:\n return (\n <stencil-field {...props}>\n <text-field {...fieldProps} />\n </stencil-field>\n );\n case UdpFormsFieldTypeEnum.MultiLineText:\n return (\n <stencil-field {...props}>\n <text-area fullWidth={true} {...fieldProps} />\n </stencil-field>\n );\n case UdpFormsFieldTypeEnum.Checkbox:\n return (\n <stencil-field {...props}>\n <selectable-list valueKey=\"value\" displayKey=\"display\" multiSelect={true} useCheckbox={true} {...fieldProps} />\n </stencil-field>\n );\n case UdpFormsFieldTypeEnum.RadioButton:\n return (\n <stencil-field {...props}>\n <selectable-list valueKey=\"value\" displayKey=\"display\" useCheckbox={true} {...fieldProps} />\n </stencil-field>\n );\n case UdpFormsFieldTypeEnum.DropdownSingleSelect:\n case UdpFormsFieldTypeEnum.DropdownMultipleSelect:\n let options: { label: string; value: string } = fieldProps?.items?.map?.(items => ({ label: items.display, value: items.value, ...fieldProps }));\n return (\n <stencil-field {...props}>\n <udp-selector options={options ?? []} multiSelect={this.question.fieldTypeId === UdpFormsFieldTypeEnum.DropdownMultipleSelect} {...fieldProps} />\n </stencil-field>\n );\n case UdpFormsFieldTypeEnum.YesNo:\n return (\n <stencil-field {...props}>\n <selectable-list\n valueKey=\"value\"\n displayKey=\"display\"\n useCheckbox={true} // Use radio buttons\n multiSelect={false}\n items={[\n { value: 'true', display: 'Yes' },\n { value: 'false', display: 'No' },\n { value: 'na', display: 'Not Applicable' },\n ]}\n {...fieldProps}\n />\n </stencil-field>\n );\n case UdpFormsFieldTypeEnum.ListMultiSelect:\n return (\n <stencil-field {...props}>\n <selectable-list valueKey=\"value\" displayKey=\"display\" multiSelect={true} {...fieldProps} />\n </stencil-field>\n );\n case UdpFormsFieldTypeEnum.DateSelector:\n return (\n <stencil-field {...props}>\n <udp-date-selector min={fieldProps?.minDate} max={fieldProps?.maxDate} {...fieldProps} />\n </stencil-field>\n );\n case UdpFormsFieldTypeEnum.TimeSelector:\n return (\n <stencil-field {...props}>\n <udp-time-selector min={fieldProps?.minTime} max={fieldProps?.maxTime} {...fieldProps} />\n </stencil-field>\n );\n case UdpFormsFieldTypeEnum.DateTimeSelector:\n return (\n <stencil-field {...props}>\n <udp-datetime-selector max={fieldProps?.maxDateTime} min={fieldProps?.minDateTime} {...fieldProps} />\n </stencil-field>\n );\n case UdpFormsFieldTypeEnum.FileUpload:\n return (\n <stencil-field {...props}>\n <file-upload fullWidth={true} allowMultiple={false} {...fieldProps} />\n </stencil-field>\n );\n case UdpFormsFieldTypeEnum.ImageUpload:\n return (\n <stencil-field {...props}>\n <image-upload fullWidth={true} {...fieldProps} />\n </stencil-field>\n );\n case UdpFormsFieldTypeEnum.Signature:\n return (\n <div>\n <stencil-field {...props} fieldIdentifierKey={`${this.question.questionIdentifierKey}`} registerMetadata={true} metadataFieldNames={['signature.latitude', 'signature.longitude', 'signature.timestamp']}>\n <signature-input {...fieldProps} value={this.value} />\n </stencil-field>\n <stencil-field required={this.question.required} name={ `${this.question.questionIdentifierKey}.metadata.signature.fullName`}>\n <text-field {...fieldProps} label={'Full Name'}/>\n </stencil-field>\n </div>\n );\n case UdpFormsFieldTypeEnum.Paragraph:\n // Wrap in stencil-field and include a hidden input so the value is part of the form submission\n return (\n <stencil-field name={this.question.name} required={false}>\n <input type=\"hidden\" name={this.question.name} value={this.value || ''} />\n {this.value ? (\n <unity-typography id={`paragraphText${this.question.name}`} variant={this.styleOverrides?.paragraphText?.variant || 'body'}>\n {this.value}\n </unity-typography>\n ) : (\n <div />\n )}\n </stencil-field>\n );\n case UdpFormsFieldTypeEnum.Number:\n return (\n <stencil-field {...props}>\n <numeric-field {...fieldProps} />\n </stencil-field>\n );\n\n case UdpFormsFieldTypeEnum.Tally:\n return (\n <tally-display\n id={this.questionNumber}\n label={this.question.questionText || 'Response Tally'}\n yesCount={this.tallyData.yesCount}\n noCount={this.tallyData.noCount}\n naCount={this.tallyData.naCount}\n totalFields={this.tallyData.totalFields}\n {...fieldProps}\n required={false}\n />\n );\n case UdpFormsFieldTypeEnum.Hidden:\n default:\n return <div />;\n }\n }\n async componentDidLoad() {\n // If form API wasn't available during componentWillLoad, try again\n if (this.question.fieldTypeId === UdpFormsFieldTypeEnum.Tally && !this.formApi) {\n await this.initializeFormApiForTally();\n }\n\n // override the fonts based on style overrides\n const variantsAndOverrides = [];\n for (const override in this.styleOverrides) {\n variantsAndOverrides.push({\n id: override + this.question.name,\n fontOverride: this.styleOverrides?.[override]?.fontFamily,\n variant: this.styleOverrides?.[override]?.variant,\n });\n }\n variantsAndOverrides.forEach(override => {\n if (!fontOverrideMapping[override?.fontOverride] || !this.el || !this.el.shadowRoot) return;\n overrideFont(this.el?.shadowRoot?.getElementById?.(override.id), fontOverrideMapping[override?.fontOverride]);\n });\n }\n render() {\n const component = this._fieldComponent;\n const titleText = `${this.question.fieldTypeId === UdpFormsFieldTypeEnum.Paragraph ? '' : `${this.questionNumber}.`} ${this.question.questionText} ${\n this.question.required && this.question.fieldTypeId !== UdpFormsFieldTypeEnum.Paragraph ? '*' : ''\n }`;\n // const commentFieldProps = { disabled: this.disabled, readonly: this.readonly };\n const fieldName = `${this.question.questionIdentifierKey}.value`;\n const [sectionKey, questionKey] = fieldName.split(\".\");\n\n if (!component) return null;\n return (\n <div\n class={{\n 'hidden': this.question.fieldTypeId === UdpFormsFieldTypeEnum.Hidden,\n 'question-container': true,\n }}\n >\n <div class=\"question-title-and-helper-container\">\n <div class=\"question-title-and-followup-container\">\n {this.question.questionText && (\n <unity-typography\n id={`questionText${this.question.name}`}\n variant={this.styleOverrides?.questionText?.variant || 'h3'}\n >\n {titleText}\n </unity-typography>\n )}\n <div>\n {this.question.fieldProperties.allowFollowUpForms && (\n (() => {\n const metadata = this.initialValues[sectionKey][questionKey]?.metadata;\n const followUpId = metadata?.followUpFormSubmissionId;\n if (followUpId) {\n // Valid GUID → show arrow icon to open follow-up form\n const url = `/page/${UdpFormsPageIdEnum.FormRendererPageId}?udpf_submissionId=${followUpId}`;\n return (\n <stencil-icon-button\n icon={getIconFromName('link')}\n tooltip=\"Open Follow-Up Form\"\n onClick={() => window.open(url, '_blank')}\n />\n );\n }\n\n if (!this.readonly) {\n // No valid follow-up yet → show link icon to create one\n return (\n <stencil-icon-button\n icon={getIconFromName('document')}\n tooltip=\"Create Follow-Up Form\"\n onClick={() => {\n console.log('clicked create follow up form')\n this.launchFollowUpFormSideSheet.emit({ sectionKey, questionKey });\n }}\n />\n );\n }\n \n })()\n )}\n </div>\n </div>\n {this.question.helperText && (\n <unity-typography\n id={`helperText${this.question.name}`}\n variant={this.styleOverrides?.helperText?.variant || 'caption-text'}\n >\n {this.question.helperText}\n </unity-typography>\n )}\n </div>\n\n {component}\n\n {this.question.fieldProperties.allowFollowUpForms && (\n <div>\n <stencil-field hidden={true} name={`${this.question.questionIdentifierKey}.metadata.followUpParentFormId`}>\n <text-field />\n </stencil-field>\n <stencil-field hidden={true} name={`${this.question.questionIdentifierKey}.metadata.followUpParentFormVersion`}>\n <text-field />\n </stencil-field>\n <stencil-field hidden={true} name={`${this.question.questionIdentifierKey}.metadata.followUpParentFormSubmissionId`}>\n <text-field />\n </stencil-field>\n </div>\n )}\n <udp-question-comments\n question={this.question}\n initialValues={this.initialValues}\n userId={this.userId}\n />\n </div>\n );\n }\n}\n",".question-comment-display {\n position: relative;\n display: flex;\n flex-direction: column;\n gap: var(--spacing-03);\n margin: var(--spacing-05) 0;\n border: 1px solid var(--border-color, #ccc);\n border-radius: 6px;\n padding: var(--spacing-05) var(--spacing-04);\n /* Force long words to wrap to prevent box overflow */\n overflow-wrap: break-word; \n word-wrap: break-word;\n}\n\n/* Target the typography component that holds the comment body */\n.question-comment-display unity-typography:not(.question-comment-header) {\n display: block; /* Allows the element to respect width/wrapping */\n white-space: pre-wrap; /* Respects newlines (\\n) and auto-wraps text */\n word-break: break-word; /* Safety for very long strings of characters */\n}\n\n.question-comment-display > .question-comment-header {\n position: absolute;\n bottom: -0.6em; \n right: 1em;\n background: white; \n padding: 0 0.4em;\n font-size: 0.85em;\n white-space: nowrap; /* Keeps the \"Name on Date\" on one line */\n}\n\n.question-comment-add-comment-button {\n display: flex;\n justify-content: center;\n margin: var(--spacing-03) 0;\n}\n\n.question-comment-action-container {\n display: flex;\n justify-content: end;\n}","import { Component, h, Prop, Event, EventEmitter } from '@stencil/core';\nimport { UdpFormQuestion, Guid } from '../../utils/types';\nimport { dateFormatter } from '../../utils/utils';\n\n@Component({\n tag: 'udp-question-comments',\n styleUrl: 'udp-question-comments.css',\n shadow: true,\n})\nexport class UdpQuestionComments {\n @Prop() question: UdpFormQuestion;\n @Prop() commentFieldProps: object = {};\n @Prop() initialValues: { [name: string]: any } = {};\n @Prop() userId: Guid | null = null;\n\n @Event({ bubbles: true, composed: true }) questionCommentAction: EventEmitter<{\n type: 'add' | 'save' | 'edit' | 'delete' | 'editClose';\n questionIdentifierKey: string;\n commentId: string;\n }>;\n\n private emitQuestionCommentAction(type: 'add' | 'save' | 'edit' | 'delete' | 'editClose', commentId) {\n this.questionCommentAction.emit({\n type,\n questionIdentifierKey: this.question.questionIdentifierKey,\n commentId,\n });\n }\n\n private handleCommentAdd() {\n this.emitQuestionCommentAction('add', null);\n }\n private handleCommentSave(commentId) {\n this.emitQuestionCommentAction('save', commentId);\n }\n private handleCommentEdit(commentId) {\n this.emitQuestionCommentAction('edit', commentId);\n }\n private handleCommentDelete(commentId) {\n this.emitQuestionCommentAction('delete', commentId);\n }\n private handleCommentEditClose(commentId) {\n this.emitQuestionCommentAction('editClose', commentId);\n }\n\n render() {\n const [sectionName, questionName] = this.question.questionIdentifierKey.split('.');\n const questionData = this.initialValues?.[sectionName]?.[questionName] || {\n comments: [],\n draftComments: [],\n };\n\n // normalize incoming shape (back-compat)\n const savedComments = Array.isArray(questionData.comments)\n ? questionData.comments\n : questionData.comments\n ? [questionData.comments]\n : [];\n const draftComments = Array.isArray(questionData.draftComments)\n ? questionData.draftComments\n : questionData.draftComments\n ? [questionData.draftComments]\n : [];\n\n // enforce single active action UX:\n // - Only one draft is shown/active at a time (pick first draft if present)\n\n // detect any draft anywhere in the form's initialValues\n const activeDraft = draftComments.length > 0 ? draftComments[0] : null;\n const isAnyQuestionContainsActiveDraft = Object.values(this.initialValues || {}).some((section: any) =>\n Object.values(section || {}).some((q: any) => {\n if (!q) return false;\n const drafts = q.draftComments;\n if (!drafts) return false;\n if ( Array.isArray(drafts) && drafts.length < 1) return false\n\n return true\n }),\n );\n\n return (\n <div>\n {/* Render saved comments — disable actions if a draft is active */}\n {savedComments.map((commentObj, idx) => {\n const commentsIdentifierValueKey = `${this.question.questionIdentifierKey}.comments[${idx}].value`;\n const isOwner = commentObj?.userId === this.userId;\n const showActions = !activeDraft && isOwner; // only show edit/delete when no active draft and owner\n \n\n // return the comment edit component if it's the active draft\n if (activeDraft && commentObj.commentId == activeDraft.commentId) {\n return (\n <div class=\"question-comment-draft-container\" key={activeDraft.commentId || `draft-0`}>\n <stencil-field\n name={`${this.question.questionIdentifierKey}.draftComments[0].value`}\n required={true}\n ignoreDirty={true}\n >\n <text-area {...this.commentFieldProps} label=\"Comment:\" placeholder=\"Add a comment\" />\n </stencil-field>\n\n <div class=\"question-comment-action-container\">\n <udp-button\n variant=\"text\"\n onClick={() => this.handleCommentSave(activeDraft.commentId)}\n startIcon={<udp-icon iconName=\"save\" color=\"inherit\" />}\n >\n Save\n </udp-button>\n <udp-button\n variant=\"text\"\n onClick={() => this.handleCommentDelete(activeDraft.commentId)}\n startIcon={<udp-icon iconName=\"trashCan\" color=\"inherit\" />}\n >\n Delete\n </udp-button>\n <udp-button\n variant=\"text\"\n onClick={() => this.handleCommentEditClose(activeDraft.commentId)}\n startIcon={<udp-icon iconName=\"close16\" color=\"inherit\" />}\n >\n Cancel\n </udp-button>\n </div>\n </div>\n )\n }\n\n // return the comment display component \n return !commentObj?.isDeleted ? (\n <div class=\"question-comment-input-container\" key={commentObj.commentId || idx}>\n <stencil-field name={commentsIdentifierValueKey} style={{ display: 'none' }}>\n <text-area disabled={true} />\n </stencil-field>\n\n <div class=\"question-comment-display\">\n <unity-typography variant=\"h4\" color=\"inherit\" class=\"question-comment-header\">\n {`${commentObj?.userDisplayName} ${\n commentObj?.timestamp ? `on ${dateFormatter(commentObj.timestamp, 'short')}` : ''\n }`}\n </unity-typography>\n {commentObj?.value}\n </div>\n <div class=\"question-comment-action-container\">\n {showActions && !isAnyQuestionContainsActiveDraft && (\n <div>\n <udp-button\n variant=\"text\"\n onClick={() => this.handleCommentEdit(commentObj.commentId)}\n startIcon={<udp-icon iconName=\"edit\" color=\"inherit\" />}\n >\n Edit\n </udp-button>\n </div>\n )}\n </div>\n </div>\n ) : (\n <div></div>\n );\n })}\n\n {/* New commend at the bottom of the comment thread */}\n {activeDraft && activeDraft.isTempComment && !savedComments.includes(c => c.commentId == activeDraft.commentId) && (\n <div class=\"question-comment-draft-container\" key={activeDraft.commentId || `draft-0`}>\n <stencil-field\n name={`${this.question.questionIdentifierKey}.draftComments[0].value`}\n required={true}\n ignoreDirty={true}\n >\n <text-area {...this.commentFieldProps} label=\"Comment:\" placeholder=\"Add a comment\" />\n </stencil-field>\n\n <div class=\"question-comment-action-container\">\n <udp-button\n variant=\"text\"\n onClick={() => this.handleCommentEditClose(activeDraft.commentId)}\n startIcon={<udp-icon iconName=\"trashCan\" color=\"inherit\" />}\n >\n Cancel\n </udp-button>\n <udp-button\n variant=\"text\"\n onClick={() => this.handleCommentSave(activeDraft.commentId)}\n startIcon={<udp-icon iconName=\"save\" color=\"inherit\" />}\n >\n Save\n </udp-button>\n </div>\n </div>\n )}\n\n {/* Add button only when there is no active draft */}\n {!activeDraft && !isAnyQuestionContainsActiveDraft &&(\n <div class=\"question-comment-add-comment-button\">\n <udp-button\n variant=\"text\"\n onClick={() => this.handleCommentAdd()}\n startIcon={<udp-icon iconName=\"add\" color=\"inherit\" />}\n >\n Add a Comment\n </udp-button>\n </div>\n )}\n </div>\n );\n }\n}\n","/* Single save button that moves between header and floating positions */\n\n/* Floating mode - positioned fixed in top-right, accounting for app bar */\n.floating-save-button {\n position: fixed;\n top: 5rem; /* Increased from 2rem to account for app bar height */\n right: 2rem;\n z-index: 1000;\n animation: slideInDown 0.3s ease-out;\n}\n\n/* Inline mode - positioned relative for header placement */\n.inline-save-button {\n position: relative;\n display: inline-flex;\n align-items: center;\n margin-left: auto; /* Push to right side of header */\n}\n\n/* Common styles for both modes */\n.floating-save-button.saving,\n.inline-save-button.saving {\n pointer-events: none;\n}\n\n/* Saving state styling */\n.saving-state {\n display: flex;\n align-items: center;\n gap: 0.5rem;\n padding: 0.75rem 1rem;\n background: rgba(0, 0, 0, 0.8);\n color: white;\n border-radius: 8px;\n font-size: 0.9rem;\n}\n\n/* Saved state styling */\n.saved-state {\n display: flex;\n align-items: center;\n gap: 0.5rem;\n padding: 0.75rem 1rem;\n background: rgba(34, 139, 34, 0.9); /* Forest green background */\n color: white;\n border-radius: 8px;\n font-size: 0.9rem;\n animation: fadeIn 0.3s ease-out;\n}\n\n/* Inline saving state - more compact */\n.inline-save-button .saving-state {\n padding: 0.5rem 0.75rem;\n background: rgba(0, 0, 0, 0.6);\n font-size: 0.8rem;\n}\n\n/* Inline saved state - more compact */\n.inline-save-button .saved-state {\n padding: 0.5rem 0.75rem;\n background: rgba(34, 139, 34, 0.8);\n font-size: 0.8rem;\n}\n\n/* Error tooltip positioning - for floating button (top-right) */\n.save-error-tooltip {\n position: absolute;\n top: 100%;\n right: 0;\n margin-top: 0.5rem;\n background: #dc3545;\n color: white;\n padding: 0.5rem 1rem;\n border-radius: 8px;\n font-size: 0.8rem;\n white-space: nowrap;\n box-shadow: 0 4px 12px rgba(220, 53, 69, 0.3);\n animation: fadeIn 0.3s ease-out;\n z-index: 1001;\n}\n\n.save-error-tooltip::after {\n content: '';\n position: absolute;\n bottom: 100%;\n right: 1rem;\n border: 6px solid transparent;\n border-bottom-color: #dc3545;\n}\n\n/* Inline mode error tooltip - position differently */\n.inline-save-button .save-error-tooltip {\n top: 100%;\n bottom: auto;\n margin-top: 0.5rem;\n margin-bottom: 0;\n}\n\n.inline-save-button .save-error-tooltip::after {\n top: -6px;\n border-top-color: transparent;\n border-bottom-color: #dc3545;\n}\n\n/* Animations */\n@keyframes slideInDown {\n from {\n opacity: 0;\n transform: translateY(-20px);\n }\n to {\n opacity: 1;\n transform: translateY(0);\n }\n}\n\n@keyframes fadeIn {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n\n/* Responsive adjustments */\n@media (max-width: 768px) {\n .floating-save-button {\n bottom: 1rem;\n right: 1rem;\n top: auto; /* Override fixed top position on small screens */\n }\n\n .saving-state {\n padding: 0.6rem 0.8rem;\n font-size: 0.8rem;\n }\n\n .inline-save-button .saving-state {\n padding: 0.4rem 0.6rem;\n font-size: 0.75rem;\n }\n}\n\n/* Override icon color to primary when button is inherit color */\n.primary-icon {\n --icon-color: var(--primary-color, #1976d2);\n}\n\n.primary-icon::part(icon) {\n fill: var(--icon-color) !important;\n}\n\n/* Alternative approach using deep selector */\n.primary-icon udp-icon-button::part(icon),\n.primary-icon .icon {\n fill: var(--primary-color, #1976d2) !important;\n}\n\n/* Reduced motion support */\n@media (prefers-reduced-motion: reduce) {\n .floating-save-button,\n .save-error-tooltip {\n animation: none;\n }\n}\n","import { Component, Prop, h, State, Element, Listen } from '@stencil/core';\nimport Save from '@carbon/icons/es/save/20';\nimport { useFormApi } from '../../../form/useFormApi';\n\n@Component({\n tag: 'udp-save-draft-button',\n styleUrl: 'udp-save-draft-button.css',\n shadow: true,\n})\nexport class UdpSaveDraftButton {\n @Element() el: HTMLElement;\n\n @Prop() isVisible: boolean = false;\n @Prop() isSaving: boolean = false;\n @Prop() saveErrorMessage: string | null = null;\n @Prop() showSavedMessage: boolean = false;\n @Prop() handleSave: (values?: any) => void;\n\n @State() shouldBeInline: boolean = false;\n @State() private formApi: any | null = null;\n\n private resizeObserver: ResizeObserver;\n private checkOverlapTimeoutId: any;\n\n async componentDidLoad() {\n this.formApi = await useFormApi(this.el);\n this.checkForOverlap();\n this.setupOverlapDetection();\n }\n\n disconnectedCallback() {\n if (this.resizeObserver) {\n this.resizeObserver.disconnect();\n }\n if (this.checkOverlapTimeoutId) {\n clearTimeout(this.checkOverlapTimeoutId);\n }\n }\n\n @Listen('resize', { target: 'window' })\n handleWindowResize() {\n this.debouncedOverlapCheck();\n }\n\n private setupOverlapDetection() {\n if (typeof ResizeObserver !== 'undefined') {\n this.resizeObserver = new ResizeObserver(() => {\n this.debouncedOverlapCheck();\n });\n const formContainer = this.el.closest('udp-forms-ui, .form-container, udp-container');\n if (formContainer) {\n this.resizeObserver.observe(formContainer);\n }\n const mainContent = document.querySelector('main, [role=\"main\"]') || document.body;\n if (mainContent) {\n this.resizeObserver.observe(mainContent);\n }\n }\n }\n\n private debouncedOverlapCheck() {\n if (this.checkOverlapTimeoutId) {\n clearTimeout(this.checkOverlapTimeoutId);\n }\n this.checkOverlapTimeoutId = setTimeout(() => {\n this.checkForOverlap();\n }, 100);\n }\n\n private checkForOverlap() {\n // This logic determines which style to apply.\n // Using 1024px as the breakpoint to switch between floating and inline.\n const minWidthNeeded = 1280;\n this.shouldBeInline = window.innerWidth < minWidthNeeded;\n }\n\n private handleSaveClick = async () => {\n if (!this.formApi || this.isSaving) {\n return;\n }\n if (typeof this.handleSave !== 'function') {\n return;\n }\n const values = this.formApi.getState().values;\n try {\n await this.handleSave(values);\n this.formApi.reset(values);\n } catch (error) {\n console.error('The onSave handler threw an error. The form will remain dirty.', error);\n }\n };\n\n render() {\n if (!this.isVisible && !this.showSavedMessage) {\n return null;\n }\n\n // Dynamically set the class based on screen size.\n // This will toggle between your .floating-save-button and .inline-save-button styles.\n const containerClass = this.shouldBeInline ? 'inline-save-button' : 'floating-save-button';\n const isInlineMode = this.shouldBeInline;\n\n return (\n <div class={`${containerClass} ${this.isSaving ? 'saving' : ''} ${this.showSavedMessage ? 'saved' : ''}`}>\n {this.isSaving ? (\n <div class=\"saving-state\">\n <unity-spinner size=\"small\" />\n {!isInlineMode && <span>Saving...</span>}\n </div>\n ) : this.isVisible ? (\n <udp-icon-button\n icon={Save}\n onClick={this.handleSaveClick}\n tooltip={'Save Changes'}\n variant=\"contained\"\n color={isInlineMode ? 'inherit' : 'primary'}\n iconColor={isInlineMode ? 'primary' : null}\n size={isInlineMode ? 'small' : 'medium'}\n >\n {isInlineMode ? '' : 'Save Changes'}\n </udp-icon-button>\n ) : (\n <div class=\"saved-state\">\n <span>Saved</span>\n </div>\n )}\n\n {this.saveErrorMessage && <div class=\"save-error-tooltip\">{this.saveErrorMessage}</div>}\n </div>\n );\n }\n}\n"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"date-time-renderer.file-upload-renderer.list-options-renderer.question-specific-configs-renderer.signature-renderer.text-input-renderer.entry.esm.js","sources":["src/components/forms/udp-forms/udp-forms-builder/udp-forms-builder-item/date-time-renderer/date-time-renderer.css?tag=date-time-renderer&encapsulation=shadow","src/components/forms/udp-forms/udp-forms-builder/udp-forms-builder-item/date-time-renderer/date-time-renderer.tsx","src/components/forms/udp-forms/udp-forms-builder/udp-forms-builder-item/file-upload-renderer/file-upload-renderer.css?tag=file-upload-renderer&encapsulation=shadow","src/components/forms/udp-forms/udp-forms-builder/udp-forms-builder-item/file-upload-renderer/file-upload-renderer.tsx","src/components/forms/udp-forms/udp-forms-builder/udp-forms-builder-item/list-option-renderer/list-options-renderer.css?tag=list-options-renderer&encapsulation=shadow","src/components/forms/udp-forms/udp-forms-builder/udp-forms-builder-item/list-option-renderer/list-options-renderer.tsx","src/components/forms/udp-forms/udp-forms-builder/udp-forms-builder-item/question-specific-configs-renderer/question-specific-configs-renderer.css?tag=question-specific-configs-renderer&encapsulation=shadow","src/components/forms/udp-forms/udp-forms-builder/udp-forms-builder-item/question-specific-configs-renderer/question-specific-configs-renderer.tsx","src/components/forms/udp-forms/udp-forms-builder/udp-forms-builder-item/signature-renderer/signature-renderer.css?tag=signature-renderer&encapsulation=shadow","src/components/forms/udp-forms/udp-forms-builder/udp-forms-builder-item/signature-renderer/signature-renderer.tsx","src/components/forms/udp-forms/udp-forms-builder/udp-forms-builder-item/text-input-renderer/text-input-renderer.css?tag=text-input-renderer&encapsulation=shadow","src/components/forms/udp-forms/udp-forms-builder/udp-forms-builder-item/text-input-renderer/text-input-renderer.tsx"],"sourcesContent":[":host {\n display: block;\n}\n\n.question-item-date-inputs-container,\n.question-item-time-inputs-container,\n.question-item-date-time-inputs-container {\n display: flex;\n flex-direction: column;\n gap: var(--spacing-04, 16px);\n}\n\n.question-item-date-inputs-container-date-range,\n.question-item-date-inputs-container-time-range,\n.question-item-date-inputs-container-datetime-range {\n display: flex;\n flex-direction: row;\n gap: var(--spacing-04, 16px);\n}\n","import { Component, Fragment, h, Prop } from '@stencil/core';\nimport { UdpFormQuestion } from '../../../utils/types'; // Using path that worked previously\nimport { UdpFormsFieldTypeEnum } from '../../../utils/enums';\n\n// We will need to import any components used like udp-date-selector, udp-time-selector, udp-datetime-selector, stencil-toggle, unity-typography etc.\n// This will require knowing their correct import paths or ensuring they are globally available.\n\n@Component({\n tag: 'date-time-renderer',\n styleUrl: 'date-time-renderer.css',\n shadow: true,\n})\nexport class DateTimeRenderer {\n @Prop() question: UdpFormQuestion;\n @Prop() isViewOnly: boolean;\n @Prop() formSectionsDraft: any[][];\n @Prop() sIndex: number;\n @Prop() qIndex: number;\n @Prop() onFormSectionsDraftChange: (updatedSections: any[][]) => void;\n @Prop() getHandler: (fieldTypeId: number, handlerName: string) => any;\n\n renderSwitch() {\n switch (this.question.fieldTypeId) {\n case UdpFormsFieldTypeEnum.DateSelector: // Date Selector\n return (\n <div class=\"question-item-date-inputs-container\">\n <div class=\"question-item-date-inputs-container-date-range\">\n <udp-date-selector\n label=\"Min Date\"\n value={this.question.fieldProperties.minDate}\n fullWidth={true}\n onChange={e => {\n if (this.isViewOnly) return;\n const handler = this.getHandler(this.question.fieldTypeId, 'handleFieldPropertyDateTime');\n const updated = handler(e, this.formSectionsDraft, this.sIndex, this.qIndex, 'minDate');\n this.onFormSectionsDraftChange(updated);\n }}\n ></udp-date-selector>\n <udp-date-selector\n label=\"Max Date\"\n value={this.question.fieldProperties.maxDate}\n fullWidth={true}\n onChange={e => {\n if (this.isViewOnly) return;\n const handler = this.getHandler(this.question.fieldTypeId, 'handleFieldPropertyDateTime');\n const updated = handler(e, this.formSectionsDraft, this.sIndex, this.qIndex, 'maxDate');\n this.onFormSectionsDraftChange(updated);\n }}\n ></udp-date-selector>\n </div>\n <stencil-toggle\n label=\"Allow Future Date\"\n disabled={this.isViewOnly}\n checked={this.question.fieldProperties.allowFutureDate === true}\n onToggledChange={() => {\n if (this.isViewOnly) return;\n const handler = this.getHandler(this.question.fieldTypeId, 'handleFieldPropertyBooleanToggle');\n const updated = handler(this.formSectionsDraft, this.sIndex, this.qIndex, 'allowFutureDate');\n this.onFormSectionsDraftChange(updated);\n }}\n labelPosition=\"right\"\n ></stencil-toggle>\n </div>\n );\n case UdpFormsFieldTypeEnum.TimeSelector: // Time Selector\n return (\n <div class=\"question-item-time-inputs-container\">\n <div class=\"question-item-date-inputs-container-time-range\">\n <udp-time-selector\n label=\"Min Time\"\n value={this.question.fieldProperties.minTime}\n fullWidth={true}\n onChange={e => {\n if (this.isViewOnly) return;\n const handler = this.getHandler(this.question.fieldTypeId, 'handleFieldPropertyDateTime');\n const updated = handler(e, this.formSectionsDraft, this.sIndex, this.qIndex, 'minTime');\n this.onFormSectionsDraftChange(updated);\n }}\n ></udp-time-selector>\n <udp-time-selector\n label=\"Max Time\"\n value={this.question.fieldProperties.maxTime}\n fullWidth={true}\n onChange={e => {\n if (this.isViewOnly) return;\n const handler = this.getHandler(this.question.fieldTypeId, 'handleFieldPropertyDateTime');\n const updated = handler(e, this.formSectionsDraft, this.sIndex, this.qIndex, 'maxTime');\n this.onFormSectionsDraftChange(updated);\n }}\n ></udp-time-selector>\n </div>\n </div>\n );\n case UdpFormsFieldTypeEnum.DateTimeSelector: // DateTime Selector\n return (\n <Fragment>\n <div class=\"question-item-date-time-inputs-container\">\n <div class=\"question-item-date-inputs-container-datetime-range\">\n <udp-datetime-selector\n label=\"Min Datetime\"\n value={this.question.fieldProperties.minDateTime}\n fullWidth={true}\n onChange={e => {\n if (this.isViewOnly) return;\n const handler = this.getHandler(this.question.fieldTypeId, 'handleFieldPropertyDateTime');\n const updated = handler(e, this.formSectionsDraft, this.sIndex, this.qIndex, 'minDateTime');\n this.onFormSectionsDraftChange(updated);\n }}\n ></udp-datetime-selector>\n <udp-datetime-selector\n label=\"Max Datetime\"\n value={this.question.fieldProperties.maxDateTime}\n fullWidth={true}\n onChange={e => {\n if (this.isViewOnly) return;\n const handler = this.getHandler(this.question.fieldTypeId, 'handleFieldPropertyDateTime');\n const updated = handler(e, this.formSectionsDraft, this.sIndex, this.qIndex, 'maxDateTime');\n this.onFormSectionsDraftChange(updated);\n }}\n ></udp-datetime-selector>\n </div>\n <div class=\"question-item-future-date-container\">\n <stencil-toggle\n label=\"Allow Future Date\"\n disabled={this.isViewOnly}\n checked={!!this.question.fieldProperties?.allowFutureDate}\n onToggledChange={() => {\n if (this.isViewOnly) return;\n const handler = this.getHandler(this.question.fieldTypeId, 'handleFieldPropertyBooleanToggle');\n const updated = handler(this.formSectionsDraft, this.sIndex, this.qIndex, 'allowFutureDate');\n this.onFormSectionsDraftChange(updated);\n }}\n labelPosition=\"right\"\n ></stencil-toggle>\n </div>\n </div>\n </Fragment>\n );\n default:\n return null;\n }\n }\n\n render() {\n return this.renderSwitch();\n }\n}\n","/* Styles for file-upload-renderer */\n.file-upload-input-container {\n display: flex;\n flex-direction: column; /* Stack toggles vertically */\n /* gap: var(--spacing-05, 16px); Consistent spacing with other components */\n}\n\n/* Add any other specific styles for file upload inputs here */ ","import { Component, h, Prop } from '@stencil/core';\nimport { UdpFormQuestion } from '../../../utils/types';\n// stencil-toggle should be globally available or imported if necessary\n\n@Component({\n tag: 'file-upload-renderer',\n styleUrl: 'file-upload-renderer.css',\n shadow: true,\n})\nexport class FileUploadRenderer {\n @Prop() question: UdpFormQuestion;\n @Prop() isViewOnly: boolean;\n @Prop() formSectionsDraft: any[][];\n @Prop() sIndex: number;\n @Prop() qIndex: number;\n @Prop() onFormSectionsDraftChange: (updatedSections: any[][]) => void;\n @Prop() getHandler: (fieldTypeId: number, handlerName: string) => any;\n\n render() {\n return (\n <div class=\"file-upload-input-container\">\n <div>\n <stencil-toggle\n label=\"Hide Drag And Drop\"\n disabled={this.isViewOnly}\n checked={!!this.question.fieldProperties?.hideDragAndDrop}\n onToggledChange={() => {\n if (this.isViewOnly) return;\n const handler = this.getHandler(this.question.fieldTypeId, 'handleFieldPropertyBooleanToggle');\n const updated = handler(this.formSectionsDraft, this.sIndex, this.qIndex, 'hideDragAndDrop');\n this.onFormSectionsDraftChange(updated);\n }}\n labelPosition=\"right\"\n ></stencil-toggle>\n </div>\n <div>\n <stencil-toggle\n label=\"Hide Button\"\n disabled={this.isViewOnly}\n checked={!!this.question.fieldProperties?.hideButton}\n onToggledChange={() => {\n if (this.isViewOnly) return;\n const handler = this.getHandler(this.question.fieldTypeId, 'handleFieldPropertyBooleanToggle');\n const updated = handler(this.formSectionsDraft, this.sIndex, this.qIndex, 'hideButton');\n this.onFormSectionsDraftChange(updated);\n }}\n labelPosition=\"right\"\n ></stencil-toggle>\n </div>\n </div>\n );\n }\n}\n","/* Styles for list-options-renderer */\n\n:host {\n padding: 0;\n display: block;\n\n\n .question-item-options-list-container {\n display: flex;\n flex-direction: column;\n gap: var(--spacing-04, 16px);\n padding: var(--spacing-04, 16px) 0;\n /* background-color: var(--primary-color-alpha-15); */\n }\n\n .question-item-options-item {\n display: flex;\n flex-direction: row;\n align-items: center;\n gap: var(--spacing-04, 16px);\n padding: var(--spacing-03, 16px);\n width: 100%;\n border-radius: var(--border-radius);\n border: 1px solid var(--gray-03);\n box-sizing: border-box;\n box-shadow: var(--elevation-01);\n background-color: var(--card-background-color, #fff);\n margin: 0.3em 0;\n }\n\n .question-item-options-item-fields {\n display: flex;\n flex-direction: row;\n gap: var(--spacing-04, 16px);\n flex-grow: 1;\n }\n\n .list-options-header {\n display: flex;\n justify-content: space-between;\n align-items: center;\n }\n}\n\n/* \n.question-item-options-list-container {\n display: flex;\n align-items: center;\n justify-content: space-between;\n border-radius: var(--border-radius);\n gap: var(--spacing-03);\n}\n\n.question-item-options-list-single-item-container {\n}\n\n.question-item-options-text-field-list-item {\n display: flex;\n gap: var(--spacing-03);\n} */","import { Component, h, Prop, Host } from '@stencil/core';\nimport { UdpFormQuestion } from '../../../utils/types'; // Using path that worked previously\n// We will need to import any components used like udp-icon, text-field, unity-typography etc.\n// This will require knowing their correct import paths or ensuring they are globally available.\nimport { getIconFromName } from '../../../../../data-display/icons/iconUtils';\n\n@Component({\n tag: 'list-options-renderer',\n styleUrl: 'list-options-renderer.css',\n shadow: true,\n})\nexport class ListOptionsRenderer {\n @Prop() question: UdpFormQuestion;\n @Prop() isViewOnly: boolean;\n @Prop() formSectionsDraft: any[][];\n @Prop() sIndex: number;\n @Prop() qIndex: number;\n @Prop() lookupOptions: any[];\n @Prop() onFormSectionsDraftChange: (updatedSections: any[][]) => void;\n @Prop() getHandler: (fieldTypeId: number, handlerName: string) => any;\n\n render() {\n return (\n <Host>\n <div class=\"question-item-options-list-container\">\n {this.lookupOptions?.length > 1 && (\n <stencil-toggle\n label=\"Use Lookup Options\"\n disabled={this.isViewOnly}\n checked={!!(this.question?.fieldProperties && 'lookupId' in this.question.fieldProperties)}\n labelPosition=\"right\"\n onToggledChange={() => {\n const handler = this.getHandler(this.question.fieldTypeId, 'handleFieldPropertyToggleManualOrLookupOptions');\n const updated = handler(this.formSectionsDraft, this.sIndex, this.qIndex);\n this.onFormSectionsDraftChange(updated);\n }}\n />\n )}\n {/* Display lookup components if question is configured for lookup */}\n {'lookupId' in this.question.fieldProperties && (\n <div>\n <udp-selector\n label=\"Lookup Source\"\n key=\"lookup-selector\"\n initialValue={this.question.fieldProperties?.lookupId || ''}\n options={this.lookupOptions}\n disabled={this.isViewOnly}\n required={true}\n onChange={(e: CustomEvent) => {\n const handler = this.getHandler(this.question.fieldTypeId, 'handleFieldPropertyLookupChange');\n const updated = handler(e.detail, this.formSectionsDraft, this.sIndex, this.qIndex);\n this.onFormSectionsDraftChange(updated);\n }}\n ></udp-selector>\n </div>\n )}\n\n {/* Display lookup components if question is configured for manual options */}\n {'items' in this.question.fieldProperties && (\n <div>\n <div class=\"list-options-header\">\n <unity-typography variant=\"h6\">Configure Select Options</unity-typography>\n {!this.isViewOnly && 'items' in this.question.fieldProperties && (\n <udp-button\n variant=\"text\"\n onClick={() => {\n const handler = this.getHandler(this.question.fieldTypeId, 'handleFieldPropertyAddListItem');\n const updated = handler(this.formSectionsDraft, this.sIndex, this.qIndex, '', '');\n this.onFormSectionsDraftChange(updated);\n }}\n startIcon={<udp-icon iconName={'add'} darkIcon={true} />}\n title=\"Add an Option\"\n >\n Add an Option\n </udp-button>\n )}\n </div>\n {this.question.fieldProperties?.items?.map((item, idx) => (\n <div key={idx} class=\"question-item-options-item\">\n {/* <unity-typography variant={'h4'}>Option {idx + 1}.</unity-typography> */}\n <div class=\"question-item-options-item-fields\">\n <text-field\n label=\"Display Text\"\n value={item.display}\n disabled={this.isViewOnly}\n placeholder=\"Display Text\"\n required={true}\n onInput={e => {\n const handler = this.getHandler(this.question.fieldTypeId, 'handleFieldPropertyListItemChange');\n const updated = handler(e, this.formSectionsDraft, this.sIndex, this.qIndex, idx, 'display');\n this.onFormSectionsDraftChange(updated);\n }}\n ></text-field>\n\n <text-field\n label=\"Option Value\"\n value={item.value}\n disabled={this.isViewOnly}\n placeholder=\"Option Value\"\n required={true}\n onInput={e => {\n const handler = this.getHandler(this.question.fieldTypeId, 'handleFieldPropertyListItemChange');\n const updated = handler(e, this.formSectionsDraft, this.sIndex, this.qIndex, idx, 'value');\n this.onFormSectionsDraftChange(updated);\n }}\n ></text-field>\n </div>\n {this.question.fieldProperties.items.length > 1 && !this.isViewOnly && (\n <stencil-icon-button\n icon={getIconFromName('trashCan')}\n onClick={() => {\n const handler = this.getHandler(this.question.fieldTypeId, 'handleFieldPropertyRemoveListItem');\n const updated = handler(this.formSectionsDraft, this.sIndex, this.qIndex, idx);\n this.onFormSectionsDraftChange(updated);\n }}\n />\n )}\n </div>\n ))}\n </div>\n )}\n </div>\n </Host>\n );\n }\n}\n","/* Add styles for question-specific-configs-renderer component here */ ","import { Component, h, Prop } from '@stencil/core';\nimport questionsTemplate from '../../udp-forms-builder-question-template';\nimport { UdpFormsFieldTypeEnum } from '../../../utils/enums';\n\n@Component({\n tag: 'question-specific-configs-renderer',\n styleUrl: 'question-specific-configs-renderer.css', // Explicitly added ./\n shadow: true,\n})\nexport class QuestionSpecificConfigsRenderer {\n @Prop() formSectionsDraft: any[];\n @Prop() sIndex: number;\n @Prop() qIndex: number;\n @Prop() isViewOnly: boolean;\n @Prop() lookupOptions: any[];\n @Prop() onFormSectionsDraftChange: (updatedSections: any[]) => void;\n\n private getHandler = (fieldTypeId: number, handlerName: string) => {\n const template = questionsTemplate.find(q => q.fieldTypeId === fieldTypeId);\n return template?.handlers?.[handlerName];\n };\n\n private get question() {\n return this.formSectionsDraft?.[this.sIndex].formQuestions?.[this.qIndex];\n }\n\n render() {\n switch (this.question.fieldTypeId) {\n case UdpFormsFieldTypeEnum.Paragraph:\n return (\n <text-area\n label=\"Paragraph Text\"\n value={this.question.fieldProperties?.paragraphText || ''}\n disabled={this.isViewOnly}\n placeholder=\"Enter the paragraph text here\"\n rows={3}\n maxRows={10}\n fullWidth={true}\n margin={'dense'}\n onInput={e => {\n const handler = this.getHandler(\n this.question.fieldTypeId,\n 'handleParagraphValueChange',\n );\n const updated = handler(e, this.formSectionsDraft, this.sIndex, this.qIndex);\n this.onFormSectionsDraftChange(updated);\n }}\n />\n );\n case UdpFormsFieldTypeEnum.SingleLineText:\n case UdpFormsFieldTypeEnum.MultiLineText:\n return (\n <text-input-renderer\n question={this.question}\n isViewOnly={this.isViewOnly}\n formSectionsDraft={this.formSectionsDraft}\n sIndex={this.sIndex}\n qIndex={this.qIndex}\n onFormSectionsDraftChange={this.onFormSectionsDraftChange}\n getHandler={this.getHandler}\n ></text-input-renderer>\n );\n\n case UdpFormsFieldTypeEnum.Checkbox:\n case UdpFormsFieldTypeEnum.RadioButton:\n case UdpFormsFieldTypeEnum.DropdownSingleSelect:\n case UdpFormsFieldTypeEnum.DropdownMultipleSelect:\n case UdpFormsFieldTypeEnum.ListMultiSelect:\n return (\n <list-options-renderer\n question={this.question}\n isViewOnly={this.isViewOnly}\n formSectionsDraft={this.formSectionsDraft}\n sIndex={this.sIndex}\n qIndex={this.qIndex}\n onFormSectionsDraftChange={this.onFormSectionsDraftChange}\n getHandler={this.getHandler}\n lookupOptions={this.lookupOptions}\n ></list-options-renderer>\n );\n\n case UdpFormsFieldTypeEnum.DateSelector:\n case UdpFormsFieldTypeEnum.TimeSelector:\n case UdpFormsFieldTypeEnum.DateTimeSelector:\n return (\n <date-time-renderer\n question={this.question}\n isViewOnly={this.isViewOnly}\n formSectionsDraft={this.formSectionsDraft}\n sIndex={this.sIndex}\n qIndex={this.qIndex}\n onFormSectionsDraftChange={this.onFormSectionsDraftChange}\n getHandler={this.getHandler}\n ></date-time-renderer>\n );\n\n case UdpFormsFieldTypeEnum.FileUpload:\n case UdpFormsFieldTypeEnum.ImageUpload:\n return (\n <file-upload-renderer\n question={this.question}\n isViewOnly={this.isViewOnly}\n formSectionsDraft={this.formSectionsDraft}\n sIndex={this.sIndex}\n qIndex={this.qIndex}\n onFormSectionsDraftChange={this.onFormSectionsDraftChange}\n getHandler={this.getHandler}\n ></file-upload-renderer>\n );\n\n case UdpFormsFieldTypeEnum.Signature:\n return (\n <signature-renderer\n question={this.question}\n isViewOnly={this.isViewOnly}\n formSectionsDraft={this.formSectionsDraft}\n sIndex={this.sIndex}\n qIndex={this.qIndex}\n onFormSectionsDraftChange={this.onFormSectionsDraftChange}\n getHandler={this.getHandler}\n ></signature-renderer>\n );\n\n default:\n return null;\n }\n }\n}\n","/* Styles for signature-renderer */\n.signature-input-container {\n display: flex;\n flex-direction: column; /* Stack toggles vertically */\n gap: var(--spacing-04, 16px); /* Consistent spacing with other components */\n}\n\n/* Add any other specific styles for file upload inputs here */ ","import { Component, h, Prop } from '@stencil/core';\nimport { UdpFormQuestion } from '../../../utils/types';\n\n@Component({\n tag: 'signature-renderer',\n styleUrl: 'signature-renderer.css',\n shadow: true,\n})\nexport class SignatureRenderer {\n @Prop() question: UdpFormQuestion;\n @Prop() isViewOnly: boolean;\n @Prop() formSectionsDraft: any[][];\n @Prop() sIndex: number;\n @Prop() qIndex: number;\n @Prop() onFormSectionsDraftChange: (updatedSections: any[][]) => void;\n @Prop() getHandler: (fieldTypeId: number, handlerName: string) => any;\n\n render() {\n return (\n <div class=\"signature-input-container\">\n <div>\n <stencil-toggle\n label=\"Include Location\"\n disabled={this.isViewOnly}\n checked={!!this.question.fieldProperties?.includeLocation}\n onToggledChange={() => {\n if (this.isViewOnly) return;\n const handler = this.getHandler(this.question.fieldTypeId, 'handleFieldPropertyBooleanToggle');\n const updated = handler(this.formSectionsDraft, this.sIndex, this.qIndex, 'includeLocation');\n this.onFormSectionsDraftChange(updated);\n }}\n labelPosition=\"right\"\n ></stencil-toggle>\n </div>\n </div>\n );\n }\n}\n","/* Styles for text-input-renderer */\n.question-item-text-input-container {\n display: flex;\n flex-direction: column;\n gap: var(--spacing-04, 16px);\n}\n\n.question-item-text-input-container > div {\n width: 100%;\n}\n\n/* Add any other specific styles for text inputs here */ ","import { Component, h, Prop } from '@stencil/core';\nimport { UdpFormQuestion } from '../../../utils/types'; // Using path that worked previously\n\n@Component({\n tag: 'text-input-renderer',\n styleUrl: 'text-input-renderer.css',\n shadow: true,\n})\nexport class TextInputRenderer {\n @Prop() question: UdpFormQuestion;\n @Prop() isViewOnly: boolean;\n @Prop() formSectionsDraft: any[][];\n @Prop() sIndex: number;\n @Prop() qIndex: number;\n @Prop() onFormSectionsDraftChange: (updatedSections: any[][]) => void;\n @Prop() getHandler: (fieldTypeId: number, handlerName: string) => any;\n\n render() {\n return (\n <div class=\"question-item-text-input-container\">\n <div>\n <numeric-field\n label=\"Min Character Length\"\n value={this.question.fieldProperties.minCharacter?.toString()}\n disabled={this.isViewOnly}\n onChange={e => {\n const handler = this.getHandler(this.question.fieldTypeId, 'handleFieldPropertyMinMaxCharacter');\n const mockEvent = { target: { value: e.detail } };\n const updated = handler(mockEvent, this.formSectionsDraft, this.sIndex, this.qIndex, 'minCharacter');\n this.onFormSectionsDraftChange(updated);\n }}\n ></numeric-field>\n </div>\n <div>\n <numeric-field\n label=\"Max Character Length\"\n value={this.question.fieldProperties.maxCharacter?.toString()}\n disabled={this.isViewOnly}\n onChange={e => {\n const handler = this.getHandler(this.question.fieldTypeId, 'handleFieldPropertyMinMaxCharacter');\n const mockEvent = { target: { value: e.detail } };\n const updated = handler(mockEvent, this.formSectionsDraft, this.sIndex, this.qIndex, 'maxCharacter');\n this.onFormSectionsDraftChange(updated);\n }}\n ></numeric-field>\n </div>\n </div>\n );\n }\n}\n"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- import{r as e,h as i,F as t,H as n}from"./index-CaZq3YdB.js";import{b as s}from"./enums-BnKmfKJT.js";import{g as o}from"./iconUtils-DcPvHO4A.js";import{q as a}from"./udp-forms-builder-question-template-C60LMUS4.js";import"./iconMapping-CPerGeNF.js";import"@carbon/icons/es/add/16";import"@carbon/icons/es/add/32";import"@carbon/icons/es/add--alt/16";import"@carbon/icons/es/add--filled/16";import"@carbon/icons/es/arrows--horizontal/16";import"@carbon/icons/es/attachment/16";import"@carbon/icons/es/batch-job/16";import"@carbon/icons/es/box/16";import"@carbon/icons/es/close/16";import"@carbon/icons/es/close/24";import"@carbon/icons/es/close/32";import"@carbon/icons/es/close--filled/16";import"@carbon/icons/es/close--outline/16";import"@carbon/icons/es/checkmark/16";import"@carbon/icons/es/checkmark/24";import"@carbon/icons/es/checkmark/32";import"@carbon/icons/es/chevron--left/16";import"@carbon/icons/es/chevron--right/16";import"@carbon/icons/es/chevron--down/16";import"@carbon/icons/es/data-enrichment/16";import"@carbon/icons/es/document/16";import"@carbon/icons/es/document--add/16";import"@carbon/icons/es/document--attachment/16";import"@carbon/icons/es/document--pdf/16";import"@carbon/icons/es/document--video/16";import"@carbon/icons/es/document--audio/16";import"@carbon/icons/es/draggable/16";import"@carbon/icons/es/edit/16";import"@carbon/icons/es/export/16";import"@carbon/icons/es/flag/16";import"@carbon/icons/es/information/16";import"@carbon/icons/es/information/32";import"@carbon/icons/es/link/16";import"@carbon/icons/es/overflow-menu--vertical/16";import"@carbon/icons/es/overflow-menu--vertical/32";import"@carbon/icons/es/return/16";import"@carbon/icons/es/save/16";import"@carbon/icons/es/settings/16";import"@carbon/icons/es/subtract/16";import"@carbon/icons/es/subtract--alt/16";import"@carbon/icons/es/subtract--filled/16";import"@carbon/icons/es/trash-can/16";import"@carbon/icons/es/user/16";import"@carbon/icons/es/view/16";import"@carbon/icons/es/warning/16";import"@carbon/icons/es/warning/32";import"@carbon/icons/es/warning--alt/16";import"@carbon/icons/es/warning--alt/32";import"@carbon/icons/es/product/16";import"@carbon/icons/es/workspace/16";import"@carbon/icons/es/arrow--up/16";import"@carbon/icons/es/arrow--down/16";import"@carbon/icons/es/arrow--right/16";import"@carbon/icons/es/arrow--left/16";import"@carbon/icons/es/copy/16";import"@carbon/icons/es/star/16";import"@carbon/icons/es/data-table/16";import"@carbon/icons/es/fit-to-width/16";import"@carbon/icons/es/search--advanced/16";import"@carbon/icons/es/reset/16";import"@carbon/icons/es/column/16";import"@carbon/icons/es/column--delete/16";import"@carbon/icons/es/watson-health/rotate--360/16";import"@carbon/icons/es/filter/16";import"@carbon/icons/es/app-connectivity/16";import"@carbon/icons/es/text--font/16";import"@carbon/icons/es/text--long-paragraph/16";import"@carbon/icons/es/character--whole-number/16";import"@carbon/icons/es/checkbox--checked/16";import"@carbon/icons/es/radio-button--checked/16";import"@carbon/icons/es/event--schedule/16";import"@carbon/icons/es/view--off/16";import"@carbon/icons/es/time/16";import"@carbon/icons/es/calendar/16";import"@carbon/icons/es/list--checked/16";import"@carbon/icons/es/list--bulleted/16";import"@carbon/icons/es/cloud--upload/16";import"@carbon/icons/es/locked/16";import"@carbon/icons/es/pause/16";import"@carbon/icons/es/unlocked/16";import"@carbon/icons/es/send/16";import"@carbon/icons/es/email/16";import"@carbon/icons/es/checkmark--outline/16";import"@carbon/icons/es/migrate--alt/16";import"@carbon/icons/es/checkbox--checked--filled/16";import"@carbon/icons/es/checkbox/16";import"@carbon/icons/es/ZIP/16";import"@carbon/icons/es/image/16";import"@carbon/icons/es/PPT/16";import"@carbon/icons/es/XLS/16";const r=":host{display:block}.question-item-date-inputs-container,.question-item-time-inputs-container,.question-item-date-time-inputs-container{display:flex;flex-direction:column;gap:var(--spacing-04, 16px)}.question-item-date-inputs-container-date-range,.question-item-date-inputs-container-time-range,.question-item-date-inputs-container-datetime-range{display:flex;flex-direction:row;gap:var(--spacing-04, 16px)}";const c=class{constructor(i){e(this,i)}renderSwitch(){var e;switch(this.question.fieldTypeId){case s.DateSelector:return i("div",{class:"question-item-date-inputs-container"},i("div",{class:"question-item-date-inputs-container-date-range"},i("udp-date-selector",{label:"Min Date",value:this.question.fieldProperties.minDate,fullWidth:true,onChange:e=>{if(this.isViewOnly)return;const i=this.getHandler(this.question.fieldTypeId,"handleFieldPropertyDateTime");const t=i(e,this.formSectionsDraft,this.sIndex,this.qIndex,"minDate");this.onFormSectionsDraftChange(t)}}),i("udp-date-selector",{label:"Max Date",value:this.question.fieldProperties.maxDate,fullWidth:true,onChange:e=>{if(this.isViewOnly)return;const i=this.getHandler(this.question.fieldTypeId,"handleFieldPropertyDateTime");const t=i(e,this.formSectionsDraft,this.sIndex,this.qIndex,"maxDate");this.onFormSectionsDraftChange(t)}})),i("stencil-toggle",{label:"Allow Future Date",disabled:this.isViewOnly,checked:this.question.fieldProperties.allowFutureDate===true,onToggledChange:()=>{if(this.isViewOnly)return;const e=this.getHandler(this.question.fieldTypeId,"handleFieldPropertyBooleanToggle");const i=e(this.formSectionsDraft,this.sIndex,this.qIndex,"allowFutureDate");this.onFormSectionsDraftChange(i)},labelPosition:"right"}));case s.TimeSelector:return i("div",{class:"question-item-time-inputs-container"},i("div",{class:"question-item-date-inputs-container-time-range"},i("udp-time-selector",{label:"Min Time",value:this.question.fieldProperties.minTime,fullWidth:true,onChange:e=>{if(this.isViewOnly)return;const i=this.getHandler(this.question.fieldTypeId,"handleFieldPropertyDateTime");const t=i(e,this.formSectionsDraft,this.sIndex,this.qIndex,"minTime");this.onFormSectionsDraftChange(t)}}),i("udp-time-selector",{label:"Max Time",value:this.question.fieldProperties.maxTime,fullWidth:true,onChange:e=>{if(this.isViewOnly)return;const i=this.getHandler(this.question.fieldTypeId,"handleFieldPropertyDateTime");const t=i(e,this.formSectionsDraft,this.sIndex,this.qIndex,"maxTime");this.onFormSectionsDraftChange(t)}})));case s.DateTimeSelector:return i(t,null,i("div",{class:"question-item-date-time-inputs-container"},i("div",{class:"question-item-date-inputs-container-datetime-range"},i("udp-datetime-selector",{label:"Min Datetime",value:this.question.fieldProperties.minDateTime,fullWidth:true,onChange:e=>{if(this.isViewOnly)return;const i=this.getHandler(this.question.fieldTypeId,"handleFieldPropertyDateTime");const t=i(e,this.formSectionsDraft,this.sIndex,this.qIndex,"minDateTime");this.onFormSectionsDraftChange(t)}}),i("udp-datetime-selector",{label:"Max Datetime",value:this.question.fieldProperties.maxDateTime,fullWidth:true,onChange:e=>{if(this.isViewOnly)return;const i=this.getHandler(this.question.fieldTypeId,"handleFieldPropertyDateTime");const t=i(e,this.formSectionsDraft,this.sIndex,this.qIndex,"maxDateTime");this.onFormSectionsDraftChange(t)}})),i("div",{class:"question-item-future-date-container"},i("stencil-toggle",{label:"Allow Future Date",disabled:this.isViewOnly,checked:!!((e=this.question.fieldProperties)===null||e===void 0?void 0:e.allowFutureDate),onToggledChange:()=>{if(this.isViewOnly)return;const e=this.getHandler(this.question.fieldTypeId,"handleFieldPropertyBooleanToggle");const i=e(this.formSectionsDraft,this.sIndex,this.qIndex,"allowFutureDate");this.onFormSectionsDraftChange(i)},labelPosition:"right"}))));default:return null}}render(){return this.renderSwitch()}};c.style=r;const l=".file-upload-input-container{display:flex;flex-direction:column;}";const d=class{constructor(i){e(this,i)}render(){var e,t;return i("div",{key:"0d0900ccd61c4bdb94a57aae8c31e3a8391bc7cf",class:"file-upload-input-container"},i("div",{key:"d88efd56295b9f864d70bcae6200bd88e0acfa3b"},i("stencil-toggle",{key:"907fb4c0aa49d0c687b57ff3a72e17c598c88e6d",label:"Hide Drag And Drop",disabled:this.isViewOnly,checked:!!((e=this.question.fieldProperties)===null||e===void 0?void 0:e.hideDragAndDrop),onToggledChange:()=>{if(this.isViewOnly)return;const e=this.getHandler(this.question.fieldTypeId,"handleFieldPropertyBooleanToggle");const i=e(this.formSectionsDraft,this.sIndex,this.qIndex,"hideDragAndDrop");this.onFormSectionsDraftChange(i)},labelPosition:"right"})),i("div",{key:"31ae768a4d8a4ba415d0e429f61fb2a684177947"},i("stencil-toggle",{key:"1aaa023cd3a947525a04ea3bdc03cd097c3055ee",label:"Hide Button",disabled:this.isViewOnly,checked:!!((t=this.question.fieldProperties)===null||t===void 0?void 0:t.hideButton),onToggledChange:()=>{if(this.isViewOnly)return;const e=this.getHandler(this.question.fieldTypeId,"handleFieldPropertyBooleanToggle");const i=e(this.formSectionsDraft,this.sIndex,this.qIndex,"hideButton");this.onFormSectionsDraftChange(i)},labelPosition:"right"})))}};d.style=l;const h="/* Styles for list-options-renderer */\n\n:host {\n padding: 0;\n display: block;\n\n\n .question-item-options-list-container {\n display: flex;\n flex-direction: column;\n gap: var(--spacing-04, 16px);\n padding: var(--spacing-04, 16px) 0;\n /* background-color: var(--primary-color-alpha-15); */\n }\n\n .question-item-options-item {\n display: flex;\n flex-direction: row;\n align-items: center;\n gap: var(--spacing-04, 16px);\n padding: var(--spacing-03, 16px);\n width: 100%;\n border-radius: var(--border-radius);\n border: 1px solid var(--gray-03);\n box-sizing: border-box;\n box-shadow: var(--elevation-01);\n background-color: var(--card-background-color, #fff);\n margin: 0.3em 0;\n }\n\n .question-item-options-item-fields {\n display: flex;\n flex-direction: row;\n gap: var(--spacing-04, 16px);\n flex-grow: 1;\n }\n\n .list-options-header {\n display: flex;\n justify-content: space-between;\n align-items: center;\n }\n}\n\n/* \n.question-item-options-list-container {\n display: flex;\n align-items: center;\n justify-content: space-between;\n border-radius: var(--border-radius);\n gap: var(--spacing-03);\n}\n\n.question-item-options-list-single-item-container {\n}\n\n.question-item-options-text-field-list-item {\n display: flex;\n gap: var(--spacing-03);\n} */";const p=class{constructor(i){e(this,i)}render(){var e,t,s,a,r;return i(n,{key:"5e5f647863ca43bcc00dc7866909d658031d1254"},i("div",{key:"8029f2367303ded0b7efa3e577682c26cbb6fa9e",class:"question-item-options-list-container"},((e=this.lookupOptions)===null||e===void 0?void 0:e.length)>1&&i("stencil-toggle",{key:"5cef881b783fb21650135e160c7998e5bf82d551",label:"Use Lookup Options",disabled:this.isViewOnly,checked:!!(((t=this.question)===null||t===void 0?void 0:t.fieldProperties)&&"lookupId"in this.question.fieldProperties),labelPosition:"right",onToggledChange:()=>{const e=this.getHandler(this.question.fieldTypeId,"handleFieldPropertyToggleManualOrLookupOptions");const i=e(this.formSectionsDraft,this.sIndex,this.qIndex);this.onFormSectionsDraftChange(i)}}),"lookupId"in this.question.fieldProperties&&i("div",{key:"049aa9898af0068a8b4f35013e63afffeca913c2"},i("udp-selector",{label:"Lookup Source",key:"lookup-selector",initialValue:((s=this.question.fieldProperties)===null||s===void 0?void 0:s.lookupId)||"",options:this.lookupOptions,disabled:this.isViewOnly,required:true,onChange:e=>{const i=this.getHandler(this.question.fieldTypeId,"handleFieldPropertyLookupChange");const t=i(e.detail,this.formSectionsDraft,this.sIndex,this.qIndex);this.onFormSectionsDraftChange(t)}})),"items"in this.question.fieldProperties&&i("div",{key:"6070ade9b3db5f8ab0d11dc758d63b4e54894f21"},i("div",{key:"c5872bbf69d360994e8a065cb024ea8b9ba6c44e",class:"list-options-header"},i("unity-typography",{key:"6cded20e63b5a5b479b693902a0657e64a0035cd",variant:"h6"},"Configure Select Options"),!this.isViewOnly&&"items"in this.question.fieldProperties&&i("udp-button",{key:"08c90368248281fab63c6541efc76daf1d9d93e8",variant:"text",onClick:()=>{const e=this.getHandler(this.question.fieldTypeId,"handleFieldPropertyAddListItem");const i=e(this.formSectionsDraft,this.sIndex,this.qIndex,"","");this.onFormSectionsDraftChange(i)},startIcon:i("udp-icon",{iconName:"add",darkIcon:true}),title:"Add an Option"},"Add an Option")),(r=(a=this.question.fieldProperties)===null||a===void 0?void 0:a.items)===null||r===void 0?void 0:r.map(((e,t)=>i("div",{key:t,class:"question-item-options-item"},i("div",{class:"question-item-options-item-fields"},i("text-field",{label:"Display Text",value:e.display,disabled:this.isViewOnly,placeholder:"Display Text",required:true,onInput:e=>{const i=this.getHandler(this.question.fieldTypeId,"handleFieldPropertyListItemChange");const n=i(e,this.formSectionsDraft,this.sIndex,this.qIndex,t,"display");this.onFormSectionsDraftChange(n)}}),i("text-field",{label:"Option Value",value:e.value,disabled:this.isViewOnly,placeholder:"Option Value",required:true,onInput:e=>{const i=this.getHandler(this.question.fieldTypeId,"handleFieldPropertyListItemChange");const n=i(e,this.formSectionsDraft,this.sIndex,this.qIndex,t,"value");this.onFormSectionsDraftChange(n)}})),this.question.fieldProperties.items.length>1&&!this.isViewOnly&&i("stencil-icon-button",{icon:o("trashCan"),onClick:()=>{const e=this.getHandler(this.question.fieldTypeId,"handleFieldPropertyRemoveListItem");const i=e(this.formSectionsDraft,this.sIndex,this.qIndex,t);this.onFormSectionsDraftChange(i)}})))))))}};p.style=h;const u="";const m=class{constructor(i){e(this,i);this.getHandler=(e,i)=>{var t;const n=a.find((i=>i.fieldTypeId===e));return(t=n===null||n===void 0?void 0:n.handlers)===null||t===void 0?void 0:t[i]}}get question(){var e,i;return(i=(e=this.formSectionsDraft)===null||e===void 0?void 0:e[this.sIndex].formQuestions)===null||i===void 0?void 0:i[this.qIndex]}render(){var e;switch(this.question.fieldTypeId){case s.Paragraph:return i("text-area",{label:"Paragraph Text",value:((e=this.question.fieldProperties)===null||e===void 0?void 0:e.paragraphText)||"",disabled:this.isViewOnly,placeholder:"Enter the paragraph text here",rows:3,maxRows:10,fullWidth:true,margin:"dense",onInput:e=>{const i=this.getHandler(this.question.fieldTypeId,"handleParagraphValueChange");const t=i(e,this.formSectionsDraft,this.sIndex,this.qIndex);this.onFormSectionsDraftChange(t)}});case s.SingleLineText:case s.MultiLineText:return i("text-input-renderer",{question:this.question,isViewOnly:this.isViewOnly,formSectionsDraft:this.formSectionsDraft,sIndex:this.sIndex,qIndex:this.qIndex,onFormSectionsDraftChange:this.onFormSectionsDraftChange,getHandler:this.getHandler});case s.Checkbox:case s.RadioButton:case s.DropdownSingleSelect:case s.DropdownMultipleSelect:case s.ListMultiSelect:return i("list-options-renderer",{question:this.question,isViewOnly:this.isViewOnly,formSectionsDraft:this.formSectionsDraft,sIndex:this.sIndex,qIndex:this.qIndex,onFormSectionsDraftChange:this.onFormSectionsDraftChange,getHandler:this.getHandler,lookupOptions:this.lookupOptions});case s.DateSelector:case s.TimeSelector:case s.DateTimeSelector:return i("date-time-renderer",{question:this.question,isViewOnly:this.isViewOnly,formSectionsDraft:this.formSectionsDraft,sIndex:this.sIndex,qIndex:this.qIndex,onFormSectionsDraftChange:this.onFormSectionsDraftChange,getHandler:this.getHandler});case s.FileUpload:case s.ImageUpload:return i("file-upload-renderer",{question:this.question,isViewOnly:this.isViewOnly,formSectionsDraft:this.formSectionsDraft,sIndex:this.sIndex,qIndex:this.qIndex,onFormSectionsDraftChange:this.onFormSectionsDraftChange,getHandler:this.getHandler});case s.Signature:return i("signature-renderer",{question:this.question,isViewOnly:this.isViewOnly,formSectionsDraft:this.formSectionsDraft,sIndex:this.sIndex,qIndex:this.qIndex,onFormSectionsDraftChange:this.onFormSectionsDraftChange,getHandler:this.getHandler});default:return null}}};m.style=u;const b=".signature-input-container{display:flex;flex-direction:column;gap:var(--spacing-04, 16px);}";const g=class{constructor(i){e(this,i)}render(){var e;return i("div",{key:"f036902b7cb92a9939c5dac000aabcdfcebd507e",class:"signature-input-container"},i("div",{key:"f69e4642e6d32ba376f9b3db1d750968bc289146"},i("stencil-toggle",{key:"fb319a3201ae4bb4ee903b07886a8ba9094064ec",label:"Include Location",disabled:this.isViewOnly,checked:!!((e=this.question.fieldProperties)===null||e===void 0?void 0:e.includeLocation),onToggledChange:()=>{if(this.isViewOnly)return;const e=this.getHandler(this.question.fieldTypeId,"handleFieldPropertyBooleanToggle");const i=e(this.formSectionsDraft,this.sIndex,this.qIndex,"includeLocation");this.onFormSectionsDraftChange(i)},labelPosition:"right"})))}};g.style=b;const f=".question-item-text-input-container{display:flex;flex-direction:column;gap:var(--spacing-04, 16px)}.question-item-text-input-container>div{width:100%}";const v=class{constructor(i){e(this,i)}render(){var e,t;return i("div",{key:"035d9fdc8be25da7ecf0ae84eecde649a85e4322",class:"question-item-text-input-container"},i("div",{key:"e58baa0c927edc2ebc6fd22e50d70c67682489ca"},i("numeric-field",{key:"6f7f4b1af132808dd2b46469816da4276047a98f",label:"Min Character Length",value:(e=this.question.fieldProperties.minCharacter)===null||e===void 0?void 0:e.toString(),disabled:this.isViewOnly,onChange:e=>{const i=this.getHandler(this.question.fieldTypeId,"handleFieldPropertyMinMaxCharacter");const t={target:{value:e.detail}};const n=i(t,this.formSectionsDraft,this.sIndex,this.qIndex,"minCharacter");this.onFormSectionsDraftChange(n)}})),i("div",{key:"7756e209db6840d3ec0342d97efdc73d7ab3d276"},i("numeric-field",{key:"bd03b53ffd847005b14e0694e7a1831ae9bca1b3",label:"Max Character Length",value:(t=this.question.fieldProperties.maxCharacter)===null||t===void 0?void 0:t.toString(),disabled:this.isViewOnly,onChange:e=>{const i=this.getHandler(this.question.fieldTypeId,"handleFieldPropertyMinMaxCharacter");const t={target:{value:e.detail}};const n=i(t,this.formSectionsDraft,this.sIndex,this.qIndex,"maxCharacter");this.onFormSectionsDraftChange(n)}})))}};v.style=f;export{c as date_time_renderer,d as file_upload_renderer,p as list_options_renderer,m as question_specific_configs_renderer,g as signature_renderer,v as text_input_renderer};
2
- //# sourceMappingURL=date-time-renderer_6.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["registerInstance","h","Fragment","Host","UdpFormsFieldTypeEnum","getIconFromName","questionsTemplate","dateTimeRendererCss","DateTimeRenderer","constructor","hostRef","this","renderSwitch","_a","question","fieldTypeId","DateSelector","class","label","value","fieldProperties","minDate","fullWidth","onChange","e","isViewOnly","handler","getHandler","updated","formSectionsDraft","sIndex","qIndex","onFormSectionsDraftChange","maxDate","disabled","checked","allowFutureDate","onToggledChange","labelPosition","TimeSelector","minTime","maxTime","DateTimeSelector","minDateTime","maxDateTime","render","style","fileUploadRendererCss","FileUploadRenderer","_b","key","hideDragAndDrop","hideButton","listOptionsRendererCss","ListOptionsRenderer","_c","_d","_e","lookupOptions","length","initialValue","lookupId","options","required","detail","variant","onClick","startIcon","iconName","darkIcon","title","items","map","item","idx","display","placeholder","onInput","icon","questionSpecificConfigsRendererCss","QuestionSpecificConfigsRenderer","handlerName","template","find","q","handlers","formQuestions","Paragraph","paragraphText","rows","maxRows","margin","SingleLineText","MultiLineText","Checkbox","RadioButton","DropdownSingleSelect","DropdownMultipleSelect","ListMultiSelect","FileUpload","ImageUpload","Signature","signatureRendererCss","SignatureRenderer","includeLocation","textInputRendererCss","TextInputRenderer","minCharacter","toString","mockEvent","target","maxCharacter"],"sources":["0"],"mappings":"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","ignoreList":[]}
@@ -1,2 +0,0 @@
1
- var e;(function(e){e[e["Hidden"]=1]="Hidden";e[e["SingleLineText"]=2]="SingleLineText";e[e["MultiLineText"]=3]="MultiLineText";e[e["Checkbox"]=4]="Checkbox";e[e["RadioButton"]=5]="RadioButton";e[e["DropdownSingleSelect"]=6]="DropdownSingleSelect";e[e["DropdownMultipleSelect"]=7]="DropdownMultipleSelect";e[e["ListMultiSelect"]=8]="ListMultiSelect";e[e["DateSelector"]=9]="DateSelector";e[e["TimeSelector"]=10]="TimeSelector";e[e["DateTimeSelector"]=11]="DateTimeSelector";e[e["FileUpload"]=12]="FileUpload";e[e["YesNo"]=13]="YesNo";e[e["Signature"]=14]="Signature";e[e["Tally"]=15]="Tally";e[e["Number"]=16]="Number";e[e["Paragraph"]=17]="Paragraph";e[e["ImageUpload"]=18]="ImageUpload"})(e||(e={}));var a;(function(e){e["Standard"]="1";e["FollowUp"]="2"})(a||(a={}));var t;(function(e){e["FormBuilderPageId"]="c77aa2c8-f8b8-41af-aa77-c8612fc918c1";e["FormRendererPageId"]="c696afbd-8d83-4f80-aaa1-9a3530a05a21"})(t||(t={}));export{t as U,a,e as b};
2
- //# sourceMappingURL=enums-BnKmfKJT.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"enums-BnKmfKJT.js","sources":["src/components/forms/udp-forms/utils/enums.ts"],"sourcesContent":["export enum UdpFormsFieldTypeEnum {\n Hidden = 1,\n SingleLineText = 2,\n MultiLineText = 3,\n Checkbox = 4,\n RadioButton = 5,\n DropdownSingleSelect = 6,\n DropdownMultipleSelect = 7,\n ListMultiSelect = 8,\n DateSelector = 9,\n TimeSelector = 10,\n DateTimeSelector = 11,\n FileUpload = 12,\n YesNo = 13,\n Signature = 14,\n Tally = 15,\n Number = 16,\n Paragraph = 17,\n ImageUpload = 18,\n}\n\nexport enum UdpFormsTypeEnum {\n Standard = '1',\n FollowUp = '2',\n}\n\nexport enum UdpFormsPageIdEnum {\n FormBuilderPageId = 'c77aa2c8-f8b8-41af-aa77-c8612fc918c1', \n FormRendererPageId = 'c696afbd-8d83-4f80-aaa1-9a3530a05a21', \n}"],"names":[],"mappings":"AAAY,IAAA;AAAZ,CAAA,UAAY,qBAAqB,EAAA;IAC/B,qBAAA,CAAA,qBAAA,CAAA,QAAA,CAAA,GAAA,CAAA,CAAA,GAAA,QAAU;IACV,qBAAA,CAAA,qBAAA,CAAA,gBAAA,CAAA,GAAA,CAAA,CAAA,GAAA,gBAAkB;IAClB,qBAAA,CAAA,qBAAA,CAAA,eAAA,CAAA,GAAA,CAAA,CAAA,GAAA,eAAiB;IACjB,qBAAA,CAAA,qBAAA,CAAA,UAAA,CAAA,GAAA,CAAA,CAAA,GAAA,UAAY;IACZ,qBAAA,CAAA,qBAAA,CAAA,aAAA,CAAA,GAAA,CAAA,CAAA,GAAA,aAAe;IACf,qBAAA,CAAA,qBAAA,CAAA,sBAAA,CAAA,GAAA,CAAA,CAAA,GAAA,sBAAwB;IACxB,qBAAA,CAAA,qBAAA,CAAA,wBAAA,CAAA,GAAA,CAAA,CAAA,GAAA,wBAA0B;IAC1B,qBAAA,CAAA,qBAAA,CAAA,iBAAA,CAAA,GAAA,CAAA,CAAA,GAAA,iBAAmB;IACnB,qBAAA,CAAA,qBAAA,CAAA,cAAA,CAAA,GAAA,CAAA,CAAA,GAAA,cAAgB;IAChB,qBAAA,CAAA,qBAAA,CAAA,cAAA,CAAA,GAAA,EAAA,CAAA,GAAA,cAAiB;IACjB,qBAAA,CAAA,qBAAA,CAAA,kBAAA,CAAA,GAAA,EAAA,CAAA,GAAA,kBAAqB;IACrB,qBAAA,CAAA,qBAAA,CAAA,YAAA,CAAA,GAAA,EAAA,CAAA,GAAA,YAAe;IACf,qBAAA,CAAA,qBAAA,CAAA,OAAA,CAAA,GAAA,EAAA,CAAA,GAAA,OAAU;IACV,qBAAA,CAAA,qBAAA,CAAA,WAAA,CAAA,GAAA,EAAA,CAAA,GAAA,WAAc;IACd,qBAAA,CAAA,qBAAA,CAAA,OAAA,CAAA,GAAA,EAAA,CAAA,GAAA,OAAU;IACV,qBAAA,CAAA,qBAAA,CAAA,QAAA,CAAA,GAAA,EAAA,CAAA,GAAA,QAAW;IACX,qBAAA,CAAA,qBAAA,CAAA,WAAA,CAAA,GAAA,EAAA,CAAA,GAAA,WAAc;IACd,qBAAA,CAAA,qBAAA,CAAA,aAAA,CAAA,GAAA,EAAA,CAAA,GAAA,aAAgB;AAClB,CAAC,EAnBW,qBAAqB,KAArB,qBAAqB,GAmBhC,EAAA,CAAA,CAAA;AAEW,IAAA;AAAZ,CAAA,UAAY,gBAAgB,EAAA;AAC1B,IAAA,gBAAA,CAAA,UAAA,CAAA,GAAA,GAAc;AACd,IAAA,gBAAA,CAAA,UAAA,CAAA,GAAA,GAAc;AAChB,CAAC,EAHW,gBAAgB,KAAhB,gBAAgB,GAG3B,EAAA,CAAA,CAAA;AAEW,IAAA;AAAZ,CAAA,UAAY,kBAAkB,EAAA;AAC5B,IAAA,kBAAA,CAAA,mBAAA,CAAA,GAAA,sCAA0D;AAC1D,IAAA,kBAAA,CAAA,oBAAA,CAAA,GAAA,sCAA2D;AAC7D,CAAC,EAHW,kBAAkB,KAAlB,kBAAkB,GAG7B,EAAA,CAAA,CAAA;;;;"}