@bethinkpl/design-system 26.10.0 → 26.10.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (29) hide show
  1. package/dist/design-system.umd.cjs +13 -13
  2. package/dist/design-system.umd.cjs.map +1 -1
  3. package/dist/lib/js/components/DatePickers/DatePicker/DatePicker.composables.d.ts +3 -0
  4. package/dist/lib/js/components/DatePickers/DatePicker/DatePicker.vue.d.ts +6 -2
  5. package/dist/lib/js/components/DatePickers/DateRangePicker/DateRangePicker.vue.d.ts +6 -4
  6. package/docs/assets/{BasicRichListItem.stories-U04IUDJA.js → BasicRichListItem.stories-CnXil0XY.js} +1 -1
  7. package/docs/assets/{Color-ERTF36HU-BTYraT05.js → Color-ERTF36HU-OGMsUYvZ.js} +1 -1
  8. package/docs/assets/{DateBox.stories-BfooHaha.js → DateBox.stories-BkICbFGG.js} +1 -1
  9. package/docs/assets/DatePicker-AYpn3Wnq.js +2 -0
  10. package/docs/assets/{DatePicker.stories-DjbASyGa.js → DatePicker.stories-B0s5x-tP.js} +21 -17
  11. package/docs/assets/{DateRangePicker-KcsmiPks.js → DateRangePicker-SPwTzS7T.js} +1 -1
  12. package/docs/assets/{DateRangePicker.stories-ChoFMY_B.js → DateRangePicker.stories-BXBaAO1N.js} +1 -1
  13. package/docs/assets/{DocsRenderer-CFRXHY34-DEwg3dth.js → DocsRenderer-CFRXHY34-v9z3YwJj.js} +5 -5
  14. package/docs/assets/{RichListItem.stories-CxoIjdg1.js → RichListItem.stories-V5ssb1ab.js} +1 -1
  15. package/docs/assets/{SelectionTile-DRz2bkjw.js → SelectionTile-M5QhEL1-.js} +1 -1
  16. package/docs/assets/{SelectionTile.stories-DovTKJ82.js → SelectionTile.stories-D2AW9_Oc.js} +1 -1
  17. package/docs/assets/{iframe-CuYAyrbc.js → iframe-CJMgMOL3.js} +4 -4
  18. package/docs/assets/{index-B83yRESF.js → index-C0CdTAAo.js} +1 -1
  19. package/docs/assets/{index-B17W16-g.js → index-DIkIRRN2.js} +1 -1
  20. package/docs/assets/{preview-ukWjZoR_.js → preview-C0zUF_bi.js} +1 -1
  21. package/docs/assets/{preview-xzcWXO7Q.js → preview-Cpupz0H9.js} +2 -2
  22. package/docs/iframe.html +1 -1
  23. package/docs/project.json +1 -1
  24. package/lib/js/components/DatePickers/DatePicker/DatePicker.composables.ts +28 -0
  25. package/lib/js/components/DatePickers/DatePicker/DatePicker.stories.ts +11 -7
  26. package/lib/js/components/DatePickers/DatePicker/DatePicker.vue +1 -2
  27. package/lib/js/components/DatePickers/DateRangePicker/DateRangePicker.vue +0 -2
  28. package/package.json +1 -1
  29. package/docs/assets/DatePicker-Bwqr9DZK.js +0 -2
