@trendyol/baklava 3.0.0-beta.28 → 3.0.0-beta.29
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.map +2 -2
- package/dist/baklava.js +1 -1
- package/dist/chunk-6BSYS2G5.js +31 -0
- package/dist/chunk-6BSYS2G5.js.map +7 -0
- package/dist/{chunk-VCI5BDEF.js → chunk-TRWCD65K.js} +5 -5
- package/dist/{chunk-VCI5BDEF.js.map → chunk-TRWCD65K.js.map} +2 -2
- package/dist/components/checkbox-group/bl-checkbox-group.js +1 -1
- package/dist/components/checkbox-group/checkbox/bl-checkbox.d.ts +0 -1
- package/dist/components/checkbox-group/checkbox/bl-checkbox.d.ts.map +1 -1
- package/dist/components/checkbox-group/checkbox/bl-checkbox.js +1 -1
- package/dist/components/dialog/bl-dialog.d.ts +3 -0
- package/dist/components/dialog/bl-dialog.d.ts.map +1 -1
- package/dist/components/dialog/bl-dialog.js +1 -1
- package/dist/components/dialog/bl-dialog.stories.d.ts +1 -0
- package/dist/components/dialog/bl-dialog.stories.d.ts.map +1 -1
- package/dist/components/dialog/bl-dialog.stories.js +15 -3
- package/dist/components/dialog/bl-dialog.stories.js.map +3 -3
- package/dist/components/pagination/bl-pagination.js +1 -1
- package/dist/components/select/bl-select.js +1 -1
- package/dist/components/table/table-cell/bl-table-cell.js +1 -1
- package/dist/components/table/table-header-cell/bl-table-header-cell.js +1 -1
- package/dist/components/table/table-row/bl-table-row.js +1 -1
- package/dist/custom-elements.json +23 -1
- package/package.json +1 -1
- package/dist/chunk-N43OCCSL.js +0 -30
- package/dist/chunk-N43OCCSL.js.map +0 -7
package/dist/baklava-react.d.ts
CHANGED
|
@@ -145,6 +145,9 @@ export declare const BlCheckboxGroup: React.LazyExoticComponent<import("@lit-lab
|
|
|
145
145
|
/**
|
|
146
146
|
* @tag bl-dialog
|
|
147
147
|
* @summary Baklava Dialog component
|
|
148
|
+
*
|
|
149
|
+
* @cssproperty [--bl-dialog-width=auto] Sets the width of the dialog content
|
|
150
|
+
* @cssproperty [--bl-dialog-caption-line-clamp=1] Sets the line clamp of the caption
|
|
148
151
|
*/
|
|
149
152
|
export declare const BlDialog: React.LazyExoticComponent<import("@lit-labs/react").ReactWebComponent<import("./components/dialog/bl-dialog").default, {
|
|
150
153
|
onBlDialogOpen: EventName<BlDialogDialogOpen>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"baklava-react.d.ts","sourceRoot":"","sources":["../src/baklava-react.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"baklava-react.d.ts","sourceRoot":"","sources":["../src/baklava-react.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,KAAK,SAAS,EAAmB,MAAM,iBAAiB,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAE9D,MAAM,MAAM,gBAAgB,GAAG,OAAO,iDAAiD,EAAE,OAAO,CAAC;AAEjG,MAAM,MAAM,OAAO,GAAG,OAAO,6BAA6B,EAAE,OAAO,CAAC;AAEpE,MAAM,MAAM,OAAO,GAAG,OAAO,6BAA6B,EAAE,OAAO,CAAC;AAEpE,MAAM,MAAM,QAAQ,GAAG,OAAO,+BAA+B,EAAE,OAAO,CAAC;AAEvE,MAAM,MAAM,UAAU,GAAG,OAAO,mCAAmC,EAAE,OAAO,CAAC;AAE7E,MAAM,MAAM,eAAe,GAAG,OAAO,+CAA+C,EAAE,OAAO,CAAC;AAE9F,MAAM,MAAM,QAAQ,GAAG,OAAO,+BAA+B,EAAE,OAAO,CAAC;AAEvE,MAAM,MAAM,QAAQ,GAAG,OAAO,+BAA+B,EAAE,OAAO,CAAC;AAEvE,MAAM,MAAM,UAAU,GAAG,OAAO,mCAAmC,EAAE,OAAO,CAAC;AAE7E,MAAM,MAAM,MAAM,GAAG,OAAO,2BAA2B,EAAE,OAAO,CAAC;AAEjE,MAAM,MAAM,OAAO,GAAG,OAAO,6BAA6B,EAAE,OAAO,CAAC;AAEpE,MAAM,MAAM,cAAc,GAAG,OAAO,2CAA2C,EAAE,OAAO,CAAC;AAEzF,MAAM,MAAM,YAAY,GAAG,OAAO,uCAAuC,EAAE,OAAO,CAAC;AAEnF,MAAM,MAAM,SAAS,GAAG,OAAO,iCAAiC,EAAE,OAAO,CAAC;AAE1E,MAAM,MAAM,mBAAmB,GAC7B,OAAO,uDAAuD,EAAE,OAAO,CAAC;AAE1E,MAAM,MAAM,YAAY,GAAG,OAAO,yCAAyC,EAAE,OAAO,CAAC;AAErF,MAAM,MAAM,QAAQ,GAAG,OAAO,+BAA+B,EAAE,OAAO,CAAC;AAEvE,MAAM,MAAM,SAAS,GAAG,OAAO,iCAAiC,EAAE,OAAO,CAAC;AAE1E,MAAM,MAAM,aAAa,GAAG,OAAO,2CAA2C,EAAE,OAAO,CAAC;AAExF,MAAM,MAAM,QAAQ,GAAG,OAAO,+BAA+B,EAAE,OAAO,CAAC;AAEvE,MAAM,MAAM,UAAU,GAAG,OAAO,qCAAqC,EAAE,OAAO,CAAC;AAE/E,MAAM,MAAM,OAAO,GAAG,OAAO,6BAA6B,EAAE,OAAO,CAAC;AAEpE,MAAM,MAAM,UAAU,GAAG,OAAO,mCAAmC,EAAE,OAAO,CAAC;AAE7E,MAAM,MAAM,SAAS,GAAG,OAAO,iCAAiC,EAAE,OAAO,CAAC;AAE1E,MAAM,MAAM,WAAW,GAAG,OAAO,qDAAqD,EAAE,OAAO,CAAC;AAEhG,MAAM,MAAM,UAAU,GAAG,OAAO,kDAAkD,EAAE,OAAO,CAAC;AAE5F,MAAM,MAAM,eAAe,GAAG,OAAO,+CAA+C,EAAE,OAAO,CAAC;AAE9F,MAAM,MAAM,cAAc,GAAG,OAAO,6CAA6C,EAAE,OAAO,CAAC;AAE3F,MAAM,MAAM,kBAAkB,GAC5B,OAAO,qDAAqD,EAAE,OAAO,CAAC;AAExE,MAAM,MAAM,OAAO,GAAG,OAAO,yCAAyC,EAAE,OAAO,CAAC;AAEhF,MAAM,MAAM,cAAc,GAAG,OAAO,6CAA6C,EAAE,OAAO,CAAC;AAE3F,MAAM,MAAM,KAAK,GAAG,OAAO,mCAAmC,EAAE,OAAO,CAAC;AAExE,MAAM,MAAM,UAAU,GAAG,OAAO,+CAA+C,EAAE,OAAO,CAAC;AAEzF,MAAM,MAAM,WAAW,GAAG,OAAO,6CAA6C,EAAE,OAAO,CAAC;AAExF,MAAM,MAAM,WAAW,GAAG,OAAO,6CAA6C,EAAE,OAAO,CAAC;AAExF,MAAM,MAAM,aAAa,GAAG,OAAO,iDAAiD,EAAE,OAAO,CAAC;AAE9F,MAAM,MAAM,iBAAiB,GAC3B,OAAO,2DAA2D,EAAE,OAAO,CAAC;AAE9E,MAAM,MAAM,UAAU,GAAG,OAAO,2CAA2C,EAAE,OAAO,CAAC;AAErF,MAAM,CAAC,OAAO,MAAM,YAAY,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;AAExD,MAAM,CAAC,OAAO,MAAM,aAAa,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;AAExD,MAAM,CAAC,OAAO,MAAM,wBAAwB,GAAG,WAAW,CAAC,IAAI,EAAE,CAAC,CAAC;AAEnE,MAAM,CAAC,OAAO,MAAM,kCAAkC,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC;AAE/E,MAAM,CAAC,OAAO,MAAM,mCAAmC,GAAG,WAAW,CAAC,aAAa,CAAC,CAAC;AAErF,MAAM,CAAC,OAAO,MAAM,kBAAkB,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;AAE7D,MAAM,CAAC,OAAO,MAAM,0BAA0B,GAAG,WAAW,CAAC;IAC3D,MAAM,EAAE,cAAc,GAAG,UAAU,GAAG,UAAU,CAAC;CAClD,CAAC,CAAC;AAEH,MAAM,CAAC,OAAO,MAAM,mBAAmB,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;AAE9D,MAAM,CAAC,OAAO,MAAM,kBAAkB,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;AAE7D,MAAM,CAAC,OAAO,MAAM,mBAAmB,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;AAE9D,MAAM,CAAC,OAAO,MAAM,sBAAsB,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;AAEjE,MAAM,CAAC,OAAO,MAAM,uBAAuB,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;AAElE,MAAM,CAAC,OAAO,MAAM,UAAU,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;AAErD,MAAM,CAAC,OAAO,MAAM,WAAW,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;AAEtD,MAAM,CAAC,OAAO,MAAM,aAAa,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;AAExD,MAAM,CAAC,OAAO,MAAM,YAAY,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;AAEvD,MAAM,CAAC,OAAO,MAAM,cAAc,GAAG,WAAW,CAAC,aAAa,CAAC,CAAC;AAEhE,MAAM,CAAC,OAAO,MAAM,kBAAkB,GAAG,WAAW,CAAC;IACnD,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;CACtB,CAAC,CAAC;AAEH,MAAM,CAAC,OAAO,MAAM,oBAAoB,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;AAE/D,MAAM,CAAC,OAAO,MAAM,oBAAoB,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;AAE/D,MAAM,CAAC,OAAO,MAAM,uBAAuB,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;AAElE,MAAM,CAAC,OAAO,MAAM,cAAc,GAAG,WAAW,CAAC,aAAa,EAAE,GAAG,aAAa,CAAC,CAAC;AAElF,MAAM,CAAC,OAAO,MAAM,cAAc,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;AAEzD,MAAM,CAAC,OAAO,MAAM,yBAAyB,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;AAEpE,MAAM,CAAC,OAAO,MAAM,0BAA0B,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;AAErE,MAAM,CAAC,OAAO,MAAM,kBAAkB,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;AAE7D,MAAM,CAAC,OAAO,MAAM,oBAAoB,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;AAEhE,MAAM,CAAC,OAAO,MAAM,0BAA0B,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC;AAEvE,MAAM,CAAC,OAAO,MAAM,+BAA+B,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC;AAE5E,MAAM,CAAC,OAAO,MAAM,eAAe,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;AAE1D,MAAM,CAAC,OAAO,MAAM,gBAAgB,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;AAE3D,MAAM,CAAC,OAAO,MAAM,iBAAiB,GAAG,WAAW,CAAC,aAAa,CAAC,CAAC;AAEnE,MAAM,CAAC,OAAO,MAAM,oBAAoB,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;AAE/D,MAAM,CAAC,OAAO,MAAM,oBAAoB,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;AAE/D,MAAM,CAAC,OAAO,MAAM,iBAAiB,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;AAE7D,MAAM,CAAC,OAAO,MAAM,wBAAwB,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;AAEpE,MAAM,CAAC,OAAO,MAAM,eAAe,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;AAE1D,MAAM,CAAC,OAAO,MAAM,cAAc,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;AAEzD,MAAM,CAAC,OAAO,MAAM,yBAAyB,GAAG,WAAW,CAAC,aAAa,CAAC,CAAC;AAE3E,MAAM,CAAC,OAAO,MAAM,+BAA+B,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;AAE1E,MAAM,CAAC,OAAO,MAAM,8CAA8C,GAAG,WAAW,CAAC;IAC/E,MAAM,EAAE,gBAAgB,GAAG,cAAc,CAAC;CAC3C,CAAC,CAAC;AAEH,MAAM,CAAC,OAAO,MAAM,uCAAuC,GAAG,WAAW,CAAC;IACxE,MAAM,EAAE,gBAAgB,GAAG,cAAc,CAAC;CAC3C,CAAC,CAAC;AAEH,MAAM,CAAC,OAAO,MAAM,cAAc,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;AAEzD,MAAM,CAAC,OAAO,MAAM,YAAY,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;AAEvD,MAAM,CAAC,OAAO,MAAM,WAAW,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;AAEtD,MAAM,CAAC,OAAO,MAAM,0BAA0B,GAAG,WAAW,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;AAE5E,MAAM,CAAC,OAAO,MAAM,mBAAmB,GAAG,WAAW,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;AAErE,MAAM,CAAC,OAAO,MAAM,kBAAkB,GAAG,WAAW,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;AAEpE,MAAM,CAAC,OAAO,MAAM,gBAAgB,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;AAI3D,eAAO,MAAM,gBAAgB,+IAU5B,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,OAAO;;GAYnB,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,OAAO,2HAUnB,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,QAAQ;;GAYpB,CAAC;AAEF;;;IAGI;AACJ,eAAO,MAAM,UAAU;;GAYtB,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,eAAe;;;GAe3B,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,QAAQ;;;;GAcpB,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,QAAQ;;;GAapB,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,UAAU;;;GAatB,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,MAAM;;;GAalB,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,OAAO;;;;GAcnB,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,cAAc,yIAU1B,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,YAAY;;GAYxB,CAAC;AAEF;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,SAAS;;;GAarB,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,mBAAmB,qJAU/B,CAAC;AAEF;;;;;;;;GAQG;AACH,eAAO,MAAM,YAAY;;GAYxB,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,QAAQ;;;GAapB,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,SAAS,+HAUrB,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,aAAa;;;;GAczB,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,QAAQ;;GAYpB,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,UAAU,mIAUtB,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,OAAO;;;GAcnB,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,UAAU;;;;GActB,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,SAAS;;;GAarB,CAAC;AAEF,eAAO,MAAM,WAAW;;GAYvB,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,UAAU;;;;;GAetB,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,eAAe,6IAU3B,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,cAAc;;GAa1B,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,kBAAkB;;;GAe9B,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,OAAO;;;;GAcnB,CAAC;AAEF,eAAO,MAAM,cAAc;;;;GAc1B,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,KAAK;;GAYjB,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,UAAU,6IAUtB,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,WAAW,2IAUvB,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,WAAW,2IAUvB,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,aAAa,+IAUzB,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,iBAAiB,yJAU7B,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,UAAU,yIAUtB,CAAC"}
|
|
@@ -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 { type EventName, createComponent } from \"@lit-labs/react\";\nimport { ISelectOption } from \"./components/select/bl-select\";\n\nexport type BlAccordionGroup = import(\"./components/accordion-group/bl-accordion-group\").default;\n\nexport type BlAlert = import(\"./components/alert/bl-alert\").default;\n\nexport type BlBadge = import(\"./components/badge/bl-badge\").default;\n\nexport type BlButton = import(\"./components/button/bl-button\").default;\n\nexport type BlCalendar = import(\"./components/calendar/bl-calendar\").default;\n\nexport type BlCheckboxGroup = import(\"./components/checkbox-group/bl-checkbox-group\").default;\n\nexport type BlDialog = import(\"./components/dialog/bl-dialog\").default;\n\nexport type BlDrawer = import(\"./components/drawer/bl-drawer\").default;\n\nexport type BlDropdown = import(\"./components/dropdown/bl-dropdown\").default;\n\nexport type BlIcon = import(\"./components/icon/bl-icon\").default;\n\nexport type BlInput = import(\"./components/input/bl-input\").default;\n\nexport type BlNotification = import(\"./components/notification/bl-notification\").default;\n\nexport type BlPagination = import(\"./components/pagination/bl-pagination\").default;\n\nexport type BlPopover = import(\"./components/popover/bl-popover\").default;\n\nexport type BlProgressIndicator =\n import(\"./components/progress-indicator/bl-progress-indicator\").default;\n\nexport type BlRadioGroup = import(\"./components/radio-group/bl-radio-group\").default;\n\nexport type BlSelect = import(\"./components/select/bl-select\").default;\n\nexport type BlSpinner = import(\"./components/spinner/bl-spinner\").default;\n\nexport type BlSplitButton = import(\"./components/split-button/bl-split-button\").default;\n\nexport type BlSwitch = import(\"./components/switch/bl-switch\").default;\n\nexport type BlTabGroup = import(\"./components/tab-group/bl-tab-group\").default;\n\nexport type BlTable = import(\"./components/table/bl-table\").default;\n\nexport type BlTextarea = import(\"./components/textarea/bl-textarea\").default;\n\nexport type BlTooltip = import(\"./components/tooltip/bl-tooltip\").default;\n\nexport type BlAccordion = import(\"./components/accordion-group/accordion/bl-accordion\").default;\n\nexport type BlCheckbox = import(\"./components/checkbox-group/checkbox/bl-checkbox\").default;\n\nexport type BlDropdownGroup = import(\"./components/dropdown/group/bl-dropdown-group\").default;\n\nexport type BlDropdownItem = import(\"./components/dropdown/item/bl-dropdown-item\").default;\n\nexport type BlNotificationCard =\n import(\"./components/notification/card/bl-notification-card\").default;\n\nexport type BlRadio = import(\"./components/radio-group/radio/bl-radio\").default;\n\nexport type BlSelectOption = import(\"./components/select/option/bl-select-option\").default;\n\nexport type BlTab = import(\"./components/tab-group/tab/bl-tab\").default;\n\nexport type BlTabPanel = import(\"./components/tab-group/tab-panel/bl-tab-panel\").default;\n\nexport type BlTableBody = import(\"./components/table/table-body/bl-table-body\").default;\n\nexport type BlTableCell = import(\"./components/table/table-cell/bl-table-cell\").default;\n\nexport type BlTableHeader = import(\"./components/table/table-header/bl-table-header\").default;\n\nexport type BlTableHeaderCell =\n import(\"./components/table/table-header-cell/bl-table-header-cell\").default;\n\nexport type BlTableRow = import(\"./components/table/table-row/bl-table-row\").default;\n\nexport declare type BlAlertClose = CustomEvent<boolean>;\n\nexport declare type BlButtonClick = CustomEvent<string>;\n\nexport declare type BlCalendarCalendarChange = CustomEvent<Date[]>;\n\nexport declare type BlCheckboxGroupCheckboxGroupChange = CustomEvent<string[]>;\n\nexport declare type BlCheckboxGroupCheckboxGroupInvalid = CustomEvent<ValidityState>;\n\nexport declare type BlDialogDialogOpen = CustomEvent<object>;\n\nexport declare type BlDialogDialogRequestClose = CustomEvent<{\n source: \"close-button\" | \"keyboard\" | \"backdrop\";\n}>;\n\nexport declare type BlDialogDialogClose = CustomEvent<object>;\n\nexport declare type BlDrawerDrawerOpen = CustomEvent<string>;\n\nexport declare type BlDrawerDrawerClose = CustomEvent<string>;\n\nexport declare type BlDropdownDropdownOpen = CustomEvent<string>;\n\nexport declare type BlDropdownDropdownClose = CustomEvent<string>;\n\nexport declare type BlIconLoad = CustomEvent<string>;\n\nexport declare type BlIconError = CustomEvent<string>;\n\nexport declare type BlInputChange = CustomEvent<string>;\n\nexport declare type BlInputInput = CustomEvent<string>;\n\nexport declare type BlInputInvalid = CustomEvent<ValidityState>;\n\nexport declare type BlPaginationChange = CustomEvent<{\n selectedPage: number;\n prevPage: number;\n itemsPerPage: number;\n}>;\n\nexport declare type BlPopoverPopoverShow = CustomEvent<string>;\n\nexport declare type BlPopoverPopoverHide = CustomEvent<string>;\n\nexport declare type BlRadioGroupRadioChange = CustomEvent<string>;\n\nexport declare type BlSelectSelect = CustomEvent<ISelectOption[] | ISelectOption>;\n\nexport declare type BlSelectSearch = CustomEvent<string>;\n\nexport declare type BlSplitButtonDropdownOpen = CustomEvent<string>;\n\nexport declare type BlSplitButtonDropdownClose = CustomEvent<string>;\n\nexport declare type BlSplitButtonClick = CustomEvent<string>;\n\nexport declare type BlSwitchSwitchToggle = CustomEvent<boolean>;\n\nexport declare type BlTableSortChangeEventName = CustomEvent<string[]>;\n\nexport declare type BlTableRowSelectChangeEventName = CustomEvent<string[]>;\n\nexport declare type BlTextareaInput = CustomEvent<string>;\n\nexport declare type BlTextareaChange = CustomEvent<string>;\n\nexport declare type BlTextareaInvalid = CustomEvent<ValidityState>;\n\nexport declare type BlTooltipTooltipShow = CustomEvent<string>;\n\nexport declare type BlTooltipTooltipHide = CustomEvent<string>;\n\nexport declare type BlAccordionToggle = CustomEvent<boolean>;\n\nexport declare type BlCheckboxCheckboxChange = CustomEvent<boolean>;\n\nexport declare type BlCheckboxFocus = CustomEvent<string>;\n\nexport declare type BlCheckboxBlur = CustomEvent<string>;\n\nexport declare type BlCheckboxCheckboxInvalid = CustomEvent<ValidityState>;\n\nexport declare type BlDropdownItemDropdownItemClick = CustomEvent<string>;\n\nexport declare type BlNotificationCardNotificationCardRequestClose = CustomEvent<{\n source: \"duration-ended\" | \"close-button\";\n}>;\n\nexport declare type BlNotificationCardNotificationCardClose = CustomEvent<{\n source: \"duration-ended\" | \"close-button\";\n}>;\n\nexport declare type BlRadioChecked = CustomEvent<string>;\n\nexport declare type BlRadioFocus = CustomEvent<string>;\n\nexport declare type BlRadioBlur = CustomEvent<string>;\n\nexport declare type BlSelectOptionSelectOption = CustomEvent<string | null>;\n\nexport declare type BlSelectOptionFocus = CustomEvent<string | null>;\n\nexport declare type BlSelectOptionBlur = CustomEvent<string | null>;\n\nexport declare type BlTabTabSelected = CustomEvent<string>;\n\ntype Constructor<T> = { new (): T };\n\nexport const BlAccordionGroup = React.lazy(() =>\n customElements.whenDefined(\"bl-accordion-group\").then(() => ({\n default: createComponent({\n react: React,\n displayName: \"BlAccordionGroup\",\n tagName: \"bl-accordion-group\",\n elementClass: customElements.get(\"bl-accordion-group\") as Constructor<BlAccordionGroup>,\n events: {},\n }),\n }))\n);\n\n/**\n * @tag bl-alert\n * @summary Baklava Alert component\n */\nexport const BlAlert = React.lazy(() =>\n customElements.whenDefined(\"bl-alert\").then(() => ({\n default: createComponent({\n react: React,\n displayName: \"BlAlert\",\n tagName: \"bl-alert\",\n elementClass: customElements.get(\"bl-alert\") as Constructor<BlAlert>,\n events: {\n onBlClose: \"bl-close\" as EventName<BlAlertClose>,\n },\n }),\n }))\n);\n\n/**\n * @tag bl-badge\n * @summary Baklava Badge component\n *\n * @cssproperty [--bl-badge-bg-color=--bl-color-primary-contrast] Sets the background color of badge\n * @cssproperty [--bl-badge-color=--bl-color-primary] Sets the color of badge\n */\nexport const BlBadge = React.lazy(() =>\n customElements.whenDefined(\"bl-badge\").then(() => ({\n default: createComponent({\n react: React,\n displayName: \"BlBadge\",\n tagName: \"bl-badge\",\n elementClass: customElements.get(\"bl-badge\") as Constructor<BlBadge>,\n events: {},\n }),\n }))\n);\n\n/**\n * @tag bl-button\n * @summary Baklava Button component\n *\n * @cssproperty [--bl-button-display=inline-block] Sets the display property of button\n * @cssproperty [--bl-button-justify=center] Sets the justify-content property of button\n *\n */\nexport const BlButton = React.lazy(() =>\n customElements.whenDefined(\"bl-button\").then(() => ({\n default: createComponent({\n react: React,\n displayName: \"BlButton\",\n tagName: \"bl-button\",\n elementClass: customElements.get(\"bl-button\") as Constructor<BlButton>,\n events: {\n onBlClick: \"bl-click\" as EventName<BlButtonClick>,\n },\n }),\n }))\n);\n\n/**\n * @tag bl-calendar\n * @summary Baklava Calendar component\n **/\nexport const BlCalendar = React.lazy(() =>\n customElements.whenDefined(\"bl-calendar\").then(() => ({\n default: createComponent({\n react: React,\n displayName: \"BlCalendar\",\n tagName: \"bl-calendar\",\n elementClass: customElements.get(\"bl-calendar\") as Constructor<BlCalendar>,\n events: {\n onBlCalendarChange: \"bl-calendar-change\" as EventName<BlCalendarCalendarChange>,\n },\n }),\n }))\n);\n\n/**\n * @tag bl-checkbox-group\n * @summary Baklava Button component\n *\n * @cssproperty [--bl-checkbox-direction=row] Can be used for showing checkbox options as columns instead of rows. Options are `row` or `column`\n */\nexport const BlCheckboxGroup = React.lazy(() =>\n customElements.whenDefined(\"bl-checkbox-group\").then(() => ({\n default: createComponent({\n react: React,\n displayName: \"BlCheckboxGroup\",\n tagName: \"bl-checkbox-group\",\n elementClass: customElements.get(\"bl-checkbox-group\") as Constructor<BlCheckboxGroup>,\n events: {\n onBlCheckboxGroupChange:\n \"bl-checkbox-group-change\" as EventName<BlCheckboxGroupCheckboxGroupChange>,\n onBlCheckboxGroupInvalid:\n \"bl-checkbox-group-invalid\" as EventName<BlCheckboxGroupCheckboxGroupInvalid>,\n },\n }),\n }))\n);\n\n/**\n * @tag bl-dialog\n * @summary Baklava Dialog component\n */\nexport const BlDialog = React.lazy(() =>\n customElements.whenDefined(\"bl-dialog\").then(() => ({\n default: createComponent({\n react: React,\n displayName: \"BlDialog\",\n tagName: \"bl-dialog\",\n elementClass: customElements.get(\"bl-dialog\") as Constructor<BlDialog>,\n events: {\n onBlDialogOpen: \"bl-dialog-open\" as EventName<BlDialogDialogOpen>,\n onBlDialogRequestClose: \"bl-dialog-request-close\" as EventName<BlDialogDialogRequestClose>,\n onBlDialogClose: \"bl-dialog-close\" as EventName<BlDialogDialogClose>,\n },\n }),\n }))\n);\n\n/**\n * @tag bl-drawer\n * @summary Baklava Drawer component\n *\n * @cssproperty [--bl-drawer-animation-duration=250ms] Drawer slide in animation duration\n */\nexport const BlDrawer = React.lazy(() =>\n customElements.whenDefined(\"bl-drawer\").then(() => ({\n default: createComponent({\n react: React,\n displayName: \"BlDrawer\",\n tagName: \"bl-drawer\",\n elementClass: customElements.get(\"bl-drawer\") as Constructor<BlDrawer>,\n events: {\n onBlDrawerOpen: \"bl-drawer-open\" as EventName<BlDrawerDrawerOpen>,\n onBlDrawerClose: \"bl-drawer-close\" as EventName<BlDrawerDrawerClose>,\n },\n }),\n }))\n);\n\n/**\n * @tag bl-dropdown\n * @summary Baklava Dropdown component\n */\nexport const BlDropdown = React.lazy(() =>\n customElements.whenDefined(\"bl-dropdown\").then(() => ({\n default: createComponent({\n react: React,\n displayName: \"BlDropdown\",\n tagName: \"bl-dropdown\",\n elementClass: customElements.get(\"bl-dropdown\") as Constructor<BlDropdown>,\n events: {\n onBlDropdownOpen: \"bl-dropdown-open\" as EventName<BlDropdownDropdownOpen>,\n onBlDropdownClose: \"bl-dropdown-close\" as EventName<BlDropdownDropdownClose>,\n },\n }),\n }))\n);\n\n/**\n * @tag bl-icon\n * @summary Baklava Icon component\n *\n * @cssproperty [font-size] Setting size of icon. Default is current font size in DOM place\n * @cssproperty [color=currentColor] Setting color of icon\n */\nexport const BlIcon = React.lazy(() =>\n customElements.whenDefined(\"bl-icon\").then(() => ({\n default: createComponent({\n react: React,\n displayName: \"BlIcon\",\n tagName: \"bl-icon\",\n elementClass: customElements.get(\"bl-icon\") as Constructor<BlIcon>,\n events: {\n onBlLoad: \"bl-load\" as EventName<BlIconLoad>,\n onBlError: \"bl-error\" as EventName<BlIconError>,\n },\n }),\n }))\n);\n\n/**\n * @tag bl-input\n * @summary Baklava Input component\n *\n * @cssproperty [--bl-input-padding-start] Sets the padding start\n * @cssproperty [--bl-input-padding-end] Sets the padding end\n */\nexport const BlInput = React.lazy(() =>\n customElements.whenDefined(\"bl-input\").then(() => ({\n default: createComponent({\n react: React,\n displayName: \"BlInput\",\n tagName: \"bl-input\",\n elementClass: customElements.get(\"bl-input\") as Constructor<BlInput>,\n events: {\n onBlChange: \"bl-change\" as EventName<BlInputChange>,\n onBlInput: \"bl-input\" as EventName<BlInputInput>,\n onBlInvalid: \"bl-invalid\" as EventName<BlInputInvalid>,\n },\n }),\n }))\n);\n\n/**\n * @tag bl-notification\n * @summary Baklava Notification component\n */\nexport const BlNotification = React.lazy(() =>\n customElements.whenDefined(\"bl-notification\").then(() => ({\n default: createComponent({\n react: React,\n displayName: \"BlNotification\",\n tagName: \"bl-notification\",\n elementClass: customElements.get(\"bl-notification\") as Constructor<BlNotification>,\n events: {},\n }),\n }))\n);\n\n/**\n * @tag bl-pagination\n * @summary Baklava Pagination component\n */\nexport const BlPagination = React.lazy(() =>\n customElements.whenDefined(\"bl-pagination\").then(() => ({\n default: createComponent({\n react: React,\n displayName: \"BlPagination\",\n tagName: \"bl-pagination\",\n elementClass: customElements.get(\"bl-pagination\") as Constructor<BlPagination>,\n events: {\n onBlChange: \"bl-change\" as EventName<BlPaginationChange>,\n },\n }),\n }))\n);\n\n/**\n * @tag bl-popover\n * @summary Baklava Popover component\n *\n * @cssproperty [--bl-popover-arrow-display=none] - Sets the display of popovers arrow. Set as `block` to make arrow visible.\n * @cssproperty [--bl-popover-background-color=--bl-color-neutral-full] - Sets the background color of popover.\n * @cssproperty [--bl-popover-border-color=--bl-color-primary-highlight] - Sets the border color of popover.\n * @cssproperty [--bl-popover-border-size=1px] - Sets the border size of popover. You can set it to `0px` to not have a border (if you use a custom background color). Always use with a length unit.\n * @cssproperty [--bl-popover-padding=--bl-size-m] - Sets the padding of popover.\n * @cssproperty [--bl-popover-border-radius=--bl-size-3xs] - Sets the border radius of popover.\n * @cssproperty [--bl-popover-max-width=100vw] - Sets the maximum width of the popover (including border and padding).\n * @cssproperty [--bl-popover-position=fixed] - Sets the position of popover. You can set it to `absolute` if parent element is a fixed positioned element like drawer or dialog.\n */\nexport const BlPopover = React.lazy(() =>\n customElements.whenDefined(\"bl-popover\").then(() => ({\n default: createComponent({\n react: React,\n displayName: \"BlPopover\",\n tagName: \"bl-popover\",\n elementClass: customElements.get(\"bl-popover\") as Constructor<BlPopover>,\n events: {\n onBlPopoverShow: \"bl-popover-show\" as EventName<BlPopoverPopoverShow>,\n onBlPopoverHide: \"bl-popover-hide\" as EventName<BlPopoverPopoverHide>,\n },\n }),\n }))\n);\n\n/**\n * @tag bl-progress-indicator\n * @summary Baklava Progress Indicator component\n *\n * @cssproperty [--bl-progress-indicator-transition-duration=.2s] Duration of the transition of progress bar\n * @property {max} [max=100]\n * @property {number} [value=0]\n */\nexport const BlProgressIndicator = React.lazy(() =>\n customElements.whenDefined(\"bl-progress-indicator\").then(() => ({\n default: createComponent({\n react: React,\n displayName: \"BlProgressIndicator\",\n tagName: \"bl-progress-indicator\",\n elementClass: customElements.get(\"bl-progress-indicator\") as Constructor<BlProgressIndicator>,\n events: {},\n }),\n }))\n);\n\n/**\n * @tag bl-radio-group\n * @summary Baklava Button component\n *\n * @cssproperty [--bl-radio-direction=row] Can be used for showing radio options as columns instead of rows. Options are `row` or `column`\n * @cssproperty [--bl-radio-group-cross-axis-item-alignment=normal] Can be used for aligning radio items on cross axis. Acts same with align-item\n * @cssproperty [--bl-radio-group-cross-axis-content-alignment=normal] Can be used for aligning radio group content on cross axis. Acts same with align-content\n * @cssproperty [--bl-radio-group-main-axis-content-alignment=normal] Can be used for aligning radio group content on main axis. Acts same with justify-content\n */\nexport const BlRadioGroup = React.lazy(() =>\n customElements.whenDefined(\"bl-radio-group\").then(() => ({\n default: createComponent({\n react: React,\n displayName: \"BlRadioGroup\",\n tagName: \"bl-radio-group\",\n elementClass: customElements.get(\"bl-radio-group\") as Constructor<BlRadioGroup>,\n events: {\n onBlRadioChange: \"bl-radio-change\" as EventName<BlRadioGroupRadioChange>,\n },\n }),\n }))\n);\n\n/**\n * @tag bl-select\n * @summary Baklava Select component\n *\n * @cssproperty [--bl-popover-position=fixed] Sets the positioning strategy of select popover. You can set it as `absolute` if you need to show popover relative to its trigger element.\n */\nexport const BlSelect = React.lazy(() =>\n customElements.whenDefined(\"bl-select\").then(() => ({\n default: createComponent({\n react: React,\n displayName: \"BlSelect\",\n tagName: \"bl-select\",\n elementClass: customElements.get(\"bl-select\") as Constructor<BlSelect>,\n events: {\n onBlSelect: \"bl-select\" as EventName<BlSelectSelect>,\n onBlSearch: \"bl-search\" as EventName<BlSelectSearch>,\n },\n }),\n }))\n);\n\n/**\n * @tag bl-spinner\n * @summary Baklava Spinner component\n *\n */\nexport const BlSpinner = React.lazy(() =>\n customElements.whenDefined(\"bl-spinner\").then(() => ({\n default: createComponent({\n react: React,\n displayName: \"BlSpinner\",\n tagName: \"bl-spinner\",\n elementClass: customElements.get(\"bl-spinner\") as Constructor<BlSpinner>,\n events: {},\n }),\n }))\n);\n\n/**\n * @tag bl-split-button\n * @summary Baklava Split Button component\n */\nexport const BlSplitButton = React.lazy(() =>\n customElements.whenDefined(\"bl-split-button\").then(() => ({\n default: createComponent({\n react: React,\n displayName: \"BlSplitButton\",\n tagName: \"bl-split-button\",\n elementClass: customElements.get(\"bl-split-button\") as Constructor<BlSplitButton>,\n events: {\n onBlDropdownOpen: \"bl-dropdown-open\" as EventName<BlSplitButtonDropdownOpen>,\n onBlDropdownClose: \"bl-dropdown-close\" as EventName<BlSplitButtonDropdownClose>,\n onBlClick: \"bl-click\" as EventName<BlSplitButtonClick>,\n },\n }),\n }))\n);\n\n/**\n * @tag bl-switch\n * @summary Baklava Switch component\n *\n * @cssproperty [--bl-switch-color-on=--bl-color-primary] Set the checked color\n * @cssproperty [--bl-switch-color-off=--bl-color-neutral-lighter] Set the unchecked color\n * @cssproperty [--bl-switch-animation-duration=300ms] Set the animation duration of switch toggle\n */\nexport const BlSwitch = React.lazy(() =>\n customElements.whenDefined(\"bl-switch\").then(() => ({\n default: createComponent({\n react: React,\n displayName: \"BlSwitch\",\n tagName: \"bl-switch\",\n elementClass: customElements.get(\"bl-switch\") as Constructor<BlSwitch>,\n events: {\n onBlSwitchToggle: \"bl-switch-toggle\" as EventName<BlSwitchSwitchToggle>,\n },\n }),\n }))\n);\n\n/**\n * @tag bl-tab-group\n * @summary Baklava Tab group component\n */\nexport const BlTabGroup = React.lazy(() =>\n customElements.whenDefined(\"bl-tab-group\").then(() => ({\n default: createComponent({\n react: React,\n displayName: \"BlTabGroup\",\n tagName: \"bl-tab-group\",\n elementClass: customElements.get(\"bl-tab-group\") as Constructor<BlTabGroup>,\n events: {},\n }),\n }))\n);\n\n/**\n * @tag bl-table\n * @summary Baklava Table component\n *\n */\nexport const BlTable = React.lazy(() =>\n customElements.whenDefined(\"bl-table\").then(() => ({\n default: createComponent({\n react: React,\n displayName: \"BlTable\",\n tagName: \"bl-table\",\n elementClass: customElements.get(\"bl-table\") as Constructor<BlTable>,\n events: {\n onBlSortChangeEventName: \"blSortChangeEventName\" as EventName<BlTableSortChangeEventName>,\n onBlRowSelectChangeEventName:\n \"blRowSelectChangeEventName\" as EventName<BlTableRowSelectChangeEventName>,\n },\n }),\n }))\n);\n\n/**\n * @tag bl-textarea\n * @summary Baklava Textarea component\n */\nexport const BlTextarea = React.lazy(() =>\n customElements.whenDefined(\"bl-textarea\").then(() => ({\n default: createComponent({\n react: React,\n displayName: \"BlTextarea\",\n tagName: \"bl-textarea\",\n elementClass: customElements.get(\"bl-textarea\") as Constructor<BlTextarea>,\n events: {\n onBlInput: \"bl-input\" as EventName<BlTextareaInput>,\n onBlChange: \"bl-change\" as EventName<BlTextareaChange>,\n onBlInvalid: \"bl-invalid\" as EventName<BlTextareaInvalid>,\n },\n }),\n }))\n);\n\n/**\n * @tag bl-tooltip\n * @summary Baklava Tooltip component\n * @dependency bl-popover\n *\n * @cssproperty [--bl-tooltip-trigger-display=inline-flex] Set the display of the tooltip trigger.\n */\nexport const BlTooltip = React.lazy(() =>\n customElements.whenDefined(\"bl-tooltip\").then(() => ({\n default: createComponent({\n react: React,\n displayName: \"BlTooltip\",\n tagName: \"bl-tooltip\",\n elementClass: customElements.get(\"bl-tooltip\") as Constructor<BlTooltip>,\n events: {\n onBlTooltipShow: \"bl-tooltip-show\" as EventName<BlTooltipTooltipShow>,\n onBlTooltipHide: \"bl-tooltip-hide\" as EventName<BlTooltipTooltipHide>,\n },\n }),\n }))\n);\n\nexport const BlAccordion = React.lazy(() =>\n customElements.whenDefined(\"bl-accordion\").then(() => ({\n default: createComponent({\n react: React,\n displayName: \"BlAccordion\",\n tagName: \"bl-accordion\",\n elementClass: customElements.get(\"bl-accordion\") as Constructor<BlAccordion>,\n events: {\n onBlToggle: \"bl-toggle\" as EventName<BlAccordionToggle>,\n },\n }),\n }))\n);\n\n/**\n * @tag bl-checkbox\n * @summary Baklava Checkbox component\n */\nexport const BlCheckbox = React.lazy(() =>\n customElements.whenDefined(\"bl-checkbox\").then(() => ({\n default: createComponent({\n react: React,\n displayName: \"BlCheckbox\",\n tagName: \"bl-checkbox\",\n elementClass: customElements.get(\"bl-checkbox\") as Constructor<BlCheckbox>,\n events: {\n onBlCheckboxChange: \"bl-checkbox-change\" as EventName<BlCheckboxCheckboxChange>,\n onBlFocus: \"bl-focus\" as EventName<BlCheckboxFocus>,\n onBlBlur: \"bl-blur\" as EventName<BlCheckboxBlur>,\n onBlCheckboxInvalid: \"bl-checkbox-invalid\" as EventName<BlCheckboxCheckboxInvalid>,\n },\n }),\n }))\n);\n\n/**\n * @tag bl-dropdown-group\n * @summary Baklava Dropdown Group component\n */\nexport const BlDropdownGroup = React.lazy(() =>\n customElements.whenDefined(\"bl-dropdown-group\").then(() => ({\n default: createComponent({\n react: React,\n displayName: \"BlDropdownGroup\",\n tagName: \"bl-dropdown-group\",\n elementClass: customElements.get(\"bl-dropdown-group\") as Constructor<BlDropdownGroup>,\n events: {},\n }),\n }))\n);\n\n/**\n * @tag bl-dropdown-item\n * @summary Baklava Dropdown Item component\n */\nexport const BlDropdownItem = React.lazy(() =>\n customElements.whenDefined(\"bl-dropdown-item\").then(() => ({\n default: createComponent({\n react: React,\n displayName: \"BlDropdownItem\",\n tagName: \"bl-dropdown-item\",\n elementClass: customElements.get(\"bl-dropdown-item\") as Constructor<BlDropdownItem>,\n events: {\n onBlDropdownItemClick:\n \"bl-dropdown-item-click\" as EventName<BlDropdownItemDropdownItemClick>,\n },\n }),\n }))\n);\n\n/**\n * @tag bl-notification-card\n * @summary Baklava Notification Card component\n */\nexport const BlNotificationCard = React.lazy(() =>\n customElements.whenDefined(\"bl-notification-card\").then(() => ({\n default: createComponent({\n react: React,\n displayName: \"BlNotificationCard\",\n tagName: \"bl-notification-card\",\n elementClass: customElements.get(\"bl-notification-card\") as Constructor<BlNotificationCard>,\n events: {\n onBlNotificationCardRequestClose:\n \"bl-notification-card-request-close\" as EventName<BlNotificationCardNotificationCardRequestClose>,\n onBlNotificationCardClose:\n \"bl-notification-card-close\" as EventName<BlNotificationCardNotificationCardClose>,\n },\n }),\n }))\n);\n\n/**\n * @tag bl-radio\n * @summary Baklava Radio Option component\n *\n * @cssprop [--bl-radio-align-items=center] Align items of radio option\n */\nexport const BlRadio = React.lazy(() =>\n customElements.whenDefined(\"bl-radio\").then(() => ({\n default: createComponent({\n react: React,\n displayName: \"BlRadio\",\n tagName: \"bl-radio\",\n elementClass: customElements.get(\"bl-radio\") as Constructor<BlRadio>,\n events: {\n onBlChecked: \"bl-checked\" as EventName<BlRadioChecked>,\n onBlFocus: \"bl-focus\" as EventName<BlRadioFocus>,\n onBlBlur: \"bl-blur\" as EventName<BlRadioBlur>,\n },\n }),\n }))\n);\n\nexport const BlSelectOption = React.lazy(() =>\n customElements.whenDefined(\"bl-select-option\").then(() => ({\n default: createComponent({\n react: React,\n displayName: \"BlSelectOption\",\n tagName: \"bl-select-option\",\n elementClass: customElements.get(\"bl-select-option\") as Constructor<BlSelectOption>,\n events: {\n onBlSelectOption: \"bl-select-option\" as EventName<BlSelectOptionSelectOption>,\n onBlFocus: \"bl-focus\" as EventName<BlSelectOptionFocus>,\n onBlBlur: \"bl-blur\" as EventName<BlSelectOptionBlur>,\n },\n }),\n }))\n);\n\n/**\n * @tag bl-tab\n * @summary Baklava Tab component\n */\nexport const BlTab = React.lazy(() =>\n customElements.whenDefined(\"bl-tab\").then(() => ({\n default: createComponent({\n react: React,\n displayName: \"BlTab\",\n tagName: \"bl-tab\",\n elementClass: customElements.get(\"bl-tab\") as Constructor<BlTab>,\n events: {\n onBlTabSelected: \"bl-tab-selected\" as EventName<BlTabTabSelected>,\n },\n }),\n }))\n);\n\n/**\n * @tag bl-tab-panel\n * @summary Baklava Tab panel component\n */\nexport const BlTabPanel = React.lazy(() =>\n customElements.whenDefined(\"bl-tab-panel\").then(() => ({\n default: createComponent({\n react: React,\n displayName: \"BlTabPanel\",\n tagName: \"bl-tab-panel\",\n elementClass: customElements.get(\"bl-tab-panel\") as Constructor<BlTabPanel>,\n events: {},\n }),\n }))\n);\n\n/**\n * @tag bl-table-body\n * @summary Baklava Table component\n */\nexport const BlTableBody = React.lazy(() =>\n customElements.whenDefined(\"bl-table-body\").then(() => ({\n default: createComponent({\n react: React,\n displayName: \"BlTableBody\",\n tagName: \"bl-table-body\",\n elementClass: customElements.get(\"bl-table-body\") as Constructor<BlTableBody>,\n events: {},\n }),\n }))\n);\n\n/**\n * @tag bl-table-cell\n * @summary Baklava Table component\n */\nexport const BlTableCell = React.lazy(() =>\n customElements.whenDefined(\"bl-table-cell\").then(() => ({\n default: createComponent({\n react: React,\n displayName: \"BlTableCell\",\n tagName: \"bl-table-cell\",\n elementClass: customElements.get(\"bl-table-cell\") as Constructor<BlTableCell>,\n events: {},\n }),\n }))\n);\n\n/**\n * @tag bl-table-header\n * @summary Baklava Table component\n */\nexport const BlTableHeader = React.lazy(() =>\n customElements.whenDefined(\"bl-table-header\").then(() => ({\n default: createComponent({\n react: React,\n displayName: \"BlTableHeader\",\n tagName: \"bl-table-header\",\n elementClass: customElements.get(\"bl-table-header\") as Constructor<BlTableHeader>,\n events: {},\n }),\n }))\n);\n\n/**\n * @tag bl-table-header-cell\n * @summary Baklava Table component\n *\n * @cssproperty [--bl-table-header-cell-width] Set the column width\n * @cssproperty [--bl-table-header-cell-min-width] Set the column min width\n */\nexport const BlTableHeaderCell = React.lazy(() =>\n customElements.whenDefined(\"bl-table-header-cell\").then(() => ({\n default: createComponent({\n react: React,\n displayName: \"BlTableHeaderCell\",\n tagName: \"bl-table-header-cell\",\n elementClass: customElements.get(\"bl-table-header-cell\") as Constructor<BlTableHeaderCell>,\n events: {},\n }),\n }))\n);\n\n/**\n * @tag bl-table-row\n * @summary Baklava Table component\n */\nexport const BlTableRow = React.lazy(() =>\n customElements.whenDefined(\"bl-table-row\").then(() => ({\n default: createComponent({\n react: React,\n displayName: \"BlTableRow\",\n tagName: \"bl-table-row\",\n elementClass: customElements.get(\"bl-table-row\") as Constructor<BlTableRow>,\n events: {},\n }),\n }))\n);\n", "/**\n * @license\n * Copyright 2018 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\n\nimport type React from 'react';\n\nconst NODE_MODE = false;\nconst DEV_MODE = true;\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\ntype DistributiveOmit<T, K extends string | number | symbol> = T extends any\n ? K extends keyof T\n ? Omit<T, K>\n : T\n : T;\ntype PropsWithoutRef<T> = DistributiveOmit<T, 'ref'>;\n\n/**\n * Creates a type to be used for the props of a web component used directly in\n * React JSX.\n *\n * Example:\n *\n * ```ts\n * declare module \"react\" {\n * namespace JSX {\n * interface IntrinsicElements {\n * 'x-foo': WebComponentProps<XFoo>;\n * }\n * }\n * }\n * ```\n */\nexport type WebComponentProps<I extends HTMLElement> = React.DetailedHTMLProps<\n React.HTMLAttributes<I>,\n I\n> &\n ElementProps<I>;\n\n/**\n * Type of the React component wrapping the web component. This is the return\n * type of `createComponent`.\n */\nexport type ReactWebComponent<\n I extends HTMLElement,\n E extends EventNames = {}\n> = React.ForwardRefExoticComponent<\n // TODO(augustjk): Remove and use `React.PropsWithoutRef` when\n // https://github.com/preactjs/preact/issues/4124 is fixed.\n PropsWithoutRef<ComponentProps<I, E>> & React.RefAttributes<I>\n>;\n\n// Props derived from custom element class. Currently has limitations of making\n// all properties optional and also surfaces life cycle methods in autocomplete.\n// TODO(augustjk) Consider omitting keyof LitElement to remove \"internal\"\n// lifecycle methods or allow user to explicitly provide props.\ntype ElementProps<I> = Partial<Omit<I, keyof HTMLElement>>;\n\n// Acceptable props to the React component.\ntype ComponentProps<I, E extends EventNames = {}> = Omit<\n React.HTMLAttributes<I>,\n // Omit keyof E to prefer provided event handler mapping over React's\n // built-in event handler props.\n keyof E\n> &\n EventListeners<E> &\n ElementProps<I>;\n\n/**\n * Type used to cast an event name with an event type when providing the\n * `events` option to `createComponent` for better typing of the event handler\n * prop.\n *\n * Example:\n *\n * ```ts\n * const FooComponent = createCompoennt({\n * ...\n * events: {\n * onfoo: 'foo' as EventName<FooEvent>,\n * }\n * });\n * ```\n *\n * `onfoo` prop will have the type `(e: FooEvent) => void`.\n */\nexport type EventName<T extends Event = Event> = string & {\n __eventType: 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]['__eventType']) => void\n : (e: Event) => void;\n};\n\ninterface Options<I extends HTMLElement, E extends EventNames = {}> {\n react: typeof React;\n tagName: string;\n elementClass: Constructor<I>;\n events?: E;\n displayName?: string;\n}\n\ntype Constructor<T> = {new (): T};\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 // Dirty check event value.\n if (event !== undefined && value !== old) {\n addOrUpdateEventListener(node, event, value as (e?: Event) => void);\n return;\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 // This block is to replicate React's behavior for attributes of native\n // elements where `undefined` or `null` values result in attributes being\n // removed.\n // https://github.com/facebook/react/blob/899cb95f52cc83ab5ca1eb1e268c909d3f0961e7/packages/react-dom-bindings/src/client/DOMPropertyOperations.js#L107-L141\n //\n // It's only needed here for native HTMLElement properties that reflect\n // attributes of the same name but don't have that behavior like \"id\" or\n // \"draggable\".\n if (\n (value === undefined || value === null) &&\n name in HTMLElement.prototype\n ) {\n node.removeAttribute(name);\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 added\n * to the custom element as event listeners.\n *\n * @param options An options bag containing the parameters needed to generate a\n * wrapped web component.\n *\n * @param options.react The React module, typically imported from the `react`\n * npm 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\n * listen. The object keys are the event property names passed in via React\n * props and the object values are the names of the corresponding events\n * generated by the custom element. For example, given `{onactivate:\n * 'activate'}` an event function may be passed via the component's `onactivate`\n * prop and will be 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 const createComponent = <\n I extends HTMLElement,\n E extends EventNames = {}\n>({\n react: React,\n tagName,\n elementClass,\n events,\n displayName,\n}: Options<I, E>): ReactWebComponent<I, E> => {\n const eventProps = new Set(Object.keys(events ?? {}));\n\n if (DEV_MODE) {\n for (const p of reservedReactProperties) {\n if (p in elementClass.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(\n `${tagName} contains property ${p} which is a React reserved ` +\n `property. It will be used by React and not set on the element.`\n );\n }\n }\n }\n\n type Props = ComponentProps<I, E>;\n\n const ReactComponent = React.forwardRef<I, Props>((props, ref) => {\n const prevPropsRef = React.useRef<Props | null>(null);\n const elementRef = React.useRef<I | null>(null);\n\n // Props to be passed to React.createElement\n const reactProps: Record<string, unknown> = {};\n // Props to be set on element with setProperty\n const elementProps: Record<string, unknown> = {};\n\n for (const [k, v] of Object.entries(props)) {\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 reactProps[k === 'className' ? 'class' : k] = v;\n continue;\n }\n\n if (eventProps.has(k) || k in elementClass.prototype) {\n elementProps[k] = v;\n continue;\n }\n\n reactProps[k] = v;\n }\n\n // useLayoutEffect produces warnings during server rendering.\n if (!NODE_MODE) {\n // This one has no dependency array so it'll run on every re-render.\n React.useLayoutEffect(() => {\n if (elementRef.current === null) {\n return;\n }\n for (const prop in elementProps) {\n setProperty(\n elementRef.current,\n prop,\n props[prop],\n prevPropsRef.current ? prevPropsRef.current[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 prevPropsRef.current = props;\n });\n\n // Empty dependency array so this will only run once after first render.\n React.useLayoutEffect(() => {\n elementRef.current?.removeAttribute('defer-hydration');\n }, []);\n }\n\n if (NODE_MODE) {\n // If component is to be server rendered with `@lit-labs/ssr-react`, pass\n // element properties in a special bag to be set by the server-side\n // element renderer.\n if (\n React.createElement.name === 'litPatchedCreateElement' &&\n Object.keys(elementProps).length\n ) {\n // This property needs to remain unminified.\n reactProps['_$litProps$'] = elementProps;\n }\n } else {\n // Suppress hydration warning for server-rendered attributes.\n // This property needs to remain unminified.\n reactProps['suppressHydrationWarning'] = true;\n }\n\n return React.createElement(tagName, {\n ...reactProps,\n ref: (node: I) => {\n elementRef.current = node;\n if (typeof ref === 'function') {\n ref(node);\n } else if (ref !== null) {\n ref.current = node;\n }\n },\n });\n });\n\n ReactComponent.displayName = displayName ?? elementClass.name;\n\n return ReactComponent;\n};\n"],
|
|
5
|
-
"mappings": "4BAEA,OAAOA,MAAW,QC8GlB,IAAMC,EAA0B,IAAIC,IAAI,CACtC,WACA,YACA,MACA,QACA,WAAA,CAAA,EAGIC,EAGF,IAAIC,QAsCFC,EAAc,CAClBC,EACAC,EACAC,EACAC,EACAC,IAAAA,CAEA,IAAMC,EAAQD,GAAAA,KAAAA,OAAAA,EAASH,CAAAA,EAEnBI,IAFmBJ,QAEIC,IAAUC,GAKrCH,EAAKC,CAAAA,EAAmBC,EAWrBA,GAAD,MACAD,KAAQK,YAAYC,WAEpBP,EAAKQ,gBAAgBP,CAAAA,IA1DQ,CAC/BD,EACAK,EACAI,IAAAA,CAEA,IAAIL,EAASP,EAAea,IAAIV,CAAAA,EAC5BI,IAD4BJ,QAE9BH,EAAec,IAAIX,EAAOI,EAAS,IAAIQ,GAAAA,EAEzC,IAAIC,EAAUT,EAAOM,IAAIL,CAAAA,EACrBI,IADqBJ,OAGnBQ,IAFFJ,QAGAL,EAAOO,IAAIN,EAAQQ,EAAU,CAACC,YAAaL,CAAAA,CAAAA,EAC3CT,EAAKe,iBAAiBV,EAAOQ,CAAAA,GAG7BA,EAAQC,YAAcL,EAGfI,IAHeJ,SAIxBL,EAAOY,OAAOX,CAAAA,EACdL,EAAKiB,oBAAoBZ,EAAOQ,CAAAA,EACjC,GAiB0Bb,EAAMK,EAAOH,CAAAA,CAmBvC,EA2BUgB,EAAkB,CAAA,CAI7BC,MAAOC,EACPC,QAAAA,EACAC,aAAAA,EACAlB,OAAAA,EACAmB,YAAAA,CAAAA,IAAAA,CAEA,IAAMC,EAAa,IAAI5B,IAAI6B,OAAOC,KAAKtB,GAAAA,KAAAA,EAAU,CAAA,CAAA,CAAA,EAoB3CuB,EAAiBP,EAAMQ,WAAqB,CAACC,EAAOC,IAAAA,CACxD,IAAMC,EAAeX,EAAMY,OAAqB,IAAA,EAC1CC,EAAab,EAAMY,OAAiB,IAAA,EAGpCE,EAAsC,CAAA,EAEtCC,EAAwC,CAAA,EAE9C,OAAK,CAAOC,EAAGC,CAAAA,IAAMZ,OAAOa,QAAQT,CAAAA,EAC9BlC,EAAwB4C,IAAIH,CAAAA,EAG9BF,EAAWE,IAAM,YAAc,QAAUA,CAAAA,EAAKC,EAI5Cb,EAAWe,IAAIH,CAAAA,GAAMA,KAAKd,EAAaf,UACzC4B,EAAaC,CAAAA,EAAKC,EAIpBH,EAAWE,CAAAA,EAAKC,EAiDlB,OA3CEjB,EAAMoB,gBAAgB,IAAA,CACpB,GAAIP,EAAWQ,UAAY,KAA3B,CAGA,QAAWC,KAAQP,EACjBpC,EACEkC,EAAWQ,QACXC,EACAb,EAAMa,CAAAA,EACNX,EAAaU,QAAUV,EAAaU,QAAQC,CAAAA,EAAAA,OAC5CtC,CAAAA,EAOJ2B,EAAaU,QAAUZ,EAAK,CAAA,EAI9BT,EAAMoB,gBAAgB,IAAA,CAAA,IAAAG,GACpBC,EAAAX,EAAWQ,WAAO,MAAAG,IAAPH,QAAOG,EAAEpC,gBAAgB,iBAAA,CAAkB,EACrD,CAAA,CAAA,EAiBH0B,EAAqC,yBAAA,GAGhCd,EAAMyB,cAAcxB,EAAS,CAAA,GAC/Ba,EACHJ,IAAM9B,GAAAA,CACJiC,EAAWQ,QAAUzC,EACF,OAAR8B,GAAQ,WACjBA,EAAI9B,CAAAA,EACK8B,IAAQ,OACjBA,EAAIW,QAAUzC,EACf,CAAA,CAAA,CAEH,CAAA,EAKJ,OAFA2B,EAAeJ,YAAcA,GAAAA,KAAAA,EAAeD,EAAarB,KAElD0B,CAAc,ED1IhB,IAAMmB,EAAmBC,EAAM,KAAK,IACzC,eAAe,YAAY,oBAAoB,EAAE,KAAK,KAAO,CAC3D,QAAS,EAAgB,CACvB,MAAOA,EACP,YAAa,mBACb,QAAS,qBACT,aAAc,eAAe,IAAI,oBAAoB,EACrD,OAAQ,CAAC,CACX,CAAC,CACH,EAAE,CACJ,EAMaC,EAAUD,EAAM,KAAK,IAChC,eAAe,YAAY,UAAU,EAAE,KAAK,KAAO,CACjD,QAAS,EAAgB,CACvB,MAAOA,EACP,YAAa,UACb,QAAS,WACT,aAAc,eAAe,IAAI,UAAU,EAC3C,OAAQ,CACN,UAAW,UACb,CACF,CAAC,CACH,EAAE,CACJ,EASaE,EAAUF,EAAM,KAAK,IAChC,eAAe,YAAY,UAAU,EAAE,KAAK,KAAO,CACjD,QAAS,EAAgB,CACvB,MAAOA,EACP,YAAa,UACb,QAAS,WACT,aAAc,eAAe,IAAI,UAAU,EAC3C,OAAQ,CAAC,CACX,CAAC,CACH,EAAE,CACJ,EAUaG,EAAWH,EAAM,KAAK,IACjC,eAAe,YAAY,WAAW,EAAE,KAAK,KAAO,CAClD,QAAS,EAAgB,CACvB,MAAOA,EACP,YAAa,WACb,QAAS,YACT,aAAc,eAAe,IAAI,WAAW,EAC5C,OAAQ,CACN,UAAW,UACb,CACF,CAAC,CACH,EAAE,CACJ,EAMaI,EAAaJ,EAAM,KAAK,IACnC,eAAe,YAAY,aAAa,EAAE,KAAK,KAAO,CACpD,QAAS,EAAgB,CACvB,MAAOA,EACP,YAAa,aACb,QAAS,cACT,aAAc,eAAe,IAAI,aAAa,EAC9C,OAAQ,CACN,mBAAoB,oBACtB,CACF,CAAC,CACH,EAAE,CACJ,EAQaK,EAAkBL,EAAM,KAAK,IACxC,eAAe,YAAY,mBAAmB,EAAE,KAAK,KAAO,CAC1D,QAAS,EAAgB,CACvB,MAAOA,EACP,YAAa,kBACb,QAAS,oBACT,aAAc,eAAe,IAAI,mBAAmB,EACpD,OAAQ,CACN,wBACE,2BACF,yBACE,2BACJ,CACF,CAAC,CACH,EAAE,CACJ,
|
|
4
|
+
"sourcesContent": ["/* eslint-disable @typescript-eslint/ban-ts-comment */\n// @ts-nocheck\nimport React from \"react\";\nimport { type EventName, createComponent } from \"@lit-labs/react\";\nimport { ISelectOption } from \"./components/select/bl-select\";\n\nexport type BlAccordionGroup = import(\"./components/accordion-group/bl-accordion-group\").default;\n\nexport type BlAlert = import(\"./components/alert/bl-alert\").default;\n\nexport type BlBadge = import(\"./components/badge/bl-badge\").default;\n\nexport type BlButton = import(\"./components/button/bl-button\").default;\n\nexport type BlCalendar = import(\"./components/calendar/bl-calendar\").default;\n\nexport type BlCheckboxGroup = import(\"./components/checkbox-group/bl-checkbox-group\").default;\n\nexport type BlDialog = import(\"./components/dialog/bl-dialog\").default;\n\nexport type BlDrawer = import(\"./components/drawer/bl-drawer\").default;\n\nexport type BlDropdown = import(\"./components/dropdown/bl-dropdown\").default;\n\nexport type BlIcon = import(\"./components/icon/bl-icon\").default;\n\nexport type BlInput = import(\"./components/input/bl-input\").default;\n\nexport type BlNotification = import(\"./components/notification/bl-notification\").default;\n\nexport type BlPagination = import(\"./components/pagination/bl-pagination\").default;\n\nexport type BlPopover = import(\"./components/popover/bl-popover\").default;\n\nexport type BlProgressIndicator =\n import(\"./components/progress-indicator/bl-progress-indicator\").default;\n\nexport type BlRadioGroup = import(\"./components/radio-group/bl-radio-group\").default;\n\nexport type BlSelect = import(\"./components/select/bl-select\").default;\n\nexport type BlSpinner = import(\"./components/spinner/bl-spinner\").default;\n\nexport type BlSplitButton = import(\"./components/split-button/bl-split-button\").default;\n\nexport type BlSwitch = import(\"./components/switch/bl-switch\").default;\n\nexport type BlTabGroup = import(\"./components/tab-group/bl-tab-group\").default;\n\nexport type BlTable = import(\"./components/table/bl-table\").default;\n\nexport type BlTextarea = import(\"./components/textarea/bl-textarea\").default;\n\nexport type BlTooltip = import(\"./components/tooltip/bl-tooltip\").default;\n\nexport type BlAccordion = import(\"./components/accordion-group/accordion/bl-accordion\").default;\n\nexport type BlCheckbox = import(\"./components/checkbox-group/checkbox/bl-checkbox\").default;\n\nexport type BlDropdownGroup = import(\"./components/dropdown/group/bl-dropdown-group\").default;\n\nexport type BlDropdownItem = import(\"./components/dropdown/item/bl-dropdown-item\").default;\n\nexport type BlNotificationCard =\n import(\"./components/notification/card/bl-notification-card\").default;\n\nexport type BlRadio = import(\"./components/radio-group/radio/bl-radio\").default;\n\nexport type BlSelectOption = import(\"./components/select/option/bl-select-option\").default;\n\nexport type BlTab = import(\"./components/tab-group/tab/bl-tab\").default;\n\nexport type BlTabPanel = import(\"./components/tab-group/tab-panel/bl-tab-panel\").default;\n\nexport type BlTableBody = import(\"./components/table/table-body/bl-table-body\").default;\n\nexport type BlTableCell = import(\"./components/table/table-cell/bl-table-cell\").default;\n\nexport type BlTableHeader = import(\"./components/table/table-header/bl-table-header\").default;\n\nexport type BlTableHeaderCell =\n import(\"./components/table/table-header-cell/bl-table-header-cell\").default;\n\nexport type BlTableRow = import(\"./components/table/table-row/bl-table-row\").default;\n\nexport declare type BlAlertClose = CustomEvent<boolean>;\n\nexport declare type BlButtonClick = CustomEvent<string>;\n\nexport declare type BlCalendarCalendarChange = CustomEvent<Date[]>;\n\nexport declare type BlCheckboxGroupCheckboxGroupChange = CustomEvent<string[]>;\n\nexport declare type BlCheckboxGroupCheckboxGroupInvalid = CustomEvent<ValidityState>;\n\nexport declare type BlDialogDialogOpen = CustomEvent<object>;\n\nexport declare type BlDialogDialogRequestClose = CustomEvent<{\n source: \"close-button\" | \"keyboard\" | \"backdrop\";\n}>;\n\nexport declare type BlDialogDialogClose = CustomEvent<object>;\n\nexport declare type BlDrawerDrawerOpen = CustomEvent<string>;\n\nexport declare type BlDrawerDrawerClose = CustomEvent<string>;\n\nexport declare type BlDropdownDropdownOpen = CustomEvent<string>;\n\nexport declare type BlDropdownDropdownClose = CustomEvent<string>;\n\nexport declare type BlIconLoad = CustomEvent<string>;\n\nexport declare type BlIconError = CustomEvent<string>;\n\nexport declare type BlInputChange = CustomEvent<string>;\n\nexport declare type BlInputInput = CustomEvent<string>;\n\nexport declare type BlInputInvalid = CustomEvent<ValidityState>;\n\nexport declare type BlPaginationChange = CustomEvent<{\n selectedPage: number;\n prevPage: number;\n itemsPerPage: number;\n}>;\n\nexport declare type BlPopoverPopoverShow = CustomEvent<string>;\n\nexport declare type BlPopoverPopoverHide = CustomEvent<string>;\n\nexport declare type BlRadioGroupRadioChange = CustomEvent<string>;\n\nexport declare type BlSelectSelect = CustomEvent<ISelectOption[] | ISelectOption>;\n\nexport declare type BlSelectSearch = CustomEvent<string>;\n\nexport declare type BlSplitButtonDropdownOpen = CustomEvent<string>;\n\nexport declare type BlSplitButtonDropdownClose = CustomEvent<string>;\n\nexport declare type BlSplitButtonClick = CustomEvent<string>;\n\nexport declare type BlSwitchSwitchToggle = CustomEvent<boolean>;\n\nexport declare type BlTableSortChangeEventName = CustomEvent<string[]>;\n\nexport declare type BlTableRowSelectChangeEventName = CustomEvent<string[]>;\n\nexport declare type BlTextareaInput = CustomEvent<string>;\n\nexport declare type BlTextareaChange = CustomEvent<string>;\n\nexport declare type BlTextareaInvalid = CustomEvent<ValidityState>;\n\nexport declare type BlTooltipTooltipShow = CustomEvent<string>;\n\nexport declare type BlTooltipTooltipHide = CustomEvent<string>;\n\nexport declare type BlAccordionToggle = CustomEvent<boolean>;\n\nexport declare type BlCheckboxCheckboxChange = CustomEvent<boolean>;\n\nexport declare type BlCheckboxFocus = CustomEvent<string>;\n\nexport declare type BlCheckboxBlur = CustomEvent<string>;\n\nexport declare type BlCheckboxCheckboxInvalid = CustomEvent<ValidityState>;\n\nexport declare type BlDropdownItemDropdownItemClick = CustomEvent<string>;\n\nexport declare type BlNotificationCardNotificationCardRequestClose = CustomEvent<{\n source: \"duration-ended\" | \"close-button\";\n}>;\n\nexport declare type BlNotificationCardNotificationCardClose = CustomEvent<{\n source: \"duration-ended\" | \"close-button\";\n}>;\n\nexport declare type BlRadioChecked = CustomEvent<string>;\n\nexport declare type BlRadioFocus = CustomEvent<string>;\n\nexport declare type BlRadioBlur = CustomEvent<string>;\n\nexport declare type BlSelectOptionSelectOption = CustomEvent<string | null>;\n\nexport declare type BlSelectOptionFocus = CustomEvent<string | null>;\n\nexport declare type BlSelectOptionBlur = CustomEvent<string | null>;\n\nexport declare type BlTabTabSelected = CustomEvent<string>;\n\ntype Constructor<T> = { new (): T };\n\nexport const BlAccordionGroup = React.lazy(() =>\n customElements.whenDefined(\"bl-accordion-group\").then(() => ({\n default: createComponent({\n react: React,\n displayName: \"BlAccordionGroup\",\n tagName: \"bl-accordion-group\",\n elementClass: customElements.get(\"bl-accordion-group\") as Constructor<BlAccordionGroup>,\n events: {},\n }),\n }))\n);\n\n/**\n * @tag bl-alert\n * @summary Baklava Alert component\n */\nexport const BlAlert = React.lazy(() =>\n customElements.whenDefined(\"bl-alert\").then(() => ({\n default: createComponent({\n react: React,\n displayName: \"BlAlert\",\n tagName: \"bl-alert\",\n elementClass: customElements.get(\"bl-alert\") as Constructor<BlAlert>,\n events: {\n onBlClose: \"bl-close\" as EventName<BlAlertClose>,\n },\n }),\n }))\n);\n\n/**\n * @tag bl-badge\n * @summary Baklava Badge component\n *\n * @cssproperty [--bl-badge-bg-color=--bl-color-primary-contrast] Sets the background color of badge\n * @cssproperty [--bl-badge-color=--bl-color-primary] Sets the color of badge\n */\nexport const BlBadge = React.lazy(() =>\n customElements.whenDefined(\"bl-badge\").then(() => ({\n default: createComponent({\n react: React,\n displayName: \"BlBadge\",\n tagName: \"bl-badge\",\n elementClass: customElements.get(\"bl-badge\") as Constructor<BlBadge>,\n events: {},\n }),\n }))\n);\n\n/**\n * @tag bl-button\n * @summary Baklava Button component\n *\n * @cssproperty [--bl-button-display=inline-block] Sets the display property of button\n * @cssproperty [--bl-button-justify=center] Sets the justify-content property of button\n *\n */\nexport const BlButton = React.lazy(() =>\n customElements.whenDefined(\"bl-button\").then(() => ({\n default: createComponent({\n react: React,\n displayName: \"BlButton\",\n tagName: \"bl-button\",\n elementClass: customElements.get(\"bl-button\") as Constructor<BlButton>,\n events: {\n onBlClick: \"bl-click\" as EventName<BlButtonClick>,\n },\n }),\n }))\n);\n\n/**\n * @tag bl-calendar\n * @summary Baklava Calendar component\n **/\nexport const BlCalendar = React.lazy(() =>\n customElements.whenDefined(\"bl-calendar\").then(() => ({\n default: createComponent({\n react: React,\n displayName: \"BlCalendar\",\n tagName: \"bl-calendar\",\n elementClass: customElements.get(\"bl-calendar\") as Constructor<BlCalendar>,\n events: {\n onBlCalendarChange: \"bl-calendar-change\" as EventName<BlCalendarCalendarChange>,\n },\n }),\n }))\n);\n\n/**\n * @tag bl-checkbox-group\n * @summary Baklava Button component\n *\n * @cssproperty [--bl-checkbox-direction=row] Can be used for showing checkbox options as columns instead of rows. Options are `row` or `column`\n */\nexport const BlCheckboxGroup = React.lazy(() =>\n customElements.whenDefined(\"bl-checkbox-group\").then(() => ({\n default: createComponent({\n react: React,\n displayName: \"BlCheckboxGroup\",\n tagName: \"bl-checkbox-group\",\n elementClass: customElements.get(\"bl-checkbox-group\") as Constructor<BlCheckboxGroup>,\n events: {\n onBlCheckboxGroupChange:\n \"bl-checkbox-group-change\" as EventName<BlCheckboxGroupCheckboxGroupChange>,\n onBlCheckboxGroupInvalid:\n \"bl-checkbox-group-invalid\" as EventName<BlCheckboxGroupCheckboxGroupInvalid>,\n },\n }),\n }))\n);\n\n/**\n * @tag bl-dialog\n * @summary Baklava Dialog component\n *\n * @cssproperty [--bl-dialog-width=auto] Sets the width of the dialog content\n * @cssproperty [--bl-dialog-caption-line-clamp=1] Sets the line clamp of the caption\n */\nexport const BlDialog = React.lazy(() =>\n customElements.whenDefined(\"bl-dialog\").then(() => ({\n default: createComponent({\n react: React,\n displayName: \"BlDialog\",\n tagName: \"bl-dialog\",\n elementClass: customElements.get(\"bl-dialog\") as Constructor<BlDialog>,\n events: {\n onBlDialogOpen: \"bl-dialog-open\" as EventName<BlDialogDialogOpen>,\n onBlDialogRequestClose: \"bl-dialog-request-close\" as EventName<BlDialogDialogRequestClose>,\n onBlDialogClose: \"bl-dialog-close\" as EventName<BlDialogDialogClose>,\n },\n }),\n }))\n);\n\n/**\n * @tag bl-drawer\n * @summary Baklava Drawer component\n *\n * @cssproperty [--bl-drawer-animation-duration=250ms] Drawer slide in animation duration\n */\nexport const BlDrawer = React.lazy(() =>\n customElements.whenDefined(\"bl-drawer\").then(() => ({\n default: createComponent({\n react: React,\n displayName: \"BlDrawer\",\n tagName: \"bl-drawer\",\n elementClass: customElements.get(\"bl-drawer\") as Constructor<BlDrawer>,\n events: {\n onBlDrawerOpen: \"bl-drawer-open\" as EventName<BlDrawerDrawerOpen>,\n onBlDrawerClose: \"bl-drawer-close\" as EventName<BlDrawerDrawerClose>,\n },\n }),\n }))\n);\n\n/**\n * @tag bl-dropdown\n * @summary Baklava Dropdown component\n */\nexport const BlDropdown = React.lazy(() =>\n customElements.whenDefined(\"bl-dropdown\").then(() => ({\n default: createComponent({\n react: React,\n displayName: \"BlDropdown\",\n tagName: \"bl-dropdown\",\n elementClass: customElements.get(\"bl-dropdown\") as Constructor<BlDropdown>,\n events: {\n onBlDropdownOpen: \"bl-dropdown-open\" as EventName<BlDropdownDropdownOpen>,\n onBlDropdownClose: \"bl-dropdown-close\" as EventName<BlDropdownDropdownClose>,\n },\n }),\n }))\n);\n\n/**\n * @tag bl-icon\n * @summary Baklava Icon component\n *\n * @cssproperty [font-size] Setting size of icon. Default is current font size in DOM place\n * @cssproperty [color=currentColor] Setting color of icon\n */\nexport const BlIcon = React.lazy(() =>\n customElements.whenDefined(\"bl-icon\").then(() => ({\n default: createComponent({\n react: React,\n displayName: \"BlIcon\",\n tagName: \"bl-icon\",\n elementClass: customElements.get(\"bl-icon\") as Constructor<BlIcon>,\n events: {\n onBlLoad: \"bl-load\" as EventName<BlIconLoad>,\n onBlError: \"bl-error\" as EventName<BlIconError>,\n },\n }),\n }))\n);\n\n/**\n * @tag bl-input\n * @summary Baklava Input component\n *\n * @cssproperty [--bl-input-padding-start] Sets the padding start\n * @cssproperty [--bl-input-padding-end] Sets the padding end\n */\nexport const BlInput = React.lazy(() =>\n customElements.whenDefined(\"bl-input\").then(() => ({\n default: createComponent({\n react: React,\n displayName: \"BlInput\",\n tagName: \"bl-input\",\n elementClass: customElements.get(\"bl-input\") as Constructor<BlInput>,\n events: {\n onBlChange: \"bl-change\" as EventName<BlInputChange>,\n onBlInput: \"bl-input\" as EventName<BlInputInput>,\n onBlInvalid: \"bl-invalid\" as EventName<BlInputInvalid>,\n },\n }),\n }))\n);\n\n/**\n * @tag bl-notification\n * @summary Baklava Notification component\n */\nexport const BlNotification = React.lazy(() =>\n customElements.whenDefined(\"bl-notification\").then(() => ({\n default: createComponent({\n react: React,\n displayName: \"BlNotification\",\n tagName: \"bl-notification\",\n elementClass: customElements.get(\"bl-notification\") as Constructor<BlNotification>,\n events: {},\n }),\n }))\n);\n\n/**\n * @tag bl-pagination\n * @summary Baklava Pagination component\n */\nexport const BlPagination = React.lazy(() =>\n customElements.whenDefined(\"bl-pagination\").then(() => ({\n default: createComponent({\n react: React,\n displayName: \"BlPagination\",\n tagName: \"bl-pagination\",\n elementClass: customElements.get(\"bl-pagination\") as Constructor<BlPagination>,\n events: {\n onBlChange: \"bl-change\" as EventName<BlPaginationChange>,\n },\n }),\n }))\n);\n\n/**\n * @tag bl-popover\n * @summary Baklava Popover component\n *\n * @cssproperty [--bl-popover-arrow-display=none] - Sets the display of popovers arrow. Set as `block` to make arrow visible.\n * @cssproperty [--bl-popover-background-color=--bl-color-neutral-full] - Sets the background color of popover.\n * @cssproperty [--bl-popover-border-color=--bl-color-primary-highlight] - Sets the border color of popover.\n * @cssproperty [--bl-popover-border-size=1px] - Sets the border size of popover. You can set it to `0px` to not have a border (if you use a custom background color). Always use with a length unit.\n * @cssproperty [--bl-popover-padding=--bl-size-m] - Sets the padding of popover.\n * @cssproperty [--bl-popover-border-radius=--bl-size-3xs] - Sets the border radius of popover.\n * @cssproperty [--bl-popover-max-width=100vw] - Sets the maximum width of the popover (including border and padding).\n * @cssproperty [--bl-popover-position=fixed] - Sets the position of popover. You can set it to `absolute` if parent element is a fixed positioned element like drawer or dialog.\n */\nexport const BlPopover = React.lazy(() =>\n customElements.whenDefined(\"bl-popover\").then(() => ({\n default: createComponent({\n react: React,\n displayName: \"BlPopover\",\n tagName: \"bl-popover\",\n elementClass: customElements.get(\"bl-popover\") as Constructor<BlPopover>,\n events: {\n onBlPopoverShow: \"bl-popover-show\" as EventName<BlPopoverPopoverShow>,\n onBlPopoverHide: \"bl-popover-hide\" as EventName<BlPopoverPopoverHide>,\n },\n }),\n }))\n);\n\n/**\n * @tag bl-progress-indicator\n * @summary Baklava Progress Indicator component\n *\n * @cssproperty [--bl-progress-indicator-transition-duration=.2s] Duration of the transition of progress bar\n * @property {max} [max=100]\n * @property {number} [value=0]\n */\nexport const BlProgressIndicator = React.lazy(() =>\n customElements.whenDefined(\"bl-progress-indicator\").then(() => ({\n default: createComponent({\n react: React,\n displayName: \"BlProgressIndicator\",\n tagName: \"bl-progress-indicator\",\n elementClass: customElements.get(\"bl-progress-indicator\") as Constructor<BlProgressIndicator>,\n events: {},\n }),\n }))\n);\n\n/**\n * @tag bl-radio-group\n * @summary Baklava Button component\n *\n * @cssproperty [--bl-radio-direction=row] Can be used for showing radio options as columns instead of rows. Options are `row` or `column`\n * @cssproperty [--bl-radio-group-cross-axis-item-alignment=normal] Can be used for aligning radio items on cross axis. Acts same with align-item\n * @cssproperty [--bl-radio-group-cross-axis-content-alignment=normal] Can be used for aligning radio group content on cross axis. Acts same with align-content\n * @cssproperty [--bl-radio-group-main-axis-content-alignment=normal] Can be used for aligning radio group content on main axis. Acts same with justify-content\n */\nexport const BlRadioGroup = React.lazy(() =>\n customElements.whenDefined(\"bl-radio-group\").then(() => ({\n default: createComponent({\n react: React,\n displayName: \"BlRadioGroup\",\n tagName: \"bl-radio-group\",\n elementClass: customElements.get(\"bl-radio-group\") as Constructor<BlRadioGroup>,\n events: {\n onBlRadioChange: \"bl-radio-change\" as EventName<BlRadioGroupRadioChange>,\n },\n }),\n }))\n);\n\n/**\n * @tag bl-select\n * @summary Baklava Select component\n *\n * @cssproperty [--bl-popover-position=fixed] Sets the positioning strategy of select popover. You can set it as `absolute` if you need to show popover relative to its trigger element.\n */\nexport const BlSelect = React.lazy(() =>\n customElements.whenDefined(\"bl-select\").then(() => ({\n default: createComponent({\n react: React,\n displayName: \"BlSelect\",\n tagName: \"bl-select\",\n elementClass: customElements.get(\"bl-select\") as Constructor<BlSelect>,\n events: {\n onBlSelect: \"bl-select\" as EventName<BlSelectSelect>,\n onBlSearch: \"bl-search\" as EventName<BlSelectSearch>,\n },\n }),\n }))\n);\n\n/**\n * @tag bl-spinner\n * @summary Baklava Spinner component\n *\n */\nexport const BlSpinner = React.lazy(() =>\n customElements.whenDefined(\"bl-spinner\").then(() => ({\n default: createComponent({\n react: React,\n displayName: \"BlSpinner\",\n tagName: \"bl-spinner\",\n elementClass: customElements.get(\"bl-spinner\") as Constructor<BlSpinner>,\n events: {},\n }),\n }))\n);\n\n/**\n * @tag bl-split-button\n * @summary Baklava Split Button component\n */\nexport const BlSplitButton = React.lazy(() =>\n customElements.whenDefined(\"bl-split-button\").then(() => ({\n default: createComponent({\n react: React,\n displayName: \"BlSplitButton\",\n tagName: \"bl-split-button\",\n elementClass: customElements.get(\"bl-split-button\") as Constructor<BlSplitButton>,\n events: {\n onBlDropdownOpen: \"bl-dropdown-open\" as EventName<BlSplitButtonDropdownOpen>,\n onBlDropdownClose: \"bl-dropdown-close\" as EventName<BlSplitButtonDropdownClose>,\n onBlClick: \"bl-click\" as EventName<BlSplitButtonClick>,\n },\n }),\n }))\n);\n\n/**\n * @tag bl-switch\n * @summary Baklava Switch component\n *\n * @cssproperty [--bl-switch-color-on=--bl-color-primary] Set the checked color\n * @cssproperty [--bl-switch-color-off=--bl-color-neutral-lighter] Set the unchecked color\n * @cssproperty [--bl-switch-animation-duration=300ms] Set the animation duration of switch toggle\n */\nexport const BlSwitch = React.lazy(() =>\n customElements.whenDefined(\"bl-switch\").then(() => ({\n default: createComponent({\n react: React,\n displayName: \"BlSwitch\",\n tagName: \"bl-switch\",\n elementClass: customElements.get(\"bl-switch\") as Constructor<BlSwitch>,\n events: {\n onBlSwitchToggle: \"bl-switch-toggle\" as EventName<BlSwitchSwitchToggle>,\n },\n }),\n }))\n);\n\n/**\n * @tag bl-tab-group\n * @summary Baklava Tab group component\n */\nexport const BlTabGroup = React.lazy(() =>\n customElements.whenDefined(\"bl-tab-group\").then(() => ({\n default: createComponent({\n react: React,\n displayName: \"BlTabGroup\",\n tagName: \"bl-tab-group\",\n elementClass: customElements.get(\"bl-tab-group\") as Constructor<BlTabGroup>,\n events: {},\n }),\n }))\n);\n\n/**\n * @tag bl-table\n * @summary Baklava Table component\n *\n */\nexport const BlTable = React.lazy(() =>\n customElements.whenDefined(\"bl-table\").then(() => ({\n default: createComponent({\n react: React,\n displayName: \"BlTable\",\n tagName: \"bl-table\",\n elementClass: customElements.get(\"bl-table\") as Constructor<BlTable>,\n events: {\n onBlSortChangeEventName: \"blSortChangeEventName\" as EventName<BlTableSortChangeEventName>,\n onBlRowSelectChangeEventName:\n \"blRowSelectChangeEventName\" as EventName<BlTableRowSelectChangeEventName>,\n },\n }),\n }))\n);\n\n/**\n * @tag bl-textarea\n * @summary Baklava Textarea component\n */\nexport const BlTextarea = React.lazy(() =>\n customElements.whenDefined(\"bl-textarea\").then(() => ({\n default: createComponent({\n react: React,\n displayName: \"BlTextarea\",\n tagName: \"bl-textarea\",\n elementClass: customElements.get(\"bl-textarea\") as Constructor<BlTextarea>,\n events: {\n onBlInput: \"bl-input\" as EventName<BlTextareaInput>,\n onBlChange: \"bl-change\" as EventName<BlTextareaChange>,\n onBlInvalid: \"bl-invalid\" as EventName<BlTextareaInvalid>,\n },\n }),\n }))\n);\n\n/**\n * @tag bl-tooltip\n * @summary Baklava Tooltip component\n * @dependency bl-popover\n *\n * @cssproperty [--bl-tooltip-trigger-display=inline-flex] Set the display of the tooltip trigger.\n */\nexport const BlTooltip = React.lazy(() =>\n customElements.whenDefined(\"bl-tooltip\").then(() => ({\n default: createComponent({\n react: React,\n displayName: \"BlTooltip\",\n tagName: \"bl-tooltip\",\n elementClass: customElements.get(\"bl-tooltip\") as Constructor<BlTooltip>,\n events: {\n onBlTooltipShow: \"bl-tooltip-show\" as EventName<BlTooltipTooltipShow>,\n onBlTooltipHide: \"bl-tooltip-hide\" as EventName<BlTooltipTooltipHide>,\n },\n }),\n }))\n);\n\nexport const BlAccordion = React.lazy(() =>\n customElements.whenDefined(\"bl-accordion\").then(() => ({\n default: createComponent({\n react: React,\n displayName: \"BlAccordion\",\n tagName: \"bl-accordion\",\n elementClass: customElements.get(\"bl-accordion\") as Constructor<BlAccordion>,\n events: {\n onBlToggle: \"bl-toggle\" as EventName<BlAccordionToggle>,\n },\n }),\n }))\n);\n\n/**\n * @tag bl-checkbox\n * @summary Baklava Checkbox component\n */\nexport const BlCheckbox = React.lazy(() =>\n customElements.whenDefined(\"bl-checkbox\").then(() => ({\n default: createComponent({\n react: React,\n displayName: \"BlCheckbox\",\n tagName: \"bl-checkbox\",\n elementClass: customElements.get(\"bl-checkbox\") as Constructor<BlCheckbox>,\n events: {\n onBlCheckboxChange: \"bl-checkbox-change\" as EventName<BlCheckboxCheckboxChange>,\n onBlFocus: \"bl-focus\" as EventName<BlCheckboxFocus>,\n onBlBlur: \"bl-blur\" as EventName<BlCheckboxBlur>,\n onBlCheckboxInvalid: \"bl-checkbox-invalid\" as EventName<BlCheckboxCheckboxInvalid>,\n },\n }),\n }))\n);\n\n/**\n * @tag bl-dropdown-group\n * @summary Baklava Dropdown Group component\n */\nexport const BlDropdownGroup = React.lazy(() =>\n customElements.whenDefined(\"bl-dropdown-group\").then(() => ({\n default: createComponent({\n react: React,\n displayName: \"BlDropdownGroup\",\n tagName: \"bl-dropdown-group\",\n elementClass: customElements.get(\"bl-dropdown-group\") as Constructor<BlDropdownGroup>,\n events: {},\n }),\n }))\n);\n\n/**\n * @tag bl-dropdown-item\n * @summary Baklava Dropdown Item component\n */\nexport const BlDropdownItem = React.lazy(() =>\n customElements.whenDefined(\"bl-dropdown-item\").then(() => ({\n default: createComponent({\n react: React,\n displayName: \"BlDropdownItem\",\n tagName: \"bl-dropdown-item\",\n elementClass: customElements.get(\"bl-dropdown-item\") as Constructor<BlDropdownItem>,\n events: {\n onBlDropdownItemClick:\n \"bl-dropdown-item-click\" as EventName<BlDropdownItemDropdownItemClick>,\n },\n }),\n }))\n);\n\n/**\n * @tag bl-notification-card\n * @summary Baklava Notification Card component\n */\nexport const BlNotificationCard = React.lazy(() =>\n customElements.whenDefined(\"bl-notification-card\").then(() => ({\n default: createComponent({\n react: React,\n displayName: \"BlNotificationCard\",\n tagName: \"bl-notification-card\",\n elementClass: customElements.get(\"bl-notification-card\") as Constructor<BlNotificationCard>,\n events: {\n onBlNotificationCardRequestClose:\n \"bl-notification-card-request-close\" as EventName<BlNotificationCardNotificationCardRequestClose>,\n onBlNotificationCardClose:\n \"bl-notification-card-close\" as EventName<BlNotificationCardNotificationCardClose>,\n },\n }),\n }))\n);\n\n/**\n * @tag bl-radio\n * @summary Baklava Radio Option component\n *\n * @cssprop [--bl-radio-align-items=center] Align items of radio option\n */\nexport const BlRadio = React.lazy(() =>\n customElements.whenDefined(\"bl-radio\").then(() => ({\n default: createComponent({\n react: React,\n displayName: \"BlRadio\",\n tagName: \"bl-radio\",\n elementClass: customElements.get(\"bl-radio\") as Constructor<BlRadio>,\n events: {\n onBlChecked: \"bl-checked\" as EventName<BlRadioChecked>,\n onBlFocus: \"bl-focus\" as EventName<BlRadioFocus>,\n onBlBlur: \"bl-blur\" as EventName<BlRadioBlur>,\n },\n }),\n }))\n);\n\nexport const BlSelectOption = React.lazy(() =>\n customElements.whenDefined(\"bl-select-option\").then(() => ({\n default: createComponent({\n react: React,\n displayName: \"BlSelectOption\",\n tagName: \"bl-select-option\",\n elementClass: customElements.get(\"bl-select-option\") as Constructor<BlSelectOption>,\n events: {\n onBlSelectOption: \"bl-select-option\" as EventName<BlSelectOptionSelectOption>,\n onBlFocus: \"bl-focus\" as EventName<BlSelectOptionFocus>,\n onBlBlur: \"bl-blur\" as EventName<BlSelectOptionBlur>,\n },\n }),\n }))\n);\n\n/**\n * @tag bl-tab\n * @summary Baklava Tab component\n */\nexport const BlTab = React.lazy(() =>\n customElements.whenDefined(\"bl-tab\").then(() => ({\n default: createComponent({\n react: React,\n displayName: \"BlTab\",\n tagName: \"bl-tab\",\n elementClass: customElements.get(\"bl-tab\") as Constructor<BlTab>,\n events: {\n onBlTabSelected: \"bl-tab-selected\" as EventName<BlTabTabSelected>,\n },\n }),\n }))\n);\n\n/**\n * @tag bl-tab-panel\n * @summary Baklava Tab panel component\n */\nexport const BlTabPanel = React.lazy(() =>\n customElements.whenDefined(\"bl-tab-panel\").then(() => ({\n default: createComponent({\n react: React,\n displayName: \"BlTabPanel\",\n tagName: \"bl-tab-panel\",\n elementClass: customElements.get(\"bl-tab-panel\") as Constructor<BlTabPanel>,\n events: {},\n }),\n }))\n);\n\n/**\n * @tag bl-table-body\n * @summary Baklava Table component\n */\nexport const BlTableBody = React.lazy(() =>\n customElements.whenDefined(\"bl-table-body\").then(() => ({\n default: createComponent({\n react: React,\n displayName: \"BlTableBody\",\n tagName: \"bl-table-body\",\n elementClass: customElements.get(\"bl-table-body\") as Constructor<BlTableBody>,\n events: {},\n }),\n }))\n);\n\n/**\n * @tag bl-table-cell\n * @summary Baklava Table component\n */\nexport const BlTableCell = React.lazy(() =>\n customElements.whenDefined(\"bl-table-cell\").then(() => ({\n default: createComponent({\n react: React,\n displayName: \"BlTableCell\",\n tagName: \"bl-table-cell\",\n elementClass: customElements.get(\"bl-table-cell\") as Constructor<BlTableCell>,\n events: {},\n }),\n }))\n);\n\n/**\n * @tag bl-table-header\n * @summary Baklava Table component\n */\nexport const BlTableHeader = React.lazy(() =>\n customElements.whenDefined(\"bl-table-header\").then(() => ({\n default: createComponent({\n react: React,\n displayName: \"BlTableHeader\",\n tagName: \"bl-table-header\",\n elementClass: customElements.get(\"bl-table-header\") as Constructor<BlTableHeader>,\n events: {},\n }),\n }))\n);\n\n/**\n * @tag bl-table-header-cell\n * @summary Baklava Table component\n *\n * @cssproperty [--bl-table-header-cell-width] Set the column width\n * @cssproperty [--bl-table-header-cell-min-width] Set the column min width\n */\nexport const BlTableHeaderCell = React.lazy(() =>\n customElements.whenDefined(\"bl-table-header-cell\").then(() => ({\n default: createComponent({\n react: React,\n displayName: \"BlTableHeaderCell\",\n tagName: \"bl-table-header-cell\",\n elementClass: customElements.get(\"bl-table-header-cell\") as Constructor<BlTableHeaderCell>,\n events: {},\n }),\n }))\n);\n\n/**\n * @tag bl-table-row\n * @summary Baklava Table component\n */\nexport const BlTableRow = React.lazy(() =>\n customElements.whenDefined(\"bl-table-row\").then(() => ({\n default: createComponent({\n react: React,\n displayName: \"BlTableRow\",\n tagName: \"bl-table-row\",\n elementClass: customElements.get(\"bl-table-row\") as Constructor<BlTableRow>,\n events: {},\n }),\n }))\n);\n", "/**\n * @license\n * Copyright 2018 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\n\nimport type React from 'react';\n\nconst NODE_MODE = false;\nconst DEV_MODE = true;\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\ntype DistributiveOmit<T, K extends string | number | symbol> = T extends any\n ? K extends keyof T\n ? Omit<T, K>\n : T\n : T;\ntype PropsWithoutRef<T> = DistributiveOmit<T, 'ref'>;\n\n/**\n * Creates a type to be used for the props of a web component used directly in\n * React JSX.\n *\n * Example:\n *\n * ```ts\n * declare module \"react\" {\n * namespace JSX {\n * interface IntrinsicElements {\n * 'x-foo': WebComponentProps<XFoo>;\n * }\n * }\n * }\n * ```\n */\nexport type WebComponentProps<I extends HTMLElement> = React.DetailedHTMLProps<\n React.HTMLAttributes<I>,\n I\n> &\n ElementProps<I>;\n\n/**\n * Type of the React component wrapping the web component. This is the return\n * type of `createComponent`.\n */\nexport type ReactWebComponent<\n I extends HTMLElement,\n E extends EventNames = {}\n> = React.ForwardRefExoticComponent<\n // TODO(augustjk): Remove and use `React.PropsWithoutRef` when\n // https://github.com/preactjs/preact/issues/4124 is fixed.\n PropsWithoutRef<ComponentProps<I, E>> & React.RefAttributes<I>\n>;\n\n// Props derived from custom element class. Currently has limitations of making\n// all properties optional and also surfaces life cycle methods in autocomplete.\n// TODO(augustjk) Consider omitting keyof LitElement to remove \"internal\"\n// lifecycle methods or allow user to explicitly provide props.\ntype ElementProps<I> = Partial<Omit<I, keyof HTMLElement>>;\n\n// Acceptable props to the React component.\ntype ComponentProps<I, E extends EventNames = {}> = Omit<\n React.HTMLAttributes<I>,\n // Omit keyof E to prefer provided event handler mapping over React's\n // built-in event handler props.\n keyof E\n> &\n EventListeners<E> &\n ElementProps<I>;\n\n/**\n * Type used to cast an event name with an event type when providing the\n * `events` option to `createComponent` for better typing of the event handler\n * prop.\n *\n * Example:\n *\n * ```ts\n * const FooComponent = createCompoennt({\n * ...\n * events: {\n * onfoo: 'foo' as EventName<FooEvent>,\n * }\n * });\n * ```\n *\n * `onfoo` prop will have the type `(e: FooEvent) => void`.\n */\nexport type EventName<T extends Event = Event> = string & {\n __eventType: 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]['__eventType']) => void\n : (e: Event) => void;\n};\n\ninterface Options<I extends HTMLElement, E extends EventNames = {}> {\n react: typeof React;\n tagName: string;\n elementClass: Constructor<I>;\n events?: E;\n displayName?: string;\n}\n\ntype Constructor<T> = {new (): T};\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 // Dirty check event value.\n if (event !== undefined && value !== old) {\n addOrUpdateEventListener(node, event, value as (e?: Event) => void);\n return;\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 // This block is to replicate React's behavior for attributes of native\n // elements where `undefined` or `null` values result in attributes being\n // removed.\n // https://github.com/facebook/react/blob/899cb95f52cc83ab5ca1eb1e268c909d3f0961e7/packages/react-dom-bindings/src/client/DOMPropertyOperations.js#L107-L141\n //\n // It's only needed here for native HTMLElement properties that reflect\n // attributes of the same name but don't have that behavior like \"id\" or\n // \"draggable\".\n if (\n (value === undefined || value === null) &&\n name in HTMLElement.prototype\n ) {\n node.removeAttribute(name);\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 added\n * to the custom element as event listeners.\n *\n * @param options An options bag containing the parameters needed to generate a\n * wrapped web component.\n *\n * @param options.react The React module, typically imported from the `react`\n * npm 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\n * listen. The object keys are the event property names passed in via React\n * props and the object values are the names of the corresponding events\n * generated by the custom element. For example, given `{onactivate:\n * 'activate'}` an event function may be passed via the component's `onactivate`\n * prop and will be 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 const createComponent = <\n I extends HTMLElement,\n E extends EventNames = {}\n>({\n react: React,\n tagName,\n elementClass,\n events,\n displayName,\n}: Options<I, E>): ReactWebComponent<I, E> => {\n const eventProps = new Set(Object.keys(events ?? {}));\n\n if (DEV_MODE) {\n for (const p of reservedReactProperties) {\n if (p in elementClass.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(\n `${tagName} contains property ${p} which is a React reserved ` +\n `property. It will be used by React and not set on the element.`\n );\n }\n }\n }\n\n type Props = ComponentProps<I, E>;\n\n const ReactComponent = React.forwardRef<I, Props>((props, ref) => {\n const prevPropsRef = React.useRef<Props | null>(null);\n const elementRef = React.useRef<I | null>(null);\n\n // Props to be passed to React.createElement\n const reactProps: Record<string, unknown> = {};\n // Props to be set on element with setProperty\n const elementProps: Record<string, unknown> = {};\n\n for (const [k, v] of Object.entries(props)) {\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 reactProps[k === 'className' ? 'class' : k] = v;\n continue;\n }\n\n if (eventProps.has(k) || k in elementClass.prototype) {\n elementProps[k] = v;\n continue;\n }\n\n reactProps[k] = v;\n }\n\n // useLayoutEffect produces warnings during server rendering.\n if (!NODE_MODE) {\n // This one has no dependency array so it'll run on every re-render.\n React.useLayoutEffect(() => {\n if (elementRef.current === null) {\n return;\n }\n for (const prop in elementProps) {\n setProperty(\n elementRef.current,\n prop,\n props[prop],\n prevPropsRef.current ? prevPropsRef.current[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 prevPropsRef.current = props;\n });\n\n // Empty dependency array so this will only run once after first render.\n React.useLayoutEffect(() => {\n elementRef.current?.removeAttribute('defer-hydration');\n }, []);\n }\n\n if (NODE_MODE) {\n // If component is to be server rendered with `@lit-labs/ssr-react`, pass\n // element properties in a special bag to be set by the server-side\n // element renderer.\n if (\n React.createElement.name === 'litPatchedCreateElement' &&\n Object.keys(elementProps).length\n ) {\n // This property needs to remain unminified.\n reactProps['_$litProps$'] = elementProps;\n }\n } else {\n // Suppress hydration warning for server-rendered attributes.\n // This property needs to remain unminified.\n reactProps['suppressHydrationWarning'] = true;\n }\n\n return React.createElement(tagName, {\n ...reactProps,\n ref: (node: I) => {\n elementRef.current = node;\n if (typeof ref === 'function') {\n ref(node);\n } else if (ref !== null) {\n ref.current = node;\n }\n },\n });\n });\n\n ReactComponent.displayName = displayName ?? elementClass.name;\n\n return ReactComponent;\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", "react", "React", "tagName", "elementClass", "displayName", "eventProps", "Object", "keys", "ReactComponent", "forwardRef", "props", "ref", "prevPropsRef", "useRef", "elementRef", "reactProps", "elementProps", "k", "v", "entries", "has", "useLayoutEffect", "current", "prop", "e", "_a", "createElement", "BlAccordionGroup", "React", "BlAlert", "BlBadge", "BlButton", "BlCalendar", "BlCheckboxGroup", "BlDialog", "BlDrawer", "BlDropdown", "BlIcon", "BlInput", "BlNotification", "BlPagination", "BlPopover", "BlProgressIndicator", "BlRadioGroup", "BlSelect", "BlSpinner", "BlSplitButton", "BlSwitch", "BlTabGroup", "BlTable", "BlTextarea", "BlTooltip", "BlAccordion", "BlCheckbox", "BlDropdownGroup", "BlDropdownItem", "BlNotificationCard", "BlRadio", "BlSelectOption", "BlTab", "BlTabPanel", "BlTableBody", "BlTableCell", "BlTableHeader", "BlTableHeaderCell", "BlTableRow"]
|
|
7
7
|
}
|
package/dist/baklava.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{b as z}from"./chunk-D5MPTIGC.js";import{b as q}from"./chunk-X2XFV2S3.js";import{b as j}from"./chunk-5HU4KWMX.js";import{b as O}from"./chunk-73GEFGEG.js";import{b as y}from"./chunk-LIW32ZGE.js";import{a as g}from"./chunk-IZTTP5LH.js";import{a as D}from"./chunk-H5K6KEKD.js";import{a as t}from"./chunk-7QNX2GPS.js";import{b as N}from"./chunk-WQTBAXMP.js";import{a as b}from"./chunk-2GQCCDR3.js";import{c as T,f as w}from"./chunk-FVBGMXMC.js";import{b as k}from"./chunk-FQBDGFMR.js";import{a as P}from"./chunk-5TPDRTCU.js";import{a as C}from"./chunk-Q6MAW2EF.js";import{a as I}from"./chunk-QF4LGACD.js";import{d as v}from"./chunk-ASB5S6J4.js";import{b as G,d as A,f as R}from"./chunk-B7ZEUBIV.js";import{b as S}from"./chunk-73RGV4UX.js";import{b as H}from"./chunk-4T26H7PC.js";import{a as c}from"./chunk-X67Z2G2H.js";import{a as i}from"./chunk-P7J47Z2J.js";import{a as n}from"./chunk-WXWKIQAK.js";import{a as m}from"./chunk-DZ77A43H.js";import"./chunk-MND5TXTF.js";import{b as h}from"./chunk-UCLJCOUS.js";import"./chunk-EZSEQHRH.js";import{a as E}from"./chunk-KOWS266A.js";import"./chunk-WEEGH2F4.js";import{b as u,e as x}from"./chunk-
|
|
1
|
+
import{b as z}from"./chunk-D5MPTIGC.js";import{b as q}from"./chunk-X2XFV2S3.js";import{b as j}from"./chunk-5HU4KWMX.js";import{b as O}from"./chunk-73GEFGEG.js";import{b as y}from"./chunk-LIW32ZGE.js";import{a as g}from"./chunk-IZTTP5LH.js";import{a as D}from"./chunk-H5K6KEKD.js";import{a as t}from"./chunk-7QNX2GPS.js";import{b as N}from"./chunk-WQTBAXMP.js";import{a as b}from"./chunk-2GQCCDR3.js";import{c as T,f as w}from"./chunk-FVBGMXMC.js";import{b as k}from"./chunk-FQBDGFMR.js";import{a as P}from"./chunk-5TPDRTCU.js";import{a as C}from"./chunk-Q6MAW2EF.js";import{a as I}from"./chunk-QF4LGACD.js";import{d as v}from"./chunk-ASB5S6J4.js";import{b as G,d as A,f as R}from"./chunk-B7ZEUBIV.js";import{b as S}from"./chunk-73RGV4UX.js";import{b as H}from"./chunk-4T26H7PC.js";import{a as c}from"./chunk-X67Z2G2H.js";import{a as i}from"./chunk-P7J47Z2J.js";import{a as n}from"./chunk-WXWKIQAK.js";import{a as m}from"./chunk-DZ77A43H.js";import"./chunk-MND5TXTF.js";import{b as h}from"./chunk-UCLJCOUS.js";import"./chunk-EZSEQHRH.js";import{a as E}from"./chunk-KOWS266A.js";import"./chunk-WEEGH2F4.js";import{b as u,e as x}from"./chunk-TRWCD65K.js";import"./chunk-EG7U7PM3.js";import"./chunk-XDUIVR6I.js";import"./chunk-HZ6A5QFC.js";import"./chunk-AYJMIZZ3.js";import{a as B}from"./chunk-6BSYS2G5.js";import{a as s}from"./chunk-C4GIIUCS.js";import{b as d}from"./chunk-VU6LRFZR.js";import{b as p}from"./chunk-CYLRPJKP.js";import"./chunk-6LT7O7T2.js";import"./chunk-HBPBDC7T.js";import{a as o}from"./chunk-NGJM4NWA.js";import{a as l}from"./chunk-RQEU3SZQ.js";import"./chunk-ECPWEUBG.js";import"./chunk-DINNT5P2.js";import{a as f}from"./chunk-4BZSILLM.js";import{a as e,b as a,c as r}from"./chunk-HYB2HRRX.js";import"./chunk-GRL4DWKG.js";import"./chunk-3USCFSFQ.js";import"./chunk-7GK5LKBV.js";import"./chunk-5MOOXA2X.js";import"./chunk-4OT5AMS5.js";import"./chunk-IZ2LK5GK.js";export{t as BlAccordion,o as BlAccordionGroup,l as BlAlert,f as BlBadge,d as BlButton,E as BlCalendar,u as BlCheckbox,x as BlCheckboxGroup,B as BlDialog,s as BlDrawer,R as BlDropdown,S as BlDropdownGroup,A as BlDropdownItem,r as BlIcon,m as BlInput,H as BlNotification,N as BlNotificationCard,c as BlPagination,h as BlPopover,b as BlProgressIndicator,T as BlRadio,w as BlRadioGroup,i as BlSelect,n as BlSelectOption,p as BlSpinner,G as BlSplitButton,k as BlSwitch,C as BlTab,P as BlTabGroup,I as BlTabPanel,v as BlTable,O as BlTableBody,z as BlTableCell,y as BlTableHeader,q as BlTableHeaderCell,j as BlTableRow,g as BlTextarea,D as BlTooltip,a as getIconPath,e as setIconPath};
|
|
2
2
|
//# sourceMappingURL=baklava.js.map
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import{a as x}from"./chunk-6LT7O7T2.js";import{a as h}from"./chunk-GRL4DWKG.js";import{a as y,b as d,e as c}from"./chunk-5MOOXA2X.js";import{a as m,b as a,f as w}from"./chunk-4OT5AMS5.js";import{d as o}from"./chunk-IZ2LK5GK.js";var k=m`:host{display:contents}.container{--background-color:var(--bl-color-neutral-full);display:flex;flex-direction:column;background:var(--background-color);width:var(--bl-dialog-width, auto);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:flex-start;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);overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:var(--bl-dialog-caption-line-clamp, 1);margin:0;padding:0}.content{padding:var(--bl-size-xl);overflow:auto}:host([critical]) .content{padding-top:0}.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}}::slotted(bl-tab-group){display:block;transform:translateX(calc(var(--bl-size-xl) * -1));width:calc(100% + calc(var(--bl-size-xl) * 2))}`,E=k;var t=class extends w{constructor(){super(...arguments);this.open=!1;this.critical=!1;this.polyfilled=!0;this.clickOutsideHandler=e=>{if(this.critical)return;e.composedPath().includes(this.container)||this.closeDialog("backdrop")};this.onKeydown=e=>{e.code==="Escape"&&this.open&&!this.critical&&(e.preventDefault(),this.closeDialog("keyboard"))};this.toggleFooterShadow=()=>{var l,n,s,p,u,f,g;let e=(l=this.content)==null?void 0:l.scrollTop,i=(n=this.content)==null?void 0:n.scrollHeight,r=(s=this.content)==null?void 0:s.clientHeight;e+r>=i?(u=(p=this.footer)==null?void 0:p.classList)==null||u.remove("shadow"):(g=(f=this.footer)==null?void 0:f.classList)==null||g.add("shadow")}}static get styles(){return[E]}updated(e){(e.has("open")||e.has("polyfilled"))&&this.toggleDialogHandler()}get _hasFooter(){return[...this.childNodes].some(e=>e.nodeName==="BL-BUTTON")}toggleDialogHandler(){var e,i,r,l,n,s;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",p=>this.onKeydown(p)),window==null||window.addEventListener("resize",this.toggleFooterShadow),(r=this.content)==null||r.addEventListener("scroll",this.toggleFooterShadow)):((n=(l=this.dialog)==null?void 0:l.close)==null||n.call(l),this.onClose({isOpen:!1},{bubbles:!1}),document.body.style.overflow="auto",window==null||window.removeEventListener("keydown",this.onKeydown),window==null||window.removeEventListener("resize",this.toggleFooterShadow),(s=this.content)==null||s.removeEventListener("scroll",this.toggleFooterShadow))}closeDialog(e){this.onRequestClose({source:e},{cancelable:!0}).defaultPrevented||(this.open=!1)}renderFooter(){return this._hasFooter?a`<footer>
|
|
2
|
+
<slot name="primary-action"></slot>
|
|
3
|
+
<slot name="secondary-action"></slot>
|
|
4
|
+
<slot name="tertiary-action"></slot>
|
|
5
|
+
</footer>`:""}renderContainer(){let e=this.caption?a`<h2 id="dialog-caption">${this.caption}</h2>`:"",i=this.critical?null:a`<bl-button
|
|
6
|
+
@click="${()=>this.closeDialog("close-button")}"
|
|
7
|
+
icon="close"
|
|
8
|
+
variant="tertiary"
|
|
9
|
+
kind="neutral"
|
|
10
|
+
size="small"
|
|
11
|
+
></bl-button>`,r={container:!0,"has-footer":this._hasFooter};return a` <div class="${x(r)}">
|
|
12
|
+
<header>${e} ${i}</header>
|
|
13
|
+
<section class="content"><slot></slot></section>
|
|
14
|
+
${this.renderFooter()}
|
|
15
|
+
</div>`}render(){return this.polyfilled||!window.HTMLDialogElement?a`<div
|
|
16
|
+
class="dialog-polyfill"
|
|
17
|
+
role="dialog"
|
|
18
|
+
aria-labelledby="dialog-caption"
|
|
19
|
+
@click=${this.clickOutsideHandler}
|
|
20
|
+
>
|
|
21
|
+
${this.renderContainer()}
|
|
22
|
+
</div>`:a`
|
|
23
|
+
<dialog
|
|
24
|
+
class="dialog"
|
|
25
|
+
aria-labelledby="dialog-caption"
|
|
26
|
+
@click=${this.clickOutsideHandler}
|
|
27
|
+
>
|
|
28
|
+
${this.renderContainer()}
|
|
29
|
+
</dialog>
|
|
30
|
+
`}};o([d({type:Boolean,reflect:!0,hasChanged(b,v){return b===!1&&v===void 0?!1:b!==v}})],t.prototype,"open",2),o([d({type:String})],t.prototype,"caption",2),o([d({type:Boolean,reflect:!0})],t.prototype,"critical",2),o([d({type:Boolean,reflect:!0})],t.prototype,"polyfilled",2),o([c(".dialog")],t.prototype,"dialog",2),o([c("footer")],t.prototype,"footer",2),o([c(".container")],t.prototype,"container",2),o([c(".content")],t.prototype,"content",2),o([h("bl-dialog-open")],t.prototype,"onOpen",2),o([h("bl-dialog-request-close")],t.prototype,"onRequestClose",2),o([h("bl-dialog-close")],t.prototype,"onClose",2),t=o([y("bl-dialog")],t);export{t as a};
|
|
31
|
+
//# sourceMappingURL=chunk-6BSYS2G5.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);width:var(--bl-dialog-width, auto);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:flex-start;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);overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:var(--bl-dialog-caption-line-clamp, 1);margin:0;padding:0}.content{padding:var(--bl-size-xl);overflow:auto}:host([critical]) .content{padding-top:0}.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}}::slotted(bl-tab-group){display:block;transform:translateX(calc(var(--bl-size-xl) * -1));width:calc(100% + calc(var(--bl-size-xl) * 2))}`;\nexport default styles;\n", "import { CSSResultGroup, html, LitElement, PropertyValues, TemplateResult } from \"lit\";\nimport { customElement, property, query } from \"lit/decorators.js\";\nimport { classMap } from \"lit/directives/class-map.js\";\nimport { event, EventDispatcher } from \"../../utilities/event\";\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 * @cssproperty [--bl-dialog-width=auto] Sets the width of the dialog content\n * @cssproperty [--bl-dialog-caption-line-clamp=1] Sets the line clamp of the caption\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({\n type: Boolean,\n reflect: true,\n 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 })\n open = false;\n\n /**\n * Sets the dialog title\n */\n @property({ type: String })\n caption?: string;\n\n /**\n * Determines if the dialog is critical, which disables closing through keyboard, backdrop, and close button interactions.\n */\n @property({ type: Boolean, reflect: true })\n critical = false;\n\n /**\n * Determines if dialog currently uses polyfilled version instead of native HTML Dialog. By\n * default, it uses native Dialog if the browser supports it, otherwise polyfills. You can force\n * using polyfill by setting this to true in some cases like to show some content on top of dialog\n * in case you are not able to use Popover API. Be aware that, polyfilled version can cause some\n * inconsistencies in terms of accessibility and stacking context. So use it with extra caution.\n *\n * As of the current implementation, you can render above the dialog HTML element using the Popover API. However,\n * it will block any actions on the Popover element. This issue was encountered during the development of the `bl-notification` component.\n * As a result, we decided to enable the polyfill for the `bl-dialog` component by default. If you prefer to use the native dialog, you can set\n * this property to false. Please note, doing so will cause notifications to render under the dialog backdrop.\n * For more information, refer to the comment linked below:\n *\n * https://github.com/Trendyol/baklava/issues/141#issuecomment-1810301413\n */\n @property({ type: Boolean, reflect: true })\n polyfilled = true;\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<{\n source: \"close-button\" | \"keyboard\" | \"backdrop\";\n }>;\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\") || changedProperties.has(\"polyfilled\")) {\n this.toggleDialogHandler();\n }\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 this.content?.addEventListener(\"scroll\", this.toggleFooterShadow);\n } else {\n this.dialog?.close?.();\n this.onClose({ isOpen: false }, { bubbles: false });\n document.body.style.overflow = \"auto\";\n window?.removeEventListener(\"keydown\", this.onKeydown);\n window?.removeEventListener(\"resize\", this.toggleFooterShadow);\n this.content?.removeEventListener(\"scroll\", 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 if (this.critical) return;\n\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 && !this.critical) {\n event.preventDefault();\n this.closeDialog(\"keyboard\");\n }\n };\n\n private toggleFooterShadow = () => {\n const scrollTop = this.content?.scrollTop;\n const scrollHeight = this.content?.scrollHeight;\n const clientHeight = this.content?.clientHeight;\n\n if (scrollTop + clientHeight >= scrollHeight) {\n this.footer?.classList?.remove(\"shadow\");\n } else {\n this.footer?.classList?.add(\"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 const closeButton = !this.critical\n ? html`<bl-button\n @click=\"${() => this.closeDialog(\"close-button\")}\"\n icon=\"close\"\n variant=\"tertiary\"\n kind=\"neutral\"\n size=\"small\"\n ></bl-button>`\n : null;\n\n const classes = {\n \"container\": true,\n \"has-footer\": this._hasFooter,\n };\n\n return html` <div class=\"${classMap(classes)}\">\n <header>${title} ${closeButton}</header>\n <section class=\"content\"><slot></slot></section>\n ${this.renderFooter()}\n </div>`;\n }\n\n render(): TemplateResult {\n return this.polyfilled || !window.HTMLDialogElement\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 : html`\n <dialog\n class=\"dialog\"\n aria-labelledby=\"dialog-caption\"\n @click=${this.clickOutsideHandler}\n >\n ${this.renderContainer()}\n </dialog>\n `;\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", "_a", "_b", "_c", "_d", "_e", "_f", "_g", "scrollTop", "scrollHeight", "clientHeight", "bl_dialog_default", "changedProperties", "node", "source", "x", "title", "closeButton", "classes", "o", "__decorateClass", "e", "newVal", "oldVal", "i"]
|
|
7
|
+
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{a as g,c as w}from"./chunk-EG7U7PM3.js";import{a as f}from"./chunk-XDUIVR6I.js";import{a as b}from"./chunk-6LT7O7T2.js";import{a as E}from"./chunk-DINNT5P2.js";import{a as d}from"./chunk-GRL4DWKG.js";import{a as p,b as
|
|
1
|
+
import{a as g,c as w}from"./chunk-EG7U7PM3.js";import{a as f}from"./chunk-XDUIVR6I.js";import{a as b}from"./chunk-6LT7O7T2.js";import{a as E}from"./chunk-DINNT5P2.js";import{a as d}from"./chunk-GRL4DWKG.js";import{a as p,b as s,c as m,e as u}from"./chunk-5MOOXA2X.js";import{a as v,b as o,f as c}from"./chunk-4OT5AMS5.js";import{d as t}from"./chunk-IZ2LK5GK.js";var S=v`: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)}.dirty.invalid .options{margin-bottom:var(--bl-size-3xs)}.hint{display:none;font:var(--bl-font-body-text-3)}.hint p{padding:0;margin:0}.invalid-text{display:none;color:var(--bl-color-danger)}.dirty.invalid .hint{display:block}.dirty.invalid .invalid-text{display:block}`,O=S;var k="bl-checkbox-group",x="bl-checkbox-group-change",r=class extends f(c){constructor(){super(...arguments);this.required=!1;this.dirty=!1;this.focusedOptionIndex=0}static get styles(){return[O]}get options(){return[...this.querySelectorAll(y)]}get checkedOptions(){return this.options.filter(e=>e.checked).map(e=>e.value)}get availableOptions(){return this.options.filter(e=>!e.disabled)}connectedCallback(){var e;super.connectedCallback(),this.tabIndex=0,this.addEventListener("focus",this.handleFocus),this.addEventListener("keydown",this.handleKeyDown),(e=this.form)==null||e.addEventListener("submit",i=>this.handleSubmit(i))}disconnectedCallback(){var e;super.disconnectedCallback(),this.removeEventListener("focus",this.handleFocus),this.removeEventListener("keydown",this.handleKeyDown),(e=this.form)==null||e.removeEventListener("submit",i=>this.handleSubmit(i))}firstUpdated(){this.required&&!this.value&&(this.setValue(null),this.onInvalid(this.internals.validity))}async updated(e){e.has("value")&&(this.setFormValue(),this.checkOptionsValidity(),this.value!==null&&this.onChange(this.value),await this.validationComplete,this.checkValidity()||this.onInvalid(this.internals.validity),this.requestUpdate())}setFormValue(){var e,i;if(this.value!==null&&this.value.length>0){let l=new FormData;(e=this.value)==null||e.forEach(n=>l.append(this.name,`${n}`)),this.setValue(l)}else((i=this.value)==null?void 0:i.length)===0&&this.setValue(null)}handleOptionChecked(){this.dirty=!0,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()}handleSubmit(e){this.reportValidity()||(this.onInvalid(this.internals.validity),e.preventDefault()),this.checkOptionsValidity()}checkOptionsValidity(){var e,i;this.checkValidity()?(e=this.options)==null||e.forEach(l=>{var n,h;return(h=(n=l==null?void 0:l.shadowRoot)==null?void 0:n.querySelector("div"))==null?void 0:h.classList.remove("dirty","invalid")}):this.checkValidity()||(i=this.options)==null||i.forEach(l=>{var n,h;return(h=(n=l==null?void 0:l.shadowRoot)==null?void 0:n.querySelector("div"))==null?void 0:h.classList.add("dirty","invalid")})}validityCallback(){return this.customInvalidText?this.customInvalidText:this.validationMessage}reportValidity(){return this.dirty=!0,this.checkValidity()}render(){let e=this.checkValidity()?"":o`<p id="errorMessage" aria-live="polite" class="invalid-text">
|
|
2
2
|
${this.validationMessage}
|
|
3
3
|
</p>`,i={dirty:this.dirty,invalid:!this.validity.valid};return o`<div class=${b(i)}>
|
|
4
4
|
<fieldset
|
|
@@ -13,7 +13,7 @@ import{a as g,c as w}from"./chunk-EG7U7PM3.js";import{a as f}from"./chunk-XDUIVR
|
|
|
13
13
|
</div>
|
|
14
14
|
<div class="hint">${e}</div>
|
|
15
15
|
</fieldset>
|
|
16
|
-
</div>`}};
|
|
16
|
+
</div>`}};r.shadowRootOptions={...c.shadowRootOptions,delegatesFocus:!0},r.formControlValidators=[g],t([u("fieldset")],r.prototype,"validationTarget",2),t([s()],r.prototype,"name",2),t([s({type:String})],r.prototype,"label",2),t([s({type:Array,reflect:!0})],r.prototype,"value",2),t([s({type:Boolean,reflect:!0})],r.prototype,"required",2),t([s({type:String,attribute:"invalid-text",reflect:!0})],r.prototype,"customInvalidText",2),t([m()],r.prototype,"dirty",2),t([d("bl-checkbox-group-change")],r.prototype,"onChange",2),t([d("bl-checkbox-group-invalid")],r.prototype,"onInvalid",2),r=t([p(k)],r);var M=v`: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{overflow-wrap:anywhere}.dirty.invalid label{margin-bottom:var(--bl-size-3xs)}.checkbox-container{position:relative}input[type="checkbox"]{appearance:none;outline:none;margin:0;box-sizing:border-box;border:1px solid var(--bl-color-neutral-lighter);border-radius:var(--bl-border-radius-xs);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)}.check-mark{position:absolute;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)}.required-suffix{color:var(--bl-color-danger);margin-left:calc(var(--bl-size-2xs) * -1)}.dirty.invalid .check-mark{border-color:var(--bl-color-danger)}.hint{display:none;font:var(--bl-font-body-text-3)}.hint p{padding:0;margin:0}.dirty.invalid .hint{display:block}.invalid-text{display:none;color:var(--bl-color-danger)}.dirty.invalid .invalid-text{display:block}: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);border:1px solid var(--bl-color-neutral-lighter)}: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)}`,V=M;var y="bl-checkbox",a=class extends f(c){constructor(){super(...arguments);this.checked=!1;this.required=!1;this.disabled=!1;this.indeterminate=!1;this.dirty=!1;this.handleFieldValueChange=e=>{this.checked=e.detail.includes(this.value)}}static get styles(){return[V]}connectedCallback(){var e,i;super.connectedCallback(),this.field=this.closest(k),(e=this.field)==null||e.addEventListener(x,this.handleFieldValueChange),(i=this.form)==null||i.addEventListener("submit",l=>this.handleSubmit(l))}reportValidity(){return this.dirty=!0,this.checkValidity()}disconnectedCallback(){var e,i;super.disconnectedCallback(),(e=this.field)==null||e.removeEventListener(x,this.handleFieldValueChange),(i=this.form)==null||i.removeEventListener("submit",l=>this.handleSubmit(l))}async updated(e){e.has("checked")&&this.required&&(this.checked?this.setValue("on"):this.checked||this.setValue(""),await this.validationComplete,this.checkValidity()||this.onInvalid(this.internals.validity),this.requestUpdate())}update(e){super.update(e),this.indeterminate&&this.checked&&(this.checked=!1,this.requestUpdate("checked",!0))}validityCallback(){var e;return this.customInvalidText||((e=this.validationTarget)==null?void 0:e.validationMessage)}focus(){this.checkboxElement.tabIndex=0,this.checkboxElement.focus(),this.onFocus(this.value)}blur(){this.onBlur(this.value),this.field&&(this.checkboxElement.tabIndex=-1)}handleSubmit(e){this.reportValidity()||(this.onInvalid(this.internals.validity),e.preventDefault())}async handleChange(e){let i=e.target;this.dirty=!0,this.checked=i.checked,this.onChange(i.checked),this.indeterminate=!1}render(){let e="";this.checked&&(e="check"),this.indeterminate&&(e="minus");let i=this.checkValidity()?"":o`<p class="invalid-text">${this.validationMessage}</p>`,l=this.required?o`<span class="required-suffix">*</span>`:"",n={"checkbox-container":!0,dirty:this.dirty,invalid:!this.checkValidity()};return o`<div class=${b(n)}>
|
|
17
17
|
<label>
|
|
18
18
|
<input
|
|
19
19
|
type="checkbox"
|
|
@@ -27,8 +27,8 @@ import{a as g,c as w}from"./chunk-EG7U7PM3.js";import{a as f}from"./chunk-XDUIVR
|
|
|
27
27
|
@blur=${this.blur}
|
|
28
28
|
/>
|
|
29
29
|
<div class="check-mark">${e?o`<bl-icon name="${e}"></bl-icon>`:null}</div>
|
|
30
|
-
<slot class="label"></slot>${
|
|
30
|
+
<slot class="label"></slot>${l}
|
|
31
31
|
</label>
|
|
32
32
|
<div class="hint">${i}</div>
|
|
33
|
-
</div> `}};a.shadowRootOptions={...c.shadowRootOptions,delegatesFocus:!1},a.formControlValidators=[g],t([u("input")],a.prototype,"validationTarget",2),t([
|
|
34
|
-
//# sourceMappingURL=chunk-
|
|
33
|
+
</div> `}};a.shadowRootOptions={...c.shadowRootOptions,delegatesFocus:!1},a.formControlValidators=[g],t([u("input")],a.prototype,"validationTarget",2),t([s({type:Boolean,reflect:!0})],a.prototype,"checked",2),t([s()],a.prototype,"value",2),t([s({type:Boolean,reflect:!0})],a.prototype,"required",2),t([s({type:String,attribute:"invalid-text",reflect:!0})],a.prototype,"customInvalidText",2),t([s({type:Boolean,reflect:!0})],a.prototype,"disabled",2),t([s({type:Boolean,reflect:!0})],a.prototype,"indeterminate",2),t([d("bl-checkbox-change")],a.prototype,"onChange",2),t([d("bl-focus")],a.prototype,"onFocus",2),t([d("bl-blur")],a.prototype,"onBlur",2),t([d("bl-checkbox-invalid")],a.prototype,"onInvalid",2),t([u("[type=checkbox]")],a.prototype,"checkboxElement",2),t([m()],a.prototype,"dirty",2),a=t([p(y)],a);export{y as a,a as b,k as c,x as d,r as e};
|
|
34
|
+
//# sourceMappingURL=chunk-TRWCD65K.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../src/components/checkbox-group/bl-checkbox-group.css", "../src/components/checkbox-group/bl-checkbox-group.ts", "../src/components/checkbox-group/checkbox/bl-checkbox.css", "../src/components/checkbox-group/checkbox/bl-checkbox.ts"],
|
|
4
|
-
"sourcesContent": ["import {css} from 'lit';\nexport const styles = css`: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)}.dirty.invalid .options{margin-bottom:var(--bl-size-3xs)}.hint{display:none;font:var(--bl-font-body-text-3)}.hint p{padding:0;margin:0}.invalid-text{display:none;color:var(--bl-color-danger)}.dirty.invalid .hint{display:block}.dirty.invalid .invalid-text{display:block}`;\nexport default styles;\n", "import { CSSResultGroup, html, LitElement, TemplateResult } from \"lit\";\nimport { customElement, property, query, state } from \"lit/decorators.js\";\nimport { classMap } from \"lit/directives/class-map.js\";\nimport { FormControlMixin, requiredValidator } from \"@open-wc/form-control\";\nimport \"element-internals-polyfill\";\nimport { event, EventDispatcher } from \"../../utilities/event\";\nimport style from \"./bl-checkbox-group.css\";\nimport BlCheckbox, { blCheckboxTag } from \"./checkbox/bl-checkbox\";\n\nexport const blCheckboxGroupTag = \"bl-checkbox-group\";\n\nexport const blChangeEventName = \"bl-checkbox-group-change\";\n\n/**\n * @tag bl-checkbox-group\n * @summary Baklava Button component\n *\n * @cssproperty [--bl-checkbox-direction=row] Can be used for showing checkbox options as columns instead of rows. Options are `row` or `column`\n */\n@customElement(blCheckboxGroupTag)\nexport default class BlCheckboxGroup extends FormControlMixin(LitElement) {\n static get styles(): CSSResultGroup {\n return [style];\n }\n static shadowRootOptions = { ...LitElement.shadowRootOptions, delegatesFocus: true };\n\n static formControlValidators = [requiredValidator];\n\n @query(\"fieldset\")\n validationTarget: HTMLElement;\n\n /**\n * Sets name of the checkbox group\n */\n @property()\n name: string;\n\n /**\n * Sets the checkbox group label\n */\n @property({ type: String })\n label: string;\n\n /**\n * Set and gets the actual value of the field\n */\n @property({ type: Array, reflect: true })\n value: string[] | null;\n\n /**\n * Sets option as required\n */\n @property({ type: Boolean, reflect: true })\n required = false;\n\n /**\n * Set custom error message\n */\n @property({ type: String, attribute: \"invalid-text\", reflect: true })\n customInvalidText?: string;\n\n @state()\n private dirty = false;\n\n get options(): BlCheckbox[] {\n return [...this.querySelectorAll(blCheckboxTag)];\n }\n\n get checkedOptions(): string[] {\n return this.options.filter(opt => opt.checked).map(opt => opt.value);\n }\n\n get availableOptions(): BlCheckbox[] {\n return this.options.filter(option => !option.disabled);\n }\n\n connectedCallback(): void {\n super.connectedCallback();\n this.tabIndex = 0;\n this.addEventListener(\"focus\", this.handleFocus);\n this.addEventListener(\"keydown\", this.handleKeyDown);\n\n this.form?.addEventListener(\"submit\", (e: SubmitEvent) => this.handleSubmit(e));\n }\n\n disconnectedCallback(): void {\n super.disconnectedCallback();\n this.removeEventListener(\"focus\", this.handleFocus);\n this.removeEventListener(\"keydown\", this.handleKeyDown);\n this.form?.removeEventListener(\"submit\", (e: SubmitEvent) => this.handleSubmit(e));\n }\n\n protected firstUpdated() {\n if (this.required && !this.value) {\n this.setValue(null);\n this.onInvalid(this.internals.validity);\n }\n }\n\n protected async updated(changedProperties: Map<string, unknown>): Promise<void> {\n if (changedProperties.has(\"value\")) {\n this.setFormValue();\n this.checkOptionsValidity();\n\n if (this.value !== null) this.onChange(this.value);\n\n await this.validationComplete;\n\n if (!this.checkValidity()) {\n this.onInvalid(this.internals.validity);\n }\n\n this.requestUpdate();\n }\n }\n\n private setFormValue() {\n if (this.value !== null && this.value.length > 0) {\n const formData = new FormData();\n\n this.value?.forEach(checkbox => formData.append(this.name, `${checkbox}`));\n this.setValue(formData);\n } else if (this.value?.length === 0) {\n this.setValue(null);\n }\n }\n\n /**\n * Fires when checkbox group value changed\n */\n @event(\"bl-checkbox-group-change\") private onChange: EventDispatcher<string[]>;\n\n /**\n * Fires when checkbox group is invalid\n */\n @event(\"bl-checkbox-group-invalid\") private onInvalid: EventDispatcher<ValidityState>;\n\n private focusedOptionIndex = 0;\n\n private handleOptionChecked() {\n this.dirty = true;\n this.value = this.checkedOptions;\n }\n\n private handleKeyDown(event: KeyboardEvent) {\n // Next option\n if ([\"ArrowDown\", \"ArrowRight\"].includes(event.key)) {\n this.focusedOptionIndex++;\n\n // Previous option\n } else if ([\"ArrowUp\", \"ArrowLeft\"].includes(event.key)) {\n this.focusedOptionIndex--;\n\n // next or previous option with tab / hold shift & tab\n } else if (event.key === \"Tab\") {\n event.shiftKey ? this.focusedOptionIndex-- : this.focusedOptionIndex++;\n\n if (this.focusedOptionIndex === this.availableOptions.length) {\n this.tabIndex = 0;\n this.focusedOptionIndex = 0;\n return;\n }\n } else {\n // Other keys are not our interest here\n return;\n }\n\n // Don't exceed array indexes\n this.focusedOptionIndex = Math.max(\n 0,\n Math.min(this.focusedOptionIndex, this.availableOptions.length - 1)\n );\n\n this.availableOptions[this.focusedOptionIndex].focus();\n\n event.preventDefault();\n }\n\n private handleFocus() {\n this.availableOptions[this.focusedOptionIndex].focus();\n }\n\n private handleSubmit(e: SubmitEvent) {\n if (!this.reportValidity()) {\n this.onInvalid(this.internals.validity);\n e.preventDefault();\n }\n this.checkOptionsValidity();\n }\n\n checkOptionsValidity() {\n if (this.checkValidity()) {\n this.options?.forEach(option =>\n option?.shadowRoot?.querySelector(\"div\")?.classList.remove(...[\"dirty\", \"invalid\"])\n );\n } else if (!this.checkValidity()) {\n this.options?.forEach(option =>\n option?.shadowRoot?.querySelector(\"div\")?.classList.add(...[\"dirty\", \"invalid\"])\n );\n }\n }\n\n validityCallback() {\n if (this.customInvalidText) {\n return this.customInvalidText;\n }\n return this.validationMessage;\n }\n\n reportValidity() {\n this.dirty = true;\n return this.checkValidity();\n }\n\n render(): TemplateResult {\n const invalidMessage = !this.checkValidity()\n ? html`<p id=\"errorMessage\" aria-live=\"polite\" class=\"invalid-text\">\n ${this.validationMessage}\n </p>`\n : \"\";\n\n const classes = {\n \"dirty\": this.dirty,\n \"invalid\": !this.validity.valid,\n };\n\n return html`<div class=${classMap(classes)}>\n <fieldset\n role=\"group\"\n aria-labelledby=\"label\"\n aria-required=${this.required}\n tabindex=${this.tabIndex}\n >\n <legend id=\"label\">${this.label}</legend>\n <div class=\"options\" @bl-checkbox-change=${this.handleOptionChecked}>\n <slot></slot>\n </div>\n <div class=\"hint\">${invalidMessage}</div>\n </fieldset>\n </div>`;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n [blCheckboxGroupTag]: BlCheckboxGroup;\n }\n interface HTMLElementEventMap {\n [blChangeEventName]: CustomEvent<string[]>;\n }\n}\n", "import {css} from 'lit';\nexport const styles = css`: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{overflow-wrap:anywhere}.dirty.invalid label{margin-bottom:var(--bl-size-3xs)}.checkbox-container{position:relative}input[type=\"checkbox\"]{appearance:none;outline:none;margin:0;box-sizing:border-box;border:1px solid var(--bl-color-neutral-lighter);border-radius:var(--bl-border-radius-xs);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)}.check-mark{position:absolute;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)}.required-suffix{color:var(--bl-color-danger);margin-left:calc(var(--bl-size-2xs) * -1)}.dirty.invalid .check-mark{border-color:var(--bl-color-danger)}.hint{display:none;font:var(--bl-font-body-text-3)}.hint p{padding:0;margin:0}.dirty.invalid .hint{display:block}.invalid-text{display:none;color:var(--bl-color-danger)}.dirty.invalid .invalid-text{display:block}: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);border:1px solid var(--bl-color-neutral-lighter)}: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)}`;\nexport default styles;\n", "import { CSSResultGroup, html, LitElement, TemplateResult } from \"lit\";\nimport { customElement, property, query, state } from \"lit/decorators.js\";\nimport { classMap } from \"lit/directives/class-map.js\";\nimport { ifDefined } from \"lit/directives/if-defined.js\";\nimport { live } from \"lit/directives/live.js\";\nimport { FormControlMixin, requiredValidator } from \"@open-wc/form-control\";\nimport \"element-internals-polyfill\";\nimport { event, EventDispatcher } from \"../../../utilities/event\";\nimport \"../../icon/bl-icon\";\nimport type BlCheckboxGroup from \"../bl-checkbox-group\";\nimport { blCheckboxGroupTag, blChangeEventName } from \"../bl-checkbox-group\";\nimport style from \"./bl-checkbox.css\";\n\nexport const blCheckboxTag = \"bl-checkbox\";\n\n/**\n * @tag bl-checkbox\n * @summary Baklava Checkbox component\n */\n@customElement(blCheckboxTag)\nexport default class BlCheckbox extends FormControlMixin(LitElement) {\n static get styles(): CSSResultGroup {\n return [style];\n }\n static shadowRootOptions = { ...LitElement.shadowRootOptions, delegatesFocus: false };\n\n static formControlValidators = [requiredValidator];\n\n @query(\"input\")\n validationTarget: HTMLInputElement;\n\n /**\n * Sets the checked state for checkbox\n */\n @property({ type: Boolean, reflect: true })\n checked = false;\n\n /**\n * Sets the checkbox value\n */\n @property()\n value: string;\n\n /**\n * Sets checkbox as required\n */\n @property({ type: Boolean, reflect: true })\n required = false;\n\n /**\n * Set custom error message\n */\n @property({ type: String, attribute: \"invalid-text\", reflect: true })\n customInvalidText?: string;\n\n /**\n * Sets the disabled state for checkbox\n */\n @property({ type: Boolean, reflect: true })\n disabled = false;\n\n /**\n * Sets the indeterminate state for checkbox\n */\n @property({ type: Boolean, reflect: true })\n indeterminate = false;\n\n /**\n * Fires whenever user change the value of the checkbox.\n */\n @event(\"bl-checkbox-change\") private onChange: EventDispatcher<boolean>;\n\n /**\n * Fires when checkbox is focused\n */\n @event(\"bl-focus\") private onFocus: EventDispatcher<string>;\n\n /**\n * Fires when checkbox is blurred\n */\n @event(\"bl-blur\") private onBlur: EventDispatcher<string>;\n\n /**\n * Fires when checkbox is invalid\n */\n @event(\"bl-checkbox-invalid\") private onInvalid: EventDispatcher<ValidityState>;\n\n @query(\"[type=checkbox]\") checkboxElement: HTMLElement;\n\n @state()\n private dirty = false;\n\n protected field: BlCheckboxGroup | null;\n\n connectedCallback(): void {\n super.connectedCallback();\n\n this.field = this.closest<BlCheckboxGroup>(blCheckboxGroupTag);\n this.field?.addEventListener(blChangeEventName, this.handleFieldValueChange);\n\n this.form?.addEventListener(\"submit\", e => this.handleSubmit(e));\n }\n\n reportValidity() {\n this.dirty = true;\n return this.checkValidity();\n }\n\n disconnectedCallback(): void {\n super.disconnectedCallback();\n this.field?.removeEventListener(blChangeEventName, this.handleFieldValueChange);\n this.form?.removeEventListener(\"submit\", e => this.handleSubmit(e));\n }\n\n protected firstUpdated(changedProperties: Map<string, unknown>) {\n if (changedProperties.has(\"checked\") && this.checked) {\n this.value = \"on\";\n this.setValue(this.value);\n }\n }\n\n protected async updated(changedProperties: Map<string, unknown>): Promise<void> {\n if (changedProperties.has(\"checked\") && this.required) {\n if (this.checked) {\n this.setValue(this.value);\n } else if (!this.checked) {\n this.setValue(\"\");\n }\n\n await this.validationComplete;\n if (!this.checkValidity()) {\n this.onInvalid(this.internals.validity);\n }\n this.requestUpdate();\n }\n }\n\n update(changedProperties: Map<string, unknown>) {\n super.update(changedProperties);\n if (this.indeterminate && this.checked) {\n this.checked = false;\n this.requestUpdate(\"checked\", true);\n }\n }\n\n validityCallback(): string | void {\n return this.customInvalidText || this.validationTarget?.validationMessage;\n }\n\n /**\n * Focuses this option\n */\n focus() {\n this.checkboxElement.tabIndex = 0;\n this.checkboxElement.focus();\n this.onFocus(this.value);\n }\n\n /**\n * Blurs from this option\n */\n blur() {\n this.onBlur(this.value);\n if (!this.field) return;\n this.checkboxElement.tabIndex = -1;\n }\n\n private handleSubmit(e: SubmitEvent) {\n if (!this.reportValidity()) {\n this.onInvalid(this.internals.validity);\n e.preventDefault();\n }\n }\n\n private async handleChange(event: CustomEvent) {\n const target = event.target as HTMLInputElement;\n\n this.dirty = true;\n this.checked = target.checked;\n this.onChange(target.checked);\n this.indeterminate = false;\n }\n\n private handleFieldValueChange = (event: CustomEvent<Array<string>>) => {\n this.checked = event.detail.includes(this.value);\n };\n\n render(): TemplateResult {\n let icon = \"\";\n\n if (this.checked) icon = \"check\";\n if (this.indeterminate) icon = \"minus\";\n\n const invalidMessage = !this.checkValidity()\n ? html`<p class=\"invalid-text\">${this.validationMessage}</p>`\n : \"\";\n\n const requiredSuffix = this.required ? html`<span class=\"required-suffix\">*</span>` : \"\";\n\n const classes = {\n \"checkbox-container\": true,\n \"dirty\": this.dirty,\n \"invalid\": !this.checkValidity(),\n };\n\n return html`<div class=${classMap(classes)}>\n <label>\n <input\n type=\"checkbox\"\n .checked=${live(this.checked)}\n ?disabled=${this.disabled}\n aria-required=${this.required}\n aria-readonly=${this.disabled}\n .indeterminate=${this.indeterminate}\n @change=${this.handleChange}\n value=${ifDefined(this.value)}\n @blur=${this.blur}\n />\n <div class=\"check-mark\">${icon ? html`<bl-icon name=\"${icon}\"></bl-icon>` : null}</div>\n <slot class=\"label\"></slot>${requiredSuffix}\n </label>\n <div class=\"hint\">${invalidMessage}</div>\n </div> `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n [blCheckboxTag]: BlCheckbox;\n }\n}\n"],
|
|
5
|
-
"mappings": "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
|
|
4
|
+
"sourcesContent": ["import {css} from 'lit';\nexport const styles = css`: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)}.dirty.invalid .options{margin-bottom:var(--bl-size-3xs)}.hint{display:none;font:var(--bl-font-body-text-3)}.hint p{padding:0;margin:0}.invalid-text{display:none;color:var(--bl-color-danger)}.dirty.invalid .hint{display:block}.dirty.invalid .invalid-text{display:block}`;\nexport default styles;\n", "import { CSSResultGroup, html, LitElement, TemplateResult } from \"lit\";\nimport { customElement, property, query, state } from \"lit/decorators.js\";\nimport { classMap } from \"lit/directives/class-map.js\";\nimport { FormControlMixin, requiredValidator } from \"@open-wc/form-control\";\nimport \"element-internals-polyfill\";\nimport { event, EventDispatcher } from \"../../utilities/event\";\nimport style from \"./bl-checkbox-group.css\";\nimport BlCheckbox, { blCheckboxTag } from \"./checkbox/bl-checkbox\";\n\nexport const blCheckboxGroupTag = \"bl-checkbox-group\";\n\nexport const blChangeEventName = \"bl-checkbox-group-change\";\n\n/**\n * @tag bl-checkbox-group\n * @summary Baklava Button component\n *\n * @cssproperty [--bl-checkbox-direction=row] Can be used for showing checkbox options as columns instead of rows. Options are `row` or `column`\n */\n@customElement(blCheckboxGroupTag)\nexport default class BlCheckboxGroup extends FormControlMixin(LitElement) {\n static get styles(): CSSResultGroup {\n return [style];\n }\n static shadowRootOptions = { ...LitElement.shadowRootOptions, delegatesFocus: true };\n\n static formControlValidators = [requiredValidator];\n\n @query(\"fieldset\")\n validationTarget: HTMLElement;\n\n /**\n * Sets name of the checkbox group\n */\n @property()\n name: string;\n\n /**\n * Sets the checkbox group label\n */\n @property({ type: String })\n label: string;\n\n /**\n * Set and gets the actual value of the field\n */\n @property({ type: Array, reflect: true })\n value: string[] | null;\n\n /**\n * Sets option as required\n */\n @property({ type: Boolean, reflect: true })\n required = false;\n\n /**\n * Set custom error message\n */\n @property({ type: String, attribute: \"invalid-text\", reflect: true })\n customInvalidText?: string;\n\n @state()\n private dirty = false;\n\n get options(): BlCheckbox[] {\n return [...this.querySelectorAll(blCheckboxTag)];\n }\n\n get checkedOptions(): string[] {\n return this.options.filter(opt => opt.checked).map(opt => opt.value);\n }\n\n get availableOptions(): BlCheckbox[] {\n return this.options.filter(option => !option.disabled);\n }\n\n connectedCallback(): void {\n super.connectedCallback();\n this.tabIndex = 0;\n this.addEventListener(\"focus\", this.handleFocus);\n this.addEventListener(\"keydown\", this.handleKeyDown);\n\n this.form?.addEventListener(\"submit\", (e: SubmitEvent) => this.handleSubmit(e));\n }\n\n disconnectedCallback(): void {\n super.disconnectedCallback();\n this.removeEventListener(\"focus\", this.handleFocus);\n this.removeEventListener(\"keydown\", this.handleKeyDown);\n this.form?.removeEventListener(\"submit\", (e: SubmitEvent) => this.handleSubmit(e));\n }\n\n protected firstUpdated() {\n if (this.required && !this.value) {\n this.setValue(null);\n this.onInvalid(this.internals.validity);\n }\n }\n\n protected async updated(changedProperties: Map<string, unknown>): Promise<void> {\n if (changedProperties.has(\"value\")) {\n this.setFormValue();\n this.checkOptionsValidity();\n\n if (this.value !== null) this.onChange(this.value);\n\n await this.validationComplete;\n\n if (!this.checkValidity()) {\n this.onInvalid(this.internals.validity);\n }\n\n this.requestUpdate();\n }\n }\n\n private setFormValue() {\n if (this.value !== null && this.value.length > 0) {\n const formData = new FormData();\n\n this.value?.forEach(checkbox => formData.append(this.name, `${checkbox}`));\n this.setValue(formData);\n } else if (this.value?.length === 0) {\n this.setValue(null);\n }\n }\n\n /**\n * Fires when checkbox group value changed\n */\n @event(\"bl-checkbox-group-change\") private onChange: EventDispatcher<string[]>;\n\n /**\n * Fires when checkbox group is invalid\n */\n @event(\"bl-checkbox-group-invalid\") private onInvalid: EventDispatcher<ValidityState>;\n\n private focusedOptionIndex = 0;\n\n private handleOptionChecked() {\n this.dirty = true;\n this.value = this.checkedOptions;\n }\n\n private handleKeyDown(event: KeyboardEvent) {\n // Next option\n if ([\"ArrowDown\", \"ArrowRight\"].includes(event.key)) {\n this.focusedOptionIndex++;\n\n // Previous option\n } else if ([\"ArrowUp\", \"ArrowLeft\"].includes(event.key)) {\n this.focusedOptionIndex--;\n\n // next or previous option with tab / hold shift & tab\n } else if (event.key === \"Tab\") {\n event.shiftKey ? this.focusedOptionIndex-- : this.focusedOptionIndex++;\n\n if (this.focusedOptionIndex === this.availableOptions.length) {\n this.tabIndex = 0;\n this.focusedOptionIndex = 0;\n return;\n }\n } else {\n // Other keys are not our interest here\n return;\n }\n\n // Don't exceed array indexes\n this.focusedOptionIndex = Math.max(\n 0,\n Math.min(this.focusedOptionIndex, this.availableOptions.length - 1)\n );\n\n this.availableOptions[this.focusedOptionIndex].focus();\n\n event.preventDefault();\n }\n\n private handleFocus() {\n this.availableOptions[this.focusedOptionIndex].focus();\n }\n\n private handleSubmit(e: SubmitEvent) {\n if (!this.reportValidity()) {\n this.onInvalid(this.internals.validity);\n e.preventDefault();\n }\n this.checkOptionsValidity();\n }\n\n checkOptionsValidity() {\n if (this.checkValidity()) {\n this.options?.forEach(option =>\n option?.shadowRoot?.querySelector(\"div\")?.classList.remove(...[\"dirty\", \"invalid\"])\n );\n } else if (!this.checkValidity()) {\n this.options?.forEach(option =>\n option?.shadowRoot?.querySelector(\"div\")?.classList.add(...[\"dirty\", \"invalid\"])\n );\n }\n }\n\n validityCallback() {\n if (this.customInvalidText) {\n return this.customInvalidText;\n }\n return this.validationMessage;\n }\n\n reportValidity() {\n this.dirty = true;\n return this.checkValidity();\n }\n\n render(): TemplateResult {\n const invalidMessage = !this.checkValidity()\n ? html`<p id=\"errorMessage\" aria-live=\"polite\" class=\"invalid-text\">\n ${this.validationMessage}\n </p>`\n : \"\";\n\n const classes = {\n \"dirty\": this.dirty,\n \"invalid\": !this.validity.valid,\n };\n\n return html`<div class=${classMap(classes)}>\n <fieldset\n role=\"group\"\n aria-labelledby=\"label\"\n aria-required=${this.required}\n tabindex=${this.tabIndex}\n >\n <legend id=\"label\">${this.label}</legend>\n <div class=\"options\" @bl-checkbox-change=${this.handleOptionChecked}>\n <slot></slot>\n </div>\n <div class=\"hint\">${invalidMessage}</div>\n </fieldset>\n </div>`;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n [blCheckboxGroupTag]: BlCheckboxGroup;\n }\n interface HTMLElementEventMap {\n [blChangeEventName]: CustomEvent<string[]>;\n }\n}\n", "import {css} from 'lit';\nexport const styles = css`: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{overflow-wrap:anywhere}.dirty.invalid label{margin-bottom:var(--bl-size-3xs)}.checkbox-container{position:relative}input[type=\"checkbox\"]{appearance:none;outline:none;margin:0;box-sizing:border-box;border:1px solid var(--bl-color-neutral-lighter);border-radius:var(--bl-border-radius-xs);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)}.check-mark{position:absolute;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)}.required-suffix{color:var(--bl-color-danger);margin-left:calc(var(--bl-size-2xs) * -1)}.dirty.invalid .check-mark{border-color:var(--bl-color-danger)}.hint{display:none;font:var(--bl-font-body-text-3)}.hint p{padding:0;margin:0}.dirty.invalid .hint{display:block}.invalid-text{display:none;color:var(--bl-color-danger)}.dirty.invalid .invalid-text{display:block}: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);border:1px solid var(--bl-color-neutral-lighter)}: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)}`;\nexport default styles;\n", "import { CSSResultGroup, html, LitElement, TemplateResult } from \"lit\";\nimport { customElement, property, query, state } from \"lit/decorators.js\";\nimport { classMap } from \"lit/directives/class-map.js\";\nimport { ifDefined } from \"lit/directives/if-defined.js\";\nimport { live } from \"lit/directives/live.js\";\nimport { FormControlMixin, requiredValidator } from \"@open-wc/form-control\";\nimport \"element-internals-polyfill\";\nimport { event, EventDispatcher } from \"../../../utilities/event\";\nimport \"../../icon/bl-icon\";\nimport type BlCheckboxGroup from \"../bl-checkbox-group\";\nimport { blCheckboxGroupTag, blChangeEventName } from \"../bl-checkbox-group\";\nimport style from \"./bl-checkbox.css\";\n\nexport const blCheckboxTag = \"bl-checkbox\";\n\n/**\n * @tag bl-checkbox\n * @summary Baklava Checkbox component\n */\n@customElement(blCheckboxTag)\nexport default class BlCheckbox extends FormControlMixin(LitElement) {\n static get styles(): CSSResultGroup {\n return [style];\n }\n static shadowRootOptions = { ...LitElement.shadowRootOptions, delegatesFocus: false };\n\n static formControlValidators = [requiredValidator];\n\n @query(\"input\")\n validationTarget: HTMLInputElement;\n\n /**\n * Sets the checked state for checkbox\n */\n @property({ type: Boolean, reflect: true })\n checked = false;\n\n /**\n * Sets the checkbox value\n */\n @property()\n value: string;\n\n /**\n * Sets checkbox as required\n */\n @property({ type: Boolean, reflect: true })\n required = false;\n\n /**\n * Set custom error message\n */\n @property({ type: String, attribute: \"invalid-text\", reflect: true })\n customInvalidText?: string;\n\n /**\n * Sets the disabled state for checkbox\n */\n @property({ type: Boolean, reflect: true })\n disabled = false;\n\n /**\n * Sets the indeterminate state for checkbox\n */\n @property({ type: Boolean, reflect: true })\n indeterminate = false;\n\n /**\n * Fires whenever user change the value of the checkbox.\n */\n @event(\"bl-checkbox-change\") private onChange: EventDispatcher<boolean>;\n\n /**\n * Fires when checkbox is focused\n */\n @event(\"bl-focus\") private onFocus: EventDispatcher<string>;\n\n /**\n * Fires when checkbox is blurred\n */\n @event(\"bl-blur\") private onBlur: EventDispatcher<string>;\n\n /**\n * Fires when checkbox is invalid\n */\n @event(\"bl-checkbox-invalid\") private onInvalid: EventDispatcher<ValidityState>;\n\n @query(\"[type=checkbox]\") checkboxElement: HTMLElement;\n\n @state()\n private dirty = false;\n\n protected field: BlCheckboxGroup | null;\n\n connectedCallback(): void {\n super.connectedCallback();\n\n this.field = this.closest<BlCheckboxGroup>(blCheckboxGroupTag);\n this.field?.addEventListener(blChangeEventName, this.handleFieldValueChange);\n\n this.form?.addEventListener(\"submit\", e => this.handleSubmit(e));\n }\n\n reportValidity() {\n this.dirty = true;\n return this.checkValidity();\n }\n\n disconnectedCallback(): void {\n super.disconnectedCallback();\n this.field?.removeEventListener(blChangeEventName, this.handleFieldValueChange);\n this.form?.removeEventListener(\"submit\", e => this.handleSubmit(e));\n }\n\n protected async updated(changedProperties: Map<string, unknown>): Promise<void> {\n if (changedProperties.has(\"checked\") && this.required) {\n if (this.checked) {\n this.setValue(\"on\");\n } else if (!this.checked) {\n this.setValue(\"\");\n }\n\n await this.validationComplete;\n if (!this.checkValidity()) {\n this.onInvalid(this.internals.validity);\n }\n this.requestUpdate();\n }\n }\n\n update(changedProperties: Map<string, unknown>) {\n super.update(changedProperties);\n if (this.indeterminate && this.checked) {\n this.checked = false;\n this.requestUpdate(\"checked\", true);\n }\n }\n\n validityCallback(): string | void {\n return this.customInvalidText || this.validationTarget?.validationMessage;\n }\n\n /**\n * Focuses this option\n */\n focus() {\n this.checkboxElement.tabIndex = 0;\n this.checkboxElement.focus();\n this.onFocus(this.value);\n }\n\n /**\n * Blurs from this option\n */\n blur() {\n this.onBlur(this.value);\n if (!this.field) return;\n this.checkboxElement.tabIndex = -1;\n }\n\n private handleSubmit(e: SubmitEvent) {\n if (!this.reportValidity()) {\n this.onInvalid(this.internals.validity);\n e.preventDefault();\n }\n }\n\n private async handleChange(event: CustomEvent) {\n const target = event.target as HTMLInputElement;\n\n this.dirty = true;\n this.checked = target.checked;\n this.onChange(target.checked);\n this.indeterminate = false;\n }\n\n private handleFieldValueChange = (event: CustomEvent<Array<string>>) => {\n this.checked = event.detail.includes(this.value);\n };\n\n render(): TemplateResult {\n let icon = \"\";\n\n if (this.checked) icon = \"check\";\n if (this.indeterminate) icon = \"minus\";\n\n const invalidMessage = !this.checkValidity()\n ? html`<p class=\"invalid-text\">${this.validationMessage}</p>`\n : \"\";\n\n const requiredSuffix = this.required ? html`<span class=\"required-suffix\">*</span>` : \"\";\n\n const classes = {\n \"checkbox-container\": true,\n \"dirty\": this.dirty,\n \"invalid\": !this.checkValidity(),\n };\n\n return html`<div class=${classMap(classes)}>\n <label>\n <input\n type=\"checkbox\"\n .checked=${live(this.checked)}\n ?disabled=${this.disabled}\n aria-required=${this.required}\n aria-readonly=${this.disabled}\n .indeterminate=${this.indeterminate}\n @change=${this.handleChange}\n value=${ifDefined(this.value)}\n @blur=${this.blur}\n />\n <div class=\"check-mark\">${icon ? html`<bl-icon name=\"${icon}\"></bl-icon>` : null}</div>\n <slot class=\"label\"></slot>${requiredSuffix}\n </label>\n <div class=\"hint\">${invalidMessage}</div>\n </div> `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n [blCheckboxTag]: BlCheckbox;\n }\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": ["styles", "i", "bl_checkbox_group_default", "blCheckboxGroupTag", "blChangeEventName", "BlCheckboxGroup", "FormControlMixin", "s", "bl_checkbox_group_default", "blCheckboxTag", "opt", "option", "_a", "e", "changedProperties", "_b", "formData", "checkbox", "event", "invalidMessage", "x", "classes", "o", "requiredValidator", "__decorateClass", "i", "t", "styles", "i", "bl_checkbox_default", "blCheckboxTag", "BlCheckbox", "FormControlMixin", "s", "event", "bl_checkbox_default", "_a", "_b", "blCheckboxGroupTag", "blChangeEventName", "e", "changedProperties", "target", "icon", "invalidMessage", "x", "requiredSuffix", "classes", "o", "l", "requiredValidator", "__decorateClass", "i", "t"]
|
|
7
7
|
}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{c as a,d as b,e as c}from"../../chunk-
|
|
1
|
+
import{c as a,d as b,e as c}from"../../chunk-TRWCD65K.js";import"../../chunk-EG7U7PM3.js";import"../../chunk-XDUIVR6I.js";import"../../chunk-HZ6A5QFC.js";import"../../chunk-AYJMIZZ3.js";import"../../chunk-6LT7O7T2.js";import"../../chunk-DINNT5P2.js";import"../../chunk-HYB2HRRX.js";import"../../chunk-GRL4DWKG.js";import"../../chunk-3USCFSFQ.js";import"../../chunk-7GK5LKBV.js";import"../../chunk-5MOOXA2X.js";import"../../chunk-4OT5AMS5.js";import"../../chunk-IZ2LK5GK.js";export{b as blChangeEventName,a as blCheckboxGroupTag,c as default};
|
|
2
2
|
//# sourceMappingURL=bl-checkbox-group.js.map
|
|
@@ -64,7 +64,6 @@ export default class BlCheckbox extends BlCheckbox_base {
|
|
|
64
64
|
connectedCallback(): void;
|
|
65
65
|
reportValidity(): boolean;
|
|
66
66
|
disconnectedCallback(): void;
|
|
67
|
-
protected firstUpdated(changedProperties: Map<string, unknown>): void;
|
|
68
67
|
protected updated(changedProperties: Map<string, unknown>): Promise<void>;
|
|
69
68
|
update(changedProperties: Map<string, unknown>): void;
|
|
70
69
|
validityCallback(): string | void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bl-checkbox.d.ts","sourceRoot":"","sources":["../../../../src/components/checkbox-group/checkbox/bl-checkbox.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAQ,UAAU,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AAMvE,OAAO,4BAA4B,CAAC;AAEpC,OAAO,oBAAoB,CAAC;AAC5B,OAAO,KAAK,eAAe,MAAM,sBAAsB,CAAC;AAIxD,eAAO,MAAM,aAAa,gBAAgB,CAAC;;AAE3C;;;GAGG;AAEH,MAAM,CAAC,OAAO,OAAO,UAAW,SAAQ,eAA4B;IAClE,MAAM,KAAK,MAAM,IAAI,cAAc,CAElC;IACD,MAAM,CAAC,iBAAiB;;;;;MAA8D;IAEtF,MAAM,CAAC,qBAAqB,8CAAuB;IAGnD,gBAAgB,EAAE,gBAAgB,CAAC;IAEnC;;OAEG;IAEH,OAAO,UAAS;IAEhB;;OAEG;IAEH,KAAK,EAAE,MAAM,CAAC;IAEd;;OAEG;IAEH,QAAQ,UAAS;IAEjB;;OAEG;IAEH,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAE3B;;OAEG;IAEH,QAAQ,UAAS;IAEjB;;OAEG;IAEH,aAAa,UAAS;IAEtB;;OAEG;IAC0B,OAAO,CAAC,QAAQ,CAA2B;IAExE;;OAEG;IACgB,OAAO,CAAC,OAAO,CAA0B;IAE5D;;OAEG;IACe,OAAO,CAAC,MAAM,CAA0B;IAE1D;;OAEG;IAC2B,OAAO,CAAC,SAAS,CAAiC;IAEtD,eAAe,EAAE,WAAW,CAAC;IAGvD,OAAO,CAAC,KAAK,CAAS;IAEtB,SAAS,CAAC,KAAK,EAAE,eAAe,GAAG,IAAI,CAAC;IAExC,iBAAiB,IAAI,IAAI;IASzB,cAAc;IAKd,oBAAoB,IAAI,IAAI;
|
|
1
|
+
{"version":3,"file":"bl-checkbox.d.ts","sourceRoot":"","sources":["../../../../src/components/checkbox-group/checkbox/bl-checkbox.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAQ,UAAU,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AAMvE,OAAO,4BAA4B,CAAC;AAEpC,OAAO,oBAAoB,CAAC;AAC5B,OAAO,KAAK,eAAe,MAAM,sBAAsB,CAAC;AAIxD,eAAO,MAAM,aAAa,gBAAgB,CAAC;;AAE3C;;;GAGG;AAEH,MAAM,CAAC,OAAO,OAAO,UAAW,SAAQ,eAA4B;IAClE,MAAM,KAAK,MAAM,IAAI,cAAc,CAElC;IACD,MAAM,CAAC,iBAAiB;;;;;MAA8D;IAEtF,MAAM,CAAC,qBAAqB,8CAAuB;IAGnD,gBAAgB,EAAE,gBAAgB,CAAC;IAEnC;;OAEG;IAEH,OAAO,UAAS;IAEhB;;OAEG;IAEH,KAAK,EAAE,MAAM,CAAC;IAEd;;OAEG;IAEH,QAAQ,UAAS;IAEjB;;OAEG;IAEH,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAE3B;;OAEG;IAEH,QAAQ,UAAS;IAEjB;;OAEG;IAEH,aAAa,UAAS;IAEtB;;OAEG;IAC0B,OAAO,CAAC,QAAQ,CAA2B;IAExE;;OAEG;IACgB,OAAO,CAAC,OAAO,CAA0B;IAE5D;;OAEG;IACe,OAAO,CAAC,MAAM,CAA0B;IAE1D;;OAEG;IAC2B,OAAO,CAAC,SAAS,CAAiC;IAEtD,eAAe,EAAE,WAAW,CAAC;IAGvD,OAAO,CAAC,KAAK,CAAS;IAEtB,SAAS,CAAC,KAAK,EAAE,eAAe,GAAG,IAAI,CAAC;IAExC,iBAAiB,IAAI,IAAI;IASzB,cAAc;IAKd,oBAAoB,IAAI,IAAI;cAMZ,OAAO,CAAC,iBAAiB,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAgB/E,MAAM,CAAC,iBAAiB,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC;IAQ9C,gBAAgB,IAAI,MAAM,GAAG,IAAI;IAIjC;;OAEG;IACH,KAAK;IAML;;OAEG;IACH,IAAI;IAMJ,OAAO,CAAC,YAAY;YAON,YAAY;IAS1B,OAAO,CAAC,sBAAsB,CAE5B;IAEF,MAAM,IAAI,cAAc;CAqCzB;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,CAAC,aAAa,CAAC,EAAE,UAAU,CAAC;KAC7B;CACF"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a,b}from"../../../chunk-
|
|
1
|
+
import{a,b}from"../../../chunk-TRWCD65K.js";import"../../../chunk-EG7U7PM3.js";import"../../../chunk-XDUIVR6I.js";import"../../../chunk-HZ6A5QFC.js";import"../../../chunk-AYJMIZZ3.js";import"../../../chunk-6LT7O7T2.js";import"../../../chunk-DINNT5P2.js";import"../../../chunk-HYB2HRRX.js";import"../../../chunk-GRL4DWKG.js";import"../../../chunk-3USCFSFQ.js";import"../../../chunk-7GK5LKBV.js";import"../../../chunk-5MOOXA2X.js";import"../../../chunk-4OT5AMS5.js";import"../../../chunk-IZ2LK5GK.js";export{a as blCheckboxTag,b as default};
|
|
2
2
|
//# sourceMappingURL=bl-checkbox.js.map
|
|
@@ -3,6 +3,9 @@ import "../button/bl-button";
|
|
|
3
3
|
/**
|
|
4
4
|
* @tag bl-dialog
|
|
5
5
|
* @summary Baklava Dialog component
|
|
6
|
+
*
|
|
7
|
+
* @cssproperty [--bl-dialog-width=auto] Sets the width of the dialog content
|
|
8
|
+
* @cssproperty [--bl-dialog-caption-line-clamp=1] Sets the line clamp of the caption
|
|
6
9
|
*/
|
|
7
10
|
export default class BlDialog extends LitElement {
|
|
8
11
|
static get styles(): CSSResultGroup;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bl-dialog.d.ts","sourceRoot":"","sources":["../../../src/components/dialog/bl-dialog.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAQ,UAAU,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AAIvF,OAAO,qBAAqB,CAAC;AAQ7B
|
|
1
|
+
{"version":3,"file":"bl-dialog.d.ts","sourceRoot":"","sources":["../../../src/components/dialog/bl-dialog.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAQ,UAAU,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AAIvF,OAAO,qBAAqB,CAAC;AAQ7B;;;;;;GAMG;AAEH,MAAM,CAAC,OAAO,OAAO,QAAS,SAAQ,UAAU;IAC9C,MAAM,KAAK,MAAM,IAAI,cAAc,CAElC;IAED;;OAEG;IAYH,IAAI,UAAS;IAEb;;OAEG;IAEH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;OAEG;IAEH,QAAQ,UAAS;IAEjB;;;;;;;;;;;;;;OAcG;IAEH,UAAU,UAAQ;IAGlB,OAAO,CAAC,MAAM,CAAoC;IAGlD,OAAO,CAAC,MAAM,CAAc;IAG5B,OAAO,CAAC,SAAS,CAAc;IAG/B,OAAO,CAAC,OAAO,CAAc;IAE7B;;OAEG;IACsB,OAAO,CAAC,MAAM,CAA0B;IAEjE;;;OAGG;IAC+B,OAAO,CAAC,cAAc,CAErD;IAEH;;OAEG;IACuB,OAAO,CAAC,OAAO,CAA0B;IAEnE,OAAO,CAAC,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC;IAM/C,OAAO,KAAK,UAAU,GAErB;IAED,OAAO,CAAC,mBAAmB;IAmB3B,OAAO,CAAC,WAAW;IAUnB,OAAO,CAAC,mBAAmB,CAQzB;IAEF,OAAO,CAAC,SAAS,CAKf;IAEF,OAAO,CAAC,kBAAkB,CAUxB;IAEF,OAAO,CAAC,YAAY;IAUpB,OAAO,CAAC,eAAe;IAwBvB,MAAM,IAAI,cAAc;CAoBzB;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,WAAW,EAAE,QAAQ,CAAC;KACvB;CACF"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a}from"../../chunk-
|
|
1
|
+
import{a}from"../../chunk-6BSYS2G5.js";import"../../chunk-VU6LRFZR.js";import"../../chunk-CYLRPJKP.js";import"../../chunk-6LT7O7T2.js";import"../../chunk-DINNT5P2.js";import"../../chunk-HYB2HRRX.js";import"../../chunk-GRL4DWKG.js";import"../../chunk-3USCFSFQ.js";import"../../chunk-7GK5LKBV.js";import"../../chunk-5MOOXA2X.js";import"../../chunk-4OT5AMS5.js";import"../../chunk-IZ2LK5GK.js";export{a as default};
|
|
2
2
|
//# sourceMappingURL=bl-dialog.js.map
|
|
@@ -27,4 +27,5 @@ export declare const DialogWithFullWidthAction: Story;
|
|
|
27
27
|
export declare const DialogWithFullWidthActions: Story;
|
|
28
28
|
export declare const DialogWithTabGroup: Story;
|
|
29
29
|
export declare const CriticalDialog: Story;
|
|
30
|
+
export declare const CaptionLineClampDialog: Story;
|
|
30
31
|
//# sourceMappingURL=bl-dialog.stories.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bl-dialog.stories.d.ts","sourceRoot":"","sources":["../../../src/components/dialog/bl-dialog.stories.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AAOhE,QAAA,MAAM,IAAI,EAAE,IA4BX,CAAC;AAEF,eAAe,IAAI,CAAC;AAEpB,UAAU,UAAU;IAClB,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,KAAK,KAAK,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"bl-dialog.stories.d.ts","sourceRoot":"","sources":["../../../src/components/dialog/bl-dialog.stories.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AAOhE,QAAA,MAAM,IAAI,EAAE,IA4BX,CAAC;AAEF,eAAe,IAAI,CAAC;AAEpB,UAAU,UAAU;IAClB,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,KAAK,KAAK,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAC;AAkKlC,eAAO,MAAM,UAAU,EAAE,KAWxB,CAAC;AAEF,eAAO,MAAM,sBAAsB,EAAE,KASpC,CAAC;AAEF,eAAO,MAAM,YAAY,EAAE,KAU1B,CAAC;AAEF,eAAO,MAAM,uBAAuB,EAAE,KAYrC,CAAC;AAEF,eAAO,MAAM,sBAAsB,EAAE,KAUpC,CAAC;AAEF,eAAO,MAAM,yBAAyB,EAAE,KASvC,CAAC;AAGF,eAAO,MAAM,0BAA0B,EAAE,KAUxC,CAAC;AAEF,eAAO,MAAM,kBAAkB,EAAE,KAWhC,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,KAU5B,CAAC;AAEF,eAAO,MAAM,sBAAsB,EAAE,KAOpC,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{a as c}from"../../chunk-HSVSMABT.js";import{a as n}from"../../chunk-DINNT5P2.js";import{b as l}from"../../chunk-3USCFSFQ.js";import"../../chunk-7GK5LKBV.js";import{b as e}from"../../chunk-4OT5AMS5.js";import"../../chunk-IZ2LK5GK.js";var m={title:"Components/Dialog",component:"bl-dialog",parameters:{chromatic:{viewports:[1e3]},controls:{exclude:["id"]}},decorators:[c],argTypes:{open:{control:"boolean"},polyfilled:{control:"boolean"},caption:{control:"text"},content:{control:"text"}}},
|
|
1
|
+
import{a as c}from"../../chunk-HSVSMABT.js";import{a as n}from"../../chunk-DINNT5P2.js";import{b as l}from"../../chunk-3USCFSFQ.js";import"../../chunk-7GK5LKBV.js";import{b as e}from"../../chunk-4OT5AMS5.js";import"../../chunk-IZ2LK5GK.js";var m={title:"Components/Dialog",component:"bl-dialog",parameters:{chromatic:{viewports:[1e3]},controls:{exclude:["id"]}},decorators:[c],argTypes:{open:{control:"boolean"},polyfilled:{control:"boolean"},caption:{control:"text"},content:{control:"text"}}},q=m,t=i=>async()=>{let a=document.getElementById(i);a.open=!0},o=i=>e`
|
|
2
2
|
<bl-button @bl-click="${t(i.id)}" variant="secondary">Open Dialog</bl-button>
|
|
3
3
|
|
|
4
4
|
<bl-dialog
|
|
@@ -83,8 +83,11 @@ ${o({...i,className:"limited-width",content:`<div class="content">
|
|
|
83
83
|
Ut enim ad minim veniam, quis nostrud exercitatioullamco laboris nisi ut aliquip ex ea commodo consequat.</p>
|
|
84
84
|
</div>`})}`,u=i=>e`
|
|
85
85
|
<style>
|
|
86
|
+
#dl-sizing {
|
|
87
|
+
--bl-dialog-width: 31rem;
|
|
88
|
+
}
|
|
89
|
+
|
|
86
90
|
.my-dialog-content {
|
|
87
|
-
width: 400px;
|
|
88
91
|
height:200px;
|
|
89
92
|
margin:0;
|
|
90
93
|
padding:0;
|
|
@@ -121,5 +124,14 @@ when an unknown printer took a galley of type and scrambled it to make a type sp
|
|
|
121
124
|
</p>
|
|
122
125
|
|
|
123
126
|
`})}
|
|
124
|
-
`,
|
|
127
|
+
`,y=i=>e`
|
|
128
|
+
<style>
|
|
129
|
+
#dl-caption-line-clamp {
|
|
130
|
+
--bl-dialog-width: 31rem;
|
|
131
|
+
--bl-dialog-caption-line-clamp: 2;
|
|
132
|
+
}
|
|
133
|
+
</style>
|
|
134
|
+
|
|
135
|
+
${o({...i,caption:"I am a very long text I am a very long text I am a very long text",content:"You can adjust the line clamp"})}
|
|
136
|
+
`,v={args:{id:"dl-basic",caption:"Use location service?",content:"Let us help determine location. This means sending anonymous location data to us.",primaryAction:"Agree",secondaryAction:"Disagree",tertiaryAction:"Cancel"},render:o,play:t("dl-basic")},L={args:{id:"dl-sticky-footer",caption:"Terms And Conditions",primaryAction:"Agree",secondaryAction:"Disagree"},render:d,play:t("dl-sticky-footer")},w={args:{id:"dl-sizing",primaryAction:"Agree",secondaryAction:"Disagree",tertiaryAction:"Cancel",caption:"I am a long text but I will not block the width."},render:u,play:t("dl-sizing")},k={args:{id:"dl-focused-action",caption:"Use location service?",content:"Let us help determine location. This means sending anonymous location data to us.",primaryAction:"Agree",secondaryAction:"Disagree",focusSecondary:!0,tertiaryAction:"Cancel"},render:o,play:t("dl-focused-action")},D={args:{id:"dl-focused-input",caption:"Name your file",content:'<p>Please provide a name for your file</p><bl-input placeholder="filename.pdf" autofocus></bl-input>',primaryAction:"OK",tertiaryAction:"Cancel"},render:o,play:t("dl-focused-input")},C={args:{id:"dl-full-width-action",caption:"Action completed",content:"<p>Your process is done!</p>",primaryAction:"OK"},render:s,play:t("dl-full-width-action")},T={args:{id:"dl-full-width-actions",caption:"Are you sure to delete?",content:"<p>Do you want to really delete the file?</p>",primaryAction:"Delete",secondaryAction:"Cancel"},render:s,play:t("dl-full-width-actions")},$={args:{id:"dl-tab-group",caption:"Use location service?",content:"Let us help determine location. This means sending anonymous location data to us.",primaryAction:"Agree",secondaryAction:"Disagree",tertiaryAction:"Cancel"},render:p,play:t("dl-tab-group")},I={args:{id:"dl-critical",caption:"Critical Action Required",content:"<p>This action is irreversible. Please confirm to proceed.</p>",closeAction:"Confirm",critical:!0},render:s,play:t("dl-critical")},S={args:{id:"dl-caption-line-clamp",closeAction:"Confirm"},render:y,play:t("dl-caption-line-clamp")};export{v as BasicUsage,S as CaptionLineClampDialog,I as CriticalDialog,w as DialogSizing,k as DialogWithFocusedAction,D as DialogWithFocusedInput,C as DialogWithFullWidthAction,T as DialogWithFullWidthActions,L as DialogWithStickyFooter,$ as DialogWithTabGroup,q as default};
|
|
125
137
|
//# sourceMappingURL=bl-dialog.stories.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/components/dialog/bl-dialog.stories.ts"],
|
|
4
|
-
"sourcesContent": ["import type { Meta, StoryObj } from \"@storybook/web-components\";\nimport { html } from \"lit\";\nimport { ifDefined } from \"lit/directives/if-defined.js\";\nimport { unsafeHTML } from \"lit/directives/unsafe-html.js\";\nimport { fullscreenLayout } from \"../../utilities/chromatic-decorators\";\nimport type BlDialog from \"./bl-dialog\";\n\nconst meta: Meta = {\n title: \"Components/Dialog\",\n component: \"bl-dialog\",\n parameters: {\n chromatic: {\n viewports: [1000]\n },\n controls: {\n exclude: [\"id\"],\n }\n },\n decorators: [\n fullscreenLayout,\n ],\n argTypes: {\n open: {\n control: \"boolean\",\n },\n polyfilled: {\n control: \"boolean\",\n },\n caption: {\n control: \"text\"\n },\n content: {\n control: \"text\"\n }\n }\n};\n\nexport default meta;\n\ninterface DialogArgs {\n id: string;\n className?: string;\n caption?: string;\n open?: boolean;\n polyfilled?: boolean;\n content?: string;\n primaryAction?: string;\n secondaryAction?: string;\n tertiaryAction?: string;\n focusPrimary?: boolean;\n focusSecondary?: boolean;\n focusTertiary?: boolean;\n critical?: boolean;\n closeAction?: string;\n}\n\ntype Story = StoryObj<DialogArgs>;\n\nconst dialogOpener = (dialogId: string) => async () => {\n const dialog = document.getElementById(dialogId) as BlDialog;\n\n dialog.open = true;\n};\n\nconst BasicTemplate = (args: DialogArgs) => html`\n<bl-button @bl-click=\"${dialogOpener(args.id)}\" variant=\"secondary\">Open Dialog</bl-button>\n\n<bl-dialog\n id=${args.id}\n class=\"${ifDefined(args.className)}\"\n caption=\"${ifDefined(args.caption)}\"\n ?open=\"${args.open}\"\n ?polyfilled=\"${args.polyfilled}\"\n ?critical=\"${args.critical}\">\n ${\n unsafeHTML(args.content)\n }${\n args.primaryAction ? html`\n\n <bl-button slot=\"primary-action\" variant=\"primary\" ?autofocus=${args.focusPrimary} size=\"large\">${args.primaryAction}</bl-button>` : \"\"}${\n args.secondaryAction ? html`\n <bl-button slot=\"secondary-action\" variant=\"secondary\" ?autofocus=${args.focusSecondary} size=\"large\">${args.secondaryAction}</bl-button>` : \"\"}${\n args.tertiaryAction ? html`\n <bl-button slot=\"tertiary-action\" variant=\"tertiary\" ?autofocus=${args.focusTertiary} size=\"large\">${args.tertiaryAction}</bl-button>` : \"\"}\n ${\n args.closeAction ? html`\n <bl-button slot=\"primary-action\" variant=\"primary\" ?autofocus=${args.focusSecondary} size=\"large\" @click=${(e: CustomEvent) => (e.target as HTMLElement).closest(\"bl-dialog\")?.toggleAttribute(\"open\")}>${args.closeAction}</bl-button>` : \"\"}\n</bl-dialog>\n`;\n\nconst FullWidthActionsTemplate = (args: DialogArgs) => html`\n<style>\n bl-dialog.full-width-actions bl-button {\n --bl-button-display: block;\n flex: 1;\n }\n</style>\n\n${BasicTemplate({...args, className: \"full-width-actions\"})}\n`;\n\nconst TemplateWithStickyFooter = (args: DialogArgs) => html`\n<style>\n bl-dialog.limited-width .content {\n max-width: 500px;\n max-height: 500px;\n }\n</style>\n\n${BasicTemplate({...args, className: \"limited-width\", content: `<div class=\"content\">\n <bl-alert icon>Please read all terms and conditions.</bl-alert>\n <h4>Lorem ipsum dolor sit amet</h4>\n <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididun ut labore et dolore magna aliqua.\n Ut enim ad minim veniam, quis nostrud exercitatioullamco laboris nisi ut aliquip ex ea commodo consequat.</p>\n <ul>\n <li>At vero eos et accusamus et iusto odio dignissimos ducimus qui blanditiis</li>\n <li>Et harum quidem rerum facilis est et expedita distinctio. Nam libero tempore.</li>\n <li>Ut enim ad minima veniam, quis nostrum exercitationem ullam corporis suscipit</li>\n <li>Et harum quidem rerum facilis est et expedita distinctio. Nam libero tempore.</li>\n <li>At vero eos et accusamus et iusto odio dignissimos ducimus qui blanditiis</li>\n <li>Et harum quidem rerum facilis est et expedita distinctio. Nam libero tempore.</li>\n <li>Ut enim ad minima veniam, quis nostrum exercitationem ullam corporis suscipit</li>\n <li>Et harum quidem rerum facilis est et expedita distinctio. Nam libero tempore.</li>\n </ul>\n <p>The standard chunk of Lorem Ipsum used since the 1500s is reproduced below for those interested.\n Sections 1.10.32 and 1.10.33 from \"de Finibus Bonorum et Malorum\" by Cicero are also reproduced in their exact original form\n accompanied by English versions from the 1914 translation by H. Rackham.</p>\n <h4>Quis autem vel eum iure reprehenderit qui</h4>\n <p>Lorem Ipsum is simply dummy text of the printing and typesetting industry\n Lorem Ipsum has been the industry's standard dummy text ever since the 1500s when an unknown printer took a galley of type and scramble\n it to make a type specimen book.</p>\n <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididun ut labore et dolore magna aliqua.\n Ut enim ad minim veniam, quis nostrud exercitatioullamco laboris nisi ut aliquip ex ea commodo consequat.</p>\n <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididun ut labore et dolore magna aliqua.\n Ut enim ad minim veniam, quis nostrud exercitatioullamco laboris nisi ut aliquip ex ea commodo consequat.</p>\n <ul>\n <li>At vero eos et accusamus et iusto odio dignissimos ducimus qui blanditiis</li>\n <li>Et harum quidem rerum facilis est et expedita distinctio. Nam libero tempore.</li>\n <li>Ut enim ad minima veniam, quis nostrum exercitationem ullam corporis suscipit</li>\n <li>Et harum quidem rerum facilis est et expedita distinctio. Nam libero tempore.</li>\n <li>At vero eos et accusamus et iusto odio dignissimos ducimus qui blanditiis</li>\n <li>Et harum quidem rerum facilis est et expedita distinctio. Nam libero tempore.</li>\n <li>Ut enim ad minima veniam, quis nostrum exercitationem ullam corporis suscipit</li>\n <li>Et harum quidem rerum facilis est et expedita distinctio. Nam libero tempore.</li>\n </ul>\n <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididun ut labore et dolore magna aliqua.\n Ut enim ad minim veniam, quis nostrud exercitatioullamco laboris nisi ut aliquip ex ea commodo consequat.<br/>\n Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididun ut labore et dolore magna aliqua.\n Ut enim ad minim veniam, quis nostrud exercitatioullamco laboris nisi ut aliquip ex ea commodo consequat.<br/>\n Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididun ut labore et dolore magna aliqua.\n Ut enim ad minim veniam, quis nostrud exercitatioullamco laboris nisi ut aliquip ex ea commodo consequat.</p>\n <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididun ut labore et dolore magna aliqua.\n Ut enim ad minim veniam, quis nostrud exercitatioullamco laboris nisi ut aliquip ex ea commodo consequat.<br/>\n Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididun ut labore et dolore magna aliqua.\n Ut enim ad minim veniam, quis nostrud exercitatioullamco laboris nisi ut aliquip ex ea commodo consequat.<br/>\n Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididun ut labore et dolore magna aliqua.\n Ut enim ad minim veniam, quis nostrud exercitatioullamco laboris nisi ut aliquip ex ea commodo consequat.</p>\n</div>`\n})}`;\n\nconst SizingTemplate = (args: DialogArgs) => html`\n<style>\n .my-dialog-content {\n width: 400px;\n height:200px;\n margin:0;\n padding:0;\n }\n</style>\n\n${BasicTemplate({...args, content: `<p class=\"my-dialog-content\">Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s,\nwhen an unknown printer took a galley of type and scrambled it to make a type specimen book. It has survived not only five centuries, but also the leap into electronic typesetting,\nremaining essentially unchanged. It was popularised in the 1960s with the release of Letraset sheets containing Lorem Ipsum passages, and more recently with desktop publishing\nsoftware like Aldus PageMaker including versions of Lorem Ipsum. Let us help determine location. This means sending anonymous location data to us.\nContrary to popular belief, Lorem Ipsum is not simply random text. It has roots in a piece of classical Latin literature from 45 BC, making it over 2000 years old. Richard McClintock,\na Latin professor at Hampden-Sydney College in Virginia, looked up one of the more obscure Latin words, consectetur, from a Lorem Ipsum passage, and going through the cites\nof the word in classical literature, discovered the undoubtable source. Lorem Ipsum comes from sections 1.10.32 and 1.10.33 of \"de Finibus Bonorum et Malorum\"\n(The Extremes of Good and Evil) by Cicero, written in 45 BC. This book is a treatise on the theory of ethics, very popular during the Renaissance. The first line of Lorem Ipsum,\n\"Lorem ipsum dolor sit amet..\", comes from a line in section 1.10.32.</p>` })}\n`;\n\nconst TabGroupTemplate = (args: DialogArgs) => html`\n<style>\n .tab-dialog-content {\n height:50px;\n margin-top: 20px;\n }\n</style>\n\n${BasicTemplate({...args, content: `\n<bl-tab-group>\n <bl-tab name=\"test-1\" slot=\"tabs\" caption=\"Caption\">Tab 1</bl-tab>\n <bl-tab name=\"test-2\" slot=\"tabs\">Tab 2</bl-tab>\n <bl-tab name=\"test-3\" slot=\"tabs\" disabled caption=\"Caption\">Tab 3</bl-tab>\n</bl-tab-group>\n<p class=\"tab-dialog-content\">\nNormal dialog contents has default padding in bl-dialog component. But bl-tab-group has full width in bl-dialog component.\nLorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s,\nwhen an unknown printer took a galley of type and scrambled it to make a type specimen book.\n</p>\n\n` })}\n`;\n\nexport const BasicUsage: Story = {\n args: {\n id: \"dl-basic\",\n caption: \"Use location service?\",\n content: \"Let us help determine location. This means sending anonymous location data to us.\",\n primaryAction: \"Agree\",\n secondaryAction: \"Disagree\",\n tertiaryAction: \"Cancel\",\n },\n render: BasicTemplate,\n play: dialogOpener(\"dl-basic\")\n};\n\nexport const DialogWithStickyFooter: Story = {\n args: {\n id: \"dl-sticky-footer\",\n caption: \"Terms And Conditions\",\n primaryAction: \"Agree\",\n secondaryAction: \"Disagree\",\n },\n render: TemplateWithStickyFooter,\n play: dialogOpener(\"dl-sticky-footer\")\n};\n\nexport const DialogSizing: Story = {\n args: {\n id: \"dl-sizing\",\n primaryAction: \"Agree\",\n secondaryAction: \"Disagree\",\n tertiaryAction: \"Cancel\"\n },\n render: SizingTemplate,\n play: dialogOpener(\"dl-sizing\")\n};\n\nexport const DialogWithFocusedAction: Story = {\n args: {\n id: \"dl-focused-action\",\n caption: \"Use location service?\",\n content: \"Let us help determine location. This means sending anonymous location data to us.\",\n primaryAction: \"Agree\",\n secondaryAction: \"Disagree\",\n focusSecondary: true,\n tertiaryAction: \"Cancel\"\n },\n render: BasicTemplate,\n play: dialogOpener(\"dl-focused-action\")\n};\n\nexport const DialogWithFocusedInput: Story = {\n args: {\n id: \"dl-focused-input\",\n caption: \"Name your file\",\n content: '<p>Please provide a name for your file</p><bl-input placeholder=\"filename.pdf\" autofocus></bl-input>',\n primaryAction: \"OK\",\n tertiaryAction: \"Cancel\"\n },\n render: BasicTemplate,\n play: dialogOpener(\"dl-focused-input\")\n};\n\nexport const DialogWithFullWidthAction: Story = {\n args: {\n id: \"dl-full-width-action\",\n caption: \"Action completed\",\n content: \"<p>Your process is done!</p>\",\n primaryAction: \"OK\"\n },\n render: FullWidthActionsTemplate,\n play: dialogOpener(\"dl-full-width-action\")\n};\n\n\nexport const DialogWithFullWidthActions: Story = {\n args: {\n id: \"dl-full-width-actions\",\n caption: \"Are you sure to delete?\",\n content: \"<p>Do you want to really delete the file?</p>\",\n primaryAction: \"Delete\",\n secondaryAction: \"Cancel\"\n },\n render: FullWidthActionsTemplate,\n play: dialogOpener(\"dl-full-width-actions\")\n};\n\nexport const DialogWithTabGroup: Story = {\n args: {\n id: \"dl-tab-group\",\n caption: \"Use location service?\",\n content: \"Let us help determine location. This means sending anonymous location data to us.\",\n primaryAction: \"Agree\",\n secondaryAction: \"Disagree\",\n tertiaryAction: \"Cancel\",\n },\n render: TabGroupTemplate,\n play: dialogOpener(\"dl-tab-group\")\n};\n\nexport const CriticalDialog: Story = {\n args: {\n id: \"dl-critical\",\n caption: \"Critical Action Required\",\n content: \"<p>This action is irreversible. Please confirm to proceed.</p>\",\n closeAction: \"Confirm\",\n critical: true,\n },\n render: FullWidthActionsTemplate,\n play: dialogOpener(\"dl-critical\")\n};\n"],
|
|
5
|
-
"mappings": "gPAOA,IAAMA,EAAa,CACjB,MAAO,oBACP,UAAW,YACX,WAAY,CACV,UAAW,CACT,UAAW,CAAC,GAAI,CAClB,EACA,SAAU,CACR,QAAS,CAAC,IAAI,CAChB,CACF,EACA,WAAY,CACVC,CACF,EACA,SAAU,CACR,KAAM,CACJ,QAAS,SACX,EACA,WAAY,CACV,QAAS,SACX,EACA,QAAS,CACP,QAAS,MACX,EACA,QAAS,CACP,QAAS,MACX,CACF,CACF,EAEOC,EAAQF,EAqBTG,EAAgBC,GAAqB,SAAY,CACrD,IAAMC,EAAS,SAAS,eAAeD,CAAQ,EAE/CC,EAAO,KAAO,EAChB,EAEMC,EAAiBC,GAAqBC;AAAA,wBACpBL,EAAaI,EAAK,EAAE;AAAA;AAAA;AAAA,OAGrCA,EAAK;AAAA,WACDE,EAAUF,EAAK,SAAS;AAAA,aACtBE,EAAUF,EAAK,OAAO;AAAA,WACxBA,EAAK;AAAA,iBACCA,EAAK;AAAA,eACPA,EAAK;AAAA,MAEdG,EAAWH,EAAK,OAAO,IAEvBA,EAAK,cAAgBC;AAAA;AAAA,kEAEuCD,EAAK,6BAA6BA,EAAK,4BAA8B,KACjIA,EAAK,gBAAkBC;AAAA,sEACyCD,EAAK,+BAA+BA,EAAK,8BAAgC,KACzIA,EAAK,eAAiBC;AAAA,oEACwCD,EAAK,8BAA8BA,EAAK,6BAA+B;AAAA,IAEvIA,EAAK,YAAcC;AAAA,oEAC6CD,EAAK,sCAAuCI,GAAgB,CAtFhI,IAAAC,EAsFoI,OAAAA,EAAAD,EAAE,OAAuB,QAAQ,WAAW,IAA5C,YAAAC,EAA+C,gBAAgB,YAAWL,EAAK,0BAA4B;AAAA;AAAA,EAIzOM,EAA4BN,GAAqBC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQrDF,EAAc,CAAC,GAAGC,EAAM,UAAW,oBAAoB,CAAC;AAAA,EAGpDO,EAA4BP,GAAqBC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQrDF,EAAc,CAAC,GAAGC,EAAM,UAAW,gBAAiB,QAAS;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,OAiD/D,CAAC,IAEKQ,EAAkBR,GAAqBC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,
|
|
6
|
-
"names": ["meta", "fullscreenLayout", "bl_dialog_stories_default", "dialogOpener", "dialogId", "dialog", "BasicTemplate", "args", "x", "l", "o", "e", "_a", "FullWidthActionsTemplate", "TemplateWithStickyFooter", "SizingTemplate", "TabGroupTemplate", "BasicUsage", "DialogWithStickyFooter", "DialogSizing", "DialogWithFocusedAction", "DialogWithFocusedInput", "DialogWithFullWidthAction", "DialogWithFullWidthActions", "DialogWithTabGroup", "CriticalDialog"]
|
|
4
|
+
"sourcesContent": ["import type { Meta, StoryObj } from \"@storybook/web-components\";\nimport { html } from \"lit\";\nimport { ifDefined } from \"lit/directives/if-defined.js\";\nimport { unsafeHTML } from \"lit/directives/unsafe-html.js\";\nimport { fullscreenLayout } from \"../../utilities/chromatic-decorators\";\nimport type BlDialog from \"./bl-dialog\";\n\nconst meta: Meta = {\n title: \"Components/Dialog\",\n component: \"bl-dialog\",\n parameters: {\n chromatic: {\n viewports: [1000]\n },\n controls: {\n exclude: [\"id\"],\n }\n },\n decorators: [\n fullscreenLayout,\n ],\n argTypes: {\n open: {\n control: \"boolean\",\n },\n polyfilled: {\n control: \"boolean\",\n },\n caption: {\n control: \"text\"\n },\n content: {\n control: \"text\"\n }\n }\n};\n\nexport default meta;\n\ninterface DialogArgs {\n id: string;\n className?: string;\n caption?: string;\n open?: boolean;\n polyfilled?: boolean;\n content?: string;\n primaryAction?: string;\n secondaryAction?: string;\n tertiaryAction?: string;\n focusPrimary?: boolean;\n focusSecondary?: boolean;\n focusTertiary?: boolean;\n critical?: boolean;\n closeAction?: string;\n}\n\ntype Story = StoryObj<DialogArgs>;\n\nconst dialogOpener = (dialogId: string) => async () => {\n const dialog = document.getElementById(dialogId) as BlDialog;\n\n dialog.open = true;\n};\n\nconst BasicTemplate = (args: DialogArgs) => html`\n<bl-button @bl-click=\"${dialogOpener(args.id)}\" variant=\"secondary\">Open Dialog</bl-button>\n\n<bl-dialog\n id=${args.id}\n class=\"${ifDefined(args.className)}\"\n caption=\"${ifDefined(args.caption)}\"\n ?open=\"${args.open}\"\n ?polyfilled=\"${args.polyfilled}\"\n ?critical=\"${args.critical}\">\n ${\n unsafeHTML(args.content)\n }${\n args.primaryAction ? html`\n\n <bl-button slot=\"primary-action\" variant=\"primary\" ?autofocus=${args.focusPrimary} size=\"large\">${args.primaryAction}</bl-button>` : \"\"}${\n args.secondaryAction ? html`\n <bl-button slot=\"secondary-action\" variant=\"secondary\" ?autofocus=${args.focusSecondary} size=\"large\">${args.secondaryAction}</bl-button>` : \"\"}${\n args.tertiaryAction ? html`\n <bl-button slot=\"tertiary-action\" variant=\"tertiary\" ?autofocus=${args.focusTertiary} size=\"large\">${args.tertiaryAction}</bl-button>` : \"\"}\n ${\n args.closeAction ? html`\n <bl-button slot=\"primary-action\" variant=\"primary\" ?autofocus=${args.focusSecondary} size=\"large\" @click=${(e: CustomEvent) => (e.target as HTMLElement).closest(\"bl-dialog\")?.toggleAttribute(\"open\")}>${args.closeAction}</bl-button>` : \"\"}\n</bl-dialog>\n`;\n\nconst FullWidthActionsTemplate = (args: DialogArgs) => html`\n<style>\n bl-dialog.full-width-actions bl-button {\n --bl-button-display: block;\n flex: 1;\n }\n</style>\n\n${BasicTemplate({...args, className: \"full-width-actions\"})}\n`;\n\nconst TemplateWithStickyFooter = (args: DialogArgs) => html`\n<style>\n bl-dialog.limited-width .content {\n max-width: 500px;\n max-height: 500px;\n }\n</style>\n\n${BasicTemplate({...args, className: \"limited-width\", content: `<div class=\"content\">\n <bl-alert icon>Please read all terms and conditions.</bl-alert>\n <h4>Lorem ipsum dolor sit amet</h4>\n <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididun ut labore et dolore magna aliqua.\n Ut enim ad minim veniam, quis nostrud exercitatioullamco laboris nisi ut aliquip ex ea commodo consequat.</p>\n <ul>\n <li>At vero eos et accusamus et iusto odio dignissimos ducimus qui blanditiis</li>\n <li>Et harum quidem rerum facilis est et expedita distinctio. Nam libero tempore.</li>\n <li>Ut enim ad minima veniam, quis nostrum exercitationem ullam corporis suscipit</li>\n <li>Et harum quidem rerum facilis est et expedita distinctio. Nam libero tempore.</li>\n <li>At vero eos et accusamus et iusto odio dignissimos ducimus qui blanditiis</li>\n <li>Et harum quidem rerum facilis est et expedita distinctio. Nam libero tempore.</li>\n <li>Ut enim ad minima veniam, quis nostrum exercitationem ullam corporis suscipit</li>\n <li>Et harum quidem rerum facilis est et expedita distinctio. Nam libero tempore.</li>\n </ul>\n <p>The standard chunk of Lorem Ipsum used since the 1500s is reproduced below for those interested.\n Sections 1.10.32 and 1.10.33 from \"de Finibus Bonorum et Malorum\" by Cicero are also reproduced in their exact original form\n accompanied by English versions from the 1914 translation by H. Rackham.</p>\n <h4>Quis autem vel eum iure reprehenderit qui</h4>\n <p>Lorem Ipsum is simply dummy text of the printing and typesetting industry\n Lorem Ipsum has been the industry's standard dummy text ever since the 1500s when an unknown printer took a galley of type and scramble\n it to make a type specimen book.</p>\n <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididun ut labore et dolore magna aliqua.\n Ut enim ad minim veniam, quis nostrud exercitatioullamco laboris nisi ut aliquip ex ea commodo consequat.</p>\n <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididun ut labore et dolore magna aliqua.\n Ut enim ad minim veniam, quis nostrud exercitatioullamco laboris nisi ut aliquip ex ea commodo consequat.</p>\n <ul>\n <li>At vero eos et accusamus et iusto odio dignissimos ducimus qui blanditiis</li>\n <li>Et harum quidem rerum facilis est et expedita distinctio. Nam libero tempore.</li>\n <li>Ut enim ad minima veniam, quis nostrum exercitationem ullam corporis suscipit</li>\n <li>Et harum quidem rerum facilis est et expedita distinctio. Nam libero tempore.</li>\n <li>At vero eos et accusamus et iusto odio dignissimos ducimus qui blanditiis</li>\n <li>Et harum quidem rerum facilis est et expedita distinctio. Nam libero tempore.</li>\n <li>Ut enim ad minima veniam, quis nostrum exercitationem ullam corporis suscipit</li>\n <li>Et harum quidem rerum facilis est et expedita distinctio. Nam libero tempore.</li>\n </ul>\n <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididun ut labore et dolore magna aliqua.\n Ut enim ad minim veniam, quis nostrud exercitatioullamco laboris nisi ut aliquip ex ea commodo consequat.<br/>\n Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididun ut labore et dolore magna aliqua.\n Ut enim ad minim veniam, quis nostrud exercitatioullamco laboris nisi ut aliquip ex ea commodo consequat.<br/>\n Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididun ut labore et dolore magna aliqua.\n Ut enim ad minim veniam, quis nostrud exercitatioullamco laboris nisi ut aliquip ex ea commodo consequat.</p>\n <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididun ut labore et dolore magna aliqua.\n Ut enim ad minim veniam, quis nostrud exercitatioullamco laboris nisi ut aliquip ex ea commodo consequat.<br/>\n Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididun ut labore et dolore magna aliqua.\n Ut enim ad minim veniam, quis nostrud exercitatioullamco laboris nisi ut aliquip ex ea commodo consequat.<br/>\n Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididun ut labore et dolore magna aliqua.\n Ut enim ad minim veniam, quis nostrud exercitatioullamco laboris nisi ut aliquip ex ea commodo consequat.</p>\n</div>`\n})}`;\n\nconst SizingTemplate = (args: DialogArgs) => html`\n<style>\n #dl-sizing {\n --bl-dialog-width: 31rem;\n }\n\n .my-dialog-content {\n height:200px;\n margin:0;\n padding:0;\n }\n</style>\n\n${BasicTemplate({...args, content: `<p class=\"my-dialog-content\">Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s,\nwhen an unknown printer took a galley of type and scrambled it to make a type specimen book. It has survived not only five centuries, but also the leap into electronic typesetting,\nremaining essentially unchanged. It was popularised in the 1960s with the release of Letraset sheets containing Lorem Ipsum passages, and more recently with desktop publishing\nsoftware like Aldus PageMaker including versions of Lorem Ipsum. Let us help determine location. This means sending anonymous location data to us.\nContrary to popular belief, Lorem Ipsum is not simply random text. It has roots in a piece of classical Latin literature from 45 BC, making it over 2000 years old. Richard McClintock,\na Latin professor at Hampden-Sydney College in Virginia, looked up one of the more obscure Latin words, consectetur, from a Lorem Ipsum passage, and going through the cites\nof the word in classical literature, discovered the undoubtable source. Lorem Ipsum comes from sections 1.10.32 and 1.10.33 of \"de Finibus Bonorum et Malorum\"\n(The Extremes of Good and Evil) by Cicero, written in 45 BC. This book is a treatise on the theory of ethics, very popular during the Renaissance. The first line of Lorem Ipsum,\n\"Lorem ipsum dolor sit amet..\", comes from a line in section 1.10.32.</p>` })}\n`;\n\nconst TabGroupTemplate = (args: DialogArgs) => html`\n<style>\n .tab-dialog-content {\n height:50px;\n margin-top: 20px;\n }\n</style>\n\n${BasicTemplate({...args, content: `\n<bl-tab-group>\n <bl-tab name=\"test-1\" slot=\"tabs\" caption=\"Caption\">Tab 1</bl-tab>\n <bl-tab name=\"test-2\" slot=\"tabs\">Tab 2</bl-tab>\n <bl-tab name=\"test-3\" slot=\"tabs\" disabled caption=\"Caption\">Tab 3</bl-tab>\n</bl-tab-group>\n<p class=\"tab-dialog-content\">\nNormal dialog contents has default padding in bl-dialog component. But bl-tab-group has full width in bl-dialog component.\nLorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s,\nwhen an unknown printer took a galley of type and scrambled it to make a type specimen book.\n</p>\n\n` })}\n`;\n\nconst CaptionLineClampTemplate = (args: DialogArgs) => html`\n<style>\n #dl-caption-line-clamp {\n --bl-dialog-width: 31rem;\n --bl-dialog-caption-line-clamp: 2;\n }\n</style>\n\n${BasicTemplate({...args, caption: \"I am a very long text I am a very long text I am a very long text\", content: \"You can adjust the line clamp\" })}\n`;\n\nexport const BasicUsage: Story = {\n args: {\n id: \"dl-basic\",\n caption: \"Use location service?\",\n content: \"Let us help determine location. This means sending anonymous location data to us.\",\n primaryAction: \"Agree\",\n secondaryAction: \"Disagree\",\n tertiaryAction: \"Cancel\",\n },\n render: BasicTemplate,\n play: dialogOpener(\"dl-basic\")\n};\n\nexport const DialogWithStickyFooter: Story = {\n args: {\n id: \"dl-sticky-footer\",\n caption: \"Terms And Conditions\",\n primaryAction: \"Agree\",\n secondaryAction: \"Disagree\",\n },\n render: TemplateWithStickyFooter,\n play: dialogOpener(\"dl-sticky-footer\")\n};\n\nexport const DialogSizing: Story = {\n args: {\n id: \"dl-sizing\",\n primaryAction: \"Agree\",\n secondaryAction: \"Disagree\",\n tertiaryAction: \"Cancel\",\n caption: \"I am a long text but I will not block the width.\"\n },\n render: SizingTemplate,\n play: dialogOpener(\"dl-sizing\")\n};\n\nexport const DialogWithFocusedAction: Story = {\n args: {\n id: \"dl-focused-action\",\n caption: \"Use location service?\",\n content: \"Let us help determine location. This means sending anonymous location data to us.\",\n primaryAction: \"Agree\",\n secondaryAction: \"Disagree\",\n focusSecondary: true,\n tertiaryAction: \"Cancel\"\n },\n render: BasicTemplate,\n play: dialogOpener(\"dl-focused-action\")\n};\n\nexport const DialogWithFocusedInput: Story = {\n args: {\n id: \"dl-focused-input\",\n caption: \"Name your file\",\n content: '<p>Please provide a name for your file</p><bl-input placeholder=\"filename.pdf\" autofocus></bl-input>',\n primaryAction: \"OK\",\n tertiaryAction: \"Cancel\"\n },\n render: BasicTemplate,\n play: dialogOpener(\"dl-focused-input\")\n};\n\nexport const DialogWithFullWidthAction: Story = {\n args: {\n id: \"dl-full-width-action\",\n caption: \"Action completed\",\n content: \"<p>Your process is done!</p>\",\n primaryAction: \"OK\"\n },\n render: FullWidthActionsTemplate,\n play: dialogOpener(\"dl-full-width-action\")\n};\n\n\nexport const DialogWithFullWidthActions: Story = {\n args: {\n id: \"dl-full-width-actions\",\n caption: \"Are you sure to delete?\",\n content: \"<p>Do you want to really delete the file?</p>\",\n primaryAction: \"Delete\",\n secondaryAction: \"Cancel\"\n },\n render: FullWidthActionsTemplate,\n play: dialogOpener(\"dl-full-width-actions\")\n};\n\nexport const DialogWithTabGroup: Story = {\n args: {\n id: \"dl-tab-group\",\n caption: \"Use location service?\",\n content: \"Let us help determine location. This means sending anonymous location data to us.\",\n primaryAction: \"Agree\",\n secondaryAction: \"Disagree\",\n tertiaryAction: \"Cancel\",\n },\n render: TabGroupTemplate,\n play: dialogOpener(\"dl-tab-group\")\n};\n\nexport const CriticalDialog: Story = {\n args: {\n id: \"dl-critical\",\n caption: \"Critical Action Required\",\n content: \"<p>This action is irreversible. Please confirm to proceed.</p>\",\n closeAction: \"Confirm\",\n critical: true,\n },\n render: FullWidthActionsTemplate,\n play: dialogOpener(\"dl-critical\")\n};\n\nexport const CaptionLineClampDialog: Story = {\n args: {\n id: \"dl-caption-line-clamp\",\n closeAction: \"Confirm\"\n },\n render: CaptionLineClampTemplate,\n play: dialogOpener(\"dl-caption-line-clamp\")\n};\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["meta", "fullscreenLayout", "bl_dialog_stories_default", "dialogOpener", "dialogId", "dialog", "BasicTemplate", "args", "x", "l", "o", "e", "_a", "FullWidthActionsTemplate", "TemplateWithStickyFooter", "SizingTemplate", "TabGroupTemplate", "CaptionLineClampTemplate", "BasicUsage", "DialogWithStickyFooter", "DialogSizing", "DialogWithFocusedAction", "DialogWithFocusedInput", "DialogWithFullWidthAction", "DialogWithFullWidthActions", "DialogWithTabGroup", "CriticalDialog", "CaptionLineClampDialog"]
|
|
7
7
|
}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a}from"../../chunk-X67Z2G2H.js";import"../../chunk-P7J47Z2J.js";import"../../chunk-WXWKIQAK.js";import"../../chunk-DZ77A43H.js";import"../../chunk-MND5TXTF.js";import"../../chunk-EZSEQHRH.js";import"../../chunk-
|
|
1
|
+
import{a}from"../../chunk-X67Z2G2H.js";import"../../chunk-P7J47Z2J.js";import"../../chunk-WXWKIQAK.js";import"../../chunk-DZ77A43H.js";import"../../chunk-MND5TXTF.js";import"../../chunk-EZSEQHRH.js";import"../../chunk-TRWCD65K.js";import"../../chunk-EG7U7PM3.js";import"../../chunk-XDUIVR6I.js";import"../../chunk-HZ6A5QFC.js";import"../../chunk-AYJMIZZ3.js";import"../../chunk-VU6LRFZR.js";import"../../chunk-CYLRPJKP.js";import"../../chunk-6LT7O7T2.js";import"../../chunk-HBPBDC7T.js";import"../../chunk-ECPWEUBG.js";import"../../chunk-DINNT5P2.js";import"../../chunk-HYB2HRRX.js";import"../../chunk-GRL4DWKG.js";import"../../chunk-3USCFSFQ.js";import"../../chunk-7GK5LKBV.js";import"../../chunk-5MOOXA2X.js";import"../../chunk-4OT5AMS5.js";import"../../chunk-IZ2LK5GK.js";export{a as default};
|
|
2
2
|
//# sourceMappingURL=bl-pagination.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a}from"../../chunk-P7J47Z2J.js";import"../../chunk-WXWKIQAK.js";import"../../chunk-EZSEQHRH.js";import"../../chunk-
|
|
1
|
+
import{a}from"../../chunk-P7J47Z2J.js";import"../../chunk-WXWKIQAK.js";import"../../chunk-EZSEQHRH.js";import"../../chunk-TRWCD65K.js";import"../../chunk-EG7U7PM3.js";import"../../chunk-XDUIVR6I.js";import"../../chunk-HZ6A5QFC.js";import"../../chunk-AYJMIZZ3.js";import"../../chunk-VU6LRFZR.js";import"../../chunk-CYLRPJKP.js";import"../../chunk-6LT7O7T2.js";import"../../chunk-HBPBDC7T.js";import"../../chunk-ECPWEUBG.js";import"../../chunk-DINNT5P2.js";import"../../chunk-HYB2HRRX.js";import"../../chunk-GRL4DWKG.js";import"../../chunk-3USCFSFQ.js";import"../../chunk-7GK5LKBV.js";import"../../chunk-5MOOXA2X.js";import"../../chunk-4OT5AMS5.js";import"../../chunk-IZ2LK5GK.js";export{a as default};
|
|
2
2
|
//# sourceMappingURL=bl-select.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a,b}from"../../../chunk-D5MPTIGC.js";import"../../../chunk-5HU4KWMX.js";import"../../../chunk-73GEFGEG.js";import"../../../chunk-LIW32ZGE.js";import"../../../chunk-ASB5S6J4.js";import"../../../chunk-
|
|
1
|
+
import{a,b}from"../../../chunk-D5MPTIGC.js";import"../../../chunk-5HU4KWMX.js";import"../../../chunk-73GEFGEG.js";import"../../../chunk-LIW32ZGE.js";import"../../../chunk-ASB5S6J4.js";import"../../../chunk-TRWCD65K.js";import"../../../chunk-EG7U7PM3.js";import"../../../chunk-XDUIVR6I.js";import"../../../chunk-HZ6A5QFC.js";import"../../../chunk-AYJMIZZ3.js";import"../../../chunk-6LT7O7T2.js";import"../../../chunk-DINNT5P2.js";import"../../../chunk-HYB2HRRX.js";import"../../../chunk-GRL4DWKG.js";import"../../../chunk-3USCFSFQ.js";import"../../../chunk-7GK5LKBV.js";import"../../../chunk-5MOOXA2X.js";import"../../../chunk-4OT5AMS5.js";import"../../../chunk-IZ2LK5GK.js";export{a as blTableCellTag,b as default};
|
|
2
2
|
//# sourceMappingURL=bl-table-cell.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a,b}from"../../../chunk-X2XFV2S3.js";import"../../../chunk-5HU4KWMX.js";import"../../../chunk-73GEFGEG.js";import"../../../chunk-LIW32ZGE.js";import"../../../chunk-ASB5S6J4.js";import"../../../chunk-
|
|
1
|
+
import{a,b}from"../../../chunk-X2XFV2S3.js";import"../../../chunk-5HU4KWMX.js";import"../../../chunk-73GEFGEG.js";import"../../../chunk-LIW32ZGE.js";import"../../../chunk-ASB5S6J4.js";import"../../../chunk-TRWCD65K.js";import"../../../chunk-EG7U7PM3.js";import"../../../chunk-XDUIVR6I.js";import"../../../chunk-HZ6A5QFC.js";import"../../../chunk-AYJMIZZ3.js";import"../../../chunk-6LT7O7T2.js";import"../../../chunk-DINNT5P2.js";import"../../../chunk-HYB2HRRX.js";import"../../../chunk-GRL4DWKG.js";import"../../../chunk-3USCFSFQ.js";import"../../../chunk-7GK5LKBV.js";import"../../../chunk-5MOOXA2X.js";import"../../../chunk-4OT5AMS5.js";import"../../../chunk-IZ2LK5GK.js";export{a as blTableHeaderCellTag,b as default};
|
|
2
2
|
//# sourceMappingURL=bl-table-header-cell.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a,b}from"../../../chunk-5HU4KWMX.js";import"../../../chunk-73GEFGEG.js";import"../../../chunk-LIW32ZGE.js";import"../../../chunk-ASB5S6J4.js";import"../../../chunk-
|
|
1
|
+
import{a,b}from"../../../chunk-5HU4KWMX.js";import"../../../chunk-73GEFGEG.js";import"../../../chunk-LIW32ZGE.js";import"../../../chunk-ASB5S6J4.js";import"../../../chunk-TRWCD65K.js";import"../../../chunk-EG7U7PM3.js";import"../../../chunk-XDUIVR6I.js";import"../../../chunk-HZ6A5QFC.js";import"../../../chunk-AYJMIZZ3.js";import"../../../chunk-6LT7O7T2.js";import"../../../chunk-DINNT5P2.js";import"../../../chunk-HYB2HRRX.js";import"../../../chunk-GRL4DWKG.js";import"../../../chunk-3USCFSFQ.js";import"../../../chunk-7GK5LKBV.js";import"../../../chunk-5MOOXA2X.js";import"../../../chunk-4OT5AMS5.js";import"../../../chunk-IZ2LK5GK.js";export{a as blTableRowTag,b as default};
|
|
2
2
|
//# sourceMappingURL=bl-table-row.js.map
|
|
@@ -729,6 +729,18 @@
|
|
|
729
729
|
"kind": "class",
|
|
730
730
|
"description": "",
|
|
731
731
|
"name": "BlDialog",
|
|
732
|
+
"cssProperties": [
|
|
733
|
+
{
|
|
734
|
+
"description": "Sets the width of the dialog content",
|
|
735
|
+
"name": "--bl-dialog-width",
|
|
736
|
+
"default": "auto"
|
|
737
|
+
},
|
|
738
|
+
{
|
|
739
|
+
"description": "Sets the line clamp of the caption",
|
|
740
|
+
"name": "--bl-dialog-caption-line-clamp",
|
|
741
|
+
"default": "1"
|
|
742
|
+
}
|
|
743
|
+
],
|
|
732
744
|
"events": [
|
|
733
745
|
{
|
|
734
746
|
"type": {
|
|
@@ -800,13 +812,23 @@
|
|
|
800
812
|
"description": "Dialog component"
|
|
801
813
|
}
|
|
802
814
|
],
|
|
803
|
-
"jsDoc": "/**\n * @tag bl-dialog\n * @summary Baklava Dialog component\n */",
|
|
815
|
+
"jsDoc": "/**\n * @tag bl-dialog\n * @summary Baklava Dialog component\n *\n * @cssproperty [--bl-dialog-width=auto] Sets the width of the dialog content\n * @cssproperty [--bl-dialog-caption-line-clamp=1] Sets the line clamp of the caption\n */",
|
|
804
816
|
"tag": [
|
|
805
817
|
{
|
|
806
818
|
"name": "bl-dialog",
|
|
807
819
|
"description": ""
|
|
808
820
|
}
|
|
809
821
|
],
|
|
822
|
+
"cssproperty": [
|
|
823
|
+
{
|
|
824
|
+
"name": "--bl-dialog-width",
|
|
825
|
+
"description": "Sets the width of the dialog content"
|
|
826
|
+
},
|
|
827
|
+
{
|
|
828
|
+
"name": "--bl-dialog-caption-line-clamp",
|
|
829
|
+
"description": "Sets the line clamp of the caption"
|
|
830
|
+
}
|
|
831
|
+
],
|
|
810
832
|
"customElement": true
|
|
811
833
|
}
|
|
812
834
|
],
|
package/package.json
CHANGED
package/dist/chunk-N43OCCSL.js
DELETED
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
import{a as x}from"./chunk-6LT7O7T2.js";import{a as h}from"./chunk-GRL4DWKG.js";import{a as y,b as d,e as c}from"./chunk-5MOOXA2X.js";import{a as m,b as r,f as w}from"./chunk-4OT5AMS5.js";import{d as o}from"./chunk-IZ2LK5GK.js";var k=m`: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}:host([critical]) .content{padding-top:0}.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}}::slotted(bl-tab-group){display:block;transform:translateX(calc(var(--bl-size-xl) * -1));width:calc(100% + calc(var(--bl-size-xl) * 2))}`,E=k;var t=class extends w{constructor(){super(...arguments);this.open=!1;this.critical=!1;this.polyfilled=!0;this.clickOutsideHandler=e=>{if(this.critical)return;e.composedPath().includes(this.container)||this.closeDialog("backdrop")};this.onKeydown=e=>{e.code==="Escape"&&this.open&&!this.critical&&(e.preventDefault(),this.closeDialog("keyboard"))};this.toggleFooterShadow=()=>{var l,n,s,p,b,f,g;let e=(l=this.content)==null?void 0:l.scrollTop,i=(n=this.content)==null?void 0:n.scrollHeight,a=(s=this.content)==null?void 0:s.clientHeight;e+a>=i?(b=(p=this.footer)==null?void 0:p.classList)==null||b.remove("shadow"):(g=(f=this.footer)==null?void 0:f.classList)==null||g.add("shadow")}}static get styles(){return[E]}updated(e){(e.has("open")||e.has("polyfilled"))&&this.toggleDialogHandler()}get _hasFooter(){return[...this.childNodes].some(e=>e.nodeName==="BL-BUTTON")}toggleDialogHandler(){var e,i,a,l,n,s;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",p=>this.onKeydown(p)),window==null||window.addEventListener("resize",this.toggleFooterShadow),(a=this.content)==null||a.addEventListener("scroll",this.toggleFooterShadow)):((n=(l=this.dialog)==null?void 0:l.close)==null||n.call(l),this.onClose({isOpen:!1},{bubbles:!1}),document.body.style.overflow="auto",window==null||window.removeEventListener("keydown",this.onKeydown),window==null||window.removeEventListener("resize",this.toggleFooterShadow),(s=this.content)==null||s.removeEventListener("scroll",this.toggleFooterShadow))}closeDialog(e){this.onRequestClose({source:e},{cancelable:!0}).defaultPrevented||(this.open=!1)}renderFooter(){return this._hasFooter?r`<footer>
|
|
2
|
-
<slot name="primary-action"></slot>
|
|
3
|
-
<slot name="secondary-action"></slot>
|
|
4
|
-
<slot name="tertiary-action"></slot>
|
|
5
|
-
</footer>`:""}renderContainer(){let e=this.caption?r`<h2 id="dialog-caption">${this.caption}</h2>`:"",i=this.critical?null:r`<bl-button
|
|
6
|
-
@click="${()=>this.closeDialog("close-button")}"
|
|
7
|
-
icon="close"
|
|
8
|
-
variant="tertiary"
|
|
9
|
-
kind="neutral"
|
|
10
|
-
></bl-button>`,a={container:!0,"has-footer":this._hasFooter};return r` <div class="${x(a)}">
|
|
11
|
-
<header>${e} ${i}</header>
|
|
12
|
-
<section class="content"><slot></slot></section>
|
|
13
|
-
${this.renderFooter()}
|
|
14
|
-
</div>`}render(){return this.polyfilled||!window.HTMLDialogElement?r`<div
|
|
15
|
-
class="dialog-polyfill"
|
|
16
|
-
role="dialog"
|
|
17
|
-
aria-labelledby="dialog-caption"
|
|
18
|
-
@click=${this.clickOutsideHandler}
|
|
19
|
-
>
|
|
20
|
-
${this.renderContainer()}
|
|
21
|
-
</div>`:r`
|
|
22
|
-
<dialog
|
|
23
|
-
class="dialog"
|
|
24
|
-
aria-labelledby="dialog-caption"
|
|
25
|
-
@click=${this.clickOutsideHandler}
|
|
26
|
-
>
|
|
27
|
-
${this.renderContainer()}
|
|
28
|
-
</dialog>
|
|
29
|
-
`}};o([d({type:Boolean,reflect:!0,hasChanged(u,v){return u===!1&&v===void 0?!1:u!==v}})],t.prototype,"open",2),o([d({type:String})],t.prototype,"caption",2),o([d({type:Boolean,reflect:!0})],t.prototype,"critical",2),o([d({type:Boolean,reflect:!0})],t.prototype,"polyfilled",2),o([c(".dialog")],t.prototype,"dialog",2),o([c("footer")],t.prototype,"footer",2),o([c(".container")],t.prototype,"container",2),o([c(".content")],t.prototype,"content",2),o([h("bl-dialog-open")],t.prototype,"onOpen",2),o([h("bl-dialog-request-close")],t.prototype,"onRequestClose",2),o([h("bl-dialog-close")],t.prototype,"onClose",2),t=o([y("bl-dialog")],t);export{t as a};
|
|
30
|
-
//# sourceMappingURL=chunk-N43OCCSL.js.map
|
|
@@ -1,7 +0,0 @@
|
|
|
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}:host([critical]) .content{padding-top:0}.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}}::slotted(bl-tab-group){display:block;transform:translateX(calc(var(--bl-size-xl) * -1));width:calc(100% + calc(var(--bl-size-xl) * 2))}`;\nexport default styles;\n", "import { CSSResultGroup, html, LitElement, PropertyValues, TemplateResult } from \"lit\";\nimport { customElement, property, query } from \"lit/decorators.js\";\nimport { classMap } from \"lit/directives/class-map.js\";\nimport { event, EventDispatcher } from \"../../utilities/event\";\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({\n type: Boolean,\n reflect: true,\n 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 })\n open = false;\n\n /**\n * Sets the dialog title\n */\n @property({ type: String })\n caption?: string;\n\n /**\n * Determines if the dialog is critical, which disables closing through keyboard, backdrop, and close button interactions.\n */\n @property({ type: Boolean, reflect: true })\n critical = false;\n\n /**\n * Determines if dialog currently uses polyfilled version instead of native HTML Dialog. By\n * default, it uses native Dialog if the browser supports it, otherwise polyfills. You can force\n * using polyfill by setting this to true in some cases like to show some content on top of dialog\n * in case you are not able to use Popover API. Be aware that, polyfilled version can cause some\n * inconsistencies in terms of accessibility and stacking context. So use it with extra caution.\n *\n * As of the current implementation, you can render above the dialog HTML element using the Popover API. However,\n * it will block any actions on the Popover element. This issue was encountered during the development of the `bl-notification` component.\n * As a result, we decided to enable the polyfill for the `bl-dialog` component by default. If you prefer to use the native dialog, you can set\n * this property to false. Please note, doing so will cause notifications to render under the dialog backdrop.\n * For more information, refer to the comment linked below:\n *\n * https://github.com/Trendyol/baklava/issues/141#issuecomment-1810301413\n */\n @property({ type: Boolean, reflect: true })\n polyfilled = true;\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<{\n source: \"close-button\" | \"keyboard\" | \"backdrop\";\n }>;\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\") || changedProperties.has(\"polyfilled\")) {\n this.toggleDialogHandler();\n }\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 this.content?.addEventListener(\"scroll\", this.toggleFooterShadow);\n } else {\n this.dialog?.close?.();\n this.onClose({ isOpen: false }, { bubbles: false });\n document.body.style.overflow = \"auto\";\n window?.removeEventListener(\"keydown\", this.onKeydown);\n window?.removeEventListener(\"resize\", this.toggleFooterShadow);\n this.content?.removeEventListener(\"scroll\", 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 if (this.critical) return;\n\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 && !this.critical) {\n event.preventDefault();\n this.closeDialog(\"keyboard\");\n }\n };\n\n private toggleFooterShadow = () => {\n const scrollTop = this.content?.scrollTop;\n const scrollHeight = this.content?.scrollHeight;\n const clientHeight = this.content?.clientHeight;\n\n if (scrollTop + clientHeight >= scrollHeight) {\n this.footer?.classList?.remove(\"shadow\");\n } else {\n this.footer?.classList?.add(\"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 const closeButton = !this.critical\n ? html`<bl-button\n @click=\"${() => this.closeDialog(\"close-button\")}\"\n icon=\"close\"\n variant=\"tertiary\"\n kind=\"neutral\"\n ></bl-button>`\n : null;\n\n const classes = {\n \"container\": true,\n \"has-footer\": this._hasFooter,\n };\n\n return html` <div class=\"${classMap(classes)}\">\n <header>${title} ${closeButton}</header>\n <section class=\"content\"><slot></slot></section>\n ${this.renderFooter()}\n </div>`;\n }\n\n render(): TemplateResult {\n return this.polyfilled || !window.HTMLDialogElement\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 : html`\n <dialog\n class=\"dialog\"\n aria-labelledby=\"dialog-caption\"\n @click=${this.clickOutsideHandler}\n >\n ${this.renderContainer()}\n </dialog>\n `;\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", "_a", "_b", "_c", "_d", "_e", "_f", "_g", "scrollTop", "scrollHeight", "clientHeight", "bl_dialog_default", "changedProperties", "node", "source", "x", "title", "closeButton", "classes", "o", "__decorateClass", "e", "newVal", "oldVal", "i"]
|
|
7
|
-
}
|