@vonage/vivid 3.0.0-next.134 → 3.0.0-next.135
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/combobox/index.js +1 -0
- package/custom-elements.json +344 -0
- package/index.js +7 -3
- package/lib/components.d.ts +3 -0
- package/lib/menu-item/menu-item.d.ts +1 -0
- package/lib/tab/definition.d.ts +3 -0
- package/lib/tab/index.d.ts +1 -0
- package/lib/tab/tab.d.ts +9 -0
- package/lib/tab/tab.template.d.ts +3 -0
- package/lib/tab-panel/definition.d.ts +3 -0
- package/lib/tab-panel/index.d.ts +1 -0
- package/lib/tab-panel/tab-panel.d.ts +3 -0
- package/lib/tab-panel/tab-panel.template.d.ts +2 -0
- package/lib/tabs/definition.d.ts +3 -0
- package/lib/tabs/index.d.ts +1 -0
- package/lib/tabs/tabs.d.ts +10 -0
- package/lib/tabs/tabs.template.d.ts +2 -0
- package/listbox/index.js +1 -0
- package/number-field/index.js +1 -1
- package/package.json +1 -1
- package/shared/definition.js +1 -1
- package/shared/definition11.js +1 -1
- package/shared/definition12.js +1 -1
- package/shared/definition13.js +1 -1
- package/shared/definition14.js +1 -1
- package/shared/definition16.js +1 -1
- package/shared/definition17.js +3 -2
- package/shared/definition19.js +1 -1
- package/shared/definition2.js +1 -1
- package/shared/definition20.js +1 -1
- package/shared/definition21.js +1 -1
- package/shared/definition22.js +1 -1
- package/shared/definition23.js +1 -1
- package/shared/definition25.js +1 -1
- package/shared/definition27.js +20 -8
- package/shared/definition29.js +1 -1
- package/shared/definition30.js +1 -1
- package/shared/definition31.js +1 -1
- package/shared/definition32.js +1 -1
- package/shared/definition33.js +1 -1
- package/shared/definition34.js +1 -1
- package/shared/definition35.js +1 -1
- package/shared/definition36.js +1 -1
- package/shared/definition38.js +1 -1
- package/shared/definition39.js +42 -255
- package/shared/definition4.js +1 -1
- package/shared/definition40.js +24 -111
- package/shared/definition41.js +424 -61
- package/shared/definition42.js +280 -0
- package/shared/definition43.js +119 -0
- package/shared/definition44.js +77 -0
- package/shared/definition5.js +1 -1
- package/shared/definition6.js +1 -1
- package/shared/definition7.js +1 -1
- package/shared/definition8.js +1 -1
- package/shared/definition9.js +1 -1
- package/shared/form-elements.js +1 -1
- package/shared/listbox.js +2 -9
- package/shared/numbers.js +10 -1
- package/shared/patterns/form-elements/form-elements.d.ts +2 -2
- package/shared/strings.js +9 -0
- package/shared/text-field.js +1 -1
- package/styles/core/all.css +1 -1
- package/styles/core/theme.css +1 -1
- package/styles/core/typography.css +1 -1
- package/styles/tokens/theme-dark.css +4 -4
- package/styles/tokens/theme-light.css +4 -4
- package/tab/index.js +16 -0
- package/tab-panel/index.js +4 -0
- package/tabs/index.js +24 -0
- package/text-area/index.js +1 -1
- package/text-field/index.js +1 -1
- package/tooltip/index.js +1 -1
- package/vivid.api.json +315 -0
package/shared/definition39.js
CHANGED
|
@@ -1,280 +1,67 @@
|
|
|
1
|
-
import { F as FoundationElement, _ as __decorate, a as attr,
|
|
1
|
+
import { F as FoundationElement, _ as __decorate, a as attr, b as __metadata, h as html, r as registerFactory } from './index.js';
|
|
2
2
|
import { i as iconRegistries } from './definition3.js';
|
|
3
3
|
import { f as focusRegistries } from './definition4.js';
|
|
4
|
-
import './affix.js';
|
|
5
|
-
import './focus.js';
|
|
6
|
-
import { f as formElements, g as getFeedbackTemplate } from './form-elements.js';
|
|
7
|
-
import { D as DelegatesARIATextbox } from './text-field2.js';
|
|
4
|
+
import { b as AffixIcon, a as affixIconTemplateFactory } from './affix.js';
|
|
8
5
|
import { a as applyMixins } from './apply-mixins.js';
|
|
9
|
-
import { F as FormAssociated } from './form-associated.js';
|
|
10
6
|
import { f as focusTemplateFactory } from './focus2.js';
|
|
11
|
-
import { w as when } from './when.js';
|
|
12
|
-
import { r as ref } from './ref.js';
|
|
13
7
|
import { c as classNames } from './class-names.js';
|
|
14
8
|
|
|
15
|
-
class _TextArea extends FoundationElement {
|
|
16
|
-
}
|
|
17
9
|
/**
|
|
18
|
-
* A
|
|
10
|
+
* A Tab Component to be used with {@link @microsoft/fast-foundation#(Tabs:class)}
|
|
19
11
|
*
|
|
20
|
-
* @
|
|
21
|
-
*/
|
|
22
|
-
class FormAssociatedTextArea extends FormAssociated(_TextArea) {
|
|
23
|
-
constructor() {
|
|
24
|
-
super(...arguments);
|
|
25
|
-
this.proxy = document.createElement("textarea");
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
/**
|
|
30
|
-
* Resize mode for a TextArea
|
|
31
|
-
* @public
|
|
32
|
-
*/
|
|
33
|
-
const TextAreaResize = {
|
|
34
|
-
/**
|
|
35
|
-
* No resize.
|
|
36
|
-
*/
|
|
37
|
-
none: "none",
|
|
38
|
-
/**
|
|
39
|
-
* Resize vertically and horizontally.
|
|
40
|
-
*/
|
|
41
|
-
both: "both",
|
|
42
|
-
/**
|
|
43
|
-
* Resize horizontally.
|
|
44
|
-
*/
|
|
45
|
-
horizontal: "horizontal",
|
|
46
|
-
/**
|
|
47
|
-
* Resize vertically.
|
|
48
|
-
*/
|
|
49
|
-
vertical: "vertical",
|
|
50
|
-
};
|
|
51
|
-
|
|
52
|
-
/**
|
|
53
|
-
* A Text Area Custom HTML Element.
|
|
54
|
-
* Based largely on the {@link https://developer.mozilla.org/en-US/docs/Web/HTML/Element/textarea | <textarea> element }.
|
|
55
|
-
*
|
|
56
|
-
* @slot - The default slot for the label
|
|
57
|
-
* @csspart label - The label
|
|
58
|
-
* @csspart root - The element wrapping the control
|
|
59
|
-
* @csspart control - The textarea element
|
|
60
|
-
* @fires change - Emits a custom 'change' event when the textarea emits a change event
|
|
12
|
+
* @slot - The default slot for the tab content
|
|
61
13
|
*
|
|
62
14
|
* @public
|
|
63
15
|
*/
|
|
64
|
-
class
|
|
65
|
-
constructor() {
|
|
66
|
-
super(...arguments);
|
|
67
|
-
/**
|
|
68
|
-
* The resize mode of the element.
|
|
69
|
-
* @public
|
|
70
|
-
* @remarks
|
|
71
|
-
* HTML Attribute: resize
|
|
72
|
-
*/
|
|
73
|
-
this.resize = TextAreaResize.none;
|
|
74
|
-
/**
|
|
75
|
-
* Sizes the element horizontally by a number of character columns.
|
|
76
|
-
*
|
|
77
|
-
* @public
|
|
78
|
-
* @remarks
|
|
79
|
-
* HTML Attribute: cols
|
|
80
|
-
*/
|
|
81
|
-
this.cols = 20;
|
|
82
|
-
/**
|
|
83
|
-
* @internal
|
|
84
|
-
*/
|
|
85
|
-
this.handleTextInput = () => {
|
|
86
|
-
this.value = this.control.value;
|
|
87
|
-
};
|
|
88
|
-
}
|
|
89
|
-
readOnlyChanged() {
|
|
90
|
-
if (this.proxy instanceof HTMLTextAreaElement) {
|
|
91
|
-
this.proxy.readOnly = this.readOnly;
|
|
92
|
-
}
|
|
93
|
-
}
|
|
94
|
-
autofocusChanged() {
|
|
95
|
-
if (this.proxy instanceof HTMLTextAreaElement) {
|
|
96
|
-
this.proxy.autofocus = this.autofocus;
|
|
97
|
-
}
|
|
98
|
-
}
|
|
99
|
-
listChanged() {
|
|
100
|
-
if (this.proxy instanceof HTMLTextAreaElement) {
|
|
101
|
-
this.proxy.setAttribute("list", this.list);
|
|
102
|
-
}
|
|
103
|
-
}
|
|
104
|
-
maxlengthChanged() {
|
|
105
|
-
if (this.proxy instanceof HTMLTextAreaElement) {
|
|
106
|
-
this.proxy.maxLength = this.maxlength;
|
|
107
|
-
}
|
|
108
|
-
}
|
|
109
|
-
minlengthChanged() {
|
|
110
|
-
if (this.proxy instanceof HTMLTextAreaElement) {
|
|
111
|
-
this.proxy.minLength = this.minlength;
|
|
112
|
-
}
|
|
113
|
-
}
|
|
114
|
-
spellcheckChanged() {
|
|
115
|
-
if (this.proxy instanceof HTMLTextAreaElement) {
|
|
116
|
-
this.proxy.spellcheck = this.spellcheck;
|
|
117
|
-
}
|
|
118
|
-
}
|
|
119
|
-
/**
|
|
120
|
-
* Selects all the text in the text area
|
|
121
|
-
*
|
|
122
|
-
* @public
|
|
123
|
-
*/
|
|
124
|
-
select() {
|
|
125
|
-
this.control.select();
|
|
126
|
-
/**
|
|
127
|
-
* The select event does not permeate the shadow DOM boundary.
|
|
128
|
-
* This fn effectively proxies the select event,
|
|
129
|
-
* emitting a `select` event whenever the internal
|
|
130
|
-
* control emits a `select` event
|
|
131
|
-
*/
|
|
132
|
-
this.$emit("select");
|
|
133
|
-
}
|
|
134
|
-
/**
|
|
135
|
-
* Change event handler for inner control.
|
|
136
|
-
* @remarks
|
|
137
|
-
* "Change" events are not `composable` so they will not
|
|
138
|
-
* permeate the shadow DOM boundary. This fn effectively proxies
|
|
139
|
-
* the change event, emitting a `change` event whenever the internal
|
|
140
|
-
* control emits a `change` event
|
|
141
|
-
* @internal
|
|
142
|
-
*/
|
|
143
|
-
handleChange() {
|
|
144
|
-
this.$emit("change");
|
|
145
|
-
}
|
|
146
|
-
/** {@inheritDoc (FormAssociated:interface).validate} */
|
|
147
|
-
validate() {
|
|
148
|
-
super.validate(this.control);
|
|
149
|
-
}
|
|
16
|
+
class Tab$1 extends FoundationElement {
|
|
150
17
|
}
|
|
151
18
|
__decorate([
|
|
152
19
|
attr({ mode: "boolean" })
|
|
153
|
-
],
|
|
154
|
-
__decorate([
|
|
155
|
-
attr
|
|
156
|
-
], TextArea$1.prototype, "resize", void 0);
|
|
157
|
-
__decorate([
|
|
158
|
-
attr({ mode: "boolean" })
|
|
159
|
-
], TextArea$1.prototype, "autofocus", void 0);
|
|
160
|
-
__decorate([
|
|
161
|
-
attr({ attribute: "form" })
|
|
162
|
-
], TextArea$1.prototype, "formId", void 0);
|
|
163
|
-
__decorate([
|
|
164
|
-
attr
|
|
165
|
-
], TextArea$1.prototype, "list", void 0);
|
|
166
|
-
__decorate([
|
|
167
|
-
attr({ converter: nullableNumberConverter })
|
|
168
|
-
], TextArea$1.prototype, "maxlength", void 0);
|
|
169
|
-
__decorate([
|
|
170
|
-
attr({ converter: nullableNumberConverter })
|
|
171
|
-
], TextArea$1.prototype, "minlength", void 0);
|
|
172
|
-
__decorate([
|
|
173
|
-
attr
|
|
174
|
-
], TextArea$1.prototype, "name", void 0);
|
|
175
|
-
__decorate([
|
|
176
|
-
attr
|
|
177
|
-
], TextArea$1.prototype, "placeholder", void 0);
|
|
178
|
-
__decorate([
|
|
179
|
-
attr({ converter: nullableNumberConverter, mode: "fromView" })
|
|
180
|
-
], TextArea$1.prototype, "cols", void 0);
|
|
181
|
-
__decorate([
|
|
182
|
-
attr({ converter: nullableNumberConverter, mode: "fromView" })
|
|
183
|
-
], TextArea$1.prototype, "rows", void 0);
|
|
184
|
-
__decorate([
|
|
185
|
-
attr({ mode: "boolean" })
|
|
186
|
-
], TextArea$1.prototype, "spellcheck", void 0);
|
|
187
|
-
__decorate([
|
|
188
|
-
observable
|
|
189
|
-
], TextArea$1.prototype, "defaultSlottedNodes", void 0);
|
|
190
|
-
applyMixins(TextArea$1, DelegatesARIATextbox);
|
|
20
|
+
], Tab$1.prototype, "disabled", void 0);
|
|
191
21
|
|
|
192
|
-
var css_248z = "/**\n * Do not edit directly\n * Generated on
|
|
22
|
+
var css_248z = "/**\n * Do not edit directly\n * Generated on Mon, 16 Jan 2023 13:29:55 GMT\n */\n@supports selector(:focus-visible) {\n :host(:focus) {\n outline: none;\n }\n}\n:host(.vertical) {\n justify-content: end;\n grid-column: 1/auto;\n}\n\n.base {\n position: relative;\n display: flex;\n box-sizing: border-box;\n align-items: center;\n padding: var(--_tabs-tablist-gutter);\n background-color: var(--_appearance-color-fill);\n border-radius: 6px;\n box-shadow: inset 0 0 0 1px var(--_appearance-color-outline);\n color: var(--_appearance-color-text);\n font: var(--vvd-typography-base);\n gap: var(--_tabs-tablist-gutter);\n min-block-size: 48px;\n vertical-align: middle;\n white-space: nowrap;\n}\n.base {\n --_appearance-color-text: var(--_connotation-color-primary);\n --_appearance-color-fill: transparent;\n --_appearance-color-outline: transparent;\n}\n.base:where(:hover, .hover):where(:not(:disabled, .disabled, .readonly)) {\n --_appearance-color-text: var(--_connotation-color-primary);\n --_appearance-color-fill: var(--_connotation-color-faint);\n --_appearance-color-outline: transparent;\n}\n.base:where(:disabled, .disabled) {\n --_appearance-color-text: var(--vvd-color-neutral-400);\n --_appearance-color-fill: transparent;\n --_appearance-color-outline: transparent;\n}\n.base:where(:active, .active):where(:not(:disabled, .disabled)) {\n --_appearance-color-text: var(--_connotation-color-primary);\n --_appearance-color-fill: var(--_connotation-color-soft);\n --_appearance-color-outline: transparent;\n}\n@supports (user-select: none) {\n .base {\n user-select: none;\n }\n}\n.base:not(.disabled) {\n cursor: pointer;\n}\n.base.disabled {\n cursor: not-allowed;\n}\n:host(.vertical) .base {\n padding-inline-start: calc(var(--_tabs-active-indicator-stroke-width) + var(--_tabs-tablist-gutter));\n}\n\n:host(:not(:focus-visible)) .focus-indicator {\n display: none;\n}\n\n.icon {\n font-size: 20px;\n}\n\n:host(:not(.vertical)) .base::after {\n position: absolute;\n background: currentColor;\n block-size: 2px;\n content: \"\";\n inline-size: calc(100% + var(--_tabs-tablist-gutter) * 2);\n inset-block-end: calc(var(--_tabs-tablist-gutter) * -2);\n margin-inline: calc(var(--_tabs-tablist-gutter) * -2);\n pointer-events: none;\n transition-property: opacity;\n}\n:host(:not(.vertical)):host([aria-selected=true]) .base::after {\n transition-delay: 0.2s;\n}\n:host(:not(.vertical)):host(:not([aria-selected=true])) .base::after {\n opacity: 0;\n}";
|
|
193
23
|
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
24
|
+
class Tab extends Tab$1 {
|
|
25
|
+
constructor() {
|
|
26
|
+
super(...arguments);
|
|
27
|
+
this.tabIndex = '-1';
|
|
28
|
+
this.ariaSelected = null;
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
__decorate([attr, __metadata("design:type", String)], Tab.prototype, "label", void 0);
|
|
32
|
+
__decorate([attr({
|
|
33
|
+
mode: 'fromView'
|
|
34
|
+
}), __metadata("design:type", Object)], Tab.prototype, "tabIndex", void 0);
|
|
35
|
+
__decorate([attr({
|
|
36
|
+
attribute: 'aria-selected'
|
|
37
|
+
}), __metadata("design:type", Object)], Tab.prototype, "ariaSelected", void 0);
|
|
38
|
+
applyMixins(Tab, AffixIcon);
|
|
197
39
|
|
|
198
40
|
let _ = t => t,
|
|
199
|
-
_t
|
|
200
|
-
_t2;
|
|
41
|
+
_t;
|
|
201
42
|
const getClasses = ({
|
|
202
|
-
value,
|
|
203
|
-
errorValidationMessage,
|
|
204
43
|
disabled,
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
44
|
+
ariaSelected
|
|
45
|
+
}) => classNames('base', ['disabled', Boolean(disabled)], ['selected', ariaSelected === 'true']);
|
|
46
|
+
function TabTemplate(context) {
|
|
47
|
+
const affixIconTemplate = affixIconTemplateFactory(context);
|
|
48
|
+
const focusTemplate = focusTemplateFactory(context);
|
|
210
49
|
return html(_t || (_t = _`
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
50
|
+
<template slot="tab" role="tab" aria-disabled="${0}" aria-selected="${0}">
|
|
51
|
+
<div class="${0}">
|
|
52
|
+
${0}
|
|
53
|
+
${0}
|
|
54
|
+
${0}
|
|
55
|
+
</div>
|
|
56
|
+
</template>`), x => x.disabled, x => x.ariaSelected, getClasses, () => focusTemplate, x => affixIconTemplate(x.icon), x => x.label);
|
|
214
57
|
}
|
|
215
|
-
const TextAreaTemplate = context => {
|
|
216
|
-
const focusTemplate = focusTemplateFactory(context);
|
|
217
|
-
return html(_t2 || (_t2 = _`
|
|
218
|
-
<div class="${0}">
|
|
219
|
-
${0}
|
|
220
|
-
<div class="fieldset">
|
|
221
|
-
<textarea class="control"
|
|
222
|
-
?autofocus="${0}"
|
|
223
|
-
placeholder="${0}"
|
|
224
|
-
name="${0}"
|
|
225
|
-
maxlength="${0}"
|
|
226
|
-
rows="${0}"
|
|
227
|
-
cols="${0}"
|
|
228
|
-
wrap="${0}"
|
|
229
|
-
?readonly="${0}"
|
|
230
|
-
?required="${0}"
|
|
231
|
-
?spellcheck="${0}"
|
|
232
|
-
:value="${0}"
|
|
233
|
-
aria-atomic="${0}"
|
|
234
|
-
aria-busy="${0}"
|
|
235
|
-
aria-controls="${0}"
|
|
236
|
-
aria-current="${0}"
|
|
237
|
-
aria-describedby="${0}"
|
|
238
|
-
aria-details="${0}"
|
|
239
|
-
aria-disabled="${0}"
|
|
240
|
-
aria-errormessage="${0}"
|
|
241
|
-
aria-flowto="${0}"
|
|
242
|
-
aria-haspopup="${0}"
|
|
243
|
-
aria-hidden="${0}"
|
|
244
|
-
aria-invalid="${0}"
|
|
245
|
-
aria-keyshortcuts="${0}"
|
|
246
|
-
aria-label="${0}"
|
|
247
|
-
aria-labelledby="${0}"
|
|
248
|
-
aria-live="${0}"
|
|
249
|
-
aria-owns="${0}"
|
|
250
|
-
aria-relevant="${0}"
|
|
251
|
-
aria-roledescription="${0}"
|
|
252
|
-
@input="${0}"
|
|
253
|
-
@change="${0}"
|
|
254
|
-
${0}
|
|
255
|
-
>
|
|
256
|
-
</textarea>
|
|
257
|
-
${0}
|
|
258
|
-
</div>
|
|
259
|
-
${0}
|
|
260
|
-
${0}
|
|
261
|
-
${0}
|
|
262
|
-
</div>
|
|
263
|
-
`), getClasses, when(x => x.label, renderLabel()), x => x.autofocus, x => x.placeholder ? x.placeholder : null, x => x.name ? x.name : null, x => x.maxlength ? x.maxlength : null, x => x.rows ? x.rows : null, x => x.cols ? x.cols : null, x => x.wrap ? x.wrap : null, x => x.readOnly, x => x.required, x => x.spellcheck, x => x.value, x => x.ariaAtomic, x => x.ariaBusy, x => x.ariaControls, x => x.ariaCurrent, x => x.ariaDescribedby, x => x.ariaDetails, x => x.ariaDisabled, x => x.ariaErrormessage, x => x.ariaFlowto, x => x.ariaHaspopup, x => x.ariaHidden, x => x.ariaInvalid, x => x.ariaKeyshortcuts, x => x.ariaLabel, x => x.ariaLabelledby, x => x.ariaLive, x => x.ariaOwns, x => x.ariaRelevant, x => x.ariaRoledescription, x => x.handleTextInput(), x => x.handleChange(), ref('control'), () => focusTemplate, when(x => {
|
|
264
|
-
var _a;
|
|
265
|
-
return !x.successText && !x.errorValidationMessage && ((_a = x.helperText) === null || _a === void 0 ? void 0 : _a.length);
|
|
266
|
-
}, getFeedbackTemplate('helper', context)), when(x => !x.successText && x.errorValidationMessage, getFeedbackTemplate('error', context)), when(x => x.successText, getFeedbackTemplate('success', context)));
|
|
267
|
-
};
|
|
268
58
|
|
|
269
|
-
const
|
|
270
|
-
baseName: '
|
|
271
|
-
template:
|
|
272
|
-
styles: css_248z
|
|
273
|
-
shadowOptions: {
|
|
274
|
-
delegatesFocus: true
|
|
275
|
-
}
|
|
59
|
+
const tabDefinition = Tab.compose({
|
|
60
|
+
baseName: 'tab',
|
|
61
|
+
template: TabTemplate,
|
|
62
|
+
styles: css_248z
|
|
276
63
|
});
|
|
277
|
-
const
|
|
278
|
-
const
|
|
64
|
+
const tabRegistries = [tabDefinition(), ...iconRegistries, ...focusRegistries];
|
|
65
|
+
const registerTab = registerFactory(tabRegistries);
|
|
279
66
|
|
|
280
|
-
export {
|
|
67
|
+
export { tabDefinition as a, registerTab as r, tabRegistries as t };
|
package/shared/definition4.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { h as html, r as registerFactory } from './index.js';
|
|
2
2
|
import { F as Focus } from './focus.js';
|
|
3
3
|
|
|
4
|
-
var css_248z = "/**\n * Do not edit directly\n * Generated on
|
|
4
|
+
var css_248z = "/**\n * Do not edit directly\n * Generated on Mon, 16 Jan 2023 13:29:55 GMT\n */\n:host {\n display: contents;\n border-radius: inherit;\n}\n\n.control {\n position: absolute;\n z-index: 1;\n box-sizing: border-box;\n border-radius: inherit;\n box-shadow: inset 0 0 0 3px var(--focus-stroke-gap-color, currentColor);\n inset: var(--focus-inset, 0);\n outline: 2px solid var(--focus-stroke-color, var(--vvd-color-canvas-text));\n outline-offset: -2px;\n}";
|
|
5
5
|
|
|
6
6
|
let _ = t => t,
|
|
7
7
|
_t;
|
package/shared/definition40.js
CHANGED
|
@@ -1,119 +1,32 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { f as focusRegistries } from './definition4.js';
|
|
3
|
-
import { i as iconRegistries } from './definition3.js';
|
|
4
|
-
import { b as AffixIcon, a as affixIconTemplateFactory } from './affix.js';
|
|
5
|
-
import './focus.js';
|
|
6
|
-
import { f as formElements, g as getFeedbackTemplate } from './form-elements.js';
|
|
7
|
-
import { T as TextField$1 } from './text-field2.js';
|
|
8
|
-
import { a as applyMixins } from './apply-mixins.js';
|
|
9
|
-
import { c as css_248z } from './text-field.js';
|
|
10
|
-
import { f as focusTemplateFactory } from './focus2.js';
|
|
11
|
-
import { w as when } from './when.js';
|
|
12
|
-
import { r as ref } from './ref.js';
|
|
13
|
-
import { c as classNames } from './class-names.js';
|
|
1
|
+
import { F as FoundationElement, h as html, r as registerFactory } from './index.js';
|
|
14
2
|
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
3
|
+
/**
|
|
4
|
+
* A TabPanel Component to be used with {@link @microsoft/fast-foundation#(Tabs:class)}
|
|
5
|
+
*
|
|
6
|
+
* @slot - The default slot for the tabpanel content
|
|
7
|
+
*
|
|
8
|
+
* @public
|
|
9
|
+
*/
|
|
10
|
+
class TabPanel$1 extends FoundationElement {
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
class TabPanel extends TabPanel$1 {}
|
|
21
14
|
|
|
22
15
|
let _ = t => t,
|
|
23
|
-
_t
|
|
24
|
-
|
|
25
|
-
_t3;
|
|
26
|
-
const getStateClasses = ({
|
|
27
|
-
errorValidationMessage,
|
|
28
|
-
disabled,
|
|
29
|
-
value,
|
|
30
|
-
readOnly,
|
|
31
|
-
placeholder,
|
|
32
|
-
appearance,
|
|
33
|
-
shape,
|
|
34
|
-
label,
|
|
35
|
-
successText
|
|
36
|
-
}) => classNames(['error connotation-alert', Boolean(errorValidationMessage)], ['disabled', disabled], ['has-value', Boolean(value)], ['readonly', readOnly], ['placeholder', Boolean(placeholder)], [`appearance-${appearance}`, Boolean(appearance)], [`shape-${shape}`, Boolean(shape)], ['no-label', !label], ['success connotation-success', Boolean(successText)]);
|
|
37
|
-
function renderLabel() {
|
|
16
|
+
_t;
|
|
17
|
+
function TabPanelTemplate() {
|
|
38
18
|
return html(_t || (_t = _`
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
function renderCharCount() {
|
|
44
|
-
return html(_t2 || (_t2 = _`
|
|
45
|
-
<span class="char-count">${0} / ${0}</span>
|
|
46
|
-
`), x => x.value ? x.value.length : 0, x => x.maxlength);
|
|
19
|
+
<template slot="tabpanel" role="tabpanel">
|
|
20
|
+
<slot></slot>
|
|
21
|
+
</template>
|
|
22
|
+
`));
|
|
47
23
|
}
|
|
48
|
-
const TextfieldTemplate = context => {
|
|
49
|
-
const affixIconTemplate = affixIconTemplateFactory(context);
|
|
50
|
-
const focusTemplate = focusTemplateFactory(context);
|
|
51
|
-
return html(_t3 || (_t3 = _`
|
|
52
|
-
<div class="base ${0}">
|
|
53
|
-
${0}
|
|
54
|
-
${0}
|
|
55
|
-
<div class="fieldset">
|
|
56
|
-
${0}
|
|
57
|
-
<input class="control"
|
|
58
|
-
id="control"
|
|
59
|
-
@input="${0}"
|
|
60
|
-
@change="${0}"
|
|
61
|
-
?autofocus="${0}"
|
|
62
|
-
?disabled="${0}"
|
|
63
|
-
list="${0}"
|
|
64
|
-
maxlength="${0}"
|
|
65
|
-
minlength="${0}"
|
|
66
|
-
pattern="${0}"
|
|
67
|
-
placeholder="${0}"
|
|
68
|
-
?readonly="${0}"
|
|
69
|
-
?required="${0}"
|
|
70
|
-
size="${0}"
|
|
71
|
-
autocomplete="${0}"
|
|
72
|
-
name="${0}"
|
|
73
|
-
?spellcheck="${0}"
|
|
74
|
-
:value="${0}"
|
|
75
|
-
type="${0}"
|
|
76
|
-
aria-atomic="${0}"
|
|
77
|
-
aria-busy="${0}"
|
|
78
|
-
aria-controls="${0}"
|
|
79
|
-
aria-current="${0}"
|
|
80
|
-
aria-describedby="${0}"
|
|
81
|
-
aria-details="${0}"
|
|
82
|
-
aria-disabled="${0}"
|
|
83
|
-
aria-errormessage="${0}"
|
|
84
|
-
aria-flowto="${0}"
|
|
85
|
-
aria-haspopup="${0}"
|
|
86
|
-
aria-hidden="${0}"
|
|
87
|
-
aria-invalid="${0}"
|
|
88
|
-
aria-keyshortcuts="${0}"
|
|
89
|
-
aria-label="${0}"
|
|
90
|
-
aria-labelledby="${0}"
|
|
91
|
-
aria-live="${0}"
|
|
92
|
-
aria-owns="${0}"
|
|
93
|
-
aria-relevant="${0}"
|
|
94
|
-
aria-roledescription="${0}"
|
|
95
|
-
${0}
|
|
96
|
-
/>
|
|
97
|
-
${0}
|
|
98
|
-
</div>
|
|
99
|
-
${0}
|
|
100
|
-
${0}
|
|
101
|
-
${0}
|
|
102
|
-
</div>`), getStateClasses, when(x => x.charCount && x.maxlength, renderCharCount()), when(x => x.label, renderLabel()), x => affixIconTemplate(x.icon), x => x.handleTextInput(), x => x.handleChange(), x => x.autofocus, x => x.disabled, x => x.list, x => x.maxlength, x => x.minlength, x => x.pattern, x => x.placeholder, x => x.readOnly, x => x.required, x => x.size, x => x.autoComplete, x => x.name, x => x.spellcheck, x => x.value, x => x.type, x => x.ariaAtomic, x => x.ariaBusy, x => x.ariaControls, x => x.ariaCurrent, x => x.ariaDescribedby, x => x.ariaDetails, x => x.ariaDisabled, x => x.ariaErrormessage, x => x.ariaFlowto, x => x.ariaHaspopup, x => x.ariaHidden, x => x.ariaInvalid, x => x.ariaKeyshortcuts, x => x.ariaLabel, x => x.ariaLabelledby, x => x.ariaLive, x => x.ariaOwns, x => x.ariaRelevant, x => x.ariaRoledescription, ref('control'), () => focusTemplate, when(x => {
|
|
103
|
-
var _a;
|
|
104
|
-
return !x.successText && !x.errorValidationMessage && ((_a = x.helperText) === null || _a === void 0 ? void 0 : _a.length);
|
|
105
|
-
}, getFeedbackTemplate('helper', context)), when(x => !x.successText && x.errorValidationMessage, getFeedbackTemplate('error', context)), when(x => x.successText, getFeedbackTemplate('success', context)));
|
|
106
|
-
};
|
|
107
24
|
|
|
108
|
-
const
|
|
109
|
-
baseName: '
|
|
110
|
-
template:
|
|
111
|
-
styles: css_248z,
|
|
112
|
-
shadowOptions: {
|
|
113
|
-
delegatesFocus: true
|
|
114
|
-
}
|
|
25
|
+
const tabPanelDefinition = TabPanel.compose({
|
|
26
|
+
baseName: 'tab-panel',
|
|
27
|
+
template: TabPanelTemplate
|
|
115
28
|
});
|
|
116
|
-
const
|
|
117
|
-
const
|
|
29
|
+
const tabPanelRegistries = [tabPanelDefinition()];
|
|
30
|
+
const registerTabPanel = registerFactory(tabPanelRegistries);
|
|
118
31
|
|
|
119
|
-
export {
|
|
32
|
+
export { tabPanelDefinition as a, registerTabPanel as r, tabPanelRegistries as t };
|