jostraca 0.7.6 → 0.8.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/README.md +2 -1
- package/dist/jostraca.js +10 -0
- package/dist/jostraca.js.map +1 -1
- package/dist/types.d.ts +10 -1
- package/gen/readme.js +4 -2
- package/package.json +5 -5
- package/src/jostraca.ts +11 -0
- package/src/types.ts +11 -0
package/README.md
CHANGED
package/dist/jostraca.js
CHANGED
|
@@ -67,18 +67,28 @@ const FragmentOp_1 = require("./op/FragmentOp");
|
|
|
67
67
|
const ContentOp_1 = require("./op/ContentOp");
|
|
68
68
|
const NoneOp_1 = require("./op/NoneOp");
|
|
69
69
|
const GLOBAL = global;
|
|
70
|
+
const DEFAULT_LOGGER = {
|
|
71
|
+
trace: (...args) => console.log(new Date().toISOString(), 'TRACE', ...args),
|
|
72
|
+
debug: (...args) => console.log(new Date().toISOString(), 'DEBUG', ...args),
|
|
73
|
+
info: (...args) => console.log(new Date().toISOString(), 'INFO', ...args),
|
|
74
|
+
warn: (...args) => console.warn(new Date().toISOString(), 'WARN', ...args),
|
|
75
|
+
error: (...args) => console.error(new Date().toISOString(), 'ERROR', ...args),
|
|
76
|
+
fatal: (...args) => console.error(new Date().toISOString(), 'FATAL', ...args),
|
|
77
|
+
};
|
|
70
78
|
function Jostraca() {
|
|
71
79
|
GLOBAL.jostraca = new node_async_hooks_1.AsyncLocalStorage();
|
|
72
80
|
async function generate(opts, root) {
|
|
73
81
|
const fs = opts.fs || Fs;
|
|
74
82
|
const meta = opts.meta || {};
|
|
75
83
|
const folder = opts.folder || '.';
|
|
84
|
+
const log = opts.log || DEFAULT_LOGGER;
|
|
76
85
|
const ctx$ = {
|
|
77
86
|
folder,
|
|
78
87
|
content: null,
|
|
79
88
|
meta,
|
|
80
89
|
fs,
|
|
81
90
|
opts,
|
|
91
|
+
log,
|
|
82
92
|
};
|
|
83
93
|
return GLOBAL.jostraca.run(ctx$, async () => {
|
|
84
94
|
try {
|
package/dist/jostraca.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"jostraca.js","sourceRoot":"","sources":["../src/jostraca.ts"],"names":[],"mappings":";AAAA,oDAAoD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"jostraca.js","sourceRoot":"","sources":["../src/jostraca.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -3,6 +3,7 @@ type JostracaOptions = {
|
|
|
3
3
|
meta?: any;
|
|
4
4
|
exclude?: boolean;
|
|
5
5
|
fs?: any;
|
|
6
|
+
log?: Log;
|
|
6
7
|
};
|
|
7
8
|
type Node = {
|
|
8
9
|
kind: string;
|
|
@@ -23,4 +24,12 @@ type OpDef = {
|
|
|
23
24
|
after: OpStep;
|
|
24
25
|
};
|
|
25
26
|
type Component = (props: any, children?: any) => void;
|
|
26
|
-
|
|
27
|
+
type Log = {
|
|
28
|
+
trace: (...args: any[]) => any;
|
|
29
|
+
debug: (...args: any[]) => any;
|
|
30
|
+
info: (...args: any[]) => any;
|
|
31
|
+
warn: (...args: any[]) => any;
|
|
32
|
+
error: (...args: any[]) => any;
|
|
33
|
+
fatal: (...args: any[]) => any;
|
|
34
|
+
};
|
|
35
|
+
export type { JostracaOptions, Node, OpStep, OpDef, Component, Log, };
|
package/gen/readme.js
CHANGED
|
@@ -3,14 +3,16 @@ const Fs = require('node:fs')
|
|
|
3
3
|
const { Jostraca, getx, each, Folder, Inject, Content } = require('..')
|
|
4
4
|
const Parser = require('oxc-parser')
|
|
5
5
|
|
|
6
|
-
const utilitySrcPath = __dirname+'/../src/
|
|
6
|
+
const utilitySrcPath = __dirname+'/../src/types.ts'
|
|
7
7
|
const sourceText = Fs.readFileSync(utilitySrcPath,'utf8')
|
|
8
8
|
const options = {
|
|
9
9
|
sourceFilename: utilitySrcPath,
|
|
10
10
|
}
|
|
11
11
|
|
|
12
12
|
let pres = Parser.parseSync(sourceText, options)
|
|
13
|
-
let ast =
|
|
13
|
+
let ast = pres.program
|
|
14
|
+
|
|
15
|
+
// console.dir(ast,{depth:3})
|
|
14
16
|
|
|
15
17
|
let optionDefs = getx(ast, 'body?id:name==JostracaOptions 0 typeAnnotation members')
|
|
16
18
|
.map(od=>({
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "jostraca",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.8.0",
|
|
4
4
|
"main": "dist/jostraca.js",
|
|
5
5
|
"type": "commonjs",
|
|
6
6
|
"types": "dist/jostraca.d.ts",
|
|
@@ -35,13 +35,13 @@
|
|
|
35
35
|
],
|
|
36
36
|
"devDependencies": {
|
|
37
37
|
"@hapi/code": "^9.0.3",
|
|
38
|
-
"@types/node": "22.
|
|
38
|
+
"@types/node": "22.9.0",
|
|
39
39
|
"esbuild": "^0.24.0",
|
|
40
40
|
"memfs": "^4.14.0",
|
|
41
|
-
"oxc-parser": "^0.
|
|
41
|
+
"oxc-parser": "^0.36.0",
|
|
42
42
|
"typescript": "^5.6.3"
|
|
43
43
|
},
|
|
44
|
-
"
|
|
45
|
-
"
|
|
44
|
+
"peerDependencies": {
|
|
45
|
+
"jsonic": ">=2.15.2"
|
|
46
46
|
}
|
|
47
47
|
}
|
package/src/jostraca.ts
CHANGED
|
@@ -11,6 +11,7 @@ import type {
|
|
|
11
11
|
Node,
|
|
12
12
|
OpDef,
|
|
13
13
|
Component,
|
|
14
|
+
Log,
|
|
14
15
|
} from './types'
|
|
15
16
|
|
|
16
17
|
|
|
@@ -49,6 +50,14 @@ import { NoneOp } from './op/NoneOp'
|
|
|
49
50
|
|
|
50
51
|
const GLOBAL = (global as any)
|
|
51
52
|
|
|
53
|
+
const DEFAULT_LOGGER = {
|
|
54
|
+
trace: (...args: any[]) => console.log(new Date().toISOString(), 'TRACE', ...args),
|
|
55
|
+
debug: (...args: any[]) => console.log(new Date().toISOString(), 'DEBUG', ...args),
|
|
56
|
+
info: (...args: any[]) => console.log(new Date().toISOString(), 'INFO', ...args),
|
|
57
|
+
warn: (...args: any[]) => console.warn(new Date().toISOString(), 'WARN', ...args),
|
|
58
|
+
error: (...args: any[]) => console.error(new Date().toISOString(), 'ERROR', ...args),
|
|
59
|
+
fatal: (...args: any[]) => console.error(new Date().toISOString(), 'FATAL', ...args),
|
|
60
|
+
}
|
|
52
61
|
|
|
53
62
|
|
|
54
63
|
function Jostraca() {
|
|
@@ -59,6 +68,7 @@ function Jostraca() {
|
|
|
59
68
|
const fs = opts.fs || Fs
|
|
60
69
|
const meta = opts.meta || {}
|
|
61
70
|
const folder = opts.folder || '.'
|
|
71
|
+
const log: Log = opts.log || DEFAULT_LOGGER
|
|
62
72
|
|
|
63
73
|
const ctx$ = {
|
|
64
74
|
folder,
|
|
@@ -66,6 +76,7 @@ function Jostraca() {
|
|
|
66
76
|
meta,
|
|
67
77
|
fs,
|
|
68
78
|
opts,
|
|
79
|
+
log,
|
|
69
80
|
}
|
|
70
81
|
|
|
71
82
|
return GLOBAL.jostraca.run(ctx$, async () => {
|
package/src/types.ts
CHANGED
|
@@ -6,6 +6,7 @@ type JostracaOptions = {
|
|
|
6
6
|
meta?: any // Provide meta data to the generation process. Default: `{}`
|
|
7
7
|
exclude?: boolean // Exclude modified output files. Default: `false`.
|
|
8
8
|
fs?: any // File system API (used for testing). Default: `node:fs`
|
|
9
|
+
log?: Log
|
|
9
10
|
}
|
|
10
11
|
|
|
11
12
|
|
|
@@ -36,6 +37,15 @@ type OpDef = {
|
|
|
36
37
|
type Component = (props: any, children?: any) => void
|
|
37
38
|
|
|
38
39
|
|
|
40
|
+
type Log = {
|
|
41
|
+
trace: (...args: any[]) => any
|
|
42
|
+
debug: (...args: any[]) => any
|
|
43
|
+
info: (...args: any[]) => any
|
|
44
|
+
warn: (...args: any[]) => any
|
|
45
|
+
error: (...args: any[]) => any
|
|
46
|
+
fatal: (...args: any[]) => any
|
|
47
|
+
}
|
|
48
|
+
|
|
39
49
|
|
|
40
50
|
export type {
|
|
41
51
|
JostracaOptions,
|
|
@@ -43,5 +53,6 @@ export type {
|
|
|
43
53
|
OpStep,
|
|
44
54
|
OpDef,
|
|
45
55
|
Component,
|
|
56
|
+
Log,
|
|
46
57
|
}
|
|
47
58
|
|