@zag-js/utils 0.0.0-dev-20220510084727 → 0.0.0-dev-20220604091726

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/guard.d.ts CHANGED
@@ -14,13 +14,18 @@ export declare const isObject: (v: any) => v is Record<string, any>;
14
14
  export declare const isNumber: (v: any) => v is number;
15
15
  export declare const isString: (v: any) => v is string;
16
16
  export declare const isFunction: (v: any) => v is Function;
17
+ export declare const hasProp: <T extends string>(obj: any, prop: T) => obj is Record<T, any>;
17
18
  export declare const supportsPointerEvent: () => boolean;
18
19
  export declare const supportsTouchEvent: () => boolean;
19
20
  export declare const supportsMouseEvent: () => boolean;
20
21
  export declare const isMouseEvent: (v: any) => v is MouseEvent;
21
22
  export declare const isTouchEvent: (v: any) => v is TouchEvent;
22
- export declare const isLeftClick: (v: MouseEvent | PointerEvent) => boolean;
23
- export declare const isRightClick: (v: MouseEvent | PointerEvent) => boolean;
23
+ export declare const isLeftClick: (v: {
24
+ button: number;
25
+ }) => boolean;
26
+ export declare const isRightClick: (v: {
27
+ button: number;
28
+ }) => boolean;
24
29
  export declare const isModifiedEvent: (v: Pick<KeyboardEvent, "ctrlKey" | "metaKey" | "altKey">) => boolean;
25
- export declare const isCtrlKey: (v: KeyboardEvent) => boolean;
30
+ export declare const isCtrlKey: (v: Pick<KeyboardEvent, "ctrlKey" | "metaKey">) => boolean;
26
31
  //# sourceMappingURL=guard.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"guard.d.ts","sourceRoot":"","sources":["../src/guard.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,KAAK,eAA8C,CAAA;AAChE,eAAO,MAAM,KAAK,eAA0C,CAAA;AAC5D,eAAO,MAAM,KAAK,eAAyB,CAAA;AAC3C,eAAO,MAAM,QAAQ,eAA4B,CAAA;AACjD,eAAO,MAAM,MAAM,eAAuE,CAAA;AAC1F,eAAO,MAAM,KAAK,eAA+B,CAAA;AACjD,eAAO,MAAM,QAAQ,eAA6C,CAAA;AAClE,eAAO,MAAM,SAAS,eAAuB,CAAA;AAC7C,eAAO,MAAM,QAAQ,eAAuC,CAAA;AAC5D,eAAO,MAAM,OAAO,eAA2B,CAAA;AAE/C,eAAO,MAAM,OAAO,MAAO,GAAG,eAAiC,CAAA;AAC/D,eAAO,MAAM,SAAS,MAAO,GAAG,iBAA4C,CAAA;AAC5E,eAAO,MAAM,QAAQ,MAAO,GAAG,6BAAkF,CAAA;AACjH,eAAO,MAAM,QAAQ,MAAO,GAAG,gBAA2D,CAAA;AAC1F,eAAO,MAAM,QAAQ,MAAO,GAAG,gBAAuC,CAAA;AACtE,eAAO,MAAM,UAAU,MAAO,GAAG,kBAA2C,CAAA;AAE5E,eAAO,MAAM,oBAAoB,eAAiD,CAAA;AAClF,eAAO,MAAM,kBAAkB,eAAgD,CAAA;AAC/E,eAAO,MAAM,kBAAkB,eAA+C,CAAA;AAE9E,eAAO,MAAM,YAAY,MAAO,GAAG,oBAAkD,CAAA;AACrF,eAAO,MAAM,YAAY,MAAO,GAAG,oBAAmD,CAAA;AACtF,eAAO,MAAM,WAAW,MAAO,UAAU,GAAG,YAAY,YAAmB,CAAA;AAC3E,eAAO,MAAM,YAAY,MAAO,UAAU,GAAG,YAAY,YAAmB,CAAA;AAC5E,eAAO,MAAM,eAAe,MAAO,KAAK,aAAa,EAAE,SAAS,GAAG,SAAS,GAAG,QAAQ,CAAC,YACpD,CAAA;AACpC,eAAO,MAAM,SAAS,MAAO,aAAa,YAAkE,CAAA"}
