@threadlabs/looma 0.6.4 → 0.6.5
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/package.json +2 -2
- package/styles/ui-affordance-scope.css +1 -1
- package/styles/ui-avatar-group.css +1 -1
- package/styles/ui-avatar.css +1 -1
- package/styles/ui-badge.css +1 -1
- package/styles/ui-button.css +1 -1
- package/styles/ui-callout.css +1 -1
- package/styles/ui-checkbox.css +1 -1
- package/styles/ui-cluster.css +1 -1
- package/styles/ui-combobox.css +1 -1
- package/styles/ui-container.css +1 -1
- package/styles/ui-context-menu.css +1 -1
- package/styles/ui-dialog.css +1 -1
- package/styles/ui-disclosure.css +1 -1
- package/styles/ui-editable.css +1 -1
- package/styles/ui-editor-insert-table-grid.css +1 -1
- package/styles/ui-editor-mention-menu.css +1 -1
- package/styles/ui-editor-slash-menu.css +1 -1
- package/styles/ui-editor-table-context-menu.css +1 -1
- package/styles/ui-editor-table-overlay.css +1 -1
- package/styles/ui-editor-table-toolbar.css +1 -1
- package/styles/ui-editor-toolbar.css +1 -1
- package/styles/ui-floating-action-button.css +1 -1
- package/styles/ui-form-field.css +1 -1
- package/styles/ui-grid.css +1 -1
- package/styles/ui-icon-button.css +1 -1
- package/styles/ui-icon.css +1 -1
- package/styles/ui-input.css +1 -1
- package/styles/ui-menu-item.css +1 -1
- package/styles/ui-menu.css +1 -1
- package/styles/ui-popover.css +1 -1
- package/styles/ui-radio-group.css +1 -1
- package/styles/ui-radio.css +1 -1
- package/styles/ui-reel.css +1 -1
- package/styles/ui-search-result-row.css +1 -1
- package/styles/ui-search-shell.css +1 -1
- package/styles/ui-select.css +1 -1
- package/styles/ui-separator.css +1 -1
- package/styles/ui-sidebar.css +1 -1
- package/styles/ui-stack.css +1 -1
- package/styles/ui-switch.css +1 -1
- package/styles/ui-switcher.css +1 -1
- package/styles/ui-tabs.css +1 -1
- package/styles/ui-textarea.css +1 -1
- package/styles/ui-toast-region.css +1 -1
- package/styles/ui-tooltip.css +1 -1
- package/styles/ui-top-bar.css +1 -1
- package/styles/ui-tree-item.css +1 -1
- package/styles/ui-tree.css +1 -1
- package/vanilla/UiAffordanceScope.d.ts +1 -1
- package/vanilla/UiAffordanceScope.js +1 -1
- package/vanilla/UiAvatar.d.ts +1 -1
- package/vanilla/UiAvatar.js +1 -1
- package/vanilla/UiAvatarGroup.d.ts +1 -1
- package/vanilla/UiAvatarGroup.js +1 -1
- package/vanilla/UiBadge.d.ts +1 -1
- package/vanilla/UiBadge.js +1 -1
- package/vanilla/UiButton.d.ts +1 -1
- package/vanilla/UiButton.js +1 -1
- package/vanilla/UiCallout.d.ts +1 -1
- package/vanilla/UiCallout.js +1 -1
- package/vanilla/UiCheckbox.d.ts +1 -1
- package/vanilla/UiCheckbox.js +1 -1
- package/vanilla/UiCluster.d.ts +1 -1
- package/vanilla/UiCluster.js +1 -1
- package/vanilla/UiCombobox.d.ts +1 -1
- package/vanilla/UiCombobox.js +1 -1
- package/vanilla/UiContainer.d.ts +1 -1
- package/vanilla/UiContainer.js +1 -1
- package/vanilla/UiContextMenu.d.ts +1 -1
- package/vanilla/UiContextMenu.js +1 -1
- package/vanilla/UiDialog.d.ts +1 -1
- package/vanilla/UiDialog.js +1 -1
- package/vanilla/UiDisclosure.d.ts +1 -1
- package/vanilla/UiDisclosure.js +1 -1
- package/vanilla/UiEditable.d.ts +1 -1
- package/vanilla/UiEditable.js +1 -1
- package/vanilla/UiEditorInsertTableGrid.d.ts +1 -1
- package/vanilla/UiEditorInsertTableGrid.js +1 -1
- package/vanilla/UiEditorMentionMenu.d.ts +1 -1
- package/vanilla/UiEditorMentionMenu.js +1 -1
- package/vanilla/UiEditorSlashMenu.d.ts +1 -1
- package/vanilla/UiEditorSlashMenu.js +1 -1
- package/vanilla/UiEditorTableContextMenu.d.ts +1 -1
- package/vanilla/UiEditorTableContextMenu.js +1 -1
- package/vanilla/UiEditorTableOverlay.d.ts +1 -1
- package/vanilla/UiEditorTableOverlay.js +1 -1
- package/vanilla/UiEditorTableToolbar.d.ts +1 -1
- package/vanilla/UiEditorTableToolbar.js +1 -1
- package/vanilla/UiEditorToolbar.d.ts +1 -1
- package/vanilla/UiEditorToolbar.js +1 -1
- package/vanilla/UiFloatingActionButton.d.ts +1 -1
- package/vanilla/UiFloatingActionButton.js +1 -1
- package/vanilla/UiFormField.d.ts +1 -1
- package/vanilla/UiFormField.js +1 -1
- package/vanilla/UiGrid.d.ts +1 -1
- package/vanilla/UiGrid.js +1 -1
- package/vanilla/UiIcon.d.ts +1 -1
- package/vanilla/UiIcon.js +1 -1
- package/vanilla/UiIconButton.d.ts +1 -1
- package/vanilla/UiIconButton.js +1 -1
- package/vanilla/UiInput.d.ts +1 -1
- package/vanilla/UiInput.js +1 -1
- package/vanilla/UiMenu.d.ts +1 -1
- package/vanilla/UiMenu.js +1 -1
- package/vanilla/UiMenuItem.d.ts +1 -1
- package/vanilla/UiMenuItem.js +1 -1
- package/vanilla/UiPopover.d.ts +1 -1
- package/vanilla/UiPopover.js +1 -1
- package/vanilla/UiRadio.d.ts +1 -1
- package/vanilla/UiRadio.js +1 -1
- package/vanilla/UiRadioGroup.d.ts +1 -1
- package/vanilla/UiRadioGroup.js +1 -1
- package/vanilla/UiReel.d.ts +1 -1
- package/vanilla/UiReel.js +1 -1
- package/vanilla/UiSearchResultRow.d.ts +1 -1
- package/vanilla/UiSearchResultRow.js +1 -1
- package/vanilla/UiSearchShell.d.ts +1 -1
- package/vanilla/UiSearchShell.js +1 -1
- package/vanilla/UiSelect.d.ts +1 -1
- package/vanilla/UiSelect.js +1 -1
- package/vanilla/UiSeparator.d.ts +1 -1
- package/vanilla/UiSeparator.js +1 -1
- package/vanilla/UiSidebar.d.ts +1 -1
- package/vanilla/UiSidebar.js +1 -1
- package/vanilla/UiStack.d.ts +1 -1
- package/vanilla/UiStack.js +1 -1
- package/vanilla/UiSwitch.d.ts +1 -1
- package/vanilla/UiSwitch.js +1 -1
- package/vanilla/UiSwitcher.d.ts +1 -1
- package/vanilla/UiSwitcher.js +1 -1
- package/vanilla/UiTabs.d.ts +1 -1
- package/vanilla/UiTabs.js +1 -1
- package/vanilla/UiTextarea.d.ts +1 -1
- package/vanilla/UiTextarea.js +1 -1
- package/vanilla/UiToastRegion.d.ts +1 -1
- package/vanilla/UiToastRegion.js +1 -1
- package/vanilla/UiTooltip.d.ts +1 -1
- package/vanilla/UiTooltip.js +1 -1
- package/vanilla/UiTopBar.d.ts +1 -1
- package/vanilla/UiTopBar.js +1 -1
- package/vanilla/UiTree.d.ts +1 -1
- package/vanilla/UiTree.js +1 -1
- package/vanilla/UiTreeItem.d.ts +1 -1
- package/vanilla/UiTreeItem.js +1 -1
- package/vue/UiAffordanceScope.vue +8 -84
- package/vue/UiAvatar.d.ts +1 -1
- package/vue/UiAvatar.vue +9 -106
- package/vue/UiAvatarGroup.vue +9 -96
- package/vue/UiBadge.vue +1 -1
- package/vue/UiButton.vue +1 -1
- package/vue/UiCallout.vue +1 -1
- package/vue/UiCheckbox.vue +22 -123
- package/vue/UiCluster.vue +1 -1
- package/vue/UiCombobox.d.ts +1 -1
- package/vue/UiCombobox.vue +224 -475
- package/vue/UiContainer.vue +1 -1
- package/vue/UiContextMenu.vue +34 -141
- package/vue/UiDialog.vue +25 -126
- package/vue/UiDisclosure.vue +26 -138
- package/vue/UiEditable.vue +46 -158
- package/vue/UiEditorInsertTableGrid.vue +19 -138
- package/vue/UiEditorMentionMenu.vue +17 -124
- package/vue/UiEditorSlashMenu.vue +17 -109
- package/vue/UiEditorTableContextMenu.vue +34 -122
- package/vue/UiEditorTableOverlay.vue +61 -167
- package/vue/UiEditorTableToolbar.vue +34 -142
- package/vue/UiEditorToolbar.vue +1 -1
- package/vue/UiFloatingActionButton.vue +1 -1
- package/vue/UiFormField.vue +7 -79
- package/vue/UiGrid.vue +1 -1
- package/vue/UiIcon.vue +8 -84
- package/vue/UiIconButton.vue +7 -79
- package/vue/UiInput.vue +7 -79
- package/vue/UiMenu.vue +42 -127
- package/vue/UiMenuItem.vue +1 -1
- package/vue/UiPopover.vue +25 -121
- package/vue/UiRadio.vue +22 -123
- package/vue/UiRadioGroup.d.ts +1 -1
- package/vue/UiRadioGroup.vue +32 -119
- package/vue/UiReel.vue +1 -1
- package/vue/UiSearchResultRow.vue +1 -1
- package/vue/UiSearchShell.vue +25 -121
- package/vue/UiSelect.vue +7 -79
- package/vue/UiSeparator.vue +1 -1
- package/vue/UiSidebar.vue +32 -133
- package/vue/UiStack.vue +1 -1
- package/vue/UiSwitch.vue +22 -123
- package/vue/UiSwitcher.vue +1 -1
- package/vue/UiTabs.vue +24 -128
- package/vue/UiTextarea.vue +7 -79
- package/vue/UiToastRegion.vue +37 -126
- package/vue/UiTooltip.vue +25 -124
- package/vue/UiTopBar.vue +1 -1
- package/vue/UiTree.vue +56 -137
- package/vue/UiTreeItem.vue +28 -144
- package/vue/chunks/UiAffordanceScope.js +9 -78
- package/vue/chunks/UiAvatar.js +13 -89
- package/vue/chunks/UiAvatarGroup.js +10 -80
- package/vue/chunks/UiBadge.js +1 -1
- package/vue/chunks/UiButton.js +1 -1
- package/vue/chunks/UiCallout.js +1 -1
- package/vue/chunks/UiCheckbox.js +17 -95
- package/vue/chunks/UiCluster.js +1 -1
- package/vue/chunks/UiCombobox.js +114 -325
- package/vue/chunks/UiContainer.js +1 -1
- package/vue/chunks/UiContextMenu.js +21 -113
- package/vue/chunks/UiDialog.js +20 -99
- package/vue/chunks/UiDisclosure.js +22 -112
- package/vue/chunks/UiEditable.js +32 -128
- package/vue/chunks/UiEditorInsertTableGrid.js +22 -116
- package/vue/chunks/UiEditorMentionMenu.js +18 -116
- package/vue/chunks/UiEditorSlashMenu.js +15 -101
- package/vue/chunks/UiEditorTableContextMenu.js +12 -91
- package/vue/chunks/UiEditorTableOverlay.js +29 -120
- package/vue/chunks/UiEditorTableToolbar.js +16 -111
- package/vue/chunks/UiEditorToolbar.js +1 -1
- package/vue/chunks/UiFloatingActionButton.js +1 -1
- package/vue/chunks/UiFormField.js +8 -73
- package/vue/chunks/UiGrid.js +1 -1
- package/vue/chunks/UiIcon.js +9 -78
- package/vue/chunks/UiIconButton.js +8 -73
- package/vue/chunks/UiInput.js +8 -73
- package/vue/chunks/UiMenu.js +25 -111
- package/vue/chunks/UiMenuItem.js +1 -1
- package/vue/chunks/UiPopover.js +18 -105
- package/vue/chunks/UiRadio.js +17 -95
- package/vue/chunks/UiRadioGroup.js +23 -105
- package/vue/chunks/UiReel.js +1 -1
- package/vue/chunks/UiSearchResultRow.js +1 -1
- package/vue/chunks/UiSearchShell.js +17 -94
- package/vue/chunks/UiSelect.js +8 -73
- package/vue/chunks/UiSeparator.js +1 -1
- package/vue/chunks/UiSidebar.js +23 -108
- package/vue/chunks/UiStack.js +1 -1
- package/vue/chunks/UiSwitch.js +17 -95
- package/vue/chunks/UiSwitcher.js +1 -1
- package/vue/chunks/UiTabs.js +22 -103
- package/vue/chunks/UiTextarea.js +8 -73
- package/vue/chunks/UiToastRegion.js +27 -112
- package/vue/chunks/UiTooltip.js +18 -106
- package/vue/chunks/UiTopBar.js +1 -1
- package/vue/chunks/UiTree.js +31 -109
- package/vue/chunks/UiTreeItem.js +29 -119
- package/vue/chunks/host.js +101 -0
- package/vue/components.css +706 -706
- package/vue/host.ts +154 -0
|
@@ -1,5 +1,6 @@
|
|
|
1
|
+
import { n as useComponentHost, t as createDispatch } from "./host.js";
|
|
1
2
|
import { t as _plugin_vue_export_helper_default } from "./_plugin-vue_export-helper.js";
|
|
2
|
-
import { computed, createElementBlock, defineComponent, mergeProps,
|
|
3
|
+
import { computed, createElementBlock, defineComponent, mergeProps, openBlock, ref, renderSlot } from "vue";
|
|
3
4
|
import * as controllerModule from "@threadlabs/looma/components/ui-affordance-scope/ui-affordance-scope.js";
|
|
4
5
|
//#region .build/vue/UiAffordanceScope.vue?vue&type=script&setup=true&lang.ts
|
|
5
6
|
var _hoisted_1 = ["data-ui-affordance-scope-state"];
|
|
@@ -15,82 +16,12 @@ var UiAffordanceScope_default = /*#__PURE__*/ _plugin_vue_export_helper_default(
|
|
|
15
16
|
const engaged = ref(false);
|
|
16
17
|
/** The values the styles' :host-state() rules test. */
|
|
17
18
|
const hostState = computed(() => [engaged.value && "engaged"].filter(Boolean).join(" "));
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
})) ?? true;
|
|
25
|
-
}
|
|
26
|
-
function read(name) {
|
|
27
|
-
if (name === "engaged") return engaged.value;
|
|
28
|
-
return props[name];
|
|
29
|
-
}
|
|
30
|
-
function write(name, value) {
|
|
31
|
-
if (name === "engaged") {
|
|
32
|
-
engaged.value = value;
|
|
33
|
-
return true;
|
|
34
|
-
}
|
|
35
|
-
throw new TypeError(`Only declared state is writable; \`${name}\` is not.`);
|
|
36
|
-
}
|
|
37
|
-
const stops = [];
|
|
38
|
-
const host = {
|
|
39
|
-
get element() {
|
|
40
|
-
return root.value;
|
|
41
|
-
},
|
|
42
|
-
state: new Proxy({}, {
|
|
43
|
-
get: (_target, name) => typeof name === "string" ? read(name) : void 0,
|
|
44
|
-
set: (_target, name, value) => typeof name === "string" && write(name, value)
|
|
45
|
-
}),
|
|
46
|
-
refs: {},
|
|
47
|
-
elements: new Proxy({}, { get: (_target, name) => {
|
|
48
|
-
if (typeof name !== "string" || root.value === null) return void 0;
|
|
49
|
-
return (root.value instanceof HTMLFormElement ? root.value : root.value.querySelector("form"))?.elements.namedItem(name) ?? root.value.querySelector(`[name="${CSS.escape(name)}"]`) ?? void 0;
|
|
50
|
-
} }),
|
|
51
|
-
signal(initialValue) {
|
|
52
|
-
const value = shallowRef(initialValue);
|
|
53
|
-
return {
|
|
54
|
-
get: () => value.value,
|
|
55
|
-
set: (next) => {
|
|
56
|
-
if (!Object.is(value.value, next)) value.value = next;
|
|
57
|
-
},
|
|
58
|
-
update: (next) => {
|
|
59
|
-
const updated = next(value.value);
|
|
60
|
-
if (!Object.is(value.value, updated)) value.value = updated;
|
|
61
|
-
}
|
|
62
|
-
};
|
|
63
|
-
},
|
|
64
|
-
computed(compute) {
|
|
65
|
-
const value = computed(compute);
|
|
66
|
-
return { get: () => value.value };
|
|
67
|
-
},
|
|
68
|
-
effect(run) {
|
|
69
|
-
const stop = watchEffect((onCleanup) => {
|
|
70
|
-
const cleanup = run();
|
|
71
|
-
if (typeof cleanup === "function") onCleanup(cleanup);
|
|
72
|
-
}, { flush: "post" });
|
|
73
|
-
stops.push(stop);
|
|
74
|
-
return stop;
|
|
75
|
-
},
|
|
76
|
-
on(event, listener) {
|
|
77
|
-
const element = root.value;
|
|
78
|
-
element?.addEventListener(event, listener);
|
|
79
|
-
const off = () => element?.removeEventListener(event, listener);
|
|
80
|
-
stops.push(off);
|
|
81
|
-
return off;
|
|
82
|
-
},
|
|
83
|
-
dispatch
|
|
84
|
-
};
|
|
85
|
-
let cleanup;
|
|
86
|
-
onMounted(() => {
|
|
87
|
-
Promise.resolve(controllerModule.default(host)).then((result) => {
|
|
88
|
-
cleanup = result;
|
|
89
|
-
});
|
|
90
|
-
});
|
|
91
|
-
onBeforeUnmount(() => {
|
|
92
|
-
for (const stop of stops.splice(0)) stop();
|
|
93
|
-
if (typeof cleanup === "function") cleanup();
|
|
19
|
+
const dispatch = createDispatch(root);
|
|
20
|
+
useComponentHost(controllerModule.default, {
|
|
21
|
+
root,
|
|
22
|
+
dispatch,
|
|
23
|
+
props,
|
|
24
|
+
state: { engaged }
|
|
94
25
|
});
|
|
95
26
|
return (_ctx, _cache) => {
|
|
96
27
|
return openBlock(), createElementBlock("span", mergeProps({ "data-component": "ui-affordance-scope" }, _ctx.$attrs, {
|
|
@@ -100,6 +31,6 @@ var UiAffordanceScope_default = /*#__PURE__*/ _plugin_vue_export_helper_default(
|
|
|
100
31
|
}), [renderSlot(_ctx.$slots, "default", {}, void 0, true)], 16, _hoisted_1);
|
|
101
32
|
};
|
|
102
33
|
}
|
|
103
|
-
}), [["__scopeId", "data-v-
|
|
34
|
+
}), [["__scopeId", "data-v-c1d56d8d"]]);
|
|
104
35
|
//#endregion
|
|
105
36
|
export { UiAffordanceScope_default as t };
|
package/vue/chunks/UiAvatar.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
|
+
import { n as useComponentHost, t as createDispatch } from "./host.js";
|
|
1
2
|
import { t as _plugin_vue_export_helper_default } from "./_plugin-vue_export-helper.js";
|
|
2
|
-
import {
|
|
3
|
+
import { createElementBlock, createElementVNode, defineComponent, mergeProps, openBlock, ref, renderSlot, toDisplayString, useTemplateRef } from "vue";
|
|
3
4
|
import * as controllerModule from "@threadlabs/looma/components/ui-avatar/ui-avatar.js";
|
|
4
5
|
//#region .build/vue/UiAvatar.vue?vue&type=script&setup=true&lang.ts
|
|
5
6
|
var _hoisted_1 = ["src", "hidden"];
|
|
@@ -22,94 +23,17 @@ var UiAvatar_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PUR
|
|
|
22
23
|
const hasImage = ref(false);
|
|
23
24
|
const hasAuthoredImage = ref(false);
|
|
24
25
|
const initials = ref("?");
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
if (name === "hasAuthoredImage") return hasAuthoredImage.value;
|
|
36
|
-
if (name === "initials") return initials.value;
|
|
37
|
-
return props[name];
|
|
38
|
-
}
|
|
39
|
-
function write(name, value) {
|
|
40
|
-
if (name === "hasImage") {
|
|
41
|
-
hasImage.value = value;
|
|
42
|
-
return true;
|
|
26
|
+
const dispatch = createDispatch(root);
|
|
27
|
+
useComponentHost(controllerModule.default, {
|
|
28
|
+
root,
|
|
29
|
+
dispatch,
|
|
30
|
+
props,
|
|
31
|
+
refs: { image: imageElement },
|
|
32
|
+
state: {
|
|
33
|
+
hasImage,
|
|
34
|
+
hasAuthoredImage,
|
|
35
|
+
initials
|
|
43
36
|
}
|
|
44
|
-
if (name === "hasAuthoredImage") {
|
|
45
|
-
hasAuthoredImage.value = value;
|
|
46
|
-
return true;
|
|
47
|
-
}
|
|
48
|
-
if (name === "initials") {
|
|
49
|
-
initials.value = value;
|
|
50
|
-
return true;
|
|
51
|
-
}
|
|
52
|
-
throw new TypeError(`Only declared state is writable; \`${name}\` is not.`);
|
|
53
|
-
}
|
|
54
|
-
const stops = [];
|
|
55
|
-
const host = {
|
|
56
|
-
get element() {
|
|
57
|
-
return root.value;
|
|
58
|
-
},
|
|
59
|
-
state: new Proxy({}, {
|
|
60
|
-
get: (_target, name) => typeof name === "string" ? read(name) : void 0,
|
|
61
|
-
set: (_target, name, value) => typeof name === "string" && write(name, value)
|
|
62
|
-
}),
|
|
63
|
-
refs: { get image() {
|
|
64
|
-
return imageElement.value;
|
|
65
|
-
} },
|
|
66
|
-
elements: new Proxy({}, { get: (_target, name) => {
|
|
67
|
-
if (typeof name !== "string" || root.value === null) return void 0;
|
|
68
|
-
return (root.value instanceof HTMLFormElement ? root.value : root.value.querySelector("form"))?.elements.namedItem(name) ?? root.value.querySelector(`[name="${CSS.escape(name)}"]`) ?? void 0;
|
|
69
|
-
} }),
|
|
70
|
-
signal(initialValue) {
|
|
71
|
-
const value = shallowRef(initialValue);
|
|
72
|
-
return {
|
|
73
|
-
get: () => value.value,
|
|
74
|
-
set: (next) => {
|
|
75
|
-
if (!Object.is(value.value, next)) value.value = next;
|
|
76
|
-
},
|
|
77
|
-
update: (next) => {
|
|
78
|
-
const updated = next(value.value);
|
|
79
|
-
if (!Object.is(value.value, updated)) value.value = updated;
|
|
80
|
-
}
|
|
81
|
-
};
|
|
82
|
-
},
|
|
83
|
-
computed(compute) {
|
|
84
|
-
const value = computed(compute);
|
|
85
|
-
return { get: () => value.value };
|
|
86
|
-
},
|
|
87
|
-
effect(run) {
|
|
88
|
-
const stop = watchEffect((onCleanup) => {
|
|
89
|
-
const cleanup = run();
|
|
90
|
-
if (typeof cleanup === "function") onCleanup(cleanup);
|
|
91
|
-
}, { flush: "post" });
|
|
92
|
-
stops.push(stop);
|
|
93
|
-
return stop;
|
|
94
|
-
},
|
|
95
|
-
on(event, listener) {
|
|
96
|
-
const element = root.value;
|
|
97
|
-
element?.addEventListener(event, listener);
|
|
98
|
-
const off = () => element?.removeEventListener(event, listener);
|
|
99
|
-
stops.push(off);
|
|
100
|
-
return off;
|
|
101
|
-
},
|
|
102
|
-
dispatch
|
|
103
|
-
};
|
|
104
|
-
let cleanup;
|
|
105
|
-
onMounted(() => {
|
|
106
|
-
Promise.resolve(controllerModule.default(host)).then((result) => {
|
|
107
|
-
cleanup = result;
|
|
108
|
-
});
|
|
109
|
-
});
|
|
110
|
-
onBeforeUnmount(() => {
|
|
111
|
-
for (const stop of stops.splice(0)) stop();
|
|
112
|
-
if (typeof cleanup === "function") cleanup();
|
|
113
37
|
});
|
|
114
38
|
return (_ctx, _cache) => {
|
|
115
39
|
return openBlock(), createElementBlock("span", mergeProps({ "data-component": "ui-avatar" }, _ctx.$attrs, {
|
|
@@ -133,6 +57,6 @@ var UiAvatar_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PUR
|
|
|
133
57
|
], 16);
|
|
134
58
|
};
|
|
135
59
|
}
|
|
136
|
-
}), [["__scopeId", "data-v-
|
|
60
|
+
}), [["__scopeId", "data-v-64e52bdd"]]);
|
|
137
61
|
//#endregion
|
|
138
62
|
export { UiAvatar_default as t };
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
+
import { n as useComponentHost, t as createDispatch } from "./host.js";
|
|
1
2
|
import { t as _plugin_vue_export_helper_default } from "./_plugin-vue_export-helper.js";
|
|
2
|
-
import {
|
|
3
|
+
import { createElementBlock, createElementVNode, defineComponent, mergeProps, openBlock, ref, renderSlot, toDisplayString, useTemplateRef } from "vue";
|
|
3
4
|
import * as controllerModule from "@threadlabs/looma/components/ui-avatar-group/ui-avatar-group.js";
|
|
4
5
|
//#region .build/vue/UiAvatarGroup.vue?vue&type=script&setup=true&lang.ts
|
|
5
6
|
var _hoisted_1 = ["aria-label"];
|
|
@@ -18,84 +19,13 @@ var UiAvatarGroup_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @
|
|
|
18
19
|
const root = ref(null);
|
|
19
20
|
const overflowElement = useTemplateRef("overflow");
|
|
20
21
|
const overflowCount = ref(0);
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
}
|
|
29
|
-
function read(name) {
|
|
30
|
-
if (name === "overflowCount") return overflowCount.value;
|
|
31
|
-
return props[name];
|
|
32
|
-
}
|
|
33
|
-
function write(name, value) {
|
|
34
|
-
if (name === "overflowCount") {
|
|
35
|
-
overflowCount.value = value;
|
|
36
|
-
return true;
|
|
37
|
-
}
|
|
38
|
-
throw new TypeError(`Only declared state is writable; \`${name}\` is not.`);
|
|
39
|
-
}
|
|
40
|
-
const stops = [];
|
|
41
|
-
const host = {
|
|
42
|
-
get element() {
|
|
43
|
-
return root.value;
|
|
44
|
-
},
|
|
45
|
-
state: new Proxy({}, {
|
|
46
|
-
get: (_target, name) => typeof name === "string" ? read(name) : void 0,
|
|
47
|
-
set: (_target, name, value) => typeof name === "string" && write(name, value)
|
|
48
|
-
}),
|
|
49
|
-
refs: { get overflow() {
|
|
50
|
-
return overflowElement.value;
|
|
51
|
-
} },
|
|
52
|
-
elements: new Proxy({}, { get: (_target, name) => {
|
|
53
|
-
if (typeof name !== "string" || root.value === null) return void 0;
|
|
54
|
-
return (root.value instanceof HTMLFormElement ? root.value : root.value.querySelector("form"))?.elements.namedItem(name) ?? root.value.querySelector(`[name="${CSS.escape(name)}"]`) ?? void 0;
|
|
55
|
-
} }),
|
|
56
|
-
signal(initialValue) {
|
|
57
|
-
const value = shallowRef(initialValue);
|
|
58
|
-
return {
|
|
59
|
-
get: () => value.value,
|
|
60
|
-
set: (next) => {
|
|
61
|
-
if (!Object.is(value.value, next)) value.value = next;
|
|
62
|
-
},
|
|
63
|
-
update: (next) => {
|
|
64
|
-
const updated = next(value.value);
|
|
65
|
-
if (!Object.is(value.value, updated)) value.value = updated;
|
|
66
|
-
}
|
|
67
|
-
};
|
|
68
|
-
},
|
|
69
|
-
computed(compute) {
|
|
70
|
-
const value = computed(compute);
|
|
71
|
-
return { get: () => value.value };
|
|
72
|
-
},
|
|
73
|
-
effect(run) {
|
|
74
|
-
const stop = watchEffect((onCleanup) => {
|
|
75
|
-
const cleanup = run();
|
|
76
|
-
if (typeof cleanup === "function") onCleanup(cleanup);
|
|
77
|
-
}, { flush: "post" });
|
|
78
|
-
stops.push(stop);
|
|
79
|
-
return stop;
|
|
80
|
-
},
|
|
81
|
-
on(event, listener) {
|
|
82
|
-
const element = root.value;
|
|
83
|
-
element?.addEventListener(event, listener);
|
|
84
|
-
const off = () => element?.removeEventListener(event, listener);
|
|
85
|
-
stops.push(off);
|
|
86
|
-
return off;
|
|
87
|
-
},
|
|
88
|
-
dispatch
|
|
89
|
-
};
|
|
90
|
-
let cleanup;
|
|
91
|
-
onMounted(() => {
|
|
92
|
-
Promise.resolve(controllerModule.default(host)).then((result) => {
|
|
93
|
-
cleanup = result;
|
|
94
|
-
});
|
|
95
|
-
});
|
|
96
|
-
onBeforeUnmount(() => {
|
|
97
|
-
for (const stop of stops.splice(0)) stop();
|
|
98
|
-
if (typeof cleanup === "function") cleanup();
|
|
22
|
+
const dispatch = createDispatch(root);
|
|
23
|
+
useComponentHost(controllerModule.default, {
|
|
24
|
+
root,
|
|
25
|
+
dispatch,
|
|
26
|
+
props,
|
|
27
|
+
refs: { overflow: overflowElement },
|
|
28
|
+
state: { overflowCount }
|
|
99
29
|
});
|
|
100
30
|
return (_ctx, _cache) => {
|
|
101
31
|
return openBlock(), createElementBlock("div", mergeProps({
|
|
@@ -114,6 +44,6 @@ var UiAvatarGroup_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @
|
|
|
114
44
|
}, toDisplayString(`+${overflowCount.value}`), 9, _hoisted_2)], 16, _hoisted_1);
|
|
115
45
|
};
|
|
116
46
|
}
|
|
117
|
-
}), [["__scopeId", "data-v-
|
|
47
|
+
}), [["__scopeId", "data-v-cbb93f58"]]);
|
|
118
48
|
//#endregion
|
|
119
49
|
export { UiAvatarGroup_default as t };
|
package/vue/chunks/UiBadge.js
CHANGED
|
@@ -19,6 +19,6 @@ var UiBadge_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE
|
|
|
19
19
|
return openBlock(), createElementBlock("span", mergeProps({ "data-component": "ui-badge" }, _ctx.$attrs, { "data-ui-badge-state": hostState.value || void 0 }), [renderSlot(_ctx.$slots, "default", {}, void 0, true)], 16, _hoisted_1);
|
|
20
20
|
};
|
|
21
21
|
}
|
|
22
|
-
}), [["__scopeId", "data-v-
|
|
22
|
+
}), [["__scopeId", "data-v-90c7d1bb"]]);
|
|
23
23
|
//#endregion
|
|
24
24
|
export { UiBadge_default as t };
|
package/vue/chunks/UiButton.js
CHANGED
|
@@ -41,6 +41,6 @@ var UiButton_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PUR
|
|
|
41
41
|
}), [renderSlot(_ctx.$slots, "default", {}, void 0, true)], 16, _hoisted_1);
|
|
42
42
|
};
|
|
43
43
|
}
|
|
44
|
-
}), [["__scopeId", "data-v-
|
|
44
|
+
}), [["__scopeId", "data-v-4fd0ad7f"]]);
|
|
45
45
|
//#endregion
|
|
46
46
|
export { UiButton_default as t };
|
package/vue/chunks/UiCallout.js
CHANGED
|
@@ -103,6 +103,6 @@ var UiCallout_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PU
|
|
|
103
103
|
]), createElementVNode("div", _hoisted_8, [renderSlot(_ctx.$slots, "default", {}, void 0, true)])], 16, _hoisted_1);
|
|
104
104
|
};
|
|
105
105
|
}
|
|
106
|
-
}), [["__scopeId", "data-v-
|
|
106
|
+
}), [["__scopeId", "data-v-c6e92976"]]);
|
|
107
107
|
//#endregion
|
|
108
108
|
export { UiCallout_default as t };
|
package/vue/chunks/UiCheckbox.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
|
+
import { n as useComponentHost, t as createDispatch } from "./host.js";
|
|
1
2
|
import { t as _plugin_vue_export_helper_default } from "./_plugin-vue_export-helper.js";
|
|
2
|
-
import { computed, createElementBlock, createElementVNode, defineComponent, mergeProps,
|
|
3
|
+
import { computed, createElementBlock, createElementVNode, defineComponent, mergeProps, openBlock, ref, renderSlot, useTemplateRef } from "vue";
|
|
3
4
|
import * as controllerModule from "@threadlabs/looma/components/ui-checkbox/ui-checkbox.js";
|
|
4
5
|
//#region .build/vue/UiCheckbox.vue?vue&type=script&setup=true&lang.ts
|
|
5
6
|
var _hoisted_1 = ["data-ui-checkbox-state"];
|
|
@@ -48,100 +49,21 @@ var UiCheckbox_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
|
|
|
48
49
|
const internalChecked = ref(false);
|
|
49
50
|
/** The values the styles' :host-state() rules test. */
|
|
50
51
|
const hostState = computed(() => [props.disabled && "disabled"].filter(Boolean).join(" "));
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
"checked",
|
|
60
|
-
"value",
|
|
61
|
-
"trigger"
|
|
62
|
-
].includes(key)) };
|
|
63
|
-
if (detail !== void 0 && checks[name] !== void 0 && !checks[name](detail)) throw new TypeError(`HR002: Event \`${name}\` detail does not satisfy its declared type.`);
|
|
64
|
-
const emitEvent = emit;
|
|
65
|
-
emitEvent(name, detail);
|
|
66
|
-
if (detail !== null && typeof detail === "object" && "checked" in detail) emitEvent("update:checked", detail["checked"]);
|
|
67
|
-
if (detail !== null && typeof detail === "object" && "value" in detail) emitEvent("update:value", detail["value"]);
|
|
68
|
-
return root.value?.dispatchEvent(new CustomEvent(name, {
|
|
69
|
-
bubbles: true,
|
|
70
|
-
composed: true,
|
|
71
|
-
...declared[name],
|
|
72
|
-
detail
|
|
73
|
-
})) ?? true;
|
|
74
|
-
}
|
|
75
|
-
function read(name) {
|
|
76
|
-
if (name === "internalChecked") return internalChecked.value;
|
|
77
|
-
return props[name];
|
|
78
|
-
}
|
|
79
|
-
function write(name, value) {
|
|
80
|
-
if (name === "internalChecked") {
|
|
81
|
-
internalChecked.value = value;
|
|
82
|
-
return true;
|
|
83
|
-
}
|
|
84
|
-
throw new TypeError(`Only declared state is writable; \`${name}\` is not.`);
|
|
85
|
-
}
|
|
86
|
-
const stops = [];
|
|
87
|
-
const host = {
|
|
88
|
-
get element() {
|
|
89
|
-
return root.value;
|
|
90
|
-
},
|
|
91
|
-
state: new Proxy({}, {
|
|
92
|
-
get: (_target, name) => typeof name === "string" ? read(name) : void 0,
|
|
93
|
-
set: (_target, name, value) => typeof name === "string" && write(name, value)
|
|
94
|
-
}),
|
|
95
|
-
refs: { get input() {
|
|
96
|
-
return inputElement.value;
|
|
97
|
-
} },
|
|
98
|
-
elements: new Proxy({}, { get: (_target, name) => {
|
|
99
|
-
if (typeof name !== "string" || root.value === null) return void 0;
|
|
100
|
-
return (root.value instanceof HTMLFormElement ? root.value : root.value.querySelector("form"))?.elements.namedItem(name) ?? root.value.querySelector(`[name="${CSS.escape(name)}"]`) ?? void 0;
|
|
101
|
-
} }),
|
|
102
|
-
signal(initialValue) {
|
|
103
|
-
const value = shallowRef(initialValue);
|
|
104
|
-
return {
|
|
105
|
-
get: () => value.value,
|
|
106
|
-
set: (next) => {
|
|
107
|
-
if (!Object.is(value.value, next)) value.value = next;
|
|
108
|
-
},
|
|
109
|
-
update: (next) => {
|
|
110
|
-
const updated = next(value.value);
|
|
111
|
-
if (!Object.is(value.value, updated)) value.value = updated;
|
|
112
|
-
}
|
|
113
|
-
};
|
|
114
|
-
},
|
|
115
|
-
computed(compute) {
|
|
116
|
-
const value = computed(compute);
|
|
117
|
-
return { get: () => value.value };
|
|
118
|
-
},
|
|
119
|
-
effect(run) {
|
|
120
|
-
const stop = watchEffect((onCleanup) => {
|
|
121
|
-
const cleanup = run();
|
|
122
|
-
if (typeof cleanup === "function") onCleanup(cleanup);
|
|
123
|
-
}, { flush: "post" });
|
|
124
|
-
stops.push(stop);
|
|
125
|
-
return stop;
|
|
126
|
-
},
|
|
127
|
-
on(event, listener) {
|
|
128
|
-
const element = root.value;
|
|
129
|
-
element?.addEventListener(event, listener);
|
|
130
|
-
const off = () => element?.removeEventListener(event, listener);
|
|
131
|
-
stops.push(off);
|
|
132
|
-
return off;
|
|
133
|
-
},
|
|
134
|
-
dispatch
|
|
135
|
-
};
|
|
136
|
-
let cleanup;
|
|
137
|
-
onMounted(() => {
|
|
138
|
-
Promise.resolve(controllerModule.default(host)).then((result) => {
|
|
139
|
-
cleanup = result;
|
|
140
|
-
});
|
|
52
|
+
const isChangeDetail = (detail) => detail !== null && typeof detail === "object" && !Array.isArray(detail) && typeof detail["checked"] === "boolean" && typeof detail["value"] === "string" && (detail["trigger"] === "keyboard" || detail["trigger"] === "pointer" || detail["trigger"] === "programmatic") && Object.keys(detail).every((key) => [
|
|
53
|
+
"checked",
|
|
54
|
+
"value",
|
|
55
|
+
"trigger"
|
|
56
|
+
].includes(key));
|
|
57
|
+
const dispatch = createDispatch(root, emit, {
|
|
58
|
+
checks: { change: isChangeDetail },
|
|
59
|
+
modeled: ["checked", "value"]
|
|
141
60
|
});
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
61
|
+
useComponentHost(controllerModule.default, {
|
|
62
|
+
root,
|
|
63
|
+
dispatch,
|
|
64
|
+
props,
|
|
65
|
+
refs: { input: inputElement },
|
|
66
|
+
state: { internalChecked }
|
|
145
67
|
});
|
|
146
68
|
return (_ctx, _cache) => {
|
|
147
69
|
return openBlock(), createElementBlock("label", mergeProps({ "data-component": "ui-checkbox" }, _ctx.$attrs, {
|
|
@@ -159,6 +81,6 @@ var UiCheckbox_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
|
|
|
159
81
|
}, null, 40, _hoisted_2), createElementVNode("span", _hoisted_3, [renderSlot(_ctx.$slots, "default", {}, void 0, true)])], 16, _hoisted_1);
|
|
160
82
|
};
|
|
161
83
|
}
|
|
162
|
-
}), [["__scopeId", "data-v-
|
|
84
|
+
}), [["__scopeId", "data-v-d8891b6a"]]);
|
|
163
85
|
//#endregion
|
|
164
86
|
export { UiCheckbox_default as t };
|
package/vue/chunks/UiCluster.js
CHANGED
|
@@ -19,6 +19,6 @@ var UiCluster_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PU
|
|
|
19
19
|
return openBlock(), createElementBlock("div", mergeProps({ "data-component": "ui-cluster" }, _ctx.$attrs, { "data-ui-cluster-state": hostState.value || void 0 }), [renderSlot(_ctx.$slots, "default", {}, void 0, true)], 16, _hoisted_1);
|
|
20
20
|
};
|
|
21
21
|
}
|
|
22
|
-
}), [["__scopeId", "data-v-
|
|
22
|
+
}), [["__scopeId", "data-v-9a0304f1"]]);
|
|
23
23
|
//#endregion
|
|
24
24
|
export { UiCluster_default as t };
|