@vonage/vivid 3.14.0 → 3.15.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/checkbox/index.js +3 -0
- package/custom-elements.json +203 -24
- package/empty-state/index.js +14 -0
- package/fab/index.js +1 -1
- package/header/index.js +1 -1
- package/index.js +31 -29
- package/layout/index.js +1 -1
- package/lib/checkbox/checkbox.d.ts +6 -3
- package/lib/components.d.ts +2 -0
- package/lib/data-grid/data-grid-row.d.ts +1 -0
- package/lib/empty-state/definition.d.ts +3 -0
- package/lib/empty-state/empty-state.d.ts +5 -0
- package/lib/empty-state/empty-state.template.d.ts +4 -0
- package/lib/empty-state/index.d.ts +1 -0
- package/listbox/index.js +1 -1
- package/menu/index.js +2 -2
- package/menu-item/index.js +1 -1
- package/nav/index.js +1 -1
- package/nav-disclosure/index.js +1 -1
- package/nav-item/index.js +1 -1
- package/note/index.js +1 -1
- package/number-field/index.js +1 -1
- package/package.json +1 -1
- package/pagination/index.js +14 -232
- package/progress/index.js +1 -1
- package/radio/index.js +1 -1
- package/radio-group/index.js +1 -1
- package/select/index.js +1 -1
- package/shared/definition.js +1 -1
- package/shared/definition10.js +1 -1
- package/shared/definition11.js +1 -1
- package/shared/definition12.js +1 -1
- package/shared/definition14.js +1 -1
- package/shared/definition15.js +1 -1
- package/shared/definition16.js +1 -1
- package/shared/definition17.js +1 -1
- package/shared/definition18.js +23 -8
- package/shared/definition19.js +1 -1
- package/shared/definition2.js +1 -1
- package/shared/definition21.js +1 -1
- package/shared/definition22.js +73 -31
- package/shared/definition23.js +1 -1
- package/shared/definition24.js +1 -1
- package/shared/definition25.js +39 -76
- package/shared/definition26.js +76 -47
- package/shared/definition27.js +46 -36
- package/shared/definition28.js +39 -49
- package/shared/definition29.js +48 -344
- package/shared/definition30.js +272 -291
- package/shared/definition31.js +366 -14
- package/shared/definition32.js +13 -67
- package/shared/definition33.js +66 -21
- package/shared/definition34.js +21 -39
- package/shared/definition35.js +31 -432
- package/shared/definition36.js +432 -76
- package/shared/definition37.js +223 -34
- package/shared/definition38.js +82 -425
- package/shared/definition39.js +30 -635
- package/shared/definition4.js +1 -1
- package/shared/definition40.js +420 -73
- package/shared/definition41.js +530 -484
- package/shared/definition42.js +76 -133
- package/shared/definition43.js +577 -40
- package/shared/definition44.js +135 -20
- package/shared/definition45.js +42 -423
- package/shared/definition46.js +22 -112
- package/shared/definition47.js +440 -18
- package/shared/definition48.js +92 -247
- package/shared/definition49.js +20 -112
- package/shared/definition5.js +1 -1
- package/shared/definition50.js +259 -590
- package/shared/definition51.js +110 -91
- package/shared/definition52.js +602 -67
- package/shared/definition53.js +89 -294
- package/shared/definition54.js +80 -0
- package/shared/definition55.js +305 -0
- package/shared/definition6.js +1 -1
- package/shared/definition7.js +1 -1
- package/shared/definition9.js +1 -1
- package/shared/form-elements.js +1 -1
- package/shared/icon.js +1 -1
- package/shared/patterns/form-elements/form-elements.d.ts +4 -4
- package/shared/text-field.js +1 -1
- package/side-drawer/index.js +1 -1
- package/slider/index.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/switch/index.js +1 -1
- package/tab/index.js +1 -1
- package/tab-panel/index.js +1 -1
- package/tabs/index.js +3 -3
- package/tag/index.js +1 -1
- package/tag-group/index.js +1 -1
- package/text-area/index.js +1 -1
- package/text-field/index.js +1 -1
- package/toggletip/index.js +1 -1
- package/tooltip/index.js +1 -1
- package/tree-item/index.js +1 -1
- package/tree-view/index.js +1 -1
- package/vivid.api.json +210 -0
package/shared/definition53.js
CHANGED
|
@@ -1,305 +1,100 @@
|
|
|
1
|
-
import { F as FoundationElement,
|
|
2
|
-
import {
|
|
3
|
-
import { i as isHTMLElement, g as getDisplayedNodes } from './dom.js';
|
|
4
|
-
import { d as keyEnter, c as keyArrowUp, b as keyArrowDown, h as keyArrowRight, i as keyArrowLeft, k as keyEnd, a as keyHome } from './key-codes.js';
|
|
5
|
-
import { s as slotted } from './slotted.js';
|
|
6
|
-
import { r as ref } from './ref.js';
|
|
1
|
+
import { F as FoundationElement, U as __classPrivateFieldGet, V as __classPrivateFieldSet, _ as __decorate, a as attr, b as __metadata, h as html, r as registerFactory } from './index.js';
|
|
2
|
+
import { P as Popup, p as popupRegistries } from './definition20.js';
|
|
7
3
|
import { c as classNames } from './class-names.js';
|
|
8
4
|
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
}
|
|
45
|
-
if (this.contains(e.target)) {
|
|
46
|
-
this.setAttribute("tabindex", "-1");
|
|
47
|
-
this.currentFocused = e.target;
|
|
48
|
-
}
|
|
49
|
-
};
|
|
50
|
-
/**
|
|
51
|
-
* Handle blur events
|
|
52
|
-
*
|
|
53
|
-
* @internal
|
|
54
|
-
*/
|
|
55
|
-
this.handleBlur = (e) => {
|
|
56
|
-
if (e.target instanceof HTMLElement &&
|
|
57
|
-
(e.relatedTarget === null || !this.contains(e.relatedTarget))) {
|
|
58
|
-
this.setAttribute("tabindex", "0");
|
|
59
|
-
}
|
|
60
|
-
};
|
|
61
|
-
/**
|
|
62
|
-
* KeyDown handler
|
|
63
|
-
*
|
|
64
|
-
* @internal
|
|
65
|
-
*/
|
|
66
|
-
this.handleKeyDown = (e) => {
|
|
67
|
-
if (e.defaultPrevented) {
|
|
68
|
-
return;
|
|
69
|
-
}
|
|
70
|
-
if (this.slottedTreeItems.length < 1) {
|
|
71
|
-
return true;
|
|
72
|
-
}
|
|
73
|
-
const treeItems = this.getVisibleNodes();
|
|
74
|
-
switch (e.key) {
|
|
75
|
-
case keyHome:
|
|
76
|
-
if (treeItems.length) {
|
|
77
|
-
TreeItem.focusItem(treeItems[0]);
|
|
78
|
-
}
|
|
79
|
-
return;
|
|
80
|
-
case keyEnd:
|
|
81
|
-
if (treeItems.length) {
|
|
82
|
-
TreeItem.focusItem(treeItems[treeItems.length - 1]);
|
|
83
|
-
}
|
|
84
|
-
return;
|
|
85
|
-
case keyArrowLeft:
|
|
86
|
-
if (e.target && this.isFocusableElement(e.target)) {
|
|
87
|
-
const item = e.target;
|
|
88
|
-
if (item instanceof TreeItem &&
|
|
89
|
-
item.childItemLength() > 0 &&
|
|
90
|
-
item.expanded) {
|
|
91
|
-
item.expanded = false;
|
|
92
|
-
}
|
|
93
|
-
else if (item instanceof TreeItem &&
|
|
94
|
-
item.parentElement instanceof TreeItem) {
|
|
95
|
-
TreeItem.focusItem(item.parentElement);
|
|
96
|
-
}
|
|
97
|
-
}
|
|
98
|
-
return false;
|
|
99
|
-
case keyArrowRight:
|
|
100
|
-
if (e.target && this.isFocusableElement(e.target)) {
|
|
101
|
-
const item = e.target;
|
|
102
|
-
if (item instanceof TreeItem &&
|
|
103
|
-
item.childItemLength() > 0 &&
|
|
104
|
-
!item.expanded) {
|
|
105
|
-
item.expanded = true;
|
|
106
|
-
}
|
|
107
|
-
else if (item instanceof TreeItem && item.childItemLength() > 0) {
|
|
108
|
-
this.focusNextNode(1, e.target);
|
|
109
|
-
}
|
|
110
|
-
}
|
|
111
|
-
return;
|
|
112
|
-
case keyArrowDown:
|
|
113
|
-
if (e.target && this.isFocusableElement(e.target)) {
|
|
114
|
-
this.focusNextNode(1, e.target);
|
|
115
|
-
}
|
|
116
|
-
return;
|
|
117
|
-
case keyArrowUp:
|
|
118
|
-
if (e.target && this.isFocusableElement(e.target)) {
|
|
119
|
-
this.focusNextNode(-1, e.target);
|
|
120
|
-
}
|
|
121
|
-
return;
|
|
122
|
-
case keyEnter:
|
|
123
|
-
// In single-select trees where selection does not follow focus (see note below),
|
|
124
|
-
// the default action is typically to select the focused node.
|
|
125
|
-
this.handleClick(e);
|
|
126
|
-
return;
|
|
127
|
-
}
|
|
128
|
-
// don't prevent default if we took no action
|
|
129
|
-
return true;
|
|
130
|
-
};
|
|
131
|
-
/**
|
|
132
|
-
* Handles the selected-changed events bubbling up
|
|
133
|
-
* from child tree items
|
|
134
|
-
*
|
|
135
|
-
* @internal
|
|
136
|
-
*/
|
|
137
|
-
this.handleSelectedChange = (e) => {
|
|
138
|
-
if (e.defaultPrevented) {
|
|
139
|
-
return;
|
|
140
|
-
}
|
|
141
|
-
if (!(e.target instanceof Element) || !isTreeItemElement(e.target)) {
|
|
142
|
-
return true;
|
|
143
|
-
}
|
|
144
|
-
const item = e.target;
|
|
145
|
-
if (item.selected) {
|
|
146
|
-
if (this.currentSelected && this.currentSelected !== item) {
|
|
147
|
-
this.currentSelected.selected = false;
|
|
148
|
-
}
|
|
149
|
-
// new selected item
|
|
150
|
-
this.currentSelected = item;
|
|
151
|
-
}
|
|
152
|
-
else if (!item.selected && this.currentSelected === item) {
|
|
153
|
-
// selected item deselected
|
|
154
|
-
this.currentSelected = null;
|
|
155
|
-
}
|
|
156
|
-
return;
|
|
157
|
-
};
|
|
158
|
-
/**
|
|
159
|
-
* Updates the tree view when slottedTreeItems changes
|
|
160
|
-
*/
|
|
161
|
-
this.setItems = () => {
|
|
162
|
-
// force single selection
|
|
163
|
-
// defaults to first one found
|
|
164
|
-
const selectedItem = this.treeView.querySelector("[aria-selected='true']");
|
|
165
|
-
this.currentSelected = selectedItem;
|
|
166
|
-
// invalidate the current focused item if it is no longer valid
|
|
167
|
-
if (this.currentFocused === null || !this.contains(this.currentFocused)) {
|
|
168
|
-
this.currentFocused = this.getValidFocusableItem();
|
|
169
|
-
}
|
|
170
|
-
// toggle properties on child elements
|
|
171
|
-
this.nested = this.checkForNestedItems();
|
|
172
|
-
const treeItems = this.getVisibleNodes();
|
|
173
|
-
treeItems.forEach(node => {
|
|
174
|
-
if (isTreeItemElement(node)) {
|
|
175
|
-
node.nested = this.nested;
|
|
176
|
-
}
|
|
177
|
-
});
|
|
178
|
-
};
|
|
179
|
-
/**
|
|
180
|
-
* check if the item is focusable
|
|
181
|
-
*/
|
|
182
|
-
this.isFocusableElement = (el) => {
|
|
183
|
-
return isTreeItemElement(el);
|
|
184
|
-
};
|
|
185
|
-
this.isSelectedElement = (el) => {
|
|
186
|
-
return el.selected;
|
|
187
|
-
};
|
|
188
|
-
}
|
|
189
|
-
slottedTreeItemsChanged() {
|
|
190
|
-
if (this.$fastController.isConnected) {
|
|
191
|
-
// update for slotted children change
|
|
192
|
-
this.setItems();
|
|
193
|
-
}
|
|
194
|
-
}
|
|
195
|
-
connectedCallback() {
|
|
196
|
-
super.connectedCallback();
|
|
197
|
-
this.setAttribute("tabindex", "0");
|
|
198
|
-
DOM.queueUpdate(() => {
|
|
199
|
-
this.setItems();
|
|
200
|
-
});
|
|
201
|
-
}
|
|
202
|
-
/**
|
|
203
|
-
* Handles click events bubbling up
|
|
204
|
-
*
|
|
205
|
-
* @internal
|
|
206
|
-
*/
|
|
207
|
-
handleClick(e) {
|
|
208
|
-
if (e.defaultPrevented) {
|
|
209
|
-
// handled, do nothing
|
|
210
|
-
return;
|
|
211
|
-
}
|
|
212
|
-
if (!(e.target instanceof Element) || !isTreeItemElement(e.target)) {
|
|
213
|
-
// not a tree item, ignore
|
|
214
|
-
return true;
|
|
215
|
-
}
|
|
216
|
-
const item = e.target;
|
|
217
|
-
if (!item.disabled) {
|
|
218
|
-
item.selected = !item.selected;
|
|
219
|
-
}
|
|
220
|
-
return;
|
|
221
|
-
}
|
|
222
|
-
/**
|
|
223
|
-
* Move focus to a tree item based on its offset from the provided item
|
|
224
|
-
*/
|
|
225
|
-
focusNextNode(delta, item) {
|
|
226
|
-
const visibleNodes = this.getVisibleNodes();
|
|
227
|
-
if (!visibleNodes) {
|
|
228
|
-
return;
|
|
229
|
-
}
|
|
230
|
-
const focusItem = visibleNodes[visibleNodes.indexOf(item) + delta];
|
|
231
|
-
if (isHTMLElement(focusItem)) {
|
|
232
|
-
TreeItem.focusItem(focusItem);
|
|
233
|
-
}
|
|
234
|
-
}
|
|
235
|
-
/**
|
|
236
|
-
* checks if there are any nested tree items
|
|
237
|
-
*/
|
|
238
|
-
getValidFocusableItem() {
|
|
239
|
-
const treeItems = this.getVisibleNodes();
|
|
240
|
-
// default to selected element if there is one
|
|
241
|
-
let focusIndex = treeItems.findIndex(this.isSelectedElement);
|
|
242
|
-
if (focusIndex === -1) {
|
|
243
|
-
// otherwise first focusable tree item
|
|
244
|
-
focusIndex = treeItems.findIndex(this.isFocusableElement);
|
|
245
|
-
}
|
|
246
|
-
if (focusIndex !== -1) {
|
|
247
|
-
return treeItems[focusIndex];
|
|
248
|
-
}
|
|
249
|
-
return null;
|
|
250
|
-
}
|
|
251
|
-
/**
|
|
252
|
-
* checks if there are any nested tree items
|
|
253
|
-
*/
|
|
254
|
-
checkForNestedItems() {
|
|
255
|
-
return this.slottedTreeItems.some((node) => {
|
|
256
|
-
return isTreeItemElement(node) && node.querySelector("[role='treeitem']");
|
|
257
|
-
});
|
|
258
|
-
}
|
|
259
|
-
getVisibleNodes() {
|
|
260
|
-
return getDisplayedNodes(this, "[role='treeitem']") || [];
|
|
5
|
+
var css_248z = "/**\n * Do not edit directly\n * Generated on Tue, 06 Jun 2023 10:38:32 GMT\n */\n.control {\n pointer-events: none;\n}\n\n.tooltip {\n width: var(--tooltip-inline-size, auto);\n}\n.tooltip-text {\n padding: 8px 12px;\n color: var(--vvd-color-canvas-text);\n font: var(--vvd-typography-base-bold);\n}";
|
|
6
|
+
|
|
7
|
+
var _Tooltip_instances, _Tooltip_anchorEl, _Tooltip_anchorUpdated, _Tooltip_addEventListener, _Tooltip_removeEventListener, _Tooltip_show, _Tooltip_hide, _Tooltip_closeOnEscape;
|
|
8
|
+
class Tooltip extends FoundationElement {
|
|
9
|
+
constructor() {
|
|
10
|
+
super(...arguments);
|
|
11
|
+
_Tooltip_instances.add(this);
|
|
12
|
+
_Tooltip_anchorEl.set(this, null);
|
|
13
|
+
this.open = false;
|
|
14
|
+
_Tooltip_show.set(this, () => {
|
|
15
|
+
this.open = true;
|
|
16
|
+
});
|
|
17
|
+
_Tooltip_hide.set(this, () => {
|
|
18
|
+
this.open = false;
|
|
19
|
+
});
|
|
20
|
+
_Tooltip_closeOnEscape.set(this, e => {
|
|
21
|
+
if (e.key === 'Escape') __classPrivateFieldGet(this, _Tooltip_hide, "f").call(this);
|
|
22
|
+
});
|
|
23
|
+
}
|
|
24
|
+
anchorChanged(_, newValue) {
|
|
25
|
+
if (__classPrivateFieldGet(this, _Tooltip_anchorEl, "f")) __classPrivateFieldGet(this, _Tooltip_instances, "m", _Tooltip_removeEventListener).call(this);
|
|
26
|
+
__classPrivateFieldSet(this, _Tooltip_anchorEl, newValue instanceof HTMLElement ? newValue : document.getElementById(newValue), "f");
|
|
27
|
+
if (__classPrivateFieldGet(this, _Tooltip_anchorEl, "f")) __classPrivateFieldGet(this, _Tooltip_instances, "m", _Tooltip_anchorUpdated).call(this);
|
|
28
|
+
}
|
|
29
|
+
disconnectedCallback() {
|
|
30
|
+
super.disconnectedCallback();
|
|
31
|
+
__classPrivateFieldGet(this, _Tooltip_instances, "m", _Tooltip_removeEventListener).call(this);
|
|
32
|
+
document.removeEventListener('keydown', __classPrivateFieldGet(this, _Tooltip_closeOnEscape, "f"));
|
|
33
|
+
}
|
|
34
|
+
openChanged(_, newValue) {
|
|
35
|
+
if (_ === undefined) return;
|
|
36
|
+
if (newValue) {
|
|
37
|
+
document.addEventListener('keydown', __classPrivateFieldGet(this, _Tooltip_closeOnEscape, "f"));
|
|
38
|
+
} else {
|
|
39
|
+
document.removeEventListener('keydown', __classPrivateFieldGet(this, _Tooltip_closeOnEscape, "f"));
|
|
261
40
|
}
|
|
41
|
+
}
|
|
262
42
|
}
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
43
|
+
_Tooltip_anchorEl = new WeakMap(), _Tooltip_show = new WeakMap(), _Tooltip_hide = new WeakMap(), _Tooltip_closeOnEscape = new WeakMap(), _Tooltip_instances = new WeakSet(), _Tooltip_anchorUpdated = function _Tooltip_anchorUpdated() {
|
|
44
|
+
__classPrivateFieldGet(this, _Tooltip_instances, "m", _Tooltip_removeEventListener).call(this);
|
|
45
|
+
__classPrivateFieldGet(this, _Tooltip_instances, "m", _Tooltip_addEventListener).call(this);
|
|
46
|
+
}, _Tooltip_addEventListener = function _Tooltip_addEventListener() {
|
|
47
|
+
if (__classPrivateFieldGet(this, _Tooltip_anchorEl, "f")) {
|
|
48
|
+
__classPrivateFieldGet(this, _Tooltip_anchorEl, "f").addEventListener('mouseover', __classPrivateFieldGet(this, _Tooltip_show, "f"));
|
|
49
|
+
__classPrivateFieldGet(this, _Tooltip_anchorEl, "f").addEventListener('mouseout', __classPrivateFieldGet(this, _Tooltip_hide, "f"));
|
|
50
|
+
__classPrivateFieldGet(this, _Tooltip_anchorEl, "f").addEventListener('focusin', __classPrivateFieldGet(this, _Tooltip_show, "f"));
|
|
51
|
+
__classPrivateFieldGet(this, _Tooltip_anchorEl, "f").addEventListener('focusout', __classPrivateFieldGet(this, _Tooltip_hide, "f"));
|
|
52
|
+
}
|
|
53
|
+
}, _Tooltip_removeEventListener = function _Tooltip_removeEventListener() {
|
|
54
|
+
var _a, _b, _c, _d;
|
|
55
|
+
(_a = __classPrivateFieldGet(this, _Tooltip_anchorEl, "f")) === null || _a === void 0 ? void 0 : _a.removeEventListener('mouseover', __classPrivateFieldGet(this, _Tooltip_show, "f"));
|
|
56
|
+
(_b = __classPrivateFieldGet(this, _Tooltip_anchorEl, "f")) === null || _b === void 0 ? void 0 : _b.removeEventListener('mouseout', __classPrivateFieldGet(this, _Tooltip_hide, "f"));
|
|
57
|
+
(_c = __classPrivateFieldGet(this, _Tooltip_anchorEl, "f")) === null || _c === void 0 ? void 0 : _c.removeEventListener('focusin', __classPrivateFieldGet(this, _Tooltip_show, "f"));
|
|
58
|
+
(_d = __classPrivateFieldGet(this, _Tooltip_anchorEl, "f")) === null || _d === void 0 ? void 0 : _d.removeEventListener('focusout', __classPrivateFieldGet(this, _Tooltip_hide, "f"));
|
|
59
|
+
};
|
|
60
|
+
__decorate([attr, __metadata("design:type", String)], Tooltip.prototype, "text", void 0);
|
|
61
|
+
__decorate([attr({
|
|
62
|
+
mode: 'fromView'
|
|
63
|
+
}), __metadata("design:type", String)], Tooltip.prototype, "placement", void 0);
|
|
64
|
+
__decorate([attr({
|
|
65
|
+
mode: 'boolean'
|
|
66
|
+
}), __metadata("design:type", Object)], Tooltip.prototype, "open", void 0);
|
|
67
|
+
__decorate([attr({
|
|
68
|
+
mode: 'fromView'
|
|
69
|
+
}), __metadata("design:type", Object)], Tooltip.prototype, "anchor", void 0);
|
|
276
70
|
|
|
277
|
-
let
|
|
71
|
+
let _ = t => t,
|
|
278
72
|
_t;
|
|
279
|
-
const getClasses =
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
73
|
+
const getClasses = ({
|
|
74
|
+
open
|
|
75
|
+
}) => classNames('control', ['open', Boolean(open)]);
|
|
76
|
+
const TooltipTemplate = context => {
|
|
77
|
+
const popupTag = context.tagFor(Popup);
|
|
78
|
+
return html(_t || (_t = _`
|
|
79
|
+
<${0} class="${0}" arrow alternate
|
|
80
|
+
:placement=${0}
|
|
81
|
+
:anchor="${0}"
|
|
82
|
+
:open=${0}
|
|
83
|
+
exportparts="vvd-theme-alternate">
|
|
84
|
+
<div class="tooltip" role="tooltip">
|
|
85
|
+
<header part="vvd-theme-alternate" class="tooltip-header">
|
|
86
|
+
<div class="tooltip-text">${0}</div>
|
|
87
|
+
</header>
|
|
88
|
+
</div>
|
|
89
|
+
</${0}>`), popupTag, getClasses, x => x.placement, x => x.anchor, x => x.open, x => x.text, popupTag);
|
|
295
90
|
};
|
|
296
91
|
|
|
297
|
-
const
|
|
298
|
-
baseName: '
|
|
299
|
-
template:
|
|
92
|
+
const tooltipDefinition = Tooltip.compose({
|
|
93
|
+
baseName: 'tooltip',
|
|
94
|
+
template: TooltipTemplate,
|
|
300
95
|
styles: css_248z
|
|
301
96
|
});
|
|
302
|
-
const
|
|
303
|
-
const
|
|
97
|
+
const tooltipRegistries = [tooltipDefinition(), ...popupRegistries];
|
|
98
|
+
const registerTooltip = registerFactory(tooltipRegistries);
|
|
304
99
|
|
|
305
|
-
export {
|
|
100
|
+
export { tooltipRegistries as a, registerTooltip as r, tooltipDefinition as t };
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
import { _ as __decorate, a as attr, b as __metadata, h as html, r as registerFactory } from './index.js';
|
|
2
|
+
import { i as iconRegistries } from './definition3.js';
|
|
3
|
+
import { f as focusRegistries } from './definition4.js';
|
|
4
|
+
import { b as AffixIcon, a as affixIconTemplateFactory } from './affix.js';
|
|
5
|
+
import { T as TreeItem$1 } from './tree-item.js';
|
|
6
|
+
import { a as applyMixins } from './apply-mixins.js';
|
|
7
|
+
import { I as Icon } from './icon.js';
|
|
8
|
+
import { f as focusTemplateFactory } from './focus2.js';
|
|
9
|
+
import { e as elements } from './node-observation.js';
|
|
10
|
+
import { w as when } from './when.js';
|
|
11
|
+
import { s as slotted } from './slotted.js';
|
|
12
|
+
import { c as children } from './children.js';
|
|
13
|
+
import { c as classNames } from './class-names.js';
|
|
14
|
+
import { r as ref } from './ref.js';
|
|
15
|
+
|
|
16
|
+
var css_248z = "/**\n * Do not edit directly\n * Generated on Tue, 06 Jun 2023 10:38:32 GMT\n */\n@supports selector(:focus-visible) {\n :host(:focus) {\n outline: none;\n }\n}\n.control {\n position: relative;\n display: inline-flex;\n box-sizing: border-box;\n align-items: center;\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: 12px;\n hyphens: auto;\n inline-size: 100%;\n min-block-size: calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density, 0), 2)));\n padding-inline: 16px;\n text-decoration: none;\n vertical-align: middle;\n word-break: break-word;\n}\n.control {\n --_appearance-color-text: var(--_connotation-color-primary);\n --_appearance-color-fill: transparent;\n --_appearance-color-outline: transparent;\n}\n.control:where(:disabled, .disabled) {\n --_appearance-color-text: var(--vvd-color-neutral-400);\n --_appearance-color-fill: transparent;\n --_appearance-color-outline: transparent;\n}\n.control: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.control: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.control:where(.selected, [aria-current]):where(:not(:disabled, .disabled, :hover, .hover)) {\n --_appearance-color-text: var(--_connotation-color-primary-text);\n --_appearance-color-fill: var(--_connotation-color-primary);\n --_appearance-color-outline: transparent;\n}\n.control:where(.selected, [aria-current]):where(:hover, .hover) {\n --_appearance-color-text: var(--_connotation-color-primary-text);\n --_appearance-color-fill: var(--_connotation-color-primary-increment);\n --_appearance-color-outline: transparent;\n}\n.control {\n /* @cssprop [--vvd-tree-item-accent-primary=var(--vvd-color-canvas-text)] */\n --_connotation-color-primary: var(--vvd-tree-item-accent-primary, var(--vvd-color-canvas-text));\n /* @cssprop [--vvd-tree-item-accent-primary-text=var(--vvd-color-canvas)] */\n --_connotation-color-primary-text: var(--vvd-tree-item-accent-primary-text, var(--vvd-color-canvas));\n /* @cssprop [--vvd-tree-item-accent-primary-increment=var(--vvd-color-neutral-800)] */\n --_connotation-color-primary-increment: var(--vvd-tree-item-accent-primary-increment, var(--vvd-color-neutral-800));\n /* @cssprop [--vvd-tree-item-accent-faint=var(--vvd-color-neutral-50)] */\n --_connotation-color-faint: var(--vvd-tree-item-accent-faint, var(--vvd-color-neutral-50));\n /* @cssprop [--vvd-tree-item-accent-soft=var(--vvd-color-neutral-100)] */\n --_connotation-color-soft: var(--vvd-tree-item-accent-soft, var(--vvd-color-neutral-100));\n}\n@supports selector(:focus-visible) {\n .control:focus {\n outline: none;\n }\n}\n@supports (user-select: none) {\n .control {\n user-select: none;\n }\n}\n.control:not(.disabled) {\n cursor: pointer;\n}\n.control.disabled {\n cursor: not-allowed;\n pointer-events: none;\n}\n.control .text {\n font: var(--vvd-typography-base);\n}\n\n.expandCollapseButton {\n display: flex;\n align-items: center;\n border-radius: 6px;\n font-size: 20px;\n}\n.expandCollapseButton .expandCollapseIcon {\n margin: 4px;\n}\n.expandCollapseButton:hover {\n background-color: var(--vvd-color-neutral-100);\n}\n\n.items {\n display: flex;\n flex-direction: column;\n gap: 4px;\n margin-block: 4px;\n padding-inline-start: 48px;\n}\n\n:host(:not(:focus-visible)) .focus-indicator {\n display: none;\n}\n\n.icon {\n font-size: 20px;\n line-height: 1;\n}\n.control:not(.disabled, .selected) .icon {\n color: var(--vvd-color-neutral-600);\n}";
|
|
17
|
+
|
|
18
|
+
class TreeItem extends TreeItem$1 {}
|
|
19
|
+
__decorate([attr, __metadata("design:type", String)], TreeItem.prototype, "text", void 0);
|
|
20
|
+
applyMixins(TreeItem, AffixIcon);
|
|
21
|
+
|
|
22
|
+
let _ = t => t,
|
|
23
|
+
_t,
|
|
24
|
+
_t2,
|
|
25
|
+
_t3;
|
|
26
|
+
const getClasses = ({
|
|
27
|
+
disabled,
|
|
28
|
+
selected
|
|
29
|
+
}) => classNames('control', ['disabled', disabled], ['selected', Boolean(selected)]);
|
|
30
|
+
const expandCollapseButton = context => {
|
|
31
|
+
const iconTag = context.tagFor(Icon);
|
|
32
|
+
return html(_t || (_t = _`
|
|
33
|
+
<div aria-hidden="true"
|
|
34
|
+
class="expandCollapseButton"
|
|
35
|
+
@click="${0}"
|
|
36
|
+
${0}
|
|
37
|
+
>
|
|
38
|
+
<${0} class="expandCollapseIcon" name="${0}"></${0}>
|
|
39
|
+
</div>`), (x, c) => x.handleExpandCollapseButtonClick(c.event), ref('expandCollapseButton'), iconTag, x => x.expanded ? 'chevron-down-line' : 'chevron-right-line', iconTag);
|
|
40
|
+
};
|
|
41
|
+
const TreeItemTemplate = context => {
|
|
42
|
+
const affixIconTemplate = affixIconTemplateFactory(context);
|
|
43
|
+
const focusTemplate = focusTemplateFactory(context);
|
|
44
|
+
return html(_t2 || (_t2 = _`
|
|
45
|
+
<template
|
|
46
|
+
role="treeitem"
|
|
47
|
+
slot="${0}"
|
|
48
|
+
tabindex="-1"
|
|
49
|
+
aria-expanded="${0}"
|
|
50
|
+
aria-selected="${0}"
|
|
51
|
+
aria-disabled="${0}"
|
|
52
|
+
@focusin="${0}"
|
|
53
|
+
@focusout="${0}"
|
|
54
|
+
${0}
|
|
55
|
+
>
|
|
56
|
+
<div class="${0}">
|
|
57
|
+
${0}
|
|
58
|
+
${0}
|
|
59
|
+
${0}
|
|
60
|
+
${0}
|
|
61
|
+
</div>
|
|
62
|
+
${0}
|
|
63
|
+
</template>`), x => x.isNestedItem() ? 'item' : void 0, x => x.childItems && x.childItems.length > 0 ? x.expanded : void 0, x => x.selected, x => x.disabled, (x, c) => x.handleFocus(c.event), (x, c) => x.handleBlur(c.event), children({
|
|
64
|
+
property: 'childItems',
|
|
65
|
+
filter: elements()
|
|
66
|
+
}), getClasses, () => focusTemplate, when(x => x.childItems && x.childItems.length > 0, expandCollapseButton(context)), x => affixIconTemplate(x.icon), x => x.text, when(x => x.childItems && x.childItems.length > 0 && x.expanded, html(_t3 || (_t3 = _`
|
|
67
|
+
<div role="group" class="items">
|
|
68
|
+
<slot name="item" ${0}></slot>
|
|
69
|
+
</div>`), slotted('items'))));
|
|
70
|
+
};
|
|
71
|
+
|
|
72
|
+
const treeItemDefinition = TreeItem.compose({
|
|
73
|
+
baseName: 'tree-item',
|
|
74
|
+
template: TreeItemTemplate,
|
|
75
|
+
styles: css_248z
|
|
76
|
+
});
|
|
77
|
+
const treeItemRegistries = [treeItemDefinition(), ...iconRegistries, ...focusRegistries];
|
|
78
|
+
const registerTreeItem = registerFactory(treeItemRegistries);
|
|
79
|
+
|
|
80
|
+
export { treeItemRegistries as a, registerTreeItem as r, treeItemDefinition as t };
|