gina 0.1.6-alpha.2 → 0.1.6-alpha.21

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 (306) hide show
  1. package/README.md +2 -11
  2. package/framework/v0.1.6-alpha.21/VERSION +1 -0
  3. package/framework/v0.1.6-alpha.21/core/asset/plugin/dist/vendor/gina/css/gina.min.css.map +1 -0
  4. package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/asset/plugin/dist/vendor/gina/js/gina.js +103 -8
  5. package/framework/v0.1.6-alpha.21/core/asset/plugin/dist/vendor/gina/js/gina.min.js +768 -0
  6. package/framework/v0.1.6-alpha.21/core/asset/plugin/dist/vendor/gina/js/gina.min.js.map +8 -0
  7. package/framework/v0.1.6-alpha.21/core/asset/plugin/dist/vendor/gina/js/gina.onload.min.js +7 -0
  8. package/framework/v0.1.6-alpha.21/core/asset/plugin/dist/vendor/gina/js/gina.onload.min.js.map +8 -0
  9. package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/config.js +27 -3
  10. package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/controller/controller.js +211 -32
  11. package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/gna.js +54 -9
  12. package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/plugins/lib/validator/src/main.js +7 -0
  13. package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/router.js +74 -40
  14. package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/server.js +5 -2
  15. package/framework/v0.1.6-alpha.21/core/template/_gitignore +19 -0
  16. package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/template/conf/env.json +7 -5
  17. package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/bundle/add.js +2 -1
  18. package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/bundle/start.js +5 -3
  19. package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/framework/build.js +1 -1
  20. package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/helper.js +124 -18
  21. package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/project/add.js +10 -6
  22. package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/project/build.js +9 -0
  23. package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/protocol/list.js +71 -50
  24. package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/domain/src/main.js +57 -1
  25. package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/routing/src/main.js +39 -7
  26. package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/swig-filters/src/main.js +57 -8
  27. package/package.json +2 -2
  28. package/utils/prototypes.json_clone.js +8 -1
  29. package/framework/v0.1.6-alpha.2/VERSION +0 -1
  30. package/framework/v0.1.6-alpha.2/core/asset/plugin/dist/vendor/gina/css/gina.min.css.map +0 -1
  31. package/framework/v0.1.6-alpha.2/core/asset/plugin/dist/vendor/gina/js/gina.min.js +0 -765
  32. package/framework/v0.1.6-alpha.2/core/asset/plugin/dist/vendor/gina/js/gina.min.js.map +0 -8
  33. package/framework/v0.1.6-alpha.2/core/asset/plugin/dist/vendor/gina/js/gina.onload.min.js +0 -7
  34. package/framework/v0.1.6-alpha.2/core/asset/plugin/dist/vendor/gina/js/gina.onload.min.js.map +0 -8
  35. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/AUTHORS +0 -0
  36. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/LICENSE +0 -0
  37. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/asset/html/nolayout.html +0 -0
  38. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/asset/html/static.html +0 -0
  39. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/asset/img/android-chrome-192x192.png +0 -0
  40. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/asset/img/android-chrome-512x512.png +0 -0
  41. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/asset/img/apple-touch-icon.png +0 -0
  42. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/asset/img/favicon-16x16.png +0 -0
  43. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/asset/img/favicon-32x32.png +0 -0
  44. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/asset/img/favicon.ico +0 -0
  45. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/asset/plugin/README.md +0 -0
  46. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/asset/plugin/dist/vendor/gina/css/gina.min.css +0 -0
  47. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/asset/plugin/dist/vendor/gina/html/toolbar.html +0 -0
  48. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/asset/plugin/uuid.json +0 -0
  49. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/connectors/couchbase/index.js +0 -0
  50. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/connectors/couchbase/lib/connector.js +0 -0
  51. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/connectors/couchbase/lib/connector.v2.js +0 -0
  52. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/connectors/couchbase/lib/connector.v3.js +0 -0
  53. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/connectors/couchbase/lib/connector.v4.js +0 -0
  54. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/connectors/couchbase/lib/n1ql.js +0 -0
  55. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/connectors/couchbase/lib/session-store.js +0 -0
  56. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/connectors/couchbase/lib/session-store.v2.js +0 -0
  57. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/connectors/couchbase/lib/session-store.v3.js +0 -0
  58. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/connectors/couchbase/lib/session-store.v4.js +0 -0
  59. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/controller/controller.framework.js +0 -0
  60. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/controller/index.js +0 -0
  61. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/deps/busboy/.travis.yml +0 -0
  62. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/deps/busboy/LICENSE +0 -0
  63. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/deps/busboy/README.md +0 -0
  64. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/deps/busboy/deps/encoding/encoding-indexes.js +0 -0
  65. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/deps/busboy/deps/encoding/encoding.js +0 -0
  66. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/deps/busboy/lib/main.js +0 -0
  67. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/deps/busboy/lib/types/multipart.js +0 -0
  68. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/deps/busboy/lib/types/urlencoded.js +0 -0
  69. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/deps/busboy/lib/utils.js +0 -0
  70. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/deps/busboy/package.json +0 -0
  71. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/deps/swig-client/swig-2.0.0.min.js +0 -0
  72. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/dev/index.js +0 -0
  73. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/dev/lib/class.js +0 -0
  74. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/dev/lib/factory.js +0 -0
  75. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/dev/lib/tools.js +0 -0
  76. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/locales/README.md +0 -0
  77. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/locales/currency.json +0 -0
  78. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/locales/dist/language/en.json +0 -0
  79. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/locales/dist/language/fr.json +0 -0
  80. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/locales/dist/region/en.json +0 -0
  81. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/locales/dist/region/fr.json +0 -0
  82. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/locales/index.js +0 -0
  83. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/locales/src/make.js +0 -0
  84. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/locales/src/resources/currency.csv +0 -0
  85. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/locales/src/resources/region.csv +0 -0
  86. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/locales/src/resources/region.mapping.json +0 -0
  87. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/mime.types +0 -0
  88. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/model/entity.js +0 -0
  89. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/model/index.js +0 -0
  90. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/model/template/entityFactory.js +0 -0
  91. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/model/template/index.js +0 -0
  92. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/plugins/README.md +0 -0
  93. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/plugins/index.js +0 -0
  94. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/plugins/lib/file/README.md +0 -0
  95. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/plugins/lib/file/build.json +0 -0
  96. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/plugins/lib/file/package.json +0 -0
  97. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/plugins/lib/intl/README.md +0 -0
  98. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/plugins/lib/intl/build.json +0 -0
  99. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/plugins/lib/intl/package.json +0 -0
  100. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/plugins/lib/intl/src/main.js +0 -0
  101. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/plugins/lib/storage/README.md +0 -0
  102. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/plugins/lib/storage/build.json +0 -0
  103. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/plugins/lib/storage/package.json +0 -0
  104. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/plugins/lib/storage/src/main.js +0 -0
  105. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/plugins/lib/validator/README.md +0 -0
  106. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/plugins/lib/validator/build.json +0 -0
  107. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/plugins/lib/validator/package.json +0 -0
  108. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/plugins/lib/validator/src/form-validator.js +0 -0
  109. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/server.express.js +0 -0
  110. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/server.isaac.js +0 -0
  111. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/status.codes +0 -0
  112. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/template/boilerplate/bundle/config/app.json +0 -0
  113. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/template/boilerplate/bundle/config/routing.json +0 -0
  114. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/template/boilerplate/bundle/config/settings.json +0 -0
  115. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/template/boilerplate/bundle/config/settings.server.json +0 -0
  116. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/template/boilerplate/bundle/config/templates.json +0 -0
  117. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/template/boilerplate/bundle/controllers/controller.content.js +0 -0
  118. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/template/boilerplate/bundle/controllers/controller.js +0 -0
  119. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/template/boilerplate/bundle/controllers/setup.js +0 -0
  120. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/template/boilerplate/bundle/index.js +0 -0
  121. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/template/boilerplate/bundle_namespace/controllers/controller.js +0 -0
  122. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/template/boilerplate/bundle_public/css/default.css +0 -0
  123. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/template/boilerplate/bundle_public/css/vendor/readme.md +0 -0
  124. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/template/boilerplate/bundle_public/favicon.ico +0 -0
  125. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/template/boilerplate/bundle_public/js/vendor/readme.md +0 -0
  126. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/template/boilerplate/bundle_public/readme.md +0 -0
  127. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/template/boilerplate/bundle_templates/handlers/main.js +0 -0
  128. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/template/boilerplate/bundle_templates/html/content/homepage.html +0 -0
  129. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/template/boilerplate/bundle_templates/html/includes/error-msg-noscript.html +0 -0
  130. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/template/boilerplate/bundle_templates/html/includes/error-msg-outdated-browser.html +0 -0
  131. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/template/boilerplate/bundle_templates/html/layouts/main.html +0 -0
  132. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/template/command/gina.bat.tpl +0 -0
  133. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/template/command/gina.tpl +0 -0
  134. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/template/conf/manifest.json +0 -0
  135. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/template/conf/package.json +0 -0
  136. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/template/conf/settings.json +0 -0
  137. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/template/conf/statics.json +0 -0
  138. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/template/conf/templates.json +0 -0
  139. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/template/error/client/json/401.json +0 -0
  140. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/template/error/client/json/403.json +0 -0
  141. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/template/error/client/json/404.json +0 -0
  142. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/template/error/server/html/50x.html +0 -0
  143. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/template/error/server/json/500.json +0 -0
  144. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/template/error/server/json/503.json +0 -0
  145. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/core/template/extensions/logger/config.json +0 -0
  146. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/helpers/console.js +0 -0
  147. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/helpers/context.js +0 -0
  148. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/helpers/data/LICENSE +0 -0
  149. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/helpers/data/README.md +0 -0
  150. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/helpers/data/package.json +0 -0
  151. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/helpers/data/src/main.js +0 -0
  152. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/helpers/dateFormat.js +0 -0
  153. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/helpers/index.js +0 -0
  154. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/helpers/json/LICENSE +0 -0
  155. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/helpers/json/README.md +0 -0
  156. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/helpers/json/package.json +0 -0
  157. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/helpers/json/src/main.js +0 -0
  158. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/helpers/path.js +0 -0
  159. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/helpers/plugins/README.md +0 -0
  160. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/helpers/plugins/package.json +0 -0
  161. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/helpers/plugins/src/api-error.js +0 -0
  162. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/helpers/plugins/src/main.js +0 -0
  163. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/helpers/prototypes.js +0 -0
  164. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/helpers/task.js +0 -0
  165. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/helpers/text.js +0 -0
  166. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/archiver/README.md +0 -0
  167. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/archiver/build.json +0 -0
  168. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/archiver/package.json +0 -0
  169. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/archiver/src/dep/jszip.min.js +0 -0
  170. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/archiver/src/main.js +0 -0
  171. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/aliases.json +0 -0
  172. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/bundle/arguments.json +0 -0
  173. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/bundle/copy.js +0 -0
  174. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/bundle/cp.js +0 -0
  175. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/bundle/help.js +0 -0
  176. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/bundle/help.txt +0 -0
  177. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/bundle/list.js +0 -0
  178. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/bundle/remove.js +0 -0
  179. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/bundle/rename.js +0 -0
  180. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/bundle/restart.js +0 -0
  181. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/bundle/rm.js +0 -0
  182. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/bundle/status.js +0 -0
  183. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/bundle/stop.js +0 -0
  184. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/env/add.js +0 -0
  185. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/env/get.js +0 -0
  186. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/env/help.js +0 -0
  187. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/env/help.txt +0 -0
  188. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/env/link-dev.js +0 -0
  189. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/env/list.js +0 -0
  190. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/env/remove.js +0 -0
  191. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/env/rm.js +0 -0
  192. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/env/set.js +0 -0
  193. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/env/unset.js +0 -0
  194. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/env/use.js +0 -0
  195. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/framework/dot.js +0 -0
  196. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/framework/get.js +0 -0
  197. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/framework/help.js +0 -0
  198. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/framework/help.txt +0 -0
  199. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/framework/init.js +0 -0
  200. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/framework/link-node-modules.js +0 -0
  201. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/framework/link.js +0 -0
  202. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/framework/msg.json +0 -0
  203. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/framework/open.js +0 -0
  204. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/framework/restart.js +0 -0
  205. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/framework/set.js +0 -0
  206. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/framework/start.js +0 -0
  207. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/framework/status.js +0 -0
  208. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/framework/stop.js +0 -0
  209. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/framework/tail.js +0 -0
  210. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/framework/update.js +0 -0
  211. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/framework/version.js +0 -0
  212. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/gina-dev.1.md +0 -0
  213. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/gina-framework.1.md +0 -0
  214. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/gina.1.md +0 -0
  215. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/index.js +0 -0
  216. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/msg.json +0 -0
  217. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/port/help.js +0 -0
  218. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/port/help.txt +0 -0
  219. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/port/inc/scan.js +0 -0
  220. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/port/list.js +0 -0
  221. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/port/reset.js +0 -0
  222. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/port/set.js +0 -0
  223. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/project/arguments.json +0 -0
  224. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/project/help.js +0 -0
  225. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/project/help.txt +0 -0
  226. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/project/import.js +0 -0
  227. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/project/list.js +0 -0
  228. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/project/move.js +0 -0
  229. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/project/remove.js +0 -0
  230. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/project/rename.js +0 -0
  231. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/project/restart.js +0 -0
  232. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/project/rm.js +0 -0
  233. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/project/start.js +0 -0
  234. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/project/status.js +0 -0
  235. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/project/stop.js +0 -0
  236. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/protocol/help.js +0 -0
  237. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/protocol/help.txt +0 -0
  238. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/protocol/set.js +0 -0
  239. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/scope/add.js +0 -0
  240. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/scope/help.js +0 -0
  241. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/scope/help.txt +0 -0
  242. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/scope/link-local.js +0 -0
  243. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/scope/link-production.js +0 -0
  244. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/scope/list.js +0 -0
  245. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/scope/remove.js +0 -0
  246. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/scope/rm.js +0 -0
  247. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/scope/use.js +0 -0
  248. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cmd/view/add.js +0 -0
  249. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/collection/README.md +0 -0
  250. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/collection/build.json +0 -0
  251. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/collection/package.json +0 -0
  252. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/collection/src/main.js +0 -0
  253. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/config.js +0 -0
  254. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cron/README.md +0 -0
  255. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cron/package.json +0 -0
  256. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/cron/src/main.js +0 -0
  257. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/domain/LICENSE +0 -0
  258. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/domain/README.md +0 -0
  259. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/domain/dist/public_suffix_list.dat +0 -0
  260. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/domain/exemples/backend.js +0 -0
  261. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/domain/exemples/frontend.html +0 -0
  262. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/domain/package.json +0 -0
  263. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/generator/index.js +0 -0
  264. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/index.js +0 -0
  265. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/inherits/LICENSE +0 -0
  266. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/inherits/README.md +0 -0
  267. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/inherits/example/inheriting_eventemitter.js +0 -0
  268. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/inherits/example/protected_inheritance.js +0 -0
  269. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/inherits/example/simple_inheritance.js +0 -0
  270. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/inherits/example/super_attribute_overridden_by_child_on_init.js +0 -0
  271. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/inherits/package.json +0 -0
  272. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/inherits/src/main.js +0 -0
  273. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/logger/README.md +0 -0
  274. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/logger/package.json +0 -0
  275. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/logger/src/containers/default/index.js +0 -0
  276. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/logger/src/containers/file/index.js +0 -0
  277. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/logger/src/containers/file/lib/logrotator/README.md +0 -0
  278. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/logger/src/containers/file/lib/logrotator/index.js +0 -0
  279. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/logger/src/containers/mq/index.js +0 -0
  280. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/logger/src/containers/mq/listener.js +0 -0
  281. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/logger/src/containers/mq/speaker.js +0 -0
  282. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/logger/src/helper.js +0 -0
  283. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/logger/src/main.js +0 -0
  284. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/math/index.js +0 -0
  285. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/merge/README.md +0 -0
  286. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/merge/example/merge.js +0 -0
  287. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/merge/example/merge_2_literal objects.js +0 -0
  288. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/merge/example/merge_and_preserve_first.js +0 -0
  289. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/merge/package.json +0 -0
  290. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/merge/src/main.js +0 -0
  291. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/model.js +0 -0
  292. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/proc.js +0 -0
  293. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/routing/README.md +0 -0
  294. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/routing/build.json +0 -0
  295. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/routing/package.json +0 -0
  296. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/session-store.js +0 -0
  297. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/shell.js +0 -0
  298. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/swig-filters/README.md +0 -0
  299. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/swig-filters/package.json +0 -0
  300. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/url/README.md +0 -0
  301. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/url/index.js +0 -0
  302. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/url/mocks.json +0 -0
  303. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/url/routing.json +0 -0
  304. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/url/test.js +0 -0
  305. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/lib/validator.js +0 -0
  306. /package/framework/{v0.1.6-alpha.2 → v0.1.6-alpha.21}/package.json +0 -0
