@naniteninja/dashboard-components-lib 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (404) hide show
  1. package/esm2022/lib/components/auto-delegation/animations.mjs +20 -0
  2. package/esm2022/lib/components/auto-delegation/auto-delegation-modal.component.mjs +106 -0
  3. package/esm2022/lib/components/auto-delegation/enums/auto-delegation.event-type.enum.mjs +6 -0
  4. package/esm2022/lib/components/auto-delegation/enums/auto-delegation.event-value.enum.mjs +7 -0
  5. package/esm2022/lib/components/auto-delegation/interface/auto-delegation-data.interface.mjs +2 -0
  6. package/esm2022/lib/components/auto-delegation/interface/auto-delegation.event.interface.mjs +2 -0
  7. package/esm2022/lib/components/auto-delegation/interface/auto-delegation.modal-data.interface.mjs +2 -0
  8. package/esm2022/lib/components/auto-delegation/interface/preferences.interface.mjs +2 -0
  9. package/esm2022/lib/components/calendar/agenda/agenda-day-card/agenda-day-card.component.mjs +37 -0
  10. package/esm2022/lib/components/calendar/agenda/agenda.component.mjs +98 -0
  11. package/esm2022/lib/components/calendar/agenda/agenda.module.mjs +24 -0
  12. package/esm2022/lib/components/calendar/agenda/interfaces/agenda.day.interface.mjs +2 -0
  13. package/esm2022/lib/components/calendar/agenda/interfaces/agenda.event.inetrface.mjs +2 -0
  14. package/esm2022/lib/components/calendar/components/edit-recurring-event/edit-recurring-event.component.mjs +40 -0
  15. package/esm2022/lib/components/calendar/components/event-form/event-form.component.mjs +275 -0
  16. package/esm2022/lib/components/calendar/components/event-form/event-form.module.mjs +89 -0
  17. package/esm2022/lib/components/calendar/components/event-info/event-info.component.mjs +40 -0
  18. package/esm2022/lib/components/calendar/enums/calendar.account.enum.mjs +6 -0
  19. package/esm2022/lib/components/calendar/enums/calendar.account.icons.enum.mjs +6 -0
  20. package/esm2022/lib/components/calendar/enums/event-type.enum.mjs +10 -0
  21. package/esm2022/lib/components/calendar/enums/recurring.edit.options.enum.mjs +7 -0
  22. package/esm2022/lib/components/calendar/enums/recurring.type.enum.mjs +8 -0
  23. package/esm2022/lib/components/calendar/interfaces/calendar.account.interface.mjs +2 -0
  24. package/esm2022/lib/components/calendar/interfaces/calendar.account.theme.interface.mjs +2 -0
  25. package/esm2022/lib/components/calendar/interfaces/event.form.interface.mjs +2 -0
  26. package/esm2022/lib/components/calendar/interfaces/event.form.output.interface.mjs +2 -0
  27. package/esm2022/lib/components/calendar/interfaces/event.interface.mjs +2 -0
  28. package/esm2022/lib/components/calendar/interfaces/event.time.interface.mjs +2 -0
  29. package/esm2022/lib/components/calendar/interfaces/recurring.event.interface.mjs +2 -0
  30. package/esm2022/lib/components/calendar/interfaces/recurring.exception.interface.mjs +2 -0
  31. package/esm2022/lib/components/calendar/interfaces/recurring.pattern.interface.mjs +2 -0
  32. package/esm2022/lib/components/calendar/lookups/recurring.options.lookup.mjs +30 -0
  33. package/esm2022/lib/components/calendar/scheduler/enums/schedule-date-status.enum.mjs +7 -0
  34. package/esm2022/lib/components/calendar/scheduler/interfaces/scheduler.action.interface.mjs +2 -0
  35. package/esm2022/lib/components/calendar/scheduler/interfaces/scheduler.event.day.interface.mjs +2 -0
  36. package/esm2022/lib/components/calendar/scheduler/interfaces/scheduler.event.interface.mjs +2 -0
  37. package/esm2022/lib/components/calendar/scheduler/interfaces/scheduler.event.suggestion.interface.mjs +2 -0
  38. package/esm2022/lib/components/calendar/scheduler/interfaces/scheduler.slots.interface.mjs +2 -0
  39. package/esm2022/lib/components/calendar/scheduler/mock-schedule.mjs +80 -0
  40. package/esm2022/lib/components/calendar/scheduler/scheduler.component.mjs +144 -0
  41. package/esm2022/lib/components/calendar/services/calendar-utils.service.mjs +211 -0
  42. package/esm2022/lib/components/chat/chat.component.mjs +307 -0
  43. package/esm2022/lib/components/chat/chat.component.module.mjs +85 -0
  44. package/esm2022/lib/components/chat/chat.service.mjs +63 -0
  45. package/esm2022/lib/components/chat/enums/sender-types.enum.mjs +6 -0
  46. package/esm2022/lib/components/chat/gif-selector/gif-selector.component.mjs +77 -0
  47. package/esm2022/lib/components/chat/gif-selector/gif-selector.service.mjs +41 -0
  48. package/esm2022/lib/components/chat/gif-selector/tenor-media-format.interface.mjs +2 -0
  49. package/esm2022/lib/components/chat/gif-selector/tenor-object.interface.mjs +2 -0
  50. package/esm2022/lib/components/chat/gif-selector/tenor-result.interface.mjs +2 -0
  51. package/esm2022/lib/components/chat/interfaces/date-messages.interface.mjs +2 -0
  52. package/esm2022/lib/components/chat/interfaces/message-attachment.interface.mjs +2 -0
  53. package/esm2022/lib/components/chat/interfaces/message.interface.mjs +2 -0
  54. package/esm2022/lib/components/chat/interfaces/send-options-message.interface.mjs +2 -0
  55. package/esm2022/lib/components/chat/interfaces/type-send-message.enum.mjs +7 -0
  56. package/esm2022/lib/components/chat-suggestion/chat-suggestion.component.mjs +21 -0
  57. package/esm2022/lib/components/chat-suggestion/interfaces/chat-suggestion.interface.mjs +2 -0
  58. package/esm2022/lib/components/circle-progress/circle-progress.component.mjs +143 -0
  59. package/esm2022/lib/components/circle-progress/circle-progress.module.mjs +18 -0
  60. package/esm2022/lib/components/circle-progress/enums/circle-variable.enum.mjs +6 -0
  61. package/esm2022/lib/components/circle-progress/interfaces/circle-progress-config.interface.mjs +2 -0
  62. package/esm2022/lib/components/client-home/client-home.component.mjs +123 -0
  63. package/esm2022/lib/components/client-home/enums/client-home-component.enum.mjs +9 -0
  64. package/esm2022/lib/components/client-home/interfaces/chat-meta.interface.mjs +2 -0
  65. package/esm2022/lib/components/client-home/interfaces/home-dashboard-inputs.interface.mjs +2 -0
  66. package/esm2022/lib/components/client-home/interfaces/inner-partial-circle-progress-colors.interface.mjs +2 -0
  67. package/esm2022/lib/components/client-home/interfaces/partial-circle-progress-colors.interface.mjs +2 -0
  68. package/esm2022/lib/components/client-home/lookup/client-home.config.mjs +30 -0
  69. package/esm2022/lib/components/client-home/lookup/inner-progress-default-colors.config.mjs +6 -0
  70. package/esm2022/lib/components/client-home/lookup/inner-progress-pink-colors.config.mjs +6 -0
  71. package/esm2022/lib/components/client-home/lookup/inner-progress-purple-colors.config.mjs +6 -0
  72. package/esm2022/lib/components/client-home/lookup/inner-progress-teal-colors.config.mjs +6 -0
  73. package/esm2022/lib/components/client-home/lookup/inner-progress-white-colors.config.mjs +10 -0
  74. package/esm2022/lib/components/client-home/lookup/progress-default-colors.config.mjs +10 -0
  75. package/esm2022/lib/components/client-home/lookup/progress-white-colors.config.mjs +10 -0
  76. package/esm2022/lib/components/client-home/pipes/chat-meta.pipe.mjs +60 -0
  77. package/esm2022/lib/components/client-home/pipes/get-color-by-matcher.pipe.mjs +33 -0
  78. package/esm2022/lib/components/client-match-overview/client-match-overview.component.mjs +300 -0
  79. package/esm2022/lib/components/client-match-overview/enums/conversation-flag.enum.mjs +6 -0
  80. package/esm2022/lib/components/client-match-overview/enums/counter-flag-base.enum.mjs +6 -0
  81. package/esm2022/lib/components/client-match-overview/enums/inner-circle-state.enum.mjs +8 -0
  82. package/esm2022/lib/components/client-match-overview/interfaces/client-match-overview.interface.mjs +2 -0
  83. package/esm2022/lib/components/client-match-overview/interfaces/conversation-flag.interface.mjs +2 -0
  84. package/esm2022/lib/components/client-match-overview/interfaces/dashboard-match-request.interface.mjs +2 -0
  85. package/esm2022/lib/components/client-match-overview/interfaces/progress-decision.interface.mjs +2 -0
  86. package/esm2022/lib/components/client-match-overview/interfaces/progress-facts.interface.mjs +2 -0
  87. package/esm2022/lib/components/client-match-overview/lookups/computer-inner-state.lookup.mjs +81 -0
  88. package/esm2022/lib/components/client-match-overview/lookups/limit-dates-indicator.lookup.mjs +8 -0
  89. package/esm2022/lib/components/client-match-overview/progress-ticker/progress-gap.config.mjs +4 -0
  90. package/esm2022/lib/components/client-match-overview/progress-ticker/progress-ticker.config.mjs +3 -0
  91. package/esm2022/lib/components/client-match-overview/progress-ticker/progress-ticker.service.mjs +43 -0
  92. package/esm2022/lib/components/dashboard-swipeable-tabs/dashboard-swipeable-tabs.component.mjs +113 -0
  93. package/esm2022/lib/components/dashboard-swipeable-tabs/lookups/dashboard-main-swiper-options.mjs +11 -0
  94. package/esm2022/lib/components/dashboard-swipeable-tabs/lookups/dashboard-thumbs-swiper-options.mjs +27 -0
  95. package/esm2022/lib/components/dashboard-swipeable-tabs/lookups/main-swiper-default-options.mjs +19 -0
  96. package/esm2022/lib/components/dashboard-swipeable-tabs/lookups/thumbs-swiper-default-options.mjs +21 -0
  97. package/esm2022/lib/components/lib-client-dashboard/client-dashboard.component.mjs +170 -0
  98. package/esm2022/lib/components/lib-client-dashboard/enums/alert-status-fields.enum.mjs +11 -0
  99. package/esm2022/lib/components/lib-client-dashboard/enums/client-dashboard-component.enum.mjs +7 -0
  100. package/esm2022/lib/components/lib-client-dashboard/interfaces/client-dashboard-inputs.interface.mjs +2 -0
  101. package/esm2022/lib/components/lib-client-dashboard/lookups/client-dashboard.config.mjs +15 -0
  102. package/esm2022/lib/components/lib-compose-matcher-dash/compose-matcher-dash.component.mjs +146 -0
  103. package/esm2022/lib/components/lib-compose-matcher-dash/interfaces/chart-data.interface.mjs +2 -0
  104. package/esm2022/lib/components/lib-compose-matcher-dash/interfaces/chat-identifier.interface.mjs +2 -0
  105. package/esm2022/lib/components/lib-compose-matcher-dash/interfaces/matcher-dashboard-inputs.interface.mjs +2 -0
  106. package/esm2022/lib/components/lib-compose-matcher-dash/interfaces/matcher-profile.interface.mjs +2 -0
  107. package/esm2022/lib/components/lib-compose-matcher-dash/interfaces/prospect-data.interface.mjs +2 -0
  108. package/esm2022/lib/components/lib-compose-matcher-dash/pipes/get-profile-with-progress.pipe.mjs +21 -0
  109. package/esm2022/lib/components/matcher-statuses/enums/matcher-statuses.enum.mjs +15 -0
  110. package/esm2022/lib/components/matcher-statuses/interfaces/status.interface.mjs +2 -0
  111. package/esm2022/lib/components/matcher-statuses/lookups/matcher-statuses.lookup.mjs +54 -0
  112. package/esm2022/lib/components/matcher-statuses/matcher-statuses.component.mjs +58 -0
  113. package/esm2022/lib/components/matcher-statuses/pipes/is-status-included.pipe.mjs +19 -0
  114. package/esm2022/lib/components/profile-card/profile-card.component.mjs +35 -0
  115. package/esm2022/lib/components/profile-card/profile-card.module.mjs +19 -0
  116. package/esm2022/lib/components/spider-chart/interfaces/chart-data-circle.interface.mjs +2 -0
  117. package/esm2022/lib/components/spider-chart/interfaces/chart-data-defs-f.interface.mjs +2 -0
  118. package/esm2022/lib/components/spider-chart/interfaces/chart-data-defs-lg.interface.mjs +2 -0
  119. package/esm2022/lib/components/spider-chart/interfaces/chart-data-defs-rg.interface.mjs +2 -0
  120. package/esm2022/lib/components/spider-chart/interfaces/config.interface.mjs +2 -0
  121. package/esm2022/lib/components/spider-chart/interfaces/dataset.interface.mjs +2 -0
  122. package/esm2022/lib/components/spider-chart/interfaces/polygon-color.interface.mjs +2 -0
  123. package/esm2022/lib/components/spider-chart/interfaces/spider-chart-attribute.interface.mjs +2 -0
  124. package/esm2022/lib/components/spider-chart/lookup/default-spider-config.lookup.mjs +18 -0
  125. package/esm2022/lib/components/spider-chart/lookup/default-spider-config.mjs +67 -0
  126. package/esm2022/lib/components/spider-chart/lookup/demo-polygon-colors.lookup.mjs +11 -0
  127. package/esm2022/lib/components/spider-chart/lookup/svg-config.lookup.mjs +277 -0
  128. package/esm2022/lib/components/spider-chart/spider-chart.component.mjs +235 -0
  129. package/esm2022/lib/enums/direction.enum.mjs +6 -0
  130. package/esm2022/lib/enums/form-field-type.mjs +30 -0
  131. package/esm2022/lib/enums/local-storage-keys.enum.mjs +5 -0
  132. package/esm2022/lib/enums/status-types.mjs +8 -0
  133. package/esm2022/lib/model/select-option-template.mjs +2 -0
  134. package/esm2022/lib/operations/operations.mjs +19 -0
  135. package/esm2022/lib/pipes/array-sort/array.sort.pipe.mjs +49 -0
  136. package/esm2022/lib/pipes/count-non-empty-fields/count-non-empty-fields.pipe.mjs +17 -0
  137. package/esm2022/lib/pipes/date-localization/date-localization.pipe.mjs +31 -0
  138. package/esm2022/lib/pipes/fallback-translate/fallback-translate.pipe.mjs +28 -0
  139. package/esm2022/lib/pipes/get-display-value/get-display-value.pipe.mjs +59 -0
  140. package/esm2022/lib/pipes/get-multi-select-display-text/get-multi-select-display-text.pipe.mjs +22 -0
  141. package/esm2022/lib/pipes/initials/initials.pipe.mjs +25 -0
  142. package/esm2022/lib/pipes/round/round.pipe.mjs +17 -0
  143. package/esm2022/lib/pipes/update-llm-preference/update-llm-preference.pipe.mjs +25 -0
  144. package/esm2022/lib/services/abstract-cache.service.mjs +10 -0
  145. package/esm2022/lib/shared/shared/alert-popup/alert-popup.component.mjs +38 -0
  146. package/esm2022/lib/shared/shared/message-modal/message-modal.component.mjs +95 -0
  147. package/esm2022/lib/shared/shared/status-icon/status-icon.component.mjs +14 -0
  148. package/esm2022/lib/shared/shared.module.mjs +23 -0
  149. package/esm2022/naniteninja-dashboard-components-lib.mjs +5 -0
  150. package/esm2022/public-api.mjs +122 -0
  151. package/fesm2022/naniteninja-dashboard-components-lib.mjs +4334 -0
  152. package/fesm2022/naniteninja-dashboard-components-lib.mjs.map +1 -0
  153. package/index.d.ts +5 -0
  154. package/lib/components/auto-delegation/animations.d.ts +1 -0
  155. package/lib/components/auto-delegation/auto-delegation-modal.component.d.ts +29 -0
  156. package/lib/components/auto-delegation/enums/auto-delegation.event-type.enum.d.ts +4 -0
  157. package/lib/components/auto-delegation/enums/auto-delegation.event-value.enum.d.ts +5 -0
  158. package/lib/components/auto-delegation/interface/auto-delegation-data.interface.d.ts +31 -0
  159. package/lib/components/auto-delegation/interface/auto-delegation.event.interface.d.ts +6 -0
  160. package/lib/components/auto-delegation/interface/auto-delegation.modal-data.interface.d.ts +8 -0
  161. package/lib/components/auto-delegation/interface/preferences.interface.d.ts +17 -0
  162. package/lib/components/calendar/agenda/agenda-day-card/agenda-day-card.component.d.ts +12 -0
  163. package/lib/components/calendar/agenda/agenda.component.d.ts +22 -0
  164. package/lib/components/calendar/agenda/agenda.module.d.ts +12 -0
  165. package/lib/components/calendar/agenda/interfaces/agenda.day.interface.d.ts +7 -0
  166. package/lib/components/calendar/agenda/interfaces/agenda.event.inetrface.d.ts +9 -0
  167. package/lib/components/calendar/components/edit-recurring-event/edit-recurring-event.component.d.ts +19 -0
  168. package/lib/components/calendar/components/event-form/event-form.component.d.ts +67 -0
  169. package/lib/components/calendar/components/event-form/event-form.module.d.ts +20 -0
  170. package/lib/components/calendar/components/event-info/event-info.component.d.ts +24 -0
  171. package/lib/components/calendar/enums/calendar.account.enum.d.ts +4 -0
  172. package/lib/components/calendar/enums/calendar.account.icons.enum.d.ts +4 -0
  173. package/lib/components/calendar/enums/event-type.enum.d.ts +8 -0
  174. package/lib/components/calendar/enums/recurring.edit.options.enum.d.ts +5 -0
  175. package/lib/components/calendar/enums/recurring.type.enum.d.ts +6 -0
  176. package/lib/components/calendar/interfaces/calendar.account.interface.d.ts +14 -0
  177. package/lib/components/calendar/interfaces/calendar.account.theme.interface.d.ts +5 -0
  178. package/lib/components/calendar/interfaces/event.form.interface.d.ts +22 -0
  179. package/lib/components/calendar/interfaces/event.form.output.interface.d.ts +10 -0
  180. package/lib/components/calendar/interfaces/event.interface.d.ts +33 -0
  181. package/lib/components/calendar/interfaces/event.time.interface.d.ts +4 -0
  182. package/lib/components/calendar/interfaces/recurring.event.interface.d.ts +16 -0
  183. package/lib/components/calendar/interfaces/recurring.exception.interface.d.ts +14 -0
  184. package/lib/components/calendar/interfaces/recurring.pattern.interface.d.ts +16 -0
  185. package/lib/components/calendar/lookups/recurring.options.lookup.d.ts +2 -0
  186. package/lib/components/calendar/scheduler/enums/schedule-date-status.enum.d.ts +5 -0
  187. package/lib/components/calendar/scheduler/interfaces/scheduler.action.interface.d.ts +10 -0
  188. package/lib/components/calendar/scheduler/interfaces/scheduler.event.day.interface.d.ts +5 -0
  189. package/lib/components/calendar/scheduler/interfaces/scheduler.event.interface.d.ts +26 -0
  190. package/lib/components/calendar/scheduler/interfaces/scheduler.event.suggestion.interface.d.ts +13 -0
  191. package/lib/components/calendar/scheduler/interfaces/scheduler.slots.interface.d.ts +6 -0
  192. package/lib/components/calendar/scheduler/mock-schedule.d.ts +9 -0
  193. package/lib/components/calendar/scheduler/scheduler.component.d.ts +36 -0
  194. package/lib/components/calendar/services/calendar-utils.service.d.ts +39 -0
  195. package/lib/components/chat/chat.component.d.ts +70 -0
  196. package/lib/components/chat/chat.component.module.d.ts +22 -0
  197. package/lib/components/chat/chat.service.d.ts +15 -0
  198. package/lib/components/chat/enums/sender-types.enum.d.ts +4 -0
  199. package/lib/components/chat/gif-selector/gif-selector.component.d.ts +25 -0
  200. package/lib/components/chat/gif-selector/gif-selector.service.d.ts +15 -0
  201. package/lib/components/chat/gif-selector/tenor-media-format.interface.d.ts +7 -0
  202. package/lib/components/chat/gif-selector/tenor-object.interface.d.ts +5 -0
  203. package/lib/components/chat/gif-selector/tenor-result.interface.d.ts +16 -0
  204. package/lib/components/chat/interfaces/date-messages.interface.d.ts +6 -0
  205. package/lib/components/chat/interfaces/message-attachment.interface.d.ts +6 -0
  206. package/lib/components/chat/interfaces/message.interface.d.ts +11 -0
  207. package/lib/components/chat/interfaces/send-options-message.interface.d.ts +5 -0
  208. package/lib/components/chat/interfaces/type-send-message.enum.d.ts +5 -0
  209. package/lib/components/chat-suggestion/chat-suggestion.component.d.ts +9 -0
  210. package/lib/components/chat-suggestion/interfaces/chat-suggestion.interface.d.ts +4 -0
  211. package/lib/components/circle-progress/circle-progress.component.d.ts +31 -0
  212. package/lib/components/circle-progress/circle-progress.module.d.ts +8 -0
  213. package/lib/components/circle-progress/enums/circle-variable.enum.d.ts +4 -0
  214. package/lib/components/circle-progress/interfaces/circle-progress-config.interface.d.ts +29 -0
  215. package/lib/components/client-home/client-home.component.d.ts +44 -0
  216. package/lib/components/client-home/enums/client-home-component.enum.d.ts +7 -0
  217. package/lib/components/client-home/interfaces/chat-meta.interface.d.ts +7 -0
  218. package/lib/components/client-home/interfaces/home-dashboard-inputs.interface.d.ts +45 -0
  219. package/lib/components/client-home/interfaces/inner-partial-circle-progress-colors.interface.d.ts +5 -0
  220. package/lib/components/client-home/interfaces/partial-circle-progress-colors.interface.d.ts +9 -0
  221. package/lib/components/client-home/lookup/client-home.config.d.ts +2 -0
  222. package/lib/components/client-home/lookup/inner-progress-default-colors.config.d.ts +2 -0
  223. package/lib/components/client-home/lookup/inner-progress-pink-colors.config.d.ts +2 -0
  224. package/lib/components/client-home/lookup/inner-progress-purple-colors.config.d.ts +2 -0
  225. package/lib/components/client-home/lookup/inner-progress-teal-colors.config.d.ts +2 -0
  226. package/lib/components/client-home/lookup/inner-progress-white-colors.config.d.ts +2 -0
  227. package/lib/components/client-home/lookup/progress-default-colors.config.d.ts +2 -0
  228. package/lib/components/client-home/lookup/progress-white-colors.config.d.ts +2 -0
  229. package/lib/components/client-home/pipes/chat-meta.pipe.d.ts +10 -0
  230. package/lib/components/client-home/pipes/get-color-by-matcher.pipe.d.ts +10 -0
  231. package/lib/components/client-match-overview/client-match-overview.component.d.ts +55 -0
  232. package/lib/components/client-match-overview/enums/conversation-flag.enum.d.ts +4 -0
  233. package/lib/components/client-match-overview/enums/counter-flag-base.enum.d.ts +4 -0
  234. package/lib/components/client-match-overview/enums/inner-circle-state.enum.d.ts +6 -0
  235. package/lib/components/client-match-overview/interfaces/client-match-overview.interface.d.ts +19 -0
  236. package/lib/components/client-match-overview/interfaces/conversation-flag.interface.d.ts +8 -0
  237. package/lib/components/client-match-overview/interfaces/dashboard-match-request.interface.d.ts +7 -0
  238. package/lib/components/client-match-overview/interfaces/progress-decision.interface.d.ts +10 -0
  239. package/lib/components/client-match-overview/interfaces/progress-facts.interface.d.ts +11 -0
  240. package/lib/components/client-match-overview/lookups/computer-inner-state.lookup.d.ts +7 -0
  241. package/lib/components/client-match-overview/lookups/limit-dates-indicator.lookup.d.ts +5 -0
  242. package/lib/components/client-match-overview/progress-ticker/progress-gap.config.d.ts +2 -0
  243. package/lib/components/client-match-overview/progress-ticker/progress-ticker.config.d.ts +2 -0
  244. package/lib/components/client-match-overview/progress-ticker/progress-ticker.service.d.ts +11 -0
  245. package/lib/components/dashboard-swipeable-tabs/dashboard-swipeable-tabs.component.d.ts +29 -0
  246. package/lib/components/dashboard-swipeable-tabs/lookups/dashboard-main-swiper-options.d.ts +2 -0
  247. package/lib/components/dashboard-swipeable-tabs/lookups/dashboard-thumbs-swiper-options.d.ts +2 -0
  248. package/lib/components/dashboard-swipeable-tabs/lookups/main-swiper-default-options.d.ts +2 -0
  249. package/lib/components/dashboard-swipeable-tabs/lookups/thumbs-swiper-default-options.d.ts +2 -0
  250. package/lib/components/lib-client-dashboard/client-dashboard.component.d.ts +73 -0
  251. package/lib/components/lib-client-dashboard/enums/alert-status-fields.enum.d.ts +9 -0
  252. package/lib/components/lib-client-dashboard/enums/client-dashboard-component.enum.d.ts +5 -0
  253. package/lib/components/lib-client-dashboard/interfaces/client-dashboard-inputs.interface.d.ts +29 -0
  254. package/lib/components/lib-client-dashboard/lookups/client-dashboard.config.d.ts +2 -0
  255. package/lib/components/lib-compose-matcher-dash/compose-matcher-dash.component.d.ts +48 -0
  256. package/lib/components/lib-compose-matcher-dash/interfaces/chart-data.interface.d.ts +5 -0
  257. package/lib/components/lib-compose-matcher-dash/interfaces/chat-identifier.interface.d.ts +5 -0
  258. package/lib/components/lib-compose-matcher-dash/interfaces/matcher-dashboard-inputs.interface.d.ts +26 -0
  259. package/lib/components/lib-compose-matcher-dash/interfaces/matcher-profile.interface.d.ts +8 -0
  260. package/lib/components/lib-compose-matcher-dash/interfaces/prospect-data.interface.d.ts +24 -0
  261. package/lib/components/lib-compose-matcher-dash/pipes/get-profile-with-progress.pipe.d.ts +9 -0
  262. package/lib/components/matcher-statuses/enums/matcher-statuses.enum.d.ts +13 -0
  263. package/lib/components/matcher-statuses/interfaces/status.interface.d.ts +6 -0
  264. package/lib/components/matcher-statuses/lookups/matcher-statuses.lookup.d.ts +2 -0
  265. package/lib/components/matcher-statuses/matcher-statuses.component.d.ts +23 -0
  266. package/lib/components/matcher-statuses/pipes/is-status-included.pipe.d.ts +8 -0
  267. package/lib/components/profile-card/profile-card.component.d.ts +11 -0
  268. package/lib/components/profile-card/profile-card.module.d.ts +9 -0
  269. package/lib/components/spider-chart/interfaces/chart-data-circle.interface.d.ts +10 -0
  270. package/lib/components/spider-chart/interfaces/chart-data-defs-f.interface.d.ts +11 -0
  271. package/lib/components/spider-chart/interfaces/chart-data-defs-lg.interface.d.ts +11 -0
  272. package/lib/components/spider-chart/interfaces/chart-data-defs-rg.interface.d.ts +10 -0
  273. package/lib/components/spider-chart/interfaces/config.interface.d.ts +19 -0
  274. package/lib/components/spider-chart/interfaces/dataset.interface.d.ts +7 -0
  275. package/lib/components/spider-chart/interfaces/polygon-color.interface.d.ts +4 -0
  276. package/lib/components/spider-chart/interfaces/spider-chart-attribute.interface.d.ts +6 -0
  277. package/lib/components/spider-chart/lookup/default-spider-config.d.ts +2 -0
  278. package/lib/components/spider-chart/lookup/default-spider-config.lookup.d.ts +2 -0
  279. package/lib/components/spider-chart/lookup/demo-polygon-colors.lookup.d.ts +2 -0
  280. package/lib/components/spider-chart/lookup/svg-config.lookup.d.ts +8 -0
  281. package/lib/components/spider-chart/spider-chart.component.d.ts +52 -0
  282. package/lib/enums/direction.enum.d.ts +4 -0
  283. package/lib/enums/form-field-type.d.ts +28 -0
  284. package/lib/enums/local-storage-keys.enum.d.ts +3 -0
  285. package/lib/enums/status-types.d.ts +6 -0
  286. package/lib/model/select-option-template.d.ts +5 -0
  287. package/lib/operations/operations.d.ts +19 -0
  288. package/lib/pipes/array-sort/array.sort.pipe.d.ts +7 -0
  289. package/lib/pipes/count-non-empty-fields/count-non-empty-fields.pipe.d.ts +7 -0
  290. package/lib/pipes/date-localization/date-localization.pipe.d.ts +8 -0
  291. package/lib/pipes/fallback-translate/fallback-translate.pipe.d.ts +11 -0
  292. package/lib/pipes/get-display-value/get-display-value.pipe.d.ts +13 -0
  293. package/lib/pipes/get-multi-select-display-text/get-multi-select-display-text.pipe.d.ts +8 -0
  294. package/lib/pipes/initials/initials.pipe.d.ts +7 -0
  295. package/lib/pipes/round/round.pipe.d.ts +7 -0
  296. package/lib/pipes/update-llm-preference/update-llm-preference.pipe.d.ts +8 -0
  297. package/lib/services/abstract-cache.service.d.ts +9 -0
  298. package/lib/shared/shared/alert-popup/alert-popup.component.d.ts +14 -0
  299. package/lib/shared/shared/message-modal/message-modal.component.d.ts +29 -0
  300. package/lib/shared/shared/status-icon/status-icon.component.d.ts +7 -0
  301. package/lib/shared/shared.module.d.ts +13 -0
  302. package/naniteninja-dashboard-components-lib-1.0.0.tgz +0 -0
  303. package/package.json +69 -0
  304. package/public-api.d.ts +121 -0
  305. package/src/assets/auto-delegation-modal/cross.svg +17 -0
  306. package/src/assets/auto-delegation-modal/menu.svg +3 -0
  307. package/src/assets/auto-delegation-modal/timer-center-dot.svg +25 -0
  308. package/src/assets/auto-delegation-modal/user-profile.svg +9 -0
  309. package/src/assets/circle-progress/circle-progress-1.svg +159 -0
  310. package/src/assets/circle-progress/circle-progress-2.svg +155 -0
  311. package/src/assets/circle-progress/circle-progress-3.svg +25 -0
  312. package/src/assets/circle-progress/circle-progress.svg +159 -0
  313. package/src/assets/client-match-overview/background-eclipse.svg +13 -0
  314. package/src/assets/fonts/calistoga/Calistoga-Regular.ttf +0 -0
  315. package/src/assets/fonts/gilroy/Gilroy-Black.ttf +0 -0
  316. package/src/assets/fonts/gilroy/Gilroy-BlackItalic.ttf +0 -0
  317. package/src/assets/fonts/gilroy/Gilroy-Bold.ttf +0 -0
  318. package/src/assets/fonts/gilroy/Gilroy-BoldItalic.ttf +0 -0
  319. package/src/assets/fonts/gilroy/Gilroy-ExtraBold.ttf +0 -0
  320. package/src/assets/fonts/gilroy/Gilroy-ExtraBoldItalic.ttf +0 -0
  321. package/src/assets/fonts/gilroy/Gilroy-Heavy.ttf +0 -0
  322. package/src/assets/fonts/gilroy/Gilroy-HeavyItalic.ttf +0 -0
  323. package/src/assets/fonts/gilroy/Gilroy-Light.ttf +0 -0
  324. package/src/assets/fonts/gilroy/Gilroy-LightItalic.ttf +0 -0
  325. package/src/assets/fonts/gilroy/Gilroy-Medium.ttf +0 -0
  326. package/src/assets/fonts/gilroy/Gilroy-MediumItalic.ttf +0 -0
  327. package/src/assets/fonts/gilroy/Gilroy-Regular.ttf +0 -0
  328. package/src/assets/fonts/gilroy/Gilroy-RegularItalic.ttf +0 -0
  329. package/src/assets/fonts/gilroy/Gilroy-SemiBold.ttf +0 -0
  330. package/src/assets/fonts/gilroy/Gilroy-SemiBoldItalic.ttf +0 -0
  331. package/src/assets/fonts/gilroy/Gilroy-Thin.ttf +0 -0
  332. package/src/assets/fonts/gilroy/Gilroy-ThinItalic.ttf +0 -0
  333. package/src/assets/fonts/gilroy/Gilroy-UltraLight.ttf +0 -0
  334. package/src/assets/fonts/gilroy/Gilroy-UltraLightItalic.ttf +0 -0
  335. package/src/assets/grid/icons/filter-button.svg +47 -0
  336. package/src/assets/grid/images/chips-background-shadow.svg +34 -0
  337. package/src/assets/icons/back-v2.svg +14 -0
  338. package/src/assets/icons/checkbox/checkbox-off.svg +72 -0
  339. package/src/assets/icons/checkbox/checkbox-on.svg +113 -0
  340. package/src/assets/icons/checkmark-button.svg +72 -0
  341. package/src/assets/icons/checkmark.svg +7 -0
  342. package/src/assets/icons/close-icon.svg +3 -0
  343. package/src/assets/icons/compose-matcher/notes.svg +4 -0
  344. package/src/assets/icons/compose-matcher/profile.svg +4 -0
  345. package/src/assets/icons/compose-matcher/suggest.svg +3 -0
  346. package/src/assets/icons/compose-matcher/visual.svg +3 -0
  347. package/src/assets/icons/default-profile.svg +23 -0
  348. package/src/assets/icons/defualt.svg +5 -0
  349. package/src/assets/icons/first-page.svg +7 -0
  350. package/src/assets/icons/incrementer/minus.svg +3 -0
  351. package/src/assets/icons/incrementer/plus.svg +3 -0
  352. package/src/assets/icons/info.svg +5 -0
  353. package/src/assets/icons/last-page.svg +7 -0
  354. package/src/assets/icons/minus.svg +3 -0
  355. package/src/assets/icons/next-page.svg +6 -0
  356. package/src/assets/icons/plus.svg +3 -0
  357. package/src/assets/icons/popup-defualt.svg +34 -0
  358. package/src/assets/icons/prev-page.svg +6 -0
  359. package/src/assets/icons/send-icon.svg +4 -0
  360. package/src/assets/icons/shake.svg +74 -0
  361. package/src/assets/icons/thumbs-up.svg +28 -0
  362. package/src/assets/nsfw/blazeface.bundle.js +2 -0
  363. package/src/assets/nsfw/model/group1-shard1of1 +0 -0
  364. package/src/assets/nsfw/model/model.json +4085 -0
  365. package/src/assets/nsfw/nsfwjs.bundle.js +2 -0
  366. package/src/assets/nsfw/tf.bundle.js +2 -0
  367. package/src/assets/scheduler/accept.svg +3 -0
  368. package/src/assets/scheduler/accept_active.svg +3 -0
  369. package/src/assets/scheduler/arrow.svg +13 -0
  370. package/src/assets/scheduler/cancel.svg +3 -0
  371. package/src/assets/scheduler/cancel_active.svg +3 -0
  372. package/src/assets/scheduler/heart.svg +18 -0
  373. package/src/assets/trait-visual/force-directed-graph.png +0 -0
  374. package/src/lib/shared-styles/common/_colors.scss +30 -0
  375. package/src/lib/shared-styles/common/animations.scss +48 -0
  376. package/src/lib/shared-styles/common/base-input-field.scss +132 -0
  377. package/src/lib/shared-styles/common/buttons.scss +152 -0
  378. package/src/lib/shared-styles/common/cards.scss +163 -0
  379. package/src/lib/shared-styles/common/client-dash.scss +5 -0
  380. package/src/lib/shared-styles/common/date-picker.scss +179 -0
  381. package/src/lib/shared-styles/common/draggable-scroll-and-marquee.scss +34 -0
  382. package/src/lib/shared-styles/common/feedback.scss +157 -0
  383. package/src/lib/shared-styles/common/fonts.scss +3 -0
  384. package/src/lib/shared-styles/common/information-card.scss +56 -0
  385. package/src/lib/shared-styles/common/input.scss +110 -0
  386. package/src/lib/shared-styles/common/lib-styles-utils.scss +157 -0
  387. package/src/lib/shared-styles/common/lists.scss +91 -0
  388. package/src/lib/shared-styles/common/login.scss +32 -0
  389. package/src/lib/shared-styles/common/maps.scss +10 -0
  390. package/src/lib/shared-styles/common/matcher-dash.scss +49 -0
  391. package/src/lib/shared-styles/common/modal_styles.scss +32 -0
  392. package/src/lib/shared-styles/common/notifications-list.scss +9 -0
  393. package/src/lib/shared-styles/common/overrides.scss +6 -0
  394. package/src/lib/shared-styles/common/pulse.scss +26 -0
  395. package/src/lib/shared-styles/common/swiper.scss +5 -0
  396. package/src/lib/shared-styles/common/tab-menu.scss +74 -0
  397. package/src/lib/shared-styles/common/theme.scss +55 -0
  398. package/src/lib/shared-styles/common/typography.scss +121 -0
  399. package/src/lib/shared-styles/common/user-menu.scss +129 -0
  400. package/src/lib/shared-styles/fonts/calistoga.font.scss +6 -0
  401. package/src/lib/shared-styles/fonts/gilroy.font.scss +160 -0
  402. package/src/lib/shared-styles/images/compress.png +0 -0
  403. package/src/lib/shared-styles/images/expand.png +0 -0
  404. package/src/lib/shared-styles/styles.scss +25 -0
