gina 0.5.7 → 0.5.8

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 (497) hide show
  1. package/CHANGELOG.md +11 -0
  2. package/README.md +5 -8
  3. package/ROADMAP.md +2 -0
  4. package/framework/v0.5.8/VERSION +1 -0
  5. package/framework/{v0.5.7 → v0.5.8}/core/controller/controller.js +7 -2
  6. package/framework/{v0.5.7 → v0.5.8}/core/server.isaac.js +35 -16
  7. package/framework/{v0.5.7 → v0.5.8}/lib/cmd/connector/help.txt +37 -0
  8. package/framework/v0.5.8/lib/cmd/connector/models.js +506 -0
  9. package/framework/v0.5.8/lib/cmd/framework/help.js +90 -0
  10. package/framework/{v0.5.7 → v0.5.8}/lib/cmd/framework/help.txt +2 -1
  11. package/framework/{v0.5.7 → v0.5.8}/lib/cmd/framework/init.js +31 -0
  12. package/framework/{v0.5.7 → v0.5.8}/lib/cmd/helper.js +0 -1
  13. package/framework/{v0.5.7 → v0.5.8}/lib/cmd/project/help.txt +3 -3
  14. package/framework/{v0.5.7 → v0.5.8}/package.json +1 -1
  15. package/gna.js +4 -4
  16. package/llms.txt +2 -2
  17. package/package.json +3 -3
  18. package/framework/v0.5.7/VERSION +0 -1
  19. package/framework/v0.5.7/lib/cmd/framework/help.js +0 -52
  20. /package/framework/{v0.5.7 → v0.5.8}/AUTHORS +0 -0
  21. /package/framework/{v0.5.7 → v0.5.8}/LICENSE +0 -0
  22. /package/framework/{v0.5.7 → v0.5.8}/core/asset/html/nolayout.html +0 -0
  23. /package/framework/{v0.5.7 → v0.5.8}/core/asset/html/static.html +0 -0
  24. /package/framework/{v0.5.7 → v0.5.8}/core/asset/img/android-chrome-192x192.png +0 -0
  25. /package/framework/{v0.5.7 → v0.5.8}/core/asset/img/android-chrome-512x512.png +0 -0
  26. /package/framework/{v0.5.7 → v0.5.8}/core/asset/img/apple-touch-icon.png +0 -0
  27. /package/framework/{v0.5.7 → v0.5.8}/core/asset/img/favicon-16x16.png +0 -0
  28. /package/framework/{v0.5.7 → v0.5.8}/core/asset/img/favicon-32x32.png +0 -0
  29. /package/framework/{v0.5.7 → v0.5.8}/core/asset/img/favicon.ico +0 -0
  30. /package/framework/{v0.5.7 → v0.5.8}/core/asset/plugin/README.md +0 -0
  31. /package/framework/{v0.5.7 → v0.5.8}/core/asset/plugin/dist/vendor/gina/beemaster/beemaster.css +0 -0
  32. /package/framework/{v0.5.7 → v0.5.8}/core/asset/plugin/dist/vendor/gina/beemaster/beemaster.js +0 -0
  33. /package/framework/{v0.5.7 → v0.5.8}/core/asset/plugin/dist/vendor/gina/beemaster/index.html +0 -0
  34. /package/framework/{v0.5.7 → v0.5.8}/core/asset/plugin/dist/vendor/gina/css/gina.min.css +0 -0
  35. /package/framework/{v0.5.7 → v0.5.8}/core/asset/plugin/dist/vendor/gina/css/gina.min.css.br +0 -0
  36. /package/framework/{v0.5.7 → v0.5.8}/core/asset/plugin/dist/vendor/gina/css/gina.min.css.gz +0 -0
  37. /package/framework/{v0.5.7 → v0.5.8}/core/asset/plugin/dist/vendor/gina/html/statusbar.html +0 -0
  38. /package/framework/{v0.5.7 → v0.5.8}/core/asset/plugin/dist/vendor/gina/html/statusbar.html.br +0 -0
  39. /package/framework/{v0.5.7 → v0.5.8}/core/asset/plugin/dist/vendor/gina/html/statusbar.html.gz +0 -0
  40. /package/framework/{v0.5.7 → v0.5.8}/core/asset/plugin/dist/vendor/gina/inspector/have_heart_one-webfont.woff2 +0 -0
  41. /package/framework/{v0.5.7 → v0.5.8}/core/asset/plugin/dist/vendor/gina/inspector/index.html +0 -0
  42. /package/framework/{v0.5.7 → v0.5.8}/core/asset/plugin/dist/vendor/gina/inspector/inspector.css +0 -0
  43. /package/framework/{v0.5.7 → v0.5.8}/core/asset/plugin/dist/vendor/gina/inspector/inspector.js +0 -0
  44. /package/framework/{v0.5.7 → v0.5.8}/core/asset/plugin/dist/vendor/gina/inspector/logo.svg +0 -0
  45. /package/framework/{v0.5.7 → v0.5.8}/core/asset/plugin/dist/vendor/gina/js/gina.js +0 -0
  46. /package/framework/{v0.5.7 → v0.5.8}/core/asset/plugin/dist/vendor/gina/js/gina.min.js +0 -0
  47. /package/framework/{v0.5.7 → v0.5.8}/core/asset/plugin/dist/vendor/gina/js/gina.min.js.br +0 -0
  48. /package/framework/{v0.5.7 → v0.5.8}/core/asset/plugin/dist/vendor/gina/js/gina.min.js.gz +0 -0
  49. /package/framework/{v0.5.7 → v0.5.8}/core/asset/plugin/dist/vendor/gina/js/gina.onload.min.js +0 -0
  50. /package/framework/{v0.5.7 → v0.5.8}/core/asset/plugin/dist/vendor/gina/js/gina.onload.min.js.br +0 -0
  51. /package/framework/{v0.5.7 → v0.5.8}/core/asset/plugin/dist/vendor/gina/js/gina.onload.min.js.gz +0 -0
  52. /package/framework/{v0.5.7 → v0.5.8}/core/config.js +0 -0
  53. /package/framework/{v0.5.7 → v0.5.8}/core/connectors/ai/index.js +0 -0
  54. /package/framework/{v0.5.7 → v0.5.8}/core/connectors/ai/lib/connector.js +0 -0
  55. /package/framework/{v0.5.7 → v0.5.8}/core/connectors/couchbase/index.js +0 -0
  56. /package/framework/{v0.5.7 → v0.5.8}/core/connectors/couchbase/lib/connector.js +0 -0
  57. /package/framework/{v0.5.7 → v0.5.8}/core/connectors/couchbase/lib/connector.v3.js +0 -0
  58. /package/framework/{v0.5.7 → v0.5.8}/core/connectors/couchbase/lib/connector.v4.js +0 -0
  59. /package/framework/{v0.5.7 → v0.5.8}/core/connectors/couchbase/lib/n1ql.js +0 -0
  60. /package/framework/{v0.5.7 → v0.5.8}/core/connectors/couchbase/lib/session-store.js +0 -0
  61. /package/framework/{v0.5.7 → v0.5.8}/core/connectors/couchbase/lib/session-store.v3.js +0 -0
  62. /package/framework/{v0.5.7 → v0.5.8}/core/connectors/couchbase/lib/session-store.v4.js +0 -0
  63. /package/framework/{v0.5.7 → v0.5.8}/core/connectors/mongodb/index.js +0 -0
  64. /package/framework/{v0.5.7 → v0.5.8}/core/connectors/mongodb/lib/connector.js +0 -0
  65. /package/framework/{v0.5.7 → v0.5.8}/core/connectors/mongodb/lib/job-store.js +0 -0
  66. /package/framework/{v0.5.7 → v0.5.8}/core/connectors/mongodb/lib/pipeline-loader.js +0 -0
  67. /package/framework/{v0.5.7 → v0.5.8}/core/connectors/mongodb/lib/session-store.js +0 -0
  68. /package/framework/{v0.5.7 → v0.5.8}/core/connectors/mysql/index.js +0 -0
  69. /package/framework/{v0.5.7 → v0.5.8}/core/connectors/mysql/lib/connector.js +0 -0
  70. /package/framework/{v0.5.7 → v0.5.8}/core/connectors/postgresql/index.js +0 -0
  71. /package/framework/{v0.5.7 → v0.5.8}/core/connectors/postgresql/lib/connector.js +0 -0
  72. /package/framework/{v0.5.7 → v0.5.8}/core/connectors/redis/index.js +0 -0
  73. /package/framework/{v0.5.7 → v0.5.8}/core/connectors/redis/lib/connector.js +0 -0
  74. /package/framework/{v0.5.7 → v0.5.8}/core/connectors/redis/lib/job-store.js +0 -0
  75. /package/framework/{v0.5.7 → v0.5.8}/core/connectors/redis/lib/session-store.js +0 -0
  76. /package/framework/{v0.5.7 → v0.5.8}/core/connectors/scylladb/index.js +0 -0
  77. /package/framework/{v0.5.7 → v0.5.8}/core/connectors/scylladb/lib/connector.js +0 -0
  78. /package/framework/{v0.5.7 → v0.5.8}/core/connectors/scylladb/lib/session-store.js +0 -0
  79. /package/framework/{v0.5.7 → v0.5.8}/core/connectors/sql-parser.js +0 -0
  80. /package/framework/{v0.5.7 → v0.5.8}/core/connectors/sqlite/index.js +0 -0
  81. /package/framework/{v0.5.7 → v0.5.8}/core/connectors/sqlite/lib/connector.js +0 -0
  82. /package/framework/{v0.5.7 → v0.5.8}/core/connectors/sqlite/lib/job-store.js +0 -0
  83. /package/framework/{v0.5.7 → v0.5.8}/core/connectors/sqlite/lib/session-store.js +0 -0
  84. /package/framework/{v0.5.7 → v0.5.8}/core/content.encoding +0 -0
  85. /package/framework/{v0.5.7 → v0.5.8}/core/controller/controller.framework.js +0 -0
  86. /package/framework/{v0.5.7 → v0.5.8}/core/controller/controller.render-json.js +0 -0
  87. /package/framework/{v0.5.7 → v0.5.8}/core/controller/controller.render-nunjucks-async.js +0 -0
  88. /package/framework/{v0.5.7 → v0.5.8}/core/controller/controller.render-nunjucks.js +0 -0
  89. /package/framework/{v0.5.7 → v0.5.8}/core/controller/controller.render-stream.js +0 -0
  90. /package/framework/{v0.5.7 → v0.5.8}/core/controller/controller.render-swig-async.js +0 -0
  91. /package/framework/{v0.5.7 → v0.5.8}/core/controller/controller.render-swig.js +0 -0
  92. /package/framework/{v0.5.7 → v0.5.8}/core/controller/controller.render-v1.js +0 -0
  93. /package/framework/{v0.5.7 → v0.5.8}/core/controller/index.js +0 -0
  94. /package/framework/{v0.5.7 → v0.5.8}/core/controller/inspector-window-emit.js +0 -0
  95. /package/framework/{v0.5.7 → v0.5.8}/core/deps/busboy-1.6.0/LICENSE +0 -0
  96. /package/framework/{v0.5.7 → v0.5.8}/core/deps/busboy-1.6.0/README.md +0 -0
  97. /package/framework/{v0.5.7 → v0.5.8}/core/deps/busboy-1.6.0/lib/index.js +0 -0
  98. /package/framework/{v0.5.7 → v0.5.8}/core/deps/busboy-1.6.0/lib/types/multipart.js +0 -0
  99. /package/framework/{v0.5.7 → v0.5.8}/core/deps/busboy-1.6.0/lib/types/urlencoded.js +0 -0
  100. /package/framework/{v0.5.7 → v0.5.8}/core/deps/busboy-1.6.0/lib/utils.js +0 -0
  101. /package/framework/{v0.5.7 → v0.5.8}/core/deps/busboy-1.6.0/package.json +0 -0
  102. /package/framework/{v0.5.7 → v0.5.8}/core/deps/streamsearch-1.1.0/LICENSE +0 -0
  103. /package/framework/{v0.5.7 → v0.5.8}/core/deps/streamsearch-1.1.0/lib/sbmh.js +0 -0
  104. /package/framework/{v0.5.7 → v0.5.8}/core/deps/streamsearch-1.1.0/package.json +0 -0
  105. /package/framework/{v0.5.7 → v0.5.8}/core/dev/index.js +0 -0
  106. /package/framework/{v0.5.7 → v0.5.8}/core/dev/lib/class.js +0 -0
  107. /package/framework/{v0.5.7 → v0.5.8}/core/dev/lib/factory.js +0 -0
  108. /package/framework/{v0.5.7 → v0.5.8}/core/dev/lib/tools.js +0 -0
  109. /package/framework/{v0.5.7 → v0.5.8}/core/gna.js +0 -0
  110. /package/framework/{v0.5.7 → v0.5.8}/core/locales/README.md +0 -0
  111. /package/framework/{v0.5.7 → v0.5.8}/core/locales/currency.json +0 -0
  112. /package/framework/{v0.5.7 → v0.5.8}/core/locales/dist/language/en.json +0 -0
  113. /package/framework/{v0.5.7 → v0.5.8}/core/locales/dist/language/fr.json +0 -0
  114. /package/framework/{v0.5.7 → v0.5.8}/core/locales/dist/region/en.json +0 -0
  115. /package/framework/{v0.5.7 → v0.5.8}/core/locales/dist/region/fr.json +0 -0
  116. /package/framework/{v0.5.7 → v0.5.8}/core/locales/index.js +0 -0
  117. /package/framework/{v0.5.7 → v0.5.8}/core/mime.types +0 -0
  118. /package/framework/{v0.5.7 → v0.5.8}/core/model/entity.js +0 -0
  119. /package/framework/{v0.5.7 → v0.5.8}/core/model/index.js +0 -0
  120. /package/framework/{v0.5.7 → v0.5.8}/core/model/template/entityFactory.js +0 -0
  121. /package/framework/{v0.5.7 → v0.5.8}/core/model/template/index.js +0 -0
  122. /package/framework/{v0.5.7 → v0.5.8}/core/plugins/README.md +0 -0
  123. /package/framework/{v0.5.7 → v0.5.8}/core/plugins/index.js +0 -0
  124. /package/framework/{v0.5.7 → v0.5.8}/core/plugins/lib/csrf/README.md +0 -0
  125. /package/framework/{v0.5.7 → v0.5.8}/core/plugins/lib/csrf/package.json +0 -0
  126. /package/framework/{v0.5.7 → v0.5.8}/core/plugins/lib/csrf/src/main.js +0 -0
  127. /package/framework/{v0.5.7 → v0.5.8}/core/plugins/lib/security-headers/README.md +0 -0
  128. /package/framework/{v0.5.7 → v0.5.8}/core/plugins/lib/security-headers/coep/README.md +0 -0
  129. /package/framework/{v0.5.7 → v0.5.8}/core/plugins/lib/security-headers/coep/package.json +0 -0
  130. /package/framework/{v0.5.7 → v0.5.8}/core/plugins/lib/security-headers/coep/src/main.js +0 -0
  131. /package/framework/{v0.5.7 → v0.5.8}/core/plugins/lib/security-headers/coop/README.md +0 -0
  132. /package/framework/{v0.5.7 → v0.5.8}/core/plugins/lib/security-headers/coop/package.json +0 -0
  133. /package/framework/{v0.5.7 → v0.5.8}/core/plugins/lib/security-headers/coop/src/main.js +0 -0
  134. /package/framework/{v0.5.7 → v0.5.8}/core/plugins/lib/security-headers/corp/README.md +0 -0
  135. /package/framework/{v0.5.7 → v0.5.8}/core/plugins/lib/security-headers/corp/package.json +0 -0
  136. /package/framework/{v0.5.7 → v0.5.8}/core/plugins/lib/security-headers/corp/src/main.js +0 -0
  137. /package/framework/{v0.5.7 → v0.5.8}/core/plugins/lib/security-headers/csp/README.md +0 -0
  138. /package/framework/{v0.5.7 → v0.5.8}/core/plugins/lib/security-headers/csp/package.json +0 -0
  139. /package/framework/{v0.5.7 → v0.5.8}/core/plugins/lib/security-headers/csp/src/main.js +0 -0
  140. /package/framework/{v0.5.7 → v0.5.8}/core/plugins/lib/security-headers/hide-powered-by/README.md +0 -0
  141. /package/framework/{v0.5.7 → v0.5.8}/core/plugins/lib/security-headers/hide-powered-by/package.json +0 -0
  142. /package/framework/{v0.5.7 → v0.5.8}/core/plugins/lib/security-headers/hide-powered-by/src/main.js +0 -0
  143. /package/framework/{v0.5.7 → v0.5.8}/core/plugins/lib/security-headers/hsts/README.md +0 -0
  144. /package/framework/{v0.5.7 → v0.5.8}/core/plugins/lib/security-headers/hsts/package.json +0 -0
  145. /package/framework/{v0.5.7 → v0.5.8}/core/plugins/lib/security-headers/hsts/src/main.js +0 -0
  146. /package/framework/{v0.5.7 → v0.5.8}/core/plugins/lib/security-headers/origin-agent-cluster/README.md +0 -0
  147. /package/framework/{v0.5.7 → v0.5.8}/core/plugins/lib/security-headers/origin-agent-cluster/package.json +0 -0
  148. /package/framework/{v0.5.7 → v0.5.8}/core/plugins/lib/security-headers/origin-agent-cluster/src/main.js +0 -0
  149. /package/framework/{v0.5.7 → v0.5.8}/core/plugins/lib/security-headers/package.json +0 -0
  150. /package/framework/{v0.5.7 → v0.5.8}/core/plugins/lib/security-headers/referrer-policy/README.md +0 -0
  151. /package/framework/{v0.5.7 → v0.5.8}/core/plugins/lib/security-headers/referrer-policy/package.json +0 -0
  152. /package/framework/{v0.5.7 → v0.5.8}/core/plugins/lib/security-headers/referrer-policy/src/main.js +0 -0
  153. /package/framework/{v0.5.7 → v0.5.8}/core/plugins/lib/security-headers/src/main.js +0 -0
  154. /package/framework/{v0.5.7 → v0.5.8}/core/plugins/lib/security-headers/x-content-type-options/README.md +0 -0
  155. /package/framework/{v0.5.7 → v0.5.8}/core/plugins/lib/security-headers/x-content-type-options/package.json +0 -0
  156. /package/framework/{v0.5.7 → v0.5.8}/core/plugins/lib/security-headers/x-content-type-options/src/main.js +0 -0
  157. /package/framework/{v0.5.7 → v0.5.8}/core/plugins/lib/security-headers/x-dns-prefetch-control/README.md +0 -0
  158. /package/framework/{v0.5.7 → v0.5.8}/core/plugins/lib/security-headers/x-dns-prefetch-control/package.json +0 -0
  159. /package/framework/{v0.5.7 → v0.5.8}/core/plugins/lib/security-headers/x-dns-prefetch-control/src/main.js +0 -0
  160. /package/framework/{v0.5.7 → v0.5.8}/core/plugins/lib/security-headers/x-download-options/README.md +0 -0
  161. /package/framework/{v0.5.7 → v0.5.8}/core/plugins/lib/security-headers/x-download-options/package.json +0 -0
  162. /package/framework/{v0.5.7 → v0.5.8}/core/plugins/lib/security-headers/x-download-options/src/main.js +0 -0
  163. /package/framework/{v0.5.7 → v0.5.8}/core/plugins/lib/security-headers/x-frame-options/README.md +0 -0
  164. /package/framework/{v0.5.7 → v0.5.8}/core/plugins/lib/security-headers/x-frame-options/package.json +0 -0
  165. /package/framework/{v0.5.7 → v0.5.8}/core/plugins/lib/security-headers/x-frame-options/src/main.js +0 -0
  166. /package/framework/{v0.5.7 → v0.5.8}/core/plugins/lib/security-headers/x-permitted-cross-domain-policies/README.md +0 -0
  167. /package/framework/{v0.5.7 → v0.5.8}/core/plugins/lib/security-headers/x-permitted-cross-domain-policies/package.json +0 -0
  168. /package/framework/{v0.5.7 → v0.5.8}/core/plugins/lib/security-headers/x-permitted-cross-domain-policies/src/main.js +0 -0
  169. /package/framework/{v0.5.7 → v0.5.8}/core/plugins/lib/security-headers/x-xss-protection/README.md +0 -0
  170. /package/framework/{v0.5.7 → v0.5.8}/core/plugins/lib/security-headers/x-xss-protection/package.json +0 -0
  171. /package/framework/{v0.5.7 → v0.5.8}/core/plugins/lib/security-headers/x-xss-protection/src/main.js +0 -0
  172. /package/framework/{v0.5.7 → v0.5.8}/core/plugins/lib/session/README.md +0 -0
  173. /package/framework/{v0.5.7 → v0.5.8}/core/plugins/lib/session/package.json +0 -0
  174. /package/framework/{v0.5.7 → v0.5.8}/core/plugins/lib/session/src/main.js +0 -0
  175. /package/framework/{v0.5.7 → v0.5.8}/core/plugins/lib/storage/README.md +0 -0
  176. /package/framework/{v0.5.7 → v0.5.8}/core/plugins/lib/storage/build.json +0 -0
  177. /package/framework/{v0.5.7 → v0.5.8}/core/plugins/lib/storage/package.json +0 -0
  178. /package/framework/{v0.5.7 → v0.5.8}/core/plugins/lib/storage/src/main.js +0 -0
  179. /package/framework/{v0.5.7 → v0.5.8}/core/plugins/lib/validator/README.md +0 -0
  180. /package/framework/{v0.5.7 → v0.5.8}/core/plugins/lib/validator/build.json +0 -0
  181. /package/framework/{v0.5.7 → v0.5.8}/core/plugins/lib/validator/package.json +0 -0
  182. /package/framework/{v0.5.7 → v0.5.8}/core/plugins/lib/validator/src/form-validator.js +0 -0
  183. /package/framework/{v0.5.7 → v0.5.8}/core/plugins/lib/validator/src/main.js +0 -0
  184. /package/framework/{v0.5.7 → v0.5.8}/core/router.js +0 -0
  185. /package/framework/{v0.5.7 → v0.5.8}/core/server.express.js +0 -0
  186. /package/framework/{v0.5.7 → v0.5.8}/core/server.js +0 -0
  187. /package/framework/{v0.5.7 → v0.5.8}/core/status.codes +0 -0
  188. /package/framework/{v0.5.7 → v0.5.8}/core/template/_gitignore +0 -0
  189. /package/framework/{v0.5.7 → v0.5.8}/core/template/boilerplate/bundle/config/app.json +0 -0
  190. /package/framework/{v0.5.7 → v0.5.8}/core/template/boilerplate/bundle/config/connectors.json +0 -0
  191. /package/framework/{v0.5.7 → v0.5.8}/core/template/boilerplate/bundle/config/routing.json +0 -0
  192. /package/framework/{v0.5.7 → v0.5.8}/core/template/boilerplate/bundle/config/settings.json +0 -0
  193. /package/framework/{v0.5.7 → v0.5.8}/core/template/boilerplate/bundle/config/settings.server.json +0 -0
  194. /package/framework/{v0.5.7 → v0.5.8}/core/template/boilerplate/bundle/config/templates.json +0 -0
  195. /package/framework/{v0.5.7 → v0.5.8}/core/template/boilerplate/bundle/config/watchers.json +0 -0
  196. /package/framework/{v0.5.7 → v0.5.8}/core/template/boilerplate/bundle/controllers/controller.content.js +0 -0
  197. /package/framework/{v0.5.7 → v0.5.8}/core/template/boilerplate/bundle/controllers/controller.js +0 -0
  198. /package/framework/{v0.5.7 → v0.5.8}/core/template/boilerplate/bundle/controllers/setup.js +0 -0
  199. /package/framework/{v0.5.7 → v0.5.8}/core/template/boilerplate/bundle/index.js +0 -0
  200. /package/framework/{v0.5.7 → v0.5.8}/core/template/boilerplate/bundle/locales/en.json +0 -0
  201. /package/framework/{v0.5.7 → v0.5.8}/core/template/boilerplate/bundle_namespace/controllers/controller.js +0 -0
  202. /package/framework/{v0.5.7 → v0.5.8}/core/template/boilerplate/bundle_public/css/default.css +0 -0
  203. /package/framework/{v0.5.7 → v0.5.8}/core/template/boilerplate/bundle_public/css/home.css +0 -0
  204. /package/framework/{v0.5.7 → v0.5.8}/core/template/boilerplate/bundle_public/css/vendor/readme.md +0 -0
  205. /package/framework/{v0.5.7 → v0.5.8}/core/template/boilerplate/bundle_public/favicon.ico +0 -0
  206. /package/framework/{v0.5.7 → v0.5.8}/core/template/boilerplate/bundle_public/js/vendor/readme.md +0 -0
  207. /package/framework/{v0.5.7 → v0.5.8}/core/template/boilerplate/bundle_public/manifest.webmanifest +0 -0
  208. /package/framework/{v0.5.7 → v0.5.8}/core/template/boilerplate/bundle_public/readme.md +0 -0
  209. /package/framework/{v0.5.7 → v0.5.8}/core/template/boilerplate/bundle_public/sw.js +0 -0
  210. /package/framework/{v0.5.7 → v0.5.8}/core/template/boilerplate/bundle_templates/handlers/main.js +0 -0
  211. /package/framework/{v0.5.7 → v0.5.8}/core/template/boilerplate/bundle_templates/html/content/homepage.html +0 -0
  212. /package/framework/{v0.5.7 → v0.5.8}/core/template/boilerplate/bundle_templates/html/includes/error-msg-noscript.html +0 -0
  213. /package/framework/{v0.5.7 → v0.5.8}/core/template/boilerplate/bundle_templates/html/includes/error-msg-outdated-browser.html +0 -0
  214. /package/framework/{v0.5.7 → v0.5.8}/core/template/boilerplate/bundle_templates/html/layouts/main.html +0 -0
  215. /package/framework/{v0.5.7 → v0.5.8}/core/template/command/gina.bat.tpl +0 -0
  216. /package/framework/{v0.5.7 → v0.5.8}/core/template/command/gina.tpl +0 -0
  217. /package/framework/{v0.5.7 → v0.5.8}/core/template/conf/env.json +0 -0
  218. /package/framework/{v0.5.7 → v0.5.8}/core/template/conf/manifest.json +0 -0
  219. /package/framework/{v0.5.7 → v0.5.8}/core/template/conf/package.json +0 -0
  220. /package/framework/{v0.5.7 → v0.5.8}/core/template/conf/settings.json +0 -0
  221. /package/framework/{v0.5.7 → v0.5.8}/core/template/conf/statics.json +0 -0
  222. /package/framework/{v0.5.7 → v0.5.8}/core/template/conf/templates.json +0 -0
  223. /package/framework/{v0.5.7 → v0.5.8}/core/template/error/client/json/401.json +0 -0
  224. /package/framework/{v0.5.7 → v0.5.8}/core/template/error/client/json/403.json +0 -0
  225. /package/framework/{v0.5.7 → v0.5.8}/core/template/error/client/json/404.json +0 -0
  226. /package/framework/{v0.5.7 → v0.5.8}/core/template/error/server/html/50x.html +0 -0
  227. /package/framework/{v0.5.7 → v0.5.8}/core/template/error/server/json/500.json +0 -0
  228. /package/framework/{v0.5.7 → v0.5.8}/core/template/error/server/json/503.json +0 -0
  229. /package/framework/{v0.5.7 → v0.5.8}/core/template/extensions/logger/config.json +0 -0
  230. /package/framework/{v0.5.7 → v0.5.8}/helpers/console.js +0 -0
  231. /package/framework/{v0.5.7 → v0.5.8}/helpers/context.js +0 -0
  232. /package/framework/{v0.5.7 → v0.5.8}/helpers/data/LICENSE +0 -0
  233. /package/framework/{v0.5.7 → v0.5.8}/helpers/data/README.md +0 -0
  234. /package/framework/{v0.5.7 → v0.5.8}/helpers/data/package.json +0 -0
  235. /package/framework/{v0.5.7 → v0.5.8}/helpers/data/src/main.js +0 -0
  236. /package/framework/{v0.5.7 → v0.5.8}/helpers/dateFormat.js +0 -0
  237. /package/framework/{v0.5.7 → v0.5.8}/helpers/index.js +0 -0
  238. /package/framework/{v0.5.7 → v0.5.8}/helpers/json/LICENSE +0 -0
  239. /package/framework/{v0.5.7 → v0.5.8}/helpers/json/README.md +0 -0
  240. /package/framework/{v0.5.7 → v0.5.8}/helpers/json/package.json +0 -0
  241. /package/framework/{v0.5.7 → v0.5.8}/helpers/json/src/main.js +0 -0
  242. /package/framework/{v0.5.7 → v0.5.8}/helpers/path.js +0 -0
  243. /package/framework/{v0.5.7 → v0.5.8}/helpers/plugins/README.md +0 -0
  244. /package/framework/{v0.5.7 → v0.5.8}/helpers/plugins/package.json +0 -0
  245. /package/framework/{v0.5.7 → v0.5.8}/helpers/plugins/src/api-error.js +0 -0
  246. /package/framework/{v0.5.7 → v0.5.8}/helpers/plugins/src/main.js +0 -0
  247. /package/framework/{v0.5.7 → v0.5.8}/helpers/prototypes.js +0 -0
  248. /package/framework/{v0.5.7 → v0.5.8}/helpers/task.js +0 -0
  249. /package/framework/{v0.5.7 → v0.5.8}/helpers/text.js +0 -0
  250. /package/framework/{v0.5.7 → v0.5.8}/lib/admin/package.json +0 -0
  251. /package/framework/{v0.5.7 → v0.5.8}/lib/admin/src/main.js +0 -0
  252. /package/framework/{v0.5.7 → v0.5.8}/lib/archiver/README.md +0 -0
  253. /package/framework/{v0.5.7 → v0.5.8}/lib/archiver/build.json +0 -0
  254. /package/framework/{v0.5.7 → v0.5.8}/lib/archiver/package.json +0 -0
  255. /package/framework/{v0.5.7 → v0.5.8}/lib/archiver/src/dep/jszip.min.js +0 -0
  256. /package/framework/{v0.5.7 → v0.5.8}/lib/archiver/src/main.js +0 -0
  257. /package/framework/{v0.5.7 → v0.5.8}/lib/async/package.json +0 -0
  258. /package/framework/{v0.5.7 → v0.5.8}/lib/async/src/main.js +0 -0
  259. /package/framework/{v0.5.7 → v0.5.8}/lib/cache/README.md +0 -0
  260. /package/framework/{v0.5.7 → v0.5.8}/lib/cache/build.json +0 -0
  261. /package/framework/{v0.5.7 → v0.5.8}/lib/cache/package.json +0 -0
  262. /package/framework/{v0.5.7 → v0.5.8}/lib/cache/src/main.js +0 -0
  263. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/aliases.json +0 -0
  264. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/bundle/add.js +0 -0
  265. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/bundle/arguments.json +0 -0
  266. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/bundle/build.js +0 -0
  267. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/bundle/copy.js +0 -0
  268. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/bundle/cp.js +0 -0
  269. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/bundle/help.js +0 -0
  270. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/bundle/help.txt +0 -0
  271. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/bundle/inc/name-rewrite.js +0 -0
  272. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/bundle/list.js +0 -0
  273. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/bundle/man.js +0 -0
  274. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/bundle/mcp-start.js +0 -0
  275. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/bundle/mcp.js +0 -0
  276. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/bundle/oas.js +0 -0
  277. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/bundle/openapi.js +0 -0
  278. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/bundle/remove.js +0 -0
  279. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/bundle/rename.js +0 -0
  280. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/bundle/restart.js +0 -0
  281. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/bundle/rm.js +0 -0
  282. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/bundle/start.js +0 -0
  283. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/bundle/status.js +0 -0
  284. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/bundle/stop.js +0 -0
  285. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/cache/stats.js +0 -0
  286. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/connector/add.js +0 -0
  287. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/connector/arguments.json +0 -0
  288. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/connector/help.js +0 -0
  289. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/connector/infer.js +0 -0
  290. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/connector/list.js +0 -0
  291. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/connector/migrate.js +0 -0
  292. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/connector/remove.js +0 -0
  293. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/connector/rm.js +0 -0
  294. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/connector/test.js +0 -0
  295. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/env/add.js +0 -0
  296. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/env/get.js +0 -0
  297. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/env/help.js +0 -0
  298. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/env/help.txt +0 -0
  299. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/env/link-dev.js +0 -0
  300. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/env/list.js +0 -0
  301. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/env/remove.js +0 -0
  302. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/env/rm.js +0 -0
  303. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/env/set.js +0 -0
  304. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/env/unset.js +0 -0
  305. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/env/use.js +0 -0
  306. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/framework/add.js +0 -0
  307. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/framework/arguments.json +0 -0
  308. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/framework/build.js +0 -0
  309. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/framework/dot.js +0 -0
  310. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/framework/get.js +0 -0
  311. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/framework/link-node-modules.js +0 -0
  312. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/framework/link.js +0 -0
  313. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/framework/list.js +0 -0
  314. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/framework/man.js +0 -0
  315. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/framework/msg.json +0 -0
  316. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/framework/open.js +0 -0
  317. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/framework/remove.js +0 -0
  318. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/framework/reset.js +0 -0
  319. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/framework/restart.js +0 -0
  320. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/framework/set.js +0 -0
  321. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/framework/start.js +0 -0
  322. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/framework/status.js +0 -0
  323. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/framework/stop.js +0 -0
  324. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/framework/tail.js +0 -0
  325. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/framework/update.js +0 -0
  326. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/framework/version.js +0 -0
  327. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/gina-dev.1.md +0 -0
  328. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/gina-framework.1.md +0 -0
  329. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/gina.1.md +0 -0
  330. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/i18n/add.js +0 -0
  331. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/i18n/arguments.json +0 -0
  332. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/i18n/export.js +0 -0
  333. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/i18n/help.js +0 -0
  334. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/i18n/help.txt +0 -0
  335. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/i18n/import.js +0 -0
  336. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/i18n/scan.js +0 -0
  337. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/index.js +0 -0
  338. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/inspector/help.js +0 -0
  339. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/inspector/help.txt +0 -0
  340. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/inspector/open.js +0 -0
  341. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/man-render.js +0 -0
  342. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/minion/arguments.json +0 -0
  343. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/minion/help.js +0 -0
  344. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/minion/help.txt +0 -0
  345. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/minion/kill.js +0 -0
  346. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/minion/list.js +0 -0
  347. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/msg.json +0 -0
  348. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/port/help.js +0 -0
  349. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/port/help.txt +0 -0
  350. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/port/inc/scan.js +0 -0
  351. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/port/list.js +0 -0
  352. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/port/reset.js +0 -0
  353. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/port/set.js +0 -0
  354. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/project/add.js +0 -0
  355. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/project/arguments.json +0 -0
  356. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/project/backup.js +0 -0
  357. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/project/build.js +0 -0
  358. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/project/help.js +0 -0
  359. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/project/import.js +0 -0
  360. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/project/list.js +0 -0
  361. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/project/man.js +0 -0
  362. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/project/move.js +0 -0
  363. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/project/remove.js +0 -0
  364. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/project/rename.js +0 -0
  365. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/project/restart.js +0 -0
  366. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/project/restore.js +0 -0
  367. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/project/rm.js +0 -0
  368. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/project/start.js +0 -0
  369. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/project/status.js +0 -0
  370. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/project/stop.js +0 -0
  371. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/protocol/arguments.json +0 -0
  372. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/protocol/help.js +0 -0
  373. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/protocol/help.txt +0 -0
  374. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/protocol/list.js +0 -0
  375. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/protocol/remove.js +0 -0
  376. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/protocol/set.js +0 -0
  377. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/scope/add.js +0 -0
  378. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/scope/help.js +0 -0
  379. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/scope/help.txt +0 -0
  380. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/scope/link-local.js +0 -0
  381. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/scope/link-production.js +0 -0
  382. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/scope/list.js +0 -0
  383. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/scope/remove.js +0 -0
  384. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/scope/rm.js +0 -0
  385. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/scope/use.js +0 -0
  386. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/secrets/arguments.json +0 -0
  387. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/secrets/check.js +0 -0
  388. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/secrets/help.js +0 -0
  389. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/secrets/help.txt +0 -0
  390. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/secrets/scan.js +0 -0
  391. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/service/help.js +0 -0
  392. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/service/help.txt +0 -0
  393. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/service/list.js +0 -0
  394. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/service/man.js +0 -0
  395. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/service/start.js +0 -0
  396. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd/view/add.js +0 -0
  397. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd-status-format/package.json +0 -0
  398. /package/framework/{v0.5.7 → v0.5.8}/lib/cmd-status-format/src/main.js +0 -0
  399. /package/framework/{v0.5.7 → v0.5.8}/lib/collection/README.md +0 -0
  400. /package/framework/{v0.5.7 → v0.5.8}/lib/collection/build.json +0 -0
  401. /package/framework/{v0.5.7 → v0.5.8}/lib/collection/package.json +0 -0
  402. /package/framework/{v0.5.7 → v0.5.8}/lib/collection/src/main.js +0 -0
  403. /package/framework/{v0.5.7 → v0.5.8}/lib/config.js +0 -0
  404. /package/framework/{v0.5.7 → v0.5.8}/lib/connector-config/package.json +0 -0
  405. /package/framework/{v0.5.7 → v0.5.8}/lib/connector-config/src/main.js +0 -0
  406. /package/framework/{v0.5.7 → v0.5.8}/lib/connector-registry/package.json +0 -0
  407. /package/framework/{v0.5.7 → v0.5.8}/lib/connector-registry/src/main.js +0 -0
  408. /package/framework/{v0.5.7 → v0.5.8}/lib/cron/README.md +0 -0
  409. /package/framework/{v0.5.7 → v0.5.8}/lib/cron/package.json +0 -0
  410. /package/framework/{v0.5.7 → v0.5.8}/lib/cron/src/main.js +0 -0
  411. /package/framework/{v0.5.7 → v0.5.8}/lib/domain/LICENSE +0 -0
  412. /package/framework/{v0.5.7 → v0.5.8}/lib/domain/README.md +0 -0
  413. /package/framework/{v0.5.7 → v0.5.8}/lib/domain/package.json +0 -0
  414. /package/framework/{v0.5.7 → v0.5.8}/lib/domain/src/main.js +0 -0
  415. /package/framework/{v0.5.7 → v0.5.8}/lib/generator/index.js +0 -0
  416. /package/framework/{v0.5.7 → v0.5.8}/lib/i18n/package.json +0 -0
  417. /package/framework/{v0.5.7 → v0.5.8}/lib/i18n/src/main.js +0 -0
  418. /package/framework/{v0.5.7 → v0.5.8}/lib/index.js +0 -0
  419. /package/framework/{v0.5.7 → v0.5.8}/lib/inherits/LICENSE +0 -0
  420. /package/framework/{v0.5.7 → v0.5.8}/lib/inherits/README.md +0 -0
  421. /package/framework/{v0.5.7 → v0.5.8}/lib/inherits/package.json +0 -0
  422. /package/framework/{v0.5.7 → v0.5.8}/lib/inherits/src/main.js +0 -0
  423. /package/framework/{v0.5.7 → v0.5.8}/lib/inspector-events/package.json +0 -0
  424. /package/framework/{v0.5.7 → v0.5.8}/lib/inspector-events/src/main.js +0 -0
  425. /package/framework/{v0.5.7 → v0.5.8}/lib/inspector-redact/package.json +0 -0
  426. /package/framework/{v0.5.7 → v0.5.8}/lib/inspector-redact/src/main.js +0 -0
  427. /package/framework/{v0.5.7 → v0.5.8}/lib/instrument/package.json +0 -0
  428. /package/framework/{v0.5.7 → v0.5.8}/lib/instrument/src/main.js +0 -0
  429. /package/framework/{v0.5.7 → v0.5.8}/lib/job/package.json +0 -0
  430. /package/framework/{v0.5.7 → v0.5.8}/lib/job/src/main.js +0 -0
  431. /package/framework/{v0.5.7 → v0.5.8}/lib/job-store.js +0 -0
  432. /package/framework/{v0.5.7 → v0.5.8}/lib/logger/README.md +0 -0
  433. /package/framework/{v0.5.7 → v0.5.8}/lib/logger/package.json +0 -0
  434. /package/framework/{v0.5.7 → v0.5.8}/lib/logger/src/containers/default/index.js +0 -0
  435. /package/framework/{v0.5.7 → v0.5.8}/lib/logger/src/containers/file/index.js +0 -0
  436. /package/framework/{v0.5.7 → v0.5.8}/lib/logger/src/containers/file/lib/logrotator/README.md +0 -0
  437. /package/framework/{v0.5.7 → v0.5.8}/lib/logger/src/containers/file/lib/logrotator/index.js +0 -0
  438. /package/framework/{v0.5.7 → v0.5.8}/lib/logger/src/containers/mq/index.js +0 -0
  439. /package/framework/{v0.5.7 → v0.5.8}/lib/logger/src/containers/mq/listener.js +0 -0
  440. /package/framework/{v0.5.7 → v0.5.8}/lib/logger/src/containers/mq/speaker.js +0 -0
  441. /package/framework/{v0.5.7 → v0.5.8}/lib/logger/src/helper.js +0 -0
  442. /package/framework/{v0.5.7 → v0.5.8}/lib/logger/src/main.js +0 -0
  443. /package/framework/{v0.5.7 → v0.5.8}/lib/math/index.js +0 -0
  444. /package/framework/{v0.5.7 → v0.5.8}/lib/mcp-dispatch/package.json +0 -0
  445. /package/framework/{v0.5.7 → v0.5.8}/lib/mcp-dispatch/src/main.js +0 -0
  446. /package/framework/{v0.5.7 → v0.5.8}/lib/mcp-http/package.json +0 -0
  447. /package/framework/{v0.5.7 → v0.5.8}/lib/mcp-http/src/main.js +0 -0
  448. /package/framework/{v0.5.7 → v0.5.8}/lib/mcp-server/package.json +0 -0
  449. /package/framework/{v0.5.7 → v0.5.8}/lib/mcp-server/src/main.js +0 -0
  450. /package/framework/{v0.5.7 → v0.5.8}/lib/merge/README.md +0 -0
  451. /package/framework/{v0.5.7 → v0.5.8}/lib/merge/package.json +0 -0
  452. /package/framework/{v0.5.7 → v0.5.8}/lib/merge/src/main.js +0 -0
  453. /package/framework/{v0.5.7 → v0.5.8}/lib/metrics/package.json +0 -0
  454. /package/framework/{v0.5.7 → v0.5.8}/lib/metrics/src/main.js +0 -0
  455. /package/framework/{v0.5.7 → v0.5.8}/lib/model.js +0 -0
  456. /package/framework/{v0.5.7 → v0.5.8}/lib/nunjucks-filters/README.md +0 -0
  457. /package/framework/{v0.5.7 → v0.5.8}/lib/nunjucks-filters/package.json +0 -0
  458. /package/framework/{v0.5.7 → v0.5.8}/lib/nunjucks-filters/src/main.js +0 -0
  459. /package/framework/{v0.5.7 → v0.5.8}/lib/nunjucks-resolver/package.json +0 -0
  460. /package/framework/{v0.5.7 → v0.5.8}/lib/nunjucks-resolver/src/main.js +0 -0
  461. /package/framework/{v0.5.7 → v0.5.8}/lib/proc.js +0 -0
  462. /package/framework/{v0.5.7 → v0.5.8}/lib/routing/README.md +0 -0
  463. /package/framework/{v0.5.7 → v0.5.8}/lib/routing/build.json +0 -0
  464. /package/framework/{v0.5.7 → v0.5.8}/lib/routing/package.json +0 -0
  465. /package/framework/{v0.5.7 → v0.5.8}/lib/routing/src/main.js +0 -0
  466. /package/framework/{v0.5.7 → v0.5.8}/lib/routing/src/radix.js +0 -0
  467. /package/framework/{v0.5.7 → v0.5.8}/lib/routing-introspect/package.json +0 -0
  468. /package/framework/{v0.5.7 → v0.5.8}/lib/routing-introspect/src/main.js +0 -0
  469. /package/framework/{v0.5.7 → v0.5.8}/lib/secrets/package.json +0 -0
  470. /package/framework/{v0.5.7 → v0.5.8}/lib/secrets/src/backends/env.js +0 -0
  471. /package/framework/{v0.5.7 → v0.5.8}/lib/secrets/src/main.js +0 -0
  472. /package/framework/{v0.5.7 → v0.5.8}/lib/session-store.js +0 -0
  473. /package/framework/{v0.5.7 → v0.5.8}/lib/shell.js +0 -0
  474. /package/framework/{v0.5.7 → v0.5.8}/lib/state.js +0 -0
  475. /package/framework/{v0.5.7 → v0.5.8}/lib/swig-filters/README.md +0 -0
  476. /package/framework/{v0.5.7 → v0.5.8}/lib/swig-filters/package.json +0 -0
  477. /package/framework/{v0.5.7 → v0.5.8}/lib/swig-filters/src/main.js +0 -0
  478. /package/framework/{v0.5.7 → v0.5.8}/lib/swig-resolver/package.json +0 -0
  479. /package/framework/{v0.5.7 → v0.5.8}/lib/swig-resolver/src/main.js +0 -0
  480. /package/framework/{v0.5.7 → v0.5.8}/lib/template-loaders/package.json +0 -0
  481. /package/framework/{v0.5.7 → v0.5.8}/lib/template-loaders/src/loaders/http.js +0 -0
  482. /package/framework/{v0.5.7 → v0.5.8}/lib/template-loaders/src/loaders/memory.js +0 -0
  483. /package/framework/{v0.5.7 → v0.5.8}/lib/template-loaders/src/main.js +0 -0
  484. /package/framework/{v0.5.7 → v0.5.8}/lib/url/README.md +0 -0
  485. /package/framework/{v0.5.7 → v0.5.8}/lib/url/index.js +0 -0
  486. /package/framework/{v0.5.7 → v0.5.8}/lib/url/routing.json +0 -0
  487. /package/framework/{v0.5.7 → v0.5.8}/lib/uuid/package.json +0 -0
  488. /package/framework/{v0.5.7 → v0.5.8}/lib/uuid/src/main.js +0 -0
  489. /package/framework/{v0.5.7 → v0.5.8}/lib/validator.js +0 -0
  490. /package/framework/{v0.5.7 → v0.5.8}/lib/watcher/package.json +0 -0
  491. /package/framework/{v0.5.7 → v0.5.8}/lib/watcher/src/main.js +0 -0
  492. /package/framework/{v0.5.7 → v0.5.8}/lib/ws-framing/package.json +0 -0
  493. /package/framework/{v0.5.7 → v0.5.8}/lib/ws-framing/src/main.js +0 -0
  494. /package/framework/{v0.5.7 → v0.5.8}/lib/ws-query/package.json +0 -0
  495. /package/framework/{v0.5.7 → v0.5.8}/lib/ws-query/src/main.js +0 -0
  496. /package/framework/{v0.5.7 → v0.5.8}/lib/ws-session/package.json +0 -0
  497. /package/framework/{v0.5.7 → v0.5.8}/lib/ws-session/src/main.js +0 -0
