gina 0.1.1-alpha.16 → 0.1.1-alpha.161

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 (324) hide show
  1. package/AUTHORS +2 -1
  2. package/LICENSE +1 -1
  3. package/README-4Contributors.md +30 -0
  4. package/README.md +202 -32
  5. package/bin/cli +165 -68
  6. package/bin/cli-debug +49 -18
  7. package/bin/cmd +40 -18
  8. package/bin/gina +48 -37
  9. package/{framework/v0.1.1-alpha.16/core/template/command/gina.bat.tpl → bin/gina.bat} +0 -0
  10. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/AUTHORS +0 -0
  11. package/framework/{v0.1.1-alpha.16/lib/inherits → v0.1.1-alpha.161}/LICENSE +1 -1
  12. package/framework/v0.1.1-alpha.161/VERSION +1 -0
  13. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/asset/html/nolayout.html +0 -0
  14. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/asset/html/static.html +0 -0
  15. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/asset/img/android-chrome-192x192.png +0 -0
  16. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/asset/img/android-chrome-512x512.png +0 -0
  17. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/asset/img/apple-touch-icon.png +0 -0
  18. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/asset/img/favicon-16x16.png +0 -0
  19. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/asset/img/favicon-32x32.png +0 -0
  20. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/asset/img/favicon.ico +0 -0
  21. package/framework/{v0.1.1-alpha.16/core/asset/js → v0.1.1-alpha.161/core/asset}/plugin/dist/gina.js +887 -874
  22. package/framework/{v0.1.1-alpha.16/core/asset/js → v0.1.1-alpha.161/core/asset}/plugin/dist/gina.js.map +3 -3
  23. package/framework/{v0.1.1-alpha.16/core/asset/js → v0.1.1-alpha.161/core/asset}/plugin/dist/gina.min.css +0 -0
  24. package/framework/{v0.1.1-alpha.16/core/asset/js → v0.1.1-alpha.161/core/asset}/plugin/dist/gina.min.css.map +0 -0
  25. package/framework/v0.1.1-alpha.161/core/asset/plugin/dist/gina.min.js +739 -0
  26. package/framework/v0.1.1-alpha.161/core/asset/plugin/dist/gina.min.js.map +8 -0
  27. package/framework/{v0.1.1-alpha.16/core/asset/js → v0.1.1-alpha.161/core/asset}/plugin/dist/gina.onload.min.js +0 -0
  28. package/framework/{v0.1.1-alpha.16/core/asset/js → v0.1.1-alpha.161/core/asset}/plugin/dist/gina.onload.min.js.map +0 -0
  29. package/framework/v0.1.1-alpha.161/core/asset/plugin/dist/toolbar/css/toolbar-min.css +1 -0
  30. package/framework/v0.1.1-alpha.161/core/asset/plugin/dist/toolbar/css/toolbar.css +3 -0
  31. package/framework/v0.1.1-alpha.161/core/asset/plugin/dist/toolbar/css/toolbar.css.map +1 -0
  32. package/framework/v0.1.1-alpha.161/core/asset/plugin/dist/toolbar/js/jquery-3.1.0.min.js +4 -0
  33. package/framework/v0.1.1-alpha.161/core/asset/plugin/dist/toolbar/main.js +1542 -0
  34. package/framework/v0.1.1-alpha.161/core/asset/plugin/dist/toolbar/toolbar.html +251 -0
  35. package/framework/{v0.1.1-alpha.16/core/asset/js → v0.1.1-alpha.161/core/asset}/plugin/readme.md +6 -6
  36. package/framework/{v0.1.1-alpha.16/core/asset/js → v0.1.1-alpha.161/core/asset}/plugin/uuid.json +0 -0
  37. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/config.js +29 -14
  38. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/connectors/couchbase/index.js +331 -222
  39. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/connectors/couchbase/lib/connector.js +6 -4
  40. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/connectors/couchbase/lib/connector.v2.js +47 -47
  41. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/connectors/couchbase/lib/connector.v3.js +0 -0
  42. package/framework/v0.1.1-alpha.161/core/connectors/couchbase/lib/connector.v4.js +384 -0
  43. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/connectors/couchbase/lib/n1ql.js +3 -2
  44. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/connectors/couchbase/lib/session-store.js +6 -5
  45. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/connectors/couchbase/lib/session-store.v2.js +0 -0
  46. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/connectors/couchbase/lib/session-store.v3.js +0 -0
  47. package/framework/v0.1.1-alpha.161/core/connectors/couchbase/lib/session-store.v4.js +362 -0
  48. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/controller/controller.framework.js +0 -0
  49. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/controller/controller.js +691 -677
  50. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/controller/index.js +0 -0
  51. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/deps/busboy/.travis.yml +0 -0
  52. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/deps/busboy/LICENSE +0 -0
  53. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/deps/busboy/README.md +0 -0
  54. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/deps/busboy/deps/encoding/encoding-indexes.js +0 -0
  55. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/deps/busboy/deps/encoding/encoding.js +0 -0
  56. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/deps/busboy/lib/main.js +0 -0
  57. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/deps/busboy/lib/types/multipart.js +0 -0
  58. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/deps/busboy/lib/types/urlencoded.js +0 -0
  59. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/deps/busboy/lib/utils.js +0 -0
  60. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/deps/busboy/package.json +0 -0
  61. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/deps/swig-client/swig-2.0.0.min.js +0 -0
  62. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/dev/index.js +1 -1
  63. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/dev/lib/class.js +0 -0
  64. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/dev/lib/factory.js +1 -1
  65. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/dev/lib/tools.js +0 -0
  66. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/gna.js +3 -4
  67. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/locales/README.md +0 -0
  68. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/locales/currency.json +0 -0
  69. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/locales/dist/language/en.json +0 -0
  70. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/locales/dist/language/fr.json +0 -0
  71. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/locales/dist/region/en.json +0 -0
  72. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/locales/dist/region/fr.json +0 -0
  73. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/locales/index.js +2 -2
  74. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/locales/src/make.js +0 -0
  75. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/locales/src/resources/currency.csv +0 -0
  76. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/locales/src/resources/region.csv +0 -0
  77. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/locales/src/resources/region.mapping.json +0 -0
  78. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/mime.types +0 -0
  79. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/model/entity.js +81 -61
  80. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/model/index.js +8 -7
  81. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/model/template/entityFactory.js +1 -1
  82. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/model/template/index.js +1 -1
  83. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/plugins/README.md +0 -0
  84. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/plugins/index.js +1 -1
  85. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/plugins/lib/file/README.md +0 -0
  86. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/plugins/lib/file/build.json +0 -0
  87. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/plugins/lib/file/package.json +1 -1
  88. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/plugins/lib/intl/README.md +0 -0
  89. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/plugins/lib/intl/build.json +0 -0
  90. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/plugins/lib/intl/package.json +1 -1
  91. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/plugins/lib/intl/src/main.js +0 -0
  92. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/plugins/lib/storage/README.md +0 -0
  93. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/plugins/lib/storage/build.json +0 -0
  94. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/plugins/lib/storage/package.json +1 -1
  95. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/plugins/lib/storage/src/main.js +0 -0
  96. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/plugins/lib/validator/README.md +0 -0
  97. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/plugins/lib/validator/build.json +0 -0
  98. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/plugins/lib/validator/package.json +1 -1
  99. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/plugins/lib/validator/src/form-validator.js +0 -0
  100. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/plugins/lib/validator/src/main.js +0 -0
  101. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/router.js +92 -79
  102. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/server.express.js +0 -0
  103. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/server.isaac.js +117 -108
  104. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/server.js +44 -1
  105. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/status.codes +0 -0
  106. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/template/boilerplate/bundle/config/app.json +0 -0
  107. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/template/boilerplate/bundle/config/routing.json +0 -0
  108. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/template/boilerplate/bundle/config/settings.json +0 -0
  109. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/template/boilerplate/bundle/config/settings.server.json +0 -0
  110. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/template/boilerplate/bundle/config/templates.json +4 -4
  111. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/template/boilerplate/bundle/controllers/controller.content.js +0 -0
  112. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/template/boilerplate/bundle/controllers/controller.js +0 -0
  113. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/template/boilerplate/bundle/controllers/setup.js +0 -0
  114. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/template/boilerplate/bundle/index.js +0 -0
  115. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/template/boilerplate/bundle_namespace/controllers/controller.js +0 -0
  116. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/template/boilerplate/bundle_public/css/default.css +0 -0
  117. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/template/boilerplate/bundle_public/css/vendor/readme.md +0 -0
  118. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/template/boilerplate/bundle_public/favicon.ico +0 -0
  119. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/template/boilerplate/bundle_public/js/vendor/readme.md +0 -0
  120. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/template/boilerplate/bundle_public/readme.md +0 -0
  121. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/template/boilerplate/bundle_templates/handlers/main.js +0 -0
  122. package/framework/v0.1.1-alpha.161/core/template/boilerplate/bundle_templates/html/content/homepage.html +8 -0
  123. package/framework/v0.1.1-alpha.161/core/template/boilerplate/bundle_templates/html/includes/error-msg-noscript.html +11 -0
  124. package/framework/v0.1.1-alpha.161/core/template/boilerplate/bundle_templates/html/includes/error-msg-outdated-browser.html +8 -0
  125. package/framework/{v0.1.1-alpha.16/core/template/boilerplate/bundle_templates/html/layout → v0.1.1-alpha.161/core/template/boilerplate/bundle_templates/html/layouts}/main.html +10 -3
  126. package/framework/v0.1.1-alpha.161/core/template/command/gina.bat.tpl +8 -0
  127. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/template/command/gina.tpl +1 -1
  128. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/template/conf/env.json +0 -0
  129. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/template/conf/manifest.json +0 -0
  130. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/template/conf/package.json +1 -1
  131. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/template/conf/settings.json +0 -0
  132. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/template/conf/statics.json +3 -3
  133. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/template/conf/templates.json +2 -2
  134. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/template/error/client/json/401.json +0 -0
  135. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/template/error/client/json/403.json +0 -0
  136. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/template/error/client/json/404.json +0 -0
  137. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/template/error/server/html/50x.html +0 -0
  138. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/template/error/server/json/500.json +0 -0
  139. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/template/error/server/json/503.json +0 -0
  140. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/core/template/extensions/logger/config.json +0 -0
  141. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/helpers/console.js +1 -1
  142. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/helpers/context.js +145 -5
  143. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/helpers/dateFormat.js +4 -2
  144. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/helpers/index.js +10 -5
  145. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/helpers/json/README.md +0 -0
  146. package/framework/{v0.1.1-alpha.16/helpers/plugins → v0.1.1-alpha.161/helpers/json}/package.json +1 -1
  147. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/helpers/json/src/main.js +22 -22
  148. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/helpers/path.js +143 -89
  149. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/helpers/plugins/README.md +0 -0
  150. package/framework/{v0.1.1-alpha.16/helpers/json → v0.1.1-alpha.161/helpers/plugins}/package.json +1 -1
  151. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/helpers/plugins/src/api-error.js +23 -23
  152. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/helpers/plugins/src/main.js +2 -2
  153. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/helpers/prototypes.js +35 -36
  154. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/helpers/task.js +21 -14
  155. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/helpers/text.js +1 -1
  156. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/archiver/README.md +0 -0
  157. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/archiver/build.json +0 -0
  158. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/archiver/package.json +1 -1
  159. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/archiver/src/dep/jszip.min.js +0 -0
  160. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/archiver/src/main.js +167 -167
  161. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/cmd/aliases.json +4 -1
  162. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/cmd/bundle/add.js +43 -17
  163. package/framework/v0.1.1-alpha.161/lib/cmd/bundle/arguments.json +6 -0
  164. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/cmd/bundle/copy.js +0 -0
  165. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/cmd/bundle/cp.js +0 -0
  166. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/cmd/bundle/help.js +0 -0
  167. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/cmd/bundle/help.txt +2 -2
  168. package/framework/v0.1.1-alpha.161/lib/cmd/bundle/list.js +176 -0
  169. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/cmd/bundle/remove.js +22 -22
  170. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/cmd/bundle/rename.js +0 -0
  171. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/cmd/bundle/restart.js +0 -0
  172. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/cmd/bundle/rm.js +0 -0
  173. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/cmd/bundle/start.js +257 -46
  174. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/cmd/bundle/status.js +0 -0
  175. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/cmd/bundle/stop.js +93 -74
  176. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/cmd/env/add.js +0 -0
  177. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/cmd/env/get.js +0 -0
  178. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/cmd/env/help.js +0 -0
  179. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/cmd/env/help.txt +0 -0
  180. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/cmd/env/link-dev.js +0 -0
  181. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/cmd/env/list.js +0 -0
  182. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/cmd/env/remove.js +0 -0
  183. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/cmd/env/rm.js +0 -0
  184. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/cmd/env/set.js +0 -0
  185. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/cmd/env/unset.js +0 -0
  186. package/framework/{v0.1.1-alpha.16/lib/cmd/scope → v0.1.1-alpha.161/lib/cmd/env}/use.js +21 -1
  187. package/framework/v0.1.1-alpha.161/lib/cmd/framework/build.js +85 -0
  188. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/cmd/framework/dot.js +0 -0
  189. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/cmd/framework/get.js +0 -0
  190. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/cmd/framework/help.js +0 -0
  191. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/cmd/framework/help.txt +0 -0
  192. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/cmd/framework/init.js +212 -21
  193. package/framework/v0.1.1-alpha.161/lib/cmd/framework/link-node-modules.js +86 -0
  194. package/framework/v0.1.1-alpha.161/lib/cmd/framework/link.js +94 -0
  195. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/cmd/framework/msg.json +0 -0
  196. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/cmd/framework/open.js +15 -0
  197. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/cmd/framework/restart.js +58 -26
  198. package/framework/v0.1.1-alpha.161/lib/cmd/framework/set.js +264 -0
  199. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/cmd/framework/start.js +35 -12
  200. package/framework/v0.1.1-alpha.161/lib/cmd/framework/status.js +138 -0
  201. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/cmd/framework/stop.js +44 -28
  202. package/framework/v0.1.1-alpha.161/lib/cmd/framework/tail.js +271 -0
  203. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/cmd/framework/update.js +0 -0
  204. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/cmd/framework/version.js +12 -3
  205. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/cmd/gina-dev.1.md +0 -0
  206. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/cmd/gina-framework.1.md +0 -0
  207. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/cmd/gina.1.md +0 -0
  208. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/cmd/helper.js +74 -5
  209. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/cmd/index.js +22 -22
  210. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/cmd/msg.json +0 -0
  211. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/cmd/port/help.js +0 -0
  212. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/cmd/port/help.txt +0 -0
  213. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/cmd/port/inc/scan.js +32 -17
  214. package/framework/v0.1.1-alpha.161/lib/cmd/port/list.js +446 -0
  215. package/framework/v0.1.1-alpha.161/lib/cmd/port/reset.js +426 -0
  216. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/cmd/port/set.js +0 -0
  217. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/cmd/project/add.js +146 -122
  218. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/cmd/project/arguments.json +0 -0
  219. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/cmd/project/build.js +0 -0
  220. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/cmd/project/help.js +0 -0
  221. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/cmd/project/help.txt +0 -0
  222. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/cmd/project/import.js +0 -0
  223. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/cmd/project/list.js +16 -2
  224. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/cmd/project/move.js +0 -0
  225. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/cmd/project/remove.js +17 -17
  226. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/cmd/project/rename.js +0 -0
  227. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/cmd/project/restart.js +0 -0
  228. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/cmd/project/rm.js +0 -0
  229. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/cmd/project/start.js +0 -0
  230. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/cmd/project/status.js +0 -0
  231. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/cmd/project/stop.js +0 -0
  232. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/cmd/protocol/help.js +0 -0
  233. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/cmd/protocol/help.txt +0 -0
  234. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/cmd/protocol/list.js +0 -0
  235. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/cmd/protocol/set.js +239 -201
  236. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/cmd/scope/help.js +0 -0
  237. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/cmd/scope/help.txt +0 -0
  238. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/cmd/scope/link-local.js +0 -0
  239. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/cmd/scope/list.js +0 -0
  240. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/cmd/scope/remove.js +0 -0
  241. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/cmd/scope/rm.js +0 -0
  242. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/cmd/scope/set.js +0 -0
  243. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/cmd/scope/unset.js +0 -0
  244. package/framework/{v0.1.1-alpha.16/lib/cmd/env → v0.1.1-alpha.161/lib/cmd/scope}/use.js +0 -0
  245. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/cmd/view/add.js +34 -9
  246. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/collection/README.md +0 -0
  247. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/collection/build.json +0 -0
  248. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/collection/package.json +1 -1
  249. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/collection/src/main.js +0 -0
  250. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/config.js +2 -1
  251. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/cron/README.md +0 -0
  252. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/cron/package.json +1 -1
  253. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/cron/src/main.js +0 -0
  254. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/generator/index.js +1 -1
  255. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/index.js +1 -1
  256. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161/lib/inherits}/LICENSE +1 -1
  257. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/inherits/README.md +0 -0
  258. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/inherits/example/inheriting_eventemitter.js +0 -0
  259. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/inherits/example/protected_inheritance.js +0 -0
  260. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/inherits/example/simple_inheritance.js +0 -0
  261. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/inherits/example/super_attribute_overridden_by_child_on_init.js +0 -0
  262. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/inherits/package.json +1 -1
  263. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/inherits/src/main.js +1 -1
  264. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/logger/README.md +0 -0
  265. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/logger/package.json +1 -1
  266. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/logger/src/containers/default/index.js +13 -2
  267. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/logger/src/containers/file/index.js +105 -14
  268. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/logger/src/containers/file/lib/logrotator/README.md +0 -0
  269. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/logger/src/containers/file/lib/logrotator/index.js +0 -0
  270. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/logger/src/containers/mq/index.js +2 -1
  271. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/logger/src/containers/mq/listener.js +16 -14
  272. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/logger/src/containers/mq/speaker.js +32 -3
  273. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/logger/src/helper.js +20 -1
  274. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/logger/src/main.js +5 -2
  275. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/math/index.js +7 -7
  276. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/merge/README.md +0 -0
  277. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/merge/example/merge.js +0 -0
  278. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/merge/example/merge_2_literal objects.js +0 -0
  279. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/merge/example/merge_and_preserve_first.js +0 -0
  280. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/merge/package.json +1 -1
  281. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/merge/src/main.js +0 -0
  282. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/model.js +9 -9
  283. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/proc.js +75 -47
  284. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/routing/README.md +0 -0
  285. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/routing/build.json +0 -0
  286. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/routing/package.json +1 -1
  287. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/routing/src/main.js +258 -258
  288. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/session-store.js +6 -6
  289. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/shell.js +3 -3
  290. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/swig-filters/README.md +0 -0
  291. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/swig-filters/package.json +1 -1
  292. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/swig-filters/src/main.js +55 -52
  293. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/url/README.md +0 -0
  294. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/url/index.js +0 -0
  295. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/url/mocks.json +0 -0
  296. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/url/routing.json +0 -0
  297. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/url/test.js +0 -0
  298. package/framework/{v0.1.1-alpha.16 → v0.1.1-alpha.161}/lib/validator.js +0 -0
  299. package/framework/v0.1.1-alpha.161/package.json +14 -0
  300. package/package.json +33 -24
  301. package/resources/home/main.json +44 -1
  302. package/resources/home/settings.json +7 -0
  303. package/resources/home/user/extensions/logger/default/config.json +1 -1
  304. package/resources/package.json.template +29 -18
  305. package/script/post_install.js +410 -120
  306. package/script/post_publish.js +185 -0
  307. package/script/pre_install.js +424 -76
  308. package/script/prepare_version.js +152 -22
  309. package/utils/helper.js +230 -185
  310. package/utils/prototypes.js +9 -9
  311. package/utils/prototypes.json_clone.js +31 -31
  312. package/doc/framework/cli/doc.json +0 -9
  313. package/doc/framework/index.md +0 -60
  314. package/framework/v0.1.1-alpha.16/VERSION +0 -1
  315. package/framework/v0.1.1-alpha.16/core/asset/js/plugin/dist/gina.min.js +0 -736
  316. package/framework/v0.1.1-alpha.16/core/asset/js/plugin/dist/gina.min.js.map +0 -56
  317. package/framework/v0.1.1-alpha.16/core/template/boilerplate/bundle_templates/html/homepage.html +0 -4
  318. package/framework/v0.1.1-alpha.16/lib/cmd/bundle/arguments.json +0 -4
  319. package/framework/v0.1.1-alpha.16/lib/cmd/bundle/list.js +0 -129
  320. package/framework/v0.1.1-alpha.16/lib/cmd/framework/set.js +0 -161
  321. package/framework/v0.1.1-alpha.16/lib/cmd/framework/status.js +0 -72
  322. package/framework/v0.1.1-alpha.16/lib/cmd/framework/tail.js +0 -183
  323. package/framework/v0.1.1-alpha.16/lib/cmd/port/list.js +0 -176
  324. package/framework/v0.1.1-alpha.16/package.json +0 -14
