@layerzerolabs/dw-model 0.2.67 → 0.2.69

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 (62) hide show
  1. package/dist/372UIOTW.js +107 -0
  2. package/dist/372UIOTW.js.map +1 -0
  3. package/dist/{2XSWEWFA.cjs → FOB7D4D6.cjs} +15 -83
  4. package/dist/FOB7D4D6.cjs.map +1 -0
  5. package/dist/{MHBV7XHL.js → G43GXBX5.js} +2 -4
  6. package/dist/G43GXBX5.js.map +1 -0
  7. package/dist/GLPJHNSD.js +25 -0
  8. package/dist/GLPJHNSD.js.map +1 -0
  9. package/dist/{NJ2LWIGZ.cjs → HCK5GXNH.cjs} +2 -4
  10. package/dist/HCK5GXNH.cjs.map +1 -0
  11. package/dist/MR335VWI.cjs +29 -0
  12. package/dist/MR335VWI.cjs.map +1 -0
  13. package/dist/deploy/artifact.cjs +10 -10
  14. package/dist/deploy/artifact.d.ts +0 -6
  15. package/dist/deploy/artifact.d.ts.map +1 -1
  16. package/dist/deploy/artifact.js +1 -1
  17. package/dist/deploy/factoryInterfaces.cjs +8 -9
  18. package/dist/deploy/factoryInterfaces.d.ts +14 -168
  19. package/dist/deploy/factoryInterfaces.d.ts.map +1 -1
  20. package/dist/deploy/factoryInterfaces.js +2 -3
  21. package/dist/deploy/index.cjs +48 -80
  22. package/dist/deploy/index.js +3 -3
  23. package/dist/deploy/workflow.cjs +4 -37
  24. package/dist/deploy/workflow.d.ts +2 -283
  25. package/dist/deploy/workflow.d.ts.map +1 -1
  26. package/dist/deploy/workflow.js +1 -2
  27. package/dist/index.cjs +48 -80
  28. package/dist/index.js +3 -3
  29. package/dist/role-management/generator.d.ts +1 -1
  30. package/dist/role-management/schemata.d.ts +20 -20
  31. package/dist/role-management/schemata.d.ts.map +1 -1
  32. package/package.json +12 -9
  33. package/.turbo/turbo-build.log +0 -143
  34. package/.turbo/turbo-lint.log +0 -8
  35. package/.turbo/turbo-test.log +0 -16
  36. package/dist/2XSWEWFA.cjs.map +0 -1
  37. package/dist/DRX4MXDW.js +0 -87
  38. package/dist/DRX4MXDW.js.map +0 -1
  39. package/dist/FVBHJFVE.cjs +0 -99
  40. package/dist/FVBHJFVE.cjs.map +0 -1
  41. package/dist/KK5K3STO.js +0 -175
  42. package/dist/KK5K3STO.js.map +0 -1
  43. package/dist/MHBV7XHL.js.map +0 -1
  44. package/dist/NJ2LWIGZ.cjs.map +0 -1
  45. package/src/deploy/artifact.ts +0 -99
  46. package/src/deploy/factoryInterfaces.ts +0 -203
  47. package/src/deploy/index.ts +0 -5
  48. package/src/deploy/resourceBuilder.ts +0 -79
  49. package/src/deploy/resources.md +0 -84
  50. package/src/deploy/resources.ts +0 -205
  51. package/src/deploy/workflow.ts +0 -140
  52. package/src/index.ts +0 -4
  53. package/src/role-management/generator.ts +0 -17
  54. package/src/role-management/index.ts +0 -3
  55. package/src/role-management/schemata.ts +0 -180
  56. package/src/role-management/types.ts +0 -5
  57. package/src/upgrade/index.ts +0 -1
  58. package/src/upgrade/types.ts +0 -159
  59. package/src/wire/index.ts +0 -1
  60. package/src/wire/schemata.ts +0 -63
  61. package/tsconfig.json +0 -20
  62. package/tsup.config.ts +0 -8
