@tylertech/forge 3.1.3 → 3.3.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/custom-elements.json +239 -60
- package/dist/chips/forge-chips.css +1 -0
- package/dist/field/forge-field.css +2 -0
- package/dist/inline-message/forge-inline-message.css +2 -0
- package/dist/lib.js +1 -1
- package/dist/lib.js.map +4 -4
- package/dist/vscode.css-custom-data.json +5 -0
- package/dist/vscode.html-custom-data.json +22 -2
- package/esm/app-bar/app-bar/app-bar.d.ts +2 -0
- package/esm/app-bar/app-bar/app-bar.js +2 -0
- package/esm/autocomplete/autocomplete-adapter.js +1 -7
- package/esm/button/base/base-button-adapter.js +1 -1
- package/esm/calendar/calendar-adapter.d.ts +6 -6
- package/esm/calendar/calendar-adapter.js +45 -11
- package/esm/calendar/calendar-constants.d.ts +20 -0
- package/esm/calendar/calendar-constants.js +22 -0
- package/esm/calendar/calendar-core.d.ts +3 -3
- package/esm/calendar/calendar-core.js +5 -17
- package/esm/calendar/calendar-dom-utils.js +10 -4
- package/esm/calendar/calendar-dropdown/calendar-dropdown-constants.d.ts +2 -0
- package/esm/calendar/calendar.d.ts +9 -0
- package/esm/calendar/calendar.js +9 -0
- package/esm/chip-field/chip-field.js +1 -1
- package/esm/chips/chip/chip-core.js +0 -1
- package/esm/chips/chip/chip.d.ts +1 -0
- package/esm/chips/chip/chip.js +2 -1
- package/esm/circular-progress/circular-progress.js +1 -1
- package/esm/date-picker/base/base-date-picker-adapter.d.ts +3 -0
- package/esm/date-picker/base/base-date-picker-adapter.js +56 -0
- package/esm/date-picker/base/base-date-picker-constants.d.ts +11 -0
- package/esm/date-picker/base/base-date-picker-constants.js +2 -1
- package/esm/date-picker/base/base-date-picker-core.d.ts +4 -1
- package/esm/date-picker/base/base-date-picker-core.js +12 -1
- package/esm/date-picker/base/base-date-picker.d.ts +5 -1
- package/esm/date-picker/base/base-date-picker.js +8 -0
- package/esm/field/field-adapter.d.ts +2 -0
- package/esm/field/field-adapter.js +4 -0
- package/esm/field/field-core.js +1 -0
- package/esm/field/field.js +1 -1
- package/esm/inline-message/inline-message.js +1 -1
- package/esm/paginator/paginator.js +1 -1
- package/esm/select/select/select.js +1 -1
- package/esm/skip-link/skip-link-constants.d.ts +2 -0
- package/esm/skip-link/skip-link-constants.js +2 -1
- package/esm/skip-link/skip-link.d.ts +36 -12
- package/esm/skip-link/skip-link.js +55 -12
- package/esm/tabs/tab/tab-constants.d.ts +1 -3
- package/esm/tabs/tab/tab-constants.js +1 -3
- package/esm/tabs/tab/tab.d.ts +1 -1
- package/esm/tabs/tab/tab.js +1 -1
- package/esm/tabs/tab-bar/tab-bar-core.js +2 -1
- package/esm/tabs/tab-bar/tab-bar.d.ts +1 -1
- package/esm/tabs/tab-bar/tab-bar.js +1 -1
- package/esm/text-field/text-field-adapter.d.ts +8 -4
- package/esm/text-field/text-field-adapter.js +9 -4
- package/esm/text-field/text-field-constants.d.ts +2 -0
- package/esm/text-field/text-field-constants.js +2 -0
- package/esm/text-field/text-field-core.d.ts +2 -0
- package/esm/text-field/text-field-core.js +10 -3
- package/package.json +1 -1
- package/sass/chip-field/chip-field.scss +2 -1
- package/sass/chips/chip/chip.scss +1 -1
- package/sass/circular-progress/_core.scss +2 -2
- package/sass/core/styles/tokens/chips/chip/_tokens.scss +1 -0
- package/sass/field/_core.scss +1 -0
- package/sass/field/field.scss +1 -1
- package/sass/field/forge-field.scss +3 -1
- package/sass/inline-message/_core.scss +2 -0
package/esm/chips/chip/chip.js
CHANGED
|
@@ -15,7 +15,7 @@ import { ChipAdapter } from './chip-adapter';
|
|
|
15
15
|
import { CHIP_CONSTANTS } from './chip-constants';
|
|
16
16
|
import { ChipCore } from './chip-core';
|
|
17
17
|
const template = '<template><div class=\"forge-chip\" part=\"root\"><button type=\"button\" id=\"trigger\" class=\"trigger\" part=\"trigger\"><slot name=\"start\"><slot name=\"leading\"></slot></slot><slot></slot><slot name=\"end\"><slot name=\"trailing\"></slot></slot></button><forge-focus-indicator target=\"trigger\" part=\"focus-indicator\"></forge-focus-indicator><forge-state-layer target=\"trigger\" exportparts=\"surface:state-layer\"></forge-state-layer></div></template>';
|
|
18
|
-
const styles = ':host{display:inline-flex}:host([hidden]){display:none}.forge-chip{--_chip-background:var(--forge-chip-background, transparent);--_chip-color:var(--forge-chip-color, var(--forge-theme-primary, #3f51b5));--_chip-shape:var(--forge-chip-shape, calc(var(--forge-shape-full, 9999px) * var(--forge-shape-factor, 1)));--_chip-spacing:var(--forge-chip-spacing, var(--forge-spacing-xsmall, 8px));--_chip-height:var(--forge-chip-height, 32px);--_chip-padding-inline:var(--forge-chip-padding-inline, var(--forge-spacing-small, 12px));--_chip-padding-block:var(--forge-chip-padding-block, 0);--_chip-cursor:var(--forge-chip-cursor, pointer);--_chip-icon-font-size:var(--forge-chip-icon-font-size, 1.5rem);--_chip-disabled-opacity:var(--forge-chip-disabled-opacity, 0.38);--_chip-disabled-cursor:var(--forge-chip-disabled-cursor, not-allowed);--_chip-dense-height:var(--forge-chip-dense-height, 24px);--_chip-dense-padding-inline:var(--forge-chip-dense-padding-inline, var(--forge-spacing-xsmall, 8px));--_chip-dense-spacing:var(--forge-chip-dense-spacing, var(--forge-spacing-xxsmall, 4px));--_chip-dense-font-size:var(--forge-chip-dense-font-size, 0.75rem);--_chip-dense-font-weight:var(--forge-chip-dense-font-weight, normal);--_chip-dense-focus-indicator-offset:var(--forge-chip-dense-focus-indicator-offset, var(--forge-spacing-xxxsmall, 2px));--_chip-dense-icon-font-size:var(--forge-chip-dense-icon-font-size, 1.25rem);--_chip-remove-button-spacing:var(--forge-chip-remove-button-spacing, var(--forge-spacing-xsmall, 8px) var(--forge-spacing-xxsmall, 4px));--_chip-remove-button-height-dense:var(--forge-chip-remove-button-height-dense, 18px);--_chip-remove-button-icon-size-dense:var(--forge-chip-remove-button-icon-size-dense, 16px);--_chip-remove-button-spacing-dense:var(--forge-chip-remove-button-spacing-dense, 0 var(--forge-spacing-xxxsmall, 2px));--_chip-selected-background:var(--forge-chip-selected-background, var(--forge-theme-primary, #3f51b5));--_chip-selected-color:var(--forge-chip-selected-color, var(--forge-theme-on-primary, #ffffff));--_chip-invalid-color:var(--forge-chip-invalid-color, var(--forge-theme-error, #b00020));--_chip-invalid-selected-background:var(--forge-chip-invalid-selected-background, var(--forge-theme-error, #b00020));--_chip-invalid-selected-color:var(--forge-chip-invalid-selected-color, var(--forge-theme-on-error, #ffffff));--_chip-border-width:var(--forge-chip-border-width, var(--forge-border-thin, 1px));--_chip-border-style:var(--forge-chip-border-style, solid);--_chip-border-color:var(--forge-chip-border-color, var(--_chip-color));--_chip-field-background:var(--forge-chip-field-background, var(--forge-theme-surface-container-low, #ebebeb));--_chip-field-color:var(--forge-chip-field-color, var(--forge-theme-on-surface-container-low, #000000));--_chip-field-shape:var(--forge-chip-field-shape, calc(var(--forge-shape-medium, 4px) * var(--forge-shape-factor, 1)));--_chip-field-border-color:var(--forge-chip-field-border-color, transparent);--_chip-field-cursor:var(--forge-chip-field-cursor, default);--_chip-checkmark-size:var(--forge-chip-checkmark-size, 1.25em);--_chip-checkmark-color:var(--forge-chip-checkmark-color, var(--_chip-color));--_chip-checkmark-spacing:var(--forge-chip-checkmark-spacing, var(--forge-spacing-xsmall, 8px));--_chip-avatar-size:var(--forge-chip-avatar-size, 24px);--_chip-avatar-size-dense:var(--forge-chip-avatar-size-dense, 18px);--_chip-avatar-font-size:var(--forge-chip-avatar-font-size, 0.75rem);--_chip-avatar-font-size-dense:var(--forge-chip-avatar-font-size-dense, 0.5rem);--_chip-avatar-spacing:var(--forge-chip-avatar-spacing, calc(var(--forge-spacing-xsmall, 8px) * -1));--_chip-avatar-spacing-dense:var(--forge-chip-avatar-spacing-dense, calc(var(--forge-spacing-xxsmall, 4px) * -1));--_chip-transition-duration:var(--forge-chip-transition-duration, var(--forge-animation-duration-short3, 150ms));--_chip-transition-easing:var(--forge-chip-transition-easing, var(--forge-animation-easing-standard, cubic-bezier(0.2, 0, 0, 1)));--_chip-checkmark-transition-delay:var(--forge-chip-checkmark-transition-delay, 50ms)}.forge-chip{position:relative;display:inline-flex;align-items:center;box-sizing:border-box;height:var(--_chip-height);border-width:var(--_chip-border-width);border-style:var(--_chip-border-style);border-color:var(--_chip-border-color);border-radius:var(--_chip-shape);background:var(--_chip-background);color:var(--_chip-color);transition-property:background-color,color;transition-duration:var(--_chip-transition-duration);transition-timing-function:var(--_chip-transition-easing)}.trigger{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:var(--forge-typography-button-font-family, var(--forge-typography-font-family, \"Roboto\", sans-serif));font-size:var(--forge-typography-button-font-size, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-button-font-size-scale, .875)));font-weight:var(--forge-typography-button-font-weight,500);line-height:var(--forge-typography-button-line-height, normal);letter-spacing:var(--forge-typography-button-letter-spacing, .0714285714em);text-transform:var(--forge-typography-button-text-transform,inherit);text-decoration:var(--forge-typography-button-text-decoration,inherit);display:inline-flex;align-items:center;justify-content:center;gap:var(--_chip-spacing);box-sizing:border-box;height:100%;padding-inline:var(--_chip-padding-inline);padding-block:var(--_chip-padding-block);cursor:var(--_chip-cursor);z-index:0;text-decoration:none;border:none;background:inherit;color:inherit;-webkit-tap-highlight-color:transparent;border-radius:var(--_chip-shape);outline:0}.remove{padding-inline:var(--_chip-remove-button-spacing);--forge-icon-button-focus-indicator-color:var(--_chip-color)}forge-focus-indicator{--forge-focus-indicator-color:var(--_chip-color);--forge-focus-indicator-shape:var(--_chip-shape)}forge-state-layer{--forge-state-layer-color:var(--_chip-color)}:host([dense]) .forge-chip{--_chip-height:var(--_chip-dense-height);--_chip-padding-inline:var(--_chip-dense-padding-inline);--_chip-spacing:var(--_chip-dense-spacing)}:host([dense]) .trigger{--forge-typography-font-size:var(--_chip-dense-font-size);--forge-typography-font-weight:var(--_chip-dense-font-weight)}:host([dense]) .remove{--_chip-remove-button-spacing:var(--_chip-remove-button-spacing-dense);--forge-icon-button-density-small-size:var(--_chip-remove-button-height-dense);--forge-icon-button-density-small-icon-size:var(--_chip-remove-button-icon-size-dense)}:host([dense]) forge-focus-indicator{--forge-focus-indicator-outward-offset:var(--_chip-dense-focus-indicator-offset)}:host([dense]) ::slotted(forge-avatar){--_chip-avatar-spacing:var(--_chip-avatar-spacing-dense);--forge-typography-font-size:var(--_chip-avatar-font-size-dense);--forge-avatar-size:var(--_chip-avatar-size-dense)}:host([dense]) ::slotted(:is([slot=start],[slot=leading],[slot=end],[slot=trailing])){--_chip-icon-font-size:var(--_chip-dense-icon-font-size)}:host(:is([type=filter],[type=choice],[type=input])[selected]) .forge-chip{--_chip-background:var(--_chip-selected-background);--_chip-color:var(--_chip-selected-color)}:host(:is([type=filter],[type=choice],[type=input])[selected]) forge-focus-indicator{--forge-focus-indicator-color:var(--_chip-background)}:host([invalid]) .forge-chip{--_chip-color:var(--_chip-invalid-color)}:host([invalid]:is([type=filter],[type=choice],[type=input])[selected]) .forge-chip{--_chip-background:var(--_chip-invalid-selected-background);--_chip-color:var(--_chip-invalid-selected-color)}:host([disabled]:not([href])) .forge-chip{opacity:var(--_chip-disabled-opacity)}:host([disabled]:not([href])) .trigger{cursor:var(--_chip-disabled-cursor)}::slotted(:not(forge-avatar):is([slot=start],[slot=leading],[slot=end],[slot=trailing])){font-size:var(--_chip-icon-font-size)}::slotted(forge-avatar:is([slot=start],[slot=leading])){margin-inline-start:var(--_chip-avatar-spacing)}::slotted(forge-avatar:is([slot=end],[slot=trailing])){margin-inline-end:var(--_chip-avatar-spacing)}::slotted(forge-avatar){--forge-typography-font-size:var(--_chip-avatar-font-size);--forge-avatar-size:var(--_chip-avatar-size)}:host([type=filter]) .checkmark{height:var(--_chip-checkmark-size)}:host([type=filter]) .checkmark svg{width:0;height:var(--_chip-checkmark-size);transition-property:width;transition-duration:var(--_chip-transition-duration);transition-timing-function:var(--_chip-transition-easing)}:host([type=filter]) .checkmark svg path{stroke:var(--_chip-checkmark-color);transition-property:stroke-dashoffset;transition-duration:var(--_chip-transition-duration);transition-timing-function:var(--_chip-transition-easing);stroke-width:2px;stroke-dashoffset:29.7833385;stroke-dasharray:29.7833385}:host([type=filter][selected]) .checkmark{padding-inline-start:var(--_chip-checkmark-spacing)}:host([type=filter][selected]) .checkmark svg{width:var(--_chip-checkmark-size)}:host([type=filter][selected]) .checkmark svg path{transition-delay:var(--_chip-checkmark-transition-delay);stroke-dashoffset:0}:host([type=input]) .trigger{padding-inline:var(--_chip-padding-inline) 0}:host([type=field]) .forge-chip{--_chip-background:var(--_chip-field-background);--_chip-color:var(--_chip-field-color);--_chip-border-color:var(--_chip-field-border-color);--_chip-shape:var(--_chip-field-shape);--_chip-cursor:var(--_chip-field-cursor)}:host([theme=secondary]) .forge-chip{--_chip-color:var(--forge-chip-color, var(--forge-theme-text-high, rgba(0, 0, 0, 0.87)));--_chip-border-color:var(--forge-chip-border-color, var(--forge-theme-secondary, #ffc107))}:host([theme=secondary]:is([type=filter],[type=choice],[type=input])[selected]) .forge-chip{--_chip-background:var(--forge-chip-background, var(--forge-theme-secondary, #ffc107));--_chip-color:var(--forge-chip-color, var(--forge-theme-on-secondary, #000000))}:host([theme=secondary][type=field]) .forge-chip{--_chip-background:var(--forge-chip-background, var(--forge-theme-secondary-container-low, #fff8e1));--_chip-color:var(--forge-chip-color, var(--forge-theme-on-secondary-container-low, #8a6804))}:host([theme=tertiary]) .forge-chip{--_chip-color:var(--forge-chip-color, var(--forge-theme-tertiary, #3d5afe))}:host([theme=tertiary]:is([type=filter],[type=choice],[type=input])[selected]) .forge-chip{--_chip-background:var(--forge-chip-background, var(--forge-theme-tertiary, #3d5afe));--_chip-color:var(--forge-chip-color, var(--forge-theme-on-tertiary, #ffffff))}:host([theme=tertiary][type=field]) .forge-chip{--_chip-background:var(--forge-chip-background, var(--forge-theme-tertiary-container-low, #e8ebff));--_chip-color:var(--forge-chip-color, var(--forge-theme-on-tertiary-container-low, #213189))}:host([theme=success]) .forge-chip{--_chip-color:var(--forge-chip-color, var(--forge-theme-success, #2e7d32))}:host([theme=success]:is([type=filter],[type=choice],[type=input])[selected]) .forge-chip{--_chip-background:var(--forge-chip-background, var(--forge-theme-success, #2e7d32));--_chip-color:var(--forge-chip-color, var(--forge-theme-on-success, #ffffff))}:host([theme=success][type=field]) .forge-chip{--_chip-background:var(--forge-chip-background, var(--forge-theme-success-container-low, #e6efe6));--_chip-color:var(--forge-chip-color, var(--forge-theme-on-success-container-low, #19441b))}:host([theme=warning]) .forge-chip{--_chip-color:var(--forge-chip-color, var(--forge-theme-warning, #d14900))}:host([theme=warning]:is([type=filter],[type=choice],[type=input])[selected]) .forge-chip{--_chip-background:var(--forge-chip-background, var(--forge-theme-warning, #d14900));--_chip-color:var(--forge-chip-color, var(--forge-theme-on-warning, #ffffff))}:host([theme=warning][type=field]) .forge-chip{--_chip-background:var(--forge-chip-background, var(--forge-theme-warning-container-low, #f9e9e0));--_chip-color:var(--forge-chip-color, var(--forge-theme-on-warning-container-low, #712700))}:host([theme=error]) .forge-chip{--_chip-color:var(--forge-chip-color, var(--forge-theme-error, #b00020))}:host([theme=error]:is([type=filter],[type=choice],[type=input])[selected]) .forge-chip{--_chip-background:var(--forge-chip-background, var(--forge-theme-error, #b00020));--_chip-color:var(--forge-chip-color, var(--forge-theme-on-error, #ffffff))}:host([theme=error][type=field]) .forge-chip{--_chip-background:var(--forge-chip-background, var(--forge-theme-error-container-low, #f6e0e4));--_chip-color:var(--forge-chip-color, var(--forge-theme-on-error-container-low, #5f0011))}:host([theme=info]) .forge-chip{--_chip-color:var(--forge-chip-color, var(--forge-theme-info, #1565c0))}:host([theme=info]:is([type=filter],[type=choice],[type=input])[selected]) .forge-chip{--_chip-background:var(--forge-chip-background, var(--forge-theme-info, #1565c0));--_chip-color:var(--forge-chip-color, var(--forge-theme-on-info, #ffffff))}:host([theme=info][type=field]) .forge-chip{--_chip-background:var(--forge-chip-background, var(--forge-theme-info-container-low, #e3edf7));--_chip-color:var(--forge-chip-color, var(--forge-theme-on-info-container-low, #0b3768))}';
|
|
18
|
+
const styles = ':host{display:inline-flex}:host([hidden]){display:none}.forge-chip{--_chip-background:var(--forge-chip-background, transparent);--_chip-color:var(--forge-chip-color, var(--forge-theme-primary, #3f51b5));--_chip-shape:var(--forge-chip-shape, calc(var(--forge-shape-full, 9999px) * var(--forge-shape-factor, 1)));--_chip-spacing:var(--forge-chip-spacing, var(--forge-spacing-xsmall, 8px));--_chip-height:var(--forge-chip-height, 32px);--_chip-padding-inline:var(--forge-chip-padding-inline, var(--forge-spacing-small, 12px));--_chip-padding-block:var(--forge-chip-padding-block, 0);--_chip-cursor:var(--forge-chip-cursor, pointer);--_chip-icon-font-size:var(--forge-chip-icon-font-size, 1.5rem);--_chip-focus-indicator-color:var(--forge-chip-focus-indicator-color, var(--_chip-color));--_chip-disabled-opacity:var(--forge-chip-disabled-opacity, 0.38);--_chip-disabled-cursor:var(--forge-chip-disabled-cursor, not-allowed);--_chip-dense-height:var(--forge-chip-dense-height, 24px);--_chip-dense-padding-inline:var(--forge-chip-dense-padding-inline, var(--forge-spacing-xsmall, 8px));--_chip-dense-spacing:var(--forge-chip-dense-spacing, var(--forge-spacing-xxsmall, 4px));--_chip-dense-font-size:var(--forge-chip-dense-font-size, 0.75rem);--_chip-dense-font-weight:var(--forge-chip-dense-font-weight, normal);--_chip-dense-focus-indicator-offset:var(--forge-chip-dense-focus-indicator-offset, var(--forge-spacing-xxxsmall, 2px));--_chip-dense-icon-font-size:var(--forge-chip-dense-icon-font-size, 1.25rem);--_chip-remove-button-spacing:var(--forge-chip-remove-button-spacing, var(--forge-spacing-xsmall, 8px) var(--forge-spacing-xxsmall, 4px));--_chip-remove-button-height-dense:var(--forge-chip-remove-button-height-dense, 18px);--_chip-remove-button-icon-size-dense:var(--forge-chip-remove-button-icon-size-dense, 16px);--_chip-remove-button-spacing-dense:var(--forge-chip-remove-button-spacing-dense, 0 var(--forge-spacing-xxxsmall, 2px));--_chip-selected-background:var(--forge-chip-selected-background, var(--forge-theme-primary, #3f51b5));--_chip-selected-color:var(--forge-chip-selected-color, var(--forge-theme-on-primary, #ffffff));--_chip-invalid-color:var(--forge-chip-invalid-color, var(--forge-theme-error, #b00020));--_chip-invalid-selected-background:var(--forge-chip-invalid-selected-background, var(--forge-theme-error, #b00020));--_chip-invalid-selected-color:var(--forge-chip-invalid-selected-color, var(--forge-theme-on-error, #ffffff));--_chip-border-width:var(--forge-chip-border-width, var(--forge-border-thin, 1px));--_chip-border-style:var(--forge-chip-border-style, solid);--_chip-border-color:var(--forge-chip-border-color, var(--_chip-color));--_chip-field-background:var(--forge-chip-field-background, var(--forge-theme-surface-container-low, #ebebeb));--_chip-field-color:var(--forge-chip-field-color, var(--forge-theme-on-surface-container-low, #000000));--_chip-field-shape:var(--forge-chip-field-shape, calc(var(--forge-shape-medium, 4px) * var(--forge-shape-factor, 1)));--_chip-field-border-color:var(--forge-chip-field-border-color, transparent);--_chip-field-cursor:var(--forge-chip-field-cursor, default);--_chip-checkmark-size:var(--forge-chip-checkmark-size, 1.25em);--_chip-checkmark-color:var(--forge-chip-checkmark-color, var(--_chip-color));--_chip-checkmark-spacing:var(--forge-chip-checkmark-spacing, var(--forge-spacing-xsmall, 8px));--_chip-avatar-size:var(--forge-chip-avatar-size, 24px);--_chip-avatar-size-dense:var(--forge-chip-avatar-size-dense, 18px);--_chip-avatar-font-size:var(--forge-chip-avatar-font-size, 0.75rem);--_chip-avatar-font-size-dense:var(--forge-chip-avatar-font-size-dense, 0.5rem);--_chip-avatar-spacing:var(--forge-chip-avatar-spacing, calc(var(--forge-spacing-xsmall, 8px) * -1));--_chip-avatar-spacing-dense:var(--forge-chip-avatar-spacing-dense, calc(var(--forge-spacing-xxsmall, 4px) * -1));--_chip-transition-duration:var(--forge-chip-transition-duration, var(--forge-animation-duration-short3, 150ms));--_chip-transition-easing:var(--forge-chip-transition-easing, var(--forge-animation-easing-standard, cubic-bezier(0.2, 0, 0, 1)));--_chip-checkmark-transition-delay:var(--forge-chip-checkmark-transition-delay, 50ms)}.forge-chip{position:relative;display:inline-flex;align-items:center;box-sizing:border-box;height:var(--_chip-height);border-width:var(--_chip-border-width);border-style:var(--_chip-border-style);border-color:var(--_chip-border-color);border-radius:var(--_chip-shape);background:var(--_chip-background);color:var(--_chip-color);transition-property:background-color,color;transition-duration:var(--_chip-transition-duration);transition-timing-function:var(--_chip-transition-easing)}.trigger{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:var(--forge-typography-button-font-family, var(--forge-typography-font-family, \"Roboto\", sans-serif));font-size:var(--forge-typography-button-font-size, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-button-font-size-scale, .875)));font-weight:var(--forge-typography-button-font-weight,500);line-height:var(--forge-typography-button-line-height, normal);letter-spacing:var(--forge-typography-button-letter-spacing, .0714285714em);text-transform:var(--forge-typography-button-text-transform,inherit);text-decoration:var(--forge-typography-button-text-decoration,inherit);display:inline-flex;align-items:center;justify-content:center;gap:var(--_chip-spacing);box-sizing:border-box;height:100%;padding-inline:var(--_chip-padding-inline);padding-block:var(--_chip-padding-block);cursor:var(--_chip-cursor);z-index:0;text-decoration:none;border:none;background:inherit;color:inherit;-webkit-tap-highlight-color:transparent;border-radius:var(--_chip-shape);outline:0}.remove{padding-inline:var(--_chip-remove-button-spacing);--forge-icon-button-focus-indicator-color:var(--_chip-color)}forge-focus-indicator{--forge-focus-indicator-color:var(--_chip-focus-indicator-color);--forge-focus-indicator-shape:var(--_chip-shape)}forge-state-layer{--forge-state-layer-color:var(--_chip-color)}:host([dense]) .forge-chip{--_chip-height:var(--_chip-dense-height);--_chip-padding-inline:var(--_chip-dense-padding-inline);--_chip-spacing:var(--_chip-dense-spacing)}:host([dense]) .trigger{--forge-typography-font-size:var(--_chip-dense-font-size);--forge-typography-font-weight:var(--_chip-dense-font-weight)}:host([dense]) .remove{--_chip-remove-button-spacing:var(--_chip-remove-button-spacing-dense);--forge-icon-button-density-small-size:var(--_chip-remove-button-height-dense);--forge-icon-button-density-small-icon-size:var(--_chip-remove-button-icon-size-dense)}:host([dense]) forge-focus-indicator{--forge-focus-indicator-outward-offset:var(--_chip-dense-focus-indicator-offset)}:host([dense]) ::slotted(forge-avatar){--_chip-avatar-spacing:var(--_chip-avatar-spacing-dense);--forge-typography-font-size:var(--_chip-avatar-font-size-dense);--forge-avatar-size:var(--_chip-avatar-size-dense)}:host([dense]) ::slotted(:is([slot=start],[slot=leading],[slot=end],[slot=trailing])){--_chip-icon-font-size:var(--_chip-dense-icon-font-size)}:host(:is([type=filter],[type=choice],[type=input])[selected]) .forge-chip{--_chip-background:var(--_chip-selected-background);--_chip-color:var(--_chip-selected-color)}:host(:is([type=filter],[type=choice],[type=input])[selected]) forge-focus-indicator{--forge-focus-indicator-color:var(--_chip-background)}:host([invalid]) .forge-chip{--_chip-color:var(--_chip-invalid-color)}:host([invalid]:is([type=filter],[type=choice],[type=input])[selected]) .forge-chip{--_chip-background:var(--_chip-invalid-selected-background);--_chip-color:var(--_chip-invalid-selected-color)}:host([disabled]:not([href])) .forge-chip{opacity:var(--_chip-disabled-opacity)}:host([disabled]:not([href])) .trigger{cursor:var(--_chip-disabled-cursor)}::slotted(:not(forge-avatar):is([slot=start],[slot=leading],[slot=end],[slot=trailing])){font-size:var(--_chip-icon-font-size)}::slotted(forge-avatar:is([slot=start],[slot=leading])){margin-inline-start:var(--_chip-avatar-spacing)}::slotted(forge-avatar:is([slot=end],[slot=trailing])){margin-inline-end:var(--_chip-avatar-spacing)}::slotted(forge-avatar){--forge-typography-font-size:var(--_chip-avatar-font-size);--forge-avatar-size:var(--_chip-avatar-size)}:host([type=filter]) .checkmark{height:var(--_chip-checkmark-size)}:host([type=filter]) .checkmark svg{width:0;height:var(--_chip-checkmark-size);transition-property:width;transition-duration:var(--_chip-transition-duration);transition-timing-function:var(--_chip-transition-easing)}:host([type=filter]) .checkmark svg path{stroke:var(--_chip-checkmark-color);transition-property:stroke-dashoffset;transition-duration:var(--_chip-transition-duration);transition-timing-function:var(--_chip-transition-easing);stroke-width:2px;stroke-dashoffset:29.7833385;stroke-dasharray:29.7833385}:host([type=filter][selected]) .checkmark{padding-inline-start:var(--_chip-checkmark-spacing)}:host([type=filter][selected]) .checkmark svg{width:var(--_chip-checkmark-size)}:host([type=filter][selected]) .checkmark svg path{transition-delay:var(--_chip-checkmark-transition-delay);stroke-dashoffset:0}:host([type=input]) .trigger{padding-inline:var(--_chip-padding-inline) 0}:host([type=field]) .forge-chip{--_chip-background:var(--_chip-field-background);--_chip-color:var(--_chip-field-color);--_chip-border-color:var(--_chip-field-border-color);--_chip-shape:var(--_chip-field-shape);--_chip-cursor:var(--_chip-field-cursor)}:host([theme=secondary]) .forge-chip{--_chip-color:var(--forge-chip-color, var(--forge-theme-text-high, rgba(0, 0, 0, 0.87)));--_chip-border-color:var(--forge-chip-border-color, var(--forge-theme-secondary, #ffc107))}:host([theme=secondary]:is([type=filter],[type=choice],[type=input])[selected]) .forge-chip{--_chip-background:var(--forge-chip-background, var(--forge-theme-secondary, #ffc107));--_chip-color:var(--forge-chip-color, var(--forge-theme-on-secondary, #000000))}:host([theme=secondary][type=field]) .forge-chip{--_chip-background:var(--forge-chip-background, var(--forge-theme-secondary-container-low, #fff8e1));--_chip-color:var(--forge-chip-color, var(--forge-theme-on-secondary-container-low, #8a6804))}:host([theme=tertiary]) .forge-chip{--_chip-color:var(--forge-chip-color, var(--forge-theme-tertiary, #3d5afe))}:host([theme=tertiary]:is([type=filter],[type=choice],[type=input])[selected]) .forge-chip{--_chip-background:var(--forge-chip-background, var(--forge-theme-tertiary, #3d5afe));--_chip-color:var(--forge-chip-color, var(--forge-theme-on-tertiary, #ffffff))}:host([theme=tertiary][type=field]) .forge-chip{--_chip-background:var(--forge-chip-background, var(--forge-theme-tertiary-container-low, #e8ebff));--_chip-color:var(--forge-chip-color, var(--forge-theme-on-tertiary-container-low, #213189))}:host([theme=success]) .forge-chip{--_chip-color:var(--forge-chip-color, var(--forge-theme-success, #2e7d32))}:host([theme=success]:is([type=filter],[type=choice],[type=input])[selected]) .forge-chip{--_chip-background:var(--forge-chip-background, var(--forge-theme-success, #2e7d32));--_chip-color:var(--forge-chip-color, var(--forge-theme-on-success, #ffffff))}:host([theme=success][type=field]) .forge-chip{--_chip-background:var(--forge-chip-background, var(--forge-theme-success-container-low, #e6efe6));--_chip-color:var(--forge-chip-color, var(--forge-theme-on-success-container-low, #19441b))}:host([theme=warning]) .forge-chip{--_chip-color:var(--forge-chip-color, var(--forge-theme-warning, #d14900))}:host([theme=warning]:is([type=filter],[type=choice],[type=input])[selected]) .forge-chip{--_chip-background:var(--forge-chip-background, var(--forge-theme-warning, #d14900));--_chip-color:var(--forge-chip-color, var(--forge-theme-on-warning, #ffffff))}:host([theme=warning][type=field]) .forge-chip{--_chip-background:var(--forge-chip-background, var(--forge-theme-warning-container-low, #f9e9e0));--_chip-color:var(--forge-chip-color, var(--forge-theme-on-warning-container-low, #712700))}:host([theme=error]) .forge-chip{--_chip-color:var(--forge-chip-color, var(--forge-theme-error, #b00020))}:host([theme=error]:is([type=filter],[type=choice],[type=input])[selected]) .forge-chip{--_chip-background:var(--forge-chip-background, var(--forge-theme-error, #b00020));--_chip-color:var(--forge-chip-color, var(--forge-theme-on-error, #ffffff))}:host([theme=error][type=field]) .forge-chip{--_chip-background:var(--forge-chip-background, var(--forge-theme-error-container-low, #f6e0e4));--_chip-color:var(--forge-chip-color, var(--forge-theme-on-error-container-low, #5f0011))}:host([theme=info]) .forge-chip{--_chip-color:var(--forge-chip-color, var(--forge-theme-info, #1565c0))}:host([theme=info]:is([type=filter],[type=choice],[type=input])[selected]) .forge-chip{--_chip-background:var(--forge-chip-background, var(--forge-theme-info, #1565c0));--_chip-color:var(--forge-chip-color, var(--forge-theme-on-info, #ffffff))}:host([theme=info][type=field]) .forge-chip{--_chip-background:var(--forge-chip-background, var(--forge-theme-info-container-low, #e3edf7));--_chip-color:var(--forge-chip-color, var(--forge-theme-on-info-container-low, #0b3768))}';
|
|
19
19
|
/**
|
|
20
20
|
* @tag forge-chip
|
|
21
21
|
*
|
|
@@ -55,6 +55,7 @@ const styles = ':host{display:inline-flex}:host([hidden]){display:none}.forge-ch
|
|
|
55
55
|
* @cssproperty --forge-chip-padding-block - The block padding of the chip.
|
|
56
56
|
* @cssproperty --forge-chip-cursor - The cursor style of the chip.
|
|
57
57
|
* @cssproperty --forge-chip-icon-font-size - The font size of the chip icon.
|
|
58
|
+
* @cssproperty --forge-chip-focus-indicator-color - The color of the focus indicator.
|
|
58
59
|
* @cssproperty --forge-chip-disabled-opacity - The opacity of the disabled chip.
|
|
59
60
|
* @cssproperty --forge-chip-disabled-cursor - The cursor style of the disabled chip.
|
|
60
61
|
* @cssproperty --forge-chip-dense-height - The height of the dense chip.
|
|
@@ -12,7 +12,7 @@ import { BaseComponent } from '../core/base/base-component';
|
|
|
12
12
|
import { WithElementInternals } from '../core/mixins/internals/with-element-internals';
|
|
13
13
|
import { WithDefaultAria } from '../core/mixins/internals/with-default-aria';
|
|
14
14
|
const template = '<template><div class=\"forge-circular-progress\" part=\"progressbar\"><slot class=\"center-content\"></slot></div></template>';
|
|
15
|
-
const styles = ':host{--_circular-progress-size:var(--forge-circular-progress-size, 48px)}:host{display:inline-flex;vertical-align:middle;
|
|
15
|
+
const styles = ':host{--_circular-progress-size:var(--forge-circular-progress-size, 48px)}:host{display:inline-flex;vertical-align:middle;block-size:var(--_circular-progress-size);inline-size:var(--_circular-progress-size);position:relative;align-items:center;justify-content:center;transition:background-color var(--_circular-progress-theme-transition-duration) var(--_circular-progress-theme-transition-timing);contain:strict;content-visibility:auto}:host([hidden]){display:none}.forge-circular-progress{--_circular-progress-padding:var(--forge-circular-progress-padding, 0);--_circular-progress-track-width:var(--forge-circular-progress-track-width, 12);--_circular-progress-track-color:var(--forge-circular-progress-track-color, transparent);--_circular-progress-track-fill-color:var(--forge-circular-progress-track-fill-color, var(--forge-theme-tertiary-container, #d0d7ff));--_circular-progress-indicator-color:var(--forge-circular-progress-indicator-color, var(--forge-theme-tertiary, #3d5afe));--_circular-progress-arc-duration:var(--forge-circular-progress-arc-duration, 1333ms);--_circular-progress-theme-transition-duration:var(--forge-circular-progress-theme-transition-duration, var(--forge-animation-duration-short3, 150ms));--_circular-progress-theme-transition-timing:var(--forge-circular-progress-theme-transition-timing, var(--forge-animation-easing-standard, cubic-bezier(0.2, 0, 0, 1)))}.forge-circular-progress{flex:1;align-self:stretch;margin:var(--_circular-progress-padding)}.forge-circular-progress--indeterminate{will-change:transform;animation:linear infinite linear-rotate;animation-duration:calc(var(--_circular-progress-arc-duration) * 360 / 306)}.circle,.forge-circular-progress,.left,.right,.spinner,svg{position:absolute;inset:0}.center-content{display:flex;justify-content:center;align-items:center;width:100%;height:100%}.left{overflow:hidden;inset:0 50% 0 0}.left .circle{rotate:135deg;inset:0 -100% 0 0}.right{overflow:hidden;inset:0 0 0 50%}.right .circle{rotate:100deg;inset:0 0 0 -100%;animation-delay:calc(-.5 * var(--_circular-progress-arc-duration)),0s}.circle{box-sizing:border-box;border-radius:50%;border:solid calc(var(--_circular-progress-size) * var(--_circular-progress-track-width)/ 100);border-color:var(--_circular-progress-indicator-color) var(--_circular-progress-indicator-color) transparent transparent;transition:border-color var(--_circular-progress-theme-transition-duration) var(--_circular-progress-theme-transition-timing);will-change:transform;animation:expand-arc;animation-iteration-count:infinite;animation-fill-mode:both;animation-duration:var(--_circular-progress-arc-duration),calc(4 * var(--_circular-progress-arc-duration));animation-timing-function:cubic-bezier(0.4,0,0.2,1)}svg{transform:rotate(-90deg)}svg circle{cx:50%;cy:50%;r:calc(50% * (1 - var(--_circular-progress-track-width)/ 100));stroke-width:calc(var(--_circular-progress-track-width) * 1%);stroke-dasharray:100;fill:transparent}.progress{transition:stroke-dashoffset .5s cubic-bezier(0, 0, .2, 1),stroke var(--_circular-progress-theme-transition-duration) var(--_circular-progress-theme-transition-timing);stroke:var(--_circular-progress-indicator-color)}.track{stroke:transparent}.track-background{transition:stroke var(--_circular-progress-theme-transition-duration) var(--_circular-progress-theme-transition-timing);stroke:var(--_circular-progress-track-color)}.spinner{will-change:transform;animation:infinite both rotate-arc;animation-duration:calc(4 * var(--_circular-progress-arc-duration));animation-timing-function:cubic-bezier(0.4,0,0.2,1)}:host(:is([track],[determinate])) .forge-circular-progress{--_circular-progress-track-color:var(--_circular-progress-track-fill-color)}:host([theme=primary]) .forge-circular-progress{--_circular-progress-indicator-color:var(--forge-circular-progress-indicator-color, var(--forge-theme-primary, #3f51b5))}:host([theme=primary]:is([track],[determinate])) .forge-circular-progress{--_circular-progress-track-color:var(--forge-circular-progress-track-color, var(--forge-theme-primary-container, #d1d5ed))}:host([theme=secondary]) .forge-circular-progress{--_circular-progress-indicator-color:var(--forge-circular-progress-indicator-color, var(--forge-theme-secondary, #ffc107))}:host([theme=secondary]:is([track],[determinate])) .forge-circular-progress{--_circular-progress-track-color:var(--forge-circular-progress-track-color, var(--forge-theme-secondary-container, #fff0c3))}:host([theme=success]) .forge-circular-progress{--_circular-progress-indicator-color:var(--forge-circular-progress-indicator-color, var(--forge-theme-success, #2e7d32))}:host([theme=success]:is([track],[determinate])) .forge-circular-progress{--_circular-progress-track-color:var(--forge-circular-progress-track-color, var(--forge-theme-success-container, #cde0ce))}:host([theme=error]) .forge-circular-progress{--_circular-progress-indicator-color:var(--forge-circular-progress-indicator-color, var(--forge-theme-error, #b00020))}:host([theme=error]:is([track],[determinate])) .forge-circular-progress{--_circular-progress-track-color:var(--forge-circular-progress-track-color, var(--forge-theme-error-container, #ecc2c9))}:host([theme=warning]) .forge-circular-progress{--_circular-progress-indicator-color:var(--forge-circular-progress-indicator-color, var(--forge-theme-warning, #d14900))}:host([theme=warning]:is([track],[determinate])) .forge-circular-progress{--_circular-progress-track-color:var(--forge-circular-progress-track-color, var(--forge-theme-warning-container, #f4d3c2))}:host([theme=info]) .forge-circular-progress{--_circular-progress-indicator-color:var(--forge-circular-progress-indicator-color, var(--forge-theme-info, #1565c0))}:host([theme=info]:is([track],[determinate])) .forge-circular-progress{--_circular-progress-track-color:var(--forge-circular-progress-track-color, var(--forge-theme-info-container, #c7daf0))}@media screen and (forced-colors:active){.progress{stroke:CanvasText}.circle{border-color:CanvasText CanvasText Canvas Canvas}}@keyframes expand-arc{0%{transform:rotate(265deg)}50%{transform:rotate(130deg)}100%{transform:rotate(265deg)}}@keyframes rotate-arc{12.5%{transform:rotate(135deg)}25%{transform:rotate(270deg)}37.5%{transform:rotate(405deg)}50%{transform:rotate(540deg)}62.5%{transform:rotate(675deg)}75%{transform:rotate(810deg)}87.5%{transform:rotate(945deg)}100%{transform:rotate(1080deg)}}@keyframes linear-rotate{to{transform:rotate(360deg)}}';
|
|
16
16
|
/**
|
|
17
17
|
* @tag forge-circular-progress
|
|
18
18
|
*
|
|
@@ -7,6 +7,7 @@ import { DateRange, DayOfWeek, ICalendarComponent } from '../../calendar';
|
|
|
7
7
|
import { ICalendarDropdown, ICalendarDropdownPopupConfig } from '../../calendar/calendar-dropdown';
|
|
8
8
|
import { BaseAdapter, IBaseAdapter, IDateInputMaskOptions } from '../../core';
|
|
9
9
|
import { BaseComponent } from '../../core/base/base-component';
|
|
10
|
+
import { IDatePickerCalendarDropdownText } from './base-date-picker-constants';
|
|
10
11
|
export interface IBaseDatePickerAdapter extends IBaseAdapter {
|
|
11
12
|
initialize(): void;
|
|
12
13
|
initializeAccessibility(): void;
|
|
@@ -45,6 +46,7 @@ export interface IBaseDatePickerAdapter extends IBaseAdapter {
|
|
|
45
46
|
getCalendarActiveDate(): Date | undefined;
|
|
46
47
|
setCalendarYearRange(value: string): void;
|
|
47
48
|
setCalendarLocale(locale: string | undefined): void;
|
|
49
|
+
setCalendarText(text: IDatePickerCalendarDropdownText): void;
|
|
48
50
|
propagateCalendarKey(evt: KeyboardEvent): void;
|
|
49
51
|
}
|
|
50
52
|
export declare abstract class BaseDatePickerAdapter<T extends BaseComponent> extends BaseAdapter<T> implements IBaseDatePickerAdapter {
|
|
@@ -93,6 +95,7 @@ export declare abstract class BaseDatePickerAdapter<T extends BaseComponent> ext
|
|
|
93
95
|
getCalendarActiveDate(): Date | undefined;
|
|
94
96
|
setCalendarYearRange(value: string): void;
|
|
95
97
|
setCalendarLocale(locale: string | undefined): void;
|
|
98
|
+
setCalendarText(text: IDatePickerCalendarDropdownText): void;
|
|
96
99
|
propagateCalendarKey(evt: KeyboardEvent): void;
|
|
97
100
|
tryCreateToggle(): void;
|
|
98
101
|
protected _createToggleElement(): HTMLElement;
|
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
* License: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
import { randomChars } from '@tylertech/forge-core';
|
|
7
|
+
import { CALENDAR_CONSTANTS } from '../../calendar';
|
|
7
8
|
import { BaseAdapter } from '../../core';
|
|
8
9
|
import { ICON_BUTTON_CONSTANTS } from '../../icon-button';
|
|
9
10
|
import { TEXT_FIELD_CONSTANTS } from '../../text-field';
|
|
@@ -43,6 +44,7 @@ export class BaseDatePickerAdapter extends BaseAdapter {
|
|
|
43
44
|
this._calendarDropdown.open(calendarConfig);
|
|
44
45
|
this._calendarDropdown.dropdownElement?.style.setProperty('--forge-calendar-width', '320px');
|
|
45
46
|
this._calendarDropdown.calendar?.style.setProperty('margin', '8px');
|
|
47
|
+
this.setCalendarText(dropdownConfig?.calendarText || {});
|
|
46
48
|
}
|
|
47
49
|
detachCalendar() {
|
|
48
50
|
if (this._calendarDropdown && this._calendarDropdown.isOpen) {
|
|
@@ -104,6 +106,60 @@ export class BaseDatePickerAdapter extends BaseAdapter {
|
|
|
104
106
|
this._calendarDropdown.locale = locale;
|
|
105
107
|
}
|
|
106
108
|
}
|
|
109
|
+
setCalendarText(text) {
|
|
110
|
+
const calendar = this._calendarDropdown?.calendar;
|
|
111
|
+
if (!calendar) {
|
|
112
|
+
return;
|
|
113
|
+
}
|
|
114
|
+
if (text.today) {
|
|
115
|
+
const el = document.createElement('span');
|
|
116
|
+
el.slot = CALENDAR_CONSTANTS.slots.TODAY_BUTTON_TEXT;
|
|
117
|
+
el.textContent = text.today;
|
|
118
|
+
calendar.append(el);
|
|
119
|
+
}
|
|
120
|
+
if (text.clear) {
|
|
121
|
+
const el = document.createElement('span');
|
|
122
|
+
el.slot = CALENDAR_CONSTANTS.slots.CLEAR_BUTTON_TEXT;
|
|
123
|
+
el.textContent = text.clear;
|
|
124
|
+
calendar.append(el);
|
|
125
|
+
}
|
|
126
|
+
if (text.nextMonth) {
|
|
127
|
+
const el = document.createElement('span');
|
|
128
|
+
el.slot = CALENDAR_CONSTANTS.slots.NEXT_MONTH_BUTTON_TEXT;
|
|
129
|
+
el.textContent = text.nextMonth;
|
|
130
|
+
calendar.append(el);
|
|
131
|
+
}
|
|
132
|
+
if (text.previousMonth) {
|
|
133
|
+
const el = document.createElement('span');
|
|
134
|
+
el.slot = CALENDAR_CONSTANTS.slots.PREVIOUS_MONTH_BUTTON_TEXT;
|
|
135
|
+
el.textContent = text.previousMonth;
|
|
136
|
+
calendar.append(el);
|
|
137
|
+
}
|
|
138
|
+
if (text.nextYear) {
|
|
139
|
+
const el = document.createElement('span');
|
|
140
|
+
el.slot = CALENDAR_CONSTANTS.slots.NEXT_YEAR_BUTTON_TEXT;
|
|
141
|
+
el.textContent = text.nextYear;
|
|
142
|
+
calendar.append(el);
|
|
143
|
+
}
|
|
144
|
+
if (text.previousYear) {
|
|
145
|
+
const el = document.createElement('span');
|
|
146
|
+
el.slot = CALENDAR_CONSTANTS.slots.PREVIOUS_YEAR_BUTTON_TEXT;
|
|
147
|
+
el.textContent = text.previousYear;
|
|
148
|
+
calendar.append(el);
|
|
149
|
+
}
|
|
150
|
+
if (text.nextYears) {
|
|
151
|
+
const el = document.createElement('span');
|
|
152
|
+
el.slot = CALENDAR_CONSTANTS.slots.NEXT_YEARS_BUTTON_TEXT;
|
|
153
|
+
el.textContent = text.nextYears;
|
|
154
|
+
calendar.append(el);
|
|
155
|
+
}
|
|
156
|
+
if (text.previousYears) {
|
|
157
|
+
const el = document.createElement('span');
|
|
158
|
+
el.slot = CALENDAR_CONSTANTS.slots.PREVIOUS_YEARS_BUTTON_TEXT;
|
|
159
|
+
el.textContent = text.previousYears;
|
|
160
|
+
calendar.append(el);
|
|
161
|
+
}
|
|
162
|
+
}
|
|
107
163
|
propagateCalendarKey(evt) {
|
|
108
164
|
this._calendarDropdown?.calendar?.handleKey(evt);
|
|
109
165
|
}
|
|
@@ -25,6 +25,16 @@ export interface IDatePickerCalendarDropdownConfig<T> {
|
|
|
25
25
|
clearCallback: () => void;
|
|
26
26
|
disabledDaysOfWeek?: DayOfWeek[] | null;
|
|
27
27
|
}
|
|
28
|
+
export interface IDatePickerCalendarDropdownText {
|
|
29
|
+
today?: string;
|
|
30
|
+
clear?: string;
|
|
31
|
+
previousMonth?: string;
|
|
32
|
+
nextMonth?: string;
|
|
33
|
+
previousYear?: string;
|
|
34
|
+
nextYear?: string;
|
|
35
|
+
previousYears?: string;
|
|
36
|
+
nextYears?: string;
|
|
37
|
+
}
|
|
28
38
|
export declare const BASE_DATE_PICKER_CONSTANTS: {
|
|
29
39
|
observedAttributes: {
|
|
30
40
|
MIN: string;
|
|
@@ -42,6 +52,7 @@ export declare const BASE_DATE_PICKER_CONSTANTS: {
|
|
|
42
52
|
DISABLED_DAYS_OF_WEEK: string;
|
|
43
53
|
YEAR_RANGE: string;
|
|
44
54
|
LOCALE: string;
|
|
55
|
+
CALENDAR_TEXT: string;
|
|
45
56
|
};
|
|
46
57
|
attributes: {
|
|
47
58
|
TOGGLE: string;
|
|
@@ -18,7 +18,8 @@ const observedAttributes = {
|
|
|
18
18
|
SHOW_CLEAR: 'show-clear',
|
|
19
19
|
DISABLED_DAYS_OF_WEEK: 'disabled-days-of-week',
|
|
20
20
|
YEAR_RANGE: 'year-range',
|
|
21
|
-
LOCALE: 'locale'
|
|
21
|
+
LOCALE: 'locale',
|
|
22
|
+
CALENDAR_TEXT: 'calendar-text'
|
|
22
23
|
};
|
|
23
24
|
const attributes = {
|
|
24
25
|
TOGGLE: 'forge-date-picker-toggle'
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
*/
|
|
6
6
|
import { CalendarMode, DayOfWeek, ICalendarDateSelectEventData } from '../../calendar/calendar-constants';
|
|
7
7
|
import { IBaseDatePickerAdapter } from './base-date-picker-adapter';
|
|
8
|
-
import { DatePickerFormatCallback, DatePickerParseCallback, DatePickerPrepareMaskCallback, DatePickerValueMode } from './base-date-picker-constants';
|
|
8
|
+
import { DatePickerFormatCallback, DatePickerParseCallback, DatePickerPrepareMaskCallback, DatePickerValueMode, IDatePickerCalendarDropdownText } from './base-date-picker-constants';
|
|
9
9
|
export interface IBaseDatePickerCore<TValue> {
|
|
10
10
|
value: TValue | null | undefined;
|
|
11
11
|
min: Date | string | null | undefined;
|
|
@@ -53,6 +53,7 @@ export declare abstract class BaseDatePickerCore<TAdapter extends IBaseDatePicke
|
|
|
53
53
|
protected _disabledDaysOfWeek: DayOfWeek[];
|
|
54
54
|
protected _yearRange: string;
|
|
55
55
|
protected _locale: string | undefined;
|
|
56
|
+
protected _calendarText: IDatePickerCalendarDropdownText;
|
|
56
57
|
protected _isInitialized: boolean;
|
|
57
58
|
private _inputListener;
|
|
58
59
|
private _inputKeydownListener;
|
|
@@ -154,4 +155,6 @@ export declare abstract class BaseDatePickerCore<TAdapter extends IBaseDatePicke
|
|
|
154
155
|
set yearRange(value: string);
|
|
155
156
|
get locale(): string | undefined;
|
|
156
157
|
set locale(value: string | undefined);
|
|
158
|
+
get calendarText(): IDatePickerCalendarDropdownText;
|
|
159
|
+
set calendarText(value: IDatePickerCalendarDropdownText);
|
|
157
160
|
}
|
|
@@ -26,6 +26,7 @@ export class BaseDatePickerCore {
|
|
|
26
26
|
this._showToday = false;
|
|
27
27
|
this._showClear = false;
|
|
28
28
|
this._yearRange = '-50:+50';
|
|
29
|
+
this._calendarText = {};
|
|
29
30
|
this._isInitialized = false;
|
|
30
31
|
this._inputListener = evt => this._onInput(evt);
|
|
31
32
|
this._inputKeydownListener = evt => this._onInputKeydown(evt);
|
|
@@ -131,7 +132,8 @@ export class BaseDatePickerCore {
|
|
|
131
132
|
const dropdownConfig = {
|
|
132
133
|
popupClasses: this._popupClasses,
|
|
133
134
|
closeCallback: this._dropdownCloseListener,
|
|
134
|
-
activeChangeCallback: this._activeChangeListener
|
|
135
|
+
activeChangeCallback: this._activeChangeListener,
|
|
136
|
+
calendarText: this._calendarText
|
|
135
137
|
};
|
|
136
138
|
// If the max date is in the past, set the calendar to the min date
|
|
137
139
|
const currentDate = new Date().getTime();
|
|
@@ -633,4 +635,13 @@ export class BaseDatePickerCore {
|
|
|
633
635
|
}
|
|
634
636
|
}
|
|
635
637
|
}
|
|
638
|
+
get calendarText() {
|
|
639
|
+
return { ...this._calendarText };
|
|
640
|
+
}
|
|
641
|
+
set calendarText(value) {
|
|
642
|
+
if (JSON.stringify(this._calendarText) !== JSON.stringify(value)) {
|
|
643
|
+
this._calendarText = { ...value };
|
|
644
|
+
this._adapter.setCalendarText(this._calendarText);
|
|
645
|
+
}
|
|
646
|
+
}
|
|
636
647
|
}
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
*/
|
|
6
6
|
import { DayOfWeek } from '../../calendar/calendar-constants';
|
|
7
7
|
import { BaseComponent, IBaseComponent } from '../../core/base/base-component';
|
|
8
|
-
import { DatePickerFormatCallback, DatePickerParseCallback, DatePickerPrepareMaskCallback, DatePickerValueMode } from './base-date-picker-constants';
|
|
8
|
+
import { DatePickerFormatCallback, DatePickerParseCallback, DatePickerPrepareMaskCallback, DatePickerValueMode, IDatePickerCalendarDropdownText } from './base-date-picker-constants';
|
|
9
9
|
import { BaseDatePickerCore } from './base-date-picker-core';
|
|
10
10
|
import { IBaseDatePickerAdapter } from './base-date-picker-adapter';
|
|
11
11
|
export interface IBaseDatePickerComponent<TValue> extends IBaseComponent {
|
|
@@ -31,9 +31,11 @@ export interface IBaseDatePickerComponent<TValue> extends IBaseComponent {
|
|
|
31
31
|
disabledDaysOfWeek: DayOfWeek[];
|
|
32
32
|
yearRange: string;
|
|
33
33
|
locale: string | undefined;
|
|
34
|
+
calendarText: IDatePickerCalendarDropdownText;
|
|
34
35
|
}
|
|
35
36
|
/**
|
|
36
37
|
* @property {boolean} [allowInvalidDate=false] - Whether to allow an invalid date to be input. When true, the date picker will not clear out the value of the input if the date was invalid (i.e. could not be parsed).
|
|
38
|
+
* @property {DatePickerCalendarDropdownText} calendarText - Customized strings to display in the calendar dropdown UI.
|
|
37
39
|
* @property {boolean} [disabled=false] - Whether the date picker is disabled or not.
|
|
38
40
|
* @property {(date: Date) => boolean} disableDayCallback - The callback to use for testing whether a specific date should be disabled or not.
|
|
39
41
|
* @property {Date | Date[] | null | undefined} disabledDates - The dates that are restricted from being selected.
|
|
@@ -57,6 +59,7 @@ export interface IBaseDatePickerComponent<TValue> extends IBaseComponent {
|
|
|
57
59
|
* @property {string} yearRange - The year range.
|
|
58
60
|
*
|
|
59
61
|
* @attribute {boolean} [allow-invalid-date=false] - Whether to allow an invalid date to be input. When true, the date picker will not clear out the value of the input if the date was invalid (i.e. could not be parsed).
|
|
62
|
+
* @attribute {DatePickerCalendarDropdownText} [calendar-text] - Customized strings to display in the calendar dropdown UI.
|
|
60
63
|
* @attribute {boolean} [disabled=false] - Whether the date picker is disabled or not.
|
|
61
64
|
* @attribute {string} [disabled-days-of-week] - The days of the week to disable from selection.
|
|
62
65
|
* @attribute {string} [locale] - The locale to use.
|
|
@@ -100,4 +103,5 @@ export declare abstract class BaseDatePickerComponent<TPublicValue, TPrivateValu
|
|
|
100
103
|
disableDayCallback: (date: Date) => boolean;
|
|
101
104
|
yearRange: string;
|
|
102
105
|
locale: string | undefined;
|
|
106
|
+
calendarText: IDatePickerCalendarDropdownText;
|
|
103
107
|
}
|
|
@@ -9,6 +9,7 @@ import { BaseComponent } from '../../core/base/base-component';
|
|
|
9
9
|
import { BASE_DATE_PICKER_CONSTANTS } from './base-date-picker-constants';
|
|
10
10
|
/**
|
|
11
11
|
* @property {boolean} [allowInvalidDate=false] - Whether to allow an invalid date to be input. When true, the date picker will not clear out the value of the input if the date was invalid (i.e. could not be parsed).
|
|
12
|
+
* @property {DatePickerCalendarDropdownText} calendarText - Customized strings to display in the calendar dropdown UI.
|
|
12
13
|
* @property {boolean} [disabled=false] - Whether the date picker is disabled or not.
|
|
13
14
|
* @property {(date: Date) => boolean} disableDayCallback - The callback to use for testing whether a specific date should be disabled or not.
|
|
14
15
|
* @property {Date | Date[] | null | undefined} disabledDates - The dates that are restricted from being selected.
|
|
@@ -32,6 +33,7 @@ import { BASE_DATE_PICKER_CONSTANTS } from './base-date-picker-constants';
|
|
|
32
33
|
* @property {string} yearRange - The year range.
|
|
33
34
|
*
|
|
34
35
|
* @attribute {boolean} [allow-invalid-date=false] - Whether to allow an invalid date to be input. When true, the date picker will not clear out the value of the input if the date was invalid (i.e. could not be parsed).
|
|
36
|
+
* @attribute {DatePickerCalendarDropdownText} [calendar-text] - Customized strings to display in the calendar dropdown UI.
|
|
35
37
|
* @attribute {boolean} [disabled=false] - Whether the date picker is disabled or not.
|
|
36
38
|
* @attribute {string} [disabled-days-of-week] - The days of the week to disable from selection.
|
|
37
39
|
* @attribute {string} [locale] - The locale to use.
|
|
@@ -111,6 +113,9 @@ export class BaseDatePickerComponent extends BaseComponent {
|
|
|
111
113
|
case BASE_DATE_PICKER_CONSTANTS.observedAttributes.LOCALE:
|
|
112
114
|
this.locale = newValue;
|
|
113
115
|
break;
|
|
116
|
+
case BASE_DATE_PICKER_CONSTANTS.observedAttributes.CALENDAR_TEXT:
|
|
117
|
+
this.calendarText = JSON.parse(newValue);
|
|
118
|
+
break;
|
|
114
119
|
}
|
|
115
120
|
}
|
|
116
121
|
}
|
|
@@ -180,3 +185,6 @@ __decorate([
|
|
|
180
185
|
__decorate([
|
|
181
186
|
coreProperty()
|
|
182
187
|
], BaseDatePickerComponent.prototype, "locale", void 0);
|
|
188
|
+
__decorate([
|
|
189
|
+
coreProperty()
|
|
190
|
+
], BaseDatePickerComponent.prototype, "calendarText", void 0);
|
|
@@ -15,6 +15,7 @@ export interface IFieldAdapter extends IBaseAdapter<IFieldComponent> {
|
|
|
15
15
|
setLabelPosition(value: FieldLabelPosition): void;
|
|
16
16
|
setFloatingLabel(value: boolean, skipAnimation?: boolean): void;
|
|
17
17
|
handleSlotChange(slot: HTMLSlotElement): void;
|
|
18
|
+
initializeSlots(): void;
|
|
18
19
|
}
|
|
19
20
|
export declare class FieldAdapter extends BaseAdapter<IFieldComponent> implements IFieldAdapter {
|
|
20
21
|
private readonly _rootElement;
|
|
@@ -41,6 +42,7 @@ export declare class FieldAdapter extends BaseAdapter<IFieldComponent> implement
|
|
|
41
42
|
* nodes.
|
|
42
43
|
*/
|
|
43
44
|
handleSlotChange(slot: HTMLSlotElement): void;
|
|
45
|
+
initializeSlots(): void;
|
|
44
46
|
/**
|
|
45
47
|
* Gets `<label>` and `<forge-label>` elements from the default slot and assigns them to the
|
|
46
48
|
* 'label' slot.
|
|
@@ -87,6 +87,10 @@ export class FieldAdapter extends BaseAdapter {
|
|
|
87
87
|
toggleClass(this._rootElement, !!slot.assignedNodes({ flatten: true }).length, classMap[slot.name]);
|
|
88
88
|
}
|
|
89
89
|
}
|
|
90
|
+
initializeSlots() {
|
|
91
|
+
const slotElements = this._rootElement.querySelectorAll('slot');
|
|
92
|
+
slotElements.forEach(slotElement => this.handleSlotChange(slotElement));
|
|
93
|
+
}
|
|
90
94
|
/**
|
|
91
95
|
* Gets `<label>` and `<forge-label>` elements from the default slot and assigns them to the
|
|
92
96
|
* 'label' slot.
|
package/esm/field/field-core.js
CHANGED
|
@@ -28,6 +28,7 @@ export class FieldCore {
|
|
|
28
28
|
}
|
|
29
29
|
initialize() {
|
|
30
30
|
this._adapter.addRootListener('slotchange', this._slotChangeListener);
|
|
31
|
+
this._adapter.initializeSlots();
|
|
31
32
|
this._adapter.tryApplyGlobalConfiguration(['labelPosition', 'variant']);
|
|
32
33
|
this._adapter.setLabelPosition(this._labelPosition);
|
|
33
34
|
if (this._popoverIcon) {
|