scb-wc 0.1.3 → 0.1.4

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 (339) hide show
  1. package/README.md +194 -164
  2. package/all.js +91 -5
  3. package/blazor/CustomEvents.cs +83 -0
  4. package/blazor/ScbBlazorInteropBase.cs +4460 -1674
  5. package/blazor/scb-blazor-bridge.js +6827 -2805
  6. package/blazor/wrappers/ScbAccordion.razor +50 -0
  7. package/blazor/wrappers/ScbAppBar.razor +95 -0
  8. package/blazor/wrappers/ScbBreadcrumb.razor +59 -0
  9. package/blazor/wrappers/ScbCalendar.razor +100 -0
  10. package/blazor/wrappers/ScbCalendarCard.razor +189 -0
  11. package/blazor/wrappers/ScbCheckbox.razor +92 -0
  12. package/blazor/wrappers/ScbCollapse.razor +76 -0
  13. package/blazor/wrappers/ScbCookiesConsent.razor +106 -0
  14. package/blazor/wrappers/ScbDatepicker.razor +77 -0
  15. package/blazor/wrappers/ScbDialog.razor +72 -0
  16. package/blazor/wrappers/ScbDrawer.razor +64 -0
  17. package/blazor/wrappers/ScbDropZone.razor +168 -0
  18. package/blazor/wrappers/ScbDropdown.razor +76 -0
  19. package/blazor/wrappers/ScbHorizontalScroller.razor +137 -0
  20. package/blazor/wrappers/ScbList.razor +77 -0
  21. package/blazor/wrappers/ScbMenu.razor +71 -0
  22. package/blazor/wrappers/ScbNav.razor +92 -0
  23. package/blazor/wrappers/ScbNotificationCard.razor +122 -0
  24. package/blazor/wrappers/ScbOptionsMenu.razor +88 -0
  25. package/blazor/wrappers/ScbPagination.razor +80 -0
  26. package/blazor/wrappers/ScbRadioGroup.razor +94 -0
  27. package/blazor/wrappers/ScbSearch.razor +83 -0
  28. package/blazor/wrappers/ScbSegmentedButton.razor +85 -0
  29. package/blazor/wrappers/ScbSelect.razor +79 -0
  30. package/blazor/wrappers/ScbSlider.razor +96 -0
  31. package/blazor/wrappers/ScbSnackbar.razor +93 -0
  32. package/blazor/wrappers/ScbSwitch.razor +92 -0
  33. package/blazor/wrappers/ScbTable.razor +67 -0
  34. package/blazor/wrappers/ScbTableAdvanced.razor +78 -0
  35. package/blazor/wrappers/ScbTabs.razor +55 -0
  36. package/blazor/wrappers/ScbTextfield.razor +104 -0
  37. package/blazor/wrappers/ScbTooltip.razor +88 -0
  38. package/blazor/wrappers/ScbViz.razor +142 -0
  39. package/demo-data-preview.svg +12 -0
  40. package/dummy.png +0 -0
  41. package/fonts/inter/files/inter-latin-wght-italic.woff2 +0 -0
  42. package/fonts/inter/files/inter-latin-wght-normal.woff2 +0 -0
  43. package/fonts/material-symbols-outlined/files/material-symbols-outlined-latin-wght-normal.woff2 +0 -0
  44. package/index.js +91 -1
  45. package/mvc/components/all.js +90 -1
  46. package/mvc/components/scb-accordion/scb-accordion-item.js +211 -0
  47. package/mvc/components/scb-accordion/scb-accordion.js +44 -0
  48. package/mvc/components/scb-app-bar/scb-app-bar.js +166 -0
  49. package/mvc/components/scb-avatar/scb-avatar.js +111 -0
  50. package/mvc/components/scb-badge/scb-badge.js +80 -0
  51. package/mvc/components/scb-breadcrumb/scb-breadcrumb-item.js +14 -0
  52. package/mvc/components/scb-breadcrumb/scb-breadcrumb.js +96 -0
  53. package/mvc/components/scb-button/scb-button.js +268 -0
  54. package/mvc/components/scb-calendar/scb-calendar-event.js +6 -0
  55. package/mvc/components/scb-calendar/scb-calendar.js +168 -0
  56. package/mvc/components/scb-calendar-card/scb-calendar-card.js +346 -0
  57. package/mvc/components/scb-card/scb-card.js +761 -0
  58. package/mvc/components/scb-checkbox/scb-checkbox-group.js +33 -0
  59. package/mvc/components/scb-checkbox/scb-checkbox.js +140 -0
  60. package/mvc/components/scb-chevron/scb-chevron.js +121 -0
  61. package/mvc/components/scb-chip/scb-chip.js +66 -0
  62. package/mvc/components/scb-collapse/scb-collapse.js +89 -0
  63. package/mvc/components/scb-cookies-consent/scb-cookies-consent.js +78 -0
  64. package/mvc/components/scb-datepicker/scb-datepicker.js +296 -0
  65. package/mvc/components/scb-dialog/scb-dialog.js +265 -0
  66. package/mvc/components/scb-divider/scb-divider.js +69 -0
  67. package/mvc/components/scb-drawer/scb-drawer.js +128 -0
  68. package/mvc/components/scb-drop-zone/scb-drop-zone.js +555 -0
  69. package/mvc/components/scb-dropdown/scb-dropdown.js +306 -0
  70. package/mvc/components/scb-fab/scb-fab.js +108 -0
  71. package/mvc/components/scb-fact-card/scb-fact-card-content.js +46 -0
  72. package/mvc/components/scb-fact-card/scb-fact-card.js +226 -0
  73. package/mvc/components/scb-footer/scb-footer-section.js +3 -0
  74. package/mvc/components/scb-footer/scb-footer.js +210 -0
  75. package/mvc/components/scb-gallery-grid/scb-gallery-grid.js +131 -0
  76. package/mvc/components/scb-grid/scb-grid-item.js +11 -0
  77. package/mvc/components/scb-grid/scb-grid.js +98 -0
  78. package/mvc/components/scb-grid/scb-stack.js +33 -0
  79. package/mvc/components/scb-header/scb-header-menu-group.js +1 -0
  80. package/mvc/components/scb-header/scb-header-menu-item.js +5 -0
  81. package/mvc/components/scb-header/scb-header-tab.js +5 -0
  82. package/mvc/components/scb-header/scb-header-utility.js +1 -0
  83. package/mvc/components/scb-header/scb-header.js +681 -0
  84. package/mvc/components/scb-horizontal-scroller/scb-horizontal-scroller.js +196 -0
  85. package/mvc/components/scb-icon-button/scb-icon-button.js +171 -0
  86. package/mvc/components/scb-keyfigure-card/scb-keyfigure-card.js +212 -0
  87. package/mvc/components/scb-link/scb-link.js +61 -0
  88. package/mvc/components/scb-list/scb-list-item.js +153 -0
  89. package/mvc/components/scb-list/scb-list.js +26 -0
  90. package/mvc/components/scb-menu/scb-menu-item.js +205 -0
  91. package/mvc/components/scb-menu/scb-menu-section.js +42 -0
  92. package/mvc/components/scb-menu/scb-menu.js +81 -0
  93. package/mvc/components/scb-menu/scb-sub-menu.js +10 -0
  94. package/mvc/components/scb-nav/scb-nav-item.js +28 -0
  95. package/mvc/components/scb-nav/scb-nav.js +104 -0
  96. package/mvc/components/scb-notification-card/scb-notification-card.js +358 -0
  97. package/mvc/components/scb-options-menu/scb-options-menu-item.js +66 -0
  98. package/mvc/components/scb-options-menu/scb-options-menu.js +88 -0
  99. package/mvc/components/scb-options-menu/scb-options-sub-menu.js +34 -0
  100. package/mvc/components/scb-overlay/scb-overlay.js +49 -0
  101. package/mvc/components/scb-pagination/scb-pagination.js +312 -0
  102. package/mvc/components/scb-progress-indicator/scb-progress-indicator.js +87 -0
  103. package/mvc/components/scb-progress-stepper/scb-progress-step.js +147 -0
  104. package/mvc/components/scb-progress-stepper/scb-progress-stepper.js +62 -0
  105. package/mvc/components/scb-radio-button/scb-radio-button.js +132 -0
  106. package/mvc/components/scb-radio-button/scb-radio-group.js +43 -0
  107. package/mvc/components/scb-scrollspy/scb-scrollspy.js +79 -0
  108. package/mvc/components/scb-search/scb-search.js +292 -0
  109. package/mvc/components/scb-segmented-button/scb-segmented-button.js +32 -0
  110. package/mvc/components/scb-segmented-button/scb-segmented-item.js +74 -0
  111. package/mvc/components/scb-select/scb-select-option.js +61 -0
  112. package/mvc/components/scb-select/scb-select.js +284 -0
  113. package/mvc/components/scb-skeleton/scb-skeleton.js +38 -0
  114. package/mvc/components/scb-slider/scb-slider.js +27 -0
  115. package/mvc/components/scb-snackbar/scb-snackbar.js +128 -0
  116. package/mvc/components/scb-status-pill/scb-status-pill.js +45 -0
  117. package/mvc/components/scb-stepper/scb-step.js +239 -0
  118. package/mvc/components/scb-stepper/scb-stepper.js +139 -0
  119. package/mvc/components/scb-switch/scb-switch.js +59 -0
  120. package/mvc/components/scb-table/scb-table.js +51 -0
  121. package/mvc/components/scb-table-advanced/scb-table-advanced.js +76 -0
  122. package/mvc/components/scb-tabs/scb-primary-tab.js +6 -0
  123. package/mvc/components/scb-tabs/scb-secondary-tab.js +6 -0
  124. package/mvc/components/scb-tabs/scb-tabs.js +28 -0
  125. package/mvc/components/scb-textfield/scb-textfield.js +595 -0
  126. package/mvc/components/scb-toc/scb-toc-item.js +303 -0
  127. package/mvc/components/scb-toc/scb-toc.js +19 -0
  128. package/mvc/components/scb-tooltip/scb-tooltip.js +196 -0
  129. package/mvc/components/scb-vignette/scb-vignette.js +37 -0
  130. package/mvc/components/scb-viz/scb-viz-actions-runtime.js +2 -0
  131. package/mvc/components/scb-viz/scb-viz-print-runtime.js +98 -0
  132. package/mvc/components/scb-viz/scb-viz-series-differentiation-registry.js +1 -0
  133. package/mvc/components/scb-viz/scb-viz-series-differentiation-runtime.js +1 -0
  134. package/mvc/components/scb-viz/scb-viz-table-runtime.js +1 -0
  135. package/mvc/components/scb-viz/scb-viz.js +1140 -0
  136. package/mvc/fonts/inter/files/inter-latin-wght-italic.woff2 +0 -0
  137. package/mvc/fonts/inter/files/inter-latin-wght-normal.woff2 +0 -0
  138. package/mvc/fonts/material-symbols-outlined/files/material-symbols-outlined-latin-wght-normal.woff2 +0 -0
  139. package/mvc/scb-blazor-bridge.js +6827 -2805
  140. package/mvc/scb-logo.svg +20 -20
  141. package/mvc/scb-typography.css +1 -1
  142. package/mvc/scb-wc.css +3 -2
  143. package/mvc/scb.svg +13 -13
  144. package/mvc/vendor/assertClassBrand.js +1 -0
  145. package/mvc/vendor/classPrivateFieldGet2.js +1 -0
  146. package/mvc/vendor/decorate.js +1 -0
  147. package/mvc/vendor/preload-helper.js +1 -0
  148. package/mvc/vendor/vendor-lit.js +1 -0
  149. package/mvc/vendor/vendor-material.js +364 -0
  150. package/mvc/vendor/vendor.js +4 -0
  151. package/package.json +420 -77
  152. package/scb-accordion/scb-accordion-item.js +340 -0
  153. package/scb-accordion/scb-accordion.js +151 -0
  154. package/scb-app-bar/scb-app-bar.js +317 -0
  155. package/scb-avatar/scb-avatar.js +197 -0
  156. package/scb-badge/scb-badge.js +165 -0
  157. package/scb-breadcrumb/scb-breadcrumb-item.js +62 -0
  158. package/scb-breadcrumb/scb-breadcrumb.js +255 -0
  159. package/scb-button/scb-button.js +398 -0
  160. package/scb-calendar/scb-calendar-event.js +48 -0
  161. package/scb-calendar/scb-calendar.js +700 -0
  162. package/scb-calendar-card/scb-calendar-card.js +505 -0
  163. package/scb-card/scb-card.js +1231 -0
  164. package/scb-checkbox/scb-checkbox-group.js +104 -0
  165. package/scb-checkbox/scb-checkbox.js +316 -0
  166. package/scb-chevron/scb-chevron.js +144 -0
  167. package/scb-chip/scb-chip.js +234 -0
  168. package/scb-collapse/scb-collapse.js +231 -0
  169. package/scb-cookies-consent/scb-cookies-consent.js +164 -0
  170. package/scb-datepicker/scb-datepicker.js +470 -0
  171. package/scb-dialog/scb-dialog.js +574 -0
  172. package/scb-divider/scb-divider.js +119 -0
  173. package/scb-drawer/scb-drawer.js +297 -0
  174. package/scb-drop-zone/scb-drop-zone.js +965 -0
  175. package/scb-dropdown/scb-dropdown.js +598 -0
  176. package/scb-fab/scb-fab.js +190 -0
  177. package/scb-fact-card/scb-fact-card-content.js +82 -0
  178. package/scb-fact-card/scb-fact-card.js +376 -0
  179. package/scb-footer/scb-footer-section.js +23 -0
  180. package/scb-footer/scb-footer.js +343 -0
  181. package/scb-gallery-grid/scb-gallery-grid.js +242 -0
  182. package/scb-grid/scb-grid-item.js +81 -0
  183. package/scb-grid/scb-grid.js +200 -0
  184. package/scb-grid/scb-stack.js +120 -0
  185. package/scb-header/scb-header-menu-group.js +21 -0
  186. package/scb-header/scb-header-menu-item.js +22 -0
  187. package/scb-header/scb-header-tab.js +25 -0
  188. package/scb-header/scb-header-utility.js +27 -0
  189. package/scb-header/scb-header.js +1358 -0
  190. package/scb-horizontal-scroller/scb-horizontal-scroller.js +353 -0
  191. package/scb-icon-button/scb-icon-button.js +335 -0
  192. package/scb-keyfigure-card/scb-keyfigure-card.js +340 -0
  193. package/scb-link/scb-link.js +136 -0
  194. package/scb-list/scb-list-item.js +297 -0
  195. package/scb-list/scb-list.js +119 -0
  196. package/scb-menu/scb-menu-item.js +330 -0
  197. package/scb-menu/scb-menu-section.js +60 -0
  198. package/scb-menu/scb-menu.js +154 -0
  199. package/scb-menu/scb-sub-menu.js +36 -0
  200. package/scb-nav/scb-nav-item.js +96 -0
  201. package/scb-nav/scb-nav.js +263 -0
  202. package/scb-notification-card/scb-notification-card.js +479 -0
  203. package/scb-options-menu/scb-options-menu-item.js +218 -0
  204. package/scb-options-menu/scb-options-menu.js +237 -0
  205. package/scb-options-menu/scb-options-sub-menu.js +69 -0
  206. package/scb-overlay/scb-overlay.js +144 -0
  207. package/scb-pagination/scb-pagination.js +438 -0
  208. package/scb-progress-indicator/scb-progress-indicator.js +199 -0
  209. package/scb-progress-stepper/scb-progress-step.js +213 -0
  210. package/scb-progress-stepper/scb-progress-stepper.js +132 -0
  211. package/scb-radio-button/scb-radio-button.js +249 -0
  212. package/scb-radio-button/scb-radio-group.js +216 -0
  213. package/scb-scrollspy/scb-scrollspy.js +670 -0
  214. package/scb-search/scb-search.js +643 -0
  215. package/scb-segmented-button/scb-segmented-button.js +215 -0
  216. package/scb-segmented-button/scb-segmented-item.js +133 -0
  217. package/scb-select/scb-select-option.js +88 -0
  218. package/scb-select/scb-select.js +517 -0
  219. package/scb-skeleton/scb-skeleton.js +92 -0
  220. package/scb-slider/scb-slider.js +98 -0
  221. package/scb-snackbar/scb-snackbar.js +223 -0
  222. package/scb-status-pill/scb-status-pill.js +100 -0
  223. package/scb-stepper/scb-step.js +311 -0
  224. package/scb-stepper/scb-stepper.js +325 -0
  225. package/scb-switch/scb-switch.js +182 -0
  226. package/scb-table/scb-table.js +202 -0
  227. package/scb-table-advanced/scb-table-advanced.js +327 -0
  228. package/scb-tabs/scb-primary-tab.js +68 -0
  229. package/scb-tabs/scb-secondary-tab.js +68 -0
  230. package/scb-tabs/scb-tabs.js +100 -0
  231. package/scb-test-components/index.d.ts +90 -0
  232. package/scb-test-components/scb-accordion/scb-accordion-item.d.ts +39 -0
  233. package/scb-test-components/scb-accordion/scb-accordion.d.ts +27 -0
  234. package/scb-test-components/scb-app-bar/scb-app-bar.d.ts +25 -0
  235. package/scb-test-components/scb-avatar/scb-avatar.d.ts +37 -0
  236. package/scb-test-components/scb-badge/scb-badge.d.ts +28 -0
  237. package/scb-test-components/scb-breadcrumb/scb-breadcrumb-item.d.ts +15 -0
  238. package/scb-test-components/scb-breadcrumb/scb-breadcrumb.d.ts +27 -0
  239. package/scb-test-components/scb-button/scb-button.d.ts +40 -0
  240. package/scb-test-components/scb-calendar/scb-calendar-event.d.ts +15 -0
  241. package/scb-test-components/scb-calendar/scb-calendar.d.ts +77 -0
  242. package/scb-test-components/scb-calendar-card/scb-calendar-card.d.ts +45 -0
  243. package/scb-test-components/scb-card/scb-card.d.ts +101 -0
  244. package/scb-test-components/scb-checkbox/scb-checkbox-group.d.ts +23 -0
  245. package/scb-test-components/scb-checkbox/scb-checkbox.d.ts +52 -0
  246. package/scb-test-components/scb-chevron/scb-chevron.d.ts +13 -0
  247. package/scb-test-components/scb-chip/scb-chip.d.ts +61 -0
  248. package/scb-test-components/scb-collapse/scb-collapse.d.ts +29 -0
  249. package/scb-test-components/scb-cookies-consent/scb-cookies-consent.d.ts +23 -0
  250. package/scb-test-components/scb-datepicker/scb-datepicker.d.ts +39 -0
  251. package/scb-test-components/scb-dialog/scb-dialog.d.ts +72 -0
  252. package/scb-test-components/scb-divider/scb-divider.d.ts +34 -0
  253. package/scb-test-components/scb-drawer/scb-drawer.d.ts +72 -0
  254. package/scb-test-components/scb-drop-zone/scb-drop-zone.d.ts +143 -0
  255. package/scb-test-components/scb-dropdown/scb-dropdown.d.ts +70 -0
  256. package/scb-test-components/scb-fab/scb-fab.d.ts +42 -0
  257. package/scb-test-components/scb-fact-card/scb-fact-card-content.d.ts +15 -0
  258. package/scb-test-components/scb-fact-card/scb-fact-card.d.ts +49 -0
  259. package/scb-test-components/scb-footer/scb-footer-section.d.ts +20 -0
  260. package/scb-test-components/scb-footer/scb-footer.d.ts +31 -0
  261. package/scb-test-components/scb-gallery-grid/scb-gallery-grid.d.ts +20 -0
  262. package/scb-test-components/scb-grid/scb-grid-item.d.ts +32 -0
  263. package/scb-test-components/scb-grid/scb-grid.d.ts +36 -0
  264. package/scb-test-components/scb-grid/scb-stack.d.ts +32 -0
  265. package/scb-test-components/scb-header/scb-header-menu-group.d.ts +12 -0
  266. package/scb-test-components/scb-header/scb-header-menu-item.d.ts +13 -0
  267. package/scb-test-components/scb-header/scb-header-tab.d.ts +13 -0
  268. package/scb-test-components/scb-header/scb-header-utility.d.ts +14 -0
  269. package/scb-test-components/scb-header/scb-header.d.ts +132 -0
  270. package/scb-test-components/scb-horizontal-scroller/scb-horizontal-scroller.d.ts +47 -0
  271. package/scb-test-components/scb-icon-button/scb-icon-button.d.ts +76 -0
  272. package/scb-test-components/scb-keyfigure-card/scb-keyfigure-card.d.ts +46 -0
  273. package/scb-test-components/scb-link/scb-link.d.ts +25 -0
  274. package/scb-test-components/scb-list/scb-list-item.d.ts +38 -0
  275. package/scb-test-components/scb-list/scb-list.d.ts +26 -0
  276. package/scb-test-components/scb-menu/scb-menu-item.d.ts +52 -0
  277. package/scb-test-components/scb-menu/scb-menu-section.d.ts +11 -0
  278. package/scb-test-components/scb-menu/scb-menu.d.ts +25 -0
  279. package/scb-test-components/scb-menu/scb-sub-menu.d.ts +14 -0
  280. package/scb-test-components/scb-nav/scb-nav-item.d.ts +20 -0
  281. package/scb-test-components/scb-nav/scb-nav.d.ts +50 -0
  282. package/scb-test-components/scb-notification-card/scb-notification-card.d.ts +46 -0
  283. package/scb-test-components/scb-options-menu/scb-options-menu-item.d.ts +29 -0
  284. package/scb-test-components/scb-options-menu/scb-options-menu.d.ts +35 -0
  285. package/scb-test-components/scb-options-menu/scb-options-sub-menu.d.ts +11 -0
  286. package/scb-test-components/scb-overlay/scb-overlay.d.ts +24 -0
  287. package/scb-test-components/scb-pagination/scb-pagination.d.ts +36 -0
  288. package/scb-test-components/scb-progress-indicator/scb-progress-indicator.d.ts +28 -0
  289. package/scb-test-components/scb-progress-stepper/scb-progress-step.d.ts +21 -0
  290. package/scb-test-components/scb-progress-stepper/scb-progress-stepper.d.ts +22 -0
  291. package/scb-test-components/scb-radio-button/scb-radio-button.d.ts +26 -0
  292. package/scb-test-components/scb-radio-button/scb-radio-group.d.ts +49 -0
  293. package/scb-test-components/scb-scrollspy/scb-scrollspy.d.ts +217 -0
  294. package/scb-test-components/scb-search/scb-search.d.ts +96 -0
  295. package/scb-test-components/scb-segmented-button/scb-segmented-button.d.ts +80 -0
  296. package/scb-test-components/scb-segmented-button/scb-segmented-item.d.ts +21 -0
  297. package/scb-test-components/scb-select/scb-select-option.d.ts +16 -0
  298. package/scb-test-components/scb-select/scb-select.d.ts +62 -0
  299. package/scb-test-components/scb-skeleton/scb-skeleton.d.ts +25 -0
  300. package/scb-test-components/scb-slider/scb-slider.d.ts +28 -0
  301. package/scb-test-components/scb-snackbar/scb-snackbar.d.ts +24 -0
  302. package/scb-test-components/scb-status-pill/scb-status-pill.d.ts +22 -0
  303. package/scb-test-components/scb-stepper/scb-step.d.ts +22 -0
  304. package/scb-test-components/scb-stepper/scb-stepper.d.ts +47 -0
  305. package/scb-test-components/scb-switch/scb-switch.d.ts +52 -0
  306. package/scb-test-components/scb-table/scb-table.d.ts +24 -0
  307. package/scb-test-components/scb-table-advanced/scb-table-advanced.d.ts +39 -0
  308. package/scb-test-components/scb-tabs/scb-primary-tab.d.ts +15 -0
  309. package/scb-test-components/scb-tabs/scb-secondary-tab.d.ts +15 -0
  310. package/scb-test-components/scb-tabs/scb-tabs.d.ts +21 -0
  311. package/scb-test-components/scb-textfield/scb-textfield.d.ts +75 -0
  312. package/scb-test-components/scb-toc/scb-toc-item.d.ts +38 -0
  313. package/scb-test-components/scb-toc/scb-toc.d.ts +27 -0
  314. package/scb-test-components/scb-tooltip/scb-tooltip.d.ts +51 -0
  315. package/scb-test-components/scb-vignette/scb-vignette.d.ts +20 -0
  316. package/scb-test-components/scb-viz/scb-viz-actions-runtime.d.ts +26 -0
  317. package/scb-test-components/scb-viz/scb-viz-print-runtime.d.ts +27 -0
  318. package/scb-test-components/scb-viz/scb-viz-series-differentiation-registry.d.ts +21 -0
  319. package/scb-test-components/scb-viz/scb-viz-series-differentiation-runtime.d.ts +42 -0
  320. package/scb-test-components/scb-viz/scb-viz-table-runtime.d.ts +28 -0
  321. package/scb-test-components/scb-viz/scb-viz.d.ts +207 -0
  322. package/scb-textfield/scb-textfield.js +827 -0
  323. package/scb-toc/scb-toc-item.js +477 -0
  324. package/scb-toc/scb-toc.js +101 -0
  325. package/scb-tooltip/scb-tooltip.js +402 -0
  326. package/scb-typography.css +1 -1
  327. package/scb-vignette/scb-vignette.js +88 -0
  328. package/scb-viz/scb-viz-actions-runtime.js +143 -0
  329. package/scb-viz/scb-viz-print-runtime.js +121 -0
  330. package/scb-viz/scb-viz-series-differentiation-registry.js +117 -0
  331. package/scb-viz/scb-viz-series-differentiation-runtime.js +126 -0
  332. package/scb-viz/scb-viz-table-runtime.js +86 -0
  333. package/scb-viz/scb-viz.js +2195 -0
  334. package/scb-wc-selfhost.css +29 -0
  335. package/scb-wc.bundle.js +12893 -1099
  336. package/scb-wc.css +3 -2
  337. package/scb-wc.d.ts +180 -0
  338. package/index.d.ts +0 -0
  339. package/mvc/components/index.js +0 -1
