@bemedev/decompose 0.3.1 → 0.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/constants/strings.cjs +2 -2
- package/lib/constants/strings.cjs.map +1 -1
- package/lib/constants/strings.d.ts +1 -1
- package/lib/constants/strings.js +2 -2
- package/lib/constants/strings.js.map +1 -1
- package/lib/decompose.cjs +1 -1
- package/lib/decompose.cjs.map +1 -1
- package/lib/decompose.d.ts +1 -1
- package/lib/decompose.d.ts.map +1 -1
- package/lib/decompose.js +1 -1
- package/lib/decompose.js.map +1 -1
- package/lib/decomposeSV.cjs +5 -5
- package/lib/decomposeSV.cjs.map +1 -1
- package/lib/decomposeSV.d.ts.map +1 -1
- package/lib/decomposeSV.js +5 -5
- package/lib/decomposeSV.js.map +1 -1
- package/lib/recompose.cjs +27 -3
- package/lib/recompose.cjs.map +1 -1
- package/lib/recompose.d.ts +22 -2
- package/lib/recompose.d.ts.map +1 -1
- package/lib/recompose.js +28 -4
- package/lib/recompose.js.map +1 -1
- package/lib/types.d.ts +2 -6
- package/lib/types.d.ts.map +1 -1
- package/package.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"strings.cjs","sources":["../../src/constants/strings.ts"],"sourcesContent":["export const DELIMITER = '-{/./:}-' as const;\nexport const
|
|
1
|
+
{"version":3,"file":"strings.cjs","sources":["../../src/constants/strings.ts"],"sourcesContent":["export const DELIMITER = '-{/./:}-' as const;\nexport const SEPARATOR = '.' as const;\n"],"names":[],"mappings":";;AAAO,MAAM,SAAS,GAAG,WAAoB;AACtC,MAAM,SAAS,GAAG;;;;;"}
|
package/lib/constants/strings.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"strings.js","sources":["../../src/constants/strings.ts"],"sourcesContent":["export const DELIMITER = '-{/./:}-' as const;\nexport const
|
|
1
|
+
{"version":3,"file":"strings.js","sources":["../../src/constants/strings.ts"],"sourcesContent":["export const DELIMITER = '-{/./:}-' as const;\nexport const SEPARATOR = '.' as const;\n"],"names":[],"mappings":"AAAO,MAAM,SAAS,GAAG,WAAoB;AACtC,MAAM,SAAS,GAAG;;;;"}
|
package/lib/decompose.cjs
CHANGED
|
@@ -24,7 +24,7 @@ function decompose(val, sorter) {
|
|
|
24
24
|
output1.sort(sorter ?? sortMap.sortMap);
|
|
25
25
|
const regex = new RegExp(constants_strings.DELIMITER, 'g');
|
|
26
26
|
const output2 = output1.map(value => value.replace(regex, '.'));
|
|
27
|
-
return
|
|
27
|
+
return output2;
|
|
28
28
|
}
|
|
29
29
|
|
|
30
30
|
exports.decompose = decompose;
|
package/lib/decompose.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"decompose.cjs","sources":["../src/decompose.ts"],"sourcesContent":["import { DELIMITER } from './constants/strings';\nimport { isPrimitive } from './helpers';\nimport { sortMap } from './sortMap';\nimport { Ru } from './types';\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nfunction ddecompose(val: any, prev = '') {\n const _prev = prev ? prev + DELIMITER : '';\n const output: string[] = [];\n const entries1 = Object.entries(val);\n entries1.forEach(([key, value]) => {\n output.push(`${_prev}${key}`);\n const isPrimit = isPrimitive(value);\n if (!isPrimit) {\n const values = ddecompose(value, `${_prev}${key}`);\n output.push(...values);\n }\n });\n return output;\n}\n\nexport function decompose<T extends Ru>(\n val: T,\n sorter?: (a: string, b: string) => number,\n) {\n const output1 = ddecompose(val, '');\n output1.sort(sorter ?? sortMap);\n const regex = new RegExp(DELIMITER, 'g');\n const output2 = output1.map(value => value.replace(regex, '.'));\n\n return
|
|
1
|
+
{"version":3,"file":"decompose.cjs","sources":["../src/decompose.ts"],"sourcesContent":["import { DELIMITER } from './constants/strings';\nimport { isPrimitive } from './helpers';\nimport { sortMap } from './sortMap';\nimport { Ru } from './types';\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nfunction ddecompose(val: any, prev = '') {\n const _prev = prev ? prev + DELIMITER : '';\n const output: string[] = [];\n const entries1 = Object.entries(val);\n entries1.forEach(([key, value]) => {\n output.push(`${_prev}${key}`);\n const isPrimit = isPrimitive(value);\n if (!isPrimit) {\n const values = ddecompose(value, `${_prev}${key}`);\n output.push(...values);\n }\n });\n return output;\n}\n\nexport function decompose<T extends Ru>(\n val: T,\n sorter?: (a: string, b: string) => number,\n) {\n const output1 = ddecompose(val, '');\n output1.sort(sorter ?? sortMap);\n const regex = new RegExp(DELIMITER, 'g');\n const output2 = output1.map(value => value.replace(regex, '.'));\n\n return output2;\n}\n"],"names":["DELIMITER","isPrimitive","sortMap"],"mappings":";;;;;;AAKA;AACA,SAAS,UAAU,CAAC,GAAQ,EAAE,IAAI,GAAG,EAAE,EAAA;AACrC,IAAA,MAAM,KAAK,GAAG,IAAI,GAAG,IAAI,GAAGA,2BAAS,GAAG,EAAE,CAAC;IAC3C,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,MAAM,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACrC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,KAAI;QAChC,MAAM,CAAC,IAAI,CAAC,CAAA,EAAG,KAAK,CAAG,EAAA,GAAG,CAAE,CAAA,CAAC,CAAC;AAC9B,QAAA,MAAM,QAAQ,GAAGC,mBAAW,CAAC,KAAK,CAAC,CAAC;QACpC,IAAI,CAAC,QAAQ,EAAE;AACb,YAAA,MAAM,MAAM,GAAG,UAAU,CAAC,KAAK,EAAE,CAAG,EAAA,KAAK,CAAG,EAAA,GAAG,CAAE,CAAA,CAAC,CAAC;AACnD,YAAA,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,CAAC;SACxB;AACH,KAAC,CAAC,CAAC;AACH,IAAA,OAAO,MAAM,CAAC;AAChB,CAAC;AAEe,SAAA,SAAS,CACvB,GAAM,EACN,MAAyC,EAAA;IAEzC,MAAM,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;AACpC,IAAA,OAAO,CAAC,IAAI,CAAC,MAAM,IAAIC,eAAO,CAAC,CAAC;IAChC,MAAM,KAAK,GAAG,IAAI,MAAM,CAACF,2BAAS,EAAE,GAAG,CAAC,CAAC;AACzC,IAAA,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC;AAEhE,IAAA,OAAO,OAAO,CAAC;AACjB;;;;"}
|
package/lib/decompose.d.ts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { Ru } from './types';
|
|
2
|
-
export declare function decompose<T extends Ru>(val: T, sorter?: (a: string, b: string) => number):
|
|
2
|
+
export declare function decompose<T extends Ru>(val: T, sorter?: (a: string, b: string) => number): string[];
|
|
3
3
|
//# sourceMappingURL=decompose.d.ts.map
|
package/lib/decompose.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"decompose.d.ts","sourceRoot":"","sources":["../src/decompose.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,EAAE,EAAE,MAAM,SAAS,CAAC;AAkB7B,wBAAgB,SAAS,CAAC,CAAC,SAAS,EAAE,EACpC,GAAG,EAAE,CAAC,EACN,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,KAAK,MAAM,
|
|
1
|
+
{"version":3,"file":"decompose.d.ts","sourceRoot":"","sources":["../src/decompose.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,EAAE,EAAE,MAAM,SAAS,CAAC;AAkB7B,wBAAgB,SAAS,CAAC,CAAC,SAAS,EAAE,EACpC,GAAG,EAAE,CAAC,EACN,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,KAAK,MAAM,YAQ1C"}
|
package/lib/decompose.js
CHANGED
|
@@ -22,7 +22,7 @@ function decompose(val, sorter) {
|
|
|
22
22
|
output1.sort(sorter ?? sortMap);
|
|
23
23
|
const regex = new RegExp(DELIMITER, 'g');
|
|
24
24
|
const output2 = output1.map(value => value.replace(regex, '.'));
|
|
25
|
-
return
|
|
25
|
+
return output2;
|
|
26
26
|
}
|
|
27
27
|
|
|
28
28
|
export { decompose };
|
package/lib/decompose.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"decompose.js","sources":["../src/decompose.ts"],"sourcesContent":["import { DELIMITER } from './constants/strings';\nimport { isPrimitive } from './helpers';\nimport { sortMap } from './sortMap';\nimport { Ru } from './types';\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nfunction ddecompose(val: any, prev = '') {\n const _prev = prev ? prev + DELIMITER : '';\n const output: string[] = [];\n const entries1 = Object.entries(val);\n entries1.forEach(([key, value]) => {\n output.push(`${_prev}${key}`);\n const isPrimit = isPrimitive(value);\n if (!isPrimit) {\n const values = ddecompose(value, `${_prev}${key}`);\n output.push(...values);\n }\n });\n return output;\n}\n\nexport function decompose<T extends Ru>(\n val: T,\n sorter?: (a: string, b: string) => number,\n) {\n const output1 = ddecompose(val, '');\n output1.sort(sorter ?? sortMap);\n const regex = new RegExp(DELIMITER, 'g');\n const output2 = output1.map(value => value.replace(regex, '.'));\n\n return
|
|
1
|
+
{"version":3,"file":"decompose.js","sources":["../src/decompose.ts"],"sourcesContent":["import { DELIMITER } from './constants/strings';\nimport { isPrimitive } from './helpers';\nimport { sortMap } from './sortMap';\nimport { Ru } from './types';\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nfunction ddecompose(val: any, prev = '') {\n const _prev = prev ? prev + DELIMITER : '';\n const output: string[] = [];\n const entries1 = Object.entries(val);\n entries1.forEach(([key, value]) => {\n output.push(`${_prev}${key}`);\n const isPrimit = isPrimitive(value);\n if (!isPrimit) {\n const values = ddecompose(value, `${_prev}${key}`);\n output.push(...values);\n }\n });\n return output;\n}\n\nexport function decompose<T extends Ru>(\n val: T,\n sorter?: (a: string, b: string) => number,\n) {\n const output1 = ddecompose(val, '');\n output1.sort(sorter ?? sortMap);\n const regex = new RegExp(DELIMITER, 'g');\n const output2 = output1.map(value => value.replace(regex, '.'));\n\n return output2;\n}\n"],"names":[],"mappings":";;;;AAKA;AACA,SAAS,UAAU,CAAC,GAAQ,EAAE,IAAI,GAAG,EAAE,EAAA;AACrC,IAAA,MAAM,KAAK,GAAG,IAAI,GAAG,IAAI,GAAG,SAAS,GAAG,EAAE,CAAC;IAC3C,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,MAAM,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACrC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,KAAI;QAChC,MAAM,CAAC,IAAI,CAAC,CAAA,EAAG,KAAK,CAAG,EAAA,GAAG,CAAE,CAAA,CAAC,CAAC;AAC9B,QAAA,MAAM,QAAQ,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;QACpC,IAAI,CAAC,QAAQ,EAAE;AACb,YAAA,MAAM,MAAM,GAAG,UAAU,CAAC,KAAK,EAAE,CAAG,EAAA,KAAK,CAAG,EAAA,GAAG,CAAE,CAAA,CAAC,CAAC;AACnD,YAAA,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,CAAC;SACxB;AACH,KAAC,CAAC,CAAC;AACH,IAAA,OAAO,MAAM,CAAC;AAChB,CAAC;AAEe,SAAA,SAAS,CACvB,GAAM,EACN,MAAyC,EAAA;IAEzC,MAAM,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;AACpC,IAAA,OAAO,CAAC,IAAI,CAAC,MAAM,IAAI,OAAO,CAAC,CAAC;IAChC,MAAM,KAAK,GAAG,IAAI,MAAM,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;AACzC,IAAA,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC;AAEhE,IAAA,OAAO,OAAO,CAAC;AACjB;;;;"}
|
package/lib/decomposeSV.cjs
CHANGED
|
@@ -4,8 +4,8 @@ var constants_strings = require('./constants/strings.cjs');
|
|
|
4
4
|
var sortMap = require('./sortMap.cjs');
|
|
5
5
|
|
|
6
6
|
function ddecompose(val, prev = '') {
|
|
7
|
-
const _prev = prev ? prev + constants_strings.DELIMITER : '';
|
|
8
7
|
const output = [];
|
|
8
|
+
const _prev = prev ? prev + constants_strings.DELIMITER : '';
|
|
9
9
|
prev !== '' && output.push(prev);
|
|
10
10
|
if (typeof val === 'string') {
|
|
11
11
|
output.push(`${_prev}${val}`);
|
|
@@ -17,11 +17,11 @@ function ddecompose(val, prev = '') {
|
|
|
17
17
|
return output;
|
|
18
18
|
}
|
|
19
19
|
function decomposeSV(val, sorter) {
|
|
20
|
-
const
|
|
21
|
-
|
|
20
|
+
const output1 = ddecompose(val, '');
|
|
21
|
+
output1.sort(sorter ?? sortMap.sortMap);
|
|
22
22
|
const regex = new RegExp(constants_strings.DELIMITER, 'g');
|
|
23
|
-
const
|
|
24
|
-
return
|
|
23
|
+
const output2 = output1.map(value => value.replace(regex, '.'));
|
|
24
|
+
return output2;
|
|
25
25
|
}
|
|
26
26
|
|
|
27
27
|
exports.decomposeSV = decomposeSV;
|
package/lib/decomposeSV.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"decomposeSV.cjs","sources":["../src/decomposeSV.ts"],"sourcesContent":["import { DELIMITER } from './constants/strings';\nimport { sortMap } from './sortMap';\nimport type { StateMatching, StateValue } from './types';\n\nfunction ddecompose(val: StateValue, prev = '') {\n const _prev = prev ? prev + DELIMITER : '';\n
|
|
1
|
+
{"version":3,"file":"decomposeSV.cjs","sources":["../src/decomposeSV.ts"],"sourcesContent":["import { DELIMITER } from './constants/strings';\nimport { sortMap } from './sortMap';\nimport type { StateMatching, StateValue } from './types';\n\nfunction ddecompose(val: StateValue, prev = '') {\n const output: string[] = [];\n\n const _prev = prev ? prev + DELIMITER : '';\n prev !== '' && output.push(prev);\n\n if (typeof val === 'string') {\n output.push(`${_prev}${val}`);\n } else {\n const keys = Object.keys(val);\n output.push(\n ...keys.map(key => ddecompose(val[key], `${_prev}${key}`)).flat(),\n );\n }\n\n return output;\n}\n\nexport function decomposeSV<T extends StateValue>(\n val: T,\n sorter?: (a: string, b: string) => number,\n): readonly StateMatching<T>[] {\n const output1 = ddecompose(val, '');\n output1.sort(sorter ?? sortMap);\n const regex = new RegExp(DELIMITER, 'g');\n const output2 = output1.map(value => value.replace(regex, '.'));\n\n return output2 as StateMatching<T>[];\n}\n"],"names":["DELIMITER","sortMap"],"mappings":";;;;;AAIA,SAAS,UAAU,CAAC,GAAe,EAAE,IAAI,GAAG,EAAE,EAAA;IAC5C,MAAM,MAAM,GAAa,EAAE,CAAC;AAE5B,IAAA,MAAM,KAAK,GAAG,IAAI,GAAG,IAAI,GAAGA,2BAAS,GAAG,EAAE,CAAC;IAC3C,IAAI,KAAK,EAAE,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAEjC,IAAA,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;QAC3B,MAAM,CAAC,IAAI,CAAC,CAAA,EAAG,KAAK,CAAG,EAAA,GAAG,CAAE,CAAA,CAAC,CAAC;KAC/B;SAAM;QACL,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC9B,QAAA,MAAM,CAAC,IAAI,CACT,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAG,EAAA,KAAK,CAAG,EAAA,GAAG,CAAE,CAAA,CAAC,CAAC,CAAC,IAAI,EAAE,CAClE,CAAC;KACH;AAED,IAAA,OAAO,MAAM,CAAC;AAChB,CAAC;AAEe,SAAA,WAAW,CACzB,GAAM,EACN,MAAyC,EAAA;IAEzC,MAAM,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;AACpC,IAAA,OAAO,CAAC,IAAI,CAAC,MAAM,IAAIC,eAAO,CAAC,CAAC;IAChC,MAAM,KAAK,GAAG,IAAI,MAAM,CAACD,2BAAS,EAAE,GAAG,CAAC,CAAC;AACzC,IAAA,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC;AAEhE,IAAA,OAAO,OAA6B,CAAC;AACvC;;;;"}
|
package/lib/decomposeSV.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"decomposeSV.d.ts","sourceRoot":"","sources":["../src/decomposeSV.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"decomposeSV.d.ts","sourceRoot":"","sources":["../src/decomposeSV.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAoBzD,wBAAgB,WAAW,CAAC,CAAC,SAAS,UAAU,EAC9C,GAAG,EAAE,CAAC,EACN,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,KAAK,MAAM,GACxC,SAAS,aAAa,CAAC,CAAC,CAAC,EAAE,CAO7B"}
|
package/lib/decomposeSV.js
CHANGED
|
@@ -2,8 +2,8 @@ import { DELIMITER } from './constants/strings.js';
|
|
|
2
2
|
import { sortMap } from './sortMap.js';
|
|
3
3
|
|
|
4
4
|
function ddecompose(val, prev = '') {
|
|
5
|
-
const _prev = prev ? prev + DELIMITER : '';
|
|
6
5
|
const output = [];
|
|
6
|
+
const _prev = prev ? prev + DELIMITER : '';
|
|
7
7
|
prev !== '' && output.push(prev);
|
|
8
8
|
if (typeof val === 'string') {
|
|
9
9
|
output.push(`${_prev}${val}`);
|
|
@@ -15,11 +15,11 @@ function ddecompose(val, prev = '') {
|
|
|
15
15
|
return output;
|
|
16
16
|
}
|
|
17
17
|
function decomposeSV(val, sorter) {
|
|
18
|
-
const
|
|
19
|
-
|
|
18
|
+
const output1 = ddecompose(val, '');
|
|
19
|
+
output1.sort(sorter ?? sortMap);
|
|
20
20
|
const regex = new RegExp(DELIMITER, 'g');
|
|
21
|
-
const
|
|
22
|
-
return
|
|
21
|
+
const output2 = output1.map(value => value.replace(regex, '.'));
|
|
22
|
+
return output2;
|
|
23
23
|
}
|
|
24
24
|
|
|
25
25
|
export { decomposeSV };
|
package/lib/decomposeSV.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"decomposeSV.js","sources":["../src/decomposeSV.ts"],"sourcesContent":["import { DELIMITER } from './constants/strings';\nimport { sortMap } from './sortMap';\nimport type { StateMatching, StateValue } from './types';\n\nfunction ddecompose(val: StateValue, prev = '') {\n const _prev = prev ? prev + DELIMITER : '';\n
|
|
1
|
+
{"version":3,"file":"decomposeSV.js","sources":["../src/decomposeSV.ts"],"sourcesContent":["import { DELIMITER } from './constants/strings';\nimport { sortMap } from './sortMap';\nimport type { StateMatching, StateValue } from './types';\n\nfunction ddecompose(val: StateValue, prev = '') {\n const output: string[] = [];\n\n const _prev = prev ? prev + DELIMITER : '';\n prev !== '' && output.push(prev);\n\n if (typeof val === 'string') {\n output.push(`${_prev}${val}`);\n } else {\n const keys = Object.keys(val);\n output.push(\n ...keys.map(key => ddecompose(val[key], `${_prev}${key}`)).flat(),\n );\n }\n\n return output;\n}\n\nexport function decomposeSV<T extends StateValue>(\n val: T,\n sorter?: (a: string, b: string) => number,\n): readonly StateMatching<T>[] {\n const output1 = ddecompose(val, '');\n output1.sort(sorter ?? sortMap);\n const regex = new RegExp(DELIMITER, 'g');\n const output2 = output1.map(value => value.replace(regex, '.'));\n\n return output2 as StateMatching<T>[];\n}\n"],"names":[],"mappings":";;;AAIA,SAAS,UAAU,CAAC,GAAe,EAAE,IAAI,GAAG,EAAE,EAAA;IAC5C,MAAM,MAAM,GAAa,EAAE,CAAC;AAE5B,IAAA,MAAM,KAAK,GAAG,IAAI,GAAG,IAAI,GAAG,SAAS,GAAG,EAAE,CAAC;IAC3C,IAAI,KAAK,EAAE,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAEjC,IAAA,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;QAC3B,MAAM,CAAC,IAAI,CAAC,CAAA,EAAG,KAAK,CAAG,EAAA,GAAG,CAAE,CAAA,CAAC,CAAC;KAC/B;SAAM;QACL,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC9B,QAAA,MAAM,CAAC,IAAI,CACT,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAG,EAAA,KAAK,CAAG,EAAA,GAAG,CAAE,CAAA,CAAC,CAAC,CAAC,IAAI,EAAE,CAClE,CAAC;KACH;AAED,IAAA,OAAO,MAAM,CAAC;AAChB,CAAC;AAEe,SAAA,WAAW,CACzB,GAAM,EACN,MAAyC,EAAA;IAEzC,MAAM,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;AACpC,IAAA,OAAO,CAAC,IAAI,CAAC,MAAM,IAAI,OAAO,CAAC,CAAC;IAChC,MAAM,KAAK,GAAG,IAAI,MAAM,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;AACzC,IAAA,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC;AAEhE,IAAA,OAAO,OAA6B,CAAC;AACvC;;;;"}
|
package/lib/recompose.cjs
CHANGED
|
@@ -8,25 +8,49 @@ function recomposeObjectUrl(shape, value) {
|
|
|
8
8
|
const obj = {};
|
|
9
9
|
if (shape.length <= 0)
|
|
10
10
|
return obj;
|
|
11
|
-
const keys = shape.split(constants_strings.
|
|
11
|
+
const keys = shape.split(constants_strings.SEPARATOR);
|
|
12
12
|
if (keys.length === 1) {
|
|
13
13
|
const key = keys.shift();
|
|
14
14
|
obj[key] = value;
|
|
15
15
|
}
|
|
16
16
|
else {
|
|
17
17
|
const key = keys.shift();
|
|
18
|
-
obj[key] = recomposeObjectUrl(keys.join(constants_strings.
|
|
18
|
+
obj[key] = recomposeObjectUrl(keys.join(constants_strings.SEPARATOR), value);
|
|
19
19
|
}
|
|
20
20
|
return obj;
|
|
21
21
|
}
|
|
22
|
+
/**
|
|
23
|
+
* Recompose a flatten object
|
|
24
|
+
* @example
|
|
25
|
+
*
|
|
26
|
+
* { 'data.age': 10, 'human.login': 'login' }
|
|
27
|
+
* will become
|
|
28
|
+
* {
|
|
29
|
+
data: {
|
|
30
|
+
age: 10,
|
|
31
|
+
},
|
|
32
|
+
human: {
|
|
33
|
+
login: 'login',
|
|
34
|
+
},
|
|
35
|
+
}
|
|
36
|
+
* @remark
|
|
37
|
+
* The generated typescript type takes too much ressources
|
|
38
|
+
|
|
39
|
+
* @todo
|
|
40
|
+
Add type to the return
|
|
41
|
+
*/
|
|
22
42
|
function recompose(shape) {
|
|
23
43
|
const entries = Object.entries(shape);
|
|
24
44
|
const arr = [];
|
|
25
45
|
entries.forEach(([key, value]) => {
|
|
26
46
|
arr.push(recomposeObjectUrl(key, value));
|
|
27
47
|
});
|
|
48
|
+
/**
|
|
49
|
+
* @todo
|
|
50
|
+
* Add a return type
|
|
51
|
+
*/
|
|
28
52
|
const output = tsDeepmerge.merge(...arr);
|
|
29
|
-
return
|
|
53
|
+
return output;
|
|
30
54
|
}
|
|
31
55
|
|
|
32
56
|
exports.recompose = recompose;
|
package/lib/recompose.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"recompose.cjs","sources":["../src/recompose.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { merge } from 'ts-deepmerge';\nimport {
|
|
1
|
+
{"version":3,"file":"recompose.cjs","sources":["../src/recompose.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { merge } from 'ts-deepmerge';\nimport { SEPARATOR } from './constants/strings';\nimport type { Recompose, Ru } from './types';\n\nexport function recomposeObjectUrl<T>(shape: string, value: T) {\n const obj: Ru = {};\n if (shape.length <= 0) return obj;\n\n const keys = shape.split(SEPARATOR);\n if (keys.length === 1) {\n const key = keys.shift();\n obj[key!] = value;\n } else {\n const key = keys.shift();\n obj[key!] = recomposeObjectUrl(keys.join(SEPARATOR), value);\n }\n\n return obj;\n}\n\n/**\n * Recompose a flatten object \n * @example\n * \n * { 'data.age': 10, 'human.login': 'login' }\n * will become\n * {\n data: {\n age: 10,\n },\n human: {\n login: 'login',\n },\n }\n * @remark \n * The generated typescript type takes too much ressources\n\n * @todo\n Add type to the return\n */\nexport function recompose<T extends Ru>(shape: T) {\n const entries = Object.entries(shape);\n const arr: any[] = [];\n entries.forEach(([key, value]) => {\n arr.push(recomposeObjectUrl(key, value));\n });\n /**\n * @todo\n * Add a return type\n */\n const output = merge(...arr);\n return output as Recompose<T>;\n}\n"],"names":["SEPARATOR","merge"],"mappings":";;;;;AAAA;AAKgB,SAAA,kBAAkB,CAAI,KAAa,EAAE,KAAQ,EAAA;IAC3D,MAAM,GAAG,GAAO,EAAE,CAAC;AACnB,IAAA,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC;AAAE,QAAA,OAAO,GAAG,CAAC;IAElC,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAACA,2BAAS,CAAC,CAAC;AACpC,IAAA,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE;AACrB,QAAA,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;AACzB,QAAA,GAAG,CAAC,GAAI,CAAC,GAAG,KAAK,CAAC;KACnB;SAAM;AACL,QAAA,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;AACzB,QAAA,GAAG,CAAC,GAAI,CAAC,GAAG,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAACA,2BAAS,CAAC,EAAE,KAAK,CAAC,CAAC;KAC7D;AAED,IAAA,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;;;;;;;;;;;;;;;;;;AAmBG;AACG,SAAU,SAAS,CAAe,KAAQ,EAAA;IAC9C,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACtC,MAAM,GAAG,GAAU,EAAE,CAAC;IACtB,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,KAAI;QAC/B,GAAG,CAAC,IAAI,CAAC,kBAAkB,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC;AAC3C,KAAC,CAAC,CAAC;AACH;;;AAGG;AACH,IAAA,MAAM,MAAM,GAAGC,iBAAK,CAAC,GAAG,GAAG,CAAC,CAAC;AAC7B,IAAA,OAAO,MAAsB,CAAC;AAChC;;;;;"}
|