@paperless/core 2.15.1 → 2.15.3
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/CHANGELOG.md +19 -0
- package/dist/build/{p-f2fbd6fa.js → p-3dd76a64.js} +1 -1
- package/dist/build/p-481a8ecd.entry.js +2 -0
- package/dist/build/p-481a8ecd.entry.js.map +1 -0
- package/dist/build/p-6aa5fec2.entry.js +2 -0
- package/dist/build/p-6aa5fec2.entry.js.map +1 -0
- package/dist/build/p-BYMwCs48.js +2 -0
- package/dist/build/p-BYMwCs48.js.map +1 -0
- package/dist/build/p-ab66da44.entry.js +2 -0
- package/dist/build/p-ab66da44.entry.js.map +1 -0
- package/dist/build/p-calendar.entry.esm.js.map +1 -1
- package/dist/build/p-datepicker.entry.esm.js.map +1 -1
- package/dist/build/p-table-column.entry.esm.js.map +1 -1
- package/dist/build/paperless.esm.js +1 -1
- package/dist/cjs/{index-Dt9qqH1T.js → index-BrXouTWt.js} +142 -2
- package/dist/cjs/index-BrXouTWt.js.map +1 -0
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/p-calendar.cjs.entry.js +32 -165
- package/dist/cjs/p-calendar.cjs.entry.js.map +1 -1
- package/dist/cjs/p-calendar.entry.cjs.js.map +1 -1
- package/dist/cjs/p-datepicker.cjs.entry.js +23 -14
- package/dist/cjs/p-datepicker.cjs.entry.js.map +1 -1
- package/dist/cjs/p-datepicker.entry.cjs.js.map +1 -1
- package/dist/cjs/p-table-column.cjs.entry.js +4 -0
- package/dist/cjs/p-table-column.cjs.entry.js.map +1 -1
- package/dist/cjs/p-table-column.entry.cjs.js.map +1 -1
- package/dist/cjs/paperless.cjs.js +1 -1
- package/dist/collection/components/helpers/table/column/table-column.component.js +24 -0
- package/dist/collection/components/helpers/table/column/table-column.component.js.map +1 -1
- package/dist/collection/components/molecules/calendar/calendar.component.js +17 -14
- package/dist/collection/components/molecules/calendar/calendar.component.js.map +1 -1
- package/dist/collection/components/molecules/datepicker/datepicker.component.js +31 -17
- package/dist/collection/components/molecules/datepicker/datepicker.component.js.map +1 -1
- package/dist/components/{p-DyYAbzNn.js → p-CLnjjZGE.js} +16 -13
- package/dist/components/p-CLnjjZGE.js.map +1 -0
- package/dist/components/p-calendar.js +1 -1
- package/dist/components/p-datepicker.js +23 -14
- package/dist/components/p-datepicker.js.map +1 -1
- package/dist/components/p-table-column.js +5 -0
- package/dist/components/p-table-column.js.map +1 -1
- package/dist/esm/{index-EKSDxqjG.js → index-BYMwCs48.js} +139 -3
- package/dist/esm/index-BYMwCs48.js.map +1 -0
- package/dist/esm/loader.js +1 -1
- package/dist/esm/p-calendar.entry.js +14 -147
- package/dist/esm/p-calendar.entry.js.map +1 -1
- package/dist/esm/p-datepicker.entry.js +23 -14
- package/dist/esm/p-datepicker.entry.js.map +1 -1
- package/dist/esm/p-table-column.entry.js +4 -0
- package/dist/esm/p-table-column.entry.js.map +1 -1
- package/dist/esm/paperless.js +1 -1
- package/dist/index.html +1 -1
- package/dist/paperless/p-481a8ecd.entry.js +2 -0
- package/dist/paperless/p-481a8ecd.entry.js.map +1 -0
- package/dist/paperless/p-6aa5fec2.entry.js +2 -0
- package/dist/paperless/p-6aa5fec2.entry.js.map +1 -0
- package/dist/paperless/p-BYMwCs48.js +2 -0
- package/dist/paperless/p-BYMwCs48.js.map +1 -0
- package/dist/paperless/p-ab66da44.entry.js +2 -0
- package/dist/paperless/p-ab66da44.entry.js.map +1 -0
- package/dist/paperless/p-calendar.entry.esm.js.map +1 -1
- package/dist/paperless/p-datepicker.entry.esm.js.map +1 -1
- package/dist/paperless/p-table-column.entry.esm.js.map +1 -1
- package/dist/paperless/paperless.esm.js +1 -1
- package/dist/sw.js +1 -1
- package/dist/sw.js.map +1 -1
- package/dist/types/components/helpers/table/column/table-column.component.d.ts +4 -0
- package/dist/types/components/molecules/calendar/calendar.component.d.ts +2 -2
- package/dist/types/components/molecules/datepicker/datepicker.component.d.ts +5 -4
- package/dist/types/components.d.ts +16 -8
- package/package.json +1 -1
- package/dist/build/p-967f355d.entry.js +0 -2
- package/dist/build/p-967f355d.entry.js.map +0 -1
- package/dist/build/p-EKSDxqjG.js +0 -2
- package/dist/build/p-EKSDxqjG.js.map +0 -1
- package/dist/build/p-c8c51618.entry.js +0 -2
- package/dist/build/p-c8c51618.entry.js.map +0 -1
- package/dist/build/p-e55045a4.entry.js +0 -2
- package/dist/build/p-e55045a4.entry.js.map +0 -1
- package/dist/cjs/index-Dt9qqH1T.js.map +0 -1
- package/dist/components/p-DyYAbzNn.js.map +0 -1
- package/dist/esm/index-EKSDxqjG.js.map +0 -1
- package/dist/paperless/p-967f355d.entry.js +0 -2
- package/dist/paperless/p-967f355d.entry.js.map +0 -1
- package/dist/paperless/p-EKSDxqjG.js +0 -2
- package/dist/paperless/p-EKSDxqjG.js.map +0 -1
- package/dist/paperless/p-c8c51618.entry.js +0 -2
- package/dist/paperless/p-c8c51618.entry.js.map +0 -1
- package/dist/paperless/p-e55045a4.entry.js +0 -2
- package/dist/paperless/p-e55045a4.entry.js.map +0 -1
|
@@ -4,6 +4,9 @@ import { childOf, isMobileBrowser } from "../../../utils";
|
|
|
4
4
|
import { asBoolean } from "../../../utils/as-boolean";
|
|
5
5
|
import { state } from "../../../state";
|
|
6
6
|
import { enUS, nl } from "date-fns/locale";
|
|
7
|
+
import { addYears } from "date-fns";
|
|
8
|
+
import { getYear } from "date-fns";
|
|
9
|
+
import { setYear } from "date-fns";
|
|
7
10
|
export class Datepicker {
|
|
8
11
|
/**
|
|
9
12
|
* The placeholder of the input
|
|
@@ -28,11 +31,11 @@ export class Datepicker {
|
|
|
28
31
|
/**
|
|
29
32
|
* Min date
|
|
30
33
|
*/
|
|
31
|
-
minDate;
|
|
34
|
+
minDate = null;
|
|
32
35
|
/**
|
|
33
36
|
* Max date
|
|
34
37
|
*/
|
|
35
|
-
maxDate;
|
|
38
|
+
maxDate = null;
|
|
36
39
|
/**
|
|
37
40
|
* Wether to disable the weekends
|
|
38
41
|
*/
|
|
@@ -135,7 +138,10 @@ export class Datepicker {
|
|
|
135
138
|
this._setValue(value);
|
|
136
139
|
}
|
|
137
140
|
parseMinDate(minDate) {
|
|
138
|
-
|
|
141
|
+
if (minDate === null || minDate === '') {
|
|
142
|
+
this.minDate = new Date(1970, 0, 1);
|
|
143
|
+
return;
|
|
144
|
+
}
|
|
139
145
|
if (typeof minDate === 'string') {
|
|
140
146
|
minDate = new Date(minDate);
|
|
141
147
|
}
|
|
@@ -148,6 +154,10 @@ export class Datepicker {
|
|
|
148
154
|
}
|
|
149
155
|
}
|
|
150
156
|
parseMaxDate(maxDate) {
|
|
157
|
+
if (maxDate === null || maxDate === '') {
|
|
158
|
+
this.maxDate = this._getAutomaticMax();
|
|
159
|
+
return;
|
|
160
|
+
}
|
|
151
161
|
if (typeof maxDate === 'string') {
|
|
152
162
|
maxDate = new Date(maxDate);
|
|
153
163
|
}
|
|
@@ -192,12 +202,8 @@ export class Datepicker {
|
|
|
192
202
|
if (this.disabledDates) {
|
|
193
203
|
this.parseDisabledDates(this.disabledDates);
|
|
194
204
|
}
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
}
|
|
198
|
-
if (this.maxDate) {
|
|
199
|
-
this.parseMaxDate(this.maxDate);
|
|
200
|
-
}
|
|
205
|
+
this.parseMinDate(this.minDate);
|
|
206
|
+
this.parseMaxDate(this.maxDate);
|
|
201
207
|
if (this.mode !== 'day' && this.format === this._defaultFormats['day']) {
|
|
202
208
|
this.format = this._defaultFormats[this.mode];
|
|
203
209
|
}
|
|
@@ -205,16 +211,16 @@ export class Datepicker {
|
|
|
205
211
|
this.parseValue(this.value);
|
|
206
212
|
}
|
|
207
213
|
render() {
|
|
208
|
-
return (h("p-dropdown", { key: '
|
|
214
|
+
return (h("p-dropdown", { key: 'f958a8b84161a153a41c6e85a76b77d32a20512d', allowOverflow: true, strategy: this.strategy, placement: this.placement, disableTriggerClick: true, applyMaxWidth: false, applyFullWidth: false, insideClick: true, show: this._showDropdown, isDatepicker: true }, h("p-field", { key: 'c08c35d9c1d96f1ae557f46639d8581d0b590002', slot: 'trigger', icon: this.hideIconWhenFilled && !!this._value ? null : 'calendar-multi', iconPosition: 'start', size: this.size, prefix: this.prefix, label: this.label, loading: this.loading, helper: this.helper, required: asBoolean(this.required), showOptional: asBoolean(this.showOptional), error: this.error, forceShowTooltip: !!this.error?.length && !this._showDropdown, autoShowError: false, disabled: asBoolean(this.disabled), focused: this._showDropdown, value: this._getFormattedDate(), placeholder: this.placeholder, onFocus: () => this._onFocus(), onBlur: () => this._onBlur(), onValueChange: ev => this._onValueChange(ev.detail), onInputRefChange: ev => (this._inputRef = ev.detail) }), this.enableNativePicker && this._isMobileBrowser && (h("input", { key: 'f551d9716890a31f4e5956370e4fac08fd8a2bca', slot: 'trigger', type: this.mode === 'day' ? 'date' : 'month', class: 'pointer-events-none absolute left-0 top-0 z-[-10] overflow-hidden opacity-0', onInput: ev => this._onNativeInput(ev), ref: ref => (this._dateInputRef = ref), value: this._value &&
|
|
209
215
|
format(this._value, 'yyyy-MM-dd', {
|
|
210
216
|
locale: state.locale === 'nl' ? nl : enUS,
|
|
211
|
-
}), min: this.
|
|
212
|
-
format(new Date(this.
|
|
217
|
+
}), min: this._minDate &&
|
|
218
|
+
format(new Date(this._minDate), 'yyyy-MM-dd', {
|
|
213
219
|
locale: state.locale === 'nl' ? nl : enUS,
|
|
214
220
|
}), max: this.maxDate &&
|
|
215
221
|
format(new Date(this.maxDate), 'yyyy-MM-dd', {
|
|
216
222
|
locale: state.locale === 'nl' ? nl : enUS,
|
|
217
|
-
}) })), h("div", { key: '
|
|
223
|
+
}) })), h("div", { key: 'b1037b81d561397c3b748502cdd5e85dbaec3a48', slot: 'items' }, h("p-calendar", { key: '35ebe73bd302d35d582a3c65135f1a08f7e05f8e', variant: 'embedded', value: this._value, onValueChange: ({ detail }) => (this.value = detail), preselectToday: this.preselectToday, disabledDates: this.disabledDates, minDate: this.minDate, maxDate: this.maxDate, disableWeekends: this.disableWeekends, enableToday: this.enableToday, todayText: this.todayText, mode: this.mode }))));
|
|
218
224
|
}
|
|
219
225
|
documentClickHandler({ target }) {
|
|
220
226
|
if (!this._showDropdown || childOf(target, this._el)) {
|
|
@@ -340,6 +346,12 @@ export class Datepicker {
|
|
|
340
346
|
locale: state.locale === 'nl' ? nl : enUS,
|
|
341
347
|
});
|
|
342
348
|
}
|
|
349
|
+
_getAutomaticMax() {
|
|
350
|
+
const date = addYears(new Date(), 50);
|
|
351
|
+
let year = getYear(date);
|
|
352
|
+
year = Math.ceil(year / 10) * 10;
|
|
353
|
+
return setYear(date, year);
|
|
354
|
+
}
|
|
343
355
|
static get is() { return "p-datepicker"; }
|
|
344
356
|
static get formAssociated() { return true; }
|
|
345
357
|
static get originalStyleUrls() {
|
|
@@ -470,7 +482,7 @@ export class Datepicker {
|
|
|
470
482
|
"attribute": "min-date",
|
|
471
483
|
"mutable": false,
|
|
472
484
|
"complexType": {
|
|
473
|
-
"original": "Date | string",
|
|
485
|
+
"original": "Date | string | null",
|
|
474
486
|
"resolved": "Date | string",
|
|
475
487
|
"references": {
|
|
476
488
|
"Date": {
|
|
@@ -487,14 +499,15 @@ export class Datepicker {
|
|
|
487
499
|
},
|
|
488
500
|
"getter": false,
|
|
489
501
|
"setter": false,
|
|
490
|
-
"reflect": false
|
|
502
|
+
"reflect": false,
|
|
503
|
+
"defaultValue": "null"
|
|
491
504
|
},
|
|
492
505
|
"maxDate": {
|
|
493
506
|
"type": "string",
|
|
494
507
|
"attribute": "max-date",
|
|
495
508
|
"mutable": false,
|
|
496
509
|
"complexType": {
|
|
497
|
-
"original": "Date | string",
|
|
510
|
+
"original": "Date | string | null",
|
|
498
511
|
"resolved": "Date | string",
|
|
499
512
|
"references": {
|
|
500
513
|
"Date": {
|
|
@@ -511,7 +524,8 @@ export class Datepicker {
|
|
|
511
524
|
},
|
|
512
525
|
"getter": false,
|
|
513
526
|
"setter": false,
|
|
514
|
-
"reflect": false
|
|
527
|
+
"reflect": false,
|
|
528
|
+
"defaultValue": "null"
|
|
515
529
|
},
|
|
516
530
|
"disableWeekends": {
|
|
517
531
|
"type": "boolean",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"datepicker.component.js","sourceRoot":"","sources":["../../../../src/components/molecules/datepicker/datepicker.component.tsx"],"names":[],"mappings":"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E,IAAI,CAAC,MAAM,EAAE;YACvC,MAAM,EAAE,KAAK,CAAC,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI;SACzC,CAAC,CAAC;IACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACD","sourcesContent":["import { Placement, Strategy } from '@floating-ui/dom';\nimport {\n\tAttachInternals,\n\tComponent,\n\tElement,\n\tEvent,\n\tEventEmitter,\n\th,\n\tListen,\n\tProp,\n\tState,\n\tWatch,\n} from '@stencil/core';\nimport {\n\tformat,\n\tisAfter,\n\tisBefore,\n\tisSameDay,\n\tisValid,\n\tisWeekend,\n\tparse,\n\tstartOfDay,\n\tstartOfMonth,\n\tstartOfYear,\n} from 'date-fns';\nimport { childOf, isMobileBrowser } from '../../../utils';\nimport { asBoolean } from '../../../utils/as-boolean';\nimport { state } from '../../../state';\nimport { enUS, nl } from 'date-fns/locale';\n\n@Component({\n\ttag: 'p-datepicker',\n\tstyleUrl: 'datepicker.component.css',\n\tshadow: false,\n\tformAssociated: true,\n})\nexport class Datepicker {\n\t/**\n\t * The placeholder of the input\n\t */\n\t@Prop() placeholder: string;\n\n\t/**\n\t * The current value\n\t */\n\t@Prop() value: Date | string | null | undefined;\n\n\t/**\n\t * Wethter to automatically preselect today\n\t */\n\t@Prop() preselectToday: boolean = false;\n\n\t/**\n\t * Enable native picker for mobile devices\n\t */\n\t@Prop() enableNativePicker: boolean = true;\n\n\t/**\n\t * Disabled dates\n\t */\n\t@Prop() disabledDates?: Array<Date | string> | string;\n\n\t/**\n\t * Min date\n\t */\n\t@Prop() minDate?: Date | string;\n\n\t/**\n\t * Max date\n\t */\n\t@Prop() maxDate?: Date | string;\n\n\t/**\n\t * Wether to disable the weekends\n\t */\n\t@Prop() disableWeekends: boolean = false;\n\n\t/**\n\t * Wether to enable the today button\n\t */\n\t@Prop() enableToday: boolean = true;\n\n\t/**\n\t * The text to display on the today tooltip\n\t */\n\t@Prop() todayText: string = 'today';\n\n\t/**\n\t * The mode of the datepicker\n\t */\n\t@Prop() mode: 'year' | 'month' | 'day' = 'day';\n\n\t/**\n\t * Event when the value changes\n\t */\n\t@Event({\n\t\tbubbles: false,\n\t})\n\tvalueChange: EventEmitter<any>;\n\n\t/**\n\t * The display & parse format to use\n\t */\n\t@Prop() format: string = 'dd-MM-yyyy';\n\n\t/**\n\t * Hides the icon when filled\n\t */\n\t@Prop() hideIconWhenFilled: boolean = false;\n\n\t/**\n\t * The size of the input group used by the datepicker\n\t */\n\t@Prop() size: 'sm' | 'base' = 'base';\n\n\t/**\n\t * The prefix of the input group used by the datepicker\n\t */\n\t@Prop() prefix: string;\n\n\t/**\n\t * The label of the input group used by the datepicker\n\t */\n\t@Prop() label: string;\n\n\t/**\n\t * Wether the field is loading\n\t */\n\t@Prop() loading: boolean = false;\n\n\t/**\n\t * The helper of the input group used by the datepicker\n\t */\n\t@Prop() helper: string;\n\n\t/**\n\t * Wether the field is required\n\t */\n\t@Prop({ reflect: true }) required: boolean;\n\n\t/**\n\t * Wether to show optional when not required\n\t */\n\t@Prop({ reflect: true }) showOptional: boolean = true;\n\n\t/**\n\t * The helper of the input group used by the datepicker\n\t */\n\t@Prop({ reflect: true }) error: string;\n\n\t/**\n\t * Wether the input group is disabled used by the datepicker\n\t */\n\t@Prop({ reflect: true }) disabled: boolean = false;\n\n\t/**\n\t * The strategy of the dropdown placement\n\t */\n\t@Prop() strategy: Strategy = 'absolute';\n\n\t/**\n\t * The placement of the dropdown\n\t */\n\t@Prop({ reflect: true }) placement: Placement = 'bottom-start';\n\n\t/**\n\t * The host element\n\t */\n\t@Element() private _el: HTMLElement;\n\n\t@State() private _showDropdown: any = false;\n\t@State() private _value: Date;\n\t@State() private _minDate: Date;\n\t@State() private _maxDate: Date;\n\t@State() private _disabledDates: Date[] = [];\n\t@State() private _isMobileBrowser: boolean = false;\n\n\t@AttachInternals() _internals: ElementInternals;\n\n\tprivate _onInputTimeout: NodeJS.Timeout;\n\tprivate _inputRef: HTMLInputElement | HTMLTextAreaElement;\n\tprivate _dateInputRef: HTMLInputElement;\n\n\tprivate _defaultFormats = {\n\t\tyear: 'yyyy',\n\t\tmonth: 'LLLL, yyyy',\n\t\tday: 'dd-MM-yyyy',\n\t\tdayNoDashes: 'ddMMyyyy',\n\t};\n\n\t@Watch('value')\n\tprotected parseValue(value: string | Date) {\n\t\tif (!value && this.preselectToday) {\n\t\t\tvalue = new Date();\n\t\t}\n\n\t\tif (typeof value === 'string') {\n\t\t\tvalue = new Date(value);\n\t\t}\n\n\t\tthis._setValue(value);\n\t}\n\n\t@Watch('minDate')\n\tprotected parseMinDate(minDate: string | Date) {\n\t\tconsole.log('picker minDate', minDate);\n\t\tif (typeof minDate === 'string') {\n\t\t\tminDate = new Date(minDate);\n\t\t}\n\n\t\tif (!isValid(minDate)) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._minDate = minDate;\n\n\t\tif (isBefore(this._value, this._minDate)) {\n\t\t\tthis._setValue(null);\n\t\t}\n\t}\n\n\t@Watch('maxDate')\n\tprotected parseMaxDate(maxDate: string | Date) {\n\t\tif (typeof maxDate === 'string') {\n\t\t\tmaxDate = new Date(maxDate);\n\t\t}\n\n\t\tif (!isValid(maxDate)) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._maxDate = maxDate;\n\n\t\tif (isAfter(this._value, this._maxDate)) {\n\t\t\tthis._setValue(null);\n\t\t}\n\t}\n\n\t@Watch('disabledDates')\n\tprotected parseDisabledDates(disabledDates: Array<string | Date> | string) {\n\t\tif (typeof disabledDates === 'string') {\n\t\t\tdisabledDates = JSON.parse(disabledDates);\n\t\t}\n\n\t\tif (!disabledDates || !Array.isArray(disabledDates)) {\n\t\t\treturn;\n\t\t}\n\n\t\t// normalize all to date\n\t\tthis._disabledDates = disabledDates\n\t\t\t.map(date => {\n\t\t\t\tif (typeof date === 'string') {\n\t\t\t\t\treturn new Date(date);\n\t\t\t\t}\n\n\t\t\t\treturn date;\n\t\t\t})\n\t\t\t.filter(date => isValid(date));\n\n\t\tif (this._isDisabledDay(this._value)) {\n\t\t\tthis._setValue(null);\n\t\t}\n\t}\n\n\tformResetCallback() {\n\t\tthis._setValue(null);\n\t}\n\n\tformDisabledCallback(disabled: boolean) {\n\t\tif (!this._internals.form) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.disabled = disabled;\n\t}\n\n\tcomponentWillLoad() {\n\t\tif (this.disabledDates) {\n\t\t\tthis.parseDisabledDates(this.disabledDates);\n\t\t}\n\n\t\tif (this.minDate) {\n\t\t\tthis.parseMinDate(this.minDate);\n\t\t}\n\n\t\tif (this.maxDate) {\n\t\t\tthis.parseMaxDate(this.maxDate);\n\t\t}\n\n\t\tif (this.mode !== 'day' && this.format === this._defaultFormats['day']) {\n\t\t\tthis.format = this._defaultFormats[this.mode];\n\t\t}\n\n\t\tthis._isMobileBrowser = isMobileBrowser();\n\n\t\tthis.parseValue(this.value);\n\t}\n\n\trender() {\n\t\treturn (\n\t\t\t<p-dropdown\n\t\t\t\tallowOverflow={true}\n\t\t\t\tstrategy={this.strategy}\n\t\t\t\tplacement={this.placement}\n\t\t\t\tdisableTriggerClick={true}\n\t\t\t\tapplyMaxWidth={false}\n\t\t\t\tapplyFullWidth={false}\n\t\t\t\tinsideClick={true}\n\t\t\t\tshow={this._showDropdown}\n\t\t\t\tisDatepicker={true}\n\t\t\t>\n\t\t\t\t<p-field\n\t\t\t\t\tslot='trigger'\n\t\t\t\t\ticon={\n\t\t\t\t\t\tthis.hideIconWhenFilled && !!this._value ? null : 'calendar-multi'\n\t\t\t\t\t}\n\t\t\t\t\ticonPosition='start'\n\t\t\t\t\tsize={this.size}\n\t\t\t\t\tprefix={this.prefix}\n\t\t\t\t\tlabel={this.label}\n\t\t\t\t\tloading={this.loading}\n\t\t\t\t\thelper={this.helper}\n\t\t\t\t\trequired={asBoolean(this.required)}\n\t\t\t\t\tshowOptional={asBoolean(this.showOptional)}\n\t\t\t\t\terror={this.error}\n\t\t\t\t\tforceShowTooltip={!!this.error?.length && !this._showDropdown}\n\t\t\t\t\tautoShowError={false}\n\t\t\t\t\tdisabled={asBoolean(this.disabled)}\n\t\t\t\t\tfocused={this._showDropdown}\n\t\t\t\t\tvalue={this._getFormattedDate()}\n\t\t\t\t\tplaceholder={this.placeholder}\n\t\t\t\t\tonFocus={() => this._onFocus()}\n\t\t\t\t\tonBlur={() => this._onBlur()}\n\t\t\t\t\tonValueChange={ev => this._onValueChange(ev.detail as string)}\n\t\t\t\t\tonInputRefChange={ev => (this._inputRef = ev.detail)}\n\t\t\t\t></p-field>\n\n\t\t\t\t{this.enableNativePicker && this._isMobileBrowser && (\n\t\t\t\t\t<input\n\t\t\t\t\t\tslot='trigger'\n\t\t\t\t\t\ttype={this.mode === 'day' ? 'date' : 'month'}\n\t\t\t\t\t\tclass='pointer-events-none absolute left-0 top-0 z-[-10] overflow-hidden opacity-0'\n\t\t\t\t\t\tonInput={ev => this._onNativeInput(ev)}\n\t\t\t\t\t\tref={ref => (this._dateInputRef = ref)}\n\t\t\t\t\t\tvalue={\n\t\t\t\t\t\t\tthis._value &&\n\t\t\t\t\t\t\tformat(this._value, 'yyyy-MM-dd', {\n\t\t\t\t\t\t\t\tlocale: state.locale === 'nl' ? nl : enUS,\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t}\n\t\t\t\t\t\tmin={\n\t\t\t\t\t\t\tthis.minDate &&\n\t\t\t\t\t\t\tformat(new Date(this.minDate), 'yyyy-MM-dd', {\n\t\t\t\t\t\t\t\tlocale: state.locale === 'nl' ? nl : enUS,\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t}\n\t\t\t\t\t\tmax={\n\t\t\t\t\t\t\tthis.maxDate &&\n\t\t\t\t\t\t\tformat(new Date(this.maxDate), 'yyyy-MM-dd', {\n\t\t\t\t\t\t\t\tlocale: state.locale === 'nl' ? nl : enUS,\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t)}\n\t\t\t\t<div slot='items'>\n\t\t\t\t\t<p-calendar\n\t\t\t\t\t\tvariant='embedded'\n\t\t\t\t\t\tvalue={this._value}\n\t\t\t\t\t\tonValueChange={({ detail }) => (this.value = detail)}\n\t\t\t\t\t\tpreselectToday={this.preselectToday}\n\t\t\t\t\t\tdisabledDates={this.disabledDates}\n\t\t\t\t\t\tminDate={this.minDate}\n\t\t\t\t\t\tmaxDate={this.maxDate}\n\t\t\t\t\t\tdisableWeekends={this.disableWeekends}\n\t\t\t\t\t\tenableToday={this.enableToday}\n\t\t\t\t\t\ttodayText={this.todayText}\n\t\t\t\t\t\tmode={this.mode}\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t</p-dropdown>\n\t\t);\n\t}\n\n\t@Listen('click', { target: 'document', capture: true })\n\tprotected documentClickHandler({ target }) {\n\t\tif (!this._showDropdown || childOf(target, this._el)) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._showDropdown = false;\n\t}\n\n\tprivate _onFocus() {\n\t\tif (this._isMobileBrowser && this._dateInputRef) {\n\t\t\tthis._dateInputRef.focus();\n\t\t\tthis._dateInputRef.showPicker();\n\t\t\tthis._inputRef.blur();\n\t\t\treturn;\n\t\t}\n\n\t\tthis._showDropdown = true;\n\t}\n\n\tprivate _onBlur(parseFormat = this.format) {\n\t\tif (this._isMobileBrowser && this._dateInputRef) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst target = this._inputRef;\n\n\t\tif (target.value === null) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst value = parse(target.value, parseFormat, new Date());\n\n\t\tif (value === this._value) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst valid = isValid(value);\n\t\tif (!valid && parseFormat === this.format && this.mode === 'day') {\n\t\t\treturn this._onBlur(this._defaultFormats['dayNoDashes']);\n\t\t}\n\n\t\tif (!valid || this._isDisabledDay(value)) {\n\t\t\ttarget.value = this._getFormattedDate();\n\t\t\treturn;\n\t\t}\n\n\t\tthis._setValue(value, false);\n\t}\n\n\tprivate _onValueChange(value: string, parseFormat = this.format) {\n\t\tif (this._onInputTimeout) {\n\t\t\tclearTimeout(this._onInputTimeout);\n\t\t\tthis._onInputTimeout = null;\n\t\t}\n\n\t\tthis._onInputTimeout = setTimeout(() => {\n\t\t\tif (value.length === 0) {\n\t\t\t\tif (this._value === null) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tthis._setValue(null);\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst parsedValue = parse(value, parseFormat, new Date());\n\n\t\t\tif (\n\t\t\t\t!isValid(parsedValue) ||\n\t\t\t\tformat(parsedValue, parseFormat, {\n\t\t\t\t\tlocale: state.locale === 'nl' ? nl : enUS,\n\t\t\t\t}) !== value\n\t\t\t) {\n\t\t\t\tif (this.mode === 'day') {\n\t\t\t\t\tthis._onValueChange(value, this._defaultFormats['dayNoDashes']);\n\t\t\t\t}\n\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tthis._setValue(parsedValue, false);\n\t\t}, 300);\n\t}\n\n\tprivate _onNativeInput(ev) {\n\t\tif (!ev.target) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (this._onInputTimeout) {\n\t\t\tclearTimeout(this._onInputTimeout);\n\t\t\tthis._onInputTimeout = null;\n\t\t}\n\n\t\tthis._onInputTimeout = setTimeout(() => {\n\t\t\tthis._setValue(\n\t\t\t\tev.target.value === '' ? null : new Date(ev.target.value),\n\t\t\t\tfalse\n\t\t\t);\n\t\t});\n\t}\n\n\tprivate _setValue(value: Date | null, hideDropdown = true) {\n\t\tif (value === null) {\n\t\t\tthis._value = null;\n\t\t\tthis.valueChange.emit(null);\n\t\t\treturn;\n\t\t}\n\n\t\tif (!isValid(value)) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (this._isDisabledDay(value)) {\n\t\t\tif (!!this._dateInputRef?.value) {\n\t\t\t\tthis._dateInputRef.value = this._value\n\t\t\t\t\t? format(this._value, 'yyyy-MM-dd', {\n\t\t\t\t\t\t\tlocale: state.locale === 'nl' ? nl : enUS,\n\t\t\t\t\t })\n\t\t\t\t\t: null;\n\t\t\t}\n\n\t\t\treturn;\n\t\t}\n\n\t\tvalue =\n\t\t\tthis.mode === 'day'\n\t\t\t\t? startOfDay(value)\n\t\t\t\t: this.mode === 'month'\n\t\t\t\t? startOfMonth(value)\n\t\t\t\t: startOfYear(value);\n\t\tconst isSameValue = isSameDay(value, this._value);\n\n\t\tif (isSameValue) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (hideDropdown) {\n\t\t\tthis._showDropdown = false;\n\t\t}\n\n\t\tthis._value = value;\n\t\tthis.valueChange.emit(value);\n\t}\n\n\tprivate _isDisabledDay(day: Date) {\n\t\treturn (\n\t\t\t(this.disableWeekends && isWeekend(day)) ||\n\t\t\t(isBefore(day, this._minDate) && !isSameDay(day, this._minDate)) ||\n\t\t\t(isAfter(day, this._maxDate) && !isSameDay(day, this._maxDate)) ||\n\t\t\tthis._disabledDates.findIndex(date => isSameDay(date, day)) >= 0\n\t\t);\n\t}\n\n\tprivate _getFormattedDate() {\n\t\tif (!this._value) {\n\t\t\treturn '';\n\t\t}\n\n\t\treturn format(this._value, this.format, {\n\t\t\tlocale: state.locale === 'nl' ? nl : enUS,\n\t\t});\n\t}\n}\n"]}
|
|
1
|
+
{"version":3,"file":"datepicker.component.js","sourceRoot":"","sources":["../../../../src/components/molecules/datepicker/datepicker.component.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Placement, Strategy } from '@floating-ui/dom';\nimport {\n\tAttachInternals,\n\tComponent,\n\tElement,\n\tEvent,\n\tEventEmitter,\n\th,\n\tListen,\n\tProp,\n\tState,\n\tWatch,\n} from '@stencil/core';\nimport {\n\tformat,\n\tisAfter,\n\tisBefore,\n\tisSameDay,\n\tisValid,\n\tisWeekend,\n\tparse,\n\tstartOfDay,\n\tstartOfMonth,\n\tstartOfYear,\n} from 'date-fns';\nimport { childOf, isMobileBrowser } from '../../../utils';\nimport { asBoolean } from '../../../utils/as-boolean';\nimport { state } from '../../../state';\nimport { enUS, nl } from 'date-fns/locale';\nimport { addYears } from 'date-fns';\nimport { getYear } from 'date-fns';\nimport { setYear } from 'date-fns';\n\n@Component({\n\ttag: 'p-datepicker',\n\tstyleUrl: 'datepicker.component.css',\n\tshadow: false,\n\tformAssociated: true,\n})\nexport class Datepicker {\n\t/**\n\t * The placeholder of the input\n\t */\n\t@Prop() placeholder: string;\n\n\t/**\n\t * The current value\n\t */\n\t@Prop() value: Date | string | null | undefined;\n\n\t/**\n\t * Wethter to automatically preselect today\n\t */\n\t@Prop() preselectToday: boolean = false;\n\n\t/**\n\t * Enable native picker for mobile devices\n\t */\n\t@Prop() enableNativePicker: boolean = true;\n\n\t/**\n\t * Disabled dates\n\t */\n\t@Prop() disabledDates?: Array<Date | string> | string;\n\n\t/**\n\t * Min date\n\t */\n\t@Prop() minDate?: Date | string | null = null;\n\n\t/**\n\t * Max date\n\t */\n\t@Prop() maxDate?: Date | string | null = null;\n\n\t/**\n\t * Wether to disable the weekends\n\t */\n\t@Prop() disableWeekends: boolean = false;\n\n\t/**\n\t * Wether to enable the today button\n\t */\n\t@Prop() enableToday: boolean = true;\n\n\t/**\n\t * The text to display on the today tooltip\n\t */\n\t@Prop() todayText: string = 'today';\n\n\t/**\n\t * The mode of the datepicker\n\t */\n\t@Prop() mode: 'year' | 'month' | 'day' = 'day';\n\n\t/**\n\t * Event when the value changes\n\t */\n\t@Event({\n\t\tbubbles: false,\n\t})\n\tvalueChange: EventEmitter<any>;\n\n\t/**\n\t * The display & parse format to use\n\t */\n\t@Prop() format: string = 'dd-MM-yyyy';\n\n\t/**\n\t * Hides the icon when filled\n\t */\n\t@Prop() hideIconWhenFilled: boolean = false;\n\n\t/**\n\t * The size of the input group used by the datepicker\n\t */\n\t@Prop() size: 'sm' | 'base' = 'base';\n\n\t/**\n\t * The prefix of the input group used by the datepicker\n\t */\n\t@Prop() prefix: string;\n\n\t/**\n\t * The label of the input group used by the datepicker\n\t */\n\t@Prop() label: string;\n\n\t/**\n\t * Wether the field is loading\n\t */\n\t@Prop() loading: boolean = false;\n\n\t/**\n\t * The helper of the input group used by the datepicker\n\t */\n\t@Prop() helper: string;\n\n\t/**\n\t * Wether the field is required\n\t */\n\t@Prop({ reflect: true }) required: boolean;\n\n\t/**\n\t * Wether to show optional when not required\n\t */\n\t@Prop({ reflect: true }) showOptional: boolean = true;\n\n\t/**\n\t * The helper of the input group used by the datepicker\n\t */\n\t@Prop({ reflect: true }) error: string;\n\n\t/**\n\t * Wether the input group is disabled used by the datepicker\n\t */\n\t@Prop({ reflect: true }) disabled: boolean = false;\n\n\t/**\n\t * The strategy of the dropdown placement\n\t */\n\t@Prop() strategy: Strategy = 'absolute';\n\n\t/**\n\t * The placement of the dropdown\n\t */\n\t@Prop({ reflect: true }) placement: Placement = 'bottom-start';\n\n\t/**\n\t * The host element\n\t */\n\t@Element() private _el: HTMLElement;\n\n\t@State() private _showDropdown: any = false;\n\t@State() private _value: Date;\n\t@State() private _minDate: Date;\n\t@State() private _maxDate: Date;\n\t@State() private _disabledDates: Date[] = [];\n\t@State() private _isMobileBrowser: boolean = false;\n\n\t@AttachInternals() _internals: ElementInternals;\n\n\tprivate _onInputTimeout: NodeJS.Timeout;\n\tprivate _inputRef: HTMLInputElement | HTMLTextAreaElement;\n\tprivate _dateInputRef: HTMLInputElement;\n\n\tprivate _defaultFormats = {\n\t\tyear: 'yyyy',\n\t\tmonth: 'LLLL, yyyy',\n\t\tday: 'dd-MM-yyyy',\n\t\tdayNoDashes: 'ddMMyyyy',\n\t};\n\n\t@Watch('value')\n\tprotected parseValue(value: string | Date) {\n\t\tif (!value && this.preselectToday) {\n\t\t\tvalue = new Date();\n\t\t}\n\n\t\tif (typeof value === 'string') {\n\t\t\tvalue = new Date(value);\n\t\t}\n\n\t\tthis._setValue(value);\n\t}\n\n\t@Watch('minDate')\n\tprotected parseMinDate(minDate: string | Date | null) {\n\t\tif (minDate === null || minDate === '') {\n\t\t\tthis.minDate = new Date(1970, 0, 1);\n\t\t\treturn;\n\t\t}\n\n\t\tif (typeof minDate === 'string') {\n\t\t\tminDate = new Date(minDate);\n\t\t}\n\n\t\tif (!isValid(minDate)) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._minDate = minDate;\n\n\t\tif (isBefore(this._value, this._minDate)) {\n\t\t\tthis._setValue(null);\n\t\t}\n\t}\n\n\t@Watch('maxDate')\n\tprotected parseMaxDate(maxDate: string | Date | null) {\n\t\tif (maxDate === null || maxDate === '') {\n\t\t\tthis.maxDate = this._getAutomaticMax();\n\t\t\treturn;\n\t\t}\n\n\t\tif (typeof maxDate === 'string') {\n\t\t\tmaxDate = new Date(maxDate);\n\t\t}\n\n\t\tif (!isValid(maxDate)) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._maxDate = maxDate;\n\n\t\tif (isAfter(this._value, this._maxDate)) {\n\t\t\tthis._setValue(null);\n\t\t}\n\t}\n\n\t@Watch('disabledDates')\n\tprotected parseDisabledDates(disabledDates: Array<string | Date> | string) {\n\t\tif (typeof disabledDates === 'string') {\n\t\t\tdisabledDates = JSON.parse(disabledDates);\n\t\t}\n\n\t\tif (!disabledDates || !Array.isArray(disabledDates)) {\n\t\t\treturn;\n\t\t}\n\n\t\t// normalize all to date\n\t\tthis._disabledDates = disabledDates\n\t\t\t.map(date => {\n\t\t\t\tif (typeof date === 'string') {\n\t\t\t\t\treturn new Date(date);\n\t\t\t\t}\n\n\t\t\t\treturn date;\n\t\t\t})\n\t\t\t.filter(date => isValid(date));\n\n\t\tif (this._isDisabledDay(this._value)) {\n\t\t\tthis._setValue(null);\n\t\t}\n\t}\n\n\tformResetCallback() {\n\t\tthis._setValue(null);\n\t}\n\n\tformDisabledCallback(disabled: boolean) {\n\t\tif (!this._internals.form) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.disabled = disabled;\n\t}\n\n\tcomponentWillLoad() {\n\t\tif (this.disabledDates) {\n\t\t\tthis.parseDisabledDates(this.disabledDates);\n\t\t}\n\n\t\tthis.parseMinDate(this.minDate);\n\t\tthis.parseMaxDate(this.maxDate);\n\n\t\tif (this.mode !== 'day' && this.format === this._defaultFormats['day']) {\n\t\t\tthis.format = this._defaultFormats[this.mode];\n\t\t}\n\n\t\tthis._isMobileBrowser = isMobileBrowser();\n\n\t\tthis.parseValue(this.value);\n\t}\n\n\trender() {\n\t\treturn (\n\t\t\t<p-dropdown\n\t\t\t\tallowOverflow={true}\n\t\t\t\tstrategy={this.strategy}\n\t\t\t\tplacement={this.placement}\n\t\t\t\tdisableTriggerClick={true}\n\t\t\t\tapplyMaxWidth={false}\n\t\t\t\tapplyFullWidth={false}\n\t\t\t\tinsideClick={true}\n\t\t\t\tshow={this._showDropdown}\n\t\t\t\tisDatepicker={true}\n\t\t\t>\n\t\t\t\t<p-field\n\t\t\t\t\tslot='trigger'\n\t\t\t\t\ticon={\n\t\t\t\t\t\tthis.hideIconWhenFilled && !!this._value ? null : 'calendar-multi'\n\t\t\t\t\t}\n\t\t\t\t\ticonPosition='start'\n\t\t\t\t\tsize={this.size}\n\t\t\t\t\tprefix={this.prefix}\n\t\t\t\t\tlabel={this.label}\n\t\t\t\t\tloading={this.loading}\n\t\t\t\t\thelper={this.helper}\n\t\t\t\t\trequired={asBoolean(this.required)}\n\t\t\t\t\tshowOptional={asBoolean(this.showOptional)}\n\t\t\t\t\terror={this.error}\n\t\t\t\t\tforceShowTooltip={!!this.error?.length && !this._showDropdown}\n\t\t\t\t\tautoShowError={false}\n\t\t\t\t\tdisabled={asBoolean(this.disabled)}\n\t\t\t\t\tfocused={this._showDropdown}\n\t\t\t\t\tvalue={this._getFormattedDate()}\n\t\t\t\t\tplaceholder={this.placeholder}\n\t\t\t\t\tonFocus={() => this._onFocus()}\n\t\t\t\t\tonBlur={() => this._onBlur()}\n\t\t\t\t\tonValueChange={ev => this._onValueChange(ev.detail as string)}\n\t\t\t\t\tonInputRefChange={ev => (this._inputRef = ev.detail)}\n\t\t\t\t></p-field>\n\n\t\t\t\t{this.enableNativePicker && this._isMobileBrowser && (\n\t\t\t\t\t<input\n\t\t\t\t\t\tslot='trigger'\n\t\t\t\t\t\ttype={this.mode === 'day' ? 'date' : 'month'}\n\t\t\t\t\t\tclass='pointer-events-none absolute left-0 top-0 z-[-10] overflow-hidden opacity-0'\n\t\t\t\t\t\tonInput={ev => this._onNativeInput(ev)}\n\t\t\t\t\t\tref={ref => (this._dateInputRef = ref)}\n\t\t\t\t\t\tvalue={\n\t\t\t\t\t\t\tthis._value &&\n\t\t\t\t\t\t\tformat(this._value, 'yyyy-MM-dd', {\n\t\t\t\t\t\t\t\tlocale: state.locale === 'nl' ? nl : enUS,\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t}\n\t\t\t\t\t\tmin={\n\t\t\t\t\t\t\tthis._minDate &&\n\t\t\t\t\t\t\tformat(new Date(this._minDate), 'yyyy-MM-dd', {\n\t\t\t\t\t\t\t\tlocale: state.locale === 'nl' ? nl : enUS,\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t}\n\t\t\t\t\t\tmax={\n\t\t\t\t\t\t\tthis.maxDate &&\n\t\t\t\t\t\t\tformat(new Date(this.maxDate), 'yyyy-MM-dd', {\n\t\t\t\t\t\t\t\tlocale: state.locale === 'nl' ? nl : enUS,\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t)}\n\t\t\t\t<div slot='items'>\n\t\t\t\t\t<p-calendar\n\t\t\t\t\t\tvariant='embedded'\n\t\t\t\t\t\tvalue={this._value}\n\t\t\t\t\t\tonValueChange={({ detail }) => (this.value = detail)}\n\t\t\t\t\t\tpreselectToday={this.preselectToday}\n\t\t\t\t\t\tdisabledDates={this.disabledDates}\n\t\t\t\t\t\tminDate={this.minDate}\n\t\t\t\t\t\tmaxDate={this.maxDate}\n\t\t\t\t\t\tdisableWeekends={this.disableWeekends}\n\t\t\t\t\t\tenableToday={this.enableToday}\n\t\t\t\t\t\ttodayText={this.todayText}\n\t\t\t\t\t\tmode={this.mode}\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t</p-dropdown>\n\t\t);\n\t}\n\n\t@Listen('click', { target: 'document', capture: true })\n\tprotected documentClickHandler({ target }) {\n\t\tif (!this._showDropdown || childOf(target, this._el)) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._showDropdown = false;\n\t}\n\n\tprivate _onFocus() {\n\t\tif (this._isMobileBrowser && this._dateInputRef) {\n\t\t\tthis._dateInputRef.focus();\n\t\t\tthis._dateInputRef.showPicker();\n\t\t\tthis._inputRef.blur();\n\t\t\treturn;\n\t\t}\n\n\t\tthis._showDropdown = true;\n\t}\n\n\tprivate _onBlur(parseFormat = this.format) {\n\t\tif (this._isMobileBrowser && this._dateInputRef) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst target = this._inputRef;\n\n\t\tif (target.value === null) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst value = parse(target.value, parseFormat, new Date());\n\n\t\tif (value === this._value) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst valid = isValid(value);\n\t\tif (!valid && parseFormat === this.format && this.mode === 'day') {\n\t\t\treturn this._onBlur(this._defaultFormats['dayNoDashes']);\n\t\t}\n\n\t\tif (!valid || this._isDisabledDay(value)) {\n\t\t\ttarget.value = this._getFormattedDate();\n\t\t\treturn;\n\t\t}\n\n\t\tthis._setValue(value, false);\n\t}\n\n\tprivate _onValueChange(value: string, parseFormat = this.format) {\n\t\tif (this._onInputTimeout) {\n\t\t\tclearTimeout(this._onInputTimeout);\n\t\t\tthis._onInputTimeout = null;\n\t\t}\n\n\t\tthis._onInputTimeout = setTimeout(() => {\n\t\t\tif (value.length === 0) {\n\t\t\t\tif (this._value === null) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tthis._setValue(null);\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst parsedValue = parse(value, parseFormat, new Date());\n\n\t\t\tif (\n\t\t\t\t!isValid(parsedValue) ||\n\t\t\t\tformat(parsedValue, parseFormat, {\n\t\t\t\t\tlocale: state.locale === 'nl' ? nl : enUS,\n\t\t\t\t}) !== value\n\t\t\t) {\n\t\t\t\tif (this.mode === 'day') {\n\t\t\t\t\tthis._onValueChange(value, this._defaultFormats['dayNoDashes']);\n\t\t\t\t}\n\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tthis._setValue(parsedValue, false);\n\t\t}, 300);\n\t}\n\n\tprivate _onNativeInput(ev) {\n\t\tif (!ev.target) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (this._onInputTimeout) {\n\t\t\tclearTimeout(this._onInputTimeout);\n\t\t\tthis._onInputTimeout = null;\n\t\t}\n\n\t\tthis._onInputTimeout = setTimeout(() => {\n\t\t\tthis._setValue(\n\t\t\t\tev.target.value === '' ? null : new Date(ev.target.value),\n\t\t\t\tfalse\n\t\t\t);\n\t\t});\n\t}\n\n\tprivate _setValue(value: Date | null, hideDropdown = true) {\n\t\tif (value === null) {\n\t\t\tthis._value = null;\n\t\t\tthis.valueChange.emit(null);\n\t\t\treturn;\n\t\t}\n\n\t\tif (!isValid(value)) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (this._isDisabledDay(value)) {\n\t\t\tif (!!this._dateInputRef?.value) {\n\t\t\t\tthis._dateInputRef.value = this._value\n\t\t\t\t\t? format(this._value, 'yyyy-MM-dd', {\n\t\t\t\t\t\t\tlocale: state.locale === 'nl' ? nl : enUS,\n\t\t\t\t\t })\n\t\t\t\t\t: null;\n\t\t\t}\n\n\t\t\treturn;\n\t\t}\n\n\t\tvalue =\n\t\t\tthis.mode === 'day'\n\t\t\t\t? startOfDay(value)\n\t\t\t\t: this.mode === 'month'\n\t\t\t\t? startOfMonth(value)\n\t\t\t\t: startOfYear(value);\n\t\tconst isSameValue = isSameDay(value, this._value);\n\n\t\tif (isSameValue) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (hideDropdown) {\n\t\t\tthis._showDropdown = false;\n\t\t}\n\n\t\tthis._value = value;\n\t\tthis.valueChange.emit(value);\n\t}\n\n\tprivate _isDisabledDay(day: Date) {\n\t\treturn (\n\t\t\t(this.disableWeekends && isWeekend(day)) ||\n\t\t\t(isBefore(day, this._minDate) && !isSameDay(day, this._minDate)) ||\n\t\t\t(isAfter(day, this._maxDate) && !isSameDay(day, this._maxDate)) ||\n\t\t\tthis._disabledDates.findIndex(date => isSameDay(date, day)) >= 0\n\t\t);\n\t}\n\n\tprivate _getFormattedDate() {\n\t\tif (!this._value) {\n\t\t\treturn '';\n\t\t}\n\n\t\treturn format(this._value, this.format, {\n\t\t\tlocale: state.locale === 'nl' ? nl : enUS,\n\t\t});\n\t}\n\n\tprivate _getAutomaticMax() {\n\t\tconst date = addYears(new Date(), 50);\n\n\t\tlet year = getYear(date);\n\t\tyear = Math.ceil(year / 10) * 10;\n\n\t\treturn setYear(date, year);\n\t}\n}\n"]}
|
|
@@ -3107,11 +3107,11 @@ const Calendar = /*@__PURE__*/ proxyCustomElement(class Calendar extends H {
|
|
|
3107
3107
|
/**
|
|
3108
3108
|
* Min date
|
|
3109
3109
|
*/
|
|
3110
|
-
minDate =
|
|
3110
|
+
minDate = null;
|
|
3111
3111
|
/**
|
|
3112
3112
|
* Max date
|
|
3113
3113
|
*/
|
|
3114
|
-
maxDate =
|
|
3114
|
+
maxDate = null;
|
|
3115
3115
|
/**
|
|
3116
3116
|
* Wether to disable the weekends
|
|
3117
3117
|
*/
|
|
@@ -3146,12 +3146,8 @@ const Calendar = /*@__PURE__*/ proxyCustomElement(class Calendar extends H {
|
|
|
3146
3146
|
if (this.disabledDates) {
|
|
3147
3147
|
this._parseDisabledDates(this.disabledDates);
|
|
3148
3148
|
}
|
|
3149
|
-
|
|
3150
|
-
|
|
3151
|
-
}
|
|
3152
|
-
if (this.maxDate) {
|
|
3153
|
-
this._parseMaxDate(this.maxDate);
|
|
3154
|
-
}
|
|
3149
|
+
this._parseMinDate(this.minDate);
|
|
3150
|
+
this._parseMaxDate(this.maxDate);
|
|
3155
3151
|
this._parseValue(this.value);
|
|
3156
3152
|
if (this._value) {
|
|
3157
3153
|
this._viewDate = this._value;
|
|
@@ -3185,7 +3181,10 @@ const Calendar = /*@__PURE__*/ proxyCustomElement(class Calendar extends H {
|
|
|
3185
3181
|
this._setValue(value);
|
|
3186
3182
|
}
|
|
3187
3183
|
_parseMinDate(minDate) {
|
|
3188
|
-
|
|
3184
|
+
if (minDate === null || minDate === '') {
|
|
3185
|
+
this.minDate = new Date(1970, 0, 1);
|
|
3186
|
+
return;
|
|
3187
|
+
}
|
|
3189
3188
|
if (typeof minDate === 'string') {
|
|
3190
3189
|
minDate = new Date(minDate);
|
|
3191
3190
|
}
|
|
@@ -3198,6 +3197,10 @@ const Calendar = /*@__PURE__*/ proxyCustomElement(class Calendar extends H {
|
|
|
3198
3197
|
}
|
|
3199
3198
|
}
|
|
3200
3199
|
_parseMaxDate(maxDate) {
|
|
3200
|
+
if (maxDate === null || maxDate === '') {
|
|
3201
|
+
this.maxDate = this._getAutomaticMax();
|
|
3202
|
+
return;
|
|
3203
|
+
}
|
|
3201
3204
|
if (typeof maxDate === 'string') {
|
|
3202
3205
|
maxDate = new Date(maxDate);
|
|
3203
3206
|
}
|
|
@@ -3235,7 +3238,7 @@ const Calendar = /*@__PURE__*/ proxyCustomElement(class Calendar extends H {
|
|
|
3235
3238
|
}
|
|
3236
3239
|
}
|
|
3237
3240
|
render() {
|
|
3238
|
-
return (h(ThemedHost, { key: '
|
|
3241
|
+
return (h(ThemedHost, { key: 'edef107b0a9b73c1b329b899352d54adcee3a14c' }, h("div", { key: 'aaf6d9578454c5143f3b1b4995a443ed094d7a41', class: calendar({ variant: this.variant }) }, this._getView())));
|
|
3239
3242
|
}
|
|
3240
3243
|
_checkTodayButton() {
|
|
3241
3244
|
if (this._maxDate && isAfter(this._today, this._maxDate)) {
|
|
@@ -3538,7 +3541,7 @@ function defineCustomElement() {
|
|
|
3538
3541
|
}
|
|
3539
3542
|
defineCustomElement();
|
|
3540
3543
|
|
|
3541
|
-
export { Calendar as C, _typeof as _, startOfUTCISOWeek as a, getUTCWeek as b, toInteger as c, defineCustomElement as d, getUTCISOWeek as e, getDefaultOptions as f, getUTCWeekYear as g, longFormatters as h, subMilliseconds as i, getTimezoneOffsetInMilliseconds as j, isProtectedWeekYearToken as k, locale$1 as l, throwProtectedError as m, isProtectedDayOfYearToken as n, isValid as o, isBefore as p, isAfter as q, requiredArgs as r, startOfUTCWeek as s, toDate as t, format as u, locale as v, startOfDay as w, startOfMonth as x, isSameDay as y, isWeekend as z };
|
|
3542
|
-
//# sourceMappingURL=p-
|
|
3544
|
+
export { addYears as A, getYear as B, Calendar as C, setYear as D, _typeof as _, startOfUTCISOWeek as a, getUTCWeek as b, toInteger as c, defineCustomElement as d, getUTCISOWeek as e, getDefaultOptions as f, getUTCWeekYear as g, longFormatters as h, subMilliseconds as i, getTimezoneOffsetInMilliseconds as j, isProtectedWeekYearToken as k, locale$1 as l, throwProtectedError as m, isProtectedDayOfYearToken as n, isValid as o, isBefore as p, isAfter as q, requiredArgs as r, startOfUTCWeek as s, toDate as t, format as u, locale as v, startOfDay as w, startOfMonth as x, isSameDay as y, isWeekend as z };
|
|
3545
|
+
//# sourceMappingURL=p-CLnjjZGE.js.map
|
|
3543
3546
|
|
|
3544
|
-
//# sourceMappingURL=p-
|
|
3547
|
+
//# sourceMappingURL=p-CLnjjZGE.js.map
|