@ankhorage/contracts 21.0.0 → 22.0.1
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 +3 -1
- package/dist/appManifest/apis.d.ts +3 -3
- package/dist/appManifest/apis.d.ts.map +1 -1
- package/dist/appManifest/apis.js +4 -6
- package/dist/appManifest/apis.js.map +1 -1
- package/dist/appManifest/bindings.d.ts.map +1 -1
- package/dist/appManifest/bindings.js +2 -1
- package/dist/appManifest/bindings.js.map +1 -1
- package/dist/appManifest/data.d.ts.map +1 -1
- package/dist/appManifest/data.js +5 -4
- package/dist/appManifest/data.js.map +1 -1
- package/dist/appManifest/isAppManifest.js +3 -3
- package/dist/appManifest/isAppManifest.js.map +1 -1
- package/dist/appManifest/isManifestValue.d.ts +1 -1
- package/dist/appManifest/isManifestValue.d.ts.map +1 -1
- package/dist/appManifest/isManifestValue.js +3 -12
- package/dist/appManifest/isManifestValue.js.map +1 -1
- package/dist/appManifest/screens.d.ts +3 -2
- package/dist/appManifest/screens.d.ts.map +1 -1
- package/dist/appManifest/screens.js +15 -7
- package/dist/appManifest/screens.js.map +1 -1
- package/dist/appManifest/splashScreen.d.ts +8 -11
- package/dist/appManifest/splashScreen.d.ts.map +1 -1
- package/dist/appManifest/splashScreen.js.map +1 -1
- package/dist/bindings.d.ts +2 -3
- package/dist/bindings.d.ts.map +1 -1
- package/dist/bindings.js.map +1 -1
- package/dist/collections.d.ts +4 -0
- package/dist/collections.d.ts.map +1 -0
- package/dist/collections.js +6 -0
- package/dist/collections.js.map +1 -0
- package/dist/data/apis.d.ts +1 -1
- package/dist/data/apis.d.ts.map +1 -1
- package/dist/data/apis.js.map +1 -1
- package/dist/data/values.d.ts +2 -3
- package/dist/data/values.d.ts.map +1 -1
- package/dist/data/values.js.map +1 -1
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/infra/isInfraEnvironmentSpec.d.ts.map +1 -1
- package/dist/infra/isInfraEnvironmentSpec.js +10 -12
- package/dist/infra/isInfraEnvironmentSpec.js.map +1 -1
- package/dist/infra/isInfraManifest.d.ts.map +1 -1
- package/dist/infra/isInfraManifest.js +14 -5
- package/dist/infra/isInfraManifest.js.map +1 -1
- package/dist/infra/isInfraWorkloadSpec.d.ts.map +1 -1
- package/dist/infra/isInfraWorkloadSpec.js +26 -20
- package/dist/infra/isInfraWorkloadSpec.js.map +1 -1
- package/dist/requirements.d.ts +5 -10
- package/dist/requirements.d.ts.map +1 -1
- package/dist/requirements.js.map +1 -1
- package/dist/serializable.d.ts +6 -0
- package/dist/serializable.d.ts.map +1 -0
- package/dist/serializable.js +14 -0
- package/dist/serializable.js.map +1 -0
- package/dist/state.d.ts +2 -3
- package/dist/state.d.ts.map +1 -1
- package/dist/state.js.map +1 -1
- package/dist/types/infraManifest.d.ts +14 -13
- package/dist/types/infraManifest.d.ts.map +1 -1
- package/dist/types/infraManifest.js.map +1 -1
- package/dist/types/infraWorkload.d.ts +11 -11
- package/dist/types/infraWorkload.d.ts.map +1 -1
- package/dist/types/infraWorkload.js.map +1 -1
- package/dist/types.d.ts +9 -8
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js.map +1 -1
- package/package.json +2 -3
- package/src/appManifest/apis.ts +9 -6
- package/src/appManifest/bindings.ts +7 -1
- package/src/appManifest/data.ts +13 -4
- package/src/appManifest/isAppManifest.ts +3 -3
- package/src/appManifest/isManifestValue.ts +3 -16
- package/src/appManifest/screens.ts +21 -10
- package/src/appManifest/splashScreen.test.ts +3 -3
- package/src/appManifest/splashScreen.ts +8 -18
- package/src/appManifest.test.ts +21 -16
- package/src/bindings.test.ts +11 -8
- package/src/bindings.ts +2 -9
- package/src/collections.ts +8 -0
- package/src/contracts.test.ts +16 -13
- package/src/data/apis.test.ts +6 -4
- package/src/data/apis.ts +1 -1
- package/src/data/values.ts +3 -9
- package/src/deploy.test.ts +4 -4
- package/src/index.ts +2 -0
- package/src/infra/isInfraEnvironmentSpec.ts +16 -16
- package/src/infra/isInfraManifest.ts +17 -6
- package/src/infra/isInfraWorkloadSpec.ts +39 -24
- package/src/infra-published-port.test.ts +8 -8
- package/src/infra-workload-persistence.test.ts +4 -4
- package/src/infra-workload.test.ts +24 -22
- package/src/infra.test.ts +16 -20
- package/src/infraPersistence.test.ts +1 -1
- package/src/infraServices.test.ts +1 -1
- package/src/requirements.test.ts +2 -2
- package/src/requirements.ts +6 -12
- package/src/secrets.test.ts +1 -1
- package/src/serializable.ts +25 -0
- package/src/state.ts +3 -6
- package/src/types/infraManifest.ts +17 -13
- package/src/types/infraWorkload.ts +12 -11
- package/src/types.ts +11 -12
package/src/types.ts
CHANGED
|
@@ -14,6 +14,7 @@ import type { MediaAssetReference, MediaManifest } from './media';
|
|
|
14
14
|
import type { AppNavigatorManifest } from './navigator';
|
|
15
15
|
import type { RepositoryManifest } from './repository';
|
|
16
16
|
import type { ScreenRequirements } from './requirements';
|
|
17
|
+
import type { SerializableValue } from './serializable';
|
|
17
18
|
import type { AppStateSpec } from './state';
|
|
18
19
|
import type { ThemeGlobalTokenOverrides, ThemeRecipeOverrides } from './theme';
|
|
19
20
|
|
|
@@ -22,8 +23,10 @@ export interface ThemeModeConfig {
|
|
|
22
23
|
harmony: ColorHarmony;
|
|
23
24
|
}
|
|
24
25
|
|
|
26
|
+
export type ThemeId = string;
|
|
27
|
+
|
|
25
28
|
export interface ThemeConfig {
|
|
26
|
-
id:
|
|
29
|
+
id: ThemeId;
|
|
27
30
|
name: string;
|
|
28
31
|
light: ThemeModeConfig;
|
|
29
32
|
dark: ThemeModeConfig;
|
|
@@ -33,6 +36,8 @@ export interface ThemeConfig {
|
|
|
33
36
|
recipes?: ThemeRecipeOverrides;
|
|
34
37
|
}
|
|
35
38
|
|
|
39
|
+
export type ThemeRegistry = Readonly<Record<ThemeId, ThemeConfig>>;
|
|
40
|
+
|
|
36
41
|
export type ActionType =
|
|
37
42
|
'navigate' | 'alert' | 'console' | 'toggleDarkMode' | 'setLanguage' | 'search' | 'filter';
|
|
38
43
|
|
|
@@ -93,13 +98,7 @@ export type Action =
|
|
|
93
98
|
| SetLanguageAction
|
|
94
99
|
| ToggleDarkModeAction;
|
|
95
100
|
|
|
96
|
-
export type ManifestValue =
|
|
97
|
-
| string
|
|
98
|
-
| number
|
|
99
|
-
| boolean
|
|
100
|
-
| null
|
|
101
|
-
| readonly ManifestValue[]
|
|
102
|
-
| { readonly [key: string]: ManifestValue };
|
|
101
|
+
export type ManifestValue = SerializableValue;
|
|
103
102
|
|
|
104
103
|
export type ComponentEventPayloadValue = ManifestValue;
|
|
105
104
|
|
|
@@ -271,12 +270,12 @@ export interface AppManifest {
|
|
|
271
270
|
slug: string;
|
|
272
271
|
version: string;
|
|
273
272
|
category: AppCategory;
|
|
274
|
-
themeId:
|
|
273
|
+
themeId: ThemeId;
|
|
275
274
|
created?: string;
|
|
276
275
|
updated?: string;
|
|
277
276
|
};
|
|
278
|
-
themes:
|
|
279
|
-
activeThemeId:
|
|
277
|
+
themes: ThemeRegistry;
|
|
278
|
+
activeThemeId: ThemeId;
|
|
280
279
|
activeThemeMode?: 'dark' | 'light';
|
|
281
280
|
splashScreen?: SplashScreenSpec;
|
|
282
281
|
/** Studio-managed authoring media. Runtime/user uploads are intentionally separate. */
|
|
@@ -287,7 +286,7 @@ export interface AppManifest {
|
|
|
287
286
|
state?: AppStateSpec;
|
|
288
287
|
infra: InfraManifest;
|
|
289
288
|
navigator: AppNavigatorManifest;
|
|
290
|
-
screens: Record<string, ScreenSpec
|
|
289
|
+
screens: Readonly<Record<string, ScreenSpec>>;
|
|
291
290
|
dataSources?: DataSourceRegistry;
|
|
292
291
|
dataBindings?: ComponentDataBindingRegistry;
|
|
293
292
|
repository?: RepositoryManifest;
|