@solana-mobile/dapp-store-cli 0.1.1-0 → 0.1.1-1
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/README.md +1 -1
- package/bin/dapp-store.js +1 -1
- package/lib/esm/commands/create/release.js +2 -3
- package/lib/esm/commands/create/release.js.map +1 -1
- package/lib/esm/config/index.js.map +1 -1
- package/lib/esm/config/schema.json +10 -39
- package/lib/esm/index.js +133 -116
- package/lib/esm/index.js.map +1 -1
- package/lib/esm/upload/CachedStorageDriver.js +3 -1
- package/lib/esm/upload/CachedStorageDriver.js.map +1 -1
- package/lib/esm/utils.js +11 -26
- package/lib/esm/utils.js.map +1 -1
- package/lib/types/commands/create/release.d.ts +1 -2
- package/lib/types/commands/create/release.d.ts.map +1 -1
- package/lib/types/config/index.d.ts +0 -1
- package/lib/types/config/index.d.ts.map +1 -1
- package/lib/types/upload/CachedStorageDriver.d.ts +1 -1
- package/lib/types/upload/CachedStorageDriver.d.ts.map +1 -1
- package/lib/types/utils.d.ts +2 -4
- package/lib/types/utils.d.ts.map +1 -1
- package/package.json +2 -2
- package/src/commands/create/release.ts +1 -4
- package/src/config/index.ts +1 -2
- package/src/config/schema.json +10 -39
- package/src/index.ts +161 -148
- package/src/upload/CachedStorageDriver.ts +4 -1
- package/src/utils.ts +16 -52
package/README.md
CHANGED
|
@@ -130,7 +130,7 @@ release:
|
|
|
130
130
|
Some wonderful release notes, in long-form
|
|
131
131
|
new_in_version: |
|
|
132
132
|
Something new in this version
|
|
133
|
-
|
|
133
|
+
saga_features: |
|
|
134
134
|
Some information about saga specific features
|
|
135
135
|
solana_mobile_dapp_publisher_portal:
|
|
136
136
|
google_store_package: com.company.dapp.otherpkg
|
package/bin/dapp-store.js
CHANGED
|
@@ -24,7 +24,7 @@ const createReleaseNft = async ({ appMintAddress, releaseDetails, appDetails, pu
|
|
|
24
24
|
});
|
|
25
25
|
return { releaseAddress: releaseMintAddress.publicKey.toBase58() };
|
|
26
26
|
};
|
|
27
|
-
export const createReleaseCommand = async ({ appMintAddress,
|
|
27
|
+
export const createReleaseCommand = async ({ appMintAddress, buildToolsPath, signer, url, dryRun = false, }) => {
|
|
28
28
|
const connection = new Connection(url);
|
|
29
29
|
const { release, app, publisher } = await getConfigFile(buildToolsPath);
|
|
30
30
|
if (!dryRun) {
|
|
@@ -34,13 +34,12 @@ export const createReleaseCommand = async ({ appMintAddress, version, buildTools
|
|
|
34
34
|
publisher: signer,
|
|
35
35
|
releaseDetails: {
|
|
36
36
|
...release,
|
|
37
|
-
version,
|
|
38
37
|
},
|
|
39
38
|
appDetails: app,
|
|
40
39
|
publisherDetails: publisher,
|
|
41
40
|
});
|
|
42
41
|
saveToConfig({
|
|
43
|
-
release: { address: releaseAddress
|
|
42
|
+
release: { address: releaseAddress },
|
|
44
43
|
});
|
|
45
44
|
return { releaseAddress };
|
|
46
45
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"release.js","sourceRoot":"","sources":["../../../../src/commands/create/release.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,aAAa,EAAE,MAAM,4CAA4C,CAAC;AAC3E,OAAO,EACL,UAAU,EACV,OAAO,EACP,SAAS,EACT,yBAAyB,GAC1B,MAAM,iBAAiB,CAAC;AAGzB,OAAO,EACL,aAAa,EACb,mBAAmB,EACnB,YAAY,GACb,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"release.js","sourceRoot":"","sources":["../../../../src/commands/create/release.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,aAAa,EAAE,MAAM,4CAA4C,CAAC;AAC3E,OAAO,EACL,UAAU,EACV,OAAO,EACP,SAAS,EACT,yBAAyB,GAC1B,MAAM,iBAAiB,CAAC;AAGzB,OAAO,EACL,aAAa,EACb,mBAAmB,EACnB,YAAY,GACb,MAAM,gBAAgB,CAAC;AAUxB,MAAM,gBAAgB,GAAG,KAAK,EAAE,EAC9B,cAAc,EACd,cAAc,EACd,UAAU,EACV,gBAAgB,EAChB,UAAU,EACV,SAAS,GAQV,EAAE,EAAE;IACH,MAAM,kBAAkB,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IAE9C,MAAM,QAAQ,GAAG,mBAAmB,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;IAE5D,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,aAAa,CACvC;QACE,cAAc,EAAE,IAAI,SAAS,CAAC,cAAc,CAAC;QAC7C,kBAAkB;QAClB,cAAc;QACd,UAAU;QACV,gBAAgB;KACjB,EACD,EAAE,QAAQ,EAAE,SAAS,EAAE,CACxB,CAAC;IAEF,MAAM,SAAS,GAAG,MAAM,UAAU,CAAC,kBAAkB,EAAE,CAAC;IACxD,MAAM,EAAE,GAAG,SAAS,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;IAC9C,EAAE,CAAC,IAAI,CAAC,kBAAkB,EAAE,SAAS,CAAC,CAAC;IAEvC,MAAM,KAAK,GAAG,MAAM,yBAAyB,CAAC,UAAU,EAAE,EAAE,EAAE;QAC5D,SAAS;QACT,kBAAkB;KACnB,CAAC,CAAC;IACH,OAAO,CAAC,IAAI,CAAC;QACX,KAAK;QACL,kBAAkB,EAAE,kBAAkB,CAAC,SAAS,CAAC,QAAQ,EAAE;KAC5D,CAAC,CAAC;IAEH,OAAO,EAAE,cAAc,EAAE,kBAAkB,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,CAAC;AACrE,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,oBAAoB,GAAG,KAAK,EAAE,EACzC,cAAc,EACd,cAAc,EACd,MAAM,EACN,GAAG,EACH,MAAM,GAAG,KAAK,GACY,EAAE,EAAE;IAC9B,MAAM,UAAU,GAAG,IAAI,UAAU,CAAC,GAAG,CAAC,CAAC;IAEvC,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,MAAM,aAAa,CAAC,cAAc,CAAC,CAAC;IAExE,IAAI,CAAC,MAAM,EAAE;QACX,MAAM,EAAE,cAAc,EAAE,GAAG,MAAM,gBAAgB,CAAC;YAChD,cAAc,EAAE,GAAG,CAAC,OAAO,IAAI,cAAc;YAC7C,UAAU;YACV,SAAS,EAAE,MAAM;YACjB,cAAc,EAAE;gBACd,GAAG,OAAO;aACX;YACD,UAAU,EAAE,GAAG;YACf,gBAAgB,EAAE,SAAS;SAC5B,CAAC,CAAC;QAEH,YAAY,CAAC;YACX,OAAO,EAAE,EAAE,OAAO,EAAE,cAAc,EAAE;SACrC,CAAC,CAAC;QAEH,OAAO,EAAE,cAAc,EAAE,CAAC;KAC3B;AACH,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/config/index.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,MAAM,aAAa,CAAC;AAC7B,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAE/B,OAAO,GAAG,MAAM,KAAK,CAAC;AAEtB,iEAAiE;AACjE,OAAO,UAAU,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/config/index.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,MAAM,aAAa,CAAC;AAC7B,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAE/B,OAAO,GAAG,MAAM,KAAK,CAAC;AAEtB,iEAAiE;AACjE,OAAO,UAAU,MAAM,eAAe,CAAC;AAUvC,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC,CAAC;AAC7C,MAAM,QAAQ,GAAG,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;AAEzC,MAAM,CAAC,MAAM,SAAS,GAAG,KAAK,EAAE,UAAkB,EAAE,EAAE;IACpD,MAAM,UAAU,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IAC1D,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC;IAEpC,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAW,CAAC,CAAC;IAEnD,IAAI,CAAC,KAAK,EAAE;QACV,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC/B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;KACjB;IAED,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAc,CAAC;IAC7C,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC"}
|
|
@@ -27,15 +27,9 @@
|
|
|
27
27
|
},
|
|
28
28
|
"uri": {
|
|
29
29
|
"type": "string"
|
|
30
|
-
},
|
|
31
|
-
"width": {
|
|
32
|
-
"type": "integer"
|
|
33
|
-
},
|
|
34
|
-
"height": {
|
|
35
|
-
"type": "integer"
|
|
36
30
|
}
|
|
37
31
|
},
|
|
38
|
-
"required": ["purpose", "uri"
|
|
32
|
+
"required": ["purpose", "uri"]
|
|
39
33
|
}
|
|
40
34
|
]
|
|
41
35
|
}
|
|
@@ -54,14 +48,6 @@
|
|
|
54
48
|
"android_package": {
|
|
55
49
|
"type": "string"
|
|
56
50
|
},
|
|
57
|
-
"creators": {
|
|
58
|
-
"type": "array",
|
|
59
|
-
"items": [
|
|
60
|
-
{
|
|
61
|
-
"type": "string"
|
|
62
|
-
}
|
|
63
|
-
]
|
|
64
|
-
},
|
|
65
51
|
"urls": {
|
|
66
52
|
"type": "object",
|
|
67
53
|
"properties": {
|
|
@@ -96,27 +82,18 @@
|
|
|
96
82
|
},
|
|
97
83
|
"uri": {
|
|
98
84
|
"type": "string"
|
|
99
|
-
},
|
|
100
|
-
"width": {
|
|
101
|
-
"type": "integer"
|
|
102
|
-
},
|
|
103
|
-
"height": {
|
|
104
|
-
"type": "integer"
|
|
105
85
|
}
|
|
106
86
|
},
|
|
107
|
-
"required": ["purpose", "uri"
|
|
87
|
+
"required": ["purpose", "uri"]
|
|
108
88
|
}
|
|
109
89
|
]
|
|
110
90
|
}
|
|
111
91
|
},
|
|
112
|
-
"required": ["name", "android_package", "
|
|
92
|
+
"required": ["name", "android_package", "urls", "media"]
|
|
113
93
|
},
|
|
114
94
|
"release": {
|
|
115
95
|
"type": "object",
|
|
116
96
|
"properties": {
|
|
117
|
-
"version": {
|
|
118
|
-
"type": "string"
|
|
119
|
-
},
|
|
120
97
|
"address": {
|
|
121
98
|
"type": "string"
|
|
122
99
|
},
|
|
@@ -131,15 +108,9 @@
|
|
|
131
108
|
},
|
|
132
109
|
"uri": {
|
|
133
110
|
"type": "string"
|
|
134
|
-
},
|
|
135
|
-
"width": {
|
|
136
|
-
"type": "integer"
|
|
137
|
-
},
|
|
138
|
-
"height": {
|
|
139
|
-
"type": "integer"
|
|
140
111
|
}
|
|
141
112
|
},
|
|
142
|
-
"required": ["purpose", "uri"
|
|
113
|
+
"required": ["purpose", "uri"]
|
|
143
114
|
}
|
|
144
115
|
]
|
|
145
116
|
},
|
|
@@ -172,8 +143,8 @@
|
|
|
172
143
|
},
|
|
173
144
|
"catalog": {
|
|
174
145
|
"type": "object",
|
|
175
|
-
"
|
|
176
|
-
"
|
|
146
|
+
"patternProperties": {
|
|
147
|
+
"^[a-zA-Z]{2,8}(-[a-zA-Z0-9]{2,8})*$": {
|
|
177
148
|
"type": "object",
|
|
178
149
|
"properties": {
|
|
179
150
|
"name": {
|
|
@@ -188,7 +159,7 @@
|
|
|
188
159
|
"new_in_version": {
|
|
189
160
|
"type": "string"
|
|
190
161
|
},
|
|
191
|
-
"
|
|
162
|
+
"saga_features": {
|
|
192
163
|
"type": "string"
|
|
193
164
|
}
|
|
194
165
|
},
|
|
@@ -197,14 +168,14 @@
|
|
|
197
168
|
"short_description",
|
|
198
169
|
"long_description",
|
|
199
170
|
"new_in_version",
|
|
200
|
-
"
|
|
171
|
+
"saga_features"
|
|
201
172
|
]
|
|
202
173
|
}
|
|
203
174
|
},
|
|
204
|
-
"
|
|
175
|
+
"additionalProperties": false
|
|
205
176
|
}
|
|
206
177
|
},
|
|
207
|
-
"required": ["
|
|
178
|
+
"required": ["media", "files", "catalog"]
|
|
208
179
|
},
|
|
209
180
|
"solana_mobile_dapp_publisher_portal": {
|
|
210
181
|
"type": "object",
|
package/lib/esm/index.js
CHANGED
|
@@ -49,64 +49,69 @@ async function main() {
|
|
|
49
49
|
.option("-u, --url", "RPC URL", "https://devnet.genesysgo.net")
|
|
50
50
|
.option("-d, --dry-run", "Flag for dry run. Doesn't mint an NFT")
|
|
51
51
|
.action(async ({ publisherMintAddress, keypair, url, dryRun }) => {
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
52
|
+
try {
|
|
53
|
+
const config = await getConfigFile();
|
|
54
|
+
if (!hasAddressInConfig(config.publisher) && !publisherMintAddress) {
|
|
55
|
+
showUserErrorMessage("Either specify an publisher mint address in the config file, or specify as a CLI argument to this command.");
|
|
56
|
+
createCommand.showHelpAfterError();
|
|
57
|
+
return;
|
|
58
|
+
}
|
|
59
|
+
const signer = parseKeypair(keypair);
|
|
60
|
+
if (signer) {
|
|
61
|
+
await createAppCommand({
|
|
62
|
+
publisherMintAddress: publisherMintAddress,
|
|
63
|
+
signer,
|
|
64
|
+
url,
|
|
65
|
+
dryRun,
|
|
66
|
+
});
|
|
67
|
+
}
|
|
59
68
|
}
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
await createAppCommand({
|
|
63
|
-
publisherMintAddress: publisherMintAddress,
|
|
64
|
-
signer,
|
|
65
|
-
url,
|
|
66
|
-
dryRun,
|
|
67
|
-
});
|
|
69
|
+
catch (e) {
|
|
70
|
+
showUserErrorMessage(e?.message ?? "");
|
|
68
71
|
}
|
|
69
72
|
});
|
|
70
73
|
createCommand
|
|
71
|
-
.command("release
|
|
74
|
+
.command("release")
|
|
72
75
|
.description("Create a release")
|
|
73
76
|
.requiredOption("-k, --keypair <path-to-keypair-file>", "Path to keypair file")
|
|
74
77
|
.option("-a, --app-mint-address <app-mint-address>", "The mint address of the app NFT")
|
|
75
78
|
.option("-u, --url", "RPC URL", "https://devnet.genesysgo.net")
|
|
76
79
|
.option("-d, --dry-run", "Flag for dry run. Doesn't mint an NFT")
|
|
77
80
|
.option("-b, --build-tools-path <build-tools-path>", "Path to Android build tools which contains AAPT2")
|
|
78
|
-
.action(async (
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
81
|
+
.action(async ({ appMintAddress, keypair, url, dryRun, buildToolsPath }) => {
|
|
82
|
+
try {
|
|
83
|
+
const toolsEnvDir = process.env.ANDROID_TOOLS_DIR ?? "";
|
|
84
|
+
let buildTools = "";
|
|
85
|
+
if (toolsEnvDir && toolsEnvDir.length > 0) {
|
|
86
|
+
buildTools = toolsEnvDir;
|
|
87
|
+
}
|
|
88
|
+
else if (buildToolsPath) {
|
|
89
|
+
buildTools = buildToolsPath;
|
|
90
|
+
}
|
|
91
|
+
else {
|
|
92
|
+
showUserErrorMessage("\n\n::: Please specify an Android build tools directory in the .env file or via the command line argument. :::\n\n");
|
|
93
|
+
createCommand.showHelpAfterError();
|
|
94
|
+
return;
|
|
95
|
+
}
|
|
96
|
+
const config = await getConfigFile();
|
|
97
|
+
if (!hasAddressInConfig(config.app) && !appMintAddress) {
|
|
98
|
+
showUserErrorMessage("\n\n::: Either specify an app mint address in the config file, or specify as a CLI argument to this command. :::\n\n");
|
|
99
|
+
createCommand.showHelpAfterError();
|
|
100
|
+
return;
|
|
101
|
+
}
|
|
102
|
+
const signer = parseKeypair(keypair);
|
|
103
|
+
if (signer) {
|
|
104
|
+
const result = await createReleaseCommand({
|
|
105
|
+
appMintAddress: appMintAddress,
|
|
106
|
+
buildToolsPath: buildTools,
|
|
107
|
+
signer,
|
|
108
|
+
url,
|
|
109
|
+
dryRun,
|
|
110
|
+
});
|
|
111
|
+
}
|
|
91
112
|
}
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
return;
|
|
95
|
-
if (!hasAddressInConfig(config.app) && !appMintAddress) {
|
|
96
|
-
showUserErrorMessage("\n\n::: Either specify an app mint address in the config file, or specify as a CLI argument to this command. :::\n\n");
|
|
97
|
-
createCommand.showHelpAfterError();
|
|
98
|
-
return;
|
|
99
|
-
}
|
|
100
|
-
const signer = parseKeypair(keypair);
|
|
101
|
-
if (signer) {
|
|
102
|
-
const result = await createReleaseCommand({
|
|
103
|
-
appMintAddress: appMintAddress,
|
|
104
|
-
version,
|
|
105
|
-
buildToolsPath: buildTools,
|
|
106
|
-
signer,
|
|
107
|
-
url,
|
|
108
|
-
dryRun,
|
|
109
|
-
});
|
|
113
|
+
catch (e) {
|
|
114
|
+
showUserErrorMessage(e?.message ?? "");
|
|
110
115
|
}
|
|
111
116
|
});
|
|
112
117
|
program
|
|
@@ -142,24 +147,27 @@ async function main() {
|
|
|
142
147
|
.option("-u, --url", "RPC URL", "https://devnet.genesysgo.net")
|
|
143
148
|
.option("-d, --dry-run", "Flag for dry run. Doesn't submit the request to the publisher portal.")
|
|
144
149
|
.action(async ({ releaseMintAddress, keypair, url, compliesWithSolanaDappStorePolicies, requestorIsAuthorized, dryRun, }) => {
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
150
|
+
try {
|
|
151
|
+
const config = await getConfigFile();
|
|
152
|
+
if (!hasAddressInConfig(config.publisher) && !releaseMintAddress) {
|
|
153
|
+
showUserErrorMessage("\n\n::: Either specify an release mint address in the config file, or specify as a CLI argument to this command. :::\n\n");
|
|
154
|
+
publishCommand.showHelpAfterError();
|
|
155
|
+
return;
|
|
156
|
+
}
|
|
157
|
+
const signer = parseKeypair(keypair);
|
|
158
|
+
if (signer) {
|
|
159
|
+
await publishSubmitCommand({
|
|
160
|
+
releaseMintAddress,
|
|
161
|
+
signer,
|
|
162
|
+
url,
|
|
163
|
+
dryRun,
|
|
164
|
+
compliesWithSolanaDappStorePolicies,
|
|
165
|
+
requestorIsAuthorized,
|
|
166
|
+
});
|
|
167
|
+
}
|
|
152
168
|
}
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
await publishSubmitCommand({
|
|
156
|
-
releaseMintAddress,
|
|
157
|
-
signer,
|
|
158
|
-
url,
|
|
159
|
-
dryRun,
|
|
160
|
-
compliesWithSolanaDappStorePolicies,
|
|
161
|
-
requestorIsAuthorized,
|
|
162
|
-
});
|
|
169
|
+
catch (e) {
|
|
170
|
+
showUserErrorMessage(e?.message ?? "");
|
|
163
171
|
}
|
|
164
172
|
});
|
|
165
173
|
publishCommand
|
|
@@ -173,25 +181,28 @@ async function main() {
|
|
|
173
181
|
.option("-u, --url", "RPC URL", "https://devnet.genesysgo.net")
|
|
174
182
|
.option("-d, --dry-run", "Flag for dry run. Doesn't submit the request to the publisher portal.")
|
|
175
183
|
.action(async ({ releaseMintAddress, keypair, url, compliesWithSolanaDappStorePolicies, requestorIsAuthorized, critical, dryRun, }) => {
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
184
|
+
try {
|
|
185
|
+
const config = await getConfigFile();
|
|
186
|
+
if (!hasAddressInConfig(config.publisher) && !releaseMintAddress) {
|
|
187
|
+
showUserErrorMessage("\n\n::: Either specify an release mint address in the config file, or specify as a CLI argument to this command. :::\n\n");
|
|
188
|
+
publishCommand.showHelpAfterError();
|
|
189
|
+
return;
|
|
190
|
+
}
|
|
191
|
+
const signer = parseKeypair(keypair);
|
|
192
|
+
if (signer) {
|
|
193
|
+
await publishUpdateCommand({
|
|
194
|
+
releaseMintAddress,
|
|
195
|
+
signer,
|
|
196
|
+
url,
|
|
197
|
+
dryRun,
|
|
198
|
+
compliesWithSolanaDappStorePolicies,
|
|
199
|
+
requestorIsAuthorized,
|
|
200
|
+
critical,
|
|
201
|
+
});
|
|
202
|
+
}
|
|
183
203
|
}
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
await publishUpdateCommand({
|
|
187
|
-
releaseMintAddress,
|
|
188
|
-
signer,
|
|
189
|
-
url,
|
|
190
|
-
dryRun,
|
|
191
|
-
compliesWithSolanaDappStorePolicies,
|
|
192
|
-
requestorIsAuthorized,
|
|
193
|
-
critical,
|
|
194
|
-
});
|
|
204
|
+
catch (e) {
|
|
205
|
+
showUserErrorMessage(e?.message ?? "");
|
|
195
206
|
}
|
|
196
207
|
});
|
|
197
208
|
publishCommand
|
|
@@ -204,24 +215,27 @@ async function main() {
|
|
|
204
215
|
.option("-u, --url", "RPC URL", "https://devnet.genesysgo.net")
|
|
205
216
|
.option("-d, --dry-run", "Flag for dry run. Doesn't submit the request to the publisher portal.")
|
|
206
217
|
.action(async ({ releaseMintAddress, keypair, url, requestorIsAuthorized, critical, dryRun, }) => {
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
218
|
+
try {
|
|
219
|
+
const config = await getConfigFile();
|
|
220
|
+
if (!hasAddressInConfig(config.publisher) && !releaseMintAddress) {
|
|
221
|
+
showUserErrorMessage("\n\n::: Either specify an release mint address in the config file, or specify as a CLI argument to this command. :::\n\n");
|
|
222
|
+
publishCommand.showHelpAfterError();
|
|
223
|
+
return;
|
|
224
|
+
}
|
|
225
|
+
const signer = parseKeypair(keypair);
|
|
226
|
+
if (signer) {
|
|
227
|
+
await publishRemoveCommand({
|
|
228
|
+
releaseMintAddress,
|
|
229
|
+
signer,
|
|
230
|
+
url,
|
|
231
|
+
dryRun,
|
|
232
|
+
requestorIsAuthorized,
|
|
233
|
+
critical,
|
|
234
|
+
});
|
|
235
|
+
}
|
|
214
236
|
}
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
await publishRemoveCommand({
|
|
218
|
-
releaseMintAddress,
|
|
219
|
-
signer,
|
|
220
|
-
url,
|
|
221
|
-
dryRun,
|
|
222
|
-
requestorIsAuthorized,
|
|
223
|
-
critical,
|
|
224
|
-
});
|
|
237
|
+
catch (e) {
|
|
238
|
+
showUserErrorMessage(e?.message ?? "");
|
|
225
239
|
}
|
|
226
240
|
});
|
|
227
241
|
publishCommand
|
|
@@ -233,24 +247,27 @@ async function main() {
|
|
|
233
247
|
.option("-u, --url", "RPC URL", "https://devnet.genesysgo.net")
|
|
234
248
|
.option("-d, --dry-run", "Flag for dry run. Doesn't submit the request to the publisher portal.")
|
|
235
249
|
.action(async (requestDetails, { releaseMintAddress, keypair, url, requestorIsAuthorized, dryRun }) => {
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
250
|
+
try {
|
|
251
|
+
const config = await getConfigFile();
|
|
252
|
+
if (!hasAddressInConfig(config.publisher) && !releaseMintAddress) {
|
|
253
|
+
showUserErrorMessage("\n\n::: Either specify an release mint address in the config file, or specify as a CLI argument to this command. :::\n\n");
|
|
254
|
+
publishCommand.showHelpAfterError();
|
|
255
|
+
return;
|
|
256
|
+
}
|
|
257
|
+
const signer = parseKeypair(keypair);
|
|
258
|
+
if (signer) {
|
|
259
|
+
await publishSupportCommand({
|
|
260
|
+
releaseMintAddress,
|
|
261
|
+
signer,
|
|
262
|
+
url,
|
|
263
|
+
dryRun,
|
|
264
|
+
requestorIsAuthorized,
|
|
265
|
+
requestDetails,
|
|
266
|
+
});
|
|
267
|
+
}
|
|
243
268
|
}
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
await publishSupportCommand({
|
|
247
|
-
releaseMintAddress,
|
|
248
|
-
signer,
|
|
249
|
-
url,
|
|
250
|
-
dryRun,
|
|
251
|
-
requestorIsAuthorized,
|
|
252
|
-
requestDetails,
|
|
253
|
-
});
|
|
269
|
+
catch (e) {
|
|
270
|
+
showUserErrorMessage(e?.message ?? "");
|
|
254
271
|
}
|
|
255
272
|
});
|
|
256
273
|
await program.parseAsync(process.argv);
|
package/lib/esm/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAC5G,OAAO,EACL,oBAAoB,EACpB,oBAAoB,EACpB,qBAAqB,EACrB,oBAAoB,EACrB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAE/E,OAAO,KAAK,MAAM,MAAM,QAAQ,CAAC;AAEjC,MAAM,CAAC,MAAM,EAAE,CAAC;AAEhB,MAAM,kBAAkB,GAAG,CAAC,EAAE,OAAO,EAAuB,EAAE,EAAE;IAC9D,OAAO,CAAC,CAAC,OAAO,CAAC;AACnB,CAAC,CAAC;AAEF,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;AAE9B,SAAS,qBAAqB,CAAC,cAAkC;IAC/D,wDAAwD;IACxD,IAAI,cAAc,KAAK,SAAS,EAAE;QAChC,OAAO,cAAc,CAAC;KACvB;IAED,kDAAkD;IAClD,IAAI,OAAO,CAAC,GAAG,CAAC,iBAAiB,KAAK,SAAS,EAAE;QAC/C,OAAO,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC;KACtC;IAED,wBAAwB;IACxB,OAAO;AACT,CAAC;AAED,KAAK,UAAU,IAAI;IACjB,OAAO;SACJ,IAAI,CAAC,YAAY,CAAC;SAClB,OAAO,CAAC,OAAO,CAAC;SAChB,WAAW,CAAC,sDAAsD,CAAC,CAAC;IAEvE,MAAM,aAAa,GAAG,OAAO;SAC1B,OAAO,CAAC,QAAQ,CAAC;SACjB,WAAW,CAAC,2CAA2C,CAAC,CAAC;IAE5D,aAAa;SACV,OAAO,CAAC,WAAW,CAAC;SACpB,WAAW,CAAC,oBAAoB,CAAC;SACjC,cAAc,CACb,sCAAsC,EACtC,sBAAsB,CACvB;SACA,MAAM,CAAC,WAAW,EAAE,SAAS,EAAE,8BAA8B,CAAC;SAC9D,MAAM,CAAC,eAAe,EAAE,uCAAuC,CAAC;SAChE,MAAM,CAAC,KAAK,EAAE,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE;QACzC,MAAM,MAAM,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;QAErC,IAAI,MAAM,EAAE;YACV,MAAM,MAAM,GAAG,MAAM,sBAAsB,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,CAAC;SACtE;IACH,CAAC,CAAC,CAAC;IAEL,aAAa;SACV,OAAO,CAAC,KAAK,CAAC;SACd,WAAW,CAAC,cAAc,CAAC;SAC3B,cAAc,CACb,sCAAsC,EACtC,sBAAsB,CACvB;SACA,MAAM,CACL,uDAAuD,EACvD,uCAAuC,CACxC;SACA,MAAM,CAAC,WAAW,EAAE,SAAS,EAAE,8BAA8B,CAAC;SAC9D,MAAM,CAAC,eAAe,EAAE,uCAAuC,CAAC;SAChE,MAAM,CAAC,KAAK,EAAE,EAAE,oBAAoB,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE;QAC/D,MAAM,MAAM,GAAG,MAAM,aAAa,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -60,5 +60,7 @@ export class CachedStorageDriver {
|
|
|
60
60
|
return uri;
|
|
61
61
|
}
|
|
62
62
|
}
|
|
63
|
-
|
|
63
|
+
// NOTE: this schema version is independent of the publishing JSON schema. It should be updated
|
|
64
|
+
// when the AssetManifestSchema or Asset types are updated.
|
|
65
|
+
CachedStorageDriver.SCHEMA_VERSION = "0.1";
|
|
64
66
|
//# sourceMappingURL=CachedStorageDriver.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CachedStorageDriver.js","sourceRoot":"","sources":["../../../src/upload/CachedStorageDriver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AAEpB,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAiBpC,mFAAmF;AACnF,MAAM,OAAO,mBAAmB;
|
|
1
|
+
{"version":3,"file":"CachedStorageDriver.js","sourceRoot":"","sources":["../../../src/upload/CachedStorageDriver.ts"],"names":[],"mappings":"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"}
|
package/lib/esm/utils.js
CHANGED
|
@@ -6,7 +6,7 @@ import { dump } from "js-yaml";
|
|
|
6
6
|
import * as util from "util";
|
|
7
7
|
import { exec } from "child_process";
|
|
8
8
|
import * as path from "path";
|
|
9
|
-
import { BundlrStorageDriver, keypairIdentity, Metaplex, toMetaplexFile
|
|
9
|
+
import { BundlrStorageDriver, keypairIdentity, Metaplex, toMetaplexFile } from "@metaplex-foundation/js";
|
|
10
10
|
import { imageSize } from "image-size";
|
|
11
11
|
import { CachedStorageDriver } from "./upload/CachedStorageDriver.js";
|
|
12
12
|
const runImgSize = util.promisify(imageSize);
|
|
@@ -34,16 +34,13 @@ const AaptPrefixes = {
|
|
|
34
34
|
export const getConfigFile = async (buildToolsDir = null) => {
|
|
35
35
|
const configFilePath = `${process.cwd()}/config.yaml`;
|
|
36
36
|
const config = await getConfig(configFilePath);
|
|
37
|
-
config.isValid = true;
|
|
38
37
|
console.info(`Pulling details from ${configFilePath}`);
|
|
39
38
|
if (buildToolsDir && fs.lstatSync(buildToolsDir).isDirectory()) {
|
|
40
39
|
// We validate that the config is going to have at least one installable asset
|
|
41
40
|
const apkEntry = config.release.files.find((asset) => asset.purpose === "install");
|
|
42
41
|
const apkPath = path.join(process.cwd(), apkEntry?.uri);
|
|
43
42
|
if (!fs.existsSync(apkPath)) {
|
|
44
|
-
|
|
45
|
-
config.isValid = false;
|
|
46
|
-
return config;
|
|
43
|
+
throw new Error("Invalid path to APK file.");
|
|
47
44
|
}
|
|
48
45
|
config.release.android_details = await getAndroidDetails(buildToolsDir, apkPath);
|
|
49
46
|
}
|
|
@@ -51,40 +48,30 @@ export const getConfigFile = async (buildToolsDir = null) => {
|
|
|
51
48
|
if (publisherIcon) {
|
|
52
49
|
const iconPath = path.join(process.cwd(), publisherIcon);
|
|
53
50
|
if (!fs.existsSync(iconPath) || !checkImageExtension(iconPath)) {
|
|
54
|
-
|
|
55
|
-
config.isValid = false;
|
|
56
|
-
return config;
|
|
51
|
+
throw new Error("Please check the path to your Publisher icon and ensure the file is a jpeg, png, or webp file.");
|
|
57
52
|
}
|
|
58
53
|
const iconBuffer = await fs.promises.readFile(iconPath);
|
|
59
54
|
if (await checkIconDimensions(iconPath)) {
|
|
60
|
-
|
|
61
|
-
config.isValid = false;
|
|
62
|
-
return config;
|
|
55
|
+
throw new Error("Icons must have square dimensions and be no greater than 512px by 512px.");
|
|
63
56
|
}
|
|
64
|
-
config.publisher.icon = toMetaplexFile(iconBuffer,
|
|
57
|
+
config.publisher.icon = toMetaplexFile(iconBuffer, publisherIcon);
|
|
65
58
|
}
|
|
66
59
|
const appIcon = config.app.media?.find((asset) => asset.purpose === "icon")?.uri;
|
|
67
60
|
if (appIcon) {
|
|
68
61
|
const iconPath = path.join(process.cwd(), appIcon);
|
|
69
62
|
if (!fs.existsSync(iconPath) || !checkImageExtension(iconPath)) {
|
|
70
|
-
|
|
71
|
-
config.isValid = false;
|
|
72
|
-
return config;
|
|
63
|
+
throw new Error("Please check the path to your App icon and ensure the file is a jpeg, png, or webp file.");
|
|
73
64
|
}
|
|
74
65
|
const iconBuffer = await fs.promises.readFile(iconPath);
|
|
75
66
|
if (await checkIconDimensions(iconPath)) {
|
|
76
|
-
|
|
77
|
-
config.isValid = false;
|
|
78
|
-
return config;
|
|
67
|
+
throw new Error("Icons must have square dimensions and be no greater than 512px by 512px.");
|
|
79
68
|
}
|
|
80
|
-
config.app.icon = toMetaplexFile(iconBuffer,
|
|
69
|
+
config.app.icon = toMetaplexFile(iconBuffer, appIcon);
|
|
81
70
|
}
|
|
82
71
|
config.release.media.forEach((item) => {
|
|
83
72
|
const imagePath = path.join(process.cwd(), item.uri);
|
|
84
73
|
if (!fs.existsSync(imagePath) || !checkImageExtension(imagePath)) {
|
|
85
|
-
|
|
86
|
-
config.isValid = false;
|
|
87
|
-
return config;
|
|
74
|
+
throw new Error(`Invalid media path or file type: ${item.uri}. Please ensure the file is a jpeg, png, or webp file.`);
|
|
88
75
|
}
|
|
89
76
|
});
|
|
90
77
|
return config;
|
|
@@ -109,8 +96,7 @@ const getAndroidDetails = async (aaptDir, apkPath) => {
|
|
|
109
96
|
const { stdout } = await runExec(`${aaptDir}/aapt2 dump badging ${apkPath}`);
|
|
110
97
|
const appPackage = new RegExp(AaptPrefixes.packagePrefix + AaptPrefixes.quoteRegex).exec(stdout);
|
|
111
98
|
const versionCode = new RegExp(AaptPrefixes.verCodePrefix + AaptPrefixes.quoteRegex).exec(stdout);
|
|
112
|
-
|
|
113
|
-
//const versionName = new RegExp(prefixes.verNamePrefix + prefixes.quoteRegex).exec(stdout);
|
|
99
|
+
const versionName = new RegExp(AaptPrefixes.verNamePrefix + AaptPrefixes.quoteRegex).exec(stdout);
|
|
114
100
|
const minSdk = new RegExp(AaptPrefixes.sdkPrefix + AaptPrefixes.quoteRegex).exec(stdout);
|
|
115
101
|
const permissions = new RegExp(AaptPrefixes.permissionPrefix + AaptPrefixes.quoteNonLazyRegex).exec(stdout);
|
|
116
102
|
const locales = new RegExp(AaptPrefixes.localePrefix + AaptPrefixes.quoteNonLazyRegex).exec(stdout);
|
|
@@ -127,6 +113,7 @@ const getAndroidDetails = async (aaptDir, apkPath) => {
|
|
|
127
113
|
android_package: appPackage?.[1] ?? "",
|
|
128
114
|
min_sdk: parseInt(minSdk?.[1] ?? "0", 10),
|
|
129
115
|
version_code: parseInt(versionCode?.[1] ?? "0", 10),
|
|
116
|
+
version: versionName?.[1] ?? "0",
|
|
130
117
|
permissions: permissionArray,
|
|
131
118
|
locales: localeArray,
|
|
132
119
|
};
|
|
@@ -147,10 +134,8 @@ export const saveToConfig = async ({ publisher, app, release, }) => {
|
|
|
147
134
|
release: {
|
|
148
135
|
...currentConfig.release,
|
|
149
136
|
address: release?.address ?? currentConfig.release.address,
|
|
150
|
-
version: release?.version ?? currentConfig.release.version,
|
|
151
137
|
},
|
|
152
138
|
solana_mobile_dapp_publisher_portal: currentConfig.solana_mobile_dapp_publisher_portal,
|
|
153
|
-
isValid: currentConfig.isValid,
|
|
154
139
|
};
|
|
155
140
|
// TODO(jon): Verify the contents of the YAML file
|
|
156
141
|
fs.writeFileSync(`${process.cwd()}/config.yaml`, dump(newConfig));
|