@gnggln/ng-ui-system 1.0.0-alpha.2 → 1.0.0-alpha.21

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (721) hide show
  1. package/accordion/entry-accordion.d.ts +4 -0
  2. package/accordion/index.d.ts +5 -0
  3. package/accordion/lib/components/accordion/accordion.component.d.ts +125 -0
  4. package/accordion/lib/components/accordion/accordion.types.d.ts +64 -0
  5. package/accordion/lib/components/accordion/index.d.ts +2 -0
  6. package/accordion/lib/core/types/index.d.ts +133 -0
  7. package/base-layout/entry-base-layout.d.ts +4 -0
  8. package/base-layout/index.d.ts +5 -0
  9. package/base-layout/lib/components/base-layout/base-layout.component.d.ts +108 -0
  10. package/base-layout/lib/components/base-layout/base-layout.types.d.ts +40 -0
  11. package/base-layout/lib/components/base-layout/index.d.ts +13 -0
  12. package/base-layout/lib/components/blackbox/blackbox-fingerprint.service.d.ts +36 -0
  13. package/base-layout/lib/components/blackbox/blackbox-storage.service.d.ts +55 -0
  14. package/base-layout/lib/components/blackbox/blackbox.service.d.ts +144 -0
  15. package/base-layout/lib/components/blackbox/blackbox.types.d.ts +238 -0
  16. package/base-layout/lib/components/button/button-area.component.d.ts +93 -0
  17. package/base-layout/lib/components/button/button.component.d.ts +61 -0
  18. package/base-layout/lib/components/button/button.types.d.ts +75 -0
  19. package/base-layout/lib/components/page-header/breadcrumb.service.d.ts +96 -0
  20. package/base-layout/lib/components/page-header/page-header.component.d.ts +59 -0
  21. package/base-layout/lib/components/page-header/page-header.types.d.ts +96 -0
  22. package/base-layout/lib/core/types/index.d.ts +133 -0
  23. package/blackbox/entry-blackbox.d.ts +4 -0
  24. package/blackbox/index.d.ts +5 -0
  25. package/blackbox/lib/components/blackbox/blackbox-debugger.component.d.ts +80 -0
  26. package/blackbox/lib/components/blackbox/blackbox-debugger.service.d.ts +34 -0
  27. package/blackbox/lib/components/blackbox/blackbox-fingerprint.service.d.ts +36 -0
  28. package/blackbox/lib/components/blackbox/blackbox-json-viewer.component.d.ts +18 -0
  29. package/blackbox/lib/components/blackbox/blackbox-storage.service.d.ts +55 -0
  30. package/blackbox/lib/components/blackbox/blackbox.interceptor.d.ts +38 -0
  31. package/blackbox/lib/components/blackbox/blackbox.service.d.ts +144 -0
  32. package/blackbox/lib/components/blackbox/blackbox.types.d.ts +238 -0
  33. package/blackbox/lib/components/blackbox/index.d.ts +23 -0
  34. package/blackbox/lib/components/blackbox/ui-track.directive.d.ts +20 -0
  35. package/blackbox/lib/components/button/button-area.component.d.ts +93 -0
  36. package/blackbox/lib/components/button/button.component.d.ts +61 -0
  37. package/blackbox/lib/components/button/button.types.d.ts +75 -0
  38. package/blackbox/lib/components/button/index.d.ts +15 -0
  39. package/blackbox/lib/components/modal/confirm-dialog.component.d.ts +46 -0
  40. package/blackbox/lib/components/modal/index.d.ts +4 -0
  41. package/blackbox/lib/components/modal/modal.component.d.ts +44 -0
  42. package/blackbox/lib/components/modal/modal.service.d.ts +93 -0
  43. package/blackbox/lib/components/modal/modal.types.d.ts +110 -0
  44. package/blackbox/lib/core/types/index.d.ts +133 -0
  45. package/button/entry-button.d.ts +4 -0
  46. package/button/index.d.ts +5 -0
  47. package/button/lib/components/blackbox/blackbox-fingerprint.service.d.ts +36 -0
  48. package/button/lib/components/blackbox/blackbox-storage.service.d.ts +55 -0
  49. package/button/lib/components/blackbox/blackbox.service.d.ts +144 -0
  50. package/button/lib/components/blackbox/blackbox.types.d.ts +238 -0
  51. package/button/lib/components/button/button-area.component.d.ts +93 -0
  52. package/button/lib/components/button/button.component.d.ts +61 -0
  53. package/button/lib/components/button/button.types.d.ts +75 -0
  54. package/button/lib/components/button/index.d.ts +15 -0
  55. package/button/lib/core/types/index.d.ts +133 -0
  56. package/core/entry-core.d.ts +5 -0
  57. package/core/index.d.ts +5 -0
  58. package/core/lib/core/types/index.d.ts +133 -0
  59. package/core/lib/core/utils/index.d.ts +60 -0
  60. package/crud-table/entry-crud-table.d.ts +4 -0
  61. package/crud-table/index.d.ts +5 -0
  62. package/crud-table/lib/components/accordion/accordion.component.d.ts +125 -0
  63. package/crud-table/lib/components/accordion/accordion.types.d.ts +64 -0
  64. package/crud-table/lib/components/accordion/index.d.ts +2 -0
  65. package/crud-table/lib/components/blackbox/blackbox-fingerprint.service.d.ts +36 -0
  66. package/crud-table/lib/components/blackbox/blackbox-storage.service.d.ts +55 -0
  67. package/crud-table/lib/components/blackbox/blackbox.service.d.ts +144 -0
  68. package/crud-table/lib/components/blackbox/blackbox.types.d.ts +238 -0
  69. package/crud-table/lib/components/button/button-area.component.d.ts +93 -0
  70. package/crud-table/lib/components/button/button.component.d.ts +61 -0
  71. package/crud-table/lib/components/button/button.types.d.ts +75 -0
  72. package/crud-table/lib/components/button/index.d.ts +15 -0
  73. package/crud-table/lib/components/crud-table/crud-table.component.d.ts +143 -0
  74. package/crud-table/lib/components/crud-table/crud-table.types.d.ts +207 -0
  75. package/crud-table/lib/components/crud-table/index.d.ts +15 -0
  76. package/crud-table/lib/components/form-builder/adapters/it-date-adapter.d.ts +32 -0
  77. package/crud-table/lib/components/form-builder/directives/currency-input.directive.d.ts +48 -0
  78. package/crud-table/lib/components/form-builder/form-builder.component.d.ts +279 -0
  79. package/crud-table/lib/components/form-builder/services/form-condition.service.d.ts +46 -0
  80. package/crud-table/lib/components/form-builder/services/form-error-state.matcher.d.ts +9 -0
  81. package/crud-table/lib/components/form-builder/services/form-field-error.service.d.ts +38 -0
  82. package/crud-table/lib/components/form-builder/services/form-validation.service.d.ts +63 -0
  83. package/crud-table/lib/components/form-builder/services/location.service.d.ts +83 -0
  84. package/crud-table/lib/components/form-builder/services/nominatim-geocoding.service.d.ts +37 -0
  85. package/crud-table/lib/components/form-builder/sub-components/error-summary/form-error-summary.component.d.ts +31 -0
  86. package/crud-table/lib/components/form-builder/sub-components/file-input/file-input.component.d.ts +41 -0
  87. package/crud-table/lib/components/form-builder/sub-components/form-fields/form-number-field.component.d.ts +42 -0
  88. package/crud-table/lib/components/form-builder/sub-components/form-fields/form-radio-field.component.d.ts +45 -0
  89. package/crud-table/lib/components/form-builder/sub-components/form-fields/form-select-field.component.d.ts +44 -0
  90. package/crud-table/lib/components/form-builder/sub-components/form-fields/form-text-field.component.d.ts +62 -0
  91. package/crud-table/lib/components/form-builder/sub-components/form-fields/form-textarea-field.component.d.ts +39 -0
  92. package/crud-table/lib/components/form-builder/sub-components/form-fields/index.d.ts +5 -0
  93. package/crud-table/lib/components/form-builder/sub-components/location-geocoded/location-geocoded.component.d.ts +84 -0
  94. package/crud-table/lib/components/form-builder/sub-components/specifica-territoriale/specifica-territoriale.component.d.ts +145 -0
  95. package/crud-table/lib/components/form-builder/sub-components/table-territoriale/table-territoriale.component.d.ts +108 -0
  96. package/crud-table/lib/components/form-builder/types/condition.types.d.ts +51 -0
  97. package/crud-table/lib/components/form-builder/types/field.types.d.ts +330 -0
  98. package/crud-table/lib/components/form-builder/types/geocoded-location.types.d.ts +116 -0
  99. package/crud-table/lib/components/form-builder/types/schema.types.d.ts +304 -0
  100. package/crud-table/lib/components/form-builder/types/territoriale.types.d.ts +170 -0
  101. package/crud-table/lib/components/form-builder/types/validation.types.d.ts +179 -0
  102. package/crud-table/lib/components/modal/confirm-dialog.component.d.ts +46 -0
  103. package/crud-table/lib/components/modal/modal.service.d.ts +93 -0
  104. package/crud-table/lib/components/modal/modal.types.d.ts +110 -0
  105. package/crud-table/lib/core/logging/logger.config.d.ts +18 -0
  106. package/crud-table/lib/core/logging/logger.service.d.ts +75 -0
  107. package/crud-table/lib/core/logging/logger.types.d.ts +70 -0
  108. package/crud-table/lib/core/types/index.d.ts +133 -0
  109. package/esm2022/accordion/entry-accordion.mjs +5 -0
  110. package/esm2022/accordion/gnggln-ng-ui-system-accordion.mjs +5 -0
  111. package/esm2022/accordion/lib/components/accordion/accordion.component.mjs +398 -0
  112. package/esm2022/accordion/lib/components/accordion/accordion.types.mjs +6 -0
  113. package/esm2022/accordion/lib/components/accordion/index.mjs +2 -0
  114. package/esm2022/accordion/lib/core/types/index.mjs +6 -0
  115. package/esm2022/base-layout/entry-base-layout.mjs +5 -0
  116. package/esm2022/base-layout/gnggln-ng-ui-system-base-layout.mjs +5 -0
  117. package/esm2022/base-layout/lib/components/base-layout/base-layout.component.mjs +272 -0
  118. package/esm2022/base-layout/lib/components/base-layout/base-layout.types.mjs +6 -0
  119. package/esm2022/base-layout/lib/components/base-layout/index.mjs +14 -0
  120. package/esm2022/base-layout/lib/components/blackbox/blackbox-fingerprint.service.mjs +116 -0
  121. package/esm2022/base-layout/lib/components/blackbox/blackbox-storage.service.mjs +286 -0
  122. package/esm2022/base-layout/lib/components/blackbox/blackbox.service.mjs +323 -0
  123. package/esm2022/base-layout/lib/components/blackbox/blackbox.types.mjs +25 -0
  124. package/esm2022/base-layout/lib/components/button/button-area.component.mjs +210 -0
  125. package/esm2022/base-layout/lib/components/button/button.component.mjs +180 -0
  126. package/esm2022/base-layout/lib/components/button/button.types.mjs +6 -0
  127. package/esm2022/base-layout/lib/components/page-header/breadcrumb.service.mjs +243 -0
  128. package/esm2022/base-layout/lib/components/page-header/page-header.component.mjs +243 -0
  129. package/esm2022/base-layout/lib/components/page-header/page-header.types.mjs +21 -0
  130. package/esm2022/base-layout/lib/core/types/index.mjs +6 -0
  131. package/esm2022/blackbox/entry-blackbox.mjs +5 -0
  132. package/esm2022/blackbox/gnggln-ng-ui-system-blackbox.mjs +5 -0
  133. package/esm2022/blackbox/lib/components/blackbox/blackbox-debugger.component.mjs +904 -0
  134. package/esm2022/blackbox/lib/components/blackbox/blackbox-debugger.service.mjs +51 -0
  135. package/esm2022/blackbox/lib/components/blackbox/blackbox-fingerprint.service.mjs +116 -0
  136. package/esm2022/blackbox/lib/components/blackbox/blackbox-json-viewer.component.mjs +66 -0
  137. package/esm2022/blackbox/lib/components/blackbox/blackbox-storage.service.mjs +286 -0
  138. package/esm2022/blackbox/lib/components/blackbox/blackbox.interceptor.mjs +135 -0
  139. package/esm2022/blackbox/lib/components/blackbox/blackbox.service.mjs +323 -0
  140. package/esm2022/blackbox/lib/components/blackbox/blackbox.types.mjs +25 -0
  141. package/esm2022/blackbox/lib/components/blackbox/index.mjs +27 -0
  142. package/esm2022/blackbox/lib/components/blackbox/ui-track.directive.mjs +69 -0
  143. package/esm2022/blackbox/lib/components/button/button-area.component.mjs +210 -0
  144. package/esm2022/blackbox/lib/components/button/button.component.mjs +180 -0
  145. package/esm2022/blackbox/lib/components/button/button.types.mjs +6 -0
  146. package/esm2022/blackbox/lib/components/button/index.mjs +16 -0
  147. package/esm2022/blackbox/lib/components/modal/confirm-dialog.component.mjs +151 -0
  148. package/esm2022/blackbox/lib/components/modal/index.mjs +4 -0
  149. package/esm2022/blackbox/lib/components/modal/modal.component.mjs +139 -0
  150. package/esm2022/blackbox/lib/components/modal/modal.service.mjs +197 -0
  151. package/esm2022/blackbox/lib/components/modal/modal.types.mjs +6 -0
  152. package/esm2022/blackbox/lib/core/types/index.mjs +6 -0
  153. package/esm2022/button/entry-button.mjs +5 -0
  154. package/esm2022/button/gnggln-ng-ui-system-button.mjs +5 -0
  155. package/esm2022/button/lib/components/blackbox/blackbox-fingerprint.service.mjs +116 -0
  156. package/esm2022/button/lib/components/blackbox/blackbox-storage.service.mjs +286 -0
  157. package/esm2022/button/lib/components/blackbox/blackbox.service.mjs +323 -0
  158. package/esm2022/button/lib/components/blackbox/blackbox.types.mjs +25 -0
  159. package/esm2022/button/lib/components/button/button-area.component.mjs +210 -0
  160. package/esm2022/button/lib/components/button/button.component.mjs +180 -0
  161. package/esm2022/button/lib/components/button/button.types.mjs +6 -0
  162. package/esm2022/button/lib/components/button/index.mjs +16 -0
  163. package/esm2022/button/lib/core/types/index.mjs +6 -0
  164. package/esm2022/core/entry-core.mjs +6 -0
  165. package/esm2022/core/gnggln-ng-ui-system-core.mjs +5 -0
  166. package/esm2022/core/lib/core/types/index.mjs +6 -0
  167. package/esm2022/core/lib/core/utils/index.mjs +102 -0
  168. package/esm2022/crud-table/entry-crud-table.mjs +5 -0
  169. package/esm2022/crud-table/gnggln-ng-ui-system-crud-table.mjs +5 -0
  170. package/esm2022/crud-table/lib/components/accordion/accordion.component.mjs +398 -0
  171. package/esm2022/crud-table/lib/components/accordion/accordion.types.mjs +6 -0
  172. package/esm2022/crud-table/lib/components/accordion/index.mjs +2 -0
  173. package/esm2022/crud-table/lib/components/blackbox/blackbox-fingerprint.service.mjs +116 -0
  174. package/esm2022/crud-table/lib/components/blackbox/blackbox-storage.service.mjs +286 -0
  175. package/esm2022/crud-table/lib/components/blackbox/blackbox.service.mjs +323 -0
  176. package/esm2022/crud-table/lib/components/blackbox/blackbox.types.mjs +25 -0
  177. package/esm2022/crud-table/lib/components/button/button-area.component.mjs +210 -0
  178. package/esm2022/crud-table/lib/components/button/button.component.mjs +180 -0
  179. package/esm2022/crud-table/lib/components/button/button.types.mjs +6 -0
  180. package/esm2022/crud-table/lib/components/button/index.mjs +16 -0
  181. package/esm2022/crud-table/lib/components/crud-table/crud-table.component.mjs +789 -0
  182. package/esm2022/crud-table/lib/components/crud-table/crud-table.types.mjs +6 -0
  183. package/esm2022/crud-table/lib/components/crud-table/index.mjs +16 -0
  184. package/esm2022/crud-table/lib/components/form-builder/adapters/it-date-adapter.mjs +82 -0
  185. package/esm2022/crud-table/lib/components/form-builder/directives/currency-input.directive.mjs +184 -0
  186. package/esm2022/crud-table/lib/components/form-builder/form-builder.component.mjs +1351 -0
  187. package/esm2022/crud-table/lib/components/form-builder/services/form-condition.service.mjs +132 -0
  188. package/esm2022/crud-table/lib/components/form-builder/services/form-error-state.matcher.mjs +10 -0
  189. package/esm2022/crud-table/lib/components/form-builder/services/form-field-error.service.mjs +103 -0
  190. package/esm2022/crud-table/lib/components/form-builder/services/form-validation.service.mjs +381 -0
  191. package/esm2022/crud-table/lib/components/form-builder/services/location.service.mjs +141 -0
  192. package/esm2022/crud-table/lib/components/form-builder/services/nominatim-geocoding.service.mjs +120 -0
  193. package/esm2022/crud-table/lib/components/form-builder/sub-components/error-summary/form-error-summary.component.mjs +190 -0
  194. package/esm2022/crud-table/lib/components/form-builder/sub-components/file-input/file-input.component.mjs +310 -0
  195. package/esm2022/crud-table/lib/components/form-builder/sub-components/form-fields/form-number-field.component.mjs +113 -0
  196. package/esm2022/crud-table/lib/components/form-builder/sub-components/form-fields/form-radio-field.component.mjs +105 -0
  197. package/esm2022/crud-table/lib/components/form-builder/sub-components/form-fields/form-select-field.component.mjs +126 -0
  198. package/esm2022/crud-table/lib/components/form-builder/sub-components/form-fields/form-text-field.component.mjs +147 -0
  199. package/esm2022/crud-table/lib/components/form-builder/sub-components/form-fields/form-textarea-field.component.mjs +99 -0
  200. package/esm2022/crud-table/lib/components/form-builder/sub-components/form-fields/index.mjs +6 -0
  201. package/esm2022/crud-table/lib/components/form-builder/sub-components/location-geocoded/location-geocoded.component.mjs +322 -0
  202. package/esm2022/crud-table/lib/components/form-builder/sub-components/specifica-territoriale/specifica-territoriale.component.mjs +648 -0
  203. package/esm2022/crud-table/lib/components/form-builder/sub-components/table-territoriale/table-territoriale.component.mjs +432 -0
  204. package/esm2022/crud-table/lib/components/form-builder/types/condition.types.mjs +6 -0
  205. package/esm2022/crud-table/lib/components/form-builder/types/field.types.mjs +6 -0
  206. package/esm2022/crud-table/lib/components/form-builder/types/geocoded-location.types.mjs +6 -0
  207. package/esm2022/crud-table/lib/components/form-builder/types/schema.types.mjs +6 -0
  208. package/esm2022/crud-table/lib/components/form-builder/types/territoriale.types.mjs +6 -0
  209. package/esm2022/crud-table/lib/components/form-builder/types/validation.types.mjs +10 -0
  210. package/esm2022/crud-table/lib/components/modal/confirm-dialog.component.mjs +151 -0
  211. package/esm2022/crud-table/lib/components/modal/modal.service.mjs +197 -0
  212. package/esm2022/crud-table/lib/components/modal/modal.types.mjs +6 -0
  213. package/esm2022/crud-table/lib/core/logging/logger.config.mjs +18 -0
  214. package/esm2022/crud-table/lib/core/logging/logger.service.mjs +295 -0
  215. package/esm2022/crud-table/lib/core/logging/logger.types.mjs +7 -0
  216. package/esm2022/crud-table/lib/core/types/index.mjs +6 -0
  217. package/esm2022/crud-table/lib/sources/location-data.opt.json +8942 -0
  218. package/esm2022/crud-table/lib/sources/nazioni.opt.json +215 -0
  219. package/esm2022/form-builder/entry-form-builder.mjs +5 -0
  220. package/esm2022/form-builder/gnggln-ng-ui-system-form-builder.mjs +5 -0
  221. package/esm2022/form-builder/lib/components/accordion/accordion.component.mjs +398 -0
  222. package/esm2022/form-builder/lib/components/accordion/accordion.types.mjs +6 -0
  223. package/esm2022/form-builder/lib/components/accordion/index.mjs +2 -0
  224. package/esm2022/form-builder/lib/components/blackbox/blackbox-fingerprint.service.mjs +116 -0
  225. package/esm2022/form-builder/lib/components/blackbox/blackbox-storage.service.mjs +286 -0
  226. package/esm2022/form-builder/lib/components/blackbox/blackbox.service.mjs +323 -0
  227. package/esm2022/form-builder/lib/components/blackbox/blackbox.types.mjs +25 -0
  228. package/esm2022/form-builder/lib/components/button/button-area.component.mjs +210 -0
  229. package/esm2022/form-builder/lib/components/button/button.component.mjs +180 -0
  230. package/esm2022/form-builder/lib/components/button/button.types.mjs +6 -0
  231. package/esm2022/form-builder/lib/components/button/index.mjs +16 -0
  232. package/esm2022/form-builder/lib/components/form-builder/adapters/it-date-adapter.mjs +82 -0
  233. package/esm2022/form-builder/lib/components/form-builder/directives/currency-input.directive.mjs +184 -0
  234. package/esm2022/form-builder/lib/components/form-builder/form-builder.component.mjs +1351 -0
  235. package/esm2022/form-builder/lib/components/form-builder/form-wizard.component.mjs +1064 -0
  236. package/esm2022/form-builder/lib/components/form-builder/index.mjs +24 -0
  237. package/esm2022/form-builder/lib/components/form-builder/services/form-condition.service.mjs +132 -0
  238. package/esm2022/form-builder/lib/components/form-builder/services/form-error-state.matcher.mjs +10 -0
  239. package/esm2022/form-builder/lib/components/form-builder/services/form-field-error.service.mjs +103 -0
  240. package/esm2022/form-builder/lib/components/form-builder/services/form-validation.service.mjs +381 -0
  241. package/esm2022/form-builder/lib/components/form-builder/services/location.service.mjs +141 -0
  242. package/esm2022/form-builder/lib/components/form-builder/services/nominatim-geocoding.service.mjs +120 -0
  243. package/esm2022/form-builder/lib/components/form-builder/services/wizard-sync.service.mjs +84 -0
  244. package/esm2022/form-builder/lib/components/form-builder/sub-components/error-summary/form-error-summary.component.mjs +190 -0
  245. package/esm2022/form-builder/lib/components/form-builder/sub-components/file-input/file-input.component.mjs +310 -0
  246. package/esm2022/form-builder/lib/components/form-builder/sub-components/form-fields/form-number-field.component.mjs +113 -0
  247. package/esm2022/form-builder/lib/components/form-builder/sub-components/form-fields/form-radio-field.component.mjs +105 -0
  248. package/esm2022/form-builder/lib/components/form-builder/sub-components/form-fields/form-select-field.component.mjs +126 -0
  249. package/esm2022/form-builder/lib/components/form-builder/sub-components/form-fields/form-text-field.component.mjs +147 -0
  250. package/esm2022/form-builder/lib/components/form-builder/sub-components/form-fields/form-textarea-field.component.mjs +99 -0
  251. package/esm2022/form-builder/lib/components/form-builder/sub-components/form-fields/index.mjs +6 -0
  252. package/esm2022/form-builder/lib/components/form-builder/sub-components/location-geocoded/location-geocoded.component.mjs +322 -0
  253. package/esm2022/form-builder/lib/components/form-builder/sub-components/specifica-territoriale/specifica-territoriale.component.mjs +648 -0
  254. package/esm2022/form-builder/lib/components/form-builder/sub-components/table-territoriale/table-territoriale.component.mjs +432 -0
  255. package/esm2022/form-builder/lib/components/form-builder/types/condition.types.mjs +6 -0
  256. package/esm2022/form-builder/lib/components/form-builder/types/field.types.mjs +6 -0
  257. package/esm2022/form-builder/lib/components/form-builder/types/geocoded-location.types.mjs +6 -0
  258. package/esm2022/form-builder/lib/components/form-builder/types/index.mjs +3 -0
  259. package/esm2022/form-builder/lib/components/form-builder/types/schema.types.mjs +6 -0
  260. package/esm2022/form-builder/lib/components/form-builder/types/territoriale.types.mjs +6 -0
  261. package/esm2022/form-builder/lib/components/form-builder/types/validation.types.mjs +10 -0
  262. package/esm2022/form-builder/lib/core/logging/logger.config.mjs +18 -0
  263. package/esm2022/form-builder/lib/core/logging/logger.service.mjs +295 -0
  264. package/esm2022/form-builder/lib/core/logging/logger.types.mjs +7 -0
  265. package/esm2022/form-builder/lib/core/types/index.mjs +6 -0
  266. package/esm2022/form-builder/lib/sources/location-data.opt.json +8942 -0
  267. package/esm2022/form-builder/lib/sources/nazioni.opt.json +215 -0
  268. package/esm2022/form-builder-editor/entry-form-builder-editor.mjs +5 -0
  269. package/esm2022/form-builder-editor/gnggln-ng-ui-system-form-builder-editor.mjs +5 -0
  270. package/esm2022/form-builder-editor/lib/components/accordion/accordion.component.mjs +398 -0
  271. package/esm2022/form-builder-editor/lib/components/accordion/accordion.types.mjs +6 -0
  272. package/esm2022/form-builder-editor/lib/components/accordion/index.mjs +2 -0
  273. package/esm2022/form-builder-editor/lib/components/blackbox/blackbox-fingerprint.service.mjs +116 -0
  274. package/esm2022/form-builder-editor/lib/components/blackbox/blackbox-storage.service.mjs +286 -0
  275. package/esm2022/form-builder-editor/lib/components/blackbox/blackbox.service.mjs +323 -0
  276. package/esm2022/form-builder-editor/lib/components/blackbox/blackbox.types.mjs +25 -0
  277. package/esm2022/form-builder-editor/lib/components/button/button-area.component.mjs +210 -0
  278. package/esm2022/form-builder-editor/lib/components/button/button.component.mjs +180 -0
  279. package/esm2022/form-builder-editor/lib/components/button/button.types.mjs +6 -0
  280. package/esm2022/form-builder-editor/lib/components/button/index.mjs +16 -0
  281. package/esm2022/form-builder-editor/lib/components/form-builder/adapters/it-date-adapter.mjs +82 -0
  282. package/esm2022/form-builder-editor/lib/components/form-builder/directives/currency-input.directive.mjs +184 -0
  283. package/esm2022/form-builder-editor/lib/components/form-builder/form-builder.component.mjs +1351 -0
  284. package/esm2022/form-builder-editor/lib/components/form-builder/services/form-condition.service.mjs +132 -0
  285. package/esm2022/form-builder-editor/lib/components/form-builder/services/form-error-state.matcher.mjs +10 -0
  286. package/esm2022/form-builder-editor/lib/components/form-builder/services/form-field-error.service.mjs +103 -0
  287. package/esm2022/form-builder-editor/lib/components/form-builder/services/form-validation.service.mjs +381 -0
  288. package/esm2022/form-builder-editor/lib/components/form-builder/services/location.service.mjs +141 -0
  289. package/esm2022/form-builder-editor/lib/components/form-builder/services/nominatim-geocoding.service.mjs +120 -0
  290. package/esm2022/form-builder-editor/lib/components/form-builder/sub-components/error-summary/form-error-summary.component.mjs +190 -0
  291. package/esm2022/form-builder-editor/lib/components/form-builder/sub-components/file-input/file-input.component.mjs +310 -0
  292. package/esm2022/form-builder-editor/lib/components/form-builder/sub-components/form-fields/form-number-field.component.mjs +113 -0
  293. package/esm2022/form-builder-editor/lib/components/form-builder/sub-components/form-fields/form-radio-field.component.mjs +105 -0
  294. package/esm2022/form-builder-editor/lib/components/form-builder/sub-components/form-fields/form-select-field.component.mjs +126 -0
  295. package/esm2022/form-builder-editor/lib/components/form-builder/sub-components/form-fields/form-text-field.component.mjs +147 -0
  296. package/esm2022/form-builder-editor/lib/components/form-builder/sub-components/form-fields/form-textarea-field.component.mjs +99 -0
  297. package/esm2022/form-builder-editor/lib/components/form-builder/sub-components/form-fields/index.mjs +6 -0
  298. package/esm2022/form-builder-editor/lib/components/form-builder/sub-components/location-geocoded/location-geocoded.component.mjs +322 -0
  299. package/esm2022/form-builder-editor/lib/components/form-builder/sub-components/specifica-territoriale/specifica-territoriale.component.mjs +648 -0
  300. package/esm2022/form-builder-editor/lib/components/form-builder/sub-components/table-territoriale/table-territoriale.component.mjs +432 -0
  301. package/esm2022/form-builder-editor/lib/components/form-builder/types/condition.types.mjs +6 -0
  302. package/esm2022/form-builder-editor/lib/components/form-builder/types/field.types.mjs +6 -0
  303. package/esm2022/form-builder-editor/lib/components/form-builder/types/geocoded-location.types.mjs +6 -0
  304. package/esm2022/form-builder-editor/lib/components/form-builder/types/index.mjs +3 -0
  305. package/esm2022/form-builder-editor/lib/components/form-builder/types/schema.types.mjs +6 -0
  306. package/esm2022/form-builder-editor/lib/components/form-builder/types/territoriale.types.mjs +6 -0
  307. package/esm2022/form-builder-editor/lib/components/form-builder/types/validation.types.mjs +10 -0
  308. package/esm2022/form-builder-editor/lib/components/form-builder-editor/form-builder-editor.component.mjs +730 -0
  309. package/esm2022/form-builder-editor/lib/components/form-builder-editor/form-builder-editor.service.mjs +56 -0
  310. package/esm2022/form-builder-editor/lib/components/form-builder-editor/index.mjs +23 -0
  311. package/esm2022/form-builder-editor/lib/components/form-builder-editor/presets/editor-presets.mjs +395 -0
  312. package/esm2022/form-builder-editor/lib/components/form-builder-editor/services/editor-persistence.service.mjs +190 -0
  313. package/esm2022/form-builder-editor/lib/components/form-builder-editor/services/editor-state.service.mjs +324 -0
  314. package/esm2022/form-builder-editor/lib/components/form-builder-editor/services/field-factory.service.mjs +188 -0
  315. package/esm2022/form-builder-editor/lib/components/form-builder-editor/sub-components/condition-editor/condition-editor.component.mjs +667 -0
  316. package/esm2022/form-builder-editor/lib/components/form-builder-editor/sub-components/editor-toolbar/editor-toolbar.component.mjs +317 -0
  317. package/esm2022/form-builder-editor/lib/components/form-builder-editor/sub-components/field-config-panel/field-config-panel.component.mjs +611 -0
  318. package/esm2022/form-builder-editor/lib/components/form-builder-editor/sub-components/field-palette/field-palette.component.mjs +267 -0
  319. package/esm2022/form-builder-editor/lib/components/form-builder-editor/sub-components/form-values-panel/form-values-panel.component.mjs +276 -0
  320. package/esm2022/form-builder-editor/lib/components/form-builder-editor/sub-components/options-editor/options-editor.component.mjs +323 -0
  321. package/esm2022/form-builder-editor/lib/components/form-builder-editor/sub-components/preview-container/preview-container.component.mjs +238 -0
  322. package/esm2022/form-builder-editor/lib/components/form-builder-editor/sub-components/section-editor/section-editor.component.mjs +473 -0
  323. package/esm2022/form-builder-editor/lib/components/form-builder-editor/sub-components/validation-editor/validation-editor.component.mjs +473 -0
  324. package/esm2022/form-builder-editor/lib/components/form-builder-editor/types/editor.types.mjs +6 -0
  325. package/esm2022/form-builder-editor/lib/components/modal/confirm-dialog.component.mjs +151 -0
  326. package/esm2022/form-builder-editor/lib/components/modal/index.mjs +4 -0
  327. package/esm2022/form-builder-editor/lib/components/modal/modal.component.mjs +139 -0
  328. package/esm2022/form-builder-editor/lib/components/modal/modal.service.mjs +197 -0
  329. package/esm2022/form-builder-editor/lib/components/modal/modal.types.mjs +6 -0
  330. package/esm2022/form-builder-editor/lib/core/logging/logger.config.mjs +18 -0
  331. package/esm2022/form-builder-editor/lib/core/logging/logger.service.mjs +295 -0
  332. package/esm2022/form-builder-editor/lib/core/logging/logger.types.mjs +7 -0
  333. package/esm2022/form-builder-editor/lib/core/types/index.mjs +6 -0
  334. package/esm2022/form-builder-editor/lib/sources/location-data.opt.json +8942 -0
  335. package/esm2022/form-builder-editor/lib/sources/nazioni.opt.json +215 -0
  336. package/esm2022/http/entry-http.mjs +5 -0
  337. package/esm2022/http/gnggln-ng-ui-system-http.mjs +5 -0
  338. package/esm2022/http/lib/components/blackbox/blackbox-fingerprint.service.mjs +116 -0
  339. package/esm2022/http/lib/components/blackbox/blackbox-storage.service.mjs +286 -0
  340. package/esm2022/http/lib/components/blackbox/blackbox.service.mjs +323 -0
  341. package/esm2022/http/lib/components/blackbox/blackbox.types.mjs +25 -0
  342. package/esm2022/http/lib/components/http/http-message.handler.mjs +143 -0
  343. package/esm2022/http/lib/components/http/http.service.mjs +228 -0
  344. package/esm2022/http/lib/components/http/http.tokens.mjs +29 -0
  345. package/esm2022/http/lib/components/http/http.types.mjs +6 -0
  346. package/esm2022/http/lib/components/http/index.mjs +19 -0
  347. package/esm2022/http/lib/components/layout-builder/layout-builder.types.mjs +9 -0
  348. package/esm2022/http/lib/components/layout-builder/layout.service.mjs +239 -0
  349. package/esm2022/http/lib/components/toast/toast-container.component.mjs +80 -0
  350. package/esm2022/http/lib/components/toast/toast.component.mjs +151 -0
  351. package/esm2022/http/lib/components/toast/toast.service.mjs +156 -0
  352. package/esm2022/http/lib/components/toast/toast.types.mjs +12 -0
  353. package/esm2022/http/lib/core/types/index.mjs +6 -0
  354. package/esm2022/http/lib/core/utils/index.mjs +102 -0
  355. package/esm2022/layout-builder/entry-layout-builder.mjs +5 -0
  356. package/esm2022/layout-builder/gnggln-ng-ui-system-layout-builder.mjs +5 -0
  357. package/esm2022/layout-builder/lib/components/layout-builder/index.mjs +18 -0
  358. package/esm2022/layout-builder/lib/components/layout-builder/layout-builder.component.mjs +1804 -0
  359. package/esm2022/layout-builder/lib/components/layout-builder/layout-builder.types.mjs +9 -0
  360. package/esm2022/layout-builder/lib/components/layout-builder/layout.service.mjs +239 -0
  361. package/esm2022/layout-builder/lib/core/types/index.mjs +6 -0
  362. package/esm2022/lib/components/accordion/accordion.component.mjs +106 -61
  363. package/esm2022/lib/components/accordion/accordion.types.mjs +1 -1
  364. package/esm2022/lib/components/base-layout/base-layout.component.mjs +88 -34
  365. package/esm2022/lib/components/base-layout/base-layout.types.mjs +1 -1
  366. package/esm2022/lib/components/base-layout/index.mjs +1 -1
  367. package/esm2022/lib/components/blackbox/blackbox-debugger.component.mjs +904 -0
  368. package/esm2022/lib/components/blackbox/blackbox-debugger.service.mjs +51 -0
  369. package/esm2022/lib/components/blackbox/blackbox-fingerprint.service.mjs +116 -0
  370. package/esm2022/lib/components/blackbox/blackbox-json-viewer.component.mjs +66 -0
  371. package/esm2022/lib/components/blackbox/blackbox-storage.service.mjs +286 -0
  372. package/esm2022/lib/components/blackbox/blackbox.interceptor.mjs +135 -0
  373. package/esm2022/lib/components/blackbox/blackbox.service.mjs +323 -0
  374. package/esm2022/lib/components/blackbox/blackbox.types.mjs +25 -0
  375. package/esm2022/lib/components/blackbox/index.mjs +27 -0
  376. package/esm2022/lib/components/blackbox/ui-track.directive.mjs +69 -0
  377. package/esm2022/lib/components/button/button-area.component.mjs +16 -2
  378. package/esm2022/lib/components/button/button.component.mjs +23 -7
  379. package/esm2022/lib/components/button/button.types.mjs +1 -1
  380. package/esm2022/lib/components/crud-table/crud-table.component.mjs +14 -14
  381. package/esm2022/lib/components/form-builder/form-builder.component.mjs +710 -183
  382. package/esm2022/lib/components/form-builder/form-wizard.component.mjs +789 -235
  383. package/esm2022/lib/components/form-builder/index.mjs +7 -2
  384. package/esm2022/lib/components/form-builder/services/form-error-state.matcher.mjs +10 -0
  385. package/esm2022/lib/components/form-builder/services/form-field-error.service.mjs +103 -0
  386. package/esm2022/lib/components/form-builder/services/location.service.mjs +4 -3
  387. package/esm2022/lib/components/form-builder/services/nominatim-geocoding.service.mjs +120 -0
  388. package/esm2022/lib/components/form-builder/sub-components/error-summary/form-error-summary.component.mjs +142 -113
  389. package/esm2022/lib/components/form-builder/sub-components/form-fields/form-number-field.component.mjs +113 -0
  390. package/esm2022/lib/components/form-builder/sub-components/form-fields/form-radio-field.component.mjs +105 -0
  391. package/esm2022/lib/components/form-builder/sub-components/form-fields/form-select-field.component.mjs +126 -0
  392. package/esm2022/lib/components/form-builder/sub-components/form-fields/form-text-field.component.mjs +147 -0
  393. package/esm2022/lib/components/form-builder/sub-components/form-fields/form-textarea-field.component.mjs +99 -0
  394. package/esm2022/lib/components/form-builder/sub-components/form-fields/index.mjs +6 -0
  395. package/esm2022/lib/components/form-builder/sub-components/location-geocoded/location-geocoded.component.mjs +322 -0
  396. package/esm2022/lib/components/form-builder/sub-components/table-territoriale/table-territoriale.component.mjs +3 -3
  397. package/esm2022/lib/components/form-builder/types/field.types.mjs +1 -1
  398. package/esm2022/lib/components/form-builder/types/geocoded-location.types.mjs +6 -0
  399. package/esm2022/lib/components/form-builder/types/index.mjs +3 -2
  400. package/esm2022/lib/components/form-builder/types/schema.types.mjs +1 -1
  401. package/esm2022/lib/components/form-builder/types/validation.types.mjs +6 -2
  402. package/esm2022/lib/components/form-builder-editor/form-builder-editor.component.mjs +3 -3
  403. package/esm2022/lib/components/form-builder-editor/index.mjs +3 -1
  404. package/esm2022/lib/components/form-builder-editor/presets/editor-presets.mjs +395 -0
  405. package/esm2022/lib/components/form-builder-editor/sub-components/preview-container/preview-container.component.mjs +2 -2
  406. package/esm2022/lib/components/form-builder-editor/sub-components/section-editor/section-editor.component.mjs +2 -1
  407. package/esm2022/lib/components/http/http-message.handler.mjs +143 -0
  408. package/esm2022/lib/components/http/http.service.mjs +228 -0
  409. package/esm2022/lib/components/http/http.tokens.mjs +29 -0
  410. package/esm2022/lib/components/http/http.types.mjs +6 -0
  411. package/esm2022/lib/components/http/index.mjs +19 -0
  412. package/esm2022/lib/components/layout-builder/layout-builder.component.mjs +27 -15
  413. package/esm2022/lib/components/modal/confirm-dialog.component.mjs +3 -3
  414. package/esm2022/lib/components/modal/modal.service.mjs +5 -2
  415. package/esm2022/lib/components/page-header/breadcrumb.service.mjs +5 -4
  416. package/esm2022/lib/components/table/paginated-table.component.mjs +17 -3
  417. package/esm2022/lib/components/table/table.types.mjs +1 -1
  418. package/esm2022/lib/components/toast/index.mjs +18 -0
  419. package/esm2022/lib/components/toast/toast-container.component.mjs +80 -0
  420. package/esm2022/lib/components/toast/toast.component.mjs +151 -0
  421. package/esm2022/lib/components/toast/toast.service.mjs +156 -0
  422. package/esm2022/lib/components/toast/toast.types.mjs +12 -0
  423. package/esm2022/lib/core/logging/index.mjs +10 -0
  424. package/esm2022/lib/core/logging/logger.config.mjs +18 -0
  425. package/esm2022/lib/core/logging/logger.service.mjs +295 -0
  426. package/esm2022/lib/core/logging/logger.types.mjs +7 -0
  427. package/esm2022/lib/core/types/index.mjs +1 -1
  428. package/esm2022/lib/core/utils/index.mjs +50 -1
  429. package/esm2022/lib/version/ng-ui-system-version.mjs +12 -0
  430. package/esm2022/modal/entry-modal.mjs +5 -0
  431. package/esm2022/modal/gnggln-ng-ui-system-modal.mjs +5 -0
  432. package/esm2022/modal/lib/components/button/button.component.mjs +180 -0
  433. package/esm2022/modal/lib/components/button/button.types.mjs +6 -0
  434. package/esm2022/modal/lib/components/modal/confirm-dialog.component.mjs +151 -0
  435. package/esm2022/modal/lib/components/modal/index.mjs +4 -0
  436. package/esm2022/modal/lib/components/modal/modal.component.mjs +139 -0
  437. package/esm2022/modal/lib/components/modal/modal.service.mjs +197 -0
  438. package/esm2022/modal/lib/components/modal/modal.types.mjs +6 -0
  439. package/esm2022/modal/lib/core/types/index.mjs +6 -0
  440. package/esm2022/page-header/entry-page-header.mjs +5 -0
  441. package/esm2022/page-header/gnggln-ng-ui-system-page-header.mjs +5 -0
  442. package/esm2022/page-header/lib/components/page-header/breadcrumb.service.mjs +243 -0
  443. package/esm2022/page-header/lib/components/page-header/index.mjs +20 -0
  444. package/esm2022/page-header/lib/components/page-header/page-header.component.mjs +243 -0
  445. package/esm2022/page-header/lib/components/page-header/page-header.types.mjs +21 -0
  446. package/esm2022/public-api.mjs +17 -8
  447. package/esm2022/table/entry-table.mjs +5 -0
  448. package/esm2022/table/gnggln-ng-ui-system-table.mjs +5 -0
  449. package/esm2022/table/lib/components/table/index.mjs +2 -0
  450. package/esm2022/table/lib/components/table/paginated-table.component.mjs +421 -0
  451. package/esm2022/table/lib/components/table/table.types.mjs +6 -0
  452. package/esm2022/table/lib/core/utils/index.mjs +102 -0
  453. package/esm2022/toast/entry-toast.mjs +5 -0
  454. package/esm2022/toast/gnggln-ng-ui-system-toast.mjs +5 -0
  455. package/esm2022/toast/lib/components/toast/index.mjs +18 -0
  456. package/esm2022/toast/lib/components/toast/toast-container.component.mjs +80 -0
  457. package/esm2022/toast/lib/components/toast/toast.component.mjs +151 -0
  458. package/esm2022/toast/lib/components/toast/toast.service.mjs +156 -0
  459. package/esm2022/toast/lib/components/toast/toast.types.mjs +12 -0
  460. package/esm2022/toast/lib/core/types/index.mjs +6 -0
  461. package/esm2022/toast/lib/core/utils/index.mjs +102 -0
  462. package/fesm2022/gnggln-ng-ui-system-accordion.mjs +409 -0
  463. package/fesm2022/gnggln-ng-ui-system-accordion.mjs.map +1 -0
  464. package/fesm2022/gnggln-ng-ui-system-base-layout.mjs +1905 -0
  465. package/fesm2022/gnggln-ng-ui-system-base-layout.mjs.map +1 -0
  466. package/fesm2022/gnggln-ng-ui-system-blackbox.mjs +2829 -0
  467. package/fesm2022/gnggln-ng-ui-system-blackbox.mjs.map +1 -0
  468. package/fesm2022/gnggln-ng-ui-system-button.mjs +1148 -0
  469. package/fesm2022/gnggln-ng-ui-system-button.mjs.map +1 -0
  470. package/fesm2022/gnggln-ng-ui-system-core.mjs +117 -0
  471. package/fesm2022/gnggln-ng-ui-system-core.mjs.map +1 -0
  472. package/fesm2022/gnggln-ng-ui-system-crud-table.mjs +49600 -0
  473. package/fesm2022/gnggln-ng-ui-system-crud-table.mjs.map +1 -0
  474. package/fesm2022/gnggln-ng-ui-system-form-builder-editor.mjs +54332 -0
  475. package/fesm2022/gnggln-ng-ui-system-form-builder-editor.mjs.map +1 -0
  476. package/fesm2022/gnggln-ng-ui-system-form-builder.mjs +49609 -0
  477. package/fesm2022/gnggln-ng-ui-system-form-builder.mjs.map +1 -0
  478. package/fesm2022/gnggln-ng-ui-system-http.mjs +1878 -0
  479. package/fesm2022/gnggln-ng-ui-system-http.mjs.map +1 -0
  480. package/fesm2022/gnggln-ng-ui-system-layout-builder.mjs +2064 -0
  481. package/fesm2022/gnggln-ng-ui-system-layout-builder.mjs.map +1 -0
  482. package/fesm2022/gnggln-ng-ui-system-modal.mjs +664 -0
  483. package/fesm2022/gnggln-ng-ui-system-modal.mjs.map +1 -0
  484. package/fesm2022/gnggln-ng-ui-system-page-header.mjs +526 -0
  485. package/fesm2022/gnggln-ng-ui-system-page-header.mjs.map +1 -0
  486. package/fesm2022/gnggln-ng-ui-system-table.mjs +533 -0
  487. package/fesm2022/gnggln-ng-ui-system-table.mjs.map +1 -0
  488. package/fesm2022/gnggln-ng-ui-system-toast.mjs +516 -0
  489. package/fesm2022/gnggln-ng-ui-system-toast.mjs.map +1 -0
  490. package/fesm2022/gnggln-ng-ui-system.mjs +10068 -4234
  491. package/fesm2022/gnggln-ng-ui-system.mjs.map +1 -1
  492. package/form-builder/entry-form-builder.d.ts +4 -0
  493. package/form-builder/index.d.ts +5 -0
  494. package/form-builder/lib/components/accordion/accordion.component.d.ts +125 -0
  495. package/form-builder/lib/components/accordion/accordion.types.d.ts +64 -0
  496. package/form-builder/lib/components/accordion/index.d.ts +2 -0
  497. package/form-builder/lib/components/blackbox/blackbox-fingerprint.service.d.ts +36 -0
  498. package/form-builder/lib/components/blackbox/blackbox-storage.service.d.ts +55 -0
  499. package/form-builder/lib/components/blackbox/blackbox.service.d.ts +144 -0
  500. package/form-builder/lib/components/blackbox/blackbox.types.d.ts +238 -0
  501. package/form-builder/lib/components/button/button-area.component.d.ts +93 -0
  502. package/form-builder/lib/components/button/button.component.d.ts +61 -0
  503. package/form-builder/lib/components/button/button.types.d.ts +75 -0
  504. package/form-builder/lib/components/button/index.d.ts +15 -0
  505. package/form-builder/lib/components/form-builder/adapters/it-date-adapter.d.ts +32 -0
  506. package/form-builder/lib/components/form-builder/directives/currency-input.directive.d.ts +48 -0
  507. package/form-builder/lib/components/form-builder/form-builder.component.d.ts +279 -0
  508. package/form-builder/lib/components/form-builder/form-wizard.component.d.ts +172 -0
  509. package/form-builder/lib/components/form-builder/index.d.ts +19 -0
  510. package/form-builder/lib/components/form-builder/services/form-condition.service.d.ts +46 -0
  511. package/form-builder/lib/components/form-builder/services/form-error-state.matcher.d.ts +9 -0
  512. package/form-builder/lib/components/form-builder/services/form-field-error.service.d.ts +38 -0
  513. package/form-builder/lib/components/form-builder/services/form-validation.service.d.ts +63 -0
  514. package/form-builder/lib/components/form-builder/services/location.service.d.ts +83 -0
  515. package/form-builder/lib/components/form-builder/services/nominatim-geocoding.service.d.ts +37 -0
  516. package/form-builder/lib/components/form-builder/services/wizard-sync.service.d.ts +63 -0
  517. package/form-builder/lib/components/form-builder/sub-components/error-summary/form-error-summary.component.d.ts +31 -0
  518. package/form-builder/lib/components/form-builder/sub-components/file-input/file-input.component.d.ts +41 -0
  519. package/form-builder/lib/components/form-builder/sub-components/form-fields/form-number-field.component.d.ts +42 -0
  520. package/form-builder/lib/components/form-builder/sub-components/form-fields/form-radio-field.component.d.ts +45 -0
  521. package/form-builder/lib/components/form-builder/sub-components/form-fields/form-select-field.component.d.ts +44 -0
  522. package/form-builder/lib/components/form-builder/sub-components/form-fields/form-text-field.component.d.ts +62 -0
  523. package/form-builder/lib/components/form-builder/sub-components/form-fields/form-textarea-field.component.d.ts +39 -0
  524. package/form-builder/lib/components/form-builder/sub-components/form-fields/index.d.ts +5 -0
  525. package/form-builder/lib/components/form-builder/sub-components/location-geocoded/location-geocoded.component.d.ts +84 -0
  526. package/form-builder/lib/components/form-builder/sub-components/specifica-territoriale/specifica-territoriale.component.d.ts +145 -0
  527. package/form-builder/lib/components/form-builder/sub-components/table-territoriale/table-territoriale.component.d.ts +108 -0
  528. package/form-builder/lib/components/form-builder/types/condition.types.d.ts +51 -0
  529. package/form-builder/lib/components/form-builder/types/field.types.d.ts +330 -0
  530. package/form-builder/lib/components/form-builder/types/geocoded-location.types.d.ts +116 -0
  531. package/form-builder/lib/components/form-builder/types/index.d.ts +6 -0
  532. package/form-builder/lib/components/form-builder/types/schema.types.d.ts +304 -0
  533. package/form-builder/lib/components/form-builder/types/territoriale.types.d.ts +170 -0
  534. package/form-builder/lib/components/form-builder/types/validation.types.d.ts +179 -0
  535. package/form-builder/lib/core/logging/logger.config.d.ts +18 -0
  536. package/form-builder/lib/core/logging/logger.service.d.ts +75 -0
  537. package/form-builder/lib/core/logging/logger.types.d.ts +70 -0
  538. package/form-builder/lib/core/types/index.d.ts +133 -0
  539. package/form-builder-editor/entry-form-builder-editor.d.ts +4 -0
  540. package/form-builder-editor/index.d.ts +5 -0
  541. package/form-builder-editor/lib/components/accordion/accordion.component.d.ts +125 -0
  542. package/form-builder-editor/lib/components/accordion/accordion.types.d.ts +64 -0
  543. package/form-builder-editor/lib/components/accordion/index.d.ts +2 -0
  544. package/form-builder-editor/lib/components/blackbox/blackbox-fingerprint.service.d.ts +36 -0
  545. package/form-builder-editor/lib/components/blackbox/blackbox-storage.service.d.ts +55 -0
  546. package/form-builder-editor/lib/components/blackbox/blackbox.service.d.ts +144 -0
  547. package/form-builder-editor/lib/components/blackbox/blackbox.types.d.ts +238 -0
  548. package/form-builder-editor/lib/components/button/button-area.component.d.ts +93 -0
  549. package/form-builder-editor/lib/components/button/button.component.d.ts +61 -0
  550. package/form-builder-editor/lib/components/button/button.types.d.ts +75 -0
  551. package/form-builder-editor/lib/components/button/index.d.ts +15 -0
  552. package/form-builder-editor/lib/components/form-builder/adapters/it-date-adapter.d.ts +32 -0
  553. package/form-builder-editor/lib/components/form-builder/directives/currency-input.directive.d.ts +48 -0
  554. package/form-builder-editor/lib/components/form-builder/form-builder.component.d.ts +279 -0
  555. package/form-builder-editor/lib/components/form-builder/services/form-condition.service.d.ts +46 -0
  556. package/form-builder-editor/lib/components/form-builder/services/form-error-state.matcher.d.ts +9 -0
  557. package/form-builder-editor/lib/components/form-builder/services/form-field-error.service.d.ts +38 -0
  558. package/form-builder-editor/lib/components/form-builder/services/form-validation.service.d.ts +63 -0
  559. package/form-builder-editor/lib/components/form-builder/services/location.service.d.ts +83 -0
  560. package/form-builder-editor/lib/components/form-builder/services/nominatim-geocoding.service.d.ts +37 -0
  561. package/form-builder-editor/lib/components/form-builder/sub-components/error-summary/form-error-summary.component.d.ts +31 -0
  562. package/form-builder-editor/lib/components/form-builder/sub-components/file-input/file-input.component.d.ts +41 -0
  563. package/form-builder-editor/lib/components/form-builder/sub-components/form-fields/form-number-field.component.d.ts +42 -0
  564. package/form-builder-editor/lib/components/form-builder/sub-components/form-fields/form-radio-field.component.d.ts +45 -0
  565. package/form-builder-editor/lib/components/form-builder/sub-components/form-fields/form-select-field.component.d.ts +44 -0
  566. package/form-builder-editor/lib/components/form-builder/sub-components/form-fields/form-text-field.component.d.ts +62 -0
  567. package/form-builder-editor/lib/components/form-builder/sub-components/form-fields/form-textarea-field.component.d.ts +39 -0
  568. package/form-builder-editor/lib/components/form-builder/sub-components/form-fields/index.d.ts +5 -0
  569. package/form-builder-editor/lib/components/form-builder/sub-components/location-geocoded/location-geocoded.component.d.ts +84 -0
  570. package/form-builder-editor/lib/components/form-builder/sub-components/specifica-territoriale/specifica-territoriale.component.d.ts +145 -0
  571. package/form-builder-editor/lib/components/form-builder/sub-components/table-territoriale/table-territoriale.component.d.ts +108 -0
  572. package/form-builder-editor/lib/components/form-builder/types/condition.types.d.ts +51 -0
  573. package/form-builder-editor/lib/components/form-builder/types/field.types.d.ts +330 -0
  574. package/form-builder-editor/lib/components/form-builder/types/geocoded-location.types.d.ts +116 -0
  575. package/form-builder-editor/lib/components/form-builder/types/index.d.ts +6 -0
  576. package/form-builder-editor/lib/components/form-builder/types/schema.types.d.ts +304 -0
  577. package/form-builder-editor/lib/components/form-builder/types/territoriale.types.d.ts +170 -0
  578. package/form-builder-editor/lib/components/form-builder/types/validation.types.d.ts +179 -0
  579. package/form-builder-editor/lib/components/form-builder-editor/form-builder-editor.component.d.ts +117 -0
  580. package/form-builder-editor/lib/components/form-builder-editor/form-builder-editor.service.d.ts +38 -0
  581. package/form-builder-editor/lib/components/form-builder-editor/index.d.ts +17 -0
  582. package/form-builder-editor/lib/components/form-builder-editor/presets/editor-presets.d.ts +25 -0
  583. package/form-builder-editor/lib/components/form-builder-editor/services/editor-persistence.service.d.ts +42 -0
  584. package/form-builder-editor/lib/components/form-builder-editor/services/editor-state.service.d.ts +66 -0
  585. package/form-builder-editor/lib/components/form-builder-editor/services/field-factory.service.d.ts +28 -0
  586. package/form-builder-editor/lib/components/form-builder-editor/sub-components/condition-editor/condition-editor.component.d.ts +139 -0
  587. package/form-builder-editor/lib/components/form-builder-editor/sub-components/editor-toolbar/editor-toolbar.component.d.ts +43 -0
  588. package/form-builder-editor/lib/components/form-builder-editor/sub-components/field-config-panel/field-config-panel.component.d.ts +83 -0
  589. package/form-builder-editor/lib/components/form-builder-editor/sub-components/field-palette/field-palette.component.d.ts +40 -0
  590. package/form-builder-editor/lib/components/form-builder-editor/sub-components/form-values-panel/form-values-panel.component.d.ts +51 -0
  591. package/form-builder-editor/lib/components/form-builder-editor/sub-components/options-editor/options-editor.component.d.ts +63 -0
  592. package/form-builder-editor/lib/components/form-builder-editor/sub-components/preview-container/preview-container.component.d.ts +68 -0
  593. package/form-builder-editor/lib/components/form-builder-editor/sub-components/section-editor/section-editor.component.d.ts +82 -0
  594. package/form-builder-editor/lib/components/form-builder-editor/sub-components/validation-editor/validation-editor.component.d.ts +112 -0
  595. package/form-builder-editor/lib/components/form-builder-editor/types/editor.types.d.ts +124 -0
  596. package/form-builder-editor/lib/components/modal/confirm-dialog.component.d.ts +46 -0
  597. package/form-builder-editor/lib/components/modal/index.d.ts +4 -0
  598. package/form-builder-editor/lib/components/modal/modal.component.d.ts +44 -0
  599. package/form-builder-editor/lib/components/modal/modal.service.d.ts +93 -0
  600. package/form-builder-editor/lib/components/modal/modal.types.d.ts +110 -0
  601. package/form-builder-editor/lib/core/logging/logger.config.d.ts +18 -0
  602. package/form-builder-editor/lib/core/logging/logger.service.d.ts +75 -0
  603. package/form-builder-editor/lib/core/logging/logger.types.d.ts +70 -0
  604. package/form-builder-editor/lib/core/types/index.d.ts +133 -0
  605. package/http/entry-http.d.ts +4 -0
  606. package/http/index.d.ts +5 -0
  607. package/http/lib/components/blackbox/blackbox-fingerprint.service.d.ts +36 -0
  608. package/http/lib/components/blackbox/blackbox-storage.service.d.ts +55 -0
  609. package/http/lib/components/blackbox/blackbox.service.d.ts +144 -0
  610. package/http/lib/components/blackbox/blackbox.types.d.ts +238 -0
  611. package/http/lib/components/http/http-message.handler.d.ts +59 -0
  612. package/http/lib/components/http/http.service.d.ts +98 -0
  613. package/http/lib/components/http/http.tokens.d.ts +29 -0
  614. package/http/lib/components/http/http.types.d.ts +50 -0
  615. package/http/lib/components/http/index.d.ts +17 -0
  616. package/http/lib/components/layout-builder/layout-builder.types.d.ts +436 -0
  617. package/http/lib/components/layout-builder/layout.service.d.ts +100 -0
  618. package/http/lib/components/toast/toast-container.component.d.ts +27 -0
  619. package/http/lib/components/toast/toast.component.d.ts +37 -0
  620. package/http/lib/components/toast/toast.service.d.ts +39 -0
  621. package/http/lib/components/toast/toast.types.d.ts +52 -0
  622. package/http/lib/core/types/index.d.ts +133 -0
  623. package/http/lib/core/utils/index.d.ts +60 -0
  624. package/layout-builder/entry-layout-builder.d.ts +4 -0
  625. package/layout-builder/index.d.ts +5 -0
  626. package/layout-builder/lib/components/layout-builder/index.d.ts +16 -0
  627. package/layout-builder/lib/components/layout-builder/layout-builder.component.d.ts +85 -0
  628. package/layout-builder/lib/components/layout-builder/layout-builder.types.d.ts +436 -0
  629. package/layout-builder/lib/components/layout-builder/layout.service.d.ts +100 -0
  630. package/layout-builder/lib/core/types/index.d.ts +133 -0
  631. package/lib/components/accordion/accordion.component.d.ts +10 -3
  632. package/lib/components/accordion/accordion.types.d.ts +2 -0
  633. package/lib/components/base-layout/base-layout.component.d.ts +36 -11
  634. package/lib/components/base-layout/base-layout.types.d.ts +14 -0
  635. package/lib/components/base-layout/index.d.ts +1 -1
  636. package/lib/components/blackbox/blackbox-debugger.component.d.ts +80 -0
  637. package/lib/components/blackbox/blackbox-debugger.service.d.ts +34 -0
  638. package/lib/components/blackbox/blackbox-fingerprint.service.d.ts +36 -0
  639. package/lib/components/blackbox/blackbox-json-viewer.component.d.ts +18 -0
  640. package/lib/components/blackbox/blackbox-storage.service.d.ts +55 -0
  641. package/lib/components/blackbox/blackbox.interceptor.d.ts +38 -0
  642. package/lib/components/blackbox/blackbox.service.d.ts +144 -0
  643. package/lib/components/blackbox/blackbox.types.d.ts +238 -0
  644. package/lib/components/blackbox/index.d.ts +23 -0
  645. package/lib/components/blackbox/ui-track.directive.d.ts +20 -0
  646. package/lib/components/button/button-area.component.d.ts +6 -1
  647. package/lib/components/button/button.component.d.ts +8 -2
  648. package/lib/components/button/button.types.d.ts +5 -0
  649. package/lib/components/form-builder/form-builder.component.d.ts +125 -29
  650. package/lib/components/form-builder/form-wizard.component.d.ts +89 -4
  651. package/lib/components/form-builder/index.d.ts +7 -1
  652. package/lib/components/form-builder/services/form-error-state.matcher.d.ts +9 -0
  653. package/lib/components/form-builder/services/form-field-error.service.d.ts +38 -0
  654. package/lib/components/form-builder/services/nominatim-geocoding.service.d.ts +37 -0
  655. package/lib/components/form-builder/sub-components/error-summary/form-error-summary.component.d.ts +9 -6
  656. package/lib/components/form-builder/sub-components/form-fields/form-number-field.component.d.ts +42 -0
  657. package/lib/components/form-builder/sub-components/form-fields/form-radio-field.component.d.ts +45 -0
  658. package/lib/components/form-builder/sub-components/form-fields/form-select-field.component.d.ts +44 -0
  659. package/lib/components/form-builder/sub-components/form-fields/form-text-field.component.d.ts +62 -0
  660. package/lib/components/form-builder/sub-components/form-fields/form-textarea-field.component.d.ts +39 -0
  661. package/lib/components/form-builder/sub-components/form-fields/index.d.ts +5 -0
  662. package/lib/components/form-builder/sub-components/location-geocoded/location-geocoded.component.d.ts +84 -0
  663. package/lib/components/form-builder/types/field.types.d.ts +48 -6
  664. package/lib/components/form-builder/types/geocoded-location.types.d.ts +116 -0
  665. package/lib/components/form-builder/types/index.d.ts +4 -3
  666. package/lib/components/form-builder/types/schema.types.d.ts +83 -6
  667. package/lib/components/form-builder/types/validation.types.d.ts +5 -0
  668. package/lib/components/form-builder-editor/index.d.ts +2 -0
  669. package/lib/components/form-builder-editor/presets/editor-presets.d.ts +25 -0
  670. package/lib/components/http/http-message.handler.d.ts +59 -0
  671. package/lib/components/http/http.service.d.ts +98 -0
  672. package/lib/components/http/http.tokens.d.ts +29 -0
  673. package/lib/components/http/http.types.d.ts +50 -0
  674. package/lib/components/http/index.d.ts +17 -0
  675. package/lib/components/page-header/breadcrumb.service.d.ts +2 -2
  676. package/lib/components/table/table.types.d.ts +5 -0
  677. package/lib/components/toast/index.d.ts +17 -0
  678. package/lib/components/toast/toast-container.component.d.ts +27 -0
  679. package/lib/components/toast/toast.component.d.ts +37 -0
  680. package/lib/components/toast/toast.service.d.ts +39 -0
  681. package/lib/components/toast/toast.types.d.ts +52 -0
  682. package/lib/core/logging/index.d.ts +8 -0
  683. package/lib/core/logging/logger.config.d.ts +18 -0
  684. package/lib/core/logging/logger.service.d.ts +75 -0
  685. package/lib/core/logging/logger.types.d.ts +70 -0
  686. package/lib/core/types/index.d.ts +76 -0
  687. package/lib/core/utils/index.d.ts +31 -0
  688. package/lib/version/ng-ui-system-version.d.ts +9 -0
  689. package/modal/entry-modal.d.ts +4 -0
  690. package/modal/index.d.ts +5 -0
  691. package/modal/lib/components/button/button.component.d.ts +61 -0
  692. package/modal/lib/components/button/button.types.d.ts +75 -0
  693. package/modal/lib/components/modal/confirm-dialog.component.d.ts +46 -0
  694. package/modal/lib/components/modal/index.d.ts +4 -0
  695. package/modal/lib/components/modal/modal.component.d.ts +44 -0
  696. package/modal/lib/components/modal/modal.service.d.ts +93 -0
  697. package/modal/lib/components/modal/modal.types.d.ts +110 -0
  698. package/modal/lib/core/types/index.d.ts +133 -0
  699. package/package.json +93 -8
  700. package/page-header/entry-page-header.d.ts +4 -0
  701. package/page-header/index.d.ts +5 -0
  702. package/page-header/lib/components/page-header/breadcrumb.service.d.ts +96 -0
  703. package/page-header/lib/components/page-header/index.d.ts +16 -0
  704. package/page-header/lib/components/page-header/page-header.component.d.ts +59 -0
  705. package/page-header/lib/components/page-header/page-header.types.d.ts +96 -0
  706. package/public-api.d.ts +11 -6
  707. package/table/entry-table.d.ts +4 -0
  708. package/table/index.d.ts +5 -0
  709. package/table/lib/components/table/index.d.ts +2 -0
  710. package/table/lib/components/table/paginated-table.component.d.ts +85 -0
  711. package/table/lib/components/table/table.types.d.ts +86 -0
  712. package/table/lib/core/utils/index.d.ts +60 -0
  713. package/toast/entry-toast.d.ts +4 -0
  714. package/toast/index.d.ts +5 -0
  715. package/toast/lib/components/toast/index.d.ts +17 -0
  716. package/toast/lib/components/toast/toast-container.component.d.ts +27 -0
  717. package/toast/lib/components/toast/toast.component.d.ts +37 -0
  718. package/toast/lib/components/toast/toast.service.d.ts +39 -0
  719. package/toast/lib/components/toast/toast.types.d.ts +52 -0
  720. package/toast/lib/core/types/index.d.ts +133 -0
  721. package/toast/lib/core/utils/index.d.ts +60 -0
