@cronocode/react-box 1.5.8 → 1.6.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.
@@ -1,7 +1,7 @@
1
- import E, { useEffect as I, useMemo as j, forwardRef as O, useState as A } from "react";
2
- import { I as D, C as W } from "../utils/utils.mjs";
3
- import { useTheme as _ } from "../theme.mjs";
4
- const F = ["H", "F", "A"], t = [
1
+ import A, { useEffect as D, useMemo as E, forwardRef as F, useState as P } from "react";
2
+ import { I as _, C as M } from "../utils/utils.mjs";
3
+ import { useTheme as W } from "../theme.mjs";
4
+ const G = ["H", "F", "A"], t = [
5
5
  0,
6
6
  1,
7
7
  2,
@@ -53,7 +53,7 @@ const F = ["H", "F", "A"], t = [
53
53
  92,
54
54
  96,
55
55
  100
56
- ], M = [
56
+ ], q = [
57
57
  -1,
58
58
  -2,
59
59
  -3,
@@ -99,53 +99,80 @@ const F = ["H", "F", "A"], t = [
99
99
  -92,
100
100
  -96,
101
101
  -100
102
- ], r = [...t, ...M], T = ["solid", "dashed", "dotted", "double", "groove", "ridge", "inset", "outset", "none", "hidden"], $ = ["auto", "hidden", "scroll", "visible"];
102
+ ], r = [...t, ...q], L = ["solid", "dashed", "dotted", "double", "groove", "ridge", "inset", "outset", "none", "hidden"], R = ["auto", "hidden", "scroll", "visible"], V = [
103
+ "1/2",
104
+ "1/3",
105
+ "2/3",
106
+ "1/4",
107
+ "2/4",
108
+ "3/4",
109
+ "1/5",
110
+ "2/5",
111
+ "3/5",
112
+ "4/5",
113
+ "1/6",
114
+ "2/6",
115
+ "3/6",
116
+ "4/6",
117
+ "5/6",
118
+ "1/12",
119
+ "2/12",
120
+ "3/12",
121
+ "4/12",
122
+ "5/12",
123
+ "6/12",
124
+ "7/12",
125
+ "8/12",
126
+ "9/12",
127
+ "10/12",
128
+ "11/12"
129
+ ], y = ["fit", "fit-screen", "auto", "fit-content", "max-content", "min-content"];
103
130
  var e;
104
131
  ((s) => {
105
- function l(d, n) {
106
- return `${n / 4}rem`;
132
+ function a(f, m) {
133
+ return `${m / 4}rem`;
107
134
  }
108
- s.rem = l;
109
- function c(d, n) {
110
- return `${n}px`;
135
+ s.rem = a;
136
+ function d(f, m) {
137
+ return `${m}px`;
111
138
  }
112
- s.px = c;
113
- function m(d, n) {
114
- const [i, b] = n.split("/");
115
- return `${+i / +b * 100}%`;
139
+ s.px = d;
140
+ function i(f, m) {
141
+ const [b, c] = m.split("/");
142
+ return `${+b / +c * 100}%`;
116
143
  }
117
- s.fraction = m;
118
- function g(d, n) {
119
- switch (n) {
144
+ s.fraction = i;
145
+ function n(f, m) {
146
+ switch (m) {
120
147
  case "fit":
121
148
  return "100%";
122
149
  case "fit-screen":
123
- return d.toLocaleLowerCase().includes("height") ? "100vh" : "100vw";
150
+ return f.toLocaleLowerCase().includes("height") ? "100vh" : "100vw";
124
151
  default:
125
- return n;
152
+ return m;
126
153
  }
127
154
  }
128
- s.heightWidth = g;
129
- function p(d) {
130
- return (n, i) => `var(--${d}${i});`;
155
+ s.widthHeight = n;
156
+ function p(f) {
157
+ return (m, b) => `var(--${f}${b});`;
131
158
  }
132
159
  s.variables = p;
133
160
  })(e || (e = {}));
134
- var C;
161
+ var h;
135
162
  ((s) => {
136
- function l(c, m) {
137
- return `${c}${m.replace("/", "-")}`;
163
+ function a(d, i) {
164
+ return `${d}${i.replace("/", "-")}`;
138
165
  }
139
- s.fraction = l;
140
- })(C || (C = {}));
141
- const R = {
142
- shadow: { cssNames: ["shadow"], formatValue: e.variables("shadow") },
166
+ s.fraction = a;
167
+ })(h || (h = {}));
168
+ const j = {
169
+ shadow: { cssNames: ["box-shadow"], formatValue: e.variables("shadow") },
143
170
  background: { cssNames: ["background"], formatValue: e.variables("background") },
144
171
  color: { cssNames: ["color"], formatValue: e.variables("color") },
145
172
  bgColor: { cssNames: ["background-color"], formatValue: e.variables("color") },
146
173
  borderColor: { cssNames: ["border-color"], formatValue: e.variables("color") },
147
174
  outlineColor: { cssNames: ["outline-color"], formatValue: e.variables("color") }
148
- }, a = {
175
+ }, l = {
149
176
  display: {
150
177
  cssNames: ["display"],
151
178
  values1: { values: ["none", "block", "inline-block", "flex", "inline-flex", "grid", "inline-grid", "contents"] },
@@ -160,43 +187,39 @@ const R = {
160
187
  },
161
188
  width: {
162
189
  cssNames: ["width"],
163
- values1: {
164
- values: ["fit", "fit-screen", "auto", "fit-content", "max-content", "min-content"],
165
- formatValue: e.heightWidth
166
- },
190
+ values1: { values: y, formatValue: e.widthHeight },
167
191
  values2: { values: t, formatValue: e.rem },
168
- values3: {
169
- values: [
170
- "1/2",
171
- "1/3",
172
- "2/3",
173
- "1/4",
174
- "2/4",
175
- "3/4",
176
- "1/5",
177
- "2/5",
178
- "3/5",
179
- "4/5",
180
- "1/6",
181
- "2/6",
182
- "3/6",
183
- "4/6",
184
- "5/6",
185
- "1/12",
186
- "2/12",
187
- "3/12",
188
- "4/12",
189
- "5/12",
190
- "6/12",
191
- "7/12",
192
- "8/12",
193
- "9/12",
194
- "10/12",
195
- "11/12"
196
- ],
197
- formatValue: e.fraction,
198
- formatClassName: C.fraction
199
- }
192
+ values3: { values: V, formatValue: e.fraction, formatClassName: h.fraction }
193
+ },
194
+ minWidth: {
195
+ cssNames: ["min-width"],
196
+ values1: { values: y, formatValue: e.widthHeight },
197
+ values2: { values: t, formatValue: e.rem },
198
+ values3: { values: V, formatValue: e.fraction, formatClassName: h.fraction }
199
+ },
200
+ maxWidth: {
201
+ cssNames: ["max-width"],
202
+ values1: { values: y, formatValue: e.widthHeight },
203
+ values2: { values: t, formatValue: e.rem },
204
+ values3: { values: V, formatValue: e.fraction, formatClassName: h.fraction }
205
+ },
206
+ height: {
207
+ cssNames: ["height"],
208
+ values1: { values: y, formatValue: e.widthHeight },
209
+ values2: { values: t, formatValue: e.rem },
210
+ values3: { values: V, formatValue: e.fraction, formatClassName: h.fraction }
211
+ },
212
+ minHeight: {
213
+ cssNames: ["min-height"],
214
+ values1: { values: y, formatValue: e.widthHeight },
215
+ values2: { values: t, formatValue: e.rem },
216
+ values3: { values: V, formatValue: e.fraction, formatClassName: h.fraction }
217
+ },
218
+ maxHeight: {
219
+ cssNames: ["max-height"],
220
+ values1: { values: y, formatValue: e.widthHeight },
221
+ values2: { values: t, formatValue: e.rem },
222
+ values3: { values: V, formatValue: e.fraction, formatClassName: h.fraction }
200
223
  },
201
224
  position: {
202
225
  cssNames: ["position"],
@@ -362,7 +385,7 @@ const R = {
362
385
  },
363
386
  borderStyle: {
364
387
  cssNames: ["border-style"],
365
- values1: { values: T },
388
+ values1: { values: L },
366
389
  values2: { values: [] },
367
390
  values3: { values: [] }
368
391
  },
@@ -475,19 +498,19 @@ const R = {
475
498
  },
476
499
  overflow: {
477
500
  cssNames: ["overflow"],
478
- values1: { values: $ },
501
+ values1: { values: R },
479
502
  values2: { values: [] },
480
503
  values3: { values: [] }
481
504
  },
482
505
  overflowX: {
483
506
  cssNames: ["overflow-x"],
484
- values1: { values: $ },
507
+ values1: { values: R },
485
508
  values2: { values: [] },
486
509
  values3: { values: [] }
487
510
  },
488
511
  overflowY: {
489
512
  cssNames: ["overflow-y"],
490
- values1: { values: $ },
513
+ values1: { values: R },
491
514
  values2: { values: [] },
492
515
  values3: { values: [] }
493
516
  },
@@ -646,7 +669,7 @@ const R = {
646
669
  values2: { values: [] },
647
670
  values3: { values: [] }
648
671
  },
649
- flexSelf: {
672
+ alignSelf: {
650
673
  cssNames: ["align-self"],
651
674
  values1: { values: ["auto", "flex-start", "flex-end", "center", "baseline", "stretch"] },
652
675
  values2: { values: [] },
@@ -660,25 +683,25 @@ const R = {
660
683
  },
661
684
  gridColumns: {
662
685
  cssNames: ["grid-template-columns"],
663
- values1: { values: t, formatValue: (s, l) => `repeat(${l},minmax(0,1fr))` },
686
+ values1: { values: t, formatValue: (s, a) => `repeat(${a},minmax(0,1fr))` },
664
687
  values2: { values: [] },
665
688
  values3: { values: [] }
666
689
  },
667
690
  colSpan: {
668
691
  cssNames: ["grid-column"],
669
- values1: { values: t, formatValue: (s, l) => `span ${l}/span ${l}` },
670
- values2: { values: ["full-row"], formatValue: (s, l) => "1/-1" },
692
+ values1: { values: t, formatValue: (s, a) => `span ${a}/span ${a}` },
693
+ values2: { values: ["full-row"], formatValue: (s, a) => "1/-1" },
671
694
  values3: { values: [] }
672
695
  },
673
696
  colStart: {
674
697
  cssNames: ["grid-column-start"],
675
- values1: { values: t, formatValue: (s, l) => `${l}` },
698
+ values1: { values: t, formatValue: (s, a) => `${a}` },
676
699
  values2: { values: [] },
677
700
  values3: { values: [] }
678
701
  },
679
702
  colEnd: {
680
703
  cssNames: ["grid-column-end"],
681
- values1: { values: t, formatValue: (s, l) => `${l}` },
704
+ values1: { values: t, formatValue: (s, a) => `${a}` },
682
705
  values2: { values: [] },
683
706
  values3: { values: [] }
684
707
  },
@@ -690,7 +713,7 @@ const R = {
690
713
  },
691
714
  outlineStyle: {
692
715
  cssNames: ["outline-style"],
693
- values1: { values: T },
716
+ values1: { values: L },
694
717
  values2: { values: [] },
695
718
  values3: { values: [] }
696
719
  },
@@ -710,7 +733,7 @@ const R = {
710
733
  cssNames: ["transition-duration"],
711
734
  values1: {
712
735
  values: [50, 100, 150, 200, 250, 300, 350, 400, 450, 500, 550, 600, 650, 700, 750, 800, 850, 900, 950, 1e3],
713
- formatValue: (s, l) => `${l}ms`
736
+ formatValue: (s, a) => `${a}ms`
714
737
  },
715
738
  values2: { values: [] },
716
739
  values3: { values: [] }
@@ -746,109 +769,114 @@ const R = {
746
769
  values3: { values: [] }
747
770
  }
748
771
  };
749
- Object.keys(R).forEach((s) => {
750
- a[s] = R[s], a[s].isThemeStyle = !0;
772
+ Object.keys(j).forEach((s) => {
773
+ l[s] = j[s], l[s].isThemeStyle = !0;
751
774
  });
752
- const h = {
753
- m: { ...a.margin, key: "margin" },
754
- mx: { ...a.marginHorizontal, key: "marginHorizontal" },
755
- my: { ...a.marginVertical, key: "marginVertical" },
756
- mt: { ...a.marginTop, key: "marginTop" },
757
- mr: { ...a.marginRight, key: "marginRight" },
758
- mb: { ...a.marginBottom, key: "marginBottom" },
759
- ml: { ...a.marginLeft, key: "marginLeft" },
760
- p: { ...a.padding, key: "padding" },
761
- px: { ...a.paddingHorizontal, key: "paddingHorizontal" },
762
- py: { ...a.paddingVertical, key: "paddingVertical" },
763
- pt: { ...a.paddingTop, key: "paddingTop" },
764
- pr: { ...a.paddingRight, key: "paddingRight" },
765
- pb: { ...a.paddingBottom, key: "paddingBottom" },
766
- pl: { ...a.paddingLeft, key: "paddingLeft" },
767
- b: { ...a.border, key: "border" },
768
- bx: { ...a.borderHorizontal, key: "borderHorizontal" },
769
- by: { ...a.borderVertical, key: "borderVertical" },
770
- bt: { ...a.borderTop, key: "borderTop" },
771
- br: { ...a.borderRight, key: "borderRight" },
772
- bb: { ...a.borderBottom, key: "borderBottom" },
773
- bl: { ...a.borderLeft, key: "borderLeft" },
774
- jc: { ...a.justifyContent, key: "justifyContent" },
775
- ai: { ...a.alignItems, key: "alignItems" },
776
- ac: { ...a.alignContent, key: "alignContent" },
777
- d: { ...a.flexDirection, key: "flexDirection" }
778
- }, G = Object.keys(a), P = Object.keys(h);
779
- F.forEach((s) => {
780
- G.forEach((l) => {
781
- a[`${l}${s}`] = { ...a[l] }, a[`${l}${s}`].pseudoSuffix = s;
782
- }), P.forEach((l) => {
783
- h[`${l}${s}`] = { ...h[l], key: `${h[l].key}${s}` }, h[`${l}${s}`].pseudoSuffix = s;
775
+ const x = {
776
+ m: { ...l.margin, key: "margin" },
777
+ mx: { ...l.marginHorizontal, key: "marginHorizontal" },
778
+ my: { ...l.marginVertical, key: "marginVertical" },
779
+ mt: { ...l.marginTop, key: "marginTop" },
780
+ mr: { ...l.marginRight, key: "marginRight" },
781
+ mb: { ...l.marginBottom, key: "marginBottom" },
782
+ ml: { ...l.marginLeft, key: "marginLeft" },
783
+ p: { ...l.padding, key: "padding" },
784
+ px: { ...l.paddingHorizontal, key: "paddingHorizontal" },
785
+ py: { ...l.paddingVertical, key: "paddingVertical" },
786
+ pt: { ...l.paddingTop, key: "paddingTop" },
787
+ pr: { ...l.paddingRight, key: "paddingRight" },
788
+ pb: { ...l.paddingBottom, key: "paddingBottom" },
789
+ pl: { ...l.paddingLeft, key: "paddingLeft" },
790
+ b: { ...l.border, key: "border" },
791
+ bx: { ...l.borderHorizontal, key: "borderHorizontal" },
792
+ by: { ...l.borderVertical, key: "borderVertical" },
793
+ bt: { ...l.borderTop, key: "borderTop" },
794
+ br: { ...l.borderRight, key: "borderRight" },
795
+ bb: { ...l.borderBottom, key: "borderBottom" },
796
+ bl: { ...l.borderLeft, key: "borderLeft" },
797
+ jc: { ...l.justifyContent, key: "justifyContent" },
798
+ ai: { ...l.alignItems, key: "alignItems" },
799
+ ac: { ...l.alignContent, key: "alignContent" },
800
+ d: { ...l.flexDirection, key: "flexDirection" }
801
+ }, U = Object.keys(l), X = Object.keys(x);
802
+ G.forEach((s) => {
803
+ U.forEach((a) => {
804
+ l[`${a}${s}`] = { ...l[a] }, l[`${a}${s}`].pseudoSuffix = s;
805
+ }), X.forEach((a) => {
806
+ x[`${a}${s}`] = { ...x[a], key: `${x[a].key}${s}` }, x[`${a}${s}`].pseudoSuffix = s;
784
807
  });
785
808
  });
786
- var x;
809
+ var w;
787
810
  ((s) => {
788
- const l = new D(), c = [...Object.keys(a), ...Object.keys(R)], m = V();
789
- let g = !1;
790
- const p = c.reduce((v, u) => (v[u] = /* @__PURE__ */ new Set(), v), {});
811
+ const a = new _(), d = [...Object.keys(l), ...Object.keys(j)], i = z();
812
+ let n = !1;
813
+ const p = d.reduce((v, u) => (v[u] = /* @__PURE__ */ new Set(), v), {});
791
814
  s.doxClassName = "_dox";
792
- function d(v, u) {
793
- if (v in a)
794
- return i(v, u);
795
- if (v in h)
796
- return i(h[v].key, u);
815
+ function f(v, u) {
816
+ if (v in l)
817
+ return b(v, u);
797
818
  }
798
- s.get = d;
799
- function n() {
800
- if (g) {
819
+ s.get = f;
820
+ function m() {
821
+ if (n) {
801
822
  console.info("%c💬Flush Dox Styles", "color: #00ffff");
802
823
  const v = `.${s.doxClassName}{display: block;border: 0 solid black;outline: 0px solid black;margin: 0;padding: 0;background-color: initial;transition: all 250ms;box-sizing: border-box;font-family: inherit;font-size: inherit;}`;
803
- let u = b([v]);
804
- u = b(u, "H"), u = b(u, "F"), u = b(u, "A"), m.innerHTML = u.join(""), g = !1;
824
+ let u = c([v]);
825
+ u = c(u, "H"), u = c(u, "F"), u = c(u, "A"), i.innerHTML = u.join(""), n = !1;
805
826
  }
806
827
  }
807
- s.flush = n;
808
- function i(v, u) {
809
- var w;
810
- p[v].has(u) || (g = !0, p[v].add(u));
811
- const o = y(v, u), f = ((w = o.formatClassName) == null ? void 0 : w.call(o, v, u)) ?? `${v}${u}`;
812
- return `-${l.getIdentity(f)}`;
813
- }
828
+ s.flush = m;
814
829
  function b(v, u) {
830
+ var $;
831
+ p[v].has(u) || (n = !0, p[v].add(u));
832
+ const o = k(v, u), g = (($ = o.formatClassName) == null ? void 0 : $.call(o, v, u)) ?? `${v}${u}`;
833
+ return `-${a.getIdentity(g)}`;
834
+ }
835
+ function c(v, u) {
815
836
  return Object.entries(p).filter(([o]) => {
816
- var f;
817
- return ((f = a[o]) == null ? void 0 : f.pseudoSuffix) === u;
818
- }).reduce((o, [f, w]) => (w.forEach((k) => {
819
- var S;
820
- let N = i(f, k);
837
+ var g;
838
+ return ((g = l[o]) == null ? void 0 : g.pseudoSuffix) === u;
839
+ }).reduce((o, [g, $]) => ($.forEach((H) => {
840
+ var T;
841
+ let N = b(g, H);
821
842
  u === "H" && (N = `${N}:hover`), u === "F" && (N = `${N}:focus-within`), u === "A" && (N = `${N}:active`);
822
- const z = y(f, k), H = ((S = z.formatValue) == null ? void 0 : S.call(z, f, k)) ?? k, L = a[f].cssNames.map((B) => `${B}:${H};`).join("");
823
- o.push(`.${N}{${L}}`);
843
+ const C = k(g, H), B = ((T = C.formatValue) == null ? void 0 : T.call(C, g, H)) ?? H, I = l[g].cssNames.map((O) => `${O}:${B};`).join("");
844
+ o.push(`.${N}{${I}}`);
824
845
  }), o), v);
825
846
  }
826
- function y(v, u) {
827
- const o = a[v];
847
+ function k(v, u) {
848
+ const o = l[v];
828
849
  return o.isThemeStyle ? o : o.values1.values.includes(u) ? o.values1 : o.values2.values.includes(u) ? o.values2 : o.values3;
829
850
  }
830
- function V() {
851
+ function z() {
831
852
  const v = "crono-styles";
832
853
  let u = document.getElementById(v);
833
854
  return u || (u = document.createElement("style"), u.setAttribute("id", v), u.setAttribute("type", "text/css"), document.head.insertBefore(u, document.head.firstChild)), u;
834
855
  }
835
- })(x || (x = {}));
836
- function q(s) {
837
- const l = _(s);
838
- return I(x.flush, [s]), j(() => {
839
- const c = [x.doxClassName], m = l ? { ...l, ...s } : s;
840
- return Object.entries(m).forEach(([g, p]) => {
841
- c.push(x.get(g, p));
842
- }), c;
843
- }, [s, l]);
856
+ })(w || (w = {}));
857
+ function Y(s) {
858
+ const a = W(s);
859
+ return D(w.flush, [s]), E(() => {
860
+ const d = [w.doxClassName], i = a ? { ...S(a), ...S(s) } : S(s);
861
+ return Object.entries(i).forEach(([n, p]) => {
862
+ d.push(w.get(n, p));
863
+ }), d;
864
+ }, [s, a]);
865
+ }
866
+ function S(s) {
867
+ const a = { ...s };
868
+ return Object.keys(a).forEach((i) => {
869
+ const n = x[i];
870
+ n && (n.key in a || (a[n.key] = a[i]), delete a[i]);
871
+ }), a;
844
872
  }
845
- function U(s, l) {
846
- const { tag: c, children: m, props: g, className: p } = s, d = q(s), n = j(() => W.classNames(p, d).join(" "), [s]), i = { ...g, className: n };
847
- l && (i.ref = l);
848
- const [b, y] = A(!1), V = typeof m == "function";
849
- return V && (i.onMouseEnter = () => y(!0), i.onMouseLeave = () => y(!1)), E.createElement(c || "div", i, V ? m({ isHover: b }) : m);
873
+ function J(s, a) {
874
+ const { tag: d, children: i, props: n, className: p, style: f } = s, m = Y(s), b = E(() => M.classNames(p, m).join(" "), [s]), c = { ...n, className: b };
875
+ f && (c.style = f), a && (c.ref = a);
876
+ const [k, z] = P(!1), v = typeof i == "function";
877
+ return v && (c.onMouseEnter = () => z(!0), c.onMouseLeave = () => z(!1)), A.createElement(d || "div", c, v ? i({ isHover: k }) : i);
850
878
  }
851
- const Z = O(U);
879
+ const se = F(J);
852
880
  export {
853
- Z as default
881
+ se as default
854
882
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cronocode/react-box",
3
- "version": "1.5.8",
3
+ "version": "1.6.0",
4
4
  "main": "./box.cjs",
5
5
  "module": "./box.mjs",
6
6
  "types": "./box.d.ts",