gina 0.1.1-alpha.94 → 0.1.1-alpha.95

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 (281) hide show
  1. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/AUTHORS +0 -0
  2. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/LICENSE +0 -0
  3. package/framework/v0.1.1-alpha.95/VERSION +1 -0
  4. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/asset/html/nolayout.html +0 -0
  5. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/asset/html/static.html +0 -0
  6. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/asset/img/android-chrome-192x192.png +0 -0
  7. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/asset/img/android-chrome-512x512.png +0 -0
  8. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/asset/img/apple-touch-icon.png +0 -0
  9. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/asset/img/favicon-16x16.png +0 -0
  10. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/asset/img/favicon-32x32.png +0 -0
  11. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/asset/img/favicon.ico +0 -0
  12. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/asset/js/plugin/dist/gina.js +0 -0
  13. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/asset/js/plugin/dist/gina.js.map +0 -0
  14. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/asset/js/plugin/dist/gina.min.css +0 -0
  15. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/asset/js/plugin/dist/gina.min.css.map +0 -0
  16. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/asset/js/plugin/dist/gina.min.js +0 -0
  17. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/asset/js/plugin/dist/gina.min.js.map +0 -0
  18. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/asset/js/plugin/dist/gina.onload.min.js +0 -0
  19. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/asset/js/plugin/dist/gina.onload.min.js.map +0 -0
  20. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/asset/js/plugin/readme.md +0 -0
  21. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/asset/js/plugin/uuid.json +0 -0
  22. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/config.js +0 -0
  23. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/connectors/couchbase/index.js +0 -0
  24. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/connectors/couchbase/lib/connector.js +0 -0
  25. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/connectors/couchbase/lib/connector.v2.js +0 -0
  26. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/connectors/couchbase/lib/connector.v3.js +0 -0
  27. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/connectors/couchbase/lib/n1ql.js +0 -0
  28. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/connectors/couchbase/lib/session-store.js +0 -0
  29. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/connectors/couchbase/lib/session-store.v2.js +0 -0
  30. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/connectors/couchbase/lib/session-store.v3.js +0 -0
  31. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/controller/controller.framework.js +0 -0
  32. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/controller/controller.js +0 -0
  33. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/controller/index.js +0 -0
  34. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/deps/busboy/.travis.yml +0 -0
  35. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/deps/busboy/LICENSE +0 -0
  36. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/deps/busboy/README.md +0 -0
  37. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/deps/busboy/deps/encoding/encoding-indexes.js +0 -0
  38. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/deps/busboy/deps/encoding/encoding.js +0 -0
  39. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/deps/busboy/lib/main.js +0 -0
  40. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/deps/busboy/lib/types/multipart.js +0 -0
  41. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/deps/busboy/lib/types/urlencoded.js +0 -0
  42. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/deps/busboy/lib/utils.js +0 -0
  43. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/deps/busboy/package.json +0 -0
  44. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/deps/swig-client/swig-2.0.0.min.js +0 -0
  45. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/dev/index.js +0 -0
  46. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/dev/lib/class.js +0 -0
  47. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/dev/lib/factory.js +0 -0
  48. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/dev/lib/tools.js +0 -0
  49. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/gna.js +0 -0
  50. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/locales/README.md +0 -0
  51. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/locales/currency.json +0 -0
  52. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/locales/dist/language/en.json +0 -0
  53. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/locales/dist/language/fr.json +0 -0
  54. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/locales/dist/region/en.json +0 -0
  55. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/locales/dist/region/fr.json +0 -0
  56. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/locales/index.js +0 -0
  57. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/locales/src/make.js +0 -0
  58. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/locales/src/resources/currency.csv +0 -0
  59. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/locales/src/resources/region.csv +0 -0
  60. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/locales/src/resources/region.mapping.json +0 -0
  61. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/mime.types +0 -0
  62. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/model/entity.js +0 -0
  63. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/model/index.js +0 -0
  64. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/model/template/entityFactory.js +0 -0
  65. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/model/template/index.js +0 -0
  66. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/plugins/README.md +0 -0
  67. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/plugins/index.js +0 -0
  68. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/plugins/lib/file/README.md +0 -0
  69. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/plugins/lib/file/build.json +0 -0
  70. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/plugins/lib/file/package.json +0 -0
  71. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/plugins/lib/intl/README.md +0 -0
  72. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/plugins/lib/intl/build.json +0 -0
  73. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/plugins/lib/intl/package.json +0 -0
  74. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/plugins/lib/intl/src/main.js +0 -0
  75. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/plugins/lib/storage/README.md +0 -0
  76. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/plugins/lib/storage/build.json +0 -0
  77. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/plugins/lib/storage/package.json +0 -0
  78. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/plugins/lib/storage/src/main.js +0 -0
  79. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/plugins/lib/validator/README.md +0 -0
  80. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/plugins/lib/validator/build.json +0 -0
  81. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/plugins/lib/validator/package.json +0 -0
  82. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/plugins/lib/validator/src/form-validator.js +0 -0
  83. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/plugins/lib/validator/src/main.js +0 -0
  84. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/router.js +0 -0
  85. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/server.express.js +0 -0
  86. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/server.isaac.js +0 -0
  87. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/server.js +0 -0
  88. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/status.codes +0 -0
  89. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/template/boilerplate/bundle/config/app.json +0 -0
  90. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/template/boilerplate/bundle/config/routing.json +0 -0
  91. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/template/boilerplate/bundle/config/settings.json +0 -0
  92. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/template/boilerplate/bundle/config/settings.server.json +0 -0
  93. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/template/boilerplate/bundle/config/templates.json +0 -0
  94. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/template/boilerplate/bundle/controllers/controller.content.js +0 -0
  95. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/template/boilerplate/bundle/controllers/controller.js +0 -0
  96. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/template/boilerplate/bundle/controllers/setup.js +0 -0
  97. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/template/boilerplate/bundle/index.js +0 -0
  98. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/template/boilerplate/bundle_namespace/controllers/controller.js +0 -0
  99. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/template/boilerplate/bundle_public/css/default.css +0 -0
  100. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/template/boilerplate/bundle_public/css/vendor/readme.md +0 -0
  101. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/template/boilerplate/bundle_public/favicon.ico +0 -0
  102. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/template/boilerplate/bundle_public/js/vendor/readme.md +0 -0
  103. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/template/boilerplate/bundle_public/readme.md +0 -0
  104. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/template/boilerplate/bundle_templates/handlers/main.js +0 -0
  105. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/template/boilerplate/bundle_templates/html/homepage.html +0 -0
  106. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/template/boilerplate/bundle_templates/html/layout/main.html +0 -0
  107. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/template/command/gina.bat.tpl +0 -0
  108. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/template/command/gina.tpl +0 -0
  109. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/template/conf/env.json +0 -0
  110. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/template/conf/manifest.json +0 -0
  111. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/template/conf/package.json +0 -0
  112. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/template/conf/settings.json +0 -0
  113. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/template/conf/statics.json +0 -0
  114. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/template/conf/templates.json +0 -0
  115. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/template/error/client/json/401.json +0 -0
  116. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/template/error/client/json/403.json +0 -0
  117. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/template/error/client/json/404.json +0 -0
  118. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/template/error/server/html/50x.html +0 -0
  119. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/template/error/server/json/500.json +0 -0
  120. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/template/error/server/json/503.json +0 -0
  121. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/core/template/extensions/logger/config.json +0 -0
  122. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/helpers/console.js +0 -0
  123. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/helpers/context.js +0 -0
  124. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/helpers/dateFormat.js +0 -0
  125. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/helpers/index.js +0 -0
  126. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/helpers/json/README.md +0 -0
  127. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/helpers/json/package.json +0 -0
  128. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/helpers/json/src/main.js +0 -0
  129. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/helpers/path.js +81 -76
  130. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/helpers/plugins/README.md +0 -0
  131. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/helpers/plugins/package.json +0 -0
  132. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/helpers/plugins/src/api-error.js +0 -0
  133. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/helpers/plugins/src/main.js +0 -0
  134. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/helpers/prototypes.js +0 -0
  135. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/helpers/task.js +0 -0
  136. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/helpers/text.js +0 -0
  137. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/archiver/README.md +0 -0
  138. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/archiver/build.json +0 -0
  139. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/archiver/package.json +0 -0
  140. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/archiver/src/dep/jszip.min.js +0 -0
  141. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/archiver/src/main.js +0 -0
  142. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/aliases.json +0 -0
  143. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/bundle/add.js +0 -0
  144. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/bundle/arguments.json +0 -0
  145. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/bundle/copy.js +0 -0
  146. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/bundle/cp.js +0 -0
  147. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/bundle/help.js +0 -0
  148. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/bundle/help.txt +0 -0
  149. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/bundle/list.js +0 -0
  150. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/bundle/remove.js +0 -0
  151. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/bundle/rename.js +0 -0
  152. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/bundle/restart.js +0 -0
  153. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/bundle/rm.js +0 -0
  154. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/bundle/start.js +0 -0
  155. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/bundle/status.js +0 -0
  156. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/bundle/stop.js +0 -0
  157. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/env/add.js +0 -0
  158. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/env/get.js +0 -0
  159. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/env/help.js +0 -0
  160. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/env/help.txt +0 -0
  161. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/env/link-dev.js +0 -0
  162. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/env/list.js +0 -0
  163. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/env/remove.js +0 -0
  164. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/env/rm.js +0 -0
  165. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/env/set.js +0 -0
  166. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/env/unset.js +0 -0
  167. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/env/use.js +0 -0
  168. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/framework/dot.js +0 -0
  169. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/framework/get.js +0 -0
  170. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/framework/help.js +0 -0
  171. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/framework/help.txt +0 -0
  172. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/framework/init.js +1 -1
  173. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/framework/msg.json +0 -0
  174. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/framework/open.js +0 -0
  175. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/framework/restart.js +0 -0
  176. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/framework/set.js +0 -0
  177. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/framework/start.js +0 -0
  178. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/framework/status.js +0 -0
  179. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/framework/stop.js +0 -0
  180. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/framework/tail.js +0 -0
  181. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/framework/update.js +0 -0
  182. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/framework/version.js +0 -0
  183. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/gina-dev.1.md +0 -0
  184. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/gina-framework.1.md +0 -0
  185. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/gina.1.md +0 -0
  186. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/helper.js +0 -0
  187. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/index.js +0 -0
  188. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/msg.json +0 -0
  189. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/port/help.js +0 -0
  190. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/port/help.txt +0 -0
  191. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/port/inc/scan.js +0 -0
  192. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/port/list.js +0 -0
  193. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/port/set.js +0 -0
  194. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/project/add.js +0 -0
  195. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/project/arguments.json +0 -0
  196. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/project/build.js +0 -0
  197. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/project/help.js +0 -0
  198. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/project/help.txt +0 -0
  199. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/project/import.js +0 -0
  200. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/project/list.js +0 -0
  201. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/project/move.js +0 -0
  202. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/project/remove.js +0 -0
  203. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/project/rename.js +0 -0
  204. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/project/restart.js +0 -0
  205. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/project/rm.js +0 -0
  206. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/project/start.js +0 -0
  207. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/project/status.js +0 -0
  208. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/project/stop.js +0 -0
  209. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/protocol/help.js +0 -0
  210. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/protocol/help.txt +0 -0
  211. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/protocol/list.js +0 -0
  212. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/protocol/set.js +0 -0
  213. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/scope/help.js +0 -0
  214. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/scope/help.txt +0 -0
  215. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/scope/link-local.js +0 -0
  216. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/scope/list.js +0 -0
  217. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/scope/remove.js +0 -0
  218. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/scope/rm.js +0 -0
  219. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/scope/set.js +0 -0
  220. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/scope/unset.js +0 -0
  221. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/scope/use.js +0 -0
  222. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cmd/view/add.js +0 -0
  223. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/collection/README.md +0 -0
  224. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/collection/build.json +0 -0
  225. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/collection/package.json +0 -0
  226. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/collection/src/main.js +0 -0
  227. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/config.js +0 -0
  228. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cron/README.md +0 -0
  229. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cron/package.json +0 -0
  230. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/cron/src/main.js +0 -0
  231. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/generator/index.js +0 -0
  232. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/index.js +0 -0
  233. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/inherits/LICENSE +0 -0
  234. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/inherits/README.md +0 -0
  235. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/inherits/example/inheriting_eventemitter.js +0 -0
  236. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/inherits/example/protected_inheritance.js +0 -0
  237. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/inherits/example/simple_inheritance.js +0 -0
  238. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/inherits/example/super_attribute_overridden_by_child_on_init.js +0 -0
  239. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/inherits/package.json +0 -0
  240. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/inherits/src/main.js +0 -0
  241. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/logger/README.md +0 -0
  242. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/logger/package.json +0 -0
  243. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/logger/src/containers/default/index.js +0 -0
  244. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/logger/src/containers/file/index.js +0 -0
  245. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/logger/src/containers/file/lib/logrotator/README.md +0 -0
  246. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/logger/src/containers/file/lib/logrotator/index.js +0 -0
  247. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/logger/src/containers/mq/index.js +0 -0
  248. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/logger/src/containers/mq/listener.js +0 -0
  249. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/logger/src/containers/mq/speaker.js +0 -0
  250. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/logger/src/helper.js +0 -0
  251. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/logger/src/main.js +0 -0
  252. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/math/index.js +0 -0
  253. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/merge/README.md +0 -0
  254. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/merge/example/merge.js +0 -0
  255. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/merge/example/merge_2_literal objects.js +0 -0
  256. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/merge/example/merge_and_preserve_first.js +0 -0
  257. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/merge/package.json +0 -0
  258. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/merge/src/main.js +0 -0
  259. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/model.js +0 -0
  260. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/proc.js +0 -0
  261. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/routing/README.md +0 -0
  262. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/routing/build.json +0 -0
  263. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/routing/package.json +0 -0
  264. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/routing/src/main.js +0 -0
  265. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/session-store.js +0 -0
  266. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/shell.js +0 -0
  267. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/swig-filters/README.md +0 -0
  268. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/swig-filters/package.json +0 -0
  269. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/swig-filters/src/main.js +0 -0
  270. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/url/README.md +0 -0
  271. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/url/index.js +0 -0
  272. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/url/mocks.json +0 -0
  273. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/url/routing.json +0 -0
  274. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/url/test.js +0 -0
  275. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/lib/validator.js +0 -0
  276. package/framework/{v0.1.1-alpha.94 → v0.1.1-alpha.95}/package.json +0 -0
  277. package/package.json +5 -6
  278. package/script/post_install.js +256 -83
  279. package/script/pre_install.js +322 -265
  280. package/utils/helper.js +25 -9
  281. package/framework/v0.1.1-alpha.94/VERSION +0 -1
