antd-solid 0.0.6 → 0.0.8

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 (147) hide show
  1. package/dist/index.esm.js +2356 -0
  2. package/dist/index.umd.js +1 -0
  3. package/es/Button.d.ts +19 -0
  4. package/es/Button.js +73 -0
  5. package/es/Collapse/index.d.ts +16 -0
  6. package/es/Collapse/index.js +87 -0
  7. package/es/ColorPicker.d.ts +8 -0
  8. package/es/ColorPicker.js +6 -0
  9. package/es/Compact.d.ts +12 -0
  10. package/es/Compact.js +17 -0
  11. package/es/DatePicker.d.ts +19 -0
  12. package/es/DatePicker.js +9 -0
  13. package/es/Empty/PRESENTED_IMAGE_SIMPLE.d.ts +3 -0
  14. package/es/Empty/PRESENTED_IMAGE_SIMPLE.js +14 -0
  15. package/es/Empty/assets/EmptySvg.d.ts +2 -0
  16. package/es/Empty/assets/EmptySvg.js +6 -0
  17. package/es/Empty/assets/SimpleEmptySvg.d.ts +2 -0
  18. package/es/Empty/assets/SimpleEmptySvg.js +6 -0
  19. package/es/Empty/index.d.ts +5 -0
  20. package/es/Empty/index.js +16 -0
  21. package/es/Image.d.ts +9 -0
  22. package/es/Image.js +22 -0
  23. package/es/Input.d.ts +29 -0
  24. package/es/Input.js +144 -0
  25. package/es/InputNumber.d.ts +11 -0
  26. package/es/InputNumber.js +92 -0
  27. package/es/InputNumber.test.d.ts +1 -0
  28. package/es/InputNumber.test.js +42 -0
  29. package/es/Modal.d.ts +47 -0
  30. package/es/Modal.js +195 -0
  31. package/es/Popconfirm.d.ts +21 -0
  32. package/es/Popconfirm.js +64 -0
  33. package/es/Popover.d.ts +7 -0
  34. package/es/Popover.js +36 -0
  35. package/es/Progress.d.ts +7 -0
  36. package/es/Progress.js +6 -0
  37. package/es/Radio.d.ts +27 -0
  38. package/es/Radio.js +89 -0
  39. package/es/Result.d.ts +10 -0
  40. package/es/Result.js +29 -0
  41. package/es/Segmented/index.d.ts +21 -0
  42. package/es/Segmented/index.js +72 -0
  43. package/es/Select.d.ts +16 -0
  44. package/es/Select.js +113 -0
  45. package/es/Skeleton.d.ts +9 -0
  46. package/es/Skeleton.js +9 -0
  47. package/es/Spin.d.ts +9 -0
  48. package/es/Spin.js +22 -0
  49. package/es/Switch.d.ts +8 -0
  50. package/es/Switch.js +30 -0
  51. package/es/Table.d.ts +11 -0
  52. package/es/Table.js +57 -0
  53. package/es/Tabs.d.ts +17 -0
  54. package/es/Tabs.js +117 -0
  55. package/es/Timeline.d.ts +13 -0
  56. package/es/Timeline.js +30 -0
  57. package/es/Tooltip.d.ts +34 -0
  58. package/es/Tooltip.js +302 -0
  59. package/es/Tree.d.ts +28 -0
  60. package/es/Tree.js +198 -0
  61. package/es/Upload.d.ts +11 -0
  62. package/es/Upload.js +6 -0
  63. package/es/form/Form.d.ts +18 -0
  64. package/es/form/Form.js +70 -0
  65. package/es/form/FormItem.d.ts +19 -0
  66. package/es/form/FormItem.js +141 -0
  67. package/es/form/context.d.ts +12 -0
  68. package/es/form/context.js +5 -0
  69. package/es/form/index.d.ts +8 -0
  70. package/es/form/index.js +7 -0
  71. package/es/hooks/createControllableValue.d.ts +16 -0
  72. package/es/hooks/createControllableValue.js +41 -0
  73. package/es/hooks/createUpdateEffect.d.ts +5 -0
  74. package/es/hooks/createUpdateEffect.js +12 -0
  75. package/es/hooks/index.d.ts +2 -0
  76. package/es/hooks/index.js +2 -0
  77. package/es/hooks/useClickAway.d.ts +2 -0
  78. package/es/hooks/useClickAway.js +17 -0
  79. package/es/hooks/useSize.d.ts +5 -0
  80. package/es/hooks/useSize.js +22 -0
  81. package/es/index.d.ts +42 -0
  82. package/es/index.js +29 -0
  83. package/es/types/index.d.ts +3 -0
  84. package/es/types/index.js +1 -0
  85. package/es/utils/EventEmitter.d.ts +7 -0
  86. package/es/utils/EventEmitter.js +13 -0
  87. package/es/utils/ReactToSolid.d.ts +8 -0
  88. package/es/utils/ReactToSolid.js +30 -0
  89. package/es/utils/SolidToReact.d.ts +8 -0
  90. package/es/utils/SolidToReact.js +23 -0
  91. package/es/utils/array.d.ts +15 -0
  92. package/es/utils/array.js +19 -0
  93. package/es/utils/component.d.ts +31 -0
  94. package/es/utils/component.js +68 -0
  95. package/es/utils/solid.d.ts +15 -0
  96. package/es/utils/solid.js +32 -0
  97. package/es/utils/zh_CN.d.ts +2 -0
  98. package/{src/utils/zh_CN.ts → es/utils/zh_CN.js} +34 -34
  99. package/package.json +7 -6
  100. package/src/Button.tsx +0 -125
  101. package/src/Collapse/index.tsx +0 -86
  102. package/src/ColorPicker.tsx +0 -11
  103. package/src/Compact.tsx +0 -15
  104. package/src/DatePicker.tsx +0 -22
  105. package/src/Empty/PRESENTED_IMAGE_SIMPLE.tsx +0 -15
  106. package/src/Empty/assets/EmptySvg.tsx +0 -43
  107. package/src/Empty/assets/SimpleEmptySvg.tsx +0 -16
  108. package/src/Empty/index.tsx +0 -20
  109. package/src/Image.tsx +0 -29
  110. package/src/Input.tsx +0 -202
  111. package/src/InputNumber.test.tsx +0 -46
  112. package/src/InputNumber.tsx +0 -125
  113. package/src/Modal.tsx +0 -196
  114. package/src/Popconfirm.tsx +0 -75
  115. package/src/Popover.tsx +0 -30
  116. package/src/Progress.tsx +0 -4
  117. package/src/Radio.tsx +0 -132
  118. package/src/Result.tsx +0 -38
  119. package/src/Segmented/index.tsx +0 -95
  120. package/src/Select.tsx +0 -128
  121. package/src/Skeleton.tsx +0 -14
  122. package/src/Spin.tsx +0 -23
  123. package/src/Switch.tsx +0 -34
  124. package/src/Table.tsx +0 -53
  125. package/src/Tabs.tsx +0 -131
  126. package/src/Timeline.tsx +0 -33
  127. package/src/Tooltip.tsx +0 -355
  128. package/src/Tree.tsx +0 -246
  129. package/src/Upload.tsx +0 -10
  130. package/src/form/Form.tsx +0 -94
  131. package/src/form/FormItem.tsx +0 -139
  132. package/src/form/context.ts +0 -16
  133. package/src/form/index.ts +0 -13
  134. package/src/hooks/createControllableValue.ts +0 -68
  135. package/src/hooks/createUpdateEffect.ts +0 -16
  136. package/src/hooks/index.ts +0 -2
  137. package/src/hooks/useClickAway.ts +0 -18
  138. package/src/hooks/useSize.ts +0 -26
  139. package/src/index.ts +0 -44
  140. package/src/types/index.ts +0 -5
  141. package/src/utils/EventEmitter.ts +0 -15
  142. package/src/utils/ReactToSolid.tsx +0 -38
  143. package/src/utils/SolidToReact.tsx +0 -27
  144. package/src/utils/array.ts +0 -21
  145. package/src/utils/component.tsx +0 -85
  146. package/src/utils/solid.ts +0 -53
  147. /package/{dist → css}/index.css +0 -0
