gina 0.1.6-alpha.6 → 0.1.6-alpha.60

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 (323) hide show
  1. package/README-4Contributors.md +5 -5
  2. package/README.md +3 -3
  3. package/bin/cli +13 -0
  4. package/framework/v0.1.6-alpha.60/VERSION +1 -0
  5. package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/asset/plugin/README.md +1 -0
  6. package/framework/v0.1.6-alpha.60/core/asset/plugin/dist/vendor/gina/css/gina.min.css.map +1 -0
  7. package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/asset/plugin/dist/vendor/gina/js/gina.js +159 -27
  8. package/framework/v0.1.6-alpha.60/core/asset/plugin/dist/vendor/gina/js/gina.min.js +771 -0
  9. package/framework/v0.1.6-alpha.60/core/asset/plugin/dist/vendor/gina/js/gina.min.js.map +8 -0
  10. package/framework/v0.1.6-alpha.60/core/asset/plugin/dist/vendor/gina/js/gina.onload.min.js +8 -0
  11. package/framework/v0.1.6-alpha.60/core/asset/plugin/dist/vendor/gina/js/gina.onload.min.js.map +8 -0
  12. package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/config.js +98 -24
  13. package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/connectors/couchbase/lib/connector.v4.js +28 -22
  14. package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/controller/controller.js +275 -36
  15. package/framework/v0.1.6-alpha.60/core/deps/busboy-1.6.0/.github/workflows/ci.yml +24 -0
  16. package/framework/v0.1.6-alpha.60/core/deps/busboy-1.6.0/.github/workflows/lint.yml +23 -0
  17. package/framework/v0.1.6-alpha.60/core/deps/busboy-1.6.0/LICENSE +19 -0
  18. package/framework/v0.1.6-alpha.60/core/deps/busboy-1.6.0/README.md +191 -0
  19. package/framework/v0.1.6-alpha.60/core/deps/busboy-1.6.0/bench/bench-multipart-fields-100mb-big.js +149 -0
  20. package/framework/v0.1.6-alpha.60/core/deps/busboy-1.6.0/bench/bench-multipart-fields-100mb-small.js +143 -0
  21. package/framework/v0.1.6-alpha.60/core/deps/busboy-1.6.0/bench/bench-multipart-files-100mb-big.js +154 -0
  22. package/framework/v0.1.6-alpha.60/core/deps/busboy-1.6.0/bench/bench-multipart-files-100mb-small.js +148 -0
  23. package/framework/v0.1.6-alpha.60/core/deps/busboy-1.6.0/bench/bench-urlencoded-fields-100pairs-small.js +101 -0
  24. package/framework/v0.1.6-alpha.60/core/deps/busboy-1.6.0/bench/bench-urlencoded-fields-900pairs-small-alt.js +84 -0
  25. package/framework/v0.1.6-alpha.60/core/deps/busboy-1.6.0/lib/index.js +57 -0
  26. package/framework/v0.1.6-alpha.60/core/deps/busboy-1.6.0/lib/types/multipart.js +680 -0
  27. package/framework/v0.1.6-alpha.60/core/deps/busboy-1.6.0/lib/types/urlencoded.js +350 -0
  28. package/framework/v0.1.6-alpha.60/core/deps/busboy-1.6.0/lib/utils.js +596 -0
  29. package/framework/v0.1.6-alpha.60/core/deps/busboy-1.6.0/package.json +22 -0
  30. package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/gna.js +70 -16
  31. package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/model/index.js +28 -24
  32. package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/plugins/lib/validator/src/main.js +43 -9
  33. package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/router.js +74 -40
  34. package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/server.js +31 -5
  35. package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/template/boilerplate/bundle/controllers/setup.js +2 -2
  36. package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/helpers/context.js +16 -11
  37. package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/helpers/path.js +25 -9
  38. package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/bundle/add.js +2 -1
  39. package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/bundle/start.js +14 -5
  40. package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/framework/build.js +1 -1
  41. package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/framework/init.js +18 -0
  42. package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/framework/link-node-modules.js +2 -3
  43. package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/framework/link.js +1 -0
  44. package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/framework/tail.js +5 -5
  45. package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/framework/version.js +15 -1
  46. package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/helper.js +12 -5
  47. package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/project/add.js +3 -2
  48. package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/project/build.js +4 -4
  49. package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/protocol/list.js +71 -50
  50. package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/domain/src/main.js +59 -1
  51. package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/merge/package.json +1 -1
  52. package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/model.js +1 -1
  53. package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/routing/src/main.js +49 -10
  54. package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/session-store.js +2 -2
  55. package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/swig-filters/src/main.js +63 -8
  56. package/framework/v0.1.6-alpha.60/package.json +12 -0
  57. package/package.json +2 -2
  58. package/framework/v0.1.6-alpha.6/VERSION +0 -1
  59. package/framework/v0.1.6-alpha.6/core/asset/plugin/dist/vendor/gina/css/gina.min.css.map +0 -1
  60. package/framework/v0.1.6-alpha.6/core/asset/plugin/dist/vendor/gina/js/gina.min.js +0 -765
  61. package/framework/v0.1.6-alpha.6/core/asset/plugin/dist/vendor/gina/js/gina.min.js.map +0 -8
  62. package/framework/v0.1.6-alpha.6/core/asset/plugin/dist/vendor/gina/js/gina.onload.min.js +0 -7
  63. package/framework/v0.1.6-alpha.6/core/asset/plugin/dist/vendor/gina/js/gina.onload.min.js.map +0 -8
  64. package/framework/v0.1.6-alpha.6/package.json +0 -14
  65. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/AUTHORS +0 -0
  66. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/LICENSE +0 -0
  67. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/asset/html/nolayout.html +0 -0
  68. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/asset/html/static.html +0 -0
  69. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/asset/img/android-chrome-192x192.png +0 -0
  70. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/asset/img/android-chrome-512x512.png +0 -0
  71. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/asset/img/apple-touch-icon.png +0 -0
  72. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/asset/img/favicon-16x16.png +0 -0
  73. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/asset/img/favicon-32x32.png +0 -0
  74. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/asset/img/favicon.ico +0 -0
  75. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/asset/plugin/dist/vendor/gina/css/gina.min.css +0 -0
  76. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/asset/plugin/dist/vendor/gina/html/toolbar.html +0 -0
  77. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/asset/plugin/uuid.json +0 -0
  78. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/connectors/couchbase/index.js +0 -0
  79. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/connectors/couchbase/lib/connector.js +0 -0
  80. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/connectors/couchbase/lib/connector.v2.js +0 -0
  81. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/connectors/couchbase/lib/connector.v3.js +0 -0
  82. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/connectors/couchbase/lib/n1ql.js +0 -0
  83. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/connectors/couchbase/lib/session-store.js +0 -0
  84. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/connectors/couchbase/lib/session-store.v2.js +0 -0
  85. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/connectors/couchbase/lib/session-store.v3.js +0 -0
  86. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/connectors/couchbase/lib/session-store.v4.js +0 -0
  87. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/controller/controller.framework.js +0 -0
  88. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/controller/index.js +0 -0
  89. /package/framework/{v0.1.6-alpha.6/core/deps/busboy → v0.1.6-alpha.60/core/deps/busboy-0.2.14}/.travis.yml +0 -0
  90. /package/framework/{v0.1.6-alpha.6/core/deps/busboy → v0.1.6-alpha.60/core/deps/busboy-0.2.14}/LICENSE +0 -0
  91. /package/framework/{v0.1.6-alpha.6/core/deps/busboy → v0.1.6-alpha.60/core/deps/busboy-0.2.14}/README.md +0 -0
  92. /package/framework/{v0.1.6-alpha.6/core/deps/busboy → v0.1.6-alpha.60/core/deps/busboy-0.2.14}/deps/encoding/encoding-indexes.js +0 -0
  93. /package/framework/{v0.1.6-alpha.6/core/deps/busboy → v0.1.6-alpha.60/core/deps/busboy-0.2.14}/deps/encoding/encoding.js +0 -0
  94. /package/framework/{v0.1.6-alpha.6/core/deps/busboy → v0.1.6-alpha.60/core/deps/busboy-0.2.14}/lib/main.js +0 -0
  95. /package/framework/{v0.1.6-alpha.6/core/deps/busboy → v0.1.6-alpha.60/core/deps/busboy-0.2.14}/lib/types/multipart.js +0 -0
  96. /package/framework/{v0.1.6-alpha.6/core/deps/busboy → v0.1.6-alpha.60/core/deps/busboy-0.2.14}/lib/types/urlencoded.js +0 -0
  97. /package/framework/{v0.1.6-alpha.6/core/deps/busboy → v0.1.6-alpha.60/core/deps/busboy-0.2.14}/lib/utils.js +0 -0
  98. /package/framework/{v0.1.6-alpha.6/core/deps/busboy → v0.1.6-alpha.60/core/deps/busboy-0.2.14}/package.json +0 -0
  99. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/deps/swig-client/swig-2.0.0.min.js +0 -0
  100. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/dev/index.js +0 -0
  101. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/dev/lib/class.js +0 -0
  102. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/dev/lib/factory.js +0 -0
  103. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/dev/lib/tools.js +0 -0
  104. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/locales/README.md +0 -0
  105. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/locales/currency.json +0 -0
  106. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/locales/dist/language/en.json +0 -0
  107. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/locales/dist/language/fr.json +0 -0
  108. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/locales/dist/region/en.json +0 -0
  109. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/locales/dist/region/fr.json +0 -0
  110. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/locales/index.js +0 -0
  111. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/locales/src/make.js +0 -0
  112. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/locales/src/resources/currency.csv +0 -0
  113. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/locales/src/resources/region.csv +0 -0
  114. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/locales/src/resources/region.mapping.json +0 -0
  115. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/mime.types +0 -0
  116. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/model/entity.js +0 -0
  117. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/model/template/entityFactory.js +0 -0
  118. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/model/template/index.js +0 -0
  119. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/plugins/README.md +0 -0
  120. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/plugins/index.js +0 -0
  121. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/plugins/lib/file/README.md +0 -0
  122. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/plugins/lib/file/build.json +0 -0
  123. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/plugins/lib/file/package.json +0 -0
  124. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/plugins/lib/intl/README.md +0 -0
  125. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/plugins/lib/intl/build.json +0 -0
  126. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/plugins/lib/intl/package.json +0 -0
  127. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/plugins/lib/intl/src/main.js +0 -0
  128. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/plugins/lib/storage/README.md +0 -0
  129. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/plugins/lib/storage/build.json +0 -0
  130. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/plugins/lib/storage/package.json +0 -0
  131. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/plugins/lib/storage/src/main.js +0 -0
  132. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/plugins/lib/validator/README.md +0 -0
  133. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/plugins/lib/validator/build.json +0 -0
  134. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/plugins/lib/validator/package.json +0 -0
  135. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/plugins/lib/validator/src/form-validator.js +0 -0
  136. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/server.express.js +0 -0
  137. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/server.isaac.js +0 -0
  138. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/status.codes +0 -0
  139. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/template/_gitignore +0 -0
  140. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/template/boilerplate/bundle/config/app.json +0 -0
  141. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/template/boilerplate/bundle/config/routing.json +0 -0
  142. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/template/boilerplate/bundle/config/settings.json +0 -0
  143. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/template/boilerplate/bundle/config/settings.server.json +0 -0
  144. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/template/boilerplate/bundle/config/templates.json +0 -0
  145. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/template/boilerplate/bundle/controllers/controller.content.js +0 -0
  146. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/template/boilerplate/bundle/controllers/controller.js +0 -0
  147. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/template/boilerplate/bundle/index.js +0 -0
  148. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/template/boilerplate/bundle_namespace/controllers/controller.js +0 -0
  149. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/template/boilerplate/bundle_public/css/default.css +0 -0
  150. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/template/boilerplate/bundle_public/css/vendor/readme.md +0 -0
  151. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/template/boilerplate/bundle_public/favicon.ico +0 -0
  152. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/template/boilerplate/bundle_public/js/vendor/readme.md +0 -0
  153. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/template/boilerplate/bundle_public/readme.md +0 -0
  154. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/template/boilerplate/bundle_templates/handlers/main.js +0 -0
  155. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/template/boilerplate/bundle_templates/html/content/homepage.html +0 -0
  156. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/template/boilerplate/bundle_templates/html/includes/error-msg-noscript.html +0 -0
  157. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/template/boilerplate/bundle_templates/html/includes/error-msg-outdated-browser.html +0 -0
  158. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/template/boilerplate/bundle_templates/html/layouts/main.html +0 -0
  159. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/template/command/gina.bat.tpl +0 -0
  160. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/template/command/gina.tpl +0 -0
  161. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/template/conf/env.json +0 -0
  162. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/template/conf/manifest.json +0 -0
  163. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/template/conf/package.json +0 -0
  164. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/template/conf/settings.json +0 -0
  165. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/template/conf/statics.json +0 -0
  166. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/template/conf/templates.json +0 -0
  167. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/template/error/client/json/401.json +0 -0
  168. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/template/error/client/json/403.json +0 -0
  169. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/template/error/client/json/404.json +0 -0
  170. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/template/error/server/html/50x.html +0 -0
  171. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/template/error/server/json/500.json +0 -0
  172. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/template/error/server/json/503.json +0 -0
  173. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/core/template/extensions/logger/config.json +0 -0
  174. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/helpers/console.js +0 -0
  175. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/helpers/data/LICENSE +0 -0
  176. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/helpers/data/README.md +0 -0
  177. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/helpers/data/package.json +0 -0
  178. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/helpers/data/src/main.js +0 -0
  179. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/helpers/dateFormat.js +0 -0
  180. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/helpers/index.js +0 -0
  181. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/helpers/json/LICENSE +0 -0
  182. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/helpers/json/README.md +0 -0
  183. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/helpers/json/package.json +0 -0
  184. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/helpers/json/src/main.js +0 -0
  185. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/helpers/plugins/README.md +0 -0
  186. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/helpers/plugins/package.json +0 -0
  187. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/helpers/plugins/src/api-error.js +0 -0
  188. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/helpers/plugins/src/main.js +0 -0
  189. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/helpers/prototypes.js +0 -0
  190. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/helpers/task.js +0 -0
  191. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/helpers/text.js +0 -0
  192. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/archiver/README.md +0 -0
  193. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/archiver/build.json +0 -0
  194. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/archiver/package.json +0 -0
  195. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/archiver/src/dep/jszip.min.js +0 -0
  196. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/archiver/src/main.js +0 -0
  197. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/aliases.json +0 -0
  198. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/bundle/arguments.json +0 -0
  199. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/bundle/copy.js +0 -0
  200. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/bundle/cp.js +0 -0
  201. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/bundle/help.js +0 -0
  202. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/bundle/help.txt +0 -0
  203. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/bundle/list.js +0 -0
  204. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/bundle/remove.js +0 -0
  205. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/bundle/rename.js +0 -0
  206. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/bundle/restart.js +0 -0
  207. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/bundle/rm.js +0 -0
  208. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/bundle/status.js +0 -0
  209. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/bundle/stop.js +0 -0
  210. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/env/add.js +0 -0
  211. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/env/get.js +0 -0
  212. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/env/help.js +0 -0
  213. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/env/help.txt +0 -0
  214. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/env/link-dev.js +0 -0
  215. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/env/list.js +0 -0
  216. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/env/remove.js +0 -0
  217. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/env/rm.js +0 -0
  218. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/env/set.js +0 -0
  219. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/env/unset.js +0 -0
  220. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/env/use.js +0 -0
  221. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/framework/dot.js +0 -0
  222. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/framework/get.js +0 -0
  223. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/framework/help.js +0 -0
  224. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/framework/help.txt +0 -0
  225. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/framework/msg.json +0 -0
  226. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/framework/open.js +0 -0
  227. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/framework/restart.js +0 -0
  228. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/framework/set.js +0 -0
  229. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/framework/start.js +0 -0
  230. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/framework/status.js +0 -0
  231. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/framework/stop.js +0 -0
  232. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/framework/update.js +0 -0
  233. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/gina-dev.1.md +0 -0
  234. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/gina-framework.1.md +0 -0
  235. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/gina.1.md +0 -0
  236. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/index.js +0 -0
  237. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/msg.json +0 -0
  238. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/port/help.js +0 -0
  239. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/port/help.txt +0 -0
  240. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/port/inc/scan.js +0 -0
  241. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/port/list.js +0 -0
  242. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/port/reset.js +0 -0
  243. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/port/set.js +0 -0
  244. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/project/arguments.json +0 -0
  245. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/project/help.js +0 -0
  246. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/project/help.txt +0 -0
  247. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/project/import.js +0 -0
  248. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/project/list.js +0 -0
  249. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/project/move.js +0 -0
  250. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/project/remove.js +0 -0
  251. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/project/rename.js +0 -0
  252. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/project/restart.js +0 -0
  253. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/project/rm.js +0 -0
  254. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/project/start.js +0 -0
  255. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/project/status.js +0 -0
  256. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/project/stop.js +0 -0
  257. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/protocol/help.js +0 -0
  258. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/protocol/help.txt +0 -0
  259. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/protocol/set.js +0 -0
  260. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/scope/add.js +0 -0
  261. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/scope/help.js +0 -0
  262. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/scope/help.txt +0 -0
  263. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/scope/link-local.js +0 -0
  264. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/scope/link-production.js +0 -0
  265. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/scope/list.js +0 -0
  266. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/scope/remove.js +0 -0
  267. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/scope/rm.js +0 -0
  268. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/scope/use.js +0 -0
  269. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cmd/view/add.js +0 -0
  270. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/collection/README.md +0 -0
  271. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/collection/build.json +0 -0
  272. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/collection/package.json +0 -0
  273. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/collection/src/main.js +0 -0
  274. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/config.js +0 -0
  275. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cron/README.md +0 -0
  276. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cron/package.json +0 -0
  277. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/cron/src/main.js +0 -0
  278. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/domain/LICENSE +0 -0
  279. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/domain/README.md +0 -0
  280. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/domain/dist/public_suffix_list.dat +0 -0
  281. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/domain/exemples/backend.js +0 -0
  282. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/domain/exemples/frontend.html +0 -0
  283. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/domain/package.json +0 -0
  284. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/generator/index.js +0 -0
  285. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/index.js +0 -0
  286. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/inherits/LICENSE +0 -0
  287. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/inherits/README.md +0 -0
  288. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/inherits/example/inheriting_eventemitter.js +0 -0
  289. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/inherits/example/protected_inheritance.js +0 -0
  290. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/inherits/example/simple_inheritance.js +0 -0
  291. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/inherits/example/super_attribute_overridden_by_child_on_init.js +0 -0
  292. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/inherits/package.json +0 -0
  293. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/inherits/src/main.js +0 -0
  294. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/logger/README.md +0 -0
  295. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/logger/package.json +0 -0
  296. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/logger/src/containers/default/index.js +0 -0
  297. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/logger/src/containers/file/index.js +0 -0
  298. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/logger/src/containers/file/lib/logrotator/README.md +0 -0
  299. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/logger/src/containers/file/lib/logrotator/index.js +0 -0
  300. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/logger/src/containers/mq/index.js +0 -0
  301. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/logger/src/containers/mq/listener.js +0 -0
  302. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/logger/src/containers/mq/speaker.js +0 -0
  303. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/logger/src/helper.js +0 -0
  304. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/logger/src/main.js +0 -0
  305. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/math/index.js +0 -0
  306. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/merge/README.md +0 -0
  307. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/merge/example/merge.js +0 -0
  308. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/merge/example/merge_2_literal objects.js +0 -0
  309. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/merge/example/merge_and_preserve_first.js +0 -0
  310. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/merge/src/main.js +0 -0
  311. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/proc.js +0 -0
  312. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/routing/README.md +0 -0
  313. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/routing/build.json +0 -0
  314. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/routing/package.json +0 -0
  315. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/shell.js +0 -0
  316. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/swig-filters/README.md +0 -0
  317. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/swig-filters/package.json +0 -0
  318. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/url/README.md +0 -0
  319. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/url/index.js +0 -0
  320. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/url/mocks.json +0 -0
  321. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/url/routing.json +0 -0
  322. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/url/test.js +0 -0
  323. /package/framework/{v0.1.6-alpha.6 → v0.1.6-alpha.60}/lib/validator.js +0 -0
