@nocobase/data-source-manager 2.2.45 → 2.2.46

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.
@@ -24,6 +24,7 @@ export declare abstract class DataSource extends EventEmitter {
24
24
  resourceManager: ResourceManager;
25
25
  acl: ACL;
26
26
  dataSourceManager: DataSourceManager;
27
+ private readonly collectionResources;
27
28
  logger: Logger;
28
29
  constructor(options: DataSourceOptions);
29
30
  _sqlLogger: Logger;
@@ -56,6 +56,7 @@ const _DataSource = class _DataSource extends import_events.default {
56
56
  resourceManager;
57
57
  acl;
58
58
  dataSourceManager;
59
+ collectionResources = /* @__PURE__ */ new WeakSet();
59
60
  logger;
60
61
  _sqlLogger;
61
62
  get sqlLogger() {
@@ -144,17 +145,18 @@ const _DataSource = class _DataSource extends import_events.default {
144
145
  return next();
145
146
  }
146
147
  const resourceName = (0, import_resourcer.getNameByParams)(params);
148
+ const [collectionName] = resourceName.split(".");
147
149
  if (self.resourceManager.isDefined(resourceName)) {
148
- return next();
149
- }
150
- const splitResult = resourceName.split(".");
151
- const collectionName = splitResult[0];
152
- if (!self.collectionManager.hasCollection(collectionName)) {
153
- return next();
150
+ const resource = self.resourceManager.getResource(resourceName);
151
+ if (!self.collectionResources.has(resource)) return next();
152
+ if (!self.collectionManager.hasCollection(collectionName)) {
153
+ self.resourceManager.removeResource(resourceName);
154
+ return next();
155
+ }
156
+ } else {
157
+ if (!self.collectionManager.hasCollection(collectionName)) return next();
158
+ self.collectionResources.add(self.resourceManager.define({ name: resourceName }));
154
159
  }
155
- self.resourceManager.define({
156
- name: resourceName
157
- });
158
160
  return next();
159
161
  }, "collectionToResource");
160
162
  }
package/package.json CHANGED
@@ -1,16 +1,16 @@
1
1
  {
2
2
  "name": "@nocobase/data-source-manager",
3
- "version": "2.2.45",
3
+ "version": "2.2.46",
4
4
  "description": "",
5
5
  "license": "Apache-2.0",
6
6
  "main": "./lib/index.js",
7
7
  "types": "./lib/index.d.ts",
8
8
  "dependencies": {
9
- "@nocobase/actions": "2.2.45",
10
- "@nocobase/cache": "2.2.45",
11
- "@nocobase/database": "2.2.45",
12
- "@nocobase/resourcer": "2.2.45",
13
- "@nocobase/utils": "2.2.45",
9
+ "@nocobase/actions": "2.2.46",
10
+ "@nocobase/cache": "2.2.46",
11
+ "@nocobase/database": "2.2.46",
12
+ "@nocobase/resourcer": "2.2.46",
13
+ "@nocobase/utils": "2.2.46",
14
14
  "@types/jsonwebtoken": "^8.5.8",
15
15
  "jsonwebtoken": "^9.0.2"
16
16
  },
@@ -19,5 +19,5 @@
19
19
  "url": "git+https://github.com/nocobase/nocobase.git",
20
20
  "directory": "packages/auth"
21
21
  },
22
- "gitHead": "41365164a6a0551491c07dc01634d8bcd1e2b7b8"
22
+ "gitHead": "ca2ca462526e39c219a09fa65625f77879ac5249"
23
23
  }