@metaplex-foundation/kinobi 0.18.3 → 0.18.4

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.
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.instructionAccountNodeFromIdl = exports.instructionAccountNode = void 0;
3
+ exports.instructionAccountNodeFromIdl = exports.instructionAccountNodesFromIdl = exports.instructionAccountNode = void 0;
4
4
  const shared_1 = require("../shared");
5
5
  function instructionAccountNode(input) {
6
6
  var _a, _b;
@@ -15,6 +15,12 @@ function instructionAccountNode(input) {
15
15
  };
16
16
  }
17
17
  exports.instructionAccountNode = instructionAccountNode;
18
+ function instructionAccountNodesFromIdl(idl) {
19
+ return idl.flatMap((account) => 'accounts' in account
20
+ ? instructionAccountNodesFromIdl(account.accounts)
21
+ : [instructionAccountNodeFromIdl(account)]);
22
+ }
23
+ exports.instructionAccountNodesFromIdl = instructionAccountNodesFromIdl;
18
24
  function instructionAccountNodeFromIdl(idl) {
19
25
  var _a, _b, _c, _d, _e, _f, _g;
20
26
  const isOptional = (_b = (_a = idl.optional) !== null && _a !== void 0 ? _a : idl.isOptional) !== null && _b !== void 0 ? _b : false;
@@ -1 +1 @@
1
- {"version":3,"file":"InstructionAccountNode.js","sourceRoot":"","sources":["../../../src/nodes/InstructionAccountNode.ts"],"names":[],"mappings":";;;AACA,sCAAoE;AAwBpE,SAAgB,sBAAsB,CACpC,KAAkC;;IAElC,OAAO;QACL,IAAI,EAAE,wBAAwB;QAC9B,IAAI,EAAE,IAAA,iBAAQ,EAAC,KAAK,CAAC,IAAI,CAAC;QAC1B,UAAU,EAAE,KAAK,CAAC,UAAU;QAC5B,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,UAAU,EAAE,MAAA,KAAK,CAAC,UAAU,mCAAI,KAAK;QACrC,IAAI,EAAE,MAAA,KAAK,CAAC,IAAI,mCAAI,EAAE;QACtB,YAAY,EAAE,KAAK,CAAC,YAAY;KACjC,CAAC;AACJ,CAAC;AAZD,wDAYC;AAED,SAAgB,6BAA6B,CAC3C,GAA0B;;IAE1B,MAAM,UAAU,GAAG,MAAA,MAAA,GAAG,CAAC,QAAQ,mCAAI,GAAG,CAAC,UAAU,mCAAI,KAAK,CAAC;IAC3D,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC/C,OAAO,sBAAsB,CAAC;QAC5B,IAAI,EAAE,MAAA,GAAG,CAAC,IAAI,mCAAI,EAAE;QACpB,UAAU,EAAE,MAAA,GAAG,CAAC,KAAK,mCAAI,KAAK;QAC9B,QAAQ,EAAE,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAA,GAAG,CAAC,QAAQ,mCAAI,KAAK;QACjE,UAAU;QACV,IAAI,EAAE,MAAA,MAAA,GAAG,CAAC,IAAI,mCAAI,IAAI,mCAAI,EAAE;KAC7B,CAAC,CAAC;AACL,CAAC;AAZD,sEAYC"}
1
+ {"version":3,"file":"InstructionAccountNode.js","sourceRoot":"","sources":["../../../src/nodes/InstructionAccountNode.ts"],"names":[],"mappings":";;;AACA,sCAAoE;AAwBpE,SAAgB,sBAAsB,CACpC,KAAkC;;IAElC,OAAO;QACL,IAAI,EAAE,wBAAwB;QAC9B,IAAI,EAAE,IAAA,iBAAQ,EAAC,KAAK,CAAC,IAAI,CAAC;QAC1B,UAAU,EAAE,KAAK,CAAC,UAAU;QAC5B,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,UAAU,EAAE,MAAA,KAAK,CAAC,UAAU,mCAAI,KAAK;QACrC,IAAI,EAAE,MAAA,KAAK,CAAC,IAAI,mCAAI,EAAE;QACtB,YAAY,EAAE,KAAK,CAAC,YAAY;KACjC,CAAC;AACJ,CAAC;AAZD,wDAYC;AAED,SAAgB,8BAA8B,CAC5C,GAA6D;IAE7D,OAAO,GAAG,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAC7B,UAAU,IAAI,OAAO;QACnB,CAAC,CAAC,8BAA8B,CAAC,OAAO,CAAC,QAAQ,CAAC;QAClD,CAAC,CAAC,CAAC,6BAA6B,CAAC,OAAO,CAAC,CAAC,CAC7C,CAAC;AACJ,CAAC;AARD,wEAQC;AAED,SAAgB,6BAA6B,CAC3C,GAA0B;;IAE1B,MAAM,UAAU,GAAG,MAAA,MAAA,GAAG,CAAC,QAAQ,mCAAI,GAAG,CAAC,UAAU,mCAAI,KAAK,CAAC;IAC3D,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC/C,OAAO,sBAAsB,CAAC;QAC5B,IAAI,EAAE,MAAA,GAAG,CAAC,IAAI,mCAAI,EAAE;QACpB,UAAU,EAAE,MAAA,GAAG,CAAC,KAAK,mCAAI,KAAK;QAC9B,QAAQ,EAAE,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAA,GAAG,CAAC,QAAQ,mCAAI,KAAK;QACjE,UAAU;QACV,IAAI,EAAE,MAAA,MAAA,GAAG,CAAC,IAAI,mCAAI,IAAI,mCAAI,EAAE;KAC7B,CAAC,CAAC;AACL,CAAC;AAZD,sEAYC"}
@@ -52,7 +52,7 @@ function instructionNodeFromIdl(idl) {
52
52
  name,
53
53
  idlName,
54
54
  docs: (_c = idl.docs) !== null && _c !== void 0 ? _c : [],
55
- accounts: ((_d = idl.accounts) !== null && _d !== void 0 ? _d : []).map((account) => (0, InstructionAccountNode_1.instructionAccountNodeFromIdl)(account)),
55
+ accounts: (0, InstructionAccountNode_1.instructionAccountNodesFromIdl)((_d = idl.accounts) !== null && _d !== void 0 ? _d : []),
56
56
  arguments: dataArguments,
57
57
  discriminators,
58
58
  optionalAccountStrategy: idl.legacyOptionalAccountsStrategy
@@ -1 +1 @@
1
- {"version":3,"file":"InstructionNode.js","sourceRoot":"","sources":["../../../src/nodes/InstructionNode.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"InstructionNode.js","sourceRoot":"","sources":["../../../src/nodes/InstructionNode.ts"],"names":[],"mappings":"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"}
@@ -12,37 +12,37 @@ const recordLinkablesVisitor_1 = require("./recordLinkablesVisitor");
12
12
  const visitor_1 = require("./visitor");
13
13
  exports.DEFAULT_INSTRUCTION_ACCOUNT_DEFAULT_RULES = [
14
14
  {
15
- account: /^payer|feePayer$/,
15
+ account: /^(payer|feePayer)$/,
16
16
  defaultValue: (0, contextualValueNodes_1.payerValueNode)(),
17
17
  ignoreIfOptional: true,
18
18
  },
19
19
  {
20
- account: /^authority$/,
20
+ account: /^(authority)$/,
21
21
  defaultValue: (0, contextualValueNodes_1.identityValueNode)(),
22
22
  ignoreIfOptional: true,
23
23
  },
24
24
  {
25
- account: /^programId$/,
25
+ account: /^(programId)$/,
26
26
  defaultValue: (0, contextualValueNodes_1.programIdValueNode)(),
27
27
  ignoreIfOptional: true,
28
28
  },
29
29
  {
30
- account: /^systemProgram|splSystemProgram$/,
30
+ account: /^(systemProgram|splSystemProgram)$/,
31
31
  defaultValue: (0, valueNodes_1.publicKeyValueNode)('11111111111111111111111111111111', 'splSystem'),
32
32
  ignoreIfOptional: true,
33
33
  },
34
34
  {
35
- account: /^tokenProgram|splTokenProgram$/,
35
+ account: /^(tokenProgram|splTokenProgram)$/,
36
36
  defaultValue: (0, valueNodes_1.publicKeyValueNode)('TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA', 'splToken'),
37
37
  ignoreIfOptional: true,
38
38
  },
39
39
  {
40
- account: /^ataProgram|splAtaProgram$/,
40
+ account: /^(ataProgram|splAtaProgram)$/,
41
41
  defaultValue: (0, valueNodes_1.publicKeyValueNode)('ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL', 'splAssociatedToken'),
42
42
  ignoreIfOptional: true,
43
43
  },
44
44
  {
45
- account: /^tokenMetadataProgram|mplTokenMetadataProgram$/,
45
+ account: /^(tokenMetadataProgram|mplTokenMetadataProgram)$/,
46
46
  defaultValue: (0, valueNodes_1.publicKeyValueNode)('metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s', 'mplTokenMetadata'),
47
47
  ignoreIfOptional: true,
48
48
  },
@@ -52,22 +52,22 @@ exports.DEFAULT_INSTRUCTION_ACCOUNT_DEFAULT_RULES = [
52
52
  ignoreIfOptional: true,
53
53
  },
54
54
  {
55
- account: /^candyMachineProgram|mplCandyMachineProgram$/,
55
+ account: /^(candyMachineProgram|mplCandyMachineProgram)$/,
56
56
  defaultValue: (0, valueNodes_1.publicKeyValueNode)('CndyV3LdqHUfDLmE5naZjVN8rBZz4tqhdefbAnjHG3JR', 'mplCandyMachine'),
57
57
  ignoreIfOptional: true,
58
58
  },
59
59
  {
60
- account: /^candyGuardProgram|mplCandyGuardProgram$/,
60
+ account: /^(candyGuardProgram|mplCandyGuardProgram)$/,
61
61
  defaultValue: (0, valueNodes_1.publicKeyValueNode)('Guard1JwRhJkVH6XZhzoYxeBVQe872VH6QggF4BWmS9g', 'mplCandyGuard'),
62
62
  ignoreIfOptional: true,
63
63
  },
64
64
  {
65
- account: /^clockSysvar|sysvarClock$/,
65
+ account: /^(clockSysvar|sysvarClock)$/,
66
66
  defaultValue: (0, valueNodes_1.publicKeyValueNode)('SysvarC1ock11111111111111111111111111111111'),
67
67
  ignoreIfOptional: true,
68
68
  },
69
69
  {
70
- account: /^epochScheduleSysvar|sysvarEpochSchedule$/,
70
+ account: /^(epochScheduleSysvar|sysvarEpochSchedule)$/,
71
71
  defaultValue: (0, valueNodes_1.publicKeyValueNode)('SysvarEpochSchedu1e111111111111111111111111'),
72
72
  ignoreIfOptional: true,
73
73
  },
@@ -77,37 +77,37 @@ exports.DEFAULT_INSTRUCTION_ACCOUNT_DEFAULT_RULES = [
77
77
  ignoreIfOptional: true,
78
78
  },
79
79
  {
80
- account: /^recentBlockhashesSysvar|sysvarRecentBlockhashes$/,
80
+ account: /^(recentBlockhashesSysvar|sysvarRecentBlockhashes)$/,
81
81
  defaultValue: (0, valueNodes_1.publicKeyValueNode)('SysvarRecentB1ockHashes11111111111111111111'),
82
82
  ignoreIfOptional: true,
83
83
  },
84
84
  {
85
- account: /^rent|rentSysvar|sysvarRent$/,
85
+ account: /^(rent|rentSysvar|sysvarRent)$/,
86
86
  defaultValue: (0, valueNodes_1.publicKeyValueNode)('SysvarRent111111111111111111111111111111111'),
87
87
  ignoreIfOptional: true,
88
88
  },
89
89
  {
90
- account: /^rewardsSysvar|sysvarRewards$/,
90
+ account: /^(rewardsSysvar|sysvarRewards)$/,
91
91
  defaultValue: (0, valueNodes_1.publicKeyValueNode)('SysvarRewards111111111111111111111111111111'),
92
92
  ignoreIfOptional: true,
93
93
  },
94
94
  {
95
- account: /^slotHashesSysvar|sysvarSlotHashes$/,
95
+ account: /^(slotHashesSysvar|sysvarSlotHashes)$/,
96
96
  defaultValue: (0, valueNodes_1.publicKeyValueNode)('SysvarS1otHashes111111111111111111111111111'),
97
97
  ignoreIfOptional: true,
98
98
  },
99
99
  {
100
- account: /^slotHistorySysvar|sysvarSlotHistory$/,
100
+ account: /^(slotHistorySysvar|sysvarSlotHistory)$/,
101
101
  defaultValue: (0, valueNodes_1.publicKeyValueNode)('SysvarS1otHistory11111111111111111111111111'),
102
102
  ignoreIfOptional: true,
103
103
  },
104
104
  {
105
- account: /^stakeHistorySysvar|sysvarStakeHistory$/,
105
+ account: /^(stakeHistorySysvar|sysvarStakeHistory)$/,
106
106
  defaultValue: (0, valueNodes_1.publicKeyValueNode)('SysvarStakeHistory1111111111111111111111111'),
107
107
  ignoreIfOptional: true,
108
108
  },
109
109
  {
110
- account: /^mplCoreProgram$/,
110
+ account: /^(mplCoreProgram)$/,
111
111
  defaultValue: (0, valueNodes_1.publicKeyValueNode)('CoREENxT6tW1HoK8ypY1SxRMZTcVPm7R94rH4PZNhX7d', 'mplCore'),
112
112
  ignoreIfOptional: true,
113
113
  },
@@ -1 +1 @@
1
- {"version":3,"file":"setInstructionAccountDefaultValuesVisitor.js","sourceRoot":"","sources":["../../../src/visitors/setInstructionAccountDefaultValuesVisitor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"setInstructionAccountDefaultValuesVisitor.js","sourceRoot":"","sources":["../../../src/visitors/setInstructionAccountDefaultValuesVisitor.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import type { IdlType } from './IdlType';
2
2
  export type IdlInstruction = {
3
3
  name: string;
4
- accounts: IdlInstructionAccount[];
4
+ accounts: (IdlInstructionAccount | IdlInstructionNestedAccounts)[];
5
5
  args: IdlInstructionArg[];
6
6
  defaultOptionalAccounts?: boolean;
7
7
  legacyOptionalAccountsStrategy?: boolean;
@@ -18,6 +18,10 @@ export type IdlInstructionAccount = {
18
18
  docs?: string[];
19
19
  desc?: string;
20
20
  };
21
+ export type IdlInstructionNestedAccounts = {
22
+ name: string;
23
+ accounts: (IdlInstructionAccount | IdlInstructionNestedAccounts)[];
24
+ };
21
25
  export type IdlInstructionArg = {
22
26
  name: string;
23
27
  type: IdlType;
@@ -1,4 +1,4 @@
1
- import { IdlInstructionAccount } from '../idl';
1
+ import { IdlInstructionAccount, IdlInstructionNestedAccounts } from '../idl';
2
2
  import { MainCaseString, PartialExcept } from '../shared';
3
3
  import { InstructionInputValueNode } from './contextualValueNodes';
4
4
  export type InstructionAccountNode = {
@@ -14,4 +14,5 @@ export type InstructionAccountNodeInput = Omit<PartialExcept<InstructionAccountN
14
14
  readonly name: string;
15
15
  };
16
16
  export declare function instructionAccountNode(input: InstructionAccountNodeInput): InstructionAccountNode;
17
+ export declare function instructionAccountNodesFromIdl(idl: (IdlInstructionAccount | IdlInstructionNestedAccounts)[]): InstructionAccountNode[];
17
18
  export declare function instructionAccountNodeFromIdl(idl: IdlInstructionAccount): InstructionAccountNode;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@metaplex-foundation/kinobi",
3
- "version": "0.18.3",
3
+ "version": "0.18.4",
4
4
  "description": "Generate powerful clients for your Solana programs",
5
5
  "main": "dist/cjs/index.js",
6
6
  "types": "dist/types/index.d.ts",
@@ -2,7 +2,7 @@ import type { IdlType } from './IdlType';
2
2
 
3
3
  export type IdlInstruction = {
4
4
  name: string;
5
- accounts: IdlInstructionAccount[];
5
+ accounts: (IdlInstructionAccount | IdlInstructionNestedAccounts)[];
6
6
  args: IdlInstructionArg[];
7
7
  defaultOptionalAccounts?: boolean;
8
8
  legacyOptionalAccountsStrategy?: boolean;
@@ -21,6 +21,11 @@ export type IdlInstructionAccount = {
21
21
  desc?: string;
22
22
  };
23
23
 
24
+ export type IdlInstructionNestedAccounts = {
25
+ name: string;
26
+ accounts: (IdlInstructionAccount | IdlInstructionNestedAccounts)[];
27
+ };
28
+
24
29
  export type IdlInstructionArg = {
25
30
  name: string;
26
31
  type: IdlType;
@@ -1,4 +1,4 @@
1
- import { IdlInstructionAccount } from '../idl';
1
+ import { IdlInstructionAccount, IdlInstructionNestedAccounts } from '../idl';
2
2
  import { MainCaseString, PartialExcept, mainCase } from '../shared';
3
3
  import { InstructionInputValueNode } from './contextualValueNodes';
4
4
 
@@ -37,6 +37,16 @@ export function instructionAccountNode(
37
37
  };
38
38
  }
39
39
 
40
+ export function instructionAccountNodesFromIdl(
41
+ idl: (IdlInstructionAccount | IdlInstructionNestedAccounts)[]
42
+ ): InstructionAccountNode[] {
43
+ return idl.flatMap((account) =>
44
+ 'accounts' in account
45
+ ? instructionAccountNodesFromIdl(account.accounts)
46
+ : [instructionAccountNodeFromIdl(account)]
47
+ );
48
+ }
49
+
40
50
  export function instructionAccountNodeFromIdl(
41
51
  idl: IdlInstructionAccount
42
52
  ): InstructionAccountNode {
@@ -2,7 +2,7 @@ import type { IdlInstruction } from '../idl';
2
2
  import { InvalidKinobiTreeError, MainCaseString, mainCase } from '../shared';
3
3
  import {
4
4
  InstructionAccountNode,
5
- instructionAccountNodeFromIdl,
5
+ instructionAccountNodesFromIdl,
6
6
  } from './InstructionAccountNode';
7
7
  import {
8
8
  InstructionArgumentNode,
@@ -93,9 +93,7 @@ export function instructionNodeFromIdl(
93
93
  name,
94
94
  idlName,
95
95
  docs: idl.docs ?? [],
96
- accounts: (idl.accounts ?? []).map((account) =>
97
- instructionAccountNodeFromIdl(account)
98
- ),
96
+ accounts: instructionAccountNodesFromIdl(idl.accounts ?? []),
99
97
  arguments: dataArguments,
100
98
  discriminators,
101
99
  optionalAccountStrategy: idl.legacyOptionalAccountsStrategy
@@ -31,22 +31,22 @@ export type InstructionAccountDefaultRule = {
31
31
  export const DEFAULT_INSTRUCTION_ACCOUNT_DEFAULT_RULES: InstructionAccountDefaultRule[] =
32
32
  [
33
33
  {
34
- account: /^payer|feePayer$/,
34
+ account: /^(payer|feePayer)$/,
35
35
  defaultValue: payerValueNode(),
36
36
  ignoreIfOptional: true,
37
37
  },
38
38
  {
39
- account: /^authority$/,
39
+ account: /^(authority)$/,
40
40
  defaultValue: identityValueNode(),
41
41
  ignoreIfOptional: true,
42
42
  },
43
43
  {
44
- account: /^programId$/,
44
+ account: /^(programId)$/,
45
45
  defaultValue: programIdValueNode(),
46
46
  ignoreIfOptional: true,
47
47
  },
48
48
  {
49
- account: /^systemProgram|splSystemProgram$/,
49
+ account: /^(systemProgram|splSystemProgram)$/,
50
50
  defaultValue: publicKeyValueNode(
51
51
  '11111111111111111111111111111111',
52
52
  'splSystem'
@@ -54,7 +54,7 @@ export const DEFAULT_INSTRUCTION_ACCOUNT_DEFAULT_RULES: InstructionAccountDefaul
54
54
  ignoreIfOptional: true,
55
55
  },
56
56
  {
57
- account: /^tokenProgram|splTokenProgram$/,
57
+ account: /^(tokenProgram|splTokenProgram)$/,
58
58
  defaultValue: publicKeyValueNode(
59
59
  'TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA',
60
60
  'splToken'
@@ -62,7 +62,7 @@ export const DEFAULT_INSTRUCTION_ACCOUNT_DEFAULT_RULES: InstructionAccountDefaul
62
62
  ignoreIfOptional: true,
63
63
  },
64
64
  {
65
- account: /^ataProgram|splAtaProgram$/,
65
+ account: /^(ataProgram|splAtaProgram)$/,
66
66
  defaultValue: publicKeyValueNode(
67
67
  'ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL',
68
68
  'splAssociatedToken'
@@ -70,7 +70,7 @@ export const DEFAULT_INSTRUCTION_ACCOUNT_DEFAULT_RULES: InstructionAccountDefaul
70
70
  ignoreIfOptional: true,
71
71
  },
72
72
  {
73
- account: /^tokenMetadataProgram|mplTokenMetadataProgram$/,
73
+ account: /^(tokenMetadataProgram|mplTokenMetadataProgram)$/,
74
74
  defaultValue: publicKeyValueNode(
75
75
  'metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s',
76
76
  'mplTokenMetadata'
@@ -87,7 +87,7 @@ export const DEFAULT_INSTRUCTION_ACCOUNT_DEFAULT_RULES: InstructionAccountDefaul
87
87
  ignoreIfOptional: true,
88
88
  },
89
89
  {
90
- account: /^candyMachineProgram|mplCandyMachineProgram$/,
90
+ account: /^(candyMachineProgram|mplCandyMachineProgram)$/,
91
91
  defaultValue: publicKeyValueNode(
92
92
  'CndyV3LdqHUfDLmE5naZjVN8rBZz4tqhdefbAnjHG3JR',
93
93
  'mplCandyMachine'
@@ -95,7 +95,7 @@ export const DEFAULT_INSTRUCTION_ACCOUNT_DEFAULT_RULES: InstructionAccountDefaul
95
95
  ignoreIfOptional: true,
96
96
  },
97
97
  {
98
- account: /^candyGuardProgram|mplCandyGuardProgram$/,
98
+ account: /^(candyGuardProgram|mplCandyGuardProgram)$/,
99
99
  defaultValue: publicKeyValueNode(
100
100
  'Guard1JwRhJkVH6XZhzoYxeBVQe872VH6QggF4BWmS9g',
101
101
  'mplCandyGuard'
@@ -103,14 +103,14 @@ export const DEFAULT_INSTRUCTION_ACCOUNT_DEFAULT_RULES: InstructionAccountDefaul
103
103
  ignoreIfOptional: true,
104
104
  },
105
105
  {
106
- account: /^clockSysvar|sysvarClock$/,
106
+ account: /^(clockSysvar|sysvarClock)$/,
107
107
  defaultValue: publicKeyValueNode(
108
108
  'SysvarC1ock11111111111111111111111111111111'
109
109
  ),
110
110
  ignoreIfOptional: true,
111
111
  },
112
112
  {
113
- account: /^epochScheduleSysvar|sysvarEpochSchedule$/,
113
+ account: /^(epochScheduleSysvar|sysvarEpochSchedule)$/,
114
114
  defaultValue: publicKeyValueNode(
115
115
  'SysvarEpochSchedu1e111111111111111111111111'
116
116
  ),
@@ -124,49 +124,49 @@ export const DEFAULT_INSTRUCTION_ACCOUNT_DEFAULT_RULES: InstructionAccountDefaul
124
124
  ignoreIfOptional: true,
125
125
  },
126
126
  {
127
- account: /^recentBlockhashesSysvar|sysvarRecentBlockhashes$/,
127
+ account: /^(recentBlockhashesSysvar|sysvarRecentBlockhashes)$/,
128
128
  defaultValue: publicKeyValueNode(
129
129
  'SysvarRecentB1ockHashes11111111111111111111'
130
130
  ),
131
131
  ignoreIfOptional: true,
132
132
  },
133
133
  {
134
- account: /^rent|rentSysvar|sysvarRent$/,
134
+ account: /^(rent|rentSysvar|sysvarRent)$/,
135
135
  defaultValue: publicKeyValueNode(
136
136
  'SysvarRent111111111111111111111111111111111'
137
137
  ),
138
138
  ignoreIfOptional: true,
139
139
  },
140
140
  {
141
- account: /^rewardsSysvar|sysvarRewards$/,
141
+ account: /^(rewardsSysvar|sysvarRewards)$/,
142
142
  defaultValue: publicKeyValueNode(
143
143
  'SysvarRewards111111111111111111111111111111'
144
144
  ),
145
145
  ignoreIfOptional: true,
146
146
  },
147
147
  {
148
- account: /^slotHashesSysvar|sysvarSlotHashes$/,
148
+ account: /^(slotHashesSysvar|sysvarSlotHashes)$/,
149
149
  defaultValue: publicKeyValueNode(
150
150
  'SysvarS1otHashes111111111111111111111111111'
151
151
  ),
152
152
  ignoreIfOptional: true,
153
153
  },
154
154
  {
155
- account: /^slotHistorySysvar|sysvarSlotHistory$/,
155
+ account: /^(slotHistorySysvar|sysvarSlotHistory)$/,
156
156
  defaultValue: publicKeyValueNode(
157
157
  'SysvarS1otHistory11111111111111111111111111'
158
158
  ),
159
159
  ignoreIfOptional: true,
160
160
  },
161
161
  {
162
- account: /^stakeHistorySysvar|sysvarStakeHistory$/,
162
+ account: /^(stakeHistorySysvar|sysvarStakeHistory)$/,
163
163
  defaultValue: publicKeyValueNode(
164
164
  'SysvarStakeHistory1111111111111111111111111'
165
165
  ),
166
166
  ignoreIfOptional: true,
167
167
  },
168
168
  {
169
- account: /^mplCoreProgram$/,
169
+ account: /^(mplCoreProgram)$/,
170
170
  defaultValue: publicKeyValueNode(
171
171
  'CoREENxT6tW1HoK8ypY1SxRMZTcVPm7R94rH4PZNhX7d',
172
172
  'mplCore'