@openzeppelin/wizard-stellar 0.2.0 → 0.2.2

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/index.d.ts CHANGED
@@ -14,4 +14,6 @@ export { sanitizeKind } from './kind';
14
14
  export { contractsVersion, contractsVersionTag, compatibleContractsSemver } from './utils/version';
15
15
  export { fungible } from './api';
16
16
  export { nonFungible } from './api';
17
+ export type { FungibleOptions } from './fungible';
18
+ export type { NonFungibleOptions } from './non-fungible';
17
19
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACrE,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,YAAY,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAE7C,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAExC,YAAY,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AACnD,YAAY,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAEvC,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAE5C,OAAO,EAAE,QAAQ,IAAI,YAAY,EAAE,MAAM,YAAY,CAAC;AAEtD,YAAY,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvC,YAAY,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AACnC,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAEtC,OAAO,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,yBAAyB,EAAE,MAAM,iBAAiB,CAAC;AAEnG,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACrE,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,YAAY,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAE7C,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAExC,YAAY,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AACnD,YAAY,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAEvC,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAE5C,OAAO,EAAE,QAAQ,IAAI,YAAY,EAAE,MAAM,YAAY,CAAC;AAEtD,YAAY,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvC,YAAY,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AACnC,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAEtC,OAAO,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,yBAAyB,EAAE,MAAM,iBAAiB,CAAC;AAEnG,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AAEpC,YAAY,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAClD,YAAY,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC"}
@@ -74,7 +74,7 @@ function buildNonFungible(opts) {
74
74
  addBurnable(c, allOpts.pausable);
75
75
  }
76
76
  if (allOpts.enumerable) {
77
- addEnumerable(c, allOpts.burnable);
77
+ addEnumerable(c);
78
78
  }
79
79
  if (allOpts.consecutive) {
80
80
  addConsecutive(c, allOpts.pausable, allOpts.access);
@@ -139,20 +139,18 @@ function addBurnable(c, pausable) {
139
139
  c.addFunctionTag(burnableFunctions.burn_from, 'when_not_paused', nonFungibleBurnableTrait);
140
140
  }
141
141
  }
