@avento-space/ts-ui 1.1.1 → 1.2.2

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 (141) hide show
  1. package/README.md +123 -213
  2. package/dist/card.wc-pFLgjfwm.d.ts +1595 -0
  3. package/dist/chunk-7GJXOXOW.js +108 -0
  4. package/dist/chunk-7GJXOXOW.js.map +1 -0
  5. package/dist/chunk-ICB6OBEZ.js +2087 -0
  6. package/dist/chunk-ICB6OBEZ.js.map +1 -0
  7. package/dist/chunk-Q5RCPPCF.js +406 -0
  8. package/dist/chunk-Q5RCPPCF.js.map +1 -0
  9. package/dist/chunk-QTANS5ZS.js +81 -0
  10. package/dist/chunk-QTANS5ZS.js.map +1 -0
  11. package/dist/chunk-RATTHYIP.js +4855 -0
  12. package/dist/chunk-RATTHYIP.js.map +1 -0
  13. package/dist/chunk-RAWESWNC.js +3 -0
  14. package/dist/chunk-RAWESWNC.js.map +1 -0
  15. package/dist/chunk-RQZ7KDYP.js +5941 -0
  16. package/dist/chunk-RQZ7KDYP.js.map +1 -0
  17. package/dist/chunk-T7QLIHHU.js +3 -0
  18. package/dist/chunk-T7QLIHHU.js.map +1 -0
  19. package/dist/chunk-U4WYCYL6.js +116 -0
  20. package/dist/chunk-U4WYCYL6.js.map +1 -0
  21. package/dist/components/index.d.ts +13 -11
  22. package/dist/components/index.js +5 -5
  23. package/dist/components/index.js.map +1 -1
  24. package/dist/define.d.ts +2 -2
  25. package/dist/define.js +8 -1
  26. package/dist/define.js.map +1 -1
  27. package/dist/{core/element.d.ts → element-DHtonJNX.d.ts} +3 -2
  28. package/dist/icons/index.d.ts +33 -5
  29. package/dist/icons/index.js +5 -3
  30. package/dist/icons/index.js.map +1 -1
  31. package/dist/index.d.ts +35 -10
  32. package/dist/index.js +44 -9
  33. package/dist/index.js.map +1 -1
  34. package/dist/jsx-dev-runtime.d.ts +1 -2
  35. package/dist/jsx-dev-runtime.js +3 -1
  36. package/dist/jsx-dev-runtime.js.map +1 -1
  37. package/dist/jsx-runtime.d.ts +644 -7
  38. package/dist/jsx-runtime.js +3 -120
  39. package/dist/jsx-runtime.js.map +1 -1
  40. package/dist/plugins/index.d.ts +21 -3
  41. package/dist/plugins/index.js +85 -1
  42. package/dist/plugins/index.js.map +1 -1
  43. package/dist/react/index.d.ts +1261 -15
  44. package/dist/react/index.js +1443 -15
  45. package/dist/react/index.js.map +1 -1
  46. package/dist/{core/types.d.ts → types-DWglFa91.d.ts} +8 -7
  47. package/package.json +32 -8
  48. package/dist/components/box.wc.d.ts +0 -24
  49. package/dist/components/box.wc.d.ts.map +0 -1
  50. package/dist/components/box.wc.js +0 -52
  51. package/dist/components/box.wc.js.map +0 -1
  52. package/dist/components/button.wc.d.ts +0 -32
  53. package/dist/components/button.wc.d.ts.map +0 -1
  54. package/dist/components/button.wc.js +0 -91
  55. package/dist/components/button.wc.js.map +0 -1
  56. package/dist/components/index.d.ts.map +0 -1
  57. package/dist/components/input.wc.d.ts +0 -45
  58. package/dist/components/input.wc.d.ts.map +0 -1
  59. package/dist/components/input.wc.js +0 -130
  60. package/dist/components/input.wc.js.map +0 -1
  61. package/dist/components/list.wc.d.ts +0 -49
  62. package/dist/components/list.wc.d.ts.map +0 -1
  63. package/dist/components/list.wc.js +0 -120
  64. package/dist/components/list.wc.js.map +0 -1
  65. package/dist/components/portal.wc.d.ts +0 -18
  66. package/dist/components/portal.wc.d.ts.map +0 -1
  67. package/dist/components/portal.wc.js +0 -78
  68. package/dist/components/portal.wc.js.map +0 -1
  69. package/dist/components/styles.d.ts +0 -7
  70. package/dist/components/styles.d.ts.map +0 -1
  71. package/dist/components/styles.js +0 -134
  72. package/dist/components/styles.js.map +0 -1
  73. package/dist/core/define.d.ts +0 -5
  74. package/dist/core/define.d.ts.map +0 -1
  75. package/dist/core/define.js +0 -26
  76. package/dist/core/define.js.map +0 -1
  77. package/dist/core/element.d.ts.map +0 -1
  78. package/dist/core/element.js +0 -30
  79. package/dist/core/element.js.map +0 -1
  80. package/dist/core/index.d.ts +0 -7
  81. package/dist/core/index.d.ts.map +0 -1
  82. package/dist/core/index.js +0 -5
  83. package/dist/core/index.js.map +0 -1
  84. package/dist/core/plugin.d.ts +0 -17
  85. package/dist/core/plugin.d.ts.map +0 -1
  86. package/dist/core/plugin.js +0 -117
  87. package/dist/core/plugin.js.map +0 -1
  88. package/dist/core/reactive-context.d.ts +0 -12
  89. package/dist/core/reactive-context.d.ts.map +0 -1
  90. package/dist/core/reactive-context.js +0 -34
  91. package/dist/core/reactive-context.js.map +0 -1
  92. package/dist/core/scheduler.d.ts +0 -13
  93. package/dist/core/scheduler.d.ts.map +0 -1
  94. package/dist/core/scheduler.js +0 -80
  95. package/dist/core/scheduler.js.map +0 -1
  96. package/dist/core/signal.d.ts +0 -14
  97. package/dist/core/signal.d.ts.map +0 -1
  98. package/dist/core/signal.js +0 -391
  99. package/dist/core/signal.js.map +0 -1
  100. package/dist/core/store.d.ts +0 -6
  101. package/dist/core/store.d.ts.map +0 -1
  102. package/dist/core/store.js +0 -35
  103. package/dist/core/store.js.map +0 -1
  104. package/dist/core/types.d.ts.map +0 -1
  105. package/dist/core/types.js +0 -2
  106. package/dist/core/types.js.map +0 -1
  107. package/dist/define.d.ts.map +0 -1
  108. package/dist/icons/icon-element.d.ts +0 -25
  109. package/dist/icons/icon-element.d.ts.map +0 -1
  110. package/dist/icons/icon-element.js +0 -63
  111. package/dist/icons/icon-element.js.map +0 -1
  112. package/dist/icons/index.d.ts.map +0 -1
  113. package/dist/icons/registry.d.ts +0 -6
  114. package/dist/icons/registry.d.ts.map +0 -1
  115. package/dist/icons/registry.js +0 -4775
  116. package/dist/icons/registry.js.map +0 -1
  117. package/dist/index.d.ts.map +0 -1
  118. package/dist/jsx-dev-runtime.d.ts.map +0 -1
  119. package/dist/jsx-runtime.d.ts.map +0 -1
  120. package/dist/jsx-types.d.ts +0 -651
  121. package/dist/jsx-types.d.ts.map +0 -1
  122. package/dist/jsx-types.js +0 -3
  123. package/dist/jsx-types.js.map +0 -1
  124. package/dist/plugins/index.d.ts.map +0 -1
  125. package/dist/plugins/router.d.ts +0 -4
  126. package/dist/plugins/router.d.ts.map +0 -1
  127. package/dist/plugins/router.js +0 -90
  128. package/dist/plugins/router.js.map +0 -1
  129. package/dist/plugins/types.d.ts +0 -16
  130. package/dist/plugins/types.d.ts.map +0 -1
  131. package/dist/plugins/types.js +0 -2
  132. package/dist/plugins/types.js.map +0 -1
  133. package/dist/react/icon.d.ts +0 -8
  134. package/dist/react/icon.d.ts.map +0 -1
  135. package/dist/react/icon.js +0 -7
  136. package/dist/react/icon.js.map +0 -1
  137. package/dist/react/icons.d.ts +0 -1194
  138. package/dist/react/icons.d.ts.map +0 -1
  139. package/dist/react/icons.js +0 -1196
  140. package/dist/react/icons.js.map +0 -1
  141. package/dist/react/index.d.ts.map +0 -1
