gina 0.4.0 → 0.4.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 (465) hide show
  1. package/CHANGELOG.md +17 -0
  2. package/README.md +5 -11
  3. package/ROADMAP.md +18 -7
  4. package/bin/cli +12 -0
  5. package/framework/v0.4.1/VERSION +1 -0
  6. package/framework/{v0.4.0 → v0.4.1}/core/asset/plugin/dist/vendor/gina/js/gina.js +0 -3
  7. package/framework/{v0.4.0 → v0.4.1}/core/asset/plugin/dist/vendor/gina/js/gina.min.js +1 -1
  8. package/framework/v0.4.1/core/asset/plugin/dist/vendor/gina/js/gina.min.js.br +0 -0
  9. package/framework/{v0.4.0 → v0.4.1}/core/asset/plugin/dist/vendor/gina/js/gina.min.js.gz +0 -0
  10. package/framework/{v0.4.0 → v0.4.1}/core/controller/controller.js +43 -0
  11. package/framework/{v0.4.0 → v0.4.1}/core/controller/controller.render-nunjucks.js +117 -7
  12. package/framework/{v0.4.0 → v0.4.1}/core/controller/controller.render-swig.js +21 -1
  13. package/framework/{v0.4.0 → v0.4.1}/core/server.js +23 -1
  14. package/framework/{v0.4.0 → v0.4.1}/lib/cache/src/main.js +0 -3
  15. package/framework/{v0.4.0 → v0.4.1}/lib/cmd/bundle/add.js +24 -0
  16. package/framework/{v0.4.0 → v0.4.1}/lib/cmd/bundle/arguments.json +3 -1
  17. package/framework/v0.4.1/lib/cmd/bundle/copy.js +467 -0
  18. package/framework/{v0.4.0 → v0.4.1}/lib/cmd/bundle/help.txt +74 -0
  19. package/framework/v0.4.1/lib/cmd/bundle/inc/name-rewrite.js +96 -0
  20. package/framework/{v0.4.0 → v0.4.1}/lib/cmd/bundle/list.js +7 -90
  21. package/framework/{v0.4.0 → v0.4.1}/lib/cmd/bundle/remove.js +11 -0
  22. package/framework/v0.4.1/lib/cmd/bundle/rename.js +506 -0
  23. package/framework/v0.4.1/lib/cmd/bundle/status.js +170 -0
  24. package/framework/{v0.4.0 → v0.4.1}/lib/cmd/connector/list.js +2 -18
  25. package/framework/{v0.4.0 → v0.4.1}/lib/cmd/helper.js +1 -1
  26. package/framework/v0.4.1/lib/cmd/minion/arguments.json +4 -0
  27. package/framework/{v0.4.0 → v0.4.1}/lib/cmd/minion/help.txt +5 -1
  28. package/framework/v0.4.1/lib/cmd/minion/kill.js +336 -0
  29. package/framework/v0.4.1/lib/cmd/minion/list.js +270 -0
  30. package/framework/{v0.4.0 → v0.4.1}/lib/cmd/port/set.js +12 -0
  31. package/framework/{v0.4.0 → v0.4.1}/lib/cmd/project/help.txt +16 -0
  32. package/framework/{v0.4.0 → v0.4.1}/lib/cmd/project/remove.js +11 -0
  33. package/framework/v0.4.1/lib/cmd/project/status.js +218 -0
  34. package/framework/v0.4.1/lib/cmd/protocol/arguments.json +5 -0
  35. package/framework/{v0.4.0 → v0.4.1}/lib/cmd/protocol/help.txt +8 -3
  36. package/framework/v0.4.1/lib/cmd/protocol/remove.js +308 -0
  37. package/framework/{v0.4.0 → v0.4.1}/lib/cmd/protocol/set.js +12 -0
  38. package/framework/{v0.4.0 → v0.4.1}/lib/cmd/service/list.js +4 -82
  39. package/framework/{v0.4.0 → v0.4.1}/lib/cmd/view/add.js +13 -0
  40. package/framework/v0.4.1/lib/cmd-status-format/package.json +17 -0
  41. package/framework/v0.4.1/lib/cmd-status-format/src/main.js +142 -0
  42. package/framework/{v0.4.0 → v0.4.1}/lib/collection/src/main.js +0 -3
  43. package/framework/{v0.4.0 → v0.4.1}/lib/index.js +4 -0
  44. package/framework/{v0.4.0 → v0.4.1}/package.json +1 -1
  45. package/gna.js +4 -4
  46. package/llms.txt +13 -6
  47. package/package.json +2 -2
  48. package/script/sync_docs_deps.js +147 -0
  49. package/framework/v0.4.0/VERSION +0 -1
  50. package/framework/v0.4.0/core/asset/plugin/dist/vendor/gina/js/gina.min.js.br +0 -0
  51. package/framework/v0.4.0/lib/cmd/bundle/copy.js +0 -18
  52. package/framework/v0.4.0/lib/cmd/bundle/rename.js +0 -7
  53. package/framework/v0.4.0/lib/cmd/bundle/status.js +0 -6
  54. package/framework/v0.4.0/lib/cmd/project/status.js +0 -3
  55. /package/framework/{v0.4.0 → v0.4.1}/AUTHORS +0 -0
  56. /package/framework/{v0.4.0 → v0.4.1}/LICENSE +0 -0
  57. /package/framework/{v0.4.0 → v0.4.1}/core/asset/html/nolayout.html +0 -0
  58. /package/framework/{v0.4.0 → v0.4.1}/core/asset/html/static.html +0 -0
  59. /package/framework/{v0.4.0 → v0.4.1}/core/asset/img/android-chrome-192x192.png +0 -0
  60. /package/framework/{v0.4.0 → v0.4.1}/core/asset/img/android-chrome-512x512.png +0 -0
  61. /package/framework/{v0.4.0 → v0.4.1}/core/asset/img/apple-touch-icon.png +0 -0
  62. /package/framework/{v0.4.0 → v0.4.1}/core/asset/img/favicon-16x16.png +0 -0
  63. /package/framework/{v0.4.0 → v0.4.1}/core/asset/img/favicon-32x32.png +0 -0
  64. /package/framework/{v0.4.0 → v0.4.1}/core/asset/img/favicon.ico +0 -0
  65. /package/framework/{v0.4.0 → v0.4.1}/core/asset/plugin/README.md +0 -0
  66. /package/framework/{v0.4.0 → v0.4.1}/core/asset/plugin/dist/vendor/gina/beemaster/beemaster.css +0 -0
  67. /package/framework/{v0.4.0 → v0.4.1}/core/asset/plugin/dist/vendor/gina/beemaster/beemaster.js +0 -0
  68. /package/framework/{v0.4.0 → v0.4.1}/core/asset/plugin/dist/vendor/gina/beemaster/index.html +0 -0
  69. /package/framework/{v0.4.0 → v0.4.1}/core/asset/plugin/dist/vendor/gina/css/gina.min.css +0 -0
  70. /package/framework/{v0.4.0 → v0.4.1}/core/asset/plugin/dist/vendor/gina/css/gina.min.css.br +0 -0
  71. /package/framework/{v0.4.0 → v0.4.1}/core/asset/plugin/dist/vendor/gina/css/gina.min.css.gz +0 -0
  72. /package/framework/{v0.4.0 → v0.4.1}/core/asset/plugin/dist/vendor/gina/html/statusbar.html +0 -0
  73. /package/framework/{v0.4.0 → v0.4.1}/core/asset/plugin/dist/vendor/gina/html/statusbar.html.br +0 -0
  74. /package/framework/{v0.4.0 → v0.4.1}/core/asset/plugin/dist/vendor/gina/html/statusbar.html.gz +0 -0
  75. /package/framework/{v0.4.0 → v0.4.1}/core/asset/plugin/dist/vendor/gina/inspector/have_heart_one-webfont.woff2 +0 -0
  76. /package/framework/{v0.4.0 → v0.4.1}/core/asset/plugin/dist/vendor/gina/inspector/index.html +0 -0
  77. /package/framework/{v0.4.0 → v0.4.1}/core/asset/plugin/dist/vendor/gina/inspector/inspector.css +0 -0
  78. /package/framework/{v0.4.0 → v0.4.1}/core/asset/plugin/dist/vendor/gina/inspector/inspector.js +0 -0
  79. /package/framework/{v0.4.0 → v0.4.1}/core/asset/plugin/dist/vendor/gina/inspector/logo.svg +0 -0
  80. /package/framework/{v0.4.0 → v0.4.1}/core/asset/plugin/dist/vendor/gina/js/gina.onload.min.js +0 -0
  81. /package/framework/{v0.4.0 → v0.4.1}/core/asset/plugin/dist/vendor/gina/js/gina.onload.min.js.br +0 -0
  82. /package/framework/{v0.4.0 → v0.4.1}/core/asset/plugin/dist/vendor/gina/js/gina.onload.min.js.gz +0 -0
  83. /package/framework/{v0.4.0 → v0.4.1}/core/config.js +0 -0
  84. /package/framework/{v0.4.0 → v0.4.1}/core/connectors/ai/index.js +0 -0
  85. /package/framework/{v0.4.0 → v0.4.1}/core/connectors/ai/lib/connector.js +0 -0
  86. /package/framework/{v0.4.0 → v0.4.1}/core/connectors/couchbase/index.js +0 -0
  87. /package/framework/{v0.4.0 → v0.4.1}/core/connectors/couchbase/lib/connector.js +0 -0
  88. /package/framework/{v0.4.0 → v0.4.1}/core/connectors/couchbase/lib/connector.v3.js +0 -0
  89. /package/framework/{v0.4.0 → v0.4.1}/core/connectors/couchbase/lib/connector.v4.js +0 -0
  90. /package/framework/{v0.4.0 → v0.4.1}/core/connectors/couchbase/lib/n1ql.js +0 -0
  91. /package/framework/{v0.4.0 → v0.4.1}/core/connectors/couchbase/lib/session-store.js +0 -0
  92. /package/framework/{v0.4.0 → v0.4.1}/core/connectors/couchbase/lib/session-store.v3.js +0 -0
  93. /package/framework/{v0.4.0 → v0.4.1}/core/connectors/couchbase/lib/session-store.v4.js +0 -0
  94. /package/framework/{v0.4.0 → v0.4.1}/core/connectors/mongodb/index.js +0 -0
  95. /package/framework/{v0.4.0 → v0.4.1}/core/connectors/mongodb/lib/connector.js +0 -0
  96. /package/framework/{v0.4.0 → v0.4.1}/core/connectors/mongodb/lib/pipeline-loader.js +0 -0
  97. /package/framework/{v0.4.0 → v0.4.1}/core/connectors/mongodb/lib/session-store.js +0 -0
  98. /package/framework/{v0.4.0 → v0.4.1}/core/connectors/mysql/index.js +0 -0
  99. /package/framework/{v0.4.0 → v0.4.1}/core/connectors/mysql/lib/connector.js +0 -0
  100. /package/framework/{v0.4.0 → v0.4.1}/core/connectors/postgresql/index.js +0 -0
  101. /package/framework/{v0.4.0 → v0.4.1}/core/connectors/postgresql/lib/connector.js +0 -0
  102. /package/framework/{v0.4.0 → v0.4.1}/core/connectors/redis/index.js +0 -0
  103. /package/framework/{v0.4.0 → v0.4.1}/core/connectors/redis/lib/session-store.js +0 -0
  104. /package/framework/{v0.4.0 → v0.4.1}/core/connectors/scylladb/index.js +0 -0
  105. /package/framework/{v0.4.0 → v0.4.1}/core/connectors/scylladb/lib/connector.js +0 -0
  106. /package/framework/{v0.4.0 → v0.4.1}/core/connectors/scylladb/lib/session-store.js +0 -0
  107. /package/framework/{v0.4.0 → v0.4.1}/core/connectors/sql-parser.js +0 -0
  108. /package/framework/{v0.4.0 → v0.4.1}/core/connectors/sqlite/index.js +0 -0
  109. /package/framework/{v0.4.0 → v0.4.1}/core/connectors/sqlite/lib/connector.js +0 -0
  110. /package/framework/{v0.4.0 → v0.4.1}/core/connectors/sqlite/lib/session-store.js +0 -0
  111. /package/framework/{v0.4.0 → v0.4.1}/core/content.encoding +0 -0
  112. /package/framework/{v0.4.0 → v0.4.1}/core/controller/controller.framework.js +0 -0
  113. /package/framework/{v0.4.0 → v0.4.1}/core/controller/controller.render-json.js +0 -0
  114. /package/framework/{v0.4.0 → v0.4.1}/core/controller/controller.render-stream.js +0 -0
  115. /package/framework/{v0.4.0 → v0.4.1}/core/controller/controller.render-v1.js +0 -0
  116. /package/framework/{v0.4.0 → v0.4.1}/core/controller/index.js +0 -0
  117. /package/framework/{v0.4.0 → v0.4.1}/core/controller/inspector-window-emit.js +0 -0
  118. /package/framework/{v0.4.0 → v0.4.1}/core/deps/busboy-1.6.0/LICENSE +0 -0
  119. /package/framework/{v0.4.0 → v0.4.1}/core/deps/busboy-1.6.0/README.md +0 -0
  120. /package/framework/{v0.4.0 → v0.4.1}/core/deps/busboy-1.6.0/lib/index.js +0 -0
  121. /package/framework/{v0.4.0 → v0.4.1}/core/deps/busboy-1.6.0/lib/types/multipart.js +0 -0
  122. /package/framework/{v0.4.0 → v0.4.1}/core/deps/busboy-1.6.0/lib/types/urlencoded.js +0 -0
  123. /package/framework/{v0.4.0 → v0.4.1}/core/deps/busboy-1.6.0/lib/utils.js +0 -0
  124. /package/framework/{v0.4.0 → v0.4.1}/core/deps/busboy-1.6.0/package.json +0 -0
  125. /package/framework/{v0.4.0 → v0.4.1}/core/deps/streamsearch-1.1.0/LICENSE +0 -0
  126. /package/framework/{v0.4.0 → v0.4.1}/core/deps/streamsearch-1.1.0/lib/sbmh.js +0 -0
  127. /package/framework/{v0.4.0 → v0.4.1}/core/deps/streamsearch-1.1.0/package.json +0 -0
  128. /package/framework/{v0.4.0 → v0.4.1}/core/dev/index.js +0 -0
  129. /package/framework/{v0.4.0 → v0.4.1}/core/dev/lib/class.js +0 -0
  130. /package/framework/{v0.4.0 → v0.4.1}/core/dev/lib/factory.js +0 -0
  131. /package/framework/{v0.4.0 → v0.4.1}/core/dev/lib/tools.js +0 -0
  132. /package/framework/{v0.4.0 → v0.4.1}/core/gna.js +0 -0
  133. /package/framework/{v0.4.0 → v0.4.1}/core/locales/README.md +0 -0
  134. /package/framework/{v0.4.0 → v0.4.1}/core/locales/currency.json +0 -0
  135. /package/framework/{v0.4.0 → v0.4.1}/core/locales/dist/language/en.json +0 -0
  136. /package/framework/{v0.4.0 → v0.4.1}/core/locales/dist/language/fr.json +0 -0
  137. /package/framework/{v0.4.0 → v0.4.1}/core/locales/dist/region/en.json +0 -0
  138. /package/framework/{v0.4.0 → v0.4.1}/core/locales/dist/region/fr.json +0 -0
  139. /package/framework/{v0.4.0 → v0.4.1}/core/locales/index.js +0 -0
  140. /package/framework/{v0.4.0 → v0.4.1}/core/mime.types +0 -0
  141. /package/framework/{v0.4.0 → v0.4.1}/core/model/entity.js +0 -0
  142. /package/framework/{v0.4.0 → v0.4.1}/core/model/index.js +0 -0
  143. /package/framework/{v0.4.0 → v0.4.1}/core/model/template/entityFactory.js +0 -0
  144. /package/framework/{v0.4.0 → v0.4.1}/core/model/template/index.js +0 -0
  145. /package/framework/{v0.4.0 → v0.4.1}/core/plugins/README.md +0 -0
  146. /package/framework/{v0.4.0 → v0.4.1}/core/plugins/index.js +0 -0
  147. /package/framework/{v0.4.0 → v0.4.1}/core/plugins/lib/csrf/README.md +0 -0
  148. /package/framework/{v0.4.0 → v0.4.1}/core/plugins/lib/csrf/package.json +0 -0
  149. /package/framework/{v0.4.0 → v0.4.1}/core/plugins/lib/csrf/src/main.js +0 -0
  150. /package/framework/{v0.4.0 → v0.4.1}/core/plugins/lib/security-headers/README.md +0 -0
  151. /package/framework/{v0.4.0 → v0.4.1}/core/plugins/lib/security-headers/coep/README.md +0 -0
  152. /package/framework/{v0.4.0 → v0.4.1}/core/plugins/lib/security-headers/coep/package.json +0 -0
  153. /package/framework/{v0.4.0 → v0.4.1}/core/plugins/lib/security-headers/coep/src/main.js +0 -0
  154. /package/framework/{v0.4.0 → v0.4.1}/core/plugins/lib/security-headers/coop/README.md +0 -0
  155. /package/framework/{v0.4.0 → v0.4.1}/core/plugins/lib/security-headers/coop/package.json +0 -0
  156. /package/framework/{v0.4.0 → v0.4.1}/core/plugins/lib/security-headers/coop/src/main.js +0 -0
  157. /package/framework/{v0.4.0 → v0.4.1}/core/plugins/lib/security-headers/corp/README.md +0 -0
  158. /package/framework/{v0.4.0 → v0.4.1}/core/plugins/lib/security-headers/corp/package.json +0 -0
  159. /package/framework/{v0.4.0 → v0.4.1}/core/plugins/lib/security-headers/corp/src/main.js +0 -0
  160. /package/framework/{v0.4.0 → v0.4.1}/core/plugins/lib/security-headers/csp/README.md +0 -0
  161. /package/framework/{v0.4.0 → v0.4.1}/core/plugins/lib/security-headers/csp/package.json +0 -0
  162. /package/framework/{v0.4.0 → v0.4.1}/core/plugins/lib/security-headers/csp/src/main.js +0 -0
  163. /package/framework/{v0.4.0 → v0.4.1}/core/plugins/lib/security-headers/hide-powered-by/README.md +0 -0
  164. /package/framework/{v0.4.0 → v0.4.1}/core/plugins/lib/security-headers/hide-powered-by/package.json +0 -0
  165. /package/framework/{v0.4.0 → v0.4.1}/core/plugins/lib/security-headers/hide-powered-by/src/main.js +0 -0
  166. /package/framework/{v0.4.0 → v0.4.1}/core/plugins/lib/security-headers/hsts/README.md +0 -0
  167. /package/framework/{v0.4.0 → v0.4.1}/core/plugins/lib/security-headers/hsts/package.json +0 -0
  168. /package/framework/{v0.4.0 → v0.4.1}/core/plugins/lib/security-headers/hsts/src/main.js +0 -0
  169. /package/framework/{v0.4.0 → v0.4.1}/core/plugins/lib/security-headers/origin-agent-cluster/README.md +0 -0
  170. /package/framework/{v0.4.0 → v0.4.1}/core/plugins/lib/security-headers/origin-agent-cluster/package.json +0 -0
  171. /package/framework/{v0.4.0 → v0.4.1}/core/plugins/lib/security-headers/origin-agent-cluster/src/main.js +0 -0
  172. /package/framework/{v0.4.0 → v0.4.1}/core/plugins/lib/security-headers/package.json +0 -0
  173. /package/framework/{v0.4.0 → v0.4.1}/core/plugins/lib/security-headers/referrer-policy/README.md +0 -0
  174. /package/framework/{v0.4.0 → v0.4.1}/core/plugins/lib/security-headers/referrer-policy/package.json +0 -0
  175. /package/framework/{v0.4.0 → v0.4.1}/core/plugins/lib/security-headers/referrer-policy/src/main.js +0 -0
  176. /package/framework/{v0.4.0 → v0.4.1}/core/plugins/lib/security-headers/src/main.js +0 -0
  177. /package/framework/{v0.4.0 → v0.4.1}/core/plugins/lib/security-headers/x-content-type-options/README.md +0 -0
  178. /package/framework/{v0.4.0 → v0.4.1}/core/plugins/lib/security-headers/x-content-type-options/package.json +0 -0
  179. /package/framework/{v0.4.0 → v0.4.1}/core/plugins/lib/security-headers/x-content-type-options/src/main.js +0 -0
  180. /package/framework/{v0.4.0 → v0.4.1}/core/plugins/lib/security-headers/x-dns-prefetch-control/README.md +0 -0
  181. /package/framework/{v0.4.0 → v0.4.1}/core/plugins/lib/security-headers/x-dns-prefetch-control/package.json +0 -0
  182. /package/framework/{v0.4.0 → v0.4.1}/core/plugins/lib/security-headers/x-dns-prefetch-control/src/main.js +0 -0
  183. /package/framework/{v0.4.0 → v0.4.1}/core/plugins/lib/security-headers/x-download-options/README.md +0 -0
  184. /package/framework/{v0.4.0 → v0.4.1}/core/plugins/lib/security-headers/x-download-options/package.json +0 -0
  185. /package/framework/{v0.4.0 → v0.4.1}/core/plugins/lib/security-headers/x-download-options/src/main.js +0 -0
  186. /package/framework/{v0.4.0 → v0.4.1}/core/plugins/lib/security-headers/x-frame-options/README.md +0 -0
  187. /package/framework/{v0.4.0 → v0.4.1}/core/plugins/lib/security-headers/x-frame-options/package.json +0 -0
  188. /package/framework/{v0.4.0 → v0.4.1}/core/plugins/lib/security-headers/x-frame-options/src/main.js +0 -0
  189. /package/framework/{v0.4.0 → v0.4.1}/core/plugins/lib/security-headers/x-permitted-cross-domain-policies/README.md +0 -0
  190. /package/framework/{v0.4.0 → v0.4.1}/core/plugins/lib/security-headers/x-permitted-cross-domain-policies/package.json +0 -0
  191. /package/framework/{v0.4.0 → v0.4.1}/core/plugins/lib/security-headers/x-permitted-cross-domain-policies/src/main.js +0 -0
  192. /package/framework/{v0.4.0 → v0.4.1}/core/plugins/lib/security-headers/x-xss-protection/README.md +0 -0
  193. /package/framework/{v0.4.0 → v0.4.1}/core/plugins/lib/security-headers/x-xss-protection/package.json +0 -0
  194. /package/framework/{v0.4.0 → v0.4.1}/core/plugins/lib/security-headers/x-xss-protection/src/main.js +0 -0
  195. /package/framework/{v0.4.0 → v0.4.1}/core/plugins/lib/session/README.md +0 -0
  196. /package/framework/{v0.4.0 → v0.4.1}/core/plugins/lib/session/package.json +0 -0
  197. /package/framework/{v0.4.0 → v0.4.1}/core/plugins/lib/session/src/main.js +0 -0
  198. /package/framework/{v0.4.0 → v0.4.1}/core/plugins/lib/storage/README.md +0 -0
  199. /package/framework/{v0.4.0 → v0.4.1}/core/plugins/lib/storage/build.json +0 -0
  200. /package/framework/{v0.4.0 → v0.4.1}/core/plugins/lib/storage/package.json +0 -0
  201. /package/framework/{v0.4.0 → v0.4.1}/core/plugins/lib/storage/src/main.js +0 -0
  202. /package/framework/{v0.4.0 → v0.4.1}/core/plugins/lib/validator/README.md +0 -0
  203. /package/framework/{v0.4.0 → v0.4.1}/core/plugins/lib/validator/build.json +0 -0
  204. /package/framework/{v0.4.0 → v0.4.1}/core/plugins/lib/validator/package.json +0 -0
  205. /package/framework/{v0.4.0 → v0.4.1}/core/plugins/lib/validator/src/form-validator.js +0 -0
  206. /package/framework/{v0.4.0 → v0.4.1}/core/plugins/lib/validator/src/main.js +0 -0
  207. /package/framework/{v0.4.0 → v0.4.1}/core/router.js +0 -0
  208. /package/framework/{v0.4.0 → v0.4.1}/core/server.express.js +0 -0
  209. /package/framework/{v0.4.0 → v0.4.1}/core/server.isaac.js +0 -0
  210. /package/framework/{v0.4.0 → v0.4.1}/core/status.codes +0 -0
  211. /package/framework/{v0.4.0 → v0.4.1}/core/template/_gitignore +0 -0
  212. /package/framework/{v0.4.0 → v0.4.1}/core/template/boilerplate/bundle/config/app.json +0 -0
  213. /package/framework/{v0.4.0 → v0.4.1}/core/template/boilerplate/bundle/config/connectors.json +0 -0
  214. /package/framework/{v0.4.0 → v0.4.1}/core/template/boilerplate/bundle/config/routing.json +0 -0
  215. /package/framework/{v0.4.0 → v0.4.1}/core/template/boilerplate/bundle/config/settings.json +0 -0
  216. /package/framework/{v0.4.0 → v0.4.1}/core/template/boilerplate/bundle/config/settings.server.json +0 -0
  217. /package/framework/{v0.4.0 → v0.4.1}/core/template/boilerplate/bundle/config/templates.json +0 -0
  218. /package/framework/{v0.4.0 → v0.4.1}/core/template/boilerplate/bundle/config/watchers.json +0 -0
  219. /package/framework/{v0.4.0 → v0.4.1}/core/template/boilerplate/bundle/controllers/controller.content.js +0 -0
  220. /package/framework/{v0.4.0 → v0.4.1}/core/template/boilerplate/bundle/controllers/controller.js +0 -0
  221. /package/framework/{v0.4.0 → v0.4.1}/core/template/boilerplate/bundle/controllers/setup.js +0 -0
  222. /package/framework/{v0.4.0 → v0.4.1}/core/template/boilerplate/bundle/index.js +0 -0
  223. /package/framework/{v0.4.0 → v0.4.1}/core/template/boilerplate/bundle/locales/en.json +0 -0
  224. /package/framework/{v0.4.0 → v0.4.1}/core/template/boilerplate/bundle_namespace/controllers/controller.js +0 -0
  225. /package/framework/{v0.4.0 → v0.4.1}/core/template/boilerplate/bundle_public/css/default.css +0 -0
  226. /package/framework/{v0.4.0 → v0.4.1}/core/template/boilerplate/bundle_public/css/home.css +0 -0
  227. /package/framework/{v0.4.0 → v0.4.1}/core/template/boilerplate/bundle_public/css/vendor/readme.md +0 -0
  228. /package/framework/{v0.4.0 → v0.4.1}/core/template/boilerplate/bundle_public/favicon.ico +0 -0
  229. /package/framework/{v0.4.0 → v0.4.1}/core/template/boilerplate/bundle_public/js/vendor/readme.md +0 -0
  230. /package/framework/{v0.4.0 → v0.4.1}/core/template/boilerplate/bundle_public/manifest.webmanifest +0 -0
  231. /package/framework/{v0.4.0 → v0.4.1}/core/template/boilerplate/bundle_public/readme.md +0 -0
  232. /package/framework/{v0.4.0 → v0.4.1}/core/template/boilerplate/bundle_public/sw.js +0 -0
  233. /package/framework/{v0.4.0 → v0.4.1}/core/template/boilerplate/bundle_templates/handlers/main.js +0 -0
  234. /package/framework/{v0.4.0 → v0.4.1}/core/template/boilerplate/bundle_templates/html/content/homepage.html +0 -0
  235. /package/framework/{v0.4.0 → v0.4.1}/core/template/boilerplate/bundle_templates/html/includes/error-msg-noscript.html +0 -0
  236. /package/framework/{v0.4.0 → v0.4.1}/core/template/boilerplate/bundle_templates/html/includes/error-msg-outdated-browser.html +0 -0
  237. /package/framework/{v0.4.0 → v0.4.1}/core/template/boilerplate/bundle_templates/html/layouts/main.html +0 -0
  238. /package/framework/{v0.4.0 → v0.4.1}/core/template/command/gina.bat.tpl +0 -0
  239. /package/framework/{v0.4.0 → v0.4.1}/core/template/command/gina.tpl +0 -0
  240. /package/framework/{v0.4.0 → v0.4.1}/core/template/conf/env.json +0 -0
  241. /package/framework/{v0.4.0 → v0.4.1}/core/template/conf/manifest.json +0 -0
  242. /package/framework/{v0.4.0 → v0.4.1}/core/template/conf/package.json +0 -0
  243. /package/framework/{v0.4.0 → v0.4.1}/core/template/conf/settings.json +0 -0
  244. /package/framework/{v0.4.0 → v0.4.1}/core/template/conf/statics.json +0 -0
  245. /package/framework/{v0.4.0 → v0.4.1}/core/template/conf/templates.json +0 -0
  246. /package/framework/{v0.4.0 → v0.4.1}/core/template/error/client/json/401.json +0 -0
  247. /package/framework/{v0.4.0 → v0.4.1}/core/template/error/client/json/403.json +0 -0
  248. /package/framework/{v0.4.0 → v0.4.1}/core/template/error/client/json/404.json +0 -0
  249. /package/framework/{v0.4.0 → v0.4.1}/core/template/error/server/html/50x.html +0 -0
  250. /package/framework/{v0.4.0 → v0.4.1}/core/template/error/server/json/500.json +0 -0
  251. /package/framework/{v0.4.0 → v0.4.1}/core/template/error/server/json/503.json +0 -0
  252. /package/framework/{v0.4.0 → v0.4.1}/core/template/extensions/logger/config.json +0 -0
  253. /package/framework/{v0.4.0 → v0.4.1}/helpers/console.js +0 -0
  254. /package/framework/{v0.4.0 → v0.4.1}/helpers/context.js +0 -0
  255. /package/framework/{v0.4.0 → v0.4.1}/helpers/data/LICENSE +0 -0
  256. /package/framework/{v0.4.0 → v0.4.1}/helpers/data/README.md +0 -0
  257. /package/framework/{v0.4.0 → v0.4.1}/helpers/data/package.json +0 -0
  258. /package/framework/{v0.4.0 → v0.4.1}/helpers/data/src/main.js +0 -0
  259. /package/framework/{v0.4.0 → v0.4.1}/helpers/dateFormat.js +0 -0
  260. /package/framework/{v0.4.0 → v0.4.1}/helpers/index.js +0 -0
  261. /package/framework/{v0.4.0 → v0.4.1}/helpers/json/LICENSE +0 -0
  262. /package/framework/{v0.4.0 → v0.4.1}/helpers/json/README.md +0 -0
  263. /package/framework/{v0.4.0 → v0.4.1}/helpers/json/package.json +0 -0
  264. /package/framework/{v0.4.0 → v0.4.1}/helpers/json/src/main.js +0 -0
  265. /package/framework/{v0.4.0 → v0.4.1}/helpers/path.js +0 -0
  266. /package/framework/{v0.4.0 → v0.4.1}/helpers/plugins/README.md +0 -0
  267. /package/framework/{v0.4.0 → v0.4.1}/helpers/plugins/package.json +0 -0
  268. /package/framework/{v0.4.0 → v0.4.1}/helpers/plugins/src/api-error.js +0 -0
  269. /package/framework/{v0.4.0 → v0.4.1}/helpers/plugins/src/main.js +0 -0
  270. /package/framework/{v0.4.0 → v0.4.1}/helpers/prototypes.js +0 -0
  271. /package/framework/{v0.4.0 → v0.4.1}/helpers/task.js +0 -0
  272. /package/framework/{v0.4.0 → v0.4.1}/helpers/text.js +0 -0
  273. /package/framework/{v0.4.0 → v0.4.1}/lib/archiver/README.md +0 -0
  274. /package/framework/{v0.4.0 → v0.4.1}/lib/archiver/build.json +0 -0
  275. /package/framework/{v0.4.0 → v0.4.1}/lib/archiver/package.json +0 -0
  276. /package/framework/{v0.4.0 → v0.4.1}/lib/archiver/src/dep/jszip.min.js +0 -0
  277. /package/framework/{v0.4.0 → v0.4.1}/lib/archiver/src/main.js +0 -0
  278. /package/framework/{v0.4.0 → v0.4.1}/lib/async/package.json +0 -0
  279. /package/framework/{v0.4.0 → v0.4.1}/lib/async/src/main.js +0 -0
  280. /package/framework/{v0.4.0 → v0.4.1}/lib/cache/README.md +0 -0
  281. /package/framework/{v0.4.0 → v0.4.1}/lib/cache/build.json +0 -0
  282. /package/framework/{v0.4.0 → v0.4.1}/lib/cache/package.json +0 -0
  283. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/aliases.json +0 -0
  284. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/bundle/build.js +0 -0
  285. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/bundle/cp.js +0 -0
  286. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/bundle/help.js +0 -0
  287. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/bundle/mcp-start.js +0 -0
  288. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/bundle/mcp.js +0 -0
  289. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/bundle/oas.js +0 -0
  290. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/bundle/openapi.js +0 -0
  291. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/bundle/restart.js +0 -0
  292. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/bundle/rm.js +0 -0
  293. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/bundle/start.js +0 -0
  294. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/bundle/stop.js +0 -0
  295. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/cache/stats.js +0 -0
  296. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/connector/add.js +0 -0
  297. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/connector/arguments.json +0 -0
  298. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/connector/help.js +0 -0
  299. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/connector/help.txt +0 -0
  300. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/connector/migrate.js +0 -0
  301. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/connector/remove.js +0 -0
  302. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/connector/rm.js +0 -0
  303. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/env/add.js +0 -0
  304. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/env/get.js +0 -0
  305. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/env/help.js +0 -0
  306. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/env/help.txt +0 -0
  307. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/env/link-dev.js +0 -0
  308. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/env/list.js +0 -0
  309. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/env/remove.js +0 -0
  310. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/env/rm.js +0 -0
  311. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/env/set.js +0 -0
  312. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/env/unset.js +0 -0
  313. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/env/use.js +0 -0
  314. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/framework/arguments.json +0 -0
  315. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/framework/build.js +0 -0
  316. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/framework/dot.js +0 -0
  317. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/framework/get.js +0 -0
  318. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/framework/help.js +0 -0
  319. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/framework/help.txt +0 -0
  320. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/framework/init.js +0 -0
  321. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/framework/link-node-modules.js +0 -0
  322. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/framework/link.js +0 -0
  323. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/framework/msg.json +0 -0
  324. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/framework/open.js +0 -0
  325. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/framework/restart.js +0 -0
  326. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/framework/set.js +0 -0
  327. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/framework/start.js +0 -0
  328. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/framework/status.js +0 -0
  329. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/framework/stop.js +0 -0
  330. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/framework/tail.js +0 -0
  331. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/framework/update.js +0 -0
  332. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/framework/version.js +0 -0
  333. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/gina-dev.1.md +0 -0
  334. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/gina-framework.1.md +0 -0
  335. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/gina.1.md +0 -0
  336. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/i18n/add.js +0 -0
  337. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/i18n/arguments.json +0 -0
  338. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/i18n/export.js +0 -0
  339. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/i18n/help.js +0 -0
  340. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/i18n/help.txt +0 -0
  341. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/i18n/import.js +0 -0
  342. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/i18n/scan.js +0 -0
  343. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/index.js +0 -0
  344. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/inspector/help.js +0 -0
  345. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/inspector/help.txt +0 -0
  346. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/inspector/open.js +0 -0
  347. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/minion/help.js +0 -0
  348. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/msg.json +0 -0
  349. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/port/help.js +0 -0
  350. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/port/help.txt +0 -0
  351. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/port/inc/scan.js +0 -0
  352. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/port/list.js +0 -0
  353. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/port/reset.js +0 -0
  354. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/project/add.js +0 -0
  355. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/project/arguments.json +0 -0
  356. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/project/build.js +0 -0
  357. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/project/help.js +0 -0
  358. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/project/import.js +0 -0
  359. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/project/list.js +0 -0
  360. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/project/move.js +0 -0
  361. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/project/rename.js +0 -0
  362. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/project/restart.js +0 -0
  363. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/project/rm.js +0 -0
  364. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/project/start.js +0 -0
  365. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/project/stop.js +0 -0
  366. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/protocol/help.js +0 -0
  367. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/protocol/list.js +0 -0
  368. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/scope/add.js +0 -0
  369. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/scope/help.js +0 -0
  370. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/scope/help.txt +0 -0
  371. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/scope/link-local.js +0 -0
  372. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/scope/link-production.js +0 -0
  373. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/scope/list.js +0 -0
  374. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/scope/remove.js +0 -0
  375. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/scope/rm.js +0 -0
  376. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/scope/use.js +0 -0
  377. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/secrets/arguments.json +0 -0
  378. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/secrets/check.js +0 -0
  379. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/secrets/help.js +0 -0
  380. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/secrets/help.txt +0 -0
  381. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/secrets/scan.js +0 -0
  382. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/service/help.js +0 -0
  383. /package/framework/{v0.4.0 → v0.4.1}/lib/cmd/service/help.txt +0 -0
  384. /package/framework/{v0.4.0 → v0.4.1}/lib/collection/README.md +0 -0
  385. /package/framework/{v0.4.0 → v0.4.1}/lib/collection/build.json +0 -0
  386. /package/framework/{v0.4.0 → v0.4.1}/lib/collection/package.json +0 -0
  387. /package/framework/{v0.4.0 → v0.4.1}/lib/config.js +0 -0
  388. /package/framework/{v0.4.0 → v0.4.1}/lib/connector-registry/package.json +0 -0
  389. /package/framework/{v0.4.0 → v0.4.1}/lib/connector-registry/src/main.js +0 -0
  390. /package/framework/{v0.4.0 → v0.4.1}/lib/cron/README.md +0 -0
  391. /package/framework/{v0.4.0 → v0.4.1}/lib/cron/package.json +0 -0
  392. /package/framework/{v0.4.0 → v0.4.1}/lib/cron/src/main.js +0 -0
  393. /package/framework/{v0.4.0 → v0.4.1}/lib/domain/LICENSE +0 -0
  394. /package/framework/{v0.4.0 → v0.4.1}/lib/domain/README.md +0 -0
  395. /package/framework/{v0.4.0 → v0.4.1}/lib/domain/package.json +0 -0
  396. /package/framework/{v0.4.0 → v0.4.1}/lib/domain/src/main.js +0 -0
  397. /package/framework/{v0.4.0 → v0.4.1}/lib/generator/index.js +0 -0
  398. /package/framework/{v0.4.0 → v0.4.1}/lib/i18n/package.json +0 -0
  399. /package/framework/{v0.4.0 → v0.4.1}/lib/i18n/src/main.js +0 -0
  400. /package/framework/{v0.4.0 → v0.4.1}/lib/inherits/LICENSE +0 -0
  401. /package/framework/{v0.4.0 → v0.4.1}/lib/inherits/README.md +0 -0
  402. /package/framework/{v0.4.0 → v0.4.1}/lib/inherits/package.json +0 -0
  403. /package/framework/{v0.4.0 → v0.4.1}/lib/inherits/src/main.js +0 -0
  404. /package/framework/{v0.4.0 → v0.4.1}/lib/inspector-redact/package.json +0 -0
  405. /package/framework/{v0.4.0 → v0.4.1}/lib/inspector-redact/src/main.js +0 -0
  406. /package/framework/{v0.4.0 → v0.4.1}/lib/instrument/package.json +0 -0
  407. /package/framework/{v0.4.0 → v0.4.1}/lib/instrument/src/main.js +0 -0
  408. /package/framework/{v0.4.0 → v0.4.1}/lib/job/package.json +0 -0
  409. /package/framework/{v0.4.0 → v0.4.1}/lib/job/src/main.js +0 -0
  410. /package/framework/{v0.4.0 → v0.4.1}/lib/logger/README.md +0 -0
  411. /package/framework/{v0.4.0 → v0.4.1}/lib/logger/package.json +0 -0
  412. /package/framework/{v0.4.0 → v0.4.1}/lib/logger/src/containers/default/index.js +0 -0
  413. /package/framework/{v0.4.0 → v0.4.1}/lib/logger/src/containers/file/index.js +0 -0
  414. /package/framework/{v0.4.0 → v0.4.1}/lib/logger/src/containers/file/lib/logrotator/README.md +0 -0
  415. /package/framework/{v0.4.0 → v0.4.1}/lib/logger/src/containers/file/lib/logrotator/index.js +0 -0
  416. /package/framework/{v0.4.0 → v0.4.1}/lib/logger/src/containers/mq/index.js +0 -0
  417. /package/framework/{v0.4.0 → v0.4.1}/lib/logger/src/containers/mq/listener.js +0 -0
  418. /package/framework/{v0.4.0 → v0.4.1}/lib/logger/src/containers/mq/speaker.js +0 -0
  419. /package/framework/{v0.4.0 → v0.4.1}/lib/logger/src/helper.js +0 -0
  420. /package/framework/{v0.4.0 → v0.4.1}/lib/logger/src/main.js +0 -0
  421. /package/framework/{v0.4.0 → v0.4.1}/lib/math/index.js +0 -0
  422. /package/framework/{v0.4.0 → v0.4.1}/lib/mcp-dispatch/package.json +0 -0
  423. /package/framework/{v0.4.0 → v0.4.1}/lib/mcp-dispatch/src/main.js +0 -0
  424. /package/framework/{v0.4.0 → v0.4.1}/lib/mcp-http/package.json +0 -0
  425. /package/framework/{v0.4.0 → v0.4.1}/lib/mcp-http/src/main.js +0 -0
  426. /package/framework/{v0.4.0 → v0.4.1}/lib/mcp-server/package.json +0 -0
  427. /package/framework/{v0.4.0 → v0.4.1}/lib/mcp-server/src/main.js +0 -0
  428. /package/framework/{v0.4.0 → v0.4.1}/lib/merge/README.md +0 -0
  429. /package/framework/{v0.4.0 → v0.4.1}/lib/merge/package.json +0 -0
  430. /package/framework/{v0.4.0 → v0.4.1}/lib/merge/src/main.js +0 -0
  431. /package/framework/{v0.4.0 → v0.4.1}/lib/metrics/package.json +0 -0
  432. /package/framework/{v0.4.0 → v0.4.1}/lib/metrics/src/main.js +0 -0
  433. /package/framework/{v0.4.0 → v0.4.1}/lib/model.js +0 -0
  434. /package/framework/{v0.4.0 → v0.4.1}/lib/nunjucks-filters/README.md +0 -0
  435. /package/framework/{v0.4.0 → v0.4.1}/lib/nunjucks-filters/package.json +0 -0
  436. /package/framework/{v0.4.0 → v0.4.1}/lib/nunjucks-filters/src/main.js +0 -0
  437. /package/framework/{v0.4.0 → v0.4.1}/lib/nunjucks-resolver/package.json +0 -0
  438. /package/framework/{v0.4.0 → v0.4.1}/lib/nunjucks-resolver/src/main.js +0 -0
  439. /package/framework/{v0.4.0 → v0.4.1}/lib/proc.js +0 -0
  440. /package/framework/{v0.4.0 → v0.4.1}/lib/routing/README.md +0 -0
  441. /package/framework/{v0.4.0 → v0.4.1}/lib/routing/build.json +0 -0
  442. /package/framework/{v0.4.0 → v0.4.1}/lib/routing/package.json +0 -0
  443. /package/framework/{v0.4.0 → v0.4.1}/lib/routing/src/main.js +0 -0
  444. /package/framework/{v0.4.0 → v0.4.1}/lib/routing/src/radix.js +0 -0
  445. /package/framework/{v0.4.0 → v0.4.1}/lib/routing-introspect/package.json +0 -0
  446. /package/framework/{v0.4.0 → v0.4.1}/lib/routing-introspect/src/main.js +0 -0
  447. /package/framework/{v0.4.0 → v0.4.1}/lib/secrets/package.json +0 -0
  448. /package/framework/{v0.4.0 → v0.4.1}/lib/secrets/src/backends/env.js +0 -0
  449. /package/framework/{v0.4.0 → v0.4.1}/lib/secrets/src/main.js +0 -0
  450. /package/framework/{v0.4.0 → v0.4.1}/lib/session-store.js +0 -0
  451. /package/framework/{v0.4.0 → v0.4.1}/lib/shell.js +0 -0
  452. /package/framework/{v0.4.0 → v0.4.1}/lib/state.js +0 -0
  453. /package/framework/{v0.4.0 → v0.4.1}/lib/swig-filters/README.md +0 -0
  454. /package/framework/{v0.4.0 → v0.4.1}/lib/swig-filters/package.json +0 -0
  455. /package/framework/{v0.4.0 → v0.4.1}/lib/swig-filters/src/main.js +0 -0
  456. /package/framework/{v0.4.0 → v0.4.1}/lib/swig-resolver/package.json +0 -0
  457. /package/framework/{v0.4.0 → v0.4.1}/lib/swig-resolver/src/main.js +0 -0
  458. /package/framework/{v0.4.0 → v0.4.1}/lib/url/README.md +0 -0
  459. /package/framework/{v0.4.0 → v0.4.1}/lib/url/index.js +0 -0
  460. /package/framework/{v0.4.0 → v0.4.1}/lib/url/routing.json +0 -0
  461. /package/framework/{v0.4.0 → v0.4.1}/lib/uuid/package.json +0 -0
  462. /package/framework/{v0.4.0 → v0.4.1}/lib/uuid/src/main.js +0 -0
  463. /package/framework/{v0.4.0 → v0.4.1}/lib/validator.js +0 -0
  464. /package/framework/{v0.4.0 → v0.4.1}/lib/watcher/package.json +0 -0
  465. /package/framework/{v0.4.0 → v0.4.1}/lib/watcher/src/main.js +0 -0