package/es/Progress.js ADDED
@@ -0,0 +1,6 @@
1
+ import { Progress as Progress$1 } from 'antd';
2
+ import { replaceChildren, replaceClassName, reactToSolidComponent } from './utils/component.js';
3
+
4
+ var Progress = replaceChildren(replaceClassName(reactToSolidComponent(Progress$1)));
5
+
6
+ export { Progress as default };
package/es/Radio.d.ts ADDED
@@ -0,0 +1,27 @@
1
+ import { type Component, type JSXElement, type ParentProps, type JSX } from 'solid-js';
2
+ export interface RadioProps extends ParentProps {
3
+ defaultChecked?: boolean;
4
+ checked?: boolean;
5
+ /**
6
+ * input 的 value
7
+ */
8
+ value?: string;
9
+ onChange?: JSX.ChangeEventHandler<HTMLInputElement, Event>;
10
+ }
11
+ export interface RadioGroupProps {
12
+ defaultValue?: string;
13
+ value?: string;
14
+ onChange?: JSX.ChangeEventHandler<HTMLInputElement, Event>;
15
+ optionType?: 'default' | 'button';
16
+ options: Array<{
17
+ label: JSXElement;
18
+ value: string;
19
+ disabled?: boolean;
20
+ }>;
21
+ block?: boolean;
22
+ }
23
+ declare const Radio: Component<RadioProps> & {
24
+ Group: Component<RadioGroupProps>;
25
+ Button: Component<RadioProps>;
26
+ };
27
+ export default Radio;
package/es/Radio.js ADDED
@@ -0,0 +1,89 @@
1
+ import { delegateEvents, insert, effect, className, createComponent, Dynamic, template } from 'solid-js/web';
2
+ import { untrack, mergeProps, createSelector, For } from 'solid-js';
3
+ import cs from 'classnames';
4
+ import createControllableValue from './hooks/createControllableValue.js';
5
+
6
+ const _tmpl$ = /*#__PURE__*/template(`<label class="ant-inline-flex ant-gap-4px"><input type="radio">`),
7
+ _tmpl$2 = /*#__PURE__*/template(`<label><input class="ant-w-0 ant-h-0" type="radio">`),
8
+ _tmpl$3 = /*#__PURE__*/template(`<div>`);
9
+ const Radio = props => {
10
+ const [checked, setChecked] = createControllableValue(props, {
11
+ defaultValue: false,
12
+ defaultValuePropName: 'defaultChecked',
13
+ valuePropName: 'checked',
14
+ trigger: undefined
15
+ });
16
+ return (() => {
17
+ const _el$ = _tmpl$(),
18
+ _el$2 = _el$.firstChild;
19
+ _el$2.$$input = e => {
20
+ setChecked(e.target.checked);
21
+ untrack(() => props.onChange?.(e));
22
+ };
23
+ insert(_el$, () => props.children, null);
24
+ effect(() => _el$2.checked = checked());
25
+ effect(() => _el$2.value = props.value ?? '');
26
+ return _el$;
27
+ })();
28
+ };
29
+ Radio.Button = props => {
30
+ const [checked, setChecked] = createControllableValue(props, {
31
+ defaultValue: false,
32
+ defaultValuePropName: 'defaultChecked',
33
+ valuePropName: 'checked',
34
+ trigger: undefined
35
+ });
36
+ return (() => {
37
+ const _el$3 = _tmpl$2(),
38
+ _el$4 = _el$3.firstChild;
39
+ _el$4.$$input = e => {
40
+ setChecked(e.target.checked);
41
+ untrack(() => props.onChange?.(e));
42
+ };
43
+ insert(_el$3, () => props.children, null);
44
+ effect(() => className(_el$3, cs('ant-px-15px ant-[border:1px_solid_rgb(217,217,217)] first:ant-rounded-l-6px last:ant-rounded-r-6px ant-h-32px ant-inline-flex ant-items-center hover:ant-text-[var(--primary-color)] not[:last-child]:ant-border-r-transparent ant-cursor-pointer ant-flex-grow ant-justify-center', checked() && 'ant-text-[var(--primary-color)] ant-[border:1px_solid_var(--primary-color)] !ant-border-r-[var(--primary-color)]')));
45
+ effect(() => _el$4.checked = checked());
46
+ effect(() => _el$4.value = props.value ?? '');
47
+ return _el$3;
48
+ })();
49
+ };
50
+ Radio.Group = _props => {
51
+ const props = mergeProps({
52
+ optionType: 'default'
53
+ }, _props);
54
+ const [value, setValue] = createControllableValue(props, {
55
+ trigger: undefined
56
+ });
57
+ const isChecked = createSelector(value);
58
+ return (() => {
59
+ const _el$5 = _tmpl$3();
60
+ insert(_el$5, createComponent(For, {
61
+ get each() {
62
+ return props.options;
63
+ },
64
+ children: option => createComponent(Dynamic, {
65
+ get component() {
66
+ return props.optionType === 'default' ? Radio : Radio.Button;
67
+ },
68
+ get checked() {
69
+ return isChecked(option.value);
70
+ },
71
+ get value() {
72
+ return option.value;
73
+ },
74
+ onChange: e => {
75
+ setValue(option.value);
76
+ untrack(() => props.onChange?.(e));
77
+ },
78
+ get children() {
79
+ return option.label;
80
+ }
81
+ })
82
+ }));
83
+ effect(() => className(_el$5, cs(props.block ? 'ant-flex' : 'ant-inline-flex', props.optionType === 'default' ? 'ant-gap-8px' : '')));
84
+ return _el$5;
85
+ })();
86
+ };
87
+ delegateEvents(["input"]);
88
+
89
+ export { Radio as default };
package/es/Result.d.ts ADDED
@@ -0,0 +1,10 @@
1
+ import { type JSXElement, type Component, type ParentProps } from 'solid-js';
2
+ type ResultStatusType = 'success' | 'error' | 'info' | 'warning';
3
+ export interface ResultProps extends ParentProps {
4
+ status?: ResultStatusType;
5
+ title?: JSXElement;
6
+ subTitle?: JSXElement;
7
+ extra?: JSXElement;
8
+ }
9
+ declare const Result: Component<ResultProps>;
10
+ export default Result;
package/es/Result.js ADDED
@@ -0,0 +1,29 @@
1
+ import { insert, effect, className, template } from 'solid-js/web';
2
+ import cs from 'classnames';
3
+
4
+ const _tmpl$ = /*#__PURE__*/template(`<div class="ant-text-center ant-px-32px ant-py-48px"><div class="ant-mb-24px"><span></span></div><div class="ant-my-8px ant-text-[rgba(0,0,0,.88)] ant-text-24px"></div><div class="ant-text-[rgba(0,0,0,.45)] ant-text-14px"></div><div class="ant-mt-24px"></div><div class="ant-mt-24px">`);
5
+ const statusIconMap = {
6
+ success: 'ant-text-#52c41a i-ant-design:check-circle-filled',
7
+ info: 'ant-text-[var(--primary-color)] i-ant-design:exclamation-circle-filled',
8
+ warning: 'ant-text-#faad14 i-ant-design:warning-filled',
9
+ error: 'ant-text-#ff4d4f i-ant-design:close-circle-filled'
10
+ };
11
+ const Result = props => {
12
+ return (() => {
13
+ const _el$ = _tmpl$(),
14
+ _el$2 = _el$.firstChild,
15
+ _el$3 = _el$2.firstChild,
16
+ _el$4 = _el$2.nextSibling,
17
+ _el$5 = _el$4.nextSibling,
18
+ _el$6 = _el$5.nextSibling,
19
+ _el$7 = _el$6.nextSibling;
20
+ insert(_el$4, () => props.title);
21
+ insert(_el$5, () => props.subTitle);
22
+ insert(_el$6, () => props.extra);
23
+ insert(_el$7, () => props.children);
24
+ effect(() => className(_el$3, cs(statusIconMap[props.status], 'ant-text-72px')));
25
+ return _el$;
26
+ })();
27
+ };
28
+
29
+ export { Result as default };
@@ -0,0 +1,21 @@
1
+ import { type Component, type JSX } from 'solid-js';
2
+ import { type StringOrJSXElement, type Key } from '../types';
3
+ export interface SegmentedProps {
4
+ block?: boolean;
5
+ disabled?: boolean;
6
+ options: Array<string | number | {
7
+ label: StringOrJSXElement;
8
+ value: string;
9
+ disabled?: boolean;
10
+ onClick?: (e: MouseEvent & {
11
+ currentTarget: HTMLDivElement;
12
+ target: Element;
13
+ }) => void;
14
+ }>;
15
+ value?: Key;
16
+ onChange?: (value: Key) => void;
17
+ class?: string;
18
+ style?: JSX.CSSProperties;
19
+ }
20
+ declare const Segmented: Component<SegmentedProps>;
21
+ export default Segmented;
@@ -0,0 +1,72 @@
1
+ import { delegateEvents, insert, createComponent, effect, className, style, template } from 'solid-js/web';
2
+ import { createSelector, For, Show } from 'solid-js';
3
+ import cs from 'classnames';
4
+ import createControllableValue from '../hooks/createControllableValue.js';
5
+ import { unwrapStringOrJSXElement } from '../utils/solid.js';
6
+
7
+ const _tmpl$ = /*#__PURE__*/template(`<div>`),
8
+ _tmpl$2 = /*#__PURE__*/template(`<div><div>`);
9
+ const unWarpValue = value => typeof value === 'object' ? value.value : value;
10
+ const Segmented = props => {
11
+ const [value, setValue] = createControllableValue(props, {
12
+ defaultValue: unWarpValue(props.options[0])
13
+ });
14
+ const isSelected = createSelector(value);
15
+ const isDisabledValue = v => {
16
+ if (props.disabled) return true;
17
+ return typeof v === 'object' ? v.disabled : false;
18
+ };
19
+ return (() => {
20
+ const _el$ = _tmpl$();
21
+ insert(_el$, createComponent(For, {
22
+ get each() {
23
+ return props.options;
24
+ },
25
+ children: item => (() => {
26
+ const _el$2 = _tmpl$2(),
27
+ _el$3 = _el$2.firstChild;
28
+ _el$3.$$click = e => {
29
+ setValue(unWarpValue(item));
30
+ typeof item === 'object' && item.onClick?.(e);
31
+ };
32
+ insert(_el$3, createComponent(Show, {
33
+ when: typeof item !== 'object',
34
+ get fallback() {
35
+ return typeof item === 'object' && unwrapStringOrJSXElement(item.label);
36
+ },
37
+ children: item
38
+ }));
39
+ effect(_p$ => {
40
+ const _v$3 = cs(props.block && 'ant-basis-0 ant-grow-1', isDisabledValue(item) && 'ant-cursor-not-allowed'),
41
+ _v$4 = cs('ant-rounded-[var(--ant-border-radius-sm)] ant-px-[var(--ant-padding-sm)] where:ant-cursor-pointer ant-leading-28px where:hover:ant-bg-[var(--ant-segmented-item-hover-bg)] where:active:ant-bg-[var(--ant-segmented-item-active-bg)]', isSelected(unWarpValue(item)) && 'ant-bg-white ant-shadow-[var(--ant-box-shadow-tertiary)]', props.block && 'ant-flex ant-justify-center', isDisabledValue(item) && 'ant-[pointer-events:none] ant-text-[var(--ant-color-text-disabled)]');
42
+ _v$3 !== _p$._v$3 && className(_el$2, _p$._v$3 = _v$3);
43
+ _v$4 !== _p$._v$4 && className(_el$3, _p$._v$4 = _v$4);
44
+ return _p$;
45
+ }, {
46
+ _v$3: undefined,
47
+ _v$4: undefined
48
+ });
49
+ return _el$2;
50
+ })()
51
+ }));
52
+ effect(_p$ => {
53
+ const _v$ = cs('ant-bg-[var(--ant-color-bg-layout)] ant-rounded-[var(--ant-border-radius)] ant-p-2px', props.block ? 'ant-flex' : 'ant-inline-flex', props.class),
54
+ _v$2 = {
55
+ '--ant-segmented-item-color': 'rgba(0, 0, 0, 0.65)',
56
+ '--ant-segmented-item-hover-bg': 'rgba(0, 0, 0, 0.06)',
57
+ '--ant-segmented-item-active-bg': 'rgba(0, 0, 0, 0.15)',
58
+ ...props.style
59
+ };
60
+ _v$ !== _p$._v$ && className(_el$, _p$._v$ = _v$);
61
+ _p$._v$2 = style(_el$, _v$2, _p$._v$2);
62
+ return _p$;
63
+ }, {
64
+ _v$: undefined,
65
+ _v$2: undefined
66
+ });
67
+ return _el$;
68
+ })();
69
+ };
70
+ delegateEvents(["click"]);
71
+
72
+ export { Segmented as default };
package/es/Select.d.ts ADDED
@@ -0,0 +1,16 @@
1
+ import { type JSXElement, type Component } from 'solid-js';
2
+ import { type Key } from './types';
3
+ interface SelectOption {
4
+ label: JSXElement;
5
+ value: Key;
6
+ }
7
+ interface SelectProps {
8
+ value?: Key;
9
+ onChange?: (value: Key) => void;
10
+ options: SelectOption[];
11
+ placeholder?: string;
12
+ allowClear?: boolean;
13
+ class?: string;
14
+ }
15
+ declare const Select: Component<SelectProps>;
16
+ export default Select;
package/es/Select.js ADDED
@@ -0,0 +1,113 @@
1
+ import { delegateEvents, createComponent, insert, effect, className, use, setAttribute, template } from 'solid-js/web';
2
+ import { createSelector, createMemo, createSignal, For, Show } from 'solid-js';
3
+ import Tooltip from './Tooltip.js';
4
+ import createControllableValue from './hooks/createControllableValue.js';
5
+ import cs from 'classnames';
6
+ import useClickAway from './hooks/useClickAway.js';
7
+ import { isNil } from 'lodash-es';
8
+
9
+ const _tmpl$ = /*#__PURE__*/template(`<div>`),
10
+ _tmpl$2 = /*#__PURE__*/template(`<span class="i-ant-design:close-circle-filled ant-cursor-pointer ant-text-[var(--ant-clear-color)] hover:ant-text-[var(--ant-clear-color-hover)]">`),
11
+ _tmpl$3 = /*#__PURE__*/template(`<div tabindex="0"><div class="ant-relative ant-h-full"><div class="ant-absolute ant-top-0 ant-bottom-0 ant-right-0">`),
12
+ _tmpl$4 = /*#__PURE__*/template(`<div class="ant-bg-white ant-w-200px">`),
13
+ _tmpl$5 = /*#__PURE__*/template(`<input class="ant-h-full ant-w-full ant-float-left ant-[outline:none]" readonly>`),
14
+ _tmpl$6 = /*#__PURE__*/template(`<span class="i-ant-design:down-outlined ant-text-[var(--ant-allow-color)]">`);
15
+ const Select = props => {
16
+ let select;
17
+ const [value, setValue] = createControllableValue(props);
18
+ const selectedValue = createSelector(value);
19
+ const selectedOption = createMemo(() => !isNil(value()) ? props.options.find(option => option.value === value()) : undefined);
20
+ const [open, setOpen] = createSignal(false);
21
+ useClickAway(() => setOpen(false), () => select);
22
+ const [width, setWidth] = createSignal(0);
23
+ const [hover, setHover] = createSignal(false);
24
+ const showClearBtn = createMemo(() => props.allowClear && hover() && !isNil(value()));
25
+ return createComponent(Tooltip, {
26
+ mode: "light",
27
+ get open() {
28
+ return open();
29
+ },
30
+ onOpenChange: setOpen,
31
+ trigger: [],
32
+ placement: "bottomLeft",
33
+ arrow: false,
34
+ contentStyle: {
35
+ padding: 0
36
+ },
37
+ content: close => (() => {
38
+ const _el$6 = _tmpl$4();
39
+ insert(_el$6, createComponent(For, {
40
+ get each() {
41
+ return props.options;
42
+ },
43
+ children: item => (() => {
44
+ const _el$7 = _tmpl$();
45
+ _el$7.$$click = () => {
46
+ setValue(item.value);
47
+ close();
48
+ };
49
+ insert(_el$7, () => item.label);
50
+ effect(() => className(_el$7, cs('ant-box-content ant-px-12px ant-py-5px ant-h-22px ant-leading-22px hover:ant-bg-[var(--hover-bg-color)]', selectedValue(item.value) ? '!ant-bg-[var(--active-bg-color)]' : '')));
51
+ return _el$7;
52
+ })()
53
+ }));
54
+ effect(() => `${width()}px` != null ? _el$6.style.setProperty("width", `${width()}px`) : _el$6.style.removeProperty("width"));
55
+ return _el$6;
56
+ })(),
57
+ get children() {
58
+ const _el$ = _tmpl$3(),
59
+ _el$2 = _el$.firstChild,
60
+ _el$4 = _el$2.firstChild;
61
+ _el$.addEventListener("mouseleave", () => setHover(false));
62
+ _el$.addEventListener("mouseenter", () => setHover(true));
63
+ _el$.$$click = e => {
64
+ setOpen(true);
65
+ setWidth(e.currentTarget.offsetWidth);
66
+ e.currentTarget.focus();
67
+ };
68
+ const _ref$ = select;
69
+ typeof _ref$ === "function" ? use(_ref$, _el$) : select = _el$;
70
+ _el$.style.setProperty("--ant-arrow-color", "rgba(146, 146, 146, 1)");
71
+ _el$.style.setProperty("--ant-clear-color", "rgba(146, 146, 146, 1)");
72
+ _el$.style.setProperty("--ant-clear-color-hover", "rgba(194, 194, 194, 1)");
73
+ insert(_el$2, createComponent(Show, {
74
+ get when() {
75
+ return !isNil(value());
76
+ },
77
+ get fallback() {
78
+ return (() => {
79
+ const _el$8 = _tmpl$5();
80
+ effect(() => setAttribute(_el$8, "placeholder", props.placeholder));
81
+ return _el$8;
82
+ })();
83
+ },
84
+ get children() {
85
+ const _el$3 = _tmpl$();
86
+ insert(_el$3, () => selectedOption().label ?? value());
87
+ return _el$3;
88
+ }
89
+ }), _el$4);
90
+ insert(_el$4, createComponent(Show, {
91
+ get when() {
92
+ return showClearBtn();
93
+ },
94
+ get fallback() {
95
+ return _tmpl$6();
96
+ },
97
+ get children() {
98
+ const _el$5 = _tmpl$2();
99
+ _el$5.$$click = e => {
100
+ e.stopPropagation();
101
+ setValue(undefined);
102
+ };
103
+ return _el$5;
104
+ }
105
+ }));
106
+ effect(() => className(_el$, cs('ant-h-32px ant-leading-32px ant-rounded-6px ant-[border:1px_solid_var(--ant-color-border)] ant-px-11px focus:ant-[border-color:var(--primary-color)]', props.class)));
107
+ return _el$;
108
+ }
109
+ });
110
+ };
111
+ delegateEvents(["click"]);
112
+
113
+ export { Select as default };
@@ -0,0 +1,9 @@
1
+ declare const Image: import("solid-js").Component<Omit<import("antd/es/skeleton/Image").SkeletonImageProps, "className"> & {
2
+ class?: string | undefined;
3
+ }>;
4
+ declare const Skeleton: import("solid-js").Component<Omit<import("antd").SkeletonProps, "className"> & {
5
+ class?: string | undefined;
6
+ }> & {
7
+ Image: typeof Image;
8
+ };
9
+ export default Skeleton;
package/es/Skeleton.js ADDED
@@ -0,0 +1,9 @@
1
+ import { Skeleton as Skeleton$1 } from 'antd';
2
+ import { replaceClassName, reactToSolidComponent } from './utils/component.js';
3
+
4
+ const _Skeleton = replaceClassName(reactToSolidComponent(Skeleton$1));
5
+ const Image = replaceClassName(reactToSolidComponent(Skeleton$1.Image));
6
+ const Skeleton = _Skeleton;
7
+ Skeleton.Image = Image;
8
+
9
+ export { Skeleton as default };
package/es/Spin.d.ts ADDED
@@ -0,0 +1,9 @@
1
+ import { type Component, type ParentProps } from 'solid-js';
2
+ interface SpinProps extends ParentProps {
3
+ /**
4
+ * 是否为加载中状态
5
+ */
6
+ spinning?: boolean;
7
+ }
8
+ declare const Spin: Component<SpinProps>;
9
+ export default Spin;
package/es/Spin.js ADDED
@@ -0,0 +1,22 @@
1
+ import { insert, createComponent, template } from 'solid-js/web';
2
+ import { Show } from 'solid-js';
3
+
4
+ const _tmpl$ = /*#__PURE__*/template(`<div class="ant-absolute ant-inset-0 ant-flex ant-items-center ant-justify-center ant-bg-[rgba(255,255,255,.5)]"><span class="i-ant-design:loading keyframes-spin ant-[animation:spin_1s_linear_infinite] ant-text-32px ant-text-[var(--primary-color)]">`),
5
+ _tmpl$2 = /*#__PURE__*/template(`<div class="ant-relative ant-min-h-32px">`);
6
+ const Spin = props => {
7
+ return (() => {
8
+ const _el$ = _tmpl$2();
9
+ insert(_el$, () => props.children, null);
10
+ insert(_el$, createComponent(Show, {
11
+ get when() {
12
+ return props.spinning;
13
+ },
14
+ get children() {
15
+ return _tmpl$();
16
+ }
17
+ }), null);
18
+ return _el$;
19
+ })();
20
+ };
21
+
22
+ export { Spin as default };
package/es/Switch.d.ts ADDED
@@ -0,0 +1,8 @@
1
+ import { type Component } from 'solid-js';
2
+ export interface SwitchProps {
3
+ defaultChecked?: boolean;
4
+ checked?: boolean;
5
+ onChange?: (checked: boolean) => void;
6
+ }
7
+ declare const Switch: Component<SwitchProps>;
8
+ export default Switch;
package/es/Switch.js ADDED
@@ -0,0 +1,30 @@
1
+ import { delegateEvents, effect, className, template } from 'solid-js/web';
2
+ import createControllableValue from './hooks/createControllableValue.js';
3
+ import cs from 'classnames';
4
+
5
+ const _tmpl$ = /*#__PURE__*/template(`<button><div>`);
6
+ const Switch = props => {
7
+ const [checked, setChecked] = createControllableValue(props, {
8
+ defaultValuePropName: 'defaultChecked',
9
+ valuePropName: 'checked'
10
+ });
11
+ return (() => {
12
+ const _el$ = _tmpl$(),
13
+ _el$2 = _el$.firstChild;
14
+ _el$.$$click = () => setChecked(c => !c);
15
+ effect(_p$ => {
16
+ const _v$ = cs('ant-w-44px ant-h-22px ant-rounded-100px ant-relative', checked() ? 'ant-bg-[var(--primary-color)]' : 'ant-bg-[rgba(0,0,0,0.45)]'),
17
+ _v$2 = cs('ant-w-18px ant-h-18px ant-rounded-50% ant-bg-white ant-absolute ant-top-1/2 -ant-translate-y-1/2 ant-transition-left', checked() ? 'ant-left-[calc(100%-20px)]' : 'ant-left-2px');
18
+ _v$ !== _p$._v$ && className(_el$, _p$._v$ = _v$);
19
+ _v$2 !== _p$._v$2 && className(_el$2, _p$._v$2 = _v$2);
20
+ return _p$;
21
+ }, {
22
+ _v$: undefined,
23
+ _v$2: undefined
24
+ });
25
+ return _el$;
26
+ })();
27
+ };
28
+ delegateEvents(["click"]);
29
+
30
+ export { Switch as default };
package/es/Table.d.ts ADDED
@@ -0,0 +1,11 @@
1
+ import { type JSXElement } from 'solid-js';
2
+ export interface TableColumn<R extends {}> {
3
+ title: JSXElement;
4
+ render: (row: R) => JSXElement;
5
+ }
6
+ export interface TableProps<R extends {}> {
7
+ columns: Array<TableColumn<R>>;
8
+ dataSource: R[];
9
+ }
10
+ declare const Table: <R extends {}>(props: TableProps<R>) => import("solid-js").JSX.Element;
11
+ export default Table;
package/es/Table.js ADDED
@@ -0,0 +1,57 @@
1
+ import { insert, createComponent, template } from 'solid-js/web';
2
+ import Empty from './Empty/index.js';
3
+ import { For, Show } from 'solid-js';
4
+
5
+ const _tmpl$ = /*#__PURE__*/template(`<div><table class="ant-w-full"><thead><tr></tr></thead><tbody>`),
6
+ _tmpl$2 = /*#__PURE__*/template(`<th class="ant-p-16px ant-bg-[var(--light-bg-color)] ant-font-bold ant-[border-bottom:1px_solid_var(--secondary-border-color)] ant-text-left">`),
7
+ _tmpl$3 = /*#__PURE__*/template(`<tr class="hover:ant-bg-[var(--light-bg-color)]">`),
8
+ _tmpl$4 = /*#__PURE__*/template(`<td class="ant-p-16px ant-[border-bottom:1px_solid_var(--secondary-border-color)]">`);
9
+ const Table = props => {
10
+ return (() => {
11
+ const _el$ = _tmpl$(),
12
+ _el$2 = _el$.firstChild,
13
+ _el$3 = _el$2.firstChild,
14
+ _el$4 = _el$3.firstChild,
15
+ _el$5 = _el$3.nextSibling;
16
+ insert(_el$4, createComponent(For, {
17
+ get each() {
18
+ return props.columns;
19
+ },
20
+ children: item => (() => {
21
+ const _el$6 = _tmpl$2();
22
+ insert(_el$6, () => item.title);
23
+ return _el$6;
24
+ })()
25
+ }));
26
+ insert(_el$5, createComponent(For, {
27
+ get each() {
28
+ return props.dataSource;
29
+ },
30
+ children: row => (() => {
31
+ const _el$7 = _tmpl$3();
32
+ insert(_el$7, createComponent(For, {
33
+ get each() {
34
+ return props.columns;
35
+ },
36
+ children: item => (() => {
37
+ const _el$8 = _tmpl$4();
38
+ insert(_el$8, () => item.render(row));
39
+ return _el$8;
40
+ })()
41
+ }));
42
+ return _el$7;
43
+ })()
44
+ }));
45
+ insert(_el$, createComponent(Show, {
46
+ get when() {
47
+ return !props.dataSource.length;
48
+ },
49
+ get children() {
50
+ return createComponent(Empty.PRESENTED_IMAGE_SIMPLE, {});
51
+ }
52
+ }), null);
53
+ return _el$;
54
+ })();
55
+ };
56
+
57
+ export { Table as default };
package/es/Tabs.d.ts ADDED
@@ -0,0 +1,17 @@
1
+ import { type Component } from 'solid-js';
2
+ import { type StringOrJSXElement } from './types';
3
+ export interface Tab {
4
+ key: string;
5
+ label: StringOrJSXElement;
6
+ children?: StringOrJSXElement;
7
+ }
8
+ export interface TabsProps {
9
+ type?: 'line' | 'segment';
10
+ class?: string;
11
+ navClass?: string;
12
+ navItemClass?: string;
13
+ contentClass?: string;
14
+ items: Tab[];
15
+ }
16
+ declare const Tabs: Component<TabsProps>;
17
+ export default Tabs;