@layerzerolabs/dw-model 0.2.45 → 0.2.46

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.
@@ -19,125 +19,125 @@ Generated an empty chunk: "SBZPLPCB".
19
19
  Generated an empty chunk: "N5VNZXZB".
20
20
  Generated an empty chunk: "CA6UC3D3".
21
21
  Generated an empty chunk: "ZCFXJFGI".
22
- ESM dist/upgrade/index.js 475.00 B
23
- ESM dist/role-management/types.js 143.00 B
22
+ ESM dist/upgrade/index.js 521.00 B
23
+ ESM dist/wire/index.js 316.00 B
24
24
  ESM dist/role-management/index.js 932.00 B
25
25
  ESM dist/role-management/schemata.js 738.00 B
26
- ESM dist/upgrade/types.js 450.00 B
26
+ ESM dist/role-management/types.js 143.00 B
27
+ ESM dist/upgrade/types.js 496.00 B
27
28
  ESM dist/wire/schemata.js 297.00 B
29
+ ESM dist/index.js 3.00 KB
28
30
  ESM dist/SBZPLPCB.js 74.00 B
29
- ESM dist/wire/index.js 316.00 B
30
- ESM dist/index.js 2.96 KB
31
- ESM dist/JBKF52KU.js 4.81 KB
32
31
  ESM dist/JSK5QSWJ.js 392.00 B
33
- ESM dist/deploy/artifact.js 394.00 B
34
32
  ESM dist/N5VNZXZB.js 74.00 B
35
33
  ESM dist/I5L5NLZY.js 1.88 KB
34
+ ESM dist/deploy/artifact.js 394.00 B
36
35
  ESM dist/deploy/factoryInterfaces.js 370.00 B
36
+ ESM dist/JBKF52KU.js 4.81 KB
37
37
  ESM dist/deploy/index.js 1.61 KB
38
38
  ESM dist/CA6UC3D3.js 74.00 B
39
39
  ESM dist/deploy/resourceBuilder.js 168.00 B
40
40
  ESM dist/RYSOAAMJ.js 5.67 KB
41
- ESM dist/deploy/resources.js 657.00 B
42
41
  ESM dist/3BD3OCGS.js 1.19 KB
43
- ESM dist/deploy/workflow.js 539.00 B
42
+ ESM dist/deploy/resources.js 657.00 B
43
+ ESM dist/MKV6NR6C.js 3.99 KB
44
44
  ESM dist/ZCFXJFGI.js 74.00 B
45
- ESM dist/46VB3YIH.js 2.66 KB
46
- ESM dist/IUFXXZ2R.js 3.99 KB
45
+ ESM dist/BZJPR5LC.js 4.09 KB
46
+ ESM dist/deploy/workflow.js 539.00 B
47
47
  ESM dist/3CKHMU36.js 3.07 KB
48
+ ESM dist/7MOCL6HP.js 2.24 KB
48
49
  ESM dist/role-management/generator.js 224.00 B
49
- ESM dist/VUOMXK5T.js 222.00 B
50
50
  ESM dist/45LWGDPP.js 774.00 B
51
- ESM dist/7MOCL6HP.js 2.24 KB
51
+ ESM dist/VUOMXK5T.js 222.00 B
52
52
  ESM dist/upgrade/index.js.map 69.00 B
53
- ESM dist/role-management/types.js.map 69.00 B
53
+ ESM dist/wire/index.js.map 69.00 B
54
54
  ESM dist/role-management/index.js.map 69.00 B
55
55
  ESM dist/role-management/schemata.js.map 72.00 B
56
+ ESM dist/role-management/types.js.map 69.00 B
56
57
  ESM dist/upgrade/types.js.map 69.00 B
57
58
  ESM dist/wire/schemata.js.map 72.00 B
58
- ESM dist/wire/index.js.map 69.00 B
59
- ESM dist/SBZPLPCB.js.map 72.00 B
60
59
  ESM dist/index.js.map 69.00 B
60
+ ESM dist/SBZPLPCB.js.map 72.00 B
61
61
  ESM dist/JSK5QSWJ.js.map 343.00 B
62
- ESM dist/deploy/artifact.js.map 72.00 B
63
- ESM dist/JBKF52KU.js.map 10.80 KB
64
62
  ESM dist/N5VNZXZB.js.map 72.00 B
65
- ESM dist/deploy/index.js.map 69.00 B
66
63
  ESM dist/I5L5NLZY.js.map 4.72 KB
64
+ ESM dist/deploy/artifact.js.map 72.00 B
67
65
  ESM dist/deploy/factoryInterfaces.js.map 81.00 B
66
+ ESM dist/JBKF52KU.js.map 10.80 KB
67
+ ESM dist/deploy/index.js.map 69.00 B
68
68
  ESM dist/CA6UC3D3.js.map 72.00 B
69
- ESM dist/RYSOAAMJ.js.map 13.78 KB
70
69
  ESM dist/deploy/resourceBuilder.js.map 79.00 B
71
- ESM dist/deploy/resources.js.map 73.00 B
70
+ ESM dist/RYSOAAMJ.js.map 13.78 KB
72
71
  ESM dist/3BD3OCGS.js.map 4.02 KB
72
+ ESM dist/deploy/resources.js.map 73.00 B
73
+ ESM dist/MKV6NR6C.js.map 12.60 KB
74
+ ESM dist/ZCFXJFGI.js.map 72.00 B
75
+ ESM dist/BZJPR5LC.js.map 9.27 KB
73
76
  ESM dist/deploy/workflow.js.map 72.00 B
74
- ESM dist/46VB3YIH.js.map 6.22 KB
75
- ESM dist/IUFXXZ2R.js.map 12.60 KB
76
- ESM dist/role-management/generator.js.map 73.00 B
77
77
  ESM dist/3CKHMU36.js.map 9.28 KB
78
- ESM dist/VUOMXK5T.js.map 72.00 B
79
- ESM dist/45LWGDPP.js.map 1.18 KB
80
78
  ESM dist/7MOCL6HP.js.map 5.83 KB
81
- ESM dist/ZCFXJFGI.js.map 72.00 B
82
- ESM ⚡️ Build success in 443ms
83
- CJS dist/index.cjs 13.79 KB
84
- CJS dist/wire/index.cjs 1.01 KB
79
+ ESM dist/role-management/generator.js.map 73.00 B
80
+ ESM dist/45LWGDPP.js.map 1.18 KB
81
+ ESM dist/VUOMXK5T.js.map 72.00 B
82
+ ESM ⚡️ Build success in 561ms
83
+ CJS dist/index.cjs 14.10 KB
85
84
  CJS dist/deploy/artifact.cjs 1.58 KB
86
85
  CJS dist/role-management/generator.cjs 658.00 B
87
- CJS dist/wire/schemata.cjs 1010.00 B
88
86
  CJS dist/3QBHS4UZ.cjs 90.00 B
87
+ CJS dist/5AQDLSY6.cjs 6.35 KB
89
88
  CJS dist/X7GZKVDG.cjs 425.00 B
90
89
  CJS dist/X4ZNR5GZ.cjs 90.00 B
90
+ CJS dist/QLEJL4UB.cjs 2.35 KB
91
91
  CJS dist/deploy/factoryInterfaces.cjs 1.17 KB
92
+ CJS dist/deploy/index.cjs 7.21 KB
92
93
  CJS dist/NCHH4VK3.cjs 90.00 B
93
- CJS dist/deploy/index.cjs 7.20 KB
94
- CJS dist/QLEJL4UB.cjs 2.35 KB
95
- CJS dist/5AQDLSY6.cjs 6.35 KB
96
- CJS dist/deploy/resourceBuilder.cjs 330.00 B
97
94
  CJS dist/KOUHMVGI.cjs 7.17 KB
98
- CJS dist/deploy/resources.cjs 2.64 KB
95
+ CJS dist/deploy/resourceBuilder.cjs 330.00 B
96
+ CJS dist/deploy/resources.cjs 2.66 KB
99
97
  CJS dist/ECJRGALM.cjs 1.31 KB
98
+ CJS dist/5HUE42Q5.cjs 5.21 KB
100
99
  CJS dist/IN5O3BJZ.cjs 90.00 B
101
- CJS dist/PUY2AOFE.cjs 5.21 KB
102
- CJS dist/S5CHYZ3I.cjs 3.48 KB
103
100
  CJS dist/deploy/workflow.cjs 2.05 KB
101
+ CJS dist/JRNCOEFO.cjs 5.03 KB
104
102
  CJS dist/7W7RMRK7.cjs 3.76 KB
105
103
  CJS dist/6G3GY5VH.cjs 2.83 KB
106
104
  CJS dist/ONIG6I4S.cjs 943.00 B
107
105
  CJS dist/YJF4D23A.cjs 245.00 B
108
- CJS dist/upgrade/types.cjs 2.39 KB
109
106
  CJS dist/role-management/index.cjs 3.58 KB
110
- CJS dist/role-management/types.cjs 300.00 B
111
107
  CJS dist/role-management/schemata.cjs 2.86 KB
112
- CJS dist/upgrade/index.cjs 2.41 KB
108
+ CJS dist/role-management/types.cjs 300.00 B
109
+ CJS dist/upgrade/index.cjs 2.70 KB
110
+ CJS dist/upgrade/types.cjs 2.68 KB
111
+ CJS dist/wire/index.cjs 1.01 KB
112
+ CJS dist/wire/schemata.cjs 1010.00 B
113
113
  CJS dist/index.cjs.map 70.00 B
114
- CJS dist/wire/index.cjs.map 70.00 B
115
114
  CJS dist/deploy/artifact.cjs.map 73.00 B
116
115
  CJS dist/role-management/generator.cjs.map 74.00 B
117
- CJS dist/wire/schemata.cjs.map 73.00 B
118
116
  CJS dist/3QBHS4UZ.cjs.map 73.00 B
117
+ CJS dist/5AQDLSY6.cjs.map 10.84 KB
119
118
  CJS dist/X7GZKVDG.cjs.map 346.00 B
120
119
  CJS dist/X4ZNR5GZ.cjs.map 73.00 B
120
+ CJS dist/QLEJL4UB.cjs.map 4.73 KB
121
121
  CJS dist/deploy/factoryInterfaces.cjs.map 82.00 B
122
122
  CJS dist/deploy/index.cjs.map 70.00 B
123
- CJS dist/QLEJL4UB.cjs.map 4.73 KB
124
- CJS dist/deploy/resourceBuilder.cjs.map 80.00 B
125
- CJS dist/5AQDLSY6.cjs.map 10.84 KB
123
+ CJS dist/NCHH4VK3.cjs.map 73.00 B
126
124
  CJS dist/KOUHMVGI.cjs.map 13.88 KB
