@3mo/date-time-fields 0.9.1 → 0.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.
@@ -1,5 +1,5 @@
1
1
  import { FieldDateTime } from './FieldDateTime.js';
2
- import { FieldDateTimePrecision } from './FieldDateTimeBase.js';
2
+ import { FieldDateTimePrecision } from './FieldDateTimePrecision.js';
3
3
  /**
4
4
  * @element mo-field-date
5
5
  *
@@ -1 +1 @@
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"}
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,6BAA6B,CAAA;AAMpE;;;;GAIG;AACH,qBACa,SAAU,SAAQ,aAAa;IAClC,SAAS,yBAA6B;IACtC,KAAK,SAAY;CAC1B;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
- import { component, property } from '@a11d/lit';
2
+ import { component } from '@a11d/lit';
3
3
  import { Localizer } from '@3mo/localization';
4
4
  import { FieldDateTime } from './FieldDateTime.js';
5
- import { FieldDateTimePrecision } from './FieldDateTimeBase.js';
5
+ import { FieldDateTimePrecision } from './FieldDateTimePrecision.js';
6
6
  Localizer.dictionaries.add('de', {
7
7
  'Date': 'Datum',
8
8
  });
@@ -18,12 +18,6 @@ let FieldDate = class FieldDate extends FieldDateTime {
18
18
  this.label = t('Date');
19
19
  }
20
20
  };
21
- __decorate([
22
- property()
23
- ], FieldDate.prototype, "precision", void 0);
24
- __decorate([
25
- property()
26
- ], FieldDate.prototype, "label", void 0);
27
21
  FieldDate = __decorate([
28
22
  component('mo-field-date')
29
23
  ], FieldDate);
@@ -1,4 +1,4 @@
1
- import { FieldDateTimePrecision } from './FieldDateTimeBase.js';
1
+ import { FieldDateTimePrecision } from './FieldDateTimePrecision.js';
2
2
  import { FieldDateTimeRange } from './FieldDateTimeRange.js';
3
3
  /** @element mo-field-date */
