@tylertech/forge 3.0.0-next.17 → 3.0.0-next.18
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 +149 -126
- package/dist/esm/banner/index.js +1 -1
- package/dist/esm/calendar/index.js +1 -1
- package/dist/esm/chunks/{chunk.6JR2HMWB.js → chunk.3QUIEBYX.js} +2 -2
- package/dist/esm/chunks/chunk.4MEXAG3E.js +7 -0
- package/dist/esm/chunks/chunk.4MEXAG3E.js.map +7 -0
- package/dist/esm/chunks/{chunk.O47OSK6Z.js → chunk.A6N7ZGN5.js} +2 -2
- package/dist/esm/chunks/{chunk.O47OSK6Z.js.map → chunk.A6N7ZGN5.js.map} +1 -1
- package/dist/esm/chunks/{chunk.XPIAOMSC.js → chunk.BRLXEKLE.js} +2 -2
- package/dist/esm/chunks/{chunk.MMMG4MZ3.js → chunk.IQ3JWZ2P.js} +2 -2
- package/dist/esm/chunks/{chunk.NHYJMP25.js → chunk.KOGQOU27.js} +2 -2
- package/dist/esm/chunks/{chunk.YVCGGQQG.js → chunk.NES5KNAU.js} +2 -2
- package/dist/esm/date-picker/index.js +1 -1
- package/dist/esm/date-range-picker/index.js +1 -1
- package/dist/esm/index.js +1 -1
- package/dist/esm/split-view/index.js +1 -1
- package/dist/esm/split-view/split-view/index.js +1 -1
- package/dist/esm/split-view/split-view-panel/index.js +1 -1
- package/dist/forge-dark.css +1 -1
- package/esm/banner/banner-adapter.d.ts +14 -18
- package/esm/banner/banner-adapter.js +17 -25
- package/esm/banner/banner-constants.d.ts +17 -16
- package/esm/banner/banner-constants.js +16 -21
- package/esm/banner/banner-foundation.d.ts +15 -14
- package/esm/banner/banner-foundation.js +49 -44
- package/esm/banner/banner.d.ts +33 -7
- package/esm/banner/banner.js +49 -18
- package/esm/split-view/split-view-panel/split-view-panel.js +1 -1
- package/package.json +1 -1
- package/styles/banner/_core.scss +53 -0
- package/styles/banner/_token-utils.scss +30 -0
- package/styles/banner/banner.scss +109 -9
- package/styles/banner/index.scss +6 -0
- package/styles/core/styles/tokens/banner/_tokens.scss +25 -0
- package/styles/theme/_theme-dark.scss +0 -6
- package/dist/esm/chunks/chunk.DFRD7A2Y.js +0 -7
- package/dist/esm/chunks/chunk.DFRD7A2Y.js.map +0 -7
- package/styles/badge/_mixins.scss +0 -125
- package/styles/badge/_variables.scss +0 -87
- package/styles/banner/_mixins.scss +0 -219
- package/styles/banner/_variables.scss +0 -88
- /package/dist/esm/chunks/{chunk.6JR2HMWB.js.map → chunk.3QUIEBYX.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.XPIAOMSC.js.map → chunk.BRLXEKLE.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.MMMG4MZ3.js.map → chunk.IQ3JWZ2P.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.NHYJMP25.js.map → chunk.KOGQOU27.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.YVCGGQQG.js.map → chunk.NES5KNAU.js.map} +0 -0
package/esm/banner/banner.js
CHANGED
|
@@ -7,25 +7,44 @@ import { __decorate } from "tslib";
|
|
|
7
7
|
import { attachShadowTemplate, coerceBoolean, CustomElement, FoundationProperty } from '@tylertech/forge-core';
|
|
8
8
|
import { tylIconCancel } from '@tylertech/tyler-icons/standard';
|
|
9
9
|
import { BaseComponent } from '../core/base/base-component';
|
|
10
|
-
import {
|
|
10
|
+
import { IconRegistry } from '../icon';
|
|
11
11
|
import { IconButtonComponent } from '../icon-button';
|
|
12
12
|
import { TooltipComponent } from '../tooltip';
|
|
13
13
|
import { BannerAdapter } from './banner-adapter';
|
|
14
14
|
import { BANNER_CONSTANTS } from './banner-constants';
|
|
15
15
|
import { BannerFoundation } from './banner-foundation';
|
|
16
|
-
const template = '<template><div class=\"forge-banner\" part=\"root\"><div class=\"
|
|
17
|
-
const styles = '
|
|
16
|
+
const template = '<template><div class=\"forge-banner\" part=\"root\"><div class=\"inner\"><div class=\"container\"><slot name=\"icon\"></slot><slot></slot><div class=\"button-container\"><slot name=\"button\"></slot></div></div><div><forge-icon-button part=\"dismiss-button\"><forge-icon name=\"cancel\"></forge-icon></forge-icon-button><forge-tooltip type=\"label\" placement=\"bottom\"><slot name=\"dismiss-tooltip\">Dismiss</slot></forge-tooltip></div></div></div></template>';
|
|
17
|
+
const styles = ':host{display:block;container-type:inline-size}:host([hidden]){display:none}.forge-banner{--_banner-background:var(--forge-banner-background, var(--forge-theme-info-container, #c7daf0));--_banner-color:var(--forge-banner-color, var(--forge-theme-text-high, rgba(0, 0, 0, 0.87)));--_banner-gap:var(--forge-banner-gap, var(--forge-spacing-small, 12px));--_banner-padding-inline:var(--forge-banner-padding-inline, var(--forge-spacing-large, 24px));--_banner-padding-block:var(--forge-banner-padding-block, var(--forge-spacing-small, 12px));--_banner-transition-duration:var(--forge-banner-transition-duration, var(--forge-animation-duration-short4, 200ms));--_banner-transition-easing:var(--forge-banner-transition-easing, var(--forge-animation-easing-standard, cubic-bezier(0.2, 0, 0, 1)))}.forge-banner{display:grid;grid-template-columns:1fr;grid-template-rows:1fr;overflow:hidden;-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-transition-property:opacity,grid-template-rows,min-height;transition-property:opacity,grid-template-rows,min-height;transition-property:opacity,grid-template-rows,min-height,-ms-grid-rows;-webkit-transition-duration:var(--_banner-transition-duration);transition-duration:var(--_banner-transition-duration);-webkit-transition-timing-function:var(--_banner-transition-easing);transition-timing-function:var(--_banner-transition-easing);background:var(--_banner-background);color:var(--_banner-color);opacity:1}.forge-banner .inner{display:grid;grid-template-columns:1fr auto;place-items:center;gap:var(--_banner-gap);overflow:hidden;padding-inline:var(--_banner-padding-inline)}.forge-banner .container{display:-webkit-box;display:flex;-webkit-box-pack:center;justify-content:center;-webkit-box-align:center;align-items:center;gap:var(--_banner-gap);-webkit-box-flex:1;flex:1 1 auto;padding-block:var(--_banner-padding-block)}.forge-banner forge-icon-button{--forge-icon-button-focus-indicator-color:var(--_banner-color)}::slotted(forge-button[slot=button]){--forge-button-primary-color:var(--_banner-color)}:host([dismissed]) .forge-banner{grid-template-rows:0fr;opacity:0}:host([theme=primary]) .forge-banner{--_banner-background:var(--forge-banner-background, var(--forge-theme-primary-container, #d1d5ed))}:host([theme=secondary]) .forge-banner{--_banner-background:var(--forge-banner-background, var(--forge-theme-secondary-container, #fff0c3))}:host([theme=tertiary]) .forge-banner{--_banner-background:var(--forge-banner-background, var(--forge-theme-tertiary-container, #d0d7ff))}:host([theme=success]) .forge-banner{--_banner-background:var(--forge-banner-background, var(--forge-theme-success-container, #cde0ce))}:host([theme=error]) .forge-banner{--_banner-background:var(--forge-banner-background, var(--forge-theme-error-container, #ecc2c9))}:host([theme=warning]) .forge-banner{--_banner-background:var(--forge-banner-background, var(--forge-theme-warning-container, #f4d3c2))}:host([theme=danger]) .forge-banner{--_banner-background:var(--forge-banner-background, var(--forge-theme-error-container, #ecc2c9))}:host([theme=info-secondary]) .forge-banner{--_banner-background:var(--forge-banner-background, var(--forge-theme-surface-container, #e0e0e0))}@container (max-width:600px){.forge-banner .container{display:grid;grid-template-rows:[content] 1fr [button] auto;grid-template-columns:[content] 1fr;place-items:normal}.forge-banner.has-icon .container{grid-template-columns:[icon] auto [content] 1fr}.forge-banner .inner{place-items:normal}.forge-banner .button-container{grid-row:button;grid-column:content}}';
|
|
18
18
|
/**
|
|
19
|
-
* The custom element class behind the `<forge-banner>` element.
|
|
20
|
-
*
|
|
21
19
|
* @tag forge-banner
|
|
20
|
+
*
|
|
21
|
+
* @summary Banners are used to inform users of important information, such as errors, warnings, or success messages.
|
|
22
|
+
*
|
|
23
|
+
* @property {boolean} dismissed - Controls the visibility of the banner.
|
|
24
|
+
* @property {boolean} persistent - Controls the visibility of the built-in dismiss button.
|
|
25
|
+
* @property {BannerTheme} theme - The theme of the banner.
|
|
26
|
+
*
|
|
27
|
+
* @attribute {boolean} dismissed - Controls the visibility of the banner.
|
|
28
|
+
* @attribute {boolean} persistent - Controls the visibility of the built-in dismiss button.
|
|
29
|
+
* @attribute {BannerTheme} theme - The theme of the banner.
|
|
30
|
+
*
|
|
31
|
+
* @event {CustomEvent} forge-banner-dismissed - Dispatched when the banner is dismissed.
|
|
32
|
+
*
|
|
33
|
+
* @cssproperty --forge-banner-background - The background color of the banner.
|
|
34
|
+
* @cssproperty --forge-banner-color - The text color of the banner.
|
|
35
|
+
* @cssproperty --forge-banner-gap - The gap between the contents.
|
|
36
|
+
* @cssproperty --forge-banner-padding-inline - The inline padding.
|
|
37
|
+
* @cssproperty --forge-banner-padding-block - The block padding.
|
|
38
|
+
* @cssproperty --forge-banner-transition-duration - The transition duration.
|
|
39
|
+
* @cssproperty --forge-banner-transition-easing - The transition easing function.
|
|
40
|
+
*
|
|
41
|
+
* @slot - The content of the banner.
|
|
42
|
+
* @slot icon - The icon to display.
|
|
43
|
+
* @slot button - The optional button to display.
|
|
22
44
|
*/
|
|
23
45
|
let BannerComponent = class BannerComponent extends BaseComponent {
|
|
24
46
|
static get observedAttributes() {
|
|
25
|
-
return
|
|
26
|
-
BANNER_CONSTANTS.attributes.DISMISSED,
|
|
27
|
-
BANNER_CONSTANTS.attributes.CAN_DISMISS
|
|
28
|
-
];
|
|
47
|
+
return Object.values(BANNER_CONSTANTS.observedAttributes);
|
|
29
48
|
}
|
|
30
49
|
constructor() {
|
|
31
50
|
super();
|
|
@@ -34,34 +53,46 @@ let BannerComponent = class BannerComponent extends BaseComponent {
|
|
|
34
53
|
this._foundation = new BannerFoundation(new BannerAdapter(this));
|
|
35
54
|
}
|
|
36
55
|
connectedCallback() {
|
|
37
|
-
this._foundation.
|
|
38
|
-
}
|
|
39
|
-
disconnectedCallback() {
|
|
40
|
-
this._foundation.disconnect();
|
|
56
|
+
this._foundation.initialize();
|
|
41
57
|
}
|
|
42
58
|
attributeChangedCallback(name, oldValue, newValue) {
|
|
43
59
|
switch (name) {
|
|
44
|
-
case BANNER_CONSTANTS.
|
|
60
|
+
case BANNER_CONSTANTS.observedAttributes.DISMISSED:
|
|
45
61
|
this.dismissed = coerceBoolean(newValue);
|
|
46
62
|
break;
|
|
47
|
-
case BANNER_CONSTANTS.
|
|
48
|
-
this.
|
|
63
|
+
case BANNER_CONSTANTS.observedAttributes.PERSISTENT:
|
|
64
|
+
this.persistent = coerceBoolean(newValue);
|
|
65
|
+
break;
|
|
66
|
+
case BANNER_CONSTANTS.observedAttributes.CAN_DISMISS:
|
|
67
|
+
this.persistent = coerceBoolean(newValue) === false;
|
|
68
|
+
break;
|
|
69
|
+
case BANNER_CONSTANTS.observedAttributes.THEME:
|
|
70
|
+
this.theme = newValue;
|
|
49
71
|
break;
|
|
50
72
|
}
|
|
51
73
|
}
|
|
74
|
+
/** @deprecated Use `persistent` instead. */
|
|
75
|
+
get canDismiss() {
|
|
76
|
+
return this.persistent;
|
|
77
|
+
}
|
|
78
|
+
set canDismiss(value) {
|
|
79
|
+
this.persistent = !value;
|
|
80
|
+
}
|
|
52
81
|
};
|
|
53
82
|
__decorate([
|
|
54
83
|
FoundationProperty()
|
|
55
84
|
], BannerComponent.prototype, "dismissed", void 0);
|
|
56
85
|
__decorate([
|
|
57
86
|
FoundationProperty()
|
|
58
|
-
], BannerComponent.prototype, "
|
|
87
|
+
], BannerComponent.prototype, "persistent", void 0);
|
|
88
|
+
__decorate([
|
|
89
|
+
FoundationProperty()
|
|
90
|
+
], BannerComponent.prototype, "theme", void 0);
|
|
59
91
|
BannerComponent = __decorate([
|
|
60
92
|
CustomElement({
|
|
61
93
|
name: BANNER_CONSTANTS.elementName,
|
|
62
94
|
dependencies: [
|
|
63
95
|
IconButtonComponent,
|
|
64
|
-
IconComponent,
|
|
65
96
|
TooltipComponent
|
|
66
97
|
]
|
|
67
98
|
})
|
|
@@ -14,7 +14,7 @@ import { SplitViewPanelAdapter } from './split-view-panel-adapter';
|
|
|
14
14
|
import { IconComponent, IconRegistry } from '../../icon';
|
|
15
15
|
import { RippleComponent } from '../../ripple';
|
|
16
16
|
const template = '<template><div class=\"forge-split-view-panel\" id=\"root\" part=\"root\"><div class=\"forge-split-view-panel__handle\" id=\"handle\" part=\"handle\" role=\"separator\" aria-controls=\"content\" aria-grabbed=\"false\" tabindex=\"0\"><forge-icon class=\"forge-split-view-panel__icon\" id=\"icon\" part=\"icon\"></forge-icon><forge-ripple id=\"ripple\" part=\"ripple\"></forge-ripple></div><div class=\"forge-split-view-panel__content\" id=\"content\" part=\"content\" role=\"group\"><slot></slot></div></div></template>';
|
|
17
|
-
const styles = '@-webkit-keyframes mdc-ripple-fg-radius-in{from{-webkit-animation-timing-function:cubic-bezier(0.4,0,0.2,1);animation-timing-function:cubic-bezier(0.4,0,0.2,1);-webkit-transform:translate(var(--mdc-ripple-fg-translate-start,0)) scale(1);transform:translate(var(--mdc-ripple-fg-translate-start,0)) scale(1)}to{-webkit-transform:translate(var(--mdc-ripple-fg-translate-end,0)) scale(var(--mdc-ripple-fg-scale,1));transform:translate(var(--mdc-ripple-fg-translate-end,0)) scale(var(--mdc-ripple-fg-scale,1))}}@keyframes mdc-ripple-fg-radius-in{from{-webkit-animation-timing-function:cubic-bezier(0.4,0,0.2,1);animation-timing-function:cubic-bezier(0.4,0,0.2,1);-webkit-transform:translate(var(--mdc-ripple-fg-translate-start,0)) scale(1);transform:translate(var(--mdc-ripple-fg-translate-start,0)) scale(1)}to{-webkit-transform:translate(var(--mdc-ripple-fg-translate-end,0)) scale(var(--mdc-ripple-fg-scale,1));transform:translate(var(--mdc-ripple-fg-translate-end,0)) scale(var(--mdc-ripple-fg-scale,1))}}@-webkit-keyframes mdc-ripple-fg-opacity-in{from{-webkit-animation-timing-function:linear;animation-timing-function:linear;opacity:0}to{opacity:var(--mdc-ripple-fg-opacity, 0)}}@keyframes mdc-ripple-fg-opacity-in{from{-webkit-animation-timing-function:linear;animation-timing-function:linear;opacity:0}to{opacity:var(--mdc-ripple-fg-opacity, 0)}}@-webkit-keyframes mdc-ripple-fg-opacity-out{from{-webkit-animation-timing-function:linear;animation-timing-function:linear;opacity:var(--mdc-ripple-fg-opacity, 0)}to{opacity:0}}@keyframes mdc-ripple-fg-opacity-out{from{-webkit-animation-timing-function:linear;animation-timing-function:linear;opacity:var(--mdc-ripple-fg-opacity, 0)}to{opacity:0}}.mdc-ripple-surface{--mdc-ripple-fg-size:0;--mdc-ripple-left:0;--mdc-ripple-top:0;--mdc-ripple-fg-scale:1;--mdc-ripple-fg-translate-end:0;--mdc-ripple-fg-translate-start:0;-webkit-tap-highlight-color:transparent;will-change:transform,opacity;position:relative;outline:0;overflow:hidden}.mdc-ripple-surface::after,.mdc-ripple-surface::before{position:absolute;border-radius:50%;opacity:0;pointer-events:none;content:\"\"}.mdc-ripple-surface::before{-webkit-transition:opacity 15ms linear,background-color 15ms linear;transition:opacity 15ms linear,background-color 15ms linear;z-index:1;z-index:var(--mdc-ripple-z-index,1)}.mdc-ripple-surface::after{z-index:0;z-index:var(--mdc-ripple-z-index,0)}.mdc-ripple-surface.mdc-ripple-upgraded::before{-webkit-transform:scale(var(--mdc-ripple-fg-scale,1));transform:scale(var(--mdc-ripple-fg-scale,1))}.mdc-ripple-surface.mdc-ripple-upgraded::after{top:0;left:0;-webkit-transform:scale(0);transform:scale(0);-webkit-transform-origin:center center;transform-origin:center center}.mdc-ripple-surface.mdc-ripple-upgraded--unbounded::after{top:var(--mdc-ripple-top,0);left:var(--mdc-ripple-left,0)}.mdc-ripple-surface.mdc-ripple-upgraded--foreground-activation::after{-webkit-animation:mdc-ripple-fg-radius-in 225ms forwards,mdc-ripple-fg-opacity-in 75ms forwards;animation:mdc-ripple-fg-radius-in 225ms forwards,mdc-ripple-fg-opacity-in 75ms forwards}.mdc-ripple-surface.mdc-ripple-upgraded--foreground-deactivation::after{-webkit-animation:mdc-ripple-fg-opacity-out 150ms;animation:mdc-ripple-fg-opacity-out 150ms;-webkit-transform:translate(var(--mdc-ripple-fg-translate-end,0)) scale(var(--mdc-ripple-fg-scale,1));transform:translate(var(--mdc-ripple-fg-translate-end,0)) scale(var(--mdc-ripple-fg-scale,1))}.mdc-ripple-surface::after,.mdc-ripple-surface::before{top:calc(50% - 100%);left:calc(50% - 100%);width:200%;height:200%}.mdc-ripple-surface.mdc-ripple-upgraded::after{width:var(--mdc-ripple-fg-size,100%);height:var(--mdc-ripple-fg-size,100%)}.mdc-ripple-surface[data-mdc-ripple-is-unbounded],.mdc-ripple-upgraded--unbounded{overflow:visible}.mdc-ripple-surface[data-mdc-ripple-is-unbounded]::after,.mdc-ripple-surface[data-mdc-ripple-is-unbounded]::before,.mdc-ripple-upgraded--unbounded::after,.mdc-ripple-upgraded--unbounded::before{top:calc(50% - 50%);left:calc(50% - 50%);width:100%;height:100%}.mdc-ripple-surface[data-mdc-ripple-is-unbounded].mdc-ripple-upgraded::after,.mdc-ripple-surface[data-mdc-ripple-is-unbounded].mdc-ripple-upgraded::before,.mdc-ripple-upgraded--unbounded.mdc-ripple-upgraded::after,.mdc-ripple-upgraded--unbounded.mdc-ripple-upgraded::before{top:var(--mdc-ripple-top,calc(50% - 50%));left:var(--mdc-ripple-left,calc(50% - 50%));width:var(--mdc-ripple-fg-size,100%);height:var(--mdc-ripple-fg-size,100%)}.mdc-ripple-surface[data-mdc-ripple-is-unbounded].mdc-ripple-upgraded::after,.mdc-ripple-upgraded--unbounded.mdc-ripple-upgraded::after{width:var(--mdc-ripple-fg-size,100%);height:var(--mdc-ripple-fg-size,100%)}.mdc-ripple-surface::after,.mdc-ripple-surface::before{background-color:#000;background-color:var(--mdc-ripple-color,#000)}.mdc-ripple-surface.mdc-ripple-surface--hover::before,.mdc-ripple-surface:hover::before{opacity:.04;opacity:var(--mdc-ripple-hover-opacity, .04)}.mdc-ripple-surface.mdc-ripple-upgraded--background-focused::before,.mdc-ripple-surface:not(.mdc-ripple-upgraded):focus::before{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.12;opacity:var(--mdc-ripple-focus-opacity, .12)}.mdc-ripple-surface:not(.mdc-ripple-upgraded)::after{-webkit-transition:opacity 150ms linear;transition:opacity 150ms linear}.mdc-ripple-surface:not(.mdc-ripple-upgraded):active::after{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.12;opacity:var(--mdc-ripple-press-opacity, .12)}.mdc-ripple-surface.mdc-ripple-upgraded{--mdc-ripple-fg-opacity:var(--mdc-ripple-press-opacity, 0.12)}.mdc-ripple-surface::after,.mdc-ripple-surface::before{--mdc-ripple-color:var(--mdc-theme-on-surface)}.forge-split-view-panel{display:-webkit-box;display:flex;width:100%;height:100%;overflow:hidden;contain:paint size}.forge-split-view-panel__handle{color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-light,rgba(0,0,0,.54));background-color:#e0e0e0;background-color:var(--forge-theme-border-color,#e0e0e0);display:-webkit-box;display:flex;flex-shrink:0;-webkit-box-pack:center;justify-content:center;-webkit-box-align:center;align-items:center;outline:0}.forge-split-view-panel__content{-webkit-box-flex:1;flex:1;overflow:hidden}.forge-split-view-panel--closed{display:none}.forge-split-view-panel--disabled #handle{pointer-events:none}.forge-split-view-panel--disabled .forge-split-view-panel__icon{display:none}.forge-split-view-panel[orientation=horizontal]{min-width:8px;min-width:var(--forge-split-view-handle-width,8px);width:calc(var(--forge-split-view-panel-size,unset) + var(--forge-split-view-handle-width,8px));-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row}.forge-split-view-panel[orientation=horizontal] .forge-split-view-panel__handle{width:8px;width:var(--forge-split-view-handle-width,8px);cursor:var(--forge-split-view-panel-cursor)}.forge-split-view-panel[orientation=horizontal].forge-split-view-panel--closing[resizable=end]{position:absolute;top:0;left:0;-webkit-animation-name:u6ateim;animation-name:u6ateim;-webkit-animation-duration:.3s;animation-duration:.3s;-webkit-animation-timing-function:cubic-bezier(0.4,0,0.2,1);animation-timing-function:cubic-bezier(0.4,0,0.2,1)}@-webkit-keyframes u6ateim{from{-webkit-transform:none;transform:none}to{-webkit-transform:translateX(-100%);transform:translateX(-100%)}}@keyframes u6ateim{from{-webkit-transform:none;transform:none}to{-webkit-transform:translateX(-100%);transform:translateX(-100%)}}.forge-split-view-panel[orientation=horizontal].forge-split-view-panel--closing[resizable=start]{position:absolute;top:0;right:0;-webkit-animation-name:u6atej7;animation-name:u6atej7;-webkit-animation-duration:.3s;animation-duration:.3s;-webkit-animation-timing-function:cubic-bezier(0.4,0,0.2,1);animation-timing-function:cubic-bezier(0.4,0,0.2,1)}@-webkit-keyframes u6atej7{from{-webkit-transform:none;transform:none}to{-webkit-transform:translateX(100%);transform:translateX(100%)}}@keyframes u6atej7{from{-webkit-transform:none;transform:none}to{-webkit-transform:translateX(100%);transform:translateX(100%)}}.forge-split-view-panel[orientation=horizontal].forge-split-view-panel--opening[resizable=end]{position:absolute;top:0;left:0;-webkit-animation-name:u6atejh;animation-name:u6atejh;-webkit-animation-duration:.3s;animation-duration:.3s;-webkit-animation-timing-function:cubic-bezier(0.4,0,0.2,1);animation-timing-function:cubic-bezier(0.4,0,0.2,1);animation-direction:reverse}@-webkit-keyframes u6atejh{from{-webkit-transform:none;transform:none}to{-webkit-transform:translateX(-100%);transform:translateX(-100%)}}@keyframes u6atejh{from{-webkit-transform:none;transform:none}to{-webkit-transform:translateX(-100%);transform:translateX(-100%)}}.forge-split-view-panel[orientation=horizontal].forge-split-view-panel--opening[resizable=start]{position:absolute;top:0;right:0;-webkit-animation-name:u6atejm;animation-name:u6atejm;-webkit-animation-duration:.3s;animation-duration:.3s;-webkit-animation-timing-function:cubic-bezier(0.4,0,0.2,1);animation-timing-function:cubic-bezier(0.4,0,0.2,1);animation-direction:reverse}@-webkit-keyframes u6atejm{from{-webkit-transform:none;transform:none}to{-webkit-transform:translateX(100%);transform:translateX(100%)}}@keyframes u6atejm{from{-webkit-transform:none;transform:none}to{-webkit-transform:translateX(100%);transform:translateX(100%)}}.forge-split-view-panel[orientation=vertical]{min-height:8px;min-height:var(--forge-split-view-handle-width,8px);height:calc(var(--forge-split-view-panel-size,unset) + var(--forge-split-view-handle-width,8px));-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column}.forge-split-view-panel[orientation=vertical] .forge-split-view-panel__handle{height:8px;height:var(--forge-split-view-handle-width,8px);cursor:var(--forge-split-view-panel-cursor)}.forge-split-view-panel[orientation=vertical].forge-split-view-panel--closing[resizable=end]{position:absolute;top:0;left:0;-webkit-animation-name:u6atejz;animation-name:u6atejz;-webkit-animation-duration:.3s;animation-duration:.3s;-webkit-animation-timing-function:cubic-bezier(0.4,0,0.2,1);animation-timing-function:cubic-bezier(0.4,0,0.2,1)}@-webkit-keyframes u6atejz{from{-webkit-transform:none;transform:none}to{-webkit-transform:translateY(-100%);transform:translateY(-100%)}}@keyframes u6atejz{from{-webkit-transform:none;transform:none}to{-webkit-transform:translateY(-100%);transform:translateY(-100%)}}.forge-split-view-panel[orientation=vertical].forge-split-view-panel--closing[resizable=start]{position:absolute;bottom:0;left:0;-webkit-animation-name:u6atekl;animation-name:u6atekl;-webkit-animation-duration:.3s;animation-duration:.3s;-webkit-animation-timing-function:cubic-bezier(0.4,0,0.2,1);animation-timing-function:cubic-bezier(0.4,0,0.2,1)}@-webkit-keyframes u6atekl{from{-webkit-transform:none;transform:none}to{-webkit-transform:translateY(100%);transform:translateY(100%)}}@keyframes u6atekl{from{-webkit-transform:none;transform:none}to{-webkit-transform:translateY(100%);transform:translateY(100%)}}.forge-split-view-panel[orientation=vertical].forge-split-view-panel--opening[resizable=end]{position:absolute;top:0;left:0;-webkit-animation-name:u6atekp;animation-name:u6atekp;-webkit-animation-duration:.3s;animation-duration:.3s;-webkit-animation-timing-function:cubic-bezier(0.4,0,0.2,1);animation-timing-function:cubic-bezier(0.4,0,0.2,1);animation-direction:reverse}@-webkit-keyframes u6atekp{from{-webkit-transform:none;transform:none}to{-webkit-transform:translateY(-100%);transform:translateY(-100%)}}@keyframes u6atekp{from{-webkit-transform:none;transform:none}to{-webkit-transform:translateY(-100%);transform:translateY(-100%)}}.forge-split-view-panel[orientation=vertical].forge-split-view-panel--opening[resizable=start]{position:absolute;bottom:0;left:0;-webkit-animation-name:u6atel9;animation-name:u6atel9;-webkit-animation-duration:.3s;animation-duration:.3s;-webkit-animation-timing-function:cubic-bezier(0.4,0,0.2,1);animation-timing-function:cubic-bezier(0.4,0,0.2,1);animation-direction:reverse}@-webkit-keyframes u6atel9{from{-webkit-transform:none;transform:none}to{-webkit-transform:translateY(100%);transform:translateY(100%)}}@keyframes u6atel9{from{-webkit-transform:none;transform:none}to{-webkit-transform:translateY(100%);transform:translateY(100%)}}:host{z-index:var(--forge-split-view-animating-layer)!important;display:block;position:relative;height:100%;width:100%;-webkit-box-flex:0;flex:0}:host([hidden]){display:none}:host(:not([resizable=start],[resizable=end])){-webkit-box-flex:1;flex:1}:host(:not([resizable=start],[resizable=end])) .forge-split-view-panel{width:100%;height:100%;min-width:0;min-height:0}:host(:not([resizable=start],[resizable=end])) .forge-split-view-panel__handle{display:none}';
|
|
17
|
+
const styles = '@-webkit-keyframes mdc-ripple-fg-radius-in{from{-webkit-animation-timing-function:cubic-bezier(0.4,0,0.2,1);animation-timing-function:cubic-bezier(0.4,0,0.2,1);-webkit-transform:translate(var(--mdc-ripple-fg-translate-start,0)) scale(1);transform:translate(var(--mdc-ripple-fg-translate-start,0)) scale(1)}to{-webkit-transform:translate(var(--mdc-ripple-fg-translate-end,0)) scale(var(--mdc-ripple-fg-scale,1));transform:translate(var(--mdc-ripple-fg-translate-end,0)) scale(var(--mdc-ripple-fg-scale,1))}}@keyframes mdc-ripple-fg-radius-in{from{-webkit-animation-timing-function:cubic-bezier(0.4,0,0.2,1);animation-timing-function:cubic-bezier(0.4,0,0.2,1);-webkit-transform:translate(var(--mdc-ripple-fg-translate-start,0)) scale(1);transform:translate(var(--mdc-ripple-fg-translate-start,0)) scale(1)}to{-webkit-transform:translate(var(--mdc-ripple-fg-translate-end,0)) scale(var(--mdc-ripple-fg-scale,1));transform:translate(var(--mdc-ripple-fg-translate-end,0)) scale(var(--mdc-ripple-fg-scale,1))}}@-webkit-keyframes mdc-ripple-fg-opacity-in{from{-webkit-animation-timing-function:linear;animation-timing-function:linear;opacity:0}to{opacity:var(--mdc-ripple-fg-opacity, 0)}}@keyframes mdc-ripple-fg-opacity-in{from{-webkit-animation-timing-function:linear;animation-timing-function:linear;opacity:0}to{opacity:var(--mdc-ripple-fg-opacity, 0)}}@-webkit-keyframes mdc-ripple-fg-opacity-out{from{-webkit-animation-timing-function:linear;animation-timing-function:linear;opacity:var(--mdc-ripple-fg-opacity, 0)}to{opacity:0}}@keyframes mdc-ripple-fg-opacity-out{from{-webkit-animation-timing-function:linear;animation-timing-function:linear;opacity:var(--mdc-ripple-fg-opacity, 0)}to{opacity:0}}.mdc-ripple-surface{--mdc-ripple-fg-size:0;--mdc-ripple-left:0;--mdc-ripple-top:0;--mdc-ripple-fg-scale:1;--mdc-ripple-fg-translate-end:0;--mdc-ripple-fg-translate-start:0;-webkit-tap-highlight-color:transparent;will-change:transform,opacity;position:relative;outline:0;overflow:hidden}.mdc-ripple-surface::after,.mdc-ripple-surface::before{position:absolute;border-radius:50%;opacity:0;pointer-events:none;content:\"\"}.mdc-ripple-surface::before{-webkit-transition:opacity 15ms linear,background-color 15ms linear;transition:opacity 15ms linear,background-color 15ms linear;z-index:1;z-index:var(--mdc-ripple-z-index,1)}.mdc-ripple-surface::after{z-index:0;z-index:var(--mdc-ripple-z-index,0)}.mdc-ripple-surface.mdc-ripple-upgraded::before{-webkit-transform:scale(var(--mdc-ripple-fg-scale,1));transform:scale(var(--mdc-ripple-fg-scale,1))}.mdc-ripple-surface.mdc-ripple-upgraded::after{top:0;left:0;-webkit-transform:scale(0);transform:scale(0);-webkit-transform-origin:center center;transform-origin:center center}.mdc-ripple-surface.mdc-ripple-upgraded--unbounded::after{top:var(--mdc-ripple-top,0);left:var(--mdc-ripple-left,0)}.mdc-ripple-surface.mdc-ripple-upgraded--foreground-activation::after{-webkit-animation:mdc-ripple-fg-radius-in 225ms forwards,mdc-ripple-fg-opacity-in 75ms forwards;animation:mdc-ripple-fg-radius-in 225ms forwards,mdc-ripple-fg-opacity-in 75ms forwards}.mdc-ripple-surface.mdc-ripple-upgraded--foreground-deactivation::after{-webkit-animation:mdc-ripple-fg-opacity-out 150ms;animation:mdc-ripple-fg-opacity-out 150ms;-webkit-transform:translate(var(--mdc-ripple-fg-translate-end,0)) scale(var(--mdc-ripple-fg-scale,1));transform:translate(var(--mdc-ripple-fg-translate-end,0)) scale(var(--mdc-ripple-fg-scale,1))}.mdc-ripple-surface::after,.mdc-ripple-surface::before{top:calc(50% - 100%);left:calc(50% - 100%);width:200%;height:200%}.mdc-ripple-surface.mdc-ripple-upgraded::after{width:var(--mdc-ripple-fg-size,100%);height:var(--mdc-ripple-fg-size,100%)}.mdc-ripple-surface[data-mdc-ripple-is-unbounded],.mdc-ripple-upgraded--unbounded{overflow:visible}.mdc-ripple-surface[data-mdc-ripple-is-unbounded]::after,.mdc-ripple-surface[data-mdc-ripple-is-unbounded]::before,.mdc-ripple-upgraded--unbounded::after,.mdc-ripple-upgraded--unbounded::before{top:calc(50% - 50%);left:calc(50% - 50%);width:100%;height:100%}.mdc-ripple-surface[data-mdc-ripple-is-unbounded].mdc-ripple-upgraded::after,.mdc-ripple-surface[data-mdc-ripple-is-unbounded].mdc-ripple-upgraded::before,.mdc-ripple-upgraded--unbounded.mdc-ripple-upgraded::after,.mdc-ripple-upgraded--unbounded.mdc-ripple-upgraded::before{top:var(--mdc-ripple-top,calc(50% - 50%));left:var(--mdc-ripple-left,calc(50% - 50%));width:var(--mdc-ripple-fg-size,100%);height:var(--mdc-ripple-fg-size,100%)}.mdc-ripple-surface[data-mdc-ripple-is-unbounded].mdc-ripple-upgraded::after,.mdc-ripple-upgraded--unbounded.mdc-ripple-upgraded::after{width:var(--mdc-ripple-fg-size,100%);height:var(--mdc-ripple-fg-size,100%)}.mdc-ripple-surface::after,.mdc-ripple-surface::before{background-color:#000;background-color:var(--mdc-ripple-color,#000)}.mdc-ripple-surface.mdc-ripple-surface--hover::before,.mdc-ripple-surface:hover::before{opacity:.04;opacity:var(--mdc-ripple-hover-opacity, .04)}.mdc-ripple-surface.mdc-ripple-upgraded--background-focused::before,.mdc-ripple-surface:not(.mdc-ripple-upgraded):focus::before{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.12;opacity:var(--mdc-ripple-focus-opacity, .12)}.mdc-ripple-surface:not(.mdc-ripple-upgraded)::after{-webkit-transition:opacity 150ms linear;transition:opacity 150ms linear}.mdc-ripple-surface:not(.mdc-ripple-upgraded):active::after{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.12;opacity:var(--mdc-ripple-press-opacity, .12)}.mdc-ripple-surface.mdc-ripple-upgraded{--mdc-ripple-fg-opacity:var(--mdc-ripple-press-opacity, 0.12)}.mdc-ripple-surface::after,.mdc-ripple-surface::before{--mdc-ripple-color:var(--mdc-theme-on-surface)}.forge-split-view-panel{display:-webkit-box;display:flex;width:100%;height:100%;overflow:hidden;contain:paint size}.forge-split-view-panel__handle{color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-light,rgba(0,0,0,.54));background-color:#e0e0e0;background-color:var(--forge-theme-border-color,#e0e0e0);display:-webkit-box;display:flex;flex-shrink:0;-webkit-box-pack:center;justify-content:center;-webkit-box-align:center;align-items:center;outline:0}.forge-split-view-panel__content{-webkit-box-flex:1;flex:1;overflow:hidden}.forge-split-view-panel--closed{display:none}.forge-split-view-panel--disabled #handle{pointer-events:none}.forge-split-view-panel--disabled .forge-split-view-panel__icon{display:none}.forge-split-view-panel[orientation=horizontal]{min-width:8px;min-width:var(--forge-split-view-handle-width,8px);width:calc(var(--forge-split-view-panel-size,unset) + var(--forge-split-view-handle-width,8px));-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row}.forge-split-view-panel[orientation=horizontal] .forge-split-view-panel__handle{width:8px;width:var(--forge-split-view-handle-width,8px);cursor:var(--forge-split-view-panel-cursor)}.forge-split-view-panel[orientation=horizontal].forge-split-view-panel--closing[resizable=end]{position:absolute;top:0;left:0;-webkit-animation-name:u2356m5;animation-name:u2356m5;-webkit-animation-duration:.3s;animation-duration:.3s;-webkit-animation-timing-function:cubic-bezier(0.4,0,0.2,1);animation-timing-function:cubic-bezier(0.4,0,0.2,1)}@-webkit-keyframes u2356m5{from{-webkit-transform:none;transform:none}to{-webkit-transform:translateX(-100%);transform:translateX(-100%)}}@keyframes u2356m5{from{-webkit-transform:none;transform:none}to{-webkit-transform:translateX(-100%);transform:translateX(-100%)}}.forge-split-view-panel[orientation=horizontal].forge-split-view-panel--closing[resizable=start]{position:absolute;top:0;right:0;-webkit-animation-name:u2356n4;animation-name:u2356n4;-webkit-animation-duration:.3s;animation-duration:.3s;-webkit-animation-timing-function:cubic-bezier(0.4,0,0.2,1);animation-timing-function:cubic-bezier(0.4,0,0.2,1)}@-webkit-keyframes u2356n4{from{-webkit-transform:none;transform:none}to{-webkit-transform:translateX(100%);transform:translateX(100%)}}@keyframes u2356n4{from{-webkit-transform:none;transform:none}to{-webkit-transform:translateX(100%);transform:translateX(100%)}}.forge-split-view-panel[orientation=horizontal].forge-split-view-panel--opening[resizable=end]{position:absolute;top:0;left:0;-webkit-animation-name:u2356nm;animation-name:u2356nm;-webkit-animation-duration:.3s;animation-duration:.3s;-webkit-animation-timing-function:cubic-bezier(0.4,0,0.2,1);animation-timing-function:cubic-bezier(0.4,0,0.2,1);animation-direction:reverse}@-webkit-keyframes u2356nm{from{-webkit-transform:none;transform:none}to{-webkit-transform:translateX(-100%);transform:translateX(-100%)}}@keyframes u2356nm{from{-webkit-transform:none;transform:none}to{-webkit-transform:translateX(-100%);transform:translateX(-100%)}}.forge-split-view-panel[orientation=horizontal].forge-split-view-panel--opening[resizable=start]{position:absolute;top:0;right:0;-webkit-animation-name:u2356o3;animation-name:u2356o3;-webkit-animation-duration:.3s;animation-duration:.3s;-webkit-animation-timing-function:cubic-bezier(0.4,0,0.2,1);animation-timing-function:cubic-bezier(0.4,0,0.2,1);animation-direction:reverse}@-webkit-keyframes u2356o3{from{-webkit-transform:none;transform:none}to{-webkit-transform:translateX(100%);transform:translateX(100%)}}@keyframes u2356o3{from{-webkit-transform:none;transform:none}to{-webkit-transform:translateX(100%);transform:translateX(100%)}}.forge-split-view-panel[orientation=vertical]{min-height:8px;min-height:var(--forge-split-view-handle-width,8px);height:calc(var(--forge-split-view-panel-size,unset) + var(--forge-split-view-handle-width,8px));-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column}.forge-split-view-panel[orientation=vertical] .forge-split-view-panel__handle{height:8px;height:var(--forge-split-view-handle-width,8px);cursor:var(--forge-split-view-panel-cursor)}.forge-split-view-panel[orientation=vertical].forge-split-view-panel--closing[resizable=end]{position:absolute;top:0;left:0;-webkit-animation-name:u2356or;animation-name:u2356or;-webkit-animation-duration:.3s;animation-duration:.3s;-webkit-animation-timing-function:cubic-bezier(0.4,0,0.2,1);animation-timing-function:cubic-bezier(0.4,0,0.2,1)}@-webkit-keyframes u2356or{from{-webkit-transform:none;transform:none}to{-webkit-transform:translateY(-100%);transform:translateY(-100%)}}@keyframes u2356or{from{-webkit-transform:none;transform:none}to{-webkit-transform:translateY(-100%);transform:translateY(-100%)}}.forge-split-view-panel[orientation=vertical].forge-split-view-panel--closing[resizable=start]{position:absolute;bottom:0;left:0;-webkit-animation-name:u2356pg;animation-name:u2356pg;-webkit-animation-duration:.3s;animation-duration:.3s;-webkit-animation-timing-function:cubic-bezier(0.4,0,0.2,1);animation-timing-function:cubic-bezier(0.4,0,0.2,1)}@-webkit-keyframes u2356pg{from{-webkit-transform:none;transform:none}to{-webkit-transform:translateY(100%);transform:translateY(100%)}}@keyframes u2356pg{from{-webkit-transform:none;transform:none}to{-webkit-transform:translateY(100%);transform:translateY(100%)}}.forge-split-view-panel[orientation=vertical].forge-split-view-panel--opening[resizable=end]{position:absolute;top:0;left:0;-webkit-animation-name:u2356pn;animation-name:u2356pn;-webkit-animation-duration:.3s;animation-duration:.3s;-webkit-animation-timing-function:cubic-bezier(0.4,0,0.2,1);animation-timing-function:cubic-bezier(0.4,0,0.2,1);animation-direction:reverse}@-webkit-keyframes u2356pn{from{-webkit-transform:none;transform:none}to{-webkit-transform:translateY(-100%);transform:translateY(-100%)}}@keyframes u2356pn{from{-webkit-transform:none;transform:none}to{-webkit-transform:translateY(-100%);transform:translateY(-100%)}}.forge-split-view-panel[orientation=vertical].forge-split-view-panel--opening[resizable=start]{position:absolute;bottom:0;left:0;-webkit-animation-name:u2356py;animation-name:u2356py;-webkit-animation-duration:.3s;animation-duration:.3s;-webkit-animation-timing-function:cubic-bezier(0.4,0,0.2,1);animation-timing-function:cubic-bezier(0.4,0,0.2,1);animation-direction:reverse}@-webkit-keyframes u2356py{from{-webkit-transform:none;transform:none}to{-webkit-transform:translateY(100%);transform:translateY(100%)}}@keyframes u2356py{from{-webkit-transform:none;transform:none}to{-webkit-transform:translateY(100%);transform:translateY(100%)}}:host{z-index:var(--forge-split-view-animating-layer)!important;display:block;position:relative;height:100%;width:100%;-webkit-box-flex:0;flex:0}:host([hidden]){display:none}:host(:not([resizable=start],[resizable=end])){-webkit-box-flex:1;flex:1}:host(:not([resizable=start],[resizable=end])) .forge-split-view-panel{width:100%;height:100%;min-width:0;min-height:0}:host(:not([resizable=start],[resizable=end])) .forge-split-view-panel__handle{display:none}';
|
|
18
18
|
/**
|
|
19
19
|
* The custom element class behind the `<forge-split-view-panel>` element.
|
|
20
20
|
*
|
package/package.json
CHANGED
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2023 Tyler Technologies, Inc.
|
|
4
|
+
* License: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
@use './token-utils' as *;
|
|
7
|
+
|
|
8
|
+
@forward './token-utils';
|
|
9
|
+
|
|
10
|
+
@mixin host {
|
|
11
|
+
display: block;
|
|
12
|
+
container-type: inline-size;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
@mixin base {
|
|
16
|
+
display: grid;
|
|
17
|
+
grid-template-columns: 1fr;
|
|
18
|
+
grid-template-rows: 1fr;
|
|
19
|
+
overflow: hidden;
|
|
20
|
+
box-sizing: border-box;
|
|
21
|
+
|
|
22
|
+
transition-property: opacity, grid-template-rows, min-height;
|
|
23
|
+
transition-duration: #{token(transition-duration)};
|
|
24
|
+
transition-timing-function: #{token(transition-easing)};
|
|
25
|
+
|
|
26
|
+
background: #{token(background)};
|
|
27
|
+
color: #{token(color)};
|
|
28
|
+
|
|
29
|
+
opacity: 1;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
@mixin inner {
|
|
33
|
+
display: grid;
|
|
34
|
+
grid-template-columns: 1fr auto;
|
|
35
|
+
place-items: center;
|
|
36
|
+
gap: #{token(gap)};
|
|
37
|
+
overflow: hidden;
|
|
38
|
+
padding-inline: #{token(padding-inline)};
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
@mixin container {
|
|
42
|
+
display: flex;
|
|
43
|
+
justify-content: center;
|
|
44
|
+
align-items: center;
|
|
45
|
+
gap: #{token(gap)};
|
|
46
|
+
flex: 1 1 auto;
|
|
47
|
+
padding-block: #{token(padding-block)};
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
@mixin dismissed {
|
|
51
|
+
grid-template-rows: 0fr;
|
|
52
|
+
opacity: 0;
|
|
53
|
+
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2023 Tyler Technologies, Inc.
|
|
4
|
+
* License: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
@use '../core/styles/tokens/banner/tokens';
|
|
7
|
+
@use '../core/styles/tokens/token-utils';
|
|
8
|
+
|
|
9
|
+
$_module: banner;
|
|
10
|
+
$_tokens: tokens.$tokens;
|
|
11
|
+
|
|
12
|
+
@mixin provide-theme($theme) {
|
|
13
|
+
@include token-utils.provide-theme($_module, $_tokens, $theme);
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
@function token($name, $type: token) {
|
|
17
|
+
@return token-utils.token($_module, $_tokens, $name, $type);
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
@function declare($token) {
|
|
21
|
+
@return token-utils.declare($_module, $token);
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
@mixin override($token, $token-or-value, $type: token) {
|
|
25
|
+
@include token-utils.override($_module, $_tokens, $token, $token-or-value, $type);
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
@mixin tokens($includes: null, $excludes: null) {
|
|
29
|
+
@include token-utils.tokens($_module, $_tokens, $includes, $excludes);
|
|
30
|
+
}
|
|
@@ -3,21 +3,121 @@
|
|
|
3
3
|
* Copyright 2023 Tyler Technologies, Inc.
|
|
4
4
|
* License: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
-
@use './
|
|
6
|
+
@use './core' as *;
|
|
7
|
+
@use '../button';
|
|
8
|
+
@use '../icon-button';
|
|
9
|
+
@use '../core/styles/theme';
|
|
7
10
|
|
|
8
|
-
|
|
11
|
+
//
|
|
12
|
+
// Host
|
|
13
|
+
//
|
|
9
14
|
|
|
10
15
|
:host {
|
|
11
|
-
|
|
16
|
+
@include host;
|
|
12
17
|
}
|
|
13
18
|
|
|
14
19
|
:host([hidden]) {
|
|
15
20
|
display: none;
|
|
16
21
|
}
|
|
17
22
|
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
@include
|
|
23
|
+
//
|
|
24
|
+
// Base
|
|
25
|
+
//
|
|
26
|
+
|
|
27
|
+
.forge-banner {
|
|
28
|
+
@include tokens;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
.forge-banner {
|
|
32
|
+
@include base;
|
|
33
|
+
|
|
34
|
+
.inner {
|
|
35
|
+
@include inner;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
.container {
|
|
39
|
+
@include container;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
forge-icon-button {
|
|
43
|
+
@include icon-button.provide-theme((
|
|
44
|
+
focus-indicator-color: #{token(color)}
|
|
45
|
+
));
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
//
|
|
50
|
+
// Slotted - button
|
|
51
|
+
//
|
|
52
|
+
|
|
53
|
+
::slotted(forge-button[slot=button]) {
|
|
54
|
+
@include button.provide-theme((
|
|
55
|
+
primary-color: #{token(color)}
|
|
56
|
+
));
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
//
|
|
60
|
+
// Dismissed
|
|
61
|
+
//
|
|
62
|
+
|
|
63
|
+
:host([dismissed]) {
|
|
64
|
+
.forge-banner {
|
|
65
|
+
@include dismissed;
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
//
|
|
70
|
+
// Theme
|
|
71
|
+
//
|
|
72
|
+
|
|
73
|
+
@each $theme in [primary secondary tertiary success error warning] {
|
|
74
|
+
:host([theme=#{$theme}]) {
|
|
75
|
+
.forge-banner {
|
|
76
|
+
@include override(background, theme.variable(#{$theme}-container), value);
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
// Backwards compatibility with the new error theme
|
|
82
|
+
:host([theme=danger]) {
|
|
83
|
+
.forge-banner {
|
|
84
|
+
@include override(background, theme.variable(error-container), value);
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
// Use surface theme for info-secondary
|
|
89
|
+
:host([theme=info-secondary]) {
|
|
90
|
+
.forge-banner {
|
|
91
|
+
@include override(background, theme.variable(surface-container), value);
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
//
|
|
96
|
+
// Responsive
|
|
97
|
+
//
|
|
98
|
+
|
|
99
|
+
@container (max-width: 600px) {
|
|
100
|
+
.forge-banner {
|
|
101
|
+
.container {
|
|
102
|
+
display: grid;
|
|
103
|
+
grid-template-rows: [content] 1fr [button] auto;
|
|
104
|
+
grid-template-columns: [content] 1fr;
|
|
105
|
+
place-items: normal;
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
&.has-icon {
|
|
109
|
+
.container {
|
|
110
|
+
grid-template-columns: [icon] auto [content] 1fr;
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
.inner {
|
|
115
|
+
place-items: normal;
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
.button-container {
|
|
119
|
+
grid-row: button;
|
|
120
|
+
grid-column: content;
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2023 Tyler Technologies, Inc.
|
|
4
|
+
* License: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
@use 'sass:map';
|
|
7
|
+
@use '../../animation';
|
|
8
|
+
@use '../../spacing';
|
|
9
|
+
@use '../../theme';
|
|
10
|
+
@use '../../border';
|
|
11
|
+
@use '../../utils';
|
|
12
|
+
|
|
13
|
+
$tokens: (
|
|
14
|
+
background: utils.module-val(banner, background, theme.variable(info-container)),
|
|
15
|
+
color: utils.module-val(banner, color, theme.variable(text-high)),
|
|
16
|
+
gap: utils.module-val(banner, gap, spacing.variable(small)),
|
|
17
|
+
padding-inline: utils.module-val(banner, padding-inline, spacing.variable(large)),
|
|
18
|
+
padding-block: utils.module-val(banner, padding-block, spacing.variable(small)),
|
|
19
|
+
transition-duration: utils.module-val(banner, transition-duration, animation.variable(duration-short4)),
|
|
20
|
+
transition-easing: utils.module-val(banner, transition-easing, animation.variable(easing-standard))
|
|
21
|
+
) !default;
|
|
22
|
+
|
|
23
|
+
@function get($key) {
|
|
24
|
+
@return map.get($tokens, $key);
|
|
25
|
+
}
|
|
@@ -15,10 +15,6 @@
|
|
|
15
15
|
@use '../skeleton/variables' as skeleton-variables;
|
|
16
16
|
@use '../toast/mixins' as toast-mixins;
|
|
17
17
|
@use '../toast/variables' as toast-variables;
|
|
18
|
-
@use '../badge/mixins' as badge-mixins;
|
|
19
|
-
@use '../badge/variables' as badge-variables;
|
|
20
|
-
@use '../banner/mixins' as banner-mixins;
|
|
21
|
-
@use '../banner/variables' as banner-variables;
|
|
22
18
|
@use '../table/mixins' as table-mixins;
|
|
23
19
|
@use '../table/variables' as table-variables;
|
|
24
20
|
|
|
@@ -45,6 +41,4 @@
|
|
|
45
41
|
@include skeleton-mixins.provide-theme(skeleton-variables.$theme-values-dark);
|
|
46
42
|
@include toast-mixins.provide-theme(toast-variables.$theme-values-dark);
|
|
47
43
|
@include table-mixins.provide-theme(table-variables.$theme-values-dark);
|
|
48
|
-
@include badge-mixins.provide-theme(badge-variables.$theme-values-dark);
|
|
49
|
-
@include banner-mixins.provide-theme(banner-variables.$theme-values-dark);
|
|
50
44
|
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @license
|
|
3
|
-
* Copyright 2023 Tyler Technologies, Inc.
|
|
4
|
-
* License: Apache-2.0
|
|
5
|
-
*/
|
|
6
|
-
import{c as k}from"./chunk.MTZOQQXR.js";import{d as I}from"./chunk.NPCUVYWP.js";import{f as x}from"./chunk.EWT2PBEP.js";import{d as D,l as w}from"./chunk.L7BSLZCB.js";import{a as v}from"./chunk.ZY3ETQ3D.js";import{a as m}from"./chunk.NVUMRW44.js";import{a as h,b as _}from"./chunk.UVXKHQQZ.js";import{a as f,e as p,f as a,k as u}from"./chunk.TPXXHX5J.js";import{k as b}from"./chunk.J2M2MXP2.js";import{d as i}from"./chunk.M3QDAYD2.js";var d=`${_}banner`,S={BANNER:"forge-banner",DISMISSED:"forge-banner--dismissed"},E={BANNER:".forge-banner",FORGE_DISMISS_BUTTON:"forge-icon-button.forge-banner__container-dismiss",DISMISS_BUTTON:".forge-banner__container-dismiss",ICON:"i",FORGE_BUTTON:"forge-button"},B={SLOT:"slot",DISMISSED:"dismissed",CAN_DISMISS:"can-dismiss",HIDDEN:"hidden"},y={ICON:"icon",TEXT:"text",BUTTON:"button"},N={DISMISSED:`${d}-dismissed`,UNDISMISSED:`${d}-undismissed`},e={elementName:d,classes:S,selectors:E,attributes:B,slots:y,events:N};var s=class extends v{constructor(o){super(o);this._rootElement=a(o,e.selectors.BANNER)}addRootClass(o){this._rootElement.classList.add(o)}removeRootClass(o){this._rootElement.classList.remove(o)}addDismissButtonAttribute(o,t=""){this.forgeIconButtonDismiss.setAttribute(o,t)}removeDismissButtonAttribute(o){this.forgeIconButtonDismiss.removeAttribute(o)}addDismissEventListener(o,t){this.buttonDismiss.addEventListener(o,t)}removeDismissEventListener(o,t){this.buttonDismiss.removeEventListener(o,t)}get forgeIconButtonDismiss(){return this._forgeIconButtonDismiss||(this._forgeIconButtonDismiss=a(this._component,e.selectors.FORGE_DISMISS_BUTTON)),this._forgeIconButtonDismiss}get buttonDismiss(){return this._buttonDismiss||(this._buttonDismiss=a(this._component,e.selectors.DISMISS_BUTTON)),this._buttonDismiss}};var c=class{constructor(n){this._adapter=n;this._dismissed=!1;this._canDismiss=!0;this._dismissBanner=()=>this._dismiss()}connect(){this._addDismissEventListener()}disconnect(){this._removeDismissEventListener()}_dismiss(){this.dismissed=!0}_syncDismissedState(){this.dismissed?(this._setDismissedClass(),this._adapter.emitHostEvent(e.events.DISMISSED)):(this._setUndissmissedClass(),this._adapter.emitHostEvent(e.events.UNDISMISSED))}_setUndissmissedClass(){this._adapter.removeRootClass(e.classes.DISMISSED)}_setDismissedClass(){this._adapter.addRootClass(e.classes.DISMISSED)}_syncCanDismissState(){this.canDismiss?this._adapter.removeDismissButtonAttribute(e.attributes.HIDDEN):this._adapter.addDismissButtonAttribute(e.attributes.HIDDEN)}_addDismissEventListener(){this._adapter.addDismissEventListener("click",this._dismissBanner)}_removeDismissEventListener(){this._adapter.removeDismissEventListener("click",this._dismissBanner)}get dismissed(){return!!this._dismissed}set dismissed(n){this.dismissed!==!!n&&(this._dismissed=!!n,this._syncDismissedState())}get canDismiss(){return!!this._canDismiss}set canDismiss(n){this._canDismiss!==!!n&&(this._canDismiss=!!n,this._syncCanDismissState())}};var C='<template><div class="forge-banner" part="root"><div class="forge-banner__container" part="container"><div class="forge-banner__container-wrapper" part="wrapper"><div class="forge-banner__container-wrapper-icon" part="icon-container"><slot name="icon"></slot></div><div class="forge-banner__container-wrapper-subsection" part="subsection-wrapper"><div class="forge-banner__container-wrapper-subsection-text forge-typography--body2" part="subsection-text"><slot></slot></div><div class="forge-banner__container-wrapper-subsection-action" part="action-subsection"><slot name="button"></slot></div></div></div><forge-icon-button class="forge-banner__container-dismiss" part="dismiss-icon-button" part="dismiss-button"><forge-icon name="cancel" part="dismiss-button-icon"></forge-icon></forge-icon-button><forge-tooltip type="label">Dismiss</forge-tooltip></div></div></template>',T='@media (min-width:600px){.forge-banner{-webkit-transition:max-height .3s ease-in-out;transition:max-height .3s ease-in-out;overflow:hidden;max-height:600px;max-height:600px}.forge-banner.forge-banner--dismissed{-webkit-transition:max-height .3s ease-in-out;transition:max-height .3s ease-in-out;overflow:hidden;max-height:0}.forge-banner__container{border-bottom-color:#e0e0e0;border-bottom-color:var(--forge-theme-border-color,#e0e0e0);display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;border-bottom-width:1px;border-bottom-style:solid;min-height:48px;-webkit-box-align:center;align-items:center;padding:0 24px 0 24px}.forge-banner__container-wrapper{-webkit-box-flex:1;flex:1 1 auto;display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;-webkit-box-pack:center;justify-content:center;-webkit-box-align:center;align-items:center}.forge-banner__container-wrapper-icon{margin-right:16px}.forge-banner__container-wrapper-subsection{display:-webkit-box;display:flex;-webkit-box-pack:center;justify-content:center;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;-webkit-box-align:center;align-items:center}.forge-banner__container-wrapper-subsection-text{padding:14px 0 14px 0;margin-right:24px}.forge-banner__container-wrapper-subsection-action ::slotted(forge-button){margin-right:16px}.forge-banner__container-dismiss[hidden]{display:none}}@media (max-width:599px){.forge-banner{-webkit-transition:max-height .3s ease-in-out;transition:max-height .3s ease-in-out;overflow:hidden;max-height:600px;max-height:600px}.forge-banner.forge-banner--dismissed{-webkit-transition:max-height .3s ease-in-out;transition:max-height .3s ease-in-out;overflow:hidden;max-height:0}.forge-banner__container{border-bottom-color:#e0e0e0;border-bottom-color:var(--forge-theme-border-color,#e0e0e0);display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;border-bottom-width:1px;border-bottom-style:solid;min-height:48px;padding:16px 12px 16px 12px}.forge-banner__container-wrapper{-webkit-box-flex:1;flex:1 1 auto;display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row}.forge-banner__container-wrapper-icon{margin-right:16px}.forge-banner__container-wrapper-subsection{display:-webkit-box;display:flex;-webkit-box-pack:center;justify-content:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column}.forge-banner__container-wrapper-subsection-action ::slotted(forge-button){margin-top:12px}.forge-banner__container-dismiss{margin-top:-12px;margin-right:-12px}.forge-banner__container-dismiss[hidden]{display:none}}:host{display:block}:host([hidden]){display:none}:host(:not([theme])) .forge-banner,:host([theme=""]) .forge-banner,:host([theme=default]) .forge-banner{background:#e8eaf6;background:var(--forge-banner-theme-background,var(--forge-banner-theme-default-background,#e8eaf6));color:rgba(0,0,0,.87);color:var(--forge-banner-theme-on-background,var(--forge-banner-theme-default-font-color,rgba(0,0,0,.87)))}:host(:not([theme])) .forge-banner .forge-banner__container-wrapper-icon,:host([theme=""]) .forge-banner .forge-banner__container-wrapper-icon,:host([theme=default]) .forge-banner .forge-banner__container-wrapper-icon{color:rgba(0,0,0,.54);color:var(--forge-banner-theme-icon,var(--forge-banner-theme-default-icon-color,rgba(0,0,0,.54)))}:host(:not([theme])) .forge-banner .forge-banner__container-dismiss,:host([theme=""]) .forge-banner .forge-banner__container-dismiss,:host([theme=default]) .forge-banner .forge-banner__container-dismiss{color:rgba(0,0,0,.54);color:var(--forge-banner-theme-icon,var(--forge-banner-theme-default-icon-color,rgba(0,0,0,.54)))}:host([theme=danger]) .forge-banner{background:#ffcdd2;background:var(--forge-banner-theme-background,var(--forge-banner-theme-danger-background,#ffcdd2));color:rgba(0,0,0,.87);color:var(--forge-banner-theme-on-background,var(--forge-banner-theme-danger-font-color,rgba(0,0,0,.87)))}:host([theme=danger]) .forge-banner .forge-banner__container-wrapper-icon{color:rgba(0,0,0,.54);color:var(--forge-banner-theme-icon,var(--forge-banner-theme-danger-icon-color,rgba(0,0,0,.54)))}:host([theme=danger]) .forge-banner .forge-banner__container-dismiss{color:rgba(0,0,0,.54);color:var(--forge-banner-theme-icon,var(--forge-banner-theme-danger-icon-color,rgba(0,0,0,.54)))}:host([theme=warning]) .forge-banner{background:#ffdba6;background:var(--forge-banner-theme-background,var(--forge-banner-theme-warning-background,#ffdba6));color:rgba(0,0,0,.87);color:var(--forge-banner-theme-on-background,var(--forge-banner-theme-warning-font-color,rgba(0,0,0,.87)))}:host([theme=warning]) .forge-banner .forge-banner__container-wrapper-icon{color:rgba(0,0,0,.54);color:var(--forge-banner-theme-icon,var(--forge-banner-theme-warning-icon-color,rgba(0,0,0,.54)))}:host([theme=warning]) .forge-banner .forge-banner__container-dismiss{color:rgba(0,0,0,.54);color:var(--forge-banner-theme-icon,var(--forge-banner-theme-warning-icon-color,rgba(0,0,0,.54)))}:host([theme=success]) .forge-banner{background:#a5d6a7;background:var(--forge-banner-theme-background,var(--forge-banner-theme-success-background,#a5d6a7));color:rgba(0,0,0,.87);color:var(--forge-banner-theme-on-background,var(--forge-banner-theme-success-font-color,rgba(0,0,0,.87)))}:host([theme=success]) .forge-banner .forge-banner__container-wrapper-icon{color:rgba(0,0,0,.54);color:var(--forge-banner-theme-icon,var(--forge-banner-theme-success-icon-color,rgba(0,0,0,.54)))}:host([theme=success]) .forge-banner .forge-banner__container-dismiss{color:rgba(0,0,0,.54);color:var(--forge-banner-theme-icon,var(--forge-banner-theme-success-icon-color,rgba(0,0,0,.54)))}:host([theme=info-primary]) .forge-banner{background:#bbdefb;background:var(--forge-banner-theme-background,var(--forge-banner-theme-info-primary-background,#bbdefb));color:rgba(0,0,0,.87);color:var(--forge-banner-theme-on-background,var(--forge-banner-theme-info-primary-font-color,rgba(0,0,0,.87)))}:host([theme=info-primary]) .forge-banner .forge-banner__container-wrapper-icon{color:rgba(0,0,0,.54);color:var(--forge-banner-theme-icon,var(--forge-banner-theme-info-primary-icon-color,rgba(0,0,0,.54)))}:host([theme=info-primary]) .forge-banner .forge-banner__container-dismiss{color:rgba(0,0,0,.54);color:var(--forge-banner-theme-icon,var(--forge-banner-theme-info-primary-icon-color,rgba(0,0,0,.54)))}:host([theme=info-secondary]) .forge-banner{background:#e0e0e0;background:var(--forge-banner-theme-background,var(--forge-banner-theme-info-secondary-background,#e0e0e0));color:rgba(0,0,0,.87);color:var(--forge-banner-theme-on-background,var(--forge-banner-theme-info-secondary-font-color,rgba(0,0,0,.87)))}:host([theme=info-secondary]) .forge-banner .forge-banner__container-wrapper-icon{color:rgba(0,0,0,.54);color:var(--forge-banner-theme-icon,var(--forge-banner-theme-info-secondary-icon-color,rgba(0,0,0,.54)))}:host([theme=info-secondary]) .forge-banner .forge-banner__container-dismiss{color:rgba(0,0,0,.54);color:var(--forge-banner-theme-icon,var(--forge-banner-theme-info-secondary-icon-color,rgba(0,0,0,.54)))}',r=class extends u{constructor(){super();D.define(x),p(this,C,T),this._foundation=new c(new s(this))}static get observedAttributes(){return[e.attributes.DISMISSED,e.attributes.CAN_DISMISS]}connectedCallback(){this._foundation.connect()}disconnectedCallback(){this._foundation.disconnect()}attributeChangedCallback(o,t,l){switch(o){case e.attributes.DISMISSED:this.dismissed=b(l);break;case e.attributes.CAN_DISMISS:this.canDismiss=b(l);break}}};i([m()],r.prototype,"dismissed",2),i([m()],r.prototype,"canDismiss",2),r=i([h({name:e.elementName,dependencies:[I,w,k]})],r);function oe(){f(r)}export{e as a,s as b,c,r as d,oe as e};
|
|
7
|
-
//# sourceMappingURL=chunk.DFRD7A2Y.js.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../src/banner/banner-constants.ts", "../../src/banner/banner-adapter.ts", "../../src/banner/banner-foundation.ts", "../../src/banner/banner.ts", "../../src/banner/index.ts"],
|
|
4
|
-
"sourcesContent": ["import { COMPONENT_NAME_PREFIX } from '../constants';\n\nconst elementName: keyof HTMLElementTagNameMap = `${COMPONENT_NAME_PREFIX}banner`;\n\nconst classes = {\n BANNER: 'forge-banner',\n DISMISSED: 'forge-banner--dismissed'\n};\n\nconst selectors = {\n BANNER: '.forge-banner',\n FORGE_DISMISS_BUTTON: 'forge-icon-button.forge-banner__container-dismiss',\n DISMISS_BUTTON: '.forge-banner__container-dismiss',\n ICON: 'i',\n FORGE_BUTTON: 'forge-button'\n};\n\nconst attributes = {\n SLOT: 'slot',\n DISMISSED: 'dismissed',\n CAN_DISMISS: 'can-dismiss',\n HIDDEN: 'hidden'\n};\n\nconst slots = {\n ICON: 'icon',\n TEXT: 'text',\n BUTTON: 'button'\n};\n\nconst events = {\n DISMISSED: `${elementName}-dismissed`,\n UNDISMISSED: `${elementName}-undismissed`\n};\n\nexport const BANNER_CONSTANTS = {\n elementName,\n classes,\n selectors,\n attributes,\n slots,\n events\n};\n", "import { getShadowElement } from '@tylertech/forge-core';\n\nimport { BaseAdapter, IBaseAdapter } from '../core/base/base-adapter';\nimport { IIconButtonComponent } from '../icon-button';\nimport { IBannerComponent } from './banner';\nimport { BANNER_CONSTANTS } from './banner-constants';\n\nexport interface IBannerAdapter extends IBaseAdapter {\n addRootClass(className: string): void;\n removeRootClass(className: string): void;\n addDismissButtonAttribute(name: string, value?: string): void;\n removeDismissButtonAttribute(name: string): void;\n addDismissEventListener(event: string, callback: (event: Event) => void): void;\n removeDismissEventListener(event: string, callback: (event: Event) => void): void;\n}\n\nexport class BannerAdapter extends BaseAdapter<IBannerComponent> implements IBannerAdapter {\n private _rootElement: HTMLElement;\n private _forgeIconButtonDismiss: IIconButtonComponent;\n private _buttonDismiss: HTMLButtonElement;\n\n constructor(component: IBannerComponent) {\n super(component);\n this._rootElement = getShadowElement(component, BANNER_CONSTANTS.selectors.BANNER);\n }\n\n public addRootClass(name: string): void {\n this._rootElement.classList.add(name);\n }\n\n public removeRootClass(name: string): void {\n this._rootElement.classList.remove(name);\n }\n\n public addDismissButtonAttribute(name: string, value = ''): void {\n this.forgeIconButtonDismiss.setAttribute(name, value);\n }\n\n public removeDismissButtonAttribute(name: string): void {\n this.forgeIconButtonDismiss.removeAttribute(name);\n }\n\n public addDismissEventListener(event: string, callback: (event: Event) => void): void {\n this.buttonDismiss.addEventListener(event, callback);\n }\n\n public removeDismissEventListener(event: string, callback: (event: Event) => void): void {\n this.buttonDismiss.removeEventListener(event, callback);\n }\n\n public get forgeIconButtonDismiss(): IIconButtonComponent {\n if (!this._forgeIconButtonDismiss) {\n this._forgeIconButtonDismiss = getShadowElement(this._component, BANNER_CONSTANTS.selectors.FORGE_DISMISS_BUTTON) as IIconButtonComponent;\n }\n\n return this._forgeIconButtonDismiss;\n }\n\n public get buttonDismiss(): HTMLButtonElement {\n if (!this._buttonDismiss) {\n this._buttonDismiss = getShadowElement(this._component, BANNER_CONSTANTS.selectors.DISMISS_BUTTON) as HTMLButtonElement;\n }\n\n return this._buttonDismiss;\n }\n}\n", "import { ICustomElementFoundation } from '@tylertech/forge-core';\n\nimport { IBannerAdapter } from './banner-adapter';\nimport { BANNER_CONSTANTS } from './banner-constants';\n\nexport interface IBannerFoundation extends ICustomElementFoundation {\n dismissed: boolean;\n canDismiss: boolean;\n}\n\nexport class BannerFoundation implements IBannerFoundation {\n private _dismissed = false;\n private _canDismiss = true;\n private _dismissBanner: () => void;\n\n constructor(private _adapter: IBannerAdapter) {\n this._dismissBanner = () => this._dismiss();\n }\n\n public connect(): void {\n this._addDismissEventListener();\n }\n\n public disconnect(): void {\n this._removeDismissEventListener();\n }\n\n private _dismiss(): void {\n this.dismissed = true;\n }\n\n private _syncDismissedState(): void {\n if (this.dismissed) {\n this._setDismissedClass();\n this._adapter.emitHostEvent(BANNER_CONSTANTS.events.DISMISSED);\n } else {\n this._setUndissmissedClass();\n this._adapter.emitHostEvent(BANNER_CONSTANTS.events.UNDISMISSED);\n }\n }\n\n private _setUndissmissedClass(): void {\n this._adapter.removeRootClass(BANNER_CONSTANTS.classes.DISMISSED);\n }\n\n private _setDismissedClass(): void {\n this._adapter.addRootClass(BANNER_CONSTANTS.classes.DISMISSED);\n }\n\n private _syncCanDismissState(): void {\n if (this.canDismiss) {\n this._adapter.removeDismissButtonAttribute(BANNER_CONSTANTS.attributes.HIDDEN);\n } else {\n this._adapter.addDismissButtonAttribute(BANNER_CONSTANTS.attributes.HIDDEN);\n }\n }\n\n private _addDismissEventListener(): void {\n this._adapter.addDismissEventListener('click', this._dismissBanner);\n }\n\n private _removeDismissEventListener(): void {\n this._adapter.removeDismissEventListener('click', this._dismissBanner);\n }\n\n public get dismissed(): boolean {\n return !!this._dismissed;\n }\n public set dismissed(val: boolean) {\n if (this.dismissed === !!val) {\n return;\n }\n\n this._dismissed = !!val;\n this._syncDismissedState();\n }\n\n public get canDismiss(): boolean {\n return !!this._canDismiss;\n }\n public set canDismiss(val: boolean) {\n if (this._canDismiss === !!val) {\n return;\n }\n\n this._canDismiss = !!val;\n this._syncCanDismissState();\n }\n}\n", "import { attachShadowTemplate, coerceBoolean, CustomElement, FoundationProperty } from '@tylertech/forge-core';\nimport { tylIconCancel } from '@tylertech/tyler-icons/standard';\nimport { BaseComponent, IBaseComponent } from '../core/base/base-component';\nimport { IconComponent, IconRegistry } from '../icon';\nimport { IconButtonComponent } from '../icon-button';\nimport { TooltipComponent } from '../tooltip';\nimport { BannerAdapter } from './banner-adapter';\nimport { BANNER_CONSTANTS } from './banner-constants';\nimport { BannerFoundation } from './banner-foundation';\n\nconst template = '<template><div class=\\\"forge-banner\\\" part=\\\"root\\\"><div class=\\\"forge-banner__container\\\" part=\\\"container\\\"><div class=\\\"forge-banner__container-wrapper\\\" part=\\\"wrapper\\\"><div class=\\\"forge-banner__container-wrapper-icon\\\" part=\\\"icon-container\\\"><slot name=\\\"icon\\\"></slot></div><div class=\\\"forge-banner__container-wrapper-subsection\\\" part=\\\"subsection-wrapper\\\"><div class=\\\"forge-banner__container-wrapper-subsection-text forge-typography--body2\\\" part=\\\"subsection-text\\\"><slot></slot></div><div class=\\\"forge-banner__container-wrapper-subsection-action\\\" part=\\\"action-subsection\\\"><slot name=\\\"button\\\"></slot></div></div></div><forge-icon-button class=\\\"forge-banner__container-dismiss\\\" part=\\\"dismiss-icon-button\\\" part=\\\"dismiss-button\\\"><forge-icon name=\\\"cancel\\\" part=\\\"dismiss-button-icon\\\"></forge-icon></forge-icon-button><forge-tooltip type=\\\"label\\\">Dismiss</forge-tooltip></div></div></template>';\nconst styles = '@media (min-width:600px){.forge-banner{-webkit-transition:max-height .3s ease-in-out;transition:max-height .3s ease-in-out;overflow:hidden;max-height:600px;max-height:600px}.forge-banner.forge-banner--dismissed{-webkit-transition:max-height .3s ease-in-out;transition:max-height .3s ease-in-out;overflow:hidden;max-height:0}.forge-banner__container{border-bottom-color:#e0e0e0;border-bottom-color:var(--forge-theme-border-color,#e0e0e0);display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;border-bottom-width:1px;border-bottom-style:solid;min-height:48px;-webkit-box-align:center;align-items:center;padding:0 24px 0 24px}.forge-banner__container-wrapper{-webkit-box-flex:1;flex:1 1 auto;display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;-webkit-box-pack:center;justify-content:center;-webkit-box-align:center;align-items:center}.forge-banner__container-wrapper-icon{margin-right:16px}.forge-banner__container-wrapper-subsection{display:-webkit-box;display:flex;-webkit-box-pack:center;justify-content:center;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;-webkit-box-align:center;align-items:center}.forge-banner__container-wrapper-subsection-text{padding:14px 0 14px 0;margin-right:24px}.forge-banner__container-wrapper-subsection-action ::slotted(forge-button){margin-right:16px}.forge-banner__container-dismiss[hidden]{display:none}}@media (max-width:599px){.forge-banner{-webkit-transition:max-height .3s ease-in-out;transition:max-height .3s ease-in-out;overflow:hidden;max-height:600px;max-height:600px}.forge-banner.forge-banner--dismissed{-webkit-transition:max-height .3s ease-in-out;transition:max-height .3s ease-in-out;overflow:hidden;max-height:0}.forge-banner__container{border-bottom-color:#e0e0e0;border-bottom-color:var(--forge-theme-border-color,#e0e0e0);display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;border-bottom-width:1px;border-bottom-style:solid;min-height:48px;padding:16px 12px 16px 12px}.forge-banner__container-wrapper{-webkit-box-flex:1;flex:1 1 auto;display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row}.forge-banner__container-wrapper-icon{margin-right:16px}.forge-banner__container-wrapper-subsection{display:-webkit-box;display:flex;-webkit-box-pack:center;justify-content:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column}.forge-banner__container-wrapper-subsection-action ::slotted(forge-button){margin-top:12px}.forge-banner__container-dismiss{margin-top:-12px;margin-right:-12px}.forge-banner__container-dismiss[hidden]{display:none}}:host{display:block}:host([hidden]){display:none}:host(:not([theme])) .forge-banner,:host([theme=\\\"\\\"]) .forge-banner,:host([theme=default]) .forge-banner{background:#e8eaf6;background:var(--forge-banner-theme-background,var(--forge-banner-theme-default-background,#e8eaf6));color:rgba(0,0,0,.87);color:var(--forge-banner-theme-on-background,var(--forge-banner-theme-default-font-color,rgba(0,0,0,.87)))}:host(:not([theme])) .forge-banner .forge-banner__container-wrapper-icon,:host([theme=\\\"\\\"]) .forge-banner .forge-banner__container-wrapper-icon,:host([theme=default]) .forge-banner .forge-banner__container-wrapper-icon{color:rgba(0,0,0,.54);color:var(--forge-banner-theme-icon,var(--forge-banner-theme-default-icon-color,rgba(0,0,0,.54)))}:host(:not([theme])) .forge-banner .forge-banner__container-dismiss,:host([theme=\\\"\\\"]) .forge-banner .forge-banner__container-dismiss,:host([theme=default]) .forge-banner .forge-banner__container-dismiss{color:rgba(0,0,0,.54);color:var(--forge-banner-theme-icon,var(--forge-banner-theme-default-icon-color,rgba(0,0,0,.54)))}:host([theme=danger]) .forge-banner{background:#ffcdd2;background:var(--forge-banner-theme-background,var(--forge-banner-theme-danger-background,#ffcdd2));color:rgba(0,0,0,.87);color:var(--forge-banner-theme-on-background,var(--forge-banner-theme-danger-font-color,rgba(0,0,0,.87)))}:host([theme=danger]) .forge-banner .forge-banner__container-wrapper-icon{color:rgba(0,0,0,.54);color:var(--forge-banner-theme-icon,var(--forge-banner-theme-danger-icon-color,rgba(0,0,0,.54)))}:host([theme=danger]) .forge-banner .forge-banner__container-dismiss{color:rgba(0,0,0,.54);color:var(--forge-banner-theme-icon,var(--forge-banner-theme-danger-icon-color,rgba(0,0,0,.54)))}:host([theme=warning]) .forge-banner{background:#ffdba6;background:var(--forge-banner-theme-background,var(--forge-banner-theme-warning-background,#ffdba6));color:rgba(0,0,0,.87);color:var(--forge-banner-theme-on-background,var(--forge-banner-theme-warning-font-color,rgba(0,0,0,.87)))}:host([theme=warning]) .forge-banner .forge-banner__container-wrapper-icon{color:rgba(0,0,0,.54);color:var(--forge-banner-theme-icon,var(--forge-banner-theme-warning-icon-color,rgba(0,0,0,.54)))}:host([theme=warning]) .forge-banner .forge-banner__container-dismiss{color:rgba(0,0,0,.54);color:var(--forge-banner-theme-icon,var(--forge-banner-theme-warning-icon-color,rgba(0,0,0,.54)))}:host([theme=success]) .forge-banner{background:#a5d6a7;background:var(--forge-banner-theme-background,var(--forge-banner-theme-success-background,#a5d6a7));color:rgba(0,0,0,.87);color:var(--forge-banner-theme-on-background,var(--forge-banner-theme-success-font-color,rgba(0,0,0,.87)))}:host([theme=success]) .forge-banner .forge-banner__container-wrapper-icon{color:rgba(0,0,0,.54);color:var(--forge-banner-theme-icon,var(--forge-banner-theme-success-icon-color,rgba(0,0,0,.54)))}:host([theme=success]) .forge-banner .forge-banner__container-dismiss{color:rgba(0,0,0,.54);color:var(--forge-banner-theme-icon,var(--forge-banner-theme-success-icon-color,rgba(0,0,0,.54)))}:host([theme=info-primary]) .forge-banner{background:#bbdefb;background:var(--forge-banner-theme-background,var(--forge-banner-theme-info-primary-background,#bbdefb));color:rgba(0,0,0,.87);color:var(--forge-banner-theme-on-background,var(--forge-banner-theme-info-primary-font-color,rgba(0,0,0,.87)))}:host([theme=info-primary]) .forge-banner .forge-banner__container-wrapper-icon{color:rgba(0,0,0,.54);color:var(--forge-banner-theme-icon,var(--forge-banner-theme-info-primary-icon-color,rgba(0,0,0,.54)))}:host([theme=info-primary]) .forge-banner .forge-banner__container-dismiss{color:rgba(0,0,0,.54);color:var(--forge-banner-theme-icon,var(--forge-banner-theme-info-primary-icon-color,rgba(0,0,0,.54)))}:host([theme=info-secondary]) .forge-banner{background:#e0e0e0;background:var(--forge-banner-theme-background,var(--forge-banner-theme-info-secondary-background,#e0e0e0));color:rgba(0,0,0,.87);color:var(--forge-banner-theme-on-background,var(--forge-banner-theme-info-secondary-font-color,rgba(0,0,0,.87)))}:host([theme=info-secondary]) .forge-banner .forge-banner__container-wrapper-icon{color:rgba(0,0,0,.54);color:var(--forge-banner-theme-icon,var(--forge-banner-theme-info-secondary-icon-color,rgba(0,0,0,.54)))}:host([theme=info-secondary]) .forge-banner .forge-banner__container-dismiss{color:rgba(0,0,0,.54);color:var(--forge-banner-theme-icon,var(--forge-banner-theme-info-secondary-icon-color,rgba(0,0,0,.54)))}';\n\nexport interface IBannerComponent extends IBaseComponent {\n dismissed: boolean;\n canDismiss: boolean;\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'forge-banner': IBannerComponent;\n }\n\n interface HTMLElementEventMap {\n 'forge-banner-dismissed': CustomEvent<void>;\n 'forge-banner-undismissed': CustomEvent<void>;\n }\n}\n\n/**\n * The custom element class behind the `<forge-banner>` element.\n * \n * @tag forge-banner\n */\n@CustomElement({\n name: BANNER_CONSTANTS.elementName,\n dependencies: [\n IconButtonComponent,\n IconComponent,\n TooltipComponent\n ]\n})\nexport class BannerComponent extends BaseComponent implements IBannerComponent {\n public static get observedAttributes(): string[] {\n return [\n BANNER_CONSTANTS.attributes.DISMISSED,\n BANNER_CONSTANTS.attributes.CAN_DISMISS\n ];\n }\n\n protected _foundation: BannerFoundation;\n\n constructor() {\n super();\n IconRegistry.define(tylIconCancel);\n attachShadowTemplate(this, template, styles);\n this._foundation = new BannerFoundation(new BannerAdapter(this));\n }\n\n public connectedCallback(): void {\n this._foundation.connect();\n }\n\n public disconnectedCallback(): void {\n this._foundation.disconnect();\n }\n\n public attributeChangedCallback(name: string, oldValue: string, newValue: string): void {\n switch (name) {\n case BANNER_CONSTANTS.attributes.DISMISSED:\n this.dismissed = coerceBoolean(newValue);\n break;\n case BANNER_CONSTANTS.attributes.CAN_DISMISS:\n this.canDismiss = coerceBoolean(newValue);\n break;\n }\n }\n\n /** Controls whether the component is dismissed (hidden) or not. */\n @FoundationProperty()\n public declare dismissed: boolean;\n\n /** Controls the visibility of the dismiss button. */\n @FoundationProperty()\n public declare canDismiss: boolean;\n}\n", "import { defineCustomElement } from '@tylertech/forge-core';\n\nimport { BannerComponent } from './banner';\n\nexport * from './banner-adapter';\nexport * from './banner-constants';\nexport * from './banner-foundation';\nexport * from './banner';\n\nexport function defineBannerComponent(): void {\n defineCustomElement(BannerComponent);\n}\n"],
|
|
5
|
-
"mappings": "mbAEA,IAAMA,EAA2C,GAAGC,UAE9CC,EAAU,CACd,OAAQ,eACR,UAAW,yBACb,EAEMC,EAAY,CAChB,OAAQ,gBACR,qBAAsB,oDACtB,eAAgB,mCAChB,KAAM,IACN,aAAc,cAChB,EAEMC,EAAa,CACjB,KAAM,OACN,UAAW,YACX,YAAa,cACb,OAAQ,QACV,EAEMC,EAAQ,CACZ,KAAM,OACN,KAAM,OACN,OAAQ,QACV,EAEMC,EAAS,CACb,UAAW,GAAGN,cACd,YAAa,GAAGA,eAClB,EAEaO,EAAmB,CAC9B,YAAAP,EACA,QAAAE,EACA,UAAAC,EACA,WAAAC,EACA,MAAAC,EACA,OAAAC,CACF,EC1BO,IAAME,EAAN,cAA4BC,CAAwD,CAKzF,YAAYC,EAA6B,CACvC,MAAMA,CAAS,EACf,KAAK,aAAeC,EAAiBD,EAAWE,EAAiB,UAAU,MAAM,CACnF,CAEO,aAAaC,EAAoB,CACtC,KAAK,aAAa,UAAU,IAAIA,CAAI,CACtC,CAEO,gBAAgBA,EAAoB,CACzC,KAAK,aAAa,UAAU,OAAOA,CAAI,CACzC,CAEO,0BAA0BA,EAAcC,EAAQ,GAAU,CAC/D,KAAK,uBAAuB,aAAaD,EAAMC,CAAK,CACtD,CAEO,6BAA6BD,EAAoB,CACtD,KAAK,uBAAuB,gBAAgBA,CAAI,CAClD,CAEO,wBAAwBE,EAAeC,EAAwC,CACpF,KAAK,cAAc,iBAAiBD,EAAOC,CAAQ,CACrD,CAEO,2BAA2BD,EAAeC,EAAwC,CACvF,KAAK,cAAc,oBAAoBD,EAAOC,CAAQ,CACxD,CAEA,IAAW,wBAA+C,CACxD,OAAK,KAAK,0BACR,KAAK,wBAA0BL,EAAiB,KAAK,WAAYC,EAAiB,UAAU,oBAAoB,GAG3G,KAAK,uBACd,CAEA,IAAW,eAAmC,CAC5C,OAAK,KAAK,iBACR,KAAK,eAAiBD,EAAiB,KAAK,WAAYC,EAAiB,UAAU,cAAc,GAG5F,KAAK,cACd,CACF,ECvDO,IAAMK,EAAN,KAAoD,CAKzD,YAAoBC,EAA0B,CAA1B,cAAAA,EAJpB,KAAQ,WAAa,GACrB,KAAQ,YAAc,GAIpB,KAAK,eAAiB,IAAM,KAAK,SAAS,CAC5C,CAEO,SAAgB,CACrB,KAAK,yBAAyB,CAChC,CAEO,YAAmB,CACxB,KAAK,4BAA4B,CACnC,CAEQ,UAAiB,CACvB,KAAK,UAAY,EACnB,CAEQ,qBAA4B,CAC9B,KAAK,WACP,KAAK,mBAAmB,EACxB,KAAK,SAAS,cAAcC,EAAiB,OAAO,SAAS,IAE7D,KAAK,sBAAsB,EAC3B,KAAK,SAAS,cAAcA,EAAiB,OAAO,WAAW,EAEnE,CAEQ,uBAA8B,CACpC,KAAK,SAAS,gBAAgBA,EAAiB,QAAQ,SAAS,CAClE,CAEQ,oBAA2B,CACjC,KAAK,SAAS,aAAaA,EAAiB,QAAQ,SAAS,CAC/D,CAEQ,sBAA6B,CAC/B,KAAK,WACP,KAAK,SAAS,6BAA6BA,EAAiB,WAAW,MAAM,EAE7E,KAAK,SAAS,0BAA0BA,EAAiB,WAAW,MAAM,CAE9E,CAEQ,0BAAiC,CACvC,KAAK,SAAS,wBAAwB,QAAS,KAAK,cAAc,CACpE,CAEQ,6BAAoC,CAC1C,KAAK,SAAS,2BAA2B,QAAS,KAAK,cAAc,CACvE,CAEA,IAAW,WAAqB,CAC9B,MAAO,CAAC,CAAC,KAAK,UAChB,CACA,IAAW,UAAUC,EAAc,CAC7B,KAAK,YAAc,CAAC,CAACA,IAIzB,KAAK,WAAa,CAAC,CAACA,EACpB,KAAK,oBAAoB,EAC3B,CAEA,IAAW,YAAsB,CAC/B,MAAO,CAAC,CAAC,KAAK,WAChB,CACA,IAAW,WAAWA,EAAc,CAC9B,KAAK,cAAgB,CAAC,CAACA,IAI3B,KAAK,YAAc,CAAC,CAACA,EACrB,KAAK,qBAAqB,EAC5B,CACF,EC9EA,IAAMC,EAAW,82BACXC,EAAS,8mOA+BFC,EAAN,cAA8BC,CAA0C,CAU7E,aAAc,CACZ,MAAM,EACNC,EAAa,OAAOC,CAAa,EACjCC,EAAqB,KAAMN,EAAUC,CAAM,EAC3C,KAAK,YAAc,IAAIM,EAAiB,IAAIC,EAAc,IAAI,CAAC,CACjE,CAdA,WAAkB,oBAA+B,CAC/C,MAAO,CACLC,EAAiB,WAAW,UAC5BA,EAAiB,WAAW,WAC9B,CACF,CAWO,mBAA0B,CAC/B,KAAK,YAAY,QAAQ,CAC3B,CAEO,sBAA6B,CAClC,KAAK,YAAY,WAAW,CAC9B,CAEO,yBAAyBC,EAAcC,EAAkBC,EAAwB,CACtF,OAAQF,EAAM,CACZ,KAAKD,EAAiB,WAAW,UAC/B,KAAK,UAAYI,EAAcD,CAAQ,EACvC,MACF,KAAKH,EAAiB,WAAW,YAC/B,KAAK,WAAaI,EAAcD,CAAQ,EACxC,KACJ,CACF,CASF,EALiBE,EAAA,CADdC,EAAmB,GArCTb,EAsCI,yBAIAY,EAAA,CADdC,EAAmB,GAzCTb,EA0CI,0BA1CJA,EAANY,EAAA,CARNE,EAAc,CACb,KAAMP,EAAiB,YACvB,aAAc,CACZQ,EACAC,EACAC,CACF,CACF,CAAC,GACYjB,GCjCN,SAASkB,IAA8B,CAC5CC,EAAoBC,CAAe,CACrC",
|
|
6
|
-
"names": ["elementName", "COMPONENT_NAME_PREFIX", "classes", "selectors", "attributes", "slots", "events", "BANNER_CONSTANTS", "BannerAdapter", "BaseAdapter", "component", "getShadowElement", "BANNER_CONSTANTS", "name", "value", "event", "callback", "BannerFoundation", "_adapter", "BANNER_CONSTANTS", "val", "template", "styles", "BannerComponent", "BaseComponent", "IconRegistry", "tylIconCancel", "attachShadowTemplate", "BannerFoundation", "BannerAdapter", "BANNER_CONSTANTS", "name", "oldValue", "newValue", "coerceBoolean", "__decorateClass", "FoundationProperty", "CustomElement", "IconButtonComponent", "IconComponent", "TooltipComponent", "defineBannerComponent", "defineCustomElement", "BannerComponent"]
|
|
7
|
-
}
|