@@ -0,0 +1,7 @@
1
+ window.originalContext=window.jQuery;window.ginaToolbar=null;
2
+ window.onGinaLoaded=function(b){if(!b)return!1;if(b.isFrameworkLoaded)return!0;var f=b.config={bundle:'{{ page.environment.bundle }}',env:'{{ page.environment.env }}',envIsDev:/^true$/.test('{{ page.environment.envIsDev }}')?!0:!1,scope:'{{ page.environment.scope }}',scopeIsLocal:/^true$/.test('{{ page.environment.scopeIsLocal }}')?!0:!1,scopeIsProduction:/^true$/.test('{{ page.environment.scopeIsProduction }}')?!0:!1,isProxyHost:/^true$/.test('{{ page.environment.isProxyHost }}')?!0:!1,hostname:'{{ page.environment.hostname }}',
3
+ routing:JSON.parse(decodeURIComponent('{{ page.environment.routing }}')),reverseRouting:JSON.parse(decodeURIComponent('{{ page.environment.reverseRouting }}')),version:'{{ page.environment.version }}',webroot:'{{ page.environment.webroot }}',protocol:'{{ page.environment.protocol }}'};b.session={id:'{{ page.data.session.id }}',originalTimeout:'{{ page.data.session.timeout }}',createdAt:'{{ page.data.session.createdAt }}',lastModified:'{{ page.data.session.lastModified }}',expiresAt:null};b.session.__defineGetter__('timeout',
4
+ function(){if(this.lastModified){this.lastModified&&'string'==typeof this.lastModified&&(this.lastModified=new Date(this.lastModified));this.createdAt&&'string'==typeof this.createdAt&&(this.createdAt=new Date(this.createdAt));this.originalTimeout&&'string'==typeof this.originalTimeout&&(this.originalTimeout=parseInt(this.originalTimeout));this.expiresAt=new Date((new Date(this.lastModified)).getTime()+this.originalTimeout);var c=this.expiresAt-new Date}else c=null;return c});b.session.timeout;b.config.getRouting=
5
+ function(c){if('undefined'==typeof c)return b.config.routing;var g={},k=b.config.routing;c=new RegExp('\\@'+c+String.fromCharCode(36));for(var h in k)c.test(h)&&(g[h]=k[h]);return 0<g.count()?g:null};window.GINA_ENV='{{ page.environment.env }}';window.GINA_ENV_IS_DEV=/^true$/i.test('{{ page.environment.envIsDev }}')?!0:!1;if('undefined'!=typeof location.search&&/debug=/i.test(location.search)||!location.search&&/\?/.test(location.href)){var a=(' '+location.search).slice(1);!a&&/\?/.test(location.href)&&
6
+ (a=location.href.match(/\?.*/),Array.isArray(a)&&0<a.length&&(a=a[0]));(a=a.match(/debug=(true|false)/))&&(window.GINA_ENV_IS_DEV=b.config.envIsDev=/^true$/i.test(a[0].split(/=/)[1])?!0:!1);a=a=null}b.isFrameworkLoaded=!0;b.setOptions(f);try{b.forms=JSON.parse(decodeURIComponent('{{ page.environment.forms }}'))}catch(c){throw c;}a=null;a=document.head.getElementsByTagName('link');for(var d=0,e=a.length,l=!1,m=RegExp('css/vendor/gina/gina.min.css');d<e;++d)if(m.test(a[d].href)){l=!0;break}m=e=d=a=
7
+ null;l||(a=document.createElement('link'),a.href=f.webroot+'css/vendor/gina/gina.min.css',a.media='screen',a.rel='stylesheet',a.type='text/css',d=document.getElementsByTagName('head')[0],(e=d.getElementsByTagName('link'))&&'undefined'!=typeof e.length&&0<e.length?(console.debug('placed before'),d.insertBefore(a,e[0])):(console.debug('placed after'),d.appendChild(a)),d=e=null);/^true$/i.test(f.envIsDev)&&(f=window.require('gina/toolbar'),window.ginaToolbar=new f);return!0};
@@ -0,0 +1,8 @@
1
+ {
2
+ "version":3,
3
+ "file":"/usr/local/lib/node_modules/gina/framework/v0.1.6-alpha.21/core/asset/plugin/dist/vendor/gina/js/gina.onload.min.js",
4
+ "lineCount":7,
5
+ "mappings":"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",
6
+ "sources":["/usr/local/lib/node_modules/gina/framework/v0.1.6-alpha.21/core/asset/plugin/src/vendor/gina/utils/loader.js"],
7
+ "names":["window","gina","options","test","JSON","parse","decodeURIComponent","version","__defineGetter__","_this","Date","parseInt","getTime","timeout","bundle","routes","routing","re","RegExp","String","fromCharCode","route","location","search","href","slice","match","Array","isArray","length","matched","split","err","link","links","document","head","getElementsByTagName","i","len","found","cssPath","createElement","media","rel","type","headEls","existingLinks","console","debug","insertBefore","appendChild","Toolbar"]
8
+ }
@@ -72,6 +72,7 @@ function Config(opt, contextResetNeeded) {
72
72
  * */
73
73
  var init = function(opt, contextResetNeeded) {
74
74
 
75
+
75
76
  if ( !Config.initialized) {
76
77
  var env = opt.env;
77
78
  var scope = opt.scope;
@@ -395,7 +396,8 @@ function Config(opt, contextResetNeeded) {
395
396
  var protocol = self.envConf[self.startingApp][env].content.settings.server.protocol || self.envConf[self.startingApp][env].server.protocol;
396
397
  var scheme = self.envConf[self.startingApp][env].content.settings.server.scheme || self.envConf[self.startingApp][env].server.scheme;
397
398
 
398
- self.envConf[self.startingApp][env].hostname = scheme + '://' + self.envConf[self.startingApp][env].host + ':' + self.envConf[self.startingApp][env].server.port;
399
+ var hostname = scheme + '://' + self.envConf[self.startingApp][env].host + ':' + self.envConf[self.startingApp][env].server.port;
400
+ self.envConf[self.startingApp][env].hostname = hostname;
399
401
 
400
402
  self.envConf[bundle][env].hostname = self.envConf[self.startingApp][env].hostname;
401
403
  self.envConf[bundle][env].content.routing = self.envConf[self.startingApp][env].content.routing;
@@ -910,7 +912,25 @@ function Config(opt, contextResetNeeded) {
910
912
  // Variables replace. Compare with gina/core/template/conf/env.json.
911
913
  // Defining root domain (TLD or SLD)
912
914
  // by default
915
+ // var hostFQDN = await domainLib.getFQDN() || os.hostname();
916
+ // console.debug('[CONFIG]['+ app +'][loadWithTemplate][FQDN] Setting Host FQDN from `'+ newContent[app][env].host +'` => `'+ self.hostFQDN);
913
917
  var rootDomain = domainLib.getRootDomain(os.hostname()).value;
918
+ // if (
919
+ // typeof(newContent[app][env].host) != 'undefined'
920
+ // && self.startingApp == app
921
+ // && new RegExp('^'+ app + '-').test(newContent[app][env].host)
922
+ // && newContent[app][env].host != hostFQDN
923
+ // ) {
924
+ // console.debug('[CONFIG]['+ app +'][loadWithTemplate] Auto HOST MODE ON: retrieving current host FQDN.');
925
+ // // Get fqdn (equivalent of `hostname --fqdn` command line)
926
+ // try {
927
+ // newContent[app][env].host = hostFQDN;
928
+ // console.info('[CONFIG]['+ app +'][loadWithTemplate][FQDN] Host set as `'+ self.hostFQDN +'`');
929
+ // } catch (fqdnErr) {
930
+ // console.emerg('[CONFIG]['+ app +'][loadWithTemplate][FQDN] Check you `/etc/hosts` or check your hostname by running `hostname --fqdn` \n\r'+ fqdnErr.stack);
931
+ // process.exit(1)
932
+ // }
933
+ // }
914
934
  // if overrided by the project `manifest.json`: meaning all bundles belong to the same TLD or SLD
915
935
  if ( typeof(manifest.rootDomain) != 'undefined' ) {
916
936
  rootDomain = manifest.rootDomain;
@@ -1324,7 +1344,11 @@ function Config(opt, contextResetNeeded) {
1324
1344
  for (let e = 0, eLen = allEnvs.length; e < eLen; e++) {
1325
1345
  // *.dev.json or *.global.json
1326
1346
  let re = new RegExp('\.('+ allEnvs[e] +'|global)\.json$');
1327
- if ( re.test(fName) && allEnvs[e] != env ) {
1347
+ if (
1348
+ re.test(fName)
1349
+ // 2023-07-28 - Fixed this by commenting the rest of the test to avoid routing.global.json to be included in list
1350
+ //&& allEnvs[e] != env
1351
+ ) {
1328
1352
  // we should skip it
1329
1353
  skipIt = true;
1330
1354
  break;
@@ -2367,7 +2391,7 @@ function Config(opt, contextResetNeeded) {
2367
2391
  conf[bundle][env].env = env;
2368
2392
  conf[bundle][env].scope = scope;
2369
2393
 
2370
- // this setting is replace on http requests by the value extracted form the request header
2394
+ // this setting is replaced on http requests by the value extracted form the request header
2371
2395
  if (
2372
2396
  typeof(conf[bundle][env].content.settings) != 'undefined'
2373
2397
  && typeof(conf[bundle][env].content.settings.server) != 'undefined'
@@ -343,8 +343,106 @@ function SuperController(options) {
343
343
  set('page.environment.scopeIsProduction', /^true$/i.test(process.env.NODE_SCOPE_IS_PRODUCTION) );
344
344
  set('page.environment.date.now', new Date().format("isoDateTime"));
345
345
 
346
+ // var requestPort = req.headers.port || req.headers[':port'];
347
+ // var isProxyHost = (
348
+ // typeof(req.headers.host) != 'undefined'
349
+ // && typeof(requestPort) != 'undefined'
350
+ // && /^(80|443)$/.test(requestPort)
351
+ // && local.options.conf.server.scheme +'://'+ req.headers.host +':'+ requestPort != local.options.conf.hostname.replace(/\:\d+$/, '') +':'+ local.options.conf.server.port
352
+ // ||
353
+ // typeof(req.headers[':authority']) != 'undefined'
354
+ // && local.options.conf.server.scheme +'://'+ req.headers[':authority'] != local.options.conf.hostname
355
+ // ||
356
+ // typeof(req.headers.host) != 'undefined'
357
+ // && typeof(requestPort) != 'undefined'
358
+ // && /^(80|443)$/.test(requestPort)
359
+ // && req.headers.host == local.options.conf.host
360
+ // ||
361
+ // typeof(req.headers['x-nginx-proxy']) != 'undefined'
362
+ // && /^true$/i.test(req.headers['x-nginx-proxy'])
363
+ // ) ? true : false;
364
+ // setContext('isProxyHost', isProxyHost);
365
+ var isProxyHost = getContext('isProxyHost') || false;
366
+ set('page.environment.isProxyHost', isProxyHost);
367
+ var _config = ctx.config.envConf[options.conf.bundle][process.env.NODE_ENV];
368
+ // by default
369
+ var hostname = _config.hostname + _config.server.webroot;
370
+ var scheme = hostname.match(/^(https|http)/)[0];
371
+ var requestPort = (local.req.headers.port||local.req.headers[':port']);
372
+
373
+ var hostPort = hostname.match(/(\:d+\/|\:\d+)$/);
374
+ hostPort = (hostPort) ? ~~(hostPort[0].replace(/\:/g, '')) : _config.port[_config.server.protocol][_config.server.scheme];
375
+ // Linking bundle B from bundle A wihtout proxy
376
+ var isSpecialCase = (
377
+ getContext('bundle') != _config.bundle
378
+ && requestPort != hostPort
379
+ && local.req.headers[':host'] != process.env.PROXY_HOST
380
+ ) ? true : false;
381
+
382
+ if (isSpecialCase) {
383
+ hostname = _config.hostname;
384
+ }
385
+
386
+ if (
387
+ isProxyHost
388
+ && !isSpecialCase
389
+ ) {
390
+ // rewrite hostname vs req.headers.host
391
+ hostname = scheme + '://'+ (local.req.headers.host||local.req.headers[':host']);
392
+
393
+ if (
394
+ !/^(80|443)$/.test(requestPort)
395
+ && !new RegExp(requestPort+'$').test(hostname)
396
+ ) {
397
+ hostname += ':'+ requestPort;
398
+ }
399
+ }
400
+
401
+ set('page.environment.hostname', hostname);
402
+ set('page.environment.rootDomain', _config.rootDomain);
403
+ set('page.environment.webroot', options.conf.server.webroot);
404
+
405
+ if ( typeof(ctx.config.envConf._isRoutingUpdateNeeded) == 'undefined') {
406
+ ctx.config.envConf._isRoutingUpdateNeeded = false;
407
+ }
408
+
409
+ if (
410
+ typeof(ctx.config.envConf._proxyHostname) == 'undefined'
411
+ ||
412
+ hostname != ctx.config.envConf._proxyHostname
413
+ ) {
414
+ ctx.config.envConf._proxyHostname = (isProxyHost) ? hostname : null;
415
+ ctx.config.envConf._isRoutingUpdateNeeded = true;
416
+ }
417
+
418
+ if ( typeof(ctx.config.envConf._routingCloned) == 'undefined' ) {
419
+ ctx.config.envConf._routingCloned = JSON.clone(ctx.config.envConf.routing);
420
+ }
421
+
422
+ var routing = local.options.conf.routing = ctx.config.envConf._routingCloned; // all routes
423
+ if ( /^true$/i.test(ctx.config.envConf._isRoutingUpdateNeeded) ) {
424
+
425
+ for (let r in ctx.config.envConf.routing) {
426
+ if ( isProxyHost ) {
427
+ local.options.conf.routing[r].host = hostname.replace(/^(https|http)\:\/\//, '');
428
+ local.options.conf.routing[r].hostname = hostname;
429
+ let scheme = hostname.match(/^(https|http)/)[0];
430
+ local.options.conf.routing[r].hostname = scheme + '://'+ (local.req.headers.host||local.req.headers[':host']);
431
+ let requestPort = (local.req.headers.port||local.req.headers[':port']);
432
+ if (
433
+ !/^(80|443)$/.test(requestPort)
434
+ && !new RegExp(requestPort+'$').test(local.options.conf.routing[r].hostname)
435
+ ) {
436
+ local.options.conf.routing[r].hostname += ':'+ requestPort
437
+ }
438
+ continue;
439
+ }
440
+ local.options.conf.routing[r].host = ctx.config.envConf.routing[r].host;
441
+ local.options.conf.routing[r].hostname = ctx.config.envConf.routing[r].hostname;
442
+ }
443
+ ctx.config.envConf._isRoutingUpdateNeeded = false;
346
444
 
347
- var routing = local.options.conf.routing = ctx.config.envConf.routing; // all routes
445
+ }
348
446
  set('page.environment.routing', encodeRFC5987ValueChars(JSON.stringify(routing))); // export for GFF
349
447
  //reverseRouting
350
448
  var reverseRouting = local.options.conf.reverseRouting = ctx.config.envConf.reverseRouting; // all routes
@@ -354,9 +452,8 @@ function SuperController(options) {
354
452
  set('page.environment.forms', encodeRFC5987ValueChars(JSON.stringify(forms))); // export for GFF
355
453
  set('page.forms', options.conf.content.forms);
356
454
 
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);
455
+
456
+
360
457
  set('page.environment.bundle', options.conf.bundle);
361
458
  set('page.environment.project', options.conf.projectName);
362
459
  set('page.environment.protocol', options.conf.server.protocol);
@@ -437,11 +534,6 @@ function SuperController(options) {
437
534
  set('page.view.lang', userCulture);
438
535
  }
439
536
 
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
537
 
446
538
  //TODO - detect when to use swig
447
539
  var dir = null;
@@ -839,12 +931,28 @@ function SuperController(options) {
839
931
  return;
840
932
  }
841
933
 
934
+ var localRequestPort = local.req.headers.port || local.req.headers[':port'];
842
935
  var isProxyHost = (
843
936
  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
937
+ && typeof(localRequestPort) != 'undefined'
938
+ && /^(80|443)$/.test(localRequestPort)
939
+ && localOptions.conf.server.scheme +'://'+ local.req.headers.host+':'+ localRequestPort != localOptions.conf.hostname.replace(/\:\d+$/, '') +':'+ localOptions.conf.server.port
940
+ ||
941
+ typeof(local.req.headers[':authority']) != 'undefined'
942
+ && localOptions.conf.server.scheme +'://'+ local.req.headers[':authority'] != localOptions.conf.hostname
943
+ ||
944
+ typeof(local.req.headers.host) != 'undefined'
945
+ && typeof(localRequestPort) != 'undefined'
946
+ && /^(80|443)$/.test(localRequestPort)
947
+ && local.req.headers.host == localOptions.conf.host
948
+ ||
949
+ typeof(local.req.headers['x-nginx-proxy']) != 'undefined'
950
+ && /^true$/i.test(local.req.headers['x-nginx-proxy'])
951
+ ||
952
+ typeof(process.env.PROXY_HOSTNAME) != 'undefined'
847
953
  ) ? true : false;
954
+
955
+
848
956
  // setup swig default filters
849
957
  var filters = SwigFilters({
850
958
  options : JSON.clone(localOptions),
@@ -1619,7 +1727,11 @@ function SuperController(options) {
1619
1727
  var authority = ( typeof(local.req.headers['x-forwarded-proto']) != 'undefined' ) ? local.req.headers['x-forwarded-proto'] : local.options.conf.server.scheme;
1620
1728
  authority += '://'+ local.req.headers.host;
1621
1729
  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 ) {
1730
+ if (
1731
+ !/^\/$/.test(local.options.conf.server.webroot)
1732
+ && local.options.conf.server.webroot.length > 0
1733
+ // && local.options.conf.hostname.replace(/\:\d+$/, '') == authority
1734
+ ) {
1623
1735
  useWebroot = true
1624
1736
  }
1625
1737
  authority = null;
@@ -1663,13 +1775,45 @@ function SuperController(options) {
1663
1775
  , rLen = resArr.length
1664
1776
  , obj = null
1665
1777
  , str = ''
1778
+ , isProxyHost = getContext('isProxyHost')
1666
1779
  , requestHost = ( /http\/2/.test(local.options.conf.server.protocol) )
1667
1780
  ? local.req.headers[':host']
1668
1781
  : local.req.headers.host
1669
1782
  , hostname = ( typeof(requestHost) != 'undefined' && local.options.conf.host != requestHost)
1670
- ? local.options.conf.server.scheme +'://'+ requestHost + ':'+ local.options.conf.server.port
1783
+ ? local.options.conf.server.scheme +'://'+ requestHost
1671
1784
  : local.options.conf.hostname
1785
+ , scheme = hostname.match(/^(https|http)/)[0]
1672
1786
  ;
1787
+ var requestPort = (local.req.headers.port||local.req.headers[':port']);
1788
+ var hostPort = local.options.conf.hostname.match(/(\:d+\/|\:\d+)$/);
1789
+ hostPort = (hostPort) ? ~~(hostPort[0].replace(/\:/g, '')) : local.options.conf.port[local.options.conf.server.protocol][local.options.conf.server.scheme];
1790
+ // Linking bundle B from bundle A wihtout proxy
1791
+ var isSpecialCase = (
1792
+ getContext('bundle') != local.options.conf.bundle
1793
+ && requestPort != hostPort
1794
+ && local.req.headers[':host'] != process.env.PROXY_HOST
1795
+ ) ? true : false;
1796
+
1797
+ if (isSpecialCase) {
1798
+ hostname = local.options.conf.hostname
1799
+ }
1800
+
1801
+
1802
+ if (
1803
+ isProxyHost
1804
+ && !isSpecialCase
1805
+ ) {
1806
+
1807
+ hostname = scheme + '://'+ (local.req.headers.host||local.req.headers[':host']||process.env.PROXY_HOST);
1808
+
1809
+ if (
1810
+ !/^(80|443)$/.test(requestPort)
1811
+ && !new RegExp(requestPort+'$').test(hostname)
1812
+ ) {
1813
+ hostname += ':'+ requestPort;
1814
+ }
1815
+ }
1816
+
1673
1817
  switch(type){
1674
1818
  case 'css':
1675
1819
  for (; r < rLen; ++r) {
@@ -1895,9 +2039,9 @@ function SuperController(options) {
1895
2039
  // ignoreWebRoot = false
1896
2040
  // } else
1897
2041
  if (typeof(res) === 'string' || typeof(res) === 'number' || typeof(res) === 'boolean') {
1898
- if ( /true|1/.test(res) ) {
2042
+ if ( /^(true|1)$/i.test(res) ) {
1899
2043
  ignoreWebRoot = true
1900
- } else if ( /false|0/.test(res) ) {
2044
+ } else if ( /^(false|0)$/i.test(res) ) {
1901
2045
  ignoreWebRoot = false
1902
2046
  } else {
1903
2047
  res = local.res;
@@ -2015,8 +2159,37 @@ function SuperController(options) {
2015
2159
 
2016
2160
  if ( !self.forward404Unless(condition, req, res) ) { // forward to 404 if bad route
2017
2161
 
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;
2162
+ var localRequestPort = local.req.headers.port || local.req.headers[':port'];
2163
+ var isProxyHost = (
2164
+ typeof(local.req.headers.host) != 'undefined'
2165
+ && typeof(localRequestPort) != 'undefined'
2166
+ && /^(80|443)$/.test(localRequestPort)
2167
+ && local.options.conf.server.scheme +'://'+ local.req.headers.host +':'+ localRequestPort != local.options.conf.hostname.replace(/\:\d+$/, '') +':'+ local.options.conf.server.port
2168
+ ||
2169
+ typeof(local.req.headers[':authority']) != 'undefined'
2170
+ && local.options.conf.server.scheme +'://'+ local.req.headers[':authority'] != local.options.conf.hostname
2171
+ ||
2172
+ typeof(local.req.headers.host) != 'undefined'
2173
+ && typeof(localRequestPort) != 'undefined'
2174
+ && /^(80|443)$/.test(localRequestPort)
2175
+ && req.headers.host == local.options.conf.host
2176
+ ||
2177
+ typeof(local.req.headers['x-nginx-proxy']) != 'undefined'
2178
+ && /^true$/i.test(local.req.headers['x-nginx-proxy'])
2179
+ ||
2180
+ typeof(process.env.PROXY_HOSTNAME) != 'undefined'
2181
+ ) ? true : false;
2182
+
2183
+
2184
+
2185
+ var hostname = (isProxyHost)
2186
+ ? process.env.PROXY_HOSTNAME
2187
+ : ctx.config.envConf[bundle][env].hostname;
2188
+
2189
+ // var hostname = (isProxyHost)
2190
+ // ? ctx.config.envConf._proxyHostname
2191
+ // : ctx.config.envConf[bundle][env].hostname;
2192
+
2020
2193
 
2021
2194
  // if ( !/\:\d+$/.test(req.headers.host) )
2022
2195
  // hostname = hostname.replace(/\:\d+$/, '');
@@ -2750,9 +2923,10 @@ function SuperController(options) {
2750
2923
  }
2751
2924
  }
2752
2925
 
2753
- var ctx = getContext()
2754
- , protocol = null
2755
- , scheme = null
2926
+ var ctx = getContext()
2927
+ , protocol = null
2928
+ , scheme = null
2929
+ , isProxyHost = getContext('isProxyHost')
2756
2930
  ;
2757
2931
  // cleanup options.path
2758
2932
  if (/\:\/\//.test(options.path)) {
@@ -2785,6 +2959,7 @@ function SuperController(options) {
2785
2959
  var bundle = ( options.hostname.replace(/(.*)\:\/\//, '') ).split(/\@/)[0];
2786
2960
 
2787
2961
  // No shorcut possible because conf.hostname might differ from user inputs
2962
+
2788
2963
  options.host = ctx.gina.config.envConf[bundle][ctx.env].host.replace(/(.*)\:\/\//, '').replace(/\:\d+/, '');
2789
2964
  options.hostname = ctx.gina.config.envConf[bundle][ctx.env].hostname;
2790
2965
  options.port = ctx.gina.config.envConf[bundle][ctx.env].server.port;
@@ -3560,24 +3735,28 @@ function SuperController(options) {
3560
3735
  *
3561
3736
  * */
3562
3737
  this.getConfig = function(name) {
3738
+ var tmp = null;
3563
3739
  if ( typeof(name) != 'undefined' ) {
3564
3740
  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]);
3741
+ // Needs to be read only
3742
+ tmp = JSON.clone(local.options.conf.content[name]);
3573
3743
  } catch (err) {
3574
3744
  return undefined;
3575
3745
  }
3576
3746
  } else {
3577
- // config = JSON.stringify(local.options.conf);
3578
- // return JSON.parse(config)
3579
- return JSON.clone(local.options.conf);
3747
+ tmp = JSON.clone(local.options.conf);
3748
+ }
3749
+
3750
+ if (
3751
+ getContext('isProxyHost')
3752
+ && typeof(tmp.hostname) != 'undefined'
3753
+ ) {
3754
+ tmp.hostname = process.env.PROXY_HOSTNAME;
3755
+ tmp.host = process.env.PROXY_HOST;
3756
+ // tmp.hostname = getContext('gina').config.envConf._proxyHostname
3757
+ // tmp.host = tmp.hostname.replace(/^(https|http)\:\/\//, '');
3580
3758
  }
3759
+ return tmp;
3581
3760
  }
3582
3761
 
3583
3762
  /**
@@ -212,10 +212,52 @@ gna.env = process.env.NODE_ENV = env;
212
212
  gna.scope = process.env.NODE_SCOPE = scope;
213
213
  gna.os.isWin32 = process.env.isWin32 = isWin32;
214
214
  gna.isAborting = false;
215
- //Cahceless is also defined in the main config : Config::isCacheless().
215
+ //Cacheless is also defined in the main config : Config::isCacheless().
216
216
  process.env.NODE_ENV_IS_DEV = (/^true$/i.test(isDev)) ? true : false;
217
217
  process.env.NODE_SCOPE_IS_LOCAL = (/^true$/i.test(isLocalScope)) ? true : false;
218
218
  process.env.NODE_SCOPE_IS_PRODUCTION = (/^true$/i.test(isProductionScope)) ? true : false;
219
+ // Proxy check
220
+ var proxyPathObj = new _(projects[projectName].path + '/proxy.json', true);
221
+ var proxy = null;
222
+ if ( proxyPathObj.existsSync() ) {
223
+ try {
224
+ var proxyColl = requireJSON(proxyPathObj.toString());
225
+ proxy = new lib.Collection(proxyColl).findOne({ scope: process.env.NODE_SCOPE, env: process.env.NODE_ENV });
226
+ proxyColl = null;
227
+ } catch (proxyErr) {
228
+ console.error('[ FRAMEWORK ][ configurationError ] ', proxyErr.stack || proxyErr.message || proxyErr);
229
+ }
230
+
231
+ if (proxy) {
232
+ gna.proxyHostname = process.env.PROXY_HOSTNAME = proxy.hostname;
233
+ gna.proxyHost = process.env.PROXY_HOST = proxy.hostname
234
+ .replace(/^(https|http)\:\/\//g, '')
235
+ .replace(/\:\d+\/$|\:\d+$/, '')
236
+ ;
237
+ var proxyPort = gna.proxyHostname.match(/\:\d+\/$|\:\d+$/) || null;
238
+ if (proxyPort) {
239
+ proxyPort = parseInt(proxyPort[0].match(/\d+/));
240
+ } else {
241
+ var foundScheme = gna.proxyHostname.match(/^(https|http)\:\/\//g)[0].replace(/\:\/\//g, '');
242
+ switch (foundScheme) {
243
+ case 'https':
244
+ proxyPort = 443;
245
+ break;
246
+ case 'ftp':
247
+ proxyPort = 21;
248
+ break;
249
+ case 'sftp':
250
+ proxyPort = 22;
251
+ break;
252
+ default:
253
+ proxyPort = 80;
254
+ break;
255
+ }
256
+ foundScheme = null;
257
+ }
258
+ gna.proxyPort = process.env.PROXY_PORT = parseInt(proxyPort)
259
+ }
260
+ }
219
261
 
220
262
 
221
263
  var bundlesPath = (isDev) ? projects[projectName]['path'] + '/src' : projects[projectName]['path'] + '/bundles';
@@ -463,7 +505,12 @@ gna.mount = process.mount = function(bundlesPath, source, target, type, callback
463
505
 
464
506
  // hack to test none-dev env without building: in case you did not build your bundle, but you have the src available
465
507
  if (!isSourceFound && !isDev) {
466
- var srcPathObj = new _( root +'/'+ gna.project.bundles[gna.core.startingApp].src);
508
+ var srcPathObj = null;
509
+ try {
510
+ srcPathObj = new _( root +'/'+ gna.project.bundles[gna.core.startingApp].src);
511
+ } catch (buildError) {
512
+ return callback( new Error('Built not found for your selected scope !'));
513
+ }
467
514
  if ( srcPathObj.existsSync() ) {
468
515
  var d =(d = _(source).split(/\//g)).splice(0, d.length-1).join('/');
469
516
  var destinationObj = new _(d);
@@ -552,22 +599,20 @@ isBundleMounted(projects, bundlesPath, getContext('bundle'), function onBundleMo
552
599
 
553
600
  joinContext(conf.contexts);
554
601
  gna.getConfig = function(name){
555
- // var tmp = '';
602
+ var tmp = null;
556
603
  if ( typeof(name) != 'undefined' ) {
557
604
  try {
558
605
  //Protect it.
559
- // tmp = JSON.stringify(conf.content[name]);
560
- // return JSON.parse(tmp)
561
- return JSON.clone(conf.content[name])
606
+ tmp = JSON.clone(conf.content[name])
562
607
  } catch (err) {
563
608
  console.error('[ FRAMEWORK ] ', err.stack);
564
609
  return undefined
565
610
  }
566
611
  } else {
567
- // tmp = JSON.stringify(conf);
568
- // return JSON.parse(tmp)
569
- return JSON.clone(conf)
612
+ //Protect it.
613
+ tmp = JSON.clone(conf)
570
614
  }
615
+ return tmp
571
616
  };
572
617
  try {
573
618
  //configureMiddleware(instance, express); // no, no and no...
@@ -1276,6 +1276,13 @@
1276
1276
  // } else { // external - need to remove `X-Requested-With` from `options.headers`
1277
1277
  result.location = (!/^http/.test(result.location) && !/^\//.test(result.location) ) ? location.protocol +'//' + result.location : result.location;
1278
1278
  //}
1279
+ // isProxyHost ?
1280
+ if (
1281
+ result.location.replace(/^http(.*)\:\d+/, '$1').replace(/^\:\/\//, '').split(/\//g)[0] == gina.config.hostname
1282
+ && gina.config.hostname == window.location.host
1283
+ ) {
1284
+ result.location = location.protocol + result.location.replace(/^http(.*)\:\d+/, '$1').replace(/^\:/, '')
1285
+ }
1279
1286
 
1280
1287
  return setTimeout(() => {
1281
1288
  window.location.href = result.location;