@@ -1,5 +1,5 @@
1
1
  /**
2
- * This file is part of the gina package.
2
+ * This file is part of the gina pkg.
3
3
  * Copyright (c) 2017 Rhinostone <contact@gina.io>
4
4
  *
5
5
  * For the full copyright and license information, please view the LICENSE
@@ -15,223 +15,6 @@ var { execSync } = require('child_process');
15
15
  //var lib = require('./lib');
16
16
  // var console = lib.logger;
17
17
  var lib = null;
18
- var isWin32 = function() {
19
- return (process.platform === 'win32') ? true : false;
20
- };
21
- var existsSync = function(path) {
22
- if ( typeof(fs.accessSync) != 'undefined' ) {
23
- try {
24
- fs.accessSync(path, fs.constants.F_OK);
25
- return true;
26
- } catch (err) {
27
- return false;
28
- }
29
- } else { // support for old version of nodejs
30
- return fs.existsSync(path);
31
- }
32
- }
33
-
34
- var isWritableSync = function(path) {
35
- var canWrite = false;
36
- if ( typeof(fs.accessSync) != 'undefined' ) {
37
- try {
38
- fs.accessSync(path, fs.constants.W_OK);
39
- canWrite = true;
40
- } catch (err) {
41
- canWrite = false;
42
- }
43
- } else { // support for old version of nodejs
44
-
45
- try {
46
- canWrite = (fs.statSync(path).mode & (fs.constants.S_IRUSR | fs.constants.S_IRGRP | fs.constants.S_IROTH));
47
- } catch (err) {
48
- canWrite = false
49
- }
50
- }
51
-
52
- return canWrite
53
- };
54
-
55
- /**
56
- * Get run\lock path
57
- * @returns {string} rundir
58
- * */
59
- var getRunDir = function(prefix) {
60
- if ( !prefix || typeof(prefix) == 'undefined' || prefix == '' ) {
61
- prefix = '/usr/local'
62
- }
63
- // Trying to retrieve original value if already defined
64
- // Means `/usr/local/var/lock` or `/usr/local/var/run` by default.
65
- var runDir = (isWin32()) ? getUserHome() + '\\.gina\\run' : prefix+'/var/lock';
66
-
67
- if ( !isWin32() && new RegExp('^'+ prefix).test(runDir) && !isWritableSync(prefix) ) {
68
- runDir = getUserHome() +'/.gina/run';
69
- if ( !existsSync(runDir) ) {
70
- fs.mkdirSync(runDir)
71
- }
72
-
73
- return runDir
74
- }
75
-
76
- if ( existsSync(runDir) ) {
77
- if ( !isWritableSync(runDir) ) {
78
- throw new Error('location `'+ runDir +'` found but not writable !' )
79
- }
80
-
81
- runDir += ( isWin32() ) ? '' : '/gina'
82
- if ( !existsSync(runDir) ) {
83
- fs.mkdirSync(runDir)
84
- }
85
-
86
- return runDir;
87
- }
88
-
89
- try {
90
- //by default.
91
- runDir = prefix+'/var';
92
- if ( !existsSync(runDir) ) {
93
- fs.mkdirSync(runDir)
94
- }
95
- runDir += '/run';
96
- if ( !existsSync(runDir) ) {
97
- fs.mkdirSync(runDir)
98
- }
99
- } catch (err) {
100
- throw new Error('location error: `'+ runDir+'`\n'+ err.stack);
101
- }
102
-
103
- runDir += ( isWin32() ) ? '\\gina' : '/gina'
104
- if ( !existsSync(runDir) ) {
105
- fs.mkdirSync(runDir)
106
- }
107
-
108
- return runDir;
109
- };
110
-
111
- var getTmpDir = function(prefix) {
112
- if ( !prefix || typeof(prefix) == 'undefined' || prefix == '' ) {
113
- prefix = '/usr/local'
114
- }
115
- // support for node 0.10.x & 0.11.x
116
- var tmp = (os.tmpdir) ? os.tmpdir : function() {
117
- var tmpDir = null;
118
- if ( isWin32() ) {
119
- tmpDir = process.env.TEMP ||
120
- process.env.TMP ||
121
- (process.env.SystemRoot || process.env.windir) + '\\Temp'
122
- ;
123
- } else {
124
- tmpDir = process.env.TMPDIR ||
125
- process.env.TMP ||
126
- process.env.TEMP ||
127
- prefix+'/var/tmp'
128
- ;
129
-
130
- if ( new RegExp('^'+ prefix).test(tmpDir) && !isWritableSync(prefix) ) {
131
- tmpDir = getUserHome() +'/.gina/tmp';
132
- if ( !existsSync(tmpDir) ) {
133
- fs.mkdirSync(tmpDir)
134
- }
135
- }
136
-
137
- if ( new RegExp('^'+ prefix +'/var').test(tmpDir) && !existsSync(prefix+'/var') ) {
138
- fs.mkdirSync(prefix+'/var');
139
- }
140
- }
141
-
142
- if ( !existsSync(tmpDir) ) {
143
- fs.mkdirSync(tmpDir);
144
- }
145
-
146
- return tmpDir
147
- };
148
-
149
- return tmp()
150
- };
151
-
152
- /**
153
- * Get log path - %SystemRoot%\system32\winevt\logs or /
154
- *
155
- * @returns {string} logPath
156
- * */
157
- var getLogDir = function(prefix) {
158
- if ( !prefix || typeof(prefix) == 'undefined' || prefix == '' ) {
159
- prefix = '/usr/local'
160
- }
161
- // Trying to retrieve original value if already defined
162
- var logDir = null;
163
-
164
- if ( isWin32() ) {
165
- logDir = process.env.LOG ||
166
- process.env.LOGS ||
167
- (process.env.SystemRoot || process.env.windir) + '\\System32\\Winevt\\Logs'
168
- ;
169
-
170
- if ( !logDir || logDir == '' ) {
171
- throw new Error('Log directory not defined or not found !');
172
- }
173
-
174
- if ( !isWritableSync(logDir) ) {
175
- throw new Error('Log directory found but not writable: need permissions for `'+ logDir +'`');
176
- }
177
-
178
- if ( !/gina$/.test(logDir) ) {
179
- logDir += '\\gina'
180
- }
181
- } else {
182
- logDir = process.env.LOGDIR ||
183
- process.env.LOG ||
184
- process.env.LOGS ||
185
- prefix+'/var/log'
186
- ;
187
-
188
- if ( new RegExp('^'+ prefix).test(logDir) && !isWritableSync(prefix) ) {
189
- logDir = getUserHome() +'/.gina/log';
190
- if ( !existsSync(logDir) ) {
191
- fs.mkdirSync(logDir)
192
- }
193
-
194
- return logDir
195
- }
196
-
197
- if ( new RegExp('^'+ prefix +'/var').test(logDir) && !existsSync(prefix+'/var') ) {
198
- fs.mkdirSync(prefix+'/var');
199
- }
200
-
201
- if ( !existsSync(logDir) ) {
202
- fs.mkdirSync(logDir);
203
- }
204
-
205
- if ( !/gina$/.test(logDir) ) {
206
- logDir += '/gina'
207
- }
208
- }
209
-
210
- if ( !existsSync(logDir) ) {
211
- fs.mkdirSync(logDir)
212
- }
213
-
214
- return logDir;
215
- };
216
-
217
- var getUserHome = function() {
218
- var home = os.homedir ? os.homedir : function() {
219
- var homeDir = process.env[(isWin32()) ? 'USERPROFILE' : 'HOME'];
220
-
221
- if ( !homeDir || homeDir == '' ) {
222
- throw new Error('Home directory not defined or not found !');
223
- }
224
-
225
- if ( !isWritableSync(homeDir) ) {
226
- throw new Error('Home directory found but not writable: need permissions for `'+ homeDir +'`');
227
- }
228
-
229
- return homeDir;
230
- };
231
-
232
- return home()
233
- };
234
-
235
18
  var helpers = null;
