bromcom-ui-next 0.1.17 → 0.1.18
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.
- package/dist/bromcom-ui/bromcom-ui.esm.js +1 -1
- package/dist/bromcom-ui/bromcom-ui.esm.js.map +1 -1
- package/dist/bromcom-ui/{p-404e19f9.entry.js → p-145dce31.entry.js} +2 -2
- package/dist/bromcom-ui/{p-dd488642.entry.js → p-1e5da10e.entry.js} +2 -2
- package/dist/bromcom-ui/p-490fc076.entry.js +2 -0
- package/dist/bromcom-ui/p-490fc076.entry.js.map +1 -0
- package/dist/bromcom-ui/p-5880a7d8.entry.js +2 -0
- package/dist/bromcom-ui/{p-37dc30d4.entry.js.map → p-5880a7d8.entry.js.map} +1 -1
- package/dist/bromcom-ui/p-67ceb7f3.entry.js +2 -0
- package/dist/bromcom-ui/{p-55e91bf6.entry.js.map → p-67ceb7f3.entry.js.map} +1 -1
- package/dist/bromcom-ui/{p-09814383.entry.js → p-8360b225.entry.js} +2 -2
- package/dist/bromcom-ui/{p-aae240d5.entry.js → p-9ba07f12.entry.js} +2 -2
- package/dist/bromcom-ui/p-9f3f29a7.entry.js +2 -0
- package/dist/bromcom-ui/{p-b8292fb2.entry.js.map → p-9f3f29a7.entry.js.map} +1 -1
- package/dist/bromcom-ui/{p-adda3b4e.entry.js → p-a02e437c.entry.js} +2 -2
- package/dist/bromcom-ui/{p-0721540b.entry.js → p-b582c170.entry.js} +2 -2
- package/dist/bromcom-ui/{p-bad19289.entry.js → p-b867a105.entry.js} +2 -2
- package/dist/bromcom-ui/{p-7e97d4e2.entry.js → p-bbe4aac2.entry.js} +2 -2
- package/dist/bromcom-ui/{p-76631abc.entry.js → p-bc962a70.entry.js} +2 -2
- package/dist/bromcom-ui/{p-49a74afe.entry.js → p-d975579d.entry.js} +2 -2
- package/dist/bromcom-ui/{p-77abe8d1.entry.js → p-e2f468ab.entry.js} +2 -2
- package/dist/cjs/bcm-accordion-group.cjs.entry.js +1 -1
- package/dist/cjs/bcm-accordion-group.cjs.entry.js.map +1 -1
- package/dist/cjs/{bcm-button_7.cjs.entry.js → bcm-button_8.cjs.entry.js} +208 -9
- package/dist/cjs/bcm-button_8.cjs.entry.js.map +1 -0
- package/dist/cjs/bcm-pop-confirm.cjs.entry.js +1 -1
- package/dist/cjs/bcm-popover.cjs.entry.js +1 -1
- package/dist/cjs/bcm-radio-group.cjs.entry.js +2 -2
- package/dist/cjs/bcm-radio.cjs.entry.js +1 -1
- package/dist/cjs/bcm-segmented-picker-option.cjs.entry.js +2 -2
- package/dist/cjs/bcm-segmented-picker.cjs.entry.js +2 -2
- package/dist/cjs/bcm-switch.cjs.entry.js +2 -2
- package/dist/cjs/bcm-tabs-content.cjs.entry.js +2 -2
- package/dist/cjs/bcm-tabs-content.cjs.entry.js.map +1 -1
- package/dist/cjs/bcm-tabs-list.cjs.entry.js +1 -1
- package/dist/cjs/bcm-tabs-trigger.cjs.entry.js +2 -2
- package/dist/cjs/bcm-tabs-trigger.cjs.entry.js.map +1 -1
- package/dist/cjs/bcm-tabs.cjs.entry.js +1 -1
- package/dist/cjs/bcm-textarea.cjs.entry.js +3 -3
- package/dist/cjs/bcm-tooltip.cjs.entry.js +1 -1
- package/dist/cjs/bromcom-ui.cjs.js +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/collection/collection-manifest.json +1 -0
- package/dist/collection/components/accordion-group/accordion-group.css +1 -1
- package/dist/collection/components/button/button.css +1 -1
- package/dist/collection/components/drawer/drawer.component.js +451 -0
- package/dist/collection/components/drawer/drawer.component.js.map +1 -0
- package/dist/collection/components/drawer/drawer.css +1 -0
- package/dist/collection/components/dropdown/dropdown.component.js +1 -1
- package/dist/collection/components/dropdown-item/dropdown-item.component.js +2 -2
- package/dist/collection/components/input/input.component.js +2 -2
- package/dist/collection/components/pop-confirm/pop-confirm.component.js +1 -1
- package/dist/collection/components/popover/popover.component.js +1 -1
- package/dist/collection/components/radio/radio.component.js +1 -1
- package/dist/collection/components/radio-group/radio-group.component.js +2 -2
- package/dist/collection/components/segmented-picker/segmented-picker-option.component.js +2 -2
- package/dist/collection/components/segmented-picker/segmented-picker.component.js +2 -2
- package/dist/collection/components/shortcut/shortcut.js +1 -1
- package/dist/collection/components/switch/switch.component.js +2 -2
- package/dist/collection/components/tabs/tabs-content.component.js +1 -1
- package/dist/collection/components/tabs/tabs-content.css +1 -1
- package/dist/collection/components/tabs/tabs-list.component.js +1 -1
- package/dist/collection/components/tabs/tabs-trigger.component.js +1 -1
- package/dist/collection/components/tabs/tabs-trigger.css +1 -1
- package/dist/collection/components/tabs/tabs.component.js +1 -1
- package/dist/collection/components/text/text.component.js +1 -1
- package/dist/collection/components/textarea/textarea.component.js +3 -3
- package/dist/collection/components/tooltip/tooltip.component.js +1 -1
- package/dist/components/bcm-accordion-group.js +1 -1
- package/dist/components/bcm-accordion-group.js.map +1 -1
- package/dist/components/bcm-button.js +1 -1
- package/dist/components/bcm-drawer.d.ts +11 -0
- package/dist/components/bcm-drawer.js +234 -0
- package/dist/components/bcm-drawer.js.map +1 -0
- package/dist/components/bcm-dropdown-item.js +2 -2
- package/dist/components/bcm-dropdown.js +2 -2
- package/dist/components/bcm-input.js +2 -2
- package/dist/components/bcm-pop-confirm.js +2 -2
- package/dist/components/bcm-popover.js +1 -1
- package/dist/components/bcm-radio-group.js +2 -2
- package/dist/components/bcm-radio.js +1 -1
- package/dist/components/bcm-segmented-picker-option.js +2 -2
- package/dist/components/bcm-segmented-picker.js +2 -2
- package/dist/components/bcm-shortcut.js +1 -1
- package/dist/components/bcm-switch.js +2 -2
- package/dist/components/bcm-tabs-content.js +2 -2
- package/dist/components/bcm-tabs-content.js.map +1 -1
- package/dist/components/bcm-tabs-list.js +1 -1
- package/dist/components/bcm-tabs-trigger.js +2 -2
- package/dist/components/bcm-tabs-trigger.js.map +1 -1
- package/dist/components/bcm-tabs.js +1 -1
- package/dist/components/bcm-text.js +1 -1
- package/dist/components/bcm-textarea.js +3 -3
- package/dist/components/bcm-tooltip.js +1 -1
- package/dist/components/{p-b5bee06c.js → p-d56f8a26.js} +2 -2
- package/dist/components/{p-b5bee06c.js.map → p-d56f8a26.js.map} +1 -1
- package/dist/esm/bcm-accordion-group.entry.js +1 -1
- package/dist/esm/bcm-accordion-group.entry.js.map +1 -1
- package/dist/esm/{bcm-button_7.entry.js → bcm-button_8.entry.js} +208 -10
- package/dist/esm/bcm-button_8.entry.js.map +1 -0
- package/dist/esm/bcm-pop-confirm.entry.js +1 -1
- package/dist/esm/bcm-popover.entry.js +1 -1
- package/dist/esm/bcm-radio-group.entry.js +2 -2
- package/dist/esm/bcm-radio.entry.js +1 -1
- package/dist/esm/bcm-segmented-picker-option.entry.js +2 -2
- package/dist/esm/bcm-segmented-picker.entry.js +2 -2
- package/dist/esm/bcm-switch.entry.js +2 -2
- package/dist/esm/bcm-tabs-content.entry.js +2 -2
- package/dist/esm/bcm-tabs-content.entry.js.map +1 -1
- package/dist/esm/bcm-tabs-list.entry.js +1 -1
- package/dist/esm/bcm-tabs-trigger.entry.js +2 -2
- package/dist/esm/bcm-tabs-trigger.entry.js.map +1 -1
- package/dist/esm/bcm-tabs.entry.js +1 -1
- package/dist/esm/bcm-textarea.entry.js +3 -3
- package/dist/esm/bcm-tooltip.entry.js +1 -1
- package/dist/esm/bromcom-ui.js +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/types/components/drawer/drawer.component.d.ts +23 -0
- package/dist/types/components.d.ts +51 -0
- package/package.json +1 -1
- package/dist/bromcom-ui/p-37dc30d4.entry.js +0 -2
- package/dist/bromcom-ui/p-55e91bf6.entry.js +0 -2
- package/dist/bromcom-ui/p-b8292fb2.entry.js +0 -2
- package/dist/bromcom-ui/p-cf50b4df.entry.js +0 -2
- package/dist/bromcom-ui/p-cf50b4df.entry.js.map +0 -1
- package/dist/cjs/bcm-button_7.cjs.entry.js.map +0 -1
- package/dist/esm/bcm-button_7.entry.js.map +0 -1
- /package/dist/bromcom-ui/{p-404e19f9.entry.js.map → p-145dce31.entry.js.map} +0 -0
- /package/dist/bromcom-ui/{p-dd488642.entry.js.map → p-1e5da10e.entry.js.map} +0 -0
- /package/dist/bromcom-ui/{p-09814383.entry.js.map → p-8360b225.entry.js.map} +0 -0
- /package/dist/bromcom-ui/{p-aae240d5.entry.js.map → p-9ba07f12.entry.js.map} +0 -0
- /package/dist/bromcom-ui/{p-adda3b4e.entry.js.map → p-a02e437c.entry.js.map} +0 -0
- /package/dist/bromcom-ui/{p-0721540b.entry.js.map → p-b582c170.entry.js.map} +0 -0
- /package/dist/bromcom-ui/{p-bad19289.entry.js.map → p-b867a105.entry.js.map} +0 -0
- /package/dist/bromcom-ui/{p-7e97d4e2.entry.js.map → p-bbe4aac2.entry.js.map} +0 -0
- /package/dist/bromcom-ui/{p-76631abc.entry.js.map → p-bc962a70.entry.js.map} +0 -0
- /package/dist/bromcom-ui/{p-49a74afe.entry.js.map → p-d975579d.entry.js.map} +0 -0
- /package/dist/bromcom-ui/{p-77abe8d1.entry.js.map → p-e2f468ab.entry.js.map} +0 -0
|
@@ -29,7 +29,7 @@ export class BcmShortcut {
|
|
|
29
29
|
}
|
|
30
30
|
render() {
|
|
31
31
|
const { size, hotkey } = this;
|
|
32
|
-
return (h("div", { key: '
|
|
32
|
+
return (h("div", { key: '007588d1d20941ead644a3d1fd72410cb6793ff5', class: cs('bcm-ui-element bcm-ui-content-display', 'block h-fit w-fit rounded border border-solid px-1', 'border-color-default bg-color-default text-color-default', 'text-center font-medium capitalize', {
|
|
33
33
|
'text-size-2': size === 'small',
|
|
34
34
|
'text-size-3': size === 'medium',
|
|
35
35
|
'text-size-4': size === 'large',
|
|
@@ -190,12 +190,12 @@ export class BcmSwitch {
|
|
|
190
190
|
});
|
|
191
191
|
const ariaAttributes = Object.assign({ 'role': 'switch', 'aria-checked': this.checked.toString(), 'aria-disabled': this.disabled.toString(), 'aria-readonly': this.readonly.toString() }, (this.required && { 'aria-required': 'true' }));
|
|
192
192
|
const tabIndexAttr = !this.readonly && !this.disabled ? { tabindex: '0' } : {};
|
|
193
|
-
return (h("div", { key: '
|
|
193
|
+
return (h("div", { key: 'd18db7b849420ad3c416efa4e7d4eddef524afa0', class: base() }, h("label", { key: 'c7d35ad070759d134a4d4aa3b07144407b3f412a', class: switchWrapper(), style: this.switchStyle() }, h("input", { key: '0690f7e509de7093f513bca1819c30370f720f40', id: this.switchId, type: "checkbox", class: "hidden peer", checked: this.checked, name: this.name, value: this.value, disabled: this.disabled, readOnly: this.readonly, required: this.required, onChange: () => this.toggleSwitch() }), this.label && h("span", { key: 'fbb5d10e306c5d6b97dcfc9fc3ed2f075a2e2869', class: label() }, h("slot", { key: 'b9cd0cb2b0a95420fcd146b326865f9b030fea3d' }, this.label)), h("label", Object.assign({ key: 'f04c6cf35a56b203d96776b26e4a167b6b81e748', htmlFor: this.switchId, class: dotContainer() }, tabIndexAttr, ariaAttributes, { onKeyDown: event => {
|
|
194
194
|
if ((event.key === 'Enter' || event.key === ' ') && !this.readonly && !this.disabled) {
|
|
195
195
|
event.preventDefault();
|
|
196
196
|
this.toggleSwitch();
|
|
197
197
|
}
|
|
198
|
-
} }), h("div", { key: '
|
|
198
|
+
} }), h("div", { key: '5ec215b19c3772cdf2f2bd9213ea5583786b07f7', class: dot() }))), this.error && this.caption && h("span", { key: '0ed49573afdfa297ec8930b0408c8e8ec3bdc384', class: caption() }, this.caption), h("slot", { key: 'ead6fd77bd9bd97b14e69367fd90e1c474b5d4c3', name: "caption" })));
|
|
199
199
|
}
|
|
200
200
|
static get is() { return "bcm-switch"; }
|
|
201
201
|
static get encapsulation() { return "shadow"; }
|
|
@@ -5,7 +5,7 @@ import { h, Host } from "@stencil/core";
|
|
|
5
5
|
*/
|
|
6
6
|
export class BcmTabsContent {
|
|
7
7
|
render() {
|
|
8
|
-
return (h(Host, { key: '
|
|
8
|
+
return (h(Host, { key: 'e12d04d682726a70c9a7cd4ce091cb64b067ce32', role: "tabpanel" }, h("slot", { key: 'c947677586826f8702472107a43d92235aca84ef' })));
|
|
9
9
|
}
|
|
10
10
|
static get is() { return "bcm-tabs-content"; }
|
|
11
11
|
static get encapsulation() { return "shadow"; }
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.block{display:block}:host{display:block;padding:10px 0;width:100%}.
|
|
1
|
+
.block{display:block}:host{display:block;padding:10px 0;width:100%}.shadow{--tw-shadow:var(--bcm-ui-box-shadow-default);--tw-shadow-colored:var(--bcm-ui-box-shadow-default);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}
|
|
@@ -28,7 +28,7 @@ export class BcmTabsList {
|
|
|
28
28
|
}
|
|
29
29
|
render() {
|
|
30
30
|
const { container, inkbar, tabList } = this.class();
|
|
31
|
-
return (h("div", { key: '
|
|
31
|
+
return (h("div", { key: '4dbd9f1b18b6529d8b772a27a6f6ab0cbf789b48', class: container(), slot: "tabs-list" }, h("div", { key: 'f7bc6bb41afb0d76f66cb7a7af70875cf5359da8', class: inkbar() }), h("div", { key: '95aa03b5f1955517c9f3fce41ce3b525bfb56ac0', class: tabList(), role: "tablist" }, h("slot", { key: 'a3d0a910a2f7a07dd2f1e25b0d14d2c0d830e5fb' }))));
|
|
32
32
|
}
|
|
33
33
|
static get is() { return "bcm-tabs-list"; }
|
|
34
34
|
static get encapsulation() { return "shadow"; }
|
|
@@ -75,7 +75,7 @@ export class BcmTabsTrigger {
|
|
|
75
75
|
active: this.active,
|
|
76
76
|
disabled: this.disabled,
|
|
77
77
|
});
|
|
78
|
-
return (h(Host, { key: '
|
|
78
|
+
return (h(Host, { key: 'e9d6b6e77d982ea2cbba1e7f928f9515d10be52d', role: "tab", "aria-selected": this.active.toString(), "aria-disabled": this.disabled }, h("button", { key: 'faf87a5db1212dd5ebbccba186e83d26934a8b41', class: tab(), disabled: this.disabled, part: "tab", onClick: () => this.handleClick() }, h("slot", { key: 'a3426148118f555159c9bd355dbfb52c035e082a' })), h("div", { key: '32bbc55e43775f2369b01879f93183b29a1659b3', class: borderLine() })));
|
|
79
79
|
}
|
|
80
80
|
static get is() { return "bcm-tabs-trigger"; }
|
|
81
81
|
static get encapsulation() { return "shadow"; }
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.relative{position:relative}.block{display:block}:host{display:block;position:relative;width:100%}.bcm-ui-element{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,sans-serif}.bottom-0{bottom:0}.left-0{left:0}.right-0{right:0}.flex{display:flex}.h-\[2px\]{height:2px}.w-full{width:100%}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.flex-row{flex-direction:row}.items-center{align-items:center}.justify-center{justify-content:center}.gap-2{gap:.5rem}.gap-2\.5{gap:.625rem}.gap-3{gap:.75rem}.border-none{border-style:none}.bg-\[--bcm-ui-color-text-default\]{background-color:var(--bcm-ui-color-text-default)}.bg-\[--bcm-ui-color-text-disabled\]{background-color:var(--bcm-ui-color-text-disabled)}.bg-color-primary{background-color:var(--bcm-ui-color-background-primary-default)}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.px-3{padding-left:.75rem;padding-right:.75rem}.py-1{padding-bottom:.25rem;padding-top:.25rem}.text-center{text-align:center}.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)}.font-medium{font-weight:500}.text-color-disabled{color:var(--bcm-ui-color-text-disabled)}.text-color-primary{color:var(--bcm-ui-color-text-primary)}.shadow{--tw-shadow:var(--bcm-ui-box-shadow-default);--tw-shadow-colored:var(--bcm-ui-box-shadow-default);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)}.duration-200{transition-duration:.2s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.hover\:text-color-primary:hover{color:var(--bcm-ui-color-text-primary)}
|
|
1
|
+
.relative{position:relative}.block{display:block}:host{display:block;position:relative;width:100%}.bcm-ui-element{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,sans-serif}.static{position:static}.bottom-0{bottom:0}.left-0{left:0}.right-0{right:0}.flex{display:flex}.h-\[2px\]{height:2px}.w-full{width:100%}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.flex-row{flex-direction:row}.items-center{align-items:center}.justify-center{justify-content:center}.gap-2{gap:.5rem}.gap-2\.5{gap:.625rem}.gap-3{gap:.75rem}.border-none{border-style:none}.bg-\[--bcm-ui-color-text-default\]{background-color:var(--bcm-ui-color-text-default)}.bg-\[--bcm-ui-color-text-disabled\]{background-color:var(--bcm-ui-color-text-disabled)}.bg-color-primary{background-color:var(--bcm-ui-color-background-primary-default)}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.px-3{padding-left:.75rem;padding-right:.75rem}.py-1{padding-bottom:.25rem;padding-top:.25rem}.text-center{text-align:center}.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)}.font-medium{font-weight:500}.text-color-disabled{color:var(--bcm-ui-color-text-disabled)}.text-color-primary{color:var(--bcm-ui-color-text-primary)}.shadow{--tw-shadow:var(--bcm-ui-box-shadow-default);--tw-shadow-colored:var(--bcm-ui-box-shadow-default);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)}.duration-200{transition-duration:.2s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.hover\:text-color-primary:hover{color:var(--bcm-ui-color-text-primary)}
|
|
@@ -192,7 +192,7 @@ export class BcmTabs {
|
|
|
192
192
|
}
|
|
193
193
|
}
|
|
194
194
|
render() {
|
|
195
|
-
return (h(Host, { key: '
|
|
195
|
+
return (h(Host, { key: '0afd825b3df8017a0a5bc88a341430fec848d7ad' }, h("div", { key: 'e0ee72418f290849a68e4286ee91b3abceb668f3', class: this.tabClass() }, h("slot", { key: 'e9e032f474872ef1fe32a23b3feb0e75303f9c12', name: "tabs-list" }), h("slot", { key: 'cc22e3ac81914ecd88016a7033c135c52a99deed' }))));
|
|
196
196
|
}
|
|
197
197
|
static get is() { return "bcm-tabs"; }
|
|
198
198
|
static get encapsulation() { return "shadow"; }
|
|
@@ -90,7 +90,7 @@ export class BcmText {
|
|
|
90
90
|
const Tag = variantTagMap[this.variant];
|
|
91
91
|
const variantClass = this.getTextClass(this.variant, this.size);
|
|
92
92
|
const overflowClass = this.getOverflowClass((_a = this.overflow) !== null && _a !== void 0 ? _a : false);
|
|
93
|
-
return (h(Tag, { key: '
|
|
93
|
+
return (h(Tag, { key: '152d737752eea962ac3c5086011da69578ef0920', class: cs('bcm-text appearance-none m-0 p-0', variantClass, overflowClass), part: "text" }, h("slot", { key: 'e8c8c89a5925936a2e22a75265b7f42317eab983' }, this.text)));
|
|
94
94
|
}
|
|
95
95
|
static get is() { return "bcm-text"; }
|
|
96
96
|
static get encapsulation() { return "shadow"; }
|
|
@@ -261,14 +261,14 @@ export class BcmTextarea {
|
|
|
261
261
|
disabled: this.disabled,
|
|
262
262
|
focused: this.isFocused,
|
|
263
263
|
});
|
|
264
|
-
return (h("div", { key: '
|
|
264
|
+
return (h("div", { key: 'c5ee75be5fde297e23772b7c40d5c1232f3b89da', class: "bcm-ui-element" }, this.label && (h("label", { key: '49b338bdfdc5475c8219fb752200cf897a57f79d', class: classNames('textarea-label font-medium', {
|
|
265
265
|
'text-color-label': !this.disabled,
|
|
266
266
|
'text-color-disabled': this.disabled,
|
|
267
267
|
}, {
|
|
268
268
|
'text-size-3': this.size === 'small',
|
|
269
269
|
'text-size-4': this.size === 'medium',
|
|
270
270
|
'text-size-5': this.size === 'large',
|
|
271
|
-
}), htmlFor: textareaId }, h("slot", { key: '
|
|
271
|
+
}), htmlFor: textareaId }, h("slot", { key: '01a450616f08255ad6c593cfdee6bfe8c806a139', name: "label" }, this.label), this.required && h("span", { key: 'e2da2bfd03978deae44f3b1fc80171bd17092a94' }, "*"))), h("div", { key: '24508ff98ece95297f3c90f415b9c1231771de96', class: base() }, h("textarea", { key: 'abd2eb66e02a271626246f7634d3bad6ca569bf5', ref: el => (this.textareaRef = el), id: textareaId, class: textareaClass(), name: this.name, rows: this.rows, cols: this.cols, disabled: this.disabled, readonly: this.readonly, required: this.required, placeholder: this.placeholder, minLength: this.minLength, maxLength: this.maxLength, "aria-invalid": this.status === 'error', "aria-required": this.required, "aria-labelledby": this.labelledby, "aria-describedby": this.describedby, value: this.value, onInput: event => {
|
|
272
272
|
const target = event.target;
|
|
273
273
|
this.value = target.value;
|
|
274
274
|
this.bcmInput.emit(event);
|
|
@@ -276,7 +276,7 @@ export class BcmTextarea {
|
|
|
276
276
|
if (this.autoGrow) {
|
|
277
277
|
this.adjustHeight();
|
|
278
278
|
}
|
|
279
|
-
}, onChange: this.onChange, onFocus: this.onFocus, onBlur: this.onBlur, onKeyDown: this.onKeyDown, onKeyUp: this.onKeyUp }), this.showCounter && (h("div", { key: '
|
|
279
|
+
}, onChange: this.onChange, onFocus: this.onFocus, onBlur: this.onBlur, onKeyDown: this.onKeyDown, onKeyUp: this.onKeyUp }), this.showCounter && (h("div", { key: '2678f8f9ad6d2fdb42691b9609d6a73c696b90ec', class: counterText() }, this.value.length, this.maxLength ? `/${this.maxLength}` : ''))), (this.captionText || this.internalErrorMessage || this.validationMessage) && (h("div", { key: '03c87e206c3c683d503bf8bc0fb33f0e3657857f', class: classNames('textarea-caption-text font-regular mt-1', {
|
|
280
280
|
'text-[--bcm-ui-color-text-caption]': !this.disabled && this.internalStatus === 'default',
|
|
281
281
|
'text-[--bcm-ui-color-text-error]': !this.disabled && (this.internalStatus === 'error' || !this.isValid),
|
|
282
282
|
'text-[--bcm-ui-color-text-success]': !this.disabled && this.internalStatus === 'success',
|
|
@@ -193,7 +193,7 @@ export class Tooltip {
|
|
|
193
193
|
size: this.size,
|
|
194
194
|
isOpen: this.open,
|
|
195
195
|
});
|
|
196
|
-
return (h("div", { key: '
|
|
196
|
+
return (h("div", { key: '04196e7e3ed7405ff4c3e4870d6cbec968e07f4d', class: "relative" }, h("slot", { key: '0a1043e46fa3e88cf667432d44a57a5268a1d61b', onSlotchange: () => this.handleSlotChange() }), h("div", { key: 'fb5474a83b621875831bdbb9a066519fdaae88f0', role: "tooltip", class: tooltip(), ref: (el) => (this.tooltipElement = el), part: "tooltip" }, h("div", { key: '17b8cc92d03e75f4dba6759c74febba8953bc711', class: arrow(), ref: (el) => (this.arrowElement = el), part: "arrow" }), h("slot", { key: '60a42381139cc4b1f630441795a2b9b59c6660b6', name: "tooltip" }, this.message))));
|
|
197
197
|
}
|
|
198
198
|
static get is() { return "bcm-tooltip"; }
|
|
199
199
|
static get encapsulation() { return "shadow"; }
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { p as proxyCustomElement, H, c as createEvent, h } from './p-30135590.js';
|
|
2
2
|
|
|
3
|
-
const accordionGroupCss = ".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:Inter,sans-serif}.collapse{visibility:collapse}.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-solid{border-style:solid}.border-\\[--bcm-accordion-border\\]{border-color:var(--bcm-accordion-border)}.shadow{--tw-shadow:var(--bcm-ui-box-shadow-default);--tw-shadow-colored:var(--bcm-ui-box-shadow-default);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)}";
|
|
3
|
+
const accordionGroupCss = ".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:Inter,sans-serif}.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-solid{border-style:solid}.border-\\[--bcm-accordion-border\\]{border-color:var(--bcm-accordion-border)}.shadow{--tw-shadow:var(--bcm-ui-box-shadow-default);--tw-shadow-colored:var(--bcm-ui-box-shadow-default);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)}";
|
|
4
4
|
const BcmAccordionGroupStyle0 = accordionGroupCss;
|
|
5
5
|
|
|
6
6
|
const BcmAccordionGroup$1 = /*@__PURE__*/ proxyCustomElement(class BcmAccordionGroup extends H {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"bcm-accordion-group.js","mappings":";;AAAA,MAAM,iBAAiB,GAAG
|
|
1
|
+
{"file":"bcm-accordion-group.js","mappings":";;AAAA,MAAM,iBAAiB,GAAG,u9BAAu9B,CAAC;AACl/B,gCAAe,iBAAiB;;MCmEnBA,mBAAiB;IAL9B;;;;;;QAUY,UAAK,GAAY,KAAK,CAAC;;QAGtB,mBAAc,GAA8B,EAAE,CAAC;;;;QAoDhD,qBAAgB,GAAG;YACvB,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,eAAe,CAAC,CAAC,CAAC;YAC9E,IAAI,CAAC,gBAAgB,EAAE,CAAC;;YAExB,IAAI,IAAI,CAAC,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE;gBAClC,OAAO,CAAC,IAAI,CAAC,6CAA6C,CAAC,CAAC;aAC/D;SACJ,CAAC;KAuCL;;;;;IApFG,MAAM,SAAS;QACX,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;YACb,OAAO,CAAC,IAAI,CAAC,6CAA6C,CAAC,CAAC;YAC5D,OAAO;SACV;QACD,MAAM,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;KACrE;;;;IAMD,MAAM,WAAW;QACb,MAAM,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;KACvE;;;;IAMD,MAAM,gBAAgB;QAClB,OAAO,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC;KAC5D;IAED,iBAAiB;QACb,IAAI,CAAC,gBAAgB,EAAE,CAAC;KAC3B;IAGO,gBAAgB;QACpB,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,IAAI;YAC5B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;SACrB,CAAC,CAAC;KACN;;;;IAkBD,qBAAqB,CAAC,KAA4C;QAC9D,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACxB,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,MAAM,CAAC;QAE3C,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;YACb,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,IAAI;gBAC5B,IAAI,IAAI,KAAK,MAAM,EAAE;oBACjB,IAAI,CAAC,QAAQ,EAAE,CAAC;iBACnB;gBACD,IAAI,CAAC,QAAQ,GAAG,IAAI,KAAK,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAC;aACtD,CAAC,CAAC;SACN;QAED,MAAM,aAAa,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC;QACxE,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC;YAC9B,QAAQ;YACR,OAAO,EAAE,MAAM;YACf,aAAa;YACb,aAAa,EAAE,aAAa,CAAC,MAAM;SACtC,CAAC,CAAC;KACN;IAED,MAAM;QACF,QACI,4DACI,KAAK,EAAC,0HAA0H,EAChI,IAAI,EAAC,OAAO,gBACD,iBAAiB,IAE5B,6DAAM,YAAY,EAAE,IAAI,CAAC,gBAAgB,GAAS,CAChD,EACR;KACL;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":["BcmAccordionGroup"],"sources":["src/components/accordion-group/accordion-group.css?tag=bcm-accordion-group&encapsulation=shadow","src/components/accordion-group/accordion-group.component.tsx"],"sourcesContent":[":host {\n display: block;\n width: 100%;\n --bcm-accordion-border: var(--bcm-ui-color-border-default);\n --bcm-accordion-radius: 6px;\n}\n","\nimport { Component, ComponentInterface, h, Element, Prop, Listen, State, Event, EventEmitter, Method } from '@stencil/core';\nimport { AccordionChangeEventType } from '../accordion/types';\nimport { AccordionGroupChangeEventType } from './types';\n\n/**\n* @component BcmAccordionGroup\n* @description A container component that manages a group of accordions. Provides single/multiple expansion \n* modes and methods for controlling all accordions simultaneously. Uses shadow DOM for style encapsulation.\n*\n* @example Basic usage - Single expansion mode\n* <bcm-accordion-group>\n* <bcm-accordion>\n* <div slot=\"title\">Section 1</div>\n* <div>Content 1</div>\n* </bcm-accordion>\n* <bcm-accordion>\n* <div slot=\"title\">Section 2</div>\n* <div>Content 2</div>\n* </bcm-accordion>\n* </bcm-accordion-group>\n*\n* @example Multiple expansion mode\n* <bcm-accordion-group multi={true}>\n* <bcm-accordion>...</bcm-accordion>\n* <bcm-accordion>...</bcm-accordion>\n* </bcm-accordion-group>\n* \n* @example Event handling\n* // Listen to accordion group changes\n* const accordionGroup = document.querySelector('bcm-accordion-group');\n* accordionGroup.addEventListener('bcmAccordionGroupChange', (event) => {\n* const { expanded, changed, expandedItems, expandedCount } = event.detail;\n* console.log('Accordion expanded state:', expanded);\n* console.log('Changed accordion:', changed);\n* console.log('Currently expanded accordions:', expandedItems);\n* console.log('Number of expanded accordions:', expandedCount);\n* });\n* \n* // Using methods\n* await accordionGroup.expandAll(); // Expands all accordions (only in multi mode)\n* await accordionGroup.collapseAll(); // Collapses all accordions\n* const expanded = await accordionGroup.getExpandedItems(); // Gets expanded accordions\n*\n* @prop {boolean} multi - Controls whether multiple accordions can be expanded simultaneously (default: false)\n*\n* @slot default - Container slot for bcm-accordion components\n*\n* @event {EventEmitter<AccordionGroupChangeEventType>} bcmAccordionGroupChange - Emitted when any accordion's state changes\n* @eventProperty {boolean} expanded - Current expanded state of the changed accordion\n* @eventProperty {HTMLElement} changed - The accordion element that triggered the change\n* @eventProperty {HTMLElement[]} expandedItems - Array of currently expanded accordion elements\n* @eventProperty {number} expandedCount - Number of currently expanded accordions\n*\n* @method expandAll() - Expands all accordions (only available in multi mode)\n* @method collapseAll() - Collapses all accordions\n* @method getExpandedItems() - Returns array of currently expanded accordions\n*\n* @csspart container - The accordion group container element\n*\n* @css {string} --bcm-accordion-border - Border color of the accordion group\n* @css {string} --bcm-accordion-radius - Border radius of the accordion group\n*/\n@Component({\n tag: 'bcm-accordion-group',\n styleUrl: 'accordion-group.css',\n shadow: true,\n})\nexport class BcmAccordionGroup implements ComponentInterface {\n /** Reference to the host element */\n @Element() host: HTMLElement;\n\n /** Controls whether multiple accordions can be expanded simultaneously */\n @Prop() multi: boolean = false;\n\n /** Array of accordion elements within the group */\n @State() accordionItems: HTMLBcmAccordionElement[] = [];\n\n /** Event emitted when any accordion's expanded state changes */\n @Event({\n composed: false,\n bubbles: false,\n cancelable: true,\n }) bcmAccordionGroupChange: EventEmitter<AccordionGroupChangeEventType>;\n\n /**\n * Expands all accordions in the group\n * Only available when multi=true\n */\n @Method()\n async expandAll(): Promise<void> {\n if (!this.multi) {\n console.warn('expandAll is only available when multi=true');\n return;\n }\n await Promise.all(this.accordionItems.map(item => item.expand()));\n }\n\n /**\n * Collapses all accordions in the group\n */\n @Method()\n async collapseAll(): Promise<void> {\n await Promise.all(this.accordionItems.map(item => item.collapse()));\n }\n\n /**\n * Returns an array of currently expanded accordion elements\n */\n @Method()\n async getExpandedItems(): Promise<HTMLBcmAccordionElement[]> {\n return this.accordionItems.filter(item => item.expanded);\n }\n\n componentWillLoad() {\n this.handleSlotChange();\n }\n\n\n private setGroupBehavior(): void {\n this.accordionItems.forEach(item => {\n item.group = true;\n });\n }\n\n /**\n * Updates the accordion items array when slot content changes\n */\n private handleSlotChange = () => {\n this.accordionItems = Array.from(this.host.querySelectorAll('bcm-accordion'));\n this.setGroupBehavior();\n // Validate accordion items\n if (this.accordionItems.length === 0) {\n console.warn('No accordion items found in accordion group');\n }\n };\n\n /**\n * Handles state changes of individual accordions\n */\n @Listen('bcmAccordionChange', { capture: true })\n handleAccordionChange(event: CustomEvent<AccordionChangeEventType>) {\n this.handleSlotChange();\n const { expanded, source } = event?.detail;\n\n if (!this.multi) {\n this.accordionItems.forEach(item => {\n if (item !== source) {\n item.collapse();\n }\n item.expanded = item === source ? expanded : false;\n });\n }\n\n const expandedItems = this.accordionItems.filter(item => item.expanded);\n this.bcmAccordionGroupChange.emit({\n expanded,\n changed: source,\n expandedItems,\n expandedCount: expandedItems.length,\n });\n }\n\n render() {\n return (\n <div\n class=\"flex flex-col bcm-ui-element w-full border border-solid border-[--bcm-accordion-border] rounded-[--bcm-accordion-radius]\"\n role=\"group\"\n aria-label=\"Accordion group\"\n >\n <slot onSlotchange={this.handleSlotChange}></slot>\n </div>\n );\n }\n}"],"version":3}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { Components, JSX } from "../types/components";
|
|
2
|
+
|
|
3
|
+
interface BcmDrawer extends Components.BcmDrawer, HTMLElement {}
|
|
4
|
+
export const BcmDrawer: {
|
|
5
|
+
prototype: BcmDrawer;
|
|
6
|
+
new (): BcmDrawer;
|
|
7
|
+
};
|
|
8
|
+
/**
|
|
9
|
+
* Used to define this component and all nested components recursively.
|
|
10
|
+
*/
|
|
11
|
+
export const defineCustomElement: () => void;
|
|
@@ -0,0 +1,234 @@
|
|
|
1
|
+
import { p as proxyCustomElement, H, c as createEvent, h } from './p-30135590.js';
|
|
2
|
+
import { c as ce } from './p-5fcf77f9.js';
|
|
3
|
+
|
|
4
|
+
const drawerCss = ".contents{display:contents}:host{display:contents}.bcm-ui-element{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,sans-serif}.visible{visibility:visible}.invisible{visibility:hidden}.static{position:static}.fixed{position:fixed}.inset-0{inset:0}.bottom-0{bottom:0}.left-0{left:0}.right-0{right:0}.top-0{top:0}.z-40{z-index:40}.z-50{z-index:50}.m-0{margin:0}.flex{display:flex}.hidden{display:none}.h-6{height:1.5rem}.w-6{width:1.5rem}.flex-grow{flex-grow:1}.-translate-x-full{--tw-translate-x:-100%}.-translate-x-full,.-translate-y-full{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))}.-translate-y-full{--tw-translate-y:-100%}.translate-x-0{--tw-translate-x:0px}.translate-x-0,.translate-x-full{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))}.translate-x-full{--tw-translate-x:100%}.translate-y-0{--tw-translate-y:0px}.translate-y-0,.translate-y-full{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))}.translate-y-full{--tw-translate-y:100%}.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}.appearance-none{appearance:none}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.overflow-y-auto{overflow-y:auto}.border-none{border-style:none}.bg-color-base{background-color:var(--bcm-ui-color-background-base-default)}.bg-color-default{background-color:var(--bcm-ui-color-background-default-default)}.bg-color-transparent{background-color:var(--bcm-ui-color-background-transparent-default)}.bg-transparent{background-color:transparent}.p-0{padding:0}.p-4{padding:1rem}.px-4{padding-left:1rem;padding-right:1rem}.py-3{padding-bottom:.75rem;padding-top:.75rem}.text-size-6{font-size:var(--bcm-ui-font-size-6,18px);line-height:var(--bcm-ui-line-height-6,24px)}.font-semibold{font-weight:600}.text-color-default{color:var(--bcm-ui-color-text-default)}.opacity-0{opacity:0}.opacity-100{opacity:1}.shadow{--tw-shadow:var(--bcm-ui-box-shadow-default);--tw-shadow-colored:var(--bcm-ui-box-shadow-default);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.transition-opacity{transition-duration:.15s;transition-property:opacity;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)}.hover\\:bg-color-default-hover:hover{background-color:var(--bcm-ui-color-background-default-hover)}.active\\:bg-color-default-active:active{background-color:var(--bcm-ui-color-background-default-active)}";
|
|
5
|
+
const BcmDrawerStyle0 = drawerCss;
|
|
6
|
+
|
|
7
|
+
const BcmDrawer$1 = /*@__PURE__*/ proxyCustomElement(class BcmDrawer extends H {
|
|
8
|
+
constructor() {
|
|
9
|
+
super();
|
|
10
|
+
this.__registerHost();
|
|
11
|
+
this.__attachShadow();
|
|
12
|
+
this.bcmOpen = createEvent(this, "bcmOpen", 7);
|
|
13
|
+
this.bcmClose = createEvent(this, "bcmClose", 7);
|
|
14
|
+
this.bcmBeforeOpen = createEvent(this, "bcmBeforeOpen", 7);
|
|
15
|
+
this.bcmBeforeClose = createEvent(this, "bcmBeforeClose", 7);
|
|
16
|
+
this.open = false;
|
|
17
|
+
this.size = 'medium';
|
|
18
|
+
this.position = 'right';
|
|
19
|
+
this.fullWidth = false;
|
|
20
|
+
this.noHeader = false;
|
|
21
|
+
this.drawerClass = ce({
|
|
22
|
+
slots: {
|
|
23
|
+
backdrop: 'fixed inset-0 bg-color-transparent z-40 transition-opacity duration-300',
|
|
24
|
+
wrapper: 'bcm-ui-element fixed bg-color-base text-color-default z-50 transform transition-transform duration-300 ease-in-out flex flex-col',
|
|
25
|
+
header: 'flex justify-between items-center bg-color-default',
|
|
26
|
+
title: 'font-semibold text-size-6 m-0',
|
|
27
|
+
closeButton: 'text-color-default bg-transparent appearance-none border-none p-0 h-6 w-6 hover:bg-color-default-hover cursor-pointer active:bg-color-default-active',
|
|
28
|
+
content: 'overflow-y-auto flex-grow',
|
|
29
|
+
},
|
|
30
|
+
variants: {
|
|
31
|
+
open: {
|
|
32
|
+
true: {
|
|
33
|
+
backdrop: 'opacity-100 visible',
|
|
34
|
+
},
|
|
35
|
+
false: {
|
|
36
|
+
backdrop: 'opacity-0 invisible',
|
|
37
|
+
},
|
|
38
|
+
},
|
|
39
|
+
position: {
|
|
40
|
+
left: {
|
|
41
|
+
wrapper: 'top-0 left-0 bottom-0',
|
|
42
|
+
},
|
|
43
|
+
right: {
|
|
44
|
+
wrapper: 'top-0 right-0 bottom-0',
|
|
45
|
+
},
|
|
46
|
+
top: {
|
|
47
|
+
wrapper: 'top-0 left-0 right-0',
|
|
48
|
+
},
|
|
49
|
+
bottom: {
|
|
50
|
+
wrapper: 'bottom-0 left-0 right-0',
|
|
51
|
+
},
|
|
52
|
+
},
|
|
53
|
+
size: {
|
|
54
|
+
small: {
|
|
55
|
+
header: 'py-3 px-4',
|
|
56
|
+
content: 'p-4',
|
|
57
|
+
},
|
|
58
|
+
medium: {
|
|
59
|
+
header: 'py-3 px-4',
|
|
60
|
+
content: 'p-4',
|
|
61
|
+
},
|
|
62
|
+
large: {
|
|
63
|
+
header: 'py-3 px-4',
|
|
64
|
+
content: 'p-4',
|
|
65
|
+
},
|
|
66
|
+
},
|
|
67
|
+
noHeader: {
|
|
68
|
+
true: {
|
|
69
|
+
header: 'hidden',
|
|
70
|
+
},
|
|
71
|
+
},
|
|
72
|
+
},
|
|
73
|
+
compoundVariants: [
|
|
74
|
+
{
|
|
75
|
+
open: true,
|
|
76
|
+
position: ['left', 'right'],
|
|
77
|
+
class: {
|
|
78
|
+
wrapper: 'translate-x-0',
|
|
79
|
+
},
|
|
80
|
+
},
|
|
81
|
+
{
|
|
82
|
+
open: true,
|
|
83
|
+
position: ['top', 'bottom'],
|
|
84
|
+
class: {
|
|
85
|
+
wrapper: 'translate-y-0',
|
|
86
|
+
},
|
|
87
|
+
},
|
|
88
|
+
{
|
|
89
|
+
open: false,
|
|
90
|
+
position: 'left',
|
|
91
|
+
class: {
|
|
92
|
+
wrapper: '-translate-x-full',
|
|
93
|
+
},
|
|
94
|
+
},
|
|
95
|
+
{
|
|
96
|
+
open: false,
|
|
97
|
+
position: 'right',
|
|
98
|
+
class: {
|
|
99
|
+
wrapper: 'translate-x-full',
|
|
100
|
+
},
|
|
101
|
+
},
|
|
102
|
+
{
|
|
103
|
+
open: false,
|
|
104
|
+
position: 'top',
|
|
105
|
+
class: {
|
|
106
|
+
wrapper: '-translate-y-full',
|
|
107
|
+
},
|
|
108
|
+
},
|
|
109
|
+
{
|
|
110
|
+
open: false,
|
|
111
|
+
position: 'bottom',
|
|
112
|
+
class: {
|
|
113
|
+
wrapper: 'translate-y-full',
|
|
114
|
+
},
|
|
115
|
+
},
|
|
116
|
+
],
|
|
117
|
+
});
|
|
118
|
+
}
|
|
119
|
+
handleOpenChange(isOpen) {
|
|
120
|
+
if (isOpen) {
|
|
121
|
+
document.body.style.overflow = 'hidden';
|
|
122
|
+
this.bcmOpen.emit();
|
|
123
|
+
}
|
|
124
|
+
else {
|
|
125
|
+
document.body.style.overflow = '';
|
|
126
|
+
this.bcmClose.emit();
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
handleKeyDown(event) {
|
|
130
|
+
if (event.key === 'Escape' && this.open) {
|
|
131
|
+
this.hide();
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
async show() {
|
|
135
|
+
const event = this.bcmBeforeOpen.emit();
|
|
136
|
+
if (!event.defaultPrevented) {
|
|
137
|
+
this.open = true;
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
async hide() {
|
|
141
|
+
const event = this.bcmBeforeClose.emit();
|
|
142
|
+
if (!event.defaultPrevented) {
|
|
143
|
+
this.open = false;
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
disconnectedCallback() {
|
|
147
|
+
document.body.style.overflow = '';
|
|
148
|
+
}
|
|
149
|
+
getWrapperStyle() {
|
|
150
|
+
const style = {};
|
|
151
|
+
if (this.fullWidth) {
|
|
152
|
+
if (this.position === 'left' || this.position === 'right') {
|
|
153
|
+
style.width = '100vw';
|
|
154
|
+
}
|
|
155
|
+
else {
|
|
156
|
+
style.height = '100vh';
|
|
157
|
+
}
|
|
158
|
+
return style;
|
|
159
|
+
}
|
|
160
|
+
if (this.position === 'left' || this.position === 'right') {
|
|
161
|
+
switch (this.size) {
|
|
162
|
+
case 'small':
|
|
163
|
+
style.width = '320px';
|
|
164
|
+
break;
|
|
165
|
+
case 'medium':
|
|
166
|
+
style.width = '480px';
|
|
167
|
+
break;
|
|
168
|
+
case 'large':
|
|
169
|
+
style.width = '1064px';
|
|
170
|
+
break;
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
else {
|
|
174
|
+
switch (this.size) {
|
|
175
|
+
case 'small':
|
|
176
|
+
style.height = '40vh';
|
|
177
|
+
break;
|
|
178
|
+
case 'medium':
|
|
179
|
+
style.height = '60vh';
|
|
180
|
+
break;
|
|
181
|
+
case 'large':
|
|
182
|
+
style.height = '90vh';
|
|
183
|
+
break;
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
return style;
|
|
187
|
+
}
|
|
188
|
+
render() {
|
|
189
|
+
const { backdrop, wrapper, header, title, closeButton, content } = this.drawerClass({
|
|
190
|
+
open: this.open,
|
|
191
|
+
position: this.position,
|
|
192
|
+
size: this.size,
|
|
193
|
+
noHeader: this.noHeader,
|
|
194
|
+
});
|
|
195
|
+
return (h("div", { key: '4432db26aee1f6bd99b068ea4bdcce1598566e34', part: "base" }, h("div", { key: '4ffab0356a2e10d834bcc7d289fa7d7e75bfe0ed', part: "backdrop", class: backdrop(), onClick: () => this.hide() }), h("div", { key: '30a072303c0f37aa302e9fb710fc108dec4118b7', part: "wrapper", class: wrapper(), style: this.getWrapperStyle(), role: "dialog", "aria-modal": "true", "aria-hidden": !this.open ? 'true' : 'false', "aria-label": this.headerText }, h("div", { key: '9c96428392739375c14c3f0d43686c1fc4c76dad', part: "header", class: header() }, h("h2", { key: 'e5e97af67578ac5d6decbaae87f258374ce46a71', part: "title", class: title() }, h("slot", { key: '023760bf63b5bb31f931fef734b5157ad5ad5eaa', name: "header" }, this.headerText)), h("button", { key: '787ae47852969e29e3164668c20acfd684d03bd0', part: "close-button", class: closeButton(), onClick: () => this.hide(), "aria-label": "Close" }, h("bcm-icon", { key: 'c4590f8f9cf838bc274800f8cd9baa093e1debb0', name: "fa-solid fa-xmark" }))), h("div", { key: '76c9d7302a725ba798201176ab6bb9186d3a81e7', part: "content", class: content() }, h("slot", { key: '8422d3ae70d855538760c2e0a0a658e29ee74654' })), h("div", { key: 'ce8e4ee5ecf0ed61d559a259b58714a01f914d50', part: "footer" }, h("slot", { key: '61826c516851892de0ce2690baf3a64b5c51a41a', name: "footer" })))));
|
|
196
|
+
}
|
|
197
|
+
get host() { return this; }
|
|
198
|
+
static get watchers() { return {
|
|
199
|
+
"open": ["handleOpenChange"]
|
|
200
|
+
}; }
|
|
201
|
+
static get style() { return BcmDrawerStyle0; }
|
|
202
|
+
}, [1, "bcm-drawer", {
|
|
203
|
+
"open": [1540],
|
|
204
|
+
"size": [1],
|
|
205
|
+
"position": [1],
|
|
206
|
+
"fullWidth": [4, "full-width"],
|
|
207
|
+
"headerText": [1, "header-text"],
|
|
208
|
+
"noHeader": [4, "no-header"],
|
|
209
|
+
"show": [64],
|
|
210
|
+
"hide": [64]
|
|
211
|
+
}, [[8, "keydown", "handleKeyDown"]], {
|
|
212
|
+
"open": ["handleOpenChange"]
|
|
213
|
+
}]);
|
|
214
|
+
function defineCustomElement$1() {
|
|
215
|
+
if (typeof customElements === "undefined") {
|
|
216
|
+
return;
|
|
217
|
+
}
|
|
218
|
+
const components = ["bcm-drawer"];
|
|
219
|
+
components.forEach(tagName => { switch (tagName) {
|
|
220
|
+
case "bcm-drawer":
|
|
221
|
+
if (!customElements.get(tagName)) {
|
|
222
|
+
customElements.define(tagName, BcmDrawer$1);
|
|
223
|
+
}
|
|
224
|
+
break;
|
|
225
|
+
} });
|
|
226
|
+
}
|
|
227
|
+
defineCustomElement$1();
|
|
228
|
+
|
|
229
|
+
const BcmDrawer = BcmDrawer$1;
|
|
230
|
+
const defineCustomElement = defineCustomElement$1;
|
|
231
|
+
|
|
232
|
+
export { BcmDrawer, defineCustomElement };
|
|
233
|
+
|
|
234
|
+
//# sourceMappingURL=bcm-drawer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"file":"bcm-drawer.js","mappings":"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","names":["BcmDrawer","tv"],"sources":["src/components/drawer/drawer.css?tag=bcm-drawer&encapsulation=shadow","src/components/drawer/drawer.component.tsx"],"sourcesContent":[":host {\n display: contents;\n}\n","import { Component, Prop, h, Element, Event, EventEmitter, Method, Watch, Listen } from '@stencil/core';\nimport { tv } from 'tailwind-variants';\nimport { DrawerPosition, DrawerSize } from './types';\n\n@Component({\n tag: 'bcm-drawer',\n styleUrl: 'drawer.css',\n shadow: true,\n})\nexport class BcmDrawer {\n @Element() host: HTMLElement;\n\n @Prop({ mutable: true, reflect: true }) open: boolean = false;\n @Prop() size: DrawerSize = 'medium';\n @Prop() position: DrawerPosition = 'right';\n @Prop({ attribute: 'full-width' }) fullWidth: boolean = false;\n @Prop() headerText?: string;\n @Prop({ attribute: 'no-header' }) noHeader: boolean = false;\n\n @Event() bcmOpen: EventEmitter<void>;\n @Event() bcmClose: EventEmitter<void>;\n @Event({ cancelable: true }) bcmBeforeOpen: EventEmitter<void>;\n @Event({ cancelable: true }) bcmBeforeClose: EventEmitter<void>;\n\n private drawerClass = tv({\n slots: {\n backdrop: 'fixed inset-0 bg-color-transparent z-40 transition-opacity duration-300',\n wrapper: 'bcm-ui-element fixed bg-color-base text-color-default z-50 transform transition-transform duration-300 ease-in-out flex flex-col',\n header: 'flex justify-between items-center bg-color-default',\n title: 'font-semibold text-size-6 m-0',\n closeButton: 'text-color-default bg-transparent appearance-none border-none p-0 h-6 w-6 hover:bg-color-default-hover cursor-pointer active:bg-color-default-active',\n content: 'overflow-y-auto flex-grow',\n },\n variants: {\n open: {\n true: {\n backdrop: 'opacity-100 visible',\n },\n false: {\n backdrop: 'opacity-0 invisible',\n },\n },\n position: {\n left: {\n wrapper: 'top-0 left-0 bottom-0',\n },\n right: {\n wrapper: 'top-0 right-0 bottom-0',\n },\n top: {\n wrapper: 'top-0 left-0 right-0',\n },\n bottom: {\n wrapper: 'bottom-0 left-0 right-0',\n },\n },\n size: {\n small: {\n header: 'py-3 px-4',\n content: 'p-4',\n },\n medium: {\n header: 'py-3 px-4',\n content: 'p-4',\n },\n large: {\n header: 'py-3 px-4',\n content: 'p-4',\n },\n },\n noHeader: {\n true: {\n header: 'hidden',\n },\n },\n },\n compoundVariants: [\n {\n open: true,\n position: ['left', 'right'],\n class: {\n wrapper: 'translate-x-0',\n },\n },\n {\n open: true,\n position: ['top', 'bottom'],\n class: {\n wrapper: 'translate-y-0',\n },\n },\n {\n open: false,\n position: 'left',\n class: {\n wrapper: '-translate-x-full',\n },\n },\n {\n open: false,\n position: 'right',\n class: {\n wrapper: 'translate-x-full',\n },\n },\n {\n open: false,\n position: 'top',\n class: {\n wrapper: '-translate-y-full',\n },\n },\n {\n open: false,\n position: 'bottom',\n class: {\n wrapper: 'translate-y-full',\n },\n },\n ],\n });\n\n @Watch('open')\n handleOpenChange(isOpen: boolean) {\n if (isOpen) {\n document.body.style.overflow = 'hidden';\n this.bcmOpen.emit();\n } else {\n document.body.style.overflow = '';\n this.bcmClose.emit();\n }\n }\n\n @Listen('keydown', { target: 'window' })\n handleKeyDown(event: KeyboardEvent) {\n if (event.key === 'Escape' && this.open) {\n this.hide();\n }\n }\n\n @Method()\n async show(): Promise<void> {\n const event = this.bcmBeforeOpen.emit();\n if (!event.defaultPrevented) {\n this.open = true;\n }\n }\n\n @Method()\n async hide(): Promise<void> {\n const event = this.bcmBeforeClose.emit();\n if (!event.defaultPrevented) {\n this.open = false;\n }\n }\n\n disconnectedCallback() {\n document.body.style.overflow = '';\n }\n\n private getWrapperStyle() {\n const style: { [key: string]: string } = {};\n\n if (this.fullWidth) {\n if (this.position === 'left' || this.position === 'right') {\n style.width = '100vw';\n } else {\n style.height = '100vh';\n }\n return style;\n }\n\n if (this.position === 'left' || this.position === 'right') {\n switch (this.size) {\n case 'small':\n style.width = '320px';\n break;\n case 'medium':\n style.width = '480px';\n break;\n case 'large':\n style.width = '1064px';\n break;\n }\n } else {\n switch (this.size) {\n case 'small':\n style.height = '40vh';\n break;\n case 'medium':\n style.height = '60vh';\n break;\n case 'large':\n style.height = '90vh';\n break;\n }\n }\n\n return style;\n }\n\n render() {\n const { backdrop, wrapper, header, title, closeButton, content } = this.drawerClass({\n open: this.open,\n position: this.position,\n size: this.size,\n noHeader: this.noHeader,\n });\n\n return (\n <div part=\"base\">\n <div part=\"backdrop\" class={backdrop()} onClick={() => this.hide()} />\n <div\n part=\"wrapper\"\n class={wrapper()}\n style={this.getWrapperStyle()}\n role=\"dialog\"\n aria-modal=\"true\"\n aria-hidden={!this.open ? 'true' : 'false'}\n aria-label={this.headerText}\n >\n <div part=\"header\" class={header()}>\n <h2 part=\"title\" class={title()}>\n <slot name=\"header\">{this.headerText}</slot>\n </h2>\n <button part=\"close-button\" class={closeButton()} onClick={() => this.hide()} aria-label=\"Close\">\n <bcm-icon name=\"fa-solid fa-xmark\"></bcm-icon>\n </button>\n </div>\n <div part=\"content\" class={content()}>\n <slot />\n </div>\n <div part=\"footer\">\n <slot name=\"footer\" />\n </div>\n </div>\n </div>\n );\n }\n}\n"],"version":3}
|
|
@@ -47,10 +47,10 @@ const DropdownItem = /*@__PURE__*/ proxyCustomElement(class DropdownItem extends
|
|
|
47
47
|
}
|
|
48
48
|
render() {
|
|
49
49
|
var _a;
|
|
50
|
-
return (h("div", { key: '
|
|
50
|
+
return (h("div", { key: '3c989e05b18e183481b760f24d3d37bae4a68eea', "aria-checked": this.selected, class: this.dropdownItemClass({
|
|
51
51
|
selected: this.selected,
|
|
52
52
|
error: this.error,
|
|
53
|
-
}), onClick: () => this.handleClick() }, h("slot", { key: '
|
|
53
|
+
}), onClick: () => this.handleClick() }, h("slot", { key: '9edf937944435ae070541bd5952fbbda1ffe5d9d', name: "left-content" }, this.icon && h("bcm-icon", { key: '1b452c2a57af6d3a7c85bd9e48107f24224eae4b', "icon-name": this.icon })), h("div", { key: 'd4114f8e306accdc373e753d02870ad21e65c8b1', class: "flex flex-row text-pretty w-full" }, h("slot", { key: '0f1a8d78b7c91f117d5389d8bdf1efb894168df4' }, this.text)), h("slot", { key: 'e428dadc7ca757302c47431a3dda05895387a9f5', name: "right-content" }, (_a = this.rightIcons) === null || _a === void 0 ? void 0 : _a.map(icon => (h("bcm-icon", { "icon-name": icon }))))));
|
|
54
54
|
}
|
|
55
55
|
get host() { return this; }
|
|
56
56
|
static get style() { return BcmDropdownItemStyle0; }
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { p as proxyCustomElement, H, c as createEvent, h, d as Host } from './p-30135590.js';
|
|
2
2
|
import { c as ce } from './p-5fcf77f9.js';
|
|
3
|
-
import { d as defineCustomElement$3 } from './p-
|
|
3
|
+
import { d as defineCustomElement$3 } from './p-d56f8a26.js';
|
|
4
4
|
import { d as defineCustomElement$2 } from './p-39872cdf.js';
|
|
5
5
|
|
|
6
6
|
const dropdownCss = ".visible{visibility:visible}.hidden{display:none}.static{position:static}.flex{display:flex}.max-h-64{max-height:16rem}.w-full{width:100%}.min-w-10{min-width:2.5rem}.max-w-64{max-width:16rem}.flex-col{flex-direction:column}.items-center{align-items:center}.overflow-y-auto{overflow-y:auto}.rounded-lg{border-radius:var(--bcm-ui-border-radius-lg,8px)}.bg-color-basic-panel{background-color:var(--bcm-ui-color-background-basic-panel)}.py-1\\.5{padding-bottom:.375rem;padding-top:.375rem}.shadow{--tw-shadow:var(--bcm-ui-box-shadow-default);--tw-shadow-colored:var(--bcm-ui-box-shadow-default)}.shadow,.shadow-3{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-3{--tw-shadow:var(--bcm-ui-box-shadow-3);--tw-shadow-colored:var(--bcm-ui-box-shadow-3)}.outline{outline-style:solid}";
|
|
@@ -45,7 +45,7 @@ const Dropdown = /*@__PURE__*/ proxyCustomElement(class Dropdown extends H {
|
|
|
45
45
|
});
|
|
46
46
|
}
|
|
47
47
|
render() {
|
|
48
|
-
return (h(Host, { key: '
|
|
48
|
+
return (h(Host, { key: '7c13b65d8c966a4a2de522aa9d765cb7933bcd81' }, h("bcm-button", { key: '7511bf043370dd8360c458800c1518205c35ac3c', kind: "outline" }, h("span", { key: '1a67377235ffe4b5989adab0b185585e9e4d1080', part: "text" }, this.text)), this.isReady && (h("bcm-linked", { key: '78a528e16b5c76409a9546e7f2523b9535d47276', targetElement: this.buttonRef }, h("div", { key: 'afec0593ed669692ab2e97e58a2e918689fc9175', part: "dropdown-container", class: this.dropdownClass() }, h("slot", { key: '4f94568837c8c32619aa6c586b35c8d8bb60a74c', onSlotchange: this.handleSlotChange }))))));
|
|
49
49
|
}
|
|
50
50
|
get host() { return this; }
|
|
51
51
|
static get style() { return BcmDropdownStyle0; }
|
|
@@ -281,14 +281,14 @@ const BcmInput$1 = /*@__PURE__*/ proxyCustomElement(class BcmInput extends H {
|
|
|
281
281
|
disabled: this.disabled,
|
|
282
282
|
focused: this.isFocused,
|
|
283
283
|
});
|
|
284
|
-
return (h("div", { key: '
|
|
284
|
+
return (h("div", { key: '77a0be85ac2a3749e95bedafc01134a5a6a9f655', class: "bcm-ui-element" }, this.label && (h("label", { key: 'a202e383e92085bed836777a5484f306d73638dd', class: classNames('input-label font-medium', {
|
|
285
285
|
'text-color-label': !this.disabled,
|
|
286
286
|
'text-color-disabled': this.disabled,
|
|
287
287
|
}, {
|
|
288
288
|
'text-size-3': this.size === 'small',
|
|
289
289
|
'text-size-4': this.size === 'medium',
|
|
290
290
|
'text-size-5': this.size === 'large',
|
|
291
|
-
}), htmlFor: inputId }, h("slot", { key: '
|
|
291
|
+
}), htmlFor: inputId }, h("slot", { key: '204121e272f4a168db119322aaba8c4ed2e5c125', name: "label" }, this.label), this.required && h("span", { key: 'eb658a88419adb4003525dc711676628b832a3c4' }, "*"))), h("div", { key: '584edbfd2e49a4e37e45781d7844ce8b850532ff', class: base() }, (this.hasSlotContent('prefix') || this.prefixIcon || this.getDefaultIconForType()) && (h("div", { key: '0cbc9f42756c643cc5277fe1e7a7636a4fd490be', class: "flex items-center gap-2 px-2" }, (this.prefixIcon || this.getDefaultIconForType()) && (h("bcm-icon", { key: 'a6c0dd258d7c28f2c8d5876fc703fa230ee3ce1a', class: "prefix-icon", "icon-name": this.prefixIcon || this.getDefaultIconForType(), size: this.iconSize })), h("slot", { key: '9f8ff60b443210f0f3fd68e43ac73248bd3c4b35', name: "prefix" }))), h("input", { key: 'd811a67abb5727f2f2d3051d5dded8d5d78564ec', ref: el => (this.inputRef = el), id: inputId, class: inputClass(), type: this.type, name: this.name, disabled: this.disabled, readonly: this.readonly, required: this.required, placeholder: this.placeholder, autocomplete: this.autocomplete, minlength: this.minLength, maxlength: this.maxLength, min: this.min, max: this.max, step: this.step, pattern: this.pattern, "aria-invalid": this.status === 'error', "aria-required": this.required, "aria-labelledby": this.labelledby, "aria-describedby": this.describedby, value: this.value, onInput: this.onInput, onChange: this.onChange, onFocus: this.onFocus, onBlur: this.onBlur, onKeyDown: this.onKeyDown, onKeyUp: this.onKeyUp }), (this.hasSlotContent('suffix') || this.suffixIcon) && (h("div", { key: 'c10515b9f3a9fb8d87e8c0f0abd383220ba5554c', class: "flex items-center gap-2 px-2" }, h("slot", { key: '5902fa399e7fad8a82e1deaf6bc45f9a5ba8b94a', name: "suffix" }), this.suffixIcon && h("bcm-icon", { key: '46721b1a002b2b0a04686e2e8968b2c0b51c1061', class: "suffix-icon", "icon-name": this.suffixIcon, size: this.iconSize }))), this.PasswordToggleButton()), (this.captionText || this.internalErrorMessage || this.validationMessage) && (h("div", { key: '46f3360446fe8c40aab58d1d4047c4f1bb010fff', class: classNames('input-caption-text font-regular mt-1', {
|
|
292
292
|
'text-[--bcm-ui-color-text-caption]': !this.disabled && this.internalStatus === 'default',
|
|
293
293
|
'text-[--bcm-ui-color-text-error]': !this.disabled && (this.internalStatus === 'error' || !this.isValid),
|
|
294
294
|
'text-[--bcm-ui-color-text-success]': !this.disabled && this.internalStatus === 'success',
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { p as proxyCustomElement, H, c as createEvent, h, F as Fragment } from './p-30135590.js';
|
|
2
2
|
import { c as computePosition, o as offset, f as flip, s as shift, b as arrow } from './p-50133556.js';
|
|
3
3
|
import { c as ce } from './p-5fcf77f9.js';
|
|
4
|
-
import { d as defineCustomElement$2 } from './p-
|
|
4
|
+
import { d as defineCustomElement$2 } from './p-d56f8a26.js';
|
|
5
5
|
|
|
6
6
|
const popConfirmCss = ".absolute{position:absolute}.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))}.text-wrap{text-wrap:wrap}:host{--popover-bg:var(--bcm-ui-color-background-basic-panel);--popover-radius:6px;--popover-text-color:var(--bcm-ui-color-text-basic);display:inline-block}.arrow{background:var(--arrow-color);clip-path:polygon(50% 0,100% 100%,0 100%);position:absolute;z-index:1}.arrow.top{transform:rotate(180deg)}.arrow.bottom{transform:rotate(0deg)}.arrow.right{transform:rotate(-90deg)}.arrow.left{transform:rotate(90deg)}::slotted([slot=body]){text-wrap:pretty;font-family:Inter,sans-serif}.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:Inter,sans-serif}.static{position:static}.relative{position:relative}.z-\\[9999\\]{z-index:9999}.mx-auto{margin-left:auto;margin-right:auto}.flex{display:flex}.hidden{display:none}.size-6{height:1.5rem;width:1.5rem}.h-2{height:.5rem}.w-4{width:1rem}.w-full{width:100%}.max-w-64{max-width:16rem}.max-w-80{max-width:20rem}.max-w-96{max-width:24rem}.flex-1{flex:1 1 0%}.cursor-pointer{cursor:pointer}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-2{gap:.5rem}.gap-2\\.5{gap:.625rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.text-pretty{text-wrap:pretty}.rounded-\\[--popover-radius\\]{border-radius:var(--popover-radius)}.rounded-full{border-radius:var(--bcm-ui-border-radius-full,9999px)}.bg-\\[--popover-bg\\]{background-color:var(--popover-bg)}.p-4{padding:1rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.font-sans{font-family:Inter,sans-serif}.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)}.text-size-7{font-size:var(--bcm-ui-font-size-7,20px);line-height:var(--bcm-ui-line-height-7,28px)}.text-size-inherit{font-size:inherit;line-height:inherit}.font-semibold{font-weight:600}.\\!text-color-header{color:var(--bcm-ui-color-text-header)!important}.text-\\[--text-color\\]{color:var(--text-color)}.shadow{--tw-shadow:var(--bcm-ui-box-shadow-default);--tw-shadow-colored:var(--bcm-ui-box-shadow-default)}.shadow,.shadow-2{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-2{--tw-shadow:var(--bcm-ui-box-shadow-2);--tw-shadow-colored:var(--bcm-ui-box-shadow-2)}.outline{outline-style:solid}.hover\\:bg-gray-100:hover{background-color:oklch(.967 .003 264.542)}";
|
|
7
7
|
const BcmPopConfirmStyle0 = popConfirmCss;
|
|
@@ -240,7 +240,7 @@ const PopConfirm = /*@__PURE__*/ proxyCustomElement(class PopConfirm extends H {
|
|
|
240
240
|
const { container, header, footer, headerLeftContent, closeIconArea, titleContainer } = this.classes({
|
|
241
241
|
size: this.size,
|
|
242
242
|
});
|
|
243
|
-
return (h(Fragment, { key: '
|
|
243
|
+
return (h(Fragment, { key: '8910f368da993572cb4725dcbb74235ec50348e8' }, this.isOpen && (h("div", { key: '4ded121b7e121f8bb0dd1fe76b2921fd2a487fe8', role: "dialog", "aria-labelledby": "pop-confirm-title", style: this.popoverStyle, class: container(), ref: el => (this.popoverElement = el) }, h("div", { key: '94a78199e0e90cec5ba905db17d3a9c48a28a9a7', ref: el => (this.arrowElement = el), class: `arrow w-4 h-2 ${(_a = this.currentPlacement) !== null && _a !== void 0 ? _a : 'top'}` }), h("header", { key: 'd21596aa10c8128c2d9921b3bc6c4b93002877d4', class: header() }, h("div", { key: 'e0a91a6031f59630cfeea3ef5e35a32e973c6006', class: headerLeftContent() }, this.statusIcon && h("bcm-icon", { key: '9f184b3caf099697d4139a6a9efd276618b0f818', "icon-name": statusIcons[this.status] }), h("span", { key: '50fd578631061127dd49d00600a4d83d645f4f76', class: titleContainer() }, this.headerText), h("slot", { key: '8c29cbde0194fa1ff1ca82286b57b34532162d8b', name: "header" })), h("div", { key: '6ef68d637bbfd3cf2fd2c1a8650c222d5970cf64', class: closeIconArea(), onClick: this.handleCancel }, h("bcm-icon", { key: 'c017286c2604e18e8ad47c889092fa727a01a18f', "icon-name": "far fa-times" }))), h("main", { key: '5f9255fd563714b7eb842900010e8d1c51417172', class: "flex-1 mx-auto font-sans text-pretty" }, h("slot", { key: 'a7ca7e568776da834bc7fe44993c32f219522a1a', name: "body" }, this.description)), h("footer", { key: '1172e51992183b617d6d5ce53a4a09a09be12ae8', class: footer() }, h("bcm-button", { key: 'e99da377988d0be710e5ce6d47c84cc65298aa1f', kind: "outline", size: this.size, onClick: this.handleCancel }, this.cancelText), h("bcm-button", { key: '8154b716f4bf1b5ed272a3b53be7ddaf151ae0cf', size: this.size, status: this.status, kind: "primary", onClick: this.handleConfirm }, this.confirmText), h("slot", { key: 'ad182d00fc2925d7b403f70250cd1e9687432a46', name: "footer" }))))));
|
|
244
244
|
}
|
|
245
245
|
get el() { return this; }
|
|
246
246
|
static get style() { return BcmPopConfirmStyle0; }
|
|
@@ -178,7 +178,7 @@ const Popover = /*@__PURE__*/ proxyCustomElement(class Popover extends H {
|
|
|
178
178
|
isOpen: this.open,
|
|
179
179
|
size: this.size,
|
|
180
180
|
});
|
|
181
|
-
return (h("div", { key: '
|
|
181
|
+
return (h("div", { key: '3fe47e7ebc4fb9f9fad0fda8dedf11f2ea8e904f', class: "relative" }, h("slot", { key: '8dd0e99a839b2c9c0ad6df67356bf616dae407f1', onSlotchange: () => this.handleSlotChange() }), h("div", { key: 'b4339c24996ec4666ffb731f7908513ade8cb5d8', part: "popover", class: box(), role: "dialog", "aria-hidden": !this.open ? 'true' : 'false', ref: el => (this.popoverElement = el) }, h("div", { key: 'f94ca6625dac67dd16f625398c007a274e677ac7', class: arrow(), ref: el => (this.arrowElement = el), part: "arrow" }), h("div", { key: 'd64bf52940bef06b04ec2c13f3116652a7b6b8d6', class: header(), part: "header" }, h("slot", { key: 'be1ee83453f9b159297e6e7e73d5451f21fbb873', name: "header" }, this.headerText)), h("div", { key: '9838c02e51fac40992a34fdfcaecb8d48fba48c8', class: content(), part: "content" }, h("slot", { key: '0f01f42280a5058d4a4aacca035111e8990c194a', name: "content" }, this.message)))));
|
|
182
182
|
}
|
|
183
183
|
get el() { return this; }
|
|
184
184
|
static get style() { return BcmPopoverStyle0; }
|