125
+ CJS dist/deploy/resourceBuilder.cjs.map 80.00 B
126
+ CJS dist/deploy/resources.cjs.map 74.00 B
127
127
  CJS dist/ECJRGALM.cjs.map 4.04 KB
128
+ CJS dist/5HUE42Q5.cjs.map 12.65 KB
128
129
  CJS dist/IN5O3BJZ.cjs.map 73.00 B
129
- CJS dist/deploy/resources.cjs.map 74.00 B
130
- CJS dist/PUY2AOFE.cjs.map 12.65 KB
131
130
  CJS dist/deploy/workflow.cjs.map 73.00 B
132
- CJS dist/S5CHYZ3I.cjs.map 6.26 KB
133
- CJS dist/ONIG6I4S.cjs.map 1.20 KB
131
+ CJS dist/JRNCOEFO.cjs.map 9.31 KB
134
132
  CJS dist/7W7RMRK7.cjs.map 9.29 KB
135
133
  CJS dist/6G3GY5VH.cjs.map 5.84 KB
134
+ CJS dist/ONIG6I4S.cjs.map 1.20 KB
136
135
  CJS dist/YJF4D23A.cjs.map 73.00 B
137
- CJS dist/NCHH4VK3.cjs.map 73.00 B
138
- CJS dist/upgrade/types.cjs.map 70.00 B
139
- CJS dist/upgrade/index.cjs.map 70.00 B
140
- CJS dist/role-management/types.cjs.map 70.00 B
141
136
  CJS dist/role-management/index.cjs.map 70.00 B
142
137
  CJS dist/role-management/schemata.cjs.map 73.00 B
143
- CJS ⚡️ Build success in 445ms
138
+ CJS dist/role-management/types.cjs.map 70.00 B
139
+ CJS dist/upgrade/index.cjs.map 70.00 B
140
+ CJS dist/upgrade/types.cjs.map 70.00 B
141
+ CJS dist/wire/index.cjs.map 70.00 B
142
+ CJS dist/wire/schemata.cjs.map 73.00 B
143
+ CJS ⚡️ Build success in 567ms
@@ -2,7 +2,7 @@
2
2
  > @layerzerolabs/dw-model@0.0.0 lint /home/runner/work/monorepo-internal/monorepo-internal/packages/dw-model
3
3
  > eslint . --max-warnings 0 || (eslint . --fix --max-warnings 0 && false)
4
4
 
5
- (node:225929) [MODULE_TYPELESS_PACKAGE_JSON] Warning: Module type of file:///home/runner/work/monorepo-internal/monorepo-internal/eslint.config.js?mtime=1772645192265 is not specified and it doesn't parse as CommonJS.
5
+ (node:44171) [MODULE_TYPELESS_PACKAGE_JSON] Warning: Module type of file:///home/runner/work/monorepo-internal/monorepo-internal/eslint.config.js?mtime=1772821610321 is not specified and it doesn't parse as CommonJS.
6
6
  Reparsing as ES module because module syntax was detected. This incurs a performance overhead.
7
7
  To eliminate this warning, add "type": "module" to /home/runner/work/monorepo-internal/monorepo-internal/package.json.
8
8
  (Use `node --trace-warnings ...` to show where the warning was created)
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var S5CHYZ3I_cjs = require('./S5CHYZ3I.cjs');
3
+ var JRNCOEFO_cjs = require('./JRNCOEFO.cjs');
4
4
  var YJF4D23A_cjs = require('./YJF4D23A.cjs');
5
5
  var z = require('zod');
6
6
  var commonChainModel = require('@layerzerolabs/common-chain-model');
@@ -24,7 +24,7 @@ var baseContractResourceSchema = z__default.default.object({
24
24
  ...baseResourceSchema.shape,
25
25
  resourceBaseType: z__default.default.literal("CONTRACT"),
26
26
  chainName: z__default.default.enum(layerzeroDefinitions.ChainName),
27
- upgradeConfig: S5CHYZ3I_cjs.upgradeableConfigSchema.optional(),
27
+ upgradeConfig: JRNCOEFO_cjs.upgradeableConfigSchema.optional(),
28
28
  verifyContract: z__default.default.boolean().optional(),
29
29
  chainConfig: z__default.default.any().optional()
30
30
  });
@@ -82,5 +82,5 @@ exports.meshResourceReferenceSchemaFor = meshResourceReferenceSchemaFor;
82
82
  exports.resolvedContractResourceReferenceSchema = resolvedContractResourceReferenceSchema;
83
83
  exports.resolvedMeshResourceReferenceSchema = resolvedMeshResourceReferenceSchema;
84
84
  exports.withIntrinsicAddress = withIntrinsicAddress;
