@ensolid/radix 0.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 (169) hide show
  1. package/dist/components/Accordion/Accordion.d.ts +79 -0
  2. package/dist/components/Accordion/Accordion.d.ts.map +1 -0
  3. package/dist/components/Accordion/Accordion.js +193 -0
  4. package/dist/components/Accordion/Accordion.js.map +1 -0
  5. package/dist/components/Accordion/index.d.ts +2 -0
  6. package/dist/components/Accordion/index.d.ts.map +1 -0
  7. package/dist/components/AlertDialog/AlertDialog.d.ts +89 -0
  8. package/dist/components/AlertDialog/AlertDialog.d.ts.map +1 -0
  9. package/dist/components/AlertDialog/AlertDialog.js +235 -0
  10. package/dist/components/AlertDialog/AlertDialog.js.map +1 -0
  11. package/dist/components/AlertDialog/index.d.ts +2 -0
  12. package/dist/components/AlertDialog/index.d.ts.map +1 -0
  13. package/dist/components/AspectRatio/AspectRatio.d.ts +14 -0
  14. package/dist/components/AspectRatio/AspectRatio.d.ts.map +1 -0
  15. package/dist/components/AspectRatio/AspectRatio.js +25 -0
  16. package/dist/components/AspectRatio/AspectRatio.js.map +1 -0
  17. package/dist/components/AspectRatio/index.d.ts +2 -0
  18. package/dist/components/AspectRatio/index.d.ts.map +1 -0
  19. package/dist/components/Avatar/Avatar.d.ts +41 -0
  20. package/dist/components/Avatar/Avatar.d.ts.map +1 -0
  21. package/dist/components/Avatar/Avatar.js +144 -0
  22. package/dist/components/Avatar/Avatar.js.map +1 -0
  23. package/dist/components/Avatar/index.d.ts +2 -0
  24. package/dist/components/Avatar/index.d.ts.map +1 -0
  25. package/dist/components/Checkbox/Checkbox.d.ts +27 -0
  26. package/dist/components/Checkbox/Checkbox.d.ts.map +1 -0
  27. package/dist/components/Checkbox/Checkbox.js +49 -0
  28. package/dist/components/Checkbox/Checkbox.js.map +1 -0
  29. package/dist/components/Checkbox/index.d.ts +2 -0
  30. package/dist/components/Checkbox/index.d.ts.map +1 -0
  31. package/dist/components/Collapsible/Collapsible.d.ts +54 -0
  32. package/dist/components/Collapsible/Collapsible.d.ts.map +1 -0
  33. package/dist/components/Collapsible/Collapsible.js +110 -0
  34. package/dist/components/Collapsible/Collapsible.js.map +1 -0
  35. package/dist/components/Collapsible/index.d.ts +2 -0
  36. package/dist/components/Collapsible/index.d.ts.map +1 -0
  37. package/dist/components/ContextMenu/ContextMenu.d.ts +89 -0
  38. package/dist/components/ContextMenu/ContextMenu.d.ts.map +1 -0
  39. package/dist/components/ContextMenu/ContextMenu.js +263 -0
  40. package/dist/components/ContextMenu/ContextMenu.js.map +1 -0
  41. package/dist/components/ContextMenu/index.d.ts +2 -0
  42. package/dist/components/ContextMenu/index.d.ts.map +1 -0
  43. package/dist/components/Dialog/Dialog.d.ts +87 -0
  44. package/dist/components/Dialog/Dialog.d.ts.map +1 -0
  45. package/dist/components/Dialog/Dialog.js +218 -0
  46. package/dist/components/Dialog/Dialog.js.map +1 -0
  47. package/dist/components/Dialog/index.d.ts +2 -0
  48. package/dist/components/Dialog/index.d.ts.map +1 -0
  49. package/dist/components/DropdownMenu/DropdownMenu.d.ts +81 -0
  50. package/dist/components/DropdownMenu/DropdownMenu.d.ts.map +1 -0
  51. package/dist/components/DropdownMenu/DropdownMenu.js +244 -0
  52. package/dist/components/DropdownMenu/DropdownMenu.js.map +1 -0
  53. package/dist/components/DropdownMenu/index.d.ts +2 -0
  54. package/dist/components/DropdownMenu/index.d.ts.map +1 -0
  55. package/dist/components/HoverCard/HoverCard.d.ts +63 -0
  56. package/dist/components/HoverCard/HoverCard.d.ts.map +1 -0
  57. package/dist/components/HoverCard/HoverCard.js +199 -0
  58. package/dist/components/HoverCard/HoverCard.js.map +1 -0
  59. package/dist/components/HoverCard/index.d.ts +2 -0
  60. package/dist/components/HoverCard/index.d.ts.map +1 -0
  61. package/dist/components/Label/Label.d.ts +14 -0
  62. package/dist/components/Label/Label.d.ts.map +1 -0
  63. package/dist/components/Label/Label.js +23 -0
  64. package/dist/components/Label/Label.js.map +1 -0
  65. package/dist/components/Label/index.d.ts +2 -0
  66. package/dist/components/Label/index.d.ts.map +1 -0
  67. package/dist/components/Menubar/Menubar.d.ts +85 -0
  68. package/dist/components/Menubar/Menubar.d.ts.map +1 -0
  69. package/dist/components/Menubar/Menubar.js +299 -0
  70. package/dist/components/Menubar/Menubar.js.map +1 -0
  71. package/dist/components/Menubar/index.d.ts +2 -0
  72. package/dist/components/Menubar/index.d.ts.map +1 -0
  73. package/dist/components/NavigationMenu/NavigationMenu.d.ts +105 -0
  74. package/dist/components/NavigationMenu/NavigationMenu.d.ts.map +1 -0
  75. package/dist/components/NavigationMenu/NavigationMenu.js +320 -0
  76. package/dist/components/NavigationMenu/NavigationMenu.js.map +1 -0
  77. package/dist/components/NavigationMenu/index.d.ts +2 -0
  78. package/dist/components/NavigationMenu/index.d.ts.map +1 -0
  79. package/dist/components/Popover/Popover.d.ts +52 -0
  80. package/dist/components/Popover/Popover.d.ts.map +1 -0
  81. package/dist/components/Popover/Popover.js +176 -0
  82. package/dist/components/Popover/Popover.js.map +1 -0
  83. package/dist/components/Popover/index.d.ts +2 -0
  84. package/dist/components/Popover/index.d.ts.map +1 -0
  85. package/dist/components/Progress/Progress.d.ts +19 -0
  86. package/dist/components/Progress/Progress.d.ts.map +1 -0
  87. package/dist/components/Progress/Progress.js +44 -0
  88. package/dist/components/Progress/Progress.js.map +1 -0
  89. package/dist/components/Progress/index.d.ts +2 -0
  90. package/dist/components/Progress/index.d.ts.map +1 -0
  91. package/dist/components/RadioGroup/RadioGroup.d.ts +54 -0
  92. package/dist/components/RadioGroup/RadioGroup.d.ts.map +1 -0
  93. package/dist/components/RadioGroup/RadioGroup.js +100 -0
  94. package/dist/components/RadioGroup/RadioGroup.js.map +1 -0
  95. package/dist/components/RadioGroup/index.d.ts +2 -0
  96. package/dist/components/RadioGroup/index.d.ts.map +1 -0
  97. package/dist/components/ScrollArea/ScrollArea.d.ts +58 -0
  98. package/dist/components/ScrollArea/ScrollArea.d.ts.map +1 -0
  99. package/dist/components/ScrollArea/ScrollArea.js +91 -0
  100. package/dist/components/ScrollArea/ScrollArea.js.map +1 -0
  101. package/dist/components/ScrollArea/index.d.ts +2 -0
  102. package/dist/components/ScrollArea/index.d.ts.map +1 -0
  103. package/dist/components/Select/Select.d.ts +80 -0
  104. package/dist/components/Select/Select.d.ts.map +1 -0
  105. package/dist/components/Select/Select.js +240 -0
  106. package/dist/components/Select/Select.js.map +1 -0
  107. package/dist/components/Select/index.d.ts +2 -0
  108. package/dist/components/Select/index.d.ts.map +1 -0
  109. package/dist/components/Separator/Separator.d.ts +15 -0
  110. package/dist/components/Separator/Separator.d.ts.map +1 -0
  111. package/dist/components/Separator/Separator.js +30 -0
  112. package/dist/components/Separator/Separator.js.map +1 -0
  113. package/dist/components/Separator/index.d.ts +2 -0
  114. package/dist/components/Separator/index.d.ts.map +1 -0
  115. package/dist/components/Slider/Slider.d.ts +37 -0
  116. package/dist/components/Slider/Slider.d.ts.map +1 -0
  117. package/dist/components/Slider/Slider.js +63 -0
  118. package/dist/components/Slider/Slider.js.map +1 -0
  119. package/dist/components/Slider/index.d.ts +2 -0
  120. package/dist/components/Slider/index.d.ts.map +1 -0
  121. package/dist/components/Switch/Switch.d.ts +27 -0
  122. package/dist/components/Switch/Switch.d.ts.map +1 -0
  123. package/dist/components/Switch/Switch.js +50 -0
  124. package/dist/components/Switch/Switch.js.map +1 -0
  125. package/dist/components/Switch/index.d.ts +2 -0
  126. package/dist/components/Switch/index.d.ts.map +1 -0
  127. package/dist/components/Tabs/Tabs.d.ts +72 -0
  128. package/dist/components/Tabs/Tabs.d.ts.map +1 -0
  129. package/dist/components/Tabs/Tabs.js +150 -0
  130. package/dist/components/Tabs/Tabs.js.map +1 -0
  131. package/dist/components/Tabs/index.d.ts +2 -0
  132. package/dist/components/Tabs/index.d.ts.map +1 -0
  133. package/dist/components/Toggle/Toggle.d.ts +22 -0
  134. package/dist/components/Toggle/Toggle.d.ts.map +1 -0
  135. package/dist/components/Toggle/Toggle.js +51 -0
  136. package/dist/components/Toggle/Toggle.js.map +1 -0
  137. package/dist/components/Toggle/index.d.ts +2 -0
  138. package/dist/components/Toggle/index.d.ts.map +1 -0
  139. package/dist/components/ToggleGroup/ToggleGroup.d.ts +67 -0
  140. package/dist/components/ToggleGroup/ToggleGroup.d.ts.map +1 -0
  141. package/dist/components/ToggleGroup/ToggleGroup.js +119 -0
  142. package/dist/components/ToggleGroup/ToggleGroup.js.map +1 -0
  143. package/dist/components/ToggleGroup/index.d.ts +2 -0
  144. package/dist/components/ToggleGroup/index.d.ts.map +1 -0
  145. package/dist/components/Toolbar/Toolbar.d.ts +82 -0
  146. package/dist/components/Toolbar/Toolbar.d.ts.map +1 -0
  147. package/dist/components/Toolbar/Toolbar.js +110 -0
  148. package/dist/components/Toolbar/Toolbar.js.map +1 -0
  149. package/dist/components/Toolbar/index.d.ts +2 -0
  150. package/dist/components/Toolbar/index.d.ts.map +1 -0
  151. package/dist/components/Tooltip/Tooltip.d.ts +56 -0
  152. package/dist/components/Tooltip/Tooltip.d.ts.map +1 -0
  153. package/dist/components/Tooltip/Tooltip.js +155 -0
  154. package/dist/components/Tooltip/Tooltip.js.map +1 -0
  155. package/dist/components/Tooltip/index.d.ts +2 -0
  156. package/dist/components/Tooltip/index.d.ts.map +1 -0
  157. package/dist/components/VisuallyHidden/VisuallyHidden.d.ts +9 -0
  158. package/dist/components/VisuallyHidden/VisuallyHidden.d.ts.map +1 -0
  159. package/dist/components/VisuallyHidden/VisuallyHidden.js +23 -0
  160. package/dist/components/VisuallyHidden/VisuallyHidden.js.map +1 -0
  161. package/dist/components/VisuallyHidden/index.d.ts +2 -0
  162. package/dist/components/VisuallyHidden/index.d.ts.map +1 -0
  163. package/dist/components/index.d.ts +28 -0
  164. package/dist/components/index.d.ts.map +1 -0
  165. package/dist/index.d.ts +2 -0
  166. package/dist/index.d.ts.map +1 -0
  167. package/dist/index.js +140 -0
  168. package/dist/index.js.map +1 -0
  169. package/package.json +97 -0
