@yamada-ui/utils 1.5.0 → 1.5.1-dev-20240917033401

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 (111) hide show
  1. package/dist/array.d.mts +1 -1
  2. package/dist/array.d.ts +1 -1
  3. package/dist/array.js +3 -1
  4. package/dist/array.js.map +1 -1
  5. package/dist/array.mjs +1 -1
  6. package/dist/assertion.d.mts +14 -14
  7. package/dist/assertion.d.ts +14 -14
  8. package/dist/assertion.js +44 -16
  9. package/dist/assertion.js.map +1 -1
  10. package/dist/assertion.mjs +1 -1
  11. package/dist/calc.d.mts +12 -7
  12. package/dist/calc.d.ts +12 -7
  13. package/dist/calc.js +17 -7
  14. package/dist/calc.js.map +1 -1
  15. package/dist/calc.mjs +1 -1
  16. package/dist/{chunk-ZFE4ZWCP.mjs → chunk-2AWPBKLQ.mjs} +68 -47
  17. package/dist/chunk-2AWPBKLQ.mjs.map +1 -0
  18. package/dist/chunk-5EG6NSMV.mjs +9 -0
  19. package/dist/chunk-5EG6NSMV.mjs.map +1 -0
  20. package/dist/{chunk-I5E5UXSE.mjs → chunk-7XL7BPER.mjs} +52 -44
  21. package/dist/chunk-7XL7BPER.mjs.map +1 -0
  22. package/dist/{chunk-KT4SLZO6.mjs → chunk-7XRVZGET.mjs} +18 -12
  23. package/dist/chunk-7XRVZGET.mjs.map +1 -0
  24. package/dist/{chunk-S35WPDIT.mjs → chunk-AF6MSVQN.mjs} +75 -41
  25. package/dist/chunk-AF6MSVQN.mjs.map +1 -0
  26. package/dist/chunk-APJY76CK.mjs +9 -0
  27. package/dist/chunk-APJY76CK.mjs.map +1 -0
  28. package/dist/{chunk-L56KWSQO.mjs → chunk-OM7WYVSS.mjs} +18 -8
  29. package/dist/chunk-OM7WYVSS.mjs.map +1 -0
  30. package/dist/chunk-QTCZ2LU5.mjs +65 -0
  31. package/dist/chunk-QTCZ2LU5.mjs.map +1 -0
  32. package/dist/chunk-RCW53QOG.mjs +31 -0
  33. package/dist/chunk-RCW53QOG.mjs.map +1 -0
  34. package/dist/chunk-TJ7CW2M5.mjs +365 -0
  35. package/dist/chunk-TJ7CW2M5.mjs.map +1 -0
  36. package/dist/{chunk-2AQWXBLU.mjs → chunk-WU6FTFUV.mjs} +15 -7
  37. package/dist/chunk-WU6FTFUV.mjs.map +1 -0
  38. package/dist/chunk-Z4AGSEWZ.mjs +63 -0
  39. package/dist/chunk-Z4AGSEWZ.mjs.map +1 -0
  40. package/dist/color.d.mts +24 -24
  41. package/dist/color.d.ts +24 -24
  42. package/dist/color.js +212 -158
  43. package/dist/color.js.map +1 -1
  44. package/dist/color.mjs +3 -3
  45. package/dist/dom.d.mts +29 -29
  46. package/dist/dom.d.ts +29 -29
  47. package/dist/dom.js +79 -41
  48. package/dist/dom.js.map +1 -1
  49. package/dist/dom.mjs +2 -2
  50. package/dist/event.d.mts +13 -13
  51. package/dist/event.d.ts +13 -13
  52. package/dist/event.js +37 -23
  53. package/dist/event.js.map +1 -1
  54. package/dist/event.mjs +1 -1
  55. package/dist/function.d.mts +3 -3
  56. package/dist/function.d.ts +3 -3
  57. package/dist/function.js +19 -9
  58. package/dist/function.js.map +1 -1
  59. package/dist/function.mjs +2 -2
  60. package/dist/index.d.mts +1 -1
  61. package/dist/index.d.ts +1 -1
  62. package/dist/index.js +531 -346
  63. package/dist/index.js.map +1 -1
  64. package/dist/index.mjs +12 -12
  65. package/dist/index.types.d.mts +5 -2
  66. package/dist/index.types.d.ts +5 -2
  67. package/dist/index.types.js.map +1 -1
  68. package/dist/module.d.mts +1 -1
  69. package/dist/module.d.ts +1 -1
  70. package/dist/module.js +3 -1
  71. package/dist/module.js.map +1 -1
  72. package/dist/module.mjs +1 -1
  73. package/dist/number.d.mts +7 -7
  74. package/dist/number.d.ts +7 -7
  75. package/dist/number.js +17 -11
  76. package/dist/number.js.map +1 -1
  77. package/dist/number.mjs +1 -1
  78. package/dist/object.d.mts +19 -15
  79. package/dist/object.d.ts +19 -15
  80. package/dist/object.js +65 -47
  81. package/dist/object.js.map +1 -1
  82. package/dist/object.mjs +2 -2
  83. package/dist/react.d.mts +25 -35
  84. package/dist/react.d.ts +25 -35
  85. package/dist/react.js +78 -49
  86. package/dist/react.js.map +1 -1
  87. package/dist/react.mjs +2 -2
  88. package/dist/string.d.mts +5 -5
  89. package/dist/string.d.ts +5 -5
  90. package/dist/string.js +14 -6
  91. package/dist/string.js.map +1 -1
  92. package/dist/string.mjs +1 -1
  93. package/package.json +1 -1
  94. package/dist/chunk-2AQWXBLU.mjs.map +0 -1
  95. package/dist/chunk-5OUUTZYQ.mjs +0 -7
  96. package/dist/chunk-5OUUTZYQ.mjs.map +0 -1
  97. package/dist/chunk-I5E5UXSE.mjs.map +0 -1
  98. package/dist/chunk-KT4SLZO6.mjs.map +0 -1
  99. package/dist/chunk-L56KWSQO.mjs.map +0 -1
  100. package/dist/chunk-MMZ4T26E.mjs +0 -51
  101. package/dist/chunk-MMZ4T26E.mjs.map +0 -1
  102. package/dist/chunk-NBL5H4TH.mjs +0 -35
  103. package/dist/chunk-NBL5H4TH.mjs.map +0 -1
  104. package/dist/chunk-S35WPDIT.mjs.map +0 -1
  105. package/dist/chunk-VRHGQ632.mjs +0 -23
  106. package/dist/chunk-VRHGQ632.mjs.map +0 -1
  107. package/dist/chunk-WV6P7ZCI.mjs +0 -7
  108. package/dist/chunk-WV6P7ZCI.mjs.map +0 -1
  109. package/dist/chunk-ZFE4ZWCP.mjs.map +0 -1
  110. package/dist/chunk-ZMR5WZIP.mjs +0 -321
  111. package/dist/chunk-ZMR5WZIP.mjs.map +0 -1
package/dist/array.d.mts CHANGED
@@ -1,3 +1,3 @@
1
- declare const filterEmpty: <T extends any[]>(array: T) => any[];
1
+ declare function filterEmpty<T extends any[]>(array: T): any[];
2
2
 
3
3
  export { filterEmpty };
