@lunora/codegen 1.0.0-alpha.25 → 1.0.0-alpha.250
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.md +6 -0
- package/README.md +1 -1
- package/dist/index.d.mts +3755 -1247
- package/dist/index.d.ts +3755 -1247
- package/dist/index.mjs +1 -34
- package/dist/packem_shared/AGENTS_FILENAME-D8SgT3OR.mjs +1 -0
- package/dist/packem_shared/CONTAINERS_FILENAME-C13yKxas.mjs +1 -0
- package/dist/packem_shared/CodegenDiagnosticError-BUXlG3P-.mjs +1 -0
- package/dist/packem_shared/DEFAULT_TARGET-vMWzRzRF.mjs +1 -0
- package/dist/packem_shared/FLAGS_FILENAME-W5XQz_Po.mjs +1 -0
- package/dist/packem_shared/GENERATED_HEADER-DSXl0YM2.mjs +1 -0
- package/dist/packem_shared/LUNORA_ERROR_CODES-C2s0xWQD.mjs +1 -0
- package/dist/packem_shared/MUTATORS_FILENAME-DqWOgC5Z.mjs +1 -0
- package/dist/packem_shared/NOTIFY_FILENAME-C1J_47et.mjs +1 -0
- package/dist/packem_shared/OPENRPC_VERSION-Cr7Zzp6s.mjs +3 -0
- package/dist/packem_shared/PROJECT_CONFIG_FILENAMES-DzOu-lSc.mjs +1 -0
- package/dist/packem_shared/QUEUES_FILENAME-RGwht3Xu.mjs +1 -0
- package/dist/packem_shared/SCHEMA_SNAPSHOT_FILENAME-jefy8GTn.mjs +11 -0
- package/dist/packem_shared/SCHEMA_SNAPSHOT_VERSION-C0oHwiJZ.mjs +2 -0
- package/dist/packem_shared/SDK_LANGUAGES-Df_CnJx5.mjs +372 -0
- package/dist/packem_shared/SHAPES_FILENAME-DRUFomCj.mjs +1 -0
- package/dist/packem_shared/SchemaSnapshotParseError-CPOXlFhI.mjs +18 -0
- package/dist/packem_shared/WORKFLOWS_FILENAME-4-ib4HH-.mjs +1 -0
- package/dist/packem_shared/buildOpenApiDocument-SxfElVzK.mjs +3 -0
- package/dist/packem_shared/capabilities-CqnIsyA9.mjs +20 -0
- package/dist/packem_shared/chain-mte5djRJ.mjs +1 -0
- package/dist/packem_shared/classify-procedure-call-CmcShAze.mjs +1 -0
- package/dist/packem_shared/context-property-calls-CWf9-6G5.mjs +1 -0
- package/dist/packem_shared/contextPropertiesRead-BGy4tGCY.mjs +1 -0
- package/dist/packem_shared/declared-output-Iaar469J.mjs +1 -0
- package/dist/packem_shared/describeErrorLevelFindings-vzaGS9KL.mjs +1 -0
- package/dist/packem_shared/discoverAuthApiCalls-DoSN_yc3.mjs +1 -0
- package/dist/packem_shared/discoverCrons-BEALHx1S.mjs +1 -0
- package/dist/packem_shared/discoverFunctions-BcBzcG5x.mjs +1 -0
- package/dist/packem_shared/discoverHttpRoutes-CJHS4llq.mjs +1 -0
- package/dist/packem_shared/discoverHyperdriveCalls-Bkbh4tG7.mjs +1 -0
- package/dist/packem_shared/discoverInserts-DpuLYPPd.mjs +1 -0
- package/dist/packem_shared/discoverMaskProcedures-B0w8gM0S.mjs +1 -0
- package/dist/packem_shared/discoverMigrations-Dt7ywfZv.mjs +1 -0
- package/dist/packem_shared/discoverNondeterministicCalls-CNJV2BiP.mjs +1 -0
- package/dist/packem_shared/discoverQueries-BcdqjYky.mjs +1 -0
- package/dist/packem_shared/discoverR2sqlCalls-30Wtbc0P.mjs +1 -0
- package/dist/packem_shared/discoverRlsMetadata-mXBmPOGj.mjs +1 -0
- package/dist/packem_shared/discoverRlsProcedures-F4Cy-kSi.mjs +1 -0
- package/dist/packem_shared/discoverSandboxUsage-BnsPld5I.mjs +1 -0
- package/dist/packem_shared/discoverSchema-D5R60b4F.mjs +1 -0
- package/dist/packem_shared/discoverStorageRulesMetadata-D3Ot9g5f.mjs +1 -0
- package/dist/packem_shared/emitAgents-3XP5C-VJ.mjs +1 -0
- package/dist/packem_shared/emitApi-DdW9RyGG.mjs +154 -0
- package/dist/packem_shared/emitApp-T_My13i6.mjs +860 -0
- package/dist/packem_shared/emitCrons-BRKXFGFu.mjs +83 -0
- package/dist/packem_shared/emitDataModel-D3WuEZ4b.mjs +113 -0
- package/dist/packem_shared/emitDrizzleSchema-Cv0HtLR3.mjs +15 -0
- package/dist/packem_shared/emitFunctions-BgNeOZt_.mjs +249 -0
- package/dist/packem_shared/emitServer-DQxwHVPM.mjs +374 -0
- package/dist/packem_shared/emitShard-BDfiH_JF.mjs +1 -0
- package/dist/packem_shared/exported-procedure-chains-D48EXUVQ.mjs +1 -0
- package/dist/packem_shared/fingerprintSchemaSources-Cl1CJFeh.mjs +1 -0
- package/dist/packem_shared/formatAdvisories-DwmUKYuc.mjs +2 -0
- package/dist/packem_shared/index-D7dKfGPh.mjs +1 -0
- package/dist/packem_shared/ir-DBSvhNa-.mjs +1 -0
- package/dist/packem_shared/isD1GlobalTable-udvHAAzD.mjs +1 -0
- package/dist/packem_shared/isTypedSchema-CKzc3ioR.mjs +4 -0
- package/dist/packem_shared/json-data-Chfs2Cz5.mjs +1 -0
- package/dist/packem_shared/listLunoraSourceFiles-CSlcBYlo.mjs +1 -0
- package/dist/packem_shared/loadProjectConfig-nNIDOrlR.mjs +1 -0
- package/dist/packem_shared/module-specifiers-WF8iAydP.mjs +1 -0
- package/dist/packem_shared/modules-DyCocr1e.mjs +1 -0
- package/dist/packem_shared/parse-validator-C6fHL7OS.mjs +1 -0
- package/dist/packem_shared/paths-C-9fwEgQ.mjs +1 -0
- package/dist/packem_shared/qualifiers-BhOL15WZ.mjs +1 -0
- package/dist/packem_shared/readPackageDependencies-C6h6FZuP.mjs +1 -0
- package/dist/packem_shared/readServiceBindings-CeQvSswr.mjs +1 -0
- package/dist/packem_shared/redact-Cy14LEnc.mjs +1 -0
- package/dist/packem_shared/schemaFromIr-BWFnvCVg.mjs +1 -0
- package/dist/packem_shared/shard-f7coQFS9.mjs +1435 -0
- package/dist/packem_shared/shard-runtime-CyEbIjPA.mjs +321 -0
- package/dist/packem_shared/shared-DjUziztz.mjs +9 -0
- package/dist/packem_shared/unwrap-handler-return-DVY_kFF7.mjs +1 -0
- package/package.json +16 -7
- package/dist/packem_shared/CONTAINERS_FILENAME-DlP6YM_Q.mjs +0 -224
- package/dist/packem_shared/CodegenDiagnosticError-DeblMkzO.mjs +0 -23
- package/dist/packem_shared/FLAGS_FILENAME-B1vE0LIo.mjs +0 -139
- package/dist/packem_shared/GENERATED_HEADER-BullHnLo.mjs +0 -3265
- package/dist/packem_shared/LUNORA_ERROR_CODES-CySpQPD3.mjs +0 -61
- package/dist/packem_shared/LUNORA_SOLUTION_RULES-BTejmZp-.mjs +0 -131
- package/dist/packem_shared/MUTATORS_FILENAME-BhqdPtKp.mjs +0 -81
- package/dist/packem_shared/OPENRPC_VERSION-D7MAVX3K.mjs +0 -60
- package/dist/packem_shared/QUEUES_FILENAME-B5_eWCRe.mjs +0 -119
- package/dist/packem_shared/SCHEMA_SNAPSHOT_FILENAME-BAcxxSdB.mjs +0 -1130
- package/dist/packem_shared/SCHEMA_SNAPSHOT_VERSION-wWGP2_5E.mjs +0 -245
- package/dist/packem_shared/SHAPES_FILENAME-ChV7MqgE.mjs +0 -94
- package/dist/packem_shared/WORKFLOWS_FILENAME-CCisG0Vy.mjs +0 -124
- package/dist/packem_shared/buildOpenApiDocument-Bm56LsBb.mjs +0 -183
- package/dist/packem_shared/discover-ast-CT6BgBr4.mjs +0 -13
- package/dist/packem_shared/discoverAuthApiCalls-CoirYbg6.mjs +0 -62
- package/dist/packem_shared/discoverCrons-Cev7RRAf.mjs +0 -257
- package/dist/packem_shared/discoverFunctions-BWMczzBx.mjs +0 -465
- package/dist/packem_shared/discoverHttpRoutes-CfP6cMzt.mjs +0 -131
- package/dist/packem_shared/discoverInserts-C7zxXkUf.mjs +0 -61
- package/dist/packem_shared/discoverMaskProcedures-Cm81kwrb.mjs +0 -217
- package/dist/packem_shared/discoverMigrations-Bi5nJ0mJ.mjs +0 -97
- package/dist/packem_shared/discoverNondeterministicCalls-C4M8AXmQ.mjs +0 -122
- package/dist/packem_shared/discoverQueries-B0wGT-xe.mjs +0 -62
- package/dist/packem_shared/discoverR2sqlCalls-BVNMd428.mjs +0 -80
- package/dist/packem_shared/discoverRlsMetadata-BS9GOGC5.mjs +0 -280
- package/dist/packem_shared/discoverSchema-KYq55qu3.mjs +0 -864
- package/dist/packem_shared/discoverStorageRulesMetadata-Da8BKXcI.mjs +0 -97
- package/dist/packem_shared/emitApp-BUN7hhlY.mjs +0 -666
- package/dist/packem_shared/formatAdvisories-DdjK7sgh.mjs +0 -81
- package/dist/packem_shared/parse-validator-Cabb60UV.mjs +0 -133
- package/dist/packem_shared/paths-BRd6JHuF.mjs +0 -11
- package/dist/packem_shared/schemaFromIr-DTYsLBaA.mjs +0 -57
|
@@ -1,97 +0,0 @@
|
|
|
1
|
-
import { Node } from 'ts-morph';
|
|
2
|
-
import { listLunoraSourceFiles, lunoraRelativePath, classifyProcedureCall } from './discoverFunctions-BWMczzBx.mjs';
|
|
3
|
-
|
|
4
|
-
const STORAGE_OPERATIONS = /* @__PURE__ */ new Set(["delete", "list", "read", "write"]);
|
|
5
|
-
const isStorageRulesCall = (node) => {
|
|
6
|
-
if (!Node.isCallExpression(node)) {
|
|
7
|
-
return false;
|
|
8
|
-
}
|
|
9
|
-
const callee = node.getExpression();
|
|
10
|
-
if (Node.isIdentifier(callee)) {
|
|
11
|
-
return callee.getText() === "storageRules";
|
|
12
|
-
}
|
|
13
|
-
return Node.isPropertyAccessExpression(callee) && callee.getName() === "storageRules";
|
|
14
|
-
};
|
|
15
|
-
const storageRulesCallsInChain = (receiver) => {
|
|
16
|
-
const calls = [];
|
|
17
|
-
let node = receiver;
|
|
18
|
-
while (Node.isCallExpression(node)) {
|
|
19
|
-
const chainCallee = node.getExpression();
|
|
20
|
-
if (!Node.isPropertyAccessExpression(chainCallee)) {
|
|
21
|
-
break;
|
|
22
|
-
}
|
|
23
|
-
if (chainCallee.getName() === "use") {
|
|
24
|
-
const argument = node.getArguments()[0];
|
|
25
|
-
if (argument && isStorageRulesCall(argument)) {
|
|
26
|
-
calls.push(argument);
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
node = chainCallee.getExpression();
|
|
30
|
-
}
|
|
31
|
-
return calls;
|
|
32
|
-
};
|
|
33
|
-
const stringPropertyOf = (object, name) => {
|
|
34
|
-
if (!Node.isObjectLiteralExpression(object)) {
|
|
35
|
-
return void 0;
|
|
36
|
-
}
|
|
37
|
-
const property = object.getProperty(name);
|
|
38
|
-
if (!property || !Node.isPropertyAssignment(property)) {
|
|
39
|
-
return void 0;
|
|
40
|
-
}
|
|
41
|
-
const initializer = property.getInitializer();
|
|
42
|
-
return initializer && Node.isStringLiteral(initializer) ? initializer.getLiteralText() : void 0;
|
|
43
|
-
};
|
|
44
|
-
const extractRules = (call, file, procedure) => {
|
|
45
|
-
const argument = call.getArguments()[0];
|
|
46
|
-
if (!argument || !Node.isArrayLiteralExpression(argument)) {
|
|
47
|
-
return [];
|
|
48
|
-
}
|
|
49
|
-
const rules = [];
|
|
50
|
-
for (const element of argument.getElements()) {
|
|
51
|
-
if (!Node.isObjectLiteralExpression(element)) {
|
|
52
|
-
continue;
|
|
53
|
-
}
|
|
54
|
-
const on = stringPropertyOf(element, "on");
|
|
55
|
-
if (on === void 0 || !STORAGE_OPERATIONS.has(on)) {
|
|
56
|
-
continue;
|
|
57
|
-
}
|
|
58
|
-
const prefix = stringPropertyOf(element, "prefix");
|
|
59
|
-
const rule = { bucket: stringPropertyOf(element, "bucket") ?? "", file, on, procedure };
|
|
60
|
-
if (prefix !== void 0) {
|
|
61
|
-
rule.prefix = prefix;
|
|
62
|
-
}
|
|
63
|
-
rules.push(rule);
|
|
64
|
-
}
|
|
65
|
-
return rules;
|
|
66
|
-
};
|
|
67
|
-
const exportedProcedureChains = (sourceFile) => {
|
|
68
|
-
const chains = [];
|
|
69
|
-
for (const statement of sourceFile.getVariableStatements()) {
|
|
70
|
-
if (!statement.isExported()) {
|
|
71
|
-
continue;
|
|
72
|
-
}
|
|
73
|
-
for (const declaration of statement.getDeclarations()) {
|
|
74
|
-
const initializer = declaration.getInitializer();
|
|
75
|
-
const classified = initializer && Node.isCallExpression(initializer) ? classifyProcedureCall(initializer) : void 0;
|
|
76
|
-
if (classified?.receiver) {
|
|
77
|
-
chains.push({ name: declaration.getName(), receiver: classified.receiver });
|
|
78
|
-
}
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
return chains;
|
|
82
|
-
};
|
|
83
|
-
const discoverStorageRulesMetadata = (project, lunoraDirectory) => {
|
|
84
|
-
const rules = [];
|
|
85
|
-
for (const filePath of listLunoraSourceFiles(lunoraDirectory)) {
|
|
86
|
-
const sourceFile = project.getSourceFile(filePath) ?? project.addSourceFileAtPath(filePath);
|
|
87
|
-
const relativePath = lunoraRelativePath(lunoraDirectory, filePath);
|
|
88
|
-
for (const { name, receiver } of exportedProcedureChains(sourceFile)) {
|
|
89
|
-
for (const call of storageRulesCallsInChain(receiver)) {
|
|
90
|
-
rules.push(...extractRules(call, relativePath, name));
|
|
91
|
-
}
|
|
92
|
-
}
|
|
93
|
-
}
|
|
94
|
-
return { rules };
|
|
95
|
-
};
|
|
96
|
-
|
|
97
|
-
export { discoverStorageRulesMetadata as default };
|