236
19
 
237
20
  /**
@@ -248,17 +31,31 @@ var helpers = null;
248
31
  function PreInstall() {
249
32
  var self = {};
250
33
 
251
- var init = function() {
34
+ var configure = function() {
35
+
36
+ // TODO - handle windows case
37
+ if ( /^true$/i.test(isWin32()) ) {
38
+ throw new Error('Windows in not yet fully supported. Thank you for your patience');
39
+ }
40
+
41
+ self.isWin32 = isWin32();
42
+ self.isGlobalInstall = process.env.npm_config_global || false;
43
+ self.isResetNeeded = process.env.npm_config_reset || false;
44
+ self.defaultPrefix = execSync('npm config get prefix').toString().replace(/\n$/g, '');
45
+ var pkg = null;
46
+ try {
47
+ pkg = execSync('npm list -g gina --long --json').toString().replace(/\n$/g, '');
48
+ } catch(err) {
49
+ throw err
50
+ }
51
+ self.optionalPrefix = JSON.parse(pkg).dependencies.gina.config.optionalPrefix.replace(/^\~/, getUserHome());
52
+ // self.optionalPrefix = getUserHome()+'/.npm-global';
252
53
 
253
- self.isGlobalInstall = process.env.npm_config_global || false;
254
- self.isResetNeeded = process.env.npm_config_reset || false;
255
- self.isGinaInstall = false;
256
- self.defaultPrefix = execSync('npm config get prefix').toString().replace(/\n/g, '');
257
- self.optionalPrefix = '~/.npm-global';
258
54
  // `process.env.npm_config_prefix` is only retrieved on `npm install gina`
259
- self.prefix = process.env.npm_config_prefix || self.defaultPrefix;
260
- // self.prefix =
261
- self.isCustomPrefix = false;
55
+ // and it should always be equal to `self.defaultPrefix`
56
+ self.prefix = process.env.npm_config_prefix || self.defaultPrefix;
57
+ self.isCustomPrefix = false;
58
+ self.isGinaInstalled = false;
262
59
 
263
60
  // Overriding thru passed arguments
264
61
  var args = process.argv, i = 0, len = args.length;
@@ -276,23 +73,38 @@ function PreInstall() {
276
73
  if ( /^\-\-prefix\=/.test(args[i] ) ) {
277
74
  self.isCustomPrefix = true;
278
75
  self.prefix = args[i].split(/\=/)[1];
76
+ self.prefix = self.prefix.replace(/^\~/, getUserHome());
279
77
  continue;
280
78
  }
281
79
  }
282
80
 
283
81
  // For local install
82
+ console.debug('self.isGlobalInstall => '+ self.isGlobalInstall);
284
83
  if ( !self.isGlobalInstall ) {
285
- console.warn('local installation is not fully supported for this at the moment.');
286
- console.warn('please use `npm install -g gina`\nor\nif you are trying to link gina to your project, use `npm link gina` if Gina has already been installed\n');
84
+ console.warn('Local installation is not fully supported at the moment.');
85
+ console.warn('You are encouraged to use `npm install -g gina`\nor, if you are trying to link gina to your project, use `npm link gina` if Gina has already been installed globally\n');
287
86
  // Just in case someone is trying to run pre_install from the `gina` module
288
87
  if (!/node\_modules(\\\\|\/)gina$/.test(process.cwd())) {
289
88
  self.prefix = process.cwd();
290
89
  }
291
90
  }
292
- // process.env.npm_config_prefix = self.prefix;
293
91
 
294
- if ( !isWritableSync(self.prefix) ) {
295
- console.warn('Prefix `'+ self.prefix +'` does not have sufficient permissions. Switching to `--prefix='+ self.optionalPrefix +'`');
92
+ // checking permission
93
+ var hasPermissionsForBin = isWritableSync(self.prefix + ( isWin32() ? '\\' : '/' ) + 'bin');
94
+ var hasPermissionsForLib = isWritableSync(self.prefix + ( isWin32() ? '\\' : '/' ) + 'lib');
95
+ var hasPermissionsForVar = isWritableSync(self.prefix + ( isWin32() ? '\\' : '/' ) + 'var');
96
+ if ( !hasPermissionsForBin || !hasPermissionsForLib || !hasPermissionsForVar) {
97
+ if (!hasPermissionsForBin) {
98
+ console.warn('Path not accessible or missing: '+ self.prefix + ( isWin32() ? '\\' : '/' ) + 'bin')
99
+ }
100
+ if (!hasPermissionsForLib) {
101
+ console.warn('Path not accessible or missing: '+ self.prefix + ( isWin32() ? '\\' : '/' ) + 'lib')
102
+ }
103
+ if (!hasPermissionsForVar) {
104
+ console.warn('Path not accessible or missing: '+ self.prefix + ( isWin32() ? '\\' : '/' ) + 'var')
105
+ }
106
+
107
+ console.warn('You do not have sufficient permissions. Switching to `--prefix='+ self.optionalPrefix +'`');
296
108
  process.env.npm_config_prefix = self.prefix = self.optionalPrefix;
297
109
  }
298
110
 
@@ -300,20 +112,47 @@ function PreInstall() {
300
112
  self.isCustomPrefix = true;
301
113
  }
302
114
 
115
+ self.gina = __dirname +'/..';
116
+ // tying to figure out if gina is already install the given prefix
117
+ // var hasFoundGina = execSync('npm list -g gina --long --json').toString().replace(/\n$/g, '');
118
+ var hasFoundGina = pkg;
119
+ try {
120
+ hasFoundGina = JSON.parse(hasFoundGina);
121
+ if ( hasFoundGina.dependencies && typeof(hasFoundGina.dependencies.gina) != 'undefined' ) {
122
+ self.isGinaInstalled = true;
123
+ self.versionPath = self.gina;
124
+ self.versionPath += (isWin32()) ? '\\framework\\' : '/framework/';
125
+ self.versionPath += 'v'+ hasFoundGina.dependencies.gina.version;
126
+
127
+ console.debug('Install path => '+ hasFoundGina.dependencies.gina.path);
128
+
129
+ // OK ... found installed gina but on a different prefix
130
+ // In this case, let's assume that it is not really installed
131
+ if ( !new RegExp('^'+ self.prefix).test(hasFoundGina.dependencies.gina.path) ) {
132
+ self.isGinaInstalled = false;
133
+ }
134
+ }
135
+ } catch (err) {}
136
+
303
137
  console.debug('self.defaultPrefix => '+ self.defaultPrefix);
304
138
  console.debug('self.optionalPrefix => '+ self.optionalPrefix );
305
139
  console.debug('self.prefix => '+ self.prefix);
140
+ console.debug('self.isCustomPrefix => ', self.isCustomPrefix);
141
+ // only available when running the script with NPM
306
142
  console.debug('process.env.npm_config_prefix => '+ process.env.npm_config_prefix);
143
+ }
144
+
145
+ var init = function() {
146
+
147
+ configure();
307
148
 
308
149
  begin(0);
309
- // TODO check old framework version to be archived
310
150
  }
311
151
 
312
152
  /**
313
153
  * Bebin - Will run checking tasks in order of declaration
314
154
  * */