package/dist/FVBHJFVE.cjs DELETED
@@ -1,99 +0,0 @@
1
- 'use strict';
2
-
3
- var NJ2LWIGZ_cjs = require('./NJ2LWIGZ.cjs');
4
- var zod = require('zod');
5
- var gatedTransaction = require('@layerzerolabs/gated-transaction');
6
- var layerzeroDefinitions = require('@layerzerolabs/layerzero-definitions');
7
- var zodUtils = require('@layerzerolabs/zod-utils');
8
-
9
- var getDeploymentBaseArgsSchema = zod.z.object({
10
- contractName: zod.z.string()
11
- });
12
- var saveDeploymentBaseArgsSchema = zod.z.object({
13
- deploymentArtifact: NJ2LWIGZ_cjs.identityOnlyDeploymentArtifactSchema
14
- });
15
- var getVerificationBaseArgsSchema = zod.z.object({
16
- contractName: zod.z.string()
17
- });
18
- var extractVerificationArtifactBaseArgsSchema = zod.z.object({
19
- gtx: gatedTransaction.successfulGatedTransactionSchema(),
20
- deploymentArtifact: NJ2LWIGZ_cjs.fullDeploymentArtifactSchema,
21
- nonVerifyable: zod.z.boolean().optional()
22
- });
23
- var saveVerificationBaseArgsSchema = zod.z.object({
24
- deploymentArtifact: NJ2LWIGZ_cjs.fullDeploymentArtifactSchema,
25
- verificationArtifact: NJ2LWIGZ_cjs.verificationArtifactSchema
26
- });
27
- var baseDeploymentSavingArtifactsSchema = zod.z.object({
28
- getDeployment: zodUtils.functionSchema({
29
- input: zod.z.tuple([
30
- getDeploymentBaseArgsSchema
31
- ]),
32
- output: zod.z.promise(NJ2LWIGZ_cjs.deploymentArtifactSchema.optional())
33
- }),
34
- saveDeployment: zodUtils.functionSchema({
35
- input: zod.z.tuple([
36
- saveDeploymentBaseArgsSchema
37
- ]),
38
- output: zod.z.promise(zod.z.void())
39
- }),
40
- getVerification: zodUtils.functionSchema({
41
- input: zod.z.tuple([
42
- getVerificationBaseArgsSchema
43
- ]),
44
- output: zod.z.promise(zod.z.any())
45
- }),
46
- saveVerification: zodUtils.functionSchema({
47
- input: zod.z.tuple([
48
- saveVerificationBaseArgsSchema
49
- ]),
50
- output: zod.z.promise(zod.z.void())
51
- })
52
- });
53
- var failedDeployment = zod.z.object({
54
- name: zod.z.string(),
55
- success: zod.z.literal(false),
56
- error: zod.z.string()
57
- });
58
- var successfulDeployment = zod.z.object({
59
- name: zod.z.string(),
60
- success: zod.z.literal(true),
61
- deploymentArtifact: NJ2LWIGZ_cjs.deploymentArtifactSchema
62
- });
63
- var deployWorkflowChainResultItemSchema = zod.z.union([
64
- failedDeployment,
65
- successfulDeployment
66
- ]);
67
- var deployWorkflowChainResultSchema = zod.z.object({
68
- results: zod.z.array(deployWorkflowChainResultItemSchema).default([])
69
- });
70
- var deployWorkflowChainStateSchema = deployWorkflowChainResultSchema.extend({
71
- srcChain: layerzeroDefinitions.chainNameSchema.optional(),
72
- status: zod.z.union([
73
- zod.z.literal("RUNNING"),
74
- zod.z.literal("COMPLETE")
75
- ]).default("RUNNING")
76
- });
77
- var deployWorkflowOrchestratorResultSchema = zod.z.object({
78
- stateByChain: zod.z.partialRecord(layerzeroDefinitions.chainNameSchema, deployWorkflowChainResultSchema).default({})
79
- });
80
- var deployWorkflowOrchestratorStateSchema = deployWorkflowOrchestratorResultSchema.extend({
81
- status: zod.z.union([
82
- zod.z.literal("RUNNING"),
83
- zod.z.literal("COMPLETE")
84
- ]).default("RUNNING")
85
- });
86
-
87
- exports.baseDeploymentSavingArtifactsSchema = baseDeploymentSavingArtifactsSchema;
88
- exports.deployWorkflowChainResultItemSchema = deployWorkflowChainResultItemSchema;
89
- exports.deployWorkflowChainResultSchema = deployWorkflowChainResultSchema;
90
- exports.deployWorkflowChainStateSchema = deployWorkflowChainStateSchema;
91
- exports.deployWorkflowOrchestratorResultSchema = deployWorkflowOrchestratorResultSchema;
92
- exports.deployWorkflowOrchestratorStateSchema = deployWorkflowOrchestratorStateSchema;
93
- exports.extractVerificationArtifactBaseArgsSchema = extractVerificationArtifactBaseArgsSchema;
94
- exports.getDeploymentBaseArgsSchema = getDeploymentBaseArgsSchema;
95
- exports.getVerificationBaseArgsSchema = getVerificationBaseArgsSchema;
96
- exports.saveDeploymentBaseArgsSchema = saveDeploymentBaseArgsSchema;
97
- exports.saveVerificationBaseArgsSchema = saveVerificationBaseArgsSchema;
98
- //# sourceMappingURL=FVBHJFVE.cjs.map
99
- //# sourceMappingURL=FVBHJFVE.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/deploy/workflow.ts"],"names":["getDeploymentBaseArgsSchema","z","object","contractName","string","saveDeploymentBaseArgsSchema","deploymentArtifact","identityOnlyDeploymentArtifactSchema","getVerificationBaseArgsSchema","extractVerificationArtifactBaseArgsSchema","gtx","successfulGatedTransactionSchema","fullDeploymentArtifactSchema","nonVerifyable","boolean","optional","saveVerificationBaseArgsSchema","verificationArtifact","verificationArtifactSchema","baseDeploymentSavingArtifactsSchema","getDeployment","functionSchema","input","tuple","output","promise","deploymentArtifactSchema","saveDeployment","void","getVerification","any","saveVerification","failedDeployment","name","success","literal","error","successfulDeployment","deployWorkflowChainResultItemSchema","union","deployWorkflowChainResultSchema","results","array","default","deployWorkflowChainStateSchema","extend","srcChain","chainNameSchema","status","deployWorkflowOrchestratorResultSchema","stateByChain","partialRecord","deployWorkflowOrchestratorStateSchema"],"mappings":"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","file":"FVBHJFVE.cjs","sourcesContent":["import type { SuiObjectChange } from '@mysten/sui/client';\nimport { z } from 'zod';\n\nimport { successfulGatedTransactionSchema } from '@layerzerolabs/gated-transaction';\nimport { chainNameSchema } from '@layerzerolabs/layerzero-definitions';\nimport { functionSchema } from '@layerzerolabs/zod-utils';\n\nimport type { DeploymentArtifact, SolanaDeploymentArtifactExtraInfo } from './artifact';\nimport {\n deploymentArtifactSchema,\n fullDeploymentArtifactSchema,\n identityOnlyDeploymentArtifactSchema,\n verificationArtifactSchema,\n} from './artifact';\n\n// Re-export for transitive type dependencies\nexport type { SuiObjectChange };\n\n// ---------------------------------------------------------------------------\n// Deprecated types (to be removed)\n// ---------------------------------------------------------------------------\n\n/** @deprecated use SolanaDeploymentArtifact from this module or define inline */\nexport type SolanaDeploymentArtifact = Omit<DeploymentArtifact, 'extraDeploymentInfo'> & {\n extraDeploymentInfo: SolanaDeploymentArtifactExtraInfo;\n};\n\n// ---------------------------------------------------------------------------\n// Deployment activity base args schemas\n// ---------------------------------------------------------------------------\n\nexport const getDeploymentBaseArgsSchema = z.object({ contractName: z.string() });\nexport type GetDeploymentBaseArgs = z.infer<typeof getDeploymentBaseArgsSchema>;\n\nexport const saveDeploymentBaseArgsSchema = z.object({\n deploymentArtifact: identityOnlyDeploymentArtifactSchema,\n});\nexport type SaveDeploymentBaseArgs = z.infer<typeof saveDeploymentBaseArgsSchema>;\n\n// ---------------------------------------------------------------------------\n// Verification activity base args schemas\n// ---------------------------------------------------------------------------\n\nexport const getVerificationBaseArgsSchema = z.object({\n contractName: z.string(),\n});\nexport type GetVerificationBaseArgs = z.infer<typeof getVerificationBaseArgsSchema>;\n\nexport const extractVerificationArtifactBaseArgsSchema = z.object({\n gtx: successfulGatedTransactionSchema(),\n deploymentArtifact: fullDeploymentArtifactSchema,\n nonVerifyable: z.boolean().optional(),\n});\nexport type ExtractVerificationArtifactBaseArgs = z.infer<\n typeof extractVerificationArtifactBaseArgsSchema\n>;\n\nexport const saveVerificationBaseArgsSchema = z.object({\n deploymentArtifact: fullDeploymentArtifactSchema,\n verificationArtifact: verificationArtifactSchema,\n});\nexport type SaveVerificationBaseArgs = z.infer<typeof saveVerificationBaseArgsSchema>;\n\n// ---------------------------------------------------------------------------\n// Combined deployment + verification activity schema\n// ---------------------------------------------------------------------------\n\nexport const baseDeploymentSavingArtifactsSchema = z.object({\n getDeployment: functionSchema({\n input: z.tuple([getDeploymentBaseArgsSchema]),\n output: z.promise(deploymentArtifactSchema.optional()),\n }),\n saveDeployment: functionSchema({\n input: z.tuple([saveDeploymentBaseArgsSchema]),\n output: z.promise(z.void()),\n }),\n getVerification: functionSchema({\n input: z.tuple([getVerificationBaseArgsSchema]),\n output: z.promise(z.any()),\n }),\n saveVerification: functionSchema({\n input: z.tuple([saveVerificationBaseArgsSchema]),\n output: z.promise(z.void()),\n }),\n});\n\n// ---------------------------------------------------------------------------\n// Deploy workflow result schemas\n// ---------------------------------------------------------------------------\n\nconst failedDeployment = z.object({\n name: z.string(),\n success: z.literal(false),\n error: z.string(),\n});\n\nconst successfulDeployment = z.object({\n name: z.string(),\n success: z.literal(true),\n deploymentArtifact: deploymentArtifactSchema,\n});\n\nexport const deployWorkflowChainResultItemSchema = z.union([\n failedDeployment,\n successfulDeployment,\n]);\n\nexport const deployWorkflowChainResultSchema = z.object({\n results: z.array(deployWorkflowChainResultItemSchema).default([]),\n});\n\n// ---------------------------------------------------------------------------\n// Deploy workflow state schemas\n// ---------------------------------------------------------------------------\n\nexport const deployWorkflowChainStateSchema = deployWorkflowChainResultSchema.extend({\n srcChain: chainNameSchema.optional(),\n status: z.union([z.literal('RUNNING'), z.literal('COMPLETE')]).default('RUNNING'),\n});\n\nexport const deployWorkflowOrchestratorResultSchema = z.object({\n stateByChain: z.partialRecord(chainNameSchema, deployWorkflowChainResultSchema).default({}),\n});\n\nexport const deployWorkflowOrchestratorStateSchema = deployWorkflowOrchestratorResultSchema.extend({\n status: z.union([z.literal('RUNNING'), z.literal('COMPLETE')]).default('RUNNING'),\n});\n\n// ---------------------------------------------------------------------------\n// Deploy workflow types\n// ---------------------------------------------------------------------------\n\nexport type DeployWorkflowChainResultItem = z.infer<typeof deployWorkflowChainResultItemSchema>;\nexport type DeployWorkflowChainResult = z.infer<typeof deployWorkflowChainResultSchema>;\nexport type DeployWorkflowChainState = z.infer<typeof deployWorkflowChainStateSchema>;\nexport type DeployWorkflowOrchestratorResult = z.infer<\n typeof deployWorkflowOrchestratorResultSchema\n>;\n\nexport type DeployWorkflowOrchestratorState = z.infer<typeof deployWorkflowOrchestratorStateSchema>;\n"]}
package/dist/KK5K3STO.js DELETED
@@ -1,175 +0,0 @@
1
- import { saveVerificationBaseArgsSchema, getVerificationBaseArgsSchema } from './DRX4MXDW.js';
2
- import { deploymentArtifactSchema, artifactWithTypeSchema, ArtifactType } from './MHBV7XHL.js';
3
- import { __name } from './VUOMXK5T.js';
4
- import z from 'zod';
5
- import { chainNameSchema } from '@layerzerolabs/layerzero-definitions';
6
- import { functionSchema, customSchema } from '@layerzerolabs/zod-utils';
7
-
8
- var resourceRefSchema = z.object({
9
- resourceId: z.string(),
10
- // Some resources can have multiple realIDs, leave this undefined for the default
11
- resourceSubKey: z.string().optional()
12
- });
13
- var realIdSchema = z.object({
14
- realIdKey: z.string(),
15
- // some realIDs are scoped to a chain, some aren't
16
- chainName: chainNameSchema.optional()
17
- });
18
- var artifactRegistryActivityFactorySchema = z.object({
19
- getArtifact: functionSchema({
20
- input: z.tuple([
21
- z.object({
22
- ref: resourceRefSchema,
23
- artifactType: z.enum(ArtifactType)
24
- })
25
- ]),
26
- output: z.promise(artifactWithTypeSchema.optional())
27
- }),
28
- saveArtifact: functionSchema({
29
- input: z.tuple([
30
- z.object({
31
- ref: resourceRefSchema,
32
- artifact: artifactWithTypeSchema
33
- })
34
- ]),
35
- output: z.promise(z.void())
36
- }),
37
- // These internally are the same as getArtifact/saveArtifact, just specific argument shapes to match
38
- // the function pointer expected by the `DeployOrchestratorWorkflow`
39
- // We can refactor `DeployOrchestratorWorkflow` to remove this
40
- getDeployment: functionSchema({
41
- input: z.tuple([
42
- z.object({
43
- resource: customSchema()
44
- }),
45
- z.object({
46
- contractName: z.string()
47
- })
48
- ]),
49
- output: z.promise(deploymentArtifactSchema.optional())
50
- }),
51
- saveDeployment: functionSchema({
52
- input: z.tuple([
53
- z.object({
54
- resource: customSchema()
55
- }),
56
- z.object({
57
- deploymentArtifact: deploymentArtifactSchema
58
- })
59
- ]),
60
- output: z.promise(z.void())
61
- }),
62
- getVerification: functionSchema({
63
- input: z.tuple([
64
- z.object({
65
- resource: customSchema()
66
- }),
67
- getVerificationBaseArgsSchema
68
- ]),
69
- output: z.promise(z.any())
70
- }),
71
- saveVerification: functionSchema({
72
- input: z.tuple([
73
- z.object({
74
- resource: customSchema()
75
- }),
76
- saveVerificationBaseArgsSchema
77
- ]),
78
- output: z.promise(z.void())
79
- })
80
- });
81
- var createMockArtifactRegistry = /* @__PURE__ */ __name((getResourceSubKey) => {
82
- const getArtifactKey = /* @__PURE__ */ __name((args) => JSON.stringify([
83
- args.artifactType,
84
- args.ref.resourceId,
85
- args.ref.resourceSubKey ?? null
86
- ]), "getArtifactKey");
87
- const artifactStore = /* @__PURE__ */ new Map();
88
- const mockArtifactRegistry = {
89
- getAllArtifacts: /* @__PURE__ */ __name(() => [
90
- ...artifactStore.values()
91
- ], "getAllArtifacts"),
92
- getArtifact: /* @__PURE__ */ __name(async (args) => artifactStore.get(getArtifactKey(args)), "getArtifact"),
93
- saveArtifact: /* @__PURE__ */ __name(async ({ ref, artifact }) => {
94
- artifactStore.set(getArtifactKey({
95
- artifactType: artifact.artifactType,
96
- ref
97
- }), artifact);
98
- }, "saveArtifact"),
99
- getDeployment: /* @__PURE__ */ __name(async ({ resource }, { contractName }) => (await mockArtifactRegistry.getArtifact({
100
- artifactType: ArtifactType.DEPLOYMENT,
101
- ref: {
102
- resourceId: resource.id,
103
- resourceSubKey: getResourceSubKey(resource, contractName)
104
- }
105
- }))?.artifact, "getDeployment"),
106
- saveDeployment: /* @__PURE__ */ __name(async ({ resource }, { deploymentArtifact }) => mockArtifactRegistry.saveArtifact({
107
- ref: {
108
- resourceId: resource.id,
109
- resourceSubKey: getResourceSubKey(resource, deploymentArtifact.contractName)
110
- },
111
- artifact: {
112
- artifactType: ArtifactType.DEPLOYMENT,
113
- artifact: deploymentArtifact
114
- }
115
- }), "saveDeployment"),
116
- getVerification: /* @__PURE__ */ __name(async ({ resource }, { contractName }) => (await mockArtifactRegistry.getArtifact({
117
- artifactType: ArtifactType.VERIFICATION,
118
- ref: {
119
- resourceId: resource.id,
120
- resourceSubKey: getResourceSubKey(resource, contractName)
121
- }
122
- }))?.artifact, "getVerification"),
123
- saveVerification: /* @__PURE__ */ __name(async ({ resource }, { deploymentArtifact, verificationArtifact }) => mockArtifactRegistry.saveArtifact({
124
- ref: {
125
- resourceId: resource.id,
126
- resourceSubKey: getResourceSubKey(resource, deploymentArtifact.contractName)
127
- },
128
- artifact: {
129
- artifactType: ArtifactType.VERIFICATION,
130
- artifact: verificationArtifact
131
- }
132
- }), "saveVerification")
133
- };
134
- return mockArtifactRegistry;
135
- }, "createMockArtifactRegistry");
136
- var upsertResourceRealIdArgsSchema = z.object({
137
- ref: resourceRefSchema,
138
- realId: realIdSchema
139
- });
140
- var resourceRegistryActivityFactorySchema = z.object({
141
- getResourceRealId: functionSchema({
142
- input: z.tuple([
143
- z.object({
144
- ref: resourceRefSchema
145
- })
146
- ]),
147
- output: z.promise(realIdSchema.optional())
148
- }),
149
- upsertResourceRealId: functionSchema({
150
- input: z.tuple([
151
- upsertResourceRealIdArgsSchema
152
- ]),
153
- output: z.promise(z.void())
154
- }),
155
- deleteResourceRealId: functionSchema({
156
- input: z.tuple([
157
- z.object({
158
- ref: resourceRefSchema
159
- })
160
- ]),
161
- output: z.promise(z.void())
162
- }),
163
- // TODO: add pagination for large resource sets
164
- listResourceRealIds: functionSchema({
165
- input: z.tuple([]),
166
- output: z.promise(z.array(z.object({
167
- resourceId: z.string(),
168
- realId: realIdSchema
169
- })))
170
- })
171
- });
172
-
173
- export { artifactRegistryActivityFactorySchema, createMockArtifactRegistry, realIdSchema, resourceRefSchema, resourceRegistryActivityFactorySchema, upsertResourceRealIdArgsSchema };
174
- //# sourceMappingURL=KK5K3STO.js.map
175
- //# sourceMappingURL=KK5K3STO.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/deploy/factoryInterfaces.ts"],"names":["resourceRefSchema","z","object","resourceId","string","resourceSubKey","optional","realIdSchema","realIdKey","chainName","chainNameSchema","artifactRegistryActivityFactorySchema","getArtifact","functionSchema","input","tuple","ref","artifactType","enum","ArtifactType","output","promise","artifactWithTypeSchema","saveArtifact","artifact","void","getDeployment","resource","customSchema","contractName","deploymentArtifactSchema","saveDeployment","deploymentArtifact","getVerification","getVerificationBaseArgsSchema","any","saveVerification","saveVerificationBaseArgsSchema","createMockArtifactRegistry","getResourceSubKey","getArtifactKey","args","JSON","stringify","artifactStore","Map","mockArtifactRegistry","getAllArtifacts","values","get","set","DEPLOYMENT","id","VERIFICATION","verificationArtifact","upsertResourceRealIdArgsSchema","realId","resourceRegistryActivityFactorySchema","getResourceRealId","upsertResourceRealId","deleteResourceRealId","listResourceRealIds","array"],"mappings":"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","file":"KK5K3STO.js","sourcesContent":["import z from 'zod';\n\nimport { chainNameSchema } from '@layerzerolabs/layerzero-definitions';\nimport { customSchema, functionSchema } from '@layerzerolabs/zod-utils';\n\nimport type { ArtifactWithType } from './artifact';\nimport { ArtifactType, artifactWithTypeSchema, deploymentArtifactSchema } from './artifact';\nimport type { BaseResource, ResolvedResource } from './resources';\nimport { getVerificationBaseArgsSchema, saveVerificationBaseArgsSchema } from './workflow';\n\nexport const resourceRefSchema = z.object({\n resourceId: z.string(),\n // Some resources can have multiple realIDs, leave this undefined for the default\n resourceSubKey: z.string().optional(),\n});\n\n// The real realID that might exist\nexport const realIdSchema = z.object({\n realIdKey: z.string(),\n // some realIDs are scoped to a chain, some aren't\n chainName: chainNameSchema.optional(),\n});\n\nexport const artifactRegistryActivityFactorySchema = z.object({\n getArtifact: functionSchema({\n input: z.tuple([\n z.object({\n ref: resourceRefSchema,\n artifactType: z.enum(ArtifactType),\n }),\n ]),\n output: z.promise(artifactWithTypeSchema.optional()),\n // Typing to make it generic on artifact type\n }) as z.ZodType<\n <Type extends ArtifactType>(args: {\n artifactType: Type;\n ref: z.infer<typeof resourceRefSchema>;\n }) => Promise<Extract<ArtifactWithType, { artifactType: Type }> | undefined>\n >,\n\n saveArtifact: functionSchema({\n input: z.tuple([\n z.object({\n ref: resourceRefSchema,\n artifact: artifactWithTypeSchema,\n }),\n ]),\n output: z.promise(z.void()),\n }),\n\n // These internally are the same as getArtifact/saveArtifact, just specific argument shapes to match\n // the function pointer expected by the `DeployOrchestratorWorkflow`\n // We can refactor `DeployOrchestratorWorkflow` to remove this\n getDeployment: functionSchema({\n input: z.tuple([\n z.object({\n resource: customSchema<BaseResource | ResolvedResource<BaseResource>>(),\n }),\n z.object({\n contractName: z.string(),\n }),\n ]),\n output: z.promise(deploymentArtifactSchema.optional()),\n }),\n\n saveDeployment: functionSchema({\n input: z.tuple([\n z.object({\n resource: customSchema<BaseResource | ResolvedResource<BaseResource>>(),\n }),\n z.object({\n deploymentArtifact: deploymentArtifactSchema,\n }),\n ]),\n output: z.promise(z.void()),\n }),\n\n getVerification: functionSchema({\n input: z.tuple([\n z.object({\n resource: customSchema<BaseResource | ResolvedResource<BaseResource>>(),\n }),\n getVerificationBaseArgsSchema,\n ]),\n output: z.promise(z.any()),\n }),\n\n saveVerification: functionSchema({\n input: z.tuple([\n z.object({\n resource: customSchema<BaseResource | ResolvedResource<BaseResource>>(),\n }),\n saveVerificationBaseArgsSchema,\n ]),\n output: z.promise(z.void()),\n }),\n});\n\nexport interface ArtifactRegistry extends z.infer<typeof artifactRegistryActivityFactorySchema> {}\n\nexport interface MockArtifactRegistry extends ArtifactRegistry {\n getAllArtifacts: () => ArtifactWithType[];\n}\nexport const createMockArtifactRegistry = (\n // TODO: simplify when resources are wired through deployment orchestrator\n getResourceSubKey: (resource: BaseResource, contractName: string) => string | undefined,\n): MockArtifactRegistry => {\n const getArtifactKey = (args: Parameters<ArtifactRegistry['getArtifact']>[0]) =>\n JSON.stringify([args.artifactType, args.ref.resourceId, args.ref.resourceSubKey ?? null]);\n\n const artifactStore = new Map<string, ArtifactWithType>();\n\n const mockArtifactRegistry: MockArtifactRegistry = {\n getAllArtifacts: () => [...artifactStore.values()],\n\n getArtifact: async (args) => artifactStore.get(getArtifactKey(args)) as any,\n saveArtifact: async ({ ref, artifact }) => {\n artifactStore.set(\n getArtifactKey({ artifactType: artifact.artifactType, ref }),\n artifact,\n );\n },\n getDeployment: async ({ resource }, { contractName }) =>\n (\n await mockArtifactRegistry.getArtifact({\n artifactType: ArtifactType.DEPLOYMENT,\n ref: {\n resourceId: resource.id,\n resourceSubKey: getResourceSubKey(resource, contractName),\n },\n })\n )?.artifact,\n saveDeployment: async ({ resource }, { deploymentArtifact }) =>\n mockArtifactRegistry.saveArtifact({\n ref: {\n resourceId: resource.id,\n resourceSubKey: getResourceSubKey(resource, deploymentArtifact.contractName),\n },\n artifact: {\n artifactType: ArtifactType.DEPLOYMENT,\n artifact: deploymentArtifact,\n },\n }),\n getVerification: async ({ resource }, { contractName }) =>\n (\n await mockArtifactRegistry.getArtifact({\n artifactType: ArtifactType.VERIFICATION,\n ref: {\n resourceId: resource.id,\n resourceSubKey: getResourceSubKey(resource, contractName),\n },\n })\n )?.artifact,\n saveVerification: async ({ resource }, { deploymentArtifact, verificationArtifact }) =>\n mockArtifactRegistry.saveArtifact({\n ref: {\n resourceId: resource.id,\n resourceSubKey: getResourceSubKey(resource, deploymentArtifact.contractName),\n },\n artifact: {\n artifactType: ArtifactType.VERIFICATION,\n artifact: verificationArtifact,\n },\n }),\n };\n\n return mockArtifactRegistry;\n};\n\nexport const upsertResourceRealIdArgsSchema = z.object({\n ref: resourceRefSchema,\n realId: realIdSchema,\n});\n\nexport const resourceRegistryActivityFactorySchema = z.object({\n getResourceRealId: functionSchema({\n input: z.tuple([z.object({ ref: resourceRefSchema })]),\n output: z.promise(realIdSchema.optional()),\n }),\n upsertResourceRealId: functionSchema({\n input: z.tuple([upsertResourceRealIdArgsSchema]),\n output: z.promise(z.void()),\n }),\n deleteResourceRealId: functionSchema({\n input: z.tuple([z.object({ ref: resourceRefSchema })]),\n output: z.promise(z.void()),\n }),\n\n // TODO: add pagination for large resource sets\n listResourceRealIds: functionSchema({\n input: z.tuple([]),\n output: z.promise(\n z.array(\n z.object({\n resourceId: z.string(),\n realId: realIdSchema,\n }),\n ),\n ),\n }),\n});\n\nexport interface ResourceRegistry extends z.infer<typeof resourceRegistryActivityFactorySchema> {}\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/deploy/artifact.ts"],"names":["ArtifactType","solanaDeploymentArtifactExtraInfoSchema","z","object","accounts","record","string","normalizedHexSchema","suiDeploymentArtifactExtraInfoSchema","digest","packageId","objectIds","objectChanges","array","custom","identityOnlyDeploymentArtifactSchema","contractName","chainName","chainNameSchema","address","fullDeploymentArtifactSchema","shape","nativeAddress","bytecodeHash","optional","deploymentTimestamp","number","deployerAddress","txHash","extraDeploymentInfo","any","deploymentArtifactSchema","union","verificationArtifactSchema","metadataArtifactSchema","jobId","pushedAt","metadataResources","artifactWithTypeSchema","discriminatedUnion","artifactType","literal","artifact"],"mappings":";;;;;AAUO,IAAKA,YAAAA,6BAAAA,aAAAA,EAAAA;;;;AAAAA,EAAAA,OAAAA,aAAAA;;AAYL,IAAMC,uCAAAA,GAA0CC,EAAEC,MAAAA,CAAO;AAC5DC,EAAAA,QAAAA,EAAUF,CAAAA,CAAEG,MAAAA,CAAOH,CAAAA,CAAEI,MAAAA,IAAUC,mBAAAA;AACnC,CAAA;AAMO,IAAMC,oCAAAA,GAAuCN,EAAEC,MAAAA,CAAO;AACzDM,EAAAA,MAAAA,EAAQP,EAAEI,MAAAA,EAAM;AAChBI,EAAAA,SAAAA,EAAWR,EAAEI,MAAAA,EAAM;AACnBK,EAAAA,SAAAA,EAAWT,EAAEG,MAAAA,CAAOH,CAAAA,CAAEI,QAAM,EAAIJ,CAAAA,CAAEI,QAAM,CAAA;AACxCM,EAAAA,aAAAA,EAAeV,CAAAA,CAAEW,KAAAA,CAAMX,CAAAA,CAAEY,MAAAA,EAAM;AACnC,CAAA;AAIO,IAAMC,oCAAAA,GAAuCb,EAAEC,MAAAA,CAAO;AACzDa,EAAAA,YAAAA,EAAcd,EAAEI,MAAAA,EAAM;EACtBW,SAAAA,EAAWC,eAAAA;EACXC,OAAAA,EAASZ;AACb,CAAA;AAIO,IAAMa,4BAAAA,GAA+BlB,EAAEC,MAAAA,CAAO;AACjD,EAAA,GAAGY,oCAAAA,CAAqCM,KAAAA;AACxCL,EAAAA,YAAAA,EAAcd,EAAEI,MAAAA,EAAM;EACtBW,SAAAA,EAAWC,eAAAA;EACXC,OAAAA,EAASZ,mBAAAA;AACTe,EAAAA,aAAAA,EAAepB,EAAEI,MAAAA,EAAM;EACvBiB,YAAAA,EAAcrB,CAAAA,CAAEI,MAAAA,EAAM,CAAGkB,QAAAA,EAAQ;AACjCC,EAAAA,mBAAAA,EAAqBvB,EAAEwB,MAAAA,EAAM;EAC7BC,eAAAA,EAAiBpB,mBAAAA;AACjBqB,EAAAA,MAAAA,EAAQ1B,EAAEI,MAAAA,EAAM;EAChBuB,mBAAAA,EAAqB3B,CAAAA,CAAE4B,GAAAA,EAAG,CAAGN,QAAAA;AACjC,CAAA;AAIO,IAAMO,wBAAAA,GAA2B7B,EAAE8B,KAAAA,CAAM;;AAE5CZ,EAAAA,4BAAAA;AACAL,EAAAA;AACH,CAAA;AAIM,IAAMkB,0BAAAA,GAA6B/B,EAAE4B,GAAAA;AAIrC,IAAMI,sBAAAA,GAAyBhC,EAAEC,MAAAA,CAAO;AAC3CgC,EAAAA,KAAAA,EAAOjC,EAAEI,MAAAA,EAAM;AACf8B,EAAAA,QAAAA,EAAUlC,EAAEwB,MAAAA,EAAM;;AAElBW,EAAAA,iBAAAA,EAAmBnC,CAAAA,CAAEW,KAAAA,CAAMX,CAAAA,CAAE4B,GAAAA,EAAG;AACpC,CAAA;AAIO,IAAMQ,sBAAAA,GAAyBpC,CAAAA,CAAEqC,kBAAAA,CAAmB,cAAA,EAAgB;AACvErC,EAAAA,CAAAA,CAAEC,MAAAA,CAAO;IACLqC,YAAAA,EAActC,CAAAA,CAAEuC,QAAO,YAAA,CAAA;IACvBC,QAAAA,EAAUX;GACd,CAAA;AACA7B,EAAAA,CAAAA,CAAEC,MAAAA,CAAO;IACLqC,YAAAA,EAActC,CAAAA,CAAEuC,QAAO,cAAA,CAAA;AACvBC,IAAAA,QAAAA,EAAUxC,EAAE4B,GAAAA;GAChB,CAAA;AACA5B,EAAAA,CAAAA,CAAEC,MAAAA,CAAO;IACLqC,YAAAA,EAActC,CAAAA,CAAEuC,QAAO,UAAA,CAAA;IACvBC,QAAAA,EAAUR;GACd;AACH,CAAA","file":"MHBV7XHL.js","sourcesContent":["import type { SuiObjectChange } from '@mysten/sui/client';\nimport { z } from 'zod';\n\nimport { normalizedHexSchema } from '@layerzerolabs/common-chain-model';\nimport type { ChainName } from '@layerzerolabs/layerzero-definitions';\nimport { chainNameSchema } from '@layerzerolabs/layerzero-definitions';\nexport type { ChainName };\n\nexport type { SuiObjectChange };\n\nexport enum ArtifactType {\n // Should merge deployment, verification artifacts\n\n // Full record from deployment on-chain\n DEPLOYMENT = 'deployment',\n // Information to verify contracts\n VERIFICATION = 'verification',\n // Record of a successful push to lz metadata\n METADATA = 'metadata',\n}\n\n// Chain-specific extra deployment info schemas\nexport const solanaDeploymentArtifactExtraInfoSchema = z.object({\n accounts: z.record(z.string(), normalizedHexSchema),\n});\n\nexport type SolanaDeploymentArtifactExtraInfo = z.infer<\n typeof solanaDeploymentArtifactExtraInfoSchema\n>;\n\nexport const suiDeploymentArtifactExtraInfoSchema = z.object({\n digest: z.string(),\n packageId: z.string(),\n objectIds: z.record(z.string(), z.string()),\n objectChanges: z.array(z.custom<SuiObjectChange>()),\n});\n\nexport type SuiDeploymentArtifactExtraInfo = z.infer<typeof suiDeploymentArtifactExtraInfoSchema>;\n\nexport const identityOnlyDeploymentArtifactSchema = z.object({\n contractName: z.string(),\n chainName: chainNameSchema,\n address: normalizedHexSchema,\n});\nexport type IdentityOnlyDeploymentArtifact = z.infer<typeof identityOnlyDeploymentArtifactSchema>;\n\n// TODO: include verification artifact in this schema\nexport const fullDeploymentArtifactSchema = z.object({\n ...identityOnlyDeploymentArtifactSchema.shape,\n contractName: z.string(),\n chainName: chainNameSchema,\n address: normalizedHexSchema,\n nativeAddress: z.string(),\n bytecodeHash: z.string().optional(),\n deploymentTimestamp: z.number(),\n deployerAddress: normalizedHexSchema,\n txHash: z.string(),\n extraDeploymentInfo: z.any().optional(),\n});\nexport type FullDeploymentArtifact = z.infer<typeof fullDeploymentArtifactSchema>;\n\n// TODO: decide whether to migrate stored identity-only artifacts to full artifacts and collapse this union into fullDeploymentArtifactSchema\nexport const deploymentArtifactSchema = z.union([\n // Check this first since it's a superset\n fullDeploymentArtifactSchema,\n identityOnlyDeploymentArtifactSchema,\n]);\n\nexport type DeploymentArtifact = z.infer<typeof deploymentArtifactSchema>;\n\nexport const verificationArtifactSchema = z.any();\n\nexport type VerificationArtifact = z.infer<typeof verificationArtifactSchema>;\n\nexport const metadataArtifactSchema = z.object({\n jobId: z.string(),\n pushedAt: z.number(),\n // We can type this fully but probably needs to happen later\n metadataResources: z.array(z.any()),\n});\n\nexport type MetadataArtifact = z.infer<typeof metadataArtifactSchema>;\n\nexport const artifactWithTypeSchema = z.discriminatedUnion('artifactType', [\n z.object({\n artifactType: z.literal(ArtifactType.DEPLOYMENT),\n artifact: deploymentArtifactSchema,\n }),\n z.object({\n artifactType: z.literal(ArtifactType.VERIFICATION),\n artifact: z.any(),\n }),\n z.object({\n artifactType: z.literal(ArtifactType.METADATA),\n artifact: metadataArtifactSchema,\n }),\n]);\n\nexport type ArtifactWithType = z.infer<typeof artifactWithTypeSchema>;\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/deploy/artifact.ts"],"names":["ArtifactType","solanaDeploymentArtifactExtraInfoSchema","z","object","accounts","record","string","normalizedHexSchema","suiDeploymentArtifactExtraInfoSchema","digest","packageId","objectIds","objectChanges","array","custom","identityOnlyDeploymentArtifactSchema","contractName","chainName","chainNameSchema","address","fullDeploymentArtifactSchema","shape","nativeAddress","bytecodeHash","optional","deploymentTimestamp","number","deployerAddress","txHash","extraDeploymentInfo","any","deploymentArtifactSchema","union","verificationArtifactSchema","metadataArtifactSchema","jobId","pushedAt","metadataResources","artifactWithTypeSchema","discriminatedUnion","artifactType","literal","artifact"],"mappings":";;;;;;;AAUO,IAAKA,YAAAA,6BAAAA,aAAAA,EAAAA;;;;AAAAA,EAAAA,OAAAA,aAAAA;;AAYL,IAAMC,uCAAAA,GAA0CC,MAAEC,MAAAA,CAAO;AAC5DC,EAAAA,QAAAA,EAAUF,KAAAA,CAAEG,MAAAA,CAAOH,KAAAA,CAAEI,MAAAA,IAAUC,oCAAAA;AACnC,CAAA;AAMO,IAAMC,oCAAAA,GAAuCN,MAAEC,MAAAA,CAAO;AACzDM,EAAAA,MAAAA,EAAQP,MAAEI,MAAAA,EAAM;AAChBI,EAAAA,SAAAA,EAAWR,MAAEI,MAAAA,EAAM;AACnBK,EAAAA,SAAAA,EAAWT,MAAEG,MAAAA,CAAOH,KAAAA,CAAEI,QAAM,EAAIJ,KAAAA,CAAEI,QAAM,CAAA;AACxCM,EAAAA,aAAAA,EAAeV,KAAAA,CAAEW,KAAAA,CAAMX,KAAAA,CAAEY,MAAAA,EAAM;AACnC,CAAA;AAIO,IAAMC,oCAAAA,GAAuCb,MAAEC,MAAAA,CAAO;AACzDa,EAAAA,YAAAA,EAAcd,MAAEI,MAAAA,EAAM;EACtBW,SAAAA,EAAWC,oCAAAA;EACXC,OAAAA,EAASZ;AACb,CAAA;AAIO,IAAMa,4BAAAA,GAA+BlB,MAAEC,MAAAA,CAAO;AACjD,EAAA,GAAGY,oCAAAA,CAAqCM,KAAAA;AACxCL,EAAAA,YAAAA,EAAcd,MAAEI,MAAAA,EAAM;EACtBW,SAAAA,EAAWC,oCAAAA;EACXC,OAAAA,EAASZ,oCAAAA;AACTe,EAAAA,aAAAA,EAAepB,MAAEI,MAAAA,EAAM;EACvBiB,YAAAA,EAAcrB,KAAAA,CAAEI,MAAAA,EAAM,CAAGkB,QAAAA,EAAQ;AACjCC,EAAAA,mBAAAA,EAAqBvB,MAAEwB,MAAAA,EAAM;EAC7BC,eAAAA,EAAiBpB,oCAAAA;AACjBqB,EAAAA,MAAAA,EAAQ1B,MAAEI,MAAAA,EAAM;EAChBuB,mBAAAA,EAAqB3B,KAAAA,CAAE4B,GAAAA,EAAG,CAAGN,QAAAA;AACjC,CAAA;AAIO,IAAMO,wBAAAA,GAA2B7B,MAAE8B,KAAAA,CAAM;;AAE5CZ,EAAAA,4BAAAA;AACAL,EAAAA;AACH,CAAA;AAIM,IAAMkB,0BAAAA,GAA6B/B,MAAE4B,GAAAA;AAIrC,IAAMI,sBAAAA,GAAyBhC,MAAEC,MAAAA,CAAO;AAC3CgC,EAAAA,KAAAA,EAAOjC,MAAEI,MAAAA,EAAM;AACf8B,EAAAA,QAAAA,EAAUlC,MAAEwB,MAAAA,EAAM;;AAElBW,EAAAA,iBAAAA,EAAmBnC,KAAAA,CAAEW,KAAAA,CAAMX,KAAAA,CAAE4B,GAAAA,EAAG;AACpC,CAAA;AAIO,IAAMQ,sBAAAA,GAAyBpC,KAAAA,CAAEqC,kBAAAA,CAAmB,cAAA,EAAgB;AACvErC,EAAAA,KAAAA,CAAEC,MAAAA,CAAO;IACLqC,YAAAA,EAActC,KAAAA,CAAEuC,QAAO,YAAA,CAAA;IACvBC,QAAAA,EAAUX;GACd,CAAA;AACA7B,EAAAA,KAAAA,CAAEC,MAAAA,CAAO;IACLqC,YAAAA,EAActC,KAAAA,CAAEuC,QAAO,cAAA,CAAA;AACvBC,IAAAA,QAAAA,EAAUxC,MAAE4B,GAAAA;GAChB,CAAA;AACA5B,EAAAA,KAAAA,CAAEC,MAAAA,CAAO;IACLqC,YAAAA,EAActC,KAAAA,CAAEuC,QAAO,UAAA,CAAA;IACvBC,QAAAA,EAAUR;GACd;AACH,CAAA","file":"NJ2LWIGZ.cjs","sourcesContent":["import type { SuiObjectChange } from '@mysten/sui/client';\nimport { z } from 'zod';\n\nimport { normalizedHexSchema } from '@layerzerolabs/common-chain-model';\nimport type { ChainName } from '@layerzerolabs/layerzero-definitions';\nimport { chainNameSchema } from '@layerzerolabs/layerzero-definitions';\nexport type { ChainName };\n\nexport type { SuiObjectChange };\n\nexport enum ArtifactType {\n // Should merge deployment, verification artifacts\n\n // Full record from deployment on-chain\n DEPLOYMENT = 'deployment',\n // Information to verify contracts\n VERIFICATION = 'verification',\n // Record of a successful push to lz metadata\n METADATA = 'metadata',\n}\n\n// Chain-specific extra deployment info schemas\nexport const solanaDeploymentArtifactExtraInfoSchema = z.object({\n accounts: z.record(z.string(), normalizedHexSchema),\n});\n\nexport type SolanaDeploymentArtifactExtraInfo = z.infer<\n typeof solanaDeploymentArtifactExtraInfoSchema\n>;\n\nexport const suiDeploymentArtifactExtraInfoSchema = z.object({\n digest: z.string(),\n packageId: z.string(),\n objectIds: z.record(z.string(), z.string()),\n objectChanges: z.array(z.custom<SuiObjectChange>()),\n});\n\nexport type SuiDeploymentArtifactExtraInfo = z.infer<typeof suiDeploymentArtifactExtraInfoSchema>;\n\nexport const identityOnlyDeploymentArtifactSchema = z.object({\n contractName: z.string(),\n chainName: chainNameSchema,\n address: normalizedHexSchema,\n});\nexport type IdentityOnlyDeploymentArtifact = z.infer<typeof identityOnlyDeploymentArtifactSchema>;\n\n// TODO: include verification artifact in this schema\nexport const fullDeploymentArtifactSchema = z.object({\n ...identityOnlyDeploymentArtifactSchema.shape,\n contractName: z.string(),\n chainName: chainNameSchema,\n address: normalizedHexSchema,\n nativeAddress: z.string(),\n bytecodeHash: z.string().optional(),\n deploymentTimestamp: z.number(),\n deployerAddress: normalizedHexSchema,\n txHash: z.string(),\n extraDeploymentInfo: z.any().optional(),\n});\nexport type FullDeploymentArtifact = z.infer<typeof fullDeploymentArtifactSchema>;\n\n// TODO: decide whether to migrate stored identity-only artifacts to full artifacts and collapse this union into fullDeploymentArtifactSchema\nexport const deploymentArtifactSchema = z.union([\n // Check this first since it's a superset\n fullDeploymentArtifactSchema,\n identityOnlyDeploymentArtifactSchema,\n]);\n\nexport type DeploymentArtifact = z.infer<typeof deploymentArtifactSchema>;\n\nexport const verificationArtifactSchema = z.any();\n\nexport type VerificationArtifact = z.infer<typeof verificationArtifactSchema>;\n\nexport const metadataArtifactSchema = z.object({\n jobId: z.string(),\n pushedAt: z.number(),\n // We can type this fully but probably needs to happen later\n metadataResources: z.array(z.any()),\n});\n\nexport type MetadataArtifact = z.infer<typeof metadataArtifactSchema>;\n\nexport const artifactWithTypeSchema = z.discriminatedUnion('artifactType', [\n z.object({\n artifactType: z.literal(ArtifactType.DEPLOYMENT),\n artifact: deploymentArtifactSchema,\n }),\n z.object({\n artifactType: z.literal(ArtifactType.VERIFICATION),\n artifact: z.any(),\n }),\n z.object({\n artifactType: z.literal(ArtifactType.METADATA),\n artifact: metadataArtifactSchema,\n }),\n]);\n\nexport type ArtifactWithType = z.infer<typeof artifactWithTypeSchema>;\n"]}
@@ -1,99 +0,0 @@
1
- import type { SuiObjectChange } from '@mysten/sui/client';
2
- import { z } from 'zod';
3
-
4
- import { normalizedHexSchema } from '@layerzerolabs/common-chain-model';
5
- import type { ChainName } from '@layerzerolabs/layerzero-definitions';
6
- import { chainNameSchema } from '@layerzerolabs/layerzero-definitions';
7
- export type { ChainName };
8
-
9
- export type { SuiObjectChange };
10
-
11
- export enum ArtifactType {
12
- // Should merge deployment, verification artifacts
13
-
14
- // Full record from deployment on-chain
15
- DEPLOYMENT = 'deployment',
16
- // Information to verify contracts
17
- VERIFICATION = 'verification',
18
- // Record of a successful push to lz metadata
19
- METADATA = 'metadata',
20
- }
21
-
22
- // Chain-specific extra deployment info schemas
23
- export const solanaDeploymentArtifactExtraInfoSchema = z.object({
24
- accounts: z.record(z.string(), normalizedHexSchema),
25
- });
26
-
27
- export type SolanaDeploymentArtifactExtraInfo = z.infer<
28
- typeof solanaDeploymentArtifactExtraInfoSchema
29
- >;
30
-
31
- export const suiDeploymentArtifactExtraInfoSchema = z.object({
32
- digest: z.string(),
33
- packageId: z.string(),
34
- objectIds: z.record(z.string(), z.string()),
35
- objectChanges: z.array(z.custom<SuiObjectChange>()),
36
- });
37
-
38
- export type SuiDeploymentArtifactExtraInfo = z.infer<typeof suiDeploymentArtifactExtraInfoSchema>;
39
-
40
- export const identityOnlyDeploymentArtifactSchema = z.object({
41
- contractName: z.string(),
42
- chainName: chainNameSchema,
43
- address: normalizedHexSchema,
44
- });
45
- export type IdentityOnlyDeploymentArtifact = z.infer<typeof identityOnlyDeploymentArtifactSchema>;
46
-
47
- // TODO: include verification artifact in this schema
48
- export const fullDeploymentArtifactSchema = z.object({
49
- ...identityOnlyDeploymentArtifactSchema.shape,
50
- contractName: z.string(),
51
- chainName: chainNameSchema,
52
- address: normalizedHexSchema,
53
- nativeAddress: z.string(),
54
- bytecodeHash: z.string().optional(),
55
- deploymentTimestamp: z.number(),
56
- deployerAddress: normalizedHexSchema,
57
- txHash: z.string(),
58
- extraDeploymentInfo: z.any().optional(),
59
- });
60
- export type FullDeploymentArtifact = z.infer<typeof fullDeploymentArtifactSchema>;
61
-
62
- // TODO: decide whether to migrate stored identity-only artifacts to full artifacts and collapse this union into fullDeploymentArtifactSchema
63
- export const deploymentArtifactSchema = z.union([
64
- // Check this first since it's a superset
65
- fullDeploymentArtifactSchema,
66
- identityOnlyDeploymentArtifactSchema,
67
- ]);
68
-
69
- export type DeploymentArtifact = z.infer<typeof deploymentArtifactSchema>;
70
-
71
- export const verificationArtifactSchema = z.any();
72
-
73
- export type VerificationArtifact = z.infer<typeof verificationArtifactSchema>;
74
-
75
- export const metadataArtifactSchema = z.object({
76
- jobId: z.string(),
77
- pushedAt: z.number(),
78
- // We can type this fully but probably needs to happen later
79
- metadataResources: z.array(z.any()),
80
- });
81
-
82
- export type MetadataArtifact = z.infer<typeof metadataArtifactSchema>;
83
-
84
- export const artifactWithTypeSchema = z.discriminatedUnion('artifactType', [
85
- z.object({
86
- artifactType: z.literal(ArtifactType.DEPLOYMENT),
87
- artifact: deploymentArtifactSchema,
88
- }),
89
- z.object({
90
- artifactType: z.literal(ArtifactType.VERIFICATION),
91
- artifact: z.any(),
92
- }),
93
- z.object({
94
- artifactType: z.literal(ArtifactType.METADATA),
95
- artifact: metadataArtifactSchema,
96
- }),
97
- ]);
98
-
99
- export type ArtifactWithType = z.infer<typeof artifactWithTypeSchema>;
@@ -1,203 +0,0 @@
1
- import z from 'zod';
2
-
3
- import { chainNameSchema } from '@layerzerolabs/layerzero-definitions';
4
- import { customSchema, functionSchema } from '@layerzerolabs/zod-utils';
5
-
6
- import type { ArtifactWithType } from './artifact';
7
- import { ArtifactType, artifactWithTypeSchema, deploymentArtifactSchema } from './artifact';
8
- import type { BaseResource, ResolvedResource } from './resources';
9
- import { getVerificationBaseArgsSchema, saveVerificationBaseArgsSchema } from './workflow';
10
-
11
- export const resourceRefSchema = z.object({
12
- resourceId: z.string(),
13
- // Some resources can have multiple realIDs, leave this undefined for the default
14
- resourceSubKey: z.string().optional(),
15
- });
16
-
17
- // The real realID that might exist
18
- export const realIdSchema = z.object({
19
- realIdKey: z.string(),
20
- // some realIDs are scoped to a chain, some aren't
21
- chainName: chainNameSchema.optional(),
22
- });
23
-
24
- export const artifactRegistryActivityFactorySchema = z.object({
25
- getArtifact: functionSchema({
26
- input: z.tuple([
27
- z.object({
28
- ref: resourceRefSchema,
29
- artifactType: z.enum(ArtifactType),
30
- }),
31
- ]),
32
- output: z.promise(artifactWithTypeSchema.optional()),
33
- // Typing to make it generic on artifact type
34
- }) as z.ZodType<
35
- <Type extends ArtifactType>(args: {
36
- artifactType: Type;
37
- ref: z.infer<typeof resourceRefSchema>;
38
- }) => Promise<Extract<ArtifactWithType, { artifactType: Type }> | undefined>
39
- >,
40
-
41
- saveArtifact: functionSchema({
42
- input: z.tuple([
43
- z.object({
44
- ref: resourceRefSchema,
45
- artifact: artifactWithTypeSchema,
46
- }),
47
- ]),
48
- output: z.promise(z.void()),
49
- }),
50
-
51
- // These internally are the same as getArtifact/saveArtifact, just specific argument shapes to match
52
- // the function pointer expected by the `DeployOrchestratorWorkflow`
53
- // We can refactor `DeployOrchestratorWorkflow` to remove this
54
- getDeployment: functionSchema({
55
- input: z.tuple([
56
- z.object({
57
- resource: customSchema<BaseResource | ResolvedResource<BaseResource>>(),
58
- }),
59
- z.object({
60
- contractName: z.string(),
61
- }),
62
- ]),
63
- output: z.promise(deploymentArtifactSchema.optional()),
64
- }),
65
-
66
- saveDeployment: functionSchema({
67
- input: z.tuple([
68
- z.object({
69
- resource: customSchema<BaseResource | ResolvedResource<BaseResource>>(),
70
- }),
71
- z.object({
72
- deploymentArtifact: deploymentArtifactSchema,
73
- }),
74
- ]),
75
- output: z.promise(z.void()),
76
- }),
77
-
78
- getVerification: functionSchema({
79
- input: z.tuple([
80
- z.object({
81
- resource: customSchema<BaseResource | ResolvedResource<BaseResource>>(),
82
- }),
83
- getVerificationBaseArgsSchema,
84
- ]),
85
- output: z.promise(z.any()),
86
- }),
87
-
88
- saveVerification: functionSchema({
89
- input: z.tuple([
90
- z.object({
91
- resource: customSchema<BaseResource | ResolvedResource<BaseResource>>(),
92
- }),
93
- saveVerificationBaseArgsSchema,
94
- ]),
95
- output: z.promise(z.void()),
96
- }),
97
- });
98
-
99
- export interface ArtifactRegistry extends z.infer<typeof artifactRegistryActivityFactorySchema> {}
100
-
101
- export interface MockArtifactRegistry extends ArtifactRegistry {
102
- getAllArtifacts: () => ArtifactWithType[];
103
- }
104
- export const createMockArtifactRegistry = (
105
- // TODO: simplify when resources are wired through deployment orchestrator
106
- getResourceSubKey: (resource: BaseResource, contractName: string) => string | undefined,
107
- ): MockArtifactRegistry => {
108
- const getArtifactKey = (args: Parameters<ArtifactRegistry['getArtifact']>[0]) =>
109
- JSON.stringify([args.artifactType, args.ref.resourceId, args.ref.resourceSubKey ?? null]);
110
-
111
- const artifactStore = new Map<string, ArtifactWithType>();
112
-
113
- const mockArtifactRegistry: MockArtifactRegistry = {
114
- getAllArtifacts: () => [...artifactStore.values()],
115
-
116
- getArtifact: async (args) => artifactStore.get(getArtifactKey(args)) as any,
117
- saveArtifact: async ({ ref, artifact }) => {
118
- artifactStore.set(
119
- getArtifactKey({ artifactType: artifact.artifactType, ref }),
120
- artifact,
121
- );
122
- },
123
- getDeployment: async ({ resource }, { contractName }) =>
124
- (
125
- await mockArtifactRegistry.getArtifact({
126
- artifactType: ArtifactType.DEPLOYMENT,
127
- ref: {
128
- resourceId: resource.id,
129
- resourceSubKey: getResourceSubKey(resource, contractName),
130
- },
131
- })
132
- )?.artifact,
133
- saveDeployment: async ({ resource }, { deploymentArtifact }) =>
134
- mockArtifactRegistry.saveArtifact({
135
- ref: {
136
- resourceId: resource.id,
137
- resourceSubKey: getResourceSubKey(resource, deploymentArtifact.contractName),
138
- },
139
- artifact: {
140
- artifactType: ArtifactType.DEPLOYMENT,
141
- artifact: deploymentArtifact,
142
- },
143
- }),
144
- getVerification: async ({ resource }, { contractName }) =>
145
- (
146
- await mockArtifactRegistry.getArtifact({
147
- artifactType: ArtifactType.VERIFICATION,
148
- ref: {
149
- resourceId: resource.id,
150
- resourceSubKey: getResourceSubKey(resource, contractName),
151
- },
152
- })
153
- )?.artifact,
154
- saveVerification: async ({ resource }, { deploymentArtifact, verificationArtifact }) =>
155
- mockArtifactRegistry.saveArtifact({
156
- ref: {
157
- resourceId: resource.id,
158
- resourceSubKey: getResourceSubKey(resource, deploymentArtifact.contractName),
159
- },
160
- artifact: {
161
- artifactType: ArtifactType.VERIFICATION,
162
- artifact: verificationArtifact,
163
- },
164
- }),
165
- };
166
-
167
- return mockArtifactRegistry;
168
- };
169
-
170
- export const upsertResourceRealIdArgsSchema = z.object({
171
- ref: resourceRefSchema,
172
- realId: realIdSchema,
173
- });
174
-
175
- export const resourceRegistryActivityFactorySchema = z.object({
176
- getResourceRealId: functionSchema({
177
- input: z.tuple([z.object({ ref: resourceRefSchema })]),
178
- output: z.promise(realIdSchema.optional()),
179
- }),
180
- upsertResourceRealId: functionSchema({
181
- input: z.tuple([upsertResourceRealIdArgsSchema]),
182
- output: z.promise(z.void()),
183
- }),
184
- deleteResourceRealId: functionSchema({
185
- input: z.tuple([z.object({ ref: resourceRefSchema })]),
186
- output: z.promise(z.void()),
187
- }),
188
-
189
- // TODO: add pagination for large resource sets
190
- listResourceRealIds: functionSchema({
191
- input: z.tuple([]),
192
- output: z.promise(
193
- z.array(
194
- z.object({
195
- resourceId: z.string(),
196
- realId: realIdSchema,
197
- }),
198
- ),
199
- ),
200
- }),
201
- });
202
-
203
- export interface ResourceRegistry extends z.infer<typeof resourceRegistryActivityFactorySchema> {}