@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,48 @@
|
|
|
1
|
+
import { Component, HTMLTemplateResult } from '@a11d/lit';
|
|
2
|
+
import { SlotController } from '@3mo/slot-controller';
|
|
3
|
+
import { FocusController } from '@3mo/focus-controller';
|
|
4
|
+
/**
|
|
5
|
+
* @attr value - The field's value
|
|
6
|
+
* @attr label - The field's label
|
|
7
|
+
* @attr readonly - Whether the field is readonly
|
|
8
|
+
* @attr disabled - Whether the field is disabled
|
|
9
|
+
* @attr required - Whether the field is required
|
|
10
|
+
*
|
|
11
|
+
* @slot - The field's content
|
|
12
|
+
* @slot start - Content to be placed at the start of the field
|
|
13
|
+
* @slot end - Content to be placed at the end of the field
|
|
14
|
+
*
|
|
15
|
+
* @fires change
|
|
16
|
+
* @fires input
|
|
17
|
+
* @fires validityChange
|
|
18
|
+
*/
|
|
19
|
+
export declare abstract class FieldComponent<T> extends Component {
|
|
20
|
+
readonly change: EventDispatcher<T | undefined>;
|
|
21
|
+
readonly input: EventDispatcher<T | undefined>;
|
|
22
|
+
readonly validityChange: EventDispatcher<boolean>;
|
|
23
|
+
abstract value?: T | undefined;
|
|
24
|
+
label: string;
|
|
25
|
+
readonly: boolean;
|
|
26
|
+
disabled: boolean;
|
|
27
|
+
required: boolean;
|
|
28
|
+
protected invalid: boolean;
|
|
29
|
+
protected inputValue?: T;
|
|
30
|
+
protected readonly slotController: SlotController;
|
|
31
|
+
protected readonly focusController: FocusController;
|
|
32
|
+
protected firstUpdated(): void;
|
|
33
|
+
protected handleFocus(): void;
|
|
34
|
+
protected handleBlur(): void;
|
|
35
|
+
protected handleInput(value: T | undefined, e?: Event): void;
|
|
36
|
+
protected handleChange(value: T | undefined, e?: Event): void;
|
|
37
|
+
protected get isPopulated(): boolean;
|
|
38
|
+
protected get isDense(): boolean;
|
|
39
|
+
protected get template(): import("lit-html").TemplateResult<1>;
|
|
40
|
+
protected get startSlotTemplate(): import("lit-html").TemplateResult<1>;
|
|
41
|
+
protected abstract get inputTemplate(): HTMLTemplateResult;
|
|
42
|
+
protected get endSlotTemplate(): import("lit-html").TemplateResult<1>;
|
|
43
|
+
protected validate(): Promise<void>;
|
|
44
|
+
abstract setCustomValidity(...args: Parameters<HTMLInputElement['setCustomValidity']>): ReturnType<HTMLInputElement['setCustomValidity']>;
|
|
45
|
+
abstract checkValidity(): Promise<boolean>;
|
|
46
|
+
abstract reportValidity(): void;
|
|
47
|
+
}
|
|
48
|
+
//# sourceMappingURL=FieldComponent.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FieldComponent.d.ts","sourceRoot":"","sources":["../../../Field/FieldComponent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkC,SAAS,EAAE,kBAAkB,EAAS,MAAM,WAAW,CAAA;AAChG,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAEvD;;;;;;;;;;;;;;GAcG;AACH,8BAAsB,cAAc,CAAC,CAAC,CAAE,SAAQ,SAAS;IAC/C,QAAQ,CAAC,MAAM,EAAG,eAAe,CAAC,CAAC,GAAG,SAAS,CAAC,CAAA;IAChD,QAAQ,CAAC,KAAK,EAAG,eAAe,CAAC,CAAC,GAAG,SAAS,CAAC,CAAA;IAC/C,QAAQ,CAAC,cAAc,EAAG,eAAe,CAAC,OAAO,CAAC,CAAA;IAE/B,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,SAAS,CAAA;IAC9C,KAAK,SAAK;IACO,QAAQ,UAAQ;IAChB,QAAQ,UAAQ;IAChB,QAAQ,UAAQ;IAChB,SAAS,CAAC,OAAO,UAAQ;IAE7C,SAAS,CAAC,UAAU,CAAC,EAAE,CAAC,CAAA;IAEjC,SAAS,CAAC,QAAQ,CAAC,cAAc,iBAA2B;IAC5D,SAAS,CAAC,QAAQ,CAAC,eAAe,kBAEhC;cAEiB,YAAY;IAI/B,SAAS,CAAC,WAAW;IAErB,SAAS,CAAC,UAAU;IAEpB,SAAS,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC,GAAG,SAAS,EAAE,CAAC,CAAC,EAAE,KAAK;IAOrD,SAAS,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC,GAAG,SAAS,EAAE,CAAC,CAAC,EAAE,KAAK;IAOtD,SAAS,KAAK,WAAW,YAExB;IAED,SAAS,KAAK,OAAO,YAEpB;IAED,cAAuB,QAAQ,yCAE9B;IAED,SAAS,KAAK,iBAAiB,yCAE9B;IAED,SAAS,CAAC,QAAQ,KAAK,aAAa,IAAI,kBAAkB,CAAA;IAE1D,SAAS,KAAK,eAAe,yCAE5B;cAEe,QAAQ;IAMxB,QAAQ,CAAC,iBAAiB,CAAC,GAAG,IAAI,EAAE,UAAU,CAAC,gBAAgB,CAAC,mBAAmB,CAAC,CAAC,GAAG,UAAU,CAAC,gBAAgB,CAAC,mBAAmB,CAAC,CAAC;IACzI,QAAQ,CAAC,aAAa,IAAI,OAAO,CAAC,OAAO,CAAC;IAC1C,QAAQ,CAAC,cAAc,IAAI,IAAI;CAC/B"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { Currency } from '@3mo/localization';
|
|
2
|
+
import { FieldNumber } from './FieldNumber.js';
|
|
3
|
+
/**
|
|
4
|
+
* @element mo-field-currency
|
|
5
|
+
*
|
|
6
|
+
* @attr currency - The currency of the field.
|
|
7
|
+
* @attr currencySymbol - The currency symbol of the field.
|
|
8
|
+
*/
|
|
9
|
+
export declare class FieldCurrency extends FieldNumber {
|
|
10
|
+
currency: Currency;
|
|
11
|
+
currencySymbol?: string;
|
|
12
|
+
protected format: (value: number) => string;
|
|
13
|
+
protected get currencySymbolText(): string;
|
|
14
|
+
static get styles(): import("@a11d/lit").CSSResult;
|
|
15
|
+
protected get endSlotTemplate(): import("lit-html").TemplateResult<1>;
|
|
16
|
+
}
|
|
17
|
+
declare global {
|
|
18
|
+
interface HTMLElementTagNameMap {
|
|
19
|
+
'mo-field-currency': FieldCurrency;
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=FieldCurrency.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FieldCurrency.d.ts","sourceRoot":"","sources":["../../../Field/FieldCurrency.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAE9C;;;;;GAKG;AACH,qBACa,aAAc,SAAQ,WAAW;IACjB,QAAQ,WAAe;IACvC,cAAc,CAAC,EAAE,MAAM,CAAA;IAEnC,UAAmB,MAAM,UAAW,MAAM,YAA6B;IAEvE,SAAS,KAAK,kBAAkB,WAE/B;IAED,WAAoB,MAAM,kCAEzB;IAED,cAAuB,eAAe,yCAErC;CACD;AAED,OAAO,CAAC,MAAM,CAAC;IACd,UAAU,qBAAqB;QAC9B,mBAAmB,EAAE,aAAa,CAAA;KAClC;CACD"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { InputFieldComponent } from './InputFieldComponent.js';
|
|
2
|
+
/**
|
|
3
|
+
* @element mo-field-email
|
|
4
|
+
*
|
|
5
|
+
* @attr value - The value of the field.
|
|
6
|
+
*/
|
|
7
|
+
export declare class FieldEmail extends InputFieldComponent<string> {
|
|
8
|
+
value?: string;
|
|
9
|
+
protected valueToInputValue(value?: string): string;
|
|
10
|
+
protected get inputTemplate(): import("lit-html").TemplateResult<1>;
|
|
11
|
+
}
|
|
12
|
+
declare global {
|
|
13
|
+
interface HTMLElementTagNameMap {
|
|
14
|
+
'mo-field-email': FieldEmail;
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=FieldEmail.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FieldEmail.d.ts","sourceRoot":"","sources":["../../../Field/FieldEmail.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAA;AAE9D;;;;GAIG;AACH,qBACa,UAAW,SAAQ,mBAAmB,CAAC,MAAM,CAAC;IACrC,KAAK,CAAC,EAAE,MAAM,CAAA;IAEnC,SAAS,CAAC,iBAAiB,CAAC,KAAK,CAAC,EAAE,MAAM;IAI1C,cAAuB,aAAa,yCAEnC;CACD;AAED,OAAO,CAAC,MAAM,CAAC;IACd,UAAU,qBAAqB;QAC9B,gBAAgB,EAAE,UAAU,CAAA;KAC5B;CACD"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { InputFieldComponent } from './InputFieldComponent.js';
|
|
2
|
+
import '@3mo/localization';
|
|
3
|
+
/**
|
|
4
|
+
* @element mo-field-number
|
|
5
|
+
*
|
|
6
|
+
* @attr value - The value of the field.
|
|
7
|
+
* @attr min - The minimum value of the field.
|
|
8
|
+
* @attr max - The maximum value of the field.
|
|
9
|
+
* @attr step - The step value of the field.
|
|
10
|
+
*/
|
|
11
|
+
export declare class FieldNumber extends InputFieldComponent<number> {
|
|
12
|
+
readonly selectOnFocus = true;
|
|
13
|
+
value?: number;
|
|
14
|
+
min?: number;
|
|
15
|
+
max?: number;
|
|
16
|
+
step?: number;
|
|
17
|
+
protected readonly format: (value: number) => string;
|
|
18
|
+
protected valueToInputValue(value?: number): string;
|
|
19
|
+
protected get inputTemplate(): import("lit-html").TemplateResult<1>;
|
|
20
|
+
private getValue;
|
|
21
|
+
private inRange;
|
|
22
|
+
}
|
|
23
|
+
declare global {
|
|
24
|
+
interface HTMLElementTagNameMap {
|
|
25
|
+
'mo-field-number': FieldNumber;
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
//# sourceMappingURL=FieldNumber.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FieldNumber.d.ts","sourceRoot":"","sources":["../../../Field/FieldNumber.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAA;AAC9D,OAAO,mBAAmB,CAAA;AAE1B;;;;;;;GAOG;AACH,qBACa,WAAY,SAAQ,mBAAmB,CAAC,MAAM,CAAC;IAC3D,SAAkB,aAAa,QAAO;IAEK,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,IAAI,CAAC,EAAE,MAAM,CAAA;IAExD,SAAS,CAAC,QAAQ,CAAC,MAAM,UAAW,MAAM,YAAmB;IAE7D,SAAS,CAAC,iBAAiB,CAAC,KAAK,CAAC,EAAE,MAAM;IAI1C,cAAuB,aAAa,yCAEnC;IAED,OAAO,CAAC,QAAQ;IAKhB,OAAO,CAAC,OAAO;CASf;AAED,OAAO,CAAC,MAAM,CAAC;IACd,UAAU,qBAAqB;QAC9B,iBAAiB,EAAE,WAAW,CAAA;KAC9B;CACD"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { FieldText, FieldTextAutoComplete } from './FieldText.js';
|
|
2
|
+
/**
|
|
3
|
+
* @element mo-field-password
|
|
4
|
+
*
|
|
5
|
+
* @attr autoComplete
|
|
6
|
+
*/
|
|
7
|
+
export declare class FieldPassword extends FieldText {
|
|
8
|
+
protected readonly type = "password";
|
|
9
|
+
autoComplete: FieldTextAutoComplete;
|
|
10
|
+
protected get lengthTemplate(): import("lit-html").HTMLTemplateResult;
|
|
11
|
+
}
|
|
12
|
+
declare global {
|
|
13
|
+
interface HTMLElementTagNameMap {
|
|
14
|
+
'mo-field-password': FieldText;
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=FieldPassword.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FieldPassword.d.ts","sourceRoot":"","sources":["../../../Field/FieldPassword.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAA;AAEjE;;;;GAIG;AACH,qBACa,aAAc,SAAQ,SAAS;IAC3C,mBAA4B,IAAI,cAAa;IAExB,YAAY,EAAE,qBAAqB,CAAqB;IAE7E,cAAuB,cAAc,0CAEpC;CACD;AAED,OAAO,CAAC,MAAM,CAAC;IACd,UAAU,qBAAqB;QAC9B,mBAAmB,EAAE,SAAS,CAAA;KAC9B;CACD"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { FieldNumber } from './FieldNumber.js';
|
|
2
|
+
/**
|
|
3
|
+
* @element mo-field-percent
|
|
4
|
+
* @attr percentSign - The percent sign of the field.
|
|
5
|
+
*/
|
|
6
|
+
export declare class FieldPercent extends FieldNumber {
|
|
7
|
+
percentSign: string;
|
|
8
|
+
min: number;
|
|
9
|
+
max: number;
|
|
10
|
+
protected readonly format: (value: number) => string;
|
|
11
|
+
static get styles(): import("@a11d/lit").CSSResult;
|
|
12
|
+
protected get endSlotTemplate(): import("lit-html").TemplateResult<1>;
|
|
13
|
+
}
|
|
14
|
+
declare global {
|
|
15
|
+
interface HTMLElementTagNameMap {
|
|
16
|
+
'mo-field-percent': FieldPercent;
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=FieldPercent.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FieldPercent.d.ts","sourceRoot":"","sources":["../../../Field/FieldPercent.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAE9C;;;GAGG;AACH,qBACa,YAAa,SAAQ,WAAW;IAChC,WAAW,SAAM;IACpB,GAAG,SAAI;IACP,GAAG,SAAM;IAElB,mBAA4B,MAAM,UAAW,MAAM,YAIjD;IAEF,WAAoB,MAAM,kCAEzB;IAED,cAAuB,eAAe,yCAErC;CACD;AAED,OAAO,CAAC,MAAM,CAAC;IACd,UAAU,qBAAqB;QAC9B,kBAAkB,EAAE,YAAY,CAAA;KAChC;CACD"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { FieldText } from './FieldText.js';
|
|
2
|
+
/**
|
|
3
|
+
* @element mo-field-search
|
|
4
|
+
*/
|
|
5
|
+
export declare class FieldSearch extends FieldText {
|
|
6
|
+
readonly inputMode = "search";
|
|
7
|
+
protected get startSlotTemplate(): import("lit-html").TemplateResult<1>;
|
|
8
|
+
protected get endSlotTemplate(): import("lit-html").TemplateResult<1>;
|
|
9
|
+
protected clear(): void;
|
|
10
|
+
}
|
|
11
|
+
declare global {
|
|
12
|
+
interface HTMLElementTagNameMap {
|
|
13
|
+
'mo-field-search': FieldSearch;
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=FieldSearch.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FieldSearch.d.ts","sourceRoot":"","sources":["../../../Field/FieldSearch.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAE1C;;GAEG;AACH,qBACa,WAAY,SAAQ,SAAS;IACzC,SAAkB,SAAS,YAAW;IAEtC,cAAuB,iBAAiB,yCAEvC;IAED,cAAuB,eAAe,yCAErC;IAED,SAAS,CAAC,KAAK;CAMf;AAED,OAAO,CAAC,MAAM,CAAC;IACd,UAAU,qBAAqB;QAC9B,iBAAiB,EAAE,WAAW,CAAA;KAC9B;CACD"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { InputFieldComponent } from './InputFieldComponent.js';
|
|
2
|
+
export type FieldTextAutoComplete = 'on' | 'off' | 'name' | 'honorific-prefix' | 'given-name' | 'additional-name' | 'family-name' | 'honorific-suffix' | 'nickname' | 'username' | 'one-time-code' | 'organization-title' | 'organization' | 'street-address' | 'address-line1' | 'address-line2' | 'address-line3' | 'address-level4' | 'address-level3' | 'address-level2' | 'address-level1' | 'country' | 'country-name' | 'postal-code' | 'cc-name' | 'cc-given-name' | 'cc-additional-name' | 'cc-family-name' | 'cc-number' | 'cc-exp' | 'cc-exp-month' | 'cc-exp-year' | 'cc-csc' | 'cc-type' | 'transaction-currency' | 'transaction-amount' | 'language' | 'bday' | 'bday-day' | 'bday-month' | 'bday-year' | 'sex' | 'url' | 'photo' | 'tel' | 'tel-country-code' | 'tel-national' | 'tel-area-code' | 'tel-local' | 'tel-local-prefix' | 'tel-local-suffix' | 'tel-extension' | 'impp' | 'current-password' | 'new-password';
|
|
3
|
+
/**
|
|
4
|
+
* @element mo-field-text
|
|
5
|
+
*
|
|
6
|
+
* @attr value
|
|
7
|
+
* @attr minLength
|
|
8
|
+
* @attr maxLength
|
|
9
|
+
* @attr pattern
|
|
10
|
+
* @attr autoComplete
|
|
11
|
+
*/
|
|
12
|
+
export declare class FieldText extends InputFieldComponent<string> {
|
|
13
|
+
protected readonly type: string;
|
|
14
|
+
value?: string;
|
|
15
|
+
minLength?: number;
|
|
16
|
+
maxLength?: number;
|
|
17
|
+
pattern?: string;
|
|
18
|
+
autoComplete?: FieldTextAutoComplete;
|
|
19
|
+
protected valueToInputValue(value?: string): string;
|
|
20
|
+
protected get inputTemplate(): import("lit-html").TemplateResult<1>;
|
|
21
|
+
protected get endSlotTemplate(): import("lit-html").TemplateResult<1>;
|
|
22
|
+
protected get lengthTemplate(): import("lit-html").TemplateResult<1>;
|
|
23
|
+
}
|
|
24
|
+
declare global {
|
|
25
|
+
interface HTMLElementTagNameMap {
|
|
26
|
+
'mo-field-text': FieldText;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=FieldText.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FieldText.d.ts","sourceRoot":"","sources":["../../../Field/FieldText.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAA;AAE9D,MAAM,MAAM,qBAAqB,GAC9B,IAAI,GACJ,KAAK,GACL,MAAM,GACN,kBAAkB,GAClB,YAAY,GACZ,iBAAiB,GACjB,aAAa,GACb,kBAAkB,GAClB,UAAU,GACV,UAAU,GACV,eAAe,GACf,oBAAoB,GACpB,cAAc,GACd,gBAAgB,GAChB,eAAe,GACf,eAAe,GACf,eAAe,GACf,gBAAgB,GAChB,gBAAgB,GAChB,gBAAgB,GAChB,gBAAgB,GAChB,SAAS,GACT,cAAc,GACd,aAAa,GACb,SAAS,GACT,eAAe,GACf,oBAAoB,GACpB,gBAAgB,GAChB,WAAW,GACX,QAAQ,GACR,cAAc,GACd,aAAa,GACb,QAAQ,GACR,SAAS,GACT,sBAAsB,GACtB,oBAAoB,GACpB,UAAU,GACV,MAAM,GACN,UAAU,GACV,YAAY,GACZ,WAAW,GACX,KAAK,GACL,KAAK,GACL,OAAO,GACP,KAAK,GACL,kBAAkB,GAClB,cAAc,GACd,eAAe,GACf,WAAW,GACX,kBAAkB,GAClB,kBAAkB,GAClB,eAAe,GACf,MAAM,GACN,kBAAkB,GAClB,cAAc,CAAA;AAEjB;;;;;;;;GAQG;AACH,qBACa,SAAU,SAAQ,mBAAmB,CAAC,MAAM,CAAC;IACzD,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAS;IAE5B,KAAK,CAAC,EAAE,MAAM,CAAA;IACE,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClC,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,YAAY,CAAC,EAAE,qBAAqB,CAAA;IAEhD,SAAS,CAAC,iBAAiB,CAAC,KAAK,CAAC,EAAE,MAAM;IAI1C,cAAuB,aAAa,yCAEnC;IAED,cAAuB,eAAe,yCAErC;IAED,SAAS,KAAK,cAAc,yCAM3B;CACD;AAED,OAAO,CAAC,MAAM,CAAC;IACd,UAAU,qBAAqB;QAC9B,eAAe,EAAE,SAAS,CAAA;KAC1B;CACD"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { InputFieldComponent } from './InputFieldComponent.js';
|
|
2
|
+
/**
|
|
3
|
+
* @element mo-field-text-area
|
|
4
|
+
*
|
|
5
|
+
* @attr value
|
|
6
|
+
* @attr minLength
|
|
7
|
+
* @attr maxLength
|
|
8
|
+
* @attr pattern
|
|
9
|
+
* @attr autoComplete
|
|
10
|
+
*/
|
|
11
|
+
export declare class FieldTextArea extends InputFieldComponent<string> {
|
|
12
|
+
value?: string;
|
|
13
|
+
minLength?: number;
|
|
14
|
+
maxLength?: number;
|
|
15
|
+
protected valueToInputValue(value?: string): string;
|
|
16
|
+
static get styles(): import("@a11d/lit").CSSResult;
|
|
17
|
+
protected get inputTemplate(): import("lit-html").TemplateResult<1>;
|
|
18
|
+
protected get endSlotTemplate(): import("lit-html").TemplateResult<1>;
|
|
19
|
+
protected get lengthTemplate(): import("lit-html").TemplateResult<1>;
|
|
20
|
+
}
|
|
21
|
+
declare global {
|
|
22
|
+
interface HTMLElementTagNameMap {
|
|
23
|
+
'mo-field-text-area': FieldTextArea;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=FieldTextArea.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FieldTextArea.d.ts","sourceRoot":"","sources":["../../../Field/FieldTextArea.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAA;AAE9D;;;;;;;;GAQG;AACH,qBACa,aAAc,SAAQ,mBAAmB,CAAC,MAAM,CAAC;IACjD,KAAK,CAAC,EAAE,MAAM,CAAA;IACE,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;IAE9C,SAAS,CAAC,iBAAiB,CAAC,KAAK,CAAC,EAAE,MAAM;IAI1C,WAAoB,MAAM,kCAEzB;IAED,cAAuB,aAAa,yCAEnC;IAED,cAAuB,eAAe,yCAErC;IAED,SAAS,KAAK,cAAc,yCAM3B;CACD;AAED,OAAO,CAAC,MAAM,CAAC;IACd,UAAU,qBAAqB;QAC9B,oBAAoB,EAAE,aAAa,CAAA;KACnC;CACD"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { PropertyValues } from '@a11d/lit';
|
|
2
|
+
import { FieldComponent } from './FieldComponent.js';
|
|
3
|
+
/**
|
|
4
|
+
* @attr selectOnFocus - Selects the input text when the field receives focus.
|
|
5
|
+
* @attr dense - Whether the field is dense
|
|
6
|
+
*
|
|
7
|
+
* @csspart input - The input element.
|
|
8
|
+
*/
|
|
9
|
+
export declare abstract class InputFieldComponent<T> extends FieldComponent<T> {
|
|
10
|
+
selectOnFocus: boolean;
|
|
11
|
+
dense: boolean;
|
|
12
|
+
protected inputStringValue?: string;
|
|
13
|
+
readonly inputElement: HTMLInputElement;
|
|
14
|
+
get isPopulated(): boolean;
|
|
15
|
+
protected get isDense(): boolean;
|
|
16
|
+
protected update(changedProperties: PropertyValues<this>): void;
|
|
17
|
+
protected handleInput(value?: T, e?: Event): void;
|
|
18
|
+
protected handleChange(value?: T, event?: Event): void;
|
|
19
|
+
protected abstract valueToInputValue(value?: T): string | undefined;
|
|
20
|
+
protected handleFocus(): void;
|
|
21
|
+
blur(): void;
|
|
22
|
+
focus(): void;
|
|
23
|
+
select(): void;
|
|
24
|
+
setSelectionRange(...args: Parameters<HTMLInputElement['setSelectionRange']>): void;
|
|
25
|
+
setRangeText(...args: Parameters<HTMLInputElement['setRangeText']>): void;
|
|
26
|
+
setCustomValidity(error: string): void;
|
|
27
|
+
checkValidity(): Promise<boolean>;
|
|
28
|
+
reportValidity(): void;
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=InputFieldComponent.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"InputFieldComponent.d.ts","sourceRoot":"","sources":["../../../Field/InputFieldComponent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAA0B,MAAM,WAAW,CAAA;AAClE,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAEpD;;;;;GAKG;AACH,8BAAsB,mBAAmB,CAAC,CAAC,CAAE,SAAQ,cAAc,CAAC,CAAC,CAAC;IACzB,aAAa,UAAQ;IACpC,KAAK,UAAQ;IAEjC,SAAS,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAA;IAErB,QAAQ,CAAC,YAAY,EAAG,gBAAgB,CAAA;IAE/D,IAAa,WAAW,YAEvB;IAED,cAAuB,OAAO,YAE7B;cAEkB,MAAM,CAAC,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC;cAO9C,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK;cAKhC,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,EAAE,KAAK;IAKxD,SAAS,CAAC,QAAQ,CAAC,iBAAiB,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,MAAM,GAAG,SAAS;cAEhD,WAAW;IAOrB,IAAI;IAIJ,KAAK;IAId,MAAM;IAIN,iBAAiB,CAAC,GAAG,IAAI,EAAE,UAAU,CAAC,gBAAgB,CAAC,mBAAmB,CAAC,CAAC;IAI5E,YAAY,CAAC,GAAG,IAAI,EAAE,UAAU,CAAC,gBAAgB,CAAC,cAAc,CAAC,CAAC;IAIzD,iBAAiB,CAAC,KAAK,EAAE,MAAM;IAI/B,aAAa;IAIb,cAAc;CAGvB"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import '@3mo/localization';
|
|
2
|
+
export * from './FieldComponent.js';
|
|
3
|
+
export * from './InputFieldComponent.js';
|
|
4
|
+
export * from './Field.js';
|
|
5
|
+
export * from './FieldText.js';
|
|
6
|
+
export * from './FieldPassword.js';
|
|
7
|
+
export * from './FieldNumber.js';
|
|
8
|
+
export * from './FieldPercent.js';
|
|
9
|
+
export * from './FieldCurrency.js';
|
|
10
|
+
export * from './FieldSearch.js';
|
|
11
|
+
export * from './FieldEmail.js';
|
|
12
|
+
export * from './FieldTextArea.js';
|
|
13
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../Field/index.ts"],"names":[],"mappings":"AAAA,OAAO,mBAAmB,CAAA;AAC1B,cAAc,qBAAqB,CAAA;AACnC,cAAc,0BAA0B,CAAA;AACxC,cAAc,YAAY,CAAA;AAC1B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,oBAAoB,CAAA;AAClC,cAAc,kBAAkB,CAAA;AAChC,cAAc,mBAAmB,CAAA;AACjC,cAAc,oBAAoB,CAAA;AAClC,cAAc,kBAAkB,CAAA;AAChC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,oBAAoB,CAAA"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { ClassInfo } from '@a11d/lit';
|
|
2
|
+
import { CalendarSelectionAdapter } from './calendar/index.js';
|
|
3
|
+
import { FieldDateBase } from './FieldDateBase.js';
|
|
4
|
+
declare class DateCalendarSelectionAdapter extends CalendarSelectionAdapter<DateTime> {
|
|
5
|
+
getDayTemplate(day: DateTime, classInfo: ClassInfo): import("lit-html").TemplateResult<1>;
|
|
6
|
+
getNavigatingDate(value?: DateTime): import("@3mo/date-time/DateTime.js").DateTime;
|
|
7
|
+
}
|
|
8
|
+
/** @element mo-field-date */
|
|
9
|
+
export declare class FieldDate extends FieldDateBase<Date | undefined> {
|
|
10
|
+
protected calendarSelectionAdapterConstructor: typeof DateCalendarSelectionAdapter;
|
|
11
|
+
value?: Date;
|
|
12
|
+
protected handleCalendarChange(value?: Date): void;
|
|
13
|
+
protected valueToInputValue(value: Date | undefined): string;
|
|
14
|
+
protected inputValueToValue(value: string): import("@3mo/date-time/DateTime.js").DateTime | undefined;
|
|
15
|
+
}
|
|
16
|
+
declare global {
|
|
17
|
+
interface HTMLElementTagNameMap {
|
|
18
|
+
'mo-field-date': FieldDate;
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
export {};
|
|
22
|
+
//# sourceMappingURL=FieldDate.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FieldDate.d.ts","sourceRoot":"","sources":["../FieldDate.ts"],"names":[],"mappings":"AACA,OAAO,EAAkB,SAAS,EAAuB,MAAM,WAAW,CAAA;AAE1E,OAAO,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAA;AAC9D,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAElD,cAAM,4BAA6B,SAAQ,wBAAwB,CAAC,QAAQ,CAAC;IAC5E,cAAc,CAAC,GAAG,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS;IASlD,iBAAiB,CAAC,KAAK,CAAC,EAAE,QAAQ;CAIlC;AAED,6BAA6B;AAC7B,qBACa,SAAU,SAAQ,aAAa,CAAC,IAAI,GAAG,SAAS,CAAC;IAC7D,SAAS,CAAC,mCAAmC,sCAA+B;IAEhD,KAAK,CAAC,EAAE,IAAI,CAAA;cAErB,oBAAoB,CAAC,KAAK,CAAC,EAAE,IAAI;IAKpD,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,eAAe,EAAE,SAAS,CAAA;KAC1B;CACD"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { __decorate } from "tslib";
|
|
2
|
+
import { html, classMap, component, property } from '@a11d/lit';
|
|
3
|
+
import { DateParser } from './DateParser.js';
|
|
4
|
+
import { CalendarSelectionAdapter } from './calendar/index.js';
|
|
5
|
+
import { FieldDateBase } from './FieldDateBase.js';
|
|
6
|
+
class DateCalendarSelectionAdapter extends CalendarSelectionAdapter {
|
|
7
|
+
getDayTemplate(day, classInfo) {
|
|
8
|
+
var _a, _b;
|
|
9
|
+
return html `
|
|
10
|
+
<mo-flex
|
|
11
|
+
class=${classMap(Object.assign(Object.assign({}, classInfo), { selected: (_b = (_a = this.calendar.value) === null || _a === void 0 ? void 0 : _a.equals(day)) !== null && _b !== void 0 ? _b : false }))}
|
|
12
|
+
@click=${() => this.select(day)}
|
|
13
|
+
>${day.format({ day: 'numeric' })}</mo-flex>
|
|
14
|
+
`;
|
|
15
|
+
}
|
|
16
|
+
getNavigatingDate(value) {
|
|
17
|
+
const date = value !== null && value !== void 0 ? value : new DateTime();
|
|
18
|
+
return new DateTime(date.year, date.month);
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
/** @element mo-field-date */
|
|
22
|
+
let FieldDate = class FieldDate extends FieldDateBase {
|
|
23
|
+
constructor() {
|
|
24
|
+
super(...arguments);
|
|
25
|
+
this.calendarSelectionAdapterConstructor = DateCalendarSelectionAdapter;
|
|
26
|
+
}
|
|
27
|
+
handleCalendarChange(value) {
|
|
28
|
+
super.handleCalendarChange(value);
|
|
29
|
+
this.open = false;
|
|
30
|
+
}
|
|
31
|
+
valueToInputValue(value) {
|
|
32
|
+
var _a;
|
|
33
|
+
return value ? (_a = value.formatAsDate()) !== null && _a !== void 0 ? _a : '' : '';
|
|
34
|
+
}
|
|
35
|
+
inputValueToValue(value) {
|
|
36
|
+
return value ? DateParser.parse(value, this.shortcutReferenceDate) : undefined;
|
|
37
|
+
}
|
|
38
|
+
};
|
|
39
|
+
__decorate([
|
|
40
|
+
property({ type: Object })
|
|
41
|
+
], FieldDate.prototype, "value", void 0);
|
|
42
|
+
FieldDate = __decorate([
|
|
43
|
+
component('mo-field-date')
|
|
44
|
+
], FieldDate);
|
|
45
|
+
export { FieldDate };
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { InputFieldComponent } from '@3mo/field';
|
|
2
|
+
import { MaterialIcon } from '@3mo/icon';
|
|
3
|
+
import { CalendarSelectionAdapter, SelectableCalendar } from './calendar/index.js';
|
|
4
|
+
/**
|
|
5
|
+
* @attr open - Whether the date picker is open
|
|
6
|
+
* @attr hideDatePicker - Hide the date picker
|
|
7
|
+
* @attr shortcutReferenceDate - The date to use as a reference for shortcuts
|
|
8
|
+
*/
|
|
9
|
+
export declare abstract class FieldDateBase<T> extends InputFieldComponent<T> {
|
|
10
|
+
open: boolean;
|
|
11
|
+
hideDatePicker: boolean;
|
|
12
|
+
shortcutReferenceDate: import("@3mo/date-time/DateTime.js").DateTime;
|
|
13
|
+
protected readonly calendarElement?: SelectableCalendar<T>;
|
|
14
|
+
protected readonly abstract calendarSelectionAdapterConstructor: Constructor<CalendarSelectionAdapter<T>>;
|
|
15
|
+
protected handleChange(value?: T, e?: Event): void;
|
|
16
|
+
static get styles(): import("@a11d/lit").CSSResult;
|
|
17
|
+
protected get endSlotTemplate(): import("lit-html").TemplateResult<1>;
|
|
18
|
+
protected get inputTemplate(): import("lit-html").TemplateResult<1>;
|
|
19
|
+
protected abstract inputValueToValue(value: string): T | undefined;
|
|
20
|
+
protected abstract valueToInputValue(value: T | undefined): string;
|
|
21
|
+
protected get calendarIconButtonTemplate(): import("lit-html").TemplateResult<1>;
|
|
22
|
+
protected get menuContentTemplate(): import("lit-html").TemplateResult<1>;
|
|
23
|
+
protected readonly calendarIconButtonIcon: MaterialIcon;
|
|
24
|
+
protected handleCalendarChange(value: T): void;
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=FieldDateBase.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FieldDateBase.d.ts","sourceRoot":"","sources":["../FieldDateBase.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAA;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAA;AACxC,OAAO,EAAE,wBAAwB,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAA;AAElF;;;;GAIG;AACH,8BAAsB,aAAa,CAAC,CAAC,CAAE,SAAQ,mBAAmB,CAAC,CAAC,CAAC;IACxB,IAAI,UAAQ;IAC3B,cAAc,UAAQ;IACvB,qBAAqB,gDAAe;IAE/B,SAAS,CAAC,QAAQ,CAAC,eAAe,CAAC,EAAE,kBAAkB,CAAC,CAAC,CAAC,CAAA;IAE3F,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,mCAAmC,EAAE,WAAW,CAAC,wBAAwB,CAAC,CAAC,CAAC,CAAC,CAAA;cAEtF,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK;IAKpD,WAAoB,MAAM,kCAUzB;IAED,cAAuB,eAAe,yCAKrC;IAED,cAAuB,aAAa,yCAYnC;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,yCAkBvC;IAED,SAAS,KAAK,mBAAmB,yCAQhC;IAED,SAAS,CAAC,QAAQ,CAAC,sBAAsB,EAAE,YAAY,CAAU;IAEjE,SAAS,CAAC,oBAAoB,CAAC,KAAK,EAAE,CAAC;CAIvC"}
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
import { __decorate } from "tslib";
|
|
2
|
+
import { css, html, live, nothing, property, query, style } from '@a11d/lit';
|
|
3
|
+
import { InputFieldComponent } from '@3mo/field';
|
|
4
|
+
/**
|
|
5
|
+
* @attr open - Whether the date picker is open
|
|
6
|
+
* @attr hideDatePicker - Hide the date picker
|
|
7
|
+
* @attr shortcutReferenceDate - The date to use as a reference for shortcuts
|
|
8
|
+
*/
|
|
9
|
+
export class FieldDateBase extends InputFieldComponent {
|
|
10
|
+
constructor() {
|
|
11
|
+
super(...arguments);
|
|
12
|
+
this.open = false;
|
|
13
|
+
this.hideDatePicker = false;
|
|
14
|
+
this.shortcutReferenceDate = new DateTime;
|
|
15
|
+
this.calendarIconButtonIcon = 'today';
|
|
16
|
+
}
|
|
17
|
+
handleChange(value, e) {
|
|
18
|
+
super.handleChange(value, e);
|
|
19
|
+
this.inputStringValue = this.valueToInputValue(value);
|
|
20
|
+
}
|
|
21
|
+
static get styles() {
|
|
22
|
+
return css `
|
|
23
|
+
mo-popover {
|
|
24
|
+
background: var(--mo-color-background);
|
|
25
|
+
box-shadow: var(--mo-shadow);
|
|
26
|
+
border-radius: var(--mo-border-radius);
|
|
27
|
+
color: var(--mo-color-foreground);
|
|
28
|
+
padding: 10px 4px;
|
|
29
|
+
}
|
|
30
|
+
`;
|
|
31
|
+
}
|
|
32
|
+
get endSlotTemplate() {
|
|
33
|
+
return html `
|
|
34
|
+
${super.endSlotTemplate}
|
|
35
|
+
${this.calendarIconButtonTemplate}
|
|
36
|
+
`;
|
|
37
|
+
}
|
|
38
|
+
get inputTemplate() {
|
|
39
|
+
return html `
|
|
40
|
+
<input
|
|
41
|
+
part='input'
|
|
42
|
+
?readonly=${this.readonly}
|
|
43
|
+
?required=${this.required}
|
|
44
|
+
?disabled=${this.disabled}
|
|
45
|
+
.value=${live(this.inputStringValue || '')}
|
|
46
|
+
@input=${(e) => this.handleInput(this.inputValueToValue(this.inputElement.value || ''), e)}
|
|
47
|
+
@change=${(e) => this.handleChange(this.inputValueToValue(this.inputElement.value || ''), e)}
|
|
48
|
+
>
|
|
49
|
+
`;
|
|
50
|
+
}
|
|
51
|
+
get calendarIconButtonTemplate() {
|
|
52
|
+
return html `
|
|
53
|
+
${this.hideDatePicker ? nothing : html `
|
|
54
|
+
<mo-icon-button tabindex='-1' dense slot='end'
|
|
55
|
+
icon=${this.calendarIconButtonIcon}
|
|
56
|
+
${style({ color: this.open ? 'var(--mo-color-accent)' : 'var(--mo-color-gray)' })}
|
|
57
|
+
@click=${() => this.open = !this.open}>
|
|
58
|
+
</mo-icon-button>
|
|
59
|
+
`}
|
|
60
|
+
|
|
61
|
+
${this.hideDatePicker ? nothing : html `
|
|
62
|
+
<mo-popover tabindex='-1' slot='end'
|
|
63
|
+
.anchor=${this}
|
|
64
|
+
?open=${this.open}
|
|
65
|
+
@openChange=${(e) => this.open = e.detail}
|
|
66
|
+
>${!this.open ? nothing : this.menuContentTemplate}</mo-popover>
|
|
67
|
+
`}
|
|
68
|
+
`;
|
|
69
|
+
}
|
|
70
|
+
get menuContentTemplate() {
|
|
71
|
+
return html `
|
|
72
|
+
<mo-selectable-calendar
|
|
73
|
+
.selectionAdapterConstructor=${this.calendarSelectionAdapterConstructor}
|
|
74
|
+
.value=${this.value}
|
|
75
|
+
@change=${(e) => this.handleCalendarChange(e.detail)}
|
|
76
|
+
></mo-selectable-calendar>
|
|
77
|
+
`;
|
|
78
|
+
}
|
|
79
|
+
handleCalendarChange(value) {
|
|
80
|
+
this.value = value;
|
|
81
|
+
this.change.dispatch(value);
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
__decorate([
|
|
85
|
+
property({ type: Boolean, reflect: true })
|
|
86
|
+
], FieldDateBase.prototype, "open", void 0);
|
|
87
|
+
__decorate([
|
|
88
|
+
property({ type: Boolean })
|
|
89
|
+
], FieldDateBase.prototype, "hideDatePicker", void 0);
|
|
90
|
+
__decorate([
|
|
91
|
+
property({ type: Object })
|
|
92
|
+
], FieldDateBase.prototype, "shortcutReferenceDate", void 0);
|
|
93
|
+
__decorate([
|
|
94
|
+
query('mo-selectable-calendar')
|
|
95
|
+
], FieldDateBase.prototype, "calendarElement", void 0);
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { ClassInfo } from '@a11d/lit';
|
|
2
|
+
import { MaterialIcon } from '@3mo/icon';
|
|
3
|
+
import { FieldDateBase } from './FieldDateBase.js';
|
|
4
|
+
import { CalendarSelectionAdapter } from './calendar/index.js';
|
|
5
|
+
declare const enum DateRangeCalendarSelectionAdapterCurrentSelection {
|
|
6
|
+
StartDate = 0,
|
|
7
|
+
EndDate = 1
|
|
8
|
+
}
|
|
9
|
+
declare class DateRangeCalendarSelectionAdapter extends CalendarSelectionAdapter<DateTimeRange> {
|
|
10
|
+
currentSelection: DateRangeCalendarSelectionAdapterCurrentSelection;
|
|
11
|
+
get styles(): import("@a11d/lit").CSSResult;
|
|
12
|
+
getDayTemplate(day: DateTime, classInfo: ClassInfo): import("lit-html").TemplateResult<1>;
|
|
13
|
+
getNavigatingDate(value?: DateTimeRange): import("@3mo/date-time/DateTime.js").DateTime;
|
|
14
|
+
private handleClick;
|
|
15
|
+
}
|
|
16
|
+
/** @element mo-field-date-range */
|
|
17
|
+
export declare class FieldDateRange extends FieldDateBase<DateTimeRange | undefined> {
|
|
18
|
+
private get currentSelection();
|
|
19
|
+
private set currentSelection(value);
|
|
20
|
+
protected calendarSelectionAdapterConstructor: typeof DateRangeCalendarSelectionAdapter;
|
|
21
|
+
value?: DateTimeRange;
|
|
22
|
+
protected calendarIconButtonIcon: MaterialIcon;
|
|
23
|
+
protected handleCalendarChange(value?: DateTimeRange): void;
|
|
24
|
+
protected get menuContentTemplate(): import("lit-html").TemplateResult<1>;
|
|
25
|
+
protected valueToInputValue(value: DateTimeRange | undefined): string;
|
|
26
|
+
protected inputValueToValue(value: string): import("@3mo/date-time/DateTimeRange.js").DateTimeRange | undefined;
|
|
27
|
+
}
|
|
28
|
+
declare global {
|
|
29
|
+
interface HTMLElementTagNameMap {
|
|
30
|
+
'mo-field-date-range': FieldDateRange;
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
export {};
|
|
34
|
+
//# sourceMappingURL=FieldDateRange.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FieldDateRange.d.ts","sourceRoot":"","sources":["../FieldDateRange.ts"],"names":[],"mappings":"AACA,OAAO,EAA0D,SAAS,EAAE,MAAM,WAAW,CAAA;AAC7F,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAA;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAClD,OAAO,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAA;AAG9D,mBAAW,iDAAiD;IAAG,SAAS,IAAA;IAAE,OAAO,IAAA;CAAE;AAEnF,cAAM,iCAAkC,SAAQ,wBAAwB,CAAC,aAAa,CAAC;IACtF,gBAAgB,oDAA8D;IAE9E,IAAa,MAAM,kCAsBlB;IAED,cAAc,CAAC,GAAG,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS;IAmBlD,iBAAiB,CAAC,KAAK,CAAC,EAAE,aAAa;IAKvC,OAAO,CAAC,WAAW;CAcnB;AAED,mCAAmC;AACnC,qBACa,cAAe,SAAQ,aAAa,CAAC,aAAa,GAAG,SAAS,CAAC;IAE3E,OAAO,KAAK,gBAAgB,GAAwL;IACpN,OAAO,KAAK,gBAAgB,QAM3B;IAED,SAAS,CAAC,mCAAmC,2CAAoC;IAErD,KAAK,CAAC,EAAE,aAAa,CAAA;IAEjD,UAAmB,sBAAsB,EAAE,YAAY,CAAe;cAEnD,oBAAoB,CAAC,KAAK,CAAC,EAAE,aAAa;IAO7D,cAAuB,mBAAmB,yCAmBzC;IAED,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,qBAAqB,EAAE,cAAc,CAAA;KACrC;CACD"}
|