@@ -0,0 +1,243 @@
1
+ /** biome-ignore-all lint/complexity/useLiteralKeys: <explanation> */
2
+ import { Injectable, inject } from '@angular/core';
3
+ import { NavigationEnd, Router } from '@angular/router';
4
+ import { filter } from 'rxjs/operators';
5
+ import { UI_BREADCRUMB_LABEL_RESOLVER, } from './page-header.types';
6
+ import * as i0 from "@angular/core";
7
+ /**
8
+ * Service that builds a nested breadcrumb trail from Angular route configuration.
9
+ *
10
+ * Routes must define `data.id`, `data.title`, and optionally `data.breadcrumbs`
11
+ * (an array of parent route IDs) for the chain to resolve correctly.
12
+ *
13
+ * Supports lazy-loaded routes: the internal route map is rebuilt automatically
14
+ * whenever new routes are loaded via `NavigationEnd`.
15
+ *
16
+ * Label resolution for route parameters (`:param`) is delegated to an injectable
17
+ * `UiLabelResolverFn` via the `UI_BREADCRUMB_LABEL_RESOLVER` token.
18
+ *
19
+ * @usageNotes
20
+ * ### Route configuration
21
+ * ```typescript
22
+ * const routes: Routes = [
23
+ * {
24
+ * path: 'users',
25
+ * data: { id: 'users', title: 'Utenti' },
26
+ * children: [
27
+ * {
28
+ * path: ':userId',
29
+ * data: { id: 'user-detail', title: ':userId', breadcrumbs: ['users'] },
30
+ * component: UserDetailComponent,
31
+ * },
32
+ * ],
33
+ * },
34
+ * ];
35
+ * ```
36
+ *
37
+ * ### Custom label resolver
38
+ * ```typescript
39
+ * providers: [
40
+ * {
41
+ * provide: UI_BREADCRUMB_LABEL_RESOLVER,
42
+ * useValue: (name: string, value: string) =>
43
+ * name === 'userId' ? `User #${value}` : value,
44
+ * },
45
+ * ]
46
+ * ```
47
+ */
48
+ export class UiBreadcrumbService {
49
+ constructor() {
50
+ this.router = inject(Router);
51
+ this.labelResolver = inject(UI_BREADCRUMB_LABEL_RESOLVER);
52
+ /** @internal Map of route ID → breadcrumb configuration. */
53
+ this.breadcrumbMap = new Map();
54
+ /** @internal Tracks route count to detect lazy-loaded route additions. */
55
+ this.lastRouteConfigLength = 0;
56
+ /** @internal Last computed breadcrumbs for navigateBack. */
57
+ this.lastBreadcrumbs = [];
58
+ this.rebuildRouteMap();
59
+ this.router.events
60
+ .pipe(filter((event) => event instanceof NavigationEnd))
61
+ .subscribe(() => this.rebuildRouteMapIfNeeded());
62
+ }
63
+ /**
64
+ * Computes the breadcrumb trail for the currently active route.
65
+ *
66
+ * @param route - The root `ActivatedRoute` (typically injected in the component).
67
+ * @returns Ordered array of breadcrumb items from root to current route.
68
+ */
69
+ getBreadcrumbsForRoute(route) {
70
+ let deepestRoute = route;
71
+ while (deepestRoute.firstChild) {
72
+ deepestRoute = deepestRoute.firstChild;
73
+ }
74
+ let routeWithId = deepestRoute;
75
+ while (routeWithId && !routeWithId.snapshot.data['id']) {
76
+ routeWithId = routeWithId.parent;
77
+ }
78
+ const routeId = routeWithId?.snapshot.data['id'];
79
+ if (!routeId) {
80
+ this.lastBreadcrumbs = [];
81
+ return [];
82
+ }
83
+ const params = this.collectParamsFromPath(deepestRoute);
84
+ const breadcrumbs = this.buildBreadcrumbChain(routeId, params);
85
+ this.lastBreadcrumbs = breadcrumbs;
86
+ return breadcrumbs;
87
+ }
88
+ /**
89
+ * Navigates to the previous breadcrumb (parent route).
90
+ * Falls back to `fallbackUrl` (default: `/`) when no parent exists.
91
+ */
92
+ navigateBack(fallbackUrl = '/') {
93
+ const prev = this.lastBreadcrumbs.length > 1 ? this.lastBreadcrumbs[this.lastBreadcrumbs.length - 2] : null;
94
+ const target = prev?.url ?? fallbackUrl;
95
+ this.router.navigateByUrl(target);
96
+ }
97
+ /** @internal Collects all route params from the full path (including parents). */
98
+ collectParamsFromPath(route) {
99
+ const params = {};
100
+ for (const r of route.pathFromRoot) {
101
+ Object.assign(params, r.snapshot.params);
102
+ }
103
+ return params;
104
+ }
105
+ // ─── Private helpers ─────────────────────────────────────────────
106
+ /** @internal Rebuilds the map only when new lazy routes appear. */
107
+ rebuildRouteMapIfNeeded() {
108
+ const currentLength = this.countRoutes(this.router.config);
109
+ if (currentLength !== this.lastRouteConfigLength) {
110
+ this.rebuildRouteMap();
111
+ }
112
+ }
113
+ /** @internal Recursively counts routes including lazy-loaded children. */
114
+ countRoutes(routes) {
115
+ let count = routes.length;
116
+ for (const route of routes) {
117
+ if (route.children) {
118
+ count += this.countRoutes(route.children);
119
+ }
120
+ if (route._loadedRoutes) {
121
+ count += this.countRoutes(route._loadedRoutes);
122
+ }
123
+ }
124
+ return count;
125
+ }
126
+ /** @internal Clears and rebuilds the full route → breadcrumb map. */
127
+ rebuildRouteMap() {
128
+ this.breadcrumbMap.clear();
129
+ this.buildRouteMap(this.router.config);
130
+ this.lastRouteConfigLength = this.countRoutes(this.router.config);
131
+ }
132
+ /** @internal Recursively walks route tree to build the breadcrumb map. */
133
+ buildRouteMap(routes, parentPath = '') {
134
+ for (const route of routes) {
135
+ const currentPath = `${parentPath}/${route.path || ''}`;
136
+ if (route.data?.['id']) {
137
+ const fullPath = this.normalizePath(currentPath);
138
+ this.breadcrumbMap.set(route.data['id'], {
139
+ id: route.data['id'],
140
+ path: fullPath,
141
+ label: route.data['title'] || route.path || route.data['id'],
142
+ parentIds: route.data['breadcrumbs'] || [],
143
+ metadata: route.data,
144
+ });
145
+ }
146
+ if (route.children) {
147
+ this.buildRouteMap(route.children, currentPath);
148
+ }
149
+ if (route._loadedRoutes) {
150
+ this.buildRouteMap(route._loadedRoutes, currentPath);
151
+ }
152
+ }
153
+ }
154
+ /** @internal Builds the full breadcrumb chain for a route by its ID. */
155
+ buildBreadcrumbChain(routeId, params) {
156
+ const config = this.breadcrumbMap.get(routeId);
157
+ if (!config)
158
+ return [];
159
+ this.saveFullPath(routeId, this.router.url);
160
+ const parentChain = this.getParentChain(config.parentIds, params);
161
+ const breadcrumbs = [...parentChain];
162
+ breadcrumbs.push({
163
+ label: this.resolveLabel(config.label, params),
164
+ url: this.stripQueryParams(this.router.url),
165
+ isLast: true,
166
+ });
167
+ return breadcrumbs;
168
+ }
169
+ /** @internal Resolves parent breadcrumbs from ordered parent IDs. */
170
+ getParentChain(parentIds, params) {
171
+ if (!parentIds?.length)
172
+ return [];
173
+ return parentIds
174
+ .map((id) => {
175
+ const config = this.breadcrumbMap.get(id);
176
+ if (!config)
177
+ return null;
178
+ return {
179
+ label: this.resolveLabel(config.label, params),
180
+ url: this.resolveUrl(config.path, params),
181
+ isLast: false,
182
+ };
183
+ })
184
+ .filter(Boolean);
185
+ }
186
+ /**
187
+ * @internal Resolves `:param` placeholders in a label using
188
+ * the injected label resolver function.
189
+ */
190
+ resolveLabel(label, params) {
191
+ if (!label.includes(':'))
192
+ return label;
193
+ let resolved = label;
194
+ for (const [key, value] of Object.entries(params)) {
195
+ const readableValue = this.labelResolver(key, value);
196
+ resolved = resolved.replace(`:${key}`, readableValue);
197
+ }
198
+ return resolved;
199
+ }
200
+ /** @internal Resolves `:param` placeholders in a path and creates a URL. */
201
+ resolveUrl(path, params) {
202
+ let processedPath = path;
203
+ if (path.includes(':')) {
204
+ const segments = path.split('/');
205
+ const processedSegments = segments.map((segment) => {
206
+ if (segment.startsWith(':')) {
207
+ const paramName = segment.substring(1);
208
+ return params[paramName] || segment;
209
+ }
210
+ return segment;
211
+ });
212
+ processedPath = processedSegments.join('/');
213
+ }
214
+ try {
215
+ return this.router.createUrlTree([processedPath]).toString();
216
+ }
217
+ catch {
218
+ return processedPath;
219
+ }
220
+ }
221
+ /** @internal Normalizes path by collapsing double slashes and trimming trailing slash. */
222
+ normalizePath(path) {
223
+ return path.replace(/\/+/g, '/').replace(/\/$/, '');
224
+ }
225
+ /** @internal Removes query parameters from a URL. */
226
+ stripQueryParams(url) {
227
+ return url.split('?')[0];
228
+ }
229
+ /** @internal Caches the fully resolved URL for a route ID. */
230
+ saveFullPath(routeId, fullPath) {
231
+ const config = this.breadcrumbMap.get(routeId);
232
+ if (config) {
233
+ config.fullPath = this.stripQueryParams(fullPath);
234
+ }
235
+ }
236
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: UiBreadcrumbService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
237
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: UiBreadcrumbService, providedIn: 'root' }); }
238
+ }
239
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: UiBreadcrumbService, decorators: [{
240
+ type: Injectable,
241
+ args: [{ providedIn: 'root' }]
242
+ }], ctorParameters: () => [] });
243
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJlYWRjcnVtYi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvbmctdWktc3lzdGVtL3NyYy9saWIvY29tcG9uZW50cy9wYWdlLWhlYWRlci9icmVhZGNydW1iLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEscUVBQXFFO0FBQ3JFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBdUIsYUFBYSxFQUFFLE1BQU0sRUFBZSxNQUFNLGlCQUFpQixDQUFDO0FBQzFGLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QyxPQUFPLEVBQ0wsNEJBQTRCLEdBRzdCLE1BQU0scUJBQXFCLENBQUM7O0FBRTdCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBd0NHO0FBRUgsTUFBTSxPQUFPLG1CQUFtQjtJQVc5QjtRQVZpQixXQUFNLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3hCLGtCQUFhLEdBQUcsTUFBTSxDQUFDLDRCQUE0QixDQUFDLENBQUM7UUFFdEUsNERBQTREO1FBQ3BELGtCQUFhLEdBQUcsSUFBSSxHQUFHLEVBQThCLENBQUM7UUFDOUQsMEVBQTBFO1FBQ2xFLDBCQUFxQixHQUFHLENBQUMsQ0FBQztRQUNsQyw0REFBNEQ7UUFDcEQsb0JBQWUsR0FBdUIsRUFBRSxDQUFDO1FBRy9DLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUV2QixJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU07YUFDZixJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLFlBQVksYUFBYSxDQUFDLENBQUM7YUFDdkQsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyx1QkFBdUIsRUFBRSxDQUFDLENBQUM7SUFD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LEVBQUUsQ0FBQztZQUNYLE1BQU0sQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ3BELENBQUM7SUFDSCxDQUFDOytHQXJOVSxtQkFBbUI7bUhBQW5CLG1CQUFtQixjQUROLE1BQU07OzRGQUNuQixtQkFBbUI7a0JBRC9CLFVBQVU7bUJBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiLyoqIGJpb21lLWlnbm9yZS1hbGwgbGludC9jb21wbGV4aXR5L3VzZUxpdGVyYWxLZXlzOiA8ZXhwbGFuYXRpb24+ICovXHJcbmltcG9ydCB7IEluamVjdGFibGUsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyB0eXBlIEFjdGl2YXRlZFJvdXRlLCBOYXZpZ2F0aW9uRW5kLCBSb3V0ZXIsIHR5cGUgUm91dGVzIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW1wb3J0IHsgZmlsdGVyIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQge1xyXG4gIFVJX0JSRUFEQ1JVTUJfTEFCRUxfUkVTT0xWRVIsXHJcbiAgdHlwZSBVaUJyZWFkY3J1bWJDb25maWcsXHJcbiAgdHlwZSBVaUJyZWFkY3J1bWJJdGVtLFxyXG59IGZyb20gJy4vcGFnZS1oZWFkZXIudHlwZXMnO1xyXG5cclxuLyoqXHJcbiAqIFNlcnZpY2UgdGhhdCBidWlsZHMgYSBuZXN0ZWQgYnJlYWRjcnVtYiB0cmFpbCBmcm9tIEFuZ3VsYXIgcm91dGUgY29uZmlndXJhdGlvbi5cclxuICpcclxuICogUm91dGVzIG11c3QgZGVmaW5lIGBkYXRhLmlkYCwgYGRhdGEudGl0bGVgLCBhbmQgb3B0aW9uYWxseSBgZGF0YS5icmVhZGNydW1ic2BcclxuICogKGFuIGFycmF5IG9mIHBhcmVudCByb3V0ZSBJRHMpIGZvciB0aGUgY2hhaW4gdG8gcmVzb2x2ZSBjb3JyZWN0bHkuXHJcbiAqXHJcbiAqIFN1cHBvcnRzIGxhenktbG9hZGVkIHJvdXRlczogdGhlIGludGVybmFsIHJvdXRlIG1hcCBpcyByZWJ1aWx0IGF1dG9tYXRpY2FsbHlcclxuICogd2hlbmV2ZXIgbmV3IHJvdXRlcyBhcmUgbG9hZGVkIHZpYSBgTmF2aWdhdGlvbkVuZGAuXHJcbiAqXHJcbiAqIExhYmVsIHJlc29sdXRpb24gZm9yIHJvdXRlIHBhcmFtZXRlcnMgKGA6cGFyYW1gKSBpcyBkZWxlZ2F0ZWQgdG8gYW4gaW5qZWN0YWJsZVxyXG4gKiBgVWlMYWJlbFJlc29sdmVyRm5gIHZpYSB0aGUgYFVJX0JSRUFEQ1JVTUJfTEFCRUxfUkVTT0xWRVJgIHRva2VuLlxyXG4gKlxyXG4gKiBAdXNhZ2VOb3Rlc1xyXG4gKiAjIyMgUm91dGUgY29uZmlndXJhdGlvblxyXG4gKiBgYGB0eXBlc2NyaXB0XHJcbiAqIGNvbnN0IHJvdXRlczogUm91dGVzID0gW1xyXG4gKiAgIHtcclxuICogICAgIHBhdGg6ICd1c2VycycsXHJcbiAqICAgICBkYXRhOiB7IGlkOiAndXNlcnMnLCB0aXRsZTogJ1V0ZW50aScgfSxcclxuICogICAgIGNoaWxkcmVuOiBbXHJcbiAqICAgICAgIHtcclxuICogICAgICAgICBwYXRoOiAnOnVzZXJJZCcsXHJcbiAqICAgICAgICAgZGF0YTogeyBpZDogJ3VzZXItZGV0YWlsJywgdGl0bGU6ICc6dXNlcklkJywgYnJlYWRjcnVtYnM6IFsndXNlcnMnXSB9LFxyXG4gKiAgICAgICAgIGNvbXBvbmVudDogVXNlckRldGFpbENvbXBvbmVudCxcclxuICogICAgICAgfSxcclxuICogICAgIF0sXHJcbiAqICAgfSxcclxuICogXTtcclxuICogYGBgXHJcbiAqXHJcbiAqICMjIyBDdXN0b20gbGFiZWwgcmVzb2x2ZXJcclxuICogYGBgdHlwZXNjcmlwdFxyXG4gKiBwcm92aWRlcnM6IFtcclxuICogICB7XHJcbiAqICAgICBwcm92aWRlOiBVSV9CUkVBRENSVU1CX0xBQkVMX1JFU09MVkVSLFxyXG4gKiAgICAgdXNlVmFsdWU6IChuYW1lOiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcpID0+XHJcbiAqICAgICAgIG5hbWUgPT09ICd1c2VySWQnID8gYFVzZXIgIyR7dmFsdWV9YCA6IHZhbHVlLFxyXG4gKiAgIH0sXHJcbiAqIF1cclxuICogYGBgXHJcbiAqL1xyXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxyXG5leHBvcnQgY2xhc3MgVWlCcmVhZGNydW1iU2VydmljZSB7XHJcbiAgcHJpdmF0ZSByZWFkb25seSByb3V0ZXIgPSBpbmplY3QoUm91dGVyKTtcclxuICBwcml2YXRlIHJlYWRvbmx5IGxhYmVsUmVzb2x2ZXIgPSBpbmplY3QoVUlfQlJFQURDUlVNQl9MQUJFTF9SRVNPTFZFUik7XHJcblxyXG4gIC8qKiBAaW50ZXJuYWwgTWFwIG9mIHJvdXRlIElEIOKGkiBicmVhZGNydW1iIGNvbmZpZ3VyYXRpb24uICovXHJcbiAgcHJpdmF0ZSBicmVhZGNydW1iTWFwID0gbmV3IE1hcDxzdHJpbmcsIFVpQnJlYWRjcnVtYkNvbmZpZz4oKTtcclxuICAvKiogQGludGVybmFsIFRyYWNrcyByb3V0ZSBjb3VudCB0byBkZXRlY3QgbGF6eS1sb2FkZWQgcm91dGUgYWRkaXRpb25zLiAqL1xyXG4gIHByaXZhdGUgbGFzdFJvdXRlQ29uZmlnTGVuZ3RoID0gMDtcclxuICAvKiogQGludGVybmFsIExhc3QgY29tcHV0ZWQgYnJlYWRjcnVtYnMgZm9yIG5hdmlnYXRlQmFjay4gKi9cclxuICBwcml2YXRlIGxhc3RCcmVhZGNydW1iczogVWlCcmVhZGNydW1iSXRlbVtdID0gW107XHJcblxyXG4gIGNvbnN0cnVjdG9yKCkge1xyXG4gICAgdGhpcy5yZWJ1aWxkUm91dGVNYXAoKTtcclxuXHJcbiAgICB0aGlzLnJvdXRlci5ldmVudHNcclxuICAgICAgLnBpcGUoZmlsdGVyKChldmVudCkgPT4gZXZlbnQgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uRW5kKSlcclxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB0aGlzLnJlYnVpbGRSb3V0ZU1hcElmTmVlZGVkKCkpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQ29tcHV0ZXMgdGhlIGJyZWFkY3J1bWIgdHJhaWwgZm9yIHRoZSBjdXJyZW50bHkgYWN0aXZlIHJvdXRlLlxyXG4gICAqXHJcbiAgICogQHBhcmFtIHJvdXRlIC0gVGhlIHJvb3QgYEFjdGl2YXRlZFJvdXRlYCAodHlwaWNhbGx5IGluamVjdGVkIGluIHRoZSBjb21wb25lbnQpLlxyXG4gICAqIEByZXR1cm5zIE9yZGVyZWQgYXJyYXkgb2YgYnJlYWRjcnVtYiBpdGVtcyBmcm9tIHJvb3QgdG8gY3VycmVudCByb3V0ZS5cclxuICAgKi9cclxuICBnZXRCcmVhZGNydW1ic0ZvclJvdXRlKHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSk6IFVpQnJlYWRjcnVtYkl0ZW1bXSB7XHJcbiAgICBsZXQgZGVlcGVzdFJvdXRlID0gcm91dGU7XHJcbiAgICB3aGlsZSAoZGVlcGVzdFJvdXRlLmZpcnN0Q2hpbGQpIHtcclxuICAgICAgZGVlcGVzdFJvdXRlID0gZGVlcGVzdFJvdXRlLmZpcnN0Q2hpbGQ7XHJcbiAgICB9XHJcblxyXG4gICAgbGV0IHJvdXRlV2l0aElkOiBBY3RpdmF0ZWRSb3V0ZSB8IG51bGwgPSBkZWVwZXN0Um91dGU7XHJcbiAgICB3aGlsZSAocm91dGVXaXRoSWQgJiYgIXJvdXRlV2l0aElkLnNuYXBzaG90LmRhdGFbJ2lkJ10pIHtcclxuICAgICAgcm91dGVXaXRoSWQgPSByb3V0ZVdpdGhJZC5wYXJlbnQ7XHJcbiAgICB9XHJcbiAgICBjb25zdCByb3V0ZUlkID0gcm91dGVXaXRoSWQ/LnNuYXBzaG90LmRhdGFbJ2lkJ107XHJcbiAgICBpZiAoIXJvdXRlSWQpIHtcclxuICAgICAgdGhpcy5sYXN0QnJlYWRjcnVtYnMgPSBbXTtcclxuICAgICAgcmV0dXJuIFtdO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IHBhcmFtcyA9IHRoaXMuY29sbGVjdFBhcmFtc0Zyb21QYXRoKGRlZXBlc3RSb3V0ZSk7XHJcbiAgICBjb25zdCBicmVhZGNydW1icyA9IHRoaXMuYnVpbGRCcmVhZGNydW1iQ2hhaW4ocm91dGVJZCwgcGFyYW1zKTtcclxuICAgIHRoaXMubGFzdEJyZWFkY3J1bWJzID0gYnJlYWRjcnVtYnM7XHJcbiAgICByZXR1cm4gYnJlYWRjcnVtYnM7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBOYXZpZ2F0ZXMgdG8gdGhlIHByZXZpb3VzIGJyZWFkY3J1bWIgKHBhcmVudCByb3V0ZSkuXHJcbiAgICogRmFsbHMgYmFjayB0byBgZmFsbGJhY2tVcmxgIChkZWZhdWx0OiBgL2ApIHdoZW4gbm8gcGFyZW50IGV4aXN0cy5cclxuICAgKi9cclxuICBuYXZpZ2F0ZUJhY2soZmFsbGJhY2tVcmwgPSAnLycpOiB2b2lkIHtcclxuICAgIGNvbnN0IHByZXYgPSB0aGlzLmxhc3RCcmVhZGNydW1icy5sZW5ndGggPiAxID8gdGhpcy5sYXN0QnJlYWRjcnVtYnNbdGhpcy5sYXN0QnJlYWRjcnVtYnMubGVuZ3RoIC0gMl0gOiBudWxsO1xyXG4gICAgY29uc3QgdGFyZ2V0ID0gcHJldj8udXJsID8/IGZhbGxiYWNrVXJsO1xyXG4gICAgdGhpcy5yb3V0ZXIubmF2aWdhdGVCeVVybCh0YXJnZXQpO1xyXG4gIH1cclxuXHJcbiAgLyoqIEBpbnRlcm5hbCBDb2xsZWN0cyBhbGwgcm91dGUgcGFyYW1zIGZyb20gdGhlIGZ1bGwgcGF0aCAoaW5jbHVkaW5nIHBhcmVudHMpLiAqL1xyXG4gIHByaXZhdGUgY29sbGVjdFBhcmFtc0Zyb21QYXRoKHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSk6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4ge1xyXG4gICAgY29uc3QgcGFyYW1zOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge307XHJcbiAgICBmb3IgKGNvbnN0IHIgb2Ygcm91dGUucGF0aEZyb21Sb290KSB7XHJcbiAgICAgIE9iamVjdC5hc3NpZ24ocGFyYW1zLCByLnNuYXBzaG90LnBhcmFtcyk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gcGFyYW1zO1xyXG4gIH1cclxuXHJcbiAgLy8g4pSA4pSA4pSAIFByaXZhdGUgaGVscGVycyDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcclxuXHJcbiAgLyoqIEBpbnRlcm5hbCBSZWJ1aWxkcyB0aGUgbWFwIG9ubHkgd2hlbiBuZXcgbGF6eSByb3V0ZXMgYXBwZWFyLiAqL1xyXG4gIHByaXZhdGUgcmVidWlsZFJvdXRlTWFwSWZOZWVkZWQoKTogdm9pZCB7XHJcbiAgICBjb25zdCBjdXJyZW50TGVuZ3RoID0gdGhpcy5jb3VudFJvdXRlcyh0aGlzLnJvdXRlci5jb25maWcpO1xyXG4gICAgaWYgKGN1cnJlbnRMZW5ndGggIT09IHRoaXMubGFzdFJvdXRlQ29uZmlnTGVuZ3RoKSB7XHJcbiAgICAgIHRoaXMucmVidWlsZFJvdXRlTWFwKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKiogQGludGVybmFsIFJlY3Vyc2l2ZWx5IGNvdW50cyByb3V0ZXMgaW5jbHVkaW5nIGxhenktbG9hZGVkIGNoaWxkcmVuLiAqL1xyXG4gIHByaXZhdGUgY291bnRSb3V0ZXMocm91dGVzOiBSb3V0ZXMpOiBudW1iZXIge1xyXG4gICAgbGV0IGNvdW50ID0gcm91dGVzLmxlbmd0aDtcclxuICAgIGZvciAoY29uc3Qgcm91dGUgb2Ygcm91dGVzKSB7XHJcbiAgICAgIGlmIChyb3V0ZS5jaGlsZHJlbikge1xyXG4gICAgICAgIGNvdW50ICs9IHRoaXMuY291bnRSb3V0ZXMocm91dGUuY2hpbGRyZW4pO1xyXG4gICAgICB9XHJcbiAgICAgIGlmICgocm91dGUgYXMgYW55KS5fbG9hZGVkUm91dGVzKSB7XHJcbiAgICAgICAgY291bnQgKz0gdGhpcy5jb3VudFJvdXRlcygocm91dGUgYXMgYW55KS5fbG9hZGVkUm91dGVzKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgcmV0dXJuIGNvdW50O1xyXG4gIH1cclxuXHJcbiAgLyoqIEBpbnRlcm5hbCBDbGVhcnMgYW5kIHJlYnVpbGRzIHRoZSBmdWxsIHJvdXRlIOKGkiBicmVhZGNydW1iIG1hcC4gKi9cclxuICBwcml2YXRlIHJlYnVpbGRSb3V0ZU1hcCgpOiB2b2lkIHtcclxuICAgIHRoaXMuYnJlYWRjcnVtYk1hcC5jbGVhcigpO1xyXG4gICAgdGhpcy5idWlsZFJvdXRlTWFwKHRoaXMucm91dGVyLmNvbmZpZyk7XHJcbiAgICB0aGlzLmxhc3RSb3V0ZUNvbmZpZ0xlbmd0aCA9IHRoaXMuY291bnRSb3V0ZXModGhpcy5yb3V0ZXIuY29uZmlnKTtcclxuICB9XHJcblxyXG4gIC8qKiBAaW50ZXJuYWwgUmVjdXJzaXZlbHkgd2Fsa3Mgcm91dGUgdHJlZSB0byBidWlsZCB0aGUgYnJlYWRjcnVtYiBtYXAuICovXHJcbiAgcHJpdmF0ZSBidWlsZFJvdXRlTWFwKHJvdXRlczogUm91dGVzLCBwYXJlbnRQYXRoID0gJycpOiB2b2lkIHtcclxuICAgIGZvciAoY29uc3Qgcm91dGUgb2Ygcm91dGVzKSB7XHJcbiAgICAgIGNvbnN0IGN1cnJlbnRQYXRoID0gYCR7cGFyZW50UGF0aH0vJHtyb3V0ZS5wYXRoIHx8ICcnfWA7XHJcblxyXG4gICAgICBpZiAocm91dGUuZGF0YT8uWydpZCddKSB7XHJcbiAgICAgICAgY29uc3QgZnVsbFBhdGggPSB0aGlzLm5vcm1hbGl6ZVBhdGgoY3VycmVudFBhdGgpO1xyXG4gICAgICAgIHRoaXMuYnJlYWRjcnVtYk1hcC5zZXQocm91dGUuZGF0YVsnaWQnXSwge1xyXG4gICAgICAgICAgaWQ6IHJvdXRlLmRhdGFbJ2lkJ10sXHJcbiAgICAgICAgICBwYXRoOiBmdWxsUGF0aCxcclxuICAgICAgICAgIGxhYmVsOiByb3V0ZS5kYXRhWyd0aXRsZSddIHx8IHJvdXRlLnBhdGggfHwgcm91dGUuZGF0YVsnaWQnXSxcclxuICAgICAgICAgIHBhcmVudElkczogcm91dGUuZGF0YVsnYnJlYWRjcnVtYnMnXSB8fCBbXSxcclxuICAgICAgICAgIG1ldGFkYXRhOiByb3V0ZS5kYXRhLFxyXG4gICAgICAgIH0pO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBpZiAocm91dGUuY2hpbGRyZW4pIHtcclxuICAgICAgICB0aGlzLmJ1aWxkUm91dGVNYXAocm91dGUuY2hpbGRyZW4sIGN1cnJlbnRQYXRoKTtcclxuICAgICAgfVxyXG4gICAgICBpZiAoKHJvdXRlIGFzIGFueSkuX2xvYWRlZFJvdXRlcykge1xyXG4gICAgICAgIHRoaXMuYnVpbGRSb3V0ZU1hcCgocm91dGUgYXMgYW55KS5fbG9hZGVkUm91dGVzLCBjdXJyZW50UGF0aCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKiBAaW50ZXJuYWwgQnVpbGRzIHRoZSBmdWxsIGJyZWFkY3J1bWIgY2hhaW4gZm9yIGEgcm91dGUgYnkgaXRzIElELiAqL1xyXG4gIHByaXZhdGUgYnVpbGRCcmVhZGNydW1iQ2hhaW4ocm91dGVJZDogc3RyaW5nLCBwYXJhbXM6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4pOiBVaUJyZWFkY3J1bWJJdGVtW10ge1xyXG4gICAgY29uc3QgY29uZmlnID0gdGhpcy5icmVhZGNydW1iTWFwLmdldChyb3V0ZUlkKTtcclxuICAgIGlmICghY29uZmlnKSByZXR1cm4gW107XHJcblxyXG4gICAgdGhpcy5zYXZlRnVsbFBhdGgocm91dGVJZCwgdGhpcy5yb3V0ZXIudXJsKTtcclxuXHJcbiAgICBjb25zdCBwYXJlbnRDaGFpbiA9IHRoaXMuZ2V0UGFyZW50Q2hhaW4oY29uZmlnLnBhcmVudElkcywgcGFyYW1zKTtcclxuICAgIGNvbnN0IGJyZWFkY3J1bWJzOiBVaUJyZWFkY3J1bWJJdGVtW10gPSBbLi4ucGFyZW50Q2hhaW5dO1xyXG5cclxuICAgIGJyZWFkY3J1bWJzLnB1c2goe1xyXG4gICAgICBsYWJlbDogdGhpcy5yZXNvbHZlTGFiZWwoY29uZmlnLmxhYmVsLCBwYXJhbXMpLFxyXG4gICAgICB1cmw6IHRoaXMuc3RyaXBRdWVyeVBhcmFtcyh0aGlzLnJvdXRlci51cmwpLFxyXG4gICAgICBpc0xhc3Q6IHRydWUsXHJcbiAgICB9KTtcclxuXHJcbiAgICByZXR1cm4gYnJlYWRjcnVtYnM7XHJcbiAgfVxyXG5cclxuICAvKiogQGludGVybmFsIFJlc29sdmVzIHBhcmVudCBicmVhZGNydW1icyBmcm9tIG9yZGVyZWQgcGFyZW50IElEcy4gKi9cclxuICBwcml2YXRlIGdldFBhcmVudENoYWluKHBhcmVudElkczogc3RyaW5nW10sIHBhcmFtczogUmVjb3JkPHN0cmluZywgc3RyaW5nPik6IFVpQnJlYWRjcnVtYkl0ZW1bXSB7XHJcbiAgICBpZiAoIXBhcmVudElkcz8ubGVuZ3RoKSByZXR1cm4gW107XHJcblxyXG4gICAgcmV0dXJuIHBhcmVudElkc1xyXG4gICAgICAubWFwKChpZCkgPT4ge1xyXG4gICAgICAgIGNvbnN0IGNvbmZpZyA9IHRoaXMuYnJlYWRjcnVtYk1hcC5nZXQoaWQpO1xyXG4gICAgICAgIGlmICghY29uZmlnKSByZXR1cm4gbnVsbDtcclxuXHJcbiAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgIGxhYmVsOiB0aGlzLnJlc29sdmVMYWJlbChjb25maWcubGFiZWwsIHBhcmFtcyksXHJcbiAgICAgICAgICB1cmw6IHRoaXMucmVzb2x2ZVVybChjb25maWcucGF0aCwgcGFyYW1zKSxcclxuICAgICAgICAgIGlzTGFzdDogZmFsc2UsXHJcbiAgICAgICAgfTtcclxuICAgICAgfSlcclxuICAgICAgLmZpbHRlcihCb29sZWFuKSBhcyBVaUJyZWFkY3J1bWJJdGVtW107XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBAaW50ZXJuYWwgUmVzb2x2ZXMgYDpwYXJhbWAgcGxhY2Vob2xkZXJzIGluIGEgbGFiZWwgdXNpbmdcclxuICAgKiB0aGUgaW5qZWN0ZWQgbGFiZWwgcmVzb2x2ZXIgZnVuY3Rpb24uXHJcbiAgICovXHJcbiAgcHJpdmF0ZSByZXNvbHZlTGFiZWwobGFiZWw6IHN0cmluZywgcGFyYW1zOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+KTogc3RyaW5nIHtcclxuICAgIGlmICghbGFiZWwuaW5jbHVkZXMoJzonKSkgcmV0dXJuIGxhYmVsO1xyXG5cclxuICAgIGxldCByZXNvbHZlZCA9IGxhYmVsO1xyXG4gICAgZm9yIChjb25zdCBba2V5LCB2YWx1ZV0gb2YgT2JqZWN0LmVudHJpZXMocGFyYW1zKSkge1xyXG4gICAgICBjb25zdCByZWFkYWJsZVZhbHVlID0gdGhpcy5sYWJlbFJlc29sdmVyKGtleSwgdmFsdWUpO1xyXG4gICAgICByZXNvbHZlZCA9IHJlc29sdmVkLnJlcGxhY2UoYDoke2tleX1gLCByZWFkYWJsZVZhbHVlKTtcclxuICAgIH1cclxuICAgIHJldHVybiByZXNvbHZlZDtcclxuICB9XHJcblxyXG4gIC8qKiBAaW50ZXJuYWwgUmVzb2x2ZXMgYDpwYXJhbWAgcGxhY2Vob2xkZXJzIGluIGEgcGF0aCBhbmQgY3JlYXRlcyBhIFVSTC4gKi9cclxuICBwcml2YXRlIHJlc29sdmVVcmwocGF0aDogc3RyaW5nLCBwYXJhbXM6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4pOiBzdHJpbmcge1xyXG4gICAgbGV0IHByb2Nlc3NlZFBhdGggPSBwYXRoO1xyXG5cclxuICAgIGlmIChwYXRoLmluY2x1ZGVzKCc6JykpIHtcclxuICAgICAgY29uc3Qgc2VnbWVudHMgPSBwYXRoLnNwbGl0KCcvJyk7XHJcbiAgICAgIGNvbnN0IHByb2Nlc3NlZFNlZ21lbnRzID0gc2VnbWVudHMubWFwKChzZWdtZW50KSA9PiB7XHJcbiAgICAgICAgaWYgKHNlZ21lbnQuc3RhcnRzV2l0aCgnOicpKSB7XHJcbiAgICAgICAgICBjb25zdCBwYXJhbU5hbWUgPSBzZWdtZW50LnN1YnN0cmluZygxKTtcclxuICAgICAgICAgIHJldHVybiBwYXJhbXNbcGFyYW1OYW1lXSB8fCBzZWdtZW50O1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gc2VnbWVudDtcclxuICAgICAgfSk7XHJcbiAgICAgIHByb2Nlc3NlZFBhdGggPSBwcm9jZXNzZWRTZWdtZW50cy5qb2luKCcvJyk7XHJcbiAgICB9XHJcblxyXG4gICAgdHJ5IHtcclxuICAgICAgcmV0dXJuIHRoaXMucm91dGVyLmNyZWF0ZVVybFRyZWUoW3Byb2Nlc3NlZFBhdGhdKS50b1N0cmluZygpO1xyXG4gICAgfSBjYXRjaCB7XHJcbiAgICAgIHJldHVybiBwcm9jZXNzZWRQYXRoO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqIEBpbnRlcm5hbCBOb3JtYWxpemVzIHBhdGggYnkgY29sbGFwc2luZyBkb3VibGUgc2xhc2hlcyBhbmQgdHJpbW1pbmcgdHJhaWxpbmcgc2xhc2guICovXHJcbiAgcHJpdmF0ZSBub3JtYWxpemVQYXRoKHBhdGg6IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gcGF0aC5yZXBsYWNlKC9cXC8rL2csICcvJykucmVwbGFjZSgvXFwvJC8sICcnKTtcclxuICB9XHJcblxyXG4gIC8qKiBAaW50ZXJuYWwgUmVtb3ZlcyBxdWVyeSBwYXJhbWV0ZXJzIGZyb20gYSBVUkwuICovXHJcbiAgcHJpdmF0ZSBzdHJpcFF1ZXJ5UGFyYW1zKHVybDogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB1cmwuc3BsaXQoJz8nKVswXTtcclxuICB9XHJcblxyXG4gIC8qKiBAaW50ZXJuYWwgQ2FjaGVzIHRoZSBmdWxseSByZXNvbHZlZCBVUkwgZm9yIGEgcm91dGUgSUQuICovXHJcbiAgcHJpdmF0ZSBzYXZlRnVsbFBhdGgocm91dGVJZDogc3RyaW5nLCBmdWxsUGF0aDogc3RyaW5nKTogdm9pZCB7XHJcbiAgICBjb25zdCBjb25maWcgPSB0aGlzLmJyZWFkY3J1bWJNYXAuZ2V0KHJvdXRlSWQpO1xyXG4gICAgaWYgKGNvbmZpZykge1xyXG4gICAgICBjb25maWcuZnVsbFBhdGggPSB0aGlzLnN0cmlwUXVlcnlQYXJhbXMoZnVsbFBhdGgpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iXX0=
@@ -0,0 +1,243 @@
1
+ import { ChangeDetectorRef, Component, DestroyRef, inject, Input, ChangeDetectionStrategy, ViewEncapsulation, } from '@angular/core';
2
+ import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
3
+ import { ActivatedRoute, NavigationEnd, Router, RouterLink } from '@angular/router';
4
+ import { Title } from '@angular/platform-browser';
5
+ import { filter } from 'rxjs/operators';
6
+ import { LucideAngularModule } from 'lucide-angular';
7
+ import { UiBreadcrumbService } from './breadcrumb.service';
8
+ import * as i0 from "@angular/core";
9
+ import * as i1 from "lucide-angular";
10
+ /**
11
+ * Page header component that renders a breadcrumb navigation trail
12
+ * and a page title. Integrates with `UiBreadcrumbService` to
13
+ * automatically derive breadcrumbs from Angular route configuration.
14
+ *
15
+ * The breadcrumb trail is generated from route `data` properties:
16
+ * - `data.id` — unique route identifier
17
+ * - `data.title` — display label
18
+ * - `data.breadcrumbs` — ordered array of parent route IDs
19
+ *
20
+ * @selector ui-page-header
21
+ *
22
+ * @example
23
+ * ```html
24
+ * <!-- Auto breadcrumbs from route data -->
25
+ * <ui-page-header />
26
+ *
27
+ * <!-- With explicit title override -->
28
+ * <ui-page-header title="Custom Title" />
29
+ *
30
+ * <!-- With document title update -->
31
+ * <ui-page-header [updateDocumentTitle]="true" titleSuffix=" | My App" />
32
+ * ```
33
+ */
34
+ export class UiPageHeaderComponent {
35
+ constructor() {
36
+ /** Override the auto-detected page title. When empty, title is derived from the last breadcrumb. */
37
+ this.title = '';
38
+ /** Route path for the Home breadcrumb link. */
39
+ this.homeRoute = '/';
40
+ /** Whether to display the Home link at the start of the trail. */
41
+ this.showHome = true;
42
+ /** When `true`, updates `document.title` on each navigation. */
43
+ this.updateDocumentTitle = false;
44
+ /** Suffix appended to `document.title` (e.g. `' | My App'`). Only used when `updateDocumentTitle` is `true`. */
45
+ this.titleSuffix = '';
46
+ /** @internal */
47
+ this.breadcrumbs = [];
48
+ this.router = inject(Router);
49
+ this.activatedRoute = inject(ActivatedRoute);
50
+ this.titleService = inject(Title);
51
+ this.breadcrumbService = inject(UiBreadcrumbService);
52
+ this.destroyRef = inject(DestroyRef);
53
+ this.cdr = inject(ChangeDetectorRef);
54
+ }
55
+ /** Resolved page title: explicit `title` input wins, otherwise last breadcrumb label. */
56
+ get displayTitle() {
57
+ if (this.title)
58
+ return this.title;
59
+ if (this.breadcrumbs.length > 0) {
60
+ return this.breadcrumbs[this.breadcrumbs.length - 1].label;
61
+ }
62
+ return '';
63
+ }
64
+ ngOnInit() {
65
+ this.refresh();
66
+ this.router.events
67
+ .pipe(filter((event) => event instanceof NavigationEnd), takeUntilDestroyed(this.destroyRef))
68
+ .subscribe(() => this.refresh());
69
+ }
70
+ /**
71
+ * Navigates to the previous breadcrumb (parent route).
72
+ * @param fallbackUrl - URL to navigate to when no parent exists (default: homeRoute).
73
+ */
74
+ navigateBack(fallbackUrl) {
75
+ this.breadcrumbService.navigateBack(fallbackUrl ?? this.homeRoute);
76
+ }
77
+ /** @internal */
78
+ refresh() {
79
+ this.breadcrumbs = this.breadcrumbService.getBreadcrumbsForRoute(this.activatedRoute);
80
+ if (this.updateDocumentTitle) {
81
+ const title = this.displayTitle;
82
+ if (title) {
83
+ this.titleService.setTitle(`${title}${this.titleSuffix}`);
84
+ }
85
+ }
86
+ this.cdr.markForCheck();
87
+ }
88
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: UiPageHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
89
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: UiPageHeaderComponent, isStandalone: true, selector: "ui-page-header", inputs: { title: "title", homeRoute: "homeRoute", showHome: "showHome", updateDocumentTitle: "updateDocumentTitle", titleSuffix: "titleSuffix" }, host: { classAttribute: "ui-page-header-host" }, ngImport: i0, template: `
90
+ <header class="ui-page-header">
91
+ <nav aria-label="Breadcrumb" class="ui-page-header__nav">
92
+ <ol
93
+ class="ui-page-header__breadcrumb"
94
+ itemscope
95
+ itemtype="https://schema.org/BreadcrumbList"
96
+ >
97
+ @if (showHome) {
98
+ <li
99
+ class="ui-page-header__item"
100
+ itemprop="itemListElement"
101
+ itemscope
102
+ itemtype="https://schema.org/ListItem"
103
+ >
104
+ <a
105
+ itemprop="item"
106
+ [routerLink]="homeRoute"
107
+ class="ui-page-header__link"
108
+ aria-label="Home"
109
+ >
110
+ <lucide-icon name="home" [size]="14" aria-hidden="true" />
111
+ <span itemprop="name" class="ui-page-header__text">Home</span>
112
+ </a>
113
+ <meta itemprop="position" content="1" />
114
+ <span class="ui-page-header__separator" aria-hidden="true">
115
+ <lucide-icon name="chevron-right" [size]="14" />
116
+ </span>
117
+ </li>
118
+ }
119
+ @for (crumb of breadcrumbs; track crumb.url; let i = $index) {
120
+ <li
121
+ class="ui-page-header__item"
122
+ [class.ui-page-header__item--current]="crumb.isLast"
123
+ itemprop="itemListElement"
124
+ itemscope
125
+ itemtype="https://schema.org/ListItem"
126
+ >
127
+ @if (!crumb.isLast) {
128
+ <a
129
+ itemprop="item"
130
+ [routerLink]="crumb.url"
131
+ class="ui-page-header__link"
132
+ >
133
+ <span itemprop="name" class="ui-page-header__text">{{ crumb.label }}</span>
134
+ </a>
135
+ <span class="ui-page-header__separator" aria-hidden="true">
136
+ <lucide-icon name="chevron-right" [size]="14" />
137
+ </span>
138
+ } @else {
139
+ <span
140
+ itemprop="name"
141
+ class="ui-page-header__text ui-page-header__text--current"
142
+ aria-current="page"
143
+ >
144
+ {{ crumb.label }}
145
+ </span>
146
+ }
147
+ <meta itemprop="position" [attr.content]="showHome ? i + 2 : i + 1" />
148
+ </li>
149
+ }
150
+ </ol>
151
+ </nav>
152
+
153
+ <h1 class="ui-page-header__title" id="page-title">
154
+ {{ displayTitle }}
155
+ </h1>
156
+ </header>
157
+ `, isInline: true, styles: [".ui-page-header-host{display:block}.ui-page-header{margin-bottom:var(--ui-spacing-5)}.ui-page-header__nav{margin-bottom:var(--ui-spacing-2)}.ui-page-header__breadcrumb{display:flex;flex-wrap:wrap;align-items:center;list-style:none;margin:0;padding:0;font-family:var(--ui-font-family);font-size:var(--ui-font-size-sm);line-height:var(--ui-line-height-normal);gap:var(--ui-spacing-1)}.ui-page-header__item{display:inline-flex;align-items:center;gap:var(--ui-spacing-1)}a.ui-page-header__link lucide-icon{transform:translateY(2px)!important}span.ui-page-header__separator lucide-icon{transform:translateY(3px)!important}.ui-page-header__link{display:inline-flex;align-items:center;gap:4px;text-decoration:none;color:var(--ui-color-primary);border-radius:var(--ui-radius-sm);padding:2px 4px;margin:-2px -4px;transition:color var(--ui-transition-fast),background-color var(--ui-transition-fast)}.ui-page-header__link:hover{color:var(--ui-color-primary-hover);text-decoration:underline}.ui-page-header__link:focus{outline:none}.ui-page-header__link:focus-visible{outline:var(--ui-focus-ring-width) solid var(--ui-focus-ring-color);outline-offset:var(--ui-focus-ring-offset)}.ui-page-header__text{white-space:nowrap}.ui-page-header__text--current{font-weight:var(--ui-font-weight-medium);color:var(--ui-color-text)}.ui-page-header__separator{display:inline-flex;align-items:center;color:var(--ui-color-text-muted);flex-shrink:0}.ui-page-header__title{margin:0;font-family:var(--ui-font-family);font-size:var(--ui-font-size-2xl);font-weight:var(--ui-font-weight-bold);color:var(--ui-color-text);line-height:var(--ui-line-height-tight)}.ui-page-header__title:focus{outline:none}@media (min-width: 640px){.ui-page-header__title{font-size:var(--ui-font-size-xl)}.ui-page-header__breadcrumb{font-size:var(--ui-font-size-xs)}}\n"], dependencies: [{ kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "ngmodule", type: LucideAngularModule }, { kind: "component", type: i1.LucideAngularComponent, selector: "lucide-angular, lucide-icon, i-lucide, span-lucide", inputs: ["class", "name", "img", "color", "absoluteStrokeWidth", "size", "strokeWidth"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
158
+ }
159
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: UiPageHeaderComponent, decorators: [{
160
+ type: Component,
161
+ args: [{ selector: 'ui-page-header', standalone: true, imports: [RouterLink, LucideAngularModule], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, host: {
162
+ class: 'ui-page-header-host',
163
+ }, template: `
164
+ <header class="ui-page-header">
165
+ <nav aria-label="Breadcrumb" class="ui-page-header__nav">
166
+ <ol
167
+ class="ui-page-header__breadcrumb"
168
+ itemscope
169
+ itemtype="https://schema.org/BreadcrumbList"
170
+ >
171
+ @if (showHome) {
172
+ <li
173
+ class="ui-page-header__item"
174
+ itemprop="itemListElement"
175
+ itemscope
176
+ itemtype="https://schema.org/ListItem"
177
+ >
178
+ <a
179
+ itemprop="item"
180
+ [routerLink]="homeRoute"
181
+ class="ui-page-header__link"
182
+ aria-label="Home"
183
+ >
184
+ <lucide-icon name="home" [size]="14" aria-hidden="true" />
185
+ <span itemprop="name" class="ui-page-header__text">Home</span>
186
+ </a>
187
+ <meta itemprop="position" content="1" />
188
+ <span class="ui-page-header__separator" aria-hidden="true">
189
+ <lucide-icon name="chevron-right" [size]="14" />
190
+ </span>
191
+ </li>
192
+ }
193
+ @for (crumb of breadcrumbs; track crumb.url; let i = $index) {
194
+ <li
195
+ class="ui-page-header__item"
196
+ [class.ui-page-header__item--current]="crumb.isLast"
197
+ itemprop="itemListElement"
198
+ itemscope
199
+ itemtype="https://schema.org/ListItem"
200
+ >
201
+ @if (!crumb.isLast) {
202
+ <a
203
+ itemprop="item"
204
+ [routerLink]="crumb.url"
205
+ class="ui-page-header__link"
206
+ >
207
+ <span itemprop="name" class="ui-page-header__text">{{ crumb.label }}</span>
208
+ </a>
209
+ <span class="ui-page-header__separator" aria-hidden="true">
210
+ <lucide-icon name="chevron-right" [size]="14" />
211
+ </span>
212
+ } @else {
213
+ <span
214
+ itemprop="name"
215
+ class="ui-page-header__text ui-page-header__text--current"
216
+ aria-current="page"
217
+ >
218
+ {{ crumb.label }}
219
+ </span>
220
+ }
221
+ <meta itemprop="position" [attr.content]="showHome ? i + 2 : i + 1" />
222
+ </li>
223
+ }
224
+ </ol>
225
+ </nav>
226
+
227
+ <h1 class="ui-page-header__title" id="page-title">
228
+ {{ displayTitle }}
229
+ </h1>
230
+ </header>
231
+ `, styles: [".ui-page-header-host{display:block}.ui-page-header{margin-bottom:var(--ui-spacing-5)}.ui-page-header__nav{margin-bottom:var(--ui-spacing-2)}.ui-page-header__breadcrumb{display:flex;flex-wrap:wrap;align-items:center;list-style:none;margin:0;padding:0;font-family:var(--ui-font-family);font-size:var(--ui-font-size-sm);line-height:var(--ui-line-height-normal);gap:var(--ui-spacing-1)}.ui-page-header__item{display:inline-flex;align-items:center;gap:var(--ui-spacing-1)}a.ui-page-header__link lucide-icon{transform:translateY(2px)!important}span.ui-page-header__separator lucide-icon{transform:translateY(3px)!important}.ui-page-header__link{display:inline-flex;align-items:center;gap:4px;text-decoration:none;color:var(--ui-color-primary);border-radius:var(--ui-radius-sm);padding:2px 4px;margin:-2px -4px;transition:color var(--ui-transition-fast),background-color var(--ui-transition-fast)}.ui-page-header__link:hover{color:var(--ui-color-primary-hover);text-decoration:underline}.ui-page-header__link:focus{outline:none}.ui-page-header__link:focus-visible{outline:var(--ui-focus-ring-width) solid var(--ui-focus-ring-color);outline-offset:var(--ui-focus-ring-offset)}.ui-page-header__text{white-space:nowrap}.ui-page-header__text--current{font-weight:var(--ui-font-weight-medium);color:var(--ui-color-text)}.ui-page-header__separator{display:inline-flex;align-items:center;color:var(--ui-color-text-muted);flex-shrink:0}.ui-page-header__title{margin:0;font-family:var(--ui-font-family);font-size:var(--ui-font-size-2xl);font-weight:var(--ui-font-weight-bold);color:var(--ui-color-text);line-height:var(--ui-line-height-tight)}.ui-page-header__title:focus{outline:none}@media (min-width: 640px){.ui-page-header__title{font-size:var(--ui-font-size-xl)}.ui-page-header__breadcrumb{font-size:var(--ui-font-size-xs)}}\n"] }]
232
+ }], propDecorators: { title: [{
233
+ type: Input
234
+ }], homeRoute: [{
235
+ type: Input
236
+ }], showHome: [{
237
+ type: Input
238
+ }], updateDocumentTitle: [{
239
+ type: Input
240
+ }], titleSuffix: [{
241
+ type: Input
242
+ }] } });
243
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZS1oZWFkZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvbmctdWktc3lzdGVtL3NyYy9saWIvY29tcG9uZW50cy9wYWdlLWhlYWRlci9wYWdlLWhlYWRlci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsVUFBVSxFQUNWLE1BQU0sRUFDTixLQUFLLEVBRUwsdUJBQXVCLEVBQ3ZCLGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsY0FBYyxFQUFFLGFBQWEsRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDcEYsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7O0FBRzNEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXVCRztBQWlGSCxNQUFNLE9BQU8scUJBQXFCO0lBaEZsQztRQWlGRSxvR0FBb0c7UUFDM0YsVUFBSyxHQUFHLEVBQUUsQ0FBQztRQUVwQiwrQ0FBK0M7UUFDdEMsY0FBUyxHQUFHLEdBQUcsQ0FBQztRQUV6QixrRUFBa0U7UUFDekQsYUFBUSxHQUFHLElBQUksQ0FBQztRQUV6QixnRUFBZ0U7UUFDdkQsd0JBQW1CLEdBQUcsS0FBSyxDQUFDO1FBRXJDLGdIQUFnSDtRQUN2RyxnQkFBVyxHQUFHLEVBQUUsQ0FBQztRQUUxQixnQkFBZ0I7UUFDaEIsZ0JBQVcsR0FBdUIsRUFB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ICBDaGFuZ2VEZXRlY3RvclJlZixcclxuICBDb21wb25lbnQsXHJcbiAgRGVzdHJveVJlZixcclxuICBpbmplY3QsXHJcbiAgSW5wdXQsXHJcbiAgT25Jbml0LFxyXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxyXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyB0YWtlVW50aWxEZXN0cm95ZWQgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XHJcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlLCBOYXZpZ2F0aW9uRW5kLCBSb3V0ZXIsIFJvdXRlckxpbmsgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5pbXBvcnQgeyBUaXRsZSB9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xyXG5pbXBvcnQgeyBmaWx0ZXIgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IEx1Y2lkZUFuZ3VsYXJNb2R1bGUgfSBmcm9tICdsdWNpZGUtYW5ndWxhcic7XHJcbmltcG9ydCB7IFVpQnJlYWRjcnVtYlNlcnZpY2UgfSBmcm9tICcuL2JyZWFkY3J1bWIuc2VydmljZSc7XHJcbmltcG9ydCB7IFVpQnJlYWRjcnVtYkl0ZW0gfSBmcm9tICcuL3BhZ2UtaGVhZGVyLnR5cGVzJztcclxuXHJcbi8qKlxyXG4gKiBQYWdlIGhlYWRlciBjb21wb25lbnQgdGhhdCByZW5kZXJzIGEgYnJlYWRjcnVtYiBuYXZpZ2F0aW9uIHRyYWlsXHJcbiAqIGFuZCBhIHBhZ2UgdGl0bGUuIEludGVncmF0ZXMgd2l0aCBgVWlCcmVhZGNydW1iU2VydmljZWAgdG9cclxuICogYXV0b21hdGljYWxseSBkZXJpdmUgYnJlYWRjcnVtYnMgZnJvbSBBbmd1bGFyIHJvdXRlIGNvbmZpZ3VyYXRpb24uXHJcbiAqXHJcbiAqIFRoZSBicmVhZGNydW1iIHRyYWlsIGlzIGdlbmVyYXRlZCBmcm9tIHJvdXRlIGBkYXRhYCBwcm9wZXJ0aWVzOlxyXG4gKiAtIGBkYXRhLmlkYCDigJQgdW5pcXVlIHJvdXRlIGlkZW50aWZpZXJcclxuICogLSBgZGF0YS50aXRsZWAg4oCUIGRpc3BsYXkgbGFiZWxcclxuICogLSBgZGF0YS5icmVhZGNydW1ic2Ag4oCUIG9yZGVyZWQgYXJyYXkgb2YgcGFyZW50IHJvdXRlIElEc1xyXG4gKlxyXG4gKiBAc2VsZWN0b3IgdWktcGFnZS1oZWFkZXJcclxuICpcclxuICogQGV4YW1wbGVcclxuICogYGBgaHRtbFxyXG4gKiA8IS0tIEF1dG8gYnJlYWRjcnVtYnMgZnJvbSByb3V0ZSBkYXRhIC0tPlxyXG4gKiA8dWktcGFnZS1oZWFkZXIgLz5cclxuICpcclxuICogPCEtLSBXaXRoIGV4cGxpY2l0IHRpdGxlIG92ZXJyaWRlIC0tPlxyXG4gKiA8dWktcGFnZS1oZWFkZXIgdGl0bGU9XCJDdXN0b20gVGl0bGVcIiAvPlxyXG4gKlxyXG4gKiA8IS0tIFdpdGggZG9jdW1lbnQgdGl0bGUgdXBkYXRlIC0tPlxyXG4gKiA8dWktcGFnZS1oZWFkZXIgW3VwZGF0ZURvY3VtZW50VGl0bGVdPVwidHJ1ZVwiIHRpdGxlU3VmZml4PVwiIHwgTXkgQXBwXCIgLz5cclxuICogYGBgXHJcbiAqL1xyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3VpLXBhZ2UtaGVhZGVyJyxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIGltcG9ydHM6IFtSb3V0ZXJMaW5rLCBMdWNpZGVBbmd1bGFyTW9kdWxlXSxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxyXG4gIGhvc3Q6IHtcclxuICAgIGNsYXNzOiAndWktcGFnZS1oZWFkZXItaG9zdCcsXHJcbiAgfSxcclxuICB0ZW1wbGF0ZTogYFxyXG4gICAgPGhlYWRlciBjbGFzcz1cInVpLXBhZ2UtaGVhZGVyXCI+XHJcbiAgICAgIDxuYXYgYXJpYS1sYWJlbD1cIkJyZWFkY3J1bWJcIiBjbGFzcz1cInVpLXBhZ2UtaGVhZGVyX19uYXZcIj5cclxuICAgICAgICA8b2xcclxuICAgICAgICAgIGNsYXNzPVwidWktcGFnZS1oZWFkZXJfX2JyZWFkY3J1bWJcIlxyXG4gICAgICAgICAgaXRlbXNjb3BlXHJcbiAgICAgICAgICBpdGVtdHlwZT1cImh0dHBzOi8vc2NoZW1hLm9yZy9CcmVhZGNydW1iTGlzdFwiXHJcbiAgICAgICAgPlxyXG4gICAgICAgICAgQGlmIChzaG93SG9tZSkge1xyXG4gICAgICAgICAgICA8bGlcclxuICAgICAgICAgICAgICBjbGFzcz1cInVpLXBhZ2UtaGVhZGVyX19pdGVtXCJcclxuICAgICAgICAgICAgICBpdGVtcHJvcD1cIml0ZW1MaXN0RWxlbWVudFwiXHJcbiAgICAgICAgICAgICAgaXRlbXNjb3BlXHJcbiAgICAgICAgICAgICAgaXRlbXR5cGU9XCJodHRwczovL3NjaGVtYS5vcmcvTGlzdEl0ZW1cIlxyXG4gICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgPGFcclxuICAgICAgICAgICAgICAgIGl0ZW1wcm9wPVwiaXRlbVwiXHJcbiAgICAgICAgICAgICAgICBbcm91dGVyTGlua109XCJob21lUm91dGVcIlxyXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJ1aS1wYWdlLWhlYWRlcl9fbGlua1wiXHJcbiAgICAgICAgICAgICAgICBhcmlhLWxhYmVsPVwiSG9tZVwiXHJcbiAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgPGx1Y2lkZS1pY29uIG5hbWU9XCJob21lXCIgW3NpemVdPVwiMTRcIiBhcmlhLWhpZGRlbj1cInRydWVcIiAvPlxyXG4gICAgICAgICAgICAgICAgPHNwYW4gaXRlbXByb3A9XCJuYW1lXCIgY2xhc3M9XCJ1aS1wYWdlLWhlYWRlcl9fdGV4dFwiPkhvbWU8L3NwYW4+XHJcbiAgICAgICAgICAgICAgPC9hPlxyXG4gICAgICAgICAgICAgIDxtZXRhIGl0ZW1wcm9wPVwicG9zaXRpb25cIiBjb250ZW50PVwiMVwiIC8+XHJcbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ1aS1wYWdlLWhlYWRlcl9fc2VwYXJhdG9yXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCI+XHJcbiAgICAgICAgICAgICAgICA8bHVjaWRlLWljb24gbmFtZT1cImNoZXZyb24tcmlnaHRcIiBbc2l6ZV09XCIxNFwiIC8+XHJcbiAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICA8L2xpPlxyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgQGZvciAoY3J1bWIgb2YgYnJlYWRjcnVtYnM7IHRyYWNrIGNydW1iLnVybDsgbGV0IGkgPSAkaW5kZXgpIHtcclxuICAgICAgICAgICAgPGxpXHJcbiAgICAgICAgICAgICAgY2xhc3M9XCJ1aS1wYWdlLWhlYWRlcl9faXRlbVwiXHJcbiAgICAgICAgICAgICAgW2NsYXNzLnVpLXBhZ2UtaGVhZGVyX19pdGVtLS1jdXJyZW50XT1cImNydW1iLmlzTGFzdFwiXHJcbiAgICAgICAgICAgICAgaXRlbXByb3A9XCJpdGVtTGlzdEVsZW1lbnRcIlxyXG4gICAgICAgICAgICAgIGl0ZW1zY29wZVxyXG4gICAgICAgICAgICAgIGl0ZW10eXBlPVwiaHR0cHM6Ly9zY2hlbWEub3JnL0xpc3RJdGVtXCJcclxuICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgIEBpZiAoIWNydW1iLmlzTGFzdCkge1xyXG4gICAgICAgICAgICAgICAgPGFcclxuICAgICAgICAgICAgICAgICAgaXRlbXByb3A9XCJpdGVtXCJcclxuICAgICAgICAgICAgICAgICAgW3JvdXRlckxpbmtdPVwiY3J1bWIudXJsXCJcclxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ1aS1wYWdlLWhlYWRlcl9fbGlua1wiXHJcbiAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgIDxzcGFuIGl0ZW1wcm9wPVwibmFtZVwiIGNsYXNzPVwidWktcGFnZS1oZWFkZXJfX3RleHRcIj57eyBjcnVtYi5sYWJlbCB9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgIDwvYT5cclxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidWktcGFnZS1oZWFkZXJfX3NlcGFyYXRvclwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPlxyXG4gICAgICAgICAgICAgICAgICA8bHVjaWRlLWljb24gbmFtZT1cImNoZXZyb24tcmlnaHRcIiBbc2l6ZV09XCIxNFwiIC8+XHJcbiAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgfSBAZWxzZSB7XHJcbiAgICAgICAgICAgICAgICA8c3BhblxyXG4gICAgICAgICAgICAgICAgICBpdGVtcHJvcD1cIm5hbWVcIlxyXG4gICAgICAgICAgICAgICAgICBjbGFzcz1cInVpLXBhZ2UtaGVhZGVyX190ZXh0IHVpLXBhZ2UtaGVhZGVyX190ZXh0LS1jdXJyZW50XCJcclxuICAgICAgICAgICAgICAgICAgYXJpYS1jdXJyZW50PVwicGFnZVwiXHJcbiAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgIHt7IGNydW1iLmxhYmVsIH19XHJcbiAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIDxtZXRhIGl0ZW1wcm9wPVwicG9zaXRpb25cIiBbYXR0ci5jb250ZW50XT1cInNob3dIb21lID8gaSArIDIgOiBpICsgMVwiIC8+XHJcbiAgICAgICAgICAgIDwvbGk+XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgPC9vbD5cclxuICAgICAgPC9uYXY+XHJcblxyXG4gICAgICA8aDEgY2xhc3M9XCJ1aS1wYWdlLWhlYWRlcl9fdGl0bGVcIiBpZD1cInBhZ2UtdGl0bGVcIj5cclxuICAgICAgICB7eyBkaXNwbGF5VGl0bGUgfX1cclxuICAgICAgPC9oMT5cclxuICAgIDwvaGVhZGVyPlxyXG4gIGAsXHJcbiAgc3R5bGVVcmw6ICcuL3BhZ2UtaGVhZGVyLmNvbXBvbmVudC5zY3NzJyxcclxufSlcclxuZXhwb3J0IGNsYXNzIFVpUGFnZUhlYWRlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgLyoqIE92ZXJyaWRlIHRoZSBhdXRvLWRldGVjdGVkIHBhZ2UgdGl0bGUuIFdoZW4gZW1wdHksIHRpdGxlIGlzIGRlcml2ZWQgZnJvbSB0aGUgbGFzdCBicmVhZGNydW1iLiAqL1xyXG4gIEBJbnB1dCgpIHRpdGxlID0gJyc7XHJcblxyXG4gIC8qKiBSb3V0ZSBwYXRoIGZvciB0aGUgSG9tZSBicmVhZGNydW1iIGxpbmsuICovXHJcbiAgQElucHV0KCkgaG9tZVJvdXRlID0gJy8nO1xyXG5cclxuICAvKiogV2hldGhlciB0byBkaXNwbGF5IHRoZSBIb21lIGxpbmsgYXQgdGhlIHN0YXJ0IG9mIHRoZSB0cmFpbC4gKi9cclxuICBASW5wdXQoKSBzaG93SG9tZSA9IHRydWU7XHJcblxyXG4gIC8qKiBXaGVuIGB0cnVlYCwgdXBkYXRlcyBgZG9jdW1lbnQudGl0bGVgIG9uIGVhY2ggbmF2aWdhdGlvbi4gKi9cclxuICBASW5wdXQoKSB1cGRhdGVEb2N1bWVudFRpdGxlID0gZmFsc2U7XHJcblxyXG4gIC8qKiBTdWZmaXggYXBwZW5kZWQgdG8gYGRvY3VtZW50LnRpdGxlYCAoZS5nLiBgJyB8IE15IEFwcCdgKS4gT25seSB1c2VkIHdoZW4gYHVwZGF0ZURvY3VtZW50VGl0bGVgIGlzIGB0cnVlYC4gKi9cclxuICBASW5wdXQoKSB0aXRsZVN1ZmZpeCA9ICcnO1xyXG5cclxuICAvKiogQGludGVybmFsICovXHJcbiAgYnJlYWRjcnVtYnM6IFVpQnJlYWRjcnVtYkl0ZW1bXSA9IFtdO1xyXG5cclxuICBwcml2YXRlIHJlYWRvbmx5IHJvdXRlciA9IGluamVjdChSb3V0ZXIpO1xyXG4gIHByaXZhdGUgcmVhZG9ubHkgYWN0aXZhdGVkUm91dGUgPSBpbmplY3QoQWN0aXZhdGVkUm91dGUpO1xyXG4gIHByaXZhdGUgcmVhZG9ubHkgdGl0bGVTZXJ2aWNlID0gaW5qZWN0KFRpdGxlKTtcclxuICBwcml2YXRlIHJlYWRvbmx5IGJyZWFkY3J1bWJTZXJ2aWNlID0gaW5qZWN0KFVpQnJlYWRjcnVtYlNlcnZpY2UpO1xyXG4gIHByaXZhdGUgcmVhZG9ubHkgZGVzdHJveVJlZiA9IGluamVjdChEZXN0cm95UmVmKTtcclxuICBwcml2YXRlIHJlYWRvbmx5IGNkciA9IGluamVjdChDaGFuZ2VEZXRlY3RvclJlZik7XHJcblxyXG4gIC8qKiBSZXNvbHZlZCBwYWdlIHRpdGxlOiBleHBsaWNpdCBgdGl0bGVgIGlucHV0IHdpbnMsIG90aGVyd2lzZSBsYXN0IGJyZWFkY3J1bWIgbGFiZWwuICovXHJcbiAgZ2V0IGRpc3BsYXlUaXRsZSgpOiBzdHJpbmcge1xyXG4gICAgaWYgKHRoaXMudGl0bGUpIHJldHVybiB0aGlzLnRpdGxlO1xyXG4gICAgaWYgKHRoaXMuYnJlYWRjcnVtYnMubGVuZ3RoID4gMCkge1xyXG4gICAgICByZXR1cm4gdGhpcy5icmVhZGNydW1ic1t0aGlzLmJyZWFkY3J1bWJzLmxlbmd0aCAtIDFdLmxhYmVsO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuICcnO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLnJlZnJlc2goKTtcclxuXHJcbiAgICB0aGlzLnJvdXRlci5ldmVudHNcclxuICAgICAgLnBpcGUoXHJcbiAgICAgICAgZmlsdGVyKChldmVudCkgPT4gZXZlbnQgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uRW5kKSxcclxuICAgICAgICB0YWtlVW50aWxEZXN0cm95ZWQodGhpcy5kZXN0cm95UmVmKSxcclxuICAgICAgKVxyXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHRoaXMucmVmcmVzaCgpKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIE5hdmlnYXRlcyB0byB0aGUgcHJldmlvdXMgYnJlYWRjcnVtYiAocGFyZW50IHJvdXRlKS5cclxuICAgKiBAcGFyYW0gZmFsbGJhY2tVcmwgLSBVUkwgdG8gbmF2aWdhdGUgdG8gd2hlbiBubyBwYXJlbnQgZXhpc3RzIChkZWZhdWx0OiBob21lUm91dGUpLlxyXG4gICAqL1xyXG4gIG5hdmlnYXRlQmFjayhmYWxsYmFja1VybD86IHN0cmluZyk6IHZvaWQge1xyXG4gICAgdGhpcy5icmVhZGNydW1iU2VydmljZS5uYXZpZ2F0ZUJhY2soZmFsbGJhY2tVcmwgPz8gdGhpcy5ob21lUm91dGUpO1xyXG4gIH1cclxuXHJcbiAgLyoqIEBpbnRlcm5hbCAqL1xyXG4gIHByaXZhdGUgcmVmcmVzaCgpOiB2b2lkIHtcclxuICAgIHRoaXMuYnJlYWRjcnVtYnMgPSB0aGlzLmJyZWFkY3J1bWJTZXJ2aWNlLmdldEJyZWFkY3J1bWJzRm9yUm91dGUodGhpcy5hY3RpdmF0ZWRSb3V0ZSk7XHJcbiAgICBpZiAodGhpcy51cGRhdGVEb2N1bWVudFRpdGxlKSB7XHJcbiAgICAgIGNvbnN0IHRpdGxlID0gdGhpcy5kaXNwbGF5VGl0bGU7XHJcbiAgICAgIGlmICh0aXRsZSkge1xyXG4gICAgICAgIHRoaXMudGl0bGVTZXJ2aWNlLnNldFRpdGxlKGAke3RpdGxlfSR7dGhpcy50aXRsZVN1ZmZpeH1gKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,21 @@
1
+ /**
2
+ * @module ng-ui-system/page-header
3
+ * Types and interfaces for UiPageHeader and UiBreadcrumbService.
4
+ */
5
+ import { InjectionToken } from '@angular/core';
6
+ /**
7
+ * Injection token for providing a custom label resolver to UiBreadcrumbService.
8
+ *
9
+ * When not provided, parameters are displayed as-is (identity function).
10
+ *
11
+ * @example
12
+ * ```typescript
13
+ * // In your app.config.ts or module providers:
14
+ * { provide: UI_BREADCRUMB_LABEL_RESOLVER, useValue: myLabelResolver }
15
+ * ```
16
+ */
17
+ export const UI_BREADCRUMB_LABEL_RESOLVER = new InjectionToken('UI_BREADCRUMB_LABEL_RESOLVER', {
18
+ providedIn: 'root',
19
+ factory: () => (_name, value) => value,
20
+ });
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZS1oZWFkZXIudHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9uZy11aS1zeXN0ZW0vc3JjL2xpYi9jb21wb25lbnRzL3BhZ2UtaGVhZGVyL3BhZ2UtaGVhZGVyLnR5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7R0FHRztBQUVILE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFvRi9DOzs7Ozs7Ozs7O0dBVUc7QUFDSCxNQUFNLENBQUMsTUFBTSw0QkFBNEIsR0FBRyxJQUFJLGNBQWMsQ0FBb0IsOEJBQThCLEVBQUU7SUFDaEgsVUFBVSxFQUFFLE1BQU07SUFDbEIsT0FBTyxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUMsS0FBYSxFQUFFLEtBQWEsRUFBRSxFQUFFLENBQUMsS0FBSztDQUN2RCxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcclxuICogQG1vZHVsZSBuZy11aS1zeXN0ZW0vcGFnZS1oZWFkZXJcclxuICogVHlwZXMgYW5kIGludGVyZmFjZXMgZm9yIFVpUGFnZUhlYWRlciBhbmQgVWlCcmVhZGNydW1iU2VydmljZS5cclxuICovXHJcblxyXG5pbXBvcnQgeyBJbmplY3Rpb25Ub2tlbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuLyoqXHJcbiAqIFNpbmdsZSBicmVhZGNydW1iIGl0ZW0gcmVuZGVyZWQgaW4gdGhlIG5hdmlnYXRpb24gdHJhaWwuXHJcbiAqXHJcbiAqIEB1c2FnZU5vdGVzXHJcbiAqICMjIyBTdHJ1Y3R1cmVcclxuICogYGBgdHlwZXNjcmlwdFxyXG4gKiBjb25zdCBpdGVtOiBVaUJyZWFkY3J1bWJJdGVtID0ge1xyXG4gKiAgIGxhYmVsOiAnRGFzaGJvYXJkJyxcclxuICogICB1cmw6ICcvZGFzaGJvYXJkJyxcclxuICogICBpc0xhc3Q6IGZhbHNlLFxyXG4gKiB9O1xyXG4gKiBgYGBcclxuICovXHJcbmV4cG9ydCBpbnRlcmZhY2UgVWlCcmVhZGNydW1iSXRlbSB7XHJcbiAgLyoqIERpc3BsYXkgdGV4dCBmb3IgdGhlIGJyZWFkY3J1bWIgbGluay4gKi9cclxuICBsYWJlbDogc3RyaW5nO1xyXG4gIC8qKiBOYXZpZ2F0aW9uIFVSTCAoQW5ndWxhciBSb3V0ZXIgcGF0aCkuICovXHJcbiAgdXJsOiBzdHJpbmc7XHJcbiAgLyoqIFdoZXRoZXIgdGhpcyBpcyB0aGUgbGFzdCAoY3VycmVudCkgYnJlYWRjcnVtYiBpbiB0aGUgdHJhaWwuICovXHJcbiAgaXNMYXN0OiBib29sZWFuO1xyXG59XHJcblxyXG4vKipcclxuICogSW50ZXJuYWwgcm91dGUgY29uZmlndXJhdGlvbiBzdG9yZWQgYnkgVWlCcmVhZGNydW1iU2VydmljZS5cclxuICogQnVpbHQgZnJvbSBBbmd1bGFyIHJvdXRlIGBkYXRhYCBwcm9wZXJ0aWVzLlxyXG4gKlxyXG4gKiBAdXNhZ2VOb3Rlc1xyXG4gKiAjIyMgUm91dGUgZGF0YSBjb252ZW50aW9uXHJcbiAqIGBgYHR5cGVzY3JpcHRcclxuICoge1xyXG4gKiAgIHBhdGg6ICd1c2Vycy86dXNlcklkJyxcclxuICogICBkYXRhOiB7XHJcbiAqICAgICBpZDogJ3VzZXItZGV0YWlsJyxcclxuICogICAgIHRpdGxlOiAnRGV0dGFnbGlvIHV0ZW50ZScsXHJcbiAqICAgICBicmVhZGNydW1iczogWyd1c2Vycy1saXN0J10sXHJcbiAqICAgfSxcclxuICogICBjb21wb25lbnQ6IFVzZXJEZXRhaWxDb21wb25lbnQsXHJcbiAqIH1cclxuICogYGBgXHJcbiAqL1xyXG5leHBvcnQgaW50ZXJmYWNlIFVpQnJlYWRjcnVtYkNvbmZpZyB7XHJcbiAgLyoqIFVuaXF1ZSByb3V0ZSBpZGVudGlmaWVyIChmcm9tIGByb3V0ZS5kYXRhLmlkYCkuICovXHJcbiAgaWQ6IHN0cmluZztcclxuICAvKiogUmVzb2x2ZWQgcm91dGUgcGF0aCBwYXR0ZXJuIChtYXkgY29udGFpbiBgOnBhcmFtYCBwbGFjZWhvbGRlcnMpLiAqL1xyXG4gIHBhdGg6IHN0cmluZztcclxuICAvKiogRGlzcGxheSBsYWJlbCAoZnJvbSBgcm91dGUuZGF0YS50aXRsZWAgb3IgZmFsbGJhY2spLiAqL1xyXG4gIGxhYmVsOiBzdHJpbmc7XHJcbiAgLyoqIE9yZGVyZWQgYXJyYXkgb2YgcGFyZW50IHJvdXRlIElEcyBmb3IgYnVpbGRpbmcgdGhlIGJyZWFkY3J1bWIgY2hhaW4uICovXHJcbiAgcGFyZW50SWRzOiBzdHJpbmdbXTtcclxuICAvKiogRnVsbHkgcmVzb2x2ZWQgVVJMIGNhcHR1cmVkIGF0IG5hdmlnYXRpb24gdGltZS4gKi9cclxuICBmdWxsUGF0aD86IHN0cmluZztcclxuICAvKiogUmF3IHJvdXRlIGRhdGEgbWV0YWRhdGEuICovXHJcbiAgbWV0YWRhdGE/OiBSZWNvcmQ8c3RyaW5nLCBhbnk+O1xyXG59XHJcblxyXG4vKipcclxuICogRnVuY3Rpb24gc2lnbmF0dXJlIGZvciByZXNvbHZpbmcgcm91dGUgcGFyYW1ldGVyIHZhbHVlcyB0byBodW1hbi1yZWFkYWJsZSBsYWJlbHMuXHJcbiAqXHJcbiAqIENvbnN1bWVycyBjYW4gcHJvdmlkZSBhIGN1c3RvbSBpbXBsZW1lbnRhdGlvbiB2aWEgYFVJX0JSRUFEQ1JVTUJfTEFCRUxfUkVTT0xWRVJgXHJcbiAqIHRvIHRyYW5zbGF0ZSBjcnlwdGljIHBhcmFtZXRlciB2YWx1ZXMgKGUuZy4gVVVJRHMsIHNsdWdzKSBpbnRvIHVzZXItZnJpZW5kbHkgdGV4dC5cclxuICpcclxuICogQHBhcmFtIHBhcmFtTmFtZSAtIFRoZSByb3V0ZSBwYXJhbWV0ZXIgbmFtZSAoZS5nLiBgJ3VzZXJJZCdgKS5cclxuICogQHBhcmFtIHBhcmFtVmFsdWUgLSBUaGUgcmF3IHBhcmFtZXRlciB2YWx1ZSBmcm9tIHRoZSBVUkwgKGUuZy4gYCdhYmMtMTIzJ2ApLlxyXG4gKiBAcmV0dXJucyBBIGh1bWFuLXJlYWRhYmxlIGxhYmVsLCBvciB0aGUgb3JpZ2luYWwgdmFsdWUgaWYgbm8gbWFwcGluZyBleGlzdHMuXHJcbiAqXHJcbiAqIEB1c2FnZU5vdGVzXHJcbiAqICMjIyBDdXN0b20gcmVzb2x2ZXJcclxuICogYGBgdHlwZXNjcmlwdFxyXG4gKiBjb25zdCBteVJlc29sdmVyOiBVaUxhYmVsUmVzb2x2ZXJGbiA9IChuYW1lLCB2YWx1ZSkgPT4ge1xyXG4gKiAgIGlmIChuYW1lID09PSAnc3RhdHVzJykge1xyXG4gKiAgICAgcmV0dXJuIHsgcGVuZGluZzogJ0luIGF0dGVzYScsIGFjdGl2ZTogJ0F0dGl2bycgfVt2YWx1ZV0gPz8gdmFsdWU7XHJcbiAqICAgfVxyXG4gKiAgIHJldHVybiB2YWx1ZTtcclxuICogfTtcclxuICpcclxuICogcHJvdmlkZXJzOiBbXHJcbiAqICAgeyBwcm92aWRlOiBVSV9CUkVBRENSVU1CX0xBQkVMX1JFU09MVkVSLCB1c2VWYWx1ZTogbXlSZXNvbHZlciB9LFxyXG4gKiBdXHJcbiAqIGBgYFxyXG4gKi9cclxuZXhwb3J0IHR5cGUgVWlMYWJlbFJlc29sdmVyRm4gPSAocGFyYW1OYW1lOiBzdHJpbmcsIHBhcmFtVmFsdWU6IHN0cmluZykgPT4gc3RyaW5nO1xyXG5cclxuLyoqXHJcbiAqIEluamVjdGlvbiB0b2tlbiBmb3IgcHJvdmlkaW5nIGEgY3VzdG9tIGxhYmVsIHJlc29sdmVyIHRvIFVpQnJlYWRjcnVtYlNlcnZpY2UuXHJcbiAqXHJcbiAqIFdoZW4gbm90IHByb3ZpZGVkLCBwYXJhbWV0ZXJzIGFyZSBkaXNwbGF5ZWQgYXMtaXMgKGlkZW50aXR5IGZ1bmN0aW9uKS5cclxuICpcclxuICogQGV4YW1wbGVcclxuICogYGBgdHlwZXNjcmlwdFxyXG4gKiAvLyBJbiB5b3VyIGFwcC5jb25maWcudHMgb3IgbW9kdWxlIHByb3ZpZGVyczpcclxuICogeyBwcm92aWRlOiBVSV9CUkVBRENSVU1CX0xBQkVMX1JFU09MVkVSLCB1c2VWYWx1ZTogbXlMYWJlbFJlc29sdmVyIH1cclxuICogYGBgXHJcbiAqL1xyXG5leHBvcnQgY29uc3QgVUlfQlJFQURDUlVNQl9MQUJFTF9SRVNPTFZFUiA9IG5ldyBJbmplY3Rpb25Ub2tlbjxVaUxhYmVsUmVzb2x2ZXJGbj4oJ1VJX0JSRUFEQ1JVTUJfTEFCRUxfUkVTT0xWRVInLCB7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxyXG4gIGZhY3Rvcnk6ICgpID0+IChfbmFtZTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nKSA9PiB2YWx1ZSxcclxufSk7XHJcbiJdfQ==
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Shared types for ng-ui-system components.
3
+ * These types are used across multiple components to ensure consistency.
4
+ */
5
+ export {};
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9uZy11aS1zeXN0ZW0vc3JjL2xpYi9jb3JlL3R5cGVzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7R0FHRyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxyXG4gKiBTaGFyZWQgdHlwZXMgZm9yIG5nLXVpLXN5c3RlbSBjb21wb25lbnRzLlxyXG4gKiBUaGVzZSB0eXBlcyBhcmUgdXNlZCBhY3Jvc3MgbXVsdGlwbGUgY29tcG9uZW50cyB0byBlbnN1cmUgY29uc2lzdGVuY3kuXHJcbiAqL1xyXG5cclxuLyoqIFN0YW5kYXJkIHNpemUgdmFyaWFudHMgdXNlZCBhY3Jvc3MgY29tcG9uZW50cy4gKi9cclxuZXhwb3J0IHR5cGUgVWlTaXplID0gJ3hzJyB8ICdzbScgfCAnbWQnIHwgJ2xnJyB8ICd4bCc7XHJcblxyXG4vKiogVmlzdWFsIHN0eWxlIHZhcmlhbnRzIGZvciBjb21wb25lbnRzLiAqL1xyXG5leHBvcnQgdHlwZSBVaVZhcmlhbnQgPSAncHJpbWFyeScgfCAnYWNjZW50JyB8ICd3YXJuJyB8ICduZXV0cmFsJyB8ICdnaG9zdCcgfCAnb3V0bGluZSc7XHJcblxyXG4vKiogU2VtYW50aWMgY29sb3IgcGFsZXR0ZSB0b2tlbnMuICovXHJcbmV4cG9ydCB0eXBlIFVpQ29sb3IgPSAncHJpbWFyeScgfCAnYWNjZW50JyB8ICd3YXJuJyB8ICdzdWNjZXNzJyB8ICdpbmZvJyB8ICduZXV0cmFsJztcclxuXHJcbi8qKiBMYXlvdXQgZGlyZWN0aW9uLiAqL1xyXG5leHBvcnQgdHlwZSBVaURpcmVjdGlvbiA9ICdob3Jpem9udGFsJyB8ICd2ZXJ0aWNhbCc7XHJcblxyXG4vKiogSG9yaXpvbnRhbCBhbGlnbm1lbnQuICovXHJcbmV4cG9ydCB0eXBlIFVpQWxpZ24gPSAnc3RhcnQnIHwgJ2NlbnRlcicgfCAnZW5kJyB8ICdzdHJldGNoJztcclxuXHJcbi8qKiBDb21wb25lbnQgZGVuc2l0eSBvcHRpb25zIGZvciBjb21wYWN0IG9yIHNwYWNpb3VzIGxheW91dHMuICovXHJcbmV4cG9ydCB0eXBlIFVpRGVuc2l0eSA9ICdjb21wYWN0JyB8ICdkZWZhdWx0JyB8ICdjb21mb3J0YWJsZSc7XHJcblxyXG4vKipcclxuICogQ29tbW9uIEx1Y2lkZSBpY29uIG5hbWVzIHdpdGggYXV0b2NvbXBsZXRlIHN1cHBvcnQuXHJcbiAqIEFjY2VwdHMgYW55IHZhbGlkIEx1Y2lkZSBpY29uIG5hbWUgYXMgYSBzdHJpbmcuXHJcbiAqXHJcbiAqIFByb3ZpZGVzIEludGVsbGlTZW5zZSBmb3IgdGhlIG1vc3QgZnJlcXVlbnRseSB1c2VkIGVudGVycHJpc2UgaWNvbnMuXHJcbiAqIEZvciB0aGUgZnVsbCBpY29uIGNhdGFsb2d1ZSwgdmlzaXQgaHR0cHM6Ly9sdWNpZGUuZGV2L2ljb25zXHJcbiAqXHJcbiAqIEBleGFtcGxlXHJcbiAqIGBgYHR5cGVzY3JpcHRcclxuICogY29uc3QgbXlJY29uOiBVaUljb25OYW1lID0gJ2Fycm93LXJpZ2h0JzsgIC8vIGF1dG9jb21wbGV0ZSDinJNcclxuICogY29uc3QgY3VzdG9tOiBVaUljb25OYW1lID0gJ215LWN1c3RvbS1pY29uJzsgLy8gc3RpbGwgdmFsaWRcclxuICogYGBgXHJcbiAqL1xyXG5leHBvcnQgdHlwZSBVaUljb25OYW1lID1cclxuICAvLyDilIDilIAgTmF2aWdhdGlvbiDilIDilIBcclxuICB8ICdhcnJvdy1yaWdodCdcclxuICB8ICdhcnJvdy1sZWZ0J1xyXG4gIHwgJ2Fycm93LXVwJ1xyXG4gIHwgJ2Fycm93LWRvd24nXHJcbiAgfCAnY2hldnJvbi1yaWdodCdcclxuICB8ICdjaGV2cm9uLWxlZnQnXHJcbiAgfCAnY2hldnJvbi11cCdcclxuICB8ICdjaGV2cm9uLWRvd24nXHJcbiAgfCAnZXh0ZXJuYWwtbGluaydcclxuICB8ICdjb3JuZXItZG93bi1sZWZ0J1xyXG4gIHwgJ2Nvcm5lci1kb3duLXJpZ2h0J1xyXG4gIC8vIOKUgOKUgCBBY3Rpb25zIOKUgOKUgFxyXG4gIHwgJ2NoZWNrJ1xyXG4gIHwgJ3gnXHJcbiAgfCAncGx1cydcclxuICB8ICdtaW51cydcclxuICB8ICdzZWFyY2gnXHJcbiAgfCAncmVmcmVzaC1jdydcclxuICB8ICdkb3dubG9hZCdcclxuICB8ICd1cGxvYWQnXHJcbiAgfCAnc2F2ZSdcclxuICB8ICd0cmFzaC0yJ1xyXG4gIHwgJ3BlbmNpbCdcclxuICB8ICdjb3B5J1xyXG4gIHwgJ2NsaXBib2FyZCdcclxuICB8ICdzaGFyZS0yJ1xyXG4gIHwgJ3NlbmQnXHJcbiAgfCAnbG9nLWluJ1xyXG4gIHwgJ2xvZy1vdXQnXHJcbiAgLy8g4pSA4pSAIENvbW11bmljYXRpb24g4pSA4pSAXHJcbiAgfCAnbWFpbCdcclxuICB8ICdtZXNzYWdlLWNpcmNsZSdcclxuICB8ICdwaG9uZSdcclxuICB8ICdiZWxsJ1xyXG4gIC8vIOKUgOKUgCBVc2VycyAmIElkZW50aXR5IOKUgOKUgFxyXG4gIHwgJ3VzZXInXHJcbiAgfCAndXNlcnMnXHJcbiAgfCAnbG9jaydcclxuICB8ICd1bmxvY2snXHJcbiAgfCAna2V5J1xyXG4gIHwgJ3NoaWVsZCdcclxuICAvLyDilIDilIAgRmlsZXMgJiBNZWRpYSDilIDilIBcclxuICB8ICdmaWxlJ1xyXG4gIHwgJ2ZpbGUtdGV4dCdcclxuICB8ICdmaWxlLXNwcmVhZHNoZWV0J1xyXG4gIHwgJ2ZpbGUtYXJjaGl2ZSdcclxuICB8ICdmb2xkZXInXHJcbiAgfCAnaW1hZ2UnXHJcbiAgfCAnY2FtZXJhJ1xyXG4gIHwgJ3BhcGVyY2xpcCdcclxuICAvLyDilIDilIAgRmVlZGJhY2sgJiBTdGF0dXMg4pSA4pSAXHJcbiAgfCAnaW5mbydcclxuICB8ICdhbGVydC10cmlhbmdsZSdcclxuICB8ICdhbGVydC1jaXJjbGUnXHJcbiAgfCAnY2hlY2stY2lyY2xlJ1xyXG4gIHwgJ3gtY2lyY2xlJ1xyXG4gIHwgJ2hlbHAtY2lyY2xlJ1xyXG4gIHwgJ2xvYWRlci0yJ1xyXG4gIC8vIOKUgOKUgCBMYXlvdXQgJiBVSSDilIDilIBcclxuICB8ICdtZW51J1xyXG4gIHwgJ21vcmUtaG9yaXpvbnRhbCdcclxuICB8ICdtb3JlLXZlcnRpY2FsJ1xyXG4gIHwgJ2dyaWQnXHJcbiAgfCAnbGlzdCdcclxuICB8ICdmaWx0ZXInXHJcbiAgfCAnc2xpZGVycydcclxuICB8ICdjb2x1bW5zJ1xyXG4gIHwgJ21heGltaXplLTInXHJcbiAgfCAnbWluaW1pemUtMidcclxuICAvLyDilIDilIAgTWlzYyDilIDilIBcclxuICB8ICdob21lJ1xyXG4gIHwgJ3NldHRpbmdzJ1xyXG4gIHwgJ3N0YXInXHJcbiAgfCAnaGVhcnQnXHJcbiAgfCAnYm9va21hcmsnXHJcbiAgfCAnY2FsZW5kYXInXHJcbiAgfCAnY2xvY2snXHJcbiAgfCAnbWFwLXBpbidcclxuICB8ICdleWUnXHJcbiAgfCAnZXllLW9mZidcclxuICB8ICdzdW4nXHJcbiAgfCAnbW9vbidcclxuICB8ICdtb25pdG9yJ1xyXG4gIC8vIOKUgOKUgCBBY2NlcHRzIGFueSBzdHJpbmcgZm9yIGN1c3RvbSAvIHVubGlzdGVkIGljb25zIOKUgOKUgFxyXG4gIHwgKHN0cmluZyAmIFJlY29yZDxuZXZlciwgbmV2ZXI+KTtcclxuXHJcbi8qKiBTdGF0dXMgdmFsdWVzIHVzZWQgZm9yIGZlZWRiYWNrIGNvbXBvbmVudHMgKGJhZGdlcywgYWxlcnRzLCBpbmRpY2F0b3JzKS4gKi9cclxuZXhwb3J0IHR5cGUgVWlTdGF0dXMgPSAnaWRsZScgfCAnbG9hZGluZycgfCAnc3VjY2VzcycgfCAnZXJyb3InIHwgJ3dhcm5pbmcnIHwgJ2luZm8nO1xyXG5cclxuLyoqXHJcbiAqIEdlbmVyaWMga2V5LXZhbHVlIHBhaXIgdXNlZCBpbiBzZWxlY3Qgb3B0aW9ucywgZHJvcGRvd25zLCBldGMuXHJcbiAqIEB0ZW1wbGF0ZSBUIC0gVGhlIHR5cGUgb2YgdGhlIHZhbHVlLlxyXG4gKi9cclxuZXhwb3J0IGludGVyZmFjZSBVaU9wdGlvbjxUID0gc3RyaW5nPiB7XHJcbiAgLyoqIFRoZSBkaXNwbGF5IGxhYmVsLiAqL1xyXG4gIGxhYmVsOiBzdHJpbmc7XHJcbiAgLyoqIFRoZSB1bmRlcmx5aW5nIHZhbHVlLiAqL1xyXG4gIHZhbHVlOiBUO1xyXG4gIC8qKiBXaGV0aGVyIHRoaXMgb3B0aW9uIGlzIGRpc2FibGVkLiAqL1xyXG4gIGRpc2FibGVkPzogYm9vbGVhbjtcclxuICAvKiogT3B0aW9uYWwgaWNvbiBuYW1lIChMdWNpZGUgaWNvbikuICovXHJcbiAgaWNvbj86IFVpSWNvbk5hbWU7XHJcbiAgLyoqIE9wdGlvbmFsIGdyb3VwaW5nIGtleSBmb3IgZ3JvdXBlZCBzZWxlY3RzLiAqL1xyXG4gIGdyb3VwPzogc3RyaW5nO1xyXG59XHJcblxyXG4vKipcclxuICogUmVzdWx0IHdyYXBwZXIgZm9yIGFzeW5jIG9wZXJhdGlvbnMuXHJcbiAqIEB0ZW1wbGF0ZSBUIC0gVGhlIHR5cGUgb2YgdGhlIGRhdGEgcGF5bG9hZC5cclxuICovXHJcbmV4cG9ydCBpbnRlcmZhY2UgVWlBc3luY1N0YXRlPFQgPSB1bmtub3duPiB7XHJcbiAgc3RhdHVzOiBVaVN0YXR1cztcclxuICBkYXRhOiBUIHwgbnVsbDtcclxuICBlcnJvcjogc3RyaW5nIHwgbnVsbDtcclxufVxyXG5cclxuLy8g4pSA4pSAIFRvYXN0IOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxyXG5cclxuLyoqIFRvYXN0IG5vdGlmaWNhdGlvbiB0eXBlLiAqL1xyXG5leHBvcnQgdHlwZSBVaVRvYXN0VHlwZSA9ICdzdWNjZXNzJyB8ICdlcnJvcicgfCAnd2FybmluZycgfCAnaW5mbyc7XHJcblxyXG4vLyDilIDilIAgRW5kcG9pbnQgLyBIVFRQIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxyXG5cclxuLyoqIE1lc3NhZ2VzIGNvbmZpZ3VyYXRpb24gZm9yIGFuIGVuZHBvaW50IChpbmxpbmUsIG5vIGxhYmVsIGFyY2hpdmUpLiAqL1xyXG5leHBvcnQgaW50ZXJmYWNlIFVpRW5kcG9pbnRNZXNzYWdlcyB7XHJcbiAgLyoqIFN1Y2Nlc3MgdG9hc3QgbWVzc2FnZS4gU3VwcG9ydHMgYCR7a2V5fWAgcGxhY2Vob2xkZXJzIHJlcGxhY2VkIGF0IHJ1bnRpbWUuICovXHJcbiAgc3VjY2Vzcz86IHN0cmluZztcclxuICAvKiogRXJyb3IgdG9hc3QgbWVzc2FnZS4gU3VwcG9ydHMgYCR7a2V5fWAgcGxhY2Vob2xkZXJzIHJlcGxhY2VkIGF0IHJ1bnRpbWUuICovXHJcbiAgZXJyb3I/OiBzdHJpbmc7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBFeHRyYWN0cyBhIGN1c3RvbSBlcnJvciBtZXNzYWdlIGZyb20gdGhlIEhUVFAgZXJyb3IgcmVzcG9uc2UuXHJcbiAqIFJldHVybiBgbnVsbGAgdG8gZmFsbCBiYWNrIHRvIHRoZSBkZWZhdWx0IG1lc3NhZ2UuXHJcbiAqL1xyXG5leHBvcnQgdHlwZSBVaUVycm9yRXh0cmFjdG9yID0gKGVycm9yOiBhbnkpID0+IHN0cmluZyB8IG51bGw7XHJcblxyXG4vKipcclxuICogRHluYW1pY2FsbHkgcmVzb2x2ZXMgYSBzdWNjZXNzIG1lc3NhZ2UgYXQgcnVudGltZS5cclxuICogUmV0dXJuIGBudWxsYCB0byBmYWxsIGJhY2sgdG8gdGhlIGRlZmF1bHQgbWVzc2FnZS5cclxuICovXHJcbmV4cG9ydCB0eXBlIFVpU3VjY2Vzc1Jlc29sdmVyID0gKCkgPT4gc3RyaW5nIHwgbnVsbDtcclxuXHJcbi8qKlxyXG4gKiBRdWVyeSBwYXJhbWV0ZXJzIGZvciBVUkwgYnVpbGRpbmcuXHJcbiAqIEtleXMgbWFwIHRvIHF1ZXJ5IHBhcmFtIG5hbWVzOyB2YWx1ZXMgYXJlIGF1dG8tY29udmVydGVkIHRvIHN0cmluZ3MuXHJcbiAqL1xyXG5leHBvcnQgdHlwZSBVaVF1ZXJ5UGFyYW1ldGVycyA9IFJlY29yZDxzdHJpbmcsIHN0cmluZyB8IHN0cmluZ1tdIHwgbnVtYmVyIHwgbnVtYmVyW10gfCBib29sZWFuPjtcclxuXHJcbi8qKlxyXG4gKiBFbmRwb2ludCBjb25maWd1cmF0aW9uIGZvciBgVWlIdHRwU2VydmljZWAuXHJcbiAqXHJcbiAqIEVhY2ggZW5kcG9pbnQgZGVmaW5lcyBpdHMgVVJMLCBvcHRpb25hbCBpbmxpbmUgbWVzc2FnZXMsIGFuZFxyXG4gKiB0b2FzdC9lcnJvciBiZWhhdmlvdXIuIEFsbCB0b2FzdCBmbGFncyBkZWZhdWx0IHRvIGBmYWxzZWAgKG9wdC1pbikuXHJcbiAqXHJcbiAqIEB1c2FnZU5vdGVzXHJcbiAqICMjIyBCYXNpYyBlbmRwb2ludCBmYWN0b3J5XHJcbiAqIGBgYHR5cGVzY3JpcHRcclxuICogY29uc3QgU0FWRV9VU0VSID0gKCk6IFVpRW5kcG9pbnQgPT4gKHtcclxuICogICB1cmw6ICcvYXBpL3VzZXJzJyxcclxuICogICBpZDogJ3VzZXJfc2F2ZScsXHJcbiAqICAgc2hvd1N1Y2Nlc3M6IHRydWUsXHJcbiAqICAgbWVzc2FnZXM6IHsgc3VjY2VzczogJ1V0ZW50ZSBzYWx2YXRvIScgfSxcclxuICogfSk7XHJcbiAqIGBgYFxyXG4gKlxyXG4gKiAjIyMgRHluYW1pYyBlbmRwb2ludCB3aXRoIHJlcGxhY2VtZW50c1xyXG4gKiBgYGB0eXBlc2NyaXB0XHJcbiAqIGNvbnN0IFVQREFURV9JVEVNID0gKGlkOiBudW1iZXIpOiBVaUVuZHBvaW50ID0+ICh7XHJcbiAqICAgdXJsOiBgL2FwaS9pdGVtcy8ke2lkfWAsXHJcbiAqICAgaWQ6ICdpdGVtX3VwZGF0ZScsXHJcbiAqICAgc2hvd1N1Y2Nlc3M6IHRydWUsXHJcbiAqICAgc2hvd0Vycm9yOiB0cnVlLFxyXG4gKiAgIG1lc3NhZ2VzOiB7XHJcbiAqICAgICBzdWNjZXNzOiAnRWxlbWVudG8gJHtuYW1lfSBhZ2dpb3JuYXRvJyxcclxuICogICAgIGVycm9yOiAnRXJyb3JlIGFnZ2lvcm5hbWVudG8gZWxlbWVudG8nLFxyXG4gKiAgIH0sXHJcbiAqICAgcmVwbGFjZW1lbnRzOiB7IG5hbWU6ICdXaWRnZXQnIH0sXHJcbiAqIH0pO1xyXG4gKiBgYGBcclxuICovXHJcbmV4cG9ydCBpbnRlcmZhY2UgVWlFbmRwb2ludCB7XHJcbiAgLyoqIFJlbGF0aXZlIG9yIGFic29sdXRlIFVSTCBmb3IgdGhlIEFQSSBjYWxsLiAqL1xyXG4gIHVybDogc3RyaW5nO1xyXG4gIC8qKiBVbmlxdWUgaWRlbnRpZmllciBmb3IgdGhlIGVuZHBvaW50ICh1c2VkIGZvciBkZWJvdW5jZSBrZXlpbmcpLiAqL1xyXG4gIGlkOiBzdHJpbmc7XHJcbiAgLyoqIFdoZXRoZXIgdG8gc2hvdyBhIHN1Y2Nlc3MgdG9hc3Qgb24gY29tcGxldGlvbi4gRGVmYXVsdDogYGZhbHNlYC4gKi9cclxuICBzaG93U3VjY2Vzcz86IGJvb2xlYW47XHJcbiAgLyoqIFdoZXRoZXIgdG8gc2hvdyBhbiBlcnJvciB0b2FzdCBvbiBmYWlsdXJlLiBEZWZhdWx0OiBgZmFsc2VgLiAqL1xyXG4gIHNob3dFcnJvcj86IGJvb2xlYW47XHJcbiAgLyoqIElubGluZSBtZXNzYWdlcyBmb3Igc3VjY2Vzcy9lcnJvciB0b2FzdHMuICovXHJcbiAgbWVzc2FnZXM/OiBVaUVuZHBvaW50TWVzc2FnZXM7XHJcbiAgLyoqIFBsYWNlaG9sZGVyIHJlcGxhY2VtZW50cyBmb3IgbWVzc2FnZSBzdHJpbmdzIChgJHtrZXl9YCDihpIgdmFsdWUpLiAqL1xyXG4gIHJlcGxhY2VtZW50cz86IFJlY29yZDxzdHJpbmcsIHN0cmluZyB8IG51bWJlcj47XHJcbiAgLyoqIEN1c3RvbSBlcnJvciBtZXNzYWdlIGV4dHJhY3RvciBmcm9tIHRoZSBIVFRQIGVycm9yIHJlc3BvbnNlLiAqL1xyXG4gIGVycm9yRXh0cmFjdG9yPzogVWlFcnJvckV4dHJhY3RvcjtcclxuICAvKiogQ3VzdG9tIHN1Y2Nlc3MgbWVzc2FnZSByZXNvbHZlciAob3ZlcnJpZGVzIGlubGluZSBtZXNzYWdlKS4gKi9cclxuICBzdWNjZXNzTWVzc2FnZVJlc29sdmVyPzogVWlTdWNjZXNzUmVzb2x2ZXI7XHJcbiAgLyoqIFdoZXRoZXIgdGhpcyBlbmRwb2ludCBzaG91bGQgYmUgdHJhY2tlZCBieSBCbGFja0JveC4gRGVmYXVsdDogYHRydWVgLiAqL1xyXG4gIHRyYWNrYWJsZT86IGJvb2xlYW47XHJcbn1cclxuIl19
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Bootstrap del secondary entry `@gnggln/ng-ui-system/blackbox`. BlackBox observability.
3
+ */
4
+ export * from './lib/components/blackbox/index';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50cnktYmxhY2tib3guanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9uZy11aS1zeXN0ZW0vc3JjL2VudHJ5LWJsYWNrYm94LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBQ0gsY0FBYyxpQ0FBaUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQm9vdHN0cmFwIGRlbCBzZWNvbmRhcnkgZW50cnkgYEBnbmdnbG4vbmctdWktc3lzdGVtL2JsYWNrYm94YC4gQmxhY2tCb3ggb2JzZXJ2YWJpbGl0eS5cbiAqL1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9ibGFja2JveC9pbmRleCc7XG5cbiJdfQ==
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './entry-blackbox';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ25nZ2xuLW5nLXVpLXN5c3RlbS1ibGFja2JveC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL25nLXVpLXN5c3RlbS9zcmMvZ25nZ2xuLW5nLXVpLXN5c3RlbS1ibGFja2JveC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsa0JBQWtCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vZW50cnktYmxhY2tib3gnO1xuIl19