yummies 5.11.0 → 5.11.1

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "yummies",
3
- "version": "5.11.0",
3
+ "version": "5.11.1",
4
4
  "keywords": [
5
5
  "javascript",
6
6
  "typescript",
@@ -79,7 +79,7 @@
79
79
  "./complex": {
80
80
  "import": "./complex.js",
81
81
  "default": "./complex.js",
82
- "types": "./complex.d.ts",
82
+ "types": "./complex/index.d.ts",
83
83
  "require": "./complex.cjs"
84
84
  },
85
85
  "./cookie": {
@@ -133,7 +133,7 @@
133
133
  "./format": {
134
134
  "import": "./format.js",
135
135
  "default": "./format.js",
136
- "types": "./format.d.ts",
136
+ "types": "./format/index.d.ts",
137
137
  "require": "./format.cjs"
138
138
  },
139
139
  "./html": {
@@ -169,7 +169,7 @@
169
169
  "./mobx": {
170
170
  "import": "./mobx.js",
171
171
  "default": "./mobx.js",
172
- "types": "./mobx.d.ts",
172
+ "types": "./mobx/index.d.ts",
173
173
  "require": "./mobx.cjs"
174
174
  },
175
175
  "./ms": {
@@ -187,7 +187,7 @@
187
187
  "./parser": {
188
188
  "import": "./parser.js",
189
189
  "default": "./parser.js",
190
- "types": "./parser.d.ts",
190
+ "types": "./parser/index.d.ts",
191
191
  "require": "./parser.cjs"
192
192
  },
193
193
  "./price": {
@@ -205,7 +205,7 @@
205
205
  "./react": {
206
206
  "import": "./react.js",
207
207
  "default": "./react.js",
208
- "types": "./react.d.ts",
208
+ "types": "./react/index.d.ts",
209
209
  "require": "./react.cjs"
210
210
  },
211
211
  "./sound": {
@@ -223,7 +223,7 @@
223
223
  "./type-guard": {
224
224
  "import": "./type-guard.js",
225
225
  "default": "./type-guard.js",
226
- "types": "./type-guard.d.ts",
226
+ "types": "./type-guard/index.d.ts",
227
227
  "require": "./type-guard.cjs"
228
228
  },
229
229
  "./utility-types": {
package/parser.cjs CHANGED
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("./~number-B1MpW9GU.js"),u=require("yummies/type-guard"),l=(r,e,t)=>n.number(Number(r)/Number(e)*100,t),o=(r,e)=>{const t=e&&"fallback"in e?e.fallback:"";return r==null?t:u.typeGuard.isObject(r)?e?.prettyJson?JSON.stringify(r,null,2):JSON.stringify(r):String(r)},b=Object.freeze(Object.defineProperty({__proto__:null,number:n.number,percent:l,string:o},Symbol.toStringTag,{value:"Module"}));exports.parser=b;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("yummies/format"),i=require("yummies/type-guard"),n=(r,l)=>{const t={...n.defaultSettings,...l},a=t?.fallback??0;let e;if(i.typeGuard.isNumber(r))e=r;else if(i.typeGuard.isString(r)){const f=o.format.skipSpaces(r).replace(",",".");f===""?e=a:e=Number(f)}else e=a;return i.typeGuard.isNumber(e)?(t?.clamped!=null&&(e=Math.max(t.clamped[0]??-1/0,Math.min(e,t.clamped[1]??1/0))),t?.ceil!=null&&(e=Math.ceil(e)),t?.floor!=null&&(e=Math.floor(e)),t?.digits!=null&&(e=+e.toFixed(t.digits)),e):a};n.defaultSettings={};const s=(r,l,t)=>n(Number(r)/Number(l)*100,t),u=(r,l)=>{const t=l&&"fallback"in l?l.fallback:"";return r==null?t:i.typeGuard.isObject(r)?l?.prettyJson?JSON.stringify(r,null,2):JSON.stringify(r):String(r)},c=Object.freeze(Object.defineProperty({__proto__:null,number:n,percent:s,string:u},Symbol.toStringTag,{value:"Module"}));exports.parser=c;
2
2
  //# sourceMappingURL=parser.cjs.map
package/parser.cjs.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"parser.cjs","sources":["../src/parser/percent.ts","../src/parser/string.ts"],"sourcesContent":["import type { Maybe } from 'yummies/utils/types';\n\nimport { type NumberParserSettings, number } from './number.js';\n\nexport const percent = <TFallback = number>(\n value: Maybe<string | number>,\n maxValue?: Maybe<string | number>,\n settings?: Maybe<NumberParserSettings<TFallback>>,\n) => {\n return number<TFallback>((Number(value) / Number(maxValue)) * 100, settings);\n};\n","import { typeGuard } from 'yummies/type-guard';\nimport type { Maybe } from 'yummies/utils/types';\n\nexport interface StringParserSettings<TFallback = string> {\n fallback?: TFallback;\n prettyJson?: boolean;\n}\n\nexport const string = <TFallback = string>(\n input: Maybe<unknown>,\n settings?: Maybe<StringParserSettings<TFallback>>,\n): string | TFallback => {\n const fallback =\n settings && 'fallback' in settings ? (settings.fallback as TFallback) : '';\n\n if (input == null) {\n return fallback;\n }\n\n if (typeGuard.isObject(input)) {\n if (settings?.prettyJson) {\n return JSON.stringify(input, null, 2);\n }\n\n return JSON.stringify(input);\n }\n\n return String(input);\n};\n"],"names":["percent","value","maxValue","settings","number","string","input","fallback","typeGuard"],"mappings":"yJAIaA,EAAU,CACrBC,EACAC,EACAC,IAEOC,EAAAA,OAAmB,OAAOH,CAAK,EAAI,OAAOC,CAAQ,EAAK,IAAKC,CAAQ,ECDhEE,EAAS,CACpBC,EACAH,IACuB,CACvB,MAAMI,EACJJ,GAAY,aAAcA,EAAYA,EAAS,SAAyB,GAE1E,OAAIG,GAAS,KACJC,EAGLC,EAAAA,UAAU,SAASF,CAAK,EACtBH,GAAU,WACL,KAAK,UAAUG,EAAO,KAAM,CAAC,EAG/B,KAAK,UAAUA,CAAK,EAGtB,OAAOA,CAAK,CACrB"}
1
+ {"version":3,"file":"parser.cjs","sources":["../src/parser/number.ts","../src/parser/percent.ts","../src/parser/string.ts"],"sourcesContent":["import { format } from 'yummies/format';\nimport { typeGuard } from 'yummies/type-guard';\nimport type { Maybe } from 'yummies/utils/types';\n\nexport interface NumberParserSettings<TFallback = number> {\n digits?: number;\n fallback?: TFallback;\n /**\n * Round to upper boundary\n * 5.1 -> 6\n */\n ceil?: boolean;\n /**\n * Round to bottom boundary\n * 5.9 -> 5\n */\n floor?: boolean;\n clamped?: [min?: Maybe<number>, max?: Maybe<number>];\n}\n\nexport const number = <TFallback = number>(\n input: Maybe<unknown>,\n userSettings?: Maybe<NumberParserSettings<TFallback>>,\n): number | TFallback => {\n const settings = {\n ...number.defaultSettings,\n ...userSettings,\n };\n\n const fallback = settings?.fallback ?? 0;\n\n let result: number;\n\n if (typeGuard.isNumber(input)) {\n result = input;\n } else if (typeGuard.isString(input)) {\n const formattedInput = format.skipSpaces(input).replace(',', '.');\n if (formattedInput === '') {\n result = fallback as any;\n } else {\n result = Number(formattedInput);\n }\n } else {\n result = fallback as any;\n }\n\n if (typeGuard.isNumber(result)) {\n if (settings?.clamped != null) {\n result = Math.max(\n settings.clamped[0] ?? -Infinity,\n Math.min(result, settings.clamped[1] ?? Infinity),\n );\n }\n\n if (settings?.ceil != null) {\n result = Math.ceil(result);\n }\n\n if (settings?.floor != null) {\n result = Math.floor(result);\n }\n\n if (settings?.digits != null) {\n result = +result.toFixed(settings.digits);\n }\n\n return result;\n } else {\n return fallback;\n }\n};\n\nnumber.defaultSettings = {} as NumberParserSettings;\n","import type { Maybe } from 'yummies/utils/types';\n\nimport { type NumberParserSettings, number } from './number.js';\n\nexport const percent = <TFallback = number>(\n value: Maybe<string | number>,\n maxValue?: Maybe<string | number>,\n settings?: Maybe<NumberParserSettings<TFallback>>,\n) => {\n return number<TFallback>((Number(value) / Number(maxValue)) * 100, settings);\n};\n","import { typeGuard } from 'yummies/type-guard';\nimport type { Maybe } from 'yummies/utils/types';\n\nexport interface StringParserSettings<TFallback = string> {\n fallback?: TFallback;\n prettyJson?: boolean;\n}\n\nexport const string = <TFallback = string>(\n input: Maybe<unknown>,\n settings?: Maybe<StringParserSettings<TFallback>>,\n): string | TFallback => {\n const fallback =\n settings && 'fallback' in settings ? (settings.fallback as TFallback) : '';\n\n if (input == null) {\n return fallback;\n }\n\n if (typeGuard.isObject(input)) {\n if (settings?.prettyJson) {\n return JSON.stringify(input, null, 2);\n }\n\n return JSON.stringify(input);\n }\n\n return String(input);\n};\n"],"names":["number","input","userSettings","settings","fallback","result","typeGuard","formattedInput","format","percent","value","maxValue","string"],"mappings":"kJAoBaA,EAAS,CACpBC,EACAC,IACuB,CACvB,MAAMC,EAAW,CACf,GAAGH,EAAO,gBACV,GAAGE,CAAA,EAGCE,EAAWD,GAAU,UAAY,EAEvC,IAAIE,EAEJ,GAAIC,EAAAA,UAAU,SAASL,CAAK,EAC1BI,EAASJ,UACAK,EAAAA,UAAU,SAASL,CAAK,EAAG,CACpC,MAAMM,EAAiBC,EAAAA,OAAO,WAAWP,CAAK,EAAE,QAAQ,IAAK,GAAG,EAC5DM,IAAmB,GACrBF,EAASD,EAETC,EAAS,OAAOE,CAAc,CAElC,MACEF,EAASD,EAGX,OAAIE,EAAAA,UAAU,SAASD,CAAM,GACvBF,GAAU,SAAW,OACvBE,EAAS,KAAK,IACZF,EAAS,QAAQ,CAAC,GAAK,KACvB,KAAK,IAAIE,EAAQF,EAAS,QAAQ,CAAC,GAAK,GAAQ,CAAA,GAIhDA,GAAU,MAAQ,OACpBE,EAAS,KAAK,KAAKA,CAAM,GAGvBF,GAAU,OAAS,OACrBE,EAAS,KAAK,MAAMA,CAAM,GAGxBF,GAAU,QAAU,OACtBE,EAAS,CAACA,EAAO,QAAQF,EAAS,MAAM,GAGnCE,GAEAD,CAEX,EAEAJ,EAAO,gBAAkB,CAAA,ECpElB,MAAMS,EAAU,CACrBC,EACAC,EACAR,IAEOH,EAAmB,OAAOU,CAAK,EAAI,OAAOC,CAAQ,EAAK,IAAKR,CAAQ,ECDhES,EAAS,CACpBX,EACAE,IACuB,CACvB,MAAMC,EACJD,GAAY,aAAcA,EAAYA,EAAS,SAAyB,GAE1E,OAAIF,GAAS,KACJG,EAGLE,EAAAA,UAAU,SAASL,CAAK,EACtBE,GAAU,WACL,KAAK,UAAUF,EAAO,KAAM,CAAC,EAG/B,KAAK,UAAUA,CAAK,EAGtB,OAAOA,CAAK,CACrB"}
package/parser.js CHANGED
@@ -1,13 +1,32 @@
1
- import { n as o } from "./~number-EWff2XI6.js";
2
- import { typeGuard as n } from "yummies/type-guard";
3
- const l = (r, e, t) => o(Number(r) / Number(e) * 100, t), a = (r, e) => {
4
- const t = e && "fallback" in e ? e.fallback : "";
5
- return r == null ? t : n.isObject(r) ? e?.prettyJson ? JSON.stringify(r, null, 2) : JSON.stringify(r) : String(r);
1
+ import { format as o } from "yummies/format";
2
+ import { typeGuard as i } from "yummies/type-guard";
3
+ const n = (r, l) => {
4
+ const t = {
5
+ ...n.defaultSettings,
6
+ ...l
7
+ }, f = t?.fallback ?? 0;
8
+ let e;
9
+ if (i.isNumber(r))
10
+ e = r;
11
+ else if (i.isString(r)) {
12
+ const a = o.skipSpaces(r).replace(",", ".");
13
+ a === "" ? e = f : e = Number(a);
14
+ } else
15
+ e = f;
16
+ return i.isNumber(e) ? (t?.clamped != null && (e = Math.max(
17
+ t.clamped[0] ?? -1 / 0,
18
+ Math.min(e, t.clamped[1] ?? 1 / 0)
19
+ )), t?.ceil != null && (e = Math.ceil(e)), t?.floor != null && (e = Math.floor(e)), t?.digits != null && (e = +e.toFixed(t.digits)), e) : f;
20
+ };
21
+ n.defaultSettings = {};
22
+ const s = (r, l, t) => n(Number(r) / Number(l) * 100, t), c = (r, l) => {
23
+ const t = l && "fallback" in l ? l.fallback : "";
24
+ return r == null ? t : i.isObject(r) ? l?.prettyJson ? JSON.stringify(r, null, 2) : JSON.stringify(r) : String(r);
6
25
  }, b = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
7
26
  __proto__: null,
8
- number: o,
9
- percent: l,
10
- string: a
27
+ number: n,
28
+ percent: s,
29
+ string: c
11
30
  }, Symbol.toStringTag, { value: "Module" }));
12
31
  export {
13
32
  b as parser
package/parser.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"parser.js","sources":["../src/parser/percent.ts","../src/parser/string.ts"],"sourcesContent":["import type { Maybe } from 'yummies/utils/types';\n\nimport { type NumberParserSettings, number } from './number.js';\n\nexport const percent = <TFallback = number>(\n value: Maybe<string | number>,\n maxValue?: Maybe<string | number>,\n settings?: Maybe<NumberParserSettings<TFallback>>,\n) => {\n return number<TFallback>((Number(value) / Number(maxValue)) * 100, settings);\n};\n","import { typeGuard } from 'yummies/type-guard';\nimport type { Maybe } from 'yummies/utils/types';\n\nexport interface StringParserSettings<TFallback = string> {\n fallback?: TFallback;\n prettyJson?: boolean;\n}\n\nexport const string = <TFallback = string>(\n input: Maybe<unknown>,\n settings?: Maybe<StringParserSettings<TFallback>>,\n): string | TFallback => {\n const fallback =\n settings && 'fallback' in settings ? (settings.fallback as TFallback) : '';\n\n if (input == null) {\n return fallback;\n }\n\n if (typeGuard.isObject(input)) {\n if (settings?.prettyJson) {\n return JSON.stringify(input, null, 2);\n }\n\n return JSON.stringify(input);\n }\n\n return String(input);\n};\n"],"names":["percent","value","maxValue","settings","number","string","input","fallback","typeGuard"],"mappings":";;AAIO,MAAMA,IAAU,CACrBC,GACAC,GACAC,MAEOC,EAAmB,OAAOH,CAAK,IAAI,OAAOC,CAAQ,IAAK,KAAKC,CAAQ,GCDhEE,IAAS,CACpBC,GACAH,MACuB;AACvB,QAAMI,IACJJ,KAAY,cAAcA,IAAYA,EAAS,WAAyB;AAE1E,SAAIG,KAAS,OACJC,IAGLC,EAAU,SAASF,CAAK,IACtBH,GAAU,aACL,KAAK,UAAUG,GAAO,MAAM,CAAC,IAG/B,KAAK,UAAUA,CAAK,IAGtB,OAAOA,CAAK;AACrB;;;;;;"}
1
+ {"version":3,"file":"parser.js","sources":["../src/parser/number.ts","../src/parser/percent.ts","../src/parser/string.ts"],"sourcesContent":["import { format } from 'yummies/format';\nimport { typeGuard } from 'yummies/type-guard';\nimport type { Maybe } from 'yummies/utils/types';\n\nexport interface NumberParserSettings<TFallback = number> {\n digits?: number;\n fallback?: TFallback;\n /**\n * Round to upper boundary\n * 5.1 -> 6\n */\n ceil?: boolean;\n /**\n * Round to bottom boundary\n * 5.9 -> 5\n */\n floor?: boolean;\n clamped?: [min?: Maybe<number>, max?: Maybe<number>];\n}\n\nexport const number = <TFallback = number>(\n input: Maybe<unknown>,\n userSettings?: Maybe<NumberParserSettings<TFallback>>,\n): number | TFallback => {\n const settings = {\n ...number.defaultSettings,\n ...userSettings,\n };\n\n const fallback = settings?.fallback ?? 0;\n\n let result: number;\n\n if (typeGuard.isNumber(input)) {\n result = input;\n } else if (typeGuard.isString(input)) {\n const formattedInput = format.skipSpaces(input).replace(',', '.');\n if (formattedInput === '') {\n result = fallback as any;\n } else {\n result = Number(formattedInput);\n }\n } else {\n result = fallback as any;\n }\n\n if (typeGuard.isNumber(result)) {\n if (settings?.clamped != null) {\n result = Math.max(\n settings.clamped[0] ?? -Infinity,\n Math.min(result, settings.clamped[1] ?? Infinity),\n );\n }\n\n if (settings?.ceil != null) {\n result = Math.ceil(result);\n }\n\n if (settings?.floor != null) {\n result = Math.floor(result);\n }\n\n if (settings?.digits != null) {\n result = +result.toFixed(settings.digits);\n }\n\n return result;\n } else {\n return fallback;\n }\n};\n\nnumber.defaultSettings = {} as NumberParserSettings;\n","import type { Maybe } from 'yummies/utils/types';\n\nimport { type NumberParserSettings, number } from './number.js';\n\nexport const percent = <TFallback = number>(\n value: Maybe<string | number>,\n maxValue?: Maybe<string | number>,\n settings?: Maybe<NumberParserSettings<TFallback>>,\n) => {\n return number<TFallback>((Number(value) / Number(maxValue)) * 100, settings);\n};\n","import { typeGuard } from 'yummies/type-guard';\nimport type { Maybe } from 'yummies/utils/types';\n\nexport interface StringParserSettings<TFallback = string> {\n fallback?: TFallback;\n prettyJson?: boolean;\n}\n\nexport const string = <TFallback = string>(\n input: Maybe<unknown>,\n settings?: Maybe<StringParserSettings<TFallback>>,\n): string | TFallback => {\n const fallback =\n settings && 'fallback' in settings ? (settings.fallback as TFallback) : '';\n\n if (input == null) {\n return fallback;\n }\n\n if (typeGuard.isObject(input)) {\n if (settings?.prettyJson) {\n return JSON.stringify(input, null, 2);\n }\n\n return JSON.stringify(input);\n }\n\n return String(input);\n};\n"],"names":["number","input","userSettings","settings","fallback","result","typeGuard","formattedInput","format","percent","value","maxValue","string"],"mappings":";;AAoBO,MAAMA,IAAS,CACpBC,GACAC,MACuB;AACvB,QAAMC,IAAW;AAAA,IACf,GAAGH,EAAO;AAAA,IACV,GAAGE;AAAA,EAAA,GAGCE,IAAWD,GAAU,YAAY;AAEvC,MAAIE;AAEJ,MAAIC,EAAU,SAASL,CAAK;AAC1B,IAAAI,IAASJ;AAAA,WACAK,EAAU,SAASL,CAAK,GAAG;AACpC,UAAMM,IAAiBC,EAAO,WAAWP,CAAK,EAAE,QAAQ,KAAK,GAAG;AAChE,IAAIM,MAAmB,KACrBF,IAASD,IAETC,IAAS,OAAOE,CAAc;AAAA,EAElC;AACE,IAAAF,IAASD;AAGX,SAAIE,EAAU,SAASD,CAAM,KACvBF,GAAU,WAAW,SACvBE,IAAS,KAAK;AAAA,IACZF,EAAS,QAAQ,CAAC,KAAK;AAAA,IACvB,KAAK,IAAIE,GAAQF,EAAS,QAAQ,CAAC,KAAK,KAAQ;AAAA,EAAA,IAIhDA,GAAU,QAAQ,SACpBE,IAAS,KAAK,KAAKA,CAAM,IAGvBF,GAAU,SAAS,SACrBE,IAAS,KAAK,MAAMA,CAAM,IAGxBF,GAAU,UAAU,SACtBE,IAAS,CAACA,EAAO,QAAQF,EAAS,MAAM,IAGnCE,KAEAD;AAEX;AAEAJ,EAAO,kBAAkB,CAAA;ACpElB,MAAMS,IAAU,CACrBC,GACAC,GACAR,MAEOH,EAAmB,OAAOU,CAAK,IAAI,OAAOC,CAAQ,IAAK,KAAKR,CAAQ,GCDhES,IAAS,CACpBX,GACAE,MACuB;AACvB,QAAMC,IACJD,KAAY,cAAcA,IAAYA,EAAS,WAAyB;AAE1E,SAAIF,KAAS,OACJG,IAGLE,EAAU,SAASL,CAAK,IACtBE,GAAU,aACL,KAAK,UAAUF,GAAO,MAAM,CAAC,IAG/B,KAAK,UAAUA,CAAK,IAGtB,OAAOA,CAAK;AACrB;;;;;;"}
package/type-guard.cjs CHANGED
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./~index-PKNbSTT-.js");exports.typeGuard=e._exports;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});function o(t){if(t===void 0)return"undefined";if(t===null)return"null";if(t&&(t.nodeType===1||t.nodeType===9))return"element";const n=Object.prototype.toString.call(t);if(n==="[object Number]"){if(Number.isNaN(t))return"nan";if(!Number.isFinite(t))return"infinite"}return n}const e=t=>n=>o(n)===t,i=t=>t!=null,r=e("null"),c=e("undefined"),s=e("[object Object]"),b=e("[object Array]"),u=e("[object String]"),l=e("[object Number]"),f=e("[object Boolean]"),d=e("[object Function]"),j=e("[object RegExp]"),y=e("element"),p=e("nan"),m=e("infinite"),g=e("[object Symbol]"),a=Object.freeze(Object.defineProperty({__proto__:null,isArray:b,isBoolean:f,isDefined:i,isElement:y,isFunction:d,isInfinite:m,isNaN:p,isNull:r,isNumber:l,isObject:s,isRegExp:j,isString:u,isSymbol:g,isUndefined:c},Symbol.toStringTag,{value:"Module"}));exports.typeGuard=a;
2
2
  //# sourceMappingURL=type-guard.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"type-guard.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
1
+ {"version":3,"file":"type-guard.cjs","sources":["../src/type-guard/_exports.ts"],"sourcesContent":["import type { AnyFunction, AnyObject } from 'yummies/utils/types';\n\nenum Type {\n Null = 'null',\n Undefined = 'undefined',\n NaN = 'nan',\n Object = '[object Object]',\n Array = '[object Array]',\n String = '[object String]',\n Number = '[object Number]',\n Boolean = '[object Boolean]',\n Function = '[object Function]',\n RegExp = '[object RegExp]',\n Symbol = '[object Symbol]',\n Infinite = 'infinite',\n Element = 'element',\n}\n\nfunction getType(value: unknown): Type {\n if (value === undefined) {\n return Type.Undefined;\n }\n if (value === null) {\n return Type.Null;\n }\n\n // handle DOM elements\n // @ts-expect-error\n if (value && (value.nodeType === 1 || value.nodeType === 9)) {\n return Type.Element;\n }\n\n const stringifiedValue = Object.prototype.toString.call(value);\n\n // handle NaN and Infinity\n if (stringifiedValue === Type.Number) {\n if (Number.isNaN(value as number)) {\n return Type.NaN;\n }\n if (!Number.isFinite(value as number)) {\n return Type.Infinite;\n }\n }\n\n return stringifiedValue as Type;\n}\n\nconst createTypeGuard =\n <T>(type: Type) =>\n (value: unknown): value is T =>\n getType(value) === type;\n\n/**\n * Check if a value is not null or undefined\n * @param value the value to check\n * @returns boolean\n */\nexport const isDefined = <T>(value: T | undefined | null): value is T =>\n value != null;\n\n/**\n * Check if a value is null\n * @param value the value to check\n * @returns boolean\n */\nexport const isNull = createTypeGuard<null>(Type.Null);\n\n/**\n * Check if a value is undefined\n * @param value the value to check\n * @returns boolean\n */\nexport const isUndefined = createTypeGuard<undefined>(Type.Undefined);\n\n/**\n * Check if a value is an object\n * @param value the value to check\n * @returns boolean\n */\nexport const isObject = createTypeGuard<AnyObject>(Type.Object);\n\n/**\n * Check if a value is an array\n * @param value the value to check\n * @returns boolean\n */\nexport const isArray = createTypeGuard<unknown[]>(Type.Array);\n\n/**\n * Check if a value is a string\n * @param value the value to check\n * @returns boolean\n */\nexport const isString = createTypeGuard<string>(Type.String);\n\n/**\n * Check if a value is a number\n * @param value the value to check\n * @returns boolean\n */\nexport const isNumber = createTypeGuard<number>(Type.Number);\n\n/**\n * Check if a value is a boolean\n * @param value the value to check\n * @returns boolean\n */\nexport const isBoolean = createTypeGuard<boolean>(Type.Boolean);\n\n/**\n * Check if a value is a function\n * @param value the value to check\n * @returns boolean\n */\nexport const isFunction = createTypeGuard<AnyFunction>(Type.Function);\n\n/**\n * Check if a value is a regular expression\n * @param value the value to check\n * @returns boolean\n */\nexport const isRegExp = createTypeGuard<RegExp>(Type.RegExp);\n\n/**\n * Check if a value is a DOM element\n * @param value the value to check\n * @returns boolean\n */\nexport const isElement = createTypeGuard<HTMLElement>(Type.Element);\n\n/**\n * Check if a value is NaN\n * @param value the value to check\n * @returns boolean\n */\nexport const isNaN = createTypeGuard<number>(Type.NaN) as (\n value: unknown,\n) => boolean;\n\n/**\n * Check if a value is infinity\n * @param value the value to check\n * @returns boolean\n */\nexport const isInfinite = createTypeGuard<number>(Type.Infinite) as (\n value: unknown,\n) => boolean;\n\n/**\n * Check if a value is a symbol\n * @param value the value to check\n * @returns boolean\n */\nexport const isSymbol = createTypeGuard<symbol>(Type.Symbol);\n"],"names":["getType","value","stringifiedValue","createTypeGuard","type","isDefined","isNull","isUndefined","isObject","isArray","isString","isNumber","isBoolean","isFunction","isRegExp","isElement","isNaN","isInfinite","isSymbol"],"mappings":"gFAkBA,SAASA,EAAQC,EAAsB,CACrC,GAAIA,IAAU,OACZ,MAAO,YAET,GAAIA,IAAU,KACZ,MAAO,OAKT,GAAIA,IAAUA,EAAM,WAAa,GAAKA,EAAM,WAAa,GACvD,MAAO,UAGT,MAAMC,EAAmB,OAAO,UAAU,SAAS,KAAKD,CAAK,EAG7D,GAAIC,IAAqB,kBAAa,CACpC,GAAI,OAAO,MAAMD,CAAe,EAC9B,MAAO,MAET,GAAI,CAAC,OAAO,SAASA,CAAe,EAClC,MAAO,UAEX,CAEA,OAAOC,CACT,CAEA,MAAMC,EACAC,GACHH,GACCD,EAAQC,CAAK,IAAMG,EAOVC,EAAgBJ,GAC3BA,GAAS,KAOEK,EAASH,EAAsB,MAAA,EAO/BI,EAAcJ,EAA2B,WAAA,EAOzCK,EAAWL,EAA2B,iBAAA,EAOtCM,EAAUN,EAA2B,gBAAA,EAOrCO,EAAWP,EAAwB,iBAAA,EAOnCQ,EAAWR,EAAwB,iBAAA,EAOnCS,EAAYT,EAAyB,kBAAA,EAOrCU,EAAaV,EAA6B,mBAAA,EAO1CW,EAAWX,EAAwB,iBAAA,EAOnCY,EAAYZ,EAA6B,SAAA,EAOzCa,EAAQb,EAAwB,KAAA,EAShCc,EAAad,EAAwB,UAAA,EASrCe,EAAWf,EAAwB,iBAAA"}
package/type-guard.js CHANGED
@@ -1,5 +1,76 @@
1
- import { _ as e } from "./~index-C3wKHvHr.js";
1
+ function o(n) {
2
+ if (n === void 0)
3
+ return "undefined";
4
+ if (n === null)
5
+ return "null";
6
+ if (n && (n.nodeType === 1 || n.nodeType === 9))
7
+ return "element";
8
+ const t = Object.prototype.toString.call(n);
9
+ if (t === "[object Number]") {
10
+ if (Number.isNaN(n))
11
+ return "nan";
12
+ if (!Number.isFinite(n))
13
+ return "infinite";
14
+ }
15
+ return t;
16
+ }
17
+ const e = (n) => (t) => o(t) === n, i = (n) => n != null, c = e(
18
+ "null"
19
+ /* Null */
20
+ ), r = e(
21
+ "undefined"
22
+ /* Undefined */
23
+ ), s = e(
24
+ "[object Object]"
25
+ /* Object */
26
+ ), b = e(
27
+ "[object Array]"
28
+ /* Array */
29
+ ), u = e(
30
+ "[object String]"
31
+ /* String */
32
+ ), l = e(
33
+ "[object Number]"
34
+ /* Number */
35
+ ), f = e(
36
+ "[object Boolean]"
37
+ /* Boolean */
38
+ ), d = e(
39
+ "[object Function]"
40
+ /* Function */
41
+ ), j = e(
42
+ "[object RegExp]"
43
+ /* RegExp */
44
+ ), p = e(
45
+ "element"
46
+ /* Element */
47
+ ), y = e(
48
+ "nan"
49
+ /* NaN */
50
+ ), m = e(
51
+ "infinite"
52
+ /* Infinite */
53
+ ), N = e(
54
+ "[object Symbol]"
55
+ /* Symbol */
56
+ ), a = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
57
+ __proto__: null,
58
+ isArray: b,
59
+ isBoolean: f,
60
+ isDefined: i,
61
+ isElement: p,
62
+ isFunction: d,
63
+ isInfinite: m,
64
+ isNaN: y,
65
+ isNull: c,
66
+ isNumber: l,
67
+ isObject: s,
68
+ isRegExp: j,
69
+ isString: u,
70
+ isSymbol: N,
71
+ isUndefined: r
72
+ }, Symbol.toStringTag, { value: "Module" }));
2
73
  export {
3
- e as typeGuard
74
+ a as typeGuard
4
75
  };
5
76
  //# sourceMappingURL=type-guard.js.map
package/type-guard.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"type-guard.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
1
+ {"version":3,"file":"type-guard.js","sources":["../src/type-guard/_exports.ts"],"sourcesContent":["import type { AnyFunction, AnyObject } from 'yummies/utils/types';\n\nenum Type {\n Null = 'null',\n Undefined = 'undefined',\n NaN = 'nan',\n Object = '[object Object]',\n Array = '[object Array]',\n String = '[object String]',\n Number = '[object Number]',\n Boolean = '[object Boolean]',\n Function = '[object Function]',\n RegExp = '[object RegExp]',\n Symbol = '[object Symbol]',\n Infinite = 'infinite',\n Element = 'element',\n}\n\nfunction getType(value: unknown): Type {\n if (value === undefined) {\n return Type.Undefined;\n }\n if (value === null) {\n return Type.Null;\n }\n\n // handle DOM elements\n // @ts-expect-error\n if (value && (value.nodeType === 1 || value.nodeType === 9)) {\n return Type.Element;\n }\n\n const stringifiedValue = Object.prototype.toString.call(value);\n\n // handle NaN and Infinity\n if (stringifiedValue === Type.Number) {\n if (Number.isNaN(value as number)) {\n return Type.NaN;\n }\n if (!Number.isFinite(value as number)) {\n return Type.Infinite;\n }\n }\n\n return stringifiedValue as Type;\n}\n\nconst createTypeGuard =\n <T>(type: Type) =>\n (value: unknown): value is T =>\n getType(value) === type;\n\n/**\n * Check if a value is not null or undefined\n * @param value the value to check\n * @returns boolean\n */\nexport const isDefined = <T>(value: T | undefined | null): value is T =>\n value != null;\n\n/**\n * Check if a value is null\n * @param value the value to check\n * @returns boolean\n */\nexport const isNull = createTypeGuard<null>(Type.Null);\n\n/**\n * Check if a value is undefined\n * @param value the value to check\n * @returns boolean\n */\nexport const isUndefined = createTypeGuard<undefined>(Type.Undefined);\n\n/**\n * Check if a value is an object\n * @param value the value to check\n * @returns boolean\n */\nexport const isObject = createTypeGuard<AnyObject>(Type.Object);\n\n/**\n * Check if a value is an array\n * @param value the value to check\n * @returns boolean\n */\nexport const isArray = createTypeGuard<unknown[]>(Type.Array);\n\n/**\n * Check if a value is a string\n * @param value the value to check\n * @returns boolean\n */\nexport const isString = createTypeGuard<string>(Type.String);\n\n/**\n * Check if a value is a number\n * @param value the value to check\n * @returns boolean\n */\nexport const isNumber = createTypeGuard<number>(Type.Number);\n\n/**\n * Check if a value is a boolean\n * @param value the value to check\n * @returns boolean\n */\nexport const isBoolean = createTypeGuard<boolean>(Type.Boolean);\n\n/**\n * Check if a value is a function\n * @param value the value to check\n * @returns boolean\n */\nexport const isFunction = createTypeGuard<AnyFunction>(Type.Function);\n\n/**\n * Check if a value is a regular expression\n * @param value the value to check\n * @returns boolean\n */\nexport const isRegExp = createTypeGuard<RegExp>(Type.RegExp);\n\n/**\n * Check if a value is a DOM element\n * @param value the value to check\n * @returns boolean\n */\nexport const isElement = createTypeGuard<HTMLElement>(Type.Element);\n\n/**\n * Check if a value is NaN\n * @param value the value to check\n * @returns boolean\n */\nexport const isNaN = createTypeGuard<number>(Type.NaN) as (\n value: unknown,\n) => boolean;\n\n/**\n * Check if a value is infinity\n * @param value the value to check\n * @returns boolean\n */\nexport const isInfinite = createTypeGuard<number>(Type.Infinite) as (\n value: unknown,\n) => boolean;\n\n/**\n * Check if a value is a symbol\n * @param value the value to check\n * @returns boolean\n */\nexport const isSymbol = createTypeGuard<symbol>(Type.Symbol);\n"],"names":["getType","value","stringifiedValue","createTypeGuard","type","isDefined","isNull","isUndefined","isObject","isArray","isString","isNumber","isBoolean","isFunction","isRegExp","isElement","isNaN","isInfinite","isSymbol"],"mappings":"AAkBA,SAASA,EAAQC,GAAsB;AACrC,MAAIA,MAAU;AACZ,WAAO;AAET,MAAIA,MAAU;AACZ,WAAO;AAKT,MAAIA,MAAUA,EAAM,aAAa,KAAKA,EAAM,aAAa;AACvD,WAAO;AAGT,QAAMC,IAAmB,OAAO,UAAU,SAAS,KAAKD,CAAK;AAG7D,MAAIC,MAAqB,mBAAa;AACpC,QAAI,OAAO,MAAMD,CAAe;AAC9B,aAAO;AAET,QAAI,CAAC,OAAO,SAASA,CAAe;AAClC,aAAO;AAAA,EAEX;AAEA,SAAOC;AACT;AAEA,MAAMC,IACJ,CAAIC,MACJ,CAACH,MACCD,EAAQC,CAAK,MAAMG,GAOVC,IAAY,CAAIJ,MAC3BA,KAAS,MAOEK,IAASH;AAAA,EAAsB;AAAA;AAAA,GAO/BI,IAAcJ;AAAA,EAA2B;AAAA;AAAA,GAOzCK,IAAWL;AAAA,EAA2B;AAAA;AAAA,GAOtCM,IAAUN;AAAA,EAA2B;AAAA;AAAA,GAOrCO,IAAWP;AAAA,EAAwB;AAAA;AAAA,GAOnCQ,IAAWR;AAAA,EAAwB;AAAA;AAAA,GAOnCS,IAAYT;AAAA,EAAyB;AAAA;AAAA,GAOrCU,IAAaV;AAAA,EAA6B;AAAA;AAAA,GAO1CW,IAAWX;AAAA,EAAwB;AAAA;AAAA,GAOnCY,IAAYZ;AAAA,EAA6B;AAAA;AAAA,GAOzCa,IAAQb;AAAA,EAAwB;AAAA;AAAA,GAShCc,IAAad;AAAA,EAAwB;AAAA;AAAA,GASrCe,IAAWf;AAAA,EAAwB;AAAA;AAAA;;;;;;;;;;;;;;;;;"}
@@ -1,7 +0,0 @@
1
- const s = "–", N = "-", o = "∞";
2
- export {
3
- N as H,
4
- o as I,
5
- s as N
6
- };
7
- //# sourceMappingURL=~constants-CFexlSUS.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"~constants-CFexlSUS.js","sources":["../src/format/constants.ts"],"sourcesContent":["export const NO_VALUE = '–'; // en-dash\n\nexport const HYPHEN = '-';\n\nexport const INFINITY = '∞';\n"],"names":["NO_VALUE","HYPHEN","INFINITY"],"mappings":"AAAO,MAAMA,IAAW,KAEXC,IAAS,KAETC,IAAW;"}
@@ -1,2 +0,0 @@
1
- "use strict";const N="–",I="-",s="∞";exports.HYPHEN=I;exports.INFINITY=s;exports.NO_VALUE=N;
2
- //# sourceMappingURL=~constants-HmaulHpr.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"~constants-HmaulHpr.js","sources":["../src/format/constants.ts"],"sourcesContent":["export const NO_VALUE = '–'; // en-dash\n\nexport const HYPHEN = '-';\n\nexport const INFINITY = '∞';\n"],"names":["NO_VALUE","HYPHEN","INFINITY"],"mappings":"aAAO,MAAMA,EAAW,IAEXC,EAAS,IAETC,EAAW"}
@@ -1,80 +0,0 @@
1
- function i(e) {
2
- if (e === void 0)
3
- return "undefined";
4
- if (e === null)
5
- return "null";
6
- if (e && (e.nodeType === 1 || e.nodeType === 9))
7
- return "element";
8
- const t = Object.prototype.toString.call(e);
9
- if (t === "[object Number]") {
10
- if (Number.isNaN(e))
11
- return "nan";
12
- if (!Number.isFinite(e))
13
- return "infinite";
14
- }
15
- return t;
16
- }
17
- const n = (e) => (t) => i(t) === e, o = (e) => e != null, s = n(
18
- "null"
19
- /* Null */
20
- ), c = n(
21
- "undefined"
22
- /* Undefined */
23
- ), r = n(
24
- "[object Object]"
25
- /* Object */
26
- ), b = n(
27
- "[object Array]"
28
- /* Array */
29
- ), u = n(
30
- "[object String]"
31
- /* String */
32
- ), l = n(
33
- "[object Number]"
34
- /* Number */
35
- ), f = n(
36
- "[object Boolean]"
37
- /* Boolean */
38
- ), d = n(
39
- "[object Function]"
40
- /* Function */
41
- ), j = n(
42
- "[object RegExp]"
43
- /* RegExp */
44
- ), a = n(
45
- "element"
46
- /* Element */
47
- ), p = n(
48
- "nan"
49
- /* NaN */
50
- ), m = n(
51
- "infinite"
52
- /* Infinite */
53
- ), y = n(
54
- "[object Symbol]"
55
- /* Symbol */
56
- ), N = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
57
- __proto__: null,
58
- isArray: b,
59
- isBoolean: f,
60
- isDefined: o,
61
- isElement: a,
62
- isFunction: d,
63
- isInfinite: m,
64
- isNaN: p,
65
- isNull: s,
66
- isNumber: l,
67
- isObject: r,
68
- isRegExp: j,
69
- isString: u,
70
- isSymbol: y,
71
- isUndefined: c
72
- }, Symbol.toStringTag, { value: "Module" }));
73
- export {
74
- N as _,
75
- l as a,
76
- r as b,
77
- c,
78
- u as i
79
- };
80
- //# sourceMappingURL=~index-C3wKHvHr.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"~index-C3wKHvHr.js","sources":["../src/type-guard/_exports.ts"],"sourcesContent":["import type { AnyFunction, AnyObject } from 'yummies/utils/types';\n\nenum Type {\n Null = 'null',\n Undefined = 'undefined',\n NaN = 'nan',\n Object = '[object Object]',\n Array = '[object Array]',\n String = '[object String]',\n Number = '[object Number]',\n Boolean = '[object Boolean]',\n Function = '[object Function]',\n RegExp = '[object RegExp]',\n Symbol = '[object Symbol]',\n Infinite = 'infinite',\n Element = 'element',\n}\n\nfunction getType(value: unknown): Type {\n if (value === undefined) {\n return Type.Undefined;\n }\n if (value === null) {\n return Type.Null;\n }\n\n // handle DOM elements\n // @ts-expect-error\n if (value && (value.nodeType === 1 || value.nodeType === 9)) {\n return Type.Element;\n }\n\n const stringifiedValue = Object.prototype.toString.call(value);\n\n // handle NaN and Infinity\n if (stringifiedValue === Type.Number) {\n if (Number.isNaN(value as number)) {\n return Type.NaN;\n }\n if (!Number.isFinite(value as number)) {\n return Type.Infinite;\n }\n }\n\n return stringifiedValue as Type;\n}\n\nconst createTypeGuard =\n <T>(type: Type) =>\n (value: unknown): value is T =>\n getType(value) === type;\n\n/**\n * Check if a value is not null or undefined\n * @param value the value to check\n * @returns boolean\n */\nexport const isDefined = <T>(value: T | undefined | null): value is T =>\n value != null;\n\n/**\n * Check if a value is null\n * @param value the value to check\n * @returns boolean\n */\nexport const isNull = createTypeGuard<null>(Type.Null);\n\n/**\n * Check if a value is undefined\n * @param value the value to check\n * @returns boolean\n */\nexport const isUndefined = createTypeGuard<undefined>(Type.Undefined);\n\n/**\n * Check if a value is an object\n * @param value the value to check\n * @returns boolean\n */\nexport const isObject = createTypeGuard<AnyObject>(Type.Object);\n\n/**\n * Check if a value is an array\n * @param value the value to check\n * @returns boolean\n */\nexport const isArray = createTypeGuard<unknown[]>(Type.Array);\n\n/**\n * Check if a value is a string\n * @param value the value to check\n * @returns boolean\n */\nexport const isString = createTypeGuard<string>(Type.String);\n\n/**\n * Check if a value is a number\n * @param value the value to check\n * @returns boolean\n */\nexport const isNumber = createTypeGuard<number>(Type.Number);\n\n/**\n * Check if a value is a boolean\n * @param value the value to check\n * @returns boolean\n */\nexport const isBoolean = createTypeGuard<boolean>(Type.Boolean);\n\n/**\n * Check if a value is a function\n * @param value the value to check\n * @returns boolean\n */\nexport const isFunction = createTypeGuard<AnyFunction>(Type.Function);\n\n/**\n * Check if a value is a regular expression\n * @param value the value to check\n * @returns boolean\n */\nexport const isRegExp = createTypeGuard<RegExp>(Type.RegExp);\n\n/**\n * Check if a value is a DOM element\n * @param value the value to check\n * @returns boolean\n */\nexport const isElement = createTypeGuard<HTMLElement>(Type.Element);\n\n/**\n * Check if a value is NaN\n * @param value the value to check\n * @returns boolean\n */\nexport const isNaN = createTypeGuard<number>(Type.NaN) as (\n value: unknown,\n) => boolean;\n\n/**\n * Check if a value is infinity\n * @param value the value to check\n * @returns boolean\n */\nexport const isInfinite = createTypeGuard<number>(Type.Infinite) as (\n value: unknown,\n) => boolean;\n\n/**\n * Check if a value is a symbol\n * @param value the value to check\n * @returns boolean\n */\nexport const isSymbol = createTypeGuard<symbol>(Type.Symbol);\n"],"names":["getType","value","stringifiedValue","createTypeGuard","type","isDefined","isNull","isUndefined","isObject","isArray","isString","isNumber","isBoolean","isFunction","isRegExp","isElement","isNaN","isInfinite","isSymbol"],"mappings":"AAkBA,SAASA,EAAQC,GAAsB;AACrC,MAAIA,MAAU;AACZ,WAAO;AAET,MAAIA,MAAU;AACZ,WAAO;AAKT,MAAIA,MAAUA,EAAM,aAAa,KAAKA,EAAM,aAAa;AACvD,WAAO;AAGT,QAAMC,IAAmB,OAAO,UAAU,SAAS,KAAKD,CAAK;AAG7D,MAAIC,MAAqB,mBAAa;AACpC,QAAI,OAAO,MAAMD,CAAe;AAC9B,aAAO;AAET,QAAI,CAAC,OAAO,SAASA,CAAe;AAClC,aAAO;AAAA,EAEX;AAEA,SAAOC;AACT;AAEA,MAAMC,IACJ,CAAIC,MACJ,CAACH,MACCD,EAAQC,CAAK,MAAMG,GAOVC,IAAY,CAAIJ,MAC3BA,KAAS,MAOEK,IAASH;AAAA,EAAsB;AAAA;AAAA,GAO/BI,IAAcJ;AAAA,EAA2B;AAAA;AAAA,GAOzCK,IAAWL;AAAA,EAA2B;AAAA;AAAA,GAOtCM,IAAUN;AAAA,EAA2B;AAAA;AAAA,GAOrCO,IAAWP;AAAA,EAAwB;AAAA;AAAA,GAOnCQ,IAAWR;AAAA,EAAwB;AAAA;AAAA,GAOnCS,IAAYT;AAAA,EAAyB;AAAA;AAAA,GAOrCU,IAAaV;AAAA,EAA6B;AAAA;AAAA,GAO1CW,IAAWX;AAAA,EAAwB;AAAA;AAAA,GAOnCY,IAAYZ;AAAA,EAA6B;AAAA;AAAA,GAOzCa,IAAQb;AAAA,EAAwB;AAAA;AAAA,GAShCc,IAAad;AAAA,EAAwB;AAAA;AAAA,GASrCe,IAAWf;AAAA,EAAwB;AAAA;AAAA;;;;;;;;;;;;;;;;;"}
@@ -1,2 +0,0 @@
1
- "use strict";function r(n){if(n===void 0)return"undefined";if(n===null)return"null";if(n&&(n.nodeType===1||n.nodeType===9))return"element";const t=Object.prototype.toString.call(n);if(t==="[object Number]"){if(Number.isNaN(n))return"nan";if(!Number.isFinite(n))return"infinite"}return t}const e=n=>t=>r(t)===n,b=n=>n!=null,u=e("null"),i=e("undefined"),o=e("[object Object]"),f=e("[object Array]"),s=e("[object String]"),c=e("[object Number]"),l=e("[object Boolean]"),d=e("[object Function]"),j=e("[object RegExp]"),m=e("element"),p=e("nan"),y=e("infinite"),N=e("[object Symbol]"),g=Object.freeze(Object.defineProperty({__proto__:null,isArray:f,isBoolean:l,isDefined:b,isElement:m,isFunction:d,isInfinite:y,isNaN:p,isNull:u,isNumber:c,isObject:o,isRegExp:j,isString:s,isSymbol:N,isUndefined:i},Symbol.toStringTag,{value:"Module"}));exports._exports=g;exports.isNumber=c;exports.isObject=o;exports.isString=s;exports.isUndefined=i;
2
- //# sourceMappingURL=~index-PKNbSTT-.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"~index-PKNbSTT-.js","sources":["../src/type-guard/_exports.ts"],"sourcesContent":["import type { AnyFunction, AnyObject } from 'yummies/utils/types';\n\nenum Type {\n Null = 'null',\n Undefined = 'undefined',\n NaN = 'nan',\n Object = '[object Object]',\n Array = '[object Array]',\n String = '[object String]',\n Number = '[object Number]',\n Boolean = '[object Boolean]',\n Function = '[object Function]',\n RegExp = '[object RegExp]',\n Symbol = '[object Symbol]',\n Infinite = 'infinite',\n Element = 'element',\n}\n\nfunction getType(value: unknown): Type {\n if (value === undefined) {\n return Type.Undefined;\n }\n if (value === null) {\n return Type.Null;\n }\n\n // handle DOM elements\n // @ts-expect-error\n if (value && (value.nodeType === 1 || value.nodeType === 9)) {\n return Type.Element;\n }\n\n const stringifiedValue = Object.prototype.toString.call(value);\n\n // handle NaN and Infinity\n if (stringifiedValue === Type.Number) {\n if (Number.isNaN(value as number)) {\n return Type.NaN;\n }\n if (!Number.isFinite(value as number)) {\n return Type.Infinite;\n }\n }\n\n return stringifiedValue as Type;\n}\n\nconst createTypeGuard =\n <T>(type: Type) =>\n (value: unknown): value is T =>\n getType(value) === type;\n\n/**\n * Check if a value is not null or undefined\n * @param value the value to check\n * @returns boolean\n */\nexport const isDefined = <T>(value: T | undefined | null): value is T =>\n value != null;\n\n/**\n * Check if a value is null\n * @param value the value to check\n * @returns boolean\n */\nexport const isNull = createTypeGuard<null>(Type.Null);\n\n/**\n * Check if a value is undefined\n * @param value the value to check\n * @returns boolean\n */\nexport const isUndefined = createTypeGuard<undefined>(Type.Undefined);\n\n/**\n * Check if a value is an object\n * @param value the value to check\n * @returns boolean\n */\nexport const isObject = createTypeGuard<AnyObject>(Type.Object);\n\n/**\n * Check if a value is an array\n * @param value the value to check\n * @returns boolean\n */\nexport const isArray = createTypeGuard<unknown[]>(Type.Array);\n\n/**\n * Check if a value is a string\n * @param value the value to check\n * @returns boolean\n */\nexport const isString = createTypeGuard<string>(Type.String);\n\n/**\n * Check if a value is a number\n * @param value the value to check\n * @returns boolean\n */\nexport const isNumber = createTypeGuard<number>(Type.Number);\n\n/**\n * Check if a value is a boolean\n * @param value the value to check\n * @returns boolean\n */\nexport const isBoolean = createTypeGuard<boolean>(Type.Boolean);\n\n/**\n * Check if a value is a function\n * @param value the value to check\n * @returns boolean\n */\nexport const isFunction = createTypeGuard<AnyFunction>(Type.Function);\n\n/**\n * Check if a value is a regular expression\n * @param value the value to check\n * @returns boolean\n */\nexport const isRegExp = createTypeGuard<RegExp>(Type.RegExp);\n\n/**\n * Check if a value is a DOM element\n * @param value the value to check\n * @returns boolean\n */\nexport const isElement = createTypeGuard<HTMLElement>(Type.Element);\n\n/**\n * Check if a value is NaN\n * @param value the value to check\n * @returns boolean\n */\nexport const isNaN = createTypeGuard<number>(Type.NaN) as (\n value: unknown,\n) => boolean;\n\n/**\n * Check if a value is infinity\n * @param value the value to check\n * @returns boolean\n */\nexport const isInfinite = createTypeGuard<number>(Type.Infinite) as (\n value: unknown,\n) => boolean;\n\n/**\n * Check if a value is a symbol\n * @param value the value to check\n * @returns boolean\n */\nexport const isSymbol = createTypeGuard<symbol>(Type.Symbol);\n"],"names":["getType","value","stringifiedValue","createTypeGuard","type","isDefined","isNull","isUndefined","isObject","isArray","isString","isNumber","isBoolean","isFunction","isRegExp","isElement","isNaN","isInfinite","isSymbol"],"mappings":"aAkBA,SAASA,EAAQC,EAAsB,CACrC,GAAIA,IAAU,OACZ,MAAO,YAET,GAAIA,IAAU,KACZ,MAAO,OAKT,GAAIA,IAAUA,EAAM,WAAa,GAAKA,EAAM,WAAa,GACvD,MAAO,UAGT,MAAMC,EAAmB,OAAO,UAAU,SAAS,KAAKD,CAAK,EAG7D,GAAIC,IAAqB,kBAAa,CACpC,GAAI,OAAO,MAAMD,CAAe,EAC9B,MAAO,MAET,GAAI,CAAC,OAAO,SAASA,CAAe,EAClC,MAAO,UAEX,CAEA,OAAOC,CACT,CAEA,MAAMC,EACAC,GACHH,GACCD,EAAQC,CAAK,IAAMG,EAOVC,EAAgBJ,GAC3BA,GAAS,KAOEK,EAASH,EAAsB,MAAA,EAO/BI,EAAcJ,EAA2B,WAAA,EAOzCK,EAAWL,EAA2B,iBAAA,EAOtCM,EAAUN,EAA2B,gBAAA,EAOrCO,EAAWP,EAAwB,iBAAA,EAOnCQ,EAAWR,EAAwB,iBAAA,EAOnCS,EAAYT,EAAyB,kBAAA,EAOrCU,EAAaV,EAA6B,mBAAA,EAO1CW,EAAWX,EAAwB,iBAAA,EAOnCY,EAAYZ,EAA6B,SAAA,EAOzCa,EAAQb,EAAwB,KAAA,EAShCc,EAAad,EAAwB,UAAA,EASrCe,EAAWf,EAAwB,iBAAA"}
@@ -1,2 +0,0 @@
1
- "use strict";const f=require("yummies/format"),r=require("yummies/type-guard"),s=(i,n)=>{const t={...s.defaultSettings,...n},l=t?.fallback??0;let e;if(r.typeGuard.isNumber(i))e=i;else if(r.typeGuard.isString(i)){const a=f.format.skipSpaces(i).replace(",",".");a===""?e=l:e=Number(a)}else e=l;return r.typeGuard.isNumber(e)?(t?.clamped!=null&&(e=Math.max(t.clamped[0]??-1/0,Math.min(e,t.clamped[1]??1/0))),t?.ceil!=null&&(e=Math.ceil(e)),t?.floor!=null&&(e=Math.floor(e)),t?.digits!=null&&(e=+e.toFixed(t.digits)),e):l};s.defaultSettings={};exports.number=s;
2
- //# sourceMappingURL=~number-B1MpW9GU.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"~number-B1MpW9GU.js","sources":["../src/parser/number.ts"],"sourcesContent":["import { format } from 'yummies/format';\nimport { typeGuard } from 'yummies/type-guard';\nimport type { Maybe } from 'yummies/utils/types';\n\nexport interface NumberParserSettings<TFallback = number> {\n digits?: number;\n fallback?: TFallback;\n /**\n * Round to upper boundary\n * 5.1 -> 6\n */\n ceil?: boolean;\n /**\n * Round to bottom boundary\n * 5.9 -> 5\n */\n floor?: boolean;\n clamped?: [min?: Maybe<number>, max?: Maybe<number>];\n}\n\nexport const number = <TFallback = number>(\n input: Maybe<unknown>,\n userSettings?: Maybe<NumberParserSettings<TFallback>>,\n): number | TFallback => {\n const settings = {\n ...number.defaultSettings,\n ...userSettings,\n };\n\n const fallback = settings?.fallback ?? 0;\n\n let result: number;\n\n if (typeGuard.isNumber(input)) {\n result = input;\n } else if (typeGuard.isString(input)) {\n const formattedInput = format.skipSpaces(input).replace(',', '.');\n if (formattedInput === '') {\n result = fallback as any;\n } else {\n result = Number(formattedInput);\n }\n } else {\n result = fallback as any;\n }\n\n if (typeGuard.isNumber(result)) {\n if (settings?.clamped != null) {\n result = Math.max(\n settings.clamped[0] ?? -Infinity,\n Math.min(result, settings.clamped[1] ?? Infinity),\n );\n }\n\n if (settings?.ceil != null) {\n result = Math.ceil(result);\n }\n\n if (settings?.floor != null) {\n result = Math.floor(result);\n }\n\n if (settings?.digits != null) {\n result = +result.toFixed(settings.digits);\n }\n\n return result;\n } else {\n return fallback;\n }\n};\n\nnumber.defaultSettings = {} as NumberParserSettings;\n"],"names":["number","input","userSettings","settings","fallback","result","typeGuard","formattedInput","format"],"mappings":"+EAoBaA,EAAS,CACpBC,EACAC,IACuB,CACvB,MAAMC,EAAW,CACf,GAAGH,EAAO,gBACV,GAAGE,CAAA,EAGCE,EAAWD,GAAU,UAAY,EAEvC,IAAIE,EAEJ,GAAIC,EAAAA,UAAU,SAASL,CAAK,EAC1BI,EAASJ,UACAK,EAAAA,UAAU,SAASL,CAAK,EAAG,CACpC,MAAMM,EAAiBC,EAAAA,OAAO,WAAWP,CAAK,EAAE,QAAQ,IAAK,GAAG,EAC5DM,IAAmB,GACrBF,EAASD,EAETC,EAAS,OAAOE,CAAc,CAElC,MACEF,EAASD,EAGX,OAAIE,EAAAA,UAAU,SAASD,CAAM,GACvBF,GAAU,SAAW,OACvBE,EAAS,KAAK,IACZF,EAAS,QAAQ,CAAC,GAAK,KACvB,KAAK,IAAIE,EAAQF,EAAS,QAAQ,CAAC,GAAK,GAAQ,CAAA,GAIhDA,GAAU,MAAQ,OACpBE,EAAS,KAAK,KAAKA,CAAM,GAGvBF,GAAU,OAAS,OACrBE,EAAS,KAAK,MAAMA,CAAM,GAGxBF,GAAU,QAAU,OACtBE,EAAS,CAACA,EAAO,QAAQF,EAAS,MAAM,GAGnCE,GAEAD,CAEX,EAEAJ,EAAO,gBAAkB,CAAA"}
@@ -1,25 +0,0 @@
1
- import { format as n } from "yummies/format";
2
- import { typeGuard as r } from "yummies/type-guard";
3
- const a = (l, f) => {
4
- const t = {
5
- ...a.defaultSettings,
6
- ...f
7
- }, i = t?.fallback ?? 0;
8
- let e;
9
- if (r.isNumber(l))
10
- e = l;
11
- else if (r.isString(l)) {
12
- const s = n.skipSpaces(l).replace(",", ".");
13
- s === "" ? e = i : e = Number(s);
14
- } else
15
- e = i;
16
- return r.isNumber(e) ? (t?.clamped != null && (e = Math.max(
17
- t.clamped[0] ?? -1 / 0,
18
- Math.min(e, t.clamped[1] ?? 1 / 0)
19
- )), t?.ceil != null && (e = Math.ceil(e)), t?.floor != null && (e = Math.floor(e)), t?.digits != null && (e = +e.toFixed(t.digits)), e) : i;
20
- };
21
- a.defaultSettings = {};
22
- export {
23
- a as n
24
- };
25
- //# sourceMappingURL=~number-EWff2XI6.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"~number-EWff2XI6.js","sources":["../src/parser/number.ts"],"sourcesContent":["import { format } from 'yummies/format';\nimport { typeGuard } from 'yummies/type-guard';\nimport type { Maybe } from 'yummies/utils/types';\n\nexport interface NumberParserSettings<TFallback = number> {\n digits?: number;\n fallback?: TFallback;\n /**\n * Round to upper boundary\n * 5.1 -> 6\n */\n ceil?: boolean;\n /**\n * Round to bottom boundary\n * 5.9 -> 5\n */\n floor?: boolean;\n clamped?: [min?: Maybe<number>, max?: Maybe<number>];\n}\n\nexport const number = <TFallback = number>(\n input: Maybe<unknown>,\n userSettings?: Maybe<NumberParserSettings<TFallback>>,\n): number | TFallback => {\n const settings = {\n ...number.defaultSettings,\n ...userSettings,\n };\n\n const fallback = settings?.fallback ?? 0;\n\n let result: number;\n\n if (typeGuard.isNumber(input)) {\n result = input;\n } else if (typeGuard.isString(input)) {\n const formattedInput = format.skipSpaces(input).replace(',', '.');\n if (formattedInput === '') {\n result = fallback as any;\n } else {\n result = Number(formattedInput);\n }\n } else {\n result = fallback as any;\n }\n\n if (typeGuard.isNumber(result)) {\n if (settings?.clamped != null) {\n result = Math.max(\n settings.clamped[0] ?? -Infinity,\n Math.min(result, settings.clamped[1] ?? Infinity),\n );\n }\n\n if (settings?.ceil != null) {\n result = Math.ceil(result);\n }\n\n if (settings?.floor != null) {\n result = Math.floor(result);\n }\n\n if (settings?.digits != null) {\n result = +result.toFixed(settings.digits);\n }\n\n return result;\n } else {\n return fallback;\n }\n};\n\nnumber.defaultSettings = {} as NumberParserSettings;\n"],"names":["number","input","userSettings","settings","fallback","result","typeGuard","formattedInput","format"],"mappings":";;AAoBO,MAAMA,IAAS,CACpBC,GACAC,MACuB;AACvB,QAAMC,IAAW;AAAA,IACf,GAAGH,EAAO;AAAA,IACV,GAAGE;AAAA,EAAA,GAGCE,IAAWD,GAAU,YAAY;AAEvC,MAAIE;AAEJ,MAAIC,EAAU,SAASL,CAAK;AAC1B,IAAAI,IAASJ;AAAA,WACAK,EAAU,SAASL,CAAK,GAAG;AACpC,UAAMM,IAAiBC,EAAO,WAAWP,CAAK,EAAE,QAAQ,KAAK,GAAG;AAChE,IAAIM,MAAmB,KACrBF,IAASD,IAETC,IAAS,OAAOE,CAAc;AAAA,EAElC;AACE,IAAAF,IAASD;AAGX,SAAIE,EAAU,SAASD,CAAM,KACvBF,GAAU,WAAW,SACvBE,IAAS,KAAK;AAAA,IACZF,EAAS,QAAQ,CAAC,KAAK;AAAA,IACvB,KAAK,IAAIE,GAAQF,EAAS,QAAQ,CAAC,KAAK,KAAQ;AAAA,EAAA,IAIhDA,GAAU,QAAQ,SACpBE,IAAS,KAAK,KAAKA,CAAM,IAGvBF,GAAU,SAAS,SACrBE,IAAS,KAAK,MAAMA,CAAM,IAGxBF,GAAU,UAAU,SACtBE,IAAS,CAACA,EAAO,QAAQF,EAAS,MAAM,IAGnCE,KAEAD;AAEX;AAEAJ,EAAO,kBAAkB,CAAA;"}