@styleframe/core 1.0.1 → 1.0.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.
Files changed (48) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/LICENSE +21 -0
  3. package/dist/styleframe.d.ts +301 -0
  4. package/dist/styleframe.js +543 -0
  5. package/dist/styleframe.umd.cjs +1 -0
  6. package/package.json +15 -4
  7. package/.tsbuildinfo +0 -1
  8. package/src/index.ts +0 -5
  9. package/src/styleframe.ts +0 -64
  10. package/src/tokens/atRule.test.ts +0 -1013
  11. package/src/tokens/atRule.ts +0 -67
  12. package/src/tokens/css.test.ts +0 -404
  13. package/src/tokens/css.ts +0 -23
  14. package/src/tokens/declarations.test.ts +0 -584
  15. package/src/tokens/declarations.ts +0 -71
  16. package/src/tokens/index.ts +0 -11
  17. package/src/tokens/modifier.test.ts +0 -90
  18. package/src/tokens/modifier.ts +0 -86
  19. package/src/tokens/recipe.test.ts +0 -105
  20. package/src/tokens/recipe.ts +0 -32
  21. package/src/tokens/ref.test.ts +0 -430
  22. package/src/tokens/ref.ts +0 -24
  23. package/src/tokens/root.test.ts +0 -70
  24. package/src/tokens/root.ts +0 -14
  25. package/src/tokens/selector.test.ts +0 -440
  26. package/src/tokens/selector.ts +0 -47
  27. package/src/tokens/theme.test.ts +0 -338
  28. package/src/tokens/theme.ts +0 -26
  29. package/src/tokens/utility.test.ts +0 -1456
  30. package/src/tokens/utility.ts +0 -92
  31. package/src/tokens/variable.test.ts +0 -235
  32. package/src/tokens/variable.ts +0 -42
  33. package/src/typeGuards.test.ts +0 -33
  34. package/src/typeGuards.ts +0 -98
  35. package/src/types/declarations.ts +0 -42
  36. package/src/types/index.ts +0 -3
  37. package/src/types/options.ts +0 -22
  38. package/src/types/tokens.ts +0 -149
  39. package/src/utils/capitalizeFirst.ts +0 -9
  40. package/src/utils/deepClone.ts +0 -317
  41. package/src/utils/getters.test.ts +0 -399
  42. package/src/utils/getters.ts +0 -36
  43. package/src/utils/index.ts +0 -4
  44. package/src/utils/merge.test.ts +0 -978
  45. package/src/utils/merge.ts +0 -73
  46. package/src/vite-env.d.ts +0 -1
  47. package/tsconfig.json +0 -7
  48. package/vite.config.ts +0 -5