@@ -1,2 +1,2 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./DocsRenderer-CFRXHY34-DEwg3dth.js","./iframe-CuYAyrbc.js","./_commonjsHelpers-Chg3vePA.js","./index-vG0co4wr.js"])))=>i.map(i=>d[i]);
2
- import{_ as s}from"./iframe-CuYAyrbc.js";import"../sb-preview/runtime.js";const{global:_}=__STORYBOOK_MODULE_GLOBAL__;var o,i=Object.entries((o=_.TAGS_OPTIONS)!=null?o:{}).reduce((e,r)=>{let[t,a]=r;return a.excludeFromDocsStories&&(e[t]=!0),e},{}),d={docs:{renderer:async()=>{let{DocsRenderer:e}=await s(()=>import("./DocsRenderer-CFRXHY34-DEwg3dth.js").then(r=>r.am),__vite__mapDeps([0,1,2,3]),import.meta.url);return new e},stories:{filter:e=>{var r;return(e.tags||[]).filter(t=>i[t]).length===0&&!((r=e.parameters.docs)!=null&&r.disable)}}}};export{d as parameters};
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./DocsRenderer-CFRXHY34-v9z3YwJj.js","./iframe-CJMgMOL3.js","./_commonjsHelpers-Chg3vePA.js","./index-vG0co4wr.js"])))=>i.map(i=>d[i]);
2
+ import{_ as s}from"./iframe-CJMgMOL3.js";import"../sb-preview/runtime.js";const{global:_}=__STORYBOOK_MODULE_GLOBAL__;var o,i=Object.entries((o=_.TAGS_OPTIONS)!=null?o:{}).reduce((e,r)=>{let[t,a]=r;return a.excludeFromDocsStories&&(e[t]=!0),e},{}),d={docs:{renderer:async()=>{let{DocsRenderer:e}=await s(()=>import("./DocsRenderer-CFRXHY34-v9z3YwJj.js").then(r=>r.am),__vite__mapDeps([0,1,2,3]),import.meta.url);return new e},stories:{filter:e=>{var r;return(e.tags||[]).filter(t=>i[t]).length===0&&!((r=e.parameters.docs)!=null&&r.disable)}}}};export{d as parameters};
package/docs/iframe.html CHANGED
@@ -510,7 +510,7 @@
510
510
  </script>
511
511
  <link rel="stylesheet" href="./preview.css">
512
512
 
513
- <script type="module" crossorigin src="./assets/iframe-CuYAyrbc.js"></script>
513
+ <script type="module" crossorigin src="./assets/iframe-CJMgMOL3.js"></script>
514
514
  </head>
515
515
 
516
516
  <body>
package/docs/project.json CHANGED
@@ -1 +1 @@
1
- {"generatedAt":1741956935169,"hasCustomBabel":false,"hasCustomWebpack":false,"hasStaticDirs":true,"hasStorybookEslint":true,"refCount":0,"testPackages":{"@types/jest":"29.5.13","@vue/vue3-jest":"29.2.2","jest":"29.7.0","jest-environment-jsdom":"29.7.0","ts-jest":"29.0.5"},"packageManager":{"type":"yarn","version":"1.22.22"},"preview":{"usesGlobals":false},"framework":{"name":"@storybook/vue3-vite","options":{}},"builder":"@storybook/builder-vite","renderer":"@storybook/vue3","portableStoriesFileCount":2,"storybookVersion":"8.3.4","storybookVersionSpecifier":"^8.3.4","language":"typescript","storybookPackages":{"@storybook/vue3":{"version":"8.3.4"},"@storybook/vue3-vite":{"version":"8.3.4"},"eslint-plugin-storybook":{"version":"0.8.0"},"storybook":{"version":"8.3.4"}},"addons":{"@storybook/addon-actions":{"version":"8.3.4"},"@storybook/addon-designs":{"version":"8.0.3"},"@storybook/addon-docs":{"version":"8.3.4"},"@storybook/addon-controls":{"version":"8.3.4"},"@storybook/addon-storysource":{"version":"8.3.4"},"@storybook/addon-viewport":{"version":"8.3.4"}}}
1
+ {"generatedAt":1742205002043,"hasCustomBabel":false,"hasCustomWebpack":false,"hasStaticDirs":true,"hasStorybookEslint":true,"refCount":0,"testPackages":{"@types/jest":"29.5.13","@vue/vue3-jest":"29.2.2","jest":"29.7.0","jest-environment-jsdom":"29.7.0","ts-jest":"29.0.5"},"packageManager":{"type":"yarn","version":"1.22.22"},"preview":{"usesGlobals":false},"framework":{"name":"@storybook/vue3-vite","options":{}},"builder":"@storybook/builder-vite","renderer":"@storybook/vue3","portableStoriesFileCount":2,"storybookVersion":"8.3.4","storybookVersionSpecifier":"^8.3.4","language":"typescript","storybookPackages":{"@storybook/vue3":{"version":"8.3.4"},"@storybook/vue3-vite":{"version":"8.3.4"},"eslint-plugin-storybook":{"version":"0.8.0"},"storybook":{"version":"8.3.4"}},"addons":{"@storybook/addon-actions":{"version":"8.3.4"},"@storybook/addon-designs":{"version":"8.0.3"},"@storybook/addon-docs":{"version":"8.3.4"},"@storybook/addon-controls":{"version":"8.3.4"},"@storybook/addon-storysource":{"version":"8.3.4"},"@storybook/addon-viewport":{"version":"8.3.4"}}}
@@ -9,6 +9,9 @@ let locale: CustomLocale;
9
9
 
