gina 0.1.1-alpha.17 → 0.1.1-alpha.170

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 (356) 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.17/core/template/command/gina.bat.tpl → bin/gina.bat} +0 -0
  10. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/AUTHORS +0 -0
  11. package/framework/{v0.1.1-alpha.17/lib/inherits → v0.1.1-alpha.170}/LICENSE +1 -1
  12. package/framework/v0.1.1-alpha.170/VERSION +1 -0
  13. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/asset/html/nolayout.html +0 -0
  14. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/asset/html/static.html +0 -0
  15. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/asset/img/android-chrome-192x192.png +0 -0
  16. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/asset/img/android-chrome-512x512.png +0 -0
  17. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/asset/img/apple-touch-icon.png +0 -0
  18. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/asset/img/favicon-16x16.png +0 -0
  19. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/asset/img/favicon-32x32.png +0 -0
  20. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/asset/img/favicon.ico +0 -0
  21. package/framework/{v0.1.1-alpha.17/core/asset/js/plugin/readme.md → v0.1.1-alpha.170/core/asset/plugin/README.md} +31 -9
  22. package/framework/v0.1.1-alpha.170/core/asset/plugin/dist/vendor/gina/css/gina.min.css +1 -0
  23. package/framework/v0.1.1-alpha.170/core/asset/plugin/dist/vendor/gina/css/gina.min.css.map +1 -0
  24. package/framework/v0.1.1-alpha.170/core/asset/plugin/dist/vendor/gina/html/toolbar.html +251 -0
  25. package/framework/{v0.1.1-alpha.17/core/asset/js/plugin/dist → v0.1.1-alpha.170/core/asset/plugin/dist/vendor/gina/js}/gina.js +3768 -3001
  26. package/framework/v0.1.1-alpha.170/core/asset/plugin/dist/vendor/gina/js/gina.min.js +756 -0
  27. package/framework/v0.1.1-alpha.170/core/asset/plugin/dist/vendor/gina/js/gina.min.js.map +8 -0
  28. package/framework/v0.1.1-alpha.170/core/asset/plugin/dist/vendor/gina/js/gina.onload.min.js +5 -0
  29. package/framework/v0.1.1-alpha.170/core/asset/plugin/dist/vendor/gina/js/gina.onload.min.js.map +8 -0
  30. package/framework/{v0.1.1-alpha.17/core/asset/js → v0.1.1-alpha.170/core/asset}/plugin/uuid.json +0 -0
  31. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/config.js +92 -38
  32. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/connectors/couchbase/index.js +332 -223
  33. package/framework/v0.1.1-alpha.170/core/connectors/couchbase/lib/connector.js +22 -0
  34. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/connectors/couchbase/lib/connector.v2.js +51 -51
  35. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/connectors/couchbase/lib/connector.v3.js +51 -51
  36. package/framework/v0.1.1-alpha.170/core/connectors/couchbase/lib/connector.v4.js +384 -0
  37. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/connectors/couchbase/lib/n1ql.js +3 -2
  38. package/framework/v0.1.1-alpha.170/core/connectors/couchbase/lib/session-store.js +22 -0
  39. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/connectors/couchbase/lib/session-store.v2.js +0 -0
  40. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/connectors/couchbase/lib/session-store.v3.js +12 -12
  41. package/framework/v0.1.1-alpha.170/core/connectors/couchbase/lib/session-store.v4.js +361 -0
  42. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/controller/controller.framework.js +0 -0
  43. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/controller/controller.js +767 -723
  44. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/controller/index.js +0 -0
  45. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/deps/busboy/.travis.yml +0 -0
  46. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/deps/busboy/LICENSE +0 -0
  47. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/deps/busboy/README.md +0 -0
  48. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/deps/busboy/deps/encoding/encoding-indexes.js +0 -0
  49. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/deps/busboy/deps/encoding/encoding.js +0 -0
  50. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/deps/busboy/lib/main.js +0 -0
  51. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/deps/busboy/lib/types/multipart.js +0 -0
  52. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/deps/busboy/lib/types/urlencoded.js +0 -0
  53. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/deps/busboy/lib/utils.js +0 -0
  54. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/deps/busboy/package.json +0 -0
  55. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/deps/swig-client/swig-2.0.0.min.js +0 -0
  56. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/dev/index.js +1 -1
  57. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/dev/lib/class.js +1 -1
  58. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/dev/lib/factory.js +2 -2
  59. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/dev/lib/tools.js +0 -0
  60. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/gna.js +13 -9
  61. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/locales/README.md +5 -0
  62. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/locales/currency.json +0 -0
  63. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/locales/dist/language/en.json +0 -0
  64. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/locales/dist/language/fr.json +0 -0
  65. package/framework/v0.1.1-alpha.170/core/locales/dist/region/en.json +5727 -0
  66. package/framework/v0.1.1-alpha.170/core/locales/dist/region/fr.json +11452 -0
  67. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/locales/index.js +2 -2
  68. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/locales/src/make.js +39 -41
  69. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/locales/src/resources/currency.csv +0 -0
  70. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/locales/src/resources/region.csv +0 -0
  71. package/framework/v0.1.1-alpha.170/core/locales/src/resources/region.mapping.json +43 -0
  72. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/mime.types +0 -0
  73. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/model/entity.js +87 -67
  74. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/model/index.js +16 -16
  75. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/model/template/entityFactory.js +1 -1
  76. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/model/template/index.js +15 -14
  77. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/plugins/README.md +0 -0
  78. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/plugins/index.js +1 -1
  79. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/plugins/lib/file/README.md +0 -0
  80. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/plugins/lib/file/build.json +0 -0
  81. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/plugins/lib/file/package.json +1 -1
  82. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/plugins/lib/intl/README.md +0 -0
  83. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/plugins/lib/intl/build.json +0 -0
  84. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/plugins/lib/intl/package.json +1 -1
  85. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/plugins/lib/intl/src/main.js +5 -5
  86. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/plugins/lib/storage/README.md +0 -0
  87. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/plugins/lib/storage/build.json +0 -0
  88. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/plugins/lib/storage/package.json +1 -1
  89. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/plugins/lib/storage/src/main.js +4 -4
  90. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/plugins/lib/validator/README.md +0 -0
  91. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/plugins/lib/validator/build.json +0 -0
  92. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/plugins/lib/validator/package.json +1 -1
  93. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/plugins/lib/validator/src/form-validator.js +391 -292
  94. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/plugins/lib/validator/src/main.js +1279 -1256
  95. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/router.js +92 -79
  96. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/server.express.js +0 -0
  97. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/server.isaac.js +118 -109
  98. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/server.js +227 -55
  99. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/status.codes +0 -0
  100. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/template/boilerplate/bundle/config/app.json +0 -0
  101. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/template/boilerplate/bundle/config/routing.json +0 -0
  102. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/template/boilerplate/bundle/config/settings.json +0 -0
  103. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/template/boilerplate/bundle/config/settings.server.json +4 -4
  104. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/template/boilerplate/bundle/config/templates.json +4 -4
  105. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/template/boilerplate/bundle/controllers/controller.content.js +1 -1
  106. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/template/boilerplate/bundle/controllers/controller.js +0 -0
  107. package/framework/v0.1.1-alpha.170/core/template/boilerplate/bundle/controllers/setup.js +111 -0
  108. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/template/boilerplate/bundle/index.js +13 -1
  109. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/template/boilerplate/bundle_namespace/controllers/controller.js +0 -0
  110. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/template/boilerplate/bundle_public/css/default.css +0 -0
  111. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/template/boilerplate/bundle_public/css/vendor/readme.md +0 -0
  112. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/template/boilerplate/bundle_public/favicon.ico +0 -0
  113. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/template/boilerplate/bundle_public/js/vendor/readme.md +0 -0
  114. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/template/boilerplate/bundle_public/readme.md +0 -0
  115. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/template/boilerplate/bundle_templates/handlers/main.js +0 -0
  116. package/framework/v0.1.1-alpha.170/core/template/boilerplate/bundle_templates/html/content/homepage.html +8 -0
  117. package/framework/v0.1.1-alpha.170/core/template/boilerplate/bundle_templates/html/includes/error-msg-noscript.html +11 -0
  118. package/framework/v0.1.1-alpha.170/core/template/boilerplate/bundle_templates/html/includes/error-msg-outdated-browser.html +8 -0
  119. package/framework/{v0.1.1-alpha.17/core/template/boilerplate/bundle_templates/html/layout → v0.1.1-alpha.170/core/template/boilerplate/bundle_templates/html/layouts}/main.html +10 -3
  120. package/framework/v0.1.1-alpha.170/core/template/command/gina.bat.tpl +8 -0
  121. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/template/command/gina.tpl +4 -4
  122. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/template/conf/env.json +11 -0
  123. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/template/conf/manifest.json +0 -0
  124. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/template/conf/package.json +1 -1
  125. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/template/conf/settings.json +0 -0
  126. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/template/conf/statics.json +3 -3
  127. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/template/conf/templates.json +2 -2
  128. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/template/error/client/json/401.json +0 -0
  129. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/template/error/client/json/403.json +0 -0
  130. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/template/error/client/json/404.json +0 -0
  131. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/template/error/server/html/50x.html +0 -0
  132. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/template/error/server/json/500.json +0 -0
  133. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/template/error/server/json/503.json +0 -0
  134. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/core/template/extensions/logger/config.json +0 -0
  135. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/helpers/console.js +3 -3
  136. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/helpers/context.js +146 -6
  137. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/helpers/dateFormat.js +9 -7
  138. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/helpers/index.js +13 -8
  139. package/framework/v0.1.1-alpha.170/helpers/json/LICENSE +9 -0
  140. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/helpers/json/README.md +0 -0
  141. package/framework/{v0.1.1-alpha.17/helpers/plugins → v0.1.1-alpha.170/helpers/json}/package.json +2 -2
  142. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/helpers/json/src/main.js +25 -25
  143. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/helpers/path.js +163 -96
  144. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/helpers/plugins/README.md +0 -0
  145. package/framework/{v0.1.1-alpha.17/helpers/json → v0.1.1-alpha.170/helpers/plugins}/package.json +2 -2
  146. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/helpers/plugins/src/api-error.js +23 -23
  147. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/helpers/plugins/src/main.js +3 -3
  148. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/helpers/prototypes.js +46 -38
  149. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/helpers/task.js +21 -14
  150. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/helpers/text.js +2 -2
  151. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/archiver/README.md +0 -0
  152. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/archiver/build.json +0 -0
  153. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/archiver/package.json +1 -1
  154. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/archiver/src/dep/jszip.min.js +3 -3
  155. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/archiver/src/main.js +168 -168
  156. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/cmd/aliases.json +4 -1
  157. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/cmd/bundle/add.js +43 -17
  158. package/framework/v0.1.1-alpha.170/lib/cmd/bundle/arguments.json +6 -0
  159. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/cmd/bundle/copy.js +0 -0
  160. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/cmd/bundle/cp.js +0 -0
  161. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/cmd/bundle/help.js +0 -0
  162. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/cmd/bundle/help.txt +2 -2
  163. package/framework/v0.1.1-alpha.170/lib/cmd/bundle/list.js +176 -0
  164. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/cmd/bundle/remove.js +22 -22
  165. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/cmd/bundle/rename.js +0 -0
  166. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/cmd/bundle/restart.js +0 -0
  167. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/cmd/bundle/rm.js +0 -0
  168. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/cmd/bundle/start.js +264 -46
  169. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/cmd/bundle/status.js +0 -0
  170. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/cmd/bundle/stop.js +93 -74
  171. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/cmd/env/add.js +0 -0
  172. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/cmd/env/get.js +0 -0
  173. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/cmd/env/help.js +0 -0
  174. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/cmd/env/help.txt +0 -0
  175. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/cmd/env/link-dev.js +0 -0
  176. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/cmd/env/list.js +20 -4
  177. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/cmd/env/remove.js +0 -0
  178. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/cmd/env/rm.js +0 -0
  179. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/cmd/env/set.js +0 -0
  180. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/cmd/env/unset.js +0 -0
  181. package/framework/{v0.1.1-alpha.17/lib/cmd/scope → v0.1.1-alpha.170/lib/cmd/env}/use.js +21 -1
  182. package/framework/v0.1.1-alpha.170/lib/cmd/framework/build.js +85 -0
  183. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/cmd/framework/dot.js +0 -0
  184. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/cmd/framework/get.js +0 -0
  185. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/cmd/framework/help.js +0 -0
  186. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/cmd/framework/help.txt +0 -0
  187. package/framework/v0.1.1-alpha.170/lib/cmd/framework/init.js +798 -0
  188. package/framework/v0.1.1-alpha.170/lib/cmd/framework/link-node-modules.js +86 -0
  189. package/framework/v0.1.1-alpha.170/lib/cmd/framework/link.js +110 -0
  190. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/cmd/framework/msg.json +0 -0
  191. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/cmd/framework/open.js +15 -0
  192. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/cmd/framework/restart.js +58 -26
  193. package/framework/v0.1.1-alpha.170/lib/cmd/framework/set.js +264 -0
  194. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/cmd/framework/start.js +43 -20
  195. package/framework/v0.1.1-alpha.170/lib/cmd/framework/status.js +138 -0
  196. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/cmd/framework/stop.js +44 -28
  197. package/framework/v0.1.1-alpha.170/lib/cmd/framework/tail.js +299 -0
  198. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/cmd/framework/update.js +0 -0
  199. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/cmd/framework/version.js +12 -3
  200. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/cmd/gina-dev.1.md +0 -0
  201. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/cmd/gina-framework.1.md +0 -0
  202. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/cmd/gina.1.md +0 -0
  203. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/cmd/helper.js +74 -5
  204. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/cmd/index.js +23 -23
  205. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/cmd/msg.json +0 -0
  206. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/cmd/port/help.js +0 -0
  207. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/cmd/port/help.txt +0 -0
  208. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/cmd/port/inc/scan.js +32 -17
  209. package/framework/v0.1.1-alpha.170/lib/cmd/port/list.js +459 -0
  210. package/framework/v0.1.1-alpha.170/lib/cmd/port/reset.js +426 -0
  211. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/cmd/port/set.js +0 -0
  212. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/cmd/project/add.js +146 -122
  213. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/cmd/project/arguments.json +0 -0
  214. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/cmd/project/build.js +0 -0
  215. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/cmd/project/help.js +0 -0
  216. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/cmd/project/help.txt +0 -0
  217. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/cmd/project/import.js +0 -0
  218. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/cmd/project/list.js +16 -2
  219. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/cmd/project/move.js +0 -0
  220. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/cmd/project/remove.js +17 -17
  221. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/cmd/project/rename.js +0 -0
  222. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/cmd/project/restart.js +0 -0
  223. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/cmd/project/rm.js +0 -0
  224. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/cmd/project/start.js +0 -0
  225. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/cmd/project/status.js +0 -0
  226. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/cmd/project/stop.js +0 -0
  227. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/cmd/protocol/help.js +0 -0
  228. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/cmd/protocol/help.txt +0 -0
  229. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/cmd/protocol/list.js +0 -0
  230. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/cmd/protocol/set.js +239 -201
  231. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/cmd/scope/help.js +0 -0
  232. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/cmd/scope/help.txt +0 -0
  233. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/cmd/scope/link-local.js +0 -0
  234. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/cmd/scope/list.js +24 -8
  235. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/cmd/scope/remove.js +0 -0
  236. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/cmd/scope/rm.js +0 -0
  237. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/cmd/scope/set.js +0 -0
  238. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/cmd/scope/unset.js +0 -0
  239. package/framework/{v0.1.1-alpha.17/lib/cmd/env → v0.1.1-alpha.170/lib/cmd/scope}/use.js +0 -0
  240. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/cmd/view/add.js +34 -9
  241. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/collection/README.md +0 -0
  242. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/collection/build.json +0 -0
  243. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/collection/package.json +1 -1
  244. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/collection/src/main.js +241 -241
  245. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/config.js +31 -30
  246. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/cron/README.md +0 -0
  247. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/cron/package.json +1 -1
  248. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/cron/src/main.js +10 -9
  249. package/framework/v0.1.1-alpha.170/lib/domain/LICENSE +9 -0
  250. package/framework/v0.1.1-alpha.170/lib/domain/README.md +46 -0
  251. package/framework/v0.1.1-alpha.170/lib/domain/dist/public_suffix_list.dat +14186 -0
  252. package/framework/{v0.1.1-alpha.17/lib/routing/README.md → v0.1.1-alpha.170/lib/domain/exemples/backend.js} +0 -0
  253. package/framework/{v0.1.1-alpha.17/lib/routing/build.json → v0.1.1-alpha.170/lib/domain/exemples/frontend.html} +0 -0
  254. package/framework/v0.1.1-alpha.170/lib/domain/package.json +20 -0
  255. package/framework/v0.1.1-alpha.170/lib/domain/src/main.js +442 -0
  256. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/generator/index.js +4 -4
  257. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/index.js +3 -2
  258. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170/lib/inherits}/LICENSE +1 -1
  259. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/inherits/README.md +2 -2
  260. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/inherits/example/inheriting_eventemitter.js +0 -0
  261. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/inherits/example/protected_inheritance.js +0 -0
  262. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/inherits/example/simple_inheritance.js +0 -0
  263. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/inherits/example/super_attribute_overridden_by_child_on_init.js +0 -0
  264. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/inherits/package.json +3 -4
  265. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/inherits/src/main.js +3 -3
  266. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/logger/README.md +0 -0
  267. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/logger/package.json +2 -2
  268. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/logger/src/containers/default/index.js +13 -2
  269. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/logger/src/containers/file/index.js +105 -14
  270. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/logger/src/containers/file/lib/logrotator/README.md +0 -0
  271. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/logger/src/containers/file/lib/logrotator/index.js +0 -0
  272. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/logger/src/containers/mq/index.js +7 -1
  273. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/logger/src/containers/mq/listener.js +16 -14
  274. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/logger/src/containers/mq/speaker.js +32 -3
  275. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/logger/src/helper.js +21 -1
  276. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/logger/src/main.js +27 -7
  277. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/math/index.js +9 -9
  278. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/merge/README.md +2 -2
  279. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/merge/example/merge.js +0 -0
  280. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/merge/example/merge_2_literal objects.js +0 -0
  281. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/merge/example/merge_and_preserve_first.js +0 -0
  282. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/merge/package.json +1 -1
  283. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/merge/src/main.js +0 -0
  284. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/model.js +10 -10
  285. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/proc.js +87 -49
  286. package/framework/{v0.1.1-alpha.17/lib/swig-filters → v0.1.1-alpha.170/lib/routing}/README.md +0 -0
  287. package/framework/{v0.1.1-alpha.17/lib/url/README.md → v0.1.1-alpha.170/lib/routing/build.json} +0 -0
  288. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/routing/package.json +1 -1
  289. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/routing/src/main.js +270 -264
  290. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/session-store.js +6 -6
  291. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/shell.js +3 -3
  292. package/framework/v0.1.1-alpha.170/lib/swig-filters/README.md +0 -0
  293. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/swig-filters/package.json +1 -1
  294. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/swig-filters/src/main.js +55 -52
  295. package/framework/v0.1.1-alpha.170/lib/url/README.md +0 -0
  296. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/url/index.js +0 -0
  297. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/url/mocks.json +0 -0
  298. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/url/routing.json +0 -0
  299. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/url/test.js +0 -0
  300. package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.170}/lib/validator.js +2 -2
  301. package/framework/v0.1.1-alpha.170/package.json +14 -0
  302. package/package.json +33 -24
  303. package/resources/home/main.json +44 -1
  304. package/resources/home/settings.json +7 -0
  305. package/resources/home/user/extensions/logger/default/config.json +1 -1
  306. package/resources/package.json.template +29 -18
  307. package/script/post_install.js +411 -123
  308. package/script/post_publish.js +186 -0
  309. package/script/pre_install.js +425 -77
  310. package/script/prepare_version.js +275 -98
  311. package/services/.gna/67fdf1b224a2ed5597e63d4b64283834468e05e3.txt +0 -0
  312. package/services/.gna/arch +1 -0
  313. package/services/.gna/locals.json +14 -0
  314. package/services/.gna/platform +1 -0
  315. package/services/configure +6 -0
  316. package/services/env.json +10 -0
  317. package/services/manifest.json +18 -0
  318. package/services/package.json +11 -0
  319. package/services/src/proxy/config/app.json +6 -0
  320. package/services/src/proxy/config/routing.json +11 -0
  321. package/services/src/proxy/config/settings.json +9 -0
  322. package/services/src/proxy/config/settings.server.json +31 -0
  323. package/services/src/proxy/config/statics.json +3 -0
  324. package/services/src/proxy/controllers/controller.content.js +58 -0
  325. package/services/src/proxy/controllers/controller.js +30 -0
  326. package/{framework/v0.1.1-alpha.17/core/template/boilerplate/bundle → services/src/proxy}/controllers/setup.js +14 -14
  327. package/services/src/proxy/index.js +31 -0
  328. package/services/src/proxy/lib/domain/README.md +48 -0
  329. package/services/src/proxy/lib/domain/src/config/public_suffix_list.dat +14186 -0
  330. package/utils/helper.js +236 -185
  331. package/utils/prototypes.js +9 -9
  332. package/utils/prototypes.json_clone.js +31 -31
  333. package/doc/framework/cli/doc.json +0 -9
  334. package/doc/framework/index.md +0 -60
  335. package/framework/v0.1.1-alpha.17/VERSION +0 -1
  336. package/framework/v0.1.1-alpha.17/core/asset/js/plugin/dist/gina.js.map +0 -56
  337. package/framework/v0.1.1-alpha.17/core/asset/js/plugin/dist/gina.min.css +0 -1
  338. package/framework/v0.1.1-alpha.17/core/asset/js/plugin/dist/gina.min.css.map +0 -1
  339. package/framework/v0.1.1-alpha.17/core/asset/js/plugin/dist/gina.min.js +0 -736
  340. package/framework/v0.1.1-alpha.17/core/asset/js/plugin/dist/gina.min.js.map +0 -56
  341. package/framework/v0.1.1-alpha.17/core/asset/js/plugin/dist/gina.onload.min.js +0 -5
  342. package/framework/v0.1.1-alpha.17/core/asset/js/plugin/dist/gina.onload.min.js.map +0 -8
  343. package/framework/v0.1.1-alpha.17/core/connectors/couchbase/lib/connector.js +0 -20
  344. package/framework/v0.1.1-alpha.17/core/connectors/couchbase/lib/session-store.js +0 -21
  345. package/framework/v0.1.1-alpha.17/core/locales/dist/region/en.json +0 -9492
  346. package/framework/v0.1.1-alpha.17/core/locales/dist/region/fr.json +0 -9492
  347. package/framework/v0.1.1-alpha.17/core/locales/src/resources/region.mapping.json +0 -28
  348. package/framework/v0.1.1-alpha.17/core/template/boilerplate/bundle_templates/html/homepage.html +0 -4
  349. package/framework/v0.1.1-alpha.17/lib/cmd/bundle/arguments.json +0 -4
  350. package/framework/v0.1.1-alpha.17/lib/cmd/bundle/list.js +0 -129
  351. package/framework/v0.1.1-alpha.17/lib/cmd/framework/init.js +0 -514
  352. package/framework/v0.1.1-alpha.17/lib/cmd/framework/set.js +0 -161
  353. package/framework/v0.1.1-alpha.17/lib/cmd/framework/status.js +0 -72
  354. package/framework/v0.1.1-alpha.17/lib/cmd/framework/tail.js +0 -183
  355. package/framework/v0.1.1-alpha.17/lib/cmd/port/list.js +0 -176
  356. package/framework/v0.1.1-alpha.17/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,8 +86,14 @@ 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 ) {
91
+
92
+ if (/\-\-prefix/.test(process.argv[a])) {
93
+ continue;
94
+ }
95
+
96
+
204
97
  evar = ( (process.argv[a].replace(/--/, ''))
205
98
  .replace(/-/, '_') )
206
99
  .split(/=/);
@@ -254,6 +147,12 @@ function MainHelper(opt) {
254
147
  setContext('envVars', process['gina']);
255
148
  }
256
149
 
150
+ /**
151
+ * getEnvVar
152
+ * Will read from `process.gina` which is set mostly in `cli.js`
153
+ *
154
+ * @param {string} key
155
+ */
257
156
  getEnvVar = function(key) {
258
157
  if (
259
158
  typeof(process['gina']) != 'undefined' &&
@@ -269,6 +168,10 @@ function MainHelper(opt) {
269
168
  return process.gina
270
169
  }
271
170
 
171
+ getProtected = function() {
172
+ return self.protectedVars
173
+ }
174
+
272
175
  /**
273
176
  * Get log path - %SystemRoot%\system32\winevt\logs or /
274
177
  *
@@ -277,37 +180,74 @@ function MainHelper(opt) {
277
180
  getLogDir = function() {
278
181
  // Trying to retrieve original value if already defined
279
182
  var logDir = getEnvVar('GINA_LOGDIR') || null;
183
+ var logDirObj = null;
280
184
  if ( logDir ) {
281
- if ( !/gina$/.test(logDir) ) {
282
- logDir += ( isWin32() ) ? '\\gina' : '/gina'
185
+ logDirObj = new _(logDir, true);
186
+ if ( !logDirObj.existsSync() ) {
187
+ logDirObj.mkdirSync()
283
188
  }
284
189
  return logDir
285
190
  }
191
+
192
+ var prefix = getEnvVar('GINA_PREFIX') || self.prefix || self.defaultPrefix || execSync('npm config get prefix').toString().replace(/\n$/g, '');
193
+
286
194
  if ( isWin32() ) {
287
195
  logDir = process.env.LOG ||
288
196
  process.env.LOGS ||
289
197
  (process.env.SystemRoot || process.env.windir) + '\\System32\\Winevt\\Logs'
290
198
  ;
199
+
200
+ if ( !logDir || logDir == '' ) {
201
+ throw new Error('Log directory not defined or not found !');
202
+ }
203
+
204
+ logDirObj = new _(logDir);
205
+ if ( !logDirObj.isWritableSync() ) {
206
+ throw new Error('Log directory found but not writable: need permissions for `'+ logDir +'`');
207
+ }
208
+
291
209
  if ( !/gina$/.test(logDir) ) {
292
- logDir += '\\gina'
210
+ logDir += '\\gina';
211
+ logDirObj = new _(logDir);
293
212
  }
294
213
  } else {
295
214
  logDir = process.env.LOGDIR ||
296
215
  process.env.LOG ||
297
216
  process.env.LOGS ||
298
- '/usr/local/var/log'
217
+ prefix+'/var/log'
299
218
  ;
300
- if ( !/gina$/.test(logDir) ) {
301
- logDir += '/gina'
219
+ logDirObj = new _(logDir);
220
+ if ( new RegExp('^'+ prefix).test(logDir) && !new _(prefix).isWritableSync() ) {
221
+ logDir = getUserHome() +'/.gina/log';
222
+ logDirObj = new _(logDir);
223
+ if ( !logDirObj.existsSync() ) {
224
+ logDirObj.mkdirSync()
225
+ }
226
+
227
+ return logDir
302
228
  }
229
+
230
+ if ( new RegExp('^'+ prefix +'/var').test(logDir) && !new _(prefix +'/var').existsSync() ) {
231
+ fs.mkdirSync(prefix +'/var');
232
+ }
233
+
234
+ if ( !logDirObj.existsSync() ) {
235
+ logDirObj.mkdirSync();
236
+ }
237
+
238
+ if ( !/gina$/.test(logDir) && self.optionalPrefix != prefix ) {
239
+ logDir += '/gina';
240
+ logDirObj = new _(logDir);
241
+ }
242
+ }
243
+
244
+ if ( !logDirObj.existsSync() ) {
245
+ logDirObj.mkdirSync()
303
246
  }
304
-
247
+
305
248
  return logDir;
306
249
  }
307
250
 
308
- getProtected = function() {
309
- return self.protectedVars
310
- }
311
251
 
312
252
  /**
313
253
  * Get run\lock path
@@ -316,46 +256,157 @@ function MainHelper(opt) {
316
256
  getRunDir = function() {
317
257
  // Trying to retrieve original value if already defined
318
258
  var runDir = getEnvVar('GINA_RUNDIR') || null;
259
+ var runDirObj = null;
319
260
  if ( runDir ) {
320
- if ( !/gina$/.test(runDir) ) {
321
- runDir += ( isWin32() ) ? '\\gina' : '/gina'
261
+ runDirObj = new _(runDir, true);
262
+ if ( !runDirObj.existsSync() ) {
263
+ runDirObj.mkdirSync()
322
264
  }
323
265
  return runDir
324
266
  }
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 );
267
+
268
+ var prefix = getEnvVar('GINA_PREFIX') || self.prefix || self.defaultPrefix || execSync('npm config get prefix').toString().replace(/\n$/g, '');
269
+
270
+ runDir = (isWin32()) ? getUserHome() + '\\.gina\\run' : prefix + '/var/lock';
271
+
272
+ if ( !isWin32() && new RegExp('^'+ prefix).test(runDir) && !new _(prefix).isWritableSync() ) {
273
+ runDir = getUserHome() +'/.gina/run';
274
+ runDirObj = new _( runDir, true );
275
+ if ( !runDirObj.existsSync() ) {
276
+ runDirObj.mkdirSync()
277
+ }
278
+
279
+ return runDir
280
+ }
281
+
282
+
283
+ runDirObj = new _( runDir, true );
284
+ if ( runDirObj.existsSync() ) {
285
+ if ( !runDirObj.isWritableSync() ) {
286
+ throw new Error('location `'+ runDir +'` found but not writable !' )
287
+ }
288
+
289
+ runDir += ( isWin32() ) ? '' : '/gina';
290
+ runDirObj = new _( runDir, true );
291
+ if ( !runDirObj.existsSync() ) {
292
+ runDirObj.mkdirSync()
293
+ }
294
+
295
+ return runDir;
296
+ }
297
+
298
+ try {
299
+ if ( new RegExp('^'+ prefix +'/var').test(runDir) && !new _(prefix + '/var').existsSync() ) {
300
+ fs.mkdirSync(prefix +'/var');
301
+ }
302
+
303
+ runDir = prefix +'/var/run';//by default.
304
+ if ( !existsSync(runDir) ) {
305
+ fs.mkdirSync(runDir)
306
+ }
307
+ } catch (err) {
308
+ throw new Error('location error: `'+ runDir+'`\n'+ err.stack);
309
+ }
310
+
311
+ if (self.optionalPrefix != prefix) {
312
+ runDir += ( isWin32() ) ? '\\gina' : '/gina';
313
+ runDirObj = new _( runDir, true );
314
+ if ( !runDirObj.existsSync() ) {
315
+ fs.mkdirSync(runDir)
333
316
  }
334
- // by default
335
- return _('/usr/local/var/run/gina', true)//by default.
336
317
  }
318
+
319
+ return runDir;
337
320
  }
338
321
 
339
322
  getTmpDir = function() {
323
+
324
+ var dir = getEnvVar('GINA_TMPDIR') || null;
325
+ if (dir) {
326
+ dirObj = new _(dir, true);
327
+ if ( !dirObj.existsSync() ) {
328
+ dirObj.mkdirSync()
329
+ }
330
+ return dir
331
+ }
332
+
333
+ var prefix = getEnvVar('GINA_PREFIX') || self.prefix || self.defaultPrefix || execSync('npm config get prefix').toString().replace(/\n$/g, '');
334
+
340
335
  // support for node 0.10.x & 0.11.x
341
- var tmp = os.tmpdir || function() {
336
+ var tmp = (os.tmpdir) ? os.tmpdir : function() {
337
+ var tmpDir = null;
342
338
  if ( isWin32() ) {
343
- return process.env.TEMP ||
339
+ tmpDir = process.env.TEMP ||
344
340
  process.env.TMP ||
345
341
  (process.env.SystemRoot || process.env.windir) + '\\Temp'
346
342
  } else {
347
- return process.env.TMPDIR ||
343
+ tmpDir = process.env.TMPDIR ||
348
344
  process.env.TMP ||
349
345
  process.env.TEMP ||
350
- '/usr/local/var/tmp'
346
+ prefix+'/var/tmp'
347
+ ;
348
+
349
+ if ( new RegExp('^'+ prefix).test(tmpDir) && !isWritableSync(prefix) ) {
350
+ tmpDir = getUserHome() +'/.gina/tmp';
351
+ if ( !existsSync(tmpDir) ) {
352
+ fs.mkdirSync(tmpDir)
353
+ }
354
+ }
355
+
356
+ if ( new RegExp('^'+ prefix +'/var').test(tmpDir) && !existsSync(prefix +'/var') ) {
357
+ fs.mkdirSync(prefix +'/var');
358
+ }
359
+ }
360
+
361
+ var tmpDirObj = new _(tmpDir);
362
+ if ( !tmpDirObj.existsSync() ) {
363
+ tmpDirObj.mkdirSync();
351
364
  }
352
365
  };
353
366
 
354
- return ( typeof(tmp) == 'function') ? tmp() : tmp
367
+ return tmp()
355
368
  }
356
369
 
370
+ /**
371
+ * isWritableSync
372
+ * Only used for `getUserHome()`
373
+ *
374
+ * @param {string} path
375
+ */
376
+ var isWritableSync = function(path) {
377
+ var canWrite = false;
378
+ if ( typeof(fs.accessSync) != 'undefined' ) {
379
+ try {
380
+ fs.accessSync(path, fs.constants.W_OK);
381
+ canWrite = true;
382
+ } catch (err) {
383
+ canWrite = false;
384
+ }
385
+ } else { // support for old version of nodejs
386
+
387
+ try {
388
+ canWrite = (fs.statSync(path).mode & (fs.constants.S_IRUSR | fs.constants.S_IRGRP | fs.constants.S_IROTH));
389
+ } catch (err) {
390
+ canWrite = false
391
+ }
392
+ }
393
+
394
+ return canWrite
395
+ };
396
+
357
397
  getUserHome = function() {
358
- return process.env[(isWin32()) ? 'USERPROFILE' : 'HOME']
398
+ var homeDir = process.env[(isWin32()) ? 'USERPROFILE' : 'HOME'];
399
+
400
+ if ( !homeDir || homeDir == '' ) {
401
+ throw new Error('Home directory not defined or not found !');
402
+ }
403
+
404
+
405
+ if ( !isWritableSync(homeDir) ) {
406
+ throw new Error('Home directory found but not writable: need permissions for `'+ homeDir +'`');
407
+ }
408
+
409
+ return homeDir
359
410
  }
360
411
 
361
412
  getVendorsConfig = function(vendor) {
@@ -387,14 +438,14 @@ function MainHelper(opt) {
387
438
  }
388
439
  }
389
440
 
390
- setEnvVar = function(key, val, isProtected) {
441
+ setEnvVar = function(key, val, isProtected) {
391
442
  key = key.toUpperCase();
392
443
  var err = null
393
- // related task `framework:set` & framework/v.xxx/lib/cmd/framework/init.js
444
+ // related task `framework:set` & framework/v.xxx/lib/cmd/framework/init.js
394
445
  , specialCases = ['GINA_PORT', 'GINA_DEBUG_PORT', 'GINA_CULTURE', 'GINA_TIMEZONE']
395
446
  , isOverrrideAllowed = (specialCases.indexOf(key) > -1) ? true : false
396
447
  ;
397
-
448
+
398
449
  if (
399
450
  key.substr(0, 5) !== 'GINA_' &&
400
451
  key.substr(0, 7) !== 'VENDOR_' &&
@@ -418,10 +469,10 @@ function MainHelper(opt) {
418
469
  process['gina'] = {}
419
470
  }
420
471
  process['gina'][key] = val;
421
- if ( typeof(isProtected) != 'undefined' && isProtected == true) {
472
+ if ( typeof(isProtected) != 'undefined' && isProtected == true) {
422
473
  self.protectedVars.push(key)
423
- }
424
- }
474
+ }
475
+ }
425
476
  }
426
477
 
427
478
  defineDefault = function(obj) {
@@ -429,10 +480,10 @@ function MainHelper(opt) {
429
480
  define(c, obj[c])
430
481
  }
431
482
  delete obj
432
- }
483
+ }// jshint ignore:line
433
484
 
434
485
  init(opt)
435
486
 
436
- };
487
+ }
437
488
 
438
- module.exports = MainHelper()
489
+ 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/vendor/gina/js/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', {