@abtnode/blocklet-services 1.16.14-beta-a898bfcb → 1.16.14-beta-d802cd3c

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 (96) hide show
  1. package/api/index.js +5 -0
  2. package/api/libs/auth/utils.js +6 -8
  3. package/api/libs/connect/session.js +75 -23
  4. package/api/libs/connect/shared.js +12 -1
  5. package/api/libs/connect/v1.js +32 -3
  6. package/api/libs/jwt.js +8 -3
  7. package/api/middlewares/check-federated-cors-call.js +15 -0
  8. package/api/middlewares/ensure-blocklet.js +13 -0
  9. package/api/middlewares/verify-federated-call.js +35 -0
  10. package/api/routes/blocklet.js +20 -7
  11. package/api/routes/federated.js +365 -0
  12. package/api/routes/oauth.js +8 -7
  13. package/api/services/auth/connect/invite.js +2 -1
  14. package/api/services/auth/connect/issue-passport.js +2 -8
  15. package/api/services/auth/connect/login.js +9 -1
  16. package/api/services/auth/connect/receive-transfer-app-owner.js +3 -1
  17. package/api/services/auth/session.js +3 -1
  18. package/api/services/dashboard/index.js +1 -1
  19. package/api/services/notification/blocklet-events-notifier.js +79 -28
  20. package/api/util/blocklet-utils.js +27 -0
  21. package/api/util/federated.js +41 -0
  22. package/build/asset-manifest.json +70 -69
  23. package/build/index.html +1 -1
  24. package/build/service-worker.js +1 -1
  25. package/build/service-worker.js.map +1 -1
  26. package/build/static/css/4603.dce369d5.chunk.css +2 -0
  27. package/build/static/js/{1162.40dc4181.chunk.js → 1162.ff3136ae.chunk.js} +2 -2
  28. package/build/static/js/1237.1d0b8f1e.chunk.js +3 -0
  29. package/build/static/js/2130.59fef4ad.chunk.js +3 -0
  30. package/build/static/js/3242.5dea77f3.chunk.js +2 -0
  31. package/build/static/js/3464.12806bfe.chunk.js +2 -0
  32. package/build/static/js/{3953.b81b810f.chunk.js → 3953.e3e51520.chunk.js} +2 -2
  33. package/build/static/js/3963.2e06f9bc.chunk.js +3 -0
  34. package/build/static/js/4319.e99b5af9.chunk.js +2 -0
  35. package/build/static/js/{445.080a986b.chunk.js → 445.6da52f3e.chunk.js} +3 -3
  36. package/build/static/js/4492.97b0d4f6.chunk.js +2 -0
  37. package/build/static/js/4547.b26ceabb.chunk.js +2 -0
  38. package/build/static/js/4603.f6b8d272.chunk.js +2 -0
  39. package/build/static/js/4651.0a58cbc3.chunk.js +3 -0
  40. package/build/static/js/5050.538edf89.chunk.js +3 -0
  41. package/build/static/js/5176.68fd3fde.chunk.js +2 -0
  42. package/build/static/js/5233.faabaae9.chunk.js +2 -0
  43. package/build/static/js/{5430.e0f10ab3.chunk.js → 5430.8114614c.chunk.js} +2 -2
  44. package/build/static/js/5645.a17cd258.chunk.js +2 -0
  45. package/build/static/js/6315.59e078f6.chunk.js +2 -0
  46. package/build/static/js/652.d534b309.chunk.js +2 -0
  47. package/build/static/js/{6737.c05aedb4.chunk.js → 6737.4f37dd4a.chunk.js} +2 -2
  48. package/build/static/js/6891.6c7018ab.chunk.js +2 -0
  49. package/build/static/js/7345.4b4f8941.chunk.js +3 -0
  50. package/build/static/js/7371.da3c5cc3.chunk.js +2 -0
  51. package/build/static/js/{766.c7bfb323.chunk.js → 766.5dd16d47.chunk.js} +2 -2
  52. package/build/static/js/780.32bf1f5b.chunk.js +2 -0
  53. package/build/static/js/8031.d9af3d84.chunk.js +2 -0
  54. package/build/static/js/8395.e5aa519c.chunk.js +2 -0
  55. package/build/static/js/868.aa2a1c4d.chunk.js +2 -0
  56. package/build/static/js/9476.bc480cfc.chunk.js +2 -0
  57. package/build/static/js/982.11dc355f.chunk.js +3 -0
  58. package/build/static/js/main.0357601e.js +3 -0
  59. package/build/static/media/index.20414a3fa1e6c5498a67.cjs +1 -0
  60. package/package.json +36 -35
  61. package/build/static/js/1237.7fd9e6ea.chunk.js +0 -3
  62. package/build/static/js/1610.13323d09.chunk.js +0 -2
  63. package/build/static/js/2130.5655904d.chunk.js +0 -3
  64. package/build/static/js/3242.86fc9bc6.chunk.js +0 -2
  65. package/build/static/js/338.2f0211d7.chunk.js +0 -2
  66. package/build/static/js/3464.54f63e09.chunk.js +0 -2
  67. package/build/static/js/3963.f4a75432.chunk.js +0 -3
  68. package/build/static/js/4319.5363b467.chunk.js +0 -2
  69. package/build/static/js/4547.b013b965.chunk.js +0 -2
  70. package/build/static/js/4651.ea828d09.chunk.js +0 -3
  71. package/build/static/js/5050.af9b1e9c.chunk.js +0 -3
  72. package/build/static/js/5176.52b53df7.chunk.js +0 -2
  73. package/build/static/js/5233.e44190bf.chunk.js +0 -2
  74. package/build/static/js/5645.48cf12d4.chunk.js +0 -2
  75. package/build/static/js/6315.dec40b9b.chunk.js +0 -2
  76. package/build/static/js/652.7a2367a9.chunk.js +0 -2
  77. package/build/static/js/6891.eed3eb07.chunk.js +0 -2
  78. package/build/static/js/7345.fb7fa7cf.chunk.js +0 -3
  79. package/build/static/js/7371.0b48d1c0.chunk.js +0 -2
  80. package/build/static/js/780.860d0370.chunk.js +0 -2
  81. package/build/static/js/7902.9316a419.chunk.js +0 -2
  82. package/build/static/js/8395.656effd4.chunk.js +0 -2
  83. package/build/static/js/868.cd5abe55.chunk.js +0 -2
  84. package/build/static/js/9476.302a7b02.chunk.js +0 -2
  85. package/build/static/js/9645.8ef1036e.chunk.js +0 -2
  86. package/build/static/js/982.3e297296.chunk.js +0 -3
  87. package/build/static/js/main.d78266c4.js +0 -3
  88. /package/build/static/js/{1237.7fd9e6ea.chunk.js.LICENSE.txt → 1237.1d0b8f1e.chunk.js.LICENSE.txt} +0 -0
  89. /package/build/static/js/{2130.5655904d.chunk.js.LICENSE.txt → 2130.59fef4ad.chunk.js.LICENSE.txt} +0 -0
  90. /package/build/static/js/{3963.f4a75432.chunk.js.LICENSE.txt → 3963.2e06f9bc.chunk.js.LICENSE.txt} +0 -0
  91. /package/build/static/js/{445.080a986b.chunk.js.LICENSE.txt → 445.6da52f3e.chunk.js.LICENSE.txt} +0 -0
  92. /package/build/static/js/{4651.ea828d09.chunk.js.LICENSE.txt → 4651.0a58cbc3.chunk.js.LICENSE.txt} +0 -0
  93. /package/build/static/js/{5050.af9b1e9c.chunk.js.LICENSE.txt → 5050.538edf89.chunk.js.LICENSE.txt} +0 -0
  94. /package/build/static/js/{7345.fb7fa7cf.chunk.js.LICENSE.txt → 7345.4b4f8941.chunk.js.LICENSE.txt} +0 -0
  95. /package/build/static/js/{982.3e297296.chunk.js.LICENSE.txt → 982.11dc355f.chunk.js.LICENSE.txt} +0 -0
  96. /package/build/static/js/{main.d78266c4.js.LICENSE.txt → main.0357601e.js.LICENSE.txt} +0 -0
