@redvars/peacock 3.8.0 → 3.8.2

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 (475) hide show
  1. package/dist/{BaseInput-14YmcfK7.js → BaseInput-CU1zZYKc.js} +3 -3
  2. package/dist/{BaseInput-14YmcfK7.js.map → BaseInput-CU1zZYKc.js.map} +1 -1
  3. package/dist/ButtonConstants-CahP2_NA.js +4 -0
  4. package/dist/ButtonConstants-CahP2_NA.js.map +1 -0
  5. package/dist/{IndividualComponent-DUINtMGK.js → IndividualComponent-Bdwyrvd6.js} +2 -2
  6. package/dist/{IndividualComponent-DUINtMGK.js.map → IndividualComponent-Bdwyrvd6.js.map} +1 -1
  7. package/dist/{NativeHyperlinkMixin-DrYXyfMQ.js → NativeHyperlinkMixin-D9J4aBTy.js} +4 -30
  8. package/dist/NativeHyperlinkMixin-D9J4aBTy.js.map +1 -0
  9. package/dist/accordion-item.js +338 -0
  10. package/dist/accordion-item.js.map +1 -0
  11. package/dist/accordion.js +159 -0
  12. package/dist/accordion.js.map +1 -0
  13. package/dist/alert.js +190 -0
  14. package/dist/alert.js.map +1 -0
  15. package/dist/app-bar.js +324 -0
  16. package/dist/app-bar.js.map +1 -0
  17. package/dist/assets/components.css +1 -1
  18. package/dist/assets/components.css.map +1 -1
  19. package/dist/assets/styles.css +1 -1
  20. package/dist/assets/styles.css.map +1 -1
  21. package/dist/attachable-controller-CAKVrfcG.js +119 -0
  22. package/dist/attachable-controller-CAKVrfcG.js.map +1 -0
  23. package/dist/avatar.js +114 -0
  24. package/dist/avatar.js.map +1 -0
  25. package/dist/badge.js +91 -0
  26. package/dist/badge.js.map +1 -0
  27. package/dist/base-Cl6v8-BZ.js +9 -0
  28. package/dist/base-Cl6v8-BZ.js.map +1 -0
  29. package/dist/bottom-sheet.js +14 -5
  30. package/dist/bottom-sheet.js.map +1 -1
  31. package/dist/breadcrumb-item.js +163 -0
  32. package/dist/breadcrumb-item.js.map +1 -0
  33. package/dist/breadcrumb.js +95 -0
  34. package/dist/breadcrumb.js.map +1 -0
  35. package/dist/button-group.js +87 -137
  36. package/dist/button-group.js.map +1 -1
  37. package/dist/button.js +863 -133
  38. package/dist/button.js.map +1 -1
  39. package/dist/calendar-column-view.js +8 -4
  40. package/dist/calendar-column-view.js.map +1 -1
  41. package/dist/calendar-month-view.js +8 -4
  42. package/dist/calendar-month-view.js.map +1 -1
  43. package/dist/calendar.js +8 -4
  44. package/dist/calendar.js.map +1 -1
  45. package/dist/canvas.js +8 -4
  46. package/dist/canvas.js.map +1 -1
  47. package/dist/card-content.js +1 -1
  48. package/dist/card.js +23 -45
  49. package/dist/card.js.map +1 -1
  50. package/dist/cb-compound-expression.js +6 -2
  51. package/dist/cb-compound-expression.js.map +1 -1
  52. package/dist/cb-divider.js +7 -3
  53. package/dist/cb-divider.js.map +1 -1
  54. package/dist/cb-expression.js +6 -2
  55. package/dist/cb-expression.js.map +1 -1
  56. package/dist/cb-predicate.js +7 -3
  57. package/dist/cb-predicate.js.map +1 -1
  58. package/dist/{chart-bar-cn6rrna-.js → chart-bar-CYoGNXnK.js} +6 -2
  59. package/dist/{chart-bar-cn6rrna-.js.map → chart-bar-CYoGNXnK.js.map} +1 -1
  60. package/dist/chart-bar.js +7 -6
  61. package/dist/chart-bar.js.map +1 -1
  62. package/dist/chart-doughnut.js +8 -3
  63. package/dist/chart-doughnut.js.map +1 -1
  64. package/dist/chart-pie.js +8 -3
  65. package/dist/chart-pie.js.map +1 -1
  66. package/dist/chart-stacked-bar.js +7 -6
  67. package/dist/chart-stacked-bar.js.map +1 -1
  68. package/dist/checkbox.js +526 -0
  69. package/dist/checkbox.js.map +1 -0
  70. package/dist/chip.js +459 -0
  71. package/dist/chip.js.map +1 -0
  72. package/dist/{class-map-YU7g0o3B.js → class-map-DG7CA1et.js} +2 -2
  73. package/dist/{class-map-YU7g0o3B.js.map → class-map-DG7CA1et.js.map} +1 -1
  74. package/dist/clock.js +6 -2
  75. package/dist/clock.js.map +1 -1
  76. package/dist/code-editor.js +45 -30
  77. package/dist/code-editor.js.map +1 -1
  78. package/dist/code-highlighter.js +9 -5
  79. package/dist/code-highlighter.js.map +1 -1
  80. package/dist/condition-builder.js +5 -1
  81. package/dist/condition-builder.js.map +1 -1
  82. package/dist/container.js +141 -0
  83. package/dist/container.js.map +1 -0
  84. package/dist/custom-elements-jsdocs.json +721 -769
  85. package/dist/custom-elements.json +3213 -1979
  86. package/dist/datasource-B2eRh6Or.js +108 -0
  87. package/dist/datasource-B2eRh6Or.js.map +1 -0
  88. package/dist/dispatch-event-utils-CuEqjlPT.js.map +1 -1
  89. package/dist/divider.js +135 -0
  90. package/dist/divider.js.map +1 -0
  91. package/dist/dropdown-button.js +11 -6
  92. package/dist/dropdown-button.js.map +1 -1
  93. package/dist/element-internals-2CMts_0M.js +290 -0
  94. package/dist/element-internals-2CMts_0M.js.map +1 -0
  95. package/dist/elevation.js +94 -0
  96. package/dist/elevation.js.map +1 -0
  97. package/dist/empty-state.js +194 -0
  98. package/dist/empty-state.js.map +1 -0
  99. package/dist/{event-manager-D-QCmUgR.js → event-manager-DTyX2uYD.js} +2 -2
  100. package/dist/{event-manager-D-QCmUgR.js.map → event-manager-DTyX2uYD.js.map} +1 -1
  101. package/dist/fab.js +138 -145
  102. package/dist/fab.js.map +1 -1
  103. package/dist/field.js +461 -0
  104. package/dist/field.js.map +1 -0
  105. package/dist/{popover-DUPmMVWS.js → floating-controller-CnUZnOhK.js} +2 -171
  106. package/dist/floating-controller-CnUZnOhK.js.map +1 -0
  107. package/dist/{flow-designer-node-BWrPuxAR.js → flow-designer-node-DsVwQTac.js} +7 -3
  108. package/dist/{flow-designer-node-BWrPuxAR.js.map → flow-designer-node-DsVwQTac.js.map} +1 -1
  109. package/dist/flow-designer-node.js +3 -3
  110. package/dist/flow-designer.js +19 -12
  111. package/dist/flow-designer.js.map +1 -1
  112. package/dist/focus-ring.js +126 -0
  113. package/dist/focus-ring.js.map +1 -0
  114. package/dist/form-associated-BXADnjOB.js +388 -0
  115. package/dist/form-associated-BXADnjOB.js.map +1 -0
  116. package/dist/html-editor.js +21 -9
  117. package/dist/html-editor.js.map +1 -1
  118. package/dist/hyperlink-DLvb6MXE.js +98 -0
  119. package/dist/hyperlink-DLvb6MXE.js.map +1 -0
  120. package/dist/icon-button.js +1064 -0
  121. package/dist/icon-button.js.map +1 -0
  122. package/dist/icon.js +170 -0
  123. package/dist/icon.js.map +1 -0
  124. package/dist/if-defined-BXZpRQ4P.js +10 -0
  125. package/dist/if-defined-BXZpRQ4P.js.map +1 -0
  126. package/dist/image.js +201 -0
  127. package/dist/image.js.map +1 -0
  128. package/dist/index.js +73 -20
  129. package/dist/index.js.map +1 -1
  130. package/dist/is-dark-mode-DOcaw4Yq.js.map +1 -1
  131. package/dist/is-link-Dk2OV3PM.js +6 -0
  132. package/dist/is-link-Dk2OV3PM.js.map +1 -0
  133. package/dist/item.js +212 -0
  134. package/dist/item.js.map +1 -0
  135. package/dist/link.js +75 -0
  136. package/dist/link.js.map +1 -0
  137. package/dist/list-D6JLh1uh.js +352 -0
  138. package/dist/list-D6JLh1uh.js.map +1 -0
  139. package/dist/list.js +14 -0
  140. package/dist/list.js.map +1 -0
  141. package/dist/{peacock-loader.js → loader.js} +83 -22
  142. package/dist/loader.js.map +1 -0
  143. package/dist/menu-item.js +318 -0
  144. package/dist/menu-item.js.map +1 -0
  145. package/dist/menu.js +534 -0
  146. package/dist/menu.js.map +1 -0
  147. package/dist/modal.js +9 -5
  148. package/dist/modal.js.map +1 -1
  149. package/dist/navigation-rail-item.js +385 -0
  150. package/dist/navigation-rail-item.js.map +1 -0
  151. package/dist/navigation-rail.js +217 -0
  152. package/dist/navigation-rail.js.map +1 -0
  153. package/dist/notification-manager.js +8 -4
  154. package/dist/notification-manager.js.map +1 -1
  155. package/dist/notification.js +8 -4
  156. package/dist/notification.js.map +1 -1
  157. package/dist/number-counter.js +7 -3
  158. package/dist/number-counter.js.map +1 -1
  159. package/dist/{observe-slot-change-D8Xg-kSS.js → observe-slot-change-DPxaZrZF.js} +3 -4
  160. package/dist/observe-slot-change-DPxaZrZF.js.map +1 -0
  161. package/dist/option.js +121 -0
  162. package/dist/option.js.map +1 -0
  163. package/dist/pagination.js +255 -0
  164. package/dist/pagination.js.map +1 -0
  165. package/dist/popover-content.js +7 -3
  166. package/dist/popover-content.js.map +1 -1
  167. package/dist/popover.js +175 -3
  168. package/dist/popover.js.map +1 -1
  169. package/dist/{property-1psGvXOq.js → property-B49QQ8pS.js} +2 -2
  170. package/dist/{property-1psGvXOq.js.map → property-B49QQ8pS.js.map} +1 -1
  171. package/dist/query-CHb9Ft_d.js +10 -0
  172. package/dist/query-CHb9Ft_d.js.map +1 -0
  173. package/dist/query-assigned-elements-BJaGSqM0.js +10 -0
  174. package/dist/query-assigned-elements-BJaGSqM0.js.map +1 -0
  175. package/dist/radio.js +476 -0
  176. package/dist/radio.js.map +1 -0
  177. package/dist/ripple.js +506 -0
  178. package/dist/ripple.js.map +1 -0
  179. package/dist/search.js +12 -7
  180. package/dist/search.js.map +1 -1
  181. package/dist/segmented-button-group.js +137 -0
  182. package/dist/segmented-button-group.js.map +1 -0
  183. package/dist/segmented-button.js +289 -0
  184. package/dist/segmented-button.js.map +1 -0
  185. package/dist/select-Dwtk0RIU.js +3937 -0
  186. package/dist/select-Dwtk0RIU.js.map +1 -0
  187. package/dist/side-sheet.js +8 -4
  188. package/dist/side-sheet.js.map +1 -1
  189. package/dist/skeleton.js +122 -0
  190. package/dist/skeleton.js.map +1 -0
  191. package/dist/slider.js +346 -0
  192. package/dist/slider.js.map +1 -0
  193. package/dist/snackbar.js +335 -0
  194. package/dist/snackbar.js.map +1 -0
  195. package/dist/spinner.js +100 -0
  196. package/dist/spinner.js.map +1 -0
  197. package/dist/split-button.js +10 -5
  198. package/dist/split-button.js.map +1 -1
  199. package/dist/spread-B5cgadZl.js +32 -0
  200. package/dist/spread-B5cgadZl.js.map +1 -0
  201. package/dist/src/__internal/aria/aria.d.ts +98 -0
  202. package/dist/src/__internal/aria/delegate.d.ts +54 -0
  203. package/dist/src/__internal/events/dispatch-hooks.d.ts +80 -0
  204. package/dist/src/__internal/mixins/element-internals.d.ts +40 -0
  205. package/dist/src/__internal/mixins/form-associated.d.ts +174 -0
  206. package/dist/src/__internal/mixins/form-submitter.d.ts +59 -0
  207. package/dist/src/__internal/mixins/hyperlink.d.ts +42 -0
  208. package/dist/src/__internal/mixins/mixin.d.ts +49 -0
  209. package/dist/src/{__utils → __internal/utils}/observe-slot-change.d.ts +1 -0
  210. package/dist/src/accordion/accordion-item.d.ts +3 -1
  211. package/dist/src/accordion/accordion.d.ts +1 -1
  212. package/dist/src/alert/alert.d.ts +43 -0
  213. package/dist/src/alert/index.d.ts +1 -0
  214. package/dist/src/app-bar/app-bar.d.ts +92 -0
  215. package/dist/src/app-bar/index.d.ts +1 -0
  216. package/dist/src/avatar/avatar.d.ts +2 -0
  217. package/dist/src/bottom-sheet/bottom-sheet.d.ts +1 -1
  218. package/dist/src/breadcrumb/breadcrumb-item/breadcrumb-item.d.ts +1 -0
  219. package/dist/src/button/ButtonTypes.d.ts +5 -0
  220. package/dist/src/button/base-button/base-button.d.ts +18 -0
  221. package/dist/src/button/button/button.d.ts +29 -37
  222. package/dist/src/button/button-group/button-group.d.ts +17 -18
  223. package/dist/src/{fab → button/fab}/fab.d.ts +8 -26
  224. package/dist/src/button/icon-button/icon-button.d.ts +20 -27
  225. package/dist/src/button/index.d.ts +1 -0
  226. package/dist/src/calendar/calendar.d.ts +1 -1
  227. package/dist/src/canvas/canvas.d.ts +1 -1
  228. package/dist/src/card/card.d.ts +5 -6
  229. package/dist/src/chart-bar/chart-bar.d.ts +1 -1
  230. package/dist/src/chart-bar/chart-stacked-bar.d.ts +1 -1
  231. package/dist/src/checkbox/checkbox.d.ts +5 -1
  232. package/dist/src/chip/chip/chip.d.ts +9 -8
  233. package/dist/src/container/container.d.ts +5 -1
  234. package/dist/src/divider/divider.d.ts +2 -0
  235. package/dist/src/empty-state/empty-state.d.ts +1 -0
  236. package/dist/src/field/field.d.ts +19 -1
  237. package/dist/src/focus-ring/focus-ring.d.ts +3 -7
  238. package/dist/src/html-editor/html-editor.d.ts +1 -1
  239. package/dist/src/icon/icon.d.ts +9 -4
  240. package/dist/src/image/image.d.ts +4 -0
  241. package/dist/src/index.d.ts +7 -6
  242. package/dist/src/item/item.d.ts +20 -29
  243. package/dist/src/link/link.d.ts +1 -1
  244. package/dist/src/list/list-item.d.ts +7 -5
  245. package/dist/src/list/list.d.ts +3 -2
  246. package/dist/src/menu/menu/menu.d.ts +14 -0
  247. package/dist/src/menu/menu-item/menu-item.d.ts +10 -2
  248. package/dist/src/modal/modal.d.ts +1 -1
  249. package/dist/src/navigation-rail/navigation-rail-item.d.ts +5 -4
  250. package/dist/src/navigation-rail/navigation-rail.d.ts +1 -1
  251. package/dist/src/radio/radio.d.ts +5 -0
  252. package/dist/src/ripple/ripple.d.ts +10 -1
  253. package/dist/src/search/search.d.ts +1 -1
  254. package/dist/src/segmented-button/segmented-button-group.d.ts +2 -2
  255. package/dist/src/segmented-button/segmented-button.d.ts +2 -0
  256. package/dist/src/side-sheet/side-sheet.d.ts +1 -1
  257. package/dist/src/skeleton/skeleton.d.ts +1 -0
  258. package/dist/src/slider/slider.d.ts +1 -0
  259. package/dist/src/snackbar/snackbar.d.ts +12 -2
  260. package/dist/src/svg/svg.d.ts +5 -0
  261. package/dist/src/table/table.d.ts +5 -0
  262. package/dist/src/tabs/tab.d.ts +2 -7
  263. package/dist/src/toolbar/toolbar.d.ts +2 -2
  264. package/dist/{state-DwbEjqVk.js → state-DkTK9EGF.js} +2 -2
  265. package/dist/{state-DwbEjqVk.js.map → state-DkTK9EGF.js.map} +1 -1
  266. package/dist/{style-map-DVmWOuYy.js → style-map-BQD5Et1D.js} +2 -2
  267. package/dist/{style-map-DVmWOuYy.js.map → style-map-BQD5Et1D.js.map} +1 -1
  268. package/dist/sub-menu.js +241 -0
  269. package/dist/sub-menu.js.map +1 -0
  270. package/dist/svg.js +273 -0
  271. package/dist/svg.js.map +1 -0
  272. package/dist/tab-group.js +188 -0
  273. package/dist/tab-group.js.map +1 -0
  274. package/dist/tab-panel.js +61 -0
  275. package/dist/tab-panel.js.map +1 -0
  276. package/dist/tab.js +658 -0
  277. package/dist/tab.js.map +1 -0
  278. package/dist/table.js +620 -0
  279. package/dist/table.js.map +1 -0
  280. package/dist/tabs.js +240 -0
  281. package/dist/tabs.js.map +1 -0
  282. package/dist/throttle-C7ZAPqtu.js +24 -0
  283. package/dist/throttle-C7ZAPqtu.js.map +1 -0
  284. package/dist/toolbar.js +9 -5
  285. package/dist/toolbar.js.map +1 -1
  286. package/dist/tooltip.js +270 -0
  287. package/dist/tooltip.js.map +1 -0
  288. package/dist/tsconfig.tsbuildinfo +1 -1
  289. package/dist/{unsafe-html-BsGUjx94.js → unsafe-html-Ct0N2_UU.js} +2 -2
  290. package/dist/{unsafe-html-BsGUjx94.js.map → unsafe-html-Ct0N2_UU.js.map} +1 -1
  291. package/dist/when-DEJm_QN9.js +9 -0
  292. package/dist/when-DEJm_QN9.js.map +1 -0
  293. package/package.json +4 -2
  294. package/readme.md +3 -3
  295. package/scss/mixin.scss +8 -6
  296. package/src/__internal/aria/aria.ts +293 -0
  297. package/src/__internal/aria/delegate.ts +206 -0
  298. package/src/__internal/events/dispatch-hooks.ts +182 -0
  299. package/src/__internal/mixins/element-internals.ts +73 -0
  300. package/src/__internal/mixins/form-associated.ts +295 -0
  301. package/src/__internal/mixins/form-submitter.ts +133 -0
  302. package/src/__internal/mixins/hyperlink.ts +71 -0
  303. package/src/__internal/mixins/mixin.ts +58 -0
  304. package/src/{__utils → __internal/utils}/observe-slot-change.ts +2 -5
  305. package/src/accordion/accordion-item.ts +6 -2
  306. package/src/accordion/accordion.ts +4 -2
  307. package/src/accordion/demo/index.html +95 -90
  308. package/src/alert/alert.scss +82 -0
  309. package/src/{banner/banner.ts → alert/alert.ts} +22 -22
  310. package/src/alert/index.ts +1 -0
  311. package/src/app-bar/app-bar-colors.scss +17 -0
  312. package/src/app-bar/app-bar.scss +165 -0
  313. package/src/app-bar/app-bar.ts +155 -0
  314. package/src/app-bar/index.ts +1 -0
  315. package/src/avatar/avatar.ts +4 -0
  316. package/src/badge/badge.ts +2 -0
  317. package/src/bottom-sheet/bottom-sheet.ts +8 -2
  318. package/src/breadcrumb/breadcrumb/breadcrumb.ts +2 -0
  319. package/src/breadcrumb/breadcrumb-item/breadcrumb-item.ts +3 -0
  320. package/src/button/ButtonTypes.ts +17 -0
  321. package/src/button/base-button/base-button.ts +85 -0
  322. package/src/button/button/button-base.scss +306 -0
  323. package/src/button/button/button-colors.scss +27 -32
  324. package/src/button/button/button-layers.scss +126 -39
  325. package/src/button/button/button-shapes.scss +73 -0
  326. package/src/button/button/button.scss +12 -284
  327. package/src/button/button/button.ts +174 -194
  328. package/src/button/button-group/button-group.scss +43 -36
  329. package/src/button/button-group/button-group.ts +26 -137
  330. package/src/{fab → button/fab}/fab-colors.scss +0 -10
  331. package/src/button/fab/fab-sizes.scss +37 -0
  332. package/src/button/fab/fab.scss +172 -0
  333. package/src/{fab → button/fab}/fab.ts +69 -105
  334. package/src/button/icon-button/icon-button-sizes.scss +18 -3
  335. package/src/button/icon-button/icon-button.scss +5 -0
  336. package/src/button/icon-button/icon-button.ts +111 -141
  337. package/src/button/index.ts +7 -0
  338. package/src/calendar/calendar.ts +2 -2
  339. package/src/canvas/canvas.ts +2 -2
  340. package/src/card/card.scss +3 -3
  341. package/src/card/card.ts +20 -40
  342. package/src/chart-bar/chart-bar.ts +2 -2
  343. package/src/chart-bar/chart-stacked-bar.ts +2 -2
  344. package/src/checkbox/checkbox.ts +12 -4
  345. package/src/chip/chip/chip.scss +1 -1
  346. package/src/chip/chip/chip.ts +35 -55
  347. package/src/chip/demo/index.html +30 -26
  348. package/src/code-editor/code-editor.ts +68 -58
  349. package/src/code-editor/demo/index.html +32 -27
  350. package/src/code-highlighter/code-highlighter.ts +1 -1
  351. package/src/code-highlighter/demo/index.html +24 -21
  352. package/src/container/container.ts +8 -2
  353. package/src/date-picker/date-picker.ts +2 -3
  354. package/src/divider/divider.ts +5 -1
  355. package/src/dropdown-button/demo/index.html +106 -101
  356. package/src/dropdown-button/dropdown-button.ts +1 -1
  357. package/src/elevation/elevation.ts +2 -0
  358. package/src/empty-state/empty-state.ts +3 -0
  359. package/src/field/field.ts +52 -33
  360. package/src/focus-ring/demo/index.html +29 -36
  361. package/src/focus-ring/focus-ring.ts +5 -7
  362. package/src/html-editor/html-editor.ts +28 -16
  363. package/src/icon/datasource.ts +1 -1
  364. package/src/icon/icon.ts +27 -15
  365. package/src/image/image.ts +18 -6
  366. package/src/index.ts +24 -6
  367. package/src/input/input.ts +2 -2
  368. package/src/item/item.scss +126 -162
  369. package/src/item/item.ts +70 -323
  370. package/src/link/link.ts +3 -1
  371. package/src/list/list-item.scss +43 -31
  372. package/src/list/list-item.ts +79 -75
  373. package/src/list/list.scss +1 -13
  374. package/src/list/list.ts +6 -3
  375. package/src/{peacock-loader.ts → loader.ts} +91 -79
  376. package/src/menu/menu/menu.scss +14 -11
  377. package/src/menu/menu/menu.ts +20 -8
  378. package/src/menu/menu-item/menu-item.scss +35 -3
  379. package/src/menu/menu-item/menu-item.ts +40 -34
  380. package/src/menu/sub-menu/sub-menu.ts +3 -0
  381. package/src/modal/modal.ts +2 -2
  382. package/src/navigation-rail/navigation-rail-item.ts +21 -36
  383. package/src/navigation-rail/navigation-rail.scss +1 -0
  384. package/src/navigation-rail/navigation-rail.ts +4 -2
  385. package/src/number-field/number-field.ts +2 -2
  386. package/src/pagination/pagination.ts +2 -0
  387. package/src/popover/popover.ts +3 -3
  388. package/src/radio/radio.ts +13 -5
  389. package/src/ripple/ripple.ts +14 -1
  390. package/src/search/search.ts +3 -3
  391. package/src/segmented-button/segmented-button-group.ts +8 -4
  392. package/src/segmented-button/segmented-button.ts +4 -0
  393. package/src/select/option.ts +2 -0
  394. package/src/side-sheet/side-sheet.ts +2 -2
  395. package/src/sidebar-menu/sidebar-menu-item.ts +3 -2
  396. package/src/skeleton/skeleton.ts +3 -0
  397. package/src/slider/slider.ts +4 -1
  398. package/src/snackbar/snackbar.ts +40 -25
  399. package/src/spinner/spinner.ts +2 -0
  400. package/src/svg/svg.ts +27 -9
  401. package/src/switch/switch.ts +1 -1
  402. package/src/table/table.ts +16 -3
  403. package/src/tabs/demo/index.html +79 -79
  404. package/src/tabs/tab-group.ts +2 -0
  405. package/src/tabs/tab-panel.ts +2 -0
  406. package/src/tabs/tab.scss +4 -4
  407. package/src/tabs/tab.ts +16 -39
  408. package/src/tabs/tabs.ts +2 -0
  409. package/src/textarea/textarea.ts +2 -2
  410. package/src/time-picker/time-picker.ts +2 -2
  411. package/src/toolbar/toolbar.ts +3 -3
  412. package/src/tooltip/tooltip.ts +14 -8
  413. package/src/url-field/url-field.ts +2 -3
  414. package/dist/ButtonConstants-D06bY4uy.js +0 -114
  415. package/dist/ButtonConstants-D06bY4uy.js.map +0 -1
  416. package/dist/NativeHyperlinkMixin-DrYXyfMQ.js.map +0 -1
  417. package/dist/banner.js +0 -186
  418. package/dist/banner.js.map +0 -1
  419. package/dist/button-colors-DSuBHd-i.js +0 -585
  420. package/dist/button-colors-DSuBHd-i.js.map +0 -1
  421. package/dist/icon-CueRR7wx.js +0 -260
  422. package/dist/icon-CueRR7wx.js.map +0 -1
  423. package/dist/icon-button-CYqrnMnF.js +0 -318
  424. package/dist/icon-button-CYqrnMnF.js.map +0 -1
  425. package/dist/navigation-rail-CM_svs5_.js +0 -14184
  426. package/dist/navigation-rail-CM_svs5_.js.map +0 -1
  427. package/dist/observe-slot-change-D8Xg-kSS.js.map +0 -1
  428. package/dist/peacock-loader.js.map +0 -1
  429. package/dist/popover-DUPmMVWS.js.map +0 -1
  430. package/dist/query-QBcUV-L_.js +0 -15
  431. package/dist/query-QBcUV-L_.js.map +0 -1
  432. package/dist/src/banner/banner.d.ts +0 -43
  433. package/dist/src/banner/index.d.ts +0 -1
  434. package/dist/src/button/GroupButtonInterface.d.ts +0 -4
  435. package/src/banner/banner.scss +0 -82
  436. package/src/banner/index.ts +0 -1
  437. package/src/button/GroupButtonInterface.ts +0 -4
  438. package/src/button/button/only-button.scss +0 -13
  439. package/src/fab/fab-sizes.scss +0 -37
  440. package/src/fab/fab.scss +0 -143
  441. /package/dist/src/{__controllers → __internal/controllers}/attachable-controller.d.ts +0 -0
  442. /package/dist/src/{__controllers → __internal/controllers}/floating-controller.d.ts +0 -0
  443. /package/dist/src/{__directive → __internal/directive}/spread.d.ts +0 -0
  444. /package/dist/src/{__mixins → __internal/mixins}/MixinConstructor.d.ts +0 -0
  445. /package/dist/src/{__mixins → __internal/mixins}/NativeButtonMixin.d.ts +0 -0
  446. /package/dist/src/{__mixins → __internal/mixins}/NativeHyperlinkMixin.d.ts +0 -0
  447. /package/dist/src/{__utils → __internal/utils}/cache-fetch.d.ts +0 -0
  448. /package/dist/src/{__utils → __internal/utils}/copy-to-clipboard.d.ts +0 -0
  449. /package/dist/src/{__utils → __internal/utils}/dispatch-event-utils.d.ts +0 -0
  450. /package/dist/src/{__utils → __internal/utils}/is-dark-mode.d.ts +0 -0
  451. /package/dist/src/{__utils → __internal/utils}/is-in-viewport.d.ts +0 -0
  452. /package/dist/src/{__utils → __internal/utils}/is-link.d.ts +0 -0
  453. /package/dist/src/{__utils → __internal/utils}/observe-theme-change.d.ts +0 -0
  454. /package/dist/src/{__utils → __internal/utils}/sanitize-svg.d.ts +0 -0
  455. /package/dist/src/{__utils → __internal/utils}/throttle.d.ts +0 -0
  456. /package/dist/src/{fab → button/fab}/index.d.ts +0 -0
  457. /package/dist/src/{peacock-loader.d.ts → loader.d.ts} +0 -0
  458. /package/dist/test/{banner.test.d.ts → alert.test.d.ts} +0 -0
  459. /package/src/{__controllers → __internal/controllers}/attachable-controller.ts +0 -0
  460. /package/src/{__controllers → __internal/controllers}/floating-controller.ts +0 -0
  461. /package/src/{__directive → __internal/directive}/spread.ts +0 -0
  462. /package/src/{__mixins → __internal/mixins}/MixinConstructor.ts +0 -0
  463. /package/src/{__mixins → __internal/mixins}/NativeButtonMixin.ts +0 -0
  464. /package/src/{__mixins → __internal/mixins}/NativeHyperlinkMixin.ts +0 -0
  465. /package/src/{__mixins → __internal/mixins}/README.md +0 -0
  466. /package/src/{__utils → __internal/utils}/cache-fetch.ts +0 -0
  467. /package/src/{__utils → __internal/utils}/copy-to-clipboard.ts +0 -0
  468. /package/src/{__utils → __internal/utils}/dispatch-event-utils.ts +0 -0
  469. /package/src/{__utils → __internal/utils}/is-dark-mode.ts +0 -0
  470. /package/src/{__utils → __internal/utils}/is-in-viewport.ts +0 -0
  471. /package/src/{__utils → __internal/utils}/is-link.ts +0 -0
  472. /package/src/{__utils → __internal/utils}/observe-theme-change.ts +0 -0
  473. /package/src/{__utils → __internal/utils}/sanitize-svg.ts +0 -0
  474. /package/src/{__utils → __internal/utils}/throttle.ts +0 -0
  475. /package/src/{fab → button/fab}/index.ts +0 -0
