@trendyol/baklava 2.2.0-beta.1 → 2.2.0-beta.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/baklava-react.d.ts +3 -0
- package/dist/baklava-react.d.ts.map +1 -1
- package/dist/baklava-react.js +1 -1
- package/dist/baklava-react.js.map +2 -2
- package/dist/baklava.js +1 -1
- package/dist/chunk-B27KOFJ6.js +2 -0
- package/dist/chunk-B27KOFJ6.js.map +7 -0
- package/dist/{chunk-3SON7X7S.js → chunk-F3FZ2T4U.js} +2 -2
- package/dist/{chunk-2ECPQ3PR.js → chunk-FUPXTBOQ.js} +5 -5
- package/dist/chunk-FUPXTBOQ.js.map +7 -0
- package/dist/{chunk-SOBFXTEO.js → chunk-FYPRMH7P.js} +2 -2
- package/dist/{chunk-WOA7OETR.js → chunk-JWJ25XSK.js} +2 -2
- package/dist/{chunk-VSSCG2GF.js → chunk-JZ2UZ27L.js} +2 -2
- package/dist/{chunk-GUUZ6VA7.js → chunk-M4SZRVAL.js} +2 -2
- package/dist/{chunk-YV4QD44W.js → chunk-NFZ2JBCP.js} +2 -2
- package/dist/{chunk-BZJZ5L6E.js → chunk-OWCHMD6A.js} +2 -2
- package/dist/{chunk-NOQP45RL.js → chunk-POAQ7UCM.js} +2 -2
- package/dist/{chunk-BQULLIU3.js → chunk-QR47IH7J.js} +2 -2
- package/dist/{chunk-II3XNLPM.js → chunk-QXJ3WDYY.js} +2 -2
- package/dist/{chunk-UNA6X23I.js → chunk-SKXO5ZOU.js} +2 -2
- package/dist/{chunk-TC7F23WR.js → chunk-SM454JXF.js} +2 -2
- package/dist/{chunk-U2M2YTSP.js → chunk-TKF3DQ7Y.js} +2 -2
- package/dist/{chunk-LTTJ4GJL.js → chunk-UHRHKXXJ.js} +2 -2
- package/dist/{chunk-V2JRNKNE.js → chunk-ULLTYT54.js} +2 -2
- package/dist/{chunk-2XHCYPYW.js → chunk-ZOOUVY6K.js} +2 -2
- package/dist/components/alert/bl-alert.js +1 -1
- package/dist/components/badge/bl-badge.js +1 -1
- package/dist/components/button/bl-button.js +1 -1
- package/dist/components/checkbox-group/bl-checkbox-group.js +1 -1
- package/dist/components/checkbox-group/checkbox/bl-checkbox.js +1 -1
- package/dist/components/dialog/bl-dialog.d.ts +5 -0
- package/dist/components/dialog/bl-dialog.d.ts.map +1 -1
- package/dist/components/dialog/bl-dialog.js +1 -1
- package/dist/components/drawer/bl-drawer.js +1 -1
- package/dist/components/dropdown/bl-dropdown.js +1 -1
- package/dist/components/dropdown/item/bl-dropdown-item.js +1 -1
- package/dist/components/icon/bl-icon.js +1 -1
- package/dist/components/input/bl-input.js +1 -1
- package/dist/components/pagination/bl-pagination.js +1 -1
- package/dist/components/popover/bl-popover.js +1 -1
- package/dist/components/radio-group/bl-radio-group.js +1 -1
- package/dist/components/radio-group/radio/bl-radio.js +1 -1
- package/dist/components/select/bl-select.js +1 -1
- package/dist/components/select/option/bl-select-option.js +1 -1
- package/dist/components/switch/bl-switch.js +1 -1
- package/dist/components/tab-group/bl-tab-group.js +1 -1
- package/dist/components/tab-group/tab/bl-tab.js +1 -1
- package/dist/components/textarea/bl-textarea.js +1 -1
- package/dist/components/tooltip/bl-tooltip.js +1 -1
- package/dist/custom-elements.json +7 -0
- package/dist/utilities/event.d.ts +1 -1
- package/dist/utilities/event.d.ts.map +1 -1
- package/package.json +1 -1
- package/dist/chunk-23UFIOHV.js +0 -2
- package/dist/chunk-23UFIOHV.js.map +0 -7
- package/dist/chunk-2ECPQ3PR.js.map +0 -7
- /package/dist/{chunk-3SON7X7S.js.map → chunk-F3FZ2T4U.js.map} +0 -0
- /package/dist/{chunk-SOBFXTEO.js.map → chunk-FYPRMH7P.js.map} +0 -0
- /package/dist/{chunk-WOA7OETR.js.map → chunk-JWJ25XSK.js.map} +0 -0
- /package/dist/{chunk-VSSCG2GF.js.map → chunk-JZ2UZ27L.js.map} +0 -0
- /package/dist/{chunk-GUUZ6VA7.js.map → chunk-M4SZRVAL.js.map} +0 -0
- /package/dist/{chunk-YV4QD44W.js.map → chunk-NFZ2JBCP.js.map} +0 -0
- /package/dist/{chunk-BZJZ5L6E.js.map → chunk-OWCHMD6A.js.map} +0 -0
- /package/dist/{chunk-NOQP45RL.js.map → chunk-POAQ7UCM.js.map} +0 -0
- /package/dist/{chunk-BQULLIU3.js.map → chunk-QR47IH7J.js.map} +0 -0
- /package/dist/{chunk-II3XNLPM.js.map → chunk-QXJ3WDYY.js.map} +0 -0
- /package/dist/{chunk-UNA6X23I.js.map → chunk-SKXO5ZOU.js.map} +0 -0
- /package/dist/{chunk-TC7F23WR.js.map → chunk-SM454JXF.js.map} +0 -0
- /package/dist/{chunk-U2M2YTSP.js.map → chunk-TKF3DQ7Y.js.map} +0 -0
- /package/dist/{chunk-LTTJ4GJL.js.map → chunk-UHRHKXXJ.js.map} +0 -0
- /package/dist/{chunk-V2JRNKNE.js.map → chunk-ULLTYT54.js.map} +0 -0
- /package/dist/{chunk-2XHCYPYW.js.map → chunk-ZOOUVY6K.js.map} +0 -0
package/dist/baklava-react.d.ts
CHANGED
|
@@ -38,6 +38,9 @@ export declare const BlCheckboxGroup: React.LazyExoticComponent<ReactWebComponen
|
|
|
38
38
|
}>>;
|
|
39
39
|
export declare const BlDialog: React.LazyExoticComponent<ReactWebComponent<BlDialogType, {
|
|
40
40
|
onBlDialogOpen: EventName<CustomEvent<object>>;
|
|
41
|
+
onBlDialogRequestClose: EventName<CustomEvent<{
|
|
42
|
+
source: "close-button" | "keyboard" | "backdrop";
|
|
43
|
+
}>>;
|
|
41
44
|
onBlDialogClose: EventName<CustomEvent<object>>;
|
|
42
45
|
}>>;
|
|
43
46
|
export declare const BlDrawer: React.LazyExoticComponent<ReactWebComponent<BlDrawerType, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"baklava-react.d.ts","sourceRoot":"","sources":["../src/baklava-react.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EACL,KAAK,SAAS,EAEd,iBAAiB,EAClB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,KAAK,WAAW,MAAM,6BAA6B,CAAC;AAC3D,OAAO,KAAK,WAAW,MAAM,6BAA6B,CAAC;AAC3D,OAAO,KAAK,YAAY,MAAM,+BAA+B,CAAC;AAC9D,OAAO,KAAK,mBAAmB,MAAM,+CAA+C,CAAC;AACrF,OAAO,KAAK,YAAY,MAAM,+BAA+B,CAAC;AAC9D,OAAO,KAAK,YAAY,MAAM,+BAA+B,CAAC;AAC9D,OAAO,KAAK,cAAc,MAAM,mCAAmC,CAAC;AACpE,OAAO,KAAK,UAAU,MAAM,2BAA2B,CAAC;AACxD,OAAO,KAAK,WAAW,MAAM,6BAA6B,CAAC;AAC3D,OAAO,KAAK,gBAAgB,MAAM,uCAAuC,CAAC;AAC1E,OAAO,KAAK,aAAa,MAAM,iCAAiC,CAAC;AACjE,OAAO,KAAK,uBAAuB,MAAM,uDAAuD,CAAC;AACjG,OAAO,KAAK,gBAAgB,MAAM,yCAAyC,CAAC;AAC5E,OAAO,KAAK,YAAY,MAAM,+BAA+B,CAAC;AAC9D,OAAO,KAAK,YAAY,MAAM,+BAA+B,CAAC;AAC9D,OAAO,KAAK,cAAc,MAAM,qCAAqC,CAAC;AACtE,OAAO,KAAK,cAAc,MAAM,mCAAmC,CAAC;AACpE,OAAO,KAAK,aAAa,MAAM,iCAAiC,CAAC;AACjE,OAAO,KAAK,cAAc,MAAM,kDAAkD,CAAC;AACnF,OAAO,KAAK,mBAAmB,MAAM,+CAA+C,CAAC;AACrF,OAAO,KAAK,kBAAkB,MAAM,6CAA6C,CAAC;AAClF,OAAO,KAAK,WAAW,MAAM,yCAAyC,CAAC;AACvE,OAAO,KAAK,kBAAkB,MAAM,6CAA6C,CAAC;AAClF,OAAO,KAAK,SAAS,MAAM,mCAAmC,CAAC;AAC/D,OAAO,KAAK,cAAc,MAAM,+CAA+C,CAAC;AAEhF,eAAO,MAAM,OAAO;eAC0B,UAAU,YAAY,OAAO,CAAC,CAAC;GAa5E,CAAC;AAEF,eAAO,MAAM,OAAO,+DASnB,CAAC;AAEF,eAAO,MAAM,QAAQ;eAC0B,UAAU,YAAY,MAAM,CAAC,CAAC;GAa5E,CAAC;AAEF,eAAO,MAAM,eAAe;6BAGG,UAAU,YAAY,MAAM,EAAE,CAAC,CAAC;GAc9D,CAAC;AAEF,eAAO,MAAM,QAAQ;oBAIC,UAAU,YAAY,MAAM,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"baklava-react.d.ts","sourceRoot":"","sources":["../src/baklava-react.ts"],"names":[],"mappings":"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"}
|
package/dist/baklava-react.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import"./chunk-NZ3RGSR6.js";import e from"react";var
|
|
1
|
+
import"./chunk-NZ3RGSR6.js";import e from"react";var N=new Set(["children","localName","ref","style","className"]),w=new WeakMap,T=(u,p,b,d,B)=>{let a=B==null?void 0:B[p];a===void 0||b===d?b==null&&p in HTMLElement.prototype?u.removeAttribute(p):u[p]=b:((s,n,g)=>{let m=w.get(s);m===void 0&&w.set(s,m=new Map);let r=m.get(n);g!==void 0?r===void 0?(m.set(n,r={handleEvent:g}),s.addEventListener(n,r)):r.handleEvent=g:r!==void 0&&(m.delete(n),s.removeEventListener(n,r))})(u,a,b)};function t(u=window.React,p,b,d,B){let a,s,n;if(p===void 0){let c=u;({tagName:s,elementClass:n,events:d,displayName:B}=c),a=c.react}else a=u,n=b,s=p;let g=a.Component,m=a.createElement,r=new Set(Object.keys(d!=null?d:{}));class E extends g{constructor(){super(...arguments),this.o=null}t(o){if(this.o!==null)for(let v in this.i)T(this.o,v,this.props[v],o?o[v]:void 0,d)}componentDidMount(){this.t()}componentDidUpdate(o){this.t(o)}render(){let{_$Gl:o,...v}=this.props;this.h!==o&&(this.u=l=>{o!==null&&((i,y)=>{typeof i=="function"?i(y):i.current=y})(o,l),this.o=l,this.h=o}),this.i={};let C={ref:this.u};for(let[l,i]of Object.entries(v))N.has(l)?C[l==="className"?"class":l]=i:r.has(l)||l in n.prototype?this.i[l]=i:C[l]=i;return m(s,C)}}E.displayName=B!=null?B:n.name;let h=a.forwardRef((c,o)=>m(E,{...c,_$Gl:o},c==null?void 0:c.children));return h.displayName=E.displayName,h}var I=e.lazy(()=>customElements.whenDefined("bl-alert").then(()=>({default:t({react:e,tagName:"bl-alert",elementClass:customElements.get("bl-alert"),events:{onBlClose:"bl-close"}})}))),P=e.lazy(()=>customElements.whenDefined("bl-badge").then(()=>({default:t({react:e,tagName:"bl-badge",elementClass:customElements.get("bl-badge"),events:{}})}))),W=e.lazy(()=>customElements.whenDefined("bl-button").then(()=>({default:t({react:e,tagName:"bl-button",elementClass:customElements.get("bl-button"),events:{onBlClick:"bl-click"}})}))),z=e.lazy(()=>customElements.whenDefined("bl-checkbox-group").then(()=>({default:t({react:e,tagName:"bl-checkbox-group",elementClass:customElements.get("bl-checkbox-group"),events:{onBlCheckboxGroupChange:"bl-checkbox-group-change"}})}))),G=e.lazy(()=>customElements.whenDefined("bl-dialog").then(()=>({default:t({react:e,tagName:"bl-dialog",elementClass:customElements.get("bl-dialog"),events:{onBlDialogOpen:"bl-dialog-open",onBlDialogRequestClose:"bl-dialog-request-close",onBlDialogClose:"bl-dialog-close"}})}))),O=e.lazy(()=>customElements.whenDefined("bl-drawer").then(()=>({default:t({react:e,tagName:"bl-drawer",elementClass:customElements.get("bl-drawer"),events:{onBlDrawerOpen:"bl-drawer-open",onBlDrawerClose:"bl-drawer-close"}})}))),F=e.lazy(()=>customElements.whenDefined("bl-dropdown").then(()=>({default:t({react:e,tagName:"bl-dropdown",elementClass:customElements.get("bl-dropdown"),events:{onBlDropdownOpen:"bl-dropdown-open",onBlDropdownClose:"bl-dropdown-close"}})}))),H=e.lazy(()=>customElements.whenDefined("bl-icon").then(()=>({default:t({react:e,tagName:"bl-icon",elementClass:customElements.get("bl-icon"),events:{onBlLoad:"bl-load",onBlError:"bl-error"}})}))),j=e.lazy(()=>customElements.whenDefined("bl-input").then(()=>({default:t({react:e,tagName:"bl-input",elementClass:customElements.get("bl-input"),events:{onBlChange:"bl-change",onBlInput:"bl-input",onBlInvalid:"bl-invalid"}})}))),L=e.lazy(()=>customElements.whenDefined("bl-pagination").then(()=>({default:t({react:e,tagName:"bl-pagination",elementClass:customElements.get("bl-pagination"),events:{onBlChange:"bl-change"}})}))),A=e.lazy(()=>customElements.whenDefined("bl-popover").then(()=>({default:t({react:e,tagName:"bl-popover",elementClass:customElements.get("bl-popover"),events:{onBlPopoverShow:"bl-popover-show",onBlPopoverHide:"bl-popover-hide"}})}))),q=e.lazy(()=>customElements.whenDefined("bl-progress-indicator").then(()=>({default:t({react:e,tagName:"bl-progress-indicator",elementClass:customElements.get("bl-progress-indicator"),events:{}})}))),M=e.lazy(()=>customElements.whenDefined("bl-radio-group").then(()=>({default:t({react:e,tagName:"bl-radio-group",elementClass:customElements.get("bl-radio-group"),events:{onBlRadioChange:"bl-radio-change"}})}))),V=e.lazy(()=>customElements.whenDefined("bl-select").then(()=>({default:t({react:e,tagName:"bl-select",elementClass:customElements.get("bl-select"),events:{onBlSelect:"bl-select"}})}))),_=e.lazy(()=>customElements.whenDefined("bl-switch").then(()=>({default:t({react:e,tagName:"bl-switch",elementClass:customElements.get("bl-switch"),events:{onBlSwitchToggle:"bl-switch-toggle"}})}))),$=e.lazy(()=>customElements.whenDefined("bl-tab-group").then(()=>({default:t({react:e,tagName:"bl-tab-group",elementClass:customElements.get("bl-tab-group"),events:{}})}))),U=e.lazy(()=>customElements.whenDefined("bl-textarea").then(()=>({default:t({react:e,tagName:"bl-textarea",elementClass:customElements.get("bl-textarea"),events:{onBlInput:"bl-input",onBlChange:"bl-change",onBlInvalid:"bl-invalid"}})}))),J=e.lazy(()=>customElements.whenDefined("bl-tooltip").then(()=>({default:t({react:e,tagName:"bl-tooltip",elementClass:customElements.get("bl-tooltip"),events:{onBlTooltipShow:"bl-tooltip-show",onBlTooltipHide:"bl-tooltip-hide"}})}))),K=e.lazy(()=>customElements.whenDefined("bl-checkbox").then(()=>({default:t({react:e,tagName:"bl-checkbox",elementClass:customElements.get("bl-checkbox"),events:{onBlCheckboxChange:"bl-checkbox-change",onBlFocus:"bl-focus",onBlBlur:"bl-blur"}})}))),Q=e.lazy(()=>customElements.whenDefined("bl-dropdown-group").then(()=>({default:t({react:e,tagName:"bl-dropdown-group",elementClass:customElements.get("bl-dropdown-group"),events:{}})}))),X=e.lazy(()=>customElements.whenDefined("bl-dropdown-item").then(()=>({default:t({react:e,tagName:"bl-dropdown-item",elementClass:customElements.get("bl-dropdown-item"),events:{onBlDropdownItemClick:"bl-dropdown-item-click"}})}))),Y=e.lazy(()=>customElements.whenDefined("bl-radio").then(()=>({default:t({react:e,tagName:"bl-radio",elementClass:customElements.get("bl-radio"),events:{onBlChecked:"bl-checked",onBlFocus:"bl-focus",onBlBlur:"bl-blur"}})}))),Z=e.lazy(()=>customElements.whenDefined("bl-select-option").then(()=>({default:t({react:e,tagName:"bl-select-option",elementClass:customElements.get("bl-select-option"),events:{onBlSelectOption:"bl-select-option",onBlFocus:"bl-focus",onBlBlur:"bl-blur"}})}))),ee=e.lazy(()=>customElements.whenDefined("bl-tab").then(()=>({default:t({react:e,tagName:"bl-tab",elementClass:customElements.get("bl-tab"),events:{onBlTabSelected:"bl-tab-selected"}})}))),te=e.lazy(()=>customElements.whenDefined("bl-tab-panel").then(()=>({default:t({react:e,tagName:"bl-tab-panel",elementClass:customElements.get("bl-tab-panel"),events:{}})})));export{I as BlAlert,P as BlBadge,W as BlButton,K as BlCheckbox,z as BlCheckboxGroup,G as BlDialog,O as BlDrawer,F as BlDropdown,Q as BlDropdownGroup,X as BlDropdownItem,H as BlIcon,j as BlInput,L as BlPagination,A as BlPopover,q as BlProgressIndicator,Y as BlRadio,M as BlRadioGroup,V as BlSelect,Z as BlSelectOption,_ as BlSwitch,ee as BlTab,$ as BlTabGroup,te as BlTabPanel,U as BlTextarea,J as BlTooltip};
|
|
2
2
|
/*! Bundled license information:
|
|
3
3
|
|
|
4
4
|
@lit-labs/react/create-component.js:
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../src/baklava-react.ts", "../node_modules/@lit-labs/react/src/create-component.ts"],
|
|
4
|
-
"sourcesContent": ["/* eslint-disable @typescript-eslint/ban-ts-comment */\n// @ts-nocheck\nimport React from \"react\";\nimport {\n type EventName,\n createComponent,\n ReactWebComponent,\n} from \"@lit-labs/react\";\nimport { ISelectOption } from \"./components/select/bl-select\";\nimport type BlAlertType from \"./components/alert/bl-alert\";\nimport type BlBadgeType from \"./components/badge/bl-badge\";\nimport type BlButtonType from \"./components/button/bl-button\";\nimport type BlCheckboxGroupType from \"./components/checkbox-group/bl-checkbox-group\";\nimport type BlDialogType from \"./components/dialog/bl-dialog\";\nimport type BlDrawerType from \"./components/drawer/bl-drawer\";\nimport type BlDropdownType from \"./components/dropdown/bl-dropdown\";\nimport type BlIconType from \"./components/icon/bl-icon\";\nimport type BlInputType from \"./components/input/bl-input\";\nimport type BlPaginationType from \"./components/pagination/bl-pagination\";\nimport type BlPopoverType from \"./components/popover/bl-popover\";\nimport type BlProgressIndicatorType from \"./components/progress-indicator/bl-progress-indicator\";\nimport type BlRadioGroupType from \"./components/radio-group/bl-radio-group\";\nimport type BlSelectType from \"./components/select/bl-select\";\nimport type BlSwitchType from \"./components/switch/bl-switch\";\nimport type BlTabGroupType from \"./components/tab-group/bl-tab-group\";\nimport type BlTextareaType from \"./components/textarea/bl-textarea\";\nimport type BlTooltipType from \"./components/tooltip/bl-tooltip\";\nimport type BlCheckboxType from \"./components/checkbox-group/checkbox/bl-checkbox\";\nimport type BlDropdownGroupType from \"./components/dropdown/group/bl-dropdown-group\";\nimport type BlDropdownItemType from \"./components/dropdown/item/bl-dropdown-item\";\nimport type BlRadioType from \"./components/radio-group/radio/bl-radio\";\nimport type BlSelectOptionType from \"./components/select/option/bl-select-option\";\nimport type BlTabType from \"./components/tab-group/tab/bl-tab\";\nimport type BlTabPanelType from \"./components/tab-group/tab-panel/bl-tab-panel\";\n\nexport const BlAlert = React.lazy<\n ReactWebComponent<BlAlertType, { onBlClose: EventName<CustomEvent<boolean>> }>\n>(() =>\n customElements.whenDefined(\"bl-alert\").then(() => ({\n default: createComponent<\n BlAlertType,\n { onBlClose: EventName<CustomEvent<boolean>> }\n >({\n react: React,\n tagName: \"bl-alert\",\n elementClass: customElements.get(\"bl-alert\"),\n events: { onBlClose: \"bl-close\" },\n }),\n }))\n);\n\nexport const BlBadge = React.lazy<ReactWebComponent<BlBadgeType>>(() =>\n customElements.whenDefined(\"bl-badge\").then(() => ({\n default: createComponent<BlBadgeType>({\n react: React,\n tagName: \"bl-badge\",\n elementClass: customElements.get(\"bl-badge\"),\n events: {},\n }),\n }))\n);\n\nexport const BlButton = React.lazy<\n ReactWebComponent<BlButtonType, { onBlClick: EventName<CustomEvent<string>> }>\n>(() =>\n customElements.whenDefined(\"bl-button\").then(() => ({\n default: createComponent<\n BlButtonType,\n { onBlClick: EventName<CustomEvent<string>> }\n >({\n react: React,\n tagName: \"bl-button\",\n elementClass: customElements.get(\"bl-button\"),\n events: { onBlClick: \"bl-click\" },\n }),\n }))\n);\n\nexport const BlCheckboxGroup = React.lazy<\n ReactWebComponent<\n BlCheckboxGroupType,\n { onBlCheckboxGroupChange: EventName<CustomEvent<string[]>> }\n >\n>(() =>\n customElements.whenDefined(\"bl-checkbox-group\").then(() => ({\n default: createComponent<\n BlCheckboxGroupType,\n { onBlCheckboxGroupChange: EventName<CustomEvent<string[]>> }\n >({\n react: React,\n tagName: \"bl-checkbox-group\",\n elementClass: customElements.get(\"bl-checkbox-group\"),\n events: { onBlCheckboxGroupChange: \"bl-checkbox-group-change\" },\n }),\n }))\n);\n\nexport const BlDialog = React.lazy<\n ReactWebComponent<\n BlDialogType,\n {\n onBlDialogOpen: EventName<CustomEvent<object>>;\n onBlDialogClose: EventName<CustomEvent<object>>;\n }\n >\n>(() =>\n customElements.whenDefined(\"bl-dialog\").then(() => ({\n default: createComponent<\n BlDialogType,\n {\n onBlDialogOpen: EventName<CustomEvent<object>>;\n onBlDialogClose: EventName<CustomEvent<object>>;\n }\n >({\n react: React,\n tagName: \"bl-dialog\",\n elementClass: customElements.get(\"bl-dialog\"),\n events: {\n onBlDialogOpen: \"bl-dialog-open\",\n onBlDialogClose: \"bl-dialog-close\",\n },\n }),\n }))\n);\n\nexport const BlDrawer = React.lazy<\n ReactWebComponent<\n BlDrawerType,\n {\n onBlDrawerOpen: EventName<CustomEvent<string>>;\n onBlDrawerClose: EventName<CustomEvent<string>>;\n }\n >\n>(() =>\n customElements.whenDefined(\"bl-drawer\").then(() => ({\n default: createComponent<\n BlDrawerType,\n {\n onBlDrawerOpen: EventName<CustomEvent<string>>;\n onBlDrawerClose: EventName<CustomEvent<string>>;\n }\n >({\n react: React,\n tagName: \"bl-drawer\",\n elementClass: customElements.get(\"bl-drawer\"),\n events: {\n onBlDrawerOpen: \"bl-drawer-open\",\n onBlDrawerClose: \"bl-drawer-close\",\n },\n }),\n }))\n);\n\nexport const BlDropdown = React.lazy<\n ReactWebComponent<\n BlDropdownType,\n {\n onBlDropdownOpen: EventName<CustomEvent<string>>;\n onBlDropdownClose: EventName<CustomEvent<string>>;\n }\n >\n>(() =>\n customElements.whenDefined(\"bl-dropdown\").then(() => ({\n default: createComponent<\n BlDropdownType,\n {\n onBlDropdownOpen: EventName<CustomEvent<string>>;\n onBlDropdownClose: EventName<CustomEvent<string>>;\n }\n >({\n react: React,\n tagName: \"bl-dropdown\",\n elementClass: customElements.get(\"bl-dropdown\"),\n events: {\n onBlDropdownOpen: \"bl-dropdown-open\",\n onBlDropdownClose: \"bl-dropdown-close\",\n },\n }),\n }))\n);\n\nexport const BlIcon = React.lazy<\n ReactWebComponent<\n BlIconType,\n {\n onBlLoad: EventName<CustomEvent<string>>;\n onBlError: EventName<CustomEvent<string>>;\n }\n >\n>(() =>\n customElements.whenDefined(\"bl-icon\").then(() => ({\n default: createComponent<\n BlIconType,\n {\n onBlLoad: EventName<CustomEvent<string>>;\n onBlError: EventName<CustomEvent<string>>;\n }\n >({\n react: React,\n tagName: \"bl-icon\",\n elementClass: customElements.get(\"bl-icon\"),\n events: { onBlLoad: \"bl-load\", onBlError: \"bl-error\" },\n }),\n }))\n);\n\nexport const BlInput = React.lazy<\n ReactWebComponent<\n BlInputType,\n {\n onBlChange: EventName<CustomEvent<string>>;\n onBlInput: EventName<CustomEvent<string>>;\n onBlInvalid: EventName<CustomEvent<ValidityState>>;\n }\n >\n>(() =>\n customElements.whenDefined(\"bl-input\").then(() => ({\n default: createComponent<\n BlInputType,\n {\n onBlChange: EventName<CustomEvent<string>>;\n onBlInput: EventName<CustomEvent<string>>;\n onBlInvalid: EventName<CustomEvent<ValidityState>>;\n }\n >({\n react: React,\n tagName: \"bl-input\",\n elementClass: customElements.get(\"bl-input\"),\n events: {\n onBlChange: \"bl-change\",\n onBlInput: \"bl-input\",\n onBlInvalid: \"bl-invalid\",\n },\n }),\n }))\n);\n\nexport const BlPagination = React.lazy<\n ReactWebComponent<\n BlPaginationType,\n {\n onBlChange: EventName<\n CustomEvent<{\n selectedPage: number;\n prevPage: number;\n itemsPerPage: number;\n }>\n >;\n }\n >\n>(() =>\n customElements.whenDefined(\"bl-pagination\").then(() => ({\n default: createComponent<\n BlPaginationType,\n {\n onBlChange: EventName<\n CustomEvent<{\n selectedPage: number;\n prevPage: number;\n itemsPerPage: number;\n }>\n >;\n }\n >({\n react: React,\n tagName: \"bl-pagination\",\n elementClass: customElements.get(\"bl-pagination\"),\n events: { onBlChange: \"bl-change\" },\n }),\n }))\n);\n\nexport const BlPopover = React.lazy<\n ReactWebComponent<\n BlPopoverType,\n {\n onBlPopoverShow: EventName<CustomEvent<string>>;\n onBlPopoverHide: EventName<CustomEvent<string>>;\n }\n >\n>(() =>\n customElements.whenDefined(\"bl-popover\").then(() => ({\n default: createComponent<\n BlPopoverType,\n {\n onBlPopoverShow: EventName<CustomEvent<string>>;\n onBlPopoverHide: EventName<CustomEvent<string>>;\n }\n >({\n react: React,\n tagName: \"bl-popover\",\n elementClass: customElements.get(\"bl-popover\"),\n events: {\n onBlPopoverShow: \"bl-popover-show\",\n onBlPopoverHide: \"bl-popover-hide\",\n },\n }),\n }))\n);\n\nexport const BlProgressIndicator = React.lazy<\n ReactWebComponent<BlProgressIndicatorType>\n>(() =>\n customElements.whenDefined(\"bl-progress-indicator\").then(() => ({\n default: createComponent<BlProgressIndicatorType>({\n react: React,\n tagName: \"bl-progress-indicator\",\n elementClass: customElements.get(\"bl-progress-indicator\"),\n events: {},\n }),\n }))\n);\n\nexport const BlRadioGroup = React.lazy<\n ReactWebComponent<\n BlRadioGroupType,\n { onBlRadioChange: EventName<CustomEvent<string>> }\n >\n>(() =>\n customElements.whenDefined(\"bl-radio-group\").then(() => ({\n default: createComponent<\n BlRadioGroupType,\n { onBlRadioChange: EventName<CustomEvent<string>> }\n >({\n react: React,\n tagName: \"bl-radio-group\",\n elementClass: customElements.get(\"bl-radio-group\"),\n events: { onBlRadioChange: \"bl-radio-change\" },\n }),\n }))\n);\n\nexport const BlSelect = React.lazy<\n ReactWebComponent<\n BlSelectType,\n { onBlSelect: EventName<CustomEvent<ISelectOption[]>> }\n >\n>(() =>\n customElements.whenDefined(\"bl-select\").then(() => ({\n default: createComponent<\n BlSelectType,\n { onBlSelect: EventName<CustomEvent<ISelectOption[]>> }\n >({\n react: React,\n tagName: \"bl-select\",\n elementClass: customElements.get(\"bl-select\"),\n events: { onBlSelect: \"bl-select\" },\n }),\n }))\n);\n\nexport const BlSwitch = React.lazy<\n ReactWebComponent<\n BlSwitchType,\n { onBlSwitchToggle: EventName<CustomEvent<boolean>> }\n >\n>(() =>\n customElements.whenDefined(\"bl-switch\").then(() => ({\n default: createComponent<\n BlSwitchType,\n { onBlSwitchToggle: EventName<CustomEvent<boolean>> }\n >({\n react: React,\n tagName: \"bl-switch\",\n elementClass: customElements.get(\"bl-switch\"),\n events: { onBlSwitchToggle: \"bl-switch-toggle\" },\n }),\n }))\n);\n\nexport const BlTabGroup = React.lazy<ReactWebComponent<BlTabGroupType>>(() =>\n customElements.whenDefined(\"bl-tab-group\").then(() => ({\n default: createComponent<BlTabGroupType>({\n react: React,\n tagName: \"bl-tab-group\",\n elementClass: customElements.get(\"bl-tab-group\"),\n events: {},\n }),\n }))\n);\n\nexport const BlTextarea = React.lazy<\n ReactWebComponent<\n BlTextareaType,\n {\n onBlInput: EventName<CustomEvent<string>>;\n onBlChange: EventName<CustomEvent<string>>;\n onBlInvalid: EventName<CustomEvent<ValidityState>>;\n }\n >\n>(() =>\n customElements.whenDefined(\"bl-textarea\").then(() => ({\n default: createComponent<\n BlTextareaType,\n {\n onBlInput: EventName<CustomEvent<string>>;\n onBlChange: EventName<CustomEvent<string>>;\n onBlInvalid: EventName<CustomEvent<ValidityState>>;\n }\n >({\n react: React,\n tagName: \"bl-textarea\",\n elementClass: customElements.get(\"bl-textarea\"),\n events: {\n onBlInput: \"bl-input\",\n onBlChange: \"bl-change\",\n onBlInvalid: \"bl-invalid\",\n },\n }),\n }))\n);\n\nexport const BlTooltip = React.lazy<\n ReactWebComponent<\n BlTooltipType,\n {\n onBlTooltipShow: EventName<CustomEvent<string>>;\n onBlTooltipHide: EventName<CustomEvent<string>>;\n }\n >\n>(() =>\n customElements.whenDefined(\"bl-tooltip\").then(() => ({\n default: createComponent<\n BlTooltipType,\n {\n onBlTooltipShow: EventName<CustomEvent<string>>;\n onBlTooltipHide: EventName<CustomEvent<string>>;\n }\n >({\n react: React,\n tagName: \"bl-tooltip\",\n elementClass: customElements.get(\"bl-tooltip\"),\n events: {\n onBlTooltipShow: \"bl-tooltip-show\",\n onBlTooltipHide: \"bl-tooltip-hide\",\n },\n }),\n }))\n);\n\nexport const BlCheckbox = React.lazy<\n ReactWebComponent<\n BlCheckboxType,\n {\n onBlCheckboxChange: EventName<CustomEvent<boolean>>;\n onBlFocus: EventName<CustomEvent<string>>;\n onBlBlur: EventName<CustomEvent<string>>;\n }\n >\n>(() =>\n customElements.whenDefined(\"bl-checkbox\").then(() => ({\n default: createComponent<\n BlCheckboxType,\n {\n onBlCheckboxChange: EventName<CustomEvent<boolean>>;\n onBlFocus: EventName<CustomEvent<string>>;\n onBlBlur: EventName<CustomEvent<string>>;\n }\n >({\n react: React,\n tagName: \"bl-checkbox\",\n elementClass: customElements.get(\"bl-checkbox\"),\n events: {\n onBlCheckboxChange: \"bl-checkbox-change\",\n onBlFocus: \"bl-focus\",\n onBlBlur: \"bl-blur\",\n },\n }),\n }))\n);\n\nexport const BlDropdownGroup = React.lazy<\n ReactWebComponent<BlDropdownGroupType>\n>(() =>\n customElements.whenDefined(\"bl-dropdown-group\").then(() => ({\n default: createComponent<BlDropdownGroupType>({\n react: React,\n tagName: \"bl-dropdown-group\",\n elementClass: customElements.get(\"bl-dropdown-group\"),\n events: {},\n }),\n }))\n);\n\nexport const BlDropdownItem = React.lazy<\n ReactWebComponent<\n BlDropdownItemType,\n { onBlDropdownItemClick: EventName<CustomEvent<string>> }\n >\n>(() =>\n customElements.whenDefined(\"bl-dropdown-item\").then(() => ({\n default: createComponent<\n BlDropdownItemType,\n { onBlDropdownItemClick: EventName<CustomEvent<string>> }\n >({\n react: React,\n tagName: \"bl-dropdown-item\",\n elementClass: customElements.get(\"bl-dropdown-item\"),\n events: { onBlDropdownItemClick: \"bl-dropdown-item-click\" },\n }),\n }))\n);\n\nexport const BlRadio = React.lazy<\n ReactWebComponent<\n BlRadioType,\n {\n onBlChecked: EventName<CustomEvent<string>>;\n onBlFocus: EventName<CustomEvent<string>>;\n onBlBlur: EventName<CustomEvent<string>>;\n }\n >\n>(() =>\n customElements.whenDefined(\"bl-radio\").then(() => ({\n default: createComponent<\n BlRadioType,\n {\n onBlChecked: EventName<CustomEvent<string>>;\n onBlFocus: EventName<CustomEvent<string>>;\n onBlBlur: EventName<CustomEvent<string>>;\n }\n >({\n react: React,\n tagName: \"bl-radio\",\n elementClass: customElements.get(\"bl-radio\"),\n events: {\n onBlChecked: \"bl-checked\",\n onBlFocus: \"bl-focus\",\n onBlBlur: \"bl-blur\",\n },\n }),\n }))\n);\n\nexport const BlSelectOption = React.lazy<\n ReactWebComponent<\n BlSelectOptionType,\n {\n onBlSelectOption: EventName<CustomEvent<string | null>>;\n onBlFocus: EventName<CustomEvent<string | null>>;\n onBlBlur: EventName<CustomEvent<string | null>>;\n }\n >\n>(() =>\n customElements.whenDefined(\"bl-select-option\").then(() => ({\n default: createComponent<\n BlSelectOptionType,\n {\n onBlSelectOption: EventName<CustomEvent<string | null>>;\n onBlFocus: EventName<CustomEvent<string | null>>;\n onBlBlur: EventName<CustomEvent<string | null>>;\n }\n >({\n react: React,\n tagName: \"bl-select-option\",\n elementClass: customElements.get(\"bl-select-option\"),\n events: {\n onBlSelectOption: \"bl-select-option\",\n onBlFocus: \"bl-focus\",\n onBlBlur: \"bl-blur\",\n },\n }),\n }))\n);\n\nexport const BlTab = React.lazy<\n ReactWebComponent<\n BlTabType,\n { onBlTabSelected: EventName<CustomEvent<string>> }\n >\n>(() =>\n customElements.whenDefined(\"bl-tab\").then(() => ({\n default: createComponent<\n BlTabType,\n { onBlTabSelected: EventName<CustomEvent<string>> }\n >({\n react: React,\n tagName: \"bl-tab\",\n elementClass: customElements.get(\"bl-tab\"),\n events: { onBlTabSelected: \"bl-tab-selected\" },\n }),\n }))\n);\n\nexport const BlTabPanel = React.lazy<ReactWebComponent<BlTabPanelType>>(() =>\n customElements.whenDefined(\"bl-tab-panel\").then(() => ({\n default: createComponent<BlTabPanelType>({\n react: React,\n tagName: \"bl-tab-panel\",\n elementClass: customElements.get(\"bl-tab-panel\"),\n events: {},\n }),\n }))\n);\n", "/**\n * @license\n * Copyright 2018 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\n\n// Match a prop name to a typed event callback by\n// adding an Event type as an expected property on a string.\nexport type EventName<T extends Event = Event> = string & {\n __event_type: T;\n};\n\n// A key value map matching React prop names to event names\ntype EventNames = Record<string, EventName | string>;\n\n// A map of expected event listener types based on EventNames\ntype EventListeners<R extends EventNames> = {\n [K in keyof R]: R[K] extends EventName\n ? (e: R[K]['__event_type']) => void\n : (e: Event) => void;\n};\n\ntype ReactProps<I, E> = Omit<React.HTMLAttributes<I>, keyof E>;\ntype ElementWithoutPropsOrEventListeners<I, E> = Omit<\n I,\n keyof E | keyof ReactProps<I, E>\n>;\n\n// Props the user is allowed to use, includes standard attributes, children,\n// ref, as well as special event and element properties.\nexport type WebComponentProps<\n I extends HTMLElement,\n E extends EventNames = {}\n> = Partial<\n ReactProps<I, E> &\n ElementWithoutPropsOrEventListeners<I, E> &\n EventListeners<E>\n>;\n\n// Props used by this component wrapper. This is the WebComponentProps and the\n// special `__forwardedRef` property. Note, this ref is special because\n// it's both needed in this component to get access to the rendered element\n// and must fulfill any ref passed by the user.\ntype ReactComponentProps<\n I extends HTMLElement,\n E extends EventNames = {}\n> = WebComponentProps<I, E> & {\n __forwardedRef: React.Ref<I>;\n};\n\nexport type ReactWebComponent<\n I extends HTMLElement,\n E extends EventNames = {}\n> = React.ForwardRefExoticComponent<\n React.PropsWithoutRef<WebComponentProps<I, E>> & React.RefAttributes<I>\n>;\n\ninterface Options<I extends HTMLElement, E extends EventNames = {}> {\n tagName: string;\n elementClass: Constructor<I>;\n react: typeof window.React;\n events?: E;\n displayName?: string;\n}\n\ntype Constructor<T> = {new (): T};\n\nconst DEV_MODE = true;\n\nconst reservedReactProperties = new Set([\n 'children',\n 'localName',\n 'ref',\n 'style',\n 'className',\n]);\n\nconst listenedEvents: WeakMap<\n Element,\n Map<string, EventListenerObject>\n> = new WeakMap();\n\n/**\n * Adds an event listener for the specified event to the given node. In the\n * React setup, there should only ever be one event listener. Thus, for\n * efficiency only one listener is added and the handler for that listener is\n * updated to point to the given listener function.\n */\nconst addOrUpdateEventListener = (\n node: Element,\n event: string,\n listener: (event?: Event) => void\n) => {\n let events = listenedEvents.get(node);\n if (events === undefined) {\n listenedEvents.set(node, (events = new Map()));\n }\n let handler = events.get(event);\n if (listener !== undefined) {\n // If necessary, add listener and track handler\n if (handler === undefined) {\n events.set(event, (handler = {handleEvent: listener}));\n node.addEventListener(event, handler);\n // Otherwise just update the listener with new value\n } else {\n handler.handleEvent = listener;\n }\n // Remove listener if one exists and value is undefined\n } else if (handler !== undefined) {\n events.delete(event);\n node.removeEventListener(event, handler);\n }\n};\n\n/**\n * Sets properties and events on custom elements. These properties and events\n * have been pre-filtered so we know they should apply to the custom element.\n */\nconst setProperty = <E extends Element>(\n node: E,\n name: string,\n value: unknown,\n old: unknown,\n events?: EventNames\n) => {\n const event = events?.[name];\n if (event !== undefined && value !== old) {\n // Dirty check event value.\n addOrUpdateEventListener(node, event, value as (e?: Event) => void);\n return;\n }\n\n // Note, the attribute removal here for `undefined` and `null` values is done\n // to match React's behavior on non-custom elements. It needs special\n // handling because it does not match platform behavior. For example,\n // setting the `id` property to `undefined` sets the attribute to the string\n // \"undefined.\" React \"fixes\" that odd behavior and the code here matches\n // React's convention.\n if (\n (value === undefined || value === null) &&\n name in HTMLElement.prototype\n ) {\n node.removeAttribute(name);\n return;\n }\n\n // But don't dirty check properties; elements are assumed to do this.\n node[name as keyof E] = value as E[keyof E];\n};\n\n// Set a React ref. Note, there are 2 kinds of refs and there's no built in\n// React API to set a ref.\nconst setRef = (ref: React.Ref<unknown>, value: Element | null) => {\n if (typeof ref === 'function') {\n ref(value);\n } else {\n (ref as {current: Element | null}).current = value;\n }\n};\n\n/**\n * Creates a React component for a custom element. Properties are distinguished\n * from attributes automatically, and events can be configured so they are\n * added to the custom element as event listeners.\n *\n * @param options An options bag containing the parameters needed to generate\n * a wrapped web component.\n *\n * @param options.react The React module, typically imported from the `react` npm\n * package.\n * @param options.tagName The custom element tag name registered via\n * `customElements.define`.\n * @param options.elementClass The custom element class registered via\n * `customElements.define`.\n * @param options.events An object listing events to which the component can listen. The\n * object keys are the event property names passed in via React props and the\n * object values are the names of the corresponding events generated by the\n * custom element. For example, given `{onactivate: 'activate'}` an event\n * function may be passed via the component's `onactivate` prop and will be\n * called when the custom element fires its `activate` event.\n * @param options.displayName A React component display name, used in debugging\n * messages. Default value is inferred from the name of custom element class\n * registered via `customElements.define`.\n */\nexport function createComponent<\n I extends HTMLElement,\n E extends EventNames = {}\n>(options: Options<I, E>): ReactWebComponent<I, E>;\n/**\n * @deprecated Use `createComponent(options)` instead of individual arguments.\n *\n * Creates a React component for a custom element. Properties are distinguished\n * from attributes automatically, and events can be configured so they are\n * added to the custom element as event listeners.\n *\n * @param React The React module, typically imported from the `react` npm\n * package.\n * @param tagName The custom element tag name registered via\n * `customElements.define`.\n * @param elementClass The custom element class registered via\n * `customElements.define`.\n * @param events An object listing events to which the component can listen. The\n * object keys are the event property names passed in via React props and the\n * object values are the names of the corresponding events generated by the\n * custom element. For example, given `{onactivate: 'activate'}` an event\n * function may be passed via the component's `onactivate` prop and will be\n * called when the custom element fires its `activate` event.\n * @param displayName A React component display name, used in debugging\n * messages. Default value is inferred from the name of custom element class\n * registered via `customElements.define`.\n */\nexport function createComponent<\n I extends HTMLElement,\n E extends EventNames = {}\n>(\n ReactOrOptions: typeof window.React,\n tagName: string,\n elementClass: Constructor<I>,\n events?: E,\n displayName?: string\n): ReactWebComponent<I, E>;\nexport function createComponent<\n I extends HTMLElement,\n E extends EventNames = {}\n>(\n ReactOrOptions: typeof window.React | Options<I, E> = window.React,\n tagName?: string,\n elementClass?: Constructor<I>,\n events?: E,\n displayName?: string\n): ReactWebComponent<I, E> {\n // digest overloaded parameters\n let React: typeof window.React;\n let tag: string;\n let element: Constructor<I>;\n if (tagName === undefined) {\n const options = ReactOrOptions as Options<I, E>;\n ({tagName: tag, elementClass: element, events, displayName} = options);\n React = options.react;\n } else {\n React = ReactOrOptions as typeof window.React;\n element = elementClass as Constructor<I>;\n tag = tagName;\n }\n\n // Warn users when web components use reserved React properties\n if (DEV_MODE) {\n for (const p of reservedReactProperties) {\n if (p in element.prototype && !(p in HTMLElement.prototype)) {\n // Note, this effectively warns only for `ref` since the other\n // reserved props are on HTMLElement.prototype. To address this\n // would require crawling down the prototype, which doesn't feel worth\n // it since implementing these properties on an element is extremely\n // rare.\n console.warn(`${tagName} contains property ${p} which is a React\nreserved property. It will be used by React and not set on\nthe element.`);\n }\n }\n }\n\n const Component = React.Component;\n const createElement = React.createElement;\n const eventProps = new Set(Object.keys(events ?? {}));\n\n type Props = ReactComponentProps<I, E>;\n\n class ReactComponent extends Component<Props> {\n private _element: I | null = null;\n private _elementProps!: Record<string, unknown>;\n private _forwardedRef?: React.Ref<I>;\n private _ref?: React.RefCallback<I>;\n\n static displayName = displayName ?? element.name;\n\n private _updateElement(oldProps?: Props) {\n if (this._element === null) {\n return;\n }\n // Set element properties to the values in `this.props`\n for (const prop in this._elementProps) {\n setProperty(\n this._element,\n prop,\n this.props[prop],\n oldProps ? oldProps[prop] : undefined,\n events\n );\n }\n // Note, the spirit of React might be to \"unset\" any old values that\n // are no longer included; however, there's no reasonable value to set\n // them to so we just leave the previous state as is.\n }\n\n /**\n * Updates element properties correctly setting properties\n * on mount.\n */\n override componentDidMount() {\n this._updateElement();\n }\n\n /**\n * Updates element properties correctly setting properties\n * on every update. Note, this does not include mount.\n */\n override componentDidUpdate(old: Props) {\n this._updateElement(old);\n }\n\n /**\n * Renders the custom element with a `ref` prop which allows this\n * component to reference the custom element.\n *\n * Standard attributes are passed to React and element properties and events\n * are updated in componentDidMount/componentDidUpdate.\n *\n */\n override render() {\n // Extract and remove __forwardedRef from userProps in a rename-safe way\n const {__forwardedRef, ...userProps} = this.props;\n // Since refs only get fulfilled once, pass a new one if the user's ref\n // changed. This allows refs to be fulfilled as expected, going from\n // having a value to null.\n if (this._forwardedRef !== __forwardedRef) {\n this._ref = (value: I | null) => {\n if (__forwardedRef !== null) {\n setRef(__forwardedRef, value);\n }\n\n this._element = value;\n this._forwardedRef = __forwardedRef;\n };\n }\n // Save element props while iterating to avoid the need to iterate again\n // when setting properties.\n this._elementProps = {};\n const props: Record<string, unknown> = {ref: this._ref};\n // Filters class properties and event properties out and passes the\n // remaining attributes to React. This allows attributes to use framework\n // rules for setting attributes and render correctly under SSR.\n for (const [k, v] of Object.entries(userProps)) {\n if (reservedReactProperties.has(k)) {\n // React does *not* handle `className` for custom elements so\n // coerce it to `class` so it's handled correctly.\n props[k === 'className' ? 'class' : k] = v;\n continue;\n }\n\n if (eventProps.has(k) || k in element.prototype) {\n this._elementProps[k] = v;\n continue;\n }\n\n props[k] = v;\n }\n return createElement<React.HTMLAttributes<I>, I>(tag, props);\n }\n }\n\n const ForwardedComponent: ReactWebComponent<I, E> = React.forwardRef<\n I,\n WebComponentProps<I, E>\n >((props, __forwardedRef) =>\n createElement<Props, ReactComponent, typeof ReactComponent>(\n ReactComponent,\n {...props, __forwardedRef},\n props?.children\n )\n );\n\n // To ease debugging in the React Developer Tools\n ForwardedComponent.displayName = ReactComponent.displayName;\n\n return ForwardedComponent;\n}\n"],
|
|
5
|
-
"mappings": "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
|
|
4
|
+
"sourcesContent": ["/* eslint-disable @typescript-eslint/ban-ts-comment */\n// @ts-nocheck\nimport React from \"react\";\nimport {\n type EventName,\n createComponent,\n ReactWebComponent,\n} from \"@lit-labs/react\";\nimport { ISelectOption } from \"./components/select/bl-select\";\nimport type BlAlertType from \"./components/alert/bl-alert\";\nimport type BlBadgeType from \"./components/badge/bl-badge\";\nimport type BlButtonType from \"./components/button/bl-button\";\nimport type BlCheckboxGroupType from \"./components/checkbox-group/bl-checkbox-group\";\nimport type BlDialogType from \"./components/dialog/bl-dialog\";\nimport type BlDrawerType from \"./components/drawer/bl-drawer\";\nimport type BlDropdownType from \"./components/dropdown/bl-dropdown\";\nimport type BlIconType from \"./components/icon/bl-icon\";\nimport type BlInputType from \"./components/input/bl-input\";\nimport type BlPaginationType from \"./components/pagination/bl-pagination\";\nimport type BlPopoverType from \"./components/popover/bl-popover\";\nimport type BlProgressIndicatorType from \"./components/progress-indicator/bl-progress-indicator\";\nimport type BlRadioGroupType from \"./components/radio-group/bl-radio-group\";\nimport type BlSelectType from \"./components/select/bl-select\";\nimport type BlSwitchType from \"./components/switch/bl-switch\";\nimport type BlTabGroupType from \"./components/tab-group/bl-tab-group\";\nimport type BlTextareaType from \"./components/textarea/bl-textarea\";\nimport type BlTooltipType from \"./components/tooltip/bl-tooltip\";\nimport type BlCheckboxType from \"./components/checkbox-group/checkbox/bl-checkbox\";\nimport type BlDropdownGroupType from \"./components/dropdown/group/bl-dropdown-group\";\nimport type BlDropdownItemType from \"./components/dropdown/item/bl-dropdown-item\";\nimport type BlRadioType from \"./components/radio-group/radio/bl-radio\";\nimport type BlSelectOptionType from \"./components/select/option/bl-select-option\";\nimport type BlTabType from \"./components/tab-group/tab/bl-tab\";\nimport type BlTabPanelType from \"./components/tab-group/tab-panel/bl-tab-panel\";\n\nexport const BlAlert = React.lazy<\n ReactWebComponent<BlAlertType, { onBlClose: EventName<CustomEvent<boolean>> }>\n>(() =>\n customElements.whenDefined(\"bl-alert\").then(() => ({\n default: createComponent<\n BlAlertType,\n { onBlClose: EventName<CustomEvent<boolean>> }\n >({\n react: React,\n tagName: \"bl-alert\",\n elementClass: customElements.get(\"bl-alert\"),\n events: { onBlClose: \"bl-close\" },\n }),\n }))\n);\n\nexport const BlBadge = React.lazy<ReactWebComponent<BlBadgeType>>(() =>\n customElements.whenDefined(\"bl-badge\").then(() => ({\n default: createComponent<BlBadgeType>({\n react: React,\n tagName: \"bl-badge\",\n elementClass: customElements.get(\"bl-badge\"),\n events: {},\n }),\n }))\n);\n\nexport const BlButton = React.lazy<\n ReactWebComponent<BlButtonType, { onBlClick: EventName<CustomEvent<string>> }>\n>(() =>\n customElements.whenDefined(\"bl-button\").then(() => ({\n default: createComponent<\n BlButtonType,\n { onBlClick: EventName<CustomEvent<string>> }\n >({\n react: React,\n tagName: \"bl-button\",\n elementClass: customElements.get(\"bl-button\"),\n events: { onBlClick: \"bl-click\" },\n }),\n }))\n);\n\nexport const BlCheckboxGroup = React.lazy<\n ReactWebComponent<\n BlCheckboxGroupType,\n { onBlCheckboxGroupChange: EventName<CustomEvent<string[]>> }\n >\n>(() =>\n customElements.whenDefined(\"bl-checkbox-group\").then(() => ({\n default: createComponent<\n BlCheckboxGroupType,\n { onBlCheckboxGroupChange: EventName<CustomEvent<string[]>> }\n >({\n react: React,\n tagName: \"bl-checkbox-group\",\n elementClass: customElements.get(\"bl-checkbox-group\"),\n events: { onBlCheckboxGroupChange: \"bl-checkbox-group-change\" },\n }),\n }))\n);\n\nexport const BlDialog = React.lazy<\n ReactWebComponent<\n BlDialogType,\n {\n onBlDialogOpen: EventName<CustomEvent<object>>;\n onBlDialogRequestClose: EventName<\n CustomEvent<{ source: \"close-button\" | \"keyboard\" | \"backdrop\" }>\n >;\n onBlDialogClose: EventName<CustomEvent<object>>;\n }\n >\n>(() =>\n customElements.whenDefined(\"bl-dialog\").then(() => ({\n default: createComponent<\n BlDialogType,\n {\n onBlDialogOpen: EventName<CustomEvent<object>>;\n onBlDialogRequestClose: EventName<\n CustomEvent<{ source: \"close-button\" | \"keyboard\" | \"backdrop\" }>\n >;\n onBlDialogClose: EventName<CustomEvent<object>>;\n }\n >({\n react: React,\n tagName: \"bl-dialog\",\n elementClass: customElements.get(\"bl-dialog\"),\n events: {\n onBlDialogOpen: \"bl-dialog-open\",\n onBlDialogRequestClose: \"bl-dialog-request-close\",\n onBlDialogClose: \"bl-dialog-close\",\n },\n }),\n }))\n);\n\nexport const BlDrawer = React.lazy<\n ReactWebComponent<\n BlDrawerType,\n {\n onBlDrawerOpen: EventName<CustomEvent<string>>;\n onBlDrawerClose: EventName<CustomEvent<string>>;\n }\n >\n>(() =>\n customElements.whenDefined(\"bl-drawer\").then(() => ({\n default: createComponent<\n BlDrawerType,\n {\n onBlDrawerOpen: EventName<CustomEvent<string>>;\n onBlDrawerClose: EventName<CustomEvent<string>>;\n }\n >({\n react: React,\n tagName: \"bl-drawer\",\n elementClass: customElements.get(\"bl-drawer\"),\n events: {\n onBlDrawerOpen: \"bl-drawer-open\",\n onBlDrawerClose: \"bl-drawer-close\",\n },\n }),\n }))\n);\n\nexport const BlDropdown = React.lazy<\n ReactWebComponent<\n BlDropdownType,\n {\n onBlDropdownOpen: EventName<CustomEvent<string>>;\n onBlDropdownClose: EventName<CustomEvent<string>>;\n }\n >\n>(() =>\n customElements.whenDefined(\"bl-dropdown\").then(() => ({\n default: createComponent<\n BlDropdownType,\n {\n onBlDropdownOpen: EventName<CustomEvent<string>>;\n onBlDropdownClose: EventName<CustomEvent<string>>;\n }\n >({\n react: React,\n tagName: \"bl-dropdown\",\n elementClass: customElements.get(\"bl-dropdown\"),\n events: {\n onBlDropdownOpen: \"bl-dropdown-open\",\n onBlDropdownClose: \"bl-dropdown-close\",\n },\n }),\n }))\n);\n\nexport const BlIcon = React.lazy<\n ReactWebComponent<\n BlIconType,\n {\n onBlLoad: EventName<CustomEvent<string>>;\n onBlError: EventName<CustomEvent<string>>;\n }\n >\n>(() =>\n customElements.whenDefined(\"bl-icon\").then(() => ({\n default: createComponent<\n BlIconType,\n {\n onBlLoad: EventName<CustomEvent<string>>;\n onBlError: EventName<CustomEvent<string>>;\n }\n >({\n react: React,\n tagName: \"bl-icon\",\n elementClass: customElements.get(\"bl-icon\"),\n events: { onBlLoad: \"bl-load\", onBlError: \"bl-error\" },\n }),\n }))\n);\n\nexport const BlInput = React.lazy<\n ReactWebComponent<\n BlInputType,\n {\n onBlChange: EventName<CustomEvent<string>>;\n onBlInput: EventName<CustomEvent<string>>;\n onBlInvalid: EventName<CustomEvent<ValidityState>>;\n }\n >\n>(() =>\n customElements.whenDefined(\"bl-input\").then(() => ({\n default: createComponent<\n BlInputType,\n {\n onBlChange: EventName<CustomEvent<string>>;\n onBlInput: EventName<CustomEvent<string>>;\n onBlInvalid: EventName<CustomEvent<ValidityState>>;\n }\n >({\n react: React,\n tagName: \"bl-input\",\n elementClass: customElements.get(\"bl-input\"),\n events: {\n onBlChange: \"bl-change\",\n onBlInput: \"bl-input\",\n onBlInvalid: \"bl-invalid\",\n },\n }),\n }))\n);\n\nexport const BlPagination = React.lazy<\n ReactWebComponent<\n BlPaginationType,\n {\n onBlChange: EventName<\n CustomEvent<{\n selectedPage: number;\n prevPage: number;\n itemsPerPage: number;\n }>\n >;\n }\n >\n>(() =>\n customElements.whenDefined(\"bl-pagination\").then(() => ({\n default: createComponent<\n BlPaginationType,\n {\n onBlChange: EventName<\n CustomEvent<{\n selectedPage: number;\n prevPage: number;\n itemsPerPage: number;\n }>\n >;\n }\n >({\n react: React,\n tagName: \"bl-pagination\",\n elementClass: customElements.get(\"bl-pagination\"),\n events: { onBlChange: \"bl-change\" },\n }),\n }))\n);\n\nexport const BlPopover = React.lazy<\n ReactWebComponent<\n BlPopoverType,\n {\n onBlPopoverShow: EventName<CustomEvent<string>>;\n onBlPopoverHide: EventName<CustomEvent<string>>;\n }\n >\n>(() =>\n customElements.whenDefined(\"bl-popover\").then(() => ({\n default: createComponent<\n BlPopoverType,\n {\n onBlPopoverShow: EventName<CustomEvent<string>>;\n onBlPopoverHide: EventName<CustomEvent<string>>;\n }\n >({\n react: React,\n tagName: \"bl-popover\",\n elementClass: customElements.get(\"bl-popover\"),\n events: {\n onBlPopoverShow: \"bl-popover-show\",\n onBlPopoverHide: \"bl-popover-hide\",\n },\n }),\n }))\n);\n\nexport const BlProgressIndicator = React.lazy<\n ReactWebComponent<BlProgressIndicatorType>\n>(() =>\n customElements.whenDefined(\"bl-progress-indicator\").then(() => ({\n default: createComponent<BlProgressIndicatorType>({\n react: React,\n tagName: \"bl-progress-indicator\",\n elementClass: customElements.get(\"bl-progress-indicator\"),\n events: {},\n }),\n }))\n);\n\nexport const BlRadioGroup = React.lazy<\n ReactWebComponent<\n BlRadioGroupType,\n { onBlRadioChange: EventName<CustomEvent<string>> }\n >\n>(() =>\n customElements.whenDefined(\"bl-radio-group\").then(() => ({\n default: createComponent<\n BlRadioGroupType,\n { onBlRadioChange: EventName<CustomEvent<string>> }\n >({\n react: React,\n tagName: \"bl-radio-group\",\n elementClass: customElements.get(\"bl-radio-group\"),\n events: { onBlRadioChange: \"bl-radio-change\" },\n }),\n }))\n);\n\nexport const BlSelect = React.lazy<\n ReactWebComponent<\n BlSelectType,\n { onBlSelect: EventName<CustomEvent<ISelectOption[]>> }\n >\n>(() =>\n customElements.whenDefined(\"bl-select\").then(() => ({\n default: createComponent<\n BlSelectType,\n { onBlSelect: EventName<CustomEvent<ISelectOption[]>> }\n >({\n react: React,\n tagName: \"bl-select\",\n elementClass: customElements.get(\"bl-select\"),\n events: { onBlSelect: \"bl-select\" },\n }),\n }))\n);\n\nexport const BlSwitch = React.lazy<\n ReactWebComponent<\n BlSwitchType,\n { onBlSwitchToggle: EventName<CustomEvent<boolean>> }\n >\n>(() =>\n customElements.whenDefined(\"bl-switch\").then(() => ({\n default: createComponent<\n BlSwitchType,\n { onBlSwitchToggle: EventName<CustomEvent<boolean>> }\n >({\n react: React,\n tagName: \"bl-switch\",\n elementClass: customElements.get(\"bl-switch\"),\n events: { onBlSwitchToggle: \"bl-switch-toggle\" },\n }),\n }))\n);\n\nexport const BlTabGroup = React.lazy<ReactWebComponent<BlTabGroupType>>(() =>\n customElements.whenDefined(\"bl-tab-group\").then(() => ({\n default: createComponent<BlTabGroupType>({\n react: React,\n tagName: \"bl-tab-group\",\n elementClass: customElements.get(\"bl-tab-group\"),\n events: {},\n }),\n }))\n);\n\nexport const BlTextarea = React.lazy<\n ReactWebComponent<\n BlTextareaType,\n {\n onBlInput: EventName<CustomEvent<string>>;\n onBlChange: EventName<CustomEvent<string>>;\n onBlInvalid: EventName<CustomEvent<ValidityState>>;\n }\n >\n>(() =>\n customElements.whenDefined(\"bl-textarea\").then(() => ({\n default: createComponent<\n BlTextareaType,\n {\n onBlInput: EventName<CustomEvent<string>>;\n onBlChange: EventName<CustomEvent<string>>;\n onBlInvalid: EventName<CustomEvent<ValidityState>>;\n }\n >({\n react: React,\n tagName: \"bl-textarea\",\n elementClass: customElements.get(\"bl-textarea\"),\n events: {\n onBlInput: \"bl-input\",\n onBlChange: \"bl-change\",\n onBlInvalid: \"bl-invalid\",\n },\n }),\n }))\n);\n\nexport const BlTooltip = React.lazy<\n ReactWebComponent<\n BlTooltipType,\n {\n onBlTooltipShow: EventName<CustomEvent<string>>;\n onBlTooltipHide: EventName<CustomEvent<string>>;\n }\n >\n>(() =>\n customElements.whenDefined(\"bl-tooltip\").then(() => ({\n default: createComponent<\n BlTooltipType,\n {\n onBlTooltipShow: EventName<CustomEvent<string>>;\n onBlTooltipHide: EventName<CustomEvent<string>>;\n }\n >({\n react: React,\n tagName: \"bl-tooltip\",\n elementClass: customElements.get(\"bl-tooltip\"),\n events: {\n onBlTooltipShow: \"bl-tooltip-show\",\n onBlTooltipHide: \"bl-tooltip-hide\",\n },\n }),\n }))\n);\n\nexport const BlCheckbox = React.lazy<\n ReactWebComponent<\n BlCheckboxType,\n {\n onBlCheckboxChange: EventName<CustomEvent<boolean>>;\n onBlFocus: EventName<CustomEvent<string>>;\n onBlBlur: EventName<CustomEvent<string>>;\n }\n >\n>(() =>\n customElements.whenDefined(\"bl-checkbox\").then(() => ({\n default: createComponent<\n BlCheckboxType,\n {\n onBlCheckboxChange: EventName<CustomEvent<boolean>>;\n onBlFocus: EventName<CustomEvent<string>>;\n onBlBlur: EventName<CustomEvent<string>>;\n }\n >({\n react: React,\n tagName: \"bl-checkbox\",\n elementClass: customElements.get(\"bl-checkbox\"),\n events: {\n onBlCheckboxChange: \"bl-checkbox-change\",\n onBlFocus: \"bl-focus\",\n onBlBlur: \"bl-blur\",\n },\n }),\n }))\n);\n\nexport const BlDropdownGroup = React.lazy<\n ReactWebComponent<BlDropdownGroupType>\n>(() =>\n customElements.whenDefined(\"bl-dropdown-group\").then(() => ({\n default: createComponent<BlDropdownGroupType>({\n react: React,\n tagName: \"bl-dropdown-group\",\n elementClass: customElements.get(\"bl-dropdown-group\"),\n events: {},\n }),\n }))\n);\n\nexport const BlDropdownItem = React.lazy<\n ReactWebComponent<\n BlDropdownItemType,\n { onBlDropdownItemClick: EventName<CustomEvent<string>> }\n >\n>(() =>\n customElements.whenDefined(\"bl-dropdown-item\").then(() => ({\n default: createComponent<\n BlDropdownItemType,\n { onBlDropdownItemClick: EventName<CustomEvent<string>> }\n >({\n react: React,\n tagName: \"bl-dropdown-item\",\n elementClass: customElements.get(\"bl-dropdown-item\"),\n events: { onBlDropdownItemClick: \"bl-dropdown-item-click\" },\n }),\n }))\n);\n\nexport const BlRadio = React.lazy<\n ReactWebComponent<\n BlRadioType,\n {\n onBlChecked: EventName<CustomEvent<string>>;\n onBlFocus: EventName<CustomEvent<string>>;\n onBlBlur: EventName<CustomEvent<string>>;\n }\n >\n>(() =>\n customElements.whenDefined(\"bl-radio\").then(() => ({\n default: createComponent<\n BlRadioType,\n {\n onBlChecked: EventName<CustomEvent<string>>;\n onBlFocus: EventName<CustomEvent<string>>;\n onBlBlur: EventName<CustomEvent<string>>;\n }\n >({\n react: React,\n tagName: \"bl-radio\",\n elementClass: customElements.get(\"bl-radio\"),\n events: {\n onBlChecked: \"bl-checked\",\n onBlFocus: \"bl-focus\",\n onBlBlur: \"bl-blur\",\n },\n }),\n }))\n);\n\nexport const BlSelectOption = React.lazy<\n ReactWebComponent<\n BlSelectOptionType,\n {\n onBlSelectOption: EventName<CustomEvent<string | null>>;\n onBlFocus: EventName<CustomEvent<string | null>>;\n onBlBlur: EventName<CustomEvent<string | null>>;\n }\n >\n>(() =>\n customElements.whenDefined(\"bl-select-option\").then(() => ({\n default: createComponent<\n BlSelectOptionType,\n {\n onBlSelectOption: EventName<CustomEvent<string | null>>;\n onBlFocus: EventName<CustomEvent<string | null>>;\n onBlBlur: EventName<CustomEvent<string | null>>;\n }\n >({\n react: React,\n tagName: \"bl-select-option\",\n elementClass: customElements.get(\"bl-select-option\"),\n events: {\n onBlSelectOption: \"bl-select-option\",\n onBlFocus: \"bl-focus\",\n onBlBlur: \"bl-blur\",\n },\n }),\n }))\n);\n\nexport const BlTab = React.lazy<\n ReactWebComponent<\n BlTabType,\n { onBlTabSelected: EventName<CustomEvent<string>> }\n >\n>(() =>\n customElements.whenDefined(\"bl-tab\").then(() => ({\n default: createComponent<\n BlTabType,\n { onBlTabSelected: EventName<CustomEvent<string>> }\n >({\n react: React,\n tagName: \"bl-tab\",\n elementClass: customElements.get(\"bl-tab\"),\n events: { onBlTabSelected: \"bl-tab-selected\" },\n }),\n }))\n);\n\nexport const BlTabPanel = React.lazy<ReactWebComponent<BlTabPanelType>>(() =>\n customElements.whenDefined(\"bl-tab-panel\").then(() => ({\n default: createComponent<BlTabPanelType>({\n react: React,\n tagName: \"bl-tab-panel\",\n elementClass: customElements.get(\"bl-tab-panel\"),\n events: {},\n }),\n }))\n);\n", "/**\n * @license\n * Copyright 2018 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\n\n// Match a prop name to a typed event callback by\n// adding an Event type as an expected property on a string.\nexport type EventName<T extends Event = Event> = string & {\n __event_type: T;\n};\n\n// A key value map matching React prop names to event names\ntype EventNames = Record<string, EventName | string>;\n\n// A map of expected event listener types based on EventNames\ntype EventListeners<R extends EventNames> = {\n [K in keyof R]: R[K] extends EventName\n ? (e: R[K]['__event_type']) => void\n : (e: Event) => void;\n};\n\ntype ReactProps<I, E> = Omit<React.HTMLAttributes<I>, keyof E>;\ntype ElementWithoutPropsOrEventListeners<I, E> = Omit<\n I,\n keyof E | keyof ReactProps<I, E>\n>;\n\n// Props the user is allowed to use, includes standard attributes, children,\n// ref, as well as special event and element properties.\nexport type WebComponentProps<\n I extends HTMLElement,\n E extends EventNames = {}\n> = Partial<\n ReactProps<I, E> &\n ElementWithoutPropsOrEventListeners<I, E> &\n EventListeners<E>\n>;\n\n// Props used by this component wrapper. This is the WebComponentProps and the\n// special `__forwardedRef` property. Note, this ref is special because\n// it's both needed in this component to get access to the rendered element\n// and must fulfill any ref passed by the user.\ntype ReactComponentProps<\n I extends HTMLElement,\n E extends EventNames = {}\n> = WebComponentProps<I, E> & {\n __forwardedRef: React.Ref<I>;\n};\n\nexport type ReactWebComponent<\n I extends HTMLElement,\n E extends EventNames = {}\n> = React.ForwardRefExoticComponent<\n React.PropsWithoutRef<WebComponentProps<I, E>> & React.RefAttributes<I>\n>;\n\ninterface Options<I extends HTMLElement, E extends EventNames = {}> {\n tagName: string;\n elementClass: Constructor<I>;\n react: typeof window.React;\n events?: E;\n displayName?: string;\n}\n\ntype Constructor<T> = {new (): T};\n\nconst DEV_MODE = true;\n\nconst reservedReactProperties = new Set([\n 'children',\n 'localName',\n 'ref',\n 'style',\n 'className',\n]);\n\nconst listenedEvents: WeakMap<\n Element,\n Map<string, EventListenerObject>\n> = new WeakMap();\n\n/**\n * Adds an event listener for the specified event to the given node. In the\n * React setup, there should only ever be one event listener. Thus, for\n * efficiency only one listener is added and the handler for that listener is\n * updated to point to the given listener function.\n */\nconst addOrUpdateEventListener = (\n node: Element,\n event: string,\n listener: (event?: Event) => void\n) => {\n let events = listenedEvents.get(node);\n if (events === undefined) {\n listenedEvents.set(node, (events = new Map()));\n }\n let handler = events.get(event);\n if (listener !== undefined) {\n // If necessary, add listener and track handler\n if (handler === undefined) {\n events.set(event, (handler = {handleEvent: listener}));\n node.addEventListener(event, handler);\n // Otherwise just update the listener with new value\n } else {\n handler.handleEvent = listener;\n }\n // Remove listener if one exists and value is undefined\n } else if (handler !== undefined) {\n events.delete(event);\n node.removeEventListener(event, handler);\n }\n};\n\n/**\n * Sets properties and events on custom elements. These properties and events\n * have been pre-filtered so we know they should apply to the custom element.\n */\nconst setProperty = <E extends Element>(\n node: E,\n name: string,\n value: unknown,\n old: unknown,\n events?: EventNames\n) => {\n const event = events?.[name];\n if (event !== undefined && value !== old) {\n // Dirty check event value.\n addOrUpdateEventListener(node, event, value as (e?: Event) => void);\n return;\n }\n\n // Note, the attribute removal here for `undefined` and `null` values is done\n // to match React's behavior on non-custom elements. It needs special\n // handling because it does not match platform behavior. For example,\n // setting the `id` property to `undefined` sets the attribute to the string\n // \"undefined.\" React \"fixes\" that odd behavior and the code here matches\n // React's convention.\n if (\n (value === undefined || value === null) &&\n name in HTMLElement.prototype\n ) {\n node.removeAttribute(name);\n return;\n }\n\n // But don't dirty check properties; elements are assumed to do this.\n node[name as keyof E] = value as E[keyof E];\n};\n\n// Set a React ref. Note, there are 2 kinds of refs and there's no built in\n// React API to set a ref.\nconst setRef = (ref: React.Ref<unknown>, value: Element | null) => {\n if (typeof ref === 'function') {\n ref(value);\n } else {\n (ref as {current: Element | null}).current = value;\n }\n};\n\n/**\n * Creates a React component for a custom element. Properties are distinguished\n * from attributes automatically, and events can be configured so they are\n * added to the custom element as event listeners.\n *\n * @param options An options bag containing the parameters needed to generate\n * a wrapped web component.\n *\n * @param options.react The React module, typically imported from the `react` npm\n * package.\n * @param options.tagName The custom element tag name registered via\n * `customElements.define`.\n * @param options.elementClass The custom element class registered via\n * `customElements.define`.\n * @param options.events An object listing events to which the component can listen. The\n * object keys are the event property names passed in via React props and the\n * object values are the names of the corresponding events generated by the\n * custom element. For example, given `{onactivate: 'activate'}` an event\n * function may be passed via the component's `onactivate` prop and will be\n * called when the custom element fires its `activate` event.\n * @param options.displayName A React component display name, used in debugging\n * messages. Default value is inferred from the name of custom element class\n * registered via `customElements.define`.\n */\nexport function createComponent<\n I extends HTMLElement,\n E extends EventNames = {}\n>(options: Options<I, E>): ReactWebComponent<I, E>;\n/**\n * @deprecated Use `createComponent(options)` instead of individual arguments.\n *\n * Creates a React component for a custom element. Properties are distinguished\n * from attributes automatically, and events can be configured so they are\n * added to the custom element as event listeners.\n *\n * @param React The React module, typically imported from the `react` npm\n * package.\n * @param tagName The custom element tag name registered via\n * `customElements.define`.\n * @param elementClass The custom element class registered via\n * `customElements.define`.\n * @param events An object listing events to which the component can listen. The\n * object keys are the event property names passed in via React props and the\n * object values are the names of the corresponding events generated by the\n * custom element. For example, given `{onactivate: 'activate'}` an event\n * function may be passed via the component's `onactivate` prop and will be\n * called when the custom element fires its `activate` event.\n * @param displayName A React component display name, used in debugging\n * messages. Default value is inferred from the name of custom element class\n * registered via `customElements.define`.\n */\nexport function createComponent<\n I extends HTMLElement,\n E extends EventNames = {}\n>(\n ReactOrOptions: typeof window.React,\n tagName: string,\n elementClass: Constructor<I>,\n events?: E,\n displayName?: string\n): ReactWebComponent<I, E>;\nexport function createComponent<\n I extends HTMLElement,\n E extends EventNames = {}\n>(\n ReactOrOptions: typeof window.React | Options<I, E> = window.React,\n tagName?: string,\n elementClass?: Constructor<I>,\n events?: E,\n displayName?: string\n): ReactWebComponent<I, E> {\n // digest overloaded parameters\n let React: typeof window.React;\n let tag: string;\n let element: Constructor<I>;\n if (tagName === undefined) {\n const options = ReactOrOptions as Options<I, E>;\n ({tagName: tag, elementClass: element, events, displayName} = options);\n React = options.react;\n } else {\n React = ReactOrOptions as typeof window.React;\n element = elementClass as Constructor<I>;\n tag = tagName;\n }\n\n // Warn users when web components use reserved React properties\n if (DEV_MODE) {\n for (const p of reservedReactProperties) {\n if (p in element.prototype && !(p in HTMLElement.prototype)) {\n // Note, this effectively warns only for `ref` since the other\n // reserved props are on HTMLElement.prototype. To address this\n // would require crawling down the prototype, which doesn't feel worth\n // it since implementing these properties on an element is extremely\n // rare.\n console.warn(`${tagName} contains property ${p} which is a React\nreserved property. It will be used by React and not set on\nthe element.`);\n }\n }\n }\n\n const Component = React.Component;\n const createElement = React.createElement;\n const eventProps = new Set(Object.keys(events ?? {}));\n\n type Props = ReactComponentProps<I, E>;\n\n class ReactComponent extends Component<Props> {\n private _element: I | null = null;\n private _elementProps!: Record<string, unknown>;\n private _forwardedRef?: React.Ref<I>;\n private _ref?: React.RefCallback<I>;\n\n static displayName = displayName ?? element.name;\n\n private _updateElement(oldProps?: Props) {\n if (this._element === null) {\n return;\n }\n // Set element properties to the values in `this.props`\n for (const prop in this._elementProps) {\n setProperty(\n this._element,\n prop,\n this.props[prop],\n oldProps ? oldProps[prop] : undefined,\n events\n );\n }\n // Note, the spirit of React might be to \"unset\" any old values that\n // are no longer included; however, there's no reasonable value to set\n // them to so we just leave the previous state as is.\n }\n\n /**\n * Updates element properties correctly setting properties\n * on mount.\n */\n override componentDidMount() {\n this._updateElement();\n }\n\n /**\n * Updates element properties correctly setting properties\n * on every update. Note, this does not include mount.\n */\n override componentDidUpdate(old: Props) {\n this._updateElement(old);\n }\n\n /**\n * Renders the custom element with a `ref` prop which allows this\n * component to reference the custom element.\n *\n * Standard attributes are passed to React and element properties and events\n * are updated in componentDidMount/componentDidUpdate.\n *\n */\n override render() {\n // Extract and remove __forwardedRef from userProps in a rename-safe way\n const {__forwardedRef, ...userProps} = this.props;\n // Since refs only get fulfilled once, pass a new one if the user's ref\n // changed. This allows refs to be fulfilled as expected, going from\n // having a value to null.\n if (this._forwardedRef !== __forwardedRef) {\n this._ref = (value: I | null) => {\n if (__forwardedRef !== null) {\n setRef(__forwardedRef, value);\n }\n\n this._element = value;\n this._forwardedRef = __forwardedRef;\n };\n }\n // Save element props while iterating to avoid the need to iterate again\n // when setting properties.\n this._elementProps = {};\n const props: Record<string, unknown> = {ref: this._ref};\n // Filters class properties and event properties out and passes the\n // remaining attributes to React. This allows attributes to use framework\n // rules for setting attributes and render correctly under SSR.\n for (const [k, v] of Object.entries(userProps)) {\n if (reservedReactProperties.has(k)) {\n // React does *not* handle `className` for custom elements so\n // coerce it to `class` so it's handled correctly.\n props[k === 'className' ? 'class' : k] = v;\n continue;\n }\n\n if (eventProps.has(k) || k in element.prototype) {\n this._elementProps[k] = v;\n continue;\n }\n\n props[k] = v;\n }\n return createElement<React.HTMLAttributes<I>, I>(tag, props);\n }\n }\n\n const ForwardedComponent: ReactWebComponent<I, E> = React.forwardRef<\n I,\n WebComponentProps<I, E>\n >((props, __forwardedRef) =>\n createElement<Props, ReactComponent, typeof ReactComponent>(\n ReactComponent,\n {...props, __forwardedRef},\n props?.children\n )\n );\n\n // To ease debugging in the React Developer Tools\n ForwardedComponent.displayName = ReactComponent.displayName;\n\n return ForwardedComponent;\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": ["React", "reservedReactProperties", "Set", "listenedEvents", "WeakMap", "setProperty", "node", "name", "value", "old", "events", "event", "HTMLElement", "prototype", "removeAttribute", "listener", "get", "set", "Map", "handler", "handleEvent", "addEventListener", "delete", "removeEventListener", "createComponent", "ReactOrOptions", "window", "React", "tagName", "elementClass", "displayName", "tag", "element", "options", "react", "Component", "createElement", "eventProps", "Object", "keys", "ReactComponent", "constructor", "this", "_element", "_updateElement", "oldProps", "prop", "_elementProps", "props", "componentDidMount", "componentDidUpdate", "render", "_$Gl", "__forwardedRef", "userProps", "_forwardedRef", "_ref", "ref", "current", "k", "v", "entries", "has", "ForwardedComponent", "forwardRef", "children", "BlAlert", "React", "s", "BlBadge", "BlButton", "BlCheckboxGroup", "BlDialog", "BlDrawer", "BlDropdown", "BlIcon", "BlInput", "BlPagination", "BlPopover", "BlProgressIndicator", "BlRadioGroup", "BlSelect", "BlSwitch", "BlTabGroup", "BlTextarea", "BlTooltip", "BlCheckbox", "BlDropdownGroup", "BlDropdownItem", "BlRadio", "BlSelectOption", "BlTab", "BlTabPanel"]
|
|
7
7
|
}
|
package/dist/baklava.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{b as S}from"./chunk-
|
|
1
|
+
import{b as S}from"./chunk-ZOOUVY6K.js";import{a as b}from"./chunk-ULEU7CJC.js";import{a as I}from"./chunk-OWCHMD6A.js";import{a as P}from"./chunk-6FK4ZU5B.js";import{a as g}from"./chunk-SM454JXF.js";import{a as w}from"./chunk-QXJ3WDYY.js";import{b as T,d as G}from"./chunk-M4SZRVAL.js";import{b as D}from"./chunk-FSYC7NDP.js";import{a as B}from"./chunk-NFZ2JBCP.js";import{a as m}from"./chunk-ULLTYT54.js";import{a as s}from"./chunk-JWJ25XSK.js";import{a as x}from"./chunk-POAQ7UCM.js";import"./chunk-HGGOQO7A.js";import"./chunk-3B64VOWB.js";import{a as h}from"./chunk-QR47IH7J.js";import"./chunk-ANYJUR6Q.js";import{a as n}from"./chunk-6SBG3DCG.js";import{c,f as i}from"./chunk-UHRHKXXJ.js";import{a as r}from"./chunk-SKXO5ZOU.js";import{a}from"./chunk-U5KSVPW3.js";import{b as f,e as p}from"./chunk-FYPRMH7P.js";import"./chunk-EPJ347EQ.js";import"./chunk-DJOD4BTL.js";import{a as d}from"./chunk-FUPXTBOQ.js";import{a as u}from"./chunk-TKF3DQ7Y.js";import{b as l}from"./chunk-JZ2UZ27L.js";import"./chunk-OLPYXE2P.js";import"./chunk-KPAWUBRO.js";import{a as o,b as e,c as t}from"./chunk-F3FZ2T4U.js";import"./chunk-RLMJN536.js";import"./chunk-B27KOFJ6.js";import"./chunk-57PTZNIL.js";import"./chunk-NZ3RGSR6.js";export{r as BlAlert,a as BlBadge,l as BlButton,f as BlCheckbox,p as BlCheckboxGroup,d as BlDialog,u as BlDrawer,G as BlDropdown,D as BlDropdownGroup,T as BlDropdownItem,t as BlIcon,x as BlInput,B as BlPagination,h as BlPopover,n as BlProgressIndicator,c as BlRadio,i as BlRadioGroup,m as BlSelect,s as BlSelectOption,S as BlSwitch,I as BlTab,b as BlTabGroup,P as BlTabPanel,g as BlTextarea,w as BlTooltip,e as getIconPath,o as setIconPath};
|
|
2
2
|
//# sourceMappingURL=baklava.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
function s(t,n){return function(e,r){let o=new CustomEvent(n,{detail:e,bubbles:!0,cancelable:!1,composed:!0,...r});return t.dispatchEvent(o),o}}function i(t){return(n,e)=>{Object.defineProperty(n,e,{get(){return s(this,t||e)},enumerable:!0,configurable:!0})}}export{i as a};
|
|
2
|
+
//# sourceMappingURL=chunk-B27KOFJ6.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../src/utilities/event.ts"],
|
|
4
|
+
"sourcesContent": ["export interface EventOptions {\n bubbles?: boolean;\n cancelable?: boolean;\n composed?: boolean;\n}\n\nexport interface EventDispatcher<T> {\n (value: T, options?: EventOptions): CustomEvent<T>;\n}\n\nfunction dispatcher<T>(target: HTMLElement, eventName: string): EventDispatcher<T> {\n return function (value: T, options?: EventOptions) {\n const customEvent = new CustomEvent<T>(eventName, {\n detail: value,\n bubbles: true,\n cancelable: false,\n composed: true,\n ...options,\n });\n\n target.dispatchEvent(\n customEvent\n );\n\n return customEvent;\n };\n}\n\nexport function event(customName?: string) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n return (protoOrDescriptor: any, name: string): any => {\n const descriptor = {\n get(this: HTMLElement) {\n return dispatcher(this, customName || name);\n },\n enumerable: true,\n configurable: true,\n };\n\n Object.defineProperty(protoOrDescriptor, name, descriptor);\n };\n}\n"],
|
|
5
|
+
"mappings": "AAUA,SAASA,EAAcC,EAAqBC,EAAuC,CACjF,OAAO,SAAUC,EAAUC,EAAwB,CACjD,IAAMC,EAAc,IAAI,YAAeH,EAAW,CAChD,OAAQC,EACR,QAAS,GACT,WAAY,GACZ,SAAU,GACV,GAAGC,CACL,CAAC,EAED,OAAAH,EAAO,cACLI,CACF,EAEOA,CACT,CACF,CAEO,SAASC,EAAMC,EAAqB,CAEzC,MAAO,CAACC,EAAwBC,IAAsB,CASpD,OAAO,eAAeD,EAAmBC,EARtB,CACjB,KAAuB,CACrB,OAAOT,EAAW,KAAMO,GAAcE,CAAI,CAC5C,EACA,WAAY,GACZ,aAAc,EAChB,CAEyD,CAC3D,CACF",
|
|
6
|
+
"names": ["dispatcher", "target", "eventName", "value", "options", "customEvent", "event", "customName", "protoOrDescriptor", "name"]
|
|
7
|
+
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{a as w,b as m,c as E}from"./chunk-RLMJN536.js";import{a as p}from"./chunk-
|
|
1
|
+
import{a as w,b as m,c as E}from"./chunk-RLMJN536.js";import{a as p}from"./chunk-B27KOFJ6.js";import{a as f,b as u,c as g,d as l,f as v,g as y,h as x,i as T}from"./chunk-57PTZNIL.js";import{a as r}from"./chunk-NZ3RGSR6.js";var s=class extends E{constructor(t){if(super(t),this.it=l,t.type!==w.CHILD)throw Error(this.constructor.directiveName+"() can only be used in child bindings")}render(t){if(t===l||t==null)return this._t=void 0,this.it=t;if(t===g)return t;if(typeof t!="string")throw Error(this.constructor.directiveName+"() called with a non-string value");if(t===this.it)return this._t;this.it=t;let i=[t];return i.raw=i,this._t={_$litType$:this.constructor.resultType,strings:i,values:[]}}};s.directiveName="unsafeHTML",s.resultType=1;var H=m(s);var n=class extends s{};n.directiveName="unsafeSVG",n.resultType=2;var L=m(n);var P="./assets";function M(a){P=a}function $(){return P}var N=import.meta.url;N&&M(N.split("/").slice(0,-1).concat("assets").join("/"));var _=f`:host{display:inline-block}:host div{display:flex;align-items:stretch;width:1em;height:1em;min-width:1em;min-height:1em;overflow:hidden;transform:translateZ(0)}:host svg{width:1em;height:1em}`,b=_;var d=new Map,e=class extends v{static get styles(){return[b]}get name(){return this._iconName}set name(i){i!==this._iconName&&(this._iconName=i,this.load())}async load(){let c=`${$()}/${this.name}.svg`;d.has(c)||d.set(c,fetch(c));try{let o=await d.get(c),h=await(o==null?void 0:o.clone());h!=null&&h.ok?(this.svg=await h.text(),this.onLoad(`${this.name} icon loaded`),this.requestUpdate()):this.onError(`${this.name} icon failed to load`)}catch(o){this.onError(`${this.name} icon failed to load [${o}]`)}}render(){return u`<div aria-hidden="true">${L(this.svg)}</div>`}};r([x()],e.prototype,"name",1),r([p("bl-load")],e.prototype,"onLoad",2),r([p("bl-error")],e.prototype,"onError",2),r([T()],e.prototype,"svg",2),e=r([y("bl-icon")],e);export{M as a,$ as b,e as c};
|
|
2
2
|
/*! Bundled license information:
|
|
3
3
|
|
|
4
4
|
lit-html/directives/unsafe-html.js:
|
|
@@ -15,4 +15,4 @@ lit-html/directives/unsafe-svg.js:
|
|
|
15
15
|
* SPDX-License-Identifier: BSD-3-Clause
|
|
16
16
|
*)
|
|
17
17
|
*/
|
|
18
|
-
//# sourceMappingURL=chunk-
|
|
18
|
+
//# sourceMappingURL=chunk-F3FZ2T4U.js.map
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import{a as
|
|
1
|
+
import{a as f}from"./chunk-OLPYXE2P.js";import{a as d}from"./chunk-B27KOFJ6.js";import{a as u,b as r,f as g,g as b,h,j as n}from"./chunk-57PTZNIL.js";import{a as o}from"./chunk-NZ3RGSR6.js";var w=u`:host{display:contents}.container{--background-color:var(--bl-color-neutral-full);display:flex;flex-direction:column;background:var(--background-color);max-width:calc(100vw - var(--bl-size-4xl));max-height:calc(100vh - var(--bl-size-4xl));min-width:424px;padding:0;border:0;border-radius:var(--bl-border-radius-l)}.dialog,.dialog-polyfill .container{padding:0;border:0;border-radius:var(--bl-border-radius-l)}.dialog-polyfill .container{position:fixed;z-index:var(--bl-index-dialog)}.dialog::backdrop{background-color:#273142b3}.dialog-polyfill{display:none;position:fixed;left:0;top:0;width:100vw;height:100vh;align-items:center;justify-content:center;z-index:var(--bl-index-dialog);background-color:#273142b3}:host([open]) .dialog-polyfill{display:flex}header{display:flex;justify-content:space-between;align-items:center;gap:var(--bl-size-2xs);padding:var(--bl-size-xl) var(--bl-size-xl) 0 var(--bl-size-xl)}header bl-button{margin-left:auto}header h2{font:var(--bl-font-title-1-medium);color:var(--bl-color-neutral-darker);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:0;padding:0}.content{padding:var(--bl-size-xl);overflow:auto}.container.has-footer .content{padding-bottom:0}footer{padding:var(--bl-size-xl);display:flex;flex-flow:row-reverse wrap;gap:var(--bl-size-m)}footer.shadow{/* FIXME: Use variables for sizes */box-shadow:0 -4px 15px #27314226}@media only screen and (max-width: 471px){.container{max-width:calc(100vw - var(--bl-size-2xl));max-height:calc(100vh - var(--bl-size-2xl));min-width:auto;min-height:auto}footer{flex-flow:column wrap}}`,m=w;var t=class extends g{constructor(){super(...arguments);this.open=!1;this.clickOutsideHandler=e=>{e.composedPath().includes(this.container)||this.closeDialog("backdrop")};this.onKeydown=e=>{e.code==="Escape"&&this.open&&(e.preventDefault(),this.closeDialog("keyboard"))}}static get styles(){return[m]}updated(e){e.has("open")&&this.toggleDialogHandler()}get hasHtmlDialogSupport(){return!!window.HTMLDialogElement}get _hasFooter(){return[...this.childNodes].some(e=>e.nodeName==="BL-BUTTON")}toggleDialogHandler(){var e,i,a,l;this.open?((i=(e=this.dialog)==null?void 0:e.showModal)==null||i.call(e),this.onOpen({isOpen:!0}),document.body.style.overflow="hidden",this.toggleFooterShadow(),window==null||window.addEventListener("keydown",s=>this.onKeydown(s)),window==null||window.addEventListener("resize",()=>this.toggleFooterShadow())):((l=(a=this.dialog)==null?void 0:a.close)==null||l.call(a),this.onClose({isOpen:!1}),document.body.style.overflow="auto",window==null||window.removeEventListener("keydown",this.onKeydown),window==null||window.removeEventListener("resize",this.toggleFooterShadow))}closeDialog(e){this.onRequestClose({source:e},{cancelable:!0}).defaultPrevented||(this.open=!1)}toggleFooterShadow(){var e,i,a,l,s,v;((e=this.content)==null?void 0:e.scrollHeight)>((i=this.content)==null?void 0:i.offsetHeight)?(l=(a=this.footer)==null?void 0:a.classList)==null||l.add("shadow"):(v=(s=this.footer)==null?void 0:s.classList)==null||v.remove("shadow")}renderFooter(){return this._hasFooter?r`<footer>
|
|
2
2
|
<slot name="primary-action"></slot>
|
|
3
3
|
<slot name="secondary-action"></slot>
|
|
4
4
|
<slot name="tertiary-action"></slot>
|
|
5
|
-
</footer>`:""}renderContainer(){let e=this.caption?r`<h2 id="dialog-caption">${this.caption}</h2>`:"",i={container:!0,"has-footer":this._hasFooter};return r` <div class="${
|
|
5
|
+
</footer>`:""}renderContainer(){let e=this.caption?r`<h2 id="dialog-caption">${this.caption}</h2>`:"",i={container:!0,"has-footer":this._hasFooter};return r` <div class="${f(i)}">
|
|
6
6
|
<header>
|
|
7
7
|
${e}
|
|
8
8
|
<bl-button
|
|
9
|
-
@click="${this.closeDialog}"
|
|
9
|
+
@click="${()=>this.closeDialog("close-button")}"
|
|
10
10
|
icon="close"
|
|
11
11
|
variant="tertiary"
|
|
12
12
|
kind="neutral"
|
|
@@ -29,5 +29,5 @@ import{a as m}from"./chunk-OLPYXE2P.js";import{a as c}from"./chunk-23UFIOHV.js";
|
|
|
29
29
|
@click=${this.clickOutsideHandler}
|
|
30
30
|
>
|
|
31
31
|
${this.renderContainer()}
|
|
32
|
-
</div>`}};o([
|
|
33
|
-
//# sourceMappingURL=chunk-
|
|
32
|
+
</div>`}};o([h({type:Boolean,reflect:!0,hasChanged(c,p){return c===!1&&p===void 0?!1:c!==p}})],t.prototype,"open",2),o([h({type:String})],t.prototype,"caption",2),o([n(".dialog")],t.prototype,"dialog",2),o([n("footer")],t.prototype,"footer",2),o([n(".container")],t.prototype,"container",2),o([n(".content")],t.prototype,"content",2),o([d("bl-dialog-open")],t.prototype,"onOpen",2),o([d("bl-dialog-request-close")],t.prototype,"onRequestClose",2),o([d("bl-dialog-close")],t.prototype,"onClose",2),t=o([b("bl-dialog")],t);export{t as a};
|
|
33
|
+
//# sourceMappingURL=chunk-FUPXTBOQ.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../src/components/dialog/bl-dialog.css", "../src/components/dialog/bl-dialog.ts"],
|
|
4
|
+
"sourcesContent": ["import {css} from 'lit';\nexport const styles = css`:host{display:contents}.container{--background-color:var(--bl-color-neutral-full);display:flex;flex-direction:column;background:var(--background-color);max-width:calc(100vw - var(--bl-size-4xl));max-height:calc(100vh - var(--bl-size-4xl));min-width:424px;padding:0;border:0;border-radius:var(--bl-border-radius-l)}.dialog,.dialog-polyfill .container{padding:0;border:0;border-radius:var(--bl-border-radius-l)}.dialog-polyfill .container{position:fixed;z-index:var(--bl-index-dialog)}.dialog::backdrop{background-color:#273142b3}.dialog-polyfill{display:none;position:fixed;left:0;top:0;width:100vw;height:100vh;align-items:center;justify-content:center;z-index:var(--bl-index-dialog);background-color:#273142b3}:host([open]) .dialog-polyfill{display:flex}header{display:flex;justify-content:space-between;align-items:center;gap:var(--bl-size-2xs);padding:var(--bl-size-xl) var(--bl-size-xl) 0 var(--bl-size-xl)}header bl-button{margin-left:auto}header h2{font:var(--bl-font-title-1-medium);color:var(--bl-color-neutral-darker);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:0;padding:0}.content{padding:var(--bl-size-xl);overflow:auto}.container.has-footer .content{padding-bottom:0}footer{padding:var(--bl-size-xl);display:flex;flex-flow:row-reverse wrap;gap:var(--bl-size-m)}footer.shadow{/* FIXME: Use variables for sizes */box-shadow:0 -4px 15px #27314226}@media only screen and (max-width: 471px){.container{max-width:calc(100vw - var(--bl-size-2xl));max-height:calc(100vh - var(--bl-size-2xl));min-width:auto;min-height:auto}footer{flex-flow:column wrap}}`;\nexport default styles;\n", "import { CSSResultGroup, html, LitElement, PropertyValues, TemplateResult } from 'lit';\nimport { customElement, property, query } from 'lit/decorators.js';\nimport { event, EventDispatcher } from '../../utilities/event';\nimport { classMap } from 'lit/directives/class-map.js';\nimport '../button/bl-button';\nimport style from './bl-dialog.css';\n\ntype DialogElement = {\n showModal: () => void;\n close: () => void;\n};\n\n/**\n * @tag bl-dialog\n * @summary Baklava Dialog component\n */\n@customElement('bl-dialog')\nexport default class BlDialog extends LitElement {\n static get styles(): CSSResultGroup {\n return [style];\n }\n\n /**\n * Sets dialog open-close status\n */\n @property({ type: Boolean, reflect: true, hasChanged(newVal: boolean, oldVal: boolean | undefined) {\n if (newVal === false && oldVal === undefined) {\n // Assume that the initial value is false\n return false;\n }\n return newVal !== oldVal;\n } })\n open = false;\n\n /**\n * Sets the dialog title\n */\n @property({ type: String })\n caption?: string;\n\n @query('.dialog')\n private dialog: HTMLDialogElement & DialogElement;\n\n @query('footer')\n private footer: HTMLElement;\n\n @query('.container')\n private container: HTMLElement;\n\n @query('.content')\n private content: HTMLElement;\n\n /**\n * Fires when the dialog is opened\n */\n @event('bl-dialog-open') private onOpen: EventDispatcher<object>;\n\n /**\n * Fires before the dialog is closed with internal actions like clicking close button,\n * pressing Escape key or clicking backdrop. Can be prevented by calling `event.preventDefault()`\n */\n @event('bl-dialog-request-close') private onRequestClose: EventDispatcher<{ source: 'close-button' | 'keyboard' | 'backdrop' }>;\n\n /**\n * Fires when the dialog is closed\n */\n @event('bl-dialog-close') private onClose: EventDispatcher<object>;\n\n updated(changedProperties: PropertyValues<this>) {\n if (changedProperties.has('open')) {\n this.toggleDialogHandler();\n }\n }\n\n private get hasHtmlDialogSupport() {\n return !!window.HTMLDialogElement;\n }\n\n private get _hasFooter() {\n return [...this.childNodes].some(node => node.nodeName === 'BL-BUTTON');\n }\n\n private toggleDialogHandler() {\n if (this.open) {\n this.dialog?.showModal?.();\n this.onOpen({ isOpen: true });\n document.body.style.overflow = 'hidden';\n this.toggleFooterShadow();\n window?.addEventListener('keydown', event => this.onKeydown(event));\n window?.addEventListener('resize', () => this.toggleFooterShadow());\n } else {\n this.dialog?.close?.();\n this.onClose({ isOpen: false });\n document.body.style.overflow = 'auto';\n window?.removeEventListener('keydown', this.onKeydown);\n window?.removeEventListener('resize', this.toggleFooterShadow);\n }\n }\n\n private closeDialog(source: 'close-button' | 'keyboard' | 'backdrop') {\n const requestCloseEvent = this.onRequestClose({ source }, { cancelable: true });\n\n if (requestCloseEvent.defaultPrevented) {\n return;\n }\n\n this.open = false;\n }\n\n private clickOutsideHandler = (event: MouseEvent) => {\n const eventPath = event.composedPath() as HTMLElement[];\n\n if (!eventPath.includes(this.container)) {\n this.closeDialog('backdrop');\n }\n };\n\n private onKeydown = (event: KeyboardEvent): void => {\n if (event.code === 'Escape' && this.open) {\n event.preventDefault();\n this.closeDialog('keyboard');\n }\n };\n\n private toggleFooterShadow() {\n if (this.content?.scrollHeight > this.content?.offsetHeight) {\n this.footer?.classList?.add('shadow');\n } else {\n this.footer?.classList?.remove('shadow');\n }\n }\n\n private renderFooter() {\n return this._hasFooter\n ? html`<footer>\n <slot name=\"primary-action\"></slot>\n <slot name=\"secondary-action\"></slot>\n <slot name=\"tertiary-action\"></slot>\n </footer>`\n : '';\n }\n\n private renderContainer() {\n const title = this.caption ? html`<h2 id=\"dialog-caption\">${this.caption}</h2>` : '';\n\n const classes = {\n container: true,\n 'has-footer': this._hasFooter,\n };\n\n return html` <div class=\"${classMap(classes)}\">\n <header>\n ${title}\n <bl-button\n @click=\"${() => this.closeDialog('close-button')}\"\n icon=\"close\"\n variant=\"tertiary\"\n kind=\"neutral\"\n ></bl-button>\n </header>\n <section class=\"content\"><slot /></section>\n ${this.renderFooter()}\n </div>`;\n }\n\n render(): TemplateResult {\n return this.hasHtmlDialogSupport\n ? html`\n <dialog\n class=\"dialog\"\n aria-labelledby=\"dialog-caption\"\n @click=${this.clickOutsideHandler}\n >\n ${this.renderContainer()}\n </dialog>\n `\n : html`<div\n class=\"dialog-polyfill\"\n role=\"dialog\"\n aria-labelledby=\"dialog-caption\"\n @click=${this.clickOutsideHandler}\n >\n ${this.renderContainer()}\n </div>`;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'bl-dialog': BlDialog;\n }\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["styles", "i", "bl_dialog_default", "BlDialog", "s", "event", "bl_dialog_default", "changedProperties", "node", "_a", "_b", "_c", "_d", "source", "_e", "_f", "y", "title", "classes", "o", "__decorateClass", "e", "newVal", "oldVal", "i"]
|
|
7
|
+
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{a as v}from"./chunk-EPJ347EQ.js";import{a as d}from"./chunk-DJOD4BTL.js";import{a as f}from"./chunk-KPAWUBRO.js";import{a as o}from"./chunk-
|
|
1
|
+
import{a as v}from"./chunk-EPJ347EQ.js";import{a as d}from"./chunk-DJOD4BTL.js";import{a as f}from"./chunk-KPAWUBRO.js";import{a as o}from"./chunk-B27KOFJ6.js";import{a as n,b as a,f as s,g as c,h as l,j as m}from"./chunk-57PTZNIL.js";import{a as t}from"./chunk-NZ3RGSR6.js";var E=n`:host{display:inline-block;vertical-align:middle}:host *{outline:none}label{display:flex;gap:var(--bl-size-2xs);color:var(--bl-color-neutral-darker);font:var(--bl-font-title-3);cursor:pointer;user-select:none}.label{word-break:break-all}input{appearance:none;position:absolute}.check-mark{display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:var(--bl-size-m);height:var(--bl-size-m);min-width:var(--bl-size-m);min-height:var(--bl-size-m);max-width:var(--bl-size-m);max-height:var(--bl-size-m);border:1px solid var(--bl-color-neutral-lighter);border-radius:var(--bl-border-radius-xs);color:var(--bl-color-neutral-full);font-size:var(--bl-font-size-2xs);background-color:var(--bl-color-neutral-full)}:host([checked]) .label,:host(.__ONLY_FOR_STORYBOOK_DEMONSTRATION_HOVER__) .label,:host(:hover) .label{color:var(--bl-color-primary)}:host(:is([checked], [indeterminate])) .check-mark{background-color:var(--bl-color-primary);border:none}:host([disabled]){cursor:not-allowed;pointer-events:none}:host([disabled]) .check-mark,:host([disabled]) .label{color:var(--bl-color-neutral-light)}:host([disabled]) .check-mark{background-color:var(--bl-color-neutral-lightest)}:host(:not([disabled])) input:focus-visible + .check-mark{box-shadow:0 0 0 1px white,0 0 0 3px var(--bl-color-primary)}`,g=E;var O=n`:host{display:flex;flex-direction:row}fieldset{border:none;padding:0}legend{font:var(--bl-font-title-3-medium);color:var(--bl-color-neutral-darker)}.options{display:flex;flex-flow:var(--bl-checkbox-direction, column) wrap;gap:var(--bl-size-m);margin-block:var(--bl-size-xs)}`,k=O;var u="bl-checkbox-group",p="bl-checkbox-group-change",r=class extends d(s){constructor(){super(...arguments);this.value=[];this.required=!1;this.focusedOptionIndex=0}static get styles(){return[k]}get options(){return[].slice.call(this.querySelectorAll(h))}get checkedOptions(){return this.options.filter(e=>e.checked).map(e=>e.value)}get availableOptions(){return this.options.filter(e=>!e.disabled)}connectedCallback(){super.connectedCallback(),this.tabIndex=0,this.addEventListener("focus",this.handleFocus),this.addEventListener("keydown",this.handleKeyDown)}disconnectedCallback(){super.disconnectedCallback(),this.removeEventListener("focus",this.handleFocus),this.removeEventListener("keydown",this.handleKeyDown)}updated(e){e.has("value")&&(this.setValue(this.checkedOptions.join(",")),this.onChange(this.value))}handleOptionChecked(){this.value=this.checkedOptions}handleKeyDown(e){if(["ArrowDown","ArrowRight"].includes(e.key))this.focusedOptionIndex++;else if(["ArrowUp","ArrowLeft"].includes(e.key))this.focusedOptionIndex--;else if(e.key==="Tab"){if(e.shiftKey?this.focusedOptionIndex--:this.focusedOptionIndex++,this.focusedOptionIndex===this.availableOptions.length){this.tabIndex=0,this.focusedOptionIndex=0;return}}else return;this.focusedOptionIndex=Math.max(0,Math.min(this.focusedOptionIndex,this.availableOptions.length-1)),this.availableOptions[this.focusedOptionIndex].focus(),e.preventDefault()}handleFocus(){this.availableOptions[this.focusedOptionIndex].focus()}render(){return a`<fieldset role="group" aria-labelledby="label" aria-required=${this.required}>
|
|
2
2
|
<legend id="label">${this.label}</legend>
|
|
3
3
|
<div class="options" @bl-checkbox-change=${this.handleOptionChecked}>
|
|
4
4
|
<slot></slot>
|
|
@@ -21,4 +21,4 @@ import{a as v}from"./chunk-EPJ347EQ.js";import{a as d}from"./chunk-DJOD4BTL.js";
|
|
|
21
21
|
<span class="label"><slot></slot></span>
|
|
22
22
|
</label>
|
|
23
23
|
`}};i.shadowRootOptions={...s.shadowRootOptions,delegatesFocus:!0},t([l({type:Boolean,reflect:!0})],i.prototype,"checked",2),t([l()],i.prototype,"value",2),t([l({type:Boolean,reflect:!0})],i.prototype,"required",2),t([l({type:Boolean,reflect:!0})],i.prototype,"disabled",2),t([l({type:Boolean,reflect:!0})],i.prototype,"indeterminate",2),t([o("bl-checkbox-change")],i.prototype,"onChange",2),t([o("bl-focus")],i.prototype,"onFocus",2),t([o("bl-blur")],i.prototype,"onBlur",2),t([m("[type=checkbox]")],i.prototype,"checkboxElement",2),i=t([c(h)],i);export{h as a,i as b,u as c,p as d,r as e};
|
|
24
|
-
//# sourceMappingURL=chunk-
|
|
24
|
+
//# sourceMappingURL=chunk-FYPRMH7P.js.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{a as r}from"./chunk-
|
|
1
|
+
import{a as r}from"./chunk-B27KOFJ6.js";import{a as n,b as l,f as a,g as c,h as i,i as p,j as u}from"./chunk-57PTZNIL.js";import{a as o}from"./chunk-NZ3RGSR6.js";var d=n`:host{position:relative}.option-container{--option-font:var(--bl-font-title-3-regular);--option-spacing:var(--bl-size-xs) 0;--option-selected-color:var(--bl-color-primary);--option-hover-color:var(--bl-color-primary-highlight);--option-color:var(--bl-color-neutral-darker);--option-disabled-color:var(--bl-color-neutral-light);--option-separator:1px solid var(--bl-color-neutral-lighter);--option-gap:var(--bl-size-2xs);--option-transition:color 120ms ease-out}.option-container::after{position:absolute;content:'';width:100%;bottom:0;border-bottom:var(--option-separator)}:host(:last-of-type) .option-container::after{border-bottom:none}.single-option{width:100%;display:block;cursor:pointer;color:var(--option-color);margin:var(--option-spacing);transition:var(--option-transition);font:var(--option-font);user-select:none;position:relative;outline:none}.single-option:focus-visible::after{content:'';position:absolute;inset:calc(var(--bl-size-3xs) * -1);border:var(--bl-size-4xs) solid var(--option-hover-color);border-radius:var(--bl-size-4xs)}:host(.__ONLY_FOR_STORYBOOK_DEMONSTRATION_HOVER__) .single-option,:host(:hover) .single-option{color:var(--option-hover-color)}:host([selected]) .single-option{color:var(--option-selected-color)}:host([disabled]){cursor:not-allowed}:host([disabled]) .single-option{color:var(--option-disabled-color);cursor:not-allowed;pointer-events:none}.checkbox-option{width:100%;display:block;color:var(--option-color);padding:var(--option-spacing)}`,h=d;var t=class extends a{constructor(){super(...arguments);this.disabled=!1;this.selected=!1;this.multiple=!1}static get styles(){return[h]}get value(){return this._value||this.textContent}set value(e){this._value=e}focus(){this.multiple||(this.focusTarget.tabIndex=0),this.focusTarget.focus(),this.onFocus(this.value)}blur(){this.onBlur(this.value),this.focusTarget.tabIndex=-1}singleOptionTemplate(){return l`<div
|
|
2
2
|
class="single-option focus-target"
|
|
3
3
|
@blur=${this.blur}
|
|
4
4
|
@keydown=${this.handleKeydown}
|
|
@@ -15,4 +15,4 @@ import{a as r}from"./chunk-23UFIOHV.js";import{a as n,b as l,f as a,g as c,h as
|
|
|
15
15
|
</bl-checkbox>`}render(){return l`<div class="option-container">
|
|
16
16
|
${this.multiple?this.checkboxOptionTemplate():this.singleOptionTemplate()}
|
|
17
17
|
</div>`}handleKeydown(e){(e.code==="Enter"||e.code==="Space")&&(this._onClickOption(),e.preventDefault())}_handleEvent(){this._onSelect(this.value)}_onClickOption(){this.selected=!this.selected,this._handleEvent()}_onCheckboxChange(e){this.selected=e.detail,this._handleEvent()}connectedCallback(){super.connectedCallback(),this.updateComplete.then(()=>{var e,s;this.blSelect=this.closest("bl-select"),this.multiple=((e=this.blSelect)==null?void 0:e.multiple)||!1,(s=this.blSelect)==null||s.registerOption(this)})}disconnectedCallback(){var e;super.disconnectedCallback(),(e=this.blSelect)==null||e.unregisterOption(this)}};o([i({})],t.prototype,"value",1),o([i({type:Boolean,reflect:!0})],t.prototype,"disabled",2),o([i({type:Boolean,reflect:!0})],t.prototype,"selected",2),o([p()],t.prototype,"multiple",2),o([r("bl-select-option")],t.prototype,"_onSelect",2),o([r("bl-focus")],t.prototype,"onFocus",2),o([r("bl-blur")],t.prototype,"onBlur",2),o([u(".focus-target")],t.prototype,"focusTarget",2),t=o([c("bl-select-option")],t);export{t as a};
|
|
18
|
-
//# sourceMappingURL=chunk-
|
|
18
|
+
//# sourceMappingURL=chunk-JWJ25XSK.js.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{a as _}from"./chunk-OLPYXE2P.js";import{a as n}from"./chunk-KPAWUBRO.js";import{a as y}from"./chunk-
|
|
1
|
+
import{a as _}from"./chunk-OLPYXE2P.js";import{a as n}from"./chunk-KPAWUBRO.js";import{a as y}from"./chunk-B27KOFJ6.js";import{a as p,b as a,f as v,g as m,h as e,i as g,j as f}from"./chunk-57PTZNIL.js";import{a as o}from"./chunk-NZ3RGSR6.js";var x=l=>{if(!(!l.noValidate&&!l.reportValidity())){let d=new SubmitEvent("submit",{bubbles:!0,cancelable:!0});l.dispatchEvent(d),d.defaultPrevented||l.submit()}};var z=p`@keyframes spin{from{transform:rotate(0deg)}to{transform:rotate(359deg)}}:host{display:var(--bl-button-display, inline-block);max-width:100%;position:relative}.button{--main-color:var(--bl-color-primary);--main-hover-color:var(--bl-color-primary-highlight);--text-hover-color:var(--bl-color-neutral-lightest);--content-color:var(--bl-color-neutral-full);--bg-color:var(--main-color);--border-color:var(--main-color);--padding-vertical:var(--bl-size-2xs);--padding-horizontal:var(--bl-size-m);--margin-icon:var(--padding-vertical);--icon-size:var(--bl-size-m);--font:var(--bl-font-title-3-medium);--height:var(--bl-size-2xl);display:flex;gap:var(--margin-icon);justify-content:var(--bl-button-justify, center);align-items:center;box-sizing:border-box;width:100%;height:var(--height);border:solid 1px var(--border-color);border-radius:var(--bl-border-radius-m);text-decoration:none;padding:var(--padding-vertical) var(--padding-horizontal);cursor:pointer;background-color:var(--bg-color);color:var(--content-color);font:var(--font);font-kerning:none;user-select:none}:host(.__ONLY_FOR_STORYBOOK_DEMONSTRATION_HOVER__) .button,:host(:hover) .button{--bg-color:var(--main-hover-color);--border-color:var(--main-hover-color)}.label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:host([size='small']) .button{--font:var(--bl-font-title-4-medium);--padding-vertical:var(--bl-size-3xs);--padding-horizontal:var(--bl-size-2xs);--icon-size:var(--bl-size-s);--height:var(--bl-size-xl)}:host([size='large']) .button{--font:var(--bl-font-title-3-medium);--padding-vertical:var(--bl-size-xs);--padding-horizontal:var(--bl-size-xl);--margin-icon:var(--bl-size-2xs);--height:var(--bl-size-3xl)}.button:focus{outline:none}.button:focus-visible{position:relative;outline:none}.button:focus-visible::after{border:2px solid var(--main-color);border-radius:var(--bl-border-radius-l);content:'';position:absolute;inset:-4px}.loading-icon{animation:spin 1s linear infinite;font-size:var(--icon-size)}:host ::slotted(bl-icon){font-size:var(--icon-size)}:host([loading]) ::slotted(bl-icon){display:none}:host .has-icon:not(.has-content){--padding-horizontal:var(--padding-vertical);--margin-icon:0}:host([variant='secondary']) .button{--bg-color:transparent;--content-color:var(--main-color)}:host([variant='tertiary']) .button{--content-color:var(--main-color);--border-color:transparent;--bg-color:transparent}:host([kind='neutral']) .button{--main-color:var(--bl-color-neutral-darker);--main-hover-color:var(--bl-color-neutral-darkest)}:host([kind='success']) .button{--main-color:var(--bl-color-success);--main-hover-color:var(--bl-color-success-highlight)}:host([kind='danger']) .button{--main-color:var(--bl-color-danger);--main-hover-color:var(--bl-color-danger-highlight)}:host([disabled]){cursor:not-allowed}:host([loading]){cursor:wait}:host([loading]) bl-icon:not(.loading-icon){display:none}:host .button[aria-disabled='true']{--main-color:var(--bl-color-neutral-lightest);--main-hover-color:var(--bl-color-neutral-lightest);--content-color:var(--bl-color-neutral-lighter);--bg-color:var(--main-color);pointer-events:none;text-decoration:none}:host([variant='tertiary']) .button[aria-disabled='true']{--main-color:transparent}:host([variant='secondary'].__ONLY_FOR_STORYBOOK_DEMONSTRATION_HOVER__) .button[aria-disabled='false'],:host([variant='secondary']:hover) .button[aria-disabled='false']{--content-color:var(--bl-color-neutral-full);--bg-color:var(--main-hover-color)}:host([variant='tertiary'].__ONLY_FOR_STORYBOOK_DEMONSTRATION_HOVER__) .button[aria-disabled='false'],:host([variant='tertiary']:hover) .button[aria-disabled='false']{--content-color:var(--main-hover-color);--bg-color:var(--text-hover-color)}:host([dropdown]) .open{display:none}:host([dropdown]) .active .open{display:inline-block}:host([dropdown]) .active .close{display:none}:host .active.button{--bg-color:var(--main-hover-color);--border-color:var(--main-hover-color)}:host([variant='secondary']) .active.button{--content-color:var(--bl-color-neutral-full);--bg-color:var(--main-hover-color)}:host([variant='tertiary']) .active.button{--content-color:var(--main-color);--bg-color:var(--bl-color-neutral-lightest);--border-color:transparent}`,T=z;var t=class extends v{constructor(){super(...arguments);this.variant="primary";this.kind="default";this.size="medium";this.loading=!1;this.disabled=!1;this.target="_self";this.dropdown=!1;this.autofocus=!1;this.active=!1}static get styles(){return[T]}get _isActive(){return this.active}connectedCallback(){super.connectedCallback()}caretTemplate(){return a` <bl-icon class="open" name="arrow_up"></bl-icon>
|
|
2
2
|
<bl-icon class="close" name="arrow_down"></bl-icon>`}_handleClick(){if(this.type==="submit"){let r;this.form instanceof HTMLFormElement?r=this.form:typeof this.form=="string"?r=document.getElementById(this.form):r=this.closest("form"),r&&x(r)}this.onClick("Click event fired!")}focus(){this.button.focus()}get _hasIconSlot(){return this.querySelector(':scope > [slot="icon"]')!==null}get _hasDefaultSlot(){return[...this.childNodes].some(i=>{var c;let s=i.nodeType;return s===i.TEXT_NODE&&((c=i.textContent)==null?void 0:c.trim())!==""||s===i.ELEMENT_NODE&&!i.hasAttribute("slot")})}render(){let r=this.loading||this.disabled,i=this.loading&&this.loadingLabel?this.loadingLabel:a`<slot></slot>`,s=!!this.href,c=this.icon?a`<bl-icon name=${this.icon}></bl-icon>`:"",b=this.loading?a`<bl-icon class="loading-icon" name="loading"></bl-icon>`:"",h=a`<slot name="icon">${c}</slot> <span class="label">${i}</span>`,E=this.dropdown?this.caretTemplate():"",u=_({button:!0,"has-icon":this.icon||this._hasIconSlot,"has-content":this._hasDefaultSlot,active:!s&&this._isActive});return s?a`<a
|
|
3
3
|
class=${u}
|
|
4
4
|
?autofocus=${this.autofocus}
|
|
@@ -18,4 +18,4 @@ import{a as _}from"./chunk-OLPYXE2P.js";import{a as n}from"./chunk-KPAWUBRO.js";
|
|
|
18
18
|
>
|
|
19
19
|
${b} ${h} ${E}
|
|
20
20
|
</button>`}};o([e({type:String,reflect:!0})],t.prototype,"variant",2),o([e({type:String,reflect:!0})],t.prototype,"kind",2),o([e({type:String,reflect:!0})],t.prototype,"size",2),o([e({type:String})],t.prototype,"label",2),o([e({type:String,attribute:"loading-label"})],t.prototype,"loadingLabel",2),o([e({type:Boolean,reflect:!0})],t.prototype,"loading",2),o([e({type:Boolean,reflect:!0})],t.prototype,"disabled",2),o([e({type:String})],t.prototype,"href",2),o([e({type:String})],t.prototype,"icon",2),o([e({type:String})],t.prototype,"target",2),o([e({type:String})],t.prototype,"type",2),o([e({type:Boolean})],t.prototype,"dropdown",2),o([e({type:Boolean,reflect:!0})],t.prototype,"autofocus",2),o([e({type:String})],t.prototype,"form",2),o([g({})],t.prototype,"active",2),o([f(".button")],t.prototype,"button",2),o([y("bl-click")],t.prototype,"onClick",2),t=o([m("bl-button")],t);export{x as a,t as b};
|
|
21
|
-
//# sourceMappingURL=chunk-
|
|
21
|
+
//# sourceMappingURL=chunk-JZ2UZ27L.js.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{a as m}from"./chunk-FSYC7NDP.js";import{a as s}from"./chunk-KPAWUBRO.js";import{a as n}from"./chunk-
|
|
1
|
+
import{a as m}from"./chunk-FSYC7NDP.js";import{a as s}from"./chunk-KPAWUBRO.js";import{a as n}from"./chunk-B27KOFJ6.js";import{a as p,b as a,f as d,g as c,h as o,i as b,j as l}from"./chunk-57PTZNIL.js";import{a as e}from"./chunk-NZ3RGSR6.js";var g=p`:host{position:relative;display:inline-block}:host([kind='neutral']) bl-popover{--bl-popover-border-color:var(--bl-color-neutral-darker)}:host([kind='success']) bl-popover{--bl-popover-border-color:var(--bl-color-success)}:host([kind='danger']) bl-popover{--bl-popover-border-color:var(--bl-color-danger)}`,f=g;var u="bl-dropdown",t=class extends d{constructor(){super(...arguments);this._isPopoverOpen=!1;this.label="Dropdown Button";this.variant="primary";this.kind="default";this.size="medium";this.disabled=!1;this.focusedOptionIndex=-1}static get styles(){return[f]}connectedCallback(){super.connectedCallback(),this.addEventListener("keydown",this.handleKeyDown)}disconnectedCallback(){super.disconnectedCallback(),this.removeEventListener("keydown",this.handleKeyDown)}firstUpdated(){this._popover.target=this._button}get opened(){return this._isPopoverOpen}_handleClick(){!this._isPopoverOpen&&!this.disabled?this.open():this.close()}handleKeyDown(i){if(["ArrowDown","ArrowRight"].includes(i.key))this.focusedOptionIndex++;else if(["ArrowUp","ArrowLeft"].includes(i.key))this.focusedOptionIndex--;else if(i.key==="Escape"){this.focusedOptionIndex=-1,this.close();return}else return;this.focusedOptionIndex=Math.max(0,Math.min(this.focusedOptionIndex,this.options.length-1)),this.options[this.focusedOptionIndex].focus(),i.preventDefault()}get options(){return[].slice.call(this.querySelectorAll(h))}open(){this._isPopoverOpen=!0,this._popover.show(),this.onOpen("Dropdown opened!")}close(){this._isPopoverOpen=!1,this._popover.visible&&this._popover.hide(),this.onClose("Dropdown closed!")}render(){return a`<bl-button
|
|
2
2
|
dropdown
|
|
3
3
|
.active=${this.opened}
|
|
4
4
|
?disabled=${s(this.disabled)}
|
|
@@ -24,4 +24,4 @@ import{a as m}from"./chunk-FSYC7NDP.js";import{a as s}from"./chunk-KPAWUBRO.js";
|
|
|
24
24
|
@click="${this._handleClick}"
|
|
25
25
|
><slot></slot>
|
|
26
26
|
</bl-button>`}};e([o({type:String})],r.prototype,"icon",2),e([n("bl-dropdown-item-click")],r.prototype,"onClick",2),e([l("[role=menuitem]")],r.prototype,"menuElement",2),r=e([c(h)],r);export{h as a,r as b,u as c,t as d};
|
|
27
|
-
//# sourceMappingURL=chunk-
|
|
27
|
+
//# sourceMappingURL=chunk-M4SZRVAL.js.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{a as h}from"./chunk-KPAWUBRO.js";import{a as o}from"./chunk-
|
|
1
|
+
import{a as h}from"./chunk-KPAWUBRO.js";import{a as o}from"./chunk-B27KOFJ6.js";import{a as p,b as s,f as u,g as c,h as i,i as g}from"./chunk-57PTZNIL.js";import{a as r}from"./chunk-NZ3RGSR6.js";var b=p`.pagination{display:flex;flex-wrap:wrap;justify-content:center;max-width:max-content;gap:var(--bl-size-s)}.pagination *{margin:0;padding:0;box-sizing:border-box}.page-container{display:flex;align-items:center}.page-list{display:flex;align-items:center;list-style:none;user-select:none;gap:var(--bl-size-3xs)}.dots{margin:0 var(--bl-size-2xs)}.dots::before{content:' \\B7 \\B7 \\B7';color:var(--bl-color-neutral-darker)}.pagination-helpers{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:var(--bl-size-m);color:var(--bl-color-neutral-darker)}.jumper,.select{display:flex;align-items:center;gap:var(--bl-size-2xs)}label{font:var(--bl-font-title-3-medium);font-size:var(--bl-font-size-m);font-weight:var(--bl-font-weight-medium);line-height:var(--bl-font-size-m);letter-spacing:0;user-select:none}bl-input{width:62px}bl-select{width:128px}@media only screen and (max-width: 768px){label{display:none}}`,m=b;var t=class extends u{constructor(){super(...arguments);this.currentPage=1;this.totalItems=0;this.itemsPerPage=10;this.hasJumper=!1;this.jumperLabel="Go To";this.hasSelect=!1;this.selectLabel="Show";this.itemsPerPageOptions=[{text:"10 Items",value:10},{text:"25 Items",value:25},{text:"50 Items",value:50},{text:"100 Items",value:100}];this.pages=[]}static get styles(){return[m]}connectedCallback(){super.connectedCallback(),setTimeout(()=>{window==null||window.addEventListener("resize",()=>this._paginate())})}disconnectedCallback(){super.disconnectedCallback(),window==null||window.removeEventListener("resize",this._paginate)}updated(e){(e.has("currentPage")||e.has("itemsPerPage")||e.has("totalItems"))&&this._paginate()}_paginate(){this.pages=[];let e=Math.ceil(Math.abs(this.totalItems/this.itemsPerPage))||1;if(e<=8){this.pages=Array.from(Array(e),(a,l)=>l+1);return}this.pages.push(1),this.currentPage<5?this.pages.push(2,3,4,5,"..."):this.currentPage>=5&&this.currentPage<=e-4?this.pages.push("...",this.currentPage-1,this.currentPage,this.currentPage+1,"..."):this.pages.push("...",e-4,e-3,e-2,e-1),this.pages.push(e)}_changePage(e){let a=this.currentPage;this.currentPage=e,this.onChange({selectedPage:e,prevPage:a,itemsPerPage:this.itemsPerPage})}_pageBack(){this.currentPage!==1&&this._changePage(this.currentPage-1)}_pageForward(){this.currentPage!==this._getLastPage()&&this._changePage(this.currentPage+1)}_getLastPage(){return+this.pages[this.pages.length-1]}_inputHandler(e){e.stopPropagation();let a=+e.target.value,l=a>0?Math.min(this._getLastPage(),a):1;this._changePage(l)}_selectHandler(e){var a;this.itemsPerPage=+((a=e==null?void 0:e.detail[0])==null?void 0:a.value)||100,this._changePage(1)}_renderSinglePage(e){if(typeof e=="string")return s`<li class="dots"></li>`;let a=this.currentPage===e?"page":void 0;return s` <li>
|
|
2
2
|
<bl-button
|
|
3
3
|
@click="${()=>this._changePage(e)}"
|
|
4
4
|
variant=${this.currentPage===e?"primary":"tertiary"}
|
|
@@ -47,4 +47,4 @@ import{a as h}from"./chunk-KPAWUBRO.js";import{a as o}from"./chunk-23UFIOHV.js";
|
|
|
47
47
|
</div>`:null;return s` <nav class="pagination" aria-label="Pagination">
|
|
48
48
|
${(()=>{if(!(!this.hasSelect&&!this.hasJumper))return s` <div class="pagination-helpers">${e} ${a}</div> `})()} ${this.renderPages()}
|
|
49
49
|
</nav>`}};r([i({attribute:"current-page",type:Number,reflect:!0})],t.prototype,"currentPage",2),r([i({attribute:"total-items",type:Number})],t.prototype,"totalItems",2),r([i({attribute:"items-per-page",type:Number,reflect:!0})],t.prototype,"itemsPerPage",2),r([i({attribute:"has-jumper",type:Boolean})],t.prototype,"hasJumper",2),r([i({attribute:"jumper-label",type:String})],t.prototype,"jumperLabel",2),r([i({attribute:"has-select",type:Boolean})],t.prototype,"hasSelect",2),r([i({attribute:"select-label",type:String})],t.prototype,"selectLabel",2),r([i({type:Array,attribute:!1})],t.prototype,"itemsPerPageOptions",2),r([g()],t.prototype,"pages",2),r([o("bl-change")],t.prototype,"onChange",2),t=r([c("bl-pagination")],t);export{t as a};
|
|
50
|
-
//# sourceMappingURL=chunk-
|
|
50
|
+
//# sourceMappingURL=chunk-NFZ2JBCP.js.map
|