@vitus-labs/core 1.2.1 → 1.2.3-alpha.3
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.
- package/LICENSE +1 -1
- package/README.md +147 -0
- package/lib/analysis/index.js.html +18 -18
- package/lib/index.d.ts +226 -217
- package/lib/index.d.ts.map +1 -0
- package/lib/index.js +413 -257
- package/lib/index.js.map +1 -1
- package/package.json +18 -23
- package/lib/types/compose.d.ts +0 -10
- package/lib/types/compose.d.ts.map +0 -1
- package/lib/types/config.d.ts +0 -24
- package/lib/types/config.d.ts.map +0 -1
- package/lib/types/context.d.ts +0 -16
- package/lib/types/context.d.ts.map +0 -1
- package/lib/types/html/htmlElementAttrs.d.ts +0 -108
- package/lib/types/html/htmlElementAttrs.d.ts.map +0 -1
- package/lib/types/html/htmlTags.d.ts +0 -6
- package/lib/types/html/htmlTags.d.ts.map +0 -1
- package/lib/types/html/index.d.ts +0 -7
- package/lib/types/html/index.d.ts.map +0 -1
- package/lib/types/index.d.ts +0 -15
- package/lib/types/index.d.ts.map +0 -1
- package/lib/types/isEmpty.d.ts +0 -4
- package/lib/types/isEmpty.d.ts.map +0 -1
- package/lib/types/render.d.ts +0 -9
- package/lib/types/render.d.ts.map +0 -1
- package/lib/types/types.d.ts +0 -3
- package/lib/types/types.d.ts.map +0 -1
package/lib/index.d.ts
CHANGED
|
@@ -1,217 +1,226 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import
|
|
3
|
-
import { createElement } from
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
1
|
+
import { ThemeProvider, css, styled } from "styled-components";
|
|
2
|
+
import * as React from "react";
|
|
3
|
+
import { ComponentType, FC, ReactNode, cloneElement, createElement } from "react";
|
|
4
|
+
|
|
5
|
+
//#region src/compose.d.ts
|
|
6
|
+
type ArityOneFn = (arg: any) => any;
|
|
7
|
+
/** Extracts the last function from a tuple type. */
|
|
8
|
+
type PickLastInTuple<T extends any[]> = T extends [...rest: infer _U, argn: infer L] ? L : any;
|
|
9
|
+
/** Parameter type of the rightmost (first-applied) function. */
|
|
10
|
+
type FirstFnParameterType<T extends any[]> = Parameters<PickLastInTuple<T>>[any];
|
|
11
|
+
/** Return type of the leftmost (last-applied) function. */
|
|
12
|
+
type LastFnReturnType<T extends any[]> = ReturnType<T[0]>;
|
|
13
|
+
/**
|
|
14
|
+
* Right-to-left function composition.
|
|
15
|
+
* `compose(f, g, h)(x)` === `f(g(h(x)))`.
|
|
16
|
+
*
|
|
17
|
+
* Used throughout the system to build HOC chains —
|
|
18
|
+
* `compose(attrsHoc, userHoc1, userHoc2)(Component)`.
|
|
19
|
+
*/
|
|
20
|
+
declare const compose: <T extends ArityOneFn[]>(...fns: T) => (p: FirstFnParameterType<T>) => LastFnReturnType<T>;
|
|
21
|
+
//#endregion
|
|
22
|
+
//#region src/html/htmlElementAttrs.d.ts
|
|
23
|
+
type Base = React.DetailedHTMLProps<React.HTMLAttributes<HTMLElement>, HTMLElement>;
|
|
24
|
+
interface HTMLElementAttrs {
|
|
25
|
+
a: React.DetailedHTMLProps<React.AnchorHTMLAttributes<HTMLAnchorElement>, HTMLAnchorElement>;
|
|
26
|
+
abbr: Base;
|
|
27
|
+
address: Base;
|
|
28
|
+
area: React.DetailedHTMLProps<React.AreaHTMLAttributes<HTMLAreaElement>, HTMLAreaElement>;
|
|
29
|
+
article: Base;
|
|
30
|
+
aside: Base;
|
|
31
|
+
audio: React.DetailedHTMLProps<React.AudioHTMLAttributes<HTMLAudioElement>, HTMLAudioElement>;
|
|
32
|
+
b: Base;
|
|
33
|
+
bdi: Base;
|
|
34
|
+
bdo: Base;
|
|
35
|
+
big: Base;
|
|
36
|
+
blockquote: React.DetailedHTMLProps<React.BlockquoteHTMLAttributes<HTMLQuoteElement>, HTMLQuoteElement>;
|
|
37
|
+
body: React.DetailedHTMLProps<React.HTMLAttributes<HTMLBodyElement>, HTMLBodyElement>;
|
|
38
|
+
br: React.DetailedHTMLProps<React.HTMLAttributes<HTMLBRElement>, HTMLBRElement>;
|
|
39
|
+
button: React.DetailedHTMLProps<React.ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>;
|
|
40
|
+
canvas: React.DetailedHTMLProps<React.CanvasHTMLAttributes<HTMLCanvasElement>, HTMLCanvasElement>;
|
|
41
|
+
caption: Base;
|
|
42
|
+
cite: React.DetailedHTMLProps<React.HTMLAttributes<HTMLQuoteElement>, HTMLQuoteElement>;
|
|
43
|
+
code: Base;
|
|
44
|
+
col: React.DetailedHTMLProps<React.ColHTMLAttributes<HTMLTableColElement>, HTMLTableColElement>;
|
|
45
|
+
colgroup: React.DetailedHTMLProps<React.ColgroupHTMLAttributes<HTMLTableColElement>, HTMLTableColElement>;
|
|
46
|
+
data: React.DetailedHTMLProps<React.DataHTMLAttributes<HTMLDataElement>, HTMLDataElement>;
|
|
47
|
+
datalist: React.DetailedHTMLProps<React.HTMLAttributes<HTMLDataListElement>, HTMLDataListElement>;
|
|
48
|
+
dd: Base;
|
|
49
|
+
del: React.DetailedHTMLProps<React.DelHTMLAttributes<HTMLModElement>, HTMLModElement>;
|
|
50
|
+
details: Base;
|
|
51
|
+
dfn: Base;
|
|
52
|
+
dialog: React.DetailedHTMLProps<React.DialogHTMLAttributes<HTMLDialogElement>, HTMLDialogElement>;
|
|
53
|
+
div: React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>;
|
|
54
|
+
dl: React.DetailedHTMLProps<React.HTMLAttributes<HTMLDListElement>, HTMLDListElement>;
|
|
55
|
+
dt: Base;
|
|
56
|
+
em: Base;
|
|
57
|
+
embed: React.DetailedHTMLProps<React.EmbedHTMLAttributes<HTMLEmbedElement>, HTMLEmbedElement>;
|
|
58
|
+
fieldset: React.DetailedHTMLProps<React.FieldsetHTMLAttributes<HTMLFieldSetElement>, HTMLFieldSetElement>;
|
|
59
|
+
figcaption: Base;
|
|
60
|
+
figure: Base;
|
|
61
|
+
footer: Base;
|
|
62
|
+
form: React.DetailedHTMLProps<React.FormHTMLAttributes<HTMLFormElement>, HTMLFormElement>;
|
|
63
|
+
h1: React.DetailedHTMLProps<React.HTMLAttributes<HTMLHeadingElement>, HTMLHeadingElement>;
|
|
64
|
+
h2: React.DetailedHTMLProps<React.HTMLAttributes<HTMLHeadingElement>, HTMLHeadingElement>;
|
|
65
|
+
h3: React.DetailedHTMLProps<React.HTMLAttributes<HTMLHeadingElement>, HTMLHeadingElement>;
|
|
66
|
+
h4: React.DetailedHTMLProps<React.HTMLAttributes<HTMLHeadingElement>, HTMLHeadingElement>;
|
|
67
|
+
h5: React.DetailedHTMLProps<React.HTMLAttributes<HTMLHeadingElement>, HTMLHeadingElement>;
|
|
68
|
+
h6: React.DetailedHTMLProps<React.HTMLAttributes<HTMLHeadingElement>, HTMLHeadingElement>;
|
|
69
|
+
header: Base;
|
|
70
|
+
hr: React.DetailedHTMLProps<React.HTMLAttributes<HTMLHRElement>, HTMLHRElement>;
|
|
71
|
+
html: React.DetailedHTMLProps<React.HtmlHTMLAttributes<HTMLHtmlElement>, HTMLHtmlElement>;
|
|
72
|
+
i: Base;
|
|
73
|
+
iframe: React.DetailedHTMLProps<React.IframeHTMLAttributes<HTMLIFrameElement>, HTMLIFrameElement>;
|
|
74
|
+
img: React.DetailedHTMLProps<React.ImgHTMLAttributes<HTMLImageElement>, HTMLImageElement>;
|
|
75
|
+
input: React.DetailedHTMLProps<React.InputHTMLAttributes<HTMLInputElement>, HTMLInputElement>;
|
|
76
|
+
ins: React.DetailedHTMLProps<React.InsHTMLAttributes<HTMLModElement>, HTMLModElement>;
|
|
77
|
+
kbd: Base;
|
|
78
|
+
label: React.DetailedHTMLProps<React.LabelHTMLAttributes<HTMLLabelElement>, HTMLLabelElement>;
|
|
79
|
+
legend: React.DetailedHTMLProps<React.HTMLAttributes<HTMLLegendElement>, HTMLLegendElement>;
|
|
80
|
+
li: React.DetailedHTMLProps<React.LiHTMLAttributes<HTMLLIElement>, HTMLLIElement>;
|
|
81
|
+
main: Base;
|
|
82
|
+
map: React.DetailedHTMLProps<React.MapHTMLAttributes<HTMLMapElement>, HTMLMapElement>;
|
|
83
|
+
mark: Base;
|
|
84
|
+
meter: Base;
|
|
85
|
+
nav: Base;
|
|
86
|
+
object: React.DetailedHTMLProps<React.ObjectHTMLAttributes<HTMLObjectElement>, HTMLObjectElement>;
|
|
87
|
+
ol: React.DetailedHTMLProps<React.OlHTMLAttributes<HTMLOListElement>, HTMLOListElement>;
|
|
88
|
+
optgroup: React.DetailedHTMLProps<React.OptgroupHTMLAttributes<HTMLOptGroupElement>, HTMLOptGroupElement>;
|
|
89
|
+
option: React.DetailedHTMLProps<React.OptionHTMLAttributes<HTMLOptionElement>, HTMLOptionElement>;
|
|
90
|
+
output: Base;
|
|
91
|
+
p: React.DetailedHTMLProps<React.HTMLAttributes<HTMLParagraphElement>, HTMLParagraphElement>;
|
|
92
|
+
picture: Base;
|
|
93
|
+
pre: React.DetailedHTMLProps<React.HTMLAttributes<HTMLPreElement>, HTMLPreElement>;
|
|
94
|
+
progress: React.DetailedHTMLProps<React.ProgressHTMLAttributes<HTMLProgressElement>, HTMLProgressElement>;
|
|
95
|
+
q: React.DetailedHTMLProps<React.HTMLAttributes<HTMLQuoteElement>, HTMLQuoteElement>;
|
|
96
|
+
rp: Base;
|
|
97
|
+
rt: Base;
|
|
98
|
+
ruby: Base;
|
|
99
|
+
s: Base;
|
|
100
|
+
samp: Base;
|
|
101
|
+
section: Base;
|
|
102
|
+
select: React.DetailedHTMLProps<React.SelectHTMLAttributes<HTMLSelectElement>, HTMLSelectElement>;
|
|
103
|
+
small: Base;
|
|
104
|
+
source: React.DetailedHTMLProps<React.SourceHTMLAttributes<HTMLSourceElement>, HTMLSourceElement>;
|
|
105
|
+
span: React.DetailedHTMLProps<React.HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>;
|
|
106
|
+
strong: Base;
|
|
107
|
+
sub: Base;
|
|
108
|
+
summary: Base;
|
|
109
|
+
sup: Base;
|
|
110
|
+
svg: React.SVGProps<SVGSVGElement>;
|
|
111
|
+
table: React.DetailedHTMLProps<React.TableHTMLAttributes<HTMLTableElement>, HTMLTableElement>;
|
|
112
|
+
tbody: React.DetailedHTMLProps<React.HTMLAttributes<HTMLTableSectionElement>, HTMLTableSectionElement>;
|
|
113
|
+
td: React.DetailedHTMLProps<React.TdHTMLAttributes<HTMLTableCellElement>, HTMLTableCellElement>;
|
|
114
|
+
template: React.DetailedHTMLProps<React.HTMLAttributes<HTMLTemplateElement>, HTMLTemplateElement>;
|
|
115
|
+
textarea: React.DetailedHTMLProps<React.TextareaHTMLAttributes<HTMLTextAreaElement>, HTMLTextAreaElement>;
|
|
116
|
+
tfoot: React.DetailedHTMLProps<React.HTMLAttributes<HTMLTableSectionElement>, HTMLTableSectionElement>;
|
|
117
|
+
th: React.DetailedHTMLProps<React.ThHTMLAttributes<HTMLTableCellElement>, HTMLTableCellElement>;
|
|
118
|
+
thead: React.DetailedHTMLProps<React.HTMLAttributes<HTMLTableSectionElement>, HTMLTableSectionElement>;
|
|
119
|
+
time: Base;
|
|
120
|
+
tr: React.DetailedHTMLProps<React.HTMLAttributes<HTMLTableRowElement>, HTMLTableRowElement>;
|
|
121
|
+
track: React.DetailedHTMLProps<React.TrackHTMLAttributes<HTMLTrackElement>, HTMLTrackElement>;
|
|
122
|
+
u: Base;
|
|
123
|
+
ul: React.DetailedHTMLProps<React.HTMLAttributes<HTMLUListElement>, HTMLUListElement>;
|
|
124
|
+
var: Base;
|
|
125
|
+
video: React.DetailedHTMLProps<React.VideoHTMLAttributes<HTMLVideoElement>, HTMLVideoElement>;
|
|
126
|
+
wbr: Base;
|
|
127
|
+
}
|
|
128
|
+
//#endregion
|
|
129
|
+
//#region src/html/htmlTags.d.ts
|
|
130
|
+
declare const HTML_TAGS: readonly ["a", "abbr", "address", "area", "article", "aside", "audio", "b", "bdi", "bdo", "big", "blockquote", "body", "br", "button", "canvas", "caption", "cite", "code", "col", "colgroup", "data", "datalist", "dd", "del", "details", "dfn", "dialog", "div", "dl", "dt", "em", "embed", "fieldset", "figcaption", "figure", "footer", "form", "h1", "h2", "h3", "h4", "h5", "h6", "header", "hr", "html", "i", "iframe", "img", "input", "ins", "kbd", "label", "legend", "li", "main", "map", "mark", "meter", "nav", "object", "ol", "optgroup", "option", "output", "p", "picture", "pre", "progress", "q", "rp", "rt", "ruby", "s", "samp", "section", "select", "small", "source", "span", "strong", "sub", "summary", "sup", "svg", "table", "tbody", "td", "template", "textarea", "tfoot", "th", "thead", "time", "tr", "track", "u", "ul", "var", "video", "wbr"];
|
|
131
|
+
declare const HTML_TEXT_TAGS: readonly ["abbr", "b", "bdi", "bdo", "big", "blockquote", "cite", "code", "del", "div", "dl", "dt", "em", "figcaption", "h1", "h2", "h3", "h4", "h5", "h6", "i", "ins", "kbd", "label", "legend", "li", "p", "pre", "q", "rp", "rt", "s", "small", "span", "strong", "sub", "summary", "sup", "time", "u"];
|
|
132
|
+
type HTMLTags = (typeof HTML_TAGS)[number];
|
|
133
|
+
type HTMLTextTags = (typeof HTML_TEXT_TAGS)[number];
|
|
134
|
+
//#endregion
|
|
135
|
+
//#region src/html/index.d.ts
|
|
136
|
+
type HTMLTagAttrsByTag<T extends HTMLTags> = T extends HTMLTags ? HTMLElementAttrs[T] : {};
|
|
137
|
+
//#endregion
|
|
138
|
+
//#region src/config.d.ts
|
|
139
|
+
/**
|
|
140
|
+
* Singleton configuration that bridges the UI system with styled-components.
|
|
141
|
+
* All packages reference `config.css`, `config.styled`, etc. so the styling
|
|
142
|
+
* engine can be swapped at runtime (e.g. for React Native) via `init()`.
|
|
143
|
+
*/
|
|
144
|
+
interface Internal {
|
|
145
|
+
css: typeof css;
|
|
146
|
+
styled: typeof styled;
|
|
147
|
+
provider: typeof ThemeProvider;
|
|
148
|
+
component: ComponentType | HTMLTags;
|
|
149
|
+
textComponent: ComponentType | HTMLTags;
|
|
150
|
+
}
|
|
151
|
+
declare class Configuration {
|
|
152
|
+
css: Internal['css'];
|
|
153
|
+
styled: Internal['styled'];
|
|
154
|
+
ExternalProvider: Internal['provider'];
|
|
155
|
+
component: Internal['component'];
|
|
156
|
+
textComponent: Internal['textComponent'];
|
|
157
|
+
constructor(props: Internal);
|
|
158
|
+
init: (props: Partial<Internal>) => void;
|
|
159
|
+
}
|
|
160
|
+
declare const config: Configuration;
|
|
161
|
+
declare const init: (props: Partial<Internal>) => void;
|
|
162
|
+
//#endregion
|
|
163
|
+
//#region src/types.d.ts
|
|
164
|
+
type Breakpoints = Record<string, number>;
|
|
165
|
+
type BreakpointKeys = keyof Breakpoints;
|
|
166
|
+
//#endregion
|
|
167
|
+
//#region src/context.d.ts
|
|
168
|
+
/**
|
|
169
|
+
* Internal React context shared across all @vitus-labs packages.
|
|
170
|
+
* Carries the theme object plus any extra provider props.
|
|
171
|
+
*/
|
|
172
|
+
declare const context: React.Context<any>;
|
|
173
|
+
type Theme = Partial<{
|
|
174
|
+
rootSize: number;
|
|
175
|
+
breakpoints: Breakpoints;
|
|
176
|
+
} & Record<string, any>>;
|
|
177
|
+
type ProviderType = Partial<{
|
|
178
|
+
theme: Theme;
|
|
179
|
+
children: ReactNode;
|
|
180
|
+
} & Record<string, any>>;
|
|
181
|
+
/**
|
|
182
|
+
* Dual-layer provider that feeds both the internal VitusLabs context
|
|
183
|
+
* and an optional external styling provider (e.g. styled-components'
|
|
184
|
+
* ThemeProvider). When no theme is supplied, renders children directly.
|
|
185
|
+
*/
|
|
186
|
+
declare const Provider: FC<ProviderType>;
|
|
187
|
+
//#endregion
|
|
188
|
+
//#region src/hoistNonReactStatics.d.ts
|
|
189
|
+
declare const hoistNonReactStatics: <T, S>(target: T, source: S, excludeList?: Record<string, true>) => T;
|
|
190
|
+
//#endregion
|
|
191
|
+
//#region src/isEmpty.d.ts
|
|
192
|
+
/**
|
|
193
|
+
* Type-safe emptiness check for objects, arrays, null, and undefined.
|
|
194
|
+
* Returns `true` for null, undefined, empty objects `{}`, and empty arrays `[]`.
|
|
195
|
+
* Non-object primitives (string, number) also return `true` as any.
|
|
196
|
+
*/
|
|
197
|
+
type IsEmpty = <T extends Record<number | string, any> | any[] | null | undefined>(param: T) => T extends null | undefined ? true : keyof T extends never ? true : T extends T[] ? T[number] extends never ? true : false : false;
|
|
198
|
+
declare const isEmpty: IsEmpty;
|
|
199
|
+
//#endregion
|
|
200
|
+
//#region src/render.d.ts
|
|
201
|
+
type CreateTypes = Parameters<typeof createElement>[0];
|
|
202
|
+
type CloneTypes = Parameters<typeof cloneElement>[0];
|
|
203
|
+
type RenderProps<T extends Record<string, unknown> | undefined> = (props: Partial<T>) => ReactNode;
|
|
204
|
+
/**
|
|
205
|
+
* Flexible element renderer that handles multiple content types:
|
|
206
|
+
* - Primitives (string, number) — returned as-is
|
|
207
|
+
* - Arrays and fragments — returned as-is
|
|
208
|
+
* - Component types (class/function) — created via `createElement`
|
|
209
|
+
* - Valid elements — cloned with `attachProps` if provided
|
|
210
|
+
* - Falsy values — return null
|
|
211
|
+
*/
|
|
212
|
+
type Render = <T extends Record<string, any> | undefined>(content?: CreateTypes | CloneTypes | ReactNode | ReactNode[] | RenderProps<T>, attachProps?: T) => ReturnType<typeof createElement> | ReturnType<typeof cloneElement> | null;
|
|
213
|
+
declare const render: Render;
|
|
214
|
+
//#endregion
|
|
215
|
+
//#region src/utils.d.ts
|
|
216
|
+
declare const omit: <T extends Record<string, any>>(obj: T | null | undefined, keys?: readonly (string | keyof T)[]) => Partial<T>;
|
|
217
|
+
declare const pick: <T extends Record<string, any>>(obj: T | null | undefined, keys?: readonly (string | keyof T)[]) => Partial<T>;
|
|
218
|
+
declare const get: (obj: any, path: string | string[], defaultValue?: any) => any;
|
|
219
|
+
declare const set: (obj: Record<string, any>, path: string | string[], value: any) => Record<string, any>;
|
|
220
|
+
declare const throttle: <T extends (...args: any[]) => any>(fn: T, wait?: number) => T & {
|
|
221
|
+
cancel: () => void;
|
|
222
|
+
};
|
|
223
|
+
declare const merge: <T extends Record<string, any>>(target: T, ...sources: Record<string, any>[]) => T;
|
|
224
|
+
//#endregion
|
|
225
|
+
export { type BreakpointKeys, type Breakpoints, type HTMLElementAttrs, type HTMLTagAttrsByTag, type HTMLTags, type HTMLTextTags, HTML_TAGS, HTML_TEXT_TAGS, type IsEmpty, Provider, type Render, compose, config, context, get, hoistNonReactStatics, init, isEmpty, merge, omit, pick, render, set, throttle };
|
|
226
|
+
//# sourceMappingURL=index2.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index2.d.ts","names":[],"sources":["../src/compose.ts","../src/html/htmlElementAttrs.ts","../src/html/htmlTags.ts","../src/html/index.ts","../src/config.ts","../src/types.ts","../src/context.tsx","../src/hoistNonReactStatics.ts","../src/isEmpty.ts","../src/render.ts","../src/utils.ts"],"mappings":"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"}
|