@alevnyacow/nzmt 0.25.2 → 0.26.1

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.
Files changed (3) hide show
  1. package/README.md +1 -3
  2. package/bin/cli.js +10 -19
  3. package/package.json +1 -1
package/README.md CHANGED
@@ -142,12 +142,10 @@ export default async function Page() {
142
142
  | `npx nzmt e <name>` | **e**ntity ||
143
143
  | `npx nzmt vo <name>` | **v**alue **o**bject ||
144
144
  | `npx nzmt cs <name>` | **c**ustom **s**tore (all schemas are `z.object({})`) ||
145
- | `npx nzmt p <name>` | **p**rovider | `pt:Console` will generate Console provider. Default value is `pt:API` |
145
+ | `npx nzmt p <name>` | **p**rovider | |
146
146
  | `npx nzmt s <name>` | **s**ervice |`i:UserStore,Logger` will automatically inject `UserStore` and `Logger`. E.g. `npx nzmt s shop i:UserStore,ProductStore` will create `ShopService` with already injected `UserStore` and `ProductStore`|
147
147
  | `npx nzmt c <name>` | **c**ontroller |`i:UserService` will automatically inject `UserService`. `Logger` and `Guards` are injected by default regardless of `i:` option|
148
148
 
149
- Here’s a shorter, simpler version in English:
150
-
151
149
  ---
152
150
 
153
151
  # How to implement your own methods
package/bin/cli.js CHANGED
@@ -827,36 +827,27 @@ function generateProvider(lowerCase, upperCase) {
827
827
 
828
828
  fs.mkdirSync(folder, { recursive: true })
829
829
 
830
- // Base
830
+ // Provider
831
831
  fs.writeFileSync(path.resolve(folder, `${entityName}.provider.ts`), [
832
- `import { Module } from '@alevnyacow/nzmt',`,
832
+ `import { Module } from '@alevnyacow/nzmt'`,
833
833
  '',
834
834
  `export const ${lowerCase}ProviderMetadata = {`,
835
835
  `\tname: '${upperCase}Provider',`,
836
836
  `\tschemas: {}`,
837
837
  `} satisfies Module.Metadata`,
838
838
  ``,
839
- `type Methods = Module.Methods<typeof ${lowerCase}ProviderMetadata>;`,
840
- ``,
841
- `export abstract class ${upperCase}Provider {`,
842
- `\tprotected methods = Module.methods(${lowerCase}ProviderMetadata)`,
843
- `}`
844
- ].join('\n'))
845
-
846
- // Mock
847
- fs.writeFileSync(path.resolve(folder, `${entityName}.provider.mock.ts`), [
848
- `import { ${upperCase}Provider } from './${entityName}.provider'`,
839
+ 'const methods Module.methods(${lowerCase}ProviderMetadata)',
849
840
  '',
850
- `export class ${upperCase}MockProvider extends ${upperCase}Provider {`,
841
+ `export class ${upperCase}Provider {`,
851
842
  `\t`,
852
843
  `}`
853
844
  ].join('\n'))
854
845
 
855
- // Provider
856
- fs.writeFileSync(path.resolve(folder, `${entityName}.provider.${providerType.toLowerCase()}.ts`), [
846
+ // Mock
847
+ fs.writeFileSync(path.resolve(folder, `${entityName}.provider.mock.ts`), [
857
848
  `import { ${upperCase}Provider } from './${entityName}.provider'`,
858
849
  '',
859
- `export class ${upperCase}${providerType}Provider extends ${upperCase}Provider {`,
850
+ `export class ${upperCase}MockProvider implements ${upperCase}Provider {`,
860
851
  `\t`,
861
852
  `}`
862
853
  ].join('\n'))
@@ -864,7 +855,7 @@ function generateProvider(lowerCase, upperCase) {
864
855
  // Barrel
865
856
  fs.writeFileSync(path.resolve(folder, `index.ts`), [
866
857
  `export * from './${entityName}.provider'`,
867
- `export * from './${entityName}.provider.${providerType.toLowerCase()}'`
858
+ `export * from './${entityName}.provider.mock'`
868
859
  ].join('\n'))
869
860
 
870
861
  // Update DI
@@ -873,13 +864,13 @@ function generateProvider(lowerCase, upperCase) {
873
864
  insertBeforeLineInFile(
874
865
  diEntriesPath,
875
866
  'type DIEntries =',
876
- `import { ${upperCase}MockProvider, ${upperCase}${providerType}Provider } from '@${config?.paths?.providers}/${entityName}'`
867
+ `import { ${upperCase}MockProvider, ${upperCase}Provider } from '@${config?.paths?.providers}/${entityName}'`
877
868
  )
878
869
 
879
870
  insertAfterLineInFile(
880
871
  diEntriesPath,
881
872
  '// Providers',
882
- `\t${upperCase}Provider: { test: ${upperCase}MockProvider, prod: ${upperCase}${providerType}Provider, dev: ${upperCase}${providerType}Provider },`,
873
+ `\t${upperCase}Provider: { test: ${upperCase}MockProvider, prod: ${upperCase}Provider, dev: ${upperCase}Provider },`,
883
874
  )
884
875
  }
885
876
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@alevnyacow/nzmt",
3
- "version": "0.25.2",
3
+ "version": "0.26.1",
4
4
  "description": "Next Zod Modules Toolkit",
5
5
  "keywords": ["next", "full-stack", "server", "backend", "cli", "scaffolding", "zod", "rest", "contract programming", "contract-first", "react-query", "ddd", "domain-driven"],
6
6
  "repository": {