@3mo/date-time-fields 0.5.11 → 0.5.12-preview.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.
- package/dist/FieldDate.d.ts.map +1 -1
- package/dist/FieldDate.js +1 -1
- package/dist/FieldDateTimeBase.d.ts +2 -0
- package/dist/FieldDateTimeBase.d.ts.map +1 -1
- package/dist/FieldDateTimeBase.js +43 -2
- package/dist/custom-elements.json +8 -2231
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/selection/FieldSelectMonth.d.ts +17 -0
- package/dist/selection/FieldSelectMonth.d.ts.map +1 -0
- package/dist/selection/FieldSelectMonth.js +54 -0
- package/dist/selection/FieldSelectYear.d.ts +18 -0
- package/dist/selection/FieldSelectYear.d.ts.map +1 -0
- package/dist/selection/FieldSelectYear.js +52 -0
- package/dist/selection/index.d.ts +2 -0
- package/dist/selection/index.d.ts.map +1 -1
- package/dist/selection/index.js +2 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +2 -1
package/dist/FieldDate.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FieldDate.d.ts","sourceRoot":"","sources":["../FieldDate.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"FieldDate.d.ts","sourceRoot":"","sources":["../FieldDate.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAClD,OAAO,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAA;AAM/D;;;;GAIG;AACH,qBACa,SAAU,SAAQ,aAAa;IACtB,SAAS,yBAA6B;IACtC,KAAK,SAAY;CACtC;AAED,OAAO,CAAC,MAAM,CAAC;IACd,UAAU,qBAAqB;QAC9B,eAAe,EAAE,aAAa,CAAA;KAC9B;CACD"}
|
package/dist/FieldDate.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { __decorate } from "tslib";
|
|
2
2
|
import { component, property } from '@a11d/lit';
|
|
3
|
+
import { Localizer } from '@3mo/localization';
|
|
3
4
|
import { FieldDateTime } from './FieldDateTime.js';
|
|
4
5
|
import { FieldDateTimePrecision } from './FieldDateTimeBase.js';
|
|
5
|
-
import { Localizer } from '@3mo/localization';
|
|
6
6
|
Localizer.dictionaries.add('de', {
|
|
7
7
|
'Date': 'Datum',
|
|
8
8
|
});
|
|
@@ -20,6 +20,7 @@ export declare abstract class FieldDateTimeBase<T> extends InputFieldComponent<T
|
|
|
20
20
|
pickerHidden: boolean;
|
|
21
21
|
shortcutReferenceDate: import("@3mo/date-time/DateTime.js").DateTime;
|
|
22
22
|
precision: FieldDateTimePrecision;
|
|
23
|
+
private readonly smQuery;
|
|
23
24
|
private lastValue?;
|
|
24
25
|
protected readonly calendarIconButtonIcon: MaterialIcon;
|
|
25
26
|
protected abstract get navigatingDate(): DateTime;
|
|
@@ -39,6 +40,7 @@ export declare abstract class FieldDateTimeBase<T> extends InputFieldComponent<T
|
|
|
39
40
|
protected get calendarIconButtonTemplate(): HTMLTemplateResult;
|
|
40
41
|
protected get popoverTemplate(): HTMLTemplateResult;
|
|
41
42
|
protected get popoverContentTemplate(): HTMLTemplateResult;
|
|
43
|
+
protected get compactPopoverContentTemplate(): HTMLTemplateResult;
|
|
42
44
|
protected get dateTemplate(): HTMLTemplateResult;
|
|
43
45
|
private get yearListTemplate();
|
|
44
46
|
private get monthListTemplate();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FieldDateTimeBase.d.ts","sourceRoot":"","sources":["../FieldDateTimeBase.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,kBAAkB,EAAiD,MAAM,WAAW,CAAA;
|
|
1
|
+
{"version":3,"file":"FieldDateTimeBase.d.ts","sourceRoot":"","sources":["../FieldDateTimeBase.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,kBAAkB,EAAiD,MAAM,WAAW,CAAA;AAElG,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAA;AAChD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,WAAW,CAAA;AAE7C,oBAAY,sBAAsB;IACjC,IAAI,SAAS;IACb,KAAK,UAAU;IACf,GAAG,QAAQ;IACX,IAAI,SAAS;IACb,MAAM,WAAW;IACjB,MAAM,WAAW;CACjB;AAcD;;;;;GAKG;AACH,8BAAsB,iBAAiB,CAAC,CAAC,CAAE,SAAQ,mBAAmB,CAAC,CAAC,CAAC;IAWrE,IAAI,UAAQ;IACc,YAAY,UAAQ;IACrB,qBAAqB,gDAAe;IACpD,SAAS,yBAAgC;IAErD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAuD;IAE/E,OAAO,CAAC,SAAS,CAAC,CAAG;IAErB,SAAS,CAAC,QAAQ,CAAC,sBAAsB,EAAE,YAAY,CAAU;IAEjE,SAAS,CAAC,QAAQ,KAAK,cAAc,IAAI,QAAQ,CAAA;IAEjD,SAAS,CAAC,QAAQ,KAAK,YAAY,IAAI,QAAQ,GAAG,SAAS,CAAA;IAE3D,SAAS,KAAK,aAAa,IAAI,IAAI,CAAC,qBAAqB,CAYxD;IAED,SAAS,CAAC,gBAAgB,CAAC,IAAI,EAAE,QAAQ;IAWzC,SAAS,CAAC,eAAe,CAAC,IAAI,EAAE,QAAQ;cAWrB,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK;IAKpD,cAAuB,QAAQ,YAE9B;IAED,SAAS,KAAK,WAAW,WAExB;IAED,WAAoB,MAAM,kCAwCzB;IAED,cAAuB,QAAQ,uBAK9B;IAED,cAAuB,eAAe,uBAKrC;IAED,cAAuB,aAAa,uBAanC;IAED,SAAS,CAAC,QAAQ,CAAC,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,CAAC,GAAG,SAAS;uBACtC,iBAAiB,CAAC,KAAK,EAAE,CAAC,GAAG,SAAS,GAAG,MAAM;IAE3E,SAAS,KAAK,0BAA0B,uBAOvC;IAED,SAAS,KAAK,eAAe,uBAM5B;IAED,SAAS,KAAK,sBAAsB,uBAOnC;IAED,SAAS,KAAK,6BAA6B,uBAU1C;IAED,SAAS,KAAK,YAAY,uBAMzB;IAED,OAAO,KAAK,gBAAgB,GAqB3B;IAED,OAAO,KAAK,iBAAiB,GA0B5B;IAED,OAAO,KAAK,WAAW,GAEtB;IAED,SAAS,CAAC,QAAQ,KAAK,gBAAgB,IAAI,kBAAkB,CAAA;IAE7D,OAAO,KAAK,YAAY,GAcvB;IAED,OAAO,KAAK,gBAAgB,GAQ3B;IAED,OAAO,KAAK,kBAAkB,GAQ7B;IAED,OAAO,KAAK,kBAAkB,GAQ7B;IAED,SAAS,CAAC,wBAAwB,CAAC,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,sBAAsB;CAKpF"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { __decorate } from "tslib";
|
|
2
2
|
import { cache, css, html, live, property, style, bind } from '@a11d/lit';
|
|
3
|
+
import { MediaQueryController } from '@3mo/media-query-observer';
|
|
3
4
|
import { InputFieldComponent } from '@3mo/field';
|
|
4
5
|
export var FieldDateTimePrecision;
|
|
5
6
|
(function (FieldDateTimePrecision) {
|
|
@@ -34,6 +35,7 @@ export class FieldDateTimeBase extends InputFieldComponent {
|
|
|
34
35
|
this.pickerHidden = false;
|
|
35
36
|
this.shortcutReferenceDate = new DateTime;
|
|
36
37
|
this.precision = FieldDateTimePrecision.Minute;
|
|
38
|
+
this.smQuery = new MediaQueryController(this, '(max-width: 576px)');
|
|
37
39
|
this.calendarIconButtonIcon = 'today';
|
|
38
40
|
}
|
|
39
41
|
get formatOptions() {
|
|
@@ -162,13 +164,24 @@ export class FieldDateTimeBase extends InputFieldComponent {
|
|
|
162
164
|
`;
|
|
163
165
|
}
|
|
164
166
|
get popoverContentTemplate() {
|
|
165
|
-
return html `
|
|
167
|
+
return this.smQuery.matches ? this.compactPopoverContentTemplate : html `
|
|
166
168
|
<mo-flex id='selector' direction='horizontal' style='height: 100%'>
|
|
167
169
|
${this.dateTemplate}
|
|
168
170
|
${this.timeTemplate}
|
|
169
171
|
</mo-flex>
|
|
170
172
|
`;
|
|
171
173
|
}
|
|
174
|
+
get compactPopoverContentTemplate() {
|
|
175
|
+
return html `
|
|
176
|
+
<mo-flex alignItems='center' ${style({ paddingBlock: '10px' })}>
|
|
177
|
+
<mo-flex direction='horizontal' gap='8px' ${style({ width: 'calc(100% - 20px)' })}>
|
|
178
|
+
${this.monthListTemplate}
|
|
179
|
+
${this.yearListTemplate}
|
|
180
|
+
</mo-flex>
|
|
181
|
+
${this.dayTemplate}
|
|
182
|
+
</mo-flex>
|
|
183
|
+
`;
|
|
184
|
+
}
|
|
172
185
|
get dateTemplate() {
|
|
173
186
|
return html `
|
|
174
187
|
${this.yearListTemplate}
|
|
@@ -177,6 +190,18 @@ export class FieldDateTimeBase extends InputFieldComponent {
|
|
|
177
190
|
`;
|
|
178
191
|
}
|
|
179
192
|
get yearListTemplate() {
|
|
193
|
+
if (this.smQuery.matches) {
|
|
194
|
+
return html `
|
|
195
|
+
<mo-field-year ${style({ width: '80px' })}
|
|
196
|
+
.value=${this.selectedDate?.getFullYear()}
|
|
197
|
+
@change=${(e) => {
|
|
198
|
+
const currentDate = this.selectedDate ?? new DateTime();
|
|
199
|
+
currentDate.setFullYear(e.detail);
|
|
200
|
+
this.handleSelectedDateChange(currentDate, FieldDateTimePrecision.Year);
|
|
201
|
+
}}
|
|
202
|
+
></mo-field-year>
|
|
203
|
+
`;
|
|
204
|
+
}
|
|
180
205
|
return html `
|
|
181
206
|
<mo-year-list
|
|
182
207
|
.navigatingValue=${this.navigatingDate}
|
|
@@ -186,7 +211,23 @@ export class FieldDateTimeBase extends InputFieldComponent {
|
|
|
186
211
|
`;
|
|
187
212
|
}
|
|
188
213
|
get monthListTemplate() {
|
|
189
|
-
|
|
214
|
+
if ([FieldDateTimePrecision.Year].includes(this.precision)) {
|
|
215
|
+
return html.nothing;
|
|
216
|
+
}
|
|
217
|
+
if (this.smQuery.matches) {
|
|
218
|
+
return html `
|
|
219
|
+
<mo-field-month ${style({ flexGrow: '1' })}
|
|
220
|
+
.navigatingDate=${this.navigatingDate}
|
|
221
|
+
.value=${this.selectedDate?.getMonth()}
|
|
222
|
+
@change=${(e) => {
|
|
223
|
+
const currentDate = this.selectedDate ?? new DateTime();
|
|
224
|
+
currentDate.setMonth(e.detail);
|
|
225
|
+
this.handleSelectedDateChange(currentDate, FieldDateTimePrecision.Month);
|
|
226
|
+
}}
|
|
227
|
+
></mo-field-month>
|
|
228
|
+
`;
|
|
229
|
+
}
|
|
230
|
+
return html `
|
|
190
231
|
<mo-month-list
|
|
191
232
|
.navigatingValue=${this.navigatingDate}
|
|
192
233
|
.value=${this.selectedDate}
|