@trendyol/baklava 3.0.0-beta.26 → 3.0.0-beta.28
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/README.md +1 -0
- package/dist/baklava.js +1 -1
- package/dist/{chunk-G7WWTJW4.js → chunk-DZ77A43H.js} +3 -3
- package/dist/{chunk-G7WWTJW4.js.map → chunk-DZ77A43H.js.map} +2 -2
- package/dist/chunk-HYB2HRRX.js +11 -0
- package/dist/{chunk-U752J5IG.js.map → chunk-HYB2HRRX.js.map} +3 -3
- package/dist/{chunk-IWBCUOHE.js → chunk-VCI5BDEF.js} +4 -4
- package/dist/{chunk-IWBCUOHE.js.map → chunk-VCI5BDEF.js.map} +2 -2
- package/dist/components/accordion-group/accordion/bl-accordion.js +1 -1
- package/dist/components/alert/bl-alert.js +1 -1
- package/dist/components/badge/bl-badge.js +1 -1
- package/dist/components/button/bl-button.js +1 -1
- package/dist/components/calendar/bl-calendar.js +1 -1
- package/dist/components/checkbox-group/bl-checkbox-group.js +1 -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.js +1 -1
- package/dist/components/drawer/bl-drawer.js +1 -1
- package/dist/components/dropdown/bl-dropdown.js +1 -1
- package/dist/components/dropdown/item/bl-dropdown-item.js +1 -1
- package/dist/components/icon/bl-icon.js +1 -1
- package/dist/components/icon/icon-list.d.ts +1 -2
- package/dist/components/icon/icon-list.d.ts.map +1 -1
- package/dist/components/icon/icon-list.js +1 -1
- package/dist/components/icon/icon-list.js.map +4 -4
- package/dist/components/input/bl-input.d.ts.map +1 -1
- package/dist/components/input/bl-input.js +1 -1
- package/dist/components/pagination/bl-pagination.js +1 -1
- package/dist/components/select/bl-select.js +1 -1
- package/dist/components/spinner/bl-spinner.js +1 -1
- package/dist/components/split-button/bl-split-button.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/package.json +10 -1
- package/dist/assets/academy.svg +0 -3
- package/dist/assets/account.svg +0 -3
- package/dist/assets/add_note.svg +0 -4
- package/dist/assets/add_part.svg +0 -6
- package/dist/assets/add_photo.svg +0 -4
- package/dist/assets/add_product.svg +0 -5
- package/dist/assets/alert.svg +0 -3
- package/dist/assets/announcement.svg +0 -4
- package/dist/assets/archive.svg +0 -3
- package/dist/assets/arrow_down.svg +0 -3
- package/dist/assets/arrow_left.svg +0 -3
- package/dist/assets/arrow_right.svg +0 -3
- package/dist/assets/arrow_up.svg +0 -3
- package/dist/assets/attach.svg +0 -3
- package/dist/assets/award.svg +0 -6
- package/dist/assets/back.svg +0 -3
- package/dist/assets/back_fill.svg +0 -3
- package/dist/assets/badge.svg +0 -5
- package/dist/assets/barcode.svg +0 -3
- package/dist/assets/bill.svg +0 -3
- package/dist/assets/book.svg +0 -3
- package/dist/assets/browser.svg +0 -3
- package/dist/assets/burger.svg +0 -3
- package/dist/assets/calendar.svg +0 -5
- package/dist/assets/camera.svg +0 -3
- package/dist/assets/camera_off.svg +0 -4
- package/dist/assets/campaign.svg +0 -3
- package/dist/assets/change.svg +0 -4
- package/dist/assets/change_fill.svg +0 -3
- package/dist/assets/chart.svg +0 -5
- package/dist/assets/chatbot.svg +0 -3
- package/dist/assets/check.svg +0 -3
- package/dist/assets/check_fill.svg +0 -3
- package/dist/assets/clock.svg +0 -3
- package/dist/assets/close.svg +0 -3
- package/dist/assets/close_fill.svg +0 -3
- package/dist/assets/code.svg +0 -3
- package/dist/assets/coin.svg +0 -3
- package/dist/assets/compass.svg +0 -3
- package/dist/assets/complain.svg +0 -3
- package/dist/assets/confetti.svg +0 -9
- package/dist/assets/copy.svg +0 -3
- package/dist/assets/copy_checked.svg +0 -3
- package/dist/assets/coupon.svg +0 -3
- package/dist/assets/credit_card.svg +0 -4
- package/dist/assets/delete.svg +0 -4
- package/dist/assets/desktop.svg +0 -3
- package/dist/assets/desktop_filled.svg +0 -4
- package/dist/assets/dialog.svg +0 -3
- package/dist/assets/disable.svg +0 -3
- package/dist/assets/dislike.svg +0 -3
- package/dist/assets/document.svg +0 -3
- package/dist/assets/document_search.svg +0 -4
- package/dist/assets/donation.svg +0 -4
- package/dist/assets/door_open.svg +0 -3
- package/dist/assets/download.svg +0 -5
- package/dist/assets/drag_and_drop.svg +0 -3
- package/dist/assets/edit.svg +0 -4
- package/dist/assets/excel.svg +0 -3
- package/dist/assets/exit.svg +0 -5
- package/dist/assets/expand.svg +0 -8
- package/dist/assets/export.svg +0 -3
- package/dist/assets/express.svg +0 -3
- package/dist/assets/express_delivery.svg +0 -6
- package/dist/assets/express_furniture.svg +0 -6
- package/dist/assets/external_link.svg +0 -4
- package/dist/assets/external_share.svg +0 -7
- package/dist/assets/eye_off.svg +0 -4
- package/dist/assets/eye_on.svg +0 -3
- package/dist/assets/facebook.svg +0 -3
- package/dist/assets/filter.svg +0 -3
- package/dist/assets/finance_accounting.svg +0 -3
- package/dist/assets/fire.svg +0 -3
- package/dist/assets/flag.svg +0 -3
- package/dist/assets/flash.svg +0 -3
- package/dist/assets/flash_fill.svg +0 -3
- package/dist/assets/forward.svg +0 -3
- package/dist/assets/full_size.svg +0 -3
- package/dist/assets/gift.svg +0 -6
- package/dist/assets/global_export.svg +0 -3
- package/dist/assets/globe.svg +0 -5
- package/dist/assets/go_forward.svg +0 -3
- package/dist/assets/graphic.svg +0 -3
- package/dist/assets/graphic_decrease.svg +0 -3
- package/dist/assets/group_of_people.svg +0 -8
- package/dist/assets/growth.svg +0 -3
- package/dist/assets/hamburger_menu.svg +0 -5
- package/dist/assets/handshake.svg +0 -4
- package/dist/assets/happy.svg +0 -3
- package/dist/assets/heart.svg +0 -3
- package/dist/assets/heart_fill.svg +0 -3
- package/dist/assets/heartbeat.svg +0 -3
- package/dist/assets/help.svg +0 -3
- package/dist/assets/history.svg +0 -3
- package/dist/assets/home.svg +0 -3
- package/dist/assets/hourglass.svg +0 -3
- package/dist/assets/image.svg +0 -5
- package/dist/assets/incognito.svg +0 -4
- package/dist/assets/info.svg +0 -3
- package/dist/assets/instagram.svg +0 -3
- package/dist/assets/label.svg +0 -3
- package/dist/assets/left_sided_arrow.svg +0 -3
- package/dist/assets/light_bulb.svg +0 -3
- package/dist/assets/like.svg +0 -3
- package/dist/assets/link.svg +0 -3
- package/dist/assets/listing.svg +0 -3
- package/dist/assets/live_monitor.svg +0 -3
- package/dist/assets/live_support.svg +0 -3
- package/dist/assets/loading.svg +0 -4
- package/dist/assets/lock.svg +0 -4
- package/dist/assets/magic_wand.svg +0 -3
- package/dist/assets/mail.svg +0 -3
- package/dist/assets/mail_opened.svg +0 -3
- package/dist/assets/map.svg +0 -4
- package/dist/assets/market.svg +0 -13
- package/dist/assets/market_order_back.svg +0 -3
- package/dist/assets/market_order_cancel.svg +0 -3
- package/dist/assets/market_order_change.svg +0 -3
- package/dist/assets/market_order_check.svg +0 -3
- package/dist/assets/market_processing.svg +0 -7
- package/dist/assets/meal_bag.svg +0 -4
- package/dist/assets/medal.svg +0 -5
- package/dist/assets/message.svg +0 -3
- package/dist/assets/metric_decrease.svg +0 -4
- package/dist/assets/metric_increase.svg +0 -4
- package/dist/assets/metric_minus.svg +0 -4
- package/dist/assets/microphone.svg +0 -3
- package/dist/assets/microphone_off.svg +0 -12
- package/dist/assets/minus.svg +0 -3
- package/dist/assets/minus_fill.svg +0 -3
- package/dist/assets/mobile.svg +0 -3
- package/dist/assets/mobile_fill.svg +0 -3
- package/dist/assets/mobile_settings.svg +0 -5
- package/dist/assets/money.svg +0 -4
- package/dist/assets/money_transfer.svg +0 -3
- package/dist/assets/motorcycle.svg +0 -3
- package/dist/assets/motorcycle_check.svg +0 -3
- package/dist/assets/new_store.svg +0 -3
- package/dist/assets/normal.svg +0 -3
- package/dist/assets/notice.svg +0 -7
- package/dist/assets/notification.svg +0 -3
- package/dist/assets/offers.svg +0 -5
- package/dist/assets/order.svg +0 -3
- package/dist/assets/order_back.svg +0 -3
- package/dist/assets/order_box.svg +0 -3
- package/dist/assets/order_boxes.svg +0 -14
- package/dist/assets/order_cancel.svg +0 -4
- package/dist/assets/order_check.svg +0 -3
- package/dist/assets/order_return.svg +0 -6
- package/dist/assets/order_settings.svg +0 -6
- package/dist/assets/order_time.svg +0 -4
- package/dist/assets/order_tracking.svg +0 -3
- package/dist/assets/paper.svg +0 -3
- package/dist/assets/partial_approve.svg +0 -6
- package/dist/assets/pause.svg +0 -3
- package/dist/assets/pause_fill.svg +0 -3
- package/dist/assets/people.svg +0 -3
- package/dist/assets/phone.svg +0 -3
- package/dist/assets/phone_settings.svg +0 -4
- package/dist/assets/photo.svg +0 -3
- package/dist/assets/photo_off.svg +0 -3
- package/dist/assets/pie_chart.svg +0 -4
- package/dist/assets/pie_chart_report.svg +0 -3
- package/dist/assets/pin.svg +0 -3
- package/dist/assets/play.svg +0 -3
- package/dist/assets/play_fill.svg +0 -3
- package/dist/assets/plus.svg +0 -3
- package/dist/assets/plus_fill.svg +0 -3
- package/dist/assets/preview.svg +0 -4
- package/dist/assets/price_settings.svg +0 -4
- package/dist/assets/print.svg +0 -3
- package/dist/assets/product.svg +0 -3
- package/dist/assets/profile.svg +0 -3
- package/dist/assets/profile_check.svg +0 -5
- package/dist/assets/profile_star.svg +0 -3
- package/dist/assets/puzzle.svg +0 -3
- package/dist/assets/qr.svg +0 -6
- package/dist/assets/report.svg +0 -4
- package/dist/assets/review.svg +0 -3
- package/dist/assets/right_sided_arrow.svg +0 -3
- package/dist/assets/rocket.svg +0 -4
- package/dist/assets/rotate.svg +0 -3
- package/dist/assets/sad.svg +0 -3
- package/dist/assets/save.svg +0 -4
- package/dist/assets/search.svg +0 -8
- package/dist/assets/send.svg +0 -3
- package/dist/assets/send_mail.svg +0 -6
- package/dist/assets/services.svg +0 -4
- package/dist/assets/settings.svg +0 -7
- package/dist/assets/share.svg +0 -5
- package/dist/assets/shopping_bag.svg +0 -8
- package/dist/assets/shopping_bag_add.svg +0 -3
- package/dist/assets/shopping_bag_back.svg +0 -9
- package/dist/assets/shopping_bag_cancel.svg +0 -9
- package/dist/assets/shopping_bag_discount.svg +0 -3
- package/dist/assets/shopping_bag_return.svg +0 -10
- package/dist/assets/sorting.svg +0 -4
- package/dist/assets/sorting_asc.svg +0 -4
- package/dist/assets/sorting_desc.svg +0 -4
- package/dist/assets/sound_off.svg +0 -4
- package/dist/assets/sound_on.svg +0 -3
- package/dist/assets/split_money.svg +0 -4
- package/dist/assets/star.svg +0 -3
- package/dist/assets/star_double.svg +0 -4
- package/dist/assets/star_fill.svg +0 -3
- package/dist/assets/star_triple.svg +0 -3
- package/dist/assets/stop.svg +0 -3
- package/dist/assets/stop_fill.svg +0 -3
- package/dist/assets/store.svg +0 -3
- package/dist/assets/store_performance.svg +0 -4
- package/dist/assets/suitcase.svg +0 -3
- package/dist/assets/support.svg +0 -3
- package/dist/assets/target.svg +0 -5
- package/dist/assets/ticket.svg +0 -3
- package/dist/assets/translation.svg +0 -3
- package/dist/assets/truck.svg +0 -6
- package/dist/assets/turn_back.svg +0 -3
- package/dist/assets/turn_back_fill.svg +0 -3
- package/dist/assets/two_sided_arrow.svg +0 -3
- package/dist/assets/unlock.svg +0 -4
- package/dist/assets/upload.svg +0 -5
- package/dist/assets/user_management.svg +0 -3
- package/dist/assets/vacation_mode.svg +0 -4
- package/dist/assets/very_happy.svg +0 -3
- package/dist/assets/very_sad.svg +0 -3
- package/dist/assets/wallet.svg +0 -3
- package/dist/assets/warehouse.svg +0 -3
- package/dist/assets/warning.svg +0 -3
- package/dist/assets/youtube.svg +0 -3
- package/dist/assets/zoom_in.svg +0 -3
- package/dist/assets/zoom_out.svg +0 -3
- package/dist/chunk-U752J5IG.js +0 -11
package/README.md
CHANGED
|
@@ -51,3 +51,4 @@ suggestions, code improvements, adding new features or fixing problems. For more
|
|
|
51
51
|
* [Project Board](https://github.com/orgs/Trendyol/projects/4)
|
|
52
52
|
* [Discussion Board](https://github.com/Trendyol/baklava/discussions)
|
|
53
53
|
* [Mobile (React-Native) Implementation](https://github.com/Trendyol/baklava-react-native)
|
|
54
|
+
* [Icons Library](https://github.com/Trendyol/baklava-icons)
|
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-
|
|
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-VCI5BDEF.js";import"./chunk-EG7U7PM3.js";import"./chunk-XDUIVR6I.js";import"./chunk-HZ6A5QFC.js";import"./chunk-AYJMIZZ3.js";import{a as B}from"./chunk-N43OCCSL.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
|
|
@@ -13,7 +13,7 @@ import{a as f}from"./chunk-MND5TXTF.js";import{c as m}from"./chunk-EG7U7PM3.js";
|
|
|
13
13
|
*/box-shadow:0 0 0 40rem var(--autofill-bg-color) inset}input:-webkit-autofill{background-color:var(--autofill-bg-color);/**
|
|
14
14
|
* Some browsers doesn't allow setting background-color
|
|
15
15
|
* https://developer.mozilla.org/en-US/docs/Web/CSS/:autofill
|
|
16
|
-
*/box-shadow:0 0 0 40rem var(--autofill-bg-color) inset}.icon{display:flex;align-items:center;gap:var(--icon-gap);flex-basis:var(--icon-size);align-self:center;height:var(--icon-size);margin-right:var(--label-padding)}bl-icon:not(.reveal-icon),::slotted(bl-icon){font-size:var(--icon-size);color:var(--icon-color);height:var(--icon-size)}.reveal-button bl-icon{display:none}bl-icon[name="eye_on"]{display:inline-block}.password-visible bl-icon[name="eye_on"]{display:none}.password-visible bl-icon[name="eye_off"]{display:inline-block}.wrapper:not(.has-icon) .icon{display:none}.hint{display:none;font:var(--bl-font-body-text-3)}.hint p{padding:0;margin:0}::placeholder{color:var(--bl-color-neutral-light);-webkit-text-fill-color:var(--bl-color-neutral-light)}:host([label]) ::placeholder{color:transparent;-webkit-text-fill-color:transparent;transition:color ease-out 0.4s}:host([label-fixed]) ::placeholder,:host :focus-within ::placeholder{color:var(--bl-color-neutral-light);-webkit-text-fill-color:var(--bl-color-neutral-light)}:host([label-fixed]) label{position:static;transition:none;transform:none;pointer-events:initial;font:var(--bl-font-caption);color:var(--bl-color-neutral-dark);padding:0}:host([label-fixed]) legend{display:none}:host(:not([label-fixed])) :focus-within label,:host(:not([label-fixed])) .has-value label{top:0;left:calc(var(--bl-input-padding-start, var(--padding-horizontal)) - var(--label-padding));right:calc(var(--bl-input-padding-end, var(--padding-horizontal)) - var(--label-padding));transform:translateY(-50%);font:var(--bl-font-caption);color:var(--bl-color-neutral-dark);padding:0 var(--label-padding);pointer-events:initial;z-index:var(--bl-index-base)}:host([label]:not([label-fixed])) :where(:focus-within, .has-value) legend{max-width:100%;font:var(--bl-font-caption);display:block}.error-icon,.invalid-text{display:none}.dirty.invalid label,.invalid-text,.error-icon{color:var(--bl-color-danger)}.help-text{color:var(--bl-color-neutral-dark)}:host([help-text]) .hint,.dirty.invalid .hint{display:block}.dirty.invalid .invalid-text{display:block}.dirty.invalid .help-text{display:none}.dirty.invalid .error-icon{display:inline-block}`,y=S;var C={date:"calendar","datetime-local":"calendar",month:"calendar",week:"calendar",time:"clock",search:"search"},e=class extends g(d){constructor(){super(...arguments);this.type="text";this.value="";this.required=!1;this.loading=!1;this.autofocus=!1;this.size="medium";this.disabled=!1;this.readonly=!1;this.labelFixed=!1;this.onKeydown=a=>{a.code==="Enter"&&this.form&&u(this.form)};this.dirty=!1;this.passwordVisible=!1;this.inputId=Math.random().toString(36).substring(2)}static get styles(){return[y]}set customInvalidText(a){this._customInvalidText=a,this.setValue(this.value)}get customInvalidText(){return this._customInvalidText}connectedCallback(){var a;super.connectedCallback(),this.addEventListener("keydown",this.onKeydown),(a=this.form)==null||a.addEventListener("submit",()=>{this.reportValidity()})}disconnectedCallback(){super.disconnectedCallback(),this.removeEventListener("keydown",this.onKeydown)}textVisibilityToggle(){this.passwordVisible=!this.passwordVisible}showPicker(){"showPicker"in HTMLInputElement.prototype&&this.validationTarget.showPicker()}validityCallback(){var a;return this.onInvalid(this.internals.validity),this.customInvalidText||((a=this.validationTarget)==null?void 0:a.validationMessage)}async forceCustomError(){await this.updateComplete,this.validationTarget.setCustomValidity(this.customInvalidText||"An error occurred"),this.setValue(this.value),this.reportValidity()}async clearCustomError(){await this.updateComplete,this.validationTarget.setCustomValidity(""),this.setValue(this.value),this.reportValidity()}reportValidity(){return this.dirty=!0,this.requestUpdate(),this.checkValidity()}inputHandler(a){let o=a.target.value;this.value=o,this.onInput(o)}changeHandler(a){let o=a.target.value;this.dirty=!0,this.value=o,this.onChange(o)}firstUpdated(){this.setValue(this.value),this.icon||(this.icon=C[this.type])}async updated(a){a.size>0&&(this.setValue(this.value),await this.validationComplete,this.requestUpdate())}get _hasIconSlot(){return this.querySelector(':scope > [slot="icon"]')!==null}render(){let a=this.checkValidity()?"":l`<p id="errorMessage" aria-live="polite" class="invalid-text">
|
|
16
|
+
*/box-shadow:0 0 0 40rem var(--autofill-bg-color) inset}.icon{display:flex;align-items:center;gap:var(--icon-gap);flex-basis:var(--icon-size);align-self:center;height:var(--icon-size);margin-right:var(--label-padding)}bl-icon:not(.reveal-icon),::slotted(bl-icon){font-size:var(--icon-size);color:var(--icon-color);height:var(--icon-size)}.reveal-button bl-icon{display:none}bl-icon[name="eye_on"]{display:inline-block}.password-visible bl-icon[name="eye_on"]{display:none}.password-visible bl-icon[name="eye_off"]{display:inline-block}.wrapper:not(.has-icon) .icon{display:none}.hint{display:none;font:var(--bl-font-body-text-3)}.hint p{padding:0;margin:0}::placeholder{color:var(--bl-color-neutral-light);-webkit-text-fill-color:var(--bl-color-neutral-light)}:host([label]) ::placeholder{color:transparent;-webkit-text-fill-color:transparent;transition:color ease-out 0.4s}:host([label-fixed]) ::placeholder,:host :focus-within ::placeholder{color:var(--bl-color-neutral-light);-webkit-text-fill-color:var(--bl-color-neutral-light)}:host([label-fixed]) label{position:static;transition:none;transform:none;pointer-events:initial;font:var(--bl-font-caption);color:var(--bl-color-neutral-dark);padding:0}:host([label-fixed]) legend{display:none}:host(:not([label-fixed])) :focus-within label,:host(:not([label-fixed])) .has-value label{top:0;left:calc(var(--bl-input-padding-start, var(--padding-horizontal)) - var(--label-padding));right:calc(var(--bl-input-padding-end, var(--padding-horizontal)) - var(--label-padding));transform:translateY(-50%);font:var(--bl-font-caption);color:var(--bl-color-neutral-dark);padding:0 var(--label-padding);pointer-events:initial;z-index:var(--bl-index-base)}:host([label]:not([label-fixed])) :where(:focus-within, .has-value) legend{max-width:100%;font:var(--bl-font-caption);display:block}.error-icon,.invalid-text{display:none}.dirty.invalid label,.invalid-text,.error-icon{color:var(--bl-color-danger)}.help-text{color:var(--bl-color-neutral-dark)}:host([help-text]) .hint,.dirty.invalid .hint{display:block}.dirty.invalid .invalid-text{display:block}.dirty.invalid .help-text{display:none}.dirty.invalid .error-icon{display:inline-block}`,y=S;var C={date:"calendar","datetime-local":"calendar",month:"calendar",week:"calendar",time:"clock",search:"search"},e=class extends g(d){constructor(){super(...arguments);this.type="text";this.value="";this.required=!1;this.loading=!1;this.autofocus=!1;this.size="medium";this.disabled=!1;this.readonly=!1;this.labelFixed=!1;this.onKeydown=a=>{a.code==="Enter"&&this.form&&setTimeout(()=>{a.defaultPrevented||u(this.form)})};this.dirty=!1;this.passwordVisible=!1;this.inputId=Math.random().toString(36).substring(2)}static get styles(){return[y]}set customInvalidText(a){this._customInvalidText=a,this.setValue(this.value)}get customInvalidText(){return this._customInvalidText}connectedCallback(){var a;super.connectedCallback(),this.addEventListener("keydown",this.onKeydown),(a=this.form)==null||a.addEventListener("submit",()=>{this.reportValidity()})}disconnectedCallback(){super.disconnectedCallback(),this.removeEventListener("keydown",this.onKeydown)}textVisibilityToggle(){this.passwordVisible=!this.passwordVisible}showPicker(){"showPicker"in HTMLInputElement.prototype&&this.validationTarget.showPicker()}validityCallback(){var a;return this.onInvalid(this.internals.validity),this.customInvalidText||((a=this.validationTarget)==null?void 0:a.validationMessage)}async forceCustomError(){await this.updateComplete,this.validationTarget.setCustomValidity(this.customInvalidText||"An error occurred"),this.setValue(this.value),this.reportValidity()}async clearCustomError(){await this.updateComplete,this.validationTarget.setCustomValidity(""),this.setValue(this.value),this.reportValidity()}reportValidity(){return this.dirty=!0,this.requestUpdate(),this.checkValidity()}inputHandler(a){let o=a.target.value;this.value=o,this.onInput(o)}changeHandler(a){let o=a.target.value;this.dirty=!0,this.value=o,this.onChange(o)}firstUpdated(){this.setValue(this.value),this.icon||(this.icon=C[this.type])}async updated(a){a.size>0&&(this.setValue(this.value),await this.validationComplete,this.requestUpdate())}get _hasIconSlot(){return this.querySelector(':scope > [slot="icon"]')!==null}render(){let a=this.checkValidity()?"":l`<p id="errorMessage" aria-live="polite" class="invalid-text">
|
|
17
17
|
${this.validationMessage}
|
|
18
18
|
</p>`,o=this.helpText?l`<p id="helpText" class="help-text">${this.helpText}</p>`:"",x=l`
|
|
19
19
|
<slot name="icon">
|
|
@@ -29,7 +29,7 @@ import{a as f}from"./chunk-MND5TXTF.js";import{c as m}from"./chunk-EG7U7PM3.js";
|
|
|
29
29
|
>
|
|
30
30
|
<bl-icon class="reveal-icon" slot="icon" name="eye_on"></bl-icon>
|
|
31
31
|
<bl-icon class="reveal-icon" slot="icon" name="eye_off"></bl-icon>
|
|
32
|
-
</bl-button>`:"",z=this.icon||this._hasIconSlot
|
|
32
|
+
</bl-button>`:"",z=this.icon||this._hasIconSlot,T={wrapper:!0,dirty:this.dirty,invalid:!this.checkValidity(),"has-icon":s||z||this.dirty&&!this.checkValidity(),"has-value":this.value!==null&&this.value!==""},$=this.passwordVisible?"text":"password",V=s?$:this.type;return l`<div class=${p(T)}>
|
|
33
33
|
${w}
|
|
34
34
|
<fieldset class="input-wrapper">
|
|
35
35
|
<legend><span>${this.label}</span></legend>
|
|
@@ -60,4 +60,4 @@ import{a as f}from"./chunk-MND5TXTF.js";import{c as m}from"./chunk-EG7U7PM3.js";
|
|
|
60
60
|
</fieldset>
|
|
61
61
|
<div class="hint">${a} ${o}</div>
|
|
62
62
|
</div>`}};e.shadowRootOptions={...d.shadowRootOptions,delegatesFocus:!0},e.formControlValidators=f,t([b("input")],e.prototype,"validationTarget",2),t([i({reflect:!0})],e.prototype,"name",2),t([i({reflect:!0})],e.prototype,"type",2),t([i({reflect:!0})],e.prototype,"label",2),t([i({reflect:!0})],e.prototype,"placeholder",2),t([i({reflect:!0})],e.prototype,"value",2),t([i({type:Boolean,reflect:!0})],e.prototype,"required",2),t([i({type:Number,reflect:!0})],e.prototype,"minlength",2),t([i({type:Number,reflect:!0})],e.prototype,"maxlength",2),t([i({reflect:!0})],e.prototype,"min",2),t([i({type:Boolean,reflect:!0})],e.prototype,"loading",2),t([i({reflect:!0})],e.prototype,"max",2),t([i({type:String,reflect:!0})],e.prototype,"pattern",2),t([i({type:Number,reflect:!0})],e.prototype,"step",2),t([i({type:String,reflect:!0})],e.prototype,"autocomplete",2),t([i({type:String,reflect:!0})],e.prototype,"inputmode",2),t([i({type:Boolean,reflect:!0})],e.prototype,"autofocus",2),t([i({type:String,reflect:!0})],e.prototype,"icon",2),t([i({type:String,reflect:!0})],e.prototype,"size",2),t([i({type:Boolean,reflect:!0})],e.prototype,"disabled",2),t([i({type:Boolean,reflect:!0})],e.prototype,"readonly",2),t([i({type:Boolean,attribute:"label-fixed",reflect:!0})],e.prototype,"labelFixed",2),t([i({type:String,attribute:"invalid-text",reflect:!0})],e.prototype,"customInvalidText",1),t([i({type:String,attribute:"help-text",reflect:!0})],e.prototype,"helpText",2),t([n("bl-change")],e.prototype,"onChange",2),t([n("bl-input")],e.prototype,"onInput",2),t([n("bl-invalid")],e.prototype,"onInvalid",2),t([c()],e.prototype,"dirty",2),t([c()],e.prototype,"passwordVisible",2),e=t([v("bl-input")],e);export{e as a};
|
|
63
|
-
//# sourceMappingURL=chunk-
|
|
63
|
+
//# sourceMappingURL=chunk-DZ77A43H.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../src/components/input/bl-input.css", "../src/components/input/bl-input.ts"],
|
|
4
|
-
"sourcesContent": ["import {css} from 'lit';\nexport const styles = css`:host{display:inline-block;width:200px;position:relative}.wrapper{--border-color:var(--bl-color-neutral-lighter);--icon-color:var(--bl-color-neutral-light);--text-color:var(--bl-color-neutral-darker);--height:var(--bl-size-2xl);--input-font:var(--bl-font-body-text-2);--line-height:var(--bl-font-body-text-2-line-height);--icon-size:var(--line-height);--icon-gap:var(--bl-size-xs);--padding-vertical:calc((var(--height) - var(--line-height)) / 2);--padding-horizontal:var(--bl-size-xs);--autofill-bg-color:var(--bl-color-primary-contrast);--label-padding:var(--bl-size-3xs);--background-color:var(--bl-color-neutral-full);display:grid;position:relative;gap:var(--bl-size-3xs)}.wrapper:focus-within{--border-color:var(--bl-color-primary);--icon-color:var(--bl-color-primary)}.wrapper.dirty.invalid{--border-color:var(--bl-color-danger);--icon-color:var(--bl-color-danger)}:host([size=\"large\"]) .wrapper{--height:var(--bl-size-3xl);--padding-vertical:var(--bl-size-xs);--padding-horizontal:var(--bl-size-m);--icon-gap:var(--bl-size-m)}:host([size=\"small\"]) .wrapper{--height:var(--bl-size-xl);--input-font:var(--bl-font-body-text-3);--padding-vertical:var(--bl-size-3xs);--icon-size:var(--bl-font-body-text-3-line-height);--icon-gap:var(--bl-size-2xs)}.input-wrapper{--border-size:1px;outline:none;display:flex;box-sizing:border-box;gap:var(--padding-vertical);height:var(--height);border:solid var(--border-size) var(--border-color);padding:0 calc(\n var(--bl-input-padding-end, var(--padding-horizontal)) - var(--label-padding) -\n var(--border-size)\n ) 0 calc(\n var(--bl-input-padding-start, var(--padding-horizontal)) - var(--label-padding) -\n var(--border-size)\n );background-color:var(--background-color);border-radius:var(--bl-size-3xs);margin:0;width:0;min-width:100%}:host([disabled]) .wrapper{cursor:not-allowed;--background-color:var(--bl-color-neutral-lightest);--text-color:var(--bl-color-neutral-light)}.wrapper:has(input:autofill){--background-color:var(--autofill-bg-color)}.wrapper:has(input:-webkit-autofill){--background-color:var(--autofill-bg-color)}.input-wrapper legend,label{padding:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}label{position:absolute;max-width:max-content;transition:all ease-in 0.1s;font:var(--input-font);top:var(--padding-vertical);left:var(--bl-input-padding-start, var(--padding-horizontal));right:var(--bl-input-padding-end, var(--padding-horizontal));pointer-events:none;color:var(--bl-color-neutral-light)}.has-icon label{right:calc(\n var(--bl-input-padding-end, var(--padding-horizontal)) + var(--icon-size) +\n var(--padding-vertical)\n )}.input-wrapper legend{height:0;visibility:hidden;display:none}.input-wrapper legend span{padding:0 var(--label-padding);display:inline-block;opacity:0;visibility:visible}input{width:100%;align-self:stretch;outline:0;border:0;padding:0 0 0 var(--label-padding);font:var(--input-font);color:var(--text-color);-webkit-text-fill-color:var(--text-color);background-color:transparent}input::-webkit-credentials-auto-fill-button{color:red}:where(.wrapper:focus-within, .wrapper.has-value) input{padding-left:var(--label-padding)}input:disabled{cursor:not-allowed}input::-webkit-calendar-picker-indicator{display:none}input::-moz-calendar-picker-indicator{display:none}input:autofill{background-color:var(--autofill-bg-color);/**\n * Some browsers doesn't allow setting background-color\n * https://developer.mozilla.org/en-US/docs/Web/CSS/:autofill\n */box-shadow:0 0 0 40rem var(--autofill-bg-color) inset}input:-webkit-autofill{background-color:var(--autofill-bg-color);/**\n * Some browsers doesn't allow setting background-color\n * https://developer.mozilla.org/en-US/docs/Web/CSS/:autofill\n */box-shadow:0 0 0 40rem var(--autofill-bg-color) inset}.icon{display:flex;align-items:center;gap:var(--icon-gap);flex-basis:var(--icon-size);align-self:center;height:var(--icon-size);margin-right:var(--label-padding)}bl-icon:not(.reveal-icon),::slotted(bl-icon){font-size:var(--icon-size);color:var(--icon-color);height:var(--icon-size)}.reveal-button bl-icon{display:none}bl-icon[name=\"eye_on\"]{display:inline-block}.password-visible bl-icon[name=\"eye_on\"]{display:none}.password-visible bl-icon[name=\"eye_off\"]{display:inline-block}.wrapper:not(.has-icon) .icon{display:none}.hint{display:none;font:var(--bl-font-body-text-3)}.hint p{padding:0;margin:0}::placeholder{color:var(--bl-color-neutral-light);-webkit-text-fill-color:var(--bl-color-neutral-light)}:host([label]) ::placeholder{color:transparent;-webkit-text-fill-color:transparent;transition:color ease-out 0.4s}:host([label-fixed]) ::placeholder,:host :focus-within ::placeholder{color:var(--bl-color-neutral-light);-webkit-text-fill-color:var(--bl-color-neutral-light)}:host([label-fixed]) label{position:static;transition:none;transform:none;pointer-events:initial;font:var(--bl-font-caption);color:var(--bl-color-neutral-dark);padding:0}:host([label-fixed]) legend{display:none}:host(:not([label-fixed])) :focus-within label,:host(:not([label-fixed])) .has-value label{top:0;left:calc(var(--bl-input-padding-start, var(--padding-horizontal)) - var(--label-padding));right:calc(var(--bl-input-padding-end, var(--padding-horizontal)) - var(--label-padding));transform:translateY(-50%);font:var(--bl-font-caption);color:var(--bl-color-neutral-dark);padding:0 var(--label-padding);pointer-events:initial;z-index:var(--bl-index-base)}:host([label]:not([label-fixed])) :where(:focus-within, .has-value) legend{max-width:100%;font:var(--bl-font-caption);display:block}.error-icon,.invalid-text{display:none}.dirty.invalid label,.invalid-text,.error-icon{color:var(--bl-color-danger)}.help-text{color:var(--bl-color-neutral-dark)}:host([help-text]) .hint,.dirty.invalid .hint{display:block}.dirty.invalid .invalid-text{display:block}.dirty.invalid .help-text{display:none}.dirty.invalid .error-icon{display:inline-block}`;\nexport default styles;\n", "import { CSSResultGroup, html, LitElement, TemplateResult, PropertyValues } 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 } from \"@open-wc/form-control\";\nimport { submit } from \"@open-wc/form-helpers\";\nimport \"element-internals-polyfill\";\nimport { event, EventDispatcher } from \"../../utilities/event\";\nimport { innerInputValidators } from \"../../utilities/form-control\";\nimport \"../button/bl-button\";\nimport \"../icon/bl-icon\";\nimport { BaklavaIcon } from \"../icon/icon-list\";\nimport style from \"./bl-input.css\";\n\nexport type InputType =\n | \"text\"\n | \"email\"\n | \"date\"\n | \"time\"\n | \"datetime-local\"\n | \"month\"\n | \"week\"\n | \"password\"\n | \"number\"\n | \"tel\"\n | \"url\"\n | \"search\";\n\nconst inputTypeIcons: Partial<Record<InputType, BaklavaIcon>> = {\n \"date\": \"calendar\",\n \"datetime-local\": \"calendar\",\n \"month\": \"calendar\",\n \"week\": \"calendar\",\n \"time\": \"clock\",\n \"search\": \"search\",\n};\n\nexport type InputSize = \"small\" | \"medium\" | \"large\";\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 */\n@customElement(\"bl-input\")\nexport default class BlInput extends FormControlMixin(LitElement) {\n static get styles(): CSSResultGroup {\n return [style];\n }\n static shadowRootOptions = { ...LitElement.shadowRootOptions, delegatesFocus: true };\n\n static formControlValidators = innerInputValidators;\n\n @query(\"input\")\n validationTarget: HTMLInputElement;\n\n /**\n * Sets name of the input\n */\n @property({ reflect: true })\n name?: string;\n\n /**\n * Type of the input. It's used to set `type` attribute of native input inside.\n */\n @property({ reflect: true })\n type: InputType = \"text\";\n\n /**\n * Sets label of the input\n */\n @property({ reflect: true })\n label?: string;\n\n /**\n * Sets placeholder of the input\n */\n @property({ reflect: true })\n placeholder?: string;\n\n /**\n * Sets initial value of the input\n */\n @property({ reflect: true })\n value = \"\";\n\n /**\n * Makes input a mandatory field\n */\n @property({ type: Boolean, reflect: true })\n required = false;\n\n /**\n * Sets minimum length of the input\n */\n @property({ type: Number, reflect: true })\n minlength?: number;\n\n /**\n * Sets maximum length of the input\n */\n @property({ type: Number, reflect: true })\n maxlength?: number;\n\n /**\n * Sets the minimum acceptable value for the input\n */\n @property({ reflect: true })\n min?: number | string;\n\n /**\n * Sets the loading value for the input\n */\n @property({ type: Boolean, reflect: true })\n loading = false;\n\n /**\n * Sets the maximum acceptable value for the input\n */\n @property({ reflect: true })\n max?: number | string;\n\n /**\n * Sets a regex pattern form the input validation\n */\n @property({ type: String, reflect: true })\n pattern?: string;\n\n /**\n * Sets the increase and decrease step to a `number` input\n */\n @property({ type: Number, reflect: true })\n step?: number;\n\n /**\n * Hints browser to autocomplete this field.\n */\n @property({ type: String, reflect: true })\n autocomplete: string;\n\n /**\n * Sets the input mode of the field for asking browser to show the desired keyboard.\n */\n @property({ type: String, reflect: true })\n inputmode: \"none\" | \"text\" | \"decimal\" | \"numeric\" | \"tel\" | \"search\" | \"email\" | \"url\";\n\n /**\n * Sets input to get keyboard focus automatically\n */\n @property({ type: Boolean, reflect: true })\n autofocus = false;\n\n /**\n * Sets the custom icon name. `bl-icon` component is used to show an icon\n */\n @property({ type: String, reflect: true })\n icon?: BaklavaIcon;\n\n /**\n * Sets input size.\n */\n @property({ type: String, reflect: true })\n size?: InputSize = \"medium\";\n\n /**\n * Disables the input\n */\n @property({ type: Boolean, reflect: true })\n disabled = false;\n\n /**\n * Makes the input readonly.\n */\n @property({ type: Boolean, reflect: true })\n readonly = false;\n\n /**\n * Makes label as fixed positioned\n */\n @property({ type: Boolean, attribute: \"label-fixed\", reflect: true })\n labelFixed = false;\n\n /**\n * Overrides error message. This message will override default error messages\n */\n @property({ type: String, attribute: \"invalid-text\", reflect: true })\n set customInvalidText(value: string) {\n this._customInvalidText = value;\n this.setValue(this.value);\n }\n\n get customInvalidText(): string {\n return this._customInvalidText;\n }\n\n private _customInvalidText: string;\n\n /**\n * Adds help text\n */\n @property({ type: String, attribute: \"help-text\", reflect: true })\n helpText?: string;\n\n /**\n * Fires when an alteration to the element's value is committed by the user. Unlike the input event, the change event is not necessarily fired for each alteration to an element's value.\n */\n @event(\"bl-change\") private onChange: EventDispatcher<string>;\n\n /**\n * Fires when the value of an input element has been changed.\n */\n @event(\"bl-input\") private onInput: EventDispatcher<string>;\n\n /**\n * Fires when the value of an input element has been changed.\n */\n @event(\"bl-invalid\") private onInvalid: EventDispatcher<ValidityState>;\n\n connectedCallback(): void {\n super.connectedCallback();\n this.addEventListener(\"keydown\", this.onKeydown);\n\n this.form?.addEventListener(\"submit\", () => {\n this.reportValidity();\n });\n }\n\n disconnectedCallback(): void {\n super.disconnectedCallback();\n this.removeEventListener(\"keydown\", this.onKeydown);\n }\n\n private onKeydown = (event: KeyboardEvent): void => {\n if (event.code === \"Enter\" && this.form) {\n submit(this.form);\n }\n };\n\n @state() private dirty = false;\n\n @state() private passwordVisible = false;\n\n private textVisibilityToggle() {\n this.passwordVisible = !this.passwordVisible;\n }\n\n showPicker() {\n if (\"showPicker\" in HTMLInputElement.prototype) {\n this.validationTarget.showPicker();\n }\n }\n\n validityCallback(): string | void {\n this.onInvalid(this.internals.validity);\n return this.customInvalidText || this.validationTarget?.validationMessage;\n }\n\n /**\n * Force to set input as in invalid state.\n */\n async forceCustomError() {\n await this.updateComplete;\n this.validationTarget.setCustomValidity(this.customInvalidText || \"An error occurred\");\n this.setValue(this.value);\n this.reportValidity();\n }\n\n /**\n * Clear forced invalid state\n */\n async clearCustomError() {\n await this.updateComplete;\n this.validationTarget.setCustomValidity(\"\");\n this.setValue(this.value);\n this.reportValidity();\n }\n\n reportValidity() {\n this.dirty = true;\n this.requestUpdate();\n return this.checkValidity();\n }\n\n private inputHandler(event: Event) {\n const value = (event.target as HTMLInputElement).value;\n\n this.value = value;\n this.onInput(value);\n }\n\n private changeHandler(event: Event) {\n const value = (event.target as HTMLInputElement).value;\n\n this.dirty = true;\n this.value = value;\n this.onChange(value);\n }\n\n firstUpdated() {\n this.setValue(this.value);\n if (!this.icon) this.icon = inputTypeIcons[this.type];\n }\n\n protected async updated(changedProperties: PropertyValues) {\n if (changedProperties.size > 0) {\n this.setValue(this.value);\n\n await this.validationComplete;\n\n this.requestUpdate();\n }\n }\n\n private inputId = Math.random().toString(36).substring(2);\n\n private get _hasIconSlot() {\n return this.querySelector(':scope > [slot=\"icon\"]') !== null;\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 const helpMessage = this.helpText\n ? html`<p id=\"helpText\" class=\"help-text\">${this.helpText}</p>`\n : \"\";\n\n const icon = html`\n <slot name=\"icon\">\n ${this.loading && this.type === \"search\" && this.value !== \"\" && this.value !== null\n ? html`<bl-spinner></bl-spinner>`\n : this.icon\n ? html`<bl-icon name=\"${this.icon}\"></bl-icon>`\n : html`<bl-icon class=\"error-icon\" name=\"alert\"></bl-icon>`}\n </slot>\n `;\n\n const label = this.label ? html`<label for=${this.inputId}>${this.label}</label>` : \"\";\n const passwordInput = this.type === \"password\";\n\n const revealButton = passwordInput\n ? html`<bl-button\n size=\"small\"\n kind=\"neutral\"\n variant=\"tertiary\"\n class=\"${classMap({\n \"reveal-button\": true,\n \"password-visible\": this.passwordVisible,\n })}\"\n aria-label=\"Toggle password reveal\"\n @bl-click=\"${this.textVisibilityToggle}\"\n >\n <bl-icon class=\"reveal-icon\" slot=\"icon\" name=\"eye_on\"></bl-icon>\n <bl-icon class=\"reveal-icon\" slot=\"icon\" name=\"eye_off\"></bl-icon>\n </bl-button>`\n : \"\";\n\n const hasCustomIcon = this.icon || this._hasIconSlot;\n const classes = {\n \"wrapper\": true,\n \"dirty\": this.dirty,\n \"invalid\": !this.checkValidity(),\n \"has-icon\": passwordInput || hasCustomIcon || (this.dirty && !this.checkValidity()),\n \"has-value\": this.value !== null && this.value !== \"\",\n };\n\n const passwordType = this.passwordVisible ? \"text\" : \"password\";\n const inputType = passwordInput ? passwordType : this.type;\n\n return html`<div class=${classMap(classes)}>\n ${label}\n <fieldset class=\"input-wrapper\">\n <legend><span>${this.label}</span></legend>\n <input\n id=${this.inputId}\n type=${inputType}\n .value=${live(this.value)}\n inputmode=\"${ifDefined(this.inputmode)}\"\n ?autofocus=${this.autofocus}\n autocomplete=\"${ifDefined(this.autocomplete)}\"\n placeholder=\"${ifDefined(this.placeholder)}\"\n minlength=\"${ifDefined(this.minlength)}\"\n maxlength=\"${ifDefined(this.maxlength)}\"\n min=\"${ifDefined(this.min)}\"\n max=\"${ifDefined(this.max)}\"\n pattern=\"${ifDefined(this.pattern)}\"\n step=\"${ifDefined(this.step)}\"\n ?required=${this.required}\n ?disabled=${this.disabled}\n ?readonly=${this.readonly}\n @change=${this.changeHandler}\n @input=${this.inputHandler}\n aria-invalid=${this.checkValidity() ? \"false\" : \"true\"}\n aria-describedby=${ifDefined(this.helpText ? \"helpText\" : undefined)}\n aria-errormessage=${ifDefined(this.checkValidity() ? undefined : \"errorMessage\")}\n />\n <div class=\"icon\">${revealButton} ${icon}</div>\n </fieldset>\n <div class=\"hint\">${invalidMessage} ${helpMessage}</div>\n </div>`;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n \"bl-input\": BlInput;\n }\n}\n"],
|
|
5
|
-
"mappings": "8aACO,IAAMA,EAASC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uoEAgBfC,EAAQF,ECYf,IAAMG,EAA0D,CAC9D,KAAQ,WACR,iBAAkB,WAClB,MAAS,WACT,KAAQ,WACR,KAAQ,QACR,OAAU,QACZ,EAWqBC,EAArB,cAAqCC,EAAiBC,CAAU,CAAE,CAAlE,kCAqBE,UAAkB,OAkBlB,WAAQ,GAMR,cAAW,GAwBX,aAAU,GAoCV,eAAY,GAYZ,UAAmB,SAMnB,cAAW,GAMX,cAAW,GAMX,gBAAa,GAoDb,KAAQ,UAAaC,GAA+B,CAC9CA,EAAM,OAAS,SAAW,KAAK,
|
|
4
|
+
"sourcesContent": ["import {css} from 'lit';\nexport const styles = css`:host{display:inline-block;width:200px;position:relative}.wrapper{--border-color:var(--bl-color-neutral-lighter);--icon-color:var(--bl-color-neutral-light);--text-color:var(--bl-color-neutral-darker);--height:var(--bl-size-2xl);--input-font:var(--bl-font-body-text-2);--line-height:var(--bl-font-body-text-2-line-height);--icon-size:var(--line-height);--icon-gap:var(--bl-size-xs);--padding-vertical:calc((var(--height) - var(--line-height)) / 2);--padding-horizontal:var(--bl-size-xs);--autofill-bg-color:var(--bl-color-primary-contrast);--label-padding:var(--bl-size-3xs);--background-color:var(--bl-color-neutral-full);display:grid;position:relative;gap:var(--bl-size-3xs)}.wrapper:focus-within{--border-color:var(--bl-color-primary);--icon-color:var(--bl-color-primary)}.wrapper.dirty.invalid{--border-color:var(--bl-color-danger);--icon-color:var(--bl-color-danger)}:host([size=\"large\"]) .wrapper{--height:var(--bl-size-3xl);--padding-vertical:var(--bl-size-xs);--padding-horizontal:var(--bl-size-m);--icon-gap:var(--bl-size-m)}:host([size=\"small\"]) .wrapper{--height:var(--bl-size-xl);--input-font:var(--bl-font-body-text-3);--padding-vertical:var(--bl-size-3xs);--icon-size:var(--bl-font-body-text-3-line-height);--icon-gap:var(--bl-size-2xs)}.input-wrapper{--border-size:1px;outline:none;display:flex;box-sizing:border-box;gap:var(--padding-vertical);height:var(--height);border:solid var(--border-size) var(--border-color);padding:0 calc(\n var(--bl-input-padding-end, var(--padding-horizontal)) - var(--label-padding) -\n var(--border-size)\n ) 0 calc(\n var(--bl-input-padding-start, var(--padding-horizontal)) - var(--label-padding) -\n var(--border-size)\n );background-color:var(--background-color);border-radius:var(--bl-size-3xs);margin:0;width:0;min-width:100%}:host([disabled]) .wrapper{cursor:not-allowed;--background-color:var(--bl-color-neutral-lightest);--text-color:var(--bl-color-neutral-light)}.wrapper:has(input:autofill){--background-color:var(--autofill-bg-color)}.wrapper:has(input:-webkit-autofill){--background-color:var(--autofill-bg-color)}.input-wrapper legend,label{padding:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}label{position:absolute;max-width:max-content;transition:all ease-in 0.1s;font:var(--input-font);top:var(--padding-vertical);left:var(--bl-input-padding-start, var(--padding-horizontal));right:var(--bl-input-padding-end, var(--padding-horizontal));pointer-events:none;color:var(--bl-color-neutral-light)}.has-icon label{right:calc(\n var(--bl-input-padding-end, var(--padding-horizontal)) + var(--icon-size) +\n var(--padding-vertical)\n )}.input-wrapper legend{height:0;visibility:hidden;display:none}.input-wrapper legend span{padding:0 var(--label-padding);display:inline-block;opacity:0;visibility:visible}input{width:100%;align-self:stretch;outline:0;border:0;padding:0 0 0 var(--label-padding);font:var(--input-font);color:var(--text-color);-webkit-text-fill-color:var(--text-color);background-color:transparent}input::-webkit-credentials-auto-fill-button{color:red}:where(.wrapper:focus-within, .wrapper.has-value) input{padding-left:var(--label-padding)}input:disabled{cursor:not-allowed}input::-webkit-calendar-picker-indicator{display:none}input::-moz-calendar-picker-indicator{display:none}input:autofill{background-color:var(--autofill-bg-color);/**\n * Some browsers doesn't allow setting background-color\n * https://developer.mozilla.org/en-US/docs/Web/CSS/:autofill\n */box-shadow:0 0 0 40rem var(--autofill-bg-color) inset}input:-webkit-autofill{background-color:var(--autofill-bg-color);/**\n * Some browsers doesn't allow setting background-color\n * https://developer.mozilla.org/en-US/docs/Web/CSS/:autofill\n */box-shadow:0 0 0 40rem var(--autofill-bg-color) inset}.icon{display:flex;align-items:center;gap:var(--icon-gap);flex-basis:var(--icon-size);align-self:center;height:var(--icon-size);margin-right:var(--label-padding)}bl-icon:not(.reveal-icon),::slotted(bl-icon){font-size:var(--icon-size);color:var(--icon-color);height:var(--icon-size)}.reveal-button bl-icon{display:none}bl-icon[name=\"eye_on\"]{display:inline-block}.password-visible bl-icon[name=\"eye_on\"]{display:none}.password-visible bl-icon[name=\"eye_off\"]{display:inline-block}.wrapper:not(.has-icon) .icon{display:none}.hint{display:none;font:var(--bl-font-body-text-3)}.hint p{padding:0;margin:0}::placeholder{color:var(--bl-color-neutral-light);-webkit-text-fill-color:var(--bl-color-neutral-light)}:host([label]) ::placeholder{color:transparent;-webkit-text-fill-color:transparent;transition:color ease-out 0.4s}:host([label-fixed]) ::placeholder,:host :focus-within ::placeholder{color:var(--bl-color-neutral-light);-webkit-text-fill-color:var(--bl-color-neutral-light)}:host([label-fixed]) label{position:static;transition:none;transform:none;pointer-events:initial;font:var(--bl-font-caption);color:var(--bl-color-neutral-dark);padding:0}:host([label-fixed]) legend{display:none}:host(:not([label-fixed])) :focus-within label,:host(:not([label-fixed])) .has-value label{top:0;left:calc(var(--bl-input-padding-start, var(--padding-horizontal)) - var(--label-padding));right:calc(var(--bl-input-padding-end, var(--padding-horizontal)) - var(--label-padding));transform:translateY(-50%);font:var(--bl-font-caption);color:var(--bl-color-neutral-dark);padding:0 var(--label-padding);pointer-events:initial;z-index:var(--bl-index-base)}:host([label]:not([label-fixed])) :where(:focus-within, .has-value) legend{max-width:100%;font:var(--bl-font-caption);display:block}.error-icon,.invalid-text{display:none}.dirty.invalid label,.invalid-text,.error-icon{color:var(--bl-color-danger)}.help-text{color:var(--bl-color-neutral-dark)}:host([help-text]) .hint,.dirty.invalid .hint{display:block}.dirty.invalid .invalid-text{display:block}.dirty.invalid .help-text{display:none}.dirty.invalid .error-icon{display:inline-block}`;\nexport default styles;\n", "import { CSSResultGroup, html, LitElement, TemplateResult, PropertyValues } 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 } from \"@open-wc/form-control\";\nimport { submit } from \"@open-wc/form-helpers\";\nimport \"element-internals-polyfill\";\nimport { event, EventDispatcher } from \"../../utilities/event\";\nimport { innerInputValidators } from \"../../utilities/form-control\";\nimport \"../button/bl-button\";\nimport \"../icon/bl-icon\";\nimport { BaklavaIcon } from \"../icon/icon-list\";\nimport style from \"./bl-input.css\";\n\nexport type InputType =\n | \"text\"\n | \"email\"\n | \"date\"\n | \"time\"\n | \"datetime-local\"\n | \"month\"\n | \"week\"\n | \"password\"\n | \"number\"\n | \"tel\"\n | \"url\"\n | \"search\";\n\nconst inputTypeIcons: Partial<Record<InputType, BaklavaIcon>> = {\n \"date\": \"calendar\",\n \"datetime-local\": \"calendar\",\n \"month\": \"calendar\",\n \"week\": \"calendar\",\n \"time\": \"clock\",\n \"search\": \"search\",\n};\n\nexport type InputSize = \"small\" | \"medium\" | \"large\";\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 */\n@customElement(\"bl-input\")\nexport default class BlInput extends FormControlMixin(LitElement) {\n static get styles(): CSSResultGroup {\n return [style];\n }\n static shadowRootOptions = { ...LitElement.shadowRootOptions, delegatesFocus: true };\n\n static formControlValidators = innerInputValidators;\n\n @query(\"input\")\n validationTarget: HTMLInputElement;\n\n /**\n * Sets name of the input\n */\n @property({ reflect: true })\n name?: string;\n\n /**\n * Type of the input. It's used to set `type` attribute of native input inside.\n */\n @property({ reflect: true })\n type: InputType = \"text\";\n\n /**\n * Sets label of the input\n */\n @property({ reflect: true })\n label?: string;\n\n /**\n * Sets placeholder of the input\n */\n @property({ reflect: true })\n placeholder?: string;\n\n /**\n * Sets initial value of the input\n */\n @property({ reflect: true })\n value = \"\";\n\n /**\n * Makes input a mandatory field\n */\n @property({ type: Boolean, reflect: true })\n required = false;\n\n /**\n * Sets minimum length of the input\n */\n @property({ type: Number, reflect: true })\n minlength?: number;\n\n /**\n * Sets maximum length of the input\n */\n @property({ type: Number, reflect: true })\n maxlength?: number;\n\n /**\n * Sets the minimum acceptable value for the input\n */\n @property({ reflect: true })\n min?: number | string;\n\n /**\n * Sets the loading value for the input\n */\n @property({ type: Boolean, reflect: true })\n loading = false;\n\n /**\n * Sets the maximum acceptable value for the input\n */\n @property({ reflect: true })\n max?: number | string;\n\n /**\n * Sets a regex pattern form the input validation\n */\n @property({ type: String, reflect: true })\n pattern?: string;\n\n /**\n * Sets the increase and decrease step to a `number` input\n */\n @property({ type: Number, reflect: true })\n step?: number;\n\n /**\n * Hints browser to autocomplete this field.\n */\n @property({ type: String, reflect: true })\n autocomplete: string;\n\n /**\n * Sets the input mode of the field for asking browser to show the desired keyboard.\n */\n @property({ type: String, reflect: true })\n inputmode: \"none\" | \"text\" | \"decimal\" | \"numeric\" | \"tel\" | \"search\" | \"email\" | \"url\";\n\n /**\n * Sets input to get keyboard focus automatically\n */\n @property({ type: Boolean, reflect: true })\n autofocus = false;\n\n /**\n * Sets the custom icon name. `bl-icon` component is used to show an icon\n */\n @property({ type: String, reflect: true })\n icon?: BaklavaIcon;\n\n /**\n * Sets input size.\n */\n @property({ type: String, reflect: true })\n size?: InputSize = \"medium\";\n\n /**\n * Disables the input\n */\n @property({ type: Boolean, reflect: true })\n disabled = false;\n\n /**\n * Makes the input readonly.\n */\n @property({ type: Boolean, reflect: true })\n readonly = false;\n\n /**\n * Makes label as fixed positioned\n */\n @property({ type: Boolean, attribute: \"label-fixed\", reflect: true })\n labelFixed = false;\n\n /**\n * Overrides error message. This message will override default error messages\n */\n @property({ type: String, attribute: \"invalid-text\", reflect: true })\n set customInvalidText(value: string) {\n this._customInvalidText = value;\n this.setValue(this.value);\n }\n\n get customInvalidText(): string {\n return this._customInvalidText;\n }\n\n private _customInvalidText: string;\n\n /**\n * Adds help text\n */\n @property({ type: String, attribute: \"help-text\", reflect: true })\n helpText?: string;\n\n /**\n * Fires when an alteration to the element's value is committed by the user. Unlike the input event, the change event is not necessarily fired for each alteration to an element's value.\n */\n @event(\"bl-change\") private onChange: EventDispatcher<string>;\n\n /**\n * Fires when the value of an input element has been changed.\n */\n @event(\"bl-input\") private onInput: EventDispatcher<string>;\n\n /**\n * Fires when the value of an input element has been changed.\n */\n @event(\"bl-invalid\") private onInvalid: EventDispatcher<ValidityState>;\n\n connectedCallback(): void {\n super.connectedCallback();\n this.addEventListener(\"keydown\", this.onKeydown);\n\n this.form?.addEventListener(\"submit\", () => {\n this.reportValidity();\n });\n }\n\n disconnectedCallback(): void {\n super.disconnectedCallback();\n this.removeEventListener(\"keydown\", this.onKeydown);\n }\n\n private onKeydown = (event: KeyboardEvent): void => {\n if (event.code === \"Enter\" && this.form) {\n setTimeout(() => {\n if (!event.defaultPrevented) {\n submit(this.form);\n }\n });\n }\n };\n\n @state() private dirty = false;\n\n @state() private passwordVisible = false;\n\n private textVisibilityToggle() {\n this.passwordVisible = !this.passwordVisible;\n }\n\n showPicker() {\n if (\"showPicker\" in HTMLInputElement.prototype) {\n this.validationTarget.showPicker();\n }\n }\n\n validityCallback(): string | void {\n this.onInvalid(this.internals.validity);\n return this.customInvalidText || this.validationTarget?.validationMessage;\n }\n\n /**\n * Force to set input as in invalid state.\n */\n async forceCustomError() {\n await this.updateComplete;\n this.validationTarget.setCustomValidity(this.customInvalidText || \"An error occurred\");\n this.setValue(this.value);\n this.reportValidity();\n }\n\n /**\n * Clear forced invalid state\n */\n async clearCustomError() {\n await this.updateComplete;\n this.validationTarget.setCustomValidity(\"\");\n this.setValue(this.value);\n this.reportValidity();\n }\n\n reportValidity() {\n this.dirty = true;\n this.requestUpdate();\n return this.checkValidity();\n }\n\n private inputHandler(event: Event) {\n const value = (event.target as HTMLInputElement).value;\n\n this.value = value;\n this.onInput(value);\n }\n\n private changeHandler(event: Event) {\n const value = (event.target as HTMLInputElement).value;\n\n this.dirty = true;\n this.value = value;\n this.onChange(value);\n }\n\n firstUpdated() {\n this.setValue(this.value);\n if (!this.icon) this.icon = inputTypeIcons[this.type];\n }\n\n protected async updated(changedProperties: PropertyValues) {\n if (changedProperties.size > 0) {\n this.setValue(this.value);\n\n await this.validationComplete;\n\n this.requestUpdate();\n }\n }\n\n private inputId = Math.random().toString(36).substring(2);\n\n private get _hasIconSlot() {\n return this.querySelector(':scope > [slot=\"icon\"]') !== null;\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 const helpMessage = this.helpText\n ? html`<p id=\"helpText\" class=\"help-text\">${this.helpText}</p>`\n : \"\";\n\n const icon = html`\n <slot name=\"icon\">\n ${this.loading && this.type === \"search\" && this.value !== \"\" && this.value !== null\n ? html`<bl-spinner></bl-spinner>`\n : this.icon\n ? html`<bl-icon name=\"${this.icon}\"></bl-icon>`\n : html`<bl-icon class=\"error-icon\" name=\"alert\"></bl-icon>`}\n </slot>\n `;\n\n const label = this.label ? html`<label for=${this.inputId}>${this.label}</label>` : \"\";\n const passwordInput = this.type === \"password\";\n\n const revealButton = passwordInput\n ? html`<bl-button\n size=\"small\"\n kind=\"neutral\"\n variant=\"tertiary\"\n class=\"${classMap({\n \"reveal-button\": true,\n \"password-visible\": this.passwordVisible,\n })}\"\n aria-label=\"Toggle password reveal\"\n @bl-click=\"${this.textVisibilityToggle}\"\n >\n <bl-icon class=\"reveal-icon\" slot=\"icon\" name=\"eye_on\"></bl-icon>\n <bl-icon class=\"reveal-icon\" slot=\"icon\" name=\"eye_off\"></bl-icon>\n </bl-button>`\n : \"\";\n\n const hasCustomIcon = this.icon || this._hasIconSlot;\n const classes = {\n \"wrapper\": true,\n \"dirty\": this.dirty,\n \"invalid\": !this.checkValidity(),\n \"has-icon\": passwordInput || hasCustomIcon || (this.dirty && !this.checkValidity()),\n \"has-value\": this.value !== null && this.value !== \"\",\n };\n\n const passwordType = this.passwordVisible ? \"text\" : \"password\";\n const inputType = passwordInput ? passwordType : this.type;\n\n return html`<div class=${classMap(classes)}>\n ${label}\n <fieldset class=\"input-wrapper\">\n <legend><span>${this.label}</span></legend>\n <input\n id=${this.inputId}\n type=${inputType}\n .value=${live(this.value)}\n inputmode=\"${ifDefined(this.inputmode)}\"\n ?autofocus=${this.autofocus}\n autocomplete=\"${ifDefined(this.autocomplete)}\"\n placeholder=\"${ifDefined(this.placeholder)}\"\n minlength=\"${ifDefined(this.minlength)}\"\n maxlength=\"${ifDefined(this.maxlength)}\"\n min=\"${ifDefined(this.min)}\"\n max=\"${ifDefined(this.max)}\"\n pattern=\"${ifDefined(this.pattern)}\"\n step=\"${ifDefined(this.step)}\"\n ?required=${this.required}\n ?disabled=${this.disabled}\n ?readonly=${this.readonly}\n @change=${this.changeHandler}\n @input=${this.inputHandler}\n aria-invalid=${this.checkValidity() ? \"false\" : \"true\"}\n aria-describedby=${ifDefined(this.helpText ? \"helpText\" : undefined)}\n aria-errormessage=${ifDefined(this.checkValidity() ? undefined : \"errorMessage\")}\n />\n <div class=\"icon\">${revealButton} ${icon}</div>\n </fieldset>\n <div class=\"hint\">${invalidMessage} ${helpMessage}</div>\n </div>`;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n \"bl-input\": BlInput;\n }\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": ["styles", "i", "bl_input_default", "inputTypeIcons", "BlInput", "FormControlMixin", "s", "event", "submit", "bl_input_default", "value", "_a", "changedProperties", "invalidMessage", "x", "helpMessage", "icon", "label", "passwordInput", "revealButton", "o", "hasCustomIcon", "classes", "passwordType", "inputType", "l", "innerInputValidators", "__decorateClass", "i", "e", "t"]
|
|
7
7
|
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import{a as m}from"./chunk-GRL4DWKG.js";import{a as u}from"./chunk-3USCFSFQ.js";import{b as g}from"./chunk-7GK5LKBV.js";import{a as d,b as f,c as v}from"./chunk-5MOOXA2X.js";import{a as c,b as h,f as p}from"./chunk-4OT5AMS5.js";import{d as e}from"./chunk-IZ2LK5GK.js";var o=class extends u{};o.directiveName="unsafeSVG",o.resultType=2;var x=g(o);var y="https://cdn.jsdelivr.net/npm/@trendyol/baklava-icons@latest/icons";function G(s){y=s}function E(){return y}var k=c`:host{display:inline-block}:host div{display:flex;align-items:stretch;width:1em;height:1em;min-width:1em;min-height:1em;overflow:hidden;transform:translateZ(0)}:host svg{width:1em;height:1em}`,b=k;var l=new Map,t=class extends p{static get styles(){return[b]}get name(){return this._iconName}set name(n){n!==this._iconName&&(this._iconName=n,this.load())}async load(){let a=`${E()}/${this.name}.svg`;l.has(a)||l.set(a,fetch(a));try{let i=await l.get(a),r=i==null?void 0:i.clone();r!=null&&r.ok?(this.svg=await r.text(),this.onLoad(`${this.name} icon loaded`),this.requestUpdate()):this.onError(`${this.name} icon failed to load`)}catch(i){this.onError(`${this.name} icon failed to load [${i}]`)}}render(){return h`<div aria-hidden="true">${x(this.svg)}</div>`}};e([f()],t.prototype,"name",1),e([m("bl-load")],t.prototype,"onLoad",2),e([m("bl-error")],t.prototype,"onError",2),e([v()],t.prototype,"svg",2),t=e([d("bl-icon")],t);export{G as a,E as b,t as c};
|
|
2
|
+
/*! Bundled license information:
|
|
3
|
+
|
|
4
|
+
lit-html/directives/unsafe-svg.js:
|
|
5
|
+
(**
|
|
6
|
+
* @license
|
|
7
|
+
* Copyright 2017 Google LLC
|
|
8
|
+
* SPDX-License-Identifier: BSD-3-Clause
|
|
9
|
+
*)
|
|
10
|
+
*/
|
|
11
|
+
//# sourceMappingURL=chunk-HYB2HRRX.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../node_modules/lit-html/src/directives/unsafe-svg.ts", "../src/utilities/asset-paths.ts", "../src/components/icon/bl-icon.css", "../src/components/icon/bl-icon.ts"],
|
|
4
|
-
"sourcesContent": ["/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\n\nimport {directive} from '../directive.js';\nimport {UnsafeHTMLDirective} from './unsafe-html.js';\n\nconst SVG_RESULT = 2;\n\nclass UnsafeSVGDirective extends UnsafeHTMLDirective {\n static override directiveName = 'unsafeSVG';\n static override resultType = SVG_RESULT;\n}\n\n/**\n * Renders the result as SVG, rather than text.\n *\n * The values `undefined`, `null`, and `nothing`, will all result in no content\n * (empty string) being rendered.\n *\n * Note, this is unsafe to use with any user-provided input that hasn't been\n * sanitized or escaped, as it may lead to cross-site-scripting\n * vulnerabilities.\n */\nexport const unsafeSVG = directive(UnsafeSVGDirective);\n\n/**\n * The type of the class that powers this directive. Necessary for naming the\n * directive's return type.\n */\nexport type {UnsafeSVGDirective};\n", "let iconPath = \"
|
|
5
|
-
"mappings": "4QAWA,IAAMA,EAAN,cAAiCC,CAAAA,CAAAA,EACfD,EAAaE,cAAG,YAChBF,EAAUG,WAJT,EAAA,IAiBNC,EAAYC,EAAUL,CAAAA,EC1BnC,IAAIM,EAAW,
|
|
6
|
-
"names": ["UnsafeSVGDirective", "UnsafeHTMLDirective", "directiveName", "resultType", "unsafeSVG", "directive", "iconPath", "setIconPath", "path", "getIconPath", "
|
|
4
|
+
"sourcesContent": ["/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\n\nimport {directive} from '../directive.js';\nimport {UnsafeHTMLDirective} from './unsafe-html.js';\n\nconst SVG_RESULT = 2;\n\nclass UnsafeSVGDirective extends UnsafeHTMLDirective {\n static override directiveName = 'unsafeSVG';\n static override resultType = SVG_RESULT;\n}\n\n/**\n * Renders the result as SVG, rather than text.\n *\n * The values `undefined`, `null`, and `nothing`, will all result in no content\n * (empty string) being rendered.\n *\n * Note, this is unsafe to use with any user-provided input that hasn't been\n * sanitized or escaped, as it may lead to cross-site-scripting\n * vulnerabilities.\n */\nexport const unsafeSVG = directive(UnsafeSVGDirective);\n\n/**\n * The type of the class that powers this directive. Necessary for naming the\n * directive's return type.\n */\nexport type {UnsafeSVGDirective};\n", "let iconPath = \"https://cdn.jsdelivr.net/npm/@trendyol/baklava-icons@latest/icons\";\n\nexport function setIconPath(path: string) {\n iconPath = path;\n}\n\nexport function getIconPath() {\n return iconPath;\n}\n", "import {css} from 'lit';\nexport const styles = css`:host{display:inline-block}:host div{display:flex;align-items:stretch;width:1em;height:1em;min-width:1em;min-height:1em;overflow:hidden;transform:translateZ(0)}:host svg{width:1em;height:1em}`;\nexport default styles;\n", "import { CSSResultGroup, html, LitElement, TemplateResult } from \"lit\";\nimport { customElement, property, state } from \"lit/decorators.js\";\nimport { unsafeSVG } from \"lit/directives/unsafe-svg.js\";\nimport { getIconPath } from \"../../utilities/asset-paths\";\nimport { event, EventDispatcher } from \"../../utilities/event\";\nimport style from \"./bl-icon.css\";\nimport { BaklavaIcon } from \"./icon-list\";\n\nconst requestMap = new Map<string, Promise<Response>>();\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 */\n@customElement(\"bl-icon\")\nexport default class BlIcon extends LitElement {\n static get styles(): CSSResultGroup {\n return [style];\n }\n\n private _iconName: BaklavaIcon;\n\n /**\n * Name of the icon to show\n */\n @property()\n get name(): BaklavaIcon {\n return this._iconName;\n }\n\n set name(value: BaklavaIcon) {\n if (value !== this._iconName) {\n this._iconName = value;\n this.load();\n }\n }\n\n /**\n * Fires when SVG icon loaded\n */\n @event(\"bl-load\") private onLoad: EventDispatcher<string>;\n\n /**\n * Fires when SVG icon failed to load\n */\n @event(\"bl-error\") private onError: EventDispatcher<string>;\n\n @state() private svg: string;\n\n async load() {\n const iconPath = getIconPath();\n const fileUrl = `${iconPath}/${this.name}.svg`;\n\n if (!requestMap.has(fileUrl)) {\n requestMap.set(fileUrl, fetch(fileUrl));\n }\n\n try {\n const iconRequest = await requestMap.get(fileUrl);\n const res = iconRequest?.clone();\n\n if (res?.ok) {\n this.svg = await res.text();\n this.onLoad(`${this.name} icon loaded`);\n this.requestUpdate();\n } else {\n this.onError(`${this.name} icon failed to load`);\n }\n } catch (error) {\n this.onError(`${this.name} icon failed to load [${error}]`);\n }\n }\n\n render(): TemplateResult {\n return html`<div aria-hidden=\"true\">${unsafeSVG(this.svg)}</div>`;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n \"bl-icon\": BlIcon;\n }\n}\n"],
|
|
5
|
+
"mappings": "4QAWA,IAAMA,EAAN,cAAiCC,CAAAA,CAAAA,EACfD,EAAaE,cAAG,YAChBF,EAAUG,WAJT,EAAA,IAiBNC,EAAYC,EAAUL,CAAAA,EC1BnC,IAAIM,EAAW,oEAER,SAASC,EAAYC,EAAc,CACxCF,EAAWE,CACb,CAEO,SAASC,GAAc,CAC5B,OAAOH,CACT,CCPO,IAAMI,EAASC,mMACfC,EAAQF,ECMf,IAAMG,EAAa,IAAI,IAUFC,EAArB,cAAoCC,CAAW,CAC7C,WAAW,QAAyB,CAClC,MAAO,CAACC,CAAK,CACf,CAQA,IAAI,MAAoB,CACtB,OAAO,KAAK,SACd,CAEA,IAAI,KAAKC,EAAoB,CACvBA,IAAU,KAAK,YACjB,KAAK,UAAYA,EACjB,KAAK,KAAK,EAEd,CAcA,MAAM,MAAO,CAEX,IAAMC,EAAU,GADCC,EAAY,KACE,KAAK,WAE/BN,EAAW,IAAIK,CAAO,GACzBL,EAAW,IAAIK,EAAS,MAAMA,CAAO,CAAC,EAGxC,GAAI,CACF,IAAME,EAAc,MAAMP,EAAW,IAAIK,CAAO,EAC1CG,EAAMD,GAAA,YAAAA,EAAa,QAErBC,GAAA,MAAAA,EAAK,IACP,KAAK,IAAM,MAAMA,EAAI,KAAK,EAC1B,KAAK,OAAO,GAAG,KAAK,kBAAkB,EACtC,KAAK,cAAc,GAEnB,KAAK,QAAQ,GAAG,KAAK,0BAA0B,CAEnD,OAASC,EAAP,CACA,KAAK,QAAQ,GAAG,KAAK,6BAA6BA,IAAQ,CAC5D,CACF,CAEA,QAAyB,CACvB,OAAOC,4BAA+BC,EAAU,KAAK,GAAG,SAC1D,CACF,EAlDMC,EAAA,CADHC,EAAS,GAVSZ,EAWf,oBAcsBW,EAAA,CAAzBE,EAAM,SAAS,GAzBGb,EAyBO,sBAKCW,EAAA,CAA1BE,EAAM,UAAU,GA9BEb,EA8BQ,uBAEVW,EAAA,CAAhBG,EAAM,GAhCYd,EAgCF,mBAhCEA,EAArBW,EAAA,CADCC,EAAc,SAAS,GACHZ",
|
|
6
|
+
"names": ["UnsafeSVGDirective", "UnsafeHTMLDirective", "directiveName", "resultType", "unsafeSVG", "directive", "iconPath", "setIconPath", "path", "getIconPath", "styles", "i", "bl_icon_default", "requestMap", "BlIcon", "s", "bl_icon_default", "value", "fileUrl", "getIconPath", "iconRequest", "res", "error", "x", "o", "__decorateClass", "e", "event", "t"]
|
|
7
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 r,c as m,e as u}from"./chunk-5MOOXA2X.js";import{a as v,b as o,f 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 r,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",l=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 s=new FormData;(e=this.value)==null||e.forEach(n=>s.append(this.name,`${n}`)),this.setValue(s)}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(s=>{var n,h;return(h=(n=s==null?void 0:s.shadowRoot)==null?void 0:n.querySelector("div"))==null?void 0:h.classList.remove("dirty","invalid")}):this.checkValidity()||(i=this.options)==null||i.forEach(s=>{var n,h;return(h=(n=s==null?void 0:s.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>`}};l.shadowRootOptions={...
|
|
16
|
+
</div>`}};l.shadowRootOptions={...c.shadowRootOptions,delegatesFocus:!0},l.formControlValidators=[g],t([u("fieldset")],l.prototype,"validationTarget",2),t([r()],l.prototype,"name",2),t([r({type:String})],l.prototype,"label",2),t([r({type:Array,reflect:!0})],l.prototype,"value",2),t([r({type:Boolean,reflect:!0})],l.prototype,"required",2),t([r({type:String,attribute:"invalid-text",reflect:!0})],l.prototype,"customInvalidText",2),t([m()],l.prototype,"dirty",2),t([d("bl-checkbox-group-change")],l.prototype,"onChange",2),t([d("bl-checkbox-group-invalid")],l.prototype,"onInvalid",2),l=t([p(k)],l);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",s=>this.handleSubmit(s))}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",s=>this.handleSubmit(s))}firstUpdated(e){e.has("checked")&&this.checked&&(this.value="on",this.setValue(this.value))}async updated(e){e.has("checked")&&this.required&&(this.checked?this.setValue(this.value):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>`,s=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"
|
|
@@ -30,5 +30,5 @@ import{a as g,c as w}from"./chunk-EG7U7PM3.js";import{a as f}from"./chunk-XDUIVR
|
|
|
30
30
|
<slot class="label"></slot>${s}
|
|
31
31
|
</label>
|
|
32
32
|
<div class="hint">${i}</div>
|
|
33
|
-
</div> `}};a.shadowRootOptions={...
|
|
34
|
-
//# sourceMappingURL=chunk-
|
|
33
|
+
</div> `}};a.shadowRootOptions={...c.shadowRootOptions,delegatesFocus:!1},a.formControlValidators=[g],t([u("input")],a.prototype,"validationTarget",2),t([r({type:Boolean,reflect:!0})],a.prototype,"checked",2),t([r()],a.prototype,"value",2),t([r({type:Boolean,reflect:!0})],a.prototype,"required",2),t([r({type:String,attribute:"invalid-text",reflect:!0})],a.prototype,"customInvalidText",2),t([r({type:Boolean,reflect:!0})],a.prototype,"disabled",2),t([r({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,l as e};
|
|
34
|
+
//# sourceMappingURL=chunk-VCI5BDEF.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)}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 \"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 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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",
|
|
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{a}from"../../../chunk-7QNX2GPS.js";import"../../../chunk-6LT7O7T2.js";import"../../../chunk-ECPWEUBG.js";import"../../../chunk-
|
|
1
|
+
import{a}from"../../../chunk-7QNX2GPS.js";import"../../../chunk-6LT7O7T2.js";import"../../../chunk-ECPWEUBG.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-accordion.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a}from"../../chunk-RQEU3SZQ.js";import"../../chunk-ECPWEUBG.js";import"../../chunk-DINNT5P2.js";import"../../chunk-
|
|
1
|
+
import{a}from"../../chunk-RQEU3SZQ.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-alert.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a}from"../../chunk-4BZSILLM.js";import"../../chunk-
|
|
1
|
+
import{a}from"../../chunk-4BZSILLM.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-badge.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{b as a}from"../../chunk-VU6LRFZR.js";import"../../chunk-CYLRPJKP.js";import"../../chunk-6LT7O7T2.js";import"../../chunk-DINNT5P2.js";import"../../chunk-
|
|
1
|
+
import{b as a}from"../../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-button.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a}from"../../chunk-KOWS266A.js";import"../../chunk-WEEGH2F4.js";import"../../chunk-VU6LRFZR.js";import"../../chunk-CYLRPJKP.js";import"../../chunk-6LT7O7T2.js";import"../../chunk-DINNT5P2.js";import"../../chunk-
|
|
1
|
+
import{a}from"../../chunk-KOWS266A.js";import"../../chunk-WEEGH2F4.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-calendar.js.map
|
|
@@ -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-VCI5BDEF.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
|
|
@@ -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;IAM5B,SAAS,CAAC,YAAY,CAAC,iBAAiB,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC;cAO9C,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;
|
|
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;IAM5B,SAAS,CAAC,YAAY,CAAC,iBAAiB,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC;cAO9C,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-VCI5BDEF.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
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a}from"../../chunk-N43OCCSL.js";import"../../chunk-VU6LRFZR.js";import"../../chunk-CYLRPJKP.js";import"../../chunk-6LT7O7T2.js";import"../../chunk-DINNT5P2.js";import"../../chunk-
|
|
1
|
+
import{a}from"../../chunk-N43OCCSL.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
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a}from"../../chunk-C4GIIUCS.js";import"../../chunk-VU6LRFZR.js";import"../../chunk-CYLRPJKP.js";import"../../chunk-6LT7O7T2.js";import"../../chunk-DINNT5P2.js";import"../../chunk-
|
|
1
|
+
import{a}from"../../chunk-C4GIIUCS.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-drawer.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{e as a,f as b}from"../../chunk-B7ZEUBIV.js";import"../../chunk-73RGV4UX.js";import"../../chunk-VU6LRFZR.js";import"../../chunk-CYLRPJKP.js";import"../../chunk-6LT7O7T2.js";import"../../chunk-DINNT5P2.js";import"../../chunk-
|
|
1
|
+
import{e as a,f as b}from"../../chunk-B7ZEUBIV.js";import"../../chunk-73RGV4UX.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 blDropdownTag,b as default};
|
|
2
2
|
//# sourceMappingURL=bl-dropdown.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{c as a,d as b}from"../../../chunk-B7ZEUBIV.js";import"../../../chunk-73RGV4UX.js";import"../../../chunk-VU6LRFZR.js";import"../../../chunk-CYLRPJKP.js";import"../../../chunk-6LT7O7T2.js";import"../../../chunk-DINNT5P2.js";import"../../../chunk-
|
|
1
|
+
import{c as a,d as b}from"../../../chunk-B7ZEUBIV.js";import"../../../chunk-73RGV4UX.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 blDropdownItemTag,b as default};
|
|
2
2
|
//# sourceMappingURL=bl-dropdown-item.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{c as a}from"../../chunk-
|
|
1
|
+
import{c as a}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{a as default};
|
|
2
2
|
//# sourceMappingURL=bl-icon.js.map
|
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
type BaklavaIcon = (typeof icons)[number];
|
|
1
|
+
import icons, { BaklavaIcon } from "@trendyol/baklava-icons";
|
|
3
2
|
export type { BaklavaIcon };
|
|
4
3
|
export default icons;
|
|
5
4
|
//# sourceMappingURL=icon-list.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"icon-list.d.ts","sourceRoot":"","sources":["../../../src/components/icon/icon-list.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"icon-list.d.ts","sourceRoot":"","sources":["../../../src/components/icon/icon-list.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAE7D,YAAY,EAAE,WAAW,EAAE,CAAC;AAC5B,eAAe,KAAK,CAAC"}
|