@k4a_l/dirtreeist 0.2.5 → 0.2.8
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 +32 -32
- package/dist/constants/constant.js +2 -2
- package/dist/constants/constant.js.map +1 -1
- package/dist/index.cjs +54 -13
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/dist/modules/convert.d.ts.map +1 -1
- package/dist/modules/convert.js +20 -7
- package/dist/modules/convert.js.map +1 -1
- package/dist/modules/options.d.ts.map +1 -1
- package/dist/modules/options.js +29 -2
- package/dist/modules/options.js.map +1 -1
- package/dist/types/index.d.ts +3 -1
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js +2 -1
- package/dist/types/index.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -26,24 +26,24 @@ https://www.k4a.me/tools/dirtreeist
|
|
|
26
26
|
|
|
27
27
|
```markdown
|
|
28
28
|
- /components
|
|
29
|
-
|
|
30
|
-
|
|
29
|
+
- App.tsx
|
|
30
|
+
- App.css
|
|
31
31
|
- config.json
|
|
32
32
|
- /utils
|
|
33
|
-
|
|
34
|
-
|
|
33
|
+
- converter.ts
|
|
34
|
+
- parser.ts
|
|
35
35
|
```
|
|
36
36
|
|
|
37
37
|
### Output
|
|
38
38
|
|
|
39
39
|
```text
|
|
40
40
|
├─/components
|
|
41
|
-
│
|
|
42
|
-
│
|
|
41
|
+
│ ├─App.tsx
|
|
42
|
+
│ └─App.css
|
|
43
43
|
├─config.json
|
|
44
44
|
└─/utils
|
|
45
|
-
|
|
46
|
-
|
|
45
|
+
└─converter.ts
|
|
46
|
+
└─parser.ts
|
|
47
47
|
```
|
|
48
48
|
|
|
49
49
|
## How to use
|
|
@@ -53,20 +53,20 @@ https://www.k4a.me/tools/dirtreeist
|
|
|
53
53
|
```ts
|
|
54
54
|
const markdown = `
|
|
55
55
|
- /components
|
|
56
|
-
|
|
57
|
-
|
|
56
|
+
- App.tsx
|
|
57
|
+
- App.css
|
|
58
58
|
- config.json
|
|
59
59
|
- /utils
|
|
60
|
-
|
|
61
|
-
|
|
60
|
+
- converter.ts
|
|
61
|
+
- parser.ts
|
|
62
62
|
`
|
|
63
63
|
```
|
|
64
64
|
|
|
65
65
|
```tsx
|
|
66
|
-
import
|
|
66
|
+
import dirtreeist, { Options } from '@k4a_l/dirtreeist'
|
|
67
67
|
|
|
68
68
|
const options: Options = {}
|
|
69
|
-
const outputs =
|
|
69
|
+
const outputs = dirtreeist(markdown, options) // DirTree[] => output[]
|
|
70
70
|
|
|
71
71
|
console.log(outputs)
|
|
72
72
|
```
|
|
@@ -90,8 +90,8 @@ console.log(outputs)
|
|
|
90
90
|
|
|
91
91
|
```ts
|
|
92
92
|
type DirNode = {
|
|
93
|
-
|
|
94
|
-
|
|
93
|
+
name: string
|
|
94
|
+
children: DirNode[]
|
|
95
95
|
}
|
|
96
96
|
|
|
97
97
|
type DirTree = DirNode[]
|
|
@@ -101,10 +101,10 @@ type DirTree = DirNode[]
|
|
|
101
101
|
|
|
102
102
|
```ts
|
|
103
103
|
type Options = {
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
104
|
+
treeType?: 'normal' | 'bold' | 'ascii'
|
|
105
|
+
emptyBeforeUpperHierarche?: boolean
|
|
106
|
+
spaceBeforeName?: boolean
|
|
107
|
+
spaceSize?: number
|
|
108
108
|
}
|
|
109
109
|
```
|
|
110
110
|
|
|
@@ -150,13 +150,13 @@ default:`false`
|
|
|
150
150
|
```text
|
|
151
151
|
(true)
|
|
152
152
|
├─/components
|
|
153
|
-
│
|
|
154
|
-
│
|
|
153
|
+
│ ├─App.tsx
|
|
154
|
+
│ └─App.css
|
|
155
155
|
│
|
|
156
156
|
├─config.json
|
|
157
157
|
└─/utils
|
|
158
|
-
|
|
159
|
-
|
|
158
|
+
└─converter.ts
|
|
159
|
+
└─parser.ts
|
|
160
160
|
```
|
|
161
161
|
|
|
162
162
|
#### spaceBeforeName : boolean
|
|
@@ -167,12 +167,12 @@ default: `false`
|
|
|
167
167
|
|
|
168
168
|
```text
|
|
169
169
|
├─ /components
|
|
170
|
-
│
|
|
171
|
-
│
|
|
170
|
+
│ ├─ App.tsx
|
|
171
|
+
│ └─ App.css
|
|
172
172
|
├─ config.json
|
|
173
173
|
└─ /utils
|
|
174
|
-
|
|
175
|
-
|
|
174
|
+
└─ converter.ts
|
|
175
|
+
└─ parser.ts
|
|
176
176
|
```
|
|
177
177
|
|
|
178
178
|
#### spaceSize : number
|
|
@@ -183,10 +183,10 @@ default:`2`
|
|
|
183
183
|
|
|
184
184
|
```text
|
|
185
185
|
├──/components
|
|
186
|
-
│
|
|
187
|
-
│
|
|
186
|
+
│ ├──App.tsx
|
|
187
|
+
│ └──App.css
|
|
188
188
|
├──config.json
|
|
189
189
|
└──/utils
|
|
190
|
-
|
|
191
|
-
|
|
190
|
+
└──converter.ts
|
|
191
|
+
└──parser.ts
|
|
192
192
|
```
|
|
@@ -4,14 +4,14 @@ const symbolSets = {
|
|
|
4
4
|
horizontal: '─',
|
|
5
5
|
crossing: '├',
|
|
6
6
|
end: '└',
|
|
7
|
-
space: '
|
|
7
|
+
space: ' ',
|
|
8
8
|
},
|
|
9
9
|
bold: {
|
|
10
10
|
vertical: '┃',
|
|
11
11
|
horizontal: '━',
|
|
12
12
|
crossing: '┣',
|
|
13
13
|
end: '┗',
|
|
14
|
-
space: '
|
|
14
|
+
space: ' ',
|
|
15
15
|
},
|
|
16
16
|
ascii: {
|
|
17
17
|
vertical: '|',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constant.js","sourceRoot":"","sources":["../../src/constants/constant.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,GAEZ;IACF,MAAM,EAAE;QACN,QAAQ,EAAE,GAAG;QACb,UAAU,EAAE,GAAG;QACf,QAAQ,EAAE,GAAG;QACb,GAAG,EAAE,GAAG;QACR,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"constant.js","sourceRoot":"","sources":["../../src/constants/constant.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,GAEZ;IACF,MAAM,EAAE;QACN,QAAQ,EAAE,GAAG;QACb,UAAU,EAAE,GAAG;QACf,QAAQ,EAAE,GAAG;QACb,GAAG,EAAE,GAAG;QACR,KAAK,EAAE,GAAG;KACX;IACD,IAAI,EAAE;QACJ,QAAQ,EAAE,GAAG;QACb,UAAU,EAAE,GAAG;QACf,QAAQ,EAAE,GAAG;QACb,GAAG,EAAE,GAAG;QACR,KAAK,EAAE,GAAG;KACX;IACD,KAAK,EAAE;QACL,QAAQ,EAAE,GAAG;QACb,UAAU,EAAE,GAAG;QACf,QAAQ,EAAE,GAAG;QACb,GAAG,EAAE,GAAG;QACR,KAAK,EAAE,GAAG;KACX;CACF,CAAA;AAED,MAAM,cAAc,GAAgB;IAClC,QAAQ,EAAE,QAAQ;IAClB,eAAe,EAAE,KAAK;IACtB,SAAS,EAAE,CAAC;IACZ,yBAAyB,EAAE,KAAK;CACjC,CAAA;AAED,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,CAAA"}
|
package/dist/index.cjs
CHANGED
|
@@ -9848,14 +9848,14 @@ const symbolSets = {
|
|
|
9848
9848
|
horizontal: '─',
|
|
9849
9849
|
crossing: '├',
|
|
9850
9850
|
end: '└',
|
|
9851
|
-
space: '
|
|
9851
|
+
space: ' ',
|
|
9852
9852
|
},
|
|
9853
9853
|
bold: {
|
|
9854
9854
|
vertical: '┃',
|
|
9855
9855
|
horizontal: '━',
|
|
9856
9856
|
crossing: '┣',
|
|
9857
9857
|
end: '┗',
|
|
9858
|
-
space: '
|
|
9858
|
+
space: ' ',
|
|
9859
9859
|
},
|
|
9860
9860
|
ascii: {
|
|
9861
9861
|
vertical: '|',
|
|
@@ -9872,11 +9872,39 @@ const defaultOptions = {
|
|
|
9872
9872
|
emptyBeforeUpperHierarche: false,
|
|
9873
9873
|
};
|
|
9874
9874
|
|
|
9875
|
+
const treeTypeValues = ['normal', 'bold', 'ascii'];
|
|
9876
|
+
|
|
9877
|
+
const optionGuard = (value, defaultValue, key) => {
|
|
9878
|
+
if (key === 'spaceSize') {
|
|
9879
|
+
if (typeof value !== 'number')
|
|
9880
|
+
return defaultValue;
|
|
9881
|
+
if (value < 1)
|
|
9882
|
+
return defaultValue;
|
|
9883
|
+
return value;
|
|
9884
|
+
}
|
|
9885
|
+
if (key === 'emptyBeforeUpperHierarche') {
|
|
9886
|
+
if (typeof value !== 'boolean')
|
|
9887
|
+
return defaultValue;
|
|
9888
|
+
return value;
|
|
9889
|
+
}
|
|
9890
|
+
if (key === 'spaceBeforeName') {
|
|
9891
|
+
if (typeof value !== 'boolean')
|
|
9892
|
+
return defaultValue;
|
|
9893
|
+
return value;
|
|
9894
|
+
}
|
|
9895
|
+
if (key === 'treeType') {
|
|
9896
|
+
if (!treeTypeValues.includes(value))
|
|
9897
|
+
return defaultValue;
|
|
9898
|
+
return value;
|
|
9899
|
+
}
|
|
9900
|
+
return defaultValue;
|
|
9901
|
+
};
|
|
9875
9902
|
const pickOption = (option, defaultOption, key) => {
|
|
9876
9903
|
if (option === undefined)
|
|
9877
9904
|
return defaultOptions[key];
|
|
9878
|
-
if (option[key] !== undefined)
|
|
9879
|
-
return option[key];
|
|
9905
|
+
if (option[key] !== undefined) {
|
|
9906
|
+
return optionGuard(option[key], defaultOption[key], key);
|
|
9907
|
+
}
|
|
9880
9908
|
return defaultOption[key];
|
|
9881
9909
|
};
|
|
9882
9910
|
const buildOption = (options, defaultOptions) => {
|
|
@@ -9893,6 +9921,16 @@ const makeSymbol = (symbolSet, isLast) => {
|
|
|
9893
9921
|
return symbolSet.end;
|
|
9894
9922
|
return symbolSet.crossing;
|
|
9895
9923
|
};
|
|
9924
|
+
const makeAsciiSpace = (spaceSize) => {
|
|
9925
|
+
return new Array(spaceSize).fill(' ').reduce((prev, cur) => {
|
|
9926
|
+
return prev + cur;
|
|
9927
|
+
}, '');
|
|
9928
|
+
};
|
|
9929
|
+
const makeSpace = (spaceSize) => {
|
|
9930
|
+
return (new Array(Math.floor(spaceSize / 2)).fill(' ').reduce((prev, cur) => {
|
|
9931
|
+
return prev + cur;
|
|
9932
|
+
}, '') + (spaceSize % 2 == 1 ? ' ' : ''));
|
|
9933
|
+
};
|
|
9896
9934
|
const reduce = (dirTree, options, prefix, hie, isLastGroup) => {
|
|
9897
9935
|
let result = ``;
|
|
9898
9936
|
dirTree.some((dirNode, dirNodeIndex) => {
|
|
@@ -9903,16 +9941,14 @@ const reduce = (dirTree, options, prefix, hie, isLastGroup) => {
|
|
|
9903
9941
|
// 現在
|
|
9904
9942
|
const currentPrefix = prefix +
|
|
9905
9943
|
symbol +
|
|
9906
|
-
new Array(Math.floor(options.spaceSize / 2))
|
|
9944
|
+
new Array(Math.floor(options.spaceSize / (options.treeType === 'ascii' ? 1 : 2)))
|
|
9907
9945
|
.fill(symbolSet.horizontal)
|
|
9908
9946
|
.reduce((prev, cur) => prev + cur, '');
|
|
9909
9947
|
const currentLine = `${currentPrefix}${options.spaceBeforeName ? ' ' : ''}${dirNode.name}`;
|
|
9910
9948
|
// 子
|
|
9911
|
-
const spaces =
|
|
9912
|
-
.
|
|
9913
|
-
.
|
|
9914
|
-
return prev + cur;
|
|
9915
|
-
}, '');
|
|
9949
|
+
const spaces = options.treeType === 'ascii'
|
|
9950
|
+
? makeAsciiSpace(options.spaceSize)
|
|
9951
|
+
: makeSpace(options.spaceSize);
|
|
9916
9952
|
const childrenLines = reduce(dirNode.children, options, prefix + (isLast ? symbolSet.space : symbolSet.vertical) + spaces, hie + 1, isLastGroup || isLast);
|
|
9917
9953
|
// 追加
|
|
9918
9954
|
result +=
|
|
@@ -9926,13 +9962,18 @@ const reduce = (dirTree, options, prefix, hie, isLastGroup) => {
|
|
|
9926
9962
|
return result.slice(0, hie === 0 ? -1 : result.length);
|
|
9927
9963
|
};
|
|
9928
9964
|
const convert = (dirTree, options) => {
|
|
9929
|
-
|
|
9965
|
+
try {
|
|
9966
|
+
return reduce(dirTree, buildOption(options, defaultOptions), '', 0, false);
|
|
9967
|
+
}
|
|
9968
|
+
catch (error) {
|
|
9969
|
+
return 'Some errors occurred!\n\n' + String(error) + '\n\n' + 'Please contact to developper.';
|
|
9970
|
+
}
|
|
9930
9971
|
};
|
|
9931
9972
|
|
|
9932
|
-
const
|
|
9973
|
+
const dirtreeist = (markdown, option) => {
|
|
9933
9974
|
return parse(markdown).map((dirtree) => convert(dirtree, option));
|
|
9934
9975
|
};
|
|
9935
9976
|
|
|
9936
9977
|
exports.convert = convert;
|
|
9937
|
-
exports["default"] =
|
|
9978
|
+
exports["default"] = dirtreeist;
|
|
9938
9979
|
exports.parse = parse;
|
package/dist/index.d.ts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { parse } from './modules/parse.js';
|
|
2
2
|
import { convert } from './modules/convert.js';
|
|
3
3
|
import { DirTree, Options } from './types/index';
|
|
4
|
-
declare const
|
|
4
|
+
declare const dirtreeist: (markdown: string, option?: Options) => string[];
|
|
5
5
|
export { parse, convert };
|
|
6
|
-
export default
|
|
6
|
+
export default dirtreeist;
|
|
7
7
|
export type { DirTree, Options };
|
|
8
8
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAA;AAC1C,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAA;AAE9C,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AAEhD,QAAA,MAAM,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAA;AAC1C,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAA;AAE9C,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AAEhD,QAAA,MAAM,UAAU,aAAc,MAAM,WAAW,OAAO,aAErD,CAAA;AAED,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,CAAA;AACzB,eAAe,UAAU,CAAA;AACzB,YAAY,EAAE,OAAO,EAAE,OAAO,EAAE,CAAA"}
|
package/dist/index.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { parse } from './modules/parse.js';
|
|
2
2
|
import { convert } from './modules/convert.js';
|
|
3
|
-
const
|
|
3
|
+
const dirtreeist = (markdown, option) => {
|
|
4
4
|
return parse(markdown).map((dirtree) => convert(dirtree, option));
|
|
5
5
|
};
|
|
6
6
|
export { parse, convert };
|
|
7
|
-
export default
|
|
7
|
+
export default dirtreeist;
|
|
8
8
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAA;AAC1C,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAA;AAI9C,MAAM,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAA;AAC1C,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAA;AAI9C,MAAM,UAAU,GAAG,CAAC,QAAgB,EAAE,MAAgB,EAAE,EAAE;IACxD,OAAO,KAAK,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAA;AACnE,CAAC,CAAA;AAED,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,CAAA;AACzB,eAAe,UAAU,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"convert.d.ts","sourceRoot":"","sources":["../../src/modules/convert.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,OAAO,EAA0B,MAAM,aAAa,CAAA;
|
|
1
|
+
{"version":3,"file":"convert.d.ts","sourceRoot":"","sources":["../../src/modules/convert.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,OAAO,EAA0B,MAAM,aAAa,CAAA;AA6EtE,QAAA,MAAM,OAAO,+BAAgC,OAAO,KAAG,MAMtD,CAAA;AAED,OAAO,EAAE,OAAO,EAAE,CAAA"}
|
package/dist/modules/convert.js
CHANGED
|
@@ -5,6 +5,16 @@ const makeSymbol = (symbolSet, isLast) => {
|
|
|
5
5
|
return symbolSet.end;
|
|
6
6
|
return symbolSet.crossing;
|
|
7
7
|
};
|
|
8
|
+
const makeAsciiSpace = (spaceSize) => {
|
|
9
|
+
return new Array(spaceSize).fill(' ').reduce((prev, cur) => {
|
|
10
|
+
return prev + cur;
|
|
11
|
+
}, '');
|
|
12
|
+
};
|
|
13
|
+
const makeSpace = (spaceSize) => {
|
|
14
|
+
return (new Array(Math.floor(spaceSize / 2)).fill(' ').reduce((prev, cur) => {
|
|
15
|
+
return prev + cur;
|
|
16
|
+
}, '') + (spaceSize % 2 == 1 ? ' ' : ''));
|
|
17
|
+
};
|
|
8
18
|
const reduce = (dirTree, options, prefix, hie, isLastGroup) => {
|
|
9
19
|
let result = ``;
|
|
10
20
|
dirTree.some((dirNode, dirNodeIndex) => {
|
|
@@ -15,16 +25,14 @@ const reduce = (dirTree, options, prefix, hie, isLastGroup) => {
|
|
|
15
25
|
// 現在
|
|
16
26
|
const currentPrefix = prefix +
|
|
17
27
|
symbol +
|
|
18
|
-
new Array(Math.floor(options.spaceSize / 2))
|
|
28
|
+
new Array(Math.floor(options.spaceSize / (options.treeType === 'ascii' ? 1 : 2)))
|
|
19
29
|
.fill(symbolSet.horizontal)
|
|
20
30
|
.reduce((prev, cur) => prev + cur, '');
|
|
21
31
|
const currentLine = `${currentPrefix}${options.spaceBeforeName ? ' ' : ''}${dirNode.name}`;
|
|
22
32
|
// 子
|
|
23
|
-
const spaces =
|
|
24
|
-
.
|
|
25
|
-
.
|
|
26
|
-
return prev + cur;
|
|
27
|
-
}, '');
|
|
33
|
+
const spaces = options.treeType === 'ascii'
|
|
34
|
+
? makeAsciiSpace(options.spaceSize)
|
|
35
|
+
: makeSpace(options.spaceSize);
|
|
28
36
|
const childrenLines = reduce(dirNode.children, options, prefix + (isLast ? symbolSet.space : symbolSet.vertical) + spaces, hie + 1, isLastGroup || isLast);
|
|
29
37
|
// 追加
|
|
30
38
|
result +=
|
|
@@ -38,7 +46,12 @@ const reduce = (dirTree, options, prefix, hie, isLastGroup) => {
|
|
|
38
46
|
return result.slice(0, hie === 0 ? -1 : result.length);
|
|
39
47
|
};
|
|
40
48
|
const convert = (dirTree, options) => {
|
|
41
|
-
|
|
49
|
+
try {
|
|
50
|
+
return reduce(dirTree, buildOption(options, defaultOptions), '', 0, false);
|
|
51
|
+
}
|
|
52
|
+
catch (error) {
|
|
53
|
+
return 'Some errors occurred!\n\n' + String(error) + '\n\n' + 'Please contact to developper.';
|
|
54
|
+
}
|
|
42
55
|
};
|
|
43
56
|
export { convert };
|
|
44
57
|
//# sourceMappingURL=convert.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"convert.js","sourceRoot":"","sources":["../../src/modules/convert.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAA;AAElE,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AAE1C,MAAM,UAAU,GAAG,CAAC,SAAoB,EAAE,MAAe,EAAU,EAAE;IACnE,IAAI,MAAM;QAAE,OAAO,SAAS,CAAC,GAAG,CAAA;IAChC,OAAO,SAAS,CAAC,QAAQ,CAAA;AAC3B,CAAC,CAAA;AAED,MAAM,MAAM,GAAG,CACb,OAAgB,EAChB,OAAoB,EACpB,MAAc,EACd,GAAW,EACX,WAAoB,EACZ,EAAE;IACV,IAAI,MAAM,GAAG,EAAE,CAAA;IACf,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE;QACrC,KAAK;QACL,MAAM,MAAM,GAAG,YAAY,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,CAAA;QACjD,MAAM,SAAS,GAAG,UAAU,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAA;QAC9C,MAAM,MAAM,GAAG,UAAU,CAAC,SAAS,EAAE,MAAM,CAAC,CAAA;QAE5C,KAAK;QACL,MAAM,aAAa,GACjB,MAAM;YACN,MAAM;YACN,IAAI,KAAK,
|
|
1
|
+
{"version":3,"file":"convert.js","sourceRoot":"","sources":["../../src/modules/convert.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../../src/modules/options.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,WAAW,
|
|
1
|
+
{"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../../src/modules/options.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,WAAW,EAAkB,MAAM,OAAO,CAAA;AAuC5D,QAAA,MAAM,WAAW,YACN,OAAO,GAAG,SAAS,kBACZ,WAAW,KAC1B,WASF,CAAA;AAED,OAAO,EAAE,WAAW,EAAE,CAAA"}
|
package/dist/modules/options.js
CHANGED
|
@@ -1,9 +1,36 @@
|
|
|
1
1
|
import { defaultOptions } from '../constants/constant.js';
|
|
2
|
+
import { treeTypeValues } from '../types';
|
|
3
|
+
const optionGuard = (value, defaultValue, key) => {
|
|
4
|
+
if (key === 'spaceSize') {
|
|
5
|
+
if (typeof value !== 'number')
|
|
6
|
+
return defaultValue;
|
|
7
|
+
if (value < 1)
|
|
8
|
+
return defaultValue;
|
|
9
|
+
return value;
|
|
10
|
+
}
|
|
11
|
+
if (key === 'emptyBeforeUpperHierarche') {
|
|
12
|
+
if (typeof value !== 'boolean')
|
|
13
|
+
return defaultValue;
|
|
14
|
+
return value;
|
|
15
|
+
}
|
|
16
|
+
if (key === 'spaceBeforeName') {
|
|
17
|
+
if (typeof value !== 'boolean')
|
|
18
|
+
return defaultValue;
|
|
19
|
+
return value;
|
|
20
|
+
}
|
|
21
|
+
if (key === 'treeType') {
|
|
22
|
+
if (!treeTypeValues.includes(value))
|
|
23
|
+
return defaultValue;
|
|
24
|
+
return value;
|
|
25
|
+
}
|
|
26
|
+
return defaultValue;
|
|
27
|
+
};
|
|
2
28
|
const pickOption = (option, defaultOption, key) => {
|
|
3
29
|
if (option === undefined)
|
|
4
30
|
return defaultOptions[key];
|
|
5
|
-
if (option[key] !== undefined)
|
|
6
|
-
return option[key];
|
|
31
|
+
if (option[key] !== undefined) {
|
|
32
|
+
return optionGuard(option[key], defaultOption[key], key);
|
|
33
|
+
}
|
|
7
34
|
return defaultOption[key];
|
|
8
35
|
};
|
|
9
36
|
const buildOption = (options, defaultOptions) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"options.js","sourceRoot":"","sources":["../../src/modules/options.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAA;
|
|
1
|
+
{"version":3,"file":"options.js","sourceRoot":"","sources":["../../src/modules/options.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAA;AACtD,OAAO,EAAwB,cAAc,EAAE,MAAM,OAAO,CAAA;AAE5D,MAAM,WAAW,GAAG,CAAC,KAAU,EAAE,YAAiB,EAAE,GAAsB,EAAE,EAAE;IAC5E,IAAI,GAAG,KAAK,WAAW,EAAE;QACvB,IAAI,OAAO,KAAK,KAAK,QAAQ;YAAE,OAAO,YAAY,CAAA;QAClD,IAAI,KAAK,GAAG,CAAC;YAAE,OAAO,YAAY,CAAA;QAClC,OAAO,KAAK,CAAA;KACb;IAED,IAAI,GAAG,KAAK,2BAA2B,EAAE;QACvC,IAAI,OAAO,KAAK,KAAK,SAAS;YAAE,OAAO,YAAY,CAAA;QACnD,OAAO,KAAK,CAAA;KACb;IAED,IAAI,GAAG,KAAK,iBAAiB,EAAE;QAC7B,IAAI,OAAO,KAAK,KAAK,SAAS;YAAE,OAAO,YAAY,CAAA;QACnD,OAAO,KAAK,CAAA;KACb;IAED,IAAI,GAAG,KAAK,UAAU,EAAE;QACtB,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,KAAK,CAAC;YAAE,OAAO,YAAY,CAAA;QACxD,OAAO,KAAK,CAAA;KACb;IAED,OAAO,YAAY,CAAA;AACrB,CAAC,CAAA;AAED,MAAM,UAAU,GAAG,CACjB,MAA2B,EAC3B,aAA0B,EAC1B,GAAsB,EACnB,EAAE;IACL,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,cAAc,CAAC,GAAG,CAAM,CAAA;IACzD,IAAI,MAAM,CAAC,GAAG,CAAC,KAAK,SAAS,EAAE;QAC7B,OAAO,WAAW,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,aAAa,CAAC,GAAG,CAAC,EAAE,GAAG,CAAM,CAAA;KAC9D;IACD,OAAO,aAAa,CAAC,GAAG,CAAM,CAAA;AAChC,CAAC,CAAA;AAED,MAAM,WAAW,GAAG,CAClB,OAA4B,EAC5B,cAA2B,EACd,EAAE;IACf,OAAO,MAAM,CAAC,WAAW,CACvB,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;QAClD,OAAO;YACL,GAAG;YACH,UAAU,CAAC,OAAO,EAAE,cAAc,EAAE,GAAwB,CAAC;SAC9D,CAAA;IACH,CAAC,CAAC,CACY,CAAA;AAClB,CAAC,CAAA;AAED,OAAO,EAAE,WAAW,EAAE,CAAA"}
|
package/dist/types/index.d.ts
CHANGED
|
@@ -3,8 +3,9 @@ declare type DirNode = {
|
|
|
3
3
|
children: DirNode[];
|
|
4
4
|
};
|
|
5
5
|
declare type DirTree = DirNode[];
|
|
6
|
+
declare const treeTypeValues: string[];
|
|
6
7
|
declare type OptionsBase = {
|
|
7
|
-
treeType:
|
|
8
|
+
treeType: typeof treeTypeValues[number];
|
|
8
9
|
emptyBeforeUpperHierarche: boolean;
|
|
9
10
|
spaceBeforeName: boolean;
|
|
10
11
|
spaceSize: number;
|
|
@@ -18,4 +19,5 @@ declare type SymbolSet = {
|
|
|
18
19
|
};
|
|
19
20
|
declare type Options = Partial<OptionsBase>;
|
|
20
21
|
export type { DirNode, DirTree, Options, OptionsBase, SymbolSet };
|
|
22
|
+
export { treeTypeValues };
|
|
21
23
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,aAAK,OAAO,GAAG;IACb,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,OAAO,EAAE,CAAA;CACpB,CAAA;AAED,aAAK,OAAO,GAAG,OAAO,EAAE,CAAA;AAExB,aAAK,WAAW,GAAG;IACjB,QAAQ,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,aAAK,OAAO,GAAG;IACb,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,OAAO,EAAE,CAAA;CACpB,CAAA;AAED,aAAK,OAAO,GAAG,OAAO,EAAE,CAAA;AAExB,QAAA,MAAM,cAAc,UAA8B,CAAA;AAElD,aAAK,WAAW,GAAG;IACjB,QAAQ,EAAE,OAAO,cAAc,CAAC,MAAM,CAAC,CAAA;IACvC,yBAAyB,EAAE,OAAO,CAAA;IAClC,eAAe,EAAE,OAAO,CAAA;IACxB,SAAS,EAAE,MAAM,CAAA;CAClB,CAAA;AAED,aAAK,SAAS,GAAG;IACf,QAAQ,EAAE,MAAM,CAAA;IAChB,UAAU,EAAE,MAAM,CAAA;IAClB,QAAQ,EAAE,MAAM,CAAA;IAChB,GAAG,EAAE,MAAM,CAAA;IACX,KAAK,EAAE,MAAM,CAAA;CACd,CAAA;AAED,aAAK,OAAO,GAAG,OAAO,CAAC,WAAW,CAAC,CAAA;AAEnC,YAAY,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,CAAA;AAEjE,OAAO,EAAE,cAAc,EAAE,CAAA"}
|
package/dist/types/index.js
CHANGED
package/dist/types/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":""}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAOA,MAAM,cAAc,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,CAAA;AAqBlD,OAAO,EAAE,cAAc,EAAE,CAAA"}
|