10
10
  export interface DatePickerComposablesProps {
11
11
  disableDates: Array<Date>;
12
+ date?: Date | null;
13
+ startDate?: Date | null;
14
+ endDate?: Date | null;
12
15
  minDate: Date | null;
13
16
  maxDate: Date | null;
14
17
  calendarPosition: DatePickerCalendarPositions;
@@ -41,6 +44,12 @@ export function initFlatpickr({
41
44
  let datePicker: DatePickerInstance | null = null;
42
45
  const isOpen = ref(false);
43
46
 
47
+ const updateDatePickerDates = (date: Date | Array<Date>) => {
48
+ datePicker?.setDate(date, false);
49
+ datePicker?.updateValue(false);
50
+ datePicker?.jumpToDate(Array.isArray(date) ? date[0] : date, false);
51
+ };
52
+
44
53
  const createDatePicker = async (
45
54
  flatpickrInputElement: HTMLInputElement,
46
55
  datePickerElement: HTMLElement,
@@ -130,6 +139,25 @@ export function initFlatpickr({
130
139
  flush: 'post', // Ensure updates happen after DOM changes
131
140
  },
132
141
  );
142
+ watch(
143
+ [() => props.date, () => props.startDate, () => props.endDate],
144
+ () => {
145
+ if (props.date) {
146
+ updateDatePickerDates(props.date);
147
+ } else if (props.startDate && props.endDate) {
148
+ updateDatePickerDates([props.startDate, props.endDate]);
149
+ } else if (props.startDate && !props.endDate) {
150
+ updateDatePickerDates(props.startDate);
151
+ } else if (!props.startDate && props.endDate) {
152
+ updateDatePickerDates(props.endDate);
153
+ } else {
154
+ datePicker?.clear(false);
155
+ }
156
+ },
157
+ {
158
+ flush: 'post', // Ensure updates happen after DOM changes
159
+ },
160
+ );
133
161
 
134
162
  return {
135
163
  datePicker,
@@ -30,26 +30,28 @@ const StoryTemplate: StoryFn<typeof DatePicker> = (args) => {
30
30
  },
31
31
  methods: {
32
32
  updateDate(date: Date) {
33
- updateArgs({
34
- date: `${date.getFullYear()}-${date.getMonth() + 1}-${date.getDate()}`,
35
- });
33
+ if (date) {
34
+ updateArgs({
35
+ date: `${date.getFullYear()}-${date.getMonth() + 1}-${date.getDate()}`,
36
+ });
37
+ }
36
38
  },
37
39
  },
38
40
  computed: {
39
41
  formattedDate() {
40
- if (!this.date) {
42
+ if (!this.date || this.date === '') {
41
43
  return null;
42
44
  }
43
45
  return new Date(this.date);
44
46
  },
45
47
  formattedMinDate() {
46
- if (!this.minDate) {
48
+ if (!this.minDate || this.minDate == '') {
47
49
  return null;
48
50
  }
49
51
  return new Date(this.minDate);
50
52
  },
51
53
  formattedMaxDate() {
52
- if (!this.maxDate) {
54
+ if (!this.maxDate || this.maxDate == '') {
53
55
  return null;
54
56
  }
55
57
  return new Date(this.maxDate);
@@ -83,7 +85,7 @@ const StoryTemplate: StoryFn<typeof DatePicker> = (args) => {
83
85
  :update-position-based-on-scrollable-selector="updatePositionBasedOnScrollableSelector"
84
86
  @update:date="updateDate"
85
87
  >
86
- <ds-switch label-left="lewa" label-right="prawa" />
88
+ <ds-switch label-left="lewa" label-right="prawa" />
87
89
  </date-picker>`,
88
90
  };
89
91
  };
@@ -117,6 +119,8 @@ const argTypes = {
117
119
  options: Object.values(DATE_PICKER_TRIGGER_TYPES),
118
120
  },
119
121
  date: { control: 'text' },
122
+ minDate: { control: 'text' },
123
+ maxDate: { control: 'text' },
120
124
  icon: { control: 'select', options: [null, ...Object.keys(ICONS)] },
121
125
  calendarPosition: {
122
126
  control: 'select',
@@ -249,7 +249,6 @@ export default defineComponent({
249
249
  },
250
250
  setup(
251
251
  props: DatePickerComposablesProps & {
252
- date: Date;
253
252
  isInteractive: boolean;
254
253
  state: DatePickerStates;
255
254
  updatePositionBasedOnScrollableSelector: string;
@@ -270,7 +269,7 @@ export default defineComponent({
270
269
  } = initFlatpickr({
271
270
  props,
272
271
  onChange,
273
- defaultDates: props.date,
272
+ defaultDates: props.date ?? new Date(),
274
273
  mode: 'single',
275
274
  });
276
275
  watch([() => props.isInteractive, () => props.state], async () => {
@@ -61,8 +61,6 @@ import {
61
61
  DatePickerStates,
62
62
  } from '../DatePicker';
63
63
  import { DatePickerComposablesProps, initFlatpickr } from '../DatePicker/DatePicker.composables';
64
- import { capitalizeFirstLetter } from '../../../../../tools/importers/helpers/modifiers';
65
- import { localWeekdayName } from '../../../../../tools/importers/helpers/dates';
66
64
 
67
65
  export default defineComponent({
68
66
  name: 'DateRangePicker',
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bethinkpl/design-system",
3
- "version": "26.10.0",
3
+ "version": "26.10.1",
4
4
  "description": "Bethink universe design-system",
5
5
  "repository": {
6
6
  "type": "git",
@@ -1,2 +0,0 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./pl-Cy1N1vsP.js","./_commonjsHelpers-Chg3vePA.js"])))=>i.map(i=>d[i]);
2
- import{d as F,t as O,r as S,o as a,c as s,a as n,k as b,g as o,j as E,b as g,n as p,F as U,v as R,E as $,w as G,f as X}from"./vue.esm-bundler-DmkhfO_9.js";import{c as Y,d as Z,b as d}from"./Tile-DysbzGgY.js";import{a as q,I as m,b as J}from"./Icon-Mp5xMpaO.js";import{_ as H}from"./_plugin-vue_export-helper-DlAUqK2U.js";import{_ as B}from"./iframe-CuYAyrbc.js";const u={NEUTRAL_WEAK:"neutralWeak",NEUTRAL:"neutral",WARNING:"warning",DANGER:"danger"},T={DEFAULT:"default",DISABLED:"disabled",LOADING:"loading"},c={TOP:"top",TOP_LEFT:"top-left",TOP_RIGHT:"top-right",BOTTOM:"bottom",BOTTOM_LEFT:"bottom-left",BOTTOM_RIGHT:"bottom-right"},w={BOX:"box",TILE:"tile"},K={[c.BOTTOM_LEFT]:"below left",[c.BOTTOM_RIGHT]:"below right",[c.BOTTOM]:"below",[c.TOP_LEFT]:"above left",[c.TOP_RIGHT]:"above right",[c.TOP]:"above"};function v(e){return e.toLocaleDateString("pl-PL",{dateStyle:void 0,timeStyle:void 0,weekday:"long"})}function Q(e){return e.toLocaleDateString("pl-PL",{dateStyle:"medium",timeStyle:void 0})}function V(e){return e.toLocaleDateString("pl-PL",{month:"short",day:"2-digit"})}const L=e=>e.charAt(0).toUpperCase()+e.slice(1),j=F({name:"DateBox",components:{DsIcon:q},props:{isInteractive:{type:Boolean,default:!0},placeholder:{type:String,default:"Ustaw"},startDate:{type:Date,default:null},endDate:{type:Date,default:null},startIcon:{type:Object,default:null,validate:e=>e===null||Object.values(m).includes(O(e))},endIcon:{type:Object,default:null,validate:e=>e===null||Object.values(m).includes(O(e))},areIconsHiddenOnMobile:{type:Boolean,default:!1},state:{type:String||null,default:T.DEFAULT},color:{type:String,default:u.NEUTRAL_WEAK},isOpen:{type:Boolean,default:!1}},data(){return{ICONS:Object.freeze(m),ICON_SIZES:Object.freeze(J),DATE_PICKER_STATES:Object.freeze(T),DATE_PICKER_COLORS:Object.freeze(u)}},computed:{startDateText(){return this.startDate?V(this.startDate):this.placeholder},endDateIfDifferentThanStartDate(){return this.startDate&&this.endDate&&this.startDate.toDateString()!==this.endDate.toDateString()?this.endDate:null},endDateText(){return V(this.endDateIfDifferentThanStartDate)},startDateEyebrowText(){return this.startDate?L(v(this.startDate)):""},endDateEyebrowText(){return this.endDateIfDifferentThanStartDate?L(v(this.endDateIfDifferentThanStartDate)):""}}}),x={key:0,class:"ds-dateBox__loader"},ee={class:"ds-dateBox__dateWrapper"},te={key:0,class:"ds-dateBox__eyebrow"},ae={class:"ds-dateBox__date"},ne={class:"ds-dateBox__dateText"},se={key:0,class:"ds-dateBox__loader"},le={class:"ds-dateBox__dateWrapper"},oe={key:0,class:"ds-dateBox__eyebrow"},ie={class:"ds-dateBox__date"},re={class:"ds-dateBox__dateText"};function de(e,f,r,_,t,D){const l=S("ds-icon");return a(),s("div",{class:p(["ds-dateBox",{"-ds-disabled":e.state===e.DATE_PICKER_STATES.DISABLED,"-ds-loading":e.state===e.DATE_PICKER_STATES.LOADING,"-ds-interactive":e.isInteractive,"-ds-warning":e.color===e.DATE_PICKER_COLORS.WARNING,"-ds-neutralWeak":e.DATE_PICKER_COLORS.NEUTRAL_WEAK===e.color,"-ds-neutral":e.DATE_PICKER_COLORS.NEUTRAL===e.color,"-ds-danger":e.color===e.DATE_PICKER_COLORS.DANGER,"-ds-isOpen":e.isOpen}])},[n("div",{class:p(["ds-dateBox__widthWrapper",{"-ds-has-icon":e.startIcon,"-ds-iconHiddenOnMobile":e.areIconsHiddenOnMobile}])},[e.state===e.DATE_PICKER_STATES.LOADING?(a(),s("div",x,[b(l,{icon:e.ICONS.FAD_SPINNER_THIRD,size:e.ICON_SIZES.X_SMALL,spinning:""},null,8,["icon","size"])])):o("",!0),n("div",ee,[e.startDateEyebrowText?(a(),s("span",te,E(e.startDateEyebrowText),1)):o("",!0),n("div",ae,[e.startIcon?(a(),g(l,{key:0,class:p(["ds-dateBox__icon",{"-ds-hiddenOnMobile":e.areIconsHiddenOnMobile}]),icon:e.startIcon,size:e.ICON_SIZES.XX_SMALL},null,8,["class","icon","size"])):o("",!0),n("span",ne,E(e.startDateText),1)])])],2),e.startDate&&e.endDateIfDifferentThanStartDate?(a(),s(U,{key:0},[f[0]||(f[0]=n("span",{class:"ds-dateBox__separator"},"–",-1)),n("div",{class:p(["ds-dateBox__widthWrapper -ds-justify-to-end",{"-ds-has-icon":e.endIcon,"-ds-iconHiddenOnMobile":e.areIconsHiddenOnMobile}])},[e.state===e.DATE_PICKER_STATES.LOADING?(a(),s("div",se,[b(l,{icon:e.ICONS.FAD_SPINNER_THIRD,size:e.ICON_SIZES.X_SMALL,spinning:""},null,8,["icon","size"])])):o("",!0),n("div",le,[e.endDateEyebrowText?(a(),s("span",oe,E(e.endDateEyebrowText),1)):o("",!0),n("div",ie,[e.endIcon?(a(),g(l,{key:0,class:p(["ds-dateBox__icon",{"-ds-hiddenOnMobile":e.areIconsHiddenOnMobile}]),icon:e.endIcon,size:e.ICON_SIZES.XX_SMALL},null,8,["class","icon","size"])):o("",!0),n("span",re,E(e.endDateText),1)])])],2)],64)):o("",!0)],2)}const ue=H(j,[["render",de],["__scopeId","data-v-0e144c0e"]]);j.__docgenInfo={displayName:"DateBox",exportName:"default",description:"",tags:{},props:[{name:"isInteractive",type:{name:"boolean"},defaultValue:{func:!1,value:"true"}},{name:"placeholder",type:{name:"string"},defaultValue:{func:!1,value:"'Ustaw'"}},{name:"startDate",type:{name:"date"},defaultValue:{func:!1,value:"null"}},{name:"endDate",type:{name:"date"},defaultValue:{func:!1,value:"null"}},{name:"startIcon",type:{name:"object"},defaultValue:{func:!1,value:"null"}},{name:"endIcon",type:{name:"object"},defaultValue:{func:!1,value:"null"}},{name:"areIconsHiddenOnMobile",type:{name:"boolean"},defaultValue:{func:!1,value:"false"}},{name:"state",type:{name:"(String as PropType<DatePickerStates>) || null"},defaultValue:{func:!1,value:"DATE_PICKER_STATES.DEFAULT"}},{name:"color",type:{name:"DatePickerColors"},defaultValue:{func:!1,value:"DATE_PICKER_COLORS.NEUTRAL_WEAK"}},{name:"isOpen",type:{name:"boolean"},defaultValue:{func:!1,value:"false"}}],sourceFiles:["/home/runner/work/design-system/design-system/lib/js/components/DatePickers/DateBox/DateBox.vue"]};let y=null,W;function ce({props:e,onChange:f,defaultDates:r,mode:_="single"}){let t=null;const D=R(!1),l=async(I,A,P)=>{var C,N,M,k;if(!t){if(!y)try{y=(await B(async()=>{const{default:i}=await import("./index-CBmJdl9t.js");return{default:i}},[],import.meta.url)).default,W=(await B(async()=>{const{Polish:i}=await import("./pl-Cy1N1vsP.js").then(h=>h.p);return{Polish:i}},__vite__mapDeps([0,1]),import.meta.url)).Polish}catch(i){console.error("Failed to load flatpickr",i);return}if(t=y(I,{mode:_,locale:W,disableMobile:!0,positionElement:A,ignoredFocusElements:[A],position:K[e.calendarPosition],defaultDate:r,disable:e.disableDates,minDate:e.minDate,maxDate:e.maxDate,onClose:[()=>{D.value=!1}],onOpen:[()=>{D.value=!0}],onChange:f}),P){const i=document.querySelector(P),h=()=>{t==null||t._positionCalendar()};i&&((N=(C=t==null?void 0:t.config)==null?void 0:C.onOpen)==null||N.push(()=>{i.addEventListener("scroll",h,{passive:!0})}),(k=(M=t==null?void 0:t.config)==null?void 0:M.onClose)==null||k.push(()=>{i.removeEventListener("scroll",h)}))}return t}};return $(()=>{t==null||t.destroy(),t=null}),G([()=>e.calendarPosition,()=>e.minDate,()=>e.maxDate,()=>e.disableDates,()=>r],()=>{t==null||t.set({position:K[e.calendarPosition],defaultDate:r,disable:e.disableDates,minDate:e.minDate,maxDate:e.maxDate})},{flush:"post"}),{datePicker:t,createDatePicker:l,isOpen:D,toggle:()=>{t==null||t.toggle()}}}const z=F({name:"DatePicker",components:{DsTile:Y,DateBox:ue},props:{triggerType:{type:String,default:w.TILE},isInteractive:{type:Boolean,default:!0},placeholder:{type:String,default:"Wybierz datę"},date:{type:Date,default:null},additionalText:{type:String,default:""},helpMessage:{type:String,default:null},label:{type:String,default:""},isLabelUppercase:{type:Boolean,default:!1},icon:{type:[Object,null],default:m.FA_CALENDAR_DAYS,validator(e){return e===null||Object.values(m).includes(O(e))}},isIconHiddenOnMobile:{type:Boolean,default:!1},errorMessage:{type:String,default:null},state:{type:String,default:T.DEFAULT},color:{type:String,default:u.NEUTRAL_WEAK},calendarPosition:{type:String,default:c.BOTTOM_LEFT},disableDates:{type:Array,default:()=>[]},minDate:{type:Date,default:null},maxDate:{type:Date,default:null},updatePositionBasedOnScrollableSelector:{type:String,default:""}},emits:{"update:date":e=>!0},setup(e,{emit:f}){const r=R(),_=R(),t=A=>{f("update:date",A[0])},{isOpen:D,toggle:l,createDatePicker:I}=ce({props:e,onChange:t,defaultDates:e.date,mode:"single"});return G([()=>e.isInteractive,()=>e.state],async()=>{e.isInteractive&&e.state===T.DEFAULT&&await I(r.value,_.value,e.updatePositionBasedOnScrollableSelector)}),{flatpickrInputRef:r,datePickerRef:_,isOpen:D,toggleDatePicker:l,createDatePicker:I,DATE_PICKER_CALENDAR_POSITIONS:Object.freeze(c),DATE_PICKER_COLORS:Object.freeze(u),DATE_PICKER_STATES:Object.freeze(T),DATE_PICKER_TRIGGER_TYPES:Object.freeze(w),TILE_ADDITIONAL_TEXT_MAX_WIDTHS:Object.freeze(Z)}},computed:{borderColor(){return{[u.NEUTRAL]:this.isInteractive?d.PRIMARY:d.NEUTRAL_WEAK,[u.NEUTRAL_WEAK]:this.isInteractive?d.PRIMARY:d.NEUTRAL_WEAK,[u.DANGER]:this.isInteractive?d.DANGER:d.DANGER_WEAK,[u.WARNING]:this.isInteractive?d.WARNING:d.WARNING_WEAK}[this.color]},eyebrowText(){return this.date?L(v(this.date)):""},text(){return this.date?Q(this.date):this.placeholder},tileIcon(){return this.additionalText||!this.icon?null:this.isOpen?m.FA_CHEVRON_UP:this.icon},showErrorMessage(){return this.errorMessage!==null},showHelpMessage(){return this.helpMessage!==null}},async mounted(){this.isInteractive&&this.state===T.DEFAULT&&await this.createDatePicker(this.flatpickrInputRef,this.datePickerRef,this.updatePositionBasedOnScrollableSelector)},methods:{toggle(){this.isInteractive&&this.state===T.DEFAULT&&this.toggleDatePicker()}}}),fe={class:"ds-datePicker__labelWrapper"},De={key:2,class:"ds-datePicker__errorMessage"},pe={key:3,class:"ds-datePicker__helpMessage"},Te={ref:"flatpickrInputRef",class:"ds-datePicker__hiddenInput"};function Ee(e,f,r,_,t,D){const l=S("ds-tile"),I=S("date-box");return a(),s("div",{ref:"datePickerRef",class:p(["ds-datePicker",{"-ds-box":e.triggerType===e.DATE_PICKER_TRIGGER_TYPES.BOX}])},[e.triggerType===e.DATE_PICKER_TRIGGER_TYPES.TILE?(a(),s(U,{key:0},[n("div",fe,[e.label?(a(),s("span",{key:0,class:p(["ds-datePicker__label",{"-ds-isUppercase":e.isLabelUppercase,"-ds-disabled":e.state===e.DATE_PICKER_STATES.DISABLED}])},E(e.label),3)):o("",!0),e.$slots.default?X(e.$slots,"default",{key:1},void 0,!0):o("",!0)]),b(l,{class:"ds-datePicker__tile",text:e.text,interactive:e.isInteractive,"additional-text":e.additionalText,color:e.color,"border-color":e.borderColor,state:e.state,"icon-right":e.tileIcon,"is-icon-right-hidden-on-mobile":e.isIconHiddenOnMobile,"eyebrow-text":e.eyebrowText,"additional-text-max-width":e.TILE_ADDITIONAL_TEXT_MAX_WIDTHS.MEDIUM,"has-border":"",onClick:e.toggle},null,8,["text","interactive","additional-text","color","border-color","state","icon-right","is-icon-right-hidden-on-mobile","eyebrow-text","additional-text-max-width","onClick"])],64)):(a(),g(I,{key:1,"is-interactive":e.isInteractive,placeholder:e.placeholder,"start-date":e.date,"start-icon":e.icon,"are-icons-hidden-on-mobile":e.isIconHiddenOnMobile,state:e.state,color:e.color,"is-open":e.isOpen,onClick:e.toggle},null,8,["is-interactive","placeholder","start-date","start-icon","are-icons-hidden-on-mobile","state","color","is-open","onClick"])),e.showErrorMessage?(a(),s("span",De,E(e.errorMessage),1)):e.showHelpMessage?(a(),s("span",pe,E(e.helpMessage),1)):o("",!0),n("input",Te,null,512)],2)}const ye=H(z,[["render",Ee],["__scopeId","data-v-2b805844"]]);z.__docgenInfo={displayName:"DatePicker",exportName:"default",description:"",tags:{},props:[{name:"triggerType",type:{name:"DatePickerTriggerTypes"},defaultValue:{func:!1,value:"DATE_PICKER_TRIGGER_TYPES.TILE"}},{name:"isInteractive",type:{name:"boolean"},defaultValue:{func:!1,value:"true"}},{name:"placeholder",type:{name:"string"},defaultValue:{func:!1,value:"'Wybierz datę'"}},{name:"date",type:{name:"date"},defaultValue:{func:!1,value:"null"}},{name:"additionalText",type:{name:"string"},defaultValue:{func:!1,value:"''"}},{name:"helpMessage",type:{name:"string"},defaultValue:{func:!1,value:"null"}},{name:"label",type:{name:"string"},defaultValue:{func:!1,value:"''"}},{name:"isLabelUppercase",type:{name:"boolean"},defaultValue:{func:!1,value:"false"}},{name:"icon",type:{name:"IconItem | null"},defaultValue:{func:!1,value:"ICONS.FA_CALENDAR_DAYS"}},{name:"isIconHiddenOnMobile",type:{name:"boolean"},defaultValue:{func:!1,value:"false"}},{name:"errorMessage",type:{name:"string"},defaultValue:{func:!1,value:"null"}},{name:"state",type:{name:"DatePickerStates"},defaultValue:{func:!1,value:"DATE_PICKER_STATES.DEFAULT"}},{name:"color",type:{name:"DatePickerColors"},defaultValue:{func:!1,value:"DATE_PICKER_COLORS.NEUTRAL_WEAK"}},{name:"calendarPosition",type:{name:"DatePickerCalendarPositions"},defaultValue:{func:!1,value:"DATE_PICKER_CALENDAR_POSITIONS.BOTTOM_LEFT"}},{name:"disableDates",type:{name:"Array<Date>"},defaultValue:{func:!0,value:"() => []"}},{name:"minDate",type:{name:"date"},defaultValue:{func:!1,value:"null"}},{name:"maxDate",type:{name:"date"},defaultValue:{func:!1,value:"null"}},{name:"updatePositionBasedOnScrollableSelector",type:{name:"string"},defaultValue:{func:!1,value:"''"}}],events:[{name:"update:date"}],slots:[{name:"default"}],sourceFiles:["/home/runner/work/design-system/design-system/lib/js/components/DatePickers/DatePicker/DatePicker.vue"]};export{ue as D,T as a,u as b,ye as c,w as d,c as e,ce as i};