@@ -0,0 +1,543 @@
1
+ function k(e, t) {
2
+ return function(n, ...i) {
3
+ return {
4
+ type: "css",
5
+ value: n.reduce((o, u, c) => (o.push(u), c < i.length && o.push(i[c]), o), [])
6
+ };
7
+ };
8
+ }
9
+ function R(e) {
10
+ return typeof e == "object" && e !== null;
11
+ }
12
+ function p(e, t) {
13
+ return R(e) && "type" in e && e.type === t;
14
+ }
15
+ function B(e) {
16
+ return p(e, "variable");
17
+ }
18
+ function F(e) {
19
+ return p(e, "reference");
20
+ }
21
+ function X(e) {
22
+ return p(e, "selector");
23
+ }
24
+ function Z(e) {
25
+ return p(e, "at-rule");
26
+ }
27
+ function ee(e) {
28
+ return p(e, "utility");
29
+ }
30
+ function te(e) {
31
+ return p(e, "modifier");
32
+ }
33
+ function T(e) {
34
+ return p(e, "css");
35
+ }
36
+ function ne(e) {
37
+ return p(e, "theme");
38
+ }
39
+ function j(e) {
40
+ return p(e, "root");
41
+ }
42
+ function _(e) {
43
+ return typeof e == "string" || typeof e == "number" || typeof e == "boolean" || e === null;
44
+ }
45
+ function V(e) {
46
+ return _(e) || F(e) || T(e) || Array.isArray(e) && e.every(V);
47
+ }
48
+ function C(e) {
49
+ return R(e) && "children" in e && "declarations" in e && "variables" in e;
50
+ }
51
+ function v(e, t) {
52
+ return function(n, i, s) {
53
+ const o = {
54
+ type: "at-rule",
55
+ identifier: n,
56
+ rule: i,
57
+ declarations: {},
58
+ variables: [],
59
+ children: []
60
+ }, u = b(o, t);
61
+ return typeof s == "function" ? o.declarations = s(u) ?? {} : s && (o.declarations = s), g(o.declarations, u), e.children.push(o), o;
62
+ };
63
+ }
64
+ function S(e, t) {
65
+ const r = v(e, t);
66
+ return function(i, s) {
67
+ return r("media", i, s);
68
+ };
69
+ }
70
+ function E(e, t) {
71
+ const r = v(e, t);
72
+ return function(i, s) {
73
+ return r("keyframes", i, s);
74
+ };
75
+ }
76
+ function P(e, t) {
77
+ return function(n, i) {
78
+ return B(n) ? {
79
+ type: "reference",
80
+ name: n.name,
81
+ fallback: i
82
+ } : {
83
+ type: "reference",
84
+ name: n,
85
+ fallback: i
86
+ };
87
+ };
88
+ }
89
+ function D(e, t) {
90
+ return function(n, i) {
91
+ const s = {
92
+ type: "selector",
93
+ query: n,
94
+ declarations: {},
95
+ variables: [],
96
+ children: []
97
+ }, o = b(s, t);
98
+ return typeof i == "function" ? s.declarations = i(o) ?? {} : C(i) ? (s.variables = i.variables, s.declarations = i.declarations, s.children = i.children) : s.declarations = i, g(s.declarations, o), e.children.push(s), s;
99
+ };
100
+ }
101
+ function H(e, t) {
102
+ return function(n, i, s = {
103
+ default: !1
104
+ }) {
105
+ const o = typeof n == "string" ? n : n.name, u = e.variables.find(
106
+ (f) => f.name === o
107
+ );
108
+ if (s.default && u)
109
+ return u;
110
+ if (u)
111
+ return u.value = i, u;
112
+ const c = {
113
+ type: "variable",
114
+ name: o,
115
+ value: i
116
+ };
117
+ return e.variables.push(c), c;
118
+ };
119
+ }
120
+ function b(e, t) {
121
+ const r = H(e), n = D(e, t), i = v(e, t), s = E(t, t), o = S(e, t), u = P(), c = k();
122
+ return {
123
+ variable: r,
124
+ selector: n,
125
+ keyframes: s,
126
+ atRule: i,
127
+ media: o,
128
+ ref: u,
129
+ css: c
130
+ };
131
+ }
132
+ function g(e, t) {
133
+ for (const r in e)
134
+ if (r.startsWith("@")) {
135
+ const n = e[r];
136
+ if (typeof n == "object" && n !== null && !V(n)) {
137
+ const i = r.replace(/^@(\w+).*/, "$1"), s = r.replace(`@${i}`, "").trim();
138
+ t.atRule(i, s, n), delete e[r];
139
+ }
140
+ } else if (/^[.&:]/.test(r)) {
141
+ const n = e[r];
142
+ typeof n == "object" && (t.selector(r, n), delete e[r]);
143
+ }
144
+ return e;
145
+ }
146
+ function re(e) {
147
+ return e.charAt(0).toUpperCase() + e.slice(1);
148
+ }
149
+ function m(e) {
150
+ if (e instanceof Buffer)
151
+ return Buffer.from(e);
152
+ const t = e.constructor;
153
+ return new t(
154
+ e.buffer.slice(0),
155
+ e.byteOffset,
156
+ e.byteLength / e.BYTES_PER_ELEMENT || 1
157
+ );
158
+ }
159
+ function K(e) {
160
+ if (e = e || {}, e.circular)
161
+ return U(e);
162
+ const t = /* @__PURE__ */ new Map();
163
+ if (t.set(Date, (o) => new Date(o)), t.set(
164
+ Map,
165
+ (o, u) => new Map(n(Array.from(o), u))
166
+ ), t.set(
167
+ Set,
168
+ (o, u) => new Set(n(Array.from(o), u))
169
+ ), e.constructorHandlers)
170
+ for (const o of e.constructorHandlers)
171
+ t.set(o[0], o[1]);
172
+ let r;
173
+ return e.proto ? s : i;
174
+ function n(o, u) {
175
+ const c = Object.keys(o), f = Array.from({ length: c.length });
176
+ for (let a = 0; a < c.length; a++) {
177
+ const l = c[a], y = o[l];
178
+ typeof y != "object" || y === null ? f[l] = y : y.constructor !== Object && (r = t.get(y.constructor)) ? f[l] = r(y, u) : ArrayBuffer.isView(y) ? f[l] = m(y) : f[l] = u(y);
179
+ }
180
+ return f;
181
+ }
182
+ function i(o) {
183
+ if (typeof o != "object" || o === null) return o;
184
+ if (Array.isArray(o)) return n(o, i);
185
+ if (o.constructor !== Object && (r = t.get(o.constructor)))
186
+ return r(o, i);
187
+ const u = {};
188
+ for (const c in o) {
189
+ if (Object.hasOwnProperty.call(o, c) === !1) continue;
190
+ const f = o[c];
191
+ typeof f != "object" || f === null ? u[c] = f : f.constructor !== Object && (r = t.get(f.constructor)) ? u[c] = r(f, i) : ArrayBuffer.isView(f) ? u[c] = m(f) : u[c] = i(f);
192
+ }
193
+ return u;
194
+ }
195
+ function s(o) {
196
+ if (typeof o != "object" || o === null) return o;
197
+ if (Array.isArray(o)) return n(o, s);
198
+ if (o.constructor !== Object && (r = t.get(o.constructor)))
199
+ return r(o, s);
200
+ const u = {};
201
+ for (const c in o) {
202
+ const f = o[c];
203
+ typeof f != "object" || f === null ? u[c] = f : f.constructor !== Object && (r = t.get(f.constructor)) ? u[c] = r(f, s) : ArrayBuffer.isView(f) ? u[c] = m(f) : u[c] = s(f);
204
+ }
205
+ return u;
206
+ }
207
+ }
208
+ function U(e) {
209
+ const t = [], r = [], n = /* @__PURE__ */ new Map();
210
+ if (n.set(Date, (c) => new Date(c)), n.set(
211
+ Map,
212
+ (c, f) => new Map(s(Array.from(c), f))
213
+ ), n.set(
214
+ Set,
215
+ (c, f) => new Set(s(Array.from(c), f))
216
+ ), e.constructorHandlers)
217
+ for (const c of e.constructorHandlers)
218
+ n.set(c[0], c[1]);
219
+ let i;
220
+ return e.proto ? u : o;
221
+ function s(c, f) {
222
+ const a = Object.keys(c), l = Array.from({ length: a.length });
223
+ for (let y = 0; y < a.length; y++) {
224
+ const h = a[y], d = c[h];
225
+ if (typeof d != "object" || d === null)
226
+ l[h] = d;
227
+ else if (d.constructor !== Object && (i = n.get(d.constructor)))
228
+ l[h] = i(d, f);
229
+ else if (ArrayBuffer.isView(d))
230
+ l[h] = m(d);
231
+ else {
232
+ const O = t.indexOf(d);
233
+ O !== -1 ? l[h] = r[O] : l[h] = f(d);
234
+ }
235
+ }
236
+ return l;
237
+ }
238
+ function o(c) {
239
+ if (typeof c != "object" || c === null) return c;
240
+ if (Array.isArray(c)) return s(c, o);
241
+ if (c.constructor !== Object && (i = n.get(c.constructor)))
242
+ return i(c, o);
243
+ const f = {};
244
+ t.push(c), r.push(f);
245
+ for (const a in c) {
246
+ if (Object.hasOwnProperty.call(c, a) === !1) continue;
247
+ const l = c[a];
248
+ if (typeof l != "object" || l === null)
249
+ f[a] = l;
250
+ else if (l.constructor !== Object && (i = n.get(l.constructor)))
251
+ f[a] = i(l, o);
252
+ else if (ArrayBuffer.isView(l))
253
+ f[a] = m(l);
254
+ else {
255
+ const y = t.indexOf(l);
256
+ y !== -1 ? f[a] = r[y] : f[a] = o(l);
257
+ }
258
+ }
259
+ return t.pop(), r.pop(), f;
260
+ }
261
+ function u(c) {
262
+ if (typeof c != "object" || c === null) return c;
263
+ if (Array.isArray(c)) return s(c, u);
264
+ if (c.constructor !== Object && (i = n.get(c.constructor)))
265
+ return i(c, u);
266
+ const f = {};
267
+ t.push(c), r.push(f);
268
+ for (const a in c) {
269
+ const l = c[a];
270
+ if (typeof l != "object" || l === null)
271
+ f[a] = l;
272
+ else if (l.constructor !== Object && (i = n.get(l.constructor)))
273
+ f[a] = i(l, u);
274
+ else if (ArrayBuffer.isView(l))
275
+ f[a] = m(l);
276
+ else {
277
+ const y = t.indexOf(l);
278
+ y !== -1 ? f[a] = r[y] : f[a] = u(l);
279
+ }
280
+ }
281
+ return t.pop(), r.pop(), f;
282
+ }
283
+ }
284
+ const A = K();
285
+ function ie(e, t) {
286
+ const r = e.variables.find((n) => n.name === t);
287
+ if (!r)
288
+ throw new Error(`Variable "${t}" not found`);
289
+ return r;
290
+ }
291
+ function oe(e, t) {
292
+ const r = e.utilities.find((n) => n.name === t);
293
+ if (!r)
294
+ throw new Error(`Utility "${t}" not found`);
295
+ return r;
296
+ }
297
+ function ce(e, t) {
298
+ const r = e.modifiers.find(
299
+ (n) => n.key.includes(t)
300
+ );
301
+ if (!r)
302
+ throw new Error(`Modifier "${t}" not found`);
303
+ return r;
304
+ }
305
+ const x = Symbol.for("__licenseRequired");
306
+ function $(e) {
307
+ w(e) || Object.defineProperty(e, x, {
308
+ value: !0,
309
+ writable: !1,
310
+ configurable: !1,
311
+ enumerable: !0
312
+ });
313
+ }
314
+ function w(e) {
315
+ return Object.prototype.hasOwnProperty.call(e, x);
316
+ }
317
+ function L(e, t) {
318
+ const r = [...e];
319
+ for (const n of t) {
320
+ const i = r.find(
321
+ (s) => s.name === n.name
322
+ );
323
+ i ? i.value = n.value : r.push(n);
324
+ }
325
+ return r;
326
+ }
327
+ function N(e, t) {
328
+ const r = [...e];
329
+ for (const n of t) {
330
+ const i = r.find(
331
+ (s) => s.name === n.name
332
+ );
333
+ i ? Object.assign(
334
+ i,
335
+ M(i, n)
336
+ ) : r.push(n);
337
+ }
338
+ return r;
339
+ }
340
+ function M(e, t) {
341
+ return Object.keys(e).reduce(
342
+ (r, n) => (n === "variables" ? r.variables = L(e.variables, t.variables) : n === "declarations" ? r.declarations = { ...e.declarations, ...t.declarations } : n === "themes" && j(r) && j(e) && j(t) ? r.themes = N(e.themes, t.themes) : Array.isArray(e[n]) && (r[n] = e[n].concat(
343
+ t[n]
344
+ )), r),
345
+ {
346
+ ...e,
347
+ ...t
348
+ }
349
+ );
350
+ }
351
+ function se(e, ...t) {
352
+ return t.reduce((r, n) => {
353
+ const i = {
354
+ ...r,
355
+ root: M(r.root, n.root)
356
+ };
357
+ return (w(r) || w(n)) && $(i), i;
358
+ }, e);
359
+ }
360
+ function q(e) {
361
+ const t = [];
362
+ function r(n, i) {
363
+ i.length > 0 && t.push([...i].sort());
364
+ for (let s = n; s < e.length; s++) {
365
+ const o = e[s];
366
+ if (o)
367
+ if (o.length === 1 && o[0])
368
+ r(s + 1, [...i, o[0]]);
369
+ else
370
+ for (const u of o)
371
+ r(s + 1, [...i, u]);
372
+ }
373
+ }
374
+ return r(0, []), t.sort((n, i) => n.length !== i.length ? n.length - i.length : n.join(",").localeCompare(i.join(",")));
375
+ }
376
+ function z(e, t, r) {
377
+ const n = {
378
+ ...e,
379
+ modifiers: [...r.keys()]
380
+ }, i = b(n, t);
381
+ for (const s of r.values())
382
+ s.factory({
383
+ ...i,
384
+ declarations: A(n.declarations),
385
+ variables: A(n.variables),
386
+ children: A(n.children)
387
+ }), g(n.declarations, i);
388
+ return n;
389
+ }
390
+ function I(e, t) {
391
+ return function(n, i) {
392
+ const s = {
393
+ type: "modifier",
394
+ key: Array.isArray(n) ? n : [n],
395
+ factory: i
396
+ };
397
+ return t.modifiers.push(s), s;
398
+ };
399
+ }
400
+ function W() {
401
+ return {
402
+ type: "root",
403
+ declarations: {},
404
+ utilities: [],
405
+ modifiers: [],
406
+ recipes: [],
407
+ variables: [],
408
+ children: [],
409
+ themes: []
410
+ };
411
+ }
412
+ function Y(e, t, r) {
413
+ const n = t.map((s) => s.key);
414
+ return q(n).map((s) => {
415
+ const o = /* @__PURE__ */ new Map();
416
+ for (const u of s) {
417
+ const c = t.find(
418
+ (f) => f.key.includes(u)
419
+ );
420
+ c && o.set(u, c);
421
+ }
422
+ return z(e, r, o);
423
+ });
424
+ }
425
+ function G(e, t) {
426
+ return function(n, i) {
427
+ const s = {
428
+ type: "utility",
429
+ name: n,
430
+ factory: i
431
+ };
432
+ return t.utilities.push(s), (o, u = []) => {
433
+ for (const [c, f] of Object.entries(o)) {
434
+ const a = {
435
+ type: "utility",
436
+ name: n,
437
+ value: c,
438
+ declarations: {},
439
+ variables: [],
440
+ children: [],
441
+ modifiers: []
442
+ }, l = b(
443
+ a,
444
+ t
445
+ );
446
+ a.declarations = i({
447
+ ...l,
448
+ value: f
449
+ }) ?? {}, g(a.declarations, l), e.children.push(a), u.length > 0 && e.children.push(
450
+ ...Y(a, u, t)
451
+ );
452
+ }
453
+ };
454
+ };
455
+ }
456
+ function J(e, t) {
457
+ return function(n, i) {
458
+ const s = t.themes.find((c) => c.name === n), o = s ?? {
459
+ type: "theme",
460
+ name: n,
461
+ declarations: {},
462
+ variables: [],
463
+ children: []
464
+ };
465
+ s || t.themes.push(o);
466
+ const u = b(o, t);
467
+ return i && i(u), o;
468
+ };
469
+ }
470
+ function Q(e, t) {
471
+ return function(n, i, s, o) {
472
+ const u = {
473
+ type: "recipe",
474
+ name: n,
475
+ defaults: i,
476
+ variants: s,
477
+ ...o
478
+ };
479
+ return t.recipes.push(u), u;
480
+ };
481
+ }
482
+ function fe(e) {
483
+ const t = W(), r = { ...e }, n = G(t, t), i = I(t, t), s = Q(t, t), o = J(t, t), { variable: u, selector: c, atRule: f, keyframes: a, media: l, ref: y, css: h } = b(t, t);
484
+ return {
485
+ root: t,
486
+ variable: u,
487
+ selector: c,
488
+ utility: n,
489
+ modifier: i,
490
+ recipe: s,
491
+ theme: o,
492
+ atRule: f,
493
+ keyframes: a,
494
+ media: l,
495
+ ref: y,
496
+ css: h,
497
+ options: r
498
+ };
499
+ }
500
+ export {
501
+ z as applyModifiers,
502
+ re as capitalizeFirst,
503
+ q as combineKeys,
504
+ v as createAtRuleFunction,
505
+ k as createCssFunction,
506
+ b as createDeclarationsCallbackContext,
507
+ E as createKeyframesFunction,
508
+ S as createMediaFunction,
509
+ Y as createModifiedUtilityInstances,
510
+ I as createModifierFunction,
511
+ Q as createRecipeFunction,
512
+ P as createRefFunction,
513
+ W as createRoot,
514
+ D as createSelectorFunction,
515
+ J as createThemeFunction,
516
+ G as createUtilityFunction,
517
+ H as createVariableFunction,
518
+ A as deepClone,
519
+ ce as getModifier,
520
+ oe as getUtility,
521
+ ie as getVariable,
522
+ Z as isAtRule,
523
+ T as isCSS,
524
+ C as isContainer,
525
+ te as isModifier,
526
+ R as isObject,
527
+ _ as isPrimitiveTokenValue,
528
+ F as isRef,
529
+ j as isRoot,
530
+ X as isSelector,
531
+ ne as isTheme,
532
+ p as isToken,
533
+ V as isTokenValue,
534
+ ee as isUtility,
535
+ B as isVariable,
536
+ se as merge,
537
+ M as mergeContainers,
538
+ N as mergeThemesArray,
539
+ L as mergeVariablesArray,
540
+ g as parseDeclarationsBlock,
541
+ K as rfdc,
542
+ fe as styleframe
543
+ };
@@ -0,0 +1 @@
1
+ (function(a,g){typeof exports=="object"&&typeof module<"u"?g(exports):typeof define=="function"&&define.amd?define(["exports"],g):(a=typeof globalThis<"u"?globalThis:a||self,g(a.styleframe={}))})(this,(function(a){"use strict";function g(e,t){return function(n,...i){return{type:"css",value:n.reduce((c,u,o)=>(c.push(u),o<i.length&&c.push(i[o]),c),[])}}}function V(e){return typeof e=="object"&&e!==null}function m(e,t){return V(e)&&"type"in e&&e.type===t}function v(e){return m(e,"variable")}function O(e){return m(e,"reference")}function X(e){return m(e,"selector")}function Z(e){return m(e,"at-rule")}function x(e){return m(e,"utility")}function ee(e){return m(e,"modifier")}function C(e){return m(e,"css")}function te(e){return m(e,"theme")}function w(e){return m(e,"root")}function S(e){return typeof e=="string"||typeof e=="number"||typeof e=="boolean"||e===null}function M(e){return S(e)||O(e)||C(e)||Array.isArray(e)&&e.every(M)}function B(e){return V(e)&&"children"in e&&"declarations"in e&&"variables"in e}function F(e,t){return function(n,i,s){const c={type:"at-rule",identifier:n,rule:i,declarations:{},variables:[],children:[]},u=p(c,t);return typeof s=="function"?c.declarations=s(u)??{}:s&&(c.declarations=s),j(c.declarations,u),e.children.push(c),c}}function _(e,t){const r=F(e,t);return function(i,s){return r("media",i,s)}}function P(e,t){const r=F(e,t);return function(i,s){return r("keyframes",i,s)}}function U(e,t){return function(n,i){return v(n)?{type:"reference",name:n.name,fallback:i}:{type:"reference",name:n,fallback:i}}}function D(e,t){return function(n,i){const s={type:"selector",query:n,declarations:{},variables:[],children:[]},c=p(s,t);return typeof i=="function"?s.declarations=i(c)??{}:B(i)?(s.variables=i.variables,s.declarations=i.declarations,s.children=i.children):s.declarations=i,j(s.declarations,c),e.children.push(s),s}}function E(e,t){return function(n,i,s={default:!1}){const c=typeof n=="string"?n:n.name,u=e.variables.find(f=>f.name===c);if(s.default&&u)return u;if(u)return u.value=i,u;const o={type:"variable",name:c,value:i};return e.variables.push(o),o}}function p(e,t){const r=E(e),n=D(e,t),i=F(e,t),s=P(t,t),c=_(e,t),u=U(),o=g();return{variable:r,selector:n,keyframes:s,atRule:i,media:c,ref:u,css:o}}function j(e,t){for(const r in e)if(r.startsWith("@")){const n=e[r];if(typeof n=="object"&&n!==null&&!M(n)){const i=r.replace(/^@(\w+).*/,"$1"),s=r.replace(`@${i}`,"").trim();t.atRule(i,s,n),delete e[r]}}else if(/^[.&:]/.test(r)){const n=e[r];typeof n=="object"&&(t.selector(r,n),delete e[r])}return e}function ne(e){return e.charAt(0).toUpperCase()+e.slice(1)}function A(e){if(e instanceof Buffer)return Buffer.from(e);const t=e.constructor;return new t(e.buffer.slice(0),e.byteOffset,e.byteLength/e.BYTES_PER_ELEMENT||1)}function K(e){if(e=e||{},e.circular)return re(e);const t=new Map;if(t.set(Date,c=>new Date(c)),t.set(Map,(c,u)=>new Map(n(Array.from(c),u))),t.set(Set,(c,u)=>new Set(n(Array.from(c),u))),e.constructorHandlers)for(const c of e.constructorHandlers)t.set(c[0],c[1]);let r;return e.proto?s:i;function n(c,u){const o=Object.keys(c),f=Array.from({length:o.length});for(let y=0;y<o.length;y++){const l=o[y],d=c[l];typeof d!="object"||d===null?f[l]=d:d.constructor!==Object&&(r=t.get(d.constructor))?f[l]=r(d,u):ArrayBuffer.isView(d)?f[l]=A(d):f[l]=u(d)}return f}function i(c){if(typeof c!="object"||c===null)return c;if(Array.isArray(c))return n(c,i);if(c.constructor!==Object&&(r=t.get(c.constructor)))return r(c,i);const u={};for(const o in c){if(Object.hasOwnProperty.call(c,o)===!1)continue;const f=c[o];typeof f!="object"||f===null?u[o]=f:f.constructor!==Object&&(r=t.get(f.constructor))?u[o]=r(f,i):ArrayBuffer.isView(f)?u[o]=A(f):u[o]=i(f)}return u}function s(c){if(typeof c!="object"||c===null)return c;if(Array.isArray(c))return n(c,s);if(c.constructor!==Object&&(r=t.get(c.constructor)))return r(c,s);const u={};for(const o in c){const f=c[o];typeof f!="object"||f===null?u[o]=f:f.constructor!==Object&&(r=t.get(f.constructor))?u[o]=r(f,s):ArrayBuffer.isView(f)?u[o]=A(f):u[o]=s(f)}return u}}function re(e){const t=[],r=[],n=new Map;if(n.set(Date,o=>new Date(o)),n.set(Map,(o,f)=>new Map(s(Array.from(o),f))),n.set(Set,(o,f)=>new Set(s(Array.from(o),f))),e.constructorHandlers)for(const o of e.constructorHandlers)n.set(o[0],o[1]);let i;return e.proto?u:c;function s(o,f){const y=Object.keys(o),l=Array.from({length:y.length});for(let d=0;d<y.length;d++){const b=y[d],h=o[b];if(typeof h!="object"||h===null)l[b]=h;else if(h.constructor!==Object&&(i=n.get(h.constructor)))l[b]=i(h,f);else if(ArrayBuffer.isView(h))l[b]=A(h);else{const Q=t.indexOf(h);Q!==-1?l[b]=r[Q]:l[b]=f(h)}}return l}function c(o){if(typeof o!="object"||o===null)return o;if(Array.isArray(o))return s(o,c);if(o.constructor!==Object&&(i=n.get(o.constructor)))return i(o,c);const f={};t.push(o),r.push(f);for(const y in o){if(Object.hasOwnProperty.call(o,y)===!1)continue;const l=o[y];if(typeof l!="object"||l===null)f[y]=l;else if(l.constructor!==Object&&(i=n.get(l.constructor)))f[y]=i(l,c);else if(ArrayBuffer.isView(l))f[y]=A(l);else{const d=t.indexOf(l);d!==-1?f[y]=r[d]:f[y]=c(l)}}return t.pop(),r.pop(),f}function u(o){if(typeof o!="object"||o===null)return o;if(Array.isArray(o))return s(o,u);if(o.constructor!==Object&&(i=n.get(o.constructor)))return i(o,u);const f={};t.push(o),r.push(f);for(const y in o){const l=o[y];if(typeof l!="object"||l===null)f[y]=l;else if(l.constructor!==Object&&(i=n.get(l.constructor)))f[y]=i(l,u);else if(ArrayBuffer.isView(l))f[y]=A(l);else{const d=t.indexOf(l);d!==-1?f[y]=r[d]:f[y]=u(l)}}return t.pop(),r.pop(),f}}const R=K();function ie(e,t){const r=e.variables.find(n=>n.name===t);if(!r)throw new Error(`Variable "${t}" not found`);return r}function ce(e,t){const r=e.utilities.find(n=>n.name===t);if(!r)throw new Error(`Utility "${t}" not found`);return r}function oe(e,t){const r=e.modifiers.find(n=>n.key.includes(t));if(!r)throw new Error(`Modifier "${t}" not found`);return r}const H=Symbol.for("__licenseRequired");function se(e){T(e)||Object.defineProperty(e,H,{value:!0,writable:!1,configurable:!1,enumerable:!0})}function T(e){return Object.prototype.hasOwnProperty.call(e,H)}function $(e,t){const r=[...e];for(const n of t){const i=r.find(s=>s.name===n.name);i?i.value=n.value:r.push(n)}return r}function z(e,t){const r=[...e];for(const n of t){const i=r.find(s=>s.name===n.name);i?Object.assign(i,k(i,n)):r.push(n)}return r}function k(e,t){return Object.keys(e).reduce((r,n)=>(n==="variables"?r.variables=$(e.variables,t.variables):n==="declarations"?r.declarations={...e.declarations,...t.declarations}:n==="themes"&&w(r)&&w(e)&&w(t)?r.themes=z(e.themes,t.themes):Array.isArray(e[n])&&(r[n]=e[n].concat(t[n])),r),{...e,...t})}function fe(e,...t){return t.reduce((r,n)=>{const i={...r,root:k(r.root,n.root)};return(T(r)||T(n))&&se(i),i},e)}function I(e){const t=[];function r(n,i){i.length>0&&t.push([...i].sort());for(let s=n;s<e.length;s++){const c=e[s];if(c)if(c.length===1&&c[0])r(s+1,[...i,c[0]]);else for(const u of c)r(s+1,[...i,u])}}return r(0,[]),t.sort((n,i)=>n.length!==i.length?n.length-i.length:n.join(",").localeCompare(i.join(",")))}function L(e,t,r){const n={...e,modifiers:[...r.keys()]},i=p(n,t);for(const s of r.values())s.factory({...i,declarations:R(n.declarations),variables:R(n.variables),children:R(n.children)}),j(n.declarations,i);return n}function N(e,t){return function(n,i){const s={type:"modifier",key:Array.isArray(n)?n:[n],factory:i};return t.modifiers.push(s),s}}function q(){return{type:"root",declarations:{},utilities:[],modifiers:[],recipes:[],variables:[],children:[],themes:[]}}function W(e,t,r){const n=t.map(s=>s.key);return I(n).map(s=>{const c=new Map;for(const u of s){const o=t.find(f=>f.key.includes(u));o&&c.set(u,o)}return L(e,r,c)})}function Y(e,t){return function(n,i){const s={type:"utility",name:n,factory:i};return t.utilities.push(s),(c,u=[])=>{for(const[o,f]of Object.entries(c)){const y={type:"utility",name:n,value:o,declarations:{},variables:[],children:[],modifiers:[]},l=p(y,t);y.declarations=i({...l,value:f})??{},j(y.declarations,l),e.children.push(y),u.length>0&&e.children.push(...W(y,u,t))}}}}function G(e,t){return function(n,i){const s=t.themes.find(o=>o.name===n),c=s??{type:"theme",name:n,declarations:{},variables:[],children:[]};s||t.themes.push(c);const u=p(c,t);return i&&i(u),c}}function J(e,t){return function(n,i,s,c){const u={type:"recipe",name:n,defaults:i,variants:s,...c};return t.recipes.push(u),u}}function ue(e){const t=q(),r={...e},n=Y(t,t),i=N(t,t),s=J(t,t),c=G(t,t),{variable:u,selector:o,atRule:f,keyframes:y,media:l,ref:d,css:b}=p(t,t);return{root:t,variable:u,selector:o,utility:n,modifier:i,recipe:s,theme:c,atRule:f,keyframes:y,media:l,ref:d,css:b,options:r}}a.applyModifiers=L,a.capitalizeFirst=ne,a.combineKeys=I,a.createAtRuleFunction=F,a.createCssFunction=g,a.createDeclarationsCallbackContext=p,a.createKeyframesFunction=P,a.createMediaFunction=_,a.createModifiedUtilityInstances=W,a.createModifierFunction=N,a.createRecipeFunction=J,a.createRefFunction=U,a.createRoot=q,a.createSelectorFunction=D,a.createThemeFunction=G,a.createUtilityFunction=Y,a.createVariableFunction=E,a.deepClone=R,a.getModifier=oe,a.getUtility=ce,a.getVariable=ie,a.isAtRule=Z,a.isCSS=C,a.isContainer=B,a.isModifier=ee,a.isObject=V,a.isPrimitiveTokenValue=S,a.isRef=O,a.isRoot=w,a.isSelector=X,a.isTheme=te,a.isToken=m,a.isTokenValue=M,a.isUtility=x,a.isVariable=v,a.merge=fe,a.mergeContainers=k,a.mergeThemesArray=z,a.mergeVariablesArray=$,a.parseDeclarationsBlock=j,a.rfdc=K,a.styleframe=ue,Object.defineProperty(a,Symbol.toStringTag,{value:"Module"})}));
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@styleframe/core",
3
- "version": "1.0.1",
3
+ "version": "1.0.3",
4
4
  "type": "module",