@@ -0,0 +1,235 @@
1
+ import { ChangeDetectionStrategy, Component, inject, Input, ViewChild } from '@angular/core';
2
+ import * as d3 from 'd3';
3
+ import { SharedModule } from '../../shared/shared.module';
4
+ import { InitialsPipe } from '../../pipes/initials/initials.pipe';
5
+ import { AlertStatusFields } from '../lib-client-dashboard/enums/alert-status-fields.enum';
6
+ import { circleData, defsF, defsLG, defsRG } from './lookup/svg-config.lookup';
7
+ import * as i0 from "@angular/core";
8
+ import * as i1 from "../../shared/shared/alert-popup/alert-popup.component";
9
+ export class SpiderChartComponent {
10
+ constructor(cdr) {
11
+ this.cdr = cdr;
12
+ this.datasets = [];
13
+ this.polygon_colors = [];
14
+ this.showChartInfo = true;
15
+ this.alertStatusFields = AlertStatusFields;
16
+ this.titleAlertPopup = '';
17
+ this.descriptionAlertPopup = '';
18
+ this.isAlertPopupClosing = false;
19
+ this.timeStateAlertPopup = 0;
20
+ this.defsRG = [];
21
+ this.defsF = [];
22
+ this.defsLG = [];
23
+ this.circleData = [];
24
+ this.initialsPipe = inject(InitialsPipe);
25
+ }
26
+ ngOnChanges(changes) {
27
+ if ((changes['datasets'] || changes['config']) && this.svg) {
28
+ if (this.datasets.length && this.config) {
29
+ this.createRadarChart();
30
+ }
31
+ else if (changes['config']?.currentValue?.['fullScreen'] !== changes['config']?.previousValue?.['fullScreen']) {
32
+ this.createRadarChart();
33
+ }
34
+ }
35
+ }
36
+ ngAfterViewInit() {
37
+ this.defsRG = defsRG;
38
+ this.defsF = defsF;
39
+ this.defsLG = defsLG;
40
+ this.circleData = circleData;
41
+ this.initializeChart();
42
+ }
43
+ ngOnDestroy() {
44
+ if (this.svg) {
45
+ this.svg.remove();
46
+ this.svg = null;
47
+ }
48
+ }
49
+ onClosedAlert(data) {
50
+ console.log(data);
51
+ }
52
+ initializeChart() {
53
+ this.svg = this.createSvgObject();
54
+ const defsGroup = this.svg.append('g');
55
+ this.defsLG.forEach((defData) => {
56
+ this.createDefsAndLinearGradient(defsGroup, defData);
57
+ });
58
+ this.defsF.forEach((defData) => {
59
+ this.createDefsAndFilter(defsGroup, defData);
60
+ });
61
+ this.defsRG.forEach((defData) => {
62
+ this.createDefsAndRadialGradient(defsGroup, defData);
63
+ });
64
+ const circleGroup = this.svg.append('g');
65
+ this.createCircle(circleGroup, this.circleData);
66
+ if (!this.config)
67
+ return;
68
+ this.createRadarChart();
69
+ }
70
+ createSvgObject() {
71
+ return d3.select(this.d3Chart?.nativeElement).append('svg').attr('class', 'svg').attr('height', 300).attr('width', 300);
72
+ }
73
+ createLine(group, data, MaxValue, angleSlice, rScale) {
74
+ group.selectAll('line').remove();
75
+ return group
76
+ .selectAll('line')
77
+ .data(data)
78
+ .enter()
79
+ .append('g')
80
+ .append('line')
81
+ .attr('class', 'line')
82
+ .attr('class', 'line-group')
83
+ .attr('x1', 0)
84
+ .attr('y1', 0)
85
+ .attr('x2', (_d, i) => rScale(MaxValue * 1.4) * Math.cos(angleSlice * i + 0.01 - Math.PI / 2))
86
+ .attr('y2', (_d, i) => rScale(MaxValue * 1.4) * Math.sin(angleSlice * i + 0.01 - Math.PI / 2))
87
+ .attr('stroke', 'url(#needleRadiant)')
88
+ .attr('transform', 'translate(150,150)');
89
+ }
90
+ createCircle(group, data) {
91
+ data?.forEach((datum) => {
92
+ const g = group.append('circle');
93
+ Object.keys(datum).forEach((key) => {
94
+ g.attr(key, datum[key]);
95
+ });
96
+ });
97
+ return group;
98
+ }
99
+ createText(group, data, rScale, MaxValue, angleSlice) {
100
+ const toolTip = d3.select('#tooltip');
101
+ group.selectAll('text').remove();
102
+ const isFullScreenActive = this.config.fullScreen;
103
+ // TODO left based on position of modal
104
+ const left = isFullScreenActive ? 0 : 0;
105
+ const top = isFullScreenActive ? -80 : -220;
106
+ return group
107
+ .selectAll('text')
108
+ .data(data)
109
+ .enter()
110
+ .append('text')
111
+ .text((d) => this.initialsPipe.transform(d.text))
112
+ .attr('x', (_d, i) => {
113
+ const x2 = rScale(MaxValue * 1.2) * Math.cos(angleSlice * i + 0.1 - Math.PI / 2);
114
+ return x2;
115
+ })
116
+ .attr('y', (_d, i) => {
117
+ const y2 = rScale(MaxValue * 1.2) * Math.sin(angleSlice * i + 0.1 - Math.PI / 2);
118
+ return y2;
119
+ })
120
+ .attr('dy', '0.35em')
121
+ .attr('transform', 'translate(150,150)')
122
+ .style('fill', '#FE3C72')
123
+ .style('text-shadow', '1px 2px 1px #000')
124
+ .attr('class', 'line-label')
125
+ .on('pointerdown', (event, d) => {
126
+ const { titleAlertPopup, descriptionAlertPopup } = d;
127
+ this.titleAlertPopup = titleAlertPopup;
128
+ this.descriptionAlertPopup = descriptionAlertPopup;
129
+ this.isAlertPopupClosing = false;
130
+ this.timeStateAlertPopup = new Date().getTime();
131
+ this.numberAlertPopup = Math.floor(Math.random() * 10);
132
+ this.cdr.detectChanges();
133
+ toolTip
134
+ .style('display', 'block')
135
+ .style('left', event.pageX + left + 'px')
136
+ .style('top', event.pageY + top < 0 ? 0 : event.pageY + top + 'px');
137
+ })
138
+ .on('pointerup', (event, d) => { });
139
+ }
140
+ createPolygons(group, datasets, rScale, angleSlice) {
141
+ group.selectAll('polygon').remove();
142
+ group.selectAll('.radarCircle').remove();
143
+ const polygonPoints = (data) => {
144
+ const points = data?.keys?.map((key, i) => {
145
+ const r = rScale(data?.values[key] ?? 1 * 1);
146
+ const x = r * Math.cos(angleSlice * i + 0.01 - Math.PI / 2);
147
+ const y = r * Math.sin(angleSlice * i + 0.01 - Math.PI / 2);
148
+ return `${x},${y}`;
149
+ });
150
+ return points.join(' ');
151
+ };
152
+ group
153
+ .selectAll('polygon')
154
+ .data(datasets)
155
+ .enter()
156
+ .append('polygon')
157
+ .attr('points', (d) => polygonPoints(d ?? {}))
158
+ .attr('stroke', (_, i) => _.polygon_color?.value)
159
+ .attr('transform', 'translate(150,150)')
160
+ .attr('fill', (_, i) => `url(${this.polygon_colors?.[i]?.label})`);
161
+ datasets.forEach((data, j) => {
162
+ const allValuesAreZero = data.keys.every((key) => data.values[key] === 0);
163
+ if (!allValuesAreZero) {
164
+ group
165
+ .append('g')
166
+ .selectAll('circle')
167
+ .data(data.keys)
168
+ .enter()
169
+ .append('circle')
170
+ .attr('class', 'radarCircle')
171
+ .attr('r', 3)
172
+ .attr('cx', (key, i) => rScale(data.values[key] ?? 0) * Math.cos(angleSlice * i - Math.PI / 2))
173
+ .attr('cy', (key, i) => rScale(data.values[key] ?? 0) * Math.sin(angleSlice * i - Math.PI / 2))
174
+ .style('fill', 'white')
175
+ .style('stroke', () => this.polygon_colors?.[j]?.value) // Using stroke colors from the strokeColors array
176
+ .attr('transform', 'translate(150,150)')
177
+ .attr('filter', 'blur(1px)')
178
+ .style('stroke-width', 2)
179
+ .style('fill-opacity', 0.8);
180
+ }
181
+ });
182
+ }
183
+ createDefsAndLinearGradient(group, data) {
184
+ const defs = group.append('defs').append('linearGradient').attr('id', data.id).attr('x1', data.x1).attr('y1', data.y1).attr('x2', data.x2).attr('y2', data.y2);
185
+ data.stopTags.forEach((elem) => {
186
+ defs.append('stop').attr('offset', elem.offset).attr('style', elem.style);
187
+ });
188
+ }
189
+ createDefsAndFilter(group, data) {
190
+ const defs = group.append('defs').append('filter').attr('id', data.id).attr('x', data.x).attr('y', data.y).attr('height', data.height).attr('width', data.width);
191
+ data.feGaussianTags.forEach((elem) => {
192
+ defs.append('feGaussianBlur').attr('in', elem.in).attr('stdDeviation', elem.stdDeviation);
193
+ });
194
+ }
195
+ createDefsAndRadialGradient(group, data) {
196
+ const defs = group.append('defs').append('radialGradient').attr('id', data.id).attr('cx', data.cy).attr('cy', data.cx).attr('r', data.r);
197
+ data.stopTags.forEach((elem) => {
198
+ defs.append('stop').attr('offset', elem.offset).attr('style', elem.style);
199
+ });
200
+ }
201
+ createRadarChart() {
202
+ const { maxValue, datasets, attributes } = this.config;
203
+ const allAxis = [...new Set(attributes)].map((i) => i);
204
+ const total = allAxis.length;
205
+ const angleSlice = (Math.PI * 2) / total;
206
+ let MaxValue = datasets.length > 0
207
+ ? Math.max(...datasets.reduce((a, i) => {
208
+ return [...a, ...Object.values(i.values)];
209
+ }, []))
210
+ : maxValue;
211
+ MaxValue = MaxValue > 0 ? MaxValue : 25;
212
+ const rScale = d3.scaleLinear().range([0, 100]).domain([0, MaxValue]);
213
+ this.createLine(this.svg, allAxis, MaxValue, angleSlice, rScale);
214
+ this.createText(this.svg, allAxis, rScale, MaxValue, angleSlice);
215
+ this.createPolygons(this.svg, datasets, rScale, angleSlice);
216
+ }
217
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SpiderChartComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
218
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: SpiderChartComponent, isStandalone: true, selector: "lib-spider-chart", inputs: { datasets: "datasets", config: "config", polygon_colors: "polygon_colors", showChartInfo: "showChartInfo" }, viewQueries: [{ propertyName: "d3Chart", first: true, predicate: ["D3Chart"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div id=\"tooltip\">\r\n <lib-alert-popup [title]=\"titleAlertPopup\" [description]=\"descriptionAlertPopup\" [timeState]=\"timeStateAlertPopup\" [number]=\"numberAlertPopup\"></lib-alert-popup>\r\n</div>\r\n\r\n<div class=\"container\">\r\n <div class=\"d3-container\">\r\n <div class=\"d3-chart\" #D3Chart></div>\r\n @if (showChartInfo) {\r\n <div class=\"chartInfo\">\r\n @if (datasets.length > 0) {\r\n <div class=\"datachart\">\r\n @for (dataset of datasets; let j = $index; track dataset) {\r\n <div class=\"legend-item\">\r\n <div [style.border]=\"'5px solid ' + polygon_colors?.[j]?.value\" [style.boxShadow]=\"'0px 0px 12px ' + polygon_colors?.[j]?.value\" class=\"legend-color\"></div>\r\n {{ dataset.title }}\r\n </div>\r\n }\r\n </div>\r\n }\r\n </div>\r\n }\r\n </div>\r\n</div>\r\n", styles: [".align-chart{display:flex;justify-content:center;align-items:center}.d3-container{width:100%;position:relative;min-height:300px;display:flex;align-items:center;transition:all .5s ease}.d3-chart{width:100%;height:clamp(300px,30vh,400px);display:flex;justify-content:center;align-items:center;transition:all .5s ease}.chartInfo{margin-top:20px}.datachart{display:flex;flex-wrap:wrap;gap:10px}.legend-item{display:flex;align-items:center;gap:8px;font-size:14px;padding:4px}.legend-color{width:15px;height:15px;border-radius:50%;background-color:#fff}#tooltip{position:absolute;display:none;z-index:1000}\n"], dependencies: [{ kind: "ngmodule", type: SharedModule }, { kind: "component", type: i1.AlertPopupComponent, selector: "lib-alert-popup", inputs: ["title", "description", "timeState", "number"], outputs: ["closed"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
219
+ }
220
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SpiderChartComponent, decorators: [{
221
+ type: Component,
222
+ args: [{ selector: 'lib-spider-chart', standalone: true, imports: [SharedModule], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div id=\"tooltip\">\r\n <lib-alert-popup [title]=\"titleAlertPopup\" [description]=\"descriptionAlertPopup\" [timeState]=\"timeStateAlertPopup\" [number]=\"numberAlertPopup\"></lib-alert-popup>\r\n</div>\r\n\r\n<div class=\"container\">\r\n <div class=\"d3-container\">\r\n <div class=\"d3-chart\" #D3Chart></div>\r\n @if (showChartInfo) {\r\n <div class=\"chartInfo\">\r\n @if (datasets.length > 0) {\r\n <div class=\"datachart\">\r\n @for (dataset of datasets; let j = $index; track dataset) {\r\n <div class=\"legend-item\">\r\n <div [style.border]=\"'5px solid ' + polygon_colors?.[j]?.value\" [style.boxShadow]=\"'0px 0px 12px ' + polygon_colors?.[j]?.value\" class=\"legend-color\"></div>\r\n {{ dataset.title }}\r\n </div>\r\n }\r\n </div>\r\n }\r\n </div>\r\n }\r\n </div>\r\n</div>\r\n", styles: [".align-chart{display:flex;justify-content:center;align-items:center}.d3-container{width:100%;position:relative;min-height:300px;display:flex;align-items:center;transition:all .5s ease}.d3-chart{width:100%;height:clamp(300px,30vh,400px);display:flex;justify-content:center;align-items:center;transition:all .5s ease}.chartInfo{margin-top:20px}.datachart{display:flex;flex-wrap:wrap;gap:10px}.legend-item{display:flex;align-items:center;gap:8px;font-size:14px;padding:4px}.legend-color{width:15px;height:15px;border-radius:50%;background-color:#fff}#tooltip{position:absolute;display:none;z-index:1000}\n"] }]
223
+ }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }], propDecorators: { d3Chart: [{
224
+ type: ViewChild,
225
+ args: ['D3Chart']
226
+ }], datasets: [{
227
+ type: Input
228
+ }], config: [{
229
+ type: Input
230
+ }], polygon_colors: [{
231
+ type: Input
232
+ }], showChartInfo: [{
233
+ type: Input
234
+ }] } });
235
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3BpZGVyLWNoYXJ0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rhc2hib2FyZC1jb21wb25lbnRzLWxpYi9zcmMvbGliL2NvbXBvbmVudHMvc3BpZGVyLWNoYXJ0L3NwaWRlci1jaGFydC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kYXNoYm9hcmQtY29tcG9uZW50cy1saWIvc3JjL2xpYi9jb21wb25lbnRzL3NwaWRlci1jaGFydC9zcGlkZXItY2hhcnQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFpQix1QkFBdUIsRUFBcUIsU0FBUyxFQUFjLE1BQU0sRUFBRSxLQUFLLEVBQXVDLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNoTCxPQUFPLEtBQUssRUFBRSxNQUFNLElBQUksQ0FBQztBQUN6QixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDMUQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ2xFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHdEQUF3RCxDQUFDO0FBUzNGLE9BQU8sRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7O0FBVS9FLE1BQU0sT0FBTyxvQkFBb0I7SUFxQi9CLFlBQW9CLEdBQXNCO1FBQXRCLFFBQUcsR0FBSCxHQUFHLENBQW1CO1FBbkJqQyxhQUFRLEdBQWUsRUFBRSxDQUFDO1FBRTFCLG1CQUFjLEdBQW9CLEVBQUUsQ0FBQztRQUNyQyxrQkFBYSxHQUFZLElBQUksQ0FBQztRQUVoQyxzQkFBaUIsR0FBRyxpQkFBaUIsQ0FBQztRQUN0QyxvQkFBZSxHQUFHLEVBQUUsQ0FBQztRQUNyQiwwQkFBcUIsR0FBRyxFQUFFLENBQUM7UUFDM0Isd0JBQW1C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QUFDLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxRQUFRLENBQUMsQ0FBQyxDQUFDO1FBRXRFLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBRSxNQUFNLENBQUMsQ0FBQztRQUNqRSxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsVUFBVSxDQUFDLENBQUM7UUFDakUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsVUFBVSxDQUFDLENBQUM7SUFDOUQsQ0FBQzsrR0E1UFUsb0JBQW9CO21HQUFwQixvQkFBb0IsMlRDdkJqQyxpNkJBdUJBLG1wQkRIWSxZQUFZOzs0RkFHWCxvQkFBb0I7a0JBUmhDLFNBQVM7K0JBQ0Usa0JBQWtCLGNBR2hCLElBQUksV0FDUCxDQUFDLFlBQVksQ0FBQyxtQkFDTix1QkFBdUIsQ0FBQyxNQUFNO3NGQUd6QixPQUFPO3NCQUE1QixTQUFTO3VCQUFDLFNBQVM7Z0JBQ1gsUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csY0FBYztzQkFBdEIsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIEVsZW1lbnRSZWYsIGluamVjdCwgSW5wdXQsIE9uQ2hhbmdlcywgT25EZXN0cm95LCBTaW1wbGVDaGFuZ2VzLCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0ICogYXMgZDMgZnJvbSAnZDMnO1xyXG5pbXBvcnQgeyBTaGFyZWRNb2R1bGUgfSBmcm9tICcuLi8uLi9zaGFyZWQvc2hhcmVkLm1vZHVsZSc7XHJcbmltcG9ydCB7IEluaXRpYWxzUGlwZSB9IGZyb20gJy4uLy4uL3BpcGVzL2luaXRpYWxzL2luaXRpYWxzLnBpcGUnO1xyXG5pbXBvcnQgeyBBbGVydFN0YXR1c0ZpZWxkcyB9IGZyb20gJy4uL2xpYi1jbGllbnQtZGFzaGJvYXJkL2VudW1zL2FsZXJ0LXN0YXR1cy1maWVsZHMuZW51bSc7XHJcbmltcG9ydCB7IElDaXJjbGVEYXRhIH0gZnJvbSAnLi9pbnRlcmZhY2VzL2NoYXJ0LWRhdGEtY2lyY2xlLmludGVyZmFjZSc7XHJcbmltcG9ydCB7IElEZWZzRiB9IGZyb20gJy4vaW50ZXJmYWNlcy9jaGFydC1kYXRhLWRlZnMtZi5pbnRlcmZhY2UnO1xyXG5pbXBvcnQgeyBJRGVmc0xHIH0gZnJvbSAnLi9pbnRlcmZhY2VzL2NoYXJ0LWRhdGEtZGVmcy1sZy5pbnRlcmZhY2UnO1xyXG5pbXBvcnQgeyBJRGVmc1JHIH0gZnJvbSAnLi9pbnRlcmZhY2VzL2NoYXJ0LWRhdGEtZGVmcy1yZy5pbnRlcmZhY2UnO1xyXG5pbXBvcnQgeyBJU3BpZGVyQ2hhcnRDb25maWcgfSBmcm9tICcuL2ludGVyZmFjZXMvY29uZmlnLmludGVyZmFjZSc7XHJcbmltcG9ydCB7IElEYXRhc2V0IH0gZnJvbSAnLi9pbnRlcmZhY2VzL2RhdGFzZXQuaW50ZXJmYWNlJztcclxuaW1wb3J0IHsgSVBvbHlnb25Db2xvciB9IGZyb20gJy4vaW50ZXJmYWNlcy9wb2x5Z29uLWNvbG9yLmludGVyZmFjZSc7XHJcbmltcG9ydCB7IElTcGlkZXJDaGFydEF0dHJpYnV0ZSB9IGZyb20gJy4vaW50ZXJmYWNlcy9zcGlkZXItY2hhcnQtYXR0cmlidXRlLmludGVyZmFjZSc7XHJcbmltcG9ydCB7IGNpcmNsZURhdGEsIGRlZnNGLCBkZWZzTEcsIGRlZnNSRyB9IGZyb20gJy4vbG9va3VwL3N2Zy1jb25maWcubG9va3VwJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbGliLXNwaWRlci1jaGFydCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3NwaWRlci1jaGFydC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmw6ICcuL3NwaWRlci1jaGFydC5jb21wb25lbnQuc2NzcycsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBpbXBvcnRzOiBbU2hhcmVkTW9kdWxlXSxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxufSlcclxuZXhwb3J0IGNsYXNzIFNwaWRlckNoYXJ0Q29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzLCBPbkRlc3Ryb3ksIEFmdGVyVmlld0luaXQge1xyXG4gIEBWaWV3Q2hpbGQoJ0QzQ2hhcnQnKSBkM0NoYXJ0OiBFbGVtZW50UmVmO1xyXG4gIEBJbnB1dCgpIGRhdGFzZXRzOiBJRGF0YXNldFtdID0gW107XHJcbiAgQElucHV0KCkgY29uZmlnOiBJU3BpZGVyQ2hhcnRDb25maWc7XHJcbiAgQElucHV0KCkgcG9seWdvbl9jb2xvcnM6IElQb2x5Z29uQ29sb3JbXSA9IFtdO1xyXG4gIEBJbnB1dCgpIHNob3dDaGFydEluZm86IGJvb2xlYW4gPSB0cnVlO1xyXG5cclxuICBwdWJsaWMgYWxlcnRTdGF0dXNGaWVsZHMgPSBBbGVydFN0YXR1c0ZpZWxkcztcclxuICBwdWJsaWMgdGl0bGVBbGVydFBvcHVwID0gJyc7XHJcbiAgcHVibGljIGRlc2NyaXB0aW9uQWxlcnRQb3B1cCA9ICcnO1xyXG4gIHB1YmxpYyBpc0FsZXJ0UG9wdXBDbG9zaW5nID0gZmFsc2U7XHJcbiAgcHVibGljIHRpbWVTdGF0ZUFsZXJ0UG9wdXAgPSAwO1xyXG4gIHB1YmxpYyBudW1iZXJBbGVydFBvcHVwOiBudW1iZXI7XHJcblxyXG4gIHB1YmxpYyBzdmc6IGQzLlNlbGVjdGlvbjxTVkdTVkdFbGVtZW50LCB1bmtub3duLCBIVE1MRWxlbWVudCwgdW5rbm93bj47XHJcbiAgcHVibGljIGRlZnNSRzogSURlZnNSR1tdID0gW107XHJcbiAgcHVibGljIGRlZnNGOiBJRGVmc0ZbXSA9IFtdO1xyXG4gIHB1YmxpYyBkZWZzTEc6IElEZWZzTEdbXSA9IFtdO1xyXG4gIHB1YmxpYyBjaXJjbGVEYXRhOiBJQ2lyY2xlRGF0YVtdID0gW107XHJcbiAgcHVibGljIHJlYWRvbmx5IGluaXRpYWxzUGlwZTogSW5pdGlhbHNQaXBlID0gaW5qZWN0KEluaXRpYWxzUGlwZSk7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZikge31cclxuXHJcbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xyXG4gICAgaWYgKChjaGFuZ2VzWydkYXRhc2V0cyddIHx8IGNoYW5nZXNbJ2NvbmZpZyddKSAmJiB0aGlzLnN2Zykge1xyXG4gICAgICBpZiAodGhpcy5kYXRhc2V0cy5sZW5ndGggJiYgdGhpcy5jb25maWcpIHtcclxuICAgICAgICB0aGlzLmNyZWF0ZVJhZGFyQ2hhcnQoKTtcclxuICAgICAgfSBlbHNlIGlmIChjaGFuZ2VzWydjb25maWcnXT8uY3VycmVudFZhbHVlPy5bJ2Z1bGxTY3JlZW4nXSAhPT0gY2hhbmdlc1snY29uZmlnJ10/LnByZXZpb3VzVmFsdWU/LlsnZnVsbFNjcmVlbiddKSB7XHJcbiAgICAgICAgdGhpcy5jcmVhdGVSYWRhckNoYXJ0KCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuZGVmc1JHID0gZGVmc1JHO1xyXG4gICAgdGhpcy5kZWZzRiA9IGRlZnNGO1xyXG4gICAgdGhpcy5kZWZzTEcgPSBkZWZzTEc7XHJcbiAgICB0aGlzLmNpcmNsZURhdGEgPSBjaXJjbGVEYXRhO1xyXG4gICAgdGhpcy5pbml0aWFsaXplQ2hhcnQoKTtcclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuc3ZnKSB7XHJcbiAgICAgIHRoaXMuc3ZnLnJlbW92ZSgpO1xyXG4gICAgICB0aGlzLnN2ZyA9IG51bGw7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgb25DbG9zZWRBbGVydChkYXRhOiB7IGV2ZW50OiBib29sZWFuOyBmaWVsZDogQWxlcnRTdGF0dXNGaWVsZHMgfSk6IHZvaWQge1xyXG4gICAgY29uc29sZS5sb2coZGF0YSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGluaXRpYWxpemVDaGFydCgpOiB2b2lkIHtcclxuICAgIHRoaXMuc3ZnID0gdGhpcy5jcmVhdGVTdmdPYmplY3QoKTtcclxuICAgIGNvbnN0IGRlZnNHcm91cCA9IHRoaXMuc3ZnLmFwcGVuZCgnZycpO1xyXG5cclxuICAgIHRoaXMuZGVmc0xHLmZvckVhY2goKGRlZkRhdGEpID0+IHtcclxuICAgICAgdGhpcy5jcmVhdGVEZWZzQW5kTGluZWFyR3JhZGllbnQoZGVmc0dyb3VwLCBkZWZEYXRhKTtcclxuICAgIH0pO1xyXG5cclxuICAgIHRoaXMuZGVmc0YuZm9yRWFjaCgoZGVmRGF0YSkgPT4ge1xyXG4gICAgICB0aGlzLmNyZWF0ZURlZnNBbmRGaWx0ZXIoZGVmc0dyb3VwLCBkZWZEYXRhKTtcclxuICAgIH0pO1xyXG5cclxuICAgIHRoaXMuZGVmc1JHLmZvckVhY2goKGRlZkRhdGEpID0+IHtcclxuICAgICAgdGhpcy5jcmVhdGVEZWZzQW5kUmFkaWFsR3JhZGllbnQoZGVmc0dyb3VwLCBkZWZEYXRhKTtcclxuICAgIH0pO1xyXG5cclxuICAgIGNvbnN0IGNpcmNsZUdyb3VwID0gdGhpcy5zdmcuYXBwZW5kKCdnJyk7XHJcbiAgICB0aGlzLmNyZWF0ZUNpcmNsZShjaXJjbGVHcm91cCwgdGhpcy5jaXJjbGVEYXRhKTtcclxuICAgIGlmICghdGhpcy5jb25maWcpIHJldHVybjtcclxuICAgIHRoaXMuY3JlYXRlUmFkYXJDaGFydCgpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBjcmVhdGVTdmdPYmplY3QoKTogZDMuU2VsZWN0aW9uPFNWR1NWR0VsZW1lbnQsIHVua25vd24sIEhUTUxFbGVtZW50LCB1bmtub3duPiB7XHJcbiAgICByZXR1cm4gZDMuc2VsZWN0KHRoaXMuZDNDaGFydD8ubmF0aXZlRWxlbWVudCkuYXBwZW5kKCdzdmcnKS5hdHRyKCdjbGFzcycsICdzdmcnKS5hdHRyKCdoZWlnaHQnLCAzMDApLmF0dHIoJ3dpZHRoJywgMzAwKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgY3JlYXRlTGluZShcclxuICAgIGdyb3VwOiBkMy5TZWxlY3Rpb248U1ZHR0VsZW1lbnQsIHVua25vd24sIEhUTUxFbGVtZW50LCB1bmtub3duPixcclxuICAgIGRhdGE6IElTcGlkZXJDaGFydEF0dHJpYnV0ZVtdLFxyXG4gICAgTWF4VmFsdWU6IG51bWJlcixcclxuICAgIGFuZ2xlU2xpY2U6IG51bWJlcixcclxuICAgIHJTY2FsZTogZDMuU2NhbGVMaW5lYXI8bnVtYmVyLCBudW1iZXI+LFxyXG4gICk6IHZvaWQge1xyXG4gICAgZ3JvdXAuc2VsZWN0QWxsKCdsaW5lJykucmVtb3ZlKCk7XHJcbiAgICByZXR1cm4gZ3JvdXBcclxuICAgICAgLnNlbGVjdEFsbCgnbGluZScpXHJcbiAgICAgIC5kYXRhKGRhdGEpXHJcbiAgICAgIC5lbnRlcigpXHJcbiAgICAgIC5hcHBlbmQoJ2cnKVxyXG4gICAgICAuYXBwZW5kKCdsaW5lJylcclxuICAgICAgLmF0dHIoJ2NsYXNzJywgJ2xpbmUnKVxyXG4gICAgICAuYXR0cignY2xhc3MnLCAnbGluZS1ncm91cCcpXHJcbiAgICAgIC5hdHRyKCd4MScsIDApXHJcbiAgICAgIC5hdHRyKCd5MScsIDApXHJcbiAgICAgIC5hdHRyKCd4MicsIChfZCwgaSkgPT4gclNjYWxlKE1heFZhbHVlICogMS40KSAqIE1hdGguY29zKGFuZ2xlU2xpY2UgKiBpICsgMC4wMSAtIE1hdGguUEkgLyAyKSlcclxuICAgICAgLmF0dHIoJ3kyJywgKF9kLCBpKSA9PiByU2NhbGUoTWF4VmFsdWUgKiAxLjQpICogTWF0aC5zaW4oYW5nbGVTbGljZSAqIGkgKyAwLjAxIC0gTWF0aC5QSSAvIDIpKVxyXG4gICAgICAuYXR0cignc3Ryb2tlJywgJ3VybCgjbmVlZGxlUmFkaWFudCknKVxyXG4gICAgICAuYXR0cigndHJhbnNmb3JtJywgJ3RyYW5zbGF0ZSgxNTAsMTUwKScpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBjcmVhdGVDaXJjbGUoZ3JvdXA6IGQzLlNlbGVjdGlvbjxTVkdHRWxlbWVudCwgdW5rbm93biwgSFRNTEVsZW1lbnQsIHVua25vd24+LCBkYXRhOiBJQ2lyY2xlRGF0YVtdKTogdm9pZCB7XHJcbiAgICBkYXRhPy5mb3JFYWNoKChkYXR1bSkgPT4ge1xyXG4gICAgICBjb25zdCBnID0gZ3JvdXAuYXBwZW5kKCdjaXJjbGUnKTtcclxuICAgICAgT2JqZWN0LmtleXMoZGF0dW0pLmZvckVhY2goKGtleSkgPT4ge1xyXG4gICAgICAgIGcuYXR0cihrZXksIGRhdHVtW2tleV0pO1xyXG4gICAgICB9KTtcclxuICAgIH0pO1xyXG4gICAgcmV0dXJuIGdyb3VwO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBjcmVhdGVUZXh0KFxyXG4gICAgZ3JvdXA6IGQzLlNlbGVjdGlvbjxTVkdHRWxlbWVudCwgdW5rbm93biwgSFRNTEVsZW1lbnQsIHVua25vd24+LFxyXG4gICAgZGF0YTogSVNwaWRlckNoYXJ0QXR0cmlidXRlW10sXHJcbiAgICByU2NhbGU6IGQzLlNjYWxlTGluZWFyPG51bWJlciwgbnVtYmVyPixcclxuICAgIE1heFZhbHVlOiBudW1iZXIsXHJcbiAgICBhbmdsZVNsaWNlOiBudW1iZXIsXHJcbiAgKSB7XHJcbiAgICBjb25zdCB0b29sVGlwID0gZDMuc2VsZWN0KCcjdG9vbHRpcCcpO1xyXG4gICAgZ3JvdXAuc2VsZWN0QWxsKCd0ZXh0JykucmVtb3ZlKCk7XHJcblxyXG4gICAgY29uc3QgaXNGdWxsU2NyZWVuQWN0aXZlOiBib29sZWFuID0gdGhpcy5jb25maWcuZnVsbFNjcmVlbjtcclxuXHJcbiAgICAvLyBUT0RPIGxlZnQgYmFzZWQgb24gcG9zaXRpb24gb2YgbW9kYWxcclxuICAgIGNvbnN0IGxlZnQgPSBpc0Z1bGxTY3JlZW5BY3RpdmUgPyAwIDogMDtcclxuICAgIGNvbnN0IHRvcCA9IGlzRnVsbFNjcmVlbkFjdGl2ZSA/IC04MCA6IC0yMjA7XHJcbiAgICByZXR1cm4gZ3JvdXBcclxuICAgICAgLnNlbGVjdEFsbCgndGV4dCcpXHJcbiAgICAgIC5kYXRhKGRhdGEpXHJcbiAgICAgIC5lbnRlcigpXHJcbiAgICAgIC5hcHBlbmQoJ3RleHQnKVxyXG4gICAgICAudGV4dCgoZCkgPT4gdGhpcy5pbml0aWFsc1BpcGUudHJhbnNmb3JtKGQudGV4dCkpXHJcbiAgICAgIC5hdHRyKCd4JywgKF9kLCBpKSA9PiB7XHJcbiAgICAgICAgY29uc3QgeDIgPSByU2NhbGUoTWF4VmFsdWUgKiAxLjIpICogTWF0aC5jb3MoYW5nbGVTbGljZSAqIGkgKyAwLjEgLSBNYXRoLlBJIC8gMik7XHJcbiAgICAgICAgcmV0dXJuIHgyO1xyXG4gICAgICB9KVxyXG4gICAgICAuYXR0cigneScsIChfZCwgaSkgPT4ge1xyXG4gICAgICAgIGNvbnN0IHkyID0gclNjYWxlKE1heFZhbHVlICogMS4yKSAqIE1hdGguc2luKGFuZ2xlU2xpY2UgKiBpICsgMC4xIC0gTWF0aC5QSSAvIDIpO1xyXG4gICAgICAgIHJldHVybiB5MjtcclxuICAgICAgfSlcclxuICAgICAgLmF0dHIoJ2R5JywgJzAuMzVlbScpXHJcbiAgICAgIC5hdHRyKCd0cmFuc2Zvcm0nLCAndHJhbnNsYXRlKDE1MCwxNTApJylcclxuICAgICAgLnN0eWxlKCdmaWxsJywgJyNGRTNDNzInKVxyXG4gICAgICAuc3R5bGUoJ3RleHQtc2hhZG93JywgJzFweCAycHggMXB4ICMwMDAnKVxyXG4gICAgICAuYXR0cignY2xhc3MnLCAnbGluZS1sYWJlbCcpXHJcbiAgICAgIC5vbigncG9pbnRlcmRvd24nLCAoZXZlbnQsIGQ6IElTcGlkZXJDaGFydEF0dHJpYnV0ZSkgPT4ge1xyXG4gICAgICAgIGNvbnN0IHsgdGl0bGVBbGVydFBvcHVwLCBkZXNjcmlwdGlvbkFsZXJ0UG9wdXAgfSA9IGQ7XHJcbiAgICAgICAgdGhpcy50aXRsZUFsZXJ0UG9wdXAgPSB0aXRsZUFsZXJ0UG9wdXA7XHJcbiAgICAgICAgdGhpcy5kZXNjcmlwdGlvbkFsZXJ0UG9wdXAgPSBkZXNjcmlwdGlvbkFsZXJ0UG9wdXA7XHJcbiAgICAgICAgdGhpcy5pc0FsZXJ0UG9wdXBDbG9zaW5nID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy50aW1lU3RhdGVBbGVydFBvcHVwID0gbmV3IERhdGUoKS5nZXRUaW1lKCk7XHJcbiAgICAgICAgdGhpcy5udW1iZXJBbGVydFBvcHVwID0gTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpICogMTApO1xyXG4gICAgICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcclxuICAgICAgICB0b29sVGlwXHJcbiAgICAgICAgICAuc3R5bGUoJ2Rpc3BsYXknLCAnYmxvY2snKVxyXG4gICAgICAgICAgLnN0eWxlKCdsZWZ0JywgZXZlbnQucGFnZVggKyBsZWZ0ICsgJ3B4JylcclxuICAgICAgICAgIC5zdHlsZSgndG9wJywgZXZlbnQucGFnZVkgKyB0b3AgPCAwID8gMCA6IGV2ZW50LnBhZ2VZICsgdG9wICsgJ3B4Jyk7XHJcbiAgICAgIH0pXHJcbiAgICAgIC5vbigncG9pbnRlcnVwJywgKGV2ZW50LCBkOiBJU3BpZGVyQ2hhcnRBdHRyaWJ1dGUpID0+IHt9KTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgY3JlYXRlUG9seWdvbnMoZ3JvdXA6IGQzLlNlbGVjdGlvbjxTVkdHRWxlbWVudCwgdW5rbm93biwgSFRNTEVsZW1lbnQsIHVua25vd24+LCBkYXRhc2V0czogSURhdGFzZXRbXSwgclNjYWxlOiBkMy5TY2FsZUxpbmVhcjxudW1iZXIsIG51bWJlcj4sIGFuZ2xlU2xpY2U6IG51bWJlcik6IHZvaWQge1xyXG4gICAgZ3JvdXAuc2VsZWN0QWxsKCdwb2x5Z29uJykucmVtb3ZlKCk7XHJcbiAgICBncm91cC5zZWxlY3RBbGwoJy5yYWRhckNpcmNsZScpLnJlbW92ZSgpO1xyXG5cclxuICAgIGNvbnN0IHBvbHlnb25Qb2ludHMgPSAoZGF0YSkgPT4ge1xyXG4gICAgICBjb25zdCBwb2ludHMgPSBkYXRhPy5rZXlzPy5tYXAoKGtleSwgaSkgPT4ge1xyXG4gICAgICAgIGNvbnN0IHIgPSByU2NhbGUoZGF0YT8udmFsdWVzW2tleV0gPz8gMSAqIDEpO1xyXG4gICAgICAgIGNvbnN0IHggPSByICogTWF0aC5jb3MoYW5nbGVTbGljZSAqIGkgKyAwLjAxIC0gTWF0aC5QSSAvIDIpO1xyXG4gICAgICAgIGNvbnN0IHkgPSByICogTWF0aC5zaW4oYW5nbGVTbGljZSAqIGkgKyAwLjAxIC0gTWF0aC5QSSAvIDIpO1xyXG4gICAgICAgIHJldHVybiBgJHt4fSwke3l9YDtcclxuICAgICAgfSk7XHJcbiAgICAgIHJldHVybiBwb2ludHMuam9pbignICcpO1xyXG4gICAgfTtcclxuICAgIGdyb3VwXHJcbiAgICAgIC5zZWxlY3RBbGwoJ3BvbHlnb24nKVxyXG4gICAgICAuZGF0YShkYXRhc2V0cylcclxuICAgICAgLmVudGVyKClcclxuICAgICAgLmFwcGVuZCgncG9seWdvbicpXHJcbiAgICAgIC5hdHRyKCdwb2ludHMnLCAoZCkgPT4gcG9seWdvblBvaW50cyhkID8/IHt9KSlcclxuICAgICAgLmF0dHIoJ3N0cm9rZScsIChfLCBpKSA9PiBfLnBvbHlnb25fY29sb3I/LnZhbHVlKVxyXG4gICAgICAuYXR0cigndHJhbnNmb3JtJywgJ3RyYW5zbGF0ZSgxNTAsMTUwKScpXHJcblxyXG4gICAgICAuYXR0cignZmlsbCcsIChfLCBpKSA9PiBgdXJsKCR7dGhpcy5wb2x5Z29uX2NvbG9ycz8uW2ldPy5sYWJlbH0pYCk7XHJcbiAgICBkYXRhc2V0cy5mb3JFYWNoKChkYXRhLCBqKSA9PiB7XHJcbiAgICAgIGNvbnN0IGFsbFZhbHVlc0FyZVplcm8gPSBkYXRhLmtleXMuZXZlcnkoKGtleSkgPT4gZGF0YS52YWx1ZXNba2V5XSA9PT0gMCk7XHJcbiAgICAgIGlmICghYWxsVmFsdWVzQXJlWmVybykge1xyXG4gICAgICAgIGdyb3VwXHJcbiAgICAgICAgICAuYXBwZW5kKCdnJylcclxuICAgICAgICAgIC5zZWxlY3RBbGwoJ2NpcmNsZScpXHJcbiAgICAgICAgICAuZGF0YShkYXRhLmtleXMpXHJcbiAgICAgICAgICAuZW50ZXIoKVxyXG4gICAgICAgICAgLmFwcGVuZCgnY2lyY2xlJylcclxuICAgICAgICAgIC5hdHRyKCdjbGFzcycsICdyYWRhckNpcmNsZScpXHJcbiAgICAgICAgICAuYXR0cigncicsIDMpXHJcbiAgICAgICAgICAuYXR0cignY3gnLCAoa2V5LCBpKSA9PiByU2NhbGUoZGF0YS52YWx1ZXNba2V5XSA/PyAwKSAqIE1hdGguY29zKGFuZ2xlU2xpY2UgKiBpIC0gTWF0aC5QSSAvIDIpKVxyXG4gICAgICAgICAgLmF0dHIoJ2N5JywgKGtleSwgaSkgPT4gclNjYWxlKGRhdGEudmFsdWVzW2tleV0gPz8gMCkgKiBNYXRoLnNpbihhbmdsZVNsaWNlICogaSAtIE1hdGguUEkgLyAyKSlcclxuICAgICAgICAgIC5zdHlsZSgnZmlsbCcsICd3aGl0ZScpXHJcbiAgICAgICAgICAuc3R5bGUoJ3N0cm9rZScsICgpID0+IHRoaXMucG9seWdvbl9jb2xvcnM/LltqXT8udmFsdWUpIC8vIFVzaW5nIHN0cm9rZSBjb2xvcnMgZnJvbSB0aGUgc3Ryb2tlQ29sb3JzIGFycmF5XHJcbiAgICAgICAgICAuYXR0cigndHJhbnNmb3JtJywgJ3RyYW5zbGF0ZSgxNTAsMTUwKScpXHJcbiAgICAgICAgICAuYXR0cignZmlsdGVyJywgJ2JsdXIoMXB4KScpXHJcbiAgICAgICAgICAuc3R5bGUoJ3N0cm9rZS13aWR0aCcsIDIpXHJcbiAgICAgICAgICAuc3R5bGUoJ2ZpbGwtb3BhY2l0eScsIDAuOCk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBjcmVhdGVEZWZzQW5kTGluZWFyR3JhZGllbnQoZ3JvdXA6IGQzLlNlbGVjdGlvbjxTVkdHRWxlbWVudCwgdW5rbm93biwgSFRNTEVsZW1lbnQsIHVua25vd24+LCBkYXRhOiBJRGVmc0xHKTogdm9pZCB7XHJcbiAgICBjb25zdCBkZWZzID0gZ3JvdXAuYXBwZW5kKCdkZWZzJykuYXBwZW5kKCdsaW5lYXJHcmFkaWVudCcpLmF0dHIoJ2lkJywgZGF0YS5pZCkuYXR0cigneDEnLCBkYXRhLngxKS5hdHRyKCd5MScsIGRhdGEueTEpLmF0dHIoJ3gyJywgZGF0YS54MikuYXR0cigneTInLCBkYXRhLnkyKTtcclxuXHJcbiAgICBkYXRhLnN0b3BUYWdzLmZvckVhY2goKGVsZW0pID0+IHtcclxuICAgICAgZGVmcy5hcHBlbmQoJ3N0b3AnKS5hdHRyKCdvZmZzZXQnLCBlbGVtLm9mZnNldCkuYXR0cignc3R5bGUnLCBlbGVtLnN0eWxlKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBjcmVhdGVEZWZzQW5kRmlsdGVyKGdyb3VwOiBkMy5TZWxlY3Rpb248U1ZHR0VsZW1lbnQsIHVua25vd24sIEhUTUxFbGVtZW50LCB1bmtub3duPiwgZGF0YTogSURlZnNGKTogdm9pZCB7XHJcbiAgICBjb25zdCBkZWZzID0gZ3JvdXAuYXBwZW5kKCdkZWZzJykuYXBwZW5kKCdmaWx0ZXInKS5hdHRyKCdpZCcsIGRhdGEuaWQpLmF0dHIoJ3gnLCBkYXRhLngpLmF0dHIoJ3knLCBkYXRhLnkpLmF0dHIoJ2hlaWdodCcsIGRhdGEuaGVpZ2h0KS5hdHRyKCd3aWR0aCcsIGRhdGEud2lkdGgpO1xyXG5cclxuICAgIGRhdGEuZmVHYXVzc2lhblRhZ3MuZm9yRWFjaCgoZWxlbSkgPT4ge1xyXG4gICAgICBkZWZzLmFwcGVuZCgnZmVHYXVzc2lhbkJsdXInKS5hdHRyKCdpbicsIGVsZW0uaW4pLmF0dHIoJ3N0ZERldmlhdGlvbicsIGVsZW0uc3RkRGV2aWF0aW9uKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBjcmVhdGVEZWZzQW5kUmFkaWFsR3JhZGllbnQoZ3JvdXA6IGQzLlNlbGVjdGlvbjxTVkdHRWxlbWVudCwgdW5rbm93biwgSFRNTEVsZW1lbnQsIHVua25vd24+LCBkYXRhOiBJRGVmc1JHKTogdm9pZCB7XHJcbiAgICBjb25zdCBkZWZzID0gZ3JvdXAuYXBwZW5kKCdkZWZzJykuYXBwZW5kKCdyYWRpYWxHcmFkaWVudCcpLmF0dHIoJ2lkJywgZGF0YS5pZCkuYXR0cignY3gnLCBkYXRhLmN5KS5hdHRyKCdjeScsIGRhdGEuY3gpLmF0dHIoJ3InLCBkYXRhLnIpO1xyXG5cclxuICAgIGRhdGEuc3RvcFRhZ3MuZm9yRWFjaCgoZWxlbSkgPT4ge1xyXG4gICAgICBkZWZzLmFwcGVuZCgnc3RvcCcpLmF0dHIoJ29mZnNldCcsIGVsZW0ub2Zmc2V0KS5hdHRyKCdzdHlsZScsIGVsZW0uc3R5bGUpO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGNyZWF0ZVJhZGFyQ2hhcnQoKTogdm9pZCB7XHJcbiAgICBjb25zdCB7IG1heFZhbHVlLCBkYXRhc2V0cywgYXR0cmlidXRlcyB9ID0gdGhpcy5jb25maWc7XHJcbiAgICBjb25zdCBhbGxBeGlzID0gWy4uLm5ldyBTZXQoYXR0cmlidXRlcyldLm1hcCgoaSkgPT4gaSk7XHJcbiAgICBjb25zdCB0b3RhbCA9IGFsbEF4aXMubGVuZ3RoO1xyXG4gICAgY29uc3QgYW5nbGVTbGljZSA9IChNYXRoLlBJICogMikgLyB0b3RhbDtcclxuICAgIGxldCBNYXhWYWx1ZSA9XHJcbiAgICAgIGRhdGFzZXRzLmxlbmd0aCA+IDBcclxuICAgICAgICA/IE1hdGgubWF4KFxyXG4gICAgICAgICAgICAuLi5kYXRhc2V0cy5yZWR1Y2UoKGEsIGkpID0+IHtcclxuICAgICAgICAgICAgICByZXR1cm4gWy4uLmEsIC4uLk9iamVjdC52YWx1ZXMoaS52YWx1ZXMpXTtcclxuICAgICAgICAgICAgfSwgW10pLFxyXG4gICAgICAgICAgKVxyXG4gICAgICAgIDogbWF4VmFsdWU7XHJcbiAgICBNYXhWYWx1ZSA9IE1heFZhbHVlID4gMCA/IE1heFZhbHVlIDogMjU7XHJcblxyXG4gICAgY29uc3QgclNjYWxlID0gZDMuc2NhbGVMaW5lYXIoKS5yYW5nZShbMCwgMTAwXSkuZG9tYWluKFswLCBNYXhWYWx1ZV0pO1xyXG5cclxuICAgIHRoaXMuY3JlYXRlTGluZSh0aGlzLnN2ZywgYWxsQXhpcywgTWF4VmFsdWUsIGFuZ2xlU2xpY2UsIHJTY2FsZSk7XHJcbiAgICB0aGlzLmNyZWF0ZVRleHQodGhpcy5zdmcsIGFsbEF4aXMsIHJTY2FsZSwgTWF4VmFsdWUsIGFuZ2xlU2xpY2UpO1xyXG4gICAgdGhpcy5jcmVhdGVQb2x5Z29ucyh0aGlzLnN2ZywgZGF0YXNldHMsIHJTY2FsZSwgYW5nbGVTbGljZSk7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgaWQ9XCJ0b29sdGlwXCI+XHJcbiAgPGxpYi1hbGVydC1wb3B1cCBbdGl0bGVdPVwidGl0bGVBbGVydFBvcHVwXCIgW2Rlc2NyaXB0aW9uXT1cImRlc2NyaXB0aW9uQWxlcnRQb3B1cFwiIFt0aW1lU3RhdGVdPVwidGltZVN0YXRlQWxlcnRQb3B1cFwiIFtudW1iZXJdPVwibnVtYmVyQWxlcnRQb3B1cFwiPjwvbGliLWFsZXJ0LXBvcHVwPlxyXG48L2Rpdj5cclxuXHJcbjxkaXYgY2xhc3M9XCJjb250YWluZXJcIj5cclxuICA8ZGl2IGNsYXNzPVwiZDMtY29udGFpbmVyXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiZDMtY2hhcnRcIiAjRDNDaGFydD48L2Rpdj5cclxuICAgIEBpZiAoc2hvd0NoYXJ0SW5mbykge1xyXG4gICAgICA8ZGl2IGNsYXNzPVwiY2hhcnRJbmZvXCI+XHJcbiAgICAgICAgQGlmIChkYXRhc2V0cy5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZGF0YWNoYXJ0XCI+XHJcbiAgICAgICAgICAgIEBmb3IgKGRhdGFzZXQgb2YgZGF0YXNldHM7IGxldCBqID0gJGluZGV4OyB0cmFjayBkYXRhc2V0KSB7XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImxlZ2VuZC1pdGVtXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IFtzdHlsZS5ib3JkZXJdPVwiJzVweCBzb2xpZCAnICsgcG9seWdvbl9jb2xvcnM/LltqXT8udmFsdWVcIiBbc3R5bGUuYm94U2hhZG93XT1cIicwcHggMHB4IDEycHggJyArIHBvbHlnb25fY29sb3JzPy5bal0/LnZhbHVlXCIgY2xhc3M9XCJsZWdlbmQtY29sb3JcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgIHt7IGRhdGFzZXQudGl0bGUgfX1cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgfVxyXG4gICAgICA8L2Rpdj5cclxuICAgIH1cclxuICA8L2Rpdj5cclxuPC9kaXY+XHJcbiJdfQ==
@@ -0,0 +1,6 @@
1
+ export var Direction;
2
+ (function (Direction) {
3
+ Direction["horizontal"] = "horizontal";
4
+ Direction["vertical"] = "vertical";
5
+ })(Direction || (Direction = {}));
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlyZWN0aW9uLmVudW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kYXNoYm9hcmQtY29tcG9uZW50cy1saWIvc3JjL2xpYi9lbnVtcy9kaXJlY3Rpb24uZW51bS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQU4sSUFBWSxTQUdYO0FBSEQsV0FBWSxTQUFTO0lBQ25CLHNDQUF5QixDQUFBO0lBQ3pCLGtDQUFxQixDQUFBO0FBQ3ZCLENBQUMsRUFIVyxTQUFTLEtBQVQsU0FBUyxRQUdwQiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIERpcmVjdGlvbiB7XHJcbiAgaG9yaXpvbnRhbCA9ICdob3Jpem9udGFsJyxcclxuICB2ZXJ0aWNhbCA9ICd2ZXJ0aWNhbCcsXHJcbn1cclxuIl19
@@ -0,0 +1,30 @@
1
+ export var FormFieldType;
2
+ (function (FormFieldType) {
3
+ FormFieldType["date"] = "date";
4
+ FormFieldType["text"] = "text";
5
+ FormFieldType["textarea"] = "textarea";
6
+ FormFieldType["typeahead"] = "typeahead";
7
+ FormFieldType["multiselect"] = "multiselect";
8
+ FormFieldType["select"] = "select";
9
+ FormFieldType["checkbox"] = "checkbox";
10
+ FormFieldType["toggle"] = "toggle";
11
+ FormFieldType["radio"] = "radio";
12
+ FormFieldType["textlist"] = "textlist";
13
+ FormFieldType["number"] = "number";
14
+ FormFieldType["message"] = "message";
15
+ FormFieldType["time"] = "time";
16
+ FormFieldType["multifield"] = "multifield";
17
+ FormFieldType["action"] = "action";
18
+ FormFieldType["currency"] = "currency";
19
+ FormFieldType["banner"] = "banner";
20
+ FormFieldType["percentage"] = "percentage";
21
+ FormFieldType["multiselectdropdown"] = "multiselectdropdown";
22
+ FormFieldType["hyperlink"] = "hyperlink";
23
+ FormFieldType["injectable"] = "injectable";
24
+ FormFieldType["datetime"] = "datetime";
25
+ FormFieldType["rating"] = "rating";
26
+ FormFieldType["incrementer"] = "incrementer";
27
+ FormFieldType["range"] = "range";
28
+ FormFieldType["password"] = "password";
29
+ })(FormFieldType || (FormFieldType = {}));
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1maWVsZC10eXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGFzaGJvYXJkLWNvbXBvbmVudHMtbGliL3NyYy9saWIvZW51bXMvZm9ybS1maWVsZC10eXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBTixJQUFZLGFBMkJYO0FBM0JELFdBQVksYUFBYTtJQUN2Qiw4QkFBYSxDQUFBO0lBQ2IsOEJBQWEsQ0FBQTtJQUNiLHNDQUFxQixDQUFBO0lBQ3JCLHdDQUF1QixDQUFBO0lBQ3ZCLDRDQUEyQixDQUFBO0lBQzNCLGtDQUFpQixDQUFBO0lBQ2pCLHNDQUFxQixDQUFBO0lBQ3JCLGtDQUFpQixDQUFBO0lBQ2pCLGdDQUFlLENBQUE7SUFDZixzQ0FBcUIsQ0FBQTtJQUNyQixrQ0FBaUIsQ0FBQTtJQUNqQixvQ0FBbUIsQ0FBQTtJQUNuQiw4QkFBYSxDQUFBO0lBQ2IsMENBQXlCLENBQUE7SUFDekIsa0NBQWlCLENBQUE7SUFDakIsc0NBQXFCLENBQUE7SUFDckIsa0NBQWlCLENBQUE7SUFDakIsMENBQXlCLENBQUE7SUFDekIsNERBQTJDLENBQUE7SUFDM0Msd0NBQXVCLENBQUE7SUFDdkIsMENBQXlCLENBQUE7SUFDekIsc0NBQXFCLENBQUE7SUFDckIsa0NBQWlCLENBQUE7SUFDakIsNENBQTJCLENBQUE7SUFDM0IsZ0NBQWUsQ0FBQTtJQUNmLHNDQUFxQixDQUFBO0FBQ3ZCLENBQUMsRUEzQlcsYUFBYSxLQUFiLGFBQWEsUUEyQnhCIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGVudW0gRm9ybUZpZWxkVHlwZSB7XHJcbiAgZGF0ZSA9ICdkYXRlJyxcclxuICB0ZXh0ID0gJ3RleHQnLFxyXG4gIHRleHRhcmVhID0gJ3RleHRhcmVhJyxcclxuICB0eXBlYWhlYWQgPSAndHlwZWFoZWFkJyxcclxuICBtdWx0aXNlbGVjdCA9ICdtdWx0aXNlbGVjdCcsXHJcbiAgc2VsZWN0ID0gJ3NlbGVjdCcsXHJcbiAgY2hlY2tib3ggPSAnY2hlY2tib3gnLFxyXG4gIHRvZ2dsZSA9ICd0b2dnbGUnLFxyXG4gIHJhZGlvID0gJ3JhZGlvJyxcclxuICB0ZXh0bGlzdCA9ICd0ZXh0bGlzdCcsXHJcbiAgbnVtYmVyID0gJ251bWJlcicsXHJcbiAgbWVzc2FnZSA9ICdtZXNzYWdlJyxcclxuICB0aW1lID0gJ3RpbWUnLFxyXG4gIG11bHRpZmllbGQgPSAnbXVsdGlmaWVsZCcsXHJcbiAgYWN0aW9uID0gJ2FjdGlvbicsXHJcbiAgY3VycmVuY3kgPSAnY3VycmVuY3knLFxyXG4gIGJhbm5lciA9ICdiYW5uZXInLFxyXG4gIHBlcmNlbnRhZ2UgPSAncGVyY2VudGFnZScsXHJcbiAgbXVsdGlzZWxlY3Rkcm9wZG93biA9ICdtdWx0aXNlbGVjdGRyb3Bkb3duJyxcclxuICBoeXBlcmxpbmsgPSAnaHlwZXJsaW5rJyxcclxuICBpbmplY3RhYmxlID0gJ2luamVjdGFibGUnLFxyXG4gIGRhdGV0aW1lID0gJ2RhdGV0aW1lJyxcclxuICByYXRpbmcgPSAncmF0aW5nJyxcclxuICBpbmNyZW1lbnRlciA9ICdpbmNyZW1lbnRlcicsXHJcbiAgcmFuZ2UgPSAncmFuZ2UnLFxyXG4gIHBhc3N3b3JkID0gJ3Bhc3N3b3JkJyxcclxufVxyXG4iXX0=
@@ -0,0 +1,5 @@
1
+ export var LocalStorageKeys;
2
+ (function (LocalStorageKeys) {
3
+ LocalStorageKeys["LongPressForSendImmediately"] = "longPressForSendImmediately";
4
+ })(LocalStorageKeys || (LocalStorageKeys = {}));
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWwtc3RvcmFnZS1rZXlzLmVudW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kYXNoYm9hcmQtY29tcG9uZW50cy1saWIvc3JjL2xpYi9lbnVtcy9sb2NhbC1zdG9yYWdlLWtleXMuZW51bS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQU4sSUFBWSxnQkFFWDtBQUZELFdBQVksZ0JBQWdCO0lBQzFCLCtFQUEyRCxDQUFBO0FBQzdELENBQUMsRUFGVyxnQkFBZ0IsS0FBaEIsZ0JBQWdCLFFBRTNCIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGVudW0gTG9jYWxTdG9yYWdlS2V5cyB7XHJcbiAgTG9uZ1ByZXNzRm9yU2VuZEltbWVkaWF0ZWx5ID0gJ2xvbmdQcmVzc0ZvclNlbmRJbW1lZGlhdGVseScsXHJcbn1cclxuIl19
@@ -0,0 +1,8 @@
1
+ export var StatusTypes;
2
+ (function (StatusTypes) {
3
+ StatusTypes["Info"] = "info";
4
+ StatusTypes["Warning"] = "warning";
5
+ StatusTypes["Error"] = "error";
6
+ StatusTypes["Success"] = "success";
7
+ })(StatusTypes || (StatusTypes = {}));
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdHVzLXR5cGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGFzaGJvYXJkLWNvbXBvbmVudHMtbGliL3NyYy9saWIvZW51bXMvc3RhdHVzLXR5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBTixJQUFZLFdBS1g7QUFMRCxXQUFZLFdBQVc7SUFDckIsNEJBQWEsQ0FBQTtJQUNiLGtDQUFtQixDQUFBO0lBQ25CLDhCQUFlLENBQUE7SUFDZixrQ0FBbUIsQ0FBQTtBQUNyQixDQUFDLEVBTFcsV0FBVyxLQUFYLFdBQVcsUUFLdEIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZW51bSBTdGF0dXNUeXBlcyB7XHJcbiAgSW5mbyA9ICdpbmZvJyxcclxuICBXYXJuaW5nID0gJ3dhcm5pbmcnLFxyXG4gIEVycm9yID0gJ2Vycm9yJyxcclxuICBTdWNjZXNzID0gJ3N1Y2Nlc3MnLFxyXG59XHJcbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LW9wdGlvbi10ZW1wbGF0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rhc2hib2FyZC1jb21wb25lbnRzLWxpYi9zcmMvbGliL21vZGVsL3NlbGVjdC1vcHRpb24tdGVtcGxhdGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRlbXBsYXRlUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFNlbGVjdE9wdGlvbiB9IGZyb20gJ0BuYW5pdGVuaW5qYS9pb25pYy1saWInO1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBTZWxlY3RPcHRpb25XaXRoVGVtcGxhdGU8VD4gZXh0ZW5kcyBTZWxlY3RPcHRpb248VD4ge1xyXG4gIGFkZE9uVGVtcGxhdGVSZWY/OiBUZW1wbGF0ZVJlZjxIVE1MRWxlbWVudD47XHJcbn1cclxuIl19
@@ -0,0 +1,19 @@
1
+ /**
2
+ * operations.ts - Contains common operations utility functions.
3
+ *
4
+ * @file This file exports utility functions for common operations.
5
+ */
6
+ /**
7
+ * Generates a random string of the specified length.
8
+ *
9
+ * @param {number} [length=10] - The length of the random string to generate. Default is 10.
10
+ * @return {string} A randomly generated string.
11
+ */
12
+ function randomString(length = 10) {
13
+ return Array.from({ length }, () => Math.random().toString(36).charAt(2)).join('');
14
+ }
15
+ /**
16
+ * Collection of common operations utility functions.
17
+ */
18
+ export const CommonOperations = { randomString };
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3BlcmF0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rhc2hib2FyZC1jb21wb25lbnRzLWxpYi9zcmMvbGliL29wZXJhdGlvbnMvb3BlcmF0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7OztHQUlHO0FBRUg7Ozs7O0dBS0c7QUFDSCxTQUFTLFlBQVksQ0FBQyxTQUFpQixFQUFFO0lBQ3ZDLE9BQU8sS0FBSyxDQUFDLElBQUksQ0FBQyxFQUFFLE1BQU0sRUFBRSxFQUFFLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0FBQ3JGLENBQUM7QUFFRDs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLGdCQUFnQixHQUFHLEVBQUUsWUFBWSxFQUFFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcclxuICogb3BlcmF0aW9ucy50cyAtIENvbnRhaW5zIGNvbW1vbiBvcGVyYXRpb25zIHV0aWxpdHkgZnVuY3Rpb25zLlxyXG4gKlxyXG4gKiBAZmlsZSBUaGlzIGZpbGUgZXhwb3J0cyB1dGlsaXR5IGZ1bmN0aW9ucyBmb3IgY29tbW9uIG9wZXJhdGlvbnMuXHJcbiAqL1xyXG5cclxuLyoqXHJcbiAqIEdlbmVyYXRlcyBhIHJhbmRvbSBzdHJpbmcgb2YgdGhlIHNwZWNpZmllZCBsZW5ndGguXHJcbiAqXHJcbiAqIEBwYXJhbSB7bnVtYmVyfSBbbGVuZ3RoPTEwXSAtIFRoZSBsZW5ndGggb2YgdGhlIHJhbmRvbSBzdHJpbmcgdG8gZ2VuZXJhdGUuIERlZmF1bHQgaXMgMTAuXHJcbiAqIEByZXR1cm4ge3N0cmluZ30gQSByYW5kb21seSBnZW5lcmF0ZWQgc3RyaW5nLlxyXG4gKi9cclxuZnVuY3Rpb24gcmFuZG9tU3RyaW5nKGxlbmd0aDogbnVtYmVyID0gMTApOiBzdHJpbmcge1xyXG4gIHJldHVybiBBcnJheS5mcm9tKHsgbGVuZ3RoIH0sICgpID0+IE1hdGgucmFuZG9tKCkudG9TdHJpbmcoMzYpLmNoYXJBdCgyKSkuam9pbignJyk7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBDb2xsZWN0aW9uIG9mIGNvbW1vbiBvcGVyYXRpb25zIHV0aWxpdHkgZnVuY3Rpb25zLlxyXG4gKi9cclxuZXhwb3J0IGNvbnN0IENvbW1vbk9wZXJhdGlvbnMgPSB7IHJhbmRvbVN0cmluZyB9O1xyXG4iXX0=
@@ -0,0 +1,49 @@
1
+ import { Pipe } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class ArraySortPipe {
4
+ transform(array, field, type = 'ASC') {
5
+ if (!Array.isArray(array)) {
6
+ return null;
7
+ }
8
+ switch (type.toUpperCase()) {
9
+ case 'ASC': {
10
+ array.sort((a, b) => {
11
+ if (a[field] < b[field]) {
12
+ return -1;
13
+ }
14
+ else if (a[field] > b[field]) {
15
+ return 1;
16
+ }
17
+ else {
18
+ return 0;
19
+ }
20
+ });
21
+ break;
22
+ }
23
+ case 'DSC': {
24
+ array.sort((a, b) => {
25
+ if (a[field] > b[field]) {
26
+ return -1;
27
+ }
28
+ else if (a[field] < b[field]) {
29
+ return 1;
30
+ }
31
+ else {
32
+ return 0;
33
+ }
34
+ });
35
+ break;
36
+ }
37
+ }
38
+ return array;
39
+ }
40
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ArraySortPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
41
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.3.12", ngImport: i0, type: ArraySortPipe, name: "sort" }); }
42
+ }
43
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ArraySortPipe, decorators: [{
44
+ type: Pipe,
45
+ args: [{
46
+ name: 'sort',
47
+ }]
48
+ }] });
49
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJyYXkuc29ydC5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGFzaGJvYXJkLWNvbXBvbmVudHMtbGliL3NyYy9saWIvcGlwZXMvYXJyYXktc29ydC9hcnJheS5zb3J0LnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBaUIsTUFBTSxlQUFlLENBQUM7O0FBS3BELE1BQU0sT0FBTyxhQUFhO0lBQ3hCLFNBQVMsQ0FBQyxLQUFVLEVBQUUsS0FBYSxFQUFFLE9BQWUsS0FBSztRQUN2RCxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQzFCLE9BQU8sSUFBSSxDQUFDO1FBQ2QsQ0FBQztRQUNELFFBQVEsSUFBSSxDQUFDLFdBQVcsRUFBRSxFQUFFLENBQUM7WUFDM0IsS0FBSyxLQUFLLENBQUMsQ0FBQyxDQUFDO2dCQUNYLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFNLEVBQUUsQ0FBTSxFQUFFLEVBQUU7b0JBQzVCLElBQUksQ0FBQyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO3dCQUN4QixPQUFPLENBQUMsQ0FBQyxDQUFDO29CQUNaLENBQUM7eUJBQU0sSUFBSSxDQUFDLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7d0JBQy9CLE9BQU8sQ0FBQyxDQUFDO29CQUNYLENBQUM7eUJBQU0sQ0FBQzt3QkFDTixPQUFPLENBQUMsQ0FBQztvQkFDWCxDQUFDO2dCQUNILENBQUMsQ0FBQyxDQUFDO2dCQUNILE1BQU07WUFDUixDQUFDO1lBQ0QsS0FBSyxLQUFLLENBQUMsQ0FBQyxDQUFDO2dCQUNYLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFNLEVBQUUsQ0FBTSxFQUFFLEVBQUU7b0JBQzVCLElBQUksQ0FBQyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO3dCQUN4QixPQUFPLENBQUMsQ0FBQyxDQUFDO29CQUNaLENBQUM7eUJBQU0sSUFBSSxDQUFDLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7d0JBQy9CLE9BQU8sQ0FBQyxDQUFDO29CQUNYLENBQUM7eUJBQU0sQ0FBQzt3QkFDTixPQUFPLENBQUMsQ0FBQztvQkFDWCxDQUFDO2dCQUNILENBQUMsQ0FBQyxDQUFDO2dCQUNILE1BQU07WUFDUixDQUFDO1FBQ0gsQ0FBQztRQUNELE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQzsrR0FoQ1UsYUFBYTs2R0FBYixhQUFhOzs0RkFBYixhQUFhO2tCQUh6QixJQUFJO21CQUFDO29CQUNKLElBQUksRUFBRSxNQUFNO2lCQUNiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuQFBpcGUoe1xyXG4gIG5hbWU6ICdzb3J0JyxcclxufSlcclxuZXhwb3J0IGNsYXNzIEFycmF5U29ydFBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcclxuICB0cmFuc2Zvcm0oYXJyYXk6IGFueSwgZmllbGQ6IHN0cmluZywgdHlwZTogc3RyaW5nID0gJ0FTQycpOiBhbnlbXSB7XHJcbiAgICBpZiAoIUFycmF5LmlzQXJyYXkoYXJyYXkpKSB7XHJcbiAgICAgIHJldHVybiBudWxsO1xyXG4gICAgfVxyXG4gICAgc3dpdGNoICh0eXBlLnRvVXBwZXJDYXNlKCkpIHtcclxuICAgICAgY2FzZSAnQVNDJzoge1xyXG4gICAgICAgIGFycmF5LnNvcnQoKGE6IGFueSwgYjogYW55KSA9PiB7XHJcbiAgICAgICAgICBpZiAoYVtmaWVsZF0gPCBiW2ZpZWxkXSkge1xyXG4gICAgICAgICAgICByZXR1cm4gLTE7XHJcbiAgICAgICAgICB9IGVsc2UgaWYgKGFbZmllbGRdID4gYltmaWVsZF0pIHtcclxuICAgICAgICAgICAgcmV0dXJuIDE7XHJcbiAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICByZXR1cm4gMDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9KTtcclxuICAgICAgICBicmVhaztcclxuICAgICAgfVxyXG4gICAgICBjYXNlICdEU0MnOiB7XHJcbiAgICAgICAgYXJyYXkuc29ydCgoYTogYW55LCBiOiBhbnkpID0+IHtcclxuICAgICAgICAgIGlmIChhW2ZpZWxkXSA+IGJbZmllbGRdKSB7XHJcbiAgICAgICAgICAgIHJldHVybiAtMTtcclxuICAgICAgICAgIH0gZWxzZSBpZiAoYVtmaWVsZF0gPCBiW2ZpZWxkXSkge1xyXG4gICAgICAgICAgICByZXR1cm4gMTtcclxuICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHJldHVybiAwO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICByZXR1cm4gYXJyYXk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,17 @@
1
+ import { Pipe } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class CountNonEmptyFieldsPipe {
4
+ transform(records) {
5
+ return Object.values(records).filter(Boolean).length;
6
+ }
7
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CountNonEmptyFieldsPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
8
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.3.12", ngImport: i0, type: CountNonEmptyFieldsPipe, name: "countNonEmptyFields" }); }
9
+ }
10
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CountNonEmptyFieldsPipe, decorators: [{
11
+ type: Pipe,
12
+ args: [{
13
+ name: 'countNonEmptyFields',
14
+ pure: true,
15
+ }]
16
+ }] });
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY291bnQtbm9uLWVtcHR5LWZpZWxkcy5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGFzaGJvYXJkLWNvbXBvbmVudHMtbGliL3NyYy9saWIvcGlwZXMvY291bnQtbm9uLWVtcHR5LWZpZWxkcy9jb3VudC1ub24tZW1wdHktZmllbGRzLnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBaUIsTUFBTSxlQUFlLENBQUM7O0FBTXBELE1BQU0sT0FBTyx1QkFBdUI7SUFDbEMsU0FBUyxDQUFDLE9BQXNDO1FBQzlDLE9BQU8sTUFBTSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsTUFBTSxDQUFDO0lBQ3ZELENBQUM7K0dBSFUsdUJBQXVCOzZHQUF2Qix1QkFBdUI7OzRGQUF2Qix1QkFBdUI7a0JBSm5DLElBQUk7bUJBQUM7b0JBQ0osSUFBSSxFQUFFLHFCQUFxQjtvQkFDM0IsSUFBSSxFQUFFLElBQUk7aUJBQ1giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQaXBlLCBQaXBlVHJhbnNmb3JtIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5AUGlwZSh7XHJcbiAgbmFtZTogJ2NvdW50Tm9uRW1wdHlGaWVsZHMnLFxyXG4gIHB1cmU6IHRydWUsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDb3VudE5vbkVtcHR5RmllbGRzUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xyXG4gIHRyYW5zZm9ybShyZWNvcmRzOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmcgfCBudWxsPik6IG51bWJlciB7XHJcbiAgICByZXR1cm4gT2JqZWN0LnZhbHVlcyhyZWNvcmRzKS5maWx0ZXIoQm9vbGVhbikubGVuZ3RoO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -0,0 +1,31 @@
1
+ import { Pipe } from '@angular/core';
2
+ import moment from 'moment';
3
+ import * as i0 from "@angular/core";
4
+ export class DateLocalizationPipe {
5
+ transform(value, dateFormat) {
6
+ if (moment.isMoment(value)) {
7
+ return value.format(dateFormat).toString();
8
+ }
9
+ else {
10
+ let parsedDate = moment(value, moment.ISO_8601, true);
11
+ if (!parsedDate.isValid()) {
12
+ // If the value is entered manually by user then parse the value based on the date format
13
+ parsedDate = moment(value, dateFormat, false);
14
+ }
15
+ if (parsedDate.isValid()) {
16
+ return parsedDate.format(dateFormat).toString();
17
+ }
18
+ return null;
19
+ }
20
+ }
21
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DateLocalizationPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
22
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.3.12", ngImport: i0, type: DateLocalizationPipe, name: "dateLocalization" }); }
23
+ }
24
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DateLocalizationPipe, decorators: [{
25
+ type: Pipe,
26
+ args: [{
27
+ name: 'dateLocalization',
28
+ pure: true,
29
+ }]
30
+ }] });
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1sb2NhbGl6YXRpb24ucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rhc2hib2FyZC1jb21wb25lbnRzLWxpYi9zcmMvbGliL3BpcGVzL2RhdGUtbG9jYWxpemF0aW9uL2RhdGUtbG9jYWxpemF0aW9uLnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFDcEQsT0FBTyxNQUFNLE1BQU0sUUFBUSxDQUFDOztBQU01QixNQUFNLE9BQU8sb0JBQW9CO0lBQy9CLFNBQVMsQ0FBQyxLQUE2QixFQUFFLFVBQWtCO1FBQ3pELElBQUksTUFBTSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQzNCLE9BQU8sS0FBSyxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUM3QyxDQUFDO2FBQU0sQ0FBQztZQUNOLElBQUksVUFBVSxHQUFHLE1BQU0sQ0FBQyxLQUFLLEVBQUUsTUFBTSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsQ0FBQztZQUN0RCxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUM7Z0JBQzFCLHlGQUF5RjtnQkFDekYsVUFBVSxHQUFHLE1BQU0sQ0FBQyxLQUFLLEVBQUUsVUFBVSxFQUFFLEtBQUssQ0FBQyxDQUFDO1lBQ2hELENBQUM7WUFDRCxJQUFJLFVBQVUsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDO2dCQUN6QixPQUFPLFVBQVUsQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDbEQsQ0FBQztZQUNELE9BQU8sSUFBSSxDQUFDO1FBQ2QsQ0FBQztJQUNILENBQUM7K0dBZlUsb0JBQW9COzZHQUFwQixvQkFBb0I7OzRGQUFwQixvQkFBb0I7a0JBSmhDLElBQUk7bUJBQUM7b0JBQ0osSUFBSSxFQUFFLGtCQUFrQjtvQkFDeEIsSUFBSSxFQUFFLElBQUk7aUJBQ1giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQaXBlLCBQaXBlVHJhbnNmb3JtIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCBtb21lbnQgZnJvbSAnbW9tZW50JztcclxuXHJcbkBQaXBlKHtcclxuICBuYW1lOiAnZGF0ZUxvY2FsaXphdGlvbicsXHJcbiAgcHVyZTogdHJ1ZSxcclxufSlcclxuZXhwb3J0IGNsYXNzIERhdGVMb2NhbGl6YXRpb25QaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XHJcbiAgdHJhbnNmb3JtKHZhbHVlOiBzdHJpbmcgfCBtb21lbnQuTW9tZW50LCBkYXRlRm9ybWF0OiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgaWYgKG1vbWVudC5pc01vbWVudCh2YWx1ZSkpIHtcclxuICAgICAgcmV0dXJuIHZhbHVlLmZvcm1hdChkYXRlRm9ybWF0KS50b1N0cmluZygpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgbGV0IHBhcnNlZERhdGUgPSBtb21lbnQodmFsdWUsIG1vbWVudC5JU09fODYwMSwgdHJ1ZSk7XHJcbiAgICAgIGlmICghcGFyc2VkRGF0ZS5pc1ZhbGlkKCkpIHtcclxuICAgICAgICAvLyBJZiB0aGUgdmFsdWUgaXMgZW50ZXJlZCBtYW51YWxseSBieSB1c2VyIHRoZW4gcGFyc2UgdGhlIHZhbHVlIGJhc2VkIG9uIHRoZSBkYXRlIGZvcm1hdFxyXG4gICAgICAgIHBhcnNlZERhdGUgPSBtb21lbnQodmFsdWUsIGRhdGVGb3JtYXQsIGZhbHNlKTtcclxuICAgICAgfVxyXG4gICAgICBpZiAocGFyc2VkRGF0ZS5pc1ZhbGlkKCkpIHtcclxuICAgICAgICByZXR1cm4gcGFyc2VkRGF0ZS5mb3JtYXQoZGF0ZUZvcm1hdCkudG9TdHJpbmcoKTtcclxuICAgICAgfVxyXG4gICAgICByZXR1cm4gbnVsbDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIl19
@@ -0,0 +1,28 @@
1
+ import { Injectable, Pipe } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "@ngx-translate/core";
4
+ export class FallbackTranslatePipe {
5
+ constructor(translate) {
6
+ this.translate = translate;
7
+ }
8
+ transform(key, fallback) {
9
+ const translated = this.translate.instant(key);
10
+ return translated === key ? fallback : translated;
11
+ }
12
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FallbackTranslatePipe, deps: [{ token: i1.TranslateService }], target: i0.ɵɵFactoryTarget.Pipe }); }
13
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.3.12", ngImport: i0, type: FallbackTranslatePipe, isStandalone: true, name: "fallbackTranslate" }); }
14
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FallbackTranslatePipe, providedIn: 'root' }); }
15
+ }
16
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FallbackTranslatePipe, decorators: [{
17
+ type: Pipe,
18
+ args: [{
19
+ name: 'fallbackTranslate',
20
+ standalone: true,
21
+ }]
22
+ }, {
23
+ type: Injectable,
24
+ args: [{
25
+ providedIn: 'root',
26
+ }]
27
+ }], ctorParameters: () => [{ type: i1.TranslateService }] });
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmFsbGJhY2stdHJhbnNsYXRlLnBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kYXNoYm9hcmQtY29tcG9uZW50cy1saWIvc3JjL2xpYi9waXBlcy9mYWxsYmFjay10cmFuc2xhdGUvZmFsbGJhY2stdHJhbnNsYXRlLnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQWlCLE1BQU0sZUFBZSxDQUFDOzs7QUFVaEUsTUFBTSxPQUFPLHFCQUFxQjtJQUNoQyxZQUFvQixTQUEyQjtRQUEzQixjQUFTLEdBQVQsU0FBUyxDQUFrQjtJQUFHLENBQUM7SUFFbkQsU0FBUyxDQUFDLEdBQVcsRUFBRSxRQUFnQjtRQUNyQyxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUMvQyxPQUFPLFVBQVUsS0FBSyxHQUFHLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDO0lBQ3BELENBQUM7K0dBTlUscUJBQXFCOzZHQUFyQixxQkFBcUI7bUhBQXJCLHFCQUFxQixjQUZwQixNQUFNOzs0RkFFUCxxQkFBcUI7a0JBUGpDLElBQUk7bUJBQUM7b0JBQ0osSUFBSSxFQUFFLG1CQUFtQjtvQkFDekIsVUFBVSxFQUFFLElBQUk7aUJBQ2pCOztrQkFDQSxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xyXG5cclxuQFBpcGUoe1xyXG4gIG5hbWU6ICdmYWxsYmFja1RyYW5zbGF0ZScsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxufSlcclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290JyxcclxufSlcclxuZXhwb3J0IGNsYXNzIEZhbGxiYWNrVHJhbnNsYXRlUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlKSB7fVxyXG5cclxuICB0cmFuc2Zvcm0oa2V5OiBzdHJpbmcsIGZhbGxiYWNrOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgY29uc3QgdHJhbnNsYXRlZCA9IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoa2V5KTtcclxuICAgIHJldHVybiB0cmFuc2xhdGVkID09PSBrZXkgPyBmYWxsYmFjayA6IHRyYW5zbGF0ZWQ7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,59 @@
1
+ import { formatNumber } from '@angular/common';
2
+ import { Pipe } from '@angular/core';
3
+ import moment from 'moment';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "../date-localization/date-localization.pipe";
6
+ import * as i2 from "@angular/common";
7
+ export class GetDisplayValuePipe {
8
+ constructor(dateLocalizationPipe, currencyPipe) {
9
+ this.dateLocalizationPipe = dateLocalizationPipe;
10
+ this.currencyPipe = currencyPipe;
11
+ }
12
+ transform(data, column, dateFormat, corporateCurrency = 'USD') {
13
+ if ((typeof data != 'boolean' && !data && data !== 0) || !column) {
14
+ return '';
15
+ }
16
+ if (column.controlType === 'SingleSelect' || column.controlType === 'MultiSelect') {
17
+ if (Array.isArray(data)) {
18
+ return data.map((value) => column.values?.find((col) => col.Key === value)?.Value)?.join(', ') ?? '';
19
+ }
20
+ return column.values?.find((col) => col.Key === data)?.Value;
21
+ }
22
+ if (column.controlType === 'AutoComplete' || column.controlType === 'AutoCompleteMulti' || column.controlType === 'MultiField') {
23
+ if (Array.isArray(data)) {
24
+ return data?.map((kv) => kv?.Value)?.join(', ') ?? '';
25
+ }
26
+ return data?.Value;
27
+ }
28
+ if (column.controlType === 'Date') {
29
+ if (moment.isMoment(data)) {
30
+ return this.dateLocalizationPipe.transform(data, dateFormat);
31
+ }
32
+ else {
33
+ return this.dateLocalizationPipe.transform(data?.toString() ?? '', dateFormat);
34
+ }
35
+ }
36
+ if (column.controlType === 'Percent') {
37
+ return `${formatNumber(data, 'en-US', '1.0-0')}%`;
38
+ }
39
+ if (column.controlType === 'Currency') {
40
+ return this.currencyPipe.transform(Math.round(data), corporateCurrency, 'symbol', '1.0-0');
41
+ }
42
+ if (column.controlType === 'Boolean') {
43
+ return data ? 'Yes' : 'No';
44
+ }
45
+ if (data.en)
46
+ return data.en;
47
+ return data.toString();
48
+ }
49
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: GetDisplayValuePipe, deps: [{ token: i1.DateLocalizationPipe }, { token: i2.CurrencyPipe }], target: i0.ɵɵFactoryTarget.Pipe }); }
50
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.3.12", ngImport: i0, type: GetDisplayValuePipe, name: "getDisplayValue" }); }
51
+ }
52
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: GetDisplayValuePipe, decorators: [{
53
+ type: Pipe,
54
+ args: [{
55
+ name: 'getDisplayValue',
56
+ pure: true,
57
+ }]
58
+ }], ctorParameters: () => [{ type: i1.DateLocalizationPipe }, { type: i2.CurrencyPipe }] });
59
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LWRpc3BsYXktdmFsdWUucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rhc2hib2FyZC1jb21wb25lbnRzLWxpYi9zcmMvbGliL3BpcGVzL2dldC1kaXNwbGF5LXZhbHVlL2dldC1kaXNwbGF5LXZhbHVlLnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFnQixZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUNwRCxPQUFPLE1BQU0sTUFBTSxRQUFRLENBQUM7Ozs7QUFRNUIsTUFBTSxPQUFPLG1CQUFtQjtJQUM5QixZQUNVLG9CQUEwQyxFQUMxQyxZQUEwQjtRQUQxQix5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXNCO1FBQzFDLGlCQUFZLEdBQVosWUFBWSxDQUFjO0lBQ2pDLENBQUM7SUFFSixTQUFTLENBQUMsSUFBUyxFQUFFLE1BQWtCLEVBQUUsVUFBa0IsRUFBRSxvQkFBNEIsS0FBSztRQUM1RixJQUFJLENBQUMsT0FBTyxJQUFJLElBQUksU0FBUyxJQUFJLENBQUMsSUFBSSxJQUFJLElBQUksS0FBSyxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ2pFLE9BQU8sRUFBRSxDQUFDO1FBQ1osQ0FBQztRQUVELElBQUksTUFBTSxDQUFDLFdBQVcsS0FBSyxjQUFjLElBQUksTUFBTSxDQUFDLFdBQVcsS0FBSyxhQUFhLEVBQUUsQ0FBQztZQUNsRixJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztnQkFDeEIsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLEdBQUcsS0FBSyxLQUFLLENBQUMsRUFBRSxLQUFLLENBQUMsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1lBQ3ZHLENBQUM7WUFDRCxPQUFPLE1BQU0sQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsR0FBRyxLQUFLLElBQUksQ0FBQyxFQUFFLEtBQUssQ0FBQztRQUMvRCxDQUFDO1FBRUQsSUFBSSxNQUFNLENBQUMsV0FBVyxLQUFLLGNBQWMsSUFBSSxNQUFNLENBQUMsV0FBVyxLQUFLLG1CQUFtQixJQUFJLE1BQU0sQ0FBQyxXQUFXLEtBQUssWUFBWSxFQUFFLENBQUM7WUFDL0gsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7Z0JBQ3hCLE9BQU8sSUFBSSxFQUFFLEdBQUcsQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxFQUFFLEtBQUssQ0FBQyxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDeEQsQ0FBQztZQUNELE9BQU8sSUFBSSxFQUFFLEtBQUssQ0FBQztRQUNyQixDQUFDO1FBRUQsSUFBSSxNQUFNLENBQUMsV0FBVyxLQUFLLE1BQU0sRUFBRSxDQUFDO1lBQ2xDLElBQUksTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO2dCQUMxQixPQUFPLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLFVBQVUsQ0FBQyxDQUFDO1lBQy9ELENBQUM7aUJBQU0sQ0FBQztnQkFDTixPQUFPLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsRUFBRSxVQUFVLENBQUMsQ0FBQztZQUNqRixDQUFDO1FBQ0gsQ0FBQztRQUVELElBQUksTUFBTSxDQUFDLFdBQVcsS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUNyQyxPQUFPLEdBQUcsWUFBWSxDQUFDLElBQUksRUFBRSxPQUFPLEVBQUUsT0FBTyxDQUFDLEdBQUcsQ0FBQztRQUNwRCxDQUFDO1FBRUQsSUFBSSxNQUFNLENBQUMsV0FBVyxLQUFLLFVBQVUsRUFBRSxDQUFDO1lBQ3RDLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsRUFBRSxpQkFBaUIsRUFBRSxRQUFRLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDN0YsQ0FBQztRQUVELElBQUksTUFBTSxDQUFDLFdBQVcsS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUNyQyxPQUFPLElBQUksQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7UUFDN0IsQ0FBQztRQUVELElBQUksSUFBSSxDQUFDLEVBQUU7WUFBRSxPQUFPLElBQUksQ0FBQyxFQUFFLENBQUM7UUFFNUIsT0FBTyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDekIsQ0FBQzsrR0FoRFUsbUJBQW1COzZHQUFuQixtQkFBbUI7OzRGQUFuQixtQkFBbUI7a0JBSi9CLElBQUk7bUJBQUM7b0JBQ0osSUFBSSxFQUFFLGlCQUFpQjtvQkFDdkIsSUFBSSxFQUFFLElBQUk7aUJBQ1giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDdXJyZW5jeVBpcGUsIGZvcm1hdE51bWJlciB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IG1vbWVudCBmcm9tICdtb21lbnQnO1xyXG5pbXBvcnQgeyBHcmlkQ29sdW1uIH0gZnJvbSAnQG5hbml0ZW5pbmphL2lvbmljLWxpYic7XHJcbmltcG9ydCB7IERhdGVMb2NhbGl6YXRpb25QaXBlIH0gZnJvbSAnLi4vZGF0ZS1sb2NhbGl6YXRpb24vZGF0ZS1sb2NhbGl6YXRpb24ucGlwZSc7XHJcblxyXG5AUGlwZSh7XHJcbiAgbmFtZTogJ2dldERpc3BsYXlWYWx1ZScsXHJcbiAgcHVyZTogdHJ1ZSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEdldERpc3BsYXlWYWx1ZVBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgZGF0ZUxvY2FsaXphdGlvblBpcGU6IERhdGVMb2NhbGl6YXRpb25QaXBlLFxyXG4gICAgcHJpdmF0ZSBjdXJyZW5jeVBpcGU6IEN1cnJlbmN5UGlwZSxcclxuICApIHt9XHJcblxyXG4gIHRyYW5zZm9ybShkYXRhOiBhbnksIGNvbHVtbjogR3JpZENvbHVtbiwgZGF0ZUZvcm1hdDogc3RyaW5nLCBjb3Jwb3JhdGVDdXJyZW5jeTogc3RyaW5nID0gJ1VTRCcpOiBzdHJpbmcge1xyXG4gICAgaWYgKCh0eXBlb2YgZGF0YSAhPSAnYm9vbGVhbicgJiYgIWRhdGEgJiYgZGF0YSAhPT0gMCkgfHwgIWNvbHVtbikge1xyXG4gICAgICByZXR1cm4gJyc7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKGNvbHVtbi5jb250cm9sVHlwZSA9PT0gJ1NpbmdsZVNlbGVjdCcgfHwgY29sdW1uLmNvbnRyb2xUeXBlID09PSAnTXVsdGlTZWxlY3QnKSB7XHJcbiAgICAgIGlmIChBcnJheS5pc0FycmF5KGRhdGEpKSB7XHJcbiAgICAgICAgcmV0dXJuIGRhdGEubWFwKCh2YWx1ZSkgPT4gY29sdW1uLnZhbHVlcz8uZmluZCgoY29sKSA9PiBjb2wuS2V5ID09PSB2YWx1ZSk/LlZhbHVlKT8uam9pbignLCAnKSA/PyAnJztcclxuICAgICAgfVxyXG4gICAgICByZXR1cm4gY29sdW1uLnZhbHVlcz8uZmluZCgoY29sKSA9PiBjb2wuS2V5ID09PSBkYXRhKT8uVmFsdWU7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKGNvbHVtbi5jb250cm9sVHlwZSA9PT0gJ0F1dG9Db21wbGV0ZScgfHwgY29sdW1uLmNvbnRyb2xUeXBlID09PSAnQXV0b0NvbXBsZXRlTXVsdGknIHx8IGNvbHVtbi5jb250cm9sVHlwZSA9PT0gJ011bHRpRmllbGQnKSB7XHJcbiAgICAgIGlmIChBcnJheS5pc0FycmF5KGRhdGEpKSB7XHJcbiAgICAgICAgcmV0dXJuIGRhdGE/Lm1hcCgoa3YpID0+IGt2Py5WYWx1ZSk/LmpvaW4oJywgJykgPz8gJyc7XHJcbiAgICAgIH1cclxuICAgICAgcmV0dXJuIGRhdGE/LlZhbHVlO1xyXG4gICAgfVxyXG5cclxuICAgIGlmIChjb2x1bW4uY29udHJvbFR5cGUgPT09ICdEYXRlJykge1xyXG4gICAgICBpZiAobW9tZW50LmlzTW9tZW50KGRhdGEpKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuZGF0ZUxvY2FsaXphdGlvblBpcGUudHJhbnNmb3JtKGRhdGEsIGRhdGVGb3JtYXQpO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmRhdGVMb2NhbGl6YXRpb25QaXBlLnRyYW5zZm9ybShkYXRhPy50b1N0cmluZygpID8/ICcnLCBkYXRlRm9ybWF0KTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGlmIChjb2x1bW4uY29udHJvbFR5cGUgPT09ICdQZXJjZW50Jykge1xyXG4gICAgICByZXR1cm4gYCR7Zm9ybWF0TnVtYmVyKGRhdGEsICdlbi1VUycsICcxLjAtMCcpfSVgO1xyXG4gICAgfVxyXG5cclxuICAgIGlmIChjb2x1bW4uY29udHJvbFR5cGUgPT09ICdDdXJyZW5jeScpIHtcclxuICAgICAgcmV0dXJuIHRoaXMuY3VycmVuY3lQaXBlLnRyYW5zZm9ybShNYXRoLnJvdW5kKGRhdGEpLCBjb3Jwb3JhdGVDdXJyZW5jeSwgJ3N5bWJvbCcsICcxLjAtMCcpO1xyXG4gICAgfVxyXG5cclxuICAgIGlmIChjb2x1bW4uY29udHJvbFR5cGUgPT09ICdCb29sZWFuJykge1xyXG4gICAgICByZXR1cm4gZGF0YSA/ICdZZXMnIDogJ05vJztcclxuICAgIH1cclxuXHJcbiAgICBpZiAoZGF0YS5lbikgcmV0dXJuIGRhdGEuZW47XHJcblxyXG4gICAgcmV0dXJuIGRhdGEudG9TdHJpbmcoKTtcclxuICB9XHJcbn1cclxuIl19