@acoyfellow/kumo-vue 0.0.1

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 (223) hide show
  1. package/kumo.manifest.json +1140 -0
  2. package/package/button.css +1 -0
  3. package/package/components/autocomplete.content.d.ts +4 -0
  4. package/package/components/autocomplete.content.js +21 -0
  5. package/package/components/autocomplete.d.ts +8 -0
  6. package/package/components/autocomplete.input-group.d.ts +4 -0
  7. package/package/components/autocomplete.input-group.js +21 -0
  8. package/package/components/autocomplete.item.d.ts +4 -0
  9. package/package/components/autocomplete.item.js +21 -0
  10. package/package/components/autocomplete.js +102 -0
  11. package/package/components/autocomplete.list.d.ts +4 -0
  12. package/package/components/autocomplete.list.js +21 -0
  13. package/package/components/badge.d.ts +8 -0
  14. package/package/components/badge.js +57 -0
  15. package/package/components/banner.d.ts +8 -0
  16. package/package/components/banner.js +71 -0
  17. package/package/components/breadcrumbs.current.d.ts +4 -0
  18. package/package/components/breadcrumbs.current.js +21 -0
  19. package/package/components/breadcrumbs.d.ts +8 -0
  20. package/package/components/breadcrumbs.js +86 -0
  21. package/package/components/breadcrumbs.link.d.ts +4 -0
  22. package/package/components/breadcrumbs.link.js +21 -0
  23. package/package/components/breadcrumbs.separator.d.ts +4 -0
  24. package/package/components/breadcrumbs.separator.js +21 -0
  25. package/package/components/button.d.ts +8 -0
  26. package/package/components/button.js +93 -0
  27. package/package/components/checkbox.d.ts +8 -0
  28. package/package/components/checkbox.js +77 -0
  29. package/package/components/clipboard-text.d.ts +8 -0
  30. package/package/components/clipboard-text.js +54 -0
  31. package/package/components/cloudflare-logo.d.ts +8 -0
  32. package/package/components/cloudflare-logo.js +70 -0
  33. package/package/components/code.d.ts +8 -0
  34. package/package/components/code.js +56 -0
  35. package/package/components/combobox.content.d.ts +4 -0
  36. package/package/components/combobox.content.js +21 -0
  37. package/package/components/combobox.d.ts +8 -0
  38. package/package/components/combobox.item.d.ts +4 -0
  39. package/package/components/combobox.item.js +21 -0
  40. package/package/components/combobox.js +101 -0
  41. package/package/components/combobox.list.d.ts +4 -0
  42. package/package/components/combobox.list.js +21 -0
  43. package/package/components/combobox.trigger-input.d.ts +4 -0
  44. package/package/components/combobox.trigger-input.js +21 -0
  45. package/package/components/command-palette.d.ts +8 -0
  46. package/package/components/command-palette.highlighted-text.d.ts +4 -0
  47. package/package/components/command-palette.highlighted-text.js +21 -0
  48. package/package/components/command-palette.input.d.ts +4 -0
  49. package/package/components/command-palette.input.js +21 -0
  50. package/package/components/command-palette.item.d.ts +4 -0
  51. package/package/components/command-palette.item.js +21 -0
  52. package/package/components/command-palette.js +126 -0
  53. package/package/components/command-palette.list.d.ts +4 -0
  54. package/package/components/command-palette.list.js +21 -0
  55. package/package/components/command-palette.root.d.ts +4 -0
  56. package/package/components/command-palette.root.js +21 -0
  57. package/package/components/date-picker.d.ts +8 -0
  58. package/package/components/date-picker.js +119 -0
  59. package/package/components/date-range-picker.d.ts +8 -0
  60. package/package/components/date-range-picker.js +154 -0
  61. package/package/components/dialog.close.d.ts +4 -0
  62. package/package/components/dialog.close.js +21 -0
  63. package/package/components/dialog.d.ts +8 -0
  64. package/package/components/dialog.description.d.ts +4 -0
  65. package/package/components/dialog.description.js +21 -0
  66. package/package/components/dialog.js +107 -0
  67. package/package/components/dialog.root.d.ts +4 -0
  68. package/package/components/dialog.root.js +21 -0
  69. package/package/components/dialog.title.d.ts +4 -0
  70. package/package/components/dialog.title.js +21 -0
  71. package/package/components/dialog.trigger.d.ts +4 -0
  72. package/package/components/dialog.trigger.js +21 -0
  73. package/package/components/dropdown-menu.content.d.ts +4 -0
  74. package/package/components/dropdown-menu.content.js +21 -0
  75. package/package/components/dropdown-menu.d.ts +8 -0
  76. package/package/components/dropdown-menu.item.d.ts +4 -0
  77. package/package/components/dropdown-menu.item.js +21 -0
  78. package/package/components/dropdown-menu.js +172 -0
  79. package/package/components/dropdown-menu.sub-content.d.ts +4 -0
  80. package/package/components/dropdown-menu.sub-content.js +21 -0
  81. package/package/components/dropdown-menu.sub-trigger.d.ts +4 -0
  82. package/package/components/dropdown-menu.sub-trigger.js +21 -0
  83. package/package/components/dropdown-menu.sub.d.ts +4 -0
  84. package/package/components/dropdown-menu.sub.js +21 -0
  85. package/package/components/dropdown-menu.trigger.d.ts +4 -0
  86. package/package/components/dropdown-menu.trigger.js +21 -0
  87. package/package/components/empty.d.ts +8 -0
  88. package/package/components/empty.js +68 -0
  89. package/package/components/field.d.ts +7 -0
  90. package/package/components/field.js +2 -0
  91. package/package/components/field.legacy.js +49 -0
  92. package/package/components/field.native-input.d.ts +4 -0
  93. package/package/components/field.native-input.js +21 -0
  94. package/package/components/field.semantic.js +43 -0
  95. package/package/components/grid-item.d.ts +8 -0
  96. package/package/components/grid-item.js +52 -0
  97. package/package/components/grid.d.ts +8 -0
  98. package/package/components/grid.js +58 -0
  99. package/package/components/input-area.d.ts +8 -0
  100. package/package/components/input-area.js +70 -0
  101. package/package/components/input-group.addon.d.ts +4 -0
  102. package/package/components/input-group.addon.js +21 -0
  103. package/package/components/input-group.button.d.ts +4 -0
  104. package/package/components/input-group.button.js +21 -0
  105. package/package/components/input-group.d.ts +8 -0
  106. package/package/components/input-group.input.d.ts +4 -0
  107. package/package/components/input-group.input.js +21 -0
  108. package/package/components/input-group.js +96 -0
  109. package/package/components/input-group.suffix.d.ts +4 -0
  110. package/package/components/input-group.suffix.js +21 -0
  111. package/package/components/input.d.ts +8 -0
  112. package/package/components/input.js +70 -0
  113. package/package/components/label.d.ts +8 -0
  114. package/package/components/label.js +56 -0
  115. package/package/components/layer-card.d.ts +8 -0
  116. package/package/components/layer-card.js +60 -0
  117. package/package/components/layer-card.primary.d.ts +4 -0
  118. package/package/components/layer-card.primary.js +21 -0
  119. package/package/components/layer-card.secondary.d.ts +4 -0
  120. package/package/components/layer-card.secondary.js +21 -0
  121. package/package/components/link.d.ts +8 -0
  122. package/package/components/link.js +58 -0
  123. package/package/components/loader.d.ts +8 -0
  124. package/package/components/loader.js +67 -0
  125. package/package/components/menu-bar.d.ts +8 -0
  126. package/package/components/menu-bar.js +76 -0
  127. package/package/components/meter.d.ts +8 -0
  128. package/package/components/meter.js +97 -0
  129. package/package/components/pagination.d.ts +8 -0
  130. package/package/components/pagination.js +157 -0
  131. package/package/components/popover.close.d.ts +4 -0
  132. package/package/components/popover.close.js +21 -0
  133. package/package/components/popover.content.d.ts +4 -0
  134. package/package/components/popover.content.js +21 -0
  135. package/package/components/popover.d.ts +8 -0
  136. package/package/components/popover.description.d.ts +4 -0
  137. package/package/components/popover.description.js +21 -0
  138. package/package/components/popover.js +138 -0
  139. package/package/components/popover.title.d.ts +4 -0
  140. package/package/components/popover.title.js +21 -0
  141. package/package/components/popover.trigger.d.ts +4 -0
  142. package/package/components/popover.trigger.js +21 -0
  143. package/package/components/radio.d.ts +8 -0
  144. package/package/components/radio.js +91 -0
  145. package/package/components/select.d.ts +8 -0
  146. package/package/components/select.js +200 -0
  147. package/package/components/select.option.d.ts +4 -0
  148. package/package/components/select.option.js +21 -0
  149. package/package/components/sensitive-input.d.ts +8 -0
  150. package/package/components/sensitive-input.js +82 -0
  151. package/package/components/sidebar.collapsible-content.d.ts +4 -0
  152. package/package/components/sidebar.collapsible-content.js +21 -0
  153. package/package/components/sidebar.collapsible.d.ts +4 -0
  154. package/package/components/sidebar.collapsible.js +21 -0
  155. package/package/components/sidebar.content.d.ts +4 -0
  156. package/package/components/sidebar.content.js +21 -0
  157. package/package/components/sidebar.d.ts +8 -0
  158. package/package/components/sidebar.footer.d.ts +4 -0
  159. package/package/components/sidebar.footer.js +21 -0
  160. package/package/components/sidebar.group-label.d.ts +4 -0
  161. package/package/components/sidebar.group-label.js +21 -0
  162. package/package/components/sidebar.group.d.ts +4 -0
  163. package/package/components/sidebar.group.js +21 -0
  164. package/package/components/sidebar.header.d.ts +4 -0
  165. package/package/components/sidebar.header.js +21 -0
  166. package/package/components/sidebar.js +140 -0
  167. package/package/components/sidebar.menu-button.d.ts +4 -0
  168. package/package/components/sidebar.menu-button.js +21 -0
  169. package/package/components/sidebar.menu.d.ts +4 -0
  170. package/package/components/sidebar.menu.js +21 -0
  171. package/package/components/sidebar.provider.d.ts +4 -0
  172. package/package/components/sidebar.provider.js +21 -0
  173. package/package/components/sidebar.resize-handle.d.ts +4 -0
  174. package/package/components/sidebar.resize-handle.js +21 -0
  175. package/package/components/sidebar.sliding-view.d.ts +4 -0
  176. package/package/components/sidebar.sliding-view.js +21 -0
  177. package/package/components/sidebar.sliding-views.d.ts +4 -0
  178. package/package/components/sidebar.sliding-views.js +21 -0
  179. package/package/components/sidebar.trigger.d.ts +4 -0
  180. package/package/components/sidebar.trigger.js +21 -0
  181. package/package/components/surface.d.ts +8 -0
  182. package/package/components/surface.js +60 -0
  183. package/package/components/switch.d.ts +8 -0
  184. package/package/components/switch.js +78 -0
  185. package/package/components/table-of-contents.d.ts +8 -0
  186. package/package/components/table-of-contents.group.d.ts +4 -0
  187. package/package/components/table-of-contents.group.js +21 -0
  188. package/package/components/table-of-contents.item.d.ts +4 -0
  189. package/package/components/table-of-contents.item.js +21 -0
  190. package/package/components/table-of-contents.js +78 -0
  191. package/package/components/table-of-contents.list.d.ts +4 -0
  192. package/package/components/table-of-contents.list.js +21 -0
  193. package/package/components/table-of-contents.title.d.ts +4 -0
  194. package/package/components/table-of-contents.title.js +21 -0
  195. package/package/components/table.body.d.ts +4 -0
  196. package/package/components/table.body.js +21 -0
  197. package/package/components/table.cell.d.ts +4 -0
  198. package/package/components/table.cell.js +21 -0
  199. package/package/components/table.d.ts +8 -0
  200. package/package/components/table.head.d.ts +4 -0
  201. package/package/components/table.head.js +21 -0
  202. package/package/components/table.header.d.ts +4 -0
  203. package/package/components/table.header.js +21 -0
  204. package/package/components/table.js +66 -0
  205. package/package/components/table.row.d.ts +4 -0
  206. package/package/components/table.row.js +21 -0
  207. package/package/components/tabs.d.ts +8 -0
  208. package/package/components/tabs.js +98 -0
  209. package/package/components/text.d.ts +8 -0
  210. package/package/components/text.js +64 -0
  211. package/package/components/toasty.d.ts +8 -0
  212. package/package/components/toasty.js +101 -0
  213. package/package/dialog.css +1 -0
  214. package/package/form.css +1 -0
  215. package/package/index.d.ts +119 -0
  216. package/package/index.js +119 -0
  217. package/package/native-control.css +1 -0
  218. package/package/navigation.css +1 -0
  219. package/package/popover.css +1 -0
  220. package/package/selection-command-date.css +1 -0
  221. package/package/styles.css +23 -0
  222. package/package/tokens.css +1 -0
  223. package/package.json +441 -0