85
- //# sourceMappingURL=PUY2AOFE.cjs.map
86
- //# sourceMappingURL=PUY2AOFE.cjs.map
85
+ //# sourceMappingURL=5HUE42Q5.cjs.map
86
+ //# sourceMappingURL=5HUE42Q5.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/deploy/resources.ts"],"names":["baseResourceSchema","z","object","id","string","name","optional","resourceBaseType","baseMeshResourceSchema","shape","literal","baseContractResourceSchema","chainName","enum","ChainName","upgradeConfig","upgradeableConfigSchema","verifyContract","boolean","chainConfig","any","withIntrinsicAddress","__name","resourceSchema","_INTRINSIC_normalizedAddress","normalizedHexSchema","extractIdFromContractResourceReference","ref","startsWith","slice","length","throwError","JSON","stringify","contractResourceReferenceSchema","meta","title","description","contractResourceDependencyForSchemaZodMetaIdIdx","contractResourceReferenceSchemaFor","_resource","resolvedContractResourceReferenceSchema","custom","meshResourceReferenceSchema","meshResourceDependencyForSchemaZodMetaIdIdx","meshResourceReferenceSchemaFor","extractIdFromMeshResourceReference","resolvedMeshResourceReferenceSchema","extractContractResourceReferences","resource","Object","entries","filter","extractMeshResourceReferences","createResolvedResourceSchema"],"mappings":"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","file":"PUY2AOFE.cjs","sourcesContent":["import z from 'zod';\n\nimport { normalizedHexSchema, type NormalizedHexString } from '@layerzerolabs/common-chain-model';\nimport { throwError } from '@layerzerolabs/common-error-utils';\nimport { ChainName } from '@layerzerolabs/layerzero-definitions';\nimport type { IsAny } from '@layerzerolabs/typescript-utils';\n\nimport { upgradeableConfigSchema } from '../upgrade';\n\nexport const baseResourceSchema = z.object({\n id: z.string(), // account-unique ID for this resource\n name: z.string().optional(), // display name for this resource\n resourceBaseType: z.string() as z.ZodString | z.ZodLiteral,\n});\n\nexport const baseMeshResourceSchema = z.object({\n ...baseResourceSchema.shape,\n resourceBaseType: z.literal('MESH'),\n});\n\nexport const baseContractResourceSchema = z.object({\n ...baseResourceSchema.shape,\n resourceBaseType: z.literal('CONTRACT'),\n chainName: z.enum(ChainName),\n upgradeConfig: upgradeableConfigSchema.optional(),\n verifyContract: z.boolean().optional(),\n\n chainConfig: z.any().optional(),\n});\n\nexport const withIntrinsicAddress = <T extends typeof baseContractResourceSchema>(\n resourceSchema: T,\n) =>\n z.object({\n ...resourceSchema.shape,\n _INTRINSIC_normalizedAddress: normalizedHexSchema,\n }) as z.ZodObject<\n T['shape'] & { _INTRINSIC_normalizedAddress: typeof normalizedHexSchema },\n z.core.$strip\n >;\n\nexport type BaseResource = z.infer<typeof baseResourceSchema>;\nexport type BaseMeshResource = z.infer<typeof baseMeshResourceSchema>;\nexport type BaseContractResource = z.infer<typeof baseContractResourceSchema>;\nexport type BaseIntrinsicAddressContractResource = z.infer<ReturnType<typeof withIntrinsicAddress>>;\n\n// the actual expected runtime value for this type is #C_REF:${id}\nexport type ContractResourceReference<T extends BaseContractResource = BaseContractResource> = {\n /** WARNING: these fields are not present at runtime */\n __resourceReferenceType: T;\n ['__CONTRACT_RESOURCE_REFERENCE']: true;\n};\n\nexport const extractIdFromContractResourceReference = (ref: ContractResourceReference) =>\n ((ref as unknown as string).startsWith('#C_REF:') &&\n (ref as unknown as string).slice('#C_REF:'.length)) ||\n throwError(`Ref ${JSON.stringify(ref)} is not a contract resource ref`);\n\n// use z.ZodType<BaseContractResource> because want to allow unions\nexport type ContractResourceReferenceSchema<T extends z.ZodType<BaseContractResource>> = z.ZodType<\n ContractResourceReference<z.infer<T>>\n>;\n\nexport const contractResourceReferenceSchema: ContractResourceReferenceSchema<\n z.ZodType<BaseContractResource>\n // at runtime, we expect a string\n> = z.string().meta({\n id: 'contract-resource-dependency',\n title: 'Contract dependency to any',\n description: 'A reference to another contract resource (any)',\n}) as unknown as z.ZodType<ContractResourceReference>;\n\nlet contractResourceDependencyForSchemaZodMetaIdIdx = 0;\nexport const contractResourceReferenceSchemaFor = <T extends z.ZodType<BaseContractResource>>(\n // FIXME use this to generate a real schema\n _resource: T,\n): ContractResourceReferenceSchema<T> =>\n z.string().meta({\n id: `contract-resource-dependency-for-${++contractResourceDependencyForSchemaZodMetaIdIdx}`,\n // we can't generate this properly yet because this function needs more information\n // will be fixed when we clean up the runtime of dependencies id\n title: 'Contract dependency to (unknown)',\n description: 'A reference to another contract resource (unknown)',\n }) as unknown as z.ZodType<ContractResourceReference<z.infer<T>>>;\n\nexport type ResolvedContractResourceReference<T extends BaseContractResource> = {\n id: string;\n resource: T;\n address: NormalizedHexString;\n};\n\nexport type ResolvedContractResourceReferenceSchema<T extends z.ZodType<BaseContractResource>> =\n z.ZodType<ResolvedContractResourceReference<z.infer<T>>>;\n\nexport const resolvedContractResourceReferenceSchema: ResolvedContractResourceReferenceSchema<any> =\n // FIXME could be a real schema\n z.custom<ResolvedContractResourceReference<any>>();\n\n// the actual expected runtime value for this type is #M_REF:${id}\nexport type MeshResourceReference<T extends BaseMeshResource = BaseMeshResource> = {\n /** WARNING: these fields are not present at runtime */\n __resourceReferenceType: T;\n ['__MESH_RESOURCE_REFERENCE']: true;\n};\n\nexport type MeshResourceReferenceSchema<T extends typeof baseMeshResourceSchema> = z.ZodType<\n MeshResourceReference<z.infer<T>>\n>;\n\nexport const meshResourceReferenceSchema: MeshResourceReferenceSchema<\n typeof baseMeshResourceSchema\n> = z.string().meta({\n id: 'mesh-resource-dependency',\n title: 'Mesh dependency to any',\n description: 'A reference to another mesh resource (any)',\n}) as unknown as z.ZodType<MeshResourceReference>;\n\nlet meshResourceDependencyForSchemaZodMetaIdIdx = 0;\nexport const meshResourceReferenceSchemaFor = <T extends typeof baseMeshResourceSchema>(\n // FIXME use this to generate a real schema\n _resource: T,\n): MeshResourceReferenceSchema<T> =>\n z.string().meta({\n id: `mesh-resource-dependency-for-${++meshResourceDependencyForSchemaZodMetaIdIdx}`,\n title: 'Mesh dependency to (unknown)',\n description: 'A reference to another mesh resource (unknown)',\n }) as unknown as z.ZodType<MeshResourceReference<z.infer<T>>>;\n\nexport type ResolvedMeshResourceReference<T extends BaseMeshResource> = {\n id: string;\n resource: T;\n // TODO: is there any other resolved information we want to inject here?\n};\n\nexport const extractIdFromMeshResourceReference = (ref: MeshResourceReference) =>\n ((ref as unknown as string).startsWith('#M_REF:') &&\n (ref as unknown as string).slice('#M_REF:'.length)) ||\n throwError(`Ref ${JSON.stringify(ref)} is not a mesh resource ref`);\n\nexport type ResolvedMeshResourceReferenceSchema<T extends typeof baseMeshResourceSchema> =\n // FIXME could be a real schema\n z.ZodType<ResolvedMeshResourceReference<z.infer<T>>>;\n\nexport const resolvedMeshResourceReferenceSchema: ResolvedMeshResourceReferenceSchema<any> =\n z.custom<ResolvedMeshResourceReference<any>>();\n\nexport type ResolvedResourceSchema<Resource extends typeof baseResourceSchema> = z.ZodObject<\n {\n [K in Exclude<\n keyof Resource['shape'],\n '_INTRINSIC_normalizedAddress'\n >]: Resource['shape'][K] extends infer R extends z.ZodType\n ? R extends z.ZodAny\n ? R\n : R extends z.ZodOptional<z.ZodAny>\n ? R\n : R extends ContractResourceReferenceSchema<infer I>\n ? ResolvedContractResourceReferenceSchema<I>\n : R extends z.ZodOptional<ContractResourceReferenceSchema<infer I>>\n ? z.ZodOptional<ResolvedContractResourceReferenceSchema<I>>\n : R extends MeshResourceReferenceSchema<infer I>\n ? ResolvedMeshResourceReferenceSchema<I>\n : R extends z.ZodOptional<MeshResourceReferenceSchema<infer I>>\n ? z.ZodOptional<ResolvedMeshResourceReferenceSchema<I>>\n : R\n : never;\n },\n z.core.$strip\n>;\n\nexport type ResolvedResource<Resource extends BaseResource> = {\n [K in Exclude<keyof Resource, '_INTRINSIC_normalizedAddress'>]: Resource[K] extends infer R\n ? R extends undefined\n ? R\n : IsAny<R> extends true\n ? R\n : IsAny<Exclude<R, undefined>> extends true\n ? R\n : R extends ContractResourceReference<infer I>\n ? ResolvedContractResourceReference<I>\n : R extends ContractResourceReference<infer I> | undefined\n ? ResolvedContractResourceReference<I> | undefined\n : R extends MeshResourceReference<infer I>\n ? ResolvedMeshResourceReference<I>\n : R extends MeshResourceReference<infer I> | undefined\n ? ResolvedMeshResourceReference<I> | undefined\n : R\n : never;\n};\n\nexport const extractContractResourceReferences = <Resource extends BaseResource>(\n resource: Resource,\n) =>\n Object.entries(resource).filter(\n ([, id]) => typeof id === 'string' && id.startsWith('#C_REF:'),\n ) as unknown as [prop: string, id: ContractResourceReference][];\n\nexport const extractMeshResourceReferences = <Resource extends BaseResource>(resource: Resource) =>\n Object.entries(resource).filter(\n ([, id]) => typeof id === 'string' && id.startsWith('#M_REF:'),\n ) as unknown as [prop: string, id: MeshResourceReference][];\n\n// FIXME implement runtime\nexport const createResolvedResourceSchema = <Resource extends typeof baseResourceSchema>(\n resource: Resource,\n) => resource as ResolvedResourceSchema<Resource>;\n"]}
1
+ {"version":3,"sources":["../src/deploy/resources.ts"],"names":["baseResourceSchema","z","object","id","string","name","optional","resourceBaseType","baseMeshResourceSchema","shape","literal","baseContractResourceSchema","chainName","enum","ChainName","upgradeConfig","upgradeableConfigSchema","verifyContract","boolean","chainConfig","any","withIntrinsicAddress","__name","resourceSchema","_INTRINSIC_normalizedAddress","normalizedHexSchema","extractIdFromContractResourceReference","ref","startsWith","slice","length","throwError","JSON","stringify","contractResourceReferenceSchema","meta","title","description","contractResourceDependencyForSchemaZodMetaIdIdx","contractResourceReferenceSchemaFor","_resource","resolvedContractResourceReferenceSchema","custom","meshResourceReferenceSchema","meshResourceDependencyForSchemaZodMetaIdIdx","meshResourceReferenceSchemaFor","extractIdFromMeshResourceReference","resolvedMeshResourceReferenceSchema","extractContractResourceReferences","resource","Object","entries","filter","extractMeshResourceReferences","createResolvedResourceSchema"],"mappings":"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","file":"5HUE42Q5.cjs","sourcesContent":["import z from 'zod';\n\nimport { normalizedHexSchema, type NormalizedHexString } from '@layerzerolabs/common-chain-model';\nimport { throwError } from '@layerzerolabs/common-error-utils';\nimport { ChainName } from '@layerzerolabs/layerzero-definitions';\nimport type { IsAny } from '@layerzerolabs/typescript-utils';\n\nimport { upgradeableConfigSchema } from '../upgrade';\n\nexport const baseResourceSchema = z.object({\n id: z.string(), // account-unique ID for this resource\n name: z.string().optional(), // display name for this resource\n resourceBaseType: z.string() as z.ZodString | z.ZodLiteral,\n});\n\nexport const baseMeshResourceSchema = z.object({\n ...baseResourceSchema.shape,\n resourceBaseType: z.literal('MESH'),\n});\n\nexport const baseContractResourceSchema = z.object({\n ...baseResourceSchema.shape,\n resourceBaseType: z.literal('CONTRACT'),\n chainName: z.enum(ChainName),\n upgradeConfig: upgradeableConfigSchema.optional(),\n verifyContract: z.boolean().optional(),\n\n chainConfig: z.any().optional(),\n});\n\nexport const withIntrinsicAddress = <T extends typeof baseContractResourceSchema>(\n resourceSchema: T,\n) =>\n z.object({\n ...resourceSchema.shape,\n _INTRINSIC_normalizedAddress: normalizedHexSchema,\n }) as z.ZodObject<\n T['shape'] & { _INTRINSIC_normalizedAddress: typeof normalizedHexSchema },\n z.core.$strip\n >;\n\nexport type BaseResource = z.infer<typeof baseResourceSchema>;\nexport type BaseMeshResource = z.infer<typeof baseMeshResourceSchema>;\nexport type BaseContractResource = z.infer<typeof baseContractResourceSchema>;\nexport type BaseIntrinsicAddressContractResource = z.infer<ReturnType<typeof withIntrinsicAddress>>;\n\n// the actual expected runtime value for this type is #C_REF:${id}\nexport type ContractResourceReference<T extends BaseContractResource = BaseContractResource> = {\n /** WARNING: these fields are not present at runtime */\n __resourceReferenceType: T;\n ['__CONTRACT_RESOURCE_REFERENCE']: true;\n};\n\nexport const extractIdFromContractResourceReference = (ref: ContractResourceReference) =>\n ((ref as unknown as string).startsWith('#C_REF:') &&\n (ref as unknown as string).slice('#C_REF:'.length)) ||\n throwError(`Ref ${JSON.stringify(ref)} is not a contract resource ref`);\n\n// use z.ZodType<BaseContractResource> because want to allow unions\nexport type ContractResourceReferenceSchema<T extends z.ZodType<BaseContractResource>> = z.ZodType<\n ContractResourceReference<z.infer<T>>\n>;\n\nexport const contractResourceReferenceSchema: ContractResourceReferenceSchema<\n z.ZodType<BaseContractResource>\n // at runtime, we expect a string\n> = z.string().meta({\n id: 'contract-resource-dependency',\n title: 'Contract dependency to any',\n description: 'A reference to another contract resource (any)',\n}) as unknown as z.ZodType<ContractResourceReference>;\n\nlet contractResourceDependencyForSchemaZodMetaIdIdx = 0;\nexport const contractResourceReferenceSchemaFor = <T extends z.ZodType<BaseContractResource>>(\n // FIXME use this to generate a real schema\n _resource: T,\n): ContractResourceReferenceSchema<T> =>\n z.string().meta({\n id: `contract-resource-dependency-for-${++contractResourceDependencyForSchemaZodMetaIdIdx}`,\n // we can't generate this properly yet because this function needs more information\n // will be fixed when we clean up the runtime of dependencies id\n title: 'Contract dependency to (unknown)',\n description: 'A reference to another contract resource (unknown)',\n }) as unknown as z.ZodType<ContractResourceReference<z.infer<T>>>;\n\nexport type ResolvedContractResourceReference<T extends BaseContractResource> = {\n id: string;\n resource: T;\n address: NormalizedHexString;\n};\n\nexport type ResolvedContractResourceReferenceSchema<T extends z.ZodType<BaseContractResource>> =\n z.ZodType<ResolvedContractResourceReference<z.infer<T>>>;\n\nexport const resolvedContractResourceReferenceSchema: ResolvedContractResourceReferenceSchema<any> =\n // FIXME could be a real schema\n z.custom<ResolvedContractResourceReference<any>>();\n\n// the actual expected runtime value for this type is #M_REF:${id}\nexport type MeshResourceReference<T extends BaseMeshResource = BaseMeshResource> = {\n /** WARNING: these fields are not present at runtime */\n __resourceReferenceType: T;\n ['__MESH_RESOURCE_REFERENCE']: true;\n};\n\nexport type MeshResourceReferenceSchema<T extends typeof baseMeshResourceSchema> = z.ZodType<\n MeshResourceReference<z.infer<T>>\n>;\n\nexport const meshResourceReferenceSchema: MeshResourceReferenceSchema<\n typeof baseMeshResourceSchema\n> = z.string().meta({\n id: 'mesh-resource-dependency',\n title: 'Mesh dependency to any',\n description: 'A reference to another mesh resource (any)',\n}) as unknown as z.ZodType<MeshResourceReference>;\n\nlet meshResourceDependencyForSchemaZodMetaIdIdx = 0;\nexport const meshResourceReferenceSchemaFor = <T extends typeof baseMeshResourceSchema>(\n // FIXME use this to generate a real schema\n _resource: T,\n): MeshResourceReferenceSchema<T> =>\n z.string().meta({\n id: `mesh-resource-dependency-for-${++meshResourceDependencyForSchemaZodMetaIdIdx}`,\n title: 'Mesh dependency to (unknown)',\n description: 'A reference to another mesh resource (unknown)',\n }) as unknown as z.ZodType<MeshResourceReference<z.infer<T>>>;\n\nexport type ResolvedMeshResourceReference<T extends BaseMeshResource> = {\n id: string;\n resource: T;\n // TODO: is there any other resolved information we want to inject here?\n};\n\nexport const extractIdFromMeshResourceReference = (ref: MeshResourceReference) =>\n ((ref as unknown as string).startsWith('#M_REF:') &&\n (ref as unknown as string).slice('#M_REF:'.length)) ||\n throwError(`Ref ${JSON.stringify(ref)} is not a mesh resource ref`);\n\nexport type ResolvedMeshResourceReferenceSchema<T extends typeof baseMeshResourceSchema> =\n // FIXME could be a real schema\n z.ZodType<ResolvedMeshResourceReference<z.infer<T>>>;\n\nexport const resolvedMeshResourceReferenceSchema: ResolvedMeshResourceReferenceSchema<any> =\n z.custom<ResolvedMeshResourceReference<any>>();\n\nexport type ResolvedResourceSchema<Resource extends typeof baseResourceSchema> = z.ZodObject<\n {\n [K in Exclude<\n keyof Resource['shape'],\n '_INTRINSIC_normalizedAddress'\n >]: Resource['shape'][K] extends infer R extends z.ZodType\n ? R extends z.ZodAny\n ? R\n : R extends z.ZodOptional<z.ZodAny>\n ? R\n : R extends ContractResourceReferenceSchema<infer I>\n ? ResolvedContractResourceReferenceSchema<I>\n : R extends z.ZodOptional<ContractResourceReferenceSchema<infer I>>\n ? z.ZodOptional<ResolvedContractResourceReferenceSchema<I>>\n : R extends MeshResourceReferenceSchema<infer I>\n ? ResolvedMeshResourceReferenceSchema<I>\n : R extends z.ZodOptional<MeshResourceReferenceSchema<infer I>>\n ? z.ZodOptional<ResolvedMeshResourceReferenceSchema<I>>\n : R\n : never;\n },\n z.core.$strip\n>;\n\nexport type ResolvedResource<Resource extends BaseResource> = {\n [K in Exclude<keyof Resource, '_INTRINSIC_normalizedAddress'>]: Resource[K] extends infer R\n ? R extends undefined\n ? R\n : IsAny<R> extends true\n ? R\n : IsAny<Exclude<R, undefined>> extends true\n ? R\n : R extends ContractResourceReference<infer I>\n ? ResolvedContractResourceReference<I>\n : R extends ContractResourceReference<infer I> | undefined\n ? ResolvedContractResourceReference<I> | undefined\n : R extends MeshResourceReference<infer I>\n ? ResolvedMeshResourceReference<I>\n : R extends MeshResourceReference<infer I> | undefined\n ? ResolvedMeshResourceReference<I> | undefined\n : R\n : never;\n};\n\nexport const extractContractResourceReferences = <Resource extends BaseResource>(\n resource: Resource,\n) =>\n Object.entries(resource).filter(\n ([, id]) => typeof id === 'string' && id.startsWith('#C_REF:'),\n ) as unknown as [prop: string, id: ContractResourceReference][];\n\nexport const extractMeshResourceReferences = <Resource extends BaseResource>(resource: Resource) =>\n Object.entries(resource).filter(\n ([, id]) => typeof id === 'string' && id.startsWith('#M_REF:'),\n ) as unknown as [prop: string, id: MeshResourceReference][];\n\n// FIXME implement runtime\nexport const createResolvedResourceSchema = <Resource extends typeof baseResourceSchema>(\n resource: Resource,\n) => resource as ResolvedResourceSchema<Resource>;\n"]}
@@ -1,9 +1,12 @@
1
1
  import { __name } from './VUOMXK5T.js';