142
- function addEnumerable(c, burnable) {
142
+ function addEnumerable(c) {
143
143
  c.addUseClause('stellar_non_fungible', 'enumerable::{NonFungibleEnumerable, Enumerable}');
144
- //c.addUseClause('stellar_default_impl_macro', 'default_impl');
144
+ c.addUseClause('stellar_default_impl_macro', 'default_impl');
145
+ c.addUseClause('stellar_non_fungible', 'ContractOverrides');
145
146
  const nonFungibleEnumerableTrait = {
146
147
  traitName: 'NonFungibleEnumerable',
147
148
  structName: c.name,
148
- tags: ['defaultimpl', 'contractimpl'],
149
+ tags: ['default_impl', 'contractimpl'],
149
150
  section: 'Extensions',
150
151
  };
151
152
  c.addTraitImplBlock(nonFungibleEnumerableTrait);
152
153
  c.overrideAssocType('NonFungibleToken', 'type ContractType = Enumerable;');
153
- if (burnable) {
154
- c.overrideAssocType('NonFungibleBurnable', 'type ContractType = Enumerable;');
155
- }
156
154
  // Below is not required due to `defaultimpl` macro. If we require to customize the functions,
157
155
  // then we should:
158
156
  // 1. get rid of the `defaultimpl` macro form `tags` above,
@@ -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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"}
package/dist/print.d.ts CHANGED
@@ -1,3 +1,5 @@
1
1
  import type { Contract } from './contract';
2
+ export declare const createLevelAttributes: string[];
3
+ export declare const removeCreateLevelAttributes: (printedContract: string) => string;
2
4
  export declare function printContract(contract: Contract): string;
3
5
  //# sourceMappingURL=print.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"print.d.ts","sourceRoot":"","sources":["../src/print.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAyD,MAAM,YAAY,CAAC;AAYlG,wBAAgB,aAAa,CAAC,QAAQ,EAAE,QAAQ,GAAG,MAAM,CAkBxD"}
1
+ {"version":3,"file":"print.d.ts","sourceRoot":"","sources":["../src/print.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAyD,MAAM,YAAY,CAAC;AAWlG,eAAO,MAAM,qBAAqB,UAAiB,CAAC;AAEpD,eAAO,MAAM,2BAA2B,oBAAqB,MAAM,WAIhE,CAAC;AAEJ,wBAAgB,aAAa,CAAC,QAAQ,EAAE,QAAQ,GAAG,MAAM,CAkBxD"}
package/dist/print.js CHANGED
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.removeCreateLevelAttributes = exports.createLevelAttributes = void 0;
3
4
  exports.printContract = printContract;
4
5
  const format_lines_1 = require("./utils/format-lines");
5
6
  const common_options_1 = require("./common-options");
@@ -8,11 +9,14 @@ const DEFAULT_SECTION = '1. with no section';
8
9
  const STANDALONE_IMPORTS_GROUP = 'Standalone Imports';
9
10
  const MAX_USE_CLAUSE_LINE_LENGTH = 90;
10
11
  const TAB = ' ';
12
+ exports.createLevelAttributes = [`#![no_std]`];
13
+ const removeCreateLevelAttributes = (printedContract) => exports.createLevelAttributes.reduce((cleanedPrintedContract, createLevelAttribute) => cleanedPrintedContract.replace(createLevelAttribute, ''), printedContract);
14
+ exports.removeCreateLevelAttributes = removeCreateLevelAttributes;
11
15
  function printContract(contract) {
12
16
  return (0, format_lines_1.formatLines)(...(0, format_lines_1.spaceBetween)([
13
17
  `// SPDX-License-Identifier: ${contract.license}`,
14
18
  `// Compatible with OpenZeppelin Stellar Soroban Contracts ${version_1.compatibleContractsSemver}`,
15
- `#![no_std]`,
19
+ ...exports.createLevelAttributes,
16
20
  ], (0, format_lines_1.spaceBetween)(printUseClauses(contract), printVariables(contract), printContractStruct(contract), printContractErrors(contract), printContractFunctions(contract), printImplementedTraits(contract))));
17
21
  }
18
22
  function printContractStruct(contract) {
package/dist/print.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"print.js","sourceRoot":"","sources":["../src/print.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"print.js","sourceRoot":"","sources":["../src/print.ts"],"names":[],"mappings":"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"}
@@ -7,4 +7,8 @@ export declare const contractsVersionTag = "v0.2.0";
7
7
  * Semantic version string representing of the minimum compatible version of Contracts to display in output.
8
8
  */
9
9
  export declare const compatibleContractsSemver = "^0.2.0";
10
+ /**
11
+ * The Soroban version for which compilation and testing have passing tests
12
+ */
13
+ export declare const compatibleSorobanVersion = "22.0.8";
10
14
  //# sourceMappingURL=version.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../../src/utils/version.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,gBAAgB,UAAU,CAAC;AACxC,eAAO,MAAM,mBAAmB,WAAyB,CAAC;AAE1D;;GAEG;AACH,eAAO,MAAM,yBAAyB,WAAW,CAAC"}
1
+ {"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../../src/utils/version.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,gBAAgB,UAAU,CAAC;AACxC,eAAO,MAAM,mBAAmB,WAAyB,CAAC;AAE1D;;GAEG;AACH,eAAO,MAAM,yBAAyB,WAAW,CAAC;AAElD;;GAEG;AACH,eAAO,MAAM,wBAAwB,WAAW,CAAC"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.compatibleContractsSemver = exports.contractsVersionTag = exports.contractsVersion = void 0;
3
+ exports.compatibleSorobanVersion = exports.compatibleContractsSemver = exports.contractsVersionTag = exports.contractsVersion = void 0;
4
4
  /**
5
5
  * The actual latest version to use in links.
6
6
  */
@@ -10,4 +10,8 @@ exports.contractsVersionTag = `v${exports.contractsVersion}`;
10
10
  * Semantic version string representing of the minimum compatible version of Contracts to display in output.
11
11
  */
12
12
  exports.compatibleContractsSemver = '^0.2.0';
13
+ /**
14
+ * The Soroban version for which compilation and testing have passing tests
15
+ */
16
+ exports.compatibleSorobanVersion = '22.0.8';
13
17
  //# sourceMappingURL=version.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/utils/version.ts"],"names":[],"mappings":";;;AAAA;;GAEG;AACU,QAAA,gBAAgB,GAAG,OAAO,CAAC;AAC3B,QAAA,mBAAmB,GAAG,IAAI,wBAAgB,EAAE,CAAC;AAE1D;;GAEG;AACU,QAAA,yBAAyB,GAAG,QAAQ,CAAC"}
1
+ {"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/utils/version.ts"],"names":[],"mappings":";;;AAAA;;GAEG;AACU,QAAA,gBAAgB,GAAG,OAAO,CAAC;AAC3B,QAAA,mBAAmB,GAAG,IAAI,wBAAgB,EAAE,CAAC;AAE1D;;GAEG;AACU,QAAA,yBAAyB,GAAG,QAAQ,CAAC;AAElD;;GAEG;AACU,QAAA,wBAAwB,GAAG,QAAQ,CAAC"}
@@ -0,0 +1,8 @@
1
+ import JSZip from 'jszip';
2
+ import type { GenericOptions } from './build-generic';
3
+ import type { Contract } from './contract';
4
+ declare function pascalToSnakeCase(string: string): string;
5
+ export declare const contractOptionsToScaffoldContractName: typeof pascalToSnakeCase;
6
+ export declare function zipScaffold(c: Contract, opts: GenericOptions): Promise<JSZip>;
7
+ export {};
8
+ //# sourceMappingURL=zip-scaffold.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"zip-scaffold.d.ts","sourceRoot":"","sources":["../src/zip-scaffold.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAuE3C,iBAAS,iBAAiB,CAAC,MAAM,EAAE,MAAM,UAKxC;AAED,eAAO,MAAM,qCAAqC,0BAAoB,CAAC;AA8PvE,wBAAsB,WAAW,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,cAAc,kBAalE"}
@@ -0,0 +1,335 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.contractOptionsToScaffoldContractName = void 0;
7
+ exports.zipScaffold = zipScaffold;
8
+ const jszip_1 = __importDefault(require("jszip"));
9
+ const print_1 = require("./print");
10
+ const version_1 = require("./utils/version");
11
+ const dependencies = {
12
+ base: ['stellar-default-impl-macro'],
13
+ fungible: ['stellar-fungible'],
14
+ nonFungible: ['stellar-non-fungible'],
15
+ pausable: ['stellar-pausable', 'stellar-pausable-macros'],
16
+ upgradable: ['stellar-upgradeable', 'stellar-upgradeable-macros'],
17
+ soroban: ['soroban-sdk'],
18
+ };
19
+ const addDependenciesWith = (dependencyValue, dependenciesToAdd) => dependenciesToAdd.reduce((addedDependency, dependencyName) => {
20
+ return `${addedDependency}${dependencies[dependencyName].map(cargoDependencies => `${cargoDependencies} = ${dependencyValue}\n`).join('')}`;
21
+ }, '');
22
+ const getDependenciesToAdd = (opts) => {
23
+ const dependenciesToAdd = ['base'];
24
+ if (opts.kind === 'Fungible')
25
+ dependenciesToAdd.push('fungible');
26
+ if (opts.kind === 'NonFungible')
27
+ dependenciesToAdd.push('nonFungible');
28
+ if (opts.pausable)
29
+ dependenciesToAdd.push('pausable');
30
+ if (opts.upgradeable)
31
+ dependenciesToAdd.push('upgradable');
32
+ return dependenciesToAdd;
33
+ };
34
+ const test = (c) => `#![cfg(test)]
35
+
36
+ extern crate std;
37
+
38
+ use soroban_sdk::{ ${getAddressArgs(c).length ? 'testutils::Address as _, Address, ' : ''}Env, String };
39
+
40
+ use crate::contract::{ ${c.name}, ${c.name}Client };
41
+
42
+ #[test]
43
+ fn initial_state() {
44
+ let env = Env::default();
45
+
46
+ let contract_addr = env.register(${c.name}, (${getAddressArgs(c)
47
+ .map(() => 'Address::generate(&env)')
48
+ .join(',')}${getAddressArgs(c).length === 1 ? ',' : ''}));
49
+ let client = ${c.name}Client::new(&env, &contract_addr);
50
+
51
+ assert_eq!(client.name(), String::from_str(&env, "${c.name}"));
52
+ }
53
+
54
+ // Add more tests bellow
55
+ `;
56
+ function contractCargo(opts, scaffoldContractName) {
57
+ return `[package]
58
+ name = "${scaffoldContractName.replace(/_/, '-')}-contract"
59
+ edition.workspace = true
60
+ license.workspace = true
61
+ publish = false
62
+ version.workspace = true
63
+
64
+ [lib]
65
+ crate-type = ["cdylib"]
66
+ doctest = false
67
+
68
+ [dependencies]
69
+ ${addDependenciesWith('{ workspace = true }', [...getDependenciesToAdd(opts), 'soroban'])}
70
+ [dev-dependencies]
71
+ ${addDependenciesWith('{ workspace = true, features = ["testutils"] }', ['soroban'])}
72
+ `;
73
+ }
74
+ function pascalToSnakeCase(string) {
75
+ return string
76
+ .replace(/([A-Z])/g, '_$1')
77
+ .replace(/^_/, '')
78
+ .toLowerCase();
79
+ }
80
+ exports.contractOptionsToScaffoldContractName = pascalToSnakeCase;
81
+ function getAddressArgs(c) {
82
+ return c.constructorArgs
83
+ .filter(constructorArg => { var _a; return ((_a = constructorArg.type) === null || _a === void 0 ? void 0 : _a.toLowerCase()) === 'address'; })
84
+ .map(constructorArg => constructorArg.name);
85
+ }
86
+ const setupSh = (c, opts, scaffoldContractName) => {
87
+ const environmentsFileUpdate = (setUpContract, setUpScaffoldContractName) => `
88
+ # Update environments.toml: remove original contracts and insert wizard's contract
89
+ setup_environment() {
90
+ local file="environments.toml"
91
+ local temp
92
+ temp="$(mktemp)"
93
+
94
+ local in_dev_contracts=0
95
+ local skip_entry=0
96
+ local contract_entry_inserted=0
97
+ insert_contract_entry() {
98
+ {
99
+ printf '%s\\n' "[development.contracts.${setUpScaffoldContractName}_contract]" \\
100
+ "client = true" "" \\
101
+ "# If your contract has a \\\`__constructor\\\`, specify your arguments to it here." \\
102
+ "# These are the same arguments you could pass after the \\\`--\\\` in a call to" \\
103
+ "# \\\`stellar contract deploy\\\`" \\
104
+ "# Only available in \\\`development\\\` and \\\`test\\\` environments" \\
105
+ ${setUpContract.constructorArgs.length
106
+ ? // Mind the spacing
107
+ `"# TODO add appropriate values for for the constructors arguments" \\
108
+ "constructor_args = \\"\\"\\"" \\
109
+ "${setUpContract.constructorArgs.map(constructorArg => { var _a; return `--${constructorArg.name} \\"ADD_${constructorArg.name.toLocaleUpperCase()}_${((_a = constructorArg.type) === null || _a === void 0 ? void 0 : _a.toLocaleUpperCase()) || 'ARGUMENT'}_HERE\\"`; }).join(' ')}" \\
110
+ "\\"\\"\\"" \\
111
+ ""`
112
+ : '""'}
113
+ } >> "$temp"
114
+ }
115
+
116
+ while IFS= read -r line; do
117
+ if [[ $contract_entry_inserted -eq 0 && $line == '[staging.network]' ]]; then
118
+ insert_contract_entry
119
+ contract_entry_inserted=1
120
+ fi
121
+
122
+ if [[ $line =~ ^\\[development\\.contracts\\]$ ]]; then
123
+ printf '%s\\n' "$line" >> "$temp"
124
+ in_dev_contracts=1
125
+ skip_entry=0
126
+ continue
127
+ fi
128
+
129
+ if [[ $line =~ ^\\[[^]]+\\]$ ]]; then
130
+ if (( in_dev_contracts )) && [[ $line =~ ^\\[development\\.contracts\\..+\\]$ ]]; then
131
+ skip_entry=1
132
+ in_dev_contracts=0
133
+ continue
134
+ fi
135
+ in_dev_contracts=0
136
+ skip_entry=0
137
+ printf '%s\\n' "$line" >> "$temp"
138
+ continue
139
+ fi
140
+
141
+ if (( skip_entry )); then
142
+ continue
143
+ fi
144
+
145
+ if (( in_dev_contracts )); then
146
+ if [[ $line =~ ^[[:space:]]*# ]]; then
147
+ printf '%s\\n' "$line" >> "$temp"
148
+ fi
149
+ continue
150
+ fi
151
+
152
+ printf '%s\\n' "$line" >> "$temp"
153
+ done < "$file"
154
+
155
+ mv "$temp" "$file"
156
+ }
157
+ `;
158
+ const updateWorkspaceCargo = (opts) => `update_cargo() {
159
+ cp Cargo.toml Cargo.toml.bak
160
+
161
+ cat <<EOF > deps.tmp
162
+ ${addDependenciesWith(`{ git = "https://github.com/OpenZeppelin/stellar-contracts", tag = "${version_1.contractsVersionTag}" }`, getDependenciesToAdd(opts))}${addDependenciesWith(`{ version = "${version_1.compatibleSorobanVersion}" }`, ['soroban'])}
163
+ EOF
164
+
165
+ awk '
166
+ BEGIN {
167
+ inserted = 0
168
+ deps = ""
169
+ while ((getline line < "deps.tmp") > 0) {
170
+ deps = deps line "\\n"
171
+ }
172
+ close("deps.tmp")
173
+ }
174
+ /^\\[workspace.dependencies\\]/ {
175
+ in_deps = 1
176
+ print
177
+ if (!inserted) {
178
+ printf "%s", deps
179
+ inserted = 1
180
+ }
181
+ next
182
+ }
183
+ /^\\[/ { in_deps = 0 }
184
+ in_deps { next }
185
+ { print }
186
+ ' Cargo.toml.bak > Cargo.toml
187
+
188
+ rm deps.tmp
189
+ rm Cargo.toml.bak
190
+ }`;
191
+ return `\
192
+ #!/usr/bin/env bash
193
+ #
194
+ # setup.sh
195
+ #
196
+ # This script is meant to set up a Scaffold project and insert the Wizard's contracts in the project
197
+
198
+ check_is_installed() {
199
+ if ! which "$1" &> /dev/null; then
200
+ echo "❌ $1 command not found."
201
+ echo "Install $2 and try again, you can find installation guides in the README."
202
+ exit 1
203
+ fi
204
+ }
205
+
206
+ scaffold() {
207
+ tmp_folder="tmp"
208
+ stellar scaffold init "$tmp_folder"
209
+
210
+ rm -rf "$tmp_folder/contracts"
211
+
212
+ local current_directory
213
+ current_directory="$(cd "$(dirname "\${BASH_SOURCE[0]}")" && pwd)"
214
+
215
+ shopt -s dotglob
216
+
217
+ cp -a "$current_directory/$tmp_folder"/. "$current_directory"/
218
+ rm -rf "$current_directory/$tmp_folder"
219
+ }
220
+
221
+ init_git(){
222
+ git init
223
+ git add .
224
+ git commit -m "openzeppelin: add wizard output" --quiet
225
+ }
226
+
227
+ ${environmentsFileUpdate(c, scaffoldContractName)}
228
+
229
+ ${updateWorkspaceCargo(opts)}
230
+
231
+ build_contracts() {
232
+ cargo build
233
+ }
234
+
235
+ install_npm_dependencies() {
236
+ if ! npm install --silent; then
237
+ echo "❌ Failed to set up the project."
238
+ exit 1
239
+ fi
240
+ }
241
+
242
+
243
+ ################
244
+ ##### Start ####
245
+ ################
246
+
247
+ echo "⚙️ Checking dependencies requirement"
248
+ check_is_installed git "Git"
249
+ check_is_installed cargo "Rust"
250
+ check_is_installed stellar "Scaffold"
251
+ check_is_installed docker "Docker"
252
+ check_is_installed node "Node"
253
+
254
+
255
+ if ! [ -f "environments.toml" ]
256
+ then
257
+ echo "🏗️ Building Scaffold project"
258
+
259
+ scaffold
260
+
261
+ setup_environment
262
+
263
+ update_cargo
264
+
265
+ build_contracts
266
+
267
+ install_npm_dependencies
268
+
269
+ init_git
270
+
271
+ echo "✅ Installation complete"
272
+ else
273
+ echo "✅ Scaffold project already initialized."
274
+ fi
275
+ `;
276
+ };
277
+ const readme = (c) => {
278
+ const hasTodosToResolve = (c) => getAddressArgs(c).length > 0;
279
+ return `\
280
+ # Sample Scaffold Project
281
+
282
+ This project demonstrates a basic Scaffold use case. It comes with a contract generated by [OpenZeppelin Wizard](https://wizard.openzeppelin.com/), a test for that contract, and a script that initiate a Stellar Scaffold project with this contract. [Scaffold Stellar](https://github.com/AhaLabs/scaffold-stellar?tab=readme-ov-file#scaffold-stellar) is a convention-over-configuration toolkit for blockchain and distributed application development on the Stellar network. It provides a seamless development experience through CLI tools, smart contract management, and deployment utilities.
283
+
284
+ ## Installing dependencies
285
+
286
+ - See [Git installation guide](https://github.com/git-guides/install-git).
287
+ - See [Rust installation guide](https://www.rust-lang.org/tools/install).
288
+ - See [Scaffold CLI installation guide](https://github.com/AhaLabs/scaffold-stellar?tab=readme-ov-file#quick-start).
289
+ - See [Docker installation guide](https://docs.docker.com/engine/install/).
290
+ - See [Node installation guide](https://nodejs.org/en/download).
291
+
292
+ ## Initializing the project
293
+
294
+ \`\`\`
295
+ bash setup.sh
296
+ \`\`\`
297
+ ${hasTodosToResolve(c) ? '\n## Resolve any TODOs \n\nSearch for any TODO comments in the project and resolve them (search for TODO with your code editor).\n' : ''}
298
+
299
+ ## Testing the contract
300
+
301
+ \`\`\`
302
+ cargo test
303
+ \`\`\`
304
+
305
+ ## Deploying the contract
306
+
307
+ \`\`\`
308
+ stellar scaffold watch --build-clients
309
+ \`\`\`
310
+
311
+ ## Deploying the contract and run the Scaffold UI app
312
+
313
+ \`\`\`
314
+ npm run dev
315
+ \`\`\`
316
+ `;
317
+ };
318
+ const createLib = `#![no_std]
319
+ #![allow(dead_code)]
320
+
321
+ mod contract;
322
+ mod test;
323
+ `;
324
+ async function zipScaffold(c, opts) {
325
+ const zip = new jszip_1.default();
326
+ const scaffoldContractName = (0, exports.contractOptionsToScaffoldContractName)((opts === null || opts === void 0 ? void 0 : opts.kind) || 'contract');
327
+ zip.file(`contracts/${scaffoldContractName}/src/contract.rs`, (0, print_1.removeCreateLevelAttributes)((0, print_1.printContract)(c)));
328
+ zip.file(`contracts/${scaffoldContractName}/src/test.rs`, test(c));
329
+ zip.file(`contracts/${scaffoldContractName}/src/lib.rs`, createLib);
330
+ zip.file(`contracts/${scaffoldContractName}/Cargo.toml`, contractCargo(opts, scaffoldContractName));
331
+ zip.file('setup.sh', setupSh(c, opts, scaffoldContractName));
332
+ zip.file('README-WIZARD.md', readme(c));
333
+ return zip;
334
+ }
335
+ //# sourceMappingURL=zip-scaffold.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"zip-scaffold.js","sourceRoot":"","sources":["../src/zip-scaffold.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@openzeppelin/wizard-stellar",
3
- "version": "0.2.0",
3
+ "version": "0.2.2",
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/index.ts CHANGED
@@ -23,3 +23,6 @@ export { contractsVersion, contractsVersionTag, compatibleContractsSemver } from
23
23
 
24
24
  export { fungible } from './api';
25
25
  export { nonFungible } from './api';
26
+
27
+ export type { FungibleOptions } from './fungible';
28
+ export type { NonFungibleOptions } from './non-fungible';
@@ -98,7 +98,7 @@ export function buildNonFungible(opts: NonFungibleOptions): Contract {
98
98
  }
99
99
 
100
100
  if (allOpts.enumerable) {
101
- addEnumerable(c, allOpts.burnable);
101
+ addEnumerable(c);
102
102
  }
103
103
 
104
104
  if (allOpts.consecutive) {
@@ -179,24 +179,21 @@ function addBurnable(c: ContractBuilder, pausable: boolean) {
179
179
  }
180
180
  }
181
181
 
182
- function addEnumerable(c: ContractBuilder, burnable: boolean) {
182
+ function addEnumerable(c: ContractBuilder) {
183
183
  c.addUseClause('stellar_non_fungible', 'enumerable::{NonFungibleEnumerable, Enumerable}');
184
- //c.addUseClause('stellar_default_impl_macro', 'default_impl');
184
+ c.addUseClause('stellar_default_impl_macro', 'default_impl');
185
+ c.addUseClause('stellar_non_fungible', 'ContractOverrides');
185
186
 
186
187
  const nonFungibleEnumerableTrait = {
187
188
  traitName: 'NonFungibleEnumerable',
188
189
  structName: c.name,
189
- tags: ['defaultimpl', 'contractimpl'],
190
+ tags: ['default_impl', 'contractimpl'],
190
191
  section: 'Extensions',
191
192
  };
192
193
  c.addTraitImplBlock(nonFungibleEnumerableTrait);
193
194
 
194
195
  c.overrideAssocType('NonFungibleToken', 'type ContractType = Enumerable;');
195
196
 
196
- if (burnable) {
197
- c.overrideAssocType('NonFungibleBurnable', 'type ContractType = Enumerable;');
198
- }
199
-
200
197
  // Below is not required due to `defaultimpl` macro. If we require to customize the functions,
201
198
  // then we should:
202
199
  // 1. get rid of the `defaultimpl` macro form `tags` above,
package/src/print.ts CHANGED
@@ -9,6 +9,13 @@ const DEFAULT_SECTION = '1. with no section';
9
9
  const STANDALONE_IMPORTS_GROUP = 'Standalone Imports';
10
10
  const MAX_USE_CLAUSE_LINE_LENGTH = 90;
11
11
  const TAB = ' ';
12
+ export const createLevelAttributes = [`#![no_std]`];
13
+
14
+ export const removeCreateLevelAttributes = (printedContract: string) =>
15
+ createLevelAttributes.reduce(
16
+ (cleanedPrintedContract, createLevelAttribute) => cleanedPrintedContract.replace(createLevelAttribute, ''),
17
+ printedContract,
18
+ );
12
19
 
13
20
  export function printContract(contract: Contract): string {
14
21
  return formatLines(
@@ -16,7 +23,7 @@ export function printContract(contract: Contract): string {
16
23
  [
17
24
  `// SPDX-License-Identifier: ${contract.license}`,
18
25
  `// Compatible with OpenZeppelin Stellar Soroban Contracts ${compatibleContractsSemver}`,
19
- `#![no_std]`,
26
+ ...createLevelAttributes,
20
27
  ],
21
28
  spaceBetween(
22
29
  printUseClauses(contract),
@@ -8,3 +8,8 @@ export const contractsVersionTag = `v${contractsVersion}`;
8
8
  * Semantic version string representing of the minimum compatible version of Contracts to display in output.
9
9
  */
10
10
  export const compatibleContractsSemver = '^0.2.0';
11
+
12
+ /**
13
+ * The Soroban version for which compilation and testing have passing tests
14
+ */
15
+ export const compatibleSorobanVersion = '22.0.8';
@@ -0,0 +1,348 @@
1
+ import JSZip from 'jszip';
2
+ import type { GenericOptions } from './build-generic';
3
+ import type { Contract } from './contract';
4
+ import { printContract, removeCreateLevelAttributes } from './print';
5
+ import { compatibleSorobanVersion, contractsVersionTag } from './utils/version';
6
+
7
+ const dependencies = {
8
+ base: ['stellar-default-impl-macro'],
9
+ fungible: ['stellar-fungible'],
10
+ nonFungible: ['stellar-non-fungible'],
11
+ pausable: ['stellar-pausable', 'stellar-pausable-macros'],
12
+ upgradable: ['stellar-upgradeable', 'stellar-upgradeable-macros'],
13
+ soroban: ['soroban-sdk'],
14
+ } as const;
15
+
16
+ const addDependenciesWith = (dependencyValue: string, dependenciesToAdd: (keyof typeof dependencies)[]) =>
17
+ dependenciesToAdd.reduce((addedDependency, dependencyName) => {
18
+ return `${addedDependency}${dependencies[dependencyName].map(cargoDependencies => `${cargoDependencies} = ${dependencyValue}\n`).join('')}`;
19
+ }, '');
20
+
21
+ const getDependenciesToAdd = (opts: GenericOptions): (keyof typeof dependencies)[] => {
22
+ const dependenciesToAdd: (keyof typeof dependencies)[] = ['base'];
23
+
24
+ if (opts.kind === 'Fungible') dependenciesToAdd.push('fungible');
25
+ if (opts.kind === 'NonFungible') dependenciesToAdd.push('nonFungible');
26
+ if (opts.pausable) dependenciesToAdd.push('pausable');
27
+ if (opts.upgradeable) dependenciesToAdd.push('upgradable');
28
+
29
+ return dependenciesToAdd;
30
+ };
31
+
32
+ const test = (c: Contract) => `#![cfg(test)]
33
+
34
+ extern crate std;
35
+
36
+ use soroban_sdk::{ ${getAddressArgs(c).length ? 'testutils::Address as _, Address, ' : ''}Env, String };
37
+
38
+ use crate::contract::{ ${c.name}, ${c.name}Client };
39
+
40
+ #[test]
41
+ fn initial_state() {
42
+ let env = Env::default();
43
+
44
+ let contract_addr = env.register(${c.name}, (${getAddressArgs(c)
45
+ .map(() => 'Address::generate(&env)')
46
+ .join(',')}${getAddressArgs(c).length === 1 ? ',' : ''}));
47
+ let client = ${c.name}Client::new(&env, &contract_addr);
48
+
49
+ assert_eq!(client.name(), String::from_str(&env, "${c.name}"));
50
+ }
51
+
52
+ // Add more tests bellow
53
+ `;
54
+
55
+ function contractCargo(opts: GenericOptions, scaffoldContractName: string) {
56
+ return `[package]
57
+ name = "${scaffoldContractName.replace(/_/, '-')}-contract"
58
+ edition.workspace = true
59
+ license.workspace = true
60
+ publish = false
61
+ version.workspace = true
62
+
63
+ [lib]
64
+ crate-type = ["cdylib"]
65
+ doctest = false
66
+
67
+ [dependencies]
68
+ ${addDependenciesWith('{ workspace = true }', [...getDependenciesToAdd(opts), 'soroban'])}
69
+ [dev-dependencies]
70
+ ${addDependenciesWith('{ workspace = true, features = ["testutils"] }', ['soroban'])}
71
+ `;
72
+ }
73
+
74
+ function pascalToSnakeCase(string: string) {
75
+ return string
76
+ .replace(/([A-Z])/g, '_$1')
77
+ .replace(/^_/, '')
78
+ .toLowerCase();
79
+ }
80
+
81
+ export const contractOptionsToScaffoldContractName = pascalToSnakeCase;
82
+
83
+ function getAddressArgs(c: Contract): string[] {
84
+ return c.constructorArgs
85
+ .filter(constructorArg => constructorArg.type?.toLowerCase() === 'address')
86
+ .map(constructorArg => constructorArg.name);
87
+ }
88
+
89
+ const setupSh = (c: Contract, opts: GenericOptions, scaffoldContractName: string) => {
90
+ const environmentsFileUpdate = (setUpContract: Contract, setUpScaffoldContractName: string) => `
91
+ # Update environments.toml: remove original contracts and insert wizard's contract
92
+ setup_environment() {
93
+ local file="environments.toml"
94
+ local temp
95
+ temp="$(mktemp)"
96
+
97
+ local in_dev_contracts=0
98
+ local skip_entry=0
99
+ local contract_entry_inserted=0
100
+ insert_contract_entry() {
101
+ {
102
+ printf '%s\\n' "[development.contracts.${setUpScaffoldContractName}_contract]" \\
103
+ "client = true" "" \\
104
+ "# If your contract has a \\\`__constructor\\\`, specify your arguments to it here." \\
105
+ "# These are the same arguments you could pass after the \\\`--\\\` in a call to" \\
106
+ "# \\\`stellar contract deploy\\\`" \\
107
+ "# Only available in \\\`development\\\` and \\\`test\\\` environments" \\
108
+ ${
109
+ setUpContract.constructorArgs.length
110
+ ? // Mind the spacing
111
+ `"# TODO add appropriate values for for the constructors arguments" \\
112
+ "constructor_args = \\"\\"\\"" \\
113
+ "${setUpContract.constructorArgs.map(constructorArg => `--${constructorArg.name} \\"ADD_${constructorArg.name.toLocaleUpperCase()}_${constructorArg.type?.toLocaleUpperCase() || 'ARGUMENT'}_HERE\\"`).join(' ')}" \\
114
+ "\\"\\"\\"" \\
115
+ ""`
116
+ : '""'
117
+ }
118
+ } >> "$temp"
119
+ }
120
+
121
+ while IFS= read -r line; do
122
+ if [[ $contract_entry_inserted -eq 0 && $line == '[staging.network]' ]]; then
123
+ insert_contract_entry
124
+ contract_entry_inserted=1
125
+ fi
126
+
127
+ if [[ $line =~ ^\\[development\\.contracts\\]$ ]]; then
128
+ printf '%s\\n' "$line" >> "$temp"
129
+ in_dev_contracts=1
130
+ skip_entry=0
131
+ continue
132
+ fi
133
+
134
+ if [[ $line =~ ^\\[[^]]+\\]$ ]]; then
135
+ if (( in_dev_contracts )) && [[ $line =~ ^\\[development\\.contracts\\..+\\]$ ]]; then
136
+ skip_entry=1
137
+ in_dev_contracts=0
138
+ continue
139
+ fi
140
+ in_dev_contracts=0
141
+ skip_entry=0
142
+ printf '%s\\n' "$line" >> "$temp"
143
+ continue
144
+ fi
145
+
146
+ if (( skip_entry )); then
147
+ continue
148
+ fi
149
+
150
+ if (( in_dev_contracts )); then
151
+ if [[ $line =~ ^[[:space:]]*# ]]; then
152
+ printf '%s\\n' "$line" >> "$temp"
153
+ fi
154
+ continue
155
+ fi
156
+
157
+ printf '%s\\n' "$line" >> "$temp"
158
+ done < "$file"
159
+
160
+ mv "$temp" "$file"
161
+ }
162
+ `;
163
+
164
+ const updateWorkspaceCargo = (opts: GenericOptions) => `update_cargo() {
165
+ cp Cargo.toml Cargo.toml.bak
166
+
167
+ cat <<EOF > deps.tmp
168
+ ${addDependenciesWith(`{ git = "https://github.com/OpenZeppelin/stellar-contracts", tag = "${contractsVersionTag}" }`, getDependenciesToAdd(opts))}${addDependenciesWith(`{ version = "${compatibleSorobanVersion}" }`, ['soroban'])}
169
+ EOF
170
+
171
+ awk '
172
+ BEGIN {
173
+ inserted = 0
174
+ deps = ""
175
+ while ((getline line < "deps.tmp") > 0) {
176
+ deps = deps line "\\n"
177
+ }
178
+ close("deps.tmp")
179
+ }
180
+ /^\\[workspace.dependencies\\]/ {
181
+ in_deps = 1
182
+ print
183
+ if (!inserted) {
184
+ printf "%s", deps
185
+ inserted = 1
186
+ }
187
+ next
188
+ }
189
+ /^\\[/ { in_deps = 0 }
190
+ in_deps { next }
191
+ { print }
192
+ ' Cargo.toml.bak > Cargo.toml
193
+
194
+ rm deps.tmp
195
+ rm Cargo.toml.bak
196
+ }`;
197
+
198
+ return `\
199
+ #!/usr/bin/env bash
200
+ #
201
+ # setup.sh
202
+ #
203
+ # This script is meant to set up a Scaffold project and insert the Wizard's contracts in the project
204
+
205
+ check_is_installed() {
206
+ if ! which "$1" &> /dev/null; then
207
+ echo "❌ $1 command not found."
208
+ echo "Install $2 and try again, you can find installation guides in the README."
209
+ exit 1
210
+ fi
211
+ }
212
+
213
+ scaffold() {
214
+ tmp_folder="tmp"
215
+ stellar scaffold init "$tmp_folder"
216
+
217
+ rm -rf "$tmp_folder/contracts"
218
+
219
+ local current_directory
220
+ current_directory="$(cd "$(dirname "\${BASH_SOURCE[0]}")" && pwd)"
221
+
222
+ shopt -s dotglob
223
+
224
+ cp -a "$current_directory/$tmp_folder"/. "$current_directory"/
225
+ rm -rf "$current_directory/$tmp_folder"
226
+ }
227
+
228
+ init_git(){
229
+ git init
230
+ git add .
231
+ git commit -m "openzeppelin: add wizard output" --quiet
232
+ }
233
+
234
+ ${environmentsFileUpdate(c, scaffoldContractName)}
235
+
236
+ ${updateWorkspaceCargo(opts)}
237
+
238
+ build_contracts() {
239
+ cargo build
240
+ }
241
+
242
+ install_npm_dependencies() {
243
+ if ! npm install --silent; then
244
+ echo "❌ Failed to set up the project."
245
+ exit 1
246
+ fi
247
+ }
248
+
249
+
250
+ ################
251
+ ##### Start ####
252
+ ################
253
+
254
+ echo "⚙️ Checking dependencies requirement"
255
+ check_is_installed git "Git"
256
+ check_is_installed cargo "Rust"
257
+ check_is_installed stellar "Scaffold"
258
+ check_is_installed docker "Docker"
259
+ check_is_installed node "Node"
260
+
261
+
262
+ if ! [ -f "environments.toml" ]
263
+ then
264
+ echo "🏗️ Building Scaffold project"
265
+
266
+ scaffold
267
+
268
+ setup_environment
269
+
270
+ update_cargo
271
+
272
+ build_contracts
273
+
274
+ install_npm_dependencies
275
+
276
+ init_git
277
+
278
+ echo "✅ Installation complete"
279
+ else
280
+ echo "✅ Scaffold project already initialized."
281
+ fi
282
+ `;
283
+ };
284
+
285
+ const readme = (c: Contract) => {
286
+ const hasTodosToResolve = (c: Contract) => getAddressArgs(c).length > 0;
287
+
288
+ return `\
289
+ # Sample Scaffold Project
290
+
291
+ This project demonstrates a basic Scaffold use case. It comes with a contract generated by [OpenZeppelin Wizard](https://wizard.openzeppelin.com/), a test for that contract, and a script that initiate a Stellar Scaffold project with this contract. [Scaffold Stellar](https://github.com/AhaLabs/scaffold-stellar?tab=readme-ov-file#scaffold-stellar) is a convention-over-configuration toolkit for blockchain and distributed application development on the Stellar network. It provides a seamless development experience through CLI tools, smart contract management, and deployment utilities.
292
+
293
+ ## Installing dependencies
294
+
295
+ - See [Git installation guide](https://github.com/git-guides/install-git).
296
+ - See [Rust installation guide](https://www.rust-lang.org/tools/install).
297
+ - See [Scaffold CLI installation guide](https://github.com/AhaLabs/scaffold-stellar?tab=readme-ov-file#quick-start).
298
+ - See [Docker installation guide](https://docs.docker.com/engine/install/).
299
+ - See [Node installation guide](https://nodejs.org/en/download).
300
+
301
+ ## Initializing the project
302
+
303
+ \`\`\`
304
+ bash setup.sh
305
+ \`\`\`
306
+ ${hasTodosToResolve(c) ? '\n## Resolve any TODOs \n\nSearch for any TODO comments in the project and resolve them (search for TODO with your code editor).\n' : ''}
307
+
308
+ ## Testing the contract
309
+
310
+ \`\`\`
311
+ cargo test
312
+ \`\`\`
313
+
314
+ ## Deploying the contract
315
+
316
+ \`\`\`
317
+ stellar scaffold watch --build-clients
318
+ \`\`\`
319
+
320
+ ## Deploying the contract and run the Scaffold UI app
321
+
322
+ \`\`\`
323
+ npm run dev
324
+ \`\`\`
325
+ `;
326
+ };
327
+
328
+ const createLib = `#![no_std]
329
+ #![allow(dead_code)]
330
+
331
+ mod contract;
332
+ mod test;
333
+ `;
334
+
335
+ export async function zipScaffold(c: Contract, opts: GenericOptions) {
336
+ const zip = new JSZip();
337
+
338
+ const scaffoldContractName = contractOptionsToScaffoldContractName(opts?.kind || 'contract');
339
+
340
+ zip.file(`contracts/${scaffoldContractName}/src/contract.rs`, removeCreateLevelAttributes(printContract(c)));
341
+ zip.file(`contracts/${scaffoldContractName}/src/test.rs`, test(c));
342
+ zip.file(`contracts/${scaffoldContractName}/src/lib.rs`, createLib);
343
+ zip.file(`contracts/${scaffoldContractName}/Cargo.toml`, contractCargo(opts, scaffoldContractName));
344
+ zip.file('setup.sh', setupSh(c, opts, scaffoldContractName));
345
+ zip.file('README-WIZARD.md', readme(c));
346
+
347
+ return zip;
348
+ }