@@ -0,0 +1,110 @@
1
+ import { template, spread, mergeProps, insert } from "solid-js/web";
2
+ import { splitProps } from "solid-js";
3
+ var _tmpl$ = /* @__PURE__ */ template(`<div role=toolbar aria-orientation=horizontal>`), _tmpl$2 = /* @__PURE__ */ template(`<div role=group>`), _tmpl$3 = /* @__PURE__ */ template(`<button type=button role=button>`), _tmpl$4 = /* @__PURE__ */ template(`<hr role=separator>`), _tmpl$5 = /* @__PURE__ */ template(`<a>`), _tmpl$6 = /* @__PURE__ */ template(`<button type=button>`);
4
+ const ToolbarBase = (props) => {
5
+ const [local, others] = splitProps(props, ["class", "children"]);
6
+ return (() => {
7
+ var _el$ = _tmpl$();
8
+ spread(_el$, mergeProps({
9
+ get ["class"]() {
10
+ return local.class;
11
+ }
12
+ }, others), false, true);
13
+ insert(_el$, () => local.children);
14
+ return _el$;
15
+ })();
16
+ };
17
+ const Toolbar = Object.assign(ToolbarBase, {
18
+ ToggleGroup: null,
19
+ ToggleItem: null,
20
+ Separator: null,
21
+ Link: null,
22
+ Button: null
23
+ });
24
+ const ToolbarToggleGroup = (props) => {
25
+ const [local, others] = splitProps(props, ["type", "value", "defaultValue", "onValueChange", "disabled", "class", "children"]);
26
+ return (() => {
27
+ var _el$2 = _tmpl$2();
28
+ spread(_el$2, mergeProps({
29
+ get ["class"]() {
30
+ return local.class;
31
+ },
32
+ get ["data-disabled"]() {
33
+ return local.disabled ? "" : void 0;
34
+ }
35
+ }, others), false, true);
36
+ insert(_el$2, () => local.children);
37
+ return _el$2;
38
+ })();
39
+ };
40
+ const ToolbarToggleItem = (props) => {
41
+ const [local, others] = splitProps(props, ["value", "disabled", "class", "children"]);
42
+ return (() => {
43
+ var _el$3 = _tmpl$3();
44
+ spread(_el$3, mergeProps({
45
+ get ["class"]() {
46
+ return local.class;
47
+ },
48
+ get disabled() {
49
+ return local.disabled;
50
+ },
51
+ get ["data-disabled"]() {
52
+ return local.disabled ? "" : void 0;
53
+ }
54
+ }, others), false, true);
55
+ insert(_el$3, () => local.children);
56
+ return _el$3;
57
+ })();
58
+ };
59
+ const ToolbarSeparator = (props) => {
60
+ const [local, others] = splitProps(props, ["class"]);
61
+ return (() => {
62
+ var _el$4 = _tmpl$4();
63
+ spread(_el$4, mergeProps({
64
+ get ["class"]() {
65
+ return local.class;
66
+ }
67
+ }, others), false, false);
68
+ return _el$4;
69
+ })();
70
+ };
71
+ const ToolbarLink = (props) => {
72
+ const [local, others] = splitProps(props, ["class", "children"]);
73
+ return (() => {
74
+ var _el$5 = _tmpl$5();
75
+ spread(_el$5, mergeProps({
76
+ get ["class"]() {
77
+ return local.class;
78
+ }
79
+ }, others), false, true);
80
+ insert(_el$5, () => local.children);
81
+ return _el$5;
82
+ })();
83
+ };
84
+ const ToolbarButton = (props) => {
85
+ const [local, others] = splitProps(props, ["children", "asChild", "class"]);
86
+ return (() => {
87
+ var _el$6 = _tmpl$6();
88
+ spread(_el$6, mergeProps({
89
+ get ["class"]() {
90
+ return local.class;
91
+ }
92
+ }, others), false, true);
93
+ insert(_el$6, () => local.children);
94
+ return _el$6;
95
+ })();
96
+ };
97
+ Toolbar.ToggleGroup = ToolbarToggleGroup;
98
+ Toolbar.ToggleItem = ToolbarToggleItem;
99
+ Toolbar.Separator = ToolbarSeparator;
100
+ Toolbar.Link = ToolbarLink;
101
+ Toolbar.Button = ToolbarButton;
102
+ export {
103
+ Toolbar,
104
+ ToolbarButton,
105
+ ToolbarLink,
106
+ ToolbarSeparator,
107
+ ToolbarToggleGroup,
108
+ ToolbarToggleItem
109
+ };
110
+ //# sourceMappingURL=Toolbar.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Toolbar.js","sources":["../../../src/components/Toolbar/Toolbar.tsx"],"sourcesContent":["import { splitProps } from 'solid-js';\nimport type { Component, JSX } from 'solid-js';\n\nexport interface ToolbarProps extends JSX.HTMLAttributes<HTMLDivElement> {\n /**\n * 子元素\n */\n children?: JSX.Element;\n}\n\nexport interface ToolbarComponent extends Component<ToolbarProps> {\n ToggleGroup: Component<ToolbarToggleGroupProps>;\n ToggleItem: Component<ToolbarToggleItemProps>;\n Separator: Component<ToolbarSeparatorProps>;\n Link: Component<ToolbarLinkProps>;\n Button: Component<ToolbarButtonProps>;\n}\n\nconst ToolbarBase: Component<ToolbarProps> = (props) => {\n const [local, others] = splitProps(props, ['class', 'children']);\n\n return (\n <div\n role=\"toolbar\"\n class={local.class}\n aria-orientation=\"horizontal\"\n {...others}\n >\n {local.children}\n </div>\n );\n};\n\nexport const Toolbar = Object.assign(ToolbarBase, {\n ToggleGroup: null as unknown as Component<ToolbarToggleGroupProps>,\n ToggleItem: null as unknown as Component<ToolbarToggleItemProps>,\n Separator: null as unknown as Component<ToolbarSeparatorProps>,\n Link: null as unknown as Component<ToolbarLinkProps>,\n Button: null as unknown as Component<ToolbarButtonProps>,\n}) as ToolbarComponent;\n\nexport interface ToolbarToggleGroupProps extends JSX.HTMLAttributes<HTMLDivElement> {\n /**\n * 类型:单个或多个\n * @default 'single'\n */\n type?: 'single' | 'multiple';\n /**\n * 当前选中的值\n */\n value?: string | string[];\n /**\n * 默认选中的值\n */\n defaultValue?: string | string[];\n /**\n * 值变化回调\n */\n onValueChange?: (value: string | string[]) => void;\n /**\n * 是否禁用\n * @default false\n */\n disabled?: boolean;\n /**\n * 子元素\n */\n children?: JSX.Element;\n}\n\nexport const ToolbarToggleGroup: Component<ToolbarToggleGroupProps> = (props) => {\n const [local, others] = splitProps(props, [\n 'type',\n 'value',\n 'defaultValue',\n 'onValueChange',\n 'disabled',\n 'class',\n 'children',\n ]);\n\n return (\n <div\n class={local.class}\n role=\"group\"\n data-disabled={local.disabled ? '' : undefined}\n {...others}\n >\n {local.children}\n </div>\n );\n};\n\nexport interface ToolbarToggleItemProps extends JSX.ButtonHTMLAttributes<HTMLButtonElement> {\n /**\n * 项的值\n */\n value: string;\n /**\n * 是否禁用\n * @default false\n */\n disabled?: boolean;\n /**\n * 子元素\n */\n children?: JSX.Element;\n}\n\nexport const ToolbarToggleItem: Component<ToolbarToggleItemProps> = (props) => {\n const [local, others] = splitProps(props, ['value', 'disabled', 'class', 'children']);\n\n return (\n <button\n type=\"button\"\n role=\"button\"\n class={local.class}\n disabled={local.disabled}\n data-disabled={local.disabled ? '' : undefined}\n {...others}\n >\n {local.children}\n </button>\n );\n};\n\nexport interface ToolbarSeparatorProps extends JSX.HTMLAttributes<HTMLHRElement> {\n}\n\nexport const ToolbarSeparator: Component<ToolbarSeparatorProps> = (props) => {\n const [local, others] = splitProps(props, ['class']);\n\n return (\n <hr\n role=\"separator\"\n class={local.class}\n {...others}\n />\n );\n};\n\nexport interface ToolbarLinkProps extends JSX.AnchorHTMLAttributes<HTMLAnchorElement> {\n /**\n * 子元素\n */\n children?: JSX.Element;\n}\n\nexport const ToolbarLink: Component<ToolbarLinkProps> = (props) => {\n const [local, others] = splitProps(props, ['class', 'children']);\n\n return (\n <a\n class={local.class}\n {...others}\n >\n {local.children}\n </a>\n );\n};\n\nexport interface ToolbarButtonProps extends JSX.ButtonHTMLAttributes<HTMLButtonElement> {\n /**\n * 子元素\n */\n children?: JSX.Element;\n /**\n * 是否作为子元素传递\n */\n asChild?: boolean;\n}\n\nexport const ToolbarButton: Component<ToolbarButtonProps> = (props) => {\n const [local, others] = splitProps(props, ['children', 'asChild', 'class']);\n\n return (\n <button\n type=\"button\"\n class={local.class}\n {...others}\n >\n {local.children}\n </button>\n );\n};\n\nToolbar.ToggleGroup = ToolbarToggleGroup;\nToolbar.ToggleItem = ToolbarToggleItem;\nToolbar.Separator = ToolbarSeparator;\nToolbar.Link = ToolbarLink;\nToolbar.Button = ToolbarButton;\n\n"],"names":["ToolbarBase","props","local","others","splitProps","_el$","_tmpl$","_$spread","_$mergeProps","class","_$insert","children","Toolbar","Object","assign","ToggleGroup","ToggleItem","Separator","Link","Button","ToolbarToggleGroup","_el$2","_tmpl$2","disabled","undefined","ToolbarToggleItem","_el$3","_tmpl$3","ToolbarSeparator","_el$4","_tmpl$4","ToolbarLink","_el$5","_tmpl$5","ToolbarButton","_el$6","_tmpl$6"],"mappings":";;;AAkBA,MAAMA,cAAwCC,CAAAA,UAAU;AACtD,QAAM,CAACC,OAAOC,MAAM,IAAIC,WAAWH,OAAO,CAAC,SAAS,UAAU,CAAC;AAE/D,UAAA,MAAA;AAAA,QAAAI,OAAAC,OAAAA;AAAAC,WAAAF,MAAAG,WAAA;AAAA,MAAA,KAAA,OAAA,IAAA;AAAA,eAGWN,MAAMO;AAAAA,MAAK;AAAA,IAAA,GAEdN,MAAM,GAAA,OAAA,IAAA;AAAAO,WAAAL,MAAA,MAETH,MAAMS,QAAQ;AAAA,WAAAN;AAAAA,EAAA,GAAA;AAGrB;AAEO,MAAMO,UAAUC,OAAOC,OAAOd,aAAa;AAAA,EAChDe,aAAa;AAAA,EACbC,YAAY;AAAA,EACZC,WAAW;AAAA,EACXC,MAAM;AAAA,EACNC,QAAQ;AACV,CAAC;AA+BM,MAAMC,qBAA0DnB,CAAAA,UAAU;AAC/E,QAAM,CAACC,OAAOC,MAAM,IAAIC,WAAWH,OAAO,CACxC,QACA,SACA,gBACA,iBACA,YACA,SACA,UAAU,CACX;AAED,UAAA,MAAA;AAAA,QAAAoB,QAAAC,QAAAA;AAAAf,WAAAc,OAAAb,WAAA;AAAA,MAAA,KAAA,OAAA,IAAA;AAAA,eAEWN,MAAMO;AAAAA,MAAK;AAAA,MAAA,KAAA,eAAA,IAAA;AAAA,eAEHP,MAAMqB,WAAW,KAAKC;AAAAA,MAAS;AAAA,IAAA,GAC1CrB,MAAM,GAAA,OAAA,IAAA;AAAAO,WAAAW,OAAA,MAETnB,MAAMS,QAAQ;AAAA,WAAAU;AAAAA,EAAA,GAAA;AAGrB;AAkBO,MAAMI,oBAAwDxB,CAAAA,UAAU;AAC7E,QAAM,CAACC,OAAOC,MAAM,IAAIC,WAAWH,OAAO,CAAC,SAAS,YAAY,SAAS,UAAU,CAAC;AAEpF,UAAA,MAAA;AAAA,QAAAyB,QAAAC,QAAAA;AAAApB,WAAAmB,OAAAlB,WAAA;AAAA,MAAA,KAAA,OAAA,IAAA;AAAA,eAIWN,MAAMO;AAAAA,MAAK;AAAA,MAAA,IAClBc,WAAQ;AAAA,eAAErB,MAAMqB;AAAAA,MAAQ;AAAA,MAAA,KAAA,eAAA,IAAA;AAAA,eACTrB,MAAMqB,WAAW,KAAKC;AAAAA,MAAS;AAAA,IAAA,GAC1CrB,MAAM,GAAA,OAAA,IAAA;AAAAO,WAAAgB,OAAA,MAETxB,MAAMS,QAAQ;AAAA,WAAAe;AAAAA,EAAA,GAAA;AAGrB;AAKO,MAAME,mBAAsD3B,CAAAA,UAAU;AAC3E,QAAM,CAACC,OAAOC,MAAM,IAAIC,WAAWH,OAAO,CAAC,OAAO,CAAC;AAEnD,UAAA,MAAA;AAAA,QAAA4B,QAAAC,QAAAA;AAAAvB,WAAAsB,OAAArB,WAAA;AAAA,MAAA,KAAA,OAAA,IAAA;AAAA,eAGWN,MAAMO;AAAAA,MAAK;AAAA,IAAA,GACdN,MAAM,GAAA,OAAA,KAAA;AAAA,WAAA0B;AAAAA,EAAA,GAAA;AAGhB;AASO,MAAME,cAA4C9B,CAAAA,UAAU;AACjE,QAAM,CAACC,OAAOC,MAAM,IAAIC,WAAWH,OAAO,CAAC,SAAS,UAAU,CAAC;AAE/D,UAAA,MAAA;AAAA,QAAA+B,QAAAC,QAAAA;AAAA1B,WAAAyB,OAAAxB,WAAA;AAAA,MAAA,KAAA,OAAA,IAAA;AAAA,eAEWN,MAAMO;AAAAA,MAAK;AAAA,IAAA,GACdN,MAAM,GAAA,OAAA,IAAA;AAAAO,WAAAsB,OAAA,MAET9B,MAAMS,QAAQ;AAAA,WAAAqB;AAAAA,EAAA,GAAA;AAGrB;AAaO,MAAME,gBAAgDjC,CAAAA,UAAU;AACrE,QAAM,CAACC,OAAOC,MAAM,IAAIC,WAAWH,OAAO,CAAC,YAAY,WAAW,OAAO,CAAC;AAE1E,UAAA,MAAA;AAAA,QAAAkC,QAAAC,QAAAA;AAAA7B,WAAA4B,OAAA3B,WAAA;AAAA,MAAA,KAAA,OAAA,IAAA;AAAA,eAGWN,MAAMO;AAAAA,MAAK;AAAA,IAAA,GACdN,MAAM,GAAA,OAAA,IAAA;AAAAO,WAAAyB,OAAA,MAETjC,MAAMS,QAAQ;AAAA,WAAAwB;AAAAA,EAAA,GAAA;AAGrB;AAEAvB,QAAQG,cAAcK;AACtBR,QAAQI,aAAaS;AACrBb,QAAQK,YAAYW;AACpBhB,QAAQM,OAAOa;AACfnB,QAAQO,SAASe;"}
@@ -0,0 +1,2 @@
1
+ export * from './Toolbar';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Toolbar/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC"}
@@ -0,0 +1,56 @@
1
+ import { Component, JSX } from 'solid-js';
2
+ interface TooltipContextValue {
3
+ open: () => boolean;
4
+ setOpen: (open: boolean) => void;
5
+ triggerRef: () => HTMLElement | undefined;
6
+ setTriggerRef: (ref: HTMLElement | undefined) => void;
7
+ }
8
+ export declare const useTooltipContext: () => TooltipContextValue;
9
+ export interface TooltipProps extends JSX.HTMLAttributes<HTMLDivElement> {
10
+ /**
11
+ * 是否打开
12
+ */
13
+ open?: boolean;
14
+ /**
15
+ * 默认打开状态
16
+ */
17
+ defaultOpen?: boolean;
18
+ /**
19
+ * 打开状态变化回调
20
+ */
21
+ onOpenChange?: (open: boolean) => void;
22
+ /**
23
+ * 延迟显示时间(毫秒)
24
+ * @default 700
25
+ */
26
+ delayDuration?: number;
27
+ /**
28
+ * 子元素
29
+ */
30
+ children?: JSX.Element;
31
+ }
32
+ export interface TooltipComponent extends Component<TooltipProps> {
33
+ Trigger: Component<TooltipTriggerProps>;
34
+ Content: Component<TooltipContentProps>;
35
+ }
36
+ export declare const Tooltip: TooltipComponent;
37
+ export interface TooltipTriggerProps extends JSX.HTMLAttributes<HTMLDivElement> {
38
+ /**
39
+ * 子元素
40
+ */
41
+ children?: JSX.Element;
42
+ /**
43
+ * 是否作为子元素传递
44
+ */
45
+ asChild?: boolean;
46
+ }
47
+ export declare const TooltipTrigger: Component<TooltipTriggerProps>;
48
+ export interface TooltipContentProps extends JSX.HTMLAttributes<HTMLDivElement> {
49
+ /**
50
+ * 子元素
51
+ */
52
+ children?: JSX.Element;
53
+ }
54
+ export declare const TooltipContent: Component<TooltipContentProps>;
55
+ export {};
56
+ //# sourceMappingURL=Tooltip.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Tooltip.d.ts","sourceRoot":"","sources":["../../../src/components/Tooltip/Tooltip.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAE/C,UAAU,mBAAmB;IAC3B,IAAI,EAAE,MAAM,OAAO,CAAC;IACpB,OAAO,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACjC,UAAU,EAAE,MAAM,WAAW,GAAG,SAAS,CAAC;IAC1C,aAAa,EAAE,CAAC,GAAG,EAAE,WAAW,GAAG,SAAS,KAAK,IAAI,CAAC;CACvD;AAID,eAAO,MAAM,iBAAiB,2BAM7B,CAAC;AAEF,MAAM,WAAW,YAAa,SAAQ,GAAG,CAAC,cAAc,CAAC,cAAc,CAAC;IACtE;;OAEG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;IACf;;OAEG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;OAEG;IACH,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACvC;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;OAEG;IACH,QAAQ,CAAC,EAAE,GAAG,CAAC,OAAO,CAAC;CACxB;AAwCD,MAAM,WAAW,gBAAiB,SAAQ,SAAS,CAAC,YAAY,CAAC;IAC/D,OAAO,EAAE,SAAS,CAAC,mBAAmB,CAAC,CAAC;IACxC,OAAO,EAAE,SAAS,CAAC,mBAAmB,CAAC,CAAC;CACzC;AAED,eAAO,MAAM,OAAO,EAGd,gBAAgB,CAAC;AAEvB,MAAM,WAAW,mBAAoB,SAAQ,GAAG,CAAC,cAAc,CAAC,cAAc,CAAC;IAC7E;;OAEG;IACH,QAAQ,CAAC,EAAE,GAAG,CAAC,OAAO,CAAC;IACvB;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,eAAO,MAAM,cAAc,EAAE,SAAS,CAAC,mBAAmB,CA6CzD,CAAC;AAEF,MAAM,WAAW,mBAAoB,SAAQ,GAAG,CAAC,cAAc,CAAC,cAAc,CAAC;IAC7E;;OAEG;IACH,QAAQ,CAAC,EAAE,GAAG,CAAC,OAAO,CAAC;CACxB;AAED,eAAO,MAAM,cAAc,EAAE,SAAS,CAAC,mBAAmB,CAkEzD,CAAC"}
@@ -0,0 +1,155 @@
1
+ import { createComponent, template, spread, mergeProps, insert, isServer, Portal, use } from "solid-js/web";
2
+ import { createContext, splitProps, createSignal, onMount, onCleanup, createEffect, Show, useContext } from "solid-js";
3
+ var _tmpl$ = /* @__PURE__ */ template(`<div>`), _tmpl$2 = /* @__PURE__ */ template(`<div role=tooltip style=top:0px;left:0px>`);
4
+ const TooltipContext = createContext();
5
+ const useTooltipContext = () => {
6
+ const context = useContext(TooltipContext);
7
+ if (!context) {
8
+ throw new Error("Tooltip components must be used within Tooltip");
9
+ }
10
+ return context;
11
+ };
12
+ const TooltipBase = (props) => {
13
+ const [local] = splitProps(props, ["open", "defaultOpen", "onOpenChange", "delayDuration", "children"]);
14
+ const [internalOpen, setInternalOpen] = createSignal(local.open ?? local.defaultOpen ?? false);
15
+ const [triggerRef, setTriggerRef] = createSignal();
16
+ const isControlled = () => local.open !== void 0;
17
+ const open = () => isControlled() ? local.open : internalOpen();
18
+ const handleOpenChange = (newOpen) => {
19
+ if (!isControlled()) {
20
+ setInternalOpen(newOpen);
21
+ }
22
+ local.onOpenChange?.(newOpen);
23
+ };
24
+ const contextValue = {
25
+ open,
26
+ setOpen: handleOpenChange,
27
+ triggerRef,
28
+ setTriggerRef
29
+ };
30
+ return createComponent(TooltipContext.Provider, {
31
+ value: contextValue,
32
+ get children() {
33
+ return local.children;
34
+ }
35
+ });
36
+ };
37
+ const Tooltip = Object.assign(TooltipBase, {
38
+ Trigger: null,
39
+ Content: null
40
+ });
41
+ const TooltipTrigger = (props) => {
42
+ const [local, others] = splitProps(props, ["children", "asChild", "class"]);
43
+ const context = useTooltipContext();
44
+ let triggerElement;
45
+ let timeoutId;
46
+ const handleMouseEnter = () => {
47
+ if (timeoutId) {
48
+ clearTimeout(timeoutId);
49
+ }
50
+ timeoutId = setTimeout(() => {
51
+ context.setOpen(true);
52
+ }, 700);
53
+ };
54
+ const handleMouseLeave = () => {
55
+ if (timeoutId) {
56
+ clearTimeout(timeoutId);
57
+ }
58
+ context.setOpen(false);
59
+ };
60
+ onMount(() => {
61
+ if (triggerElement) {
62
+ context.setTriggerRef(triggerElement);
63
+ }
64
+ });
65
+ onCleanup(() => {
66
+ if (timeoutId) {
67
+ clearTimeout(timeoutId);
68
+ }
69
+ });
70
+ return (() => {
71
+ var _el$ = _tmpl$();
72
+ _el$.addEventListener("mouseleave", handleMouseLeave);
73
+ _el$.addEventListener("mouseenter", handleMouseEnter);
74
+ var _ref$ = triggerElement;
75
+ typeof _ref$ === "function" ? use(_ref$, _el$) : triggerElement = _el$;
76
+ spread(_el$, mergeProps({
77
+ get ["class"]() {
78
+ return local.class;
79
+ }
80
+ }, others), false, true);
81
+ insert(_el$, () => local.children);
82
+ return _el$;
83
+ })();
84
+ };
85
+ const TooltipContent = (props) => {
86
+ const [local, others] = splitProps(props, ["class", "children"]);
87
+ const context = useTooltipContext();
88
+ let contentElement;
89
+ const updatePosition = () => {
90
+ if (!isServer && contentElement && context.triggerRef()) {
91
+ const trigger = context.triggerRef();
92
+ const rect = trigger.getBoundingClientRect();
93
+ const contentRect = contentElement.getBoundingClientRect();
94
+ const top = rect.top - contentRect.height - 8;
95
+ const left = rect.left + rect.width / 2 - contentRect.width / 2;
96
+ const viewportWidth = window.innerWidth;
97
+ let finalTop = top;
98
+ let finalLeft = left;
99
+ if (top < 0) {
100
+ finalTop = rect.bottom + 8;
101
+ }
102
+ if (left < 0) {
103
+ finalLeft = 8;
104
+ }
105
+ if (left + contentRect.width > viewportWidth) {
106
+ finalLeft = viewportWidth - contentRect.width - 8;
107
+ }
108
+ contentElement.style.top = `${finalTop}px`;
109
+ contentElement.style.left = `${finalLeft}px`;
110
+ }
111
+ };
112
+ createEffect(() => {
113
+ if (context.open() && !isServer) {
114
+ requestAnimationFrame(() => {
115
+ updatePosition();
116
+ });
117
+ }
118
+ });
119
+ return createComponent(Show, {
120
+ get when() {
121
+ return context.open();
122
+ },
123
+ get children() {
124
+ return createComponent(Portal, {
125
+ get mount() {
126
+ return !isServer ? document.body : void 0;
127
+ },
128
+ get children() {
129
+ var _el$2 = _tmpl$2();
130
+ var _ref$2 = contentElement;
131
+ typeof _ref$2 === "function" ? use(_ref$2, _el$2) : contentElement = _el$2;
132
+ spread(_el$2, mergeProps({
133
+ get ["class"]() {
134
+ return `fixed z-50 ${local.class || ""}`;
135
+ },
136
+ get ["data-state"]() {
137
+ return context.open() ? "open" : "closed";
138
+ }
139
+ }, others), false, true);
140
+ insert(_el$2, () => local.children);
141
+ return _el$2;
142
+ }
143
+ });
144
+ }
145
+ });
146
+ };
147
+ Tooltip.Trigger = TooltipTrigger;
148
+ Tooltip.Content = TooltipContent;
149
+ export {
150
+ Tooltip,
151
+ TooltipContent,
152
+ TooltipTrigger,
153
+ useTooltipContext
154
+ };
155
+ //# sourceMappingURL=Tooltip.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Tooltip.js","sources":["../../../src/components/Tooltip/Tooltip.tsx"],"sourcesContent":["import { splitProps, createSignal, createContext, useContext, Show, onMount, onCleanup, createEffect } from 'solid-js';\nimport { Portal } from 'solid-js/web';\nimport { isServer } from 'solid-js/web';\nimport type { Component, JSX } from 'solid-js';\n\ninterface TooltipContextValue {\n open: () => boolean;\n setOpen: (open: boolean) => void;\n triggerRef: () => HTMLElement | undefined;\n setTriggerRef: (ref: HTMLElement | undefined) => void;\n}\n\nconst TooltipContext = createContext<TooltipContextValue>();\n\nexport const useTooltipContext = () => {\n const context = useContext(TooltipContext);\n if (!context) {\n throw new Error('Tooltip components must be used within Tooltip');\n }\n return context;\n};\n\nexport interface TooltipProps extends JSX.HTMLAttributes<HTMLDivElement> {\n /**\n * 是否打开\n */\n open?: boolean;\n /**\n * 默认打开状态\n */\n defaultOpen?: boolean;\n /**\n * 打开状态变化回调\n */\n onOpenChange?: (open: boolean) => void;\n /**\n * 延迟显示时间(毫秒)\n * @default 700\n */\n delayDuration?: number;\n /**\n * 子元素\n */\n children?: JSX.Element;\n}\n\nconst TooltipBase: Component<TooltipProps> = (props) => {\n const [local] = splitProps(props, [\n 'open',\n 'defaultOpen',\n 'onOpenChange',\n 'delayDuration',\n 'children',\n ]);\n\n const [internalOpen, setInternalOpen] = createSignal(\n local.open ?? local.defaultOpen ?? false\n );\n const [triggerRef, setTriggerRef] = createSignal<HTMLElement | undefined>();\n\n const isControlled = () => local.open !== undefined;\n const open = () => (isControlled() ? local.open! : internalOpen());\n\n const handleOpenChange = (newOpen: boolean) => {\n if (!isControlled()) {\n setInternalOpen(newOpen);\n }\n local.onOpenChange?.(newOpen);\n };\n\n const contextValue: TooltipContextValue = {\n open,\n setOpen: handleOpenChange,\n triggerRef,\n setTriggerRef,\n };\n\n return (\n <TooltipContext.Provider value={contextValue}>\n {local.children}\n </TooltipContext.Provider>\n );\n};\n\nexport interface TooltipComponent extends Component<TooltipProps> {\n Trigger: Component<TooltipTriggerProps>;\n Content: Component<TooltipContentProps>;\n}\n\nexport const Tooltip = Object.assign(TooltipBase, {\n Trigger: null as unknown as Component<TooltipTriggerProps>,\n Content: null as unknown as Component<TooltipContentProps>,\n}) as TooltipComponent;\n\nexport interface TooltipTriggerProps extends JSX.HTMLAttributes<HTMLDivElement> {\n /**\n * 子元素\n */\n children?: JSX.Element;\n /**\n * 是否作为子元素传递\n */\n asChild?: boolean;\n}\n\nexport const TooltipTrigger: Component<TooltipTriggerProps> = (props) => {\n const [local, others] = splitProps(props, ['children', 'asChild', 'class']);\n const context = useTooltipContext();\n let triggerElement: HTMLDivElement | undefined;\n let timeoutId: number | undefined;\n\n const handleMouseEnter = () => {\n if (timeoutId) {\n clearTimeout(timeoutId);\n }\n timeoutId = setTimeout(() => {\n context.setOpen(true);\n }, 700) as unknown as number;\n };\n\n const handleMouseLeave = () => {\n if (timeoutId) {\n clearTimeout(timeoutId);\n }\n context.setOpen(false);\n };\n\n onMount(() => {\n if (triggerElement) {\n context.setTriggerRef(triggerElement);\n }\n });\n\n onCleanup(() => {\n if (timeoutId) {\n clearTimeout(timeoutId);\n }\n });\n\n return (\n <div\n ref={triggerElement}\n class={local.class}\n onMouseEnter={handleMouseEnter}\n onMouseLeave={handleMouseLeave}\n {...others}\n >\n {local.children}\n </div>\n );\n};\n\nexport interface TooltipContentProps extends JSX.HTMLAttributes<HTMLDivElement> {\n /**\n * 子元素\n */\n children?: JSX.Element;\n}\n\nexport const TooltipContent: Component<TooltipContentProps> = (props) => {\n const [local, others] = splitProps(props, ['class', 'children'] as const);\n const context = useTooltipContext();\n let contentElement: HTMLDivElement | undefined;\n\n const updatePosition = () => {\n if (!isServer && contentElement && context.triggerRef()) {\n const trigger = context.triggerRef()!;\n const rect = trigger.getBoundingClientRect();\n const contentRect = contentElement.getBoundingClientRect();\n\n // 默认在触发元素上方显示\n const top = rect.top - contentRect.height - 8;\n const left = rect.left + (rect.width / 2) - (contentRect.width / 2);\n\n // 检查是否会超出视口\n const viewportWidth = window.innerWidth;\n\n let finalTop = top;\n let finalLeft = left;\n\n // 如果上方超出,则在下方显示\n if (top < 0) {\n finalTop = rect.bottom + 8;\n }\n\n // 如果左侧超出,则左对齐\n if (left < 0) {\n finalLeft = 8;\n }\n\n // 如果右侧超出,则右对齐\n if (left + contentRect.width > viewportWidth) {\n finalLeft = viewportWidth - contentRect.width - 8;\n }\n\n contentElement.style.top = `${finalTop}px`;\n contentElement.style.left = `${finalLeft}px`;\n }\n };\n\n createEffect(() => {\n if (context.open() && !isServer) {\n // 延迟一帧确保 DOM 已渲染\n requestAnimationFrame(() => {\n updatePosition();\n });\n }\n });\n\n return (\n <Show when={context.open()}>\n <Portal mount={!isServer ? document.body : undefined}>\n <div\n ref={contentElement}\n role=\"tooltip\"\n class={`fixed z-50 ${local.class || ''}`}\n data-state={context.open() ? 'open' : 'closed'}\n style={{ top: '0px', left: '0px' }}\n {...others}\n >\n {local.children}\n </div>\n </Portal>\n </Show>\n );\n};\n\nTooltip.Trigger = TooltipTrigger;\nTooltip.Content = TooltipContent;\n\n"],"names":["TooltipContext","createContext","useTooltipContext","context","useContext","Error","TooltipBase","props","local","splitProps","internalOpen","setInternalOpen","createSignal","open","defaultOpen","triggerRef","setTriggerRef","isControlled","undefined","handleOpenChange","newOpen","onOpenChange","contextValue","setOpen","_$createComponent","Provider","value","children","Tooltip","Object","assign","Trigger","Content","TooltipTrigger","others","triggerElement","timeoutId","handleMouseEnter","clearTimeout","setTimeout","handleMouseLeave","onMount","onCleanup","_el$","_tmpl$","addEventListener","_ref$","_$use","_$spread","_$mergeProps","class","_$insert","TooltipContent","contentElement","updatePosition","isServer","trigger","rect","getBoundingClientRect","contentRect","top","height","left","width","viewportWidth","window","innerWidth","finalTop","finalLeft","bottom","style","createEffect","requestAnimationFrame","Show","when","Portal","mount","document","body","_el$2","_tmpl$2","_ref$2"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export * from './Tooltip';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Tooltip/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC"}
@@ -0,0 +1,9 @@
1
+ import { Component, JSX } from 'solid-js';
2
+ export interface VisuallyHiddenProps extends JSX.HTMLAttributes<HTMLSpanElement> {
3
+ /**
4
+ * 子元素
5
+ */
6
+ children?: JSX.Element;
7
+ }
8
+ export declare const VisuallyHidden: Component<VisuallyHiddenProps>;
9
+ //# sourceMappingURL=VisuallyHidden.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"VisuallyHidden.d.ts","sourceRoot":"","sources":["../../../src/components/VisuallyHidden/VisuallyHidden.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAE/C,MAAM,WAAW,mBAAoB,SAAQ,GAAG,CAAC,cAAc,CAAC,eAAe,CAAC;IAC9E;;OAEG;IACH,QAAQ,CAAC,EAAE,GAAG,CAAC,OAAO,CAAC;CACxB;AAED,eAAO,MAAM,cAAc,EAAE,SAAS,CAAC,mBAAmB,CAYzD,CAAC"}
@@ -0,0 +1,23 @@
1
+ import { template, spread, mergeProps, insert } from "solid-js/web";
2
+ import { splitProps } from "solid-js";
3
+ var _tmpl$ = /* @__PURE__ */ template(`<span>`);
4
+ const VisuallyHidden = (props) => {
5
+ const [local, others] = splitProps(props, ["class", "children", "style"]);
6
+ return (() => {
7
+ var _el$ = _tmpl$();
8
+ spread(_el$, mergeProps({
9
+ get ["class"]() {
10
+ return local.class;
11
+ },
12
+ get style() {
13
+ return `position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border-width: 0; ${typeof local.style === "string" ? local.style : ""}`;
14
+ }
15
+ }, others), false, true);
16
+ insert(_el$, () => local.children);
17
+ return _el$;
18
+ })();
19
+ };
20
+ export {
21
+ VisuallyHidden
22
+ };
23
+ //# sourceMappingURL=VisuallyHidden.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"VisuallyHidden.js","sources":["../../../src/components/VisuallyHidden/VisuallyHidden.tsx"],"sourcesContent":["import { splitProps } from 'solid-js';\nimport type { Component, JSX } from 'solid-js';\n\nexport interface VisuallyHiddenProps extends JSX.HTMLAttributes<HTMLSpanElement> {\n /**\n * 子元素\n */\n children?: JSX.Element;\n}\n\nexport const VisuallyHidden: Component<VisuallyHiddenProps> = (props) => {\n const [local, others] = splitProps(props, ['class', 'children', 'style']);\n\n return (\n <span\n class={local.class}\n style={`position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border-width: 0; ${typeof local.style === 'string' ? local.style : ''}`}\n {...others}\n >\n {local.children}\n </span>\n );\n};\n\n"],"names":["VisuallyHidden","props","local","others","splitProps","_el$","_tmpl$","_$spread","_$mergeProps","class","style","_$insert","children"],"mappings":";;;AAUO,MAAMA,iBAAkDC,CAAAA,UAAU;AACvE,QAAM,CAACC,OAAOC,MAAM,IAAIC,WAAWH,OAAO,CAAC,SAAS,YAAY,OAAO,CAAC;AAExE,UAAA,MAAA;AAAA,QAAAI,OAAAC,OAAAA;AAAAC,WAAAF,MAAAG,WAAA;AAAA,MAAA,KAAA,OAAA,IAAA;AAAA,eAEWN,MAAMO;AAAAA,MAAK;AAAA,MAAA,IAClBC,QAAK;AAAA,eAAE,0JAA0J,OAAOR,MAAMQ,UAAU,WAAWR,MAAMQ,QAAQ,EAAE;AAAA,MAAE;AAAA,IAAA,GACjNP,MAAM,GAAA,OAAA,IAAA;AAAAQ,WAAAN,MAAA,MAETH,MAAMU,QAAQ;AAAA,WAAAP;AAAAA,EAAA,GAAA;AAGrB;"}
@@ -0,0 +1,2 @@
1
+ export * from './VisuallyHidden';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/VisuallyHidden/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC"}
@@ -0,0 +1,28 @@
1
+ export * from './Separator';
2
+ export * from './Label';
3
+ export * from './Checkbox';
4
+ export * from './Switch';
5
+ export * from './RadioGroup';
6
+ export * from './Dialog';
7
+ export * from './Tabs';
8
+ export * from './Accordion';
9
+ export * from './AlertDialog';
10
+ export * from './Popover';
11
+ export * from './DropdownMenu';
12
+ export * from './Tooltip';
13
+ export * from './Select';
14
+ export * from './Slider';
15
+ export * from './Progress';
16
+ export * from './Toggle';
17
+ export * from './Avatar';
18
+ export * from './Collapsible';
19
+ export * from './ContextMenu';
20
+ export * from './HoverCard';
21
+ export * from './ScrollArea';
22
+ export * from './ToggleGroup';
23
+ export * from './AspectRatio';
24
+ export * from './VisuallyHidden';
25
+ export * from './Menubar';
26
+ export * from './Toolbar';
27
+ export * from './NavigationMenu';
28
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":"AAGA,cAAc,aAAa,CAAC;AAC5B,cAAc,SAAS,CAAC;AACxB,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,cAAc,CAAC;AAC7B,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,WAAW,CAAC;AAC1B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,WAAW,CAAC;AAC1B,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,kBAAkB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from './components';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,cAAc,cAAc,CAAC"}
package/dist/index.js ADDED
@@ -0,0 +1,140 @@
1
+ import { Separator } from "./components/Separator/Separator.js";
2
+ import { Label } from "./components/Label/Label.js";
3
+ import { Checkbox } from "./components/Checkbox/Checkbox.js";
4
+ import { Switch } from "./components/Switch/Switch.js";
5
+ import { RadioGroup, RadioGroupItem, useRadioGroupContext } from "./components/RadioGroup/RadioGroup.js";
6
+ import { Dialog, DialogClose, DialogContent, DialogDescription, DialogOverlay, DialogTitle, DialogTrigger, useDialogContext } from "./components/Dialog/Dialog.js";
7
+ import { Tabs, TabsContent, TabsList, TabsTrigger, useTabsContext } from "./components/Tabs/Tabs.js";
8
+ import { Accordion, AccordionContent, AccordionItem, AccordionTrigger, useAccordionContext, useAccordionItemContext } from "./components/Accordion/Accordion.js";
9
+ import { AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogOverlay, AlertDialogTitle, AlertDialogTrigger, useAlertDialogContext } from "./components/AlertDialog/AlertDialog.js";
10
+ import { Popover, PopoverContent, PopoverTrigger, usePopoverContext } from "./components/Popover/Popover.js";
11
+ import { DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuLabel, DropdownMenuSeparator, DropdownMenuTrigger, useDropdownMenuContext } from "./components/DropdownMenu/DropdownMenu.js";
12
+ import { Tooltip, TooltipContent, TooltipTrigger, useTooltipContext } from "./components/Tooltip/Tooltip.js";
13
+ import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue, useSelectContext } from "./components/Select/Select.js";
14
+ import { Slider } from "./components/Slider/Slider.js";
15
+ import { Progress } from "./components/Progress/Progress.js";
16
+ import { Toggle } from "./components/Toggle/Toggle.js";
17
+ import { Avatar, AvatarBase, AvatarFallback, AvatarImage } from "./components/Avatar/Avatar.js";
18
+ import { Collapsible, CollapsibleContent, CollapsibleTrigger, useCollapsibleContext } from "./components/Collapsible/Collapsible.js";
19
+ import { ContextMenu, ContextMenuContent, ContextMenuItem, ContextMenuLabel, ContextMenuSeparator, ContextMenuTrigger, useContextMenuContext } from "./components/ContextMenu/ContextMenu.js";
20
+ import { HoverCard, HoverCardContent, HoverCardTrigger, useHoverCardContext } from "./components/HoverCard/HoverCard.js";
21
+ import { ScrollArea, ScrollAreaCorner, ScrollAreaScrollbar, ScrollAreaThumb, ScrollAreaViewport } from "./components/ScrollArea/ScrollArea.js";
22
+ import { ToggleGroup, ToggleGroupItem, useToggleGroupContext } from "./components/ToggleGroup/ToggleGroup.js";
23
+ import { AspectRatio } from "./components/AspectRatio/AspectRatio.js";
24
+ import { VisuallyHidden } from "./components/VisuallyHidden/VisuallyHidden.js";
25
+ import { Menubar, MenubarContent, MenubarItem, MenubarMenu, MenubarSeparator, MenubarTrigger, useMenubarContext } from "./components/Menubar/Menubar.js";
26
+ import { Toolbar, ToolbarButton, ToolbarLink, ToolbarSeparator, ToolbarToggleGroup, ToolbarToggleItem } from "./components/Toolbar/Toolbar.js";
27
+ import { NavigationMenu, NavigationMenuContent, NavigationMenuIndicator, NavigationMenuItem, NavigationMenuLink, NavigationMenuList, NavigationMenuTrigger, NavigationMenuViewport, useNavigationMenuContext } from "./components/NavigationMenu/NavigationMenu.js";
28
+ export {
29
+ Accordion,
30
+ AccordionContent,
31
+ AccordionItem,
32
+ AccordionTrigger,
33
+ AlertDialog,
34
+ AlertDialogAction,
35
+ AlertDialogCancel,
36
+ AlertDialogContent,
37
+ AlertDialogDescription,
38
+ AlertDialogOverlay,
39
+ AlertDialogTitle,
40
+ AlertDialogTrigger,
41
+ AspectRatio,
42
+ Avatar,
43
+ AvatarBase,
44
+ AvatarFallback,
45
+ AvatarImage,
46
+ Checkbox,
47
+ Collapsible,
48
+ CollapsibleContent,
49
+ CollapsibleTrigger,
50
+ ContextMenu,
51
+ ContextMenuContent,
52
+ ContextMenuItem,
53
+ ContextMenuLabel,
54
+ ContextMenuSeparator,
55
+ ContextMenuTrigger,
56
+ Dialog,
57
+ DialogClose,
58
+ DialogContent,
59
+ DialogDescription,
60
+ DialogOverlay,
61
+ DialogTitle,
62
+ DialogTrigger,
63
+ DropdownMenu,
64
+ DropdownMenuContent,
65
+ DropdownMenuItem,
66
+ DropdownMenuLabel,
67
+ DropdownMenuSeparator,
68
+ DropdownMenuTrigger,
69
+ HoverCard,
70
+ HoverCardContent,
71
+ HoverCardTrigger,
72
+ Label,
73
+ Menubar,
74
+ MenubarContent,
75
+ MenubarItem,
76
+ MenubarMenu,
77
+ MenubarSeparator,
78
+ MenubarTrigger,
79
+ NavigationMenu,
80
+ NavigationMenuContent,
81
+ NavigationMenuIndicator,
82
+ NavigationMenuItem,
83
+ NavigationMenuLink,
84
+ NavigationMenuList,
85
+ NavigationMenuTrigger,
86
+ NavigationMenuViewport,
87
+ Popover,
88
+ PopoverContent,
89
+ PopoverTrigger,
90
+ Progress,
91
+ RadioGroup,
92
+ RadioGroupItem,
93
+ ScrollArea,
94
+ ScrollAreaCorner,
95
+ ScrollAreaScrollbar,
96
+ ScrollAreaThumb,
97
+ ScrollAreaViewport,
98
+ Select,
99
+ SelectContent,
100
+ SelectItem,
101
+ SelectTrigger,
102
+ SelectValue,
103
+ Separator,
104
+ Slider,
105
+ Switch,
106
+ Tabs,
107
+ TabsContent,
108
+ TabsList,
109
+ TabsTrigger,
110
+ Toggle,
111
+ ToggleGroup,
112
+ ToggleGroupItem,
113
+ Toolbar,
114
+ ToolbarButton,
115
+ ToolbarLink,
116
+ ToolbarSeparator,
117
+ ToolbarToggleGroup,
118
+ ToolbarToggleItem,
119
+ Tooltip,
120
+ TooltipContent,
121
+ TooltipTrigger,
122
+ VisuallyHidden,
123
+ useAccordionContext,
124
+ useAccordionItemContext,
125
+ useAlertDialogContext,
126
+ useCollapsibleContext,
127
+ useContextMenuContext,
128
+ useDialogContext,
129
+ useDropdownMenuContext,
130
+ useHoverCardContext,
131
+ useMenubarContext,
132
+ useNavigationMenuContext,
133
+ usePopoverContext,
134
+ useRadioGroupContext,
135
+ useSelectContext,
136
+ useTabsContext,
137
+ useToggleGroupContext,
138
+ useTooltipContext
139
+ };
140
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;"}