@openzeppelin/wizard-stellar 0.4.5 → 0.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/add-pausable.d.ts.map +1 -1
- package/dist/add-pausable.js +0 -2
- package/dist/add-pausable.js.map +1 -1
- package/dist/fungible.d.ts.map +1 -1
- package/dist/fungible.js +9 -15
- package/dist/fungible.js.map +1 -1
- package/dist/non-fungible.js +4 -15
- package/dist/non-fungible.js.map +1 -1
- package/dist/set-access-control.d.ts.map +1 -1
- package/dist/set-access-control.js +16 -10
- package/dist/set-access-control.js.map +1 -1
- package/dist/utils/version.d.ts +4 -4
- package/dist/utils/version.js +3 -3
- package/package.json +1 -1
- package/src/add-pausable.ts +0 -1
- package/src/fungible.ts +9 -15
- package/src/non-fungible.ts +4 -11
- package/src/set-access-control.ts +16 -10
- package/src/utils/version.ts +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"add-pausable.d.ts","sourceRoot":"","sources":["../src/add-pausable.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAgB,eAAe,EAAE,MAAM,YAAY,CAAC;AAChE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAInD,wBAAgB,WAAW,CAAC,CAAC,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,EAAE,uBAAuB,EAAE,OAAO,
|
|
1
|
+
{"version":3,"file":"add-pausable.d.ts","sourceRoot":"","sources":["../src/add-pausable.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAgB,eAAe,EAAE,MAAM,YAAY,CAAC;AAChE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAInD,wBAAgB,WAAW,CAAC,CAAC,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,EAAE,uBAAuB,EAAE,OAAO,QA2C/F"}
|
package/dist/add-pausable.js
CHANGED
|
@@ -7,8 +7,6 @@ const define_functions_1 = require("./utils/define-functions");
|
|
|
7
7
|
function addPausable(c, access, explicitImplementations) {
|
|
8
8
|
c.addUseClause('stellar_contract_utils::pausable', 'self', { alias: 'pausable' });
|
|
9
9
|
c.addUseClause('stellar_contract_utils::pausable', 'Pausable');
|
|
10
|
-
if (!explicitImplementations)
|
|
11
|
-
c.addUseClause('stellar_macros', 'default_impl');
|
|
12
10
|
const pausableTrait = {
|
|
13
11
|
traitName: 'Pausable',
|
|
14
12
|
structName: c.name,
|
package/dist/add-pausable.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"add-pausable.js","sourceRoot":"","sources":["../src/add-pausable.ts"],"names":[],"mappings":";;AAMA,
|
|
1
|
+
{"version":3,"file":"add-pausable.js","sourceRoot":"","sources":["../src/add-pausable.ts"],"names":[],"mappings":";;AAMA,kCA2CC;AAjDD,qDAA8C;AAG9C,6DAAoF;AACpF,+DAA2D;AAE3D,SAAgB,WAAW,CAAC,CAAkB,EAAE,MAAc,EAAE,uBAAgC;IAC9F,CAAC,CAAC,YAAY,CAAC,kCAAkC,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC,CAAC;IAClF,CAAC,CAAC,YAAY,CAAC,kCAAkC,EAAE,UAAU,CAAC,CAAC;IAE/D,MAAM,aAAa,GAAG;QACpB,SAAS,EAAE,UAAU;QACrB,UAAU,EAAE,CAAC,CAAC,IAAI;QAClB,IAAI,EAAE,CAAC,cAAc,CAAC;QACtB,OAAO,EAAE,OAAO;KACjB,CAAC;IAEF,MAAM,eAAe,GAAG,MAAM,KAAK,KAAK,CAAC,CAAC,CAAC,2CAAsB,CAAC,CAAC,CAAC,MAAM,CAAC;IAC3E,MAAM,OAAO,GAAiB,eAAe,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,mBAAmB,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC;IAC9G,MAAM,SAAS,GAAiB,eAAe,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,qBAAqB,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC;IAEpH,CAAC,CAAC,gBAAgB,CAAC,aAAa,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;IACpD,CAAC,CAAC,gBAAgB,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;IAC3C,CAAC,CAAC,gBAAgB,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;IAC7C,IAAA,yCAAoB,EAClB,CAAC,EACD,aAAa,EACb,OAAO,EACP,eAAe,EACf;QACE,QAAQ,EAAE,IAAI;QACd,IAAI,EAAE,QAAQ;QACd,MAAM,EAAE,QAAQ;KACjB,EACD,uBAAuB,CACxB,CAAC;IAEF,IAAA,yCAAoB,EAClB,CAAC,EACD,aAAa,EACb,SAAS,EACT,eAAe,EACf;QACE,QAAQ,EAAE,IAAI;QACd,IAAI,EAAE,QAAQ;QACd,MAAM,EAAE,QAAQ;KACjB,EACD,uBAAuB,CACxB,CAAC;AACJ,CAAC;AAED,MAAM,SAAS,GAAG,IAAA,kCAAe,EAAC;IAChC,MAAM,EAAE;QACN,IAAI,EAAE,CAAC,IAAA,2BAAU,GAAE,CAAC;QACpB,OAAO,EAAE,MAAM;QACf,IAAI,EAAE,CAAC,qBAAqB,CAAC;KAC9B;IACD,KAAK,EAAE;QACL,IAAI,EAAE,CAAC,IAAA,2BAAU,GAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QACzD,IAAI,EAAE,CAAC,oBAAoB,CAAC;KAC7B;IACD,mBAAmB,EAAE;QACnB,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,CAAC,IAAA,2BAAU,GAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QAC1D,IAAI,EAAE,CAAC,oBAAoB,CAAC;KAC7B;IACD,OAAO,EAAE;QACP,IAAI,EAAE,CAAC,IAAA,2BAAU,GAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QACzD,IAAI,EAAE,CAAC,sBAAsB,CAAC;KAC/B;IACD,qBAAqB,EAAE;QACrB,IAAI,EAAE,SAAS;QACf,IAAI,EAAE,CAAC,IAAA,2BAAU,GAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QAC1D,IAAI,EAAE,CAAC,sBAAsB,CAAC;KAC/B;CACF,CAAC,CAAC"}
|
package/dist/fungible.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fungible.d.ts","sourceRoot":"","sources":["../src/fungible.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAM7C,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAS9D,eAAO,MAAM,QAAQ,EAAE,QAAQ,CAAC,eAAe,CAWrC,CAAC;AAEX,wBAAgB,aAAa,CAAC,IAAI,GAAE,eAA0B,GAAG,MAAM,CAEtE;AAED,MAAM,WAAW,eAAgB,SAAQ,qBAAqB;IAC5D,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,eAAe,GAAG,QAAQ,CAAC,eAAe,CAAC,CAU7E;AAED,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,OAAO,CAAC,eAAe,CAAC,GAAG,OAAO,CAE/E;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,eAAe,GAAG,eAAe,CA+BpE;
|
|
1
|
+
{"version":3,"file":"fungible.d.ts","sourceRoot":"","sources":["../src/fungible.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAM7C,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAS9D,eAAO,MAAM,QAAQ,EAAE,QAAQ,CAAC,eAAe,CAWrC,CAAC;AAEX,wBAAgB,aAAa,CAAC,IAAI,GAAE,eAA0B,GAAG,MAAM,CAEtE;AAED,MAAM,WAAW,eAAgB,SAAQ,qBAAqB;IAC5D,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,eAAe,GAAG,QAAQ,CAAC,eAAe,CAAC,CAU7E;AAED,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,OAAO,CAAC,eAAe,CAAC,GAAG,OAAO,CAE/E;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,eAAe,GAAG,eAAe,CA+BpE;AAgHD,eAAO,MAAM,cAAc,QAAkB,CAAC;AAkB9C;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CA+B1E;AAED,eAAO,MAAM,SAAS,sNA0FpB,CAAC"}
|
package/dist/fungible.js
CHANGED
|
@@ -72,23 +72,22 @@ function buildFungible(opts) {
|
|
|
72
72
|
}
|
|
73
73
|
function addBase(c, name, symbol, pausable, explicitImplementations) {
|
|
74
74
|
// Set metadata
|
|
75
|
-
c.addConstructorCode(`Base::set_metadata(e,
|
|
75
|
+
c.addConstructorCode(`Base::set_metadata(e, 7, String::from_str(e, "${name}"), String::from_str(e, "${symbol}"));`);
|
|
76
76
|
// Set token functions
|
|
77
77
|
c.addUseClause('stellar_tokens::fungible', 'Base');
|
|
78
78
|
c.addUseClause('stellar_tokens::fungible', 'FungibleToken');
|
|
79
|
-
if (!explicitImplementations)
|
|
80
|
-
c.addUseClause('stellar_macros', 'default_impl');
|
|
81
79
|
c.addUseClause('soroban_sdk', 'contract');
|
|
82
80
|
c.addUseClause('soroban_sdk', 'contractimpl');
|
|
83
81
|
c.addUseClause('soroban_sdk', 'String');
|
|
82
|
+
c.addUseClause('soroban_sdk', 'Symbol');
|
|
84
83
|
c.addUseClause('soroban_sdk', 'Env');
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
84
|
+
c.addUseClause('soroban_sdk', 'Address');
|
|
85
|
+
c.addUseClause('soroban_sdk', 'MuxedAddress');
|
|
86
|
+
c.addUseClause('soroban_sdk', 'Vec');
|
|
88
87
|
const fungibleTokenTrait = {
|
|
89
88
|
traitName: 'FungibleToken',
|
|
90
89
|
structName: c.name,
|
|
91
|
-
tags: explicitImplementations ? ['contractimpl'] : ['
|
|
90
|
+
tags: explicitImplementations ? ['contractimpl'] : ['contractimpl(contracttrait)'],
|
|
92
91
|
assocType: 'type ContractType = Base;',
|
|
93
92
|
};
|
|
94
93
|
c.addTraitImplBlock(fungibleTokenTrait);
|
|
@@ -103,7 +102,6 @@ function addBase(c, name, symbol, pausable, explicitImplementations) {
|
|
|
103
102
|
}
|
|
104
103
|
}
|
|
105
104
|
function addMintable(c, access, pausable, explicitImplementations) {
|
|
106
|
-
c.addUseClause('soroban_sdk', 'Address');
|
|
107
105
|
switch (access) {
|
|
108
106
|
case false:
|
|
109
107
|
break;
|
|
@@ -135,11 +133,10 @@ function addMintable(c, access, pausable, explicitImplementations) {
|
|
|
135
133
|
}
|
|
136
134
|
function addBurnable(c, pausable, explicitImplementations) {
|
|
137
135
|
c.addUseClause('stellar_tokens::fungible', 'burnable::FungibleBurnable');
|
|
138
|
-
c.addUseClause('soroban_sdk', 'Address');
|
|
139
136
|
const fungibleBurnableTrait = {
|
|
140
137
|
traitName: 'FungibleBurnable',
|
|
141
138
|
structName: c.name,
|
|
142
|
-
tags: ['contractimpl'],
|
|
139
|
+
tags: explicitImplementations ? ['contractimpl'] : ['contractimpl(contracttrait)'],
|
|
143
140
|
section: 'Extensions',
|
|
144
141
|
};
|
|
145
142
|
if (pausable) {
|
|
@@ -152,8 +149,6 @@ function addBurnable(c, pausable, explicitImplementations) {
|
|
|
152
149
|
else if (explicitImplementations)
|
|
153
150
|
c.addTraitForEachFunctions(fungibleBurnableTrait, fungibleBurnableFunctions);
|
|
154
151
|
else {
|
|
155
|
-
// prepend '#[default_impl]'
|
|
156
|
-
fungibleBurnableTrait.tags.unshift('default_impl');
|
|
157
152
|
c.addTraitImplBlock(fungibleBurnableTrait);
|
|
158
153
|
}
|
|
159
154
|
}
|
|
@@ -166,8 +161,7 @@ function addPremint(c, amount) {
|
|
|
166
161
|
});
|
|
167
162
|
}
|
|
168
163
|
// TODO: handle signed int?
|
|
169
|
-
const premintAbsolute = (0, convert_strings_1.toUint)(getInitialSupply(amount,
|
|
170
|
-
c.addUseClause('soroban_sdk', 'Address');
|
|
164
|
+
const premintAbsolute = (0, convert_strings_1.toUint)(getInitialSupply(amount, 7), 'premint', 'u128');
|
|
171
165
|
c.addConstructorArgument({ name: 'recipient', type: 'Address' });
|
|
172
166
|
c.addConstructorCode(`Base::mint(e, &recipient, ${premintAbsolute});`);
|
|
173
167
|
}
|
|
@@ -236,7 +230,7 @@ exports.functions = (0, define_functions_1.defineFunctions)({
|
|
|
236
230
|
args: [
|
|
237
231
|
(0, common_options_1.getSelfArg)(),
|
|
238
232
|
{ name: 'from', type: 'Address' },
|
|
239
|
-
{ name: 'to', type: '
|
|
233
|
+
{ name: 'to', type: 'MuxedAddress' },
|
|
240
234
|
{ name: 'amount', type: 'i128' },
|
|
241
235
|
],
|
|
242
236
|
code: ['Self::ContractType::transfer(e, &from, &to, amount)'],
|
package/dist/fungible.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fungible.js","sourceRoot":"","sources":["../src/fungible.ts"],"names":[],"mappings":";;;AA4BA,sCAEC;AAYD,oCAUC;AAED,0DAEC;AAED,sCA+BC;
|
|
1
|
+
{"version":3,"file":"fungible.js","sourceRoot":"","sources":["../src/fungible.ts"],"names":[],"mappings":"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"}
|
package/dist/non-fungible.js
CHANGED
|
@@ -103,18 +103,15 @@ function addBase(c, name, symbol, tokenUri, pausable, explicitImplementations) {
|
|
|
103
103
|
c.addUseClause('stellar_tokens::non_fungible', 'NonFungibleToken');
|
|
104
104
|
if (explicitImplementations)
|
|
105
105
|
c.addUseClause('stellar_tokens::non_fungible', 'ContractOverrides');
|
|
106
|
-
else
|
|
107
|
-
c.addUseClause('stellar_macros', 'default_impl');
|
|
108
106
|
c.addUseClause('soroban_sdk', 'contract');
|
|
109
107
|
c.addUseClause('soroban_sdk', 'contractimpl');
|
|
110
108
|
c.addUseClause('soroban_sdk', 'String');
|
|
111
109
|
c.addUseClause('soroban_sdk', 'Env');
|
|
112
|
-
|
|
113
|
-
c.addUseClause('soroban_sdk', 'Address');
|
|
110
|
+
c.addUseClause('soroban_sdk', 'Address');
|
|
114
111
|
const nonFungibleTokenTrait = {
|
|
115
112
|
traitName: 'NonFungibleToken',
|
|
116
113
|
structName: c.name,
|
|
117
|
-
tags: explicitImplementations ? ['contractimpl'] : ['
|
|
114
|
+
tags: explicitImplementations ? ['contractimpl'] : ['contractimpl(contracttrait)'],
|
|
118
115
|
assocType: 'type ContractType = Base;',
|
|
119
116
|
};
|
|
120
117
|
c.addTraitImplBlock(nonFungibleTokenTrait);
|
|
@@ -133,7 +130,7 @@ function addBurnable(c, pausable, explicitImplementations) {
|
|
|
133
130
|
const nonFungibleBurnableTrait = {
|
|
134
131
|
traitName: 'NonFungibleBurnable',
|
|
135
132
|
structName: c.name,
|
|
136
|
-
tags: ['contractimpl'],
|
|
133
|
+
tags: explicitImplementations ? ['contractimpl'] : ['contractimpl(contracttrait)'],
|
|
137
134
|
section: 'Extensions',
|
|
138
135
|
};
|
|
139
136
|
if (pausable) {
|
|
@@ -146,21 +143,15 @@ function addBurnable(c, pausable, explicitImplementations) {
|
|
|
146
143
|
else if (explicitImplementations)
|
|
147
144
|
c.addTraitForEachFunctions(nonFungibleBurnableTrait, nonFungibleBurnableFunctions);
|
|
148
145
|
else {
|
|
149
|
-
// prepend '#[default_impl]'
|
|
150
|
-
nonFungibleBurnableTrait.tags.unshift('default_impl');
|
|
151
146
|
c.addTraitImplBlock(nonFungibleBurnableTrait);
|
|
152
147
|
}
|
|
153
148
|
}
|
|
154
149
|
function addEnumerable(c, explicitImplementations) {
|
|
155
150
|
c.addUseClause('stellar_tokens::non_fungible', 'enumerable::{NonFungibleEnumerable, Enumerable}');
|
|
156
|
-
if (explicitImplementations)
|
|
157
|
-
c.addUseClause('soroban_sdk', 'Address');
|
|
158
|
-
else
|
|
159
|
-
c.addUseClause('stellar_macros', 'default_impl');
|
|
160
151
|
const nonFungibleEnumerableTrait = {
|
|
161
152
|
traitName: 'NonFungibleEnumerable',
|
|
162
153
|
structName: c.name,
|
|
163
|
-
tags: explicitImplementations ? ['contractimpl'] : ['
|
|
154
|
+
tags: explicitImplementations ? ['contractimpl'] : ['contractimpl(contracttrait)'],
|
|
164
155
|
section: 'Extensions',
|
|
165
156
|
};
|
|
166
157
|
if (explicitImplementations)
|
|
@@ -171,7 +162,6 @@ function addEnumerable(c, explicitImplementations) {
|
|
|
171
162
|
}
|
|
172
163
|
function addConsecutive(c, pausable, access, explicitImplementations) {
|
|
173
164
|
c.addUseClause('stellar_tokens::non_fungible', 'consecutive::{NonFungibleConsecutive, Consecutive}');
|
|
174
|
-
c.addUseClause('soroban_sdk', 'Address');
|
|
175
165
|
const effectiveAccess = access === false ? set_access_control_1.DEFAULT_ACCESS_CONTROL : access;
|
|
176
166
|
const nonFungibleConsecutiveTrait = {
|
|
177
167
|
traitName: 'NonFungibleConsecutive',
|
|
@@ -193,7 +183,6 @@ function addConsecutive(c, pausable, access, explicitImplementations) {
|
|
|
193
183
|
}, explicitImplementations);
|
|
194
184
|
}
|
|
195
185
|
function addMintable(c, enumerable, pausable, sequential, access, explicitImplementations) {
|
|
196
|
-
c.addUseClause('soroban_sdk', 'Address');
|
|
197
186
|
const accessProps = { useMacro: true, role: 'minter', caller: 'caller' };
|
|
198
187
|
const effectiveAccess = access === false ? set_access_control_1.DEFAULT_ACCESS_CONTROL : access;
|
|
199
188
|
let mintFn;
|
package/dist/non-fungible.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"non-fungible.js","sourceRoot":"","sources":["../src/non-fungible.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"non-fungible.js","sourceRoot":"","sources":["../src/non-fungible.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"set-access-control.d.ts","sourceRoot":"","sources":["../src/set-access-control.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAGpF,eAAO,MAAM,aAAa,sCAAuC,CAAC;AAClE,eAAO,MAAM,sBAAsB,YAAY,CAAC;AAEhD,MAAM,MAAM,MAAM,GAAG,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,CAAC,CAAC;AACpD,MAAM,MAAM,WAAW,GAAG;IACxB,QAAQ,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,CAAC;AAEF;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,EAAE,uBAAuB,UAAQ,GAAG,IAAI,CAuD1G;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,CAAC,EAAE,eAAe,EAClB,KAAK,EAAE,kBAAkB,GAAG,SAAS,EACrC,EAAE,EAAE,YAAY,EAChB,MAAM,EAAE,MAAM,EACd,WAAW,GAAE,WAAgC,EAC7C,uBAAuB,UAAQ,GAC9B,IAAI,
|
|
1
|
+
{"version":3,"file":"set-access-control.d.ts","sourceRoot":"","sources":["../src/set-access-control.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAGpF,eAAO,MAAM,aAAa,sCAAuC,CAAC;AAClE,eAAO,MAAM,sBAAsB,YAAY,CAAC;AAEhD,MAAM,MAAM,MAAM,GAAG,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,CAAC,CAAC;AACpD,MAAM,MAAM,WAAW,GAAG;IACxB,QAAQ,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,CAAC;AAEF;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,EAAE,uBAAuB,UAAQ,GAAG,IAAI,CAuD1G;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,CAAC,EAAE,eAAe,EAClB,KAAK,EAAE,kBAAkB,GAAG,SAAS,EACrC,EAAE,EAAE,YAAY,EAChB,MAAM,EAAE,MAAM,EACd,WAAW,GAAE,WAAgC,EAC7C,uBAAuB,UAAQ,GAC9B,IAAI,CAqDN"}
|
|
@@ -23,7 +23,7 @@ function setAccessControl(c, access, explicitImplementations = false) {
|
|
|
23
23
|
const ownableTrait = {
|
|
24
24
|
traitName: 'Ownable',
|
|
25
25
|
structName: c.name,
|
|
26
|
-
tags: explicitImplementations ? ['contractimpl'] : ['
|
|
26
|
+
tags: explicitImplementations ? ['contractimpl'] : ['contractimpl(contracttrait)'],
|
|
27
27
|
section: 'Utils',
|
|
28
28
|
};
|
|
29
29
|
if (explicitImplementations) {
|
|
@@ -44,7 +44,7 @@ function setAccessControl(c, access, explicitImplementations = false) {
|
|
|
44
44
|
const accessControlTrait = {
|
|
45
45
|
traitName: 'AccessControl',
|
|
46
46
|
structName: c.name,
|
|
47
|
-
tags: explicitImplementations ? ['contractimpl'] : ['
|
|
47
|
+
tags: explicitImplementations ? ['contractimpl'] : ['contractimpl(contracttrait)'],
|
|
48
48
|
section: 'Utils',
|
|
49
49
|
};
|
|
50
50
|
if (explicitImplementations) {
|
|
@@ -87,14 +87,15 @@ function requireAccessControl(c, trait, fn, access, accessProps = { useMacro: tr
|
|
|
87
87
|
const { useMacro, caller, role } = accessProps;
|
|
88
88
|
if (caller && role) {
|
|
89
89
|
c.addUseClause('soroban_sdk', 'Symbol');
|
|
90
|
+
c.addUseClause('soroban_sdk', 'Vec');
|
|
90
91
|
c.addConstructorArgument({ name: role, type: 'Address' });
|
|
91
|
-
c.addConstructorCode(`access_control::grant_role_no_auth(e,
|
|
92
|
+
c.addConstructorCode(`access_control::grant_role_no_auth(e, &${role}, &Symbol::new(e, "${role}"), &admin);`);
|
|
92
93
|
if (useMacro) {
|
|
93
94
|
c.addUseClause('stellar_macros', 'only_role');
|
|
94
95
|
c.addFunctionTag(fn, `only_role(${caller}, "${role}")`, trait);
|
|
95
96
|
}
|
|
96
97
|
else {
|
|
97
|
-
c.addFunctionCodeBefore(fn, [`access_control::ensure_role(e,
|
|
98
|
+
c.addFunctionCodeBefore(fn, [`access_control::ensure_role(e, &Symbol::new(e, "${role}"), ${caller});`], trait);
|
|
98
99
|
}
|
|
99
100
|
}
|
|
100
101
|
else {
|
|
@@ -139,6 +140,11 @@ const accessControlFunctions = (0, define_functions_1.defineFunctions)({
|
|
|
139
140
|
returns: 'Option<u32>',
|
|
140
141
|
code: ['access_control::has_role(e, &account, &role)'],
|
|
141
142
|
},
|
|
143
|
+
get_existing_roles: {
|
|
144
|
+
args: [(0, common_options_1.getSelfArg)()],
|
|
145
|
+
returns: 'Vec<Symbol>',
|
|
146
|
+
code: ['access_control::get_existing_roles(e)'],
|
|
147
|
+
},
|
|
142
148
|
get_role_member_count: {
|
|
143
149
|
args: [(0, common_options_1.getSelfArg)(), { name: 'role', type: 'Symbol' }],
|
|
144
150
|
returns: 'u32',
|
|
@@ -162,24 +168,24 @@ const accessControlFunctions = (0, define_functions_1.defineFunctions)({
|
|
|
162
168
|
grant_role: {
|
|
163
169
|
args: [
|
|
164
170
|
(0, common_options_1.getSelfArg)(),
|
|
165
|
-
{ name: 'caller', type: 'Address' },
|
|
166
171
|
{ name: 'account', type: 'Address' },
|
|
167
172
|
{ name: 'role', type: 'Symbol' },
|
|
173
|
+
{ name: 'caller', type: 'Address' },
|
|
168
174
|
],
|
|
169
|
-
code: ['access_control::grant_role(e, &
|
|
175
|
+
code: ['access_control::grant_role(e, &account, &role, &caller);'],
|
|
170
176
|
},
|
|
171
177
|
revoke_role: {
|
|
172
178
|
args: [
|
|
173
179
|
(0, common_options_1.getSelfArg)(),
|
|
174
|
-
{ name: 'caller', type: 'Address' },
|
|
175
180
|
{ name: 'account', type: 'Address' },
|
|
176
181
|
{ name: 'role', type: 'Symbol' },
|
|
182
|
+
{ name: 'caller', type: 'Address' },
|
|
177
183
|
],
|
|
178
|
-
code: ['access_control::revoke_role(e, &
|
|
184
|
+
code: ['access_control::revoke_role(e, &account, &role, &caller);'],
|
|
179
185
|
},
|
|
180
186
|
renounce_role: {
|
|
181
|
-
args: [(0, common_options_1.getSelfArg)(), { name: '
|
|
182
|
-
code: ['access_control::renounce_role(e, &
|
|
187
|
+
args: [(0, common_options_1.getSelfArg)(), { name: 'role', type: 'Symbol' }, { name: 'caller', type: 'Address' }],
|
|
188
|
+
code: ['access_control::renounce_role(e, &role, &caller);'],
|
|
183
189
|
},
|
|
184
190
|
transfer_admin_role: {
|
|
185
191
|
args: [(0, common_options_1.getSelfArg)(), { name: 'new_admin', type: 'Address' }, { name: 'live_until_ledger', type: 'u32' }],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"set-access-control.js","sourceRoot":"","sources":["../src/set-access-control.ts"],"names":[],"mappings":";;;AAiBA,4CAuDC;AAKD,
|
|
1
|
+
{"version":3,"file":"set-access-control.js","sourceRoot":"","sources":["../src/set-access-control.ts"],"names":[],"mappings":";;;AAiBA,4CAuDC;AAKD,oDA4DC;AAzID,qDAA8C;AAE9C,+DAA2D;AAE9C,QAAA,aAAa,GAAG,CAAC,KAAK,EAAE,SAAS,EAAE,OAAO,CAAU,CAAC;AACrD,QAAA,sBAAsB,GAAG,SAAS,CAAC;AAShD;;GAEG;AACH,SAAgB,gBAAgB,CAAC,CAAkB,EAAE,MAAc,EAAE,uBAAuB,GAAG,KAAK;IAClG,QAAQ,MAAM,EAAE,CAAC;QACf,KAAK,KAAK;YACR,MAAM;QACR,KAAK,SAAS,CAAC,CAAC,CAAC;YACf,IAAI,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;gBACf,CAAC,CAAC,OAAO,GAAG,IAAI,CAAC;gBACjB,CAAC,CAAC,YAAY,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;gBACzC,CAAC,CAAC,YAAY,CAAC,yBAAyB,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;gBACxE,CAAC,CAAC,YAAY,CAAC,yBAAyB,EAAE,SAAS,CAAC,CAAC;gBAErD,MAAM,YAAY,GAAG;oBACnB,SAAS,EAAE,SAAS;oBACpB,UAAU,EAAE,CAAC,CAAC,IAAI;oBAClB,IAAI,EAAE,uBAAuB,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,6BAA6B,CAAC;oBAClF,OAAO,EAAE,OAAO;iBACjB,CAAC;gBACF,IAAI,uBAAuB,EAAE,CAAC;oBAC5B,CAAC,CAAC,wBAAwB,CAAC,YAAY,EAAE,gBAAgB,CAAC,CAAC;gBAC7D,CAAC;qBAAM,CAAC;oBACN,CAAC,CAAC,iBAAiB,CAAC,YAAY,CAAC,CAAC;gBACpC,CAAC;gBAED,CAAC,CAAC,sBAAsB,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC;gBAC7D,CAAC,CAAC,kBAAkB,CAAC,gCAAgC,CAAC,CAAC;YACzD,CAAC;YACD,MAAM;QACR,CAAC;QACD,KAAK,OAAO,CAAC,CAAC,CAAC;YACb,CAAC,CAAC,YAAY,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;YACzC,CAAC,CAAC,YAAY,CAAC,gCAAgC,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,gBAAgB,EAAE,CAAC,CAAC;YACtF,CAAC,CAAC,YAAY,CAAC,gCAAgC,EAAE,eAAe,CAAC,CAAC;YAElE,MAAM,kBAAkB,GAAG;gBACzB,SAAS,EAAE,eAAe;gBAC1B,UAAU,EAAE,CAAC,CAAC,IAAI;gBAClB,IAAI,EAAE,uBAAuB,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,6BAA6B,CAAC;gBAClF,OAAO,EAAE,OAAO;aACjB,CAAC;YACF,IAAI,uBAAuB,EAAE,CAAC;gBAC5B,CAAC,CAAC,YAAY,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;gBACxC,CAAC,CAAC,wBAAwB,CAAC,kBAAkB,EAAE,sBAAsB,CAAC,CAAC;YACzE,CAAC;iBAAM,CAAC;gBACN,CAAC,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,CAAC;YAC1C,CAAC;YAED,CAAC,CAAC,sBAAsB,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC;YAC7D,CAAC,CAAC,kBAAkB,CAAC,uCAAuC,CAAC,CAAC;YAC9D,MAAM;QACR,CAAC;QACD,OAAO,CAAC,CAAC,CAAC;YACR,MAAM,CAAC,GAAU,MAAM,CAAC;YACxB,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;QAChD,CAAC;IACH,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAgB,oBAAoB,CAClC,CAAkB,EAClB,KAAqC,EACrC,EAAgB,EAChB,MAAc,EACd,cAA2B,EAAE,QAAQ,EAAE,IAAI,EAAE,EAC7C,uBAAuB,GAAG,KAAK;IAE/B,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;QACrB,MAAM,GAAG,8BAAsB,CAAC;IAClC,CAAC;IACD,gBAAgB,CAAC,CAAC,EAAE,MAAM,EAAE,uBAAuB,CAAC,CAAC;IAErD,QAAQ,MAAM,EAAE,CAAC;QACf,KAAK,SAAS,CAAC,CAAC,CAAC;YACf,CAAC,CAAC,YAAY,CAAC,gBAAgB,EAAE,YAAY,CAAC,CAAC;YAE/C,IAAI,WAAW,CAAC,QAAQ,EAAE,CAAC;gBACzB,CAAC,CAAC,cAAc,CAAC,EAAE,EAAE,YAAY,EAAE,KAAK,CAAC,CAAC;YAC5C,CAAC;iBAAM,CAAC;gBACN,CAAC,CAAC,qBAAqB,CAAC,EAAE,EAAE,CAAC,iCAAiC,CAAC,EAAE,KAAK,CAAC,CAAC;YAC1E,CAAC;YAED,MAAM;QACR,CAAC;QACD,KAAK,OAAO,CAAC,CAAC,CAAC;YACb,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,WAAW,CAAC;YAE/C,IAAI,MAAM,IAAI,IAAI,EAAE,CAAC;gBACnB,CAAC,CAAC,YAAY,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;gBACxC,CAAC,CAAC,YAAY,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC;gBACrC,CAAC,CAAC,sBAAsB,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC;gBAC1D,CAAC,CAAC,kBAAkB,CAAC,0CAA0C,IAAI,sBAAsB,IAAI,cAAc,CAAC,CAAC;gBAE7G,IAAI,QAAQ,EAAE,CAAC;oBACb,CAAC,CAAC,YAAY,CAAC,gBAAgB,EAAE,WAAW,CAAC,CAAC;oBAC9C,CAAC,CAAC,cAAc,CAAC,EAAE,EAAE,aAAa,MAAM,MAAM,IAAI,IAAI,EAAE,KAAK,CAAC,CAAC;gBACjE,CAAC;qBAAM,CAAC;oBACN,CAAC,CAAC,qBAAqB,CACrB,EAAE,EACF,CAAC,mDAAmD,IAAI,OAAO,MAAM,IAAI,CAAC,EAC1E,KAAK,CACN,CAAC;gBACJ,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,IAAI,QAAQ,EAAE,CAAC;oBACb,CAAC,CAAC,YAAY,CAAC,gBAAgB,EAAE,YAAY,CAAC,CAAC;oBAC/C,CAAC,CAAC,cAAc,CAAC,EAAE,EAAE,YAAY,EAAE,KAAK,CAAC,CAAC;gBAC5C,CAAC;qBAAM,CAAC;oBACN,CAAC,CAAC,qBAAqB,CAAC,EAAE,EAAE,CAAC,wCAAwC,CAAC,EAAE,KAAK,CAAC,CAAC;gBACjF,CAAC;YACH,CAAC;YAED,MAAM;QACR,CAAC;QACD,OAAO,CAAC,CAAC,CAAC;YACR,MAAM,CAAC,GAAU,MAAM,CAAC;YACxB,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;QAChD,CAAC;IACH,CAAC;AACH,CAAC;AAED,MAAM,gBAAgB,GAAG,IAAA,kCAAe,EAAC;IACvC,SAAS,EAAE;QACT,IAAI,EAAE,CAAC,IAAA,2BAAU,GAAE,CAAC;QACpB,OAAO,EAAE,iBAAiB;QAC1B,IAAI,EAAE,CAAC,uBAAuB,CAAC;KAChC;IACD,kBAAkB,EAAE;QAClB,IAAI,EAAE,CAAC,IAAA,2BAAU,GAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE,IAAI,EAAE,mBAAmB,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;QACxG,IAAI,EAAE,CAAC,gEAAgE,CAAC;KACzE;IACD,gBAAgB,EAAE;QAChB,IAAI,EAAE,CAAC,IAAA,2BAAU,GAAE,CAAC;QACpB,IAAI,EAAE,CAAC,+BAA+B,CAAC;KACxC;IACD,kBAAkB,EAAE;QAClB,IAAI,EAAE,CAAC,IAAA,2BAAU,GAAE,CAAC;QACpB,IAAI,EAAE,CAAC,iCAAiC,CAAC;KAC1C;CACF,CAAC,CAAC;AAEH,MAAM,sBAAsB,GAAG,IAAA,kCAAe,EAAC;IAC7C,QAAQ,EAAE;QACR,IAAI,EAAE,CAAC,IAAA,2BAAU,GAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;QAC5F,OAAO,EAAE,aAAa;QACtB,IAAI,EAAE,CAAC,8CAA8C,CAAC;KACvD;IACD,kBAAkB,EAAE;QAClB,IAAI,EAAE,CAAC,IAAA,2BAAU,GAAE,CAAC;QACpB,OAAO,EAAE,aAAa;QACtB,IAAI,EAAE,CAAC,uCAAuC,CAAC;KAChD;IACD,qBAAqB,EAAE;QACrB,IAAI,EAAE,CAAC,IAAA,2BAAU,GAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;QACtD,OAAO,EAAE,KAAK;QACd,IAAI,EAAE,CAAC,iDAAiD,CAAC;KAC1D;IACD,eAAe,EAAE;QACf,IAAI,EAAE,CAAC,IAAA,2BAAU,GAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;QACtF,OAAO,EAAE,SAAS;QAClB,IAAI,EAAE,CAAC,kDAAkD,CAAC;KAC3D;IACD,cAAc,EAAE;QACd,IAAI,EAAE,CAAC,IAAA,2BAAU,GAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;QACtD,OAAO,EAAE,gBAAgB;QACzB,IAAI,EAAE,CAAC,0CAA0C,CAAC;KACnD;IACD,SAAS,EAAE;QACT,IAAI,EAAE,CAAC,IAAA,2BAAU,GAAE,CAAC;QACpB,OAAO,EAAE,iBAAiB;QAC1B,IAAI,EAAE,CAAC,8BAA8B,CAAC;KACvC;IACD,UAAU,EAAE;QACV,IAAI,EAAE;YACJ,IAAA,2BAAU,GAAE;YACZ,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE;YACpC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE;YAChC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE;SACpC;QACD,IAAI,EAAE,CAAC,0DAA0D,CAAC;KACnE;IACD,WAAW,EAAE;QACX,IAAI,EAAE;YACJ,IAAA,2BAAU,GAAE;YACZ,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE;YACpC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE;YAChC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE;SACpC;QACD,IAAI,EAAE,CAAC,2DAA2D,CAAC;KACpE;IACD,aAAa,EAAE;QACb,IAAI,EAAE,CAAC,IAAA,2BAAU,GAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QAC3F,IAAI,EAAE,CAAC,mDAAmD,CAAC;KAC5D;IACD,mBAAmB,EAAE;QACnB,IAAI,EAAE,CAAC,IAAA,2BAAU,GAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE,IAAI,EAAE,mBAAmB,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;QACxG,IAAI,EAAE,CAAC,wEAAwE,CAAC;KACjF;IACD,qBAAqB,EAAE;QACrB,IAAI,EAAE,CAAC,IAAA,2BAAU,GAAE,CAAC;QACpB,IAAI,EAAE,CAAC,2CAA2C,CAAC;KACpD;IACD,cAAc,EAAE;QACd,IAAI,EAAE,CAAC,IAAA,2BAAU,GAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;QAC9F,IAAI,EAAE,CAAC,wDAAwD,CAAC;KACjE;IACD,cAAc,EAAE;QACd,IAAI,EAAE,CAAC,IAAA,2BAAU,GAAE,CAAC;QACpB,IAAI,EAAE,CAAC,oCAAoC,CAAC;KAC7C;CACF,CAAC,CAAC"}
|
package/dist/utils/version.d.ts
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* The actual latest version to use in links.
|
|
3
3
|
*/
|
|
4
|
-
export declare const contractsVersion = "0.
|
|
5
|
-
export declare const contractsVersionTag = "v0.
|
|
4
|
+
export declare const contractsVersion = "0.6.0";
|
|
5
|
+
export declare const contractsVersionTag = "v0.6.0";
|
|
6
6
|
/**
|
|
7
7
|
* Semantic version string representing of the minimum compatible version of Contracts to display in output.
|
|
8
8
|
*/
|
|
9
|
-
export declare const compatibleContractsSemver = "^0.
|
|
9
|
+
export declare const compatibleContractsSemver = "^0.6.0";
|
|
10
10
|
/**
|
|
11
11
|
* The Soroban version for which compilation and testing have passing tests
|
|
12
12
|
*/
|
|
13
|
-
export declare const compatibleSorobanVersion = "
|
|
13
|
+
export declare const compatibleSorobanVersion = "23.4.0";
|
|
14
14
|
//# sourceMappingURL=version.d.ts.map
|
package/dist/utils/version.js
CHANGED
|
@@ -4,14 +4,14 @@ exports.compatibleSorobanVersion = exports.compatibleContractsSemver = exports.c
|
|
|
4
4
|
/**
|
|
5
5
|
* The actual latest version to use in links.
|
|
6
6
|
*/
|
|
7
|
-
exports.contractsVersion = '0.
|
|
7
|
+
exports.contractsVersion = '0.6.0';
|
|
8
8
|
exports.contractsVersionTag = `v${exports.contractsVersion}`;
|
|
9
9
|
/**
|
|
10
10
|
* Semantic version string representing of the minimum compatible version of Contracts to display in output.
|
|
11
11
|
*/
|
|
12
|
-
exports.compatibleContractsSemver = '^0.
|
|
12
|
+
exports.compatibleContractsSemver = '^0.6.0';
|
|
13
13
|
/**
|
|
14
14
|
* The Soroban version for which compilation and testing have passing tests
|
|
15
15
|
*/
|
|
16
|
-
exports.compatibleSorobanVersion = '
|
|
16
|
+
exports.compatibleSorobanVersion = '23.4.0';
|
|
17
17
|
//# sourceMappingURL=version.js.map
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@openzeppelin/wizard-stellar",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.5.0",
|
|
4
4
|
"description": "A boilerplate generator to get started with OpenZeppelin Stellar Soroban Contracts",
|
|
5
5
|
"license": "AGPL-3.0-only",
|
|
6
6
|
"repository": "https://github.com/OpenZeppelin/contracts-wizard",
|
package/src/add-pausable.ts
CHANGED
|
@@ -7,7 +7,6 @@ import { defineFunctions } from './utils/define-functions';
|
|
|
7
7
|
export function addPausable(c: ContractBuilder, access: Access, explicitImplementations: boolean) {
|
|
8
8
|
c.addUseClause('stellar_contract_utils::pausable', 'self', { alias: 'pausable' });
|
|
9
9
|
c.addUseClause('stellar_contract_utils::pausable', 'Pausable');
|
|
10
|
-
if (!explicitImplementations) c.addUseClause('stellar_macros', 'default_impl');
|
|
11
10
|
|
|
12
11
|
const pausableTrait = {
|
|
13
12
|
traitName: 'Pausable',
|
package/src/fungible.ts
CHANGED
|
@@ -97,24 +97,24 @@ function addBase(
|
|
|
97
97
|
explicitImplementations: boolean,
|
|
98
98
|
) {
|
|
99
99
|
// Set metadata
|
|
100
|
-
c.addConstructorCode(`Base::set_metadata(e,
|
|
100
|
+
c.addConstructorCode(`Base::set_metadata(e, 7, String::from_str(e, "${name}"), String::from_str(e, "${symbol}"));`);
|
|
101
101
|
|
|
102
102
|
// Set token functions
|
|
103
103
|
c.addUseClause('stellar_tokens::fungible', 'Base');
|
|
104
104
|
c.addUseClause('stellar_tokens::fungible', 'FungibleToken');
|
|
105
|
-
if (!explicitImplementations) c.addUseClause('stellar_macros', 'default_impl');
|
|
106
105
|
c.addUseClause('soroban_sdk', 'contract');
|
|
107
106
|
c.addUseClause('soroban_sdk', 'contractimpl');
|
|
108
107
|
c.addUseClause('soroban_sdk', 'String');
|
|
108
|
+
c.addUseClause('soroban_sdk', 'Symbol');
|
|
109
109
|
c.addUseClause('soroban_sdk', 'Env');
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
110
|
+
c.addUseClause('soroban_sdk', 'Address');
|
|
111
|
+
c.addUseClause('soroban_sdk', 'MuxedAddress');
|
|
112
|
+
c.addUseClause('soroban_sdk', 'Vec');
|
|
113
113
|
|
|
114
114
|
const fungibleTokenTrait = {
|
|
115
115
|
traitName: 'FungibleToken',
|
|
116
116
|
structName: c.name,
|
|
117
|
-
tags: explicitImplementations ? ['contractimpl'] : ['
|
|
117
|
+
tags: explicitImplementations ? ['contractimpl'] : ['contractimpl(contracttrait)'],
|
|
118
118
|
assocType: 'type ContractType = Base;',
|
|
119
119
|
};
|
|
120
120
|
|
|
@@ -134,7 +134,6 @@ function addBase(
|
|
|
134
134
|
}
|
|
135
135
|
|
|
136
136
|
function addMintable(c: ContractBuilder, access: Access, pausable: boolean, explicitImplementations: boolean) {
|
|
137
|
-
c.addUseClause('soroban_sdk', 'Address');
|
|
138
137
|
switch (access) {
|
|
139
138
|
case false:
|
|
140
139
|
break;
|
|
@@ -178,12 +177,11 @@ function addMintable(c: ContractBuilder, access: Access, pausable: boolean, expl
|
|
|
178
177
|
|
|
179
178
|
function addBurnable(c: ContractBuilder, pausable: boolean, explicitImplementations: boolean) {
|
|
180
179
|
c.addUseClause('stellar_tokens::fungible', 'burnable::FungibleBurnable');
|
|
181
|
-
c.addUseClause('soroban_sdk', 'Address');
|
|
182
180
|
|
|
183
181
|
const fungibleBurnableTrait = {
|
|
184
182
|
traitName: 'FungibleBurnable',
|
|
185
183
|
structName: c.name,
|
|
186
|
-
tags: ['contractimpl'],
|
|
184
|
+
tags: explicitImplementations ? ['contractimpl'] : ['contractimpl(contracttrait)'],
|
|
187
185
|
section: 'Extensions',
|
|
188
186
|
};
|
|
189
187
|
|
|
@@ -197,8 +195,6 @@ function addBurnable(c: ContractBuilder, pausable: boolean, explicitImplementati
|
|
|
197
195
|
c.addFunctionTag(functions.burn_from, 'when_not_paused', fungibleBurnableTrait);
|
|
198
196
|
} else if (explicitImplementations) c.addTraitForEachFunctions(fungibleBurnableTrait, fungibleBurnableFunctions);
|
|
199
197
|
else {
|
|
200
|
-
// prepend '#[default_impl]'
|
|
201
|
-
fungibleBurnableTrait.tags.unshift('default_impl');
|
|
202
198
|
c.addTraitImplBlock(fungibleBurnableTrait);
|
|
203
199
|
}
|
|
204
200
|
}
|
|
@@ -214,9 +210,7 @@ function addPremint(c: ContractBuilder, amount: string) {
|
|
|
214
210
|
}
|
|
215
211
|
|
|
216
212
|
// TODO: handle signed int?
|
|
217
|
-
const premintAbsolute = toUint(getInitialSupply(amount,
|
|
218
|
-
|
|
219
|
-
c.addUseClause('soroban_sdk', 'Address');
|
|
213
|
+
const premintAbsolute = toUint(getInitialSupply(amount, 7), 'premint', 'u128');
|
|
220
214
|
|
|
221
215
|
c.addConstructorArgument({ name: 'recipient', type: 'Address' });
|
|
222
216
|
c.addConstructorCode(`Base::mint(e, &recipient, ${premintAbsolute});`);
|
|
@@ -285,7 +279,7 @@ export const functions = defineFunctions({
|
|
|
285
279
|
args: [
|
|
286
280
|
getSelfArg(),
|
|
287
281
|
{ name: 'from', type: 'Address' },
|
|
288
|
-
{ name: 'to', type: '
|
|
282
|
+
{ name: 'to', type: 'MuxedAddress' },
|
|
289
283
|
{ name: 'amount', type: 'i128' },
|
|
290
284
|
],
|
|
291
285
|
code: ['Self::ContractType::transfer(e, &from, &to, amount)'],
|
package/src/non-fungible.ts
CHANGED
|
@@ -155,17 +155,16 @@ function addBase(
|
|
|
155
155
|
c.addUseClause('stellar_tokens::non_fungible', 'Base');
|
|
156
156
|
c.addUseClause('stellar_tokens::non_fungible', 'NonFungibleToken');
|
|
157
157
|
if (explicitImplementations) c.addUseClause('stellar_tokens::non_fungible', 'ContractOverrides');
|
|
158
|
-
else c.addUseClause('stellar_macros', 'default_impl');
|
|
159
158
|
c.addUseClause('soroban_sdk', 'contract');
|
|
160
159
|
c.addUseClause('soroban_sdk', 'contractimpl');
|
|
161
160
|
c.addUseClause('soroban_sdk', 'String');
|
|
162
161
|
c.addUseClause('soroban_sdk', 'Env');
|
|
163
|
-
|
|
162
|
+
c.addUseClause('soroban_sdk', 'Address');
|
|
164
163
|
|
|
165
164
|
const nonFungibleTokenTrait = {
|
|
166
165
|
traitName: 'NonFungibleToken',
|
|
167
166
|
structName: c.name,
|
|
168
|
-
tags: explicitImplementations ? ['contractimpl'] : ['
|
|
167
|
+
tags: explicitImplementations ? ['contractimpl'] : ['contractimpl(contracttrait)'],
|
|
169
168
|
assocType: 'type ContractType = Base;',
|
|
170
169
|
};
|
|
171
170
|
|
|
@@ -190,7 +189,7 @@ function addBurnable(c: ContractBuilder, pausable: boolean, explicitImplementati
|
|
|
190
189
|
const nonFungibleBurnableTrait = {
|
|
191
190
|
traitName: 'NonFungibleBurnable',
|
|
192
191
|
structName: c.name,
|
|
193
|
-
tags: ['contractimpl'],
|
|
192
|
+
tags: explicitImplementations ? ['contractimpl'] : ['contractimpl(contracttrait)'],
|
|
194
193
|
section: 'Extensions',
|
|
195
194
|
};
|
|
196
195
|
|
|
@@ -205,21 +204,17 @@ function addBurnable(c: ContractBuilder, pausable: boolean, explicitImplementati
|
|
|
205
204
|
} else if (explicitImplementations)
|
|
206
205
|
c.addTraitForEachFunctions(nonFungibleBurnableTrait, nonFungibleBurnableFunctions);
|
|
207
206
|
else {
|
|
208
|
-
// prepend '#[default_impl]'
|
|
209
|
-
nonFungibleBurnableTrait.tags.unshift('default_impl');
|
|
210
207
|
c.addTraitImplBlock(nonFungibleBurnableTrait);
|
|
211
208
|
}
|
|
212
209
|
}
|
|
213
210
|
|
|
214
211
|
function addEnumerable(c: ContractBuilder, explicitImplementations: boolean) {
|
|
215
212
|
c.addUseClause('stellar_tokens::non_fungible', 'enumerable::{NonFungibleEnumerable, Enumerable}');
|
|
216
|
-
if (explicitImplementations) c.addUseClause('soroban_sdk', 'Address');
|
|
217
|
-
else c.addUseClause('stellar_macros', 'default_impl');
|
|
218
213
|
|
|
219
214
|
const nonFungibleEnumerableTrait = {
|
|
220
215
|
traitName: 'NonFungibleEnumerable',
|
|
221
216
|
structName: c.name,
|
|
222
|
-
tags: explicitImplementations ? ['contractimpl'] : ['
|
|
217
|
+
tags: explicitImplementations ? ['contractimpl'] : ['contractimpl(contracttrait)'],
|
|
223
218
|
section: 'Extensions',
|
|
224
219
|
};
|
|
225
220
|
if (explicitImplementations)
|
|
@@ -231,7 +226,6 @@ function addEnumerable(c: ContractBuilder, explicitImplementations: boolean) {
|
|
|
231
226
|
|
|
232
227
|
function addConsecutive(c: ContractBuilder, pausable: boolean, access: Access, explicitImplementations: boolean) {
|
|
233
228
|
c.addUseClause('stellar_tokens::non_fungible', 'consecutive::{NonFungibleConsecutive, Consecutive}');
|
|
234
|
-
c.addUseClause('soroban_sdk', 'Address');
|
|
235
229
|
|
|
236
230
|
const effectiveAccess = access === false ? DEFAULT_ACCESS_CONTROL : access;
|
|
237
231
|
const nonFungibleConsecutiveTrait = {
|
|
@@ -274,7 +268,6 @@ function addMintable(
|
|
|
274
268
|
access: Access,
|
|
275
269
|
explicitImplementations: boolean,
|
|
276
270
|
) {
|
|
277
|
-
c.addUseClause('soroban_sdk', 'Address');
|
|
278
271
|
const accessProps = { useMacro: true, role: 'minter', caller: 'caller' };
|
|
279
272
|
const effectiveAccess = access === false ? DEFAULT_ACCESS_CONTROL : access;
|
|
280
273
|
|
|
@@ -29,7 +29,7 @@ export function setAccessControl(c: ContractBuilder, access: Access, explicitImp
|
|
|
29
29
|
const ownableTrait = {
|
|
30
30
|
traitName: 'Ownable',
|
|
31
31
|
structName: c.name,
|
|
32
|
-
tags: explicitImplementations ? ['contractimpl'] : ['
|
|
32
|
+
tags: explicitImplementations ? ['contractimpl'] : ['contractimpl(contracttrait)'],
|
|
33
33
|
section: 'Utils',
|
|
34
34
|
};
|
|
35
35
|
if (explicitImplementations) {
|
|
@@ -51,7 +51,7 @@ export function setAccessControl(c: ContractBuilder, access: Access, explicitImp
|
|
|
51
51
|
const accessControlTrait = {
|
|
52
52
|
traitName: 'AccessControl',
|
|
53
53
|
structName: c.name,
|
|
54
|
-
tags: explicitImplementations ? ['contractimpl'] : ['
|
|
54
|
+
tags: explicitImplementations ? ['contractimpl'] : ['contractimpl(contracttrait)'],
|
|
55
55
|
section: 'Utils',
|
|
56
56
|
};
|
|
57
57
|
if (explicitImplementations) {
|
|
@@ -105,8 +105,9 @@ export function requireAccessControl(
|
|
|
105
105
|
|
|
106
106
|
if (caller && role) {
|
|
107
107
|
c.addUseClause('soroban_sdk', 'Symbol');
|
|
108
|
+
c.addUseClause('soroban_sdk', 'Vec');
|
|
108
109
|
c.addConstructorArgument({ name: role, type: 'Address' });
|
|
109
|
-
c.addConstructorCode(`access_control::grant_role_no_auth(e,
|
|
110
|
+
c.addConstructorCode(`access_control::grant_role_no_auth(e, &${role}, &Symbol::new(e, "${role}"), &admin);`);
|
|
110
111
|
|
|
111
112
|
if (useMacro) {
|
|
112
113
|
c.addUseClause('stellar_macros', 'only_role');
|
|
@@ -114,7 +115,7 @@ export function requireAccessControl(
|
|
|
114
115
|
} else {
|
|
115
116
|
c.addFunctionCodeBefore(
|
|
116
117
|
fn,
|
|
117
|
-
[`access_control::ensure_role(e,
|
|
118
|
+
[`access_control::ensure_role(e, &Symbol::new(e, "${role}"), ${caller});`],
|
|
118
119
|
trait,
|
|
119
120
|
);
|
|
120
121
|
}
|
|
@@ -162,6 +163,11 @@ const accessControlFunctions = defineFunctions({
|
|
|
162
163
|
returns: 'Option<u32>',
|
|
163
164
|
code: ['access_control::has_role(e, &account, &role)'],
|
|
164
165
|
},
|
|
166
|
+
get_existing_roles: {
|
|
167
|
+
args: [getSelfArg()],
|
|
168
|
+
returns: 'Vec<Symbol>',
|
|
169
|
+
code: ['access_control::get_existing_roles(e)'],
|
|
170
|
+
},
|
|
165
171
|
get_role_member_count: {
|
|
166
172
|
args: [getSelfArg(), { name: 'role', type: 'Symbol' }],
|
|
167
173
|
returns: 'u32',
|
|
@@ -185,24 +191,24 @@ const accessControlFunctions = defineFunctions({
|
|
|
185
191
|
grant_role: {
|
|
186
192
|
args: [
|
|
187
193
|
getSelfArg(),
|
|
188
|
-
{ name: 'caller', type: 'Address' },
|
|
189
194
|
{ name: 'account', type: 'Address' },
|
|
190
195
|
{ name: 'role', type: 'Symbol' },
|
|
196
|
+
{ name: 'caller', type: 'Address' },
|
|
191
197
|
],
|
|
192
|
-
code: ['access_control::grant_role(e, &
|
|
198
|
+
code: ['access_control::grant_role(e, &account, &role, &caller);'],
|
|
193
199
|
},
|
|
194
200
|
revoke_role: {
|
|
195
201
|
args: [
|
|
196
202
|
getSelfArg(),
|
|
197
|
-
{ name: 'caller', type: 'Address' },
|
|
198
203
|
{ name: 'account', type: 'Address' },
|
|
199
204
|
{ name: 'role', type: 'Symbol' },
|
|
205
|
+
{ name: 'caller', type: 'Address' },
|
|
200
206
|
],
|
|
201
|
-
code: ['access_control::revoke_role(e, &
|
|
207
|
+
code: ['access_control::revoke_role(e, &account, &role, &caller);'],
|
|
202
208
|
},
|
|
203
209
|
renounce_role: {
|
|
204
|
-
args: [getSelfArg(), { name: '
|
|
205
|
-
code: ['access_control::renounce_role(e, &
|
|
210
|
+
args: [getSelfArg(), { name: 'role', type: 'Symbol' }, { name: 'caller', type: 'Address' }],
|
|
211
|
+
code: ['access_control::renounce_role(e, &role, &caller);'],
|
|
206
212
|
},
|
|
207
213
|
transfer_admin_role: {
|
|
208
214
|
args: [getSelfArg(), { name: 'new_admin', type: 'Address' }, { name: 'live_until_ledger', type: 'u32' }],
|
package/src/utils/version.ts
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* The actual latest version to use in links.
|
|
3
3
|
*/
|
|
4
|
-
export const contractsVersion = '0.
|
|
4
|
+
export const contractsVersion = '0.6.0';
|
|
5
5
|
export const contractsVersionTag = `v${contractsVersion}`;
|
|
6
6
|
|
|
7
7
|
/**
|
|
8
8
|
* Semantic version string representing of the minimum compatible version of Contracts to display in output.
|
|
9
9
|
*/
|
|
10
|
-
export const compatibleContractsSemver = '^0.
|
|
10
|
+
export const compatibleContractsSemver = '^0.6.0';
|
|
11
11
|
|
|
12
12
|
/**
|
|
13
13
|
* The Soroban version for which compilation and testing have passing tests
|
|
14
14
|
*/
|
|
15
|
-
export const compatibleSorobanVersion = '
|
|
15
|
+
export const compatibleSorobanVersion = '23.4.0';
|