udp-stencil-component-library 26.3.0-beta.2 → 26.3.0-beta.21

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 (701) hide show
  1. package/dist/cjs/add-map-feature-popup_4.cjs.entry.js +12 -12
  2. package/dist/cjs/address-search_6.cjs.entry.js +18 -18
  3. package/dist/cjs/advanced-search_12.cjs.entry.js +13 -13
  4. package/dist/cjs/ag-grid-base_63.cjs.entry.js +404 -164
  5. package/dist/cjs/ambient-template-grid.cjs.entry.js +16 -16
  6. package/dist/cjs/api-method-instance-grid.cjs.entry.js +2 -2
  7. package/dist/cjs/app-bar.cjs.entry.js +1 -1
  8. package/dist/cjs/chart-container_3.cjs.entry.js +2 -2
  9. package/dist/cjs/charts-theme-DmrbXz3l.js +386 -0
  10. package/dist/cjs/check-box.cjs.entry.js +2 -2
  11. package/dist/cjs/chip-section.cjs.entry.js +2 -2
  12. package/dist/cjs/date-time-renderer_9.cjs.entry.js +21 -21
  13. package/dist/cjs/feature-details-card_2.cjs.entry.js +5 -5
  14. package/dist/cjs/file-upload_2.cjs.entry.js +5 -5
  15. package/dist/cjs/filter-conditions_7.cjs.entry.js +5 -5
  16. package/dist/cjs/form-metadata-display_10.cjs.entry.js +8 -8
  17. package/dist/cjs/icon-grid.cjs.entry.js +1 -1
  18. package/dist/cjs/index-G1ccGqOs.js +44 -4
  19. package/dist/cjs/index.cjs.js +6 -154
  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/primary-action-header_2.cjs.entry.js +4 -4
  23. package/dist/cjs/question-configs-renderer_4.cjs.entry.js +15 -15
  24. package/dist/cjs/resource-timeline-calendar.cjs.entry.js +1 -1
  25. package/dist/cjs/resource-timeline-primary-bar.cjs.entry.js +3 -3
  26. package/dist/cjs/search-method-grid.cjs.entry.js +1 -1
  27. package/dist/cjs/server-side-grid.cjs.entry.js +1 -1
  28. package/dist/cjs/side-sheet-container.cjs.entry.js +1 -1
  29. package/dist/cjs/simple-card.cjs.entry.js +1 -1
  30. package/dist/cjs/slot-helpers-C-ntX3IL.js +11 -0
  31. package/dist/cjs/status-chip_2.cjs.entry.js +1 -1
  32. package/dist/cjs/stencil-chip.cjs.entry.js +2 -2
  33. package/dist/cjs/stencil-library.cjs.js +1 -1
  34. package/dist/cjs/stencil-toggle.cjs.entry.js +4 -4
  35. package/dist/cjs/text-field_2.cjs.entry.js +7 -7
  36. package/dist/cjs/theme-manager-vLJfQYn8.js +157 -0
  37. package/dist/cjs/udp-adornment.cjs.entry.js +1 -1
  38. package/dist/cjs/udp-advanced-search-builder.cjs.entry.js +7 -4
  39. package/dist/cjs/udp-ag-area-chart.cjs.entry.js +120 -0
  40. package/dist/cjs/{udp-bar-chart_4.cjs.entry.js → udp-ag-bar-chart_4.cjs.entry.js} +123 -44
  41. package/dist/cjs/udp-ag-bubble-chart.cjs.entry.js +120 -0
  42. package/dist/cjs/udp-ag-combo-chart.cjs.entry.js +120 -0
  43. package/dist/cjs/udp-ag-donut-chart.cjs.entry.js +118 -0
  44. package/dist/cjs/udp-ag-line-chart.cjs.entry.js +120 -0
  45. package/dist/cjs/udp-ag-pie-chart.cjs.entry.js +118 -0
  46. package/dist/cjs/udp-ag-scatter-chart.cjs.entry.js +120 -0
  47. package/dist/cjs/udp-attachment-item_2.cjs.entry.js +1 -1
  48. package/dist/cjs/udp-bar-chart.cjs.entry.js +41 -0
  49. package/dist/cjs/udp-calendar-base.cjs.entry.js +44 -71
  50. package/dist/cjs/udp-calendar-day.cjs.entry.js +1 -3
  51. package/dist/cjs/udp-calendar-month.cjs.entry.js +1 -3
  52. package/dist/cjs/udp-calendar-week.cjs.entry.js +1 -3
  53. package/dist/cjs/udp-calendar-year.cjs.entry.js +1 -3
  54. package/dist/cjs/udp-card-action-area.cjs.entry.js +1 -1
  55. package/dist/cjs/udp-card_6.cjs.entry.js +7 -7
  56. package/dist/cjs/udp-charts-example.cjs.entry.js +14 -1
  57. package/dist/cjs/udp-container-query-grid-item.cjs.entry.js +1 -1
  58. package/dist/cjs/udp-container-query-grid.cjs.entry.js +1 -1
  59. package/dist/cjs/udp-container-query.cjs.entry.js +2 -2
  60. package/dist/cjs/udp-container.cjs.entry.js +2 -2
  61. package/dist/cjs/udp-dynamic-container-with-menu.cjs.entry.js +1 -1
  62. package/dist/cjs/udp-dynamic-form.cjs.entry.js +1 -1
  63. package/dist/cjs/udp-fluent-file-input.cjs.entry.js +4 -4
  64. package/dist/cjs/udp-fluent-image.cjs.entry.js +1 -1
  65. package/dist/cjs/udp-fluent-inline-edit.cjs.entry.js +1 -1
  66. package/dist/cjs/udp-fluent-link.cjs.entry.js +1 -1
  67. package/dist/cjs/udp-fluent-location-input.cjs.entry.js +3 -3
  68. package/dist/cjs/udp-fluent-number-input.cjs.entry.js +99 -0
  69. package/dist/cjs/udp-fluent-signature-input.cjs.entry.js +4 -4
  70. package/dist/cjs/udp-forms-builder-style-override.cjs.entry.js +1 -1
  71. package/dist/cjs/udp-forms-follow-up-list-card.cjs.entry.js +2 -2
  72. package/dist/cjs/udp-forms-list-card.cjs.entry.js +4 -4
  73. package/dist/cjs/udp-forms-list.cjs.entry.js +1 -1
  74. package/dist/cjs/udp-forms-renderer.cjs.entry.js +1 -1
  75. package/dist/cjs/udp-kpi-card.cjs.entry.js +1 -1
  76. package/dist/cjs/udp-kpi-cards.cjs.entry.js +2 -2
  77. package/dist/cjs/udp-map.cjs.entry.js +3 -3
  78. package/dist/cjs/udp-menu.cjs.entry.js +1 -1
  79. package/dist/cjs/udp-page.cjs.entry.js +1 -1
  80. package/dist/cjs/udp-sankey-chart.cjs.entry.js +1 -1
  81. package/dist/cjs/udp-sidebar-layout.cjs.entry.js +67 -0
  82. package/dist/cjs/udp-skeleton-loading.cjs.entry.js +1 -1
  83. package/dist/cjs/udp-split-screen.cjs.entry.js +1 -1
  84. package/dist/cjs/udp-stepper-demo.cjs.entry.js +1 -1
  85. package/dist/cjs/udp-tab.cjs.entry.js +1 -1
  86. package/dist/cjs/udp-timeline-connector.cjs.entry.js +1 -1
  87. package/dist/cjs/udp-timeline-dot.cjs.entry.js +1 -1
  88. package/dist/cjs/udp-timeline-item.cjs.entry.js +2 -2
  89. package/dist/cjs/udp-timeline-separator.cjs.entry.js +1 -1
  90. package/dist/cjs/udp-timeline.cjs.entry.js +1 -1
  91. package/dist/cjs/udp-xy-chart.cjs.entry.js +1 -1
  92. package/dist/cjs/udp-xy-multi-series-chart.cjs.entry.js +1 -1
  93. package/dist/collection/collection-manifest.json +10 -0
  94. package/dist/collection/components/advanced-search-builder/udp-advanced-search-builder.js +7 -4
  95. package/dist/collection/components/calendar/udp-calendar-base.js +100 -77
  96. package/dist/collection/components/calendar/udp-calendar-day.js +10 -9
  97. package/dist/collection/components/calendar/udp-calendar-month.js +10 -9
  98. package/dist/collection/components/calendar/udp-calendar-week.js +10 -9
  99. package/dist/collection/components/calendar/udp-calendar-year.js +10 -9
  100. package/dist/collection/components/charts/chart-container/chart-container.js +7 -0
  101. package/dist/collection/components/charts/chart-kpi/chart-kpi.js +6 -1
  102. package/dist/collection/components/charts/charts-theme.js +380 -0
  103. package/dist/collection/components/charts/udp-ag-area-chart/udp-ag-area-chart.css +13 -0
  104. package/dist/collection/components/charts/udp-ag-area-chart/udp-ag-area-chart.js +312 -0
  105. package/dist/collection/components/charts/udp-ag-bar-chart/udp-ag-bar-chart.css +13 -0
  106. package/dist/collection/components/charts/udp-ag-bar-chart/udp-ag-bar-chart.js +302 -0
  107. package/dist/collection/components/charts/udp-ag-bubble-chart/udp-ag-bubble-chart.css +13 -0
  108. package/dist/collection/components/charts/udp-ag-bubble-chart/udp-ag-bubble-chart.js +308 -0
  109. package/dist/collection/components/charts/udp-ag-combo-chart/udp-ag-combo-chart.css +13 -0
  110. package/dist/collection/components/charts/udp-ag-combo-chart/udp-ag-combo-chart.js +320 -0
  111. package/dist/collection/components/charts/udp-ag-donut-chart/udp-ag-donut-chart.css +13 -0
  112. package/dist/collection/components/charts/udp-ag-donut-chart/udp-ag-donut-chart.js +309 -0
  113. package/dist/collection/components/charts/udp-ag-line-chart/udp-ag-line-chart.css +13 -0
  114. package/dist/collection/components/charts/udp-ag-line-chart/udp-ag-line-chart.js +314 -0
  115. package/dist/collection/components/charts/udp-ag-pie-chart/udp-ag-pie-chart.css +13 -0
  116. package/dist/collection/components/charts/udp-ag-pie-chart/udp-ag-pie-chart.js +310 -0
  117. package/dist/collection/components/charts/udp-ag-scatter-chart/udp-ag-scatter-chart.css +13 -0
  118. package/dist/collection/components/charts/udp-ag-scatter-chart/udp-ag-scatter-chart.js +314 -0
  119. package/dist/collection/components/charts/udp-bar-chart/udp-bar-chart.js +5 -1
  120. package/dist/collection/components/charts/udp-charts-example.js +15 -2
  121. package/dist/collection/components/charts/udp-distribution-chart/udp-distribution-chart.js +5 -1
  122. package/dist/collection/components/charts/udp-donut-chart/udp-donut-chart.js +5 -1
  123. package/dist/collection/components/charts/udp-line-chart/udp-line-chart.js +5 -1
  124. package/dist/collection/components/charts/udp-sankey-chart/udp-sankey-chart.js +6 -1
  125. package/dist/collection/components/charts/udp-xy-chart/udp-xy-chart.js +6 -1
  126. package/dist/collection/components/charts/udp-xy-multi-series-chart/udp-xy-multi-series-chart.js +5 -1
  127. package/dist/collection/components/data-display/adornment/udp-adornment/udp-adornment.js +1 -1
  128. package/dist/collection/components/data-display/badge/udp-badge.js +1 -1
  129. package/dist/collection/components/data-display/cards/udp-ambient-card/udp-ambient-card.js +1 -1
  130. package/dist/collection/components/data-display/cards/udp-card/udp-card-action-area/udp-card-action-area.js +1 -1
  131. package/dist/collection/components/data-display/cards/udp-card/udp-card-actions/udp-card-actions.js +1 -1
  132. package/dist/collection/components/data-display/cards/udp-card/udp-card-content/udp-card-content.js +1 -1
  133. package/dist/collection/components/data-display/cards/udp-card/udp-card-header/udp-card-header.js +1 -1
  134. package/dist/collection/components/data-display/cards/udp-card/udp-card-media/udp-card-media.js +1 -1
  135. package/dist/collection/components/data-display/cards/udp-card/udp-card.js +3 -3
  136. package/dist/collection/components/data-display/chips/stencil-chip/status-chip/status-chip.js +1 -1
  137. package/dist/collection/components/data-display/chips/stencil-chip/stencil-chip.js +2 -2
  138. package/dist/collection/components/data-display/chips/udp-chip.js +1 -1
  139. package/dist/collection/components/data-display/divider/udp-divider.js +1 -1
  140. package/dist/collection/components/data-display/empty-state-display/udp-empty-state-display.js +1 -1
  141. package/dist/collection/components/data-display/headers/udp-column-header.js +1 -1
  142. package/dist/collection/components/data-display/headers/udp-page-header/udp-page-header.js +1 -1
  143. package/dist/collection/components/data-display/hint-panel/hint-panel.js +1 -1
  144. package/dist/collection/components/data-display/kpi/kpi-list.js +1 -1
  145. package/dist/collection/components/data-display/kpi/udp-kpi-card.js +1 -1
  146. package/dist/collection/components/data-display/kpi/udp-kpi-cards.js +2 -2
  147. package/dist/collection/components/data-display/list-item/list-item.js +2 -2
  148. package/dist/collection/components/data-display/pop-over/udp-pop-over.js +1 -1
  149. package/dist/collection/components/data-display/pop-over-grid-action-header/udp-pop-over-grid-action-header.js +1 -1
  150. package/dist/collection/components/data-display/primary-action-header/primary-action-header.js +2 -2
  151. package/dist/collection/components/data-display/simple-card/simple-card.js +1 -1
  152. package/dist/collection/components/data-display/tool-tip/udp-ambient-tool-tip.js +2 -2
  153. package/dist/collection/components/data-display/tree/tree-list-item/search-item/search-list-item.js +1 -1
  154. package/dist/collection/components/data-display/udp-avatar/udp-avatar.js +1 -1
  155. package/dist/collection/components/dialogs/udp-dialog.js +1 -1
  156. package/dist/collection/components/drawers/udp-side-sheet/udp-side-sheet.js +9 -9
  157. package/dist/collection/components/feedback/udp-notification/alerts/upd-alert-banner.js +1 -1
  158. package/dist/collection/components/feedback/udp-notification/udp-notification.js +2 -2
  159. package/dist/collection/components/fluent-ui/autocomplete/udp-autocomplete.js +74 -13
  160. package/dist/collection/components/fluent-ui/avatar/udp-fluent-avatar.js +1 -1
  161. package/dist/collection/components/fluent-ui/badge/udp-fluent-badge.js +1 -1
  162. package/dist/collection/components/fluent-ui/button/udp-fluent-button.js +1 -1
  163. package/dist/collection/components/fluent-ui/card/udp-fluent-card.js +3 -3
  164. package/dist/collection/components/fluent-ui/checkbox/udp-fluent-checkbox.js +1 -1
  165. package/dist/collection/components/fluent-ui/compound-button/udp-compound-button.js +1 -1
  166. package/dist/collection/components/fluent-ui/counter-badge/udp-fluent-counter-badge.js +1 -1
  167. package/dist/collection/components/fluent-ui/date-input/udp-date-input.js +61 -11
  168. package/dist/collection/components/fluent-ui/date-time-input/udp-date-time-input.js +40 -3
  169. package/dist/collection/components/fluent-ui/dialog/udp-fluent-dialog.js +1 -1
  170. package/dist/collection/components/fluent-ui/divider/udp-fluent-divider.js +1 -1
  171. package/dist/collection/components/fluent-ui/drawer/udp-fluent-drawer.js +1 -1
  172. package/dist/collection/components/fluent-ui/dropdown/udp-fluent-dropdown.js +63 -12
  173. package/dist/collection/components/fluent-ui/file-input/udp-fluent-file-input.js +4 -4
  174. package/dist/collection/components/fluent-ui/icon/icon-grid/icon-grid.js +1 -1
  175. package/dist/collection/components/fluent-ui/icon-button/udp-fluent-icon-button.js +1 -1
  176. package/dist/collection/components/fluent-ui/image/udp-fluent-image.js +1 -1
  177. package/dist/collection/components/fluent-ui/inline-edit/udp-fluent-inline-edit.js +1 -1
  178. package/dist/collection/components/fluent-ui/link/udp-fluent-link.js +1 -1
  179. package/dist/collection/components/fluent-ui/location-input/udp-fluent-location-input.js +3 -3
  180. package/dist/collection/components/fluent-ui/message-bar/udp-message-bar.js +1 -1
  181. package/dist/collection/components/fluent-ui/number-input/udp-fluent-number-input.css +68 -0
  182. package/dist/collection/components/fluent-ui/number-input/udp-fluent-number-input.js +547 -0
  183. package/dist/collection/components/fluent-ui/progress-bar/udp-progress-bar.js +1 -1
  184. package/dist/collection/components/fluent-ui/radio-group/udp-fluent-radio-group.js +1 -1
  185. package/dist/collection/components/fluent-ui/search-input/udp-search-input.js +3 -3
  186. package/dist/collection/components/fluent-ui/signature-input/udp-fluent-signature-input.js +4 -4
  187. package/dist/collection/components/fluent-ui/slider/udp-slider.js +1 -1
  188. package/dist/collection/components/fluent-ui/spinner/udp-spinner.js +1 -1
  189. package/dist/collection/components/fluent-ui/switch/udp-fluent-switch.js +1 -1
  190. package/dist/collection/components/fluent-ui/tablist/udp-fluent-tablist.css +43 -10
  191. package/dist/collection/components/fluent-ui/text-input/udp-fluent-text-input.js +2 -2
  192. package/dist/collection/components/fluent-ui/textarea/udp-textarea.js +2 -2
  193. package/dist/collection/components/fluent-ui/time-input/udp-time-input.js +1 -1
  194. package/dist/collection/components/fluent-ui/toggle-button/udp-fluent-toggle-button.js +1 -1
  195. package/dist/collection/components/fluent-ui/tooltip/udp-tooltip.js +2 -2
  196. package/dist/collection/components/fluent-ui/tree/udp-tree.css +53 -0
  197. package/dist/collection/components/fluent-ui/tree/udp-tree.js +256 -4
  198. package/dist/collection/components/forms/dynamic-form/udp-dynamic-form.js +1 -1
  199. package/dist/collection/components/forms/edit-view-form/edit-view-form.js +2 -2
  200. package/dist/collection/components/forms/form/stencil-form.js +1 -1
  201. package/dist/collection/components/forms/save-view-form/save-view-form.js +2 -2
  202. package/dist/collection/components/forms/udp-forms/udp-forms-builder/forms-question-item/udp-forms-builder-question-item.js +2 -2
  203. package/dist/collection/components/forms/udp-forms/udp-forms-builder/udp-forms-builder-item/file-upload-renderer/file-upload-renderer.js +4 -4
  204. package/dist/collection/components/forms/udp-forms/udp-forms-builder/udp-forms-builder-item/form-metadata-display-renderer/form-metadata-display-renderer.js +3 -3
  205. package/dist/collection/components/forms/udp-forms/udp-forms-builder/udp-forms-builder-item/list-option-renderer/list-options-renderer.js +3 -3
  206. package/dist/collection/components/forms/udp-forms/udp-forms-builder/udp-forms-builder-item/location-renderer/location-renderer.js +6 -6
  207. package/dist/collection/components/forms/udp-forms/udp-forms-builder/udp-forms-builder-item/question-configs-renderer/question-configs-renderer.js +7 -7
  208. package/dist/collection/components/forms/udp-forms/udp-forms-builder/udp-forms-builder-item/section-configs-renderer/section-configs-renderer.js +4 -4
  209. package/dist/collection/components/forms/udp-forms/udp-forms-builder/udp-forms-builder-item/signature-renderer/signature-renderer.js +1 -1
  210. package/dist/collection/components/forms/udp-forms/udp-forms-builder/udp-forms-builder-item/table-columns-renderer/table-columns-renderer.js +2 -2
  211. package/dist/collection/components/forms/udp-forms/udp-forms-builder/udp-forms-builder-item/text-input-renderer/text-input-renderer.js +2 -2
  212. package/dist/collection/components/forms/udp-forms/udp-forms-builder/udp-forms-builder-menu/udp-forms-builder-menu.js +2 -2
  213. package/dist/collection/components/forms/udp-forms/udp-forms-builder/udp-forms-builder-style-override/udp-forms-builder-style-override.js +1 -1
  214. package/dist/collection/components/forms/udp-forms/udp-forms-list/udp-forms-list-card/udp-forms-list-card.js +4 -4
  215. package/dist/collection/components/forms/udp-forms/udp-forms-list/udp-forms-list.js +1 -1
  216. 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
  217. package/dist/collection/components/forms/udp-forms/udp-forms-renderer/udp-forms-renderer.js +1 -1
  218. package/dist/collection/components/forms/udp-forms/udp-question/table-input/table-input.js +1 -1
  219. package/dist/collection/components/grid/ambient-template-grid/ambient-template-grid.js +16 -16
  220. package/dist/collection/components/grid/grid-primary-bar/grid-primary-bar.js +2 -2
  221. package/dist/collection/components/grid/hotlists/udp-hotlist-form/udp-hotlist-form.js +1 -1
  222. package/dist/collection/components/grid/new-grid/ag-grid-base.js +1 -1
  223. package/dist/collection/components/grid/new-grid/api-method-instance-grid.js +2 -2
  224. package/dist/collection/components/grid/new-grid/client-side-grid.js +1 -1
  225. package/dist/collection/components/grid/new-grid/gridFunctions/bulkActions.js +45 -6
  226. package/dist/collection/components/grid/new-grid/search-method-grid.js +1 -1
  227. package/dist/collection/components/grid/new-grid/server-side-grid.js +1 -1
  228. package/dist/collection/components/grid/resource-timeline-calendar/resource-timeline-calendar.js +1 -1
  229. package/dist/collection/components/grid/resource-timeline-calendar/resource-timeline-primary-bar.js +3 -3
  230. package/dist/collection/components/inputs/address-search/address-search.js +3 -3
  231. package/dist/collection/components/inputs/checkbox/check-box.js +2 -2
  232. package/dist/collection/components/inputs/date-range-selector/udp-date-range-selector.js +2 -2
  233. package/dist/collection/components/inputs/date-selector/udp-date-selector.js +3 -3
  234. package/dist/collection/components/inputs/date-time-selector/udp-datetime-selector.js +3 -3
  235. package/dist/collection/components/inputs/file-upload/file-upload.js +4 -4
  236. package/dist/collection/components/inputs/form metadata display/form-metadata-display.js +1 -1
  237. package/dist/collection/components/inputs/image-upload/image-upload.js +1 -1
  238. package/dist/collection/components/inputs/numeric-field/numeric-field.js +3 -3
  239. package/dist/collection/components/inputs/signature-input/signature-input.js +2 -2
  240. package/dist/collection/components/inputs/tally/tally.js +2 -2
  241. package/dist/collection/components/inputs/text-area/text-area.js +3 -3
  242. package/dist/collection/components/inputs/text-field/text-field.js +3 -3
  243. package/dist/collection/components/inputs/time-selector/udp-time-selector.js +3 -3
  244. package/dist/collection/components/inputs/toggle/stencil-toggle.js +4 -4
  245. package/dist/collection/components/inputs/udp-selector/udp-selector.js +4 -4
  246. package/dist/collection/components/layout/udp-container/udp-container.js +2 -2
  247. package/dist/collection/components/layout/udp-container-query/udp-container-query.js +2 -2
  248. package/dist/collection/components/layout/udp-container-query-grid/udp-container-query-grid.js +1 -1
  249. package/dist/collection/components/layout/udp-container-query-grid-item/udp-container-query-grid-item.js +1 -1
  250. package/dist/collection/components/layout/udp-page/udp-page.js +1 -1
  251. package/dist/collection/components/layout/udp-sidebar-layout/udp-sidebar-layout.css +139 -0
  252. package/dist/collection/components/layout/udp-sidebar-layout/udp-sidebar-layout.js +264 -0
  253. package/dist/collection/components/layout/udp-split-screen/udp-split-screen.js +1 -1
  254. package/dist/collection/components/loaders/udp-grid-loader/udp-grid-loader.js +2 -2
  255. package/dist/collection/components/loaders/udp-linear-loader/udp-linear-loader.js +1 -1
  256. package/dist/collection/components/loaders/udp-skeleton-loading.js +1 -1
  257. package/dist/collection/components/map/udp-map/map-component.js +1 -1
  258. package/dist/collection/components/map/udp-map/popups/add-map-feature-popup.js +3 -3
  259. package/dist/collection/components/map/udp-map/popups/feature-details-card/feature-details-card.js +4 -4
  260. package/dist/collection/components/map/udp-map/popups/feature-details-popup.js +1 -1
  261. package/dist/collection/components/map/udp-map/popups/select-layer-popup.js +2 -2
  262. package/dist/collection/components/map/udp-map/popups/split-line-popup.js +1 -1
  263. package/dist/collection/components/map/udp-map/toolbar/map-toolbar.js +6 -6
  264. package/dist/collection/components/map/udp-map/udp-map-toolbar.js +1 -1
  265. package/dist/collection/components/map/udp-map/udp-map.js +3 -3
  266. package/dist/collection/components/menu/menu-item/udp-menu-item.js +1 -1
  267. package/dist/collection/components/menu/udp-menu.js +1 -1
  268. package/dist/collection/components/new-form/field/udp-field.js +1 -1
  269. package/dist/collection/components/new-form/form/udp-form-component.js +2 -2
  270. package/dist/collection/components/stepper/udp-stepper-demo.js +1 -1
  271. package/dist/collection/components/tabs/tab/tabs/udp-tabs.js +2 -2
  272. package/dist/collection/components/tabs/tab/udp-tab.js +1 -1
  273. package/dist/collection/components/tabs/udp-tab-panel/udp-tab-panel.js +1 -1
  274. package/dist/collection/components/timeline/udp-timeline-connector.js +1 -1
  275. package/dist/collection/components/timeline/udp-timeline-dot.js +1 -1
  276. package/dist/collection/components/timeline/udp-timeline-item.js +2 -2
  277. package/dist/collection/components/timeline/udp-timeline-separator.js +1 -1
  278. package/dist/collection/components/timeline/udp-timeline.js +1 -1
  279. package/dist/collection/components/toolbars/app-bar/app-bar.js +1 -1
  280. package/dist/collection/components/util/ghost-render/ghost-render.js +1 -1
  281. package/dist/collection/components/util/lazy-loader/udp-lazy-loader.js +1 -1
  282. package/dist/collection/deprecated/components/side-sheet/side-sheet-container.js +1 -1
  283. package/dist/collection/deprecated/components/side-sheet/side-sheet.js +1 -1
  284. package/dist/collection/test-pages/test-components-page.js +28 -28
  285. package/dist/collection/test-pages/test-form.js +4 -4
  286. package/dist/collection/theme/ag-grid-theme-bridge.js +1 -1
  287. package/dist/collection/udp-utilities/layout/udp-dynamic-container-with-menu/chip-section/chip-section.js +2 -2
  288. package/dist/collection/udp-utilities/layout/udp-dynamic-container-with-menu/udp-dynamic-container-with-menu.js +1 -1
  289. package/dist/components/add-map-feature-popup2.js +1 -1
  290. package/dist/components/address-search2.js +1 -1
  291. package/dist/components/ag-grid-base2.js +1 -1
  292. package/dist/components/ambient-template-grid.js +1 -1
  293. package/dist/components/api-method-instance-grid.js +1 -1
  294. package/dist/components/app-bar.js +1 -1
  295. package/dist/components/chart-kpi2.js +1 -1
  296. package/dist/components/charts-theme.js +1 -0
  297. package/dist/components/check-box.js +1 -1
  298. package/dist/components/chip-section.js +1 -1
  299. package/dist/components/client-side-grid2.js +1 -1
  300. package/dist/components/edit-view-form.js +1 -1
  301. package/dist/components/feature-details-card2.js +1 -1
  302. package/dist/components/feature-details-popup2.js +1 -1
  303. package/dist/components/file-upload-renderer2.js +1 -1
  304. package/dist/components/file-upload2.js +1 -1
  305. package/dist/components/form-metadata-display-renderer2.js +1 -1
  306. package/dist/components/form-metadata-display2.js +1 -1
  307. package/dist/components/ghost-render2.js +1 -1
  308. package/dist/components/grid-primary-bar2.js +1 -1
  309. package/dist/components/hint-panel2.js +1 -1
  310. package/dist/components/icon-grid.js +1 -1
  311. package/dist/components/image-upload2.js +1 -1
  312. package/dist/components/index.js +1 -1
  313. package/dist/components/kpi-list2.js +1 -1
  314. package/dist/components/list-item.js +1 -1
  315. package/dist/components/list-options-renderer2.js +1 -1
  316. package/dist/components/location-renderer2.js +1 -1
  317. package/dist/components/map-component2.js +1 -1
  318. package/dist/components/map-toolbar2.js +1 -1
  319. package/dist/components/numeric-field2.js +1 -1
  320. package/dist/components/primary-action-header2.js +1 -1
  321. package/dist/components/question-configs-renderer2.js +1 -1
  322. package/dist/components/resource-timeline-calendar.js +1 -1
  323. package/dist/components/resource-timeline-primary-bar2.js +1 -1
  324. package/dist/components/save-view-form.js +1 -1
  325. package/dist/components/search-list-item2.js +1 -1
  326. package/dist/components/search-method-grid2.js +1 -1
  327. package/dist/components/section-configs-renderer2.js +1 -1
  328. package/dist/components/select-layer-popup2.js +1 -1
  329. package/dist/components/server-side-grid2.js +1 -1
  330. package/dist/components/side-sheet-container2.js +1 -1
  331. package/dist/components/side-sheet2.js +1 -1
  332. package/dist/components/signature-input2.js +1 -1
  333. package/dist/components/signature-renderer2.js +1 -1
  334. package/dist/components/simple-card.js +1 -1
  335. package/dist/components/split-line-popup2.js +1 -1
  336. package/dist/components/status-chip2.js +1 -1
  337. package/dist/components/stencil-chip2.js +1 -1
  338. package/dist/components/stencil-form2.js +1 -1
  339. package/dist/components/stencil-toggle2.js +1 -1
  340. package/dist/components/table-columns-renderer2.js +1 -1
  341. package/dist/components/table-input2.js +1 -1
  342. package/dist/components/tally.js +1 -1
  343. package/dist/components/test-components-page.js +1 -1
  344. package/dist/components/test-form2.js +1 -1
  345. package/dist/components/text-area2.js +1 -1
  346. package/dist/components/text-field2.js +1 -1
  347. package/dist/components/text-input-renderer2.js +1 -1
  348. package/dist/components/theme-manager.js +1 -0
  349. package/dist/components/udp-adornment2.js +1 -1
  350. package/dist/components/udp-advanced-search-builder.js +1 -1
  351. package/dist/components/udp-ag-area-chart.d.ts +11 -0
  352. package/dist/components/udp-ag-area-chart.js +2 -0
  353. package/dist/components/udp-ag-bar-chart.d.ts +11 -0
  354. package/dist/components/udp-ag-bar-chart.js +2 -0
  355. package/dist/components/udp-ag-bar-chart2.js +1 -0
  356. package/dist/components/udp-ag-bubble-chart.d.ts +11 -0
  357. package/dist/components/udp-ag-bubble-chart.js +2 -0
  358. package/dist/components/udp-ag-combo-chart.d.ts +11 -0
  359. package/dist/components/udp-ag-combo-chart.js +2 -0
  360. package/dist/components/udp-ag-donut-chart.d.ts +11 -0
  361. package/dist/components/udp-ag-donut-chart.js +2 -0
  362. package/dist/components/udp-ag-line-chart.d.ts +11 -0
  363. package/dist/components/udp-ag-line-chart.js +2 -0
  364. package/dist/components/udp-ag-pie-chart.d.ts +11 -0
  365. package/dist/components/udp-ag-pie-chart.js +2 -0
  366. package/dist/components/udp-ag-scatter-chart.d.ts +11 -0
  367. package/dist/components/udp-ag-scatter-chart.js +2 -0
  368. package/dist/components/udp-ambient-card2.js +1 -1
  369. package/dist/components/udp-ambient-tool-tip2.js +1 -1
  370. package/dist/components/udp-autocomplete2.js +1 -1
  371. package/dist/components/udp-avatar2.js +1 -1
  372. package/dist/components/udp-badge2.js +1 -1
  373. package/dist/components/udp-bar-chart.js +1 -1
  374. package/dist/components/udp-calendar-base2.js +1 -1
  375. package/dist/components/udp-calendar-day.js +1 -1
  376. package/dist/components/udp-calendar-month.js +1 -1
  377. package/dist/components/udp-calendar-week.js +1 -1
  378. package/dist/components/udp-calendar-year.js +1 -1
  379. package/dist/components/udp-card-action-area.js +1 -1
  380. package/dist/components/udp-card-actions2.js +1 -1
  381. package/dist/components/udp-card-content2.js +1 -1
  382. package/dist/components/udp-card-header2.js +1 -1
  383. package/dist/components/udp-card-media2.js +1 -1
  384. package/dist/components/udp-card2.js +1 -1
  385. package/dist/components/udp-charts-example.js +1 -1
  386. package/dist/components/udp-chip2.js +1 -1
  387. package/dist/components/udp-column-header2.js +1 -1
  388. package/dist/components/udp-compound-button2.js +1 -1
  389. package/dist/components/udp-container-query-grid-item.js +1 -1
  390. package/dist/components/udp-container-query-grid.js +1 -1
  391. package/dist/components/udp-container-query2.js +1 -1
  392. package/dist/components/udp-container2.js +1 -1
  393. package/dist/components/udp-date-input2.js +1 -1
  394. package/dist/components/udp-date-range-selector2.js +1 -1
  395. package/dist/components/udp-date-selector2.js +1 -1
  396. package/dist/components/udp-date-time-input2.js +1 -1
  397. package/dist/components/udp-datetime-selector2.js +1 -1
  398. package/dist/components/udp-dialog2.js +1 -1
  399. package/dist/components/udp-distribution-chart2.js +1 -1
  400. package/dist/components/udp-divider2.js +1 -1
  401. package/dist/components/udp-donut-chart2.js +1 -1
  402. package/dist/components/udp-dynamic-container-with-menu2.js +1 -1
  403. package/dist/components/udp-dynamic-form.js +1 -1
  404. package/dist/components/udp-empty-state-display2.js +1 -1
  405. package/dist/components/udp-field2.js +1 -1
  406. package/dist/components/udp-fluent-avatar2.js +1 -1
  407. package/dist/components/udp-fluent-badge2.js +1 -1
  408. package/dist/components/udp-fluent-button2.js +1 -1
  409. package/dist/components/udp-fluent-card2.js +1 -1
  410. package/dist/components/udp-fluent-checkbox2.js +1 -1
  411. package/dist/components/udp-fluent-counter-badge2.js +1 -1
  412. package/dist/components/udp-fluent-dialog2.js +1 -1
  413. package/dist/components/udp-fluent-divider2.js +1 -1
  414. package/dist/components/udp-fluent-drawer2.js +1 -1
  415. package/dist/components/udp-fluent-dropdown2.js +1 -1
  416. package/dist/components/udp-fluent-file-input.js +1 -1
  417. package/dist/components/udp-fluent-icon-button2.js +1 -1
  418. package/dist/components/udp-fluent-image.js +1 -1
  419. package/dist/components/udp-fluent-inline-edit.js +1 -1
  420. package/dist/components/udp-fluent-link.js +1 -1
  421. package/dist/components/udp-fluent-location-input.js +1 -1
  422. package/dist/components/udp-fluent-number-input.d.ts +11 -0
  423. package/dist/components/udp-fluent-number-input.js +2 -0
  424. package/dist/components/udp-fluent-radio-group2.js +1 -1
  425. package/dist/components/udp-fluent-signature-input.js +1 -1
  426. package/dist/components/udp-fluent-switch2.js +1 -1
  427. package/dist/components/udp-fluent-tablist2.js +1 -1
  428. package/dist/components/udp-fluent-text-input2.js +1 -1
  429. package/dist/components/udp-fluent-toggle-button2.js +1 -1
  430. package/dist/components/udp-form-component2.js +1 -1
  431. package/dist/components/udp-forms-builder-menu2.js +1 -1
  432. package/dist/components/udp-forms-builder-question-item2.js +1 -1
  433. package/dist/components/udp-forms-builder-style-override.js +1 -1
  434. package/dist/components/udp-forms-follow-up-list-card.js +1 -1
  435. package/dist/components/udp-forms-list-card2.js +1 -1
  436. package/dist/components/udp-forms-list.js +1 -1
  437. package/dist/components/udp-forms-renderer.js +1 -1
  438. package/dist/components/udp-grid-loader2.js +1 -1
  439. package/dist/components/udp-hotlist-form2.js +1 -1
  440. package/dist/components/udp-kpi-card2.js +1 -1
  441. package/dist/components/udp-kpi-cards.js +1 -1
  442. package/dist/components/udp-lazy-loader2.js +1 -1
  443. package/dist/components/udp-line-chart2.js +1 -1
  444. package/dist/components/udp-linear-loader2.js +1 -1
  445. package/dist/components/udp-map-toolbar2.js +1 -1
  446. package/dist/components/udp-map.js +1 -1
  447. package/dist/components/udp-menu-item2.js +1 -1
  448. package/dist/components/udp-menu.js +1 -1
  449. package/dist/components/udp-message-bar2.js +1 -1
  450. package/dist/components/udp-notification2.js +1 -1
  451. package/dist/components/udp-page-header2.js +1 -1
  452. package/dist/components/udp-page.js +1 -1
  453. package/dist/components/udp-pop-over-grid-action-header2.js +1 -1
  454. package/dist/components/udp-pop-over2.js +1 -1
  455. package/dist/components/udp-progress-bar2.js +1 -1
  456. package/dist/components/udp-sankey-chart.js +1 -1
  457. package/dist/components/udp-search-input2.js +1 -1
  458. package/dist/components/udp-selector2.js +1 -1
  459. package/dist/components/udp-side-sheet2.js +1 -1
  460. package/dist/components/udp-sidebar-layout.d.ts +11 -0
  461. package/dist/components/udp-sidebar-layout.js +2 -0
  462. package/dist/components/udp-skeleton-loading2.js +1 -1
  463. package/dist/components/udp-slider2.js +1 -1
  464. package/dist/components/udp-spinner2.js +1 -1
  465. package/dist/components/udp-split-screen.js +1 -1
  466. package/dist/components/udp-stepper-demo.js +1 -1
  467. package/dist/components/udp-tab-panel2.js +1 -1
  468. package/dist/components/udp-tab.js +1 -1
  469. package/dist/components/udp-tabs2.js +1 -1
  470. package/dist/components/udp-textarea2.js +1 -1
  471. package/dist/components/udp-time-input2.js +1 -1
  472. package/dist/components/udp-time-selector2.js +1 -1
  473. package/dist/components/udp-timeline-connector.js +1 -1
  474. package/dist/components/udp-timeline-dot.js +1 -1
  475. package/dist/components/udp-timeline-item.js +1 -1
  476. package/dist/components/udp-timeline-separator.js +1 -1
  477. package/dist/components/udp-timeline.js +1 -1
  478. package/dist/components/udp-tooltip2.js +1 -1
  479. package/dist/components/udp-tree2.js +1 -1
  480. package/dist/components/udp-xy-chart2.js +1 -1
  481. package/dist/components/udp-xy-multi-series-chart.js +1 -1
  482. package/dist/components/upd-alert-banner2.js +1 -1
  483. package/dist/docs.json +13789 -10151
  484. package/dist/esm/add-map-feature-popup_4.entry.js +12 -12
  485. package/dist/esm/address-search_6.entry.js +18 -18
  486. package/dist/esm/advanced-search_12.entry.js +13 -13
  487. package/dist/esm/ag-grid-base_63.entry.js +388 -148
  488. package/dist/esm/ambient-template-grid.entry.js +16 -16
  489. package/dist/esm/api-method-instance-grid.entry.js +2 -2
  490. package/dist/esm/app-bar.entry.js +1 -1
  491. package/dist/esm/chart-container_3.entry.js +2 -2
  492. package/dist/esm/charts-theme-B2HoYVMf.js +383 -0
  493. package/dist/esm/check-box.entry.js +2 -2
  494. package/dist/esm/chip-section.entry.js +2 -2
  495. package/dist/esm/date-time-renderer_9.entry.js +21 -21
  496. package/dist/esm/feature-details-card_2.entry.js +5 -5
  497. package/dist/esm/file-upload_2.entry.js +5 -5
  498. package/dist/esm/filter-conditions_7.entry.js +5 -5
  499. package/dist/esm/form-metadata-display_10.entry.js +8 -8
  500. package/dist/esm/icon-grid.entry.js +1 -1
  501. package/dist/esm/index-Cgpvu-iV.js +44 -4
  502. package/dist/esm/index.js +4 -152
  503. package/dist/esm/loader.js +1 -1
  504. package/dist/esm/map-component_2.entry.js +2 -2
  505. package/dist/esm/primary-action-header_2.entry.js +4 -4
  506. package/dist/esm/question-configs-renderer_4.entry.js +15 -15
  507. package/dist/esm/resource-timeline-calendar.entry.js +1 -1
  508. package/dist/esm/resource-timeline-primary-bar.entry.js +3 -3
  509. package/dist/esm/search-method-grid.entry.js +1 -1
  510. package/dist/esm/server-side-grid.entry.js +1 -1
  511. package/dist/esm/side-sheet-container.entry.js +1 -1
  512. package/dist/esm/simple-card.entry.js +1 -1
  513. package/dist/esm/slot-helpers-Dx6EW-PP.js +9 -0
  514. package/dist/esm/status-chip_2.entry.js +1 -1
  515. package/dist/esm/stencil-chip.entry.js +2 -2
  516. package/dist/esm/stencil-library.js +1 -1
  517. package/dist/esm/stencil-toggle.entry.js +4 -4
  518. package/dist/esm/text-field_2.entry.js +7 -7
  519. package/dist/esm/theme-manager-DeVqiL0i.js +153 -0
  520. package/dist/esm/udp-adornment.entry.js +1 -1
  521. package/dist/esm/udp-advanced-search-builder.entry.js +7 -4
  522. package/dist/esm/udp-ag-area-chart.entry.js +118 -0
  523. package/dist/esm/{udp-bar-chart_4.entry.js → udp-ag-bar-chart_4.entry.js} +110 -31
  524. package/dist/esm/udp-ag-bubble-chart.entry.js +118 -0
  525. package/dist/esm/udp-ag-combo-chart.entry.js +118 -0
  526. package/dist/esm/udp-ag-donut-chart.entry.js +116 -0
  527. package/dist/esm/udp-ag-line-chart.entry.js +118 -0
  528. package/dist/esm/udp-ag-pie-chart.entry.js +116 -0
  529. package/dist/esm/udp-ag-scatter-chart.entry.js +118 -0
  530. package/dist/esm/udp-attachment-item_2.entry.js +1 -1
  531. package/dist/esm/udp-bar-chart.entry.js +39 -0
  532. package/dist/esm/udp-calendar-base.entry.js +44 -71
  533. package/dist/esm/udp-calendar-day.entry.js +1 -3
  534. package/dist/esm/udp-calendar-month.entry.js +1 -3
  535. package/dist/esm/udp-calendar-week.entry.js +1 -3
  536. package/dist/esm/udp-calendar-year.entry.js +1 -3
  537. package/dist/esm/udp-card-action-area.entry.js +1 -1
  538. package/dist/esm/udp-card_6.entry.js +7 -7
  539. package/dist/esm/udp-charts-example.entry.js +14 -1
  540. package/dist/esm/udp-container-query-grid-item.entry.js +1 -1
  541. package/dist/esm/udp-container-query-grid.entry.js +1 -1
  542. package/dist/esm/udp-container-query.entry.js +2 -2
  543. package/dist/esm/udp-container.entry.js +2 -2
  544. package/dist/esm/udp-dynamic-container-with-menu.entry.js +1 -1
  545. package/dist/esm/udp-dynamic-form.entry.js +1 -1
  546. package/dist/esm/udp-fluent-file-input.entry.js +4 -4
  547. package/dist/esm/udp-fluent-image.entry.js +1 -1
  548. package/dist/esm/udp-fluent-inline-edit.entry.js +1 -1
  549. package/dist/esm/udp-fluent-link.entry.js +1 -1
  550. package/dist/esm/udp-fluent-location-input.entry.js +3 -3
  551. package/dist/esm/udp-fluent-number-input.entry.js +97 -0
  552. package/dist/esm/udp-fluent-signature-input.entry.js +4 -4
  553. package/dist/esm/udp-forms-builder-style-override.entry.js +1 -1
  554. package/dist/esm/udp-forms-follow-up-list-card.entry.js +2 -2
  555. package/dist/esm/udp-forms-list-card.entry.js +4 -4
  556. package/dist/esm/udp-forms-list.entry.js +1 -1
  557. package/dist/esm/udp-forms-renderer.entry.js +1 -1
  558. package/dist/esm/udp-kpi-card.entry.js +1 -1
  559. package/dist/esm/udp-kpi-cards.entry.js +2 -2
  560. package/dist/esm/udp-map.entry.js +3 -3
  561. package/dist/esm/udp-menu.entry.js +1 -1
  562. package/dist/esm/udp-page.entry.js +1 -1
  563. package/dist/esm/udp-sankey-chart.entry.js +1 -1
  564. package/dist/esm/udp-sidebar-layout.entry.js +65 -0
  565. package/dist/esm/udp-skeleton-loading.entry.js +1 -1
  566. package/dist/esm/udp-split-screen.entry.js +1 -1
  567. package/dist/esm/udp-stepper-demo.entry.js +1 -1
  568. package/dist/esm/udp-tab.entry.js +1 -1
  569. package/dist/esm/udp-timeline-connector.entry.js +1 -1
  570. package/dist/esm/udp-timeline-dot.entry.js +1 -1
  571. package/dist/esm/udp-timeline-item.entry.js +2 -2
  572. package/dist/esm/udp-timeline-separator.entry.js +1 -1
  573. package/dist/esm/udp-timeline.entry.js +1 -1
  574. package/dist/esm/udp-xy-chart.entry.js +1 -1
  575. package/dist/esm/udp-xy-multi-series-chart.entry.js +1 -1
  576. package/dist/stencil-library/add-map-feature-popup_4.entry.js +1 -1
  577. package/dist/stencil-library/address-search_6.entry.js +1 -1
  578. package/dist/stencil-library/advanced-search_12.entry.js +1 -1
  579. package/dist/stencil-library/ag-grid-base_63.entry.js +1 -1
  580. package/dist/stencil-library/ambient-template-grid.entry.js +1 -1
  581. package/dist/stencil-library/api-method-instance-grid.entry.js +1 -1
  582. package/dist/stencil-library/app-bar.entry.js +1 -1
  583. package/dist/stencil-library/chart-container_3.entry.js +1 -1
  584. package/dist/stencil-library/charts-theme-B2HoYVMf.js +1 -0
  585. package/dist/stencil-library/check-box.entry.js +1 -1
  586. package/dist/stencil-library/chip-section.entry.js +1 -1
  587. package/dist/stencil-library/date-time-renderer_9.entry.js +1 -1
  588. package/dist/stencil-library/feature-details-card_2.entry.js +1 -1
  589. package/dist/stencil-library/file-upload_2.entry.js +1 -1
  590. package/dist/stencil-library/filter-conditions_7.entry.js +1 -1
  591. package/dist/stencil-library/form-metadata-display_10.entry.js +1 -1
  592. package/dist/stencil-library/icon-grid.entry.js +1 -1
  593. package/dist/stencil-library/index.esm.js +1 -1
  594. package/dist/stencil-library/map-component_2.entry.js +1 -1
  595. package/dist/stencil-library/primary-action-header_2.entry.js +1 -1
  596. package/dist/stencil-library/question-configs-renderer_4.entry.js +1 -1
  597. package/dist/stencil-library/resource-timeline-calendar.entry.js +1 -1
  598. package/dist/stencil-library/resource-timeline-primary-bar.entry.js +1 -1
  599. package/dist/stencil-library/search-method-grid.entry.js +1 -1
  600. package/dist/stencil-library/server-side-grid.entry.js +1 -1
  601. package/dist/stencil-library/side-sheet-container.entry.js +1 -1
  602. package/dist/stencil-library/simple-card.entry.js +1 -1
  603. package/dist/stencil-library/slot-helpers-Dx6EW-PP.js +1 -0
  604. package/dist/stencil-library/status-chip_2.entry.js +1 -1
  605. package/dist/stencil-library/stencil-chip.entry.js +1 -1
  606. package/dist/stencil-library/stencil-library.esm.js +1 -1
  607. package/dist/stencil-library/stencil-toggle.entry.js +1 -1
  608. package/dist/stencil-library/text-field_2.entry.js +1 -1
  609. package/dist/stencil-library/theme-manager-DeVqiL0i.js +1 -0
  610. package/dist/stencil-library/udp-adornment.entry.js +1 -1
  611. package/dist/stencil-library/udp-advanced-search-builder.entry.js +1 -1
  612. package/dist/stencil-library/udp-ag-area-chart.entry.js +1 -0
  613. package/dist/stencil-library/udp-ag-bar-chart_4.entry.js +1 -0
  614. package/dist/stencil-library/udp-ag-bubble-chart.entry.js +1 -0
  615. package/dist/stencil-library/udp-ag-combo-chart.entry.js +1 -0
  616. package/dist/stencil-library/udp-ag-donut-chart.entry.js +1 -0
  617. package/dist/stencil-library/udp-ag-line-chart.entry.js +1 -0
  618. package/dist/stencil-library/udp-ag-pie-chart.entry.js +1 -0
  619. package/dist/stencil-library/udp-ag-scatter-chart.entry.js +1 -0
  620. package/dist/stencil-library/udp-attachment-item_2.entry.js +1 -1
  621. package/dist/stencil-library/udp-bar-chart.entry.js +1 -0
  622. package/dist/stencil-library/udp-calendar-base.entry.js +1 -1
  623. package/dist/stencil-library/udp-calendar-day.entry.js +1 -1
  624. package/dist/stencil-library/udp-calendar-month.entry.js +1 -1
  625. package/dist/stencil-library/udp-calendar-week.entry.js +1 -1
  626. package/dist/stencil-library/udp-calendar-year.entry.js +1 -1
  627. package/dist/stencil-library/udp-card-action-area.entry.js +1 -1
  628. package/dist/stencil-library/udp-card_6.entry.js +1 -1
  629. package/dist/stencil-library/udp-charts-example.entry.js +1 -1
  630. package/dist/stencil-library/udp-container-query-grid-item.entry.js +1 -1
  631. package/dist/stencil-library/udp-container-query-grid.entry.js +1 -1
  632. package/dist/stencil-library/udp-container-query.entry.js +1 -1
  633. package/dist/stencil-library/udp-container.entry.js +1 -1
  634. package/dist/stencil-library/udp-dynamic-container-with-menu.entry.js +1 -1
  635. package/dist/stencil-library/udp-dynamic-form.entry.js +1 -1
  636. package/dist/stencil-library/udp-fluent-file-input.entry.js +1 -1
  637. package/dist/stencil-library/udp-fluent-image.entry.js +1 -1
  638. package/dist/stencil-library/udp-fluent-inline-edit.entry.js +1 -1
  639. package/dist/stencil-library/udp-fluent-link.entry.js +1 -1
  640. package/dist/stencil-library/udp-fluent-location-input.entry.js +1 -1
  641. package/dist/stencil-library/udp-fluent-number-input.entry.js +1 -0
  642. package/dist/stencil-library/udp-fluent-signature-input.entry.js +1 -1
  643. package/dist/stencil-library/udp-forms-builder-style-override.entry.js +1 -1
  644. package/dist/stencil-library/udp-forms-follow-up-list-card.entry.js +1 -1
  645. package/dist/stencil-library/udp-forms-list-card.entry.js +1 -1
  646. package/dist/stencil-library/udp-forms-list.entry.js +1 -1
  647. package/dist/stencil-library/udp-forms-renderer.entry.js +1 -1
  648. package/dist/stencil-library/udp-kpi-card.entry.js +1 -1
  649. package/dist/stencil-library/udp-kpi-cards.entry.js +1 -1
  650. package/dist/stencil-library/udp-map.entry.js +1 -1
  651. package/dist/stencil-library/udp-menu.entry.js +1 -1
  652. package/dist/stencil-library/udp-page.entry.js +1 -1
  653. package/dist/stencil-library/udp-sankey-chart.entry.js +1 -1
  654. package/dist/stencil-library/udp-sidebar-layout.entry.js +1 -0
  655. package/dist/stencil-library/udp-skeleton-loading.entry.js +1 -1
  656. package/dist/stencil-library/udp-split-screen.entry.js +1 -1
  657. package/dist/stencil-library/udp-stepper-demo.entry.js +1 -1
  658. package/dist/stencil-library/udp-tab.entry.js +1 -1
  659. package/dist/stencil-library/udp-timeline-connector.entry.js +1 -1
  660. package/dist/stencil-library/udp-timeline-dot.entry.js +1 -1
  661. package/dist/stencil-library/udp-timeline-item.entry.js +1 -1
  662. package/dist/stencil-library/udp-timeline-separator.entry.js +1 -1
  663. package/dist/stencil-library/udp-timeline.entry.js +1 -1
  664. package/dist/stencil-library/udp-xy-chart.entry.js +1 -1
  665. package/dist/stencil-library/udp-xy-multi-series-chart.entry.js +1 -1
  666. package/dist/types/components/calendar/udp-calendar-base.d.ts +5 -2
  667. package/dist/types/components/calendar/udp-calendar-day.d.ts +1 -2
  668. package/dist/types/components/calendar/udp-calendar-month.d.ts +1 -2
  669. package/dist/types/components/calendar/udp-calendar-week.d.ts +1 -2
  670. package/dist/types/components/calendar/udp-calendar-year.d.ts +1 -2
  671. package/dist/types/components/charts/chart-container/chart-container.d.ts +7 -0
  672. package/dist/types/components/charts/chart-kpi/chart-kpi.d.ts +5 -0
  673. package/dist/types/components/charts/charts-theme.d.ts +80 -0
  674. package/dist/types/components/charts/udp-ag-area-chart/udp-ag-area-chart.d.ts +73 -0
  675. package/dist/types/components/charts/udp-ag-bar-chart/udp-ag-bar-chart.d.ts +62 -0
  676. package/dist/types/components/charts/udp-ag-bubble-chart/udp-ag-bubble-chart.d.ts +70 -0
  677. package/dist/types/components/charts/udp-ag-combo-chart/udp-ag-combo-chart.d.ts +83 -0
  678. package/dist/types/components/charts/udp-ag-donut-chart/udp-ag-donut-chart.d.ts +70 -0
  679. package/dist/types/components/charts/udp-ag-line-chart/udp-ag-line-chart.d.ts +75 -0
  680. package/dist/types/components/charts/udp-ag-pie-chart/udp-ag-pie-chart.d.ts +72 -0
  681. package/dist/types/components/charts/udp-ag-scatter-chart/udp-ag-scatter-chart.d.ts +76 -0
  682. package/dist/types/components/charts/udp-bar-chart/udp-bar-chart.d.ts +4 -0
  683. package/dist/types/components/charts/udp-charts-example.d.ts +1 -1
  684. package/dist/types/components/charts/udp-distribution-chart/udp-distribution-chart.d.ts +4 -0
  685. package/dist/types/components/charts/udp-donut-chart/udp-donut-chart.d.ts +4 -0
  686. package/dist/types/components/charts/udp-line-chart/udp-line-chart.d.ts +4 -0
  687. package/dist/types/components/charts/udp-sankey-chart/udp-sankey-chart.d.ts +5 -0
  688. package/dist/types/components/charts/udp-xy-chart/udp-xy-chart.d.ts +5 -0
  689. package/dist/types/components/charts/udp-xy-multi-series-chart/udp-xy-multi-series-chart.d.ts +4 -0
  690. package/dist/types/components/fluent-ui/autocomplete/udp-autocomplete.d.ts +39 -7
  691. package/dist/types/components/fluent-ui/date-input/udp-date-input.d.ts +15 -1
  692. package/dist/types/components/fluent-ui/date-time-input/udp-date-time-input.d.ts +10 -1
  693. package/dist/types/components/fluent-ui/dropdown/udp-fluent-dropdown.d.ts +33 -5
  694. package/dist/types/components/fluent-ui/number-input/udp-fluent-number-input.d.ts +66 -0
  695. package/dist/types/components/fluent-ui/tree/udp-tree.d.ts +78 -0
  696. package/dist/types/components/grid/new-grid/gridFunctions/bulkActions.d.ts +20 -0
  697. package/dist/types/components/layout/udp-sidebar-layout/udp-sidebar-layout.d.ts +54 -0
  698. package/dist/types/components.d.ts +1912 -76
  699. package/package.json +2 -1
  700. package/dist/components/udp-bar-chart2.js +0 -1
  701. package/dist/stencil-library/udp-bar-chart_4.entry.js +0 -1