@@ -1,4 +1,4 @@
1
- import { a as i, _ as __decorate, I as IndividualComponent, i as i$1, b } from './IndividualComponent-DUINtMGK.js';
1
+ import { i, _ as __decorate, I as IndividualComponent, a as i$1, b } from './IndividualComponent-Bdwyrvd6.js';
2
2
 
3
3
  /**
4
4
  * @label Card Content
package/dist/card.js CHANGED
@@ -1,11 +1,14 @@
1
- import { a as i, i as i$1, A, c as __classPrivateFieldGet, b, _ as __decorate, I as IndividualComponent } from './IndividualComponent-DUINtMGK.js';
2
- import { n } from './property-1psGvXOq.js';
3
- import { r } from './state-DwbEjqVk.js';
4
- import { e as e$1 } from './query-QBcUV-L_.js';
5
- import { e } from './class-map-YU7g0o3B.js';
1
+ import { i, a as i$1, A, c as __classPrivateFieldGet, b, _ as __decorate, I as IndividualComponent } from './IndividualComponent-Bdwyrvd6.js';
2
+ import { n } from './property-B49QQ8pS.js';
3
+ import { r } from './state-DkTK9EGF.js';
4
+ import { e as e$1 } from './query-CHb9Ft_d.js';
5
+ import { e } from './class-map-DG7CA1et.js';
6
6
  import { i as isActivationClick, d as dispatchActivationClick } from './dispatch-event-utils-CuEqjlPT.js';
7
- import { N as NativeHyperlinkMixin, t as throttle, i as isLink } from './NativeHyperlinkMixin-DrYXyfMQ.js';
8
- import { o as observerSlotChangesWithCallback } from './observe-slot-change-D8Xg-kSS.js';
7
+ import { i as isLink } from './is-link-Dk2OV3PM.js';
8
+ import { o as observerSlotChangesWithCallback } from './observe-slot-change-DPxaZrZF.js';
9
+ import { t as throttle } from './throttle-C7ZAPqtu.js';
10
+ import { N as NativeHyperlinkMixin } from './NativeHyperlinkMixin-D9J4aBTy.js';
11
+ import './base-Cl6v8-BZ.js';
9
12
  import './directive-ZPhl09Yt.js';
10
13
 
11
14
  var css_248z$1 = i`* {
@@ -16,6 +19,10 @@ var css_248z$1 = i`* {
16
19
  display: none !important;
17
20
  }
18
21
 
22
+ [hidden] {
23
+ display: none !important;
24
+ }
25
+
19
26
  :host {
20
27
  position: relative;
21
28
  display: block;
@@ -162,7 +169,7 @@ var css_248z$1 = i`* {
162
169
  --_container-elevation-level: 2;
163
170
  --_container-state-opacity: 0.08;
164
171
  }
165
- :host([variant=elevated]):has(.card.pressed):not([disabled]) {
172
+ :host([variant=elevated]):active:not([disabled]) {
166
173
  --_container-elevation-level: 1;
167
174
  --_container-state-opacity: 0.12;
168
175
  }
@@ -185,7 +192,7 @@ var css_248z$1 = i`* {
185
192
  --_container-elevation-level: 1;
186
193
  --_container-state-opacity: 0.08;
187
194
  }
188
- :host([variant=filled]):has(.card.pressed):not([disabled]) {
195
+ :host([variant=filled]):active:not([disabled]) {
189
196
  --_container-elevation-level: 0;
190
197
  --_container-state-opacity: 0.1;
191
198
  }
@@ -211,7 +218,7 @@ var css_248z$1 = i`* {
211
218
  :host([variant=outlined]):hover:not([disabled]) {
212
219
  --_container-state-opacity: 0.08;
213
220
  }
214
- :host([variant=outlined]):has(.card.pressed):not([disabled]) {
221
+ :host([variant=outlined]):active:not([disabled]) {
215
222
  --_container-state-opacity: 0.12;
216
223
  }
217
224
  :host([variant=outlined])[disabled] {
@@ -238,7 +245,7 @@ var _Card_id, _Card_tabindex;
238
245
  * @label Card
239
246
  * @tag wc-card
240
247
  * @rawTag card
241
- * @summary A Material 3 inspired card surface for grouping related content.
248
+ * @summary A card surface for grouping related content.
242
249
  * @cssprop --card-padding - Inner padding for the card container. Defaults to 1rem.
243
250
  * @cssprop --card-shape - Corner radius for the card container. Defaults to a large radius.
244
251
  * @cssprop --card-gap - Gap between slotted children.
@@ -255,7 +262,7 @@ var _Card_id, _Card_tabindex;
255
262
  */