@@ -0,0 +1,308 @@
1
+ var fs = require('fs');
2
+ var console = lib.logger;
3
+
4
+ var CmdHelper = require('./../helper');
5
+
6
+ /**
7
+ * @module gina/lib/cmd/protocol/remove
8
+ */
9
+ /**
10
+ * Removes a bundle's protocol assignment — deletes the bundle's explicit
11
+ * `server.protocol` / `server.scheme` / `server.allowHTTP1` override from its
12
+ * own `config/settings.json`, reverting the bundle to the project's default
13
+ * protocol+scheme (`def_protocol` / `def_scheme` from `~/.gina/projects.json`).
14
+ *
15
+ * It touches ONLY the bundle's own `settings.json`. It deliberately does NOT
16
+ * mutate the shared `~/.gina/ports.json` / `ports.reverse.json` port maps:
17
+ * `project:add` pre-allocates the full protocol×scheme×env matrix for every
18
+ * bundle, so the default-protocol port already exists and the allocation is not
19
+ * "owned" by an individual `protocol:set`. At config-load time `core/config.js`
20
+ * fills an absent `server.protocol`/`scheme` from the project default, so
21
+ * deleting the override is safe — provided the default-protocol port is
22
+ * allocated (verified by a guard; overridable with `--force`).
23
+ *
24
+ * Bundle-scoped per help.txt: `gina protocol:remove <bundle> @<project>`.
25
+ *
26
+ * Usage:
27
+ * gina protocol:remove <bundle_name> @<project_name>
28
+ * gina protocol:remove <bundle_name> @<project_name> --dry-run
29
+ * gina protocol:remove <bundle_name> @<project_name> --dry-run --format=json
30
+ *
31
+ * @class Remove
32
+ * @constructor
33
+ * @param {object} opt - Parsed command-line options
34
+ * @param {object} opt.client - Socket client for terminal output
35
+ * @param {string[]} opt.argv - Full argv array
36
+ * @param {number} [opt.debugPort] - Node.js inspector port
37
+ * @param {boolean} [opt.debugBrkEnabled] - True when --inspect-brk is active
38
+ * @param {object} cmd - The cmd dispatcher object (lib/cmd/index.js)
39
+ *
40
+ * @example
41
+ * // revert a bundle to the project default protocol
42
+ * $ gina protocol:remove api @myproject
43
+ * Reverted bundle [ api@myproject ] from http/2.0/https to the project default http/1.1/http.
44
+ * You need to restart your bundle.
45
+ *
46
+ * @example
47
+ * // preview only, machine-readable
48
+ * $ gina protocol:remove api @myproject --dry-run --format=json
49
+ * {"bundle":"api","project":"myproject","dryRun":true,"from":{"protocol":"http/2.0","scheme":"https"},"to":{"protocol":"http/1.1","scheme":"http"},"forcedMissingPortEnvs":[]}
50
+ */
51
+ function Remove(opt, cmd) {
52
+ var self = {};
53
+
54
+ /**
55
+ * Wires CmdHelper, validates the bundle + project, then runs the revert.
56
+ *
57
+ * @inner
58
+ * @private
59
+ */
60
+ var init = function() {
61
+
62
+ // import CMD helpers
63
+ new CmdHelper(self, opt.client, { port: opt.debugPort, brkEnabled: opt.debugBrkEnabled });
64
+ // check CMD configuration
65
+ if (!isCmdConfigured()) return false;
66
+
67
+ // protocol:remove is bundle-scoped (per help.txt) — a bundle positional
68
+ // is required; the project is resolved by CmdHelper (cwd-inferred or @<project>).
69
+ if ( typeof(self.name) == 'undefined' || self.name == null ) {
70
+ console.error('protocol:remove requires a bundle: gina protocol:remove <bundle_name> @<project_name>');
71
+ process.exit(1);
72
+ return;
73
+ }
74
+ if ( self.projectName == null || typeof(self.projects[self.projectName]) == 'undefined' ) {
75
+ console.error('[ '+ self.projectName +' ] is not a registered project.');
76
+ process.exit(1);
77
+ return;
78
+ }
79
+
80
+ // populate bundlesByProject[...].configPaths (mirrors set.js setBundleOnly)
81
+ loadAssets();
82
+
83
+ remove();
84
+ }
85
+
86
+
87
+ /**
88
+ * Header-preserving read of a JSON config (mirrors connector/remove.js):
89
+ * captures the leading comment header verbatim and parses the body with the
90
+ * comment-tolerant global `requireJSON`.
91
+ *
92
+ * @inner
93
+ * @private
94
+ * @param {string} target
95
+ * @returns {{header: string, data: object}|null}
96
+ */
97
+ var readSettings = function(target) {
98
+ if ( !fs.existsSync(target) ) {
99
+ console.error('Bundle settings `'+ target +'` does not exist — nothing to remove.');
100
+ process.exit(1);
101
+ return null;
102
+ }
103
+ var raw;
104
+ try {
105
+ raw = fs.readFileSync(target, 'utf8');
106
+ } catch (e) {
107
+ console.error('Cannot read `'+ target +'`: '+ e.message);
108
+ process.exit(1);
109
+ return null;
110
+ }
111
+ var firstBrace = raw.indexOf('{');
112
+ var header = (firstBrace > 0) ? raw.slice(0, firstBrace) : '';
113
+ var data;
114
+ try {
115
+ data = requireJSON(target) || {};
116
+ } catch (e) {
117
+ console.error('Cannot parse `'+ target +'`: '+ e.message);
118
+ process.exit(1);
119
+ return null;
120
+ }
121
+ return { header: header, data: data };
122
+ }
123
+
124
+
125
+ /**
126
+ * Header-preserving write (mirrors connector/remove.js::writeFile) + evicts
127
+ * the require cache so a re-read in the same process sees the change.
128
+ *
129
+ * @inner
130
+ * @private
131
+ * @param {string} target
132
+ * @param {string} header
133
+ * @param {object} data
134
+ */
135
+ var writeSettings = function(target, header, data) {
136
+ var body = JSON.stringify(data, null, 4);
137
+ var text = (header || '') + body + '\n';
138
+ lib.generator.createFileFromDataSync(text, target);
139
+ try { delete require.cache[require.resolve(target)]; } catch (e) { /* not cached */ }
140
+ }
141
+
142
+
143
+ /**
144
+ * Returns the list of the bundle's envs that have NO port allocated for the
145
+ * project default protocol+scheme. An empty list means reverting is safe;
146
+ * a non-empty list means at least one env would be unrunnable after the
147
+ * revert (config.js emergs on a missing port) unless --force is used.
148
+ *
149
+ * @inner
150
+ * @private
151
+ * @param {string} defProtocol
152
+ * @param {string} defScheme
153
+ * @returns {string[]}
154
+ */
155
+ var checkDefaultPort = function(defProtocol, defScheme) {
156
+ var missing = [];
157
+ var key = self.name + '@' + self.projectName;
158
+ var portsReverse = {};
159
+ var prPath = (self.portsReversePath) ? self.portsReversePath : _(GINA_HOMEDIR + '/ports.reverse.json');
160
+ try {
161
+ if ( fs.existsSync(prPath) ) {
162
+ portsReverse = requireJSON(prPath);
163
+ }
164
+ } catch (e) {
165
+ portsReverse = {};
166
+ }
167
+
168
+ var envs = self.envs || [];
169
+ for (var i = 0; i < envs.length; i++) {
170
+ var env = envs[i];
171
+ var hasPort = portsReverse[key]
172
+ && portsReverse[key][env]
173
+ && portsReverse[key][env][defProtocol]
174
+ && typeof(portsReverse[key][env][defProtocol][defScheme]) != 'undefined';
175
+ if ( !hasPort ) {
176
+ missing.push(env);
177
+ }
178
+ }
179
+ return missing;
180
+ }
181
+
182
+
183
+ /**
184
+ * Prints the revert result (or dry-run preview) as text, or a
185
+ * `{ bundle, project, dryRun, from, to, forcedMissingPortEnvs }` envelope
186
+ * with `--format=json`, then exits.
187
+ *
188
+ * @inner
189
+ * @private
190
+ * @param {string|null} curProtocol
191
+ * @param {string|null} curScheme
192
+ * @param {string} defProtocol
193
+ * @param {string} defScheme
194
+ * @param {string[]} missingEnvs
195
+ * @param {boolean} dryRun
196
+ * @param {string|null} format
197
+ */
198
+ var report = function(curProtocol, curScheme, defProtocol, defScheme, missingEnvs, dryRun, format) {
199
+ if ( /^json?/.test(format) ) {
200
+ process.stdout.write(JSON.stringify({
201
+ bundle : self.name,
202
+ project : self.projectName,
203
+ dryRun : dryRun,
204
+ from : { protocol: curProtocol, scheme: curScheme },
205
+ to : { protocol: defProtocol, scheme: defScheme },
206
+ forcedMissingPortEnvs : missingEnvs
207
+ }));
208
+ return process.exit(0);
209
+ }
210
+
211
+ var fromStr = (curProtocol || '(none)') + '/' + (curScheme || '(none)');
212
+ var toStr = defProtocol + '/' + defScheme;
213
+ if ( dryRun ) {
214
+ console.log('[ dry-run ] would revert [ '+ self.name +'@'+ self.projectName +' ] from '+ fromStr +' to the project default '+ toStr +' (no changes written).');
215
+ } else {
216
+ console.log('Reverted bundle [ '+ self.name +'@'+ self.projectName +' ] from '+ fromStr +' to the project default '+ toStr +'.');
217
+ if ( missingEnvs.length > 0 ) {
218
+ console.log(' warning: no default-protocol port for env(s): '+ missingEnvs.join(', ') +' — run `gina protocol:set '+ self.name +' @'+ self.projectName +'` before starting those.');
219
+ }
220
+ console.log('You need to restart your bundle.');
221
+ }
222
+ process.exit(0);
223
+ }
224
+
225
+
226
+ /**
227
+ * Resolves the bundle's settings.json, reads the current override, guards
228
+ * the default-protocol port, then deletes the override (reverting to the
229
+ * project default) — unless --dry-run.
230
+ *
231
+ * @inner
232
+ * @private
233
+ */
234
+ var remove = function() {
235
+ var p = self.params || {};
236
+ var dryRun = !!p['dry-run'];
237
+ var force = !!p['force'];
238
+ var format = p['format'] || null;
239
+
240
+ var projectConf = self.projects[self.projectName];
241
+ var defProtocol = projectConf.def_protocol;
242
+ var defScheme = projectConf.def_scheme;
243
+ if ( !defProtocol || !defScheme ) {
244
+ console.error('Project [ '+ self.projectName +' ] has no default protocol/scheme — cannot revert. Run `gina protocol:set @'+ self.projectName +'` first.');
245
+ process.exit(1);
246
+ return;
247
+ }
248
+
249
+ // resolve the bundle's settings.json (same path set.js writes to)
250
+ var bundleConfig = (self.bundlesByProject && self.bundlesByProject[self.projectName])
251
+ ? self.bundlesByProject[self.projectName][self.name]
252
+ : null;
253
+ if ( !bundleConfig || !bundleConfig.configPaths || !bundleConfig.configPaths.settings ) {
254
+ console.error('Bundle [ '+ self.name +' ] is not registered inside `@'+ self.projectName +'`.');
255
+ process.exit(1);
256
+ return;
257
+ }
258
+ var settingsPath = _(bundleConfig.configPaths.settings, true);
259
+
260
+ var parsed = readSettings(settingsPath);
261
+ if (!parsed) return;
262
+ var settings = parsed.data;
263
+
264
+ var curProtocol = (settings.server && settings.server.protocol) ? settings.server.protocol : null;
265
+ var curScheme = (settings.server && settings.server.scheme) ? settings.server.scheme : null;
266
+
267
+ // nothing to remove — no override, or the override already equals default
268
+ if ( curProtocol == null && curScheme == null ) {
269
+ console.log('Bundle [ '+ self.name +'@'+ self.projectName +' ] has no protocol override — it already uses the project default '+ defProtocol +'/'+ defScheme +'. Nothing to remove.');
270
+ process.exit(0);
271
+ return;
272
+ }
273
+ if ( curProtocol === defProtocol && curScheme === defScheme ) {
274
+ console.log('Bundle [ '+ self.name +'@'+ self.projectName +' ] already uses the project default '+ defProtocol +'/'+ defScheme +'. Nothing to remove.');
275
+ process.exit(0);
276
+ return;
277
+ }
278
+
279
+ // port guard: reverting to a default that has no allocated port would
280
+ // make the bundle unrunnable (config.js emergs). Refuse unless --force.
281
+ var missingEnvs = checkDefaultPort(defProtocol, defScheme);
282
+ if ( missingEnvs.length > 0 && !force ) {
283
+ console.error('Bundle [ '+ self.name +'@'+ self.projectName +' ] has no port allocated for the project default protocol '+ defProtocol +'/'+ defScheme +' (env: '+ missingEnvs.join(', ') +'). Run `gina protocol:set '+ self.name +' @'+ self.projectName +'` to (re)assign a port, or re-run with --force to revert anyway.');
284
+ process.exit(1);
285
+ return;
286
+ }
287
+
288
+ if ( dryRun ) {
289
+ return report(curProtocol, curScheme, defProtocol, defScheme, missingEnvs, true, format);
290
+ }
291
+
292
+ // revert: drop the bundle's protocol override so config.js falls back
293
+ // to the project default at load time.
294
+ if ( settings.server ) {
295
+ delete settings.server.protocol;
296
+ delete settings.server.scheme;
297
+ delete settings.server.allowHTTP1;
298
+ }
299
+ writeSettings(settingsPath, parsed.header, settings);
300
+
301
+ report(curProtocol, curScheme, defProtocol, defScheme, missingEnvs, false, format);
302
+ }
303
+
304
+
305
+ init()
306
+ };
307
+
308
+ module.exports = Remove
@@ -135,6 +135,18 @@ function Set(opt, cmd) {
135
135
  return;
136
136
  }
