@feathersjs/generators 5.0.0-pre.36 → 5.0.0-pre.37
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 +12 -0
- package/lib/app/templates/configuration.tpl.js +1 -0
- package/lib/app/templates/configuration.tpl.js.map +1 -1
- package/lib/app/templates/configuration.tpl.ts +1 -0
- package/lib/authentication/templates/knex.tpl.js +1 -9
- package/lib/authentication/templates/knex.tpl.js.map +1 -1
- package/lib/authentication/templates/knex.tpl.ts +5 -11
- package/lib/authentication/templates/schema.json.tpl.js +9 -4
- package/lib/authentication/templates/schema.json.tpl.js.map +1 -1
- package/lib/authentication/templates/schema.json.tpl.ts +11 -4
- package/lib/authentication/templates/schema.typebox.tpl.js +1 -1
- package/lib/authentication/templates/schema.typebox.tpl.js.map +1 -1
- package/lib/authentication/templates/schema.typebox.tpl.ts +1 -1
- package/lib/commons.d.ts +5 -0
- package/lib/commons.js +15 -1
- package/lib/commons.js.map +1 -1
- package/lib/commons.ts +17 -0
- package/lib/connection/templates/mongodb.tpl.js +7 -1
- package/lib/connection/templates/mongodb.tpl.js.map +1 -1
- package/lib/connection/templates/mongodb.tpl.ts +9 -1
- package/lib/service/templates/schema.json.tpl.js +8 -3
- package/lib/service/templates/schema.json.tpl.js.map +1 -1
- package/lib/service/templates/schema.json.tpl.ts +10 -3
- package/lib/service/templates/schema.typebox.tpl.js +1 -1
- package/lib/service/templates/schema.typebox.tpl.js.map +1 -1
- package/lib/service/templates/schema.typebox.tpl.ts +1 -1
- package/lib/service/type/knex.tpl.js +1 -5
- package/lib/service/type/knex.tpl.js.map +1 -1
- package/lib/service/type/knex.tpl.ts +2 -7
- package/package.json +27 -22
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,18 @@
|
|
|
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.37](https://github.com/feathersjs/feathers/compare/v5.0.0-pre.36...v5.0.0-pre.37) (2023-02-09)
|
|
7
|
+
|
|
8
|
+
### Bug Fixes
|
|
9
|
+
|
|
10
|
+
- **generators:** Add schema selection to CI test matrix ([#3035](https://github.com/feathersjs/feathers/issues/3035)) ([7484b16](https://github.com/feathersjs/feathers/commit/7484b164fba4ac2ee379dc5c6363f964f45e94d3))
|
|
11
|
+
- **generators:** Fix Knex migration generated filename ([#3033](https://github.com/feathersjs/feathers/issues/3033)) ([1ac18a7](https://github.com/feathersjs/feathers/commit/1ac18a7143173d973af982772678834f7a7334f7))
|
|
12
|
+
- **generators:** Generated app does not start when choosing JSON schema ([#3034](https://github.com/feathersjs/feathers/issues/3034)) ([7b8250b](https://github.com/feathersjs/feathers/commit/7b8250bd535c3c5ec7429a65139335ad43616ae0))
|
|
13
|
+
|
|
14
|
+
### Features
|
|
15
|
+
|
|
16
|
+
- **mongodb:** Add Object ID keyword converter and update MongoDB CLI & docs ([#3041](https://github.com/feathersjs/feathers/issues/3041)) ([ca0994e](https://github.com/feathersjs/feathers/commit/ca0994eaecb5a31f310bc980d106834e11f24f41))
|
|
17
|
+
|
|
6
18
|
# [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
19
|
|
|
8
20
|
### Bug Fixes
|
|
@@ -29,6 +29,7 @@ import type { FromSchema } from '@feathersjs/schema'
|
|
|
29
29
|
import { dataValidator } from './validators'
|
|
30
30
|
|
|
31
31
|
export const configurationSchema = {
|
|
32
|
+
$id: 'configuration',
|
|
32
33
|
type: 'object',
|
|
33
34
|
additionalProperties: false,
|
|
34
35
|
required: [ 'host', 'port', 'public' ],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"configuration.tpl.js","sourceRoot":"","sources":["../../../src/app/templates/configuration.tpl.ts"],"names":[],"mappings":";;;AAAA,+CAAiE;AACjE,2CAA4C;AAG5C,MAAM,aAAa,GAAG,CAAC,EAAuB,EAAE,EAAE,CAAC,CAAC;IAClD,IAAI,EAAE,WAAW;IACjB,IAAI,EAAE,IAAI;IACV,MAAM,EAAE,WAAW;IACnB,OAAO,EAAE,CAAC,uBAAuB,CAAC;IAClC,QAAQ,EAAE;QACR,OAAO,EAAE,EAAE;QACX,GAAG,EAAE,EAAE;KACR;CACF,CAAC,CAAA;AAEF,MAAM,iBAAiB,GAAG;IACxB,IAAI,EAAE;QACJ,MAAM,EAAE,MAAM;QACd,QAAQ,EAAE,QAAQ;KACnB;IACD,IAAI,EAAE,UAAU;CACjB,CAAA;AAED,MAAM,UAAU,GAAG;IACjB,IAAI,EAAE,IAAI;CACX,CAAA;AAED,MAAM,yBAAyB,GAC7B,CAAC,EAAuB,EAAE,EAAE,CAAC,QAAQ,CAAC
|
|
1
|
+
{"version":3,"file":"configuration.tpl.js","sourceRoot":"","sources":["../../../src/app/templates/configuration.tpl.ts"],"names":[],"mappings":";;;AAAA,+CAAiE;AACjE,2CAA4C;AAG5C,MAAM,aAAa,GAAG,CAAC,EAAuB,EAAE,EAAE,CAAC,CAAC;IAClD,IAAI,EAAE,WAAW;IACjB,IAAI,EAAE,IAAI;IACV,MAAM,EAAE,WAAW;IACnB,OAAO,EAAE,CAAC,uBAAuB,CAAC;IAClC,QAAQ,EAAE;QACR,OAAO,EAAE,EAAE;QACX,GAAG,EAAE,EAAE;KACR;CACF,CAAC,CAAA;AAEF,MAAM,iBAAiB,GAAG;IACxB,IAAI,EAAE;QACJ,MAAM,EAAE,MAAM;QACd,QAAQ,EAAE,QAAQ;KACnB;IACD,IAAI,EAAE,UAAU;CACjB,CAAA;AAED,MAAM,UAAU,GAAG;IACjB,IAAI,EAAE,IAAI;CACX,CAAA;AAED,MAAM,yBAAyB,GAC7B,CAAC,EAAuB,EAAE,EAAE,CAAC,QAAQ,CAAC;;;;;;;;;;;;;;;;;;;;;CAqBvC,CAAA;AAED,MAAM,4BAA4B,GAChC,CAAC,EAAuB,EAAE,EAAE,CAAC,QAAQ,CAAC;;;;;;;;;;;;;;;;;CAiBvC,CAAA;AAEM,MAAM,QAAQ,GAAG,CAAC,GAAwB,EAAE,EAAE,CACnD,IAAA,kBAAS,EAAC,GAAG,CAAC;KACX,IAAI,CAAC,IAAA,kBAAS,EAAC,aAAa,EAAE,IAAA,eAAM,EAAC,QAAQ,EAAE,cAAc,CAAC,CAAC,CAAC;KAChE,IAAI,CAAC,IAAA,kBAAS,EAAC,UAAU,EAAE,IAAA,eAAM,EAAC,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAC;KAC1D,IAAI,CAAC,IAAA,kBAAS,EAAC,iBAAiB,EAAE,IAAA,eAAM,EAAC,QAAQ,EAAE,mCAAmC,CAAC,CAAC,CAAC;KACzF,IAAI,CACH,IAAA,sBAAY,EACV,KAAK,EAAE,GAAG,EAAE,EAAE,CACZ,GAAG,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,4BAA4B,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,yBAAyB,CAAC,GAAG,CAAC,EAC/F,IAAA,eAAM,EAAsB,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,GAAG,EAAE,eAAe,CAAC,CAC/D,CACF,CAAA;AAXQ,QAAA,QAAQ,YAWhB"}
|
|
@@ -32,6 +32,7 @@ import type { FromSchema } from '@feathersjs/schema'
|
|
|
32
32
|
import { dataValidator } from './validators'
|
|
33
33
|
|
|
34
34
|
export const configurationSchema = {
|
|
35
|
+
$id: 'configuration',
|
|
35
36
|
type: 'object',
|
|
36
37
|
additionalProperties: false,
|
|
37
38
|
required: [ 'host', 'port', 'public' ],
|
|
@@ -32,14 +32,6 @@ export async function down(knex: Knex): Promise<void> {
|
|
|
32
32
|
})
|
|
33
33
|
}
|
|
34
34
|
`;
|
|
35
|
-
const generate = (ctx) => (0, pinion_1.generator)(ctx).then((0, pinion_1.when)((ctx) => { var _a; return (0, commons_1.getDatabaseAdapter)((_a = ctx.feathers) === null || _a === void 0 ? void 0 : _a.database) === 'knex'; }, (0, commons_1.renderSource)(migrationTemplate, (0, pinion_1.toFile)((0, pinion_1.toFile)('migrations', () => {
|
|
36
|
-
// Probably not great but it works to align with the Knex migration file format
|
|
37
|
-
// We add a few seconds so that the migrations run in the correct order
|
|
38
|
-
const migrationDate = new Date(Date.now() + 10000)
|
|
39
|
-
.toISOString()
|
|
40
|
-
.replace(/\D/g, '')
|
|
41
|
-
.substring(0, 14);
|
|
42
|
-
return `${migrationDate}_authentication`;
|
|
43
|
-
})))));
|
|
35
|
+
const generate = (ctx) => (0, pinion_1.generator)(ctx).then((0, pinion_1.when)((ctx) => { var _a; return (0, commons_1.getDatabaseAdapter)((_a = ctx.feathers) === null || _a === void 0 ? void 0 : _a.database) === 'knex'; }, (0, commons_1.renderSource)(migrationTemplate, (0, pinion_1.toFile)((0, pinion_1.toFile)('migrations', async () => `${(0, commons_1.yyyymmddhhmmss)(1200)}_authentication`)))));
|
|
44
36
|
exports.generate = generate;
|
|
45
37
|
//# sourceMappingURL=knex.tpl.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"knex.tpl.js","sourceRoot":"","sources":["../../../src/authentication/templates/knex.tpl.ts"],"names":[],"mappings":";;;AAAA,+CAA4D;AAC5D,
|
|
1
|
+
{"version":3,"file":"knex.tpl.js","sourceRoot":"","sources":["../../../src/authentication/templates/knex.tpl.ts"],"names":[],"mappings":";;;AAAA,+CAA4D;AAC5D,2CAAgF;AAGhF,MAAM,iBAAiB,GAAG,CAAC,EACzB,SAAS,EACT,cAAc,EACiB,EAAE,EAAE,CAAC,QAAQ,CAAC;;;kCAGb,SAAS;8BACb,cAAc;KACrC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CACZ,IAAI,KAAK,OAAO;IACd,CAAC,CAAC;;6BAEiB;IACnB,CAAC,CAAC;oBACQ,IAAI,MAAM,CACvB;KACA,IAAI,CAAC,IAAI,CAAC;;;;;kCAKiB,SAAS;0BACjB,cAAc;KACjC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CACZ,IAAI,KAAK,OAAO;IACd,CAAC,CAAC;;iCAEqB;IACvB,CAAC,CAAC;wBACY,IAAI;KACvB,CACE;KACA,IAAI,CAAC,IAAI,CAAC;;;CAGhB,CAAA;AAEM,MAAM,QAAQ,GAAG,CAAC,GAAmC,EAAE,EAAE,CAC9D,IAAA,kBAAS,EAAC,GAAG,CAAC,CAAC,IAAI,CACjB,IAAA,aAAI,EACF,CAAC,GAAG,EAAE,EAAE,WAAC,OAAA,IAAA,4BAAkB,EAAC,MAAA,GAAG,CAAC,QAAQ,0CAAE,QAAQ,CAAC,KAAK,MAAM,CAAA,EAAA,EAC9D,IAAA,sBAAY,EACV,iBAAiB,EACjB,IAAA,eAAM,EACJ,IAAA,eAAM,EACJ,YAAY,EACZ,KAAK,IAAI,EAAE,CAAC,GAAG,IAAA,wBAAc,EAAC,IAAI,CAAC,iBAAiB,CACrD,CACF,CACF,CACF,CACF,CAAA;AAdU,QAAA,QAAQ,YAclB"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { generator, when, toFile } from '@feathershq/pinion'
|
|
2
|
-
import { getDatabaseAdapter, renderSource } from '../../commons'
|
|
2
|
+
import { getDatabaseAdapter, renderSource, yyyymmddhhmmss } from '../../commons'
|
|
3
3
|
import { AuthenticationGeneratorContext } from '../index'
|
|
4
4
|
|
|
5
5
|
const migrationTemplate = ({
|
|
@@ -46,16 +46,10 @@ export const generate = (ctx: AuthenticationGeneratorContext) =>
|
|
|
46
46
|
renderSource(
|
|
47
47
|
migrationTemplate,
|
|
48
48
|
toFile(
|
|
49
|
-
toFile<AuthenticationGeneratorContext>(
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
.toISOString()
|
|
54
|
-
.replace(/\D/g, '')
|
|
55
|
-
.substring(0, 14)
|
|
56
|
-
|
|
57
|
-
return `${migrationDate}_authentication`
|
|
58
|
-
})
|
|
49
|
+
toFile<AuthenticationGeneratorContext>(
|
|
50
|
+
'migrations',
|
|
51
|
+
async () => `${yyyymmddhhmmss(1200)}_authentication`
|
|
52
|
+
)
|
|
59
53
|
)
|
|
60
54
|
)
|
|
61
55
|
)
|
|
@@ -20,9 +20,14 @@ export const ${camelName}Schema = {
|
|
|
20
20
|
additionalProperties: false,
|
|
21
21
|
required: [ '${type === 'mongodb' ? '_id' : 'id'}'${(0, index_1.localTemplate)(authStrategies, ", 'email'")} ],
|
|
22
22
|
properties: {
|
|
23
|
-
${type === 'mongodb'
|
|
24
|
-
|
|
25
|
-
|
|
23
|
+
${type === 'mongodb'
|
|
24
|
+
? `_id: {
|
|
25
|
+
type: 'string',
|
|
26
|
+
objectid: true
|
|
27
|
+
},`
|
|
28
|
+
: `id: {
|
|
29
|
+
type: 'number'
|
|
30
|
+
},`}
|
|
26
31
|
${authStrategies
|
|
27
32
|
.map((name) => name === 'local'
|
|
28
33
|
? ` email: { type: 'string' },
|
|
@@ -57,7 +62,7 @@ export const ${camelName}DataResolver = resolve<${upperName}Data, HookContext>({
|
|
|
57
62
|
})
|
|
58
63
|
|
|
59
64
|
// Schema for updating existing users
|
|
60
|
-
export const ${camelName}
|
|
65
|
+
export const ${camelName}PatchSchema = {
|
|
61
66
|
$id: '${upperName}Patch',
|
|
62
67
|
type: 'object',
|
|
63
68
|
additionalProperties: false,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.json.tpl.js","sourceRoot":"","sources":["../../../src/authentication/templates/schema.json.tpl.ts"],"names":[],"mappings":";;;AAAA,+CAA4D;AAC5D,2CAAwD;AACxD,oCAAwE;AAExE,MAAM,QAAQ,GAAG,CAAC,EAChB,GAAG,EACH,GAAG,EACH,SAAS,EACT,SAAS,EACT,cAAc,EACd,IAAI,EACJ,QAAQ,EACuB,EAAE,EAAE,CAAC,QAAQ,CAAC;;;EAG7C,IAAA,qBAAa,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;;;eAGe,SAAS;UACd,SAAS;;;iBAGF,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,IAAI,IAAA,qBAAa,EAAC,cAAc,EAAE,WAAW,CAAC;;
|
|
1
|
+
{"version":3,"file":"schema.json.tpl.js","sourceRoot":"","sources":["../../../src/authentication/templates/schema.json.tpl.ts"],"names":[],"mappings":";;;AAAA,+CAA4D;AAC5D,2CAAwD;AACxD,oCAAwE;AAExE,MAAM,QAAQ,GAAG,CAAC,EAChB,GAAG,EACH,GAAG,EACH,SAAS,EACT,SAAS,EACT,cAAc,EACd,IAAI,EACJ,QAAQ,EACuB,EAAE,EAAE,CAAC,QAAQ,CAAC;;;EAG7C,IAAA,qBAAa,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;;;eAGe,SAAS;UACd,SAAS;;;iBAGF,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,IAAI,IAAA,qBAAa,EAAC,cAAc,EAAE,WAAW,CAAC;;MAG1F,IAAI,KAAK,SAAS;IAChB,CAAC,CAAC;;;OAGH;IACC,CAAC,CAAC;;OAGN;MACE,cAAc;KACb,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CACZ,IAAI,KAAK,OAAO;IACd,CAAC,CAAC;iCACqB;IACvB,CAAC,CAAC,OAAO,IAAI,wBAAwB,CACxC;KACA,IAAI,CAAC,KAAK,CAAC;;;cAGJ,SAAS,wBAAwB,SAAS;eACzC,SAAS,4BAA4B,SAAS;eAC9C,SAAS,sBAAsB,SAAS;;eAExC,SAAS,8BAA8B,SAAS;IAC3D,IAAA,qBAAa,EACb,cAAc,EACd;kCAC8B,CAC/B;;;;eAIY,SAAS;UACd,SAAS;;;;;SAKV,SAAS;;;cAGJ,SAAS,4BAA4B,SAAS;eAC7C,SAAS,gCAAgC,SAAS;eAClD,SAAS,0BAA0B,SAAS;IACvD,IAAA,qBAAa,EAAC,cAAc,EAAE,+CAA+C,CAAC;;;;eAInE,SAAS;UACd,SAAS;;;;;SAKV,SAAS;;;cAGJ,SAAS,6BAA6B,SAAS;eAC9C,SAAS,iCAAiC,SAAS;eACnD,SAAS,2BAA2B,SAAS;IACxD,IAAA,qBAAa,EAAC,cAAc,EAAE,+CAA+C,CAAC;;;;eAInE,SAAS;UACd,SAAS;;;;qBAIE,SAAS;;;cAGhB,SAAS,6BAA6B,SAAS;eAC9C,SAAS,iCAAiC,SAAS;eACnD,SAAS,2BAA2B,SAAS;;IAExD,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI;;mCAEF,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI;;;;;;CAMnE,CAAA;AAEM,MAAM,QAAQ,GAAG,CAAC,GAAmC,EAAE,EAAE,CAC9D,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,EAAkC,EAAE,EAAE,CAAC;IACpE,GAAG;IACH,UAAU;IACV,GAAG,MAAM;IACT,GAAG,QAAQ,SAAS;CACrB,CAAC,EACF,EAAE,KAAK,EAAE,IAAI,EAAE,CAChB,CACF,CACF,CAAA;AAfU,QAAA,QAAQ,YAelB"}
|
|
@@ -27,9 +27,16 @@ export const ${camelName}Schema = {
|
|
|
27
27
|
additionalProperties: false,
|
|
28
28
|
required: [ '${type === 'mongodb' ? '_id' : 'id'}'${localTemplate(authStrategies, ", 'email'")} ],
|
|
29
29
|
properties: {
|
|
30
|
-
${
|
|
31
|
-
type
|
|
32
|
-
|
|
30
|
+
${
|
|
31
|
+
type === 'mongodb'
|
|
32
|
+
? `_id: {
|
|
33
|
+
type: 'string',
|
|
34
|
+
objectid: true
|
|
35
|
+
},`
|
|
36
|
+
: `id: {
|
|
37
|
+
type: 'number'
|
|
38
|
+
},`
|
|
39
|
+
}
|
|
33
40
|
${authStrategies
|
|
34
41
|
.map((name) =>
|
|
35
42
|
name === 'local'
|
|
@@ -69,7 +76,7 @@ export const ${camelName}DataResolver = resolve<${upperName}Data, HookContext>({
|
|
|
69
76
|
})
|
|
70
77
|
|
|
71
78
|
// Schema for updating existing users
|
|
72
|
-
export const ${camelName}
|
|
79
|
+
export const ${camelName}PatchSchema = {
|
|
73
80
|
$id: '${upperName}Patch',
|
|
74
81
|
type: 'object',
|
|
75
82
|
additionalProperties: false,
|
|
@@ -16,7 +16,7 @@ import { dataValidator, queryValidator } from '${relative}/${(0, commons_1.fileE
|
|
|
16
16
|
|
|
17
17
|
// Main data model schema
|
|
18
18
|
export const ${camelName}Schema = Type.Object({
|
|
19
|
-
${type === 'mongodb' ? '_id: Type.String()' : 'id: Type.Number()'},
|
|
19
|
+
${type === 'mongodb' ? '_id: Type.String({ objectid: true })' : 'id: Type.Number()'},
|
|
20
20
|
${authStrategies
|
|
21
21
|
.map((name) => name === 'local'
|
|
22
22
|
? ` email: Type.String(),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.typebox.tpl.js","sourceRoot":"","sources":["../../../src/authentication/templates/schema.typebox.tpl.ts"],"names":[],"mappings":";;;AAAA,+CAA4D;AAC5D,2CAAwD;AACxD,oCAAwE;AAEjE,MAAM,QAAQ,GAAG,CAAC,EACvB,GAAG,EACH,GAAG,EACH,SAAS,EACT,SAAS,EACT,cAAc,EACd,IAAI,EACJ,QAAQ,EACuB,EAAE,EAAE,CAAC,QAAQ,CAAC;;;;EAI7C,IAAA,qBAAa,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;;;eAGe,SAAS;IACpB,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"schema.typebox.tpl.js","sourceRoot":"","sources":["../../../src/authentication/templates/schema.typebox.tpl.ts"],"names":[],"mappings":";;;AAAA,+CAA4D;AAC5D,2CAAwD;AACxD,oCAAwE;AAEjE,MAAM,QAAQ,GAAG,CAAC,EACvB,GAAG,EACH,GAAG,EACH,SAAS,EACT,SAAS,EACT,cAAc,EACd,IAAI,EACJ,QAAQ,EACuB,EAAE,EAAE,CAAC,QAAQ,CAAC;;;;EAI7C,IAAA,qBAAa,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;;;eAGe,SAAS;IACpB,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,sCAAsC,CAAC,CAAC,CAAC,mBAAmB;IACjF,cAAc;KACb,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CACZ,IAAI,KAAK,OAAO;IACd,CAAC,CAAC;yCAC+B;IACjC,CAAC,CAAC,OAAO,IAAI,kCAAkC,CAClD;KACA,IAAI,CAAC,KAAK,CAAC;YACJ,SAAS;cACP,SAAS,oBAAoB,SAAS;eACrC,SAAS,4BAA4B,SAAS;eAC9C,SAAS,sBAAsB,SAAS;;eAExC,SAAS,8BAA8B,SAAS;IAC3D,IAAA,qBAAa,EACb,cAAc,EACd;kCAC8B,CAC/B;;;;eAIY,SAAS,0BAA0B,SAAS;IACvD,cAAc,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,IAAI,IAAI,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;;YAE3F,SAAS;;cAEP,SAAS,wBAAwB,SAAS;eACzC,SAAS,gCAAgC,SAAS;eAClD,SAAS,0BAA0B,SAAS;IACvD,IAAA,qBAAa,EAAC,cAAc,EAAE,+CAA+C,CAAC;;;;eAInE,SAAS,8BAA8B,SAAS;UACrD,SAAS;;cAEL,SAAS,yBAAyB,SAAS;eAC1C,SAAS,iCAAiC,SAAS;eACnD,SAAS,2BAA2B,SAAS;IACxD,IAAA,qBAAa,EAAC,cAAc,EAAE,+CAA+C,CAAC;;;;eAInE,SAAS,+BAA+B,SAAS,aAC9D,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAC/B,MAAM,cAAc,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,IAAI,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;;eAE9E,SAAS;gBACR,SAAS;;;;cAIX,SAAS,yBAAyB,SAAS;eAC1C,SAAS,iCAAiC,SAAS;eACnD,SAAS,2BAA2B,SAAS;;IAExD,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI;;mCAEF,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI;;;;;;CAMnE,CAAA;AAvFY,QAAA,QAAQ,YAuFpB;AAEM,MAAM,QAAQ,GAAG,CAAC,GAAmC,EAAE,EAAE,CAC9D,IAAA,kBAAS,EAAC,GAAG,CAAC,CAAC,IAAI,CACjB,IAAA,aAAI,EACF,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,MAAM,KAAK,SAAS,EACpC,IAAA,sBAAY,EACV,gBAAQ,EACR,IAAA,eAAM,EAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAkC,EAAE,EAAE,CAAC;IACpE,GAAG;IACH,UAAU;IACV,GAAG,MAAM;IACT,GAAG,QAAQ,SAAS;CACrB,CAAC,EACF,EAAE,KAAK,EAAE,IAAI,EAAE,CAChB,CACF,CACF,CAAA;AAfU,QAAA,QAAQ,YAelB"}
|
|
@@ -23,7 +23,7 @@ import { dataValidator, queryValidator } from '${relative}/${
|
|
|
23
23
|
|
|
24
24
|
// Main data model schema
|
|
25
25
|
export const ${camelName}Schema = Type.Object({
|
|
26
|
-
${type === 'mongodb' ? '_id: Type.String()' : 'id: Type.Number()'},
|
|
26
|
+
${type === 'mongodb' ? '_id: Type.String({ objectid: true })' : 'id: Type.Number()'},
|
|
27
27
|
${authStrategies
|
|
28
28
|
.map((name) =>
|
|
29
29
|
name === 'local'
|
package/lib/commons.d.ts
CHANGED
|
@@ -148,3 +148,8 @@ export declare const injectSource: <C extends PinionContext & {
|
|
|
148
148
|
* @returns Wether the file exists or not
|
|
149
149
|
*/
|
|
150
150
|
export declare const fileExists: (...filenames: string[]) => boolean;
|
|
151
|
+
/**
|
|
152
|
+
* The helper used by Knex to create migration names
|
|
153
|
+
* @returns The current date and time in the format `YYYYMMDDHHMMSS`
|
|
154
|
+
*/
|
|
155
|
+
export declare const yyyymmddhhmmss: (offset?: number) => string;
|
package/lib/commons.js
CHANGED
|
@@ -26,7 +26,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
26
26
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
27
|
};
|
|
28
28
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
-
exports.fileExists = exports.injectSource = exports.renderSource = exports.prettify = exports.PRETTIERRC = exports.getJavaScript = exports.checkPreconditions = exports.initializeBaseContext = exports.addVersions = exports.getDatabaseAdapter = exports.version = void 0;
|
|
29
|
+
exports.yyyymmddhhmmss = exports.fileExists = exports.injectSource = exports.renderSource = exports.prettify = exports.PRETTIERRC = exports.getJavaScript = exports.checkPreconditions = exports.initializeBaseContext = exports.addVersions = exports.getDatabaseAdapter = exports.version = void 0;
|
|
30
30
|
const fs_1 = __importDefault(require("fs"));
|
|
31
31
|
const path_1 = require("path");
|
|
32
32
|
const promises_1 = require("fs/promises");
|
|
@@ -195,4 +195,18 @@ exports.injectSource = injectSource;
|
|
|
195
195
|
*/
|
|
196
196
|
const fileExists = (...filenames) => fs_1.default.existsSync((0, path_1.join)(...filenames));
|
|
197
197
|
exports.fileExists = fileExists;
|
|
198
|
+
/**
|
|
199
|
+
* The helper used by Knex to create migration names
|
|
200
|
+
* @returns The current date and time in the format `YYYYMMDDHHMMSS`
|
|
201
|
+
*/
|
|
202
|
+
const yyyymmddhhmmss = (offset = 0) => {
|
|
203
|
+
const now = new Date(Date.now() + offset);
|
|
204
|
+
return (now.getUTCFullYear().toString() +
|
|
205
|
+
(now.getUTCMonth() + 1).toString().padStart(2, '0') +
|
|
206
|
+
now.getUTCDate().toString().padStart(2, '0') +
|
|
207
|
+
now.getUTCHours().toString().padStart(2, '0') +
|
|
208
|
+
now.getUTCMinutes().toString().padStart(2, '0') +
|
|
209
|
+
now.getUTCSeconds().toString().padStart(2, '0'));
|
|
210
|
+
};
|
|
211
|
+
exports.yyyymmddhhmmss = yyyymmddhhmmss;
|
|
198
212
|
//# sourceMappingURL=commons.js.map
|
package/lib/commons.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"commons.js","sourceRoot":"","sources":["../src/commons.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"commons.js","sourceRoot":"","sources":["../src/commons.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,4CAAmB;AACnB,+BAA2B;AAE3B,0CAAiD;AACjD,+CAS2B;AAC3B,+CAAgC;AAChC,wDAA+D;AAC/D,gDAAuB;AAER,eAAO,GAAK,IAAI,CAAC,KAAK,CAAC,YAAE,CAAC,YAAY,CAAC,IAAA,WAAI,EAAC,SAAS,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,SAAA;AASxG;;;;;GAKG;AACI,MAAM,kBAAkB,GAAG,CAAC,QAAsB,EAAE,EAAE,CAAC,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAA;AAA9F,QAAA,kBAAkB,sBAA4E;AA8D3G;;;;;;GAMG;AACI,MAAM,WAAW,GAAG,CAAC,YAAsB,EAAE,QAA4B,EAAE,EAAE,CAClF,YAAY,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,GAAG,IAAI,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAA;AADpE,QAAA,WAAW,eACyD;AAEjF;;;;;GAKG;AACI,MAAM,qBAAqB,GAChC,GAAG,EAAE,CACL,CAAgC,GAAM,EAAE,EAAE,CACxC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC;KACjB,IAAI,CAAC,IAAA,iBAAQ,EAAC,IAAA,iBAAQ,EAAC,cAAc,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;KAChE,IAAI,CACH,IAAA,iBAAQ,EAAC,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,cAAc,CAAC,EAAE,CAAC,GAAgB,EAAE,EAAE,CAAC,CAAC;IAC1E,kBAAkB,EAAE;QAClB,GAAG,GAAG,CAAC,eAAe;QACtB,GAAG,GAAG,CAAC,kBAAkB;QACzB,iBAAiB,EAAE,eAAO;KAC3B;CACF,CAAC,CAAC,CACJ;KACA,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE;;IAAC,OAAA,CAAC;QACd,GAAG,GAAG;QACN,GAAG,EAAE,CAAA,MAAA,MAAA,GAAG,CAAC,GAAG,0CAAE,WAAW,0CAAE,GAAG,KAAI,KAAK;QACvC,IAAI,EAAE,CAAA,MAAA,MAAA,GAAG,CAAC,GAAG,0CAAE,WAAW,0CAAE,IAAI,KAAI,MAAM;QAC1C,QAAQ,EAAE,GAAG,CAAC,QAAQ,KAAI,MAAA,MAAA,GAAG,CAAC,GAAG,0CAAE,QAAQ,0CAAE,QAAQ,CAAA;QACrD,QAAQ,EAAE,MAAA,GAAG,CAAC,GAAG,0CAAE,QAAQ;KAC5B,CAAC,CAAA;CAAA,CAAC,CAAA;AApBI,QAAA,qBAAqB,yBAoBzB;AAET;;;;;;GAMG;AACI,MAAM,kBAAkB,GAC7B,GAAG,EAAE,CACL,KAAK,EAAiC,GAAM,EAAE,EAAE;IAC9C,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE;QACjB,MAAM,IAAI,KAAK,CAAC;;CAErB,CAAC,CAAA;KACG;IAED,OAAO,GAAG,CAAA;AACZ,CAAC,CAAA;AAVU,QAAA,kBAAkB,sBAU5B;AAEH,MAAM,WAAW,GAAG,gBAAgB,CAAA;AACpC,MAAM,cAAc,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,mBAAmB,CAAC,CAAA;AACnF,MAAM,eAAe,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,sBAAsB,EAAE,IAAI,CAAC,CAAA;AACpF,MAAM,eAAe,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,cAAc,CAAC,CAAA;AAEnF;;;;;;GAMG;AACI,MAAM,aAAa,GAAG,CAAC,UAAkB,EAAE,UAA+B,EAAE,EAAE,EAAE;IACrF,MAAM,MAAM,GAAG,cAAc,CAAC,UAAU,CAAC,CAAA;IACzC,MAAM,UAAU,GAAG,EAAE,CAAC,eAAe,CAAC,MAAM,EAAE;QAC5C,GAAG,OAAO;QACV,eAAe,EAAE;YACf,MAAM,EAAE,EAAE,CAAC,UAAU,CAAC,MAAM;YAC5B,MAAM,EAAE,EAAE,CAAC,YAAY,CAAC,MAAM;YAC9B,oBAAoB,EAAE,IAAI;YAC1B,GAAG,OAAO,CAAC,eAAe;SAC3B;KACF,CAAC,CAAA;IAEF,OAAO,eAAe,CAAC,eAAe,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAA;AAChE,CAAC,CAAA;AAbY,QAAA,aAAa,iBAazB;AAED,MAAM,WAAW,GAAG,KAAK,EACvB,MAA2B,EAC3B,GAAM,EACN,EAAE,CAAC,GAAG,MAAM,IAAA,oBAAW,EAAC,MAAM,EAAE,GAAG,CAAC,IAAI,GAAG,CAAC,QAAQ,EAAE,CAAA;AAExD;;GAEG;AACU,QAAA,UAAU,GAAoB;IACzC,QAAQ,EAAE,CAAC;IACX,OAAO,EAAE,KAAK;IACd,UAAU,EAAE,GAAG;IACf,IAAI,EAAE,KAAK;IACX,aAAa,EAAE,MAAM;IACrB,WAAW,EAAE,IAAI;CAClB,CAAA;AAED;;;;;;;GAOG;AACI,MAAM,QAAQ,GACnB,CACE,MAA2B,EAC3B,UAA2B,kBAAU,EACrC,EAAE,CACJ,KAAK,EAAE,GAAM,EAAE,EAAE;IACf,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAC/C,MAAM,MAAM,GAAG,CAAC,MAAM,kBAAQ,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,OAAO,CAAA;IACjE,MAAM,OAAO,GAAG,CAAC,MAAM,IAAA,mBAAQ,EAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAA;IAErD,IAAI;QACF,MAAM,IAAA,oBAAS,EACb,QAAQ,EACR,MAAM,kBAAQ,CAAC,MAAM,CAAC,OAAO,EAAE;YAC7B,MAAM,EAAE,GAAG,CAAC,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,OAAO;YACtD,GAAG,MAAM;SACV,CAAC,CACH,CAAA;KACF;IAAC,OAAO,KAAU,EAAE;QACnB,MAAM,IAAI,KAAK,CAAC,qBAAqB,QAAQ,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC,CAAA;KACnE;IAED,OAAO,GAAG,CAAA;AACZ,CAAC,CAAA;AAvBU,QAAA,QAAQ,YAuBlB;AAEH;;;;;;GAMG;AACI,MAAM,YAAY,GACvB,CACE,QAA6B,EAC7B,MAA2B,EAC3B,OAA4B,EAC5B,EAAE,CACJ,KAAK,EAAE,GAAM,EAAE,EAAE;IACf,MAAM,EAAE,QAAQ,EAAE,GAAG,GAAG,CAAA;IACxB,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAC/C,MAAM,OAAO,GAAG,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,IAAA,qBAAa,EAAC,MAAM,IAAA,oBAAW,EAAY,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAA;IACzG,MAAM,QAAQ,GAAG,IAAA,uBAAc,EAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAA;IAE3D,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAA,gBAAQ,EAAC,MAAM,CAAC,CAAC,CAAA;AAC7C,CAAC,CAAA;AAbU,QAAA,YAAY,gBAatB;AAEH;;;;;;;;GAQG;AACI,MAAM,YAAY,GACvB,CACE,QAA6B,EAC7B,QAAqB,EACrB,MAA2B,EAC3B,SAAS,GAAG,IAAI,EAChB,EAAE,CACJ,KAAK,EAAE,GAAM,EAAE,EAAE;IACf,MAAM,EAAE,QAAQ,EAAE,GAAG,GAAG,CAAA;IACxB,MAAM,MAAM,GACV,QAAQ,KAAK,IAAI,IAAI,SAAS,CAAC,CAAC,CAAC,IAAA,qBAAa,EAAC,MAAM,IAAA,oBAAW,EAAY,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAA;IACxG,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAC/C,MAAM,QAAQ,GAAG,IAAA,eAAM,EAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAA;IAEnD,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAA,gBAAQ,EAAC,MAAM,CAAC,CAAC,CAAA;AAC7C,CAAC,CAAA;AAfU,QAAA,YAAY,gBAetB;AAEH;;;;;GAKG;AACI,MAAM,UAAU,GAAG,CAAC,GAAG,SAAmB,EAAE,EAAE,CAAC,YAAE,CAAC,UAAU,CAAC,IAAA,WAAI,EAAC,GAAG,SAAS,CAAC,CAAC,CAAA;AAA1E,QAAA,UAAU,cAAgE;AAEvF;;;GAGG;AACI,MAAM,cAAc,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE,EAAE;IAC3C,MAAM,GAAG,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,MAAM,CAAC,CAAA;IAEzC,OAAO,CACL,GAAG,CAAC,cAAc,EAAE,CAAC,QAAQ,EAAE;QAC/B,CAAC,GAAG,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC;QACnD,GAAG,CAAC,UAAU,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC;QAC5C,GAAG,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC;QAC7C,GAAG,CAAC,aAAa,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC;QAC/C,GAAG,CAAC,aAAa,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAChD,CAAA;AACH,CAAC,CAAA;AAXY,QAAA,cAAc,kBAW1B"}
|
package/lib/commons.ts
CHANGED
|
@@ -282,3 +282,20 @@ export const injectSource =
|
|
|
282
282
|
* @returns Wether the file exists or not
|
|
283
283
|
*/
|
|
284
284
|
export const fileExists = (...filenames: string[]) => fs.existsSync(join(...filenames))
|
|
285
|
+
|
|
286
|
+
/**
|
|
287
|
+
* The helper used by Knex to create migration names
|
|
288
|
+
* @returns The current date and time in the format `YYYYMMDDHHMMSS`
|
|
289
|
+
*/
|
|
290
|
+
export const yyyymmddhhmmss = (offset = 0) => {
|
|
291
|
+
const now = new Date(Date.now() + offset)
|
|
292
|
+
|
|
293
|
+
return (
|
|
294
|
+
now.getUTCFullYear().toString() +
|
|
295
|
+
(now.getUTCMonth() + 1).toString().padStart(2, '0') +
|
|
296
|
+
now.getUTCDate().toString().padStart(2, '0') +
|
|
297
|
+
now.getUTCHours().toString().padStart(2, '0') +
|
|
298
|
+
now.getUTCMinutes().toString().padStart(2, '0') +
|
|
299
|
+
now.getUTCSeconds().toString().padStart(2, '0')
|
|
300
|
+
)
|
|
301
|
+
}
|
|
@@ -23,12 +23,18 @@ export const mongodb = (app: Application) => {
|
|
|
23
23
|
app.set('mongodbClient', mongoClient)
|
|
24
24
|
}
|
|
25
25
|
`;
|
|
26
|
+
const keywordImport = `import { keywordObjectId } from '@feathersjs/mongodb'`;
|
|
27
|
+
const keywordTemplate = `dataValidator.addKeyword(keywordObjectId)
|
|
28
|
+
queryValidator.addKeyword(keywordObjectId)`;
|
|
26
29
|
const importTemplate = "import { mongodb } from './mongodb'";
|
|
27
30
|
const configureTemplate = 'app.configure(mongodb)';
|
|
28
31
|
const toAppFile = (0, pinion_1.toFile)(({ lib }) => [lib, 'app']);
|
|
32
|
+
const toValidatorFile = (0, pinion_1.toFile)(({ lib }) => [lib, 'validators']);
|
|
29
33
|
const generate = (ctx) => (0, pinion_1.generator)(ctx)
|
|
30
34
|
.then((0, commons_1.renderSource)(template, (0, pinion_1.toFile)(({ lib }) => lib, 'mongodb')))
|
|
31
35
|
.then((0, commons_1.injectSource)(importTemplate, (0, pinion_1.before)('import { services } from'), toAppFile))
|
|
32
|
-
.then((0, commons_1.injectSource)(configureTemplate, (0, pinion_1.before)('app.configure(services)'), toAppFile))
|
|
36
|
+
.then((0, commons_1.injectSource)(configureTemplate, (0, pinion_1.before)('app.configure(services)'), toAppFile))
|
|
37
|
+
.then((0, commons_1.injectSource)(keywordImport, (0, pinion_1.prepend)(), toValidatorFile))
|
|
38
|
+
.then((0, commons_1.injectSource)(keywordTemplate, (0, pinion_1.append)(), toValidatorFile));
|
|
33
39
|
exports.generate = generate;
|
|
34
40
|
//# sourceMappingURL=mongodb.tpl.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mongodb.tpl.js","sourceRoot":"","sources":["../../../src/connection/templates/mongodb.tpl.ts"],"names":[],"mappings":";;;AAAA,+
|
|
1
|
+
{"version":3,"file":"mongodb.tpl.js","sourceRoot":"","sources":["../../../src/connection/templates/mongodb.tpl.ts"],"names":[],"mappings":";;;AAAA,+CAA+E;AAE/E,2CAA0D;AAE1D,MAAM,QAAQ,GACZ,CAAC,EAA8B,EAAE,EAAE,CAAC,QAAQ,CAAC;;;;;;;;;;;;;;;;;;;CAmB9C,CAAA;AAED,MAAM,aAAa,GAAG,uDAAuD,CAAA;AAE7E,MAAM,eAAe,GAAG;2CACmB,CAAA;AAE3C,MAAM,cAAc,GAAG,qCAAqC,CAAA;AAC5D,MAAM,iBAAiB,GAAG,wBAAwB,CAAA;AAClD,MAAM,SAAS,GAAG,IAAA,eAAM,EAA6B,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAA;AAC/E,MAAM,eAAe,GAAG,IAAA,eAAM,EAA6B,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC,CAAA;AAErF,MAAM,QAAQ,GAAG,CAAC,GAA+B,EAAE,EAAE,CAC1D,IAAA,kBAAS,EAAC,GAAG,CAAC;KACX,IAAI,CACH,IAAA,sBAAY,EACV,QAAQ,EACR,IAAA,eAAM,EAA6B,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,GAAG,EAAE,SAAS,CAAC,CAChE,CACF;KACA,IAAI,CAAC,IAAA,sBAAY,EAAC,cAAc,EAAE,IAAA,eAAM,EAAC,0BAA0B,CAAC,EAAE,SAAS,CAAC,CAAC;KACjF,IAAI,CAAC,IAAA,sBAAY,EAAC,iBAAiB,EAAE,IAAA,eAAM,EAAC,yBAAyB,CAAC,EAAE,SAAS,CAAC,CAAC;KACnF,IAAI,CAAC,IAAA,sBAAY,EAAC,aAAa,EAAE,IAAA,gBAAO,GAAE,EAAE,eAAe,CAAC,CAAC;KAC7D,IAAI,CAAC,IAAA,sBAAY,EAAC,eAAe,EAAE,IAAA,eAAM,GAAE,EAAE,eAAe,CAAC,CAAC,CAAA;AAXtD,QAAA,QAAQ,YAW8C"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { generator, toFile, before } from '@feathershq/pinion'
|
|
1
|
+
import { generator, toFile, before, prepend, append } from '@feathershq/pinion'
|
|
2
2
|
import { ConnectionGeneratorContext } from '../index'
|
|
3
3
|
import { injectSource, renderSource } from '../../commons'
|
|
4
4
|
|
|
@@ -24,9 +24,15 @@ export const mongodb = (app: Application) => {
|
|
|
24
24
|
}
|
|
25
25
|
`
|
|
26
26
|
|
|
27
|
+
const keywordImport = `import { keywordObjectId } from '@feathersjs/mongodb'`
|
|
28
|
+
|
|
29
|
+
const keywordTemplate = `dataValidator.addKeyword(keywordObjectId)
|
|
30
|
+
queryValidator.addKeyword(keywordObjectId)`
|
|
31
|
+
|
|
27
32
|
const importTemplate = "import { mongodb } from './mongodb'"
|
|
28
33
|
const configureTemplate = 'app.configure(mongodb)'
|
|
29
34
|
const toAppFile = toFile<ConnectionGeneratorContext>(({ lib }) => [lib, 'app'])
|
|
35
|
+
const toValidatorFile = toFile<ConnectionGeneratorContext>(({ lib }) => [lib, 'validators'])
|
|
30
36
|
|
|
31
37
|
export const generate = (ctx: ConnectionGeneratorContext) =>
|
|
32
38
|
generator(ctx)
|
|
@@ -38,3 +44,5 @@ export const generate = (ctx: ConnectionGeneratorContext) =>
|
|
|
38
44
|
)
|
|
39
45
|
.then(injectSource(importTemplate, before('import { services } from'), toAppFile))
|
|
40
46
|
.then(injectSource(configureTemplate, before('app.configure(services)'), toAppFile))
|
|
47
|
+
.then(injectSource(keywordImport, prepend(), toValidatorFile))
|
|
48
|
+
.then(injectSource(keywordTemplate, append(), toValidatorFile))
|
|
@@ -18,9 +18,14 @@ export const ${camelName}Schema = {
|
|
|
18
18
|
additionalProperties: false,
|
|
19
19
|
required: [ '${type === 'mongodb' ? '_id' : 'id'}', 'text' ],
|
|
20
20
|
properties: {
|
|
21
|
-
${type === 'mongodb'
|
|
22
|
-
|
|
23
|
-
|
|
21
|
+
${type === 'mongodb'
|
|
22
|
+
? `_id: {
|
|
23
|
+
type: 'string',
|
|
24
|
+
objectid: true
|
|
25
|
+
},`
|
|
26
|
+
: `id: {
|
|
27
|
+
type: 'number'
|
|
28
|
+
},`}
|
|
24
29
|
text: {
|
|
25
30
|
type: 'string'
|
|
26
31
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.json.tpl.js","sourceRoot":"","sources":["../../../src/service/templates/schema.json.tpl.ts"],"names":[],"mappings":";;;AAAA,+CAA4D;AAC5D,2CAAwD;AAGxD,MAAM,QAAQ,GAAG,CAAC,EAChB,SAAS,EACT,SAAS,EACT,QAAQ,EACR,IAAI,EACJ,GAAG,EACH,GAAG,EACqB,EAAE,EAAE,CAAC,QAAQ,CAAC;;;;oCAIJ,QAAQ;iDACK,QAAQ,IACvD,IAAA,oBAAU,EAAC,GAAG,EAAE,GAAG,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,6CAA6C;AACjG;;;eAGe,SAAS;UACd,SAAS;;;iBAGF,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI;;
|
|
1
|
+
{"version":3,"file":"schema.json.tpl.js","sourceRoot":"","sources":["../../../src/service/templates/schema.json.tpl.ts"],"names":[],"mappings":";;;AAAA,+CAA4D;AAC5D,2CAAwD;AAGxD,MAAM,QAAQ,GAAG,CAAC,EAChB,SAAS,EACT,SAAS,EACT,QAAQ,EACR,IAAI,EACJ,GAAG,EACH,GAAG,EACqB,EAAE,EAAE,CAAC,QAAQ,CAAC;;;;oCAIJ,QAAQ;iDACK,QAAQ,IACvD,IAAA,oBAAU,EAAC,GAAG,EAAE,GAAG,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,6CAA6C;AACjG;;;eAGe,SAAS;UACd,SAAS;;;iBAGF,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI;;MAG5C,IAAI,KAAK,SAAS;IAChB,CAAC,CAAC;;;OAGH;IACC,CAAC,CAAC;;OAGN;;;;;;cAMU,SAAS,wBAAwB,SAAS;eACzC,SAAS,4BAA4B,SAAS;eAC9C,SAAS,sBAAsB,SAAS;;eAExC,SAAS,8BAA8B,SAAS;;;eAGhD,SAAS;UACd,SAAS;;;;;;;;;;cAUL,SAAS,4BAA4B,SAAS;eAC7C,SAAS,gCAAgC,SAAS;eAClD,SAAS,0BAA0B,SAAS;;;eAG5C,SAAS;UACd,SAAS;;;;;SAKV,SAAS;;;cAGJ,SAAS,6BAA6B,SAAS;eAC9C,SAAS,iCAAiC,SAAS;eACnD,SAAS,2BAA2B,SAAS;;;eAG7C,SAAS;UACd,SAAS;;;;qBAIE,SAAS;;;cAGhB,SAAS,6BAA6B,SAAS;eAC9C,SAAS,iCAAiC,SAAS;eACnD,SAAS,2BAA2B,SAAS;CAC3D,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"}
|
|
@@ -25,9 +25,16 @@ export const ${camelName}Schema = {
|
|
|
25
25
|
additionalProperties: false,
|
|
26
26
|
required: [ '${type === 'mongodb' ? '_id' : 'id'}', 'text' ],
|
|
27
27
|
properties: {
|
|
28
|
-
${
|
|
29
|
-
type
|
|
30
|
-
|
|
28
|
+
${
|
|
29
|
+
type === 'mongodb'
|
|
30
|
+
? `_id: {
|
|
31
|
+
type: 'string',
|
|
32
|
+
objectid: true
|
|
33
|
+
},`
|
|
34
|
+
: `id: {
|
|
35
|
+
type: 'number'
|
|
36
|
+
},`
|
|
37
|
+
}
|
|
31
38
|
text: {
|
|
32
39
|
type: 'string'
|
|
33
40
|
}
|
|
@@ -14,7 +14,7 @@ import { dataValidator, queryValidator } from '${relative}/${(0, commons_1.fileE
|
|
|
14
14
|
|
|
15
15
|
// Main data model schema
|
|
16
16
|
export const ${camelName}Schema = Type.Object({
|
|
17
|
-
${type === 'mongodb' ? '_id: Type.String()' : 'id: Type.Number()'},
|
|
17
|
+
${type === 'mongodb' ? '_id: Type.String({ objectid: true })' : 'id: Type.Number()'},
|
|
18
18
|
text: Type.String()
|
|
19
19
|
}, { $id: '${upperName}', additionalProperties: false })
|
|
20
20
|
export type ${upperName} = Static<typeof ${camelName}Schema>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.typebox.tpl.js","sourceRoot":"","sources":["../../../src/service/templates/schema.typebox.tpl.ts"],"names":[],"mappings":";;;AAAA,+CAA4D;AAC5D,2CAAwD;AAGxD,MAAM,QAAQ,GAAG,CAAC,EAChB,SAAS,EACT,SAAS,EACT,QAAQ,EACR,IAAI,EACJ,GAAG,EACH,GAAG,EACqB,EAAE,EAAE,CAAC,QAAQ,CAAC;;;;;oCAKJ,QAAQ;iDACK,QAAQ,IACvD,IAAA,oBAAU,EAAC,GAAG,EAAE,GAAG,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,6CAA6C;AACjG;;;eAGe,SAAS;MAClB,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"schema.typebox.tpl.js","sourceRoot":"","sources":["../../../src/service/templates/schema.typebox.tpl.ts"],"names":[],"mappings":";;;AAAA,+CAA4D;AAC5D,2CAAwD;AAGxD,MAAM,QAAQ,GAAG,CAAC,EAChB,SAAS,EACT,SAAS,EACT,QAAQ,EACR,IAAI,EACJ,GAAG,EACH,GAAG,EACqB,EAAE,EAAE,CAAC,QAAQ,CAAC;;;;;oCAKJ,QAAQ;iDACK,QAAQ,IACvD,IAAA,oBAAU,EAAC,GAAG,EAAE,GAAG,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,6CAA6C;AACjG;;;eAGe,SAAS;MAClB,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,sCAAsC,CAAC,CAAC,CAAC,mBAAmB;;eAExE,SAAS;cACV,SAAS,oBAAoB,SAAS;eACrC,SAAS,4BAA4B,SAAS;eAC9C,SAAS,sBAAsB,SAAS;;eAExC,SAAS,8BAA8B,SAAS;;;eAGhD,SAAS,0BAA0B,SAAS;UACjD,SAAS;;cAEL,SAAS,wBAAwB,SAAS;eACzC,SAAS,gCAAgC,SAAS;eAClD,SAAS,0BAA0B,SAAS;;;eAG5C,SAAS,8BAA8B,SAAS;UACrD,SAAS;;cAEL,SAAS,yBAAyB,SAAS;eAC1C,SAAS,iCAAiC,SAAS;eACnD,SAAS,2BAA2B,SAAS;;;eAG7C,SAAS,+BAA+B,SAAS;KAC3D,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI;;eAEvB,SAAS;gBACR,SAAS;;;;cAIX,SAAS,yBAAyB,SAAS;eAC1C,SAAS,iCAAiC,SAAS;eACnD,SAAS,2BAA2B,SAAS;CAC3D,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,SAAS,EACpC,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"}
|
|
@@ -21,7 +21,7 @@ import { dataValidator, queryValidator } from '${relative}/${
|
|
|
21
21
|
|
|
22
22
|
// Main data model schema
|
|
23
23
|
export const ${camelName}Schema = Type.Object({
|
|
24
|
-
${type === 'mongodb' ? '_id: Type.String()' : 'id: Type.Number()'},
|
|
24
|
+
${type === 'mongodb' ? '_id: Type.String({ objectid: true })' : 'id: Type.Number()'},
|
|
25
25
|
text: Type.String()
|
|
26
26
|
}, { $id: '${upperName}', additionalProperties: false })
|
|
27
27
|
export type ${upperName} = Static<typeof ${camelName}Schema>
|
|
@@ -64,10 +64,6 @@ const generate = (ctx) => (0, pinion_1.generator)(ctx)
|
|
|
64
64
|
...folder,
|
|
65
65
|
`${fileName}.class`
|
|
66
66
|
])))
|
|
67
|
-
.then((0, commons_1.renderSource)(migrationTemplate, (0, pinion_1.toFile)('migrations', ({ kebabName }) => {
|
|
68
|
-
// Probably not great but it works to align with the Knex migration file format
|
|
69
|
-
const migrationDate = new Date().toISOString().replace(/\D/g, '').substring(0, 14);
|
|
70
|
-
return `${migrationDate}_${kebabName}`;
|
|
71
|
-
})));
|
|
67
|
+
.then((0, commons_1.renderSource)(migrationTemplate, (0, pinion_1.toFile)('migrations', ({ kebabName }) => `${(0, commons_1.yyyymmddhhmmss)()}_${kebabName}`)));
|
|
72
68
|
exports.generate = generate;
|
|
73
69
|
//# sourceMappingURL=knex.tpl.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"knex.tpl.js","sourceRoot":"","sources":["../../../src/service/type/knex.tpl.ts"],"names":[],"mappings":";;;AAAA,+CAAsD;AACtD,
|
|
1
|
+
{"version":3,"file":"knex.tpl.js","sourceRoot":"","sources":["../../../src/service/type/knex.tpl.ts"],"names":[],"mappings":";;;AAAA,+CAAsD;AACtD,2CAA4D;AAG5D,MAAM,iBAAiB,GAAG,CAAC,EACzB,SAAS,EACe,EAAE,EAAE,CAAC,QAAQ,CAAC;;;;mCAIL,SAAS;;;;;;;iCAOX,SAAS;;CAEzC,CAAA;AAEM,MAAM,QAAQ,GAAG,CAAC,EACvB,SAAS,EACT,SAAS,EACT,QAAQ,EACR,MAAM,EACN,QAAQ,EACR,QAAQ,EACgB,EAAE,EAAE,CAAC,QAAQ,CAAC;;;;;oCAKJ,QAAQ;EAE1C,MAAM;IACJ,CAAC,CAAC;IACF,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;YACD,QAAQ;CACnB;IACG,CAAC,CAAC;OACC,SAAS;OACT,SAAS;OACT,SAAS;OACT,SAAS;CAEhB;;gBAEgB,SAAS,KAAK,SAAS,SAAS,SAAS,UAAU,SAAS;;mBAEzD,SAAS,oCAAoC,SAAS;;;;eAI1D,SAAS,mCAAmC,SAAS;wBAC5C,SAAS,KAAK,SAAS,wBAAwB,SAAS;;;;;;sBAM1D,QAAQ,CAAC,QAAQ;aAC1B,QAAQ;;;CAGpB,CAAA;AA/CY,QAAA,QAAQ,YA+CpB;AAEM,MAAM,QAAQ,GAAG,CAAC,GAA4B,EAAE,EAAE,CACvD,IAAA,kBAAS,EAAC,GAAG,CAAC;KACX,IAAI,CACH,IAAA,sBAAY,EACV,gBAAQ,EACR,IAAA,eAAM,EAA0B,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;IAC7D,GAAG;IACH,UAAU;IACV,GAAG,MAAM;IACT,GAAG,QAAQ,QAAQ;CACpB,CAAC,CACH,CACF;KACA,IAAI,CACH,IAAA,sBAAY,EACV,iBAAiB,EACjB,IAAA,eAAM,EAA0B,YAAY,EAAE,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,GAAG,IAAA,wBAAc,GAAE,IAAI,SAAS,EAAE,CAAC,CACrG,CACF,CAAA;AAlBQ,QAAA,QAAQ,YAkBhB"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { generator, toFile } from '@feathershq/pinion'
|
|
2
|
-
import { renderSource } from '../../commons'
|
|
2
|
+
import { renderSource, yyyymmddhhmmss } from '../../commons'
|
|
3
3
|
import { ServiceGeneratorContext } from '../index'
|
|
4
4
|
|
|
5
5
|
const migrationTemplate = ({
|
|
@@ -84,11 +84,6 @@ export const generate = (ctx: ServiceGeneratorContext) =>
|
|
|
84
84
|
.then(
|
|
85
85
|
renderSource(
|
|
86
86
|
migrationTemplate,
|
|
87
|
-
toFile<ServiceGeneratorContext>('migrations', ({ kebabName }) => {
|
|
88
|
-
// Probably not great but it works to align with the Knex migration file format
|
|
89
|
-
const migrationDate = new Date().toISOString().replace(/\D/g, '').substring(0, 14)
|
|
90
|
-
|
|
91
|
-
return `${migrationDate}_${kebabName}`
|
|
92
|
-
})
|
|
87
|
+
toFile<ServiceGeneratorContext>('migrations', ({ kebabName }) => `${yyyymmddhhmmss()}_${kebabName}`)
|
|
93
88
|
)
|
|
94
89
|
)
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@feathersjs/generators",
|
|
3
|
-
"version": "5.0.0-pre.
|
|
3
|
+
"version": "5.0.0-pre.37",
|
|
4
4
|
"description": "Feathers CLI core generators, powered by Pinion",
|
|
5
5
|
"homepage": "https://feathersjs.com",
|
|
6
6
|
"keywords": [
|
|
@@ -56,34 +56,39 @@
|
|
|
56
56
|
"chalk": "^4.0.1",
|
|
57
57
|
"lodash": "^4.17.21",
|
|
58
58
|
"prettier": "^2.8.3",
|
|
59
|
-
"typescript": "^4.9.
|
|
59
|
+
"typescript": "^4.9.5"
|
|
60
60
|
},
|
|
61
61
|
"devDependencies": {
|
|
62
|
-
"@feathersjs/adapter-commons": "^5.0.0-pre.
|
|
63
|
-
"@feathersjs/authentication": "^5.0.0-pre.
|
|
64
|
-
"@feathersjs/authentication-client": "^5.0.0-pre.
|
|
65
|
-
"@feathersjs/authentication-local": "^5.0.0-pre.
|
|
66
|
-
"@feathersjs/authentication-oauth": "^5.0.0-pre.
|
|
67
|
-
"@feathersjs/configuration": "^5.0.0-pre.
|
|
68
|
-
"@feathersjs/errors": "^5.0.0-pre.
|
|
69
|
-
"@feathersjs/express": "^5.0.0-pre.
|
|
70
|
-
"@feathersjs/feathers": "^5.0.0-pre.
|
|
71
|
-
"@feathersjs/knex": "^5.0.0-pre.
|
|
72
|
-
"@feathersjs/koa": "^5.0.0-pre.
|
|
73
|
-
"@feathersjs/mongodb": "^5.0.0-pre.
|
|
74
|
-
"@feathersjs/rest-client": "^5.0.0-pre.
|
|
75
|
-
"@feathersjs/schema": "^5.0.0-pre.
|
|
76
|
-
"@feathersjs/socketio": "^5.0.0-pre.
|
|
77
|
-
"@feathersjs/transport-commons": "^5.0.0-pre.
|
|
78
|
-
"@feathersjs/typebox": "^5.0.0-pre.
|
|
62
|
+
"@feathersjs/adapter-commons": "^5.0.0-pre.37",
|
|
63
|
+
"@feathersjs/authentication": "^5.0.0-pre.37",
|
|
64
|
+
"@feathersjs/authentication-client": "^5.0.0-pre.37",
|
|
65
|
+
"@feathersjs/authentication-local": "^5.0.0-pre.37",
|
|
66
|
+
"@feathersjs/authentication-oauth": "^5.0.0-pre.37",
|
|
67
|
+
"@feathersjs/configuration": "^5.0.0-pre.37",
|
|
68
|
+
"@feathersjs/errors": "^5.0.0-pre.37",
|
|
69
|
+
"@feathersjs/express": "^5.0.0-pre.37",
|
|
70
|
+
"@feathersjs/feathers": "^5.0.0-pre.37",
|
|
71
|
+
"@feathersjs/knex": "^5.0.0-pre.37",
|
|
72
|
+
"@feathersjs/koa": "^5.0.0-pre.37",
|
|
73
|
+
"@feathersjs/mongodb": "^5.0.0-pre.37",
|
|
74
|
+
"@feathersjs/rest-client": "^5.0.0-pre.37",
|
|
75
|
+
"@feathersjs/schema": "^5.0.0-pre.37",
|
|
76
|
+
"@feathersjs/socketio": "^5.0.0-pre.37",
|
|
77
|
+
"@feathersjs/transport-commons": "^5.0.0-pre.37",
|
|
78
|
+
"@feathersjs/typebox": "^5.0.0-pre.37",
|
|
79
79
|
"@types/mocha": "^10.0.1",
|
|
80
80
|
"@types/node": "^18.11.18",
|
|
81
81
|
"@types/prettier": "^2.7.2",
|
|
82
|
-
"axios": "^1.
|
|
82
|
+
"axios": "^1.3.0",
|
|
83
83
|
"mocha": "^10.2.0",
|
|
84
|
+
"mongodb": "^5.0.1",
|
|
85
|
+
"mssql": "^9.1.1",
|
|
86
|
+
"mysql": "^2.18.1",
|
|
87
|
+
"pg": "^8.9.0",
|
|
84
88
|
"shx": "^0.3.4",
|
|
89
|
+
"sqlite3": "^5.1.4",
|
|
85
90
|
"ts-node": "^10.9.1",
|
|
86
|
-
"type-fest": "^3.5.
|
|
91
|
+
"type-fest": "^3.5.4"
|
|
87
92
|
},
|
|
88
|
-
"gitHead": "
|
|
93
|
+
"gitHead": "17a8b3b2614876772472d3cab3d96d45c01db6ed"
|
|
89
94
|
}
|