@3ddv/software-division-components 1.5.0 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (704) hide show
  1. package/.postcssrc.json +5 -0
  2. package/.storybook/main.ts +78 -0
  3. package/.storybook/manager-head.html +1 -0
  4. package/.storybook/preview.ts +30 -0
  5. package/.storybook/tsconfig.json +25 -0
  6. package/.storybook/typings.d.ts +4 -0
  7. package/CHANGELOG.md +8 -0
  8. package/LICENSE.md +21 -0
  9. package/backoffice/checkbox/checkbox.component.css +193 -0
  10. package/backoffice/checkbox/checkbox.component.html +23 -0
  11. package/backoffice/checkbox/checkbox.component.ts +252 -0
  12. package/backoffice/checkbox/index.ts +1 -0
  13. package/backoffice/checkbox/ng-package.json +1 -0
  14. package/backoffice/checkbox/public-api.ts +1 -0
  15. package/backoffice/checkbox/story/checkbox.stories.ts +304 -0
  16. package/backoffice/datepicker/datepicker.component.css +262 -0
  17. package/backoffice/datepicker/datepicker.component.html +40 -0
  18. package/backoffice/datepicker/datepicker.component.ts +366 -0
  19. package/backoffice/datepicker/index.ts +1 -0
  20. package/backoffice/datepicker/ng-package.json +1 -0
  21. package/backoffice/datepicker/{public-api.d.ts → public-api.ts} +1 -1
  22. package/backoffice/datepicker/story/datepicker.stories.ts +32 -0
  23. package/backoffice/datepicker/ui/ui-calendar-helm/src/index.ts +14 -0
  24. package/backoffice/datepicker/ui/ui-calendar-helm/src/lib/hlm-calendar-multi.ts +183 -0
  25. package/backoffice/datepicker/ui/ui-calendar-helm/src/lib/hlm-calendar.ts +171 -0
  26. package/backoffice/datepicker/ui/ui-date-picker-helm/src/index.ts +16 -0
  27. package/backoffice/datepicker/ui/ui-date-picker-helm/src/lib/hlm-date-picker-multi.token.ts +43 -0
  28. package/backoffice/datepicker/ui/ui-date-picker-helm/src/lib/hlm-date-picker-multi.ts +177 -0
  29. package/backoffice/datepicker/ui/ui-date-picker-helm/src/lib/hlm-date-picker.token.ts +43 -0
  30. package/backoffice/datepicker/ui/ui-date-picker-helm/src/lib/hlm-date-picker.ts +167 -0
  31. package/backoffice/datepicker/ui/ui-icon-helm/src/index.ts +11 -0
  32. package/backoffice/datepicker/ui/ui-icon-helm/src/lib/hlm-icon.token.ts +20 -0
  33. package/backoffice/datepicker/ui/ui-icon-helm/src/lib/hlm-icon.ts +35 -0
  34. package/backoffice/datepicker/ui/ui-popover-helm/src/index.ts +15 -0
  35. package/backoffice/datepicker/ui/ui-popover-helm/src/lib/hlm-popover-close.ts +19 -0
  36. package/backoffice/datepicker/ui/ui-popover-helm/src/lib/hlm-popover-content.ts +30 -0
  37. package/backoffice/index.ts +1 -0
  38. package/backoffice/input/index.ts +1 -0
  39. package/backoffice/input/input.component.css +319 -0
  40. package/backoffice/input/input.component.html +51 -0
  41. package/backoffice/input/input.component.ts +497 -0
  42. package/backoffice/input/ng-package.json +1 -0
  43. package/backoffice/input/public-api.ts +2 -0
  44. package/backoffice/input/story/input.stories.ts +243 -0
  45. package/backoffice/radio/index.ts +1 -0
  46. package/backoffice/radio/ng-package.json +1 -0
  47. package/backoffice/radio/public-api.ts +1 -0
  48. package/backoffice/radio/radio.component.css +143 -0
  49. package/backoffice/radio/radio.component.html +15 -0
  50. package/backoffice/radio/radio.component.ts +154 -0
  51. package/backoffice/radio/story/radio.stories.ts +287 -0
  52. package/backoffice/table/_components/pagination/pagination.component.css +117 -0
  53. package/backoffice/table/_components/pagination/pagination.component.html +55 -0
  54. package/backoffice/table/_components/pagination/pagination.component.ts +79 -0
  55. package/backoffice/table/_components/selection-table-head/selection-table-head.component.css +0 -0
  56. package/backoffice/table/_components/selection-table-head/selection-table-head.component.html +6 -0
  57. package/backoffice/table/_components/selection-table-head/selection-table-head.component.ts +36 -0
  58. package/backoffice/table/_components/selection-table-row/selection-table-row.component.css +0 -0
  59. package/backoffice/table/_components/selection-table-row/selection-table-row.component.html +5 -0
  60. package/backoffice/table/_components/selection-table-row/selection-table-row.component.ts +12 -0
  61. package/backoffice/table/_components/sort-header-button/sort-header-button.component.css +14 -0
  62. package/backoffice/table/_components/sort-header-button/sort-header-button.component.html +11 -0
  63. package/backoffice/table/_components/sort-header-button/sort-header-button.component.ts +55 -0
  64. package/backoffice/table/index.ts +1 -0
  65. package/backoffice/table/ng-package.json +1 -0
  66. package/backoffice/table/public-api.ts +6 -0
  67. package/backoffice/table/story/table.stories.ts +364 -0
  68. package/backoffice/table/table.component.css +172 -0
  69. package/backoffice/table/table.component.html +53 -0
  70. package/backoffice/table/table.component.ts +347 -0
  71. package/backoffice/table/ui/ui-icon-helm/src/index.ts +11 -0
  72. package/backoffice/table/ui/ui-icon-helm/src/lib/hlm-icon.token.ts +20 -0
  73. package/backoffice/table/ui/ui-icon-helm/src/lib/hlm-icon.ts +35 -0
  74. package/backoffice/table/ui/ui-table-helm/src/index.ts +13 -0
  75. package/backoffice/table/ui/ui-table-helm/src/lib/hlm-table.ts +220 -0
  76. package/components.json +3 -0
  77. package/{README.md → dist/README.md} +11 -7
  78. package/dist/fesm2022/3ddv-software-division-components-backoffice-checkbox.mjs +208 -0
  79. package/dist/fesm2022/3ddv-software-division-components-backoffice-checkbox.mjs.map +1 -0
  80. package/dist/fesm2022/3ddv-software-division-components-backoffice-datepicker.mjs +1061 -0
  81. package/dist/fesm2022/3ddv-software-division-components-backoffice-datepicker.mjs.map +1 -0
  82. package/dist/fesm2022/3ddv-software-division-components-backoffice-input.mjs +411 -0
  83. package/dist/fesm2022/3ddv-software-division-components-backoffice-input.mjs.map +1 -0
  84. package/dist/fesm2022/3ddv-software-division-components-backoffice-radio.mjs +128 -0
  85. package/dist/fesm2022/3ddv-software-division-components-backoffice-radio.mjs.map +1 -0
  86. package/dist/fesm2022/3ddv-software-division-components-backoffice-table.mjs +658 -0
  87. package/dist/fesm2022/3ddv-software-division-components-backoffice-table.mjs.map +1 -0
  88. package/dist/fesm2022/3ddv-software-division-components-dvm-cart-item.mjs +34 -0
  89. package/dist/fesm2022/3ddv-software-division-components-dvm-cart-item.mjs.map +1 -0
  90. package/dist/fesm2022/3ddv-software-division-components-dvm-cart.mjs +101 -0
  91. package/dist/fesm2022/3ddv-software-division-components-dvm-cart.mjs.map +1 -0
  92. package/dist/fesm2022/3ddv-software-division-components-dvm-legend.mjs +77 -0
  93. package/dist/fesm2022/3ddv-software-division-components-dvm-legend.mjs.map +1 -0
  94. package/dist/fesm2022/3ddv-software-division-components-dvm-loader.mjs +34 -0
  95. package/dist/fesm2022/3ddv-software-division-components-dvm-loader.mjs.map +1 -0
  96. package/dist/fesm2022/3ddv-software-division-components-dvm-map-loader.mjs +161 -0
  97. package/dist/fesm2022/3ddv-software-division-components-dvm-map-loader.mjs.map +1 -0
  98. package/dist/fesm2022/3ddv-software-division-components-dvm-neighbors.mjs +204 -0
  99. package/dist/fesm2022/3ddv-software-division-components-dvm-neighbors.mjs.map +1 -0
  100. package/dist/fesm2022/3ddv-software-division-components-dvm-popover.mjs +1080 -0
  101. package/dist/fesm2022/3ddv-software-division-components-dvm-popover.mjs.map +1 -0
  102. package/dist/fesm2022/3ddv-software-division-components-dvm-stepper.mjs +94 -0
  103. package/dist/fesm2022/3ddv-software-division-components-dvm-stepper.mjs.map +1 -0
  104. package/dist/fesm2022/3ddv-software-division-components-dvm-ticket-info-item.mjs +34 -0
  105. package/dist/fesm2022/3ddv-software-division-components-dvm-ticket-info-item.mjs.map +1 -0
  106. package/dist/fesm2022/3ddv-software-division-components-generic-add-digital-wallet.mjs +46 -0
  107. package/dist/fesm2022/3ddv-software-division-components-generic-add-digital-wallet.mjs.map +1 -0
  108. package/dist/fesm2022/3ddv-software-division-components-generic-braintree.mjs +127 -0
  109. package/dist/fesm2022/3ddv-software-division-components-generic-braintree.mjs.map +1 -0
  110. package/dist/fesm2022/3ddv-software-division-components-generic-button.mjs +373 -0
  111. package/dist/fesm2022/3ddv-software-division-components-generic-button.mjs.map +1 -0
  112. package/dist/fesm2022/3ddv-software-division-components-generic-dialog.mjs +309 -0
  113. package/dist/fesm2022/3ddv-software-division-components-generic-dialog.mjs.map +1 -0
  114. package/dist/fesm2022/3ddv-software-division-components-generic-drawer.mjs +34 -0
  115. package/dist/fesm2022/3ddv-software-division-components-generic-drawer.mjs.map +1 -0
  116. package/dist/fesm2022/3ddv-software-division-components-generic-icon.mjs +130 -0
  117. package/dist/fesm2022/3ddv-software-division-components-generic-icon.mjs.map +1 -0
  118. package/dist/fesm2022/3ddv-software-division-components-generic-select.mjs +295 -0
  119. package/dist/fesm2022/3ddv-software-division-components-generic-select.mjs.map +1 -0
  120. package/dist/fesm2022/3ddv-software-division-components-shared.mjs +171 -0
  121. package/dist/fesm2022/3ddv-software-division-components-shared.mjs.map +1 -0
  122. package/dist/fesm2022/3ddv-software-division-components-utils.mjs +39 -0
  123. package/dist/fesm2022/3ddv-software-division-components-utils.mjs.map +1 -0
  124. package/dist/fesm2022/3ddv-software-division-components.mjs +18 -0
  125. package/dist/fesm2022/3ddv-software-division-components.mjs.map +1 -0
  126. package/dist/styles.css +2 -0
  127. package/dist/types/3ddv-software-division-components-backoffice-checkbox.d.ts +106 -0
  128. package/dist/types/3ddv-software-division-components-backoffice-datepicker.d.ts +153 -0
  129. package/dist/types/3ddv-software-division-components-backoffice-input.d.ts +203 -0
  130. package/dist/types/3ddv-software-division-components-backoffice-radio.d.ts +76 -0
  131. package/dist/types/3ddv-software-division-components-backoffice-table.d.ts +130 -0
  132. package/dist/types/3ddv-software-division-components-dvm-cart-item.d.ts +14 -0
  133. package/dist/types/3ddv-software-division-components-dvm-cart.d.ts +76 -0
  134. package/dist/types/3ddv-software-division-components-dvm-legend.d.ts +38 -0
  135. package/dist/types/3ddv-software-division-components-dvm-loader.d.ts +14 -0
  136. package/{dvm/map-loader/map-loader.component.d.ts → dist/types/3ddv-software-division-components-dvm-map-loader.d.ts} +16 -14
  137. package/dist/types/3ddv-software-division-components-dvm-neighbors.d.ts +57 -0
  138. package/dist/types/3ddv-software-division-components-dvm-popover.d.ts +456 -0
  139. package/dist/types/3ddv-software-division-components-dvm-stepper.d.ts +34 -0
  140. package/dist/types/3ddv-software-division-components-dvm-ticket-info-item.d.ts +14 -0
  141. package/dist/types/3ddv-software-division-components-generic-add-digital-wallet.d.ts +23 -0
  142. package/dist/types/3ddv-software-division-components-generic-braintree.d.ts +62 -0
  143. package/dist/types/3ddv-software-division-components-generic-button.d.ts +186 -0
  144. package/dist/types/3ddv-software-division-components-generic-dialog.d.ts +104 -0
  145. package/dist/types/3ddv-software-division-components-generic-drawer.d.ts +14 -0
  146. package/dist/types/3ddv-software-division-components-generic-icon.d.ts +38 -0
  147. package/dist/types/3ddv-software-division-components-generic-select.d.ts +110 -0
  148. package/dist/types/3ddv-software-division-components-shared.d.ts +69 -0
  149. package/dist/types/3ddv-software-division-components-utils.d.ts +3 -0
  150. package/dist/types/3ddv-software-division-components.d.ts +2 -0
  151. package/documentation.json +30473 -0
  152. package/dvm/cart/cart.component.css +103 -0
  153. package/dvm/cart/cart.component.html +31 -0
  154. package/dvm/cart/cart.component.ts +49 -0
  155. package/dvm/cart/cart.stories.ts +370 -0
  156. package/dvm/cart/cart.types.ts +8 -0
  157. package/dvm/cart/index.ts +2 -0
  158. package/dvm/cart/ng-package.json +1 -0
  159. package/dvm/cart/{public-api.d.ts → public-api.ts} +5 -1
  160. package/dvm/cart/seat-list.component.css +281 -0
  161. package/dvm/cart/seat-list.component.html +85 -0
  162. package/dvm/cart/seat-list.component.ts +76 -0
  163. package/dvm/cart/seat-list.stories.ts +337 -0
  164. package/dvm/cart-item/cart-item.component.html +1 -0
  165. package/dvm/cart-item/cart-item.component.ts +8 -0
  166. package/dvm/cart-item/cart-item.service.ts +8 -0
  167. package/dvm/cart-item/cart.stories.ts +31 -0
  168. package/dvm/cart-item/index.ts +1 -0
  169. package/dvm/cart-item/ng-package.json +1 -0
  170. package/dvm/cart-item/{public-api.d.ts → public-api.ts} +4 -1
  171. package/dvm/index.ts +1 -0
  172. package/dvm/legend/index.ts +1 -0
  173. package/dvm/legend/legend.component.css +49 -0
  174. package/dvm/legend/legend.component.html +8 -0
  175. package/dvm/legend/legend.component.ts +41 -0
  176. package/dvm/legend/legend.stories.ts +16 -0
  177. package/dvm/legend/ng-package.json +1 -0
  178. package/dvm/legend/{public-api.d.ts → public-api.ts} +4 -1
  179. package/dvm/legend/{types.d.ts → types.ts} +3 -3
  180. package/dvm/legend/ui/legend-elements/{index.d.ts → index.ts} +0 -1
  181. package/dvm/legend/ui/legend-elements/legend-elements.component.css +49 -0
  182. package/dvm/legend/ui/legend-elements/legend-elements.component.html +8 -0
  183. package/dvm/legend/ui/legend-elements/legend-elements.component.ts +41 -0
  184. package/dvm/loader/index.ts +1 -0
  185. package/dvm/loader/loader.component.html +1 -0
  186. package/dvm/loader/loader.component.ts +8 -0
  187. package/dvm/loader/loader.service.ts +8 -0
  188. package/dvm/loader/loader.stories.ts +31 -0
  189. package/dvm/loader/ng-package.json +1 -0
  190. package/dvm/loader/{public-api.d.ts → public-api.ts} +4 -1
  191. package/dvm/map-loader/index.ts +1 -0
  192. package/dvm/map-loader/map-loader.component.css +91 -0
  193. package/dvm/map-loader/map-loader.component.html +23 -0
  194. package/dvm/map-loader/map-loader.component.ts +187 -0
  195. package/dvm/map-loader/map-loader.stories.ts +16 -0
  196. package/dvm/map-loader/ng-package.json +1 -0
  197. package/dvm/map-loader/public-api.ts +5 -0
  198. package/dvm/neighbors/index.ts +1 -0
  199. package/dvm/neighbors/neighbors.component.css +158 -0
  200. package/dvm/neighbors/neighbors.component.html +45 -0
  201. package/dvm/neighbors/neighbors.component.ts +218 -0
  202. package/dvm/neighbors/ng-package.json +1 -0
  203. package/dvm/neighbors/public-api.ts +2 -0
  204. package/dvm/neighbors/story/arrow-left-black-icon.svg +3 -0
  205. package/dvm/neighbors/story/mock-data.ts +15 -0
  206. package/dvm/neighbors/story/neighbours.stories.css +12 -0
  207. package/dvm/neighbors/story/neighbours.stories.ts +117 -0
  208. package/dvm/neighbors/{types.d.ts → types.ts} +7 -7
  209. package/dvm/popover/base-popover.component.ts +70 -0
  210. package/dvm/popover/index.ts +1 -0
  211. package/dvm/popover/ng-package.json +1 -0
  212. package/dvm/popover/popover.component.css +227 -0
  213. package/dvm/popover/popover.component.html +27 -0
  214. package/dvm/popover/popover.component.ts +236 -0
  215. package/dvm/popover/popover.config.ts +30 -0
  216. package/dvm/popover/popover.service.ts +627 -0
  217. package/dvm/popover/popover.stories.ts +873 -0
  218. package/dvm/popover/{public-api.d.ts → public-api.ts} +4 -1
  219. package/dvm/popover/seat-popover/seat-popover.component.css +89 -0
  220. package/dvm/popover/seat-popover/seat-popover.component.html +40 -0
  221. package/dvm/popover/seat-popover/seat-popover.component.ts +74 -0
  222. package/dvm/popover/section-popover/section-popover.component.css +157 -0
  223. package/dvm/popover/section-popover/section-popover.component.html +58 -0
  224. package/dvm/popover/section-popover/section-popover.component.ts +106 -0
  225. package/dvm/popover/services/dvm-popover-positioner.service.ts +73 -0
  226. package/dvm/popover/services/popover-manager.service.ts +88 -0
  227. package/dvm/popover/transformers/base-popover-data-transformer.ts +36 -0
  228. package/dvm/popover/types.ts +104 -0
  229. package/dvm/stepper/index.ts +1 -0
  230. package/dvm/stepper/ng-package.json +1 -0
  231. package/dvm/stepper/public-api.ts +5 -0
  232. package/dvm/stepper/stepper.component.css +142 -0
  233. package/dvm/stepper/stepper.component.html +9 -0
  234. package/dvm/stepper/stepper.component.ts +101 -0
  235. package/dvm/stepper/{types.d.ts → types.ts} +3 -6
  236. package/dvm/ticket-info-item/index.ts +1 -0
  237. package/dvm/ticket-info-item/ng-package.json +1 -0
  238. package/dvm/ticket-info-item/{public-api.d.ts → public-api.ts} +4 -1
  239. package/dvm/ticket-info-item/ticket-info-item.component.html +1 -0
  240. package/dvm/ticket-info-item/ticket-info-item.component.ts +8 -0
  241. package/dvm/ticket-info-item/ticket-info-item.service.ts +8 -0
  242. package/dvm/ticket-info-item/ticket-info-item.stories.ts +31 -0
  243. package/generic/add-digital-wallet/add-digital-wallet.component.css +76 -0
  244. package/generic/add-digital-wallet/add-digital-wallet.component.html +46 -0
  245. package/generic/add-digital-wallet/add-digital-wallet.component.ts +44 -0
  246. package/generic/add-digital-wallet/index.ts +1 -0
  247. package/generic/add-digital-wallet/ng-package.json +1 -0
  248. package/generic/add-digital-wallet/{public-api.d.ts → public-api.ts} +0 -1
  249. package/generic/braintree/braintree.component.css +7 -0
  250. package/generic/braintree/braintree.component.ts +134 -0
  251. package/generic/braintree/index.ts +1 -0
  252. package/generic/braintree/ng-package.json +1 -0
  253. package/generic/braintree/{public-api.d.ts → public-api.ts} +4 -1
  254. package/generic/braintree/story/braintree.stories.css +3 -0
  255. package/generic/braintree/story/braintree.stories.ts +27 -0
  256. package/generic/braintree/types.ts +28 -0
  257. package/generic/button/button.component.css +305 -0
  258. package/generic/button/button.component.html +10 -0
  259. package/generic/button/button.component.ts +353 -0
  260. package/generic/button/index.ts +1 -0
  261. package/generic/button/ng-package.json +1 -0
  262. package/generic/button/public-api.ts +6 -0
  263. package/generic/button/story/button.stories.ts +384 -0
  264. package/generic/button/ui/ui-button-helm/src/index.ts +10 -0
  265. package/generic/button/ui/ui-button-helm/src/lib/hlm-button.token.ts +22 -0
  266. package/generic/button/ui/ui-button-helm/src/lib/hlm-button.ts +62 -0
  267. package/generic/carousel/carousel-item.component.ts +15 -0
  268. package/generic/carousel/carousel-item.directive.ts +14 -0
  269. package/generic/carousel/carousel.component.css +90 -0
  270. package/generic/carousel/carousel.component.html +13 -0
  271. package/generic/carousel/carousel.component.ts +44 -0
  272. package/generic/carousel/index.ts +1 -0
  273. package/generic/carousel/{public-api.d.ts → public-api.ts} +0 -1
  274. package/generic/carousel/ui/ui-carousel-helm/src/index.ts +29 -0
  275. package/generic/carousel/ui/ui-carousel-helm/src/lib/hlm-carousel-content.ts +23 -0
  276. package/generic/carousel/ui/ui-carousel-helm/src/lib/hlm-carousel-item.ts +25 -0
  277. package/generic/carousel/ui/ui-carousel-helm/src/lib/hlm-carousel-next.ts +58 -0
  278. package/generic/carousel/ui/ui-carousel-helm/src/lib/hlm-carousel-previous.ts +61 -0
  279. package/generic/carousel/ui/ui-carousel-helm/src/lib/hlm-carousel-slide-display.ts +36 -0
  280. package/generic/carousel/ui/ui-carousel-helm/src/lib/hlm-carousel.ts +105 -0
  281. package/generic/dialog/dialog.component.css +5 -0
  282. package/generic/dialog/dialog.component.html +3 -0
  283. package/generic/dialog/dialog.component.ts +20 -0
  284. package/generic/dialog/dialog.stories.ts +14 -0
  285. package/generic/dialog/index.ts +1 -0
  286. package/generic/dialog/libs/ui-dialog-helm/src/{index.d.ts → index.ts} +20 -8
  287. package/generic/dialog/libs/ui-dialog-helm/src/lib/hlm-dialog-close.ts +20 -0
  288. package/generic/dialog/libs/ui-dialog-helm/src/lib/hlm-dialog-content.ts +56 -0
  289. package/generic/dialog/libs/ui-dialog-helm/src/lib/hlm-dialog-description.ts +17 -0
  290. package/generic/dialog/libs/ui-dialog-helm/src/lib/hlm-dialog-footer.ts +19 -0
  291. package/generic/dialog/libs/ui-dialog-helm/src/lib/hlm-dialog-header.ts +19 -0
  292. package/generic/dialog/libs/ui-dialog-helm/src/lib/hlm-dialog-overlay.ts +23 -0
  293. package/generic/dialog/libs/ui-dialog-helm/src/lib/hlm-dialog-title.ts +19 -0
  294. package/generic/dialog/libs/ui-dialog-helm/src/lib/hlm-dialog.service.ts +59 -0
  295. package/generic/dialog/libs/ui-dialog-helm/src/lib/hlm-dialog.ts +31 -0
  296. package/generic/dialog/ng-package.json +1 -0
  297. package/generic/dialog/{public-api.d.ts → public-api.ts} +5 -1
  298. package/generic/dialog/tsconfig.json +7 -0
  299. package/generic/dialog/ui/dialog-close-button/dialog-close-button.component.css +0 -0
  300. package/generic/dialog/ui/dialog-close-button/dialog-close-button.component.html +1 -0
  301. package/generic/dialog/ui/dialog-close-button/dialog-close-button.component.ts +17 -0
  302. package/generic/dialog/ui/dialog-footer/dialog-footer.component.css +0 -0
  303. package/generic/dialog/ui/dialog-footer/dialog-footer.component.html +3 -0
  304. package/generic/dialog/ui/dialog-footer/dialog-footer.component.ts +11 -0
  305. package/generic/dialog/ui/dialog-header/dialog-header.component.css +0 -0
  306. package/generic/dialog/ui/dialog-header/dialog-header.component.html +8 -0
  307. package/generic/dialog/ui/dialog-header/dialog-header.component.ts +18 -0
  308. package/generic/drawer/drawer.component.html +1 -0
  309. package/generic/drawer/drawer.component.ts +8 -0
  310. package/generic/drawer/drawer.service.ts +8 -0
  311. package/generic/drawer/drawer.stories.ts +31 -0
  312. package/generic/drawer/index.ts +1 -0
  313. package/generic/drawer/ng-package.json +1 -0
  314. package/generic/drawer/{public-api.d.ts → public-api.ts} +4 -1
  315. package/generic/icon/icon.component.css +7 -0
  316. package/generic/icon/icon.component.html +3 -0
  317. package/generic/icon/icon.component.ts +86 -0
  318. package/generic/icon/icon.stories.ts +16 -0
  319. package/generic/icon/index.ts +1 -0
  320. package/generic/icon/lib/ui-icon-helm/src/index.ts +11 -0
  321. package/generic/icon/lib/ui-icon-helm/src/lib/hlm-icon.token.ts +20 -0
  322. package/generic/icon/lib/ui-icon-helm/src/lib/hlm-icon.ts +36 -0
  323. package/generic/icon/ng-package.json +1 -0
  324. package/generic/icon/public-api.ts +6 -0
  325. package/generic/icon/tsconfig.json +7 -0
  326. package/generic/index.ts +1 -0
  327. package/generic/select/index.ts +1 -0
  328. package/generic/select/lib/hlm-select-content.ts +29 -0
  329. package/generic/select/lib/hlm-select-group.ts +17 -0
  330. package/generic/select/lib/hlm-select-label.ts +26 -0
  331. package/generic/select/lib/hlm-select-option.ts +37 -0
  332. package/generic/select/lib/hlm-select-scroll-down.ts +24 -0
  333. package/generic/select/lib/hlm-select-scroll-up.ts +23 -0
  334. package/generic/select/lib/hlm-select-trigger.ts +53 -0
  335. package/generic/select/lib/hlm-select-value.ts +17 -0
  336. package/generic/select/lib/hlm-select.ts +15 -0
  337. package/generic/select/lib/index.ts +38 -0
  338. package/generic/select/ng-package.json +1 -0
  339. package/generic/select/{public-api.d.ts → public-api.ts} +1 -1
  340. package/generic/select/select.component.css +65 -0
  341. package/generic/select/select.component.html +19 -0
  342. package/generic/select/select.component.ts +25 -0
  343. package/generic/select/types.ts +4 -0
  344. package/ng-package.json +10 -0
  345. package/package.json +114 -100
  346. package/public/3ddv-logo.jpg +0 -0
  347. package/public/neighbours-after.png +0 -0
  348. package/public/neighbours-before.png +0 -0
  349. package/shared/apply-theme-variables/apply-theme-variables.ts +35 -0
  350. package/shared/apply-theme-variables/{index.d.ts → index.ts} +0 -1
  351. package/shared/format-value.pipe.ts +23 -0
  352. package/shared/index.ts +1 -0
  353. package/shared/lib-provider/config-token.ts +4 -0
  354. package/shared/lib-provider/index.ts +1 -0
  355. package/shared/lib-provider/provide-sdc.ts +24 -0
  356. package/shared/lib-provider/{public-api.d.ts → public-api.ts} +0 -1
  357. package/shared/ng-package.json +1 -0
  358. package/shared/public-api.ts +6 -0
  359. package/shared/screen-observer/{index.d.ts → index.ts} +0 -1
  360. package/shared/screen-observer/provide-screen-observer.ts +17 -0
  361. package/shared/screen-observer/screen-observer.ts +56 -0
  362. package/shared/screen-observer/sizable-base.ts +70 -0
  363. package/shared/theme-provider/generic-theme.ts +1 -0
  364. package/shared/theme-provider/index.ts +1 -0
  365. package/shared/theme-provider/public-api.ts +1 -0
  366. package/shared/theme-provider/theme-provider.directive.ts +17 -0
  367. package/shared/themes/sdc.css +153 -0
  368. package/shared/types.ts +18 -0
  369. package/src/private-exports.ts +1 -0
  370. package/src/public-api.ts +20 -0
  371. package/styles.css +46 -2
  372. package/tsconfig.json +50 -0
  373. package/tsconfig.lib.prod.json +6 -0
  374. package/tsconfig.spec.json +15 -0
  375. package/tsconfig.temp.json +1 -0
  376. package/utils/index.ts +1 -0
  377. package/utils/ng-package.json +1 -0
  378. package/utils/public-api.ts +1 -0
  379. package/utils/validate-styles-for-component.ts +39 -0
  380. package/3ddv-software-division-components.d.ts.map +0 -1
  381. package/backoffice/checkbox/checkbox.component.d.ts +0 -103
  382. package/backoffice/checkbox/checkbox.component.d.ts.map +0 -1
  383. package/backoffice/checkbox/index.d.ts +0 -2
  384. package/backoffice/checkbox/index.d.ts.map +0 -1
  385. package/backoffice/checkbox/public-api.d.ts +0 -2
  386. package/backoffice/checkbox/public-api.d.ts.map +0 -1
  387. package/backoffice/datepicker/datepicker.component.d.ts +0 -150
  388. package/backoffice/datepicker/datepicker.component.d.ts.map +0 -1
  389. package/backoffice/datepicker/index.d.ts +0 -2
  390. package/backoffice/datepicker/index.d.ts.map +0 -1
  391. package/backoffice/datepicker/public-api.d.ts.map +0 -1
  392. package/backoffice/datepicker/ui/ui-calendar-helm/src/index.d.ts +0 -14
  393. package/backoffice/datepicker/ui/ui-calendar-helm/src/index.d.ts.map +0 -1
  394. package/backoffice/datepicker/ui/ui-calendar-helm/src/lib/hlm-calendar-multi.d.ts +0 -38
  395. package/backoffice/datepicker/ui/ui-calendar-helm/src/lib/hlm-calendar-multi.d.ts.map +0 -1
  396. package/backoffice/datepicker/ui/ui-calendar-helm/src/lib/hlm-calendar.d.ts +0 -34
  397. package/backoffice/datepicker/ui/ui-calendar-helm/src/lib/hlm-calendar.d.ts.map +0 -1
  398. package/backoffice/datepicker/ui/ui-date-picker-helm/src/index.d.ts +0 -15
  399. package/backoffice/datepicker/ui/ui-date-picker-helm/src/index.d.ts.map +0 -1
  400. package/backoffice/datepicker/ui/ui-date-picker-helm/src/lib/hlm-date-picker-multi.d.ts +0 -53
  401. package/backoffice/datepicker/ui/ui-date-picker-helm/src/lib/hlm-date-picker-multi.d.ts.map +0 -1
  402. package/backoffice/datepicker/ui/ui-date-picker-helm/src/lib/hlm-date-picker-multi.token.d.ts +0 -24
  403. package/backoffice/datepicker/ui/ui-date-picker-helm/src/lib/hlm-date-picker-multi.token.d.ts.map +0 -1
  404. package/backoffice/datepicker/ui/ui-date-picker-helm/src/lib/hlm-date-picker.d.ts +0 -53
  405. package/backoffice/datepicker/ui/ui-date-picker-helm/src/lib/hlm-date-picker.d.ts.map +0 -1
  406. package/backoffice/datepicker/ui/ui-date-picker-helm/src/lib/hlm-date-picker.token.d.ts +0 -24
  407. package/backoffice/datepicker/ui/ui-date-picker-helm/src/lib/hlm-date-picker.token.d.ts.map +0 -1
  408. package/backoffice/datepicker/ui/ui-icon-helm/src/index.d.ts +0 -10
  409. package/backoffice/datepicker/ui/ui-icon-helm/src/index.d.ts.map +0 -1
  410. package/backoffice/datepicker/ui/ui-icon-helm/src/lib/hlm-icon.d.ts +0 -10
  411. package/backoffice/datepicker/ui/ui-icon-helm/src/lib/hlm-icon.d.ts.map +0 -1
  412. package/backoffice/datepicker/ui/ui-icon-helm/src/lib/hlm-icon.token.d.ts +0 -8
  413. package/backoffice/datepicker/ui/ui-icon-helm/src/lib/hlm-icon.token.d.ts.map +0 -1
  414. package/backoffice/datepicker/ui/ui-popover-helm/src/index.d.ts +0 -14
  415. package/backoffice/datepicker/ui/ui-popover-helm/src/index.d.ts.map +0 -1
  416. package/backoffice/datepicker/ui/ui-popover-helm/src/lib/hlm-popover-close.d.ts +0 -9
  417. package/backoffice/datepicker/ui/ui-popover-helm/src/lib/hlm-popover-close.d.ts.map +0 -1
  418. package/backoffice/datepicker/ui/ui-popover-helm/src/lib/hlm-popover-content.d.ts +0 -14
  419. package/backoffice/datepicker/ui/ui-popover-helm/src/lib/hlm-popover-content.d.ts.map +0 -1
  420. package/backoffice/index.d.ts +0 -2
  421. package/backoffice/index.d.ts.map +0 -1
  422. package/backoffice/input/index.d.ts +0 -2
  423. package/backoffice/input/index.d.ts.map +0 -1
  424. package/backoffice/input/input.component.d.ts +0 -200
  425. package/backoffice/input/input.component.d.ts.map +0 -1
  426. package/backoffice/input/public-api.d.ts +0 -2
  427. package/backoffice/input/public-api.d.ts.map +0 -1
  428. package/backoffice/public-api.d.ts +0 -6
  429. package/backoffice/public-api.d.ts.map +0 -1
  430. package/backoffice/radio/index.d.ts +0 -2
  431. package/backoffice/radio/index.d.ts.map +0 -1
  432. package/backoffice/radio/public-api.d.ts +0 -2
  433. package/backoffice/radio/public-api.d.ts.map +0 -1
  434. package/backoffice/radio/radio.component.d.ts +0 -73
  435. package/backoffice/radio/radio.component.d.ts.map +0 -1
  436. package/backoffice/table/_components/pagination/pagination.component.d.ts +0 -18
  437. package/backoffice/table/_components/pagination/pagination.component.d.ts.map +0 -1
  438. package/backoffice/table/_components/selection-table-head/selection-table-head.component.d.ts +0 -11
  439. package/backoffice/table/_components/selection-table-head/selection-table-head.component.d.ts.map +0 -1
  440. package/backoffice/table/_components/selection-table-row/selection-table-row.component.d.ts +0 -8
  441. package/backoffice/table/_components/selection-table-row/selection-table-row.component.d.ts.map +0 -1
  442. package/backoffice/table/_components/sort-header-button/sort-header-button.component.d.ts +0 -16
  443. package/backoffice/table/_components/sort-header-button/sort-header-button.component.d.ts.map +0 -1
  444. package/backoffice/table/index.d.ts +0 -2
  445. package/backoffice/table/index.d.ts.map +0 -1
  446. package/backoffice/table/public-api.d.ts +0 -3
  447. package/backoffice/table/public-api.d.ts.map +0 -1
  448. package/backoffice/table/table.component.d.ts +0 -111
  449. package/backoffice/table/table.component.d.ts.map +0 -1
  450. package/backoffice/table/ui/ui-icon-helm/src/index.d.ts +0 -10
  451. package/backoffice/table/ui/ui-icon-helm/src/index.d.ts.map +0 -1
  452. package/backoffice/table/ui/ui-icon-helm/src/lib/hlm-icon.d.ts +0 -10
  453. package/backoffice/table/ui/ui-icon-helm/src/lib/hlm-icon.d.ts.map +0 -1
  454. package/backoffice/table/ui/ui-icon-helm/src/lib/hlm-icon.token.d.ts +0 -8
  455. package/backoffice/table/ui/ui-icon-helm/src/lib/hlm-icon.token.d.ts.map +0 -1
  456. package/backoffice/table/ui/ui-table-helm/src/index.d.ts +0 -11
  457. package/backoffice/table/ui/ui-table-helm/src/index.d.ts.map +0 -1
  458. package/backoffice/table/ui/ui-table-helm/src/lib/hlm-table.d.ts +0 -112
  459. package/backoffice/table/ui/ui-table-helm/src/lib/hlm-table.d.ts.map +0 -1
  460. package/dvm/cart/cart.component.d.ts +0 -31
  461. package/dvm/cart/cart.component.d.ts.map +0 -1
  462. package/dvm/cart/cart.types.d.ts +0 -8
  463. package/dvm/cart/cart.types.d.ts.map +0 -1
  464. package/dvm/cart/index.d.ts +0 -2
  465. package/dvm/cart/index.d.ts.map +0 -1
  466. package/dvm/cart/public-api.d.ts.map +0 -1
  467. package/dvm/cart/seat-list.component.d.ts +0 -38
  468. package/dvm/cart/seat-list.component.d.ts.map +0 -1
  469. package/dvm/cart-item/cart-item.component.d.ts +0 -6
  470. package/dvm/cart-item/cart-item.component.d.ts.map +0 -1
  471. package/dvm/cart-item/cart-item.service.d.ts +0 -7
  472. package/dvm/cart-item/cart-item.service.d.ts.map +0 -1
  473. package/dvm/cart-item/index.d.ts +0 -2
  474. package/dvm/cart-item/index.d.ts.map +0 -1
  475. package/dvm/cart-item/public-api.d.ts.map +0 -1
  476. package/dvm/index.d.ts +0 -2
  477. package/dvm/index.d.ts.map +0 -1
  478. package/dvm/legend/index.d.ts +0 -2
  479. package/dvm/legend/index.d.ts.map +0 -1
  480. package/dvm/legend/legend.component.d.ts +0 -17
  481. package/dvm/legend/legend.component.d.ts.map +0 -1
  482. package/dvm/legend/public-api.d.ts.map +0 -1
  483. package/dvm/legend/types.d.ts.map +0 -1
  484. package/dvm/legend/ui/legend-elements/index.d.ts.map +0 -1
  485. package/dvm/legend/ui/legend-elements/legend-elements.component.d.ts +0 -16
  486. package/dvm/legend/ui/legend-elements/legend-elements.component.d.ts.map +0 -1
  487. package/dvm/loader/index.d.ts +0 -2
  488. package/dvm/loader/index.d.ts.map +0 -1
  489. package/dvm/loader/loader.component.d.ts +0 -6
  490. package/dvm/loader/loader.component.d.ts.map +0 -1
  491. package/dvm/loader/loader.service.d.ts +0 -7
  492. package/dvm/loader/loader.service.d.ts.map +0 -1
  493. package/dvm/loader/public-api.d.ts.map +0 -1
  494. package/dvm/map-loader/index.d.ts +0 -2
  495. package/dvm/map-loader/index.d.ts.map +0 -1
  496. package/dvm/map-loader/map-loader.component.d.ts.map +0 -1
  497. package/dvm/map-loader/public-api.d.ts +0 -2
  498. package/dvm/map-loader/public-api.d.ts.map +0 -1
  499. package/dvm/neighbors/index.d.ts +0 -2
  500. package/dvm/neighbors/index.d.ts.map +0 -1
  501. package/dvm/neighbors/neighbors.component.d.ts +0 -41
  502. package/dvm/neighbors/neighbors.component.d.ts.map +0 -1
  503. package/dvm/neighbors/public-api.d.ts +0 -3
  504. package/dvm/neighbors/public-api.d.ts.map +0 -1
  505. package/dvm/neighbors/types.d.ts.map +0 -1
  506. package/dvm/popover/base-popover.component.d.ts +0 -28
  507. package/dvm/popover/base-popover.component.d.ts.map +0 -1
  508. package/dvm/popover/index.d.ts +0 -2
  509. package/dvm/popover/index.d.ts.map +0 -1
  510. package/dvm/popover/popover.component.d.ts +0 -69
  511. package/dvm/popover/popover.component.d.ts.map +0 -1
  512. package/dvm/popover/popover.config.d.ts +0 -25
  513. package/dvm/popover/popover.config.d.ts.map +0 -1
  514. package/dvm/popover/popover.service.d.ts +0 -140
  515. package/dvm/popover/popover.service.d.ts.map +0 -1
  516. package/dvm/popover/public-api.d.ts.map +0 -1
  517. package/dvm/popover/seat-popover/seat-popover.component.d.ts +0 -21
  518. package/dvm/popover/seat-popover/seat-popover.component.d.ts.map +0 -1
  519. package/dvm/popover/section-popover/section-popover.component.d.ts +0 -32
  520. package/dvm/popover/section-popover/section-popover.component.d.ts.map +0 -1
  521. package/dvm/popover/services/dvm-popover-positioner.service.d.ts +0 -30
  522. package/dvm/popover/services/dvm-popover-positioner.service.d.ts.map +0 -1
  523. package/dvm/popover/services/popover-manager.service.d.ts +0 -29
  524. package/dvm/popover/services/popover-manager.service.d.ts.map +0 -1
  525. package/dvm/popover/transformers/base-popover-data-transformer.d.ts +0 -29
  526. package/dvm/popover/transformers/base-popover-data-transformer.d.ts.map +0 -1
  527. package/dvm/popover/types.d.ts +0 -79
  528. package/dvm/popover/types.d.ts.map +0 -1
  529. package/dvm/public-api.d.ts +0 -10
  530. package/dvm/public-api.d.ts.map +0 -1
  531. package/dvm/stepper/index.d.ts +0 -2
  532. package/dvm/stepper/index.d.ts.map +0 -1
  533. package/dvm/stepper/public-api.d.ts +0 -2
  534. package/dvm/stepper/public-api.d.ts.map +0 -1
  535. package/dvm/stepper/stepper.component.d.ts +0 -27
  536. package/dvm/stepper/stepper.component.d.ts.map +0 -1
  537. package/dvm/stepper/types.d.ts.map +0 -1
  538. package/dvm/ticket-info-item/index.d.ts +0 -2
  539. package/dvm/ticket-info-item/index.d.ts.map +0 -1
  540. package/dvm/ticket-info-item/public-api.d.ts.map +0 -1
  541. package/dvm/ticket-info-item/ticket-info-item.component.d.ts +0 -6
  542. package/dvm/ticket-info-item/ticket-info-item.component.d.ts.map +0 -1
  543. package/dvm/ticket-info-item/ticket-info-item.service.d.ts +0 -7
  544. package/dvm/ticket-info-item/ticket-info-item.service.d.ts.map +0 -1
  545. package/fesm2022/3ddv-software-division-components.mjs +0 -6568
  546. package/fesm2022/3ddv-software-division-components.mjs.map +0 -1
  547. package/generic/add-digital-wallet/add-digital-wallet.component.d.ts +0 -21
  548. package/generic/add-digital-wallet/add-digital-wallet.component.d.ts.map +0 -1
  549. package/generic/add-digital-wallet/index.d.ts +0 -2
  550. package/generic/add-digital-wallet/index.d.ts.map +0 -1
  551. package/generic/add-digital-wallet/public-api.d.ts.map +0 -1
  552. package/generic/braintree/braintree.component.d.ts +0 -33
  553. package/generic/braintree/braintree.component.d.ts.map +0 -1
  554. package/generic/braintree/index.d.ts +0 -2
  555. package/generic/braintree/index.d.ts.map +0 -1
  556. package/generic/braintree/public-api.d.ts.map +0 -1
  557. package/generic/braintree/types.d.ts +0 -27
  558. package/generic/braintree/types.d.ts.map +0 -1
  559. package/generic/button/button.component.d.ts +0 -152
  560. package/generic/button/button.component.d.ts.map +0 -1
  561. package/generic/button/index.d.ts +0 -2
  562. package/generic/button/index.d.ts.map +0 -1
  563. package/generic/button/public-api.d.ts +0 -2
  564. package/generic/button/public-api.d.ts.map +0 -1
  565. package/generic/button/ui/ui-button-helm/src/index.d.ts +0 -10
  566. package/generic/button/ui/ui-button-helm/src/index.d.ts.map +0 -1
  567. package/generic/button/ui/ui-button-helm/src/lib/hlm-button.d.ts +0 -20
  568. package/generic/button/ui/ui-button-helm/src/lib/hlm-button.d.ts.map +0 -1
  569. package/generic/button/ui/ui-button-helm/src/lib/hlm-button.token.d.ts +0 -9
  570. package/generic/button/ui/ui-button-helm/src/lib/hlm-button.token.d.ts.map +0 -1
  571. package/generic/carousel/carousel-item.component.d.ts +0 -8
  572. package/generic/carousel/carousel-item.component.d.ts.map +0 -1
  573. package/generic/carousel/carousel.component.d.ts +0 -20
  574. package/generic/carousel/carousel.component.d.ts.map +0 -1
  575. package/generic/carousel/index.d.ts +0 -2
  576. package/generic/carousel/index.d.ts.map +0 -1
  577. package/generic/carousel/public-api.d.ts.map +0 -1
  578. package/generic/carousel/ui/ui-carousel-helm/src/index.d.ts +0 -26
  579. package/generic/carousel/ui/ui-carousel-helm/src/index.d.ts.map +0 -1
  580. package/generic/carousel/ui/ui-carousel-helm/src/lib/hlm-carousel-content.d.ts +0 -10
  581. package/generic/carousel/ui/ui-carousel-helm/src/lib/hlm-carousel-content.d.ts.map +0 -1
  582. package/generic/carousel/ui/ui-carousel-helm/src/lib/hlm-carousel-item.d.ts +0 -10
  583. package/generic/carousel/ui/ui-carousel-helm/src/lib/hlm-carousel-item.d.ts.map +0 -1
  584. package/generic/carousel/ui/ui-carousel-helm/src/lib/hlm-carousel-next.d.ts +0 -15
  585. package/generic/carousel/ui/ui-carousel-helm/src/lib/hlm-carousel-next.d.ts.map +0 -1
  586. package/generic/carousel/ui/ui-carousel-helm/src/lib/hlm-carousel-previous.d.ts +0 -15
  587. package/generic/carousel/ui/ui-carousel-helm/src/lib/hlm-carousel-previous.d.ts.map +0 -1
  588. package/generic/carousel/ui/ui-carousel-helm/src/lib/hlm-carousel-slide-display.d.ts +0 -16
  589. package/generic/carousel/ui/ui-carousel-helm/src/lib/hlm-carousel-slide-display.d.ts.map +0 -1
  590. package/generic/carousel/ui/ui-carousel-helm/src/lib/hlm-carousel.d.ts +0 -28
  591. package/generic/carousel/ui/ui-carousel-helm/src/lib/hlm-carousel.d.ts.map +0 -1
  592. package/generic/dialog/dialog.component.d.ts +0 -11
  593. package/generic/dialog/dialog.component.d.ts.map +0 -1
  594. package/generic/dialog/index.d.ts +0 -2
  595. package/generic/dialog/index.d.ts.map +0 -1
  596. package/generic/dialog/libs/ui-dialog-helm/src/index.d.ts.map +0 -1
  597. package/generic/dialog/libs/ui-dialog-helm/src/lib/hlm-dialog-close.d.ts +0 -9
  598. package/generic/dialog/libs/ui-dialog-helm/src/lib/hlm-dialog-close.d.ts.map +0 -1
  599. package/generic/dialog/libs/ui-dialog-helm/src/lib/hlm-dialog-content.d.ts +0 -15
  600. package/generic/dialog/libs/ui-dialog-helm/src/lib/hlm-dialog-content.d.ts.map +0 -1
  601. package/generic/dialog/libs/ui-dialog-helm/src/lib/hlm-dialog-description.d.ts +0 -10
  602. package/generic/dialog/libs/ui-dialog-helm/src/lib/hlm-dialog-description.d.ts.map +0 -1
  603. package/generic/dialog/libs/ui-dialog-helm/src/lib/hlm-dialog-footer.d.ts +0 -9
  604. package/generic/dialog/libs/ui-dialog-helm/src/lib/hlm-dialog-footer.d.ts.map +0 -1
  605. package/generic/dialog/libs/ui-dialog-helm/src/lib/hlm-dialog-header.d.ts +0 -9
  606. package/generic/dialog/libs/ui-dialog-helm/src/lib/hlm-dialog-header.d.ts.map +0 -1
  607. package/generic/dialog/libs/ui-dialog-helm/src/lib/hlm-dialog-overlay.d.ts +0 -12
  608. package/generic/dialog/libs/ui-dialog-helm/src/lib/hlm-dialog-overlay.d.ts.map +0 -1
  609. package/generic/dialog/libs/ui-dialog-helm/src/lib/hlm-dialog-title.d.ts +0 -10
  610. package/generic/dialog/libs/ui-dialog-helm/src/lib/hlm-dialog-title.d.ts.map +0 -1
  611. package/generic/dialog/libs/ui-dialog-helm/src/lib/hlm-dialog.d.ts +0 -7
  612. package/generic/dialog/libs/ui-dialog-helm/src/lib/hlm-dialog.d.ts.map +0 -1
  613. package/generic/dialog/libs/ui-dialog-helm/src/lib/hlm-dialog.service.d.ts +0 -21
  614. package/generic/dialog/libs/ui-dialog-helm/src/lib/hlm-dialog.service.d.ts.map +0 -1
  615. package/generic/dialog/public-api.d.ts.map +0 -1
  616. package/generic/drawer/drawer.component.d.ts +0 -6
  617. package/generic/drawer/drawer.component.d.ts.map +0 -1
  618. package/generic/drawer/drawer.service.d.ts +0 -7
  619. package/generic/drawer/drawer.service.d.ts.map +0 -1
  620. package/generic/drawer/index.d.ts +0 -2
  621. package/generic/drawer/index.d.ts.map +0 -1
  622. package/generic/drawer/public-api.d.ts.map +0 -1
  623. package/generic/icon/icon.component.d.ts +0 -21
  624. package/generic/icon/icon.component.d.ts.map +0 -1
  625. package/generic/icon/index.d.ts +0 -2
  626. package/generic/icon/index.d.ts.map +0 -1
  627. package/generic/icon/lib/ui-icon-helm/src/index.d.ts +0 -10
  628. package/generic/icon/lib/ui-icon-helm/src/index.d.ts.map +0 -1
  629. package/generic/icon/lib/ui-icon-helm/src/lib/hlm-icon.d.ts +0 -10
  630. package/generic/icon/lib/ui-icon-helm/src/lib/hlm-icon.d.ts.map +0 -1
  631. package/generic/icon/lib/ui-icon-helm/src/lib/hlm-icon.token.d.ts +0 -8
  632. package/generic/icon/lib/ui-icon-helm/src/lib/hlm-icon.token.d.ts.map +0 -1
  633. package/generic/icon/public-api.d.ts +0 -2
  634. package/generic/icon/public-api.d.ts.map +0 -1
  635. package/generic/index.d.ts +0 -2
  636. package/generic/index.d.ts.map +0 -1
  637. package/generic/public-api.d.ts +0 -10
  638. package/generic/public-api.d.ts.map +0 -1
  639. package/generic/rich-text-editor/components/editor-toolbar/editor-toolbar.component.d.ts +0 -88
  640. package/generic/rich-text-editor/components/editor-toolbar/editor-toolbar.component.d.ts.map +0 -1
  641. package/generic/rich-text-editor/components/link-modal/link-modal.component.d.ts +0 -43
  642. package/generic/rich-text-editor/components/link-modal/link-modal.component.d.ts.map +0 -1
  643. package/generic/rich-text-editor/index.d.ts +0 -2
  644. package/generic/rich-text-editor/index.d.ts.map +0 -1
  645. package/generic/rich-text-editor/models/editor-config.model.d.ts +0 -46
  646. package/generic/rich-text-editor/models/editor-config.model.d.ts.map +0 -1
  647. package/generic/rich-text-editor/models/index.d.ts +0 -3
  648. package/generic/rich-text-editor/models/index.d.ts.map +0 -1
  649. package/generic/rich-text-editor/models/toolbar-config.model.d.ts +0 -63
  650. package/generic/rich-text-editor/models/toolbar-config.model.d.ts.map +0 -1
  651. package/generic/rich-text-editor/public-api.d.ts +0 -5
  652. package/generic/rich-text-editor/public-api.d.ts.map +0 -1
  653. package/generic/rich-text-editor/rich-text-editor.component.d.ts +0 -113
  654. package/generic/rich-text-editor/rich-text-editor.component.d.ts.map +0 -1
  655. package/generic/select/index.d.ts +0 -2
  656. package/generic/select/index.d.ts.map +0 -1
  657. package/generic/select/lib/hlm-select-content.d.ts +0 -13
  658. package/generic/select/lib/hlm-select-content.d.ts.map +0 -1
  659. package/generic/select/lib/hlm-select-group.d.ts +0 -10
  660. package/generic/select/lib/hlm-select-group.d.ts.map +0 -1
  661. package/generic/select/lib/hlm-select-label.d.ts +0 -12
  662. package/generic/select/lib/hlm-select-label.d.ts.map +0 -1
  663. package/generic/select/lib/hlm-select-option.d.ts +0 -12
  664. package/generic/select/lib/hlm-select-option.d.ts.map +0 -1
  665. package/generic/select/lib/hlm-select-scroll-down.d.ts +0 -9
  666. package/generic/select/lib/hlm-select-scroll-down.d.ts.map +0 -1
  667. package/generic/select/lib/hlm-select-scroll-up.d.ts +0 -9
  668. package/generic/select/lib/hlm-select-scroll-up.d.ts.map +0 -1
  669. package/generic/select/lib/hlm-select-trigger.d.ts +0 -17
  670. package/generic/select/lib/hlm-select-trigger.d.ts.map +0 -1
  671. package/generic/select/lib/hlm-select-value.d.ts +0 -9
  672. package/generic/select/lib/hlm-select-value.d.ts.map +0 -1
  673. package/generic/select/lib/hlm-select.d.ts +0 -9
  674. package/generic/select/lib/hlm-select.d.ts.map +0 -1
  675. package/generic/select/lib/index.d.ts +0 -35
  676. package/generic/select/lib/index.d.ts.map +0 -1
  677. package/generic/select/public-api.d.ts.map +0 -1
  678. package/generic/select/select.component.d.ts +0 -14
  679. package/generic/select/select.component.d.ts.map +0 -1
  680. package/generic/select/types.d.ts +0 -5
  681. package/generic/select/types.d.ts.map +0 -1
  682. package/index.d.ts +0 -6
  683. package/public-api.d.ts +0 -8
  684. package/public-api.d.ts.map +0 -1
  685. package/shared/apply-theme-variables/apply-theme-variables.d.ts +0 -4
  686. package/shared/apply-theme-variables/apply-theme-variables.d.ts.map +0 -1
  687. package/shared/apply-theme-variables/index.d.ts.map +0 -1
  688. package/shared/lib-provider/config-token.d.ts +0 -4
  689. package/shared/lib-provider/config-token.d.ts.map +0 -1
  690. package/shared/lib-provider/index.d.ts +0 -2
  691. package/shared/lib-provider/index.d.ts.map +0 -1
  692. package/shared/lib-provider/provide-sdc.d.ts +0 -10
  693. package/shared/lib-provider/provide-sdc.d.ts.map +0 -1
  694. package/shared/lib-provider/public-api.d.ts.map +0 -1
  695. package/shared/screen-observer/index.d.ts.map +0 -1
  696. package/shared/screen-observer/provide-screen-observer.d.ts +0 -5
  697. package/shared/screen-observer/provide-screen-observer.d.ts.map +0 -1
  698. package/shared/screen-observer/screen-observer.d.ts +0 -15
  699. package/shared/screen-observer/screen-observer.d.ts.map +0 -1
  700. package/shared/types.d.ts +0 -19
  701. package/shared/types.d.ts.map +0 -1
  702. package/tailwind.config.js +0 -19
  703. package/types/sizes.type.d.ts +0 -3
  704. package/types/sizes.type.d.ts.map +0 -1