@@ -13,7 +13,7 @@ const {promises: {readFile}} = require("fs");
13
13
  var util = require('util');
14
14
  var promisify = util.promisify;
15
15
  var EventEmitter = require('events').EventEmitter;
16
- var zlib = require('zlib');
16
+ var zlib = require('zlib'); // Included with NodeJS
17
17
 
18
18
  //var dns = require('dns');
19
19
  // var tls = require('tls');
@@ -25,6 +25,8 @@ var inherits = lib.inherits;
25
25
  var console = lib.logger;
26
26
  var Collection = lib.Collection;
27
27
  var routingLib = lib.routing;
28
+ var Domain = lib.Domain;
29
+ var domainLib = new Domain();
28
30
  var swig = require('swig');
29
31
  // Swig 2
30
32
  // var swig = require('./../deps/swig-client/swig-2.0.0.min.js');
@@ -322,10 +324,24 @@ function SuperController(options) {
322
324
 
323
325
  var ctx = getContext('gina');
324
326
  // new declaration && overrides
327
+ var arch = process.arch;
328
+ switch (process.arch) {
329
+ case 'x64':
330
+ arch = 'amd64'
331
+ break;
332
+ case 'armv7l':
333
+ arch = 'armhf'
334
+ break;
335
+ case 'x86':
336
+ arch = 'i386'
337
+ break;
338
+ default:
339
+ break;
340
+ }
325
341
  var version = {
326
342
  "number" : ctx.version,
327
343
  "platform" : process.platform,
328
- "arch" : process.arch,
344
+ "arch" : arch,
329
345
  "nodejs" : process.versions.node,
330
346
  "middleware" : ctx.middleware
331
347
  };
@@ -343,8 +359,115 @@ function SuperController(options) {
343
359
  set('page.environment.scopeIsProduction', /^true$/i.test(process.env.NODE_SCOPE_IS_PRODUCTION) );
344
360
  set('page.environment.date.now', new Date().format("isoDateTime"));
345
361
 
362
+ // var requestPort = req.headers.port || req.headers[':port'];
363
+ // var isProxyHost = (
364
+ // typeof(req.headers.host) != 'undefined'
365
+ // && typeof(requestPort) != 'undefined'
366
+ // && /^(80|443)$/.test(requestPort)
367
+ // && local.options.conf.server.scheme +'://'+ req.headers.host +':'+ requestPort != local.options.conf.hostname.replace(/\:\d+$/, '') +':'+ local.options.conf.server.port
368
+ // ||
369
+ // typeof(req.headers[':authority']) != 'undefined'
370
+ // && local.options.conf.server.scheme +'://'+ req.headers[':authority'] != local.options.conf.hostname
371
+ // ||
372
+ // typeof(req.headers.host) != 'undefined'
373
+ // && typeof(requestPort) != 'undefined'
374
+ // && /^(80|443)$/.test(requestPort)
375
+ // && req.headers.host == local.options.conf.host
376
+ // ||
377
+ // typeof(req.headers['x-nginx-proxy']) != 'undefined'
378
+ // && /^true$/i.test(req.headers['x-nginx-proxy'])
379
+ // ) ? true : false;
380
+ // setContext('isProxyHost', isProxyHost);
381
+ var isProxyHost = getContext('isProxyHost') || false;
382
+ set('page.environment.isProxyHost', isProxyHost);
383
+ if ( /^true$/.test(isProxyHost) ) {
384
+ set('page.environment.proxyHost', process.gina.PROXY_HOST);
385
+ set('page.environment.proxyHostname', process.gina.PROXY_HOSTNAME);
386
+ }
387
+
388
+ var _config = ctx.config.envConf[options.conf.bundle][process.env.NODE_ENV];
389
+ // by default
390
+ var hostname = _config.hostname + _config.server.webroot;
391
+ var scheme = hostname.match(/^(https|http)/)[0];
392
+ var requestPort = (local.req.headers.port||local.req.headers[':port']);
393
+
394
+ var hostPort = hostname.match(/(\:d+\/|\:\d+)$/);
395
+ hostPort = (hostPort) ? ~~(hostPort[0].replace(/\:/g, '')) : _config.port[_config.server.protocol][_config.server.scheme];
396
+ // Linking bundle B from bundle A wihtout proxy
397
+ var isSpecialCase = (
398
+ getContext('bundle') != _config.bundle
399
+ && requestPort != hostPort
400
+ && local.req.headers[':host'] != process.gina.PROXY_HOST
401
+ ) ? true : false;
402
+
403
+ if (isSpecialCase) {
404
+ hostname = _config.hostname;
405
+ }
346
406
 
347
- var routing = local.options.conf.routing = ctx.config.envConf.routing; // all routes
407
+ // if (
408
+ // isProxyHost
409
+ // && !isSpecialCase
410
+ // ) {
411
+ // // Rewrite hostname vs req.headers.host
412
+ // hostname = scheme + '://'+ (local.req.headers.host||local.req.headers[':host']);
413
+
414
+ // if (
415
+ // !/^(80|443)$/.test(requestPort)
416
+ // && !new RegExp(requestPort+'$').test(hostname)
417
+ // ) {
418
+ // hostname += ':'+ requestPort;
419
+ // }
420
+ // }
421
+
422
+ set('page.environment.hostname', hostname);
423
+ // Updating _config.rootDomain - 2024/04/15
424
+ // _config.rootDomain = domainLib.getRootDomain(hostname).value;
425
+
426
+
427
+ set('page.environment.rootDomain', _config.rootDomain);
428
+ set('page.environment.webroot', options.conf.server.webroot);
429
+
430
+ if ( typeof(ctx.config.envConf._isRoutingUpdateNeeded) == 'undefined') {
431
+ ctx.config.envConf._isRoutingUpdateNeeded = false;
432
+ }
433
+
434
+ if (
435
+ typeof(ctx.config.envConf._proxyHostname) == 'undefined'
436
+ ||
437
+ hostname != ctx.config.envConf._proxyHostname
438
+ ) {
439
+ ctx.config.envConf._proxyHostname = (isProxyHost) ? hostname : null;
440
+ ctx.config.envConf._isRoutingUpdateNeeded = true;
441
+ }
442
+
443
+ if ( typeof(ctx.config.envConf._routingCloned) == 'undefined' ) {
444
+ ctx.config.envConf._routingCloned = JSON.clone(ctx.config.envConf.routing);
445
+ }
446
+
447
+ var routing = local.options.conf.routing = ctx.config.envConf._routingCloned; // all routes
448
+ if ( /^true$/i.test(ctx.config.envConf._isRoutingUpdateNeeded) ) {
449
+
450
+ for (let r in ctx.config.envConf.routing) {
451
+ if ( isProxyHost ) {
452
+ local.options.conf.routing[r].host = hostname.replace(/^(https|http)\:\/\//, '');
453
+ local.options.conf.routing[r].hostname = hostname;
454
+ let scheme = hostname.match(/^(https|http)/)[0];
455
+ local.options.conf.routing[r].hostname = scheme + '://'+ (local.req.headers.host||local.req.headers[':host']);
456
+ let requestPort = (local.req.headers.port||local.req.headers[':port']);
457
+ if (
458
+ !/^(80|443)$/.test(requestPort)
459
+ && !new RegExp(requestPort+'$').test(local.options.conf.routing[r].hostname)
460
+ ) {
461
+ local.options.conf.routing[r].hostname += ':'+ requestPort
462
+ }
463
+ continue;
464
+ }
465
+ local.options.conf.routing[r].host = ctx.config.envConf.routing[r].host;
466
+ local.options.conf.routing[r].hostname = ctx.config.envConf.routing[r].hostname;
467
+ }
468
+ ctx.config.envConf._isRoutingUpdateNeeded = false;
469
+
470
+ }
348
471
  set('page.environment.routing', encodeRFC5987ValueChars(JSON.stringify(routing))); // export for GFF
349
472
  //reverseRouting
350
473
  var reverseRouting = local.options.conf.reverseRouting = ctx.config.envConf.reverseRouting; // all routes
@@ -354,9 +477,8 @@ function SuperController(options) {
354
477
  set('page.environment.forms', encodeRFC5987ValueChars(JSON.stringify(forms))); // export for GFF
355
478
  set('page.forms', options.conf.content.forms);
356
479
 
357
- set('page.environment.hostname', ctx.config.envConf[options.conf.bundle][process.env.NODE_ENV].hostname);
358
- set('page.environment.rootDomain', ctx.config.envConf[options.conf.bundle][process.env.NODE_ENV].rootDomain);
359
- set('page.environment.webroot', options.conf.server.webroot);
480
+
481
+
360
482
  set('page.environment.bundle', options.conf.bundle);
361
483
  set('page.environment.project', options.conf.projectName);
362
484
  set('page.environment.protocol', options.conf.server.protocol);
@@ -437,11 +559,6 @@ function SuperController(options) {
437
559
  set('page.view.lang', userCulture);
438
560
  }
439
561
 
440
- if ( !getContext('isProxyHost') ) {
441
- var isProxyHost = ( typeof(req.headers.host) != 'undefined' && local.options.conf.server.scheme +'://'+ req.headers.host != local.options.conf.hostname || typeof(req.headers[':authority']) != 'undefined' && local.options.conf.server.scheme +'://'+ req.headers[':authority'] != local.options.conf.hostname ) ? true : false;
442
- setContext('isProxyHost', isProxyHost);
443
- isProxyHost = null;
444
- }
445
562
 
446
563
  //TODO - detect when to use swig
447
564
  var dir = null;
@@ -839,12 +956,28 @@ function SuperController(options) {
839
956
  return;
840
957
  }
841
958
 
959
+ var localRequestPort = local.req.headers.port || local.req.headers[':port'];
842
960
  var isProxyHost = (
843
961
  typeof(local.req.headers.host) != 'undefined'
844
- && localOptions.conf.server.scheme +'://'+ local.req.headers.host != localOptions.conf.hostname
845
- || typeof(local.req.headers[':authority']) != 'undefined'
846
- && localOptions.conf.server.scheme +'://'+ local.req.headers[':authority'] != localOptions.conf.hostname
962
+ && typeof(localRequestPort) != 'undefined'
963
+ && /^(80|443)$/.test(localRequestPort)
964
+ && localOptions.conf.server.scheme +'://'+ local.req.headers.host+':'+ localRequestPort != localOptions.conf.hostname.replace(/\:\d+$/, '') +':'+ localOptions.conf.server.port
965
+ ||
966
+ typeof(local.req.headers[':authority']) != 'undefined'
967
+ && localOptions.conf.server.scheme +'://'+ local.req.headers[':authority'] != localOptions.conf.hostname
968
+ ||
969
+ typeof(local.req.headers.host) != 'undefined'
970
+ && typeof(localRequestPort) != 'undefined'
971
+ && /^(80|443)$/.test(localRequestPort)
972
+ && local.req.headers.host == localOptions.conf.host
973
+ ||
974
+ typeof(local.req.headers['x-nginx-proxy']) != 'undefined'
975
+ && /^true$/i.test(local.req.headers['x-nginx-proxy'])
976
+ ||
977
+ typeof(process.gina.PROXY_HOSTNAME) != 'undefined'
847
978
  ) ? true : false;
979
+
980
+
848
981
  // setup swig default filters
849
982
  var filters = SwigFilters({
850
983
  options : JSON.clone(localOptions),
@@ -1619,7 +1752,11 @@ function SuperController(options) {
1619
1752
  var authority = ( typeof(local.req.headers['x-forwarded-proto']) != 'undefined' ) ? local.req.headers['x-forwarded-proto'] : local.options.conf.server.scheme;
1620
1753
  authority += '://'+ local.req.headers.host;
1621
1754
  var useWebroot = false;
1622
- if ( !/^\/$/.test(local.options.conf.server.webroot) && local.options.conf.server.webroot.length > 0 && local.options.conf.hostname.replace(/\:\d+$/, '') == authority ) {
1755
+ if (
1756
+ !/^\/$/.test(local.options.conf.server.webroot)
1757
+ && local.options.conf.server.webroot.length > 0
1758
+ // && local.options.conf.hostname.replace(/\:\d+$/, '') == authority
1759
+ ) {
1623
1760
  useWebroot = true
1624
1761
  }
1625
1762
  authority = null;
@@ -1663,13 +1800,45 @@ function SuperController(options) {
1663
1800
  , rLen = resArr.length
1664
1801
  , obj = null
1665
1802
  , str = ''
1803
+ , isProxyHost = getContext('isProxyHost')
1666
1804
  , requestHost = ( /http\/2/.test(local.options.conf.server.protocol) )
1667
1805
  ? local.req.headers[':host']
1668
1806
  : local.req.headers.host
1669
1807
  , hostname = ( typeof(requestHost) != 'undefined' && local.options.conf.host != requestHost)
1670
- ? local.options.conf.server.scheme +'://'+ requestHost + ':'+ local.options.conf.server.port
1808
+ ? local.options.conf.server.scheme +'://'+ requestHost
1671
1809
  : local.options.conf.hostname
1810
+ , scheme = hostname.match(/^(https|http)/)[0]
1672
1811
  ;
1812
+ var requestPort = (local.req.headers.port||local.req.headers[':port']);
1813
+ var hostPort = local.options.conf.hostname.match(/(\:d+\/|\:\d+)$/);
1814
+ hostPort = (hostPort) ? ~~(hostPort[0].replace(/\:/g, '')) : local.options.conf.port[local.options.conf.server.protocol][local.options.conf.server.scheme];
1815
+ // Linking bundle B from bundle A wihtout proxy
1816
+ var isSpecialCase = (
1817
+ getContext('bundle') != local.options.conf.bundle
1818
+ && requestPort != hostPort
1819
+ && local.req.headers[':host'] != process.gina.PROXY_HOST
1820
+ ) ? true : false;
1821
+
1822
+ if (isSpecialCase) {
1823
+ hostname = local.options.conf.hostname
1824
+ }
1825
+
1826
+
1827
+ if (
1828
+ isProxyHost
1829
+ && !isSpecialCase
1830
+ ) {
1831
+
1832
+ hostname = scheme + '://'+ (local.req.headers.host||local.req.headers[':host']||process.gina.PROXY_HOST);
1833
+
1834
+ if (
1835
+ !/^(80|443)$/.test(requestPort)
1836
+ && !new RegExp(requestPort+'$').test(hostname)
1837
+ ) {
1838
+ hostname += ':'+ requestPort;
1839
+ }
1840
+ }
1841
+
1673
1842
  switch(type){
1674
1843
  case 'css':
1675
1844
  for (; r < rLen; ++r) {
@@ -1895,9 +2064,9 @@ function SuperController(options) {
1895
2064
  // ignoreWebRoot = false
1896
2065
  // } else
1897
2066
  if (typeof(res) === 'string' || typeof(res) === 'number' || typeof(res) === 'boolean') {
1898
- if ( /true|1/.test(res) ) {
2067
+ if ( /^(true|1)$/i.test(res) ) {
1899
2068
  ignoreWebRoot = true
1900
- } else if ( /false|0/.test(res) ) {
2069
+ } else if ( /^(false|0)$/i.test(res) ) {
1901
2070
  ignoreWebRoot = false
1902
2071
  } else {
1903
2072
  res = local.res;
@@ -2015,8 +2184,37 @@ function SuperController(options) {
2015
2184
 
2016
2185
  if ( !self.forward404Unless(condition, req, res) ) { // forward to 404 if bad route
2017
2186
 
2018
- var isProxyHost = ( typeof(local.req.headers.host) != 'undefined' && local.options.conf.server.scheme +'://'+ local.req.headers.host != local.options.conf.hostname || typeof(local.req.headers[':authority']) != 'undefined' && local.options.conf.server.scheme +'://'+ local.req.headers[':authority'] != local.options.conf.hostname ) ? true : false;
2019
- var hostname = (isProxyHost) ? ctx.config.envConf[bundle][env].hostname.replace(/\:\d+$/, '') : ctx.config.envConf[bundle][env].hostname;
2187
+ var localRequestPort = local.req.headers.port || local.req.headers[':port'];
2188
+ var isProxyHost = (
2189
+ typeof(local.req.headers.host) != 'undefined'
2190
+ && typeof(localRequestPort) != 'undefined'
2191
+ && /^(80|443)$/.test(localRequestPort)
2192
+ && local.options.conf.server.scheme +'://'+ local.req.headers.host +':'+ localRequestPort != local.options.conf.hostname.replace(/\:\d+$/, '') +':'+ local.options.conf.server.port
2193
+ ||
2194
+ typeof(local.req.headers[':authority']) != 'undefined'
2195
+ && local.options.conf.server.scheme +'://'+ local.req.headers[':authority'] != local.options.conf.hostname
2196
+ ||
2197
+ typeof(local.req.headers.host) != 'undefined'
2198
+ && typeof(localRequestPort) != 'undefined'
2199
+ && /^(80|443)$/.test(localRequestPort)
2200
+ && req.headers.host == local.options.conf.host
2201
+ ||
2202
+ typeof(local.req.headers['x-nginx-proxy']) != 'undefined'
2203
+ && /^true$/i.test(local.req.headers['x-nginx-proxy'])
2204
+ ||
2205
+ typeof(process.gina.PROXY_HOSTNAME) != 'undefined'
2206
+ ) ? true : false;
2207
+
2208
+
2209
+
2210
+ var hostname = (isProxyHost)
2211
+ ? process.gina.PROXY_HOSTNAME
2212
+ : ctx.config.envConf[bundle][env].hostname;
2213
+
2214
+ // var hostname = (isProxyHost)
2215
+ // ? ctx.config.envConf._proxyHostname
2216
+ // : ctx.config.envConf[bundle][env].hostname;
2217
+
2020
2218
 
2021
2219
  // if ( !/\:\d+$/.test(req.headers.host) )
2022
2220
  // hostname = hostname.replace(/\:\d+$/, '');
@@ -2078,7 +2276,7 @@ function SuperController(options) {
2078
2276
  originalMethod && !/GET/i.test(originalMethod)
2079
2277
  ) { // trying to redirect using the wrong method ?
2080
2278
 
2081
- console.warn(new Error('Your are trying to redirect using the wrong method: `'+ req.method+'`.\nThis can often occur while redirecting from a controller to another controller or from a bundle to another.\nA redirection is not permitted in this scenario.\nD\'ont panic :)\nSwitching request method to `GET` method instead.\n').message);
2279
+ console.warn(new Error('Your are trying to redirect using the wrong method: `'+ req.method+'`.\nThis can often occur while redirecting from a controller to another controller or from a bundle to another.\nA redirection is not permitted in this scenario.\nDon\'t panic :)\nSwitching request method to `GET` method instead.\n').message);
2082
2280
  method = local.req.method = self.setRequestMethod('GET', conf);
2083
2281
  code = 303;
2084
2282
  }
@@ -2750,9 +2948,10 @@ function SuperController(options) {
2750
2948
  }
2751
2949
  }
2752
2950
 
2753
- var ctx = getContext()
2754
- , protocol = null
2755
- , scheme = null
2951
+ var ctx = getContext()
2952
+ , protocol = null
2953
+ , scheme = null
2954
+ , isProxyHost = getContext('isProxyHost')
2756
2955
  ;
2757
2956
  // cleanup options.path
2758
2957
  if (/\:\/\//.test(options.path)) {
@@ -2785,6 +2984,7 @@ function SuperController(options) {
2785
2984
  var bundle = ( options.hostname.replace(/(.*)\:\/\//, '') ).split(/\@/)[0];
2786
2985
 
2787
2986
  // No shorcut possible because conf.hostname might differ from user inputs
2987
+
2788
2988
  options.host = ctx.gina.config.envConf[bundle][ctx.env].host.replace(/(.*)\:\/\//, '').replace(/\:\d+/, '');
2789
2989
  options.hostname = ctx.gina.config.envConf[bundle][ctx.env].hostname;
2790
2990
  options.port = ctx.gina.config.envConf[bundle][ctx.env].server.port;
@@ -2797,6 +2997,14 @@ function SuperController(options) {
2797
2997
  options.ca = ctx.gina.config.envConf[bundle][ctx.env].server.credentials.ca;
2798
2998
  }
2799
2999
 
3000
+ // if (
3001
+ // /^true$/i.test(isProxyHost)
3002
+ // && typeof(options.hostname) != 'undefined'
3003
+ // ) {
3004
+ // options.hostname = process.gina.PROXY_HOSTNAME;
3005
+ // options.host = process.gina.PROXY_HOST;
3006
+ // options.port = process.gina.PROXY_PORT;
3007
+ // }
2800
3008
  // might be != from the bundle requesting
2801
3009
  //options.protocol = ctx.gina.config.envConf[bundle][ctx.env].content.settings.server.protocol || ctx.gina.config.envConf[bundle][ctx.env].server.protocol;
2802
3010
  //options.scheme = ctx.gina.config.envConf[bundle][ctx.env].content.settings.server.scheme || ctx.gina.config.envConf[bundle][ctx.env].server.scheme;
@@ -2842,6 +3050,33 @@ function SuperController(options) {
2842
3050
 
2843
3051
  }
2844
3052
 
3053
+ var handleHTTP1ClientRequestv2 = function (browser, options, callback) {
3054
+ var agent = new browser.Agent({ keepAlive: true });
3055
+ var options = {
3056
+ host: options.host,
3057
+ port: options.port,
3058
+ path: options.path,
3059
+ method: 'GET',
3060
+ agent: agent
3061
+ };
3062
+ var req = browser.request(options, function(res) {
3063
+ var str = "";
3064
+ var err = false;
3065
+ res.on('data', function (chunk) {
3066
+ str += chunk;
3067
+ });
3068
+ res.on('end', function () {
3069
+ // done
3070
+ return callback( err, data );
3071
+ });
3072
+ });
3073
+ req.write('');
3074
+ req.end();
3075
+ req.on('error', function(error) {
3076
+ err = error
3077
+ });
3078
+ };
3079
+
2845
3080
  var handleHTTP1ClientRequest = function(browser, options, callback) {
2846
3081
 
2847
3082
  var altOpt = JSON.clone(options);
@@ -3560,24 +3795,28 @@ function SuperController(options) {
3560
3795
  *
3561
3796
  * */
3562
3797
  this.getConfig = function(name) {
3798
+ var tmp = null;
3563
3799
  if ( typeof(name) != 'undefined' ) {
3564
3800
  try {
3565
- // needs to be read only
3566
- //config = JSON.clone(local.options.conf.content[name]);
3567
- //config = Object.freeze(local.options.conf.content[name]);
3568
- //Object.seal(local.options.conf.content[name]);
3569
- //Object.freeze(local.options.conf.content[name]);
3570
- // if ( self.isCacheless() ) {
3571
- // }
3572
- return JSON.clone(local.options.conf.content[name]);
3801
+ // Needs to be read only
3802
+ tmp = JSON.clone(local.options.conf.content[name]);
3573
3803
  } catch (err) {
3574
3804
  return undefined;
3575
3805
  }
3576
3806
  } else {
3577
- // config = JSON.stringify(local.options.conf);
3578
- // return JSON.parse(config)
3579
- return JSON.clone(local.options.conf);
3807
+ tmp = JSON.clone(local.options.conf);
3808
+ }
3809
+
3810
+ if (
3811
+ getContext('isProxyHost')
3812
+ && typeof(tmp.hostname) != 'undefined'
3813
+ ) {
3814
+ tmp.hostname = process.gina.PROXY_HOSTNAME;
3815
+ tmp.host = process.gina.PROXY_HOST;
3816
+ // tmp.hostname = getContext('gina').config.envConf._proxyHostname
3817
+ // tmp.host = tmp.hostname.replace(/^(https|http)\:\/\//, '');
3580
3818
  }
3819
+ return tmp;
3581
3820
  }
3582
3821
 
3583
3822
  /**
@@ -4390,7 +4629,7 @@ function SuperController(options) {
4390
4629
  return next();
4391
4630
  }
4392
4631
 
4393
- if ( /http\/2/.test(protocol) ) {
4632
+ if ( stream && /http\/2/.test(protocol) ) {
4394
4633
  return stream.end();
4395
4634
  }
4396
4635
 
@@ -0,0 +1,24 @@
1
+ name: CI
2
+
3
+ on:
4
+ pull_request:
5
+ push:
6
+ branches: [ master ]
7
+
8
+ jobs:
9
+ tests-linux:
10
+ runs-on: ubuntu-latest
11
+ strategy:
12
+ fail-fast: false
13
+ matrix:
14
+ node-version: [10.16.0, 10.x, 12.x, 14.x, 16.x]
15
+ steps:
16
+ - uses: actions/checkout@v2
17
+ - name: Use Node.js ${{ matrix.node-version }}
18
+ uses: actions/setup-node@v1
19
+ with:
20
+ node-version: ${{ matrix.node-version }}
21
+ - name: Install module
22
+ run: npm install
23
+ - name: Run tests
24
+ run: npm test
@@ -0,0 +1,23 @@
1
+ name: lint
2
+
3
+ on:
4
+ pull_request:
5
+ push:
6
+ branches: [ master ]
7
+
8
+ env:
9
+ NODE_VERSION: 16.x
10
+
11
+ jobs:
12
+ lint-js:
13
+ runs-on: ubuntu-latest
14
+ steps:
15
+ - uses: actions/checkout@v2
16
+ - name: Use Node.js ${{ env.NODE_VERSION }}
17
+ uses: actions/setup-node@v1
18
+ with:
19
+ node-version: ${{ env.NODE_VERSION }}
20
+ - name: Install ESLint + ESLint configs/plugins
21
+ run: npm install --only=dev
22
+ - name: Lint files
23
+ run: npm run lint
@@ -0,0 +1,19 @@
1
+ Copyright Brian White. All rights reserved.
2
+
3
+ Permission is hereby granted, free of charge, to any person obtaining a copy
4
+ of this software and associated documentation files (the "Software"), to
5
+ deal in the Software without restriction, including without limitation the
6
+ rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
7
+ sell copies of the Software, and to permit persons to whom the Software is
8
+ furnished to do so, subject to the following conditions:
9
+
10
+ The above copyright notice and this permission notice shall be included in
11
+ all copies or substantial portions of the Software.
12
+
13
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
16
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
18
+ FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
19
+ IN THE SOFTWARE.