@@ -0,0 +1,506 @@
1
+ var fs = require('fs');
2
+ var console = lib.logger;
3
+
4
+ var CmdHelper = require('./../helper');
5
+
6
+ /**
7
+ * @module gina/lib/cmd/connector/models
8
+ */
9
+ /**
10
+ * Lists the models a configured AI connector's provider can serve, OUTSIDE a
11
+ * request. Resolves the connector config (shared, or shared+bundle merged),
12
+ * instantiates the `ai` connector directly, and calls the provider client's
13
+ * `models.list()` — the provider's LIVE model catalogue. This is the read
14
+ * sibling of `connector:test --connect`, which makes the very same call but
15
+ * keeps only the count and throws the array away; `connector:models` surfaces
16
+ * the model ids themselves, so a caller can populate a model picker, script a
17
+ * "does the provider offer model X?" check, or audit which models a project's
18
+ * connector can actually reach.
19
+ *
20
+ * Like `connector:infer` / `connector:test`, the connector class is NOT
21
+ * instantiated through `getModel` (its per-bundle registry is empty in CLI
22
+ * scope). The AI connector is built directly: `setPath('project', <path>)` so
23
+ * the provider SDK resolves from the target project's node_modules, then
24
+ * `new AIConnector(entry).onReady(...)`. `${secret:KEY}` placeholders (typically
25
+ * the `apiKey`) are resolved from `process.env` via `lib.secrets` — fail-closed,
26
+ * and the resolved value is NEVER echoed; only the model list is printed, which
27
+ * carries no secrets.
28
+ *
29
+ * When the provider client exposes no `models.list` (a defensive case — every
30
+ * currently-supported provider's SDK client does), the command reports the
31
+ * connector as UNSUPPORTED and exits non-zero rather than fabricating an empty
32
+ * list as if the provider offered nothing. A non-`ai` connector is rejected
33
+ * cleanly (this command is AI-subtype-specific).
34
+ *
35
+ * Operational note (mirrors `connector:infer` / `connector:test`): a detached
36
+ * CLI invocation only sees its own shell environment, not secrets a supervisor
37
+ * injects at bundle start. Run against a shell that exports the keys, or pass
38
+ * `--api-key=<literal>`. Offline / local providers such as `ollama://`
39
+ * (localhost, no key) work with no internet — `models.list()` returns the
40
+ * locally-pulled models.
41
+ *
42
+ * Usage:
43
+ * gina connector:models <connector> @<project> # shared config view
44
+ * gina connector:models <connector> <bundle> @<project> # merged shared+bundle view
45
+ * gina connector:models <connector> @<project> --format=json
46
+ *
47
+ * Text mode prints one model id per line to stdout (a count footer goes to
48
+ * stderr, so `> file` captures only the ids). `--format=json` emits
49
+ * `{ project, connector, provider, count, models }` (plus `bundle` when a bundle
50
+ * is named); each `models[]` entry is passed through verbatim from the provider
51
+ * (the SDK shapes differ — Anthropic vs OpenAI-compatible — so only `id` is
52
+ * guaranteed present). The JSON payload is written with synchronous
53
+ * `fs.writeSync` so `process.exit()` cannot truncate it on a pipe.
54
+ *
55
+ * Exit codes: 0 on a successful list; 1 on a usage error (missing `@<project>`,
56
+ * unregistered project / bundle, connector not found, non-`ai` connector, bad
57
+ * `--format`), a secret-resolution failure, a provider client that exposes no
58
+ * `models.list`, or any transport error from the `models.list` call.
59
+ *
60
+ * @class Models
61
+ * @constructor
62
+ * @param {object} opt - Parsed command-line options
63
+ * @param {object} opt.client - Socket client for terminal output
64
+ * @param {string[]} opt.argv - Full argv array
65
+ * @param {number} [opt.debugPort] - Node.js inspector port
66
+ * @param {boolean} [opt.debugBrkEnabled] - True when --inspect-brk is active
67
+ * @param {object} cmd - The cmd dispatcher object (lib/cmd/index.js)
68
+ *
69
+ * @example
70
+ * // Discover which models a configured connector can serve.
71
+ * // $ gina connector:models claude @myproject
72
+ * // claude-opus-4
73
+ * // claude-sonnet-4
74
+ *
75
+ * @example
76
+ * // Script a "does the provider offer model X?" check.
77
+ * // $ gina connector:models claude @myproject --format=json \
78
+ * // | jq -e '.models[] | select(.id=="claude-opus-4")' >/dev/null
79
+ */
80
+ function Models(opt, cmd) {
81
+ var self = { format: 'text' };
82
+
83
+ /**
84
+ * Pure connector-entry resolver — merges shared + bundle `connectors.json`
85
+ * maps (bundle wins) and selects one entry by name; also exposes
86
+ * `isAIConnector(entry, key)`. See `lib/connector-config/src/main.js`.
87
+ *
88
+ * @inner
89
+ * @constant
90
+ */
91
+ var cfg = lib.connectorConfig;
92
+
93
+ /**
94
+ * Secrets resolver — `resolve(entry)` substitutes every `${secret:KEY}`
95
+ * placeholder in place from `process.env` (fail-closed; the missing KEY
96
+ * name is surfaced, never the value). See `lib/secrets/src/main.js`.
97
+ *
98
+ * @inner
99
+ * @constant
100
+ */
101
+ var secrets = lib.secrets;
102
+
103
+ /**
104
+ * Deadline for the live `models.list()` call. A bad endpoint would
105
+ * otherwise hang a CI process; the AI HTTP client carries no connection
106
+ * pool, so `process.exit()` at the end is the only teardown needed.
107
+ *
108
+ * @inner
109
+ * @constant
110
+ * @type {number}
111
+ */
112
+ var CONNECT_TIMEOUT_MS = 15000;
113
+
114
+ /**
115
+ * Parse --format, resolve project + optional bundle via CmdHelper, select
116
+ * the AI connector entry, resolve its secrets, then instantiate the
117
+ * connector directly and list its provider's models.
118
+ *
119
+ * @inner
120
+ * @private
121
+ */
122
+ var init = function () {
123
+
124
+ new CmdHelper(self, opt.client, { port: opt.debugPort, brkEnabled: opt.debugBrkEnabled });
125
+ if ( !isCmdConfigured() ) return false;
126
+
127
+ for (var i = 3, len = process.argv.length; i < len; i++) {
128
+ var arg = process.argv[i];
129
+ if ( /^\-\-format\=/.test(arg) ) {
130
+ self.format = arg.split(/\=/)[1] || 'text';
131
+ }
132
+ }
133
+ if (self.format !== 'text' && self.format !== 'json') {
134
+ console.error('--format must be `text` or `json` (got `' + self.format + '`)');
135
+ process.exit(1);
136
+ return;
137
+ }
138
+
139
+ // Positionals: [0] connector logical name, [1] optional bundle name
140
+ // (same convention as `connector:infer` / `connector:test`).
141
+ var positionals = extractPositionals(process.argv);
142
+ var connectorName = positionals[0] || null;
143
+ var bundleName = positionals[1] || null;
144
+
145
+ if (!connectorName) {
146
+ console.error('Usage: gina connector:models <connector> [<bundle>] @<project> [--format=json]');
147
+ process.exit(1);
148
+ return;
149
+ }
150
+
151
+ if ( typeof(self.projectName) == 'undefined' || self.projectName == null ) {
152
+ console.error('`connector:models` requires `@<project>`. Did you forget `@<project_name>`?');
153
+ process.exit(1);
154
+ return;
155
+ }
156
+
157
+ if ( typeof(self.projects[self.projectName]) == 'undefined' ) {
158
+ console.error('Project @' + self.projectName + ' is not registered. Run `gina project:list` to see registered projects.');
159
+ process.exit(1);
160
+ return;
161
+ }
162
+
163
+ var projectPath = self.projects[self.projectName].path;
164
+
165
+ // Merged connector entry (shared + bundle, bundle wins). Exits on a
166
+ // bad bundle; returns null when the connector is declared nowhere.
167
+ var entry = resolveConnectorEntry(projectPath, bundleName, connectorName);
168
+ if (!entry) {
169
+ console.error(
170
+ 'Connector `' + connectorName + '` not found in '
171
+ + (bundleName ? ('bundle `' + bundleName + '` (merged with shared) of ') : 'shared config of ')
172
+ + '@' + self.projectName + '. Run `gina connector:list @' + self.projectName + '` to see configured connectors.'
173
+ );
174
+ process.exit(1);
175
+ return;
176
+ }
177
+
178
+ // models.list is AI-specific — reject any non-`ai` connector cleanly.
179
+ // Pass connectorName so a connector written as just `"ai": {…}` (no
180
+ // `connector` field) is recognised via the key-fallback (matches
181
+ // connector:list / connector:infer / connector:test).
182
+ if (!cfg.isAIConnector(entry, connectorName)) {
183
+ var type = (entry && entry.connector) ? entry.connector : connectorName;
184
+ console.error('Connector `' + connectorName + '` is a `' + type + '` connector, not `ai`. `connector:models` only works with AI connectors.');
185
+ process.exit(1);
186
+ return;
187
+ }
188
+
189
+ // Ad-hoc connector-level overrides (NOT written back to disk), mirroring
190
+ // connector:infer. Applied BEFORE secrets.resolve so an --api-key literal
191
+ // bypasses ${secret:} resolution.
192
+ var p = self.params || {};
193
+ if (p['protocol'] && p['protocol'] !== true) entry.protocol = String(p['protocol']);
194
+ if (p['base-url'] && p['base-url'] !== true) entry.baseURL = String(p['base-url']);
195
+ if (p['api-key'] && p['api-key'] !== true) entry.apiKey = String(p['api-key']); // literal — bypasses ${secret:}
196
+
197
+ // Resolve ${secret:KEY} placeholders (apiKey etc.) from process.env.
198
+ // Fail-closed; the missing KEY name is surfaced (never the value).
199
+ try {
200
+ secrets.resolve(entry);
201
+ } catch (secretErr) {
202
+ console.error(
203
+ '[connector:models] secret resolution failed for `' + (secretErr._ginaSecretKey || '<unknown>') + '`. '
204
+ + 'Set it in this shell (export ' + (secretErr._ginaSecretKey || 'KEY') + '=...), or pass --api-key=<literal>. '
205
+ + 'A detached CLI sees only its own environment, not secrets injected by a supervisor at bundle start.'
206
+ );
207
+ process.exit(1);
208
+ return;
209
+ }
210
+
211
+ listModels(projectPath, connectorName, bundleName, entry);
212
+ };
213
+
214
+ /**
215
+ * Walks `process.argv` from index 3 and returns every non-flag,
216
+ * non-`@<project>` token in order: `[0]` the connector logical name,
217
+ * `[1]` the optional bundle name. CmdHelper already consumes `--` flags
218
+ * and `@<project>` tokens; the remainder are our positionals. Mirrors
219
+ * `connector:infer` / `connector:test`.
220
+ *
221
+ * @inner
222
+ * @private
223
+ * @param {string[]} argv - process.argv
224
+ * @returns {string[]}
225
+ */
226
+ var extractPositionals = function (argv) {
227
+ var out = [];
228
+ for (var i = 3, len = argv.length; i < len; i++) {
229
+ var tok = argv[i];
230
+ if ( typeof(tok) != 'string' ) continue;
231
+ if ( /^\-\-/.test(tok) ) continue;
232
+ if ( /^\-/.test(tok) ) continue;
233
+ if ( /^\@/.test(tok) ) continue;
234
+ out.push(tok);
235
+ }
236
+ return out;
237
+ };
238
+
239
+ /**
240
+ * Reads a JSON file with tolerance for line and block comments via
241
+ * `requireJSON` (connectors files routinely carry comments). Returns
242
+ * `null` on any parse or I/O error. Mirrors `connector:infer`.
243
+ *
244
+ * @inner
245
+ * @private
246
+ * @param {string} filePath
247
+ * @returns {object|null}
248
+ */
249
+ var readJsonSafe = function (filePath) {
250
+ try {
251
+ if ( !fs.existsSync(filePath) ) return null;
252
+ return requireJSON(filePath);
253
+ } catch (e) {
254
+ return null;
255
+ }
256
+ };
257
+
258
+ /**
259
+ * Loads `<projectPath>/manifest.json` (comment-tolerant). Returns null
260
+ * on failure so the caller can report precisely.
261
+ *
262
+ * @inner
263
+ * @private
264
+ * @param {string} projectPath
265
+ * @returns {object|null}
266
+ */
267
+ var loadManifest = function (projectPath) {
268
+ return readJsonSafe(_(projectPath + '/manifest.json', true));
269
+ };
270
+
271
+ /**
272
+ * Resolves the connector entry for `connectorName`: reads the shared
273
+ * connectors.json and (when a bundle is supplied) the bundle's, then
274
+ * delegates the merge + select to the shared pure resolver
275
+ * (`lib.connectorConfig.resolve`, bundle wins). The returned object is a
276
+ * fresh copy, safe to mutate in place (overrides + secrets.resolve).
277
+ *
278
+ * Exits the process (code 1) when the named bundle is not registered.
279
+ * Returns `null` when the connector is declared in neither file.
280
+ *
281
+ * @inner
282
+ * @private
283
+ * @param {string} projectPath
284
+ * @param {string|null} bundleName
285
+ * @param {string} connectorName
286
+ * @returns {object|null}
287
+ */
288
+ var resolveConnectorEntry = function (projectPath, bundleName, connectorName) {
289
+ var sharedJson = readJsonSafe(_(projectPath + '/shared/config/connectors.json', true)) || {};
290
+
291
+ var bundleJson = {};
292
+ if (bundleName) {
293
+ var manifest = loadManifest(projectPath);
294
+ if (!manifest || !manifest.bundles || !manifest.bundles[bundleName]) {
295
+ console.error('Bundle [ ' + bundleName + ' ] is not registered inside `@' + self.projectName + '`.');
296
+ process.exit(1);
297
+ return null;
298
+ }
299
+ var bSrc = manifest.bundles[bundleName].src;
300
+ if (bSrc) {
301
+ bundleJson = readJsonSafe(_(projectPath + '/' + bSrc + '/config/connectors.json', true)) || {};
302
+ }
303
+ }
304
+
305
+ return cfg.resolve(sharedJson, bundleJson, connectorName).entry;
306
+ };
307
+
308
+ /**
309
+ * Loads the AI connector core (the connector class only — `models.list()`
310
+ * is read off the raw provider client, so the `AI` wrapper is not needed)
311
+ * and points `getPath('project')` at the target project so the provider
312
+ * SDK resolves from its node_modules. Mirrors `connector:infer`'s
313
+ * `loadAiCore` / `connector:test`'s `probeAI` require.
314
+ *
315
+ * @inner
316
+ * @private
317
+ * @param {string} projectPath
318
+ * @returns {{AIConnector: function}|null} The loaded core, or `null` after a
319
+ * fatal load error (the process has already exited).
320
+ */
321
+ var loadAiCore = function (projectPath) {
322
+ var AIConnector;
323
+ try {
324
+ AIConnector = require('../../../core/connectors/ai/lib/connector');
325
+ } catch (e) {
326
+ console.error('[connector:models] failed to load the AI connector core: ' + e.message);
327
+ process.exit(1);
328
+ return null;
329
+ }
330
+ // AIConnector requires the provider SDK from getPath('project')/node_modules.
331
+ setPath('project', projectPath);
332
+ return { AIConnector: AIConnector };
333
+ };
334
+
335
+ /**
336
+ * Instantiates the AI connector directly and lists its provider's models
337
+ * via a single `client.models.list()` call. `onReady` is synchronous and
338
+ * performs no network ping; the network cost is the one `models.list()`
339
+ * GET (a credentialed catalogue read that spends ZERO generation tokens —
340
+ * for `ollama://` it just hits the local server). A capability check emits
341
+ * an honest UNSUPPORTED verdict (never a fabricated empty list) when the
342
+ * client exposes no `models.list`.
343
+ *
344
+ * @inner
345
+ * @private
346
+ * @param {string} projectPath
347
+ * @param {string} connectorName
348
+ * @param {string|null} bundleName
349
+ * @param {object} entry - Resolved connector entry (secrets already substituted)
350
+ */
351
+ var listModels = function (projectPath, connectorName, bundleName, entry) {
352
+ var core = loadAiCore(projectPath);
353
+ if (!core) return;
354
+ var AIConnector = core.AIConnector;
355
+
356
+ var connector;
357
+ try {
358
+ connector = new AIConnector(entry);
359
+ } catch (buildErr) {
360
+ console.error('[connector:models] ' + ((buildErr && buildErr.message) ? buildErr.message : String(buildErr)));
361
+ process.exit(1);
362
+ return;
363
+ }
364
+
365
+ connector.onReady(function (err, conn) {
366
+ if (err) {
367
+ console.error('[connector:models] ' + err.message);
368
+ process.exit(1);
369
+ return;
370
+ }
371
+
372
+ var client = conn && conn.client;
373
+ var provider = conn && conn.provider;
374
+
375
+ // Capability check — honest UNSUPPORTED rather than a fabricated
376
+ // empty list. Every currently-supported provider's SDK client
377
+ // defines models.list, so this is a defensive / forward-looking
378
+ // branch. Mirrors connector:test's inconclusive-`ok:null` guard.
379
+ if (!client || !client.models || typeof client.models.list !== 'function') {
380
+ emitUnsupported(connectorName, bundleName, provider);
381
+ return; // emitUnsupported exits non-zero
382
+ }
383
+
384
+ var settled = false;
385
+ var timer = setTimeout(function () {
386
+ if (settled) return;
387
+ settled = true;
388
+ console.error('[connector:models] models.list timed out after ' + CONNECT_TIMEOUT_MS + 'ms');
389
+ process.exit(1);
390
+ }, CONNECT_TIMEOUT_MS);
391
+
392
+ try {
393
+ Promise.resolve(client.models.list()).then(function (res) {
394
+ if (settled) return;
395
+ settled = true;
396
+ clearTimeout(timer);
397
+ // Both the OpenAI and Anthropic SDKs return a `{ data: [...] }`
398
+ // envelope. The per-entry shape is the SDK's, unmodified —
399
+ // surfaced verbatim (only `id` is guaranteed across providers).
400
+ var models = (res && Array.isArray(res.data)) ? res.data : [];
401
+ emitModels(connectorName, bundleName, provider, models);
402
+ process.exit(0);
403
+ }).catch(function (callErr) {
404
+ if (settled) return;
405
+ settled = true;
406
+ clearTimeout(timer);
407
+ console.error('[connector:models] models.list failed: ' + ((callErr && callErr.message) ? callErr.message : String(callErr)));
408
+ process.exit(1);
409
+ });
410
+ } catch (syncErr) {
411
+ if (settled) return;
412
+ settled = true;
413
+ clearTimeout(timer);
414
+ console.error('[connector:models] models.list failed: ' + ((syncErr && syncErr.message) ? syncErr.message : String(syncErr)));
415
+ process.exit(1);
416
+ }
417
+ });
418
+ };
419
+
420
+ /**
421
+ * Writes the model list. JSON mode (`--format=json`, matched strictly with
422
+ * `===` so `jsonl`/`json5` fall to text) emits
423
+ * `{ project, connector, provider, count, models }` (+ `bundle` when named);
424
+ * each `models[]` entry is passed through verbatim from the provider SDK.
425
+ * Text mode prints one model `id` per line to stdout (so `> file` captures
426
+ * only the ids) and a count footer to stderr.
427
+ *
428
+ * Both paths use synchronous `fs.writeSync` (fd 1 / fd 2) rather than the
429
+ * async `process.stdout` / `process.stderr` writers, so the output is not
430
+ * truncated by the `process.exit(0)` that {@link listModels} fires on the
431
+ * next line (`process.stdout` is ASYNCHRONOUS on a pipe — `| jq`, `$(…)`,
432
+ * CI — and `process.exit()` tears the process down without draining its
433
+ * buffer; the framework's boot-exit-flush rule). Mirrors
434
+ * `connector:infer`'s `emitResult`.
435
+ *
436
+ * @inner
437
+ * @private
438
+ * @param {string} connectorName
439
+ * @param {string|null} bundleName
440
+ * @param {string|null} provider - Provider scheme (e.g. 'anthropic', 'ollama')
441
+ * @param {object[]} models - The provider's model-entry array (passthrough)
442
+ */
443
+ var emitModels = function (connectorName, bundleName, provider, models) {
444
+ if ( self.format === 'json' ) {
445
+ var payload = {
446
+ project : self.projectName,
447
+ connector : connectorName,
448
+ provider : provider || null,
449
+ count : models.length,
450
+ models : models
451
+ };
452
+ if (bundleName) payload.bundle = bundleName;
453
+ fs.writeSync(1, JSON.stringify(payload));
454
+ return;
455
+ }
456
+ // Text: one model id per line on stdout (grep/pipe-friendly).
457
+ var lines = '';
458
+ for (var i = 0; i < models.length; i++) {
459
+ var id = (models[i] && models[i].id != null) ? String(models[i].id) : '<unknown>';
460
+ lines += id + '\n';
461
+ }
462
+ if (lines) fs.writeSync(1, lines);
463
+ fs.writeSync(2, '— ' + models.length + ' model' + (models.length === 1 ? '' : 's')
464
+ + ' via `' + connectorName + '`' + (provider ? (' (' + provider + ')') : '') + '\n');
465
+ };
466
+
467
+ /**
468
+ * Reports a connector whose provider client exposes no `models.list` as
469
+ * UNSUPPORTED and exits non-zero — an honest "this provider cannot enumerate
470
+ * models", never a fabricated empty list. JSON mode emits
471
+ * `{ project, connector, provider, supported:false, models:null, reason }`
472
+ * (+ `bundle` when named) on stdout via `fs.writeSync`; text mode writes the
473
+ * reason to stderr. Either way the exit code is 1, distinct from a
474
+ * successful empty list (exit 0, `models:[]`).
475
+ *
476
+ * @inner
477
+ * @private
478
+ * @param {string} connectorName
479
+ * @param {string|null} bundleName
480
+ * @param {string|null} provider
481
+ */
482
+ var emitUnsupported = function (connectorName, bundleName, provider) {
483
+ if ( self.format === 'json' ) {
484
+ var payload = {
485
+ project : self.projectName,
486
+ connector : connectorName,
487
+ provider : provider || null,
488
+ supported : false,
489
+ models : null,
490
+ reason : 'provider client exposes no models.list'
491
+ };
492
+ if (bundleName) payload.bundle = bundleName;
493
+ fs.writeSync(1, JSON.stringify(payload));
494
+ process.exit(1);
495
+ return;
496
+ }
497
+ console.error('[connector:models] connector `' + connectorName + '`'
498
+ + (provider ? (' (' + provider + ')') : '')
499
+ + ' exposes no models.list — this provider client does not support model enumeration.');
500
+ process.exit(1);
501
+ };
502
+
503
+ init();
504
+ }
505
+
506
+ module.exports = Models;
@@ -0,0 +1,90 @@
1
+ var console = lib.logger;
2
+ var fs = require('fs');
3
+ var path = require('path');
4
+ /**
5
+ * @module gina/lib/cmd/framework/help
6
+ */
7
+ /**
8
+ * Prints the Gina CLI help.
9
+ *
10
+ * Handles `gina --help`, `gina -h`, and `gina help [<group>]` — all aliased to
11
+ * `framework:help` (see `lib/cmd/aliases.json`). With no group it prints the
12
+ * top-level command reference at `lib/cmd/framework/help.txt`; with a known
13
+ * group (e.g. `gina help bundle`) it prints that group's `lib/cmd/<group>/help.txt`,
14
+ * falling back to the framework help for an unknown group.
15
+ *
16
+ * Opening a Gina directory in the OS file manager is a separate concern handled
17
+ * by the `open` command (`gina open <key>` / `gina -o <key>` — see `./open`).
18
+ *
19
+ * Usage:
20
+ * gina --help | -h
21
+ * gina help [<group>]
22
+ *
23
+ * @class Help
24
+ * @constructor
25
+ * @param {object} opt - Parsed command-line options (unused; help reads help.txt).
26
+ *
27
+ * @example
28
+ * $ gina --help
29
+ * $ gina -h
30
+ * $ gina help
31
+ * $ gina help bundle
32
+ */
33
+ function Help(opt) {
34
+
35
+ /**
36
+ * Resolves which help.txt to print. `gina help <group>` targets
37
+ * `lib/cmd/<group>/help.txt` when it exists; otherwise the framework help.
38
+ *
39
+ * The group is validated against a strict `[a-z][a-z0-9-]*` pattern (no `.`
40
+ * or path separators) so it can never traverse outside `lib/cmd`; the
41
+ * containment check is belt-and-suspenders.
42
+ *
43
+ * @inner
44
+ * @private
45
+ * @returns {string} Absolute path to the help.txt to print.
46
+ */
47
+ var resolveHelpFile = function() {
48
+ var frameworkHelp = path.join(__dirname, 'help.txt');
49
+ var group = process.argv[3];
50
+
51
+ if ( group && /^[a-z][a-z0-9-]*$/.test(group) ) {
52
+ var cmdDir = path.resolve(__dirname, '..'); // lib/cmd
53
+ var candidate = path.join(cmdDir, group, 'help.txt');
54
+
55
+ if ( candidate.indexOf(cmdDir + path.sep) === 0 && fs.existsSync(candidate) ) {
56
+ return candidate;
57
+ }
58
+ }
59
+
60
+ return frameworkHelp;
61
+ };
62
+
63
+ /**
64
+ * Reads and prints the resolved help.txt to stdout, then exits.
65
+ * @inner
66
+ * @private
67
+ */
68
+ var init = function() {
69
+ var file = resolveHelpFile();
70
+
71
+ if ( !fs.existsSync(file) ) {
72
+ console.error('gina: no CLI help available at the moment. Try `man gina`.');
73
+ process.exit(1);
74
+ return;
75
+ }
76
+
77
+ try {
78
+ console.log( '\n' + fs.readFileSync(file, 'utf8') );
79
+ } catch (err) {
80
+ console.error( err.stack || err );
81
+ process.exit(1);
82
+ return;
83
+ }
84
+
85
+ process.exit(0);
86
+ };
87
+
88
+ init();
89
+ };
90
+ module.exports = Help;
@@ -11,7 +11,8 @@
11
11
  usage:
