@glimstone/vue 0.0.0-stage → 4.0.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.
Files changed (50) hide show
  1. package/README.md +51 -2
  2. package/dist/Badge.vue.d.ts +49 -0
  3. package/dist/BrandMark.vue.d.ts +6 -0
  4. package/dist/Button.vue.d.ts +43 -0
  5. package/dist/Card.vue.d.ts +25 -0
  6. package/dist/Combobox.js +70 -0
  7. package/dist/Combobox.vue.d.ts +27 -0
  8. package/dist/ConfirmDialog.vue.d.ts +37 -0
  9. package/dist/EmptyState.vue.d.ts +28 -0
  10. package/dist/IconTipButton.vue.d.ts +24 -0
  11. package/dist/InfoAboutCard.vue.d.ts +4 -0
  12. package/dist/InfoBubble.vue.d.ts +9 -0
  13. package/dist/InfoHelpCard.vue.d.ts +6 -0
  14. package/dist/InfoTile.vue.d.ts +22 -0
  15. package/dist/InfoVersionCard.vue.d.ts +15 -0
  16. package/dist/ListSelect.vue.d.ts +37 -0
  17. package/dist/MenuChoice.vue.d.ts +27 -0
  18. package/dist/MenuSelect.vue.d.ts +37 -0
  19. package/dist/MenuSubmenu.vue.d.ts +31 -0
  20. package/dist/NumberField.vue.d.ts +10 -0
  21. package/dist/ReadmeButton.vue.d.ts +33 -0
  22. package/dist/Select.js +444 -0
  23. package/dist/Select.vue.d.ts +50 -0
  24. package/dist/SelectFace.vue.d.ts +26 -0
  25. package/dist/Selector.vue.d.ts +55 -0
  26. package/dist/SelectorSegment.vue.d.ts +28 -0
  27. package/dist/SidebarRow.vue.d.ts +22 -0
  28. package/dist/Slider.js +36 -0
  29. package/dist/Slider.vue.d.ts +23 -0
  30. package/dist/SubCard.vue.d.ts +21 -0
  31. package/dist/TipBubble.vue.d.ts +7 -0
  32. package/dist/TipWrap-rNAEgvb0.js +51 -0
  33. package/dist/TipWrap.d.ts +11 -0
  34. package/dist/ToastViewport.vue.d.ts +25 -0
  35. package/dist/Toggle.vue.d.ts +21 -0
  36. package/dist/UnavailableNotice.vue.d.ts +20 -0
  37. package/dist/confirm.d.ts +20 -0
  38. package/dist/engines.d.ts +12 -0
  39. package/dist/entries/combobox.d.ts +1 -0
  40. package/dist/entries/select.d.ts +1 -0
  41. package/dist/entries/slider.d.ts +1 -0
  42. package/dist/glyphs-CvCRgBMU.js +27 -0
  43. package/dist/glyphs.d.ts +21 -0
  44. package/dist/index.d.ts +29 -0
  45. package/dist/index.js +1301 -0
  46. package/dist/info.d.ts +71 -0
  47. package/dist/selectParts.d.ts +25 -0
  48. package/dist/selectorItem.d.ts +19 -0
  49. package/dist/tipBubble.d.ts +16 -0
  50. package/package.json +47 -4
package/README.md CHANGED
@@ -1,3 +1,52 @@
1
- # Temporary Holding Version
1
+ # @glimstone/vue
2
2
 