5
5
  "types": "./dist/styleframe.d.ts",
6
6
  "module": "./dist/styleframe.js",
@@ -12,16 +12,24 @@
12
12
  "require": "./dist/styleframe.umd.cjs"
13
13
  }
14
14
  },
15
+ "files": [
16
+ "dist",
17
+ "LICENSE",
18
+ "CHANGELOG.md",
19
+ "README.md"
20
+ ],
15
21
  "dependencies": {
16
- "csstype": "^3.1.3"
22
+ "csstype": "^3.1.3",
23
+ "@styleframe/license": "^1.0.0"
17
24
  },
18
25
  "devDependencies": {
26
+ "@vitest/coverage-v8": "^3.2.4",
19
27
  "typescript": "^5.8.3",
20
28
  "vite": "^7.0.6",
21
29
  "vitest": "^3.2.4",
22
30
  "vite-plugin-dts": "^4.5.4",
23
- "@styleframe/config-typescript": "^1.0.1",
24
- "@styleframe/config-vite": "^1.0.1"
31
+ "@styleframe/config-vite": "^1.0.1",
32
+ "@styleframe/config-typescript": "^1.0.1"
25
33
  },
26
34
  "homepage": "https://github.com/styleframe-dev/styleframe#readme",
27
35
  "bugs": {
@@ -32,6 +40,9 @@
32
40
  "url": "git+https://github.com/styleframe-dev/styleframe.git"
33
41
  },
34
42
  "author": "Alex Grozav <alex@styleframe.dev>",
43
+ "overrides": {
44
+ "vite": "npm:rolldown-vite@latest"
45
+ },
35
46
  "scripts": {
36
47
  "dev": "vite build --watch",
37
48
  "build": "pnpm typecheck && vite build",