t44 0.4.0-rc.10

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.
Files changed (127) hide show
  1. package/.dco-signatures +9 -0
  2. package/.github/workflows/dco.yaml +12 -0
  3. package/.github/workflows/gordian-open-integrity.yaml +13 -0
  4. package/.o/GordianOpenIntegrity-CurrentLifehash.svg +1026 -0
  5. package/.o/GordianOpenIntegrity-InceptionLifehash.svg +1026 -0
  6. package/.o/GordianOpenIntegrity.yaml +25 -0
  7. package/.o/assets/Hero-Terminal44-v0.jpeg +0 -0
  8. package/DCO.md +34 -0
  9. package/LICENSE.md +203 -0
  10. package/README.md +185 -0
  11. package/bin/activate +36 -0
  12. package/bin/activate.ts +30 -0
  13. package/bin/postinstall.sh +19 -0
  14. package/bin/shell +27 -0
  15. package/bin/t44 +27 -0
  16. package/caps/ConfigSchemaStruct.ts +55 -0
  17. package/caps/Home.ts +57 -0
  18. package/caps/HomeRegistry.ts +319 -0
  19. package/caps/HomeRegistryFile.ts +144 -0
  20. package/caps/JsonSchemas.ts +220 -0
  21. package/caps/OpenApiSchema.ts +67 -0
  22. package/caps/PackageDescriptor.ts +88 -0
  23. package/caps/ProjectCatalogs.ts +153 -0
  24. package/caps/ProjectDeployment.ts +363 -0
  25. package/caps/ProjectDevelopment.ts +257 -0
  26. package/caps/ProjectPublishing.ts +522 -0
  27. package/caps/ProjectRack.ts +155 -0
  28. package/caps/ProjectRepository.ts +322 -0
  29. package/caps/RootKey.ts +219 -0
  30. package/caps/SigningKey.ts +243 -0
  31. package/caps/WorkspaceCli.ts +442 -0
  32. package/caps/WorkspaceConfig.ts +268 -0
  33. package/caps/WorkspaceConfig.yaml +71 -0
  34. package/caps/WorkspaceConfigFile.ts +807 -0
  35. package/caps/WorkspaceConnection.ts +256 -0
  36. package/caps/WorkspaceEntityConfig.ts +78 -0
  37. package/caps/WorkspaceEntityConfig.v0.ts +77 -0
  38. package/caps/WorkspaceEntityFact.ts +218 -0
  39. package/caps/WorkspaceInfo.ts +595 -0
  40. package/caps/WorkspaceInit.ts +30 -0
  41. package/caps/WorkspaceKey.ts +338 -0
  42. package/caps/WorkspaceModel.ts +373 -0
  43. package/caps/WorkspaceProjects.ts +636 -0
  44. package/caps/WorkspacePrompt.ts +406 -0
  45. package/caps/WorkspaceShell.sh +39 -0
  46. package/caps/WorkspaceShell.ts +104 -0
  47. package/caps/WorkspaceShell.yaml +64 -0
  48. package/caps/WorkspaceShellCli.ts +109 -0
  49. package/caps/WorkspaceTest.ts +167 -0
  50. package/caps/providers/README.md +2 -0
  51. package/caps/providers/bunny.net/ProjectDeployment.ts +327 -0
  52. package/caps/providers/bunny.net/api-pull.test.ts +319 -0
  53. package/caps/providers/bunny.net/api-pull.ts +164 -0
  54. package/caps/providers/bunny.net/api-storage.test.ts +168 -0
  55. package/caps/providers/bunny.net/api-storage.ts +248 -0
  56. package/caps/providers/bunny.net/api.ts +95 -0
  57. package/caps/providers/dynadot.com/ProjectDeployment.ts +202 -0
  58. package/caps/providers/dynadot.com/api-domains.test.ts +224 -0
  59. package/caps/providers/dynadot.com/api-domains.ts +169 -0
  60. package/caps/providers/dynadot.com/api-restful-v1.test.ts +190 -0
  61. package/caps/providers/dynadot.com/api-restful-v1.ts +94 -0
  62. package/caps/providers/dynadot.com/api-restful-v2.test.ts +200 -0
  63. package/caps/providers/dynadot.com/api-restful-v2.ts +94 -0
  64. package/caps/providers/git-scm.com/ProjectPublishing.ts +654 -0
  65. package/caps/providers/github.com/ProjectPublishing.ts +133 -0
  66. package/caps/providers/github.com/api.ts +130 -0
  67. package/caps/providers/npmjs.com/ProjectPublishing.ts +536 -0
  68. package/caps/providers/semver.org/ProjectPublishing.ts +286 -0
  69. package/caps/providers/vercel.com/ProjectDeployment.ts +326 -0
  70. package/caps/providers/vercel.com/api.test.ts +67 -0
  71. package/caps/providers/vercel.com/api.ts +132 -0
  72. package/caps/providers/vercel.com/bun.lock +194 -0
  73. package/caps/providers/vercel.com/package.json +10 -0
  74. package/caps/providers/vercel.com/project.test.ts +108 -0
  75. package/caps/providers/vercel.com/project.ts +150 -0
  76. package/caps/providers/vercel.com/tsconfig.json +28 -0
  77. package/docs/Overview.drawio +248 -0
  78. package/docs/Overview.svg +4 -0
  79. package/examples/01-Lifecycle/main.test.ts +228 -0
  80. package/lib/crypto.ts +53 -0
  81. package/lib/key.ts +369 -0
  82. package/lib/schema-console-renderer.ts +181 -0
  83. package/lib/schema-resolver.ts +349 -0
  84. package/lib/ucan.ts +137 -0
  85. package/package.json +102 -0
  86. package/standalone-rt.ts +121 -0
  87. package/structs/HomeRegistry.ts +55 -0
  88. package/structs/HomeRegistryConfig.ts +60 -0
  89. package/structs/ProjectCatalogsConfig.ts +53 -0
  90. package/structs/ProjectDeploymentConfig.ts +56 -0
  91. package/structs/ProjectDeploymentFact.ts +106 -0
  92. package/structs/ProjectPublishingFact.ts +68 -0
  93. package/structs/ProjectRack.ts +51 -0
  94. package/structs/ProjectRackConfig.ts +56 -0
  95. package/structs/RepositoryOriginDescriptor.ts +51 -0
  96. package/structs/RootKeyConfig.ts +64 -0
  97. package/structs/SigningKeyConfig.ts +64 -0
  98. package/structs/Workspace.ts +56 -0
  99. package/structs/WorkspaceCatalogs.ts +56 -0
  100. package/structs/WorkspaceCliConfig.ts +53 -0
  101. package/structs/WorkspaceConfig.ts +64 -0
  102. package/structs/WorkspaceConfigFile.ts +50 -0
  103. package/structs/WorkspaceConfigFileMeta.ts +70 -0
  104. package/structs/WorkspaceKey.ts +55 -0
  105. package/structs/WorkspaceKeyConfig.ts +56 -0
  106. package/structs/WorkspaceMappingsConfig.ts +56 -0
  107. package/structs/WorkspaceProject.ts +104 -0
  108. package/structs/WorkspaceProjectsConfig.ts +67 -0
  109. package/structs/WorkspacePublishingConfig.ts +65 -0
  110. package/structs/WorkspaceShellConfig.ts +83 -0
  111. package/structs/providers/README.md +2 -0
  112. package/structs/providers/bunny.net/PullZoneFact.ts +55 -0
  113. package/structs/providers/bunny.net/PullZoneListFact.ts +55 -0
  114. package/structs/providers/bunny.net/StorageZoneFact.ts +55 -0
  115. package/structs/providers/bunny.net/StorageZoneListFact.ts +55 -0
  116. package/structs/providers/bunny.net/WorkspaceConnectionConfig.ts +43 -0
  117. package/structs/providers/dynadot.com/DomainFact.ts +46 -0
  118. package/structs/providers/dynadot.com/WorkspaceConnectionConfig.ts +54 -0
  119. package/structs/providers/git-scm.com/ProjectPublishingFact.ts +46 -0
  120. package/structs/providers/github.com/ProjectPublishingFact.ts +46 -0
  121. package/structs/providers/github.com/WorkspaceConnectionConfig.ts +43 -0
  122. package/structs/providers/npmjs.com/ProjectPublishingFact.ts +46 -0
  123. package/structs/providers/vercel.com/ProjectDeploymentFact.ts +55 -0
  124. package/structs/providers/vercel.com/WorkspaceConnectionConfig.ts +49 -0
  125. package/tsconfig.json +28 -0
  126. package/workspace-rt.ts +134 -0
  127. package/workspace.yaml +3 -0
