@lunora/codegen 1.0.0-alpha.27 → 1.0.0-alpha.28

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/dist/index.mjs CHANGED
@@ -19,11 +19,11 @@ export { default as discoverSchema } from './packem_shared/discoverSchema-KYq55q
19
19
  export { SHAPES_FILENAME, discoverShapes } from './packem_shared/SHAPES_FILENAME-ChV7MqgE.mjs';
20
20
  export { default as discoverStorageRulesMetadata } from './packem_shared/discoverStorageRulesMetadata-Da8BKXcI.mjs';
21
21
  export { WORKFLOWS_FILENAME, discoverWorkflows } from './packem_shared/WORKFLOWS_FILENAME-CCisG0Vy.mjs';
22
- export { GENERATED_HEADER, emitApi, emitCollections, emitContainers, emitCrons, emitDataModel, emitDrizzleSchema, emitFunctions, emitServer, emitShard, emitVectors, emitWorkflows, emitWranglerCronTriggers } from './packem_shared/GENERATED_HEADER-CYaSI_qY.mjs';
23
- export { emitApp } from './packem_shared/emitApp-C38fHt_1.mjs';
24
- export { buildOpenApiDocument, emitOpenApi, emitOpenApiModule } from './packem_shared/buildOpenApiDocument-BlpXQe2K.mjs';
25
- export { OPENRPC_VERSION, buildOpenRpcDocument, emitOpenRpc, emitOpenRpcModule } from './packem_shared/OPENRPC_VERSION-CRe5l79E.mjs';
26
- export { SCHEMA_SNAPSHOT_FILENAME, createCodegenProject, refreshCodegenProject, runCodegen } from './packem_shared/SCHEMA_SNAPSHOT_FILENAME-B3TwY0JD.mjs';
22
+ export { GENERATED_HEADER, emitApi, emitCollections, emitContainers, emitCrons, emitDataModel, emitDrizzleSchema, emitFunctions, emitServer, emitShard, emitVectors, emitWorkflows, emitWranglerCronTriggers } from './packem_shared/GENERATED_HEADER-Bq7mlUUg.mjs';
23
+ export { emitApp } from './packem_shared/emitApp-YuSwauCv.mjs';
24
+ export { buildOpenApiDocument, emitOpenApi, emitOpenApiModule } from './packem_shared/buildOpenApiDocument-DLAW4ldJ.mjs';
25
+ export { OPENRPC_VERSION, buildOpenRpcDocument, emitOpenRpc, emitOpenRpcModule } from './packem_shared/OPENRPC_VERSION-CPz5aJ8A.mjs';
26
+ export { SCHEMA_SNAPSHOT_FILENAME, createCodegenProject, refreshCodegenProject, runCodegen } from './packem_shared/SCHEMA_SNAPSHOT_FILENAME-BSBSVXEv.mjs';
27
27
  export { SCHEMA_SNAPSHOT_VERSION, SchemaSnapshotParseError, buildSchemaSnapshot, diffSchemaSnapshots, evaluateSchemaDrift, parseSchemaSnapshot, serializeSchemaSnapshot } from './packem_shared/SCHEMA_SNAPSHOT_VERSION-wWGP2_5E.mjs';
28
28
  export { schemaFromIr } from './packem_shared/schemaFromIr-DTYsLBaA.mjs';
29
29
  export { LUNORA_ERROR_CODES, validatorIrToJsonSchema } from './packem_shared/LUNORA_ERROR_CODES-CySpQPD3.mjs';
