@cosmicdrift/kumiko-server-runtime 0.355.0 → 0.356.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/dist/compose-features.js +14 -1
- package/package.json +6 -6
- package/src/changes.json +5 -0
package/dist/compose-features.js
CHANGED
|
@@ -15,9 +15,13 @@
|
|
|
15
15
|
import { createAuthEmailPasswordFeature, createAuthSelfRegistrationToggleFeature, } from "@cosmicdrift/kumiko-bundled-features/auth-email-password";
|
|
16
16
|
import { AUTH_MFA_FEATURE, mfaStatusCheckerFromFeature, } from "@cosmicdrift/kumiko-bundled-features/auth-mfa";
|
|
17
17
|
import { createConfigFeature } from "@cosmicdrift/kumiko-bundled-features/config";
|
|
18
|
+
import { createFilesTenantDataFeature } from "@cosmicdrift/kumiko-bundled-features/files-tenant-data";
|
|
18
19
|
import { collectAssignableAppRoles, createTenantFeature, } from "@cosmicdrift/kumiko-bundled-features/tenant";
|
|
20
|
+
import { TENANT_LIFECYCLE_FEATURE } from "@cosmicdrift/kumiko-bundled-features/tenant-lifecycle";
|
|
19
21
|
import { createUserFeature } from "@cosmicdrift/kumiko-bundled-features/user";
|
|
20
22
|
import { dedupeFeatures } from "@cosmicdrift/kumiko-framework/engine";
|
|
23
|
+
const FILES_FEATURE = "files";
|
|
24
|
+
const FILES_TENANT_DATA_FEATURE = "files-tenant-data";
|
|
21
25
|
export function composeFeatures(appFeatures, options) {
|
|
22
26
|
// ponytail: includeBundled:false skips the auth-mfa auto-wiring below —
|
|
23
27
|
// an app composing its own foundation and mounting auth-mfa itself is
|
|
@@ -76,7 +80,16 @@ export function composeFeatures(appFeatures, options) {
|
|
|
76
80
|
}
|
|
77
81
|
filteredApp.push(f);
|
|
78
82
|
}
|
|
79
|
-
|
|
83
|
+
const names = new Set(filteredApp.map((f) => f.name));
|
|
84
|
+
// Without it, tenant destroy leaves fileRef rows and stored binaries behind.
|
|
85
|
+
const needsFilesTenantData = names.has(FILES_FEATURE) &&
|
|
86
|
+
names.has(TENANT_LIFECYCLE_FEATURE) &&
|
|
87
|
+
!names.has(FILES_TENANT_DATA_FEATURE);
|
|
88
|
+
return [
|
|
89
|
+
...bundled,
|
|
90
|
+
...filteredApp,
|
|
91
|
+
...(needsFilesTenantData ? [createFilesTenantDataFeature()] : []),
|
|
92
|
+
];
|
|
80
93
|
}
|
|
81
94
|
// The magic-link mail fields shared by all five flows. Conditional spreads omit
|
|
82
95
|
// undefined keys (exactOptionalPropertyTypes) and avoid the property-write that
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cosmicdrift/kumiko-server-runtime",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.356.0",
|
|
4
4
|
"description": "Production server-boot runtime for Kumiko apps: connections, schema-drift-gate, seeds, lifecycle, graceful shutdown. Symmetric to kumiko-dev-server's runDevApp, without dev/scaffold/codegen tooling.",
|
|
5
5
|
"license": "BUSL-1.1",
|
|
6
6
|
"author": "Marc Frost <marc@cosmicdriftgamestudio.com>",
|
|
@@ -84,11 +84,11 @@
|
|
|
84
84
|
}
|
|
85
85
|
},
|
|
86
86
|
"dependencies": {
|
|
87
|
-
"@cosmicdrift/kumiko-bundled-features": "0.
|
|
88
|
-
"@cosmicdrift/kumiko-framework": "0.
|
|
89
|
-
"@cosmicdrift/kumiko-headless": "0.
|
|
90
|
-
"@cosmicdrift/kumiko-renderer-web": "0.
|
|
91
|
-
"@cosmicdrift/kumiko-types": "0.
|
|
87
|
+
"@cosmicdrift/kumiko-bundled-features": "0.356.0",
|
|
88
|
+
"@cosmicdrift/kumiko-framework": "0.356.0",
|
|
89
|
+
"@cosmicdrift/kumiko-headless": "0.356.0",
|
|
90
|
+
"@cosmicdrift/kumiko-renderer-web": "0.356.0",
|
|
91
|
+
"@cosmicdrift/kumiko-types": "0.356.0",
|
|
92
92
|
"bun-types": "^1.3.13",
|
|
93
93
|
"ioredis": "^5.10.1",
|
|
94
94
|
"temporal-polyfill": "^0.3.2"
|