@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,9 @@
1
+ /**
2
+ * @module ng-ui-system/layout-builder
3
+ * Types and interfaces for the UiLayoutBuilder shell component.
4
+ *
5
+ * The layout builder uses a schema-driven approach (similar to UiFormBuilder)
6
+ * to materialize a full responsive application shell from a single descriptor.
7
+ */
8
+ export {};
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5b3V0LWJ1aWxkZXIudHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9uZy11aS1zeXN0ZW0vc3JjL2xpYi9jb21wb25lbnRzL2xheW91dC1idWlsZGVyL2xheW91dC1idWlsZGVyLnR5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7R0FNRyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxyXG4gKiBAbW9kdWxlIG5nLXVpLXN5c3RlbS9sYXlvdXQtYnVpbGRlclxyXG4gKiBUeXBlcyBhbmQgaW50ZXJmYWNlcyBmb3IgdGhlIFVpTGF5b3V0QnVpbGRlciBzaGVsbCBjb21wb25lbnQuXHJcbiAqXHJcbiAqIFRoZSBsYXlvdXQgYnVpbGRlciB1c2VzIGEgc2NoZW1hLWRyaXZlbiBhcHByb2FjaCAoc2ltaWxhciB0byBVaUZvcm1CdWlsZGVyKVxyXG4gKiB0byBtYXRlcmlhbGl6ZSBhIGZ1bGwgcmVzcG9uc2l2ZSBhcHBsaWNhdGlvbiBzaGVsbCBmcm9tIGEgc2luZ2xlIGRlc2NyaXB0b3IuXHJcbiAqL1xyXG5cclxuaW1wb3J0IHsgVWlJY29uTmFtZSwgVWlWYXJpYW50IH0gZnJvbSAnLi4vLi4vY29yZS90eXBlcy9pbmRleCc7XHJcblxyXG4vLyDilIDilIDilIAgTGF5b3V0IE1vZGUgJiBDb250ZW50IFR5cGUg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXHJcblxyXG4vKiogTGF5b3V0IG1vZGUgY29udHJvbGxpbmcgdGhlIG92ZXJhbGwgbmF2aWdhdGlvbiBzdHJhdGVneS4gKi9cclxuZXhwb3J0IHR5cGUgVWlMYXlvdXRNb2RlID0gJ3NpZGViYXInIHwgJ3RvcGJhcicgfCAnc2xvdHRlZCc7XHJcblxyXG4vKiogQ29udGVudCBhcmVhIHNpemluZyBzdHJhdGVneS4gKi9cclxuZXhwb3J0IHR5cGUgVWlDb250ZW50VHlwZSA9ICdmbHVpZCcgfCAnYm94ZWQnIHwgJ2Z1bGxzY3JlZW4nO1xyXG5cclxuLy8g4pSA4pSA4pSAIEJyZWFkY3J1bWIg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXHJcblxyXG4vKiogU2luZ2xlIGJyZWFkY3J1bWIgZW50cnkgZGVyaXZlZCBmcm9tIHRoZSBuYXZpZ2F0aW9uIHNjaGVtYS4gKi9cclxuZXhwb3J0IGludGVyZmFjZSBVaUxheW91dEJyZWFkY3J1bWIge1xyXG4gIC8qKiBEaXNwbGF5IGxhYmVsLiAqL1xyXG4gIGxhYmVsOiBzdHJpbmc7XHJcbiAgLyoqIFJvdXRlIFVSTCAob21pdHRlZCBmb3IgdGhlIGN1cnJlbnQvbGFzdCBjcnVtYikuICovXHJcbiAgdXJsPzogc3RyaW5nO1xyXG4gIC8qKiBXaGV0aGVyIHRoaXMgaXMgdGhlIGxhc3QgKGN1cnJlbnQpIGJyZWFkY3J1bWIgaW4gdGhlIHRyYWlsLiAqL1xyXG4gIGlzTGFzdDogYm9vbGVhbjtcclxufVxyXG5cclxuLy8g4pSA4pSA4pSAIE5hdmlnYXRpb24g4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXHJcblxyXG4vKiogRGlzY3JpbWluYXRvciBmb3IgbmF2aWdhdGlvbiBpdGVtIGJlaGF2aW91ci4gKi9cclxuZXhwb3J0IHR5cGUgVWlOYXZJdGVtVHlwZSA9ICdyb3V0ZScgfCAnZXh0ZXJuYWwnIHwgJ2RpdmlkZXInO1xyXG5cclxuLyoqXHJcbiAqIFNpbmdsZSBuYXZpZ2F0aW9uIGl0ZW0gZGVzY3JpcHRvci5cclxuICpcclxuICogQHVzYWdlTm90ZXNcclxuICogIyMjIEludGVybmFsIHJvdXRlXHJcbiAqIGBgYHR5cGVzY3JpcHRcclxuICogeyBpZDogJ3VzZXJzJywgbGFiZWw6ICdVdGVudGknLCBpY29uOiAndXNlcnMnLCByb3V0ZTogJy91c2VycycgfVxyXG4gKiBgYGBcclxuICpcclxuICogIyMjIEV4dGVybmFsIGxpbmtcclxuICogYGBgdHlwZXNjcmlwdFxyXG4gKiB7IGlkOiAnZG9jcycsIGxhYmVsOiAnRG9jcycsIGljb246ICdleHRlcm5hbC1saW5rJywgdHlwZTogJ2V4dGVybmFsJyxcclxuICogICBocmVmOiAnaHR0cHM6Ly9kb2NzLmV4YW1wbGUuY29tJywgdGFyZ2V0OiAnX2JsYW5rJyB9XHJcbiAqIGBgYFxyXG4gKlxyXG4gKiAjIyMgRXhwYW5kYWJsZSB3aXRoIGNoaWxkcmVuXHJcbiAqIGBgYHR5cGVzY3JpcHRcclxuICoge1xyXG4gKiAgIGlkOiAnZm9ybS1idWlsZGVyJywgbGFiZWw6ICdGb3JtIEJ1aWxkZXInLCBpY29uOiAnZmlsZS10ZXh0JyxcclxuICogICByb3V0ZTogJy9mb3JtLWJ1aWxkZXInLFxyXG4gKiAgIGNoaWxkcmVuOiBbXHJcbiAqICAgICB7IGxhYmVsOiAnUGFub3JhbWljYScsIGl0ZW1zOiBbXHJcbiAqICAgICAgIHsgaWQ6ICdmYi1hbGwnLCBsYWJlbDogJ1R1dHRpIGkgY2FtcGknLCByb3V0ZTogJy9mb3JtLWJ1aWxkZXIvYWxsLWZpZWxkcycgfVxyXG4gKiAgICAgXX1cclxuICogICBdXHJcbiAqIH1cclxuICogYGBgXHJcbiAqL1xyXG5leHBvcnQgaW50ZXJmYWNlIFVpTmF2SXRlbSB7XHJcbiAgLyoqIFVuaXF1ZSBpdGVtIGlkZW50aWZpZXIuICovXHJcbiAgaWQ6IHN0cmluZztcclxuICAvKiogRGlzcGxheSBsYWJlbC4gKi9cclxuICBsYWJlbDogc3RyaW5nO1xyXG4gIC8qKiBMdWNpZGUgaWNvbiBuYW1lLiAqL1xyXG4gIGljb24/OiBVaUljb25OYW1lO1xyXG4gIC8qKiBJdGVtIGJlaGF2aW91ciB0eXBlLiBAZGVmYXVsdCAncm91dGUnICovXHJcbiAgdHlwZT86IFVpTmF2SXRlbVR5cGU7XHJcbiAgLyoqIEFuZ3VsYXIgcm91dGVyIHBhdGggKGZvciBgdHlwZTogJ3JvdXRlJ2ApLiAqL1xyXG4gIHJvdXRlPzogc3RyaW5nO1xyXG4gIC8qKiBXaGV0aGVyIHRvIHVzZSBleGFjdCBtYXRjaGluZyBmb3IgYWN0aXZlIHN0YXRlLiBAZGVmYXVsdCBmYWxzZSAqL1xyXG4gIHJvdXRlQWN0aXZlRXhhY3Q/OiBib29sZWFuO1xyXG4gIC8qKiBFeHRlcm5hbCBVUkwgKGZvciBgdHlwZTogJ2V4dGVybmFsJ2ApLiAqL1xyXG4gIGhyZWY/OiBzdHJpbmc7XHJcbiAgLyoqIExpbmsgdGFyZ2V0IGZvciBleHRlcm5hbCBsaW5rcy4gQGRlZmF1bHQgJ19ibGFuaycgKi9cclxuICB0YXJnZXQ/OiAnX2JsYW5rJyB8ICdfc2VsZic7XHJcbiAgLyoqIE5lc3RlZCBjaGlsZCBncm91cHMgZm9yIGV4cGFuZGFibGUgbmF2aWdhdGlvbi4gKi9cclxuICBjaGlsZHJlbj86IFVpTmF2R3JvdXBbXTtcclxuICAvKiogV2hldGhlciB0aGlzIGl0ZW0gaXMgaGlkZGVuLiBAZGVmYXVsdCBmYWxzZSAqL1xyXG4gIGhpZGRlbj86IGJvb2xlYW47XHJcbiAgLyoqIEJhZGdlIHRleHQgb3IgY291bnQgZGlzcGxheWVkIG5leHQgdG8gdGhlIGxhYmVsLiAqL1xyXG4gIGJhZGdlPzogc3RyaW5nIHwgbnVtYmVyO1xyXG4gIC8qKiBXaGV0aGVyIHRvIGluY2x1ZGUgdGhpcyBpdGVtIGluIHRoZSBtb2JpbGUgYm90dG9tIG5hdmlnYXRpb24gYmFyLiBAZGVmYXVsdCBmYWxzZSAqL1xyXG4gIGJvdHRvbU5hdj86IGJvb2xlYW47XHJcbiAgLyoqIFNvcnQgb3JkZXIgaW4gdGhlIGJvdHRvbSBuYXZpZ2F0aW9uIGJhciAobG93ZXIgPSBmaXJzdCkuICovXHJcbiAgYm90dG9tTmF2T3JkZXI/OiBudW1iZXI7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBMYWJlbGxlZCBncm91cCBvZiBuYXZpZ2F0aW9uIGl0ZW1zIChuZXN0ZWQgdW5kZXIgYSBwYXJlbnQgYFVpTmF2SXRlbWApLlxyXG4gKlxyXG4gKiBAdXNhZ2VOb3Rlc1xyXG4gKiBgYGB0eXBlc2NyaXB0XHJcbiAqIGNvbnN0IGdyb3VwOiBVaU5hdkdyb3VwID0ge1xyXG4gKiAgIGxhYmVsOiAnVmFsaWRhemlvbmknLFxyXG4gKiAgIGl0ZW1zOiBbXHJcbiAqICAgICB7IGlkOiAndi1zdGQnLCBsYWJlbDogJ1N0YW5kYXJkJywgcm91dGU6ICcvZm9ybS1idWlsZGVyL3ZhbGlkYXRpb25zLXN0YW5kYXJkJyB9LFxyXG4gKiAgICAgeyBpZDogJ3YtY3Jvc3MnLCBsYWJlbDogJ0Nyb3NzLWZpZWxkJywgcm91dGU6ICcvZm9ybS1idWlsZGVyL3ZhbGlkYXRpb25zLWNyb3NzZmllbGQnIH0sXHJcbiAqICAgXVxyXG4gKiB9O1xyXG4gKiBgYGBcclxuICovXHJcbmV4cG9ydCBpbnRlcmZhY2UgVWlOYXZHcm91cCB7XHJcbiAgLyoqIEdyb3VwIGhlYWRpbmcgZGlzcGxheWVkIGFib3ZlIHRoZSBpdGVtcy4gKi9cclxuICBsYWJlbDogc3RyaW5nO1xyXG4gIC8qKiBJdGVtcyBiZWxvbmdpbmcgdG8gdGhpcyBncm91cC4gKi9cclxuICBpdGVtczogVWlOYXZJdGVtW107XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBUb3AtbGV2ZWwgZ3JvdXBpbmcgdXNlZCB0byBwYXJ0aXRpb24gYFVpTmF2SXRlbVtdYCBpbnRvIGxhYmVsbGVkIHNlY3Rpb25zXHJcbiAqIGluIHRoZSBzaWRlYmFyIChlLmcuIFwiT3ZlcnZpZXdcIiwgXCJDb21wb25lbnRzXCIpLlxyXG4gKi9cclxuZXhwb3J0IGludGVyZmFjZSBVaU5hdlNlY3Rpb24ge1xyXG4gIC8qKiBVbmlxdWUgc2VjdGlvbiBpZGVudGlmaWVyLiAqL1xyXG4gIGlkOiBzdHJpbmc7XHJcbiAgLyoqIFNlY3Rpb24gaGVhZGluZyBkaXNwbGF5ZWQgaW4gdGhlIHNpZGViYXIuICovXHJcbiAgbGFiZWw6IHN0cmluZztcclxuICAvKiogSURzIG9mIGBVaU5hdkl0ZW1gcyBiZWxvbmdpbmcgdG8gdGhpcyBzZWN0aW9uIChvcmRlciBwcmVzZXJ2ZWQpLiAqL1xyXG4gIGl0ZW1JZHM6IHN0cmluZ1tdO1xyXG59XHJcblxyXG4vKipcclxuICogQXV0by1kaXNjb3ZlcnkgY29uZmlndXJhdGlvbiBmb3IgZ2VuZXJhdGluZyBuYXZpZ2F0aW9uIGl0ZW1zIGZyb20gQW5ndWxhciByb3V0ZXMuXHJcbiAqXHJcbiAqIFdoZW4gZW5hYmxlZCwgdGhlIGxheW91dCBidWlsZGVyIHNjYW5zIHRoZSByb3V0ZSB0cmVlIGFuZCBjcmVhdGVzXHJcbiAqIGBVaU5hdkl0ZW1gIGVudHJpZXMgZnJvbSByb3V0ZXMgdGhhdCBkZWNsYXJlIGBkYXRhLmlkYCBhbmQgYGRhdGEudGl0bGVgLlxyXG4gKi9cclxuZXhwb3J0IGludGVyZmFjZSBVaU5hdkF1dG9EaXNjb3ZlcnlDb25maWcge1xyXG4gIC8qKiBXaGV0aGVyIGF1dG8tZGlzY292ZXJ5IGlzIGVuYWJsZWQuICovXHJcbiAgZW5hYmxlZDogYm9vbGVhbjtcclxuICAvKiogUm91dGUgcGF0aHMgdG8gZXhjbHVkZSBmcm9tIGRpc2NvdmVyeSAoZXhhY3QgbWF0Y2gpLiAqL1xyXG4gIGV4Y2x1ZGVQYXRocz86IHN0cmluZ1tdO1xyXG4gIC8qKiBIb3cgdG8gbWVyZ2UgZGlzY292ZXJlZCBpdGVtcyB3aXRoIG1hbnVhbGx5IGRlZmluZWQgaXRlbXMuIEBkZWZhdWx0ICdhcHBlbmQnICovXHJcbiAgbWVyZ2VTdHJhdGVneT86ICdwcmVwZW5kJyB8ICdhcHBlbmQnIHwgJ3JlcGxhY2UnO1xyXG59XHJcblxyXG4vKiogTmF2aWdhdGlvbiBjb25maWd1cmF0aW9uIGJsb2NrIHdpdGhpbiBgVWlMYXlvdXRTY2hlbWFgLiAqL1xyXG5leHBvcnQgaW50ZXJmYWNlIFVpTGF5b3V0TmF2aWdhdGlvbkNvbmZpZyB7XHJcbiAgLyoqIEZsYXQgbGlzdCBvZiBhbGwgbmF2aWdhdGlvbiBpdGVtcy4gKi9cclxuICBpdGVtczogVWlOYXZJdGVtW107XHJcbiAgLyoqIE9wdGlvbmFsIGdyb3VwaW5nIGludG8gbGFiZWxsZWQgc2lkZWJhciBzZWN0aW9ucy4gKi9cclxuICBzZWN0aW9ucz86IFVpTmF2U2VjdGlvbltdO1xyXG4gIC8qKiBXaGV0aGVyIHRoZSBkZXNrdG9wIHNpZGViYXIgY2FuIGNvbGxhcHNlIHRvIGljb24tb25seSBtb2RlLiBAZGVmYXVsdCB0cnVlICovXHJcbiAgY29sbGFwc2libGU/OiBib29sZWFuO1xyXG4gIC8qKiBNb2JpbGUgbmF2aWdhdGlvbiBiZWhhdmlvdXIuIEBkZWZhdWx0ICdib3RoJyAqL1xyXG4gIG1vYmlsZU1vZGU/OiAnZHJhd2VyJyB8ICdib3R0b20tbmF2JyB8ICdib3RoJztcclxuICAvKiogQXV0by1kaXNjb3Zlcnkgc2V0dGluZ3MgZm9yIHJvdXRlLWRyaXZlbiBuYXZpZ2F0aW9uLiAqL1xyXG4gIGF1dG9EaXNjb3Zlcnk/OiBVaU5hdkF1dG9EaXNjb3ZlcnlDb25maWc7XHJcbn1cclxuXHJcbi8vIOKUgOKUgOKUgCBIZWFkZXIg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXHJcblxyXG4vKiogTG9nbyBjb25maWd1cmF0aW9uIGZvciB0aGUgbGF5b3V0IGhlYWRlci4gKi9cclxuZXhwb3J0IGludGVyZmFjZSBVaUxheW91dExvZ28ge1xyXG4gIC8qKiBTaG9ydCB0ZXh0IHJlbmRlcmVkIGluc2lkZSBhIHN0eWxlZCBiYWRnZSAoZS5nLiBcIlVJXCIpLiBNdXR1YWxseSBleGNsdXNpdmUgd2l0aCBgc3JjYC4gKi9cclxuICB0ZXh0Pzogc3RyaW5nO1xyXG4gIC8qKiBJbWFnZSBVUkwgZm9yIHRoZSBsb2dvLiBNdXR1YWxseSBleGNsdXNpdmUgd2l0aCBgdGV4dGAuICovXHJcbiAgc3JjPzogc3RyaW5nO1xyXG4gIC8qKiBBbHQgdGV4dCBmb3IgdGhlIGxvZ28gaW1hZ2UuICovXHJcbiAgYWx0Pzogc3RyaW5nO1xyXG59XHJcblxyXG4vKiogSGVhZGVyIC8gdG9wLWJhciBjb25maWd1cmF0aW9uLiAqL1xyXG5leHBvcnQgaW50ZXJmYWNlIFVpTGF5b3V0SGVhZGVyQ29uZmlnIHtcclxuICAvKiogTG9nbyBkaXNwbGF5ZWQgaW4gdGhlIHNpZGViYXIgaGVhZGVyIGFuZCBtb2JpbGUgdG9wLWJhci4gKi9cclxuICBsb2dvPzogVWlMYXlvdXRMb2dvO1xyXG4gIC8qKiBBcHBsaWNhdGlvbiB0aXRsZS4gKi9cclxuICB0aXRsZTogc3RyaW5nO1xyXG4gIC8qKiBPcHRpb25hbCBzdWJ0aXRsZSBvciB0YWdsaW5lLiAqL1xyXG4gIHN1YnRpdGxlPzogc3RyaW5nO1xyXG59XHJcblxyXG4vLyDilIDilIDilIAgRm9vdGVyIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxyXG5cclxuLyoqIFNpbmdsZSBsaW5rIHJlbmRlcmVkIGluIHRoZSBsYXlvdXQgZm9vdGVyLiAqL1xyXG5leHBvcnQgaW50ZXJmYWNlIFVpRm9vdGVyTGluayB7XHJcbiAgLyoqIERpc3BsYXkgbGFiZWwuICovXHJcbiAgbGFiZWw6IHN0cmluZztcclxuICAvKiogRXh0ZXJuYWwgVVJMLiAqL1xyXG4gIGhyZWY/OiBzdHJpbmc7XHJcbiAgLyoqIEFuZ3VsYXIgcm91dGVyIHBhdGggKGFsdGVybmF0aXZlIHRvIGBocmVmYCkuICovXHJcbiAgcm91dGU/OiBzdHJpbmc7XHJcbiAgLyoqIEx1Y2lkZSBpY29uIG5hbWUuICovXHJcbiAgaWNvbj86IFVpSWNvbk5hbWU7XHJcbiAgLyoqIExpbmsgdGFyZ2V0IGZvciBleHRlcm5hbCBsaW5rcy4gQGRlZmF1bHQgJ19zZWxmJyAqL1xyXG4gIHRhcmdldD86ICdfYmxhbmsnIHwgJ19zZWxmJztcclxufVxyXG5cclxuLyoqIEZvb3RlciBjb25maWd1cmF0aW9uLiAqL1xyXG5leHBvcnQgaW50ZXJmYWNlIFVpTGF5b3V0Rm9vdGVyQ29uZmlnIHtcclxuICAvKiogTGlua3MgcmVuZGVyZWQgaW4gdGhlIGZvb3Rlci4gKi9cclxuICBsaW5rcz86IFVpRm9vdGVyTGlua1tdO1xyXG4gIC8qKiBTdGF0aWMgdGV4dCAoZS5nLiBjb3B5cmlnaHQsIHZlcnNpb24pLiAqL1xyXG4gIHRleHQ/OiBzdHJpbmc7XHJcbn1cclxuXHJcbi8vIOKUgOKUgOKUgCBGQUIgKEZsb2F0aW5nIEFjdGlvbiBCdXR0b24gLyBTcGVlZCBEaWFsKSDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcclxuXHJcbi8qKlxyXG4gKiBTaW5nbGUgYWN0aW9uIHdpdGhpbiB0aGUgc3BlZWQtZGlhbCBGQUIuXHJcbiAqXHJcbiAqIEB1c2FnZU5vdGVzXHJcbiAqIGBgYHR5cGVzY3JpcHRcclxuICogY29uc3QgYWN0aW9uOiBVaUZhYkFjdGlvbiA9IHtcclxuICogICBpZDogJ25ldy11c2VyJyxcclxuICogICBsYWJlbDogJ051b3ZvIHV0ZW50ZScsXHJcbiAqICAgaWNvbjogJ3VzZXInLFxyXG4gKiAgIHZhcmlhbnQ6ICdwcmltYXJ5JyxcclxuICogICBhY3Rpb246ICgpID0+IHJvdXRlci5uYXZpZ2F0ZShbJy91c2Vycy9uZXcnXSksXHJcbiAqIH07XHJcbiAqIGBgYFxyXG4gKi9cclxuZXhwb3J0IGludGVyZmFjZSBVaUZhYkFjdGlvbiB7XHJcbiAgLyoqIFVuaXF1ZSBhY3Rpb24gaWRlbnRpZmllci4gKi9cclxuICBpZDogc3RyaW5nO1xyXG4gIC8qKiBUb29sdGlwIC8gbGFiZWwgdGV4dC4gKi9cclxuICBsYWJlbDogc3RyaW5nO1xyXG4gIC8qKiBMdWNpZGUgaWNvbiBuYW1lLiAqL1xyXG4gIGljb246IFVpSWNvbk5hbWU7XHJcbiAgLyoqIENhbGxiYWNrIGludm9rZWQgb24gY2xpY2suICovXHJcbiAgYWN0aW9uPzogKCkgPT4gdm9pZDtcclxuICAvKiogVmlzdWFsIHZhcmlhbnQgZm9yIHRoZSBidXR0b24uIEBkZWZhdWx0ICdwcmltYXJ5JyAqL1xyXG4gIHZhcmlhbnQ/OiBVaVZhcmlhbnQ7XHJcbiAgLyoqIEFjY2Vzc2libGUgbGFiZWwgKGZhbGxzIGJhY2sgdG8gYGxhYmVsYCBpZiBvbWl0dGVkKS4gKi9cclxuICBhcmlhTGFiZWw/OiBzdHJpbmc7XHJcbn1cclxuXHJcbi8qKiBTcGVlZC1kaWFsIEZBQiBjb25maWd1cmF0aW9uLiAqL1xyXG5leHBvcnQgaW50ZXJmYWNlIFVpTGF5b3V0RmFiQ29uZmlnIHtcclxuICAvKiogUHJpbWFyeSBGQUIgYWN0aW9uIChhbHdheXMgdmlzaWJsZSkuICovXHJcbiAgbWFpbkFjdGlvbjogVWlGYWJBY3Rpb247XHJcbiAgLyoqIFNlY29uZGFyeSBhY3Rpb25zIHJldmVhbGVkIG9uIGV4cGFuZC4gKi9cclxuICBzZWNvbmRhcnlBY3Rpb25zPzogVWlGYWJBY3Rpb25bXTtcclxuICAvKiogU2NyZWVuIGNvcm5lciBwb3NpdGlvbi4gQGRlZmF1bHQgJ2JvdHRvbS1yaWdodCcgKi9cclxuICBwb3NpdGlvbj86ICdib3R0b20tcmlnaHQnIHwgJ2JvdHRvbS1sZWZ0JztcclxufVxyXG5cclxuLy8g4pSA4pSA4pSAIFBhZ2UgSGVhZGVyIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxyXG5cclxuLyoqIERlZmF1bHQgcGFnZS1oZWFkZXIgc2V0dGluZ3MgYXBwbGllZCB0byBldmVyeSByb3V0ZSB1bmxlc3Mgb3ZlcnJpZGRlbi4gKi9cclxuZXhwb3J0IGludGVyZmFjZSBVaUxheW91dFBhZ2VIZWFkZXJDb25maWcge1xyXG4gIC8qKiBXaGV0aGVyIHRvIHNob3cgdGhlIHBhZ2UgaGVhZGVyIChicmVhZGNydW1icyArIHRpdGxlKS4gQGRlZmF1bHQgdHJ1ZSAqL1xyXG4gIHNob3c/OiBib29sZWFuO1xyXG4gIC8qKiBIb21lIGJyZWFkY3J1bWIgcm91dGUgcGF0aC4gQGRlZmF1bHQgJy8nICovXHJcbiAgaG9tZVJvdXRlPzogc3RyaW5nO1xyXG4gIC8qKiBXaGV0aGVyIHRvIHNob3cgdGhlIEhvbWUgbGluayBpbiBicmVhZGNydW1icy4gQGRlZmF1bHQgdHJ1ZSAqL1xyXG4gIHNob3dIb21lPzogYm9vbGVhbjtcclxuICAvKiogV2hldGhlciB0byBzeW5jIGBkb2N1bWVudC50aXRsZWAgd2l0aCB0aGUgY3VycmVudCBwYWdlLiBAZGVmYXVsdCBmYWxzZSAqL1xyXG4gIHVwZGF0ZURvY3VtZW50VGl0bGU/OiBib29sZWFuO1xyXG4gIC8qKiBTdWZmaXggYXBwZW5kZWQgdG8gYGRvY3VtZW50LnRpdGxlYC4gKi9cclxuICB0aXRsZVN1ZmZpeD86IHN0cmluZztcclxufVxyXG5cclxuLy8g4pSA4pSA4pSAIExvYWRlciDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcclxuXHJcbi8qKiBPdmVybGF5IGxvYWRlciBjb25maWd1cmF0aW9uLiAqL1xyXG5leHBvcnQgaW50ZXJmYWNlIFVpTGF5b3V0TG9hZGVyQ29uZmlnIHtcclxuICAvKiogU2hvdyB0aGUgbG9hZGVyIHdoZW4gdGhlIGxheW91dCBtb3VudHMgKGhpZGVzIG9uIGZpcnN0IE5hdmlnYXRpb25FbmQpLiBAZGVmYXVsdCBmYWxzZSAqL1xyXG4gIHNob3dPbkluaXQ/OiBib29sZWFuO1xyXG4gIC8qKiBNaW5pbXVtIGRpc3BsYXkgZHVyYXRpb24gaW4gbWlsbGlzZWNvbmRzIChwcmV2ZW50cyBmbGlja2VyKS4gQGRlZmF1bHQgMCAqL1xyXG4gIG1pbkR1cmF0aW9uPzogbnVtYmVyO1xyXG59XHJcblxyXG4vLyDilIDilIDilIAgVG9wYmFyIChtdWx0aS1iYXIgaGVhZGVyKSDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcclxuXHJcbi8qKiBEaXNjcmltaW5hdG9yIGZvciB0b3BiYXIgYmFyIHR5cGUuICovXHJcbmV4cG9ydCB0eXBlIFVpQmFyVHlwZSA9ICdub3RpZmljYXRpb24nIHwgJ2JyYW5kJyB8ICduYXZpZ2F0aW9uJyB8ICdsaW5rcyc7XHJcblxyXG4vKipcclxuICogTm90aWZpY2F0aW9uIGJhciBkaXNwbGF5ZWQgYXQgdGhlIHRvcCBvZiB0aGUgcGFnZS5cclxuICpcclxuICogQHVzYWdlTm90ZXNcclxuICogYGBgdHlwZXNjcmlwdFxyXG4gKiB7IHRleHQ6ICdNYW51dGVuemlvbmUgcHJldmlzdGEgYWxsZSAyMjowMCcsIHZhcmlhbnQ6ICd3YXJuJywgZGlzbWlzc2libGU6IHRydWUgfVxyXG4gKiBgYGBcclxuICovXHJcbmV4cG9ydCBpbnRlcmZhY2UgVWlOb3RpZmljYXRpb25CYXJDb25maWcge1xyXG4gIC8qKiBOb3RpZmljYXRpb24gbWVzc2FnZSB0ZXh0LiAqL1xyXG4gIHRleHQ6IHN0cmluZztcclxuICAvKiogVmlzdWFsIHZhcmlhbnQuIEBkZWZhdWx0ICdwcmltYXJ5JyAqL1xyXG4gIHZhcmlhbnQ/OiBVaVZhcmlhbnQ7XHJcbiAgLyoqIFdoZXRoZXIgdGhlIHVzZXIgY2FuIGRpc21pc3MgdGhpcyBiYXIuIEBkZWZhdWx0IHRydWUgKi9cclxuICBkaXNtaXNzaWJsZT86IGJvb2xlYW47XHJcbiAgLyoqIEx1Y2lkZSBpY29uIHNob3duIGJlZm9yZSB0aGUgdGV4dC4gKi9cclxuICBpY29uPzogVWlJY29uTmFtZTtcclxufVxyXG5cclxuLyoqXHJcbiAqIEJyYW5kIGJhciB3aXRoIGxvZ28sIHRpdGxlLCBhbmQgb3B0aW9uYWwgdXNlciBkcm9wZG93bi5cclxuICpcclxuICogQHVzYWdlTm90ZXNcclxuICogYGBgdHlwZXNjcmlwdFxyXG4gKiB7XHJcbiAqICAgbG9nbzogeyBzcmM6ICcvYXNzZXRzL2xvZ28uc3ZnJywgYWx0OiAnTXkgQXBwJyB9LFxyXG4gKiAgIHRpdGxlOiAnTXkgQXBwJyxcclxuICogICB1c2VyRHJvcGRvd246IHtcclxuICogICAgIGxhYmVsOiAnTWFyaW8gUm9zc2knLFxyXG4gKiAgICAgYXZhdGFyOiB7IHNyYzogJy9hdmF0YXIuanBnJyB9LFxyXG4gKiAgICAgaXRlbXM6IFtcclxuICogICAgICAgeyBpZDogJ3Byb2ZpbGUnLCBsYWJlbDogJ1Byb2ZpbG8nLCBpY29uOiAndXNlcicsIHJvdXRlOiAnL3Byb2ZpbGUnIH0sXHJcbiAqICAgICAgIHsgaWQ6ICdsb2dvdXQnLCBsYWJlbDogJ0xvZ291dCcsIGljb246ICdsb2ctb3V0JywgYWN0aW9uOiAoKSA9PiBhdXRoLmxvZ291dCgpIH0sXHJcbiAqICAgICBdLFxyXG4gKiAgIH0sXHJcbiAqIH1cclxuICogYGBgXHJcbiAqL1xyXG5leHBvcnQgaW50ZXJmYWNlIFVpQnJhbmRCYXJDb25maWcge1xyXG4gIC8qKiBMb2dvIGRpc3BsYXllZCBvbiB0aGUgbGVmdC4gKi9cclxuICBsb2dvPzogVWlMYXlvdXRMb2dvO1xyXG4gIC8qKiBBcHBsaWNhdGlvbiB0aXRsZS4gKi9cclxuICB0aXRsZT86IHN0cmluZztcclxuICAvKiogVXNlciBkcm9wZG93biBhbGlnbmVkIHRvIHRoZSByaWdodC4gKi9cclxuICB1c2VyRHJvcGRvd24/OiBVaVVzZXJEcm9wZG93bkNvbmZpZztcclxufVxyXG5cclxuLyoqIFVzZXIgZHJvcGRvd24gbWVudSBjb25maWd1cmF0aW9uIGZvciB0aGUgYnJhbmQgYmFyLiAqL1xyXG5leHBvcnQgaW50ZXJmYWNlIFVpVXNlckRyb3Bkb3duQ29uZmlnIHtcclxuICAvKiogRGlzcGxheSBsYWJlbCAoZS5nLiB1c2VyJ3MgbmFtZSkuICovXHJcbiAgbGFiZWw6IHN0cmluZztcclxuICAvKiogTHVjaWRlIGljb24gbmFtZSAoZmFsbGJhY2sgd2hlbiBubyBhdmF0YXIpLiAqL1xyXG4gIGljb24/OiBVaUljb25OYW1lO1xyXG4gIC8qKiBVc2VyIGF2YXRhciBpbWFnZS4gKi9cclxuICBhdmF0YXI/OiB7IHNyYzogc3RyaW5nOyBhbHQ/OiBzdHJpbmcgfTtcclxuICAvKiogRHJvcGRvd24gbWVudSBpdGVtcy4gKi9cclxuICBpdGVtczogVWlEcm9wZG93bkl0ZW1bXTtcclxufVxyXG5cclxuLyoqIFNpbmdsZSBpdGVtIGluIGEgZHJvcGRvd24gbWVudS4gKi9cclxuZXhwb3J0IGludGVyZmFjZSBVaURyb3Bkb3duSXRlbSB7XHJcbiAgLyoqIFVuaXF1ZSBpdGVtIGlkZW50aWZpZXIuICovXHJcbiAgaWQ6IHN0cmluZztcclxuICAvKiogRGlzcGxheSBsYWJlbC4gKi9cclxuICBsYWJlbDogc3RyaW5nO1xyXG4gIC8qKiBMdWNpZGUgaWNvbiBuYW1lLiAqL1xyXG4gIGljb24/OiBVaUljb25OYW1lO1xyXG4gIC8qKiBBbmd1bGFyIHJvdXRlciBwYXRoLiAqL1xyXG4gIHJvdXRlPzogc3RyaW5nO1xyXG4gIC8qKiBDYWxsYmFjayBpbnZva2VkIG9uIGNsaWNrLiAqL1xyXG4gIGFjdGlvbj86ICgpID0+IHZvaWQ7XHJcbiAgLyoqIFJlbmRlciBhIGRpdmlkZXIgYWJvdmUgdGhpcyBpdGVtLiAqL1xyXG4gIGRpdmlkZXI/OiBib29sZWFuO1xyXG59XHJcblxyXG4vKiogTmF2aWdhdGlvbiBiYXIgKHVzZWQgaW4gdG9wYmFyIG1vZGUgdG8gcmVuZGVyIGhvcml6b250YWwgbmF2IGxpbmtzKS4gKi9cclxuZXhwb3J0IGludGVyZmFjZSBVaU5hdmlnYXRpb25CYXJDb25maWcge1xyXG4gIC8qKiBPdmVycmlkZSBpdGVtcyBmb3IgdGhpcyBiYXIgKGRlZmF1bHRzIHRvIGBzY2hlbWEubmF2aWdhdGlvbi5pdGVtc2ApLiAqL1xyXG4gIGl0ZW1zPzogVWlOYXZJdGVtW107XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBMaW5rcyBiYXIgd2l0aCBpY29uIGxpbmtzIChlLmcuIHNvY2lhbCBtZWRpYSwgZXh0ZXJuYWwgcmVzb3VyY2VzKS5cclxuICpcclxuICogQHVzYWdlTm90ZXNcclxuICogYGBgdHlwZXNjcmlwdFxyXG4gKiB7XHJcbiAqICAgYWxpZ246ICdlbmQnLFxyXG4gKiAgIGl0ZW1zOiBbXHJcbiAqICAgICB7IGljb246ICdnaXRodWInLCBocmVmOiAnaHR0cHM6Ly9naXRodWIuY29tLy4uLicsIGFyaWFMYWJlbDogJ0dpdEh1YicgfSxcclxuICogICAgIHsgbGFiZWw6ICdEb2NzJywgaWNvbjogJ2Jvb2stb3BlbicsIGhyZWY6ICdodHRwczovL2RvY3MuZXhhbXBsZS5jb20nIH0sXHJcbiAqICAgXSxcclxuICogfVxyXG4gKiBgYGBcclxuICovXHJcbmV4cG9ydCBpbnRlcmZhY2UgVWlMaW5rc0JhckNvbmZpZyB7XHJcbiAgLyoqIEhvcml6b250YWwgYWxpZ25tZW50IG9mIGl0ZW1zLiBAZGVmYXVsdCAnZW5kJyAqL1xyXG4gIGFsaWduPzogJ3N0YXJ0JyB8ICdjZW50ZXInIHwgJ2VuZCcgfCAnc3BhY2UtYmV0d2Vlbic7XHJcbiAgLyoqIExpbmsgaXRlbXMuICovXHJcbiAgaXRlbXM6IFVpQmFyTGlua0l0ZW1bXTtcclxufVxyXG5cclxuLyoqIFNpbmdsZSBsaW5rIGl0ZW0gaW4gYSBsaW5rcyBiYXIuICovXHJcbmV4cG9ydCBpbnRlcmZhY2UgVWlCYXJMaW5rSXRlbSB7XHJcbiAgLyoqIERpc3BsYXkgbGFiZWwgKG9wdGlvbmFsLCBpY29uLW9ubHkgaWYgb21pdHRlZCkuICovXHJcbiAgbGFiZWw/OiBzdHJpbmc7XHJcbiAgLyoqIEx1Y2lkZSBpY29uIG5hbWUuICovXHJcbiAgaWNvbj86IFVpSWNvbk5hbWU7XHJcbiAgLyoqIEV4dGVybmFsIFVSTC4gKi9cclxuICBocmVmPzogc3RyaW5nO1xyXG4gIC8qKiBBbmd1bGFyIHJvdXRlciBwYXRoLiAqL1xyXG4gIHJvdXRlPzogc3RyaW5nO1xyXG4gIC8qKiBMaW5rIHRhcmdldC4gQGRlZmF1bHQgJ19zZWxmJyAqL1xyXG4gIHRhcmdldD86ICdfYmxhbmsnIHwgJ19zZWxmJztcclxuICAvKiogQWNjZXNzaWJsZSBsYWJlbCBmb3IgaWNvbi1vbmx5IGl0ZW1zLiAqL1xyXG4gIGFyaWFMYWJlbD86IHN0cmluZztcclxufVxyXG5cclxuLyoqXHJcbiAqIFNpbmdsZSBiYXIgZGVzY3JpcHRvciBpbiB0aGUgdG9wYmFyIGJhciBzdGFjay5cclxuICpcclxuICogQHVzYWdlTm90ZXNcclxuICogYGBgdHlwZXNjcmlwdFxyXG4gKiBjb25zdCBiYXJzOiBVaUJhckNvbmZpZ1tdID0gW1xyXG4gKiAgIHsgaWQ6ICdwcm9tbycsIHR5cGU6ICdub3RpZmljYXRpb24nLCBub3RpZmljYXRpb246IHsgdGV4dDogJ1Byb21vIGF0dGl2YSEnLCBkaXNtaXNzaWJsZTogdHJ1ZSB9IH0sXHJcbiAqICAgeyBpZDogJ21haW4nLCB0eXBlOiAnYnJhbmQnLCBicmFuZDogeyBsb2dvOiB7IHRleHQ6ICdVSScgfSwgdGl0bGU6ICdNeSBBcHAnIH0gfSxcclxuICogICB7IGlkOiAnbmF2JywgdHlwZTogJ25hdmlnYXRpb24nIH0sXHJcbiAqICAgeyBpZDogJ3NvY2lhbCcsIHR5cGU6ICdsaW5rcycsIGxpbmtzOiB7IGFsaWduOiAnZW5kJywgaXRlbXM6IFsuLi5dIH0gfSxcclxuICogXTtcclxuICogYGBgXHJcbiAqL1xyXG5leHBvcnQgaW50ZXJmYWNlIFVpQmFyQ29uZmlnIHtcclxuICAvKiogVW5pcXVlIGJhciBpZGVudGlmaWVyLiAqL1xyXG4gIGlkOiBzdHJpbmc7XHJcbiAgLyoqIEJhciB0eXBlIGRpc2NyaW1pbmF0b3IuICovXHJcbiAgdHlwZTogVWlCYXJUeXBlO1xyXG4gIC8qKiBXaGV0aGVyIHRoZSBiYXIgaXMgaW5pdGlhbGx5IHZpc2libGUuIEBkZWZhdWx0IHRydWUgKi9cclxuICB2aXNpYmxlPzogYm9vbGVhbjtcclxuICAvKiogQ29uZmlndXJhdGlvbiB3aGVuIGB0eXBlID09PSAnbm90aWZpY2F0aW9uJ2AuICovXHJcbiAgbm90aWZpY2F0aW9uPzogVWlOb3RpZmljYXRpb25CYXJDb25maWc7XHJcbiAgLyoqIENvbmZpZ3VyYXRpb24gd2hlbiBgdHlwZSA9PT0gJ2JyYW5kJ2AuICovXHJcbiAgYnJhbmQ/OiBVaUJyYW5kQmFyQ29uZmlnO1xyXG4gIC8qKiBDb25maWd1cmF0aW9uIHdoZW4gYHR5cGUgPT09ICduYXZpZ2F0aW9uJ2AuICovXHJcbiAgbmF2aWdhdGlvbj86IFVpTmF2aWdhdGlvbkJhckNvbmZpZztcclxuICAvKiogQ29uZmlndXJhdGlvbiB3aGVuIGB0eXBlID09PSAnbGlua3MnYC4gKi9cclxuICBsaW5rcz86IFVpTGlua3NCYXJDb25maWc7XHJcbn1cclxuXHJcbi8qKiBUb3BiYXIgY29uZmlndXJhdGlvbiAoYmFyIHN0YWNrKS4gKi9cclxuZXhwb3J0IGludGVyZmFjZSBVaVRvcGJhckNvbmZpZyB7XHJcbiAgLyoqIE9yZGVyZWQgbGlzdCBvZiBiYXJzIHJlbmRlcmVkIHRvcC10by1ib3R0b20uICovXHJcbiAgYmFyczogVWlCYXJDb25maWdbXTtcclxufVxyXG5cclxuLy8g4pSA4pSA4pSAIFJvb3QgU2NoZW1hIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxyXG5cclxuLyoqXHJcbiAqIFJvb3QgZGVzY3JpcHRvciBmb3IgdGhlIGB1aS1sYXlvdXQtYnVpbGRlcmAgY29tcG9uZW50LlxyXG4gKlxyXG4gKiBAdXNhZ2VOb3Rlc1xyXG4gKiAjIyMgTWluaW1hbCBzaWRlYmFyIGV4YW1wbGVcclxuICogYGBgdHlwZXNjcmlwdFxyXG4gKiBjb25zdCBzY2hlbWE6IFVpTGF5b3V0U2NoZW1hID0ge1xyXG4gKiAgIGhlYWRlcjogeyB0aXRsZTogJ015IEFwcCcgfSxcclxuICogICBuYXZpZ2F0aW9uOiB7XHJcbiAqICAgICBpdGVtczogW1xyXG4gKiAgICAgICB7IGlkOiAnaG9tZScsIGxhYmVsOiAnSG9tZScsIGljb246ICdob21lJywgcm91dGU6ICcvJywgcm91dGVBY3RpdmVFeGFjdDogdHJ1ZSB9LFxyXG4gKiAgICAgICB7IGlkOiAndXNlcnMnLCBsYWJlbDogJ1V0ZW50aScsIGljb246ICd1c2VycycsIHJvdXRlOiAnL3VzZXJzJyB9LFxyXG4gKiAgICAgXSxcclxuICogICB9LFxyXG4gKiB9O1xyXG4gKiBgYGBcclxuICpcclxuICogIyMjIFRvcGJhciBtb2RlIGV4YW1wbGVcclxuICogYGBgdHlwZXNjcmlwdFxyXG4gKiBjb25zdCBzY2hlbWE6IFVpTGF5b3V0U2NoZW1hID0ge1xyXG4gKiAgIG1vZGU6ICd0b3BiYXInLFxyXG4gKiAgIGhlYWRlcjogeyBsb2dvOiB7IHRleHQ6ICdVSScgfSwgdGl0bGU6ICdNeSBBcHAnIH0sXHJcbiAqICAgbmF2aWdhdGlvbjogeyBpdGVtczogWy4uLl0gfSxcclxuICogICB0b3BiYXI6IHtcclxuICogICAgIGJhcnM6IFtcclxuICogICAgICAgeyBpZDogJ2FsZXJ0JywgdHlwZTogJ25vdGlmaWNhdGlvbicsIG5vdGlmaWNhdGlvbjogeyB0ZXh0OiAnQmV0YSEnLCBkaXNtaXNzaWJsZTogdHJ1ZSB9IH0sXHJcbiAqICAgICAgIHsgaWQ6ICdtYWluJywgdHlwZTogJ2JyYW5kJywgYnJhbmQ6IHsgbG9nbzogeyB0ZXh0OiAnVUknIH0sIHRpdGxlOiAnTXkgQXBwJyB9IH0sXHJcbiAqICAgICAgIHsgaWQ6ICduYXYnLCB0eXBlOiAnbmF2aWdhdGlvbicgfSxcclxuICogICAgIF0sXHJcbiAqICAgfSxcclxuICogfTtcclxuICogYGBgXHJcbiAqL1xyXG5leHBvcnQgaW50ZXJmYWNlIFVpTGF5b3V0U2NoZW1hIHtcclxuICAvKiogTGF5b3V0IG1vZGUuIEBkZWZhdWx0ICdzaWRlYmFyJyAqL1xyXG4gIG1vZGU/OiBVaUxheW91dE1vZGU7XHJcbiAgLyoqIEhlYWRlciAvIHRvcC1iYXIgYnJhbmRpbmcuIFJlcXVpcmVkIGZvciBzaWRlYmFyL3RvcGJhciBtb2RlcywgaWdub3JlZCBpbiBzbG90dGVkIG1vZGUuICovXHJcbiAgaGVhZGVyPzogVWlMYXlvdXRIZWFkZXJDb25maWc7XHJcbiAgLyoqIE5hdmlnYXRpb24gc3RydWN0dXJlIGFuZCBiZWhhdmlvdXIuIFJlcXVpcmVkIGZvciBzaWRlYmFyL3RvcGJhciBtb2RlcywgaWdub3JlZCBpbiBzbG90dGVkIG1vZGUuICovXHJcbiAgbmF2aWdhdGlvbj86IFVpTGF5b3V0TmF2aWdhdGlvbkNvbmZpZztcclxuICAvKiogRm9vdGVyIGNvbnRlbnQgKG9wdGlvbmFsKS4gSW4gc2xvdHRlZCBtb2RlIHVzZSBgW3VpTGF5b3V0Rm9vdGVyXWAgY29udGVudCBwcm9qZWN0aW9uIGluc3RlYWQuICovXHJcbiAgZm9vdGVyPzogVWlMYXlvdXRGb290ZXJDb25maWc7XHJcbiAgLyoqIEZsb2F0aW5nIGFjdGlvbiBidXR0b24gLyBzcGVlZCBkaWFsIChvcHRpb25hbCkuICovXHJcbiAgZmFiPzogVWlMYXlvdXRGYWJDb25maWc7XHJcbiAgLyoqIFBhZ2UgaGVhZGVyIGRlZmF1bHRzIGFwcGxpZWQgdG8gZXZlcnkgcGFnZSAob3B0aW9uYWwpLiAqL1xyXG4gIHBhZ2VIZWFkZXI/OiBVaUxheW91dFBhZ2VIZWFkZXJDb25maWc7XHJcbiAgLyoqIE92ZXJsYXkgbG9hZGVyIGNvbmZpZ3VyYXRpb24gKG9wdGlvbmFsKS4gKi9cclxuICBsb2FkZXI/OiBVaUxheW91dExvYWRlckNvbmZpZztcclxuICAvKiogQ29udGVudCBhcmVhIHNpemluZyBzdHJhdGVneS4gQGRlZmF1bHQgJ2ZsdWlkJyAqL1xyXG4gIGNvbnRlbnRUeXBlPzogVWlDb250ZW50VHlwZTtcclxuICAvKiogVG9wYmFyIGNvbmZpZ3VyYXRpb24gKG9ubHkgdXNlZCB3aGVuIGBtb2RlID09PSAndG9wYmFyJ2ApLiAqL1xyXG4gIHRvcGJhcj86IFVpVG9wYmFyQ29uZmlnO1xyXG59XHJcbiJdfQ==
@@ -0,0 +1,239 @@
1
+ /**
2
+ * Central service for programmatic control of the `ui-layout-builder` shell.
3
+ *
4
+ * Provides reactive state management for:
5
+ * - Overlay loader (with body scroll locking)
6
+ * - Sidebar open / collapsed state
7
+ * - Context-sensitive FAB actions
8
+ * - Navigation badge and visibility overrides
9
+ * - Layout mode switching (sidebar / topbar / slotted)
10
+ * - Content type (fluid / boxed / fullscreen)
11
+ * - Topbar bar visibility (notification bars show/hide)
12
+ *
13
+ * @example
14
+ * ```typescript
15
+ * export class MyPageComponent {
16
+ * private layout = inject(UiLayoutService);
17
+ *
18
+ * async loadData() {
19
+ * this.layout.showLoader();
20
+ * try {
21
+ * await this.api.fetchAll();
22
+ * } finally {
23
+ * this.layout.hideLoader();
24
+ * }
25
+ * }
26
+ * }
27
+ * ```
28
+ */
29
+ import { Injectable, inject, PLATFORM_ID } from '@angular/core';
30
+ import { isPlatformBrowser } from '@angular/common';
31
+ import { BehaviorSubject } from 'rxjs';
32
+ import * as i0 from "@angular/core";
33
+ export class UiLayoutService {
34
+ constructor() {
35
+ this.platformId = inject(PLATFORM_ID);
36
+ // ── Loader ───────────────────────────────────────────────────────
37
+ this._loading$ = new BehaviorSubject(false);
38
+ /** Whether the overlay loader is currently visible. */
39
+ this.loading$ = this._loading$.asObservable();
40
+ // ── Layout Mode ─────────────────────────────────────────────────
41
+ this._layoutMode$ = new BehaviorSubject('sidebar');
42
+ /** Current layout mode (sidebar or topbar). */
43
+ this.layoutMode$ = this._layoutMode$.asObservable();
44
+ // ── Content Type ────────────────────────────────────────────────
45
+ this._contentType$ = new BehaviorSubject('fluid');
46
+ /** Current content type (fluid, boxed, fullscreen). */
47
+ this.contentType$ = this._contentType$.asObservable();
48
+ // ── Sidebar ──────────────────────────────────────────────────────
49
+ this._sidebarOpen$ = new BehaviorSubject(false);
50
+ /** Whether the mobile sidebar drawer is open. */
51
+ this.sidebarOpen$ = this._sidebarOpen$.asObservable();
52
+ this._sidebarCollapsed$ = new BehaviorSubject(false);
53
+ /** Whether the desktop sidebar is in collapsed (icon-only) mode. */
54
+ this.sidebarCollapsed$ = this._sidebarCollapsed$.asObservable();
55
+ // ── FAB (context-sensitive) ──────────────────────────────────────
56
+ this._defaultFabConfig = null;
57
+ this._fabConfig$ = new BehaviorSubject(null);
58
+ /** Current FAB configuration (schema default merged with page overrides). */
59
+ this.fabConfig$ = this._fabConfig$.asObservable();
60
+ // ── Navigation helpers ───────────────────────────────────────────
61
+ this._navBadges$ = new BehaviorSubject(new Map());
62
+ /** Observable map of nav-item badges keyed by item ID. */
63
+ this.navBadges$ = this._navBadges$.asObservable();
64
+ this._navVisibility$ = new BehaviorSubject(new Map());
65
+ /** Observable map of nav-item visibility overrides keyed by item ID. */
66
+ this.navVisibility$ = this._navVisibility$.asObservable();
67
+ // ── Bar visibility (topbar notification bars) ───────────────────
68
+ this._barVisibility$ = new BehaviorSubject(new Map());
69
+ /** Observable map of topbar bar visibility keyed by bar ID. */
70
+ this.barVisibility$ = this._barVisibility$.asObservable();
71
+ }
72
+ /** Show the full-screen overlay loader and block body scroll. */
73
+ showLoader() {
74
+ this._loading$.next(true);
75
+ this.setBodyOverflow(true);
76
+ }
77
+ /** Hide the overlay loader and restore body scroll. */
78
+ hideLoader() {
79
+ this._loading$.next(false);
80
+ this.setBodyOverflow(false);
81
+ }
82
+ /** Toggle the overlay loader. */
83
+ toggleLoader() {
84
+ if (this._loading$.value) {
85
+ this.hideLoader();
86
+ }
87
+ else {
88
+ this.showLoader();
89
+ }
90
+ }
91
+ /** Synchronous snapshot of the loading state. */
92
+ isLoading() {
93
+ return this._loading$.value;
94
+ }
95
+ /**
96
+ * Switch layout mode with loader masking the transition.
97
+ * Shows the loader, applies the mode change, then hides the loader
98
+ * after a short delay to prevent visible layout shift.
99
+ */
100
+ setLayoutMode(mode, transitionMs = 300) {
101
+ if (this._layoutMode$.value === mode)
102
+ return;
103
+ this.showLoader();
104
+ this._layoutMode$.next(mode);
105
+ setTimeout(() => this.hideLoader(), transitionMs);
106
+ }
107
+ /** Synchronous snapshot of the current layout mode. */
108
+ getLayoutMode() {
109
+ return this._layoutMode$.value;
110
+ }
111
+ /**
112
+ * @internal Called by the layout-builder component to set the initial mode
113
+ * from the schema without triggering the loader transition.
114
+ */
115
+ _setInitialLayoutMode(mode) {
116
+ this._layoutMode$.next(mode);
117
+ }
118
+ /** Set the content type per-route or globally. */
119
+ setContentType(type) {
120
+ this._contentType$.next(type);
121
+ }
122
+ /** Synchronous snapshot of the current content type. */
123
+ getContentType() {
124
+ return this._contentType$.value;
125
+ }
126
+ /** @internal */
127
+ _setInitialContentType(type) {
128
+ this._contentType$.next(type);
129
+ }
130
+ /** Toggle the desktop sidebar between expanded and collapsed. */
131
+ toggleSidebar() {
132
+ this._sidebarCollapsed$.next(!this._sidebarCollapsed$.value);
133
+ }
134
+ /** Set the desktop sidebar collapsed state explicitly. */
135
+ collapseSidebar(collapsed = true) {
136
+ this._sidebarCollapsed$.next(collapsed);
137
+ }
138
+ /** Open the mobile sidebar drawer. */
139
+ openMobileSidebar() {
140
+ this._sidebarOpen$.next(true);
141
+ }
142
+ /** Close the mobile sidebar drawer. */
143
+ closeMobileSidebar() {
144
+ this._sidebarOpen$.next(false);
145
+ }
146
+ /** Synchronous snapshot: is the mobile sidebar open? */
147
+ isSidebarOpen() {
148
+ return this._sidebarOpen$.value;
149
+ }
150
+ /** Synchronous snapshot: is the desktop sidebar collapsed? */
151
+ isSidebarCollapsed() {
152
+ return this._sidebarCollapsed$.value;
153
+ }
154
+ /**
155
+ * Called internally by the layout-builder component to register the
156
+ * schema-level default FAB config.
157
+ * @internal
158
+ */
159
+ _setDefaultFabConfig(config) {
160
+ this._defaultFabConfig = config;
161
+ this._fabConfig$.next(config);
162
+ }
163
+ /** Override the FAB main action for the current page context. */
164
+ setMainFabAction(action) {
165
+ const current = this._fabConfig$.value;
166
+ this._fabConfig$.next({
167
+ mainAction: action,
168
+ secondaryActions: current?.secondaryActions ?? [],
169
+ position: current?.position ?? 'bottom-right',
170
+ });
171
+ }
172
+ /** Override all FAB actions for the current page context. */
173
+ setFabActions(main, secondary) {
174
+ const current = this._fabConfig$.value;
175
+ this._fabConfig$.next({
176
+ mainAction: main,
177
+ secondaryActions: secondary ?? [],
178
+ position: current?.position ?? 'bottom-right',
179
+ });
180
+ }
181
+ /** Reset FAB to the schema-level default configuration. */
182
+ clearFabActions() {
183
+ this._fabConfig$.next(this._defaultFabConfig);
184
+ }
185
+ /** Set or clear a badge on a navigation item. Pass `null` to remove. */
186
+ setNavBadge(itemId, badge) {
187
+ const map = new Map(this._navBadges$.value);
188
+ if (badge === null) {
189
+ map.delete(itemId);
190
+ }
191
+ else {
192
+ map.set(itemId, badge);
193
+ }
194
+ this._navBadges$.next(map);
195
+ }
196
+ /** Override visibility of a navigation item. */
197
+ setNavItemVisibility(itemId, visible) {
198
+ const map = new Map(this._navVisibility$.value);
199
+ map.set(itemId, visible);
200
+ this._navVisibility$.next(map);
201
+ }
202
+ /** Show a topbar bar by ID. */
203
+ showBar(barId) {
204
+ const map = new Map(this._barVisibility$.value);
205
+ map.set(barId, true);
206
+ this._barVisibility$.next(map);
207
+ }
208
+ /** Hide a topbar bar by ID. */
209
+ hideBar(barId) {
210
+ const map = new Map(this._barVisibility$.value);
211
+ map.set(barId, false);
212
+ this._barVisibility$.next(map);
213
+ }
214
+ /** Toggle visibility of a topbar bar by ID. */
215
+ toggleBar(barId) {
216
+ const map = new Map(this._barVisibility$.value);
217
+ const current = map.get(barId);
218
+ map.set(barId, current === undefined ? false : !current);
219
+ this._barVisibility$.next(map);
220
+ }
221
+ /** Synchronous check of bar visibility (schema `visible` fallback). */
222
+ isBarVisible(barId, schemaVisible = true) {
223
+ const override = this._barVisibility$.value.get(barId);
224
+ return override !== undefined ? override : schemaVisible;
225
+ }
226
+ // ── Private helpers ──────────────────────────────────────────────
227
+ setBodyOverflow(locked) {
228
+ if (isPlatformBrowser(this.platformId)) {
229
+ document.body.style.overflow = locked ? 'hidden' : '';
230
+ }
231
+ }
232
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: UiLayoutService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
233
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: UiLayoutService, providedIn: 'root' }); }
234
+ }
235
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: UiLayoutService, decorators: [{
236
+ type: Injectable,
237
+ args: [{ providedIn: 'root' }]
238
+ }] });
239
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5b3V0LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9uZy11aS1zeXN0ZW0vc3JjL2xpYi9jb21wb25lbnRzL2xheW91dC1idWlsZGVyL2xheW91dC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0EyQkc7QUFDSCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDaEUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDcEQsT0FBTyxFQUFFLGVBQWUsRUFBYyxNQUFNLE1BQU0sQ0FBQzs7QUFTbkQsTUFBTSxPQUFPLGVBQWU7SUFENUI7UUFFbUIsZUFBVSxHQUFHLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUVsRCxvRUFBb0U7UUFFbkQsY0FBUyxHQUFHLElBQUksZUFBZSxDQUFVLEtBQUssQ0FBQyxDQUFDO1FBQ2pFLHVEQUF1RDtRQUM5QyxhQUFRLEdBQXdCLElBQUksQ0FBQyxTQUFTLENBQUMsWUFBWSxFQUFFLENBQUM7UUE0QnZFLG1FQUFtRTtRQUVsRCxpQkFBWSxHQUFHLElBQUksZUFBZSxDQUFlLFNBQVMsQ0FBQyxDQUFDO1FBQzdFLCtDQUErQztRQUN0QyxnQkFBVyxHQUE2QixJQUFJLENBQUMsWUFBWSxDQUFDLFlBQVksRUFBRSxDQUFDO1FBMkJsRixtRUFBbUU7UUFFbEQsa0JBQWEsR0FBRyxJQUFJLGVBQWUsQ0FBZ0IsT0FBTyxDQUFDLENBQUM7UUFDN0UsdURBQXVEO1FBQzlDLGlCQUFZLEdBQThCLElBQUksQ0FBQyxhQUFhLENBQUMsWUFBWSxFQUFFLENBQUM7UUFpQnJGLG9FQUFvRTtRQUVuRCxrQkFBYSxHQUFHLElBQUksZUFBZSxDQUFVLEtBQUssQ0FBQyxDQUFDO1FBQ3JFLGlEQUFpRDtRQUN4Qyxp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QyxlQUFlLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ2pDLENBQUM7SUFFRCx1RUFBdUU7SUFDdkUsWUFBWSxDQUFDLEtBQWEsRUFBRSxhQUFhLEdBQUcsSUFBSTtRQUM5QyxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDdkQsT0FBTyxRQUFRLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLGFBQWEsQ0FBQztJQUMzRCxDQUFDO0lBRUQsb0VBQW9FO0lBRTVELGVBQWUsQ0FBQyxNQUFlO1FBQ3JDLElBQUksaUJBQWlCLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUM7WUFDdkMsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFDeEQsQ0FBQztJQUNILENBQUM7K0dBN09VLGVBQWU7bUhBQWYsZUFBZSxjQURGLE1BQU07OzRGQUNuQixlQUFlO2tCQUQzQixVQUFVO21CQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxyXG4gKiBDZW50cmFsIHNlcnZpY2UgZm9yIHByb2dyYW1tYXRpYyBjb250cm9sIG9mIHRoZSBgdWktbGF5b3V0LWJ1aWxkZXJgIHNoZWxsLlxyXG4gKlxyXG4gKiBQcm92aWRlcyByZWFjdGl2ZSBzdGF0ZSBtYW5hZ2VtZW50IGZvcjpcclxuICogLSBPdmVybGF5IGxvYWRlciAod2l0aCBib2R5IHNjcm9sbCBsb2NraW5nKVxyXG4gKiAtIFNpZGViYXIgb3BlbiAvIGNvbGxhcHNlZCBzdGF0ZVxyXG4gKiAtIENvbnRleHQtc2Vuc2l0aXZlIEZBQiBhY3Rpb25zXHJcbiAqIC0gTmF2aWdhdGlvbiBiYWRnZSBhbmQgdmlzaWJpbGl0eSBvdmVycmlkZXNcclxuICogLSBMYXlvdXQgbW9kZSBzd2l0Y2hpbmcgKHNpZGViYXIgLyB0b3BiYXIgLyBzbG90dGVkKVxyXG4gKiAtIENvbnRlbnQgdHlwZSAoZmx1aWQgLyBib3hlZCAvIGZ1bGxzY3JlZW4pXHJcbiAqIC0gVG9wYmFyIGJhciB2aXNpYmlsaXR5IChub3RpZmljYXRpb24gYmFycyBzaG93L2hpZGUpXHJcbiAqXHJcbiAqIEBleGFtcGxlXHJcbiAqIGBgYHR5cGVzY3JpcHRcclxuICogZXhwb3J0IGNsYXNzIE15UGFnZUNvbXBvbmVudCB7XHJcbiAqICAgcHJpdmF0ZSBsYXlvdXQgPSBpbmplY3QoVWlMYXlvdXRTZXJ2aWNlKTtcclxuICpcclxuICogICBhc3luYyBsb2FkRGF0YSgpIHtcclxuICogICAgIHRoaXMubGF5b3V0LnNob3dMb2FkZXIoKTtcclxuICogICAgIHRyeSB7XHJcbiAqICAgICAgIGF3YWl0IHRoaXMuYXBpLmZldGNoQWxsKCk7XHJcbiAqICAgICB9IGZpbmFsbHkge1xyXG4gKiAgICAgICB0aGlzLmxheW91dC5oaWRlTG9hZGVyKCk7XHJcbiAqICAgICB9XHJcbiAqICAgfVxyXG4gKiB9XHJcbiAqIGBgYFxyXG4gKi9cclxuaW1wb3J0IHsgSW5qZWN0YWJsZSwgaW5qZWN0LCBQTEFURk9STV9JRCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBpc1BsYXRmb3JtQnJvd3NlciB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQge1xyXG4gIFVpRmFiQWN0aW9uLFxyXG4gIFVpTGF5b3V0RmFiQ29uZmlnLFxyXG4gIFVpTGF5b3V0TW9kZSxcclxuICBVaUNvbnRlbnRUeXBlLFxyXG59IGZyb20gJy4vbGF5b3V0LWJ1aWxkZXIudHlwZXMnO1xyXG5cclxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcclxuZXhwb3J0IGNsYXNzIFVpTGF5b3V0U2VydmljZSB7XHJcbiAgcHJpdmF0ZSByZWFkb25seSBwbGF0Zm9ybUlkID0gaW5qZWN0KFBMQVRGT1JNX0lEKTtcclxuXHJcbiAgLy8g4pSA4pSAIExvYWRlciDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcclxuXHJcbiAgcHJpdmF0ZSByZWFkb25seSBfbG9hZGluZyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcclxuICAvKiogV2hldGhlciB0aGUgb3ZlcmxheSBsb2FkZXIgaXMgY3VycmVudGx5IHZpc2libGUuICovXHJcbiAgcmVhZG9ubHkgbG9hZGluZyQ6IE9ic2VydmFibGU8Ym9vbGVhbj4gPSB0aGlzLl9sb2FkaW5nJC5hc09ic2VydmFibGUoKTtcclxuXHJcbiAgLyoqIFNob3cgdGhlIGZ1bGwtc2NyZWVuIG92ZXJsYXkgbG9hZGVyIGFuZCBibG9jayBib2R5IHNjcm9sbC4gKi9cclxuICBzaG93TG9hZGVyKCk6IHZvaWQge1xyXG4gICAgdGhpcy5fbG9hZGluZyQubmV4dCh0cnVlKTtcclxuICAgIHRoaXMuc2V0Qm9keU92ZXJmbG93KHRydWUpO1xyXG4gIH1cclxuXHJcbiAgLyoqIEhpZGUgdGhlIG92ZXJsYXkgbG9hZGVyIGFuZCByZXN0b3JlIGJvZHkgc2Nyb2xsLiAqL1xyXG4gIGhpZGVMb2FkZXIoKTogdm9pZCB7XHJcbiAgICB0aGlzLl9sb2FkaW5nJC5uZXh0KGZhbHNlKTtcclxuICAgIHRoaXMuc2V0Qm9keU92ZXJmbG93KGZhbHNlKTtcclxuICB9XHJcblxyXG4gIC8qKiBUb2dnbGUgdGhlIG92ZXJsYXkgbG9hZGVyLiAqL1xyXG4gIHRvZ2dsZUxvYWRlcigpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLl9sb2FkaW5nJC52YWx1ZSkge1xyXG4gICAgICB0aGlzLmhpZGVMb2FkZXIoKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuc2hvd0xvYWRlcigpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqIFN5bmNocm9ub3VzIHNuYXBzaG90IG9mIHRoZSBsb2FkaW5nIHN0YXRlLiAqL1xyXG4gIGlzTG9hZGluZygpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLl9sb2FkaW5nJC52YWx1ZTtcclxuICB9XHJcblxyXG4gIC8vIOKUgOKUgCBMYXlvdXQgTW9kZSDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcclxuXHJcbiAgcHJpdmF0ZSByZWFkb25seSBfbGF5b3V0TW9kZSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFVpTGF5b3V0TW9kZT4oJ3NpZGViYXInKTtcclxuICAvKiogQ3VycmVudCBsYXlvdXQgbW9kZSAoc2lkZWJhciBvciB0b3BiYXIpLiAqL1xyXG4gIHJlYWRvbmx5IGxheW91dE1vZGUkOiBPYnNlcnZhYmxlPFVpTGF5b3V0TW9kZT4gPSB0aGlzLl9sYXlvdXRNb2RlJC5hc09ic2VydmFibGUoKTtcclxuXHJcbiAgLyoqXHJcbiAgICogU3dpdGNoIGxheW91dCBtb2RlIHdpdGggbG9hZGVyIG1hc2tpbmcgdGhlIHRyYW5zaXRpb24uXHJcbiAgICogU2hvd3MgdGhlIGxvYWRlciwgYXBwbGllcyB0aGUgbW9kZSBjaGFuZ2UsIHRoZW4gaGlkZXMgdGhlIGxvYWRlclxyXG4gICAqIGFmdGVyIGEgc2hvcnQgZGVsYXkgdG8gcHJldmVudCB2aXNpYmxlIGxheW91dCBzaGlmdC5cclxuICAgKi9cclxuICBzZXRMYXlvdXRNb2RlKG1vZGU6IFVpTGF5b3V0TW9kZSwgdHJhbnNpdGlvbk1zID0gMzAwKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5fbGF5b3V0TW9kZSQudmFsdWUgPT09IG1vZGUpIHJldHVybjtcclxuICAgIHRoaXMuc2hvd0xvYWRlcigpO1xyXG4gICAgdGhpcy5fbGF5b3V0TW9kZSQubmV4dChtb2RlKTtcclxuICAgIHNldFRpbWVvdXQoKCkgPT4gdGhpcy5oaWRlTG9hZGVyKCksIHRyYW5zaXRpb25Ncyk7XHJcbiAgfVxyXG5cclxuICAvKiogU3luY2hyb25vdXMgc25hcHNob3Qgb2YgdGhlIGN1cnJlbnQgbGF5b3V0IG1vZGUuICovXHJcbiAgZ2V0TGF5b3V0TW9kZSgpOiBVaUxheW91dE1vZGUge1xyXG4gICAgcmV0dXJuIHRoaXMuX2xheW91dE1vZGUkLnZhbHVlO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQGludGVybmFsIENhbGxlZCBieSB0aGUgbGF5b3V0LWJ1aWxkZXIgY29tcG9uZW50IHRvIHNldCB0aGUgaW5pdGlhbCBtb2RlXHJcbiAgICogZnJvbSB0aGUgc2NoZW1hIHdpdGhvdXQgdHJpZ2dlcmluZyB0aGUgbG9hZGVyIHRyYW5zaXRpb24uXHJcbiAgICovXHJcbiAgX3NldEluaXRpYWxMYXlvdXRNb2RlKG1vZGU6IFVpTGF5b3V0TW9kZSk6IHZvaWQge1xyXG4gICAgdGhpcy5fbGF5b3V0TW9kZSQubmV4dChtb2RlKTtcclxuICB9XHJcblxyXG4gIC8vIOKUgOKUgCBDb250ZW50IFR5cGUg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXHJcblxyXG4gIHByaXZhdGUgcmVhZG9ubHkgX2NvbnRlbnRUeXBlJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8VWlDb250ZW50VHlwZT4oJ2ZsdWlkJyk7XHJcbiAgLyoqIEN1cnJlbnQgY29udGVudCB0eXBlIChmbHVpZCwgYm94ZWQsIGZ1bGxzY3JlZW4pLiAqL1xyXG4gIHJlYWRvbmx5IGNvbnRlbnRUeXBlJDogT2JzZXJ2YWJsZTxVaUNvbnRlbnRUeXBlPiA9IHRoaXMuX2NvbnRlbnRUeXBlJC5hc09ic2VydmFibGUoKTtcclxuXHJcbiAgLyoqIFNldCB0aGUgY29udGVudCB0eXBlIHBlci1yb3V0ZSBvciBnbG9iYWxseS4gKi9cclxuICBzZXRDb250ZW50VHlwZSh0eXBlOiBVaUNvbnRlbnRUeXBlKTogdm9pZCB7XHJcbiAgICB0aGlzLl9jb250ZW50VHlwZSQubmV4dCh0eXBlKTtcclxuICB9XHJcblxyXG4gIC8qKiBTeW5jaHJvbm91cyBzbmFwc2hvdCBvZiB0aGUgY3VycmVudCBjb250ZW50IHR5cGUuICovXHJcbiAgZ2V0Q29udGVudFR5cGUoKTogVWlDb250ZW50VHlwZSB7XHJcbiAgICByZXR1cm4gdGhpcy5fY29udGVudFR5cGUkLnZhbHVlO1xyXG4gIH1cclxuXHJcbiAgLyoqIEBpbnRlcm5hbCAqL1xyXG4gIF9zZXRJbml0aWFsQ29udGVudFR5cGUodHlwZTogVWlDb250ZW50VHlwZSk6IHZvaWQge1xyXG4gICAgdGhpcy5fY29udGVudFR5cGUkLm5leHQodHlwZSk7XHJcbiAgfVxyXG5cclxuICAvLyDilIDilIAgU2lkZWJhciDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcclxuXHJcbiAgcHJpdmF0ZSByZWFkb25seSBfc2lkZWJhck9wZW4kID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XHJcbiAgLyoqIFdoZXRoZXIgdGhlIG1vYmlsZSBzaWRlYmFyIGRyYXdlciBpcyBvcGVuLiAqL1xyXG4gIHJlYWRvbmx5IHNpZGViYXJPcGVuJDogT2JzZXJ2YWJsZTxib29sZWFuPiA9IHRoaXMuX3NpZGViYXJPcGVuJC5hc09ic2VydmFibGUoKTtcclxuXHJcbiAgcHJpdmF0ZSByZWFkb25seSBfc2lkZWJhckNvbGxhcHNlZCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcclxuICAvKiogV2hldGhlciB0aGUgZGVza3RvcCBzaWRlYmFyIGlzIGluIGNvbGxhcHNlZCAoaWNvbi1vbmx5KSBtb2RlLiAqL1xyXG4gIHJlYWRvbmx5IHNpZGViYXJDb2xsYXBzZWQkOiBPYnNlcnZhYmxlPGJvb2xlYW4+ID0gdGhpcy5fc2lkZWJhckNvbGxhcHNlZCQuYXNPYnNlcnZhYmxlKCk7XHJcblxyXG4gIC8qKiBUb2dnbGUgdGhlIGRlc2t0b3Agc2lkZWJhciBiZXR3ZWVuIGV4cGFuZGVkIGFuZCBjb2xsYXBzZWQuICovXHJcbiAgdG9nZ2xlU2lkZWJhcigpOiB2b2lkIHtcclxuICAgIHRoaXMuX3NpZGViYXJDb2xsYXBzZWQkLm5leHQoIXRoaXMuX3NpZGViYXJDb2xsYXBzZWQkLnZhbHVlKTtcclxuICB9XHJcblxyXG4gIC8qKiBTZXQgdGhlIGRlc2t0b3Agc2lkZWJhciBjb2xsYXBzZWQgc3RhdGUgZXhwbGljaXRseS4gKi9cclxuICBjb2xsYXBzZVNpZGViYXIoY29sbGFwc2VkID0gdHJ1ZSk6IHZvaWQge1xyXG4gICAgdGhpcy5fc2lkZWJhckNvbGxhcHNlZCQubmV4dChjb2xsYXBzZWQpO1xyXG4gIH1cclxuXHJcbiAgLyoqIE9wZW4gdGhlIG1vYmlsZSBzaWRlYmFyIGRyYXdlci4gKi9cclxuICBvcGVuTW9iaWxlU2lkZWJhcigpOiB2b2lkIHtcclxuICAgIHRoaXMuX3NpZGViYXJPcGVuJC5uZXh0KHRydWUpO1xyXG4gIH1cclxuXHJcbiAgLyoqIENsb3NlIHRoZSBtb2JpbGUgc2lkZWJhciBkcmF3ZXIuICovXHJcbiAgY2xvc2VNb2JpbGVTaWRlYmFyKCk6IHZvaWQge1xyXG4gICAgdGhpcy5fc2lkZWJhck9wZW4kLm5leHQoZmFsc2UpO1xyXG4gIH1cclxuXHJcbiAgLyoqIFN5bmNocm9ub3VzIHNuYXBzaG90OiBpcyB0aGUgbW9iaWxlIHNpZGViYXIgb3Blbj8gKi9cclxuICBpc1NpZGViYXJPcGVuKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX3NpZGViYXJPcGVuJC52YWx1ZTtcclxuICB9XHJcblxyXG4gIC8qKiBTeW5jaHJvbm91cyBzbmFwc2hvdDogaXMgdGhlIGRlc2t0b3Agc2lkZWJhciBjb2xsYXBzZWQ/ICovXHJcbiAgaXNTaWRlYmFyQ29sbGFwc2VkKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX3NpZGViYXJDb2xsYXBzZWQkLnZhbHVlO1xyXG4gIH1cclxuXHJcbiAgLy8g4pSA4pSAIEZBQiAoY29udGV4dC1zZW5zaXRpdmUpIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxyXG5cclxuICBwcml2YXRlIF9kZWZhdWx0RmFiQ29uZmlnOiBVaUxheW91dEZhYkNvbmZpZyB8IG51bGwgPSBudWxsO1xyXG4gIHByaXZhdGUgcmVhZG9ubHkgX2ZhYkNvbmZpZyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFVpTGF5b3V0RmFiQ29uZmlnIHwgbnVsbD4obnVsbCk7XHJcbiAgLyoqIEN1cnJlbnQgRkFCIGNvbmZpZ3VyYXRpb24gKHNjaGVtYSBkZWZhdWx0IG1lcmdlZCB3aXRoIHBhZ2Ugb3ZlcnJpZGVzKS4gKi9cclxuICByZWFkb25seSBmYWJDb25maWckOiBPYnNlcnZhYmxlPFVpTGF5b3V0RmFiQ29uZmlnIHwgbnVsbD4gPSB0aGlzLl9mYWJDb25maWckLmFzT2JzZXJ2YWJsZSgpO1xyXG5cclxuICAvKipcclxuICAgKiBDYWxsZWQgaW50ZXJuYWxseSBieSB0aGUgbGF5b3V0LWJ1aWxkZXIgY29tcG9uZW50IHRvIHJlZ2lzdGVyIHRoZVxyXG4gICAqIHNjaGVtYS1sZXZlbCBkZWZhdWx0IEZBQiBjb25maWcuXHJcbiAgICogQGludGVybmFsXHJcbiAgICovXHJcbiAgX3NldERlZmF1bHRGYWJDb25maWcoY29uZmlnOiBVaUxheW91dEZhYkNvbmZpZyB8IG51bGwpOiB2b2lkIHtcclxuICAgIHRoaXMuX2RlZmF1bHRGYWJDb25maWcgPSBjb25maWc7XHJcbiAgICB0aGlzLl9mYWJDb25maWckLm5leHQoY29uZmlnKTtcclxuICB9XHJcblxyXG4gIC8qKiBPdmVycmlkZSB0aGUgRkFCIG1haW4gYWN0aW9uIGZvciB0aGUgY3VycmVudCBwYWdlIGNvbnRleHQuICovXHJcbiAgc2V0TWFpbkZhYkFjdGlvbihhY3Rpb246IFVpRmFiQWN0aW9uKTogdm9pZCB7XHJcbiAgICBjb25zdCBjdXJyZW50ID0gdGhpcy5fZmFiQ29uZmlnJC52YWx1ZTtcclxuICAgIHRoaXMuX2ZhYkNvbmZpZyQubmV4dCh7XHJcbiAgICAgIG1haW5BY3Rpb246IGFjdGlvbixcclxuICAgICAgc2Vjb25kYXJ5QWN0aW9uczogY3VycmVudD8uc2Vjb25kYXJ5QWN0aW9ucyA/PyBbXSxcclxuICAgICAgcG9zaXRpb246IGN1cnJlbnQ/LnBvc2l0aW9uID8/ICdib3R0b20tcmlnaHQnLFxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICAvKiogT3ZlcnJpZGUgYWxsIEZBQiBhY3Rpb25zIGZvciB0aGUgY3VycmVudCBwYWdlIGNvbnRleHQuICovXHJcbiAgc2V0RmFiQWN0aW9ucyhtYWluOiBVaUZhYkFjdGlvbiwgc2Vjb25kYXJ5PzogVWlGYWJBY3Rpb25bXSk6IHZvaWQge1xyXG4gICAgY29uc3QgY3VycmVudCA9IHRoaXMuX2ZhYkNvbmZpZyQudmFsdWU7XHJcbiAgICB0aGlzLl9mYWJDb25maWckLm5leHQoe1xyXG4gICAgICBtYWluQWN0aW9uOiBtYWluLFxyXG4gICAgICBzZWNvbmRhcnlBY3Rpb25zOiBzZWNvbmRhcnkgPz8gW10sXHJcbiAgICAgIHBvc2l0aW9uOiBjdXJyZW50Py5wb3NpdGlvbiA/PyAnYm90dG9tLXJpZ2h0JyxcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgLyoqIFJlc2V0IEZBQiB0byB0aGUgc2NoZW1hLWxldmVsIGRlZmF1bHQgY29uZmlndXJhdGlvbi4gKi9cclxuICBjbGVhckZhYkFjdGlvbnMoKTogdm9pZCB7XHJcbiAgICB0aGlzLl9mYWJDb25maWckLm5leHQodGhpcy5fZGVmYXVsdEZhYkNvbmZpZyk7XHJcbiAgfVxyXG5cclxuICAvLyDilIDilIAgTmF2aWdhdGlvbiBoZWxwZXJzIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxyXG5cclxuICBwcml2YXRlIHJlYWRvbmx5IF9uYXZCYWRnZXMkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxNYXA8c3RyaW5nLCBzdHJpbmcgfCBudW1iZXIgfCBudWxsPj4obmV3IE1hcCgpKTtcclxuICAvKiogT2JzZXJ2YWJsZSBtYXAgb2YgbmF2LWl0ZW0gYmFkZ2VzIGtleWVkIGJ5IGl0ZW0gSUQuICovXHJcbiAgcmVhZG9ubHkgbmF2QmFkZ2VzJDogT2JzZXJ2YWJsZTxNYXA8c3RyaW5nLCBzdHJpbmcgfCBudW1iZXIgfCBudWxsPj4gPSB0aGlzLl9uYXZCYWRnZXMkLmFzT2JzZXJ2YWJsZSgpO1xyXG5cclxuICBwcml2YXRlIHJlYWRvbmx5IF9uYXZWaXNpYmlsaXR5JCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8TWFwPHN0cmluZywgYm9vbGVhbj4+KG5ldyBNYXAoKSk7XHJcbiAgLyoqIE9ic2VydmFibGUgbWFwIG9mIG5hdi1pdGVtIHZpc2liaWxpdHkgb3ZlcnJpZGVzIGtleWVkIGJ5IGl0ZW0gSUQuICovXHJcbiAgcmVhZG9ubHkgbmF2VmlzaWJpbGl0eSQ6IE9ic2VydmFibGU8TWFwPHN0cmluZywgYm9vbGVhbj4+ID0gdGhpcy5fbmF2VmlzaWJpbGl0eSQuYXNPYnNlcnZhYmxlKCk7XHJcblxyXG4gIC8qKiBTZXQgb3IgY2xlYXIgYSBiYWRnZSBvbiBhIG5hdmlnYXRpb24gaXRlbS4gUGFzcyBgbnVsbGAgdG8gcmVtb3ZlLiAqL1xyXG4gIHNldE5hdkJhZGdlKGl0ZW1JZDogc3RyaW5nLCBiYWRnZTogc3RyaW5nIHwgbnVtYmVyIHwgbnVsbCk6IHZvaWQge1xyXG4gICAgY29uc3QgbWFwID0gbmV3IE1hcCh0aGlzLl9uYXZCYWRnZXMkLnZhbHVlKTtcclxuICAgIGlmIChiYWRnZSA9PT0gbnVsbCkge1xyXG4gICAgICBtYXAuZGVsZXRlKGl0ZW1JZCk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBtYXAuc2V0KGl0ZW1JZCwgYmFkZ2UpO1xyXG4gICAgfVxyXG4gICAgdGhpcy5fbmF2QmFkZ2VzJC5uZXh0KG1hcCk7XHJcbiAgfVxyXG5cclxuICAvKiogT3ZlcnJpZGUgdmlzaWJpbGl0eSBvZiBhIG5hdmlnYXRpb24gaXRlbS4gKi9cclxuICBzZXROYXZJdGVtVmlzaWJpbGl0eShpdGVtSWQ6IHN0cmluZywgdmlzaWJsZTogYm9vbGVhbik6IHZvaWQge1xyXG4gICAgY29uc3QgbWFwID0gbmV3IE1hcCh0aGlzLl9uYXZWaXNpYmlsaXR5JC52YWx1ZSk7XHJcbiAgICBtYXAuc2V0KGl0ZW1JZCwgdmlzaWJsZSk7XHJcbiAgICB0aGlzLl9uYXZWaXNpYmlsaXR5JC5uZXh0KG1hcCk7XHJcbiAgfVxyXG5cclxuICAvLyDilIDilIAgQmFyIHZpc2liaWxpdHkgKHRvcGJhciBub3RpZmljYXRpb24gYmFycykg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXHJcblxyXG4gIHByaXZhdGUgcmVhZG9ubHkgX2JhclZpc2liaWxpdHkkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxNYXA8c3RyaW5nLCBib29sZWFuPj4obmV3IE1hcCgpKTtcclxuICAvKiogT2JzZXJ2YWJsZSBtYXAgb2YgdG9wYmFyIGJhciB2aXNpYmlsaXR5IGtleWVkIGJ5IGJhciBJRC4gKi9cclxuICByZWFkb25seSBiYXJWaXNpYmlsaXR5JDogT2JzZXJ2YWJsZTxNYXA8c3RyaW5nLCBib29sZWFuPj4gPSB0aGlzLl9iYXJWaXNpYmlsaXR5JC5hc09ic2VydmFibGUoKTtcclxuXHJcbiAgLyoqIFNob3cgYSB0b3BiYXIgYmFyIGJ5IElELiAqL1xyXG4gIHNob3dCYXIoYmFySWQ6IHN0cmluZyk6IHZvaWQge1xyXG4gICAgY29uc3QgbWFwID0gbmV3IE1hcCh0aGlzLl9iYXJWaXNpYmlsaXR5JC52YWx1ZSk7XHJcbiAgICBtYXAuc2V0KGJhcklkLCB0cnVlKTtcclxuICAgIHRoaXMuX2JhclZpc2liaWxpdHkkLm5leHQobWFwKTtcclxuICB9XHJcblxyXG4gIC8qKiBIaWRlIGEgdG9wYmFyIGJhciBieSBJRC4gKi9cclxuICBoaWRlQmFyKGJhcklkOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIGNvbnN0IG1hcCA9IG5ldyBNYXAodGhpcy5fYmFyVmlzaWJpbGl0eSQudmFsdWUpO1xyXG4gICAgbWFwLnNldChiYXJJZCwgZmFsc2UpO1xyXG4gICAgdGhpcy5fYmFyVmlzaWJpbGl0eSQubmV4dChtYXApO1xyXG4gIH1cclxuXHJcbiAgLyoqIFRvZ2dsZSB2aXNpYmlsaXR5IG9mIGEgdG9wYmFyIGJhciBieSBJRC4gKi9cclxuICB0b2dnbGVCYXIoYmFySWQ6IHN0cmluZyk6IHZvaWQge1xyXG4gICAgY29uc3QgbWFwID0gbmV3IE1hcCh0aGlzLl9iYXJWaXNpYmlsaXR5JC52YWx1ZSk7XHJcbiAgICBjb25zdCBjdXJyZW50ID0gbWFwLmdldChiYXJJZCk7XHJcbiAgICBtYXAuc2V0KGJhcklkLCBjdXJyZW50ID09PSB1bmRlZmluZWQgPyBmYWxzZSA6ICFjdXJyZW50KTtcclxuICAgIHRoaXMuX2JhclZpc2liaWxpdHkkLm5leHQobWFwKTtcclxuICB9XHJcblxyXG4gIC8qKiBTeW5jaHJvbm91cyBjaGVjayBvZiBiYXIgdmlzaWJpbGl0eSAoc2NoZW1hIGB2aXNpYmxlYCBmYWxsYmFjaykuICovXHJcbiAgaXNCYXJWaXNpYmxlKGJhcklkOiBzdHJpbmcsIHNjaGVtYVZpc2libGUgPSB0cnVlKTogYm9vbGVhbiB7XHJcbiAgICBjb25zdCBvdmVycmlkZSA9IHRoaXMuX2JhclZpc2liaWxpdHkkLnZhbHVlLmdldChiYXJJZCk7XHJcbiAgICByZXR1cm4gb3ZlcnJpZGUgIT09IHVuZGVmaW5lZCA/IG92ZXJyaWRlIDogc2NoZW1hVmlzaWJsZTtcclxuICB9XHJcblxyXG4gIC8vIOKUgOKUgCBQcml2YXRlIGhlbHBlcnMg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXHJcblxyXG4gIHByaXZhdGUgc2V0Qm9keU92ZXJmbG93KGxvY2tlZDogYm9vbGVhbik6IHZvaWQge1xyXG4gICAgaWYgKGlzUGxhdGZvcm1Ccm93c2VyKHRoaXMucGxhdGZvcm1JZCkpIHtcclxuICAgICAgZG9jdW1lbnQuYm9keS5zdHlsZS5vdmVyZmxvdyA9IGxvY2tlZCA/ICdoaWRkZW4nIDogJyc7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -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