package/utils/helper.js CHANGED
@@ -1,5 +1,6 @@
1
1
  var fs = require('fs');
2
2
  var os = require('os');
3
+ const { execSync } = require('child_process');
3
4
 
4
5
  var lib = null;
5
6
  var console = null;
@@ -25,166 +26,52 @@ function MainHelper(opt) {
25
26
  var packObj = require(pack);
26
27
  var version = getEnvVar('GINA_VERSION') || packObj.version;
27
28
  var frameworkPath = ginaPath + '/framework/v' + version;
28
-
29
+ var pkg = null, cmd = null, prefix = null;
30
+ self.isGlobalInstall = getEnvVar('GINA_GLOBAL_MODE') || ( typeof(packObj.config) != 'undefined' && typeof(packObj.config.globalMode) != 'undefined' ) ? packObj.config.globalMode : true;
29
31
  try {
30
- lib = require(frameworkPath + '/lib');
31
- console = lib.logger;
32
- merge = lib.merge;
32
+ // TODO - remove this code: it is creating a circular dependency
33
+ // lib = require(frameworkPath + '/lib');
34
+ // console = lib.logger;
35
+ // merge = lib.merge;
36
+
37
+ console = require(frameworkPath + '/lib/logger');
38
+ merge = require(frameworkPath + '/lib/merge');
39
+
40
+ try {
41
+ pkg = packObj;
42
+ self.defaultPrefix = ( typeof(packObj.config) != 'undefined' && typeof(packObj.config.prefix) != 'undefined' ) ? packObj.config.prefix : execSync('npm config get prefix').toString().replace(/\n$/g, '');
43
+ self.defaultPrefix = self.defaultPrefix.replace(/^\~/, getUserHome());
44
+ prefix = getEnvVar('GINA_PREFIX') || self.defaultPrefix;
45
+ self.optionalPrefix = pkg.config.optionalPrefix.replace(/^\~/, getUserHome());
46
+ } catch(err) {
47
+ console.warn('MainHelper::Init() Execption: '+ err.stack);
48
+ console.debug('Trying alternative config');
49
+ try {
50
+ self.defaultPrefix = execSync('npm config get prefix').toString().replace(/\n$/g, '');
51
+ prefix = getEnvVar('GINA_PREFIX') || self.defaultPrefix;
52
+ cmd = 'npm list gina --long --json --prefix='+ prefix;
53
+ if (self.isGlobalInstall) {
54
+ cmd += ' -g';
55
+ }
56
+ pkg = execSync(cmd).toString().replace(/\n$/g, '');
57
+ self.optionalPrefix = JSON.parse(pkg).dependencies.gina.config.optionalPrefix.replace(/^\~/, getUserHome());
58
+ } catch (_err) {
59
+ throw new Error(_err.stack +'\n'+ err.stack)
60
+ }
61
+ }
62
+
33
63
  } catch (err) {
34
64
  // this can happen in certain conditions
35
65
  // like scripts running out of the framework context
36
66
  // we'll just ignore it
37
67
  }
38
-
39
-
40
68
  }