1
+ {"version":3,"file":"guard.d.ts","sourceRoot":"","sources":["../src/guard.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,KAAK,eAA8C,CAAA;AAChE,eAAO,MAAM,KAAK,eAAsC,CAAA;AACxD,eAAO,MAAM,KAAK,eAAyB,CAAA;AAC3C,eAAO,MAAM,QAAQ,eAA4B,CAAA;AACjD,eAAO,MAAM,MAAM,eAAuE,CAAA;AAC1F,eAAO,MAAM,KAAK,eAA+B,CAAA;AACjD,eAAO,MAAM,QAAQ,eAA6C,CAAA;AAClE,eAAO,MAAM,SAAS,eAAuB,CAAA;AAC7C,eAAO,MAAM,QAAQ,eAAuC,CAAA;AAC5D,eAAO,MAAM,OAAO,eAA2B,CAAA;AAE/C,eAAO,MAAM,OAAO,MAAO,GAAG,eAAiC,CAAA;AAC/D,eAAO,MAAM,SAAS,MAAO,GAAG,iBAA4C,CAAA;AAC5E,eAAO,MAAM,QAAQ,MAAO,GAAG,6BAAkF,CAAA;AACjH,eAAO,MAAM,QAAQ,MAAO,GAAG,gBAA2D,CAAA;AAC1F,eAAO,MAAM,QAAQ,MAAO,GAAG,gBAAuC,CAAA;AACtE,eAAO,MAAM,UAAU,MAAO,GAAG,kBAA2C,CAAA;AAE5E,eAAO,MAAM,OAAO,0BAA2B,GAAG,mCACD,CAAA;AAEjD,eAAO,MAAM,oBAAoB,eAAiD,CAAA;AAClF,eAAO,MAAM,kBAAkB,eAAgD,CAAA;AAC/E,eAAO,MAAM,kBAAkB,eAA+C,CAAA;AAE9E,eAAO,MAAM,YAAY,MAAO,GAAG,oBAAyD,CAAA;AAC5F,eAAO,MAAM,YAAY,MAAO,GAAG,oBAA0D,CAAA;AAC7F,eAAO,MAAM,WAAW,MAAO;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,YAAmB,CAAA;AACpE,eAAO,MAAM,YAAY,MAAO;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,YAAmB,CAAA;AACrE,eAAO,MAAM,eAAe,MAAO,KAAK,aAAa,EAAE,SAAS,GAAG,SAAS,GAAG,QAAQ,CAAC,YACpD,CAAA;AACpC,eAAO,MAAM,SAAS,MAAO,KAAK,aAAa,EAAE,SAAS,GAAG,SAAS,CAAC,YACV,CAAA"}
package/dist/index.js CHANGED
@@ -27,6 +27,7 @@ __export(src_exports, {
27
27
  first: () => first,
28
28
  fromLength: () => fromLength,
29
29
  has: () => has,
30
+ hasProp: () => hasProp,
30
31
  invariant: () => invariant,
31
32
  isApple: () => isApple,
32
33
  isArray: () => isArray,
@@ -171,7 +172,7 @@ function merge(origin, patch) {
171
172
  var platform = (v) => isDom() && v.test(navigator.platform);
172
173
  var ua = (v) => isDom() && v.test(navigator.userAgent);
173
174
  var isDev = () => void 0 !== "production";
174
- var isDom = () => !!(typeof window !== "undefined");
175
+ var isDom = () => typeof window !== "undefined";
175
176
  var isMac = () => platform(/^Mac/);
176
177
  var isIPhone = () => platform(/^iPhone/);
177
178
  var isIPad = () => platform(/^iPad/) || isMac() && navigator.maxTouchPoints > 1;
@@ -186,11 +187,12 @@ var isObject = (v) => !(v == null || typeof v !== "object" || isArray(v));
186
187
  var isNumber = (v) => typeof v === "number" && !Number.isNaN(v);
187
188
  var isString = (v) => typeof v === "string";
188
189
  var isFunction = (v) => typeof v === "function";
190
+ var hasProp = (obj, prop) => Object.prototype.hasOwnProperty.call(obj, prop);
189
191
  var supportsPointerEvent = () => isDom() && window.onpointerdown === null;
190
192
  var supportsTouchEvent = () => isDom() && window.ontouchstart === null;
191
193
  var supportsMouseEvent = () => isDom() && window.onmousedown === null;
192
- var isMouseEvent = (v) => isObject(v) && "button" in v;
193
- var isTouchEvent = (v) => isObject(v) && "touches" in v;
194
+ var isMouseEvent = (v) => isObject(v) && hasProp(v, "button");
195
+ var isTouchEvent = (v) => isObject(v) && hasProp(v, "touches");
194
196
  var isLeftClick = (v) => v.button === 0;
195
197
  var isRightClick = (v) => v.button === 2;
196
198
  var isModifiedEvent = (v) => v.ctrlKey || v.altKey || v.metaKey;
package/dist/index.js.map CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../src/index.ts", "../src/array.ts", "../src/functions.ts", "../src/guard.ts", "../src/warning.ts"],
4
- "sourcesContent": ["export * from \"./array\"\nexport * from \"./functions\"\nexport * from \"./guard\"\nexport * from \"./warning\"\n", "export function toArray<T>(v: T | T[] | undefined | null): T[] {\n if (!v) return []\n return Array.isArray(v) ? v : [v]\n}\n\nexport const fromLength = (length: number) => Array.from(Array(length).keys())\n\nexport const first = <T>(v: T[]): T | undefined => v[0]\n\nexport const last = <T>(v: T[]): T | undefined => v[v.length - 1]\n\nexport const isEmpty = <T>(v: T[]): boolean => v.length === 0\n\nexport const has = <T>(v: T[], t: any): boolean => v.indexOf(t) !== -1\n\nexport const add = <T>(v: T[], ...items: T[]): T[] => v.concat(items)\n\nexport const remove = <T>(v: T[], item: T): T[] => removeAt(v, v.indexOf(item))\n\nexport const removeAt = <T>(v: T[], i: number): T[] => {\n if (i > -1) v.splice(i, 1)\n return v\n}\n\nexport function clear<T>(v: T[]): T[] {\n while (v.length > 0) v.pop()\n return v\n}\n\nexport type IndexOptions = {\n step?: number\n loop?: boolean\n}\n\nexport function nextIndex<T>(v: T[], idx: number, opts: IndexOptions = {}): number {\n const { step = 1, loop = true } = opts\n const next = idx + step\n const len = v.length\n const last = len - 1\n if (idx === -1) return step > 0 ? 0 : last\n if (next < 0) return loop ? last : 0\n if (next >= len) return loop ? 0 : idx > len ? len : idx\n return next\n}\n\nexport function next<T>(v: T[], idx: number, opts: IndexOptions = {}): T | undefined {\n return v[nextIndex(v, idx, opts)]\n}\n\nexport function prevIndex<T>(v: T[], idx: number, opts: IndexOptions = {}): number {\n const { step = 1, loop = true } = opts\n return nextIndex(v, idx, { step: -step, loop })\n}\n\nexport function prev<T>(v: T[], index: number, opts: IndexOptions = {}): T | undefined {\n return v[prevIndex(v, index, opts)]\n}\n\nexport const chunk = <T>(v: T[], size: number): T[][] => {\n const res: T[][] = []\n return v.reduce((rows, value, index) => {\n if (index % size === 0) rows.push([value])\n else last(rows)?.push(value)\n return rows\n }, res)\n}\n", "export const runIfFn = <T>(\n v: T | undefined,\n ...a: T extends (...a: any[]) => void ? Parameters<T> : never\n): T extends (...a: any[]) => void ? NonNullable<ReturnType<T>> : NonNullable<T> => {\n const res = typeof v === \"function\" ? v(...a) : v\n return res ?? undefined\n}\n\nexport const cast = <T>(v: unknown): T => v as T\n\nexport const noop = () => {}\n\nexport const pipe =\n <T>(...fns: Array<(a: T) => T>) =>\n (v: T) =>\n fns.reduce((a, b) => b(a), v)\n\nexport const callAll =\n <T extends (...a: any[]) => void>(...fns: (T | undefined)[]) =>\n (...a: Parameters<T>) => {\n fns.forEach(function (fn) {\n fn?.(...a)\n })\n }\n\nexport const uuid = /*#__PURE__*/ (() => {\n let id = 0\n return () => {\n id++\n return id.toString(36)\n }\n})()\n\nexport function merge<T, U>(origin: T, patch: U): T & U {\n if (!(typeof patch === \"object\")) return patch as any\n const result = !(typeof origin === \"object\") ? {} : Object.assign({}, origin)\n for (const key of Object.keys(patch)) {\n const value = patch[key]\n const src = result[key]\n if (value === null) delete result[key]\n else if (Array.isArray(value) || Array.isArray(src)) result[key] = (src || []).concat(value || [])\n else result[key] = merge(src, value)\n }\n return result as any\n}\n", "const platform = (v: RegExp) => isDom() && v.test(navigator.platform)\nconst ua = (v: RegExp) => isDom() && v.test(navigator.userAgent)\n\nexport const isDev = () => process.env.NODE_ENV !== \"production\"\nexport const isDom = () => !!(typeof window !== \"undefined\")\nexport const isMac = () => platform(/^Mac/)\nexport const isIPhone = () => platform(/^iPhone/)\nexport const isIPad = () => platform(/^iPad/) || (isMac() && navigator.maxTouchPoints > 1)\nexport const isIos = () => isIPhone() || isIPad()\nexport const isSafari = () => ua(/^((?!chrome|android).)*safari/i)\nexport const isFirefox = () => ua(/^Firefox/)\nexport const isWebkit = () => ua(/^WebKit/) && !ua(/Chrome/)\nexport const isApple = () => isMac() || isIos()\n\nexport const isArray = (v: any): v is any[] => Array.isArray(v)\nexport const isBoolean = (v: any): v is boolean => v === true || v === false\nexport const isObject = (v: any): v is Record<string, any> => !(v == null || typeof v !== \"object\" || isArray(v))\nexport const isNumber = (v: any): v is number => typeof v === \"number\" && !Number.isNaN(v)\nexport const isString = (v: any): v is string => typeof v === \"string\"\nexport const isFunction = (v: any): v is Function => typeof v === \"function\"\n\nexport const supportsPointerEvent = () => isDom() && window.onpointerdown === null\nexport const supportsTouchEvent = () => isDom() && window.ontouchstart === null\nexport const supportsMouseEvent = () => isDom() && window.onmousedown === null\n\nexport const isMouseEvent = (v: any): v is MouseEvent => isObject(v) && \"button\" in v\nexport const isTouchEvent = (v: any): v is TouchEvent => isObject(v) && \"touches\" in v\nexport const isLeftClick = (v: MouseEvent | PointerEvent) => v.button === 0\nexport const isRightClick = (v: MouseEvent | PointerEvent) => v.button === 2\nexport const isModifiedEvent = (v: Pick<KeyboardEvent, \"ctrlKey\" | \"metaKey\" | \"altKey\">) =>\n v.ctrlKey || v.altKey || v.metaKey\nexport const isCtrlKey = (v: KeyboardEvent) => (isMac() ? v.metaKey && !v.ctrlKey : v.ctrlKey && !v.metaKey)\n", "export function warn(m: string): void\nexport function warn(c: boolean, m: string): void\nexport function warn(...a: any[]): void {\n const m = a.length === 1 ? a[0] : a[1]\n const c = a.length === 2 ? a[0] : true\n if (c && process.env.NODE_ENV !== \"production\") {\n console.warn(m)\n }\n}\n\nexport function invariant(m: string): void\nexport function invariant(c: boolean, m: string): void\nexport function invariant(...a: any[]): void {\n const m = a.length === 1 ? a[0] : a[1]\n const c = a.length === 2 ? a[0] : true\n if (c && process.env.NODE_ENV !== \"production\") {\n throw new Error(m)\n }\n}\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["export * from \"./array\"\nexport * from \"./functions\"\nexport * from \"./guard\"\nexport * from \"./warning\"\n", "export function toArray<T>(v: T | T[] | undefined | null): T[] {\n if (!v) return []\n return Array.isArray(v) ? v : [v]\n}\n\nexport const fromLength = (length: number) => Array.from(Array(length).keys())\n\nexport const first = <T>(v: T[]): T | undefined => v[0]\n\nexport const last = <T>(v: T[]): T | undefined => v[v.length - 1]\n\nexport const isEmpty = <T>(v: T[]): boolean => v.length === 0\n\nexport const has = <T>(v: T[], t: any): boolean => v.indexOf(t) !== -1\n\nexport const add = <T>(v: T[], ...items: T[]): T[] => v.concat(items)\n\nexport const remove = <T>(v: T[], item: T): T[] => removeAt(v, v.indexOf(item))\n\nexport const removeAt = <T>(v: T[], i: number): T[] => {\n if (i > -1) v.splice(i, 1)\n return v\n}\n\nexport function clear<T>(v: T[]): T[] {\n while (v.length > 0) v.pop()\n return v\n}\n\nexport type IndexOptions = {\n step?: number\n loop?: boolean\n}\n\nexport function nextIndex<T>(v: T[], idx: number, opts: IndexOptions = {}): number {\n const { step = 1, loop = true } = opts\n const next = idx + step\n const len = v.length\n const last = len - 1\n if (idx === -1) return step > 0 ? 0 : last\n if (next < 0) return loop ? last : 0\n if (next >= len) return loop ? 0 : idx > len ? len : idx\n return next\n}\n\nexport function next<T>(v: T[], idx: number, opts: IndexOptions = {}): T | undefined {\n return v[nextIndex(v, idx, opts)]\n}\n\nexport function prevIndex<T>(v: T[], idx: number, opts: IndexOptions = {}): number {\n const { step = 1, loop = true } = opts\n return nextIndex(v, idx, { step: -step, loop })\n}\n\nexport function prev<T>(v: T[], index: number, opts: IndexOptions = {}): T | undefined {\n return v[prevIndex(v, index, opts)]\n}\n\nexport const chunk = <T>(v: T[], size: number): T[][] => {\n const res: T[][] = []\n return v.reduce((rows, value, index) => {\n if (index % size === 0) rows.push([value])\n else last(rows)?.push(value)\n return rows\n }, res)\n}\n", "export const runIfFn = <T>(\n v: T | undefined,\n ...a: T extends (...a: any[]) => void ? Parameters<T> : never\n): T extends (...a: any[]) => void ? NonNullable<ReturnType<T>> : NonNullable<T> => {\n const res = typeof v === \"function\" ? v(...a) : v\n return res ?? undefined\n}\n\nexport const cast = <T>(v: unknown): T => v as T\n\nexport const noop = () => {}\n\nexport const pipe =\n <T>(...fns: Array<(a: T) => T>) =>\n (v: T) =>\n fns.reduce((a, b) => b(a), v)\n\nexport const callAll =\n <T extends (...a: any[]) => void>(...fns: (T | undefined)[]) =>\n (...a: Parameters<T>) => {\n fns.forEach(function (fn) {\n fn?.(...a)\n })\n }\n\nexport const uuid = /*#__PURE__*/ (() => {\n let id = 0\n return () => {\n id++\n return id.toString(36)\n }\n})()\n\nexport function merge<T, U>(origin: T, patch: U): T & U {\n if (!(typeof patch === \"object\")) return patch as any\n const result = !(typeof origin === \"object\") ? {} : Object.assign({}, origin)\n for (const key of Object.keys(patch)) {\n const value = patch[key]\n const src = result[key]\n if (value === null) delete result[key]\n else if (Array.isArray(value) || Array.isArray(src)) result[key] = (src || []).concat(value || [])\n else result[key] = merge(src, value)\n }\n return result as any\n}\n", "const platform = (v: RegExp) => isDom() && v.test(navigator.platform)\nconst ua = (v: RegExp) => isDom() && v.test(navigator.userAgent)\n\nexport const isDev = () => process.env.NODE_ENV !== \"production\"\nexport const isDom = () => typeof window !== \"undefined\"\nexport const isMac = () => platform(/^Mac/)\nexport const isIPhone = () => platform(/^iPhone/)\nexport const isIPad = () => platform(/^iPad/) || (isMac() && navigator.maxTouchPoints > 1)\nexport const isIos = () => isIPhone() || isIPad()\nexport const isSafari = () => ua(/^((?!chrome|android).)*safari/i)\nexport const isFirefox = () => ua(/^Firefox/)\nexport const isWebkit = () => ua(/^WebKit/) && !ua(/Chrome/)\nexport const isApple = () => isMac() || isIos()\n\nexport const isArray = (v: any): v is any[] => Array.isArray(v)\nexport const isBoolean = (v: any): v is boolean => v === true || v === false\nexport const isObject = (v: any): v is Record<string, any> => !(v == null || typeof v !== \"object\" || isArray(v))\nexport const isNumber = (v: any): v is number => typeof v === \"number\" && !Number.isNaN(v)\nexport const isString = (v: any): v is string => typeof v === \"string\"\nexport const isFunction = (v: any): v is Function => typeof v === \"function\"\n\nexport const hasProp = <T extends string>(obj: any, prop: T): obj is Record<T, any> =>\n Object.prototype.hasOwnProperty.call(obj, prop)\n\nexport const supportsPointerEvent = () => isDom() && window.onpointerdown === null\nexport const supportsTouchEvent = () => isDom() && window.ontouchstart === null\nexport const supportsMouseEvent = () => isDom() && window.onmousedown === null\n\nexport const isMouseEvent = (v: any): v is MouseEvent => isObject(v) && hasProp(v, \"button\")\nexport const isTouchEvent = (v: any): v is TouchEvent => isObject(v) && hasProp(v, \"touches\")\nexport const isLeftClick = (v: { button: number }) => v.button === 0\nexport const isRightClick = (v: { button: number }) => v.button === 2\nexport const isModifiedEvent = (v: Pick<KeyboardEvent, \"ctrlKey\" | \"metaKey\" | \"altKey\">) =>\n v.ctrlKey || v.altKey || v.metaKey\nexport const isCtrlKey = (v: Pick<KeyboardEvent, \"ctrlKey\" | \"metaKey\">) =>\n isMac() ? v.metaKey && !v.ctrlKey : v.ctrlKey && !v.metaKey\n", "export function warn(m: string): void\nexport function warn(c: boolean, m: string): void\nexport function warn(...a: any[]): void {\n const m = a.length === 1 ? a[0] : a[1]\n const c = a.length === 2 ? a[0] : true\n if (c && process.env.NODE_ENV !== \"production\") {\n console.warn(m)\n }\n}\n\nexport function invariant(m: string): void\nexport function invariant(c: boolean, m: string): void\nexport function invariant(...a: any[]): void {\n const m = a.length === 1 ? a[0] : a[1]\n const c = a.length === 2 ? a[0] : true\n if (c && process.env.NODE_ENV !== \"production\") {\n throw new Error(m)\n }\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACAO,iBAAoB,GAAoC;AAC7D,MAAI,CAAC;AAAG,WAAO,CAAC;AAChB,SAAO,MAAM,QAAQ,CAAC,IAAI,IAAI,CAAC,CAAC;AAClC;AAEO,IAAM,aAAa,CAAC,WAAmB,MAAM,KAAK,MAAM,MAAM,EAAE,KAAK,CAAC;AAEtE,IAAM,QAAQ,CAAI,MAA0B,EAAE;AAE9C,IAAM,OAAO,CAAI,MAA0B,EAAE,EAAE,SAAS;AAExD,IAAM,UAAU,CAAI,MAAoB,EAAE,WAAW;AAErD,IAAM,MAAM,CAAI,GAAQ,MAAoB,EAAE,QAAQ,CAAC,MAAM;AAE7D,IAAM,MAAM,CAAI,MAAW,UAAoB,EAAE,OAAO,KAAK;AAE7D,IAAM,SAAS,CAAI,GAAQ,SAAiB,SAAS,GAAG,EAAE,QAAQ,IAAI,CAAC;AAEvE,IAAM,WAAW,CAAI,GAAQ,MAAmB;AACrD,MAAI,IAAI;AAAI,MAAE,OAAO,GAAG,CAAC;AACzB,SAAO;AACT;AAEO,eAAkB,GAAa;AACpC,SAAO,EAAE,SAAS;AAAG,MAAE,IAAI;AAC3B,SAAO;AACT;AAOO,mBAAsB,GAAQ,KAAa,OAAqB,CAAC,GAAW;AACjF,QAAM,EAAE,OAAO,GAAG,OAAO,SAAS;AAClC,QAAM,QAAO,MAAM;AACnB,QAAM,MAAM,EAAE;AACd,QAAM,QAAO,MAAM;AACnB,MAAI,QAAQ;AAAI,WAAO,OAAO,IAAI,IAAI;AACtC,MAAI,QAAO;AAAG,WAAO,OAAO,QAAO;AACnC,MAAI,SAAQ;AAAK,WAAO,OAAO,IAAI,MAAM,MAAM,MAAM;AACrD,SAAO;AACT;AAEO,cAAiB,GAAQ,KAAa,OAAqB,CAAC,GAAkB;AACnF,SAAO,EAAE,UAAU,GAAG,KAAK,IAAI;AACjC;AAEO,mBAAsB,GAAQ,KAAa,OAAqB,CAAC,GAAW;AACjF,QAAM,EAAE,OAAO,GAAG,OAAO,SAAS;AAClC,SAAO,UAAU,GAAG,KAAK,EAAE,MAAM,CAAC,MAAM,KAAK,CAAC;AAChD;AAEO,cAAiB,GAAQ,OAAe,OAAqB,CAAC,GAAkB;AACrF,SAAO,EAAE,UAAU,GAAG,OAAO,IAAI;AACnC;AAEO,IAAM,QAAQ,CAAI,GAAQ,SAAwB;AACvD,QAAM,MAAa,CAAC;AACpB,SAAO,EAAE,OAAO,CAAC,MAAM,OAAO,UAAU;AA5D1C;AA6DI,QAAI,QAAQ,SAAS;AAAG,WAAK,KAAK,CAAC,KAAK,CAAC;AAAA;AACpC,iBAAK,IAAI,MAAT,mBAAY,KAAK;AACtB,WAAO;AAAA,EACT,GAAG,GAAG;AACR;;;ACjEO,IAAM,UAAU,CACrB,MACG,MAC+E;AAClF,QAAM,MAAM,OAAO,MAAM,aAAa,EAAE,GAAG,CAAC,IAAI;AAChD,SAAO,oBAAO;AAChB;AAEO,IAAM,OAAO,CAAI,MAAkB;AAEnC,IAAM,OAAO,MAAM;AAAC;AAEpB,IAAM,OACX,IAAO,QACP,CAAC,MACC,IAAI,OAAO,CAAC,GAAG,MAAM,EAAE,CAAC,GAAG,CAAC;AAEzB,IAAM,UACX,IAAqC,QACrC,IAAI,MAAqB;AACvB,MAAI,QAAQ,SAAU,IAAI;AACxB,6BAAK,GAAG;AAAA,EACV,CAAC;AACH;AAEK,IAAM,OAAsB,uBAAM;AACvC,MAAI,KAAK;AACT,SAAO,MAAM;AACX;AACA,WAAO,GAAG,SAAS,EAAE;AAAA,EACvB;AACF,GAAG;AAEI,eAAqB,QAAW,OAAiB;AACtD,MAAI,CAAE,QAAO,UAAU;AAAW,WAAO;AACzC,QAAM,SAAS,CAAE,QAAO,WAAW,YAAY,CAAC,IAAI,OAAO,OAAO,CAAC,GAAG,MAAM;AAC5E,aAAW,OAAO,OAAO,KAAK,KAAK,GAAG;AACpC,UAAM,QAAQ,MAAM;AACpB,UAAM,MAAM,OAAO;AACnB,QAAI,UAAU;AAAM,aAAO,OAAO;AAAA,aACzB,MAAM,QAAQ,KAAK,KAAK,MAAM,QAAQ,GAAG;AAAG,aAAO,OAAQ,QAAO,CAAC,GAAG,OAAO,SAAS,CAAC,CAAC;AAAA;AAC5F,aAAO,OAAO,MAAM,KAAK,KAAK;AAAA,EACrC;AACA,SAAO;AACT;;;AC5CA,IAAM,WAAW,CAAC,MAAc,MAAM,KAAK,EAAE,KAAK,UAAU,QAAQ;AACpE,IAAM,KAAK,CAAC,MAAc,MAAM,KAAK,EAAE,KAAK,UAAU,SAAS;AAExD,IAAM,QAAQ,MAAM,WAAyB;AAC7C,IAAM,QAAQ,MAAM,OAAO,WAAW;AACtC,IAAM,QAAQ,MAAM,SAAS,MAAM;AACnC,IAAM,WAAW,MAAM,SAAS,SAAS;AACzC,IAAM,SAAS,MAAM,SAAS,OAAO,KAAM,MAAM,KAAK,UAAU,iBAAiB;AACjF,IAAM,QAAQ,MAAM,SAAS,KAAK,OAAO;AACzC,IAAM,WAAW,MAAM,GAAG,gCAAgC;AAC1D,IAAM,YAAY,MAAM,GAAG,UAAU;AACrC,IAAM,WAAW,MAAM,GAAG,SAAS,KAAK,CAAC,GAAG,QAAQ;AACpD,IAAM,UAAU,MAAM,MAAM,KAAK,MAAM;AAEvC,IAAM,UAAU,CAAC,MAAuB,MAAM,QAAQ,CAAC;AACvD,IAAM,YAAY,CAAC,MAAyB,MAAM,QAAQ,MAAM;AAChE,IAAM,WAAW,CAAC,MAAqC,CAAE,MAAK,QAAQ,OAAO,MAAM,YAAY,QAAQ,CAAC;AACxG,IAAM,WAAW,CAAC,MAAwB,OAAO,MAAM,YAAY,CAAC,OAAO,MAAM,CAAC;AAClF,IAAM,WAAW,CAAC,MAAwB,OAAO,MAAM;AACvD,IAAM,aAAa,CAAC,MAA0B,OAAO,MAAM;AAE3D,IAAM,UAAU,CAAmB,KAAU,SAClD,OAAO,UAAU,eAAe,KAAK,KAAK,IAAI;AAEzC,IAAM,uBAAuB,MAAM,MAAM,KAAK,OAAO,kBAAkB;AACvE,IAAM,qBAAqB,MAAM,MAAM,KAAK,OAAO,iBAAiB;AACpE,IAAM,qBAAqB,MAAM,MAAM,KAAK,OAAO,gBAAgB;AAEnE,IAAM,eAAe,CAAC,MAA4B,SAAS,CAAC,KAAK,QAAQ,GAAG,QAAQ;AACpF,IAAM,eAAe,CAAC,MAA4B,SAAS,CAAC,KAAK,QAAQ,GAAG,SAAS;AACrF,IAAM,cAAc,CAAC,MAA0B,EAAE,WAAW;AAC5D,IAAM,eAAe,CAAC,MAA0B,EAAE,WAAW;AAC7D,IAAM,kBAAkB,CAAC,MAC9B,EAAE,WAAW,EAAE,UAAU,EAAE;AACtB,IAAM,YAAY,CAAC,MACxB,MAAM,IAAI,EAAE,WAAW,CAAC,EAAE,UAAU,EAAE,WAAW,CAAC,EAAE;;;ACjC/C,iBAAiB,GAAgB;AACtC,QAAM,IAAI,EAAE,WAAW,IAAI,EAAE,KAAK,EAAE;AACpC,QAAM,IAAI,EAAE,WAAW,IAAI,EAAE,KAAK;AAClC,MAAI,KAAK,WAAyB,cAAc;AAC9C,YAAQ,KAAK,CAAC;AAAA,EAChB;AACF;AAIO,sBAAsB,GAAgB;AAC3C,QAAM,IAAI,EAAE,WAAW,IAAI,EAAE,KAAK,EAAE;AACpC,QAAM,IAAI,EAAE,WAAW,IAAI,EAAE,KAAK;AAClC,MAAI,KAAK,WAAyB,cAAc;AAC9C,UAAM,IAAI,MAAM,CAAC;AAAA,EACnB;AACF;",
6
6
  "names": []
7
7
  }
package/dist/index.mjs CHANGED
@@ -98,7 +98,7 @@ function merge(origin, patch) {
98
98
  var platform = (v) => isDom() && v.test(navigator.platform);
99
99
  var ua = (v) => isDom() && v.test(navigator.userAgent);
100
100
  var isDev = () => void 0 !== "production";
101
- var isDom = () => !!(typeof window !== "undefined");
101
+ var isDom = () => typeof window !== "undefined";
102
102
  var isMac = () => platform(/^Mac/);
103
103
  var isIPhone = () => platform(/^iPhone/);
104
104
  var isIPad = () => platform(/^iPad/) || isMac() && navigator.maxTouchPoints > 1;
@@ -113,11 +113,12 @@ var isObject = (v) => !(v == null || typeof v !== "object" || isArray(v));
113
113
  var isNumber = (v) => typeof v === "number" && !Number.isNaN(v);
114
114
  var isString = (v) => typeof v === "string";
115
115
  var isFunction = (v) => typeof v === "function";
116
+ var hasProp = (obj, prop) => Object.prototype.hasOwnProperty.call(obj, prop);
116
117
  var supportsPointerEvent = () => isDom() && window.onpointerdown === null;
117
118
  var supportsTouchEvent = () => isDom() && window.ontouchstart === null;
118
119
  var supportsMouseEvent = () => isDom() && window.onmousedown === null;
119
- var isMouseEvent = (v) => isObject(v) && "button" in v;
120
- var isTouchEvent = (v) => isObject(v) && "touches" in v;
120
+ var isMouseEvent = (v) => isObject(v) && hasProp(v, "button");
121
+ var isTouchEvent = (v) => isObject(v) && hasProp(v, "touches");
121
122
  var isLeftClick = (v) => v.button === 0;
122
123
  var isRightClick = (v) => v.button === 2;
123
124
  var isModifiedEvent = (v) => v.ctrlKey || v.altKey || v.metaKey;
@@ -147,6 +148,7 @@ export {
147
148
  first,
148
149
  fromLength,
149
150
  has,
151
+ hasProp,
150
152
  invariant,
151
153
  isApple,
152
154
  isArray,
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../src/array.ts", "../src/functions.ts", "../src/guard.ts", "../src/warning.ts"],
4
- "sourcesContent": ["export function toArray<T>(v: T | T[] | undefined | null): T[] {\n if (!v) return []\n return Array.isArray(v) ? v : [v]\n}\n\nexport const fromLength = (length: number) => Array.from(Array(length).keys())\n\nexport const first = <T>(v: T[]): T | undefined => v[0]\n\nexport const last = <T>(v: T[]): T | undefined => v[v.length - 1]\n\nexport const isEmpty = <T>(v: T[]): boolean => v.length === 0\n\nexport const has = <T>(v: T[], t: any): boolean => v.indexOf(t) !== -1\n\nexport const add = <T>(v: T[], ...items: T[]): T[] => v.concat(items)\n\nexport const remove = <T>(v: T[], item: T): T[] => removeAt(v, v.indexOf(item))\n\nexport const removeAt = <T>(v: T[], i: number): T[] => {\n if (i > -1) v.splice(i, 1)\n return v\n}\n\nexport function clear<T>(v: T[]): T[] {\n while (v.length > 0) v.pop()\n return v\n}\n\nexport type IndexOptions = {\n step?: number\n loop?: boolean\n}\n\nexport function nextIndex<T>(v: T[], idx: number, opts: IndexOptions = {}): number {\n const { step = 1, loop = true } = opts\n const next = idx + step\n const len = v.length\n const last = len - 1\n if (idx === -1) return step > 0 ? 0 : last\n if (next < 0) return loop ? last : 0\n if (next >= len) return loop ? 0 : idx > len ? len : idx\n return next\n}\n\nexport function next<T>(v: T[], idx: number, opts: IndexOptions = {}): T | undefined {\n return v[nextIndex(v, idx, opts)]\n}\n\nexport function prevIndex<T>(v: T[], idx: number, opts: IndexOptions = {}): number {\n const { step = 1, loop = true } = opts\n return nextIndex(v, idx, { step: -step, loop })\n}\n\nexport function prev<T>(v: T[], index: number, opts: IndexOptions = {}): T | undefined {\n return v[prevIndex(v, index, opts)]\n}\n\nexport const chunk = <T>(v: T[], size: number): T[][] => {\n const res: T[][] = []\n return v.reduce((rows, value, index) => {\n if (index % size === 0) rows.push([value])\n else last(rows)?.push(value)\n return rows\n }, res)\n}\n", "export const runIfFn = <T>(\n v: T | undefined,\n ...a: T extends (...a: any[]) => void ? Parameters<T> : never\n): T extends (...a: any[]) => void ? NonNullable<ReturnType<T>> : NonNullable<T> => {\n const res = typeof v === \"function\" ? v(...a) : v\n return res ?? undefined\n}\n\nexport const cast = <T>(v: unknown): T => v as T\n\nexport const noop = () => {}\n\nexport const pipe =\n <T>(...fns: Array<(a: T) => T>) =>\n (v: T) =>\n fns.reduce((a, b) => b(a), v)\n\nexport const callAll =\n <T extends (...a: any[]) => void>(...fns: (T | undefined)[]) =>\n (...a: Parameters<T>) => {\n fns.forEach(function (fn) {\n fn?.(...a)\n })\n }\n\nexport const uuid = /*#__PURE__*/ (() => {\n let id = 0\n return () => {\n id++\n return id.toString(36)\n }\n})()\n\nexport function merge<T, U>(origin: T, patch: U): T & U {\n if (!(typeof patch === \"object\")) return patch as any\n const result = !(typeof origin === \"object\") ? {} : Object.assign({}, origin)\n for (const key of Object.keys(patch)) {\n const value = patch[key]\n const src = result[key]\n if (value === null) delete result[key]\n else if (Array.isArray(value) || Array.isArray(src)) result[key] = (src || []).concat(value || [])\n else result[key] = merge(src, value)\n }\n return result as any\n}\n", "const platform = (v: RegExp) => isDom() && v.test(navigator.platform)\nconst ua = (v: RegExp) => isDom() && v.test(navigator.userAgent)\n\nexport const isDev = () => process.env.NODE_ENV !== \"production\"\nexport const isDom = () => !!(typeof window !== \"undefined\")\nexport const isMac = () => platform(/^Mac/)\nexport const isIPhone = () => platform(/^iPhone/)\nexport const isIPad = () => platform(/^iPad/) || (isMac() && navigator.maxTouchPoints > 1)\nexport const isIos = () => isIPhone() || isIPad()\nexport const isSafari = () => ua(/^((?!chrome|android).)*safari/i)\nexport const isFirefox = () => ua(/^Firefox/)\nexport const isWebkit = () => ua(/^WebKit/) && !ua(/Chrome/)\nexport const isApple = () => isMac() || isIos()\n\nexport const isArray = (v: any): v is any[] => Array.isArray(v)\nexport const isBoolean = (v: any): v is boolean => v === true || v === false\nexport const isObject = (v: any): v is Record<string, any> => !(v == null || typeof v !== \"object\" || isArray(v))\nexport const isNumber = (v: any): v is number => typeof v === \"number\" && !Number.isNaN(v)\nexport const isString = (v: any): v is string => typeof v === \"string\"\nexport const isFunction = (v: any): v is Function => typeof v === \"function\"\n\nexport const supportsPointerEvent = () => isDom() && window.onpointerdown === null\nexport const supportsTouchEvent = () => isDom() && window.ontouchstart === null\nexport const supportsMouseEvent = () => isDom() && window.onmousedown === null\n\nexport const isMouseEvent = (v: any): v is MouseEvent => isObject(v) && \"button\" in v\nexport const isTouchEvent = (v: any): v is TouchEvent => isObject(v) && \"touches\" in v\nexport const isLeftClick = (v: MouseEvent | PointerEvent) => v.button === 0\nexport const isRightClick = (v: MouseEvent | PointerEvent) => v.button === 2\nexport const isModifiedEvent = (v: Pick<KeyboardEvent, \"ctrlKey\" | \"metaKey\" | \"altKey\">) =>\n v.ctrlKey || v.altKey || v.metaKey\nexport const isCtrlKey = (v: KeyboardEvent) => (isMac() ? v.metaKey && !v.ctrlKey : v.ctrlKey && !v.metaKey)\n", "export function warn(m: string): void\nexport function warn(c: boolean, m: string): void\nexport function warn(...a: any[]): void {\n const m = a.length === 1 ? a[0] : a[1]\n const c = a.length === 2 ? a[0] : true\n if (c && process.env.NODE_ENV !== \"production\") {\n console.warn(m)\n }\n}\n\nexport function invariant(m: string): void\nexport function invariant(c: boolean, m: string): void\nexport function invariant(...a: any[]): void {\n const m = a.length === 1 ? a[0] : a[1]\n const c = a.length === 2 ? a[0] : true\n if (c && process.env.NODE_ENV !== \"production\") {\n throw new Error(m)\n }\n}\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["export function toArray<T>(v: T | T[] | undefined | null): T[] {\n if (!v) return []\n return Array.isArray(v) ? v : [v]\n}\n\nexport const fromLength = (length: number) => Array.from(Array(length).keys())\n\nexport const first = <T>(v: T[]): T | undefined => v[0]\n\nexport const last = <T>(v: T[]): T | undefined => v[v.length - 1]\n\nexport const isEmpty = <T>(v: T[]): boolean => v.length === 0\n\nexport const has = <T>(v: T[], t: any): boolean => v.indexOf(t) !== -1\n\nexport const add = <T>(v: T[], ...items: T[]): T[] => v.concat(items)\n\nexport const remove = <T>(v: T[], item: T): T[] => removeAt(v, v.indexOf(item))\n\nexport const removeAt = <T>(v: T[], i: number): T[] => {\n if (i > -1) v.splice(i, 1)\n return v\n}\n\nexport function clear<T>(v: T[]): T[] {\n while (v.length > 0) v.pop()\n return v\n}\n\nexport type IndexOptions = {\n step?: number\n loop?: boolean\n}\n\nexport function nextIndex<T>(v: T[], idx: number, opts: IndexOptions = {}): number {\n const { step = 1, loop = true } = opts\n const next = idx + step\n const len = v.length\n const last = len - 1\n if (idx === -1) return step > 0 ? 0 : last\n if (next < 0) return loop ? last : 0\n if (next >= len) return loop ? 0 : idx > len ? len : idx\n return next\n}\n\nexport function next<T>(v: T[], idx: number, opts: IndexOptions = {}): T | undefined {\n return v[nextIndex(v, idx, opts)]\n}\n\nexport function prevIndex<T>(v: T[], idx: number, opts: IndexOptions = {}): number {\n const { step = 1, loop = true } = opts\n return nextIndex(v, idx, { step: -step, loop })\n}\n\nexport function prev<T>(v: T[], index: number, opts: IndexOptions = {}): T | undefined {\n return v[prevIndex(v, index, opts)]\n}\n\nexport const chunk = <T>(v: T[], size: number): T[][] => {\n const res: T[][] = []\n return v.reduce((rows, value, index) => {\n if (index % size === 0) rows.push([value])\n else last(rows)?.push(value)\n return rows\n }, res)\n}\n", "export const runIfFn = <T>(\n v: T | undefined,\n ...a: T extends (...a: any[]) => void ? Parameters<T> : never\n): T extends (...a: any[]) => void ? NonNullable<ReturnType<T>> : NonNullable<T> => {\n const res = typeof v === \"function\" ? v(...a) : v\n return res ?? undefined\n}\n\nexport const cast = <T>(v: unknown): T => v as T\n\nexport const noop = () => {}\n\nexport const pipe =\n <T>(...fns: Array<(a: T) => T>) =>\n (v: T) =>\n fns.reduce((a, b) => b(a), v)\n\nexport const callAll =\n <T extends (...a: any[]) => void>(...fns: (T | undefined)[]) =>\n (...a: Parameters<T>) => {\n fns.forEach(function (fn) {\n fn?.(...a)\n })\n }\n\nexport const uuid = /*#__PURE__*/ (() => {\n let id = 0\n return () => {\n id++\n return id.toString(36)\n }\n})()\n\nexport function merge<T, U>(origin: T, patch: U): T & U {\n if (!(typeof patch === \"object\")) return patch as any\n const result = !(typeof origin === \"object\") ? {} : Object.assign({}, origin)\n for (const key of Object.keys(patch)) {\n const value = patch[key]\n const src = result[key]\n if (value === null) delete result[key]\n else if (Array.isArray(value) || Array.isArray(src)) result[key] = (src || []).concat(value || [])\n else result[key] = merge(src, value)\n }\n return result as any\n}\n", "const platform = (v: RegExp) => isDom() && v.test(navigator.platform)\nconst ua = (v: RegExp) => isDom() && v.test(navigator.userAgent)\n\nexport const isDev = () => process.env.NODE_ENV !== \"production\"\nexport const isDom = () => typeof window !== \"undefined\"\nexport const isMac = () => platform(/^Mac/)\nexport const isIPhone = () => platform(/^iPhone/)\nexport const isIPad = () => platform(/^iPad/) || (isMac() && navigator.maxTouchPoints > 1)\nexport const isIos = () => isIPhone() || isIPad()\nexport const isSafari = () => ua(/^((?!chrome|android).)*safari/i)\nexport const isFirefox = () => ua(/^Firefox/)\nexport const isWebkit = () => ua(/^WebKit/) && !ua(/Chrome/)\nexport const isApple = () => isMac() || isIos()\n\nexport const isArray = (v: any): v is any[] => Array.isArray(v)\nexport const isBoolean = (v: any): v is boolean => v === true || v === false\nexport const isObject = (v: any): v is Record<string, any> => !(v == null || typeof v !== \"object\" || isArray(v))\nexport const isNumber = (v: any): v is number => typeof v === \"number\" && !Number.isNaN(v)\nexport const isString = (v: any): v is string => typeof v === \"string\"\nexport const isFunction = (v: any): v is Function => typeof v === \"function\"\n\nexport const hasProp = <T extends string>(obj: any, prop: T): obj is Record<T, any> =>\n Object.prototype.hasOwnProperty.call(obj, prop)\n\nexport const supportsPointerEvent = () => isDom() && window.onpointerdown === null\nexport const supportsTouchEvent = () => isDom() && window.ontouchstart === null\nexport const supportsMouseEvent = () => isDom() && window.onmousedown === null\n\nexport const isMouseEvent = (v: any): v is MouseEvent => isObject(v) && hasProp(v, \"button\")\nexport const isTouchEvent = (v: any): v is TouchEvent => isObject(v) && hasProp(v, \"touches\")\nexport const isLeftClick = (v: { button: number }) => v.button === 0\nexport const isRightClick = (v: { button: number }) => v.button === 2\nexport const isModifiedEvent = (v: Pick<KeyboardEvent, \"ctrlKey\" | \"metaKey\" | \"altKey\">) =>\n v.ctrlKey || v.altKey || v.metaKey\nexport const isCtrlKey = (v: Pick<KeyboardEvent, \"ctrlKey\" | \"metaKey\">) =>\n isMac() ? v.metaKey && !v.ctrlKey : v.ctrlKey && !v.metaKey\n", "export function warn(m: string): void\nexport function warn(c: boolean, m: string): void\nexport function warn(...a: any[]): void {\n const m = a.length === 1 ? a[0] : a[1]\n const c = a.length === 2 ? a[0] : true\n if (c && process.env.NODE_ENV !== \"production\") {\n console.warn(m)\n }\n}\n\nexport function invariant(m: string): void\nexport function invariant(c: boolean, m: string): void\nexport function invariant(...a: any[]): void {\n const m = a.length === 1 ? a[0] : a[1]\n const c = a.length === 2 ? a[0] : true\n if (c && process.env.NODE_ENV !== \"production\") {\n throw new Error(m)\n }\n}\n"],
5
+ "mappings": "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",
6
6
  "names": []
7
7
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zag-js/utils",
3
- "version": "0.0.0-dev-20220510084727",
3
+ "version": "0.0.0-dev-20220604091726",
4
4
  "description": "",
5
5
  "keywords": [
6
6
  "js",