@feathersjs/generators 5.0.10 → 5.0.11

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.11](https://github.com/feathersjs/feathers/compare/v5.0.10...v5.0.11) (2023-10-11)
7
+
8
+ ### Bug Fixes
9
+
10
+ - **knex:** Update all dependencies and Knex peer ([#3308](https://github.com/feathersjs/feathers/issues/3308)) ([d2f9860](https://github.com/feathersjs/feathers/commit/d2f986036c4741cce2339d8abbcc6b2eb037a12a))
11
+ - **schema:** HookContext is now typed in schema ([#3306](https://github.com/feathersjs/feathers/issues/3306)) ([65fab86](https://github.com/feathersjs/feathers/commit/65fab86407b813122f24db928a59986c7286f270))
12
+
6
13
  ## [5.0.10](https://github.com/feathersjs/feathers/compare/v5.0.9...v5.0.10) (2023-10-03)
7
14
 
8
15
  **Note:** Version bump only for package @feathersjs/generators
@@ -9,7 +9,7 @@ const authFieldsTemplate = (authStrategies) => authStrategies
9
9
  password: { type: 'string' }`
10
10
  : ` ${name}Id: { type: 'string' }`)
11
11
  .join(',\n');
12
- const template = ({ camelName, upperName, relative, authStrategies, isEntityService, type, cwd, lib }) => /* ts */ `// For more information about this file see https://dove.feathersjs.com/guides/cli/service.schemas.html
12
+ const template = ({ camelName, upperName, fileName, relative, authStrategies, isEntityService, type, cwd, lib }) => /* ts */ `// For more information about this file see https://dove.feathersjs.com/guides/cli/service.schemas.html
13
13
  import { resolve, getValidator, querySyntax } from '@feathersjs/schema'${type === 'mongodb'
14
14
  ? `
15
15
  import { ObjectIdSchema } from '@feathersjs/schema'`
@@ -20,6 +20,7 @@ ${(0, commons_1.localTemplate)(authStrategies, `import { passwordHash } from '@f
20
20
  import type { HookContext } from '${relative}/declarations'
21
21
  import { dataValidator, queryValidator } from '${relative}/${(0, commons_1.fileExists)(cwd, lib, 'schemas') ? 'schemas/' : '' // This is for legacy backwards compatibility
22
22
  }validators'
23
+ import type { ${upperName}Service } from './${fileName}.class'
23
24
 
24
25
  // Main data model schema
25
26
  export const ${camelName}Schema = {
@@ -37,9 +38,9 @@ export const ${camelName}Schema = {
37
38
  } as const
38
39
  export type ${upperName} = FromSchema<typeof ${camelName}Schema>
39
40
  export const ${camelName}Validator = getValidator(${camelName}Schema, dataValidator)
40
- export const ${camelName}Resolver = resolve<${upperName}, HookContext>({})
41
+ export const ${camelName}Resolver = resolve<${upperName}, HookContext<${upperName}Service>>({})
41
42
 
42
- export const ${camelName}ExternalResolver = resolve<${upperName}, HookContext>({
43
+ export const ${camelName}ExternalResolver = resolve<${upperName}, HookContext<${upperName}Service>>({
43
44
  ${(0, commons_1.localTemplate)(authStrategies, `// The password should never be visible externally
44
45
  password: async () => undefined`)}
45
46
  })
@@ -56,7 +57,7 @@ export const ${camelName}DataSchema = {
56
57
  } as const
57
58
  export type ${upperName}Data = FromSchema<typeof ${camelName}DataSchema>
58
59
  export const ${camelName}DataValidator = getValidator(${camelName}DataSchema, dataValidator)
59
- export const ${camelName}DataResolver = resolve<${upperName}Data, HookContext>({
60
+ export const ${camelName}DataResolver = resolve<${upperName}Data, HookContext<${upperName}Service>>({
60
61
  ${(0, commons_1.localTemplate)(authStrategies, `password: passwordHash({ strategy: 'local' })`)}
61
62
  })
62
63
 
@@ -72,7 +73,7 @@ export const ${camelName}PatchSchema = {
72
73
  } as const
73
74
  export type ${upperName}Patch = FromSchema<typeof ${camelName}PatchSchema>
74
75
  export const ${camelName}PatchValidator = getValidator(${camelName}PatchSchema, dataValidator)
75
- export const ${camelName}PatchResolver = resolve<${upperName}Patch, HookContext>({
76
+ export const ${camelName}PatchResolver = resolve<${upperName}Patch, HookContext<${upperName}Service>>({
76
77
  ${(0, commons_1.localTemplate)(authStrategies, `password: passwordHash({ strategy: 'local' })`)}
77
78
  })
78
79
 
@@ -87,7 +88,7 @@ export const ${camelName}QuerySchema = {
87
88
  } as const
88
89
  export type ${upperName}Query = FromSchema<typeof ${camelName}QuerySchema>
89
90
  export const ${camelName}QueryValidator = getValidator(${camelName}QuerySchema, queryValidator)
90
- export const ${camelName}QueryResolver = resolve<${upperName}Query, HookContext>({
91
+ export const ${camelName}QueryResolver = resolve<${upperName}Query, HookContext<${upperName}Service>>({
91
92
  ${isEntityService
92
93
  ? `
93
94
  // If there is a user (e.g. with authentication), they are only allowed to see their own data
@@ -1 +1 @@
1
- {"version":3,"file":"schema.json.tpl.js","sourceRoot":"","sources":["../../../src/service/templates/schema.json.tpl.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"schema.json.tpl.js","sourceRoot":"","sources":["../../../src/service/templates/schema.json.tpl.ts"],"names":[],"mappings":";;;AAAA,+CAA4D;AAC5D,2CAAuE;AAGvE,MAAM,kBAAkB,GAAG,CAAC,cAAwB,EAAE,EAAE,CACtD,cAAc;KACX,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CACZ,IAAI,KAAK,OAAO;IACd,CAAC,CAAC;iCACuB;IACzB,CAAC,CAAC,OAAO,IAAI,wBAAwB,CACxC;KACA,IAAI,CAAC,KAAK,CAAC,CAAA;AAEhB,MAAM,QAAQ,GAAG,CAAC,EAChB,SAAS,EACT,SAAS,EACT,QAAQ,EACR,QAAQ,EACR,cAAc,EACd,eAAe,EACf,IAAI,EACJ,GAAG,EACH,GAAG,EACqB,EAAE,EAAE,CAAC,QAAQ,CAAC;yEAEtC,IAAI,KAAK,SAAS;IAChB,CAAC,CAAC;oDAC8C;IAChD,CAAC,CAAC,EACN;;EAEE,IAAA,uBAAa,EAAC,cAAc,EAAE,iEAAiE,CAAC;;oCAE9D,QAAQ;iDACK,QAAQ,IACvD,IAAA,oBAAU,EAAC,GAAG,EAAE,GAAG,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,6CAA6C;AACjG;gBACgB,SAAS,qBAAqB,QAAQ;;;eAGvC,SAAS;UACd,SAAS;;;iBAGF,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,MAAM,IAAA,uBAAa,EAAC,cAAc,EAAE,SAAS,EAAE,QAAQ,CAAC;;MAEpG,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,wBAAwB,CAAC,CAAC,CAAC,yBAAyB;MAEzE,eAAe;IACb,CAAC,CAAC,kBAAkB,CAAC,cAAc,CAAC;IACpC,CAAC,CAAC;6BAEN;;;cAGU,SAAS,wBAAwB,SAAS;eACzC,SAAS,4BAA4B,SAAS;eAC9C,SAAS,sBAAsB,SAAS,iBAAiB,SAAS;;eAElE,SAAS,8BAA8B,SAAS,iBAAiB,SAAS;IACrF,IAAA,uBAAa,EACb,cAAc,EACd;kCAC8B,CAC/B;;;;eAIY,SAAS;UACd,SAAS;;;gBAGH,IAAA,uBAAa,EAAC,cAAc,EAAE,SAAS,EAAE,QAAQ,CAAC;;SAEzD,SAAS;;;cAGJ,SAAS,4BAA4B,SAAS;eAC7C,SAAS,gCAAgC,SAAS;eAClD,SAAS,0BAA0B,SAAS,qBAAqB,SAAS;IACrF,IAAA,uBAAa,EAAC,cAAc,EAAE,+CAA+C,CAAC;;;;eAInE,SAAS;UACd,SAAS;;;;;SAKV,SAAS;;;cAGJ,SAAS,6BAA6B,SAAS;eAC9C,SAAS,iCAAiC,SAAS;eACnD,SAAS,2BAA2B,SAAS,sBAAsB,SAAS;IACvF,IAAA,uBAAa,EAAC,cAAc,EAAE,+CAA+C,CAAC;;;;eAInE,SAAS;UACd,SAAS;;;;qBAIE,SAAS;;;cAGhB,SAAS,6BAA6B,SAAS;eAC9C,SAAS,iCAAiC,SAAS;eACnD,SAAS,2BAA2B,SAAS,sBAAsB,SAAS;IAEvF,eAAe;IACb,CAAC,CAAC;;IAEJ,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI;;mCAEF,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI;;;;IAIhE;IACE,CAAC,CAAC,EACN;;CAED,CAAA;AAEM,MAAM,QAAQ,GAAG,CAAC,GAA4B,EAAE,EAAE,CACvD,IAAA,kBAAS,EAAC,GAAG,CAAC,CAAC,IAAI,CACjB,IAAA,aAAI,EACF,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,MAAM,KAAK,MAAM,EACjC,IAAA,sBAAY,EACV,QAAQ,EACR,IAAA,eAAM,EAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,QAAQ,EAA2B,EAAE,EAAE,CAAC;IAC7D,GAAG;IACH,UAAU;IACV,GAAG,MAAM;IACT,GAAG,QAAQ,SAAS;CACrB,CAAC,CACH,CACF,CACF,CAAA;AAdU,QAAA,QAAQ,YAclB"}
@@ -15,6 +15,7 @@ const authFieldsTemplate = (authStrategies: string[]) =>
15
15
  const template = ({
16
16
  camelName,
17
17
  upperName,
18
+ fileName,
18
19
  relative,
19
20
  authStrategies,
20
21
  isEntityService,
@@ -35,6 +36,7 @@ import type { HookContext } from '${relative}/declarations'
35
36
  import { dataValidator, queryValidator } from '${relative}/${
36
37
  fileExists(cwd, lib, 'schemas') ? 'schemas/' : '' // This is for legacy backwards compatibility
37
38
  }validators'
39
+ import type { ${upperName}Service } from './${fileName}.class'
38
40
 
39
41
  // Main data model schema
40
42
  export const ${camelName}Schema = {
@@ -54,9 +56,9 @@ export const ${camelName}Schema = {
54
56
  } as const
55
57
  export type ${upperName} = FromSchema<typeof ${camelName}Schema>
56
58
  export const ${camelName}Validator = getValidator(${camelName}Schema, dataValidator)
57
- export const ${camelName}Resolver = resolve<${upperName}, HookContext>({})
59
+ export const ${camelName}Resolver = resolve<${upperName}, HookContext<${upperName}Service>>({})
58
60
 
59
- export const ${camelName}ExternalResolver = resolve<${upperName}, HookContext>({
61
+ export const ${camelName}ExternalResolver = resolve<${upperName}, HookContext<${upperName}Service>>({
60
62
  ${localTemplate(
61
63
  authStrategies,
62
64
  `// The password should never be visible externally
@@ -76,7 +78,7 @@ export const ${camelName}DataSchema = {
76
78
  } as const
77
79
  export type ${upperName}Data = FromSchema<typeof ${camelName}DataSchema>
78
80
  export const ${camelName}DataValidator = getValidator(${camelName}DataSchema, dataValidator)
79
- export const ${camelName}DataResolver = resolve<${upperName}Data, HookContext>({
81
+ export const ${camelName}DataResolver = resolve<${upperName}Data, HookContext<${upperName}Service>>({
80
82
  ${localTemplate(authStrategies, `password: passwordHash({ strategy: 'local' })`)}
81
83
  })
82
84
 
@@ -92,7 +94,7 @@ export const ${camelName}PatchSchema = {
92
94
  } as const
93
95
  export type ${upperName}Patch = FromSchema<typeof ${camelName}PatchSchema>
94
96
  export const ${camelName}PatchValidator = getValidator(${camelName}PatchSchema, dataValidator)
95
- export const ${camelName}PatchResolver = resolve<${upperName}Patch, HookContext>({
97
+ export const ${camelName}PatchResolver = resolve<${upperName}Patch, HookContext<${upperName}Service>>({
96
98
  ${localTemplate(authStrategies, `password: passwordHash({ strategy: 'local' })`)}
97
99
  })
98
100
 
@@ -107,7 +109,7 @@ export const ${camelName}QuerySchema = {
107
109
  } as const
108
110
  export type ${upperName}Query = FromSchema<typeof ${camelName}QuerySchema>
109
111
  export const ${camelName}QueryValidator = getValidator(${camelName}QuerySchema, queryValidator)
110
- export const ${camelName}QueryResolver = resolve<${upperName}Query, HookContext>({
112
+ export const ${camelName}QueryResolver = resolve<${upperName}Query, HookContext<${upperName}Service>>({
111
113
  ${
112
114
  isEntityService
113
115
  ? `
@@ -9,7 +9,7 @@ const authFieldsTemplate = (authStrategies) => authStrategies
9
9
  password: Type.Optional(Type.String())`
10
10
  : ` ${name}Id: Type.Optional(Type.String())`)
11
11
  .join(',\n');
12
- const template = ({ camelName, upperName, relative, authStrategies, isEntityService, type, cwd, lib }) => /* ts */ `// // For more information about this file see https://dove.feathersjs.com/guides/cli/service.schemas.html
12
+ const template = ({ camelName, upperName, fileName, relative, authStrategies, isEntityService, type, cwd, lib }) => /* ts */ `// // For more information about this file see https://dove.feathersjs.com/guides/cli/service.schemas.html
13
13
  import { resolve } from '@feathersjs/schema'
14
14
  import { Type, getValidator, querySyntax } from '@feathersjs/typebox'${type === 'mongodb'
15
15
  ? `
@@ -21,6 +21,7 @@ ${(0, commons_1.localTemplate)(authStrategies, `import { passwordHash } from '@f
21
21
  import type { HookContext } from '${relative}/declarations'
22
22
  import { dataValidator, queryValidator } from '${relative}/${(0, commons_1.fileExists)(cwd, lib, 'schemas') ? 'schemas/' : '' // This is for legacy backwards compatibility
23
23
  }validators'
24
+ import type { ${upperName}Service } from './${fileName}.class'
24
25
 
25
26
  // Main data model schema
26
27
  export const ${camelName}Schema = Type.Object({
@@ -29,9 +30,9 @@ export const ${camelName}Schema = Type.Object({
29
30
  }, { $id: '${upperName}', additionalProperties: false })
30
31
  export type ${upperName} = Static<typeof ${camelName}Schema>
31
32
  export const ${camelName}Validator = getValidator(${camelName}Schema, dataValidator)
32
- export const ${camelName}Resolver = resolve<${upperName}, HookContext>({})
33
+ export const ${camelName}Resolver = resolve<${upperName}, HookContext<${upperName}Service>>({})
33
34
 
34
- export const ${camelName}ExternalResolver = resolve<${upperName}, HookContext>({
35
+ export const ${camelName}ExternalResolver = resolve<${upperName}, HookContext<${upperName}Service>>({
35
36
  ${(0, commons_1.localTemplate)(authStrategies, `// The password should never be visible externally
36
37
  password: async () => undefined`)}
37
38
  })
@@ -46,7 +47,7 @@ export const ${camelName}DataSchema = Type.Pick(${camelName}Schema, [
46
47
  })
47
48
  export type ${upperName}Data = Static<typeof ${camelName}DataSchema>
48
49
  export const ${camelName}DataValidator = getValidator(${camelName}DataSchema, dataValidator)
49
- export const ${camelName}DataResolver = resolve<${upperName}, HookContext>({
50
+ export const ${camelName}DataResolver = resolve<${upperName}, HookContext<${upperName}Service>>({
50
51
  ${(0, commons_1.localTemplate)(authStrategies, `password: passwordHash({ strategy: 'local' })`)}
51
52
  })
52
53
 
@@ -56,7 +57,7 @@ export const ${camelName}PatchSchema = Type.Partial(${camelName}Schema, {
56
57
  })
57
58
  export type ${upperName}Patch = Static<typeof ${camelName}PatchSchema>
58
59
  export const ${camelName}PatchValidator = getValidator(${camelName}PatchSchema, dataValidator)
59
- export const ${camelName}PatchResolver = resolve<${upperName}, HookContext>({
60
+ export const ${camelName}PatchResolver = resolve<${upperName}, HookContext<${upperName}Service>>({
60
61
  ${(0, commons_1.localTemplate)(authStrategies, `password: passwordHash({ strategy: 'local' })`)}
61
62
  })
62
63
 
@@ -73,7 +74,7 @@ export const ${camelName}QuerySchema = Type.Intersect([
73
74
  ], { additionalProperties: false })
74
75
  export type ${upperName}Query = Static<typeof ${camelName}QuerySchema>
75
76
  export const ${camelName}QueryValidator = getValidator(${camelName}QuerySchema, queryValidator)
76
- export const ${camelName}QueryResolver = resolve<${upperName}Query, HookContext>({
77
+ export const ${camelName}QueryResolver = resolve<${upperName}Query, HookContext<${upperName}Service>>({
77
78
  ${isEntityService
78
79
  ? `
79
80
  // If there is a user (e.g. with authentication), they are only allowed to see their own data
@@ -1 +1 @@
1
- {"version":3,"file":"schema.typebox.tpl.js","sourceRoot":"","sources":["../../../src/service/templates/schema.typebox.tpl.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"schema.typebox.tpl.js","sourceRoot":"","sources":["../../../src/service/templates/schema.typebox.tpl.ts"],"names":[],"mappings":"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"}
@@ -15,6 +15,7 @@ const authFieldsTemplate = (authStrategies: string[]) =>
15
15
  const template = ({
16
16
  camelName,
17
17
  upperName,
18
+ fileName,
18
19
  relative,
19
20
  authStrategies,
20
21
  isEntityService,
@@ -36,6 +37,7 @@ import type { HookContext } from '${relative}/declarations'
36
37
  import { dataValidator, queryValidator } from '${relative}/${
37
38
  fileExists(cwd, lib, 'schemas') ? 'schemas/' : '' // This is for legacy backwards compatibility
38
39
  }validators'
40
+ import type { ${upperName}Service } from './${fileName}.class'
39
41
 
40
42
  // Main data model schema
41
43
  export const ${camelName}Schema = Type.Object({
@@ -44,9 +46,9 @@ export const ${camelName}Schema = Type.Object({
44
46
  }, { $id: '${upperName}', additionalProperties: false })
45
47
  export type ${upperName} = Static<typeof ${camelName}Schema>
46
48
  export const ${camelName}Validator = getValidator(${camelName}Schema, dataValidator)
47
- export const ${camelName}Resolver = resolve<${upperName}, HookContext>({})
49
+ export const ${camelName}Resolver = resolve<${upperName}, HookContext<${upperName}Service>>({})
48
50
 
49
- export const ${camelName}ExternalResolver = resolve<${upperName}, HookContext>({
51
+ export const ${camelName}ExternalResolver = resolve<${upperName}, HookContext<${upperName}Service>>({
50
52
  ${localTemplate(
51
53
  authStrategies,
52
54
  `// The password should never be visible externally
@@ -66,7 +68,7 @@ export const ${camelName}DataSchema = Type.Pick(${camelName}Schema, [
66
68
  })
67
69
  export type ${upperName}Data = Static<typeof ${camelName}DataSchema>
68
70
  export const ${camelName}DataValidator = getValidator(${camelName}DataSchema, dataValidator)
69
- export const ${camelName}DataResolver = resolve<${upperName}, HookContext>({
71
+ export const ${camelName}DataResolver = resolve<${upperName}, HookContext<${upperName}Service>>({
70
72
  ${localTemplate(authStrategies, `password: passwordHash({ strategy: 'local' })`)}
71
73
  })
72
74
 
@@ -76,7 +78,7 @@ export const ${camelName}PatchSchema = Type.Partial(${camelName}Schema, {
76
78
  })
77
79
  export type ${upperName}Patch = Static<typeof ${camelName}PatchSchema>
78
80
  export const ${camelName}PatchValidator = getValidator(${camelName}PatchSchema, dataValidator)
79
- export const ${camelName}PatchResolver = resolve<${upperName}, HookContext>({
81
+ export const ${camelName}PatchResolver = resolve<${upperName}, HookContext<${upperName}Service>>({
80
82
  ${localTemplate(authStrategies, `password: passwordHash({ strategy: 'local' })`)}
81
83
  })
82
84
 
@@ -95,7 +97,7 @@ export const ${camelName}QuerySchema = Type.Intersect([
95
97
  ], { additionalProperties: false })
96
98
  export type ${upperName}Query = Static<typeof ${camelName}QuerySchema>
97
99
  export const ${camelName}QueryValidator = getValidator(${camelName}QuerySchema, queryValidator)
98
- export const ${camelName}QueryResolver = resolve<${upperName}Query, HookContext>({
100
+ export const ${camelName}QueryResolver = resolve<${upperName}Query, HookContext<${upperName}Service>>({
99
101
  ${
100
102
  isEntityService
101
103
  ? `
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@feathersjs/generators",
3
- "version": "5.0.10",
3
+ "version": "5.0.11",
4
4
  "description": "Feathers CLI core generators, powered by Pinion",
5
5
  "homepage": "https://feathersjs.com",
6
6
  "keywords": [
@@ -59,27 +59,28 @@
59
59
  "typescript": "^5.2.2"
60
60
  },
61
61
  "devDependencies": {
62
- "@feathersjs/adapter-commons": "^5.0.10",
63
- "@feathersjs/authentication": "^5.0.10",
64
- "@feathersjs/authentication-client": "^5.0.10",
65
- "@feathersjs/authentication-local": "^5.0.10",
66
- "@feathersjs/authentication-oauth": "^5.0.10",
67
- "@feathersjs/configuration": "^5.0.10",
68
- "@feathersjs/errors": "^5.0.10",
69
- "@feathersjs/express": "^5.0.10",
70
- "@feathersjs/feathers": "^5.0.10",
71
- "@feathersjs/knex": "^5.0.10",
72
- "@feathersjs/koa": "^5.0.10",
73
- "@feathersjs/mongodb": "^5.0.10",
74
- "@feathersjs/rest-client": "^5.0.10",
75
- "@feathersjs/schema": "^5.0.10",
76
- "@feathersjs/socketio": "^5.0.10",
77
- "@feathersjs/transport-commons": "^5.0.10",
78
- "@feathersjs/typebox": "^5.0.10",
62
+ "@feathersjs/adapter-commons": "^5.0.11",
63
+ "@feathersjs/authentication": "^5.0.11",
64
+ "@feathersjs/authentication-client": "^5.0.11",
65
+ "@feathersjs/authentication-local": "^5.0.11",
66
+ "@feathersjs/authentication-oauth": "^5.0.11",
67
+ "@feathersjs/configuration": "^5.0.11",
68
+ "@feathersjs/errors": "^5.0.11",
69
+ "@feathersjs/express": "^5.0.11",
70
+ "@feathersjs/feathers": "^5.0.11",
71
+ "@feathersjs/knex": "^5.0.11",
72
+ "@feathersjs/koa": "^5.0.11",
73
+ "@feathersjs/mongodb": "^5.0.11",
74
+ "@feathersjs/rest-client": "^5.0.11",
75
+ "@feathersjs/schema": "^5.0.11",
76
+ "@feathersjs/socketio": "^5.0.11",
77
+ "@feathersjs/transport-commons": "^5.0.11",
78
+ "@feathersjs/typebox": "^5.0.11",
79
79
  "@types/mocha": "^10.0.2",
80
- "@types/node": "^20.8.2",
80
+ "@types/node": "^20.8.4",
81
81
  "@types/prettier": "^2.7.3",
82
82
  "axios": "^1.5.1",
83
+ "knex": "^3.0.1",
83
84
  "mocha": "^10.2.0",
84
85
  "mongodb": "^6.1.0",
85
86
  "mssql": "^10.0.1",
@@ -88,8 +89,8 @@
88
89
  "shx": "^0.3.4",
89
90
  "sqlite3": "^5.1.6",
90
91
  "ts-node": "^10.9.1",
91
- "type-fest": "^4.3.3",
92
+ "type-fest": "^4.4.0",
92
93
  "typescript": "^5.2.2"
93
94
  },
94
- "gitHead": "463dedcd35b16e43bc55e04df877ca82ed38dcea"
95
+ "gitHead": "91294817845178ff0e9d4709127cb3e46d3562be"
95
96
  }