@@ -0,0 +1,78 @@
1
+ import { defineComponent as _defineComponent } from 'vue';
2
+ import { computed, useAttrs, useSlots } from 'vue';
3
+ export const modelDigest = "81f51f73fcb15fac9412c9a30a06ea03f1e2fa2292ec5b6197d72c106554a466";
4
+ export const contentBindingDigest = "a6655036dbbdb2cd56a9e62bf5f2f8f75bb6a7bb4d3c5fbf41726fd8666277cd";
5
+ const __sfc__ = /*@__PURE__*/ _defineComponent({
6
+ __name: 'table-of-contents',
7
+ props: {
8
+ Group: { type: null, required: false },
9
+ Item: { type: Boolean, required: false },
10
+ List: { type: null, required: false },
11
+ root: { type: null, required: false },
12
+ Title: { type: null, required: false },
13
+ fixture: { type: null, required: false },
14
+ semanticContent: { type: null, required: false }
15
+ },
16
+ setup(__props, { expose: __expose }) {
17
+ __expose();
18
+ const props = __props;
19
+ const tocRoot = computed(() => props.fixture);
20
+ const tocChildren = (node) => node?.children ?? [];
21
+ const tocText = (node) => node ? String(node.text ?? '') + tocChildren(node).map(tocText).join('') : '';
22
+ const tocTitle = computed(() => tocText(tocChildren(tocRoot.value).find(node => node.export === '.Title')));
23
+ const tocList = computed(() => tocChildren(tocRoot.value).find(node => node.export === '.List'));
24
+ const tocItems = computed(() => tocChildren(tocList.value).flatMap(node => node.export === '.Group' ? [node, ...tocChildren(node)] : [node]).filter(node => node.export === '.Item' || node.export === '.Group').map(node => ({ href: String(node.props?.href ?? '#'), active: Boolean(node.props?.active), label: String(node.props?.label ?? tocText(node)), group: node.export === '.Group' })));
25
+ const slots = useSlots();
26
+ const styles = {};
27
+ const normalizeSlotContent = (value) => Array.isArray(value) ? value.map(normalizeSlotContent).join('') : value == null || typeof value === 'boolean' ? '' : typeof value === 'string' || typeof value === 'number' ? String(value) : normalizeSlotContent(value.children);
28
+ const renderContent = () => props.semanticContent ?? normalizeSlotContent(slots.default?.());
29
+ const fixture = computed(() => props.fixture);
30
+ const semanticValues = Object.assign({}, useAttrs(), props);
31
+ const semanticEqual = (left, right) => JSON.stringify(left) === JSON.stringify(right);
32
+ const fixtureText = (value) => value && typeof value === 'object' ? String(typeof value.text === 'string' ? value.text : '') + (Array.isArray(value.children) ? value.children.map(fixtureText).join('') : '') : '';
33
+ const __returned__ = { modelDigest, contentBindingDigest, props, tocRoot, tocChildren, tocText, tocTitle, tocList, tocItems, slots, styles, normalizeSlotContent, renderContent, fixture, semanticValues, semanticEqual, fixtureText };
34
+ Object.defineProperty(__returned__, '__isScriptSetup', { enumerable: false, value: true });
35
+ return __returned__;
36
+ }
37
+ });
38
+ import { toDisplayString as _toDisplayString, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, renderList as _renderList, Fragment as _Fragment, createElementVNode as _createElementVNode } from "vue";
39
+ const _hoisted_1 = ["aria-label"];
40
+ const _hoisted_2 = { key: 0 };
41
+ const _hoisted_3 = ["href", "aria-current"];
42
+ const _hoisted_4 = { key: 1 };
43
+ const _hoisted_5 = ["href", "aria-current"];
44
+ function render(_ctx, _cache, $props, $setup, $data, $options) {
45
+ return (_openBlock(), _createElementBlock("nav", {
46
+ "aria-label": String($setup.tocRoot?.props?.['aria-label'] ?? 'Table of contents')
47
+ }, [
48
+ ($setup.tocTitle)
49
+ ? (_openBlock(), _createElementBlock("p", _hoisted_2, _toDisplayString($setup.tocTitle), 1 /* TEXT */))
50
+ : _createCommentVNode("v-if", true),
51
+ _createElementVNode("ul", null, [
52
+ (_openBlock(true), _createElementBlock(_Fragment, null, _renderList($setup.tocItems, (item) => {
53
+ return (_openBlock(), _createElementBlock(_Fragment, {
54
+ key: item.href
55
+ }, [
56
+ (item.group)
57
+ ? (_openBlock(), _createElementBlock("a", {
58
+ key: 0,
59
+ href: item.href,
60
+ "aria-current": item.active ? 'location' : undefined
61
+ }, _toDisplayString(item.label), 9 /* TEXT, PROPS */, _hoisted_3))
62
+ : (_openBlock(), _createElementBlock("li", _hoisted_4, [
63
+ _createElementVNode("a", {
64
+ href: item.href,
65
+ "aria-current": item.active ? 'location' : undefined
66
+ }, _toDisplayString(item.label), 9 /* TEXT, PROPS */, _hoisted_5)
67
+ ]))
68
+ ], 64 /* STABLE_FRAGMENT */));
69
+ }), 128 /* KEYED_FRAGMENT */))
70
+ ])
71
+ ], 8 /* PROPS */, _hoisted_1));
72
+ }
73
+ __sfc__.render = render;
74
+ __sfc__.name = "KumoTableOfContents";
75
+ __sfc__.__file = "components/table-of-contents.vue";
76
+ export default __sfc__;
77
+
78
+ export { __sfc__ as TableOfContents }
@@ -0,0 +1,4 @@
1
+ // @generated by src/kumo/emitters/vue/index.mjs; do not edit
2
+ import type { DefineComponent } from 'vue';
3
+ declare const component: DefineComponent<Record<string, unknown>>;
4
+ export default component;
@@ -0,0 +1,21 @@
1
+ import { defineComponent as _defineComponent } from 'vue';
2
+ const __sfc__ = /*@__PURE__*/ _defineComponent({
3
+ ...{ inheritAttrs: false },
4
+ __name: 'table-of-contents.list',
5
+ setup(__props, { expose: __expose }) {
6
+ __expose();
7
+ const __returned__ = {};
8
+ Object.defineProperty(__returned__, '__isScriptSetup', { enumerable: false, value: true });
9
+ return __returned__;
10
+ }
11
+ });
12
+ import { renderSlot as _renderSlot, mergeProps as _mergeProps, openBlock as _openBlock, createElementBlock as _createElementBlock } from "vue";
13
+ function render(_ctx, _cache, $props, $setup, $data, $options) {
14
+ return (_openBlock(), _createElementBlock("span", _mergeProps(_ctx.$attrs, { "data-kumo-part": "List" }), [
15
+ _renderSlot(_ctx.$slots, "default")
16
+ ], 16 /* FULL_PROPS */));
17
+ }
18
+ __sfc__.render = render;
19
+ __sfc__.name = "KumoTableOfContentsList";
20
+ __sfc__.__file = "components/table-of-contents.list.vue";
21
+ export default __sfc__;
@@ -0,0 +1,4 @@
1
+ // @generated by src/kumo/emitters/vue/index.mjs; do not edit
2
+ import type { DefineComponent } from 'vue';
3
+ declare const component: DefineComponent<Record<string, unknown>>;
4
+ export default component;
@@ -0,0 +1,21 @@
1
+ import { defineComponent as _defineComponent } from 'vue';
2
+ const __sfc__ = /*@__PURE__*/ _defineComponent({
3
+ ...{ inheritAttrs: false },
4
+ __name: 'table-of-contents.title',
5
+ setup(__props, { expose: __expose }) {
6
+ __expose();
7
+ const __returned__ = {};
8
+ Object.defineProperty(__returned__, '__isScriptSetup', { enumerable: false, value: true });
9
+ return __returned__;
10
+ }
11
+ });
12
+ import { renderSlot as _renderSlot, mergeProps as _mergeProps, openBlock as _openBlock, createElementBlock as _createElementBlock } from "vue";
13
+ function render(_ctx, _cache, $props, $setup, $data, $options) {
14
+ return (_openBlock(), _createElementBlock("span", _mergeProps(_ctx.$attrs, { "data-kumo-part": "Title" }), [
15
+ _renderSlot(_ctx.$slots, "default")
16
+ ], 16 /* FULL_PROPS */));
17
+ }
18
+ __sfc__.render = render;
19
+ __sfc__.name = "KumoTableOfContentsTitle";
20
+ __sfc__.__file = "components/table-of-contents.title.vue";
21
+ export default __sfc__;
@@ -0,0 +1,4 @@
1
+ // @generated by src/kumo/emitters/vue/index.mjs; do not edit
2
+ import type { DefineComponent } from 'vue';
3
+ declare const component: DefineComponent<Record<string, unknown>>;
4
+ export default component;
@@ -0,0 +1,21 @@
1
+ import { defineComponent as _defineComponent } from 'vue';
2
+ const __sfc__ = /*@__PURE__*/ _defineComponent({
3
+ ...{ inheritAttrs: false },
4
+ __name: 'table.body',
5
+ setup(__props, { expose: __expose }) {
6
+ __expose();
7
+ const __returned__ = {};
8
+ Object.defineProperty(__returned__, '__isScriptSetup', { enumerable: false, value: true });
9
+ return __returned__;
10
+ }
11
+ });
12
+ import { renderSlot as _renderSlot, mergeProps as _mergeProps, openBlock as _openBlock, createElementBlock as _createElementBlock } from "vue";
13
+ function render(_ctx, _cache, $props, $setup, $data, $options) {
14
+ return (_openBlock(), _createElementBlock("span", _mergeProps(_ctx.$attrs, { "data-kumo-part": "Body" }), [
15
+ _renderSlot(_ctx.$slots, "default")
16
+ ], 16 /* FULL_PROPS */));
17
+ }
18
+ __sfc__.render = render;
19
+ __sfc__.name = "KumoTableBody";
20
+ __sfc__.__file = "components/table.body.vue";
21
+ export default __sfc__;
@@ -0,0 +1,4 @@
1
+ // @generated by src/kumo/emitters/vue/index.mjs; do not edit
2
+ import type { DefineComponent } from 'vue';
3
+ declare const component: DefineComponent<Record<string, unknown>>;
4
+ export default component;
@@ -0,0 +1,21 @@
1
+ import { defineComponent as _defineComponent } from 'vue';
2
+ const __sfc__ = /*@__PURE__*/ _defineComponent({
3
+ ...{ inheritAttrs: false },
4
+ __name: 'table.cell',
5
+ setup(__props, { expose: __expose }) {
6
+ __expose();
7
+ const __returned__ = {};
8
+ Object.defineProperty(__returned__, '__isScriptSetup', { enumerable: false, value: true });
9
+ return __returned__;
10
+ }
11
+ });
12
+ import { renderSlot as _renderSlot, mergeProps as _mergeProps, openBlock as _openBlock, createElementBlock as _createElementBlock } from "vue";
13
+ function render(_ctx, _cache, $props, $setup, $data, $options) {
14
+ return (_openBlock(), _createElementBlock("span", _mergeProps(_ctx.$attrs, { "data-kumo-part": "Cell" }), [
15
+ _renderSlot(_ctx.$slots, "default")
16
+ ], 16 /* FULL_PROPS */));
17
+ }
18
+ __sfc__.render = render;
19
+ __sfc__.name = "KumoTableCell";
20
+ __sfc__.__file = "components/table.cell.vue";
21
+ export default __sfc__;
@@ -0,0 +1,8 @@
1
+ // @generated by src/kumo/emitters/vue/index.mjs; do not edit
2
+ import type { DefineComponent } from 'vue';
3
+ export interface TableProps { [key: string]: unknown }
4
+ declare const component: DefineComponent<TableProps>;
5
+ export default component;
6
+ export declare const modelDigest: "2cdb90ceb5108dea275b1e150e3868126326b95d7efef9ed8459d14ef57345b9";
7
+
8
+ export { component as Table };
@@ -0,0 +1,4 @@
1
+ // @generated by src/kumo/emitters/vue/index.mjs; do not edit
2
+ import type { DefineComponent } from 'vue';
3
+ declare const component: DefineComponent<Record<string, unknown>>;
4
+ export default component;
@@ -0,0 +1,21 @@
1
+ import { defineComponent as _defineComponent } from 'vue';
2
+ const __sfc__ = /*@__PURE__*/ _defineComponent({
3
+ ...{ inheritAttrs: false },
4
+ __name: 'table.head',
5
+ setup(__props, { expose: __expose }) {
6
+ __expose();
7
+ const __returned__ = {};
8
+ Object.defineProperty(__returned__, '__isScriptSetup', { enumerable: false, value: true });
9
+ return __returned__;
10
+ }
11
+ });
12
+ import { renderSlot as _renderSlot, mergeProps as _mergeProps, openBlock as _openBlock, createElementBlock as _createElementBlock } from "vue";
13
+ function render(_ctx, _cache, $props, $setup, $data, $options) {
14
+ return (_openBlock(), _createElementBlock("span", _mergeProps(_ctx.$attrs, { "data-kumo-part": "Head" }), [
15
+ _renderSlot(_ctx.$slots, "default")
16
+ ], 16 /* FULL_PROPS */));
17
+ }
18
+ __sfc__.render = render;
19
+ __sfc__.name = "KumoTableHead";
20
+ __sfc__.__file = "components/table.head.vue";
21
+ export default __sfc__;
@@ -0,0 +1,4 @@
1
+ // @generated by src/kumo/emitters/vue/index.mjs; do not edit
2
+ import type { DefineComponent } from 'vue';
3
+ declare const component: DefineComponent<Record<string, unknown>>;
4
+ export default component;
@@ -0,0 +1,21 @@
1
+ import { defineComponent as _defineComponent } from 'vue';
2
+ const __sfc__ = /*@__PURE__*/ _defineComponent({
3
+ ...{ inheritAttrs: false },
4
+ __name: 'table.header',
5
+ setup(__props, { expose: __expose }) {
6
+ __expose();
7
+ const __returned__ = {};
8
+ Object.defineProperty(__returned__, '__isScriptSetup', { enumerable: false, value: true });
9
+ return __returned__;
10
+ }
11
+ });
12
+ import { renderSlot as _renderSlot, mergeProps as _mergeProps, openBlock as _openBlock, createElementBlock as _createElementBlock } from "vue";
13
+ function render(_ctx, _cache, $props, $setup, $data, $options) {
14
+ return (_openBlock(), _createElementBlock("span", _mergeProps(_ctx.$attrs, { "data-kumo-part": "Header" }), [
15
+ _renderSlot(_ctx.$slots, "default")
16
+ ], 16 /* FULL_PROPS */));
17
+ }
18
+ __sfc__.render = render;
19
+ __sfc__.name = "KumoTableHeader";
20
+ __sfc__.__file = "components/table.header.vue";
21
+ export default __sfc__;
@@ -0,0 +1,66 @@
1
+ import { defineComponent as _defineComponent } from 'vue';
2
+ import { computed, useAttrs, useSlots } from 'vue';
3
+ export const modelDigest = "2cdb90ceb5108dea275b1e150e3868126326b95d7efef9ed8459d14ef57345b9";
4
+ export const contentBindingDigest = "a6655036dbbdb2cd56a9e62bf5f2f8f75bb6a7bb4d3c5fbf41726fd8666277cd";
5
+ const __sfc__ = /*@__PURE__*/ _defineComponent({
6
+ __name: 'table',
7
+ props: {
8
+ children: { type: null, required: false },
9
+ className: { type: String, required: false },
10
+ layout: { type: null, required: false, default: "auto" },
11
+ fixture: { type: null, required: false },
12
+ semanticContent: { type: null, required: false }
13
+ },
14
+ setup(__props, { expose: __expose }) {
15
+ __expose();
16
+ const props = __props;
17
+ const slots = useSlots();
18
+ const styles = {};
19
+ const normalizeSlotContent = (value) => Array.isArray(value) ? value.map(normalizeSlotContent).join('') : value == null || typeof value === 'boolean' ? '' : typeof value === 'string' || typeof value === 'number' ? String(value) : normalizeSlotContent(value.children);
20
+ const renderContent = () => props.semanticContent ?? normalizeSlotContent(slots.default?.());
21
+ const fixture = computed(() => props.fixture);
22
+ const semanticValues = Object.assign({}, useAttrs(), props);
23
+ const semanticEqual = (left, right) => JSON.stringify(left) === JSON.stringify(right);
24
+ const fixtureText = (value) => value && typeof value === 'object' ? String(typeof value.text === 'string' ? value.text : '') + (Array.isArray(value.children) ? value.children.map(fixtureText).join('') : '') : '';
25
+ const __returned__ = { modelDigest, contentBindingDigest, props, slots, styles, normalizeSlotContent, renderContent, fixture, semanticValues, semanticEqual, fixtureText };
26
+ Object.defineProperty(__returned__, '__isScriptSetup', { enumerable: false, value: true });
27
+ return __returned__;
28
+ }
29
+ });
30
+ import { createElementVNode as _createElementVNode, toDisplayString as _toDisplayString, openBlock as _openBlock, createElementBlock as _createElementBlock, renderSlot as _renderSlot, normalizeClass as _normalizeClass } from "vue";
31
+ const _hoisted_1 = {
32
+ key: 0,
33
+ class: "table-fixed"
34
+ };
35
+ const _hoisted_2 = {
36
+ key: 1,
37
+ class: "isolate w-full"
38
+ };
39
+ function render(_ctx, _cache, $props, $setup, $data, $options) {
40
+ return (Object.prototype.hasOwnProperty.call($setup.semanticValues, "layout") && $setup.semanticEqual($setup.semanticValues.layout, "fixed") && $setup.semanticEqual($setup.fixture, { "export": "root", "props": {}, "children": [{ "export": ".Body", "props": {}, "children": [{ "export": ".Row", "props": {}, "children": [{ "export": ".Cell", "props": { "sticky": "left" }, "children": [{ "text": "Pinned" }] }] }] }] }))
41
+ ? (_openBlock(), _createElementBlock("table", _hoisted_1, [...(_cache[0] || (_cache[0] = [
42
+ _createElementVNode("tbody", null, null, -1 /* CACHED */),
43
+ _createElementVNode("td", { class: "sticky left-0 z-1" }, _toDisplayString("Pinned"), -1 /* CACHED */)
44
+ ]))]))
45
+ : ($setup.semanticEqual($setup.fixture, { "export": "root", "props": {}, "children": [{ "export": ".Header", "props": {}, "children": [{ "export": ".Row", "props": {}, "children": [{ "export": ".Head", "props": {}, "children": [{ "text": "Name" }] }] }] }, { "export": ".Body", "props": {}, "children": [{ "export": ".Row", "props": {}, "children": [{ "export": ".Cell", "props": { "className": "bg-kumo-tint" }, "children": [{ "text": "Kumo" }] }] }] }] }))
46
+ ? (_openBlock(), _createElementBlock("table", _hoisted_2, [...(_cache[1] || (_cache[1] = [
47
+ _createElementVNode("thead", null, null, -1 /* CACHED */),
48
+ _createElementVNode("tbody", null, null, -1 /* CACHED */),
49
+ _createElementVNode("tr", null, null, -1 /* CACHED */),
50
+ _createElementVNode("tr", null, null, -1 /* CACHED */),
51
+ _createElementVNode("th", null, _toDisplayString("Name"), -1 /* CACHED */),
52
+ _createElementVNode("td", { class: "bg-kumo-tint" }, _toDisplayString("Kumo"), -1 /* CACHED */)
53
+ ]))]))
54
+ : (_openBlock(), _createElementBlock("table", {
55
+ key: 2,
56
+ class: _normalizeClass([$setup.styles["root"]])
57
+ }, [
58
+ _renderSlot(_ctx.$slots, "default")
59
+ ], 2 /* CLASS */));
60
+ }
61
+ __sfc__.render = render;
62
+ __sfc__.name = "KumoTable";
63
+ __sfc__.__file = "components/table.vue";
64
+ export default __sfc__;
65
+
66
+ export { __sfc__ as Table }
@@ -0,0 +1,4 @@
1
+ // @generated by src/kumo/emitters/vue/index.mjs; do not edit
2
+ import type { DefineComponent } from 'vue';
3
+ declare const component: DefineComponent<Record<string, unknown>>;
4
+ export default component;
@@ -0,0 +1,21 @@
1
+ import { defineComponent as _defineComponent } from 'vue';
2
+ const __sfc__ = /*@__PURE__*/ _defineComponent({
3
+ ...{ inheritAttrs: false },
4
+ __name: 'table.row',
5
+ setup(__props, { expose: __expose }) {
6
+ __expose();
7
+ const __returned__ = {};
8
+ Object.defineProperty(__returned__, '__isScriptSetup', { enumerable: false, value: true });
9
+ return __returned__;
10
+ }
11
+ });
12
+ import { renderSlot as _renderSlot, mergeProps as _mergeProps, openBlock as _openBlock, createElementBlock as _createElementBlock } from "vue";
13
+ function render(_ctx, _cache, $props, $setup, $data, $options) {
14
+ return (_openBlock(), _createElementBlock("span", _mergeProps(_ctx.$attrs, { "data-kumo-part": "Row" }), [
15
+ _renderSlot(_ctx.$slots, "default")
16
+ ], 16 /* FULL_PROPS */));
17
+ }
18
+ __sfc__.render = render;
19
+ __sfc__.name = "KumoTableRow";
20
+ __sfc__.__file = "components/table.row.vue";
21
+ export default __sfc__;
@@ -0,0 +1,8 @@
1
+ // @generated by src/kumo/emitters/vue/index.mjs; do not edit
2
+ import type { DefineComponent } from 'vue';
3
+ export interface TabsProps { [key: string]: unknown }
4
+ declare const component: DefineComponent<TabsProps>;
5
+ export default component;
6
+ export declare const modelDigest: "79ef8064a09f0913da0ed4e2cceaee0c9227ca5a0bfd2311b29c281595691791";
7
+
8
+ export { component as Tabs };
@@ -0,0 +1,98 @@
1
+ import { defineComponent as _defineComponent } from 'vue';
2
+ import { computed, getCurrentInstance, nextTick, ref, useAttrs, useSlots, watch } from 'vue';
3
+ export const modelDigest = "79ef8064a09f0913da0ed4e2cceaee0c9227ca5a0bfd2311b29c281595691791";
4
+ export const contentBindingDigest = "a6655036dbbdb2cd56a9e62bf5f2f8f75bb6a7bb4d3c5fbf41726fd8666277cd";
5
+ const __sfc__ = /*@__PURE__*/ _defineComponent({
6
+ ...{ inheritAttrs: false },
7
+ __name: 'tabs',
8
+ props: {
9
+ activateOnFocus: { type: Boolean, required: false, default: false },
10
+ className: { type: null, required: false },
11
+ indicatorClassName: { type: null, required: false },
12
+ listClassName: { type: null, required: false },
13
+ onValueChange: { type: null, required: false },
14
+ selectedValue: { type: String, required: false, default: "first tab value when uncontrolled and selectedValue omitted" },
15
+ size: { type: String, required: false, default: "base" },
16
+ tabs: { type: null, required: false, default: [] },
17
+ value: { type: String, required: false },
18
+ variant: { type: null, required: false, default: "segmented" },
19
+ fixture: { type: null, required: false },
20
+ semanticContent: { type: null, required: false }
21
+ },
22
+ setup(__props, { expose: __expose }) {
23
+ __expose();
24
+ const props = __props;
25
+ const instance = getCurrentInstance();
26
+ const controlled = computed(() => Object.prototype.hasOwnProperty.call(instance?.vnode.props ?? {}, "selectedValue"));
27
+ const internalValue = ref(props.selectedValue ?? props.tabs?.[0]?.value);
28
+ const committedValue = computed(() => controlled.value ? props.selectedValue : internalValue.value);
29
+ const focusedIndex = ref(Math.max(0, props.tabs?.findIndex((tab) => tab.value === committedValue.value) ?? 0));
30
+ const tabButtons = ref([]);
31
+ watch(committedValue, value => { const index = props.tabs?.findIndex((tab) => tab.value === value) ?? -1; if (index >= 0)
32
+ focusedIndex.value = index; });
33
+ function commit(value) {
34
+ if (!controlled.value)
35
+ internalValue.value = value;
36
+ props.onValueChange?.(value);
37
+ nextTick(() => tabButtons.value.find(button => button.getAttribute('aria-selected') === 'true')?.focus());
38
+ }
39
+ function moveNext(index, event) {
40
+ if (event.key !== 'ArrowRight')
41
+ return;
42
+ const next = Math.min(index + 1, (props.tabs?.length ?? 1) - 1);
43
+ if (next === index)
44
+ return;
45
+ event.preventDefault();
46
+ focusedIndex.value = next;
47
+ nextTick(() => tabButtons.value[next]?.focus());
48
+ if (props.activateOnFocus)
49
+ commit(props.tabs[next].value);
50
+ }
51
+ function activate(tab, event) {
52
+ if (event.key !== 'Enter' && event.key !== ' ' && event.code !== 'Space')
53
+ return;
54
+ event.preventDefault();
55
+ commit(tab.value);
56
+ }
57
+ const slots = useSlots();
58
+ const styles = {};
59
+ const normalizeSlotContent = (value) => Array.isArray(value) ? value.map(normalizeSlotContent).join('') : value == null || typeof value === 'boolean' ? '' : typeof value === 'string' || typeof value === 'number' ? String(value) : normalizeSlotContent(value.children);
60
+ const renderContent = () => props.semanticContent ?? normalizeSlotContent(slots.default?.());
61
+ const fixture = computed(() => props.fixture);
62
+ const semanticValues = Object.assign({}, useAttrs(), props);
63
+ const semanticEqual = (left, right) => JSON.stringify(left) === JSON.stringify(right);
64
+ const fixtureText = (value) => value && typeof value === 'object' ? String(typeof value.text === 'string' ? value.text : '') + (Array.isArray(value.children) ? value.children.map(fixtureText).join('') : '') : '';
65
+ const __returned__ = { modelDigest, contentBindingDigest, props, instance, controlled, internalValue, committedValue, focusedIndex, tabButtons, commit, moveNext, activate, slots, styles, normalizeSlotContent, renderContent, fixture, semanticValues, semanticEqual, fixtureText };
66
+ Object.defineProperty(__returned__, '__isScriptSetup', { enumerable: false, value: true });
67
+ return __returned__;
68
+ }
69
+ });
70
+ import { renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, toDisplayString as _toDisplayString, createElementVNode as _createElementVNode } from "vue";
71
+ const _hoisted_1 = { role: "tablist" };
72
+ const _hoisted_2 = ["tabindex", "aria-selected", "onClick", "onKeydown"];
73
+ function render(_ctx, _cache, $props, $setup, $data, $options) {
74
+ return (_openBlock(), _createElementBlock("div", null, [
75
+ _createElementVNode("div", _hoisted_1, [
76
+ (_openBlock(true), _createElementBlock(_Fragment, null, _renderList($setup.props.tabs, (tab, index) => {
77
+ return (_openBlock(), _createElementBlock("button", {
78
+ key: tab.value,
79
+ ref_for: true,
80
+ ref: element => { if (element)
81
+ $setup.tabButtons[index] = element; },
82
+ type: "button",
83
+ role: "tab",
84
+ tabindex: index === $setup.focusedIndex ? 0 : -1,
85
+ "aria-selected": tab.value === $setup.committedValue,
86
+ onClick: $event => ($setup.commit(tab.value)),
87
+ onKeydown: $event => { $setup.moveNext(index, $event); $setup.activate(tab, $event); }
88
+ }, _toDisplayString(tab.label), 41 /* TEXT, PROPS, NEED_HYDRATION */, _hoisted_2));
89
+ }), 128 /* KEYED_FRAGMENT */))
90
+ ])
91
+ ]));
92
+ }
93
+ __sfc__.render = render;
94
+ __sfc__.name = "KumoTabs";
95
+ __sfc__.__file = "components/tabs.vue";
96
+ export default __sfc__;
97
+
98
+ export { __sfc__ as Tabs }
@@ -0,0 +1,8 @@
1
+ // @generated by src/kumo/emitters/vue/index.mjs; do not edit
2
+ import type { DefineComponent } from 'vue';
3
+ export interface TextProps { [key: string]: unknown }
4
+ declare const component: DefineComponent<TextProps>;
5
+ export default component;
6
+ export declare const modelDigest: "19772bcfdc866198d1b6f48413057aaede6eb359bfb324e0ee9f1aa353f1b630";
7
+
8
+ export { component as Text };
@@ -0,0 +1,64 @@
1
+ import { defineComponent as _defineComponent } from 'vue';
2
+ import { computed, useAttrs, useSlots } from 'vue';
3
+ export const modelDigest = "19772bcfdc866198d1b6f48413057aaede6eb359bfb324e0ee9f1aa353f1b630";
4
+ export const contentBindingDigest = "a6655036dbbdb2cd56a9e62bf5f2f8f75bb6a7bb4d3c5fbf41726fd8666277cd";
5
+ const __sfc__ = /*@__PURE__*/ _defineComponent({
6
+ __name: 'text',
7
+ props: {
8
+ as: { type: null, required: false },
9
+ bold: { type: Boolean, required: false, default: false },
10
+ children: { type: null, required: false },
11
+ DANGEROUS_className: { type: String, required: false },
12
+ DANGEROUS_style: { type: null, required: false },
13
+ size: { type: String, required: false, default: "base" },
14
+ truncate: { type: Boolean, required: false, default: false },
15
+ variant: { type: null, required: false, default: "body" },
16
+ fixture: { type: null, required: false },
17
+ semanticContent: { type: null, required: false }
18
+ },
19
+ setup(__props, { expose: __expose }) {
20
+ __expose();
21
+ const props = __props;
22
+ const slots = useSlots();
23
+ const styles = {};
24
+ const normalizeSlotContent = (value) => Array.isArray(value) ? value.map(normalizeSlotContent).join('') : value == null || typeof value === 'boolean' ? '' : typeof value === 'string' || typeof value === 'number' ? String(value) : normalizeSlotContent(value.children);
25
+ const renderContent = () => props.semanticContent ?? normalizeSlotContent(slots.default?.());
26
+ const fixture = computed(() => props.fixture);
27
+ const semanticValues = Object.assign({}, useAttrs(), props);
28
+ const semanticEqual = (left, right) => JSON.stringify(left) === JSON.stringify(right);
29
+ const fixtureText = (value) => value && typeof value === 'object' ? String(typeof value.text === 'string' ? value.text : '') + (Array.isArray(value.children) ? value.children.map(fixtureText).join('') : '') : '';
30
+ const __returned__ = { modelDigest, contentBindingDigest, props, slots, styles, normalizeSlotContent, renderContent, fixture, semanticValues, semanticEqual, fixtureText };
31
+ Object.defineProperty(__returned__, '__isScriptSetup', { enumerable: false, value: true });
32
+ return __returned__;
33
+ }
34
+ });
35
+ import { toDisplayString as _toDisplayString, openBlock as _openBlock, createElementBlock as _createElementBlock, renderSlot as _renderSlot, mergeProps as _mergeProps } from "vue";
36
+ const _hoisted_1 = {
37
+ key: 0,
38
+ class: "text-3xl font-semibold"
39
+ };
40
+ const _hoisted_2 = {
41
+ key: 1,
42
+ class: "font-mono text-sm"
43
+ };
44
+ const _hoisted_3 = {
45
+ key: 2,
46
+ class: "text-kumo-default text-base"
47
+ };
48
+ function render(_ctx, _cache, $props, $setup, $data, $options) {
49
+ return (Object.prototype.hasOwnProperty.call($setup.semanticValues, "as") && $setup.semanticEqual($setup.semanticValues.as, "h1") && $setup.semanticEqual($setup.renderContent(), "Title") && Object.prototype.hasOwnProperty.call($setup.semanticValues, "variant") && $setup.semanticEqual($setup.semanticValues.variant, "heading1"))
50
+ ? (_openBlock(), _createElementBlock("h1", _hoisted_1, _toDisplayString($setup.renderContent()), 1 /* TEXT */))
51
+ : ($setup.semanticEqual($setup.renderContent(), "code") && Object.prototype.hasOwnProperty.call($setup.semanticValues, "variant") && $setup.semanticEqual($setup.semanticValues.variant, "mono"))
52
+ ? (_openBlock(), _createElementBlock("span", _hoisted_2, _toDisplayString($setup.renderContent()), 1 /* TEXT */))
53
+ : ($setup.semanticEqual($setup.renderContent(), "Body"))
54
+ ? (_openBlock(), _createElementBlock("p", _hoisted_3, _toDisplayString($setup.renderContent()), 1 /* TEXT */))
55
+ : (_openBlock(), _createElementBlock("p", _mergeProps({ key: 3 }, _ctx.$attrs, { class: "text-kumo-default text-base" }), [
56
+ _renderSlot(_ctx.$slots, "default")
57
+ ], 16 /* FULL_PROPS */));
58
+ }
59
+ __sfc__.render = render;
60
+ __sfc__.name = "KumoText";
61
+ __sfc__.__file = "components/text.vue";
62
+ export default __sfc__;
63
+
64
+ export { __sfc__ as Text }
@@ -0,0 +1,8 @@
1
+ // @generated by src/kumo/emitters/vue/index.mjs; do not edit
2
+ import type { DefineComponent } from 'vue';
3
+ export interface ToastyProps { [key: string]: unknown }
4
+ declare const component: DefineComponent<ToastyProps>;
5
+ export default component;
6
+ export declare const modelDigest: "f05e8c2389dfb02ca23049e0fc5aa80b2797a0b63cb9c09a9603acb5d07c79bf";
7
+
8
+ export { component as Toasty };