gina 0.3.1 → 0.3.2

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 (501) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/CONVENTIONS.md +42 -0
  3. package/README.md +8 -6
  4. package/ROADMAP.md +5 -2
  5. package/bin/cli +1 -0
  6. package/bin/gina +4 -0
  7. package/framework/v0.3.2/VERSION +1 -0
  8. package/framework/v0.3.2/core/asset/plugin/dist/vendor/gina/inspector/have_heart_one-webfont.woff2 +0 -0
  9. package/framework/{v0.3.1 → v0.3.2}/core/asset/plugin/dist/vendor/gina/inspector/index.html +4 -0
  10. package/framework/{v0.3.1 → v0.3.2}/core/asset/plugin/dist/vendor/gina/inspector/inspector.css +160 -9
  11. package/framework/{v0.3.1 → v0.3.2}/core/asset/plugin/dist/vendor/gina/inspector/inspector.js +250 -7
  12. package/framework/v0.3.2/core/asset/plugin/dist/vendor/gina/js/gina.min.js +532 -0
  13. package/framework/v0.3.2/core/asset/plugin/dist/vendor/gina/js/gina.min.js.br +0 -0
  14. package/framework/v0.3.2/core/asset/plugin/dist/vendor/gina/js/gina.min.js.gz +0 -0
  15. package/framework/v0.3.2/core/asset/plugin/dist/vendor/gina/js/gina.onload.min.js +8 -0
  16. package/framework/v0.3.2/core/asset/plugin/dist/vendor/gina/js/gina.onload.min.js.br +0 -0
  17. package/framework/v0.3.2/core/asset/plugin/dist/vendor/gina/js/gina.onload.min.js.gz +0 -0
  18. package/framework/{v0.3.1 → v0.3.2}/core/connectors/couchbase/index.js +33 -13
  19. package/framework/{v0.3.1 → v0.3.2}/core/controller/controller.js +20 -1
  20. package/framework/{v0.3.1 → v0.3.2}/core/controller/controller.render-json.js +60 -14
  21. package/framework/v0.3.2/core/deps/swig-1.4.2/dist/swig.min.js +7 -0
  22. package/framework/{v0.3.1 → v0.3.2}/core/gna.js +35 -1
  23. package/framework/{v0.3.1 → v0.3.2}/core/server.isaac.js +30 -8
  24. package/framework/{v0.3.1 → v0.3.2}/core/server.js +50 -9
  25. package/framework/{v0.3.1 → v0.3.2}/helpers/context.js +1 -0
  26. package/framework/{v0.3.1 → v0.3.2}/lib/cmd/bundle/add.js +0 -1
  27. package/framework/{v0.3.1 → v0.3.2}/lib/cmd/bundle/start.js +11 -13
  28. package/framework/{v0.3.1 → v0.3.2}/lib/cmd/framework/restart.js +10 -1
  29. package/framework/v0.3.2/lib/cmd/inspector/help.js +48 -0
  30. package/framework/v0.3.2/lib/cmd/inspector/help.txt +28 -0
  31. package/framework/v0.3.2/lib/cmd/inspector/open.js +510 -0
  32. package/framework/{v0.3.1 → v0.3.2}/lib/index.js +1 -0
  33. package/framework/{v0.3.1 → v0.3.2}/lib/model.js +27 -3
  34. package/llms.txt +6 -1
  35. package/package.json +101 -101
  36. package/schema/connectors.json +99 -12
  37. package/schema/routing.json +93 -7
  38. package/schema/watchers.json +29 -0
  39. package/script/post_install.js +5 -1
  40. package/framework/v0.3.1/VERSION +0 -1
  41. package/framework/v0.3.1/core/asset/plugin/dist/vendor/gina/js/gina.min.js +0 -21544
  42. package/framework/v0.3.1/core/asset/plugin/dist/vendor/gina/js/gina.min.js.br +0 -0
  43. package/framework/v0.3.1/core/asset/plugin/dist/vendor/gina/js/gina.min.js.gz +0 -0
  44. package/framework/v0.3.1/core/asset/plugin/dist/vendor/gina/js/gina.onload.min.js +0 -286
  45. package/framework/v0.3.1/core/asset/plugin/dist/vendor/gina/js/gina.onload.min.js.br +0 -0
  46. package/framework/v0.3.1/core/asset/plugin/dist/vendor/gina/js/gina.onload.min.js.gz +0 -0
  47. /package/framework/{v0.3.1 → v0.3.2}/AUTHORS +0 -0
  48. /package/framework/{v0.3.1 → v0.3.2}/LICENSE +0 -0
  49. /package/framework/{v0.3.1 → v0.3.2}/core/asset/html/nolayout.html +0 -0
  50. /package/framework/{v0.3.1 → v0.3.2}/core/asset/html/static.html +0 -0
  51. /package/framework/{v0.3.1 → v0.3.2}/core/asset/img/android-chrome-192x192.png +0 -0
  52. /package/framework/{v0.3.1 → v0.3.2}/core/asset/img/android-chrome-512x512.png +0 -0
  53. /package/framework/{v0.3.1 → v0.3.2}/core/asset/img/apple-touch-icon.png +0 -0
  54. /package/framework/{v0.3.1 → v0.3.2}/core/asset/img/favicon-16x16.png +0 -0
  55. /package/framework/{v0.3.1 → v0.3.2}/core/asset/img/favicon-32x32.png +0 -0
  56. /package/framework/{v0.3.1 → v0.3.2}/core/asset/img/favicon.ico +0 -0
  57. /package/framework/{v0.3.1 → v0.3.2}/core/asset/plugin/README.md +0 -0
  58. /package/framework/{v0.3.1 → v0.3.2}/core/asset/plugin/dist/vendor/gina/beemaster/beemaster.css +0 -0
  59. /package/framework/{v0.3.1 → v0.3.2}/core/asset/plugin/dist/vendor/gina/beemaster/beemaster.js +0 -0
  60. /package/framework/{v0.3.1 → v0.3.2}/core/asset/plugin/dist/vendor/gina/beemaster/index.html +0 -0
  61. /package/framework/{v0.3.1 → v0.3.2}/core/asset/plugin/dist/vendor/gina/css/gina.min.css +0 -0
  62. /package/framework/{v0.3.1 → v0.3.2}/core/asset/plugin/dist/vendor/gina/css/gina.min.css.br +0 -0
  63. /package/framework/{v0.3.1 → v0.3.2}/core/asset/plugin/dist/vendor/gina/css/gina.min.css.gz +0 -0
  64. /package/framework/{v0.3.1 → v0.3.2}/core/asset/plugin/dist/vendor/gina/html/statusbar.html +0 -0
  65. /package/framework/{v0.3.1 → v0.3.2}/core/asset/plugin/dist/vendor/gina/html/statusbar.html.br +0 -0
  66. /package/framework/{v0.3.1 → v0.3.2}/core/asset/plugin/dist/vendor/gina/html/statusbar.html.gz +0 -0
  67. /package/framework/{v0.3.1 → v0.3.2}/core/asset/plugin/dist/vendor/gina/html/toolbar.html +0 -0
  68. /package/framework/{v0.3.1 → v0.3.2}/core/asset/plugin/dist/vendor/gina/html/toolbar.html.br +0 -0
  69. /package/framework/{v0.3.1 → v0.3.2}/core/asset/plugin/dist/vendor/gina/html/toolbar.html.gz +0 -0
  70. /package/framework/{v0.3.1 → v0.3.2}/core/asset/plugin/dist/vendor/gina/inspector/logo.svg +0 -0
  71. /package/framework/{v0.3.1 → v0.3.2}/core/asset/plugin/dist/vendor/gina/js/gina.js +0 -0
  72. /package/framework/{v0.3.1 → v0.3.2}/core/config.js +0 -0
  73. /package/framework/{v0.3.1 → v0.3.2}/core/connectors/ai/index.js +0 -0
  74. /package/framework/{v0.3.1 → v0.3.2}/core/connectors/ai/lib/connector.js +0 -0
  75. /package/framework/{v0.3.1 → v0.3.2}/core/connectors/couchbase/lib/connector.js +0 -0
  76. /package/framework/{v0.3.1 → v0.3.2}/core/connectors/couchbase/lib/connector.v2.js +0 -0
  77. /package/framework/{v0.3.1 → v0.3.2}/core/connectors/couchbase/lib/connector.v3.js +0 -0
  78. /package/framework/{v0.3.1 → v0.3.2}/core/connectors/couchbase/lib/connector.v4.js +0 -0
  79. /package/framework/{v0.3.1 → v0.3.2}/core/connectors/couchbase/lib/n1ql.js +0 -0
  80. /package/framework/{v0.3.1 → v0.3.2}/core/connectors/couchbase/lib/session-store.js +0 -0
  81. /package/framework/{v0.3.1 → v0.3.2}/core/connectors/couchbase/lib/session-store.v2.js +0 -0
  82. /package/framework/{v0.3.1 → v0.3.2}/core/connectors/couchbase/lib/session-store.v3.js +0 -0
  83. /package/framework/{v0.3.1 → v0.3.2}/core/connectors/couchbase/lib/session-store.v4.js +0 -0
  84. /package/framework/{v0.3.1 → v0.3.2}/core/connectors/mysql/index.js +0 -0
  85. /package/framework/{v0.3.1 → v0.3.2}/core/connectors/mysql/lib/connector.js +0 -0
  86. /package/framework/{v0.3.1 → v0.3.2}/core/connectors/postgresql/index.js +0 -0
  87. /package/framework/{v0.3.1 → v0.3.2}/core/connectors/postgresql/lib/connector.js +0 -0
  88. /package/framework/{v0.3.1 → v0.3.2}/core/connectors/redis/index.js +0 -0
  89. /package/framework/{v0.3.1 → v0.3.2}/core/connectors/redis/lib/session-store.js +0 -0
  90. /package/framework/{v0.3.1 → v0.3.2}/core/connectors/sql-parser.js +0 -0
  91. /package/framework/{v0.3.1 → v0.3.2}/core/connectors/sqlite/index.js +0 -0
  92. /package/framework/{v0.3.1 → v0.3.2}/core/connectors/sqlite/lib/connector.js +0 -0
  93. /package/framework/{v0.3.1 → v0.3.2}/core/connectors/sqlite/lib/session-store.js +0 -0
  94. /package/framework/{v0.3.1 → v0.3.2}/core/content.encoding +0 -0
  95. /package/framework/{v0.3.1 → v0.3.2}/core/controller/controller.framework.js +0 -0
  96. /package/framework/{v0.3.1 → v0.3.2}/core/controller/controller.render-stream.js +0 -0
  97. /package/framework/{v0.3.1 → v0.3.2}/core/controller/controller.render-swig.js +0 -0
  98. /package/framework/{v0.3.1 → v0.3.2}/core/controller/controller.render-v1.js +0 -0
  99. /package/framework/{v0.3.1 → v0.3.2}/core/controller/index.js +0 -0
  100. /package/framework/{v0.3.1 → v0.3.2}/core/deps/busboy-1.6.0/LICENSE +0 -0
  101. /package/framework/{v0.3.1 → v0.3.2}/core/deps/busboy-1.6.0/README.md +0 -0
  102. /package/framework/{v0.3.1 → v0.3.2}/core/deps/busboy-1.6.0/lib/index.js +0 -0
  103. /package/framework/{v0.3.1 → v0.3.2}/core/deps/busboy-1.6.0/lib/types/multipart.js +0 -0
  104. /package/framework/{v0.3.1 → v0.3.2}/core/deps/busboy-1.6.0/lib/types/urlencoded.js +0 -0
  105. /package/framework/{v0.3.1 → v0.3.2}/core/deps/busboy-1.6.0/lib/utils.js +0 -0
  106. /package/framework/{v0.3.1 → v0.3.2}/core/deps/busboy-1.6.0/package.json +0 -0
  107. /package/framework/{v0.3.1 → v0.3.2}/core/deps/optimist-0.6.1/LICENSE +0 -0
  108. /package/framework/{v0.3.1 → v0.3.2}/core/deps/optimist-0.6.1/index.js +0 -0
  109. /package/framework/{v0.3.1 → v0.3.2}/core/deps/optimist-0.6.1/package.json +0 -0
  110. /package/framework/{v0.3.1 → v0.3.2}/core/deps/optimist-0.6.1/readme.markdown +0 -0
  111. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/CONTRIBUTING.md +0 -0
  112. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/HISTORY.md +0 -0
  113. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/LICENSE +0 -0
  114. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/Makefile +0 -0
  115. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/README.md +0 -0
  116. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/bin/swig.js +0 -0
  117. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/browser/comments.js +0 -0
  118. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/browser/index.js +0 -0
  119. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/docs/docs/api.html +0 -0
  120. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/docs/docs/browser.html +0 -0
  121. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/docs/docs/cli.html +0 -0
  122. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/docs/docs/extending.html +0 -0
  123. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/docs/docs/filters.html +0 -0
  124. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/docs/docs/includes/TYPES.html +0 -0
  125. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/docs/docs/includes/macros.html +0 -0
  126. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/docs/docs/index.html +0 -0
  127. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/docs/docs/layout.html +0 -0
  128. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/docs/docs/loaders.html +0 -0
  129. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/docs/docs/previous.html +0 -0
  130. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/docs/docs/tags.html +0 -0
  131. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/docs/docs.json +0 -0
  132. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/docs/index.html +0 -0
  133. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/docs/index.json +0 -0
  134. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/docs/js/lib/rainbow.min.js +0 -0
  135. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/docs/js/master.js +0 -0
  136. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/docs/layouts/html5.html +0 -0
  137. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/docs/layouts/master.html +0 -0
  138. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/docs/less/button.less +0 -0
  139. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/docs/less/fork.less +0 -0
  140. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/docs/less/header.less +0 -0
  141. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/docs/less/layout.less +0 -0
  142. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/docs/less/mixins.less +0 -0
  143. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/docs/less/rainbow.less +0 -0
  144. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/docs/less/reset.less +0 -0
  145. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/docs/less/sidenav.less +0 -0
  146. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/docs/less/swig.less +0 -0
  147. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/docs/less/variables.less +0 -0
  148. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/index.js +0 -0
  149. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/lib/dateformatter.js +0 -0
  150. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/lib/filters.js +0 -0
  151. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/lib/lexer.js +0 -0
  152. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/lib/loaders/filesystem.js +0 -0
  153. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/lib/loaders/index.js +0 -0
  154. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/lib/loaders/memory.js +0 -0
  155. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/lib/parser.js +0 -0
  156. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/lib/swig.js +0 -0
  157. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/lib/tags/autoescape.js +0 -0
  158. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/lib/tags/block.js +0 -0
  159. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/lib/tags/else.js +0 -0
  160. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/lib/tags/elseif.js +0 -0
  161. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/lib/tags/extends.js +0 -0
  162. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/lib/tags/filter.js +0 -0
  163. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/lib/tags/for.js +0 -0
  164. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/lib/tags/if.js +0 -0
  165. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/lib/tags/import.js +0 -0
  166. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/lib/tags/include.js +0 -0
  167. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/lib/tags/index.js +0 -0
  168. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/lib/tags/macro.js +0 -0
  169. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/lib/tags/parent.js +0 -0
  170. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/lib/tags/raw.js +0 -0
  171. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/lib/tags/set.js +0 -0
  172. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/lib/tags/spaceless.js +0 -0
  173. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/lib/utils.js +0 -0
  174. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/package.json +0 -0
  175. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/scripts/config-lint.js +0 -0
  176. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/scripts/githooks/post-merge +0 -0
  177. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/scripts/githooks/pre-commit +0 -0
  178. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/tests/basic.test.js +0 -0
  179. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/tests/bin/bin.filters.js +0 -0
  180. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/tests/bin/bin.locals.js +0 -0
  181. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/tests/bin/bin.locals.json +0 -0
  182. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/tests/bin/bin.tags.js +0 -0
  183. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/tests/bin/bin.test.js +0 -0
  184. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/tests/bin/custom_filter.bin.html +0 -0
  185. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/tests/bin/custom_tag.bin.html +0 -0
  186. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/tests/bin/custom_tagControls.bin.html +0 -0
  187. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/tests/bin/custom_varControls.bin.html +0 -0
  188. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/tests/bin/options.js +0 -0
  189. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/tests/cases/extends_1.expectation.html +0 -0
  190. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/tests/cases/extends_1.test.html +0 -0
  191. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/tests/cases/extends_2.expectation.html +0 -0
  192. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/tests/cases/extends_2.test.html +0 -0
  193. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/tests/cases/extends_base.html +0 -0
  194. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/tests/cases/extends_layouts/extends_4.base.html +0 -0
  195. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/tests/cases/extends_layouts/extends_4.middle.html +0 -0
  196. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/tests/cases/extends_layouts/extends_bare.html +0 -0
  197. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/tests/cases/extends_layouts/extends_base.html +0 -0
  198. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/tests/cases/extends_layouts/extends_include.html +0 -0
  199. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/tests/cases/extends_layouts/extends_real_base.html +0 -0
  200. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/tests/cases/extends_set.expectation.html +0 -0
  201. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/tests/cases/extends_set.test.html +0 -0
  202. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/tests/cases/extends_tests/extends_3.expectation.html +0 -0
  203. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/tests/cases/extends_tests/extends_3.test.html +0 -0
  204. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/tests/cases/extends_tests/extends_4.expectation.html +0 -0
  205. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/tests/cases/extends_tests/extends_4.test.html +0 -0
  206. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/tests/cases/import.expectation.html +0 -0
  207. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/tests/cases/import.test.html +0 -0
  208. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/tests/cases/include.expectation.html +0 -0
  209. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/tests/cases/include.test.html +0 -0
  210. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/tests/cases/include_bar.html +0 -0
  211. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/tests/cases/include_extends.expectation.html +0 -0
  212. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/tests/cases/include_extends.test.html +0 -0
  213. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/tests/cases/includes.html +0 -0
  214. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/tests/cases/macros.expectation.html +0 -0
  215. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/tests/cases/macros.html +0 -0
  216. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/tests/cases/macros.test.html +0 -0
  217. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/tests/cases/nested_blocks.expectation.html +0 -0
  218. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/tests/cases/nested_blocks.test.html +0 -0
  219. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/tests/cases/nested_blocks_parent.html +0 -0
  220. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/tests/cases/parent-parent.expectation.html +0 -0
  221. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/tests/cases/parent-parent.test.html +0 -0
  222. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/tests/cases/parent.expectation.html +0 -0
  223. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/tests/cases/parent.test.html +0 -0
  224. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/tests/cases/set.expectation.html +0 -0
  225. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/tests/cases/set.test.html +0 -0
  226. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/tests/cases-error/circular.test.html +0 -0
  227. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/tests/cases-error/circular_parent.html +0 -0
  228. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/tests/cases-error/extends-non-existent.test.html +0 -0
  229. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/tests/cases-error/report-filename-partial.html +0 -0
  230. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/tests/cases-error/report-filename.test.html +0 -0
  231. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/tests/comments.test.js +0 -0
  232. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/tests/filters.test.js +0 -0
  233. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/tests/loaders.test.js +0 -0
  234. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/tests/regressions.test.js +0 -0
  235. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/tests/tags/autoescape.test.js +0 -0
  236. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/tests/tags/else.test.js +0 -0
  237. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/tests/tags/extend.test.js +0 -0
  238. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/tests/tags/filter.test.js +0 -0
  239. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/tests/tags/for.test.js +0 -0
  240. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/tests/tags/if.test.js +0 -0
  241. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/tests/tags/import.test.js +0 -0
  242. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/tests/tags/include.test.js +0 -0
  243. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/tests/tags/macro.test.js +0 -0
  244. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/tests/tags/parent.test.js +0 -0
  245. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/tests/tags/raw.test.js +0 -0
  246. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/tests/tags/set.test.js +0 -0
  247. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/tests/tags/spaceless.test.js +0 -0
  248. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/tests/tags.test.js +0 -0
  249. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/tests/templates.test.js +0 -0
  250. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/tests/variables.test.js +0 -0
  251. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-1.4.2/tests/whitespace.test.js +0 -0
  252. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-client/swig-2.0.0.min.js +0 -0
  253. /package/framework/{v0.3.1 → v0.3.2}/core/deps/swig-client/swig.js +0 -0
  254. /package/framework/{v0.3.1 → v0.3.2}/core/dev/index.js +0 -0
  255. /package/framework/{v0.3.1 → v0.3.2}/core/dev/lib/class.js +0 -0
  256. /package/framework/{v0.3.1 → v0.3.2}/core/dev/lib/factory.js +0 -0
  257. /package/framework/{v0.3.1 → v0.3.2}/core/dev/lib/tools.js +0 -0
  258. /package/framework/{v0.3.1 → v0.3.2}/core/locales/README.md +0 -0
  259. /package/framework/{v0.3.1 → v0.3.2}/core/locales/currency.json +0 -0
  260. /package/framework/{v0.3.1 → v0.3.2}/core/locales/dist/language/en.json +0 -0
  261. /package/framework/{v0.3.1 → v0.3.2}/core/locales/dist/language/fr.json +0 -0
  262. /package/framework/{v0.3.1 → v0.3.2}/core/locales/dist/region/en.json +0 -0
  263. /package/framework/{v0.3.1 → v0.3.2}/core/locales/dist/region/fr.json +0 -0
  264. /package/framework/{v0.3.1 → v0.3.2}/core/locales/index.js +0 -0
  265. /package/framework/{v0.3.1 → v0.3.2}/core/mime.types +0 -0
  266. /package/framework/{v0.3.1 → v0.3.2}/core/model/entity.js +0 -0
  267. /package/framework/{v0.3.1 → v0.3.2}/core/model/index.js +0 -0
  268. /package/framework/{v0.3.1 → v0.3.2}/core/model/template/entityFactory.js +0 -0
  269. /package/framework/{v0.3.1 → v0.3.2}/core/model/template/index.js +0 -0
  270. /package/framework/{v0.3.1 → v0.3.2}/core/plugins/README.md +0 -0
  271. /package/framework/{v0.3.1 → v0.3.2}/core/plugins/index.js +0 -0
  272. /package/framework/{v0.3.1 → v0.3.2}/core/plugins/lib/file/README.md +0 -0
  273. /package/framework/{v0.3.1 → v0.3.2}/core/plugins/lib/file/build.json +0 -0
  274. /package/framework/{v0.3.1 → v0.3.2}/core/plugins/lib/file/package.json +0 -0
  275. /package/framework/{v0.3.1 → v0.3.2}/core/plugins/lib/intl/README.md +0 -0
  276. /package/framework/{v0.3.1 → v0.3.2}/core/plugins/lib/intl/build.json +0 -0
  277. /package/framework/{v0.3.1 → v0.3.2}/core/plugins/lib/intl/package.json +0 -0
  278. /package/framework/{v0.3.1 → v0.3.2}/core/plugins/lib/intl/src/main.js +0 -0
  279. /package/framework/{v0.3.1 → v0.3.2}/core/plugins/lib/storage/README.md +0 -0
  280. /package/framework/{v0.3.1 → v0.3.2}/core/plugins/lib/storage/build.json +0 -0
  281. /package/framework/{v0.3.1 → v0.3.2}/core/plugins/lib/storage/package.json +0 -0
  282. /package/framework/{v0.3.1 → v0.3.2}/core/plugins/lib/storage/src/main.js +0 -0
  283. /package/framework/{v0.3.1 → v0.3.2}/core/plugins/lib/validator/README.md +0 -0
  284. /package/framework/{v0.3.1 → v0.3.2}/core/plugins/lib/validator/build.json +0 -0
  285. /package/framework/{v0.3.1 → v0.3.2}/core/plugins/lib/validator/package.json +0 -0
  286. /package/framework/{v0.3.1 → v0.3.2}/core/plugins/lib/validator/src/form-validator.js +0 -0
  287. /package/framework/{v0.3.1 → v0.3.2}/core/plugins/lib/validator/src/main.js +0 -0
  288. /package/framework/{v0.3.1 → v0.3.2}/core/router.js +0 -0
  289. /package/framework/{v0.3.1 → v0.3.2}/core/server.express.js +0 -0
  290. /package/framework/{v0.3.1 → v0.3.2}/core/status.codes +0 -0
  291. /package/framework/{v0.3.1 → v0.3.2}/core/template/_gitignore +0 -0
  292. /package/framework/{v0.3.1 → v0.3.2}/core/template/boilerplate/bundle/config/app.json +0 -0
  293. /package/framework/{v0.3.1 → v0.3.2}/core/template/boilerplate/bundle/config/connectors.json +0 -0
  294. /package/framework/{v0.3.1 → v0.3.2}/core/template/boilerplate/bundle/config/routing.json +0 -0
  295. /package/framework/{v0.3.1 → v0.3.2}/core/template/boilerplate/bundle/config/settings.json +0 -0
  296. /package/framework/{v0.3.1 → v0.3.2}/core/template/boilerplate/bundle/config/settings.server.json +0 -0
  297. /package/framework/{v0.3.1 → v0.3.2}/core/template/boilerplate/bundle/config/templates.json +0 -0
  298. /package/framework/{v0.3.1 → v0.3.2}/core/template/boilerplate/bundle/config/watchers.json +0 -0
  299. /package/framework/{v0.3.1 → v0.3.2}/core/template/boilerplate/bundle/controllers/controller.content.js +0 -0
  300. /package/framework/{v0.3.1 → v0.3.2}/core/template/boilerplate/bundle/controllers/controller.js +0 -0
  301. /package/framework/{v0.3.1 → v0.3.2}/core/template/boilerplate/bundle/controllers/setup.js +0 -0
  302. /package/framework/{v0.3.1 → v0.3.2}/core/template/boilerplate/bundle/index.js +0 -0
  303. /package/framework/{v0.3.1 → v0.3.2}/core/template/boilerplate/bundle_namespace/controllers/controller.js +0 -0
  304. /package/framework/{v0.3.1 → v0.3.2}/core/template/boilerplate/bundle_public/css/default.css +0 -0
  305. /package/framework/{v0.3.1 → v0.3.2}/core/template/boilerplate/bundle_public/css/home.css +0 -0
  306. /package/framework/{v0.3.1 → v0.3.2}/core/template/boilerplate/bundle_public/css/vendor/readme.md +0 -0
  307. /package/framework/{v0.3.1 → v0.3.2}/core/template/boilerplate/bundle_public/favicon.ico +0 -0
  308. /package/framework/{v0.3.1 → v0.3.2}/core/template/boilerplate/bundle_public/js/vendor/readme.md +0 -0
  309. /package/framework/{v0.3.1 → v0.3.2}/core/template/boilerplate/bundle_public/readme.md +0 -0
  310. /package/framework/{v0.3.1 → v0.3.2}/core/template/boilerplate/bundle_templates/handlers/main.js +0 -0
  311. /package/framework/{v0.3.1 → v0.3.2}/core/template/boilerplate/bundle_templates/html/content/homepage.html +0 -0
  312. /package/framework/{v0.3.1 → v0.3.2}/core/template/boilerplate/bundle_templates/html/includes/error-msg-noscript.html +0 -0
  313. /package/framework/{v0.3.1 → v0.3.2}/core/template/boilerplate/bundle_templates/html/includes/error-msg-outdated-browser.html +0 -0
  314. /package/framework/{v0.3.1 → v0.3.2}/core/template/boilerplate/bundle_templates/html/layouts/main.html +0 -0
  315. /package/framework/{v0.3.1 → v0.3.2}/core/template/command/gina.bat.tpl +0 -0
  316. /package/framework/{v0.3.1 → v0.3.2}/core/template/command/gina.tpl +0 -0
  317. /package/framework/{v0.3.1 → v0.3.2}/core/template/conf/env.json +0 -0
  318. /package/framework/{v0.3.1 → v0.3.2}/core/template/conf/manifest.json +0 -0
  319. /package/framework/{v0.3.1 → v0.3.2}/core/template/conf/package.json +0 -0
  320. /package/framework/{v0.3.1 → v0.3.2}/core/template/conf/settings.json +0 -0
  321. /package/framework/{v0.3.1 → v0.3.2}/core/template/conf/statics.json +0 -0
  322. /package/framework/{v0.3.1 → v0.3.2}/core/template/conf/templates.json +0 -0
  323. /package/framework/{v0.3.1 → v0.3.2}/core/template/error/client/json/401.json +0 -0
  324. /package/framework/{v0.3.1 → v0.3.2}/core/template/error/client/json/403.json +0 -0
  325. /package/framework/{v0.3.1 → v0.3.2}/core/template/error/client/json/404.json +0 -0
  326. /package/framework/{v0.3.1 → v0.3.2}/core/template/error/server/html/50x.html +0 -0
  327. /package/framework/{v0.3.1 → v0.3.2}/core/template/error/server/json/500.json +0 -0
  328. /package/framework/{v0.3.1 → v0.3.2}/core/template/error/server/json/503.json +0 -0
  329. /package/framework/{v0.3.1 → v0.3.2}/core/template/extensions/logger/config.json +0 -0
  330. /package/framework/{v0.3.1 → v0.3.2}/helpers/console.js +0 -0
  331. /package/framework/{v0.3.1 → v0.3.2}/helpers/data/LICENSE +0 -0
  332. /package/framework/{v0.3.1 → v0.3.2}/helpers/data/README.md +0 -0
  333. /package/framework/{v0.3.1 → v0.3.2}/helpers/data/package.json +0 -0
  334. /package/framework/{v0.3.1 → v0.3.2}/helpers/data/src/main.js +0 -0
  335. /package/framework/{v0.3.1 → v0.3.2}/helpers/dateFormat.js +0 -0
  336. /package/framework/{v0.3.1 → v0.3.2}/helpers/index.js +0 -0
  337. /package/framework/{v0.3.1 → v0.3.2}/helpers/json/LICENSE +0 -0
  338. /package/framework/{v0.3.1 → v0.3.2}/helpers/json/README.md +0 -0
  339. /package/framework/{v0.3.1 → v0.3.2}/helpers/json/package.json +0 -0
  340. /package/framework/{v0.3.1 → v0.3.2}/helpers/json/src/main.js +0 -0
  341. /package/framework/{v0.3.1 → v0.3.2}/helpers/path.js +0 -0
  342. /package/framework/{v0.3.1 → v0.3.2}/helpers/plugins/README.md +0 -0
  343. /package/framework/{v0.3.1 → v0.3.2}/helpers/plugins/package.json +0 -0
  344. /package/framework/{v0.3.1 → v0.3.2}/helpers/plugins/src/api-error.js +0 -0
  345. /package/framework/{v0.3.1 → v0.3.2}/helpers/plugins/src/main.js +0 -0
  346. /package/framework/{v0.3.1 → v0.3.2}/helpers/prototypes.js +0 -0
  347. /package/framework/{v0.3.1 → v0.3.2}/helpers/task.js +0 -0
  348. /package/framework/{v0.3.1 → v0.3.2}/helpers/text.js +0 -0
  349. /package/framework/{v0.3.1 → v0.3.2}/lib/archiver/README.md +0 -0
  350. /package/framework/{v0.3.1 → v0.3.2}/lib/archiver/build.json +0 -0
  351. /package/framework/{v0.3.1 → v0.3.2}/lib/archiver/package.json +0 -0
  352. /package/framework/{v0.3.1 → v0.3.2}/lib/archiver/src/dep/jszip.min.js +0 -0
  353. /package/framework/{v0.3.1 → v0.3.2}/lib/archiver/src/main.js +0 -0
  354. /package/framework/{v0.3.1 → v0.3.2}/lib/async/package.json +0 -0
  355. /package/framework/{v0.3.1 → v0.3.2}/lib/async/src/main.js +0 -0
  356. /package/framework/{v0.3.1 → v0.3.2}/lib/cache/README.md +0 -0
  357. /package/framework/{v0.3.1 → v0.3.2}/lib/cache/build.json +0 -0
  358. /package/framework/{v0.3.1 → v0.3.2}/lib/cache/package.json +0 -0
  359. /package/framework/{v0.3.1 → v0.3.2}/lib/cache/src/main.js +0 -0
  360. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/aliases.json +0 -0
  361. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/bundle/arguments.json +0 -0
  362. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/bundle/build.js +0 -0
  363. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/bundle/copy.js +0 -0
  364. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/bundle/cp.js +0 -0
  365. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/bundle/help.js +0 -0
  366. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/bundle/help.txt +0 -0
  367. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/bundle/list.js +0 -0
  368. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/bundle/remove.js +0 -0
  369. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/bundle/rename.js +0 -0
  370. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/bundle/restart.js +0 -0
  371. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/bundle/rm.js +0 -0
  372. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/bundle/status.js +0 -0
  373. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/bundle/stop.js +0 -0
  374. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/cache/stats.js +0 -0
  375. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/env/add.js +0 -0
  376. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/env/get.js +0 -0
  377. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/env/help.js +0 -0
  378. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/env/help.txt +0 -0
  379. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/env/link-dev.js +0 -0
  380. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/env/list.js +0 -0
  381. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/env/remove.js +0 -0
  382. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/env/rm.js +0 -0
  383. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/env/set.js +0 -0
  384. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/env/unset.js +0 -0
  385. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/env/use.js +0 -0
  386. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/framework/arguments.json +0 -0
  387. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/framework/build.js +0 -0
  388. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/framework/dot.js +0 -0
  389. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/framework/get.js +0 -0
  390. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/framework/help.js +0 -0
  391. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/framework/help.txt +0 -0
  392. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/framework/init.js +0 -0
  393. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/framework/link-node-modules.js +0 -0
  394. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/framework/link.js +0 -0
  395. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/framework/msg.json +0 -0
  396. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/framework/open.js +0 -0
  397. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/framework/set.js +0 -0
  398. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/framework/start.js +0 -0
  399. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/framework/status.js +0 -0
  400. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/framework/stop.js +0 -0
  401. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/framework/tail.js +0 -0
  402. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/framework/update.js +0 -0
  403. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/framework/version.js +0 -0
  404. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/gina-dev.1.md +0 -0
  405. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/gina-framework.1.md +0 -0
  406. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/gina.1.md +0 -0
  407. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/helper.js +0 -0
  408. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/index.js +0 -0
  409. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/minion/help.js +0 -0
  410. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/minion/help.txt +0 -0
  411. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/msg.json +0 -0
  412. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/port/help.js +0 -0
  413. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/port/help.txt +0 -0
  414. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/port/inc/scan.js +0 -0
  415. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/port/list.js +0 -0
  416. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/port/reset.js +0 -0
  417. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/port/set.js +0 -0
  418. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/project/add.js +0 -0
  419. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/project/arguments.json +0 -0
  420. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/project/build.js +0 -0
  421. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/project/help.js +0 -0
  422. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/project/help.txt +0 -0
  423. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/project/import.js +0 -0
  424. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/project/list.js +0 -0
  425. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/project/move.js +0 -0
  426. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/project/remove.js +0 -0
  427. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/project/rename.js +0 -0
  428. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/project/restart.js +0 -0
  429. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/project/rm.js +0 -0
  430. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/project/start.js +0 -0
  431. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/project/status.js +0 -0
  432. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/project/stop.js +0 -0
  433. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/protocol/help.js +0 -0
  434. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/protocol/help.txt +0 -0
  435. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/protocol/list.js +0 -0
  436. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/protocol/set.js +0 -0
  437. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/scope/add.js +0 -0
  438. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/scope/help.js +0 -0
  439. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/scope/help.txt +0 -0
  440. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/scope/link-local.js +0 -0
  441. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/scope/link-production.js +0 -0
  442. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/scope/list.js +0 -0
  443. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/scope/remove.js +0 -0
  444. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/scope/rm.js +0 -0
  445. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/scope/use.js +0 -0
  446. /package/framework/{v0.3.1 → v0.3.2}/lib/cmd/view/add.js +0 -0
  447. /package/framework/{v0.3.1 → v0.3.2}/lib/collection/README.md +0 -0
  448. /package/framework/{v0.3.1 → v0.3.2}/lib/collection/build.json +0 -0
  449. /package/framework/{v0.3.1 → v0.3.2}/lib/collection/package.json +0 -0
  450. /package/framework/{v0.3.1 → v0.3.2}/lib/collection/src/main.js +0 -0
  451. /package/framework/{v0.3.1 → v0.3.2}/lib/config.js +0 -0
  452. /package/framework/{v0.3.1 → v0.3.2}/lib/cron/README.md +0 -0
  453. /package/framework/{v0.3.1 → v0.3.2}/lib/cron/package.json +0 -0
  454. /package/framework/{v0.3.1 → v0.3.2}/lib/cron/src/main.js +0 -0
  455. /package/framework/{v0.3.1 → v0.3.2}/lib/domain/LICENSE +0 -0
  456. /package/framework/{v0.3.1 → v0.3.2}/lib/domain/README.md +0 -0
  457. /package/framework/{v0.3.1 → v0.3.2}/lib/domain/dist/2025-03-14_13-41-20_UTC.dat +0 -0
  458. /package/framework/{v0.3.1 → v0.3.2}/lib/domain/dist/public_suffix_list.dat +0 -0
  459. /package/framework/{v0.3.1 → v0.3.2}/lib/domain/dist/public_suffix_list.dat.br +0 -0
  460. /package/framework/{v0.3.1 → v0.3.2}/lib/domain/dist/public_suffix_list.dat.gz +0 -0
  461. /package/framework/{v0.3.1 → v0.3.2}/lib/domain/package.json +0 -0
  462. /package/framework/{v0.3.1 → v0.3.2}/lib/domain/src/main.js +0 -0
  463. /package/framework/{v0.3.1 → v0.3.2}/lib/generator/index.js +0 -0
  464. /package/framework/{v0.3.1 → v0.3.2}/lib/inherits/LICENSE +0 -0
  465. /package/framework/{v0.3.1 → v0.3.2}/lib/inherits/README.md +0 -0
  466. /package/framework/{v0.3.1 → v0.3.2}/lib/inherits/package.json +0 -0
  467. /package/framework/{v0.3.1 → v0.3.2}/lib/inherits/src/main.js +0 -0
  468. /package/framework/{v0.3.1 → v0.3.2}/lib/logger/README.md +0 -0
  469. /package/framework/{v0.3.1 → v0.3.2}/lib/logger/package.json +0 -0
  470. /package/framework/{v0.3.1 → v0.3.2}/lib/logger/src/containers/default/index.js +0 -0
  471. /package/framework/{v0.3.1 → v0.3.2}/lib/logger/src/containers/file/index.js +0 -0
  472. /package/framework/{v0.3.1 → v0.3.2}/lib/logger/src/containers/file/lib/logrotator/README.md +0 -0
  473. /package/framework/{v0.3.1 → v0.3.2}/lib/logger/src/containers/file/lib/logrotator/index.js +0 -0
  474. /package/framework/{v0.3.1 → v0.3.2}/lib/logger/src/containers/mq/index.js +0 -0
  475. /package/framework/{v0.3.1 → v0.3.2}/lib/logger/src/containers/mq/listener.js +0 -0
  476. /package/framework/{v0.3.1 → v0.3.2}/lib/logger/src/containers/mq/speaker.js +0 -0
  477. /package/framework/{v0.3.1 → v0.3.2}/lib/logger/src/helper.js +0 -0
  478. /package/framework/{v0.3.1 → v0.3.2}/lib/logger/src/main.js +0 -0
  479. /package/framework/{v0.3.1 → v0.3.2}/lib/math/index.js +0 -0
  480. /package/framework/{v0.3.1 → v0.3.2}/lib/merge/README.md +0 -0
  481. /package/framework/{v0.3.1 → v0.3.2}/lib/merge/package.json +0 -0
  482. /package/framework/{v0.3.1 → v0.3.2}/lib/merge/src/main.js +0 -0
  483. /package/framework/{v0.3.1 → v0.3.2}/lib/proc.js +0 -0
  484. /package/framework/{v0.3.1 → v0.3.2}/lib/routing/README.md +0 -0
  485. /package/framework/{v0.3.1 → v0.3.2}/lib/routing/build.json +0 -0
  486. /package/framework/{v0.3.1 → v0.3.2}/lib/routing/package.json +0 -0
  487. /package/framework/{v0.3.1 → v0.3.2}/lib/routing/src/main.js +0 -0
  488. /package/framework/{v0.3.1 → v0.3.2}/lib/routing/src/radix.js +0 -0
  489. /package/framework/{v0.3.1 → v0.3.2}/lib/session-store.js +0 -0
  490. /package/framework/{v0.3.1 → v0.3.2}/lib/shell.js +0 -0
  491. /package/framework/{v0.3.1 → v0.3.2}/lib/state.js +0 -0
  492. /package/framework/{v0.3.1 → v0.3.2}/lib/swig-filters/README.md +0 -0
  493. /package/framework/{v0.3.1 → v0.3.2}/lib/swig-filters/package.json +0 -0
  494. /package/framework/{v0.3.1 → v0.3.2}/lib/swig-filters/src/main.js +0 -0
  495. /package/framework/{v0.3.1 → v0.3.2}/lib/url/README.md +0 -0
  496. /package/framework/{v0.3.1 → v0.3.2}/lib/url/index.js +0 -0
  497. /package/framework/{v0.3.1 → v0.3.2}/lib/url/routing.json +0 -0
  498. /package/framework/{v0.3.1 → v0.3.2}/lib/validator.js +0 -0
  499. /package/framework/{v0.3.1 → v0.3.2}/lib/watcher/package.json +0 -0
  500. /package/framework/{v0.3.1 → v0.3.2}/lib/watcher/src/main.js +0 -0
  501. /package/framework/{v0.3.1 → v0.3.2}/package.json +0 -0