4
4
  export declare class FieldDateRange extends FieldDateTimeRange {
@@ -1 +1 @@
1
- {"version":3,"file":"FieldDateRange.d.ts","sourceRoot":"","sources":["../FieldDateRange.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAA;AAC/D,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AAE5D,6BAA6B;AAC7B,qBACa,cAAe,SAAQ,kBAAkB;IAChC,SAAS,yBAA6B;CAC3D;AAED,OAAO,CAAC,MAAM,CAAC;IACd,UAAU,qBAAqB;QAC9B,qBAAqB,EAAE,cAAc,CAAA;KACrC;CACD"}
1
+ {"version":3,"file":"FieldDateRange.d.ts","sourceRoot":"","sources":["../FieldDateRange.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAA;AACpE,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AAE5D,6BAA6B;AAC7B,qBACa,cAAe,SAAQ,kBAAkB;IAC5C,SAAS,yBAA6B;CAC/C;AAED,OAAO,CAAC,MAAM,CAAC;IACd,UAAU,qBAAqB;QAC9B,qBAAqB,EAAE,cAAc,CAAA;KACrC;CACD"}
@@ -1,6 +1,6 @@
1
1
  import { __decorate } from "tslib";
2
- import { component, property } from '@a11d/lit';
3
- import { FieldDateTimePrecision } from './FieldDateTimeBase.js';
2
+ import { component } from '@a11d/lit';
3
+ import { FieldDateTimePrecision } from './FieldDateTimePrecision.js';
4
4
  import { FieldDateTimeRange } from './FieldDateTimeRange.js';
5
5
  /** @element mo-field-date */
6
6
  let FieldDateRange = class FieldDateRange extends FieldDateTimeRange {
@@ -9,9 +9,6 @@ let FieldDateRange = class FieldDateRange extends FieldDateTimeRange {
9
9
  this.precision = FieldDateTimePrecision.Day;
10
10
  }
11
11
  };
12
- __decorate([
13
- property()
14
- ], FieldDateRange.prototype, "precision", void 0);
15
12
  FieldDateRange = __decorate([
16
13
  component('mo-field-date-range')
17
14
  ], FieldDateRange);
@@ -1,4 +1,5 @@
1
- import { FieldDateTimeBase, FieldDateTimePrecision } from './FieldDateTimeBase.js';
1
+ import { FieldDateTimeBase } from './FieldDateTimeBase.js';
2
+ import { FieldDateTimePrecision } from './FieldDateTimePrecision.js';
2
3
  /**
3
4
  * @element mo-field-date-time
4
5
  *
@@ -1 +1 @@
1
- {"version":3,"file":"FieldDateTime.d.ts","sourceRoot":"","sources":["../FieldDateTime.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAA;AAOlF;;;;GAIG;AACH,qBACa,aAAc,SAAQ,iBAAiB,CAAC,IAAI,GAAG,SAAS,CAAC;IACrE,SAAS,KAAK,YAAY,8DAA+D;IAEpE,KAAK,SAAmB;IACjB,KAAK,CAAC,EAAE,IAAI,CAAA;IAExC,cACuB,WAAW,WAEjC;IAED,SAAS,CAAC,mBAAmB;IAI7B,SAAS,KAAK,gBAAgB,0CAQ7B;cAEkB,wBAAwB,CAAC,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,sBAAsB;IAK7F,SAAS,CAAC,iBAAiB,CAAC,KAAK,EAAE,IAAI,GAAG,SAAS;IAInD,SAAS,CAAC,iBAAiB,CAAC,KAAK,EAAE,MAAM;CAGzC;AAED,OAAO,CAAC,MAAM,CAAC;IACd,UAAU,qBAAqB;QAC9B,oBAAoB,EAAE,aAAa,CAAA;KACnC;CACD"}
1
+ {"version":3,"file":"FieldDateTime.d.ts","sourceRoot":"","sources":["../FieldDateTime.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAC1D,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAA;AAOpE;;;;GAIG;AACH,qBACa,aAAc,SAAQ,iBAAiB,CAAC,IAAI,GAAG,SAAS,CAAC;IACrE,SAAS,KAAK,YAAY,8DAA+D;IAEpE,KAAK,SAAmB;IACjB,KAAK,CAAC,EAAE,IAAI,CAAA;IAExC,cACuB,WAAW,WAEjC;IAED,SAAS,CAAC,mBAAmB;IAI7B,SAAS,KAAK,gBAAgB,0CAQ7B;cAEkB,wBAAwB,CAAC,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,sBAAsB;IAK7F,SAAS,CAAC,iBAAiB,CAAC,KAAK,EAAE,IAAI,GAAG,SAAS;IAInD,SAAS,CAAC,iBAAiB,CAAC,KAAK,EAAE,MAAM;CAGzC;AAED,OAAO,CAAC,MAAM,CAAC;IACd,UAAU,qBAAqB;QAC9B,oBAAoB,EAAE,aAAa,CAAA;KACnC;CACD"}
@@ -1,7 +1,8 @@
1
1
  import { __decorate } from "tslib";
2
2
  import { component, html, property } from '@a11d/lit';
3
3
  import { Localizer } from '@3mo/localization';
4
- import { FieldDateTimeBase, FieldDateTimePrecision } from './FieldDateTimeBase.js';
4
+ import { FieldDateTimeBase } from './FieldDateTimeBase.js';
5
+ import { FieldDateTimePrecision } from './FieldDateTimePrecision.js';
5
6
  import { Memoize as memoize } from 'typescript-memoize';
6
7
  Localizer.dictionaries.add('de', {
7
8
  'Date & Time': 'Datum & Uhrzeit',
@@ -33,7 +34,7 @@ let FieldDateTime = class FieldDateTime extends FieldDateTimeBase {
33
34
  `;
34
35
  }
35
36
  handleSelectedDateChange(date, precision) {
36
- this.value = !date ? undefined : this.floorToPrecision(date);
37
+ this.value = !date ? undefined : this.precision.getRange(date).start;
37
38
  super.handleSelectedDateChange(date, precision);
38
39
  }
39
40
  valueToInputValue(value) {
@@ -1,14 +1,7 @@
1
1
  import { type HTMLTemplateResult } from '@a11d/lit';
2
2
  import { InputFieldComponent } from '@3mo/field';
3
3
  import { type MaterialIcon } from '@3mo/icon';
4
- export declare enum FieldDateTimePrecision {
5
- Year = "year",
6
- Month = "month",
7
- Day = "day",
8
- Hour = "hour",
9
- Minute = "minute",
10
- Second = "second"
11
- }
4
+ import { FieldDateTimePrecision } from './FieldDateTimePrecision.js';
12
5
  /**
13
6
  * @attr open - Whether the date picker is open
14
7
  * @attr pickerHidden - Hide the date picker
@@ -24,8 +17,6 @@ export declare abstract class FieldDateTimeBase<T> extends InputFieldComponent<T
24
17
  protected readonly calendarIconButtonIcon: MaterialIcon;
25
18
  protected abstract get selectedDate(): DateTime | undefined;
26
19
  protected get formatOptions(): Intl.DateTimeFormatOptions;
27
- protected floorToPrecision(date: DateTime): import("@3mo/date-time/DateTime.js").DateTime;
28
- protected ceilToPrecision(date: DateTime): import("@3mo/date-time/DateTime.js").DateTime;
29
20
  protected valueUpdated(): void;
30
21
  protected abstract resetNavigatingDate(): void;
31
22
  protected handleChange(value?: T, e?: Event): void;
@@ -1 +1 @@
1
- {"version":3,"file":"FieldDateTimeBase.d.ts","sourceRoot":"","sources":["../FieldDateTimeBase.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,kBAAkB,EAAwD,MAAM,WAAW,CAAA;AACzG,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAA;AAChD,OAAO,EAAE,KAAK,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;IAC5B,IAAI,UAAQ;IAC3B,YAAY,UAAQ;IACrB,qBAAqB,gDAAe;IACpD,SAAS,yBAAgC;IAE5C,cAAc,gDAAiB;IAExC,SAAS,CAAC,QAAQ,CAAC,sBAAsB,EAAE,YAAY,CAAU;IAEjE,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;IAK/B,SAAS,CAAC,QAAQ,CAAC,mBAAmB,IAAI,IAAI;cAE3B,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,uBAMrC;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,OAAO,KAAK,uBAAuB,GAYlC;IAED,SAAS,KAAK,0BAA0B,uBAOvC;IAED,SAAS,KAAK,eAAe,uBAM5B;IAED,SAAS,KAAK,sBAAsB,uBAOnC;IAED,SAAS,KAAK,YAAY,uBAMzB;IAED,OAAO,KAAK,gBAAgB,GAQ3B;IAED,OAAO,KAAK,iBAAiB,GAQ5B;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;CAMpF"}
1
+ {"version":3,"file":"FieldDateTimeBase.d.ts","sourceRoot":"","sources":["../FieldDateTimeBase.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,kBAAkB,EAAwD,MAAM,WAAW,CAAA;AACzG,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAA;AAChD,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,WAAW,CAAA;AAC7C,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAA;AAEpE;;;;;GAKG;AACH,8BAAsB,iBAAiB,CAAC,CAAC,CAAE,SAAQ,mBAAmB,CAAC,CAAC,CAAC;IAC5B,IAAI,UAAQ;IAC3B,YAAY,UAAQ;IACrB,qBAAqB,gDAAe;IACkC,SAAS,yBAAgC;IAElI,cAAc,gDAAiB;IAExC,SAAS,CAAC,QAAQ,CAAC,sBAAsB,EAAE,YAAY,CAAU;IAEjE,SAAS,CAAC,QAAQ,KAAK,YAAY,IAAI,QAAQ,GAAG,SAAS,CAAA;IAE3D,SAAS,KAAK,aAAa,IAAI,IAAI,CAAC,qBAAqB,CAMxD;cAEkB,YAAY;IAK/B,SAAS,CAAC,QAAQ,CAAC,mBAAmB,IAAI,IAAI;cAE3B,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK;IAKpD,cAAuB,QAAQ,YAE9B;IAED,SAAS,KAAK,WAAW,WAExB;IAED,WAAoB,MAAM,kCA8CzB;IAED,cAAuB,QAAQ,uBAK9B;IAED,cAAuB,eAAe,uBAMrC;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,OAAO,KAAK,uBAAuB,GAYlC;IAED,SAAS,KAAK,0BAA0B,uBAOvC;IAED,SAAS,KAAK,eAAe,uBAM5B;IAED,SAAS,KAAK,sBAAsB,uBAOnC;IAED,SAAS,KAAK,YAAY,uBAMzB;IAED,OAAO,KAAK,gBAAgB,GAQ3B;IAED,OAAO,KAAK,iBAAiB,GAQ5B;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;CAMpF"}
@@ -1,26 +1,7 @@
1
1
  import { __decorate } from "tslib";
2
2
  import { cache, css, html, live, property, style, bind, state } from '@a11d/lit';
3
3
  import { InputFieldComponent } from '@3mo/field';
4
- export var FieldDateTimePrecision;
5
- (function (FieldDateTimePrecision) {
6
- FieldDateTimePrecision["Year"] = "year";
7
- FieldDateTimePrecision["Month"] = "month";
8
- FieldDateTimePrecision["Day"] = "day";
9
- FieldDateTimePrecision["Hour"] = "hour";
10
- FieldDateTimePrecision["Minute"] = "minute";
11
- FieldDateTimePrecision["Second"] = "second";
12
- })(FieldDateTimePrecision || (FieldDateTimePrecision = {}));
13
- function isDateTimePrecisionSmaller(precision, other) {
14
- const precisions = [
15
- FieldDateTimePrecision.Year,
16
- FieldDateTimePrecision.Month,
17
- FieldDateTimePrecision.Day,
18
- FieldDateTimePrecision.Hour,
19
- FieldDateTimePrecision.Minute,
20
- FieldDateTimePrecision.Second,
21
- ];
22
- return precisions.indexOf(precision) < precisions.indexOf(other);
23
- }
4
+ import { FieldDateTimePrecision } from './FieldDateTimePrecision.js';
24
5
  /**
25
6
  * @attr open - Whether the date picker is open
26
7
  * @attr pickerHidden - Hide the date picker
@@ -41,35 +22,9 @@ export class FieldDateTimeBase extends InputFieldComponent {
41
22
  return {
42
23
  calendar: this.selectedDate?.calendarId,
43
24
  timeZone: this.selectedDate?.timeZoneId,
44
- year: 'numeric',
45
- month: isDateTimePrecisionSmaller(this.precision, FieldDateTimePrecision.Month) ? undefined : '2-digit',
46
- day: isDateTimePrecisionSmaller(this.precision, FieldDateTimePrecision.Day) ? undefined : '2-digit',
47
- hour: isDateTimePrecisionSmaller(this.precision, FieldDateTimePrecision.Hour) ? undefined : '2-digit',
48
- minute: isDateTimePrecisionSmaller(this.precision, FieldDateTimePrecision.Minute) ? undefined : '2-digit',
49
- second: isDateTimePrecisionSmaller(this.precision, FieldDateTimePrecision.Second) ? undefined : '2-digit',
50
- hourCycle: 'h23',
25
+ ...this.precision.formatOptions,
51
26
  };
52
27
  }
53
- floorToPrecision(date) {
54
- return date.with({
55
- year: date.year,
56
- month: isDateTimePrecisionSmaller(this.precision, FieldDateTimePrecision.Month) ? 1 : date.month,
57
- day: isDateTimePrecisionSmaller(this.precision, FieldDateTimePrecision.Day) ? 1 : date.day,
58
- hour: isDateTimePrecisionSmaller(this.precision, FieldDateTimePrecision.Hour) ? 0 : date.hour,
59
- minute: isDateTimePrecisionSmaller(this.precision, FieldDateTimePrecision.Minute) ? 0 : date.minute,
60
- second: isDateTimePrecisionSmaller(this.precision, FieldDateTimePrecision.Second) ? 0 : date.second,
61
- });
62
- }
63
- ceilToPrecision(date) {
64
- return date.with({
65
- year: date.year,
66
- minute: isDateTimePrecisionSmaller(this.precision, FieldDateTimePrecision.Minute) ? 60 : date.minute,
67
- second: isDateTimePrecisionSmaller(this.precision, FieldDateTimePrecision.Second) ? 60 : date.second,
68
- })
69
- .with({ month: isDateTimePrecisionSmaller(this.precision, FieldDateTimePrecision.Month) ? date.monthsInYear : date.month })
70
- .with({ day: isDateTimePrecisionSmaller(this.precision, FieldDateTimePrecision.Day) ? date.daysInMonth : date.day })
71
- .with({ hour: isDateTimePrecisionSmaller(this.precision, FieldDateTimePrecision.Hour) ? date.hoursInDay : date.hour });
72
- }
73
28
  valueUpdated() {
74
29
  super.valueUpdated();
75
30
  this.resetNavigatingDate();
@@ -96,7 +51,13 @@ export class FieldDateTimeBase extends InputFieldComponent {
96
51
  pointer-events: none;
97
52
  }
98
53
 
54
+ mo-field {
55
+ anchor-name: --mo-field-date-time;
56
+ }
57
+
99
58
  mo-popover {
59
+ position-anchor: --mo-field-date-time;
60
+ position-visibility: anchors-visible;
100
61
  background: var(--mo-color-background);
101
62
  box-shadow: var(--mo-shadow);
102
63
  border-radius: var(--mo-border-radius);
@@ -175,7 +136,7 @@ export class FieldDateTimeBase extends InputFieldComponent {
175
136
  }
176
137
  get popoverTemplate() {
177
138
  return this.pickerHidden ? html.nothing : html `
178
- <mo-popover tabindex='-1' .anchor=${this} ?open=${bind(this, 'open')}>
139
+ <mo-popover tabindex='-1' .anchor=${this} target='field' ?open=${bind(this, 'open')}>
179
140
  ${cache(!this.open ? html.nothing : this.popoverContentTemplate)}
180
141
  </mo-popover>
181
142
  `;
@@ -205,7 +166,7 @@ export class FieldDateTimeBase extends InputFieldComponent {
205
166
  `;
206
167
  }
207
168
  get monthListTemplate() {
208
- return [FieldDateTimePrecision.Year].includes(this.precision) ? html.nothing : html `
169
+ return this.precision < FieldDateTimePrecision.Month ? html.nothing : html `
209
170
  <mo-month-list
210
171
  .navigatingValue=${bind(this, 'navigatingDate')}
211
172
  .value=${this.selectedDate}
@@ -214,10 +175,10 @@ export class FieldDateTimeBase extends InputFieldComponent {
214
175
  `;
215
176
  }
216
177
  get dayTemplate() {
217
- return [FieldDateTimePrecision.Year, FieldDateTimePrecision.Month].includes(this.precision) ? html.nothing : this.calendarTemplate;
178
+ return this.precision < FieldDateTimePrecision.Day ? html.nothing : this.calendarTemplate;
218
179
  }
219
180
  get timeTemplate() {
220
- return [FieldDateTimePrecision.Year, FieldDateTimePrecision.Month, FieldDateTimePrecision.Day].includes(this.precision) ? html.nothing : html `
181
+ return this.precision <= FieldDateTimePrecision.Day ? html.nothing : html `
221
182
  <mo-flex gap='6px'>
222
183
  <div class='timezone'>
223
184
  ${this.navigatingDate?.formatToParts({ timeZoneName: 'long' }).find(x => x.type === 'timeZoneName')?.value}
@@ -232,7 +193,7 @@ export class FieldDateTimeBase extends InputFieldComponent {
232
193
  `;
233
194
  }
234
195
  get hourListTemplate() {
235
- return html `
196
+ return this.precision < FieldDateTimePrecision.Hour ? html.nothing : html `
236
197
  <mo-hour-list style='flex: 1'
237
198
  .navigatingValue=${bind(this, 'navigatingDate')}
238
199
  .value=${this.selectedDate}
@@ -241,7 +202,7 @@ export class FieldDateTimeBase extends InputFieldComponent {
241
202
  `;
242
203
  }
243
204
  get minuteListTemplate() {
244
- return [FieldDateTimePrecision.Hour].includes(this.precision) ? html.nothing : html `
205
+ return this.precision < FieldDateTimePrecision.Minute ? html.nothing : html `
245
206
  <mo-minute-list style='flex: 1'
246
207
  .navigatingValue=${bind(this, 'navigatingDate')}
247
208
  .value=${this.selectedDate}
@@ -250,7 +211,7 @@ export class FieldDateTimeBase extends InputFieldComponent {
250
211
  `;
251
212
  }
252
213
  get secondListTemplate() {
253
- return [FieldDateTimePrecision.Hour, FieldDateTimePrecision.Minute].includes(this.precision) ? html.nothing : html `
214
+ return this.precision < FieldDateTimePrecision.Second ? html.nothing : html `
254
215
  <mo-second-list style='flex: 1'
255
216
  .navigatingValue=${bind(this, 'navigatingDate')}
256
217
  .value=${this.selectedDate}
@@ -275,7 +236,7 @@ __decorate([
275
236
  property({ type: Object })
276
237
  ], FieldDateTimeBase.prototype, "shortcutReferenceDate", void 0);
277
238
  __decorate([
278
- property()
239
+ property({ type: String, converter: value => FieldDateTimePrecision.parse(value || undefined) })
279
240
  ], FieldDateTimeBase.prototype, "precision", void 0);
280
241
  __decorate([
281
242
  state()
@@ -0,0 +1,20 @@
1
+ export type FieldDateTimePrecisionKey = 'year' | 'month' | 'day' | 'hour' | 'minute' | 'second';
2
+ export declare class FieldDateTimePrecision {
3
+ readonly value: number;
4
+ readonly key: FieldDateTimePrecisionKey;
5
+ private static readonly _all;
6
+ static get all(): ReadonlyArray<FieldDateTimePrecision>;
7
+ static parse(value?: string): FieldDateTimePrecision | undefined;
8
+ static readonly Year: FieldDateTimePrecision;
9
+ static readonly Month: FieldDateTimePrecision;
10
+ static readonly Day: FieldDateTimePrecision;
11
+ static readonly Hour: FieldDateTimePrecision;
12
+ static readonly Minute: FieldDateTimePrecision;
13
+ static readonly Second: FieldDateTimePrecision;
14
+ private constructor();
15
+ get formatOptions(): Intl.DateTimeFormatOptions;
16
+ getRange(date: DateTime): import("@3mo/date-time/DateTimeRange.js").DateTimeRange;
17
+ valueOf(): number;
18
+ toString(): FieldDateTimePrecisionKey;
19
+ }
20
+ //# sourceMappingURL=FieldDateTimePrecision.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FieldDateTimePrecision.d.ts","sourceRoot":"","sources":["../FieldDateTimePrecision.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,yBAAyB,GAAG,MAAM,GAAG,OAAO,GAAG,KAAK,GAAG,MAAM,GAAG,QAAQ,GAAG,QAAQ,CAAA;AAE/F,qBAAa,sBAAsB;IAgBd,QAAQ,CAAC,KAAK,EAAE,MAAM;IAAE,QAAQ,CAAC,GAAG,EAAE,yBAAyB;IAfnF,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAsC;IAClE,MAAM,KAAK,GAAG,IAA2C,aAAa,CAAC,sBAAsB,CAAC,CAAE;IAEhG,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,sBAAsB,GAAG,SAAS;IAIhE,MAAM,CAAC,QAAQ,CAAC,IAAI,yBAAwC;IAE5D,MAAM,CAAC,QAAQ,CAAC,KAAK,yBAAyC;IAC9D,MAAM,CAAC,QAAQ,CAAC,GAAG,yBAAuC;IAC1D,MAAM,CAAC,QAAQ,CAAC,IAAI,yBAAwC;IAC5D,MAAM,CAAC,QAAQ,CAAC,MAAM,yBAA0C;IAChE,MAAM,CAAC,QAAQ,CAAC,MAAM,yBAA0C;IAEhE,OAAO;IAIP,IAAI,aAAa,IAAI,IAAI,CAAC,qBAAqB,CAU9C;IAED,QAAQ,CAAC,IAAI,EAAE,QAAQ;IAYvB,OAAO;IAIP,QAAQ;CAGR"}
@@ -0,0 +1,47 @@
1
+ export class FieldDateTimePrecision {
2
+ static get all() { return FieldDateTimePrecision._all; }
3
+ static parse(value) {
4
+ return !value ? undefined : this._all.find(precision => precision.key === value);
5
+ }
6
+ constructor(value, key) {
7
+ this.value = value;
8
+ this.key = key;
9
+ FieldDateTimePrecision._all.push(this);
10
+ }
11
+ get formatOptions() {
12
+ return {
13
+ year: 'numeric',
14
+ month: this < FieldDateTimePrecision.Month ? undefined : '2-digit',
15
+ day: this < FieldDateTimePrecision.Day ? undefined : '2-digit',
16
+ hour: this < FieldDateTimePrecision.Hour ? undefined : '2-digit',
17
+ minute: this < FieldDateTimePrecision.Minute ? undefined : '2-digit',
18
+ second: this < FieldDateTimePrecision.Second ? undefined : '2-digit',
19
+ hourCycle: 'h23',
20
+ };
21
+ }
22
+ getRange(date) {
23
+ const start = date.with({
24
+ year: date.year,
25
+ month: this < FieldDateTimePrecision.Month ? 1 : date.month,
26
+ day: this < FieldDateTimePrecision.Day ? 1 : date.day,
27
+ hour: this < FieldDateTimePrecision.Hour ? 0 : date.hour,
28
+ minute: this < FieldDateTimePrecision.Minute ? 0 : date.minute,
29
+ second: this < FieldDateTimePrecision.Second ? 0 : date.second,
30
+ });
31
+ return new DateTimeRange(start, start.add({ [`${this.key}s`]: 1 }).subtract({ seconds: 1 }));
32
+ }
33
+ valueOf() {
34
+ return this.value;
35
+ }
36
+ toString() {
37
+ return this.key;
38
+ }
39
+ }
40
+ FieldDateTimePrecision._all = new Array();
41
+ FieldDateTimePrecision.Year = new FieldDateTimePrecision(1, 'year');
42
+ // static readonly Week = new FieldDateTimePrecision(2, 'week')
43
+ FieldDateTimePrecision.Month = new FieldDateTimePrecision(3, 'month');
44
+ FieldDateTimePrecision.Day = new FieldDateTimePrecision(4, 'day');
45
+ FieldDateTimePrecision.Hour = new FieldDateTimePrecision(5, 'hour');
46
+ FieldDateTimePrecision.Minute = new FieldDateTimePrecision(6, 'minute');
47
+ FieldDateTimePrecision.Second = new FieldDateTimePrecision(7, 'second');
@@ -1,5 +1,6 @@
1
1
  import { type MaterialIcon } from '@3mo/icon';
2
- import { FieldDateTimeBase as FieldDateTimeBase, FieldDateTimePrecision } from './FieldDateTimeBase.js';
2
+ import { FieldDateTimeBase as FieldDateTimeBase } from './FieldDateTimeBase.js';
3
+ import { FieldDateTimePrecision } from './FieldDateTimePrecision.js';
3
4
  declare enum FieldDateRangeSelection {
4
5
  Start = "start",
5
6
  End = "end"
@@ -1 +1 @@
1
- {"version":3,"file":"FieldDateTimeRange.d.ts","sourceRoot":"","sources":["../FieldDateTimeRange.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,WAAW,CAAA;AAC7C,OAAO,EAAE,iBAAiB,IAAI,iBAAiB,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAA;AAWvG,aAAK,uBAAuB;IAC3B,KAAK,UAAU;IACf,GAAG,QAAQ;CACX;AAED;;;;;;;;;GASG;AACH,qBACa,kBAAmB,SAAQ,iBAAiB,CAAC,aAAa,GAAG,SAAS,CAAC;IACnF,SAAS,KAAK,YAAY,8DAAoG;IAEzG,KAAK,SAAc;IAC5B,SAAS,0BAAgC;IACzB,KAAK,CAAC,EAAE,aAAa,CAAA;IAEjD,SAAS,CAAC,mBAAmB;IAM7B,WAAoB,MAAM,kCAezB;IAED,UAAmB,sBAAsB,EAAE,YAAY,CAAe;IAEtE,cACuB,WAAW,WAEjC;IAED,SAAS,KAAK,gBAAgB,0CAS7B;IAED,cAAuB,sBAAsB,0CAK5C;IAED,SAAS,KAAK,sBAAsB,0CAInC;IAED,OAAO,KAAK,sBAAsB,GASjC;IAEQ,wBAAwB,CAAC,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,sBAAsB;IAcnF,SAAS,CAAC,iBAAiB,CAAC,KAAK,EAAE,aAAa,GAAG,SAAS;cAIzC,iBAAiB,CAAC,KAAK,EAAE,MAAM;CAGlD;AAED,OAAO,CAAC,MAAM,CAAC;IACd,UAAU,qBAAqB;QAC9B,0BAA0B,EAAE,kBAAkB,CAAA;KAC9C;CACD"}
1
+ {"version":3,"file":"FieldDateTimeRange.d.ts","sourceRoot":"","sources":["../FieldDateTimeRange.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,WAAW,CAAA;AAG7C,OAAO,EAAE,iBAAiB,IAAI,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAC/E,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAA;AASpE,aAAK,uBAAuB;IAC3B,KAAK,UAAU;IACf,GAAG,QAAQ;CACX;AAED;;;;;;;;;GASG;AACH,qBACa,kBAAmB,SAAQ,iBAAiB,CAAC,aAAa,GAAG,SAAS,CAAC;IACnF,SAAS,KAAK,YAAY,8DAAoG;IAEzG,KAAK,SAAc;IAC5B,SAAS,0BAAgC;IACzB,KAAK,CAAC,EAAE,aAAa,CAAA;IAEjD,SAAS,CAAC,mBAAmB;IAM7B,WAAoB,MAAM,kCAezB;IAED,UAAmB,sBAAsB,EAAE,YAAY,CAAe;IAEtE,cACuB,WAAW,WAEjC;IAED,SAAS,KAAK,gBAAgB,0CAS7B;IAED,cAAuB,sBAAsB,0CAK5C;IAED,SAAS,KAAK,sBAAsB,0CAInC;IAED,OAAO,KAAK,sBAAsB,GASjC;IAEQ,wBAAwB,CAAC,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,sBAAsB;IAenF,SAAS,CAAC,iBAAiB,CAAC,KAAK,EAAE,aAAa,GAAG,SAAS;cAIzC,iBAAiB,CAAC,KAAK,EAAE,MAAM;CAGlD;AAED,OAAO,CAAC,MAAM,CAAC;IACd,UAAU,qBAAqB;QAC9B,0BAA0B,EAAE,kBAAkB,CAAA;KAC9C;CACD"}
@@ -1,9 +1,10 @@
1
1
  import { __decorate } from "tslib";
2
2
  import { bind, component, css, html, property } from '@a11d/lit';
3
- import { FieldDateTimeBase as FieldDateTimeBase, FieldDateTimePrecision } from './FieldDateTimeBase.js';
4
- import { DateRangeParser } from './DateRangeParser.js';
5
- import { Memoize as memoize } from 'typescript-memoize';
6
3
  import { Localizer } from '@3mo/localization';
4
+ import { Memoize as memoize } from 'typescript-memoize';
5
+ import { FieldDateTimeBase as FieldDateTimeBase } from './FieldDateTimeBase.js';
6
+ import { FieldDateTimePrecision } from './FieldDateTimePrecision.js';
7
+ import { DateRangeParser } from './DateRangeParser.js';
7
8
  Localizer.dictionaries.add('de', {
8
9
  'Period': 'Zeitraum',
9
10
  'Start': 'Start',
@@ -88,9 +89,10 @@ let FieldDateTimeRange = class FieldDateTimeRange extends FieldDateTimeBase {
88
89
  `;
89
90
  }
90
91
  handleSelectedDateChange(date, precision) {
92
+ const { start, end } = this.precision.getRange(date);
91
93
  this.value = this.selection === FieldDateRangeSelection.Start
92
- ? new DateTimeRange(this.floorToPrecision(date), this.value?.end)
93
- : new DateTimeRange(this.value?.start, this.ceilToPrecision(date));
94
+ ? new DateTimeRange(start, this.value?.end)
95
+ : new DateTimeRange(this.value?.start, end);
94
96
  if (this.precision === precision) {
95
97
  this.selection = this.selection === FieldDateRangeSelection.Start
96
98
  ? FieldDateRangeSelection.End
@@ -99,7 +101,7 @@ let FieldDateTimeRange = class FieldDateTimeRange extends FieldDateTimeBase {
99
101
  super.handleSelectedDateChange(date, precision);
100
102
  }
101
103
  valueToInputValue(value) {
102
- return value ? value.format(this.formatOptions) ?? '' : '';
104
+ return value?.format(this.formatOptions) ?? '';
103
105
  }
104
106
  inputValueToValue(value) {
105
107
  return value ? DateRangeParser.parse(value, this.shortcutReferenceDate) : undefined;
@@ -1,5 +1,5 @@
1
1
  import { FieldDateTimeRange } from './FieldDateTimeRange.js';
2
- import { FieldDateTimePrecision } from './FieldDateTimeBase.js';
2
+ import { FieldDateTimePrecision } from './FieldDateTimePrecision.js';
3
3
  /**
4
4
  * @element mo-field-toggleable-date-time-range
5
5
  *
@@ -1 +1 @@
1
- {"version":3,"file":"FieldToggleableDateTimeRange.d.ts","sourceRoot":"","sources":["../FieldToggleableDateTimeRange.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AAC5D,OAAO,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAA;AAO/D;;;;GAIG;AACH,qBACa,4BAA6B,SAAQ,kBAAkB;IAC1D,SAAS,yBAA6B;IAE/C,IAAI,WAAW,YAA8D;IAC7E,IAAI,WAAW,CAAC,WAAW,SAAA,EAA+F;IAE1H,cAAuB,sBAAsB,0CAO5C;IAED,OAAO,KAAK,cAAc,GAIzB;CACD"}
1
+ {"version":3,"file":"FieldToggleableDateTimeRange.d.ts","sourceRoot":"","sources":["../FieldToggleableDateTimeRange.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AAC5D,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAA;AAMpE;;;;GAIG;AACH,qBACa,4BAA6B,SAAQ,kBAAkB;IAC1D,SAAS,yBAA6B;IAE/C,IAAI,WAAW,YAA8D;IAC7E,IAAI,WAAW,CAAC,WAAW,SAAA,EAA+F;IAE1H,cAAuB,sBAAsB,0CAO5C;IAED,OAAO,KAAK,cAAc,GAIzB;CACD"}
@@ -1,8 +1,8 @@
1
1
  import { __decorate } from "tslib";
2
2
  import { bind, component, html } from '@a11d/lit';
3
- import { FieldDateTimeRange } from './FieldDateTimeRange.js';
4
- import { FieldDateTimePrecision } from './FieldDateTimeBase.js';
5
3
  import { Localizer } from '@3mo/localization';
4
+ import { FieldDateTimeRange } from './FieldDateTimeRange.js';
5
+ import { FieldDateTimePrecision } from './FieldDateTimePrecision.js';
6
6
  Localizer.dictionaries.add('de', {
7
7
  'Include time': 'Zeitauswahl',
8
8
  });
@@ -27,7 +27,7 @@
27
27
  "name": "precision",
28
28
  "description": "The precision of the date picker. Defaults to 'minute'",
29
29
  "type": "FieldDateTimePrecision",
30
- "default": "\"day\""
30
+ "default": "\"Day\""
31
31
  },
32
32
  {
33
33
  "name": "selectOnFocus",
@@ -103,7 +103,7 @@
103
103
  "attribute": "precision",
104
104
  "description": "The precision of the date picker. Defaults to 'minute'",
105
105
  "type": "FieldDateTimePrecision",
106
- "default": "\"day\""
106
+ "default": "\"Day\""
107
107
  },
108
108
  {
109
109
  "name": "inputElement",
@@ -245,7 +245,7 @@
245
245
  "name": "precision",
246
246
  "description": "The precision of the date picker. Defaults to 'minute'",
247
247
  "type": "FieldDateTimePrecision",
248
- "default": "\"day\""
248
+ "default": "\"Day\""
249
249
  },
250
250
  {
251
251
  "name": "selectOnFocus",
@@ -328,7 +328,7 @@
328
328
  "attribute": "precision",
329
329
  "description": "The precision of the date picker. Defaults to 'minute'",
330
330
  "type": "FieldDateTimePrecision",
331
- "default": "\"day\""
331
+ "default": "\"Day\""
332
332
  },
333
333
  {
334
334
  "name": "inputElement",
@@ -470,7 +470,7 @@
470
470
  "name": "precision",
471
471
  "description": "The precision of the date picker. Defaults to 'minute'",
472
472
  "type": "FieldDateTimePrecision",
473
- "default": "\"day\""
473
+ "default": "\"Day\""
474
474
  },
475
475
  {
476
476
  "name": "selectOnFocus",
@@ -553,7 +553,7 @@
553
553
  "attribute": "precision",
554
554
  "description": "The precision of the date picker. Defaults to 'minute'",
555
555
  "type": "FieldDateTimePrecision",
556
- "default": "\"day\""
556
+ "default": "\"Day\""
557
557
  },
558
558
  {
559
559
  "name": "inputElement",
@@ -689,7 +689,7 @@
689
689
  "name": "precision",
690
690
  "description": "The precision of the date picker. Defaults to 'minute'",
691
691
  "type": "FieldDateTimePrecision",
692
- "default": "\"minute\""
692
+ "default": "\"Minute\""
693
693
  },
694
694
  {
695
695
  "name": "selectOnFocus",
@@ -765,7 +765,7 @@
765
765
  "attribute": "precision",
766
766
  "description": "The precision of the date picker. Defaults to 'minute'",
767
767
  "type": "FieldDateTimePrecision",
768
- "default": "\"minute\""
768
+ "default": "\"Minute\""
769
769
  },
770
770
  {
771
771
  "name": "inputElement",
@@ -907,7 +907,7 @@
907
907
  "name": "precision",
908
908
  "description": "The precision of the date picker. Defaults to 'minute'",
909
909
  "type": "FieldDateTimePrecision",
910
- "default": "\"minute\""
910
+ "default": "\"Minute\""
911
911
  },
912
912
  {
913
913
  "name": "selectOnFocus",
@@ -990,7 +990,7 @@
990
990
  "attribute": "precision",
991
991
  "description": "The precision of the date picker. Defaults to 'minute'",
992
992
  "type": "FieldDateTimePrecision",
993
- "default": "\"minute\""
993
+ "default": "\"Minute\""
994
994
  },
995
995
  {
996
996
  "name": "inputElement",
@@ -1132,7 +1132,7 @@
1132
1132
  "name": "precision",
1133
1133
  "description": "The precision of the date picker. Defaults to 'minute'",
1134
1134
  "type": "FieldDateTimePrecision",
1135
- "default": "\"minute\""
1135
+ "default": "\"Minute\""
1136
1136
  },
1137
1137
  {
1138
1138
  "name": "selectOnFocus",
@@ -1215,7 +1215,7 @@
1215
1215
  "attribute": "precision",
1216
1216
  "description": "The precision of the date picker. Defaults to 'minute'",
1217
1217
  "type": "FieldDateTimePrecision",
1218
- "default": "\"minute\""
1218
+ "default": "\"Minute\""
1219
1219
  },
1220
1220
  {
1221
1221
  "name": "inputElement",
@@ -1552,7 +1552,7 @@
1552
1552
  "name": "precision",
1553
1553
  "description": "The precision of the date picker. Defaults to 'minute'",
1554
1554
  "type": "FieldDateTimePrecision",
1555
- "default": "\"day\""
1555
+ "default": "\"Day\""
1556
1556
  },
1557
1557
  {
1558
1558
  "name": "selectOnFocus",
@@ -1639,7 +1639,7 @@
1639
1639
  "attribute": "precision",
1640
1640
  "description": "The precision of the date picker. Defaults to 'minute'",
1641
1641
  "type": "FieldDateTimePrecision",
1642
- "default": "\"day\""
1642
+ "default": "\"Day\""
1643
1643
  },
1644
1644
  {
1645
1645
  "name": "inputElement",
package/dist/index.d.ts CHANGED
@@ -10,6 +10,7 @@ import '@3mo/scroller';
10
10
  import '@3mo/list';
11
11
  export * from './selection/index.js';
12
12
  export * from './FieldTime.js';
13
+ export * from './FieldDateTimePrecision.js';
13
14
  export * from './FieldDateTime.js';
14
15
  export * from './FieldDateTimeRange.js';
15
16
  export * from './FieldDateRange.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA,OAAO,gBAAgB,CAAA;AACvB,OAAO,WAAW,CAAA;AAClB,OAAO,kBAAkB,CAAA;AACzB,OAAO,cAAc,CAAA;AACrB,OAAO,WAAW,CAAA;AAClB,OAAO,WAAW,CAAA;AAClB,OAAO,YAAY,CAAA;AACnB,OAAO,UAAU,CAAA;AACjB,OAAO,eAAe,CAAA;AACtB,OAAO,WAAW,CAAA;AAClB,cAAc,sBAAsB,CAAA;AACpC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,oBAAoB,CAAA;AAClC,cAAc,yBAAyB,CAAA;AACvC,cAAc,qBAAqB,CAAA;AACnC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,mCAAmC,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA,OAAO,gBAAgB,CAAA;AACvB,OAAO,WAAW,CAAA;AAClB,OAAO,kBAAkB,CAAA;AACzB,OAAO,cAAc,CAAA;AACrB,OAAO,WAAW,CAAA;AAClB,OAAO,WAAW,CAAA;AAClB,OAAO,YAAY,CAAA;AACnB,OAAO,UAAU,CAAA;AACjB,OAAO,eAAe,CAAA;AACtB,OAAO,WAAW,CAAA;AAClB,cAAc,sBAAsB,CAAA;AACpC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,6BAA6B,CAAA;AAC3C,cAAc,oBAAoB,CAAA;AAClC,cAAc,yBAAyB,CAAA;AACvC,cAAc,qBAAqB,CAAA;AACnC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,mCAAmC,CAAA"}
package/dist/index.js CHANGED
@@ -10,6 +10,7 @@ import '@3mo/scroller';
10
10
  import '@3mo/list';
11
11
  export * from './selection/index.js';
12
12
  export * from './FieldTime.js';
13
+ export * from './FieldDateTimePrecision.js';
13
14
  export * from './FieldDateTime.js';
14
15
  export * from './FieldDateTimeRange.js';
15
16
  export * from './FieldDateRange.js';