@feathersjs/feathers 5.0.0-pre.35 → 5.0.0-pre.36

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 CHANGED
@@ -3,6 +3,13 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # [5.0.0-pre.36](https://github.com/feathersjs/feathers/compare/v5.0.0-pre.35...v5.0.0-pre.36) (2023-01-29)
7
+
8
+ ### Bug Fixes
9
+
10
+ - **feathers:** Run after all hooks first, and then after method hooks ([#3004](https://github.com/feathersjs/feathers/issues/3004)) ([3692fd5](https://github.com/feathersjs/feathers/commit/3692fd57f70564492cef8bbaf78d264627a9bf0a))
11
+ - Update all dependencies ([#3024](https://github.com/feathersjs/feathers/issues/3024)) ([283dc47](https://github.com/feathersjs/feathers/commit/283dc4798d85584bc031e6e54b83b4ea77d1edd0))
12
+
6
13
  # [5.0.0-pre.35](https://github.com/feathersjs/feathers/compare/v5.0.0-pre.34...v5.0.0-pre.35) (2023-01-12)
7
14
 
8
15
  ### Features
package/LICENSE CHANGED
@@ -1,6 +1,6 @@
1
1
  The MIT License (MIT)
2
2
 
3
- Copyright (c) 2022 Feathers
3
+ Copyright (c) 2023 Feathers Contributors
4
4
 
5
5
  Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  of this software and associated documentation files (the "Software"), to deal
package/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  <img style="width: 100%; max-width: 400px;" src="http://feathersjs.com/img/feathers-logo-wide.png" alt="Feathers logo">
2
2
 
3
- ## A framework for real-time applications and REST APIs with JavaScript and TypeScript
3
+ ## The API and real-time application framework
4
4
 
5
5
  [![CI](https://github.com/feathersjs/feathers/workflows/CI/badge.svg)](https://github.com/feathersjs/feathers/actions?query=workflow%3ACI)
6
6
  [![Maintainability](https://api.codeclimate.com/v1/badges/cb5ec42a2d0cc1a47a02/maintainability)](https://codeclimate.com/github/feathersjs/feathers/maintainability)
@@ -30,6 +30,6 @@ The [Feathers docs](http://docs.feathersjs.com) are loaded with awesome stuff an
30
30
 
31
31
  ## License
32
32
 
33
- Copyright (c) 2022 [Feathers contributors](https://github.com/feathersjs/feathers/graphs/contributors)
33
+ Copyright (c) 2023 [Feathers contributors](https://github.com/feathersjs/feathers/graphs/contributors)
34
34
 
35
35
  Licensed under the [MIT license](LICENSE).
package/lib/hooks.d.ts CHANGED
@@ -16,6 +16,10 @@ type HookStore = {
16
16
  collected: {
17
17
  [method: string]: AroundHookFunction[];
18
18
  };
19
+ collectedAll: {
20
+ before?: AroundHookFunction[];
21
+ after?: AroundHookFunction[];
22
+ };
19
23
  };
20
24
  type HookEnabled = {
21
25
  __hooks: HookStore;
package/lib/hooks.js CHANGED
@@ -25,12 +25,13 @@ function convertHookData(input) {
25
25
  }
26
26
  exports.convertHookData = convertHookData;
27
27
  function collectHooks(target, method) {
28
- const { collected, around } = target.__hooks;
28
+ const { collected, collectedAll, around } = target.__hooks;
29
29
  return [
30
30
  ...(around.all || []),
31
31
  ...(around[method] || []),
32
- ...(collected.all || []),
33
- ...(collected[method] || [])
32
+ ...(collectedAll.before || []),
33
+ ...(collected[method] || []),
34
+ ...(collectedAll.after || [])
34
35
  ];
35
36
  }
36
37
  exports.collectHooks = collectHooks;
@@ -41,7 +42,8 @@ function enableHooks(object) {
41
42
  before: {},
42
43
  after: {},
43
44
  error: {},
44
- collected: {}
45
+ collected: {},
46
+ collectedAll: {}
45
47
  };
46
48
  Object.defineProperty(object, '__hooks', {
47
49
  configurable: true,
@@ -63,13 +65,30 @@ function enableHooks(object) {
63
65
  const mapHooks = map[type][method];
64
66
  const storeHooks = ((_a = store[type])[method] || (_a[method] = []));
65
67
  storeHooks.push(...mapHooks);
66
- if (store.before[method] || store.after[method] || store.error[method]) {
67
- const collected = (0, hooks_1.collect)({
68
- before: store.before[method] || [],
69
- after: store.after[method] || [],
70
- error: store.error[method] || []
71
- });
72
- store.collected[method] = [collected];
68
+ if (method === 'all') {
69
+ if (store.before[method] || store.error[method]) {
70
+ const beforeAll = (0, hooks_1.collect)({
71
+ before: store.before[method] || [],
72
+ error: store.error[method] || []
73
+ });
74
+ store.collectedAll.before = [beforeAll];
75
+ }
76
+ if (store.after[method]) {
77
+ const afterAll = (0, hooks_1.collect)({
78
+ after: store.after[method] || []
79
+ });
80
+ store.collectedAll.after = [afterAll];
81
+ }
82
+ }
83
+ else {
84
+ if (store.before[method] || store.after[method] || store.error[method]) {
85
+ const collected = (0, hooks_1.collect)({
86
+ before: store.before[method] || [],
87
+ after: store.after[method] || [],
88
+ error: store.error[method] || []
89
+ });
90
+ store.collected[method] = [collected];
91
+ }
73
92
  }
74
93
  }));
75
94
  return this;
package/lib/hooks.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"hooks.js","sourceRoot":"","sources":["../src/hooks.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hooks.js","sourceRoot":"","sources":["../src/hooks.ts"],"names":[],"mappings":"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"}
package/lib/version.d.ts CHANGED
@@ -1,2 +1,2 @@
1
- declare const _default: "5.0.0-pre.35";
1
+ declare const _default: "5.0.0-pre.36";
2
2
  export default _default;
package/lib/version.js CHANGED
@@ -1,4 +1,4 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.default = '5.0.0-pre.35';
3
+ exports.default = '5.0.0-pre.36';
4
4
  //# sourceMappingURL=version.js.map
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@feathersjs/feathers",
3
3
  "description": "A framework for real-time applications and REST API with JavaScript and TypeScript",
4
- "version": "5.0.0-pre.35",
4
+ "version": "5.0.0-pre.36",
5
5
  "homepage": "http://feathersjs.com",
6
6
  "repository": {
7
7
  "type": "git",
@@ -58,7 +58,7 @@
58
58
  "access": "public"
59
59
  },
60
60
  "dependencies": {
61
- "@feathersjs/commons": "^5.0.0-pre.35",
61
+ "@feathersjs/commons": "^5.0.0-pre.36",
62
62
  "@feathersjs/hooks": "^0.7.6",
63
63
  "events": "^3.3.0"
64
64
  },
@@ -70,5 +70,5 @@
70
70
  "ts-node": "^10.9.1",
71
71
  "typescript": "^4.9.4"
72
72
  },
73
- "gitHead": "c641598d9a4de3ceda10f56cf2af288a4236b15e"
73
+ "gitHead": "9a107b463cc80d7f3c28553c908987e05b0b634a"
74
74
  }
package/src/hooks.ts CHANGED
@@ -27,6 +27,7 @@ type HookStore = {
27
27
  after: { [method: string]: HookFunction[] }
28
28
  error: { [method: string]: HookFunction[] }
29
29
  collected: { [method: string]: AroundHookFunction[] }
30
+ collectedAll: { before?: AroundHookFunction[]; after?: AroundHookFunction[] }
30
31
  }
31
32
 
32
33
  type HookEnabled = { __hooks: HookStore }
@@ -55,13 +56,14 @@ export function convertHookData(input: any) {
55
56
  }
56
57
 
57
58
  export function collectHooks(target: HookEnabled, method: string) {
58
- const { collected, around } = target.__hooks
59
+ const { collected, collectedAll, around } = target.__hooks
59
60
 
60
61
  return [
61
62
  ...(around.all || []),
62
63
  ...(around[method] || []),
63
- ...(collected.all || []),
64
- ...(collected[method] || [])
64
+ ...(collectedAll.before || []),
65
+ ...(collected[method] || []),
66
+ ...(collectedAll.after || [])
65
67
  ] as AroundHookFunction[]
66
68
  }
67
69
 
@@ -72,7 +74,8 @@ export function enableHooks(object: any) {
72
74
  before: {},
73
75
  after: {},
74
76
  error: {},
75
- collected: {}
77
+ collected: {},
78
+ collectedAll: {}
76
79
  }
77
80
 
78
81
  Object.defineProperty(object, '__hooks', {
@@ -101,14 +104,31 @@ export function enableHooks(object: any) {
101
104
 
102
105
  storeHooks.push(...mapHooks)
103
106
 
104
- if (store.before[method] || store.after[method] || store.error[method]) {
105
- const collected = collect({
106
- before: store.before[method] || [],
107
- after: store.after[method] || [],
108
- error: store.error[method] || []
109
- })
110
-
111
- store.collected[method] = [collected]
107
+ if (method === 'all') {
108
+ if (store.before[method] || store.error[method]) {
109
+ const beforeAll = collect({
110
+ before: store.before[method] || [],
111
+ error: store.error[method] || []
112
+ })
113
+ store.collectedAll.before = [beforeAll]
114
+ }
115
+
116
+ if (store.after[method]) {
117
+ const afterAll = collect({
118
+ after: store.after[method] || []
119
+ })
120
+ store.collectedAll.after = [afterAll]
121
+ }
122
+ } else {
123
+ if (store.before[method] || store.after[method] || store.error[method]) {
124
+ const collected = collect({
125
+ before: store.before[method] || [],
126
+ after: store.after[method] || [],
127
+ error: store.error[method] || []
128
+ })
129
+
130
+ store.collected[method] = [collected]
131
+ }
112
132
  }
113
133
  })
114
134
  )
package/src/version.ts CHANGED
@@ -1 +1 @@
1
- export default '5.0.0-pre.35'
1
+ export default '5.0.0-pre.36'