@abtnode/blocklet-services 1.16.14-beta-c2843ec5 → 1.16.14-beta-5ac0c68b

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.
Files changed (27) hide show
  1. package/api/cache.js +1 -1
  2. package/api/libs/connect/shared.js +2 -2
  3. package/api/middlewares/check-federated-cors-call.js +10 -2
  4. package/api/middlewares/ensure-blocklet.js +2 -2
  5. package/api/routes/federated.js +21 -8
  6. package/api/services/auth/passport.js +3 -1
  7. package/api/services/studio/index.js +12 -5
  8. package/api/util/attach-shared-utils.js +2 -2
  9. package/build/asset-manifest.json +15 -15
  10. package/build/index.html +1 -1
  11. package/build/service-worker.js +1 -1
  12. package/build/static/js/2130.f123740e.chunk.js +3 -0
  13. package/build/static/js/3800.6d22581f.chunk.js +2 -0
  14. package/build/static/js/{445.aabc2c68.chunk.js → 445.7ad42b19.chunk.js} +3 -3
  15. package/build/static/js/{4603.a370c797.chunk.js → 4603.7a55b2c4.chunk.js} +2 -2
  16. package/build/static/js/652.114c75d5.chunk.js +2 -0
  17. package/build/static/js/8395.5bd41151.chunk.js +2 -0
  18. package/build/static/js/main.a2cac121.js +3 -0
  19. package/package.json +24 -24
  20. package/build/static/js/2130.c9c0f36b.chunk.js +0 -3
  21. package/build/static/js/3800.b792d5c0.chunk.js +0 -2
  22. package/build/static/js/652.5b3e92c7.chunk.js +0 -2
  23. package/build/static/js/8395.7df44f2d.chunk.js +0 -2
  24. package/build/static/js/main.99f79c8e.js +0 -3
  25. /package/build/static/js/{2130.c9c0f36b.chunk.js.LICENSE.txt → 2130.f123740e.chunk.js.LICENSE.txt} +0 -0
  26. /package/build/static/js/{445.aabc2c68.chunk.js.LICENSE.txt → 445.7ad42b19.chunk.js.LICENSE.txt} +0 -0
  27. /package/build/static/js/{main.99f79c8e.js.LICENSE.txt → main.a2cac121.js.LICENSE.txt} +0 -0
package/api/cache.js CHANGED
@@ -65,7 +65,7 @@ cache.getBlocklet = async ({ did, node, force, context }) => {
65
65
  }
66
66
  }
67
67
 
68
- const blocklet = await node.getBlocklet({ did }, context);
68
+ const blocklet = await node.getBlocklet({ did, useCache: false }, context);
69
69
  if (blocklet) {
70
70
  cache.set(cacheKey, blocklet);
71
71
  }
@@ -14,12 +14,12 @@ module.exports = {
14
14
  request.getBlockletInfo(),
15
15
  request.getNodeInfo(),
16
16
  ]);
17
- // NOTE: 这里应该使用当前 blocklet did,而不是 pid
17
+ // 对于 ux 来说, 要展示的始终是 pid,所以这个给 agentDid 的赋值也需要是 pid
18
18
  let agentDid;
19
19
  const provider = getProvider(request, extraParams);
20
20
  // federated 登录模式下,需要告知原有的 blocklet-did
21
21
  if (provider === LOGIN_PROVIDER.FEDERATED) {
22
- agentDid = blocklet.appDid;
22
+ agentDid = blocklet.appPid;
23
23
  }
24
24
 
25
25
  const version = get(blocklet, 'meta.version', '');
