@bethinkpl/design-system 26.5.0 → 26.6.0

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 (48) hide show
  1. package/dist/design-system.umd.cjs +17 -17
  2. package/dist/design-system.umd.cjs.map +1 -1
  3. package/dist/lib/js/components/DatePickers/DatePicker/DatePicker.composables.d.ts +1 -1
  4. package/dist/lib/js/components/DatePickers/DatePicker/DatePicker.vue.d.ts +23 -1
  5. package/dist/lib/js/components/DatePickers/DateRangePicker/DateRangePicker.vue.d.ts +4 -1
  6. package/dist/lib/js/components/Drawer/DrawerTile/DrawerTile.vue.d.ts +26 -0
  7. package/dist/lib/js/components/SelectList/SelectListItemTile/SelectListItemTile.vue.d.ts +26 -0
  8. package/dist/lib/js/components/Tile/Tile.consts.d.ts +5 -0
  9. package/dist/lib/js/components/Tile/Tile.shared.d.ts +6 -1
  10. package/dist/lib/js/components/Tile/Tile.vue.d.ts +15 -0
  11. package/docs/assets/{BasicRichListItem.stories-DtiXHviM.js → BasicRichListItem.stories-CW9os382.js} +1 -1
  12. package/docs/assets/{Color-ERTF36HU-BZlibAx3.js → Color-ERTF36HU-CqJ5SSs8.js} +1 -1
  13. package/docs/assets/DatePicker-Br-Dxnyn.js +2 -0
  14. package/docs/assets/DatePicker.stories-C4sN46Ws.js +175 -0
  15. package/docs/assets/DateRangePicker-B2xmoGPO.js +1 -0
  16. package/docs/assets/{DateRangePicker.stories-BcGHtCgE.js → DateRangePicker.stories-DGh5m4TF.js} +1 -1
  17. package/docs/assets/{DocsRenderer-CFRXHY34-Bw028q-m.js → DocsRenderer-CFRXHY34-CemqquOQ.js} +5 -5
  18. package/docs/assets/{DrawerTile-DRd90aW_.js → DrawerTile-OeT5gefI.js} +1 -1
  19. package/docs/assets/{DrawerTile.stories-B8jCAcpg.js → DrawerTile.stories-nBKWobdB.js} +1 -1
  20. package/docs/assets/{RichListItem.stories-WK5gz3vk.js → RichListItem.stories-B_DlwcQo.js} +1 -1
  21. package/docs/assets/{SelectListItemTile-CziQ20sD.js → SelectListItemTile-ohFw-wM4.js} +1 -1
  22. package/docs/assets/{SelectListItemTile.stories-jXlPEopR.js → SelectListItemTile.stories-BRCqpIYj.js} +1 -1
  23. package/docs/assets/{SelectionTile-C0MW2ZUn.js → SelectionTile-CjfV3f7H.js} +1 -1
  24. package/docs/assets/{SelectionTile.stories-mIPf1nUR.js → SelectionTile.stories-PT6dhdE2.js} +1 -1
  25. package/docs/assets/Tile-DjRk5xHI.js +1 -0
  26. package/docs/assets/{Tile.sb.shared-BZ0VDle3.js → Tile.sb.shared-Dt0Nhl_4.js} +1 -1
  27. package/docs/assets/{Tile.stories-LYYOeyyn.js → Tile.stories-lM4we8lW.js} +1 -1
  28. package/docs/assets/{iframe-Di5TkTnR.js → iframe-OBly2w25.js} +5 -5
  29. package/docs/assets/{index-SuPsQGgx.js → index-BX4u4pqi.js} +1 -1
  30. package/docs/assets/{index-Dyq6sUoy.js → index-DRNPKjaN.js} +1 -1
  31. package/docs/assets/{preview-BCrXVRij.js → preview-BA4xsxRI.js} +2 -2
  32. package/docs/assets/{preview-BRlPhK-p.js → preview-ByrBU2E6.js} +1 -1
  33. package/docs/iframe.html +1 -1
  34. package/docs/index.json +1 -1
  35. package/docs/project.json +1 -1
  36. package/lib/js/components/DatePickers/DatePicker/DatePicker.composables.ts +22 -1
  37. package/lib/js/components/DatePickers/DatePicker/DatePicker.stories.ts +26 -1
  38. package/lib/js/components/DatePickers/DatePicker/DatePicker.vue +19 -4
  39. package/lib/js/components/DatePickers/DateRangePicker/DateRangePicker.vue +15 -2
  40. package/lib/js/components/Tile/Tile.consts.ts +7 -0
  41. package/lib/js/components/Tile/Tile.shared.ts +16 -1
  42. package/lib/js/components/Tile/Tile.vue +21 -3
  43. package/package.json +1 -1
  44. package/.yarnrc.yml +0 -1
  45. package/docs/assets/DatePicker-DfNJw-NT.js +0 -2
  46. package/docs/assets/DatePicker.stories-CIo6kOIM.js +0 -95
  47. package/docs/assets/DateRangePicker-L4cDgxmU.js +0 -1
  48. package/docs/assets/Tile-DWASCVea.js +0 -1
