@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,873 @@
1
+ import type { Meta, StoryObj } from '@storybook/angular';
2
+ import { applicationConfig, moduleMetadata } from '@storybook/angular';
3
+ import { provideHttpClient } from '@angular/common/http';
4
+ import { of } from 'rxjs';
5
+ import { PopoverComponent } from './popover.component';
6
+ import { PopoverService, type PopoverContentProjection } from './popover.service';
7
+ import { AppNodes, SeatPopoverData, SectionPopoverData, IThumbnailProvider } from './types';
8
+ import { Component, inject, input, signal } from '@angular/core';
9
+ import { CONFIGURATION_SERVICE, DVM_FORMATTER, DVM_SERVICE, THUMBNAIL_PROVIDER } from './popover.config';
10
+ import type { IConfigurationService, IDvmFormatter, IDvmService } from './popover.config';
11
+ import type { MapViewerNode } from '@3ddv/dvm-internal';
12
+ import { SeatPopoverComponent } from './seat-popover/seat-popover.component';
13
+ import { SectionPopoverComponent } from './section-popover/section-popover.component';
14
+
15
+ // Mock services
16
+ const mockConfigurationService: IConfigurationService = {
17
+ configuration: {
18
+ dvmData: {
19
+ venueId: 'venue-123',
20
+ },
21
+ },
22
+ };
23
+
24
+ const mockDvmFormatter: IDvmFormatter = {
25
+ transform: (value: string) => {
26
+ // Simulate formatting logic - split by dashes and spaces
27
+ return value ? value.replace(/-/g, ' ').toUpperCase() : '';
28
+ },
29
+ };
30
+
31
+ const mockViewer3dService = {
32
+ isInitialized: () => true,
33
+ getThumbnail: () => of('https://via.placeholder.com/275x124/1a1a1a/ffffff?text=Thumbnail'),
34
+ };
35
+
36
+ const mockDvmService: IDvmService = {
37
+ viewer3dService: mockViewer3dService as any,
38
+ viewerService: mockViewer3dService as any,
39
+ };
40
+
41
+ const mockThumbnailProvider: IThumbnailProvider = {
42
+ getThumbnail: (nodeId: string) => of(`https://via.placeholder.com/275x124/1a1a1a/ffffff?text=Thumbnail+${nodeId}`),
43
+ };
44
+
45
+ // Mock node data
46
+ const createMockNode = (id: string, type: AppNodes): MapViewerNode =>
47
+ ({
48
+ id,
49
+ type,
50
+ // Add other required properties as needed
51
+ }) as MapViewerNode;
52
+
53
+ // Wrapper component for service injection
54
+ @Component({
55
+ selector: 'storybook-wrapper',
56
+ template: `
57
+ <div
58
+ style="padding: 2rem; background: #f5f5f5; min-height: 400px; display: flex; align-items: center; justify-content: center; position: relative;">
59
+ <div style="text-align: center;">
60
+ <p style="margin-bottom: 1rem; color: #666;">
61
+ Click the button to create a popover with service-based content projection
62
+ </p>
63
+ <button
64
+ (click)="createPopoverWithContent()"
65
+ style="background: #007bff; color: white; border: none; padding: 0.5rem 1rem; border-radius: 4px; cursor: pointer;">
66
+ Create Service Popover
67
+ </button>
68
+ </div>
69
+ </div>
70
+ `,
71
+ standalone: true,
72
+ imports: [],
73
+ })
74
+ class StorybookWrapperComponent {
75
+ private readonly popoverService = inject(PopoverService);
76
+
77
+ createPopoverWithContent(): void {
78
+ const referenceElement = document.createElement('div');
79
+ referenceElement.style.position = 'absolute';
80
+ referenceElement.style.top = '50%';
81
+ referenceElement.style.left = '50%';
82
+ referenceElement.style.width = '20px';
83
+ referenceElement.style.height = '20px';
84
+ referenceElement.style.background = 'red';
85
+ document.body.appendChild(referenceElement);
86
+
87
+ const contentProjection: PopoverContentProjection = {
88
+ thumbnail:
89
+ '<div style="width: 100%; height: 124px; background: linear-gradient(45deg, #667eea 0%, #764ba2 100%); display: flex; align-items: center; justify-content: center; color: white; font-weight: bold;">SERVICE THUMBNAIL</div>',
90
+ content:
91
+ '<div style="text-align: center; padding: 0.5rem;"><h4 style="color: #fff; margin: 0 0 0.5rem 0; font-size: 0.875rem;">SERVICE CONTENT</h4><p style="color: #ccc; margin: 0; font-size: 0.75rem;">Created via PopoverService</p></div>',
92
+ price:
93
+ '<div style="text-align: center; padding: 0.5rem;"><span style="color: #f39c12; font-size: 0.75rem; font-weight: bold;">SERVICE PRICE</span><div style="color: #fff; font-size: 1rem; font-weight: bold;">$199.99</div></div>',
94
+ };
95
+
96
+ const mockNode = createMockNode('section-service-row-3-seat-20', AppNodes.Seat);
97
+
98
+ // Use the same providers as defined in the story decorators
99
+ const customProviders = [
100
+ { provide: CONFIGURATION_SERVICE, useValue: mockConfigurationService },
101
+ { provide: DVM_FORMATTER, useValue: mockDvmFormatter },
102
+ { provide: DVM_SERVICE, useValue: mockDvmService },
103
+ ];
104
+
105
+ const popoverInstance = this.popoverService.createPopoverComponentWithContent(
106
+ 'service-popover',
107
+ referenceElement,
108
+ PopoverComponent,
109
+ { node: mockNode }, // Wrap mockNode with signal()
110
+ contentProjection,
111
+ {}, // default options
112
+ { providers: customProviders }
113
+ );
114
+
115
+ // Clean up after 5 seconds
116
+ setTimeout(() => {
117
+ this.popoverService.destroyPopover('service-popover');
118
+ document.body.removeChild(referenceElement);
119
+ }, 5000);
120
+ }
121
+ }
122
+
123
+ const meta: Meta<PopoverComponent> = {
124
+ title: 'Dvm/Popover',
125
+ component: PopoverComponent,
126
+ id: 'Popover',
127
+ decorators: [
128
+ moduleMetadata({
129
+ imports: [PopoverComponent, StorybookWrapperComponent],
130
+ providers: [
131
+ { provide: CONFIGURATION_SERVICE, useValue: mockConfigurationService },
132
+ { provide: DVM_FORMATTER, useValue: mockDvmFormatter },
133
+ { provide: DVM_SERVICE, useValue: mockDvmService },
134
+ ],
135
+ }),
136
+ applicationConfig({
137
+ providers: [provideHttpClient()],
138
+ }),
139
+ ],
140
+ argTypes: {
141
+ node: {
142
+ control: 'object',
143
+ description: 'The node to attach the popover to',
144
+ table: {
145
+ type: { summary: 'MapViewerNode' },
146
+ },
147
+ },
148
+ theme: {
149
+ control: 'select',
150
+ options: ['theme-sdc', 'theme-backoffice'],
151
+ description: 'Theme class to apply to the popover component',
152
+ table: {
153
+ type: { summary: 'ThemeClass' },
154
+ },
155
+ },
156
+ },
157
+ parameters: {
158
+ docs: {
159
+ description: {
160
+ component:
161
+ 'A popover component for displaying venue map information with thumbnails, seat details, and pricing.',
162
+ },
163
+ },
164
+ },
165
+ };
166
+
167
+ export default meta;
168
+
169
+ type Story = StoryObj<PopoverComponent>;
170
+
171
+ export const Default: Story = {
172
+ args: {
173
+ node: createMockNode('section-a-1-15', AppNodes.Seat),
174
+ theme: 'theme-sdc',
175
+ },
176
+ render: args => ({
177
+ props: {
178
+ ...args,
179
+ onLoad3dView: (event: { node: any; section: string }) => {
180
+ console.log('3D View requested:', event);
181
+ alert(`Loading 3D view for section: ${event.section}`);
182
+ },
183
+ onSelectSectionForBA: (event: { node: any; section: string; selected: boolean }) => {
184
+ console.log('Section selection changed:', event);
185
+ alert(`Section ${event.section} ${event.selected ? 'selected' : 'deselected'} for best available`);
186
+ },
187
+ onOpenSeatMap: (event: { node: any; section: string }) => {
188
+ console.log('Seat map requested:', event);
189
+ alert(`Opening seat map for section: ${event.section}`);
190
+ },
191
+ },
192
+ template: `
193
+ <div style="padding: 2rem; background: #f5f5f5; min-height: 400px; display: flex; align-items: center; justify-content: center;">
194
+ <sdc-map-popover
195
+ [node]="node"
196
+ [theme]="theme"
197
+ (load3dView)="onLoad3dView($event)"
198
+ (selectSectionForBA)="onSelectSectionForBA($event)"
199
+ (openSeatMap)="onOpenSeatMap($event)">
200
+ </sdc-map-popover>
201
+ </div>
202
+ `,
203
+ }),
204
+ };
205
+
206
+ export const SectionNode: Story = {
207
+ args: {
208
+ node: createMockNode('section-b', AppNodes.Section),
209
+ theme: 'theme-sdc',
210
+ },
211
+ render: args => ({
212
+ props: {
213
+ ...args,
214
+ onLoad3dView: (event: { node: any; section: string }) => {
215
+ console.log('3D View requested:', event);
216
+ alert(`Loading 3D view for section: ${event.section}`);
217
+ },
218
+ onSelectSectionForBA: (event: { node: any; section: string; selected: boolean }) => {
219
+ console.log('Section selection changed:', event);
220
+ alert(`Section ${event.section} ${event.selected ? 'selected' : 'deselected'} for best available`);
221
+ },
222
+ onOpenSeatMap: (event: { node: any; section: string }) => {
223
+ console.log('Seat map requested:', event);
224
+ alert(`Opening seat map for section: ${event.section}`);
225
+ },
226
+ },
227
+ template: `
228
+ <div style="padding: 2rem; background: #f5f5f5; min-height: 400px; display: flex; align-items: center; justify-content: center;">
229
+ <sdc-map-popover
230
+ [node]="node"
231
+ [theme]="theme"
232
+ (load3dView)="onLoad3dView($event)"
233
+ (selectSectionForBA)="onSelectSectionForBA($event)"
234
+ (openSeatMap)="onOpenSeatMap($event)">
235
+ </sdc-map-popover>
236
+ </div>
237
+ `,
238
+ }),
239
+ };
240
+
241
+ export const RowNode: Story = {
242
+ args: {
243
+ node: createMockNode('section-c-row-5', AppNodes.Row),
244
+ theme: 'theme-sdc',
245
+ },
246
+ render: args => ({
247
+ props: args,
248
+ template: `
249
+ <div style="padding: 2rem; background: #f5f5f5; min-height: 400px; display: flex; align-items: center; justify-content: center;">
250
+ <sdc-map-popover
251
+ [node]="node"
252
+ [theme]="theme">
253
+ </sdc-map-popover>
254
+ </div>
255
+ `,
256
+ }),
257
+ };
258
+
259
+ export const SeatNode: Story = {
260
+ args: {
261
+ node: createMockNode('section-d-row-3-seat-12', AppNodes.Seat),
262
+ theme: 'theme-sdc',
263
+ },
264
+ render: args => ({
265
+ props: args,
266
+ template: `
267
+ <div style="padding: 2rem; background: #f5f5f5; min-height: 400px; display: flex; align-items: center; justify-content: center;">
268
+ <sdc-map-popover
269
+ [node]="node"
270
+ [theme]="theme">
271
+ </sdc-map-popover>
272
+ </div>
273
+ `,
274
+ }),
275
+ };
276
+
277
+ export const VIPNode: Story = {
278
+ args: {
279
+ node: createMockNode('vip-lounge-1-5', AppNodes.Vip),
280
+ theme: 'theme-sdc',
281
+ },
282
+ render: args => ({
283
+ props: args,
284
+ template: `
285
+ <div style="padding: 2rem; background: #f5f5f5; min-height: 400px; display: flex; align-items: center; justify-content: center;">
286
+ <sdc-map-popover
287
+ [node]="node"
288
+ [theme]="theme">
289
+ </sdc-map-popover>
290
+ </div>
291
+ `,
292
+ }),
293
+ };
294
+
295
+ export const GeneralAdmissionNode: Story = {
296
+ args: {
297
+ node: createMockNode('ga-floor-1', AppNodes.Ga),
298
+ theme: 'theme-sdc',
299
+ },
300
+ render: args => ({
301
+ props: args,
302
+ template: `
303
+ <div style="padding: 2rem; background: #f5f5f5; min-height: 400px; display: flex; align-items: center; justify-content: center;">
304
+ <sdc-map-popover
305
+ [node]="node"
306
+ [theme]="theme">
307
+ </sdc-map-popover>
308
+ </div>
309
+ `,
310
+ }),
311
+ };
312
+
313
+ export const LoadingState: Story = {
314
+ args: {
315
+ node: createMockNode('section-e-row-2-seat-8', AppNodes.Seat),
316
+ theme: 'theme-sdc',
317
+ },
318
+ decorators: [
319
+ moduleMetadata({
320
+ imports: [PopoverComponent],
321
+ providers: [
322
+ { provide: CONFIGURATION_SERVICE, useValue: mockConfigurationService },
323
+ { provide: DVM_FORMATTER, useValue: mockDvmFormatter },
324
+ {
325
+ provide: DVM_SERVICE,
326
+ useValue: {
327
+ viewer3dService: {
328
+ isInitialized: () => false,
329
+ getThumbnail: () => of(''),
330
+ },
331
+ },
332
+ },
333
+ ],
334
+ }),
335
+ applicationConfig({
336
+ providers: [provideHttpClient()],
337
+ }),
338
+ ],
339
+ render: args => ({
340
+ props: args,
341
+ template: `
342
+ <div style="padding: 2rem; background: #f5f5f5; min-height: 400px; display: flex; align-items: center; justify-content: center;">
343
+ <sdc-map-popover
344
+ [node]="node"
345
+ [theme]="theme">
346
+ </sdc-map-popover>
347
+ </div>
348
+ `,
349
+ }),
350
+ };
351
+
352
+ export const WithPrice: Story = {
353
+ args: {
354
+ node: createMockNode('section-f-row-1-seat-25', AppNodes.Seat),
355
+ theme: 'theme-sdc',
356
+ },
357
+ decorators: [
358
+ moduleMetadata({
359
+ imports: [PopoverComponent],
360
+ providers: [
361
+ { provide: CONFIGURATION_SERVICE, useValue: mockConfigurationService },
362
+ { provide: DVM_FORMATTER, useValue: mockDvmFormatter },
363
+ {
364
+ provide: DVM_SERVICE,
365
+ useValue: {
366
+ viewer3dService: {
367
+ isInitialized: () => true,
368
+ getThumbnail: () => of('https://via.placeholder.com/275x124/1a1a1a/ffffff?text=Premium+Seat'),
369
+ },
370
+ },
371
+ },
372
+ ],
373
+ }),
374
+ applicationConfig({
375
+ providers: [provideHttpClient()],
376
+ }),
377
+ ],
378
+ render: args => ({
379
+ props: args,
380
+ template: `
381
+ <div style="padding: 2rem; background: #f5f5f5; min-height: 400px; display: flex; align-items: center; justify-content: center;">
382
+ <sdc-map-popover
383
+ [node]="node"
384
+ [theme]="theme">
385
+ </sdc-map-popover>
386
+ </div>
387
+ `,
388
+ }),
389
+ };
390
+
391
+ export const BackofficeTheme: Story = {
392
+ args: {
393
+ node: createMockNode('section-g-row-4-seat-10', AppNodes.Seat),
394
+ theme: 'theme-backoffice',
395
+ },
396
+ render: args => ({
397
+ props: args,
398
+ template: `
399
+ <div style="padding: 2rem; background: #f5f5f5; min-height: 400px; display: flex; align-items: center; justify-content: center;">
400
+ <sdc-map-popover
401
+ [node]="node"
402
+ [theme]="theme">
403
+ </sdc-map-popover>
404
+ </div>
405
+ `,
406
+ }),
407
+ };
408
+
409
+ export const AllNodeTypes: Story = {
410
+ args: {
411
+ theme: 'theme-sdc',
412
+ },
413
+ render: args => ({
414
+ props: {
415
+ ...args,
416
+ sectionNode: createMockNode('section-a', AppNodes.Section),
417
+ rowNode: createMockNode('section-b-row-3', AppNodes.Row),
418
+ seatNode: createMockNode('section-c-row-2-seat-15', AppNodes.Seat),
419
+ vipNode: createMockNode('vip-premium-1-8', AppNodes.Vip),
420
+ gaNode: createMockNode('ga-standing-1', AppNodes.Ga),
421
+ },
422
+ template: `
423
+ <div style="padding: 2rem; background: #f5f5f5; min-height: 600px;">
424
+ <h3 style="margin-bottom: 2rem; text-align: center;">All Node Types</h3>
425
+ <div style="display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 2rem; justify-items: center;">
426
+ <div style="text-align: center;">
427
+ <h4 style="margin-bottom: 1rem;">Section</h4>
428
+ <sdc-map-popover [node]="sectionNode" [theme]="theme"></sdc-map-popover>
429
+ </div>
430
+ <div style="text-align: center;">
431
+ <h4 style="margin-bottom: 1rem;">Row</h4>
432
+ <sdc-map-popover [node]="rowNode" [theme]="theme"></sdc-map-popover>
433
+ </div>
434
+ <div style="text-align: center;">
435
+ <h4 style="margin-bottom: 1rem;">Seat</h4>
436
+ <sdc-map-popover [node]="seatNode" [theme]="theme"></sdc-map-popover>
437
+ </div>
438
+ <div style="text-align: center;">
439
+ <h4 style="margin-bottom: 1rem;">VIP</h4>
440
+ <sdc-map-popover [node]="vipNode" [theme]="theme"></sdc-map-popover>
441
+ </div>
442
+ <div style="text-align: center;">
443
+ <h4 style="margin-bottom: 1rem;">General Admission</h4>
444
+ <sdc-map-popover [node]="gaNode" [theme]="theme"></sdc-map-popover>
445
+ </div>
446
+ </div>
447
+ </div>
448
+ `,
449
+ }),
450
+ };
451
+
452
+ export const Interactive: Story = {
453
+ args: {
454
+ node: createMockNode('section-h-row-5-seat-20', AppNodes.Seat),
455
+ theme: 'theme-sdc',
456
+ },
457
+ render: args => ({
458
+ props: args,
459
+ template: `
460
+ <div style="padding: 2rem; background: #f5f5f5; min-height: 400px; display: flex; align-items: center; justify-content: center;">
461
+ <div style="text-align: center;">
462
+ <p style="margin-bottom: 1rem; color: #666;">Hover over the popover to see interaction effects</p>
463
+ <sdc-map-popover
464
+ [node]="node"
465
+ [theme]="theme"
466
+ (mouseenter)="onEnter($event)"
467
+ (mouseleave)="onLeave($event)">
468
+ </sdc-map-popover>
469
+ </div>
470
+ </div>
471
+ `,
472
+ methods: {
473
+ onEnter: (event: MouseEvent) => {
474
+ console.log('Mouse entered popover', event);
475
+ },
476
+ onLeave: (event: MouseEvent) => {
477
+ console.log('Mouse left popover', event);
478
+ },
479
+ },
480
+ }),
481
+ };
482
+
483
+ export const CustomContent: Story = {
484
+ args: {
485
+ node: createMockNode('section-i-row-3-seat-15', AppNodes.Seat),
486
+ theme: 'theme-sdc',
487
+ },
488
+ render: args => ({
489
+ props: args,
490
+ template: `
491
+ <div style="padding: 2rem; background: #f5f5f5; min-height: 400px; display: flex; align-items: center; justify-content: center;">
492
+ <sdc-map-popover [node]="node" [theme]="theme">
493
+ <div slot="content" style="text-align: center; padding: 0.5rem;">
494
+ <h4 style="color: #fff; margin: 0 0 0.5rem 0; font-size: 0.875rem;">PREMIUM SEAT</h4>
495
+ <p style="color: #ccc; margin: 0; font-size: 0.75rem;">VIP Experience</p>
496
+ <div style="margin-top: 0.5rem;">
497
+ <span style="background: #f39c12; color: #000; padding: 0.25rem 0.5rem; border-radius: 4px; font-size: 0.75rem; font-weight: bold;">EXCLUSIVE</span>
498
+ </div>
499
+ </div>
500
+ </sdc-map-popover>
501
+ </div>
502
+ `,
503
+ }),
504
+ };
505
+
506
+ export const CustomThumbnail: Story = {
507
+ args: {
508
+ node: createMockNode('section-j-row-2-seat-8', AppNodes.Seat),
509
+ theme: 'theme-sdc',
510
+ },
511
+ render: args => ({
512
+ props: args,
513
+ template: `
514
+ <div style="padding: 2rem; background: #f5f5f5; min-height: 400px; display: flex; align-items: center; justify-content: center;">
515
+ <sdc-map-popover [node]="node" [theme]="theme">
516
+ <div slot="thumbnail" style="width: 100%; height: 124px; background: linear-gradient(45deg, #667eea 0%, #764ba2 100%); display: flex; align-items: center; justify-content: center; color: white; font-weight: bold; font-size: 1.2rem;">
517
+ CUSTOM VIEW
518
+ </div>
519
+ </sdc-map-popover>
520
+ </div>
521
+ `,
522
+ }),
523
+ };
524
+
525
+ export const CustomPrice: Story = {
526
+ args: {
527
+ node: createMockNode('section-k-row-4-seat-12', AppNodes.Seat),
528
+ theme: 'theme-sdc',
529
+ },
530
+ render: args => ({
531
+ props: args,
532
+ template: `
533
+ <div style="padding: 2rem; background: #f5f5f5; min-height: 400px; display: flex; align-items: center; justify-content: center;">
534
+ <sdc-map-popover [node]="node" [theme]="theme">
535
+ <div slot="price" style="text-align: center; padding: 0.5rem;">
536
+ <div style="display: flex; flex-direction: column; gap: 0.25rem;">
537
+ <span style="color: #f39c12; font-size: 0.75rem; font-weight: bold;">SPECIAL OFFER</span>
538
+ <span style="color: #fff; font-size: 1rem; font-weight: bold;">$99.99</span>
539
+ <span style="color: #ccc; font-size: 0.625rem; text-decoration: line-through;">$149.99</span>
540
+ </div>
541
+ </div>
542
+ </sdc-map-popover>
543
+ </div>
544
+ `,
545
+ }),
546
+ };
547
+
548
+ export const FullyCustom: Story = {
549
+ args: {
550
+ node: createMockNode('section-l-row-1-seat-5', AppNodes.Seat),
551
+ theme: 'theme-sdc',
552
+ },
553
+ render: args => ({
554
+ props: args,
555
+ template: `
556
+ <div style="padding: 2rem; background: #f5f5f5; min-height: 400px; display: flex; align-items: center; justify-content: center;">
557
+ <sdc-map-popover [node]="node" [theme]="theme">
558
+ <div slot="thumbnail" style="width: 100%; height: 124px; background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); display: flex; align-items: center; justify-content: center; color: white; font-weight: bold; font-size: 1.1rem; position: relative;">
559
+ <div style="position: absolute; top: 0.5rem; right: 0.5rem; background: #e74c3c; color: white; padding: 0.25rem 0.5rem; border-radius: 4px; font-size: 0.625rem; font-weight: bold;">HOT</div>
560
+ PREMIUM VIEW
561
+ </div>
562
+ <div slot="content" style="text-align: center; padding: 0.75rem;">
563
+ <h3 style="color: #f39c12; margin: 0 0 0.5rem 0; font-size: 1rem; font-weight: bold;">VIP SECTION</h3>
564
+ <p style="color: #ecf0f1; margin: 0.25rem 0; font-size: 0.875rem;">Row A • Seat 5</p>
565
+ <div style="margin: 0.5rem 0;">
566
+ <span style="background: #3498db; color: #fff; padding: 0.125rem 0.375rem; border-radius: 12px; font-size: 0.625rem; font-weight: 500; margin: 0 0.125rem;">VIP Access</span>
567
+ <span style="background: #e74c3c; color: #fff; padding: 0.125rem 0.375rem; border-radius: 12px; font-size: 0.625rem; font-weight: 500; margin: 0 0.125rem;">Premium View</span>
568
+ </div>
569
+ </div>
570
+ <div slot="price" style="text-align: center; padding: 0.75rem;">
571
+ <div style="display: flex; flex-direction: column; gap: 0.25rem;">
572
+ <span style="color: #f39c12; font-size: 0.75rem; font-weight: bold;">EXCLUSIVE PRICING</span>
573
+ <span style="color: #fff; font-size: 1.25rem; font-weight: bold;">$299.99</span>
574
+ <span style="color: #95a5a6; font-size: 0.625rem;">All amenities included</span>
575
+ </div>
576
+ </div>
577
+ </sdc-map-popover>
578
+ </div>
579
+ `,
580
+ }),
581
+ };
582
+
583
+ export const ContentProjectionExamples: Story = {
584
+ args: {
585
+ theme: 'theme-sdc',
586
+ },
587
+ render: args => ({
588
+ props: {
589
+ ...args,
590
+ defaultNode: createMockNode('section-default-row-1-seat-1', AppNodes.Seat),
591
+ customContentNode: createMockNode('section-content-row-2-seat-2', AppNodes.Seat),
592
+ customThumbnailNode: createMockNode('section-thumbnail-row-3-seat-3', AppNodes.Seat),
593
+ customPriceNode: createMockNode('section-price-row-4-seat-4', AppNodes.Seat),
594
+ fullyCustomNode: createMockNode('section-custom-row-5-seat-5', AppNodes.Seat),
595
+ },
596
+ template: `
597
+ <div style="padding: 2rem; background: #f5f5f5; min-height: 600px;">
598
+ <h3 style="margin-bottom: 2rem; text-align: center;">Content Projection Examples</h3>
599
+ <div style="display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 2rem; justify-items: center;">
600
+ <div style="text-align: center;">
601
+ <h4 style="margin-bottom: 1rem;">Default</h4>
602
+ <sdc-map-popover [node]="defaultNode" [theme]="theme"></sdc-map-popover>
603
+ </div>
604
+ <div style="text-align: center;">
605
+ <h4 style="margin-bottom: 1rem;">Custom Content</h4>
606
+ <sdc-map-popover [node]="customContentNode" [theme]="theme">
607
+ <div slot="content" style="text-align: center; padding: 0.5rem;">
608
+ <h4 style="color: #fff; margin: 0 0 0.5rem 0; font-size: 0.875rem;">CUSTOM</h4>
609
+ <p style="color: #ccc; margin: 0; font-size: 0.75rem;">Custom Content</p>
610
+ </div>
611
+ </sdc-map-popover>
612
+ </div>
613
+ <div style="text-align: center;">
614
+ <h4 style="margin-bottom: 1rem;">Custom Thumbnail</h4>
615
+ <sdc-map-popover [node]="customThumbnailNode" [theme]="theme">
616
+ <div slot="thumbnail" style="width: 100%; height: 124px; background: linear-gradient(45deg, #667eea 0%, #764ba2 100%); display: flex; align-items: center; justify-content: center; color: white; font-weight: bold;">
617
+ CUSTOM
618
+ </div>
619
+ </sdc-map-popover>
620
+ </div>
621
+ <div style="text-align: center;">
622
+ <h4 style="margin-bottom: 1rem;">Custom Price</h4>
623
+ <sdc-map-popover [node]="customPriceNode" [theme]="theme">
624
+ <div slot="price" style="text-align: center; padding: 0.5rem;">
625
+ <span style="color: #f39c12; font-size: 0.75rem; font-weight: bold;">SPECIAL</span>
626
+ <div style="color: #fff; font-size: 1rem; font-weight: bold;">$199.99</div>
627
+ </div>
628
+ </sdc-map-popover>
629
+ </div>
630
+ <div style="text-align: center;">
631
+ <h4 style="margin-bottom: 1rem;">Fully Custom</h4>
632
+ <sdc-map-popover [node]="fullyCustomNode" [theme]="theme">
633
+ <div slot="thumbnail" style="width: 100%; height: 124px; background: linear-gradient(135deg, #e74c3c 0%, #c0392b 100%); display: flex; align-items: center; justify-content: center; color: white; font-weight: bold;">
634
+ PREMIUM
635
+ </div>
636
+ <div slot="content" style="text-align: center; padding: 0.5rem;">
637
+ <h4 style="color: #f39c12; margin: 0; font-size: 0.875rem;">VIP EXPERIENCE</h4>
638
+ </div>
639
+ <div slot="price" style="text-align: center; padding: 0.5rem;">
640
+ <span style="color: #fff; font-size: 1rem; font-weight: bold;">$399.99</span>
641
+ </div>
642
+ </sdc-map-popover>
643
+ </div>
644
+ </div>
645
+ </div>
646
+ `,
647
+ }),
648
+ };
649
+
650
+ export const ServiceContentProjection: Story = {
651
+ args: {},
652
+ decorators: [
653
+ moduleMetadata({
654
+ imports: [StorybookWrapperComponent],
655
+ providers: [
656
+ { provide: CONFIGURATION_SERVICE, useValue: mockConfigurationService },
657
+ { provide: DVM_FORMATTER, useValue: mockDvmFormatter },
658
+ { provide: DVM_SERVICE, useValue: mockDvmService },
659
+ PopoverService,
660
+ ],
661
+ }),
662
+ applicationConfig({
663
+ providers: [provideHttpClient()],
664
+ }),
665
+ ],
666
+ render: () => ({
667
+ template: `<storybook-wrapper></storybook-wrapper>`,
668
+ }),
669
+ };
670
+
671
+ // Seat Popover Stories
672
+ export const seatPopoverMeta: Meta<SeatPopoverComponent> = {
673
+ title: 'DVM/Popover/Seat Popover',
674
+ component: SeatPopoverComponent,
675
+ parameters: {
676
+ layout: 'centered',
677
+ },
678
+ decorators: [
679
+ moduleMetadata({
680
+ imports: [SeatPopoverComponent],
681
+ providers: [{ provide: THUMBNAIL_PROVIDER, useValue: mockThumbnailProvider }],
682
+ }),
683
+ ],
684
+ argTypes: {
685
+ data: {
686
+ control: 'object',
687
+ description: 'Seat popover data',
688
+ },
689
+ showLoader: {
690
+ control: 'boolean',
691
+ description: 'Whether to show loading spinner',
692
+ },
693
+ mouseEnter: {
694
+ action: 'mouseEnter',
695
+ description: 'Mouse enter event',
696
+ },
697
+ mouseLeave: {
698
+ action: 'mouseLeave',
699
+ description: 'Mouse leave event',
700
+ },
701
+ },
702
+ };
703
+ type SeatPopoverStory = StoryObj<SeatPopoverComponent>;
704
+
705
+ export const SeatPopoverDefault: SeatPopoverStory = {
706
+ args: {
707
+ data: {
708
+ id: 'seat-123',
709
+ section: 'S_Section_A',
710
+ row: '10',
711
+ seat: 'S_Section_A-10-15',
712
+ price: 75.0,
713
+ thumbnail: 'https://via.placeholder.com/275x124/1a1a1a/ffffff?text=Seat+Thumbnail',
714
+ },
715
+ showLoader: true,
716
+ },
717
+ };
718
+
719
+ export const SeatPopoverWithoutThumbnail: SeatPopoverStory = {
720
+ args: {
721
+ data: {
722
+ id: 'seat-456',
723
+ section: 'S_Section_B',
724
+ row: '5',
725
+ seat: 'S_Section_B-5-8',
726
+ price: 95.0,
727
+ },
728
+ showLoader: true,
729
+ },
730
+ };
731
+
732
+ export const SeatPopoverNoLoader: SeatPopoverStory = {
733
+ args: {
734
+ data: {
735
+ id: 'seat-789',
736
+ section: 'S_Section_C',
737
+ row: '12',
738
+ seat: 'S_Section_C-12-20',
739
+ price: 65.0,
740
+ },
741
+ showLoader: false,
742
+ },
743
+ };
744
+
745
+ // Section Popover Stories
746
+ export const sectionPopoverMeta: Meta<SectionPopoverComponent> = {
747
+ title: 'DVM/Popover/Section Popover',
748
+ component: SectionPopoverComponent,
749
+ parameters: {
750
+ layout: 'centered',
751
+ },
752
+ decorators: [
753
+ moduleMetadata({
754
+ imports: [SectionPopoverComponent],
755
+ providers: [{ provide: THUMBNAIL_PROVIDER, useValue: mockThumbnailProvider }],
756
+ }),
757
+ ],
758
+ argTypes: {
759
+ data: {
760
+ control: 'object',
761
+ description: 'Section popover data',
762
+ },
763
+ showLoader: {
764
+ control: 'boolean',
765
+ description: 'Whether to show loading spinner',
766
+ },
767
+ showBestAvailable: {
768
+ control: 'boolean',
769
+ description: 'Whether to show Best Available button',
770
+ },
771
+ showOpenSeatMap: {
772
+ control: 'boolean',
773
+ description: 'Whether to show Open Seat Map button',
774
+ },
775
+ excludeSeatMapSections: {
776
+ control: 'object',
777
+ description: 'Sections to exclude from seat map button',
778
+ },
779
+ mouseEnter: {
780
+ action: 'mouseEnter',
781
+ description: 'Mouse enter event',
782
+ },
783
+ mouseLeave: {
784
+ action: 'mouseLeave',
785
+ description: 'Mouse leave event',
786
+ },
787
+ load3dView: {
788
+ action: 'load3dView',
789
+ description: 'Load 3D view event',
790
+ },
791
+ selectForBA: {
792
+ action: 'selectForBA',
793
+ description: 'Select for Best Available event',
794
+ },
795
+ openSeatMap: {
796
+ action: 'openSeatMap',
797
+ description: 'Open seat map event',
798
+ },
799
+ },
800
+ };
801
+
802
+ type SectionPopoverStory = StoryObj<SectionPopoverComponent>;
803
+
804
+ export const SectionPopoverDefault: SectionPopoverStory = {
805
+ args: {
806
+ data: {
807
+ id: 'section-123',
808
+ section: 'Section A',
809
+ priceRange: { min: 75, max: 95 },
810
+ availableQuantity: 25,
811
+ adaQuantity: 3,
812
+ thumbnail: 'https://via.placeholder.com/275x124/1a1a1a/ffffff?text=Section+Thumbnail',
813
+ type: 'section',
814
+ isSelectedForBA: false,
815
+ },
816
+ showLoader: true,
817
+ showBestAvailable: true,
818
+ showOpenSeatMap: true,
819
+ excludeSeatMapSections: ['S_BLCHADA', 'S_Bleacher'],
820
+ },
821
+ };
822
+
823
+ export const SectionPopoverWithBA: SectionPopoverStory = {
824
+ args: {
825
+ data: {
826
+ id: 'section-456',
827
+ section: 'Section B',
828
+ priceRange: { min: 85, max: 85 },
829
+ availableQuantity: 15,
830
+ adaQuantity: 2,
831
+ type: 'section',
832
+ isSelectedForBA: true,
833
+ },
834
+ showLoader: true,
835
+ showBestAvailable: true,
836
+ showOpenSeatMap: true,
837
+ },
838
+ };
839
+
840
+ export const SectionPopoverGeneralAdmission: SectionPopoverStory = {
841
+ args: {
842
+ data: {
843
+ id: 'section-ga',
844
+ section: 'S_Bleacher',
845
+ priceRange: { min: 45, max: 45 },
846
+ availableQuantity: 100,
847
+ adaQuantity: 10,
848
+ type: 'general_admission',
849
+ isSelectedForBA: false,
850
+ },
851
+ showLoader: true,
852
+ showBestAvailable: true,
853
+ showOpenSeatMap: false,
854
+ },
855
+ };
856
+
857
+ export const SectionPopoverExcludedSection: SectionPopoverStory = {
858
+ args: {
859
+ data: {
860
+ id: 'section-excluded',
861
+ section: 'S_BLCHADA',
862
+ priceRange: { min: 35, max: 35 },
863
+ availableQuantity: 50,
864
+ adaQuantity: 5,
865
+ type: 'section',
866
+ isSelectedForBA: false,
867
+ },
868
+ showLoader: true,
869
+ showBestAvailable: true,
870
+ showOpenSeatMap: true,
871
+ excludeSeatMapSections: ['S_BLCHADA', 'S_Bleacher'],
872
+ },
873
+ };