@tikkhun/nested-args 0.0.0 → 0.0.2
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/README.md +22 -2
- package/dist/arg-type.interface.d.mts +8 -0
- package/dist/arg-type.interface.d.ts +8 -0
- package/dist/{paramTypes → arg-types}/array.type.d.mts +2 -2
- package/dist/{paramTypes → arg-types}/array.type.d.ts +2 -2
- package/dist/arg-types/array.type.js +4 -0
- package/dist/arg-types/array.type.mjs +4 -0
- package/dist/{paramTypes → arg-types}/boolean.type.d.mts +2 -2
- package/dist/{paramTypes → arg-types}/boolean.type.d.ts +2 -2
- package/dist/arg-types/boolean.type.js +4 -0
- package/dist/arg-types/boolean.type.mjs +4 -0
- package/dist/{paramTypes → arg-types}/index.d.mts +2 -2
- package/dist/{paramTypes → arg-types}/index.d.ts +2 -2
- package/dist/arg-types/index.js +4 -0
- package/dist/arg-types/index.mjs +4 -0
- package/dist/arg-types/json.type.d.mts +5 -0
- package/dist/arg-types/json.type.d.ts +5 -0
- package/dist/arg-types/json.type.js +4 -0
- package/dist/arg-types/json.type.mjs +4 -0
- package/dist/arg-types/key-value-array.type.d.mts +5 -0
- package/dist/arg-types/key-value-array.type.d.ts +5 -0
- package/dist/arg-types/key-value-array.type.js +4 -0
- package/dist/arg-types/key-value-array.type.mjs +4 -0
- package/dist/arg-types/number.type.d.mts +5 -0
- package/dist/arg-types/number.type.d.ts +5 -0
- package/dist/arg-types/number.type.js +4 -0
- package/dist/arg-types/number.type.mjs +4 -0
- package/dist/arg-types/object-array.type.d.mts +5 -0
- package/dist/arg-types/object-array.type.d.ts +5 -0
- package/dist/arg-types/object-array.type.js +4 -0
- package/dist/arg-types/object-array.type.mjs +4 -0
- package/dist/arg-types/object.type.d.mts +5 -0
- package/dist/arg-types/object.type.d.ts +5 -0
- package/dist/arg-types/object.type.js +4 -0
- package/dist/arg-types/object.type.mjs +4 -0
- package/dist/arg-types/string.type.d.mts +5 -0
- package/dist/arg-types/string.type.d.ts +5 -0
- package/dist/arg-types/string.type.js +4 -0
- package/dist/arg-types/string.type.mjs +4 -0
- package/dist/{paramTypes/param.type.d.mts → arg.type.d.mts} +4 -4
- package/dist/{paramTypes/param.type.d.ts → arg.type.d.ts} +4 -4
- package/dist/arg.type.js +4 -0
- package/dist/arg.type.mjs +4 -0
- package/dist/index.d.mts +10 -9
- package/dist/index.d.ts +10 -9
- package/dist/index.js +2 -2
- package/dist/index.mjs +2 -2
- package/dist/nested-args.d.mts +14 -8
- package/dist/nested-args.d.ts +14 -8
- package/dist/nested-args.js +2 -2
- package/dist/nested-args.mjs +2 -2
- package/package.json +4 -2
- package/dist/paramTypes/array.type.js +0 -4
- package/dist/paramTypes/array.type.mjs +0 -4
- package/dist/paramTypes/boolean.type.js +0 -4
- package/dist/paramTypes/boolean.type.mjs +0 -4
- package/dist/paramTypes/index.js +0 -4
- package/dist/paramTypes/index.mjs +0 -4
- package/dist/paramTypes/key-value-array.type.d.mts +0 -5
- package/dist/paramTypes/key-value-array.type.d.ts +0 -5
- package/dist/paramTypes/key-value-array.type.js +0 -4
- package/dist/paramTypes/key-value-array.type.mjs +0 -4
- package/dist/paramTypes/number.type.d.mts +0 -5
- package/dist/paramTypes/number.type.d.ts +0 -5
- package/dist/paramTypes/number.type.js +0 -4
- package/dist/paramTypes/number.type.mjs +0 -4
- package/dist/paramTypes/object-array.type.d.mts +0 -5
- package/dist/paramTypes/object-array.type.d.ts +0 -5
- package/dist/paramTypes/object-array.type.js +0 -4
- package/dist/paramTypes/object-array.type.mjs +0 -4
- package/dist/paramTypes/object.type.d.mts +0 -5
- package/dist/paramTypes/object.type.d.ts +0 -5
- package/dist/paramTypes/object.type.js +0 -4
- package/dist/paramTypes/object.type.mjs +0 -4
- package/dist/paramTypes/param-type.interface.d.mts +0 -6
- package/dist/paramTypes/param-type.interface.d.ts +0 -6
- package/dist/paramTypes/param.type.js +0 -4
- package/dist/paramTypes/param.type.mjs +0 -4
- /package/dist/{paramTypes/param-type.interface.js → arg-type.interface.js} +0 -0
- /package/dist/{paramTypes/param-type.interface.mjs → arg-type.interface.mjs} +0 -0
package/README.md
CHANGED
@@ -1,8 +1,28 @@
|
|
1
|
-
# args
|
1
|
+
# nested-args
|
2
|
+
|
3
|
+
最终配置文件是嵌套的对象,而用户输入配置是单层非嵌套的key+字符串类型的值的形式。
|
4
|
+
parse就是将用户输入的配置转换为嵌套的对象。
|
5
|
+
stringify就是将嵌套的对象转换为用户输入的配置。(常用于作为默认值)
|
6
|
+
|
7
|
+
## 安装
|
8
|
+
|
9
|
+
```bash
|
10
|
+
npm install @tikkhun/nested-args
|
11
|
+
```
|
2
12
|
|
3
13
|
## 使用
|
4
14
|
|
5
15
|
```javascript
|
16
|
+
import { NestedArgs, TYPES } from '@tikkhun/nested-args';
|
6
17
|
|
7
|
-
|
18
|
+
const nestedArgs = new NestedArgs({
|
19
|
+
a: {
|
20
|
+
b: 'string',
|
21
|
+
c: 'number',
|
22
|
+
d: 'boolean',
|
23
|
+
e: 'array',
|
24
|
+
f: 'object',
|
25
|
+
g: 'objectArray',
|
26
|
+
},
|
27
|
+
});
|
8
28
|
```
|
@@ -1,9 +1,9 @@
|
|
1
|
-
import {
|
1
|
+
import { ArgType } from '../arg-type.interface.mjs';
|
2
2
|
|
3
3
|
interface KeyValueItem {
|
4
4
|
key: string;
|
5
5
|
value: string;
|
6
6
|
}
|
7
|
-
declare const arrayType:
|
7
|
+
declare const arrayType: ArgType;
|
8
8
|
|
9
9
|
export { type KeyValueItem, arrayType };
|
@@ -1,9 +1,9 @@
|
|
1
|
-
import {
|
1
|
+
import { ArgType } from '../arg-type.interface.js';
|
2
2
|
|
3
3
|
interface KeyValueItem {
|
4
4
|
key: string;
|
5
5
|
value: string;
|
6
6
|
}
|
7
|
-
declare const arrayType:
|
7
|
+
declare const arrayType: ArgType;
|
8
8
|
|
9
9
|
export { type KeyValueItem, arrayType };
|
@@ -0,0 +1,4 @@
|
|
1
|
+
'use strict';/**
|
2
|
+
@tikkhun/nested-args
|
3
|
+
*/
|
4
|
+
var e={isThisType(r){return Array.isArray(r)},stringify(r){return r!=null&&r.length?Array.isArray(r)?r.map(t=>JSON.stringify(t)).toString():r.toString():""},parse(r){return r.split(",").map(t=>JSON.parse(t))}};exports.arrayType=e;
|
@@ -1,7 +1,7 @@
|
|
1
|
-
import {
|
1
|
+
import { ArgType } from '../arg-type.interface.mjs';
|
2
2
|
|
3
3
|
declare const asTrueValues: (string | number | boolean)[];
|
4
4
|
declare const asFalseValues: (string | number | boolean)[];
|
5
|
-
declare const booleanType:
|
5
|
+
declare const booleanType: ArgType;
|
6
6
|
|
7
7
|
export { asFalseValues, asTrueValues, booleanType };
|
@@ -1,7 +1,7 @@
|
|
1
|
-
import {
|
1
|
+
import { ArgType } from '../arg-type.interface.js';
|
2
2
|
|
3
3
|
declare const asTrueValues: (string | number | boolean)[];
|
4
4
|
declare const asFalseValues: (string | number | boolean)[];
|
5
|
-
declare const booleanType:
|
5
|
+
declare const booleanType: ArgType;
|
6
6
|
|
7
7
|
export { asFalseValues, asTrueValues, booleanType };
|
@@ -0,0 +1,4 @@
|
|
1
|
+
'use strict';/**
|
2
|
+
@tikkhun/nested-args
|
3
|
+
*/
|
4
|
+
var r=["true",true,"1",1],t=["false",false,"",0],o={isThisType(e){return typeof e=="boolean"},stringify(e){return e.toString()},parse(e){return !!r.includes(e)}};exports.asFalseValues=t;exports.asTrueValues=r;exports.booleanType=o;
|
@@ -4,5 +4,5 @@ export { keyValueArrayType } from './key-value-array.type.mjs';
|
|
4
4
|
export { numberType } from './number.type.mjs';
|
5
5
|
export { objectArrayType } from './object-array.type.mjs';
|
6
6
|
export { objectType } from './object.type.mjs';
|
7
|
-
export {
|
8
|
-
|
7
|
+
export { jsonType } from './json.type.mjs';
|
8
|
+
import '../arg-type.interface.mjs';
|
@@ -4,5 +4,5 @@ export { keyValueArrayType } from './key-value-array.type.js';
|
|
4
4
|
export { numberType } from './number.type.js';
|
5
5
|
export { objectArrayType } from './object-array.type.js';
|
6
6
|
export { objectType } from './object.type.js';
|
7
|
-
export {
|
8
|
-
|
7
|
+
export { jsonType } from './json.type.js';
|
8
|
+
import '../arg-type.interface.js';
|
@@ -0,0 +1,4 @@
|
|
1
|
+
'use strict';/**
|
2
|
+
@tikkhun/nested-args
|
3
|
+
*/
|
4
|
+
var s={isThisType(r){return Array.isArray(r)},stringify(r){return r!=null&&r.length?Array.isArray(r)?r.map(e=>JSON.stringify(e)).toString():r.toString():""},parse(r){return r.split(",").map(e=>JSON.parse(e))}};var o=["true",true,"1",1],i=["false",false,"",0],p={isThisType(r){return typeof r=="boolean"},stringify(r){return r.toString()},parse(r){return !!o.includes(r)}};var g={isThisType(r){return Array.isArray(r)&&r.every(e=>this.isKeyValueObject(e))},isKeyValueObject(r){return "key"in r&&"value"in r},stringify(r){return r!=null&&r.length?r.map(e=>{let t=JSON.stringify(e==null?void 0:e.value);return `${e==null?void 0:e.key}=${t}`}).join(","):""},parse(r){return r?r.split(",").map(e=>{if(!e)return;let[t,n]=e.split("=");try{return {key:t,value:JSON.parse(n)}}catch(y){return {key:t,value:n}}}).filter(e=>e):[]}};var l={isThisType(r){return typeof r=="number"},stringify(r){return r.toString()},parse(r){return Number(r)}};var c={isThisType(r){return Array.isArray(r)},stringify(r){return JSON.stringify(r)},parse(r){try{return JSON.parse(r)||[]}catch(e){return []}}};var m={isThisType(r){return typeof r=="object"},stringify(r){return JSON.stringify(r)},parse(r){try{return JSON.parse(r)}catch(e){return {}}}};var x={isThisType(r){return typeof r=="object"},stringify(r){return JSON.stringify(r)},parse(r){try{return JSON.parse(r)}catch(e){return console.error("JSON parse error:",e==null?void 0:e.message),null}}};exports.arrayType=s;exports.asFalseValues=i;exports.asTrueValues=o;exports.booleanType=p;exports.jsonType=x;exports.keyValueArrayType=g;exports.numberType=l;exports.objectArrayType=c;exports.objectType=m;
|
@@ -0,0 +1,4 @@
|
|
1
|
+
/**
|
2
|
+
@tikkhun/nested-args
|
3
|
+
*/
|
4
|
+
var s={isThisType(r){return Array.isArray(r)},stringify(r){return r!=null&&r.length?Array.isArray(r)?r.map(e=>JSON.stringify(e)).toString():r.toString():""},parse(r){return r.split(",").map(e=>JSON.parse(e))}};var o=["true",true,"1",1],i=["false",false,"",0],p={isThisType(r){return typeof r=="boolean"},stringify(r){return r.toString()},parse(r){return !!o.includes(r)}};var g={isThisType(r){return Array.isArray(r)&&r.every(e=>this.isKeyValueObject(e))},isKeyValueObject(r){return "key"in r&&"value"in r},stringify(r){return r!=null&&r.length?r.map(e=>{let t=JSON.stringify(e==null?void 0:e.value);return `${e==null?void 0:e.key}=${t}`}).join(","):""},parse(r){return r?r.split(",").map(e=>{if(!e)return;let[t,n]=e.split("=");try{return {key:t,value:JSON.parse(n)}}catch(y){return {key:t,value:n}}}).filter(e=>e):[]}};var l={isThisType(r){return typeof r=="number"},stringify(r){return r.toString()},parse(r){return Number(r)}};var c={isThisType(r){return Array.isArray(r)},stringify(r){return JSON.stringify(r)},parse(r){try{return JSON.parse(r)||[]}catch(e){return []}}};var m={isThisType(r){return typeof r=="object"},stringify(r){return JSON.stringify(r)},parse(r){try{return JSON.parse(r)}catch(e){return {}}}};var x={isThisType(r){return typeof r=="object"},stringify(r){return JSON.stringify(r)},parse(r){try{return JSON.parse(r)}catch(e){return console.error("JSON parse error:",e==null?void 0:e.message),null}}};export{s as arrayType,i as asFalseValues,o as asTrueValues,p as booleanType,x as jsonType,g as keyValueArrayType,l as numberType,c as objectArrayType,m as objectType};
|
@@ -0,0 +1,4 @@
|
|
1
|
+
'use strict';/**
|
2
|
+
@tikkhun/nested-args
|
3
|
+
*/
|
4
|
+
var t={isThisType(r){return Array.isArray(r)&&r.every(e=>this.isKeyValueObject(e))},isKeyValueObject(r){return "key"in r&&"value"in r},stringify(r){return r!=null&&r.length?r.map(e=>{let n=JSON.stringify(e==null?void 0:e.value);return `${e==null?void 0:e.key}=${n}`}).join(","):""},parse(r){return r?r.split(",").map(e=>{if(!e)return;let[n,a]=e.split("=");try{return {key:n,value:JSON.parse(a)}}catch(y){return {key:n,value:a}}}).filter(e=>e):[]}};exports.keyValueArrayType=t;
|
@@ -0,0 +1,4 @@
|
|
1
|
+
/**
|
2
|
+
@tikkhun/nested-args
|
3
|
+
*/
|
4
|
+
var t={isThisType(r){return Array.isArray(r)&&r.every(e=>this.isKeyValueObject(e))},isKeyValueObject(r){return "key"in r&&"value"in r},stringify(r){return r!=null&&r.length?r.map(e=>{let n=JSON.stringify(e==null?void 0:e.value);return `${e==null?void 0:e.key}=${n}`}).join(","):""},parse(r){return r?r.split(",").map(e=>{if(!e)return;let[n,a]=e.split("=");try{return {key:n,value:JSON.parse(a)}}catch(y){return {key:n,value:a}}}).filter(e=>e):[]}};export{t as keyValueArrayType};
|
@@ -1,12 +1,12 @@
|
|
1
1
|
declare const TYPES: {
|
2
|
+
readonly boolean: "boolean";
|
3
|
+
readonly number: "number";
|
4
|
+
readonly string: "string";
|
2
5
|
readonly array: "array";
|
3
6
|
readonly keyValueArray: "keyValueArray";
|
4
7
|
readonly objectArray: "objectArray";
|
5
|
-
readonly boolean: "boolean";
|
6
|
-
readonly number: "number";
|
7
8
|
readonly object: "object";
|
8
|
-
readonly
|
9
|
-
readonly select: "select";
|
9
|
+
readonly json: "json";
|
10
10
|
};
|
11
11
|
type TYPES = keyof typeof TYPES;
|
12
12
|
|
@@ -1,12 +1,12 @@
|
|
1
1
|
declare const TYPES: {
|
2
|
+
readonly boolean: "boolean";
|
3
|
+
readonly number: "number";
|
4
|
+
readonly string: "string";
|
2
5
|
readonly array: "array";
|
3
6
|
readonly keyValueArray: "keyValueArray";
|
4
7
|
readonly objectArray: "objectArray";
|
5
|
-
readonly boolean: "boolean";
|
6
|
-
readonly number: "number";
|
7
8
|
readonly object: "object";
|
8
|
-
readonly
|
9
|
-
readonly select: "select";
|
9
|
+
readonly json: "json";
|
10
10
|
};
|
11
11
|
type TYPES = keyof typeof TYPES;
|
12
12
|
|
package/dist/arg.type.js
ADDED
package/dist/index.d.mts
CHANGED
@@ -1,9 +1,10 @@
|
|
1
|
-
export { NestedArgs } from './nested-args.mjs';
|
2
|
-
export { KeyValueItem, arrayType } from './
|
3
|
-
export { asFalseValues, asTrueValues, booleanType } from './
|
4
|
-
export { keyValueArrayType } from './
|
5
|
-
export { numberType } from './
|
6
|
-
export { objectArrayType } from './
|
7
|
-
export { objectType } from './
|
8
|
-
export {
|
9
|
-
export { TYPES } from './
|
1
|
+
export { NestedArgs, NestedArgsOptions } from './nested-args.mjs';
|
2
|
+
export { KeyValueItem, arrayType } from './arg-types/array.type.mjs';
|
3
|
+
export { asFalseValues, asTrueValues, booleanType } from './arg-types/boolean.type.mjs';
|
4
|
+
export { keyValueArrayType } from './arg-types/key-value-array.type.mjs';
|
5
|
+
export { numberType } from './arg-types/number.type.mjs';
|
6
|
+
export { objectArrayType } from './arg-types/object-array.type.mjs';
|
7
|
+
export { objectType } from './arg-types/object.type.mjs';
|
8
|
+
export { jsonType } from './arg-types/json.type.mjs';
|
9
|
+
export { TYPES } from './arg.type.mjs';
|
10
|
+
export { ArgType } from './arg-type.interface.mjs';
|
package/dist/index.d.ts
CHANGED
@@ -1,9 +1,10 @@
|
|
1
|
-
export { NestedArgs } from './nested-args.js';
|
2
|
-
export { KeyValueItem, arrayType } from './
|
3
|
-
export { asFalseValues, asTrueValues, booleanType } from './
|
4
|
-
export { keyValueArrayType } from './
|
5
|
-
export { numberType } from './
|
6
|
-
export { objectArrayType } from './
|
7
|
-
export { objectType } from './
|
8
|
-
export {
|
9
|
-
export { TYPES } from './
|
1
|
+
export { NestedArgs, NestedArgsOptions } from './nested-args.js';
|
2
|
+
export { KeyValueItem, arrayType } from './arg-types/array.type.js';
|
3
|
+
export { asFalseValues, asTrueValues, booleanType } from './arg-types/boolean.type.js';
|
4
|
+
export { keyValueArrayType } from './arg-types/key-value-array.type.js';
|
5
|
+
export { numberType } from './arg-types/number.type.js';
|
6
|
+
export { objectArrayType } from './arg-types/object-array.type.js';
|
7
|
+
export { objectType } from './arg-types/object.type.js';
|
8
|
+
export { jsonType } from './arg-types/json.type.js';
|
9
|
+
export { TYPES } from './arg.type.js';
|
10
|
+
export { ArgType } from './arg-type.interface.js';
|
package/dist/index.js
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
'use strict';/**
|
1
|
+
'use strict';var utilsCore=require('@tikkhun/utils-core');/**
|
2
2
|
@tikkhun/nested-args
|
3
3
|
*/
|
4
|
-
var
|
4
|
+
var J=Object.defineProperty,P=Object.defineProperties;var R=Object.getOwnPropertyDescriptors;var T=Object.getOwnPropertySymbols;var E=Object.prototype.hasOwnProperty,K=Object.prototype.propertyIsEnumerable;var m=(r,e,t)=>e in r?J(r,e,{enumerable:true,configurable:true,writable:true,value:t}):r[e]=t,c=(r,e)=>{for(var t in e||(e={}))E.call(e,t)&&m(r,t,e[t]);if(T)for(var t of T(e))K.call(e,t)&&m(r,t,e[t]);return r},u=(r,e)=>P(r,R(e));var s={boolean:"boolean",number:"number",string:"string",array:"array",keyValueArray:"keyValueArray",objectArray:"objectArray",object:"object",json:"json"};var b={isThisType(r){return Array.isArray(r)},stringify(r){return r!=null&&r.length?Array.isArray(r)?r.map(e=>JSON.stringify(e)).toString():r.toString():""},parse(r){return r.split(",").map(e=>JSON.parse(e))}};var k=["true",true,"1",1],$=["false",false,"",0],A={isThisType(r){return typeof r=="boolean"},stringify(r){return r.toString()},parse(r){return !!k.includes(r)}};var h={isThisType(r){return Array.isArray(r)&&r.every(e=>this.isKeyValueObject(e))},isKeyValueObject(r){return "key"in r&&"value"in r},stringify(r){return r!=null&&r.length?r.map(e=>{let t=JSON.stringify(e==null?void 0:e.value);return `${e==null?void 0:e.key}=${t}`}).join(","):""},parse(r){return r?r.split(",").map(e=>{if(!e)return;let[t,n]=e.split("=");try{return {key:t,value:JSON.parse(n)}}catch(i){return {key:t,value:n}}}).filter(e=>e):[]}};var j={isThisType(r){return typeof r=="number"},stringify(r){return r.toString()},parse(r){return Number(r)}};var x={isThisType(r){return Array.isArray(r)},stringify(r){return JSON.stringify(r)},parse(r){try{return JSON.parse(r)||[]}catch(e){return []}}};var O={isThisType(r){return typeof r=="object"},stringify(r){return JSON.stringify(r)},parse(r){try{return JSON.parse(r)}catch(e){return {}}}};var d={isThisType(r){return typeof r=="object"},stringify(r){return JSON.stringify(r)},parse(r){try{return JSON.parse(r)}catch(e){return console.error("JSON parse error:",e==null?void 0:e.message),null}}};var S={isThisType(r){return typeof r=="string"},stringify(r){return r},parse(r){return r}};var y=class y{static parse(e,t=this.options){let n=utilsCore.mergeOptions(this.options,t),i={};return Object.entries(e).forEach(([o,a])=>{var l;if(V(a)){i[o]=this.parse(a,u(c({},n),{schema:n.schema[o]}));return}let p=((l=n.schema)==null?void 0:l[o])||s.string,g=n.typeHandlers[p];i[o]=g.parse(a);}),i}static stringify(e,t){let n=utilsCore.mergeOptions(this.options,t),i={};return Object.entries(e).forEach(([o,a])=>{let p=n.schema[o]||s.string;if(V(a)&&typeof p=="object"){i[o]=this.stringify(a,u(c({},n),{schema:n.schema[o]}));return}let g=n.typeHandlers[p];i[o]=g.stringify(a);}),i}constructor(e){this.options=utilsCore.mergeOptions(y.options,e);}parse(e){return y.parse(e,this.options)}stringify(e){return y.stringify(e,this.options)}};y.options={schema:{},types:[...Object.values(s)],typeHandlers:{[s.boolean]:A,[s.number]:j,[s.string]:S,[s.array]:b,[s.keyValueArray]:h,[s.json]:d,[s.object]:O,[s.objectArray]:x}};var N=y;function V(r){return Array.isArray(r)?false:typeof r=="object"}exports.NestedArgs=N;exports.TYPES=s;exports.arrayType=b;exports.asFalseValues=$;exports.asTrueValues=k;exports.booleanType=A;exports.jsonType=d;exports.keyValueArrayType=h;exports.numberType=j;exports.objectArrayType=x;exports.objectType=O;
|
package/dist/index.mjs
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
|
1
|
+
import {mergeOptions}from'@tikkhun/utils-core';/**
|
2
2
|
@tikkhun/nested-args
|
3
3
|
*/
|
4
|
-
var
|
4
|
+
var J=Object.defineProperty,P=Object.defineProperties;var R=Object.getOwnPropertyDescriptors;var T=Object.getOwnPropertySymbols;var E=Object.prototype.hasOwnProperty,K=Object.prototype.propertyIsEnumerable;var m=(r,e,t)=>e in r?J(r,e,{enumerable:true,configurable:true,writable:true,value:t}):r[e]=t,c=(r,e)=>{for(var t in e||(e={}))E.call(e,t)&&m(r,t,e[t]);if(T)for(var t of T(e))K.call(e,t)&&m(r,t,e[t]);return r},u=(r,e)=>P(r,R(e));var s={boolean:"boolean",number:"number",string:"string",array:"array",keyValueArray:"keyValueArray",objectArray:"objectArray",object:"object",json:"json"};var b={isThisType(r){return Array.isArray(r)},stringify(r){return r!=null&&r.length?Array.isArray(r)?r.map(e=>JSON.stringify(e)).toString():r.toString():""},parse(r){return r.split(",").map(e=>JSON.parse(e))}};var k=["true",true,"1",1],$=["false",false,"",0],A={isThisType(r){return typeof r=="boolean"},stringify(r){return r.toString()},parse(r){return !!k.includes(r)}};var h={isThisType(r){return Array.isArray(r)&&r.every(e=>this.isKeyValueObject(e))},isKeyValueObject(r){return "key"in r&&"value"in r},stringify(r){return r!=null&&r.length?r.map(e=>{let t=JSON.stringify(e==null?void 0:e.value);return `${e==null?void 0:e.key}=${t}`}).join(","):""},parse(r){return r?r.split(",").map(e=>{if(!e)return;let[t,n]=e.split("=");try{return {key:t,value:JSON.parse(n)}}catch(i){return {key:t,value:n}}}).filter(e=>e):[]}};var j={isThisType(r){return typeof r=="number"},stringify(r){return r.toString()},parse(r){return Number(r)}};var x={isThisType(r){return Array.isArray(r)},stringify(r){return JSON.stringify(r)},parse(r){try{return JSON.parse(r)||[]}catch(e){return []}}};var O={isThisType(r){return typeof r=="object"},stringify(r){return JSON.stringify(r)},parse(r){try{return JSON.parse(r)}catch(e){return {}}}};var d={isThisType(r){return typeof r=="object"},stringify(r){return JSON.stringify(r)},parse(r){try{return JSON.parse(r)}catch(e){return console.error("JSON parse error:",e==null?void 0:e.message),null}}};var S={isThisType(r){return typeof r=="string"},stringify(r){return r},parse(r){return r}};var y=class y{static parse(e,t=this.options){let n=mergeOptions(this.options,t),i={};return Object.entries(e).forEach(([o,a])=>{var l;if(V(a)){i[o]=this.parse(a,u(c({},n),{schema:n.schema[o]}));return}let p=((l=n.schema)==null?void 0:l[o])||s.string,g=n.typeHandlers[p];i[o]=g.parse(a);}),i}static stringify(e,t){let n=mergeOptions(this.options,t),i={};return Object.entries(e).forEach(([o,a])=>{let p=n.schema[o]||s.string;if(V(a)&&typeof p=="object"){i[o]=this.stringify(a,u(c({},n),{schema:n.schema[o]}));return}let g=n.typeHandlers[p];i[o]=g.stringify(a);}),i}constructor(e){this.options=mergeOptions(y.options,e);}parse(e){return y.parse(e,this.options)}stringify(e){return y.stringify(e,this.options)}};y.options={schema:{},types:[...Object.values(s)],typeHandlers:{[s.boolean]:A,[s.number]:j,[s.string]:S,[s.array]:b,[s.keyValueArray]:h,[s.json]:d,[s.object]:O,[s.objectArray]:x}};var N=y;function V(r){return Array.isArray(r)?false:typeof r=="object"}export{N as NestedArgs,s as TYPES,b as arrayType,$ as asFalseValues,k as asTrueValues,A as booleanType,d as jsonType,h as keyValueArrayType,j as numberType,x as objectArrayType,O as objectType};
|
package/dist/nested-args.d.mts
CHANGED
@@ -1,12 +1,18 @@
|
|
1
|
-
|
1
|
+
import { TYPES } from './arg.type.mjs';
|
2
|
+
|
3
|
+
interface NestedArgsOptions {
|
2
4
|
schema: Record<string, any>;
|
3
|
-
|
5
|
+
typeHandlers: Record<string, any>;
|
6
|
+
types: TYPES | string[];
|
7
|
+
}
|
8
|
+
declare class NestedArgs {
|
9
|
+
static options: NestedArgsOptions;
|
10
|
+
static parse(obj: Record<string, any>, options?: Partial<NestedArgsOptions>): Record<string, any>;
|
11
|
+
static stringify(obj: Record<string, any>, options?: Partial<NestedArgsOptions>): Record<string, any>;
|
12
|
+
options: NestedArgsOptions;
|
13
|
+
constructor(options?: Partial<NestedArgsOptions>);
|
4
14
|
parse(obj: Record<string, any>): Record<string, any>;
|
5
|
-
|
6
|
-
private static parseValueByType;
|
7
|
-
static stringify(obj: Record<string, any>): Record<string, any>;
|
8
|
-
private static stringifyValue;
|
9
|
-
private static isKeyValueObject;
|
15
|
+
stringify(obj: Record<string, any>): Record<string, any>;
|
10
16
|
}
|
11
17
|
|
12
|
-
export { NestedArgs };
|
18
|
+
export { NestedArgs, type NestedArgsOptions };
|
package/dist/nested-args.d.ts
CHANGED
@@ -1,12 +1,18 @@
|
|
1
|
-
|
1
|
+
import { TYPES } from './arg.type.js';
|
2
|
+
|
3
|
+
interface NestedArgsOptions {
|
2
4
|
schema: Record<string, any>;
|
3
|
-
|
5
|
+
typeHandlers: Record<string, any>;
|
6
|
+
types: TYPES | string[];
|
7
|
+
}
|
8
|
+
declare class NestedArgs {
|
9
|
+
static options: NestedArgsOptions;
|
10
|
+
static parse(obj: Record<string, any>, options?: Partial<NestedArgsOptions>): Record<string, any>;
|
11
|
+
static stringify(obj: Record<string, any>, options?: Partial<NestedArgsOptions>): Record<string, any>;
|
12
|
+
options: NestedArgsOptions;
|
13
|
+
constructor(options?: Partial<NestedArgsOptions>);
|
4
14
|
parse(obj: Record<string, any>): Record<string, any>;
|
5
|
-
|
6
|
-
private static parseValueByType;
|
7
|
-
static stringify(obj: Record<string, any>): Record<string, any>;
|
8
|
-
private static stringifyValue;
|
9
|
-
private static isKeyValueObject;
|
15
|
+
stringify(obj: Record<string, any>): Record<string, any>;
|
10
16
|
}
|
11
17
|
|
12
|
-
export { NestedArgs };
|
18
|
+
export { NestedArgs, type NestedArgsOptions };
|
package/dist/nested-args.js
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
'use strict';/**
|
1
|
+
'use strict';var utilsCore=require('@tikkhun/utils-core');/**
|
2
2
|
@tikkhun/nested-args
|
3
3
|
*/
|
4
|
-
var
|
4
|
+
var J=Object.defineProperty,P=Object.defineProperties;var R=Object.getOwnPropertyDescriptors;var T=Object.getOwnPropertySymbols;var E=Object.prototype.hasOwnProperty,K=Object.prototype.propertyIsEnumerable;var m=(r,e,t)=>e in r?J(r,e,{enumerable:true,configurable:true,writable:true,value:t}):r[e]=t,c=(r,e)=>{for(var t in e||(e={}))E.call(e,t)&&m(r,t,e[t]);if(T)for(var t of T(e))K.call(e,t)&&m(r,t,e[t]);return r},u=(r,e)=>P(r,R(e));var s={boolean:"boolean",number:"number",string:"string",array:"array",keyValueArray:"keyValueArray",objectArray:"objectArray",object:"object",json:"json"};var b={isThisType(r){return Array.isArray(r)},stringify(r){return r!=null&&r.length?Array.isArray(r)?r.map(e=>JSON.stringify(e)).toString():r.toString():""},parse(r){return r.split(",").map(e=>JSON.parse(e))}};var k=["true",true,"1",1];var A={isThisType(r){return typeof r=="boolean"},stringify(r){return r.toString()},parse(r){return !!k.includes(r)}};var h={isThisType(r){return Array.isArray(r)&&r.every(e=>this.isKeyValueObject(e))},isKeyValueObject(r){return "key"in r&&"value"in r},stringify(r){return r!=null&&r.length?r.map(e=>{let t=JSON.stringify(e==null?void 0:e.value);return `${e==null?void 0:e.key}=${t}`}).join(","):""},parse(r){return r?r.split(",").map(e=>{if(!e)return;let[t,n]=e.split("=");try{return {key:t,value:JSON.parse(n)}}catch(i){return {key:t,value:n}}}).filter(e=>e):[]}};var j={isThisType(r){return typeof r=="number"},stringify(r){return r.toString()},parse(r){return Number(r)}};var O={isThisType(r){return Array.isArray(r)},stringify(r){return JSON.stringify(r)},parse(r){try{return JSON.parse(r)||[]}catch(e){return []}}};var x={isThisType(r){return typeof r=="object"},stringify(r){return JSON.stringify(r)},parse(r){try{return JSON.parse(r)}catch(e){return {}}}};var d={isThisType(r){return typeof r=="object"},stringify(r){return JSON.stringify(r)},parse(r){try{return JSON.parse(r)}catch(e){return console.error("JSON parse error:",e==null?void 0:e.message),null}}};var S={isThisType(r){return typeof r=="string"},stringify(r){return r},parse(r){return r}};var y=class y{static parse(e,t=this.options){let n=utilsCore.mergeOptions(this.options,t),i={};return Object.entries(e).forEach(([o,a])=>{var l;if(V(a)){i[o]=this.parse(a,u(c({},n),{schema:n.schema[o]}));return}let p=((l=n.schema)==null?void 0:l[o])||s.string,g=n.typeHandlers[p];i[o]=g.parse(a);}),i}static stringify(e,t){let n=utilsCore.mergeOptions(this.options,t),i={};return Object.entries(e).forEach(([o,a])=>{let p=n.schema[o]||s.string;if(V(a)&&typeof p=="object"){i[o]=this.stringify(a,u(c({},n),{schema:n.schema[o]}));return}let g=n.typeHandlers[p];i[o]=g.stringify(a);}),i}constructor(e){this.options=utilsCore.mergeOptions(y.options,e);}parse(e){return y.parse(e,this.options)}stringify(e){return y.stringify(e,this.options)}};y.options={schema:{},types:[...Object.values(s)],typeHandlers:{[s.boolean]:A,[s.number]:j,[s.string]:S,[s.array]:b,[s.keyValueArray]:h,[s.json]:d,[s.object]:x,[s.objectArray]:O}};var N=y;function V(r){return Array.isArray(r)?false:typeof r=="object"}exports.NestedArgs=N;
|
package/dist/nested-args.mjs
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
|
1
|
+
import {mergeOptions}from'@tikkhun/utils-core';/**
|
2
2
|
@tikkhun/nested-args
|
3
3
|
*/
|
4
|
-
var
|
4
|
+
var J=Object.defineProperty,P=Object.defineProperties;var R=Object.getOwnPropertyDescriptors;var T=Object.getOwnPropertySymbols;var E=Object.prototype.hasOwnProperty,K=Object.prototype.propertyIsEnumerable;var m=(r,e,t)=>e in r?J(r,e,{enumerable:true,configurable:true,writable:true,value:t}):r[e]=t,c=(r,e)=>{for(var t in e||(e={}))E.call(e,t)&&m(r,t,e[t]);if(T)for(var t of T(e))K.call(e,t)&&m(r,t,e[t]);return r},u=(r,e)=>P(r,R(e));var s={boolean:"boolean",number:"number",string:"string",array:"array",keyValueArray:"keyValueArray",objectArray:"objectArray",object:"object",json:"json"};var b={isThisType(r){return Array.isArray(r)},stringify(r){return r!=null&&r.length?Array.isArray(r)?r.map(e=>JSON.stringify(e)).toString():r.toString():""},parse(r){return r.split(",").map(e=>JSON.parse(e))}};var k=["true",true,"1",1];var A={isThisType(r){return typeof r=="boolean"},stringify(r){return r.toString()},parse(r){return !!k.includes(r)}};var h={isThisType(r){return Array.isArray(r)&&r.every(e=>this.isKeyValueObject(e))},isKeyValueObject(r){return "key"in r&&"value"in r},stringify(r){return r!=null&&r.length?r.map(e=>{let t=JSON.stringify(e==null?void 0:e.value);return `${e==null?void 0:e.key}=${t}`}).join(","):""},parse(r){return r?r.split(",").map(e=>{if(!e)return;let[t,n]=e.split("=");try{return {key:t,value:JSON.parse(n)}}catch(i){return {key:t,value:n}}}).filter(e=>e):[]}};var j={isThisType(r){return typeof r=="number"},stringify(r){return r.toString()},parse(r){return Number(r)}};var O={isThisType(r){return Array.isArray(r)},stringify(r){return JSON.stringify(r)},parse(r){try{return JSON.parse(r)||[]}catch(e){return []}}};var x={isThisType(r){return typeof r=="object"},stringify(r){return JSON.stringify(r)},parse(r){try{return JSON.parse(r)}catch(e){return {}}}};var d={isThisType(r){return typeof r=="object"},stringify(r){return JSON.stringify(r)},parse(r){try{return JSON.parse(r)}catch(e){return console.error("JSON parse error:",e==null?void 0:e.message),null}}};var S={isThisType(r){return typeof r=="string"},stringify(r){return r},parse(r){return r}};var y=class y{static parse(e,t=this.options){let n=mergeOptions(this.options,t),i={};return Object.entries(e).forEach(([o,a])=>{var l;if(V(a)){i[o]=this.parse(a,u(c({},n),{schema:n.schema[o]}));return}let p=((l=n.schema)==null?void 0:l[o])||s.string,g=n.typeHandlers[p];i[o]=g.parse(a);}),i}static stringify(e,t){let n=mergeOptions(this.options,t),i={};return Object.entries(e).forEach(([o,a])=>{let p=n.schema[o]||s.string;if(V(a)&&typeof p=="object"){i[o]=this.stringify(a,u(c({},n),{schema:n.schema[o]}));return}let g=n.typeHandlers[p];i[o]=g.stringify(a);}),i}constructor(e){this.options=mergeOptions(y.options,e);}parse(e){return y.parse(e,this.options)}stringify(e){return y.stringify(e,this.options)}};y.options={schema:{},types:[...Object.values(s)],typeHandlers:{[s.boolean]:A,[s.number]:j,[s.string]:S,[s.array]:b,[s.keyValueArray]:h,[s.json]:d,[s.object]:x,[s.objectArray]:O}};var N=y;function V(r){return Array.isArray(r)?false:typeof r=="object"}export{N as NestedArgs};
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@tikkhun/nested-args",
|
3
|
-
"version": "0.0.
|
3
|
+
"version": "0.0.2",
|
4
4
|
"description": "",
|
5
5
|
"main": "dist/index.js",
|
6
6
|
"module": "dist/index.mjs",
|
@@ -26,7 +26,9 @@
|
|
26
26
|
"keywords": [],
|
27
27
|
"author": "",
|
28
28
|
"license": "ISC",
|
29
|
-
"dependencies": {
|
29
|
+
"dependencies": {
|
30
|
+
"@tikkhun/utils-core": "0.0.20"
|
31
|
+
},
|
30
32
|
"devDependencies": {
|
31
33
|
"@types/node": "^20.3.1",
|
32
34
|
"tsx": "^4.19.1",
|
package/dist/paramTypes/index.js
DELETED
@@ -1,4 +0,0 @@
|
|
1
|
-
'use strict';/**
|
2
|
-
@tikkhun/nested-args
|
3
|
-
*/
|
4
|
-
var o={stringify(r){return r!=null&&r.length?r.toString():""},parse(r){return r.split(",")}};var a=["true",true,"1",1],s=["false",false,"",0],y={stringify(r){return r.toString()},parse(r){return !!a.includes(r)}};var u={stringify(r){return r!=null&&r.length?r.map(e=>`${e==null?void 0:e.key}=${e==null?void 0:e.value}`).join(","):""},parse(r){return r?r.split(",").map(e=>{if(!e)return;let[t,n]=e.split("=");return {key:t,value:n}}).filter(e=>e):[]}};var g={stringify(r){return r.toString()},parse(r){return Number(r)}};var l={stringify(r){return JSON.stringify(r)},parse(r){try{return JSON.parse(r)||[]}catch(e){return []}}};var T={stringify(r){return JSON.stringify(r)},parse(r){return typeof r=="object"?JSON.parse(r):{}}};var b={array:"array",keyValueArray:"keyValueArray",objectArray:"objectArray",boolean:"boolean",number:"number",object:"object",string:"string",select:"select"};exports.TYPES=b;exports.arrayType=o;exports.asFalseValues=s;exports.asTrueValues=a;exports.booleanType=y;exports.keyValueArrayType=u;exports.numberType=g;exports.objectArrayType=l;exports.objectType=T;
|
@@ -1,4 +0,0 @@
|
|
1
|
-
/**
|
2
|
-
@tikkhun/nested-args
|
3
|
-
*/
|
4
|
-
var o={stringify(r){return r!=null&&r.length?r.toString():""},parse(r){return r.split(",")}};var a=["true",true,"1",1],s=["false",false,"",0],y={stringify(r){return r.toString()},parse(r){return !!a.includes(r)}};var u={stringify(r){return r!=null&&r.length?r.map(e=>`${e==null?void 0:e.key}=${e==null?void 0:e.value}`).join(","):""},parse(r){return r?r.split(",").map(e=>{if(!e)return;let[t,n]=e.split("=");return {key:t,value:n}}).filter(e=>e):[]}};var g={stringify(r){return r.toString()},parse(r){return Number(r)}};var l={stringify(r){return JSON.stringify(r)},parse(r){try{return JSON.parse(r)||[]}catch(e){return []}}};var T={stringify(r){return JSON.stringify(r)},parse(r){return typeof r=="object"?JSON.parse(r):{}}};var b={array:"array",keyValueArray:"keyValueArray",objectArray:"objectArray",boolean:"boolean",number:"number",object:"object",string:"string",select:"select"};export{b as TYPES,o as arrayType,s as asFalseValues,a as asTrueValues,y as booleanType,u as keyValueArrayType,g as numberType,l as objectArrayType,T as objectType};
|
@@ -1,4 +0,0 @@
|
|
1
|
-
'use strict';/**
|
2
|
-
@tikkhun/nested-args
|
3
|
-
*/
|
4
|
-
var u={stringify(e){return e!=null&&e.length?e.map(r=>`${r==null?void 0:r.key}=${r==null?void 0:r.value}`).join(","):""},parse(e){return e?e.split(",").map(r=>{if(!r)return;let[n,a]=r.split("=");return {key:n,value:a}}).filter(r=>r):[]}};exports.keyValueArrayType=u;
|
@@ -1,4 +0,0 @@
|
|
1
|
-
/**
|
2
|
-
@tikkhun/nested-args
|
3
|
-
*/
|
4
|
-
var u={stringify(e){return e!=null&&e.length?e.map(r=>`${r==null?void 0:r.key}=${r==null?void 0:r.value}`).join(","):""},parse(e){return e?e.split(",").map(r=>{if(!r)return;let[n,a]=r.split("=");return {key:n,value:a}}).filter(r=>r):[]}};export{u as keyValueArrayType};
|
File without changes
|
File without changes
|