@@ -0,0 +1,175 @@
1
+ import{D as p,a as D,b as u,c as m,d as g}from"./DatePicker-Br-Dxnyn.js";import{I as b}from"./Icon-ChGia3n4.js";import{D as I}from"./Switch-BtYFtHgw.js";import"./vue.esm-bundler-CWlcb7ht.js";import"./Tile-DjRk5xHI.js";import"./_plugin-vue_export-helper-DlAUqK2U.js";import"./iframe-OBly2w25.js";import"../sb-preview/runtime.js";const{useArgs:M}=__STORYBOOK_MODULE_PREVIEW_API__,N={title:"Components/DatePickers/DatePicker",component:p},h=S=>{const[T,w]=M();return{components:{DatePicker:p,DsSwitch:I},setup(){return S},data(){return{ICONS:Object.freeze(b)}},methods:{updateDate(a){w({date:`${a.getFullYear()}-${a.getMonth()+1}-${a.getDate()}`})}},computed:{formattedDate(){return this.date?new Date(this.date):null},formattedMinDate(){return this.minDate?new Date(this.minDate):null},formattedMaxDate(){return this.maxDate?new Date(this.maxDate):null},formattedDisableDates(){return!this.disableDates||!this.disableDates.length?null:this.disableDates.map(a=>new Date(a))}},template:`
2
+ <date-picker
3
+ :trigger-type="triggerType"
4
+ :is-interactive="isInteractive"
5
+ :placeholder="placeholder"
6
+ :date="formattedDate"
7
+ :additional-text="additionalText"
8
+ :helpMessage="helpMessage"
9
+ :label="label"
10
+ :is-label-uppercase="isLabelUppercase"
11
+ :icon="icon ? ICONS[icon] : null"
12
+ :is-icon-hidden-on-mobile="isIconHiddenOnMobile"
13
+ :calendar-position="calendarPosition"
14
+ :error-message="errorMessage"
15
+ :state="state"
16
+ :color="color"
17
+ :disable-dates="formattedDisableDates"
18
+ :min-date="formattedMinDate"
19
+ :max-date="formattedMaxDate"
20
+ :update-position-based-on-scrollable-selector="updatePositionBasedOnScrollableSelector"
21
+ @update:date="updateDate"
22
+ >
23
+ <ds-switch label-left="lewa" label-right="prawa" />
24
+ </date-picker>`}},t=h.bind({}),n=Date.now(),r=864e5,f={triggerType:D.TILE,isInteractive:!0,color:u.NEUTRAL_WEAK,label:"Date picker",isLabelUppercase:!1,placeholder:"Wybierz datę",date:"",disableDates:[new Date(n+r*2).toISOString().slice(0,10)],minDate:new Date(n).toISOString().slice(0,10),maxDate:new Date(n+r*30).toISOString().slice(0,10),icon:"FA_CALENDAR_DAYS",isIconHiddenOnMobile:!1,additionalText:"",helpMessage:null,errorMessage:null,calendarPosition:m.BOTTOM,state:g.DEFAULT},O={triggerType:{control:"select",options:Object.values(D)},date:{control:"text"},icon:{control:"select",options:[null,...Object.keys(b)]},calendarPosition:{control:"select",options:Object.values(m)},state:{control:"select",options:Object.values(g)},color:{control:"select",options:Object.values(u)},disableDates:{control:"object"}};t.argTypes=O;t.args=f;t.parameters={design:{type:"figma",url:"https://www.figma.com/design/03ABNCSDYWYDmOPJOBGM5l/INI-153-Planowanie-pracy-z-lekcjami?node-id=245-162031&t=g08nj70xhT9BZTpu-4"}};const e=h.bind({});e.decorators=[()=>({template:`
25
+ <div style="height: 500px; overflow-y: scroll;" class="scrollable-container">
26
+ <div style="height: 1500px; padding: 6px;">
27
+ <story />
28
+ </div>
29
+ </div>`})];e.argTypes=O;e.args={...f,updatePositionBasedOnScrollableSelector:".scrollable-container"};e.parameters={design:{type:"figma",url:"https://www.figma.com/design/03ABNCSDYWYDmOPJOBGM5l/INI-153-Planowanie-pracy-z-lekcjami?node-id=245-162031&t=g08nj70xhT9BZTpu-4"}};var s,i,o;t.parameters={...t.parameters,docs:{...(s=t.parameters)==null?void 0:s.docs,source:{originalSource:`args => {
30
+ const [_, updateArgs] = useArgs();
31
+ return {
32
+ components: {
33
+ DatePicker,
34
+ DsSwitch
35
+ },
36
+ setup() {
37
+ return args;
38
+ },
39
+ data() {
40
+ return {
41
+ ICONS: Object.freeze(ICONS)
42
+ };
43
+ },
44
+ methods: {
45
+ updateDate(date: Date) {
46
+ updateArgs({
47
+ date: \`\${date.getFullYear()}-\${date.getMonth() + 1}-\${date.getDate()}\`
48
+ });
49
+ }
50
+ },
51
+ computed: {
52
+ formattedDate() {
53
+ if (!this.date) {
54
+ return null;
55
+ }
56
+ return new Date(this.date);
57
+ },
58
+ formattedMinDate() {
59
+ if (!this.minDate) {
60
+ return null;
61
+ }
62
+ return new Date(this.minDate);
63
+ },
64
+ formattedMaxDate() {
65
+ if (!this.maxDate) {
66
+ return null;
67
+ }
68
+ return new Date(this.maxDate);
69
+ },
70
+ formattedDisableDates() {
71
+ if (!this.disableDates || !this.disableDates.length) {
72
+ return null;
73
+ }
74
+ return this.disableDates.map(date => new Date(date));
75
+ }
76
+ },
77
+ template: \`
78
+ <date-picker
79
+ :trigger-type="triggerType"
80
+ :is-interactive="isInteractive"
81
+ :placeholder="placeholder"
82
+ :date="formattedDate"
83
+ :additional-text="additionalText"
84
+ :helpMessage="helpMessage"
85
+ :label="label"
86
+ :is-label-uppercase="isLabelUppercase"
87
+ :icon="icon ? ICONS[icon] : null"
88
+ :is-icon-hidden-on-mobile="isIconHiddenOnMobile"
89
+ :calendar-position="calendarPosition"
90
+ :error-message="errorMessage"
91
+ :state="state"
92
+ :color="color"
93
+ :disable-dates="formattedDisableDates"
94
+ :min-date="formattedMinDate"
95
+ :max-date="formattedMaxDate"
96
+ :update-position-based-on-scrollable-selector="updatePositionBasedOnScrollableSelector"
97
+ @update:date="updateDate"
98
+ >
99
+ <ds-switch label-left="lewa" label-right="prawa" />
100
+ </date-picker>\`
101
+ };
102
+ }`,...(o=(i=t.parameters)==null?void 0:i.docs)==null?void 0:o.source}}};var l,d,c;e.parameters={...e.parameters,docs:{...(l=e.parameters)==null?void 0:l.docs,source:{originalSource:`args => {
103
+ const [_, updateArgs] = useArgs();
104
+ return {
105
+ components: {
106
+ DatePicker,
107
+ DsSwitch
108
+ },
109
+ setup() {
110
+ return args;
111
+ },
112
+ data() {
113
+ return {
114
+ ICONS: Object.freeze(ICONS)
115
+ };
116
+ },
117
+ methods: {
118
+ updateDate(date: Date) {
119
+ updateArgs({
120
+ date: \`\${date.getFullYear()}-\${date.getMonth() + 1}-\${date.getDate()}\`
121
+ });
122
+ }
123
+ },
124
+ computed: {
125
+ formattedDate() {
126
+ if (!this.date) {
127
+ return null;
128
+ }
129
+ return new Date(this.date);
130
+ },
131
+ formattedMinDate() {
132
+ if (!this.minDate) {
133
+ return null;
134
+ }
135
+ return new Date(this.minDate);
136
+ },
137
+ formattedMaxDate() {
138
+ if (!this.maxDate) {
139
+ return null;
140
+ }
141
+ return new Date(this.maxDate);
142
+ },
143
+ formattedDisableDates() {
144
+ if (!this.disableDates || !this.disableDates.length) {
145
+ return null;
146
+ }
147
+ return this.disableDates.map(date => new Date(date));
148
+ }
149
+ },
150
+ template: \`
151
+ <date-picker
152
+ :trigger-type="triggerType"
153
+ :is-interactive="isInteractive"
154
+ :placeholder="placeholder"
155
+ :date="formattedDate"
156
+ :additional-text="additionalText"
157
+ :helpMessage="helpMessage"
158
+ :label="label"
159
+ :is-label-uppercase="isLabelUppercase"
160
+ :icon="icon ? ICONS[icon] : null"
161
+ :is-icon-hidden-on-mobile="isIconHiddenOnMobile"
162
+ :calendar-position="calendarPosition"
163
+ :error-message="errorMessage"
164
+ :state="state"
165
+ :color="color"
166
+ :disable-dates="formattedDisableDates"
167
+ :min-date="formattedMinDate"
168
+ :max-date="formattedMaxDate"
169
+ :update-position-based-on-scrollable-selector="updatePositionBasedOnScrollableSelector"
170
+ @update:date="updateDate"
171
+ >
172
+ <ds-switch label-left="lewa" label-right="prawa" />
173
+ </date-picker>\`
174
+ };
175
+ }`,...(c=(d=e.parameters)==null?void 0:d.docs)==null?void 0:c.source}}};const k=["Interactive","ScrollableContainer"];export{t as Interactive,e as ScrollableContainer,k as __namedExportsOrder,N as default};
@@ -0,0 +1 @@
1
+ import{e as A,c,d as t,b as f,i as g,a as T,f as D,l as p}from"./DatePicker-Br-Dxnyn.js";import{I as a}from"./Icon-ChGia3n4.js";import{d as R,t as m,q as I,w as P,r as h,o as y,c as _,k as S,j as O,g as b,a as k}from"./vue.esm-bundler-CWlcb7ht.js";import{_ as v}from"./_plugin-vue_export-helper-DlAUqK2U.js";const E=R({name:"DateRangePicker",components:{DatePickerBox:A},props:{isInteractive:{type:Boolean,default:!1},placeholder:{type:String,default:"Wybierz datę"},startDate:{type:Date,default:null},endDate:{type:Date,default:null},startIcon:{type:[Object,null],default:a.FA_CALENDAR_DAY,validator(e){return e===null||(Object==null?void 0:Object.values(a).includes(m(e)))}},endIcon:{type:[Object,null],default:a.FA_CALENDAR_DAY,validator(e){return e===null||(Object==null?void 0:Object.values(a).includes(m(e)))}},areIconsHiddenOnMobile:{type:Boolean,default:!1},calendarPosition:{type:String,default:c.BOTTOM_LEFT},errorMessage:{type:String,default:""},state:{type:String||null,default:t.DEFAULT},color:{type:String,default:f.NEUTRAL_WEAK},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:i}){const n=I(),l=I(),o=r=>{r.length===2&&i("update:date",{startDate:r[0],endDate:r[1]})},{isOpen:d,toggle:s,createDatePicker:u}=g({props:e,onChange:o,defaultDates:[e.startDate,e.endDate],mode:"range"});return P([()=>e.isInteractive,()=>e.state],async()=>{e.isInteractive&&e.state===t.DEFAULT&&await u(l.value,n.value,e.updatePositionBasedOnScrollableSelector)},{flush:"post"}),{dateRangePickerRef:n,flatpickrInputRef:l,isOpen:d,toggleDatePicker:s,createDatePicker:u,DATE_PICKER_CALENDAR_POSITIONS:Object.freeze(c),DATE_PICKER_COLORS:Object.freeze(f),DATE_PICKER_STATES:Object.freeze(t),DATE_PICKER_TRIGGER_TYPES:Object.freeze(T)}},computed:{endDateEyebrowText(){return!this.endDate||this.state===t.LOADING?"":D(p(this.endDate))},endDateIfDifferentThanStartDate(){return this.startDate&&this.endDate&&this.startDate.getTime()!==this.endDate.getTime()?this.endDate:null},eyebrowText(){return!this.startDate||this.state===t.LOADING?"":D(p(this.startDate))}},async mounted(){this.isInteractive&&this.state===t.DEFAULT&&await this.createDatePicker(this.flatpickrInputRef,this.dateRangePickerRef,this.updatePositionBasedOnScrollableSelector)},methods:{toggle(){this.isInteractive&&this.state===t.DEFAULT&&this.toggleDatePicker()}}}),C={ref:"dateRangePickerRef",class:"ds-dateRangePicker"},N={key:0,class:"ds-dateRangePicker__errorMessage"},L={ref:"flatpickrInputRef",class:"ds-dateRangePicker__hiddenInput"};function V(e,i,n,l,o,d){const s=h("date-picker-box");return y(),_("div",C,[S(s,{"is-interactive":e.isInteractive,placeholder:e.placeholder,"start-date":e.startDate,"end-date":e.endDateIfDifferentThanStartDate,"start-icon":e.startIcon,"end-icon":e.endIcon,"are-icons-hidden-on-mobile":e.areIconsHiddenOnMobile,state:e.state,color:e.color,"start-date-eyebrow-text":e.eyebrowText,"end-date-eyebrow-text":e.endDateEyebrowText,"is-open":e.isOpen,onClick:e.toggle},null,8,["is-interactive","placeholder","start-date","end-date","start-icon","end-icon","are-icons-hidden-on-mobile","state","color","start-date-eyebrow-text","end-date-eyebrow-text","is-open","onClick"]),e.errorMessage?(y(),_("span",N,O(e.errorMessage),1)):b("",!0),k("input",L,null,512)],512)}const j=v(E,[["render",V],["__scopeId","data-v-937af447"]]);E.__docgenInfo={displayName:"DateRangePicker",exportName:"default",description:"",tags:{},props:[{name:"isInteractive",type:{name:"boolean"},defaultValue:{func:!1,value:"false"}},{name:"placeholder",type:{name:"string"},defaultValue:{func:!1,value:"'Wybierz datę'"}},{name:"startDate",type:{name:"date"},defaultValue:{func:!1,value:"null"}},{name:"endDate",type:{name:"date"},defaultValue:{func:!1,value:"null"}},{name:"startIcon",type:{name:"IconItem | null"},defaultValue:{func:!1,value:"ICONS.FA_CALENDAR_DAY"}},{name:"endIcon",type:{name:"IconItem | null"},defaultValue:{func:!1,value:"ICONS.FA_CALENDAR_DAY"}},{name:"areIconsHiddenOnMobile",type:{name:"boolean"},defaultValue:{func:!1,value:"false"}},{name:"calendarPosition",type:{name:"DatePickerCalendarPositions"},defaultValue:{func:!1,value:"DATE_PICKER_CALENDAR_POSITIONS.BOTTOM_LEFT"}},{name:"errorMessage",type:{name:"string"},defaultValue:{func:!1,value:"''"}},{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:"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"}],sourceFiles:["/home/runner/work/design-system/design-system/lib/js/components/DatePickers/DateRangePicker/DateRangePicker.vue"]};export{j as D};
@@ -1,4 +1,4 @@
1
- import{D as i}from"./DateRangePicker-L4cDgxmU.js";import{I as r}from"./Icon-ChGia3n4.js";import{c as m,d as I,b as s}from"./DatePicker-DfNJw-NT.js";import"./vue.esm-bundler-CWlcb7ht.js";import"./_plugin-vue_export-helper-DlAUqK2U.js";import"./Tile-DWASCVea.js";import"./iframe-Di5TkTnR.js";import"../sb-preview/runtime.js";const{useArgs:u}=__STORYBOOK_MODULE_PREVIEW_API__,b={title:"Components/DatePickers/DateRangePicker",component:i,render:n=>{const[A,p]=u();return{components:{DateRangePicker:i},setup(){return n},data(){return{ICONS:Object.freeze(r)}},methods:{updateDate({startDate:e,endDate:t}){p({startDate:e?`${e.getFullYear()}-${e.getMonth()+1}-${e.getDate()}`:null,endDate:t?`${t.getFullYear()}-${t.getMonth()+1}-${t.getDate()}`:null})}},computed:{formattedStartDate(){return this.startDate?new Date(this.startDate):null},formattedEndDate(){return this.endDate?new Date(this.endDate):null},formattedMinDate(){return this.minDate?new Date(this.minDate):null},formattedMaxDate(){return this.maxDate?new Date(this.maxDate):null},formattedDisableDates(){return!this.disableDates||!this.disableDates.length?[]:this.disableDates.map(e=>new Date(e))}},template:`
1
+ import{D as i}from"./DateRangePicker-B2xmoGPO.js";import{I as r}from"./Icon-ChGia3n4.js";import{c as m,d as I,b as s}from"./DatePicker-Br-Dxnyn.js";import"./vue.esm-bundler-CWlcb7ht.js";import"./_plugin-vue_export-helper-DlAUqK2U.js";import"./Tile-DjRk5xHI.js";import"./iframe-OBly2w25.js";import"../sb-preview/runtime.js";const{useArgs:u}=__STORYBOOK_MODULE_PREVIEW_API__,b={title:"Components/DatePickers/DateRangePicker",component:i,render:n=>{const[A,p]=u();return{components:{DateRangePicker:i},setup(){return n},data(){return{ICONS:Object.freeze(r)}},methods:{updateDate({startDate:e,endDate:t}){p({startDate:e?`${e.getFullYear()}-${e.getMonth()+1}-${e.getDate()}`:null,endDate:t?`${t.getFullYear()}-${t.getMonth()+1}-${t.getDate()}`:null})}},computed:{formattedStartDate(){return this.startDate?new Date(this.startDate):null},formattedEndDate(){return this.endDate?new Date(this.endDate):null},formattedMinDate(){return this.minDate?new Date(this.minDate):null},formattedMaxDate(){return this.maxDate?new Date(this.maxDate):null},formattedDisableDates(){return!this.disableDates||!this.disableDates.length?[]:this.disableDates.map(e=>new Date(e))}},template:`
2
2
  <div style="display: flex">
3
3
  <date-range-picker
4
4
  :is-interactive="isInteractive"