41
69
 
42
- /**
43
- * Check if object before extending.
44
- * */
45
- // var isObject = function(obj) {
46
- // if (
47
- // !obj ||
48
- // {}.toString.call(obj) !== '[object Object]' ||
49
- // obj.nodeType ||
50
- // obj.setInterval
51
- // ) {
52
- // return false
53
- // }
54
-
55
- // var hasOwn = {}.hasOwnProperty;
56
- // var hasOwnConstructor = hasOwn.call( obj, 'constructor');
57
- // var hasMethodPrototyped = hasOwn.call( obj.constructor.prototype, 'isPrototypeOf');
58
-
59
-
60
- // if (
61
- // obj.constructor &&
62
- // !hasOwnConstructor &&
63
- // !hasMethodPrototyped
64
- // ) {
65
- // return false
66
- // }
67
-
68
- // //Own properties are enumerated firstly, so to speed up,
69
- // //if last one is own, then all properties are own.
70
- // var key;
71
- // return key === undefined || hasOwn.call( obj, key )
72
- // }
73
-
74
-
75
-
76
70
 
77
71
  isWin32 = function() {
78
72
  return ( os.platform() == 'win32' ) ? true : false;
79
73
  }
80
74
 
81
-
82
- /**
83
- *
84
- * @param {boolean} deep - Deep copy
85
- * @param {boolean} [override] - Override when copying
86
- * @param {object} target - Target object
87
- * @param {object} source - Source object
88
- *
89
- * @returns {object} [result]
90
- * */
91
- // extend = function() {
92
- // var target = arguments[ 0 ] || {};
93
- // var i = 1;
94
- // var length = arguments.length;
95
- // var deep = false;
96
- // var override = false;
97
- // var options, name, src, copy, copy_is_array, clone;
98
-
99
- // // Handle a deep copy situation
100
- // if ( typeof target === 'boolean' ) {
101
- // deep = target;
102
- // target = arguments[ 1 ] || {};
103
- // // skip the boolean and the target
104
- // i = 2
105
- // }
106
- // // Handle an override copy situation
107
- // if ( typeof target === 'boolean' ) {
108
- // override = target;
109
- // target = arguments[ 2 ] || {};
110
- // // skip the boolean and the target
111
- // i = 3
112
- // }
113
-
114
-
115
- // // Handle case when target is a string or something (possible in deep copy)
116
- // if ( typeof target !== 'object' && typeof target !== 'function' ) {
117
- // target = {};
118
- // }
119
-
120
- // for ( ; i < length; i++ ) {
121
- // // Only deal with non-null/undefined values
122
- // if (( options = arguments[ i ]) != null ) {
123
- // // Extend the base object
124
- // for (var name in options ) {
125
- // src = target[ name ];
126
- // copy = options[ name ];
127
-
128
- // // Prevent never-ending loop
129
- // if ( target === copy ) {
130
- // continue
131
- // }
132
-
133
- // // Recurse if we're merging plain objects or arrays
134
- // if (
135
- // deep &&
136
- // copy &&
137
- // (
138
- // isObject( copy ) ||
139
- // ( copy_is_array = Array.isArray( copy ) )
140
- // )
141
- // ) {
142
-
143
- // if ( copy_is_array ) {
144
- // copy_is_array = false;
145
- // clone = src && Array.isArray( src ) ? src : []
146
- // } else {
147
- // clone = src && isObject( src) ? src : {}
148
- // }
149
-
150
- // //[propose] Supposed to go deep... deep... deep...
151
- // if (!override) {
152
- // for (var prop in copy) {
153
- // if( typeof(clone[ prop ]) != "undefined" ){
154
- // copy[ prop ] = clone[ prop ];
155
- // }
156
- // }
157
- // }
158
-
159
- // // Never move original objects, clone them
160
- // if (typeof(src) != "boolean") {//if property is not boolean
161
- // target[ name ] = extend( deep, override, clone, copy )
162
- // }
163
- // // Don't bring in undefined values
164
- // } else if ( copy !== undefined ) {
165
- // //[propose]Don't override existing if prop defined or override @ false
166
- // if (
167
- // typeof(src) != "undefined" &&
168
- // src != copy &&
169
- // !override
170
- // ) {
171
- // target[ name ] = src
172
- // } else {
173
- // target[ name ] = copy
174
- // }
175
-
176
- // }
177
- // }
178
- // }
179
- // }
180
- // // Return the modified object
181
- // return target
182
- // }
183
-
184
- // isEmpty = function(obj) {
185
- // return Object.keys(obj).length === 0;
186
- // }
187
-
188
75
  filterArgs = function() {
189
76
 
190
77
  var setget = ( typeof(process.argv[2]) != 'undefined'
@@ -199,7 +86,7 @@ function MainHelper(opt) {
199
86
  }
200
87
 
201
88
  var newArgv = {};
202
- for (var a in process.argv) {
89
+ for (var a in process.argv) {
203
90
  if ( /\-\-/.test(process.argv[a]) && process.argv[a].indexOf('=') > -1 ) {
204
91
  evar = ( (process.argv[a].replace(/--/, ''))
205
92
  .replace(/-/, '_') )
@@ -254,6 +141,12 @@ function MainHelper(opt) {
254
141
  setContext('envVars', process['gina']);
255
142
  }
256
143
 
144
+ /**
145
+ * getEnvVar
146
+ * Will read from `process.gina` which is set mostly in `cli.js`
147
+ *
148
+ * @param {string} key
149
+ */
257
150
  getEnvVar = function(key) {
258
151
  if (
259
152
  typeof(process['gina']) != 'undefined' &&
@@ -269,6 +162,10 @@ function MainHelper(opt) {
269
162
  return process.gina
270
163
  }
271
164
 
165
+ getProtected = function() {
166
+ return self.protectedVars
167
+ }
168
+
272
169
  /**
273
170
  * Get log path - %SystemRoot%\system32\winevt\logs or /
274
171
  *
@@ -277,37 +174,74 @@ function MainHelper(opt) {
277
174
  getLogDir = function() {
278
175
  // Trying to retrieve original value if already defined
279
176
  var logDir = getEnvVar('GINA_LOGDIR') || null;
177
+ var logDirObj = null;
280
178
  if ( logDir ) {
281
- if ( !/gina$/.test(logDir) ) {
282
- logDir += ( isWin32() ) ? '\\gina' : '/gina'
179
+ logDirObj = new _(logDir, true);
180
+ if ( !logDirObj.existsSync() ) {
181
+ logDirObj.mkdirSync()
283
182
  }
284
183
  return logDir
285
184
  }
185
+
186
+ var prefix = getEnvVar('GINA_PREFIX') || self.prefix || self.defaultPrefix || execSync('npm config get prefix').toString().replace(/\n$/g, '');
187
+
286
188
  if ( isWin32() ) {
287
189
  logDir = process.env.LOG ||
288
190
  process.env.LOGS ||
289
191
  (process.env.SystemRoot || process.env.windir) + '\\System32\\Winevt\\Logs'
290
192
  ;
193
+
194
+ if ( !logDir || logDir == '' ) {
195
+ throw new Error('Log directory not defined or not found !');
196
+ }
197
+
198
+ logDirObj = new _(logDir);
199
+ if ( !logDirObj.isWritableSync() ) {
200
+ throw new Error('Log directory found but not writable: need permissions for `'+ logDir +'`');
201
+ }
202
+
291
203
  if ( !/gina$/.test(logDir) ) {
292
- logDir += '\\gina'
204
+ logDir += '\\gina';
205
+ logDirObj = new _(logDir);
293
206
  }
294
207
  } else {
295
208
  logDir = process.env.LOGDIR ||
296
209
  process.env.LOG ||
297
210
  process.env.LOGS ||
298
- '/usr/local/var/log'
211
+ prefix+'/var/log'
299
212
  ;
300
- if ( !/gina$/.test(logDir) ) {
301
- logDir += '/gina'
213
+ logDirObj = new _(logDir);
214
+ if ( new RegExp('^'+ prefix).test(logDir) && !new _(prefix).isWritableSync() ) {
215
+ logDir = getUserHome() +'/.gina/log';
216
+ logDirObj = new _(logDir);
217
+ if ( !logDirObj.existsSync() ) {
218
+ logDirObj.mkdirSync()
219
+ }
220
+
221
+ return logDir
222
+ }
223
+
224
+ if ( new RegExp('^'+ prefix +'/var').test(logDir) && !new _(prefix +'/var').existsSync() ) {
225
+ fs.mkdirSync(prefix +'/var');
226
+ }
227
+
228
+ if ( !logDirObj.existsSync() ) {
229
+ logDirObj.mkdirSync();
230
+ }
231
+
232
+ if ( !/gina$/.test(logDir) && self.optionalPrefix != prefix ) {
233
+ logDir += '/gina';
234
+ logDirObj = new _(logDir);
302
235
  }
303
236
  }
304
-
237
+
238
+ if ( !logDirObj.existsSync() ) {
239
+ logDirObj.mkdirSync()
240
+ }
241
+
305
242
  return logDir;
306
243
  }
307
244
 
308
- getProtected = function() {
309
- return self.protectedVars
310
- }
311
245
 
312
246
  /**
313
247
  * Get run\lock path
@@ -316,46 +250,157 @@ function MainHelper(opt) {
316
250
  getRunDir = function() {
317
251
  // Trying to retrieve original value if already defined
318
252
  var runDir = getEnvVar('GINA_RUNDIR') || null;
253
+ var runDirObj = null;
319
254
  if ( runDir ) {
320
- if ( !/gina$/.test(runDir) ) {
321
- runDir += ( isWin32() ) ? '\\gina' : '/gina'
255
+ runDirObj = new _(runDir, true);
256
+ if ( !runDirObj.existsSync() ) {
257
+ runDirObj.mkdirSync()
322
258
  }
323
259
  return runDir
324
260
  }
325
-
326
- if ( isWin32() ) {
327
- console.debug('check /gina/utils/helper.js around on getRunDir()')
328
- } else {
329
- // Means `/usr/local/var/lock` or `/usr/local/var/run` by default.
330
- runDirObj = new _('/usr/local/var/lock', true);
331
- if ( runDirObj.existsSync() ) {
332
- return _( runDirObj.toUnixStyle() +'/gina', true );
261
+
262
+ var prefix = getEnvVar('GINA_PREFIX') || self.prefix || self.defaultPrefix || execSync('npm config get prefix').toString().replace(/\n$/g, '');
263
+
264
+ runDir = (isWin32()) ? getUserHome() + '\\.gina\\run' : prefix + '/var/lock';
265
+
266
+ if ( !isWin32() && new RegExp('^'+ prefix).test(runDir) && !new _(prefix).isWritableSync() ) {
267
+ runDir = getUserHome() +'/.gina/run';
268
+ runDirObj = new _( runDir, true );
269
+ if ( !runDirObj.existsSync() ) {
270
+ runDirObj.mkdirSync()
333
271
  }
334
- // by default
335
- return _('/usr/local/var/run/gina', true)//by default.
272
+
273
+ return runDir
274
+ }
275
+
276
+
277
+ runDirObj = new _( runDir, true );
278
+ if ( runDirObj.existsSync() ) {
279
+ if ( !runDirObj.isWritableSync() ) {
280
+ throw new Error('location `'+ runDir +'` found but not writable !' )
281
+ }
282
+
283
+ runDir += ( isWin32() ) ? '' : '/gina';
284
+ runDirObj = new _( runDir, true );
285
+ if ( !runDirObj.existsSync() ) {
286
+ runDirObj.mkdirSync()
287
+ }
288
+
289
+ return runDir;
336
290
  }
291
+
292
+ try {
293
+ if ( new RegExp('^'+ prefix +'/var').test(runDir) && !new _(prefix + '/var').existsSync() ) {
294
+ fs.mkdirSync(prefix +'/var');
295
+ }
296
+
297
+ runDir = prefix +'/var/run';//by default.
298
+ if ( !existsSync(runDir) ) {
299
+ fs.mkdirSync(runDir)
300
+ }
301
+ } catch (err) {
302
+ throw new Error('location error: `'+ runDir+'`\n'+ err.stack);
303
+ }
304
+
305
+ if (self.optionalPrefix != prefix) {
306
+ runDir += ( isWin32() ) ? '\\gina' : '/gina';
307
+ runDirObj = new _( runDir, true );
308
+ if ( !runDirObj.existsSync() ) {
309
+ fs.mkdirSync(runDir)
310
+ }
311
+ }
312
+
313
+ return runDir;
337
314
  }
338
315
 
339
316
  getTmpDir = function() {
317
+
318
+ var dir = getEnvVar('GINA_TMPDIR') || null;
319
+ if (dir) {
320
+ dirObj = new _(dir, true);
321
+ if ( !dirObj.existsSync() ) {
322
+ dirObj.mkdirSync()
323
+ }
324
+ return dir
325
+ }
326
+
327
+ var prefix = getEnvVar('GINA_PREFIX') || self.prefix || self.defaultPrefix || execSync('npm config get prefix').toString().replace(/\n$/g, '');
328
+
340
329
  // support for node 0.10.x & 0.11.x
341
- var tmp = os.tmpdir || function() {
330
+ var tmp = (os.tmpdir) ? os.tmpdir : function() {
331
+ var tmpDir = null;
342
332
  if ( isWin32() ) {
343
- return process.env.TEMP ||
333
+ tmpDir = process.env.TEMP ||
344
334
  process.env.TMP ||
345
335
  (process.env.SystemRoot || process.env.windir) + '\\Temp'
346
336
  } else {
347
- return process.env.TMPDIR ||
337
+ tmpDir = process.env.TMPDIR ||
348
338
  process.env.TMP ||
349
339
  process.env.TEMP ||
350
- '/usr/local/var/tmp'
340
+ prefix+'/var/tmp'
341
+ ;
342
+
343
+ if ( new RegExp('^'+ prefix).test(tmpDir) && !isWritableSync(prefix) ) {
344
+ tmpDir = getUserHome() +'/.gina/tmp';
345
+ if ( !existsSync(tmpDir) ) {
346
+ fs.mkdirSync(tmpDir)
347
+ }
348
+ }
349
+
350
+ if ( new RegExp('^'+ prefix +'/var').test(tmpDir) && !existsSync(prefix +'/var') ) {
351
+ fs.mkdirSync(prefix +'/var');
352
+ }
353
+ }
354
+
355
+ var tmpDirObj = new _(tmpDir);
356
+ if ( !tmpDirObj.existsSync() ) {
357
+ tmpDirObj.mkdirSync();
351
358
  }
352
359
  };
353
360
 
354
- return ( typeof(tmp) == 'function') ? tmp() : tmp
361
+ return tmp()
355
362
  }
356
363
 
364
+ /**
365
+ * isWritableSync
366
+ * Only used for `getUserHome()`
367
+ *
368
+ * @param {string} path
369
+ */
370
+ var isWritableSync = function(path) {
371
+ var canWrite = false;
372
+ if ( typeof(fs.accessSync) != 'undefined' ) {
373
+ try {
374
+ fs.accessSync(path, fs.constants.W_OK);
375
+ canWrite = true;
376
+ } catch (err) {
377
+ canWrite = false;
378
+ }
379
+ } else { // support for old version of nodejs
380
+
381
+ try {
382
+ canWrite = (fs.statSync(path).mode & (fs.constants.S_IRUSR | fs.constants.S_IRGRP | fs.constants.S_IROTH));
383
+ } catch (err) {
384
+ canWrite = false
385
+ }
386
+ }
387
+
388
+ return canWrite
389
+ };
390
+
357
391
  getUserHome = function() {
358
- return process.env[(isWin32()) ? 'USERPROFILE' : 'HOME']
392
+ var homeDir = process.env[(isWin32()) ? 'USERPROFILE' : 'HOME'];
393
+
394
+ if ( !homeDir || homeDir == '' ) {
395
+ throw new Error('Home directory not defined or not found !');
396
+ }
397
+
398
+
399
+ if ( !isWritableSync(homeDir) ) {
400
+ throw new Error('Home directory found but not writable: need permissions for `'+ homeDir +'`');
401
+ }
402
+
403
+ return homeDir
359
404
  }
360
405
 
361
406
  getVendorsConfig = function(vendor) {
@@ -387,14 +432,14 @@ function MainHelper(opt) {
387
432
  }
388
433
  }
389
434
 
390
- setEnvVar = function(key, val, isProtected) {
435
+ setEnvVar = function(key, val, isProtected) {
391
436
  key = key.toUpperCase();
392
437
  var err = null
393
- // related task `framework:set` & framework/v.xxx/lib/cmd/framework/init.js
438
+ // related task `framework:set` & framework/v.xxx/lib/cmd/framework/init.js
394
439
  , specialCases = ['GINA_PORT', 'GINA_DEBUG_PORT', 'GINA_CULTURE', 'GINA_TIMEZONE']
395
440
  , isOverrrideAllowed = (specialCases.indexOf(key) > -1) ? true : false
396
441
  ;
397
-
442
+
398
443
  if (
399
444
  key.substr(0, 5) !== 'GINA_' &&
400
445
  key.substr(0, 7) !== 'VENDOR_' &&
@@ -418,10 +463,10 @@ function MainHelper(opt) {
418
463
  process['gina'] = {}
419
464
  }
420
465
  process['gina'][key] = val;
421
- if ( typeof(isProtected) != 'undefined' && isProtected == true) {
466
+ if ( typeof(isProtected) != 'undefined' && isProtected == true) {
422
467
  self.protectedVars.push(key)
423
- }
424
- }
468
+ }
469
+ }
425
470
  }
426
471
 
427
472
  defineDefault = function(obj) {
@@ -429,10 +474,10 @@ function MainHelper(opt) {
429
474
  define(c, obj[c])
430
475
  }
431
476
  delete obj
432
- }
477
+ }// jshint ignore:line
433
478
 
434
479
  init(opt)
435
480
 
436
- };
481
+ }
437
482
 
438
- module.exports = MainHelper()
483
+ module.exports = MainHelper();
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * clone array
3
- *
3
+ *
4
4
  * @returns {array} Return cloned array
5
5
  * @supress {misplacedTypeAnnotation}
6
6
  **/
@@ -21,14 +21,14 @@ if ( typeof(JSON.escape) == 'undefined' ) {
21
21
  /**
22
22
  * JSON.escape
23
23
  * Escape special characters
24
- *
25
- * Changes made here must be reflected in:
24
+ *
25
+ * Changes made here must be reflected in:
26
26
  * - gina/utils/prototypes.js
27
27
  * - gina/framework/version/helpers/prototypes.js
28
- * - gina/framework/version/core/asset/js/plugin/src/gina/utils/polyfill.js
29
- *
28
+ * - gina/framework/version/core/asset/plugin/src/gina/utils/polyfill.js
29
+ *
30
30
  * @param {object} jsonStr
31
- *
31
+ *
32
32
  * @returns {object} escaped JSON string
33
33
  **/
34
34
  var escape = function(jsonStr){
@@ -38,11 +38,11 @@ if ( typeof(JSON.escape) == 'undefined' ) {
38
38
  .replace(/\r/g, "\\r")
39
39
  .replace(/\t/g, "\\t")
40
40
  ;
41
- } catch (err) {
41
+ } catch (err) {
42
42
  throw err;
43
43
  }
44
44
  };
45
-
45
+
46
46
  JSON.escape = escape;
47
47
  }
48
48
 
@@ -98,7 +98,7 @@ Object.defineProperty( Object.prototype, 'functionCount', {
98
98
  /**
99
99
  * __stack Get current stack
100
100
  * @returns {Object} stack Current stack
101
- *
101
+ *
102
102
  * @suppress {es5Strict}
103
103
  **/
104
104
  Object.defineProperty(global, '__stack', {