@tylertech/forge 3.8.0-dev.2 → 3.8.0-dev.4
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 +1725 -928
- package/dist/app-bar/forge-app-bar.css +20 -3
- package/dist/forge.css +2 -2
- package/dist/lib.js +20 -20
- package/dist/lib.js.map +4 -4
- package/dist/table/forge-table.css +2 -2
- package/dist/vscode.css-custom-data.json +94 -84
- package/dist/vscode.html-custom-data.json +190 -65
- package/esm/app-bar/app-bar/app-bar-constants.d.ts +2 -0
- package/esm/app-bar/app-bar/app-bar-constants.js +2 -1
- package/esm/app-bar/app-bar/app-bar-core.d.ts +5 -1
- package/esm/app-bar/app-bar/app-bar-core.js +10 -0
- package/esm/app-bar/app-bar/app-bar.d.ts +9 -1
- package/esm/app-bar/app-bar/app-bar.js +15 -2
- package/esm/app-bar/help-button/app-bar-help-button.js +1 -1
- package/esm/app-bar/menu-button/app-bar-menu-button.js +1 -1
- package/esm/app-bar/notification-button/app-bar-notification-button.js +1 -1
- package/esm/app-bar/profile-button/app-bar-profile-button.js +1 -1
- package/esm/app-bar/search/app-bar-search.js +1 -1
- package/esm/autocomplete/autocomplete-core.js +5 -0
- package/esm/avatar/avatar.d.ts +7 -4
- package/esm/avatar/avatar.js +10 -6
- package/esm/badge/badge.d.ts +7 -3
- package/esm/badge/badge.js +9 -4
- package/esm/button/button-constants.d.ts +1 -1
- package/esm/button/button.js +1 -1
- package/esm/card/card.d.ts +7 -3
- package/esm/card/card.js +8 -3
- package/esm/core/base/base-lit-element.d.ts +9 -0
- package/esm/core/base/base-lit-element.js +12 -0
- package/esm/core/utils/lit-utils.d.ts +11 -0
- package/esm/core/utils/lit-utils.js +31 -0
- package/esm/dialog/dialog-adapter.d.ts +0 -1
- package/esm/dialog/dialog-adapter.js +4 -39
- package/esm/dialog/dialog-constants.d.ts +6 -2
- package/esm/dialog/dialog-constants.js +4 -4
- package/esm/dialog/dialog-core.d.ts +3 -3
- package/esm/dialog/dialog-core.js +8 -7
- package/esm/dialog/dialog.d.ts +3 -3
- package/esm/dialog/dialog.js +3 -3
- package/esm/icon-button/icon-button-constants.d.ts +1 -1
- package/esm/icon-button/icon-button.js +1 -1
- package/esm/key/key/index.js +2 -2
- package/esm/key/key/key.d.ts +7 -2
- package/esm/key/key/key.js +10 -3
- package/esm/key/key-item/index.js +2 -2
- package/esm/key/key-item/key-item.d.ts +7 -2
- package/esm/key/key-item/key-item.js +10 -3
- package/esm/list-dropdown/list-dropdown-aware-core.d.ts +22 -0
- package/esm/list-dropdown/list-dropdown-aware-core.js +30 -0
- package/esm/list-dropdown/list-dropdown-aware.d.ts +35 -0
- package/esm/list-dropdown/list-dropdown-aware.js +35 -16
- package/esm/list-dropdown/list-dropdown-constants.d.ts +22 -3
- package/esm/list-dropdown/list-dropdown-constants.js +9 -1
- package/esm/list-dropdown/list-dropdown-utils.js +6 -0
- package/esm/menu/menu-core.js +2 -0
- package/esm/menu/menu.js +1 -0
- package/esm/meter/meter/meter.d.ts +7 -2
- package/esm/meter/meter/meter.js +10 -3
- package/esm/meter/meter-group/index.js +2 -2
- package/esm/meter/meter-group/meter-group.d.ts +7 -2
- package/esm/meter/meter-group/meter-group.js +10 -4
- package/esm/overlay/base/overlay-aware.d.ts +4 -4
- package/esm/overlay/base/overlay-aware.js +3 -3
- package/esm/select/core/base-select-core.js +5 -0
- package/esm/select/select/select.d.ts +25 -1
- package/esm/select/select/select.js +26 -1
- package/esm/split-view/split-view-panel/split-view-panel.js +1 -1
- package/esm/tabs/tab-bar/tab-bar.js +1 -1
- package/package.json +1 -1
- package/sass/app-bar/app-bar/_core.scss +0 -1
- package/sass/app-bar/app-bar/app-bar.scss +51 -7
- package/sass/app-bar/forge-app-bar.scss +41 -11
- package/sass/app-bar/search/app-bar-search.scss +3 -0
- package/sass/button/button.scss +24 -0
- package/sass/core/styles/scrollbar/index.scss +14 -0
- package/sass/core/styles/tokens/app-bar/app-bar/_tokens.scss +4 -1
- package/sass/icon-button/icon-button.scss +14 -0
- package/sass/table/_core.scss +1 -1
- package/sass/tabs/tab-bar/tab-bar.scss +24 -0
|
@@ -12,7 +12,7 @@ import { IconRegistry, ICON_CONSTANTS } from '../../icon';
|
|
|
12
12
|
import { tylIconMenu } from '@tylertech/tyler-icons/standard';
|
|
13
13
|
import { BaseComponent } from '../../core/base/base-component';
|
|
14
14
|
import { forwardAttributes } from '../../core/utils/reflect-utils';
|
|
15
|
-
const template = '<template><forge-icon-button><forge-icon name=\"menu\"></forge-icon></forge-icon-button><forge-tooltip type=\"label\" placement=\"bottom\">Menu</forge-tooltip></template>';
|
|
15
|
+
const template = '<template><forge-icon-button theme=\"app-bar\"><forge-icon name=\"menu\"></forge-icon></forge-icon-button><forge-tooltip type=\"label\" placement=\"bottom\">Menu</forge-tooltip></template>';
|
|
16
16
|
/**
|
|
17
17
|
* @tag forge-app-bar-menu-button
|
|
18
18
|
*
|
|
@@ -14,7 +14,7 @@ import { TooltipComponent } from '../../tooltip';
|
|
|
14
14
|
import { AppBarNotificationButtonAdapter } from './app-bar-notification-button-adapter';
|
|
15
15
|
import { APP_BAR_NOTIFICATION_BUTTON_CONSTANTS } from './app-bar-notification-button-constants';
|
|
16
16
|
import { AppBarNotificationButtonCore } from './app-bar-notification-button-core';
|
|
17
|
-
const template = '<template><forge-icon-button><forge-icon></forge-icon><forge-badge slot=\"badge\"></forge-badge></forge-icon-button><forge-tooltip type=\"label\" placement=\"bottom\">Notifications</forge-tooltip></template>';
|
|
17
|
+
const template = '<template><forge-icon-button theme=\"app-bar\"><forge-icon></forge-icon><forge-badge slot=\"badge\"></forge-badge></forge-icon-button><forge-tooltip type=\"label\" placement=\"bottom\">Notifications</forge-tooltip></template>';
|
|
18
18
|
/**
|
|
19
19
|
* @tag forge-app-bar-notification-button
|
|
20
20
|
*
|
|
@@ -14,7 +14,7 @@ import { defineAvatarComponent } from '../../avatar';
|
|
|
14
14
|
import { TooltipComponent } from '../../tooltip';
|
|
15
15
|
import { BaseComponent } from '../../core/base/base-component';
|
|
16
16
|
import { PopoverComponent } from '../../popover/popover';
|
|
17
|
-
const template = '<template><forge-icon-button><forge-avatar aria-hidden=\"true\"></forge-avatar></forge-icon-button><forge-tooltip type=\"label\" placement=\"bottom-end\">View profile</forge-tooltip></template>';
|
|
17
|
+
const template = '<template><forge-icon-button theme=\"app-bar\"><forge-avatar aria-hidden=\"true\"></forge-avatar></forge-icon-button><forge-tooltip type=\"label\" placement=\"bottom-end\">View profile</forge-tooltip></template>';
|
|
18
18
|
/**
|
|
19
19
|
* @tag forge-app-bar-profile-button
|
|
20
20
|
*
|
|
@@ -13,7 +13,7 @@ import { FocusIndicatorComponent } from '../../focus-indicator';
|
|
|
13
13
|
import { IconComponent, IconRegistry } from '../../icon';
|
|
14
14
|
import { BaseComponent } from '../../core/base/base-component';
|
|
15
15
|
const template = '<template><div class=\"forge-app-bar-search\" part=\"root\"><slot name=\"start\"><forge-icon name=\"search\" class=\"icon\" part=\"icon\"></forge-icon></slot><slot name=\"input\"></slot><slot></slot><slot name=\"end\"></slot></div></template>';
|
|
16
|
-
const styles = ':host{display:block}:host([hidden]){display:none}.forge-app-bar-search{--_app-bar-search-color:var(--forge-app-bar-search-color, currentColor);--_app-bar-search-height:var(--forge-app-bar-search-height, 36px);--_app-bar-search-padding:var(--forge-app-bar-search-padding, 8px);--_app-bar-search-shape:var(--forge-app-bar-search-shape, calc(var(--forge-shape-small, 2px) * var(--forge-shape-factor, 1)));--_app-bar-search-gap:var(--forge-app-bar-search-gap, 4px);--_app-bar-search-input-placeholder-color:var(--forge-app-bar-search-input-placeholder-color, var(--_app-bar-search-color));--_app-bar-search-input-placeholder-opacity:var(--forge-app-bar-search-input-placeholder-opacity, 0.7);--_app-bar-search-background-color:var(--forge-app-bar-search-background-color, var(--_app-bar-search-color));--_app-bar-search-background-color-opacity:var(--forge-app-bar-search-background-color-opacity, 0.08);--_app-bar-search-border-color:var(--forge-app-bar-search-border-color, var(--_app-bar-search-color));--_app-bar-search-border-opacity:var(--forge-app-bar-search-border-opacity, 0.54);--_app-bar-search-border-hover-opacity:var(--forge-app-bar-search-border-hover-opacity, 0.87);--_app-bar-search-transition-duration:var(--forge-app-bar-search-transition-duration, var(--forge-animation-duration-short3, 150ms));--_app-bar-search-transition-timing-function:var(--forge-app-bar-search-transition-timing-function, var(--forge-animation-easing-standard, cubic-bezier(0.2, 0, 0, 1)))}.forge-app-bar-search{position:relative;display:flex;align-items:center;flex:1 1 auto;gap:var(--_app-bar-search-gap);height:var(--_app-bar-search-height);width:100%;padding-inline:var(--_app-bar-search-padding);box-sizing:border-box;border-radius:var(--_app-bar-search-shape)}.forge-app-bar-search:hover::after{opacity:var(--_app-bar-search-border-hover-opacity)}.forge-app-bar-search::before{content:\"\";position:absolute;inset:0;pointer-events:none;background-color:var(--_app-bar-search-background-color);opacity:var(--_app-bar-search-background-color-opacity)}.forge-app-bar-search::after{content:\"\";position:absolute;inset:0;pointer-events:none;opacity:var(--_app-bar-search-border-opacity);border-radius:var(--_app-bar-search-shape);outline:1px solid var(--_app-bar-search-border-color);transition-property:opacity;transition-duration:var(--_app-bar-search-transition-duration);transition-timing-function:var(--_app-bar-search-transition-timing-function)}:host([disabled]){cursor:not-allowed}:host([disabled]) .forge-app-bar-search{pointer-events:none;opacity:38%}:host([disabled]) ::slotted(input){pointer-events:none}forge-focus-indicator{--forge-focus-indicator-color:currentColor;--forge-focus-indicator-outward-offset:0px}::slotted(input){-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:var(--forge-typography-body2-font-family, var(--forge-typography-font-family, \"Roboto\", sans-serif));font-size:var(--forge-typography-body2-font-size, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-body-font-size-scale, 1)));font-weight:var(--forge-typography-body2-font-weight,400);line-height:var(--forge-typography-body2-line-height, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-body-line-height-scale, 1.375)));letter-spacing:var(--forge-typography-body2-letter-spacing, .015625em);text-transform:var(--forge-typography-body2-text-transform,inherit);text-decoration:var(--forge-typography-body2-text-decoration,inherit);display:block;overflow:hidden;background:0 0;color:currentColor;border:none;width:100%;margin:0;outline:0}::slotted(input)::placeholder{color:currentColor;opacity:var(--_app-bar-search-input-placeholder-opacity)}';
|
|
16
|
+
const styles = ':host{display:block;color:var(--_app-bar-theme-foreground)}:host([hidden]){display:none}.forge-app-bar-search{--_app-bar-search-color:var(--forge-app-bar-search-color, currentColor);--_app-bar-search-height:var(--forge-app-bar-search-height, 36px);--_app-bar-search-padding:var(--forge-app-bar-search-padding, 8px);--_app-bar-search-shape:var(--forge-app-bar-search-shape, calc(var(--forge-shape-small, 2px) * var(--forge-shape-factor, 1)));--_app-bar-search-gap:var(--forge-app-bar-search-gap, 4px);--_app-bar-search-input-placeholder-color:var(--forge-app-bar-search-input-placeholder-color, var(--_app-bar-search-color));--_app-bar-search-input-placeholder-opacity:var(--forge-app-bar-search-input-placeholder-opacity, 0.7);--_app-bar-search-background-color:var(--forge-app-bar-search-background-color, var(--_app-bar-search-color));--_app-bar-search-background-color-opacity:var(--forge-app-bar-search-background-color-opacity, 0.08);--_app-bar-search-border-color:var(--forge-app-bar-search-border-color, var(--_app-bar-search-color));--_app-bar-search-border-opacity:var(--forge-app-bar-search-border-opacity, 0.54);--_app-bar-search-border-hover-opacity:var(--forge-app-bar-search-border-hover-opacity, 0.87);--_app-bar-search-transition-duration:var(--forge-app-bar-search-transition-duration, var(--forge-animation-duration-short3, 150ms));--_app-bar-search-transition-timing-function:var(--forge-app-bar-search-transition-timing-function, var(--forge-animation-easing-standard, cubic-bezier(0.2, 0, 0, 1)))}.forge-app-bar-search{position:relative;display:flex;align-items:center;flex:1 1 auto;gap:var(--_app-bar-search-gap);height:var(--_app-bar-search-height);width:100%;padding-inline:var(--_app-bar-search-padding);box-sizing:border-box;border-radius:var(--_app-bar-search-shape)}.forge-app-bar-search:hover::after{opacity:var(--_app-bar-search-border-hover-opacity)}.forge-app-bar-search::before{content:\"\";position:absolute;inset:0;pointer-events:none;background-color:var(--_app-bar-search-background-color);opacity:var(--_app-bar-search-background-color-opacity)}.forge-app-bar-search::after{content:\"\";position:absolute;inset:0;pointer-events:none;opacity:var(--_app-bar-search-border-opacity);border-radius:var(--_app-bar-search-shape);outline:1px solid var(--_app-bar-search-border-color);transition-property:opacity;transition-duration:var(--_app-bar-search-transition-duration);transition-timing-function:var(--_app-bar-search-transition-timing-function)}:host([disabled]){cursor:not-allowed}:host([disabled]) .forge-app-bar-search{pointer-events:none;opacity:38%}:host([disabled]) ::slotted(input){pointer-events:none}forge-focus-indicator{--forge-focus-indicator-color:currentColor;--forge-focus-indicator-outward-offset:0px}::slotted(input){-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:var(--forge-typography-body2-font-family, var(--forge-typography-font-family, \"Roboto\", sans-serif));font-size:var(--forge-typography-body2-font-size, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-body-font-size-scale, 1)));font-weight:var(--forge-typography-body2-font-weight,400);line-height:var(--forge-typography-body2-line-height, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-body-line-height-scale, 1.375)));letter-spacing:var(--forge-typography-body2-letter-spacing, .015625em);text-transform:var(--forge-typography-body2-text-transform,inherit);text-decoration:var(--forge-typography-body2-text-decoration,inherit);display:block;overflow:hidden;background:0 0;color:currentColor;border:none;width:100%;margin:0;outline:0}::slotted(input)::placeholder{color:currentColor;opacity:var(--_app-bar-search-input-placeholder-opacity)}';
|
|
17
17
|
/**
|
|
18
18
|
* @tag forge-app-bar-search
|
|
19
19
|
*
|
|
@@ -374,6 +374,11 @@ export class AutocompleteCore extends ListDropdownAwareCore {
|
|
|
374
374
|
wrapOptionText: this._wrapOptionText,
|
|
375
375
|
observeScroll: this._observeScroll,
|
|
376
376
|
observeScrollThreshold: this._observeScrollThreshold,
|
|
377
|
+
popupPlacement: this._popoverPlacement,
|
|
378
|
+
popupOffset: this._popoverOffset,
|
|
379
|
+
popupFlip: this._popoverFlip,
|
|
380
|
+
popupShift: this._popoverShift,
|
|
381
|
+
popupFallbackPlacements: this._popoverFallbackPlacements,
|
|
377
382
|
scrollEndListener: this._dropdownScrollEndListener,
|
|
378
383
|
activeChangeCallback: this._activeChangeListener,
|
|
379
384
|
targetWidthCallback: this._targetWidthCallback,
|
package/esm/avatar/avatar.d.ts
CHANGED
|
@@ -3,8 +3,10 @@
|
|
|
3
3
|
* Copyright Tyler Technologies, Inc.
|
|
4
4
|
* License: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
-
import {
|
|
7
|
-
|
|
6
|
+
import { PropertyValues, TemplateResult } from 'lit';
|
|
7
|
+
import { CUSTOM_ELEMENT_NAME_PROPERTY } from '@tylertech/forge-core';
|
|
8
|
+
import { BaseLitElement } from '../core/base/base-lit-element';
|
|
9
|
+
export interface IAvatarComponent extends BaseLitElement {
|
|
8
10
|
text: string;
|
|
9
11
|
letterCount: number;
|
|
10
12
|
imageUrl: string;
|
|
@@ -33,8 +35,10 @@ export declare const AVATAR_TAG_NAME: keyof HTMLElementTagNameMap;
|
|
|
33
35
|
*
|
|
34
36
|
* @cssclass forge-avatar - The avatar class _(required)_.
|
|
35
37
|
*/
|
|
36
|
-
export declare class AvatarComponent extends
|
|
38
|
+
export declare class AvatarComponent extends BaseLitElement implements IAvatarComponent {
|
|
37
39
|
static styles: import("lit").CSSResult;
|
|
40
|
+
/** @deprecated Used for compatibility with legacy Forge @customElement decorator. */
|
|
41
|
+
static [CUSTOM_ELEMENT_NAME_PROPERTY]: keyof HTMLElementTagNameMap;
|
|
38
42
|
/**
|
|
39
43
|
* The text to display in the avatar.
|
|
40
44
|
* @default ''
|
|
@@ -43,7 +47,6 @@ export declare class AvatarComponent extends LitElement implements IAvatarCompon
|
|
|
43
47
|
text: string;
|
|
44
48
|
/**
|
|
45
49
|
* Controls the number of letters to display from the text. By default the text is split on spaces and the first character of each word is used.
|
|
46
|
-
* @default 2
|
|
47
50
|
* @attribute letter-count
|
|
48
51
|
*/
|
|
49
52
|
letterCount: number;
|
package/esm/avatar/avatar.js
CHANGED
|
@@ -3,12 +3,14 @@
|
|
|
3
3
|
* Copyright Tyler Technologies, Inc.
|
|
4
4
|
* License: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
+
var _a;
|
|
6
7
|
import { __decorate } from "tslib";
|
|
7
|
-
import {
|
|
8
|
+
import { html, nothing, unsafeCSS } from 'lit';
|
|
8
9
|
import { customElement, property, state } from 'lit/decorators.js';
|
|
9
10
|
import { styleMap } from 'lit/directives/style-map.js';
|
|
10
11
|
import { classMap } from 'lit/directives/class-map.js';
|
|
11
|
-
import {
|
|
12
|
+
import { CUSTOM_ELEMENT_NAME_PROPERTY } from '@tylertech/forge-core';
|
|
13
|
+
import { BaseLitElement } from '../core/base/base-lit-element';
|
|
12
14
|
const styles = ':host{display:inline-block}:host([hidden]){display:none}.forge-avatar{--_avatar-size:var(--forge-avatar-size, 40px);--_avatar-background:var(--forge-avatar-background, var(--forge-theme-tertiary, #3d5afe));--_avatar-color:var(--forge-avatar-color, var(--forge-theme-on-tertiary, #ffffff));--_avatar-transition-duration:var(--forge-avatar-transition-duration, var(--forge-animation-duration-short4, 200ms));--_avatar-transition-timing:var(--forge-avatar-transition-timing, var(--forge-animation-easing-standard, cubic-bezier(0.2, 0, 0, 1)));--_avatar-shape:var(--forge-avatar-shape, calc(var(--forge-shape-round, 50%) * var(--forge-shape-factor, 1)))}.forge-avatar{display:flex;align-items:center;justify-content:center;overflow:hidden;transition:height var(--_avatar-transition-duration) var(--_avatar-transition-timing),width var(--_avatar-transition-duration) var(--_avatar-transition-timing);border-radius:var(--_avatar-shape);box-sizing:border-box;width:var(--_avatar-size);height:var(--_avatar-size);background-color:var(--_avatar-background);background-position:center;background-repeat:no-repeat;background-size:cover;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:var(--forge-typography-subheading2-font-family, var(--forge-typography-font-family, \"Roboto\", sans-serif));font-size:var(--forge-typography-subheading2-font-size, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-subheading2-font-size-scale, 1)));font-weight:var(--forge-typography-subheading2-font-weight,400);line-height:var(--forge-typography-subheading2-line-height, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-subheading2-line-height-scale, 1.25)));letter-spacing:var(--forge-typography-subheading2-letter-spacing, normal);text-transform:var(--forge-typography-subheading2-text-transform,inherit);text-decoration:var(--forge-typography-subheading2-text-decoration,inherit);color:var(--_avatar-color)}.forge-avatar--image{background-color:inherit}';
|
|
13
15
|
const charsByLetterCount = (text, count) => {
|
|
14
16
|
if (!text?.trim()) {
|
|
@@ -41,7 +43,7 @@ export const AVATAR_TAG_NAME = 'forge-avatar';
|
|
|
41
43
|
*
|
|
42
44
|
* @cssclass forge-avatar - The avatar class _(required)_.
|
|
43
45
|
*/
|
|
44
|
-
let AvatarComponent = class AvatarComponent extends
|
|
46
|
+
let AvatarComponent = class AvatarComponent extends BaseLitElement {
|
|
45
47
|
constructor() {
|
|
46
48
|
super(...arguments);
|
|
47
49
|
/**
|
|
@@ -52,10 +54,9 @@ let AvatarComponent = class AvatarComponent extends LitElement {
|
|
|
52
54
|
this.text = '';
|
|
53
55
|
/**
|
|
54
56
|
* Controls the number of letters to display from the text. By default the text is split on spaces and the first character of each word is used.
|
|
55
|
-
* @default 2
|
|
56
57
|
* @attribute letter-count
|
|
57
58
|
*/
|
|
58
|
-
this.letterCount =
|
|
59
|
+
this.letterCount = 2;
|
|
59
60
|
/**
|
|
60
61
|
* The background image URL to use.
|
|
61
62
|
* @default ''
|
|
@@ -75,7 +76,7 @@ let AvatarComponent = class AvatarComponent extends LitElement {
|
|
|
75
76
|
part="root"
|
|
76
77
|
class=${classMap({ 'forge-avatar': true, 'forge-avatar--image': !!this._image })}
|
|
77
78
|
style=${this._image ? styleMap({ backgroundImage: `url(${this._image.src})` }) : nothing}>
|
|
78
|
-
<slot>${this._image ? nothing : charsByLetterCount(this.text, this.letterCount
|
|
79
|
+
<slot>${this._image ? nothing : charsByLetterCount(this.text, this.letterCount)}</slot>
|
|
79
80
|
</div>
|
|
80
81
|
`;
|
|
81
82
|
}
|
|
@@ -91,7 +92,10 @@ let AvatarComponent = class AvatarComponent extends LitElement {
|
|
|
91
92
|
}
|
|
92
93
|
}
|
|
93
94
|
};
|
|
95
|
+
_a = CUSTOM_ELEMENT_NAME_PROPERTY;
|
|
94
96
|
AvatarComponent.styles = unsafeCSS(styles);
|
|
97
|
+
/** @deprecated Used for compatibility with legacy Forge @customElement decorator. */
|
|
98
|
+
AvatarComponent[_a] = AVATAR_TAG_NAME;
|
|
95
99
|
__decorate([
|
|
96
100
|
property()
|
|
97
101
|
], AvatarComponent.prototype, "text", void 0);
|
package/esm/badge/badge.d.ts
CHANGED
|
@@ -3,9 +3,11 @@
|
|
|
3
3
|
* Copyright Tyler Technologies, Inc.
|
|
4
4
|
* License: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
-
import {
|
|
6
|
+
import { PropertyValues, TemplateResult } from 'lit';
|
|
7
7
|
import { BadgeTheme } from './badge-constants';
|
|
8
|
-
|
|
8
|
+
import { CUSTOM_ELEMENT_NAME_PROPERTY } from '@tylertech/forge-core';
|
|
9
|
+
import { BaseLitElement } from '../core/base/base-lit-element';
|
|
10
|
+
export interface IBadgeComponent extends BaseLitElement {
|
|
9
11
|
dot: boolean;
|
|
10
12
|
theme: BadgeTheme;
|
|
11
13
|
strong: boolean;
|
|
@@ -42,9 +44,11 @@ export declare const BADGE_TAG_NAME: keyof HTMLElementTagNameMap;
|
|
|
42
44
|
* @cssclass forge-badge--dot - Renders the badge as a dot.
|
|
43
45
|
* @cssclass forge-badge__icon - Styles a child element as an icon.
|
|
44
46
|
*/
|
|
45
|
-
export declare class BadgeComponent extends
|
|
47
|
+
export declare class BadgeComponent extends BaseLitElement implements IBadgeComponent {
|
|
46
48
|
#private;
|
|
47
49
|
static styles: import("lit").CSSResult;
|
|
50
|
+
/** @deprecated Used for compatibility with legacy Forge @customElement decorator. */
|
|
51
|
+
static [CUSTOM_ELEMENT_NAME_PROPERTY]: keyof HTMLElementTagNameMap;
|
|
48
52
|
constructor();
|
|
49
53
|
/** Controls whether the badge will be a small dot without any content visible. */
|
|
50
54
|
dot: boolean;
|
package/esm/badge/badge.js
CHANGED
|
@@ -3,12 +3,14 @@
|
|
|
3
3
|
* Copyright Tyler Technologies, Inc.
|
|
4
4
|
* License: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
-
var _BadgeComponent_internals;
|
|
6
|
+
var _BadgeComponent_internals, _a;
|
|
7
7
|
import { __classPrivateFieldGet, __classPrivateFieldSet, __decorate } from "tslib";
|
|
8
|
-
import { html,
|
|
8
|
+
import { html, unsafeCSS } from 'lit';
|
|
9
9
|
import { customElement, property } from 'lit/decorators.js';
|
|
10
|
+
import { toggleState } from '../core/utils/utils';
|
|
11
|
+
import { CUSTOM_ELEMENT_NAME_PROPERTY } from '@tylertech/forge-core';
|
|
12
|
+
import { BaseLitElement } from '../core/base/base-lit-element';
|
|
10
13
|
const styles = ':host{display:flex;box-sizing:border-box}:host([hidden]){display:none}.forge-badge{--_badge-background:var(--forge-badge-background, var(--forge-theme-secondary, #ffc107));--_badge-color:var(--forge-badge-color, var(--forge-theme-on-secondary, #000000));--_badge-shape:var(--forge-badge-shape, calc(var(--forge-shape-full, 9999px) * var(--forge-shape-factor, 1)));--_badge-height:var(--forge-badge-height, 20px);--_badge-min-width:var(--forge-badge-min-width, 0);--_badge-max-width:var(--forge-badge-max-width, auto);--_badge-padding-inline:var(--forge-badge-padding-inline, var(--forge-spacing-xsmall, 8px));--_badge-padding-block:var(--forge-badge-padding-block, 0);--_badge-border-width:var(--forge-badge-border-width, var(--forge-border-thin, 1px));--_badge-border-style:var(--forge-badge-border-style, none);--_badge-border-color:var(--forge-badge-border-color, var(--_badge-color));--_badge-gap:var(--forge-badge-gap, var(--forge-spacing-xsmall, 8px));--_badge-font-weight:var(--forge-badge-font-weight, bold);--_badge-dot-size:var(--forge-badge-dot-size, 8px);--_badge-dot-height:var(--forge-badge-dot-height, var(--_badge-dot-size));--_badge-dot-width:var(--forge-badge-dot-width, var(--_badge-dot-size));--_badge-dot-padding:var(--forge-badge-dot-padding, 0);--_badge-transition-duration:var(--forge-badge-transition-duration, var(--forge-animation-duration-short4, 200ms));--_badge-transition-easing:var(--forge-badge-transition-easing, var(--forge-animation-easing-decelerate, cubic-bezier(0, 0, 0, 1)))}.forge-badge{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:var(--forge-typography-label1-font-family, var(--forge-typography-font-family, \"Roboto\", sans-serif));font-size:var(--forge-typography-label1-font-size, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-label-font-size-scale, .75)));font-weight:var(--forge-typography-label1-font-weight,400);line-height:var(--forge-typography-label1-line-height, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-label-line-height-scale, 1.25)));letter-spacing:var(--forge-typography-label1-letter-spacing, .0357142857em);text-transform:var(--forge-typography-label1-text-transform,inherit);text-decoration:var(--forge-typography-label1-text-decoration,inherit);background:var(--_badge-background);color:var(--_badge-color);height:var(--_badge-height);min-width:var(--_badge-min-width);max-width:var(--_badge-max-width);border-width:var(--_badge-border-width);border-style:var(--_badge-border-style);border-color:var(--_badge-border-color);display:inline-flex;align-items:center;gap:var(--_badge-gap);border-radius:var(--_badge-shape);padding-inline:var(--_badge-padding-inline);padding-block:var(--_badge-padding-block);overflow:hidden;box-sizing:border-box;pointer-events:none;transition:transform var(--_badge-transition-duration) var(--_badge-transition-easing);font-weight:var(--_badge-font-weight);text-overflow:ellipsis;white-space:nowrap}.forge-badge .content{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}::slotted(:is([slot=start],[slot=end])){font-size:inherit}:host(:where([hide],:state(hidden))) .forge-badge{transform:scale(0)}:host(:where([dot],:state(dot))) .forge-badge{--_badge-height:var(--_badge-dot-height);--_badge-min-width:var(--forge-badge-min-width, auto);padding:var(--_badge-dot-padding);width:var(--_badge-dot-width)}:host(:where([dot],:state(dot))) .content>slot{display:none}:host([theme=primary]) .forge-badge{--_badge-background:var(--forge-badge-background, var(--forge-theme-primary-container, #d1d5ed));--_badge-color:var(--forge-badge-color, var(--forge-theme-on-primary-container, #222c62))}:host(:where([strong],:state(strong))[theme=primary]) .forge-badge{--_badge-background:var(--forge-badge-background, var(--forge-theme-primary, #3f51b5));--_badge-color:var(--forge-badge-color, var(--forge-theme-on-primary, #ffffff))}:host([theme=secondary]) .forge-badge{--_badge-background:var(--forge-badge-background, var(--forge-theme-secondary-container, #fff0c3));--_badge-color:var(--forge-badge-color, var(--forge-theme-on-secondary-container, #8a6804))}:host(:where([strong],:state(strong))[theme=secondary]) .forge-badge{--_badge-background:var(--forge-badge-background, var(--forge-theme-secondary, #ffc107));--_badge-color:var(--forge-badge-color, var(--forge-theme-on-secondary, #000000))}:host([theme=tertiary]) .forge-badge{--_badge-background:var(--forge-badge-background, var(--forge-theme-tertiary-container, #d0d7ff));--_badge-color:var(--forge-badge-color, var(--forge-theme-on-tertiary-container, #213189))}:host(:where([strong],:state(strong))[theme=tertiary]) .forge-badge{--_badge-background:var(--forge-badge-background, var(--forge-theme-tertiary, #3d5afe));--_badge-color:var(--forge-badge-color, var(--forge-theme-on-tertiary, #ffffff))}:host([theme=success]) .forge-badge{--_badge-background:var(--forge-badge-background, var(--forge-theme-success-container, #cde0ce));--_badge-color:var(--forge-badge-color, var(--forge-theme-on-success-container, #19441b))}:host(:where([strong],:state(strong))[theme=success]) .forge-badge{--_badge-background:var(--forge-badge-background, var(--forge-theme-success, #2e7d32));--_badge-color:var(--forge-badge-color, var(--forge-theme-on-success, #ffffff))}:host([theme=warning]) .forge-badge{--_badge-background:var(--forge-badge-background, var(--forge-theme-warning-container, #f4d3c2));--_badge-color:var(--forge-badge-color, var(--forge-theme-on-warning-container, #712700))}:host(:where([strong],:state(strong))[theme=warning]) .forge-badge{--_badge-background:var(--forge-badge-background, var(--forge-theme-warning, #d14900));--_badge-color:var(--forge-badge-color, var(--forge-theme-on-warning, #ffffff))}:host(:not(:where([strong],:state(strong))):is([theme=error],[theme=danger])) .forge-badge{--_badge-background:var(--forge-badge-background, var(--forge-theme-error-container-low, #f6e0e4));--_badge-color:var(--forge-badge-color, var(--forge-theme-error, #b00020))}:host(:where([strong],:state(strong)):is([theme=error],[theme=danger])) .forge-badge{--_badge-background:var(--forge-badge-background, var(--forge-theme-error, #b00020));--_badge-color:var(--forge-badge-color, var(--forge-theme-on-error, #ffffff))}:host(:not(:where([strong],:state(strong))):is([theme=info],[theme=info-primary])) .forge-badge{--_badge-background:var(--forge-badge-background, var(--forge-theme-info-container, #c7daf0));--_badge-color:var(--forge-badge-color, var(--forge-theme-on-info-container, #0b3768))}:host(:where([strong],:state(strong)):is([theme=info],[theme=info-primary])) .forge-badge{--_badge-background:var(--forge-badge-background, var(--forge-theme-info, #1565c0));--_badge-color:var(--forge-badge-color, var(--forge-theme-on-info, #ffffff))}:host(:not(:where([strong],:state(strong)))[theme=info-secondary]) .forge-badge{--_badge-background:var(--forge-badge-background, var(--forge-theme-surface-container-low, #ebebeb));--_badge-color:var(--forge-badge-color, var(--forge-theme-on-surface-container-low, #000000))}:host(:where([strong],:state(strong))[theme=info-secondary]) .forge-badge{--_badge-background:var(--forge-badge-background, var(--forge-theme-surface-inverse, #333333));--_badge-color:var(--forge-badge-color, var(--forge-theme-on-surface-inverse, #ffffff))}';
|
|
11
|
-
import { toggleState } from '../core';
|
|
12
14
|
export const BADGE_TAG_NAME = 'forge-badge';
|
|
13
15
|
/**
|
|
14
16
|
* @tag forge-badge
|
|
@@ -35,7 +37,7 @@ export const BADGE_TAG_NAME = 'forge-badge';
|
|
|
35
37
|
* @cssclass forge-badge--dot - Renders the badge as a dot.
|
|
36
38
|
* @cssclass forge-badge__icon - Styles a child element as an icon.
|
|
37
39
|
*/
|
|
38
|
-
let BadgeComponent = class BadgeComponent extends
|
|
40
|
+
let BadgeComponent = class BadgeComponent extends BaseLitElement {
|
|
39
41
|
constructor() {
|
|
40
42
|
super();
|
|
41
43
|
_BadgeComponent_internals.set(this, void 0);
|
|
@@ -73,7 +75,10 @@ let BadgeComponent = class BadgeComponent extends LitElement {
|
|
|
73
75
|
}
|
|
74
76
|
};
|
|
75
77
|
_BadgeComponent_internals = new WeakMap();
|
|
78
|
+
_a = CUSTOM_ELEMENT_NAME_PROPERTY;
|
|
76
79
|
BadgeComponent.styles = unsafeCSS(styles);
|
|
80
|
+
/** @deprecated Used for compatibility with legacy Forge @customElement decorator. */
|
|
81
|
+
BadgeComponent[_a] = BADGE_TAG_NAME;
|
|
77
82
|
__decorate([
|
|
78
83
|
property({ type: Boolean, reflect: true })
|
|
79
84
|
], BadgeComponent.prototype, "dot", void 0);
|
package/esm/button/button.js
CHANGED
|
@@ -14,7 +14,7 @@ import { BUTTON_CONSTANTS } from './button-constants';
|
|
|
14
14
|
import { ButtonCore } from './button-core';
|
|
15
15
|
import { BASE_BUTTON_CONSTANTS } from './base/base-button-constants';
|
|
16
16
|
const template = '<template><div class=\"forge-button\" part=\"root\"><slot name=\"start\"></slot><slot></slot><slot name=\"end\"></slot><forge-focus-indicator target=\":host\" part=\"focus-indicator\"></forge-focus-indicator><forge-state-layer target=\":host\" exportparts=\"surface:state-layer\"></forge-state-layer></div></template>';
|
|
17
|
-
const styles = ':host{--_button-display:var(--forge-button-display, inline-grid);--_button-disabled-cursor:var(--forge-button-disabled-cursor, not-allowed)}:host{display:var(--_button-display);position:relative;outline:0;vertical-align:middle;-webkit-tap-highlight-color:transparent}:host([hidden]){display:none}.forge-button{--_button-primary-color:var(--forge-button-primary-color, var(--forge-theme-primary, #3f51b5));--_button-text-color:var(--forge-button-text-color, var(--_button-primary-color));--_button-disabled-color:var(--forge-button-disabled-color, var(--forge-theme-surface-container, #e0e0e0));--_button-padding:var(--forge-button-padding, var(--forge-spacing-medium, 16px));--_button-justify:var(--forge-button-justify, center);--_button-shape:var(--forge-button-shape, calc(var(--forge-shape-medium, 4px) * var(--forge-shape-factor, 1)));--_button-height:var(--forge-button-height, 36px);--_button-min-width:var(--forge-button-min-width, 64px);--_button-spacing:var(--forge-button-spacing, var(--forge-spacing-xsmall, 8px));--_button-border-width:var(--forge-button-border-width, medium);--_button-border-style:var(--forge-button-border-style, none);--_button-border-color:var(--forge-button-border-color, currentColor);--_button-shape-start-start-radius:var(--forge-button-shape-start-start-radius, var(--_button-shape));--_button-shape-start-end-radius:var(--forge-button-shape-start-end-radius, var(--_button-shape));--_button-shape-end-start-radius:var(--forge-button-shape-end-start-radius, var(--_button-shape));--_button-shape-end-end-radius:var(--forge-button-shape-end-end-radius, var(--_button-shape));--_button-padding-block:var(--forge-button-padding-block, var(--_button-0));--_button-padding-inline:var(--forge-button-padding-inline, var(--_button-padding));--_button-background:var(--forge-button-background, transparent);--_button-hover-background:var(--forge-button-hover-background, var(--_button-background));--_button-active-background:var(--forge-button-active-background, var(--_button-background));--_button-color:var(--forge-button-color, var(--_button-text-color));--_button-icon-size:var(--forge-button-icon-size, calc(var(--forge-typography-font-size, 1rem) * 1.125));--_button-shadow:var(--forge-button-shadow, none);--_button-hover-shadow:var(--forge-button-hover-shadow, none);--_button-active-shadow:var(--forge-button-active-shadow, none);--_button-cursor:var(--forge-button-cursor, pointer);--_button-transition-duration:var(--forge-button-transition-duration, var(--forge-animation-duration-short3, 150ms));--_button-transition-timing:var(--forge-button-transition-timing, var(--forge-animation-easing-standard, cubic-bezier(0.2, 0, 0, 1)));--_button-text-padding-inline:var(--forge-button-text-padding-inline, var(--forge-spacing-xsmall, 8px));--_button-outlined-background:var(--forge-button-outlined-background, transparent);--_button-outlined-color:var(--forge-button-outlined-color, var(--_button-primary-color));--_button-outlined-border-width:var(--forge-button-outlined-border-width, var(--forge-border-thin, 1px));--_button-outlined-border-style:var(--forge-button-outlined-border-style, solid);--_button-outlined-border-color:var(--forge-button-outlined-border-color, var(--_button-primary-color));--_button-tonal-background:var(--forge-button-tonal-background, var(--forge-theme-primary-container, #d1d5ed));--_button-tonal-disabled-background:var(--forge-button-tonal-disabled-background, var(--_button-disabled-color));--_button-tonal-color:var(--forge-button-tonal-color, var(--forge-theme-on-primary-container, #222c62));--_button-tonal-disabled-color:var(--forge-button-tonal-disabled-color, var(--_button-disabled-text-color));--_button-filled-background:var(--forge-button-filled-background, var(--_button-primary-color));--_button-filled-disabled-background:var(--forge-button-filled-disabled-background, var(--_button-disabled-color));--_button-filled-color:var(--forge-button-filled-color, var(--forge-theme-on-primary, #ffffff));--_button-filled-disabled-color:var(--forge-button-filled-disabled-color, var(--_button-disabled-text-color));--_button-raised-background:var(--forge-button-raised-background, var(--_button-primary-color));--_button-raised-disabled-background:var(--forge-button-raised-disabled-background, var(--_button-disabled-color));--_button-raised-color:var(--forge-button-raised-color, var(--forge-theme-on-primary, #ffffff));--_button-raised-disabled-color:var(--forge-button-raised-disabled-color, var(--_button-disabled-text-color));--_button-raised-shadow:var(--forge-button-raised-shadow, 0px 3px 1px -2px rgba(0, 0, 0, 0.2), 0px 2px 2px 0px rgba(0, 0, 0, 0.14), 0px 1px 5px 0px rgba(0, 0, 0, 0.12));--_button-raised-hover-shadow:var(--forge-button-raised-hover-shadow, 0px 2px 4px -1px rgba(0, 0, 0, 0.2), 0px 4px 5px 0px rgba(0, 0, 0, 0.14), 0px 1px 10px 0px rgba(0, 0, 0, 0.12));--_button-raised-active-shadow:var(--forge-button-raised-active-shadow, 0px 5px 5px -3px rgba(0, 0, 0, 0.2), 0px 8px 10px 1px rgba(0, 0, 0, 0.14), 0px 3px 14px 2px rgba(0, 0, 0, 0.12));--_button-raised-disabled-shadow:var(--forge-button-raised-disabled-shadow, none);--_button-link-color:var(--forge-button-link-color, var(--_button-primary-color));--_button-link-text-decoration:var(--forge-button-link-text-decoration, underline);--_button-link-height:var(--forge-button-link-height, auto);--_button-link-padding:var(--forge-button-link-padding, 0);--_button-link-line-height:var(--forge-button-link-line-height, normal);--_button-link-width:var(--forge-button-link-width, auto);--_button-link-hover-text-decoration:var(--forge-button-link-hover-text-decoration, none);--_button-link-active-opacity:var(--forge-button-link-active-opacity, 0.65);--_button-link-transition-duration:var(--forge-button-link-transition-duration, var(--forge-animation-duration-short3, 150ms));--_button-link-transition-timing:var(--forge-button-link-transition-timing, var(--forge-animation-easing-standard, cubic-bezier(0.2, 0, 0, 1)));--_button-disabled-text-color:var(--forge-button-disabled-text-color, var(--forge-theme-text-low, rgba(0, 0, 0, 0.38)));--_button-disabled-background:var(--forge-button-disabled-background, transparent);--_button-disabled-border-color:var(--forge-button-disabled-border-color, var(--_button-disabled-color));--_button-disabled-shadow:var(--forge-button-disabled-shadow, none);--_button-dense-height:var(--forge-button-dense-height, 24px);--_button-pill-shape:var(--forge-button-pill-shape, calc(var(--forge-shape-full, 9999px) * var(--forge-shape-factor, 1)));--_button-pill-padding-inline:var(--forge-button-pill-padding-inline, var(--forge-spacing-small, 12px));--_button-focus-indicator-offset:var(--forge-button-focus-indicator-offset, 4px);--_button-text-focus-indicator-offset:var(--forge-button-text-focus-indicator-offset, 0px);--_button-link-focus-indicator-offset:var(--forge-button-link-focus-indicator-offset, 2px);--_button-popover-icon-transition-duration:var(--forge-button-popover-icon-transition-duration, var(--forge-animation-duration-short3, 150ms));--_button-popover-icon-transition-timing:var(--forge-button-popover-icon-transition-timing, var(--forge-animation-easing-standard, cubic-bezier(0.2, 0, 0, 1)));--_button-popover-icon-open-rotation:var(--forge-button-popover-icon-open-rotation, 180deg)}.forge-button{-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);position:relative;display:var(--_button-display);grid-auto-flow:column;align-items:center;justify-content:var(--_button-justify);gap:var(--_button-spacing);z-index:0;box-sizing:border-box;min-inline-size:var(--_button-min-width);height:var(--_button-height);inline-size:100%;border-width:var(--_button-border-width);border-style:var(--_button-border-style);border-color:var(--_button-border-color);border-start-start-radius:var(--_button-shape-start-start-radius);border-start-end-radius:var(--_button-shape-start-end-radius);border-end-start-radius:var(--_button-shape-end-start-radius);border-end-end-radius:var(--_button-shape-end-end-radius);padding-block:var(--_button-padding-block);padding-inline:var(--_button-padding-inline);box-shadow:var(--_button-shadow);outline:0;user-select:none;-webkit-appearance:none;vertical-align:middle;text-decoration:none;white-space:nowrap;background:var(--_button-background);color:var(--_button-color);cursor:var(--_button-cursor);transition-property:box-shadow,background;transition-duration:var(--_button-transition-duration);transition-timing-function:var(--_button-transition-timing)}.forge-button::-moz-focus-inner{padding:0;border:0}.forge-button:hover{--_button-shadow:var(--_button-hover-shadow);background:var(--_button-hover-background)}.forge-button:active{--_button-shadow:var(--_button-active-shadow);background:var(--_button-active-background)}.forge-button ::slotted(:is([slot=start],[slot=end])){font-size:var(--_button-icon-size)}.with-anchor{display:flex;justify-content:stretch;align-items:stretch;padding:0}::slotted(a){display:flex;align-items:center;justify-content:center;gap:var(--_button-spacing);width:100%;padding:var(--_button-padding);color:var(--_button-color);outline:0;border-radius:var(--_button-shape);text-decoration:none;--forge-icon-font-size:var(--_button-icon-size)}:host([variant=link]) ::slotted(a){position:relative;inset:auto}forge-state-layer{--forge-state-layer-color:var(--_button-color)}forge-focus-indicator{--forge-focus-indicator-color:var(--_button-primary-color);--forge-focus-indicator-outward-offset:var(--_button-focus-indicator-offset)}:host([theme=secondary]) .forge-button{--_button-primary-color:var(--forge-button-primary-color, var(--forge-theme-secondary, #ffc107))}:host([theme=secondary][variant=filled]) .forge-button{--_button-filled-color:var(--forge-button-filled-color, var(--forge-theme-on-secondary, #000000))}:host([theme=secondary][variant=raised]) .forge-button{--_button-raised-color:var(--forge-button-raised-color, var(--forge-theme-on-secondary, #000000))}:host([theme=secondary][variant=tonal]) .forge-button{--_button-tonal-background:var(--forge-button-tonal-background, var(--forge-theme-secondary-container, #fff0c3));--_button-tonal-color:var(--forge-button-tonal-color, var(--forge-theme-on-secondary-container, #8a6804))}:host([theme=tertiary]) .forge-button{--_button-primary-color:var(--forge-button-primary-color, var(--forge-theme-tertiary, #3d5afe))}:host([theme=tertiary][variant=filled]) .forge-button{--_button-filled-color:var(--forge-button-filled-color, var(--forge-theme-on-tertiary, #ffffff))}:host([theme=tertiary][variant=raised]) .forge-button{--_button-raised-color:var(--forge-button-raised-color, var(--forge-theme-on-tertiary, #ffffff))}:host([theme=tertiary][variant=tonal]) .forge-button{--_button-tonal-background:var(--forge-button-tonal-background, var(--forge-theme-tertiary-container, #d0d7ff));--_button-tonal-color:var(--forge-button-tonal-color, var(--forge-theme-on-tertiary-container, #213189))}:host([theme=success]) .forge-button{--_button-primary-color:var(--forge-button-primary-color, var(--forge-theme-success, #2e7d32))}:host([theme=success][variant=filled]) .forge-button{--_button-filled-color:var(--forge-button-filled-color, var(--forge-theme-on-success, #ffffff))}:host([theme=success][variant=raised]) .forge-button{--_button-raised-color:var(--forge-button-raised-color, var(--forge-theme-on-success, #ffffff))}:host([theme=success][variant=tonal]) .forge-button{--_button-tonal-background:var(--forge-button-tonal-background, var(--forge-theme-success-container, #cde0ce));--_button-tonal-color:var(--forge-button-tonal-color, var(--forge-theme-on-success-container, #19441b))}:host([theme=error]) .forge-button{--_button-primary-color:var(--forge-button-primary-color, var(--forge-theme-error, #b00020))}:host([theme=error][variant=filled]) .forge-button{--_button-filled-color:var(--forge-button-filled-color, var(--forge-theme-on-error, #ffffff))}:host([theme=error][variant=raised]) .forge-button{--_button-raised-color:var(--forge-button-raised-color, var(--forge-theme-on-error, #ffffff))}:host([theme=error][variant=tonal]) .forge-button{--_button-tonal-background:var(--forge-button-tonal-background, var(--forge-theme-error-container, #ecc2c9));--_button-tonal-color:var(--forge-button-tonal-color, var(--forge-theme-on-error-container, #5f0011))}:host([theme=warning]) .forge-button{--_button-primary-color:var(--forge-button-primary-color, var(--forge-theme-warning, #d14900))}:host([theme=warning][variant=filled]) .forge-button{--_button-filled-color:var(--forge-button-filled-color, var(--forge-theme-on-warning, #ffffff))}:host([theme=warning][variant=raised]) .forge-button{--_button-raised-color:var(--forge-button-raised-color, var(--forge-theme-on-warning, #ffffff))}:host([theme=warning][variant=tonal]) .forge-button{--_button-tonal-background:var(--forge-button-tonal-background, var(--forge-theme-warning-container, #f4d3c2));--_button-tonal-color:var(--forge-button-tonal-color, var(--forge-theme-on-warning-container, #712700))}:host([theme=info]) .forge-button{--_button-primary-color:var(--forge-button-primary-color, var(--forge-theme-info, #1565c0))}:host([theme=info][variant=filled]) .forge-button{--_button-filled-color:var(--forge-button-filled-color, var(--forge-theme-on-info, #ffffff))}:host([theme=info][variant=raised]) .forge-button{--_button-raised-color:var(--forge-button-raised-color, var(--forge-theme-on-info, #ffffff))}:host([theme=info][variant=tonal]) .forge-button{--_button-tonal-background:var(--forge-button-tonal-background, var(--forge-theme-info-container, #c7daf0));--_button-tonal-color:var(--forge-button-tonal-color, var(--forge-theme-on-info-container, #0b3768))}:host(:where(:not([variant]),[variant=text])) .forge-button{--_button-padding-inline:var(--_button-text-padding-inline)}:host([variant=filled]) .forge-button{--_button-background:var(--_button-filled-background);--_button-color:var(--_button-filled-color)}:host([variant=filled]) forge-state-layer{--forge-state-layer-color:var(--_button-filled-color)}:host([variant=raised]) .forge-button{--_button-background:var(--_button-raised-background);--_button-color:var(--_button-raised-color);--_button-shadow:var(--_button-raised-shadow)}:host([variant=raised]) .forge-button:hover{--_button-shadow:var(--_button-raised-hover-shadow)}:host([variant=raised]) .forge-button:active{--_button-shadow:var(--_button-raised-active-shadow)}:host([variant=raised]) forge-state-layer{--forge-state-layer-color:var(--_button-raised-color)}:host([variant=tonal]) .forge-button{--_button-background:var(--_button-tonal-background);--_button-color:var(--_button-tonal-color)}:host([variant=tonal]) forge-state-layer{--forge-state-layer-color:var(--_button-tonal-color)}:host([variant=outlined]) .forge-button{--_button-background:var(--_button-outlined-background);--_button-color:var(--_button-outlined-color);--_button-border-width:var(--_button-outlined-border-width);--_button-border-style:var(--_button-outlined-border-style);--_button-border-color:var(--_button-outlined-border-color)}:host([variant=link]) .forge-button{--_button-color:var(--_button-link-color);--_button-height:var(--_button-link-height);--_button-padding:var(--_button-link-padding);--_button-focus-indicator-offset:var(--_button-link-focus-indicator-offset);text-decoration:var(--_button-link-text-decoration);line-height:var(--_button-link-line-height);transition:opacity var(--_button-link-transition-duration) var(--_button-link-transition-timing);inline-size:var(--_button-link-width)}:host([variant=link]) .forge-button:hover{text-decoration:var(--_button-link-hover-text-decoration)}:host([variant=link]) .forge-button:active{opacity:var(--_button-link-active-opacity)}:host([full-width]){width:100%}:host([dense]) .forge-button{--_button-height:var(--_button-dense-height)}:host([pill]) .forge-button{--_button-shape:var(--_button-pill-shape);--_button-padding-inline:var(--_button-pill-padding-inline)}:host([pill]) forge-focus-indicator{--forge-focus-indicator-shape:var(--_button-pill-shape)}:host(:not([anchor])[disabled]){cursor:var(--_button-disabled-cursor)}:host(:not([anchor])[disabled]) .forge-button{--_button-background:var(--_button-disabled-background);--_button-color:var(--_button-disabled-text-color);--_button-shadow:var(--_button-disabled-shadow);pointer-events:none}:host(:not([anchor])[variant=outlined][disabled]) .forge-button{--_button-border-color:var(--_button-disabled-border-color)}:host(:not([anchor])[variant=tonal][disabled]) .forge-button{--_button-background:var(--_button-tonal-disabled-background);--_button-color:var(--_button-tonal-disabled-color)}:host(:not([anchor])[variant=filled][disabled]) .forge-button{--_button-background:var(--_button-filled-disabled-background);--_button-color:var(--_button-filled-disabled-color)}:host(:not([anchor])[variant=raised][disabled]) .forge-button{--_button-background:var(--_button-raised-disabled-background);--_button-color:var(--_button-raised-disabled-color);--_button-shadow:var(--_button-raised-disabled-shadow)}:host([popover-icon]) .forge-button__popover-icon{transition:rotate var(--_button-popover-icon-transition-duration) var(--_button-popover-icon-transition-timing)}:host([popover-icon][aria-expanded=true]) .forge-button__popover-icon{rotate:var(--_button-popover-icon-open-rotation)}::slotted(forge-circular-progress){--forge-circular-progress-indicator-color:var(--_button-color);--forge-circular-progress-track-color:transparent;--forge-circular-progress-size:1em}';
|
|
17
|
+
const styles = ':host{--_button-display:var(--forge-button-display, inline-grid);--_button-disabled-cursor:var(--forge-button-disabled-cursor, not-allowed)}:host{display:var(--_button-display);position:relative;outline:0;vertical-align:middle;-webkit-tap-highlight-color:transparent}:host([hidden]){display:none}.forge-button{--_button-primary-color:var(--forge-button-primary-color, var(--forge-theme-primary, #3f51b5));--_button-text-color:var(--forge-button-text-color, var(--_button-primary-color));--_button-disabled-color:var(--forge-button-disabled-color, var(--forge-theme-surface-container, #e0e0e0));--_button-padding:var(--forge-button-padding, var(--forge-spacing-medium, 16px));--_button-justify:var(--forge-button-justify, center);--_button-shape:var(--forge-button-shape, calc(var(--forge-shape-medium, 4px) * var(--forge-shape-factor, 1)));--_button-height:var(--forge-button-height, 36px);--_button-min-width:var(--forge-button-min-width, 64px);--_button-spacing:var(--forge-button-spacing, var(--forge-spacing-xsmall, 8px));--_button-border-width:var(--forge-button-border-width, medium);--_button-border-style:var(--forge-button-border-style, none);--_button-border-color:var(--forge-button-border-color, currentColor);--_button-shape-start-start-radius:var(--forge-button-shape-start-start-radius, var(--_button-shape));--_button-shape-start-end-radius:var(--forge-button-shape-start-end-radius, var(--_button-shape));--_button-shape-end-start-radius:var(--forge-button-shape-end-start-radius, var(--_button-shape));--_button-shape-end-end-radius:var(--forge-button-shape-end-end-radius, var(--_button-shape));--_button-padding-block:var(--forge-button-padding-block, var(--_button-0));--_button-padding-inline:var(--forge-button-padding-inline, var(--_button-padding));--_button-background:var(--forge-button-background, transparent);--_button-hover-background:var(--forge-button-hover-background, var(--_button-background));--_button-active-background:var(--forge-button-active-background, var(--_button-background));--_button-color:var(--forge-button-color, var(--_button-text-color));--_button-icon-size:var(--forge-button-icon-size, calc(var(--forge-typography-font-size, 1rem) * 1.125));--_button-shadow:var(--forge-button-shadow, none);--_button-hover-shadow:var(--forge-button-hover-shadow, none);--_button-active-shadow:var(--forge-button-active-shadow, none);--_button-cursor:var(--forge-button-cursor, pointer);--_button-transition-duration:var(--forge-button-transition-duration, var(--forge-animation-duration-short3, 150ms));--_button-transition-timing:var(--forge-button-transition-timing, var(--forge-animation-easing-standard, cubic-bezier(0.2, 0, 0, 1)));--_button-text-padding-inline:var(--forge-button-text-padding-inline, var(--forge-spacing-xsmall, 8px));--_button-outlined-background:var(--forge-button-outlined-background, transparent);--_button-outlined-color:var(--forge-button-outlined-color, var(--_button-primary-color));--_button-outlined-border-width:var(--forge-button-outlined-border-width, var(--forge-border-thin, 1px));--_button-outlined-border-style:var(--forge-button-outlined-border-style, solid);--_button-outlined-border-color:var(--forge-button-outlined-border-color, var(--_button-primary-color));--_button-tonal-background:var(--forge-button-tonal-background, var(--forge-theme-primary-container, #d1d5ed));--_button-tonal-disabled-background:var(--forge-button-tonal-disabled-background, var(--_button-disabled-color));--_button-tonal-color:var(--forge-button-tonal-color, var(--forge-theme-on-primary-container, #222c62));--_button-tonal-disabled-color:var(--forge-button-tonal-disabled-color, var(--_button-disabled-text-color));--_button-filled-background:var(--forge-button-filled-background, var(--_button-primary-color));--_button-filled-disabled-background:var(--forge-button-filled-disabled-background, var(--_button-disabled-color));--_button-filled-color:var(--forge-button-filled-color, var(--forge-theme-on-primary, #ffffff));--_button-filled-disabled-color:var(--forge-button-filled-disabled-color, var(--_button-disabled-text-color));--_button-raised-background:var(--forge-button-raised-background, var(--_button-primary-color));--_button-raised-disabled-background:var(--forge-button-raised-disabled-background, var(--_button-disabled-color));--_button-raised-color:var(--forge-button-raised-color, var(--forge-theme-on-primary, #ffffff));--_button-raised-disabled-color:var(--forge-button-raised-disabled-color, var(--_button-disabled-text-color));--_button-raised-shadow:var(--forge-button-raised-shadow, 0px 3px 1px -2px rgba(0, 0, 0, 0.2), 0px 2px 2px 0px rgba(0, 0, 0, 0.14), 0px 1px 5px 0px rgba(0, 0, 0, 0.12));--_button-raised-hover-shadow:var(--forge-button-raised-hover-shadow, 0px 2px 4px -1px rgba(0, 0, 0, 0.2), 0px 4px 5px 0px rgba(0, 0, 0, 0.14), 0px 1px 10px 0px rgba(0, 0, 0, 0.12));--_button-raised-active-shadow:var(--forge-button-raised-active-shadow, 0px 5px 5px -3px rgba(0, 0, 0, 0.2), 0px 8px 10px 1px rgba(0, 0, 0, 0.14), 0px 3px 14px 2px rgba(0, 0, 0, 0.12));--_button-raised-disabled-shadow:var(--forge-button-raised-disabled-shadow, none);--_button-link-color:var(--forge-button-link-color, var(--_button-primary-color));--_button-link-text-decoration:var(--forge-button-link-text-decoration, underline);--_button-link-height:var(--forge-button-link-height, auto);--_button-link-padding:var(--forge-button-link-padding, 0);--_button-link-line-height:var(--forge-button-link-line-height, normal);--_button-link-width:var(--forge-button-link-width, auto);--_button-link-hover-text-decoration:var(--forge-button-link-hover-text-decoration, none);--_button-link-active-opacity:var(--forge-button-link-active-opacity, 0.65);--_button-link-transition-duration:var(--forge-button-link-transition-duration, var(--forge-animation-duration-short3, 150ms));--_button-link-transition-timing:var(--forge-button-link-transition-timing, var(--forge-animation-easing-standard, cubic-bezier(0.2, 0, 0, 1)));--_button-disabled-text-color:var(--forge-button-disabled-text-color, var(--forge-theme-text-low, rgba(0, 0, 0, 0.38)));--_button-disabled-background:var(--forge-button-disabled-background, transparent);--_button-disabled-border-color:var(--forge-button-disabled-border-color, var(--_button-disabled-color));--_button-disabled-shadow:var(--forge-button-disabled-shadow, none);--_button-dense-height:var(--forge-button-dense-height, 24px);--_button-pill-shape:var(--forge-button-pill-shape, calc(var(--forge-shape-full, 9999px) * var(--forge-shape-factor, 1)));--_button-pill-padding-inline:var(--forge-button-pill-padding-inline, var(--forge-spacing-small, 12px));--_button-focus-indicator-offset:var(--forge-button-focus-indicator-offset, 4px);--_button-text-focus-indicator-offset:var(--forge-button-text-focus-indicator-offset, 0px);--_button-link-focus-indicator-offset:var(--forge-button-link-focus-indicator-offset, 2px);--_button-popover-icon-transition-duration:var(--forge-button-popover-icon-transition-duration, var(--forge-animation-duration-short3, 150ms));--_button-popover-icon-transition-timing:var(--forge-button-popover-icon-transition-timing, var(--forge-animation-easing-standard, cubic-bezier(0.2, 0, 0, 1)));--_button-popover-icon-open-rotation:var(--forge-button-popover-icon-open-rotation, 180deg)}.forge-button{-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);position:relative;display:var(--_button-display);grid-auto-flow:column;align-items:center;justify-content:var(--_button-justify);gap:var(--_button-spacing);z-index:0;box-sizing:border-box;min-inline-size:var(--_button-min-width);height:var(--_button-height);inline-size:100%;border-width:var(--_button-border-width);border-style:var(--_button-border-style);border-color:var(--_button-border-color);border-start-start-radius:var(--_button-shape-start-start-radius);border-start-end-radius:var(--_button-shape-start-end-radius);border-end-start-radius:var(--_button-shape-end-start-radius);border-end-end-radius:var(--_button-shape-end-end-radius);padding-block:var(--_button-padding-block);padding-inline:var(--_button-padding-inline);box-shadow:var(--_button-shadow);outline:0;user-select:none;-webkit-appearance:none;vertical-align:middle;text-decoration:none;white-space:nowrap;background:var(--_button-background);color:var(--_button-color);cursor:var(--_button-cursor);transition-property:box-shadow,background;transition-duration:var(--_button-transition-duration);transition-timing-function:var(--_button-transition-timing)}.forge-button::-moz-focus-inner{padding:0;border:0}.forge-button:hover{--_button-shadow:var(--_button-hover-shadow);background:var(--_button-hover-background)}.forge-button:active{--_button-shadow:var(--_button-active-shadow);background:var(--_button-active-background)}.forge-button ::slotted(:is([slot=start],[slot=end])){font-size:var(--_button-icon-size)}.with-anchor{display:flex;justify-content:stretch;align-items:stretch;padding:0}::slotted(a){display:flex;align-items:center;justify-content:center;gap:var(--_button-spacing);width:100%;padding:var(--_button-padding);color:var(--_button-color);outline:0;border-radius:var(--_button-shape);text-decoration:none;--forge-icon-font-size:var(--_button-icon-size)}:host([variant=link]) ::slotted(a){position:relative;inset:auto}forge-state-layer{--forge-state-layer-color:var(--_button-color)}forge-focus-indicator{--forge-focus-indicator-color:var(--_button-primary-color);--forge-focus-indicator-outward-offset:var(--_button-focus-indicator-offset)}:host([theme=secondary]) .forge-button{--_button-primary-color:var(--forge-button-primary-color, var(--forge-theme-secondary, #ffc107))}:host([theme=secondary][variant=filled]) .forge-button{--_button-filled-color:var(--forge-button-filled-color, var(--forge-theme-on-secondary, #000000))}:host([theme=secondary][variant=raised]) .forge-button{--_button-raised-color:var(--forge-button-raised-color, var(--forge-theme-on-secondary, #000000))}:host([theme=secondary][variant=tonal]) .forge-button{--_button-tonal-background:var(--forge-button-tonal-background, var(--forge-theme-secondary-container, #fff0c3));--_button-tonal-color:var(--forge-button-tonal-color, var(--forge-theme-on-secondary-container, #8a6804))}:host([theme=tertiary]) .forge-button{--_button-primary-color:var(--forge-button-primary-color, var(--forge-theme-tertiary, #3d5afe))}:host([theme=tertiary][variant=filled]) .forge-button{--_button-filled-color:var(--forge-button-filled-color, var(--forge-theme-on-tertiary, #ffffff))}:host([theme=tertiary][variant=raised]) .forge-button{--_button-raised-color:var(--forge-button-raised-color, var(--forge-theme-on-tertiary, #ffffff))}:host([theme=tertiary][variant=tonal]) .forge-button{--_button-tonal-background:var(--forge-button-tonal-background, var(--forge-theme-tertiary-container, #d0d7ff));--_button-tonal-color:var(--forge-button-tonal-color, var(--forge-theme-on-tertiary-container, #213189))}:host([theme=success]) .forge-button{--_button-primary-color:var(--forge-button-primary-color, var(--forge-theme-success, #2e7d32))}:host([theme=success][variant=filled]) .forge-button{--_button-filled-color:var(--forge-button-filled-color, var(--forge-theme-on-success, #ffffff))}:host([theme=success][variant=raised]) .forge-button{--_button-raised-color:var(--forge-button-raised-color, var(--forge-theme-on-success, #ffffff))}:host([theme=success][variant=tonal]) .forge-button{--_button-tonal-background:var(--forge-button-tonal-background, var(--forge-theme-success-container, #cde0ce));--_button-tonal-color:var(--forge-button-tonal-color, var(--forge-theme-on-success-container, #19441b))}:host([theme=error]) .forge-button{--_button-primary-color:var(--forge-button-primary-color, var(--forge-theme-error, #b00020))}:host([theme=error][variant=filled]) .forge-button{--_button-filled-color:var(--forge-button-filled-color, var(--forge-theme-on-error, #ffffff))}:host([theme=error][variant=raised]) .forge-button{--_button-raised-color:var(--forge-button-raised-color, var(--forge-theme-on-error, #ffffff))}:host([theme=error][variant=tonal]) .forge-button{--_button-tonal-background:var(--forge-button-tonal-background, var(--forge-theme-error-container, #ecc2c9));--_button-tonal-color:var(--forge-button-tonal-color, var(--forge-theme-on-error-container, #5f0011))}:host([theme=warning]) .forge-button{--_button-primary-color:var(--forge-button-primary-color, var(--forge-theme-warning, #d14900))}:host([theme=warning][variant=filled]) .forge-button{--_button-filled-color:var(--forge-button-filled-color, var(--forge-theme-on-warning, #ffffff))}:host([theme=warning][variant=raised]) .forge-button{--_button-raised-color:var(--forge-button-raised-color, var(--forge-theme-on-warning, #ffffff))}:host([theme=warning][variant=tonal]) .forge-button{--_button-tonal-background:var(--forge-button-tonal-background, var(--forge-theme-warning-container, #f4d3c2));--_button-tonal-color:var(--forge-button-tonal-color, var(--forge-theme-on-warning-container, #712700))}:host([theme=info]) .forge-button{--_button-primary-color:var(--forge-button-primary-color, var(--forge-theme-info, #1565c0))}:host([theme=info][variant=filled]) .forge-button{--_button-filled-color:var(--forge-button-filled-color, var(--forge-theme-on-info, #ffffff))}:host([theme=info][variant=raised]) .forge-button{--_button-raised-color:var(--forge-button-raised-color, var(--forge-theme-on-info, #ffffff))}:host([theme=info][variant=tonal]) .forge-button{--_button-tonal-background:var(--forge-button-tonal-background, var(--forge-theme-info-container, #c7daf0));--_button-tonal-color:var(--forge-button-tonal-color, var(--forge-theme-on-info-container, #0b3768))}:host([theme=app-bar]){--forge-button-text-color:var(--_app-bar-theme-foreground);--forge-button-outlined-color:var(--_app-bar-theme-foreground);--forge-button-outlined-border-color:var(--_app-bar-theme-foreground);--forge-button-link-color:var(--_app-bar-theme-foreground)}:host([theme=app-bar]) forge-focus-indicator{--forge-focus-indicator-color:var(--_app-bar-theme-foreground)}:host(:where(:not([variant]),[variant=text])) .forge-button{--_button-padding-inline:var(--_button-text-padding-inline)}:host([variant=filled]) .forge-button{--_button-background:var(--_button-filled-background);--_button-color:var(--_button-filled-color)}:host([variant=filled]) forge-state-layer{--forge-state-layer-color:var(--_button-filled-color)}:host([variant=raised]) .forge-button{--_button-background:var(--_button-raised-background);--_button-color:var(--_button-raised-color);--_button-shadow:var(--_button-raised-shadow)}:host([variant=raised]) .forge-button:hover{--_button-shadow:var(--_button-raised-hover-shadow)}:host([variant=raised]) .forge-button:active{--_button-shadow:var(--_button-raised-active-shadow)}:host([variant=raised]) forge-state-layer{--forge-state-layer-color:var(--_button-raised-color)}:host([variant=tonal]) .forge-button{--_button-background:var(--_button-tonal-background);--_button-color:var(--_button-tonal-color)}:host([variant=tonal]) forge-state-layer{--forge-state-layer-color:var(--_button-tonal-color)}:host([variant=outlined]) .forge-button{--_button-background:var(--_button-outlined-background);--_button-color:var(--_button-outlined-color);--_button-border-width:var(--_button-outlined-border-width);--_button-border-style:var(--_button-outlined-border-style);--_button-border-color:var(--_button-outlined-border-color)}:host([variant=link]) .forge-button{--_button-color:var(--_button-link-color);--_button-height:var(--_button-link-height);--_button-padding:var(--_button-link-padding);--_button-focus-indicator-offset:var(--_button-link-focus-indicator-offset);text-decoration:var(--_button-link-text-decoration);line-height:var(--_button-link-line-height);transition:opacity var(--_button-link-transition-duration) var(--_button-link-transition-timing);inline-size:var(--_button-link-width)}:host([variant=link]) .forge-button:hover{text-decoration:var(--_button-link-hover-text-decoration)}:host([variant=link]) .forge-button:active{opacity:var(--_button-link-active-opacity)}:host([full-width]){width:100%}:host([dense]) .forge-button{--_button-height:var(--_button-dense-height)}:host([pill]) .forge-button{--_button-shape:var(--_button-pill-shape);--_button-padding-inline:var(--_button-pill-padding-inline)}:host([pill]) forge-focus-indicator{--forge-focus-indicator-shape:var(--_button-pill-shape)}:host(:not([anchor])[disabled]){cursor:var(--_button-disabled-cursor)}:host(:not([anchor])[disabled]) .forge-button{--_button-background:var(--_button-disabled-background);--_button-color:var(--_button-disabled-text-color);--_button-shadow:var(--_button-disabled-shadow);pointer-events:none}:host(:not([anchor])[variant=outlined][disabled]) .forge-button{--_button-border-color:var(--_button-disabled-border-color)}:host(:not([anchor])[variant=tonal][disabled]) .forge-button{--_button-background:var(--_button-tonal-disabled-background);--_button-color:var(--_button-tonal-disabled-color)}:host(:not([anchor])[variant=filled][disabled]) .forge-button{--_button-background:var(--_button-filled-disabled-background);--_button-color:var(--_button-filled-disabled-color)}:host(:not([anchor])[variant=raised][disabled]) .forge-button{--_button-background:var(--_button-raised-disabled-background);--_button-color:var(--_button-raised-disabled-color);--_button-shadow:var(--_button-raised-disabled-shadow)}:host([popover-icon]) .forge-button__popover-icon{transition:rotate var(--_button-popover-icon-transition-duration) var(--_button-popover-icon-transition-timing)}:host([popover-icon][aria-expanded=true]) .forge-button__popover-icon{rotate:var(--_button-popover-icon-open-rotation)}::slotted(forge-circular-progress){--forge-circular-progress-indicator-color:var(--_button-color);--forge-circular-progress-track-color:transparent;--forge-circular-progress-size:1em}';
|
|
18
18
|
/**
|
|
19
19
|
* @tag forge-button
|
|
20
20
|
*
|
package/esm/card/card.d.ts
CHANGED
|
@@ -3,8 +3,10 @@
|
|
|
3
3
|
* Copyright Tyler Technologies, Inc.
|
|
4
4
|
* License: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
-
import {
|
|
7
|
-
|
|
6
|
+
import { PropertyValues, TemplateResult } from 'lit';
|
|
7
|
+
import { CUSTOM_ELEMENT_NAME_PROPERTY } from '@tylertech/forge-core';
|
|
8
|
+
import { BaseLitElement } from '../core/base/base-lit-element';
|
|
9
|
+
export interface ICardComponent extends BaseLitElement {
|
|
8
10
|
raised: boolean;
|
|
9
11
|
}
|
|
10
12
|
declare global {
|
|
@@ -38,9 +40,11 @@ export declare const CARD_TAG_NAME: keyof HTMLElementTagNameMap;
|
|
|
38
40
|
* @cssclass forge-card - The card container element _(required)_.
|
|
39
41
|
* @cssclass forge-card--raised - The card container element when raised _(required)_.
|
|
40
42
|
*/
|
|
41
|
-
export declare class CardComponent extends
|
|
43
|
+
export declare class CardComponent extends BaseLitElement implements ICardComponent {
|
|
42
44
|
#private;
|
|
43
45
|
static styles: import("lit").CSSResult;
|
|
46
|
+
/** @deprecated Used for compatibility with legacy Forge @customElement decorator. */
|
|
47
|
+
static [CUSTOM_ELEMENT_NAME_PROPERTY]: keyof HTMLElementTagNameMap;
|
|
44
48
|
/** Whether the card has elevation or not. */
|
|
45
49
|
raised: boolean;
|
|
46
50
|
constructor();
|
package/esm/card/card.js
CHANGED
|
@@ -3,11 +3,13 @@
|
|
|
3
3
|
* Copyright Tyler Technologies, Inc.
|
|
4
4
|
* License: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
-
var _CardComponent_internals;
|
|
6
|
+
var _CardComponent_internals, _a;
|
|
7
7
|
import { __classPrivateFieldGet, __classPrivateFieldSet, __decorate } from "tslib";
|
|
8
|
-
import { html,
|
|
8
|
+
import { html, unsafeCSS } from 'lit';
|
|
9
9
|
import { customElement, property } from 'lit/decorators.js';
|
|
10
10
|
import { toggleState } from '../core/utils/utils';
|
|
11
|
+
import { CUSTOM_ELEMENT_NAME_PROPERTY } from '@tylertech/forge-core';
|
|
12
|
+
import { BaseLitElement } from '../core/base/base-lit-element';
|
|
11
13
|
const styles = ':host{display:block}:host([hidden]){display:none}.forge-card{--_card-background:var(--forge-card-background, var(--forge-theme-surface, #ffffff));--_card-height:var(--forge-card-height, 100%);--_card-width:var(--forge-card-width, 100%);--_card-outline-color:var(--forge-card-outline-color, var(--forge-theme-outline, #e0e0e0));--_card-outline-width:var(--forge-card-outline-width, var(--forge-border-thin, 1px));--_card-outline-style:var(--forge-card-outline-style, solid);--_card-elevation:var(--forge-card-elevation, none);--_card-padding:var(--forge-card-padding, var(--forge-spacing-medium, 16px));--_card-shape:var(--forge-card-shape, calc(var(--forge-shape-medium, 4px) * var(--forge-shape-factor, 1)));--_card-overflow:var(--forge-card-overflow, initial);--_card-raised-elevation:var(--forge-card-raised-elevation, 0px 2px 1px -1px rgba(0, 0, 0, 0.2), 0px 1px 1px 0px rgba(0, 0, 0, 0.14), 0px 1px 3px 0px rgba(0, 0, 0, 0.12));--_card-raised-outline-width:var(--forge-card-raised-outline-width, 0)}.forge-card{background:var(--_card-background);border-color:var(--_card-outline-color);border-width:var(--_card-outline-width);border-style:var(--_card-outline-style);border-radius:var(--_card-shape);box-shadow:var(--_card-elevation);box-sizing:border-box;padding:var(--_card-padding);overflow:var(--_card-overflow);height:var(--_card-height);width:var(--_card-width);-webkit-tap-highlight-color:transparent}:host(:where([raised],:state(raised))) .forge-card{--_card-elevation:var(--_card-raised-elevation);--_card-outline-width:var(--_card-raised-outline-width)}:host([no-padding]) .forge-card{--_card-padding:var(--forge-card-padding, 0)}';
|
|
12
14
|
export const CARD_TAG_NAME = 'forge-card';
|
|
13
15
|
/**
|
|
@@ -35,7 +37,7 @@ export const CARD_TAG_NAME = 'forge-card';
|
|
|
35
37
|
* @cssclass forge-card - The card container element _(required)_.
|
|
36
38
|
* @cssclass forge-card--raised - The card container element when raised _(required)_.
|
|
37
39
|
*/
|
|
38
|
-
let CardComponent = class CardComponent extends
|
|
40
|
+
let CardComponent = class CardComponent extends BaseLitElement {
|
|
39
41
|
constructor() {
|
|
40
42
|
super();
|
|
41
43
|
_CardComponent_internals.set(this, void 0);
|
|
@@ -53,7 +55,10 @@ let CardComponent = class CardComponent extends LitElement {
|
|
|
53
55
|
}
|
|
54
56
|
};
|
|
55
57
|
_CardComponent_internals = new WeakMap();
|
|
58
|
+
_a = CUSTOM_ELEMENT_NAME_PROPERTY;
|
|
56
59
|
CardComponent.styles = unsafeCSS(styles);
|
|
60
|
+
/** @deprecated Used for compatibility with legacy Forge @customElement decorator. */
|
|
61
|
+
CardComponent[_a] = CARD_TAG_NAME;
|
|
57
62
|
__decorate([
|
|
58
63
|
property({ type: Boolean, reflect: true })
|
|
59
64
|
], CardComponent.prototype, "raised", void 0);
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright Tyler Technologies, Inc.
|
|
4
|
+
* License: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { LitElement } from 'lit';
|
|
7
|
+
import { readoptLitElementStyles } from '../utils/lit-utils';
|
|
8
|
+
export class BaseLitElement extends LitElement {
|
|
9
|
+
adoptedCallback() {
|
|
10
|
+
readoptLitElementStyles(this);
|
|
11
|
+
}
|
|
12
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright Tyler Technologies, Inc.
|
|
4
|
+
* License: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { LitElement } from 'lit';
|
|
7
|
+
/**
|
|
8
|
+
* Readopts styles for the given element in the context of its new window.
|
|
9
|
+
* @param element The element to readopt styles for.
|
|
10
|
+
*/
|
|
11
|
+
export declare function readoptLitElementStyles(element: LitElement): void;
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright Tyler Technologies, Inc.
|
|
4
|
+
* License: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { supportsAdoptingStyleSheets } from 'lit';
|
|
7
|
+
/**
|
|
8
|
+
* Readopts styles for the given element in the context of its new window.
|
|
9
|
+
* @param element The element to readopt styles for.
|
|
10
|
+
*/
|
|
11
|
+
export function readoptLitElementStyles(element) {
|
|
12
|
+
const shadowRoot = element.shadowRoot;
|
|
13
|
+
const styles = element.constructor.styles;
|
|
14
|
+
const defaultView = element.ownerDocument.defaultView;
|
|
15
|
+
if (!supportsAdoptingStyleSheets || !shadowRoot || !styles || !defaultView) {
|
|
16
|
+
return;
|
|
17
|
+
}
|
|
18
|
+
if (Array.isArray(styles) && styles.length) {
|
|
19
|
+
const sheets = styles.map(s => {
|
|
20
|
+
const sheet = new defaultView.CSSStyleSheet();
|
|
21
|
+
sheet.replaceSync(s.toString());
|
|
22
|
+
return sheet;
|
|
23
|
+
});
|
|
24
|
+
shadowRoot.adoptedStyleSheets = sheets;
|
|
25
|
+
}
|
|
26
|
+
else {
|
|
27
|
+
const sheet = new defaultView.CSSStyleSheet();
|
|
28
|
+
sheet.replaceSync(styles.toString());
|
|
29
|
+
shadowRoot.adoptedStyleSheets = [sheet];
|
|
30
|
+
}
|
|
31
|
+
}
|
|
@@ -63,6 +63,5 @@ export declare class DialogAdapter extends BaseAdapter<IDialogComponent> impleme
|
|
|
63
63
|
removeFullscreenListener(listener: (value: boolean) => void): void;
|
|
64
64
|
setAccessibleLabel(label: string): void;
|
|
65
65
|
setAccessibleDescription(description: string): void;
|
|
66
|
-
private _createOrUpdateVisuallyHiddenElement;
|
|
67
66
|
private _forceClose;
|
|
68
67
|
}
|
|
@@ -18,6 +18,8 @@ export class DialogAdapter extends BaseAdapter {
|
|
|
18
18
|
constructor(component) {
|
|
19
19
|
super(component);
|
|
20
20
|
this._dialogElement = getShadowElement(component, DIALOG_CONSTANTS.selectors.DIALOG);
|
|
21
|
+
this._accessibleLabelElement = getShadowElement(component, DIALOG_CONSTANTS.selectors.ACCESSIBLE_LABEL);
|
|
22
|
+
this._accessibleDescriptionElement = getShadowElement(component, DIALOG_CONSTANTS.selectors.ACCESSIBLE_DESCRIPTION);
|
|
21
23
|
this._surfaceElement = getShadowElement(component, DIALOG_CONSTANTS.selectors.SURFACE);
|
|
22
24
|
this._moveHandleElement = getShadowElement(component, DIALOG_CONSTANTS.selectors.MOVE_HANDLE);
|
|
23
25
|
this._backdropElement = getShadowElement(component, BACKDROP_CONSTANTS.elementName);
|
|
@@ -143,47 +145,10 @@ export class DialogAdapter extends BaseAdapter {
|
|
|
143
145
|
this._fullscreenMediaQuery = undefined;
|
|
144
146
|
}
|
|
145
147
|
setAccessibleLabel(label) {
|
|
146
|
-
|
|
147
|
-
this._accessibleLabelElement = this._createOrUpdateVisuallyHiddenElement(DIALOG_CONSTANTS.attributes.ARIA_LABEL_ID, label);
|
|
148
|
-
if (this._accessibleLabelElement.isConnected) {
|
|
149
|
-
return;
|
|
150
|
-
}
|
|
151
|
-
this._dialogElement.appendChild(this._accessibleLabelElement);
|
|
152
|
-
this._dialogElement.setAttribute('aria-labelledby', this._accessibleLabelElement.id);
|
|
153
|
-
}
|
|
154
|
-
else if (this._accessibleLabelElement?.isConnected) {
|
|
155
|
-
this._dialogElement.removeAttribute('aria-labelledby');
|
|
156
|
-
this._accessibleLabelElement?.remove();
|
|
157
|
-
this._accessibleLabelElement = undefined;
|
|
158
|
-
}
|
|
148
|
+
this._accessibleLabelElement.textContent = label;
|
|
159
149
|
}
|
|
160
150
|
setAccessibleDescription(description) {
|
|
161
|
-
|
|
162
|
-
this._accessibleDescriptionElement = this._createOrUpdateVisuallyHiddenElement(DIALOG_CONSTANTS.attributes.ARIA_DESCRIPTION_ID, description);
|
|
163
|
-
if (this._accessibleDescriptionElement.isConnected) {
|
|
164
|
-
return;
|
|
165
|
-
}
|
|
166
|
-
this._dialogElement.appendChild(this._accessibleDescriptionElement);
|
|
167
|
-
this._dialogElement.setAttribute('aria-describedby', this._accessibleDescriptionElement.id);
|
|
168
|
-
}
|
|
169
|
-
else if (this._accessibleDescriptionElement?.isConnected) {
|
|
170
|
-
this._dialogElement.removeAttribute('aria-describedby');
|
|
171
|
-
this._accessibleDescriptionElement?.remove();
|
|
172
|
-
this._accessibleDescriptionElement = undefined;
|
|
173
|
-
}
|
|
174
|
-
}
|
|
175
|
-
_createOrUpdateVisuallyHiddenElement(id, text) {
|
|
176
|
-
const content = text.trim();
|
|
177
|
-
let element = this._dialogElement.querySelector(`#${id}`);
|
|
178
|
-
if (element) {
|
|
179
|
-
element.textContent = content;
|
|
180
|
-
return element;
|
|
181
|
-
}
|
|
182
|
-
element = document.createElement('div');
|
|
183
|
-
element.classList.add('visually-hidden');
|
|
184
|
-
element.id = id;
|
|
185
|
-
element.textContent = content;
|
|
186
|
-
return element;
|
|
151
|
+
this._accessibleDescriptionElement.textContent = description;
|
|
187
152
|
}
|
|
188
153
|
_forceClose() {
|
|
189
154
|
this._surfaceElement.classList.remove(BACKDROP_CONSTANTS.classes.EXITING);
|
|
@@ -29,8 +29,6 @@ export declare const DIALOG_CONSTANTS: {
|
|
|
29
29
|
MOVING: string;
|
|
30
30
|
};
|
|
31
31
|
attributes: {
|
|
32
|
-
ARIA_LABEL_ID: string;
|
|
33
|
-
ARIA_DESCRIPTION_ID: string;
|
|
34
32
|
OPEN: string;
|
|
35
33
|
VISIBLE: string;
|
|
36
34
|
MODE: string;
|
|
@@ -54,6 +52,8 @@ export declare const DIALOG_CONSTANTS: {
|
|
|
54
52
|
SURFACE: string;
|
|
55
53
|
MOVE_HANDLE: string;
|
|
56
54
|
AUTOFOCUS: string;
|
|
55
|
+
ACCESSIBLE_LABEL: string;
|
|
56
|
+
ACCESSIBLE_DESCRIPTION: string;
|
|
57
57
|
};
|
|
58
58
|
events: {
|
|
59
59
|
BEFORE_CLOSE: string;
|
|
@@ -87,6 +87,9 @@ export interface IDialogMoveContext {
|
|
|
87
87
|
}
|
|
88
88
|
export interface IDialogMoveStartEventData extends IDialogMoveEventData {
|
|
89
89
|
}
|
|
90
|
+
export interface IDialogBeforeCloseEventData {
|
|
91
|
+
reason: DialogCloseReason;
|
|
92
|
+
}
|
|
90
93
|
export type DialogMode = 'modal' | 'inline-modal' | 'nonmodal';
|
|
91
94
|
export type DialogType = 'dialog' | 'alertdialog';
|
|
92
95
|
export type DialogAnimationType = 'none' | 'zoom' | 'fade' | 'slide' | 'slide-up' | 'slide-down' | 'slide-left' | 'slide-right';
|
|
@@ -94,6 +97,7 @@ export type DialogPositionStrategy = 'viewport' | 'container';
|
|
|
94
97
|
export type DialogPlacement = 'custom' | 'center' | 'top' | 'right' | 'bottom' | 'left' | 'top-right' | 'top-left' | 'bottom-right' | 'bottom-left';
|
|
95
98
|
export type DialogSizeStrategy = 'content' | 'container-inline' | 'container-block';
|
|
96
99
|
export type DialogPreset = 'dialog' | 'bottom-sheet' | 'top-sheet' | 'left-sheet' | 'right-sheet';
|
|
100
|
+
export type DialogCloseReason = 'backdrop' | 'escape' | 'submit' | 'dismiss';
|
|
97
101
|
export declare const hideBackdrop: unique symbol;
|
|
98
102
|
export declare const showBackdrop: unique symbol;
|
|
99
103
|
export declare const dialogStack: unique symbol;
|
|
@@ -25,9 +25,7 @@ const observedAttributes = {
|
|
|
25
25
|
DESCRIPTION: 'description'
|
|
26
26
|
};
|
|
27
27
|
const attributes = {
|
|
28
|
-
...observedAttributes
|
|
29
|
-
ARIA_LABEL_ID: 'forge-dialog-label',
|
|
30
|
-
ARIA_DESCRIPTION_ID: 'forge-dialog-description'
|
|
28
|
+
...observedAttributes
|
|
31
29
|
};
|
|
32
30
|
const classes = {
|
|
33
31
|
MOVED: 'moved',
|
|
@@ -37,7 +35,9 @@ const selectors = {
|
|
|
37
35
|
DIALOG: '.forge-dialog',
|
|
38
36
|
SURFACE: '.surface',
|
|
39
37
|
MOVE_HANDLE: '.move-handle',
|
|
40
|
-
AUTOFOCUS: ':is([autofocus],[forge-dialog-focus])'
|
|
38
|
+
AUTOFOCUS: ':is([autofocus],[forge-dialog-focus])',
|
|
39
|
+
ACCESSIBLE_LABEL: '#forge-dialog-label',
|
|
40
|
+
ACCESSIBLE_DESCRIPTION: '#forge-dialog-description'
|
|
41
41
|
};
|
|
42
42
|
const events = {
|
|
43
43
|
BEFORE_CLOSE: `${elementName}-before-close`,
|