@feathersjs/authentication-oauth 5.0.24 → 5.0.25

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.25](https://github.com/feathersjs/feathers/compare/v5.0.24...v5.0.25) (2024-05-03)
7
+
8
+ ### Bug Fixes
9
+
10
+ - **oauth:** Export OAuthService type ([#3479](https://github.com/feathersjs/feathers/issues/3479)) ([e7185cd](https://github.com/feathersjs/feathers/commit/e7185cde63990a0d24a7180c63b61dbc8ef6cd5b))
11
+ - Reduce usage of lodash ([#3455](https://github.com/feathersjs/feathers/issues/3455)) ([8ce807a](https://github.com/feathersjs/feathers/commit/8ce807a5ca53ff5b8d5107a0656c6329404e6e6c))
12
+
6
13
  ## [5.0.24](https://github.com/feathersjs/feathers/compare/v5.0.23...v5.0.24) (2024-03-13)
7
14
 
8
15
  **Note:** Version bump only for package @feathersjs/authentication-oauth
package/lib/index.d.ts CHANGED
@@ -1,5 +1,6 @@
1
1
  import { Application } from '@feathersjs/feathers';
2
2
  import { OAuthStrategy, OAuthProfile } from './strategy';
3
+ import { OAuthService } from './service';
3
4
  import { OauthSetupSettings } from './utils';
4
- export { OauthSetupSettings, OAuthStrategy, OAuthProfile };
5
+ export { OauthSetupSettings, OAuthStrategy, OAuthProfile, OAuthService };
5
6
  export declare const oauth: (settings?: Partial<OauthSetupSettings>) => (app: Application) => void;
package/lib/index.js CHANGED
@@ -1,11 +1,12 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.oauth = exports.OAuthStrategy = void 0;
3
+ exports.oauth = exports.OAuthService = exports.OAuthStrategy = void 0;
4
4
  const commons_1 = require("@feathersjs/commons");
5
5
  const schema_1 = require("@feathersjs/schema");
6
6
  const strategy_1 = require("./strategy");
7
7
  Object.defineProperty(exports, "OAuthStrategy", { enumerable: true, get: function () { return strategy_1.OAuthStrategy; } });
8
8
  const service_1 = require("./service");
9
+ Object.defineProperty(exports, "OAuthService", { enumerable: true, get: function () { return service_1.OAuthService; } });
9
10
  const utils_1 = require("./utils");
10
11
  const debug = (0, commons_1.createDebug)('@feathersjs/authentication-oauth');
11
12
  const oauth = (settings = {}) => (app) => {
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AACA,iDAAiD;AACjD,+CAAoD;AAEpD,yCAAwD;AAM3B,8FANpB,wBAAa,OAMoB;AAL1C,uCAAsD;AACtD,mCAA0F;AAE1F,MAAM,KAAK,GAAG,IAAA,qBAAW,EAAC,kCAAkC,CAAC,CAAA;AAItD,MAAM,KAAK,GAChB,CAAC,WAAwC,EAAE,EAAE,EAAE,CAC/C,CAAC,GAAgB,EAAE,EAAE;IACnB,MAAM,WAAW,GAAG,GAAG,CAAC,qBAAqB,CAAC,CAAC,CAAC,GAAG,CAAC,qBAAqB,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;IAEtG,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CACb,0FAA0F,CAC3F,CAAA;IACH,CAAC;IAED,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;QACrC,KAAK,CAAC,qFAAqF,CAAC,CAAA;QAC5F,OAAM;IACR,CAAC;IAED,MAAM,YAAY,GAAG;QACnB,YAAY,EAAE,KAAK;QACnB,GAAG,QAAQ;KACZ,CAAA;IAED,MAAM,WAAW,GAAG,IAAA,sBAAc,EAAC,WAAW,CAAC,CAAA;IAC/C,MAAM,cAAc,GAAG,IAAA,oCAA4B,EAAC,WAAW,EAAE,YAAY,CAAC,CAAA;IAC9E,MAAM,WAAW,GAAG,GAAG,WAAW,CAAC,QAAQ,CAAC,MAAM,IAAI,OAAO,YAAY,CAAA;IAEzE,GAAG,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,sBAAY,CAAC,WAAW,EAAE,YAAY,CAAC,EAAE,cAAc,CAAC,CAAA;IAEjF,MAAM,YAAY,GAAG,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,CAAA;IAE7C,YAAY,CAAC,KAAK,CAAC;QACjB,MAAM,EAAE,EAAE,GAAG,EAAE,CAAC,IAAA,wBAAe,GAAE,EAAE,IAAA,sBAAY,GAAE,CAAC,EAAE;KACrD,CAAC,CAAA;IAEF,IAAI,OAAO,YAAY,CAAC,OAAO,KAAK,UAAU,EAAE,CAAC;QAC/C,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAA;IAC9C,CAAC;AACH,CAAC,CAAA;AApCU,QAAA,KAAK,SAoCf"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AACA,iDAAiD;AACjD,+CAAoD;AAEpD,yCAAwD;AAM3B,8FANpB,wBAAa,OAMoB;AAL1C,uCAAsD;AAKI,6FALnC,sBAAY,OAKmC;AAJtE,mCAA0F;AAE1F,MAAM,KAAK,GAAG,IAAA,qBAAW,EAAC,kCAAkC,CAAC,CAAA;AAItD,MAAM,KAAK,GAChB,CAAC,WAAwC,EAAE,EAAE,EAAE,CAC/C,CAAC,GAAgB,EAAE,EAAE;IACnB,MAAM,WAAW,GAAG,GAAG,CAAC,qBAAqB,CAAC,CAAC,CAAC,GAAG,CAAC,qBAAqB,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;IAEtG,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CACb,0FAA0F,CAC3F,CAAA;IACH,CAAC;IAED,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;QACrC,KAAK,CAAC,qFAAqF,CAAC,CAAA;QAC5F,OAAM;IACR,CAAC;IAED,MAAM,YAAY,GAAG;QACnB,YAAY,EAAE,KAAK;QACnB,GAAG,QAAQ;KACZ,CAAA;IAED,MAAM,WAAW,GAAG,IAAA,sBAAc,EAAC,WAAW,CAAC,CAAA;IAC/C,MAAM,cAAc,GAAG,IAAA,oCAA4B,EAAC,WAAW,EAAE,YAAY,CAAC,CAAA;IAC9E,MAAM,WAAW,GAAG,GAAG,WAAW,CAAC,QAAQ,CAAC,MAAM,IAAI,OAAO,YAAY,CAAA;IAEzE,GAAG,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,sBAAY,CAAC,WAAW,EAAE,YAAY,CAAC,EAAE,cAAc,CAAC,CAAA;IAEjF,MAAM,YAAY,GAAG,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,CAAA;IAE7C,YAAY,CAAC,KAAK,CAAC;QACjB,MAAM,EAAE,EAAE,GAAG,EAAE,CAAC,IAAA,wBAAe,GAAE,EAAE,IAAA,sBAAY,GAAE,CAAC,EAAE;KACrD,CAAC,CAAA;IAEF,IAAI,OAAO,YAAY,CAAC,OAAO,KAAK,UAAU,EAAE,CAAC;QAC/C,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAA;IAC9C,CAAC;AACH,CAAC,CAAA;AApCU,QAAA,KAAK,SAoCf"}
package/lib/utils.js CHANGED
@@ -8,7 +8,6 @@ require("@feathersjs/koa");
8
8
  require("@feathersjs/express");
9
9
  const cookie_session_1 = __importDefault(require("cookie-session"));
10
10
  const koa_session_1 = __importDefault(require("koa-session"));
11
- const lodash_1 = require("lodash");
12
11
  const getGrantConfig = (service) => {
13
12
  const { app, configuration: { oauth } } = service;
14
13
  // Set up all the defaults
@@ -22,23 +21,28 @@ const getGrantConfig = (service) => {
22
21
  host += `:${port}`;
23
22
  }
24
23
  }
25
- const grant = (0, lodash_1.defaultsDeep)({}, (0, lodash_1.omit)(oauth, ['redirect', 'origins']), {
24
+ // omit 'redirect' and 'origins' from oauth
25
+ const { redirect, origins, ...oauthConfig } = oauth;
26
+ const grant = {
27
+ ...oauthConfig,
26
28
  defaults: {
27
29
  prefix: '/oauth',
28
30
  origin: `${protocol}://${host}`,
29
31
  transport: 'state',
30
- response: ['tokens', 'raw', 'profile']
32
+ response: ['tokens', 'raw', 'profile'],
33
+ ...oauthConfig.defaults
31
34
  }
32
- });
35
+ };
33
36
  const getUrl = (url) => {
34
37
  const { defaults } = grant;
35
38
  return `${defaults.origin}${defaults.prefix}/${url}`;
36
39
  };
37
- (0, lodash_1.each)(grant, (value, name) => {
40
+ // iterate over grant object with key and value
41
+ for (const [name, value] of Object.entries(grant)) {
38
42
  if (name !== 'defaults') {
39
43
  value.redirect_uri = value.redirect_uri || getUrl(`${name}/callback`);
40
44
  }
41
- });
45
+ }
42
46
  return grant;
43
47
  };
44
48
  exports.getGrantConfig = getGrantConfig;
package/lib/utils.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@feathersjs/authentication-oauth",
3
3
  "description": "oAuth 1 and 2 authentication for Feathers. Powered by Grant.",
4
- "version": "5.0.24",
4
+ "version": "5.0.25",
5
5
  "homepage": "https://feathersjs.com",
6
6
  "main": "lib/",
7
7
  "types": "lib/",
@@ -54,34 +54,32 @@
54
54
  "access": "public"
55
55
  },
56
56
  "dependencies": {
57
- "@feathersjs/authentication": "^5.0.24",
58
- "@feathersjs/commons": "^5.0.24",
59
- "@feathersjs/errors": "^5.0.24",
60
- "@feathersjs/express": "^5.0.24",
61
- "@feathersjs/feathers": "^5.0.24",
62
- "@feathersjs/koa": "^5.0.24",
63
- "@feathersjs/schema": "^5.0.24",
57
+ "@feathersjs/authentication": "^5.0.25",
58
+ "@feathersjs/commons": "^5.0.25",
59
+ "@feathersjs/errors": "^5.0.25",
60
+ "@feathersjs/express": "^5.0.25",
61
+ "@feathersjs/feathers": "^5.0.25",
62
+ "@feathersjs/koa": "^5.0.25",
63
+ "@feathersjs/schema": "^5.0.25",
64
64
  "cookie-session": "^2.1.0",
65
65
  "grant": "^5.4.22",
66
66
  "koa-session": "^6.4.0",
67
- "lodash": "^4.17.21",
68
- "qs": "^6.12.0"
67
+ "qs": "^6.12.1"
69
68
  },
70
69
  "devDependencies": {
71
- "@feathersjs/memory": "^5.0.24",
72
- "@types/cookie-session": "^2.0.48",
70
+ "@feathersjs/memory": "^5.0.25",
71
+ "@types/cookie-session": "^2.0.49",
73
72
  "@types/express": "^4.17.21",
74
73
  "@types/koa-session": "^6.4.5",
75
- "@types/lodash": "^4.17.0",
76
74
  "@types/mocha": "^10.0.6",
77
- "@types/node": "^20.11.26",
75
+ "@types/node": "^20.12.8",
78
76
  "@types/tough-cookie": "^4.0.5",
79
- "axios": "^1.6.7",
80
- "mocha": "^10.3.0",
77
+ "axios": "^1.6.8",
78
+ "mocha": "^10.4.0",
81
79
  "shx": "^0.3.4",
82
- "tough-cookie": "^4.1.3",
80
+ "tough-cookie": "^4.1.4",
83
81
  "ts-node": "^10.9.2",
84
- "typescript": "^5.4.2"
82
+ "typescript": "^5.4.5"
85
83
  },
86
- "gitHead": "09519fb1c454ea718747a09797bc6dfd3b6a79a3"
84
+ "gitHead": "01bc3339efd27df1b3e8d4f6a82152faf6c5ced3"
87
85
  }
package/src/index.ts CHANGED
@@ -8,7 +8,7 @@ import { getGrantConfig, authenticationServiceOptions, OauthSetupSettings } from
8
8
 
9
9
  const debug = createDebug('@feathersjs/authentication-oauth')
10
10
 
11
- export { OauthSetupSettings, OAuthStrategy, OAuthProfile }
11
+ export { OauthSetupSettings, OAuthStrategy, OAuthProfile, OAuthService }
12
12
 
13
13
  export const oauth =
14
14
  (settings: Partial<OauthSetupSettings> = {}) =>
package/src/utils.ts CHANGED
@@ -11,8 +11,6 @@ import koaCookieSession from 'koa-session'
11
11
  import { AuthenticationService } from '@feathersjs/authentication'
12
12
  import { GrantConfig } from 'grant'
13
13
 
14
- import { defaultsDeep, each, omit } from 'lodash'
15
-
16
14
  export interface OauthSetupSettings {
17
15
  linkStrategy: string
18
16
  authService?: string
@@ -38,25 +36,31 @@ export const getGrantConfig = (service: AuthenticationService): GrantConfig => {
38
36
  }
39
37
  }
40
38
 
41
- const grant: GrantConfig = defaultsDeep({}, omit(oauth, ['redirect', 'origins']), {
39
+ // omit 'redirect' and 'origins' from oauth
40
+ const { redirect, origins, ...oauthConfig } = oauth
41
+
42
+ const grant: GrantConfig = {
43
+ ...oauthConfig,
42
44
  defaults: {
43
45
  prefix: '/oauth',
44
46
  origin: `${protocol}://${host}`,
45
47
  transport: 'state',
46
- response: ['tokens', 'raw', 'profile']
48
+ response: ['tokens', 'raw', 'profile'],
49
+ ...oauthConfig.defaults
47
50
  }
48
- })
51
+ }
49
52
 
50
53
  const getUrl = (url: string) => {
51
54
  const { defaults } = grant
52
55
  return `${defaults.origin}${defaults.prefix}/${url}`
53
56
  }
54
57
 
55
- each(grant, (value, name) => {
58
+ // iterate over grant object with key and value
59
+ for (const [name, value] of Object.entries(grant)) {
56
60
  if (name !== 'defaults') {
57
61
  value.redirect_uri = value.redirect_uri || getUrl(`${name}/callback`)
58
62
  }
59
- })
63
+ }
60
64
 
61
65
  return grant
62
66
  }