@vonage/vivid 3.0.0-next.16 → 3.0.0-next.19
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/action-group/index.js +34 -0
- package/banner/index.js +2 -1
- package/button/index.js +4 -3
- package/card/index.js +4 -3
- package/fab/index.js +4 -3
- package/focus/index.js +1 -1
- package/index.js +4 -1
- package/lib/action-group/action-group.d.ts +9 -0
- package/lib/action-group/action-group.template.d.ts +4 -0
- package/lib/action-group/index.d.ts +2 -0
- package/lib/components.d.ts +2 -0
- package/lib/enums.d.ts +1 -1
- package/lib/text-field/index.d.ts +4 -0
- package/lib/text-field/text-field.d.ts +20 -0
- package/lib/text-field/text-field.template.d.ts +5 -0
- package/note/index.js +1 -1
- package/package.json +3 -1
- package/popup/index.js +5 -4
- package/shared/button.js +188 -0
- package/shared/enums.js +1 -1
- package/shared/focus.js +3 -650
- package/shared/focus2.js +466 -3
- package/shared/index.js +16 -1
- package/text-field/index.js +367 -0
- package/tooltip/index.js +3 -2
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { F as FoundationElement, _ as __decorate, a as attr, b as __metadata, h as html, d as designSystem } from '../shared/index.js';
|
|
2
|
+
import { s as styleInject } from '../shared/style-inject.es.js';
|
|
3
|
+
import { c as classNames } from '../shared/class-names.js';
|
|
4
|
+
|
|
5
|
+
var css_248z = ".base {\n display: inline-flex;\n box-sizing: border-box;\n align-items: center;\n padding: 4px;\n background-color: var(--_appearance-color-fill);\n box-shadow: 0 0 0 1px var(--_appearance-color-outline);\n color: var(--_appearance-color-text);\n column-gap: 4px;\n vertical-align: middle;\n}\n.base {\n --_appearance-color-text: var(--vvd-color-on-canvas);\n --_appearance-color-fill: var(--vvd-color-canvas);\n --_appearance-color-outline: var(--vvd-color-neutral-50);\n}\n.base.appearance-ghost {\n --_appearance-color-text: var(--connotation);\n --_appearance-color-fill: transaprent;\n --_appearance-color-outline: transaprent;\n}\n\n/* Shape */\n.base:not(.shape-pill) {\n border-radius: 6px;\n}\n\n.base.shape-pill {\n border-radius: 24px;\n}\n\n::slotted([role=separator]) {\n width: 1px;\n align-self: stretch;\n background-color: var(--vvd-color-neutral-30);\n margin-block: 4px;\n}";
|
|
6
|
+
styleInject(css_248z);
|
|
7
|
+
|
|
8
|
+
class ActionGroup extends FoundationElement {}
|
|
9
|
+
|
|
10
|
+
__decorate([attr, __metadata("design:type", String)], ActionGroup.prototype, "shape", void 0);
|
|
11
|
+
|
|
12
|
+
__decorate([attr, __metadata("design:type", String)], ActionGroup.prototype, "appearance", void 0);
|
|
13
|
+
|
|
14
|
+
let _ = t => t,
|
|
15
|
+
_t;
|
|
16
|
+
|
|
17
|
+
const getClasses = ({
|
|
18
|
+
appearance,
|
|
19
|
+
shape
|
|
20
|
+
}) => classNames('base', [`appearance-${appearance}`, Boolean(appearance)], [`shape-${shape}`, Boolean(shape)]);
|
|
21
|
+
|
|
22
|
+
const ActionGroupTemplate = () => html(_t || (_t = _`
|
|
23
|
+
<div class="${0}">
|
|
24
|
+
<slot></slot>
|
|
25
|
+
</div>`), getClasses);
|
|
26
|
+
|
|
27
|
+
const vividActionGroup = ActionGroup.compose({
|
|
28
|
+
baseName: 'action-group',
|
|
29
|
+
template: ActionGroupTemplate,
|
|
30
|
+
styles: css_248z
|
|
31
|
+
});
|
|
32
|
+
designSystem.register(vividActionGroup());
|
|
33
|
+
|
|
34
|
+
export { vividActionGroup };
|
package/banner/index.js
CHANGED
|
@@ -13,8 +13,9 @@ import '../shared/icon.js';
|
|
|
13
13
|
import '../shared/_has.js';
|
|
14
14
|
import '../icon/index.js';
|
|
15
15
|
import '../focus/index.js';
|
|
16
|
-
import '../shared/focus2.js';
|
|
17
16
|
import '../shared/focus.js';
|
|
17
|
+
import '../shared/button.js';
|
|
18
|
+
import '../shared/focus2.js';
|
|
18
19
|
import '../shared/aria-global.js';
|
|
19
20
|
import '../shared/text-anchor.js';
|
|
20
21
|
import '../shared/anchor.js';
|
package/button/index.js
CHANGED
|
@@ -3,16 +3,17 @@ import '../focus/index.js';
|
|
|
3
3
|
import { _ as __decorate, a as attr, b as __metadata, h as html, d as designSystem } from '../shared/index.js';
|
|
4
4
|
import '../shared/web.dom-collections.iterator.js';
|
|
5
5
|
import { A as AffixIconWithTrailing, a as affixIconTemplateFactory } from '../shared/affix.js';
|
|
6
|
-
import { B as Button$1
|
|
6
|
+
import { B as Button$1 } from '../shared/button.js';
|
|
7
7
|
import { a as applyMixins } from '../shared/apply-mixins.js';
|
|
8
8
|
import { s as styleInject } from '../shared/style-inject.es.js';
|
|
9
|
+
import { f as focusTemplateFactory } from '../shared/focus2.js';
|
|
9
10
|
import { r as ref } from '../shared/aria-global.js';
|
|
10
11
|
import { c as classNames } from '../shared/class-names.js';
|
|
11
12
|
import '../shared/icon.js';
|
|
12
13
|
import '../shared/object-set-prototype-of.js';
|
|
13
14
|
import '../shared/_has.js';
|
|
14
15
|
import '../shared/when.js';
|
|
15
|
-
import '../shared/
|
|
16
|
+
import '../shared/focus.js';
|
|
16
17
|
|
|
17
18
|
class Button extends Button$1 {
|
|
18
19
|
constructor() {
|
|
@@ -39,7 +40,7 @@ __decorate([attr, __metadata("design:type", String)], Button.prototype, "label",
|
|
|
39
40
|
|
|
40
41
|
applyMixins(Button, AffixIconWithTrailing);
|
|
41
42
|
|
|
42
|
-
var css_248z = "/*\n Do not edit directly\n Generated on Wed, 27 Apr 2022 11:58:36 GMT\n*/\n:host {\n outline: 0 none;\n}\n\n.control {\n position: relative;\n display: inline-flex;\n box-sizing: border-box;\n align-items: center;\n border: 0 none;\n margin: 0;\n background-color: var(--_appearance-color-fill);\n block-size: var(--_button-block-size);\n box-shadow: inset 0 0 0 1px var(--_appearance-color-outline);\n color: var(--_appearance-color-text);\n gap: var(--_button-icon-gap);\n outline: 0 none;\n vertical-align: middle;\n /* Size */\n}\n.control.connotation-cta {\n --connotation: var(--vvd-color-cta);\n --on-connotation: var(--vvd-color-on-cta);\n --connotation-basis: var(--vvd-color-cta);\n --connotation-basis-increment: var(--vvd-color-cta-70);\n --connotation-contrast: var(--vvd-color-cta-90);\n --connotation-fierce: var(--vvd-color-cta-80);\n --connotation-firm: var(--vvd-color-cta-70);\n --connotation-soft: var(--vvd-color-cta-20);\n --connotation-pale: var(--vvd-color-cta-10);\n}\n.control.connotation-success {\n --connotation: var(--vvd-color-success);\n --on-connotation: var(--vvd-color-on-success);\n --connotation-basis: var(--vvd-color-success);\n --connotation-basis-increment: var(--vvd-color-success-70);\n --connotation-contrast: var(--vvd-color-success-90);\n --connotation-fierce: var(--vvd-color-success-80);\n --connotation-firm: var(--vvd-color-success-70);\n --connotation-soft: var(--vvd-color-success-20);\n --connotation-pale: var(--vvd-color-success-10);\n}\n.control.connotation-alert {\n --connotation: var(--vvd-color-alert);\n --on-connotation: var(--vvd-color-on-alert);\n --connotation-basis: var(--vvd-color-alert);\n --connotation-basis-increment: var(--vvd-color-alert-70);\n --connotation-contrast: var(--vvd-color-alert-90);\n --connotation-fierce: var(--vvd-color-alert-80);\n --connotation-firm: var(--vvd-color-alert-70);\n --connotation-soft: var(--vvd-color-alert-20);\n --connotation-pale: var(--vvd-color-alert-10);\n}\n.control:not(.connotation-cta, .connotation-success, .connotation-alert) {\n --connotation: var(--vvd-color-primary);\n --on-connotation: var(--vvd-color-on-primary);\n --connotation-basis: var(--vvd-color-neutral);\n --connotation-basis-increment: var(--vvd-color-neutral-90);\n --connotation-contrast: var(--vvd-color-neutral-90);\n --connotation-fierce: var(--vvd-color-neutral-80);\n --connotation-firm: var(--vvd-color-primary);\n --connotation-soft: var(--vvd-color-neutral-20);\n --connotation-pale: var(--vvd-color-neutral-10);\n}\n.control.appearance-filled {\n --_appearance-color-text: var(--on-connotation);\n --_appearance-color-fill: var(--connotation);\n --_appearance-color-outline: transaprent;\n}\n.control.appearance-outlined {\n --_appearance-color-text: var(--connotation-firm);\n --_appearance-color-fill: transaprent;\n --_appearance-color-outline: var(--connotation-firm);\n}\n.control {\n --_appearance-color-text: var(--connotation);\n --_appearance-color-fill: transaprent;\n --_appearance-color-outline: transaprent;\n}\n.control:
|
|
43
|
+
var css_248z = "/*\n Do not edit directly\n Generated on Wed, 27 Apr 2022 11:58:36 GMT\n*/\n:host {\n outline: 0 none;\n}\n\n.control {\n position: relative;\n display: inline-flex;\n box-sizing: border-box;\n align-items: center;\n border: 0 none;\n margin: 0;\n background-color: var(--_appearance-color-fill);\n block-size: var(--_button-block-size);\n box-shadow: inset 0 0 0 1px var(--_appearance-color-outline);\n color: var(--_appearance-color-text);\n gap: var(--_button-icon-gap);\n outline: 0 none;\n vertical-align: middle;\n /* Size */\n}\n.control.connotation-cta {\n --connotation: var(--vvd-color-cta);\n --on-connotation: var(--vvd-color-on-cta);\n --connotation-basis: var(--vvd-color-cta);\n --connotation-basis-increment: var(--vvd-color-cta-70);\n --connotation-contrast: var(--vvd-color-cta-90);\n --connotation-fierce: var(--vvd-color-cta-80);\n --connotation-firm: var(--vvd-color-cta-70);\n --connotation-soft: var(--vvd-color-cta-20);\n --connotation-pale: var(--vvd-color-cta-10);\n}\n.control.connotation-success {\n --connotation: var(--vvd-color-success);\n --on-connotation: var(--vvd-color-on-success);\n --connotation-basis: var(--vvd-color-success);\n --connotation-basis-increment: var(--vvd-color-success-70);\n --connotation-contrast: var(--vvd-color-success-90);\n --connotation-fierce: var(--vvd-color-success-80);\n --connotation-firm: var(--vvd-color-success-70);\n --connotation-soft: var(--vvd-color-success-20);\n --connotation-pale: var(--vvd-color-success-10);\n}\n.control.connotation-alert {\n --connotation: var(--vvd-color-alert);\n --on-connotation: var(--vvd-color-on-alert);\n --connotation-basis: var(--vvd-color-alert);\n --connotation-basis-increment: var(--vvd-color-alert-70);\n --connotation-contrast: var(--vvd-color-alert-90);\n --connotation-fierce: var(--vvd-color-alert-80);\n --connotation-firm: var(--vvd-color-alert-70);\n --connotation-soft: var(--vvd-color-alert-20);\n --connotation-pale: var(--vvd-color-alert-10);\n}\n.control:not(.connotation-cta, .connotation-success, .connotation-alert) {\n --connotation: var(--vvd-color-primary);\n --on-connotation: var(--vvd-color-on-primary);\n --connotation-basis: var(--vvd-color-neutral);\n --connotation-basis-increment: var(--vvd-color-neutral-90);\n --connotation-contrast: var(--vvd-color-neutral-90);\n --connotation-fierce: var(--vvd-color-neutral-80);\n --connotation-firm: var(--vvd-color-primary);\n --connotation-soft: var(--vvd-color-neutral-20);\n --connotation-pale: var(--vvd-color-neutral-10);\n}\n.control.appearance-filled {\n --_appearance-color-text: var(--on-connotation);\n --_appearance-color-fill: var(--connotation);\n --_appearance-color-outline: transaprent;\n}\n.control.appearance-outlined {\n --_appearance-color-text: var(--connotation-firm);\n --_appearance-color-fill: transaprent;\n --_appearance-color-outline: var(--connotation-firm);\n}\n.control {\n --_appearance-color-text: var(--connotation);\n --_appearance-color-fill: transaprent;\n --_appearance-color-outline: transaprent;\n}\n.control:where(:hover, .hover):where(:not(:disabled, .disabled)).appearance-filled {\n --_appearance-color-text: var(--on-connotation);\n --_appearance-color-fill: var(--connotation-basis-increment);\n --_appearance-color-outline: transaprent;\n}\n.control:where(:hover, .hover):where(:not(:disabled, .disabled)).appearance-outlined {\n --_appearance-color-text: var(--connotation-firm);\n --_appearance-color-fill: var(--connotation-pale);\n --_appearance-color-outline: var(--connotation-firm);\n}\n.control:where(:hover, .hover):where(:not(:disabled, .disabled)) {\n --_appearance-color-text: var(--connotation);\n --_appearance-color-fill: var(--connotation-pale);\n --_appearance-color-outline: transaprent;\n}\n.control:where(:disabled, .disabled).appearance-filled {\n --_appearance-color-text: var(--vvd-color-neutral-50);\n --_appearance-color-fill: var(--vvd-color-neutral-30);\n --_appearance-color-outline: transaprent;\n}\n.control:where(:disabled, .disabled).appearance-outlined {\n --_appearance-color-text: var(--vvd-color-neutral-50);\n --_appearance-color-fill: transaprent;\n --_appearance-color-outline: var(--vvd-color-neutral-50);\n}\n.control:where(:disabled, .disabled) {\n --_appearance-color-text: var(--vvd-color-neutral-50);\n --_appearance-color-fill: transaprent;\n --_appearance-color-outline: transaprent;\n}\n.control:where(:active, .active):where(:not(:disabled, .disabled)).appearance-filled {\n --_appearance-color-text: var(--on-connotation);\n --_appearance-color-fill: var(--connotation-fierce);\n --_appearance-color-outline: transaprent;\n}\n.control:where(:active, .active):where(:not(:disabled, .disabled)).appearance-outlined {\n --_appearance-color-text: var(--connotation-firm);\n --_appearance-color-fill: var(--connotation-soft);\n --_appearance-color-outline: var(--connotation-firm);\n}\n.control:where(:active, .active):where(:not(:disabled, .disabled)) {\n --_appearance-color-text: var(--connotation);\n --_appearance-color-fill: var(--connotation-soft);\n --_appearance-color-outline: transaprent;\n}\n.control:not(:disabled) {\n cursor: pointer;\n}\n.control:disabled {\n cursor: not-allowed;\n}\n.control.icon-only {\n contain: size;\n padding-inline: 0;\n place-content: center;\n}\n@supports (aspect-ratio: 1) {\n .control.icon-only {\n aspect-ratio: 1;\n }\n}\n@supports not (aspect-ratio: 1) {\n .control.icon-only {\n inline-size: var(--_button-block-size);\n }\n}\n.control:not(.stacked).density-condensed {\n --_button-block-size: 32px;\n font: 600 ultra-condensed 12px / 16px SpeziaWebVariable;\n letter-spacing: 0px;\n text-decoration: none;\n text-transform: none;\n}\n.control:not(.stacked).density-condensed:not(.icon-only) {\n --_button-icon-gap: 8px;\n padding-inline: 12px;\n}\n.control:not(.stacked).density-condensed .icon {\n font-size: 16px;\n}\n.control:not(.stacked).density-extended {\n --_button-block-size: 48px;\n font: 600 ultra-condensed 16px / 24px SpeziaWebVariable;\n letter-spacing: 0px;\n text-decoration: none;\n text-transform: none;\n}\n.control:not(.stacked).density-extended:not(.icon-only) {\n --_button-icon-gap: 10px;\n padding-inline: 20px;\n}\n.control:not(.stacked).density-extended .icon {\n font-size: 24px;\n}\n.control:not(.stacked):not(.density-condensed, .density-extended) {\n --_button-block-size: 40px;\n font: 600 ultra-condensed 14px / 100% SpeziaWebVariable;\n letter-spacing: 0px;\n text-decoration: none;\n text-transform: none;\n}\n.control:not(.stacked):not(.density-condensed, .density-extended):not(.icon-only) {\n --_button-icon-gap: 8px;\n padding-inline: 16px;\n}\n.control:not(.stacked):not(.density-condensed, .density-extended) .icon {\n font-size: 20px;\n}\n.control.stacked {\n flex-direction: column;\n justify-content: center;\n --_button-block-size: 68px;\n font: 600 ultra-condensed 14px / 20px SpeziaWebVariable;\n letter-spacing: 0px;\n text-decoration: none;\n text-transform: none;\n}\n.control.stacked:not(.icon-only) {\n --_button-icon-gap: 10px;\n padding-inline: 16px;\n}\n.control.stacked .icon {\n font-size: 20px;\n}\n\n/* Shape */\n.control:not(.shape-pill:not(.stacked)) {\n border-radius: 6px;\n}\n\n.control.shape-pill:not(.stacked):not(.icon-only) {\n border-radius: 24px;\n}\n.control.shape-pill:not(.stacked).icon-only {\n border-radius: 50%;\n}\n\n/* Icon */\n.icon-trailing .icon {\n order: 1;\n}\n\n:not(:focus) > .focus-indicator {\n display: none;\n}\n.appearance-outlined .focus-indicator, .appearance-ghost .focus-indicator {\n --focus-stroke-gap-color: transparent;\n}";
|
|
43
44
|
styleInject(css_248z);
|
|
44
45
|
|
|
45
46
|
let _ = t => t,
|
package/card/index.js
CHANGED
|
@@ -10,14 +10,15 @@ import '../shared/icon.js';
|
|
|
10
10
|
import '../shared/object-set-prototype-of.js';
|
|
11
11
|
import '../shared/_has.js';
|
|
12
12
|
import '../focus/index.js';
|
|
13
|
-
import '../shared/
|
|
13
|
+
import '../shared/focus.js';
|
|
14
14
|
import '../shared/web.dom-collections.iterator.js';
|
|
15
15
|
import '../shared/affix.js';
|
|
16
|
-
import '../shared/
|
|
16
|
+
import '../shared/button.js';
|
|
17
17
|
import '../shared/apply-mixins.js';
|
|
18
|
+
import '../shared/focus2.js';
|
|
18
19
|
import '../shared/aria-global.js';
|
|
19
20
|
|
|
20
|
-
var css_248z = "/*\n Do not edit directly\n Generated on Wed, 27 Apr 2022 11:58:36 GMT\n*/\n.control {\n block-size: 100%;\n border-radius: 6px;\n}\n\n.wrapper {\n display: flex;\n overflow: hidden;\n flex-flow: column;\n block-size: inherit;\n border-radius: inherit;\n color: var(--vvd-color-on-canvas);\n}\n\n.content {\n display: flex;\n flex-flow: column;\n padding: 1.5rem;\n}\n.content-container {\n display: flex;\n gap: 0.5rem;\n}\n\n.header {\n display: flex;\n flex: 1;\n align-items: flex-start;\n gap: 0.5rem;\n}\n.header-content {\n flex: 1;\n}\n.header-title, .header-subheading {\n /* stylelint-disable value-no-vendor-prefix */\n display: -webkit-box;\n /* stylelint-enable value-no-vendor-prefix */\n overflow: hidden;\n -webkit-box-orient: vertical;\n}\n.header-title {\n font: 500 condensed 20px / 28px SpeziaWebVariable;\n letter-spacing: 0px;\n text-decoration: none;\n text-transform: none;\n -webkit-line-clamp: var(--heading-line-clamp);\n}\n.header-subheading {\n font: 400 ultra-condensed 14px / 20px SpeziaWebVariable;\n letter-spacing: 0px;\n text-decoration: none;\n text-transform: none;\n -webkit-line-clamp: var(--subheading-line-clamp);\n}\n.hide-header .header {\n display: none;\n}\n\n.header-subheading,\n.text {\n font: 400 ultra-condensed 14px / 20px SpeziaWebVariable;\n letter-spacing: 0px;\n text-decoration: none;\n text-transform: none;\n color: var(--vvd-color-neutral-70);\n}\n\n.text {\n padding-right: 8px;\n margin-top: 12px;\n}\n\n.footer {\n display: inline-flex;\n flex-direction: column;\n align-items: flex-end;\n padding-bottom: 1.5rem;\n margin-top: auto;\n padding-inline: 1.5rem;\n}\n.hide-footer .footer {\n display: none;\n}\n\n::slotted([slot=graphic i]),\n.icon {\n flex-shrink: 0;\n align-self: baseline;\n margin-block-start: 4px;\n}\n\n.icon {\n font-size: 20px;\n}\n\n::slotted([slot=meta i]) {\n flex-shrink: 0;\n align-self: flex-start;\n margin-block-start: -0.5rem;\n margin-inline-end: -0.5rem;\n margin-inline-start: auto;\n}\n\nvwc-elevation {\n block-size: inherit;\n}\nvwc-elevation::part(base) {\n block-size: inherit;\n}";
|
|
21
|
+
var css_248z = "/*\n Do not edit directly\n Generated on Wed, 27 Apr 2022 11:58:36 GMT\n*/\n:host {\n display: block;\n}\n@supports ((block-size: -moz-fit-content) or (block-size: fit-content)) and ((inline-size: -moz-fit-content) or (inline-size: fit-content)) {\n :host {\n block-size: -moz-fit-content;\n block-size: fit-content;\n inline-size: -moz-fit-content;\n inline-size: fit-content;\n }\n}\n\n.control {\n block-size: 100%;\n border-radius: 6px;\n}\n\n.wrapper {\n display: flex;\n overflow: hidden;\n flex-flow: column;\n block-size: inherit;\n border-radius: inherit;\n color: var(--vvd-color-on-canvas);\n}\n\n.content {\n display: flex;\n flex-flow: column;\n padding: 1.5rem;\n}\n.content-container {\n display: flex;\n gap: 0.5rem;\n}\n\n.header {\n display: flex;\n flex: 1;\n align-items: flex-start;\n gap: 0.5rem;\n}\n.header-content {\n flex: 1;\n}\n.header-title, .header-subheading {\n /* stylelint-disable value-no-vendor-prefix */\n display: -webkit-box;\n /* stylelint-enable value-no-vendor-prefix */\n overflow: hidden;\n -webkit-box-orient: vertical;\n}\n.header-title {\n font: 500 condensed 20px / 28px SpeziaWebVariable;\n letter-spacing: 0px;\n text-decoration: none;\n text-transform: none;\n -webkit-line-clamp: var(--heading-line-clamp);\n}\n.header-subheading {\n font: 400 ultra-condensed 14px / 20px SpeziaWebVariable;\n letter-spacing: 0px;\n text-decoration: none;\n text-transform: none;\n -webkit-line-clamp: var(--subheading-line-clamp);\n}\n.hide-header .header {\n display: none;\n}\n\n.header-subheading,\n.text {\n font: 400 ultra-condensed 14px / 20px SpeziaWebVariable;\n letter-spacing: 0px;\n text-decoration: none;\n text-transform: none;\n color: var(--vvd-color-neutral-70);\n}\n\n.text {\n padding-right: 8px;\n margin-top: 12px;\n}\n\n.footer {\n display: inline-flex;\n flex-direction: column;\n align-items: flex-end;\n padding-bottom: 1.5rem;\n margin-top: auto;\n padding-inline: 1.5rem;\n}\n.hide-footer .footer {\n display: none;\n}\n\n::slotted([slot=graphic i]),\n.icon {\n flex-shrink: 0;\n align-self: baseline;\n margin-block-start: 4px;\n}\n\n.icon {\n font-size: 20px;\n}\n\n::slotted([slot=meta i]) {\n flex-shrink: 0;\n align-self: flex-start;\n margin-block-start: -0.5rem;\n margin-inline-end: -0.5rem;\n margin-inline-start: auto;\n}\n\nvwc-elevation {\n block-size: inherit;\n}\nvwc-elevation::part(base) {\n block-size: inherit;\n}";
|
|
21
22
|
styleInject(css_248z);
|
|
22
23
|
|
|
23
24
|
class Card extends FoundationElement {}
|
package/fab/index.js
CHANGED
|
@@ -3,18 +3,19 @@ import '../focus/index.js';
|
|
|
3
3
|
import { _ as __decorate, a as attr, b as __metadata, h as html, d as designSystem } from '../shared/index.js';
|
|
4
4
|
import { s as styleInject } from '../shared/style-inject.es.js';
|
|
5
5
|
import { A as AffixIconWithTrailing, a as affixIconTemplateFactory } from '../shared/affix.js';
|
|
6
|
-
import { B as Button
|
|
6
|
+
import { B as Button } from '../shared/button.js';
|
|
7
7
|
import { a as applyMixins } from '../shared/apply-mixins.js';
|
|
8
|
+
import { f as focusTemplateFactory } from '../shared/focus2.js';
|
|
8
9
|
import { r as ref } from '../shared/aria-global.js';
|
|
9
10
|
import { c as classNames } from '../shared/class-names.js';
|
|
10
11
|
import '../shared/icon.js';
|
|
11
12
|
import '../shared/object-set-prototype-of.js';
|
|
12
13
|
import '../shared/_has.js';
|
|
13
14
|
import '../shared/when.js';
|
|
14
|
-
import '../shared/
|
|
15
|
+
import '../shared/focus.js';
|
|
15
16
|
import '../shared/web.dom-collections.iterator.js';
|
|
16
17
|
|
|
17
|
-
var css_248z = "/*\n Do not edit directly\n Generated on Wed, 27 Apr 2022 11:58:36 GMT\n*/\n.control {\n font: 600 ultra-condensed 16px / 24px SpeziaWebVariable;\n letter-spacing: 0px;\n text-decoration: none;\n text-transform: none;\n --_fab-block-size: 48px;\n position: relative;\n display: inline-flex;\n box-sizing: border-box;\n align-items: center;\n border: 0 none;\n background-color: var(--_appearance-color-fill);\n block-size: var(--_fab-block-size);\n border-radius: 24px;\n color: var(--_appearance-color-text);\n column-gap: var(--fab-icon-gap);\n filter: var(--_elevation-shadow);\n outline: 0 none;\n vertical-align: middle;\n}\n.control.connotation-cta {\n --connotation: var(--vvd-color-cta);\n --on-connotation: var(--vvd-color-on-cta);\n --connotation-basis: var(--vvd-color-cta);\n --connotation-basis-increment: var(--vvd-color-cta-70);\n --connotation-contrast: var(--vvd-color-cta-90);\n --connotation-fierce: var(--vvd-color-cta-80);\n --connotation-firm: var(--vvd-color-cta-70);\n}\n.control.connotation-primary {\n --connotation: var(--vvd-color-primary);\n --on-connotation: var(--vvd-color-on-primary);\n --connotation-basis: var(--vvd-color-neutral);\n --connotation-basis-increment: var(--vvd-color-neutral-90);\n --connotation-contrast: var(--vvd-color-neutral-90);\n --connotation-fierce: var(--vvd-color-neutral-80);\n --connotation-firm: var(--vvd-color-primary);\n}\n.control:not(.connotation-cta, .connotation-primary) {\n --connotation: var(--vvd-color-canvas);\n --on-connotation: var(--vvd-color-on-canvas);\n --connotation-basis: var(--vvd-color-canvas);\n --connotation-basis-increment: var(--vvd-color-neutral-20);\n --connotation-contrast: var(--vvd-color-on-canvas);\n --connotation-fierce: var(--vvd-color-neutral-30);\n --connotation-firm: var(--vvd-color-primary);\n}\n.control {\n --_appearance-color-text: var(--on-connotation);\n --_appearance-color-fill: var(--connotation);\n --_appearance-color-outline: transaprent;\n}\n.control:
|
|
18
|
+
var css_248z = "/*\n Do not edit directly\n Generated on Wed, 27 Apr 2022 11:58:36 GMT\n*/\n.control {\n font: 600 ultra-condensed 16px / 24px SpeziaWebVariable;\n letter-spacing: 0px;\n text-decoration: none;\n text-transform: none;\n --_fab-block-size: 48px;\n position: relative;\n display: inline-flex;\n box-sizing: border-box;\n align-items: center;\n border: 0 none;\n background-color: var(--_appearance-color-fill);\n block-size: var(--_fab-block-size);\n border-radius: 24px;\n color: var(--_appearance-color-text);\n column-gap: var(--fab-icon-gap);\n filter: var(--_elevation-shadow);\n outline: 0 none;\n vertical-align: middle;\n}\n.control.connotation-cta {\n --connotation: var(--vvd-color-cta);\n --on-connotation: var(--vvd-color-on-cta);\n --connotation-basis: var(--vvd-color-cta);\n --connotation-basis-increment: var(--vvd-color-cta-70);\n --connotation-contrast: var(--vvd-color-cta-90);\n --connotation-fierce: var(--vvd-color-cta-80);\n --connotation-firm: var(--vvd-color-cta-70);\n}\n.control.connotation-primary {\n --connotation: var(--vvd-color-primary);\n --on-connotation: var(--vvd-color-on-primary);\n --connotation-basis: var(--vvd-color-neutral);\n --connotation-basis-increment: var(--vvd-color-neutral-90);\n --connotation-contrast: var(--vvd-color-neutral-90);\n --connotation-fierce: var(--vvd-color-neutral-80);\n --connotation-firm: var(--vvd-color-primary);\n}\n.control:not(.connotation-cta, .connotation-primary) {\n --connotation: var(--vvd-color-canvas);\n --on-connotation: var(--vvd-color-on-canvas);\n --connotation-basis: var(--vvd-color-canvas);\n --connotation-basis-increment: var(--vvd-color-neutral-20);\n --connotation-contrast: var(--vvd-color-on-canvas);\n --connotation-fierce: var(--vvd-color-neutral-30);\n --connotation-firm: var(--vvd-color-primary);\n}\n.control {\n --_appearance-color-text: var(--on-connotation);\n --_appearance-color-fill: var(--connotation);\n --_appearance-color-outline: transaprent;\n}\n.control:where(:hover, .hover):where(:not(:disabled, .disabled)) {\n --_appearance-color-text: var(--on-connotation);\n --_appearance-color-fill: var(--connotation-basis-increment);\n --_appearance-color-outline: transaprent;\n}\n.control:where(:disabled, .disabled) {\n --_appearance-color-text: var(--vvd-color-neutral-50);\n --_appearance-color-fill: var(--vvd-color-neutral-30);\n --_appearance-color-outline: transaprent;\n}\n.control:where(:active, .active):where(:not(:disabled, .disabled)) {\n --_appearance-color-text: var(--on-connotation);\n --_appearance-color-fill: var(--connotation-fierce);\n --_appearance-color-outline: transaprent;\n}\n.control.icon-only {\n border-radius: 50%;\n padding-inline: 0;\n place-content: center;\n}\n@supports (aspect-ratio: 1) {\n .control.icon-only {\n aspect-ratio: 1;\n }\n}\n@supports not (aspect-ratio: 1) {\n .control.icon-only {\n inline-size: var(--_fab-block-size);\n }\n}\n.control:not(.icon-only) {\n --fab-icon-gap: 10px;\n padding-inline: 20px;\n}\n.control:disabled {\n --_elevation-fill: var(--vvd-color-surface-0dp);\n --_elevation-shadow: var(--vvd-shadow-surface-0dp);\n cursor: not-allowed;\n}\n.control:not(:disabled) {\n --_elevation-fill: var(--vvd-color-surface-4dp);\n --_elevation-shadow: var(--vvd-shadow-surface-4dp);\n cursor: pointer;\n}\n.control:not(:disabled):active {\n --_elevation-fill: var(--vvd-color-surface-8dp);\n --_elevation-shadow: var(--vvd-shadow-surface-8dp);\n}\n\n/* Icon */\n.icon {\n font-size: 24px;\n}\n.icon-trailing .icon {\n order: 1;\n}\n\n:not(:focus) .focus-indicator {\n display: none;\n}";
|
|
18
19
|
styleInject(css_248z);
|
|
19
20
|
|
|
20
21
|
class Fab extends Button {}
|
package/focus/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { h as html, d as designSystem } from '../shared/index.js';
|
|
2
|
-
import { F as Focus } from '../shared/
|
|
2
|
+
import { F as Focus } from '../shared/focus.js';
|
|
3
3
|
import { s as styleInject } from '../shared/style-inject.es.js';
|
|
4
4
|
|
|
5
5
|
var css_248z = ":host {\n display: contents;\n border-radius: inherit;\n}\n\n.control {\n position: absolute;\n box-sizing: border-box;\n border-radius: inherit;\n box-shadow: inset 0 0 0 2px var(--focus-stroke-color, var(--vvd-color-on-canvas)), inset 0 0 0 3px var(--focus-stroke-gap-color, currentColor);\n inset: 0;\n}";
|
package/index.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
export { vividAccordion } from './accordion/index.js';
|
|
2
2
|
export { vividAccordionItem } from './accordion-item/index.js';
|
|
3
|
+
export { vividActionGroup } from './action-group/index.js';
|
|
3
4
|
export { vividBadge } from './badge/index.js';
|
|
4
5
|
export { vividBanner } from './banner/index.js';
|
|
5
6
|
export { vividBreadcrumb } from './breadcrumb/index.js';
|
|
@@ -18,6 +19,7 @@ export { vividProgressRing } from './progress-ring/index.js';
|
|
|
18
19
|
export { vividSideDrawer } from './side-drawer/index.js';
|
|
19
20
|
export { vividSidenavItem } from './sidenav-item/index.js';
|
|
20
21
|
export { vividText } from './text/index.js';
|
|
22
|
+
export { vividTextfield } from './text-field/index.js';
|
|
21
23
|
export { vividTooltip } from './tooltip/index.js';
|
|
22
24
|
export { d as designSystem, p as provideVividDesignSystem } from './shared/index.js';
|
|
23
25
|
import './shared/style-inject.es.js';
|
|
@@ -36,8 +38,9 @@ import './shared/anchor.js';
|
|
|
36
38
|
import './shared/aria-global.js';
|
|
37
39
|
import './shared/text-anchor.template.js';
|
|
38
40
|
import './focus/index.js';
|
|
39
|
-
import './shared/focus2.js';
|
|
40
41
|
import './shared/focus.js';
|
|
42
|
+
import './shared/button.js';
|
|
43
|
+
import './shared/focus2.js';
|
|
41
44
|
import './shared/breadcrumb-item.js';
|
|
42
45
|
import './shared/slotted.js';
|
|
43
46
|
import './shared/es.object.assign.js';
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { FoundationElement } from '@microsoft/fast-foundation';
|
|
2
|
+
import type { Appearance, Shape } from '../enums.js';
|
|
3
|
+
export declare type ActionGroupAppearance = Extract<Appearance, Appearance.Filled | Appearance.Outlined | Appearance.Ghost>;
|
|
4
|
+
declare type ActionGroupShape = Extract<Shape, Shape.Rounded | Shape.Pill>;
|
|
5
|
+
export declare class ActionGroup extends FoundationElement {
|
|
6
|
+
shape?: ActionGroupShape;
|
|
7
|
+
appearance?: ActionGroupAppearance;
|
|
8
|
+
}
|
|
9
|
+
export {};
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { ViewTemplate } from '@microsoft/fast-element';
|
|
2
|
+
import type { ElementDefinitionContext, FoundationElementDefinition } from '@microsoft/fast-foundation';
|
|
3
|
+
import type { ActionGroup } from './action-group';
|
|
4
|
+
export declare const ActionGroupTemplate: (context: ElementDefinitionContext, definition: FoundationElementDefinition) => ViewTemplate<ActionGroup>;
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import type { FoundationElementDefinition } from '@microsoft/fast-foundation';
|
|
2
|
+
export declare const vividActionGroup: (overrideDefinition?: import("@microsoft/fast-foundation").OverrideFoundationElementDefinition<FoundationElementDefinition> | undefined) => import("@microsoft/fast-foundation").FoundationElementRegistry<FoundationElementDefinition, import("@microsoft/fast-element").Constructable<import("@microsoft/fast-foundation").FoundationElement>>;
|
package/lib/components.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
export * from './accordion';
|
|
2
2
|
export * from './accordion-item';
|
|
3
|
+
export * from './action-group';
|
|
3
4
|
export * from './badge';
|
|
4
5
|
export * from './banner';
|
|
5
6
|
export * from './breadcrumb';
|
|
@@ -18,4 +19,5 @@ export * from './progress-ring';
|
|
|
18
19
|
export * from './side-drawer';
|
|
19
20
|
export * from './sidenav-item';
|
|
20
21
|
export * from './text';
|
|
22
|
+
export * from './text-field';
|
|
21
23
|
export * from './tooltip';
|
package/lib/enums.d.ts
CHANGED
|
@@ -18,10 +18,10 @@ export declare enum Shape {
|
|
|
18
18
|
Sharp = "sharp"
|
|
19
19
|
}
|
|
20
20
|
export declare enum Appearance {
|
|
21
|
-
Text = "text",
|
|
22
21
|
Filled = "filled",
|
|
23
22
|
Outlined = "outlined",
|
|
24
23
|
Duotone = "duotone",
|
|
24
|
+
Fieldset = "fieldset",
|
|
25
25
|
Subtle = "subtle",
|
|
26
26
|
Ghost = "ghost"
|
|
27
27
|
}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import '../icon';
|
|
2
|
+
import '../focus';
|
|
3
|
+
import type { FoundationElementDefinition } from '@microsoft/fast-foundation';
|
|
4
|
+
export declare const vividTextfield: (overrideDefinition?: import("@microsoft/fast-foundation").OverrideFoundationElementDefinition<FoundationElementDefinition> | undefined) => import("@microsoft/fast-foundation").FoundationElementRegistry<FoundationElementDefinition, import("@microsoft/fast-element").Constructable<import("@microsoft/fast-foundation").FoundationElement>>;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { TextField as FoundationTextfield } from '@microsoft/fast-foundation';
|
|
2
|
+
import type { Appearance, Density, Shape } from '../enums';
|
|
3
|
+
import { AffixIcon } from '../../shared/patterns';
|
|
4
|
+
declare type TextFieldDensity = Extract<Density, Density.Normal | Density.Extended>;
|
|
5
|
+
declare type TextFieldAppearance = Extract<Appearance, Appearance.Outlined | Appearance.Ghost>;
|
|
6
|
+
declare type TextFieldShape = Extract<Shape, Shape.Rounded | Shape.Pill>;
|
|
7
|
+
export declare class TextField extends FoundationTextfield {
|
|
8
|
+
label?: string;
|
|
9
|
+
helperText?: string;
|
|
10
|
+
charCount: boolean;
|
|
11
|
+
density?: TextFieldDensity;
|
|
12
|
+
appearance?: TextFieldAppearance;
|
|
13
|
+
shape?: TextFieldShape;
|
|
14
|
+
userValid: boolean;
|
|
15
|
+
get errorValidationMessage(): string;
|
|
16
|
+
validate(): void;
|
|
17
|
+
}
|
|
18
|
+
export interface TextField extends AffixIcon {
|
|
19
|
+
}
|
|
20
|
+
export {};
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { ViewTemplate } from '@microsoft/fast-element';
|
|
2
|
+
import type { ElementDefinitionContext, FoundationElementDefinition } from '@microsoft/fast-foundation';
|
|
3
|
+
import '../icon/index';
|
|
4
|
+
import type { TextField } from './text-field';
|
|
5
|
+
export declare const TextfieldTemplate: (context: ElementDefinitionContext, definition: FoundationElementDefinition) => ViewTemplate<TextField>;
|
package/note/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { F as FoundationElement, _ as __decorate, a as attr, b as __metadata, h as html, d as designSystem } from '../shared/index.js';
|
|
2
2
|
import { s as styleInject } from '../shared/style-inject.es.js';
|
|
3
3
|
import { b as AffixIcon } from '../shared/affix.js';
|
|
4
|
-
import '../shared/
|
|
4
|
+
import '../shared/focus.js';
|
|
5
5
|
import { a as applyMixins } from '../shared/apply-mixins.js';
|
|
6
6
|
import '../shared/web.dom-collections.iterator.js';
|
|
7
7
|
import '../icon/index.js';
|
package/package.json
CHANGED
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vonage/vivid",
|
|
3
|
-
"version": "3.0.0-next.
|
|
3
|
+
"version": "3.0.0-next.19",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"module": "./index.esm.js",
|
|
6
6
|
"main": "./index.js",
|
|
7
7
|
"exports": {
|
|
8
8
|
"./accordion": "./accordion",
|
|
9
9
|
"./accordion-item": "./accordion-item",
|
|
10
|
+
"./action-group": "./action-group",
|
|
10
11
|
"./badge": "./badge",
|
|
11
12
|
"./banner": "./banner",
|
|
12
13
|
"./breadcrumb": "./breadcrumb",
|
|
@@ -25,6 +26,7 @@
|
|
|
25
26
|
"./side-drawer": "./side-drawer",
|
|
26
27
|
"./sidenav-item": "./sidenav-item",
|
|
27
28
|
"./text": "./text",
|
|
29
|
+
"./text-field": "./text-field",
|
|
28
30
|
"./tooltip": "./tooltip"
|
|
29
31
|
},
|
|
30
32
|
"typings": "./index.d.ts",
|
package/popup/index.js
CHANGED
|
@@ -12,10 +12,11 @@ import { c as classNames } from '../shared/class-names.js';
|
|
|
12
12
|
import '../icon/index.js';
|
|
13
13
|
import '../shared/_has.js';
|
|
14
14
|
import '../focus/index.js';
|
|
15
|
-
import '../shared/focus2.js';
|
|
16
|
-
import '../shared/affix.js';
|
|
17
15
|
import '../shared/focus.js';
|
|
16
|
+
import '../shared/affix.js';
|
|
17
|
+
import '../shared/button.js';
|
|
18
18
|
import '../shared/apply-mixins.js';
|
|
19
|
+
import '../shared/focus2.js';
|
|
19
20
|
|
|
20
21
|
var anObject$2 = anObject$3;
|
|
21
22
|
|
|
@@ -2068,7 +2069,7 @@ __decorate([attr({
|
|
|
2068
2069
|
|
|
2069
2070
|
__decorate([attr, __metadata("design:type", String)], Popup.prototype, "anchor", void 0);
|
|
2070
2071
|
|
|
2071
|
-
var css_248z = ".control {\n background-color: var(--vvd-color-surface-4dp);\n border-radius: inherit;\n contain: layout;\n inline-size: -moz-fit-content;\n inline-size: fit-content;\n}\n.control:not(.open) {\n display: none;\n}\n\n.popup-wrapper {\n position: fixed;\n border-radius: 6px;\n}\n\n.popup-content {\n display: grid;\n color: var(--vvd-color-on-canvas);\n}\n.dismissible .popup-content {\n align-content: start;\n grid-template-columns: 1fr auto;\n}\n\n.arrow {\n position: absolute;\n z-index: -1;\n width: 8px;\n height: 8px;\n background-color: var(--vvd-color-surface-4dp);\n transform: rotate(45deg);\n}\n\n.dismissible {\n align-self: flex-start;\n margin-block-start: 0.25rem;\n margin-inline-end: 0.25rem;\n}";
|
|
2072
|
+
var css_248z = ".control {\n background-color: var(--vvd-color-surface-4dp);\n border-radius: inherit;\n contain: layout;\n inline-size: -moz-fit-content;\n inline-size: fit-content;\n}\n.control:not(.open) {\n display: none;\n}\n\n.popup-wrapper {\n position: fixed;\n border-radius: 6px;\n}\n\n.popup-content {\n display: grid;\n color: var(--vvd-color-on-canvas);\n}\n.dismissible .popup-content {\n align-content: start;\n grid-template-columns: 1fr auto;\n}\n\n.arrow {\n position: absolute;\n z-index: -1;\n width: 8px;\n height: 8px;\n background-color: var(--vvd-color-surface-4dp);\n transform: rotate(45deg);\n}\n\n.dismissible-button {\n align-self: flex-start;\n margin-block-start: 0.25rem;\n margin-inline-end: 0.25rem;\n}";
|
|
2072
2073
|
styleInject(css_248z);
|
|
2073
2074
|
|
|
2074
2075
|
let _ = t => t,
|
|
@@ -2096,7 +2097,7 @@ const popupTemplate = () => html(_t || (_t = _`
|
|
|
2096
2097
|
</div>
|
|
2097
2098
|
</div>
|
|
2098
2099
|
</vwc-elevation>`), ref('popupEl'), getClasses, x => x.open ? 'false' : 'true', x => x.alternate ? 'vvd-theme-alternate' : '', when(x => x.dismissible, html(_t2 || (_t2 = _`<vwc-button density="condensed" @click="${0}"
|
|
2099
|
-
class="dismissible" icon="close-small-solid" shape="pill"></vwc-button>`), x => x.open = false)), when(x => x.arrow, html(_t3 || (_t3 = _`<div class="arrow" ${0}></div>`), ref('arrowEl'))));
|
|
2100
|
+
class="dismissible-button" icon="close-small-solid" shape="pill"></vwc-button>`), x => x.open = false)), when(x => x.arrow, html(_t3 || (_t3 = _`<div class="arrow" ${0}></div>`), ref('arrowEl'))));
|
|
2100
2101
|
|
|
2101
2102
|
const vividPopup = Popup.compose({
|
|
2102
2103
|
baseName: 'popup',
|
package/shared/button.js
ADDED
|
@@ -0,0 +1,188 @@
|
|
|
1
|
+
import { F as FoundationElement, _ as __decorate, a as attr, o as observable } from './index.js';
|
|
2
|
+
import { a as applyMixins } from './apply-mixins.js';
|
|
3
|
+
import { F as FormAssociated } from './focus2.js';
|
|
4
|
+
import { A as ARIAGlobalStatesAndProperties, S as StartEnd } from './aria-global.js';
|
|
5
|
+
|
|
6
|
+
class _Button extends FoundationElement {
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* A form-associated base class for the {@link @microsoft/fast-foundation#(Button:class)} component.
|
|
10
|
+
*
|
|
11
|
+
* @internal
|
|
12
|
+
*/
|
|
13
|
+
class FormAssociatedButton extends FormAssociated(_Button) {
|
|
14
|
+
constructor() {
|
|
15
|
+
super(...arguments);
|
|
16
|
+
this.proxy = document.createElement("input");
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
/**
|
|
21
|
+
* A Button Custom HTML Element.
|
|
22
|
+
* Based largely on the {@link https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button | <button> element }.
|
|
23
|
+
*
|
|
24
|
+
* @public
|
|
25
|
+
*/
|
|
26
|
+
class Button extends FormAssociatedButton {
|
|
27
|
+
constructor() {
|
|
28
|
+
super(...arguments);
|
|
29
|
+
/**
|
|
30
|
+
* Prevent events to propagate if disabled and has no slotted content wrapped in HTML elements
|
|
31
|
+
* @internal
|
|
32
|
+
*/
|
|
33
|
+
this.handleClick = (e) => {
|
|
34
|
+
var _a;
|
|
35
|
+
if (this.disabled && ((_a = this.defaultSlottedContent) === null || _a === void 0 ? void 0 : _a.length) <= 1) {
|
|
36
|
+
e.stopPropagation();
|
|
37
|
+
}
|
|
38
|
+
};
|
|
39
|
+
/**
|
|
40
|
+
* Submits the parent form
|
|
41
|
+
*/
|
|
42
|
+
this.handleSubmission = () => {
|
|
43
|
+
if (!this.form) {
|
|
44
|
+
return;
|
|
45
|
+
}
|
|
46
|
+
const attached = this.proxy.isConnected;
|
|
47
|
+
if (!attached) {
|
|
48
|
+
this.attachProxy();
|
|
49
|
+
}
|
|
50
|
+
// Browser support for requestSubmit is not comprehensive
|
|
51
|
+
// so click the proxy if it isn't supported
|
|
52
|
+
typeof this.form.requestSubmit === "function"
|
|
53
|
+
? this.form.requestSubmit(this.proxy)
|
|
54
|
+
: this.proxy.click();
|
|
55
|
+
if (!attached) {
|
|
56
|
+
this.detachProxy();
|
|
57
|
+
}
|
|
58
|
+
};
|
|
59
|
+
/**
|
|
60
|
+
* Resets the parent form
|
|
61
|
+
*/
|
|
62
|
+
this.handleFormReset = () => {
|
|
63
|
+
var _a;
|
|
64
|
+
(_a = this.form) === null || _a === void 0 ? void 0 : _a.reset();
|
|
65
|
+
};
|
|
66
|
+
/**
|
|
67
|
+
* Overrides the focus call for where delegatesFocus is unsupported.
|
|
68
|
+
* This check works for Chrome, Edge Chromium, FireFox, and Safari
|
|
69
|
+
* Relevant PR on the Firefox browser: https://phabricator.services.mozilla.com/D123858
|
|
70
|
+
*/
|
|
71
|
+
this.handleUnsupportedDelegatesFocus = () => {
|
|
72
|
+
var _a;
|
|
73
|
+
// Check to see if delegatesFocus is supported
|
|
74
|
+
if (window.ShadowRoot &&
|
|
75
|
+
!window.ShadowRoot.prototype.hasOwnProperty("delegatesFocus") && ((_a = this.$fastController.definition.shadowOptions) === null || _a === void 0 ? void 0 : _a.delegatesFocus)) {
|
|
76
|
+
this.focus = () => {
|
|
77
|
+
this.control.focus();
|
|
78
|
+
};
|
|
79
|
+
}
|
|
80
|
+
};
|
|
81
|
+
}
|
|
82
|
+
formactionChanged() {
|
|
83
|
+
if (this.proxy instanceof HTMLInputElement) {
|
|
84
|
+
this.proxy.formAction = this.formaction;
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
formenctypeChanged() {
|
|
88
|
+
if (this.proxy instanceof HTMLInputElement) {
|
|
89
|
+
this.proxy.formEnctype = this.formenctype;
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
formmethodChanged() {
|
|
93
|
+
if (this.proxy instanceof HTMLInputElement) {
|
|
94
|
+
this.proxy.formMethod = this.formmethod;
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
formnovalidateChanged() {
|
|
98
|
+
if (this.proxy instanceof HTMLInputElement) {
|
|
99
|
+
this.proxy.formNoValidate = this.formnovalidate;
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
formtargetChanged() {
|
|
103
|
+
if (this.proxy instanceof HTMLInputElement) {
|
|
104
|
+
this.proxy.formTarget = this.formtarget;
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
typeChanged(previous, next) {
|
|
108
|
+
if (this.proxy instanceof HTMLInputElement) {
|
|
109
|
+
this.proxy.type = this.type;
|
|
110
|
+
}
|
|
111
|
+
next === "submit" && this.addEventListener("click", this.handleSubmission);
|
|
112
|
+
previous === "submit" && this.removeEventListener("click", this.handleSubmission);
|
|
113
|
+
next === "reset" && this.addEventListener("click", this.handleFormReset);
|
|
114
|
+
previous === "reset" && this.removeEventListener("click", this.handleFormReset);
|
|
115
|
+
}
|
|
116
|
+
/**
|
|
117
|
+
* @internal
|
|
118
|
+
*/
|
|
119
|
+
connectedCallback() {
|
|
120
|
+
var _a;
|
|
121
|
+
super.connectedCallback();
|
|
122
|
+
this.proxy.setAttribute("type", this.type);
|
|
123
|
+
this.handleUnsupportedDelegatesFocus();
|
|
124
|
+
const elements = Array.from((_a = this.control) === null || _a === void 0 ? void 0 : _a.children);
|
|
125
|
+
if (elements) {
|
|
126
|
+
elements.forEach((span) => {
|
|
127
|
+
span.addEventListener("click", this.handleClick);
|
|
128
|
+
});
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
/**
|
|
132
|
+
* @internal
|
|
133
|
+
*/
|
|
134
|
+
disconnectedCallback() {
|
|
135
|
+
var _a;
|
|
136
|
+
super.disconnectedCallback();
|
|
137
|
+
const elements = Array.from((_a = this.control) === null || _a === void 0 ? void 0 : _a.children);
|
|
138
|
+
if (elements) {
|
|
139
|
+
elements.forEach((span) => {
|
|
140
|
+
span.removeEventListener("click", this.handleClick);
|
|
141
|
+
});
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
__decorate([
|
|
146
|
+
attr({ mode: "boolean" })
|
|
147
|
+
], Button.prototype, "autofocus", void 0);
|
|
148
|
+
__decorate([
|
|
149
|
+
attr({ attribute: "form" })
|
|
150
|
+
], Button.prototype, "formId", void 0);
|
|
151
|
+
__decorate([
|
|
152
|
+
attr
|
|
153
|
+
], Button.prototype, "formaction", void 0);
|
|
154
|
+
__decorate([
|
|
155
|
+
attr
|
|
156
|
+
], Button.prototype, "formenctype", void 0);
|
|
157
|
+
__decorate([
|
|
158
|
+
attr
|
|
159
|
+
], Button.prototype, "formmethod", void 0);
|
|
160
|
+
__decorate([
|
|
161
|
+
attr({ mode: "boolean" })
|
|
162
|
+
], Button.prototype, "formnovalidate", void 0);
|
|
163
|
+
__decorate([
|
|
164
|
+
attr
|
|
165
|
+
], Button.prototype, "formtarget", void 0);
|
|
166
|
+
__decorate([
|
|
167
|
+
attr
|
|
168
|
+
], Button.prototype, "type", void 0);
|
|
169
|
+
__decorate([
|
|
170
|
+
observable
|
|
171
|
+
], Button.prototype, "defaultSlottedContent", void 0);
|
|
172
|
+
/**
|
|
173
|
+
* Includes ARIA states and properties relating to the ARIA button role
|
|
174
|
+
*
|
|
175
|
+
* @public
|
|
176
|
+
*/
|
|
177
|
+
class DelegatesARIAButton {
|
|
178
|
+
}
|
|
179
|
+
__decorate([
|
|
180
|
+
attr({ attribute: "aria-expanded" })
|
|
181
|
+
], DelegatesARIAButton.prototype, "ariaExpanded", void 0);
|
|
182
|
+
__decorate([
|
|
183
|
+
attr({ attribute: "aria-pressed" })
|
|
184
|
+
], DelegatesARIAButton.prototype, "ariaPressed", void 0);
|
|
185
|
+
applyMixins(DelegatesARIAButton, ARIAGlobalStatesAndProperties);
|
|
186
|
+
applyMixins(Button, StartEnd, DelegatesARIAButton);
|
|
187
|
+
|
|
188
|
+
export { Button as B };
|
package/shared/enums.js
CHANGED
|
@@ -29,10 +29,10 @@ var Shape;
|
|
|
29
29
|
var Appearance;
|
|
30
30
|
|
|
31
31
|
(function (Appearance) {
|
|
32
|
-
Appearance["Text"] = "text";
|
|
33
32
|
Appearance["Filled"] = "filled";
|
|
34
33
|
Appearance["Outlined"] = "outlined";
|
|
35
34
|
Appearance["Duotone"] = "duotone";
|
|
35
|
+
Appearance["Fieldset"] = "fieldset";
|
|
36
36
|
Appearance["Subtle"] = "subtle";
|
|
37
37
|
Appearance["Ghost"] = "ghost";
|
|
38
38
|
})(Appearance || (Appearance = {}));
|