@common-stack/rollup-vite-utils 6.0.6-alpha.9 → 6.0.6-alpha.91
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/config-schema.cjs +111 -0
- package/lib/config-schema.cjs.map +1 -0
- package/lib/config-schema.js +111 -0
- package/lib/config-schema.js.map +1 -0
- package/lib/constants/constants.cjs +2 -1
- package/lib/constants/constants.cjs.map +1 -1
- package/lib/constants/constants.d.ts +1 -0
- package/lib/constants/constants.js +2 -1
- package/lib/constants/constants.js.map +1 -1
- package/lib/default-config.json.cjs +42 -4
- package/lib/default-config.json.cjs.map +1 -1
- package/lib/default-config.json.js +42 -4
- package/lib/default-config.json.js.map +1 -1
- package/lib/index.cjs +1 -1
- package/lib/index.d.ts +0 -1
- package/lib/index.js +1 -1
- package/lib/interfaces/rollup.d.ts +1 -0
- package/lib/preStartup/configLoader/configLoader.cjs +38 -6
- package/lib/preStartup/configLoader/configLoader.cjs.map +1 -1
- package/lib/preStartup/configLoader/configLoader.d.ts +3 -3
- package/lib/preStartup/configLoader/configLoader.js +38 -6
- package/lib/preStartup/configLoader/configLoader.js.map +1 -1
- package/lib/preStartup/configLoader/index.cjs +1 -1
- package/lib/preStartup/configLoader/index.cjs.map +1 -1
- package/lib/preStartup/configLoader/index.js +1 -1
- package/lib/preStartup/configLoader/index.js.map +1 -1
- package/lib/preStartup/copyIfVersionChanged.cjs +8 -2
- package/lib/preStartup/copyIfVersionChanged.cjs.map +1 -1
- package/lib/preStartup/copyIfVersionChanged.js +8 -2
- package/lib/preStartup/copyIfVersionChanged.js.map +1 -1
- package/lib/rollup/index.d.ts +1 -0
- package/lib/rollup/modifyLibFiles/extractGraphQLQueries.cjs +39 -10
- package/lib/rollup/modifyLibFiles/extractGraphQLQueries.cjs.map +1 -1
- package/lib/rollup/modifyLibFiles/extractGraphQLQueries.js +39 -10
- package/lib/rollup/modifyLibFiles/extractGraphQLQueries.js.map +1 -1
- package/lib/rollup/modifyLibFiles/fixtures/compute1/TestComponent.d.ts +6 -0
- package/lib/rollup/modifyLibFiles/fixtures/compute1/TestDeferComponent.d.ts +10 -0
- package/lib/rollup/modifyLibFiles/handleComponentOrDialog.cjs +211 -141
- package/lib/rollup/modifyLibFiles/handleComponentOrDialog.cjs.map +1 -1
- package/lib/rollup/modifyLibFiles/handleComponentOrDialog.d.ts +21 -0
- package/lib/rollup/modifyLibFiles/handleComponentOrDialog.js +211 -141
- package/lib/rollup/modifyLibFiles/handleComponentOrDialog.js.map +1 -1
- package/lib/rollup/modifyLibFiles/handleImportPaths.cjs +4 -3
- package/lib/rollup/modifyLibFiles/handleImportPaths.cjs.map +1 -1
- package/lib/rollup/modifyLibFiles/handleImportPaths.js +4 -3
- package/lib/rollup/modifyLibFiles/handleImportPaths.js.map +1 -1
- package/lib/rollup/modifyLibFiles/handleLoaderReturn.cjs +86 -0
- package/lib/rollup/modifyLibFiles/handleLoaderReturn.cjs.map +1 -0
- package/lib/rollup/modifyLibFiles/handleLoaderReturn.d.ts +11 -0
- package/lib/rollup/modifyLibFiles/handleLoaderReturn.js +86 -0
- package/lib/rollup/modifyLibFiles/handleLoaderReturn.js.map +1 -0
- package/lib/rollup/modifyLibFiles/handleLoaderReturn.test.d.ts +1 -0
- package/lib/rollup/modifyLibFiles/utils.cjs +7 -7
- package/lib/rollup/modifyLibFiles/utils.cjs.map +1 -1
- package/lib/rollup/modifyLibFiles/utils.d.ts +1 -1
- package/lib/rollup/modifyLibFiles/utils.js +7 -7
- package/lib/rollup/modifyLibFiles/utils.js.map +1 -1
- package/lib/rollup/rollupPluginGenerateJson.cjs +2 -3
- package/lib/rollup/rollupPluginGenerateJson.cjs.map +1 -1
- package/lib/rollup/rollupPluginGenerateJson.js +2 -3
- package/lib/rollup/rollupPluginGenerateJson.js.map +1 -1
- package/lib/rollup/rollupPluginModifyLibFiles.cjs +25 -14
- package/lib/rollup/rollupPluginModifyLibFiles.cjs.map +1 -1
- package/lib/rollup/rollupPluginModifyLibFiles.js +25 -14
- package/lib/rollup/rollupPluginModifyLibFiles.js.map +1 -1
- package/lib/rollup/rollupPluginModifyLibFiles.test.d.ts +1 -0
- package/lib/rollup/rollupPluginUpdateFromConfig.cjs +122 -0
- package/lib/rollup/rollupPluginUpdateFromConfig.cjs.map +1 -0
- package/lib/rollup/rollupPluginUpdateFromConfig.d.ts +1 -0
- package/lib/rollup/rollupPluginUpdateFromConfig.js +122 -0
- package/lib/rollup/rollupPluginUpdateFromConfig.js.map +1 -0
- package/lib/utils/deepMerge.cjs +61 -0
- package/lib/utils/deepMerge.cjs.map +1 -0
- package/lib/utils/deepMerge.d.ts +1 -0
- package/lib/utils/deepMerge.js +61 -0
- package/lib/utils/deepMerge.js.map +1 -0
- package/lib/utils/getAllCDECodeConfig.cjs +18 -0
- package/lib/utils/getAllCDECodeConfig.cjs.map +1 -0
- package/lib/utils/getAllCDECodeConfig.d.ts +1 -0
- package/lib/utils/getAllCDECodeConfig.js +18 -0
- package/lib/utils/getAllCDECodeConfig.js.map +1 -0
- package/lib/utils/index.d.ts +1 -0
- package/lib/utils/parseUtility.d.ts +3 -0
- package/lib/utils/setupConfig.cjs +6 -65
- package/lib/utils/setupConfig.cjs.map +1 -1
- package/lib/utils/setupConfig.d.ts +1 -2
- package/lib/utils/setupConfig.js +6 -65
- package/lib/utils/setupConfig.js.map +1 -1
- package/lib/utils/utils.cjs +25 -1
- package/lib/utils/utils.cjs.map +1 -1
- package/lib/utils/utils.d.ts +1 -0
- package/lib/utils/utils.js +25 -1
- package/lib/utils/utils.js.map +1 -1
- package/lib/utils/verifyConfig.cjs +13 -0
- package/lib/utils/verifyConfig.cjs.map +1 -0
- package/lib/utils/verifyConfig.d.ts +2 -0
- package/lib/utils/verifyConfig.js +13 -0
- package/lib/utils/verifyConfig.js.map +1 -0
- package/lib/utils/withErrorHandleUtil.cjs +3 -7
- package/lib/utils/withErrorHandleUtil.cjs.map +1 -1
- package/lib/utils/withErrorHandleUtil.js +3 -7
- package/lib/utils/withErrorHandleUtil.js.map +1 -1
- package/lib/vite-wrappers/custom-routes.cjs +44 -0
- package/lib/vite-wrappers/custom-routes.cjs.map +1 -0
- package/lib/vite-wrappers/custom-routes.d.ts +2 -0
- package/lib/vite-wrappers/custom-routes.js +44 -0
- package/lib/vite-wrappers/custom-routes.js.map +1 -0
- package/lib/vite-wrappers/generators/clientLoaderGenerator.cjs +159 -0
- package/lib/vite-wrappers/generators/clientLoaderGenerator.cjs.map +1 -0
- package/lib/vite-wrappers/generators/clientLoaderGenerator.d.ts +17 -0
- package/lib/vite-wrappers/generators/clientLoaderGenerator.js +159 -0
- package/lib/vite-wrappers/generators/clientLoaderGenerator.js.map +1 -0
- package/lib/vite-wrappers/generators/clientLoaderGenerator.test.d.ts +1 -0
- package/lib/vite-wrappers/generators/generateHasConfiguration.cjs +20 -0
- package/lib/vite-wrappers/generators/generateHasConfiguration.cjs.map +1 -0
- package/lib/vite-wrappers/generators/generateHasConfiguration.d.ts +10 -0
- package/lib/vite-wrappers/generators/generateHasConfiguration.js +20 -0
- package/lib/vite-wrappers/generators/generateHasConfiguration.js.map +1 -0
- package/lib/vite-wrappers/generators/generateHasPermission.cjs +29 -0
- package/lib/vite-wrappers/generators/generateHasPermission.cjs.map +1 -0
- package/lib/vite-wrappers/generators/generateHasPermission.d.ts +9 -0
- package/lib/vite-wrappers/generators/generateHasPermission.js +29 -0
- package/lib/vite-wrappers/generators/generateHasPermission.js.map +1 -0
- package/lib/vite-wrappers/generators/generateHasPermission.test.d.ts +1 -0
- package/lib/vite-wrappers/generators/loaderGenerator.cjs +157 -0
- package/lib/vite-wrappers/generators/loaderGenerator.cjs.map +1 -0
- package/lib/vite-wrappers/generators/loaderGenerator.d.ts +36 -0
- package/lib/vite-wrappers/generators/loaderGenerator.js +157 -0
- package/lib/vite-wrappers/generators/loaderGenerator.js.map +1 -0
- package/lib/vite-wrappers/generators/loaderGenerator.test.d.ts +1 -0
- package/lib/vite-wrappers/generators/serverQueryLoaderGenerator.cjs +40 -0
- package/lib/vite-wrappers/generators/serverQueryLoaderGenerator.cjs.map +1 -0
- package/lib/vite-wrappers/generators/serverQueryLoaderGenerator.d.ts +10 -0
- package/lib/vite-wrappers/generators/serverQueryLoaderGenerator.js +40 -0
- package/lib/vite-wrappers/generators/serverQueryLoaderGenerator.js.map +1 -0
- package/lib/vite-wrappers/generators/serverQueryLoaderGenerator.test.d.ts +1 -0
- package/lib/vite-wrappers/generators/utils/pickConfig.cjs +15 -0
- package/lib/vite-wrappers/generators/utils/pickConfig.cjs.map +1 -0
- package/lib/vite-wrappers/generators/utils/pickConfig.d.ts +10 -0
- package/lib/vite-wrappers/generators/utils/pickConfig.js +15 -0
- package/lib/vite-wrappers/generators/utils/pickConfig.js.map +1 -0
- package/lib/vite-wrappers/generators/utils/resourceParams.cjs +58 -0
- package/lib/vite-wrappers/generators/utils/resourceParams.cjs.map +1 -0
- package/lib/vite-wrappers/generators/utils/resourceParams.d.ts +12 -0
- package/lib/vite-wrappers/generators/utils/resourceParams.js +58 -0
- package/lib/vite-wrappers/generators/utils/resourceParams.js.map +1 -0
- package/lib/vite-wrappers/generators/utils/resourceParams.test.d.ts +1 -0
- package/lib/vite-wrappers/helpers/componentReplacement.cjs +12 -0
- package/lib/vite-wrappers/helpers/componentReplacement.cjs.map +1 -0
- package/lib/vite-wrappers/helpers/componentReplacement.d.ts +2 -0
- package/lib/vite-wrappers/helpers/componentReplacement.js +12 -0
- package/lib/vite-wrappers/helpers/componentReplacement.js.map +1 -0
- package/lib/vite-wrappers/icon-switch.cjs +1 -1
- package/lib/vite-wrappers/icon-switch.cjs.map +1 -1
- package/lib/vite-wrappers/icon-switch.js +1 -1
- package/lib/vite-wrappers/icon-switch.js.map +1 -1
- package/lib/vite-wrappers/index.d.ts +3 -0
- package/lib/vite-wrappers/json-wrappers.cjs +103 -12
- package/lib/vite-wrappers/json-wrappers.cjs.map +1 -1
- package/lib/vite-wrappers/json-wrappers.d.ts +33 -0
- package/lib/vite-wrappers/json-wrappers.js +103 -12
- package/lib/vite-wrappers/json-wrappers.js.map +1 -1
- package/lib/vite-wrappers/wrapperComponent.cjs +202 -128
- package/lib/vite-wrappers/wrapperComponent.cjs.map +1 -1
- package/lib/vite-wrappers/wrapperComponent.d.ts +11 -2
- package/lib/vite-wrappers/wrapperComponent.js +202 -128
- package/lib/vite-wrappers/wrapperComponent.js.map +1 -1
- package/package.json +7 -5
- package/lib/interfaces/types.d.ts +0 -59
- package/lib/vite-wrappers/loaderGenerator.cjs +0 -245
- package/lib/vite-wrappers/loaderGenerator.cjs.map +0 -1
- package/lib/vite-wrappers/loaderGenerator.d.ts +0 -18
- package/lib/vite-wrappers/loaderGenerator.js +0 -245
- package/lib/vite-wrappers/loaderGenerator.js.map +0 -1
- /package/lib/{vite-wrappers/loaderGenerator.test.d.ts → rollup/modifyLibFiles/handleComponentOrDialog.test.d.ts} +0 -0
|
@@ -1,245 +0,0 @@
|
|
|
1
|
-
'use strict';var lodashEs=require('lodash-es');const generateDeferKey = (key) => lodashEs.camelCase(key.replace('Get', '')).replace('Document', 'Query');
|
|
2
|
-
const generateServerLoader = ({ queries }) => {
|
|
3
|
-
if (Object.keys(queries ?? {}).length === 0) {
|
|
4
|
-
return '';
|
|
5
|
-
}
|
|
6
|
-
return `
|
|
7
|
-
export const defaultServerLoader = async ({ context, params }) => {
|
|
8
|
-
const { apolloClient: client } = context;
|
|
9
|
-
const queries = ${Object.entries(queries).reduce((acc, [key, value], index) => {
|
|
10
|
-
const formattedValue = value.includes('queryParamsGenerator_')
|
|
11
|
-
? `queryGeneratorFunc(params).${value.split('queryParamsGenerator_')[1]}`
|
|
12
|
-
: value;
|
|
13
|
-
return `${acc}${key}:${formattedValue}${index + 1 === Object.keys(queries).length ? '}' : ','}`;
|
|
14
|
-
}, '{')};
|
|
15
|
-
${Object.keys(queries)
|
|
16
|
-
.map((queryDoc) => `
|
|
17
|
-
const ${generateDeferKey(queryDoc)} = client.query({
|
|
18
|
-
query: ${queryDoc},
|
|
19
|
-
variables: queries['${queryDoc}'],
|
|
20
|
-
fetchPolicy: __SERVER__ ? 'network-only' : 'cache-first',
|
|
21
|
-
});
|
|
22
|
-
`)
|
|
23
|
-
.join('')}
|
|
24
|
-
|
|
25
|
-
return {
|
|
26
|
-
data: {
|
|
27
|
-
${Object.keys(queries).map(generateDeferKey)}
|
|
28
|
-
}
|
|
29
|
-
};
|
|
30
|
-
};
|
|
31
|
-
`;
|
|
32
|
-
};
|
|
33
|
-
function generateLoaderReturnLogic(options) {
|
|
34
|
-
if (options.loaderReturnInfo?.keys?.length > 0) {
|
|
35
|
-
// Create deferred objects by directly assigning each key to its corresponding index in loaderData
|
|
36
|
-
const deferredAssignments = options.loaderReturnInfo?.keys
|
|
37
|
-
.map((key, index) => ` returnObject['${key}'] = loaderData[${index}];`)
|
|
38
|
-
.join('\n ');
|
|
39
|
-
return `
|
|
40
|
-
const returnObject = {};
|
|
41
|
-
if (hasPermissions) {
|
|
42
|
-
${deferredAssignments}
|
|
43
|
-
}
|
|
44
|
-
`;
|
|
45
|
-
}
|
|
46
|
-
return '';
|
|
47
|
-
}
|
|
48
|
-
/**
|
|
49
|
-
* if loaderReturnInfo.keys is empty and hasMiddleware is false, return loaderData otherwise
|
|
50
|
-
* if loaderReturnInfo.keys is not empty, return an object with the keys and values from loaderData wrapped with the loaderReturnInfo.returnType.
|
|
51
|
-
* Also if we have the hasMiddleware flag, include the permissions and dataContext in the object. Also if we have the respondOptions flag, include the respondOptions in the object.
|
|
52
|
-
* Also if we have the options.queries object, include the defaultLoaderData in the object.
|
|
53
|
-
* If options.queries is not empty, return an object with wrapped with `defer`. Include middleware if it exists. Include respondOptions if it exists.
|
|
54
|
-
* if loaderReturnInfo.keys is empty and hasMiddleware is true or false, but has options.queries objects then return defaultLoaderData
|
|
55
|
-
* if its a resource route and isResourceRoute is true then return an object with the keys and values from loaderData wrapped around `json`.
|
|
56
|
-
* @param options
|
|
57
|
-
* @returns
|
|
58
|
-
*/
|
|
59
|
-
function generateReturnStatement(options, hasMiddleware) {
|
|
60
|
-
const { loaderReturnInfo, isResourceRoute, queries, hasLoader } = options;
|
|
61
|
-
const hasQueries = Object.keys(queries ?? {}).length > 0;
|
|
62
|
-
const responseKey = isResourceRoute ? 'json' : loaderReturnInfo?.keys?.length > 0 || hasQueries ? 'defer' : loaderReturnInfo?.returnType || '';
|
|
63
|
-
const defaultLoaderData = hasQueries ? 'defaultLoaderData' : '{}';
|
|
64
|
-
const middlewareData = hasMiddleware ? '{ permissions, dataContext: rest, configurations }' : '{}';
|
|
65
|
-
const respondOptions = loaderReturnInfo?.hasOptions ? 'respondOptions' : '';
|
|
66
|
-
if (loaderReturnInfo?.keys?.length > 0) {
|
|
67
|
-
return `return ${responseKey}({
|
|
68
|
-
...returnObject,
|
|
69
|
-
...${defaultLoaderData},
|
|
70
|
-
...${middlewareData},
|
|
71
|
-
errors: loaderErrors
|
|
72
|
-
}${respondOptions ? `, ${respondOptions}` : ''});`;
|
|
73
|
-
}
|
|
74
|
-
if (hasLoader && !hasMiddleware && !hasQueries) {
|
|
75
|
-
return 'return loaderData;';
|
|
76
|
-
}
|
|
77
|
-
const loaderDataSpread = hasLoader ? '...loaderData, ' : '';
|
|
78
|
-
return `return ${responseKey}({
|
|
79
|
-
${loaderDataSpread}
|
|
80
|
-
...${defaultLoaderData},
|
|
81
|
-
...${middlewareData},
|
|
82
|
-
errors: loaderErrors
|
|
83
|
-
}${respondOptions ? `, ${respondOptions}` : ''});`;
|
|
84
|
-
}
|
|
85
|
-
function generateMiddlewarePushes(options) {
|
|
86
|
-
return (options.middlewares ?? [])
|
|
87
|
-
?.map((_, index) => `middlewareStack.push({ name: "middleware${index + 1}", func: middleware${index + 1} });`)
|
|
88
|
-
.join('\n');
|
|
89
|
-
}
|
|
90
|
-
function generateHasPermission(options, isClient = false) {
|
|
91
|
-
const hasLoader = isClient ? options.hasClientLoader : options.hasLoader;
|
|
92
|
-
let generates = '';
|
|
93
|
-
if (options.authority?.length > 0 || options.extraPermissions?.length > 0) {
|
|
94
|
-
generates = `
|
|
95
|
-
if (permissions !== null) {
|
|
96
|
-
// Filter permissions based on authority keys
|
|
97
|
-
const permissionKeys = ${JSON.stringify(options.authority)} || [];
|
|
98
|
-
let extraPermissions = ${JSON.stringify(options.extraPermissions)} || [];
|
|
99
|
-
extraPermissions = permissionKeys.concat(extraPermissions);
|
|
100
|
-
permissions = {
|
|
101
|
-
resolveConfiguration: pick(permissions?.resolveConfiguration, extraPermissions)
|
|
102
|
-
};
|
|
103
|
-
`;
|
|
104
|
-
if (hasLoader) {
|
|
105
|
-
generates += `
|
|
106
|
-
hasPermissions = permissionKeys.some(key => ['Allow'].includes(get(permissions.resolveConfiguration, key)));
|
|
107
|
-
`;
|
|
108
|
-
}
|
|
109
|
-
generates += `}`;
|
|
110
|
-
}
|
|
111
|
-
return generates;
|
|
112
|
-
}
|
|
113
|
-
function generateLoaderExports(sourceExport = '', options, hasMiddleware = false, hasQueries = false) {
|
|
114
|
-
if (hasQueries) {
|
|
115
|
-
sourceExport += generateServerLoader(options);
|
|
116
|
-
// options = internalOptions(options); // Mutating the options object to add the loaderReturnInfo object
|
|
117
|
-
}
|
|
118
|
-
const getMiddlewareOptions = () => {
|
|
119
|
-
if (options.requireAuth) {
|
|
120
|
-
const val = typeof options.authStrategy === 'boolean' ? options.authStrategy : `'${options.authStrategy}'`;
|
|
121
|
-
return `{authStrategy: ${val}}`;
|
|
122
|
-
}
|
|
123
|
-
return '{}';
|
|
124
|
-
};
|
|
125
|
-
const { resourceUri, configurations } = options;
|
|
126
|
-
sourceExport += `
|
|
127
|
-
export async function loader(params) {
|
|
128
|
-
${hasMiddleware ? 'const middlewareStack = [];' : ''}
|
|
129
|
-
const middlewareOptions = ${getMiddlewareOptions()}
|
|
130
|
-
${options.requireAuth ? 'middlewareStack.push({ name: "auth", func: authMiddleware });' : ''}
|
|
131
|
-
${generateMiddlewarePushes(options)}
|
|
132
|
-
${(options.authority?.length > 0 || options.extraPermissions?.length > 0) ?
|
|
133
|
-
'middlewareStack.push({ name: "lifecycle", func: lifecycleMiddleware });\n' : ''}
|
|
134
|
-
${options.authority?.length > 0 ? 'middlewareStack.push({ name: "permission", func: permissionMiddleware });\n' : ''}
|
|
135
|
-
${options.resourceUri ? 'middlewareStack.push({ name: "configurations", func: configurationMiddleware });\n' : ''}
|
|
136
|
-
const paramsFromOptions = ${options.resourceUri
|
|
137
|
-
? `{ resourceUri: '${resourceUri}', configurations: ${JSON.stringify(configurations ?? [])} }\n`
|
|
138
|
-
: '{}'};
|
|
139
|
-
${hasMiddleware
|
|
140
|
-
? 'let middlewareData = {};\n' +
|
|
141
|
-
' if (middlewareStack.length > 0) {\n' +
|
|
142
|
-
' middlewareData = await loaderWithMiddleware({...paramsFromOptions, ...params}, middlewareOptions, middlewareStack) || {};\n' +
|
|
143
|
-
' }\n' +
|
|
144
|
-
' let { permissions = null, configurations = null, ...rest } = middlewareData;\n'
|
|
145
|
-
: ''}
|
|
146
|
-
let hasPermissions = true;
|
|
147
|
-
let loaderErrors = [];
|
|
148
|
-
${generateHasPermission(options)}
|
|
149
|
-
const defaultLoaderResult = ${hasQueries ? `hasPermissions ? await withErrorHandler(defaultServerLoader, params) : { data: {}, errors: [] };\n
|
|
150
|
-
loaderErrors = defaultLoaderResult.errors` : '{ data: {}, errors: [] }'};
|
|
151
|
-
const defaultLoaderData = defaultLoaderResult.data;
|
|
152
|
-
${options.requireAuth
|
|
153
|
-
? 'if (middlewareData.userId) { params.context = params.context || {}; params.context.userId = middlewareData.userId; }\n'
|
|
154
|
-
: ''}
|
|
155
|
-
${options.hasLoader && options.loaderReturnInfo?.keys?.length > 0
|
|
156
|
-
? `let loaderResult = hasPermissions && await withErrorHandler(loaderFunc, params) || { data: [], errors: [] };\n
|
|
157
|
-
let loaderData = loaderResult.data || [];\n
|
|
158
|
-
loaderErrors = loaderResult?.errors;\n
|
|
159
|
-
${options.loaderReturnInfo.hasOptions ? 'let respondOptions = loaderResult.options || null;' : ''}`
|
|
160
|
-
: options.hasLoader
|
|
161
|
-
? `let loaderData = hasPermissions && await withErrorHandler(loaderFunc, params) || { data: [], errors: [] };\n
|
|
162
|
-
loaderErrors = loaderData?.errors;\n`
|
|
163
|
-
: ''}
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
${generateLoaderReturnLogic(options)}
|
|
167
|
-
${generateReturnStatement(options, hasMiddleware)}
|
|
168
|
-
}`;
|
|
169
|
-
return sourceExport;
|
|
170
|
-
}
|
|
171
|
-
const generateClientLoader = ({ queries }) => {
|
|
172
|
-
if (Object.keys(queries ?? {}).length === 0) {
|
|
173
|
-
return '';
|
|
174
|
-
}
|
|
175
|
-
return `
|
|
176
|
-
const defaultClientLoader = async ({params, serverLoader})=>{
|
|
177
|
-
const client = window.__CLIENT_SERVICE__?.apolloClient;
|
|
178
|
-
const container = window.__CLIENT_SERVICE__?.container
|
|
179
|
-
|
|
180
|
-
try {
|
|
181
|
-
const getKey = (documentName:string)=> camelCase(documentName).replace('Document','')
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
const queries = ${Object.entries(queries).reduce((acc, [key, value], index) => {
|
|
185
|
-
const formattedValue = value.includes('queryParamsGenerator_')
|
|
186
|
-
? `queryGeneratorFunc(params).${value.split('queryParamsGenerator_')[1]}`
|
|
187
|
-
: value;
|
|
188
|
-
return `${acc}${key}:${formattedValue}${index + 1 === Object.keys(queries).length ? '}' : ','}`;
|
|
189
|
-
}, '{')};
|
|
190
|
-
|
|
191
|
-
const queryKeys: string[] = [${Object.keys(queries)
|
|
192
|
-
.map((key) => lodashEs.camelCase(key.replace('Get', '')).replace('Document', 'Query'))
|
|
193
|
-
.map((key) => `'${key}'`)}]
|
|
194
|
-
let shouldCallServerLoader = false;
|
|
195
|
-
let response = {};
|
|
196
|
-
let cachedData, cacheKey;
|
|
197
|
-
${Object.keys(queries)
|
|
198
|
-
.map((queryDoc, index) => `
|
|
199
|
-
cachedData = client.cache.readQuery({
|
|
200
|
-
query: ${queryDoc},
|
|
201
|
-
variables: queries['${queryDoc}'],
|
|
202
|
-
});
|
|
203
|
-
cacheKey = getKey('${queryDoc}');
|
|
204
|
-
if(!cachedData){
|
|
205
|
-
shouldCallServerLoader = true;
|
|
206
|
-
}
|
|
207
|
-
if(cachedData && cachedData[cacheKey]){
|
|
208
|
-
response[queryKeys[${index}]] = Promise.resolve(cachedData[cacheKey]);
|
|
209
|
-
}
|
|
210
|
-
`)
|
|
211
|
-
.join('')}
|
|
212
|
-
if(!shouldCallServerLoader) return response;
|
|
213
|
-
const serverData = await serverLoader();
|
|
214
|
-
|
|
215
|
-
if(serverData?.errors?.length){
|
|
216
|
-
const store = container.get(ClientTypes.ReduxStore)
|
|
217
|
-
|
|
218
|
-
serverData?.errors?.map((error)=>{
|
|
219
|
-
store.dispatch(error)
|
|
220
|
-
})
|
|
221
|
-
}
|
|
222
|
-
|
|
223
|
-
let queryKey;
|
|
224
|
-
${Object.keys(queries)
|
|
225
|
-
.map((queryDoc, index) => `
|
|
226
|
-
queryKey = queryKeys[${index}];
|
|
227
|
-
if(!serverData[queryKey].then){
|
|
228
|
-
return;
|
|
229
|
-
}
|
|
230
|
-
serverData[queryKey].then(({ data }) => {
|
|
231
|
-
client.cache.writeQuery({
|
|
232
|
-
query: ${queryDoc},
|
|
233
|
-
variables: queries['${queryDoc}'],
|
|
234
|
-
data,
|
|
235
|
-
})
|
|
236
|
-
})
|
|
237
|
-
`)
|
|
238
|
-
.join('')}
|
|
239
|
-
return serverData;
|
|
240
|
-
|
|
241
|
-
}catch(err){
|
|
242
|
-
console.error('Error in defaultClientLoader',err);
|
|
243
|
-
}
|
|
244
|
-
}`;
|
|
245
|
-
};exports.generateClientLoader=generateClientLoader;exports.generateHasPermission=generateHasPermission;exports.generateLoaderExports=generateLoaderExports;exports.generateReturnStatement=generateReturnStatement;exports.generateServerLoader=generateServerLoader;//# sourceMappingURL=loaderGenerator.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"loaderGenerator.cjs","sources":["../../src/vite-wrappers/loaderGenerator.ts"],"sourcesContent":[null],"names":["camelCase"],"mappings":"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"}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { IOptions } from '../interfaces/types';
|
|
2
|
-
export declare function internalOptions(options: any): any;
|
|
3
|
-
export declare const generateServerLoader: ({ queries }: Pick<IOptions, "queries">) => string;
|
|
4
|
-
/**
|
|
5
|
-
* if loaderReturnInfo.keys is empty and hasMiddleware is false, return loaderData otherwise
|
|
6
|
-
* if loaderReturnInfo.keys is not empty, return an object with the keys and values from loaderData wrapped with the loaderReturnInfo.returnType.
|
|
7
|
-
* Also if we have the hasMiddleware flag, include the permissions and dataContext in the object. Also if we have the respondOptions flag, include the respondOptions in the object.
|
|
8
|
-
* Also if we have the options.queries object, include the defaultLoaderData in the object.
|
|
9
|
-
* If options.queries is not empty, return an object with wrapped with `defer`. Include middleware if it exists. Include respondOptions if it exists.
|
|
10
|
-
* if loaderReturnInfo.keys is empty and hasMiddleware is true or false, but has options.queries objects then return defaultLoaderData
|
|
11
|
-
* if its a resource route and isResourceRoute is true then return an object with the keys and values from loaderData wrapped around `json`.
|
|
12
|
-
* @param options
|
|
13
|
-
* @returns
|
|
14
|
-
*/
|
|
15
|
-
export declare function generateReturnStatement(options: IOptions, hasMiddleware: boolean): string;
|
|
16
|
-
export declare function generateHasPermission(options: IOptions, isClient?: boolean): string;
|
|
17
|
-
export declare function generateLoaderExports(sourceExport: string, options: IOptions, hasMiddleware?: boolean, hasQueries?: boolean): string;
|
|
18
|
-
export declare const generateClientLoader: ({ queries }: Pick<IOptions, "queries">) => string;
|
|
@@ -1,245 +0,0 @@
|
|
|
1
|
-
import {camelCase}from'lodash-es';const generateDeferKey = (key) => camelCase(key.replace('Get', '')).replace('Document', 'Query');
|
|
2
|
-
const generateServerLoader = ({ queries }) => {
|
|
3
|
-
if (Object.keys(queries ?? {}).length === 0) {
|
|
4
|
-
return '';
|
|
5
|
-
}
|
|
6
|
-
return `
|
|
7
|
-
export const defaultServerLoader = async ({ context, params }) => {
|
|
8
|
-
const { apolloClient: client } = context;
|
|
9
|
-
const queries = ${Object.entries(queries).reduce((acc, [key, value], index) => {
|
|
10
|
-
const formattedValue = value.includes('queryParamsGenerator_')
|
|
11
|
-
? `queryGeneratorFunc(params).${value.split('queryParamsGenerator_')[1]}`
|
|
12
|
-
: value;
|
|
13
|
-
return `${acc}${key}:${formattedValue}${index + 1 === Object.keys(queries).length ? '}' : ','}`;
|
|
14
|
-
}, '{')};
|
|
15
|
-
${Object.keys(queries)
|
|
16
|
-
.map((queryDoc) => `
|
|
17
|
-
const ${generateDeferKey(queryDoc)} = client.query({
|
|
18
|
-
query: ${queryDoc},
|
|
19
|
-
variables: queries['${queryDoc}'],
|
|
20
|
-
fetchPolicy: __SERVER__ ? 'network-only' : 'cache-first',
|
|
21
|
-
});
|
|
22
|
-
`)
|
|
23
|
-
.join('')}
|
|
24
|
-
|
|
25
|
-
return {
|
|
26
|
-
data: {
|
|
27
|
-
${Object.keys(queries).map(generateDeferKey)}
|
|
28
|
-
}
|
|
29
|
-
};
|
|
30
|
-
};
|
|
31
|
-
`;
|
|
32
|
-
};
|
|
33
|
-
function generateLoaderReturnLogic(options) {
|
|
34
|
-
if (options.loaderReturnInfo?.keys?.length > 0) {
|
|
35
|
-
// Create deferred objects by directly assigning each key to its corresponding index in loaderData
|
|
36
|
-
const deferredAssignments = options.loaderReturnInfo?.keys
|
|
37
|
-
.map((key, index) => ` returnObject['${key}'] = loaderData[${index}];`)
|
|
38
|
-
.join('\n ');
|
|
39
|
-
return `
|
|
40
|
-
const returnObject = {};
|
|
41
|
-
if (hasPermissions) {
|
|
42
|
-
${deferredAssignments}
|
|
43
|
-
}
|
|
44
|
-
`;
|
|
45
|
-
}
|
|
46
|
-
return '';
|
|
47
|
-
}
|
|
48
|
-
/**
|
|
49
|
-
* if loaderReturnInfo.keys is empty and hasMiddleware is false, return loaderData otherwise
|
|
50
|
-
* if loaderReturnInfo.keys is not empty, return an object with the keys and values from loaderData wrapped with the loaderReturnInfo.returnType.
|
|
51
|
-
* Also if we have the hasMiddleware flag, include the permissions and dataContext in the object. Also if we have the respondOptions flag, include the respondOptions in the object.
|
|
52
|
-
* Also if we have the options.queries object, include the defaultLoaderData in the object.
|
|
53
|
-
* If options.queries is not empty, return an object with wrapped with `defer`. Include middleware if it exists. Include respondOptions if it exists.
|
|
54
|
-
* if loaderReturnInfo.keys is empty and hasMiddleware is true or false, but has options.queries objects then return defaultLoaderData
|
|
55
|
-
* if its a resource route and isResourceRoute is true then return an object with the keys and values from loaderData wrapped around `json`.
|
|
56
|
-
* @param options
|
|
57
|
-
* @returns
|
|
58
|
-
*/
|
|
59
|
-
function generateReturnStatement(options, hasMiddleware) {
|
|
60
|
-
const { loaderReturnInfo, isResourceRoute, queries, hasLoader } = options;
|
|
61
|
-
const hasQueries = Object.keys(queries ?? {}).length > 0;
|
|
62
|
-
const responseKey = isResourceRoute ? 'json' : loaderReturnInfo?.keys?.length > 0 || hasQueries ? 'defer' : loaderReturnInfo?.returnType || '';
|
|
63
|
-
const defaultLoaderData = hasQueries ? 'defaultLoaderData' : '{}';
|
|
64
|
-
const middlewareData = hasMiddleware ? '{ permissions, dataContext: rest, configurations }' : '{}';
|
|
65
|
-
const respondOptions = loaderReturnInfo?.hasOptions ? 'respondOptions' : '';
|
|
66
|
-
if (loaderReturnInfo?.keys?.length > 0) {
|
|
67
|
-
return `return ${responseKey}({
|
|
68
|
-
...returnObject,
|
|
69
|
-
...${defaultLoaderData},
|
|
70
|
-
...${middlewareData},
|
|
71
|
-
errors: loaderErrors
|
|
72
|
-
}${respondOptions ? `, ${respondOptions}` : ''});`;
|
|
73
|
-
}
|
|
74
|
-
if (hasLoader && !hasMiddleware && !hasQueries) {
|
|
75
|
-
return 'return loaderData;';
|
|
76
|
-
}
|
|
77
|
-
const loaderDataSpread = hasLoader ? '...loaderData, ' : '';
|
|
78
|
-
return `return ${responseKey}({
|
|
79
|
-
${loaderDataSpread}
|
|
80
|
-
...${defaultLoaderData},
|
|
81
|
-
...${middlewareData},
|
|
82
|
-
errors: loaderErrors
|
|
83
|
-
}${respondOptions ? `, ${respondOptions}` : ''});`;
|
|
84
|
-
}
|
|
85
|
-
function generateMiddlewarePushes(options) {
|
|
86
|
-
return (options.middlewares ?? [])
|
|
87
|
-
?.map((_, index) => `middlewareStack.push({ name: "middleware${index + 1}", func: middleware${index + 1} });`)
|
|
88
|
-
.join('\n');
|
|
89
|
-
}
|
|
90
|
-
function generateHasPermission(options, isClient = false) {
|
|
91
|
-
const hasLoader = isClient ? options.hasClientLoader : options.hasLoader;
|
|
92
|
-
let generates = '';
|
|
93
|
-
if (options.authority?.length > 0 || options.extraPermissions?.length > 0) {
|
|
94
|
-
generates = `
|
|
95
|
-
if (permissions !== null) {
|
|
96
|
-
// Filter permissions based on authority keys
|
|
97
|
-
const permissionKeys = ${JSON.stringify(options.authority)} || [];
|
|
98
|
-
let extraPermissions = ${JSON.stringify(options.extraPermissions)} || [];
|
|
99
|
-
extraPermissions = permissionKeys.concat(extraPermissions);
|
|
100
|
-
permissions = {
|
|
101
|
-
resolveConfiguration: pick(permissions?.resolveConfiguration, extraPermissions)
|
|
102
|
-
};
|
|
103
|
-
`;
|
|
104
|
-
if (hasLoader) {
|
|
105
|
-
generates += `
|
|
106
|
-
hasPermissions = permissionKeys.some(key => ['Allow'].includes(get(permissions.resolveConfiguration, key)));
|
|
107
|
-
`;
|
|
108
|
-
}
|
|
109
|
-
generates += `}`;
|
|
110
|
-
}
|
|
111
|
-
return generates;
|
|
112
|
-
}
|
|
113
|
-
function generateLoaderExports(sourceExport = '', options, hasMiddleware = false, hasQueries = false) {
|
|
114
|
-
if (hasQueries) {
|
|
115
|
-
sourceExport += generateServerLoader(options);
|
|
116
|
-
// options = internalOptions(options); // Mutating the options object to add the loaderReturnInfo object
|
|
117
|
-
}
|
|
118
|
-
const getMiddlewareOptions = () => {
|
|
119
|
-
if (options.requireAuth) {
|
|
120
|
-
const val = typeof options.authStrategy === 'boolean' ? options.authStrategy : `'${options.authStrategy}'`;
|
|
121
|
-
return `{authStrategy: ${val}}`;
|
|
122
|
-
}
|
|
123
|
-
return '{}';
|
|
124
|
-
};
|
|
125
|
-
const { resourceUri, configurations } = options;
|
|
126
|
-
sourceExport += `
|
|
127
|
-
export async function loader(params) {
|
|
128
|
-
${hasMiddleware ? 'const middlewareStack = [];' : ''}
|
|
129
|
-
const middlewareOptions = ${getMiddlewareOptions()}
|
|
130
|
-
${options.requireAuth ? 'middlewareStack.push({ name: "auth", func: authMiddleware });' : ''}
|
|
131
|
-
${generateMiddlewarePushes(options)}
|
|
132
|
-
${(options.authority?.length > 0 || options.extraPermissions?.length > 0) ?
|
|
133
|
-
'middlewareStack.push({ name: "lifecycle", func: lifecycleMiddleware });\n' : ''}
|
|
134
|
-
${options.authority?.length > 0 ? 'middlewareStack.push({ name: "permission", func: permissionMiddleware });\n' : ''}
|
|
135
|
-
${options.resourceUri ? 'middlewareStack.push({ name: "configurations", func: configurationMiddleware });\n' : ''}
|
|
136
|
-
const paramsFromOptions = ${options.resourceUri
|
|
137
|
-
? `{ resourceUri: '${resourceUri}', configurations: ${JSON.stringify(configurations ?? [])} }\n`
|
|
138
|
-
: '{}'};
|
|
139
|
-
${hasMiddleware
|
|
140
|
-
? 'let middlewareData = {};\n' +
|
|
141
|
-
' if (middlewareStack.length > 0) {\n' +
|
|
142
|
-
' middlewareData = await loaderWithMiddleware({...paramsFromOptions, ...params}, middlewareOptions, middlewareStack) || {};\n' +
|
|
143
|
-
' }\n' +
|
|
144
|
-
' let { permissions = null, configurations = null, ...rest } = middlewareData;\n'
|
|
145
|
-
: ''}
|
|
146
|
-
let hasPermissions = true;
|
|
147
|
-
let loaderErrors = [];
|
|
148
|
-
${generateHasPermission(options)}
|
|
149
|
-
const defaultLoaderResult = ${hasQueries ? `hasPermissions ? await withErrorHandler(defaultServerLoader, params) : { data: {}, errors: [] };\n
|
|
150
|
-
loaderErrors = defaultLoaderResult.errors` : '{ data: {}, errors: [] }'};
|
|
151
|
-
const defaultLoaderData = defaultLoaderResult.data;
|
|
152
|
-
${options.requireAuth
|
|
153
|
-
? 'if (middlewareData.userId) { params.context = params.context || {}; params.context.userId = middlewareData.userId; }\n'
|
|
154
|
-
: ''}
|
|
155
|
-
${options.hasLoader && options.loaderReturnInfo?.keys?.length > 0
|
|
156
|
-
? `let loaderResult = hasPermissions && await withErrorHandler(loaderFunc, params) || { data: [], errors: [] };\n
|
|
157
|
-
let loaderData = loaderResult.data || [];\n
|
|
158
|
-
loaderErrors = loaderResult?.errors;\n
|
|
159
|
-
${options.loaderReturnInfo.hasOptions ? 'let respondOptions = loaderResult.options || null;' : ''}`
|
|
160
|
-
: options.hasLoader
|
|
161
|
-
? `let loaderData = hasPermissions && await withErrorHandler(loaderFunc, params) || { data: [], errors: [] };\n
|
|
162
|
-
loaderErrors = loaderData?.errors;\n`
|
|
163
|
-
: ''}
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
${generateLoaderReturnLogic(options)}
|
|
167
|
-
${generateReturnStatement(options, hasMiddleware)}
|
|
168
|
-
}`;
|
|
169
|
-
return sourceExport;
|
|
170
|
-
}
|
|
171
|
-
const generateClientLoader = ({ queries }) => {
|
|
172
|
-
if (Object.keys(queries ?? {}).length === 0) {
|
|
173
|
-
return '';
|
|
174
|
-
}
|
|
175
|
-
return `
|
|
176
|
-
const defaultClientLoader = async ({params, serverLoader})=>{
|
|
177
|
-
const client = window.__CLIENT_SERVICE__?.apolloClient;
|
|
178
|
-
const container = window.__CLIENT_SERVICE__?.container
|
|
179
|
-
|
|
180
|
-
try {
|
|
181
|
-
const getKey = (documentName:string)=> camelCase(documentName).replace('Document','')
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
const queries = ${Object.entries(queries).reduce((acc, [key, value], index) => {
|
|
185
|
-
const formattedValue = value.includes('queryParamsGenerator_')
|
|
186
|
-
? `queryGeneratorFunc(params).${value.split('queryParamsGenerator_')[1]}`
|
|
187
|
-
: value;
|
|
188
|
-
return `${acc}${key}:${formattedValue}${index + 1 === Object.keys(queries).length ? '}' : ','}`;
|
|
189
|
-
}, '{')};
|
|
190
|
-
|
|
191
|
-
const queryKeys: string[] = [${Object.keys(queries)
|
|
192
|
-
.map((key) => camelCase(key.replace('Get', '')).replace('Document', 'Query'))
|
|
193
|
-
.map((key) => `'${key}'`)}]
|
|
194
|
-
let shouldCallServerLoader = false;
|
|
195
|
-
let response = {};
|
|
196
|
-
let cachedData, cacheKey;
|
|
197
|
-
${Object.keys(queries)
|
|
198
|
-
.map((queryDoc, index) => `
|
|
199
|
-
cachedData = client.cache.readQuery({
|
|
200
|
-
query: ${queryDoc},
|
|
201
|
-
variables: queries['${queryDoc}'],
|
|
202
|
-
});
|
|
203
|
-
cacheKey = getKey('${queryDoc}');
|
|
204
|
-
if(!cachedData){
|
|
205
|
-
shouldCallServerLoader = true;
|
|
206
|
-
}
|
|
207
|
-
if(cachedData && cachedData[cacheKey]){
|
|
208
|
-
response[queryKeys[${index}]] = Promise.resolve(cachedData[cacheKey]);
|
|
209
|
-
}
|
|
210
|
-
`)
|
|
211
|
-
.join('')}
|
|
212
|
-
if(!shouldCallServerLoader) return response;
|
|
213
|
-
const serverData = await serverLoader();
|
|
214
|
-
|
|
215
|
-
if(serverData?.errors?.length){
|
|
216
|
-
const store = container.get(ClientTypes.ReduxStore)
|
|
217
|
-
|
|
218
|
-
serverData?.errors?.map((error)=>{
|
|
219
|
-
store.dispatch(error)
|
|
220
|
-
})
|
|
221
|
-
}
|
|
222
|
-
|
|
223
|
-
let queryKey;
|
|
224
|
-
${Object.keys(queries)
|
|
225
|
-
.map((queryDoc, index) => `
|
|
226
|
-
queryKey = queryKeys[${index}];
|
|
227
|
-
if(!serverData[queryKey].then){
|
|
228
|
-
return;
|
|
229
|
-
}
|
|
230
|
-
serverData[queryKey].then(({ data }) => {
|
|
231
|
-
client.cache.writeQuery({
|
|
232
|
-
query: ${queryDoc},
|
|
233
|
-
variables: queries['${queryDoc}'],
|
|
234
|
-
data,
|
|
235
|
-
})
|
|
236
|
-
})
|
|
237
|
-
`)
|
|
238
|
-
.join('')}
|
|
239
|
-
return serverData;
|
|
240
|
-
|
|
241
|
-
}catch(err){
|
|
242
|
-
console.error('Error in defaultClientLoader',err);
|
|
243
|
-
}
|
|
244
|
-
}`;
|
|
245
|
-
};export{generateClientLoader,generateHasPermission,generateLoaderExports,generateReturnStatement,generateServerLoader};//# sourceMappingURL=loaderGenerator.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"loaderGenerator.js","sources":["../../src/vite-wrappers/loaderGenerator.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
|
File without changes
|