@xfe-repo/bff-transform 1.0.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 +3 -0
- package/dist/chunk-G2JFFY2W.mjs +103 -0
- package/dist/chunk-MWZOUQAS.mjs +51 -0
- package/dist/chunk-NZ6LDQJI.mjs +564 -0
- package/dist/chunk-O7SEPPUS.mjs +23 -0
- package/dist/chunk-Q7G5RLD4.mjs +9 -0
- package/dist/chunk-V62BSXTW.mjs +28 -0
- package/dist/chunk-XUGPHFIH.mjs +49 -0
- package/dist/chunk-YP5H6IG4.mjs +130 -0
- package/dist/index.d.mts +79 -0
- package/dist/index.d.ts +79 -0
- package/dist/index.js +1042 -0
- package/dist/index.mjs +147 -0
- package/dist/transform.decorators.d.mts +13 -0
- package/dist/transform.decorators.d.ts +13 -0
- package/dist/transform.decorators.js +50 -0
- package/dist/transform.decorators.mjs +9 -0
- package/dist/transform.interceptor.d.mts +16 -0
- package/dist/transform.interceptor.d.ts +16 -0
- package/dist/transform.interceptor.js +289 -0
- package/dist/transform.interceptor.mjs +10 -0
- package/dist/transform.iplugin.d.mts +22 -0
- package/dist/transform.iplugin.d.ts +22 -0
- package/dist/transform.iplugin.js +72 -0
- package/dist/transform.iplugin.mjs +9 -0
- package/dist/transform.metadata-storage.d.mts +9 -0
- package/dist/transform.metadata-storage.d.ts +9 -0
- package/dist/transform.metadata-storage.js +55 -0
- package/dist/transform.metadata-storage.mjs +7 -0
- package/dist/transform.module.d.mts +14 -0
- package/dist/transform.module.d.ts +14 -0
- package/dist/transform.module.js +887 -0
- package/dist/transform.module.mjs +12 -0
- package/dist/transform.plugin.manager.d.mts +21 -0
- package/dist/transform.plugin.manager.d.ts +21 -0
- package/dist/transform.plugin.manager.js +247 -0
- package/dist/transform.plugin.manager.mjs +9 -0
- package/dist/traverse.utils.d.mts +15 -0
- package/dist/traverse.utils.d.ts +15 -0
- package/dist/traverse.utils.js +124 -0
- package/dist/traverse.utils.mjs +7 -0
- package/package.json +50 -0
package/README.md
ADDED
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
import {
|
|
2
|
+
__name
|
|
3
|
+
} from "./chunk-Q7G5RLD4.mjs";
|
|
4
|
+
|
|
5
|
+
// src/traverse.utils.ts
|
|
6
|
+
function traverse(obj, callback, options = {}) {
|
|
7
|
+
const { maxDepth = Infinity, detectCircular = false, method = "iterative" } = options;
|
|
8
|
+
if (method === "recursive") {
|
|
9
|
+
recursiveTraverse(obj, callback, maxDepth, detectCircular);
|
|
10
|
+
} else {
|
|
11
|
+
iterativeTraverse(obj, callback, maxDepth, detectCircular);
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
__name(traverse, "traverse");
|
|
15
|
+
function recursiveTraverse(current, callback, maxDepth, detectCircular, path = [], parent = null, seen = /* @__PURE__ */ new WeakSet()) {
|
|
16
|
+
if (path.length > maxDepth) return;
|
|
17
|
+
const key = path.length > 0 ? path[path.length - 1] : null;
|
|
18
|
+
callback({
|
|
19
|
+
value: current,
|
|
20
|
+
key,
|
|
21
|
+
path,
|
|
22
|
+
parent
|
|
23
|
+
});
|
|
24
|
+
if (detectCircular && typeof current === "object" && current !== null) {
|
|
25
|
+
if (seen.has(current)) return;
|
|
26
|
+
seen.add(current);
|
|
27
|
+
}
|
|
28
|
+
if (current !== null && typeof current === "object" && path.length < maxDepth) {
|
|
29
|
+
if (Array.isArray(current)) {
|
|
30
|
+
for (let i = 0; i < current.length; i++) {
|
|
31
|
+
recursiveTraverse(current[i], callback, maxDepth, detectCircular, [
|
|
32
|
+
...path,
|
|
33
|
+
i
|
|
34
|
+
], current, seen);
|
|
35
|
+
}
|
|
36
|
+
} else {
|
|
37
|
+
for (const [k, v] of Object.entries(current)) {
|
|
38
|
+
recursiveTraverse(v, callback, maxDepth, detectCircular, [
|
|
39
|
+
...path,
|
|
40
|
+
k
|
|
41
|
+
], current, seen);
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
__name(recursiveTraverse, "recursiveTraverse");
|
|
47
|
+
function iterativeTraverse(root, callback, maxDepth, detectCircular) {
|
|
48
|
+
const stack = [
|
|
49
|
+
{
|
|
50
|
+
value: root,
|
|
51
|
+
path: [],
|
|
52
|
+
parent: null
|
|
53
|
+
}
|
|
54
|
+
];
|
|
55
|
+
const seen = detectCircular ? /* @__PURE__ */ new WeakSet() : null;
|
|
56
|
+
while (stack.length > 0) {
|
|
57
|
+
const { value, path, parent } = stack.pop();
|
|
58
|
+
if (path.length > maxDepth) continue;
|
|
59
|
+
const key = path.length > 0 ? path[path.length - 1] : null;
|
|
60
|
+
callback({
|
|
61
|
+
value,
|
|
62
|
+
key,
|
|
63
|
+
path,
|
|
64
|
+
parent
|
|
65
|
+
});
|
|
66
|
+
if (value !== null && typeof value === "object" && path.length < maxDepth) {
|
|
67
|
+
if (detectCircular) {
|
|
68
|
+
if (seen.has(value)) continue;
|
|
69
|
+
seen.add(value);
|
|
70
|
+
}
|
|
71
|
+
if (Array.isArray(value)) {
|
|
72
|
+
for (let i = value.length - 1; i >= 0; i--) {
|
|
73
|
+
stack.push({
|
|
74
|
+
value: value[i],
|
|
75
|
+
path: [
|
|
76
|
+
...path,
|
|
77
|
+
i
|
|
78
|
+
],
|
|
79
|
+
parent: value
|
|
80
|
+
});
|
|
81
|
+
}
|
|
82
|
+
} else {
|
|
83
|
+
const keys = Object.keys(value);
|
|
84
|
+
for (let i = keys.length - 1; i >= 0; i--) {
|
|
85
|
+
const k = keys[i];
|
|
86
|
+
stack.push({
|
|
87
|
+
value: value[k],
|
|
88
|
+
path: [
|
|
89
|
+
...path,
|
|
90
|
+
k
|
|
91
|
+
],
|
|
92
|
+
parent: value
|
|
93
|
+
});
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
__name(iterativeTraverse, "iterativeTraverse");
|
|
100
|
+
|
|
101
|
+
export {
|
|
102
|
+
traverse
|
|
103
|
+
};
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import {
|
|
2
|
+
TransformPluginManager
|
|
3
|
+
} from "./chunk-YP5H6IG4.mjs";
|
|
4
|
+
import {
|
|
5
|
+
__name,
|
|
6
|
+
__publicField
|
|
7
|
+
} from "./chunk-Q7G5RLD4.mjs";
|
|
8
|
+
|
|
9
|
+
// src/transform.interceptor.ts
|
|
10
|
+
import { Injectable, Logger } from "@nestjs/common";
|
|
11
|
+
import { mergeMap } from "rxjs/operators";
|
|
12
|
+
function _ts_decorate(decorators, target, key, desc) {
|
|
13
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
14
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
15
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
16
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
17
|
+
}
|
|
18
|
+
__name(_ts_decorate, "_ts_decorate");
|
|
19
|
+
function _ts_metadata(k, v) {
|
|
20
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
21
|
+
}
|
|
22
|
+
__name(_ts_metadata, "_ts_metadata");
|
|
23
|
+
var _TransformInterceptor = class _TransformInterceptor {
|
|
24
|
+
constructor(transformPluginManager) {
|
|
25
|
+
__publicField(this, "transformPluginManager");
|
|
26
|
+
__publicField(this, "logger", new Logger(_TransformInterceptor.name));
|
|
27
|
+
this.transformPluginManager = transformPluginManager;
|
|
28
|
+
}
|
|
29
|
+
intercept(_context, next) {
|
|
30
|
+
return next.handle().pipe(mergeMap(async (data) => {
|
|
31
|
+
if (!data) return data;
|
|
32
|
+
await this.transformPluginManager.main(data).catch((error) => {
|
|
33
|
+
this.logger.error("PluginManager execute failed:", error);
|
|
34
|
+
});
|
|
35
|
+
return data;
|
|
36
|
+
}));
|
|
37
|
+
}
|
|
38
|
+
};
|
|
39
|
+
__name(_TransformInterceptor, "TransformInterceptor");
|
|
40
|
+
var TransformInterceptor = _TransformInterceptor;
|
|
41
|
+
TransformInterceptor = _ts_decorate([
|
|
42
|
+
Injectable(),
|
|
43
|
+
_ts_metadata("design:type", Function),
|
|
44
|
+
_ts_metadata("design:paramtypes", [
|
|
45
|
+
typeof TransformPluginManager === "undefined" ? Object : TransformPluginManager
|
|
46
|
+
])
|
|
47
|
+
], TransformInterceptor);
|
|
48
|
+
|
|
49
|
+
export {
|
|
50
|
+
TransformInterceptor
|
|
51
|
+
};
|