@starklabs/forge 1.3.17 → 1.3.19
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/dist/js/crud/create.d.ts.map +1 -1
- package/dist/js/crud/remove.d.ts.map +1 -1
- package/dist/js/crud/remove.js +18 -1
- package/dist/js/crud/remove.js.map +1 -1
- package/dist/js/crud/removeAll.d.ts.map +1 -1
- package/dist/js/crud/removeAll.js +17 -0
- package/dist/js/crud/removeAll.js.map +1 -1
- package/dist/js/crud/removeMultiple.d.ts.map +1 -1
- package/dist/js/crud/removeMultiple.js +17 -1
- package/dist/js/crud/removeMultiple.js.map +1 -1
- package/dist/js/crud/update.d.ts.map +1 -1
- package/dist/js/crud/update.js +22 -0
- package/dist/js/crud/update.js.map +1 -1
- package/dist/js/types/ActionHandler.d.ts +3 -3
- package/dist/js/types/ActionHandler.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../../../src/js/crud/create.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../../../src/js/crud/create.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAG,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAClD,OAAO,KAAK,EAAE,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAcpE,QAAA,MAAM,MAAM,GAAI,qDAKb;IACD,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,KAAK,CAAC;IAChB,cAAc,EAAE,cAAc,CAAC;CAChC,MACe,KAAK,OAAO,EAAE,KAAK,QAAQ,KAAG,OAAO,CAAC,IAAI,CAuGzD,CAAC;AAEF,eAAe,MAAM,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"remove.d.ts","sourceRoot":"","sources":["../../../src/js/crud/remove.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAMjD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"remove.d.ts","sourceRoot":"","sources":["../../../src/js/crud/remove.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAMjD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;AAIpD,QAAA,MAAM,MAAM,GAAI,qCAIb;IACD,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,KAAK,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;CACnB,MACe,KAAK,OAAO,EAAE,KAAK,QAAQ,KAAG,OAAO,CAAC,IAAI,CA2DzD,CAAC;AAEF,eAAe,MAAM,CAAC"}
|
package/dist/js/crud/remove.js
CHANGED
|
@@ -4,6 +4,7 @@ import getModel from "../utils/getModel.js";
|
|
|
4
4
|
import appResponse from "../utils/response.js";
|
|
5
5
|
import authorizeAccess from "./utils/authorizeAccess.js";
|
|
6
6
|
import { sanitizeOne } from "../utils/sanitize.js";
|
|
7
|
+
import runActions from "./utils/runActions.js";
|
|
7
8
|
const remove = ({ modelName, routeName, routeObj, }) => {
|
|
8
9
|
return async (req, res) => {
|
|
9
10
|
const id = getParam({ req, routeObj });
|
|
@@ -15,16 +16,32 @@ const remove = ({ modelName, routeName, routeObj, }) => {
|
|
|
15
16
|
});
|
|
16
17
|
authorizeAccess({ routeObj, routeName, item, req });
|
|
17
18
|
const Model = getModel({ modelName, routeName, routeObj });
|
|
19
|
+
const ActionObj = {
|
|
20
|
+
req,
|
|
21
|
+
user: req.user,
|
|
22
|
+
routeName,
|
|
23
|
+
modelName,
|
|
24
|
+
Model,
|
|
25
|
+
};
|
|
26
|
+
await runActions(routeObj.actions?.before, {
|
|
27
|
+
operation: "remove",
|
|
28
|
+
...ActionObj,
|
|
29
|
+
});
|
|
18
30
|
const deletedItem = await Model.findByIdAndDelete(id);
|
|
19
31
|
const cleaned = sanitizeOne(deletedItem.toObject(), routeObj);
|
|
20
32
|
const idExcluded = routeObj.mongooseConfigObj?.hiddenFieldsArray?.includes("_id");
|
|
21
33
|
if (idExcluded)
|
|
22
34
|
delete cleaned["_id"];
|
|
35
|
+
await runActions(routeObj.actions?.after, {
|
|
36
|
+
...ActionObj,
|
|
37
|
+
operation: "remove",
|
|
38
|
+
item: deletedItem,
|
|
39
|
+
});
|
|
23
40
|
appResponse({
|
|
24
41
|
res,
|
|
25
42
|
message: "Item deleted successfully!",
|
|
26
43
|
statusCode: 202,
|
|
27
|
-
data: cleaned
|
|
44
|
+
data: cleaned,
|
|
28
45
|
});
|
|
29
46
|
};
|
|
30
47
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"remove.js","sourceRoot":"","sources":["../../../src/js/crud/remove.ts"],"names":[],"mappings":"AACA,OAAO,QAAQ,MAAM,qBAAqB,CAAC;AAC3C,OAAO,OAAO,MAAM,oBAAoB,CAAC;AACzC,OAAO,QAAQ,MAAM,sBAAsB,CAAC;AAC5C,OAAO,WAAW,MAAM,sBAAsB,CAAC;AAC/C,OAAO,eAAe,MAAM,4BAA4B,CAAC;AAEzD,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"remove.js","sourceRoot":"","sources":["../../../src/js/crud/remove.ts"],"names":[],"mappings":"AACA,OAAO,QAAQ,MAAM,qBAAqB,CAAC;AAC3C,OAAO,OAAO,MAAM,oBAAoB,CAAC;AACzC,OAAO,QAAQ,MAAM,sBAAsB,CAAC;AAC5C,OAAO,WAAW,MAAM,sBAAsB,CAAC;AAC/C,OAAO,eAAe,MAAM,4BAA4B,CAAC;AAEzD,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,UAAU,MAAM,uBAAuB,CAAC;AAE/C,MAAM,MAAM,GAAG,CAAC,EACd,SAAS,EACT,SAAS,EACT,QAAQ,GAKT,EAAE,EAAE;IACH,OAAO,KAAK,EAAE,GAAY,EAAE,GAAa,EAAiB,EAAE;QAE1D,MAAM,EAAE,GAAG,QAAQ,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC,CAAC;QAGvC,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC;YACzB,SAAS;YACT,SAAS;YACT,GAAG,EAAE,EAAY;YACjB,QAAQ;SACT,CAAC,CAAC;QAGH,eAAe,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC;QAGpD,MAAM,KAAK,GAAG,QAAQ,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,CAAC;QAG3D,MAAM,SAAS,GAAG;YAChB,GAAG;YACH,IAAI,EAAE,GAAG,CAAC,IAAI;YACd,SAAS;YACT,SAAS;YACT,KAAK;SACN,CAAC;QAGF,MAAM,UAAU,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE;YACzC,SAAS,EAAE,QAAQ;YACnB,GAAG,SAAS;SACb,CAAC,CAAC;QAGH,MAAM,WAAW,GAAG,MAAM,KAAK,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC;QAGtD,MAAM,OAAO,GAAG,WAAW,CAAC,WAAY,CAAC,QAAQ,EAAE,EAAE,QAAQ,CAAC,CAAC;QAG/D,MAAM,UAAU,GACd,QAAQ,CAAC,iBAAiB,EAAE,iBAAiB,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC;QACjE,IAAI,UAAU;YAAE,OAAO,OAAO,CAAC,KAAK,CAAC,CAAC;QAGtC,MAAM,UAAU,CAAC,QAAQ,CAAC,OAAO,EAAE,KAAK,EAAE;YACxC,GAAG,SAAS;YACZ,SAAS,EAAE,QAAQ;YACnB,IAAI,EAAE,WAAW;SAClB,CAAC,CAAC;QAGH,WAAW,CAAC;YACV,GAAG;YACH,OAAO,EAAE,4BAA4B;YACrC,UAAU,EAAE,GAAG;YACf,IAAI,EAAE,OAAO;SACd,CAAC,CAAC;IACL,CAAC,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,MAAM,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"removeAll.d.ts","sourceRoot":"","sources":["../../../src/js/crud/removeAll.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAU,MAAM,SAAS,CAAC;AAIzD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;AAKpD,QAAA,MAAM,SAAS,GAAI,qCAIhB;IACD,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,KAAK,CAAC;CACjB,MACe,KAAK,OAAO,EAAE,KAAK,QAAQ,KAAG,OAAO,CAAC,IAAI,
|
|
1
|
+
{"version":3,"file":"removeAll.d.ts","sourceRoot":"","sources":["../../../src/js/crud/removeAll.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAU,MAAM,SAAS,CAAC;AAIzD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;AAKpD,QAAA,MAAM,SAAS,GAAI,qCAIhB;IACD,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,KAAK,CAAC;CACjB,MACe,KAAK,OAAO,EAAE,KAAK,QAAQ,KAAG,OAAO,CAAC,IAAI,CAsDzD,CAAC;AAEF,eAAe,SAAS,CAAC"}
|
|
@@ -3,10 +3,22 @@ import appResponse from "../utils/response.js";
|
|
|
3
3
|
import authorizeAccess from "./utils/authorizeAccess.js";
|
|
4
4
|
import AppError from "../utils/AppError.js";
|
|
5
5
|
import getErrorDetail from "../utils/getErrorDetail.js";
|
|
6
|
+
import runActions from "./utils/runActions.js";
|
|
6
7
|
const removeAll = ({ modelName, routeName, routeObj, }) => {
|
|
7
8
|
return async (req, res) => {
|
|
8
9
|
authorizeAccess({ routeObj, routeName, req });
|
|
9
10
|
const Model = getModel({ modelName, routeName, routeObj });
|
|
11
|
+
const ActionObj = {
|
|
12
|
+
req,
|
|
13
|
+
user: req.user,
|
|
14
|
+
routeName,
|
|
15
|
+
modelName,
|
|
16
|
+
Model,
|
|
17
|
+
};
|
|
18
|
+
await runActions(routeObj.actions?.before, {
|
|
19
|
+
operation: "removeAll",
|
|
20
|
+
...ActionObj,
|
|
21
|
+
});
|
|
10
22
|
const result = await Model.deleteMany({});
|
|
11
23
|
const notFound = !result || result.deletedCount === 0;
|
|
12
24
|
if (notFound) {
|
|
@@ -17,6 +29,11 @@ const removeAll = ({ modelName, routeName, routeObj, }) => {
|
|
|
17
29
|
details: getErrorDetail(routeObj),
|
|
18
30
|
});
|
|
19
31
|
}
|
|
32
|
+
await runActions(routeObj.actions?.before, {
|
|
33
|
+
operation: "removeAll",
|
|
34
|
+
...ActionObj,
|
|
35
|
+
item: result,
|
|
36
|
+
});
|
|
20
37
|
appResponse({
|
|
21
38
|
res,
|
|
22
39
|
data: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"removeAll.js","sourceRoot":"","sources":["../../../src/js/crud/removeAll.ts"],"names":[],"mappings":"AACA,OAAO,QAAQ,MAAM,sBAAsB,CAAC;AAC5C,OAAO,WAAW,MAAM,sBAAsB,CAAC;AAC/C,OAAO,eAAe,MAAM,4BAA4B,CAAC;AAEzD,OAAO,QAAQ,MAAM,sBAAsB,CAAC;AAC5C,OAAO,cAAc,MAAM,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"removeAll.js","sourceRoot":"","sources":["../../../src/js/crud/removeAll.ts"],"names":[],"mappings":"AACA,OAAO,QAAQ,MAAM,sBAAsB,CAAC;AAC5C,OAAO,WAAW,MAAM,sBAAsB,CAAC;AAC/C,OAAO,eAAe,MAAM,4BAA4B,CAAC;AAEzD,OAAO,QAAQ,MAAM,sBAAsB,CAAC;AAC5C,OAAO,cAAc,MAAM,4BAA4B,CAAC;AACxD,OAAO,UAAU,MAAM,uBAAuB,CAAC;AAE/C,MAAM,SAAS,GAAG,CAAC,EACjB,SAAS,EACT,SAAS,EACT,QAAQ,GAKT,EAAE,EAAE;IACH,OAAO,KAAK,EAAE,GAAY,EAAE,GAAa,EAAiB,EAAE;QAE1D,eAAe,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC;QAG9C,MAAM,KAAK,GAAG,QAAQ,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,CAAC;QAG3D,MAAM,SAAS,GAAG;YAChB,GAAG;YACH,IAAI,EAAE,GAAG,CAAC,IAAI;YACd,SAAS;YACT,SAAS;YACT,KAAK;SACN,CAAC;QAGF,MAAM,UAAU,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE;YACzC,SAAS,EAAE,WAAW;YACtB,GAAG,SAAS;SACb,CAAC,CAAC;QAGH,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;QAG1C,MAAM,QAAQ,GAAG,CAAC,MAAM,IAAI,MAAM,CAAC,YAAY,KAAK,CAAC,CAAC;QAEtD,IAAI,QAAQ,EAAE,CAAC;YACb,MAAM,IAAI,QAAQ,CAAC;gBACjB,OAAO,EAAE,0BAA0B;gBACnC,UAAU,EAAE,GAAG;gBACf,IAAI,EAAE,sCAAsC;gBAC5C,OAAO,EAAE,cAAc,CAAC,QAAQ,CAAC;aAClC,CAAC,CAAC;QACL,CAAC;QAGD,MAAM,UAAU,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE;YACzC,SAAS,EAAE,WAAW;YACtB,GAAG,SAAS;YACZ,IAAI,EAAE,MAAM;SACb,CAAC,CAAC;QAGH,WAAW,CAAC;YACV,GAAG;YACH,IAAI,EAAE;gBACJ,YAAY,EAAE,MAAM,CAAC,YAAY;aAClC;YACD,OAAO,EAAE,6BAA6B;YACtC,UAAU,EAAE,GAAG;SAChB,CAAC,CAAC;IACL,CAAC,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,SAAS,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"removeMultiple.d.ts","sourceRoot":"","sources":["../../../src/js/crud/removeMultiple.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAU,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"removeMultiple.d.ts","sourceRoot":"","sources":["../../../src/js/crud/removeMultiple.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAU,MAAM,SAAS,CAAC;AAGzD,OAAO,KAAK,EAAE,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAOpE,QAAA,MAAM,cAAc,GAAI,qDAKrB;IACD,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,KAAK,CAAC;IAChB,cAAc,EAAE,cAAc,CAAC;CAChC,MACe,KAAK,OAAO,EAAE,KAAK,QAAQ,KAAG,OAAO,CAAC,IAAI,CAwEzD,CAAC;AAEF,eAAe,cAAc,CAAC"}
|
|
@@ -1,14 +1,25 @@
|
|
|
1
1
|
import getModel from "../utils/getModel.js";
|
|
2
2
|
import appResponse from "../utils/response.js";
|
|
3
|
-
import authorizeAccess from "./utils/authorizeAccess.js";
|
|
4
3
|
import AppError from "../utils/AppError.js";
|
|
5
4
|
import getValidationKey from "../utils/validationKeyError.js";
|
|
6
5
|
import getErrorDetail from "../utils/getErrorDetail.js";
|
|
7
6
|
import validate from "../utils/validate.js";
|
|
7
|
+
import runActions from "./utils/runActions.js";
|
|
8
8
|
const removeMultiple = ({ modelName, routeName, routeObj, validationsObj, }) => {
|
|
9
9
|
return async (req, res) => {
|
|
10
10
|
const validationObj = getValidationKey(routeObj, validationsObj);
|
|
11
11
|
const Model = getModel({ modelName, routeName, routeObj });
|
|
12
|
+
const ActionObj = {
|
|
13
|
+
req,
|
|
14
|
+
user: req.user,
|
|
15
|
+
routeName,
|
|
16
|
+
modelName,
|
|
17
|
+
Model,
|
|
18
|
+
};
|
|
19
|
+
await runActions(routeObj.actions?.before, {
|
|
20
|
+
operation: "removeMultiple",
|
|
21
|
+
...ActionObj,
|
|
22
|
+
});
|
|
12
23
|
const body = validate(validationObj, req.body, routeObj);
|
|
13
24
|
const idsFieldName = routeObj.mongooseConfigObj?.removeMultipleFieldKey;
|
|
14
25
|
if (!idsFieldName)
|
|
@@ -31,6 +42,11 @@ const removeMultiple = ({ modelName, routeName, routeObj, validationsObj, }) =>
|
|
|
31
42
|
details: getErrorDetail(routeObj),
|
|
32
43
|
});
|
|
33
44
|
}
|
|
45
|
+
await runActions(routeObj.actions?.before, {
|
|
46
|
+
operation: "removeMultiple",
|
|
47
|
+
...ActionObj,
|
|
48
|
+
item: result,
|
|
49
|
+
});
|
|
34
50
|
appResponse({
|
|
35
51
|
res,
|
|
36
52
|
data: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"removeMultiple.js","sourceRoot":"","sources":["../../../src/js/crud/removeMultiple.ts"],"names":[],"mappings":"AACA,OAAO,QAAQ,MAAM,sBAAsB,CAAC;AAC5C,OAAO,WAAW,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"removeMultiple.js","sourceRoot":"","sources":["../../../src/js/crud/removeMultiple.ts"],"names":[],"mappings":"AACA,OAAO,QAAQ,MAAM,sBAAsB,CAAC;AAC5C,OAAO,WAAW,MAAM,sBAAsB,CAAC;AAE/C,OAAO,QAAQ,MAAM,sBAAsB,CAAC;AAC5C,OAAO,gBAAgB,MAAM,gCAAgC,CAAC;AAC9D,OAAO,cAAc,MAAM,4BAA4B,CAAC;AACxD,OAAO,QAAQ,MAAM,sBAAsB,CAAC;AAC5C,OAAO,UAAU,MAAM,uBAAuB,CAAC;AAE/C,MAAM,cAAc,GAAG,CAAC,EACtB,SAAS,EACT,SAAS,EACT,QAAQ,EACR,cAAc,GAMf,EAAE,EAAE;IACH,OAAO,KAAK,EAAE,GAAY,EAAE,GAAa,EAAiB,EAAE;QAE1D,MAAM,aAAa,GAAG,gBAAgB,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;QAKjE,MAAM,KAAK,GAAG,QAAQ,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,CAAC;QAG3D,MAAM,SAAS,GAAG;YAChB,GAAG;YACH,IAAI,EAAE,GAAG,CAAC,IAAI;YACd,SAAS;YACT,SAAS;YACT,KAAK;SACN,CAAC;QAGF,MAAM,UAAU,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE;YACzC,SAAS,EAAE,gBAAgB;YAC3B,GAAG,SAAS;SACb,CAAC,CAAC;QAGH,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,EAAE,GAAG,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QAGzD,MAAM,YAAY,GAAG,QAAQ,CAAC,iBAAiB,EAAE,sBAAsB,CAAC;QACxE,IAAI,CAAC,YAAY;YACf,MAAM,IAAI,QAAQ,CAAC;gBACjB,OAAO,EAAE,cAAc,CAAC,QAAQ,CAAC;gBACjC,IAAI,EAAE,sHAAsH;gBAC5H,OAAO,EAAE,wBAAwB;gBACjC,UAAU,EAAE,GAAG;aAChB,CAAC,CAAC;QAGL,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,UAAU,CAAC;YACpC,GAAG,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,YAAY,CAAC,EAAE;YAChC,KAAK,EAAE,GAAG,CAAC,IAAI,CAAC,GAAG;SACpB,CAAC,CAAC;QAGH,MAAM,QAAQ,GAAG,CAAC,MAAM,IAAI,MAAM,CAAC,YAAY,KAAK,CAAC,CAAC;QAEtD,IAAI,QAAQ,EAAE,CAAC;YACb,MAAM,IAAI,QAAQ,CAAC;gBACjB,OAAO,EAAE,0BAA0B;gBACnC,UAAU,EAAE,GAAG;gBACf,IAAI,EAAE,kCAAkC,YAAY,qDAAqD;gBACzG,OAAO,EAAE,cAAc,CAAC,QAAQ,CAAC;aAClC,CAAC,CAAC;QACL,CAAC;QAGD,MAAM,UAAU,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE;YACzC,SAAS,EAAE,gBAAgB;YAC3B,GAAG,SAAS;YACZ,IAAI,EAAE,MAAM;SACb,CAAC,CAAC;QAGH,WAAW,CAAC;YACV,GAAG;YACH,IAAI,EAAE;gBACJ,YAAY,EAAE,MAAM,CAAC,YAAY;aAClC;YACD,OAAO,EAAE,6BAA6B;YACtC,UAAU,EAAE,GAAG;SAChB,CAAC,CAAC;IACL,CAAC,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,cAAc,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../../src/js/crud/update.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACjD,OAAO,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../../src/js/crud/update.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACjD,OAAO,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;AAapE,QAAA,MAAM,MAAM,GAAI,qDAKb;IACD,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,KAAK,CAAC;IAChB,cAAc,EAAE,cAAc,CAAC;CAChC,MACe,KAAK,OAAO,EAAE,KAAK,QAAQ,KAAG,OAAO,CAAC,IAAI,CAiFzD,CAAC;AAEF,eAAe,MAAM,CAAC"}
|
package/dist/js/crud/update.js
CHANGED
|
@@ -8,6 +8,7 @@ import authorizeAccess from "./utils/authorizeAccess.js";
|
|
|
8
8
|
import getValidationKey from "../utils/validationKeyError.js";
|
|
9
9
|
import handleEncryption from "./encryption/handleEncryption.js";
|
|
10
10
|
import handleHashing from "./security/handleHashing.js";
|
|
11
|
+
import runActions from "./utils/runActions.js";
|
|
11
12
|
const update = ({ modelName, routeName, routeObj, validationsObj, }) => {
|
|
12
13
|
return async (req, res) => {
|
|
13
14
|
const validationObj = getValidationKey(routeObj, validationsObj);
|
|
@@ -23,6 +24,22 @@ const update = ({ modelName, routeName, routeObj, validationsObj, }) => {
|
|
|
23
24
|
const encryptedFields = await handleEncryption(req.body, routeObj);
|
|
24
25
|
const hashedFields = await handleHashing(req.body, routeObj);
|
|
25
26
|
const Model = getModel({ modelName, routeName, routeObj });
|
|
27
|
+
const ActionObj = {
|
|
28
|
+
req,
|
|
29
|
+
user: req.user,
|
|
30
|
+
routeName,
|
|
31
|
+
modelName,
|
|
32
|
+
Model,
|
|
33
|
+
data: {
|
|
34
|
+
body,
|
|
35
|
+
encryptedFields,
|
|
36
|
+
hashedFields,
|
|
37
|
+
},
|
|
38
|
+
};
|
|
39
|
+
await runActions(routeObj.actions?.before, {
|
|
40
|
+
operation: "update",
|
|
41
|
+
...ActionObj,
|
|
42
|
+
});
|
|
26
43
|
const updatedItem = await Model.findByIdAndUpdate(id, { ...body, ...encryptedFields, ...hashedFields }, {
|
|
27
44
|
returnDocument: "after",
|
|
28
45
|
});
|
|
@@ -30,6 +47,11 @@ const update = ({ modelName, routeName, routeObj, validationsObj, }) => {
|
|
|
30
47
|
const idExcluded = routeObj.mongooseConfigObj?.hiddenFieldsArray?.includes("_id");
|
|
31
48
|
if (idExcluded)
|
|
32
49
|
delete cleaned["_id"];
|
|
50
|
+
await runActions(routeObj.actions?.after, {
|
|
51
|
+
...ActionObj,
|
|
52
|
+
operation: "update",
|
|
53
|
+
item: updatedItem,
|
|
54
|
+
});
|
|
33
55
|
appResponse({
|
|
34
56
|
res,
|
|
35
57
|
data: cleaned,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"update.js","sourceRoot":"","sources":["../../../src/js/crud/update.ts"],"names":[],"mappings":"AAEA,OAAO,QAAQ,MAAM,qBAAqB,CAAC;AAC3C,OAAO,OAAO,MAAM,oBAAoB,CAAC;AACzC,OAAO,QAAQ,MAAM,sBAAsB,CAAC;AAC5C,OAAO,QAAQ,MAAM,sBAAsB,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,WAAW,MAAM,sBAAsB,CAAC;AAC/C,OAAO,eAAe,MAAM,4BAA4B,CAAC;AACzD,OAAO,gBAAgB,MAAM,gCAAgC,CAAC;AAC9D,OAAO,gBAAgB,MAAM,kCAAkC,CAAC;AAChE,OAAO,aAAa,MAAM,6BAA6B,CAAC;
|
|
1
|
+
{"version":3,"file":"update.js","sourceRoot":"","sources":["../../../src/js/crud/update.ts"],"names":[],"mappings":"AAEA,OAAO,QAAQ,MAAM,qBAAqB,CAAC;AAC3C,OAAO,OAAO,MAAM,oBAAoB,CAAC;AACzC,OAAO,QAAQ,MAAM,sBAAsB,CAAC;AAC5C,OAAO,QAAQ,MAAM,sBAAsB,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,WAAW,MAAM,sBAAsB,CAAC;AAC/C,OAAO,eAAe,MAAM,4BAA4B,CAAC;AACzD,OAAO,gBAAgB,MAAM,gCAAgC,CAAC;AAC9D,OAAO,gBAAgB,MAAM,kCAAkC,CAAC;AAChE,OAAO,aAAa,MAAM,6BAA6B,CAAC;AACxD,OAAO,UAAU,MAAM,uBAAuB,CAAC;AAE/C,MAAM,MAAM,GAAG,CAAC,EACd,SAAS,EACT,SAAS,EACT,QAAQ,EACR,cAAc,GAMf,EAAE,EAAE;IACH,OAAO,KAAK,EAAE,GAAY,EAAE,GAAa,EAAiB,EAAE;QAE1D,MAAM,aAAa,GAAG,gBAAgB,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;QAGjE,MAAM,EAAE,GAAG,QAAQ,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC,CAAC;QAGvC,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,EAAE,GAAG,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QAGzD,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC;YACzB,SAAS;YACT,SAAS;YACT,GAAG,EAAE,EAAY;YACjB,QAAQ;SACT,CAAC,CAAC;QAGH,eAAe,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,CAAC;QAGpD,MAAM,eAAe,GAAG,MAAM,gBAAgB,CAAC,GAAG,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QAGnE,MAAM,YAAY,GAAG,MAAM,aAAa,CAAC,GAAG,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QAG7D,MAAM,KAAK,GAAG,QAAQ,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,CAAC;QAG3D,MAAM,SAAS,GAAG;YAChB,GAAG;YACH,IAAI,EAAE,GAAG,CAAC,IAAI;YACd,SAAS;YACT,SAAS;YACT,KAAK;YACL,IAAI,EAAE;gBACJ,IAAI;gBACJ,eAAe;gBACf,YAAY;aACb;SACF,CAAC;QAGF,MAAM,UAAU,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE;YACzC,SAAS,EAAE,QAAQ;YACnB,GAAG,SAAS;SACb,CAAC,CAAC;QAGH,MAAM,WAAW,GAAG,MAAM,KAAK,CAAC,iBAAiB,CAC/C,EAAE,EACF,EAAE,GAAG,IAAI,EAAE,GAAG,eAAe,EAAE,GAAG,YAAY,EAAE,EAChD;YACE,cAAc,EAAE,OAAO;SACxB,CACF,CAAC;QAGF,MAAM,OAAO,GAAG,WAAW,CAAC,WAAY,CAAC,QAAQ,EAAE,EAAE,QAAQ,CAAC,CAAC;QAG/D,MAAM,UAAU,GACd,QAAQ,CAAC,iBAAiB,EAAE,iBAAiB,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC;QACjE,IAAI,UAAU;YAAE,OAAO,OAAO,CAAC,KAAK,CAAC,CAAC;QAGtC,MAAM,UAAU,CAAC,QAAQ,CAAC,OAAO,EAAE,KAAK,EAAE;YACxC,GAAG,SAAS;YACZ,SAAS,EAAE,QAAQ;YACnB,IAAI,EAAE,WAAW;SAClB,CAAC,CAAC;QAGH,WAAW,CAAC;YACV,GAAG;YACH,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,4BAA4B;SACtC,CAAC,CAAC;IACL,CAAC,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,MAAM,CAAC"}
|
|
@@ -4,11 +4,11 @@ export interface CreateContext {
|
|
|
4
4
|
req: Request;
|
|
5
5
|
user: Request["user"];
|
|
6
6
|
routeName: string;
|
|
7
|
-
operation: "create" | "update" | "remove";
|
|
7
|
+
operation: "create" | "update" | "remove" | "removeMultiple" | "removeAll";
|
|
8
8
|
modelName: string;
|
|
9
9
|
Model: any;
|
|
10
|
-
data
|
|
11
|
-
owner
|
|
10
|
+
data?: {
|
|
11
|
+
owner?: string;
|
|
12
12
|
body: any;
|
|
13
13
|
fileMetaData?: any;
|
|
14
14
|
encryptedFields?: any;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ActionHandler.d.ts","sourceRoot":"","sources":["../../../src/js/types/ActionHandler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAEzC,MAAM,WAAW,aAAa;IAC5B,GAAG,EAAE,OAAO,CAAC;IACb,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IAEtB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"ActionHandler.d.ts","sourceRoot":"","sources":["../../../src/js/types/ActionHandler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAEzC,MAAM,WAAW,aAAa;IAC5B,GAAG,EAAE,OAAO,CAAC;IACb,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IAEtB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,QAAQ,GAAG,QAAQ,GAAG,QAAQ,GAAG,gBAAgB,GAAG,WAAW,CAAC;IAC3E,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,GAAG,CAAC;IAEX,IAAI,CAAC,EAAE;QACL,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,IAAI,EAAE,GAAG,CAAC;QACV,YAAY,CAAC,EAAE,GAAG,CAAC;QACnB,eAAe,CAAC,EAAE,GAAG,CAAC;QACtB,YAAY,CAAC,EAAE,GAAG,CAAC;KACpB,CAAC;IACF,IAAI,CAAC,EAAE,QAAQ,CAAC;CACjB;AAED,MAAM,WAAW,MAAM;IACrB,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC;IACzB,OAAO,EAAE,CAAC,OAAO,EAAE,aAAa,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;CAC3D"}
|
package/package.json
CHANGED