@@ -1 +1 @@
1
- import{r as t,h as i,c as e,H as o,a as n}from"./index-Cgpvu-iV.js";import{d as s,f as a,o as r}from"./utils-kwLwITIE.js";import{Feature as l}from"ol";import{Point as u}from"ol/geom";import d from"ol/layer/Vector";import p from"ol/source/Vector";import{toLonLat as c,fromLonLat as h}from"ol/proj";import{Style as m,Icon as b}from"ol/style";import{m as v}from"./makeApiCall-B-daVutk.js";import g from"@carbon/icons/es/location--filled/32";import{XYZ as f}from"ol/source";import{C as y}from"./configService-DgYnEcjx.js";import{i as x,p as w,d as k,a as z,c as C,b as $}from"./udp-drive-utils-BwlXaZc5.js";import{createForm as j}from"final-form";import O from"lodash.debounce";import{b as q,U as F}from"./enums-Bn8TXZfi.js";import{g as S}from"./iconUtils-BzY-c9Op.js";import N from"@carbon/icons/es/save/20";import"axios";import"./iconMapping-C3k5yilV.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/location/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";import"@carbon/icons/es/ibm--elo--method-composer/16";import"@carbon/icons/es/undo/16";import"@carbon/icons/es/catalog/16";import"@carbon/icons/es/table--split/16";const A=class{constructor(i){t(this,i),this.displayOwnerFullName=!0,this.displayOwnerEmail=!0,this.displaySubmissionDate=!0}renderRow(t,e){return i("div",{class:"row"},i("span",{class:"label"},t),i("unity-typography",{class:"value",variant:"h4"},e))}render(){return i("div",{key:"612634c4e6a6af4181abc6b4526be06abb03a159",class:"container",role:"group","aria-label":"Form metadata"},this.displayOwnerFullName&&this.userDisplayName&&this.renderRow("Name",this.userDisplayName),this.displayOwnerEmail&&this.userEmail&&this.renderRow("Email",this.userEmail),this.displaySubmissionDate&&this.submittedOn&&this.renderRow("Submitted on",s(this.submittedOn,"long")))}};A.style=":host{display:block}.container{display:grid;gap:10px;padding:12px 14px;background:var(--unity-color-surface, #fff)}.row{display:grid;grid-template-columns:130px 1fr;align-items:baseline;column-gap:12px}.label{font-size:12px;line-height:1.2;letter-spacing:0.02em;text-transform:uppercase;color:var(--unity-color-text-secondary, rgba(0, 0, 0, 0.65))}.value{color:var(--unity-color-text, rgba(0, 0, 0, 0.9));overflow-wrap:anywhere}@media (max-width: 420px){.row{grid-template-columns:1fr;row-gap:4px}}";const R=class{constructor(i){t(this,i),this.change=e(this,"change",7),this.metadataEmit=e(this,"metadataEmit",7),this.allowedMimeTypes=["image/jpeg","image/png","image/gif","image/svg+xml","image/webp"],this.fullWidth=!1,this.allowMultiple=!1,this.hideDragAndDrop=!1,this.hideButton=!1,this.disabled=!1,this.readonly=!1,this.displayUploadTime=!1,this.handleFileChange=t=>{t.stopPropagation(),this.change.emit(t.detail)},this.handleMetadataEmit=t=>{t.stopPropagation(),this.metadataEmit.emit(t.detail)}}render(){var t,e;const n=null!==(t=this.dragAndDropMessage)&&void 0!==t?t:`Drag and drop your image${this.allowMultiple?"s":""} here`,s=null!==(e=this.browseFileMessage)&&void 0!==e?e:"Browse Image"+(this.allowMultiple?"s":"");return i(o,{key:"3ecef7e1d24ff2594617dbe014b35ec08bf5df4b"},i("file-upload",{key:"a3f181122b6d3283ae2f28d8ef7ef4b11248f03c",allowMultiple:this.allowMultiple,allowedMimeTypes:this.allowedMimeTypes,fullWidth:this.fullWidth,required:this.required,error:this.error,dragAndDropMessage:n,browseFileMessage:s,hideDragAndDrop:this.hideDragAndDrop,hideButton:this.hideButton,id:this.id,name:this.name,label:this.label,disabled:this.disabled,readonly:this.readonly,initialValue:this.initialValue,metadataTimestampKey:"image.timestamp",displayUploadTime:this.displayUploadTime,uploadTimestamps:this.uploadTimestamps,renderImage:!0,onChange:this.handleFileChange,onMetadataEmit:this.handleMetadataEmit}))}};async function I(t){let i=t,e=null;for(;i;){const t=i.closest("stencil-form");if(t){e=t;break}const o=i.getRootNode();if(!(o instanceof ShadowRoot))break;i=o.host}if(!e)return null;if("function"!=typeof e.getApi)return null;return await e.getApi()||null}R.style=":host{display:block}";const E=(t,i)=>{const e=`<svg xmlns="${t.attrs.xmlns}" viewBox="${t.attrs.viewBox}" width="${t.attrs.width}" height="${t.attrs.height}" fill="${i}">${t.content.map((t=>{const i=Object.entries(t.attrs).flatMap((([t,i])=>{const e=(t=>null==t?null:"string"==typeof t?t:"number"==typeof t?String(t):"boolean"==typeof t?t?"true":"false":null)(i);return null===e?[]:[`${t}="${e}"`]})).join(" ");return`<${t.elem} ${i}></${t.elem}>`})).join("")}</svg>`;return`data:image/svg+xml;utf8,${encodeURIComponent(e)}`},T=class{constructor(i){t(this,i),this.mapHeight="300px",this.mapZoom=17,this.showMap=!1,this.hideAddressSearch=!1,this.required=!1,this.language="en-US",this.disabled=!1,this.readonly=!1,this.countrySet="",this.defaultLocation=null,this.mapCenter=[0,0],this.isLoading=!1,this.internalError="",this.defaultCoordinates=null,this.initialSetup=async()=>{var t,i,e,o,n,s,a,r,u,h,v,f,y,x,w,k,z,C,$;this.markerSource=new p,this.markerFeature=new l,this.markerFeature.setStyle(new m({image:new b({src:E(g,"#ef4444"),scale:1,anchor:[.5,1]})})),this.markerSource.addFeature(this.markerFeature);const j=new d({source:this.markerSource});j.setZIndex(1e3),this.map.addLayer(j),(null===(e=null===(i=null===(t=this.value)||void 0===t?void 0:t.metadata)||void 0===i?void 0:i.location)||void 0===e?void 0:e.longitude)||await this.setupGeolocation(),(null===(s=null===(n=null===(o=this.value)||void 0===o?void 0:o.metadata)||void 0===n?void 0:n.location)||void 0===s?void 0:s.longitude)&&(null===(u=null===(r=null===(a=this.value)||void 0===a?void 0:a.metadata)||void 0===r?void 0:r.location)||void 0===u?void 0:u.latitude)&&(await this.setMarker(null===(f=null===(v=null===(h=this.value)||void 0===h?void 0:h.metadata)||void 0===v?void 0:v.location)||void 0===f?void 0:f.longitude,null===(w=null===(x=null===(y=this.value)||void 0===y?void 0:y.metadata)||void 0===x?void 0:x.location)||void 0===w?void 0:w.latitude),await(null===(k=this.addressSearchEl)||void 0===k?void 0:k.setQuery((null===($=null===(C=null===(z=this.value)||void 0===z?void 0:z.metadata)||void 0===C?void 0:C.location)||void 0===$?void 0:$.address)||""))),this.map.on("singleclick",(async t=>{if(this.readonly||this.disabled)return;const i=t.coordinate,[e,o]=c(i);await this.setMarker(e,o,{animate:!0}),await this.updateFormImage(e,o);const n=await this.reverseGeocode(o,e);n&&this.updateFormMetadata({longitude:e,latitude:o,address:n})}))},this.handleMapReady=async t=>{this.map=t.detail.map,await this.initialSetup()},this.handleAddressSelected=async t=>{const i=t.detail,e=i.position.lon,o=i.position.lat;this.showMap&&await this.setMarker(e,o),this.updateFormMetadata({longitude:e,latitude:o,address:i.address}),await this.updateFormImage(e,o)},this.handleAddressSearchCleared=()=>{var t,i;this.showMap&&(null===(t=this.markerSource)||void 0===t||t.clear()),this.internalError="",(null===(i=this.formApi)||void 0===i?void 0:i.customErrors)&&this.identifierKey&&delete this.formApi.customErrors[`${this.identifierKey}.value`],this.formApi&&this.identifierKey&&(this.formApi.change(`${this.identifierKey}.value`,null),this.formApi.change(`${this.identifierKey}.metadata.location.timestamp`,null),this.formApi.change(`${this.identifierKey}.metadata.location.latitude`,null),this.formApi.change(`${this.identifierKey}.metadata.location.longitude`,null),this.formApi.change(`${this.identifierKey}.metadata.location.streetNumber`,null),this.formApi.change(`${this.identifierKey}.metadata.location.streetName`,null),this.formApi.change(`${this.identifierKey}.metadata.location.municipality`,null),this.formApi.change(`${this.identifierKey}.metadata.location.countrySubdivisionName`,null),this.formApi.change(`${this.identifierKey}.metadata.location.postalCode`,null),this.formApi.change(`${this.identifierKey}.metadata.location.address`,null),this.formApi.change(`${this.identifierKey}.metadata.location.country`,null))}}onExternalErrorChange(t){"string"==typeof t&&t.length>0&&(this.internalError=t)}async validate(){var t,i,e,o,n,s,a;if(this.required){const r=null===(e=null===(i=null===(t=this.formApi)||void 0===t?void 0:t.getState)||void 0===i?void 0:i.call(t))||void 0===e?void 0:e.values,l=r&&this.identifierKey?r[this.identifierKey]:this.value;if(!Boolean((null===(n=null===(o=null==l?void 0:l.metadata)||void 0===o?void 0:o.location)||void 0===n?void 0:n.longitude)&&(null===(a=null===(s=null==l?void 0:l.metadata)||void 0===s?void 0:s.location)||void 0===a?void 0:a.latitude))){const t="Location is required";return this.internalError=t,{valid:!1,error:t}}}return this.internalError="",{valid:!0}}async componentWillLoad(){if(this.formApi=await I(this.el),this.identifierKey&&this.required){let t=this.el,i=null;for(;t;){const e=t.closest("stencil-form");if(e){i=e;break}const o=t.getRootNode();if(!(o instanceof ShadowRoot))break;t=o.host}if(i&&"function"==typeof i.registerField){const t=`${this.identifierKey}.value`;await i.registerField(t,{required:this.required})}}const t=this.defaultLocation?JSON.parse(this.defaultLocation):null;t&&"number"==typeof t.latitude&&"number"==typeof t.longitude&&(this.defaultCoordinates={latitude:t.latitude,longitude:t.longitude,address:t.address||""},this.mapCenter=[t.longitude,t.latitude]),this.initializeTileLayers()}async handleRegistrationChange(){if(this.identifierKey&&this.required){const t=this.findParentForm();if(t&&"function"==typeof t.registerField){const i=`${this.identifierKey}.value`;await t.registerField(i,{required:this.required})}}}findParentForm(){let t=this.el;for(;t;){const i=t.closest("stencil-form");if(i)return i;const e=t.getRootNode();if(!(e instanceof ShadowRoot))break;t=e.host}return null}initializeTileLayers(){y.config.AZURE_MAP_SUBSCRIPTION_KEY&&y.config.AZURE_MAP_SUBSCRIPTION_KEY.trim().length>0&&(this.tileLayers=[{name:"azure",source:new f({url:`https://atlas.microsoft.com/map/tile?subscription-key=${y.config.AZURE_MAP_SUBSCRIPTION_KEY}&api-version=2024-04-01&tilesetId=microsoft.base.road&zoom={z}&x={x}&y={y}`})}])}componentDidLoad(){this.validationErrorListener=t=>{const i=t.detail,e=null==i?void 0:i[`${this.identifierKey}.value`];"string"==typeof e&&e.length>0&&(this.internalError=e)},document.addEventListener("stencilFormInvalidEvent",this.validationErrorListener),this.syncAddressSearchFromValue()}handleValuePropChange(){this.syncAddressSearchFromValue()}async syncAddressSearchFromValue(){var t,i,e,o;const n=null===(e=null===(i=null===(t=this.value)||void 0===t?void 0:t.metadata)||void 0===i?void 0:i.location)||void 0===e?void 0:e.address;n&&await(null===(o=this.addressSearchEl)||void 0===o?void 0:o.setQuery(n))}disconnectedCallback(){this.validationErrorListener&&document.removeEventListener("stencilFormInvalidEvent",this.validationErrorListener)}async setupGeolocation(){var t;try{const t=await new Promise(((t,i)=>{navigator.geolocation?navigator.geolocation.getCurrentPosition((i=>{t({latitude:i.coords.latitude,longitude:i.coords.longitude,accuracy:i.coords.accuracy})}),(t=>{i(new Error(t.message||"Failed to get location"))}),{enableHighAccuracy:!0,timeout:5e3,maximumAge:0}):i(new Error("Geolocation not supported"))})),i=await this.reverseGeocode(t.latitude,t.longitude);this.showMap&&await this.setMarker(t.longitude,t.latitude),this.updateFormMetadata({longitude:t.longitude,latitude:t.latitude,address:i}),await this.updateFormImage(t.longitude,t.latitude)}catch(i){console.error("Geolocation error:",i.message),this.defaultCoordinates&&(await this.setMarker(this.defaultCoordinates.longitude,this.defaultCoordinates.latitude),await(null===(t=this.addressSearchEl)||void 0===t?void 0:t.setQuery(this.defaultCoordinates.address)),this.updateFormMetadata({longitude:this.defaultCoordinates.longitude,latitude:this.defaultCoordinates.latitude,address:{freeformAddress:this.defaultCoordinates.address,streetNumber:this.defaultCoordinates.streetNumber,streetName:this.defaultCoordinates.streetName,municipality:this.defaultCoordinates.municipality,countrySubdivisionName:this.defaultCoordinates.countrySubdivisionName,extendedPostalCode:this.defaultCoordinates.postalCode,country:this.defaultCoordinates.country}}),await this.updateFormImage(this.defaultCoordinates.longitude,this.defaultCoordinates.latitude))}}setMarker(t,i,e){var o;console.log("Setting marker at:",{lon:t,lat:i});const n=h([t,i]);console.log("Transformed coordinates:",{coord:n}),this.markerFeature||(this.markerFeature=new l),this.markerSource&&!this.markerSource.hasFeature(this.markerFeature)&&this.markerSource.addFeature(this.markerFeature),this.markerFeature.setGeometry(new u(n));const s=null===(o=null==e?void 0:e.animate)||void 0===o||o,a=this.map.getView().getZoom(),r=Math.max("number"==typeof a?a:this.mapZoom,15);return s?new Promise((t=>{this.map.getView().animate({center:n,zoom:r,duration:500},(()=>t()))})):(this.map.getView().setCenter(n),this.map.getView().setZoom(r),this.map.renderSync(),Promise.resolve())}async reverseGeocode(t,i){var e;this.isLoading=!0,this.internalError="";try{const o=new URL("https://atlas.microsoft.com/search/address/reverse/json");o.searchParams.append("api-version","1.0"),o.searchParams.append("subscription-key",y.config.AZURE_MAP_SUBSCRIPTION_KEY),o.searchParams.append("query",`${t},${i}`),o.searchParams.append("language",this.language);const n=await v("GET",o.toString());if(!n)throw new Error("Failed to get address from location");if(n.addresses&&n.addresses.length>0){const t=n.addresses[0].address.freeformAddress;return await(null===(e=this.addressSearchEl)||void 0===e?void 0:e.setQuery(t)),n.addresses[0].address}}catch(t){this.internalError="Failed to get address from location"}finally{this.isLoading=!1}}async captureAzureMapStatic(t,i,e){var o,n;try{const s=null!==(n=null===(o=this.map)||void 0===o?void 0:o.getSize())&&void 0!==n?n:[500,300],a=Math.min(s[0],2048),r=Math.min(s[1],2048),l=new URL("https://atlas.microsoft.com/map/static/png");return l.searchParams.append("api-version","1.0"),l.searchParams.append("subscription-key",y.config.AZURE_MAP_SUBSCRIPTION_KEY),l.searchParams.append("center",`${t},${i}`),l.searchParams.append("zoom",e.toString()),l.searchParams.append("width",a.toString()),l.searchParams.append("height",r.toString()),l.searchParams.append("pins",`default|coef4444||${t} ${i}`),l.toString()}catch(t){return console.error("Failed to generate Azure Maps static image:",t),null}}async urlToFile(t,i){if(!t)return null;let e=0,o=null;do{if(o=await fetch(t),429!==o.status)break;if(e>=5)break;const i=o.headers.get("Retry-After"),n=i?Number.parseInt(i,10):Number.NaN,s=Number.isFinite(n)?1e3*n:Math.min(1e4,500*2**e);e+=1,await new Promise((t=>setTimeout(t,s)))}while(e<=5);if(!(null==o?void 0:o.ok))return null;const n=await o.blob();return new File([n],i,{type:n.type})}async updateFormImage(t,i){if(!t||!i)return;const e=await this.captureAzureMapStatic(t,i,14);if(e){const t=await this.urlToFile(e,`map-snapshot-${Date.now()}.png`);t&&this.formApi&&this.identifierKey&&this.formApi.change(`${this.identifierKey}.value`,t)}}updateFormMetadata(t){this.formApi&&this.identifierKey&&(this.formApi.change(`${this.identifierKey}.metadata.location.timestamp`,(new Date).toISOString()),this.formApi.change(`${this.identifierKey}.metadata.location.latitude`,t.latitude),this.formApi.change(`${this.identifierKey}.metadata.location.longitude`,t.longitude),this.formApi.change(`${this.identifierKey}.metadata.location.streetNumber`,t.address.streetNumber),this.formApi.change(`${this.identifierKey}.metadata.location.streetName`,t.address.streetName),this.formApi.change(`${this.identifierKey}.metadata.location.municipality`,t.address.municipality),this.formApi.change(`${this.identifierKey}.metadata.location.countrySubdivisionName`,t.address.countrySubdivisionName),this.formApi.change(`${this.identifierKey}.metadata.location.postalCode`,t.address.extendedPostalCode),this.formApi.change(`${this.identifierKey}.metadata.location.address`,t.address.freeformAddress),this.formApi.change(`${this.identifierKey}.metadata.location.country`,t.address.country),this.internalError="",this.formApi.customErrors&&delete this.formApi.customErrors[`${this.identifierKey}.value`])}render(){const t=this.projection&&this.projectionDefs?{[this.projection]:this.projectionDefs}:void 0,e=!!this.internalError;return y.config.AZURE_MAP_SUBSCRIPTION_KEY&&0!=y.config.AZURE_MAP_SUBSCRIPTION_KEY.trim().length?i(o,{class:{"udp-input":!0,"udp-input--error":e},id:this.id},i("div",{class:"question-item-location-input-container"},!this.hideAddressSearch&&i("address-search",{ref:t=>this.addressSearchEl=t,inputId:this.id,disabled:this.disabled,readonly:this.readonly,language:this.language,countrySet:this.countrySet,loading:this.isLoading,error:this.internalError,onAddressSelected:this.handleAddressSelected,onSearchCleared:this.handleAddressSearchCleared,appendSuggestionsToBody:!0}),this.showMap&&i("base-map",{mapHeight:this.mapHeight,mapCenter:this.mapCenter,enableZoomControl:!0,enableFullScreenControl:!0,enableDragRotateAndZoom:!0,onMapReady:this.handleMapReady,projectionDefs:t,mapProjection:this.projection,tileLayersOptions:this.tileLayers}))):i("div",{class:"error-message"},i("unity-typography",{variant:"caption-text",color:"error"},"Azure Map Subscription Key is required."))}get el(){return n(this)}static get watchers(){return{error:[{onExternalErrorChange:0}],required:[{handleRegistrationChange:0}],identifierKey:[{handleRegistrationChange:0}],value:[{handleValuePropChange:0}]}}};T.style=':host(.udp-input){display:block;box-sizing:border-box;position:relative}:host(.udp-input--full-width){width:100%}:host(.udp-input--error){--input-border-color:var(--input-underline-color-error)}:host(.udp-input--disabled){pointer-events:none;opacity:0.5;cursor:not-allowed}:host(.udp-input--required){position:relative}:host(.udp-input--readonly){--input-background:var(--gray-02)}:host(.udp-input--hidden){display:none}:host(.udp-input--checked){--input-accent-color:var(--primary-color)}:host(.udp-input--multi-select){--list-max-height:200px}:host(.udp-input) .bx--text-input:focus{outline:none;}:host(.udp-input) .bx--form-item{margin-bottom:var(--spacing-05)}:host(.udp-input) .bx--label{display:block;margin-bottom:var(--spacing-03);color:var(--text-main);font-size:var(--caption-text-font-size);font-weight:var(--caption-text-font-weight);line-height:var(--caption-text-line-height)}@media (max-width: var(--breakpoint-xs-max)){:host(.udp-input){margin-bottom:var(--spacing-04)}:host(.udp-input) .bx--form-item{margin-bottom:var(--spacing-04)}}@media (min-width: var(--breakpoint-sm-min)){:host(.udp-input){min-height:2.5rem;}}:host(.udp-input--size-small) .bx--text-input,:host(.udp-input--size-small) textarea,:host(.udp-input--size-small) input[type="text"],:host(.udp-input--size-small) input[type="number"],:host(.udp-input--size-small) input[type="email"],:host(.udp-input--size-small) input[type="password"],:host(.udp-input--size-small) input[type="tel"],:host(.udp-input--size-small) input[type="url"],:host(.udp-input--size-small) input[type="search"]{padding:var(--spacing-02);padding-bottom:6px;font-size:var(--caption-font-size, 0.875rem)}:host(.udp-input--size-normal) .bx--text-input,:host(.udp-input--size-normal) textarea,:host(.udp-input--size-normal) input[type="text"],:host(.udp-input--size-normal) input[type="number"],:host(.udp-input--size-normal) input[type="email"],:host(.udp-input--size-normal) input[type="password"],:host(.udp-input--size-normal) input[type="tel"],:host(.udp-input--size-normal) input[type="url"],:host(.udp-input--size-normal) input[type="search"]{padding:var(--spacing-03);padding-bottom:9px;font-size:var(--body-font-size)}:host(.udp-input--size-large) .bx--text-input,:host(.udp-input--size-large) textarea,:host(.udp-input--size-large) input[type="text"],:host(.udp-input--size-large) input[type="number"],:host(.udp-input--size-large) input[type="email"],:host(.udp-input--size-large) input[type="password"],:host(.udp-input--size-large) input[type="tel"],:host(.udp-input--size-large) input[type="url"],:host(.udp-input--size-large) input[type="search"]{padding:var(--spacing-04);padding-bottom:12px;font-size:var(--body-font-size)}:host(.udp-input--margin-none){margin:0}:host(.udp-input--margin-dense){margin:var(--spacing-02) 0}:host(.udp-input--margin-normal){margin:var(--spacing-03) 0}:host(.udp-input--margin-comfortable){margin:var(--spacing-04) 0}:host(.udp-input--size-small) .bx--label{margin-bottom:var(--spacing-02);font-size:var(--caption-font-size, 0.875rem)}:host(.udp-input--size-normal) .bx--label{margin-bottom:var(--spacing-03);font-size:var(--body-font-size)}:host(.udp-input--size-large) .bx--label{margin-bottom:var(--spacing-04);font-size:var(--body-font-size)}.bx--text-input,textarea,input[type="text"],input[type="number"],input[type="email"],input[type="password"],input[type="tel"],input[type="url"],input[type="search"]{display:inline-block;padding:var(--spacing-03);padding-bottom:9px;box-sizing:border-box;border:none;font-size:var(--body-font-size);background:var(--input-background);border-bottom:var(--underline-standard) solid var(--input-underline-color, var(--gray-08));width:100%;font-family:var(--font-family);transition:border-bottom-color 0.15s ease-in-out}.bx--text-input:focus,textarea:focus,input[type="text"]:focus,input[type="number"]:focus,input[type="email"]:focus,input[type="password"]:focus,input[type="tel"]:focus,input[type="url"]:focus,input[type="search"]:focus{border-bottom-color:var(--input-underline-color-focus, var(--primary-color));border-bottom-width:2px}.bx--text-input--error,.bx--text-input:user-invalid,:host(.udp-input--error) .bx--text-input,:host(.udp-input--error) textarea,:host(.udp-input--error) input[type="text"],:host(.udp-input--error) input[type="number"],:host(.udp-input--error) input[type="email"],:host(.udp-input--error) input[type="password"],:host(.udp-input--error) input[type="tel"],:host(.udp-input--error) input[type="url"],:host(.udp-input--error) input[type="search"],input[type="text"]:user-invalid,input[type="number"]:user-invalid,input[type="email"]:user-invalid,input[type="password"]:user-invalid,input[type="tel"]:user-invalid,input[type="url"]:user-invalid,input[type="search"]:user-invalid{border-bottom-color:var(--input-underline-color-error, var(--error-color-main)) !important}:host(.udp-input--disabled) .bx--text-input,:host(.udp-input--disabled) textarea,:host(.udp-input--disabled) input[type="text"],:host(.udp-input--disabled) input[type="number"],:host(.udp-input--disabled) input[type="email"],:host(.udp-input--disabled) input[type="password"],:host(.udp-input--disabled) input[type="tel"],:host(.udp-input--disabled) input[type="url"],:host(.udp-input--disabled) input[type="search"]{border-bottom-color:var(--input-underline-color-disabled, var(--gray-08))}textarea.bx--text-input{resize:vertical;min-height:var(--spacing-08)}.bx--text-input::placeholder,textarea::placeholder,input[type="text"]::placeholder,input[type="number"]::placeholder,input[type="email"]::placeholder,input[type="password"]::placeholder,input[type="tel"]::placeholder,input[type="url"]::placeholder,input[type="search"]::placeholder{color:var(--placeholder-color, #999);opacity:1}:host(.udp-input),:host{display:block;width:100%;box-sizing:border-box}.bx--form-item{margin-bottom:var(--spacing-05)}.bx--label{display:block;margin-bottom:var(--spacing-03)}.error-message,.bx--form-requirement,:host(.udp-input--error) .error-message,:host(.udp-input--error) .bx--form-requirement{color:var(--error-color-main, #d32f2f) !important;margin-top:var(--spacing-02);font-size:var(--caption-font-size, 0.875rem);--unity-typography-inherit-color:var(--error-color-main, #d32f2f)}.helper-text{color:var(--text-02, #525252);margin-top:var(--spacing-02);font-size:var(--caption-font-size, 0.875rem)}:host(.udp-input--disabled) .bx--text-input,:host(.udp-input--disabled) textarea,:host(.udp-input--disabled) input,:host(.udp-input--disabled){cursor:not-allowed;opacity:0.6}:host(.udp-input--readonly) .bx--text-input,:host(.udp-input--readonly) textarea,:host(.udp-input--readonly) input{background-color:var(--field-01, #f4f4f4);cursor:default}.question-item-location-input-container{display:flex;flex-direction:column;gap:var(--spacing-04, 16px);padding-top:var(--spacing-03, 8px) !important}:host{display:block;width:100%;height:100%}.map-container{flex:1;width:100%;min-height:400px;position:relative}@media (max-width: 768px){.map-container{min-height:320px}}';const D=class{constructor(i){t(this,i),this.change=e(this,"change",7),this.metadataEmit=e(this,"metadataEmit",7),this.includeLocation=!1,this.disabled=!1,this.readonly=!1,this.size="normal",this.margin="normal",this.cachedLocation=null,this.isInternalChange=!1,this.handleResize=()=>{this.resizeTimeout&&clearTimeout(this.resizeTimeout),this.resizeTimeout=setTimeout((()=>{const t=this.canvasEl.getBoundingClientRect();if(!this.lastCanvasRect||t.width!==this.lastCanvasRect.width||t.height!==this.lastCanvasRect.height){let i=this.signaturePad&&!this.signaturePad.isEmpty()?this.signaturePad.toDataURL():null;this.resizeCanvasForDPR(),this.initializeSignaturePad(),this.lastCanvasRect=t,i&&this.signaturePad&&this.signaturePad.fromDataURL(i)}}),200)},this.handleSignatureEnd=async()=>{if(this.signaturePad.isEmpty())this.isInternalChange=!0,this.value=null,this.change.emit(null),this.metadataEmit.emit({key:"signature.latitude",value:null}),this.metadataEmit.emit({key:"signature.longitude",value:null}),this.metadataEmit.emit({key:"signature.timestamp",value:null});else{const t=this.signaturePad.toDataURL(),i=await this.urlToFile(t,"signature.png");if(this.isInternalChange=!0,this.value=i,this.change.emit(i),this.metadataEmit.emit({key:"signature.timestamp",value:(new Date).toISOString()}),this.includeLocation)try{let t=this.cachedLocation;t||(t=await new Promise(((t,i)=>{navigator.geolocation.getCurrentPosition(t,i,{enableHighAccuracy:!0,timeout:3e4,maximumAge:0})}))),t?(this.metadataEmit.emit({key:"signature.latitude",value:t.coords.latitude}),this.metadataEmit.emit({key:"signature.longitude",value:t.coords.longitude})):(this.metadataEmit.emit({key:"signature.latitude",value:null}),this.metadataEmit.emit({key:"signature.longitude",value:null}))}catch(t){console.warn("Geolocation error:",t),this.metadataEmit.emit({key:"signature.latitude",value:null}),this.metadataEmit.emit({key:"signature.longitude",value:null})}}},this.clearSignature=()=>{this.signaturePad&&(this.signaturePad.clear(),this.handleSignatureEnd())}}async processAndLoadValue(t){if(t)try{const i=Array.isArray(t)?t[0]:t;let e=null;if("string"==typeof i&&x(i)){const t=await w(i);e=t&&t.driveFileId?await k({name:t.name,driveFileId:t.driveFileId,extension:t.name.split(".").pop()||""}):t}else z(i)?e=await k(i):"string"==typeof i?e=await C(i,"signature.png"):$(i)&&(e=i);e&&(this.value=e,this.signaturePad?await this.loadSignature(e):this.initializeSignaturePad())}catch(t){console.error("Failed to process signature value:",t)}else this.signaturePad&&this.signaturePad.clear()}onErrorChange(t){this.internalError=t}async handleValueUpdate(t){this.isInternalChange?this.isInternalChange=!1:this.canvasEl&&await this.processAndLoadValue(t)}async handleInitialValueUpdate(t){this.canvasEl&&await this.processAndLoadValue(t)}async componentWillLoad(){this.internalError=this.error,await this.loadSignaturePad(),this.includeLocation&&navigator.geolocation.getCurrentPosition((t=>{this.cachedLocation=t}),(t=>{console.warn("Prewarm geolocation error:",t),this.cachedLocation=null}),{enableHighAccuracy:!0,timeout:3e4,maximumAge:0})}async componentDidLoad(){this.initializeSignaturePad();const t=this.value||this.initialValue;t&&await this.processAndLoadValue(t),this.lastCanvasRect=this.canvasEl.getBoundingClientRect(),window.addEventListener("resize",this.handleResize)}disconnectedCallback(){window.removeEventListener("resize",this.handleResize),this.resizeTimeout&&clearTimeout(this.resizeTimeout)}resizeCanvasForDPR(){if(!this.canvasEl)return;const t=window.devicePixelRatio||1,i=this.canvasEl.getBoundingClientRect();this.canvasEl.width=i.width*t,this.canvasEl.height=i.height*t;const e=this.canvasEl.getContext("2d");e.setTransform(1,0,0,1,0,0),e.scale(t,t)}async loadSignaturePad(){if(!this.SignaturePadLib)try{const t=await import("signature_pad");this.SignaturePadLib=t.default}catch(t){console.error("Failed to load signature_pad library",t)}}initializeSignaturePad(){this.SignaturePadLib&&this.canvasEl&&(this.resizeCanvasForDPR(),this.signaturePad&&this.signaturePad.off(),this.signaturePad=new this.SignaturePadLib(this.canvasEl),this.signaturePad.addEventListener("endStroke",this.handleSignatureEnd),this.handleStateChange(),this.value&&this.loadSignature(this.value))}handleStateChange(){this.signaturePad&&(this.disabled||this.readonly?this.signaturePad.off():this.signaturePad.on())}async loadSignature(t){let i;if("string"==typeof t)i=t;else if(z(t))try{const e=await k(t);i=URL.createObjectURL(e)}catch(t){return void console.error("Error loading signature image from UdpDriveFile:",t)}else t instanceof File&&(i=URL.createObjectURL(t));i&&this.signaturePad&&(this.signaturePad.clear(),this.signaturePad.fromDataURL(i,{ratio:window.devicePixelRatio||1}))}async urlToFile(t,i){const e=await fetch(t),o=await e.blob();return new File([o],i,{type:o.type})}render(){const t=!!this.internalError,e={"signature-pad-container":!0,readonly:this.readonly,disabled:this.disabled};return i(o,{key:"f7e2efb3c833954f7c5d4eb89523124004870af2",class:{"udp-input":!0,"udp-input--error":t,"udp-input--disabled":this.disabled,"udp-input--required":this.required,"udp-input--readonly":this.readonly,[`udp-input--size-${this.size}`]:!0,[`udp-input--margin-${this.margin}`]:!0}},i("div",{key:"65fb1003cb711abce87ad6610ef8f760f316f97a",class:"bx--form-item"},this.label&&i("unity-typography",{key:"00f51ced39a56ef9ff26c01bdb17f99093b3651e",variant:"caption-text"},i("label",{key:"bc5868273a81faee0f762a24e8b6b9a0e0b082ba",htmlFor:this.id,class:"bx--label"},this.label,this.required&&"*")),i("div",{key:"4181296c918939de81945f22e4064f05f291d60a",class:e},i("canvas",{key:"1e3ad85753f8731eef0628c777731a1984bbfe12",ref:t=>this.canvasEl=t,class:{"signature-canvas":!0,readonly:this.readonly||this.disabled},id:this.id}),!this.readonly&&!this.disabled&&i("button",{key:"0725984a0bb1813e03a178f54d6ba574f69d0079",type:"button",class:"clear-button",onClick:this.clearSignature,disabled:this.disabled},"Clear")),t&&i("div",{key:"95cd4970272b0c82c1c85ef1ceeca5900704f82f",class:"error-message"},i("unity-typography",{key:"e89ba3de7f359091d7097adcd167571dacc2eac1",variant:"caption-text",color:"error"},this.internalError))))}get el(){return n(this)}static get watchers(){return{error:[{onErrorChange:0}],value:[{handleValueUpdate:0}],initialValue:[{handleInitialValueUpdate:0}],disabled:[{handleStateChange:0}],readonly:[{handleStateChange:0}]}}};D.style=':host(.udp-input){display:block;box-sizing:border-box;position:relative}:host(.udp-input--full-width){width:100%}:host(.udp-input--error){--input-border-color:var(--input-underline-color-error)}:host(.udp-input--disabled){pointer-events:none;opacity:0.5;cursor:not-allowed}:host(.udp-input--required){position:relative}:host(.udp-input--readonly){--input-background:var(--gray-02)}:host(.udp-input--hidden){display:none}:host(.udp-input--checked){--input-accent-color:var(--primary-color)}:host(.udp-input--multi-select){--list-max-height:200px}:host(.udp-input) .bx--text-input:focus{outline:none;}:host(.udp-input) .bx--form-item{margin-bottom:var(--spacing-05)}:host(.udp-input) .bx--label{display:block;margin-bottom:var(--spacing-03);color:var(--text-main);font-size:var(--caption-text-font-size);font-weight:var(--caption-text-font-weight);line-height:var(--caption-text-line-height)}@media (max-width: var(--breakpoint-xs-max)){:host(.udp-input){margin-bottom:var(--spacing-04)}:host(.udp-input) .bx--form-item{margin-bottom:var(--spacing-04)}}@media (min-width: var(--breakpoint-sm-min)){:host(.udp-input){min-height:2.5rem;}}:host(.udp-input--size-small) .bx--text-input,:host(.udp-input--size-small) textarea,:host(.udp-input--size-small) input[type="text"],:host(.udp-input--size-small) input[type="number"],:host(.udp-input--size-small) input[type="email"],:host(.udp-input--size-small) input[type="password"],:host(.udp-input--size-small) input[type="tel"],:host(.udp-input--size-small) input[type="url"],:host(.udp-input--size-small) input[type="search"]{padding:var(--spacing-02);padding-bottom:6px;font-size:var(--caption-font-size, 0.875rem)}:host(.udp-input--size-normal) .bx--text-input,:host(.udp-input--size-normal) textarea,:host(.udp-input--size-normal) input[type="text"],:host(.udp-input--size-normal) input[type="number"],:host(.udp-input--size-normal) input[type="email"],:host(.udp-input--size-normal) input[type="password"],:host(.udp-input--size-normal) input[type="tel"],:host(.udp-input--size-normal) input[type="url"],:host(.udp-input--size-normal) input[type="search"]{padding:var(--spacing-03);padding-bottom:9px;font-size:var(--body-font-size)}:host(.udp-input--size-large) .bx--text-input,:host(.udp-input--size-large) textarea,:host(.udp-input--size-large) input[type="text"],:host(.udp-input--size-large) input[type="number"],:host(.udp-input--size-large) input[type="email"],:host(.udp-input--size-large) input[type="password"],:host(.udp-input--size-large) input[type="tel"],:host(.udp-input--size-large) input[type="url"],:host(.udp-input--size-large) input[type="search"]{padding:var(--spacing-04);padding-bottom:12px;font-size:var(--body-font-size)}:host(.udp-input--margin-none){margin:0}:host(.udp-input--margin-dense){margin:var(--spacing-02) 0}:host(.udp-input--margin-normal){margin:var(--spacing-03) 0}:host(.udp-input--margin-comfortable){margin:var(--spacing-04) 0}:host(.udp-input--size-small) .bx--label{margin-bottom:var(--spacing-02);font-size:var(--caption-font-size, 0.875rem)}:host(.udp-input--size-normal) .bx--label{margin-bottom:var(--spacing-03);font-size:var(--body-font-size)}:host(.udp-input--size-large) .bx--label{margin-bottom:var(--spacing-04);font-size:var(--body-font-size)}.bx--text-input,textarea,input[type="text"],input[type="number"],input[type="email"],input[type="password"],input[type="tel"],input[type="url"],input[type="search"]{display:inline-block;padding:var(--spacing-03);padding-bottom:9px;box-sizing:border-box;border:none;font-size:var(--body-font-size);background:var(--input-background);border-bottom:var(--underline-standard) solid var(--input-underline-color, var(--gray-08));width:100%;font-family:var(--font-family);transition:border-bottom-color 0.15s ease-in-out}.bx--text-input:focus,textarea:focus,input[type="text"]:focus,input[type="number"]:focus,input[type="email"]:focus,input[type="password"]:focus,input[type="tel"]:focus,input[type="url"]:focus,input[type="search"]:focus{border-bottom-color:var(--input-underline-color-focus, var(--primary-color));border-bottom-width:2px}.bx--text-input--error,.bx--text-input:user-invalid,:host(.udp-input--error) .bx--text-input,:host(.udp-input--error) textarea,:host(.udp-input--error) input[type="text"],:host(.udp-input--error) input[type="number"],:host(.udp-input--error) input[type="email"],:host(.udp-input--error) input[type="password"],:host(.udp-input--error) input[type="tel"],:host(.udp-input--error) input[type="url"],:host(.udp-input--error) input[type="search"],input[type="text"]:user-invalid,input[type="number"]:user-invalid,input[type="email"]:user-invalid,input[type="password"]:user-invalid,input[type="tel"]:user-invalid,input[type="url"]:user-invalid,input[type="search"]:user-invalid{border-bottom-color:var(--input-underline-color-error, var(--error-color-main)) !important}:host(.udp-input--disabled) .bx--text-input,:host(.udp-input--disabled) textarea,:host(.udp-input--disabled) input[type="text"],:host(.udp-input--disabled) input[type="number"],:host(.udp-input--disabled) input[type="email"],:host(.udp-input--disabled) input[type="password"],:host(.udp-input--disabled) input[type="tel"],:host(.udp-input--disabled) input[type="url"],:host(.udp-input--disabled) input[type="search"]{border-bottom-color:var(--input-underline-color-disabled, var(--gray-08))}textarea.bx--text-input{resize:vertical;min-height:var(--spacing-08)}.bx--text-input::placeholder,textarea::placeholder,input[type="text"]::placeholder,input[type="number"]::placeholder,input[type="email"]::placeholder,input[type="password"]::placeholder,input[type="tel"]::placeholder,input[type="url"]::placeholder,input[type="search"]::placeholder{color:var(--placeholder-color, #999);opacity:1}:host(.udp-input),:host{display:block;width:100%;box-sizing:border-box}.bx--form-item{margin-bottom:var(--spacing-05)}.bx--label{display:block;margin-bottom:var(--spacing-03)}.error-message,.bx--form-requirement,:host(.udp-input--error) .error-message,:host(.udp-input--error) .bx--form-requirement{color:var(--error-color-main, #d32f2f) !important;margin-top:var(--spacing-02);font-size:var(--caption-font-size, 0.875rem);--unity-typography-inherit-color:var(--error-color-main, #d32f2f)}.helper-text{color:var(--text-02, #525252);margin-top:var(--spacing-02);font-size:var(--caption-font-size, 0.875rem)}:host(.udp-input--disabled) .bx--text-input,:host(.udp-input--disabled) textarea,:host(.udp-input--disabled) input,:host(.udp-input--disabled){cursor:not-allowed;opacity:0.6}:host(.udp-input--readonly) .bx--text-input,:host(.udp-input--readonly) textarea,:host(.udp-input--readonly) input{background-color:var(--field-01, #f4f4f4);cursor:default}:host(.udp-input--size-small) .signature-canvas{height:150px}:host(.udp-input--size-normal) .signature-canvas{height:200px}:host(.udp-input--size-large) .signature-canvas{height:250px}:host(.udp-input--size-small) .clear-button{padding:var(--spacing-01) var(--spacing-02);font-size:var(--caption-font-size, 0.875rem);top:var(--spacing-02);right:var(--spacing-02)}:host(.udp-input--size-normal) .clear-button{padding:var(--spacing-02) var(--spacing-03);font-size:var(--body-font-size);top:var(--spacing-02);right:var(--spacing-02)}:host(.udp-input--size-large) .clear-button{padding:var(--spacing-03) var(--spacing-04);font-size:var(--body-font-size);top:var(--spacing-03);right:var(--spacing-03)}.signature-pad-container{position:relative;border:1px solid var(--udp-mid-gray-color);border-radius:4px;background-color:var(--udp-light-gray-color)}.signature-canvas{display:block;width:100%;height:200px;}.signature-pad-container.readonly{background-color:var(--udp-disabled-gray-color)}.signature-canvas.readonly{cursor:not-allowed}.clear-button{position:absolute;top:var(--spacing-02);right:var(--spacing-02);background-color:var(--udp-light-gray-color);border:1px solid var(--udp-mid-gray-color);color:var(--udp-primary-color);cursor:pointer;border-radius:4px;padding:var(--spacing-02) var(--spacing-03);}.clear-button:hover{background-color:var(--udp-mid-gray-color)}.clear-button:disabled{cursor:not-allowed;opacity:0.5}';const M=class{constructor(i){t(this,i),this.stencilFormInvalidEvent=e(this,"stencilFormInvalidEvent",7),this.dirtyChange=e(this,"dirtyChange",7),this.validateOnBlur=!0,this.registeredFields={},this.customErrors={},this.handleSlotChange=()=>{const t=this.el.shadowRoot.querySelector("slot");t&&t.assignedNodes().forEach((t=>this.processNodeRecursively(t)))},this.submitWithValidation=this.submitWithValidation.bind(this),this.defaultValidation=this.defaultValidation.bind(this),this.submit=this.submit.bind(this),this.onFormChange=this.onFormChange.bind(this)}connectField(t){t.__connectedToForm||(t.setFormApi({api:this.api,registeredFields:this.registeredFields,customErrors:this.customErrors}),t.__connectedToForm=!0)}async processNodeRecursively(t){if(t.nodeType!==Node.ELEMENT_NODE)return;const i=t;if(!i.localName.includes("-")||customElements.get(i.localName)){if(i.matches("stencil-field")&&this.connectField(i),this.connectSubmitButtons(i),i.shadowRoot)for(const t of Array.from(i.shadowRoot.childNodes))await this.processNodeRecursively(t);for(const t of Array.from(i.childNodes))await this.processNodeRecursively(t)}else i.__stencilFormAwaitingDefinition||(i.__stencilFormAwaitingDefinition=!0,customElements.whenDefined(i.localName).then((()=>{i.__stencilFormAwaitingDefinition=!1,this.processNodeRecursively(i)})))}connectSubmitButtons(t){if(t.nodeType!==Node.ELEMENT_NODE)return;const i=t;i.matches('input[type="submit"], button[type="submit"]')&&(i.dataset.stencilFormConnected||(i.dataset.stencilFormConnected="true",i.addEventListener("click",(t=>{t.preventDefault(),this.submit(t)})))),i.querySelectorAll('input[type="submit"], button[type="submit"]').forEach((t=>{t.dataset.stencilFormConnected||(t.dataset.stencilFormConnected="true",t.addEventListener("click",(t=>{t.preventDefault(),this.submit(t)})))}))}componentWillLoad(){this.api=j({onSubmit:this.submitWithValidation,initialValues:this.initialValues,validate:this.defaultValidation,validateOnBlur:this.validateOnBlur}),this.handleChange&&this.api.subscribe(this.onFormChange,{values:!0}),this.api.subscribe((t=>{const{dirtyFields:i}=t,e=this.registeredFields,o=Object.keys(i||{}).some((t=>{var o;return i[t]&&!(null===(o=e[t])||void 0===o?void 0:o.ignoreDirty)}));this.dirtyChange.emit(o)}),{dirtyFields:!0})}componentDidLoad(){const t=this.el.shadowRoot.querySelector("slot");this.observer=new MutationObserver((t=>{for(const i of t)i.addedNodes.forEach((t=>{this.processNodeRecursively(t)}))}));const i=()=>{((null==t?void 0:t.assignedNodes({flatten:!0}))||[]).forEach((t=>{t.nodeType===Node.ELEMENT_NODE&&(this.observer.observe(t,{childList:!0,subtree:!0}),this.processNodeRecursively(t))}))};t&&(i(),t.addEventListener("slotchange",i)),this.observer.observe(this.el,{childList:!0,subtree:!0}),this.el.dispatchEvent(new CustomEvent("stencilFormReady",{bubbles:!0,composed:!0}))}disconnectedCallback(){var t;this.api=null,this.registeredFields={};const i=null===(t=this.el.shadowRoot)||void 0===t?void 0:t.querySelector("slot");i&&i.removeEventListener("slotchange",this.handleSlotChange)}onFormChange(t){this.handleChange&&t.values&&this.handleChange(t.values)}async submitWithValidation(t){const i=this.defaultValidation(t);0===Object.keys(i).length?this.handleSubmit(t):this.stencilFormInvalidEvent.emit(i)}defaultValidation(t){const{registeredFields:i,customErrors:e}=this,o={};if(Object.keys(i).forEach((e=>{const n=i[e];if(null==n?void 0:n.ignoreDirty)return;const s=(a=t,e.replace(/\[(\d+)\]/g,".$1").split(".").reduce(((t,i)=>null!=t?t[i]:void 0),a));var a;n.required&&(null==s||"string"==typeof s&&""===s.trim()||!1===s||"false"===s)&&(o[e]="This field is required")})),e&&Object.keys(e).forEach((t=>{e[t]&&(o[t]=e[t])})),null==this?void 0:this.handleValidate){const i=this.handleValidate(t,o);return Object.assign(Object.assign({},o),i)}return o}async getApi(){return this.api?this.api:(console.error("❌ Form API not initialized yet."),null)}async registerField(t,i){this.registeredFields=Object.assign(Object.assign({},this.registeredFields),{[t]:i})}submit(t){var i;null===(i=null==t?void 0:t.preventDefault)||void 0===i||i.call(t);const e=this.api.getState().values,o=this.defaultValidation(e);O((()=>{var t;Object.keys(o).length?this.stencilFormInvalidEvent.emit(o):null===(t=this.api)||void 0===t||t.submit()}),1e3,{leading:!0,trailing:!1})()}render(){return i("form",{key:"3a80fa9c957b76b9d6b172a2c1ae66880bb46134"},i("slot",{key:"c592488ed1102df7b5e88866dd3553644682472f"}))}get el(){return n(this)}},V=t=>"number"===t,P=()=>`grid-${Date.now()}-${Math.random().toString(36).slice(2,10)}`,L=class{constructor(i){t(this,i),this.columns=[],this.initialValue=null,this.required=!1,this.disabled=!1,this.readonly=!1,this.initialGridRows=[],this.gridRowCount=0,this.gridRenderNonce=P(),this.validationError="",this.hasHydratedFromInitialValue=!1,this.columnsSignature="",this.cachedGridColumns=[],this.cachedGridColumnsKey="",this.hasSubmitValidationAttempt=!1,this.gridOptions={suppressContextMenu:!0,stopEditingWhenCellsLoseFocus:!0,suppressAggFuncInHeader:!0,editType:"fullRow",singleClickEdit:!0,rowDragManaged:!0,animateRows:!0,defaultColDef:{sortable:!1,filter:!1,suppressHeaderMenuButton:!0,editable:!0,minWidth:80,resizable:!0},getRowStyle:t=>{var i;if("bottom"===(null===(i=null==t?void 0:t.node)||void 0===i?void 0:i.rowPinned))return{backgroundColor:"var(--gray-01, #f8f8f8)",fontWeight:"600",borderTop:"1px solid var(--gray-03, #d8d8d8)"}},onCellValueChanged:()=>this.handleGridDataChanged(),onCellEditingStopped:()=>this.handleGridDataChanged(),onRowEditingStopped:()=>this.handleGridDataChanged(),onPasteEnd:()=>this.handleGridDataChanged(),onRowDragEnd:()=>this.handleGridDataChanged()},this.handleAddRow=()=>{if(this.gridApiMethods)try{return this.gridApiMethods.applyTransaction({add:[this.createEmptyRow()]}),void requestAnimationFrame((()=>{var t;this.handleGridDataChanged();const i=Math.max(this.getRowsFromGrid().length-1,0);null===(t=this.gridApiMethods)||void 0===t||t.ensureIndexVisible(i,"bottom")}))}catch(t){this.gridApiMethods=void 0}this.initialGridRows=[...this.initialGridRows,this.createEmptyRow()],this.validateAndEmitError(),this.emitValue()},this.handleRemoveRow=t=>{if(this.gridApiMethods)try{const i=this.getRawRowsFromGrid()[t];return i&&this.gridApiMethods.applyTransaction({remove:[i]}),void this.handleGridDataChanged()}catch(t){this.gridApiMethods=void 0}const i=[...this.initialGridRows];i.splice(t,1),this.initialGridRows=i,this.validateAndEmitError(),this.emitValue()},this.handleGridApiCallback=t=>{var i;this.gridApiMethods=t,this.gridRowCount=this.getRowsFromGrid().length||this.initialGridRows.length,this.validateAndEmitError(),null===(i=this.gridApiMethods)||void 0===i||i.refreshCells(),this.refreshAggregateFooter(),requestAnimationFrame((()=>this.refreshAggregateFooter()))}}handleNestedInput(t){(t.composedPath&&t.composedPath()[0]||t.target)!==this.el&&(t.stopImmediatePropagation(),t.stopPropagation())}handleNestedChange(t){(t.composedPath&&t.composedPath()[0]||t.target)!==this.el&&(t.stopImmediatePropagation(),t.stopPropagation())}handleGridPaste(t){var i,e,o,n;if(this.readonly||this.disabled||!this.gridApiMethods)return;const s=null===(i=t.clipboardData)||void 0===i?void 0:i.getData("text/plain");if(!(null==s?void 0:s.trim()))return;t.preventDefault();const a=s.split(/\r?\n/).map((t=>t.split("\t"))).filter((t=>t.some((t=>""!==t))));if(!a.length)return;this.gridApiMethods.stopEditing(!0);const r=this.gridApiMethods.getFocusedCell(),l=null!==(e=null==r?void 0:r.rowIndex)&&void 0!==e?e:0,u=null===(n=null===(o=null==r?void 0:r.column)||void 0===o?void 0:o.getColId)||void 0===n?void 0:n.call(o),d=this.columns||[],p=u?Math.max(0,d.findIndex((t=>t.id===u))):0,c=this.getRawRowsFromGrid(),h=[];a.forEach(((t,i)=>{const e=l+i;if(e<c.length)t.forEach(((t,i)=>{const o=d[p+i];o&&(c[e][o.id]=this.parsePastedCellValue(o,t))}));else{const i=this.createEmptyRow();t.forEach(((t,e)=>{const o=d[p+e];o&&(i[o.id]=this.parsePastedCellValue(o,t))})),h.push(i)}})),h.length&&this.gridApiMethods.applyTransaction({add:h}),this.handleGridDataChanged(),this.gridApiMethods.refreshCells()}handleSubmitInvalid(){this.hasSubmitValidationAttempt=!0,requestAnimationFrame((()=>{var t;this.validateAndEmitError(),null===(t=this.gridApiMethods)||void 0===t||t.refreshCells()}))}componentWillLoad(){this.columnsSignature=this.getColumnsSignature(this.columns),this.initializeRows(this.initialValue,!1)}disconnectedCallback(){this.gridApiMethods=void 0}onInitialValueChange(t){if(!this.hasHydratedFromInitialValue)return"string"!=typeof t||this.hasUsableInitialValue(t)?void(this.hasUsableInitialValue(t)&&(this.recreateGridInstance(),this.initializeRows(t,!0))):(this.hasHydratedFromInitialValue=!0,void this.recreateGridInstance())}onColumnsChange(){const t=this.getColumnsSignature(this.columns);if(t===this.columnsSignature)return;if(this.columnsSignature=t,!Array.isArray(this.columns)||0===this.columns.length)return this.initialGridRows=[],this.gridRowCount=0,void this.emitValue();const i=this.initialGridRows.map((t=>this.normalizeRow(t)));this.initialGridRows=i,this.validateAndEmitError(),this.emitValue()}onErrorChange(){var t;null===(t=this.gridApiMethods)||void 0===t||t.refreshCells()}onSeedRowsChange(){this.gridRowCount=this.initialGridRows.length,this.refreshAggregateFooter()}getColumnsSignature(t=[]){return JSON.stringify(t.map((t=>({id:null==t?void 0:t.id,name:null==t?void 0:t.name,type:null==t?void 0:t.type,required:null==t?void 0:t.required,aggregate:null==t?void 0:t.aggregate,aggregateDecimalPlaces:null==t?void 0:t.aggregateDecimalPlaces}))))}recreateGridInstance(){this.gridApiMethods=void 0,this.cachedGridColumns=[],this.cachedGridColumnsKey="",this.gridRenderNonce=P()}hasUsableInitialValue(t){return null!=t&&("string"==typeof t?t.trim().length>0:!!Array.isArray(t))}createEmptyRow(){const t={};return(this.columns||[]).forEach((i=>{t[i.id]=V(i.type)?null:""})),t}normalizeRow(t){const i=this.createEmptyRow();return t&&"object"==typeof t?((this.columns||[]).forEach((e=>{const o=t[e.id];if(null!=o&&""!==String(o).trim())if(V(e.type)){const t=Number(String(o).trim());i[e.id]=Number.isFinite(t)?t:void 0}else i[e.id]=String(o);else i[e.id]=V(e.type)?void 0:""})),i):i}parseInitialValue(t){var i,e;if(!t)return[];let o=t;if("string"==typeof t){try{o=JSON.parse(t)}catch(t){return[]}if("string"==typeof o)try{o=JSON.parse(o)}catch(t){return[]}}return Array.isArray(o)?o.filter((t=>t&&"object"==typeof t)):o&&"object"==typeof o&&Array.isArray(null!==(i=o.rows)&&void 0!==i?i:o.Rows)?(null!==(e=o.rows)&&void 0!==e?e:o.Rows).filter((t=>t&&"object"==typeof t)):[]}hasMissingRequiredColumnValue(t){return this.getRequiredColumns().some((i=>{const e=null==t?void 0:t[i.id];return null==e||0===String(e).trim().length}))}hasAnyColumnLevelRequired(){return(this.columns||[]).some((t=>!!(null==t?void 0:t.required)))}hasAnyRequiredConfig(){return this.required||this.hasAnyColumnLevelRequired()}getRequiredColumns(){return(this.columns||[]).filter((t=>!!(null==t?void 0:t.required)))}getRowsForValidation(){const t=this.getRowsFromGrid();return this.gridApiMethods?t:this.initialGridRows}isRequiredCellInvalid(t,i){if(!(null==i?void 0:i.required))return!1;const e=null==t?void 0:t[i.id];return null==e||0===String(e).trim().length}shouldShowRequiredCellHighlights(){return this.hasSubmitValidationAttempt&&!!this.validationError}parsePastedCellValue(t,i){const e=i.trim();if(V(t.type)){if(!e)return;const t=Number(e);return Number.isFinite(t)?t:void 0}return e}coerceCellValueForSubmission(t,i){if(!V(t.type))return i;if(null==i)return"";const e=String(i).trim();if(!e)return"";const o=Number(e);return Number.isFinite(o)?o:""}getRowsFromGrid(){if(!this.gridApiMethods)return[];try{const t=[];return this.gridApiMethods.forEachNode((i=>{(null==i?void 0:i.data)&&"object"==typeof i.data&&t.push(this.normalizeRow(i.data))})),t}catch(t){return[]}}getRawRowsFromGrid(){if(!this.gridApiMethods)return[];try{const t=[];return this.gridApiMethods.forEachNode((i=>{(null==i?void 0:i.data)&&"object"==typeof i.data&&t.push(i.data)})),t}catch(t){return[]}}buildSubmissionPayloadString(){const t=this.getRowsFromGrid(),i=(this.gridApiMethods?t:this.initialGridRows).map((t=>{const i={};return(this.columns||[]).forEach((e=>{var o;i[e.id]=this.coerceCellValueForSubmission(e,null!==(o=null==t?void 0:t[e.id])&&void 0!==o?o:"")})),i}));return JSON.stringify({rows:i})}initializeRows(t,i){const e=this.parseInitialValue(t);if(!Array.isArray(this.columns)||0===this.columns.length)return this.initialGridRows=[],void(i&&(this.hasHydratedFromInitialValue=!0));let o;o=e.length>0?e.map((t=>this.normalizeRow(t))):[],this.initialGridRows=[...o],i&&(this.hasHydratedFromInitialValue=!0),this.validateAndEmitError(),this.emitValue()}emitValue(){const t=this.buildSubmissionPayloadString();this.el.dispatchEvent(new CustomEvent("input",{bubbles:!0,detail:t})),this.el.dispatchEvent(new CustomEvent("change",{bubbles:!0,detail:t}))}validateAndEmitError(){var t;const i=this.getValidationError();this.validationError=i,null===(t=this.gridApiMethods)||void 0===t||t.refreshCells(),this.el.dispatchEvent(new CustomEvent("error",{bubbles:!0,detail:i}))}getValidationError(){const t=this.getRowsForValidation(),i=this.hasAnyRequiredConfig();return i&&t.length<1?"At least one row is required":i&&t.some((t=>this.hasMissingRequiredColumnValue(t)))?"Please complete all required columns in each row":""}getGridHeight(){return`${Math.min(600,Math.max(400,120+44*(this.gridApiMethods?this.gridRowCount:this.initialGridRows.length)))}px`}hasConfiguredAggregates(){return(this.columns||[]).some((t=>V(t.type)&&!!t.aggregate))}getAggregateDecimalPlaces(t){const i=Number(null==t?void 0:t.aggregateDecimalPlaces);return!Number.isInteger(i)||i<0?1:i}getAggregateValue(t){if(!V(t.type)||!t.aggregate)return null;const i=this.getRowsForAggregation().map((i=>Number(null==i?void 0:i[t.id]))).filter((t=>Number.isFinite(t)));if(0===i.length)return null;switch(t.aggregate){case"sum":return i.reduce(((t,i)=>t+i),0);case"avg":return i.reduce(((t,i)=>t+i),0)/i.length;case"min":return Math.min(...i);case"max":return Math.max(...i);default:return null}}getRowsForAggregation(){const t=this.getRowsFromGrid();return this.gridApiMethods?0===t.length&&this.gridRowCount>0?this.initialGridRows:t:this.initialGridRows}hasAnyRowsForAggregation(){return this.getRowsForAggregation().length>0}getAggregateLabel(t){switch(t.aggregate){case"sum":return"Sum";case"avg":return"Avg";case"min":return"Min";case"max":return"Max";default:return""}}getFooterCellDisplayValue(t,i){if(V(t.type)&&t.aggregate){const i=this.getAggregateValue(t);return null==i?null:i}return 0===i&&this.hasConfiguredAggregates()&&!V(t.type)?"Summary":null}getGridOptions(){return this.hasConfiguredAggregates()?Object.assign(Object.assign({},this.gridOptions),{pinnedBottomRowData:[{}]}):this.gridOptions}refreshAggregateFooter(){if(this.hasConfiguredAggregates()&&this.gridApiMethods)try{this.gridApiMethods.refreshCells()}catch(t){this.gridApiMethods=void 0}}buildGridColumns(t){const i=(this.columns||[]).map(((i,e)=>({headerName:i.required?`${i.name} *`:i.name,field:i.id,editable:i=>{var e;return!t&&"bottom"!==(null===(e=null==i?void 0:i.node)||void 0===e?void 0:e.rowPinned)},suppressHeaderMenuButton:!0,sortable:!1,rowDrag:0==e&&!t,filter:!1,cellClassRules:{"table-input-required-invalid":t=>{var e;if("bottom"===(null===(e=null==t?void 0:t.node)||void 0===e?void 0:e.rowPinned))return!1;const o=null==t?void 0:t.data;return!(!o||"object"!=typeof o)&&this.shouldShowRequiredCellHighlights()&&this.isRequiredCellInvalid(o,i)}},cellDataType:V(i.type)?"number":"text",autoHeight:!0,wrapText:!0,cellStyle:{display:"flex",alignItems:"center"},valueGetter:t=>{var o,n;return"bottom"===(null===(o=null==t?void 0:t.node)||void 0===o?void 0:o.rowPinned)?this.getFooterCellDisplayValue(i,e):null===(n=null==t?void 0:t.data)||void 0===n?void 0:n[i.id]},valueFormatter:t=>{var e,o;if("bottom"!==(null===(e=null==t?void 0:t.node)||void 0===e?void 0:e.rowPinned))return null==t?void 0:t.value;if(V(i.type)&&i.aggregate){if(!this.hasAnyRowsForAggregation())return`${this.getAggregateLabel(i)}: N/A`;const e=Number(null==t?void 0:t.value);if(!Number.isFinite(e))return"";const o=this.getAggregateDecimalPlaces(i);return`${this.getAggregateLabel(i)}: ${e.toFixed(o)}`}return null!==(o=null==t?void 0:t.value)&&void 0!==o?o:""},valueSetter:t=>{var e,o;if("bottom"===(null===(e=null==t?void 0:t.node)||void 0===e?void 0:e.rowPinned))return!1;const n=null===(o=null==t?void 0:t.data)||void 0===o?void 0:o[i.id];let s=null==(null==t?void 0:t.newValue)?"":String(t.newValue);if(V(i.type)){const t=String(s||"").trim();if(t){const i=Number(t);if(!Number.isFinite(i))return!1;s=i}else s=void 0}return n!==s&&(t.data[i.id]=s,!0)}})));if(t)return i;const e={headerName:"Actions",field:"actions",editable:!1,sortable:!1,filter:!1,suppressHeaderMenuButton:!0,resizable:!1,cellRenderer:"actionsRenderer",cellRendererParams:{hideActions:t=>"bottom"===(null==t?void 0:t.rowPinned),actionList:[{id:"remove-row",iconName:"trashCan",title:"Remove Row",handleOnClick:(t,i)=>{const e=Number(null==i?void 0:i.rowIndex);!Number.isInteger(e)||e<0||this.handleRemoveRow(e)}}]}};return[...i,e]}getGridColumns(t){const i=`${t}::${this.columnsSignature}`;return this.cachedGridColumnsKey===i&&this.cachedGridColumns.length>0||(this.cachedGridColumnsKey=i,this.cachedGridColumns=this.buildGridColumns(t)),this.cachedGridColumns}handleGridDataChanged(){const t=this.getRowsFromGrid();this.gridRowCount=t.length,this.emitValue(),this.validateAndEmitError(),this.refreshAggregateFooter()}render(){const t=this.readonly||this.disabled;return i("div",{key:"1567aefbf4f467f3a9c6e012811c5bf927a65bfb",class:"table-input-container"},this.columns.length>0?i("div",null,i("div",{class:"table-grid-wrapper"},i("client-side-grid",{key:`table-grid-${this.gridRenderNonce}`,columnDefs:this.getGridColumns(t),rowData:this.initialGridRows,gridHeight:this.getGridHeight(),gridOptions:this.getGridOptions(),gridApiCallback:this.handleGridApiCallback})),!t&&i("div",{class:"table-input-add-row-button"},i("udp-button",{variant:"text",onClick:()=>this.handleAddRow(),startIcon:i("udp-icon",{iconName:"add",color:"inherit"})},"Add a Row"))):i("div",{class:"table-empty-state"},"No columns configured."))}get el(){return n(this)}static get watchers(){return{initialValue:[{onInitialValueChange:0}],columns:[{onColumnsChange:0}],error:[{onErrorChange:0}],initialGridRows:[{onSeedRowsChange:0}]}}};L.style=":host{display:block}.table-input-container{display:flex;flex-direction:column;gap:var(--spacing-03, 12px)}.table-grid-wrapper{overflow:hidden}.table-grid-wrapper .ag-cell.table-input-required-invalid{background-color:#fff5f5;box-shadow:inset 0 0 0 1px #d32f2f}.table-empty-state{color:var(--gray-07, #666);font-size:0.875rem}.table-input-add-row-button{display:flex;justify-content:center;margin:var(--spacing-03) 0}.aggregate-summary-row{display:grid;grid-template-columns:repeat(auto-fit, minmax(160px, 1fr));gap:8px;background:var(--gray-01, #f8f8f8);border:1px solid var(--gray-03);border-radius:4px;padding:8px}.aggregate-summary-cell{font-weight:600;font-size:0.875rem}";const U=class{constructor(i){t(this,i),this.label="Response Tally",this.yesCount=0,this.noCount=0,this.naCount=0,this.totalFields=0,this.disabled=!1,this.readonly=!1,this.size="normal",this.margin="normal"}render(){const t=!!this.error,e=this.totalFields-(this.yesCount+this.noCount+this.naCount);return i(o,{key:"786b5c03c99141a8748903f0774f11ace85f5919",class:{"udp-input":!0,"udp-input--error":t,"udp-input--disabled":this.disabled,"udp-input--readonly":this.readonly,[`udp-input--size-${this.size}`]:!0,[`udp-input--margin-${this.margin}`]:!0}},i("div",{key:"f4c78c29cf31735f51b240656b7d8cf7e57be3ee",class:"tally-container"},this.label&&i("unity-typography",{key:"3190e645dcfc05cfff0383226789772c85cd49f8",variant:"caption-text"},i("label",{key:"1849876e3f91ea58445466b39b93f39b628b2f1b",htmlFor:this.id,class:"tally-label"},this.label)),i("div",{key:"ea05a601e0a637382d28a7df1606881aceea477f",class:"tally-content",id:this.id},i("div",{key:"f0f50415cb8b6fc02e98ce69f8b90b4be6a982db",class:"tally-stats"},i("div",{key:"17c79e127248f374525763f0ad8aef44efd583f5",class:"tally-item tally-yes"},i("unity-typography",{key:"c6fefef0c2d2ed5674b9a1b8a33a82fe63385a21",variant:"h4",class:"tally-count"},this.yesCount),i("unity-typography",{key:"4c3941792fb91bddc62784232657e5e8180dc16f",variant:"caption-text",class:"tally-label"},"Yes")),i("div",{key:"22d6cf2a1994a54c996363e4789777cc24d659c5",class:"tally-item tally-no"},i("unity-typography",{key:"dc4015cfd53dfb122ccbad61fc34913ec62b2b76",variant:"h4",class:"tally-count"},this.noCount),i("unity-typography",{key:"0695eca7a58b03b1c531ef61934f81ca01247e94",variant:"caption-text",class:"tally-label"},"No")),i("div",{key:"23faa1ff699cc8c667100e4a8f678efac50af145",class:"tally-item tally-na"},i("unity-typography",{key:"228e3e62c36f159fe40157f950cb679c718d5c20",variant:"h4",class:"tally-count"},this.naCount),i("unity-typography",{key:"1ca40cd0471647bdf97abeeccf471ef959aa3dea",variant:"caption-text",class:"tally-label"},"Not Applicable")),e>0&&i("div",{key:"7e397057a121192dbb43bbb72eb7f905105f4e76",class:"tally-item tally-unanswered"},i("unity-typography",{key:"f3a6bdb016986659913d702b71b7058f84b67851",variant:"h4",class:"tally-count"},e),i("unity-typography",{key:"5e7caa8d0d3e7befc000759ac9cd61caeab476a4",variant:"caption-text",class:"tally-label"},"Unanswered"))),i("div",{key:"689f65675f9078d2db8c3bc2d39cf376c9d5473b",class:"tally-summary"},i("unity-typography",{key:"98d20bfacdcf884af50354365486d0dd154612bc",variant:"caption-text"},"Total Questions: ",this.totalFields))),t&&i("div",{key:"0b64e68843056739c707f2fade834c0a316defd9",class:"error-message"},i("unity-typography",{key:"3cad3e846ee55c6aea07c5ebf513c782c20807fb",variant:"caption-text",color:"error"},this.error))))}};U.style=":host{display:block;width:100%}.tally-container{display:flex;flex-direction:column;gap:var(--spacing-02, 8px)}.tally-label{font-weight:600;margin-bottom:var(--spacing-02, 8px)}.tally-loading{display:flex;align-items:center;justify-content:center;padding:var(--spacing-04, 16px);color:var(--text-secondary, #6b7280)}.tally-content{display:flex;flex-direction:column;gap:var(--spacing-03, 12px)}.tally-stats{display:flex;gap:var(--spacing-04, 16px);flex-wrap:wrap}.tally-item{display:flex;flex-direction:column;align-items:center;padding:var(--spacing-03, 12px) var(--spacing-04, 16px);border-radius:var(--border-radius-01, 4px);border:1px solid var(--border-subtle, #e5e7eb);background-color:var(--layer-01, #ffffff);min-width:80px;flex:1;max-width:120px}.tally-item.tally-yes{border-color:var(--support-success, #42be65);background-color:var(--support-success-hover, #f6f8ff)}.tally-item.tally-no{border-color:var(--support-error, #da1e28);background-color:var(--support-error-hover, #fff1f1)}.tally-item.tally-unanswered{border-color:var(--support-warning, #f1c21b);background-color:var(--support-warning-hover, #fcf4d6)}.tally-count{font-weight:700;line-height:1.2;margin-bottom:var(--spacing-01, 4px)}.tally-yes .tally-count{color:var(--support-success, #42be65)}.tally-no .tally-count{color:var(--support-error, #da1e28)}.tally-unanswered .tally-count{color:var(--support-warning, #f1c21b)}.tally-item .tally-label{margin:0;font-weight:500;text-transform:uppercase;font-size:0.75rem;letter-spacing:0.02em}.tally-summary{padding:var(--spacing-02, 8px) 0;border-top:1px solid var(--border-subtle, #e5e7eb);text-align:center}.error-message{margin-top:var(--spacing-02, 8px);padding:var(--spacing-02, 8px);border-radius:var(--border-radius-01, 4px);background-color:var(--support-error-hover, #fff1f1);border:1px solid var(--support-error, #da1e28)}:host(.udp-input--size-small) .tally-item{padding:var(--spacing-02, 8px) var(--spacing-03, 12px);min-width:60px;max-width:90px}:host(.udp-input--size-small) .tally-count{font-size:1.25rem}:host(.udp-input--size-large) .tally-item{padding:var(--spacing-04, 16px) var(--spacing-05, 20px);min-width:100px;max-width:150px}:host(.udp-input--size-large) .tally-count{font-size:2rem}:host(.udp-input--margin-none) .tally-container{gap:0}:host(.udp-input--margin-dense) .tally-container{gap:var(--spacing-01, 4px)}:host(.udp-input--margin-comfortable) .tally-container{gap:var(--spacing-04, 16px)}:host(.udp-input--disabled) .tally-item{opacity:0.5;pointer-events:none}:host(.udp-input--readonly) .tally-item{background-color:var(--field-01, #f4f4f4)}@media (max-width: 480px){.tally-stats{flex-direction:column}.tally-item{max-width:none;flex:none}}";const K=class{constructor(i){t(this,i),this.launchFollowUpFormSideSheet=e(this,"launchFollowUpFormSideSheet",7),this.disabled=!1,this.readonly=!1,this.currentValues={},this.clientUserInfo={id:null,displayName:null,email:null},this.udpFormSubmission=null,this.tallyData={yesCount:0,noCount:0,naCount:0,totalFields:0},this.formApi=null}propChanged(){this.updateFieldComponent()}async componentWillLoad(){this.updateFieldComponent(),this.question.fieldTypeId===q.Tally&&await this.initializeFormApiForTally()}async initializeFormApiForTally(){try{if(this.formApi=await I(this.el),this.formApi){const t=this.formApi.subscribe((()=>{this.calculateTally()}),{active:!0,dirty:!0,values:!0});this.unsubscribeFormApi=t,this.calculateTally()}}catch(t){console.error("Failed to initialize form API for tally:",t)}}calculateTally(){if(this.formApi&&this.question.fieldTypeId===q.Tally)try{const t=this.formApi.getState().values,i=this.el.closest("stencil-form");if(!i)return;const e=i.querySelectorAll("udp-question"),o=[];e.forEach((t=>{if(t.question&&t.question.fieldTypeId===q.YesNo){const i=`${t.question.questionIdentifierKey}.value`;i&&this.shouldIncludeFieldInTally(i)&&o.push(i)}}));let n=0,s=0,a=0;o.forEach((i=>{const[e,o]=i.split("."),r=t[e][o].value;"true"===r||!0===r?n++:"false"===r||!1===r?s++:"na"===r&&a++})),this.tallyData={yesCount:n,noCount:s,naCount:a,totalFields:o.length},this.updateFieldComponent()}catch(t){console.error("Error calculating tally:",t)}}shouldIncludeFieldInTally(t){const i=this.question.fieldProperties;return(null==i?void 0:i.includeFields)&&i.includeFields.length>0?i.includeFields.includes(t):!((null==i?void 0:i.excludeFields)&&i.excludeFields.length>0&&i.excludeFields.includes(t))}updateFieldComponent(){this._fieldComponent=this.getFieldComponent()}getCurrentQuestionUploadTimestamps(t){var i,e,o,n,s,a,r;const[l,u]=null!==(e=null===(i=this.question.questionIdentifierKey)||void 0===i?void 0:i.split("."))&&void 0!==e?e:["",""];return(null===(r=null===(a=null===(s=null===(n=null===(o=this.currentValues)||void 0===o?void 0:o[l])||void 0===n?void 0:n[u])||void 0===s?void 0:s.metadata)||void 0===a?void 0:a[t])||void 0===r?void 0:r.timestamp)||null}getFieldComponent(){var t,e,o,n,s,a,r,l,u,d,p,c,h,m,b,v,g,f,y,x,w,k;const z={name:`${this.question.questionIdentifierKey}.value`,required:this.question.required},C=Object.assign(Object.assign({},this.question.fieldProperties),{id:this.questionNumber,disabled:this.disabled,readonly:this.readonly||!0===(null===(e=null===(t=this.question)||void 0===t?void 0:t.fieldProperties)||void 0===e?void 0:e.readOnly)});switch(this.question.fieldTypeId){case q.SingleLineText:return i("stencil-field",Object.assign({},z),i("text-field",Object.assign({},C)));case q.MultiLineText:return i("stencil-field",Object.assign({},z),i("text-area",Object.assign({fullWidth:!0},C)));case q.Checkbox:return i("stencil-field",Object.assign({},z),i("selectable-list",Object.assign({valueKey:"value",displayKey:"display",multiSelect:!0,useCheckbox:!0},C)));case q.RadioButton:return i("stencil-field",Object.assign({},z),i("selectable-list",Object.assign({valueKey:"value",displayKey:"display",useCheckbox:!0},C)));case q.DropdownSingleSelect:case q.DropdownMultipleSelect:let t=null===(n=null===(o=null==C?void 0:C.items)||void 0===o?void 0:o.map)||void 0===n?void 0:n.call(o,(t=>Object.assign({label:t.display,value:t.value},C)));return i("stencil-field",Object.assign({},z),i("udp-selector",Object.assign({options:null!=t?t:[],multiSelect:this.question.fieldTypeId===q.DropdownMultipleSelect},C)));case q.YesNo:return i("stencil-field",Object.assign({},z),i("selectable-list",Object.assign({valueKey:"value",displayKey:"display",useCheckbox:!0,multiSelect:!1,items:[{value:"true",display:"Yes"},{value:"false",display:"No"},{value:"na",display:"Not Applicable"}]},C)));case q.ListMultiSelect:return i("stencil-field",Object.assign({},z),i("selectable-list",Object.assign({valueKey:"value",displayKey:"display",multiSelect:!0},C)));case q.DateSelector:return i("stencil-field",Object.assign({},z),i("udp-date-selector",Object.assign({min:null==C?void 0:C.minDate,max:null==C?void 0:C.maxDate},C)));case q.TimeSelector:return i("stencil-field",Object.assign({},z),i("udp-time-selector",Object.assign({min:null==C?void 0:C.minTime,max:null==C?void 0:C.maxTime},C)));case q.DateTimeSelector:return i("stencil-field",Object.assign({},z),i("udp-datetime-selector",Object.assign({max:null==C?void 0:C.maxDateTime,min:null==C?void 0:C.minDateTime},C)));case q.FileUpload:return i("div",null,i("stencil-field",Object.assign({},z,{fieldIdentifierKey:`${this.question.questionIdentifierKey}`,registerMetadata:!0,metadataFieldNames:["file.timestamp"]}),i("file-upload",Object.assign({fullWidth:!0,allowMultiple:!!(null==C?void 0:C.allowMultiple),metadataTimestampKey:"file.timestamp",uploadTimestamps:this.getCurrentQuestionUploadTimestamps("file")},C))));case q.ImageUpload:return i("div",null,i("stencil-field",Object.assign({},z,{fieldIdentifierKey:`${this.question.questionIdentifierKey}`,registerMetadata:!0,metadataFieldNames:["image.timestamp"]}),i("image-upload",Object.assign({fullWidth:!0,allowMultiple:!!(null==C?void 0:C.allowMultiple),uploadTimestamps:this.getCurrentQuestionUploadTimestamps("image")},C))));case q.Signature:return i("div",null,i("stencil-field",Object.assign({},z,{fieldIdentifierKey:`${this.question.questionIdentifierKey}`,registerMetadata:!0,metadataFieldNames:["signature.latitude","signature.longitude","signature.timestamp"]}),i("signature-input",Object.assign({},C,{value:this.value}))),i("stencil-field",{required:this.question.required,name:`${this.question.questionIdentifierKey}.metadata.signature.fullName`},i("text-field",Object.assign({},C,{label:"Full Name"}))));case q.Paragraph:return i("stencil-field",{name:this.question.name,required:!1},i("input",{type:"hidden",name:this.question.name,value:this.value||""}),this.value?i("unity-typography",{id:`paragraphText${this.question.name}`,variant:(null===(a=null===(s=this.styleOverrides)||void 0===s?void 0:s.paragraphText)||void 0===a?void 0:a.variant)||"body"},this.value):i("div",null));case q.Number:return i("stencil-field",Object.assign({},z),i("numeric-field",Object.assign({},C)));case q.Table:return i("stencil-field",Object.assign({},z),i("table-input",Object.assign({required:z.required},C)));case q.Tally:return i("tally-display",Object.assign({id:this.questionNumber,label:this.question.questionText||"Response Tally",yesCount:this.tallyData.yesCount,noCount:this.tallyData.noCount,naCount:this.tallyData.naCount,totalFields:this.tallyData.totalFields},C,{required:!1}));case q.FormMetadataDisplay:{const t=!!(null===(r=this.udpFormSubmission)||void 0===r?void 0:r.id),e=t?null!==(u=null===(l=this.udpFormSubmission)||void 0===l?void 0:l.userDisplayName)&&void 0!==u?u:null:null!==(p=null===(d=this.clientUserInfo)||void 0===d?void 0:d.displayName)&&void 0!==p?p:null,o=t?null!==(h=null===(c=this.udpFormSubmission)||void 0===c?void 0:c.userEmail)&&void 0!==h?h:null:null!==(b=null===(m=this.clientUserInfo)||void 0===m?void 0:m.email)&&void 0!==b?b:null,n=null!==(g=null===(v=this.udpFormSubmission)||void 0===v?void 0:v.submittedOn)&&void 0!==g?g:null;return i("form-metadata-display",Object.assign({userDisplayName:e,userEmail:o,submittedOn:n},C))}case q.Location:{const[t,e]=null!==(x=null===(y=null===(f=this.question)||void 0===f?void 0:f.questionIdentifierKey)||void 0===y?void 0:y.split("."))&&void 0!==x?x:["",""];return i("location-input",Object.assign({},C,{identifierKey:this.question.questionIdentifierKey,value:null===(k=null===(w=this.currentValues)||void 0===w?void 0:w[t])||void 0===k?void 0:k[e],required:this.question.required}))}default:return i("div",null)}}async componentDidLoad(){var t,i,e,o;this.question.fieldTypeId!==q.Tally||this.formApi||await this.initializeFormApiForTally();const n=[];for(const s in this.styleOverrides)n.push({id:s+this.question.name,fontOverride:null===(i=null===(t=this.styleOverrides)||void 0===t?void 0:t[s])||void 0===i?void 0:i.fontFamily,variant:null===(o=null===(e=this.styleOverrides)||void 0===e?void 0:e[s])||void 0===o?void 0:o.variant});n.forEach((t=>{var i,e,o;a[null==t?void 0:t.fontOverride]&&this.el&&this.el.shadowRoot&&r(null===(o=null===(e=null===(i=this.el)||void 0===i?void 0:i.shadowRoot)||void 0===e?void 0:e.getElementById)||void 0===o?void 0:o.call(e,t.id),a[null==t?void 0:t.fontOverride])}))}render(){var t,e,o,n;const s=this._fieldComponent,a=`${this.question.fieldTypeId===q.Paragraph?"":`${this.questionNumber}.`} ${this.question.questionText} ${this.question.required&&this.question.fieldTypeId!==q.Paragraph?"*":""}`,r=`${this.question.questionIdentifierKey}.value`,[l,u]=r.split(".");return s?i("div",{class:{hidden:this.question.fieldTypeId===q.Hidden,"question-container":!0}},i("div",{class:"question-title-and-helper-container"},i("div",{class:"question-title-and-followup-container"},this.question.questionText&&i("unity-typography",{id:`questionText${this.question.name}`,variant:(null===(e=null===(t=this.styleOverrides)||void 0===t?void 0:t.questionText)||void 0===e?void 0:e.variant)||"h3"},a),i("div",null,this.question.fieldProperties.allowFollowUpForms&&(()=>{var t;const e=null===(t=this.currentValues[l][u])||void 0===t?void 0:t.metadata,o=null==e?void 0:e.followUpFormSubmissionId;if(o){const t=`/page/${F.FormRendererPrivatePageId}?udpf_submissionId=${o}`;return i("stencil-icon-button",{icon:S("link"),tooltip:"Open Follow-Up Form",onClick:()=>window.open(t,"_blank")})}if(!this.readonly)return i("stencil-icon-button",{icon:S("document"),tooltip:"Create Follow-Up Form",onClick:()=>{console.log("clicked create follow up form"),this.launchFollowUpFormSideSheet.emit({sectionKey:l,questionKey:u})}})})())),this.question.helperText&&i("unity-typography",{id:`helperText${this.question.name}`,variant:(null===(n=null===(o=this.styleOverrides)||void 0===o?void 0:o.helperText)||void 0===n?void 0:n.variant)||"caption-text"},this.question.helperText)),s,this.question.fieldProperties.allowFollowUpForms&&i("div",null,i("stencil-field",{hidden:!0,name:`${this.question.questionIdentifierKey}.metadata.followUpParentFormId`},i("text-field",null)),i("stencil-field",{hidden:!0,name:`${this.question.questionIdentifierKey}.metadata.followUpParentFormVersion`},i("text-field",null)),i("stencil-field",{hidden:!0,name:`${this.question.questionIdentifierKey}.metadata.followUpParentFormSubmissionId`},i("text-field",null))),this.question.fieldProperties.allowComments&&i("udp-question-comments",{question:this.question,currentValues:this.currentValues,userId:this.clientUserInfo.id})):null}get el(){return n(this)}static get watchers(){return{question:[{propChanged:0}],questionNumber:[{propChanged:0}],value:[{propChanged:0}],disabled:[{propChanged:0}],readonly:[{propChanged:0}],styleOverrides:[{propChanged:0}]}}};K.style=".hidden{display:none}.question-container{border-top:1px solid rgba(0, 0, 0, 0.08);padding-top:1rem}.question-title-and-helper-container{display:flex;flex-direction:column;gap:var(--spacing-03)}.question-title-and-followup-container{display:flex;justify-content:space-between;align-items:center}";const _=class{constructor(i){t(this,i),this.questionCommentAction=e(this,"questionCommentAction",7),this.commentFieldProps={},this.currentValues={},this.userId=null}emitQuestionCommentAction(t,i){this.questionCommentAction.emit({type:t,questionIdentifierKey:this.question.questionIdentifierKey,commentId:i})}handleCommentAdd(){this.emitQuestionCommentAction("add",null)}handleCommentSave(t){this.emitQuestionCommentAction("save",t)}handleCommentEdit(t){this.emitQuestionCommentAction("edit",t)}handleCommentDelete(t){this.emitQuestionCommentAction("delete",t)}handleCommentEditClose(t){this.emitQuestionCommentAction("editClose",t)}render(){var t,e;const[o,n]=this.question.questionIdentifierKey.split("."),a=(null===(e=null===(t=this.currentValues)||void 0===t?void 0:t[o])||void 0===e?void 0:e[n])||{comments:[],draftComments:[]},r=Array.isArray(a.comments)?a.comments:a.comments?[a.comments]:[],l=Array.isArray(a.draftComments)?a.draftComments:a.draftComments?[a.draftComments]:[],u=l.length>0?l[0]:null,d=Object.values(this.currentValues||{}).some((t=>Object.values(t||{}).some((t=>{if(!t)return!1;const i=t.draftComments;return!(!i||Array.isArray(i)&&i.length<1)}))));return i("div",null,r.map(((t,e)=>{const o=`${this.question.questionIdentifierKey}.comments[${e}].value`,n=!u&&(null==t?void 0:t.userId)===this.userId;return u&&t.commentId==u.commentId?i("div",{class:"question-comment-draft-container",key:u.commentId||"draft-0"},i("stencil-field",{name:`${this.question.questionIdentifierKey}.draftComments[0].value`,required:!0,ignoreDirty:!0},i("text-area",Object.assign({},this.commentFieldProps,{label:"Comment:",placeholder:"Add a comment"}))),i("div",{class:"question-comment-action-container"},i("udp-button",{variant:"text",onClick:()=>this.handleCommentSave(u.commentId),startIcon:i("udp-icon",{iconName:"save",color:"inherit"})},"Save"),i("udp-button",{variant:"text",onClick:()=>this.handleCommentDelete(u.commentId),startIcon:i("udp-icon",{iconName:"trashCan",color:"inherit"})},"Delete"),i("udp-button",{variant:"text",onClick:()=>this.handleCommentEditClose(u.commentId),startIcon:i("udp-icon",{iconName:"close16",color:"inherit"})},"Cancel"))):(null==t?void 0:t.isDeleted)?i("div",null):i("div",{class:"question-comment-input-container",key:t.commentId||e},i("stencil-field",{name:o,style:{display:"none"}},i("text-area",{disabled:!0})),i("div",{class:"question-comment-display"},i("unity-typography",{variant:"h4",color:"inherit",class:"question-comment-header"},`${null==t?void 0:t.userDisplayName} ${(null==t?void 0:t.timestamp)?`on ${s(t.timestamp,"short")}`:""}`),null==t?void 0:t.value),i("div",{class:"question-comment-action-container"},n&&!d&&i("div",null,i("udp-button",{variant:"text",onClick:()=>this.handleCommentEdit(t.commentId),startIcon:i("udp-icon",{iconName:"edit",color:"inherit"})},"Edit"))))})),u&&u.isTempComment&&!r.includes((t=>t.commentId==u.commentId))&&i("div",{class:"question-comment-draft-container",key:u.commentId||"draft-0"},i("stencil-field",{name:`${this.question.questionIdentifierKey}.draftComments[0].value`,required:!0,ignoreDirty:!0},i("text-area",Object.assign({},this.commentFieldProps,{label:"Comment:",placeholder:"Add a comment"}))),i("div",{class:"question-comment-action-container"},i("udp-button",{variant:"text",onClick:()=>this.handleCommentEditClose(u.commentId),startIcon:i("udp-icon",{iconName:"trashCan",color:"inherit"})},"Cancel"),i("udp-button",{variant:"text",onClick:()=>this.handleCommentSave(u.commentId),startIcon:i("udp-icon",{iconName:"save",color:"inherit"})},"Save"))),!u&&!d&&i("div",{class:"question-comment-add-comment-button"},i("udp-button",{variant:"text",onClick:()=>this.handleCommentAdd(),startIcon:i("udp-icon",{iconName:"add",color:"inherit"})},"Add a Comment")))}};_.style=".question-comment-display{position:relative;display:flex;flex-direction:column;gap:var(--spacing-03);margin:var(--spacing-05) 0;border:1px solid var(--border-color, #ccc);border-radius:6px;padding:var(--spacing-05) var(--spacing-04);overflow-wrap:break-word;word-wrap:break-word}.question-comment-display unity-typography:not(.question-comment-header){display:block;white-space:pre-wrap;word-break:break-word;}.question-comment-display>.question-comment-header{position:absolute;bottom:-0.6em;right:1em;background:white;padding:0 0.4em;font-size:0.85em;white-space:nowrap;}.question-comment-add-comment-button{display:flex;justify-content:center;margin:var(--spacing-03) 0}.question-comment-action-container{display:flex;justify-content:end}";const G=class{constructor(i){t(this,i),this.isVisible=!1,this.isSaving=!1,this.saveErrorMessage=null,this.showSavedMessage=!1,this.shouldBeInline=!1,this.formApi=null,this.handleSaveClick=async()=>{if(!this.formApi||this.isSaving)return;if("function"!=typeof this.handleSave)return;const t=this.formApi.getState().values;try{await this.handleSave(t),this.formApi.reset(t)}catch(t){console.error("The onSave handler threw an error. The form will remain dirty.",t)}}}async componentDidLoad(){this.formApi=await I(this.el),this.checkForOverlap(),this.setupOverlapDetection()}disconnectedCallback(){this.resizeObserver&&this.resizeObserver.disconnect(),this.checkOverlapTimeoutId&&clearTimeout(this.checkOverlapTimeoutId)}handleWindowResize(){this.debouncedOverlapCheck()}setupOverlapDetection(){if("undefined"!=typeof ResizeObserver){this.resizeObserver=new ResizeObserver((()=>{this.debouncedOverlapCheck()}));const t=this.el.closest("udp-forms-ui, .form-container, udp-container");t&&this.resizeObserver.observe(t);const i=document.querySelector('main, [role="main"]')||document.body;i&&this.resizeObserver.observe(i)}}debouncedOverlapCheck(){this.checkOverlapTimeoutId&&clearTimeout(this.checkOverlapTimeoutId),this.checkOverlapTimeoutId=setTimeout((()=>{this.checkForOverlap()}),100)}checkForOverlap(){this.shouldBeInline=window.innerWidth<1280}render(){if(!this.isVisible&&!this.showSavedMessage)return null;const t=this.shouldBeInline;return i("div",{class:`${this.shouldBeInline?"inline-save-button":"floating-save-button"} ${this.isSaving?"saving":""} ${this.showSavedMessage?"saved":""}`},this.isSaving?i("div",{class:"saving-state"},i("unity-spinner",{size:"small"}),!t&&i("span",null,"Saving...")):this.isVisible?i("udp-icon-button",{icon:N,onClick:this.handleSaveClick,tooltip:"Save Changes",variant:"contained",color:t?"inherit":"primary",iconColor:t?"primary":null,size:t?"small":"medium"},t?"":"Save Changes"):i("div",{class:"saved-state"},i("span",null,"Saved")),this.saveErrorMessage&&i("div",{class:"save-error-tooltip"},this.saveErrorMessage))}get el(){return n(this)}};G.style=".floating-save-button{position:fixed;top:5rem;right:2rem;z-index:1000;animation:slideInDown 0.3s ease-out}.inline-save-button{position:relative;display:inline-flex;align-items:center;margin-left:auto;}.floating-save-button.saving,.inline-save-button.saving{pointer-events:none}.saving-state{display:flex;align-items:center;gap:0.5rem;padding:0.75rem 1rem;background:rgba(0, 0, 0, 0.8);color:white;border-radius:8px;font-size:0.9rem}.saved-state{display:flex;align-items:center;gap:0.5rem;padding:0.75rem 1rem;background:rgba(34, 139, 34, 0.9);color:white;border-radius:8px;font-size:0.9rem;animation:fadeIn 0.3s ease-out}.inline-save-button .saving-state{padding:0.5rem 0.75rem;background:rgba(0, 0, 0, 0.6);font-size:0.8rem}.inline-save-button .saved-state{padding:0.5rem 0.75rem;background:rgba(34, 139, 34, 0.8);font-size:0.8rem}.save-error-tooltip{position:absolute;top:100%;right:0;margin-top:0.5rem;background:#dc3545;color:white;padding:0.5rem 1rem;border-radius:8px;font-size:0.8rem;white-space:nowrap;box-shadow:0 4px 12px rgba(220, 53, 69, 0.3);animation:fadeIn 0.3s ease-out;z-index:1001}.save-error-tooltip::after{content:'';position:absolute;bottom:100%;right:1rem;border:6px solid transparent;border-bottom-color:#dc3545}.inline-save-button .save-error-tooltip{top:100%;bottom:auto;margin-top:0.5rem;margin-bottom:0}.inline-save-button .save-error-tooltip::after{top:-6px;border-top-color:transparent;border-bottom-color:#dc3545}@keyframes slideInDown{from{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{from{opacity:0}to{opacity:1}}@media (max-width: 768px){.floating-save-button{bottom:1rem;right:1rem;top:auto;}.saving-state{padding:0.6rem 0.8rem;font-size:0.8rem}.inline-save-button .saving-state{padding:0.4rem 0.6rem;font-size:0.75rem}}.primary-icon{--icon-color:var(--primary-color, #1976d2)}.primary-icon::part(icon){fill:var(--icon-color) !important}.primary-icon udp-icon-button::part(icon),.primary-icon .icon{fill:var(--primary-color, #1976d2) !important}@media (prefers-reduced-motion: reduce){.floating-save-button,.save-error-tooltip{animation:none}}";export{A as form_metadata_display,R as image_upload,T as location_input,D as signature_input,M as stencil_form,L as table_input,U as tally_display,K as udp_question,_ as udp_question_comments,G as udp_save_draft_button}
1
+ import{r as t,h as i,c as e,H as o,a as n}from"./index-Cgpvu-iV.js";import{d as s,f as a,o as r}from"./utils-kwLwITIE.js";import{Feature as l}from"ol";import{Point as d}from"ol/geom";import u from"ol/layer/Vector";import p from"ol/source/Vector";import{toLonLat as c,fromLonLat as h}from"ol/proj";import{Style as m,Icon as b}from"ol/style";import{m as v}from"./makeApiCall-B-daVutk.js";import g from"@carbon/icons/es/location--filled/32";import{XYZ as y}from"ol/source";import{C as f}from"./configService-DgYnEcjx.js";import{i as x,p as w,d as k,a as z,c as C,b as $}from"./udp-drive-utils-BwlXaZc5.js";import{createForm as j}from"final-form";import O from"lodash.debounce";import{b as q,U as F}from"./enums-Bn8TXZfi.js";import{g as S}from"./iconUtils-BzY-c9Op.js";import N from"@carbon/icons/es/save/20";import"axios";import"./iconMapping-C3k5yilV.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/location/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";import"@carbon/icons/es/ibm--elo--method-composer/16";import"@carbon/icons/es/undo/16";import"@carbon/icons/es/catalog/16";import"@carbon/icons/es/table--split/16";const A=class{constructor(i){t(this,i),this.displayOwnerFullName=!0,this.displayOwnerEmail=!0,this.displaySubmissionDate=!0}renderRow(t,e){return i("div",{class:"row"},i("span",{class:"label"},t),i("unity-typography",{class:"value",variant:"h4"},e))}render(){return i("div",{key:"63040b66bd59a3dc1b78d177357f935f1143b1a4",class:"container",role:"group","aria-label":"Form metadata"},this.displayOwnerFullName&&this.userDisplayName&&this.renderRow("Name",this.userDisplayName),this.displayOwnerEmail&&this.userEmail&&this.renderRow("Email",this.userEmail),this.displaySubmissionDate&&this.submittedOn&&this.renderRow("Submitted on",s(this.submittedOn,"long")))}};A.style=":host{display:block}.container{display:grid;gap:10px;padding:12px 14px;background:var(--unity-color-surface, #fff)}.row{display:grid;grid-template-columns:130px 1fr;align-items:baseline;column-gap:12px}.label{font-size:12px;line-height:1.2;letter-spacing:0.02em;text-transform:uppercase;color:var(--unity-color-text-secondary, rgba(0, 0, 0, 0.65))}.value{color:var(--unity-color-text, rgba(0, 0, 0, 0.9));overflow-wrap:anywhere}@media (max-width: 420px){.row{grid-template-columns:1fr;row-gap:4px}}";const R=class{constructor(i){t(this,i),this.change=e(this,"change",7),this.metadataEmit=e(this,"metadataEmit",7),this.allowedMimeTypes=["image/jpeg","image/png","image/gif","image/svg+xml","image/webp"],this.fullWidth=!1,this.allowMultiple=!1,this.hideDragAndDrop=!1,this.hideButton=!1,this.disabled=!1,this.readonly=!1,this.displayUploadTime=!1,this.handleFileChange=t=>{t.stopPropagation(),this.change.emit(t.detail)},this.handleMetadataEmit=t=>{t.stopPropagation(),this.metadataEmit.emit(t.detail)}}render(){var t,e;const n=null!==(t=this.dragAndDropMessage)&&void 0!==t?t:`Drag and drop your image${this.allowMultiple?"s":""} here`,s=null!==(e=this.browseFileMessage)&&void 0!==e?e:"Browse Image"+(this.allowMultiple?"s":"");return i(o,{key:"425712dd7384de03a8617d2e1d200282d5f7fdbf"},i("file-upload",{key:"43c63aa9992127322b1cf5593ef6a889e208e3d9",allowMultiple:this.allowMultiple,allowedMimeTypes:this.allowedMimeTypes,fullWidth:this.fullWidth,required:this.required,error:this.error,dragAndDropMessage:n,browseFileMessage:s,hideDragAndDrop:this.hideDragAndDrop,hideButton:this.hideButton,id:this.id,name:this.name,label:this.label,disabled:this.disabled,readonly:this.readonly,initialValue:this.initialValue,metadataTimestampKey:"image.timestamp",displayUploadTime:this.displayUploadTime,uploadTimestamps:this.uploadTimestamps,renderImage:!0,onChange:this.handleFileChange,onMetadataEmit:this.handleMetadataEmit}))}};async function I(t){let i=t,e=null;for(;i;){const t=i.closest("stencil-form");if(t){e=t;break}const o=i.getRootNode();if(!(o instanceof ShadowRoot))break;i=o.host}if(!e)return null;if("function"!=typeof e.getApi)return null;return await e.getApi()||null}R.style=":host{display:block}";const E=(t,i)=>{const e=`<svg xmlns="${t.attrs.xmlns}" viewBox="${t.attrs.viewBox}" width="${t.attrs.width}" height="${t.attrs.height}" fill="${i}">${t.content.map((t=>{const i=Object.entries(t.attrs).flatMap((([t,i])=>{const e=(t=>null==t?null:"string"==typeof t?t:"number"==typeof t?String(t):"boolean"==typeof t?t?"true":"false":null)(i);return null===e?[]:[`${t}="${e}"`]})).join(" ");return`<${t.elem} ${i}></${t.elem}>`})).join("")}</svg>`;return`data:image/svg+xml;utf8,${encodeURIComponent(e)}`},T=class{constructor(i){t(this,i),this.mapHeight="300px",this.mapZoom=17,this.showMap=!1,this.hideAddressSearch=!1,this.required=!1,this.language="en-US",this.disabled=!1,this.readonly=!1,this.countrySet="",this.defaultLocation=null,this.mapCenter=[0,0],this.isLoading=!1,this.internalError="",this.defaultCoordinates=null,this.initialSetup=async()=>{var t,i,e,o,n,s,a,r,d,h,v,y,f,x,w,k,z,C,$;this.markerSource=new p,this.markerFeature=new l,this.markerFeature.setStyle(new m({image:new b({src:E(g,"#ef4444"),scale:1,anchor:[.5,1]})})),this.markerSource.addFeature(this.markerFeature);const j=new u({source:this.markerSource});j.setZIndex(1e3),this.map.addLayer(j),(null===(e=null===(i=null===(t=this.value)||void 0===t?void 0:t.metadata)||void 0===i?void 0:i.location)||void 0===e?void 0:e.longitude)||await this.setupGeolocation(),(null===(s=null===(n=null===(o=this.value)||void 0===o?void 0:o.metadata)||void 0===n?void 0:n.location)||void 0===s?void 0:s.longitude)&&(null===(d=null===(r=null===(a=this.value)||void 0===a?void 0:a.metadata)||void 0===r?void 0:r.location)||void 0===d?void 0:d.latitude)&&(await this.setMarker(null===(y=null===(v=null===(h=this.value)||void 0===h?void 0:h.metadata)||void 0===v?void 0:v.location)||void 0===y?void 0:y.longitude,null===(w=null===(x=null===(f=this.value)||void 0===f?void 0:f.metadata)||void 0===x?void 0:x.location)||void 0===w?void 0:w.latitude),await(null===(k=this.addressSearchEl)||void 0===k?void 0:k.setQuery((null===($=null===(C=null===(z=this.value)||void 0===z?void 0:z.metadata)||void 0===C?void 0:C.location)||void 0===$?void 0:$.address)||""))),this.map.on("singleclick",(async t=>{if(this.readonly||this.disabled)return;const i=t.coordinate,[e,o]=c(i);await this.setMarker(e,o,{animate:!0}),await this.updateFormImage(e,o);const n=await this.reverseGeocode(o,e);n&&this.updateFormMetadata({longitude:e,latitude:o,address:n})}))},this.handleMapReady=async t=>{this.map=t.detail.map,await this.initialSetup()},this.handleAddressSelected=async t=>{const i=t.detail,e=i.position.lon,o=i.position.lat;this.showMap&&await this.setMarker(e,o),this.updateFormMetadata({longitude:e,latitude:o,address:i.address}),await this.updateFormImage(e,o)},this.handleAddressSearchCleared=()=>{var t,i;this.showMap&&(null===(t=this.markerSource)||void 0===t||t.clear()),this.internalError="",(null===(i=this.formApi)||void 0===i?void 0:i.customErrors)&&this.identifierKey&&delete this.formApi.customErrors[`${this.identifierKey}.value`],this.formApi&&this.identifierKey&&(this.formApi.change(`${this.identifierKey}.value`,null),this.formApi.change(`${this.identifierKey}.metadata.location.timestamp`,null),this.formApi.change(`${this.identifierKey}.metadata.location.latitude`,null),this.formApi.change(`${this.identifierKey}.metadata.location.longitude`,null),this.formApi.change(`${this.identifierKey}.metadata.location.streetNumber`,null),this.formApi.change(`${this.identifierKey}.metadata.location.streetName`,null),this.formApi.change(`${this.identifierKey}.metadata.location.municipality`,null),this.formApi.change(`${this.identifierKey}.metadata.location.countrySubdivisionName`,null),this.formApi.change(`${this.identifierKey}.metadata.location.postalCode`,null),this.formApi.change(`${this.identifierKey}.metadata.location.address`,null),this.formApi.change(`${this.identifierKey}.metadata.location.country`,null))}}onExternalErrorChange(t){"string"==typeof t&&t.length>0&&(this.internalError=t)}async validate(){var t,i,e,o,n,s,a;if(this.required){const r=null===(e=null===(i=null===(t=this.formApi)||void 0===t?void 0:t.getState)||void 0===i?void 0:i.call(t))||void 0===e?void 0:e.values,l=r&&this.identifierKey?r[this.identifierKey]:this.value;if(!Boolean((null===(n=null===(o=null==l?void 0:l.metadata)||void 0===o?void 0:o.location)||void 0===n?void 0:n.longitude)&&(null===(a=null===(s=null==l?void 0:l.metadata)||void 0===s?void 0:s.location)||void 0===a?void 0:a.latitude))){const t="Location is required";return this.internalError=t,{valid:!1,error:t}}}return this.internalError="",{valid:!0}}async componentWillLoad(){if(this.formApi=await I(this.el),this.identifierKey&&this.required){let t=this.el,i=null;for(;t;){const e=t.closest("stencil-form");if(e){i=e;break}const o=t.getRootNode();if(!(o instanceof ShadowRoot))break;t=o.host}if(i&&"function"==typeof i.registerField){const t=`${this.identifierKey}.value`;await i.registerField(t,{required:this.required})}}const t=this.defaultLocation?JSON.parse(this.defaultLocation):null;t&&"number"==typeof t.latitude&&"number"==typeof t.longitude&&(this.defaultCoordinates={latitude:t.latitude,longitude:t.longitude,address:t.address||""},this.mapCenter=[t.longitude,t.latitude]),this.initializeTileLayers()}async handleRegistrationChange(){if(this.identifierKey&&this.required){const t=this.findParentForm();if(t&&"function"==typeof t.registerField){const i=`${this.identifierKey}.value`;await t.registerField(i,{required:this.required})}}}findParentForm(){let t=this.el;for(;t;){const i=t.closest("stencil-form");if(i)return i;const e=t.getRootNode();if(!(e instanceof ShadowRoot))break;t=e.host}return null}initializeTileLayers(){f.config.AZURE_MAP_SUBSCRIPTION_KEY&&f.config.AZURE_MAP_SUBSCRIPTION_KEY.trim().length>0&&(this.tileLayers=[{name:"azure",source:new y({url:`https://atlas.microsoft.com/map/tile?subscription-key=${f.config.AZURE_MAP_SUBSCRIPTION_KEY}&api-version=2024-04-01&tilesetId=microsoft.base.road&zoom={z}&x={x}&y={y}`})}])}componentDidLoad(){this.validationErrorListener=t=>{const i=t.detail,e=null==i?void 0:i[`${this.identifierKey}.value`];"string"==typeof e&&e.length>0&&(this.internalError=e)},document.addEventListener("stencilFormInvalidEvent",this.validationErrorListener),this.syncAddressSearchFromValue()}handleValuePropChange(){this.syncAddressSearchFromValue()}async syncAddressSearchFromValue(){var t,i,e,o;const n=null===(e=null===(i=null===(t=this.value)||void 0===t?void 0:t.metadata)||void 0===i?void 0:i.location)||void 0===e?void 0:e.address;n&&await(null===(o=this.addressSearchEl)||void 0===o?void 0:o.setQuery(n))}disconnectedCallback(){this.validationErrorListener&&document.removeEventListener("stencilFormInvalidEvent",this.validationErrorListener)}async setupGeolocation(){var t;try{const t=await new Promise(((t,i)=>{navigator.geolocation?navigator.geolocation.getCurrentPosition((i=>{t({latitude:i.coords.latitude,longitude:i.coords.longitude,accuracy:i.coords.accuracy})}),(t=>{i(new Error(t.message||"Failed to get location"))}),{enableHighAccuracy:!0,timeout:5e3,maximumAge:0}):i(new Error("Geolocation not supported"))})),i=await this.reverseGeocode(t.latitude,t.longitude);this.showMap&&await this.setMarker(t.longitude,t.latitude),this.updateFormMetadata({longitude:t.longitude,latitude:t.latitude,address:i}),await this.updateFormImage(t.longitude,t.latitude)}catch(i){console.error("Geolocation error:",i.message),this.defaultCoordinates&&(await this.setMarker(this.defaultCoordinates.longitude,this.defaultCoordinates.latitude),await(null===(t=this.addressSearchEl)||void 0===t?void 0:t.setQuery(this.defaultCoordinates.address)),this.updateFormMetadata({longitude:this.defaultCoordinates.longitude,latitude:this.defaultCoordinates.latitude,address:{freeformAddress:this.defaultCoordinates.address,streetNumber:this.defaultCoordinates.streetNumber,streetName:this.defaultCoordinates.streetName,municipality:this.defaultCoordinates.municipality,countrySubdivisionName:this.defaultCoordinates.countrySubdivisionName,extendedPostalCode:this.defaultCoordinates.postalCode,country:this.defaultCoordinates.country}}),await this.updateFormImage(this.defaultCoordinates.longitude,this.defaultCoordinates.latitude))}}setMarker(t,i,e){var o;console.log("Setting marker at:",{lon:t,lat:i});const n=h([t,i]);console.log("Transformed coordinates:",{coord:n}),this.markerFeature||(this.markerFeature=new l),this.markerSource&&!this.markerSource.hasFeature(this.markerFeature)&&this.markerSource.addFeature(this.markerFeature),this.markerFeature.setGeometry(new d(n));const s=null===(o=null==e?void 0:e.animate)||void 0===o||o,a=this.map.getView().getZoom(),r=Math.max("number"==typeof a?a:this.mapZoom,15);return s?new Promise((t=>{this.map.getView().animate({center:n,zoom:r,duration:500},(()=>t()))})):(this.map.getView().setCenter(n),this.map.getView().setZoom(r),this.map.renderSync(),Promise.resolve())}async reverseGeocode(t,i){var e;this.isLoading=!0,this.internalError="";try{const o=new URL("https://atlas.microsoft.com/search/address/reverse/json");o.searchParams.append("api-version","1.0"),o.searchParams.append("subscription-key",f.config.AZURE_MAP_SUBSCRIPTION_KEY),o.searchParams.append("query",`${t},${i}`),o.searchParams.append("language",this.language);const n=await v("GET",o.toString());if(!n)throw new Error("Failed to get address from location");if(n.addresses&&n.addresses.length>0){const t=n.addresses[0].address.freeformAddress;return await(null===(e=this.addressSearchEl)||void 0===e?void 0:e.setQuery(t)),n.addresses[0].address}}catch(t){this.internalError="Failed to get address from location"}finally{this.isLoading=!1}}async captureAzureMapStatic(t,i,e){var o,n;try{const s=null!==(n=null===(o=this.map)||void 0===o?void 0:o.getSize())&&void 0!==n?n:[500,300],a=Math.min(s[0],2048),r=Math.min(s[1],2048),l=new URL("https://atlas.microsoft.com/map/static/png");return l.searchParams.append("api-version","1.0"),l.searchParams.append("subscription-key",f.config.AZURE_MAP_SUBSCRIPTION_KEY),l.searchParams.append("center",`${t},${i}`),l.searchParams.append("zoom",e.toString()),l.searchParams.append("width",a.toString()),l.searchParams.append("height",r.toString()),l.searchParams.append("pins",`default|coef4444||${t} ${i}`),l.toString()}catch(t){return console.error("Failed to generate Azure Maps static image:",t),null}}async urlToFile(t,i){if(!t)return null;let e=0,o=null;do{if(o=await fetch(t),429!==o.status)break;if(e>=5)break;const i=o.headers.get("Retry-After"),n=i?Number.parseInt(i,10):Number.NaN,s=Number.isFinite(n)?1e3*n:Math.min(1e4,500*2**e);e+=1,await new Promise((t=>setTimeout(t,s)))}while(e<=5);if(!(null==o?void 0:o.ok))return null;const n=await o.blob();return new File([n],i,{type:n.type})}async updateFormImage(t,i){if(!t||!i)return;const e=await this.captureAzureMapStatic(t,i,14);if(e){const t=await this.urlToFile(e,`map-snapshot-${Date.now()}.png`);t&&this.formApi&&this.identifierKey&&this.formApi.change(`${this.identifierKey}.value`,t)}}updateFormMetadata(t){this.formApi&&this.identifierKey&&(this.formApi.change(`${this.identifierKey}.metadata.location.timestamp`,(new Date).toISOString()),this.formApi.change(`${this.identifierKey}.metadata.location.latitude`,t.latitude),this.formApi.change(`${this.identifierKey}.metadata.location.longitude`,t.longitude),this.formApi.change(`${this.identifierKey}.metadata.location.streetNumber`,t.address.streetNumber),this.formApi.change(`${this.identifierKey}.metadata.location.streetName`,t.address.streetName),this.formApi.change(`${this.identifierKey}.metadata.location.municipality`,t.address.municipality),this.formApi.change(`${this.identifierKey}.metadata.location.countrySubdivisionName`,t.address.countrySubdivisionName),this.formApi.change(`${this.identifierKey}.metadata.location.postalCode`,t.address.extendedPostalCode),this.formApi.change(`${this.identifierKey}.metadata.location.address`,t.address.freeformAddress),this.formApi.change(`${this.identifierKey}.metadata.location.country`,t.address.country),this.internalError="",this.formApi.customErrors&&delete this.formApi.customErrors[`${this.identifierKey}.value`])}render(){const t=this.projection&&this.projectionDefs?{[this.projection]:this.projectionDefs}:void 0,e=!!this.internalError;return f.config.AZURE_MAP_SUBSCRIPTION_KEY&&0!=f.config.AZURE_MAP_SUBSCRIPTION_KEY.trim().length?i(o,{class:{"udp-input":!0,"udp-input--error":e},id:this.id},i("div",{class:"question-item-location-input-container"},!this.hideAddressSearch&&i("address-search",{ref:t=>this.addressSearchEl=t,inputId:this.id,disabled:this.disabled,readonly:this.readonly,language:this.language,countrySet:this.countrySet,loading:this.isLoading,error:this.internalError,onAddressSelected:this.handleAddressSelected,onSearchCleared:this.handleAddressSearchCleared,appendSuggestionsToBody:!0}),this.showMap&&i("base-map",{mapHeight:this.mapHeight,mapCenter:this.mapCenter,enableZoomControl:!0,enableFullScreenControl:!0,enableDragRotateAndZoom:!0,onMapReady:this.handleMapReady,projectionDefs:t,mapProjection:this.projection,tileLayersOptions:this.tileLayers}))):i("div",{class:"error-message"},i("unity-typography",{variant:"caption-text",color:"error"},"Azure Map Subscription Key is required."))}get el(){return n(this)}static get watchers(){return{error:[{onExternalErrorChange:0}],required:[{handleRegistrationChange:0}],identifierKey:[{handleRegistrationChange:0}],value:[{handleValuePropChange:0}]}}};T.style=':host(.udp-input){display:block;box-sizing:border-box;position:relative}:host(.udp-input--full-width){width:100%}:host(.udp-input--error){--input-border-color:var(--input-underline-color-error)}:host(.udp-input--disabled){pointer-events:none;opacity:0.5;cursor:not-allowed}:host(.udp-input--required){position:relative}:host(.udp-input--readonly){--input-background:var(--gray-02)}:host(.udp-input--hidden){display:none}:host(.udp-input--checked){--input-accent-color:var(--primary-color)}:host(.udp-input--multi-select){--list-max-height:200px}:host(.udp-input) .bx--text-input:focus{outline:none;}:host(.udp-input) .bx--form-item{margin-bottom:var(--spacing-05)}:host(.udp-input) .bx--label{display:block;margin-bottom:var(--spacing-03);color:var(--text-main);font-size:var(--caption-text-font-size);font-weight:var(--caption-text-font-weight);line-height:var(--caption-text-line-height)}@media (max-width: var(--breakpoint-xs-max)){:host(.udp-input){margin-bottom:var(--spacing-04)}:host(.udp-input) .bx--form-item{margin-bottom:var(--spacing-04)}}@media (min-width: var(--breakpoint-sm-min)){:host(.udp-input){min-height:2.5rem;}}:host(.udp-input--size-small) .bx--text-input,:host(.udp-input--size-small) textarea,:host(.udp-input--size-small) input[type="text"],:host(.udp-input--size-small) input[type="number"],:host(.udp-input--size-small) input[type="email"],:host(.udp-input--size-small) input[type="password"],:host(.udp-input--size-small) input[type="tel"],:host(.udp-input--size-small) input[type="url"],:host(.udp-input--size-small) input[type="search"]{padding:var(--spacing-02);padding-bottom:6px;font-size:var(--caption-font-size, 0.875rem)}:host(.udp-input--size-normal) .bx--text-input,:host(.udp-input--size-normal) textarea,:host(.udp-input--size-normal) input[type="text"],:host(.udp-input--size-normal) input[type="number"],:host(.udp-input--size-normal) input[type="email"],:host(.udp-input--size-normal) input[type="password"],:host(.udp-input--size-normal) input[type="tel"],:host(.udp-input--size-normal) input[type="url"],:host(.udp-input--size-normal) input[type="search"]{padding:var(--spacing-03);padding-bottom:9px;font-size:var(--body-font-size)}:host(.udp-input--size-large) .bx--text-input,:host(.udp-input--size-large) textarea,:host(.udp-input--size-large) input[type="text"],:host(.udp-input--size-large) input[type="number"],:host(.udp-input--size-large) input[type="email"],:host(.udp-input--size-large) input[type="password"],:host(.udp-input--size-large) input[type="tel"],:host(.udp-input--size-large) input[type="url"],:host(.udp-input--size-large) input[type="search"]{padding:var(--spacing-04);padding-bottom:12px;font-size:var(--body-font-size)}:host(.udp-input--margin-none){margin:0}:host(.udp-input--margin-dense){margin:var(--spacing-02) 0}:host(.udp-input--margin-normal){margin:var(--spacing-03) 0}:host(.udp-input--margin-comfortable){margin:var(--spacing-04) 0}:host(.udp-input--size-small) .bx--label{margin-bottom:var(--spacing-02);font-size:var(--caption-font-size, 0.875rem)}:host(.udp-input--size-normal) .bx--label{margin-bottom:var(--spacing-03);font-size:var(--body-font-size)}:host(.udp-input--size-large) .bx--label{margin-bottom:var(--spacing-04);font-size:var(--body-font-size)}.bx--text-input,textarea,input[type="text"],input[type="number"],input[type="email"],input[type="password"],input[type="tel"],input[type="url"],input[type="search"]{display:inline-block;padding:var(--spacing-03);padding-bottom:9px;box-sizing:border-box;border:none;font-size:var(--body-font-size);background:var(--input-background);border-bottom:var(--underline-standard) solid var(--input-underline-color, var(--gray-08));width:100%;font-family:var(--font-family);transition:border-bottom-color 0.15s ease-in-out}.bx--text-input:focus,textarea:focus,input[type="text"]:focus,input[type="number"]:focus,input[type="email"]:focus,input[type="password"]:focus,input[type="tel"]:focus,input[type="url"]:focus,input[type="search"]:focus{border-bottom-color:var(--input-underline-color-focus, var(--primary-color));border-bottom-width:2px}.bx--text-input--error,.bx--text-input:user-invalid,:host(.udp-input--error) .bx--text-input,:host(.udp-input--error) textarea,:host(.udp-input--error) input[type="text"],:host(.udp-input--error) input[type="number"],:host(.udp-input--error) input[type="email"],:host(.udp-input--error) input[type="password"],:host(.udp-input--error) input[type="tel"],:host(.udp-input--error) input[type="url"],:host(.udp-input--error) input[type="search"],input[type="text"]:user-invalid,input[type="number"]:user-invalid,input[type="email"]:user-invalid,input[type="password"]:user-invalid,input[type="tel"]:user-invalid,input[type="url"]:user-invalid,input[type="search"]:user-invalid{border-bottom-color:var(--input-underline-color-error, var(--error-color-main)) !important}:host(.udp-input--disabled) .bx--text-input,:host(.udp-input--disabled) textarea,:host(.udp-input--disabled) input[type="text"],:host(.udp-input--disabled) input[type="number"],:host(.udp-input--disabled) input[type="email"],:host(.udp-input--disabled) input[type="password"],:host(.udp-input--disabled) input[type="tel"],:host(.udp-input--disabled) input[type="url"],:host(.udp-input--disabled) input[type="search"]{border-bottom-color:var(--input-underline-color-disabled, var(--gray-08))}textarea.bx--text-input{resize:vertical;min-height:var(--spacing-08)}.bx--text-input::placeholder,textarea::placeholder,input[type="text"]::placeholder,input[type="number"]::placeholder,input[type="email"]::placeholder,input[type="password"]::placeholder,input[type="tel"]::placeholder,input[type="url"]::placeholder,input[type="search"]::placeholder{color:var(--placeholder-color, #999);opacity:1}:host(.udp-input),:host{display:block;width:100%;box-sizing:border-box}.bx--form-item{margin-bottom:var(--spacing-05)}.bx--label{display:block;margin-bottom:var(--spacing-03)}.error-message,.bx--form-requirement,:host(.udp-input--error) .error-message,:host(.udp-input--error) .bx--form-requirement{color:var(--error-color-main, #d32f2f) !important;margin-top:var(--spacing-02);font-size:var(--caption-font-size, 0.875rem);--unity-typography-inherit-color:var(--error-color-main, #d32f2f)}.helper-text{color:var(--text-02, #525252);margin-top:var(--spacing-02);font-size:var(--caption-font-size, 0.875rem)}:host(.udp-input--disabled) .bx--text-input,:host(.udp-input--disabled) textarea,:host(.udp-input--disabled) input,:host(.udp-input--disabled){cursor:not-allowed;opacity:0.6}:host(.udp-input--readonly) .bx--text-input,:host(.udp-input--readonly) textarea,:host(.udp-input--readonly) input{background-color:var(--field-01, #f4f4f4);cursor:default}.question-item-location-input-container{display:flex;flex-direction:column;gap:var(--spacing-04, 16px);padding-top:var(--spacing-03, 8px) !important}:host{display:block;width:100%;height:100%}.map-container{flex:1;width:100%;min-height:400px;position:relative}@media (max-width: 768px){.map-container{min-height:320px}}';const D=class{constructor(i){t(this,i),this.change=e(this,"change",7),this.metadataEmit=e(this,"metadataEmit",7),this.includeLocation=!1,this.disabled=!1,this.readonly=!1,this.size="normal",this.margin="normal",this.cachedLocation=null,this.isInternalChange=!1,this.handleResize=()=>{this.resizeTimeout&&clearTimeout(this.resizeTimeout),this.resizeTimeout=setTimeout((()=>{const t=this.canvasEl.getBoundingClientRect();if(!this.lastCanvasRect||t.width!==this.lastCanvasRect.width||t.height!==this.lastCanvasRect.height){let i=this.signaturePad&&!this.signaturePad.isEmpty()?this.signaturePad.toDataURL():null;this.resizeCanvasForDPR(),this.initializeSignaturePad(),this.lastCanvasRect=t,i&&this.signaturePad&&this.signaturePad.fromDataURL(i)}}),200)},this.handleSignatureEnd=async()=>{if(this.signaturePad.isEmpty())this.isInternalChange=!0,this.value=null,this.change.emit(null),this.metadataEmit.emit({key:"signature.latitude",value:null}),this.metadataEmit.emit({key:"signature.longitude",value:null}),this.metadataEmit.emit({key:"signature.timestamp",value:null});else{const t=this.signaturePad.toDataURL(),i=await this.urlToFile(t,"signature.png");if(this.isInternalChange=!0,this.value=i,this.change.emit(i),this.metadataEmit.emit({key:"signature.timestamp",value:(new Date).toISOString()}),this.includeLocation)try{let t=this.cachedLocation;t||(t=await new Promise(((t,i)=>{navigator.geolocation.getCurrentPosition(t,i,{enableHighAccuracy:!0,timeout:3e4,maximumAge:0})}))),t?(this.metadataEmit.emit({key:"signature.latitude",value:t.coords.latitude}),this.metadataEmit.emit({key:"signature.longitude",value:t.coords.longitude})):(this.metadataEmit.emit({key:"signature.latitude",value:null}),this.metadataEmit.emit({key:"signature.longitude",value:null}))}catch(t){console.warn("Geolocation error:",t),this.metadataEmit.emit({key:"signature.latitude",value:null}),this.metadataEmit.emit({key:"signature.longitude",value:null})}}},this.clearSignature=()=>{this.signaturePad&&(this.signaturePad.clear(),this.handleSignatureEnd())}}async processAndLoadValue(t){if(t)try{const i=Array.isArray(t)?t[0]:t;let e=null;if("string"==typeof i&&x(i)){const t=await w(i);e=t&&t.driveFileId?await k({name:t.name,driveFileId:t.driveFileId,extension:t.name.split(".").pop()||""}):t}else z(i)?e=await k(i):"string"==typeof i?e=await C(i,"signature.png"):$(i)&&(e=i);e&&(this.value=e,this.signaturePad?await this.loadSignature(e):this.initializeSignaturePad())}catch(t){console.error("Failed to process signature value:",t)}else this.signaturePad&&this.signaturePad.clear()}onErrorChange(t){this.internalError=t}async handleValueUpdate(t){this.isInternalChange?this.isInternalChange=!1:this.canvasEl&&await this.processAndLoadValue(t)}async handleInitialValueUpdate(t){this.canvasEl&&await this.processAndLoadValue(t)}async componentWillLoad(){this.internalError=this.error,await this.loadSignaturePad(),this.includeLocation&&navigator.geolocation.getCurrentPosition((t=>{this.cachedLocation=t}),(t=>{console.warn("Prewarm geolocation error:",t),this.cachedLocation=null}),{enableHighAccuracy:!0,timeout:3e4,maximumAge:0})}async componentDidLoad(){this.initializeSignaturePad();const t=this.value||this.initialValue;t&&await this.processAndLoadValue(t),this.lastCanvasRect=this.canvasEl.getBoundingClientRect(),window.addEventListener("resize",this.handleResize)}disconnectedCallback(){window.removeEventListener("resize",this.handleResize),this.resizeTimeout&&clearTimeout(this.resizeTimeout)}resizeCanvasForDPR(){if(!this.canvasEl)return;const t=window.devicePixelRatio||1,i=this.canvasEl.getBoundingClientRect();this.canvasEl.width=i.width*t,this.canvasEl.height=i.height*t;const e=this.canvasEl.getContext("2d");e.setTransform(1,0,0,1,0,0),e.scale(t,t)}async loadSignaturePad(){if(!this.SignaturePadLib)try{const t=await import("signature_pad");this.SignaturePadLib=t.default}catch(t){console.error("Failed to load signature_pad library",t)}}initializeSignaturePad(){this.SignaturePadLib&&this.canvasEl&&(this.resizeCanvasForDPR(),this.signaturePad&&this.signaturePad.off(),this.signaturePad=new this.SignaturePadLib(this.canvasEl),this.signaturePad.addEventListener("endStroke",this.handleSignatureEnd),this.handleStateChange(),this.value&&this.loadSignature(this.value))}handleStateChange(){this.signaturePad&&(this.disabled||this.readonly?this.signaturePad.off():this.signaturePad.on())}async loadSignature(t){let i;if("string"==typeof t)i=t;else if(z(t))try{const e=await k(t);i=URL.createObjectURL(e)}catch(t){return void console.error("Error loading signature image from UdpDriveFile:",t)}else t instanceof File&&(i=URL.createObjectURL(t));i&&this.signaturePad&&(this.signaturePad.clear(),this.signaturePad.fromDataURL(i,{ratio:window.devicePixelRatio||1}))}async urlToFile(t,i){const e=await fetch(t),o=await e.blob();return new File([o],i,{type:o.type})}render(){const t=!!this.internalError,e={"signature-pad-container":!0,readonly:this.readonly,disabled:this.disabled};return i(o,{key:"d2bccc6578bb06345e6fccf5e60d33ca25a7697e",class:{"udp-input":!0,"udp-input--error":t,"udp-input--disabled":this.disabled,"udp-input--required":this.required,"udp-input--readonly":this.readonly,[`udp-input--size-${this.size}`]:!0,[`udp-input--margin-${this.margin}`]:!0}},i("div",{key:"5411ff627764ed4b02f8e246d2a3f1ed2154ed80",class:"bx--form-item"},this.label&&i("unity-typography",{key:"6d93b3ad53f412c9e6cbdcad813ba687a4f7c200",variant:"caption-text"},i("label",{key:"e8de0162d30aaa00b22667db64f322c7bf20ec6a",htmlFor:this.id,class:"bx--label"},this.label,this.required&&"*")),i("div",{key:"3ffc0a9d69df5fd5cdeb89c5c6bd404e6d1906ab",class:e},i("canvas",{key:"59201cd6d3ad72040e54a05ef5b9e8c164f5d427",ref:t=>this.canvasEl=t,class:{"signature-canvas":!0,readonly:this.readonly||this.disabled},id:this.id}),!this.readonly&&!this.disabled&&i("button",{key:"f13c4b9e45d54117410df18920cc9054b94bbba6",type:"button",class:"clear-button",onClick:this.clearSignature,disabled:this.disabled},"Clear")),t&&i("div",{key:"4b0bb3bc923901d2350f541b94bab2ae71ea6aec",class:"error-message"},i("unity-typography",{key:"d294d75b68cb77227ed22a26a759b8b867e5f928",variant:"caption-text",color:"error"},this.internalError))))}get el(){return n(this)}static get watchers(){return{error:[{onErrorChange:0}],value:[{handleValueUpdate:0}],initialValue:[{handleInitialValueUpdate:0}],disabled:[{handleStateChange:0}],readonly:[{handleStateChange:0}]}}};D.style=':host(.udp-input){display:block;box-sizing:border-box;position:relative}:host(.udp-input--full-width){width:100%}:host(.udp-input--error){--input-border-color:var(--input-underline-color-error)}:host(.udp-input--disabled){pointer-events:none;opacity:0.5;cursor:not-allowed}:host(.udp-input--required){position:relative}:host(.udp-input--readonly){--input-background:var(--gray-02)}:host(.udp-input--hidden){display:none}:host(.udp-input--checked){--input-accent-color:var(--primary-color)}:host(.udp-input--multi-select){--list-max-height:200px}:host(.udp-input) .bx--text-input:focus{outline:none;}:host(.udp-input) .bx--form-item{margin-bottom:var(--spacing-05)}:host(.udp-input) .bx--label{display:block;margin-bottom:var(--spacing-03);color:var(--text-main);font-size:var(--caption-text-font-size);font-weight:var(--caption-text-font-weight);line-height:var(--caption-text-line-height)}@media (max-width: var(--breakpoint-xs-max)){:host(.udp-input){margin-bottom:var(--spacing-04)}:host(.udp-input) .bx--form-item{margin-bottom:var(--spacing-04)}}@media (min-width: var(--breakpoint-sm-min)){:host(.udp-input){min-height:2.5rem;}}:host(.udp-input--size-small) .bx--text-input,:host(.udp-input--size-small) textarea,:host(.udp-input--size-small) input[type="text"],:host(.udp-input--size-small) input[type="number"],:host(.udp-input--size-small) input[type="email"],:host(.udp-input--size-small) input[type="password"],:host(.udp-input--size-small) input[type="tel"],:host(.udp-input--size-small) input[type="url"],:host(.udp-input--size-small) input[type="search"]{padding:var(--spacing-02);padding-bottom:6px;font-size:var(--caption-font-size, 0.875rem)}:host(.udp-input--size-normal) .bx--text-input,:host(.udp-input--size-normal) textarea,:host(.udp-input--size-normal) input[type="text"],:host(.udp-input--size-normal) input[type="number"],:host(.udp-input--size-normal) input[type="email"],:host(.udp-input--size-normal) input[type="password"],:host(.udp-input--size-normal) input[type="tel"],:host(.udp-input--size-normal) input[type="url"],:host(.udp-input--size-normal) input[type="search"]{padding:var(--spacing-03);padding-bottom:9px;font-size:var(--body-font-size)}:host(.udp-input--size-large) .bx--text-input,:host(.udp-input--size-large) textarea,:host(.udp-input--size-large) input[type="text"],:host(.udp-input--size-large) input[type="number"],:host(.udp-input--size-large) input[type="email"],:host(.udp-input--size-large) input[type="password"],:host(.udp-input--size-large) input[type="tel"],:host(.udp-input--size-large) input[type="url"],:host(.udp-input--size-large) input[type="search"]{padding:var(--spacing-04);padding-bottom:12px;font-size:var(--body-font-size)}:host(.udp-input--margin-none){margin:0}:host(.udp-input--margin-dense){margin:var(--spacing-02) 0}:host(.udp-input--margin-normal){margin:var(--spacing-03) 0}:host(.udp-input--margin-comfortable){margin:var(--spacing-04) 0}:host(.udp-input--size-small) .bx--label{margin-bottom:var(--spacing-02);font-size:var(--caption-font-size, 0.875rem)}:host(.udp-input--size-normal) .bx--label{margin-bottom:var(--spacing-03);font-size:var(--body-font-size)}:host(.udp-input--size-large) .bx--label{margin-bottom:var(--spacing-04);font-size:var(--body-font-size)}.bx--text-input,textarea,input[type="text"],input[type="number"],input[type="email"],input[type="password"],input[type="tel"],input[type="url"],input[type="search"]{display:inline-block;padding:var(--spacing-03);padding-bottom:9px;box-sizing:border-box;border:none;font-size:var(--body-font-size);background:var(--input-background);border-bottom:var(--underline-standard) solid var(--input-underline-color, var(--gray-08));width:100%;font-family:var(--font-family);transition:border-bottom-color 0.15s ease-in-out}.bx--text-input:focus,textarea:focus,input[type="text"]:focus,input[type="number"]:focus,input[type="email"]:focus,input[type="password"]:focus,input[type="tel"]:focus,input[type="url"]:focus,input[type="search"]:focus{border-bottom-color:var(--input-underline-color-focus, var(--primary-color));border-bottom-width:2px}.bx--text-input--error,.bx--text-input:user-invalid,:host(.udp-input--error) .bx--text-input,:host(.udp-input--error) textarea,:host(.udp-input--error) input[type="text"],:host(.udp-input--error) input[type="number"],:host(.udp-input--error) input[type="email"],:host(.udp-input--error) input[type="password"],:host(.udp-input--error) input[type="tel"],:host(.udp-input--error) input[type="url"],:host(.udp-input--error) input[type="search"],input[type="text"]:user-invalid,input[type="number"]:user-invalid,input[type="email"]:user-invalid,input[type="password"]:user-invalid,input[type="tel"]:user-invalid,input[type="url"]:user-invalid,input[type="search"]:user-invalid{border-bottom-color:var(--input-underline-color-error, var(--error-color-main)) !important}:host(.udp-input--disabled) .bx--text-input,:host(.udp-input--disabled) textarea,:host(.udp-input--disabled) input[type="text"],:host(.udp-input--disabled) input[type="number"],:host(.udp-input--disabled) input[type="email"],:host(.udp-input--disabled) input[type="password"],:host(.udp-input--disabled) input[type="tel"],:host(.udp-input--disabled) input[type="url"],:host(.udp-input--disabled) input[type="search"]{border-bottom-color:var(--input-underline-color-disabled, var(--gray-08))}textarea.bx--text-input{resize:vertical;min-height:var(--spacing-08)}.bx--text-input::placeholder,textarea::placeholder,input[type="text"]::placeholder,input[type="number"]::placeholder,input[type="email"]::placeholder,input[type="password"]::placeholder,input[type="tel"]::placeholder,input[type="url"]::placeholder,input[type="search"]::placeholder{color:var(--placeholder-color, #999);opacity:1}:host(.udp-input),:host{display:block;width:100%;box-sizing:border-box}.bx--form-item{margin-bottom:var(--spacing-05)}.bx--label{display:block;margin-bottom:var(--spacing-03)}.error-message,.bx--form-requirement,:host(.udp-input--error) .error-message,:host(.udp-input--error) .bx--form-requirement{color:var(--error-color-main, #d32f2f) !important;margin-top:var(--spacing-02);font-size:var(--caption-font-size, 0.875rem);--unity-typography-inherit-color:var(--error-color-main, #d32f2f)}.helper-text{color:var(--text-02, #525252);margin-top:var(--spacing-02);font-size:var(--caption-font-size, 0.875rem)}:host(.udp-input--disabled) .bx--text-input,:host(.udp-input--disabled) textarea,:host(.udp-input--disabled) input,:host(.udp-input--disabled){cursor:not-allowed;opacity:0.6}:host(.udp-input--readonly) .bx--text-input,:host(.udp-input--readonly) textarea,:host(.udp-input--readonly) input{background-color:var(--field-01, #f4f4f4);cursor:default}:host(.udp-input--size-small) .signature-canvas{height:150px}:host(.udp-input--size-normal) .signature-canvas{height:200px}:host(.udp-input--size-large) .signature-canvas{height:250px}:host(.udp-input--size-small) .clear-button{padding:var(--spacing-01) var(--spacing-02);font-size:var(--caption-font-size, 0.875rem);top:var(--spacing-02);right:var(--spacing-02)}:host(.udp-input--size-normal) .clear-button{padding:var(--spacing-02) var(--spacing-03);font-size:var(--body-font-size);top:var(--spacing-02);right:var(--spacing-02)}:host(.udp-input--size-large) .clear-button{padding:var(--spacing-03) var(--spacing-04);font-size:var(--body-font-size);top:var(--spacing-03);right:var(--spacing-03)}.signature-pad-container{position:relative;border:1px solid var(--udp-mid-gray-color);border-radius:4px;background-color:var(--udp-light-gray-color)}.signature-canvas{display:block;width:100%;height:200px;}.signature-pad-container.readonly{background-color:var(--udp-disabled-gray-color)}.signature-canvas.readonly{cursor:not-allowed}.clear-button{position:absolute;top:var(--spacing-02);right:var(--spacing-02);background-color:var(--udp-light-gray-color);border:1px solid var(--udp-mid-gray-color);color:var(--udp-primary-color);cursor:pointer;border-radius:4px;padding:var(--spacing-02) var(--spacing-03);}.clear-button:hover{background-color:var(--udp-mid-gray-color)}.clear-button:disabled{cursor:not-allowed;opacity:0.5}';const M=class{constructor(i){t(this,i),this.stencilFormInvalidEvent=e(this,"stencilFormInvalidEvent",7),this.dirtyChange=e(this,"dirtyChange",7),this.validateOnBlur=!0,this.registeredFields={},this.customErrors={},this.handleSlotChange=()=>{const t=this.el.shadowRoot.querySelector("slot");t&&t.assignedNodes().forEach((t=>this.processNodeRecursively(t)))},this.submitWithValidation=this.submitWithValidation.bind(this),this.defaultValidation=this.defaultValidation.bind(this),this.submit=this.submit.bind(this),this.onFormChange=this.onFormChange.bind(this)}connectField(t){t.__connectedToForm||(t.setFormApi({api:this.api,registeredFields:this.registeredFields,customErrors:this.customErrors}),t.__connectedToForm=!0)}async processNodeRecursively(t){if(t.nodeType!==Node.ELEMENT_NODE)return;const i=t;if(!i.localName.includes("-")||customElements.get(i.localName)){if(i.matches("stencil-field")&&this.connectField(i),this.connectSubmitButtons(i),i.shadowRoot)for(const t of Array.from(i.shadowRoot.childNodes))await this.processNodeRecursively(t);for(const t of Array.from(i.childNodes))await this.processNodeRecursively(t)}else i.__stencilFormAwaitingDefinition||(i.__stencilFormAwaitingDefinition=!0,customElements.whenDefined(i.localName).then((()=>{i.__stencilFormAwaitingDefinition=!1,this.processNodeRecursively(i)})))}connectSubmitButtons(t){if(t.nodeType!==Node.ELEMENT_NODE)return;const i=t;i.matches('input[type="submit"], button[type="submit"]')&&(i.dataset.stencilFormConnected||(i.dataset.stencilFormConnected="true",i.addEventListener("click",(t=>{t.preventDefault(),this.submit(t)})))),i.querySelectorAll('input[type="submit"], button[type="submit"]').forEach((t=>{t.dataset.stencilFormConnected||(t.dataset.stencilFormConnected="true",t.addEventListener("click",(t=>{t.preventDefault(),this.submit(t)})))}))}componentWillLoad(){this.api=j({onSubmit:this.submitWithValidation,initialValues:this.initialValues,validate:this.defaultValidation,validateOnBlur:this.validateOnBlur}),this.handleChange&&this.api.subscribe(this.onFormChange,{values:!0}),this.api.subscribe((t=>{const{dirtyFields:i}=t,e=this.registeredFields,o=Object.keys(i||{}).some((t=>{var o;return i[t]&&!(null===(o=e[t])||void 0===o?void 0:o.ignoreDirty)}));this.dirtyChange.emit(o)}),{dirtyFields:!0})}componentDidLoad(){const t=this.el.shadowRoot.querySelector("slot");this.observer=new MutationObserver((t=>{for(const i of t)i.addedNodes.forEach((t=>{this.processNodeRecursively(t)}))}));const i=()=>{((null==t?void 0:t.assignedNodes({flatten:!0}))||[]).forEach((t=>{t.nodeType===Node.ELEMENT_NODE&&(this.observer.observe(t,{childList:!0,subtree:!0}),this.processNodeRecursively(t))}))};t&&(i(),t.addEventListener("slotchange",i)),this.observer.observe(this.el,{childList:!0,subtree:!0}),this.el.dispatchEvent(new CustomEvent("stencilFormReady",{bubbles:!0,composed:!0}))}disconnectedCallback(){var t;this.api=null,this.registeredFields={};const i=null===(t=this.el.shadowRoot)||void 0===t?void 0:t.querySelector("slot");i&&i.removeEventListener("slotchange",this.handleSlotChange)}onFormChange(t){this.handleChange&&t.values&&this.handleChange(t.values)}async submitWithValidation(t){const i=this.defaultValidation(t);0===Object.keys(i).length?this.handleSubmit(t):this.stencilFormInvalidEvent.emit(i)}defaultValidation(t){const{registeredFields:i,customErrors:e}=this,o={};if(Object.keys(i).forEach((e=>{const n=i[e];if(null==n?void 0:n.ignoreDirty)return;const s=(a=t,e.replace(/\[(\d+)\]/g,".$1").split(".").reduce(((t,i)=>null!=t?t[i]:void 0),a));var a;n.required&&(null==s||"string"==typeof s&&""===s.trim()||!1===s||"false"===s)&&(o[e]="This field is required")})),e&&Object.keys(e).forEach((t=>{e[t]&&(o[t]=e[t])})),null==this?void 0:this.handleValidate){const i=this.handleValidate(t,o);return Object.assign(Object.assign({},o),i)}return o}async getApi(){return this.api?this.api:(console.error("❌ Form API not initialized yet."),null)}async registerField(t,i){this.registeredFields=Object.assign(Object.assign({},this.registeredFields),{[t]:i})}submit(t){var i;null===(i=null==t?void 0:t.preventDefault)||void 0===i||i.call(t);const e=this.api.getState().values,o=this.defaultValidation(e);O((()=>{var t;Object.keys(o).length?this.stencilFormInvalidEvent.emit(o):null===(t=this.api)||void 0===t||t.submit()}),1e3,{leading:!0,trailing:!1})()}render(){return i("form",{key:"7776648f88cbea0b0db6d3fd82b845f74e15b1c1"},i("slot",{key:"b3099b3bb707bb15dca8995b8db2a573036a884e"}))}get el(){return n(this)}},V=t=>"number"===t,P=()=>`grid-${Date.now()}-${Math.random().toString(36).slice(2,10)}`,L=class{constructor(i){t(this,i),this.columns=[],this.initialValue=null,this.required=!1,this.disabled=!1,this.readonly=!1,this.initialGridRows=[],this.gridRowCount=0,this.gridRenderNonce=P(),this.validationError="",this.hasHydratedFromInitialValue=!1,this.columnsSignature="",this.cachedGridColumns=[],this.cachedGridColumnsKey="",this.hasSubmitValidationAttempt=!1,this.gridOptions={suppressContextMenu:!0,stopEditingWhenCellsLoseFocus:!0,suppressAggFuncInHeader:!0,editType:"fullRow",singleClickEdit:!0,rowDragManaged:!0,animateRows:!0,defaultColDef:{sortable:!1,filter:!1,suppressHeaderMenuButton:!0,editable:!0,minWidth:80,resizable:!0},getRowStyle:t=>{var i;if("bottom"===(null===(i=null==t?void 0:t.node)||void 0===i?void 0:i.rowPinned))return{backgroundColor:"var(--gray-01, #f8f8f8)",fontWeight:"600",borderTop:"1px solid var(--gray-03, #d8d8d8)"}},onCellValueChanged:()=>this.handleGridDataChanged(),onCellEditingStopped:()=>this.handleGridDataChanged(),onRowEditingStopped:()=>this.handleGridDataChanged(),onPasteEnd:()=>this.handleGridDataChanged(),onRowDragEnd:()=>this.handleGridDataChanged()},this.handleAddRow=()=>{if(this.gridApiMethods)try{return this.gridApiMethods.applyTransaction({add:[this.createEmptyRow()]}),void requestAnimationFrame((()=>{var t;this.handleGridDataChanged();const i=Math.max(this.getRowsFromGrid().length-1,0);null===(t=this.gridApiMethods)||void 0===t||t.ensureIndexVisible(i,"bottom")}))}catch(t){this.gridApiMethods=void 0}this.initialGridRows=[...this.initialGridRows,this.createEmptyRow()],this.validateAndEmitError(),this.emitValue()},this.handleRemoveRow=t=>{if(this.gridApiMethods)try{const i=this.getRawRowsFromGrid()[t];return i&&this.gridApiMethods.applyTransaction({remove:[i]}),void this.handleGridDataChanged()}catch(t){this.gridApiMethods=void 0}const i=[...this.initialGridRows];i.splice(t,1),this.initialGridRows=i,this.validateAndEmitError(),this.emitValue()},this.handleGridApiCallback=t=>{var i;this.gridApiMethods=t,this.gridRowCount=this.getRowsFromGrid().length||this.initialGridRows.length,this.validateAndEmitError(),null===(i=this.gridApiMethods)||void 0===i||i.refreshCells(),this.refreshAggregateFooter(),requestAnimationFrame((()=>this.refreshAggregateFooter()))}}handleNestedInput(t){(t.composedPath&&t.composedPath()[0]||t.target)!==this.el&&(t.stopImmediatePropagation(),t.stopPropagation())}handleNestedChange(t){(t.composedPath&&t.composedPath()[0]||t.target)!==this.el&&(t.stopImmediatePropagation(),t.stopPropagation())}handleGridPaste(t){var i,e,o,n;if(this.readonly||this.disabled||!this.gridApiMethods)return;const s=null===(i=t.clipboardData)||void 0===i?void 0:i.getData("text/plain");if(!(null==s?void 0:s.trim()))return;t.preventDefault();const a=s.split(/\r?\n/).map((t=>t.split("\t"))).filter((t=>t.some((t=>""!==t))));if(!a.length)return;this.gridApiMethods.stopEditing(!0);const r=this.gridApiMethods.getFocusedCell(),l=null!==(e=null==r?void 0:r.rowIndex)&&void 0!==e?e:0,d=null===(n=null===(o=null==r?void 0:r.column)||void 0===o?void 0:o.getColId)||void 0===n?void 0:n.call(o),u=this.columns||[],p=d?Math.max(0,u.findIndex((t=>t.id===d))):0,c=this.getRawRowsFromGrid(),h=[];a.forEach(((t,i)=>{const e=l+i;if(e<c.length)t.forEach(((t,i)=>{const o=u[p+i];o&&(c[e][o.id]=this.parsePastedCellValue(o,t))}));else{const i=this.createEmptyRow();t.forEach(((t,e)=>{const o=u[p+e];o&&(i[o.id]=this.parsePastedCellValue(o,t))})),h.push(i)}})),h.length&&this.gridApiMethods.applyTransaction({add:h}),this.handleGridDataChanged(),this.gridApiMethods.refreshCells()}handleSubmitInvalid(){this.hasSubmitValidationAttempt=!0,requestAnimationFrame((()=>{var t;this.validateAndEmitError(),null===(t=this.gridApiMethods)||void 0===t||t.refreshCells()}))}componentWillLoad(){this.columnsSignature=this.getColumnsSignature(this.columns),this.initializeRows(this.initialValue,!1)}disconnectedCallback(){this.gridApiMethods=void 0}onInitialValueChange(t){if(!this.hasHydratedFromInitialValue)return"string"!=typeof t||this.hasUsableInitialValue(t)?void(this.hasUsableInitialValue(t)&&(this.recreateGridInstance(),this.initializeRows(t,!0))):(this.hasHydratedFromInitialValue=!0,void this.recreateGridInstance())}onColumnsChange(){const t=this.getColumnsSignature(this.columns);if(t===this.columnsSignature)return;if(this.columnsSignature=t,!Array.isArray(this.columns)||0===this.columns.length)return this.initialGridRows=[],this.gridRowCount=0,void this.emitValue();const i=this.initialGridRows.map((t=>this.normalizeRow(t)));this.initialGridRows=i,this.validateAndEmitError(),this.emitValue()}onErrorChange(){var t;null===(t=this.gridApiMethods)||void 0===t||t.refreshCells()}onSeedRowsChange(){this.gridRowCount=this.initialGridRows.length,this.refreshAggregateFooter()}getColumnsSignature(t=[]){return JSON.stringify(t.map((t=>({id:null==t?void 0:t.id,name:null==t?void 0:t.name,type:null==t?void 0:t.type,required:null==t?void 0:t.required,aggregate:null==t?void 0:t.aggregate,aggregateDecimalPlaces:null==t?void 0:t.aggregateDecimalPlaces}))))}recreateGridInstance(){this.gridApiMethods=void 0,this.cachedGridColumns=[],this.cachedGridColumnsKey="",this.gridRenderNonce=P()}hasUsableInitialValue(t){return null!=t&&("string"==typeof t?t.trim().length>0:!!Array.isArray(t))}createEmptyRow(){const t={};return(this.columns||[]).forEach((i=>{t[i.id]=V(i.type)?null:""})),t}normalizeRow(t){const i=this.createEmptyRow();return t&&"object"==typeof t?((this.columns||[]).forEach((e=>{const o=t[e.id];if(null!=o&&""!==String(o).trim())if(V(e.type)){const t=Number(String(o).trim());i[e.id]=Number.isFinite(t)?t:void 0}else i[e.id]=String(o);else i[e.id]=V(e.type)?void 0:""})),i):i}parseInitialValue(t){var i,e;if(!t)return[];let o=t;if("string"==typeof t){try{o=JSON.parse(t)}catch(t){return[]}if("string"==typeof o)try{o=JSON.parse(o)}catch(t){return[]}}return Array.isArray(o)?o.filter((t=>t&&"object"==typeof t)):o&&"object"==typeof o&&Array.isArray(null!==(i=o.rows)&&void 0!==i?i:o.Rows)?(null!==(e=o.rows)&&void 0!==e?e:o.Rows).filter((t=>t&&"object"==typeof t)):[]}hasMissingRequiredColumnValue(t){return this.getRequiredColumns().some((i=>{const e=null==t?void 0:t[i.id];return null==e||0===String(e).trim().length}))}hasAnyColumnLevelRequired(){return(this.columns||[]).some((t=>!!(null==t?void 0:t.required)))}hasAnyRequiredConfig(){return this.required||this.hasAnyColumnLevelRequired()}getRequiredColumns(){return(this.columns||[]).filter((t=>!!(null==t?void 0:t.required)))}getRowsForValidation(){const t=this.getRowsFromGrid();return this.gridApiMethods?t:this.initialGridRows}isRequiredCellInvalid(t,i){if(!(null==i?void 0:i.required))return!1;const e=null==t?void 0:t[i.id];return null==e||0===String(e).trim().length}shouldShowRequiredCellHighlights(){return this.hasSubmitValidationAttempt&&!!this.validationError}parsePastedCellValue(t,i){const e=i.trim();if(V(t.type)){if(!e)return;const t=Number(e);return Number.isFinite(t)?t:void 0}return e}coerceCellValueForSubmission(t,i){if(!V(t.type))return i;if(null==i)return"";const e=String(i).trim();if(!e)return"";const o=Number(e);return Number.isFinite(o)?o:""}getRowsFromGrid(){if(!this.gridApiMethods)return[];try{const t=[];return this.gridApiMethods.forEachNode((i=>{(null==i?void 0:i.data)&&"object"==typeof i.data&&t.push(this.normalizeRow(i.data))})),t}catch(t){return[]}}getRawRowsFromGrid(){if(!this.gridApiMethods)return[];try{const t=[];return this.gridApiMethods.forEachNode((i=>{(null==i?void 0:i.data)&&"object"==typeof i.data&&t.push(i.data)})),t}catch(t){return[]}}buildSubmissionPayloadString(){const t=this.getRowsFromGrid(),i=(this.gridApiMethods?t:this.initialGridRows).map((t=>{const i={};return(this.columns||[]).forEach((e=>{var o;i[e.id]=this.coerceCellValueForSubmission(e,null!==(o=null==t?void 0:t[e.id])&&void 0!==o?o:"")})),i}));return JSON.stringify({rows:i})}initializeRows(t,i){const e=this.parseInitialValue(t);if(!Array.isArray(this.columns)||0===this.columns.length)return this.initialGridRows=[],void(i&&(this.hasHydratedFromInitialValue=!0));let o;o=e.length>0?e.map((t=>this.normalizeRow(t))):[],this.initialGridRows=[...o],i&&(this.hasHydratedFromInitialValue=!0),this.validateAndEmitError(),this.emitValue()}emitValue(){const t=this.buildSubmissionPayloadString();this.el.dispatchEvent(new CustomEvent("input",{bubbles:!0,detail:t})),this.el.dispatchEvent(new CustomEvent("change",{bubbles:!0,detail:t}))}validateAndEmitError(){var t;const i=this.getValidationError();this.validationError=i,null===(t=this.gridApiMethods)||void 0===t||t.refreshCells(),this.el.dispatchEvent(new CustomEvent("error",{bubbles:!0,detail:i}))}getValidationError(){const t=this.getRowsForValidation(),i=this.hasAnyRequiredConfig();return i&&t.length<1?"At least one row is required":i&&t.some((t=>this.hasMissingRequiredColumnValue(t)))?"Please complete all required columns in each row":""}getGridHeight(){return`${Math.min(600,Math.max(400,120+44*(this.gridApiMethods?this.gridRowCount:this.initialGridRows.length)))}px`}hasConfiguredAggregates(){return(this.columns||[]).some((t=>V(t.type)&&!!t.aggregate))}getAggregateDecimalPlaces(t){const i=Number(null==t?void 0:t.aggregateDecimalPlaces);return!Number.isInteger(i)||i<0?1:i}getAggregateValue(t){if(!V(t.type)||!t.aggregate)return null;const i=this.getRowsForAggregation().map((i=>Number(null==i?void 0:i[t.id]))).filter((t=>Number.isFinite(t)));if(0===i.length)return null;switch(t.aggregate){case"sum":return i.reduce(((t,i)=>t+i),0);case"avg":return i.reduce(((t,i)=>t+i),0)/i.length;case"min":return Math.min(...i);case"max":return Math.max(...i);default:return null}}getRowsForAggregation(){const t=this.getRowsFromGrid();return this.gridApiMethods?0===t.length&&this.gridRowCount>0?this.initialGridRows:t:this.initialGridRows}hasAnyRowsForAggregation(){return this.getRowsForAggregation().length>0}getAggregateLabel(t){switch(t.aggregate){case"sum":return"Sum";case"avg":return"Avg";case"min":return"Min";case"max":return"Max";default:return""}}getFooterCellDisplayValue(t,i){if(V(t.type)&&t.aggregate){const i=this.getAggregateValue(t);return null==i?null:i}return 0===i&&this.hasConfiguredAggregates()&&!V(t.type)?"Summary":null}getGridOptions(){return this.hasConfiguredAggregates()?Object.assign(Object.assign({},this.gridOptions),{pinnedBottomRowData:[{}]}):this.gridOptions}refreshAggregateFooter(){if(this.hasConfiguredAggregates()&&this.gridApiMethods)try{this.gridApiMethods.refreshCells()}catch(t){this.gridApiMethods=void 0}}buildGridColumns(t){const i=(this.columns||[]).map(((i,e)=>({headerName:i.required?`${i.name} *`:i.name,field:i.id,editable:i=>{var e;return!t&&"bottom"!==(null===(e=null==i?void 0:i.node)||void 0===e?void 0:e.rowPinned)},suppressHeaderMenuButton:!0,sortable:!1,rowDrag:0==e&&!t,filter:!1,cellClassRules:{"table-input-required-invalid":t=>{var e;if("bottom"===(null===(e=null==t?void 0:t.node)||void 0===e?void 0:e.rowPinned))return!1;const o=null==t?void 0:t.data;return!(!o||"object"!=typeof o)&&this.shouldShowRequiredCellHighlights()&&this.isRequiredCellInvalid(o,i)}},cellDataType:V(i.type)?"number":"text",autoHeight:!0,wrapText:!0,cellStyle:{display:"flex",alignItems:"center"},valueGetter:t=>{var o,n;return"bottom"===(null===(o=null==t?void 0:t.node)||void 0===o?void 0:o.rowPinned)?this.getFooterCellDisplayValue(i,e):null===(n=null==t?void 0:t.data)||void 0===n?void 0:n[i.id]},valueFormatter:t=>{var e,o;if("bottom"!==(null===(e=null==t?void 0:t.node)||void 0===e?void 0:e.rowPinned))return null==t?void 0:t.value;if(V(i.type)&&i.aggregate){if(!this.hasAnyRowsForAggregation())return`${this.getAggregateLabel(i)}: N/A`;const e=Number(null==t?void 0:t.value);if(!Number.isFinite(e))return"";const o=this.getAggregateDecimalPlaces(i);return`${this.getAggregateLabel(i)}: ${e.toFixed(o)}`}return null!==(o=null==t?void 0:t.value)&&void 0!==o?o:""},valueSetter:t=>{var e,o;if("bottom"===(null===(e=null==t?void 0:t.node)||void 0===e?void 0:e.rowPinned))return!1;const n=null===(o=null==t?void 0:t.data)||void 0===o?void 0:o[i.id];let s=null==(null==t?void 0:t.newValue)?"":String(t.newValue);if(V(i.type)){const t=String(s||"").trim();if(t){const i=Number(t);if(!Number.isFinite(i))return!1;s=i}else s=void 0}return n!==s&&(t.data[i.id]=s,!0)}})));if(t)return i;const e={headerName:"Actions",field:"actions",editable:!1,sortable:!1,filter:!1,suppressHeaderMenuButton:!0,resizable:!1,cellRenderer:"actionsRenderer",cellRendererParams:{hideActions:t=>"bottom"===(null==t?void 0:t.rowPinned),actionList:[{id:"remove-row",iconName:"trashCan",title:"Remove Row",handleOnClick:(t,i)=>{const e=Number(null==i?void 0:i.rowIndex);!Number.isInteger(e)||e<0||this.handleRemoveRow(e)}}]}};return[...i,e]}getGridColumns(t){const i=`${t}::${this.columnsSignature}`;return this.cachedGridColumnsKey===i&&this.cachedGridColumns.length>0||(this.cachedGridColumnsKey=i,this.cachedGridColumns=this.buildGridColumns(t)),this.cachedGridColumns}handleGridDataChanged(){const t=this.getRowsFromGrid();this.gridRowCount=t.length,this.emitValue(),this.validateAndEmitError(),this.refreshAggregateFooter()}render(){const t=this.readonly||this.disabled;return i("div",{key:"3a213efec352e7d39b1088761f05af3fa4a20325",class:"table-input-container"},this.columns.length>0?i("div",null,i("div",{class:"table-grid-wrapper"},i("client-side-grid",{key:`table-grid-${this.gridRenderNonce}`,columnDefs:this.getGridColumns(t),rowData:this.initialGridRows,gridHeight:this.getGridHeight(),gridOptions:this.getGridOptions(),gridApiCallback:this.handleGridApiCallback})),!t&&i("div",{class:"table-input-add-row-button"},i("udp-button",{variant:"text",onClick:()=>this.handleAddRow(),startIcon:i("udp-icon",{iconName:"add",color:"inherit"})},"Add a Row"))):i("div",{class:"table-empty-state"},"No columns configured."))}get el(){return n(this)}static get watchers(){return{initialValue:[{onInitialValueChange:0}],columns:[{onColumnsChange:0}],error:[{onErrorChange:0}],initialGridRows:[{onSeedRowsChange:0}]}}};L.style=":host{display:block}.table-input-container{display:flex;flex-direction:column;gap:var(--spacing-03, 12px)}.table-grid-wrapper{overflow:hidden}.table-grid-wrapper .ag-cell.table-input-required-invalid{background-color:#fff5f5;box-shadow:inset 0 0 0 1px #d32f2f}.table-empty-state{color:var(--gray-07, #666);font-size:0.875rem}.table-input-add-row-button{display:flex;justify-content:center;margin:var(--spacing-03) 0}.aggregate-summary-row{display:grid;grid-template-columns:repeat(auto-fit, minmax(160px, 1fr));gap:8px;background:var(--gray-01, #f8f8f8);border:1px solid var(--gray-03);border-radius:4px;padding:8px}.aggregate-summary-cell{font-weight:600;font-size:0.875rem}";const U=class{constructor(i){t(this,i),this.label="Response Tally",this.yesCount=0,this.noCount=0,this.naCount=0,this.totalFields=0,this.disabled=!1,this.readonly=!1,this.size="normal",this.margin="normal"}render(){const t=!!this.error,e=this.totalFields-(this.yesCount+this.noCount+this.naCount);return i(o,{key:"525face8f1e74cfd9eb06867f713cb51a9bec738",class:{"udp-input":!0,"udp-input--error":t,"udp-input--disabled":this.disabled,"udp-input--readonly":this.readonly,[`udp-input--size-${this.size}`]:!0,[`udp-input--margin-${this.margin}`]:!0}},i("div",{key:"bb4bb72acb1f1922e9a3b4a08178d132c28fa6f6",class:"tally-container"},this.label&&i("unity-typography",{key:"7be2fb2395c872a94e64cfe8e7eeeb0bc61e47c0",variant:"caption-text"},i("label",{key:"3ddbaf02c2df4152d76e5c5c594f573fbac84c5f",htmlFor:this.id,class:"tally-label"},this.label)),i("div",{key:"4bdcc43095d9e232f55e143b2ba39e793f835a86",class:"tally-content",id:this.id},i("div",{key:"34f55525209b5af057eb416a83d8363332eb2f1e",class:"tally-stats"},i("div",{key:"e6af1e645206ddaf906c3f584a1c14fd0e277617",class:"tally-item tally-yes"},i("unity-typography",{key:"9b0388792c594f6bc622cd9cf565eccb6a61681b",variant:"h4",class:"tally-count"},this.yesCount),i("unity-typography",{key:"73bcc34114de22156b8d9f0e3e4d95c2e3ed9646",variant:"caption-text",class:"tally-label"},"Yes")),i("div",{key:"a701c781916660e640d32707acd3fb22543f2fea",class:"tally-item tally-no"},i("unity-typography",{key:"24f8db19e0233b92abcd7060e9cd9713fef32558",variant:"h4",class:"tally-count"},this.noCount),i("unity-typography",{key:"6652950cdbde2e6cf93161d34c16d5ba84d92fd4",variant:"caption-text",class:"tally-label"},"No")),i("div",{key:"4e98bb1e25e796668f7228b3857c961ed61152c0",class:"tally-item tally-na"},i("unity-typography",{key:"42faac58f4a10186d3f291039e83f440d558e15c",variant:"h4",class:"tally-count"},this.naCount),i("unity-typography",{key:"2af06b524eceec6a3ae4ee83574b6e546937cc1f",variant:"caption-text",class:"tally-label"},"Not Applicable")),e>0&&i("div",{key:"357b7a87f32b37e7480b219b05bd80b12d8f3aaf",class:"tally-item tally-unanswered"},i("unity-typography",{key:"9fe811c0274ad67f1ba2f70a30f77c0c2664f064",variant:"h4",class:"tally-count"},e),i("unity-typography",{key:"89d4905e8d375f10a605c25de930230798891356",variant:"caption-text",class:"tally-label"},"Unanswered"))),i("div",{key:"57bf6f2a2ee665e6fff88aab30c78cd6d1e7dcba",class:"tally-summary"},i("unity-typography",{key:"0453a1fedda691eb7faf6d9a72261d9ffe1a9fab",variant:"caption-text"},"Total Questions: ",this.totalFields))),t&&i("div",{key:"7c01434a5a51526b66c098fba799e755305cc569",class:"error-message"},i("unity-typography",{key:"037400916c79ac2f03b9359f4b18559b54ea81fc",variant:"caption-text",color:"error"},this.error))))}};U.style=":host{display:block;width:100%}.tally-container{display:flex;flex-direction:column;gap:var(--spacing-02, 8px)}.tally-label{font-weight:600;margin-bottom:var(--spacing-02, 8px)}.tally-loading{display:flex;align-items:center;justify-content:center;padding:var(--spacing-04, 16px);color:var(--text-secondary, #6b7280)}.tally-content{display:flex;flex-direction:column;gap:var(--spacing-03, 12px)}.tally-stats{display:flex;gap:var(--spacing-04, 16px);flex-wrap:wrap}.tally-item{display:flex;flex-direction:column;align-items:center;padding:var(--spacing-03, 12px) var(--spacing-04, 16px);border-radius:var(--border-radius-01, 4px);border:1px solid var(--border-subtle, #e5e7eb);background-color:var(--layer-01, #ffffff);min-width:80px;flex:1;max-width:120px}.tally-item.tally-yes{border-color:var(--support-success, #42be65);background-color:var(--support-success-hover, #f6f8ff)}.tally-item.tally-no{border-color:var(--support-error, #da1e28);background-color:var(--support-error-hover, #fff1f1)}.tally-item.tally-unanswered{border-color:var(--support-warning, #f1c21b);background-color:var(--support-warning-hover, #fcf4d6)}.tally-count{font-weight:700;line-height:1.2;margin-bottom:var(--spacing-01, 4px)}.tally-yes .tally-count{color:var(--support-success, #42be65)}.tally-no .tally-count{color:var(--support-error, #da1e28)}.tally-unanswered .tally-count{color:var(--support-warning, #f1c21b)}.tally-item .tally-label{margin:0;font-weight:500;text-transform:uppercase;font-size:0.75rem;letter-spacing:0.02em}.tally-summary{padding:var(--spacing-02, 8px) 0;border-top:1px solid var(--border-subtle, #e5e7eb);text-align:center}.error-message{margin-top:var(--spacing-02, 8px);padding:var(--spacing-02, 8px);border-radius:var(--border-radius-01, 4px);background-color:var(--support-error-hover, #fff1f1);border:1px solid var(--support-error, #da1e28)}:host(.udp-input--size-small) .tally-item{padding:var(--spacing-02, 8px) var(--spacing-03, 12px);min-width:60px;max-width:90px}:host(.udp-input--size-small) .tally-count{font-size:1.25rem}:host(.udp-input--size-large) .tally-item{padding:var(--spacing-04, 16px) var(--spacing-05, 20px);min-width:100px;max-width:150px}:host(.udp-input--size-large) .tally-count{font-size:2rem}:host(.udp-input--margin-none) .tally-container{gap:0}:host(.udp-input--margin-dense) .tally-container{gap:var(--spacing-01, 4px)}:host(.udp-input--margin-comfortable) .tally-container{gap:var(--spacing-04, 16px)}:host(.udp-input--disabled) .tally-item{opacity:0.5;pointer-events:none}:host(.udp-input--readonly) .tally-item{background-color:var(--field-01, #f4f4f4)}@media (max-width: 480px){.tally-stats{flex-direction:column}.tally-item{max-width:none;flex:none}}";const K=class{constructor(i){t(this,i),this.launchFollowUpFormSideSheet=e(this,"launchFollowUpFormSideSheet",7),this.disabled=!1,this.readonly=!1,this.currentValues={},this.clientUserInfo={id:null,displayName:null,email:null},this.udpFormSubmission=null,this.tallyData={yesCount:0,noCount:0,naCount:0,totalFields:0},this.formApi=null}propChanged(){this.updateFieldComponent()}async componentWillLoad(){this.updateFieldComponent(),this.question.fieldTypeId===q.Tally&&await this.initializeFormApiForTally()}async initializeFormApiForTally(){try{if(this.formApi=await I(this.el),this.formApi){const t=this.formApi.subscribe((()=>{this.calculateTally()}),{active:!0,dirty:!0,values:!0});this.unsubscribeFormApi=t,this.calculateTally()}}catch(t){console.error("Failed to initialize form API for tally:",t)}}calculateTally(){if(this.formApi&&this.question.fieldTypeId===q.Tally)try{const t=this.formApi.getState().values,i=this.el.closest("stencil-form");if(!i)return;const e=i.querySelectorAll("udp-question"),o=[];e.forEach((t=>{if(t.question&&t.question.fieldTypeId===q.YesNo){const i=`${t.question.questionIdentifierKey}.value`;i&&this.shouldIncludeFieldInTally(i)&&o.push(i)}}));let n=0,s=0,a=0;o.forEach((i=>{const[e,o]=i.split("."),r=t[e][o].value;"true"===r||!0===r?n++:"false"===r||!1===r?s++:"na"===r&&a++})),this.tallyData={yesCount:n,noCount:s,naCount:a,totalFields:o.length},this.updateFieldComponent()}catch(t){console.error("Error calculating tally:",t)}}shouldIncludeFieldInTally(t){const i=this.question.fieldProperties;return(null==i?void 0:i.includeFields)&&i.includeFields.length>0?i.includeFields.includes(t):!((null==i?void 0:i.excludeFields)&&i.excludeFields.length>0&&i.excludeFields.includes(t))}updateFieldComponent(){this._fieldComponent=this.getFieldComponent()}getCurrentQuestionUploadTimestamps(t){var i,e,o,n,s,a,r;const[l,d]=null!==(e=null===(i=this.question.questionIdentifierKey)||void 0===i?void 0:i.split("."))&&void 0!==e?e:["",""];return(null===(r=null===(a=null===(s=null===(n=null===(o=this.currentValues)||void 0===o?void 0:o[l])||void 0===n?void 0:n[d])||void 0===s?void 0:s.metadata)||void 0===a?void 0:a[t])||void 0===r?void 0:r.timestamp)||null}getFieldComponent(){var t,e,o,n,s,a,r,l,d,u,p,c,h,m,b,v,g,y,f,x,w,k;const z={name:`${this.question.questionIdentifierKey}.value`,required:this.question.required},C=Object.assign(Object.assign({},this.question.fieldProperties),{id:this.questionNumber,disabled:this.disabled,readonly:this.readonly||!0===(null===(e=null===(t=this.question)||void 0===t?void 0:t.fieldProperties)||void 0===e?void 0:e.readOnly)});switch(this.question.fieldTypeId){case q.SingleLineText:return i("stencil-field",Object.assign({},z),i("text-field",Object.assign({},C)));case q.MultiLineText:return i("stencil-field",Object.assign({},z),i("text-area",Object.assign({fullWidth:!0},C)));case q.Checkbox:return i("stencil-field",Object.assign({},z),i("selectable-list",Object.assign({valueKey:"value",displayKey:"display",multiSelect:!0,useCheckbox:!0},C)));case q.RadioButton:return i("stencil-field",Object.assign({},z),i("selectable-list",Object.assign({valueKey:"value",displayKey:"display",useCheckbox:!0},C)));case q.DropdownSingleSelect:case q.DropdownMultipleSelect:let t=null===(n=null===(o=null==C?void 0:C.items)||void 0===o?void 0:o.map)||void 0===n?void 0:n.call(o,(t=>Object.assign({label:t.display,value:t.value},C)));return i("stencil-field",Object.assign({},z),i("udp-selector",Object.assign({options:null!=t?t:[],multiSelect:this.question.fieldTypeId===q.DropdownMultipleSelect},C)));case q.YesNo:return i("stencil-field",Object.assign({},z),i("selectable-list",Object.assign({valueKey:"value",displayKey:"display",useCheckbox:!0,multiSelect:!1,items:[{value:"true",display:"Yes"},{value:"false",display:"No"},{value:"na",display:"Not Applicable"}]},C)));case q.ListMultiSelect:return i("stencil-field",Object.assign({},z),i("selectable-list",Object.assign({valueKey:"value",displayKey:"display",multiSelect:!0},C)));case q.DateSelector:return i("stencil-field",Object.assign({},z),i("udp-date-selector",Object.assign({min:null==C?void 0:C.minDate,max:null==C?void 0:C.maxDate},C)));case q.TimeSelector:return i("stencil-field",Object.assign({},z),i("udp-time-selector",Object.assign({min:null==C?void 0:C.minTime,max:null==C?void 0:C.maxTime},C)));case q.DateTimeSelector:return i("stencil-field",Object.assign({},z),i("udp-datetime-selector",Object.assign({max:null==C?void 0:C.maxDateTime,min:null==C?void 0:C.minDateTime},C)));case q.FileUpload:return i("div",null,i("stencil-field",Object.assign({},z,{fieldIdentifierKey:`${this.question.questionIdentifierKey}`,registerMetadata:!0,metadataFieldNames:["file.timestamp"]}),i("file-upload",Object.assign({fullWidth:!0,allowMultiple:!!(null==C?void 0:C.allowMultiple),metadataTimestampKey:"file.timestamp",uploadTimestamps:this.getCurrentQuestionUploadTimestamps("file")},C))));case q.ImageUpload:return i("div",null,i("stencil-field",Object.assign({},z,{fieldIdentifierKey:`${this.question.questionIdentifierKey}`,registerMetadata:!0,metadataFieldNames:["image.timestamp"]}),i("image-upload",Object.assign({fullWidth:!0,allowMultiple:!!(null==C?void 0:C.allowMultiple),uploadTimestamps:this.getCurrentQuestionUploadTimestamps("image")},C))));case q.Signature:return i("div",null,i("stencil-field",Object.assign({},z,{fieldIdentifierKey:`${this.question.questionIdentifierKey}`,registerMetadata:!0,metadataFieldNames:["signature.latitude","signature.longitude","signature.timestamp"]}),i("signature-input",Object.assign({},C,{value:this.value}))),i("stencil-field",{required:this.question.required,name:`${this.question.questionIdentifierKey}.metadata.signature.fullName`},i("text-field",Object.assign({},C,{label:"Full Name"}))));case q.Paragraph:return i("stencil-field",{name:this.question.name,required:!1},i("input",{type:"hidden",name:this.question.name,value:this.value||""}),this.value?i("unity-typography",{id:`paragraphText${this.question.name}`,variant:(null===(a=null===(s=this.styleOverrides)||void 0===s?void 0:s.paragraphText)||void 0===a?void 0:a.variant)||"body"},this.value):i("div",null));case q.Number:return i("stencil-field",Object.assign({},z),i("numeric-field",Object.assign({},C)));case q.Table:return i("stencil-field",Object.assign({},z),i("table-input",Object.assign({required:z.required},C)));case q.Tally:return i("tally-display",Object.assign({id:this.questionNumber,label:this.question.questionText||"Response Tally",yesCount:this.tallyData.yesCount,noCount:this.tallyData.noCount,naCount:this.tallyData.naCount,totalFields:this.tallyData.totalFields},C,{required:!1}));case q.FormMetadataDisplay:{const t=!!(null===(r=this.udpFormSubmission)||void 0===r?void 0:r.id),e=t?null!==(d=null===(l=this.udpFormSubmission)||void 0===l?void 0:l.userDisplayName)&&void 0!==d?d:null:null!==(p=null===(u=this.clientUserInfo)||void 0===u?void 0:u.displayName)&&void 0!==p?p:null,o=t?null!==(h=null===(c=this.udpFormSubmission)||void 0===c?void 0:c.userEmail)&&void 0!==h?h:null:null!==(b=null===(m=this.clientUserInfo)||void 0===m?void 0:m.email)&&void 0!==b?b:null,n=null!==(g=null===(v=this.udpFormSubmission)||void 0===v?void 0:v.submittedOn)&&void 0!==g?g:null;return i("form-metadata-display",Object.assign({userDisplayName:e,userEmail:o,submittedOn:n},C))}case q.Location:{const[t,e]=null!==(x=null===(f=null===(y=this.question)||void 0===y?void 0:y.questionIdentifierKey)||void 0===f?void 0:f.split("."))&&void 0!==x?x:["",""];return i("location-input",Object.assign({},C,{identifierKey:this.question.questionIdentifierKey,value:null===(k=null===(w=this.currentValues)||void 0===w?void 0:w[t])||void 0===k?void 0:k[e],required:this.question.required}))}default:return i("div",null)}}async componentDidLoad(){var t,i,e,o;this.question.fieldTypeId!==q.Tally||this.formApi||await this.initializeFormApiForTally();const n=[];for(const s in this.styleOverrides)n.push({id:s+this.question.name,fontOverride:null===(i=null===(t=this.styleOverrides)||void 0===t?void 0:t[s])||void 0===i?void 0:i.fontFamily,variant:null===(o=null===(e=this.styleOverrides)||void 0===e?void 0:e[s])||void 0===o?void 0:o.variant});n.forEach((t=>{var i,e,o;a[null==t?void 0:t.fontOverride]&&this.el&&this.el.shadowRoot&&r(null===(o=null===(e=null===(i=this.el)||void 0===i?void 0:i.shadowRoot)||void 0===e?void 0:e.getElementById)||void 0===o?void 0:o.call(e,t.id),a[null==t?void 0:t.fontOverride])}))}render(){var t,e,o,n;const s=this._fieldComponent,a=`${this.question.fieldTypeId===q.Paragraph?"":`${this.questionNumber}.`} ${this.question.questionText} ${this.question.required&&this.question.fieldTypeId!==q.Paragraph?"*":""}`,r=`${this.question.questionIdentifierKey}.value`,[l,d]=r.split(".");return s?i("div",{class:{hidden:this.question.fieldTypeId===q.Hidden,"question-container":!0}},i("div",{class:"question-title-and-helper-container"},i("div",{class:"question-title-and-followup-container"},this.question.questionText&&i("unity-typography",{id:`questionText${this.question.name}`,variant:(null===(e=null===(t=this.styleOverrides)||void 0===t?void 0:t.questionText)||void 0===e?void 0:e.variant)||"h3"},a),i("div",null,this.question.fieldProperties.allowFollowUpForms&&(()=>{var t;const e=null===(t=this.currentValues[l][d])||void 0===t?void 0:t.metadata,o=null==e?void 0:e.followUpFormSubmissionId;if(o){const t=`/page/${F.FormRendererPrivatePageId}?udpf_submissionId=${o}`;return i("stencil-icon-button",{icon:S("link"),tooltip:"Open Follow-Up Form",onClick:()=>window.open(t,"_blank")})}if(!this.readonly)return i("stencil-icon-button",{icon:S("document"),tooltip:"Create Follow-Up Form",onClick:()=>{console.log("clicked create follow up form"),this.launchFollowUpFormSideSheet.emit({sectionKey:l,questionKey:d})}})})())),this.question.helperText&&i("unity-typography",{id:`helperText${this.question.name}`,variant:(null===(n=null===(o=this.styleOverrides)||void 0===o?void 0:o.helperText)||void 0===n?void 0:n.variant)||"caption-text"},this.question.helperText)),s,this.question.fieldProperties.allowFollowUpForms&&i("div",null,i("stencil-field",{hidden:!0,name:`${this.question.questionIdentifierKey}.metadata.followUpParentFormId`},i("text-field",null)),i("stencil-field",{hidden:!0,name:`${this.question.questionIdentifierKey}.metadata.followUpParentFormVersion`},i("text-field",null)),i("stencil-field",{hidden:!0,name:`${this.question.questionIdentifierKey}.metadata.followUpParentFormSubmissionId`},i("text-field",null))),this.question.fieldProperties.allowComments&&i("udp-question-comments",{question:this.question,currentValues:this.currentValues,userId:this.clientUserInfo.id})):null}get el(){return n(this)}static get watchers(){return{question:[{propChanged:0}],questionNumber:[{propChanged:0}],value:[{propChanged:0}],disabled:[{propChanged:0}],readonly:[{propChanged:0}],styleOverrides:[{propChanged:0}]}}};K.style=".hidden{display:none}.question-container{border-top:1px solid rgba(0, 0, 0, 0.08);padding-top:1rem}.question-title-and-helper-container{display:flex;flex-direction:column;gap:var(--spacing-03)}.question-title-and-followup-container{display:flex;justify-content:space-between;align-items:center}";const _=class{constructor(i){t(this,i),this.questionCommentAction=e(this,"questionCommentAction",7),this.commentFieldProps={},this.currentValues={},this.userId=null}emitQuestionCommentAction(t,i){this.questionCommentAction.emit({type:t,questionIdentifierKey:this.question.questionIdentifierKey,commentId:i})}handleCommentAdd(){this.emitQuestionCommentAction("add",null)}handleCommentSave(t){this.emitQuestionCommentAction("save",t)}handleCommentEdit(t){this.emitQuestionCommentAction("edit",t)}handleCommentDelete(t){this.emitQuestionCommentAction("delete",t)}handleCommentEditClose(t){this.emitQuestionCommentAction("editClose",t)}render(){var t,e;const[o,n]=this.question.questionIdentifierKey.split("."),a=(null===(e=null===(t=this.currentValues)||void 0===t?void 0:t[o])||void 0===e?void 0:e[n])||{comments:[],draftComments:[]},r=Array.isArray(a.comments)?a.comments:a.comments?[a.comments]:[],l=Array.isArray(a.draftComments)?a.draftComments:a.draftComments?[a.draftComments]:[],d=l.length>0?l[0]:null,u=Object.values(this.currentValues||{}).some((t=>Object.values(t||{}).some((t=>{if(!t)return!1;const i=t.draftComments;return!(!i||Array.isArray(i)&&i.length<1)}))));return i("div",null,r.map(((t,e)=>{const o=`${this.question.questionIdentifierKey}.comments[${e}].value`,n=!d&&(null==t?void 0:t.userId)===this.userId;return d&&t.commentId==d.commentId?i("div",{class:"question-comment-draft-container",key:d.commentId||"draft-0"},i("stencil-field",{name:`${this.question.questionIdentifierKey}.draftComments[0].value`,required:!0,ignoreDirty:!0},i("text-area",Object.assign({},this.commentFieldProps,{label:"Comment:",placeholder:"Add a comment"}))),i("div",{class:"question-comment-action-container"},i("udp-button",{variant:"text",onClick:()=>this.handleCommentSave(d.commentId),startIcon:i("udp-icon",{iconName:"save",color:"inherit"})},"Save"),i("udp-button",{variant:"text",onClick:()=>this.handleCommentDelete(d.commentId),startIcon:i("udp-icon",{iconName:"trashCan",color:"inherit"})},"Delete"),i("udp-button",{variant:"text",onClick:()=>this.handleCommentEditClose(d.commentId),startIcon:i("udp-icon",{iconName:"close16",color:"inherit"})},"Cancel"))):(null==t?void 0:t.isDeleted)?i("div",null):i("div",{class:"question-comment-input-container",key:t.commentId||e},i("stencil-field",{name:o,style:{display:"none"}},i("text-area",{disabled:!0})),i("div",{class:"question-comment-display"},i("unity-typography",{variant:"h4",color:"inherit",class:"question-comment-header"},`${null==t?void 0:t.userDisplayName} ${(null==t?void 0:t.timestamp)?`on ${s(t.timestamp,"short")}`:""}`),null==t?void 0:t.value),i("div",{class:"question-comment-action-container"},n&&!u&&i("div",null,i("udp-button",{variant:"text",onClick:()=>this.handleCommentEdit(t.commentId),startIcon:i("udp-icon",{iconName:"edit",color:"inherit"})},"Edit"))))})),d&&d.isTempComment&&!r.includes((t=>t.commentId==d.commentId))&&i("div",{class:"question-comment-draft-container",key:d.commentId||"draft-0"},i("stencil-field",{name:`${this.question.questionIdentifierKey}.draftComments[0].value`,required:!0,ignoreDirty:!0},i("text-area",Object.assign({},this.commentFieldProps,{label:"Comment:",placeholder:"Add a comment"}))),i("div",{class:"question-comment-action-container"},i("udp-button",{variant:"text",onClick:()=>this.handleCommentEditClose(d.commentId),startIcon:i("udp-icon",{iconName:"trashCan",color:"inherit"})},"Cancel"),i("udp-button",{variant:"text",onClick:()=>this.handleCommentSave(d.commentId),startIcon:i("udp-icon",{iconName:"save",color:"inherit"})},"Save"))),!d&&!u&&i("div",{class:"question-comment-add-comment-button"},i("udp-button",{variant:"text",onClick:()=>this.handleCommentAdd(),startIcon:i("udp-icon",{iconName:"add",color:"inherit"})},"Add a Comment")))}};_.style=".question-comment-display{position:relative;display:flex;flex-direction:column;gap:var(--spacing-03);margin:var(--spacing-05) 0;border:1px solid var(--border-color, #ccc);border-radius:6px;padding:var(--spacing-05) var(--spacing-04);overflow-wrap:break-word;word-wrap:break-word}.question-comment-display unity-typography:not(.question-comment-header){display:block;white-space:pre-wrap;word-break:break-word;}.question-comment-display>.question-comment-header{position:absolute;bottom:-0.6em;right:1em;background:white;padding:0 0.4em;font-size:0.85em;white-space:nowrap;}.question-comment-add-comment-button{display:flex;justify-content:center;margin:var(--spacing-03) 0}.question-comment-action-container{display:flex;justify-content:end}";const G=class{constructor(i){t(this,i),this.isVisible=!1,this.isSaving=!1,this.saveErrorMessage=null,this.showSavedMessage=!1,this.shouldBeInline=!1,this.formApi=null,this.handleSaveClick=async()=>{if(!this.formApi||this.isSaving)return;if("function"!=typeof this.handleSave)return;const t=this.formApi.getState().values;try{await this.handleSave(t),this.formApi.reset(t)}catch(t){console.error("The onSave handler threw an error. The form will remain dirty.",t)}}}async componentDidLoad(){this.formApi=await I(this.el),this.checkForOverlap(),this.setupOverlapDetection()}disconnectedCallback(){this.resizeObserver&&this.resizeObserver.disconnect(),this.checkOverlapTimeoutId&&clearTimeout(this.checkOverlapTimeoutId)}handleWindowResize(){this.debouncedOverlapCheck()}setupOverlapDetection(){if("undefined"!=typeof ResizeObserver){this.resizeObserver=new ResizeObserver((()=>{this.debouncedOverlapCheck()}));const t=this.el.closest("udp-forms-ui, .form-container, udp-container");t&&this.resizeObserver.observe(t);const i=document.querySelector('main, [role="main"]')||document.body;i&&this.resizeObserver.observe(i)}}debouncedOverlapCheck(){this.checkOverlapTimeoutId&&clearTimeout(this.checkOverlapTimeoutId),this.checkOverlapTimeoutId=setTimeout((()=>{this.checkForOverlap()}),100)}checkForOverlap(){this.shouldBeInline=window.innerWidth<1280}render(){if(!this.isVisible&&!this.showSavedMessage)return null;const t=this.shouldBeInline;return i("div",{class:`${this.shouldBeInline?"inline-save-button":"floating-save-button"} ${this.isSaving?"saving":""} ${this.showSavedMessage?"saved":""}`},this.isSaving?i("div",{class:"saving-state"},i("unity-spinner",{size:"small"}),!t&&i("span",null,"Saving...")):this.isVisible?i("udp-icon-button",{icon:N,onClick:this.handleSaveClick,tooltip:"Save Changes",variant:"contained",color:t?"inherit":"primary",iconColor:t?"primary":null,size:t?"small":"medium"},t?"":"Save Changes"):i("div",{class:"saved-state"},i("span",null,"Saved")),this.saveErrorMessage&&i("div",{class:"save-error-tooltip"},this.saveErrorMessage))}get el(){return n(this)}};G.style=".floating-save-button{position:fixed;top:5rem;right:2rem;z-index:1000;animation:slideInDown 0.3s ease-out}.inline-save-button{position:relative;display:inline-flex;align-items:center;margin-left:auto;}.floating-save-button.saving,.inline-save-button.saving{pointer-events:none}.saving-state{display:flex;align-items:center;gap:0.5rem;padding:0.75rem 1rem;background:rgba(0, 0, 0, 0.8);color:white;border-radius:8px;font-size:0.9rem}.saved-state{display:flex;align-items:center;gap:0.5rem;padding:0.75rem 1rem;background:rgba(34, 139, 34, 0.9);color:white;border-radius:8px;font-size:0.9rem;animation:fadeIn 0.3s ease-out}.inline-save-button .saving-state{padding:0.5rem 0.75rem;background:rgba(0, 0, 0, 0.6);font-size:0.8rem}.inline-save-button .saved-state{padding:0.5rem 0.75rem;background:rgba(34, 139, 34, 0.8);font-size:0.8rem}.save-error-tooltip{position:absolute;top:100%;right:0;margin-top:0.5rem;background:#dc3545;color:white;padding:0.5rem 1rem;border-radius:8px;font-size:0.8rem;white-space:nowrap;box-shadow:0 4px 12px rgba(220, 53, 69, 0.3);animation:fadeIn 0.3s ease-out;z-index:1001}.save-error-tooltip::after{content:'';position:absolute;bottom:100%;right:1rem;border:6px solid transparent;border-bottom-color:#dc3545}.inline-save-button .save-error-tooltip{top:100%;bottom:auto;margin-top:0.5rem;margin-bottom:0}.inline-save-button .save-error-tooltip::after{top:-6px;border-top-color:transparent;border-bottom-color:#dc3545}@keyframes slideInDown{from{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{from{opacity:0}to{opacity:1}}@media (max-width: 768px){.floating-save-button{bottom:1rem;right:1rem;top:auto;}.saving-state{padding:0.6rem 0.8rem;font-size:0.8rem}.inline-save-button .saving-state{padding:0.4rem 0.6rem;font-size:0.75rem}}.primary-icon{--icon-color:var(--primary-color, #1976d2)}.primary-icon::part(icon){fill:var(--icon-color) !important}.primary-icon udp-icon-button::part(icon),.primary-icon .icon{fill:var(--primary-color, #1976d2) !important}@media (prefers-reduced-motion: reduce){.floating-save-button,.save-error-tooltip{animation:none}}";export{A as form_metadata_display,R as image_upload,T as location_input,D as signature_input,M as stencil_form,L as table_input,U as tally_display,K as udp_question,_ as udp_question_comments,G as udp_save_draft_button}
@@ -1 +1 @@
1
- import{r as t,c as i,h as n}from"./index-Cgpvu-iV.js";import{a as c,i as e}from"./fluent-icons-DP2JUOe4.js";const a=class{constructor(n){t(this,n),this.iconClick=i(this,"iconClick",7),this.variant="regular",this.size="md",this.compact=!1,this.filteredIconNames=[]}componentWillLoad(){this.filterIcons()}handleSearchIcons(){this.filterIcons()}filterIcons(){if(this.searchKey&&""!==this.searchKey.trim()){const t=this.searchKey.toLowerCase();this.filteredIconNames=c.filter((i=>{if(i.toLowerCase().includes(t))return!0;const n=e[i];return!!(null==n?void 0:n.keywords)&&n.keywords.some((i=>i.toLowerCase().includes(t)))}))}else this.filteredIconNames=c}handleIconClick(t){this.iconClick.emit(t)}renderIconCard(t){return n("udp-fluent-card",{class:{"icon-card":!0,"icon-card--expanded":!this.compact,"icon-card--compact":this.compact},interactive:!0,onClick:()=>this.handleIconClick(t)},n("div",{class:{"icon-card-content":!0,"icon-card-content--stacked":!this.compact,"icon-card-content--compact":this.compact}},n("udp-fluent-icon",{name:t,variant:this.variant,size:this.size,color:this.color}),!this.compact&&n("udp-text",{variant:"caption1",align:"center"},t)))}render(){var t;return n("div",{key:"2b673e13ae0ea895d0f6ad966f86f9a6f7de564a",class:{"icon-grid":!0,"icon-grid--compact":this.compact,"icon-grid--expanded":!this.compact}},null===(t=this.filteredIconNames)||void 0===t?void 0:t.map((t=>{const i=this.renderIconCard(t);return n("div",{class:"grid-item",key:t},this.compact?n("udp-tooltip",{content:t},i):i)})))}static get watchers(){return{searchKey:[{handleSearchIcons:0}]}}};a.style=".icon-grid{display:grid;gap:12px;box-sizing:border-box;justify-content:start}.icon-grid--compact{grid-template-columns:repeat(auto-fit, minmax(52px, 1fr))}.icon-grid--expanded{grid-template-columns:repeat(auto-fit, 120px)}.grid-item{align-self:stretch;justify-self:stretch;width:100%}.icon-card{display:flex;align-items:center;justify-content:center}.icon-card--expanded{width:100% !important;height:100% !important}.icon-card-content{display:flex;align-items:center;justify-content:center;gap:4px;text-align:center}.icon-card-content--stacked{flex-direction:column;padding-top:8px}.icon-card--compact{width:52px !important;height:52px !important}.icon-card-content--compact{width:100%;height:100%}";export{a as icon_grid}
1
+ import{r as t,c as i,h as n}from"./index-Cgpvu-iV.js";import{a as c,i as e}from"./fluent-icons-DP2JUOe4.js";const r=class{constructor(n){t(this,n),this.iconClick=i(this,"iconClick",7),this.variant="regular",this.size="md",this.compact=!1,this.filteredIconNames=[]}componentWillLoad(){this.filterIcons()}handleSearchIcons(){this.filterIcons()}filterIcons(){if(this.searchKey&&""!==this.searchKey.trim()){const t=this.searchKey.toLowerCase();this.filteredIconNames=c.filter((i=>{if(i.toLowerCase().includes(t))return!0;const n=e[i];return!!(null==n?void 0:n.keywords)&&n.keywords.some((i=>i.toLowerCase().includes(t)))}))}else this.filteredIconNames=c}handleIconClick(t){this.iconClick.emit(t)}renderIconCard(t){return n("udp-fluent-card",{class:{"icon-card":!0,"icon-card--expanded":!this.compact,"icon-card--compact":this.compact},interactive:!0,onClick:()=>this.handleIconClick(t)},n("div",{class:{"icon-card-content":!0,"icon-card-content--stacked":!this.compact,"icon-card-content--compact":this.compact}},n("udp-fluent-icon",{name:t,variant:this.variant,size:this.size,color:this.color}),!this.compact&&n("udp-text",{variant:"caption1",align:"center"},t)))}render(){var t;return n("div",{key:"b9ebed5da227fd91f9b270a02032234e15314e3c",class:{"icon-grid":!0,"icon-grid--compact":this.compact,"icon-grid--expanded":!this.compact}},null===(t=this.filteredIconNames)||void 0===t?void 0:t.map((t=>{const i=this.renderIconCard(t);return n("div",{class:"grid-item",key:t},this.compact?n("udp-tooltip",{content:t},i):i)})))}static get watchers(){return{searchKey:[{handleSearchIcons:0}]}}};r.style=".icon-grid{display:grid;gap:12px;box-sizing:border-box;justify-content:start}.icon-grid--compact{grid-template-columns:repeat(auto-fit, minmax(52px, 1fr))}.icon-grid--expanded{grid-template-columns:repeat(auto-fit, 120px)}.grid-item{align-self:stretch;justify-self:stretch;width:100%}.icon-card{display:flex;align-items:center;justify-content:center}.icon-card--expanded{width:100% !important;height:100% !important}.icon-card-content{display:flex;align-items:center;justify-content:center;gap:4px;text-align:center}.icon-card-content--stacked{flex-direction:column;padding-top:8px}.icon-card--compact{width:52px !important;height:52px !important}.icon-card-content--compact{width:100%;height:100%}";export{r as icon_grid}
@@ -1 +1 @@
1
- export{f as formRegistry}from"./form-registry-BhFl_bdX.js";import e from"axios";export{c as convertToAgGridColumns,a as createStructuredQuery,d as defaultPayload,b as demoMSSearchData,t as transformSearchData}from"./transformSearchData-DBjFnXu6.js";export{l as loadCatalogData,o as onChange,s as state}from"./catalog-store-DyXZf2Fc.js";export{L as LogicalSearchOperator,S as SearchBuilder,a as SearchUtilities}from"./SearchBuilder-DDfrKm8m.js";export{A as ALLOWED_GROUP_OPERATIONS,d as SearchConstants,S as SearchGroupingType,a as SearchOperators,b as SearchValueType,c as SortOrder,a as SqlFilterOperators}from"./searchObject-CDJVsMG_.js";export{b as buildCatalogTree,a as buildIndices,f as findNodeByPath,i as isCatalogModelObject}from"./catalogTree-Ca8SiTsU.js";export{C as ConfigService}from"./configService-DgYnEcjx.js";export{b as buildColumnDefsFromCatalog}from"./apiMethodInstance-CsQEcb2U.js";import{setTheme as r}from"@fluentui/web-components";import{createDarkTheme as n,createLightTheme as u}from"@fluentui/tokens";import"@stencil/store";import"./apiUtils-oxtMm00a.js";import"deep-equal";import"./makeApiCall-B-daVutk.js";import"./tenantUtils-Basdb1b1.js";import"./configureUdpColumnMods-7rLs-wc2.js";import"./lookupHelper-Bx-mQ_IX.js";const h=(e,t)=>{const o=(null==t?void 0:t.headers)?Object.assign({},t.headers):{};return o.currentTenantId=e,Object.assign(Object.assign({},t),{headers:o})},m=async(t,o,i,r)=>e(Object.assign(Object.assign(Object.assign({},{url:`${t}/${o}`}),i),r)),p={Domain:3,Lookup:4},v={String:1,Long:2,Boolean:3,DateTime:4,Double:5},g=e=>e?{tileUrlTemplate:`https://atlas.microsoft.com/map/tile?subscription-key=${e}&api-version=2024-04-01&tilesetId=microsoft.base.road&zoom={z}&x={x}&y={y}`,searchAddresses:async(t,o)=>{var i;const r=new URL("https://atlas.microsoft.com/search/address/json");r.searchParams.set("api-version","1.0"),r.searchParams.set("subscription-key",e),r.searchParams.set("query",t),r.searchParams.set("typeahead","true"),r.searchParams.set("limit","8"),(null==o?void 0:o.countrySet)&&r.searchParams.set("countrySet",o.countrySet),(null==o?void 0:o.language)&&r.searchParams.set("language",o.language);const s=await fetch(r.toString(),{signal:null==o?void 0:o.signal});if(!s.ok)throw new Error(`Azure search failed: ${s.status}`);return(null!==(i=(await s.json()).results)&&void 0!==i?i:[]).filter((e=>e.address&&e.position)).map(((e,t)=>{var o,i,r,s,n,a,l,d,c,u,h;return{id:null!==(o=e.id)&&void 0!==o?o:`azure-${t}`,address:{freeformAddress:null!==(r=null===(i=e.address)||void 0===i?void 0:i.freeformAddress)&&void 0!==r?r:"",streetNumber:null===(s=e.address)||void 0===s?void 0:s.streetNumber,streetName:null===(n=e.address)||void 0===n?void 0:n.streetName,municipality:null===(a=e.address)||void 0===a?void 0:a.municipality,countrySubdivisionName:null===(l=e.address)||void 0===l?void 0:l.countrySubdivisionName,postalCode:null!==(c=null===(d=e.address)||void 0===d?void 0:d.extendedPostalCode)&&void 0!==c?c:null===(u=e.address)||void 0===u?void 0:u.postalCode,country:null===(h=e.address)||void 0===h?void 0:h.country},position:{lat:e.position.lat,lng:e.position.lon}}}))},reverseGeocode:async(t,o,i)=>{var r,s,n,a;const l=new URL("https://atlas.microsoft.com/search/address/reverse/json");l.searchParams.set("api-version","1.0"),l.searchParams.set("subscription-key",e),l.searchParams.set("query",`${t},${o}`),(null==i?void 0:i.language)&&l.searchParams.set("language",i.language);const d=await fetch(l.toString(),{signal:null==i?void 0:i.signal});if(!d.ok)throw new Error(`Azure reverse geocode failed: ${d.status}`);const c=null===(s=null===(r=(await d.json()).addresses)||void 0===r?void 0:r[0])||void 0===s?void 0:s.address;return c?{freeformAddress:null!==(n=c.freeformAddress)&&void 0!==n?n:"",streetNumber:c.streetNumber,streetName:c.streetName,municipality:c.municipality,countrySubdivisionName:c.countrySubdivisionName,postalCode:null!==(a=c.extendedPostalCode)&&void 0!==a?a:c.postalCode,country:c.country}:null}}:null;function w(e){return getComputedStyle(document.documentElement).getPropertyValue(e)}const y={xs:`(max-width: ${w("--breakpoint-xs-max")}px)`,sm:`(min-width: ${w("--breakpoint-sm-min")}px) and (max-width: ${w("--breakpoint-sm-max")}px)`,md:`(min-width: ${w("--breakpoint-md-min")}px) and (max-width: ${w("--breakpoint-md-max")}px)`,lg:`(min-width: ${w("--breakpoint-lg-min")}px) and (max-width: ${w("--breakpoint-lg-max")}px)`,xl:`(min-width: ${w("--breakpoint-xl-min")}px)`};function x(e){return"undefined"!=typeof window&&window.matchMedia(y[e]).matches}class j{get isConnected(){var e;return(null===(e=this.socket)||void 0===e?void 0:e.readyState)===WebSocket.OPEN}async connect(e,t,o=0,i=0){var r;if(!this.isWssUrl(e))throw new Error("Invalid WebSocket URL. Only ws and wss protocols are supported.");const s=await t();this.socket=s?new WebSocket(e,s):new WebSocket(e),await new Promise(((e,t)=>{const o=()=>{this.socket.removeEventListener("open",o),this.socket.removeEventListener("error",i),e()},i=e=>{this.socket.removeEventListener("open",o),this.socket.removeEventListener("error",i),t(e)};this.socket.addEventListener("open",o),this.socket.addEventListener("error",i)})),null===(r=this.openHandler)||void 0===r||r.call(this),this.socket.onmessage=e=>this.handleMessage(e),this.socket.onclose=e=>this.handleClose(e),this.socket.onerror=e=>this.handleError(e),o&&i&&this.startKeepAliveTimer(o,i)}onMessageReceived(e){return this.messageReceivedHandler=e,this}onOpen(e){return this.openHandler=e,this}onClose(e){return this.closeHandler=e,this}onError(e){return this.errorHandler=e,this}send(e){if(!this.isConnected)throw new Error("WebSocket is not connected.");const t=JSON.stringify(e);this.socket.send(t)}close(){this.socket&&(this.socket.close(),this.stopKeepAliveTimer(),this.socket=void 0)}handleMessage(e){var t;try{const o=JSON.parse(e.data);null===(t=this.messageReceivedHandler)||void 0===t||t.call(this,o)}catch(e){console.error("Invalid UdpWebSocketMessage received:",e)}}handleClose(e){var t;null===(t=this.closeHandler)||void 0===t||t.call(this,e),this.close()}handleError(e){var t;null===(t=this.errorHandler)||void 0===t||t.call(this,e),console.error("UdpWebSocket error:",e)}startKeepAliveTimer(e,t){this.stopKeepAliveTimer(),this.keepAliveIntervalId=window.setInterval((()=>{this.sendKeepAlivePing()}),e),this.keepAliveTimeoutId=window.setTimeout((()=>{this.close()}),t)}stopKeepAliveTimer(){this.keepAliveIntervalId&&clearInterval(this.keepAliveIntervalId),this.keepAliveTimeoutId&&clearTimeout(this.keepAliveTimeoutId),this.keepAliveIntervalId=void 0,this.keepAliveTimeoutId=void 0}sendKeepAlivePing(){const e={headers:{type:"KeepAlive",timestamp:Date.now()}};try{this.send(e)}catch(e){console.error("KeepAlive ping failed to send:",e)}}isWssUrl(e){return/^wss?:\/\//.test(e)}}function k(e,t,o){const i=e=>{const t=Math.max(0,Math.min(255,Math.round(e))).toString(16);return 1===t.length?"0"+t:t};return`#${i(e)}${i(t)}${i(o)}`}j.DEFAULT_KEEPALIVE_INTERVAL_MS=3e4,j.DEFAULT_KEEPALIVE_TIMEOUT_MS=36e5;const $={unity:"#0c2f50",sap:"#344861"};let O=$.unity,D="light";function U(){!function(e){const{primaryColor:t,mode:o}=e,i=function(e){const{r:t,g:o,b:i}=function(e){const t=e.replace(/^#?([a-f\d])([a-f\d])([a-f\d])$/i,((e,t,o,i)=>t+t+o+o+i+i)),o=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(t);return o?{r:parseInt(o[1],16),g:parseInt(o[2],16),b:parseInt(o[3],16)}:{r:0,g:0,b:0}}(e),r={};for(let s=1;s<=16;s++){const n=10*s;if(80===n){r[n]=e;continue}let a,l,d;if(n<80){const e=n/80;a=t*e,l=o*e,d=i*e}else{const e=(n-80)/80;a=t+(255-t)*e,l=o+(255-o)*e,d=i+(255-i)*e}r[n]=k(a,l,d)}return r}(t),s="dark"===o?n(i):u(i);r(s),document.documentElement.style.color="var(--colorNeutralForeground1)",document.documentElement.style.backgroundColor="var(--colorNeutralBackground1)"}({primaryColor:O,mode:D})}function M(e){e?"string"==typeof e?(O=$[e],D="light"):(O=e.primaryColor||$.unity,D=e.mode||"light"):(O=$.unity,D="light"),U()}function N(e){if(D=e,U(),"undefined"!=typeof window){const e=new CustomEvent("theme-changed",{detail:{mode:D,primaryColor:O}});window.dispatchEvent(e)}}function T(){return D}export{v as LookupColumnTypeId,p as LookupTypeId,j as UdpWebSocketClient,m as apiMutate,g as createAzureMapsProviders,T as getCurrentThemeMode,h as getMergedConfig,M as initializeTheme,N as setThemeMode,x as useMatchBreakpoint}
1
+ export{f as formRegistry}from"./form-registry-BhFl_bdX.js";import e from"axios";export{c as convertToAgGridColumns,a as createStructuredQuery,d as defaultPayload,b as demoMSSearchData,t as transformSearchData}from"./transformSearchData-DBjFnXu6.js";export{l as loadCatalogData,o as onChange,s as state}from"./catalog-store-DyXZf2Fc.js";export{L as LogicalSearchOperator,S as SearchBuilder,a as SearchUtilities}from"./SearchBuilder-DDfrKm8m.js";export{A as ALLOWED_GROUP_OPERATIONS,d as SearchConstants,S as SearchGroupingType,a as SearchOperators,b as SearchValueType,c as SortOrder,a as SqlFilterOperators}from"./searchObject-CDJVsMG_.js";export{b as buildCatalogTree,a as buildIndices,f as findNodeByPath,i as isCatalogModelObject}from"./catalogTree-Ca8SiTsU.js";export{C as ConfigService}from"./configService-DgYnEcjx.js";export{b as buildColumnDefsFromCatalog}from"./apiMethodInstance-CsQEcb2U.js";export{g as getCurrentThemeMode,i as initializeTheme,s as setThemeMode}from"./theme-manager-DeVqiL0i.js";import"@stencil/store";import"./apiUtils-oxtMm00a.js";import"deep-equal";import"./makeApiCall-B-daVutk.js";import"./tenantUtils-Basdb1b1.js";import"./configureUdpColumnMods-7rLs-wc2.js";import"./lookupHelper-Bx-mQ_IX.js";import"@fluentui/web-components";import"@fluentui/tokens";const r=(e,t)=>{const i=(null==t?void 0:t.headers)?Object.assign({},t.headers):{};return i.currentTenantId=e,Object.assign(Object.assign({},t),{headers:i})},n=async(t,i,o,s)=>e(Object.assign(Object.assign(Object.assign({},{url:`${t}/${i}`}),o),s)),h={Domain:3,Lookup:4},u={String:1,Long:2,Boolean:3,DateTime:4,Double:5},m=e=>e?{tileUrlTemplate:`https://atlas.microsoft.com/map/tile?subscription-key=${e}&api-version=2024-04-01&tilesetId=microsoft.base.road&zoom={z}&x={x}&y={y}`,searchAddresses:async(t,i)=>{var o;const s=new URL("https://atlas.microsoft.com/search/address/json");s.searchParams.set("api-version","1.0"),s.searchParams.set("subscription-key",e),s.searchParams.set("query",t),s.searchParams.set("typeahead","true"),s.searchParams.set("limit","8"),(null==i?void 0:i.countrySet)&&s.searchParams.set("countrySet",i.countrySet),(null==i?void 0:i.language)&&s.searchParams.set("language",i.language);const r=await fetch(s.toString(),{signal:null==i?void 0:i.signal});if(!r.ok)throw new Error(`Azure search failed: ${r.status}`);return(null!==(o=(await r.json()).results)&&void 0!==o?o:[]).filter((e=>e.address&&e.position)).map(((e,t)=>{var i,o,s,r,a,n,l,d,c,h,u;return{id:null!==(i=e.id)&&void 0!==i?i:`azure-${t}`,address:{freeformAddress:null!==(s=null===(o=e.address)||void 0===o?void 0:o.freeformAddress)&&void 0!==s?s:"",streetNumber:null===(r=e.address)||void 0===r?void 0:r.streetNumber,streetName:null===(a=e.address)||void 0===a?void 0:a.streetName,municipality:null===(n=e.address)||void 0===n?void 0:n.municipality,countrySubdivisionName:null===(l=e.address)||void 0===l?void 0:l.countrySubdivisionName,postalCode:null!==(c=null===(d=e.address)||void 0===d?void 0:d.extendedPostalCode)&&void 0!==c?c:null===(h=e.address)||void 0===h?void 0:h.postalCode,country:null===(u=e.address)||void 0===u?void 0:u.country},position:{lat:e.position.lat,lng:e.position.lon}}}))},reverseGeocode:async(t,i,o)=>{var s,r,a,n;const l=new URL("https://atlas.microsoft.com/search/address/reverse/json");l.searchParams.set("api-version","1.0"),l.searchParams.set("subscription-key",e),l.searchParams.set("query",`${t},${i}`),(null==o?void 0:o.language)&&l.searchParams.set("language",o.language);const d=await fetch(l.toString(),{signal:null==o?void 0:o.signal});if(!d.ok)throw new Error(`Azure reverse geocode failed: ${d.status}`);const c=null===(r=null===(s=(await d.json()).addresses)||void 0===s?void 0:s[0])||void 0===r?void 0:r.address;return c?{freeformAddress:null!==(a=c.freeformAddress)&&void 0!==a?a:"",streetNumber:c.streetNumber,streetName:c.streetName,municipality:c.municipality,countrySubdivisionName:c.countrySubdivisionName,postalCode:null!==(n=c.extendedPostalCode)&&void 0!==n?n:c.postalCode,country:c.country}:null}}:null;function p(e){return getComputedStyle(document.documentElement).getPropertyValue(e)}const v={xs:`(max-width: ${p("--breakpoint-xs-max")}px)`,sm:`(min-width: ${p("--breakpoint-sm-min")}px) and (max-width: ${p("--breakpoint-sm-max")}px)`,md:`(min-width: ${p("--breakpoint-md-min")}px) and (max-width: ${p("--breakpoint-md-max")}px)`,lg:`(min-width: ${p("--breakpoint-lg-min")}px) and (max-width: ${p("--breakpoint-lg-max")}px)`,xl:`(min-width: ${p("--breakpoint-xl-min")}px)`};function w(e){return"undefined"!=typeof window&&window.matchMedia(v[e]).matches}class x{get isConnected(){var e;return(null===(e=this.socket)||void 0===e?void 0:e.readyState)===WebSocket.OPEN}async connect(e,t,i=0,o=0){var s;if(!this.isWssUrl(e))throw new Error("Invalid WebSocket URL. Only ws and wss protocols are supported.");const r=await t();this.socket=r?new WebSocket(e,r):new WebSocket(e),await new Promise(((e,t)=>{const i=()=>{this.socket.removeEventListener("open",i),this.socket.removeEventListener("error",o),e()},o=e=>{this.socket.removeEventListener("open",i),this.socket.removeEventListener("error",o),t(e)};this.socket.addEventListener("open",i),this.socket.addEventListener("error",o)})),null===(s=this.openHandler)||void 0===s||s.call(this),this.socket.onmessage=e=>this.handleMessage(e),this.socket.onclose=e=>this.handleClose(e),this.socket.onerror=e=>this.handleError(e),i&&o&&this.startKeepAliveTimer(i,o)}onMessageReceived(e){return this.messageReceivedHandler=e,this}onOpen(e){return this.openHandler=e,this}onClose(e){return this.closeHandler=e,this}onError(e){return this.errorHandler=e,this}send(e){if(!this.isConnected)throw new Error("WebSocket is not connected.");const t=JSON.stringify(e);this.socket.send(t)}close(){this.socket&&(this.socket.close(),this.stopKeepAliveTimer(),this.socket=void 0)}handleMessage(e){var t;try{const i=JSON.parse(e.data);null===(t=this.messageReceivedHandler)||void 0===t||t.call(this,i)}catch(e){console.error("Invalid UdpWebSocketMessage received:",e)}}handleClose(e){var t;null===(t=this.closeHandler)||void 0===t||t.call(this,e),this.close()}handleError(e){var t;null===(t=this.errorHandler)||void 0===t||t.call(this,e),console.error("UdpWebSocket error:",e)}startKeepAliveTimer(e,t){this.stopKeepAliveTimer(),this.keepAliveIntervalId=window.setInterval((()=>{this.sendKeepAlivePing()}),e),this.keepAliveTimeoutId=window.setTimeout((()=>{this.close()}),t)}stopKeepAliveTimer(){this.keepAliveIntervalId&&clearInterval(this.keepAliveIntervalId),this.keepAliveTimeoutId&&clearTimeout(this.keepAliveTimeoutId),this.keepAliveIntervalId=void 0,this.keepAliveTimeoutId=void 0}sendKeepAlivePing(){const e={headers:{type:"KeepAlive",timestamp:Date.now()}};try{this.send(e)}catch(e){console.error("KeepAlive ping failed to send:",e)}}isWssUrl(e){return/^wss?:\/\//.test(e)}}x.DEFAULT_KEEPALIVE_INTERVAL_MS=3e4,x.DEFAULT_KEEPALIVE_TIMEOUT_MS=36e5;export{u as LookupColumnTypeId,h as LookupTypeId,x as UdpWebSocketClient,n as apiMutate,m as createAzureMapsProviders,r as getMergedConfig,w as useMatchBreakpoint}