@devstroupe/devkit-cli 1.1.3 → 1.1.5

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.
@@ -113,4 +113,17 @@ export class AuthService {
113
113
 
114
114
  return Array.isArray(permissions) && permissions.includes(permission);
115
115
  }
116
+
117
+ hasRole(role: string): boolean {
118
+ const user = this.currentUser;
119
+ if (!user) return false;
120
+
121
+ const roleName = typeof user.role === 'object' ? (user.role as any).name : user.role;
122
+
123
+ if (roleName === 'ADMIN' || roleName === 'Administrador') {
124
+ return true;
125
+ }
126
+
127
+ return roleName === role;
128
+ }
116
129
  }
package/dist/index.js CHANGED
@@ -1180,7 +1180,54 @@ SERVICE_PORT=${port}
1180
1180
  // Helper para linkar dependências locais se estiver rodando no monorepo de desenvolvimento
1181
1181
  function patchLocalDependencies(backendDest, frontendDest, boilerplatesDir) {
1182
1182
  const packagesDir = path.resolve(boilerplatesDir, '../../..');
1183
- if (!fs.existsSync(packagesDir) || !fs.existsSync(path.join(packagesDir, 'devkit-core'))) {
1183
+ const isLocalMonorepo = fs.existsSync(packagesDir) && fs.existsSync(path.join(packagesDir, 'devkit-core'));
1184
+ if (!isLocalMonorepo) {
1185
+ // Modo de Produção / CLI Global:
1186
+ // Apenas substitui "workspace:*" pelas versões correspondentes publicadas no npm usando a versão atual da CLI (cliVersion)
1187
+ if (backendDest && fs.existsSync(backendDest)) {
1188
+ const backendPkgPath = path.join(backendDest, 'package.json');
1189
+ if (fs.existsSync(backendPkgPath)) {
1190
+ try {
1191
+ const pkg = fs.readJsonSync(backendPkgPath);
1192
+ let modified = false;
1193
+ for (const key of Object.keys(pkg.dependencies || {})) {
1194
+ if (pkg.dependencies[key] === 'workspace:*') {
1195
+ pkg.dependencies[key] = `^${cliVersion}`;
1196
+ modified = true;
1197
+ }
1198
+ }
1199
+ if (modified) {
1200
+ fs.writeJsonSync(backendPkgPath, pkg, { spaces: 2 });
1201
+ console.log(`[Config] Dependências locais do backend atualizadas para a versão ^${cliVersion}.`);
1202
+ }
1203
+ }
1204
+ catch (err) {
1205
+ console.error('[Erro] Falha ao atualizar dependências no backend (modo produção):', err);
1206
+ }
1207
+ }
1208
+ }
1209
+ if (frontendDest && fs.existsSync(frontendDest)) {
1210
+ const frontendPkgPath = path.join(frontendDest, 'package.json');
1211
+ if (fs.existsSync(frontendPkgPath)) {
1212
+ try {
1213
+ const pkg = fs.readJsonSync(frontendPkgPath);
1214
+ let modified = false;
1215
+ for (const key of Object.keys(pkg.dependencies || {})) {
1216
+ if (pkg.dependencies[key] === 'workspace:*') {
1217
+ pkg.dependencies[key] = `^${cliVersion}`;
1218
+ modified = true;
1219
+ }
1220
+ }
1221
+ if (modified) {
1222
+ fs.writeJsonSync(frontendPkgPath, pkg, { spaces: 2 });
1223
+ console.log(`[Config] Dependências locais do frontend atualizadas para a versão ^${cliVersion}.`);
1224
+ }
1225
+ }
1226
+ catch (err) {
1227
+ console.error('[Erro] Falha ao atualizar dependências no frontend (modo produção):', err);
1228
+ }
1229
+ }
1230
+ }
1184
1231
  return;
1185
1232
  }
1186
1233
  const coreSrc = path.join(packagesDir, 'devkit-core');
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@devstroupe/devkit-cli",
3
- "version": "1.1.3",
3
+ "version": "1.1.5",
4
4
  "description": "DevsTroupe Development Kit CLI — scaffold NestJS+Angular projects, inject Spartan UI, generate CRUDs and audit architectural governance",
5
5
  "license": "MIT",
6
6
  "keywords": [
@@ -36,7 +36,7 @@
36
36
  "dependencies": {
37
37
  "commander": "^12.0.0",
38
38
  "fs-extra": "^11.2.0",
39
- "@devstroupe/devkit-core": "1.1.3"
39
+ "@devstroupe/devkit-core": "1.1.5"
40
40
  },
41
41
  "devDependencies": {
42
42
  "@types/fs-extra": "^11.0.4",