@3mo/date-time-fields 0.0.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.
- package/README.md +3 -0
- package/dist/Color/Color.d.ts +18 -0
- package/dist/Color/Color.d.ts.map +1 -0
- package/dist/Color/index.d.ts +2 -0
- package/dist/Color/index.d.ts.map +1 -0
- package/dist/DateParser.d.ts +9 -0
- package/dist/DateParser.d.ts.map +1 -0
- package/dist/DateParser.js +93 -0
- package/dist/DateRangeParser.d.ts +7 -0
- package/dist/DateRangeParser.d.ts.map +1 -0
- package/dist/DateRangeParser.js +38 -0
- package/dist/DateTime/DateTime.d.ts +48 -0
- package/dist/DateTime/DateTime.d.ts.map +1 -0
- package/dist/DateTime/DateTimeRange.d.ts +23 -0
- package/dist/DateTime/DateTimeRange.d.ts.map +1 -0
- package/dist/DateTime/TimeSpan.d.ts +40 -0
- package/dist/DateTime/TimeSpan.d.ts.map +1 -0
- package/dist/DateTime/index.d.ts +4 -0
- package/dist/DateTime/index.d.ts.map +1 -0
- package/dist/DateTimeFields/DateParser.d.ts +9 -0
- package/dist/DateTimeFields/DateParser.d.ts.map +1 -0
- package/dist/DateTimeFields/DateRangeParser.d.ts +7 -0
- package/dist/DateTimeFields/DateRangeParser.d.ts.map +1 -0
- package/dist/DateTimeFields/FieldDate.d.ts +22 -0
- package/dist/DateTimeFields/FieldDate.d.ts.map +1 -0
- package/dist/DateTimeFields/FieldDateBase.d.ts +26 -0
- package/dist/DateTimeFields/FieldDateBase.d.ts.map +1 -0
- package/dist/DateTimeFields/FieldDateRange.d.ts +34 -0
- package/dist/DateTimeFields/FieldDateRange.d.ts.map +1 -0
- package/dist/DateTimeFields/FieldTime.d.ts +11 -0
- package/dist/DateTimeFields/FieldTime.d.ts.map +1 -0
- package/dist/DateTimeFields/calendar/Calendar.d.ts +30 -0
- package/dist/DateTimeFields/calendar/Calendar.d.ts.map +1 -0
- package/dist/DateTimeFields/calendar/CalendarSelectionAdapter.d.ts +11 -0
- package/dist/DateTimeFields/calendar/CalendarSelectionAdapter.d.ts.map +1 -0
- package/dist/DateTimeFields/calendar/SelectableCalendar.d.ts +16 -0
- package/dist/DateTimeFields/calendar/SelectableCalendar.d.ts.map +1 -0
- package/dist/DateTimeFields/calendar/index.d.ts +4 -0
- package/dist/DateTimeFields/calendar/index.d.ts.map +1 -0
- package/dist/DateTimeFields/index.d.ts +11 -0
- package/dist/DateTimeFields/index.d.ts.map +1 -0
- package/dist/Field/Field.d.ts +38 -0
- package/dist/Field/Field.d.ts.map +1 -0
- package/dist/Field/FieldComponent.d.ts +48 -0
- package/dist/Field/FieldComponent.d.ts.map +1 -0
- package/dist/Field/FieldCurrency.d.ts +22 -0
- package/dist/Field/FieldCurrency.d.ts.map +1 -0
- package/dist/Field/FieldEmail.d.ts +17 -0
- package/dist/Field/FieldEmail.d.ts.map +1 -0
- package/dist/Field/FieldNumber.d.ts +28 -0
- package/dist/Field/FieldNumber.d.ts.map +1 -0
- package/dist/Field/FieldPassword.d.ts +17 -0
- package/dist/Field/FieldPassword.d.ts.map +1 -0
- package/dist/Field/FieldPercent.d.ts +19 -0
- package/dist/Field/FieldPercent.d.ts.map +1 -0
- package/dist/Field/FieldSearch.d.ts +16 -0
- package/dist/Field/FieldSearch.d.ts.map +1 -0
- package/dist/Field/FieldText.d.ts +29 -0
- package/dist/Field/FieldText.d.ts.map +1 -0
- package/dist/Field/FieldTextArea.d.ts +26 -0
- package/dist/Field/FieldTextArea.d.ts.map +1 -0
- package/dist/Field/InputFieldComponent.d.ts +30 -0
- package/dist/Field/InputFieldComponent.d.ts.map +1 -0
- package/dist/Field/index.d.ts +13 -0
- package/dist/Field/index.d.ts.map +1 -0
- package/dist/FieldDate.d.ts +22 -0
- package/dist/FieldDate.d.ts.map +1 -0
- package/dist/FieldDate.js +45 -0
- package/dist/FieldDateBase.d.ts +26 -0
- package/dist/FieldDateBase.d.ts.map +1 -0
- package/dist/FieldDateBase.js +95 -0
- package/dist/FieldDateRange.d.ts +34 -0
- package/dist/FieldDateRange.d.ts.map +1 -0
- package/dist/FieldDateRange.js +123 -0
- package/dist/FieldTime.d.ts +11 -0
- package/dist/FieldTime.d.ts.map +1 -0
- package/dist/FieldTime.js +19 -0
- package/dist/Flex/AsteriskSyntaxStyleHandler.d.ts +9 -0
- package/dist/Flex/AsteriskSyntaxStyleHandler.d.ts.map +1 -0
- package/dist/Flex/Flex.d.ts +39 -0
- package/dist/Flex/Flex.d.ts.map +1 -0
- package/dist/Flex/index.d.ts +3 -0
- package/dist/Flex/index.d.ts.map +1 -0
- package/dist/FocusController/FocusController.d.ts +17 -0
- package/dist/FocusController/FocusController.d.ts.map +1 -0
- package/dist/FocusController/index.d.ts +2 -0
- package/dist/FocusController/index.d.ts.map +1 -0
- package/dist/Icon/Icon.d.ts +33 -0
- package/dist/Icon/Icon.d.ts.map +1 -0
- package/dist/Icon/MaterialIcon.d.ts +2 -0
- package/dist/Icon/MaterialIcon.d.ts.map +1 -0
- package/dist/Icon/index.d.ts +3 -0
- package/dist/Icon/index.d.ts.map +1 -0
- package/dist/IconButton/IconButton.d.ts +24 -0
- package/dist/IconButton/IconButton.d.ts.map +1 -0
- package/dist/IconButton/index.d.ts +3 -0
- package/dist/IconButton/index.d.ts.map +1 -0
- package/dist/PointerController/PointerController.d.ts +16 -0
- package/dist/PointerController/PointerController.d.ts.map +1 -0
- package/dist/PointerController/index.d.ts +2 -0
- package/dist/PointerController/index.d.ts.map +1 -0
- package/dist/Popover/Popover.d.ts +33 -0
- package/dist/Popover/Popover.d.ts.map +1 -0
- package/dist/Popover/PopoverController.d.ts +16 -0
- package/dist/Popover/PopoverController.d.ts.map +1 -0
- package/dist/Popover/PopoverPlacement.d.ts +7 -0
- package/dist/Popover/PopoverPlacement.d.ts.map +1 -0
- package/dist/Popover/index.d.ts +3 -0
- package/dist/Popover/index.d.ts.map +1 -0
- package/dist/SlotController/SlotController.d.ts +19 -0
- package/dist/SlotController/SlotController.d.ts.map +1 -0
- package/dist/SlotController/index.d.ts +2 -0
- package/dist/SlotController/index.d.ts.map +1 -0
- package/dist/Theme/Accent.d.ts +14 -0
- package/dist/Theme/Accent.d.ts.map +1 -0
- package/dist/Theme/Background.d.ts +12 -0
- package/dist/Theme/Background.d.ts.map +1 -0
- package/dist/Theme/ColorSet.d.ts +7 -0
- package/dist/Theme/ColorSet.d.ts.map +1 -0
- package/dist/Theme/Theme.d.ts +7 -0
- package/dist/Theme/Theme.d.ts.map +1 -0
- package/dist/Theme/ThemeController.d.ts +10 -0
- package/dist/Theme/ThemeController.d.ts.map +1 -0
- package/dist/Theme/index.d.ts +7 -0
- package/dist/Theme/index.d.ts.map +1 -0
- package/dist/Theme/styles.css.d.ts +2 -0
- package/dist/Theme/styles.css.d.ts.map +1 -0
- package/dist/bundle.js +1 -0
- package/dist/calendar/Calendar.d.ts +30 -0
- package/dist/calendar/Calendar.d.ts.map +1 -0
- package/dist/calendar/Calendar.js +203 -0
- package/dist/calendar/CalendarSelectionAdapter.d.ts +11 -0
- package/dist/calendar/CalendarSelectionAdapter.d.ts.map +1 -0
- package/dist/calendar/CalendarSelectionAdapter.js +11 -0
- package/dist/calendar/SelectableCalendar.d.ts +16 -0
- package/dist/calendar/SelectableCalendar.d.ts.map +1 -0
- package/dist/calendar/SelectableCalendar.js +35 -0
- package/dist/calendar/index.d.ts +4 -0
- package/dist/calendar/index.d.ts.map +1 -0
- package/dist/calendar/index.js +3 -0
- package/dist/disabledProperty/disabledProperty.d.ts +6 -0
- package/dist/disabledProperty/disabledProperty.d.ts.map +1 -0
- package/dist/disabledProperty/index.d.ts +2 -0
- package/dist/disabledProperty/index.d.ts.map +1 -0
- package/dist/index.d.ts +11 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +10 -0
- package/dist/localization/CardinalPluralizationRulesByLanguage.d.ts +13 -0
- package/dist/localization/CardinalPluralizationRulesByLanguage.d.ts.map +1 -0
- package/dist/localization/DirectionsByLanguage.d.ts +11 -0
- package/dist/localization/DirectionsByLanguage.d.ts.map +1 -0
- package/dist/localization/LanguageCode.d.ts +187 -0
- package/dist/localization/LanguageCode.d.ts.map +1 -0
- package/dist/localization/LanguageController.d.ts +10 -0
- package/dist/localization/LanguageController.d.ts.map +1 -0
- package/dist/localization/Localizer.d.ts +41 -0
- package/dist/localization/Localizer.d.ts.map +1 -0
- package/dist/localization/formatters/Currency.d.ts +373 -0
- package/dist/localization/formatters/Currency.d.ts.map +1 -0
- package/dist/localization/formatters/Date.format.d.ts +31 -0
- package/dist/localization/formatters/Date.format.d.ts.map +1 -0
- package/dist/localization/formatters/Date.formatAsDate.d.ts +9 -0
- package/dist/localization/formatters/Date.formatAsDate.d.ts.map +1 -0
- package/dist/localization/formatters/Date.formatAsTime.d.ts +9 -0
- package/dist/localization/formatters/Date.formatAsTime.d.ts.map +1 -0
- package/dist/localization/formatters/Number.format.d.ts +9 -0
- package/dist/localization/formatters/Number.format.d.ts.map +1 -0
- package/dist/localization/formatters/Number.formatAsCurrency.d.ts +12 -0
- package/dist/localization/formatters/Number.formatAsCurrency.d.ts.map +1 -0
- package/dist/localization/formatters/Number.formatAsPercent.d.ts +9 -0
- package/dist/localization/formatters/Number.formatAsPercent.d.ts.map +1 -0
- package/dist/localization/formatters/Number.formatAsUnit.d.ts +11 -0
- package/dist/localization/formatters/Number.formatAsUnit.d.ts.map +1 -0
- package/dist/localization/formatters/OptionsWithLanguage.d.ts +5 -0
- package/dist/localization/formatters/OptionsWithLanguage.d.ts.map +1 -0
- package/dist/localization/formatters/String.toNumber.d.ts +7 -0
- package/dist/localization/formatters/String.toNumber.d.ts.map +1 -0
- package/dist/localization/formatters/index.d.ts +10 -0
- package/dist/localization/formatters/index.d.ts.map +1 -0
- package/dist/localization/index.d.ts +7 -0
- package/dist/localization/index.d.ts.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -0
- package/package.json +38 -0
|
@@ -0,0 +1,203 @@
|
|
|
1
|
+
var Calendar_1;
|
|
2
|
+
import { __decorate } from "tslib";
|
|
3
|
+
import { Component, css, component, html, state, nothing, property, query, classMap, style } from '@a11d/lit';
|
|
4
|
+
import '@a11d/array.prototype.group';
|
|
5
|
+
let Calendar = Calendar_1 = class Calendar extends Component {
|
|
6
|
+
constructor() {
|
|
7
|
+
super(...arguments);
|
|
8
|
+
this.includeWeekNumbers = false;
|
|
9
|
+
this.navigatingDate = new DateTime();
|
|
10
|
+
this.yearSelection = false;
|
|
11
|
+
this.today = new DateTime().round({ smallestUnit: 'day', roundingMode: 'floor' });
|
|
12
|
+
this.years = new Array(200).fill(undefined).map((_n, i) => Calendar_1.startingYearDate.addYears(i));
|
|
13
|
+
}
|
|
14
|
+
static get styles() {
|
|
15
|
+
return css `
|
|
16
|
+
:host {
|
|
17
|
+
--mo-calendar-max-width: 325px;
|
|
18
|
+
--mo-calendar-min-height: 230px;
|
|
19
|
+
--mo-calendar-day-size: 36px;
|
|
20
|
+
--mo-calendar-week-number-width: var(--mo-calendar-day-size);
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
.monthHeader, .week {
|
|
24
|
+
color: var(--mo-color-gray);
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
.monthHeader {
|
|
28
|
+
align-items: center;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
.navigatingMonth, .navigatingYear {
|
|
32
|
+
font-size: var(--mo-font-size-l);
|
|
33
|
+
transition: var(--mo-duration-quick);
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
.navigatingYear:hover {
|
|
37
|
+
color: var(--mo-color-accent);
|
|
38
|
+
cursor: pointer;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
.day, .year {
|
|
42
|
+
text-align: center;
|
|
43
|
+
border-radius: 100px;
|
|
44
|
+
cursor: pointer;
|
|
45
|
+
transition: var(--mo-duration-quick);
|
|
46
|
+
font-weight: 500;
|
|
47
|
+
user-select: none;
|
|
48
|
+
font-size: var(--mo-font-size-m);
|
|
49
|
+
width: var(--mo-calendar-day-size);
|
|
50
|
+
-webkit-user-select: none;
|
|
51
|
+
align-items: center;
|
|
52
|
+
justify-content: center;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
.year {
|
|
56
|
+
width: 100%;
|
|
57
|
+
justify-content: center;
|
|
58
|
+
align-items: center;
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
.selected {
|
|
62
|
+
background: var(--mo-color-accent);
|
|
63
|
+
color: var(--mo-color-accessible) !important;
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
.day {
|
|
67
|
+
height: var(--mo-calendar-day-size);
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
.day:hover, .year:hover {
|
|
71
|
+
background: var(--mo-color-transparent-gray-3);
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
.day:not(.isInMonth) {
|
|
75
|
+
color: var(--mo-color-gray);
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
.day.today {
|
|
79
|
+
color: var(--mo-color-accent);
|
|
80
|
+
}
|
|
81
|
+
`;
|
|
82
|
+
}
|
|
83
|
+
get template() {
|
|
84
|
+
return html `
|
|
85
|
+
<mo-flex alignItems='center' justifyContent='center' ${style({ width: 'var(--mo-calendar-max-width)', minHeight: 'var(--mo-calendar-min-height)' })}>
|
|
86
|
+
<mo-flex direction='horizontal' justifyContent='space-between' alignItems='center' ${style({ width: '100%' })}>
|
|
87
|
+
<mo-icon-button icon=${getComputedStyle(this).direction === 'rtl' ? 'keyboard_arrow_right' : 'keyboard_arrow_left'}
|
|
88
|
+
@click=${() => this.navigatingDate = this.navigatingDate.addMonths(-1)}
|
|
89
|
+
></mo-icon-button>
|
|
90
|
+
<div>
|
|
91
|
+
<a class='navigatingMonth'>${this.navigatingDate.monthName}</a>
|
|
92
|
+
<a class='navigatingYear' @click=${() => this.toggleYearSelection()}>${this.navigatingDate.yearName}</a>
|
|
93
|
+
</div>
|
|
94
|
+
<mo-icon-button icon=${getComputedStyle(this).direction === 'rtl' ? 'keyboard_arrow_left' : 'keyboard_arrow_right'}
|
|
95
|
+
@click=${() => this.navigatingDate = this.navigatingDate.addMonths(+1)}
|
|
96
|
+
></mo-icon-button>
|
|
97
|
+
</mo-flex>
|
|
98
|
+
|
|
99
|
+
${this.yearSelection ? this.yearSelectionTemplate : this.daySelectionTemplate}
|
|
100
|
+
</mo-flex>
|
|
101
|
+
`;
|
|
102
|
+
}
|
|
103
|
+
get daySelectionTemplate() {
|
|
104
|
+
var _a, _b;
|
|
105
|
+
const start = (_a = this.navigatingDate.monthStart) === null || _a === void 0 ? void 0 : _a.weekStart;
|
|
106
|
+
const end = (_b = this.navigatingDate.monthEnd) === null || _b === void 0 ? void 0 : _b.weekEnd;
|
|
107
|
+
const range = this.rangeOf(start, end);
|
|
108
|
+
const weekDaysInMonth = [...range.groupToMap(d => String(d.weekOfYear))]
|
|
109
|
+
.sort(([, dates1], [, dates2]) => { var _a; return ((_a = dates1[0]) === null || _a === void 0 ? void 0 : _a.isBefore(dates2[0])) ? -1 : +1; });
|
|
110
|
+
return html `
|
|
111
|
+
<mo-grid class='month'
|
|
112
|
+
rows='repeat(auto-fill, var(--mo-calendar-day-size))'
|
|
113
|
+
columns=${this.includeWeekNumbers ? 'var(--mo-calendar-week-number-width) repeat(7, var(--mo-calendar-day-size))' : 'repeat(7, var(--mo-calendar-day-size))'}
|
|
114
|
+
${style({ alignItems: 'center', justifyItems: 'center' })}
|
|
115
|
+
>
|
|
116
|
+
${this.includeWeekNumbers === false ? nothing : html `<div></div>`}
|
|
117
|
+
|
|
118
|
+
${DateTime.getWeekDayNames().map(dayName => html `
|
|
119
|
+
<div class='monthHeader'>
|
|
120
|
+
${dayName.charAt(0).toUpperCase() + dayName.charAt(1)}
|
|
121
|
+
</div>
|
|
122
|
+
`)}
|
|
123
|
+
|
|
124
|
+
${weekDaysInMonth.map(([weekNumber, days]) => html `
|
|
125
|
+
${this.includeWeekNumbers === false ? nothing : html `
|
|
126
|
+
<div class='week'>
|
|
127
|
+
${weekNumber}
|
|
128
|
+
</div>
|
|
129
|
+
`}
|
|
130
|
+
|
|
131
|
+
${days.map(day => this.getDayTemplate(day))}
|
|
132
|
+
`)}
|
|
133
|
+
</mo-grid>
|
|
134
|
+
`;
|
|
135
|
+
}
|
|
136
|
+
getDayTemplate(day) {
|
|
137
|
+
return html `
|
|
138
|
+
<mo-flex class=${classMap(this.getDefaultDayElementClasses(day))}>${day.format({ day: 'numeric' })}</mo-flex>
|
|
139
|
+
`;
|
|
140
|
+
}
|
|
141
|
+
getDefaultDayElementClasses(day) {
|
|
142
|
+
var _a, _b;
|
|
143
|
+
const monthRange = this.rangeOf(day.monthStart, day.monthEnd);
|
|
144
|
+
const daysOfMonth = (_a = [...monthRange.groupToMap(day => String(day.month))]
|
|
145
|
+
.sort(([, days1], [, days2]) => days1.length > days2.length ? -1 : +1)[0]) === null || _a === void 0 ? void 0 : _a[1];
|
|
146
|
+
return {
|
|
147
|
+
day: true,
|
|
148
|
+
today: day.equals(this.today),
|
|
149
|
+
isInMonth: day.localMonth === ((_b = daysOfMonth === null || daysOfMonth === void 0 ? void 0 : daysOfMonth[0]) === null || _b === void 0 ? void 0 : _b.localMonth),
|
|
150
|
+
};
|
|
151
|
+
}
|
|
152
|
+
get yearSelectionTemplate() {
|
|
153
|
+
return html `
|
|
154
|
+
<mo-scroller ${style({ height: '*' })}>
|
|
155
|
+
<mo-grid rows='repeat(50, var(--mo-calendar-day-size))' columns='repeat(4, 1fr)'>
|
|
156
|
+
${this.years.map(year => html `
|
|
157
|
+
<mo-flex class=${classMap({ year: true, selected: this.navigatingDate.year === year.year })} @click=${() => this.selectYear(year.year)}>
|
|
158
|
+
${year.yearName}
|
|
159
|
+
</mo-flex>
|
|
160
|
+
`)}
|
|
161
|
+
</mo-grid>
|
|
162
|
+
</mo-scroller>
|
|
163
|
+
`;
|
|
164
|
+
}
|
|
165
|
+
selectYear(year) {
|
|
166
|
+
this.navigatingDate.setFullYear(year);
|
|
167
|
+
this.yearSelection = false;
|
|
168
|
+
}
|
|
169
|
+
toggleYearSelection() {
|
|
170
|
+
this.yearSelection = !this.yearSelection;
|
|
171
|
+
if (this.yearSelection) {
|
|
172
|
+
new Promise(() => setTimeout(() => {
|
|
173
|
+
this.selectedYearElement.scrollIntoView({
|
|
174
|
+
behavior: 'smooth',
|
|
175
|
+
block: 'center',
|
|
176
|
+
inline: 'center'
|
|
177
|
+
});
|
|
178
|
+
}, 1));
|
|
179
|
+
}
|
|
180
|
+
}
|
|
181
|
+
rangeOf(start, end) {
|
|
182
|
+
return new Array(Math.abs(Math.round(end.until(start).days)) + 1)
|
|
183
|
+
.fill(undefined)
|
|
184
|
+
.map((_, i) => start.addDays(i));
|
|
185
|
+
}
|
|
186
|
+
};
|
|
187
|
+
Calendar.startingYearDate = new DateTime(1900, 6, 1);
|
|
188
|
+
__decorate([
|
|
189
|
+
property({ type: Boolean, reflect: true })
|
|
190
|
+
], Calendar.prototype, "includeWeekNumbers", void 0);
|
|
191
|
+
__decorate([
|
|
192
|
+
state()
|
|
193
|
+
], Calendar.prototype, "navigatingDate", void 0);
|
|
194
|
+
__decorate([
|
|
195
|
+
state()
|
|
196
|
+
], Calendar.prototype, "yearSelection", void 0);
|
|
197
|
+
__decorate([
|
|
198
|
+
query('.year.selected')
|
|
199
|
+
], Calendar.prototype, "selectedYearElement", void 0);
|
|
200
|
+
Calendar = Calendar_1 = __decorate([
|
|
201
|
+
component('mo-calendar')
|
|
202
|
+
], Calendar);
|
|
203
|
+
export { Calendar };
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { ClassInfo, HTMLTemplateResult } from '@a11d/lit';
|
|
2
|
+
import { SelectableCalendar } from './SelectableCalendar.js';
|
|
3
|
+
export declare abstract class CalendarSelectionAdapter<T> {
|
|
4
|
+
protected readonly calendar: SelectableCalendar<T>;
|
|
5
|
+
constructor(calendar: SelectableCalendar<T>);
|
|
6
|
+
get styles(): import("@a11d/lit").CSSResult;
|
|
7
|
+
abstract getDayTemplate(day: DateTime, classInfo: ClassInfo): HTMLTemplateResult;
|
|
8
|
+
abstract getNavigatingDate(value: T | undefined): DateTime;
|
|
9
|
+
protected select(value: T): void;
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=CalendarSelectionAdapter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CalendarSelectionAdapter.d.ts","sourceRoot":"","sources":["../../calendar/CalendarSelectionAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAO,kBAAkB,EAAE,MAAM,WAAW,CAAA;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AAE5D,8BAAsB,wBAAwB,CAAC,CAAC;IACnC,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE,kBAAkB,CAAC,CAAC,CAAC;gBAA/B,QAAQ,EAAE,kBAAkB,CAAC,CAAC,CAAC;IAE9D,IAAI,MAAM,kCAAmB;IAE7B,QAAQ,CAAC,cAAc,CAAC,GAAG,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,GAAG,kBAAkB;IAEhF,QAAQ,CAAC,iBAAiB,CAAC,KAAK,EAAE,CAAC,GAAG,SAAS,GAAG,QAAQ;IAE1D,SAAS,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;CAIzB"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { css } from '@a11d/lit';
|
|
2
|
+
export class CalendarSelectionAdapter {
|
|
3
|
+
constructor(calendar) {
|
|
4
|
+
this.calendar = calendar;
|
|
5
|
+
}
|
|
6
|
+
get styles() { return css ``; }
|
|
7
|
+
select(value) {
|
|
8
|
+
this.calendar.value = value;
|
|
9
|
+
this.calendar.change.dispatch(value);
|
|
10
|
+
}
|
|
11
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { CalendarSelectionAdapter, Calendar } from './index.js';
|
|
2
|
+
/** @fires change {CustomEvent<T>} */
|
|
3
|
+
export declare class SelectableCalendar<T> extends Calendar {
|
|
4
|
+
readonly change: EventDispatcher<T>;
|
|
5
|
+
selectionAdapterConstructor: Constructor<CalendarSelectionAdapter<T>>;
|
|
6
|
+
value?: T;
|
|
7
|
+
private _selectionAdapter?;
|
|
8
|
+
get selectionAdapter(): CalendarSelectionAdapter<T>;
|
|
9
|
+
protected getDayTemplate(day: DateTime): import("lit-html").HTMLTemplateResult;
|
|
10
|
+
}
|
|
11
|
+
declare global {
|
|
12
|
+
interface HTMLElementTagNameMap {
|
|
13
|
+
'mo-selectable-calendar': SelectableCalendar<unknown>;
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=SelectableCalendar.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SelectableCalendar.d.ts","sourceRoot":"","sources":["../../calendar/SelectableCalendar.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,wBAAwB,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAE/D,qCAAqC;AACrC,qBACa,kBAAkB,CAAC,CAAC,CAAE,SAAQ,QAAQ;IACzC,QAAQ,CAAC,MAAM,EAAG,eAAe,CAAC,CAAC,CAAC,CAAA;IAEjB,2BAA2B,EAAG,WAAW,CAAC,wBAAwB,CAAC,CAAC,CAAC,CAAC,CAAA;IAK/F,KAAK,CAAC,EAAE,CAAC,CAAA;IAEZ,OAAO,CAAC,iBAAiB,CAAC,CAA6B;IACvD,IAAI,gBAAgB,gCAOnB;cAEkB,cAAc,CAAC,GAAG,EAAE,QAAQ;CAG/C;AAED,OAAO,CAAC,MAAM,CAAC;IACd,UAAU,qBAAqB;QAC9B,wBAAwB,EAAE,kBAAkB,CAAC,OAAO,CAAC,CAAA;KACrD;CACD"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
var SelectableCalendar_1;
|
|
2
|
+
import { __decorate } from "tslib";
|
|
3
|
+
import { component, property, event } from '@a11d/lit';
|
|
4
|
+
import { Calendar } from './index.js';
|
|
5
|
+
/** @fires change {CustomEvent<T>} */
|
|
6
|
+
let SelectableCalendar = SelectableCalendar_1 = class SelectableCalendar extends Calendar {
|
|
7
|
+
get selectionAdapter() {
|
|
8
|
+
if (this._selectionAdapter) {
|
|
9
|
+
return this._selectionAdapter;
|
|
10
|
+
}
|
|
11
|
+
this._selectionAdapter = new this.selectionAdapterConstructor(this);
|
|
12
|
+
SelectableCalendar_1.elementStyles.push(this._selectionAdapter.styles);
|
|
13
|
+
return this._selectionAdapter;
|
|
14
|
+
}
|
|
15
|
+
getDayTemplate(day) {
|
|
16
|
+
return this.selectionAdapter.getDayTemplate(day, this.getDefaultDayElementClasses(day));
|
|
17
|
+
}
|
|
18
|
+
};
|
|
19
|
+
__decorate([
|
|
20
|
+
event()
|
|
21
|
+
], SelectableCalendar.prototype, "change", void 0);
|
|
22
|
+
__decorate([
|
|
23
|
+
property({ type: Object })
|
|
24
|
+
], SelectableCalendar.prototype, "selectionAdapterConstructor", void 0);
|
|
25
|
+
__decorate([
|
|
26
|
+
property({
|
|
27
|
+
type: Object, updated() {
|
|
28
|
+
this.navigatingDate = this.selectionAdapter.getNavigatingDate(this.value);
|
|
29
|
+
}
|
|
30
|
+
})
|
|
31
|
+
], SelectableCalendar.prototype, "value", void 0);
|
|
32
|
+
SelectableCalendar = SelectableCalendar_1 = __decorate([
|
|
33
|
+
component('mo-selectable-calendar')
|
|
34
|
+
], SelectableCalendar);
|
|
35
|
+
export { SelectableCalendar };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../calendar/index.ts"],"names":[],"mappings":"AAAA,cAAc,+BAA+B,CAAA;AAC7C,cAAc,eAAe,CAAA;AAC7B,cAAc,yBAAyB,CAAA"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { LitElement, type UpdatedCallback } from '@a11d/lit';
|
|
2
|
+
export declare const disabledProperty: (options?: {
|
|
3
|
+
blockFocus?: boolean;
|
|
4
|
+
updated?: UpdatedCallback<boolean> | undefined;
|
|
5
|
+
}) => (prototype: LitElement, propertyKey: 'disabled') => void;
|
|
6
|
+
//# sourceMappingURL=disabledProperty.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"disabledProperty.d.ts","sourceRoot":"","sources":["../../../disabledProperty/disabledProperty.ts"],"names":[],"mappings":"AAAA,OAAO,EAAO,UAAU,EAAY,KAAK,eAAe,EAAE,MAAM,WAAW,CAAA;AAI3E,eAAO,MAAM,gBAAgB,aAAc;IAC1C,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,OAAO,CAAC,EAAE,gBAAgB,OAAO,CAAC,GAAG,SAAS,CAAA;CAC9C,iBACmB,UAAU,eAAe,UAAU,SAgCtD,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../disabledProperty/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAA"}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import '@3mo/date-time';
|
|
2
|
+
import '@3mo/icon';
|
|
3
|
+
import '@3mo/icon-button';
|
|
4
|
+
import '@3mo/popover';
|
|
5
|
+
import '@3mo/flex';
|
|
6
|
+
import '@3mo/field';
|
|
7
|
+
export * from './FieldTime.js';
|
|
8
|
+
export * from './calendar/index.js';
|
|
9
|
+
export * from './FieldDate.js';
|
|
10
|
+
export * from './FieldDateRange.js';
|
|
11
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +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,YAAY,CAAA;AACnB,cAAc,gBAAgB,CAAA;AAC9B,cAAc,qBAAqB,CAAA;AACnC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,qBAAqB,CAAA"}
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import '@3mo/date-time';
|
|
2
|
+
import '@3mo/icon';
|
|
3
|
+
import '@3mo/icon-button';
|
|
4
|
+
import '@3mo/popover';
|
|
5
|
+
import '@3mo/flex';
|
|
6
|
+
import '@3mo/field';
|
|
7
|
+
export * from './FieldTime.js';
|
|
8
|
+
export * from './calendar/index.js';
|
|
9
|
+
export * from './FieldDate.js';
|
|
10
|
+
export * from './FieldDateRange.js';
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { LanguageCode } from './LanguageCode.js';
|
|
2
|
+
type PluralizationRuleFunction = (count: number) => number;
|
|
3
|
+
/**
|
|
4
|
+
* Provides cardinal pluralization rules based on the Unicode Common Locale Data Repository.
|
|
5
|
+
* @see http://www.unicode.org/cldr/charts/latest/supplemental/language_plural_rules.html
|
|
6
|
+
*/
|
|
7
|
+
export declare class CardinalPluralizationRulesByLanguage {
|
|
8
|
+
private static readonly rules;
|
|
9
|
+
static get(languageCode: LanguageCode): PluralizationRuleFunction | undefined;
|
|
10
|
+
private static add;
|
|
11
|
+
}
|
|
12
|
+
export {};
|
|
13
|
+
//# sourceMappingURL=CardinalPluralizationRulesByLanguage.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CardinalPluralizationRulesByLanguage.d.ts","sourceRoot":"","sources":["../../../localization/CardinalPluralizationRulesByLanguage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAEhD,KAAK,yBAAyB,GAAG,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAA;AAE1D;;;GAGG;AACH,qBAAa,oCAAoC;IAChD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAqD;IA8HlF,MAAM,CAAC,GAAG,CAAC,YAAY,EAAE,YAAY;IAIrC,OAAO,CAAC,MAAM,CAAC,GAAG;CAGlB"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { LanguageCode } from './LanguageCode.js';
|
|
2
|
+
type Direction = 'ltr' | 'rtl';
|
|
3
|
+
/** Provides direction for a given language code. */
|
|
4
|
+
export declare class DirectionsByLanguage {
|
|
5
|
+
private static readonly directions;
|
|
6
|
+
static get(languageCode: LanguageCode): Direction;
|
|
7
|
+
static updateAttributes(): void;
|
|
8
|
+
private static add;
|
|
9
|
+
}
|
|
10
|
+
export {};
|
|
11
|
+
//# sourceMappingURL=DirectionsByLanguage.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DirectionsByLanguage.d.ts","sourceRoot":"","sources":["../../../localization/DirectionsByLanguage.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAEhD,KAAK,SAAS,GAAG,KAAK,GAAG,KAAK,CAAA;AAE9B,oDAAoD;AACpD,qBAAa,oBAAoB;IAChC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAqC;IAoBvE,MAAM,CAAC,GAAG,CAAC,YAAY,EAAE,YAAY;IAIrC,MAAM,CAAC,gBAAgB;IAKvB,OAAO,CAAC,MAAM,CAAC,GAAG;CAGlB"}
|
|
@@ -0,0 +1,187 @@
|
|
|
1
|
+
export declare const enum LanguageCode {
|
|
2
|
+
Afrikaans = "af",
|
|
3
|
+
Aghem = "agq",
|
|
4
|
+
Akan = "ak",
|
|
5
|
+
Albanian = "sq",
|
|
6
|
+
Amharic = "am",
|
|
7
|
+
Arabic = "ar",
|
|
8
|
+
Armenian = "hy",
|
|
9
|
+
Assamese = "as",
|
|
10
|
+
Asu = "asa",
|
|
11
|
+
Aymara = "ay",
|
|
12
|
+
Azerbaijani = "az",
|
|
13
|
+
Bafia = "ksf",
|
|
14
|
+
Bambara = "bm",
|
|
15
|
+
Basa = "bas",
|
|
16
|
+
Basque = "eu",
|
|
17
|
+
Belarusian = "be",
|
|
18
|
+
Bemba = "bem",
|
|
19
|
+
Bena = "bez",
|
|
20
|
+
Bengali = "bn",
|
|
21
|
+
Bodo = "brx",
|
|
22
|
+
Bosnian = "bs",
|
|
23
|
+
Breton = "br",
|
|
24
|
+
Bulgarian = "bg",
|
|
25
|
+
Burmese = "my",
|
|
26
|
+
Cambodian = "km",
|
|
27
|
+
Catalan = "ca",
|
|
28
|
+
CentralAtlasTamazight = "tzm",
|
|
29
|
+
Cherokee = "chr",
|
|
30
|
+
Chiga = "cgg",
|
|
31
|
+
Chinese = "zh",
|
|
32
|
+
CongoSwahili = "swc",
|
|
33
|
+
Cornish = "kw",
|
|
34
|
+
Criol = "kea",
|
|
35
|
+
Croatian = "hr",
|
|
36
|
+
Czech = "cs",
|
|
37
|
+
Danish = "da",
|
|
38
|
+
Dawida = "dav",
|
|
39
|
+
Douala = "dua",
|
|
40
|
+
Dutch = "nl",
|
|
41
|
+
Dzongkha = "dz",
|
|
42
|
+
Ekugusii = "guz",
|
|
43
|
+
English = "en",
|
|
44
|
+
Esperanto = "eo",
|
|
45
|
+
Estonian = "et",
|
|
46
|
+
Ewe = "ee",
|
|
47
|
+
Ewondo = "ewo",
|
|
48
|
+
Faroese = "fo",
|
|
49
|
+
Farsi = "fa",
|
|
50
|
+
Filipino = "fil",
|
|
51
|
+
Finnish = "fi",
|
|
52
|
+
French = "fr",
|
|
53
|
+
Galician = "gl",
|
|
54
|
+
Ganda = "lg",
|
|
55
|
+
Georgian = "ka",
|
|
56
|
+
GermanSwiss = "gsw",
|
|
57
|
+
German = "de",
|
|
58
|
+
Greek = "el",
|
|
59
|
+
Greenlandic = "kl",
|
|
60
|
+
Guarani = "gn",
|
|
61
|
+
Gujarati = "gu",
|
|
62
|
+
Hausa = "ha",
|
|
63
|
+
Hawaiian = "haw",
|
|
64
|
+
Hebrew = "he",
|
|
65
|
+
Hindi = "hi",
|
|
66
|
+
Hungarian = "hu",
|
|
67
|
+
Icelandic = "is",
|
|
68
|
+
Igbo = "ig",
|
|
69
|
+
Indonesian = "id",
|
|
70
|
+
Inuktitut = "iu",
|
|
71
|
+
Irish = "ga",
|
|
72
|
+
Italian = "it",
|
|
73
|
+
Japanese = "ja",
|
|
74
|
+
Javanese = "jv",
|
|
75
|
+
JolaFonyi = "dyo",
|
|
76
|
+
Kabyle = "kab",
|
|
77
|
+
Kalenjin = "kln",
|
|
78
|
+
Kamba = "kam",
|
|
79
|
+
Kannada = "kn",
|
|
80
|
+
Kashmiri = "ks",
|
|
81
|
+
Kazakh = "kk",
|
|
82
|
+
Kiembu = "ebu",
|
|
83
|
+
Kikuyu = "ki",
|
|
84
|
+
Kinyarwanda = "rw",
|
|
85
|
+
Kirghiz = "ky",
|
|
86
|
+
Konkani = "kok",
|
|
87
|
+
Korean = "ko",
|
|
88
|
+
KoyraboroSenni = "ses",
|
|
89
|
+
Kurdish = "ku",
|
|
90
|
+
Lao = "lo",
|
|
91
|
+
Latin = "la",
|
|
92
|
+
Latvian = "lv",
|
|
93
|
+
Lingala = "ln",
|
|
94
|
+
Lithuanian = "lt",
|
|
95
|
+
LubaKatanga = "lu",
|
|
96
|
+
Luo = "luo",
|
|
97
|
+
Luxembourgish = "lb",
|
|
98
|
+
Luyia = "luy",
|
|
99
|
+
Macedonian = "mk",
|
|
100
|
+
Machame = "jmc",
|
|
101
|
+
MakhuwaMeetto = "mgh",
|
|
102
|
+
Makonde = "kde",
|
|
103
|
+
Malagasy = "mg",
|
|
104
|
+
Malayalam = "ml",
|
|
105
|
+
Malay = "ms",
|
|
106
|
+
Maltese = "mt",
|
|
107
|
+
Manx = "gv",
|
|
108
|
+
Marathi = "mr",
|
|
109
|
+
Masai = "mas",
|
|
110
|
+
Meru = "mer",
|
|
111
|
+
Moldavian = "mo",
|
|
112
|
+
Mongolian = "mn",
|
|
113
|
+
Morisyen = "mfe",
|
|
114
|
+
Mundang = "mua",
|
|
115
|
+
Maldivian = "mdv",
|
|
116
|
+
Nama = "naq",
|
|
117
|
+
Nepali = "ne",
|
|
118
|
+
NorthNdebele = "nd",
|
|
119
|
+
Norwegian = "nb",
|
|
120
|
+
Nuer = "nus",
|
|
121
|
+
Nyankole = "nyn",
|
|
122
|
+
Nynorsk = "nn",
|
|
123
|
+
Oriya = "or",
|
|
124
|
+
Oromo = "om",
|
|
125
|
+
Pashto = "ps",
|
|
126
|
+
Peul = "ff",
|
|
127
|
+
Polish = "pl",
|
|
128
|
+
Portuguese = "pt",
|
|
129
|
+
Punjabi = "pa",
|
|
130
|
+
Quechua = "qu",
|
|
131
|
+
RaetoRomance = "rm",
|
|
132
|
+
Romanian = "ro",
|
|
133
|
+
Rombo = "rof",
|
|
134
|
+
Rundi = "rn",
|
|
135
|
+
Russian = "ru",
|
|
136
|
+
Rwa = "rwk",
|
|
137
|
+
Samburu = "saq",
|
|
138
|
+
Sami = "se",
|
|
139
|
+
Sangu = "sbp",
|
|
140
|
+
Sanskrit = "sa",
|
|
141
|
+
Scottish = "gd",
|
|
142
|
+
Sena = "seh",
|
|
143
|
+
Serbian = "sr",
|
|
144
|
+
Shambala = "ksb",
|
|
145
|
+
Shona = "sn",
|
|
146
|
+
SichuanYi = "ii",
|
|
147
|
+
Sindhi = "sd",
|
|
148
|
+
Sinhalese = "si",
|
|
149
|
+
Slovak = "sk",
|
|
150
|
+
Slovenian = "sl",
|
|
151
|
+
Soga = "xog",
|
|
152
|
+
Somali = "so",
|
|
153
|
+
Songhay = "khq",
|
|
154
|
+
Spanish = "es",
|
|
155
|
+
Sundanese = "su",
|
|
156
|
+
Swahili = "sw",
|
|
157
|
+
Swedish = "sv",
|
|
158
|
+
Tachelhit = "shi",
|
|
159
|
+
Tagalog = "tl",
|
|
160
|
+
Tajiki = "tg",
|
|
161
|
+
Tamil = "ta",
|
|
162
|
+
Tasawaq = "twq",
|
|
163
|
+
Tatar = "tt",
|
|
164
|
+
Telugu = "te",
|
|
165
|
+
Teso = "teo",
|
|
166
|
+
Thai = "th",
|
|
167
|
+
Tibetan = "bo",
|
|
168
|
+
Tigrinya = "ti",
|
|
169
|
+
Tongan = "to",
|
|
170
|
+
Turkish = "tr",
|
|
171
|
+
Turkmen = "tk",
|
|
172
|
+
Uighur = "ug",
|
|
173
|
+
Ukrainian = "uk",
|
|
174
|
+
Urdu = "ur",
|
|
175
|
+
Uzbek = "uz",
|
|
176
|
+
Vai = "vai",
|
|
177
|
+
Vietnamese = "vi",
|
|
178
|
+
Vunjo = "vun",
|
|
179
|
+
Welsh = "cy",
|
|
180
|
+
Xhosa = "xh",
|
|
181
|
+
Yangben = "yav",
|
|
182
|
+
Yiddish = "yi",
|
|
183
|
+
Yoruba = "yo",
|
|
184
|
+
Zarma = "dje",
|
|
185
|
+
Zulu = "zu"
|
|
186
|
+
}
|
|
187
|
+
//# sourceMappingURL=LanguageCode.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LanguageCode.d.ts","sourceRoot":"","sources":["../../../localization/LanguageCode.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { Controller, ReactiveElement } from '@a11d/lit';
|
|
2
|
+
export declare class LocalizerController extends Controller {
|
|
3
|
+
protected readonly host: ReactiveElement;
|
|
4
|
+
static readonly connectedComponents: Set<ReactiveElement>;
|
|
5
|
+
static requestUpdate(): void;
|
|
6
|
+
constructor(host: ReactiveElement);
|
|
7
|
+
hostConnected(): void;
|
|
8
|
+
hostDisconnected(): void;
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=LanguageController.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LanguageController.d.ts","sourceRoot":"","sources":["../../../localization/LanguageController.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,WAAW,CAAA;AAGvD,qBAAa,mBAAoB,SAAQ,UAAU;uBAaV,IAAI,EAAE,eAAe;IAZ7D,MAAM,CAAC,QAAQ,CAAC,mBAAmB,uBAA6B;IAMhE,MAAM,CAAC,aAAa;gBAMoB,IAAI,EAAE,eAAe;IAIpD,aAAa;IAIb,gBAAgB;CAGzB"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { LanguageCode } from './LanguageCode.js';
|
|
2
|
+
type Dictionary = Map<string, string | Array<string>>;
|
|
3
|
+
type ExtractProperties<T extends string> = T extends `${string}${'${'}${infer P}${'}'}${infer Rest}` ? P | ExtractProperties<Rest> : never;
|
|
4
|
+
type ExtractKey<TProperty extends string> = TProperty extends `${infer Key}:${string}` ? Key : TProperty;
|
|
5
|
+
type ExtractType<T extends string> = T extends `${string}:${infer Type}:${string}` ? GetMatchedType<Type> : T extends `${string}:${infer Type}` ? GetMatchedType<Type> : GetMatchedType<''>;
|
|
6
|
+
type GetMatchedType<T extends string> = T extends keyof LocalizationFormatterTypeMap ? LocalizationFormatterTypeMap[T] : string;
|
|
7
|
+
interface LocalizationFormatterTypeMap {
|
|
8
|
+
[Localizer.pluralityIdentityType]: number;
|
|
9
|
+
'string': string;
|
|
10
|
+
'number': number;
|
|
11
|
+
'Date': Date;
|
|
12
|
+
'': string;
|
|
13
|
+
}
|
|
14
|
+
type LocalizationParameters<T extends string> = {
|
|
15
|
+
[P in ExtractProperties<T> as ExtractKey<P>]: ExtractType<P>;
|
|
16
|
+
};
|
|
17
|
+
export declare class Localizer {
|
|
18
|
+
static readonly defaultLanguage = LanguageCode.English;
|
|
19
|
+
static readonly pluralityIdentityType = "pluralityNumber";
|
|
20
|
+
static readonly languageChange: EventDispatcher<LanguageCode>;
|
|
21
|
+
static get currentLanguage(): LanguageCode;
|
|
22
|
+
static set currentLanguage(value: LanguageCode);
|
|
23
|
+
private static readonly languageCodeStorage;
|
|
24
|
+
private static readonly dictionariesByLanguageCode;
|
|
25
|
+
private static readonly regex;
|
|
26
|
+
static register(languageCode: LanguageCode, dictionary: Dictionary | Record<string, string | Array<string>>): void;
|
|
27
|
+
static get currentLanguageDictionary(): Dictionary | undefined;
|
|
28
|
+
static localize<T extends string>(key: T, parameters?: LocalizationParameters<T>): string;
|
|
29
|
+
static matchLocalizationParameters(key: string): {
|
|
30
|
+
group: string;
|
|
31
|
+
key: string | undefined;
|
|
32
|
+
type: string | undefined;
|
|
33
|
+
}[];
|
|
34
|
+
static getLocalization<T extends string>(key: T, parameters?: LocalizationParameters<T>): string;
|
|
35
|
+
static getLocalizationParameter(key: string, parameter: string): void;
|
|
36
|
+
}
|
|
37
|
+
declare global {
|
|
38
|
+
var t: typeof Localizer.localize;
|
|
39
|
+
}
|
|
40
|
+
export {};
|
|
41
|
+
//# sourceMappingURL=Localizer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Localizer.d.ts","sourceRoot":"","sources":["../../../localization/Localizer.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAEhD,KAAK,UAAU,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAA;AAErD,KAAK,iBAAiB,CAAC,CAAC,SAAS,MAAM,IACtC,CAAC,SAAS,GAAG,MAAM,GAAG,IAAI,GAAG,MAAM,CAAC,GAAG,GAAG,GAAG,MAAM,IAAI,EAAE,GAAG,CAAC,GAAG,iBAAiB,CAAC,IAAI,CAAC,GAAG,KAAK,CAAA;AAEhG,KAAK,UAAU,CAAC,SAAS,SAAS,MAAM,IACvC,SAAS,SAAS,GAAG,MAAM,GAAG,IAAI,MAAM,EAAE,GAAG,GAAG,GAAG,SAAS,CAAA;AAE7D,KAAK,WAAW,CAAC,CAAC,SAAS,MAAM,IAChC,CAAC,SAAS,GAAG,MAAM,IAAI,MAAM,IAAI,IAAI,MAAM,EAAE,GAC3C,cAAc,CAAC,IAAI,CAAC,GACpB,CAAC,SAAS,GAAG,MAAM,IAAI,MAAM,IAAI,EAAE,GACnC,cAAc,CAAC,IAAI,CAAC,GACpB,cAAc,CAAC,EAAE,CAAC,CAAA;AAErB,KAAK,cAAc,CAAC,CAAC,SAAS,MAAM,IAAI,CAAC,SAAS,MAAM,4BAA4B,GACjF,4BAA4B,CAAC,CAAC,CAAC,GAC/B,MAAM,CAAA;AAET,UAAU,4BAA4B;IACrC,CAAC,SAAS,CAAC,qBAAqB,CAAC,EAAE,MAAM,CAAA;IACzC,QAAQ,EAAE,MAAM,CAAA;IAChB,QAAQ,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,IAAI,CAAA;IACZ,EAAE,EAAE,MAAM,CAAA;CACV;AAED,KAAK,sBAAsB,CAAC,CAAC,SAAS,MAAM,IAAI;KAC9C,CAAC,IAAI,iBAAiB,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC;CAC5D,CAAA;AAED,qBAAa,SAAS;IACrB,MAAM,CAAC,QAAQ,CAAC,eAAe,wBAAuB;IACtD,MAAM,CAAC,QAAQ,CAAC,qBAAqB,qBAAoB;IAEhD,MAAM,CAAC,QAAQ,CAAC,cAAc,EAAE,eAAe,CAAC,YAAY,CAAC,CAAA;IAEtE,MAAM,KAAK,eAAe,iBAKzB;IAED,MAAM,KAAK,eAAe,CAAC,KAAK,cAAA,EAG/B;IAED,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,mBAAmB,CAA8E;IACzH,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,0BAA0B,CAAsC;IAExF,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAA0B;IAEvD,MAAM,CAAC,QAAQ,CAAC,YAAY,EAAE,YAAY,EAAE,UAAU,EAAE,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;IAO3G,MAAM,KAAK,yBAAyB,2BAEnC;IAED,MAAM,CAAC,QAAQ,CAAC,CAAC,SAAS,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,UAAU,CAAC,EAAE,sBAAsB,CAAC,CAAC,CAAC;IAShF,MAAM,CAAC,2BAA2B,CAAC,GAAG,EAAE,MAAM;;;;;IAK9C,MAAM,CAAC,eAAe,CAAC,CAAC,SAAS,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,UAAU,CAAC,EAAE,sBAAsB,CAAC,CAAC,CAAC;IA2BvF,MAAM,CAAC,wBAAwB,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM;CAG9D;AAID,OAAO,CAAC,MAAM,CAAC;IAEd,IAAI,CAAC,EAAE,OAAO,SAAS,CAAC,QAAQ,CAAA;CAWhC"}
|