@ldsg/utils 0.3.25 → 0.3.27
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/LICENSE +1 -1
- package/dist/browser.cjs +88 -0
- package/dist/browser.d.ts +5 -0
- package/dist/browser.js +51 -0
- package/dist/common/index.d.ts +2 -0
- package/dist/common/types/handler-service-settings.d.ts +14 -0
- package/dist/common/types/index.d.ts +2 -0
- package/dist/common/types/service-record.d.ts +11 -0
- package/dist/common/utils/index.d.ts +3 -0
- package/dist/common/utils/instantiate-service.d.ts +12 -0
- package/dist/common/utils/instantiate-services.d.ts +13 -0
- package/dist/common/utils/zip-app-data/constants.d.ts +15 -0
- package/dist/common/utils/zip-app-data/index.d.ts +18 -0
- package/dist/common/utils/zip-app-data/utils/add-file-to-zip-folder.d.ts +9 -0
- package/dist/common/utils/zip-app-data/utils/get-handler-package-json.d.ts +20 -0
- package/dist/common/utils/zip-app-data/utils/index.d.ts +2 -0
- package/dist/extend-app-data-with-path.d.ts +0 -1
- package/dist/extend-app-data.d.ts +0 -1
- package/dist/fetch-app-data.d.ts +13 -4
- package/dist/generate-by-app-data.d.ts +0 -1
- package/dist/generate.d.ts +0 -1
- package/dist/get-app-data.d.ts +0 -1
- package/dist/get-tree-resource-records.d.ts +14 -0
- package/dist/index.cjs +440 -0
- package/dist/index.d.ts +4 -1
- package/dist/index.js +337 -22
- package/dist/prepare.d.ts +6 -0
- package/dist/replace-resource-ids/index.d.ts +8 -0
- package/dist/replace-resource-ids/utils/replace-resource-ids-in-string.d.ts +10 -0
- package/package.json +32 -19
- package/dist/extend-app-data-with-path.d.ts.map +0 -1
- package/dist/extend-app-data-with-path.js +0 -24
- package/dist/extend-app-data.d.ts.map +0 -1
- package/dist/extend-app-data.js +0 -12
- package/dist/fetch-app-data.d.ts.map +0 -1
- package/dist/fetch-app-data.js +0 -16
- package/dist/generate-by-app-data.d.ts.map +0 -1
- package/dist/generate-by-app-data.js +0 -19
- package/dist/generate.d.ts.map +0 -1
- package/dist/generate.js +0 -11
- package/dist/get-app-data.d.ts.map +0 -1
- package/dist/get-app-data.js +0 -15
- package/dist/index.d.ts.map +0 -1
package/dist/index.js
CHANGED
|
@@ -1,22 +1,337 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
1
|
+
import { Service } from "@ldsg/core";
|
|
2
|
+
import { ApaasResourceKind } from "@ldsg/apaas-constants";
|
|
3
|
+
import { FILES_IN_APP_TEMPLATE_MODULE, FILES_IN_HANDLER_TEMPLATE_MODULE } from "@ldsg/constants";
|
|
4
|
+
import jszip from "jszip";
|
|
5
|
+
import lodash from "lodash";
|
|
6
|
+
import fs_extra from "fs-extra";
|
|
7
|
+
import axios from "axios";
|
|
8
|
+
import jsonata from "jsonata";
|
|
9
|
+
import path_0 from "path";
|
|
10
|
+
import adm_zip from "adm-zip";
|
|
11
|
+
const instantiateServices = (params)=>{
|
|
12
|
+
const { serviceRecords, instantiateService = instantiate_service_instantiateService, serviceTypeMap } = params;
|
|
13
|
+
const services = serviceRecords.map((value)=>{
|
|
14
|
+
const instantiateServiceRes = instantiateService({
|
|
15
|
+
serviceProperties: value,
|
|
16
|
+
serviceTypeMap
|
|
17
|
+
});
|
|
18
|
+
const { service } = instantiateServiceRes;
|
|
19
|
+
return service;
|
|
20
|
+
});
|
|
21
|
+
const res = {
|
|
22
|
+
services: services.map((value)=>{
|
|
23
|
+
const res = value;
|
|
24
|
+
res.services = services;
|
|
25
|
+
return res;
|
|
26
|
+
})
|
|
27
|
+
};
|
|
28
|
+
return res;
|
|
29
|
+
};
|
|
30
|
+
const instantiate_service_instantiateService = (params)=>{
|
|
31
|
+
const { serviceProperties, serviceRecords, serviceTypeMap } = params;
|
|
32
|
+
const { type } = serviceProperties;
|
|
33
|
+
if (!type) throw new Error('service type is required');
|
|
34
|
+
const ServiceConstructor = serviceTypeMap?.[type]?.class || Service;
|
|
35
|
+
const service = new ServiceConstructor(serviceProperties);
|
|
36
|
+
if (serviceRecords) {
|
|
37
|
+
const { services } = instantiateServices({
|
|
38
|
+
serviceRecords,
|
|
39
|
+
serviceTypeMap
|
|
40
|
+
});
|
|
41
|
+
service.services = services;
|
|
42
|
+
}
|
|
43
|
+
const res = {
|
|
44
|
+
service
|
|
45
|
+
};
|
|
46
|
+
return res;
|
|
47
|
+
};
|
|
48
|
+
const DEFAULT_APP_MODULE_HANDLER_DEPENDENCY_VERSION_TEMPLATE = 'workspace:*';
|
|
49
|
+
const DEFAULT_HANDLER_MODULE_PARENT_DIR_NAME = 'handlers';
|
|
50
|
+
var constants_ZipAppDataLayout = /*#__PURE__*/ function(ZipAppDataLayout) {
|
|
51
|
+
ZipAppDataLayout["FLAT"] = "flat";
|
|
52
|
+
ZipAppDataLayout["NESTED"] = "nested";
|
|
53
|
+
return ZipAppDataLayout;
|
|
54
|
+
}({});
|
|
55
|
+
const addFileToZipFolder = (params)=>{
|
|
56
|
+
const { folder, path, data } = params;
|
|
57
|
+
folder.file(path, lodash.isObject(data) ? JSON.stringify(data, null, 2) : data);
|
|
58
|
+
};
|
|
59
|
+
const getHandlerPackageJson = (params)=>{
|
|
60
|
+
const { moduleName, dependencies, reuseMainAppDependencies, packageJson } = params;
|
|
61
|
+
lodash.set(packageJson, 'name', moduleName);
|
|
62
|
+
const packageJsonDependencies = lodash.omit(lodash.fromPairs(dependencies.map((value)=>[
|
|
63
|
+
value.name,
|
|
64
|
+
value.version ?? 'latest'
|
|
65
|
+
])), reuseMainAppDependencies);
|
|
66
|
+
lodash.set(packageJson, 'dependencies', packageJsonDependencies);
|
|
67
|
+
const res = {
|
|
68
|
+
packageJson
|
|
69
|
+
};
|
|
70
|
+
return res;
|
|
71
|
+
};
|
|
72
|
+
const zipAppData = async (params)=>{
|
|
73
|
+
const { environmentVariables, filesInAppModele = FILES_IN_APP_TEMPLATE_MODULE, filesInHandlerModele = FILES_IN_HANDLER_TEMPLATE_MODULE, resourceRecords, reuseMainAppDependencies = [], type, appModuleHandlerDependencyVersionTemplate = DEFAULT_APP_MODULE_HANDLER_DEPENDENCY_VERSION_TEMPLATE, layout = constants_ZipAppDataLayout.NESTED } = params;
|
|
74
|
+
const rootZip = new jszip();
|
|
75
|
+
const handlerResourceRecords = resourceRecords.filter((resourceRecord)=>{
|
|
76
|
+
const { kind } = resourceRecord;
|
|
77
|
+
return kind === ApaasResourceKind.HANDLER;
|
|
78
|
+
});
|
|
79
|
+
let appModuleFolder;
|
|
80
|
+
let handlerModuleParentFolder;
|
|
81
|
+
switch(layout){
|
|
82
|
+
case constants_ZipAppDataLayout.FLAT:
|
|
83
|
+
appModuleFolder = rootZip.folder("app");
|
|
84
|
+
handlerModuleParentFolder = rootZip;
|
|
85
|
+
break;
|
|
86
|
+
case constants_ZipAppDataLayout.NESTED:
|
|
87
|
+
default:
|
|
88
|
+
appModuleFolder = rootZip;
|
|
89
|
+
handlerModuleParentFolder = appModuleFolder.folder(DEFAULT_HANDLER_MODULE_PARENT_DIR_NAME);
|
|
90
|
+
break;
|
|
91
|
+
}
|
|
92
|
+
if (!appModuleFolder) throw new Error('invalid app folder');
|
|
93
|
+
if (!handlerModuleParentFolder) throw new Error('invalid handler module parent folder');
|
|
94
|
+
for (const file of filesInAppModele){
|
|
95
|
+
const { path } = file;
|
|
96
|
+
let data;
|
|
97
|
+
switch(path){
|
|
98
|
+
case 'package.json':
|
|
99
|
+
{
|
|
100
|
+
const packageJson = file.data;
|
|
101
|
+
data = {
|
|
102
|
+
...packageJson,
|
|
103
|
+
dependencies: {
|
|
104
|
+
...lodash.fromPairs(handlerResourceRecords.map((handlerResourceRecord)=>{
|
|
105
|
+
const { id: moduleName } = handlerResourceRecord;
|
|
106
|
+
return [
|
|
107
|
+
moduleName,
|
|
108
|
+
appModuleHandlerDependencyVersionTemplate.replace('MODULE_NAME', moduleName)
|
|
109
|
+
];
|
|
110
|
+
})),
|
|
111
|
+
...packageJson.dependencies
|
|
112
|
+
}
|
|
113
|
+
};
|
|
114
|
+
break;
|
|
115
|
+
}
|
|
116
|
+
case 'manifest.json':
|
|
117
|
+
data = lodash.pick(params, 'resourceRecords');
|
|
118
|
+
break;
|
|
119
|
+
case '.env':
|
|
120
|
+
if (environmentVariables) data = lodash.toPairs(environmentVariables).map((value)=>value.join('=')).join('\n');
|
|
121
|
+
break;
|
|
122
|
+
default:
|
|
123
|
+
{
|
|
124
|
+
const omitPaths = [
|
|
125
|
+
'.gitignore',
|
|
126
|
+
'pnpm-lock.yaml'
|
|
127
|
+
];
|
|
128
|
+
if (!omitPaths.includes(path)) {
|
|
129
|
+
if ('data' in file) data = file.data;
|
|
130
|
+
}
|
|
131
|
+
break;
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
if (data) addFileToZipFolder({
|
|
135
|
+
folder: appModuleFolder,
|
|
136
|
+
path,
|
|
137
|
+
data
|
|
138
|
+
});
|
|
139
|
+
}
|
|
140
|
+
if (handlerResourceRecords.length) lodash.each(handlerResourceRecords, (handlerManifestResource)=>{
|
|
141
|
+
const { id, settings } = handlerManifestResource;
|
|
142
|
+
const { code, dependencies } = settings;
|
|
143
|
+
const handlerFolder = handlerModuleParentFolder.folder(id);
|
|
144
|
+
if (handlerFolder) for (const file of filesInHandlerModele){
|
|
145
|
+
const { path } = file;
|
|
146
|
+
let data;
|
|
147
|
+
switch(path){
|
|
148
|
+
case 'index.ts':
|
|
149
|
+
data = code;
|
|
150
|
+
break;
|
|
151
|
+
case 'package.json':
|
|
152
|
+
{
|
|
153
|
+
const { packageJson } = getHandlerPackageJson({
|
|
154
|
+
packageJson: file.data,
|
|
155
|
+
moduleName: id,
|
|
156
|
+
dependencies,
|
|
157
|
+
reuseMainAppDependencies
|
|
158
|
+
});
|
|
159
|
+
data = packageJson;
|
|
160
|
+
break;
|
|
161
|
+
}
|
|
162
|
+
default:
|
|
163
|
+
if ('data' in file) data = file.data;
|
|
164
|
+
break;
|
|
165
|
+
}
|
|
166
|
+
if (data) addFileToZipFolder({
|
|
167
|
+
folder: handlerFolder,
|
|
168
|
+
path,
|
|
169
|
+
data
|
|
170
|
+
});
|
|
171
|
+
}
|
|
172
|
+
});
|
|
173
|
+
const archive = await rootZip.generateAsync({
|
|
174
|
+
type
|
|
175
|
+
});
|
|
176
|
+
const res = {
|
|
177
|
+
archive
|
|
178
|
+
};
|
|
179
|
+
return res;
|
|
180
|
+
};
|
|
181
|
+
const extendAppData = (params)=>{
|
|
182
|
+
const { appData, extraAppData } = params;
|
|
183
|
+
const res = {
|
|
184
|
+
...extraAppData,
|
|
185
|
+
...appData
|
|
186
|
+
};
|
|
187
|
+
return res;
|
|
188
|
+
};
|
|
189
|
+
const extendAppDataWithPath = async (params)=>{
|
|
190
|
+
const { appData, extraAppDataPath } = params;
|
|
191
|
+
let extraAppData = {};
|
|
192
|
+
if (extraAppDataPath) {
|
|
193
|
+
const existsRes = await fs_extra.exists(extraAppDataPath);
|
|
194
|
+
if (existsRes) extraAppData = await fs_extra.readJson(extraAppDataPath);
|
|
195
|
+
}
|
|
196
|
+
const res = extendAppData({
|
|
197
|
+
appData,
|
|
198
|
+
extraAppData
|
|
199
|
+
});
|
|
200
|
+
return res;
|
|
201
|
+
};
|
|
202
|
+
const readSourceData = async (uri)=>{
|
|
203
|
+
if (lodash.startsWith(uri, 'http')) {
|
|
204
|
+
const axiosRes = await axios({
|
|
205
|
+
url: uri
|
|
206
|
+
});
|
|
207
|
+
return axiosRes.data;
|
|
208
|
+
}
|
|
209
|
+
if (path_0.isAbsolute(uri)) return fs_extra.readJson(uri);
|
|
210
|
+
return fs_extra.readJson(path_0.resolve(process.cwd(), uri));
|
|
211
|
+
};
|
|
212
|
+
const normalizeSourceData = async (rawData, expression)=>{
|
|
213
|
+
if (expression) {
|
|
214
|
+
const exp = jsonata(expression);
|
|
215
|
+
return await exp.evaluate(rawData);
|
|
216
|
+
}
|
|
217
|
+
return rawData;
|
|
218
|
+
};
|
|
219
|
+
const loadAppResourceRecords = async (params)=>{
|
|
220
|
+
const { appDataUri, apaasAppDataUri, apaasAppDataExpression } = params;
|
|
221
|
+
if (apaasAppDataUri) {
|
|
222
|
+
const rawData = await readSourceData(apaasAppDataUri);
|
|
223
|
+
const { resourceRecords } = await normalizeSourceData(rawData, apaasAppDataExpression);
|
|
224
|
+
const apaasRecords = resourceRecords.map((record)=>({
|
|
225
|
+
id: record.id,
|
|
226
|
+
kind: record.kind,
|
|
227
|
+
parentId: record.parentId ?? null,
|
|
228
|
+
settings: record.settings ?? {}
|
|
229
|
+
}));
|
|
230
|
+
return {
|
|
231
|
+
resourceRecords: apaasRecords,
|
|
232
|
+
sourceType: 'apaas'
|
|
233
|
+
};
|
|
234
|
+
}
|
|
235
|
+
if (!appDataUri) throw new Error('Missing appDataUri or apaasAppDataUri');
|
|
236
|
+
const appData = await readSourceData(appDataUri);
|
|
237
|
+
return {
|
|
238
|
+
resourceRecords: appData.resourceRecords,
|
|
239
|
+
sourceType: 'runtime'
|
|
240
|
+
};
|
|
241
|
+
};
|
|
242
|
+
const fetchAppData = async (params)=>{
|
|
243
|
+
const { lgsgAppDataUrl: url } = params;
|
|
244
|
+
const axiosRes = await axios({
|
|
245
|
+
url
|
|
246
|
+
});
|
|
247
|
+
const res = axiosRes.data;
|
|
248
|
+
return res;
|
|
249
|
+
};
|
|
250
|
+
const generateByAppData = async (params)=>{
|
|
251
|
+
const { appData, outputPath } = params;
|
|
252
|
+
const zipAppDataRes = await zipAppData({
|
|
253
|
+
...appData,
|
|
254
|
+
type: 'nodebuffer'
|
|
255
|
+
});
|
|
256
|
+
const { archive } = zipAppDataRes;
|
|
257
|
+
const admZip = new adm_zip(archive);
|
|
258
|
+
admZip.extractAllTo(outputPath, true);
|
|
259
|
+
};
|
|
260
|
+
const getAppData = async (params)=>{
|
|
261
|
+
const { extraAppDataPath } = params;
|
|
262
|
+
const appData = await fetchAppData(params);
|
|
263
|
+
const res = await extendAppDataWithPath({
|
|
264
|
+
appData,
|
|
265
|
+
extraAppDataPath
|
|
266
|
+
});
|
|
267
|
+
return res;
|
|
268
|
+
};
|
|
269
|
+
const generate = async (params)=>{
|
|
270
|
+
const { outputPath } = params;
|
|
271
|
+
const appData = await getAppData(params);
|
|
272
|
+
await generateByAppData({
|
|
273
|
+
appData,
|
|
274
|
+
outputPath
|
|
275
|
+
});
|
|
276
|
+
};
|
|
277
|
+
const getTreeResourceRecords = (params)=>{
|
|
278
|
+
const { resourceRecords, rootId } = params;
|
|
279
|
+
const childrenMap = new Map();
|
|
280
|
+
for (const r of resourceRecords){
|
|
281
|
+
if (!r.parentId) continue;
|
|
282
|
+
const children = childrenMap.get(r.parentId);
|
|
283
|
+
if (children) children.push(r.id);
|
|
284
|
+
else childrenMap.set(r.parentId, [
|
|
285
|
+
r.id
|
|
286
|
+
]);
|
|
287
|
+
}
|
|
288
|
+
const ids = new Set();
|
|
289
|
+
const stack = [
|
|
290
|
+
rootId
|
|
291
|
+
];
|
|
292
|
+
while(stack.length > 0){
|
|
293
|
+
const id = stack.pop();
|
|
294
|
+
if (ids.has(id)) continue;
|
|
295
|
+
ids.add(id);
|
|
296
|
+
const children = childrenMap.get(id);
|
|
297
|
+
if (children) stack.push(...children);
|
|
298
|
+
}
|
|
299
|
+
const treeResourceRecords = resourceRecords.filter((r)=>ids.has(r.id));
|
|
300
|
+
const res = {
|
|
301
|
+
treeResourceRecords
|
|
302
|
+
};
|
|
303
|
+
return res;
|
|
304
|
+
};
|
|
305
|
+
const prepare = async (params)=>{
|
|
306
|
+
const { outputPath } = params;
|
|
307
|
+
const { archive } = await zipAppData({
|
|
308
|
+
...lodash.omit(params, 'outputPath'),
|
|
309
|
+
type: 'nodebuffer'
|
|
310
|
+
});
|
|
311
|
+
const admZip = new adm_zip(archive);
|
|
312
|
+
admZip.extractAllTo(outputPath, true);
|
|
313
|
+
};
|
|
314
|
+
const replaceResourceIdsInString = (params)=>{
|
|
315
|
+
const { jsonString, oldResourceIdToNewResourceIdMap } = params;
|
|
316
|
+
let result = jsonString;
|
|
317
|
+
for (const [oldResourceId, newResourceId] of Object.entries(oldResourceIdToNewResourceIdMap))result = result.split(oldResourceId).join(newResourceId);
|
|
318
|
+
const res = {
|
|
319
|
+
jsonString: result
|
|
320
|
+
};
|
|
321
|
+
return res;
|
|
322
|
+
};
|
|
323
|
+
const replaceResourceIds = (params)=>{
|
|
324
|
+
const { source, oldResourceIdToNewResourceIdMap } = params;
|
|
325
|
+
const jsonString = JSON.stringify(source);
|
|
326
|
+
const { jsonString: replacedJsonString } = replaceResourceIdsInString({
|
|
327
|
+
jsonString,
|
|
328
|
+
oldResourceIdToNewResourceIdMap
|
|
329
|
+
});
|
|
330
|
+
const replacement = JSON.parse(replacedJsonString);
|
|
331
|
+
const res = {
|
|
332
|
+
replacement
|
|
333
|
+
};
|
|
334
|
+
return res;
|
|
335
|
+
};
|
|
336
|
+
var __webpack_exports__DEFAULT_APP_MODULE_DIR_NAME = "app";
|
|
337
|
+
export { DEFAULT_APP_MODULE_HANDLER_DEPENDENCY_VERSION_TEMPLATE, DEFAULT_HANDLER_MODULE_PARENT_DIR_NAME, constants_ZipAppDataLayout as ZipAppDataLayout, addFileToZipFolder, extendAppData, extendAppDataWithPath, fetchAppData, generate, generateByAppData, getAppData, getHandlerPackageJson, getTreeResourceRecords, instantiate_service_instantiateService as instantiateService, instantiateServices, loadAppResourceRecords, prepare, replaceResourceIds, zipAppData, __webpack_exports__DEFAULT_APP_MODULE_DIR_NAME as DEFAULT_APP_MODULE_DIR_NAME };
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { AppDataWithAppModuleHandlerDependencyVersionTemplate } from './common';
|
|
2
|
+
export interface PrepareParams extends AppDataWithAppModuleHandlerDependencyVersionTemplate {
|
|
3
|
+
outputPath: string;
|
|
4
|
+
}
|
|
5
|
+
export type Prepare = (params: PrepareParams) => Promise<void>;
|
|
6
|
+
export declare const prepare: Prepare;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
type ReplaceResourceIdsInStringParams = {
|
|
2
|
+
jsonString: string;
|
|
3
|
+
oldResourceIdToNewResourceIdMap: Record<string, string>;
|
|
4
|
+
};
|
|
5
|
+
type ReplaceResourceIdsInStringRes = {
|
|
6
|
+
jsonString: string;
|
|
7
|
+
};
|
|
8
|
+
type ReplaceResourceIdsInString = (params: ReplaceResourceIdsInStringParams) => ReplaceResourceIdsInStringRes;
|
|
9
|
+
export declare const replaceResourceIdsInString: ReplaceResourceIdsInString;
|
|
10
|
+
export {};
|
package/package.json
CHANGED
|
@@ -1,45 +1,58 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ldsg/utils",
|
|
3
|
-
"version": "0.3.
|
|
3
|
+
"version": "0.3.27",
|
|
4
4
|
"description": "",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "wanxger",
|
|
7
|
-
"
|
|
8
|
-
"
|
|
7
|
+
"type": "module",
|
|
8
|
+
"exports": {
|
|
9
|
+
".": {
|
|
10
|
+
"types": "./dist/index.d.ts",
|
|
11
|
+
"browser": "./dist/browser.js",
|
|
12
|
+
"import": "./dist/index.js",
|
|
13
|
+
"require": "./dist/index.cjs"
|
|
14
|
+
},
|
|
15
|
+
"./browser": {
|
|
16
|
+
"types": "./dist/browser.d.ts",
|
|
17
|
+
"import": "./dist/browser.js",
|
|
18
|
+
"require": "./dist/browser.cjs"
|
|
19
|
+
}
|
|
20
|
+
},
|
|
21
|
+
"main": "./dist/index.cjs",
|
|
22
|
+
"browser": {
|
|
23
|
+
".": "./dist/browser.js"
|
|
24
|
+
},
|
|
25
|
+
"types": "./dist/index.d.ts",
|
|
9
26
|
"files": [
|
|
10
27
|
"dist/"
|
|
11
28
|
],
|
|
12
29
|
"dependencies": {
|
|
13
30
|
"adm-zip": "^0.5.16",
|
|
14
31
|
"axios": "^1.7.7",
|
|
15
|
-
"commander": "^12.1.0",
|
|
16
32
|
"fs-extra": "^11.2.0",
|
|
33
|
+
"jsonata": "^2.0.6",
|
|
34
|
+
"jszip": "^3.10.1",
|
|
17
35
|
"lodash": "^4.17.21",
|
|
18
|
-
"@ldsg/
|
|
19
|
-
"@ldsg/
|
|
20
|
-
"@ldsg/
|
|
36
|
+
"@ldsg/apaas-constants": "0.3.27",
|
|
37
|
+
"@ldsg/core": "0.3.27",
|
|
38
|
+
"@ldsg/handler": "0.3.27",
|
|
39
|
+
"@ldsg/types": "0.3.27",
|
|
40
|
+
"@ldsg/constants": "0.3.27"
|
|
21
41
|
},
|
|
22
42
|
"devDependencies": {
|
|
43
|
+
"@rslib/core": "^0.17.1",
|
|
23
44
|
"@types/adm-zip": "^0.5.6",
|
|
24
45
|
"@types/fs-extra": "^11.0.4",
|
|
25
46
|
"@types/lodash": "^4.14.202",
|
|
26
47
|
"@types/node": "^20.13.0",
|
|
27
|
-
"
|
|
28
|
-
"dotenv": "^16.4.5",
|
|
29
|
-
"jest": "^29.5.0",
|
|
30
|
-
"supertest": "^6.3.4",
|
|
31
|
-
"ts-loader": "^9.5.1",
|
|
32
|
-
"ts-node": "^10.9.2",
|
|
33
|
-
"tslib": "^2.6.2",
|
|
34
|
-
"typescript": "^5.3.3",
|
|
35
|
-
"webpack": "^5.97.1",
|
|
36
|
-
"webpack-cli": "^5.1.4"
|
|
48
|
+
"typescript": "^5.3.3"
|
|
37
49
|
},
|
|
38
50
|
"publishConfig": {
|
|
39
51
|
"access": "public"
|
|
40
52
|
},
|
|
41
53
|
"scripts": {
|
|
42
|
-
"build": "
|
|
43
|
-
"clean": "rm -rf dist"
|
|
54
|
+
"build": "rslib build",
|
|
55
|
+
"clean": "rm -rf dist",
|
|
56
|
+
"dev": "rslib build --watch"
|
|
44
57
|
}
|
|
45
58
|
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"extend-app-data-with-path.d.ts","sourceRoot":"","sources":["../src/extend-app-data-with-path.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAItC,MAAM,WAAW,2BAA2B;IAC1C,OAAO,EAAE,OAAO,CAAC;IACjB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,KAAK,qBAAqB,GAAG,CAAC,MAAM,EAAE,2BAA2B,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;AAEvF,eAAO,MAAM,qBAAqB,EAAE,qBAmBnC,CAAC"}
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.extendAppDataWithPath = void 0;
|
|
7
|
-
const fs_extra_1 = __importDefault(require("fs-extra"));
|
|
8
|
-
const extend_app_data_1 = require("./extend-app-data");
|
|
9
|
-
const extendAppDataWithPath = async (params) => {
|
|
10
|
-
const { appData, extraAppDataPath } = params;
|
|
11
|
-
let extraAppData = {};
|
|
12
|
-
if (extraAppDataPath) {
|
|
13
|
-
const existsRes = await fs_extra_1.default.exists(extraAppDataPath);
|
|
14
|
-
if (existsRes) {
|
|
15
|
-
extraAppData = await fs_extra_1.default.readJson(extraAppDataPath);
|
|
16
|
-
}
|
|
17
|
-
}
|
|
18
|
-
const res = (0, extend_app_data_1.extendAppData)({
|
|
19
|
-
appData,
|
|
20
|
-
extraAppData
|
|
21
|
-
});
|
|
22
|
-
return res;
|
|
23
|
-
};
|
|
24
|
-
exports.extendAppDataWithPath = extendAppDataWithPath;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"extend-app-data.d.ts","sourceRoot":"","sources":["../src/extend-app-data.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAEtC,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,OAAO,CAAC;IACjB,YAAY,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;CACjC;AAED,KAAK,aAAa,GAAG,CAAC,MAAM,EAAE,mBAAmB,KAAK,OAAO,CAAC;AAE9D,eAAO,MAAM,aAAa,EAAE,aAS3B,CAAC"}
|
package/dist/extend-app-data.js
DELETED
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.extendAppData = void 0;
|
|
4
|
-
const extendAppData = (params) => {
|
|
5
|
-
const { appData, extraAppData } = params;
|
|
6
|
-
const res = {
|
|
7
|
-
...extraAppData,
|
|
8
|
-
...appData
|
|
9
|
-
};
|
|
10
|
-
return res;
|
|
11
|
-
};
|
|
12
|
-
exports.extendAppData = extendAppData;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"fetch-app-data.d.ts","sourceRoot":"","sources":["../src/fetch-app-data.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAGtC,MAAM,WAAW,kBAAkB;IACjC,cAAc,EAAE,MAAM,CAAC;CACxB;AAED,KAAK,YAAY,GAAG,CAAC,MAAM,EAAE,kBAAkB,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;AAErE,eAAO,MAAM,YAAY,EAAE,YAU1B,CAAC"}
|
package/dist/fetch-app-data.js
DELETED
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.fetchAppData = void 0;
|
|
7
|
-
const axios_1 = __importDefault(require("axios"));
|
|
8
|
-
const fetchAppData = async (params) => {
|
|
9
|
-
const { lgsgAppDataUrl: url } = params;
|
|
10
|
-
const axiosRes = await (0, axios_1.default)({
|
|
11
|
-
url
|
|
12
|
-
});
|
|
13
|
-
const res = axiosRes.data;
|
|
14
|
-
return res;
|
|
15
|
-
};
|
|
16
|
-
exports.fetchAppData = fetchAppData;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"generate-by-app-data.d.ts","sourceRoot":"","sources":["../src/generate-by-app-data.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAGtC,UAAU,uBAAuB;IAC/B,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,KAAK,iBAAiB,GAAG,CAAC,MAAM,EAAE,uBAAuB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;AAE5E,eAAO,MAAM,iBAAiB,EAAE,iBAa/B,CAAC"}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.generateByAppData = void 0;
|
|
7
|
-
const common_1 = require("@ldsg/common");
|
|
8
|
-
const adm_zip_1 = __importDefault(require("adm-zip"));
|
|
9
|
-
const generateByAppData = async (params) => {
|
|
10
|
-
const { appData, outputPath } = params;
|
|
11
|
-
const zipAppDataRes = await (0, common_1.zipAppData)({
|
|
12
|
-
...appData,
|
|
13
|
-
type: 'nodebuffer'
|
|
14
|
-
});
|
|
15
|
-
const { archive } = zipAppDataRes;
|
|
16
|
-
const admZip = new adm_zip_1.default(archive);
|
|
17
|
-
admZip.extractAllTo(outputPath, true);
|
|
18
|
-
};
|
|
19
|
-
exports.generateByAppData = generateByAppData;
|
package/dist/generate.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"generate.d.ts","sourceRoot":"","sources":["../src/generate.ts"],"names":[],"mappings":"AAIA,UAAU,cAAc;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,KAAK,QAAQ,GAAG,CAAC,MAAM,EAAE,cAAc,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;AAE1D,eAAO,MAAM,QAAQ,EAAE,QAMtB,CAAC"}
|
package/dist/generate.js
DELETED
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.generate = void 0;
|
|
4
|
-
const generate_by_app_data_1 = require("./generate-by-app-data");
|
|
5
|
-
const get_app_data_1 = require("./get-app-data");
|
|
6
|
-
const generate = async (params) => {
|
|
7
|
-
const { outputPath } = params;
|
|
8
|
-
const appData = await (0, get_app_data_1.getAppData)(params);
|
|
9
|
-
await (0, generate_by_app_data_1.generateByAppData)({ appData, outputPath });
|
|
10
|
-
};
|
|
11
|
-
exports.generate = generate;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"get-app-data.d.ts","sourceRoot":"","sources":["../src/get-app-data.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAEtC,OAAO,EAAgB,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAEpE,UAAU,gBAAiB,SAAQ,kBAAkB;IACnD,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,KAAK,UAAU,GAAG,CAAC,MAAM,EAAE,gBAAgB,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;AAEjE,eAAO,MAAM,UAAU,EAAE,UAWxB,CAAC"}
|
package/dist/get-app-data.js
DELETED
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getAppData = void 0;
|
|
4
|
-
const extend_app_data_with_path_1 = require("./extend-app-data-with-path");
|
|
5
|
-
const fetch_app_data_1 = require("./fetch-app-data");
|
|
6
|
-
const getAppData = async (params) => {
|
|
7
|
-
const { extraAppDataPath } = params;
|
|
8
|
-
const appData = await (0, fetch_app_data_1.fetchAppData)(params);
|
|
9
|
-
const res = await (0, extend_app_data_with_path_1.extendAppDataWithPath)({
|
|
10
|
-
appData,
|
|
11
|
-
extraAppDataPath
|
|
12
|
-
});
|
|
13
|
-
return res;
|
|
14
|
-
};
|
|
15
|
-
exports.getAppData = getAppData;
|
package/dist/index.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,kBAAkB,CAAC;AACjC,cAAc,YAAY,CAAC;AAC3B,cAAc,wBAAwB,CAAC;AACvC,cAAc,gBAAgB,CAAC"}
|