@@ -0,0 +1,108 @@
1
+ import { isSignal, effect } from './chunk-Q5RCPPCF.js';
2
+
3
+ // src/jsx-runtime.ts
4
+ var Fragment = /* @__PURE__ */ Symbol("Fragment");
5
+ function setDOMProp(el, key, value) {
6
+ if (key === "key" || key === "children" || key === "ref") return;
7
+ if (key === "className" || key === "class") {
8
+ el.setAttribute("class", String(value ?? ""));
9
+ } else if (key === "style" && value && typeof value === "object") {
10
+ Object.assign(el.style, value);
11
+ } else if (key === "style" && typeof value === "string") {
12
+ el.setAttribute("style", value);
13
+ } else if (key.startsWith("on") && typeof value === "function") {
14
+ const event = key.slice(2).toLowerCase();
15
+ el.addEventListener(event, value);
16
+ } else if (value != null && value !== false) {
17
+ el.setAttribute(key, String(value));
18
+ } else {
19
+ el.removeAttribute(key);
20
+ }
21
+ }
22
+ function applySignalProp(el, key, sig) {
23
+ effect(() => {
24
+ const val = sig.get();
25
+ if (key.startsWith("on") && typeof val === "function") {
26
+ const event = key.slice(2).toLowerCase();
27
+ el.addEventListener(event, val);
28
+ } else if (val != null && val !== false) {
29
+ el.setAttribute(key, String(val));
30
+ } else {
31
+ el.removeAttribute(key);
32
+ }
33
+ });
34
+ }
35
+ function createTextNode(value) {
36
+ const text = document.createTextNode(String(value ?? ""));
37
+ if (isSignal(value)) {
38
+ effect(() => {
39
+ text.textContent = String(value.get() ?? "");
40
+ });
41
+ }
42
+ return text;
43
+ }
44
+ function isSignalLike(val) {
45
+ return isSignal(val);
46
+ }
47
+ function jsx(type, config, ...children) {
48
+ const props = config ? { ...config } : {};
49
+ props.key;
50
+ delete props.key;
51
+ if (typeof type === "function") {
52
+ const rendered = type(props, ...children);
53
+ return rendered instanceof Node ? rendered : document.createTextNode(String(rendered ?? ""));
54
+ }
55
+ if (type === Fragment) {
56
+ const frag = document.createDocumentFragment();
57
+ for (const child of children) {
58
+ const node = toNode(child);
59
+ if (Array.isArray(node)) {
60
+ for (const n of node) frag.appendChild(n);
61
+ } else if (node) {
62
+ frag.appendChild(node);
63
+ }
64
+ }
65
+ return frag;
66
+ }
67
+ const tag = type;
68
+ const el = document.createElement(tag);
69
+ for (const [key2, value] of Object.entries(props)) {
70
+ if (key2 === "children") {
71
+ const childNodes = Array.isArray(value) ? value : [value];
72
+ for (const child of childNodes) {
73
+ const node = toNode(child);
74
+ if (Array.isArray(node)) {
75
+ for (const n of node) el.appendChild(n);
76
+ } else if (node) {
77
+ el.appendChild(node);
78
+ }
79
+ }
80
+ } else if (isSignalLike(value)) {
81
+ applySignalProp(el, key2, value);
82
+ } else {
83
+ setDOMProp(el, key2, value);
84
+ }
85
+ }
86
+ for (const child of children) {
87
+ const node = toNode(child);
88
+ if (Array.isArray(node)) {
89
+ for (const n of node) el.appendChild(n);
90
+ } else if (node) {
91
+ el.appendChild(node);
92
+ }
93
+ }
94
+ return el;
95
+ }
96
+ var jsxs = jsx;
97
+ var jsxDEV = jsx;
98
+ function toNode(child) {
99
+ if (child == null || child === false || child === true) return null;
100
+ if (child instanceof Node) return child;
101
+ if (Array.isArray(child)) return child.map((c) => toNode(c)).filter(Boolean);
102
+ if (isSignalLike(child)) return createTextNode(child);
103
+ return document.createTextNode(String(child));
104
+ }
105
+
106
+ export { Fragment, jsx, jsxDEV, jsxs };
107
+ //# sourceMappingURL=chunk-7GJXOXOW.js.map
108
+ //# sourceMappingURL=chunk-7GJXOXOW.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/jsx-runtime.ts"],"names":["key"],"mappings":"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","file":"chunk-7GJXOXOW.js","sourcesContent":["import { effect, isSignal } from './core/signal.js';\r\nimport type { JSX } from './jsx-types.js';\r\nexport type { JSX };\r\n\r\nexport const Fragment = Symbol('Fragment');\r\n\r\nfunction setDOMProp(el: Element, key: string, value: unknown): void {\r\n if (key === 'key' || key === 'children' || key === 'ref') return;\r\n\r\n if (key === 'className' || key === 'class') {\r\n el.setAttribute('class', String(value ?? ''));\r\n } else if (key === 'style' && value && typeof value === 'object') {\r\n Object.assign((el as HTMLElement).style, value as Partial<CSSStyleDeclaration>);\r\n } else if (key === 'style' && typeof value === 'string') {\r\n el.setAttribute('style', value);\r\n } else if (key.startsWith('on') && typeof value === 'function') {\r\n const event = key.slice(2).toLowerCase();\r\n el.addEventListener(event, value as EventListener);\r\n } else if (value != null && value !== false) {\r\n el.setAttribute(key, String(value));\r\n } else {\r\n el.removeAttribute(key);\r\n }\r\n}\r\n\r\nfunction applySignalProp(el: Element, key: string, sig: { get(): unknown }): void {\r\n effect(() => {\r\n const val = sig.get();\r\n if (key.startsWith('on') && typeof val === 'function') {\r\n const event = key.slice(2).toLowerCase();\r\n el.addEventListener(event, val as EventListener);\r\n } else if (val != null && val !== false) {\r\n el.setAttribute(key, String(val));\r\n } else {\r\n el.removeAttribute(key);\r\n }\r\n });\r\n}\r\n\r\nfunction createTextNode(value: unknown): Text {\r\n const text = document.createTextNode(String(value ?? ''));\r\n if (isSignal(value)) {\r\n effect(() => {\r\n text.textContent = String(value.get() ?? '');\r\n });\r\n }\r\n return text;\r\n}\r\n\r\nfunction isSignalLike(val: unknown): val is { get(): unknown } {\r\n return isSignal(val);\r\n}\r\n\r\nexport function jsx(\r\n type: string | symbol | ((props: any, ...children: any[]) => any),\r\n config?: Record<string, any> | null,\r\n ...children: any[]\r\n): Node | Node[] {\r\n const props = config ? { ...config } : {};\r\n const key = props.key;\r\n delete props.key;\r\n\r\n if (typeof type === 'function') {\r\n const rendered = type(props, ...children);\r\n return rendered instanceof Node ? rendered : document.createTextNode(String(rendered ?? ''));\r\n }\r\n\r\n if (type === Fragment) {\r\n const frag = document.createDocumentFragment();\r\n for (const child of children) {\r\n const node = toNode(child);\r\n if (Array.isArray(node)) {\r\n for (const n of node) frag.appendChild(n);\r\n } else if (node) {\r\n frag.appendChild(node);\r\n }\r\n }\r\n return frag;\r\n }\r\n\r\n const tag = type as string;\r\n const el = document.createElement(tag);\r\n\r\n for (const [key, value] of Object.entries(props)) {\r\n if (key === 'children') {\r\n const childNodes = Array.isArray(value) ? value : [value];\r\n for (const child of childNodes) {\r\n const node = toNode(child);\r\n if (Array.isArray(node)) {\r\n for (const n of node) el.appendChild(n);\r\n } else if (node) {\r\n el.appendChild(node);\r\n }\r\n }\r\n } else if (isSignalLike(value)) {\r\n applySignalProp(el, key, value);\r\n } else {\r\n setDOMProp(el, key, value);\r\n }\r\n }\r\n\r\n for (const child of children) {\r\n const node = toNode(child);\r\n if (Array.isArray(node)) {\r\n for (const n of node) el.appendChild(n);\r\n } else if (node) {\r\n el.appendChild(node);\r\n }\r\n }\r\n\r\n return el;\r\n}\r\n\r\nexport const jsxs = jsx;\r\nexport const jsxDEV = jsx;\r\n\r\nfunction toNode(child: any): Node | Node[] | null {\r\n if (child == null || child === false || child === true) return null;\r\n if (child instanceof Node) return child;\r\n if (Array.isArray(child)) return child.map((c) => toNode(c)).filter(Boolean) as Node[];\r\n if (isSignalLike(child)) return createTextNode(child);\r\n return document.createTextNode(String(child));\r\n}\r\n"]}