137
137
 
138
+ // Non-interactive guard: without a TTY (container, CI, piped/detached
139
+ // stdin) the module-scope readline closes on stdin EOF and the rl.prompt()
140
+ // below would throw ERR_USE_AFTER_CLOSE. Fail fast pointing at the flags.
141
+ if ( !process.stdin.isTTY || rl.closed ) {
142
+ console.error(
143
+ 'protocol:set needs interactive input for '+ actionType +' ('+ name +') that cannot be read: stdin is not interactive (no TTY).\n'
144
+ + 'Re-run passing both --protocol and --scheme:\n'
145
+ + ' gina protocol:set <your args> --protocol=<http/1.1|http/2.0> --scheme=<http|https>'
146
+ );
147
+ return process.exit(1);
148
+ }
149
+
138
150
  choicesOpt.push('cancel');
139
151
 
140
152
  for (var p = 0, len = choicesOpt.length; p < len; ++p) {
@@ -1,5 +1,6 @@
1
1
  var fs = require('fs');
2
2
  var console = lib.logger;
3
+ var fmt = lib.cmdStatusFormat;
3
4
 
4
5
  var CmdHelper = require('./../helper');
5
6
 
@@ -105,8 +106,8 @@ function List(opt, cmd) {
105
106
  var srcExists = src && fs.existsSync(_(ginaProject.path + '/' + src));
106
107
  var status = srcExists ? 'ok' : '?!';
107
108
  var ports = portsReverse[name + '@gina'] || null;
108
- var preferred = pickPreferredPort(ports);
109
- var runState = readPidfile(name);
109
+ var preferred = fmt.pickPreferredPort(ports);
110
+ var runState = fmt.readPidfile(GINA_HOMEDIR + '/run', name, 'gina');
110
111
 
111
112
  json.push({
112
113
  service : name,
@@ -121,7 +122,7 @@ function List(opt, cmd) {
121
122
  var portLabel = preferred
122
123
  ? preferred.scheme + ' ' + preferred.env + ' ' + preferred.protocol + ' ' + preferred.port
123
124
  : '(no port)';
124
- var line = stateLabel + ' ' + pad(name, 14) + ' ' + portLabel;
125
+ var line = stateLabel + ' ' + fmt.pad(name, 14) + ' ' + portLabel;
125
126
  if (runState.running && runState.pid) {
126
127
  line += ' pid ' + runState.pid;
127
128
  }
@@ -145,85 +146,6 @@ function List(opt, cmd) {
145
146
  process.exit(0);
146
147
  };
147
148
 
148
- /**
149
- * Right-pads `s` with spaces to reach `width`. Used for column alignment
150
- * in the text output.
151
- *
152
- * @inner
153
- * @private
154
- * @param {string} s
155
- * @param {number} width
156
- * @returns {string}
157
- */
158
- var pad = function (s, width) {
159
- var out = String(s || '');
160
- while (out.length < width) {
161
- out += ' ';
162
- }
163
- return out;
164
- };
165
-
166
- /**
167
- * Picks the "preferred" port to display for a service: dev env, http/2.0
168
- * https first, falling back to http/1.1 https, then http/1.1 http.
169
- *
170
- * @inner
171
- * @private
172
- * @param {object|null} ports - Port record from ports.reverse.json
173
- * @returns {{env: string, scheme: string, protocol: string, port: number}|null}
174
- */
175
- var pickPreferredPort = function (ports) {
176
- if (!ports) return null;
177
- var envKey = ports.dev ? 'dev' : Object.keys(ports)[0];
178
- if (!envKey) return null;
179
- var env = ports[envKey];
180
- if (!env) return null;
181
-
182
- if (env['http/2.0'] && env['http/2.0'].https) {
183
- return { env: envKey, scheme: 'http/2.0', protocol: 'https', port: env['http/2.0'].https };
184
- }
185
- if (env['http/1.1'] && env['http/1.1'].https) {
186
- return { env: envKey, scheme: 'http/1.1', protocol: 'https', port: env['http/1.1'].https };
187
- }
188
- if (env['http/1.1'] && env['http/1.1'].http) {
189
- return { env: envKey, scheme: 'http/1.1', protocol: 'http', port: env['http/1.1'].http };
190
- }
191
- return null;
192
- };
193
-
194
- /**
195
- * Reads `~/.gina/run/<name>@gina.pid` and probes the process with
196
- * `process.kill(pid, 0)`. Returns `running: false` on a stale pidfile
197
- * but does not delete it — clean-up is bundle:stop's job.
198
- *
199
- * @inner
200
- * @private
201
- * @param {string} name - Service name (without the @gina suffix)
202
- * @returns {{running: boolean, pid: number|null}}
203
- */
204
- var readPidfile = function (name) {
205
- var pidPath = _(GINA_HOMEDIR + '/run/' + name + '@gina.pid');
206
- if ( !fs.existsSync(pidPath) ) {
207
- return { running: false, pid: null };
208
- }
209
- var raw;
210
- try {
211
- raw = fs.readFileSync(pidPath, 'utf8').trim();
212
- } catch (e) {
213
- return { running: false, pid: null };
214
- }
215
- var pid = parseInt(raw, 10);
216
- if ( isNaN(pid) || pid <= 0 ) {
217
- return { running: false, pid: null };
218
- }
219
- try {
220
- process.kill(pid, 0);
221
- return { running: true, pid: pid };
222
- } catch (e) {
223
- return { running: false, pid: null };
224
- }
225
- };
226
-
227
149
  init();
228
150
  }
229
151
 
@@ -237,6 +237,19 @@ function Add(opt, cmd) {
237
237
  var folder = _(local.src + '/templates');
238
238
 
239
239
  if ( fs.existsSync(target) || fs.existsSync(folder) ) {
240
+ // Non-interactive guard: without a TTY (container, CI, piped/detached
241
+ // stdin) the module-scope readline closes on stdin EOF and rl.prompt()
242
+ // would throw ERR_USE_AFTER_CLOSE. view:add has no skip flag, so fail
243
+ // fast and point at the existing files to remove for a clean recreate.
244
+ if ( !process.stdin.isTTY || rl.closed ) {
245
+ console.error(
246
+ 'Templates already exist for [ '+ local.bundle +'@'+ self.projectName +' ], and stdin is not interactive (no TTY) to confirm an override.\n'
247
+ + 'Re-run in an interactive terminal, or remove the existing files first to recreate them:\n'
248
+ + ' '+ target +'\n'
249
+ + ' '+ folder
250
+ );
251
+ return process.exit(1);
252
+ }
240
253
  rl.setPrompt('Found templates for [ '+ local.bundle +'@'+ self.projectName +' ]. Do you want to override ? (yes|no) > \n');
241
254
  rl.prompt();
242
255
 
@@ -0,0 +1,17 @@
1
+ {
2
+ "name": "gina-lib-cmd-status-format",
3
+ "version": "1.0.0",
4
+ "description": "Shared run-state / port display primitives (pad, pickPreferredPort, readPidfile) for the bundle:list / service:list / bundle:status / project:status CLI commands.",
5
+ "authors": [
6
+ {
7
+ "name": "Martin-Luther ETOUMAN",
8
+ "email": "contact@gina.io"
9
+ }
10
+ ],
11
+ "copyright": "Copyright (c) 2009-2026 Rhinostone <contact@gina.io>",
12
+ "engines": {
13
+ "node": ">=0.10.22"
14
+ },
15
+ "main": "src/main",
16
+ "license": "MIT"
17
+ }
@@ -0,0 +1,142 @@
1
+ /*
2
+ * This file is part of the gina package.
3
+ * Copyright (c) 2009-2026 Rhinostone <contact@gina.io>
4
+ *
5
+ * For the full copyright and license information, please view the LICENSE
6
+ * file that was distributed with this source code.
7
+ */
8
+
9
+ /**
10
+ * @module gina/lib/cmd-status-format
11
+ *
12
+ * Shared run-state / port display primitives for the bundle- and project-level
13
+ * CLI status commands (`bundle:list`, `service:list`, `bundle:status`,
14
+ * `project:status`). Each of those handlers previously carried its own
15
+ * byte-identical copy of `pad`, `pickPreferredPort`, and `readPidfile`; this
16
+ * module is the single source of truth.
17
+ *
18
+ * This module is pure — it requires only node builtins (`fs`, `path`), does
19
+ * not require `lib.*`, and does not read framework globals (`GINA_HOMEDIR`,
20
+ * `_`). Callers pass the run directory in (see {@link readPidfile}), so the
21
+ * module is unit-testable by a direct `require`. Same contract as
22
+ * {@link module:gina/lib/routing-introspect}.
23
+ *
24
+ * @example
25
+ * var fmt = lib.cmdStatusFormat;
26
+ * var preferred = fmt.pickPreferredPort(ports); // {env,scheme,protocol,port} | null
27
+ * var runState = fmt.readPidfile(GINA_HOMEDIR + '/run', 'api', 'myproject');
28
+ * var line = fmt.pad('api', 16) + ' ' + (preferred ? preferred.port : '(no port)');
29
+ */
30
+
31
+ var fs = require('fs');
32
+ var path = require('path');
33
+
34
+ /**
35
+ * Right-pads `s` with spaces to reach `width`. Used to align the port column
36
+ * after the bundle / service name in the text output. Coerces a falsy input
37
+ * to the empty string and never truncates (a string already at or beyond
38
+ * `width` is returned unchanged).
39
+ *
40
+ * @memberof module:gina/lib/cmd-status-format
41
+ * @param {string} s
42
+ * @param {number} width
43
+ * @returns {string}
44
+ *
45
+ * @example
46
+ * pad('api', 8); // 'api '
47
+ * pad('', 3); // ' '
48
+ * pad('toolong', 4); // 'toolong' (unchanged — already wider than 4)
49
+ */
50
+ var pad = function(s, width) {
51
+ var out = String(s || '');
52
+ while (out.length < width) {
53
+ out += ' ';
54
+ }
55
+ return out;
56
+ };
57
+
58
+ /**
59
+ * Picks the "preferred" port to display for a bundle / service from its
60
+ * `ports.reverse.json` record: the `dev` env when present (else the first env
61
+ * key), then `http/2.0 https` → `http/1.1 https` → `http/1.1 http`. Returns
62
+ * null when no port is allocated.
63
+ *
64
+ * @memberof module:gina/lib/cmd-status-format
65
+ * @param {object|null} ports - Port record from ports.reverse.json
66
+ * @returns {{env: string, scheme: string, protocol: string, port: number}|null}
67
+ *
68
+ * @example
69
+ * pickPreferredPort({ dev: { 'http/2.0': { https: 4208 } } });
70
+ * // { env: 'dev', scheme: 'http/2.0', protocol: 'https', port: 4208 }
71
+ *
72
+ * @example
73
+ * pickPreferredPort(null); // null
74
+ */
75
+ var pickPreferredPort = function(ports) {
76
+ if (!ports) return null;
77
+ var envKey = ports.dev ? 'dev' : Object.keys(ports)[0];
78
+ if (!envKey) return null;
79
+ var env = ports[envKey];
80
+ if (!env) return null;
81
+
82
+ if (env['http/2.0'] && env['http/2.0'].https) {
83
+ return { env: envKey, scheme: 'http/2.0', protocol: 'https', port: env['http/2.0'].https };
84
+ }
85
+ if (env['http/1.1'] && env['http/1.1'].https) {
86
+ return { env: envKey, scheme: 'http/1.1', protocol: 'https', port: env['http/1.1'].https };
87
+ }
88
+ if (env['http/1.1'] && env['http/1.1'].http) {
89
+ return { env: envKey, scheme: 'http/1.1', protocol: 'http', port: env['http/1.1'].http };
90
+ }
91
+ return null;
92
+ };
93
+
94
+ /**
95
+ * Reads `<runDir>/<bundleName>@<projectName>.pid` and probes the pid with
96
+ * `process.kill(pid, 0)`. Returns `running: false` on a missing, unreadable,
97
+ * non-numeric, non-positive, or stale pidfile — and never deletes the file
98
+ * (clean-up stays with `bundle:stop`).
99
+ *
100
+ * `runDir` is passed in (rather than read from the `GINA_HOMEDIR` global) so
101
+ * the module stays pure and unit-testable. CLI-daemon callers pass
102
+ * `GINA_HOMEDIR + '/run'`; `service:list` passes `'gina'` as the project to
103
+ * resolve `<name>@gina.pid`.
104
+ *
105
+ * @memberof module:gina/lib/cmd-status-format
106
+ * @param {string} runDir - Directory holding the pidfiles (e.g. ~/.gina/run)
107
+ * @param {string} bundleName
108
+ * @param {string} projectName
109
+ * @returns {{running: boolean, pid: number|null}}
110
+ *
111
+ * @example
112
+ * readPidfile('/home/u/.gina/run', 'api', 'myproject');
113
+ * // { running: true, pid: 12345 } — when the process is alive
114
+ */
115
+ var readPidfile = function(runDir, bundleName, projectName) {
116
+ var pidPath = path.join(runDir, bundleName + '@' + projectName + '.pid');
117
+ if ( !fs.existsSync(pidPath) ) {
118
+ return { running: false, pid: null };
119
+ }
120
+ var raw;
121
+ try {
122
+ raw = fs.readFileSync(pidPath, 'utf8').trim();
123
+ } catch (e) {
124
+ return { running: false, pid: null };
125
+ }
126
+ var pid = parseInt(raw, 10);
127
+ if ( isNaN(pid) || pid <= 0 ) {
128
+ return { running: false, pid: null };
129
+ }
130
+ try {
131
+ process.kill(pid, 0);
132
+ return { running: true, pid: pid };
133
+ } catch (e) {
134
+ return { running: false, pid: null };
135
+ }
136
+ };
137
+
138
+ module.exports = {
139
+ pad : pad,
140
+ pickPreferredPort : pickPreferredPort,
141
+ readPidfile : readPidfile
142
+ };
@@ -1,7 +1,4 @@
1
1
  'use strict';
2
- if ( typeof(module) !== 'undefined' && module.exports ) {
3
- var lib = require('../../index');
4
- }
5
2
 
6
3
  /**
7
4
  * @module lib/collection
@@ -114,6 +114,10 @@ function Lib() {
114
114
  // and bundle:mcp to parse URL patterns, methods, requirements, and derive
115
115
  // stable tool / operation identifiers.
116
116
  routingIntrospect: _require('./routing-introspect'),
117
+ // Shared run-state / port display primitives (pad, pickPreferredPort,
118
+ // readPidfile) for the bundle:list / service:list / bundle:status /
119
+ // project:status CLI handlers. Pure (same contract as routing-introspect).
120
+ cmdStatusFormat : _require('./cmd-status-format'),
117
121
  // Single source of truth for the connector driver → npm package + semver
118
122
  // range mapping. Consumed by the connector:* CLI handlers (connector:add
119
123
  // install hint + connector:add --install range resolution + connector:list
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "gina-framework",
3
- "version": "0.3.16-alpha.3",
3
+ "version": "0.4.1-alpha.2",
4
4
  "dependencies": {
5
5
  "@rhinostone/swig": "^2.5.1",
6
6
  "intl-messageformat": "^11.2.4",
package/gna.js CHANGED
@@ -15,14 +15,14 @@
15
15
  'use strict';
16
16
 
17
17
  // Framework core — the main gna module (lifecycle hooks, lib, etc.)
18
- var _gna = require('./framework/v0.4.0/core/gna');
18
+ var _gna = require('./framework/v0.4.1/core/gna');
19
19
 
20
20
  // SuperController and EntitySuper — loaded from their source modules
21
- var SuperController = require('./framework/v0.4.0/core/controller');
22
- var EntitySuper = require('./framework/v0.4.0/core/model/entity');
21
+ var SuperController = require('./framework/v0.4.1/core/controller');
22
+ var EntitySuper = require('./framework/v0.4.1/core/model/entity');
23
23
 
24
24
  // uuid — from the lib registry
25
- var uuid = require('./framework/v0.4.0/lib/uuid');
25
+ var uuid = require('./framework/v0.4.1/lib/uuid');
26
26
 
27
27
  module.exports = {
28
28