bromcom-ui-next 0.1.2 → 0.1.3

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 (111) hide show
  1. package/dist/bromcom-ui/bromcom-ui.css +1 -1
  2. package/dist/bromcom-ui/bromcom-ui.esm.js +1 -1
  3. package/dist/bromcom-ui/bromcom-ui.esm.js.map +1 -1
  4. package/dist/bromcom-ui/p-047e562f.entry.js +2 -0
  5. package/dist/bromcom-ui/p-047e562f.entry.js.map +1 -0
  6. package/dist/bromcom-ui/p-3805363a.entry.js +2 -0
  7. package/dist/bromcom-ui/{p-2d836917.entry.js.map → p-3805363a.entry.js.map} +1 -1
  8. package/dist/bromcom-ui/p-61c030c5.js +3 -0
  9. package/dist/bromcom-ui/p-61c030c5.js.map +1 -0
  10. package/dist/bromcom-ui/p-6430a887.entry.js +2 -0
  11. package/dist/bromcom-ui/p-6430a887.entry.js.map +1 -0
  12. package/dist/bromcom-ui/p-9e94d920.entry.js +2 -0
  13. package/dist/bromcom-ui/p-9e94d920.entry.js.map +1 -0
  14. package/dist/bromcom-ui/p-bde58312.entry.js +2 -0
  15. package/dist/bromcom-ui/p-bde58312.entry.js.map +1 -0
  16. package/dist/bromcom-ui/p-dcc13a55.entry.js +2 -0
  17. package/dist/bromcom-ui/{p-0a74cf15.entry.js.map → p-dcc13a55.entry.js.map} +1 -1
  18. package/dist/bromcom-ui/p-e7732b0c.entry.js +2 -0
  19. package/dist/bromcom-ui/{p-f0c61f8c.entry.js.map → p-e7732b0c.entry.js.map} +1 -1
  20. package/dist/cjs/bcm-accordion-group.cjs.entry.js +92 -0
  21. package/dist/cjs/bcm-accordion-group.cjs.entry.js.map +1 -0
  22. package/dist/cjs/bcm-accordion.cjs.entry.js +128 -0
  23. package/dist/cjs/bcm-accordion.cjs.entry.js.map +1 -0
  24. package/dist/cjs/bcm-alert.cjs.entry.js +2 -2
  25. package/dist/cjs/bcm-alert.cjs.entry.js.map +1 -1
  26. package/dist/cjs/bcm-avatar.cjs.entry.js +2 -2
  27. package/dist/cjs/bcm-avatar.cjs.entry.js.map +1 -1
  28. package/dist/cjs/bcm-button_2.cjs.entry.js +549 -0
  29. package/dist/cjs/bcm-button_2.cjs.entry.js.map +1 -0
  30. package/dist/cjs/bcm-chip.cjs.entry.js +130 -0
  31. package/dist/cjs/bcm-chip.cjs.entry.js.map +1 -0
  32. package/dist/cjs/bcm-text.cjs.entry.js +3 -3
  33. package/dist/cjs/bcm-text.cjs.entry.js.map +1 -1
  34. package/dist/cjs/bromcom-ui.cjs.js +2 -2
  35. package/dist/cjs/{index-638f2d15.js → index-c36002ae.js} +32 -3
  36. package/dist/cjs/index-c36002ae.js.map +1 -0
  37. package/dist/cjs/loader.cjs.js +2 -2
  38. package/dist/collection/collection-manifest.json +1 -0
  39. package/dist/collection/components/accordion/accordion.css +1 -1
  40. package/dist/collection/components/accordion-group/accordion-group.css +1 -1
  41. package/dist/collection/components/alert/alert.css +1 -1
  42. package/dist/collection/components/avatar/avatar.css +1 -1
  43. package/dist/collection/components/button/button.component.js +3 -3
  44. package/dist/collection/components/button/button.component.js.map +1 -1
  45. package/dist/collection/components/button/button.css +1 -1
  46. package/dist/collection/components/chip/chip.css +1 -1
  47. package/dist/collection/components/input/input.component.js +865 -0
  48. package/dist/collection/components/input/input.component.js.map +1 -0
  49. package/dist/collection/components/input/input.css +2 -0
  50. package/dist/collection/components/input/types.js +2 -0
  51. package/dist/collection/components/input/types.js.map +1 -0
  52. package/dist/collection/components/text/text.component.js +1 -1
  53. package/dist/collection/components/text/text.css +1 -1
  54. package/dist/collection/utils/id/generate-id.js +16 -0
  55. package/dist/collection/utils/id/generate-id.js.map +1 -0
  56. package/dist/components/bcm-accordion-group.js +2 -2
  57. package/dist/components/bcm-accordion-group.js.map +1 -1
  58. package/dist/components/bcm-accordion.js +2 -2
  59. package/dist/components/bcm-accordion.js.map +1 -1
  60. package/dist/components/bcm-alert.js +2 -2
  61. package/dist/components/bcm-alert.js.map +1 -1
  62. package/dist/components/bcm-avatar.js +2 -2
  63. package/dist/components/bcm-avatar.js.map +1 -1
  64. package/dist/components/bcm-button.js +5 -5
  65. package/dist/components/bcm-button.js.map +1 -1
  66. package/dist/components/bcm-chip.js +2 -2
  67. package/dist/components/bcm-chip.js.map +1 -1
  68. package/dist/components/bcm-input.d.ts +11 -0
  69. package/dist/components/bcm-input.js +306 -0
  70. package/dist/components/bcm-input.js.map +1 -0
  71. package/dist/components/bcm-text.js +3 -3
  72. package/dist/components/bcm-text.js.map +1 -1
  73. package/dist/components/index.js +1 -1
  74. package/dist/components/{p-0adcc84f.js → p-8ded2c73.js} +26 -3
  75. package/dist/{cjs/index-638f2d15.js.map → components/p-8ded2c73.js.map} +1 -1
  76. package/dist/esm/bcm-accordion-group.entry.js +88 -0
  77. package/dist/esm/bcm-accordion-group.entry.js.map +1 -0
  78. package/dist/esm/bcm-accordion.entry.js +124 -0
  79. package/dist/esm/bcm-accordion.entry.js.map +1 -0
  80. package/dist/esm/bcm-alert.entry.js +2 -2
  81. package/dist/esm/bcm-alert.entry.js.map +1 -1
  82. package/dist/esm/bcm-avatar.entry.js +2 -2
  83. package/dist/esm/bcm-avatar.entry.js.map +1 -1
  84. package/dist/esm/bcm-button_2.entry.js +544 -0
  85. package/dist/esm/bcm-button_2.entry.js.map +1 -0
  86. package/dist/esm/bcm-chip.entry.js +126 -0
  87. package/dist/esm/bcm-chip.entry.js.map +1 -0
  88. package/dist/esm/bcm-text.entry.js +3 -3
  89. package/dist/esm/bcm-text.entry.js.map +1 -1
  90. package/dist/esm/bromcom-ui.js +3 -3
  91. package/dist/esm/{index-ce2fac11.js → index-e23ee9b0.js} +32 -3
  92. package/dist/esm/index-e23ee9b0.js.map +1 -0
  93. package/dist/esm/loader.js +3 -3
  94. package/dist/types/components/input/input.component.d.ts +74 -0
  95. package/dist/types/components/input/types.d.ts +3 -0
  96. package/dist/types/components.d.ts +246 -0
  97. package/dist/types/utils/id/generate-id.d.ts +9 -0
  98. package/package.json +3 -2
  99. package/dist/bromcom-ui/p-0a74cf15.entry.js +0 -2
  100. package/dist/bromcom-ui/p-27c997d8.js +0 -3
  101. package/dist/bromcom-ui/p-27c997d8.js.map +0 -1
  102. package/dist/bromcom-ui/p-2d836917.entry.js +0 -2
  103. package/dist/bromcom-ui/p-84a5dcdb.entry.js +0 -2
  104. package/dist/bromcom-ui/p-84a5dcdb.entry.js.map +0 -1
  105. package/dist/bromcom-ui/p-f0c61f8c.entry.js +0 -2
  106. package/dist/cjs/bcm-accordion_4.cjs.entry.js +0 -623
  107. package/dist/cjs/bcm-accordion_4.cjs.entry.js.map +0 -1
  108. package/dist/components/p-0adcc84f.js.map +0 -1
  109. package/dist/esm/bcm-accordion_4.entry.js +0 -616
  110. package/dist/esm/bcm-accordion_4.entry.js.map +0 -1
  111. package/dist/esm/index-ce2fac11.js.map +0 -1
