@abtnode/blocklet-services 1.16.0-beta-ad6df3ae → 1.16.0-beta-58020de5

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.
@@ -223,7 +223,7 @@ module.exports = {
223
223
  // Get user passport from vc
224
224
  let passport = vc ? createUserPassport(vc) : null;
225
225
  if (user && passport && isUserPassportRevoked(user, passport)) {
226
- throw new Error(messages.passportRevoked[locale](name));
226
+ throw new Error(messages.passportRevoked[locale](passport.title, name));
227
227
  }
228
228
 
229
229
  // Get role
@@ -470,7 +470,7 @@ module.exports = {
470
470
  // Get user passport from vc
471
471
  let passport = vc ? createUserPassport(vc) : null;
472
472
  if (passport && isUserPassportRevoked(user, passport)) {
473
- throw new Error(messages.passportRevoked[locale](name));
473
+ throw new Error(messages.passportRevoked[locale](passport.title, name));
474
474
  }
475
475
 
476
476
  // Get role
@@ -140,20 +140,34 @@ module.exports = {
140
140
  const { did: userDid, role } = req.user;
141
141
 
142
142
  // eslint-disable-next-line no-unreachable
143
- const doc = await node.startBlocklet({
144
- did: blocklet.meta.did,
145
- checkHealthImmediately: true,
146
- throwOnError: true,
147
- });
148
- await node.createAuditLog(
149
- {
150
- action: 'startBlocklet',
151
- args: { did: blocklet.meta.did },
152
- context: formatContext(req),
153
- result: doc,
154
- },
155
- node
156
- );
143
+
144
+ let startError;
145
+ let doc;
146
+ try {
147
+ doc = await node.startBlocklet({
148
+ did: blocklet.meta.did,
149
+ checkHealthImmediately: true,
150
+ throwOnError: true,
151
+ });
152
+ } catch (error) {
153
+ startError = error;
154
+ }
155
+
156
+ if (!startError) {
157
+ try {
158
+ await node.createAuditLog(
159
+ {
160
+ action: 'startBlocklet',
161
+ args: { did: blocklet.meta.did },
162
+ context: formatContext(req),
163
+ result: doc,
164
+ },
165
+ node
166
+ );
167
+ } catch (error) {
168
+ logger.error('create start-blocklet audit log failed', { error });
169
+ }
170
+ }
157
171
 
158
172
  if (fromSetup) {
159
173
  const teamDid = blocklet.meta.did;
@@ -169,7 +183,7 @@ module.exports = {
169
183
  // 调用 store 管理公开实例
170
184
  // 如果一个 blocklet 没有设置 公开实例,启动成功后不应给 store 发请求
171
185
  const { publicToStore } = blocklet.settings;
172
- if (publicToStore) {
186
+ if (publicToStore && !startError) {
173
187
  try {
174
188
  await handleInstanceInStore(blocklet, { userDid, publicToStore });
175
189
  } catch (error) {
@@ -219,35 +233,80 @@ module.exports = {
219
233
  node
220
234
  );
221
235
 
222
- // send vc to wallet
236
+ // send notification to wallet
223
237
  const receiver = userDid;
224
238
  const token = JWT.sign(wallet.address, wallet.secretKey);
225
- const data = {
226
- sender: { token, appDid: wallet.address },
227
- receiver,
228
- notification: {
239
+
240
+ if (!blocklet.settings.owner) {
241
+ // send owner vc
242
+ const notificationText = {
229
243
  title: {
230
- en: 'Up and Running',
231
- zh: '启动并运行',
244
+ en: 'You have become the application owner',
245
+ zh: '你已成为应用所有者',
232
246
  }[locale],
233
247
  body: {
234
- en: 'The application is up and running successfully',
235
- zh: '应用程序已启动并成功运行',
248
+ en: 'You have become the application owner',
249
+ zh: '你已成为应用所有者',
236
250
  }[locale],
237
- attachments: [
238
- {
239
- type: 'vc',
240
- data: {
241
- credential: vc,
242
- tag: role,
251
+ };
252
+
253
+ const data = {
254
+ sender: { token, appDid: wallet.address },
255
+ receiver,
256
+ notification: {
257
+ ...notificationText,
258
+ attachments: [
259
+ {
260
+ type: 'vc',
261
+ data: {
262
+ credential: vc,
263
+ tag: role,
264
+ },
243
265
  },
244
- },
245
- ],
266
+ ],
267
+ },
268
+ };
269
+ server.emit('sendToUser', data);
270
+ }
271
+
272
+ // send message
273
+ const notificationText = startError
274
+ ? {
275
+ title: {
276
+ en: 'Application start failed',
277
+ zh: '应用启动失败',
278
+ }[locale],
279
+ body: {
280
+ en: `Application start failed: ${startError.message}`,
281
+ zh: `应用启动失败: ${startError.message}`,
282
+ }[locale],
283
+ }
284
+ : {
285
+ title: {
286
+ en: 'Up and Running',
287
+ zh: '启动并运行',
288
+ }[locale],
289
+ body: {
290
+ en: 'The application is up and running successfully',
291
+ zh: '应用程序已启动并成功运行',
292
+ }[locale],
293
+ };
294
+
295
+ // send vc to wallet
296
+ const data = {
297
+ sender: { token, appDid: wallet.address },
298
+ receiver,
299
+ notification: {
300
+ ...notificationText,
246
301
  },
247
302
  };
248
303
  server.emit('sendToUser', data);
249
304
  }
250
305
 
306
+ if (startError) {
307
+ throw startError;
308
+ }
309
+
251
310
  return res.json(polishBlocklet(doc));
252
311
  });
253
312
 
@@ -1,14 +1,14 @@
1
1
  {
2
2
  "files": {
3
3
  "main.css": "/.blocklet/proxy/blocklet-service/static/css/main.632501d5.css",
4
- "main.js": "/.blocklet/proxy/blocklet-service/static/js/main.b81aec72.js",
4
+ "main.js": "/.blocklet/proxy/blocklet-service/static/js/main.73c39561.js",
5
5
  "static/js/716.e1534c42.chunk.js": "/.blocklet/proxy/blocklet-service/static/js/716.e1534c42.chunk.js",
6
6
  "static/js/255.279b1bca.chunk.js": "/.blocklet/proxy/blocklet-service/static/js/255.279b1bca.chunk.js",
7
- "static/js/371.575d3b08.chunk.js": "/.blocklet/proxy/blocklet-service/static/js/371.575d3b08.chunk.js",
8
- "static/js/737.14f154ca.chunk.js": "/.blocklet/proxy/blocklet-service/static/js/737.14f154ca.chunk.js",
7
+ "static/js/371.88127b62.chunk.js": "/.blocklet/proxy/blocklet-service/static/js/371.88127b62.chunk.js",
8
+ "static/js/737.ed53dec5.chunk.js": "/.blocklet/proxy/blocklet-service/static/js/737.ed53dec5.chunk.js",
9
9
  "static/js/460.3026a774.chunk.js": "/.blocklet/proxy/blocklet-service/static/js/460.3026a774.chunk.js",
10
10
  "static/js/868.f2fac071.chunk.js": "/.blocklet/proxy/blocklet-service/static/js/868.f2fac071.chunk.js",
11
- "static/js/343.a77b905e.chunk.js": "/.blocklet/proxy/blocklet-service/static/js/343.a77b905e.chunk.js",
11
+ "static/js/343.087cec35.chunk.js": "/.blocklet/proxy/blocklet-service/static/js/343.087cec35.chunk.js",
12
12
  "static/js/682.c64ae291.chunk.js": "/.blocklet/proxy/blocklet-service/static/js/682.c64ae291.chunk.js",
13
13
  "static/js/711.6c22b7c7.chunk.js": "/.blocklet/proxy/blocklet-service/static/js/711.6c22b7c7.chunk.js",
14
14
  "static/js/437.d815f0c0.chunk.js": "/.blocklet/proxy/blocklet-service/static/js/437.d815f0c0.chunk.js",
@@ -42,14 +42,14 @@
42
42
  "router-template-styles/styles.css": "/.blocklet/proxy/blocklet-service/router-template-styles/styles.css",
43
43
  "index.html": "/.blocklet/proxy/blocklet-service/index.html",
44
44
  "main.632501d5.css.map": "/.blocklet/proxy/blocklet-service/static/css/main.632501d5.css.map",
45
- "main.b81aec72.js.map": "/.blocklet/proxy/blocklet-service/static/js/main.b81aec72.js.map",
45
+ "main.73c39561.js.map": "/.blocklet/proxy/blocklet-service/static/js/main.73c39561.js.map",
46
46
  "716.e1534c42.chunk.js.map": "/.blocklet/proxy/blocklet-service/static/js/716.e1534c42.chunk.js.map",
47
47
  "255.279b1bca.chunk.js.map": "/.blocklet/proxy/blocklet-service/static/js/255.279b1bca.chunk.js.map",
48
- "371.575d3b08.chunk.js.map": "/.blocklet/proxy/blocklet-service/static/js/371.575d3b08.chunk.js.map",
49
- "737.14f154ca.chunk.js.map": "/.blocklet/proxy/blocklet-service/static/js/737.14f154ca.chunk.js.map",
48
+ "371.88127b62.chunk.js.map": "/.blocklet/proxy/blocklet-service/static/js/371.88127b62.chunk.js.map",
49
+ "737.ed53dec5.chunk.js.map": "/.blocklet/proxy/blocklet-service/static/js/737.ed53dec5.chunk.js.map",
50
50
  "460.3026a774.chunk.js.map": "/.blocklet/proxy/blocklet-service/static/js/460.3026a774.chunk.js.map",
51
51
  "868.f2fac071.chunk.js.map": "/.blocklet/proxy/blocklet-service/static/js/868.f2fac071.chunk.js.map",
52
- "343.a77b905e.chunk.js.map": "/.blocklet/proxy/blocklet-service/static/js/343.a77b905e.chunk.js.map",
52
+ "343.087cec35.chunk.js.map": "/.blocklet/proxy/blocklet-service/static/js/343.087cec35.chunk.js.map",
53
53
  "682.c64ae291.chunk.js.map": "/.blocklet/proxy/blocklet-service/static/js/682.c64ae291.chunk.js.map",
54
54
  "711.6c22b7c7.chunk.js.map": "/.blocklet/proxy/blocklet-service/static/js/711.6c22b7c7.chunk.js.map",
55
55
  "437.d815f0c0.chunk.js.map": "/.blocklet/proxy/blocklet-service/static/js/437.d815f0c0.chunk.js.map",
@@ -64,6 +64,6 @@
64
64
  },
65
65
  "entrypoints": [
66
66
  "static/css/main.632501d5.css",
67
- "static/js/main.b81aec72.js"
67
+ "static/js/main.73c39561.js"
68
68
  ]
69
69
  }
package/build/index.html CHANGED
@@ -1 +1 @@
1
- <!doctype html><html lang="en"><head><meta charset="utf-8"/><link rel="icon" href="/favicon.ico"/><meta name="viewport" content="width=device-width,initial-scale=1,maximum-scale=1,user-scalable=0"/><meta name="theme-color" content="#000000"/><title>Blocklet Service</title><script src=".well-known/service/api/env"></script><script src="/__blocklet__.js"></script><script defer="defer" src="/.blocklet/proxy/blocklet-service/static/js/main.b81aec72.js"></script><link href="/.blocklet/proxy/blocklet-service/static/css/main.632501d5.css" rel="stylesheet"></head><body><noscript>You need to enable JavaScript to run this app.</noscript><div id="root"></div></body></html>
1
+ <!doctype html><html lang="en"><head><meta charset="utf-8"/><link rel="icon" href="/favicon.ico"/><meta name="viewport" content="width=device-width,initial-scale=1,maximum-scale=1,user-scalable=0"/><meta name="theme-color" content="#000000"/><title>Blocklet Service</title><script src=".well-known/service/api/env"></script><script src="/__blocklet__.js"></script><script defer="defer" src="/.blocklet/proxy/blocklet-service/static/js/main.73c39561.js"></script><link href="/.blocklet/proxy/blocklet-service/static/css/main.632501d5.css" rel="stylesheet"></head><body><noscript>You need to enable JavaScript to run this app.</noscript><div id="root"></div></body></html>