@neetru/cli 2.7.5 → 2.9.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 (105) hide show
  1. package/CHANGELOG.md +316 -220
  2. package/README.md +137 -137
  3. package/dist/cli-kit/format.d.ts +49 -0
  4. package/dist/cli-kit/format.js +88 -0
  5. package/dist/cli-kit/format.js.map +1 -0
  6. package/dist/cli-kit/glyphs.d.ts +22 -0
  7. package/dist/cli-kit/glyphs.js +22 -0
  8. package/dist/cli-kit/glyphs.js.map +1 -0
  9. package/dist/cli-kit/index.d.ts +13 -0
  10. package/dist/cli-kit/index.js +12 -0
  11. package/dist/cli-kit/index.js.map +1 -0
  12. package/dist/cli-kit/palette.d.ts +10 -0
  13. package/dist/cli-kit/palette.js +36 -0
  14. package/dist/cli-kit/palette.js.map +1 -0
  15. package/dist/commands/ai.js +8 -8
  16. package/dist/commands/autocomplete.js +34 -34
  17. package/dist/commands/bug.d.ts +87 -0
  18. package/dist/commands/bug.js +419 -0
  19. package/dist/commands/bug.js.map +1 -0
  20. package/dist/commands/customers.d.ts +17 -0
  21. package/dist/commands/customers.js +160 -0
  22. package/dist/commands/customers.js.map +1 -0
  23. package/dist/commands/db.d.ts +91 -7
  24. package/dist/commands/db.js +898 -123
  25. package/dist/commands/db.js.map +1 -1
  26. package/dist/commands/deploy.d.ts +5 -0
  27. package/dist/commands/deploy.js +68 -0
  28. package/dist/commands/deploy.js.map +1 -1
  29. package/dist/commands/dev.d.ts +68 -0
  30. package/dist/commands/dev.js +345 -0
  31. package/dist/commands/dev.js.map +1 -0
  32. package/dist/commands/docs.d.ts +4 -0
  33. package/dist/commands/docs.js +99 -7
  34. package/dist/commands/docs.js.map +1 -1
  35. package/dist/commands/doctor.js +4 -1
  36. package/dist/commands/doctor.js.map +1 -1
  37. package/dist/commands/init.js +121 -121
  38. package/dist/commands/marketplace.d.ts +36 -0
  39. package/dist/commands/marketplace.js +584 -0
  40. package/dist/commands/marketplace.js.map +1 -0
  41. package/dist/commands/new.d.ts +6 -0
  42. package/dist/commands/new.js +220 -40
  43. package/dist/commands/new.js.map +1 -1
  44. package/dist/commands/open.d.ts +8 -0
  45. package/dist/commands/open.js +61 -13
  46. package/dist/commands/open.js.map +1 -1
  47. package/dist/commands/products-db.d.ts +1 -1
  48. package/dist/commands/products-db.js +17 -4
  49. package/dist/commands/products-db.js.map +1 -1
  50. package/dist/commands/products.d.ts +23 -0
  51. package/dist/commands/products.js +39 -1
  52. package/dist/commands/products.js.map +1 -1
  53. package/dist/commands/tenants.js +15 -0
  54. package/dist/commands/tenants.js.map +1 -1
  55. package/dist/commands/ui.d.ts +1 -1
  56. package/dist/commands/ui.js +172 -2
  57. package/dist/commands/ui.js.map +1 -1
  58. package/dist/commands/workspaces.d.ts +10 -1
  59. package/dist/commands/workspaces.js +136 -22
  60. package/dist/commands/workspaces.js.map +1 -1
  61. package/dist/index.js +532 -44
  62. package/dist/index.js.map +1 -1
  63. package/dist/lib/ai/context.js +90 -90
  64. package/dist/lib/config-schema.d.ts +8 -8
  65. package/dist/lib/db-local/db-json.d.ts +63 -0
  66. package/dist/lib/db-local/db-json.js +189 -0
  67. package/dist/lib/db-local/db-json.js.map +1 -0
  68. package/dist/lib/db-local/env.d.ts +26 -0
  69. package/dist/lib/db-local/env.js +64 -0
  70. package/dist/lib/db-local/env.js.map +1 -0
  71. package/dist/lib/db-local/fingerprint.d.ts +8 -0
  72. package/dist/lib/db-local/fingerprint.js +28 -0
  73. package/dist/lib/db-local/fingerprint.js.map +1 -0
  74. package/dist/lib/db-local/index.d.ts +15 -0
  75. package/dist/lib/db-local/index.js +14 -0
  76. package/dist/lib/db-local/index.js.map +1 -0
  77. package/dist/lib/db-pipeline/build-deps.d.ts +14 -0
  78. package/dist/lib/db-pipeline/build-deps.js +158 -0
  79. package/dist/lib/db-pipeline/build-deps.js.map +1 -0
  80. package/dist/lib/db-pipeline/errors.d.ts +29 -0
  81. package/dist/lib/db-pipeline/errors.js +29 -0
  82. package/dist/lib/db-pipeline/errors.js.map +1 -0
  83. package/dist/lib/db-pipeline/index.d.ts +26 -0
  84. package/dist/lib/db-pipeline/index.js +25 -0
  85. package/dist/lib/db-pipeline/index.js.map +1 -0
  86. package/dist/lib/db-pipeline/pipeline.d.ts +13 -0
  87. package/dist/lib/db-pipeline/pipeline.js +119 -0
  88. package/dist/lib/db-pipeline/pipeline.js.map +1 -0
  89. package/dist/lib/db-pipeline/rehearse.d.ts +99 -0
  90. package/dist/lib/db-pipeline/rehearse.js +219 -0
  91. package/dist/lib/db-pipeline/rehearse.js.map +1 -0
  92. package/dist/lib/db-pipeline/types.d.ts +112 -0
  93. package/dist/lib/db-pipeline/types.js +20 -0
  94. package/dist/lib/db-pipeline/types.js.map +1 -0
  95. package/dist/lib/pickers.d.ts +12 -0
  96. package/dist/lib/pickers.js +34 -0
  97. package/dist/lib/pickers.js.map +1 -1
  98. package/package.json +66 -62
  99. package/templates/auth/callback.ts +22 -22
  100. package/templates/auth/sign-in.tsx +41 -41
  101. package/templates/billing/checkout.ts +22 -22
  102. package/templates/billing/page.tsx +43 -43
  103. package/templates/support/ticket-form.tsx +68 -68
  104. package/templates/usage/track.ts +30 -30
  105. package/templates/users/profile.tsx +43 -43