@@ -1,616 +0,0 @@
1
- import { r as registerInstance, c as createEvent, h, g as getElement, H as Host } from './index-ce2fac11.js';
2
- import { c as ce } from './index-f3b17e60.js';
3
-
4
- const accordionCss = "*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scroll-snap-strictness:proximity;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(147,197,253,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;border:0 solid oklch(.928 .006 264.531);box-sizing:border-box}::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scroll-snap-strictness:proximity;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(147,197,253,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;}/*! tailwindcss v3.4.17 | MIT License | https://tailwindcss.com*/:after,:before{--tw-content:\"\"}:host,html{-webkit-text-size-adjust:100%;font-feature-settings:normal;-webkit-tap-highlight-color:transparent;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-variation-settings:normal;line-height:1.5;-moz-tab-size:4;tab-size:4}body{line-height:inherit;margin:0}hr{border-top-width:1px;color:inherit;height:0}abbr:where([title]){text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-feature-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em;font-variation-settings:normal}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}button,input,optgroup,select,textarea{font-feature-settings:inherit;color:inherit;font-family:inherit;font-size:100%;font-variation-settings:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,fieldset,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:oklch(.707 .022 261.325);opacity:1}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}[hidden]:where(:not([hidden=until-found])){display:none}.block{display:block}.flex{display:flex}.border{border-width:1px}:host{--bcm-accordion-bg:var(--bcm-ui-color-background-basic-panel);--bcm-accordion-content-bg:var(--bcm-ui-color-background-basic-base);--bcm-accordion-text:var(--bcm-ui-color-text-header);--bcm-accordion-border:var(--bcm-ui-color-border-default);--bcm-accordion-radius:6px;--bcm-accordion-footer-bg:var(--bcm-ui-color-background-default-default);display:block;width:100%}:host(:not([group])) .accordion-container{border:1px solid var(--bcm-accordion-border);border-radius:var(--bcm-accordion-radius)}:host([group]) .accordion-container{border-bottom:1px solid var(--bcm-accordion-border);border-radius:0}:host([group]:last-of-type) .accordion-container{border-bottom:none}:host([group]:first-of-type) .accordion-container{border-top-left-radius:var(--bcm-accordion-radius);border-top-right-radius:var(--bcm-accordion-radius)}:host([group]:last-of-type) .accordion-footer{border-bottom-left-radius:var(--bcm-accordion-radius);border-bottom-right-radius:var(--bcm-accordion-radius)}:host(:not([group])) .accordion-footer{border-bottom-left-radius:var(--bcm-accordion-radius);border-bottom-right-radius:var(--bcm-accordion-radius)}::slotted([slot=title]){align-items:center;display:flex;flex-direction:row;gap:10px}::slotted([slot=actions]){align-items:center;display:flex;flex-direction:row;gap:12px}.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.bcm-ui-element{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji}.collapse{visibility:collapse}.static{position:static}.hidden{display:none}.w-full{width:100%}.rotate-0{--tw-rotate:0deg}.rotate-0,.rotate-180{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-180{--tw-rotate:180deg}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.cursor-pointer{cursor:pointer}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-nowrap{flex-wrap:nowrap}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-2{gap:.5rem}.gap-2\\.5{gap:.625rem}.overflow-hidden{overflow:hidden}.rounded-\\[--bcm-accordion-radius\\]{border-radius:var(--bcm-accordion-radius)}.bg-\\[--bcm-accordion-bg\\]{background-color:var(--bcm-accordion-bg)}.bg-\\[--bcm-accordion-footer-bg\\]{background-color:var(--bcm-accordion-footer-bg)}.p-4{padding:1rem}.px-4{padding-left:1rem;padding-right:1rem}.py-2{padding-bottom:.5rem;padding-top:.5rem}.text-size-4{font-size:var(--bcm-ui-font-size-4,14px);line-height:var(--bcm-ui-line-height-4,20px)}.text-size-6{font-size:var(--bcm-ui-font-size-6,18px);line-height:var(--bcm-ui-line-height-6,24px)}.font-normal{font-weight:400}.font-semibold{font-weight:600}.text-\\[--bcm-accordion-text\\]{color:var(--bcm-accordion-text)}.shadow{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.transition-all{transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-transform{transition-duration:.15s;transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1)}.duration-300{transition-duration:.3s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}";
5
- const BcmAccordionStyle0 = accordionCss;
6
-
7
- const BcmAccordion = class {
8
- constructor(hostRef) {
9
- registerInstance(this, hostRef);
10
- this.bcmAccordionChange = createEvent(this, "bcmAccordionChange", 1);
11
- /**
12
- * Controls whether the accordion is expanded or collapsed.
13
- * @prop
14
- * @defaultValue false
15
- */
16
- this.expanded = false;
17
- /**
18
- * Indicates if the accordion is part of a group.
19
- * Used for group behavior coordination.
20
- * @prop
21
- * @defaultValue false
22
- */
23
- this.group = false;
24
- /**
25
- * Tracks whether footer content is present.
26
- * @state
27
- */
28
- this.hasFooterContent = false;
29
- /**
30
- * Handles changes to the footer slot content.
31
- * @private
32
- * @param e - Slot change event
33
- */
34
- this.handleFooterSlotChange = (e) => {
35
- const slot = e.target;
36
- const assignedNodes = slot.assignedNodes();
37
- this.hasFooterContent = assignedNodes.length > 0;
38
- };
39
- this.accordionClass = ce({
40
- slots: {
41
- container: 'accordion-container flex flex-col bcm-ui-element w-full ',
42
- header: 'accordion-header flex flex-row justify-between gap-2 p-4 w-full flex-nowrap rounded-[--bcm-accordion-radius] bg-[--bcm-accordion-bg] text-[--bcm-accordion-text] font-semibold text-size-6 cursor-pointer',
43
- content: 'accordion-content overflow-hidden transition-all duration-300 ease-in-out bg-color-basic-base',
44
- footer: 'accordion-footer flex flex-row w-full flex-nowrap bg-[--bcm-accordion-footer-bg] text-[--bcm-accordion-text] px-4 py-2 gap-2 text-size-4 font-normal',
45
- icon: 'accordion-icon cursor-pointer transform transition-transform duration-300',
46
- rightSection: 'accordion-right-section flex flex-row gap-2.5 items-center',
47
- },
48
- variants: {
49
- hasFooterContent: {
50
- false: { footer: 'hidden' },
51
- true: { footer: 'flex' },
52
- },
53
- expanded: {
54
- true: { icon: 'rotate-180' },
55
- false: {
56
- icon: 'rotate-0',
57
- content: '',
58
- },
59
- },
60
- },
61
- }, {
62
- twMerge: false,
63
- });
64
- }
65
- /**
66
- * Toggles the accordion's expanded state.
67
- * @method
68
- * @returns Promise<void>
69
- */
70
- async toggle() {
71
- this.expanded = !this.expanded;
72
- this.updateAccordion();
73
- }
74
- /**
75
- * Expands the accordion if it's not already expanded.
76
- * @method
77
- * @returns Promise<void>
78
- */
79
- async expand() {
80
- if (!this.expanded) {
81
- this.expanded = true;
82
- this.updateAccordion();
83
- }
84
- }
85
- /**
86
- * Collapses the accordion if it's currently expanded.
87
- * @method
88
- * @returns Promise<void>
89
- */
90
- async collapse() {
91
- if (this.expanded) {
92
- this.expanded = false;
93
- this.updateAccordion();
94
- }
95
- }
96
- /**
97
- * Updates the accordion's content height and emits change event.
98
- * @private
99
- */
100
- updateAccordion() {
101
- if (this.contentEl) {
102
- this.contentEl.style.maxHeight = this.expanded ? `${this.contentEl.scrollHeight}px` : '0px';
103
- }
104
- this.bcmAccordionChange.emit({ expanded: this.expanded, source: this.host });
105
- }
106
- render() {
107
- const { container, header, content, footer, icon, rightSection } = this.accordionClass({
108
- hasFooterContent: this.hasFooterContent || !!this.hintText,
109
- expanded: this.expanded,
110
- });
111
- return (h("div", { key: '922ea5d855cd5f258b818f88eb84816f70f86c7b', class: container() }, h("header", { key: 'fba4262f2f89b844ddad4281adb5afe1c1259098', class: header(), role: "button", tabindex: "0", "aria-expanded": this.expanded.toString(), "aria-controls": "accordion-content", onKeyDown: e => {
112
- if (e.key === 'Enter' || e.key === ' ') {
113
- e.preventDefault();
114
- this.toggle();
115
- }
116
- }, onClick: () => this.toggle() }, h("slot", { key: '6fcc3e3a53a72d5c75cea2fba06492d8f37a0acb', name: "title" }, this.headerTitle), h("div", { key: '8081368dfd97ee1dea78e5321afce756d0ea50b8', class: rightSection() }, h("span", { key: 'e0812c8a241eb68013235903361fb686569404f6', onClick: e => e.stopPropagation() }, h("slot", { key: '1297931978197bde53b3440f21b44390f6c1ea9f', name: "actions" })), h("bcm-icon", { key: '68c98f6de7971a133353fc0d2e32cff6ab7fbf21', name: "fa-regular fa-chevron-down", class: icon() }))), h("div", { key: 'a4b4af57da514152f5f70629d4eb1da6e03e7d0e', class: content(), style: { maxHeight: this.expanded ? 'auto' : '0px' }, ref: el => (this.contentEl = el) }, h("div", { key: '95ccdde513bfe397fb877b86f53d27c1746c1aba', class: "px-4 py-2" }, h("slot", { key: '30ed3ced7b157bb46b8aaae37811f3decbc878cf' })), h("footer", { key: '1a9fe8f54b1969518bb9096ee7366188bbde05e0', class: footer() }, h("slot", { key: 'cf95b6191c48ec329098e4de21ae16c1fcb048ba', name: "footer", onSlotchange: this.handleFooterSlotChange }, this.hintText)))));
117
- }
118
- get host() { return getElement(this); }
119
- };
120
- BcmAccordion.style = BcmAccordionStyle0;
121
-
122
- const accordionGroupCss = "*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scroll-snap-strictness:proximity;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(147,197,253,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;border:0 solid oklch(.928 .006 264.531);box-sizing:border-box}::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scroll-snap-strictness:proximity;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(147,197,253,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;}/*! tailwindcss v3.4.17 | MIT License | https://tailwindcss.com*/:after,:before{--tw-content:\"\"}:host,html{-webkit-text-size-adjust:100%;font-feature-settings:normal;-webkit-tap-highlight-color:transparent;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-variation-settings:normal;line-height:1.5;-moz-tab-size:4;tab-size:4}body{line-height:inherit;margin:0}hr{border-top-width:1px;color:inherit;height:0}abbr:where([title]){text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-feature-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em;font-variation-settings:normal}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}button,input,optgroup,select,textarea{font-feature-settings:inherit;color:inherit;font-family:inherit;font-size:100%;font-variation-settings:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,fieldset,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:oklch(.707 .022 261.325);opacity:1}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}[hidden]:where(:not([hidden=until-found])){display:none}.block{display:block}:host{--bcm-accordion-border:var(--bcm-ui-color-border-default);--bcm-accordion-radius:6px;display:block;width:100%}.bcm-ui-element{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji}.collapse{visibility:collapse}.static{position:static}.flex{display:flex}.w-full{width:100%}.flex-col{flex-direction:column}.rounded-\\[--bcm-accordion-radius\\]{border-radius:var(--bcm-accordion-radius)}.border{border-width:1px}.border-\\[--bcm-accordion-border\\]{border-color:var(--bcm-accordion-border)}.shadow{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}";
123
- const BcmAccordionGroupStyle0 = accordionGroupCss;
124
-
125
- const BcmAccordionGroup = class {
126
- constructor(hostRef) {
127
- registerInstance(this, hostRef);
128
- this.bcmAccordionGroupChange = createEvent(this, "bcmAccordionGroupChange", 1);
129
- /** Controls whether multiple accordions can be expanded simultaneously */
130
- this.multi = false;
131
- /** Array of accordion elements within the group */
132
- this.accordionItems = [];
133
- /**
134
- * Updates the accordion items array when slot content changes
135
- */
136
- this.handleSlotChange = () => {
137
- this.accordionItems = Array.from(this.host.querySelectorAll('bcm-accordion'));
138
- this.setGroupBehavior();
139
- // Validate accordion items
140
- if (this.accordionItems.length === 0) {
141
- console.warn('No accordion items found in accordion group');
142
- }
143
- };
144
- }
145
- /**
146
- * Expands all accordions in the group
147
- * Only available when multi=true
148
- */
149
- async expandAll() {
150
- if (!this.multi) {
151
- console.warn('expandAll is only available when multi=true');
152
- return;
153
- }
154
- await Promise.all(this.accordionItems.map(item => item.expand()));
155
- }
156
- /**
157
- * Collapses all accordions in the group
158
- */
159
- async collapseAll() {
160
- await Promise.all(this.accordionItems.map(item => item.collapse()));
161
- }
162
- /**
163
- * Returns an array of currently expanded accordion elements
164
- */
165
- async getExpandedItems() {
166
- return this.accordionItems.filter(item => item.expanded);
167
- }
168
- componentWillLoad() {
169
- this.handleSlotChange();
170
- }
171
- setGroupBehavior() {
172
- this.accordionItems.forEach(item => {
173
- item.group = true;
174
- });
175
- }
176
- /**
177
- * Handles state changes of individual accordions
178
- */
179
- handleAccordionChange(event) {
180
- this.handleSlotChange();
181
- const { expanded, source } = event === null || event === void 0 ? void 0 : event.detail;
182
- if (!this.multi) {
183
- this.accordionItems.forEach(item => {
184
- if (item !== source) {
185
- item.collapse();
186
- }
187
- item.expanded = item === source ? expanded : false;
188
- });
189
- }
190
- const expandedItems = this.accordionItems.filter(item => item.expanded);
191
- this.bcmAccordionGroupChange.emit({
192
- expanded,
193
- changed: source,
194
- expandedItems,
195
- expandedCount: expandedItems.length,
196
- });
197
- }
198
- render() {
199
- return (h("div", { key: '0f246414941ec5215aa36b0a7c063e8782d0db2a', class: "flex flex-col bcm-ui-element w-full border border-[--bcm-accordion-border] rounded-[--bcm-accordion-radius]", role: "group", "aria-label": "Accordion group" }, h("slot", { key: 'b4ea13c00603855d4629fc9cfc0d85c64ef5bce7', onSlotchange: this.handleSlotChange })));
200
- }
201
- get host() { return getElement(this); }
202
- };
203
- BcmAccordionGroup.style = BcmAccordionGroupStyle0;
204
-
205
- const variantOptions = {
206
- save: {
207
- text: 'Save',
208
- status: 'success',
209
- icon: 'far fa-save',
210
- iconPosition: 'prefix',
211
- kind: 'primary',
212
- },
213
- ok: {
214
- text: 'Ok',
215
- status: 'success',
216
- icon: 'far fa-check',
217
- iconPosition: 'prefix',
218
- },
219
- new: {
220
- text: 'New',
221
- status: 'success',
222
- icon: 'far fa-plus',
223
- iconPosition: 'prefix',
224
- },
225
- add: {
226
- text: 'Add',
227
- status: 'success',
228
- icon: 'far fa-plus',
229
- iconPosition: 'prefix',
230
- },
231
- create: {
232
- text: 'Create',
233
- status: 'success',
234
- icon: 'far fa-plus',
235
- iconPosition: 'prefix',
236
- },
237
- prev: {
238
- text: 'Prev',
239
- status: 'default',
240
- icon: 'far fa-arrow-left',
241
- iconPosition: 'prefix',
242
- },
243
- next: {
244
- text: 'Next',
245
- status: 'default',
246
- icon: 'far fa-arrow-right',
247
- iconPosition: 'suffix',
248
- },
249
- apply: {
250
- text: 'Apply',
251
- status: 'default',
252
- icon: 'far fa-check-circle',
253
- iconPosition: 'prefix',
254
- },
255
- submit: {
256
- text: 'Submit',
257
- status: 'default',
258
- icon: 'far fa-save',
259
- iconPosition: 'prefix',
260
- },
261
- send: {
262
- text: 'Send',
263
- status: 'success',
264
- icon: 'far fa-paper-plane',
265
- iconPosition: 'prefix',
266
- },
267
- delete: {
268
- text: 'Delete',
269
- status: 'error',
270
- icon: 'far fa-trash',
271
- iconPosition: 'prefix',
272
- },
273
- cancel: {
274
- text: 'Cancel',
275
- status: 'error',
276
- icon: 'far fa-times',
277
- iconPosition: 'prefix',
278
- },
279
- decline: {
280
- text: 'Decline',
281
- status: 'error',
282
- icon: 'far fa-ban',
283
- iconPosition: 'prefix',
284
- },
285
- close: {
286
- text: 'Close',
287
- status: 'error',
288
- icon: 'far fa-times-circle',
289
- iconPosition: 'prefix',
290
- },
291
- archive: {
292
- text: 'Archive',
293
- status: 'error',
294
- icon: 'far fa-folder-open',
295
- iconPosition: 'prefix',
296
- },
297
- remove: {
298
- text: 'Remove',
299
- status: 'error',
300
- icon: 'far fa-minus-circle',
301
- iconPosition: 'prefix',
302
- },
303
- edit: {
304
- text: 'Edit',
305
- status: 'default',
306
- icon: 'far fa-edit',
307
- iconPosition: 'prefix',
308
- },
309
- export: {
310
- text: 'Export',
311
- status: 'default',
312
- icon: 'far fa-sign-out',
313
- iconPosition: 'prefix',
314
- },
315
- import: {
316
- text: 'Import',
317
- status: 'default',
318
- icon: 'far fa-sign-in',
319
- iconPosition: 'prefix',
320
- },
321
- filter: {
322
- text: 'Filter',
323
- status: 'default',
324
- icon: 'far fa-filter',
325
- iconPosition: 'prefix',
326
- },
327
- update: {
328
- text: 'Update',
329
- status: 'default',
330
- icon: 'far fa-sync',
331
- iconPosition: 'prefix',
332
- },
333
- reset: {
334
- text: 'Reset',
335
- status: 'default',
336
- icon: 'far fa-sync',
337
- iconPosition: 'prefix',
338
- },
339
- download: {
340
- text: 'Download',
341
- status: 'default',
342
- icon: 'far fa-download',
343
- iconPosition: 'prefix',
344
- },
345
- };
346
-
347
- const buttonCss = "*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scroll-snap-strictness:proximity;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(147,197,253,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;border:0 solid oklch(.928 .006 264.531);box-sizing:border-box}::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scroll-snap-strictness:proximity;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(147,197,253,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;}/*! tailwindcss v3.4.17 | MIT License | https://tailwindcss.com*/:after,:before{--tw-content:\"\"}:host,html{-webkit-text-size-adjust:100%;font-feature-settings:normal;-webkit-tap-highlight-color:transparent;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-variation-settings:normal;line-height:1.5;-moz-tab-size:4;tab-size:4}body{line-height:inherit;margin:0}hr{border-top-width:1px;color:inherit;height:0}abbr:where([title]){text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-feature-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em;font-variation-settings:normal}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}button,input,optgroup,select,textarea{font-feature-settings:inherit;color:inherit;font-family:inherit;font-size:100%;font-variation-settings:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,fieldset,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:oklch(.707 .022 261.325);opacity:1}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}[hidden]:where(:not([hidden=until-found])){display:none}:host{display:inline-block}:host([full-width]){width:100%}.static{position:static}.inline-flex{display:inline-flex}.min-h-10{min-height:2.5rem}.min-h-6{min-height:1.5rem}.min-h-8{min-height:2rem}.w-full{width:100%}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.appearance-none{appearance:none}.items-center{align-items:center}.justify-center{justify-content:center}.rounded{border-radius:.25rem}.border{border-width:1px}.border-\\[--bcm-button-border\\]{border-color:var(--bcm-button-border)}.bg-\\[--bcm-button-bg\\]{background-color:var(--bcm-button-bg)}.bg-\\[--bcm-ui-color-background-disabled-default\\]{background-color:var(--bcm-ui-color-background-disabled-default)}.px-2{padding-left:.5rem;padding-right:.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.py-0\\.5{padding-bottom:.125rem;padding-top:.125rem}.py-1{padding-bottom:.25rem;padding-top:.25rem}.py-px{padding-bottom:1px;padding-top:1px}.text-size-4{font-size:var(--bcm-ui-font-size-4,14px);line-height:var(--bcm-ui-line-height-4,20px)}.text-size-5{font-size:var(--bcm-ui-font-size-5,16px);line-height:var(--bcm-ui-line-height-5,24px)}.text-size-6{font-size:var(--bcm-ui-font-size-6,18px);line-height:var(--bcm-ui-line-height-6,24px)}.leading-none{line-height:1}.text-\\[--bcm-button-text\\]{color:var(--bcm-button-text)}.text-color-disabled{color:var(--bcm-ui-color-text-disabled)}.shadow{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.outline{outline-style:solid}.hover\\:bg-\\[--bcm-button-bg-hover\\]:hover{background-color:var(--bcm-button-bg-hover)}.focus-visible\\:ring:focus-visible{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.active\\:bg-\\[--bcm-button-bg-active\\]:active{background-color:var(--bcm-button-bg-active)}";
348
- const BcmButtonStyle0 = buttonCss;
349
-
350
- const BcmButton = class {
351
- constructor(hostRef) {
352
- registerInstance(this, hostRef);
353
- this.bcmClick = createEvent(this, "bcmClick", 1);
354
- this.bcmFocus = createEvent(this, "bcmFocus", 1);
355
- this.bcmBlur = createEvent(this, "bcmBlur", 1);
356
- /** Defines the main visual style of the button */
357
- this.kind = 'primary';
358
- /** Controls the button size */
359
- this.size = 'medium';
360
- /** Defines the button's status/state color */
361
- this.status = 'default';
362
- /** Icon placement (prefix/suffix) */
363
- this.iconPosition = 'prefix';
364
- /** Icon-only button mode */
365
- this.iconOnly = false;
366
- /** Full width button */
367
- this.fullWidth = false;
368
- /** HTML button type */
369
- this.type = 'button';
370
- /** Loading state */
371
- this.loading = false;
372
- /** Disabled state */
373
- this.disabled = false;
374
- /** Active state */
375
- this.active = false;
376
- this.handleClick = (event) => {
377
- if (!this.disabled && !this.loading) {
378
- this.bcmClick.emit(event);
379
- }
380
- };
381
- this.handleFocus = (event) => {
382
- this.bcmFocus.emit(event);
383
- };
384
- this.handleBlur = (event) => {
385
- this.bcmBlur.emit(event);
386
- };
387
- this.buttonClass = ce({
388
- base: 'bcm-button appearance-none inline-flex items-center justify-center border rounded',
389
- variants: {
390
- size: {
391
- small: 'text-size-4 py-px px-2 min-h-6',
392
- medium: 'text-size-5 py-0.5 px-3 min-h-8',
393
- large: 'text-size-6 py-1 px-3 min-h-10',
394
- },
395
- kind: {
396
- primary: 'kind-primary',
397
- ghost: 'kind-ghost',
398
- text: 'kind-text',
399
- outline: 'kind-outline',
400
- },
401
- fullWidth: {
402
- true: 'full-width w-full',
403
- },
404
- disabled: {
405
- true: 'disabled cursor-not-allowed bg-[--bcm-ui-color-background-disabled-default] text-color-disabled border-color-disabled',
406
- false: [
407
- 'cursor-pointer',
408
- 'bg-[--bcm-button-bg] text-[--bcm-button-text] border-[--bcm-button-border]',
409
- 'hover:bg-[--bcm-button-bg-hover]',
410
- 'active:bg-[--bcm-button-bg-active]',
411
- 'focus-visible:ring',
412
- ],
413
- },
414
- loading: {
415
- true: '',
416
- },
417
- },
418
- defaultVariants: {
419
- size: 'medium',
420
- kind: 'primary',
421
- fullWidth: false,
422
- disabled: false,
423
- loading: false,
424
- },
425
- }, {
426
- twMerge: false,
427
- });
428
- }
429
- get buttonText() {
430
- return this.text || (this.variant ? variantOptions[this.variant].text : '');
431
- }
432
- get buttonIcon() {
433
- if (this.variant && variantOptions[this.variant].icon) {
434
- return {
435
- icon: variantOptions[this.variant].icon,
436
- position: variantOptions[this.variant].iconPosition || 'prefix',
437
- };
438
- }
439
- return {
440
- icon: this.icon,
441
- position: this.iconPosition,
442
- };
443
- }
444
- get buttonStatus() {
445
- return this.variant ? variantOptions[this.variant].status : this.status;
446
- }
447
- get buttonStyles() {
448
- const status = this.buttonStatus === 'default' ? 'primary' : this.buttonStatus;
449
- const kindStyleMap = {
450
- primary: {
451
- '--bcm-button-bg': `var(--bcm-ui-color-background-${status}-default)`,
452
- '--bcm-button-bg-hover': `var(--bcm-ui-color-background-${status}-hover)`,
453
- '--bcm-button-bg-active': `var(--bcm-ui-color-background-${status}-active)`,
454
- '--bcm-button-border': 'transparent',
455
- '--bcm-button-text': 'var(--bcm-ui-color-text-base)',
456
- },
457
- outline: {
458
- '--bcm-button-bg': 'var(--bcm-ui-color-background-default-default)',
459
- '--bcm-button-bg-hover': 'var(--bcm-ui-color-background-default-hover)',
460
- '--bcm-button-bg-active': 'var(--bcm-ui-color-background-default-active)',
461
- '--bcm-button-border': `var(--bcm-ui-color-border-${this.buttonStatus})`,
462
- '--bcm-button-text': `var(--bcm-ui-color-text-${this.buttonStatus})`,
463
- },
464
- ghost: {
465
- '--bcm-button-bg': 'transparent',
466
- '--bcm-button-bg-hover': 'var(--bcm-ui-color-background-default-hover)',
467
- '--bcm-button-bg-active': 'var(--bcm-ui-color-background-default-active)',
468
- '--bcm-button-border': 'transparent',
469
- '--bcm-button-text': `var(--bcm-ui-color-text-${this.buttonStatus})`,
470
- },
471
- text: {
472
- '--bcm-button-bg': 'transparent',
473
- '--bcm-button-bg-hover': 'var(--bcm-ui-color-background-default-hover)',
474
- '--bcm-button-bg-active': 'var(--bcm-ui-color-background-default-active)',
475
- '--bcm-button-border': 'transparent',
476
- '--bcm-button-text': `var(--bcm-ui-color-text-${status})`,
477
- },
478
- };
479
- return kindStyleMap[this.kind];
480
- }
481
- render() {
482
- const { icon, position } = this.buttonIcon;
483
- return (h(Host, { key: '970e33c22b5c7b815762920b218088fcf980ba3e' }, h("button", { key: '1d00136bed5fba54df1b6f2f2dfe5a155d5933c1', type: this.type, disabled: this.disabled || this.loading, "aria-label": this.label, "aria-expanded": this.expanded, "aria-controls": this.controls, "aria-disabled": this.disabled, onClick: this.handleClick, onFocus: this.handleFocus, onBlur: this.handleBlur, style: this.buttonStyles, class: this.buttonClass({
484
- size: this.size,
485
- kind: this.kind,
486
- fullWidth: this.fullWidth,
487
- disabled: this.disabled,
488
- loading: this.loading,
489
- }) }, this.loading && h("slot", { key: 'fe42c3911beb20b7d76c12a0ce074ed294f35be3', name: "loading" }), h("span", { key: 'b4641860c9f78f31781c67d31bac0ab13a1ee57c' }, h("slot", { key: '004a0c0dba951e98855052dcd22addd54ac68058', name: "prefix" }, position === 'prefix' && icon && h("i", { key: '14acdc3bc362299cd44de73020db1f39bcfde0e5', class: ' leading-none ' + icon }))), h("slot", { key: '5107ceba98d4afc46f30a30eb241017f191b7596' }, this.buttonText), h("span", { key: '10ed1133840150f0465d2cfbf1a5e01668e17740' }, h("slot", { key: '29b01689a22d7a5a6679c35232617cab900ca568', name: "suffix" }, position === 'suffix' && icon && h("i", { key: '3b590cf1040b2dd551a9001c07d52b071139d1c5', class: ' leading-none ' + icon }))))));
490
- }
491
- };
492
- BcmButton.style = BcmButtonStyle0;
493
-
494
- const STATUS_COLORS = {
495
- info: 'blue',
496
- error: 'red',
497
- warning: 'amber',
498
- success: 'green',
499
- };
500
-
501
- const chipCss = "*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scroll-snap-strictness:proximity;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(147,197,253,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;border:0 solid oklch(.928 .006 264.531);box-sizing:border-box}::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scroll-snap-strictness:proximity;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(147,197,253,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;}/*! tailwindcss v3.4.17 | MIT License | https://tailwindcss.com*/:after,:before{--tw-content:\"\"}:host,html{-webkit-text-size-adjust:100%;font-feature-settings:normal;-webkit-tap-highlight-color:transparent;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-variation-settings:normal;line-height:1.5;-moz-tab-size:4;tab-size:4}body{line-height:inherit;margin:0}hr{border-top-width:1px;color:inherit;height:0}abbr:where([title]){text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-feature-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em;font-variation-settings:normal}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}button,input,optgroup,select,textarea{font-feature-settings:inherit;color:inherit;font-family:inherit;font-size:100%;font-variation-settings:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,fieldset,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:oklch(.707 .022 261.325);opacity:1}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}[hidden]:where(:not([hidden=until-found])){display:none}:host{--bcm-chip-bg:var(--bcm-ui-color-background-default-default);--bcm-chip-text:var(--bcm-ui-color-text-default);--bcm-chip-border:var(--bcm-ui-color-border-default);--bcm-chip-hover-bg:var(--bcm-ui-color-background-default-hover);--bcm-chip-active-bg:var(--bcm-ui-color-background-default-active);--bcm-chip-radius:6px;display:inline-block}.bcm-ui-element{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji}.flex{display:flex}.w-full{width:100%}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.items-center{align-items:center}.gap-1{gap:.25rem}.rounded-\\[--bcm-chip-radius\\]{border-radius:var(--bcm-chip-radius)}.border{border-width:1px}.border-none{border-style:none}.border-\\[--bcm-chip-border\\]{border-color:var(--bcm-chip-border)}.border-transparent{border-color:transparent}.bg-\\[--bcm-chip-bg\\]{background-color:var(--bcm-chip-bg)}.px-2{padding-left:.5rem;padding-right:.5rem}.py-0\\.5{padding-bottom:.125rem;padding-top:.125rem}.py-1{padding-bottom:.25rem;padding-top:.25rem}.py-px{padding-bottom:1px;padding-top:1px}.text-size-3{font-size:var(--bcm-ui-font-size-3,12px);line-height:var(--bcm-ui-line-height-3,16px)}.text-size-4{font-size:var(--bcm-ui-font-size-4,14px);line-height:var(--bcm-ui-line-height-4,20px)}.text-size-5{font-size:var(--bcm-ui-font-size-5,16px);line-height:var(--bcm-ui-line-height-5,24px)}.font-normal{font-weight:400}.text-\\[--bcm-chip-text\\]{color:var(--bcm-chip-text)}.shadow{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.hover\\:bg-\\[--bcm-chip-hover-bg\\]:hover{background-color:var(--bcm-chip-hover-bg)}.active\\:bg-\\[--bcm-chip-active-bg\\]:active{background-color:var(--bcm-chip-active-bg)}";
502
- const BcmChipStyle0 = chipCss;
503
-
504
- const BcmChip = class {
505
- constructor(hostRef) {
506
- registerInstance(this, hostRef);
507
- this.bcmDismiss = createEvent(this, "bcmDismiss", 1);
508
- /** Chip size variant */
509
- this.size = 'medium';
510
- /** Chip style variant */
511
- this.kind = 'filled';
512
- /** Chip status */
513
- this.status = 'default';
514
- /** Whether chip can be dismissed */
515
- this.dismissible = false;
516
- /** Whether chip is disabled */
517
- this.disabled = false;
518
- this.chipClass = ce({
519
- base: [
520
- 'chip bcm-ui-element font-normal flex items-center px-2 gap-1 w-full border',
521
- 'bg-[--bcm-chip-bg] text-[--bcm-chip-text] rounded-[--bcm-chip-radius] border-[--bcm-chip-border]',
522
- 'hover:bg-[--bcm-chip-hover-bg] active:bg-[--bcm-chip-active-bg]',
523
- ],
524
- variants: {
525
- size: {
526
- small: 'small py-px text-size-3',
527
- medium: 'medium py-0.5 text-size-4',
528
- large: 'large py-1 text-size-5',
529
- },
530
- kind: {
531
- filled: 'filled border-transparent',
532
- outlined: 'outlined',
533
- text: 'text border-none',
534
- },
535
- disabled: {
536
- true: 'cursor-not-allowed',
537
- },
538
- },
539
- }, { twMerge: false });
540
- }
541
- get chipStyle() {
542
- let _color = this.color;
543
- if (this.disabled) {
544
- return {
545
- '--bcm-chip-bg': 'var(--bcm-ui-color-background-disabled-default)',
546
- '--bcm-chip-text': 'var(--bcm-ui-color-text-disabled)',
547
- '--bcm-chip-border': 'var(--bcm-ui-color-border-disabled)',
548
- '--bcm-chip-hover-bg': 'var(--bcm-ui-color-background-disabled-default)',
549
- '--bcm-chip-active-bg': 'var(--bcm-ui-color-background-disabled-default)',
550
- };
551
- }
552
- if (this.status !== 'default') {
553
- _color = STATUS_COLORS[this.status];
554
- }
555
- const styles = {
556
- filled: {
557
- '--bcm-chip-bg': `var(--bcm-ui-color-background-palette-${_color}-default)`,
558
- '--bcm-chip-text': `var(--bcm-ui-color-text-palette-${_color})`,
559
- '--bcm-chip-border': `var(--bcm-ui-color-border-${_color})`,
560
- '--bcm-chip-hover-bg': `var(--bcm-ui-color-background-palette-${_color}-hover)`,
561
- '--bcm-chip-active-bg': `var(--bcm-ui-color-background-palette-${_color}-active)`,
562
- },
563
- outlined: {
564
- '--bcm-chip-bg': 'transparent',
565
- '--bcm-chip-text': `var(--bcm-ui-color-text-palette-${_color})`,
566
- '--bcm-chip-border': `var(--bcm-ui-color-border-${_color})`,
567
- '--bcm-chip-hover-bg': `var(--bcm-ui-color-background-palette-${_color}-hover)`,
568
- '--bcm-chip-active-bg': `var(--bcm-ui-color-background-palette-${_color}-active)`,
569
- },
570
- text: {
571
- '--bcm-chip-bg': 'transparent',
572
- '--bcm-chip-text': `var(--bcm-ui-color-text-palette-${_color})`,
573
- '--bcm-chip-border': 'transparent',
574
- '--bcm-chip-hover-bg': `var(--bcm-ui-color-background-palette-${_color}-hover)`,
575
- '--bcm-chip-active-bg': `var(--bcm-ui-color-background-palette-${_color}-active)`,
576
- },
577
- };
578
- const defaultStyles = {
579
- filled: {
580
- '--bcm-chip-bg': 'var(--bcm-ui-color-background-default-default)',
581
- '--bcm-chip-text': 'var(--bcm-ui-color-text-default)',
582
- '--bcm-chip-border': 'var(--bcm-ui-color-border-default)',
583
- '--bcm-chip-hover-bg': 'var(--bcm-ui-color-background-default-hover)',
584
- '--bcm-chip-active-bg': 'var(--bcm-ui-color-background-default-active)',
585
- },
586
- outlined: {
587
- '--bcm-chip-bg': 'transparent',
588
- '--bcm-chip-text': 'var(--bcm-ui-color-text-default)',
589
- '--bcm-chip-border': 'var(--bcm-ui-color-border-default)',
590
- '--bcm-chip-hover-bg': 'var(--bcm-ui-color-background-default-hover)',
591
- '--bcm-chip-active-bg': 'var(--bcm-ui-color-background-default-active)',
592
- },
593
- text: {
594
- '--bcm-chip-bg': 'transparent',
595
- '--bcm-chip-text': 'var(--bcm-ui-color-text-default)',
596
- '--bcm-chip-border': 'transparent',
597
- '--bcm-chip-hover-bg': 'var(--bcm-ui-color-background-default-hover)',
598
- '--bcm-chip-active-bg': 'var(--bcm-ui-color-background-default-active)',
599
- },
600
- };
601
- return _color ? styles[this.kind] : defaultStyles[this.kind];
602
- }
603
- handleDismiss() {
604
- if (!this.disabled) {
605
- this.bcmDismiss.emit();
606
- }
607
- }
608
- render() {
609
- return (h("div", { key: '83c822b736059446f9f19c9112ab8b11a1aa17b9', style: this.chipStyle, class: this.chipClass({ size: this.size, kind: this.kind, disabled: this.disabled }), role: "button", "aria-disabled": this.disabled ? 'true' : 'false' }, h("slot", { key: 'ef139f27de5b6f3d1c0077a08882fd965b0745c8' }), this.dismissible && h("bcm-icon", { key: '7ac646b4641eb8bd8db9df3e25895bf5b45231c5', onClick: () => this.handleDismiss(), class: "cursor-pointer", "icon-name": "fa-regular fa-xmark", "aria-label": "Dismiss chip" })));
610
- }
611
- };
612
- BcmChip.style = BcmChipStyle0;
613
-
614
- export { BcmAccordion as bcm_accordion, BcmAccordionGroup as bcm_accordion_group, BcmButton as bcm_button, BcmChip as bcm_chip };
615
-
616
- //# sourceMappingURL=bcm-accordion_4.entry.js.map