@tzslot/angular 1.5.0 → 2.0.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/package.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@tzslot/angular",
3
- "version": "1.5.0",
3
+ "version": "2.0.0",
4
4
  "description": "Angular components for DST-safe date and time selection: signals, forms, no design system.",
5
5
  "type": "module",
6
6
  "license": "MIT",
7
7
  "dependencies": {
8
- "@tzslot/core": "^1.5.0",
9
- "@tzslot/dom": "^1.5.0",
8
+ "@tzslot/core": "^2.0.0",
9
+ "@tzslot/dom": "^2.0.0",
10
10
  "tslib": "^2.3.0"
11
11
  },
12
12
  "peerDependencies": {
@@ -260,6 +260,15 @@ declare class DateField implements ControlValueAccessor, AfterViewInit {
260
260
  readonly locale: _angular_core.InputSignal<string | undefined>;
261
261
  /** Left out, the locale decides — see `provideTzslot` to settle it once. */
262
262
  readonly firstDayOfWeek: _angular_core.InputSignal<Weekday | undefined>;
263
+ /**
264
+ * Which day counts as today: the one marked in the grid, and the month the
265
+ * panel opens on when nothing is chosen.
266
+ *
267
+ * The other four widgets had this and this one did not, which left a screen
268
+ * with no way to say what "today" is — and a test with no way to stop
269
+ * depending on the machine's clock.
270
+ */
271
+ readonly today: _angular_core.InputSignal<temporal_spec.Temporal.PlainDate>;
263
272
  readonly min: _angular_core.InputSignal<temporal_spec.Temporal.PlainDate | null>;
264
273
  readonly max: _angular_core.InputSignal<temporal_spec.Temporal.PlainDate | null>;
265
274
  readonly isDateDisabled: _angular_core.InputSignal<((date: PlainDate) => boolean) | undefined>;
@@ -325,7 +334,7 @@ declare class DateField implements ControlValueAccessor, AfterViewInit {
325
334
  registerOnTouched(fn: () => void): void;
326
335
  setDisabledState(isDisabled: boolean): void;
327
336
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<DateField, never>;
328
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<DateField, "tz-date-field", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "mode": { "alias": "mode"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "locale": { "alias": "locale"; "required": false; "isSignal": true; }; "firstDayOfWeek": { "alias": "firstDayOfWeek"; "required": false; "isSignal": true; }; "min": { "alias": "min"; "required": false; "isSignal": true; }; "max": { "alias": "max"; "required": false; "isSignal": true; }; "isDateDisabled": { "alias": "isDateDisabled"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "valueAs": { "alias": "valueAs"; "required": false; "isSignal": true; }; "valueTimeZone": { "alias": "valueTimeZone"; "required": false; "isSignal": true; }; "displayWith": { "alias": "displayWith"; "required": false; "isSignal": true; }; "renderCell": { "alias": "renderCell"; "required": false; "isSignal": true; }; "weekNumbers": { "alias": "weekNumbers"; "required": false; "isSignal": true; }; "buttons": { "alias": "buttons"; "required": false; "isSignal": true; }; "messages": { "alias": "messages"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; "opened": "opened"; "closed": "closed"; }, never, ["[tzIcon]"], true, never>;
337
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<DateField, "tz-date-field", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "mode": { "alias": "mode"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "locale": { "alias": "locale"; "required": false; "isSignal": true; }; "firstDayOfWeek": { "alias": "firstDayOfWeek"; "required": false; "isSignal": true; }; "today": { "alias": "today"; "required": false; "isSignal": true; }; "min": { "alias": "min"; "required": false; "isSignal": true; }; "max": { "alias": "max"; "required": false; "isSignal": true; }; "isDateDisabled": { "alias": "isDateDisabled"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "valueAs": { "alias": "valueAs"; "required": false; "isSignal": true; }; "valueTimeZone": { "alias": "valueTimeZone"; "required": false; "isSignal": true; }; "displayWith": { "alias": "displayWith"; "required": false; "isSignal": true; }; "renderCell": { "alias": "renderCell"; "required": false; "isSignal": true; }; "weekNumbers": { "alias": "weekNumbers"; "required": false; "isSignal": true; }; "buttons": { "alias": "buttons"; "required": false; "isSignal": true; }; "messages": { "alias": "messages"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; "opened": "opened"; "closed": "closed"; }, never, ["[tzIcon]"], true, never>;
329
338
  }
330
339
 
331
340
  /**
@@ -390,6 +399,26 @@ declare class DateTimeField implements ControlValueAccessor, AfterViewInit {
390
399
  readonly disabled: _angular_core.InputSignal<boolean>;
391
400
  /** The text can be typed as well as chosen. On by default. */
392
401
  readonly editable: _angular_core.InputSignal<boolean>;
402
+ /**
403
+ * When the change reaches your screen: at every gesture, or once on the way out.
404
+ *
405
+ * A session here is a day, then an hour, then a minute — three
406
+ * `(valueChange)` events for one decision, and three queries on a screen that
407
+ * pays for them. `'close'` holds the report, not the value: the reader sees
408
+ * every change as it happens and your screen hears once, when the panel
409
+ * closes, only if the moment really moved.
410
+ *
411
+ * Escape hands the moment back as your screen last saw it and says nothing,
412
+ * and a field destroyed with a change in hand hands it back too rather than
413
+ * reporting into a component that is going away.
414
+ *
415
+ * One thing to know: `value` — and the form control — stay at the last
416
+ * *reported* moment for the whole session, which is what "held" means. The
417
+ * field ignores that value being handed back to it while it holds, so an
418
+ * unrelated input changing mid-session cannot wipe the reader's work; a value
419
+ * that genuinely differs is still taken as an instruction.
420
+ */
421
+ readonly reportOn: _angular_core.InputSignal<"change" | "close">;
393
422
  /** Separators appear as the figures are typed, like a card number. On by default. */
394
423
  readonly mask: _angular_core.InputSignal<boolean>;
395
424
  /** A pattern — `yyyy-MM-dd HH:mm` — when the shape matters more than the reader. */
@@ -444,7 +473,7 @@ declare class DateTimeField implements ControlValueAccessor, AfterViewInit {
444
473
  registerOnTouched(fn: () => void): void;
445
474
  setDisabledState(isDisabled: boolean): void;
446
475
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<DateTimeField, never>;
447
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<DateTimeField, "tz-datetime-field", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "timeZone": { "alias": "timeZone"; "required": false; "isSignal": true; }; "mode": { "alias": "mode"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "locale": { "alias": "locale"; "required": false; "isSignal": true; }; "firstDayOfWeek": { "alias": "firstDayOfWeek"; "required": false; "isSignal": true; }; "min": { "alias": "min"; "required": false; "isSignal": true; }; "max": { "alias": "max"; "required": false; "isSignal": true; }; "isDateDisabled": { "alias": "isDateDisabled"; "required": false; "isSignal": true; }; "showTime": { "alias": "showTime"; "required": false; "isSignal": true; }; "timeLayout": { "alias": "timeLayout"; "required": false; "isSignal": true; }; "snapMinutes": { "alias": "snapMinutes"; "required": false; "isSignal": true; }; "shift": { "alias": "shift"; "required": false; "isSignal": true; }; "showStep": { "alias": "showStep"; "required": false; "isSignal": true; }; "stepMinutes": { "alias": "stepMinutes"; "required": false; "isSignal": true; }; "minuteStep": { "alias": "minuteStep"; "required": false; "isSignal": true; }; "minTime": { "alias": "minTime"; "required": false; "isSignal": true; }; "maxTime": { "alias": "maxTime"; "required": false; "isSignal": true; }; "isSlotDisabled": { "alias": "isSlotDisabled"; "required": false; "isSignal": true; }; "hour12": { "alias": "hour12"; "required": false; "isSignal": true; }; "defaultTime": { "alias": "defaultTime"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "editable": { "alias": "editable"; "required": false; "isSignal": true; }; "mask": { "alias": "mask"; "required": false; "isSignal": true; }; "format": { "alias": "format"; "required": false; "isSignal": true; }; "dateStyle": { "alias": "dateStyle"; "required": false; "isSignal": true; }; "timeStyle": { "alias": "timeStyle"; "required": false; "isSignal": true; }; "displayWith": { "alias": "displayWith"; "required": false; "isSignal": true; }; "today": { "alias": "today"; "required": false; "isSignal": true; }; "renderCell": { "alias": "renderCell"; "required": false; "isSignal": true; }; "weekNumbers": { "alias": "weekNumbers"; "required": false; "isSignal": true; }; "buttons": { "alias": "buttons"; "required": false; "isSignal": true; }; "valueAs": { "alias": "valueAs"; "required": false; "isSignal": true; }; "messages": { "alias": "messages"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; "opened": "opened"; "closed": "closed"; }, never, ["[tzIcon]"], true, never>;
476
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<DateTimeField, "tz-datetime-field", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "timeZone": { "alias": "timeZone"; "required": false; "isSignal": true; }; "mode": { "alias": "mode"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "locale": { "alias": "locale"; "required": false; "isSignal": true; }; "firstDayOfWeek": { "alias": "firstDayOfWeek"; "required": false; "isSignal": true; }; "min": { "alias": "min"; "required": false; "isSignal": true; }; "max": { "alias": "max"; "required": false; "isSignal": true; }; "isDateDisabled": { "alias": "isDateDisabled"; "required": false; "isSignal": true; }; "showTime": { "alias": "showTime"; "required": false; "isSignal": true; }; "timeLayout": { "alias": "timeLayout"; "required": false; "isSignal": true; }; "snapMinutes": { "alias": "snapMinutes"; "required": false; "isSignal": true; }; "shift": { "alias": "shift"; "required": false; "isSignal": true; }; "showStep": { "alias": "showStep"; "required": false; "isSignal": true; }; "stepMinutes": { "alias": "stepMinutes"; "required": false; "isSignal": true; }; "minuteStep": { "alias": "minuteStep"; "required": false; "isSignal": true; }; "minTime": { "alias": "minTime"; "required": false; "isSignal": true; }; "maxTime": { "alias": "maxTime"; "required": false; "isSignal": true; }; "isSlotDisabled": { "alias": "isSlotDisabled"; "required": false; "isSignal": true; }; "hour12": { "alias": "hour12"; "required": false; "isSignal": true; }; "defaultTime": { "alias": "defaultTime"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "editable": { "alias": "editable"; "required": false; "isSignal": true; }; "reportOn": { "alias": "reportOn"; "required": false; "isSignal": true; }; "mask": { "alias": "mask"; "required": false; "isSignal": true; }; "format": { "alias": "format"; "required": false; "isSignal": true; }; "dateStyle": { "alias": "dateStyle"; "required": false; "isSignal": true; }; "timeStyle": { "alias": "timeStyle"; "required": false; "isSignal": true; }; "displayWith": { "alias": "displayWith"; "required": false; "isSignal": true; }; "today": { "alias": "today"; "required": false; "isSignal": true; }; "renderCell": { "alias": "renderCell"; "required": false; "isSignal": true; }; "weekNumbers": { "alias": "weekNumbers"; "required": false; "isSignal": true; }; "buttons": { "alias": "buttons"; "required": false; "isSignal": true; }; "valueAs": { "alias": "valueAs"; "required": false; "isSignal": true; }; "messages": { "alias": "messages"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; "opened": "opened"; "closed": "closed"; }, never, ["[tzIcon]"], true, never>;
448
477
  }
449
478
 
450
479
  /**