@@ -1,4 +1,6 @@
1
1
  const get = require('lodash/get');
2
+ const uniqBy = require('lodash/uniqBy');
3
+ const uniq = require('lodash/uniq');
2
4
 
3
5
  const JWT = require('@arcblock/jwt');
4
6
 
@@ -11,57 +13,103 @@ const eventHub =
11
13
  const logger = require('@abtnode/logger')(require('../../../package.json').name);
12
14
  const cache = require('../../cache');
13
15
 
16
+ const getComponentNamesWithVersion = (app) => {
17
+ const { componentDids = [], children = [] } = app;
18
+
19
+ const componentNames = uniq(componentDids).map((x) => {
20
+ const component = children.find((y) => y.meta.did === x);
21
+ return `${component.meta.title}@${component.meta.version}`;
22
+ });
23
+
24
+ return `${componentNames}`;
25
+ };
26
+
14
27
  const messages = {
15
- [BlockletEvents.upgraded]: ({ blockletInfo }) => ({
28
+ [BlockletEvents.componentInstalled]: ({ data }) => ({
16
29
  title: {
17
- en: 'Blocklet Upgrade Success',
18
- zh: 'Blocklet 升级成功',
30
+ en: 'Component Installed Success',
31
+ zh: '组件安装成功',
19
32
  },
20
33
  body: {
21
- en: `${blockletInfo.name}@${blockletInfo.version} upgrade success.`,
22
- zh: `${blockletInfo.name}@${blockletInfo.version} 升级成功`,
34
+ en: `Component ${getComponentNamesWithVersion(data)} is installed successfully for ${data.meta.title}.`,
35
+ zh: `${data.meta.title} 中的组件 ${getComponentNamesWithVersion(data)} 安装成功`,
23
36
  },
24
37
  }),
25
- [BlockletEvents.upgradeFailed]: ({ blockletInfo, data }) => ({
38
+ [BlockletEvents.componentInstallFailed]: ({ data }) => ({
26
39
  title: {
27
- en: 'Blocklet Upgrade Failed',
28
- zh: 'Blocklet 升级失败',
40
+ en: 'Component Install Failed',
41
+ zh: '组件安装失败',
29
42
  },
30
43
  body: {
31
- en: `${blockletInfo.name}@${blockletInfo.version} upgrade failed with error: ${data?.error?.message}`,
32
- zh: `${blockletInfo.name}@${blockletInfo.version} 升级失败: ${data?.error?.message}`,
44
+ en: `${getComponentNamesWithVersion(data)} installed failed for ${data.meta.title}: ${data?.error?.message}`,
45
+ zh: `${data.meta.title} 中的组件 ${getComponentNamesWithVersion(data)} 安装失败: ${data?.error?.message}`,
33
46
  },
34
47
  }),
35
- [BlockletEvents.started]: () => ({
48
+ [BlockletEvents.componentUpgraded]: ({ data }) => ({
36
49
  title: {
37
- en: 'Blocklet Start Success',
38
- zh: 'Blocklet 启动成功',
50
+ en: 'Component Upgrade Success',
51
+ zh: '组件升级成功',
39
52
  },
40
53
  body: {
41
- en: 'Blocklet start success.',
42
- zh: 'Blocklet 启动成功',
54
+ en: `${getComponentNamesWithVersion(data)} is upgraded successfully for ${data.meta.title}.`,
55
+ zh: `${data.meta.title} 中的组件 ${getComponentNamesWithVersion(data)} 升级成功`,
43
56
  },
44
57
  }),
45
- [BlockletEvents.startFailed]: ({ data }) => ({
58
+ [BlockletEvents.componentUpgradeFailed]: ({ data }) => ({
46
59
  title: {
47
- en: 'Blocklet Start Failed',
48
- zh: 'Blocklet 启动失败',
60
+ en: 'Component Upgrade Failed',
61
+ zh: '组件升级失败',
49
62
  },
50
63
  body: {
51
- en: `Blocklet start failed: ${data.error?.message}`,
52
- zh: `Blocklet 启动失败: ${data.error?.message}`,
64
+ en: `${getComponentNamesWithVersion(data)} upgraded failed for ${data.meta.title}: ${data?.error?.message}`,
65
+ zh: `${data.meta.title} 中的组件 ${getComponentNamesWithVersion(data)} 升级失败: ${data?.error?.message}`,
53
66
  },
54
67
  }),
55
- [BlockletEvents.stopped]: () => ({
68
+ [BlockletEvents.componentRemoved]: ({ data }) => ({
69
+ title: {
70
+ en: 'Component Removed Success',
71
+ zh: '组件删除成功',
72
+ },
73
+ body: {
74
+ en: `${getComponentNamesWithVersion(data)} is removed successfully for ${data.meta.title}.`,
75
+ zh: `${data.meta.title} 中的组件 ${getComponentNamesWithVersion(data)} 删除成功`,
76
+ },
77
+ }),
78
+ [BlockletEvents.started]: ({ data = {} }) => {
79
+ return {
80
+ title: {
81
+ en: 'Component Start Success',
82
+ zh: '组件启动成功',
83
+ },
84
+ body: {
85
+ en: `${getComponentNamesWithVersion(data)} started successfully for ${data.meta.title}.`,
86
+ zh: `${data.meta.title} 中的组件 ${getComponentNamesWithVersion(data)} 启动成功`,
87
+ },
88
+ };
89
+ },
90
+
91
+ [BlockletEvents.startFailed]: ({ data }) => ({
56
92
  title: {
57
- en: 'Blocklet Stop Success',
58
- zh: 'Blocklet 已停止运行',
93
+ en: 'Component Start Failed',
94
+ zh: 'Component 启动失败',
59
95
  },
60
96
  body: {
61
- en: 'Blocklet stopped success.',
62
- zh: 'Blocklet 已停止运行',
97
+ en: `${getComponentNamesWithVersion(data)} started failed: ${data.error?.message}`,
98
+ zh: `${data.meta.title} 中的组件 ${getComponentNamesWithVersion(data)} 启动失败: ${data.error?.message}`,
63
99
  },
64
100
  }),
101
+ [BlockletEvents.stopped]: ({ data = {} }) => {
102
+ return {
103
+ title: {
104
+ en: 'Component Stop Success',
105
+ zh: '组件已停止运行',
106
+ },
107
+ body: {
108
+ en: `${getComponentNamesWithVersion(data)} stopped successfully for ${data.meta.title}.`,
109
+ zh: `${data.meta.title} 中的组件 ${getComponentNamesWithVersion(data)} 已停止运行`,
110
+ },
111
+ };
112
+ },
65
113
  [EVENTS.USER_ADDED]: ({ data }) => ({
66
114
  title: {
67
115
  en: 'New member join',
@@ -78,8 +126,11 @@ const DEFAULT_LOCALE = 'en';
78
126
 
79
127
  const init = ({ node, notificationService }) => {
80
128
  [
81
- BlockletEvents.upgraded,
82
- BlockletEvents.upgradeFailed,
129
+ BlockletEvents.componentInstalled,
130
+ BlockletEvents.componentInstallFailed,
131
+ BlockletEvents.componentUpgraded,
132
+ BlockletEvents.componentUpgradeFailed,
133
+ BlockletEvents.componentRemoved,
83
134
  BlockletEvents.started,
84
135
  BlockletEvents.startFailed,
85
136
  BlockletEvents.stopped,
@@ -115,7 +166,7 @@ const init = ({ node, notificationService }) => {
115
166
  query: { approved: true, role: ROLES.OWNER },
116
167
  });
117
168
 
118
- const users = (adminUsers || []).concat(ownerUsers).filter(Boolean);
169
+ const users = uniqBy((adminUsers || []).concat(ownerUsers).filter(Boolean), 'did');
119
170
 
120
171
  if (!users.length) {
121
172
  return;
@@ -0,0 +1,27 @@
1
+ const { LOGIN_PROVIDER } = require('@blocklet/constant');
2
+ const { getBlockletAppIdList } = require('@blocklet/meta/lib/util');
3
+
4
+ const { getFederatedMaster } = require('./federated');
5
+
6
+ function getTrustedIssuers(blocklet, { provider = LOGIN_PROVIDER.WALLET } = {}) {
7
+ if (provider === LOGIN_PROVIDER.FEDERATED) {
8
+ const masterSite = getFederatedMaster(blocklet);
9
+ const pid = masterSite?.appPid;
10
+ return pid ? [pid] : [];
11
+ }
12
+
13
+ const trustedPassports = (blocklet.trustedPassports || []).map((x) => x.issuerDid);
14
+ const trustedIssuers = [...getBlockletAppIdList(blocklet), ...trustedPassports].filter(Boolean);
15
+ return trustedIssuers;
16
+ }
17
+
18
+ function getLoginProvider(request) {
19
+ const { store } = request?.context || {};
20
+ const { provider } = store?.extraParams || {};
21
+ return provider || LOGIN_PROVIDER.WALLET;
22
+ }
23
+
24
+ module.exports = {
25
+ getLoginProvider,
26
+ getTrustedIssuers,
27
+ };
@@ -0,0 +1,41 @@
1
+ const joinUrl = require('url-join');
2
+ const { USER_AVATAR_URL_PREFIX, WELLKNOWN_SERVICE_PATH_PREFIX, USER_AVATAR_PATH_PREFIX } = require('@abtnode/constant');
3
+
4
+ function getFederatedMaster(blocklet) {
5
+ const { sites } = blocklet?.settings?.federated || {};
6
+ const masterSite = (sites || []).find((item) => isMaster(item));
7
+ return masterSite || null;
8
+ }
9
+
10
+ function isMaster(site) {
11
+ return site?.isMaster !== false;
12
+ }
13
+
14
+ function getUserAvatarUrl(avatar, blocklet) {
15
+ let avatarUrl = avatar;
16
+ if (avatar && avatar.startsWith(USER_AVATAR_URL_PREFIX)) {
17
+ avatarUrl = `${WELLKNOWN_SERVICE_PATH_PREFIX}${USER_AVATAR_PATH_PREFIX}/${avatarUrl.split('/').slice(-1)[0]}`;
18
+
19
+ const appUrl = blocklet.environmentObj.BLOCKLET_APP_URL;
20
+ avatarUrl = joinUrl(appUrl, avatarUrl);
21
+ }
22
+ return avatarUrl;
23
+ }
24
+
25
+ function getProvider(request, extraParams = {}) {
26
+ let provider = 'wallet';
27
+ // 1. 优先读取当前登录用户的 provider
28
+ ({ provider } = request.user || {});
29
+ if (!provider) {
30
+ // 读取在 extraParams 中指定的 provider
31
+ ({ provider } = extraParams);
32
+ }
33
+ return provider;
34
+ }
35
+
36
+ module.exports = {
37
+ isMaster,
38
+ getFederatedMaster,
39
+ getUserAvatarUrl,
40
+ getProvider,
41
+ };
@@ -1,16 +1,16 @@
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.d78266c4.js",
4
+ "main.js": "/.well-known/service/static/static/js/main.0357601e.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",
8
- "static/js/7371.0b48d1c0.chunk.js": "/.well-known/service/static/static/js/7371.0b48d1c0.chunk.js",
9
- "static/js/6737.c05aedb4.chunk.js": "/.well-known/service/static/static/js/6737.c05aedb4.chunk.js",
10
- "static/js/3953.b81b810f.chunk.js": "/.well-known/service/static/static/js/3953.b81b810f.chunk.js",
11
- "static/js/868.cd5abe55.chunk.js": "/.well-known/service/static/static/js/868.cd5abe55.chunk.js",
12
- "static/js/4547.b013b965.chunk.js": "/.well-known/service/static/static/js/4547.b013b965.chunk.js",
13
- "static/js/652.7a2367a9.chunk.js": "/.well-known/service/static/static/js/652.7a2367a9.chunk.js",
8
+ "static/js/7371.da3c5cc3.chunk.js": "/.well-known/service/static/static/js/7371.da3c5cc3.chunk.js",
9
+ "static/js/6737.4f37dd4a.chunk.js": "/.well-known/service/static/static/js/6737.4f37dd4a.chunk.js",
10
+ "static/js/3953.e3e51520.chunk.js": "/.well-known/service/static/static/js/3953.e3e51520.chunk.js",
11
+ "static/js/868.aa2a1c4d.chunk.js": "/.well-known/service/static/static/js/868.aa2a1c4d.chunk.js",
12
+ "static/js/4547.b26ceabb.chunk.js": "/.well-known/service/static/static/js/4547.b26ceabb.chunk.js",
13
+ "static/js/652.d534b309.chunk.js": "/.well-known/service/static/static/js/652.d534b309.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",
@@ -19,50 +19,50 @@
19
19
  "static/js/5491.f227b5b4.chunk.js": "/.well-known/service/static/static/js/5491.f227b5b4.chunk.js",
20
20
  "static/js/1980.dba23d65.chunk.js": "/.well-known/service/static/static/js/1980.dba23d65.chunk.js",
21
21
  "static/js/6576.e08b0e93.chunk.js": "/.well-known/service/static/static/js/6576.e08b0e93.chunk.js",
22
- "static/js/5176.52b53df7.chunk.js": "/.well-known/service/static/static/js/5176.52b53df7.chunk.js",
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.656effd4.chunk.js": "/.well-known/service/static/static/js/8395.656effd4.chunk.js",
26
- "static/js/5233.e44190bf.chunk.js": "/.well-known/service/static/static/js/5233.e44190bf.chunk.js",
27
- "static/js/9645.8ef1036e.chunk.js": "/.well-known/service/static/static/js/9645.8ef1036e.chunk.js",
28
- "static/js/5050.af9b1e9c.chunk.js": "/.well-known/service/static/static/js/5050.af9b1e9c.chunk.js",
25
+ "static/js/8395.e5aa519c.chunk.js": "/.well-known/service/static/static/js/8395.e5aa519c.chunk.js",
26
+ "static/js/5233.faabaae9.chunk.js": "/.well-known/service/static/static/js/5233.faabaae9.chunk.js",
27
+ "static/css/4603.dce369d5.chunk.css": "/.well-known/service/static/static/css/4603.dce369d5.chunk.css",
28
+ "static/js/4603.f6b8d272.chunk.js": "/.well-known/service/static/static/js/4603.f6b8d272.chunk.js",
29
+ "static/js/5050.538edf89.chunk.js": "/.well-known/service/static/static/js/5050.538edf89.chunk.js",
29
30
  "static/css/780.e3db6e49.chunk.css": "/.well-known/service/static/static/css/780.e3db6e49.chunk.css",
30
- "static/js/780.860d0370.chunk.js": "/.well-known/service/static/static/js/780.860d0370.chunk.js",
31
- "static/js/766.c7bfb323.chunk.js": "/.well-known/service/static/static/js/766.c7bfb323.chunk.js",
32
- "static/js/5430.e0f10ab3.chunk.js": "/.well-known/service/static/static/js/5430.e0f10ab3.chunk.js",
31
+ "static/js/780.32bf1f5b.chunk.js": "/.well-known/service/static/static/js/780.32bf1f5b.chunk.js",
32
+ "static/js/766.5dd16d47.chunk.js": "/.well-known/service/static/static/js/766.5dd16d47.chunk.js",
33
+ "static/js/5430.8114614c.chunk.js": "/.well-known/service/static/static/js/5430.8114614c.chunk.js",
33
34
  "static/js/3800.faac00ca.chunk.js": "/.well-known/service/static/static/js/3800.faac00ca.chunk.js",
34
35
  "static/js/1832.4cd8a983.chunk.js": "/.well-known/service/static/static/js/1832.4cd8a983.chunk.js",
35
36
  "static/js/3042.c9fe1ced.chunk.js": "/.well-known/service/static/static/js/3042.c9fe1ced.chunk.js",
36
37
  "static/js/3162.6bbe08fc.chunk.js": "/.well-known/service/static/static/js/3162.6bbe08fc.chunk.js",
37
- "static/js/576.d7d4814e.chunk.js": "/.well-known/service/static/static/js/576.d7d4814e.chunk.js",
38
38
  "static/js/655.cdee65b4.chunk.js": "/.well-known/service/static/static/js/655.cdee65b4.chunk.js",
39
+ "static/js/576.d7d4814e.chunk.js": "/.well-known/service/static/static/js/576.d7d4814e.chunk.js",
39
40
  "static/js/2631.54f86f84.chunk.js": "/.well-known/service/static/static/js/2631.54f86f84.chunk.js",
40
- "static/js/4651.ea828d09.chunk.js": "/.well-known/service/static/static/js/4651.ea828d09.chunk.js",
41
- "static/js/6315.dec40b9b.chunk.js": "/.well-known/service/static/static/js/6315.dec40b9b.chunk.js",
42
- "static/js/4319.5363b467.chunk.js": "/.well-known/service/static/static/js/4319.5363b467.chunk.js",
43
- "static/js/445.080a986b.chunk.js": "/.well-known/service/static/static/js/445.080a986b.chunk.js",
41
+ "static/js/6315.59e078f6.chunk.js": "/.well-known/service/static/static/js/6315.59e078f6.chunk.js",
42
+ "static/js/4651.0a58cbc3.chunk.js": "/.well-known/service/static/static/js/4651.0a58cbc3.chunk.js",
43
+ "static/js/4319.e99b5af9.chunk.js": "/.well-known/service/static/static/js/4319.e99b5af9.chunk.js",
44
+ "static/js/445.6da52f3e.chunk.js": "/.well-known/service/static/static/js/445.6da52f3e.chunk.js",
44
45
  "static/js/7518.5b02f3ba.chunk.js": "/.well-known/service/static/static/js/7518.5b02f3ba.chunk.js",
45
46
  "static/js/8669.814198b8.chunk.js": "/.well-known/service/static/static/js/8669.814198b8.chunk.js",
46
47
  "static/js/7291.5553195e.chunk.js": "/.well-known/service/static/static/js/7291.5553195e.chunk.js",
47
48
  "static/js/7606.25231f8c.chunk.js": "/.well-known/service/static/static/js/7606.25231f8c.chunk.js",
48
- "static/js/3242.86fc9bc6.chunk.js": "/.well-known/service/static/static/js/3242.86fc9bc6.chunk.js",
49
- "static/js/1610.13323d09.chunk.js": "/.well-known/service/static/static/js/1610.13323d09.chunk.js",
49
+ "static/js/3242.5dea77f3.chunk.js": "/.well-known/service/static/static/js/3242.5dea77f3.chunk.js",
50
+ "static/js/4492.97b0d4f6.chunk.js": "/.well-known/service/static/static/js/4492.97b0d4f6.chunk.js",
50
51
  "static/css/2130.b9437a64.chunk.css": "/.well-known/service/static/static/css/2130.b9437a64.chunk.css",
51
- "static/js/2130.5655904d.chunk.js": "/.well-known/service/static/static/js/2130.5655904d.chunk.js",
52
+ "static/js/2130.59fef4ad.chunk.js": "/.well-known/service/static/static/js/2130.59fef4ad.chunk.js",
52
53
  "static/js/5711.aa17ef28.chunk.js": "/.well-known/service/static/static/js/5711.aa17ef28.chunk.js",
53
- "static/js/7345.fb7fa7cf.chunk.js": "/.well-known/service/static/static/js/7345.fb7fa7cf.chunk.js",
54
- "static/js/1237.7fd9e6ea.chunk.js": "/.well-known/service/static/static/js/1237.7fd9e6ea.chunk.js",
55
- "static/js/338.2f0211d7.chunk.js": "/.well-known/service/static/static/js/338.2f0211d7.chunk.js",
56
- "static/js/3963.f4a75432.chunk.js": "/.well-known/service/static/static/js/3963.f4a75432.chunk.js",
57
- "static/js/6891.eed3eb07.chunk.js": "/.well-known/service/static/static/js/6891.eed3eb07.chunk.js",
58
- "static/js/982.3e297296.chunk.js": "/.well-known/service/static/static/js/982.3e297296.chunk.js",
59
- "static/js/5645.48cf12d4.chunk.js": "/.well-known/service/static/static/js/5645.48cf12d4.chunk.js",
60
- "static/js/3464.54f63e09.chunk.js": "/.well-known/service/static/static/js/3464.54f63e09.chunk.js",
54
+ "static/js/7345.4b4f8941.chunk.js": "/.well-known/service/static/static/js/7345.4b4f8941.chunk.js",
55
+ "static/js/1237.1d0b8f1e.chunk.js": "/.well-known/service/static/static/js/1237.1d0b8f1e.chunk.js",
56
+ "static/js/8031.d9af3d84.chunk.js": "/.well-known/service/static/static/js/8031.d9af3d84.chunk.js",
57
+ "static/js/3963.2e06f9bc.chunk.js": "/.well-known/service/static/static/js/3963.2e06f9bc.chunk.js",
58
+ "static/js/6891.6c7018ab.chunk.js": "/.well-known/service/static/static/js/6891.6c7018ab.chunk.js",
59
+ "static/js/982.11dc355f.chunk.js": "/.well-known/service/static/static/js/982.11dc355f.chunk.js",
60
+ "static/js/5645.a17cd258.chunk.js": "/.well-known/service/static/static/js/5645.a17cd258.chunk.js",
61
+ "static/js/3464.12806bfe.chunk.js": "/.well-known/service/static/static/js/3464.12806bfe.chunk.js",
61
62
  "static/css/3154.e954fcda.chunk.css": "/.well-known/service/static/static/css/3154.e954fcda.chunk.css",
62
63
  "static/js/1210.b6221400.chunk.js": "/.well-known/service/static/static/js/1210.b6221400.chunk.js",
63
- "static/js/9476.302a7b02.chunk.js": "/.well-known/service/static/static/js/9476.302a7b02.chunk.js",
64
- "static/js/7902.9316a419.chunk.js": "/.well-known/service/static/static/js/7902.9316a419.chunk.js",
65
- "static/js/1162.40dc4181.chunk.js": "/.well-known/service/static/static/js/1162.40dc4181.chunk.js",
64
+ "static/js/1162.ff3136ae.chunk.js": "/.well-known/service/static/static/js/1162.ff3136ae.chunk.js",
65
+ "static/js/9476.bc480cfc.chunk.js": "/.well-known/service/static/static/js/9476.bc480cfc.chunk.js",
66
66
  "static/media/ubuntu-mono-all-400-normal.woff": "/.well-known/service/static/static/media/ubuntu-mono-all-400-normal.c879328bc62e9c68268f.woff",
67
67
  "service-worker.js": "/.well-known/service/static/service-worker.js",
68
68
  "static/media/lato-all-400-normal.woff": "/.well-known/service/static/static/media/lato-all-400-normal.3dc1eff492ab1f598560.woff",
@@ -78,6 +78,7 @@
78
78
  "static/media/ubuntu-mono-cyrillic-ext-400-normal.woff2": "/.well-known/service/static/static/media/ubuntu-mono-cyrillic-ext-400-normal.eda1c4946b1f7bf58386.woff2",
79
79
  "static/media/ubuntu-mono-cyrillic-400-normal.woff2": "/.well-known/service/static/static/media/ubuntu-mono-cyrillic-400-normal.c367f416832eb8f1b846.woff2",
80
80
  "static/media/studio.svg": "/.well-known/service/static/static/media/studio.f849ff5763d19a78ada7fdeea249f819.svg",
81
+ "static/media/index.cjs": "/.well-known/service/static/static/media/index.20414a3fa1e6c5498a67.cjs",
81
82
  "static/media/ubuntu-mono-greek-400-normal.woff2": "/.well-known/service/static/static/media/ubuntu-mono-greek-400-normal.22f3bfc91f79c342bdf4.woff2",
82
83
  "static/media/ubuntu-mono-greek-ext-400-normal.woff2": "/.well-known/service/static/static/media/ubuntu-mono-greek-ext-400-normal.b3459900ea8a25d1f7c2.woff2",
83
84
  "router-template-styles/fonts/lato-latin-ext-400-normal.woff2": "/.well-known/service/static/router-template-styles/fonts/lato-latin-ext-400-normal.woff2",
@@ -86,16 +87,16 @@
86
87
  "router-template-styles/styles.css": "/.well-known/service/static/router-template-styles/styles.css",
87
88
  "index.html": "/.well-known/service/static/index.html",
88
89
  "main.7ea79dc8.css.map": "/.well-known/service/static/static/css/main.7ea79dc8.css.map",
89
- "main.d78266c4.js.map": "/.well-known/service/static/static/js/main.d78266c4.js.map",
90
+ "main.0357601e.js.map": "/.well-known/service/static/static/js/main.0357601e.js.map",
90
91
  "4716.a1240199.chunk.js.map": "/.well-known/service/static/static/js/4716.a1240199.chunk.js.map",
91
92
  "4359.5ed52fe3.chunk.js.map": "/.well-known/service/static/static/js/4359.5ed52fe3.chunk.js.map",
92
93
  "1255.0e8a8a45.chunk.js.map": "/.well-known/service/static/static/js/1255.0e8a8a45.chunk.js.map",
93
- "7371.0b48d1c0.chunk.js.map": "/.well-known/service/static/static/js/7371.0b48d1c0.chunk.js.map",
94
- "6737.c05aedb4.chunk.js.map": "/.well-known/service/static/static/js/6737.c05aedb4.chunk.js.map",
95
- "3953.b81b810f.chunk.js.map": "/.well-known/service/static/static/js/3953.b81b810f.chunk.js.map",
96
- "868.cd5abe55.chunk.js.map": "/.well-known/service/static/static/js/868.cd5abe55.chunk.js.map",
97
- "4547.b013b965.chunk.js.map": "/.well-known/service/static/static/js/4547.b013b965.chunk.js.map",
98
- "652.7a2367a9.chunk.js.map": "/.well-known/service/static/static/js/652.7a2367a9.chunk.js.map",
94
+ "7371.da3c5cc3.chunk.js.map": "/.well-known/service/static/static/js/7371.da3c5cc3.chunk.js.map",
95
+ "6737.4f37dd4a.chunk.js.map": "/.well-known/service/static/static/js/6737.4f37dd4a.chunk.js.map",
96
+ "3953.e3e51520.chunk.js.map": "/.well-known/service/static/static/js/3953.e3e51520.chunk.js.map",
97
+ "868.aa2a1c4d.chunk.js.map": "/.well-known/service/static/static/js/868.aa2a1c4d.chunk.js.map",
98
+ "4547.b26ceabb.chunk.js.map": "/.well-known/service/static/static/js/4547.b26ceabb.chunk.js.map",
99
+ "652.d534b309.chunk.js.map": "/.well-known/service/static/static/js/652.d534b309.chunk.js.map",
99
100
  "4682.81053e18.chunk.js.map": "/.well-known/service/static/static/js/4682.81053e18.chunk.js.map",
100
101
  "6711.a62d0bcd.chunk.js.map": "/.well-known/service/static/static/js/6711.a62d0bcd.chunk.js.map",
101
102
  "8437.e4b47fc3.chunk.js.map": "/.well-known/service/static/static/js/8437.e4b47fc3.chunk.js.map",
@@ -104,53 +105,53 @@
104
105
  "5491.f227b5b4.chunk.js.map": "/.well-known/service/static/static/js/5491.f227b5b4.chunk.js.map",
105
106
  "1980.dba23d65.chunk.js.map": "/.well-known/service/static/static/js/1980.dba23d65.chunk.js.map",
106
107
  "6576.e08b0e93.chunk.js.map": "/.well-known/service/static/static/js/6576.e08b0e93.chunk.js.map",
107
- "5176.52b53df7.chunk.js.map": "/.well-known/service/static/static/js/5176.52b53df7.chunk.js.map",
108
+ "5176.68fd3fde.chunk.js.map": "/.well-known/service/static/static/js/5176.68fd3fde.chunk.js.map",
108
109
  "2139.341406d2.chunk.js.map": "/.well-known/service/static/static/js/2139.341406d2.chunk.js.map",
109
110
  "5052.91c69c75.chunk.js.map": "/.well-known/service/static/static/js/5052.91c69c75.chunk.js.map",
110
- "8395.656effd4.chunk.js.map": "/.well-known/service/static/static/js/8395.656effd4.chunk.js.map",
111
- "5233.e44190bf.chunk.js.map": "/.well-known/service/static/static/js/5233.e44190bf.chunk.js.map",
112
- "9645.8ef1036e.chunk.js.map": "/.well-known/service/static/static/js/9645.8ef1036e.chunk.js.map",
113
- "5050.af9b1e9c.chunk.js.map": "/.well-known/service/static/static/js/5050.af9b1e9c.chunk.js.map",
111
+ "8395.e5aa519c.chunk.js.map": "/.well-known/service/static/static/js/8395.e5aa519c.chunk.js.map",
112
+ "5233.faabaae9.chunk.js.map": "/.well-known/service/static/static/js/5233.faabaae9.chunk.js.map",
113
+ "4603.dce369d5.chunk.css.map": "/.well-known/service/static/static/css/4603.dce369d5.chunk.css.map",
114
+ "4603.f6b8d272.chunk.js.map": "/.well-known/service/static/static/js/4603.f6b8d272.chunk.js.map",
115
+ "5050.538edf89.chunk.js.map": "/.well-known/service/static/static/js/5050.538edf89.chunk.js.map",
114
116
  "780.e3db6e49.chunk.css.map": "/.well-known/service/static/static/css/780.e3db6e49.chunk.css.map",
115
- "780.860d0370.chunk.js.map": "/.well-known/service/static/static/js/780.860d0370.chunk.js.map",
116
- "766.c7bfb323.chunk.js.map": "/.well-known/service/static/static/js/766.c7bfb323.chunk.js.map",
117
- "5430.e0f10ab3.chunk.js.map": "/.well-known/service/static/static/js/5430.e0f10ab3.chunk.js.map",
117
+ "780.32bf1f5b.chunk.js.map": "/.well-known/service/static/static/js/780.32bf1f5b.chunk.js.map",
118
+ "766.5dd16d47.chunk.js.map": "/.well-known/service/static/static/js/766.5dd16d47.chunk.js.map",
119
+ "5430.8114614c.chunk.js.map": "/.well-known/service/static/static/js/5430.8114614c.chunk.js.map",
118
120
  "3800.faac00ca.chunk.js.map": "/.well-known/service/static/static/js/3800.faac00ca.chunk.js.map",
119
121
  "1832.4cd8a983.chunk.js.map": "/.well-known/service/static/static/js/1832.4cd8a983.chunk.js.map",
120
122
  "3042.c9fe1ced.chunk.js.map": "/.well-known/service/static/static/js/3042.c9fe1ced.chunk.js.map",
121
123
  "3162.6bbe08fc.chunk.js.map": "/.well-known/service/static/static/js/3162.6bbe08fc.chunk.js.map",
122
- "576.d7d4814e.chunk.js.map": "/.well-known/service/static/static/js/576.d7d4814e.chunk.js.map",
123
124
  "655.cdee65b4.chunk.js.map": "/.well-known/service/static/static/js/655.cdee65b4.chunk.js.map",
125
+ "576.d7d4814e.chunk.js.map": "/.well-known/service/static/static/js/576.d7d4814e.chunk.js.map",
124
126
  "2631.54f86f84.chunk.js.map": "/.well-known/service/static/static/js/2631.54f86f84.chunk.js.map",
125
- "4651.ea828d09.chunk.js.map": "/.well-known/service/static/static/js/4651.ea828d09.chunk.js.map",
126
- "6315.dec40b9b.chunk.js.map": "/.well-known/service/static/static/js/6315.dec40b9b.chunk.js.map",
127
- "4319.5363b467.chunk.js.map": "/.well-known/service/static/static/js/4319.5363b467.chunk.js.map",
128
- "445.080a986b.chunk.js.map": "/.well-known/service/static/static/js/445.080a986b.chunk.js.map",
127
+ "6315.59e078f6.chunk.js.map": "/.well-known/service/static/static/js/6315.59e078f6.chunk.js.map",
128
+ "4651.0a58cbc3.chunk.js.map": "/.well-known/service/static/static/js/4651.0a58cbc3.chunk.js.map",
129
+ "4319.e99b5af9.chunk.js.map": "/.well-known/service/static/static/js/4319.e99b5af9.chunk.js.map",
130
+ "445.6da52f3e.chunk.js.map": "/.well-known/service/static/static/js/445.6da52f3e.chunk.js.map",
129
131
  "7518.5b02f3ba.chunk.js.map": "/.well-known/service/static/static/js/7518.5b02f3ba.chunk.js.map",
130
132
  "8669.814198b8.chunk.js.map": "/.well-known/service/static/static/js/8669.814198b8.chunk.js.map",
131
133
  "7291.5553195e.chunk.js.map": "/.well-known/service/static/static/js/7291.5553195e.chunk.js.map",
132
134
  "7606.25231f8c.chunk.js.map": "/.well-known/service/static/static/js/7606.25231f8c.chunk.js.map",
133
- "3242.86fc9bc6.chunk.js.map": "/.well-known/service/static/static/js/3242.86fc9bc6.chunk.js.map",
134
- "1610.13323d09.chunk.js.map": "/.well-known/service/static/static/js/1610.13323d09.chunk.js.map",
135
+ "3242.5dea77f3.chunk.js.map": "/.well-known/service/static/static/js/3242.5dea77f3.chunk.js.map",
136
+ "4492.97b0d4f6.chunk.js.map": "/.well-known/service/static/static/js/4492.97b0d4f6.chunk.js.map",
135
137
  "2130.b9437a64.chunk.css.map": "/.well-known/service/static/static/css/2130.b9437a64.chunk.css.map",
136
- "2130.5655904d.chunk.js.map": "/.well-known/service/static/static/js/2130.5655904d.chunk.js.map",
138
+ "2130.59fef4ad.chunk.js.map": "/.well-known/service/static/static/js/2130.59fef4ad.chunk.js.map",
137
139
  "5711.aa17ef28.chunk.js.map": "/.well-known/service/static/static/js/5711.aa17ef28.chunk.js.map",
138
- "7345.fb7fa7cf.chunk.js.map": "/.well-known/service/static/static/js/7345.fb7fa7cf.chunk.js.map",
139
- "1237.7fd9e6ea.chunk.js.map": "/.well-known/service/static/static/js/1237.7fd9e6ea.chunk.js.map",
140
- "338.2f0211d7.chunk.js.map": "/.well-known/service/static/static/js/338.2f0211d7.chunk.js.map",
141
- "3963.f4a75432.chunk.js.map": "/.well-known/service/static/static/js/3963.f4a75432.chunk.js.map",
142
- "6891.eed3eb07.chunk.js.map": "/.well-known/service/static/static/js/6891.eed3eb07.chunk.js.map",
143
- "982.3e297296.chunk.js.map": "/.well-known/service/static/static/js/982.3e297296.chunk.js.map",
144
- "5645.48cf12d4.chunk.js.map": "/.well-known/service/static/static/js/5645.48cf12d4.chunk.js.map",
145
- "3464.54f63e09.chunk.js.map": "/.well-known/service/static/static/js/3464.54f63e09.chunk.js.map",
140
+ "7345.4b4f8941.chunk.js.map": "/.well-known/service/static/static/js/7345.4b4f8941.chunk.js.map",
141
+ "1237.1d0b8f1e.chunk.js.map": "/.well-known/service/static/static/js/1237.1d0b8f1e.chunk.js.map",
142
+ "8031.d9af3d84.chunk.js.map": "/.well-known/service/static/static/js/8031.d9af3d84.chunk.js.map",
143
+ "3963.2e06f9bc.chunk.js.map": "/.well-known/service/static/static/js/3963.2e06f9bc.chunk.js.map",
144
+ "6891.6c7018ab.chunk.js.map": "/.well-known/service/static/static/js/6891.6c7018ab.chunk.js.map",
145
+ "982.11dc355f.chunk.js.map": "/.well-known/service/static/static/js/982.11dc355f.chunk.js.map",
146
+ "5645.a17cd258.chunk.js.map": "/.well-known/service/static/static/js/5645.a17cd258.chunk.js.map",
147
+ "3464.12806bfe.chunk.js.map": "/.well-known/service/static/static/js/3464.12806bfe.chunk.js.map",
146
148
  "3154.e954fcda.chunk.css.map": "/.well-known/service/static/static/css/3154.e954fcda.chunk.css.map",
147
149
  "1210.b6221400.chunk.js.map": "/.well-known/service/static/static/js/1210.b6221400.chunk.js.map",
148
- "9476.302a7b02.chunk.js.map": "/.well-known/service/static/static/js/9476.302a7b02.chunk.js.map",
149
- "7902.9316a419.chunk.js.map": "/.well-known/service/static/static/js/7902.9316a419.chunk.js.map",
150
- "1162.40dc4181.chunk.js.map": "/.well-known/service/static/static/js/1162.40dc4181.chunk.js.map"
150
+ "1162.ff3136ae.chunk.js.map": "/.well-known/service/static/static/js/1162.ff3136ae.chunk.js.map",
151
+ "9476.bc480cfc.chunk.js.map": "/.well-known/service/static/static/js/9476.bc480cfc.chunk.js.map"
151
152
  },
152
153
  "entrypoints": [
153
154
  "static/css/main.7ea79dc8.css",
154
- "static/js/main.d78266c4.js"
155
+ "static/js/main.0357601e.js"
155
156
  ]
156
157
  }
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.d78266c4.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.0357601e.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>