3
- This version is a temporary placeholder for this package. An operational version to replace this has been submitted for review and is awaiting a staged release.
3
+ The components of [GlimStone](https://junkerderprovinz.github.io/glimstone/) for
4
+ Vue 3, on `@glimstone/core`. They are the same components as `@glimstone/react`,
5
+ with the same names, the same behaviour contracts and the same look, as
6
+ single-file components.
7
+
8
+ ```sh
9
+ npm install @glimstone/core @glimstone/vue
10
+ ```
11
+
12
+ ```ts
13
+ import "@glimstone/core/tokens.css";
14
+ import { applyCachedAppearance, applyStoredLabelModes } from "@glimstone/core";
15
+ import { setGlyphResolver } from "@glimstone/vue";
16
+
17
+ applyCachedAppearance();
18
+ applyStoredLabelModes();
19
+ setGlyphResolver((key) => appGlyphs[key]);
20
+ ```
21
+
22
+ ```vue
23
+ <script setup lang="ts">
24
+ import { ref } from "vue";
25
+ import { Button, Toggle, useConfirm } from "@glimstone/vue";
26
+ import { Select } from "@glimstone/vue/Select";
27
+
28
+ const quiet = ref(true);
29
+ const zone = ref<string | null>("Europe/Vienna");
30
+ const { confirm, ConfirmHost } = useConfirm({ title: "Confirm", cancel: "Cancel", confirm: "Confirm" });
31
+ </script>
32
+
33
+ <template>
34
+ <Toggle v-model="quiet" label="Quiet notifications" />
35
+ <Select v-model="zone" label="Time zone" :options="zones" />
36
+ <Button label="Delete" label-key="delete" @click="confirm('Delete the snapshot?')" />
37
+ <ConfirmHost />
38
+ </template>
39
+ ```
40
+
41
+ - Values bind with `v-model`; listeners and attributes such as `@click`,
42
+ `class` and `aria-*` fall through to the element.
43
+ - A glyph is a component: `setGlyphResolver` returns one, and a `glyph` prop
44
+ takes one.
45
+ - The engines are composables: `useLabelMode`, `useRainbow`, `useShape`,
46
+ `useMotion`, `useAccent` and `useHue`, each a writable ref that follows the
47
+ document.
48
+ - `Select`, `Combobox` and `Slider` come from their own entries and need
49
+ `@zag-js/vue` with their machine packages (`@zag-js/select` and
50
+ `@zag-js/menu`, `@zag-js/combobox`, `@zag-js/slider`).
51
+ - Vue counts `useId()` per app. A page that mounts several Vue apps gives each
52
+ its own `app.config.idPrefix`.
@@ -0,0 +1,49 @@
1
+ import { type BadgeShape, type BadgeSize, type BadgeTone, type NotchInset } from "@glimstone/core";
2
+ type __VLS_Props = {
3
+ tone?: BadgeTone;
4
+ size?: BadgeSize;
5
+ shape?: BadgeShape;
6
+ as?: "span" | "button" | "a";
7
+ disabled?: boolean;
8
+ /** Let content that wraps grow the box instead of overflowing it. */
9
+ wrap?: boolean;
10
+ /** Rainbow position. Only `heading` and `active` take it, since the other
11
+ * tones are status signals. */
12
+ hueIndex?: number;
13
+ /** `as="button"` only: the tooltip and accessible name of an icon-only
14
+ * button; it also makes the badge icon-only for sizing. */
15
+ tip?: string;
16
+ /** Heading notch only: the card's content padding in quarter-rem steps. */
17
+ insetStart?: NotchInset;
18
+ /** Heading notch only: keep its look without positioning it. */
19
+ inFlow?: boolean;
20
+ };
21
+ declare const __VLS_template: () => {
22
+ __VLS_Slots: {
23
+ default?: (props: {}) => any;
24
+ } & {
25
+ default?: (props: {}) => any;
26
+ } & {
27
+ default?: (props: {}) => any;
28
+ } & {
29
+ default?: (props: {}) => any;
30
+ };
31
+ };
32
+ type __VLS_Slots = ReturnType<typeof __VLS_template>['__VLS_Slots'];
33
+ declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
34
+ disabled: boolean;
35
+ tone: BadgeTone;
36
+ size: BadgeSize;
37
+ shape: BadgeShape;
38
+ as: "a" | "button" | "span";
39
+ wrap: boolean;
40
+ inFlow: boolean;
41
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
42
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
43
+ declare const _default: typeof __VLS_export;
44
+ export default _default;
45
+ type __VLS_WithSlots<T, S> = T & {
46
+ new (): {
47
+ $slots: S;
48
+ };
49
+ };
@@ -0,0 +1,6 @@
1
+ type __VLS_Props = {
2
+ svg: string;
3
+ };
4
+ declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
5
+ declare const _default: typeof __VLS_export;
6
+ export default _default;
@@ -0,0 +1,43 @@
1
+ import { type Component } from "vue";
2
+ import { type ButtonTone, type ButtonVariant, type WidthStage } from "@glimstone/core";
3
+ type __VLS_Props = {
4
+ /** The button's words, present in every mode: visible, or hidden but
5
+ * announced and shown as the tooltip. Keep it stable; put changing state
6
+ * in `title`. */
7
+ label: string;
8
+ /** The translation key behind `label`, or `null` when the label is data
9
+ * such as a path. It picks the glyph by meaning, so the same verb wears
10
+ * the same symbol everywhere; an explicit `glyph` wins. */
11
+ labelKey: string | null;
12
+ /** Overrides whatever `labelKey` would have chosen. */
13
+ glyph?: Component;
14
+ tone?: ButtonTone;
15
+ /** "chip" inside a pill, "icon" for a row action; see ButtonVariant. */
16
+ variant?: ButtonVariant;
17
+ disabled?: boolean;
18
+ type?: "button" | "submit";
19
+ /** Extra explanation, and the place for anything that changes. It shows
20
+ * in the hover and focus bubble, joined with the label where the label
21
+ * is hidden, and still reaches a disabled button. */
22
+ title?: string;
23
+ /** This button's own rainbow position, for a colour different from its card's. */
24
+ hueIndex?: number;
25
+ /** Shows a spinner in place of the glyph. Separate from `disabled`. */
26
+ busy?: boolean;
27
+ /** Forces a width stage, for two buttons in different components that should match. */
28
+ stage?: WidthStage;
29
+ /** Keeps the label visible in every mode, for a label that is content rather than a verb. */
30
+ keepLabel?: boolean;
31
+ };
32
+ declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {
33
+ el: import("vue").ShallowRef<HTMLButtonElement | null, HTMLButtonElement | null>;
34
+ }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
35
+ disabled: boolean;
36
+ type: "button" | "submit";
37
+ tone: ButtonTone;
38
+ variant: ButtonVariant;
39
+ busy: boolean;
40
+ keepLabel: boolean;
41
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
42
+ declare const _default: typeof __VLS_export;
43
+ export default _default;
@@ -0,0 +1,25 @@
1
+ type __VLS_Props = {
2
+ /** Omit it where a control inside already carries the same name. */
3
+ title?: string;
4
+ /** One line saying what this whole card does, drawn as an "(i)" beside the title. */
5
+ hint?: string;
6
+ /** This card's position in the rainbow, counted across the cards visible on the active tab. */
7
+ hueIndex?: number;
8
+ /** This card sits inside another card that already provides the surface and the padding. */
9
+ nested?: boolean;
10
+ };
11
+ declare const __VLS_template: () => {
12
+ __VLS_Slots: {
13
+ default?: (props: {}) => any;
14
+ };
15
+ };
16
+ type __VLS_Slots = ReturnType<typeof __VLS_template>['__VLS_Slots'];
17
+ declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
18
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
19
+ declare const _default: typeof __VLS_export;
20
+ export default _default;
21
+ type __VLS_WithSlots<T, S> = T & {
22
+ new (): {
23
+ $slots: S;
24
+ };
25
+ };
@@ -0,0 +1,70 @@
1
+ import { i as e, n as t } from "./glyphs-CvCRgBMU.js";
2
+ import { Fragment as n, Teleport as r, computed as i, createBlock as a, createCommentVNode as o, createElementBlock as s, createElementVNode as c, createVNode as l, defineComponent as u, mergeModels as d, mergeProps as f, openBlock as p, renderList as m, shallowRef as h, toDisplayString as g, unref as _, useId as v, useModel as y, watch as b } from "vue";
3
+ import { normalizeProps as x, useMachine as S } from "@zag-js/vue";
4
+ import * as C from "@zag-js/combobox";
5
+ // src/Combobox.vue?vue&type=script&setup=true&lang.ts
6
+ var w = ["aria-label"], T = ["data-state"], E = {
7
+ key: 0,
8
+ class: "glim-select-empty"
9
+ }, D = /* @__PURE__ */ u({
10
+ __name: "Combobox",
11
+ props: /*@__PURE__*/ d({
12
+ label: {},
13
+ hideLabel: {
14
+ type: Boolean,
15
+ default: !1
16
+ },
17
+ options: {},
18
+ placeholder: {},
19
+ empty: {},
20
+ toggleLabel: {},
21
+ disabled: {
22
+ type: Boolean,
23
+ default: !1
24
+ }
25
+ }, {
26
+ modelValue: { required: !0 },
27
+ modelModifiers: {}
28
+ }),
29
+ emits: ["update:modelValue"],
30
+ setup(u) {
31
+ let d = u, D = y(u, "modelValue"), O = v(), k = h(d.options);
32
+ b(() => d.options, (e) => k.value = e);
33
+ let A = i(() => C.collection({
34
+ items: k.value,
35
+ itemToValue: (e) => e.value,
36
+ itemToString: (e) => e.label,
37
+ isItemDisabled: (e) => !!e.disabled
38
+ })), j = S(C.machine, i(() => ({
39
+ id: O,
40
+ collection: A.value,
41
+ value: D.value ? [D.value] : [],
42
+ placeholder: d.placeholder,
43
+ disabled: d.disabled,
44
+ positioning: {
45
+ sameWidth: !0,
46
+ gutter: 6
47
+ },
48
+ onOpenChange: ({ open: e }) => {
49
+ e || (k.value = d.options);
50
+ },
51
+ onInputValueChange: ({ inputValue: e }) => {
52
+ let t = e.toLocaleLowerCase();
53
+ k.value = d.options.filter((e) => e.label.toLocaleLowerCase().includes(t));
54
+ },
55
+ onValueChange: (e) => D.value = e.value[0] ?? ""
56
+ }))), M = i(() => C.connect(j, x));
57
+ return (i, d) => (p(), s("div", f(M.value.getRootProps(), { class: "glim-combobox" }), [
58
+ c("label", f(M.value.getLabelProps(), { class: u.hideLabel ? "glim-sr-only" : "glim-field-label" }), g(u.label), 17),
59
+ c("div", f(M.value.getControlProps(), { class: "glim-combobox-control" }), [c("input", f(M.value.getInputProps(), { class: "glim-combobox-input" }), null, 16), c("button", f(M.value.getTriggerProps(), {
60
+ "aria-label": u.toggleLabel,
61
+ class: "glim-combobox-toggle"
62
+ }), [c("span", {
63
+ class: "glim-select-indicator",
64
+ "data-state": M.value.open ? "open" : "closed"
65
+ }, [l(_(e))], 8, T)], 16, w)], 16),
66
+ (p(), a(r, { to: "body" }, [c("div", f(M.value.getPositionerProps(), { class: "glim-select-positioner" }), [c("ul", f(M.value.getContentProps(), { class: "glim-select-content" }), [k.value.length === 0 ? (p(), s("li", E, g(u.empty), 1)) : o("", !0), (p(!0), s(n, null, m(k.value, (e) => (p(), s("li", f({ key: e.value }, { ref_for: !0 }, M.value.getItemProps({ item: e }), { class: "glim-select-item" }), [c("span", f({ ref_for: !0 }, M.value.getItemTextProps({ item: e })), g(e.label), 17), c("span", f({ ref_for: !0 }, M.value.getItemIndicatorProps({ item: e }), { class: "glim-select-check" }), [l(_(t))], 16)], 16))), 128))], 16)], 16)]))
67
+ ], 16));
68
+ }
69
+ });
70
+ export { D as Combobox };
@@ -0,0 +1,27 @@
1
+ import type { SelectOption } from "./selectParts";
2
+ type __VLS_Props = {
3
+ label: string;
4
+ hideLabel?: boolean;
5
+ options: SelectOption[];
6
+ placeholder?: string;
7
+ /** The line the list shows when nothing matches. */
8
+ empty: string;
9
+ /** Accessible name of the button that opens the full list. */
10
+ toggleLabel: string;
11
+ disabled?: boolean;
12
+ };
13
+ type __VLS_ModelProps = {
14
+ /** The chosen value, or "" while nothing is chosen. */
15
+ modelValue: string;
16
+ };
17
+ type __VLS_PublicProps = __VLS_Props & __VLS_ModelProps;
18
+ declare const __VLS_export: import("vue").DefineComponent<__VLS_PublicProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
19
+ "update:modelValue": (value: string) => any;
20
+ }, string, import("vue").PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
21
+ "onUpdate:modelValue"?: ((value: string) => any) | undefined;
22
+ }>, {
23
+ disabled: boolean;
24
+ hideLabel: boolean;
25
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
26
+ declare const _default: typeof __VLS_export;
27
+ export default _default;
@@ -0,0 +1,37 @@
1
+ import { type Component } from "vue";
2
+ type __VLS_Props = {
3
+ title: string;
4
+ message: string;
5
+ /** The words of the action being confirmed, so the answer repeats "Delete"
6
+ * rather than a bare "Confirm". */
7
+ confirmLabel: string;
8
+ /** Translation key behind confirmLabel, so the confirm button shows its glyph. */
9
+ confirmLabelKey?: string;
10
+ confirmGlyph?: Component;
11
+ cancelLabel: string;
12
+ /** A close button in the head, for a window that is more than a question. */
13
+ closeLabel?: string;
14
+ };
15
+ declare const __VLS_template: () => {
16
+ __VLS_Slots: {
17
+ extra?: (props: {}) => any;
18
+ };
19
+ };
20
+ type __VLS_Slots = ReturnType<typeof __VLS_template>['__VLS_Slots'];
21
+ declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {
22
+ card: import("vue").ShallowRef<HTMLDivElement | null, HTMLDivElement | null>;
23
+ }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
24
+ cancel: () => any;
25
+ confirm: () => any;
26
+ }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
27
+ onCancel?: (() => any) | undefined;
28
+ onConfirm?: (() => any) | undefined;
29
+ }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
30
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
31
+ declare const _default: typeof __VLS_export;
32
+ export default _default;
33
+ type __VLS_WithSlots<T, S> = T & {
34
+ new (): {
35
+ $slots: S;
36
+ };
37
+ };
@@ -0,0 +1,28 @@
1
+ import type { Component } from "vue";
2
+ type __VLS_Props = {
3
+ /** The page's own glyph, so the empty state echoes the place it is on. */
4
+ glyph?: Component;
5
+ /** What is missing, such as "No backups yet" or "No backups match the filter". */
6
+ title: string;
7
+ /** One line on how to get there. */
8
+ hint?: string;
9
+ /** It stands inside a card, which already provides the surface. */
10
+ nested?: boolean;
11
+ };
12
+ declare const __VLS_template: () => {
13
+ __VLS_Slots: {
14
+ default?: (props: {}) => any;
15
+ };
16
+ };
17
+ type __VLS_Slots = ReturnType<typeof __VLS_template>['__VLS_Slots'];
18
+ declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
19
+ nested: boolean;
20
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
21
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
22
+ declare const _default: typeof __VLS_export;
23
+ export default _default;
24
+ type __VLS_WithSlots<T, S> = T & {
25
+ new (): {
26
+ $slots: S;
27
+ };
28
+ };
@@ -0,0 +1,24 @@
1
+ type __VLS_Props = {
2
+ /** The hover and focus explanation, and the button's `aria-label`. */
3
+ tip: string;
4
+ disabled?: boolean;
5
+ type?: "button" | "submit";
6
+ };
7
+ declare const __VLS_template: () => {
8
+ __VLS_Slots: {
9
+ default?: (props: {}) => any;
10
+ };
11
+ };
12
+ type __VLS_Slots = ReturnType<typeof __VLS_template>['__VLS_Slots'];
13
+ declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
14
+ disabled: boolean;
15
+ type: "button" | "submit";
16
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
17
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
18
+ declare const _default: typeof __VLS_export;
19
+ export default _default;
20
+ type __VLS_WithSlots<T, S> = T & {
21
+ new (): {
22
+ $slots: S;
23
+ };
24
+ };
@@ -0,0 +1,4 @@
1
+ import type { InfoAboutCardProps } from "./info";
2
+ declare const __VLS_export: import("vue").DefineComponent<InfoAboutCardProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<InfoAboutCardProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
3
+ declare const _default: typeof __VLS_export;
4
+ export default _default;
@@ -0,0 +1,9 @@
1
+ type __VLS_Props = {
2
+ tip: string;
3
+ onAccent?: boolean;
4
+ };
5
+ declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
6
+ onAccent: boolean;
7
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
8
+ declare const _default: typeof __VLS_export;
9
+ export default _default;
@@ -0,0 +1,6 @@
1
+ import type { InfoHelpCardProps } from "./info";
2
+ declare const __VLS_export: import("vue").DefineComponent<InfoHelpCardProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<InfoHelpCardProps> & Readonly<{}>, {
3
+ openUrl: import("@glimstone/core").OpenUrl;
4
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
5
+ declare const _default: typeof __VLS_export;
6
+ export default _default;
@@ -0,0 +1,22 @@
1
+ import type { InfoAboutCardProps, InfoHelpCardProps, InfoVersionCardProps } from "./info";
2
+ type __VLS_Props = {
3
+ version: Omit<InfoVersionCardProps, "hueIndex">;
4
+ help: Omit<InfoHelpCardProps, "hueIndex">;
5
+ about: Omit<InfoAboutCardProps, "hueIndex">;
6
+ hueIndex?: number;
7
+ };
8
+ declare const __VLS_template: () => {
9
+ __VLS_Slots: {
10
+ 'whats-new'?: (props: {}) => any;
11
+ };
12
+ };
13
+ type __VLS_Slots = ReturnType<typeof __VLS_template>['__VLS_Slots'];
14
+ declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
15
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
16
+ declare const _default: typeof __VLS_export;
17
+ export default _default;
18
+ type __VLS_WithSlots<T, S> = T & {
19
+ new (): {
20
+ $slots: S;
21
+ };
22
+ };
@@ -0,0 +1,15 @@
1
+ import type { InfoVersionCardProps } from "./info";
2
+ type __VLS_Slots = {
3
+ "whats-new"?: () => unknown;
4
+ };
5
+ declare const __VLS_base: import("vue").DefineComponent<InfoVersionCardProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<InfoVersionCardProps> & Readonly<{}>, {
6
+ openUrl: import("@glimstone/core").OpenUrl;
7
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
8
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
9
+ declare const _default: typeof __VLS_export;
10
+ export default _default;
11
+ type __VLS_WithSlots<T, S> = T & {
12
+ new (): {
13
+ $slots: S;
14
+ };
15
+ };
@@ -0,0 +1,37 @@
1
+ import { type SelectWidth } from "@glimstone/core";
2
+ import { type SelectGroup } from "./selectParts";
3
+ declare const __VLS_export: <T extends string>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_exposed?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
4
+ props: import("vue").PublicProps & __VLS_PrettifyLocal<{
5
+ label: string;
6
+ hideLabel?: boolean;
7
+ groups: SelectGroup<T>[];
8
+ value: T | null;
9
+ placeholder?: string;
10
+ width: SelectWidth;
11
+ triggerClass: string;
12
+ id?: string;
13
+ disabled?: boolean;
14
+ busy?: boolean;
15
+ tip?: string;
16
+ shake?: number;
17
+ } & {
18
+ onChange?: ((value: T) => any) | undefined;
19
+ }> & (typeof globalThis extends {
20
+ __VLS_PROPS_FALLBACK: infer P;
21
+ } ? P : {});
22
+ expose: (exposed: import("vue").ShallowUnwrapRef<{
23
+ trigger: import("vue").ShallowRef<HTMLElement | null, HTMLElement | null>;
24
+ }>) => void;
25
+ attrs: any;
26
+ slots: {};
27
+ emit: (evt: "change", value: T) => void;
28
+ }>) => import("vue").VNode & {
29
+ __ctx?: NonNullable<Awaited<typeof __VLS_setup>>;
30
+ };
31
+ declare const _default: typeof __VLS_export;
32
+ export default _default;
33
+ type __VLS_PrettifyLocal<T> = (T extends any ? {
34
+ [K in keyof T]: T[K];
35
+ } : {
36
+ [K in keyof T as K]: T[K];
37
+ }) & {};
@@ -0,0 +1,27 @@
1
+ import type * as menu from "@zag-js/menu";
2
+ import type { SelectOption } from "./selectParts";
3
+ declare const __VLS_export: <T extends string>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_exposed?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
4
+ props: import("vue").PublicProps & __VLS_PrettifyLocal<{
5
+ api: menu.Api;
6
+ option: SelectOption<T>;
7
+ value: T | null;
8
+ glyphs: boolean;
9
+ } & {
10
+ onChange?: ((value: T) => any) | undefined;
11
+ }> & (typeof globalThis extends {
12
+ __VLS_PROPS_FALLBACK: infer P;
13
+ } ? P : {});
14
+ expose: (exposed: {}) => void;
15
+ attrs: any;
16
+ slots: {};
17
+ emit: (evt: "change", value: T) => void;
18
+ }>) => import("vue").VNode & {
19
+ __ctx?: NonNullable<Awaited<typeof __VLS_setup>>;
20
+ };
21
+ declare const _default: typeof __VLS_export;
22
+ export default _default;
23
+ type __VLS_PrettifyLocal<T> = (T extends any ? {
24
+ [K in keyof T]: T[K];
25
+ } : {
26
+ [K in keyof T as K]: T[K];
27
+ }) & {};
@@ -0,0 +1,37 @@
1
+ import { type SelectWidth } from "@glimstone/core";
2
+ import { type SelectGroup } from "./selectParts";
3
+ declare const __VLS_export: <T extends string>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_exposed?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
4
+ props: import("vue").PublicProps & __VLS_PrettifyLocal<{
5
+ label: string;
6
+ hideLabel?: boolean;
7
+ groups: SelectGroup<T>[];
8
+ value: T | null;
9
+ placeholder?: string;
10
+ width: SelectWidth;
11
+ triggerClass: string;
12
+ id?: string;
13
+ disabled?: boolean;
14
+ busy?: boolean;
15
+ tip?: string;
16
+ shake?: number;
17
+ } & {
18
+ onChange?: ((value: T) => any) | undefined;
19
+ }> & (typeof globalThis extends {
20
+ __VLS_PROPS_FALLBACK: infer P;
21
+ } ? P : {});
22
+ expose: (exposed: import("vue").ShallowUnwrapRef<{
23
+ trigger: import("vue").ShallowRef<HTMLElement | null, HTMLElement | null>;
24
+ }>) => void;
25
+ attrs: any;
26
+ slots: {};
27
+ emit: (evt: "change", value: T) => void;
28
+ }>) => import("vue").VNode & {
29
+ __ctx?: NonNullable<Awaited<typeof __VLS_setup>>;
30
+ };
31
+ declare const _default: typeof __VLS_export;
32
+ export default _default;
33
+ type __VLS_PrettifyLocal<T> = (T extends any ? {
34
+ [K in keyof T]: T[K];
35
+ } : {
36
+ [K in keyof T as K]: T[K];
37
+ }) & {};
@@ -0,0 +1,31 @@
1
+ import * as menu from "@zag-js/menu";
2
+ import type { SelectSubmenu } from "./selectParts";
3
+ declare const __VLS_export: <T extends string>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_exposed?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
4
+ props: import("vue").PublicProps & __VLS_PrettifyLocal<{
5
+ parent: menu.Service;
6
+ parentApi: menu.Api;
7
+ triggerId: string;
8
+ entry: SelectSubmenu<T>;
9
+ value: T | null;
10
+ glyphs: boolean;
11
+ hueStyle?: Record<string, string>;
12
+ hueClass: string;
13
+ } & {
14
+ onChange?: ((value: T) => any) | undefined;
15
+ }> & (typeof globalThis extends {
16
+ __VLS_PROPS_FALLBACK: infer P;
17
+ } ? P : {});
18
+ expose: (exposed: {}) => void;
19
+ attrs: any;
20
+ slots: {};
21
+ emit: (evt: "change", value: T) => void;
22
+ }>) => import("vue").VNode & {
23
+ __ctx?: NonNullable<Awaited<typeof __VLS_setup>>;
24
+ };
25
+ declare const _default: typeof __VLS_export;
26
+ export default _default;
27
+ type __VLS_PrettifyLocal<T> = (T extends any ? {
28
+ [K in keyof T]: T[K];
29
+ } : {
30
+ [K in keyof T as K]: T[K];
31
+ }) & {};
@@ -0,0 +1,10 @@
1
+ type __VLS_ModelProps = {
2
+ modelValue?: number | null;
3
+ };
4
+ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
5
+ "update:modelValue": (value: number | null) => any;
6
+ }, string, import("vue").PublicProps, Readonly<__VLS_ModelProps> & Readonly<{
7
+ "onUpdate:modelValue"?: ((value: number | null) => any) | undefined;
8
+ }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
9
+ declare const _default: typeof __VLS_export;
10
+ export default _default;
@@ -0,0 +1,33 @@
1
+ import { type ReadmeBrand, type ReadmePart } from "@glimstone/core";
2
+ type __VLS_Props = {
3
+ brand: ReadmeBrand;
4
+ /** The button, then its segments. */
5
+ parts: [ReadmePart, ...ReadmePart[]];
6
+ /** The class that paints the mark at rest, such as `glim-windows-mark`. */
7
+ markClass?: string;
8
+ /** The "(i)" at the end of the unit, for what the name cannot say. */
9
+ hint?: string;
10
+ /** Holds the second lines in view while one reports what it did, such as "Copied". */
11
+ note?: boolean;
12
+ /** The second line of a unit whose first part has neither `href` nor `onClick`. */
13
+ soonLabel?: string;
14
+ };
15
+ type __VLS_Slots = {
16
+ mark?: () => unknown;
17
+ art?: () => unknown;
18
+ };
19
+ declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
20
+ linkClick: (e: MouseEvent) => any;
21
+ }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
22
+ onLinkClick?: ((e: MouseEvent) => any) | undefined;
23
+ }>, {
24
+ note: boolean;
25
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
26
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
27
+ declare const _default: typeof __VLS_export;
28
+ export default _default;
29
+ type __VLS_WithSlots<T, S> = T & {
30
+ new (): {
31
+ $slots: S;
32
+ };
33
+ };