@@ -0,0 +1,48 @@
1
+ var fs = require('fs');
2
+
3
+ var CmdHelper = require('./../helper');
4
+ var console = lib.logger;
5
+
6
+ /**
7
+ * @module gina/lib/cmd/inspector/help
8
+ */
9
+ /**
10
+ * Displays the inspector command group help text.
11
+ *
12
+ * Usage:
13
+ * gina inspector:help
14
+ *
15
+ * @class Help
16
+ * @constructor
17
+ * @param {object} opt - Parsed command-line options
18
+ * @param {object} opt.client - Socket client for terminal output
19
+ * @param {string[]} opt.argv - Full argv array
20
+ * @param {number} [opt.debugPort] - Node.js inspector port
21
+ * @param {boolean} [opt.debugBrkEnabled] - True when --inspect-brk is active
22
+ * @param {object} cmd - The cmd dispatcher object (lib/cmd/index.js)
23
+ */
24
+ function Help(opt, cmd) {
25
+ var self = {};
26
+
27
+ /**
28
+ * Loads CMD helpers and prints the inspector group help text, then exits.
29
+ *
30
+ * @inner
31
+ * @private
32
+ */
33
+ var init = function() {
34
+
35
+ // import CMD helpers
36
+ new CmdHelper(self, opt.client, { port: opt.debugPort, brkEnabled: opt.debugBrkEnabled });
37
+
38
+ // check CMD configuration
39
+ if ( !isCmdConfigured() ) return false;
40
+
41
+ getHelp();
42
+ process.exit(0);
43
+ }
44
+
45
+ init()
46
+ };
47
+
48
+ module.exports = Help
@@ -0,0 +1,28 @@
1
+
2
+ Usage: gina inspector:<action> [options]
3
+
4
+ Actions:
5
+
6
+ open [bundle] [@project] Open the Inspector SPA in a chromeless browser window
7
+
8
+ Options:
9
+
10
+ --browser=<name> Override the default browser
11
+ Available: chrome, chromium, edge, brave,
12
+ vivaldi, opera, firefox, safari
13
+
14
+ --port=<number> Override the bundle port (skip config lookup)
15
+
16
+ Examples:
17
+
18
+ gina inspector:open Open for default bundle on port 3100
19
+ gina inspector:open demo @myproject Open for bundle "demo"
20
+ gina inspector:open --port=3200 Open for a specific port
21
+ gina inspector:open --browser=chrome Force Chrome (app mode)
22
+ gina inspector:open --browser=firefox Force Firefox (normal window)
23
+
24
+ App mode support (chromeless window — no address bar, no tabs):
25
+
26
+ Supported: chrome, chromium, edge, brave, vivaldi, opera
27
+ Not supported: firefox, safari (opens in a normal browser window)
28
+
@@ -0,0 +1,510 @@
1
+ var Open;
2
+ /**
3
+ * @module gina/lib/cmd/inspector/open
4
+ *
5
+ * Opens the dev-mode Inspector SPA in a chromeless browser window (app mode).
6
+ *
7
+ * Usage:
8
+ * gina inspector:open [<bundle>] [@<project>] [--browser=<name>] [--port=<port>]
9
+ *
10
+ * The command detects the default browser on macOS, Linux, and Windows.
11
+ * When available, it launches in app mode (chromeless window — no address
12
+ * bar, no tabs). Chromium-based browsers (Chrome, Edge, Brave, Vivaldi,
13
+ * Opera) all support `--app=<url>`. Firefox and Safari fall back to a
14
+ * normal browser window.
15
+ *
16
+ * `--browser=<name>` overrides the default browser. Accepted short names:
17
+ * chrome, chromium, edge, brave, vivaldi, opera, firefox, safari
18
+ *
19
+ * `--port=<port>` overrides the bundle port (skips project config lookup).
20
+ *
21
+ * When `--port` is used, `@<project>` is optional.
22
+ *
23
+ * @class Open
24
+ * @constructor
25
+ * @param {object} opt - Parsed command-line options
26
+ * @param {object} opt.client - Socket client for terminal output
27
+ * @param {string[]} opt.argv - Full argv array
28
+ * @param {number} [opt.debugPort] - Node.js inspector port
29
+ * @param {boolean} [opt.debugBrkEnabled] - True when --inspect-brk is active
30
+ * @param {object} cmd - The cmd dispatcher object (lib/cmd/index.js)
31
+ */
32
+
33
+ var fs = require('fs');
34
+ var child = require('child_process');
35
+ var os = require('os');
36
+ var CmdHelper = require('./../helper');
37
+ var console = lib.logger;
38
+
39
+ /**
40
+ * Browser registry — short names mapped to per-platform details.
41
+ * `appMode: true` means the browser supports `--app=<url>` for a chromeless window.
42
+ *
43
+ * @constant
44
+ * @type {Object<string, {name: string, appMode: boolean, darwin: object, linux: object, win32: object}>}
45
+ */
46
+ var BROWSERS = {
47
+ chrome: {
48
+ name : 'Google Chrome'
49
+ , appMode : true
50
+ , darwin : { app: 'Google Chrome' }
51
+ , linux : { bins: ['google-chrome-stable', 'google-chrome', 'chrome'] }
52
+ , win32 : { bins: ['chrome'], paths: [
53
+ '%ProgramFiles%\\Google\\Chrome\\Application\\chrome.exe'
54
+ , '%ProgramFiles(x86)%\\Google\\Chrome\\Application\\chrome.exe'
55
+ , '%LocalAppData%\\Google\\Chrome\\Application\\chrome.exe'
56
+ ]}
57
+ }
58
+ , chromium: {
59
+ name : 'Chromium'
60
+ , appMode : true
61
+ , darwin : { app: 'Chromium' }
62
+ , linux : { bins: ['chromium-browser', 'chromium'] }
63
+ , win32 : { bins: ['chromium'], paths: [] }
64
+ }
65
+ , edge: {
66
+ name : 'Microsoft Edge'
67
+ , appMode : true
68
+ , darwin : { app: 'Microsoft Edge' }
69
+ , linux : { bins: ['microsoft-edge-stable', 'microsoft-edge'] }
70
+ , win32 : { bins: ['msedge'], paths: [
71
+ '%ProgramFiles(x86)%\\Microsoft\\Edge\\Application\\msedge.exe'
72
+ , '%ProgramFiles%\\Microsoft\\Edge\\Application\\msedge.exe'
73
+ ]}
74
+ }
75
+ , brave: {
76
+ name : 'Brave'
77
+ , appMode : true
78
+ , darwin : { app: 'Brave Browser' }
79
+ , linux : { bins: ['brave-browser-stable', 'brave-browser'] }
80
+ , win32 : { bins: ['brave'], paths: [
81
+ '%ProgramFiles%\\BraveSoftware\\Brave-Browser\\Application\\brave.exe'
82
+ , '%LocalAppData%\\BraveSoftware\\Brave-Browser\\Application\\brave.exe'
83
+ ]}
84
+ }
85
+ , vivaldi: {
86
+ name : 'Vivaldi'
87
+ , appMode : true
88
+ , darwin : { app: 'Vivaldi' }
89
+ , linux : { bins: ['vivaldi-stable', 'vivaldi'] }
90
+ , win32 : { bins: ['vivaldi'], paths: [
91
+ '%LocalAppData%\\Vivaldi\\Application\\vivaldi.exe'
92
+ ]}
93
+ }
94
+ , opera: {
95
+ name : 'Opera'
96
+ , appMode : true
97
+ , darwin : { app: 'Opera' }
98
+ , linux : { bins: ['opera'] }
99
+ , win32 : { bins: ['opera'], paths: [
100
+ '%LocalAppData%\\Programs\\Opera\\launcher.exe'
101
+ ]}
102
+ }
103
+ , firefox: {
104
+ name : 'Firefox'
105
+ , appMode : false
106
+ , darwin : { app: 'Firefox' }
107
+ , linux : { bins: ['firefox'] }
108
+ , win32 : { bins: ['firefox'], paths: [
109
+ '%ProgramFiles%\\Mozilla Firefox\\firefox.exe'
110
+ ]}
111
+ }
112
+ , safari: {
113
+ name : 'Safari'
114
+ , appMode : false
115
+ , darwin : { app: 'Safari' }
116
+ , linux : null
117
+ , win32 : null
118
+ }
119
+ };
120
+
121
+ /**
122
+ * macOS bundle IDs → short name mapping for default browser detection.
123
+ * @constant
124
+ * @type {Object<string, string>}
125
+ */
126
+ var BUNDLE_ID_MAP = {
127
+ 'com.google.chrome' : 'chrome'
128
+ , 'org.chromium.chromium' : 'chromium'
129
+ , 'com.microsoft.edgemac' : 'edge'
130
+ , 'com.brave.browser' : 'brave'
131
+ , 'com.vivaldi.vivaldi' : 'vivaldi'
132
+ , 'com.operasoftware.opera' : 'opera'
133
+ , 'org.mozilla.firefox' : 'firefox'
134
+ , 'com.apple.safari' : 'safari'
135
+ };
136
+
137
+ /**
138
+ * Linux .desktop file prefixes → short name mapping.
139
+ * @constant
140
+ * @type {Object<string, string>}
141
+ */
142
+ var DESKTOP_MAP = {
143
+ 'google-chrome' : 'chrome'
144
+ , 'chromium' : 'chromium'
145
+ , 'microsoft-edge' : 'edge'
146
+ , 'brave-browser' : 'brave'
147
+ , 'vivaldi' : 'vivaldi'
148
+ , 'opera' : 'opera'
149
+ , 'firefox' : 'firefox'
150
+ };
151
+
152
+ /**
153
+ * Windows ProgId prefixes → short name mapping.
154
+ * @constant
155
+ * @type {Object<string, string>}
156
+ */
157
+ var PROGID_MAP = {
158
+ 'ChromeHTML' : 'chrome'
159
+ , 'ChromiumHTM' : 'chromium'
160
+ , 'MSEdgeHTM' : 'edge'
161
+ , 'BraveHTML' : 'brave'
162
+ , 'VivaldiHTM' : 'vivaldi'
163
+ , 'OperaStable' : 'opera'
164
+ , 'FirefoxURL' : 'firefox'
165
+ };
166
+
167
+
168
+ /**
169
+ * Detect the default browser on macOS by reading Launch Services plist.
170
+ * Falls back to `'safari'` (the OS default).
171
+ *
172
+ * @inner
173
+ * @returns {string} Browser short name
174
+ */
175
+ function detectDarwin() {
176
+ try {
177
+ var plistPath = process.env.HOME
178
+ + '/Library/Preferences/com.apple.LaunchServices/com.apple.launchservices.secure.plist';
179
+
180
+ if (!fs.existsSync(plistPath)) return 'safari';
181
+
182
+ var raw = child.execSync(
183
+ 'plutil -convert json -o - "' + plistPath + '"'
184
+ , { encoding: 'utf8', stdio: ['pipe', 'pipe', 'pipe'] }
185
+ );
186
+ var plist = JSON.parse(raw);
187
+ var handlers = plist.LSHandlers || [];
188
+ for (var i = 0; i < handlers.length; i++) {
189
+ var h = handlers[i];
190
+ if (h.LSHandlerURLScheme === 'https' && h.LSHandlerRoleAll) {
191
+ var bid = h.LSHandlerRoleAll.toLowerCase();
192
+ for (var key in BUNDLE_ID_MAP) {
193
+ if (bid === key) return BUNDLE_ID_MAP[key];
194
+ }
195
+ }
196
+ }
197
+ } catch (e) { /* plist unreadable — fall through */ }
198
+ return 'safari';
199
+ }
200
+
201
+ /**
202
+ * Detect the default browser on Linux via `xdg-settings`.
203
+ * Falls back to `'firefox'`.
204
+ *
205
+ * @inner
206
+ * @returns {string} Browser short name
207
+ */
208
+ function detectLinux() {
209
+ try {
210
+ var desktop = child.execSync(
211
+ 'xdg-settings get default-web-browser 2>/dev/null'
212
+ , { encoding: 'utf8', stdio: ['pipe', 'pipe', 'pipe'] }
213
+ ).trim().toLowerCase();
214
+ for (var prefix in DESKTOP_MAP) {
215
+ if (desktop.indexOf(prefix) !== -1) return DESKTOP_MAP[prefix];
216
+ }
217
+ } catch (e) { /* xdg not available */ }
218
+ return 'firefox';
219
+ }
220
+
221
+ /**
222
+ * Detect the default browser on Windows via registry query.
223
+ * Falls back to `'edge'` (the OS default).
224
+ *
225
+ * @inner
226
+ * @returns {string} Browser short name
227
+ */
228
+ function detectWindows() {
229
+ try {
230
+ var raw = child.execSync(
231
+ 'reg query "HKCU\\Software\\Microsoft\\Windows\\Shell\\Associations\\UrlAssociations\\https\\UserChoice" /v ProgId 2>nul'
232
+ , { encoding: 'utf8', stdio: ['pipe', 'pipe', 'pipe'] }
233
+ );
234
+ var match = raw.match(/ProgId\s+REG_SZ\s+(\S+)/);
235
+ if (match) {
236
+ var progId = match[1];
237
+ for (var prefix in PROGID_MAP) {
238
+ if (progId.indexOf(prefix) !== -1) return PROGID_MAP[prefix];
239
+ }
240
+ }
241
+ } catch (e) { /* registry unreadable */ }
242
+ return 'edge';
243
+ }
244
+
245
+ /**
246
+ * Detect the default browser for the current platform.
247
+ *
248
+ * @inner
249
+ * @returns {string} Browser short name
250
+ */
251
+ function detectDefaultBrowser() {
252
+ var platform = os.platform();
253
+ if (platform === 'darwin') return detectDarwin();
254
+ if (platform === 'linux') return detectLinux();
255
+ if (platform === 'win32') return detectWindows();
256
+ return 'chrome';
257
+ }
258
+
259
+ /**
260
+ * Check whether a binary is available on the system PATH (Linux/Windows).
261
+ *
262
+ * @inner
263
+ * @param {string} bin - Binary name to look up
264
+ * @returns {boolean}
265
+ */
266
+ function hasBin(bin) {
267
+ try {
268
+ var cmd = (os.platform() === 'win32')
269
+ ? 'where ' + bin + ' 2>nul'
270
+ : 'which ' + bin + ' 2>/dev/null';
271
+ child.execSync(cmd, { stdio: ['pipe', 'pipe', 'pipe'] });
272
+ return true;
273
+ } catch (e) { return false; }
274
+ }
275
+
276
+ /**
277
+ * Resolve the executable path for a browser on Windows.
278
+ * Tries the `paths` list (with env var expansion) before falling back to
279
+ * `where` lookup on the short binary name.
280
+ *
281
+ * @inner
282
+ * @param {object} winDef - The `win32` entry from the BROWSERS registry
283
+ * @returns {string|null} Resolved path or null
284
+ */
285
+ function resolveWindowsPath(winDef) {
286
+ if (!winDef) return null;
287
+ var paths = winDef.paths || [];
288
+ for (var i = 0; i < paths.length; i++) {
289
+ try {
290
+ var expanded = child.execSync(
291
+ 'echo ' + paths[i]
292
+ , { encoding: 'utf8', shell: true, stdio: ['pipe', 'pipe', 'pipe'] }
293
+ ).trim();
294
+ if (fs.existsSync(expanded)) return expanded;
295
+ } catch (e) { /* skip */ }
296
+ }
297
+ var bins = winDef.bins || [];
298
+ for (var b = 0; b < bins.length; b++) {
299
+ if (hasBin(bins[b])) return bins[b];
300
+ }
301
+ return null;
302
+ }
303
+
304
+ /**
305
+ * Build the shell command to open a URL in a specific browser.
306
+ *
307
+ * @inner
308
+ * @param {string} shortName - Browser short name from BROWSERS
309
+ * @param {string} url - The URL to open
310
+ * @returns {{ cmd: string, appMode: boolean }|null}
311
+ */
312
+ function buildLaunchCmd(shortName, url) {
313
+ var browser = BROWSERS[shortName];
314
+ if (!browser) return null;
315
+
316
+ var platform = os.platform();
317
+ var platDef = browser[platform];
318
+ if (!platDef) return null;
319
+
320
+ var appFlag = browser.appMode ? ('--app=' + url) : '';
321
+
322
+ if (platform === 'darwin') {
323
+ if (browser.appMode) {
324
+ // Chromium-based: call the binary directly so --app= works even
325
+ // when the browser is already running. `open --args` is unreliable
326
+ // in that case — macOS sends the URL to the existing instance as a
327
+ // regular navigation, ignoring --app=.
328
+ var binPath = '/Applications/' + platDef.app + '.app/Contents/MacOS/' + platDef.app;
329
+ if (!fs.existsSync(binPath)) return null;
330
+ return {
331
+ cmd : '"' + binPath + '" --app="' + url + '"'
332
+ , appMode : true
333
+ };
334
+ }
335
+ // Non-app-mode browsers (Firefox, Safari): use `open -a`
336
+ return {
337
+ cmd : 'open -a "' + platDef.app + '" "' + url + '"'
338
+ , appMode : false
339
+ };
340
+ }
341
+
342
+ if (platform === 'linux') {
343
+ var bins = platDef.bins || [];
344
+ var bin = null;
345
+ for (var i = 0; i < bins.length; i++) {
346
+ if (hasBin(bins[i])) { bin = bins[i]; break; }
347
+ }
348
+ if (!bin) return null;
349
+ var linuxArgs = browser.appMode
350
+ ? bin + ' --app="' + url + '"'
351
+ : bin + ' "' + url + '"';
352
+ return { cmd: linuxArgs, appMode: browser.appMode };
353
+ }
354
+
355
+ if (platform === 'win32') {
356
+ var winBin = resolveWindowsPath(platDef);
357
+ if (!winBin) return null;
358
+ var quoted = (winBin.indexOf(' ') !== -1) ? '"' + winBin + '"' : winBin;
359
+ var winArgs = browser.appMode
360
+ ? 'start "" ' + quoted + ' --app="' + url + '"'
361
+ : 'start "" ' + quoted + ' "' + url + '"';
362
+ return { cmd: winArgs, appMode: browser.appMode };
363
+ }
364
+
365
+ return null;
366
+ }
367
+
368
+
369
+ function Open(opt, cmd) {
370
+ var self = {};
371
+
372
+ /**
373
+ * Parse argv, validate project/bundle, resolve port, and launch browser.
374
+ *
375
+ * @inner
376
+ * @private
377
+ */
378
+ var init = function () {
379
+
380
+ // import CMD helpers — provides isCmdConfigured(), isDefined(), etc.
381
+ new CmdHelper(self, opt.client, { port: opt.debugPort, brkEnabled: opt.debugBrkEnabled });
382
+
383
+ var browserOverride = null;
384
+ var portOverride = null;
385
+ var bundleName = null;
386
+ var i;
387
+
388
+ for (i = 3; i < process.argv.length; i++) {
389
+ var arg = process.argv[i];
390
+ if (/^--browser=/.test(arg)) {
391
+ browserOverride = arg.split('=')[1].toLowerCase();
392
+ } else if (/^--port=/.test(arg)) {
393
+ portOverride = parseInt(arg.split('=')[1], 10);
394
+ } else if (!/^--/.test(arg) && !/^@/.test(arg)) {
395
+ bundleName = arg;
396
+ }
397
+ }
398
+
399
+ // When --port is given, skip project/bundle validation entirely
400
+ if (!portOverride) {
401
+ // check CMD configuration (project existence, etc.)
402
+ if ( !isCmdConfigured() ) return false;
403
+
404
+ // validate the bundle if one was specified
405
+ if (bundleName && !isDefined('bundle', bundleName)) {
406
+ console.error(
407
+ 'Bundle [ ' + bundleName + ' ] is not registered inside `@'
408
+ + self.projectName + '`.\n'
409
+ + 'Did you run `gina bundle:add ' + bundleName
410
+ + ' @' + self.projectName + '` first?'
411
+ );
412
+ process.exit(1);
413
+ return;
414
+ }
415
+ }
416
+
417
+ // Resolve the target port from ports.reverse.json
418
+ var port = portOverride || null;
419
+ if (!portOverride && bundleName) {
420
+ try {
421
+ var key = bundleName + '@' + self.projectName;
422
+ var portsReverse = self.portsReverseData || {};
423
+ var bundlePorts = portsReverse[key];
424
+ if (bundlePorts) {
425
+ // Use dev env by default, fall back to the first available env
426
+ var env = bundlePorts['dev'] ? 'dev' : Object.keys(bundlePorts)[0];
427
+ var envPorts = bundlePorts[env];
428
+ // Prefer http/1.1 http port
429
+ if (envPorts['http/1.1'] && envPorts['http/1.1']['http']) {
430
+ port = envPorts['http/1.1']['http'];
431
+ } else if (envPorts['http/1.1'] && envPorts['http/1.1']['https']) {
432
+ port = envPorts['http/1.1']['https'];
433
+ }
434
+ }
435
+ } catch (e) { /* use fallback */ }
436
+ }
437
+ if (!port) {
438
+ port = 3100;
439
+ }
440
+
441
+ var target = 'http://localhost:' + port;
442
+ var url = target + '/_gina/inspector/?target=' + encodeURIComponent(target);
443
+
444
+ // Resolve browser
445
+ var shortName = browserOverride || detectDefaultBrowser();
446
+ if (!BROWSERS[shortName]) {
447
+ console.error(
448
+ 'Unknown browser "' + shortName + '". '
449
+ + 'Available: ' + Object.keys(BROWSERS).join(', ')
450
+ );
451
+ process.exit(1);
452
+ return;
453
+ }
454
+
455
+ // If the resolved browser doesn't support app mode and the user
456
+ // didn't explicitly pick it, try to find an installed Chromium
457
+ // browser that does.
458
+ if (!browserOverride && !BROWSERS[shortName].appMode) {
459
+ var appModeBrowsers = ['chrome', 'edge', 'brave', 'chromium', 'vivaldi', 'opera'];
460
+ for (var a = 0; a < appModeBrowsers.length; a++) {
461
+ var candidate = buildLaunchCmd(appModeBrowsers[a], url);
462
+ if (candidate) {
463
+ shortName = appModeBrowsers[a];
464
+ break;
465
+ }
466
+ }
467
+ }
468
+
469
+ var launch = buildLaunchCmd(shortName, url);
470
+ if (!launch) {
471
+ // No app-mode browser found — fall back to system default
472
+ console.warn(
473
+ 'No app-mode browser found. '
474
+ + 'Opening in system default browser.'
475
+ );
476
+ var fallbackCmd = (os.platform() === 'win32')
477
+ ? 'start "" "' + url + '"'
478
+ : (os.platform() === 'darwin')
479
+ ? 'open "' + url + '"'
480
+ : 'xdg-open "' + url + '"';
481
+ child.exec(fallbackCmd);
482
+ process.exit(0);
483
+ return;
484
+ }
485
+
486
+ var modeLabel = launch.appMode ? 'app mode' : 'normal window';
487
+ console.log(
488
+ 'Opening Inspector in ' + BROWSERS[shortName].name
489
+ + ' (' + modeLabel + ')'
490
+ );
491
+ console.log(url);
492
+
493
+ child.exec(launch.cmd, function (err) {
494
+ if (err) {
495
+ console.warn('Browser launch failed, trying system default.');
496
+ var fallback = (os.platform() === 'win32')
497
+ ? 'start "" "' + url + '"'
498
+ : (os.platform() === 'darwin')
499
+ ? 'open "' + url + '"'
500
+ : 'xdg-open "' + url + '"';
501
+ child.exec(fallback);
502
+ }
503
+ process.exit(0);
504
+ });
505
+ };
506
+
507
+ init();
508
+ }
509
+
510
+ module.exports = Open;
@@ -131,6 +131,7 @@ lib.cmd.load = function(opt){
131
131
  setPath('gina.root', _(opt.ginaPath));
132
132
  setPath('framework', _(opt.frameworkPath));
133
133
  setPath('gina.core', _(opt.frameworkPath +'/core'));
134
+ setPath('gina.home', opt.homedir);
134
135
  setPath('gina.lib', _(opt.frameworkPath +'/lib'));
135
136
  setPath('gina.helpers', _(opt.frameworkPath +'/helpers'));
136
137
 
@@ -158,6 +158,14 @@ function ModelUtil() {
158
158
 
159
159
  self.models[bundle][model][name] = entityObject;
160
160
 
161
+ // Register a short-name alias (without the "Entity" suffix) so
162
+ // controllers can use `db.link` instead of `db.linkEntity`.
163
+ if (/Entity$/.test(name)) {
164
+ var _shortName = name.replace(/Entity$/, '');
165
+ if (_shortName && !self.models[bundle][model][_shortName]) {
166
+ self.models[bundle][model][_shortName] = entityObject;
167
+ }
168
+ }
161
169
 
162
170
  ModelUtil.instance.models = self.models;
163
171
  setContext('modelUtil.models', self.models, true);
@@ -237,6 +245,14 @@ function ModelUtil() {
237
245
  console.warn('no models attached to connector '+ connector);
238
246
  }
239
247
 
248
+ // Count only actual connector entries (skip annotations like $schema)
249
+ var _connectorCount = 0;
250
+ for (var _ck in models) {
251
+ if (models.hasOwnProperty(_ck) && typeof(models[_ck]) == 'object' && models[_ck] !== null) {
252
+ ++_connectorCount;
253
+ }
254
+ }
255
+
240
256
  var t = 0;
241
257
 
242
258
  var done = function(connector, modelConnectors) {
@@ -246,7 +262,7 @@ function ModelUtil() {
246
262
  console.error('connector '+ connector +' not found in configuration')
247
263
  }
248
264
 
249
- if ( t == models.count() ) {
265
+ if ( t == _connectorCount ) {
250
266
  setContext('modelConnectors', modelConnectors);
251
267
 
252
268
  var conn = null
@@ -299,6 +315,9 @@ function ModelUtil() {
299
315
  }
300
316
 
301
317
  for (var c in models) {//c as connector name
318
+ // skip non-connector entries (e.g. $schema annotations in connectors.json)
319
+ if (typeof(models[c]) != 'object' || models[c] === null) continue;
320
+
302
321
  if ( modelObject && typeof(modelObject[c]) != 'undefined' ) {
303
322
  done(connector, modelConnectors)
304
323
  } else {
@@ -551,7 +570,12 @@ function ModelUtil() {
551
570
  // ) {
552
571
 
553
572
  // } else {
554
- self.models = ModelUtil.instance.models
573
+ // Dev-mode cache bust: ModelUtil.instance may reference a stale
574
+ // constructor function. Fall back to getContext for the live singleton.
575
+ var _modelUtilRef = ModelUtil.instance || getContext('modelUtil');
576
+ if (_modelUtilRef) {
577
+ self.models = _modelUtilRef.models;
578
+ }
555
579
  // }
556
580
 
557
581
  if ( typeof(model) != 'undefined' && typeof(self.models[bundle]) != 'undefined' ) {
@@ -570,7 +594,7 @@ function ModelUtil() {
570
594
  return undefined
571
595
  }
572
596
  } else {
573
- throw new Error('[ MODEL ][ '+ name +' ][ '+ bundle +'] No model found !');
597
+ throw new Error('[ MODEL ][ '+ model +' ][ '+ bundle +'] No model found !');
574
598
  }
575
599
  }
576
600
 
package/llms.txt CHANGED
@@ -416,7 +416,8 @@ gina bundle:restart <bundle> @<project> # Restart a bundle
416
416
  gina project:start @<project> --env=dev # Start all bundles in a project
417
417
  gina project:stop @<project> # Stop all bundles in a project
418
418
  gina project:restart @<project> # Restart all bundles in a project
419
- gina bundle:add <bundle> @<project> # Scaffold a new bundle
419
+ gina bundle:add <bundle> @<project> # Scaffold a new bundle (overwrites existing src)
420
+ gina bundle:add <bundle> @<project> --import # Register existing bundle (preserves src)
420
421
  gina bundle:remove <bundle> @<project> # Remove a bundle
421
422
  gina bundle:list @<project> # List bundles
422
423
  gina view:add <bundle> @<project> # Add HTML templates to a bundle
@@ -496,10 +497,14 @@ The Inspector is a dev-mode SPA embedded in every bundle at `/_gina/inspector/`.
496
497
  - **Server-side (SSE agent):** `/_gina/agent` endpoint `event: log` — combined stream in standalone mode. Same log format as `/_gina/logs`.
497
498
  - **Server-side (engine.io):** `{ type: 'log', data: {...} }` WebSocket messages pushed from the `ioServer` connection handler when engine.io is configured.
498
499
 
500
+ **Lazy activation** — `process.gina._inspectorActive` is `false` at startup. Set to `true` when the Inspector SPA, `/_gina/logs`, or `/_gina/agent` is first accessed. All profiling infrastructure (timeline init, query log wiring, Inspector payload emission) is gated on this flag. JSON responses stay clean until a developer actually opens the Inspector.
501
+
499
502
  **Dev mode injections** (both added to user pages in dev mode, before `</body>`):
500
503
  - **`__logsScript`** — patches `console.log/info/warn/error/debug` to push `{ t, l, b, s }` entries to `window.__ginaLogs`. The Inspector reads this via `window.opener.__ginaLogs`.
501
504
  - **`__gdScript`** — `window.__ginaData = { gina: {...}, user: {...} }`. `__gdPayload` also stored on `self.serverInstance._lastGinaData` for engine.io. Also emits `process.emit('inspector#data', __gdPayload)` for `/_gina/agent` SSE clients.
502
505
 
506
+ **JSON API coverage** — `render-json.js` emits the same `process.emit('inspector#data')` event and stores `_lastGinaData` when `_inspectorActive` is true. Environment is built from `getContext('gina')` + `local.options.conf` (since `data.page` doesn't exist in the JSON path). The JSON response body itself is NOT modified — Inspector data travels only via the SSE/engine.io channel.
507
+
503
508
  **`statusbar.html` link** — simple relative `/_gina/inspector/` (opens in new tab, same origin).
504
509
 
505
510
  **Serving** — `server.js` `onRequest()` matches `GET /_gina/inspector/*` in dev mode (engine-agnostic — works with both Isaac and Express). Files served from `core/asset/plugin/dist/vendor/gina/inspector/` with `no-cache` headers. Requests for `/_gina/inspector/` or `/_gina/inspector` serve `index.html`. MIME types: `html` → `text/html`, `js` → `application/javascript`, `css` → `text/css`, `svg` → `image/svg+xml`.