256
263
  let Card = class Card extends NativeHyperlinkMixin(i$1) {
257
264
  constructor() {
258
- super(...arguments);
265
+ super();
259
266
  _Card_id.set(this, crypto.randomUUID());
260
267
  this.variant = 'elevated';
261
268
  this.disabled = false;
@@ -264,14 +271,9 @@ let Card = class Card extends NativeHyperlinkMixin(i$1) {
264
271
  * If button is disabled, the reason why it is disabled.
265
272
  */
266
273
  this.disabledReason = '';
267
- /**
268
- * Sets the delay for throttle in milliseconds. Defaults to 200 milliseconds.
269
- */
270
- this.throttleDelay = 200;
271
274
  /**
272
275
  * States
273
276
  */
274
- this.isPressed = false;
275
277
  this.slotHasContent = false;
276
278
  _Card_tabindex.set(this, 0);
277
279
  this.__dispatchClickWithThrottle = event => {
@@ -292,24 +294,12 @@ let Card = class Card extends NativeHyperlinkMixin(i$1) {
292
294
  this.focus();
293
295
  dispatchActivationClick(this.cardElement);
294
296
  };
295
- this.__handlePress = (event) => {
296
- if (this.disabled)
297
- return;
298
- if (event instanceof KeyboardEvent &&
299
- event.type === 'keydown' &&
300
- (event.key === 'Enter' || event.key === ' ')) {
301
- this.isPressed = true;
302
- }
303
- else if (event.type === 'mousedown') {
304
- this.isPressed = true;
305
- }
306
- else {
307
- this.isPressed = false;
308
- }
309
- };
297
+ this.addEventListener('click', this.__dispatchClickWithThrottle);
310
298
  }
311
299
  firstUpdated() {
312
- this.__dispatchClickWithThrottle = throttle(this.__dispatchClick, this.throttleDelay);
300
+ if (typeof this.throttleDelay === 'number') {
301
+ this.__dispatchClickWithThrottle = throttle(this.__dispatchClick, this.throttleDelay);
302
+ }
313
303
  observerSlotChangesWithCallback(this.renderRoot.querySelector('slot'), hasContent => {
314
304
  this.slotHasContent = hasContent;
315
305
  this.requestUpdate();
@@ -353,7 +343,6 @@ let Card = class Card extends NativeHyperlinkMixin(i$1) {
353
343
  [`variant-${this.variant}`]: true,
354
344
  actionable: (this.actionable && !this.disabled) || isLinkElement,
355
345
  disabled: this.disabled,
356
- pressed: this.isPressed,
357
346
  'has-content': this.slotHasContent,
358
347
  };
359
348
  if (!this.actionable && !isLinkElement) {
@@ -366,10 +355,6 @@ let Card = class Card extends NativeHyperlinkMixin(i$1) {
366
355
  class=${e(cssClasses)}
367
356
  id="card"
368
357
  tabindex=${__classPrivateFieldGet(this, _Card_tabindex, "f")}
369
- @click=${this.__dispatchClickWithThrottle}
370
- @mousedown=${this.__handlePress}
371
- @keydown=${this.__handlePress}
372
- @keyup=${this.__handlePress}
373
358
  ?aria-describedby=${this.__getDisabledReasonID()}
374
359
  aria-disabled=${`${this.disabled}`}
375
360
  ?disabled=${this.disabled}
@@ -383,10 +368,6 @@ let Card = class Card extends NativeHyperlinkMixin(i$1) {
383
368
  tabindex=${__classPrivateFieldGet(this, _Card_tabindex, "f")}
384
369
  href=${this.href}
385
370
  target=${this.target}
386
- @click=${this.__dispatchClickWithThrottle}
387
- @mousedown=${this.__handlePress}
388
- @keydown=${this.__handlePress}
389
- @keyup=${this.__handlePress}
390
371
  role="button"
391
372
  ?aria-describedby=${this.__getDisabledReasonID()}
392
373
  aria-disabled=${`${this.disabled}`}
@@ -422,9 +403,6 @@ __decorate([
422
403
  __decorate([
423
404
  n()
424
405
  ], Card.prototype, "throttleDelay", void 0);
425
- __decorate([
426
- r()
427
- ], Card.prototype, "isPressed", void 0);
428
406
  __decorate([
429
407
  r()
430
408
  ], Card.prototype, "slotHasContent", void 0);
package/dist/card.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"card.js","sources":["../../src/card/card.ts"],"sourcesContent":["import { LitElement, html, nothing } from 'lit';\nimport { property, query, state } from 'lit/decorators.js';\nimport { classMap } from 'lit/directives/class-map.js';\nimport {\n dispatchActivationClick,\n isActivationClick,\n} from '../__utils/dispatch-event-utils.js';\nimport { isLink } from '@/__utils/is-link.js';\nimport { observerSlotChangesWithCallback } from '@/__utils/observe-slot-change.js';\nimport { throttle } from '@/__utils/throttle.js';\nimport IndividualComponent from '@/IndividualComponent.js';\nimport styles from './card.scss';\nimport colorStyles from './card-colors.scss';\nimport NativeHyperlinkMixin from '@/__mixins/NativeHyperlinkMixin.js';\n\ntype CardVariant = 'elevated' | 'filled' | 'outlined';\n\n/**\n * @label Card\n * @tag wc-card\n * @rawTag card\n * @summary A Material 3 inspired card surface for grouping related content.\n * @cssprop --card-padding - Inner padding for the card container. Defaults to 1rem.\n * @cssprop --card-shape - Corner radius for the card container. Defaults to a large radius.\n * @cssprop --card-gap - Gap between slotted children.\n *\n * @example\n * ```html\n * <wc-card variant=\"outlined\" style=\"padding-block: 1rem;\">\n * <wc-card-content>\n * <h3 class=\"text-headline\">Title</h3>\n * <p class=\"text-body\">Supportive text</p>\n * </wc-card-content>\n * </wc-card>\n * ```\n */\n@IndividualComponent\nexport class Card extends NativeHyperlinkMixin(LitElement) {\n static styles = [styles, colorStyles];\n\n #id = crypto.randomUUID();\n\n @property({ type: String, reflect: true })\n variant: CardVariant = 'elevated';\n\n @property({ type: Boolean, reflect: true })\n disabled: boolean = false;\n\n @property({ type: Boolean, reflect: true })\n actionable: boolean = false;\n\n /**\n * If button is disabled, the reason why it is disabled.\n */\n @property({ attribute: 'disabled-reason' })\n disabledReason: string = '';\n\n /**\n * Sets the delay for throttle in milliseconds. Defaults to 200 milliseconds.\n */\n @property() throttleDelay = 200;\n\n /**\n * States\n */\n @state()\n isPressed = false;\n\n @state()\n private slotHasContent = false;\n\n @query('.card') readonly cardElement!: HTMLElement | null;\n\n #tabindex?: number = 0;\n\n override firstUpdated() {\n this.__dispatchClickWithThrottle = throttle(\n this.__dispatchClick,\n this.throttleDelay,\n );\n observerSlotChangesWithCallback(\n this.renderRoot.querySelector('slot'),\n hasContent => {\n this.slotHasContent = hasContent;\n this.requestUpdate();\n },\n );\n }\n\n __dispatchClickWithThrottle: (event: MouseEvent | KeyboardEvent) => void =\n event => {\n this.__dispatchClick(event);\n };\n\n __dispatchClick = (event: MouseEvent | KeyboardEvent) => {\n // If the button is soft-disabled or a disabled link, we need to explicitly\n // prevent the click from propagating to other event listeners as well as\n // prevent the default action.\n if (this.disabled && this.href) {\n event.stopImmediatePropagation();\n event.preventDefault();\n return;\n }\n\n if (!isActivationClick(event) || !this.cardElement) {\n return;\n }\n\n this.focus();\n dispatchActivationClick(this.cardElement);\n };\n\n __getDisabledReasonID() {\n return this.disabled && this.disabledReason\n ? `disabled-reason-${this.#id}`\n : nothing;\n }\n\n __renderDisabledReason() {\n const disabledReasonID = this.__getDisabledReasonID();\n if (disabledReasonID)\n return html`<div\n id=\"disabled-reason-${this.#id}\"\n role=\"tooltip\"\n aria-label=${this.disabledReason}\n class=\"screen-reader-only\"\n >\n ${this.disabledReason}\n </div>`;\n return nothing;\n }\n\n __handlePress = (event: KeyboardEvent | MouseEvent) => {\n if (this.disabled) return;\n if (\n event instanceof KeyboardEvent &&\n event.type === 'keydown' &&\n (event.key === 'Enter' || event.key === ' ')\n ) {\n this.isPressed = true;\n } else if (event.type === 'mousedown') {\n this.isPressed = true;\n } else {\n this.isPressed = false;\n }\n };\n\n render() {\n const isLinkElement = isLink(this);\n const disableSlotTabbing = this.actionable || isLinkElement;\n\n return html`\n <wc-focus-ring class=\"focus-ring\" for=\"card\"></wc-focus-ring>\n <wc-elevation class=\"elevation\"></wc-elevation>\n <div class=\"background\"></div>\n <div class=\"outline\"></div>\n <wc-ripple class=\"ripple\" for=\"card\"></wc-ripple>\n\n ${this.renderCardElement(isLinkElement, disableSlotTabbing)}\n `;\n }\n\n renderCardElement(isLinkElement: boolean, disableSlotTabbing: boolean) {\n const cssClasses = {\n card: true,\n 'card-element': true,\n [`variant-${this.variant}`]: true,\n actionable: (this.actionable && !this.disabled) || isLinkElement,\n disabled: this.disabled,\n pressed: this.isPressed,\n 'has-content': this.slotHasContent,\n };\n\n if (!this.actionable && !isLinkElement) {\n return html`<div class=${classMap(cssClasses)} id=\"card\">\n ${this.renderCardContent(disableSlotTabbing)}\n </div>`;\n }\n\n if (!isLinkElement) {\n return html`<button\n class=${classMap(cssClasses)}\n id=\"card\"\n tabindex=${this.#tabindex}\n @click=${this.__dispatchClickWithThrottle}\n @mousedown=${this.__handlePress}\n @keydown=${this.__handlePress}\n @keyup=${this.__handlePress}\n ?aria-describedby=${this.__getDisabledReasonID()}\n aria-disabled=${`${this.disabled}`}\n ?disabled=${this.disabled}\n >\n ${this.renderCardContent(disableSlotTabbing)}\n </button>`;\n }\n return html`<a\n class=${classMap(cssClasses)}\n id=\"card\"\n tabindex=${this.#tabindex}\n href=${this.href}\n target=${this.target}\n @click=${this.__dispatchClickWithThrottle}\n @mousedown=${this.__handlePress}\n @keydown=${this.__handlePress}\n @keyup=${this.__handlePress}\n role=\"button\"\n ?aria-describedby=${this.__getDisabledReasonID()}\n aria-disabled=${`${this.disabled}`}\n >\n ${this.renderCardContent(disableSlotTabbing)}\n </a>`;\n }\n\n renderCardContent(disableSlotTabbing: boolean) {\n return html`\n <div class=\"card-content\">\n <div class=\"slot-container\" ?inert=${disableSlotTabbing}>\n <slot></slot>\n </div>\n </div>\n `;\n }\n}\n"],"names":["LitElement","nothing","html","classMap","styles","colorStyles","property","state","query"],"mappings":"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"}
1
+ {"version":3,"file":"card.js","sources":["../../src/card/card.ts"],"sourcesContent":["import { LitElement, html, nothing } from 'lit';\nimport { property, query, state } from 'lit/decorators.js';\nimport { classMap } from 'lit/directives/class-map.js';\nimport {\n dispatchActivationClick,\n isActivationClick,\n} from '../__internal/utils/dispatch-event-utils.js';\nimport { isLink } from '@/__internal/utils/is-link.js';\nimport { observerSlotChangesWithCallback } from '@/__internal/utils/observe-slot-change.js';\nimport { throttle } from '@/__internal/utils/throttle.js';\nimport IndividualComponent from '@/IndividualComponent.js';\nimport styles from './card.scss';\nimport colorStyles from './card-colors.scss';\nimport NativeHyperlinkMixin from '@/__internal/mixins/NativeHyperlinkMixin.js';\n\ntype CardVariant = 'elevated' | 'filled' | 'outlined';\n\n/**\n * @label Card\n * @tag wc-card\n * @rawTag card\n * @summary A card surface for grouping related content.\n * @cssprop --card-padding - Inner padding for the card container. Defaults to 1rem.\n * @cssprop --card-shape - Corner radius for the card container. Defaults to a large radius.\n * @cssprop --card-gap - Gap between slotted children.\n *\n * @example\n * ```html\n * <wc-card variant=\"outlined\" style=\"padding-block: 1rem;\">\n * <wc-card-content>\n * <h3 class=\"text-headline\">Title</h3>\n * <p class=\"text-body\">Supportive text</p>\n * </wc-card-content>\n * </wc-card>\n * ```\n */\n@IndividualComponent\nexport class Card extends NativeHyperlinkMixin(LitElement) {\n static styles = [styles, colorStyles];\n\n #id = crypto.randomUUID();\n\n @property({ type: String, reflect: true })\n variant: CardVariant = 'elevated';\n\n @property({ type: Boolean, reflect: true })\n disabled: boolean = false;\n\n @property({ type: Boolean, reflect: true })\n actionable: boolean = false;\n\n /**\n * If button is disabled, the reason why it is disabled.\n */\n @property({ attribute: 'disabled-reason' })\n disabledReason: string = '';\n\n /**\n * Sets the delay for throttle in milliseconds. When null (default), no throttle is applied.\n */\n @property() throttleDelay?: number;\n\n /**\n * States\n */\n @state()\n private slotHasContent = false;\n\n @query('.card') readonly cardElement!: HTMLElement | null;\n\n #tabindex?: number = 0;\n\n constructor() {\n super();\n this.addEventListener('click', this.__dispatchClickWithThrottle);\n }\n\n override firstUpdated() {\n if (typeof this.throttleDelay === 'number') {\n this.__dispatchClickWithThrottle = throttle(\n this.__dispatchClick,\n this.throttleDelay,\n );\n }\n observerSlotChangesWithCallback(\n this.renderRoot.querySelector('slot'),\n hasContent => {\n this.slotHasContent = hasContent;\n this.requestUpdate();\n },\n );\n }\n\n __dispatchClickWithThrottle: (event: MouseEvent | KeyboardEvent) => void =\n event => {\n this.__dispatchClick(event);\n };\n\n __dispatchClick = (event: MouseEvent | KeyboardEvent) => {\n // If the button is soft-disabled or a disabled link, we need to explicitly\n // prevent the click from propagating to other event listeners as well as\n // prevent the default action.\n if (this.disabled && this.href) {\n event.stopImmediatePropagation();\n event.preventDefault();\n return;\n }\n\n if (!isActivationClick(event) || !this.cardElement) {\n return;\n }\n\n this.focus();\n dispatchActivationClick(this.cardElement);\n };\n\n __getDisabledReasonID() {\n return this.disabled && this.disabledReason\n ? `disabled-reason-${this.#id}`\n : nothing;\n }\n\n __renderDisabledReason() {\n const disabledReasonID = this.__getDisabledReasonID();\n if (disabledReasonID)\n return html`<div\n id=\"disabled-reason-${this.#id}\"\n role=\"tooltip\"\n aria-label=${this.disabledReason}\n class=\"screen-reader-only\"\n >\n ${this.disabledReason}\n </div>`;\n return nothing;\n }\n\n render() {\n const isLinkElement = isLink(this);\n const disableSlotTabbing = this.actionable || isLinkElement;\n\n return html`\n <wc-focus-ring class=\"focus-ring\" for=\"card\"></wc-focus-ring>\n <wc-elevation class=\"elevation\"></wc-elevation>\n <div class=\"background\"></div>\n <div class=\"outline\"></div>\n <wc-ripple class=\"ripple\" for=\"card\"></wc-ripple>\n\n ${this.renderCardElement(isLinkElement, disableSlotTabbing)}\n `;\n }\n\n renderCardElement(isLinkElement: boolean, disableSlotTabbing: boolean) {\n const cssClasses = {\n card: true,\n 'card-element': true,\n [`variant-${this.variant}`]: true,\n actionable: (this.actionable && !this.disabled) || isLinkElement,\n disabled: this.disabled,\n 'has-content': this.slotHasContent,\n };\n\n if (!this.actionable && !isLinkElement) {\n return html`<div class=${classMap(cssClasses)} id=\"card\">\n ${this.renderCardContent(disableSlotTabbing)}\n </div>`;\n }\n\n if (!isLinkElement) {\n return html`<button\n class=${classMap(cssClasses)}\n id=\"card\"\n tabindex=${this.#tabindex}\n ?aria-describedby=${this.__getDisabledReasonID()}\n aria-disabled=${`${this.disabled}`}\n ?disabled=${this.disabled}\n >\n ${this.renderCardContent(disableSlotTabbing)}\n </button>`;\n }\n return html`<a\n class=${classMap(cssClasses)}\n id=\"card\"\n tabindex=${this.#tabindex}\n href=${this.href}\n target=${this.target}\n role=\"button\"\n ?aria-describedby=${this.__getDisabledReasonID()}\n aria-disabled=${`${this.disabled}`}\n >\n ${this.renderCardContent(disableSlotTabbing)}\n </a>`;\n }\n\n renderCardContent(disableSlotTabbing: boolean) {\n return html`\n <div class=\"card-content\">\n <div class=\"slot-container\" ?inert=${disableSlotTabbing}>\n <slot></slot>\n </div>\n </div>\n `;\n }\n}\n"],"names":["LitElement","nothing","html","classMap","styles","colorStyles","property","state","query"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
- import { a as i, _ as __decorate, I as IndividualComponent, i as i$1, A, b } from './IndividualComponent-DUINtMGK.js';
2
- import { n } from './property-1psGvXOq.js';
1
+ import { i, _ as __decorate, I as IndividualComponent, a as i$1, A, b } from './IndividualComponent-Bdwyrvd6.js';
2
+ import { n } from './property-B49QQ8pS.js';
3
3
 
4
4
  var css_248z = i`* {
5
5
  box-sizing: border-box;
@@ -9,6 +9,10 @@ var css_248z = i`* {
9
9
  display: none !important;
10
10
  }
11
11
 
12
+ [hidden] {
13
+ display: none !important;
14
+ }
15
+
12
16
  :host {
13
17
  display: block;
14
18
  }
@@ -1 +1 @@
1
- {"version":3,"file":"cb-compound-expression.js","sources":["../../src/condition-builder/cb-compound-expression.ts"],"sourcesContent":["import { html, LitElement, nothing } from 'lit';\nimport { property } from 'lit/decorators.js';\nimport IndividualComponent from '@/IndividualComponent.js';\nimport styles from './cb-compound-expression.scss';\n\n/**\n * @label CB Compound Expression\n * @tag wc-cb-compound-expression\n * @rawTag cb-compound-expression\n * @summary A compound expression group in a condition builder that displays a field label, an optional condition operator divider, and slots for child expressions.\n * @tags condition-builder\n *\n * @example\n * ```html\n * <wc-cb-compound-expression field-label=\"Age\" condition-operator=\"or\">\n * <wc-cb-expression>\n * <wc-input placeholder=\"Enter value\"></wc-input>\n * </wc-cb-expression>\n * </wc-cb-compound-expression>\n * ```\n */\n@IndividualComponent\nexport class CbCompoundExpression extends LitElement {\n static styles = [styles];\n\n /** The logical operator joining conditions in this group ('and' or 'or'). */\n @property({ type: String, attribute: 'condition-operator', reflect: true })\n conditionOperator?: 'and' | 'or';\n\n /** The field name for the compound expression. */\n @property({ type: String, attribute: 'field-name' })\n fieldName = '';\n\n /** The display label for the field. */\n @property({ type: String, attribute: 'field-label' })\n fieldLabel = '';\n\n override updated() {\n this.__adjustSlotEndPadding();\n }\n\n private __adjustSlotEndPadding() {\n const slotEnd = this.renderRoot.querySelector<HTMLElement>('.slot-end');\n const fieldNameContainer =\n this.renderRoot.querySelector<HTMLElement>('.field-name-container');\n if (slotEnd && fieldNameContainer) {\n slotEnd.style.paddingInlineStart =\n fieldNameContainer.getBoundingClientRect().width + 'px';\n }\n }\n\n private __renderOperatorDivider() {\n if (!this.conditionOperator) return nothing;\n return html`\n <wc-cb-divider connect-end>\n <wc-tag color=\"yellow\" size=\"sm\">${this.conditionOperator}</wc-tag>\n </wc-cb-divider>\n `;\n }\n\n render() {\n return html`\n <div class=\"compound-expression\" field-name=${this.fieldName}>\n <div class=\"field-name-container\">\n <span class=\"field-label\">${this.fieldLabel}</span>\n <div class=\"field-compound-type\">\n ${this.__renderOperatorDivider()}\n </div>\n </div>\n <div class=\"conditions\">\n <slot></slot>\n </div>\n </div>\n <div class=\"slot-end\">\n <slot name=\"end\"></slot>\n </div>\n `;\n }\n}\n"],"names":["LitElement","nothing","html","styles","property"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAKA;;;;;;;;;;;;;;;AAeG;AAEI,IAAM,oBAAoB,GAA1B,MAAM,oBAAqB,SAAQA,GAAU,CAAA;AAA7C,IAAA,WAAA,GAAA;;;QASL,IAAA,CAAA,SAAS,GAAG,EAAE;;QAId,IAAA,CAAA,UAAU,GAAG,EAAE;IA2CjB;IAzCW,OAAO,GAAA;QACd,IAAI,CAAC,sBAAsB,EAAE;IAC/B;IAEQ,sBAAsB,GAAA;QAC5B,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,aAAa,CAAc,WAAW,CAAC;QACvE,MAAM,kBAAkB,GACtB,IAAI,CAAC,UAAU,CAAC,aAAa,CAAc,uBAAuB,CAAC;AACrE,QAAA,IAAI,OAAO,IAAI,kBAAkB,EAAE;YACjC,OAAO,CAAC,KAAK,CAAC,kBAAkB;AAC9B,gBAAA,kBAAkB,CAAC,qBAAqB,EAAE,CAAC,KAAK,GAAG,IAAI;QAC3D;IACF;IAEQ,uBAAuB,GAAA;QAC7B,IAAI,CAAC,IAAI,CAAC,iBAAiB;AAAE,YAAA,OAAOC,CAAO;AAC3C,QAAA,OAAOC,CAAI,CAAA;;AAE4B,yCAAA,EAAA,IAAI,CAAC,iBAAiB,CAAA;;KAE5D;IACH;IAEA,MAAM,GAAA;AACJ,QAAA,OAAOA,CAAI,CAAA;AACqC,kDAAA,EAAA,IAAI,CAAC,SAAS,CAAA;;AAE5B,oCAAA,EAAA,IAAI,CAAC,UAAU,CAAA;;cAEvC,IAAI,CAAC,uBAAuB,EAAE;;;;;;;;;;KAUvC;IACH;;AAtDO,oBAAA,CAAA,MAAM,GAAG,CAACC,QAAM,CAAC;AAIxB,UAAA,CAAA;AADC,IAAAC,CAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,oBAAoB,EAAE,OAAO,EAAE,IAAI,EAAE;AACzC,CAAA,EAAA,oBAAA,CAAA,SAAA,EAAA,mBAAA,EAAA,MAAA,CAAA;AAIjC,UAAA,CAAA;IADCA,CAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE;AACpC,CAAA,EAAA,oBAAA,CAAA,SAAA,EAAA,WAAA,EAAA,MAAA,CAAA;AAIf,UAAA,CAAA;IADCA,CAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,aAAa,EAAE;AACpC,CAAA,EAAA,oBAAA,CAAA,SAAA,EAAA,YAAA,EAAA,MAAA,CAAA;AAbL,oBAAoB,GAAA,UAAA,CAAA;IADhC;AACY,CAAA,EAAA,oBAAoB,CAwDhC;;;;"}
1
+ {"version":3,"file":"cb-compound-expression.js","sources":["../../src/condition-builder/cb-compound-expression.ts"],"sourcesContent":["import { html, LitElement, nothing } from 'lit';\nimport { property } from 'lit/decorators.js';\nimport IndividualComponent from '@/IndividualComponent.js';\nimport styles from './cb-compound-expression.scss';\n\n/**\n * @label CB Compound Expression\n * @tag wc-cb-compound-expression\n * @rawTag cb-compound-expression\n * @summary A compound expression group in a condition builder that displays a field label, an optional condition operator divider, and slots for child expressions.\n * @tags condition-builder\n *\n * @example\n * ```html\n * <wc-cb-compound-expression field-label=\"Age\" condition-operator=\"or\">\n * <wc-cb-expression>\n * <wc-input placeholder=\"Enter value\"></wc-input>\n * </wc-cb-expression>\n * </wc-cb-compound-expression>\n * ```\n */\n@IndividualComponent\nexport class CbCompoundExpression extends LitElement {\n static styles = [styles];\n\n /** The logical operator joining conditions in this group ('and' or 'or'). */\n @property({ type: String, attribute: 'condition-operator', reflect: true })\n conditionOperator?: 'and' | 'or';\n\n /** The field name for the compound expression. */\n @property({ type: String, attribute: 'field-name' })\n fieldName = '';\n\n /** The display label for the field. */\n @property({ type: String, attribute: 'field-label' })\n fieldLabel = '';\n\n override updated() {\n this.__adjustSlotEndPadding();\n }\n\n private __adjustSlotEndPadding() {\n const slotEnd = this.renderRoot.querySelector<HTMLElement>('.slot-end');\n const fieldNameContainer =\n this.renderRoot.querySelector<HTMLElement>('.field-name-container');\n if (slotEnd && fieldNameContainer) {\n slotEnd.style.paddingInlineStart =\n fieldNameContainer.getBoundingClientRect().width + 'px';\n }\n }\n\n private __renderOperatorDivider() {\n if (!this.conditionOperator) return nothing;\n return html`\n <wc-cb-divider connect-end>\n <wc-tag color=\"yellow\" size=\"sm\">${this.conditionOperator}</wc-tag>\n </wc-cb-divider>\n `;\n }\n\n render() {\n return html`\n <div class=\"compound-expression\" field-name=${this.fieldName}>\n <div class=\"field-name-container\">\n <span class=\"field-label\">${this.fieldLabel}</span>\n <div class=\"field-compound-type\">\n ${this.__renderOperatorDivider()}\n </div>\n </div>\n <div class=\"conditions\">\n <slot></slot>\n </div>\n </div>\n <div class=\"slot-end\">\n <slot name=\"end\"></slot>\n </div>\n `;\n }\n}\n"],"names":["LitElement","nothing","html","styles","property"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAKA;;;;;;;;;;;;;;;AAeG;AAEI,IAAM,oBAAoB,GAA1B,MAAM,oBAAqB,SAAQA,GAAU,CAAA;AAA7C,IAAA,WAAA,GAAA;;;QASL,IAAA,CAAA,SAAS,GAAG,EAAE;;QAId,IAAA,CAAA,UAAU,GAAG,EAAE;IA2CjB;IAzCW,OAAO,GAAA;QACd,IAAI,CAAC,sBAAsB,EAAE;IAC/B;IAEQ,sBAAsB,GAAA;QAC5B,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,aAAa,CAAc,WAAW,CAAC;QACvE,MAAM,kBAAkB,GACtB,IAAI,CAAC,UAAU,CAAC,aAAa,CAAc,uBAAuB,CAAC;AACrE,QAAA,IAAI,OAAO,IAAI,kBAAkB,EAAE;YACjC,OAAO,CAAC,KAAK,CAAC,kBAAkB;AAC9B,gBAAA,kBAAkB,CAAC,qBAAqB,EAAE,CAAC,KAAK,GAAG,IAAI;QAC3D;IACF;IAEQ,uBAAuB,GAAA;QAC7B,IAAI,CAAC,IAAI,CAAC,iBAAiB;AAAE,YAAA,OAAOC,CAAO;AAC3C,QAAA,OAAOC,CAAI,CAAA;;AAE4B,yCAAA,EAAA,IAAI,CAAC,iBAAiB,CAAA;;KAE5D;IACH;IAEA,MAAM,GAAA;AACJ,QAAA,OAAOA,CAAI,CAAA;AACqC,kDAAA,EAAA,IAAI,CAAC,SAAS,CAAA;;AAE5B,oCAAA,EAAA,IAAI,CAAC,UAAU,CAAA;;cAEvC,IAAI,CAAC,uBAAuB,EAAE;;;;;;;;;;KAUvC;IACH;;AAtDO,oBAAA,CAAA,MAAM,GAAG,CAACC,QAAM,CAAC;AAIxB,UAAA,CAAA;AADC,IAAAC,CAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,oBAAoB,EAAE,OAAO,EAAE,IAAI,EAAE;AACzC,CAAA,EAAA,oBAAA,CAAA,SAAA,EAAA,mBAAA,EAAA,MAAA,CAAA;AAIjC,UAAA,CAAA;IADCA,CAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE;AACpC,CAAA,EAAA,oBAAA,CAAA,SAAA,EAAA,WAAA,EAAA,MAAA,CAAA;AAIf,UAAA,CAAA;IADCA,CAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,aAAa,EAAE;AACpC,CAAA,EAAA,oBAAA,CAAA,SAAA,EAAA,YAAA,EAAA,MAAA,CAAA;AAbL,oBAAoB,GAAA,UAAA,CAAA;IADhC;AACY,CAAA,EAAA,oBAAoB,CAwDhC;;;;"}
@@ -1,6 +1,6 @@
1
- import { a as i, _ as __decorate, I as IndividualComponent, i as i$1, b } from './IndividualComponent-DUINtMGK.js';
2
- import { n } from './property-1psGvXOq.js';
3
- import { e } from './class-map-YU7g0o3B.js';
1
+ import { i, _ as __decorate, I as IndividualComponent, a as i$1, b } from './IndividualComponent-Bdwyrvd6.js';
2
+ import { n } from './property-B49QQ8pS.js';
3
+ import { e } from './class-map-DG7CA1et.js';
4
4
  import './directive-ZPhl09Yt.js';
5
5
 
6
6
  var css_248z = i`* {
@@ -11,6 +11,10 @@ var css_248z = i`* {
11
11
  display: none !important;
12
12
  }
13
13
 
14
+ [hidden] {
15
+ display: none !important;
16
+ }
17
+
14
18
  :host {
15
19
  display: block;
16
20
  height: 100%;
@@ -1 +1 @@
1
- {"version":3,"file":"cb-divider.js","sources":["../../src/condition-builder/cb-divider.ts"],"sourcesContent":["import { html, LitElement } from 'lit';\nimport { property } from 'lit/decorators.js';\nimport { classMap } from 'lit/directives/class-map.js';\nimport IndividualComponent from '@/IndividualComponent.js';\nimport styles from './cb-divider.scss';\n\n/**\n * @label CB Divider\n * @tag wc-cb-divider\n * @rawTag cb-divider\n * @summary A divider line used within a condition builder to visually connect expressions with operator tags.\n * @tags condition-builder\n *\n * @example\n * ```html\n * <wc-cb-divider>\n * <wc-tag color=\"green\">and</wc-tag>\n * </wc-cb-divider>\n * ```\n */\n@IndividualComponent\nexport class CbDivider extends LitElement {\n static styles = [styles];\n\n /** Whether to render the divider vertically instead of horizontally. */\n @property({ type: Boolean, reflect: true })\n vertical = false;\n\n /** Whether to render a connecting line at the start. */\n @property({ type: Boolean, reflect: true, attribute: 'connect-start' })\n connectStart = false;\n\n /** Whether to render a connecting line at the end. */\n @property({ type: Boolean, reflect: true, attribute: 'connect-end' })\n connectEnd = false;\n\n render() {\n const classes = {\n divider: true,\n 'connect-start': this.connectStart,\n 'connect-end': this.connectEnd,\n vertical: this.vertical,\n };\n\n return html`\n <div class=${classMap(classes)}>\n <div class=\"line line-start\"></div>\n <div class=\"content\">\n <slot></slot>\n </div>\n <div class=\"line line-end\"></div>\n </div>\n `;\n }\n}\n"],"names":["LitElement","html","classMap","styles","property"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAMA;;;;;;;;;;;;;AAaG;AAEI,IAAM,SAAS,GAAf,MAAM,SAAU,SAAQA,GAAU,CAAA;AAAlC,IAAA,WAAA,GAAA;;;QAKL,IAAA,CAAA,QAAQ,GAAG,KAAK;;QAIhB,IAAA,CAAA,YAAY,GAAG,KAAK;;QAIpB,IAAA,CAAA,UAAU,GAAG,KAAK;IAoBpB;IAlBE,MAAM,GAAA;AACJ,QAAA,MAAM,OAAO,GAAG;AACd,YAAA,OAAO,EAAE,IAAI;YACb,eAAe,EAAE,IAAI,CAAC,YAAY;YAClC,aAAa,EAAE,IAAI,CAAC,UAAU;YAC9B,QAAQ,EAAE,IAAI,CAAC,QAAQ;SACxB;AAED,QAAA,OAAOC,CAAI,CAAA;mBACIC,CAAQ,CAAC,OAAO,CAAC,CAAA;;;;;;;KAO/B;IACH;;AA/BO,SAAA,CAAA,MAAM,GAAG,CAACC,QAAM,CAAC;AAIxB,UAAA,CAAA;IADCC,CAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE;AACzB,CAAA,EAAA,SAAA,CAAA,SAAA,EAAA,UAAA,EAAA,MAAA,CAAA;AAIjB,UAAA,CAAA;AADC,IAAAA,CAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,eAAe,EAAE;AACjD,CAAA,EAAA,SAAA,CAAA,SAAA,EAAA,cAAA,EAAA,MAAA,CAAA;AAIrB,UAAA,CAAA;AADC,IAAAA,CAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,aAAa,EAAE;AACjD,CAAA,EAAA,SAAA,CAAA,SAAA,EAAA,YAAA,EAAA,MAAA,CAAA;AAbR,SAAS,GAAA,UAAA,CAAA;IADrB;AACY,CAAA,EAAA,SAAS,CAiCrB;;;;"}
1
+ {"version":3,"file":"cb-divider.js","sources":["../../src/condition-builder/cb-divider.ts"],"sourcesContent":["import { html, LitElement } from 'lit';\nimport { property } from 'lit/decorators.js';\nimport { classMap } from 'lit/directives/class-map.js';\nimport IndividualComponent from '@/IndividualComponent.js';\nimport styles from './cb-divider.scss';\n\n/**\n * @label CB Divider\n * @tag wc-cb-divider\n * @rawTag cb-divider\n * @summary A divider line used within a condition builder to visually connect expressions with operator tags.\n * @tags condition-builder\n *\n * @example\n * ```html\n * <wc-cb-divider>\n * <wc-tag color=\"green\">and</wc-tag>\n * </wc-cb-divider>\n * ```\n */\n@IndividualComponent\nexport class CbDivider extends LitElement {\n static styles = [styles];\n\n /** Whether to render the divider vertically instead of horizontally. */\n @property({ type: Boolean, reflect: true })\n vertical = false;\n\n /** Whether to render a connecting line at the start. */\n @property({ type: Boolean, reflect: true, attribute: 'connect-start' })\n connectStart = false;\n\n /** Whether to render a connecting line at the end. */\n @property({ type: Boolean, reflect: true, attribute: 'connect-end' })\n connectEnd = false;\n\n render() {\n const classes = {\n divider: true,\n 'connect-start': this.connectStart,\n 'connect-end': this.connectEnd,\n vertical: this.vertical,\n };\n\n return html`\n <div class=${classMap(classes)}>\n <div class=\"line line-start\"></div>\n <div class=\"content\">\n <slot></slot>\n </div>\n <div class=\"line line-end\"></div>\n </div>\n `;\n }\n}\n"],"names":["LitElement","html","classMap","styles","property"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAMA;;;;;;;;;;;;;AAaG;AAEI,IAAM,SAAS,GAAf,MAAM,SAAU,SAAQA,GAAU,CAAA;AAAlC,IAAA,WAAA,GAAA;;;QAKL,IAAA,CAAA,QAAQ,GAAG,KAAK;;QAIhB,IAAA,CAAA,YAAY,GAAG,KAAK;;QAIpB,IAAA,CAAA,UAAU,GAAG,KAAK;IAoBpB;IAlBE,MAAM,GAAA;AACJ,QAAA,MAAM,OAAO,GAAG;AACd,YAAA,OAAO,EAAE,IAAI;YACb,eAAe,EAAE,IAAI,CAAC,YAAY;YAClC,aAAa,EAAE,IAAI,CAAC,UAAU;YAC9B,QAAQ,EAAE,IAAI,CAAC,QAAQ;SACxB;AAED,QAAA,OAAOC,CAAI,CAAA;mBACIC,CAAQ,CAAC,OAAO,CAAC,CAAA;;;;;;;KAO/B;IACH;;AA/BO,SAAA,CAAA,MAAM,GAAG,CAACC,QAAM,CAAC;AAIxB,UAAA,CAAA;IADCC,CAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE;AACzB,CAAA,EAAA,SAAA,CAAA,SAAA,EAAA,UAAA,EAAA,MAAA,CAAA;AAIjB,UAAA,CAAA;AADC,IAAAA,CAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,eAAe,EAAE;AACjD,CAAA,EAAA,SAAA,CAAA,SAAA,EAAA,cAAA,EAAA,MAAA,CAAA;AAIrB,UAAA,CAAA;AADC,IAAAA,CAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,aAAa,EAAE;AACjD,CAAA,EAAA,SAAA,CAAA,SAAA,EAAA,YAAA,EAAA,MAAA,CAAA;AAbR,SAAS,GAAA,UAAA,CAAA;IADrB;AACY,CAAA,EAAA,SAAS,CAiCrB;;;;"}
@@ -1,5 +1,5 @@
1
- import { a as i, _ as __decorate, I as IndividualComponent, i as i$1, b } from './IndividualComponent-DUINtMGK.js';
2
- import { n } from './property-1psGvXOq.js';
1
+ import { i, _ as __decorate, I as IndividualComponent, a as i$1, b } from './IndividualComponent-Bdwyrvd6.js';
2
+ import { n } from './property-B49QQ8pS.js';
3
3
 
4
4
  var css_248z = i`* {
5
5
  box-sizing: border-box;
@@ -9,6 +9,10 @@ var css_248z = i`* {
9
9
  display: none !important;
10
10
  }
11
11
 
12
+ [hidden] {
13
+ display: none !important;
14
+ }
15
+
12
16
  :host {
13
17
  display: block;
14
18
  }
@@ -1 +1 @@
1
- {"version":3,"file":"cb-expression.js","sources":["../../src/condition-builder/cb-expression.ts"],"sourcesContent":["import { html, LitElement } from 'lit';\nimport { property } from 'lit/decorators.js';\nimport IndividualComponent from '@/IndividualComponent.js';\nimport styles from './cb-expression.scss';\n\n/**\n * @label CB Expression\n * @tag wc-cb-expression\n * @rawTag cb-expression\n * @summary An expression row within a condition builder, containing an operator select and a slot for value inputs.\n * @tags condition-builder\n *\n * @example\n * ```html\n * <wc-cb-expression>\n * <wc-input placeholder=\"Enter value\"></wc-input>\n * </wc-cb-expression>\n * ```\n */\n@IndividualComponent\nexport class CbExpression extends LitElement {\n static styles = [styles];\n\n /**\n * The list of operator options to display in the operator select.\n * Each item should have at least `label` and `value` properties.\n */\n @property({ type: Array })\n operators: { label: string; value: string; icon?: string }[] = [];\n\n /** The currently selected operator value. */\n @property({ type: String, attribute: 'operator-value' })\n operatorValue = '';\n\n render() {\n return html`\n <div class=\"expression\">\n <wc-select\n inline\n .value=${this.operatorValue}\n placeholder=\"Select Operator\"\n .options=${this.operators}\n ></wc-select>\n <slot></slot>\n </div>\n `;\n }\n}\n"],"names":["LitElement","html","styles","property"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAKA;;;;;;;;;;;;;AAaG;AAEI,IAAM,YAAY,GAAlB,MAAM,YAAa,SAAQA,GAAU,CAAA;AAArC,IAAA,WAAA,GAAA;;AAGL;;;AAGG;QAEH,IAAA,CAAA,SAAS,GAAsD,EAAE;;QAIjE,IAAA,CAAA,aAAa,GAAG,EAAE;IAepB;IAbE,MAAM,GAAA;AACJ,QAAA,OAAOC,CAAI,CAAA;;;;AAII,iBAAA,EAAA,IAAI,CAAC,aAAa;;AAEhB,mBAAA,EAAA,IAAI,CAAC,SAAS;;;;KAI9B;IACH;;AAzBO,YAAA,CAAA,MAAM,GAAG,CAACC,QAAM,CAAC;AAOxB,UAAA,CAAA;AADC,IAAAC,CAAQ,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE;AACyC,CAAA,EAAA,YAAA,CAAA,SAAA,EAAA,WAAA,EAAA,MAAA,CAAA;AAIlE,UAAA,CAAA;IADCA,CAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,gBAAgB,EAAE;AACpC,CAAA,EAAA,YAAA,CAAA,SAAA,EAAA,eAAA,EAAA,MAAA,CAAA;AAZR,YAAY,GAAA,UAAA,CAAA;IADxB;AACY,CAAA,EAAA,YAAY,CA2BxB;;;;"}
1
+ {"version":3,"file":"cb-expression.js","sources":["../../src/condition-builder/cb-expression.ts"],"sourcesContent":["import { html, LitElement } from 'lit';\nimport { property } from 'lit/decorators.js';\nimport IndividualComponent from '@/IndividualComponent.js';\nimport styles from './cb-expression.scss';\n\n/**\n * @label CB Expression\n * @tag wc-cb-expression\n * @rawTag cb-expression\n * @summary An expression row within a condition builder, containing an operator select and a slot for value inputs.\n * @tags condition-builder\n *\n * @example\n * ```html\n * <wc-cb-expression>\n * <wc-input placeholder=\"Enter value\"></wc-input>\n * </wc-cb-expression>\n * ```\n */\n@IndividualComponent\nexport class CbExpression extends LitElement {\n static styles = [styles];\n\n /**\n * The list of operator options to display in the operator select.\n * Each item should have at least `label` and `value` properties.\n */\n @property({ type: Array })\n operators: { label: string; value: string; icon?: string }[] = [];\n\n /** The currently selected operator value. */\n @property({ type: String, attribute: 'operator-value' })\n operatorValue = '';\n\n render() {\n return html`\n <div class=\"expression\">\n <wc-select\n inline\n .value=${this.operatorValue}\n placeholder=\"Select Operator\"\n .options=${this.operators}\n ></wc-select>\n <slot></slot>\n </div>\n `;\n }\n}\n"],"names":["LitElement","html","styles","property"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAKA;;;;;;;;;;;;;AAaG;AAEI,IAAM,YAAY,GAAlB,MAAM,YAAa,SAAQA,GAAU,CAAA;AAArC,IAAA,WAAA,GAAA;;AAGL;;;AAGG;QAEH,IAAA,CAAA,SAAS,GAAsD,EAAE;;QAIjE,IAAA,CAAA,aAAa,GAAG,EAAE;IAepB;IAbE,MAAM,GAAA;AACJ,QAAA,OAAOC,CAAI,CAAA;;;;AAII,iBAAA,EAAA,IAAI,CAAC,aAAa;;AAEhB,mBAAA,EAAA,IAAI,CAAC,SAAS;;;;KAI9B;IACH;;AAzBO,YAAA,CAAA,MAAM,GAAG,CAACC,QAAM,CAAC;AAOxB,UAAA,CAAA;AADC,IAAAC,CAAQ,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE;AACyC,CAAA,EAAA,YAAA,CAAA,SAAA,EAAA,WAAA,EAAA,MAAA,CAAA;AAIlE,UAAA,CAAA;IADCA,CAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,gBAAgB,EAAE;AACpC,CAAA,EAAA,YAAA,CAAA,SAAA,EAAA,eAAA,EAAA,MAAA,CAAA;AAZR,YAAY,GAAA,UAAA,CAAA;IADxB;AACY,CAAA,EAAA,YAAY,CA2BxB;;;;"}
@@ -1,6 +1,6 @@
1
- import { a as i, _ as __decorate, I as IndividualComponent, i as i$1, A, b } from './IndividualComponent-DUINtMGK.js';
2
- import { n } from './property-1psGvXOq.js';
3
- import { e } from './class-map-YU7g0o3B.js';
1
+ import { i, _ as __decorate, I as IndividualComponent, a as i$1, A, b } from './IndividualComponent-Bdwyrvd6.js';
2
+ import { n } from './property-B49QQ8pS.js';
3
+ import { e } from './class-map-DG7CA1et.js';
4
4
  import './directive-ZPhl09Yt.js';
5
5
 
6
6
  var css_248z = i`* {
@@ -11,6 +11,10 @@ var css_248z = i`* {
11
11
  display: none !important;
12
12
  }
13
13
 
14
+ [hidden] {
15
+ display: none !important;
16
+ }
17
+
14
18
  :host {
15
19
  display: block;
16
20
  }
@@ -1 +1 @@
1
- {"version":3,"file":"cb-predicate.js","sources":["../../src/condition-builder/cb-predicate.ts"],"sourcesContent":["import { html, LitElement, nothing } from 'lit';\nimport { property } from 'lit/decorators.js';\nimport { classMap } from 'lit/directives/class-map.js';\nimport IndividualComponent from '@/IndividualComponent.js';\nimport styles from './cb-predicate.scss';\n\n/**\n * @label CB Predicate\n * @tag wc-cb-predicate\n * @rawTag cb-predicate\n * @summary A predicate container in a condition builder that can display conditions in horizontal or vertical layout with an optional logical operator divider.\n * @tags condition-builder\n *\n * @example\n * ```html\n * <wc-cb-predicate condition-operator=\"and\" vertical>\n * <wc-cb-compound-expression field-label=\"Age\">\n * <wc-cb-expression></wc-cb-expression>\n * </wc-cb-compound-expression>\n * </wc-cb-predicate>\n * ```\n */\n@IndividualComponent\nexport class CbPredicate extends LitElement {\n static styles = [styles];\n\n /** The logical operator shown between predicates ('and' or 'or'). */\n @property({ type: String, attribute: 'condition-operator', reflect: true })\n conditionOperator?: 'and' | 'or';\n\n /** Whether to render the predicate in vertical layout. */\n @property({ type: Boolean, reflect: true })\n vertical = false;\n\n override updated() {\n if (this.vertical) {\n this.__adjustSlotEndPadding();\n }\n }\n\n private __adjustSlotEndPadding() {\n const slotEnd = this.renderRoot.querySelector<HTMLElement>('.slot-end');\n const operatorElm = this.renderRoot.querySelector<HTMLElement>(\n '.predicate-condition-operator',\n );\n if (slotEnd && operatorElm) {\n slotEnd.style.paddingInlineStart =\n operatorElm.getBoundingClientRect().width + 'px';\n }\n }\n\n private __renderHorizontalOperator() {\n if (!this.conditionOperator) return nothing;\n return html`\n <wc-cb-divider vertical class=\"predicate-condition-operator\">\n <wc-tag color=\"yellow\" size=\"sm\">${this.conditionOperator}</wc-tag>\n </wc-cb-divider>\n `;\n }\n\n private __renderVerticalOperator() {\n if (!this.conditionOperator) return nothing;\n return html`\n <div class=\"predicate-condition-operator\">\n <wc-cb-divider connect-start connect-end>\n <wc-tag color=\"green\" size=\"sm\">${this.conditionOperator}</wc-tag>\n </wc-cb-divider>\n </div>\n `;\n }\n\n render() {\n const classes = {\n predicate: true,\n vertical: this.vertical,\n };\n\n if (this.vertical) {\n return html`\n <div class=${classMap(classes)}>\n ${this.__renderVerticalOperator()}\n <div class=\"predicate-body\">\n <slot></slot>\n </div>\n </div>\n <div class=\"slot-end\">\n <slot name=\"end\"></slot>\n </div>\n `;\n }\n\n return html`\n <div class=${classMap(classes)}>\n <div class=\"predicate-body\">\n <slot></slot>\n </div>\n ${this.__renderHorizontalOperator()}\n </div>\n `;\n }\n}\n"],"names":["LitElement","nothing","html","classMap","styles","property"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAMA;;;;;;;;;;;;;;;AAeG;AAEI,IAAM,WAAW,GAAjB,MAAM,WAAY,SAAQA,GAAU,CAAA;AAApC,IAAA,WAAA,GAAA;;;QASL,IAAA,CAAA,QAAQ,GAAG,KAAK;IAoElB;IAlEW,OAAO,GAAA;AACd,QAAA,IAAI,IAAI,CAAC,QAAQ,EAAE;YACjB,IAAI,CAAC,sBAAsB,EAAE;QAC/B;IACF;IAEQ,sBAAsB,GAAA;QAC5B,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,aAAa,CAAc,WAAW,CAAC;QACvE,MAAM,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC,aAAa,CAC/C,+BAA+B,CAChC;AACD,QAAA,IAAI,OAAO,IAAI,WAAW,EAAE;YAC1B,OAAO,CAAC,KAAK,CAAC,kBAAkB;AAC9B,gBAAA,WAAW,CAAC,qBAAqB,EAAE,CAAC,KAAK,GAAG,IAAI;QACpD;IACF;IAEQ,0BAA0B,GAAA;QAChC,IAAI,CAAC,IAAI,CAAC,iBAAiB;AAAE,YAAA,OAAOC,CAAO;AAC3C,QAAA,OAAOC,CAAI,CAAA;;AAE4B,yCAAA,EAAA,IAAI,CAAC,iBAAiB,CAAA;;KAE5D;IACH;IAEQ,wBAAwB,GAAA;QAC9B,IAAI,CAAC,IAAI,CAAC,iBAAiB;AAAE,YAAA,OAAOD,CAAO;AAC3C,QAAA,OAAOC,CAAI,CAAA;;;AAG6B,0CAAA,EAAA,IAAI,CAAC,iBAAiB,CAAA;;;KAG7D;IACH;IAEA,MAAM,GAAA;AACJ,QAAA,MAAM,OAAO,GAAG;AACd,YAAA,SAAS,EAAE,IAAI;YACf,QAAQ,EAAE,IAAI,CAAC,QAAQ;SACxB;AAED,QAAA,IAAI,IAAI,CAAC,QAAQ,EAAE;AACjB,YAAA,OAAOA,CAAI,CAAA;qBACIC,CAAQ,CAAC,OAAO,CAAC,CAAA;YAC1B,IAAI,CAAC,wBAAwB,EAAE;;;;;;;;OAQpC;QACH;AAEA,QAAA,OAAOD,CAAI,CAAA;mBACIC,CAAQ,CAAC,OAAO,CAAC,CAAA;;;;UAI1B,IAAI,CAAC,0BAA0B,EAAE;;KAEtC;IACH;;AA3EO,WAAA,CAAA,MAAM,GAAG,CAACC,QAAM,CAAC;AAIxB,UAAA,CAAA;AADC,IAAAC,CAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,oBAAoB,EAAE,OAAO,EAAE,IAAI,EAAE;AACzC,CAAA,EAAA,WAAA,CAAA,SAAA,EAAA,mBAAA,EAAA,MAAA,CAAA;AAIjC,UAAA,CAAA;IADCA,CAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE;AACzB,CAAA,EAAA,WAAA,CAAA,SAAA,EAAA,UAAA,EAAA,MAAA,CAAA;AATN,WAAW,GAAA,UAAA,CAAA;IADvB;AACY,CAAA,EAAA,WAAW,CA6EvB;;;;"}
1
+ {"version":3,"file":"cb-predicate.js","sources":["../../src/condition-builder/cb-predicate.ts"],"sourcesContent":["import { html, LitElement, nothing } from 'lit';\nimport { property } from 'lit/decorators.js';\nimport { classMap } from 'lit/directives/class-map.js';\nimport IndividualComponent from '@/IndividualComponent.js';\nimport styles from './cb-predicate.scss';\n\n/**\n * @label CB Predicate\n * @tag wc-cb-predicate\n * @rawTag cb-predicate\n * @summary A predicate container in a condition builder that can display conditions in horizontal or vertical layout with an optional logical operator divider.\n * @tags condition-builder\n *\n * @example\n * ```html\n * <wc-cb-predicate condition-operator=\"and\" vertical>\n * <wc-cb-compound-expression field-label=\"Age\">\n * <wc-cb-expression></wc-cb-expression>\n * </wc-cb-compound-expression>\n * </wc-cb-predicate>\n * ```\n */\n@IndividualComponent\nexport class CbPredicate extends LitElement {\n static styles = [styles];\n\n /** The logical operator shown between predicates ('and' or 'or'). */\n @property({ type: String, attribute: 'condition-operator', reflect: true })\n conditionOperator?: 'and' | 'or';\n\n /** Whether to render the predicate in vertical layout. */\n @property({ type: Boolean, reflect: true })\n vertical = false;\n\n override updated() {\n if (this.vertical) {\n this.__adjustSlotEndPadding();\n }\n }\n\n private __adjustSlotEndPadding() {\n const slotEnd = this.renderRoot.querySelector<HTMLElement>('.slot-end');\n const operatorElm = this.renderRoot.querySelector<HTMLElement>(\n '.predicate-condition-operator',\n );\n if (slotEnd && operatorElm) {\n slotEnd.style.paddingInlineStart =\n operatorElm.getBoundingClientRect().width + 'px';\n }\n }\n\n private __renderHorizontalOperator() {\n if (!this.conditionOperator) return nothing;\n return html`\n <wc-cb-divider vertical class=\"predicate-condition-operator\">\n <wc-tag color=\"yellow\" size=\"sm\">${this.conditionOperator}</wc-tag>\n </wc-cb-divider>\n `;\n }\n\n private __renderVerticalOperator() {\n if (!this.conditionOperator) return nothing;\n return html`\n <div class=\"predicate-condition-operator\">\n <wc-cb-divider connect-start connect-end>\n <wc-tag color=\"green\" size=\"sm\">${this.conditionOperator}</wc-tag>\n </wc-cb-divider>\n </div>\n `;\n }\n\n render() {\n const classes = {\n predicate: true,\n vertical: this.vertical,\n };\n\n if (this.vertical) {\n return html`\n <div class=${classMap(classes)}>\n ${this.__renderVerticalOperator()}\n <div class=\"predicate-body\">\n <slot></slot>\n </div>\n </div>\n <div class=\"slot-end\">\n <slot name=\"end\"></slot>\n </div>\n `;\n }\n\n return html`\n <div class=${classMap(classes)}>\n <div class=\"predicate-body\">\n <slot></slot>\n </div>\n ${this.__renderHorizontalOperator()}\n </div>\n `;\n }\n}\n"],"names":["LitElement","nothing","html","classMap","styles","property"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAMA;;;;;;;;;;;;;;;AAeG;AAEI,IAAM,WAAW,GAAjB,MAAM,WAAY,SAAQA,GAAU,CAAA;AAApC,IAAA,WAAA,GAAA;;;QASL,IAAA,CAAA,QAAQ,GAAG,KAAK;IAoElB;IAlEW,OAAO,GAAA;AACd,QAAA,IAAI,IAAI,CAAC,QAAQ,EAAE;YACjB,IAAI,CAAC,sBAAsB,EAAE;QAC/B;IACF;IAEQ,sBAAsB,GAAA;QAC5B,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,aAAa,CAAc,WAAW,CAAC;QACvE,MAAM,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC,aAAa,CAC/C,+BAA+B,CAChC;AACD,QAAA,IAAI,OAAO,IAAI,WAAW,EAAE;YAC1B,OAAO,CAAC,KAAK,CAAC,kBAAkB;AAC9B,gBAAA,WAAW,CAAC,qBAAqB,EAAE,CAAC,KAAK,GAAG,IAAI;QACpD;IACF;IAEQ,0BAA0B,GAAA;QAChC,IAAI,CAAC,IAAI,CAAC,iBAAiB;AAAE,YAAA,OAAOC,CAAO;AAC3C,QAAA,OAAOC,CAAI,CAAA;;AAE4B,yCAAA,EAAA,IAAI,CAAC,iBAAiB,CAAA;;KAE5D;IACH;IAEQ,wBAAwB,GAAA;QAC9B,IAAI,CAAC,IAAI,CAAC,iBAAiB;AAAE,YAAA,OAAOD,CAAO;AAC3C,QAAA,OAAOC,CAAI,CAAA;;;AAG6B,0CAAA,EAAA,IAAI,CAAC,iBAAiB,CAAA;;;KAG7D;IACH;IAEA,MAAM,GAAA;AACJ,QAAA,MAAM,OAAO,GAAG;AACd,YAAA,SAAS,EAAE,IAAI;YACf,QAAQ,EAAE,IAAI,CAAC,QAAQ;SACxB;AAED,QAAA,IAAI,IAAI,CAAC,QAAQ,EAAE;AACjB,YAAA,OAAOA,CAAI,CAAA;qBACIC,CAAQ,CAAC,OAAO,CAAC,CAAA;YAC1B,IAAI,CAAC,wBAAwB,EAAE;;;;;;;;OAQpC;QACH;AAEA,QAAA,OAAOD,CAAI,CAAA;mBACIC,CAAQ,CAAC,OAAO,CAAC,CAAA;;;;UAI1B,IAAI,CAAC,0BAA0B,EAAE;;KAEtC;IACH;;AA3EO,WAAA,CAAA,MAAM,GAAG,CAACC,QAAM,CAAC;AAIxB,UAAA,CAAA;AADC,IAAAC,CAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,oBAAoB,EAAE,OAAO,EAAE,IAAI,EAAE;AACzC,CAAA,EAAA,WAAA,CAAA,SAAA,EAAA,mBAAA,EAAA,MAAA,CAAA;AAIjC,UAAA,CAAA;IADCA,CAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE;AACzB,CAAA,EAAA,WAAA,CAAA,SAAA,EAAA,UAAA,EAAA,MAAA,CAAA;AATN,WAAW,GAAA,UAAA,CAAA;IADvB;AACY,CAAA,EAAA,WAAW,CA6EvB;;;;"}
@@ -1,5 +1,5 @@
1
1
  import { a as constant, i as interpolateNumber, b as color, d as interpolateRgb, e as interpolateString, o as ordinal, f as initRange } from './transform-DSwFSqzD.js';
2
- import { a as i } from './IndividualComponent-DUINtMGK.js';
2
+ import { i } from './IndividualComponent-Bdwyrvd6.js';
3
3
 
4
4
  function ascending(a, b) {
5
5
  return a == null || b == null ? NaN : a < b ? -1 : a > b ? 1 : a >= b ? 0 : NaN;
@@ -1052,6 +1052,10 @@ var css_248z = i`* {
1052
1052
  display: none !important;
1053
1053
  }
1054
1054
 
1055
+ [hidden] {
1056
+ display: none !important;
1057
+ }
1058
+
1055
1059
  :host {
1056
1060
  display: block;
1057
1061
  color: var(--color-on-surface);
@@ -1118,4 +1122,4 @@ svg {
1118
1122
  }`;
1119
1123
 
1120
1124
  export { axisLeft as a, band as b, css_248z as c, axisBottom as d, linear as l, max as m };
1121
- //# sourceMappingURL=chart-bar-cn6rrna-.js.map
1125
+ //# sourceMappingURL=chart-bar-CYoGNXnK.js.map