package/dist/array.d.ts CHANGED
@@ -1,3 +1,3 @@
1
- declare const filterEmpty: <T extends any[]>(array: T) => any[];
1
+ declare function filterEmpty<T extends any[]>(array: T): any[];
2
2
 
3
3
  export { filterEmpty };
package/dist/array.js CHANGED
@@ -23,7 +23,9 @@ __export(array_exports, {
23
23
  filterEmpty: () => filterEmpty
24
24
  });
25
25
  module.exports = __toCommonJS(array_exports);
26
- var filterEmpty = (array) => array.filter((value) => value != null);
26
+ function filterEmpty(array) {
27
+ return array.filter((value) => value != null);
28
+ }
27
29
  // Annotate the CommonJS export names for ESM import in node:
28
30
  0 && (module.exports = {
29
31
  filterEmpty
package/dist/array.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/array.ts"],"sourcesContent":["export const filterEmpty = <T extends any[]>(array: T) =>\n array.filter((value) => value != null)\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAO,IAAM,cAAc,CAAkB,UAC3C,MAAM,OAAO,CAAC,UAAU,SAAS,IAAI;","names":[]}
1
+ {"version":3,"sources":["../src/array.ts"],"sourcesContent":["export function filterEmpty<T extends any[]>(array: T) {\n return array.filter((value) => value != null)\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAO,SAAS,YAA6B,OAAU;AACrD,SAAO,MAAM,OAAO,CAAC,UAAU,SAAS,IAAI;AAC9C;","names":[]}
package/dist/array.mjs CHANGED
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  filterEmpty
3
- } from "./chunk-WV6P7ZCI.mjs";
3
+ } from "./chunk-5EG6NSMV.mjs";
4
4
  export {
5
5
  filterEmpty
6
6
  };
@@ -1,18 +1,18 @@
1
1
  import { Dict } from './index.types.mjs';
2
2
 
3
- declare const is: (x: any, y: any) => boolean;
4
- declare const isNumber: (value: any) => value is number;
5
- declare const isNotNumber: (value: any) => boolean;
6
- declare const isNumeric: (value: any) => boolean;
7
- declare const isString: (value: any) => value is string;
8
- declare const isBoolean: (value: any) => value is boolean;
9
- declare const isUndefined: (value: any) => value is undefined;
10
- declare const isNull: (value: any) => value is null;
11
- declare const isObject: <T extends Dict>(value: any) => value is T;
12
- declare const isArray: <T extends any[]>(value: any) => value is T;
13
- declare const isEmpty: (value: any) => boolean;
14
- declare const isFunction: <T extends Function = Function>(value: any) => value is T;
15
- declare const isUnit: (value: any) => boolean;
16
- declare const cast: <T>(value: any) => T;
3
+ declare function is(x: any, y: any): boolean;
4
+ declare function isNumber(value: any): value is number;
5
+ declare function isNotNumber(value: any): boolean;
6
+ declare function isNumeric(value: any): boolean;
7
+ declare function isString(value: any): value is string;
8
+ declare function isBoolean(value: any): value is boolean;
9
+ declare function isUndefined(value: any): value is undefined;
10
+ declare function isNull(value: any): value is null;
11
+ declare function isObject<T extends Dict>(value: any): value is T;
12
+ declare function isArray<T extends any[]>(value: any): value is T;
13
+ declare function isEmpty(value: any): boolean;
14
+ declare function isFunction<T extends Function = Function>(value: any): value is T;
15
+ declare function isUnit(value: any): boolean;
16
+ declare function cast<T>(value: any): T;
17
17
 
18
18
  export { cast, is, isArray, isBoolean, isEmpty, isFunction, isNotNumber, isNull, isNumber, isNumeric, isObject, isString, isUndefined, isUnit };
@@ -1,18 +1,18 @@
1
1
  import { Dict } from './index.types.js';
2
2
 
3
- declare const is: (x: any, y: any) => boolean;
4
- declare const isNumber: (value: any) => value is number;
5
- declare const isNotNumber: (value: any) => boolean;
6
- declare const isNumeric: (value: any) => boolean;
7
- declare const isString: (value: any) => value is string;
8
- declare const isBoolean: (value: any) => value is boolean;
9
- declare const isUndefined: (value: any) => value is undefined;
10
- declare const isNull: (value: any) => value is null;
11
- declare const isObject: <T extends Dict>(value: any) => value is T;
12
- declare const isArray: <T extends any[]>(value: any) => value is T;
13
- declare const isEmpty: (value: any) => boolean;
14
- declare const isFunction: <T extends Function = Function>(value: any) => value is T;
15
- declare const isUnit: (value: any) => boolean;
16
- declare const cast: <T>(value: any) => T;
3
+ declare function is(x: any, y: any): boolean;
4
+ declare function isNumber(value: any): value is number;
5
+ declare function isNotNumber(value: any): boolean;
6
+ declare function isNumeric(value: any): boolean;
7
+ declare function isString(value: any): value is string;
8
+ declare function isBoolean(value: any): value is boolean;
9
+ declare function isUndefined(value: any): value is undefined;
10
+ declare function isNull(value: any): value is null;
11
+ declare function isObject<T extends Dict>(value: any): value is T;
12
+ declare function isArray<T extends any[]>(value: any): value is T;
13
+ declare function isEmpty(value: any): boolean;
14
+ declare function isFunction<T extends Function = Function>(value: any): value is T;
15
+ declare function isUnit(value: any): boolean;
16
+ declare function cast<T>(value: any): T;
17
17
 
18
18
  export { cast, is, isArray, isBoolean, isEmpty, isFunction, isNotNumber, isNull, isNumber, isNumeric, isObject, isString, isUndefined, isUnit };
package/dist/assertion.js CHANGED
@@ -36,22 +36,50 @@ __export(assertion_exports, {
36
36
  isUnit: () => isUnit
37
37
  });
38
38
  module.exports = __toCommonJS(assertion_exports);
39
- var is = (x, y) => x === y && (x !== 0 || 1 / x === 1 / y) || x !== x && y !== y;
40
- var isNumber = (value) => typeof value === "number";
41
- var isNotNumber = (value) => typeof value !== "number" || Number.isNaN(value) || !Number.isFinite(value);
42
- var isNumeric = (value) => !isNaN(parseFloat(String(value))) && isFinite(Number(value)) && /^-?\d*\.?\d+$/.test(String(value));
43
- var isString = (value) => Object.prototype.toString.call(value) === "[object String]";
44
- var isBoolean = (value) => typeof value === "boolean";
45
- var isUndefined = (value) => typeof value === "undefined" && value === void 0;
46
- var isNull = (value) => value === null;
47
- var isObject = (value) => value !== null && (typeof value === "object" || typeof value === "function") && !isArray(value);
48
- var isArray = (value) => Array.isArray(value);
49
- var isEmpty = (value) => !isArray(value) || !value.length || value.every((v) => v == null);
50
- var isFunction = (value) => typeof value === "function";
51
- var isUnit = (value) => /[0-9].*(em|rem|ex|rex|cap|rcap|ch|rch|ic|ric|lh|rlh|vw|svw|lvw|dvw|vh|svh|lvh|dvh|vi|svi|lvi|dvi|vb|svb|lvb|dvb|vmin|svmin|lvmin|dvmin|vmax|svmax|lvmax|dvmax|cm|mm|Q|in|pc|pt|px|%|cqw|cqh|cqi|cqb|cqmin|cqmax)$/.test(
52
- value
53
- );
54
- var cast = (value) => value;
39
+ function is(x, y) {
40
+ return x === y && (x !== 0 || 1 / x === 1 / y) || x !== x && y !== y;
41
+ }
42
+ function isNumber(value) {
43
+ return typeof value === "number";
44
+ }
45
+ function isNotNumber(value) {
46
+ return typeof value !== "number" || Number.isNaN(value) || !Number.isFinite(value);
47
+ }
48
+ function isNumeric(value) {
49
+ return !isNaN(parseFloat(String(value))) && isFinite(Number(value)) && /^-?\d*\.?\d+$/.test(String(value));
50
+ }
51
+ function isString(value) {
52
+ return Object.prototype.toString.call(value) === "[object String]";
53
+ }
54
+ function isBoolean(value) {
55
+ return typeof value === "boolean";
56
+ }
57
+ function isUndefined(value) {
58
+ return typeof value === "undefined" && value === void 0;
59
+ }
60
+ function isNull(value) {
61
+ return value === null;
62
+ }
63
+ function isObject(value) {
64
+ return value !== null && (typeof value === "object" || typeof value === "function") && !isArray(value);
65
+ }
66
+ function isArray(value) {
67
+ return Array.isArray(value);
68
+ }
69
+ function isEmpty(value) {
70
+ return !isArray(value) || !value.length || value.every((v) => v == null);
71
+ }
72
+ function isFunction(value) {
73
+ return typeof value === "function";
74
+ }
75
+ function isUnit(value) {
76
+ return /[0-9].*(em|rem|ex|rex|cap|rcap|ch|rch|ic|ric|lh|rlh|vw|svw|lvw|dvw|vh|svh|lvh|dvh|vi|svi|lvi|dvi|vb|svb|lvb|dvb|vmin|svmin|lvmin|dvmin|vmax|svmax|lvmax|dvmax|cm|mm|Q|in|pc|pt|px|%|cqw|cqh|cqi|cqb|cqmin|cqmax)$/.test(
77
+ value
78
+ );
79
+ }
80
+ function cast(value) {
81
+ return value;
82
+ }
55
83
  // Annotate the CommonJS export names for ESM import in node:
56
84
  0 && (module.exports = {
57
85
  cast,
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/assertion.ts"],"sourcesContent":["import type { Dict } from \"./index.types\"\n\nexport const is = (x: any, y: any) =>\n (x === y && (x !== 0 || 1 / x === 1 / y)) || (x !== x && y !== y)\n\nexport const isNumber = (value: any): value is number =>\n typeof value === \"number\"\n\nexport const isNotNumber = (value: any): boolean =>\n typeof value !== \"number\" || Number.isNaN(value) || !Number.isFinite(value)\n\nexport const isNumeric = (value: any): boolean =>\n !isNaN(parseFloat(String(value))) &&\n isFinite(Number(value)) &&\n /^-?\\d*\\.?\\d+$/.test(String(value))\n\nexport const isString = (value: any): value is string =>\n Object.prototype.toString.call(value) === \"[object String]\"\n\nexport const isBoolean = (value: any): value is boolean =>\n typeof value === \"boolean\"\n\nexport const isUndefined = (value: any): value is undefined =>\n typeof value === \"undefined\" && value === undefined\n\nexport const isNull = (value: any): value is null => value === null\n\nexport const isObject = <T extends Dict>(value: any): value is T =>\n value !== null &&\n (typeof value === \"object\" || typeof value === \"function\") &&\n !isArray(value)\n\nexport const isArray = <T extends any[]>(value: any): value is T =>\n Array.isArray(value)\n\nexport const isEmpty = (value: any): boolean =>\n !isArray(value) || !value.length || value.every((v) => v == null)\n\nexport const isFunction = <T extends Function = Function>(\n value: any,\n): value is T => typeof value === \"function\"\n\nexport const isUnit = (value: any): boolean =>\n /[0-9].*(em|rem|ex|rex|cap|rcap|ch|rch|ic|ric|lh|rlh|vw|svw|lvw|dvw|vh|svh|lvh|dvh|vi|svi|lvi|dvi|vb|svb|lvb|dvb|vmin|svmin|lvmin|dvmin|vmax|svmax|lvmax|dvmax|cm|mm|Q|in|pc|pt|px|%|cqw|cqh|cqi|cqb|cqmin|cqmax)$/.test(\n value,\n )\n\nexport const cast = <T>(value: any) => value as T\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAEO,IAAM,KAAK,CAAC,GAAQ,MACxB,MAAM,MAAM,MAAM,KAAK,IAAI,MAAM,IAAI,MAAQ,MAAM,KAAK,MAAM;AAE1D,IAAM,WAAW,CAAC,UACvB,OAAO,UAAU;AAEZ,IAAM,cAAc,CAAC,UAC1B,OAAO,UAAU,YAAY,OAAO,MAAM,KAAK,KAAK,CAAC,OAAO,SAAS,KAAK;AAErE,IAAM,YAAY,CAAC,UACxB,CAAC,MAAM,WAAW,OAAO,KAAK,CAAC,CAAC,KAChC,SAAS,OAAO,KAAK,CAAC,KACtB,gBAAgB,KAAK,OAAO,KAAK,CAAC;AAE7B,IAAM,WAAW,CAAC,UACvB,OAAO,UAAU,SAAS,KAAK,KAAK,MAAM;AAErC,IAAM,YAAY,CAAC,UACxB,OAAO,UAAU;AAEZ,IAAM,cAAc,CAAC,UAC1B,OAAO,UAAU,eAAe,UAAU;AAErC,IAAM,SAAS,CAAC,UAA8B,UAAU;AAExD,IAAM,WAAW,CAAiB,UACvC,UAAU,SACT,OAAO,UAAU,YAAY,OAAO,UAAU,eAC/C,CAAC,QAAQ,KAAK;AAET,IAAM,UAAU,CAAkB,UACvC,MAAM,QAAQ,KAAK;AAEd,IAAM,UAAU,CAAC,UACtB,CAAC,QAAQ,KAAK,KAAK,CAAC,MAAM,UAAU,MAAM,MAAM,CAAC,MAAM,KAAK,IAAI;AAE3D,IAAM,aAAa,CACxB,UACe,OAAO,UAAU;AAE3B,IAAM,SAAS,CAAC,UACrB,oNAAoN;AAAA,EAClN;AACF;AAEK,IAAM,OAAO,CAAI,UAAe;","names":[]}
1
+ {"version":3,"sources":["../src/assertion.ts"],"sourcesContent":["import type { Dict } from \"./index.types\"\n\nexport function is(x: any, y: any) {\n return (x === y && (x !== 0 || 1 / x === 1 / y)) || (x !== x && y !== y)\n}\n\nexport function isNumber(value: any): value is number {\n return typeof value === \"number\"\n}\n\nexport function isNotNumber(value: any): boolean {\n return (\n typeof value !== \"number\" || Number.isNaN(value) || !Number.isFinite(value)\n )\n}\n\nexport function isNumeric(value: any): boolean {\n return (\n !isNaN(parseFloat(String(value))) &&\n isFinite(Number(value)) &&\n /^-?\\d*\\.?\\d+$/.test(String(value))\n )\n}\n\nexport function isString(value: any): value is string {\n return Object.prototype.toString.call(value) === \"[object String]\"\n}\n\nexport function isBoolean(value: any): value is boolean {\n return typeof value === \"boolean\"\n}\n\nexport function isUndefined(value: any): value is undefined {\n return typeof value === \"undefined\" && value === undefined\n}\n\nexport function isNull(value: any): value is null {\n return value === null\n}\n\nexport function isObject<T extends Dict>(value: any): value is T {\n return (\n value !== null &&\n (typeof value === \"object\" || typeof value === \"function\") &&\n !isArray(value)\n )\n}\n\nexport function isArray<T extends any[]>(value: any): value is T {\n return Array.isArray(value)\n}\n\nexport function isEmpty(value: any): boolean {\n return !isArray(value) || !value.length || value.every((v) => v == null)\n}\n\nexport function isFunction<T extends Function = Function>(\n value: any,\n): value is T {\n return typeof value === \"function\"\n}\n\nexport function isUnit(value: any): boolean {\n return /[0-9].*(em|rem|ex|rex|cap|rcap|ch|rch|ic|ric|lh|rlh|vw|svw|lvw|dvw|vh|svh|lvh|dvh|vi|svi|lvi|dvi|vb|svb|lvb|dvb|vmin|svmin|lvmin|dvmin|vmax|svmax|lvmax|dvmax|cm|mm|Q|in|pc|pt|px|%|cqw|cqh|cqi|cqb|cqmin|cqmax)$/.test(\n value,\n )\n}\n\nexport function cast<T>(value: any) {\n return value as T\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAEO,SAAS,GAAG,GAAQ,GAAQ;AACjC,SAAQ,MAAM,MAAM,MAAM,KAAK,IAAI,MAAM,IAAI,MAAQ,MAAM,KAAK,MAAM;AACxE;AAEO,SAAS,SAAS,OAA6B;AACpD,SAAO,OAAO,UAAU;AAC1B;AAEO,SAAS,YAAY,OAAqB;AAC/C,SACE,OAAO,UAAU,YAAY,OAAO,MAAM,KAAK,KAAK,CAAC,OAAO,SAAS,KAAK;AAE9E;AAEO,SAAS,UAAU,OAAqB;AAC7C,SACE,CAAC,MAAM,WAAW,OAAO,KAAK,CAAC,CAAC,KAChC,SAAS,OAAO,KAAK,CAAC,KACtB,gBAAgB,KAAK,OAAO,KAAK,CAAC;AAEtC;AAEO,SAAS,SAAS,OAA6B;AACpD,SAAO,OAAO,UAAU,SAAS,KAAK,KAAK,MAAM;AACnD;AAEO,SAAS,UAAU,OAA8B;AACtD,SAAO,OAAO,UAAU;AAC1B;AAEO,SAAS,YAAY,OAAgC;AAC1D,SAAO,OAAO,UAAU,eAAe,UAAU;AACnD;AAEO,SAAS,OAAO,OAA2B;AAChD,SAAO,UAAU;AACnB;AAEO,SAAS,SAAyB,OAAwB;AAC/D,SACE,UAAU,SACT,OAAO,UAAU,YAAY,OAAO,UAAU,eAC/C,CAAC,QAAQ,KAAK;AAElB;AAEO,SAAS,QAAyB,OAAwB;AAC/D,SAAO,MAAM,QAAQ,KAAK;AAC5B;AAEO,SAAS,QAAQ,OAAqB;AAC3C,SAAO,CAAC,QAAQ,KAAK,KAAK,CAAC,MAAM,UAAU,MAAM,MAAM,CAAC,MAAM,KAAK,IAAI;AACzE;AAEO,SAAS,WACd,OACY;AACZ,SAAO,OAAO,UAAU;AAC1B;AAEO,SAAS,OAAO,OAAqB;AAC1C,SAAO,oNAAoN;AAAA,IACzN;AAAA,EACF;AACF;AAEO,SAAS,KAAQ,OAAY;AAClC,SAAO;AACT;","names":[]}
@@ -13,7 +13,7 @@ import {
13
13
  isString,
14
14
  isUndefined,
15
15
  isUnit
16
- } from "./chunk-NBL5H4TH.mjs";
16
+ } from "./chunk-Z4AGSEWZ.mjs";
17
17
  export {
18
18
  cast,
19
19
  is,
package/dist/calc.d.mts CHANGED
@@ -1,18 +1,23 @@
1
1
  type Operand = string | number;
2
- type Calc = {
2
+ declare function add(...args: Operand[]): string;
3
+ declare function subtract(...args: Operand[]): string;
4
+ declare function multiply(...args: Operand[]): string;
5
+ declare function divide(...args: Operand[]): string;
6
+ declare function negate(value: Operand): string;
7
+ interface Calc {
3
8
  add: (...args: Operand[]) => Calc;
4
9
  subtract: (...args: Operand[]) => Calc;
5
10
  multiply: (...args: Operand[]) => Calc;
6
11
  divide: (...args: Operand[]) => Calc;
7
12
  negate: () => Calc;
8
13
  toString: () => string;
9
- };
14
+ }
10
15
  declare const calc: ((x: Operand) => Calc) & {
11
- add: (...args: Operand[]) => string;
12
- subtract: (...args: Operand[]) => string;
13
- multiply: (...args: Operand[]) => string;
14
- divide: (...args: Operand[]) => string;
15
- negate: (value: Operand) => string;
16
+ add: typeof add;
17
+ subtract: typeof subtract;
18
+ multiply: typeof multiply;
19
+ divide: typeof divide;
20
+ negate: typeof negate;
16
21
  };
17
22
 
18
23
  export { type Operand, calc };
package/dist/calc.d.ts CHANGED
@@ -1,18 +1,23 @@
1
1
  type Operand = string | number;
2
- type Calc = {
2
+ declare function add(...args: Operand[]): string;
3
+ declare function subtract(...args: Operand[]): string;
4
+ declare function multiply(...args: Operand[]): string;
5
+ declare function divide(...args: Operand[]): string;
6
+ declare function negate(value: Operand): string;
7
+ interface Calc {
3
8
  add: (...args: Operand[]) => Calc;
4
9
  subtract: (...args: Operand[]) => Calc;
5
10
  multiply: (...args: Operand[]) => Calc;
6
11
  divide: (...args: Operand[]) => Calc;
7
12
  negate: () => Calc;
8
13
  toString: () => string;
9
- };
14
+ }
10
15
  declare const calc: ((x: Operand) => Calc) & {
11
- add: (...args: Operand[]) => string;
12
- subtract: (...args: Operand[]) => string;
13
- multiply: (...args: Operand[]) => string;
14
- divide: (...args: Operand[]) => string;
15
- negate: (value: Operand) => string;
16
+ add: typeof add;
17
+ subtract: typeof subtract;
18
+ multiply: typeof multiply;
19
+ divide: typeof divide;
20
+ negate: typeof negate;
16
21
  };
17
22
 
18
23
  export { type Operand, calc };
package/dist/calc.js CHANGED
@@ -23,16 +23,26 @@ __export(calc_exports, {
23
23
  calc: () => calc
24
24
  });
25
25
  module.exports = __toCommonJS(calc_exports);
26
- var toExpression = (operator, ...args) => args.join(` ${operator} `).replace(/calc/g, "");
27
- var add = (...args) => `calc(${toExpression("+", ...args)})`;
28
- var subtract = (...args) => `calc(${toExpression("-", ...args)})`;
29
- var multiply = (...args) => `calc(${toExpression("*", ...args)})`;
30
- var divide = (...args) => `calc(${toExpression("/", ...args)})`;
31
- var negate = (value) => {
26
+ function toExpression(operator, ...args) {
27
+ return args.join(` ${operator} `).replace(/calc/g, "");
28
+ }
29
+ function add(...args) {
30
+ return `calc(${toExpression("+", ...args)})`;
31
+ }
32
+ function subtract(...args) {
33
+ return `calc(${toExpression("-", ...args)})`;
34
+ }
35
+ function multiply(...args) {
36
+ return `calc(${toExpression("*", ...args)})`;
37
+ }
38
+ function divide(...args) {
39
+ return `calc(${toExpression("/", ...args)})`;
40
+ }
41
+ function negate(value) {
32
42
  if (value != null && !isNaN(parseFloat(value.toString())))
33
43
  return String(value).startsWith("-") ? String(value).slice(1) : `-${value}`;
34
44
  return multiply(value, -1);
35
- };
45
+ }
36
46
  var calc = Object.assign(
37
47
  (x) => ({
38
48
  add: (...args) => calc(add(x, ...args)),
package/dist/calc.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/calc.ts"],"sourcesContent":["type Operator = \"+\" | \"-\" | \"*\" | \"/\"\n\nexport type Operand = string | number\n\nconst toExpression = (operator: Operator, ...args: Operand[]) =>\n args.join(` ${operator} `).replace(/calc/g, \"\")\n\nconst add = (...args: Operand[]) => `calc(${toExpression(\"+\", ...args)})`\n\nconst subtract = (...args: Operand[]) => `calc(${toExpression(\"-\", ...args)})`\n\nconst multiply = (...args: Operand[]) => `calc(${toExpression(\"*\", ...args)})`\n\nconst divide = (...args: Operand[]) => `calc(${toExpression(\"/\", ...args)})`\n\nconst negate = (value: Operand) => {\n if (value != null && !isNaN(parseFloat(value.toString())))\n return String(value).startsWith(\"-\") ? String(value).slice(1) : `-${value}`\n\n return multiply(value, -1)\n}\n\ntype Calc = {\n add: (...args: Operand[]) => Calc\n subtract: (...args: Operand[]) => Calc\n multiply: (...args: Operand[]) => Calc\n divide: (...args: Operand[]) => Calc\n negate: () => Calc\n toString: () => string\n}\n\nexport const calc = Object.assign(\n (x: Operand): Calc => ({\n add: (...args) => calc(add(x, ...args)),\n subtract: (...args) => calc(subtract(x, ...args)),\n multiply: (...args) => calc(multiply(x, ...args)),\n divide: (...args) => calc(divide(x, ...args)),\n negate: () => calc(negate(x)),\n toString: () => x.toString(),\n }),\n {\n add,\n subtract,\n multiply,\n divide,\n negate,\n },\n)\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAIA,IAAM,eAAe,CAAC,aAAuB,SAC3C,KAAK,KAAK,IAAI,QAAQ,GAAG,EAAE,QAAQ,SAAS,EAAE;AAEhD,IAAM,MAAM,IAAI,SAAoB,QAAQ,aAAa,KAAK,GAAG,IAAI,CAAC;AAEtE,IAAM,WAAW,IAAI,SAAoB,QAAQ,aAAa,KAAK,GAAG,IAAI,CAAC;AAE3E,IAAM,WAAW,IAAI,SAAoB,QAAQ,aAAa,KAAK,GAAG,IAAI,CAAC;AAE3E,IAAM,SAAS,IAAI,SAAoB,QAAQ,aAAa,KAAK,GAAG,IAAI,CAAC;AAEzE,IAAM,SAAS,CAAC,UAAmB;AACjC,MAAI,SAAS,QAAQ,CAAC,MAAM,WAAW,MAAM,SAAS,CAAC,CAAC;AACtD,WAAO,OAAO,KAAK,EAAE,WAAW,GAAG,IAAI,OAAO,KAAK,EAAE,MAAM,CAAC,IAAI,IAAI,KAAK;AAE3E,SAAO,SAAS,OAAO,EAAE;AAC3B;AAWO,IAAM,OAAO,OAAO;AAAA,EACzB,CAAC,OAAsB;AAAA,IACrB,KAAK,IAAI,SAAS,KAAK,IAAI,GAAG,GAAG,IAAI,CAAC;AAAA,IACtC,UAAU,IAAI,SAAS,KAAK,SAAS,GAAG,GAAG,IAAI,CAAC;AAAA,IAChD,UAAU,IAAI,SAAS,KAAK,SAAS,GAAG,GAAG,IAAI,CAAC;AAAA,IAChD,QAAQ,IAAI,SAAS,KAAK,OAAO,GAAG,GAAG,IAAI,CAAC;AAAA,IAC5C,QAAQ,MAAM,KAAK,OAAO,CAAC,CAAC;AAAA,IAC5B,UAAU,MAAM,EAAE,SAAS;AAAA,EAC7B;AAAA,EACA;AAAA,IACE;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AACF;","names":[]}
1
+ {"version":3,"sources":["../src/calc.ts"],"sourcesContent":["type Operator = \"+\" | \"-\" | \"*\" | \"/\"\n\nexport type Operand = string | number\n\nfunction toExpression(operator: Operator, ...args: Operand[]) {\n return args.join(` ${operator} `).replace(/calc/g, \"\")\n}\n\nfunction add(...args: Operand[]) {\n return `calc(${toExpression(\"+\", ...args)})`\n}\n\nfunction subtract(...args: Operand[]) {\n return `calc(${toExpression(\"-\", ...args)})`\n}\n\nfunction multiply(...args: Operand[]) {\n return `calc(${toExpression(\"*\", ...args)})`\n}\n\nfunction divide(...args: Operand[]) {\n return `calc(${toExpression(\"/\", ...args)})`\n}\n\nfunction negate(value: Operand) {\n if (value != null && !isNaN(parseFloat(value.toString())))\n return String(value).startsWith(\"-\") ? String(value).slice(1) : `-${value}`\n\n return multiply(value, -1)\n}\n\ninterface Calc {\n add: (...args: Operand[]) => Calc\n subtract: (...args: Operand[]) => Calc\n multiply: (...args: Operand[]) => Calc\n divide: (...args: Operand[]) => Calc\n negate: () => Calc\n toString: () => string\n}\n\nexport const calc = Object.assign(\n (x: Operand): Calc => ({\n add: (...args) => calc(add(x, ...args)),\n subtract: (...args) => calc(subtract(x, ...args)),\n multiply: (...args) => calc(multiply(x, ...args)),\n divide: (...args) => calc(divide(x, ...args)),\n negate: () => calc(negate(x)),\n toString: () => x.toString(),\n }),\n {\n add,\n subtract,\n multiply,\n divide,\n negate,\n },\n)\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAIA,SAAS,aAAa,aAAuB,MAAiB;AAC5D,SAAO,KAAK,KAAK,IAAI,QAAQ,GAAG,EAAE,QAAQ,SAAS,EAAE;AACvD;AAEA,SAAS,OAAO,MAAiB;AAC/B,SAAO,QAAQ,aAAa,KAAK,GAAG,IAAI,CAAC;AAC3C;AAEA,SAAS,YAAY,MAAiB;AACpC,SAAO,QAAQ,aAAa,KAAK,GAAG,IAAI,CAAC;AAC3C;AAEA,SAAS,YAAY,MAAiB;AACpC,SAAO,QAAQ,aAAa,KAAK,GAAG,IAAI,CAAC;AAC3C;AAEA,SAAS,UAAU,MAAiB;AAClC,SAAO,QAAQ,aAAa,KAAK,GAAG,IAAI,CAAC;AAC3C;AAEA,SAAS,OAAO,OAAgB;AAC9B,MAAI,SAAS,QAAQ,CAAC,MAAM,WAAW,MAAM,SAAS,CAAC,CAAC;AACtD,WAAO,OAAO,KAAK,EAAE,WAAW,GAAG,IAAI,OAAO,KAAK,EAAE,MAAM,CAAC,IAAI,IAAI,KAAK;AAE3E,SAAO,SAAS,OAAO,EAAE;AAC3B;AAWO,IAAM,OAAO,OAAO;AAAA,EACzB,CAAC,OAAsB;AAAA,IACrB,KAAK,IAAI,SAAS,KAAK,IAAI,GAAG,GAAG,IAAI,CAAC;AAAA,IACtC,UAAU,IAAI,SAAS,KAAK,SAAS,GAAG,GAAG,IAAI,CAAC;AAAA,IAChD,UAAU,IAAI,SAAS,KAAK,SAAS,GAAG,GAAG,IAAI,CAAC;AAAA,IAChD,QAAQ,IAAI,SAAS,KAAK,OAAO,GAAG,GAAG,IAAI,CAAC;AAAA,IAC5C,QAAQ,MAAM,KAAK,OAAO,CAAC,CAAC;AAAA,IAC5B,UAAU,MAAM,EAAE,SAAS;AAAA,EAC7B;AAAA,EACA;AAAA,IACE;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AACF;","names":[]}
package/dist/calc.mjs CHANGED
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  calc
3
- } from "./chunk-L56KWSQO.mjs";
3
+ } from "./chunk-OM7WYVSS.mjs";
4
4
  export {
5
5
  calc
6
6
  };
@@ -2,16 +2,16 @@ import {
2
2
  isNumber,
3
3
  isObject,
4
4
  isString
5
- } from "./chunk-NBL5H4TH.mjs";
5
+ } from "./chunk-Z4AGSEWZ.mjs";
6
6
 
7
7
  // src/react.tsx
8
8
  import * as React from "react";
9
- var createContext2 = ({
9
+ function createContext2({
10
10
  strict = true,
11
11
  errorMessage = "useContext: `context` is undefined. Seems you forgot to wrap component within the Provider",
12
12
  name,
13
13
  defaultValue
14
- } = {}) => {
14
+ } = {}) {
15
15
  const Context = React.createContext(defaultValue);
16
16
  Context.displayName = name;
17
17
  const useContext2 = () => {
@@ -30,16 +30,15 @@ var createContext2 = ({
30
30
  useContext2,
31
31
  Context
32
32
  ];
33
- };
33
+ }
34
34
  var useSafeLayoutEffect = Boolean(globalThis == null ? void 0 : globalThis.document) ? React.useLayoutEffect : React.useEffect;
35
- var useUnmountEffect = (callback) => (
36
- // eslint-disable-next-line react-hooks/exhaustive-deps
37
- React.useEffect(() => () => callback(), [])
38
- );
39
- var useIsMounted = ({
35
+ function useUnmountEffect(callback) {
36
+ return React.useEffect(() => () => callback(), []);
37
+ }
38
+ function useIsMounted({
40
39
  rerender = false,
41
40
  delay = 0
42
- } = {}) => {
41
+ } = {}) {
43
42
  const isMountedRef = React.useRef(false);
44
43
  const [isMounted, setIsMounted] = React.useState(false);
45
44
  useSafeLayoutEffect(() => {
@@ -59,24 +58,40 @@ var useIsMounted = ({
59
58
  };
60
59
  }, [delay, rerender]);
61
60
  return [React.useCallback(() => isMountedRef.current, []), isMounted];
62
- };
63
- var getValidChildren = (children) => React.Children.toArray(children).filter(
64
- (child) => React.isValidElement(child)
65
- );
66
- var isValidElement2 = (child) => React.isValidElement(child) || isString(child) || isNumber(child);
67
- var findChildren = (children, ...types) => children.find((child) => types.some((type) => child.type === type)) ? children.sort(
68
- (a, b) => types.some((type) => a.type === type) ? -1 : types.some((type) => b.type === type) ? 1 : 0
69
- ) : [void 0, ...children];
70
- var includesChildren = (children, ...types) => children.some((child) => {
71
- if (types.some((type) => child.type === type)) return true;
72
- const children2 = getValidChildren(child.props.children);
73
- return children2.length ? includesChildren(children2, ...types) : false;
74
- });
75
- var omitChildren = (children, ...types) => children.filter((child) => types.every((type) => child.type !== type));
76
- var pickChildren = (children, ...types) => children.filter((child) => types.every((type) => child.type === type));
77
- var cx = (...classNames) => classNames.filter(Boolean).join(" ");
78
- var isRefObject = (val) => isObject(val) && "current" in val;
79
- var assignRef = (ref, value) => {
61
+ }
62
+ function getValidChildren(children) {
63
+ return React.Children.toArray(children).filter(
64
+ (child) => React.isValidElement(child)
65
+ );
66
+ }
67
+ function isValidElement2(child) {
68
+ return React.isValidElement(child) || isString(child) || isNumber(child);
69
+ }
70
+ function findChildren(children, ...types) {
71
+ return children.find((child) => types.some((type) => child.type === type)) ? children.sort(
72
+ (a, b) => types.some((type) => a.type === type) ? -1 : types.some((type) => b.type === type) ? 1 : 0
73
+ ) : [void 0, ...children];
74
+ }
75
+ function includesChildren(children, ...types) {
76
+ return children.some((child) => {
77
+ if (types.some((type) => child.type === type)) return true;
78
+ const children2 = getValidChildren(child.props.children);
79
+ return children2.length ? includesChildren(children2, ...types) : false;
80
+ });
81
+ }
82
+ function omitChildren(children, ...types) {
83
+ return children.filter((child) => types.every((type) => child.type !== type));
84
+ }
85
+ function pickChildren(children, ...types) {
86
+ return children.filter((child) => types.every((type) => child.type === type));
87
+ }
88
+ function cx(...classNames) {
89
+ return classNames.filter(Boolean).join(" ");
90
+ }
91
+ function isRefObject(val) {
92
+ return isObject(val) && "current" in val;
93
+ }
94
+ function assignRef(ref, value) {
80
95
  if (ref == null) return;
81
96
  if (typeof ref === "function") {
82
97
  ref(value);
@@ -87,14 +102,18 @@ var assignRef = (ref, value) => {
87
102
  } catch {
88
103
  throw new Error(`Cannot assign value '${value}' to ref '${ref}'`);
89
104
  }
90
- };
91
- var mergeRefs = (...refs) => (node) => {
92
- refs.forEach((ref) => {
93
- assignRef(ref, node);
94
- });
95
- };
96
- var useMergeRefs = (...refs) => React.useMemo(() => mergeRefs(...refs), [refs]);
97
- var useCallbackRef = (callback, deps = []) => {
105
+ }
106
+ function mergeRefs(...refs) {
107
+ return function(node) {
108
+ return refs.forEach((ref) => {
109
+ assignRef(ref, node);
110
+ });
111
+ };
112
+ }
113
+ function useMergeRefs(...refs) {
114
+ return React.useMemo(() => mergeRefs(...refs), [refs]);
115
+ }
116
+ function useCallbackRef(callback, deps = []) {
98
117
  const callbackRef = React.useRef(callback);
99
118
  React.useEffect(() => {
100
119
  callbackRef.current = callback;
@@ -106,8 +125,8 @@ var useCallbackRef = (callback, deps = []) => {
106
125
  },
107
126
  deps
108
127
  );
109
- };
110
- var useUpdateEffect = (callback, deps) => {
128
+ }
129
+ function useUpdateEffect(callback, deps) {
111
130
  const renderCycleRef = React.useRef(false);
112
131
  const effectCycleRef = React.useRef(false);
113
132
  React.useEffect(() => {
@@ -122,15 +141,15 @@ var useUpdateEffect = (callback, deps) => {
122
141
  renderCycleRef.current = false;
123
142
  };
124
143
  }, []);
125
- };
126
- var useAsync = (func, deps = []) => {
144
+ }
145
+ function useAsync(func, deps = []) {
127
146
  const [state, callback] = useAsyncFunc(func, deps, { loading: true });
128
147
  React.useEffect(() => {
129
148
  callback();
130
149
  }, [callback]);
131
150
  return state;
132
- };
133
- var useAsyncFunc = (func, deps = [], initialState = { loading: false }) => {
151
+ }
152
+ function useAsyncFunc(func, deps = [], initialState = { loading: false }) {
134
153
  const lastCallId = React.useRef(0);
135
154
  const [isMounted] = useIsMounted();
136
155
  const [state, setState] = React.useState(initialState);
@@ -156,8 +175,8 @@ var useAsyncFunc = (func, deps = [], initialState = { loading: false }) => {
156
175
  deps
157
176
  );
158
177
  return [state, callback];
159
- };
160
- var useAsyncRetry = (func, deps = []) => {
178
+ }
179
+ function useAsyncRetry(func, deps = []) {
161
180
  const [attempt, setAttempt] = React.useState(0);
162
181
  const state = useAsync(func, [...deps, attempt]);
163
182
  const stateLoading = state.loading;
@@ -166,9 +185,11 @@ var useAsyncRetry = (func, deps = []) => {
166
185
  setAttempt((currentAttempt) => currentAttempt + 1);
167
186
  }, [...deps, stateLoading]);
168
187
  return { ...state, retry };
169
- };
188
+ }
170
189
  var createIdCounter = 0;
171
- var createId = (prefix) => `${prefix}-${++createIdCounter}-${(/* @__PURE__ */ new Date()).getTime()}`;
190
+ function createId(prefix) {
191
+ return `${prefix}-${++createIdCounter}-${(/* @__PURE__ */ new Date()).getTime()}`;
192
+ }
172
193
 
173
194
  export {
174
195
  createContext2 as createContext,
@@ -193,4 +214,4 @@ export {
193
214
  useAsyncRetry,
194
215
  createId
195
216
  };
196
- //# sourceMappingURL=chunk-ZFE4ZWCP.mjs.map
217
+ //# sourceMappingURL=chunk-2AWPBKLQ.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/react.tsx"],"sourcesContent":["import * as React from \"react\"\nimport { isNumber, isObject, isString } from \"./assertion\"\n\nexport type MaybeRenderProp<Y> =\n | React.ReactNode\n | ((props: Y) => React.ReactNode)\n\ninterface Options<ContextType extends any = any> {\n strict?: boolean\n errorMessage?: string\n name?: string\n defaultValue?: ContextType\n}\n\ntype CreateContextReturn<T> = [React.Provider<T>, () => T, React.Context<T>]\n\nexport function createContext<ContextType extends any = any>({\n strict = true,\n errorMessage = \"useContext: `context` is undefined. Seems you forgot to wrap component within the Provider\",\n name,\n defaultValue,\n}: Options<ContextType> = {}) {\n const Context = React.createContext<ContextType | undefined>(defaultValue)\n\n Context.displayName = name\n\n const useContext = () => {\n const context = React.useContext(Context)\n\n if (!context && strict) {\n const error = new Error(errorMessage)\n error.name = \"ContextError\"\n Error.captureStackTrace?.(error, useContext)\n throw error\n }\n\n return context\n }\n\n return [\n Context.Provider,\n useContext,\n Context,\n ] as CreateContextReturn<ContextType>\n}\n\nexport const useSafeLayoutEffect = Boolean(globalThis?.document)\n ? React.useLayoutEffect\n : React.useEffect\n\nexport function useUnmountEffect(callback: () => void) {\n // eslint-disable-next-line react-hooks/exhaustive-deps\n return React.useEffect(() => () => callback(), [])\n}\n\nexport interface UseIsMountedProps {\n rerender?: boolean\n delay?: number\n}\n\nexport function useIsMounted({\n rerender = false,\n delay = 0,\n}: UseIsMountedProps = {}): [() => boolean, boolean] {\n const isMountedRef = React.useRef(false)\n const [isMounted, setIsMounted] = React.useState(false)\n\n useSafeLayoutEffect(() => {\n isMountedRef.current = true\n\n let timeoutId: any = null\n\n if (rerender) {\n if (delay > 0) {\n timeoutId = setTimeout(() => setIsMounted(true), delay)\n } else {\n setIsMounted(true)\n }\n }\n\n return () => {\n isMountedRef.current = false\n\n if (rerender) setIsMounted(false)\n\n if (timeoutId) clearTimeout(timeoutId)\n }\n }, [delay, rerender])\n\n return [React.useCallback(() => isMountedRef.current, []), isMounted]\n}\n\nexport type UseIsMountedReturn = ReturnType<typeof useIsMounted>\n\nexport function getValidChildren(\n children: React.ReactNode,\n): React.ReactElement[] {\n return React.Children.toArray(children).filter((child) =>\n React.isValidElement(child),\n ) as React.ReactElement[]\n}\n\nexport function isValidElement(child: any): child is React.ReactNode {\n return React.isValidElement(child) || isString(child) || isNumber(child)\n}\n\nexport function findChildren(\n children: React.ReactElement[],\n ...types: (string | React.JSXElementConstructor<any>)[]\n): [React.ReactElement | undefined, ...React.ReactElement[]] {\n return (\n children.find((child) => types.some((type) => child.type === type))\n ? children.sort((a, b) =>\n types.some((type) => a.type === type)\n ? -1\n : types.some((type) => b.type === type)\n ? 1\n : 0,\n )\n : [undefined, ...children]\n ) as [React.ReactElement | undefined, ...React.ReactElement[]]\n}\n\nexport function includesChildren(\n children: React.ReactElement[],\n ...types: (string | React.JSXElementConstructor<any>)[]\n): boolean {\n return children.some((child) => {\n if (types.some((type) => child.type === type)) return true\n\n const children = getValidChildren(child.props.children)\n\n return children.length ? includesChildren(children, ...types) : false\n })\n}\n\nexport function omitChildren(\n children: React.ReactElement[],\n ...types: (string | React.JSXElementConstructor<any>)[]\n): React.ReactElement[] {\n return children.filter((child) => types.every((type) => child.type !== type))\n}\n\nexport function pickChildren(\n children: React.ReactElement[],\n ...types: (string | React.JSXElementConstructor<any>)[]\n): React.ReactElement[] {\n return children.filter((child) => types.every((type) => child.type === type))\n}\n\nexport function cx(...classNames: (string | undefined)[]) {\n return classNames.filter(Boolean).join(\" \")\n}\n\ntype ReactRef<T> = React.Ref<T> | React.MutableRefObject<T> | React.LegacyRef<T>\n\nexport function isRefObject(val: any): val is { current: any } {\n return isObject(val) && \"current\" in val\n}\n\nexport function assignRef<T extends any = any>(\n ref: ReactRef<T> | undefined,\n value: T,\n) {\n if (ref == null) return\n\n if (typeof ref === \"function\") {\n ref(value)\n\n return\n }\n\n try {\n // @ts-ignore\n ref.current = value\n } catch {\n throw new Error(`Cannot assign value '${value}' to ref '${ref}'`)\n }\n}\n\nexport function mergeRefs<T extends any = any>(\n ...refs: (ReactRef<T> | null | undefined)[]\n) {\n return function (node: T | null) {\n return refs.forEach((ref) => {\n assignRef(ref, node)\n })\n }\n}\n\nexport function useMergeRefs<T extends any = any>(\n ...refs: (ReactRef<T> | undefined)[]\n) {\n return React.useMemo(() => mergeRefs(...refs), [refs])\n}\n\nexport function useCallbackRef<T extends (...args: any[]) => any>(\n callback: T | undefined,\n deps: React.DependencyList = [],\n) {\n const callbackRef = React.useRef(callback)\n\n React.useEffect(() => {\n callbackRef.current = callback\n })\n\n // eslint-disable-next-line react-hooks/exhaustive-deps\n return React.useCallback(\n ((...args) => callbackRef.current?.(...args)) as T,\n deps,\n )\n}\n\n/**\n * `useUpdateEffect` is a custom hook that skips side effects on the initial render, and only runs them when the dependency array changes.\n *\n * @see Docs https://yamada-ui.com/hooks/use-update-effect\n */\nexport function useUpdateEffect(\n callback: React.EffectCallback,\n deps: React.DependencyList,\n) {\n const renderCycleRef = React.useRef(false)\n const effectCycleRef = React.useRef(false)\n\n React.useEffect(() => {\n const mounted = renderCycleRef.current\n const run = mounted && effectCycleRef.current\n\n if (run) return callback()\n\n effectCycleRef.current = true\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, deps)\n\n React.useEffect(() => {\n renderCycleRef.current = true\n\n return () => {\n renderCycleRef.current = false\n }\n }, [])\n}\n\nexport type FunctionReturningPromise = (...args: any[]) => Promise<any>\n\n/**\n * `useAsync` is a custom hook that executes an asynchronous function and tracks its state.\n *\n * @see Docs https://yamada-ui.com/hooks/use-async\n */\nexport function useAsync<T extends FunctionReturningPromise>(\n func: T,\n deps: React.DependencyList = [],\n) {\n const [state, callback] = useAsyncFunc(func, deps, { loading: true })\n\n React.useEffect(() => {\n callback()\n }, [callback])\n\n return state\n}\n\nexport type AsyncState<T> =\n | {\n loading: boolean\n error?: undefined\n value?: undefined\n }\n | {\n loading: true\n error?: Error | undefined\n value?: T\n }\n | {\n loading: false\n error: Error\n value?: undefined\n }\n | {\n loading: false\n error?: undefined\n value: T\n }\n\nexport type PromiseType<P extends Promise<any>> =\n P extends Promise<infer T> ? T : never\n\ntype StateFromFunctionReturningPromise<T extends FunctionReturningPromise> =\n AsyncState<PromiseType<ReturnType<T>>>\n\nexport type AsyncFnReturn<\n T extends FunctionReturningPromise = FunctionReturningPromise,\n> = [StateFromFunctionReturningPromise<T>, T]\n\nexport function useAsyncFunc<T extends FunctionReturningPromise>(\n func: T,\n deps: React.DependencyList = [],\n initialState: StateFromFunctionReturningPromise<T> = { loading: false },\n): AsyncFnReturn<T> {\n const lastCallId = React.useRef(0)\n const [isMounted] = useIsMounted()\n const [state, setState] =\n React.useState<StateFromFunctionReturningPromise<T>>(initialState)\n\n const callback = React.useCallback(\n (...args: Parameters<T>): ReturnType<T> => {\n const callId = ++lastCallId.current\n\n if (!state.loading)\n setState((prevState) => ({ ...prevState, loading: true }))\n\n return func(...args).then(\n (value) => {\n if (isMounted() && callId === lastCallId.current)\n setState({ value, loading: false })\n\n return value\n },\n (error) => {\n if (isMounted() && callId === lastCallId.current)\n setState({ error, loading: false })\n\n return error\n },\n ) as ReturnType<T>\n },\n // eslint-disable-next-line react-hooks/exhaustive-deps\n deps,\n )\n\n return [state, callback as unknown as T]\n}\n\nexport type AsyncStateRetry<T> = AsyncState<T> & {\n retry(): void\n}\n\nexport function useAsyncRetry<T>(\n func: () => Promise<T>,\n deps: React.DependencyList = [],\n) {\n const [attempt, setAttempt] = React.useState<number>(0)\n const state = useAsync(func, [...deps, attempt])\n\n const stateLoading = state.loading\n\n const retry = React.useCallback(() => {\n if (stateLoading) return\n\n setAttempt((currentAttempt) => currentAttempt + 1)\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [...deps, stateLoading])\n\n return { ...state, retry }\n}\n\nlet createIdCounter: number = 0\n\nexport function createId(prefix: string) {\n return `${prefix}-${++createIdCounter}-${new Date().getTime()}`\n}\n"],"mappings":"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","names":["createContext","useContext","isValidElement","children"]}
@@ -0,0 +1,9 @@
1
+ // src/array.ts
2
+ function filterEmpty(array) {
3
+ return array.filter((value) => value != null);
4
+ }
5
+
6
+ export {
7
+ filterEmpty
8
+ };
9
+ //# sourceMappingURL=chunk-5EG6NSMV.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/array.ts"],"sourcesContent":["export function filterEmpty<T extends any[]>(array: T) {\n return array.filter((value) => value != null)\n}\n"],"mappings":";AAAO,SAAS,YAA6B,OAAU;AACrD,SAAO,MAAM,OAAO,CAAC,UAAU,SAAS,IAAI;AAC9C;","names":[]}