2
2
  import z from 'zod';
3
- import { decimalStringSchema, hexSchema } from '@layerzerolabs/common-chain-model';
3
+ import { hexSchema, decimalStringSchema } from '@layerzerolabs/common-chain-model';
4
+ import { assertUnreachable, NonRetryableError } from '@layerzerolabs/common-error-utils';
4
5
 
5
6
  var initializeDataResultSchema = z.object({
7
+ /** Encoded initialization data (e.g., encodeFunctionData for initialize(...)) */
6
8
  data: hexSchema,
9
+ /** Optional gas limit override for the initialization transaction */
7
10
  gasLimit: decimalStringSchema.optional()
8
11
  });
9
12
  var UpgradeType = /* @__PURE__ */ (function(UpgradeType2) {
@@ -56,7 +59,36 @@ var upgradeableConfigSchema = z.discriminatedUnion("upgradeType", [
56
59
  notUpgradeableConfigSchema,
57
60
  codeUpgradeableConfigSchema
58
61
  ]);
62
+ var weakAssertUpgradability = /* @__PURE__ */ __name((allowedUpgradeConfigs, upgradeableConfig) => {
63
+ if (!upgradeableConfig) {
64
+ return;
65
+ }
66
+ if (allowedUpgradeConfigs.some((allowedConfig) => {
67
+ if (allowedConfig.upgradeType !== upgradeableConfig.upgradeType) {
68
+ return false;
69
+ }
70
+ if (allowedConfig.upgradeType === "NOT_UPGRADEABLE") {
71
+ return true;
72
+ }
73
+ if (allowedConfig.upgradeType === "CODE_UPGRADE") {
74
+ return true;
75
+ }
76
+ if (allowedConfig.upgradeType === "PROXY") {
77
+ return allowedConfig.proxyType === upgradeableConfig.proxyType;
78
+ }
79
+ assertUnreachable(allowedConfig);
80
+ })) {
81
+ return;
82
+ }
83
+ throw new NonRetryableError(`Upgrade config ${JSON.stringify(upgradeableConfig)} is not compatible with any of the allowed upgrade configs ${JSON.stringify(allowedUpgradeConfigs)}`);
84
+ }, "weakAssertUpgradability");
85
+ var assertUpgradability = /* @__PURE__ */ __name((allowedUpgradeConfigs, upgradeableConfig) => {
86
+ if (!upgradeableConfig) {
87
+ throw new NonRetryableError("Will not handle undefined upgrade config");
88
+ }
89
+ return weakAssertUpgradability(allowedUpgradeConfigs, upgradeableConfig);
90
+ }, "assertUpgradability");
59
91
 
60
- export { EvmProxyType, ProxyType, SEPARATE_PROXY_ADMIN_TYPES, TUP_PROXY_TYPES, UUPS_PROXY_TYPES, UpgradeType, codeUpgradeableConfigSchema, initializeDataResultSchema, isTupProxy, isUupsProxy, notUpgradeableConfigSchema, proxyConfigSchema, proxyTypeSchema, requiresSeparateProxyAdminDeploy, upgradeTypeSchema, upgradeableConfigSchema };
61
- //# sourceMappingURL=46VB3YIH.js.map
62
- //# sourceMappingURL=46VB3YIH.js.map
92
+ export { EvmProxyType, ProxyType, SEPARATE_PROXY_ADMIN_TYPES, TUP_PROXY_TYPES, UUPS_PROXY_TYPES, UpgradeType, assertUpgradability, codeUpgradeableConfigSchema, initializeDataResultSchema, isTupProxy, isUupsProxy, notUpgradeableConfigSchema, proxyConfigSchema, proxyTypeSchema, requiresSeparateProxyAdminDeploy, upgradeTypeSchema, upgradeableConfigSchema, weakAssertUpgradability };
93
+ //# sourceMappingURL=BZJPR5LC.js.map
94
+ //# sourceMappingURL=BZJPR5LC.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/upgrade/types.ts"],"names":["initializeDataResultSchema","z","object","data","hexSchema","gasLimit","decimalStringSchema","optional","UpgradeType","EvmProxyType","UUPS_PROXY_TYPES","Set","TUP_PROXY_TYPES","SEPARATE_PROXY_ADMIN_TYPES","isUupsProxy","proxyType","has","isTupProxy","requiresSeparateProxyAdminDeploy","ProxyType","upgradeTypeSchema","enum","proxyTypeSchema","proxyConfigSchema","upgradeType","literal","notUpgradeableConfigSchema","codeUpgradeableConfigSchema","upgradeableConfigSchema","discriminatedUnion","weakAssertUpgradability","allowedUpgradeConfigs","upgradeableConfig","some","allowedConfig","assertUnreachable","NonRetryableError","JSON","stringify","assertUpgradability"],"mappings":"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","file":"BZJPR5LC.js","sourcesContent":["import z from 'zod';\n\nimport { decimalStringSchema, hexSchema } from '@layerzerolabs/common-chain-model';\nimport { assertUnreachable, NonRetryableError } from '@layerzerolabs/common-error-utils';\nimport type { Identity } from '@layerzerolabs/typescript-utils';\n\n/**\n * `InitializeDataResult` schema.\n */\nexport const initializeDataResultSchema = z.object({\n /** Encoded initialization data (e.g., encodeFunctionData for initialize(...)) */\n data: hexSchema,\n /** Optional gas limit override for the initialization transaction */\n gasLimit: decimalStringSchema.optional(),\n});\n\nexport interface InitializeDataResult\n extends Identity<z.infer<typeof initializeDataResultSchema>> {}\n\nexport enum UpgradeType {\n // This doesn't necessarily prevent the contract from being upgraded\n NOT_UPGRADEABLE = 'NOT_UPGRADEABLE',\n // Deploy a separate 'proxy' contract that will route calls to a swappable implementation\n PROXY = 'PROXY',\n // This doesn't necessarily allow the contract to be upgraded\n CODE_UPGRADE = 'CODE_UPGRADE',\n}\n\nexport enum EvmProxyType {\n // TUP v5 https://docs.openzeppelin.com/contracts/5.x/api/proxy#transparentupgradeableproxy\n TRANSPARENT_UPGRADEABLE_V5 = 'TRANSPARENT_UPGRADEABLE_V5',\n // UUPS v5 https://docs.openzeppelin.com/contracts/5.x/api/proxy#uupsupgradeable\n UNIVERSAL_UPGRADEABLE_V5 = 'UNIVERSAL_UPGRADEABLE_V5',\n // OTUP v4 https://github.com/wighawag/hardhat-deploy/blob/v0.12.1/solc_0.8/proxy/OptimizedTransparentUpgradeableProxy.sol\n OPTIMIZED_TRANSPARENT_UPGRADEABLE_V4 = 'OPTIMIZED_TRANSPARENT_UPGRADEABLE_V4',\n // TUP v4 https://docs.openzeppelin.com/contracts/4.x/api/proxy#TransparentUpgradeableProxy\n TRANSPARENT_UPGRADEABLE_V4 = 'TRANSPARENT_UPGRADEABLE_V4',\n // UUPS v4 https://docs.openzeppelin.com/contracts/4.x/api/proxy#UUPSUpgradeable\n UNIVERSAL_UPGRADEABLE_V4 = 'UNIVERSAL_UPGRADEABLE_V4',\n}\n\n/** UUPS-based proxy types (no separate `ProxyAdmin`). */\nexport const UUPS_PROXY_TYPES: ReadonlySet<EvmProxyType> = new Set([\n EvmProxyType.UNIVERSAL_UPGRADEABLE_V4,\n EvmProxyType.UNIVERSAL_UPGRADEABLE_V5,\n]);\n\n/** TUP-based proxy types (have a `ProxyAdmin` with `getOwner`/`setOwner`). */\nexport const TUP_PROXY_TYPES: ReadonlySet<EvmProxyType> = new Set([\n EvmProxyType.TRANSPARENT_UPGRADEABLE_V4,\n EvmProxyType.TRANSPARENT_UPGRADEABLE_V5,\n EvmProxyType.OPTIMIZED_TRANSPARENT_UPGRADEABLE_V4,\n]);\n\n/** Proxy types that deploy a separate `ProxyAdmin` contract (v4 variants only). */\nexport const SEPARATE_PROXY_ADMIN_TYPES: ReadonlySet<EvmProxyType> = new Set([\n EvmProxyType.TRANSPARENT_UPGRADEABLE_V4,\n EvmProxyType.OPTIMIZED_TRANSPARENT_UPGRADEABLE_V4,\n]);\n\n/** Whether the proxy type is UUPS (Universal Upgradeable Proxy Standard). */\nexport const isUupsProxy = (proxyType: EvmProxyType): boolean => UUPS_PROXY_TYPES.has(proxyType);\n\n/** Whether the proxy type is TUP (Transparent Upgradeable Proxy). */\nexport const isTupProxy = (proxyType: EvmProxyType): boolean => TUP_PROXY_TYPES.has(proxyType);\n\n/** Whether the proxy type requires a separate `ProxyAdmin` deployment (v4 variants). */\nexport const requiresSeparateProxyAdminDeploy = (proxyType: EvmProxyType): boolean =>\n SEPARATE_PROXY_ADMIN_TYPES.has(proxyType);\n\nexport const ProxyType = {\n ...EvmProxyType,\n};\n\nexport type ProxyType = (typeof ProxyType)[keyof typeof ProxyType];\n\nexport const upgradeTypeSchema = z.enum(UpgradeType);\n\nexport const proxyTypeSchema = z.enum(ProxyType);\nexport const proxyConfigSchema = z.object({\n upgradeType: z.literal(UpgradeType.PROXY),\n proxyType: proxyTypeSchema,\n});\n\nexport type ProxyUpgradeableConfig = z.infer<typeof proxyConfigSchema>;\n\nexport const notUpgradeableConfigSchema = z.object({\n upgradeType: z.literal(UpgradeType.NOT_UPGRADEABLE),\n});\n\nexport type NotUpgradeableConfig = z.infer<typeof notUpgradeableConfigSchema>;\n\nexport const codeUpgradeableConfigSchema = z.object({\n upgradeType: z.literal(UpgradeType.CODE_UPGRADE),\n});\n\nexport type CodeUpgradeableConfig = z.infer<typeof codeUpgradeableConfigSchema>;\n\nexport const upgradeableConfigSchema = z.discriminatedUnion('upgradeType', [\n proxyConfigSchema,\n notUpgradeableConfigSchema,\n codeUpgradeableConfigSchema,\n]);\n\nexport type UpgradeableConfig = z.infer<typeof upgradeableConfigSchema>;\n\n/** @deprecated use assertUpgradability, ensure your config is nonoptional */\nexport const weakAssertUpgradability = <AllowedUpgradeConfigs extends UpgradeableConfig[]>(\n allowedUpgradeConfigs: AllowedUpgradeConfigs,\n upgradeableConfig?: UpgradeableConfig,\n): asserts upgradeableConfig is AllowedUpgradeConfigs[number] => {\n if (!upgradeableConfig) {\n return;\n }\n\n if (\n allowedUpgradeConfigs.some((allowedConfig) => {\n if (allowedConfig.upgradeType !== upgradeableConfig.upgradeType) {\n return false;\n }\n\n if (allowedConfig.upgradeType === UpgradeType.NOT_UPGRADEABLE) {\n return true;\n }\n\n if (allowedConfig.upgradeType === UpgradeType.CODE_UPGRADE) {\n return true;\n }\n\n if (allowedConfig.upgradeType === UpgradeType.PROXY) {\n return (\n allowedConfig.proxyType ===\n (upgradeableConfig as ProxyUpgradeableConfig).proxyType\n );\n }\n\n assertUnreachable(allowedConfig);\n })\n ) {\n // included in allowed array\n return;\n }\n\n throw new NonRetryableError(\n `Upgrade config ${JSON.stringify(upgradeableConfig)} is not compatible with any of the allowed upgrade configs ${JSON.stringify(allowedUpgradeConfigs)}`,\n );\n};\n\nexport const assertUpgradability = <AllowedUpgradeConfigs extends UpgradeableConfig[]>(\n allowedUpgradeConfigs: AllowedUpgradeConfigs,\n // eventually make this nonoptional once callers are upgraded\n upgradeableConfig?: UpgradeableConfig,\n): asserts upgradeableConfig is AllowedUpgradeConfigs[number] => {\n if (!upgradeableConfig) {\n throw new NonRetryableError('Will not handle undefined upgrade config');\n }\n\n return weakAssertUpgradability(allowedUpgradeConfigs, upgradeableConfig);\n};\n"]}
@@ -3,13 +3,16 @@
3
3
  var YJF4D23A_cjs = require('./YJF4D23A.cjs');
4
4
  var z = require('zod');
5
5
  var commonChainModel = require('@layerzerolabs/common-chain-model');
6
+ var commonErrorUtils = require('@layerzerolabs/common-error-utils');
6
7
 
7
8
  function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
8
9
 
9
10
  var z__default = /*#__PURE__*/_interopDefault(z);
10
11
 
11
12
  var initializeDataResultSchema = z__default.default.object({
13
+ /** Encoded initialization data (e.g., encodeFunctionData for initialize(...)) */
12
14
  data: commonChainModel.hexSchema,
15
+ /** Optional gas limit override for the initialization transaction */
13
16
  gasLimit: commonChainModel.decimalStringSchema.optional()
14
17
  });
15
18
  var UpgradeType = /* @__PURE__ */ (function(UpgradeType2) {
@@ -62,6 +65,35 @@ var upgradeableConfigSchema = z__default.default.discriminatedUnion("upgradeType
62
65
  notUpgradeableConfigSchema,
63
66
  codeUpgradeableConfigSchema
64
67
  ]);
68
+ var weakAssertUpgradability = /* @__PURE__ */ YJF4D23A_cjs.__name((allowedUpgradeConfigs, upgradeableConfig) => {
69
+ if (!upgradeableConfig) {
70
+ return;
71
+ }
72
+ if (allowedUpgradeConfigs.some((allowedConfig) => {
73
+ if (allowedConfig.upgradeType !== upgradeableConfig.upgradeType) {
74
+ return false;
75
+ }
76
+ if (allowedConfig.upgradeType === "NOT_UPGRADEABLE") {
77
+ return true;
78
+ }
79
+ if (allowedConfig.upgradeType === "CODE_UPGRADE") {
80
+ return true;
81
+ }
82
+ if (allowedConfig.upgradeType === "PROXY") {
83
+ return allowedConfig.proxyType === upgradeableConfig.proxyType;
84
+ }
85
+ commonErrorUtils.assertUnreachable(allowedConfig);
86
+ })) {
87
+ return;
88
+ }
89
+ throw new commonErrorUtils.NonRetryableError(`Upgrade config ${JSON.stringify(upgradeableConfig)} is not compatible with any of the allowed upgrade configs ${JSON.stringify(allowedUpgradeConfigs)}`);
90
+ }, "weakAssertUpgradability");
91
+ var assertUpgradability = /* @__PURE__ */ YJF4D23A_cjs.__name((allowedUpgradeConfigs, upgradeableConfig) => {
92
+ if (!upgradeableConfig) {
93
+ throw new commonErrorUtils.NonRetryableError("Will not handle undefined upgrade config");
94
+ }
95
+ return weakAssertUpgradability(allowedUpgradeConfigs, upgradeableConfig);
96
+ }, "assertUpgradability");
65
97
 
66
98
  exports.EvmProxyType = EvmProxyType;
67
99
  exports.ProxyType = ProxyType;
@@ -69,6 +101,7 @@ exports.SEPARATE_PROXY_ADMIN_TYPES = SEPARATE_PROXY_ADMIN_TYPES;
69
101
  exports.TUP_PROXY_TYPES = TUP_PROXY_TYPES;
70
102
  exports.UUPS_PROXY_TYPES = UUPS_PROXY_TYPES;
71
103
  exports.UpgradeType = UpgradeType;
104
+ exports.assertUpgradability = assertUpgradability;
72
105
  exports.codeUpgradeableConfigSchema = codeUpgradeableConfigSchema;
73
106
  exports.initializeDataResultSchema = initializeDataResultSchema;
74
107
  exports.isTupProxy = isTupProxy;
@@ -79,5 +112,6 @@ exports.proxyTypeSchema = proxyTypeSchema;
79
112
  exports.requiresSeparateProxyAdminDeploy = requiresSeparateProxyAdminDeploy;
80
113
  exports.upgradeTypeSchema = upgradeTypeSchema;
81
114
  exports.upgradeableConfigSchema = upgradeableConfigSchema;
82
- //# sourceMappingURL=S5CHYZ3I.cjs.map
83
- //# sourceMappingURL=S5CHYZ3I.cjs.map
115
+ exports.weakAssertUpgradability = weakAssertUpgradability;
116
+ //# sourceMappingURL=JRNCOEFO.cjs.map
117
+ //# sourceMappingURL=JRNCOEFO.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/upgrade/types.ts"],"names":["initializeDataResultSchema","z","object","data","hexSchema","gasLimit","decimalStringSchema","optional","UpgradeType","EvmProxyType","UUPS_PROXY_TYPES","Set","TUP_PROXY_TYPES","SEPARATE_PROXY_ADMIN_TYPES","isUupsProxy","__name","proxyType","has","isTupProxy","requiresSeparateProxyAdminDeploy","ProxyType","upgradeTypeSchema","enum","proxyTypeSchema","proxyConfigSchema","upgradeType","literal","notUpgradeableConfigSchema","codeUpgradeableConfigSchema","upgradeableConfigSchema","discriminatedUnion","weakAssertUpgradability","allowedUpgradeConfigs","upgradeableConfig","some","allowedConfig","assertUnreachable","NonRetryableError","JSON","stringify","assertUpgradability"],"mappings":"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","file":"JRNCOEFO.cjs","sourcesContent":["import z from 'zod';\n\nimport { decimalStringSchema, hexSchema } from '@layerzerolabs/common-chain-model';\nimport { assertUnreachable, NonRetryableError } from '@layerzerolabs/common-error-utils';\nimport type { Identity } from '@layerzerolabs/typescript-utils';\n\n/**\n * `InitializeDataResult` schema.\n */\nexport const initializeDataResultSchema = z.object({\n /** Encoded initialization data (e.g., encodeFunctionData for initialize(...)) */\n data: hexSchema,\n /** Optional gas limit override for the initialization transaction */\n gasLimit: decimalStringSchema.optional(),\n});\n\nexport interface InitializeDataResult\n extends Identity<z.infer<typeof initializeDataResultSchema>> {}\n\nexport enum UpgradeType {\n // This doesn't necessarily prevent the contract from being upgraded\n NOT_UPGRADEABLE = 'NOT_UPGRADEABLE',\n // Deploy a separate 'proxy' contract that will route calls to a swappable implementation\n PROXY = 'PROXY',\n // This doesn't necessarily allow the contract to be upgraded\n CODE_UPGRADE = 'CODE_UPGRADE',\n}\n\nexport enum EvmProxyType {\n // TUP v5 https://docs.openzeppelin.com/contracts/5.x/api/proxy#transparentupgradeableproxy\n TRANSPARENT_UPGRADEABLE_V5 = 'TRANSPARENT_UPGRADEABLE_V5',\n // UUPS v5 https://docs.openzeppelin.com/contracts/5.x/api/proxy#uupsupgradeable\n UNIVERSAL_UPGRADEABLE_V5 = 'UNIVERSAL_UPGRADEABLE_V5',\n // OTUP v4 https://github.com/wighawag/hardhat-deploy/blob/v0.12.1/solc_0.8/proxy/OptimizedTransparentUpgradeableProxy.sol\n OPTIMIZED_TRANSPARENT_UPGRADEABLE_V4 = 'OPTIMIZED_TRANSPARENT_UPGRADEABLE_V4',\n // TUP v4 https://docs.openzeppelin.com/contracts/4.x/api/proxy#TransparentUpgradeableProxy\n TRANSPARENT_UPGRADEABLE_V4 = 'TRANSPARENT_UPGRADEABLE_V4',\n // UUPS v4 https://docs.openzeppelin.com/contracts/4.x/api/proxy#UUPSUpgradeable\n UNIVERSAL_UPGRADEABLE_V4 = 'UNIVERSAL_UPGRADEABLE_V4',\n}\n\n/** UUPS-based proxy types (no separate `ProxyAdmin`). */\nexport const UUPS_PROXY_TYPES: ReadonlySet<EvmProxyType> = new Set([\n EvmProxyType.UNIVERSAL_UPGRADEABLE_V4,\n EvmProxyType.UNIVERSAL_UPGRADEABLE_V5,\n]);\n\n/** TUP-based proxy types (have a `ProxyAdmin` with `getOwner`/`setOwner`). */\nexport const TUP_PROXY_TYPES: ReadonlySet<EvmProxyType> = new Set([\n EvmProxyType.TRANSPARENT_UPGRADEABLE_V4,\n EvmProxyType.TRANSPARENT_UPGRADEABLE_V5,\n EvmProxyType.OPTIMIZED_TRANSPARENT_UPGRADEABLE_V4,\n]);\n\n/** Proxy types that deploy a separate `ProxyAdmin` contract (v4 variants only). */\nexport const SEPARATE_PROXY_ADMIN_TYPES: ReadonlySet<EvmProxyType> = new Set([\n EvmProxyType.TRANSPARENT_UPGRADEABLE_V4,\n EvmProxyType.OPTIMIZED_TRANSPARENT_UPGRADEABLE_V4,\n]);\n\n/** Whether the proxy type is UUPS (Universal Upgradeable Proxy Standard). */\nexport const isUupsProxy = (proxyType: EvmProxyType): boolean => UUPS_PROXY_TYPES.has(proxyType);\n\n/** Whether the proxy type is TUP (Transparent Upgradeable Proxy). */\nexport const isTupProxy = (proxyType: EvmProxyType): boolean => TUP_PROXY_TYPES.has(proxyType);\n\n/** Whether the proxy type requires a separate `ProxyAdmin` deployment (v4 variants). */\nexport const requiresSeparateProxyAdminDeploy = (proxyType: EvmProxyType): boolean =>\n SEPARATE_PROXY_ADMIN_TYPES.has(proxyType);\n\nexport const ProxyType = {\n ...EvmProxyType,\n};\n\nexport type ProxyType = (typeof ProxyType)[keyof typeof ProxyType];\n\nexport const upgradeTypeSchema = z.enum(UpgradeType);\n\nexport const proxyTypeSchema = z.enum(ProxyType);\nexport const proxyConfigSchema = z.object({\n upgradeType: z.literal(UpgradeType.PROXY),\n proxyType: proxyTypeSchema,\n});\n\nexport type ProxyUpgradeableConfig = z.infer<typeof proxyConfigSchema>;\n\nexport const notUpgradeableConfigSchema = z.object({\n upgradeType: z.literal(UpgradeType.NOT_UPGRADEABLE),\n});\n\nexport type NotUpgradeableConfig = z.infer<typeof notUpgradeableConfigSchema>;\n\nexport const codeUpgradeableConfigSchema = z.object({\n upgradeType: z.literal(UpgradeType.CODE_UPGRADE),\n});\n\nexport type CodeUpgradeableConfig = z.infer<typeof codeUpgradeableConfigSchema>;\n\nexport const upgradeableConfigSchema = z.discriminatedUnion('upgradeType', [\n proxyConfigSchema,\n notUpgradeableConfigSchema,\n codeUpgradeableConfigSchema,\n]);\n\nexport type UpgradeableConfig = z.infer<typeof upgradeableConfigSchema>;\n\n/** @deprecated use assertUpgradability, ensure your config is nonoptional */\nexport const weakAssertUpgradability = <AllowedUpgradeConfigs extends UpgradeableConfig[]>(\n allowedUpgradeConfigs: AllowedUpgradeConfigs,\n upgradeableConfig?: UpgradeableConfig,\n): asserts upgradeableConfig is AllowedUpgradeConfigs[number] => {\n if (!upgradeableConfig) {\n return;\n }\n\n if (\n allowedUpgradeConfigs.some((allowedConfig) => {\n if (allowedConfig.upgradeType !== upgradeableConfig.upgradeType) {\n return false;\n }\n\n if (allowedConfig.upgradeType === UpgradeType.NOT_UPGRADEABLE) {\n return true;\n }\n\n if (allowedConfig.upgradeType === UpgradeType.CODE_UPGRADE) {\n return true;\n }\n\n if (allowedConfig.upgradeType === UpgradeType.PROXY) {\n return (\n allowedConfig.proxyType ===\n (upgradeableConfig as ProxyUpgradeableConfig).proxyType\n );\n }\n\n assertUnreachable(allowedConfig);\n })\n ) {\n // included in allowed array\n return;\n }\n\n throw new NonRetryableError(\n `Upgrade config ${JSON.stringify(upgradeableConfig)} is not compatible with any of the allowed upgrade configs ${JSON.stringify(allowedUpgradeConfigs)}`,\n );\n};\n\nexport const assertUpgradability = <AllowedUpgradeConfigs extends UpgradeableConfig[]>(\n allowedUpgradeConfigs: AllowedUpgradeConfigs,\n // eventually make this nonoptional once callers are upgraded\n upgradeableConfig?: UpgradeableConfig,\n): asserts upgradeableConfig is AllowedUpgradeConfigs[number] => {\n if (!upgradeableConfig) {\n throw new NonRetryableError('Will not handle undefined upgrade config');\n }\n\n return weakAssertUpgradability(allowedUpgradeConfigs, upgradeableConfig);\n};\n"]}
@@ -1,4 +1,4 @@
1
- import { upgradeableConfigSchema } from './46VB3YIH.js';
1
+ import { upgradeableConfigSchema } from './BZJPR5LC.js';
2
2
  import { __name } from './VUOMXK5T.js';
3
3
  import z from 'zod';
4
4
  import { normalizedHexSchema } from '@layerzerolabs/common-chain-model';
@@ -62,5 +62,5 @@ var extractMeshResourceReferences = /* @__PURE__ */ __name((resource) => Object.
62
62
  var createResolvedResourceSchema = /* @__PURE__ */ __name((resource) => resource, "createResolvedResourceSchema");
63
63
 
64
64
  export { baseContractResourceSchema, baseMeshResourceSchema, baseResourceSchema, contractResourceReferenceSchema, contractResourceReferenceSchemaFor, createResolvedResourceSchema, extractContractResourceReferences, extractIdFromContractResourceReference, extractIdFromMeshResourceReference, extractMeshResourceReferences, meshResourceReferenceSchema, meshResourceReferenceSchemaFor, resolvedContractResourceReferenceSchema, resolvedMeshResourceReferenceSchema, withIntrinsicAddress };
65
- //# sourceMappingURL=IUFXXZ2R.js.map
66
- //# sourceMappingURL=IUFXXZ2R.js.map
65
+ //# sourceMappingURL=MKV6NR6C.js.map
66
+ //# sourceMappingURL=MKV6NR6C.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/deploy/resources.ts"],"names":["baseResourceSchema","z","object","id","string","name","optional","resourceBaseType","baseMeshResourceSchema","shape","literal","baseContractResourceSchema","chainName","enum","ChainName","upgradeConfig","upgradeableConfigSchema","verifyContract","boolean","chainConfig","any","withIntrinsicAddress","resourceSchema","_INTRINSIC_normalizedAddress","normalizedHexSchema","extractIdFromContractResourceReference","ref","startsWith","slice","length","throwError","JSON","stringify","contractResourceReferenceSchema","meta","title","description","contractResourceDependencyForSchemaZodMetaIdIdx","contractResourceReferenceSchemaFor","_resource","resolvedContractResourceReferenceSchema","custom","meshResourceReferenceSchema","meshResourceDependencyForSchemaZodMetaIdIdx","meshResourceReferenceSchemaFor","extractIdFromMeshResourceReference","resolvedMeshResourceReferenceSchema","extractContractResourceReferences","resource","Object","entries","filter","extractMeshResourceReferences","createResolvedResourceSchema"],"mappings":"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","file":"IUFXXZ2R.js","sourcesContent":["import z from 'zod';\n\nimport { normalizedHexSchema, type NormalizedHexString } from '@layerzerolabs/common-chain-model';\nimport { throwError } from '@layerzerolabs/common-error-utils';\nimport { ChainName } from '@layerzerolabs/layerzero-definitions';\nimport type { IsAny } from '@layerzerolabs/typescript-utils';\n\nimport { upgradeableConfigSchema } from '../upgrade';\n\nexport const baseResourceSchema = z.object({\n id: z.string(), // account-unique ID for this resource\n name: z.string().optional(), // display name for this resource\n resourceBaseType: z.string() as z.ZodString | z.ZodLiteral,\n});\n\nexport const baseMeshResourceSchema = z.object({\n ...baseResourceSchema.shape,\n resourceBaseType: z.literal('MESH'),\n});\n\nexport const baseContractResourceSchema = z.object({\n ...baseResourceSchema.shape,\n resourceBaseType: z.literal('CONTRACT'),\n chainName: z.enum(ChainName),\n upgradeConfig: upgradeableConfigSchema.optional(),\n verifyContract: z.boolean().optional(),\n\n chainConfig: z.any().optional(),\n});\n\nexport const withIntrinsicAddress = <T extends typeof baseContractResourceSchema>(\n resourceSchema: T,\n) =>\n z.object({\n ...resourceSchema.shape,\n _INTRINSIC_normalizedAddress: normalizedHexSchema,\n }) as z.ZodObject<\n T['shape'] & { _INTRINSIC_normalizedAddress: typeof normalizedHexSchema },\n z.core.$strip\n >;\n\nexport type BaseResource = z.infer<typeof baseResourceSchema>;\nexport type BaseMeshResource = z.infer<typeof baseMeshResourceSchema>;\nexport type BaseContractResource = z.infer<typeof baseContractResourceSchema>;\nexport type BaseIntrinsicAddressContractResource = z.infer<ReturnType<typeof withIntrinsicAddress>>;\n\n// the actual expected runtime value for this type is #C_REF:${id}\nexport type ContractResourceReference<T extends BaseContractResource = BaseContractResource> = {\n /** WARNING: these fields are not present at runtime */\n __resourceReferenceType: T;\n ['__CONTRACT_RESOURCE_REFERENCE']: true;\n};\n\nexport const extractIdFromContractResourceReference = (ref: ContractResourceReference) =>\n ((ref as unknown as string).startsWith('#C_REF:') &&\n (ref as unknown as string).slice('#C_REF:'.length)) ||\n throwError(`Ref ${JSON.stringify(ref)} is not a contract resource ref`);\n\n// use z.ZodType<BaseContractResource> because want to allow unions\nexport type ContractResourceReferenceSchema<T extends z.ZodType<BaseContractResource>> = z.ZodType<\n ContractResourceReference<z.infer<T>>\n>;\n\nexport const contractResourceReferenceSchema: ContractResourceReferenceSchema<\n z.ZodType<BaseContractResource>\n // at runtime, we expect a string\n> = z.string().meta({\n id: 'contract-resource-dependency',\n title: 'Contract dependency to any',\n description: 'A reference to another contract resource (any)',\n}) as unknown as z.ZodType<ContractResourceReference>;\n\nlet contractResourceDependencyForSchemaZodMetaIdIdx = 0;\nexport const contractResourceReferenceSchemaFor = <T extends z.ZodType<BaseContractResource>>(\n // FIXME use this to generate a real schema\n _resource: T,\n): ContractResourceReferenceSchema<T> =>\n z.string().meta({\n id: `contract-resource-dependency-for-${++contractResourceDependencyForSchemaZodMetaIdIdx}`,\n // we can't generate this properly yet because this function needs more information\n // will be fixed when we clean up the runtime of dependencies id\n title: 'Contract dependency to (unknown)',\n description: 'A reference to another contract resource (unknown)',\n }) as unknown as z.ZodType<ContractResourceReference<z.infer<T>>>;\n\nexport type ResolvedContractResourceReference<T extends BaseContractResource> = {\n id: string;\n resource: T;\n address: NormalizedHexString;\n};\n\nexport type ResolvedContractResourceReferenceSchema<T extends z.ZodType<BaseContractResource>> =\n z.ZodType<ResolvedContractResourceReference<z.infer<T>>>;\n\nexport const resolvedContractResourceReferenceSchema: ResolvedContractResourceReferenceSchema<any> =\n // FIXME could be a real schema\n z.custom<ResolvedContractResourceReference<any>>();\n\n// the actual expected runtime value for this type is #M_REF:${id}\nexport type MeshResourceReference<T extends BaseMeshResource = BaseMeshResource> = {\n /** WARNING: these fields are not present at runtime */\n __resourceReferenceType: T;\n ['__MESH_RESOURCE_REFERENCE']: true;\n};\n\nexport type MeshResourceReferenceSchema<T extends typeof baseMeshResourceSchema> = z.ZodType<\n MeshResourceReference<z.infer<T>>\n>;\n\nexport const meshResourceReferenceSchema: MeshResourceReferenceSchema<\n typeof baseMeshResourceSchema\n> = z.string().meta({\n id: 'mesh-resource-dependency',\n title: 'Mesh dependency to any',\n description: 'A reference to another mesh resource (any)',\n}) as unknown as z.ZodType<MeshResourceReference>;\n\nlet meshResourceDependencyForSchemaZodMetaIdIdx = 0;\nexport const meshResourceReferenceSchemaFor = <T extends typeof baseMeshResourceSchema>(\n // FIXME use this to generate a real schema\n _resource: T,\n): MeshResourceReferenceSchema<T> =>\n z.string().meta({\n id: `mesh-resource-dependency-for-${++meshResourceDependencyForSchemaZodMetaIdIdx}`,\n title: 'Mesh dependency to (unknown)',\n description: 'A reference to another mesh resource (unknown)',\n }) as unknown as z.ZodType<MeshResourceReference<z.infer<T>>>;\n\nexport type ResolvedMeshResourceReference<T extends BaseMeshResource> = {\n id: string;\n resource: T;\n // TODO: is there any other resolved information we want to inject here?\n};\n\nexport const extractIdFromMeshResourceReference = (ref: MeshResourceReference) =>\n ((ref as unknown as string).startsWith('#M_REF:') &&\n (ref as unknown as string).slice('#M_REF:'.length)) ||\n throwError(`Ref ${JSON.stringify(ref)} is not a mesh resource ref`);\n\nexport type ResolvedMeshResourceReferenceSchema<T extends typeof baseMeshResourceSchema> =\n // FIXME could be a real schema\n z.ZodType<ResolvedMeshResourceReference<z.infer<T>>>;\n\nexport const resolvedMeshResourceReferenceSchema: ResolvedMeshResourceReferenceSchema<any> =\n z.custom<ResolvedMeshResourceReference<any>>();\n\nexport type ResolvedResourceSchema<Resource extends typeof baseResourceSchema> = z.ZodObject<\n {\n [K in Exclude<\n keyof Resource['shape'],\n '_INTRINSIC_normalizedAddress'\n >]: Resource['shape'][K] extends infer R extends z.ZodType\n ? R extends z.ZodAny\n ? R\n : R extends z.ZodOptional<z.ZodAny>\n ? R\n : R extends ContractResourceReferenceSchema<infer I>\n ? ResolvedContractResourceReferenceSchema<I>\n : R extends z.ZodOptional<ContractResourceReferenceSchema<infer I>>\n ? z.ZodOptional<ResolvedContractResourceReferenceSchema<I>>\n : R extends MeshResourceReferenceSchema<infer I>\n ? ResolvedMeshResourceReferenceSchema<I>\n : R extends z.ZodOptional<MeshResourceReferenceSchema<infer I>>\n ? z.ZodOptional<ResolvedMeshResourceReferenceSchema<I>>\n : R\n : never;\n },\n z.core.$strip\n>;\n\nexport type ResolvedResource<Resource extends BaseResource> = {\n [K in Exclude<keyof Resource, '_INTRINSIC_normalizedAddress'>]: Resource[K] extends infer R\n ? R extends undefined\n ? R\n : IsAny<R> extends true\n ? R\n : IsAny<Exclude<R, undefined>> extends true\n ? R\n : R extends ContractResourceReference<infer I>\n ? ResolvedContractResourceReference<I>\n : R extends ContractResourceReference<infer I> | undefined\n ? ResolvedContractResourceReference<I> | undefined\n : R extends MeshResourceReference<infer I>\n ? ResolvedMeshResourceReference<I>\n : R extends MeshResourceReference<infer I> | undefined\n ? ResolvedMeshResourceReference<I> | undefined\n : R\n : never;\n};\n\nexport const extractContractResourceReferences = <Resource extends BaseResource>(\n resource: Resource,\n) =>\n Object.entries(resource).filter(\n ([, id]) => typeof id === 'string' && id.startsWith('#C_REF:'),\n ) as unknown as [prop: string, id: ContractResourceReference][];\n\nexport const extractMeshResourceReferences = <Resource extends BaseResource>(resource: Resource) =>\n Object.entries(resource).filter(\n ([, id]) => typeof id === 'string' && id.startsWith('#M_REF:'),\n ) as unknown as [prop: string, id: MeshResourceReference][];\n\n// FIXME implement runtime\nexport const createResolvedResourceSchema = <Resource extends typeof baseResourceSchema>(\n resource: Resource,\n) => resource as ResolvedResourceSchema<Resource>;\n"]}
1
+ {"version":3,"sources":["../src/deploy/resources.ts"],"names":["baseResourceSchema","z","object","id","string","name","optional","resourceBaseType","baseMeshResourceSchema","shape","literal","baseContractResourceSchema","chainName","enum","ChainName","upgradeConfig","upgradeableConfigSchema","verifyContract","boolean","chainConfig","any","withIntrinsicAddress","resourceSchema","_INTRINSIC_normalizedAddress","normalizedHexSchema","extractIdFromContractResourceReference","ref","startsWith","slice","length","throwError","JSON","stringify","contractResourceReferenceSchema","meta","title","description","contractResourceDependencyForSchemaZodMetaIdIdx","contractResourceReferenceSchemaFor","_resource","resolvedContractResourceReferenceSchema","custom","meshResourceReferenceSchema","meshResourceDependencyForSchemaZodMetaIdIdx","meshResourceReferenceSchemaFor","extractIdFromMeshResourceReference","resolvedMeshResourceReferenceSchema","extractContractResourceReferences","resource","Object","entries","filter","extractMeshResourceReferences","createResolvedResourceSchema"],"mappings":"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","file":"MKV6NR6C.js","sourcesContent":["import z from 'zod';\n\nimport { normalizedHexSchema, type NormalizedHexString } from '@layerzerolabs/common-chain-model';\nimport { throwError } from '@layerzerolabs/common-error-utils';\nimport { ChainName } from '@layerzerolabs/layerzero-definitions';\nimport type { IsAny } from '@layerzerolabs/typescript-utils';\n\nimport { upgradeableConfigSchema } from '../upgrade';\n\nexport const baseResourceSchema = z.object({\n id: z.string(), // account-unique ID for this resource\n name: z.string().optional(), // display name for this resource\n resourceBaseType: z.string() as z.ZodString | z.ZodLiteral,\n});\n\nexport const baseMeshResourceSchema = z.object({\n ...baseResourceSchema.shape,\n resourceBaseType: z.literal('MESH'),\n});\n\nexport const baseContractResourceSchema = z.object({\n ...baseResourceSchema.shape,\n resourceBaseType: z.literal('CONTRACT'),\n chainName: z.enum(ChainName),\n upgradeConfig: upgradeableConfigSchema.optional(),\n verifyContract: z.boolean().optional(),\n\n chainConfig: z.any().optional(),\n});\n\nexport const withIntrinsicAddress = <T extends typeof baseContractResourceSchema>(\n resourceSchema: T,\n) =>\n z.object({\n ...resourceSchema.shape,\n _INTRINSIC_normalizedAddress: normalizedHexSchema,\n }) as z.ZodObject<\n T['shape'] & { _INTRINSIC_normalizedAddress: typeof normalizedHexSchema },\n z.core.$strip\n >;\n\nexport type BaseResource = z.infer<typeof baseResourceSchema>;\nexport type BaseMeshResource = z.infer<typeof baseMeshResourceSchema>;\nexport type BaseContractResource = z.infer<typeof baseContractResourceSchema>;\nexport type BaseIntrinsicAddressContractResource = z.infer<ReturnType<typeof withIntrinsicAddress>>;\n\n// the actual expected runtime value for this type is #C_REF:${id}\nexport type ContractResourceReference<T extends BaseContractResource = BaseContractResource> = {\n /** WARNING: these fields are not present at runtime */\n __resourceReferenceType: T;\n ['__CONTRACT_RESOURCE_REFERENCE']: true;\n};\n\nexport const extractIdFromContractResourceReference = (ref: ContractResourceReference) =>\n ((ref as unknown as string).startsWith('#C_REF:') &&\n (ref as unknown as string).slice('#C_REF:'.length)) ||\n throwError(`Ref ${JSON.stringify(ref)} is not a contract resource ref`);\n\n// use z.ZodType<BaseContractResource> because want to allow unions\nexport type ContractResourceReferenceSchema<T extends z.ZodType<BaseContractResource>> = z.ZodType<\n ContractResourceReference<z.infer<T>>\n>;\n\nexport const contractResourceReferenceSchema: ContractResourceReferenceSchema<\n z.ZodType<BaseContractResource>\n // at runtime, we expect a string\n> = z.string().meta({\n id: 'contract-resource-dependency',\n title: 'Contract dependency to any',\n description: 'A reference to another contract resource (any)',\n}) as unknown as z.ZodType<ContractResourceReference>;\n\nlet contractResourceDependencyForSchemaZodMetaIdIdx = 0;\nexport const contractResourceReferenceSchemaFor = <T extends z.ZodType<BaseContractResource>>(\n // FIXME use this to generate a real schema\n _resource: T,\n): ContractResourceReferenceSchema<T> =>\n z.string().meta({\n id: `contract-resource-dependency-for-${++contractResourceDependencyForSchemaZodMetaIdIdx}`,\n // we can't generate this properly yet because this function needs more information\n // will be fixed when we clean up the runtime of dependencies id\n title: 'Contract dependency to (unknown)',\n description: 'A reference to another contract resource (unknown)',\n }) as unknown as z.ZodType<ContractResourceReference<z.infer<T>>>;\n\nexport type ResolvedContractResourceReference<T extends BaseContractResource> = {\n id: string;\n resource: T;\n address: NormalizedHexString;\n};\n\nexport type ResolvedContractResourceReferenceSchema<T extends z.ZodType<BaseContractResource>> =\n z.ZodType<ResolvedContractResourceReference<z.infer<T>>>;\n\nexport const resolvedContractResourceReferenceSchema: ResolvedContractResourceReferenceSchema<any> =\n // FIXME could be a real schema\n z.custom<ResolvedContractResourceReference<any>>();\n\n// the actual expected runtime value for this type is #M_REF:${id}\nexport type MeshResourceReference<T extends BaseMeshResource = BaseMeshResource> = {\n /** WARNING: these fields are not present at runtime */\n __resourceReferenceType: T;\n ['__MESH_RESOURCE_REFERENCE']: true;\n};\n\nexport type MeshResourceReferenceSchema<T extends typeof baseMeshResourceSchema> = z.ZodType<\n MeshResourceReference<z.infer<T>>\n>;\n\nexport const meshResourceReferenceSchema: MeshResourceReferenceSchema<\n typeof baseMeshResourceSchema\n> = z.string().meta({\n id: 'mesh-resource-dependency',\n title: 'Mesh dependency to any',\n description: 'A reference to another mesh resource (any)',\n}) as unknown as z.ZodType<MeshResourceReference>;\n\nlet meshResourceDependencyForSchemaZodMetaIdIdx = 0;\nexport const meshResourceReferenceSchemaFor = <T extends typeof baseMeshResourceSchema>(\n // FIXME use this to generate a real schema\n _resource: T,\n): MeshResourceReferenceSchema<T> =>\n z.string().meta({\n id: `mesh-resource-dependency-for-${++meshResourceDependencyForSchemaZodMetaIdIdx}`,\n title: 'Mesh dependency to (unknown)',\n description: 'A reference to another mesh resource (unknown)',\n }) as unknown as z.ZodType<MeshResourceReference<z.infer<T>>>;\n\nexport type ResolvedMeshResourceReference<T extends BaseMeshResource> = {\n id: string;\n resource: T;\n // TODO: is there any other resolved information we want to inject here?\n};\n\nexport const extractIdFromMeshResourceReference = (ref: MeshResourceReference) =>\n ((ref as unknown as string).startsWith('#M_REF:') &&\n (ref as unknown as string).slice('#M_REF:'.length)) ||\n throwError(`Ref ${JSON.stringify(ref)} is not a mesh resource ref`);\n\nexport type ResolvedMeshResourceReferenceSchema<T extends typeof baseMeshResourceSchema> =\n // FIXME could be a real schema\n z.ZodType<ResolvedMeshResourceReference<z.infer<T>>>;\n\nexport const resolvedMeshResourceReferenceSchema: ResolvedMeshResourceReferenceSchema<any> =\n z.custom<ResolvedMeshResourceReference<any>>();\n\nexport type ResolvedResourceSchema<Resource extends typeof baseResourceSchema> = z.ZodObject<\n {\n [K in Exclude<\n keyof Resource['shape'],\n '_INTRINSIC_normalizedAddress'\n >]: Resource['shape'][K] extends infer R extends z.ZodType\n ? R extends z.ZodAny\n ? R\n : R extends z.ZodOptional<z.ZodAny>\n ? R\n : R extends ContractResourceReferenceSchema<infer I>\n ? ResolvedContractResourceReferenceSchema<I>\n : R extends z.ZodOptional<ContractResourceReferenceSchema<infer I>>\n ? z.ZodOptional<ResolvedContractResourceReferenceSchema<I>>\n : R extends MeshResourceReferenceSchema<infer I>\n ? ResolvedMeshResourceReferenceSchema<I>\n : R extends z.ZodOptional<MeshResourceReferenceSchema<infer I>>\n ? z.ZodOptional<ResolvedMeshResourceReferenceSchema<I>>\n : R\n : never;\n },\n z.core.$strip\n>;\n\nexport type ResolvedResource<Resource extends BaseResource> = {\n [K in Exclude<keyof Resource, '_INTRINSIC_normalizedAddress'>]: Resource[K] extends infer R\n ? R extends undefined\n ? R\n : IsAny<R> extends true\n ? R\n : IsAny<Exclude<R, undefined>> extends true\n ? R\n : R extends ContractResourceReference<infer I>\n ? ResolvedContractResourceReference<I>\n : R extends ContractResourceReference<infer I> | undefined\n ? ResolvedContractResourceReference<I> | undefined\n : R extends MeshResourceReference<infer I>\n ? ResolvedMeshResourceReference<I>\n : R extends MeshResourceReference<infer I> | undefined\n ? ResolvedMeshResourceReference<I> | undefined\n : R\n : never;\n};\n\nexport const extractContractResourceReferences = <Resource extends BaseResource>(\n resource: Resource,\n) =>\n Object.entries(resource).filter(\n ([, id]) => typeof id === 'string' && id.startsWith('#C_REF:'),\n ) as unknown as [prop: string, id: ContractResourceReference][];\n\nexport const extractMeshResourceReferences = <Resource extends BaseResource>(resource: Resource) =>\n Object.entries(resource).filter(\n ([, id]) => typeof id === 'string' && id.startsWith('#M_REF:'),\n ) as unknown as [prop: string, id: MeshResourceReference][];\n\n// FIXME implement runtime\nexport const createResolvedResourceSchema = <Resource extends typeof baseResourceSchema>(\n resource: Resource,\n) => resource as ResolvedResourceSchema<Resource>;\n"]}