@@ -225,6 +225,40 @@ export async function pickProductId(token, opts = {}) {
225
225
  flagName: '--product',
226
226
  });
227
227
  }
228
+ /**
229
+ * pdv #3 fix: resolve slug OU id de produto → sempre retorna o ID canônico.
230
+ *
231
+ * Detecta se o input parece ser um slug (só letras/números/hifens, sem
232
+ * underscores ou tamanho > 40 chars) e, se for, busca a lista de produtos pra
233
+ * encontrar o id correspondente. Se não encontrar por slug, tenta como id direto
234
+ * (o servidor vai rejeitar se inválido — fail-closed).
235
+ *
236
+ * Isso permite que `--product pdv-agiliza` funcione igual a
237
+ * `--product qkcWzQ43LthAIRlVUSQ6` em qualquer comando que aceite produto.
238
+ */
239
+ export async function resolveProductIdentifier(token, input, opts = {}) {
240
+ const trimmed = input.trim();
241
+ // Heurística: slugs são lowercase, separados por hifens, ≤40 chars, sem underscores.
242
+ // IDs do Firestore são alfanuméricos ≥20 chars ou têm underscores/maiúsculas.
243
+ const looksLikeSlug = /^[a-z0-9][a-z0-9-]{0,38}[a-z0-9]$/.test(trimmed) ||
244
+ /^[a-z0-9]{2,20}$/.test(trimmed);
245
+ if (!looksLikeSlug)
246
+ return trimmed; // já parece um id — passa direto
247
+ // Tenta resolver via lista de produtos.
248
+ let products;
249
+ try {
250
+ products = await listProducts(token);
251
+ }
252
+ catch {
253
+ // Se não conseguiu listar, passa o input como está — o servidor vai validar.
254
+ return trimmed;
255
+ }
256
+ const match = products.find((p) => p.slug === trimmed);
257
+ if (match)
258
+ return match.id;
259
+ // Não encontrou por slug — pode ser um id curto válido; passa para o servidor decidir.
260
+ return trimmed;
261
+ }
228
262
  export async function pickProductSlug(token, opts = {}) {
229
263
  return resolveOrPick({
230
264
  ...opts,
@@ -1 +1 @@
1
- {"version":3,"file":"pickers.js","sourceRoot":"","sources":["../../src/lib/pickers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pickers.js","sourceRoot":"","sources":["../../src/lib/pickers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,QAAQ,MAAM,UAAU,CAAC;AAChC,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAC3E,OAAO,EAAE,GAAG,EAAE,MAAM,oBAAoB,CAAC;AAOzC,MAAM,UAAU,aAAa,CAAC,OAA6B,EAAE;IAC3D,OAAO,CACL,CAAC,IAAI,CAAC,IAAI;QACV,CAAC,IAAI,CAAC,cAAc;QACpB,OAAO,CAAC,GAAG,CAAC,EAAE,KAAK,MAAM;QACzB,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC;QAC5B,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAC9B,CAAC;AACJ,CAAC;AAED,SAAS,SAAS,CAAC,OAAe,EAAE,IAAc;IAChD,IAAI,IAAI,EAAE,CAAC;QACT,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,eAAe,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC;IAC9E,CAAC;SAAM,CAAC;QACN,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACrB,CAAC;IACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC;AAED,SAAS,UAAU,CAAC,KAAc,EAAE,IAAc;IAChD,IAAI,KAAK,YAAY,WAAW,EAAE,CAAC;QACjC,IAAI,IAAI,EAAE,CAAC;YACT,OAAO,CAAC,GAAG,CACT,IAAI,CAAC,SAAS,CAAC;gBACb,EAAE,EAAE,KAAK;gBACT,KAAK,EAAE,KAAK,CAAC,IAAI;gBACjB,MAAM,EAAE,KAAK,CAAC,MAAM;gBACpB,OAAO,EAAE,KAAK,CAAC,OAAO;aACvB,CAAC,CACH,CAAC;QACJ,CAAC;aAAM,IAAI,KAAK,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;YAChC,GAAG,CAAC,KAAK,CAAC,wCAAwC,CAAC,CAAC;QACtD,CAAC;aAAM,IAAI,KAAK,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;YAChC,GAAG,CAAC,KAAK,CAAC,kBAAkB,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QAC/C,CAAC;aAAM,CAAC;YACN,GAAG,CAAC,KAAK,CAAC,qBAAqB,KAAK,CAAC,MAAM,MAAM,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QACpE,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7C,CAAC;IACD,IAAI,KAAK,YAAY,eAAe,EAAE,CAAC;QACrC,IAAI,IAAI,EAAE,CAAC;YACT,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QACvF,CAAC;aAAM,CAAC;YACN,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAC3B,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,IAAI,IAAI,EAAE,CAAC;QACT,OAAO,CAAC,GAAG,CACT,IAAI,CAAC,SAAS,CAAC;YACb,EAAE,EAAE,KAAK;YACT,KAAK,EAAE,SAAS;YAChB,OAAO,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;SAChE,CAAC,CACH,CAAC;IACJ,CAAC;SAAM,CAAC;QACN,GAAG,CAAC,KAAK,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IACpE,CAAC;IACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC;AAmBD,MAAM,CAAC,KAAK,UAAU,aAAa,CAAI,IAAuB;IAC5D,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC;IACtC,IAAI,OAAO;QAAE,OAAO,OAAO,CAAC;IAE5B,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;QACd,SAAS,CAAC,GAAG,IAAI,CAAC,QAAQ,gCAAgC,EAAE,IAAI,CAAC,CAAC;IACpE,CAAC;IAED,IAAI,KAAU,CAAC;IACf,IAAI,CAAC;QACH,KAAK,GAAG,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;IAC/B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,UAAU,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;IAC/B,CAAC;IAED,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,SAAS,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;IACxC,CAAC;IAED,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9B,CAAC;IAED,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC;QACzB,MAAM,SAAS,GAAG,KAAK;aACpB,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;aACzE,IAAI,CAAC,IAAI,CAAC,CAAC;QACd,SAAS,CACP,2CAA2C,IAAI,CAAC,QAAQ,mCAAmC,SAAS,EAAE,EACtG,IAAI,CAAC,IAAI,CACV,CAAC;IACJ,CAAC;IAED,MAAM,OAAO,GAAU,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QAC1C,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;QACvB,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;QACvB,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;KACxB,CAAC,CAAC,CAAC;IAEJ,IAAI,IAAI,CAAC,WAAW,KAAK,KAAK,EAAE,CAAC;QAC/B,OAAO,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAC;QACvC,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,wBAAwB,CAAC,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC,CAAC;IACnF,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAqB;QACvD;YACE,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,OAAO;YACP,QAAQ,EAAE,EAAE;SACb;KACF,CAAC,CAAC;IAEH,IAAI,MAAM,CAAC,MAAM,KAAK,YAAY,EAAE,CAAC;QACnC,OAAO,UAAU,CAAC,KAAK,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;IAC/C,CAAC;IACD,OAAO,MAAM,CAAC,MAAM,CAAC;AACvB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,OAAe,EACf,OAII,EAAE;IAEN,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC;QACzB,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS;YAAE,OAAO,IAAI,CAAC,OAAO,CAAC;QACpD,IAAI,IAAI,CAAC,QAAQ,KAAK,KAAK;YAAE,OAAO,EAAE,CAAC;QACvC,SAAS,CAAC,WAAW,OAAO,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;IAC7C,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAoB;QACtD;YACE,IAAI,EAAE,OAAO;YACb,IAAI,EAAE,OAAO;YACb,OAAO;YACP,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,QAAQ,EAAE,CAAC,KAAa,EAAE,EAAE;gBAC1B,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;gBAC7B,IAAI,IAAI,CAAC,QAAQ;oBAAE,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;gBACjD,IAAI,IAAI,CAAC,QAAQ,KAAK,KAAK,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;oBAAE,OAAO,cAAc,CAAC;gBAC3E,OAAO,IAAI,CAAC;YACd,CAAC;SACF;KACF,CAAC,CAAC;IACH,OAAO,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;AAC7B,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,OAAe,EACf,OAA0C,EAC1C,OAA+C,EAAE;IAEjD,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC;QACzB,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS;YAAE,OAAO,IAAI,CAAC,OAAO,CAAC;QACpD,SAAS,CAAC,WAAW,OAAO,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;IAC7C,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAgB;QAClD;YACE,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,QAAQ;YACd,OAAO;YACP,OAAO;YACP,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,QAAQ,EAAE,EAAE;SACb;KACF,CAAC,CAAC;IACH,OAAO,MAAM,CAAC,MAAM,CAAC;AACvB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,OAAqD,EAAE;IAC3F,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC;IACtC,IAAI,OAAO;QAAE,OAAO,OAAO,CAAC;IAC5B,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC;QAAE,OAAO,MAAM,CAAC;IAExC,MAAM,MAAM,GAAG,MAAM,YAAY,CAC/B,uBAAuB,EACvB;QACE,EAAE,IAAI,EAAE,wBAAwB,EAAE,KAAK,EAAE,MAAM,EAAE;QACjD,EAAE,IAAI,EAAE,gCAAgC,EAAE,KAAK,EAAE,QAAQ,EAAE;KAC5D,EACD,EAAE,OAAO,EAAE,MAAM,EAAE,CACpB,CAAC;IAEF,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;QACxB,OAAO,UAAU,CAAC,aAAa,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;IACvD,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAUD,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,KAAa;IAC9C,MAAM,GAAG,GAAG,MAAM,UAAU,CAC1B,sBAAsB,EACtB,EAAE,KAAK,EAAE,CACV,CAAC;IACF,OAAO,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC;AACzC,CAAC;AAaD,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,KAAa,EACb,UAAiD,EAAE;IAEnD,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;IACrC,IAAI,OAAO,CAAC,OAAO;QAAE,MAAM,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;IAC5D,IAAI,OAAO,CAAC,MAAM;QAAE,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IACzD,MAAM,EAAE,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;IAC7B,MAAM,GAAG,GAAG,MAAM,UAAU,CAC1B,sBAAsB,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAC1C,EAAE,KAAK,EAAE,CACV,CAAC;IACF,OAAO,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC;AACxC,CAAC;AAMD,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,KAAa,EACb,UAAiD,EAAE;IAEnD,OAAO,WAAW,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;AACrC,CAAC;AAcD,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,KAAa,EACb,UAAmD,EAAE;IAErD,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;IACrC,IAAI,OAAO,CAAC,MAAM;QAAE,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IACzD,IAAI,OAAO,CAAC,QAAQ;QAAE,MAAM,CAAC,GAAG,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;IACrD,MAAM,EAAE,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;IAC7B,MAAM,GAAG,GAAG,MAAM,UAAU,CAC1B,sBAAsB,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAC1C,EAAE,KAAK,EAAE,CACV,CAAC;IACF,OAAO,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC;AACxC,CAAC;AAYD,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,KAAa,EACb,UAAoE,EAAE;IAEtE,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;IACrC,IAAI,OAAO,CAAC,SAAS;QAAE,MAAM,CAAC,GAAG,CAAC,WAAW,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;IAClE,IAAI,OAAO,CAAC,MAAM;QAAE,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IACzD,IAAI,OAAO,CAAC,MAAM;QAAE,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IACzD,MAAM,EAAE,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;IAC7B,MAAM,GAAG,GAAG,MAAM,UAAU,CAC1B,sBAAsB,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAC1C,EAAE,KAAK,EAAE,CACV,CAAC;IACF,OAAO,GAAG,CAAC,SAAS,IAAI,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC;AAC1C,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,OAAuB;IAClD,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,EAAE,CAAC;IACxD,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,OAAO,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAChE,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACtE,MAAM,IAAI,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC1E,OAAO,OAAO,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC9F,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,KAAa,EACb,OAAuE,EAAE;IAEzE,OAAO,aAAa,CAAiB;QACnC,GAAG,IAAI;QACP,OAAO,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,KAAK,CAAC;QAClC,MAAM,EAAE,YAAY;QACpB,KAAK,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE;QAC9B,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,oBAAoB;QAC7C,UAAU,EAAE,6DAA6D;QACzE,QAAQ,EAAE,WAAW;KACtB,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC5C,KAAa,EACb,KAAa,EACb,OAA6B,EAAE;IAE/B,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IAC7B,qFAAqF;IACrF,8EAA8E;IAC9E,MAAM,aAAa,GACjB,mCAAmC,CAAC,IAAI,CAAC,OAAO,CAAC;QACjD,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACnC,IAAI,CAAC,aAAa;QAAE,OAAO,OAAO,CAAC,CAAC,iCAAiC;IAErE,wCAAwC;IACxC,IAAI,QAA0B,CAAC;IAC/B,IAAI,CAAC;QACH,QAAQ,GAAG,MAAM,YAAY,CAAC,KAAK,CAAC,CAAC;IACvC,CAAC;IAAC,MAAM,CAAC;QACP,6EAA6E;QAC7E,OAAO,OAAO,CAAC;IACjB,CAAC;IACD,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC;IACvD,IAAI,KAAK;QAAE,OAAO,KAAK,CAAC,EAAE,CAAC;IAE3B,uFAAuF;IACvF,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,KAAa,EACb,OAAuE,EAAE;IAEzE,OAAO,aAAa,CAAiB;QACnC,GAAG,IAAI;QACP,OAAO,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,KAAK,CAAC;QAClC,MAAM,EAAE,YAAY;QACpB,KAAK,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,EAAE;QAC9C,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,oBAAoB;QAC7C,UAAU,EAAE,6DAA6D;QACzE,QAAQ,EAAE,WAAW;KACtB,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,KAAa,EACb,OAKI,EAAE;IAEN,OAAO,aAAa,CAAgB;QAClC,GAAG,IAAI;QACP,OAAO,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC,KAAK,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC;QACjF,MAAM,EAAE,WAAW;QACnB,KAAK,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE;QAC5B,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,mBAAmB;QAC5C,UAAU,EAAE,2CAA2C;QACvD,QAAQ,EAAE,UAAU;KACrB,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,KAAa,EACb,OAKI,EAAE;IAEN,OAAO,aAAa,CAAmB;QACrC,GAAG,IAAI;QACP,OAAO,EAAE,GAAG,EAAE,CAAC,cAAc,CAAC,KAAK,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC;QACpF,MAAM,EAAE,cAAc;QACtB,KAAK,EAAE,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,EAAE;QAClC,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,sBAAsB;QAC/C,UAAU,EAAE,8CAA8C;QAC1D,QAAQ,EAAE,eAAe;KAC1B,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,KAAa,EACb,OAKI,EAAE;IAEN,OAAO,aAAa,CAAgB;QAClC,GAAG,IAAI;QACP,OAAO,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC;QACnF,MAAM,EAAE,WAAW;QACnB,KAAK,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE;QAC5B,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,mBAAmB;QAC5C,UAAU,EAAE,2CAA2C;QACvD,QAAQ,EAAE,UAAU;KACrB,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,KAAa,EACb,OAMI,EAAE;IAEN,OAAO,aAAa,CAAyB;QAC3C,GAAG,IAAI;QACP,OAAO,EAAE,GAAG,EAAE,CACZ,oBAAoB,CAAC,KAAK,EAAE;YAC1B,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,MAAM,EAAE,IAAI,CAAC,MAAM;SACpB,CAAC;QACJ,MAAM,EAAE,aAAa;QACrB,KAAK,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE;QAChC,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,kBAAkB;QAC3C,UAAU,EAAE,0CAA0C;QACtD,QAAQ,EAAE,MAAM;KACjB,CAAC,CAAC;AACL,CAAC;AAED,SAAS,cAAc,CAAC,SAA2B;IACjD,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,IAAI,SAAS,CAAC,IAAI,IAAI,SAAS,CAAC,EAAE,CAAC;IAC9D,MAAM,OAAO,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,aAAa,SAAS,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACzF,MAAM,GAAG,GAAG,SAAS,CAAC,aAAa,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,SAAS,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACzF,MAAM,MAAM,GAAG,SAAS,CAAC,aAAa,IAAI,SAAS,CAAC,eAAe,CAAC;IACpE,MAAM,WAAW,GAAG,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC3D,OAAO,OAAO,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACvG,CAAC;AAED,SAAS,WAAW,CAAC,MAAqB;IACxC,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,EAAE,CAAC;IACrD,MAAM,OAAO,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,aAAa,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACnF,MAAM,GAAG,GAAG,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,MAAM,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACnF,OAAO,OAAO,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACvF,CAAC;AAED,SAAS,WAAW,CAAC,MAAqB;IACxC,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,EAAE,CAAC;IACtC,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACpE,MAAM,EAAE,GAAG,MAAM,CAAC,SAAS,IAAI,MAAM,CAAC,EAAE,CAAC;IACzC,MAAM,OAAO,GAAG,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC/C,MAAM,GAAG,GACP,MAAM,CAAC,cAAc,IAAI,IAAI;QAC3B,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,MAAM,CAAC,cAAc,IAAI,MAAM,CAAC,UAAU,IAAI,GAAG,IAAI,CAAC;QACvE,CAAC,CAAC,EAAE,CAAC;IACT,OAAO,OAAO,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC/F,CAAC;AAED,SAAS,aAAa,CAAC,QAAgC;IACrD,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,IAAI,QAAQ,CAAC,EAAE,CAAC;IAC5C,MAAM,OAAO,GAAG,KAAK,CAAC,GAAG,CAAC,aAAa,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAC;IAC7D,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACxE,MAAM,GAAG,GAAG,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACnF,OAAO,OAAO,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAClG,CAAC;AAED,SAAS,SAAS,CAAC,MAAsB;IACvC,IAAI,CAAC,MAAM;QAAE,OAAO,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACnC,IAAI,CAAC,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC;QAAE,OAAO,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACvF,IAAI,CAAC,UAAU,EAAE,WAAW,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC;QAAE,OAAO,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACpG,IAAI,CAAC,oBAAoB,EAAE,cAAc,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC;QAAE,OAAO,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACjG,OAAO,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AACxB,CAAC;AAED,SAAS,OAAO,CAAC,MAAgB;IAC/B,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;AAC3D,CAAC;AAED,SAAS,SAAS,CAAC,KAAa;IAC9B,4CAA4C;IAC5C,OAAO,KAAK,CAAC,OAAO,CAAC,iBAAiB,EAAE,EAAE,CAAC,CAAC;AAC9C,CAAC"}
package/package.json CHANGED
@@ -1,62 +1,66 @@
1
- {
2
- "name": "@neetru/cli",
3
- "version": "2.7.5",
4
- "type": "module",
5
- "description": "Neetru Developer Kit — scaffold, AI assistant, publish, build e deploy de produtos SaaS Neetru via Core (VM-based agents)",
6
- "keywords": [
7
- "neetru",
8
- "saas",
9
- "cli",
10
- "devkit",
11
- "scaffold",
12
- "deploy",
13
- "agent",
14
- "vm"
15
- ],
16
- "homepage": "https://core.neetru.com",
17
- "repository": {
18
- "type": "git",
19
- "url": "https://github.com/Neetru/neetru-core.git",
20
- "directory": "cli"
21
- },
22
- "author": "Neetru Inc. <neetrucode@gmail.com>",
23
- "license": "MIT",
24
- "bin": {
25
- "neetru": "./dist/index.js"
26
- },
27
- "main": "./dist/index.js",
28
- "files": [
29
- "dist",
30
- "templates",
31
- "README.md",
32
- "CHANGELOG.md"
33
- ],
34
- "scripts": {
35
- "build": "tsc",
36
- "dev": "tsx src/index.ts",
37
- "start": "node dist/index.js",
38
- "prepublishOnly": "npm run build"
39
- },
40
- "dependencies": {
41
- "@anthropic-ai/sdk": "^0.96.0",
42
- "chalk": "^5.4.1",
43
- "commander": "^12.1.0",
44
- "conf": "^13.0.1",
45
- "inquirer": "^10.2.2",
46
- "openai": "^4.77.0",
47
- "ora": "^8.1.1",
48
- "zod": "^3.24.2"
49
- },
50
- "devDependencies": {
51
- "@types/inquirer": "^9.0.7",
52
- "@types/node": "^22.0.0",
53
- "tsx": "^4.22.0",
54
- "typescript": "^5.9.3"
55
- },
56
- "engines": {
57
- "node": ">=20"
58
- },
59
- "publishConfig": {
60
- "access": "public"
61
- }
62
- }
1
+ {
2
+ "name": "@neetru/cli",
3
+ "version": "2.9.1",
4
+ "type": "module",
5
+ "description": "Neetru Developer Kit — scaffold, AI assistant, publish, build e deploy de produtos SaaS Neetru via Core (VM-based agents)",
6
+ "keywords": [
7
+ "neetru",
8
+ "saas",
9
+ "cli",
10
+ "devkit",
11
+ "scaffold",
12
+ "deploy",
13
+ "agent",
14
+ "vm"
15
+ ],
16
+ "homepage": "https://core.neetru.com",
17
+ "repository": {
18
+ "type": "git",
19
+ "url": "https://github.com/Neetru/neetru-core.git",
20
+ "directory": "cli"
21
+ },
22
+ "author": "Neetru Inc. <neetrucode@gmail.com>",
23
+ "license": "MIT",
24
+ "bin": {
25
+ "neetru": "./dist/index.js"
26
+ },
27
+ "main": "./dist/index.js",
28
+ "files": [
29
+ "dist",
30
+ "templates",
31
+ "README.md",
32
+ "CHANGELOG.md"
33
+ ],
34
+ "scripts": {
35
+ "build": "tsc",
36
+ "dev": "tsx src/index.ts",
37
+ "start": "node dist/index.js",
38
+ "test": "vitest run",
39
+ "test:watch": "vitest",
40
+ "prepublishOnly": "npm run build"
41
+ },
42
+ "dependencies": {
43
+ "@anthropic-ai/sdk": "^0.96.0",
44
+ "@neetru/db-classifier": "^0.1.0",
45
+ "chalk": "^5.4.1",
46
+ "commander": "^12.1.0",
47
+ "conf": "^13.0.1",
48
+ "inquirer": "^10.2.2",
49
+ "openai": "^4.77.0",
50
+ "ora": "^8.1.1",
51
+ "zod": "^3.24.2"
52
+ },
53
+ "devDependencies": {
54
+ "@types/inquirer": "^9.0.7",
55
+ "@types/node": "^22.0.0",
56
+ "tsx": "^4.22.0",
57
+ "typescript": "^5.9.3",
58
+ "vitest": "^4.1.7"
59
+ },
60
+ "engines": {
61
+ "node": ">=20"
62
+ },
63
+ "publishConfig": {
64
+ "access": "public"
65
+ }
66
+ }
@@ -1,22 +1,22 @@
1
- /**
2
- * Template — `src/lib/neetru/auth/callback.ts` (gerado por `neetru add auth`).
3
- *
4
- * Handler de callback OIDC (auth code → id_token). Use em `app/oauth/callback/route.ts`.
5
- */
6
- import { NextRequest, NextResponse } from 'next/server';
7
-
8
- export const runtime = 'nodejs';
9
-
10
- export async function GET(request: NextRequest) {
11
- const { searchParams } = new URL(request.url);
12
- const code = searchParams.get('code');
13
- const state = searchParams.get('state');
14
-
15
- if (!code) {
16
- return NextResponse.json({ error: 'missing_code' }, { status: 400 });
17
- }
18
-
19
- // Trocar code → id_token contra auth.neetru.com/token
20
- // Implementação detalhada em docs/PLATFORM_AUTH.md §4
21
- return NextResponse.redirect(state ?? '/');
22
- }
1
+ /**
2
+ * Template — `src/lib/neetru/auth/callback.ts` (gerado por `neetru add auth`).
3
+ *
4
+ * Handler de callback OIDC (auth code → id_token). Use em `app/oauth/callback/route.ts`.
5
+ */
6
+ import { NextRequest, NextResponse } from 'next/server';
7
+
8
+ export const runtime = 'nodejs';
9
+
10
+ export async function GET(request: NextRequest) {
11
+ const { searchParams } = new URL(request.url);
12
+ const code = searchParams.get('code');
13
+ const state = searchParams.get('state');
14
+
15
+ if (!code) {
16
+ return NextResponse.json({ error: 'missing_code' }, { status: 400 });
17
+ }
18
+
19
+ // Trocar code → id_token contra auth.neetru.com/token
20
+ // Implementação detalhada em docs/PLATFORM_AUTH.md §4
21
+ return NextResponse.redirect(state ?? '/');
22
+ }
@@ -1,41 +1,41 @@
1
- /**
2
- * Template — `src/lib/neetru/auth/sign-in.tsx` (gerado por `neetru add auth`).
3
- *
4
- * Botão Google → redireciona pra auth.neetru.com via SDK (`client.auth.signIn`).
5
- *
6
- * Customização: ajuste `redirectUri` se hospedar fora do domínio default.
7
- */
8
- 'use client';
9
-
10
- import { useState } from 'react';
11
- import { createNeetruClient } from '@neetru/sdk';
12
-
13
- const client = createNeetruClient({
14
- apiKey: process.env.NEXT_PUBLIC_NEETRU_API_KEY,
15
- productId: process.env.NEXT_PUBLIC_NEETRU_PRODUCT_ID,
16
- });
17
-
18
- export function SignInButton() {
19
- const [loading, setLoading] = useState(false);
20
-
21
- async function handleSignIn() {
22
- setLoading(true);
23
- try {
24
- await client.auth.signIn();
25
- } catch (err) {
26
- console.error('signIn failed', err);
27
- setLoading(false);
28
- }
29
- }
30
-
31
- return (
32
- <button
33
- type="button"
34
- onClick={handleSignIn}
35
- disabled={loading}
36
- className="inline-flex items-center justify-center px-4 py-2 border bg-white hover:bg-zinc-50 text-zinc-900 font-medium"
37
- >
38
- {loading ? 'Redirecionando...' : 'Entrar com Neetru'}
39
- </button>
40
- );
41
- }
1
+ /**
2
+ * Template — `src/lib/neetru/auth/sign-in.tsx` (gerado por `neetru add auth`).
3
+ *
4
+ * Botão Google → redireciona pra auth.neetru.com via SDK (`client.auth.signIn`).
5
+ *
6
+ * Customização: ajuste `redirectUri` se hospedar fora do domínio default.
7
+ */
8
+ 'use client';
9
+
10
+ import { useState } from 'react';
11
+ import { createNeetruClient } from '@neetru/sdk';
12
+
13
+ const client = createNeetruClient({
14
+ apiKey: process.env.NEXT_PUBLIC_NEETRU_API_KEY,
15
+ productId: process.env.NEXT_PUBLIC_NEETRU_PRODUCT_ID,
16
+ });
17
+
18
+ export function SignInButton() {
19
+ const [loading, setLoading] = useState(false);
20
+
21
+ async function handleSignIn() {
22
+ setLoading(true);
23
+ try {
24
+ await client.auth.signIn();
25
+ } catch (err) {
26
+ console.error('signIn failed', err);
27
+ setLoading(false);
28
+ }
29
+ }
30
+
31
+ return (
32
+ <button
33
+ type="button"
34
+ onClick={handleSignIn}
35
+ disabled={loading}
36
+ className="inline-flex items-center justify-center px-4 py-2 border bg-white hover:bg-zinc-50 text-zinc-900 font-medium"
37
+ >
38
+ {loading ? 'Redirecionando...' : 'Entrar com Neetru'}
39
+ </button>
40
+ );
41
+ }
@@ -1,22 +1,22 @@
1
- /**
2
- * Template — `src/lib/neetru/billing/checkout.ts` (gerado por `neetru add billing`).
3
- *
4
- * Inicia checkout Stripe via Core. Server route handler.
5
- */
6
- import { NextRequest, NextResponse } from 'next/server';
7
-
8
- export const runtime = 'nodejs';
9
-
10
- export async function POST(request: NextRequest) {
11
- const body = await request.json();
12
- const slug = body?.slug as string | undefined;
13
- if (!slug) {
14
- return NextResponse.json({ error: 'slug required' }, { status: 400 });
15
- }
16
-
17
- // Hit Core REST: POST /api/v1/billing/checkout
18
- // (Sprint 9 expõe via SDK direto)
19
- return NextResponse.json({
20
- redirectUrl: `https://minhaconta.neetru.com/checkout?slug=${slug}`,
21
- });
22
- }
1
+ /**
2
+ * Template — `src/lib/neetru/billing/checkout.ts` (gerado por `neetru add billing`).
3
+ *
4
+ * Inicia checkout Stripe via Core. Server route handler.
5
+ */
6
+ import { NextRequest, NextResponse } from 'next/server';
7
+
8
+ export const runtime = 'nodejs';
9
+
10
+ export async function POST(request: NextRequest) {
11
+ const body = await request.json();
12
+ const slug = body?.slug as string | undefined;
13
+ if (!slug) {
14
+ return NextResponse.json({ error: 'slug required' }, { status: 400 });
15
+ }
16
+
17
+ // Hit Core REST: POST /api/v1/billing/checkout
18
+ // (Sprint 9 expõe via SDK direto)
19
+ return NextResponse.json({
20
+ redirectUrl: `https://minhaconta.neetru.com/checkout?slug=${slug}`,
21
+ });
22
+ }
@@ -1,43 +1,43 @@
1
- /**
2
- * Template — `src/lib/neetru/billing/page.tsx` (gerado por `neetru add billing`).
3
- *
4
- * Página simples: lista planos + botão checkout via SDK.
5
- */
6
- 'use client';
7
-
8
- import { useEffect, useState } from 'react';
9
- import { createNeetruClient, type Product } from '@neetru/sdk';
10
-
11
- const client = createNeetruClient({
12
- apiKey: process.env.NEXT_PUBLIC_NEETRU_API_KEY,
13
- });
14
-
15
- export default function BillingPage() {
16
- const [products, setProducts] = useState<Product[]>([]);
17
- useEffect(() => {
18
- client.catalog
19
- .list()
20
- .then(({ products }) => setProducts(products))
21
- .catch((err) => console.error(err));
22
- }, []);
23
-
24
- return (
25
- <main className="p-8">
26
- <h1 className="text-3xl font-bold mb-6">Planos</h1>
27
- <div className="grid gap-4 md:grid-cols-3">
28
- {products.map((p) => (
29
- <article key={p.slug} className="border p-6">
30
- <h2 className="text-xl font-semibold">{p.name}</h2>
31
- <p className="text-sm text-zinc-600 mt-1">{p.tagline}</p>
32
- <a
33
- href={`/checkout?slug=${p.slug}`}
34
- className="inline-block mt-4 px-4 py-2 bg-zinc-900 text-white"
35
- >
36
- Assinar
37
- </a>
38
- </article>
39
- ))}
40
- </div>
41
- </main>
42
- );
43
- }
1
+ /**
2
+ * Template — `src/lib/neetru/billing/page.tsx` (gerado por `neetru add billing`).
3
+ *
4
+ * Página simples: lista planos + botão checkout via SDK.
5
+ */
6
+ 'use client';
7
+
8
+ import { useEffect, useState } from 'react';
9
+ import { createNeetruClient, type Product } from '@neetru/sdk';
10
+
11
+ const client = createNeetruClient({
12
+ apiKey: process.env.NEXT_PUBLIC_NEETRU_API_KEY,
13
+ });
14
+
15
+ export default function BillingPage() {
16
+ const [products, setProducts] = useState<Product[]>([]);
17
+ useEffect(() => {
18
+ client.catalog
19
+ .list()
20
+ .then(({ products }) => setProducts(products))
21
+ .catch((err) => console.error(err));
22
+ }, []);
23
+
24
+ return (
25
+ <main className="p-8">
26
+ <h1 className="text-3xl font-bold mb-6">Planos</h1>
27
+ <div className="grid gap-4 md:grid-cols-3">
28
+ {products.map((p) => (
29
+ <article key={p.slug} className="border p-6">
30
+ <h2 className="text-xl font-semibold">{p.name}</h2>
31
+ <p className="text-sm text-zinc-600 mt-1">{p.tagline}</p>
32
+ <a
33
+ href={`/checkout?slug=${p.slug}`}
34
+ className="inline-block mt-4 px-4 py-2 bg-zinc-900 text-white"
35
+ >
36
+ Assinar
37
+ </a>
38
+ </article>
39
+ ))}
40
+ </div>
41
+ </main>
42
+ );
43
+ }
@@ -1,68 +1,68 @@
1
- /**
2
- * Template — `src/lib/neetru/support/ticket-form.tsx` (gerado por `neetru add support`).
3
- *
4
- * Form de suporte: cria ticket via SDK.
5
- */
6
- 'use client';
7
-
8
- import { useState } from 'react';
9
- import { createNeetruClient } from '@neetru/sdk';
10
-
11
- const client = createNeetruClient({
12
- apiKey: process.env.NEXT_PUBLIC_NEETRU_API_KEY,
13
- });
14
-
15
- export function SupportTicketForm() {
16
- const [subject, setSubject] = useState('');
17
- const [message, setMessage] = useState('');
18
- const [submitting, setSubmitting] = useState(false);
19
- const [result, setResult] = useState<string | null>(null);
20
-
21
- async function handleSubmit(e: React.FormEvent) {
22
- e.preventDefault();
23
- setSubmitting(true);
24
- try {
25
- const ticket = await client.support.createTicket({ subject, message });
26
- setResult(`Ticket criado: ${ticket.id}`);
27
- setSubject('');
28
- setMessage('');
29
- } catch (err) {
30
- setResult('Falha ao criar ticket.');
31
- console.error(err);
32
- } finally {
33
- setSubmitting(false);
34
- }
35
- }
36
-
37
- return (
38
- <form onSubmit={handleSubmit} className="grid gap-3 max-w-md">
39
- <label className="grid gap-1">
40
- <span className="text-sm font-medium">Assunto</span>
41
- <input
42
- required
43
- value={subject}
44
- onChange={(e) => setSubject(e.target.value)}
45
- className="border px-3 py-2"
46
- />
47
- </label>
48
- <label className="grid gap-1">
49
- <span className="text-sm font-medium">Mensagem</span>
50
- <textarea
51
- required
52
- rows={5}
53
- value={message}
54
- onChange={(e) => setMessage(e.target.value)}
55
- className="border px-3 py-2"
56
- />
57
- </label>
58
- <button
59
- type="submit"
60
- disabled={submitting}
61
- className="px-4 py-2 bg-zinc-900 text-white"
62
- >
63
- {submitting ? 'Enviando...' : 'Enviar'}
64
- </button>
65
- {result && <p className="text-sm">{result}</p>}
66
- </form>
67
- );
68
- }
1
+ /**
2
+ * Template — `src/lib/neetru/support/ticket-form.tsx` (gerado por `neetru add support`).
3
+ *
4
+ * Form de suporte: cria ticket via SDK.
5
+ */
6
+ 'use client';
7
+
8
+ import { useState } from 'react';
9
+ import { createNeetruClient } from '@neetru/sdk';
10
+
11
+ const client = createNeetruClient({
12
+ apiKey: process.env.NEXT_PUBLIC_NEETRU_API_KEY,
13
+ });
14
+
15
+ export function SupportTicketForm() {
16
+ const [subject, setSubject] = useState('');
17
+ const [message, setMessage] = useState('');
18
+ const [submitting, setSubmitting] = useState(false);
19
+ const [result, setResult] = useState<string | null>(null);
20
+
21
+ async function handleSubmit(e: React.FormEvent) {
22
+ e.preventDefault();
23
+ setSubmitting(true);
24
+ try {
25
+ const ticket = await client.support.createTicket({ subject, message });
26
+ setResult(`Ticket criado: ${ticket.id}`);
27
+ setSubject('');
28
+ setMessage('');
29
+ } catch (err) {
30
+ setResult('Falha ao criar ticket.');
31
+ console.error(err);
32
+ } finally {
33
+ setSubmitting(false);
34
+ }
35
+ }
36
+
37
+ return (
38
+ <form onSubmit={handleSubmit} className="grid gap-3 max-w-md">
39
+ <label className="grid gap-1">
40
+ <span className="text-sm font-medium">Assunto</span>
41
+ <input
42
+ required
43
+ value={subject}
44
+ onChange={(e) => setSubject(e.target.value)}
45
+ className="border px-3 py-2"
46
+ />
47
+ </label>
48
+ <label className="grid gap-1">
49
+ <span className="text-sm font-medium">Mensagem</span>
50
+ <textarea
51
+ required
52
+ rows={5}
53
+ value={message}
54
+ onChange={(e) => setMessage(e.target.value)}
55
+ className="border px-3 py-2"
56
+ />
57
+ </label>
58
+ <button
59
+ type="submit"
60
+ disabled={submitting}
61
+ className="px-4 py-2 bg-zinc-900 text-white"
62
+ >
63
+ {submitting ? 'Enviando...' : 'Enviar'}
64
+ </button>
65
+ {result && <p className="text-sm">{result}</p>}
66
+ </form>
67
+ );
68
+ }