t44 0.4.0-rc.3
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/.dco-signatures +9 -0
- package/.github/workflows/dco.yml +12 -0
- package/.o/GordianOpenIntegrity-CurrentLifehash.svg +1026 -0
- package/.o/GordianOpenIntegrity-InceptionLifehash.svg +1026 -0
- package/.o/GordianOpenIntegrity.yaml +25 -0
- package/.o/assets/Hero-Terminal44-v0.jpeg +0 -0
- package/DCO.md +34 -0
- package/LICENSE.md +203 -0
- package/README.md +183 -0
- package/bin/activate +36 -0
- package/bin/activate.ts +30 -0
- package/bin/postinstall.sh +19 -0
- package/bin/shell +27 -0
- package/bin/t44 +27 -0
- package/caps/ConfigSchemaStruct.ts +55 -0
- package/caps/Home.ts +51 -0
- package/caps/HomeRegistry.ts +313 -0
- package/caps/HomeRegistryFile.ts +144 -0
- package/caps/JsonSchemas.ts +220 -0
- package/caps/OpenApiSchema.ts +67 -0
- package/caps/PackageDescriptor.ts +88 -0
- package/caps/ProjectCatalogs.ts +153 -0
- package/caps/ProjectDeployment.ts +363 -0
- package/caps/ProjectDevelopment.ts +257 -0
- package/caps/ProjectPublishing.ts +522 -0
- package/caps/ProjectRack.ts +155 -0
- package/caps/ProjectRepository.ts +322 -0
- package/caps/RootKey.ts +219 -0
- package/caps/SigningKey.ts +243 -0
- package/caps/WorkspaceCli.ts +442 -0
- package/caps/WorkspaceConfig.ts +268 -0
- package/caps/WorkspaceConfig.yaml +71 -0
- package/caps/WorkspaceConfigFile.ts +799 -0
- package/caps/WorkspaceConnection.ts +249 -0
- package/caps/WorkspaceEntityConfig.ts +78 -0
- package/caps/WorkspaceEntityConfig.v0.ts +77 -0
- package/caps/WorkspaceEntityFact.ts +218 -0
- package/caps/WorkspaceInfo.ts +595 -0
- package/caps/WorkspaceInit.ts +30 -0
- package/caps/WorkspaceKey.ts +338 -0
- package/caps/WorkspaceModel.ts +373 -0
- package/caps/WorkspaceProjects.ts +636 -0
- package/caps/WorkspacePrompt.ts +406 -0
- package/caps/WorkspaceShell.sh +39 -0
- package/caps/WorkspaceShell.ts +104 -0
- package/caps/WorkspaceShell.yaml +64 -0
- package/caps/WorkspaceShellCli.ts +109 -0
- package/caps/WorkspaceTest.ts +167 -0
- package/caps/providers/README.md +2 -0
- package/caps/providers/bunny.net/ProjectDeployment.ts +327 -0
- package/caps/providers/bunny.net/api-pull.test.ts +319 -0
- package/caps/providers/bunny.net/api-pull.ts +164 -0
- package/caps/providers/bunny.net/api-storage.test.ts +168 -0
- package/caps/providers/bunny.net/api-storage.ts +248 -0
- package/caps/providers/bunny.net/api.ts +95 -0
- package/caps/providers/dynadot.com/ProjectDeployment.ts +202 -0
- package/caps/providers/dynadot.com/api-domains.test.ts +224 -0
- package/caps/providers/dynadot.com/api-domains.ts +169 -0
- package/caps/providers/dynadot.com/api-restful-v1.test.ts +190 -0
- package/caps/providers/dynadot.com/api-restful-v1.ts +94 -0
- package/caps/providers/dynadot.com/api-restful-v2.test.ts +200 -0
- package/caps/providers/dynadot.com/api-restful-v2.ts +94 -0
- package/caps/providers/git-scm.com/ProjectPublishing.ts +654 -0
- package/caps/providers/github.com/ProjectPublishing.ts +118 -0
- package/caps/providers/github.com/api.ts +115 -0
- package/caps/providers/npmjs.com/ProjectPublishing.ts +536 -0
- package/caps/providers/semver.org/ProjectPublishing.ts +286 -0
- package/caps/providers/vercel.com/ProjectDeployment.ts +326 -0
- package/caps/providers/vercel.com/api.test.ts +67 -0
- package/caps/providers/vercel.com/api.ts +132 -0
- package/caps/providers/vercel.com/bun.lock +194 -0
- package/caps/providers/vercel.com/package.json +10 -0
- package/caps/providers/vercel.com/project.test.ts +108 -0
- package/caps/providers/vercel.com/project.ts +150 -0
- package/caps/providers/vercel.com/tsconfig.json +28 -0
- package/docs/Overview.drawio +248 -0
- package/docs/Overview.svg +4 -0
- package/lib/crypto.ts +53 -0
- package/lib/key.ts +365 -0
- package/lib/schema-console-renderer.ts +181 -0
- package/lib/schema-resolver.ts +349 -0
- package/lib/ucan.ts +137 -0
- package/package.json +101 -0
- package/structs/HomeRegistry.ts +55 -0
- package/structs/HomeRegistryConfig.ts +56 -0
- package/structs/ProjectCatalogsConfig.ts +53 -0
- package/structs/ProjectDeploymentConfig.ts +56 -0
- package/structs/ProjectDeploymentFact.ts +106 -0
- package/structs/ProjectPublishingFact.ts +68 -0
- package/structs/ProjectRack.ts +51 -0
- package/structs/ProjectRackConfig.ts +56 -0
- package/structs/RepositoryOriginDescriptor.ts +51 -0
- package/structs/RootKeyConfig.ts +64 -0
- package/structs/SigningKeyConfig.ts +64 -0
- package/structs/Workspace.ts +56 -0
- package/structs/WorkspaceCatalogs.ts +56 -0
- package/structs/WorkspaceCliConfig.ts +53 -0
- package/structs/WorkspaceConfig.ts +64 -0
- package/structs/WorkspaceConfigFile.ts +50 -0
- package/structs/WorkspaceConfigFileMeta.ts +70 -0
- package/structs/WorkspaceKey.ts +55 -0
- package/structs/WorkspaceKeyConfig.ts +56 -0
- package/structs/WorkspaceMappingsConfig.ts +56 -0
- package/structs/WorkspaceProject.ts +104 -0
- package/structs/WorkspaceProjectsConfig.ts +67 -0
- package/structs/WorkspacePublishingConfig.ts +65 -0
- package/structs/WorkspaceShellConfig.ts +83 -0
- package/structs/providers/README.md +2 -0
- package/structs/providers/bunny.net/PullZoneFact.ts +55 -0
- package/structs/providers/bunny.net/PullZoneListFact.ts +55 -0
- package/structs/providers/bunny.net/StorageZoneFact.ts +55 -0
- package/structs/providers/bunny.net/StorageZoneListFact.ts +55 -0
- package/structs/providers/bunny.net/WorkspaceConnectionConfig.ts +43 -0
- package/structs/providers/dynadot.com/DomainFact.ts +46 -0
- package/structs/providers/dynadot.com/WorkspaceConnectionConfig.ts +54 -0
- package/structs/providers/git-scm.com/ProjectPublishingFact.ts +46 -0
- package/structs/providers/github.com/ProjectPublishingFact.ts +46 -0
- package/structs/providers/github.com/WorkspaceConnectionConfig.ts +43 -0
- package/structs/providers/npmjs.com/ProjectPublishingFact.ts +46 -0
- package/structs/providers/vercel.com/ProjectDeploymentFact.ts +55 -0
- package/structs/providers/vercel.com/WorkspaceConnectionConfig.ts +49 -0
- package/tests/01-Lifecycle/main.test.ts +173 -0
- package/tsconfig.json +28 -0
- package/workspace-rt.ts +134 -0
- package/workspace.yaml +3 -0
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
|
|
2
|
+
export async function capsule({
|
|
3
|
+
encapsulate,
|
|
4
|
+
CapsulePropertyTypes,
|
|
5
|
+
makeImportStack
|
|
6
|
+
}: any) {
|
|
7
|
+
return encapsulate({
|
|
8
|
+
'#@stream44.studio/encapsulate/spine-contracts/CapsuleSpineContract.v0': {
|
|
9
|
+
'#t44/caps/ConfigSchemaStruct': {
|
|
10
|
+
as: 'schema',
|
|
11
|
+
options: {
|
|
12
|
+
'#': {
|
|
13
|
+
schema: {
|
|
14
|
+
type: 'object',
|
|
15
|
+
properties: {
|
|
16
|
+
projects: {
|
|
17
|
+
type: 'object',
|
|
18
|
+
additionalProperties: {
|
|
19
|
+
type: 'object',
|
|
20
|
+
properties: {
|
|
21
|
+
sourceDir: {
|
|
22
|
+
type: 'string',
|
|
23
|
+
description: 'Absolute path to the project source directory.'
|
|
24
|
+
},
|
|
25
|
+
git: {
|
|
26
|
+
type: 'object',
|
|
27
|
+
additionalProperties: true,
|
|
28
|
+
description: 'Git repository metadata for the project.'
|
|
29
|
+
}
|
|
30
|
+
},
|
|
31
|
+
additionalProperties: true
|
|
32
|
+
},
|
|
33
|
+
description: 'Map of project names to their configurations.'
|
|
34
|
+
},
|
|
35
|
+
createdAt: {
|
|
36
|
+
type: 'string',
|
|
37
|
+
format: 'date-time',
|
|
38
|
+
description: 'ISO 8601 timestamp of when the entity config was created.'
|
|
39
|
+
},
|
|
40
|
+
updatedAt: {
|
|
41
|
+
type: 'string',
|
|
42
|
+
format: 'date-time',
|
|
43
|
+
description: 'ISO 8601 timestamp of when the entity config was last updated.'
|
|
44
|
+
}
|
|
45
|
+
},
|
|
46
|
+
required: ['createdAt', 'updatedAt'],
|
|
47
|
+
additionalProperties: false,
|
|
48
|
+
description: 'Workspace projects configuration with git metadata.'
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
},
|
|
53
|
+
'#': {
|
|
54
|
+
capsuleName: {
|
|
55
|
+
type: CapsulePropertyTypes.Literal,
|
|
56
|
+
value: capsule['#']
|
|
57
|
+
},
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
}, {
|
|
61
|
+
extendsCapsule: 't44/caps/WorkspaceEntityConfig',
|
|
62
|
+
importMeta: import.meta,
|
|
63
|
+
importStack: makeImportStack(),
|
|
64
|
+
capsuleName: capsule['#'],
|
|
65
|
+
})
|
|
66
|
+
}
|
|
67
|
+
capsule['#'] = 't44/structs/WorkspaceProjectsConfig'
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
|
|
2
|
+
export async function capsule({
|
|
3
|
+
encapsulate,
|
|
4
|
+
CapsulePropertyTypes,
|
|
5
|
+
makeImportStack
|
|
6
|
+
}: any) {
|
|
7
|
+
return encapsulate({
|
|
8
|
+
'#@stream44.studio/encapsulate/spine-contracts/CapsuleSpineContract.v0': {
|
|
9
|
+
'#t44/caps/ConfigSchemaStruct': {
|
|
10
|
+
as: 'schema',
|
|
11
|
+
options: {
|
|
12
|
+
'#': {
|
|
13
|
+
schema: {
|
|
14
|
+
type: 'object',
|
|
15
|
+
properties: {
|
|
16
|
+
repositories: {
|
|
17
|
+
type: 'object',
|
|
18
|
+
additionalProperties: {
|
|
19
|
+
type: 'object',
|
|
20
|
+
properties: {
|
|
21
|
+
sourceDir: {
|
|
22
|
+
type: 'string',
|
|
23
|
+
description: 'Path to the repository source directory.'
|
|
24
|
+
},
|
|
25
|
+
providers: {
|
|
26
|
+
description: 'List of publishing provider configurations.',
|
|
27
|
+
}
|
|
28
|
+
},
|
|
29
|
+
additionalProperties: true
|
|
30
|
+
},
|
|
31
|
+
description: 'Map of repository identifiers to their configurations.'
|
|
32
|
+
},
|
|
33
|
+
createdAt: {
|
|
34
|
+
type: 'string',
|
|
35
|
+
format: 'date-time',
|
|
36
|
+
description: 'ISO 8601 timestamp of when the entity config was created.'
|
|
37
|
+
},
|
|
38
|
+
updatedAt: {
|
|
39
|
+
type: 'string',
|
|
40
|
+
format: 'date-time',
|
|
41
|
+
description: 'ISO 8601 timestamp of when the entity config was last updated.'
|
|
42
|
+
}
|
|
43
|
+
},
|
|
44
|
+
required: ['createdAt', 'updatedAt'],
|
|
45
|
+
additionalProperties: false,
|
|
46
|
+
description: 'Workspace repository configurations for publishing providers.'
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
},
|
|
51
|
+
'#': {
|
|
52
|
+
capsuleName: {
|
|
53
|
+
type: CapsulePropertyTypes.Literal,
|
|
54
|
+
value: capsule['#']
|
|
55
|
+
},
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
}, {
|
|
59
|
+
extendsCapsule: 't44/caps/WorkspaceEntityConfig',
|
|
60
|
+
importMeta: import.meta,
|
|
61
|
+
importStack: makeImportStack(),
|
|
62
|
+
capsuleName: capsule['#'],
|
|
63
|
+
})
|
|
64
|
+
}
|
|
65
|
+
capsule['#'] = 't44/structs/WorkspacePublishingConfig'
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
|
|
2
|
+
export async function capsule({
|
|
3
|
+
encapsulate,
|
|
4
|
+
CapsulePropertyTypes,
|
|
5
|
+
makeImportStack
|
|
6
|
+
}: any) {
|
|
7
|
+
return encapsulate({
|
|
8
|
+
'#@stream44.studio/encapsulate/spine-contracts/CapsuleSpineContract.v0': {
|
|
9
|
+
'#t44/caps/ConfigSchemaStruct': {
|
|
10
|
+
as: 'schema',
|
|
11
|
+
options: {
|
|
12
|
+
'#': {
|
|
13
|
+
schema: {
|
|
14
|
+
type: 'object',
|
|
15
|
+
properties: {
|
|
16
|
+
env: {
|
|
17
|
+
type: 'object',
|
|
18
|
+
properties: {
|
|
19
|
+
default: {
|
|
20
|
+
type: 'object',
|
|
21
|
+
additionalProperties: { type: 'string' },
|
|
22
|
+
description: 'Default environment variables.'
|
|
23
|
+
},
|
|
24
|
+
force: {
|
|
25
|
+
type: 'object',
|
|
26
|
+
additionalProperties: { type: 'string' },
|
|
27
|
+
description: 'Forced environment variables that override defaults.'
|
|
28
|
+
}
|
|
29
|
+
},
|
|
30
|
+
additionalProperties: true,
|
|
31
|
+
description: 'Shell environment variable configuration.'
|
|
32
|
+
},
|
|
33
|
+
createdAt: {
|
|
34
|
+
type: 'string',
|
|
35
|
+
format: 'date-time',
|
|
36
|
+
description: 'ISO 8601 timestamp of when the entity config was created.'
|
|
37
|
+
},
|
|
38
|
+
updatedAt: {
|
|
39
|
+
type: 'string',
|
|
40
|
+
format: 'date-time',
|
|
41
|
+
description: 'ISO 8601 timestamp of when the entity config was last updated.'
|
|
42
|
+
}
|
|
43
|
+
},
|
|
44
|
+
required: ['createdAt', 'updatedAt'],
|
|
45
|
+
additionalProperties: true,
|
|
46
|
+
description: 'Workspace shell configuration with environment variables.'
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
},
|
|
51
|
+
'#': {
|
|
52
|
+
capsuleName: {
|
|
53
|
+
type: CapsulePropertyTypes.Literal,
|
|
54
|
+
value: capsule['#']
|
|
55
|
+
},
|
|
56
|
+
env: {
|
|
57
|
+
type: CapsulePropertyTypes.GetterFunction,
|
|
58
|
+
value: async function (this: any): Promise<object> {
|
|
59
|
+
const shellConfig = await this.config
|
|
60
|
+
|
|
61
|
+
if (!shellConfig?.env) {
|
|
62
|
+
return {}
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
const defaultEnv = shellConfig.env.default || {}
|
|
66
|
+
const forceEnv = shellConfig.env.force || {}
|
|
67
|
+
|
|
68
|
+
return {
|
|
69
|
+
...defaultEnv,
|
|
70
|
+
...forceEnv
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
},
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
}, {
|
|
77
|
+
extendsCapsule: 't44/caps/WorkspaceEntityConfig',
|
|
78
|
+
importMeta: import.meta,
|
|
79
|
+
importStack: makeImportStack(),
|
|
80
|
+
capsuleName: capsule['#'],
|
|
81
|
+
})
|
|
82
|
+
}
|
|
83
|
+
capsule['#'] = 't44/structs/WorkspaceShellConfig'
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
|
|
2
|
+
export async function capsule({
|
|
3
|
+
encapsulate,
|
|
4
|
+
CapsulePropertyTypes,
|
|
5
|
+
makeImportStack
|
|
6
|
+
}: any) {
|
|
7
|
+
return encapsulate({
|
|
8
|
+
'#@stream44.studio/encapsulate/spine-contracts/CapsuleSpineContract.v0': {
|
|
9
|
+
'#t44/caps/ConfigSchemaStruct': {
|
|
10
|
+
as: 'schema',
|
|
11
|
+
options: {
|
|
12
|
+
'#': {
|
|
13
|
+
schema: {
|
|
14
|
+
type: 'object',
|
|
15
|
+
properties: {
|
|
16
|
+
createdAt: {
|
|
17
|
+
type: 'string',
|
|
18
|
+
format: 'date-time',
|
|
19
|
+
description: 'ISO 8601 timestamp when the pull zone fact was created'
|
|
20
|
+
},
|
|
21
|
+
updatedAt: {
|
|
22
|
+
type: 'string',
|
|
23
|
+
format: 'date-time',
|
|
24
|
+
description: 'ISO 8601 timestamp when the pull zone fact was last updated'
|
|
25
|
+
}
|
|
26
|
+
},
|
|
27
|
+
additionalProperties: true
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
},
|
|
32
|
+
'#t44/caps/OpenApiSchema': {
|
|
33
|
+
as: 'schemaOpenApi',
|
|
34
|
+
options: {
|
|
35
|
+
'#': {
|
|
36
|
+
url: 'https://core-api-public-docs.b-cdn.net/docs/v3/public.json',
|
|
37
|
+
def: '#/components/schemas/PullZoneModel'
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
},
|
|
41
|
+
'#': {
|
|
42
|
+
capsuleName: {
|
|
43
|
+
type: CapsulePropertyTypes.Literal,
|
|
44
|
+
value: capsule['#']
|
|
45
|
+
},
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
}, {
|
|
49
|
+
extendsCapsule: 't44/caps/WorkspaceEntityFact',
|
|
50
|
+
importMeta: import.meta,
|
|
51
|
+
importStack: makeImportStack(),
|
|
52
|
+
capsuleName: capsule['#'],
|
|
53
|
+
})
|
|
54
|
+
}
|
|
55
|
+
capsule['#'] = 't44/structs/providers/bunny.net/PullZoneFact'
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
|
|
2
|
+
export async function capsule({
|
|
3
|
+
encapsulate,
|
|
4
|
+
CapsulePropertyTypes,
|
|
5
|
+
makeImportStack
|
|
6
|
+
}: any) {
|
|
7
|
+
return encapsulate({
|
|
8
|
+
'#@stream44.studio/encapsulate/spine-contracts/CapsuleSpineContract.v0': {
|
|
9
|
+
'#t44/caps/ConfigSchemaStruct': {
|
|
10
|
+
as: 'schema',
|
|
11
|
+
options: {
|
|
12
|
+
'#': {
|
|
13
|
+
schema: {
|
|
14
|
+
type: 'object',
|
|
15
|
+
properties: {
|
|
16
|
+
createdAt: {
|
|
17
|
+
type: 'string',
|
|
18
|
+
format: 'date-time',
|
|
19
|
+
description: 'ISO 8601 timestamp when the pull zone list fact was created'
|
|
20
|
+
},
|
|
21
|
+
updatedAt: {
|
|
22
|
+
type: 'string',
|
|
23
|
+
format: 'date-time',
|
|
24
|
+
description: 'ISO 8601 timestamp when the pull zone list fact was last updated'
|
|
25
|
+
}
|
|
26
|
+
},
|
|
27
|
+
additionalProperties: true
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
},
|
|
32
|
+
'#t44/caps/OpenApiSchema': {
|
|
33
|
+
as: 'schemaOpenApi',
|
|
34
|
+
options: {
|
|
35
|
+
'#': {
|
|
36
|
+
url: 'https://core-api-public-docs.b-cdn.net/docs/v3/public.json',
|
|
37
|
+
def: '#/components/schemas/PaginationListModelOfPullZoneModel'
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
},
|
|
41
|
+
'#': {
|
|
42
|
+
capsuleName: {
|
|
43
|
+
type: CapsulePropertyTypes.Literal,
|
|
44
|
+
value: capsule['#']
|
|
45
|
+
},
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
}, {
|
|
49
|
+
extendsCapsule: 't44/caps/WorkspaceEntityFact',
|
|
50
|
+
importMeta: import.meta,
|
|
51
|
+
importStack: makeImportStack(),
|
|
52
|
+
capsuleName: capsule['#'],
|
|
53
|
+
})
|
|
54
|
+
}
|
|
55
|
+
capsule['#'] = 't44/structs/providers/bunny.net/PullZoneListFact'
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
|
|
2
|
+
export async function capsule({
|
|
3
|
+
encapsulate,
|
|
4
|
+
CapsulePropertyTypes,
|
|
5
|
+
makeImportStack
|
|
6
|
+
}: any) {
|
|
7
|
+
return encapsulate({
|
|
8
|
+
'#@stream44.studio/encapsulate/spine-contracts/CapsuleSpineContract.v0': {
|
|
9
|
+
'#t44/caps/ConfigSchemaStruct': {
|
|
10
|
+
as: 'schema',
|
|
11
|
+
options: {
|
|
12
|
+
'#': {
|
|
13
|
+
schema: {
|
|
14
|
+
type: 'object',
|
|
15
|
+
properties: {
|
|
16
|
+
createdAt: {
|
|
17
|
+
type: 'string',
|
|
18
|
+
format: 'date-time',
|
|
19
|
+
description: 'ISO 8601 timestamp when the storage zone fact was created'
|
|
20
|
+
},
|
|
21
|
+
updatedAt: {
|
|
22
|
+
type: 'string',
|
|
23
|
+
format: 'date-time',
|
|
24
|
+
description: 'ISO 8601 timestamp when the storage zone fact was last updated'
|
|
25
|
+
}
|
|
26
|
+
},
|
|
27
|
+
additionalProperties: true
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
},
|
|
32
|
+
'#t44/caps/OpenApiSchema': {
|
|
33
|
+
as: 'schemaOpenApi',
|
|
34
|
+
options: {
|
|
35
|
+
'#': {
|
|
36
|
+
url: 'https://core-api-public-docs.b-cdn.net/docs/v3/public.json',
|
|
37
|
+
def: '#/components/schemas/StorageZoneModel'
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
},
|
|
41
|
+
'#': {
|
|
42
|
+
capsuleName: {
|
|
43
|
+
type: CapsulePropertyTypes.Literal,
|
|
44
|
+
value: capsule['#']
|
|
45
|
+
},
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
}, {
|
|
49
|
+
extendsCapsule: 't44/caps/WorkspaceEntityFact',
|
|
50
|
+
importMeta: import.meta,
|
|
51
|
+
importStack: makeImportStack(),
|
|
52
|
+
capsuleName: capsule['#'],
|
|
53
|
+
})
|
|
54
|
+
}
|
|
55
|
+
capsule['#'] = 't44/structs/providers/bunny.net/StorageZoneFact'
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
|
|
2
|
+
export async function capsule({
|
|
3
|
+
encapsulate,
|
|
4
|
+
CapsulePropertyTypes,
|
|
5
|
+
makeImportStack
|
|
6
|
+
}: any) {
|
|
7
|
+
return encapsulate({
|
|
8
|
+
'#@stream44.studio/encapsulate/spine-contracts/CapsuleSpineContract.v0': {
|
|
9
|
+
'#t44/caps/ConfigSchemaStruct': {
|
|
10
|
+
as: 'schema',
|
|
11
|
+
options: {
|
|
12
|
+
'#': {
|
|
13
|
+
schema: {
|
|
14
|
+
type: 'object',
|
|
15
|
+
properties: {
|
|
16
|
+
createdAt: {
|
|
17
|
+
type: 'string',
|
|
18
|
+
format: 'date-time',
|
|
19
|
+
description: 'ISO 8601 timestamp when the storage zone list fact was created'
|
|
20
|
+
},
|
|
21
|
+
updatedAt: {
|
|
22
|
+
type: 'string',
|
|
23
|
+
format: 'date-time',
|
|
24
|
+
description: 'ISO 8601 timestamp when the storage zone list fact was last updated'
|
|
25
|
+
}
|
|
26
|
+
},
|
|
27
|
+
additionalProperties: true
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
},
|
|
32
|
+
'#t44/caps/OpenApiSchema': {
|
|
33
|
+
as: 'schemaOpenApi',
|
|
34
|
+
options: {
|
|
35
|
+
'#': {
|
|
36
|
+
url: 'https://core-api-public-docs.b-cdn.net/docs/v3/public.json',
|
|
37
|
+
def: '#/components/schemas/StorageZoneModel'
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
},
|
|
41
|
+
'#': {
|
|
42
|
+
capsuleName: {
|
|
43
|
+
type: CapsulePropertyTypes.Literal,
|
|
44
|
+
value: capsule['#']
|
|
45
|
+
},
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
}, {
|
|
49
|
+
extendsCapsule: 't44/caps/WorkspaceEntityFact',
|
|
50
|
+
importMeta: import.meta,
|
|
51
|
+
importStack: makeImportStack(),
|
|
52
|
+
capsuleName: capsule['#'],
|
|
53
|
+
})
|
|
54
|
+
}
|
|
55
|
+
capsule['#'] = 't44/structs/providers/bunny.net/StorageZoneListFact'
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
|
|
2
|
+
export async function capsule({
|
|
3
|
+
encapsulate,
|
|
4
|
+
CapsulePropertyTypes,
|
|
5
|
+
makeImportStack
|
|
6
|
+
}: any) {
|
|
7
|
+
return encapsulate({
|
|
8
|
+
'#@stream44.studio/encapsulate/spine-contracts/CapsuleSpineContract.v0': {
|
|
9
|
+
'#t44/caps/ConfigSchemaStruct': {
|
|
10
|
+
as: 'schema',
|
|
11
|
+
options: {
|
|
12
|
+
'#': {
|
|
13
|
+
schema: {
|
|
14
|
+
type: 'object',
|
|
15
|
+
properties: {
|
|
16
|
+
apiKey: {
|
|
17
|
+
type: 'string',
|
|
18
|
+
title: 'Bunny.net API Key',
|
|
19
|
+
description: 'Your Bunny.net API key from https://dash.bunny.net/account/settings',
|
|
20
|
+
minLength: 30,
|
|
21
|
+
pattern: '^[a-f0-9-]+$'
|
|
22
|
+
}
|
|
23
|
+
},
|
|
24
|
+
required: ['apiKey']
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
},
|
|
29
|
+
'#': {
|
|
30
|
+
capsuleName: {
|
|
31
|
+
type: CapsulePropertyTypes.Literal,
|
|
32
|
+
value: capsule['#']
|
|
33
|
+
},
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
}, {
|
|
37
|
+
extendsCapsule: 't44/caps/WorkspaceConnection',
|
|
38
|
+
importMeta: import.meta,
|
|
39
|
+
importStack: makeImportStack(),
|
|
40
|
+
capsuleName: capsule['#'],
|
|
41
|
+
})
|
|
42
|
+
}
|
|
43
|
+
capsule['#'] = 't44/structs/providers/bunny.net/WorkspaceConnectionConfig'
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
|
|
2
|
+
export async function capsule({
|
|
3
|
+
encapsulate,
|
|
4
|
+
CapsulePropertyTypes,
|
|
5
|
+
makeImportStack
|
|
6
|
+
}: any) {
|
|
7
|
+
return encapsulate({
|
|
8
|
+
'#@stream44.studio/encapsulate/spine-contracts/CapsuleSpineContract.v0': {
|
|
9
|
+
'#t44/caps/ConfigSchemaStruct': {
|
|
10
|
+
as: 'schema',
|
|
11
|
+
options: {
|
|
12
|
+
'#': {
|
|
13
|
+
schema: {
|
|
14
|
+
type: 'object',
|
|
15
|
+
properties: {
|
|
16
|
+
createdAt: {
|
|
17
|
+
type: 'string',
|
|
18
|
+
format: 'date-time',
|
|
19
|
+
description: 'ISO 8601 timestamp when the domain fact was created'
|
|
20
|
+
},
|
|
21
|
+
updatedAt: {
|
|
22
|
+
type: 'string',
|
|
23
|
+
format: 'date-time',
|
|
24
|
+
description: 'ISO 8601 timestamp when the domain fact was last updated'
|
|
25
|
+
}
|
|
26
|
+
},
|
|
27
|
+
additionalProperties: true
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
},
|
|
32
|
+
'#': {
|
|
33
|
+
capsuleName: {
|
|
34
|
+
type: CapsulePropertyTypes.Literal,
|
|
35
|
+
value: capsule['#']
|
|
36
|
+
},
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
}, {
|
|
40
|
+
extendsCapsule: 't44/caps/WorkspaceEntityFact',
|
|
41
|
+
importMeta: import.meta,
|
|
42
|
+
importStack: makeImportStack(),
|
|
43
|
+
capsuleName: capsule['#'],
|
|
44
|
+
})
|
|
45
|
+
}
|
|
46
|
+
capsule['#'] = 't44/structs/providers/dynadot.com/DomainFact'
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
|
|
2
|
+
export async function capsule({
|
|
3
|
+
encapsulate,
|
|
4
|
+
CapsulePropertyTypes,
|
|
5
|
+
makeImportStack
|
|
6
|
+
}: any) {
|
|
7
|
+
return encapsulate({
|
|
8
|
+
'#@stream44.studio/encapsulate/spine-contracts/CapsuleSpineContract.v0': {
|
|
9
|
+
'#t44/caps/ConfigSchemaStruct': {
|
|
10
|
+
as: 'schema',
|
|
11
|
+
options: {
|
|
12
|
+
'#': {
|
|
13
|
+
schema: {
|
|
14
|
+
type: 'object',
|
|
15
|
+
properties: {
|
|
16
|
+
apiKey: {
|
|
17
|
+
type: 'string',
|
|
18
|
+
title: 'Dynadot API Key',
|
|
19
|
+
description: 'Your Dynadot API key. Generate at https://www.dynadot.com/account/domain/setting/api.html',
|
|
20
|
+
minLength: 10
|
|
21
|
+
},
|
|
22
|
+
apiSecret: {
|
|
23
|
+
type: 'string',
|
|
24
|
+
title: 'Dynadot API Secret',
|
|
25
|
+
description: 'Your Dynadot API secret for REST API HMAC-SHA256 signing.',
|
|
26
|
+
minLength: 10
|
|
27
|
+
},
|
|
28
|
+
apiKeyTransactionSecret: {
|
|
29
|
+
type: 'string',
|
|
30
|
+
title: 'Dynadot API Key Transaction Secret',
|
|
31
|
+
description: 'Your Dynadot API key transaction secret (optional, for transactional endpoints).',
|
|
32
|
+
minLength: 10
|
|
33
|
+
}
|
|
34
|
+
},
|
|
35
|
+
required: ['apiKey', 'apiSecret']
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
},
|
|
40
|
+
'#': {
|
|
41
|
+
capsuleName: {
|
|
42
|
+
type: CapsulePropertyTypes.Literal,
|
|
43
|
+
value: capsule['#']
|
|
44
|
+
},
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
}, {
|
|
48
|
+
extendsCapsule: 't44/caps/WorkspaceConnection',
|
|
49
|
+
importMeta: import.meta,
|
|
50
|
+
importStack: makeImportStack(),
|
|
51
|
+
capsuleName: capsule['#'],
|
|
52
|
+
})
|
|
53
|
+
}
|
|
54
|
+
capsule['#'] = 't44/structs/providers/dynadot.com/WorkspaceConnectionConfig'
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
|
|
2
|
+
export async function capsule({
|
|
3
|
+
encapsulate,
|
|
4
|
+
CapsulePropertyTypes,
|
|
5
|
+
makeImportStack
|
|
6
|
+
}: any) {
|
|
7
|
+
return encapsulate({
|
|
8
|
+
'#@stream44.studio/encapsulate/spine-contracts/CapsuleSpineContract.v0': {
|
|
9
|
+
'#t44/caps/ConfigSchemaStruct': {
|
|
10
|
+
as: 'schema',
|
|
11
|
+
options: {
|
|
12
|
+
'#': {
|
|
13
|
+
schema: {
|
|
14
|
+
type: 'object',
|
|
15
|
+
properties: {
|
|
16
|
+
createdAt: {
|
|
17
|
+
type: 'string',
|
|
18
|
+
format: 'date-time',
|
|
19
|
+
description: 'ISO 8601 timestamp when the project publishing fact was created'
|
|
20
|
+
},
|
|
21
|
+
updatedAt: {
|
|
22
|
+
type: 'string',
|
|
23
|
+
format: 'date-time',
|
|
24
|
+
description: 'ISO 8601 timestamp when the project publishing fact was last updated'
|
|
25
|
+
}
|
|
26
|
+
},
|
|
27
|
+
additionalProperties: true
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
},
|
|
32
|
+
'#': {
|
|
33
|
+
capsuleName: {
|
|
34
|
+
type: CapsulePropertyTypes.Literal,
|
|
35
|
+
value: capsule['#']
|
|
36
|
+
},
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
}, {
|
|
40
|
+
extendsCapsule: 't44/caps/WorkspaceEntityFact',
|
|
41
|
+
importMeta: import.meta,
|
|
42
|
+
importStack: makeImportStack(),
|
|
43
|
+
capsuleName: capsule['#'],
|
|
44
|
+
})
|
|
45
|
+
}
|
|
46
|
+
capsule['#'] = 't44/structs/providers/git-scm.com/ProjectPublishingFact'
|