@@ -2056,6 +2056,7 @@ const emitShard = ({
2056
2056
  const studioFeaturesData = studioFeatures ?? {
2057
2057
  analytics: false,
2058
2058
  auth: false,
2059
+ containers: false,
2059
2060
  flags: false,
2060
2061
  kv: false,
2061
2062
  mail: false,
@@ -1,4 +1,4 @@
1
- import { GENERATED_HEADER } from './GENERATED_HEADER-CYaSI_qY.mjs';
1
+ import { GENERATED_HEADER } from './GENERATED_HEADER-Bq7mlUUg.mjs';
2
2
  import { s as sanitizeNamespace } from './paths-BRd6JHuF.mjs';
3
3
  import { argsObjectSchema, LUNORA_ERROR_CODES } from './LUNORA_ERROR_CODES-CySpQPD3.mjs';
4
4
 
@@ -24,10 +24,10 @@ import { discoverShapes } from './SHAPES_FILENAME-ChV7MqgE.mjs';
24
24
  import discoverStorageRulesMetadata from './discoverStorageRulesMetadata-Da8BKXcI.mjs';
25
25
  import { e as enclosingExportName$1 } from './discover-ast-CT6BgBr4.mjs';
26
26
  import { discoverWorkflows } from './WORKFLOWS_FILENAME-CCisG0Vy.mjs';
27
- import { buildStorageColumns, emitDataModel, emitApi, emitServer, emitFunctions, emitShard, emitCollections, emitContainers, emitWorkflows, emitQueues, emitCrons, emitVectors, emitDrizzleSchema, emitSeed, emitWranglerCronTriggers } from './GENERATED_HEADER-CYaSI_qY.mjs';
28
- import { emitApp } from './emitApp-C38fHt_1.mjs';
29
- import { buildOpenApiDocument, emitOpenApiModule } from './buildOpenApiDocument-BlpXQe2K.mjs';
30
- import { buildOpenRpcDocument, emitOpenRpcModule } from './OPENRPC_VERSION-CRe5l79E.mjs';
27
+ import { buildStorageColumns, emitDataModel, emitApi, emitServer, emitFunctions, emitShard, emitCollections, emitContainers, emitWorkflows, emitQueues, emitCrons, emitVectors, emitDrizzleSchema, emitSeed, emitWranglerCronTriggers } from './GENERATED_HEADER-Bq7mlUUg.mjs';
28
+ import { emitApp } from './emitApp-YuSwauCv.mjs';
29
+ import { buildOpenApiDocument, emitOpenApiModule } from './buildOpenApiDocument-DLAW4ldJ.mjs';
30
+ import { buildOpenRpcDocument, emitOpenRpcModule } from './OPENRPC_VERSION-CPz5aJ8A.mjs';
31
31
  import { buildSchemaSnapshot, serializeSchemaSnapshot } from './SCHEMA_SNAPSHOT_VERSION-wWGP2_5E.mjs';
32
32
 
33
33
  const HTTP_VERBS = /* @__PURE__ */ new Set(["delete", "get", "head", "options", "patch", "post", "put"]);
@@ -252,6 +252,10 @@ const PROBES = {
252
252
  ai: { contextProperty: "ai", moduleSpecifier: "@lunora/ai" },
253
253
  analytics: { contextProperty: "analytics", moduleSpecifier: "@lunora/bindings/analytics" },
254
254
  browser: { contextProperty: "browser", moduleSpecifier: "@lunora/browser" },
255
+ // `lunora/containers.ts` imports `defineContainer` from `@lunora/container`,
256
+ // and handlers reach live instances via `ctx.containers` — either signals the
257
+ // app wires containers, so the studio should show the Containers page.
258
+ container: { contextProperty: "containers", moduleSpecifier: "@lunora/container" },
255
259
  flags: { contextProperty: "flags", moduleSpecifier: "@lunora/flags" },
256
260
  hyperdrive: { contextProperty: "sql", moduleSpecifier: "@lunora/hyperdrive" },
257
261
  images: { contextProperty: "images", moduleSpecifier: "@lunora/bindings/images" },
@@ -297,6 +301,7 @@ const discoverFeatureUsage = (project, lunoraDirectory) => {
297
301
  ai: false,
298
302
  analytics: false,
299
303
  browser: false,
304
+ container: false,
300
305
  flags: false,
301
306
  hyperdrive: false,
302
307
  images: false,
@@ -338,6 +343,7 @@ const buildStudioFeatures = (usage, signals) => {
338
343
  return {
339
344
  analytics: usage.analytics || signals.dependencies.has("@lunora/bindings/analytics"),
340
345
  auth: signals.dependencies.has("@lunora/auth"),
346
+ containers: usage.container || signals.containerCount > 0 || signals.dependencies.has("@lunora/container"),
341
347
  flags: usage.flags || signals.dependencies.has("@lunora/flags"),
342
348
  kv: usage.kv || signals.dependencies.has("@lunora/bindings/kv"),
343
349
  mail: usage.mail || signals.dependencies.has("@lunora/mail"),
@@ -947,6 +953,7 @@ const runCodegen = (options) => {
947
953
  const hasR2sql = featureUsage.r2sql;
948
954
  const dependencies = discoverPackageDependencies(options.projectRoot);
949
955
  const studioFeatures = buildStudioFeatures(featureUsage, {
956
+ containerCount: containers.length,
950
957
  cronCount: crons.length,
951
958
  dependencies,
952
959
  queueCount: queues.length,
@@ -1,4 +1,4 @@
1
- import { GENERATED_HEADER } from './GENERATED_HEADER-CYaSI_qY.mjs';
1
+ import { GENERATED_HEADER } from './GENERATED_HEADER-Bq7mlUUg.mjs';
2
2
  import { s as sanitizeNamespace } from './paths-BRd6JHuF.mjs';
3
3
  import { LUNORA_ERROR_CODES, objectSchema, argsObjectSchema, validatorIrToJsonSchema } from './LUNORA_ERROR_CODES-CySpQPD3.mjs';
4
4
 
@@ -1,4 +1,4 @@
1
- import { GENERATED_HEADER } from './GENERATED_HEADER-CYaSI_qY.mjs';
1
+ import { GENERATED_HEADER } from './GENERATED_HEADER-Bq7mlUUg.mjs';
2
2
 
3
3
  const LONG_TAIL = [
4
4
  ["hasAi", "ai", "ai", "Override the Workers AI binding backing `ctx.ai` (defaults to `env.AI`)."],
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lunora/codegen",
3
- "version": "1.0.0-alpha.27",
3
+ "version": "1.0.0-alpha.28",
4
4
  "description": "Code generator for Lunora: emits _generated/{api,server,dataModel}.ts from your schema",
5
5
  "keywords": [
6
6
  "cloudflare",