@@ -0,0 +1,295 @@
1
+ import * as i0 from '@angular/core';
2
+ import { input, computed, Directive, booleanAttribute, inject, ChangeDetectionStrategy, Component, contentChild, NgModule, output } from '@angular/core';
3
+ import { hlm, injectExposesStateProvider, injectExposedSideProvider } from '@spartan-ng/brain/core';
4
+ import * as i1 from '@spartan-ng/brain/select';
5
+ import { BrnSelectGroup, BrnSelectLabel, BrnSelectOption, BrnSelect, BrnSelectTrigger, BrnSelectImports } from '@spartan-ng/brain/select';
6
+ import { HlmIcon } from '@3ddv/software-division-components/generic/icon';
7
+ import { NgIcon, provideIcons } from '@ng-icons/core';
8
+ import { lucideCheck, lucideChevronDown, lucideChevronUp } from '@ng-icons/lucide';
9
+ import { cva } from 'class-variance-authority';
10
+ import * as i1$1 from '@angular/common';
11
+ import { CommonModule } from '@angular/common';
12
+
13
+ class HlmSelect {
14
+ userClass = input('', { ...(ngDevMode ? { debugName: "userClass" } : {}), alias: 'class' });
15
+ _computedClass = computed(() => hlm(this.userClass()), ...(ngDevMode ? [{ debugName: "_computedClass" }] : []));
16
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.4", ngImport: i0, type: HlmSelect, deps: [], target: i0.ɵɵFactoryTarget.Directive });
17
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.1.4", type: HlmSelect, isStandalone: true, selector: "hlm-select, brn-select [hlm]", inputs: { userClass: { classPropertyName: "userClass", publicName: "class", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "_computedClass()" } }, ngImport: i0 });
18
+ }
19
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.4", ngImport: i0, type: HlmSelect, decorators: [{
20
+ type: Directive,
21
+ args: [{
22
+ selector: 'hlm-select, brn-select [hlm]',
23
+ host: {
24
+ '[class]': '_computedClass()',
25
+ },
26
+ }]
27
+ }], propDecorators: { userClass: [{ type: i0.Input, args: [{ isSignal: true, alias: "class", required: false }] }] } });
28
+
29
+ class HlmSelectContent {
30
+ userClass = input('', { ...(ngDevMode ? { debugName: "userClass" } : {}), alias: 'class' });
31
+ stickyLabels = input(false, { ...(ngDevMode ? { debugName: "stickyLabels" } : {}), transform: booleanAttribute });
32
+ _stateProvider = injectExposesStateProvider({ optional: true });
33
+ _sideProvider = injectExposedSideProvider({ optional: true });
34
+ _computedClass = computed(() => hlm('w-full relative z-50 min-w-[8rem] overflow-hidden rounded-md border border-border bg-popover text-popover-foreground shadow-md p-1 data-[side=bottom]:top-[2px] data-[side=top]:bottom-[2px] data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2', this.userClass()), ...(ngDevMode ? [{ debugName: "_computedClass" }] : []));
35
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.4", ngImport: i0, type: HlmSelectContent, deps: [], target: i0.ɵɵFactoryTarget.Directive });
36
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.1.4", type: HlmSelectContent, isStandalone: true, selector: "[hlmSelectContent], hlm-select-content", inputs: { userClass: { classPropertyName: "userClass", publicName: "class", isSignal: true, isRequired: false, transformFunction: null }, stickyLabels: { classPropertyName: "stickyLabels", publicName: "stickyLabels", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "_computedClass()", "attr.data-state": "_stateProvider?.state() ?? \"open\"", "attr.data-side": "_sideProvider?.side() ?? \"bottom\"" } }, ngImport: i0 });
37
+ }
38
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.4", ngImport: i0, type: HlmSelectContent, decorators: [{
39
+ type: Directive,
40
+ args: [{
41
+ selector: '[hlmSelectContent], hlm-select-content',
42
+ host: {
43
+ '[class]': '_computedClass()',
44
+ '[attr.data-state]': '_stateProvider?.state() ?? "open"',
45
+ '[attr.data-side]': '_sideProvider?.side() ?? "bottom"',
46
+ },
47
+ }]
48
+ }], propDecorators: { userClass: [{ type: i0.Input, args: [{ isSignal: true, alias: "class", required: false }] }], stickyLabels: [{ type: i0.Input, args: [{ isSignal: true, alias: "stickyLabels", required: false }] }] } });
49
+
50
+ class HlmSelectGroup {
51
+ userClass = input('', { ...(ngDevMode ? { debugName: "userClass" } : {}), alias: 'class' });
52
+ _computedClass = computed(() => hlm(this.userClass()), ...(ngDevMode ? [{ debugName: "_computedClass" }] : []));
53
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.4", ngImport: i0, type: HlmSelectGroup, deps: [], target: i0.ɵɵFactoryTarget.Directive });
54
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.1.4", type: HlmSelectGroup, isStandalone: true, selector: "[hlmSelectGroup], hlm-select-group", inputs: { userClass: { classPropertyName: "userClass", publicName: "class", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "_computedClass()" } }, hostDirectives: [{ directive: i1.BrnSelectGroup }], ngImport: i0 });
55
+ }
56
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.4", ngImport: i0, type: HlmSelectGroup, decorators: [{
57
+ type: Directive,
58
+ args: [{
59
+ selector: '[hlmSelectGroup], hlm-select-group',
60
+ hostDirectives: [BrnSelectGroup],
61
+ host: {
62
+ '[class]': '_computedClass()',
63
+ },
64
+ }]
65
+ }], propDecorators: { userClass: [{ type: i0.Input, args: [{ isSignal: true, alias: "class", required: false }] }] } });
66
+
67
+ class HlmSelectLabel {
68
+ _selectContent = inject(HlmSelectContent);
69
+ _stickyLabels = computed(() => this._selectContent.stickyLabels(), ...(ngDevMode ? [{ debugName: "_stickyLabels" }] : []));
70
+ userClass = input('', { ...(ngDevMode ? { debugName: "userClass" } : {}), alias: 'class' });
71
+ _computedClass = computed(() => hlm('text-muted-foreground px-2 py-1.5 text-xs', this._stickyLabels() ? 'sticky top-0 bg-popover block z-[2]' : '', this.userClass()), ...(ngDevMode ? [{ debugName: "_computedClass" }] : []));
72
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.4", ngImport: i0, type: HlmSelectLabel, deps: [], target: i0.ɵɵFactoryTarget.Directive });
73
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.1.4", type: HlmSelectLabel, isStandalone: true, selector: "[hlmSelectLabel], hlm-select-label", inputs: { userClass: { classPropertyName: "userClass", publicName: "class", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "_computedClass()" } }, hostDirectives: [{ directive: i1.BrnSelectLabel }], ngImport: i0 });
74
+ }
75
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.4", ngImport: i0, type: HlmSelectLabel, decorators: [{
76
+ type: Directive,
77
+ args: [{
78
+ selector: '[hlmSelectLabel], hlm-select-label',
79
+ hostDirectives: [BrnSelectLabel],
80
+ host: {
81
+ '[class]': '_computedClass()',
82
+ },
83
+ }]
84
+ }], propDecorators: { userClass: [{ type: i0.Input, args: [{ isSignal: true, alias: "class", required: false }] }] } });
85
+
86
+ class HlmSelectOption {
87
+ _brnSelectOption = inject(BrnSelectOption, { host: true });
88
+ userClass = input('', { ...(ngDevMode ? { debugName: "userClass" } : {}), alias: 'class' });
89
+ _computedClass = computed(() => hlm('overflow-hidden text-ellipsis whitespace-nowrap hover:bg-accent data-[active]:bg-accent data-[active]:text-white [&>ng-icon]:text-white relative flex w-full cursor-default items-center gap-2 rounded-sm py-1.5 pr-8 pl-2 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&>ng-icon]:pointer-events-none [&>ng-icon]:shrink-0 [&>ng-icon]:size-4 *:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2', this.userClass()), ...(ngDevMode ? [{ debugName: "_computedClass" }] : []));
90
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.4", ngImport: i0, type: HlmSelectOption, deps: [], target: i0.ɵɵFactoryTarget.Component });
91
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.1.4", type: HlmSelectOption, isStandalone: true, selector: "hlm-option", inputs: { userClass: { classPropertyName: "userClass", publicName: "class", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "_computedClass()" } }, providers: [provideIcons({ lucideCheck })], hostDirectives: [{ directive: i1.BrnSelectOption, inputs: ["disabled", "disabled", "value", "value"] }], ngImport: i0, template: `
92
+ <span class="absolute right-2 flex size-3.5 items-center justify-center">
93
+ @if (this._brnSelectOption.selected()) {
94
+ <ng-icon aria-hidden="true" hlm name="lucideCheck" size="sm" />
95
+ }
96
+ </span>
97
+
98
+ <ng-content />
99
+ `, isInline: true, dependencies: [{ kind: "component", type: NgIcon, selector: "ng-icon", inputs: ["name", "svg", "size", "strokeWidth", "color"] }, { kind: "directive", type: HlmIcon, selector: "ng-icon[hlm]", inputs: ["size"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
100
+ }
101
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.4", ngImport: i0, type: HlmSelectOption, decorators: [{
102
+ type: Component,
103
+ args: [{
104
+ selector: 'hlm-option',
105
+ changeDetection: ChangeDetectionStrategy.OnPush,
106
+ hostDirectives: [{ directive: BrnSelectOption, inputs: ['disabled', 'value'] }],
107
+ providers: [provideIcons({ lucideCheck })],
108
+ host: {
109
+ '[class]': '_computedClass()',
110
+ },
111
+ template: `
112
+ <span class="absolute right-2 flex size-3.5 items-center justify-center">
113
+ @if (this._brnSelectOption.selected()) {
114
+ <ng-icon aria-hidden="true" hlm name="lucideCheck" size="sm" />
115
+ }
116
+ </span>
117
+
118
+ <ng-content />
119
+ `,
120
+ imports: [NgIcon, HlmIcon],
121
+ }]
122
+ }], propDecorators: { userClass: [{ type: i0.Input, args: [{ isSignal: true, alias: "class", required: false }] }] } });
123
+
124
+ class HlmSelectScrollDown {
125
+ userClass = input('', { ...(ngDevMode ? { debugName: "userClass" } : {}), alias: 'class' });
126
+ _computedClass = computed(() => hlm('flex cursor-default items-center justify-center py-1', this.userClass()), ...(ngDevMode ? [{ debugName: "_computedClass" }] : []));
127
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.4", ngImport: i0, type: HlmSelectScrollDown, deps: [], target: i0.ɵɵFactoryTarget.Component });
128
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.1.4", type: HlmSelectScrollDown, isStandalone: true, selector: "hlm-select-scroll-down", inputs: { userClass: { classPropertyName: "userClass", publicName: "class", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "_computedClass()" } }, providers: [provideIcons({ lucideChevronDown })], ngImport: i0, template: ` <ng-icon class="ml-2" hlm name="lucideChevronDown" size="sm" /> `, isInline: true, dependencies: [{ kind: "component", type: NgIcon, selector: "ng-icon", inputs: ["name", "svg", "size", "strokeWidth", "color"] }, { kind: "directive", type: HlmIcon, selector: "ng-icon[hlm]", inputs: ["size"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
129
+ }
130
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.4", ngImport: i0, type: HlmSelectScrollDown, decorators: [{
131
+ type: Component,
132
+ args: [{
133
+ selector: 'hlm-select-scroll-down',
134
+ imports: [NgIcon, HlmIcon],
135
+ providers: [provideIcons({ lucideChevronDown })],
136
+ host: {
137
+ '[class]': '_computedClass()',
138
+ },
139
+ template: ` <ng-icon class="ml-2" hlm name="lucideChevronDown" size="sm" /> `,
140
+ changeDetection: ChangeDetectionStrategy.OnPush,
141
+ }]
142
+ }], propDecorators: { userClass: [{ type: i0.Input, args: [{ isSignal: true, alias: "class", required: false }] }] } });
143
+
144
+ class HlmSelectScrollUp {
145
+ userClass = input('', { ...(ngDevMode ? { debugName: "userClass" } : {}), alias: 'class' });
146
+ _computedClass = computed(() => hlm('flex cursor-default items-center justify-center py-1', this.userClass()), ...(ngDevMode ? [{ debugName: "_computedClass" }] : []));
147
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.4", ngImport: i0, type: HlmSelectScrollUp, deps: [], target: i0.ɵɵFactoryTarget.Component });
148
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.1.4", type: HlmSelectScrollUp, isStandalone: true, selector: "hlm-select-scroll-up", inputs: { userClass: { classPropertyName: "userClass", publicName: "class", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "_computedClass()" } }, providers: [provideIcons({ lucideChevronUp })], ngImport: i0, template: ` <ng-icon class="ml-2" hlm name="lucideChevronUp" size="sm" /> `, isInline: true, dependencies: [{ kind: "component", type: NgIcon, selector: "ng-icon", inputs: ["name", "svg", "size", "strokeWidth", "color"] }, { kind: "directive", type: HlmIcon, selector: "ng-icon[hlm]", inputs: ["size"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
149
+ }
150
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.4", ngImport: i0, type: HlmSelectScrollUp, decorators: [{
151
+ type: Component,
152
+ args: [{
153
+ selector: 'hlm-select-scroll-up',
154
+ imports: [NgIcon, HlmIcon],
155
+ providers: [provideIcons({ lucideChevronUp })],
156
+ host: {
157
+ '[class]': '_computedClass()',
158
+ },
159
+ template: ` <ng-icon class="ml-2" hlm name="lucideChevronUp" size="sm" /> `,
160
+ changeDetection: ChangeDetectionStrategy.OnPush,
161
+ }]
162
+ }], propDecorators: { userClass: [{ type: i0.Input, args: [{ isSignal: true, alias: "class", required: false }] }] } });
163
+
164
+ const selectTriggerVariants = cva(`border-input [&>ng-icon]:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 dark:bg-input/30 dark:hover:bg-input/50 flex w-full items-center justify-between gap-2 rounded-3xl border bg-transparent px-3 py-1.5 text-sm whitespace-nowrap shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 data-[size=default]:h-9 data-[size=sm]:h-6 [&>ng-icon]:pointer-events-none [&>ng-icon]:shrink-0 [&>ng-icon]:size-4`, {
165
+ variants: {
166
+ error: {
167
+ auto: '[&.ng-invalid.ng-touched]:text-destructive [&.ng-invalid.ng-touched]:border-destructive [&.ng-invalid.ng-touched]:focus-visible:ring-destructive/20 dark:[&.ng-invalid.ng-touched]:focus-visible:ring-destructive/40',
168
+ true: 'text-destructive border-destructive focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40',
169
+ },
170
+ },
171
+ defaultVariants: {
172
+ error: 'auto',
173
+ },
174
+ });
175
+ class HlmSelectTrigger {
176
+ _icon = contentChild(HlmIcon, ...(ngDevMode ? [{ debugName: "_icon" }] : []));
177
+ _brnSelect = inject(BrnSelect, { optional: true });
178
+ userClass = input('', { ...(ngDevMode ? { debugName: "userClass" } : {}), alias: 'class' });
179
+ size = input('default', ...(ngDevMode ? [{ debugName: "size" }] : []));
180
+ _computedClass = computed(() => hlm(selectTriggerVariants({ error: this._brnSelect?.errorState() }), this.userClass()), ...(ngDevMode ? [{ debugName: "_computedClass" }] : []));
181
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.4", ngImport: i0, type: HlmSelectTrigger, deps: [], target: i0.ɵɵFactoryTarget.Component });
182
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.1.4", type: HlmSelectTrigger, isStandalone: true, selector: "hlm-select-trigger", inputs: { userClass: { classPropertyName: "userClass", publicName: "class", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null } }, providers: [provideIcons({ lucideChevronDown })], queries: [{ propertyName: "_icon", first: true, predicate: HlmIcon, descendants: true, isSignal: true }], ngImport: i0, template: `
183
+ <button #button brnSelectTrigger hlmInput type="button" [attr.data-size]="size()" [class]="_computedClass()">
184
+ <ng-content />
185
+ @if (_icon()) {
186
+ <ng-content select="ng-icon" />
187
+ } @else {
188
+ <ng-icon class="ml-2 flex-none" hlm name="lucideChevronDown" size="sm" />
189
+ }
190
+ </button>
191
+ `, isInline: true, dependencies: [{ kind: "directive", type: BrnSelectTrigger, selector: "[brnSelectTrigger]" }, { kind: "component", type: NgIcon, selector: "ng-icon", inputs: ["name", "svg", "size", "strokeWidth", "color"] }, { kind: "directive", type: HlmIcon, selector: "ng-icon[hlm]", inputs: ["size"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
192
+ }
193
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.4", ngImport: i0, type: HlmSelectTrigger, decorators: [{
194
+ type: Component,
195
+ args: [{
196
+ selector: 'hlm-select-trigger',
197
+ imports: [BrnSelectTrigger, NgIcon, HlmIcon],
198
+ providers: [provideIcons({ lucideChevronDown })],
199
+ template: `
200
+ <button #button brnSelectTrigger hlmInput type="button" [attr.data-size]="size()" [class]="_computedClass()">
201
+ <ng-content />
202
+ @if (_icon()) {
203
+ <ng-content select="ng-icon" />
204
+ } @else {
205
+ <ng-icon class="ml-2 flex-none" hlm name="lucideChevronDown" size="sm" />
206
+ }
207
+ </button>
208
+ `,
209
+ changeDetection: ChangeDetectionStrategy.OnPush,
210
+ }]
211
+ }], propDecorators: { _icon: [{ type: i0.ContentChild, args: [i0.forwardRef(() => HlmIcon), { isSignal: true }] }], userClass: [{ type: i0.Input, args: [{ isSignal: true, alias: "class", required: false }] }], size: [{ type: i0.Input, args: [{ isSignal: true, alias: "size", required: false }] }] } });
212
+
213
+ class HlmSelectValue {
214
+ userClass = input('', { ...(ngDevMode ? { debugName: "userClass" } : {}), alias: 'class' });
215
+ _computedClass = computed(() => hlm('line-clamp-1 flex items-center gap-2 overflow-hidden text-ellipsis', this.userClass()), ...(ngDevMode ? [{ debugName: "_computedClass" }] : []));
216
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.4", ngImport: i0, type: HlmSelectValue, deps: [], target: i0.ɵɵFactoryTarget.Directive });
217
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.1.4", type: HlmSelectValue, isStandalone: true, selector: "hlm-select-value,[hlmSelectValue], brn-select-value[hlm]", inputs: { userClass: { classPropertyName: "userClass", publicName: "class", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "_computedClass()" } }, ngImport: i0 });
218
+ }
219
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.4", ngImport: i0, type: HlmSelectValue, decorators: [{
220
+ type: Directive,
221
+ args: [{
222
+ selector: 'hlm-select-value,[hlmSelectValue], brn-select-value[hlm]',
223
+ host: {
224
+ '[class]': '_computedClass()',
225
+ },
226
+ }]
227
+ }], propDecorators: { userClass: [{ type: i0.Input, args: [{ isSignal: true, alias: "class", required: false }] }] } });
228
+
229
+ const HlmSelectImports = [
230
+ HlmSelectContent,
231
+ HlmSelectTrigger,
232
+ HlmSelectOption,
233
+ HlmSelectValue,
234
+ HlmSelect,
235
+ HlmSelectScrollUp,
236
+ HlmSelectScrollDown,
237
+ HlmSelectLabel,
238
+ HlmSelectGroup,
239
+ ];
240
+ class HlmSelectModule {
241
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.4", ngImport: i0, type: HlmSelectModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
242
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.1.4", ngImport: i0, type: HlmSelectModule, imports: [HlmSelectContent,
243
+ HlmSelectTrigger,
244
+ HlmSelectOption,
245
+ HlmSelectValue,
246
+ HlmSelect,
247
+ HlmSelectScrollUp,
248
+ HlmSelectScrollDown,
249
+ HlmSelectLabel,
250
+ HlmSelectGroup], exports: [HlmSelectContent,
251
+ HlmSelectTrigger,
252
+ HlmSelectOption,
253
+ HlmSelectValue,
254
+ HlmSelect,
255
+ HlmSelectScrollUp,
256
+ HlmSelectScrollDown,
257
+ HlmSelectLabel,
258
+ HlmSelectGroup] });
259
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.1.4", ngImport: i0, type: HlmSelectModule, imports: [HlmSelectTrigger,
260
+ HlmSelectOption,
261
+ HlmSelectScrollUp,
262
+ HlmSelectScrollDown] });
263
+ }
264
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.4", ngImport: i0, type: HlmSelectModule, decorators: [{
265
+ type: NgModule,
266
+ args: [{
267
+ imports: [...HlmSelectImports],
268
+ exports: [...HlmSelectImports],
269
+ }]
270
+ }] });
271
+
272
+ class SelectComponent {
273
+ placeholder = input('', ...(ngDevMode ? [{ debugName: "placeholder" }] : []));
274
+ variant = input('light', ...(ngDevMode ? [{ debugName: "variant" }] : []));
275
+ options = input.required(...(ngDevMode ? [{ debugName: "options" }] : []));
276
+ fullWidth = input(false, ...(ngDevMode ? [{ debugName: "fullWidth" }] : []));
277
+ defaultValue = input(...(ngDevMode ? [undefined, { debugName: "defaultValue" }] : []));
278
+ valueChange = output();
279
+ get variantClasses() {
280
+ return this.variant() === 'dark' ? 'bg-black text-white' : 'bg-white text-black';
281
+ }
282
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.4", ngImport: i0, type: SelectComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
283
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.1.4", type: SelectComponent, isStandalone: true, selector: "sdc-select", inputs: { placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, variant: { classPropertyName: "variant", publicName: "variant", isSignal: true, isRequired: false, transformFunction: null }, options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: true, transformFunction: null }, fullWidth: { classPropertyName: "fullWidth", publicName: "fullWidth", isSignal: true, isRequired: false, transformFunction: null }, defaultValue: { classPropertyName: "defaultValue", publicName: "defaultValue", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { valueChange: "valueChange" }, ngImport: i0, template: "<hlm-select\n class=\"select-root\"\n [value]=\"defaultValue()?.value\"\n [placeholder]=\"placeholder()\"\n (valueChange)=\"valueChange.emit($event)\">\n <hlm-select-trigger class=\"select-trigger select-trigger--sm\" size=\"sm\" [ngClass]=\"variantClasses\">\n <hlm-select-value [ngClass]=\"variantClasses\" />\n </hlm-select-trigger>\n\n <hlm-select-trigger class=\"select-trigger select-trigger--lg\" size=\"default\" [ngClass]=\"variantClasses\">\n <hlm-select-value [ngClass]=\"variantClasses\" />\n </hlm-select-trigger>\n\n <hlm-select-content [class]=\"fullWidth() ? 'full-width' : ''\" [ngClass]=\"variantClasses\">\n @for (option of options(); track idx + option.label; let idx = $index) {\n <hlm-option [ngClass]=\"variantClasses\" [value]=\"option.value\">{{ option.label }}</hlm-option>\n }\n </hlm-select-content>\n</hlm-select>\n", styles: [".select-root{display:inline-block;width:100%}.select-trigger{display:flex;justify-content:space-between;align-items:center;border-radius:25px!important;outline:none;width:100%;overflow:hidden;color:#fff;font-size:.75rem;text-align:center;white-space:nowrap;text-overflow:ellipsis}.select-trigger:focus,.select-trigger:focus-visible{outline:none;box-shadow:0 0 0 2px var(--accent, var(--ring-accent, #0ea5e9))}.select-trigger--sm{display:flex}.select-trigger--lg{display:none}@media(min-width:1024px){.select-trigger--sm{display:none;font-weight:500;font-size:.875rem}.select-trigger--lg{display:flex;font-weight:500;font-size:.875rem}}.full-width{width:100%}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i1.BrnSelect, selector: "brn-select, hlm-select", inputs: ["id", "multiple", "placeholder", "disabled", "dir", "closeDelay", "open", "value", "compareWith"], outputs: ["openChange", "valueChange"] }, { kind: "component", type: i1.BrnSelectContent, selector: "brn-select-content, hlm-select-content:not(noHlm)" }, { kind: "component", type: i1.BrnSelectValue, selector: "brn-select-value, hlm-select-value", inputs: ["transformFn"] }, { kind: "directive", type: HlmSelectContent, selector: "[hlmSelectContent], hlm-select-content", inputs: ["class", "stickyLabels"] }, { kind: "component", type: HlmSelectTrigger, selector: "hlm-select-trigger", inputs: ["class", "size"] }, { kind: "component", type: HlmSelectOption, selector: "hlm-option", inputs: ["class"] }, { kind: "directive", type: HlmSelectValue, selector: "hlm-select-value,[hlmSelectValue], brn-select-value[hlm]", inputs: ["class"] }, { kind: "directive", type: HlmSelect, selector: "hlm-select, brn-select [hlm]", inputs: ["class"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
284
+ }
285
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.4", ngImport: i0, type: SelectComponent, decorators: [{
286
+ type: Component,
287
+ args: [{ changeDetection: ChangeDetectionStrategy.OnPush, selector: 'sdc-select', imports: [CommonModule, BrnSelectImports, HlmSelectImports], template: "<hlm-select\n class=\"select-root\"\n [value]=\"defaultValue()?.value\"\n [placeholder]=\"placeholder()\"\n (valueChange)=\"valueChange.emit($event)\">\n <hlm-select-trigger class=\"select-trigger select-trigger--sm\" size=\"sm\" [ngClass]=\"variantClasses\">\n <hlm-select-value [ngClass]=\"variantClasses\" />\n </hlm-select-trigger>\n\n <hlm-select-trigger class=\"select-trigger select-trigger--lg\" size=\"default\" [ngClass]=\"variantClasses\">\n <hlm-select-value [ngClass]=\"variantClasses\" />\n </hlm-select-trigger>\n\n <hlm-select-content [class]=\"fullWidth() ? 'full-width' : ''\" [ngClass]=\"variantClasses\">\n @for (option of options(); track idx + option.label; let idx = $index) {\n <hlm-option [ngClass]=\"variantClasses\" [value]=\"option.value\">{{ option.label }}</hlm-option>\n }\n </hlm-select-content>\n</hlm-select>\n", styles: [".select-root{display:inline-block;width:100%}.select-trigger{display:flex;justify-content:space-between;align-items:center;border-radius:25px!important;outline:none;width:100%;overflow:hidden;color:#fff;font-size:.75rem;text-align:center;white-space:nowrap;text-overflow:ellipsis}.select-trigger:focus,.select-trigger:focus-visible{outline:none;box-shadow:0 0 0 2px var(--accent, var(--ring-accent, #0ea5e9))}.select-trigger--sm{display:flex}.select-trigger--lg{display:none}@media(min-width:1024px){.select-trigger--sm{display:none;font-weight:500;font-size:.875rem}.select-trigger--lg{display:flex;font-weight:500;font-size:.875rem}}.full-width{width:100%}\n"] }]
288
+ }], propDecorators: { placeholder: [{ type: i0.Input, args: [{ isSignal: true, alias: "placeholder", required: false }] }], variant: [{ type: i0.Input, args: [{ isSignal: true, alias: "variant", required: false }] }], options: [{ type: i0.Input, args: [{ isSignal: true, alias: "options", required: true }] }], fullWidth: [{ type: i0.Input, args: [{ isSignal: true, alias: "fullWidth", required: false }] }], defaultValue: [{ type: i0.Input, args: [{ isSignal: true, alias: "defaultValue", required: false }] }], valueChange: [{ type: i0.Output, args: ["valueChange"] }] } });
289
+
290
+ /**
291
+ * Generated bundle index. Do not edit.
292
+ */
293
+
294
+ export { HlmSelect, HlmSelectContent, HlmSelectGroup, HlmSelectImports, HlmSelectLabel, HlmSelectModule, HlmSelectOption, HlmSelectScrollDown, HlmSelectScrollUp, HlmSelectTrigger, HlmSelectValue, SelectComponent, selectTriggerVariants };
295
+ //# sourceMappingURL=3ddv-software-division-components-generic-select.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"3ddv-software-division-components-generic-select.mjs","sources":["../../generic/select/lib/hlm-select.ts","../../generic/select/lib/hlm-select-content.ts","../../generic/select/lib/hlm-select-group.ts","../../generic/select/lib/hlm-select-label.ts","../../generic/select/lib/hlm-select-option.ts","../../generic/select/lib/hlm-select-scroll-down.ts","../../generic/select/lib/hlm-select-scroll-up.ts","../../generic/select/lib/hlm-select-trigger.ts","../../generic/select/lib/hlm-select-value.ts","../../generic/select/lib/index.ts","../../generic/select/select.component.ts","../../generic/select/select.component.html","../../generic/select/3ddv-software-division-components-generic-select.ts"],"sourcesContent":["import { computed, Directive, input } from '@angular/core';\nimport { hlm } from '@spartan-ng/brain/core';\nimport type { ClassValue } from 'clsx';\n\n@Directive({\n selector: 'hlm-select, brn-select [hlm]',\n\n host: {\n '[class]': '_computedClass()',\n },\n})\nexport class HlmSelect {\n public readonly userClass = input<ClassValue>('', { alias: 'class' });\n protected readonly _computedClass = computed(() => hlm(this.userClass()));\n}\n","import { BooleanInput } from '@angular/cdk/coercion';\nimport { booleanAttribute, computed, Directive, input } from '@angular/core';\nimport { hlm, injectExposedSideProvider, injectExposesStateProvider } from '@spartan-ng/brain/core';\nimport type { ClassValue } from 'clsx';\n\n@Directive({\n selector: '[hlmSelectContent], hlm-select-content',\n\n host: {\n '[class]': '_computedClass()',\n '[attr.data-state]': '_stateProvider?.state() ?? \"open\"',\n '[attr.data-side]': '_sideProvider?.side() ?? \"bottom\"',\n },\n})\nexport class HlmSelectContent {\n public readonly userClass = input<ClassValue>('', { alias: 'class' });\n public readonly stickyLabels = input<boolean, BooleanInput>(false, {\n transform: booleanAttribute,\n });\n protected readonly _stateProvider = injectExposesStateProvider({ optional: true });\n protected readonly _sideProvider = injectExposedSideProvider({ optional: true });\n\n protected readonly _computedClass = computed(() =>\n hlm(\n 'w-full relative z-50 min-w-[8rem] overflow-hidden rounded-md border border-border bg-popover text-popover-foreground shadow-md p-1 data-[side=bottom]:top-[2px] data-[side=top]:bottom-[2px] data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2',\n this.userClass()\n )\n );\n}\n","import { computed, Directive, input } from '@angular/core';\nimport { hlm } from '@spartan-ng/brain/core';\nimport { BrnSelectGroup } from '@spartan-ng/brain/select';\nimport type { ClassValue } from 'clsx';\n\n@Directive({\n selector: '[hlmSelectGroup], hlm-select-group',\n\n hostDirectives: [BrnSelectGroup],\n host: {\n '[class]': '_computedClass()',\n },\n})\nexport class HlmSelectGroup {\n public readonly userClass = input<ClassValue>('', { alias: 'class' });\n protected readonly _computedClass = computed(() => hlm(this.userClass()));\n}\n","import { computed, Directive, inject, input } from '@angular/core';\nimport { hlm } from '@spartan-ng/brain/core';\nimport { BrnSelectLabel } from '@spartan-ng/brain/select';\nimport type { ClassValue } from 'clsx';\nimport { HlmSelectContent } from './hlm-select-content';\n\n@Directive({\n selector: '[hlmSelectLabel], hlm-select-label',\n\n hostDirectives: [BrnSelectLabel],\n host: {\n '[class]': '_computedClass()',\n },\n})\nexport class HlmSelectLabel {\n private readonly _selectContent = inject(HlmSelectContent);\n private readonly _stickyLabels = computed(() => this._selectContent.stickyLabels());\n public readonly userClass = input<ClassValue>('', { alias: 'class' });\n protected readonly _computedClass = computed(() =>\n hlm(\n 'text-muted-foreground px-2 py-1.5 text-xs',\n this._stickyLabels() ? 'sticky top-0 bg-popover block z-[2]' : '',\n this.userClass()\n )\n );\n}\n","import { HlmIcon } from '@3ddv/software-division-components/generic/icon';\nimport { ChangeDetectionStrategy, Component, computed, inject, input } from '@angular/core';\nimport { NgIcon, provideIcons } from '@ng-icons/core';\nimport { lucideCheck } from '@ng-icons/lucide';\nimport { hlm } from '@spartan-ng/brain/core';\nimport { BrnSelectOption } from '@spartan-ng/brain/select';\nimport type { ClassValue } from 'clsx';\n\n@Component({\n selector: 'hlm-option',\n changeDetection: ChangeDetectionStrategy.OnPush,\n hostDirectives: [{ directive: BrnSelectOption, inputs: ['disabled', 'value'] }],\n providers: [provideIcons({ lucideCheck })],\n host: {\n '[class]': '_computedClass()',\n },\n template: `\n <span class=\"absolute right-2 flex size-3.5 items-center justify-center\">\n @if (this._brnSelectOption.selected()) {\n <ng-icon aria-hidden=\"true\" hlm name=\"lucideCheck\" size=\"sm\" />\n }\n </span>\n\n <ng-content />\n `,\n imports: [NgIcon, HlmIcon],\n})\nexport class HlmSelectOption {\n protected readonly _brnSelectOption = inject(BrnSelectOption, { host: true });\n public readonly userClass = input<ClassValue>('', { alias: 'class' });\n protected readonly _computedClass = computed(() =>\n hlm(\n 'overflow-hidden text-ellipsis whitespace-nowrap hover:bg-accent data-[active]:bg-accent data-[active]:text-white [&>ng-icon]:text-white relative flex w-full cursor-default items-center gap-2 rounded-sm py-1.5 pr-8 pl-2 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&>ng-icon]:pointer-events-none [&>ng-icon]:shrink-0 [&>ng-icon]:size-4 *:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2',\n this.userClass()\n )\n );\n}\n","import { HlmIcon } from '@3ddv/software-division-components/generic/icon';\nimport { ChangeDetectionStrategy, Component, computed, input } from '@angular/core';\nimport { NgIcon, provideIcons } from '@ng-icons/core';\nimport { lucideChevronDown } from '@ng-icons/lucide';\nimport { hlm } from '@spartan-ng/brain/core';\nimport { ClassValue } from 'clsx';\n\n@Component({\n selector: 'hlm-select-scroll-down',\n\n imports: [NgIcon, HlmIcon],\n providers: [provideIcons({ lucideChevronDown })],\n host: {\n '[class]': '_computedClass()',\n },\n template: ` <ng-icon class=\"ml-2\" hlm name=\"lucideChevronDown\" size=\"sm\" /> `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class HlmSelectScrollDown {\n public readonly userClass = input<ClassValue>('', { alias: 'class' });\n protected readonly _computedClass = computed(() =>\n hlm('flex cursor-default items-center justify-center py-1', this.userClass())\n );\n}\n","import { HlmIcon } from '@3ddv/software-division-components/generic/icon';\nimport { ChangeDetectionStrategy, Component, computed, input } from '@angular/core';\nimport { NgIcon, provideIcons } from '@ng-icons/core';\nimport { lucideChevronUp } from '@ng-icons/lucide';\nimport { hlm } from '@spartan-ng/brain/core';\nimport { ClassValue } from 'clsx';\n\n@Component({\n selector: 'hlm-select-scroll-up',\n imports: [NgIcon, HlmIcon],\n providers: [provideIcons({ lucideChevronUp })],\n host: {\n '[class]': '_computedClass()',\n },\n template: ` <ng-icon class=\"ml-2\" hlm name=\"lucideChevronUp\" size=\"sm\" /> `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class HlmSelectScrollUp {\n public readonly userClass = input<ClassValue>('', { alias: 'class' });\n protected readonly _computedClass = computed(() =>\n hlm('flex cursor-default items-center justify-center py-1', this.userClass())\n );\n}\n","import { HlmIcon } from '@3ddv/software-division-components/generic/icon';\nimport { ChangeDetectionStrategy, Component, computed, contentChild, inject, input } from '@angular/core';\nimport { NgIcon, provideIcons } from '@ng-icons/core';\nimport { lucideChevronDown } from '@ng-icons/lucide';\nimport { hlm } from '@spartan-ng/brain/core';\nimport { BrnSelect, BrnSelectTrigger } from '@spartan-ng/brain/select';\nimport { cva } from 'class-variance-authority';\nimport type { ClassValue } from 'clsx';\n\nexport const selectTriggerVariants = cva(\n `border-input [&>ng-icon]:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 dark:bg-input/30 dark:hover:bg-input/50 flex w-full items-center justify-between gap-2 rounded-3xl border bg-transparent px-3 py-1.5 text-sm whitespace-nowrap shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 data-[size=default]:h-9 data-[size=sm]:h-6 [&>ng-icon]:pointer-events-none [&>ng-icon]:shrink-0 [&>ng-icon]:size-4`,\n {\n variants: {\n error: {\n auto: '[&.ng-invalid.ng-touched]:text-destructive [&.ng-invalid.ng-touched]:border-destructive [&.ng-invalid.ng-touched]:focus-visible:ring-destructive/20 dark:[&.ng-invalid.ng-touched]:focus-visible:ring-destructive/40',\n true: 'text-destructive border-destructive focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40',\n },\n },\n defaultVariants: {\n error: 'auto',\n },\n }\n);\n\n@Component({\n selector: 'hlm-select-trigger',\n imports: [BrnSelectTrigger, NgIcon, HlmIcon],\n providers: [provideIcons({ lucideChevronDown })],\n template: `\n <button #button brnSelectTrigger hlmInput type=\"button\" [attr.data-size]=\"size()\" [class]=\"_computedClass()\">\n <ng-content />\n @if (_icon()) {\n <ng-content select=\"ng-icon\" />\n } @else {\n <ng-icon class=\"ml-2 flex-none\" hlm name=\"lucideChevronDown\" size=\"sm\" />\n }\n </button>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class HlmSelectTrigger {\n protected readonly _icon = contentChild(HlmIcon);\n\n protected readonly _brnSelect = inject(BrnSelect, { optional: true });\n\n public readonly userClass = input<ClassValue>('', { alias: 'class' });\n\n public readonly size = input<'default' | 'sm'>('default');\n\n protected readonly _computedClass = computed(() =>\n hlm(selectTriggerVariants({ error: this._brnSelect?.errorState() }), this.userClass())\n );\n}\n","import { computed, Directive, input } from '@angular/core';\nimport { hlm } from '@spartan-ng/brain/core';\nimport type { ClassValue } from 'clsx';\n\n@Directive({\n selector: 'hlm-select-value,[hlmSelectValue], brn-select-value[hlm]',\n\n host: {\n '[class]': '_computedClass()',\n },\n})\nexport class HlmSelectValue {\n public readonly userClass = input<ClassValue>('', { alias: 'class' });\n protected readonly _computedClass = computed(() =>\n hlm('line-clamp-1 flex items-center gap-2 overflow-hidden text-ellipsis', this.userClass())\n );\n}\n","import { NgModule } from '@angular/core';\nimport { HlmSelect } from './hlm-select';\nimport { HlmSelectContent } from './hlm-select-content';\nimport { HlmSelectGroup } from './hlm-select-group';\nimport { HlmSelectLabel } from './hlm-select-label';\nimport { HlmSelectOption } from './hlm-select-option';\nimport { HlmSelectScrollDown } from './hlm-select-scroll-down';\nimport { HlmSelectScrollUp } from './hlm-select-scroll-up';\nimport { HlmSelectTrigger } from './hlm-select-trigger';\nimport { HlmSelectValue } from './hlm-select-value';\n\nexport * from './hlm-select';\nexport * from './hlm-select-content';\nexport * from './hlm-select-group';\nexport * from './hlm-select-label';\nexport * from './hlm-select-option';\nexport * from './hlm-select-scroll-down';\nexport * from './hlm-select-scroll-up';\nexport * from './hlm-select-trigger';\nexport * from './hlm-select-value';\n\nexport const HlmSelectImports = [\n HlmSelectContent,\n HlmSelectTrigger,\n HlmSelectOption,\n HlmSelectValue,\n HlmSelect,\n HlmSelectScrollUp,\n HlmSelectScrollDown,\n HlmSelectLabel,\n HlmSelectGroup,\n] as const;\n\n@NgModule({\n imports: [...HlmSelectImports],\n exports: [...HlmSelectImports],\n})\nexport class HlmSelectModule {}\n","import { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, input, output } from '@angular/core';\nimport { BrnSelectImports } from '@spartan-ng/brain/select';\nimport { HlmSelectImports } from './lib';\nimport { SelectOptions } from './types';\n\n@Component({\n changeDetection: ChangeDetectionStrategy.OnPush,\n selector: 'sdc-select',\n imports: [CommonModule, BrnSelectImports, HlmSelectImports],\n templateUrl: './select.component.html',\n styleUrls: ['./select.component.css'],\n})\nexport class SelectComponent {\n public placeholder = input('');\n public variant = input('light');\n public options = input.required<SelectOptions[]>();\n public fullWidth = input(false);\n public defaultValue = input<SelectOptions[][number]>();\n public readonly valueChange = output<unknown>();\n\n protected get variantClasses(): string {\n return this.variant() === 'dark' ? 'bg-black text-white' : 'bg-white text-black';\n }\n}\n","<hlm-select\n class=\"select-root\"\n [value]=\"defaultValue()?.value\"\n [placeholder]=\"placeholder()\"\n (valueChange)=\"valueChange.emit($event)\">\n <hlm-select-trigger class=\"select-trigger select-trigger--sm\" size=\"sm\" [ngClass]=\"variantClasses\">\n <hlm-select-value [ngClass]=\"variantClasses\" />\n </hlm-select-trigger>\n\n <hlm-select-trigger class=\"select-trigger select-trigger--lg\" size=\"default\" [ngClass]=\"variantClasses\">\n <hlm-select-value [ngClass]=\"variantClasses\" />\n </hlm-select-trigger>\n\n <hlm-select-content [class]=\"fullWidth() ? 'full-width' : ''\" [ngClass]=\"variantClasses\">\n @for (option of options(); track idx + option.label; let idx = $index) {\n <hlm-option [ngClass]=\"variantClasses\" [value]=\"option.value\">{{ option.label }}</hlm-option>\n }\n </hlm-select-content>\n</hlm-select>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1","i2","i3.HlmSelectContent","i4.HlmSelectTrigger","i5.HlmSelectOption","i6.HlmSelectValue","i7.HlmSelect"],"mappings":"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"}
@@ -0,0 +1,171 @@
1
+ import { filter, first, fromEvent, startWith } from 'rxjs';
2
+ import { CurrencyPipe, DatePipe } from '@angular/common';
3
+ import * as i0 from '@angular/core';
4
+ import { inject, Pipe, InjectionToken, signal, computed, HostBinding, Inject, Directive } from '@angular/core';
5
+ import { provideAnimationsAsync } from '@angular/platform-browser/animations/async';
6
+ import { toSignal } from '@angular/core/rxjs-interop';
7
+ import { map } from 'rxjs/operators';
8
+
9
+ /** * Declares CSS variables globally based on the 'theme' and 'dvmStyles' property of the configuration. */
10
+ function applyGlobalCssVariables(appRef, theme) {
11
+ // First application of the theme
12
+ applyGlobalCssVariablesToNodes(theme);
13
+ appRef.isStable
14
+ .pipe(filter(stable => stable), first())
15
+ // Second application of the theme when the application is stable
16
+ .subscribe(() => applyGlobalCssVariablesToNodes(theme));
17
+ }
18
+ function applyGlobalCssVariablesToNodes(theme) {
19
+ // Grab elements from the DOM
20
+ const documentElement = document.documentElement;
21
+ const root = document.querySelector(':root');
22
+ if (root) {
23
+ // Get theme in a new object
24
+ const mergedStyles = Object.assign({}, theme);
25
+ for (const [key, value] of Object.entries(mergedStyles)) {
26
+ // For each of the styles, declare a new CSS variable on root element
27
+ if (typeof value === 'string') {
28
+ root.style.setProperty('--' + key, value);
29
+ documentElement.style.setProperty('--' + key, value);
30
+ }
31
+ }
32
+ }
33
+ }
34
+
35
+ class FormatValuePipe {
36
+ currencyPipe = inject(CurrencyPipe);
37
+ datePipe = inject(DatePipe);
38
+ transform(value, pipe) {
39
+ switch (pipe) {
40
+ case 'currency':
41
+ return this.currencyPipe.transform(value) ?? '';
42
+ case 'date':
43
+ return this.datePipe.transform(value) ?? '';
44
+ default:
45
+ return value ?? '';
46
+ }
47
+ }
48
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.4", ngImport: i0, type: FormatValuePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
49
+ static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "21.1.4", ngImport: i0, type: FormatValuePipe, isStandalone: true, name: "formatValue" });
50
+ }
51
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.4", ngImport: i0, type: FormatValuePipe, decorators: [{
52
+ type: Pipe,
53
+ args: [{
54
+ pure: true,
55
+ standalone: true,
56
+ name: 'formatValue',
57
+ }]
58
+ }] });
59
+
60
+ const NG_SD_COMPONENTS_CONFIG = new InjectionToken('NgSdComponentsConfig');
61
+
62
+ /**
63
+ * Provides all necessary dependencies for the library:
64
+ * - Angular Pipes (`DatePipe`, `CurrencyPipe`)
65
+ * - Animations
66
+ * - CommonModule
67
+ */
68
+ function provideSdc(config) {
69
+ // const preset = config?.theme === 'generic' ? GenericTheme : Aura;
70
+ // if config.theme is generic, pass a theme, otherwise, pass another theme
71
+ const providers = [
72
+ DatePipe,
73
+ CurrencyPipe,
74
+ { provide: NG_SD_COMPONENTS_CONFIG, useValue: config ?? 'generic' },
75
+ provideAnimationsAsync(),
76
+ ];
77
+ return [...providers];
78
+ }
79
+
80
+ const SIZES = { xxs: 'xxs', xs: 'xs', sm: 'sm', md: 'md', lg: 'lg', xl: 'xl', '2xl': '2xl' };
81
+ /** Ordered array for size comparison logic */
82
+ const SIZE_ORDER = ['xxs', 'xs', 'sm', 'md', 'lg', 'xl', '2xl'];
83
+
84
+ class ScreenObserver {
85
+ // SIGNALS
86
+ _size = signal('md', ...(ngDevMode ? [{ debugName: "_size" }] : []));
87
+ // CLASS PROPERTIES
88
+ breakpoints;
89
+ size = this._size;
90
+ index;
91
+ constructor(screens) {
92
+ this.breakpoints = Object.fromEntries(Object.entries(screens).map(([k, v]) => [k, Number(v.replace('px', ''))]));
93
+ const resize$ = fromEvent(window, 'resize').pipe(startWith(null), map(() => this.getSize()));
94
+ this.size = toSignal(resize$, { initialValue: this.getSize() });
95
+ this.index = computed(() => SIZE_ORDER.indexOf(this.size()), ...(ngDevMode ? [{ debugName: "index" }] : []));
96
+ }
97
+ getSize() {
98
+ const w = window.innerWidth;
99
+ if (w >= this.breakpoints?.['2xl'])
100
+ return '2xl';
101
+ if (w >= this.breakpoints?.['xl'])
102
+ return 'xl';
103
+ if (w >= this.breakpoints?.['lg'])
104
+ return 'lg';
105
+ if (w >= this.breakpoints?.['md'])
106
+ return 'md';
107
+ if (w >= this.breakpoints?.['sm'])
108
+ return 'sm';
109
+ if (w >= this.breakpoints?.['xs'])
110
+ return 'xs';
111
+ return 'xxs';
112
+ }
113
+ isBiggerThan(screen) {
114
+ return window.innerWidth >= this.breakpoints?.[screen];
115
+ }
116
+ isSmallerThan(screen) {
117
+ return window.innerWidth < this.breakpoints?.[screen];
118
+ }
119
+ isBiggerThan$(screen) {
120
+ return this.index() >= SIZE_ORDER.indexOf(screen);
121
+ }
122
+ isSmallerThan$(screen) {
123
+ return this.index() < SIZE_ORDER.indexOf(screen);
124
+ }
125
+ }
126
+
127
+ // screen-helper.providers.ts
128
+ const SCREENS_TOKEN = new InjectionToken('SCREENS_TOKEN');
129
+ function provideScreenObserver(screens) {
130
+ return [
131
+ { provide: SCREENS_TOKEN, useValue: screens },
132
+ {
133
+ provide: ScreenObserver,
134
+ deps: [SCREENS_TOKEN],
135
+ useFactory: (cfg) => new ScreenObserver(cfg),
136
+ },
137
+ ];
138
+ }
139
+
140
+ class ThemeProviderDirective {
141
+ configuration;
142
+ class = '';
143
+ theme = '';
144
+ constructor(configuration) {
145
+ this.configuration = configuration;
146
+ this.theme = this.configuration.theme;
147
+ this.class = `theme-${this.theme}`;
148
+ }
149
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.4", ngImport: i0, type: ThemeProviderDirective, deps: [{ token: NG_SD_COMPONENTS_CONFIG }], target: i0.ɵɵFactoryTarget.Directive });
150
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.1.4", type: ThemeProviderDirective, isStandalone: true, selector: "[themeProvider]", host: { properties: { "class": "this.class" } }, ngImport: i0 });
151
+ }
152
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.4", ngImport: i0, type: ThemeProviderDirective, decorators: [{
153
+ type: Directive,
154
+ args: [{
155
+ standalone: true,
156
+ selector: '[themeProvider]',
157
+ }]
158
+ }], ctorParameters: () => [{ type: undefined, decorators: [{
159
+ type: Inject,
160
+ args: [NG_SD_COMPONENTS_CONFIG]
161
+ }] }], propDecorators: { class: [{
162
+ type: HostBinding,
163
+ args: ['class']
164
+ }] } });
165
+
166
+ /**
167
+ * Generated bundle index. Do not edit.
168
+ */
169
+
170
+ export { FormatValuePipe, SCREENS_TOKEN, SIZES, SIZE_ORDER, ScreenObserver, ThemeProviderDirective, applyGlobalCssVariables, provideScreenObserver, provideSdc };
171
+ //# sourceMappingURL=3ddv-software-division-components-shared.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"3ddv-software-division-components-shared.mjs","sources":["../../shared/apply-theme-variables/apply-theme-variables.ts","../../shared/format-value.pipe.ts","../../shared/lib-provider/config-token.ts","../../shared/lib-provider/provide-sdc.ts","../../shared/types.ts","../../shared/screen-observer/screen-observer.ts","../../shared/screen-observer/provide-screen-observer.ts","../../shared/theme-provider/theme-provider.directive.ts","../../shared/3ddv-software-division-components-shared.ts"],"sourcesContent":["import { ApplicationRef } from '@angular/core';\nimport { filter, first } from 'rxjs';\n\n/** * Declares CSS variables globally based on the 'theme' and 'dvmStyles' property of the configuration. */\nexport function applyGlobalCssVariables(appRef: ApplicationRef, theme: Record<string, string>): void {\n // First application of the theme\n applyGlobalCssVariablesToNodes(theme);\n\n appRef.isStable\n .pipe(\n filter(stable => stable),\n first()\n )\n // Second application of the theme when the application is stable\n .subscribe(() => applyGlobalCssVariablesToNodes(theme));\n}\n\nfunction applyGlobalCssVariablesToNodes(theme: Record<string, string>) {\n // Grab elements from the DOM\n const documentElement = document.documentElement;\n const root: HTMLElement | null = document.querySelector(':root');\n\n if (root) {\n // Get theme in a new object\n const mergedStyles = Object.assign({}, theme);\n\n for (const [key, value] of Object.entries(mergedStyles)) {\n // For each of the styles, declare a new CSS variable on root element\n if (typeof value === 'string') {\n root.style.setProperty('--' + key, value);\n documentElement.style.setProperty('--' + key, value);\n }\n }\n }\n}\n","import { CurrencyPipe, DatePipe } from '@angular/common';\nimport { inject, Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n pure: true,\n standalone: true,\n name: 'formatValue',\n})\nexport class FormatValuePipe implements PipeTransform {\n private currencyPipe = inject(CurrencyPipe);\n private datePipe = inject(DatePipe);\n\n public transform(value: string, pipe: any): string {\n switch (pipe) {\n case 'currency':\n return this.currencyPipe.transform(value) ?? '';\n case 'date':\n return this.datePipe.transform(value) ?? '';\n default:\n return value ?? '';\n }\n }\n}\n","import { InjectionToken } from '@angular/core';\nimport { NgSdComponentsConfig } from '../types';\n\nexport const NG_SD_COMPONENTS_CONFIG = new InjectionToken<NgSdComponentsConfig>('NgSdComponentsConfig');\n","import { CurrencyPipe, DatePipe } from '@angular/common';\nimport { Provider } from '@angular/core';\nimport { provideAnimationsAsync } from '@angular/platform-browser/animations/async';\nimport { NgSdComponentsConfig } from '../types';\nimport { NG_SD_COMPONENTS_CONFIG } from './config-token';\n\n/**\n * Provides all necessary dependencies for the library:\n * - Angular Pipes (`DatePipe`, `CurrencyPipe`)\n * - Animations\n * - CommonModule\n */\nexport function provideSdc(config?: NgSdComponentsConfig): Provider[] {\n // const preset = config?.theme === 'generic' ? GenericTheme : Aura;\n // if config.theme is generic, pass a theme, otherwise, pass another theme\n const providers = [\n DatePipe,\n CurrencyPipe,\n { provide: NG_SD_COMPONENTS_CONFIG, useValue: config ?? 'generic' },\n provideAnimationsAsync() as unknown as Provider,\n ];\n\n return [...providers];\n}\n","export const SIZES = { xxs: 'xxs', xs: 'xs', sm: 'sm', md: 'md', lg: 'lg', xl: 'xl', '2xl': '2xl' } as const;\n\nexport type Size = (typeof SIZES)[keyof typeof SIZES];\n\n/** Ordered array for size comparison logic */\nexport const SIZE_ORDER: Size[] = ['xxs', 'xs', 'sm', 'md', 'lg', 'xl', '2xl'];\n\nexport type NgPipes = 'none' | 'currency' | 'date';\n\nexport type NgSdComponentsConfigValues = 'generic' | 'backoffice' | 'sdc';\n\nexport interface NgSdComponentsConfig {\n theme: NgSdComponentsConfigValues;\n}\n\ntype Theme = 'backoffice' | 'sdc';\n\nexport type ThemeClass = `theme-${Theme}`;\n","import { computed, Signal, signal } from '@angular/core';\nimport { toSignal } from '@angular/core/rxjs-interop';\nimport { fromEvent, startWith } from 'rxjs';\nimport { map } from 'rxjs/operators';\nimport { Size, SIZE_ORDER } from '../types';\n\nexport class ScreenObserver {\n // SIGNALS\n private readonly _size = signal<Size>('md');\n\n // CLASS PROPERTIES\n private readonly breakpoints: Record<Size, number>;\n public readonly size: Signal<Size> = this._size;\n public readonly index!: Signal<number>;\n\n public constructor(screens: Record<Partial<Size>, string>) {\n this.breakpoints = Object.fromEntries(\n Object.entries(screens).map(([k, v]) => [k, Number(v.replace('px', ''))])\n ) as Record<Size, number>;\n\n const resize$ = fromEvent(window, 'resize').pipe(\n startWith(null),\n map(() => this.getSize())\n );\n\n this.size = toSignal(resize$, { initialValue: this.getSize() });\n this.index = computed(() => SIZE_ORDER.indexOf(this.size()));\n }\n\n public getSize(): Size {\n const w = window.innerWidth;\n if (w >= this.breakpoints?.['2xl']) return '2xl';\n if (w >= this.breakpoints?.['xl']) return 'xl';\n if (w >= this.breakpoints?.['lg']) return 'lg';\n if (w >= this.breakpoints?.['md']) return 'md';\n if (w >= this.breakpoints?.['sm']) return 'sm';\n if (w >= this.breakpoints?.['xs']) return 'xs';\n return 'xxs';\n }\n\n public isBiggerThan(screen: Size): boolean {\n return window.innerWidth >= this.breakpoints?.[screen];\n }\n\n public isSmallerThan(screen: Size): boolean {\n return window.innerWidth < this.breakpoints?.[screen];\n }\n\n public isBiggerThan$(screen: Size): boolean {\n return this.index() >= SIZE_ORDER.indexOf(screen);\n }\n\n public isSmallerThan$(screen: Size): boolean {\n return this.index() < SIZE_ORDER.indexOf(screen);\n }\n}\n","// screen-helper.providers.ts\nimport { InjectionToken, Provider } from '@angular/core';\nimport { Size } from '../types';\nimport { ScreenObserver } from './screen-observer';\n\nexport const SCREENS_TOKEN = new InjectionToken<Record<Size, string>>('SCREENS_TOKEN');\n\nexport function provideScreenObserver(screens: Record<Size, string>): Provider[] {\n return [\n { provide: SCREENS_TOKEN, useValue: screens },\n {\n provide: ScreenObserver,\n deps: [SCREENS_TOKEN],\n useFactory: (cfg: Record<Size, string>) => new ScreenObserver(cfg),\n },\n ];\n}\n","import { Directive, HostBinding, Inject } from '@angular/core';\nimport { NG_SD_COMPONENTS_CONFIG } from '../lib-provider/config-token';\nimport { type NgSdComponentsConfig } from '../types';\n\n@Directive({\n standalone: true,\n selector: '[themeProvider]',\n})\nexport class ThemeProviderDirective {\n @HostBinding('class') class: string = '';\n theme: string = '';\n\n constructor(@Inject(NG_SD_COMPONENTS_CONFIG) private configuration: NgSdComponentsConfig) {\n this.theme = this.configuration.theme;\n this.class = `theme-${this.theme}`;\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,39 @@
1
+ function validateCssClass(value, componentName) {
2
+ const regex = /^([a-zA-Z][a-zA-Z0-9-_]*)(\s[a-zA-Z][a-zA-Z0-9-_]*)*$/;
3
+ const isValidCssClass = regex.test(value);
4
+ if (!isValidCssClass) {
5
+ throw new Error(`Invalid CSS class string passed as input to "styleClasses" input, found on ${componentName}.
6
+ Please make sure your input is a valid CSS class or a list of whitespace-separated classes.
7
+ The value provided was: ${value}`);
8
+ }
9
+ }
10
+ function validateStylesForComponent(componentName) {
11
+ return (styles) => {
12
+ // Styles will be an empty string if they are not defined
13
+ if (styles === '') {
14
+ return styles;
15
+ }
16
+ if (typeof styles === 'string') {
17
+ // Some components just have to style one element,
18
+ // so a string input is sufficient
19
+ validateCssClass(styles, componentName);
20
+ }
21
+ else {
22
+ // While others require an object ot be able to style
23
+ // different parts of the component, which requires an object
24
+ // to target different parts of the components with different classes
25
+ const stylesValues = Object.values(styles);
26
+ for (const styleValue of stylesValues) {
27
+ validateCssClass(styleValue, componentName);
28
+ }
29
+ }
30
+ return styles;
31
+ };
32
+ }
33
+
34
+ /**
35
+ * Generated bundle index. Do not edit.
36
+ */
37
+
38
+ export { validateStylesForComponent };
39
+ //# sourceMappingURL=3ddv-software-division-components-utils.mjs.map