12
12
 
13
13
  $ gina --help | -h
14
- $ gina —-version | -v
14
+ $ gina help [<group>]
15
+ $ gina --version | -v
15
16
  $ gina --status | -t
16
17
  $ gina framework:start | start
17
18
 
@@ -156,6 +156,37 @@ function Initialize(opt) {
156
156
  var filename ='/cmd/' + opt.task.topic + '/' + opt.task.action + '.js'
157
157
  var path = getPath('gina').lib + filename;
158
158
 
159
+ // Unknown command → print a clean, actionable message instead of a raw
160
+ // `Cannot find module` stack. `bin/cli` already rejects an unknown GROUP
161
+ // cleanly; this covers a known group with an unknown ACTION — e.g.
162
+ // `gina framework:connector`, `gina connector` (auto-prefixed to the same
163
+ // `framework:connector`), or `gina -V` (→ `framework:-V`). A genuine error
164
+ // thrown from inside a real handler still falls through to the try/catch
165
+ // below and keeps its stack for debugging.
166
+ if ( !fs.existsSync(path) ) {
167
+ var cmdName = opt.task.topic + ':' + opt.task.action;
168
+ var groupHelp = getPath('gina').lib + '/cmd/' + opt.task.action + '/help.txt';
169
+ var lines = [ "gina: '" + cmdName + "' is not a valid command." ];
170
+
171
+ // Did-you-mean: the unknown action is itself a real command group
172
+ // (same test `gina help <group>` uses). Covers the `connector` case.
173
+ if ( /^[a-z][a-z0-9-]*$/.test(opt.task.action) && fs.existsSync(groupHelp) ) {
174
+ lines.push('');
175
+ lines.push("'" + opt.task.action + "' is a command group. Try: gina help " + opt.task.action);
176
+ }
177
+
178
+ lines.push('');
179
+ lines.push("Run 'gina help' for all commands, or 'gina help " + opt.task.topic + "' for the " + opt.task.topic + " group.");
180
+
181
+ var message = lines.join('\n');
182
+ console.error(message);
183
+ if (opt.client) {
184
+ opt.client.write(message + '\n');
185
+ }
186
+ process.exit(1);
187
+ return;
188
+ }
189
+
159
190
  try {
160
191
  if ( GINA_ENV_IS_DEV || process.env.NODE_ENV_IS_DEV ) {
161
192
  delete require.cache[require.resolve(path)];
@@ -1569,7 +1569,6 @@ function CmdHelper(cmd, client, debug) {
1569
1569
  , file = _( __dirname +'/'+ taskGroup +'/help.txt', true )
1570
1570
  , errMsg = 'No help available for `'+ taskGroup +'` command line at the moment. Please try again on the next release';
1571
1571
 
1572
- console.log('file ', file);
1573
1572
  if ( !fs.existsSync(file) ) {
1574
1573
 
1575
1574
  console.error(errMsg);
@@ -9,7 +9,7 @@
9
9
 
10
10
  1st method
11
11
  ----------
12
- $ gina project:add @<project_name> [ —-path=/var/www/<project_name> ] (if no path given, will take the current)
12
+ $ gina project:add @<project_name> [ --path=/var/www/<project_name> ] (if no path given, will take the current)
13
13
 
14
14
  where `/var/www/<project_name>` is the destination path
15
15
  NB.: `--path` can also be a relative path like `--path=./` or `--path=./<project_name>`
@@ -17,7 +17,7 @@
17
17
 
18
18
  This command line also supports relative path like `--path=./<project_name>`
19
19
 
20
- $ gina project:add @<project_name> [ —-path=/var/www/<project_name> ][ --homedir=~/.<project_name>/v2 ]
20
+ $ gina project:add @<project_name> [ --path=/var/www/<project_name> ][ --homedir=~/.<project_name>/v2 ]
21
21
  where `~/.<project_name>/v2` is the project homedir path
22
22
  If you do not specifiy a `.<project_name>` for the `--homedir` argument , gina will reuse the one you used with `@<project_name>`
23
23
 
@@ -30,7 +30,7 @@
30
30
  [ Import an existing project ]
31
31
  Works just like `project:add` task. It will also do some extra checking.
32
32
 
33
- $ gina project:import @<project_name> [ —-path=/var/www/<project_name> ] (if no path given, will take the current)
33
+ $ gina project:import @<project_name> [ --path=/var/www/<project_name> ] (if no path given, will take the current)
34
34
 
35
35
 
36
36
  [ List projects ]