315
155
  var begin = async function(i) {
316
- //console.debug('i is ', i);
317
156
  var n = 0, funct = null, functName = null;
318
157
  for (let t in self) {
319
158
  if ( typeof(self[t]) == 'function') {
@@ -340,10 +179,6 @@ function PreInstall() {
340
179
 
341
180
 
342
181
  self.checkRequirements = async function(done) {
343
- // TODO - handle windows case
344
- if ( /^true$/i.test(isWin32()) ) {
345
- return done( new Error('Windows in not yet fully supported. Thank you for your patience'));
346
- }
347
182
 
348
183
  var ginaHome = getUserHome() + ( isWin32() ? '\\.gina' : '/.gina' );
349
184
  if ( self.isResetNeeded && existsSync(ginaHome) ) {
@@ -353,28 +188,23 @@ function PreInstall() {
353
188
 
354
189
  // Let's temporarily install `colors` into `GINA_DIR` it will be removed by the `post_install.js` script
355
190
  var initialDir = process.cwd();
356
- var frameworkPath = __dirname +'/..';
357
- if ( !fs.existsSync(frameworkPath +'/node_modules/colors') ) {
358
- process.chdir(frameworkPath);
191
+
192
+ if ( !fs.existsSync(self.gina +'/node_modules/colors') ) {
193
+ process.chdir(self.gina);
194
+
359
195
  var oldConfigGlobal = process.env.npm_config_global;
360
196
  process.env.npm_config_global=false;
361
197
  var cmd = ( isWin32() ) ? 'npm.cmd install colors@1.4.0' : 'npm install colors@1.4.0';
362
198
  execSync(cmd);
363
- process.chdir(initialDir);
364
199
  process.env.npm_config_global=oldConfigGlobal;
365
- }
366
200
 
367
-
368
- if ( !fs.existsSync(frameworkPath +'/node_modules/gina') ) {
369
- return done();
201
+ process.chdir(initialDir);
370
202
  }
371
203
 
372
- self.isWin32 = isWin32();
373
204
 
374
205
 
375
206
  console.debug('framework path: ' + self.gina);
376
- console.debug('framework version path: ' + self.path);
377
- console.debug('cwd path: ' + self.root );
207
+ console.debug('framework version path: ' + self.versionPath);
378
208
  console.debug('Is this a global install: '+ self.isGlobalInstall);
379
209
 
380
210
  done();
@@ -437,7 +267,7 @@ function PreInstall() {
437
267
  // }
438
268
  // // from `/usr/local` -> `~/.npm-global`
439
269
  // var cmd = 'npm config set prefix '+ getUserHome() +'/.npm-global';
440
- // await promisify(run)(cmd, { cwd: _(self.path), tmp: _(self.root +'/tmp'), outToProcessSTD: true })
270
+ // await promisify(run)(cmd, { cwd: _(self.path), tmp: getTmpDir(self.prefix);, outToProcessSTD: true })
441
271
  // .catch(function onError(err){
442
272
  // if (err) {
443
273
  // console.warn('try to run: sudo ' + cmd);
@@ -449,7 +279,7 @@ function PreInstall() {
449
279
  // var profilePathObj = new _(profilePath);
450
280
  // if ( !profilePathObj.existsSync() ) {
451
281
  // cmd = 'touch '+ profilePath;
452
- // await promisify(run)(cmd, { cwd: _(self.path), tmp: _(self.root +'/tmp'), outToProcessSTD: true })
282
+ // await promisify(run)(cmd, { cwd: _(self.path), tmp: getTmpDir(self.prefix);, outToProcessSTD: true })
453
283
  // .catch(function onError(err){
454
284
  // if (err) {
455
285
  // console.warn('try to run: sudo ' + cmd);
@@ -490,8 +320,8 @@ function PreInstall() {
490
320
 
491
321
  self.checkIfGinaIsAlreadyInstalled = async function(done) {
492
322
 
493
- console.debug('Checking if Gina is already installed: '+ self.isGinaInstall);
494
- if (!self.isGinaInstall) {
323
+ console.debug('Checking if Gina is already installed for prefix `'+ self.prefix+'`: '+ self.isGinaInstalled);
324
+ if (!self.isGinaInstalled) {
495
325
  return done();
496
326
  }
497
327
 
@@ -505,24 +335,30 @@ function PreInstall() {
505
335
  return done();
506
336
  }
507
337
 
508
- var frameworkPath = __dirname +'/..';
509
- helpers = require(frameworkPath+ '/utils/helpers');
510
- lib = require('./lib');
338
+ var frameworkPath = self.versionPath;
339
+ try {
340
+ helpers = require(self.gina+ '/utils/helper');
341
+ lib = require('./lib');
342
+ console = lib.logger;
343
+ } catch (err) {
344
+ throw err
345
+ }
346
+
511
347
 
512
- console = lib.logger;
513
- self.path = getEnvVar('GINA_FRAMEWORK');
514
- self.gina = getEnvVar('GINA_DIR');
515
- self.root = self.gina; // by default
348
+
349
+ // root
350
+ // self.gina = getEnvVar('GINA_DIR');
351
+ // self.versionPath = getEnvVar('GINA_FRAMEWORK');
516
352
 
517
353
  // check if framework version folder is found
518
- var versionsFolders = null, frameworkPath = null;
354
+ var versionsFolders = null, frameworkFolder = null;
519
355
  try {
520
- frameworkPath = _(self.root +'/framework', true);
521
- console.info('frameworkPath: ', frameworkPath);
522
- if ( !new _(frameworkPath).existsSync() ) {
356
+ frameworkFolder = _(self.gina +'/framework', true);
357
+ console.debug('frameworkFolder: ', frameworkFolder);
358
+ if ( !existsSync(frameworkFolder) ) {
523
359
  return done();
524
360
  }
525
- versionsFolders = fs.readdirSync(frameworkPath);
361
+ versionsFolders = fs.readdirSync(frameworkFolder);
526
362
  } catch (err) {
527
363
  // do nothing
528
364
  }
@@ -581,6 +417,227 @@ function PreInstall() {
581
417
  done()
582
418
  }
583
419
 
420
+ var isWin32 = function() {
421
+ return (process.platform === 'win32') ? true : false;
422
+ };
423
+
424
+ var existsSync = function(path) {
425
+ if ( fs.accessSync && typeof(fs.accessSync) != 'undefined' ) {
426
+ try {
427
+ fs.accessSync(path, fs.constants.F_OK);
428
+ return true;
429
+ } catch (err) {
430
+ return false;
431
+ }
432
+ } else { // support for old version of nodejs
433
+ return fs.existsSync(path);
434
+ }
435
+ }
436
+
437
+ var isWritableSync = function(path) {
438
+ var canWrite = false;
439
+ if ( fs.accessSync && typeof(fs.accessSync) != 'undefined' ) {
440
+ try {
441
+ fs.accessSync(path, fs.constants.W_OK);
442
+ canWrite = true;
443
+ } catch (err) {
444
+ canWrite = false;
445
+ }
446
+ } else { // support for old version of nodejs
447
+
448
+ try {
449
+ canWrite = (fs.statSync(path).mode & (fs.constants.S_IRUSR | fs.constants.S_IRGRP | fs.constants.S_IROTH));
450
+ } catch (err) {
451
+ canWrite = false
452
+ }
453
+ }
454
+
455
+ return canWrite
456
+ };
457
+
458
+ /**
459
+ * Get run\lock path
460
+ * @returns {string} rundir
461
+ * */
462
+ var getRunDir = function(prefix) {
463
+ if ( !prefix || typeof(prefix) == 'undefined' || prefix == '' ) {
464
+ prefix = self.defaultPrefix;
465
+ }
466
+
467
+ // Trying to retrieve original value if already defined
468
+ // Means `/usr/local/var/lock` or `/usr/local/var/run` by default.
469
+ var runDir = (isWin32()) ? getUserHome() + '\\.gina\\run' : prefix+'/var/lock';
470
+
471
+ if ( !isWin32() && new RegExp('^'+ prefix).test(runDir) && !isWritableSync(prefix) ) {
472
+ runDir = getUserHome() +'/.gina/run';
473
+ if ( !existsSync(runDir) ) {
474
+ fs.mkdirSync(runDir)
475
+ }
476
+
477
+ return runDir
478
+ }
479
+
480
+ if ( existsSync(runDir) ) {
481
+ if ( !isWritableSync(runDir) ) {
482
+ throw new Error('location `'+ runDir +'` found but not writable !' )
483
+ }
484
+
485
+ runDir += ( isWin32() ) ? '' : '/gina'
486
+ if ( !existsSync(runDir) ) {
487
+ fs.mkdirSync(runDir)
488
+ }
489
+
490
+ return runDir;
491
+ }
492
+
493
+ try {
494
+ //by default.
495
+ runDir = prefix+'/var';
496
+ if ( !existsSync(runDir) ) {
497
+ fs.mkdirSync(runDir)
498
+ }
499
+ runDir += '/run';
500
+ if ( !existsSync(runDir) ) {
501
+ fs.mkdirSync(runDir)
502
+ }
503
+ } catch (err) {
504
+ throw new Error('location error: `'+ runDir+'`\n'+ err.stack);
505
+ }
506
+
507
+ if (self.optionalPrefix != prefix) {
508
+ runDir += ( isWin32() ) ? '\\gina' : '/gina'
509
+ if ( !existsSync(runDir) ) {
510
+ fs.mkdirSync(runDir)
511
+ }
512
+ }
513
+
514
+ return runDir;
515
+ };
516
+
517
+ var getTmpDir = function(prefix) {
518
+ if ( !prefix || typeof(prefix) == 'undefined' || prefix == '' ) {
519
+ prefix = '/usr/local'
520
+ }
521
+ // support for node 0.10.x & 0.11.x
522
+ var tmp = (os.tmpdir) ? os.tmpdir : function() {
523
+ var tmpDir = null;
524
+ if ( isWin32() ) {
525
+ tmpDir = process.env.TEMP ||
526
+ process.env.TMP ||
527
+ (process.env.SystemRoot || process.env.windir) + '\\Temp'
528
+ ;
529
+ } else {
530
+ tmpDir = process.env.TMPDIR ||
531
+ process.env.TMP ||
532
+ process.env.TEMP ||
533
+ prefix+'/var/tmp'
534
+ ;
535
+
536
+ if ( new RegExp('^'+ prefix).test(tmpDir) && !isWritableSync(prefix) ) {
537
+ tmpDir = getUserHome() +'/.gina/tmp';
538
+ if ( !existsSync(tmpDir) ) {
539
+ fs.mkdirSync(tmpDir)
540
+ }
541
+ }
542
+
543
+ if ( new RegExp('^'+ prefix +'/var').test(tmpDir) && !existsSync(prefix+'/var') ) {
544
+ fs.mkdirSync(prefix+'/var');
545
+ }
546
+ }
547
+
548
+ if ( !existsSync(tmpDir) ) {
549
+ fs.mkdirSync(tmpDir);
550
+ }
551
+
552
+ return tmpDir
553
+ };
554
+
555
+ return tmp()
556
+ };
557
+
558
+ /**
559
+ * Get log path - %SystemRoot%\system32\winevt\logs or /
560
+ *
561
+ * @returns {string} logPath
562
+ * */
563
+ var getLogDir = function(prefix) {
564
+ if ( !prefix || typeof(prefix) == 'undefined' || prefix == '' ) {
565
+ prefix = '/usr/local'
566
+ }
567
+ // Trying to retrieve original value if already defined
568
+ var logDir = null;
569
+
570
+ if ( isWin32() ) {
571
+ logDir = process.env.LOG ||
572
+ process.env.LOGS ||
573
+ (process.env.SystemRoot || process.env.windir) + '\\System32\\Winevt\\Logs'
574
+ ;
575
+
576
+ if ( !logDir || logDir == '' ) {
577
+ throw new Error('Log directory not defined or not found !');
578
+ }
579
+
580
+ if ( !isWritableSync(logDir) ) {
581
+ throw new Error('Log directory found but not writable: need permissions for `'+ logDir +'`');
582
+ }
583
+
584
+ if ( !/gina$/.test(logDir) ) {
585
+ logDir += '\\gina'
586
+ }
587
+ } else {
588
+ logDir = process.env.LOGDIR ||
589
+ process.env.LOG ||
590
+ process.env.LOGS ||
591
+ prefix+'/var/log'
592
+ ;
593
+
594
+ if ( new RegExp('^'+ prefix).test(logDir) && !isWritableSync(prefix) ) {
595
+ logDir = getUserHome() +'/.gina/log';
596
+ if ( !existsSync(logDir) ) {
597
+ fs.mkdirSync(logDir)
598
+ }
599
+
600
+ return logDir
601
+ }
602
+
603
+ if ( new RegExp('^'+ prefix +'/var').test(logDir) && !existsSync(prefix+'/var') ) {
604
+ fs.mkdirSync(prefix+'/var');
605
+ }
606
+
607
+ if ( !existsSync(logDir) ) {
608
+ fs.mkdirSync(logDir);
609
+ }
610
+
611
+ if ( !/gina$/.test(logDir) && self.optionalPrefix != prefix ) {
612
+ logDir += '/gina'
613
+ }
614
+ }
615
+
616
+ if ( !existsSync(logDir) ) {
617
+ fs.mkdirSync(logDir)
618
+ }
619
+
620
+ return logDir;
621
+ };
622
+
623
+ var getUserHome = function() {
624
+ var home = os.homedir ? os.homedir : function() {
625
+ var homeDir = process.env[(isWin32()) ? 'USERPROFILE' : 'HOME'];
626
+
627
+ if ( !homeDir || homeDir == '' ) {
628
+ throw new Error('Home directory not defined or not found !');
629
+ }
630
+
631
+ if ( !isWritableSync(homeDir) ) {
632
+ throw new Error('Home directory found but not writable: need permissions for `'+ homeDir +'`');
633
+ }
634
+
635
+ return homeDir;
636
+ };
637
+
638
+ return home()
639
+ };
640
+
584
641
  init()
585
642
  }
586
643