@@ -0,0 +1,470 @@
1
+ import { __decorate as e } from "../_virtual/_@oxc-project_runtime@0.126.0/helpers/decorate.js";
2
+ import "../scb-button/scb-button.js";
3
+ import "../scb-icon-button/scb-icon-button.js";
4
+ import "../scb-divider/scb-divider.js";
5
+ import { LitElement as t, css as n, html as r } from "lit";
6
+ import { customElement as i, property as a, state as o } from "lit/decorators.js";
7
+ import "@material/web/focus/md-focus-ring.js";
8
+ import "@material/web/icon/icon.js";
9
+ import "@material/web/ripple/ripple.js";
10
+ //#region src/scb-test-components/scb-datepicker/scb-datepicker.ts
11
+ var s = class extends t {
12
+ constructor(...e) {
13
+ super(...e), this._currentDate = /* @__PURE__ */ new Date(), this._selectedDate = null, this._showMonthDropdown = !1, this._showYearDropdown = !1, this.variant = "date", this.lang = "sv", this.selectedValue = "", this.open = !0, this._selectedHour = 0, this._selectedMinute = 0, this._viewportMargin = 8, this._popupOffset = 4, this._onWindowReposition = () => {
14
+ this._positionPopupWithinViewport();
15
+ }, this._monthNames = [
16
+ this.lang == "sv" ? "Januari" : "January",
17
+ this.lang == "sv" ? "Februari" : "February",
18
+ this.lang == "sv" ? "Mars" : "March",
19
+ (this.lang, "April"),
20
+ this.lang == "sv" ? "Maj" : "May",
21
+ this.lang == "sv" ? "Juni" : "June",
22
+ this.lang == "sv" ? "Juli" : "July",
23
+ this.lang == "sv" ? "Augusti" : "August",
24
+ (this.lang, "September"),
25
+ this.lang == "sv" ? "Oktober" : "October",
26
+ (this.lang, "November"),
27
+ (this.lang, "December")
28
+ ], this._outsideClickHandler = (e) => {
29
+ this.open && (e.composedPath().includes(this) || this._close());
30
+ }, this._prevMonth = () => {
31
+ let e = this._currentDate.getFullYear(), t = this._currentDate.getMonth();
32
+ t === 0 ? this._currentDate = new Date(e - 1, 11, 1) : this._currentDate = new Date(e, t - 1, 1);
33
+ }, this._prevYear = () => {
34
+ let e = this._currentDate.getFullYear(), t = this._currentDate.getMonth();
35
+ this._currentDate = new Date(e - 1, t, 1);
36
+ }, this._nextMonth = () => {
37
+ let e = this._currentDate.getFullYear(), t = this._currentDate.getMonth();
38
+ t === 11 ? this._currentDate = new Date(e + 1, 0, 1) : this._currentDate = new Date(e, t + 1, 1);
39
+ }, this._nextYear = () => {
40
+ let e = this._currentDate.getFullYear(), t = this._currentDate.getMonth();
41
+ this._currentDate = new Date(e + 1, t, 1);
42
+ }, this._onTimeChange = (e) => {
43
+ let [t, n] = e.target.value.split(":"), r = parseInt(t, 10), i = parseInt(n, 10);
44
+ this._selectedHour = isNaN(r) ? 0 : Math.max(0, Math.min(23, r)), this._selectedMinute = isNaN(i) ? 0 : Math.max(0, Math.min(59, i)), this._fireDateTimeChange();
45
+ }, this._close = () => {
46
+ this.open = !1, this.dispatchEvent(new CustomEvent("datepicker-closed", {
47
+ bubbles: !0,
48
+ composed: !0
49
+ }));
50
+ };
51
+ }
52
+ _isRenderedInsideDialog() {
53
+ let e = this.getRootNode(), t = e instanceof ShadowRoot ? e.host : null;
54
+ return t instanceof HTMLElement && t.closest("scb-dialog") ? !0 : !!this.closest("scb-dialog");
55
+ }
56
+ _positionPopupWithinViewport() {
57
+ if (!this.open) return;
58
+ let e = this.renderRoot.querySelector(".datepicker-popup");
59
+ if (!e) return;
60
+ let t = this.parentElement?.getBoundingClientRect();
61
+ if (!t) return;
62
+ let n = window.innerWidth, r = window.innerHeight, i = Math.max(220, n - this._viewportMargin * 2);
63
+ if (this._isRenderedInsideDialog()) {
64
+ let a = Math.min(e.offsetWidth || 380, i), o = e.offsetHeight || 420, s = (n - a) / 2, c = (r - o) / 2, l = s - t.left, u = c - t.top;
65
+ this.style.setProperty("--scb-datepicker-position", "absolute"), this.style.setProperty("--scb-datepicker-top", `${u}px`), this.style.setProperty("--scb-datepicker-bottom", "auto"), this.style.setProperty("--scb-datepicker-left", `${l}px`), this.style.setProperty("--scb-datepicker-transform", "none"), this.style.setProperty("--scb-datepicker-computed-width", `${a}px`), this.style.setProperty("--scb-datepicker-max-height", `${Math.max(220, r - this._viewportMargin * 2)}px`);
66
+ return;
67
+ }
68
+ let a = Math.min(e.offsetWidth || 380, i), o = e.offsetHeight || 420, s = Math.min(Math.max(t.left, this._viewportMargin), n - this._viewportMargin - a) - t.left, c = r - t.bottom - this._viewportMargin, l = t.top - this._viewportMargin, u = c < o + this._popupOffset && l > c;
69
+ this.style.setProperty("--scb-datepicker-position", "absolute"), this.style.setProperty("--scb-datepicker-computed-width", `${a}px`), this.style.setProperty("--scb-datepicker-left", "0"), this.style.setProperty("--scb-datepicker-transform", `translateX(${s}px)`), u ? (this.style.setProperty("--scb-datepicker-top", "auto"), this.style.setProperty("--scb-datepicker-bottom", `calc(100% + ${this._popupOffset}px)`), this.style.setProperty("--scb-datepicker-max-height", `${Math.max(0, l - this._popupOffset)}px`)) : (this.style.setProperty("--scb-datepicker-top", `calc(100% + ${this._popupOffset}px)`), this.style.setProperty("--scb-datepicker-bottom", "auto"), this.style.setProperty("--scb-datepicker-max-height", `${Math.max(0, c - this._popupOffset)}px`));
70
+ }
71
+ static {
72
+ this.styles = [n`
73
+ :host {
74
+ --scb-datepicker-width: 380px;
75
+ --scb-datepicker-z-index: 1100;
76
+ --scb-datepicker-viewport-margin: 8px;
77
+ --scb-datepicker-offset: var(--spacing-2, 4px);
78
+ max-width: var(--scb-datepicker-computed-width, min(var(--scb-datepicker-width), calc(100vw - (var(--scb-datepicker-viewport-margin) * 2))));
79
+ font-family: var(--brand-font);
80
+ color: var(--md-sys-color-on-surface);
81
+ display: block;
82
+ position: var(--scb-datepicker-position, absolute);
83
+ top: var(--scb-datepicker-top, calc(100% + var(--scb-datepicker-offset)));
84
+ bottom: var(--scb-datepicker-bottom, auto);
85
+ left: var(--scb-datepicker-left, 0);
86
+ width: var(--scb-datepicker-computed-width, min(var(--scb-datepicker-width), calc(100vw - (var(--scb-datepicker-viewport-margin) * 2))));
87
+ transform: var(--scb-datepicker-transform, translateX(0px));
88
+ z-index: var(--scb-datepicker-z-index);
89
+ }
90
+ .month-selector, .year-selector {
91
+ display: flex;
92
+ align-items: center;
93
+ &.disable{
94
+ pointer-events: none;
95
+ opacity: 0.3;
96
+ scb-icon-button{
97
+ visibility: hidden;
98
+ }
99
+ }
100
+ &.open{
101
+ scb-icon-button{
102
+ visibility: hidden;
103
+ }
104
+ .dropdown-selected{
105
+ background: var(--md-sys-color-secondary-container);
106
+ }
107
+ }
108
+ }
109
+ .dropdown-selected {
110
+ position: relative;
111
+ border-radius: 8px;
112
+ font-size: 16px;
113
+ cursor: pointer;
114
+ text-align: left;
115
+ display: flex;
116
+ gap: 8px;
117
+ align-items: center;
118
+ padding: 4px 8px;
119
+ }
120
+ .dropdown-selected:focus {
121
+ outline: none;
122
+ }
123
+ .dropdown-selected md-focus-ring {
124
+ border-radius: 8px;
125
+ }
126
+ .dropdown-list {
127
+ position: relative;
128
+ background: var(--md-sys-color-surface);
129
+ padding: 4px 0;
130
+ }
131
+ .dropdown-item {
132
+ display: flex;
133
+ position: relative;
134
+ cursor: pointer;
135
+ padding: var(--spacing-3) 56px;
136
+ min-height: 40px;
137
+ align-items: center;
138
+ }
139
+ .dropdown-item:focus-within {
140
+ outline: none;
141
+ }
142
+ .dropdown-item md-focus-ring {
143
+ border-radius: var(--md-sys-shape-corner-small);
144
+ }
145
+ .dropdown-item.selected {
146
+ background: var(--md-sys-color-secondary-container, #e3f2fd);
147
+ font-weight: 500;
148
+ padding-left: 16px;
149
+ gap: 16px;
150
+ }
151
+ .datepicker-popup {
152
+ background: var(--md-sys-color-surface);
153
+ border-radius: var(--md-sys-shape-corner-small);
154
+ box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.30), 0 2px 6px 2px rgba(0, 0, 0, 0.15);
155
+ max-width: 100%;
156
+ width: 100%;
157
+ max-height: var(--scb-datepicker-max-height, 80vh);
158
+ overflow: auto;
159
+ font-family: var(--brand-font);
160
+ }
161
+ .datepicker-content{
162
+ overflow-y: auto;
163
+ max-height: 290px;
164
+ }
165
+ .datepicker-content::-webkit-scrollbar {
166
+ width: 12px;
167
+ background: var(--md-sys-color-surface);
168
+ border-radius: var(--md-sys-shape-corner-small);
169
+ }
170
+ .datepicker-content::-webkit-scrollbar-thumb {
171
+ background: var(--md-sys-color-outline);
172
+ border-radius: var(--md-sys-shape-corner-small);
173
+ border: 4px solid var(--md-sys-color-surface);
174
+
175
+ }
176
+ .datepicker-content::-webkit-scrollbar-track {
177
+ background: var(--md-sys-color-surface);
178
+ border-radius: var(--md-sys-shape-corner-small);
179
+ }
180
+ .popup {
181
+ position:absolute;
182
+ top:0;
183
+ left:0;
184
+ z-index:1;
185
+ }
186
+ .header {
187
+ display: flex;
188
+ align-items: center;
189
+ justify-content: space-between;
190
+ margin-bottom: 30px;
191
+ padding: 20px 16px 0px 16px;
192
+ flex-wrap: wrap;
193
+ }
194
+ .datepicker-footer{
195
+ padding: 8px 16px 24px 16px;
196
+ }
197
+ .month-label {
198
+ font-size: 18px;
199
+ font-weight: 500;
200
+ }
201
+ .datepicker-calendar{
202
+ padding: 0 16px;
203
+ }
204
+ table {
205
+ width: 100%;
206
+ border-collapse: collapse;
207
+ margin-bottom: 8px;
208
+ }
209
+ th {
210
+ color: var(--md-sys-color-on-surface-variant, #757575);
211
+ font-size: 16px;
212
+ font-weight: 600;
213
+ padding-bottom: 20px;
214
+ }
215
+ td {
216
+ text-align: center;
217
+ }
218
+
219
+ .day:focus-within{
220
+ outline: none;
221
+ }
222
+ .day {
223
+ position: relative;
224
+ width: 40px;
225
+ height: 40px;
226
+ border-radius: 50%;
227
+ border: none;
228
+ background: none;
229
+ font-size: 16px;
230
+ cursor: pointer;
231
+ font-family: 'Inter';
232
+ align-content: center;
233
+ }
234
+ .day.selected {
235
+ background: var(--md-sys-color-secondary-container);
236
+ }
237
+ .close-datepicker {
238
+ margin-top: 8px;
239
+ background: none;
240
+ border-color: none;
241
+ color: var(--md-sys-color-primary, #0057b8);
242
+ font-size: 16px;
243
+ cursor: pointer;
244
+ padding: 4px 12px;
245
+ border-radius: 8px;
246
+ }
247
+ .close-datepicker:hover {
248
+ background: var(--md-sys-color-primary-container, #e3f2fd);
249
+ }
250
+ `];
251
+ }
252
+ updated(e) {
253
+ if (super.updated(e), this.open ? (window.addEventListener("mousedown", this._outsideClickHandler), window.addEventListener("resize", this._onWindowReposition, { passive: !0 }), window.addEventListener("scroll", this._onWindowReposition, {
254
+ passive: !0,
255
+ capture: !0
256
+ }), requestAnimationFrame(() => this._positionPopupWithinViewport())) : (window.removeEventListener("mousedown", this._outsideClickHandler), window.removeEventListener("resize", this._onWindowReposition), window.removeEventListener("scroll", this._onWindowReposition, !0)), e.has("selectedValue") && this.selectedValue) {
257
+ let e = new Date(this.selectedValue);
258
+ isNaN(e.getTime()) || (this._selectedDate = e, this._currentDate = new Date(e.getFullYear(), e.getMonth(), 1), this.variant === "datetime-local" && (this._selectedHour = e.getHours(), this._selectedMinute = e.getMinutes()));
259
+ }
260
+ this.open && requestAnimationFrame(() => this._positionPopupWithinViewport());
261
+ }
262
+ disconnectedCallback() {
263
+ window.removeEventListener("mousedown", this._outsideClickHandler), window.removeEventListener("resize", this._onWindowReposition), window.removeEventListener("scroll", this._onWindowReposition, !0), super.disconnectedCallback();
264
+ }
265
+ render() {
266
+ if (!this.open) return r``;
267
+ let e = this._currentDate.getFullYear(), t = this._currentDate.getMonth(), n = /* @__PURE__ */ new Date(), i = this._getMonthDays(e, t), a = Array.from({ length: 101 }, (e, t) => n.getFullYear() - 50 + t), o = this.variant === "datetime-local" && !this._showMonthDropdown && !this._showYearDropdown;
268
+ return r`
269
+ <div class="datepicker-popup popup">
270
+ <div class="header">
271
+ <div class="month-selector ${this._showMonthDropdown ? "open" : ""} ${this._showYearDropdown ? "disable" : ""}">
272
+ <scb-icon-button icon="chevron_left" @click=${this._prevMonth} aria-label=${this.lang == "sv" ? "Föregående månad" : "Previous month"}></scb-icon-button>
273
+ <div class="custom-dropdown month-dropdown">
274
+ <div
275
+ tabindex=${this._showYearDropdown ? -1 : 0}
276
+ class="dropdown-selected"
277
+ @click=${() => this._toggleMonthDropdown()}
278
+ @keydown=${(e) => {
279
+ (e.key === "Enter" || e.key === " ") && (e.preventDefault(), this._toggleMonthDropdown());
280
+ }}
281
+ >
282
+ ${this._monthNames[t].slice(0, 3)}
283
+ <md-icon>arrow_drop_down</md-icon>
284
+ <md-focus-ring></md-focus-ring>
285
+ <md-ripple></md-ripple>
286
+ </div>
287
+ </div>
288
+ <scb-icon-button icon="chevron_right" @click=${this._nextMonth} aria-label=${this.lang == "sv" ? "Nästa månad" : "Next month"}></scb-icon-button>
289
+ </div>
290
+ <div class="year-selector ${this._showMonthDropdown ? "disable" : ""} ${this._showYearDropdown ? "open" : ""}">
291
+ <scb-icon-button icon="chevron_left" @click=${this._prevYear} aria-label=${this.lang == "sv" ? "Föregående år" : "Previous year"}></scb-icon-button>
292
+ <div class="custom-dropdown year-dropdown">
293
+ <div
294
+ tabindex=${this._showMonthDropdown ? -1 : 0}
295
+ class="dropdown-selected"
296
+ @click=${() => this._toggleYearDropdown()}
297
+ @keydown=${(e) => {
298
+ (e.key === "Enter" || e.key === " ") && (e.preventDefault(), this._toggleYearDropdown());
299
+ }}
300
+ >
301
+ ${e}
302
+ <md-icon>arrow_drop_down</md-icon>
303
+ <md-focus-ring></md-focus-ring>
304
+ <md-ripple></md-ripple>
305
+ </div>
306
+ </div>
307
+ <scb-icon-button icon="chevron_right" @click=${this._nextYear} aria-label=${this.lang == "sv" ? "Nästa år" : "Next year"}></scb-icon-button>
308
+ </div>
309
+ </div>
310
+ ${this._showMonthDropdown || this._showYearDropdown ? r`<scb-divider></scb-divider>` : ""}
311
+ <div class="datepicker-content" style="position:relative;">
312
+ ${this._showMonthDropdown ? r`
313
+ <div class="dropdown-list">
314
+ ${this._monthNames.map((e, n) => r`
315
+ <div
316
+ @keydown=${(e) => {
317
+ (e.key === "Enter" || e.key === " ") && (e.preventDefault(), this._onMonthChangeCustom(n));
318
+ }}
319
+ tabindex="0"
320
+ class="dropdown-item${n === t ? " selected" : ""}"
321
+ @click=${() => this._onMonthChangeCustom(n)}
322
+ id=${n === t ? "selected-month" : ""}
323
+ >
324
+ ${n === t ? r`<md-icon>check</md-icon>` : ""}
325
+ ${e}
326
+ <md-ripple></md-ripple><md-focus-ring inward></md-focus-ring>
327
+ </div>
328
+ `)}
329
+ </div>
330
+ ` : ""}
331
+ ${this._showYearDropdown ? r`
332
+ <div class="dropdown-list">
333
+ ${a.map((t) => r`
334
+ <div
335
+ @keydown=${(e) => {
336
+ (e.key === "Enter" || e.key === " ") && (e.preventDefault(), this._onYearChangeCustom(t));
337
+ }}
338
+ tabindex="0"
339
+ class="dropdown-item${t === e ? " selected" : ""}"
340
+ @click=${() => this._onYearChangeCustom(t)}
341
+ id=${t === e ? "selected-year" : ""}
342
+ >
343
+ ${t === e ? r`<md-icon>check</md-icon>` : ""}
344
+ ${t}
345
+ <md-ripple></md-ripple><md-focus-ring inward></md-focus-ring>
346
+ </div>
347
+ `)}
348
+ </div>
349
+ ` : ""}
350
+ ${!this._showMonthDropdown && !this._showYearDropdown ? r`
351
+ <div class="datepicker-calendar">
352
+ <table>
353
+ <thead>
354
+ <tr>
355
+ <th>${this.lang == "sv" ? "Må" : "Mo"}</th><th>${this.lang == "sv" ? "Ti" : "Tu"}</th><th>${this.lang == "sv" ? "On" : "We"}</th><th>${this.lang == "sv" ? "To" : "Th"}</th><th>${this.lang, "Fr"}</th><th>${this.lang == "sv" ? "Lö" : "Sa"}</th><th>${this.lang == "sv" ? "Sö" : "Su"}</th>
356
+ </tr>
357
+ </thead>
358
+ <tbody>
359
+ ${i.map((e) => r`
360
+ <tr>
361
+ ${e.map((e) => e ? r`
362
+ <td>
363
+ <div
364
+ @keydown=${(t) => {
365
+ (t.key === "Enter" || t.key === " ") && (t.preventDefault(), this._selectDate(e));
366
+ }}
367
+ role="button"
368
+ tabindex="0"
369
+ class="day${this._isToday(e, n) ? " today" : ""}${this._isSelected(e) ? " selected" : ""}"
370
+ @click=${() => this._selectDate(e)}
371
+ >${e.getDate()}<md-ripple></md-ripple><md-focus-ring></md-focus-ring></div>
372
+ </td>
373
+ ` : r`<td></td>`)}
374
+ </tr>
375
+ `)}
376
+ </tbody>
377
+ </table>
378
+ </div>
379
+ ` : ""}
380
+ </div>
381
+ ${o ? r`
382
+ <div style="padding: 0 24px;">
383
+ <label style="display:flex;align-items:center;gap:8px;">
384
+ <span>${this.lang == "sv" ? "Tid:" : "Time:"}</span>
385
+ <scb-textfield type="time" .value=${`${String(this._selectedHour).padStart(2, "0")}:${String(this._selectedMinute).padStart(2, "0")}`} @blur=${this._onTimeChange} aria-label="${this.lang == "sv" ? "Tid" : "Time"}"></scb-textfield>
386
+ </label>
387
+ </div>
388
+ ` : ""}
389
+ <div class="datepicker-footer">
390
+ ${!this._showMonthDropdown && !this._showYearDropdown ? r`
391
+ <scb-button variant="text" label=${this.lang == "sv" ? "Stäng" : "Close"} @click=${this._close}></scb-button>
392
+ ` : ""}
393
+ </div>
394
+ </div>
395
+ `;
396
+ }
397
+ _getMonthDays(e, t) {
398
+ let n = new Date(Date.UTC(e, t, 1)), r = new Date(Date.UTC(e, t + 1, 0)), i = [], a = [], o = n.getUTCDay(), s = o === 0 ? 6 : o - 1;
399
+ for (let e = 0; e < s; e++) a.push(null);
400
+ for (let n = 1; n <= r.getUTCDate(); n++) {
401
+ let r = new Date(Date.UTC(e, t, n));
402
+ a.push(r), a.length === 7 && (i.push(a), a = []);
403
+ }
404
+ if (a.length) {
405
+ for (; a.length < 7;) a.push(null);
406
+ i.push(a);
407
+ }
408
+ return i;
409
+ }
410
+ _toggleMonthDropdown() {
411
+ this._showMonthDropdown = !this._showMonthDropdown, this._showMonthDropdown && (this._showYearDropdown = !1, setTimeout(() => {
412
+ let e = this.renderRoot.querySelector("#selected-month");
413
+ e && e.scrollIntoView({ block: "center" });
414
+ }, 0));
415
+ }
416
+ _toggleYearDropdown() {
417
+ this._showYearDropdown = !this._showYearDropdown, this._showYearDropdown && (this._showMonthDropdown = !1, setTimeout(() => {
418
+ let e = this.renderRoot.querySelector("#selected-year");
419
+ e && e.scrollIntoView({ block: "center" });
420
+ }, 0));
421
+ }
422
+ _onMonthChangeCustom(e) {
423
+ let t = this._currentDate.getFullYear();
424
+ this._currentDate = new Date(t, e, 1), this._showMonthDropdown = !1;
425
+ }
426
+ _onYearChangeCustom(e) {
427
+ let t = this._currentDate.getMonth();
428
+ this._currentDate = new Date(e, t, 1), this._showYearDropdown = !1;
429
+ }
430
+ _isToday(e, t) {
431
+ return e.getDate() === t.getDate() && e.getMonth() === t.getMonth() && e.getFullYear() === t.getFullYear();
432
+ }
433
+ _isSelected(e) {
434
+ return this._selectedDate && e.getDate() === this._selectedDate.getDate() && e.getMonth() === this._selectedDate.getMonth() && e.getFullYear() === this._selectedDate.getFullYear();
435
+ }
436
+ _selectDate(e) {
437
+ if (this._selectedDate = e, this.variant === "datetime-local") {
438
+ let t = new Date(e);
439
+ t.setHours(this._selectedHour ?? 0, this._selectedMinute ?? 0, 0, 0), this._selectedHour = t.getHours(), this._selectedMinute = t.getMinutes();
440
+ let n = (e) => e.toString().padStart(2, "0"), r = `${t.getFullYear()}-${n(t.getMonth() + 1)}-${n(t.getDate())} ${n(t.getHours())}:${n(t.getMinutes())}`;
441
+ this.dispatchEvent(new CustomEvent("date-selected", {
442
+ detail: { value: r },
443
+ bubbles: !0,
444
+ composed: !0
445
+ }));
446
+ } else {
447
+ let t = e.toISOString().slice(0, 10);
448
+ this.dispatchEvent(new CustomEvent("date-selected", {
449
+ detail: { value: t },
450
+ bubbles: !0,
451
+ composed: !0
452
+ }));
453
+ }
454
+ }
455
+ _fireDateTimeChange() {
456
+ if (this.variant === "datetime-local" && this._selectedDate) {
457
+ let e = new Date(this._selectedDate);
458
+ e.setHours(this._selectedHour ?? 0, this._selectedMinute ?? 0, 0, 0);
459
+ let t = (e) => e.toString().padStart(2, "0"), n = `${e.getFullYear()}-${t(e.getMonth() + 1)}-${t(e.getDate())} ${t(e.getHours())}:${t(e.getMinutes())}`;
460
+ this.dispatchEvent(new CustomEvent("date-selected", {
461
+ detail: { value: n },
462
+ bubbles: !0,
463
+ composed: !0
464
+ }));
465
+ }
466
+ }
467
+ };
468
+ e([o()], s.prototype, "_currentDate", void 0), e([o()], s.prototype, "_selectedDate", void 0), e([o()], s.prototype, "_showMonthDropdown", void 0), e([o()], s.prototype, "_showYearDropdown", void 0), e([a({ type: String })], s.prototype, "variant", void 0), e([a({ type: String })], s.prototype, "lang", void 0), e([a({ type: String })], s.prototype, "selectedValue", void 0), e([a({ type: Boolean })], s.prototype, "open", void 0), e([o()], s.prototype, "_selectedHour", void 0), e([o()], s.prototype, "_selectedMinute", void 0), s = e([i("scb-datepicker")], s);
469
+ //#endregion
470
+ export { s as ScbDatepicker };