@ngflow/ng-architect 1.2.2 → 1.2.4

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ngflow/ng-architect",
3
- "version": "1.2.2",
3
+ "version": "1.2.4",
4
4
  "description": "Angular schematics to generate files and maintain clean architecture",
5
5
  "scripts": {
6
6
  "build": "tsc -p tsconfig.json",
@@ -11,7 +11,7 @@ function default_1(options) {
11
11
  let subFolders = [];
12
12
  switch (options.structure) {
13
13
  case 'flat':
14
- basePath = `/${featureKebab}`;
14
+ basePath = `src/app/${featureKebab}`;
15
15
  break;
16
16
  case 'domain-driven':
17
17
  basePath = `src/app/features/${featureKebab}`;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"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"}
@@ -21,7 +21,8 @@ export default function (options: any): Rule {
21
21
 
22
22
  switch (options.structure) {
23
23
  case 'flat':
24
- basePath = `/${featureKebab}`;
24
+
25
+ basePath = `src/app/${featureKebab}`;
25
26
  break;
26
27
 
27
28
  case 'domain-driven':
@@ -58,6 +59,7 @@ export default function (options: any): Rule {
58
59
 
59
60
  (_tree: Tree, context: SchematicContext) => {
60
61
  context.logger.info(`🟢 Updating app.routes.ts with ${featurePascal}Page...`);
62
+
61
63
  updateAppRoutes(_tree, featureKebab, featurePascal, options.structure, options);
62
64
  },
63
65
 
@@ -35,7 +35,7 @@ function updateAppRoutes(tree, featureKebab, featurePascal, structure, options)
35
35
  const importPath = (() => {
36
36
  switch (structure) {
37
37
  case 'flat':
38
- return `./${featureKebab}/${featureKebab}.page`;
38
+ return `./${featureKebab}/pages/${featureKebab}.page`;
39
39
  case 'domain-driven':
40
40
  return `./features/${featureKebab}/pages/${featureKebab}.page`;
41
41
  case 'module-driven':
@@ -44,17 +44,11 @@ function updateAppRoutes(tree, featureKebab, featurePascal, structure, options)
44
44
  return `./${featureKebab}/pages/${featureKebab}.page`;
45
45
  }
46
46
  })();
47
- const importStatement = `import { ${featurePascal}Page } from '${importPath}';\n`;
48
- // Determinar rota (lazy-load para module/domain-driven)
49
- const routeEntry = structure === 'module-driven' || structure === 'domain-driven'
50
- ? ` { path: '${featureKebab}', loadChildren: () => import('${importPath.replace('.page', '.module')}').then(m => m.${featurePascal}Module) },`
51
- : ` { path: '${featureKebab}', component: ${featurePascal}Page },`;
47
+ const importStatement = `// Lazy-loaded standalone component: ${featurePascal}Page\n`;
48
+ const routeEntry = ` { path: '${featureKebab}', loadComponent: () => import('${importPath}').then(c => c.${featurePascal}Page) },`;
52
49
  // Evitar duplicação
53
- if (!content.includes(importStatement)) {
54
- content = importStatement + content;
55
- }
56
50
  if (!content.includes(routeEntry)) {
57
- content = content.replace(/export const routes: Routes = \[/, (match) => match + '\n' + routeEntry);
51
+ content = importStatement + content.replace(/export const routes: Routes = \[/, (match) => match + '\n' + routeEntry);
58
52
  }
59
53
  tree.overwrite(routesFilePath, content);
60
54
  }
@@ -1 +1 @@
1
- {"version":3,"file":"routes-utils.js","sourceRoot":"","sources":["routes-utils.ts"],"names":[],"mappings":";;AAEA,0CAuEC;AAvED,SAAgB,eAAe,CAC7B,IAAU,EACV,YAAoB,EACpB,aAAqB,EACrB,SAAiB,EACjB,OAAY;;IAEZ,IAAI,cAAc,GAAW,EAAE,CAAC;IAEhC,0CAA0C;IAC1C,QAAQ,SAAS,EAAE,CAAC;QAClB,KAAK,MAAM,CAAC;QACZ,KAAK,eAAe,CAAC;QACrB,KAAK,eAAe;YAClB,cAAc,GAAG,uBAAuB,CAAC;YACzC,MAAM;QAER,KAAK,UAAU;YACb,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;gBAChB,cAAc,GAAG,QAAQ,OAAO,CAAC,GAAG,wBAAwB,CAAC;YAC/D,CAAC;iBAAM,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;gBACvB,4CAA4C;gBAC5C,cAAc,GAAG,QAAQ,OAAO,CAAC,GAAG,wBAAwB,CAAC;gBAC7D,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,EAAE,CAAC;oBACjC,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,kFAAkF,CAAC,CAAC;gBAClH,CAAC;YACH,CAAC;YACD,MAAM;QAER;YACE,MAAM,IAAI,KAAK,CAAC,sBAAsB,SAAS,EAAE,CAAC,CAAC;IACvD,CAAC;IAED,+BAA+B;IAC/B,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,EAAE,CAAC;QACjC,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,kFAAkF,CAAC,CAAC;IAClH,CAAC;IAED,IAAI,OAAO,GAAG,CAAA,MAAA,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,0CAAE,QAAQ,CAAC,OAAO,CAAC,KAAI,EAAE,CAAC;IAEjE,oBAAoB;IACpB,MAAM,UAAU,GAAG,CAAC,GAAG,EAAE;QACvB,QAAQ,SAAS,EAAE,CAAC;YAClB,KAAK,MAAM;gBACT,OAAO,KAAK,YAAY,IAAI,YAAY,OAAO,CAAC;YAClD,KAAK,eAAe;gBAClB,OAAO,cAAc,YAAY,UAAU,YAAY,OAAO,CAAC;YACjE,KAAK,eAAe;gBAClB,OAAO,KAAK,OAAO,CAAC,MAAM,IAAI,YAAY,UAAU,YAAY,OAAO,CAAC;YAC1E,KAAK,UAAU;gBACb,OAAO,KAAK,YAAY,UAAU,YAAY,OAAO,CAAC;QAC1D,CAAC;IACH,CAAC,CAAC,EAAE,CAAC;IAEL,MAAM,eAAe,GAAG,YAAY,aAAa,gBAAgB,UAAU,MAAM,CAAC;IAElF,wDAAwD;IACxD,MAAM,UAAU,GACd,SAAS,KAAK,eAAe,IAAI,SAAS,KAAK,eAAe;QAC5D,CAAC,CAAC,cAAc,YAAY,kCAAkC,UAAU,CAAC,OAAO,CAAC,OAAO,EAAE,SAAS,CAAC,kBAAkB,aAAa,YAAY;QAC/I,CAAC,CAAC,cAAc,YAAY,iBAAiB,aAAa,SAAS,CAAC;IAExE,oBAAoB;IACpB,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC;QACvC,OAAO,GAAG,eAAe,GAAG,OAAO,CAAC;IACtC,CAAC;IACD,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;QAClC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,kCAAkC,EAAE,CAAC,KAAY,EAAE,EAAE,CAAC,KAAK,GAAG,IAAI,GAAG,UAAU,CAAC,CAAC;IAC7G,CAAC;IAED,IAAI,CAAC,SAAS,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;AAC1C,CAAC"}
1
+ {"version":3,"file":"routes-utils.js","sourceRoot":"","sources":["routes-utils.ts"],"names":[],"mappings":";;AAEA,0CAmEC;AAnED,SAAgB,eAAe,CAC7B,IAAU,EACV,YAAoB,EACpB,aAAqB,EACrB,SAAiB,EACjB,OAAY;;IAEZ,IAAI,cAAc,GAAW,EAAE,CAAC;IAEhC,0CAA0C;IAC1C,QAAQ,SAAS,EAAE,CAAC;QAClB,KAAK,MAAM,CAAC;QACZ,KAAK,eAAe,CAAC;QACrB,KAAK,eAAe;YAClB,cAAc,GAAG,uBAAuB,CAAC;YACzC,MAAM;QAER,KAAK,UAAU;YACb,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;gBAChB,cAAc,GAAG,QAAQ,OAAO,CAAC,GAAG,wBAAwB,CAAC;YAC/D,CAAC;iBAAM,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;gBACvB,4CAA4C;gBAC5C,cAAc,GAAG,QAAQ,OAAO,CAAC,GAAG,wBAAwB,CAAC;gBAC7D,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,EAAE,CAAC;oBACjC,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,kFAAkF,CAAC,CAAC;gBAClH,CAAC;YACH,CAAC;YACD,MAAM;QAER;YACE,MAAM,IAAI,KAAK,CAAC,sBAAsB,SAAS,EAAE,CAAC,CAAC;IACvD,CAAC;IAED,+BAA+B;IAC/B,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,EAAE,CAAC;QACjC,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,kFAAkF,CAAC,CAAC;IAClH,CAAC;IAED,IAAI,OAAO,GAAG,CAAA,MAAA,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,0CAAE,QAAQ,CAAC,OAAO,CAAC,KAAI,EAAE,CAAC;IAEjE,oBAAoB;IACpB,MAAM,UAAU,GAAG,CAAC,GAAG,EAAE;QACvB,QAAQ,SAAS,EAAE,CAAC;YAClB,KAAK,MAAM;gBACT,OAAO,KAAK,YAAY,UAAU,YAAY,OAAO,CAAC;YACxD,KAAK,eAAe;gBAClB,OAAO,cAAc,YAAY,UAAU,YAAY,OAAO,CAAC;YACjE,KAAK,eAAe;gBAClB,OAAO,KAAK,OAAO,CAAC,MAAM,IAAI,YAAY,UAAU,YAAY,OAAO,CAAC;YAC1E,KAAK,UAAU;gBACb,OAAO,KAAK,YAAY,UAAU,YAAY,OAAO,CAAC;QAC1D,CAAC;IACH,CAAC,CAAC,EAAE,CAAC;IAEL,MAAM,eAAe,GAAG,wCAAwC,aAAa,QAAQ,CAAC;IAEtF,MAAM,UAAU,GAAG,cAAc,YAAY,mCAAmC,UAAU,kBAAkB,aAAa,UAAU,CAAC;IAEpI,oBAAoB;IACpB,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;QAClC,OAAO,GAAG,eAAe,GAAG,OAAO,CAAC,OAAO,CACzC,kCAAkC,EAClC,CAAC,KAAa,EAAE,EAAE,CAAC,KAAK,GAAG,IAAI,GAAG,UAAU,CAC7C,CAAC;IACJ,CAAC;IAED,IAAI,CAAC,SAAS,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;AAC1C,CAAC"}
@@ -44,7 +44,7 @@ export function updateAppRoutes(
44
44
  const importPath = (() => {
45
45
  switch (structure) {
46
46
  case 'flat':
47
- return `./${featureKebab}/${featureKebab}.page`;
47
+ return `./${featureKebab}/pages/${featureKebab}.page`;
48
48
  case 'domain-driven':
49
49
  return `./features/${featureKebab}/pages/${featureKebab}.page`;
50
50
  case 'module-driven':
@@ -54,20 +54,16 @@ export function updateAppRoutes(
54
54
  }
55
55
  })();
56
56
 
57
- const importStatement = `import { ${featurePascal}Page } from '${importPath}';\n`;
57
+ const importStatement = `// Lazy-loaded standalone component: ${featurePascal}Page\n`;
58
58
 
59
- // Determinar rota (lazy-load para module/domain-driven)
60
- const routeEntry =
61
- structure === 'module-driven' || structure === 'domain-driven'
62
- ? ` { path: '${featureKebab}', loadChildren: () => import('${importPath.replace('.page', '.module')}').then(m => m.${featurePascal}Module) },`
63
- : ` { path: '${featureKebab}', component: ${featurePascal}Page },`;
59
+ const routeEntry = ` { path: '${featureKebab}', loadComponent: () => import('${importPath}').then(c => c.${featurePascal}Page) },`;
64
60
 
65
61
  // Evitar duplicação
66
- if (!content.includes(importStatement)) {
67
- content = importStatement + content;
68
- }
69
62
  if (!content.includes(routeEntry)) {
70
- content = content.replace(/export const routes: Routes = \[/, (match:string) => match + '\n' + routeEntry);
63
+ content = importStatement + content.replace(
64
+ /export const routes: Routes = \[/,
65
+ (match: string) => match + '\n' + routeEntry
66
+ );
71
67
  }
72
68
 
73
69
  tree.overwrite(routesFilePath, content);