@@ -4,8 +4,16 @@ function checkFederatedCorsCall() {
4
4
  const { blocklet } = req;
5
5
  const federated = blocklet.settings.federated || {};
6
6
  const sites = federated?.sites || [];
7
- // TODO: @zhanghan 增加 aliasAppUrl 判断
8
- if (sites.find((item) => item.appUrl === caller && item.status === 'approved')) {
7
+ if (
8
+ sites.find((item) => {
9
+ if (item.status === 'approved') {
10
+ const siteHost = new URL(item.appUrl).host;
11
+ const callerHost = new URL(caller).host;
12
+ return [siteHost, ...(item.aliasDomain || [])].includes(callerHost);
13
+ }
14
+ return false;
15
+ })
16
+ ) {
9
17
  next();
10
18
  return;
11
19
  }
@@ -1,6 +1,6 @@
1
- function ensureBlocklet() {
1
+ function ensureBlocklet({ useCache = false } = {}) {
2
2
  return async (req, res, next) => {
3
- const blocklet = await req.getBlocklet();
3
+ const blocklet = await req.getBlocklet({ useCache });
4
4
  if (!blocklet) {
5
5
  res.status(404).send('blocklet not found');
6
6
  return;
@@ -14,6 +14,8 @@ const pick = require('lodash/pick');
14
14
  const defaults = require('lodash/defaults');
15
15
  const remove = require('lodash/remove');
16
16
 
17
+ const logger = require('@abtnode/logger')('blocklet-services:federated');
18
+
17
19
  const { api } = require('../libs/api');
18
20
  const initJwt = require('../libs/jwt');
19
21
  const { createTokenFn, getDidConnectVersion } = require('../util');
@@ -50,6 +52,7 @@ module.exports = {
50
52
  if (federated.sites.length === 0) {
51
53
  const nodeInfo = await req.getNodeInfo();
52
54
  const blockletInfo = await req.getBlockletInfo();
55
+ const domainAliases = await node.getBlockletDomainAliases(blocklet);
53
56
  const masterSite = {
54
57
  appId: blocklet.appDid,
55
58
  appPid: blocklet.appPid,
@@ -57,6 +60,7 @@ module.exports = {
57
60
  appName: blockletInfo.name,
58
61
  appDescription: blockletInfo.description,
59
62
  appUrl: blockletInfo.appUrl,
63
+ aliasDomain: domainAliases.map((item) => item.value),
60
64
  appLogo:
61
65
  blocklet.environmentObj.BLOCKLET_APP_LOGO ||
62
66
  normalizePathPrefix(`${WELLKNOWN_SERVICE_PATH_PREFIX}/blocklet/logo`) ||
@@ -116,11 +120,17 @@ module.exports = {
116
120
  const waitingList = federated.sites
117
121
  .filter((item) => item.appId !== federated.config.appId)
118
122
  .map((item) => {
119
- return limitSync(() =>
120
- pRetry(() => api.post(`${item.appUrl}/${WELLKNOWN_SERVICE_PATH_PREFIX}/api/federated/sync`, postData), {
121
- retries: 3,
122
- })
123
- );
123
+ return limitSync(async () => {
124
+ const url = `${item.appUrl}/${WELLKNOWN_SERVICE_PATH_PREFIX}/api/federated/sync`;
125
+ // NOTICE: 即使通知其他 member 失败了,也不影响来源 member 退出统一登录
126
+ try {
127
+ await pRetry(() => api.post(url, postData), {
128
+ retries: 3,
129
+ });
130
+ } catch (error) {
131
+ logger.warn('Failed to sync federated member', { error, url, did: blocklet.appDid, action: 'quit' });
132
+ }
133
+ });
124
134
  });
125
135
  await Promise.all(waitingList);
126
136
 
@@ -251,8 +261,11 @@ module.exports = {
251
261
  const { permanentWallet } = await req.getBlockletInfo();
252
262
  const teamDid = blocklet.appPid;
253
263
  const federatedSites = blocklet.settings?.federated?.sites || [];
254
- // TODO: @zhanghan 增加 aliasAppUrl 判断
255
- const loginSite = federatedSites.find((item) => item.appUrl === req.headers.origin);
264
+ const loginSite = federatedSites.find((item) => {
265
+ const siteHost = new URL(item.appUrl).host;
266
+ const fromHost = new URL(req.headers.origin).host;
267
+ return [siteHost, ...(item.aliasDomain || [])].includes(fromHost);
268
+ });
256
269
 
257
270
  const currentUser = await node.getUser({
258
271
  teamDid,
@@ -331,7 +344,7 @@ module.exports = {
331
344
  const { dataDir } = await getApplicationInfo({ node, nodeInfo, teamDid });
332
345
  avatar = await extractUserAvatar(avatar, { dataDir });
333
346
  } catch (err) {
334
- console.error(err.response.status);
347
+ logger.error('Failed to convert user avatar', { error: err });
335
348
  }
336
349
  }
337
350
  const doc = await node.loginUser({
@@ -9,7 +9,9 @@ module.exports = {
9
9
  const { vcId, userDid, locale } = req.query;
10
10
  const teamDid = req.headers['x-blocklet-did'];
11
11
 
12
- if (teamDid !== req.query.teamDid) {
12
+ // HACK: 这里的 req.query.teamDid 可能是 blocklet 容器化之前的 teamDid(等于 blocklet.yml did),需要根据这个 did 找到现有对应的 teamDid,否则无法使用在容器化之前颁发的通行证来登录
13
+ const blocklet = await node.getBlocklet({ did: req.query.teamDid, useCache: true });
14
+ if (teamDid !== blocklet?.meta?.did) {
13
15
  throw new Error('teamDid is invalid');
14
16
  }
15
17
 
@@ -4,13 +4,20 @@ const express = require('express');
4
4
  const serveStatic = require('serve-static');
5
5
  const path = require('path');
6
6
  const nocache = require('nocache');
7
- const { BLOCKLET_PREFERENCE_FILE, BLOCKLET_UPLOADS_DIR } = require('@blocklet/constant');
7
+ const { BLOCKLET_PREFERENCE_FILE, BLOCKLET_UPLOADS_DIR, BLOCKLET_MODES } = require('@blocklet/constant');
8
8
 
9
9
  const builderPath = path.dirname(require.resolve('@blocklet/form-builder'));
10
10
  const collectorPath = path.dirname(require.resolve('@blocklet/form-collector'));
11
11
 
12
12
  const { PREFIXES } = require('../../util/constants');
13
13
 
14
+ const findComponent = (blocklet) => {
15
+ const component = blocklet.children.find((c) => c.meta.name === blocklet.meta.name);
16
+
17
+ // if blocklet is an gateway blocklet, then component will be empty and blocklet.deployedFrom will be the local folder of the blocklet
18
+ return component || blocklet;
19
+ };
20
+
14
21
  module.exports = {
15
22
  init({ app }) {
16
23
  PREFIXES.forEach((prefix) => {
@@ -18,11 +25,11 @@ module.exports = {
18
25
 
19
26
  app.get(preferenceUrl, nocache(), async (req, res) => {
20
27
  const blocklet = await req.getBlocklet();
21
- if (blocklet.mode !== 'development') {
28
+ if (blocklet.mode !== BLOCKLET_MODES.DEVELOPMENT) {
22
29
  return res.status(400).json({ error: 'Blocklet Studio can only be used for blocklets in development mode' });
23
30
  }
24
31
 
25
- const component = blocklet.children.find((c) => c.meta.name === blocklet.meta.name);
32
+ const component = findComponent(blocklet);
26
33
  if (!component || !component.deployedFrom) {
27
34
  return res.status(400).json({ error: 'Can not find current component' });
28
35
  }
@@ -42,11 +49,11 @@ module.exports = {
42
49
 
43
50
  app.put(preferenceUrl, async (req, res) => {
44
51
  const blocklet = await req.getBlocklet();
45
- if (blocklet.mode !== 'development') {
52
+ if (blocklet.mode !== BLOCKLET_MODES.DEVELOPMENT) {
46
53
  return res.status(400).json({ error: 'Blocklet Studio can only be used for blocklets in development mode' });
47
54
  }
48
55
 
49
- const component = blocklet.children.find((c) => c.meta.name === blocklet.meta.name);
56
+ const component = findComponent(blocklet);
50
57
  if (!component || !component.deployedFrom) {
51
58
  return res.status(400).json({ error: 'Can not find current component' });
52
59
  }
@@ -83,11 +83,11 @@ module.exports = ({ node, req, options }) => {
83
83
  return { ...config, ...componentDynamicConfig };
84
84
  };
85
85
 
86
- req.getBlocklet = ({ useCache = true } = {}) => {
86
+ req.getBlocklet = ({ useCache = true, attachRuntimeInfo = false } = {}) => {
87
87
  const did = req.getBlockletDid();
88
88
  const context = req.getServiceContext();
89
89
 
90
- return cache.getBlocklet({ did, context, node, force: !useCache });
90
+ return cache.getBlocklet({ did, context, node, force: !useCache, attachRuntimeInfo });
91
91
  };
92
92
 
93
93
  req.getNodeInfo = () => cache.getNodeInfo({ node });
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "files": {
3
3
  "main.css": "/.well-known/service/static/static/css/main.7ea79dc8.css",
4
- "main.js": "/.well-known/service/static/static/js/main.99f79c8e.js",
4
+ "main.js": "/.well-known/service/static/static/js/main.a2cac121.js",
5
5
  "static/js/4716.a1240199.chunk.js": "/.well-known/service/static/static/js/4716.a1240199.chunk.js",
6
6
  "static/js/4359.5ed52fe3.chunk.js": "/.well-known/service/static/static/js/4359.5ed52fe3.chunk.js",
7
7
  "static/js/1255.0e8a8a45.chunk.js": "/.well-known/service/static/static/js/1255.0e8a8a45.chunk.js",
@@ -10,7 +10,7 @@
10
10
  "static/js/3953.e3e51520.chunk.js": "/.well-known/service/static/static/js/3953.e3e51520.chunk.js",
11
11
  "static/js/868.60de5f6d.chunk.js": "/.well-known/service/static/static/js/868.60de5f6d.chunk.js",
12
12
  "static/js/4547.b26ceabb.chunk.js": "/.well-known/service/static/static/js/4547.b26ceabb.chunk.js",
13
- "static/js/652.5b3e92c7.chunk.js": "/.well-known/service/static/static/js/652.5b3e92c7.chunk.js",
13
+ "static/js/652.114c75d5.chunk.js": "/.well-known/service/static/static/js/652.114c75d5.chunk.js",
14
14
  "static/js/4682.81053e18.chunk.js": "/.well-known/service/static/static/js/4682.81053e18.chunk.js",
15
15
  "static/js/6711.a62d0bcd.chunk.js": "/.well-known/service/static/static/js/6711.a62d0bcd.chunk.js",
16
16
  "static/js/8437.e4b47fc3.chunk.js": "/.well-known/service/static/static/js/8437.e4b47fc3.chunk.js",
@@ -22,16 +22,16 @@
22
22
  "static/js/5176.68fd3fde.chunk.js": "/.well-known/service/static/static/js/5176.68fd3fde.chunk.js",
23
23
  "static/js/2139.341406d2.chunk.js": "/.well-known/service/static/static/js/2139.341406d2.chunk.js",
24
24
  "static/js/5052.91c69c75.chunk.js": "/.well-known/service/static/static/js/5052.91c69c75.chunk.js",
25
- "static/js/8395.7df44f2d.chunk.js": "/.well-known/service/static/static/js/8395.7df44f2d.chunk.js",
25
+ "static/js/8395.5bd41151.chunk.js": "/.well-known/service/static/static/js/8395.5bd41151.chunk.js",
26
26
  "static/js/5233.faabaae9.chunk.js": "/.well-known/service/static/static/js/5233.faabaae9.chunk.js",
27
27
  "static/css/4603.dce369d5.chunk.css": "/.well-known/service/static/static/css/4603.dce369d5.chunk.css",
28
- "static/js/4603.a370c797.chunk.js": "/.well-known/service/static/static/js/4603.a370c797.chunk.js",
28
+ "static/js/4603.7a55b2c4.chunk.js": "/.well-known/service/static/static/js/4603.7a55b2c4.chunk.js",
29
29
  "static/js/5050.f1d720d2.chunk.js": "/.well-known/service/static/static/js/5050.f1d720d2.chunk.js",
30
30
  "static/css/780.e3db6e49.chunk.css": "/.well-known/service/static/static/css/780.e3db6e49.chunk.css",
31
31
  "static/js/780.32bf1f5b.chunk.js": "/.well-known/service/static/static/js/780.32bf1f5b.chunk.js",
32
32
  "static/js/766.43f63b49.chunk.js": "/.well-known/service/static/static/js/766.43f63b49.chunk.js",
33
33
  "static/js/5430.6aa38ea1.chunk.js": "/.well-known/service/static/static/js/5430.6aa38ea1.chunk.js",
34
- "static/js/3800.b792d5c0.chunk.js": "/.well-known/service/static/static/js/3800.b792d5c0.chunk.js",
34
+ "static/js/3800.6d22581f.chunk.js": "/.well-known/service/static/static/js/3800.6d22581f.chunk.js",
35
35
  "static/js/1832.3ac49edc.chunk.js": "/.well-known/service/static/static/js/1832.3ac49edc.chunk.js",
36
36
  "static/js/655.cdee65b4.chunk.js": "/.well-known/service/static/static/js/655.cdee65b4.chunk.js",
37
37
  "static/js/576.d7d4814e.chunk.js": "/.well-known/service/static/static/js/576.d7d4814e.chunk.js",
@@ -39,7 +39,7 @@
39
39
  "static/js/6315.59e078f6.chunk.js": "/.well-known/service/static/static/js/6315.59e078f6.chunk.js",
40
40
  "static/js/4651.0a58cbc3.chunk.js": "/.well-known/service/static/static/js/4651.0a58cbc3.chunk.js",
41
41
  "static/js/4319.e99b5af9.chunk.js": "/.well-known/service/static/static/js/4319.e99b5af9.chunk.js",
42
- "static/js/445.aabc2c68.chunk.js": "/.well-known/service/static/static/js/445.aabc2c68.chunk.js",
42
+ "static/js/445.7ad42b19.chunk.js": "/.well-known/service/static/static/js/445.7ad42b19.chunk.js",
43
43
  "static/js/7518.5b02f3ba.chunk.js": "/.well-known/service/static/static/js/7518.5b02f3ba.chunk.js",
44
44
  "static/js/8669.814198b8.chunk.js": "/.well-known/service/static/static/js/8669.814198b8.chunk.js",
45
45
  "static/js/7291.5553195e.chunk.js": "/.well-known/service/static/static/js/7291.5553195e.chunk.js",
@@ -47,7 +47,7 @@
47
47
  "static/js/3242.5dea77f3.chunk.js": "/.well-known/service/static/static/js/3242.5dea77f3.chunk.js",
48
48
  "static/js/4492.97b0d4f6.chunk.js": "/.well-known/service/static/static/js/4492.97b0d4f6.chunk.js",
49
49
  "static/css/2130.b9437a64.chunk.css": "/.well-known/service/static/static/css/2130.b9437a64.chunk.css",
50
- "static/js/2130.c9c0f36b.chunk.js": "/.well-known/service/static/static/js/2130.c9c0f36b.chunk.js",
50
+ "static/js/2130.f123740e.chunk.js": "/.well-known/service/static/static/js/2130.f123740e.chunk.js",
51
51
  "static/js/5711.aa17ef28.chunk.js": "/.well-known/service/static/static/js/5711.aa17ef28.chunk.js",
52
52
  "static/js/7345.4b4f8941.chunk.js": "/.well-known/service/static/static/js/7345.4b4f8941.chunk.js",
53
53
  "static/js/1237.a18e319d.chunk.js": "/.well-known/service/static/static/js/1237.a18e319d.chunk.js",
@@ -84,7 +84,7 @@
84
84
  "router-template-styles/styles.css": "/.well-known/service/static/router-template-styles/styles.css",
85
85
  "index.html": "/.well-known/service/static/index.html",
86
86
  "main.7ea79dc8.css.map": "/.well-known/service/static/static/css/main.7ea79dc8.css.map",
87
- "main.99f79c8e.js.map": "/.well-known/service/static/static/js/main.99f79c8e.js.map",
87
+ "main.a2cac121.js.map": "/.well-known/service/static/static/js/main.a2cac121.js.map",
88
88
  "4716.a1240199.chunk.js.map": "/.well-known/service/static/static/js/4716.a1240199.chunk.js.map",
89
89
  "4359.5ed52fe3.chunk.js.map": "/.well-known/service/static/static/js/4359.5ed52fe3.chunk.js.map",
90
90
  "1255.0e8a8a45.chunk.js.map": "/.well-known/service/static/static/js/1255.0e8a8a45.chunk.js.map",
@@ -93,7 +93,7 @@
93
93
  "3953.e3e51520.chunk.js.map": "/.well-known/service/static/static/js/3953.e3e51520.chunk.js.map",
94
94
  "868.60de5f6d.chunk.js.map": "/.well-known/service/static/static/js/868.60de5f6d.chunk.js.map",
95
95
  "4547.b26ceabb.chunk.js.map": "/.well-known/service/static/static/js/4547.b26ceabb.chunk.js.map",
96
- "652.5b3e92c7.chunk.js.map": "/.well-known/service/static/static/js/652.5b3e92c7.chunk.js.map",
96
+ "652.114c75d5.chunk.js.map": "/.well-known/service/static/static/js/652.114c75d5.chunk.js.map",
97
97
  "4682.81053e18.chunk.js.map": "/.well-known/service/static/static/js/4682.81053e18.chunk.js.map",
98
98
  "6711.a62d0bcd.chunk.js.map": "/.well-known/service/static/static/js/6711.a62d0bcd.chunk.js.map",
99
99
  "8437.e4b47fc3.chunk.js.map": "/.well-known/service/static/static/js/8437.e4b47fc3.chunk.js.map",
@@ -105,16 +105,16 @@
105
105
  "5176.68fd3fde.chunk.js.map": "/.well-known/service/static/static/js/5176.68fd3fde.chunk.js.map",
106
106
  "2139.341406d2.chunk.js.map": "/.well-known/service/static/static/js/2139.341406d2.chunk.js.map",
107
107
  "5052.91c69c75.chunk.js.map": "/.well-known/service/static/static/js/5052.91c69c75.chunk.js.map",
108
- "8395.7df44f2d.chunk.js.map": "/.well-known/service/static/static/js/8395.7df44f2d.chunk.js.map",
108
+ "8395.5bd41151.chunk.js.map": "/.well-known/service/static/static/js/8395.5bd41151.chunk.js.map",
109
109
  "5233.faabaae9.chunk.js.map": "/.well-known/service/static/static/js/5233.faabaae9.chunk.js.map",
110
110
  "4603.dce369d5.chunk.css.map": "/.well-known/service/static/static/css/4603.dce369d5.chunk.css.map",
111
- "4603.a370c797.chunk.js.map": "/.well-known/service/static/static/js/4603.a370c797.chunk.js.map",
111
+ "4603.7a55b2c4.chunk.js.map": "/.well-known/service/static/static/js/4603.7a55b2c4.chunk.js.map",
112
112
  "5050.f1d720d2.chunk.js.map": "/.well-known/service/static/static/js/5050.f1d720d2.chunk.js.map",
113
113
  "780.e3db6e49.chunk.css.map": "/.well-known/service/static/static/css/780.e3db6e49.chunk.css.map",
114
114
  "780.32bf1f5b.chunk.js.map": "/.well-known/service/static/static/js/780.32bf1f5b.chunk.js.map",
115
115
  "766.43f63b49.chunk.js.map": "/.well-known/service/static/static/js/766.43f63b49.chunk.js.map",
116
116
  "5430.6aa38ea1.chunk.js.map": "/.well-known/service/static/static/js/5430.6aa38ea1.chunk.js.map",
117
- "3800.b792d5c0.chunk.js.map": "/.well-known/service/static/static/js/3800.b792d5c0.chunk.js.map",
117
+ "3800.6d22581f.chunk.js.map": "/.well-known/service/static/static/js/3800.6d22581f.chunk.js.map",
118
118
  "1832.3ac49edc.chunk.js.map": "/.well-known/service/static/static/js/1832.3ac49edc.chunk.js.map",
119
119
  "655.cdee65b4.chunk.js.map": "/.well-known/service/static/static/js/655.cdee65b4.chunk.js.map",
120
120
  "576.d7d4814e.chunk.js.map": "/.well-known/service/static/static/js/576.d7d4814e.chunk.js.map",
@@ -122,7 +122,7 @@
122
122
  "6315.59e078f6.chunk.js.map": "/.well-known/service/static/static/js/6315.59e078f6.chunk.js.map",
123
123
  "4651.0a58cbc3.chunk.js.map": "/.well-known/service/static/static/js/4651.0a58cbc3.chunk.js.map",
124
124
  "4319.e99b5af9.chunk.js.map": "/.well-known/service/static/static/js/4319.e99b5af9.chunk.js.map",
125
- "445.aabc2c68.chunk.js.map": "/.well-known/service/static/static/js/445.aabc2c68.chunk.js.map",
125
+ "445.7ad42b19.chunk.js.map": "/.well-known/service/static/static/js/445.7ad42b19.chunk.js.map",
126
126
  "7518.5b02f3ba.chunk.js.map": "/.well-known/service/static/static/js/7518.5b02f3ba.chunk.js.map",
127
127
  "8669.814198b8.chunk.js.map": "/.well-known/service/static/static/js/8669.814198b8.chunk.js.map",
128
128
  "7291.5553195e.chunk.js.map": "/.well-known/service/static/static/js/7291.5553195e.chunk.js.map",
@@ -130,7 +130,7 @@
130
130
  "3242.5dea77f3.chunk.js.map": "/.well-known/service/static/static/js/3242.5dea77f3.chunk.js.map",
131
131
  "4492.97b0d4f6.chunk.js.map": "/.well-known/service/static/static/js/4492.97b0d4f6.chunk.js.map",
132
132
  "2130.b9437a64.chunk.css.map": "/.well-known/service/static/static/css/2130.b9437a64.chunk.css.map",
133
- "2130.c9c0f36b.chunk.js.map": "/.well-known/service/static/static/js/2130.c9c0f36b.chunk.js.map",
133
+ "2130.f123740e.chunk.js.map": "/.well-known/service/static/static/js/2130.f123740e.chunk.js.map",
134
134
  "5711.aa17ef28.chunk.js.map": "/.well-known/service/static/static/js/5711.aa17ef28.chunk.js.map",
135
135
  "7345.4b4f8941.chunk.js.map": "/.well-known/service/static/static/js/7345.4b4f8941.chunk.js.map",
136
136
  "1237.a18e319d.chunk.js.map": "/.well-known/service/static/static/js/1237.a18e319d.chunk.js.map",
@@ -147,6 +147,6 @@
147
147
  },
148
148
  "entrypoints": [
149
149
  "static/css/main.7ea79dc8.css",
150
- "static/js/main.99f79c8e.js"
150
+ "static/js/main.a2cac121.js"
151
151
  ]
152
152
  }
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><link rel="manifest" href="/.well-known/service/manifest.json"/><script src="/.well-known/service/api/env"></script><script src="/__blocklet__.js"></script><script defer="defer" src="/.well-known/service/static/static/js/main.99f79c8e.js"></script><link href="/.well-known/service/static/static/css/main.7ea79dc8.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><link rel="manifest" href="/.well-known/service/manifest.json"/><script src="/.well-known/service/api/env"></script><script src="/__blocklet__.js"></script><script defer="defer" src="/.well-known/service/static/static/js/main.a2cac121.js"></script><link href="/.well-known/service/static/static/css/main.7ea79dc8.css" rel="stylesheet"></head><body><noscript>You need to enable JavaScript to run this app.</noscript><div id="root"></div></body></html>