@@ -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
+ did: {
17
+ type: 'string',
18
+ description: 'The DID (Decentralized Identifier) of the workspace key.'
19
+ },
20
+ encryptedPrivateKey: {
21
+ type: 'string',
22
+ description: 'The private key encrypted with a passphrase derived from the root key.'
23
+ },
24
+ privateKey: {
25
+ type: 'string',
26
+ description: 'Legacy unencrypted private key. Migrated to encryptedPrivateKey on first access.'
27
+ },
28
+ createdAt: {
29
+ type: 'string',
30
+ format: 'date-time',
31
+ description: 'ISO 8601 timestamp of when the workspace key was created.'
32
+ }
33
+ },
34
+ required: ['did', 'createdAt'],
35
+ additionalProperties: false,
36
+ description: 'A workspace signing key identity.'
37
+ }
38
+ }
39
+ }
40
+ },
41
+ '#': {
42
+ capsuleName: {
43
+ type: CapsulePropertyTypes.Literal,
44
+ value: capsule['#']
45
+ },
46
+ }
47
+ }
48
+ }, {
49
+ extendsCapsule: 't44/caps/HomeRegistryFile',
50
+ importMeta: import.meta,
51
+ importStack: makeImportStack(),
52
+ capsuleName: capsule['#'],
53
+ })
54
+ }
55
+ capsule['#'] = 't44/structs/WorkspaceKey'
@@ -0,0 +1,56 @@
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
+ name: {
17
+ type: 'string',
18
+ description: 'Name of the workspace key.'
19
+ },
20
+ identifier: {
21
+ type: 'string',
22
+ description: 'DID (Decentralized Identifier) of the workspace key.'
23
+ },
24
+ createdAt: {
25
+ type: 'string',
26
+ format: 'date-time',
27
+ description: 'ISO 8601 timestamp of when the entity config was created.'
28
+ },
29
+ updatedAt: {
30
+ type: 'string',
31
+ format: 'date-time',
32
+ description: 'ISO 8601 timestamp of when the entity config was last updated.'
33
+ }
34
+ },
35
+ required: ['createdAt', 'updatedAt'],
36
+ additionalProperties: false,
37
+ description: 'Workspace key identity configuration.'
38
+ }
39
+ }
40
+ }
41
+ },
42
+ '#': {
43
+ capsuleName: {
44
+ type: CapsulePropertyTypes.Literal,
45
+ value: capsule['#']
46
+ },
47
+ }
48
+ }
49
+ }, {
50
+ extendsCapsule: 't44/caps/WorkspaceEntityConfig',
51
+ importMeta: import.meta,
52
+ importStack: makeImportStack(),
53
+ capsuleName: capsule['#'],
54
+ })
55
+ }
56
+ capsule['#'] = 't44/structs/WorkspaceKeyConfig'
@@ -0,0 +1,56 @@
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
+ mappings: {
17
+ type: 'object',
18
+ additionalProperties: {
19
+ type: 'object',
20
+ additionalProperties: true
21
+ },
22
+ description: 'Map of capsule names to their provider-specific mappings.'
23
+ },
24
+ createdAt: {
25
+ type: 'string',
26
+ format: 'date-time',
27
+ description: 'ISO 8601 timestamp of when the entity config was created.'
28
+ },
29
+ updatedAt: {
30
+ type: 'string',
31
+ format: 'date-time',
32
+ description: 'ISO 8601 timestamp of when the entity config was last updated.'
33
+ }
34
+ },
35
+ required: ['createdAt', 'updatedAt'],
36
+ additionalProperties: false,
37
+ description: 'Workspace mappings configuration for provider-specific name resolution.'
38
+ }
39
+ }
40
+ }
41
+ },
42
+ '#': {
43
+ capsuleName: {
44
+ type: CapsulePropertyTypes.Literal,
45
+ value: capsule['#']
46
+ },
47
+ }
48
+ }
49
+ }, {
50
+ extendsCapsule: 't44/caps/WorkspaceEntityConfig',
51
+ importMeta: import.meta,
52
+ importStack: makeImportStack(),
53
+ capsuleName: capsule['#'],
54
+ })
55
+ }
56
+ capsule['#'] = 't44/structs/WorkspaceMappingsConfig'
@@ -0,0 +1,104 @@
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
+ name: {
17
+ type: 'string',
18
+ description: 'Project name (directory name in workspace).'
19
+ },
20
+ sourceDir: {
21
+ type: 'string',
22
+ description: 'Absolute path to the project source directory.'
23
+ },
24
+ git: {
25
+ oneOf: [
26
+ {
27
+ type: 'object',
28
+ properties: {
29
+ firstCommitHash: {
30
+ type: 'string',
31
+ description: 'Hash of the first commit in the repository.'
32
+ },
33
+ createdAt: {
34
+ type: 'string',
35
+ description: 'Date of the first commit.'
36
+ },
37
+ firstCommitAuthor: {
38
+ type: 'object',
39
+ properties: {
40
+ name: { type: 'string' },
41
+ email: { type: 'string' }
42
+ },
43
+ description: 'Author of the first commit.'
44
+ },
45
+ remotes: {
46
+ type: 'object',
47
+ additionalProperties: { type: 'string' },
48
+ description: 'Map of remote names to URLs.'
49
+ }
50
+ },
51
+ additionalProperties: true,
52
+ description: 'Git repository metadata.'
53
+ },
54
+ {
55
+ type: 'boolean',
56
+ const: false,
57
+ description: 'false if not a git repository.'
58
+ }
59
+ ]
60
+ },
61
+ deployments: {
62
+ type: 'object',
63
+ additionalProperties: {
64
+ type: 'object',
65
+ additionalProperties: true
66
+ },
67
+ description: 'Deployment configurations mapped to this project.'
68
+ },
69
+ repositories: {
70
+ type: 'object',
71
+ additionalProperties: {
72
+ type: 'object',
73
+ additionalProperties: true
74
+ },
75
+ description: 'Repository configurations mapped to this project.'
76
+ },
77
+ updatedAt: {
78
+ type: 'string',
79
+ format: 'date-time',
80
+ description: 'ISO 8601 timestamp of when this project data was last updated.'
81
+ }
82
+ },
83
+ required: ['name', 'sourceDir'],
84
+ additionalProperties: true,
85
+ description: 'Cached workspace project data with enriched metadata from git, deployments, and repositories.'
86
+ }
87
+ }
88
+ }
89
+ },
90
+ '#': {
91
+ capsuleName: {
92
+ type: CapsulePropertyTypes.Literal,
93
+ value: capsule['#']
94
+ },
95
+ }
96
+ }
97
+ }, {
98
+ extendsCapsule: 't44/caps/WorkspaceEntityFact',
99
+ importMeta: import.meta,
100
+ importStack: makeImportStack(),
101
+ capsuleName: capsule['#'],
102
+ })
103
+ }
104
+ capsule['#'] = 't44/structs/WorkspaceProject'
@@ -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,2 @@
1
+
2
+ **NOTE: Code in this directory will be relocated to a different project in future.**
@@ -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'