@cocreate/authorize 1.13.0 → 1.13.1
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/CHANGELOG.md +8 -0
- package/package.json +1 -1
- package/src/index.js +13 -12
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,11 @@
|
|
|
1
|
+
## [1.13.1](https://github.com/CoCreate-app/CoCreate-authorize/compare/v1.13.0...v1.13.1) (2024-01-17)
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
### Bug Fixes
|
|
5
|
+
|
|
6
|
+
* get user from socket or data ([1e3a821](https://github.com/CoCreate-app/CoCreate-authorize/commit/1e3a82119e774c9714324e8780e453f43eecb9c4))
|
|
7
|
+
* update to support new query system ([0ddfeca](https://github.com/CoCreate-app/CoCreate-authorize/commit/0ddfeca394ae44b1c56499df38df0b96c0b15396))
|
|
8
|
+
|
|
1
9
|
# [1.13.0](https://github.com/CoCreate-app/CoCreate-authorize/compare/v1.12.0...v1.13.0) (2024-01-08)
|
|
2
10
|
|
|
3
11
|
|
package/package.json
CHANGED
package/src/index.js
CHANGED
|
@@ -79,14 +79,14 @@
|
|
|
79
79
|
array: 'keys',
|
|
80
80
|
organization_id,
|
|
81
81
|
$filter: {
|
|
82
|
-
query:
|
|
82
|
+
query: {}
|
|
83
83
|
}
|
|
84
84
|
}
|
|
85
85
|
|
|
86
86
|
if (key)
|
|
87
|
-
request.$filter.query.
|
|
87
|
+
request.$filter.query.key = key
|
|
88
88
|
else
|
|
89
|
-
request.$filter.query.
|
|
89
|
+
request.$filter.query.default = true
|
|
90
90
|
|
|
91
91
|
|
|
92
92
|
let authorization = await crud.send(request)
|
|
@@ -233,18 +233,17 @@
|
|
|
233
233
|
|
|
234
234
|
async function checkMethodOperators(data, key, value) {
|
|
235
235
|
if (value === 'this.userId' && data.socket)
|
|
236
|
-
value = data.socket.user_id
|
|
236
|
+
value = data.socket.user_id || data.user_id
|
|
237
237
|
|
|
238
|
+
// TODO: support our standard query system
|
|
238
239
|
let keys = key.split('.')
|
|
239
240
|
if (['$eq', '$ne', '$lt', '$lte', '$gt', '$gte', '$in', '$nin', '$or', '$and', '$not', '$nor', '$exists', '$type', '$mod', '$regex', '$text', '$where', '$all', '$elemMatch', '$size'].includes(keys[0])) {
|
|
240
|
-
// let keys = key.split('.')
|
|
241
|
-
let query = { key: keys[1], value, operator: keys[0] }
|
|
242
241
|
if (!data.$filter)
|
|
243
|
-
data.$filter = { query:
|
|
242
|
+
data.$filter = { query: {} }
|
|
244
243
|
else if (!data.$filter.query)
|
|
245
|
-
data.$filter.query =
|
|
246
|
-
|
|
247
|
-
|
|
244
|
+
data.$filter.query = {}
|
|
245
|
+
|
|
246
|
+
data.$filter.query[keys[1]] = { [keys[0]]: value }
|
|
248
247
|
|
|
249
248
|
} else {
|
|
250
249
|
if (key === '$array' && value === 'questions') {
|
|
@@ -275,10 +274,12 @@
|
|
|
275
274
|
for (let value of authorized[apikey]) {
|
|
276
275
|
if (value[key])
|
|
277
276
|
value = value[key]
|
|
277
|
+
if (!data.object.$filter.query.$or)
|
|
278
|
+
data.object.$filter.query.$or = []
|
|
278
279
|
if (unauthorize)
|
|
279
|
-
data.object.$filter.query.push({ key
|
|
280
|
+
data.object.$filter.query.$or.push({ [key]: { $ne: value } })
|
|
280
281
|
else
|
|
281
|
-
data.object.$filter.query.push({ key
|
|
282
|
+
data.object.$filter.query.$or.push({ [key]: value })
|
|
282
283
|
}
|
|
283
284
|
if (!unauthorize)
|
|
284
285
|
return true
|