ngxsmk-datepicker 2.2.0 → 2.2.2
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/README.md +1313 -1344
- package/docs/API.md +29 -3
- package/docs/COMPATIBILITY.md +1 -1
- package/docs/INTEGRATION.md +701 -631
- package/docs/IONIC_INTEGRATION.md +1 -1
- package/docs/IONIC_TESTING.md +1 -1
- package/docs/LOCALE-GUIDE.md +3 -3
- package/docs/PLUGIN-ARCHITECTURE.md +1 -1
- package/docs/SEO.md +1 -1
- package/docs/SSR-EXAMPLE.md +1 -1
- package/docs/THEME-TOKENS.md +1 -1
- package/docs/TIMEZONE.md +1 -1
- package/docs/extension-points.md +1 -1
- package/docs/signal-forms.md +1 -1
- package/docs/signals.md +1 -1
- package/docs/ssr.md +1 -1
- package/fesm2022/ngxsmk-datepicker.mjs +3356 -3360
- package/package.json +1 -1
- package/styles/ionic-integration.css +220 -226
- package/types/ngxsmk-datepicker.d.ts +25 -44
- package/CHANGELOG.md +0 -1133
- package/LICENSE +0 -21
- package/MIGRATION.md +0 -1702
package/docs/API.md
CHANGED
|
@@ -2,7 +2,12 @@
|
|
|
2
2
|
|
|
3
3
|
This document describes the stable public API of ngxsmk-datepicker with comprehensive real-world examples. APIs marked as **stable** are guaranteed to remain backward-compatible within the same major version. APIs marked as **experimental** may change in future releases.
|
|
4
4
|
|
|
5
|
-
**Version**: 2.2.
|
|
5
|
+
**Version**: 2.2.2+ | **Last updated**: March 3, 2026
|
|
6
|
+
|
|
7
|
+
## Stable vs experimental
|
|
8
|
+
|
|
9
|
+
- **Stable**: All inputs/outputs in the reference tables below are stable unless marked **Experimental**. Stable APIs will not change in a breaking way within the same major version.
|
|
10
|
+
- **Experimental**: Marked in the tables; may change in minor releases. Use with awareness.
|
|
6
11
|
|
|
7
12
|
## Versioning Policy
|
|
8
13
|
|
|
@@ -40,7 +45,7 @@ import { NgxsmkDatepickerComponent } from 'ngxsmk-datepicker';
|
|
|
40
45
|
| Input | Type | Default | Status | Description | Example |
|
|
41
46
|
|-------|------|---------|--------|-------------|---------|
|
|
42
47
|
| `mode` | `'single' \| 'range' \| 'multiple'` | `'single'` | Stable | Selection mode | `mode="single"` or `[mode]="'range'"` |
|
|
43
|
-
| `value` | `DatepickerValue` | `null` | Stable | Current value (one-way binding) | `[value]="selectedDate"` |
|
|
48
|
+
| `value` | `DatepickerValue` | `null` | Stable | Current value (one-way binding). For two-way binding with a signal, use `[value]="dateSignal()"` and `(valueChange)="dateSignal.set($event)"`. | `[value]="selectedDate"` |
|
|
44
49
|
| `field` | `SignalFormField \| SignalFormFieldConfig` | `null` | Stable | Signal form field (Angular 21+). Automatically tracks dirty state when using `[field]` binding. Supports direct signals, signals with properties, and resolution of nested signals. | `[field]="myForm.dateField"` |
|
|
45
50
|
| `placeholder` | `string \| null` | `'Select Date'` or `'Select Time'` | Stable | Input placeholder text | `placeholder="Choose a date"` |
|
|
46
51
|
| `inputId` | `string` | `''` | Stable | Custom ID for the input element | `inputId="my-date-input"` |
|
|
@@ -59,7 +64,7 @@ import { NgxsmkDatepickerComponent } from 'ngxsmk-datepicker';
|
|
|
59
64
|
| `timeOnly` | `boolean` | `false` | Stable | Display time picker only (no calendar). Automatically enables `showTime`. | `[timeOnly]="true"` |
|
|
60
65
|
| `allowTyping` | `boolean` | `false` | Stable | Enable manual typing in the input field. Required for native validation. | `[allowTyping]="true"` |
|
|
61
66
|
| `displayFormat` | `string` | `null` | Stable | Custom date format string (e.g., 'MM/DD/YYYY'). | `displayFormat="DD.MM.YYYY"` |
|
|
62
|
-
| `showCalendarButton` | `boolean` | `
|
|
67
|
+
| `showCalendarButton` | `boolean` | `false` | Stable | Show/hide the calendar icon button. When `false`, users can still open calendar by clicking the input field. | `[showCalendarButton]="true"` |
|
|
63
68
|
| `minuteInterval` | `number` | `1` | Stable | Minute selection interval | `[minuteInterval]="15"` |
|
|
64
69
|
| `showSeconds` | `boolean` | `false` | Stable | Show seconds in time selection | `[showSeconds]="true"` |
|
|
65
70
|
| `secondInterval` | `number` | `1` | Stable | Second selection interval (e.g. 1, 5, 15) | `[secondInterval]="5"` |
|
|
@@ -2339,6 +2344,27 @@ export function getDaysInMonth(year: number, month: number): number;
|
|
|
2339
2344
|
export function getFirstDayOfMonth(year: number, month: number): number;
|
|
2340
2345
|
```
|
|
2341
2346
|
|
|
2347
|
+
## Virtual scrolling
|
|
2348
|
+
|
|
2349
|
+
Year and decade views use the internal `calculateVirtualScroll` utility and visible-index signals so that only visible items are rendered when year ranges are large (e.g. 100+ years). The main calendar grid uses lazy month rendering via `_visibleCalendarIndicesSignal`. For very large ranges, consider limiting `yearRange` for optimal performance.
|
|
2350
|
+
|
|
2351
|
+
## Animation and reduced motion
|
|
2352
|
+
|
|
2353
|
+
Animation duration and transitions can be configured via `provideDatepickerConfig` or the global config. The component respects the `prefers-reduced-motion` media query when `animations.respectReducedMotion` is `true` (default): transitions are disabled for users who request reduced motion.
|
|
2354
|
+
|
|
2355
|
+
```typescript
|
|
2356
|
+
import { provideDatepickerConfig, DEFAULT_ANIMATION_CONFIG } from 'ngxsmk-datepicker';
|
|
2357
|
+
|
|
2358
|
+
// In app config or providers
|
|
2359
|
+
provideDatepickerConfig({
|
|
2360
|
+
animations: {
|
|
2361
|
+
...DEFAULT_ANIMATION_CONFIG,
|
|
2362
|
+
duration: 200,
|
|
2363
|
+
respectReducedMotion: true,
|
|
2364
|
+
},
|
|
2365
|
+
})
|
|
2366
|
+
```
|
|
2367
|
+
|
|
2342
2368
|
## Keyboard Support
|
|
2343
2369
|
|
|
2344
2370
|
The datepicker comes with comprehensive keyboard support:
|
package/docs/COMPATIBILITY.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Version Compatibility Matrix
|
|
2
2
|
|
|
3
|
-
**Last updated:**
|
|
3
|
+
**Last updated:** March 3, 2026 · **Current stable:** v2.2.2
|
|
4
4
|
|
|
5
5
|
This document provides comprehensive compatibility information for `ngxsmk-datepicker` across different Angular versions, Zone.js configurations, and SSR/CSR setups.
|
|
6
6
|
|