@abtnode/core 1.8.30 → 1.8.32

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/lib/api/node.js CHANGED
@@ -13,8 +13,8 @@ const logger = require('@abtnode/logger')('@abtnode/core:api:node');
13
13
 
14
14
  const IP = require('../util/ip');
15
15
  const { validateNodeInfo, validateUpdateGateway } = require('../validators/node');
16
- const BlockletRegistry = require('../blocklet/registry');
17
16
  const { getAll } = require('../blocklet/manager/engine');
17
+ const StoreUtil = require('../util/store');
18
18
  const { getDelegateState } = require('../util');
19
19
 
20
20
  const sanitizeUrl = (url) => {
@@ -59,9 +59,9 @@ class NodeAPI {
59
59
  throw new Error(`Blocklet registry already exist: ${sanitized}`);
60
60
  }
61
61
 
62
- await BlockletRegistry.validateRegistryURL(sanitized);
62
+ await StoreUtil.validateRegistryURL(sanitized);
63
63
 
64
- const newBlockletRegistry = await BlockletRegistry.getRegistryMeta(sanitized);
64
+ const newBlockletRegistry = await StoreUtil.getRegistryMeta(sanitized);
65
65
  const newBlockletRegistryList = info.blockletRegistryList.map((x) => ({ ...x, selected: false }));
66
66
  newBlockletRegistryList.push({ ...newBlockletRegistry, url: sanitized, selected: true, protected: false });
67
67
 
package/lib/api/team.js CHANGED
@@ -10,6 +10,7 @@ const {
10
10
  WHO_CAN_ACCESS,
11
11
  PASSPORT_STATUS,
12
12
  WELLKNOWN_SERVICE_PATH_PREFIX,
13
+ MAX_USER_PAGE_SIZE,
13
14
  } = require('@abtnode/constant');
14
15
  const { isValid: isValidDid } = require('@arcblock/did');
15
16
  const { BlockletEvents } = require('@blocklet/constant');
@@ -30,8 +31,6 @@ const { validateCreatePermission, validateUpdatePermission } = require('../valid
30
31
 
31
32
  const { getBlocklet } = require('../util/blocklet');
32
33
 
33
- const MAX_USER_PAGE_SIZE = 100;
34
-
35
34
  const validateReservedRole = (role) => {
36
35
  if (Object.values(ROLES).includes(role)) {
37
36
  throw new Error(`The role ${role} is reserved`);
@@ -126,14 +125,33 @@ class TeamAPI extends EventEmitter {
126
125
  return doc;
127
126
  }
128
127
 
129
- async getUsers({ teamDid, query, paging: inputPaging, sort }) {
128
+ async getUsers({ teamDid, query, paging: inputPaging, sort, dids }) {
130
129
  const state = await this.getUserState(teamDid);
131
130
 
132
131
  if (inputPaging?.pageSize > MAX_USER_PAGE_SIZE) {
133
132
  throw new Error(`Length of users should not exceed ${MAX_USER_PAGE_SIZE} per page`);
134
133
  }
135
134
 
136
- const { list, paging } = await state.getUsers({ query, sort, paging: { pageSize: 20, ...inputPaging } });
135
+ if (dids && dids.length > MAX_USER_PAGE_SIZE) {
136
+ throw new Error(`Length of users should not exceed ${MAX_USER_PAGE_SIZE}`);
137
+ }
138
+
139
+ let list;
140
+ let paging;
141
+
142
+ if (dids) {
143
+ list = await state.getUsersByDids({ query, dids });
144
+ paging = {
145
+ total: list.length,
146
+ pageSize: dids.length,
147
+ pageCount: 1,
148
+ page: 1,
149
+ };
150
+ } else {
151
+ const doc = await state.getUsers({ query, sort, paging: { pageSize: 20, ...inputPaging } });
152
+ list = doc.list;
153
+ paging = doc.paging;
154
+ }
137
155
 
138
156
  return {
139
157
  users: list.map(