@ankhorage/contracts 26.2.0 → 26.2.2
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/CHANGELOG.md +12 -0
- package/README.md +1 -1
- package/dist/appManifest/bindings.js +1 -1
- package/dist/appManifest/bindings.js.map +1 -1
- package/dist/appManifest/constants.js.map +1 -1
- package/dist/appManifest/dataSources.js +2 -2
- package/dist/appManifest/dataSources.js.map +1 -1
- package/dist/appManifest/isAppManifest.d.ts +1 -1
- package/dist/appManifest/isAppManifest.d.ts.map +1 -1
- package/dist/appManifest/isAppManifest.js +8 -8
- package/dist/appManifest/isAppManifest.js.map +1 -1
- package/dist/appManifest/isAppStateSpec.d.ts +1 -1
- package/dist/appManifest/isAppStateSpec.d.ts.map +1 -1
- package/dist/appManifest/isAppStateSpec.js.map +1 -1
- package/dist/appManifest/isManifestValue.js +1 -1
- package/dist/appManifest/isManifestValue.js.map +1 -1
- package/dist/appManifest/media.d.ts +1 -1
- package/dist/appManifest/media.d.ts.map +1 -1
- package/dist/appManifest/media.js +1 -1
- package/dist/appManifest/media.js.map +1 -1
- package/dist/appManifest/navigator.d.ts +1 -1
- package/dist/appManifest/navigator.d.ts.map +1 -1
- package/dist/appManifest/navigator.js +3 -3
- package/dist/appManifest/navigator.js.map +1 -1
- package/dist/appManifest/navigatorOptions.js +1 -1
- package/dist/appManifest/navigatorOptions.js.map +1 -1
- package/dist/appManifest/parseAppManifest.d.ts +1 -1
- package/dist/appManifest/parseAppManifest.d.ts.map +1 -1
- package/dist/appManifest/parseAppManifest.js +1 -1
- package/dist/appManifest/parseAppManifest.js.map +1 -1
- package/dist/appManifest/screens.d.ts +2 -2
- package/dist/appManifest/screens.d.ts.map +1 -1
- package/dist/appManifest/screens.js +6 -6
- package/dist/appManifest/screens.js.map +1 -1
- package/dist/appManifest.d.ts +4 -4
- package/dist/appManifest.d.ts.map +1 -1
- package/dist/appManifest.js +2 -2
- package/dist/appManifest.js.map +1 -1
- package/dist/auth.d.ts +5 -5
- package/dist/auth.d.ts.map +1 -1
- package/dist/auth.js.map +1 -1
- package/dist/bindings.d.ts +3 -3
- package/dist/bindings.d.ts.map +1 -1
- package/dist/bindings.js.map +1 -1
- package/dist/cli/index.d.ts +1 -1
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js.map +1 -1
- package/dist/data/apis.d.ts +6 -6
- package/dist/data/apis.d.ts.map +1 -1
- package/dist/data/apis.js.map +1 -1
- package/dist/data/diagnostics.d.ts +1 -1
- package/dist/data/diagnostics.d.ts.map +1 -1
- package/dist/data/diagnostics.js.map +1 -1
- package/dist/data/endpoints.d.ts +5 -5
- package/dist/data/endpoints.d.ts.map +1 -1
- package/dist/data/endpoints.js.map +1 -1
- package/dist/data/index.d.ts +10 -10
- package/dist/data/index.d.ts.map +1 -1
- package/dist/data/index.js +10 -10
- package/dist/data/index.js.map +1 -1
- package/dist/data/isApiDefinitionRegistry.d.ts +1 -1
- package/dist/data/isApiDefinitionRegistry.d.ts.map +1 -1
- package/dist/data/isApiDefinitionRegistry.js +2 -2
- package/dist/data/isApiDefinitionRegistry.js.map +1 -1
- package/dist/data/operations.d.ts +5 -5
- package/dist/data/operations.d.ts.map +1 -1
- package/dist/data/operations.js.map +1 -1
- package/dist/data/refs.d.ts +2 -2
- package/dist/data/refs.d.ts.map +1 -1
- package/dist/data/refs.js.map +1 -1
- package/dist/data/schemas.d.ts +3 -3
- package/dist/data/schemas.d.ts.map +1 -1
- package/dist/data/schemas.js.map +1 -1
- package/dist/data/sources.d.ts +6 -6
- package/dist/data/sources.d.ts.map +1 -1
- package/dist/data/sources.js.map +1 -1
- package/dist/data/values.d.ts +1 -1
- package/dist/data/values.d.ts.map +1 -1
- package/dist/data/values.js.map +1 -1
- package/dist/icon.js +1 -1
- package/dist/icon.js.map +1 -1
- package/dist/index.d.ts +24 -24
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +24 -24
- package/dist/index.js.map +1 -1
- package/dist/infra/isInfraAdapterDescriptor.d.ts +1 -1
- package/dist/infra/isInfraAdapterDescriptor.d.ts.map +1 -1
- package/dist/infra/isInfraAdapterDescriptor.js +2 -2
- package/dist/infra/isInfraAdapterDescriptor.js.map +1 -1
- package/dist/infra/isInfraAuthSpec.d.ts +1 -1
- package/dist/infra/isInfraAuthSpec.d.ts.map +1 -1
- package/dist/infra/isInfraAuthSpec.js +4 -4
- package/dist/infra/isInfraAuthSpec.js.map +1 -1
- package/dist/infra/isInfraCredentialRef.js +1 -1
- package/dist/infra/isInfraCredentialRef.js.map +1 -1
- package/dist/infra/isInfraDeploymentSpec.d.ts +1 -1
- package/dist/infra/isInfraDeploymentSpec.d.ts.map +1 -1
- package/dist/infra/isInfraDeploymentSpec.js +4 -4
- package/dist/infra/isInfraDeploymentSpec.js.map +1 -1
- package/dist/infra/isInfraEnvironmentSpec.d.ts +1 -1
- package/dist/infra/isInfraEnvironmentSpec.d.ts.map +1 -1
- package/dist/infra/isInfraEnvironmentSpec.js +8 -8
- package/dist/infra/isInfraEnvironmentSpec.js.map +1 -1
- package/dist/infra/isInfraManifest.d.ts +1 -1
- package/dist/infra/isInfraManifest.d.ts.map +1 -1
- package/dist/infra/isInfraManifest.js +5 -5
- package/dist/infra/isInfraManifest.js.map +1 -1
- package/dist/infra/isInfraWorkloadHealth.js +2 -2
- package/dist/infra/isInfraWorkloadHealth.js.map +1 -1
- package/dist/infra/isInfraWorkloadSpec.d.ts +1 -1
- package/dist/infra/isInfraWorkloadSpec.d.ts.map +1 -1
- package/dist/infra/isInfraWorkloadSpec.js +5 -5
- package/dist/infra/isInfraWorkloadSpec.js.map +1 -1
- package/dist/infra/isInfraWorkloadValue.js +3 -3
- package/dist/infra/isInfraWorkloadValue.js.map +1 -1
- package/dist/infra/parseInfraManifest.d.ts +2 -2
- package/dist/infra/parseInfraManifest.d.ts.map +1 -1
- package/dist/infra/parseInfraManifest.js +1 -1
- package/dist/infra/parseInfraManifest.js.map +1 -1
- package/dist/infra/validateInfraAdapterSelection.d.ts +3 -3
- package/dist/infra/validateInfraAdapterSelection.d.ts.map +1 -1
- package/dist/infra/validateInfraAdapterSelection.js +2 -2
- package/dist/infra/validateInfraAdapterSelection.js.map +1 -1
- package/dist/infra.d.ts +15 -15
- package/dist/infra.d.ts.map +1 -1
- package/dist/infra.js +9 -9
- package/dist/infra.js.map +1 -1
- package/dist/infraCatalog.d.ts +8 -8
- package/dist/infraCatalog.js +8 -8
- package/dist/infraCatalog.js.map +1 -1
- package/dist/media.d.ts +1 -1
- package/dist/media.d.ts.map +1 -1
- package/dist/media.js.map +1 -1
- package/dist/navigator/catalog.d.ts +3 -3
- package/dist/navigator/catalog.d.ts.map +1 -1
- package/dist/navigator/catalog.js.map +1 -1
- package/dist/navigator/extensions.d.ts +2 -2
- package/dist/navigator/extensions.d.ts.map +1 -1
- package/dist/navigator/extensions.js.map +1 -1
- package/dist/navigator/generation.d.ts +1 -1
- package/dist/navigator/generation.d.ts.map +1 -1
- package/dist/navigator/generation.js.map +1 -1
- package/dist/navigator/planning.d.ts +3 -3
- package/dist/navigator/planning.d.ts.map +1 -1
- package/dist/navigator/planning.js.map +1 -1
- package/dist/navigator.d.ts +7 -7
- package/dist/navigator.d.ts.map +1 -1
- package/dist/navigator.js +1 -1
- package/dist/navigator.js.map +1 -1
- package/dist/requirements.d.ts +1 -1
- package/dist/requirements.d.ts.map +1 -1
- package/dist/requirements.js.map +1 -1
- package/dist/runtimeCallbacks.d.ts +1 -1
- package/dist/runtimeCallbacks.d.ts.map +1 -1
- package/dist/runtimeCallbacks.js.map +1 -1
- package/dist/state.d.ts +1 -1
- package/dist/state.d.ts.map +1 -1
- package/dist/state.js.map +1 -1
- package/dist/structure/generated.d.ts +2 -2
- package/dist/structure/generated.js +2 -2
- package/dist/structure/generated.js.map +1 -1
- package/dist/structure/index.d.ts +1 -1
- package/dist/structure/index.d.ts.map +1 -1
- package/dist/structure/index.js.map +1 -1
- package/dist/structure/isStructureDescriptor.d.ts +1 -1
- package/dist/structure/isStructureDescriptor.d.ts.map +1 -1
- package/dist/structure/isStructureDescriptor.js.map +1 -1
- package/dist/structure/types.d.ts +1 -1
- package/dist/structure/types.d.ts.map +1 -1
- package/dist/structure/types.js.map +1 -1
- package/dist/theme.d.ts +1 -1
- package/dist/theme.d.ts.map +1 -1
- package/dist/theme.js.map +1 -1
- package/dist/types/appManifest.d.ts +1 -1
- package/dist/types/appManifest.d.ts.map +1 -1
- package/dist/types/appManifest.js.map +1 -1
- package/dist/types/infraAdapters.d.ts +7 -7
- package/dist/types/infraAdapters.d.ts.map +1 -1
- package/dist/types/infraAdapters.js.map +1 -1
- package/dist/types/infraLifecycle.d.ts +4 -4
- package/dist/types/infraLifecycle.d.ts.map +1 -1
- package/dist/types/infraLifecycle.js.map +1 -1
- package/dist/types/infraManifest.d.ts +8 -8
- package/dist/types/infraManifest.d.ts.map +1 -1
- package/dist/types/infraManifest.js.map +1 -1
- package/dist/types/infraSecrets.d.ts +1 -1
- package/dist/types/infraSecrets.d.ts.map +1 -1
- package/dist/types/infraSecrets.js.map +1 -1
- package/dist/types/infraTargets.d.ts +1 -1
- package/dist/types/infraTargets.d.ts.map +1 -1
- package/dist/types/infraTargets.js.map +1 -1
- package/dist/types/infraWorkload.d.ts +2 -2
- package/dist/types/infraWorkload.d.ts.map +1 -1
- package/dist/types/infraWorkload.js.map +1 -1
- package/dist/types.d.ts +13 -13
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js.map +1 -1
- package/dist/ui.d.ts +2 -2
- package/dist/ui.d.ts.map +1 -1
- package/dist/ui.js.map +1 -1
- package/package.json +4 -4
- package/src/appManifest/bindings.ts +1 -1
- package/src/appManifest/constants.ts +1 -1
- package/src/appManifest/dataSources.ts +2 -2
- package/src/appManifest/isAppManifest.ts +9 -9
- package/src/appManifest/isAppStateSpec.ts +1 -1
- package/src/appManifest/isManifestValue.ts +1 -1
- package/src/appManifest/media.ts +1 -1
- package/src/appManifest/navigator.ts +3 -3
- package/src/appManifest/navigatorOptions.ts +1 -1
- package/src/appManifest/parseAppManifest.ts +2 -2
- package/src/appManifest/screens.ts +6 -6
- package/src/appManifest.ts +4 -4
- package/src/auth.ts +6 -6
- package/src/bindings.ts +3 -3
- package/src/cli/index.ts +1 -1
- package/src/data/apis.ts +6 -6
- package/src/data/diagnostics.ts +1 -1
- package/src/data/endpoints.ts +5 -5
- package/src/data/index.ts +10 -10
- package/src/data/isApiDefinitionRegistry.ts +3 -3
- package/src/data/operations.ts +5 -5
- package/src/data/refs.ts +2 -2
- package/src/data/schemas.ts +3 -3
- package/src/data/sources.ts +6 -6
- package/src/data/values.ts +1 -1
- package/src/icon.ts +1 -1
- package/src/index.ts +24 -24
- package/src/infra/isInfraAdapterDescriptor.ts +3 -3
- package/src/infra/isInfraAuthSpec.ts +6 -6
- package/src/infra/isInfraCredentialRef.ts +1 -1
- package/src/infra/isInfraDeploymentSpec.ts +6 -6
- package/src/infra/isInfraEnvironmentSpec.ts +10 -10
- package/src/infra/isInfraManifest.ts +7 -7
- package/src/infra/isInfraWorkloadHealth.ts +2 -2
- package/src/infra/isInfraWorkloadSpec.ts +7 -7
- package/src/infra/isInfraWorkloadValue.ts +4 -4
- package/src/infra/parseInfraManifest.ts +3 -3
- package/src/infra/validateInfraAdapterSelection.ts +5 -5
- package/src/infra.test.ts +1 -1
- package/src/infra.ts +15 -15
- package/src/infraCatalog.ts +8 -8
- package/src/infraPackedConsumer.test.ts +102 -0
- package/src/media.ts +1 -1
- package/src/navigator/catalog.ts +3 -3
- package/src/navigator/extensions.ts +2 -2
- package/src/navigator/generation.ts +1 -1
- package/src/navigator/planning.ts +3 -3
- package/src/navigator.ts +7 -7
- package/src/requirements.ts +1 -1
- package/src/runtimeCallbacks.ts +1 -1
- package/src/state.ts +1 -1
- package/src/structure/generated.ts +2 -2
- package/src/structure/index.ts +1 -1
- package/src/structure/isStructureDescriptor.ts +1 -1
- package/src/structure/types.ts +1 -1
- package/src/theme.ts +1 -1
- package/src/types/appManifest.ts +1 -1
- package/src/types/infraAdapters.ts +7 -7
- package/src/types/infraLifecycle.ts +4 -4
- package/src/types/infraManifest.ts +8 -8
- package/src/types/infraSecrets.ts +1 -1
- package/src/types/infraTargets.ts +1 -1
- package/src/types/infraWorkload.ts +2 -2
- package/src/types.ts +13 -13
- package/src/ui.ts +2 -2
|
@@ -1,21 +1,21 @@
|
|
|
1
1
|
import { isRecord } from '@ankhorage/utility/object';
|
|
2
2
|
import { isNonEmptyString } from '@ankhorage/utility/string';
|
|
3
3
|
|
|
4
|
-
import { isSerializableSet } from '../collections';
|
|
5
|
-
import { INFRA_ADAPTER_CATALOG } from '../infraCatalog';
|
|
4
|
+
import { isSerializableSet } from '../collections.js';
|
|
5
|
+
import { INFRA_ADAPTER_CATALOG } from '../infraCatalog.js';
|
|
6
6
|
import type {
|
|
7
7
|
InfraEnvironmentSpec,
|
|
8
8
|
InfraObjectStorageSpec,
|
|
9
9
|
InfraS3PersistenceTarget,
|
|
10
10
|
InfraScheduledDatabaseBackupSpec,
|
|
11
|
-
} from '../types/infraManifest';
|
|
12
|
-
import type { InfraShape } from '../types/infraValidation';
|
|
13
|
-
import { infraFields } from './infraFields';
|
|
14
|
-
import { isInfraAuthSpec } from './isInfraAuthSpec';
|
|
15
|
-
import { isInfraCredentialRef } from './isInfraCredentialRef';
|
|
16
|
-
import { isInfraDeploymentSpec } from './isInfraDeploymentSpec';
|
|
17
|
-
import { isInfraShape } from './isInfraShape';
|
|
18
|
-
import { isInfraWorkloadSpec } from './isInfraWorkloadSpec';
|
|
11
|
+
} from '../types/infraManifest.js';
|
|
12
|
+
import type { InfraShape } from '../types/infraValidation.js';
|
|
13
|
+
import { infraFields } from './infraFields.js';
|
|
14
|
+
import { isInfraAuthSpec } from './isInfraAuthSpec.js';
|
|
15
|
+
import { isInfraCredentialRef } from './isInfraCredentialRef.js';
|
|
16
|
+
import { isInfraDeploymentSpec } from './isInfraDeploymentSpec.js';
|
|
17
|
+
import { isInfraShape } from './isInfraShape.js';
|
|
18
|
+
import { isInfraWorkloadSpec } from './isInfraWorkloadSpec.js';
|
|
19
19
|
|
|
20
20
|
/*** Validate sibling capabilities and their required relationships within one environment. */
|
|
21
21
|
export function isInfraEnvironmentSpec(value: unknown): value is InfraEnvironmentSpec {
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { isRecord } from '@ankhorage/utility/object';
|
|
2
2
|
|
|
3
|
-
import { isApiDefinitionRegistry } from '../data/isApiDefinitionRegistry';
|
|
4
|
-
import { APP_ENVIRONMENT_IDS } from '../environments';
|
|
5
|
-
import { isSerializableValue } from '../serializable';
|
|
6
|
-
import type { InfraManifest, InfraModuleSpec } from '../types/infraManifest';
|
|
7
|
-
import type { InfraShape } from '../types/infraValidation';
|
|
8
|
-
import { isInfraEnvironmentSpec } from './isInfraEnvironmentSpec';
|
|
9
|
-
import { isInfraShape } from './isInfraShape';
|
|
3
|
+
import { isApiDefinitionRegistry } from '../data/isApiDefinitionRegistry.js';
|
|
4
|
+
import { APP_ENVIRONMENT_IDS } from '../environments.js';
|
|
5
|
+
import { isSerializableValue } from '../serializable.js';
|
|
6
|
+
import type { InfraManifest, InfraModuleSpec } from '../types/infraManifest.js';
|
|
7
|
+
import type { InfraShape } from '../types/infraValidation.js';
|
|
8
|
+
import { isInfraEnvironmentSpec } from './isInfraEnvironmentSpec.js';
|
|
9
|
+
import { isInfraShape } from './isInfraShape.js';
|
|
10
10
|
|
|
11
11
|
/*** Validate standalone infrastructure without AppManifest, Deploy or provider package side effects. */
|
|
12
12
|
export function isInfraManifest(value: unknown): value is InfraManifest {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { isRecord } from '@ankhorage/utility/object';
|
|
2
2
|
|
|
3
|
-
import { infraFields } from './infraFields';
|
|
4
|
-
import { isInfraShape } from './isInfraShape';
|
|
3
|
+
import { infraFields } from './infraFields.js';
|
|
4
|
+
import { isInfraShape } from './isInfraShape.js';
|
|
5
5
|
|
|
6
6
|
/*** Validate runtime-neutral readiness probes and bounded numeric parameters. */
|
|
7
7
|
export function isInfraWorkloadHealth(value: unknown): boolean {
|
|
@@ -2,13 +2,13 @@ import { isStringArray } from '@ankhorage/utility/array';
|
|
|
2
2
|
import { isRecord } from '@ankhorage/utility/object';
|
|
3
3
|
import { isNonEmptyString } from '@ankhorage/utility/string';
|
|
4
4
|
|
|
5
|
-
import { isSerializableSet } from '../collections';
|
|
6
|
-
import type { InfraShape } from '../types/infraValidation';
|
|
7
|
-
import type { InfraWorkloadSpec } from '../types/infraWorkload';
|
|
8
|
-
import { infraFields } from './infraFields';
|
|
9
|
-
import { isInfraShape } from './isInfraShape';
|
|
10
|
-
import { isInfraWorkloadHealth } from './isInfraWorkloadHealth';
|
|
11
|
-
import { isInfraWorkloadValue } from './isInfraWorkloadValue';
|
|
5
|
+
import { isSerializableSet } from '../collections.js';
|
|
6
|
+
import type { InfraShape } from '../types/infraValidation.js';
|
|
7
|
+
import type { InfraWorkloadSpec } from '../types/infraWorkload.js';
|
|
8
|
+
import { infraFields } from './infraFields.js';
|
|
9
|
+
import { isInfraShape } from './isInfraShape.js';
|
|
10
|
+
import { isInfraWorkloadHealth } from './isInfraWorkloadHealth.js';
|
|
11
|
+
import { isInfraWorkloadValue } from './isInfraWorkloadValue.js';
|
|
12
12
|
|
|
13
13
|
/*** Validate the portable desired workload; runtime-specific fields and plaintext secret objects fail. */
|
|
14
14
|
export function isInfraWorkloadSpec(value: unknown): value is InfraWorkloadSpec {
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { isRecord } from '@ankhorage/utility/object';
|
|
2
2
|
import { isNonEmptyString } from '@ankhorage/utility/string';
|
|
3
3
|
|
|
4
|
-
import { APP_ENVIRONMENT_IDS } from '../environments';
|
|
5
|
-
import type { InfraWorkloadScalarValue } from '../types/infraWorkload';
|
|
6
|
-
import { isInfraCredentialRef } from './isInfraCredentialRef';
|
|
7
|
-
import { isInfraShape } from './isInfraShape';
|
|
4
|
+
import { APP_ENVIRONMENT_IDS } from '../environments.js';
|
|
5
|
+
import type { InfraWorkloadScalarValue } from '../types/infraWorkload.js';
|
|
6
|
+
import { isInfraCredentialRef } from './isInfraCredentialRef.js';
|
|
7
|
+
import { isInfraShape } from './isInfraShape.js';
|
|
8
8
|
|
|
9
9
|
/*** Workload values explicitly distinguish public literals, output dependencies and secret references. */
|
|
10
10
|
export function isInfraWorkloadValue(value: unknown): boolean {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import type { InfraResult } from '../types/infraLifecycle';
|
|
2
|
-
import type { InfraManifest } from '../types/infraManifest';
|
|
3
|
-
import { isInfraManifest } from './isInfraManifest';
|
|
1
|
+
import type { InfraResult } from '../types/infraLifecycle.js';
|
|
2
|
+
import type { InfraManifest } from '../types/infraManifest.js';
|
|
3
|
+
import { isInfraManifest } from './isInfraManifest.js';
|
|
4
4
|
|
|
5
5
|
/** Parse unknown infrastructure input; package availability and credentials are separate validation stages. */
|
|
6
6
|
export function parseInfraManifest(value: unknown): InfraResult<InfraManifest> {
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { INFRA_ADAPTER_CATALOG } from '../infraCatalog';
|
|
2
|
-
import type { InfraAdapterDescriptor } from '../types/infraAdapters';
|
|
3
|
-
import type { InfraDiagnostic, InfraResult } from '../types/infraLifecycle';
|
|
4
|
-
import type { InfraEnvironmentSpec } from '../types/infraManifest';
|
|
5
|
-
import { isInfraAdapterDescriptor } from './isInfraAdapterDescriptor';
|
|
1
|
+
import { INFRA_ADAPTER_CATALOG } from '../infraCatalog.js';
|
|
2
|
+
import type { InfraAdapterDescriptor } from '../types/infraAdapters.js';
|
|
3
|
+
import type { InfraDiagnostic, InfraResult } from '../types/infraLifecycle.js';
|
|
4
|
+
import type { InfraEnvironmentSpec } from '../types/infraManifest.js';
|
|
5
|
+
import { isInfraAdapterDescriptor } from './isInfraAdapterDescriptor.js';
|
|
6
6
|
|
|
7
7
|
/** Validate supplied installed descriptors without imports or filesystem access; only selected packages matter. */
|
|
8
8
|
export function validateInfraAdapterSelection(
|
package/src/infra.test.ts
CHANGED
|
@@ -250,7 +250,7 @@ describe('adapter package discovery contracts', () => {
|
|
|
250
250
|
).toBe(true);
|
|
251
251
|
const result = validateInfraAdapterSelection(local, [INFRA_ADAPTER_CATALOG.local]);
|
|
252
252
|
expect(result.ok).toBe(false);
|
|
253
|
-
expect(result.diagnostics[0]?.message).toContain('@ankhorage/minikube');
|
|
253
|
+
expect(result.diagnostics[0]?.message).toContain('@ankhorage/infra-minikube');
|
|
254
254
|
expect(result.diagnostics[0]?.code).toBe('adapter_unavailable');
|
|
255
255
|
});
|
|
256
256
|
|
package/src/infra.ts
CHANGED
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
/** Canonical standalone infrastructure contracts, catalog and side-effect-free validation. */
|
|
2
|
-
export { isInfraAdapterDescriptor } from './infra/isInfraAdapterDescriptor';
|
|
3
|
-
export { isInfraAuthSpec } from './infra/isInfraAuthSpec';
|
|
4
|
-
export { isInfraDeploymentSpec } from './infra/isInfraDeploymentSpec';
|
|
5
|
-
export { isInfraEnvironmentSpec } from './infra/isInfraEnvironmentSpec';
|
|
6
|
-
export { isInfraManifest } from './infra/isInfraManifest';
|
|
7
|
-
export { isInfraWorkloadSpec } from './infra/isInfraWorkloadSpec';
|
|
8
|
-
export { parseInfraManifest } from './infra/parseInfraManifest';
|
|
9
|
-
export { validateInfraAdapterSelection } from './infra/validateInfraAdapterSelection';
|
|
10
|
-
export { INFRA_ADAPTER_CATALOG, INFRA_RUNTIME_COMPATIBILITY } from './infraCatalog';
|
|
11
|
-
export type * from './types/infraAdapters';
|
|
12
|
-
export type * from './types/infraLifecycle';
|
|
13
|
-
export type * from './types/infraManifest';
|
|
14
|
-
export type * from './types/infraSecrets';
|
|
15
|
-
export type * from './types/infraTargets';
|
|
16
|
-
export type * from './types/infraWorkload';
|
|
2
|
+
export { isInfraAdapterDescriptor } from './infra/isInfraAdapterDescriptor.js';
|
|
3
|
+
export { isInfraAuthSpec } from './infra/isInfraAuthSpec.js';
|
|
4
|
+
export { isInfraDeploymentSpec } from './infra/isInfraDeploymentSpec.js';
|
|
5
|
+
export { isInfraEnvironmentSpec } from './infra/isInfraEnvironmentSpec.js';
|
|
6
|
+
export { isInfraManifest } from './infra/isInfraManifest.js';
|
|
7
|
+
export { isInfraWorkloadSpec } from './infra/isInfraWorkloadSpec.js';
|
|
8
|
+
export { parseInfraManifest } from './infra/parseInfraManifest.js';
|
|
9
|
+
export { validateInfraAdapterSelection } from './infra/validateInfraAdapterSelection.js';
|
|
10
|
+
export { INFRA_ADAPTER_CATALOG, INFRA_RUNTIME_COMPATIBILITY } from './infraCatalog.js';
|
|
11
|
+
export type * from './types/infraAdapters.js';
|
|
12
|
+
export type * from './types/infraLifecycle.js';
|
|
13
|
+
export type * from './types/infraManifest.js';
|
|
14
|
+
export type * from './types/infraSecrets.js';
|
|
15
|
+
export type * from './types/infraTargets.js';
|
|
16
|
+
export type * from './types/infraWorkload.js';
|
package/src/infraCatalog.ts
CHANGED
|
@@ -9,7 +9,7 @@ export const INFRA_RUNTIME_COMPATIBILITY = {
|
|
|
9
9
|
export const INFRA_ADAPTER_CATALOG = {
|
|
10
10
|
local: {
|
|
11
11
|
id: 'local',
|
|
12
|
-
package: '@ankhorage/local',
|
|
12
|
+
package: '@ankhorage/infra-local',
|
|
13
13
|
kind: 'compute',
|
|
14
14
|
configVersion: 1,
|
|
15
15
|
capabilities: ['compute'],
|
|
@@ -18,7 +18,7 @@ export const INFRA_ADAPTER_CATALOG = {
|
|
|
18
18
|
},
|
|
19
19
|
hetzner: {
|
|
20
20
|
id: 'hetzner',
|
|
21
|
-
package: '@ankhorage/hetzner',
|
|
21
|
+
package: '@ankhorage/infra-hetzner',
|
|
22
22
|
kind: 'compute',
|
|
23
23
|
configVersion: 1,
|
|
24
24
|
capabilities: ['compute'],
|
|
@@ -27,7 +27,7 @@ export const INFRA_ADAPTER_CATALOG = {
|
|
|
27
27
|
},
|
|
28
28
|
minikube: {
|
|
29
29
|
id: 'minikube',
|
|
30
|
-
package: '@ankhorage/minikube',
|
|
30
|
+
package: '@ankhorage/infra-minikube',
|
|
31
31
|
kind: 'runtime',
|
|
32
32
|
configVersion: 1,
|
|
33
33
|
capabilities: ['runtime', 'workloads', 'networking'],
|
|
@@ -36,7 +36,7 @@ export const INFRA_ADAPTER_CATALOG = {
|
|
|
36
36
|
},
|
|
37
37
|
k3s: {
|
|
38
38
|
id: 'k3s',
|
|
39
|
-
package: '@ankhorage/k3s',
|
|
39
|
+
package: '@ankhorage/infra-k3s',
|
|
40
40
|
kind: 'runtime',
|
|
41
41
|
configVersion: 1,
|
|
42
42
|
capabilities: ['runtime', 'workloads', 'networking'],
|
|
@@ -45,7 +45,7 @@ export const INFRA_ADAPTER_CATALOG = {
|
|
|
45
45
|
},
|
|
46
46
|
'docker-compose': {
|
|
47
47
|
id: 'docker-compose',
|
|
48
|
-
package: '@ankhorage/docker-compose',
|
|
48
|
+
package: '@ankhorage/infra-docker-compose',
|
|
49
49
|
kind: 'runtime',
|
|
50
50
|
configVersion: 1,
|
|
51
51
|
capabilities: ['runtime', 'workloads', 'networking'],
|
|
@@ -54,7 +54,7 @@ export const INFRA_ADAPTER_CATALOG = {
|
|
|
54
54
|
},
|
|
55
55
|
supabase: {
|
|
56
56
|
id: 'supabase',
|
|
57
|
-
package: '@ankhorage/supabase',
|
|
57
|
+
package: '@ankhorage/infra-supabase',
|
|
58
58
|
kind: 'service',
|
|
59
59
|
configVersion: 1,
|
|
60
60
|
capabilities: ['database', 'auth', 'objectStorage'],
|
|
@@ -63,7 +63,7 @@ export const INFRA_ADAPTER_CATALOG = {
|
|
|
63
63
|
},
|
|
64
64
|
cerbos: {
|
|
65
65
|
id: 'cerbos',
|
|
66
|
-
package: '@ankhorage/cerbos',
|
|
66
|
+
package: '@ankhorage/infra-cerbos',
|
|
67
67
|
kind: 'service',
|
|
68
68
|
configVersion: 1,
|
|
69
69
|
capabilities: ['authz'],
|
|
@@ -72,7 +72,7 @@ export const INFRA_ADAPTER_CATALOG = {
|
|
|
72
72
|
},
|
|
73
73
|
r2: {
|
|
74
74
|
id: 'r2',
|
|
75
|
-
package: '@ankhorage/r2',
|
|
75
|
+
package: '@ankhorage/infra-r2',
|
|
76
76
|
kind: 'service',
|
|
77
77
|
configVersion: 1,
|
|
78
78
|
capabilities: ['objectStorage'],
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
import { mkdirSync, mkdtempSync, readdirSync, rmSync, writeFileSync } from 'node:fs';
|
|
2
|
+
import { tmpdir } from 'node:os';
|
|
3
|
+
import { join } from 'node:path';
|
|
4
|
+
|
|
5
|
+
import { describe, expect, it } from 'bun:test';
|
|
6
|
+
|
|
7
|
+
const packageRoot = process.cwd();
|
|
8
|
+
const temporaryCacheDirectory = join(tmpdir(), 'contracts-infra-consumer-cache');
|
|
9
|
+
|
|
10
|
+
const runCommand = (command: string[], cwd: string): string => {
|
|
11
|
+
const result = Bun.spawnSync(command, {
|
|
12
|
+
cwd,
|
|
13
|
+
env: {
|
|
14
|
+
...process.env,
|
|
15
|
+
BUN_INSTALL_CACHE_DIR: temporaryCacheDirectory,
|
|
16
|
+
npm_config_cache: temporaryCacheDirectory,
|
|
17
|
+
},
|
|
18
|
+
});
|
|
19
|
+
const output = `${result.stdout.toString()}${result.stderr.toString()}`;
|
|
20
|
+
|
|
21
|
+
expect(result.exitCode, output).toBe(0);
|
|
22
|
+
return output;
|
|
23
|
+
};
|
|
24
|
+
|
|
25
|
+
const writeConsumerFiles = (consumerDirectory: string): void => {
|
|
26
|
+
writeFileSync(
|
|
27
|
+
join(consumerDirectory, 'consumer.mjs'),
|
|
28
|
+
[
|
|
29
|
+
"import { INFRA_ADAPTER_CATALOG, isInfraAdapterDescriptor } from '@ankhorage/contracts/infra';",
|
|
30
|
+
'const descriptor = INFRA_ADAPTER_CATALOG.hetzner;',
|
|
31
|
+
"if (!isInfraAdapterDescriptor(descriptor) || descriptor.package !== '@ankhorage/infra-hetzner') {",
|
|
32
|
+
" throw new Error('published infra contract is unavailable');",
|
|
33
|
+
'}',
|
|
34
|
+
].join('\n'),
|
|
35
|
+
);
|
|
36
|
+
writeFileSync(
|
|
37
|
+
join(consumerDirectory, 'consumer.ts'),
|
|
38
|
+
[
|
|
39
|
+
"import { INFRA_ADAPTER_CATALOG, isInfraAdapterDescriptor } from '@ankhorage/contracts/infra';",
|
|
40
|
+
'const descriptor = INFRA_ADAPTER_CATALOG.hetzner;',
|
|
41
|
+
'const isCanonicalDescriptor: boolean = isInfraAdapterDescriptor(descriptor);',
|
|
42
|
+
'void isCanonicalDescriptor;',
|
|
43
|
+
].join('\n'),
|
|
44
|
+
);
|
|
45
|
+
};
|
|
46
|
+
|
|
47
|
+
const packAndInstall = (consumerDirectory: string, packedDirectory: string): void => {
|
|
48
|
+
runCommand(['bun', 'run', 'build'], packageRoot);
|
|
49
|
+
runCommand(
|
|
50
|
+
['npm', 'pack', '--ignore-scripts', '--pack-destination', packedDirectory],
|
|
51
|
+
packageRoot,
|
|
52
|
+
);
|
|
53
|
+
|
|
54
|
+
const archiveName = readdirSync(packedDirectory).find((entry) => entry.endsWith('.tgz'));
|
|
55
|
+
expect(archiveName).toBeDefined();
|
|
56
|
+
runCommand(
|
|
57
|
+
['bun', 'add', '--ignore-scripts', join(packedDirectory, archiveName ?? 'missing.tgz')],
|
|
58
|
+
consumerDirectory,
|
|
59
|
+
);
|
|
60
|
+
};
|
|
61
|
+
|
|
62
|
+
const verifyConsumer = (consumerDirectory: string): void => {
|
|
63
|
+
runCommand(['node', 'consumer.mjs'], consumerDirectory);
|
|
64
|
+
runCommand(['bun', 'consumer.mjs'], consumerDirectory);
|
|
65
|
+
runCommand(
|
|
66
|
+
[
|
|
67
|
+
join(packageRoot, 'node_modules/.bin/tsc'),
|
|
68
|
+
'--noEmit',
|
|
69
|
+
'--module',
|
|
70
|
+
'NodeNext',
|
|
71
|
+
'--moduleResolution',
|
|
72
|
+
'NodeNext',
|
|
73
|
+
'--target',
|
|
74
|
+
'ES2022',
|
|
75
|
+
'--skipLibCheck',
|
|
76
|
+
'consumer.ts',
|
|
77
|
+
],
|
|
78
|
+
consumerDirectory,
|
|
79
|
+
);
|
|
80
|
+
};
|
|
81
|
+
|
|
82
|
+
describe('packed infra consumer', () => {
|
|
83
|
+
it('supports native Node ESM, Bun, and public declarations', () => {
|
|
84
|
+
const temporaryDirectory = mkdtempSync(join(tmpdir(), 'contracts-infra-consumer-'));
|
|
85
|
+
const consumerDirectory = join(temporaryDirectory, 'package');
|
|
86
|
+
const packedDirectory = join(temporaryDirectory, 'packed');
|
|
87
|
+
|
|
88
|
+
try {
|
|
89
|
+
mkdirSync(consumerDirectory);
|
|
90
|
+
mkdirSync(packedDirectory);
|
|
91
|
+
writeFileSync(
|
|
92
|
+
join(consumerDirectory, 'package.json'),
|
|
93
|
+
JSON.stringify({ name: 'contracts-infra-consumer', private: true, type: 'module' }),
|
|
94
|
+
);
|
|
95
|
+
writeConsumerFiles(consumerDirectory);
|
|
96
|
+
packAndInstall(consumerDirectory, packedDirectory);
|
|
97
|
+
verifyConsumer(consumerDirectory);
|
|
98
|
+
} finally {
|
|
99
|
+
rmSync(temporaryDirectory, { force: true, recursive: true });
|
|
100
|
+
}
|
|
101
|
+
});
|
|
102
|
+
});
|
package/src/media.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { isRecord } from '@ankhorage/utility/object';
|
|
2
2
|
import { isNonEmptyString } from '@ankhorage/utility/string';
|
|
3
3
|
|
|
4
|
-
import type { EntityRegistry } from './collections';
|
|
4
|
+
import type { EntityRegistry } from './collections.js';
|
|
5
5
|
|
|
6
6
|
export const MEDIA_ASSET_KINDS = ['image', 'audio', 'video', 'font', 'file'] as const;
|
|
7
7
|
|
package/src/navigator/catalog.ts
CHANGED
|
@@ -4,14 +4,14 @@ import type {
|
|
|
4
4
|
NavigatorPreset,
|
|
5
5
|
NavigatorType,
|
|
6
6
|
StackPresentation,
|
|
7
|
-
} from '../navigator';
|
|
8
|
-
import type { NavigatorDependencyRequirement } from './generation';
|
|
7
|
+
} from '../navigator.js';
|
|
8
|
+
import type { NavigatorDependencyRequirement } from './generation.js';
|
|
9
9
|
import type {
|
|
10
10
|
NavigatorApiStability,
|
|
11
11
|
NavigatorCapabilityId,
|
|
12
12
|
NavigatorRuntimePlatform,
|
|
13
13
|
NavigatorSupportStatus,
|
|
14
|
-
} from './planning';
|
|
14
|
+
} from './planning.js';
|
|
15
15
|
|
|
16
16
|
export type NavigatorVerificationKind =
|
|
17
17
|
| 'structural'
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { CustomNavigatorNode } from '../navigator';
|
|
2
|
-
import type { NavigatorApiStability, NavigatorRuntimePlatform } from './planning';
|
|
1
|
+
import type { CustomNavigatorNode } from '../navigator.js';
|
|
2
|
+
import type { NavigatorApiStability, NavigatorRuntimePlatform } from './planning.js';
|
|
3
3
|
export interface CustomNavigatorConfigIssue {
|
|
4
4
|
code: string;
|
|
5
5
|
message: string;
|
|
@@ -5,9 +5,9 @@ import type {
|
|
|
5
5
|
RouteDefinition,
|
|
6
6
|
StackImplementation,
|
|
7
7
|
StackScreenOptions,
|
|
8
|
-
} from '../navigator';
|
|
9
|
-
import type { CustomNavigatorRegistry } from './extensions';
|
|
10
|
-
import type { NavigatorDependencyRequirement } from './generation';
|
|
8
|
+
} from '../navigator.js';
|
|
9
|
+
import type { CustomNavigatorRegistry } from './extensions.js';
|
|
10
|
+
import type { NavigatorDependencyRequirement } from './generation.js';
|
|
11
11
|
|
|
12
12
|
export interface ResolvedHeadlessTabsPresentation {
|
|
13
13
|
presentation: ResolvedTabsPresentation;
|
package/src/navigator.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import type { ValueMap } from './collections';
|
|
2
|
-
import type { IconSpec, ManifestValue } from './types';
|
|
1
|
+
import type { ValueMap } from './collections.js';
|
|
2
|
+
import type { IconSpec, ManifestValue } from './types.js';
|
|
3
3
|
|
|
4
|
-
export { isAppNavigatorManifest } from './appManifest/navigator';
|
|
4
|
+
export { isAppNavigatorManifest } from './appManifest/navigator.js';
|
|
5
5
|
|
|
6
6
|
export const NAVIGATOR_TYPES = ['slot', 'stack', 'tabs', 'drawer', 'split-view', 'custom'] as const;
|
|
7
7
|
export type NavigatorType = (typeof NAVIGATOR_TYPES)[number];
|
|
@@ -288,12 +288,12 @@ export type {
|
|
|
288
288
|
NavigatorPresetDescriptor,
|
|
289
289
|
NavigatorVerificationKind,
|
|
290
290
|
NavigatorVerificationStatus,
|
|
291
|
-
} from './navigator/catalog';
|
|
291
|
+
} from './navigator/catalog.js';
|
|
292
292
|
export type {
|
|
293
293
|
CustomNavigatorConfigIssue,
|
|
294
294
|
CustomNavigatorRegistration,
|
|
295
295
|
CustomNavigatorRegistry,
|
|
296
|
-
} from './navigator/extensions';
|
|
296
|
+
} from './navigator/extensions.js';
|
|
297
297
|
export type {
|
|
298
298
|
NavigatorDependencyRequirement,
|
|
299
299
|
NavigatorGeneratedFile,
|
|
@@ -301,7 +301,7 @@ export type {
|
|
|
301
301
|
NavigatorGenerationOptions,
|
|
302
302
|
NavigatorGenerationResult,
|
|
303
303
|
NavigatorScreenModule,
|
|
304
|
-
} from './navigator/generation';
|
|
304
|
+
} from './navigator/generation.js';
|
|
305
305
|
export type {
|
|
306
306
|
CreateNavigatorPlanOptions,
|
|
307
307
|
ExpoRouterNavigatorModule,
|
|
@@ -321,4 +321,4 @@ export type {
|
|
|
321
321
|
ResolvedTabsImplementation,
|
|
322
322
|
ResolvedTabsPresentation,
|
|
323
323
|
TabsNavigatorPlan,
|
|
324
|
-
} from './navigator/planning';
|
|
324
|
+
} from './navigator/planning.js';
|
package/src/requirements.ts
CHANGED
package/src/runtimeCallbacks.ts
CHANGED
package/src/state.ts
CHANGED
|
@@ -2,12 +2,12 @@
|
|
|
2
2
|
import type { StructureDescriptorDocument } from '@ankhorage/contracts/structure';
|
|
3
3
|
|
|
4
4
|
export const STRUCTURE_DESCRIPTOR_COMPILER_VERSION = '6.0.3';
|
|
5
|
-
export const STRUCTURE_DESCRIPTOR_FINGERPRINT = 'sha256:
|
|
5
|
+
export const STRUCTURE_DESCRIPTOR_FINGERPRINT = 'sha256:572919c21c8b8eae4e4fda0e464fbb6e64c448425b737be1de7f4a203d709a4a';
|
|
6
6
|
|
|
7
7
|
export const STRUCTURE_DESCRIPTOR = {
|
|
8
8
|
"protocolVersion": 1,
|
|
9
9
|
"packageName": "@ankhorage/contracts",
|
|
10
|
-
"packageVersion": "26.2.
|
|
10
|
+
"packageVersion": "26.2.2",
|
|
11
11
|
"roots": {
|
|
12
12
|
"auth-flow": "AuthFlowConfig",
|
|
13
13
|
"auth-profile": "AuthProfileSpec",
|
package/src/structure/index.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { hasOnlyKeys, isRecord } from '@ankhorage/utility/object';
|
|
2
2
|
import { isNonEmptyString } from '@ankhorage/utility/string';
|
|
3
3
|
|
|
4
|
-
import type { StructureDescriptor, StructureLiteralValue, StructureScalarType } from './types';
|
|
4
|
+
import type { StructureDescriptor, StructureLiteralValue, StructureScalarType } from './types.js';
|
|
5
5
|
|
|
6
6
|
/*** Validate one standalone structural descriptor without resolving external/local references. */
|
|
7
7
|
export function isStructureDescriptor(value: unknown): value is StructureDescriptor {
|
package/src/structure/types.ts
CHANGED
package/src/theme.ts
CHANGED
package/src/types/appManifest.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { AppEnvironmentId } from '../environments';
|
|
2
|
-
import type { INFRA_ADAPTER_CATALOG } from '../infraCatalog';
|
|
1
|
+
import type { AppEnvironmentId } from '../environments.js';
|
|
2
|
+
import type { INFRA_ADAPTER_CATALOG } from '../infraCatalog.js';
|
|
3
3
|
import type {
|
|
4
4
|
InfraDestroyRequest,
|
|
5
5
|
InfraGeneratedArtifact,
|
|
@@ -9,7 +9,7 @@ import type {
|
|
|
9
9
|
InfraPlanAction,
|
|
10
10
|
InfraResourceStatus,
|
|
11
11
|
InfraResult,
|
|
12
|
-
} from './infraLifecycle';
|
|
12
|
+
} from './infraLifecycle.js';
|
|
13
13
|
import type {
|
|
14
14
|
InfraAdapterId,
|
|
15
15
|
InfraComputeProviderId,
|
|
@@ -17,10 +17,10 @@ import type {
|
|
|
17
17
|
InfraEnvironmentSpec,
|
|
18
18
|
InfraRuntimeProviderId,
|
|
19
19
|
InfraRuntimeSelection,
|
|
20
|
-
} from './infraManifest';
|
|
21
|
-
import type { InfraControlPlaneCredentialRef, InfraSecretReference } from './infraSecrets';
|
|
22
|
-
import type { InfraComputeTarget } from './infraTargets';
|
|
23
|
-
import type { InfraWorkloadSpec } from './infraWorkload';
|
|
20
|
+
} from './infraManifest.js';
|
|
21
|
+
import type { InfraControlPlaneCredentialRef, InfraSecretReference } from './infraSecrets.js';
|
|
22
|
+
import type { InfraComputeTarget } from './infraTargets.js';
|
|
23
|
+
import type { InfraWorkloadSpec } from './infraWorkload.js';
|
|
24
24
|
|
|
25
25
|
/** Package exports must match this exact catalog entry; optional operations are advertised explicitly. */
|
|
26
26
|
export type InfraAdapterDescriptor<P extends InfraAdapterId = InfraAdapterId> = {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import type { AppEnvironmentId } from '../environments';
|
|
2
|
-
import type { InfraAdapterId } from './infraManifest';
|
|
3
|
-
import type { InfraSecretReference } from './infraSecrets';
|
|
4
|
-
import type { InfraComputeTarget } from './infraTargets';
|
|
1
|
+
import type { AppEnvironmentId } from '../environments.js';
|
|
2
|
+
import type { InfraAdapterId } from './infraManifest.js';
|
|
3
|
+
import type { InfraSecretReference } from './infraSecrets.js';
|
|
4
|
+
import type { InfraComputeTarget } from './infraTargets.js';
|
|
5
5
|
|
|
6
6
|
/** Identity must be verified before mutation; unowned resources must never be pruned. */
|
|
7
7
|
export interface InfraResourceIdentity {
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import type { AuthFlowConfig, AuthOAuthConfig } from '../auth';
|
|
2
|
-
import type { EntityRegistry, SerializableSet, ValueMap } from '../collections';
|
|
3
|
-
import type { ApiDefinitionRegistry, DataContractValue } from '../data';
|
|
4
|
-
import type { AppEnvironmentId } from '../environments';
|
|
5
|
-
import type { INFRA_ADAPTER_CATALOG, INFRA_RUNTIME_COMPATIBILITY } from '../infraCatalog';
|
|
6
|
-
import type { AuthProfileSpec, AuthScope, AuthSignInSpec, AuthSignUpSpec } from '../types';
|
|
7
|
-
import type { InfraControlPlaneCredentialRef } from './infraSecrets';
|
|
8
|
-
import type { InfraWorkloadRegistry } from './infraWorkload';
|
|
1
|
+
import type { AuthFlowConfig, AuthOAuthConfig } from '../auth.js';
|
|
2
|
+
import type { EntityRegistry, SerializableSet, ValueMap } from '../collections.js';
|
|
3
|
+
import type { ApiDefinitionRegistry, DataContractValue } from '../data/index.js';
|
|
4
|
+
import type { AppEnvironmentId } from '../environments.js';
|
|
5
|
+
import type { INFRA_ADAPTER_CATALOG, INFRA_RUNTIME_COMPATIBILITY } from '../infraCatalog.js';
|
|
6
|
+
import type { AuthProfileSpec, AuthScope, AuthSignInSpec, AuthSignUpSpec } from '../types.js';
|
|
7
|
+
import type { InfraControlPlaneCredentialRef } from './infraSecrets.js';
|
|
8
|
+
import type { InfraWorkloadRegistry } from './infraWorkload.js';
|
|
9
9
|
|
|
10
10
|
export type InfraAdapterId = keyof typeof INFRA_ADAPTER_CATALOG;
|
|
11
11
|
export type InfraCapability =
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { InfraControlPlaneCredentialRef } from './infraSecrets';
|
|
1
|
+
import type { InfraControlPlaneCredentialRef } from './infraSecrets.js';
|
|
2
2
|
|
|
3
3
|
/** Portable runtime target state contains credential identity only, never resolved values. */
|
|
4
4
|
export type InfraComputeTarget = {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { EntityRegistry, SerializableSet, ValueMap } from '../collections';
|
|
2
|
-
import type { InfraControlPlaneCredentialRef, InfraSecretReference } from './infraSecrets';
|
|
1
|
+
import type { EntityRegistry, SerializableSet, ValueMap } from '../collections.js';
|
|
2
|
+
import type { InfraControlPlaneCredentialRef, InfraSecretReference } from './infraSecrets.js';
|
|
3
3
|
|
|
4
4
|
export interface InfraWorkloadArtifact {
|
|
5
5
|
readonly kind: 'image';
|