gina 0.1.6-alpha.9 → 0.1.6-alpha.90

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 (390) hide show
  1. package/LICENSE +1 -1
  2. package/README-4Contributors.md +14 -8
  3. package/README.md +4 -4
  4. package/bin/cli +14 -0
  5. package/bin/gina +29 -1
  6. package/framework/{v0.1.6-alpha.9/lib/inherits → v0.1.6-alpha.90}/LICENSE +1 -1
  7. package/framework/v0.1.6-alpha.90/VERSION +1 -0
  8. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/asset/plugin/README.md +1 -0
  9. package/framework/v0.1.6-alpha.90/core/asset/plugin/dist/vendor/gina/css/gina.min.css.map +1 -0
  10. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/asset/plugin/dist/vendor/gina/html/toolbar.html +1 -1
  11. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/asset/plugin/dist/vendor/gina/js/gina.js +582 -217
  12. package/framework/v0.1.6-alpha.90/core/asset/plugin/dist/vendor/gina/js/gina.min.js +777 -0
  13. package/framework/v0.1.6-alpha.90/core/asset/plugin/dist/vendor/gina/js/gina.min.js.map +8 -0
  14. package/framework/v0.1.6-alpha.90/core/asset/plugin/dist/vendor/gina/js/gina.onload.min.js +8 -0
  15. package/framework/v0.1.6-alpha.90/core/asset/plugin/dist/vendor/gina/js/gina.onload.min.js.map +8 -0
  16. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/config.js +157 -76
  17. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/connectors/couchbase/index.js +92 -22
  18. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/connectors/couchbase/lib/connector.v4.js +28 -22
  19. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/controller/controller.js +419 -109
  20. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/controller/index.js +2 -2
  21. package/framework/v0.1.6-alpha.90/core/deps/busboy-1.6.0/.github/workflows/ci.yml +24 -0
  22. package/framework/v0.1.6-alpha.90/core/deps/busboy-1.6.0/.github/workflows/lint.yml +23 -0
  23. package/framework/v0.1.6-alpha.90/core/deps/busboy-1.6.0/README.md +191 -0
  24. package/framework/v0.1.6-alpha.90/core/deps/busboy-1.6.0/bench/bench-multipart-fields-100mb-big.js +149 -0
  25. package/framework/v0.1.6-alpha.90/core/deps/busboy-1.6.0/bench/bench-multipart-fields-100mb-small.js +143 -0
  26. package/framework/v0.1.6-alpha.90/core/deps/busboy-1.6.0/bench/bench-multipart-files-100mb-big.js +154 -0
  27. package/framework/v0.1.6-alpha.90/core/deps/busboy-1.6.0/bench/bench-multipart-files-100mb-small.js +148 -0
  28. package/framework/v0.1.6-alpha.90/core/deps/busboy-1.6.0/bench/bench-urlencoded-fields-100pairs-small.js +101 -0
  29. package/framework/v0.1.6-alpha.90/core/deps/busboy-1.6.0/bench/bench-urlencoded-fields-900pairs-small-alt.js +84 -0
  30. package/framework/v0.1.6-alpha.90/core/deps/busboy-1.6.0/lib/index.js +57 -0
  31. package/framework/v0.1.6-alpha.90/core/deps/busboy-1.6.0/lib/types/multipart.js +680 -0
  32. package/framework/v0.1.6-alpha.90/core/deps/busboy-1.6.0/lib/types/urlencoded.js +350 -0
  33. package/framework/v0.1.6-alpha.90/core/deps/busboy-1.6.0/lib/utils.js +596 -0
  34. package/framework/v0.1.6-alpha.90/core/deps/busboy-1.6.0/package.json +22 -0
  35. package/framework/v0.1.6-alpha.90/core/deps/optimist-0.6.1/.travis.yml +4 -0
  36. package/framework/v0.1.6-alpha.90/core/deps/optimist-0.6.1/LICENSE +21 -0
  37. package/framework/v0.1.6-alpha.90/core/deps/optimist-0.6.1/example/bool.js +10 -0
  38. package/framework/v0.1.6-alpha.90/core/deps/optimist-0.6.1/example/boolean_double.js +7 -0
  39. package/framework/v0.1.6-alpha.90/core/deps/optimist-0.6.1/example/boolean_single.js +7 -0
  40. package/framework/v0.1.6-alpha.90/core/deps/optimist-0.6.1/example/default_hash.js +8 -0
  41. package/framework/v0.1.6-alpha.90/core/deps/optimist-0.6.1/example/default_singles.js +7 -0
  42. package/framework/v0.1.6-alpha.90/core/deps/optimist-0.6.1/example/divide.js +8 -0
  43. package/framework/v0.1.6-alpha.90/core/deps/optimist-0.6.1/example/line_count.js +20 -0
  44. package/framework/v0.1.6-alpha.90/core/deps/optimist-0.6.1/example/line_count_options.js +29 -0
  45. package/framework/v0.1.6-alpha.90/core/deps/optimist-0.6.1/example/line_count_wrap.js +29 -0
  46. package/framework/v0.1.6-alpha.90/core/deps/optimist-0.6.1/example/nonopt.js +4 -0
  47. package/framework/v0.1.6-alpha.90/core/deps/optimist-0.6.1/example/reflect.js +2 -0
  48. package/framework/v0.1.6-alpha.90/core/deps/optimist-0.6.1/example/short.js +3 -0
  49. package/framework/v0.1.6-alpha.90/core/deps/optimist-0.6.1/example/string.js +11 -0
  50. package/framework/v0.1.6-alpha.90/core/deps/optimist-0.6.1/example/usage-options.js +19 -0
  51. package/framework/v0.1.6-alpha.90/core/deps/optimist-0.6.1/example/xup.js +10 -0
  52. package/framework/v0.1.6-alpha.90/core/deps/optimist-0.6.1/index.js +343 -0
  53. package/framework/v0.1.6-alpha.90/core/deps/optimist-0.6.1/package.json +31 -0
  54. package/framework/v0.1.6-alpha.90/core/deps/optimist-0.6.1/package.json.dist +39 -0
  55. package/framework/v0.1.6-alpha.90/core/deps/optimist-0.6.1/readme.markdown +513 -0
  56. package/framework/v0.1.6-alpha.90/core/deps/swig-1.4.2/HISTORY.md +498 -0
  57. package/framework/v0.1.6-alpha.90/core/deps/swig-1.4.2/LICENSE +7 -0
  58. package/framework/v0.1.6-alpha.90/core/deps/swig-1.4.2/README.md +88 -0
  59. package/framework/v0.1.6-alpha.90/core/deps/swig-1.4.2/bin/swig.js +161 -0
  60. package/framework/v0.1.6-alpha.90/core/deps/swig-1.4.2/bin/swig.js.dist +161 -0
  61. package/framework/v0.1.6-alpha.90/core/deps/swig-1.4.2/dist/swig.min.js +7 -0
  62. package/framework/v0.1.6-alpha.90/core/deps/swig-1.4.2/dist/swig.min.js.map +8 -0
  63. package/framework/v0.1.6-alpha.90/core/deps/swig-1.4.2/index.js +1 -0
  64. package/framework/v0.1.6-alpha.90/core/deps/swig-1.4.2/lib/dateformatter.js +198 -0
  65. package/framework/v0.1.6-alpha.90/core/deps/swig-1.4.2/lib/filters.js +630 -0
  66. package/framework/v0.1.6-alpha.90/core/deps/swig-1.4.2/lib/lexer.js +306 -0
  67. package/framework/v0.1.6-alpha.90/core/deps/swig-1.4.2/lib/loaders/filesystem.js +59 -0
  68. package/framework/v0.1.6-alpha.90/core/deps/swig-1.4.2/lib/loaders/index.js +53 -0
  69. package/framework/v0.1.6-alpha.90/core/deps/swig-1.4.2/lib/loaders/memory.js +63 -0
  70. package/framework/v0.1.6-alpha.90/core/deps/swig-1.4.2/lib/parser.js +744 -0
  71. package/framework/v0.1.6-alpha.90/core/deps/swig-1.4.2/lib/swig.js +740 -0
  72. package/framework/v0.1.6-alpha.90/core/deps/swig-1.4.2/lib/tags/autoescape.js +37 -0
  73. package/framework/v0.1.6-alpha.90/core/deps/swig-1.4.2/lib/tags/block.js +25 -0
  74. package/framework/v0.1.6-alpha.90/core/deps/swig-1.4.2/lib/tags/else.js +25 -0
  75. package/framework/v0.1.6-alpha.90/core/deps/swig-1.4.2/lib/tags/elseif.js +28 -0
  76. package/framework/v0.1.6-alpha.90/core/deps/swig-1.4.2/lib/tags/extends.js +19 -0
  77. package/framework/v0.1.6-alpha.90/core/deps/swig-1.4.2/lib/tags/filter.js +68 -0
  78. package/framework/v0.1.6-alpha.90/core/deps/swig-1.4.2/lib/tags/for.js +130 -0
  79. package/framework/v0.1.6-alpha.90/core/deps/swig-1.4.2/lib/tags/if.js +86 -0
  80. package/framework/v0.1.6-alpha.90/core/deps/swig-1.4.2/lib/tags/import.js +91 -0
  81. package/framework/v0.1.6-alpha.90/core/deps/swig-1.4.2/lib/tags/include.js +100 -0
  82. package/framework/v0.1.6-alpha.90/core/deps/swig-1.4.2/lib/tags/index.js +16 -0
  83. package/framework/v0.1.6-alpha.90/core/deps/swig-1.4.2/lib/tags/macro.js +79 -0
  84. package/framework/v0.1.6-alpha.90/core/deps/swig-1.4.2/lib/tags/parent.js +51 -0
  85. package/framework/v0.1.6-alpha.90/core/deps/swig-1.4.2/lib/tags/raw.js +23 -0
  86. package/framework/v0.1.6-alpha.90/core/deps/swig-1.4.2/lib/tags/set.js +109 -0
  87. package/framework/v0.1.6-alpha.90/core/deps/swig-1.4.2/lib/tags/spaceless.js +42 -0
  88. package/framework/v0.1.6-alpha.90/core/deps/swig-1.4.2/lib/utils.js +184 -0
  89. package/framework/v0.1.6-alpha.90/core/deps/swig-1.4.2/package.json +57 -0
  90. package/framework/v0.1.6-alpha.90/core/deps/swig-1.4.2/package.json.dist +61 -0
  91. package/framework/v0.1.6-alpha.90/core/deps/swig-client/swig.js +5031 -0
  92. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/dev/index.js +1 -1
  93. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/dev/lib/factory.js +1 -1
  94. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/gna.js +101 -22
  95. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/locales/index.js +3 -3
  96. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/locales/src/make.js +1 -1
  97. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/mime.types +1 -0
  98. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/model/entity.js +5 -5
  99. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/model/index.js +30 -26
  100. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/model/template/entityFactory.js +1 -1
  101. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/model/template/index.js +1 -1
  102. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/plugins/index.js +3 -3
  103. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/plugins/lib/file/package.json +2 -2
  104. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/plugins/lib/intl/package.json +2 -2
  105. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/plugins/lib/storage/package.json +2 -2
  106. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/plugins/lib/validator/package.json +2 -2
  107. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/plugins/lib/validator/src/form-validator.js +39 -27
  108. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/plugins/lib/validator/src/main.js +360 -85
  109. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/router.js +92 -47
  110. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/server.isaac.js +86 -10
  111. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/server.js +172 -86
  112. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/status.codes +1 -11
  113. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/template/boilerplate/bundle/controllers/setup.js +2 -2
  114. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/template/command/gina.tpl +1 -1
  115. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/template/conf/env.json +2 -0
  116. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/template/conf/templates.json +4 -2
  117. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/helpers/console.js +1 -1
  118. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/helpers/context.js +29 -12
  119. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/helpers/data/package.json +2 -2
  120. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/helpers/data/src/main.js +1 -1
  121. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/helpers/dateFormat.js +1 -1
  122. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/helpers/index.js +1 -1
  123. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/helpers/json/package.json +2 -2
  124. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/helpers/json/src/main.js +6 -4
  125. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/helpers/path.js +31 -15
  126. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/helpers/plugins/package.json +2 -2
  127. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/helpers/plugins/src/api-error.js +2 -2
  128. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/helpers/plugins/src/main.js +1 -1
  129. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/helpers/text.js +1 -1
  130. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/archiver/package.json +2 -2
  131. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/archiver/src/main.js +11 -11
  132. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/bundle/add.js +2 -1
  133. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/bundle/start.js +21 -8
  134. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/env/get.js +1 -1
  135. package/framework/v0.1.6-alpha.90/lib/cmd/env/help.js +30 -0
  136. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/framework/build.js +1 -1
  137. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/framework/init.js +18 -0
  138. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/framework/link-node-modules.js +2 -3
  139. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/framework/link.js +1 -0
  140. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/framework/tail.js +28 -11
  141. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/framework/version.js +15 -1
  142. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/helper.js +6 -2
  143. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/index.js +1 -1
  144. package/framework/v0.1.6-alpha.90/lib/cmd/minion/help.txt +18 -0
  145. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/project/add.js +3 -2
  146. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/project/build.js +4 -4
  147. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/project/list.js +1 -1
  148. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/protocol/list.js +71 -50
  149. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/collection/package.json +2 -2
  150. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/collection/src/main.js +20 -14
  151. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/config.js +1 -1
  152. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cron/package.json +2 -2
  153. package/framework/v0.1.6-alpha.90/lib/domain/dist/2025-03-14_13-41-20_UTC.dat +15754 -0
  154. package/framework/v0.1.6-alpha.90/lib/domain/dist/public_suffix_list.dat +15754 -0
  155. package/framework/v0.1.6-alpha.90/lib/domain/exemples/backend.js +12 -0
  156. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/domain/package.json +2 -2
  157. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/domain/src/main.js +20 -6
  158. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/generator/index.js +1 -1
  159. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/index.js +1 -1
  160. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90/lib/inherits}/LICENSE +1 -1
  161. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/inherits/package.json +2 -2
  162. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/inherits/src/main.js +1 -1
  163. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/logger/package.json +2 -2
  164. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/logger/src/containers/mq/listener.js +10 -2
  165. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/logger/src/helper.js +1 -1
  166. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/logger/src/main.js +1 -1
  167. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/math/index.js +1 -1
  168. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/merge/package.json +2 -2
  169. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/model.js +3 -3
  170. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/proc.js +9 -1
  171. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/routing/package.json +2 -2
  172. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/routing/src/main.js +72 -25
  173. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/session-store.js +3 -3
  174. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/swig-filters/package.json +2 -2
  175. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/swig-filters/src/main.js +70 -15
  176. package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/validator.js +2 -2
  177. package/framework/v0.1.6-alpha.90/package.json +11 -0
  178. package/package.json +3 -3
  179. package/resources/package.json.template +1 -1
  180. package/script/post_install.js +1 -1
  181. package/script/pre_install.js +1 -1
  182. package/utils/helper.js +24 -0
  183. package/framework/v0.1.6-alpha.9/VERSION +0 -1
  184. package/framework/v0.1.6-alpha.9/core/asset/plugin/dist/vendor/gina/css/gina.min.css.map +0 -1
  185. package/framework/v0.1.6-alpha.9/core/asset/plugin/dist/vendor/gina/js/gina.min.js +0 -766
  186. package/framework/v0.1.6-alpha.9/core/asset/plugin/dist/vendor/gina/js/gina.min.js.map +0 -8
  187. package/framework/v0.1.6-alpha.9/core/asset/plugin/dist/vendor/gina/js/gina.onload.min.js +0 -7
  188. package/framework/v0.1.6-alpha.9/core/asset/plugin/dist/vendor/gina/js/gina.onload.min.js.map +0 -8
  189. package/framework/v0.1.6-alpha.9/core/deps/busboy/.travis.yml +0 -17
  190. package/framework/v0.1.6-alpha.9/core/deps/busboy/README.md +0 -225
  191. package/framework/v0.1.6-alpha.9/core/deps/busboy/deps/encoding/encoding-indexes.js +0 -73
  192. package/framework/v0.1.6-alpha.9/core/deps/busboy/deps/encoding/encoding.js +0 -2391
  193. package/framework/v0.1.6-alpha.9/core/deps/busboy/lib/main.js +0 -89
  194. package/framework/v0.1.6-alpha.9/core/deps/busboy/lib/types/multipart.js +0 -328
  195. package/framework/v0.1.6-alpha.9/core/deps/busboy/lib/types/urlencoded.js +0 -214
  196. package/framework/v0.1.6-alpha.9/core/deps/busboy/lib/utils.js +0 -191
  197. package/framework/v0.1.6-alpha.9/core/deps/busboy/package.json +0 -69
  198. package/framework/v0.1.6-alpha.9/lib/domain/dist/public_suffix_list.dat +0 -14186
  199. package/framework/v0.1.6-alpha.9/lib/domain/exemples/backend.js +0 -0
  200. package/framework/v0.1.6-alpha.9/package.json +0 -14
  201. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/AUTHORS +0 -0
  202. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/asset/html/nolayout.html +0 -0
  203. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/asset/html/static.html +0 -0
  204. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/asset/img/android-chrome-192x192.png +0 -0
  205. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/asset/img/android-chrome-512x512.png +0 -0
  206. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/asset/img/apple-touch-icon.png +0 -0
  207. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/asset/img/favicon-16x16.png +0 -0
  208. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/asset/img/favicon-32x32.png +0 -0
  209. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/asset/img/favicon.ico +0 -0
  210. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/asset/plugin/dist/vendor/gina/css/gina.min.css +0 -0
  211. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/asset/plugin/uuid.json +0 -0
  212. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/connectors/couchbase/lib/connector.js +0 -0
  213. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/connectors/couchbase/lib/connector.v2.js +0 -0
  214. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/connectors/couchbase/lib/connector.v3.js +0 -0
  215. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/connectors/couchbase/lib/n1ql.js +0 -0
  216. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/connectors/couchbase/lib/session-store.js +0 -0
  217. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/connectors/couchbase/lib/session-store.v2.js +0 -0
  218. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/connectors/couchbase/lib/session-store.v3.js +0 -0
  219. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/connectors/couchbase/lib/session-store.v4.js +0 -0
  220. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/controller/controller.framework.js +0 -0
  221. /package/framework/{v0.1.6-alpha.9/core/deps/busboy → v0.1.6-alpha.90/core/deps/busboy-1.6.0}/LICENSE +0 -0
  222. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/deps/swig-client/swig-2.0.0.min.js +0 -0
  223. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/dev/lib/class.js +0 -0
  224. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/dev/lib/tools.js +0 -0
  225. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/locales/README.md +0 -0
  226. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/locales/currency.json +0 -0
  227. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/locales/dist/language/en.json +0 -0
  228. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/locales/dist/language/fr.json +0 -0
  229. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/locales/dist/region/en.json +0 -0
  230. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/locales/dist/region/fr.json +0 -0
  231. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/locales/src/resources/currency.csv +0 -0
  232. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/locales/src/resources/region.csv +0 -0
  233. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/locales/src/resources/region.mapping.json +0 -0
  234. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/plugins/README.md +0 -0
  235. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/plugins/lib/file/README.md +0 -0
  236. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/plugins/lib/file/build.json +0 -0
  237. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/plugins/lib/intl/README.md +0 -0
  238. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/plugins/lib/intl/build.json +0 -0
  239. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/plugins/lib/intl/src/main.js +0 -0
  240. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/plugins/lib/storage/README.md +0 -0
  241. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/plugins/lib/storage/build.json +0 -0
  242. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/plugins/lib/storage/src/main.js +0 -0
  243. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/plugins/lib/validator/README.md +0 -0
  244. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/plugins/lib/validator/build.json +0 -0
  245. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/server.express.js +0 -0
  246. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/template/_gitignore +0 -0
  247. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/template/boilerplate/bundle/config/app.json +0 -0
  248. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/template/boilerplate/bundle/config/routing.json +0 -0
  249. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/template/boilerplate/bundle/config/settings.json +0 -0
  250. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/template/boilerplate/bundle/config/settings.server.json +0 -0
  251. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/template/boilerplate/bundle/config/templates.json +0 -0
  252. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/template/boilerplate/bundle/controllers/controller.content.js +0 -0
  253. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/template/boilerplate/bundle/controllers/controller.js +0 -0
  254. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/template/boilerplate/bundle/index.js +0 -0
  255. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/template/boilerplate/bundle_namespace/controllers/controller.js +0 -0
  256. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/template/boilerplate/bundle_public/css/default.css +0 -0
  257. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/template/boilerplate/bundle_public/css/vendor/readme.md +0 -0
  258. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/template/boilerplate/bundle_public/favicon.ico +0 -0
  259. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/template/boilerplate/bundle_public/js/vendor/readme.md +0 -0
  260. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/template/boilerplate/bundle_public/readme.md +0 -0
  261. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/template/boilerplate/bundle_templates/handlers/main.js +0 -0
  262. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/template/boilerplate/bundle_templates/html/content/homepage.html +0 -0
  263. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/template/boilerplate/bundle_templates/html/includes/error-msg-noscript.html +0 -0
  264. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/template/boilerplate/bundle_templates/html/includes/error-msg-outdated-browser.html +0 -0
  265. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/template/boilerplate/bundle_templates/html/layouts/main.html +0 -0
  266. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/template/command/gina.bat.tpl +0 -0
  267. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/template/conf/manifest.json +0 -0
  268. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/template/conf/package.json +0 -0
  269. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/template/conf/settings.json +0 -0
  270. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/template/conf/statics.json +0 -0
  271. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/template/error/client/json/401.json +0 -0
  272. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/template/error/client/json/403.json +0 -0
  273. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/template/error/client/json/404.json +0 -0
  274. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/template/error/server/html/50x.html +0 -0
  275. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/template/error/server/json/500.json +0 -0
  276. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/template/error/server/json/503.json +0 -0
  277. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/core/template/extensions/logger/config.json +0 -0
  278. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/helpers/data/LICENSE +0 -0
  279. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/helpers/data/README.md +0 -0
  280. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/helpers/json/LICENSE +0 -0
  281. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/helpers/json/README.md +0 -0
  282. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/helpers/plugins/README.md +0 -0
  283. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/helpers/prototypes.js +0 -0
  284. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/helpers/task.js +0 -0
  285. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/archiver/README.md +0 -0
  286. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/archiver/build.json +0 -0
  287. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/archiver/src/dep/jszip.min.js +0 -0
  288. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/aliases.json +0 -0
  289. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/bundle/arguments.json +0 -0
  290. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/bundle/copy.js +0 -0
  291. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/bundle/cp.js +0 -0
  292. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/bundle/help.js +0 -0
  293. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/bundle/help.txt +0 -0
  294. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/bundle/list.js +0 -0
  295. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/bundle/remove.js +0 -0
  296. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/bundle/rename.js +0 -0
  297. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/bundle/restart.js +0 -0
  298. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/bundle/rm.js +0 -0
  299. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/bundle/status.js +0 -0
  300. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/bundle/stop.js +0 -0
  301. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/env/add.js +0 -0
  302. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/env/help.txt +0 -0
  303. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/env/link-dev.js +0 -0
  304. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/env/list.js +0 -0
  305. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/env/remove.js +0 -0
  306. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/env/rm.js +0 -0
  307. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/env/set.js +0 -0
  308. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/env/unset.js +0 -0
  309. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/env/use.js +0 -0
  310. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/framework/dot.js +0 -0
  311. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/framework/get.js +0 -0
  312. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/framework/help.js +0 -0
  313. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/framework/help.txt +0 -0
  314. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/framework/msg.json +0 -0
  315. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/framework/open.js +0 -0
  316. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/framework/restart.js +0 -0
  317. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/framework/set.js +0 -0
  318. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/framework/start.js +0 -0
  319. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/framework/status.js +0 -0
  320. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/framework/stop.js +0 -0
  321. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/framework/update.js +0 -0
  322. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/gina-dev.1.md +0 -0
  323. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/gina-framework.1.md +0 -0
  324. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/gina.1.md +0 -0
  325. /package/framework/{v0.1.6-alpha.9/lib/cmd/env → v0.1.6-alpha.90/lib/cmd/minion}/help.js +0 -0
  326. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/msg.json +0 -0
  327. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/port/help.js +0 -0
  328. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/port/help.txt +0 -0
  329. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/port/inc/scan.js +0 -0
  330. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/port/list.js +0 -0
  331. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/port/reset.js +0 -0
  332. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/port/set.js +0 -0
  333. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/project/arguments.json +0 -0
  334. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/project/help.js +0 -0
  335. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/project/help.txt +0 -0
  336. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/project/import.js +0 -0
  337. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/project/move.js +0 -0
  338. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/project/remove.js +0 -0
  339. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/project/rename.js +0 -0
  340. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/project/restart.js +0 -0
  341. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/project/rm.js +0 -0
  342. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/project/start.js +0 -0
  343. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/project/status.js +0 -0
  344. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/project/stop.js +0 -0
  345. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/protocol/help.js +0 -0
  346. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/protocol/help.txt +0 -0
  347. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/protocol/set.js +0 -0
  348. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/scope/add.js +0 -0
  349. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/scope/help.js +0 -0
  350. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/scope/help.txt +0 -0
  351. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/scope/link-local.js +0 -0
  352. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/scope/link-production.js +0 -0
  353. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/scope/list.js +0 -0
  354. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/scope/remove.js +0 -0
  355. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/scope/rm.js +0 -0
  356. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/scope/use.js +0 -0
  357. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cmd/view/add.js +0 -0
  358. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/collection/README.md +0 -0
  359. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/collection/build.json +0 -0
  360. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cron/README.md +0 -0
  361. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/cron/src/main.js +0 -0
  362. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/domain/LICENSE +0 -0
  363. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/domain/README.md +0 -0
  364. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/domain/exemples/frontend.html +0 -0
  365. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/inherits/README.md +0 -0
  366. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/inherits/example/inheriting_eventemitter.js +0 -0
  367. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/inherits/example/protected_inheritance.js +0 -0
  368. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/inherits/example/simple_inheritance.js +0 -0
  369. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/inherits/example/super_attribute_overridden_by_child_on_init.js +0 -0
  370. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/logger/README.md +0 -0
  371. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/logger/src/containers/default/index.js +0 -0
  372. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/logger/src/containers/file/index.js +0 -0
  373. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/logger/src/containers/file/lib/logrotator/README.md +0 -0
  374. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/logger/src/containers/file/lib/logrotator/index.js +0 -0
  375. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/logger/src/containers/mq/index.js +0 -0
  376. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/logger/src/containers/mq/speaker.js +0 -0
  377. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/merge/README.md +0 -0
  378. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/merge/example/merge.js +0 -0
  379. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/merge/example/merge_2_literal objects.js +0 -0
  380. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/merge/example/merge_and_preserve_first.js +0 -0
  381. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/merge/src/main.js +0 -0
  382. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/routing/README.md +0 -0
  383. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/routing/build.json +0 -0
  384. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/shell.js +0 -0
  385. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/swig-filters/README.md +0 -0
  386. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/url/README.md +0 -0
  387. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/url/index.js +0 -0
  388. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/url/mocks.json +0 -0
  389. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/url/routing.json +0 -0
  390. /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.90}/lib/url/test.js +0 -0
@@ -3,11 +3,11 @@ var inherits = lib.inherits;
3
3
  var helpers = lib.helpers;
4
4
  var context = lib.context;
5
5
 
6
- var cacheless = ( /^false$/i.test(process.env.NODE_ENV_IS_DEV) ) ? false : true;
6
+ var isCacheless = ( /^false$/i.test(process.env.NODE_ENV_IS_DEV) ) ? false : true;
7
7
  var mainPath = './controller';
8
8
  var frameworkPath = './controller.framework';
9
9
 
10
- if (cacheless) {
10
+ if (isCacheless) {
11
11
  delete require.cache[require.resolve(mainPath)];
12
12
  // delete require.cache[require.resolve(frameworkPath)];
13
13
  }
@@ -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,191 @@
1
+ # Description
2
+
3
+ A node.js module for parsing incoming HTML form data.
4
+
5
+ Changes (breaking or otherwise) in v1.0.0 can be found [here](https://github.com/mscdex/busboy/issues/266).
6
+
7
+ # Requirements
8
+
9
+ * [node.js](http://nodejs.org/) -- v10.16.0 or newer
10
+
11
+
12
+ # Install
13
+
14
+ npm install busboy
15
+
16
+
17
+ # Examples
18
+
19
+ * Parsing (multipart) with default options:
20
+
21
+ ```js
22
+ const http = require('http');
23
+
24
+ const busboy = require('busboy');
25
+
26
+ http.createServer((req, res) => {
27
+ if (req.method === 'POST') {
28
+ console.log('POST request');
29
+ const bb = busboy({ headers: req.headers });
30
+ bb.on('file', (name, file, info) => {
31
+ const { filename, encoding, mimeType } = info;
32
+ console.log(
33
+ `File [${name}]: filename: %j, encoding: %j, mimeType: %j`,
34
+ filename,
35
+ encoding,
36
+ mimeType
37
+ );
38
+ file.on('data', (data) => {
39
+ console.log(`File [${name}] got ${data.length} bytes`);
40
+ }).on('close', () => {
41
+ console.log(`File [${name}] done`);
42
+ });
43
+ });
44
+ bb.on('field', (name, val, info) => {
45
+ console.log(`Field [${name}]: value: %j`, val);
46
+ });
47
+ bb.on('close', () => {
48
+ console.log('Done parsing form!');
49
+ res.writeHead(303, { Connection: 'close', Location: '/' });
50
+ res.end();
51
+ });
52
+ req.pipe(bb);
53
+ } else if (req.method === 'GET') {
54
+ res.writeHead(200, { Connection: 'close' });
55
+ res.end(`
56
+ <html>
57
+ <head></head>
58
+ <body>
59
+ <form method="POST" enctype="multipart/form-data">
60
+ <input type="file" name="filefield"><br />
61
+ <input type="text" name="textfield"><br />
62
+ <input type="submit">
63
+ </form>
64
+ </body>
65
+ </html>
66
+ `);
67
+ }
68
+ }).listen(8000, () => {
69
+ console.log('Listening for requests');
70
+ });
71
+
72
+ // Example output:
73
+ //
74
+ // Listening for requests
75
+ // < ... form submitted ... >
76
+ // POST request
77
+ // File [filefield]: filename: "logo.jpg", encoding: "binary", mime: "image/jpeg"
78
+ // File [filefield] got 11912 bytes
79
+ // Field [textfield]: value: "testing! :-)"
80
+ // File [filefield] done
81
+ // Done parsing form!
82
+ ```
83
+
84
+ * Save all incoming files to disk:
85
+
86
+ ```js
87
+ const { randomFillSync } = require('crypto');
88
+ const fs = require('fs');
89
+ const http = require('http');
90
+ const os = require('os');
91
+ const path = require('path');
92
+
93
+ const busboy = require('busboy');
94
+
95
+ const random = (() => {
96
+ const buf = Buffer.alloc(16);
97
+ return () => randomFillSync(buf).toString('hex');
98
+ })();
99
+
100
+ http.createServer((req, res) => {
101
+ if (req.method === 'POST') {
102
+ const bb = busboy({ headers: req.headers });
103
+ bb.on('file', (name, file, info) => {
104
+ const saveTo = path.join(os.tmpdir(), `busboy-upload-${random()}`);
105
+ file.pipe(fs.createWriteStream(saveTo));
106
+ });
107
+ bb.on('close', () => {
108
+ res.writeHead(200, { 'Connection': 'close' });
109
+ res.end(`That's all folks!`);
110
+ });
111
+ req.pipe(bb);
112
+ return;
113
+ }
114
+ res.writeHead(404);
115
+ res.end();
116
+ }).listen(8000, () => {
117
+ console.log('Listening for requests');
118
+ });
119
+ ```
120
+
121
+
122
+ # API
123
+
124
+ ## Exports
125
+
126
+ `busboy` exports a single function:
127
+
128
+ **( _function_ )**(< _object_ >config) - Creates and returns a new _Writable_ form parser stream.
129
+
130
+ * Valid `config` properties:
131
+
132
+ * **headers** - _object_ - These are the HTTP headers of the incoming request, which are used by individual parsers.
133
+
134
+ * **highWaterMark** - _integer_ - highWaterMark to use for the parser stream. **Default:** node's _stream.Writable_ default.
135
+
136
+ * **fileHwm** - _integer_ - highWaterMark to use for individual file streams. **Default:** node's _stream.Readable_ default.
137
+
138
+ * **defCharset** - _string_ - Default character set to use when one isn't defined. **Default:** `'utf8'`.
139
+
140
+ * **defParamCharset** - _string_ - For multipart forms, the default character set to use for values of part header parameters (e.g. filename) that are not extended parameters (that contain an explicit charset). **Default:** `'latin1'`.
141
+
142
+ * **preservePath** - _boolean_ - If paths in filenames from file parts in a `'multipart/form-data'` request shall be preserved. **Default:** `false`.
143
+
144
+ * **limits** - _object_ - Various limits on incoming data. Valid properties are:
145
+
146
+ * **fieldNameSize** - _integer_ - Max field name size (in bytes). **Default:** `100`.
147
+
148
+ * **fieldSize** - _integer_ - Max field value size (in bytes). **Default:** `1048576` (1MB).
149
+
150
+ * **fields** - _integer_ - Max number of non-file fields. **Default:** `Infinity`.
151
+
152
+ * **fileSize** - _integer_ - For multipart forms, the max file size (in bytes). **Default:** `Infinity`.
153
+
154
+ * **files** - _integer_ - For multipart forms, the max number of file fields. **Default:** `Infinity`.
155
+
156
+ * **parts** - _integer_ - For multipart forms, the max number of parts (fields + files). **Default:** `Infinity`.
157
+
158
+ * **headerPairs** - _integer_ - For multipart forms, the max number of header key-value pairs to parse. **Default:** `2000` (same as node's http module).
159
+
160
+ This function can throw exceptions if there is something wrong with the values in `config`. For example, if the Content-Type in `headers` is missing entirely, is not a supported type, or is missing the boundary for `'multipart/form-data'` requests.
161
+
162
+ ## (Special) Parser stream events
163
+
164
+ * **file**(< _string_ >name, < _Readable_ >stream, < _object_ >info) - Emitted for each new file found. `name` contains the form field name. `stream` is a _Readable_ stream containing the file's data. No transformations/conversions (e.g. base64 to raw binary) are done on the file's data. `info` contains the following properties:
165
+
166
+ * `filename` - _string_ - If supplied, this contains the file's filename. **WARNING:** You should almost _never_ use this value as-is (especially if you are using `preservePath: true` in your `config`) as it could contain malicious input. You are better off generating your own (safe) filenames, or at the very least using a hash of the filename.
167
+
168
+ * `encoding` - _string_ - The file's `'Content-Transfer-Encoding'` value.
169
+
170
+ * `mimeType` - _string_ - The file's `'Content-Type'` value.
171
+
172
+ **Note:** If you listen for this event, you should always consume the `stream` whether you care about its contents or not (you can simply do `stream.resume();` if you want to discard/skip the contents), otherwise the `'finish'`/`'close'` event will never fire on the busboy parser stream.
173
+ However, if you aren't accepting files, you can either simply not listen for the `'file'` event at all or set `limits.files` to `0`, and any/all files will be automatically skipped (these skipped files will still count towards any configured `limits.files` and `limits.parts` limits though).
174
+
175
+ **Note:** If a configured `limits.fileSize` limit was reached for a file, `stream` will both have a boolean property `truncated` set to `true` (best checked at the end of the stream) and emit a `'limit'` event to notify you when this happens.
176
+
177
+ * **field**(< _string_ >name, < _string_ >value, < _object_ >info) - Emitted for each new non-file field found. `name` contains the form field name. `value` contains the string value of the field. `info` contains the following properties:
178
+
179
+ * `nameTruncated` - _boolean_ - Whether `name` was truncated or not (due to a configured `limits.fieldNameSize` limit)
180
+
181
+ * `valueTruncated` - _boolean_ - Whether `value` was truncated or not (due to a configured `limits.fieldSize` limit)
182
+
183
+ * `encoding` - _string_ - The field's `'Content-Transfer-Encoding'` value.
184
+
185
+ * `mimeType` - _string_ - The field's `'Content-Type'` value.
186
+
187
+ * **partsLimit**() - Emitted when the configured `limits.parts` limit has been reached. No more `'file'` or `'field'` events will be emitted.
188
+
189
+ * **filesLimit**() - Emitted when the configured `limits.files` limit has been reached. No more `'file'` events will be emitted.
190
+
191
+ * **fieldsLimit**() - Emitted when the configured `limits.fields` limit has been reached. No more `'field'` events will be emitted.
@@ -0,0 +1,149 @@
1
+ 'use strict';
2
+
3
+ function createMultipartBuffers(boundary, sizes) {
4
+ const bufs = [];
5
+ for (let i = 0; i < sizes.length; ++i) {
6
+ const mb = sizes[i] * 1024 * 1024;
7
+ bufs.push(Buffer.from([
8
+ `--${boundary}`,
9
+ `content-disposition: form-data; name="field${i + 1}"`,
10
+ '',
11
+ '0'.repeat(mb),
12
+ '',
13
+ ].join('\r\n')));
14
+ }
15
+ bufs.push(Buffer.from([
16
+ `--${boundary}--`,
17
+ '',
18
+ ].join('\r\n')));
19
+ return bufs;
20
+ }
21
+
22
+ const boundary = '-----------------------------168072824752491622650073';
23
+ const buffers = createMultipartBuffers(boundary, [
24
+ 10,
25
+ 10,
26
+ 10,
27
+ 20,
28
+ 50,
29
+ ]);
30
+ const calls = {
31
+ partBegin: 0,
32
+ headerField: 0,
33
+ headerValue: 0,
34
+ headerEnd: 0,
35
+ headersEnd: 0,
36
+ partData: 0,
37
+ partEnd: 0,
38
+ end: 0,
39
+ };
40
+
41
+ const moduleName = process.argv[2];
42
+ switch (moduleName) {
43
+ case 'busboy': {
44
+ const busboy = require('busboy');
45
+
46
+ const parser = busboy({
47
+ limits: {
48
+ fieldSizeLimit: Infinity,
49
+ },
50
+ headers: {
51
+ 'content-type': `multipart/form-data; boundary=${boundary}`,
52
+ },
53
+ });
54
+ parser.on('field', (name, val, info) => {
55
+ ++calls.partBegin;
56
+ ++calls.partData;
57
+ ++calls.partEnd;
58
+ }).on('close', () => {
59
+ ++calls.end;
60
+ console.timeEnd(moduleName);
61
+ });
62
+
63
+ console.time(moduleName);
64
+ for (const buf of buffers)
65
+ parser.write(buf);
66
+ break;
67
+ }
68
+
69
+ case 'formidable': {
70
+ const { MultipartParser } = require('formidable');
71
+
72
+ const parser = new MultipartParser();
73
+ parser.initWithBoundary(boundary);
74
+ parser.on('data', ({ name }) => {
75
+ ++calls[name];
76
+ if (name === 'end')
77
+ console.timeEnd(moduleName);
78
+ });
79
+
80
+ console.time(moduleName);
81
+ for (const buf of buffers)
82
+ parser.write(buf);
83
+
84
+ break;
85
+ }
86
+
87
+ case 'multiparty': {
88
+ const { Readable } = require('stream');
89
+
90
+ const { Form } = require('multiparty');
91
+
92
+ const form = new Form({
93
+ maxFieldsSize: Infinity,
94
+ maxFields: Infinity,
95
+ maxFilesSize: Infinity,
96
+ autoFields: false,
97
+ autoFiles: false,
98
+ });
99
+
100
+ const req = new Readable({ read: () => {} });
101
+ req.headers = {
102
+ 'content-type': `multipart/form-data; boundary=${boundary}`,
103
+ };
104
+
105
+ function hijack(name, fn) {
106
+ const oldFn = form[name];
107
+ form[name] = function() {
108
+ fn();
109
+ return oldFn.apply(this, arguments);
110
+ };
111
+ }
112
+
113
+ hijack('onParseHeaderField', () => {
114
+ ++calls.headerField;
115
+ });
116
+ hijack('onParseHeaderValue', () => {
117
+ ++calls.headerValue;
118
+ });
119
+ hijack('onParsePartBegin', () => {
120
+ ++calls.partBegin;
121
+ });
122
+ hijack('onParsePartData', () => {
123
+ ++calls.partData;
124
+ });
125
+ hijack('onParsePartEnd', () => {
126
+ ++calls.partEnd;
127
+ });
128
+
129
+ form.on('close', () => {
130
+ ++calls.end;
131
+ console.timeEnd(moduleName);
132
+ }).on('part', (p) => p.resume());
133
+
134
+ console.time(moduleName);
135
+ form.parse(req);
136
+ for (const buf of buffers)
137
+ req.push(buf);
138
+ req.push(null);
139
+
140
+ break;
141
+ }
142
+
143
+ default:
144
+ if (moduleName === undefined)
145
+ console.error('Missing parser module name');
146
+ else
147
+ console.error(`Invalid parser module name: ${moduleName}`);
148
+ process.exit(1);
149
+ }
@@ -0,0 +1,143 @@
1
+ 'use strict';
2
+
3
+ function createMultipartBuffers(boundary, sizes) {
4
+ const bufs = [];
5
+ for (let i = 0; i < sizes.length; ++i) {
6
+ const mb = sizes[i] * 1024 * 1024;
7
+ bufs.push(Buffer.from([
8
+ `--${boundary}`,
9
+ `content-disposition: form-data; name="field${i + 1}"`,
10
+ '',
11
+ '0'.repeat(mb),
12
+ '',
13
+ ].join('\r\n')));
14
+ }
15
+ bufs.push(Buffer.from([
16
+ `--${boundary}--`,
17
+ '',
18
+ ].join('\r\n')));
19
+ return bufs;
20
+ }
21
+
22
+ const boundary = '-----------------------------168072824752491622650073';
23
+ const buffers = createMultipartBuffers(boundary, (new Array(100)).fill(1));
24
+ const calls = {
25
+ partBegin: 0,
26
+ headerField: 0,
27
+ headerValue: 0,
28
+ headerEnd: 0,
29
+ headersEnd: 0,
30
+ partData: 0,
31
+ partEnd: 0,
32
+ end: 0,
33
+ };
34
+
35
+ const moduleName = process.argv[2];
36
+ switch (moduleName) {
37
+ case 'busboy': {
38
+ const busboy = require('busboy');
39
+
40
+ const parser = busboy({
41
+ limits: {
42
+ fieldSizeLimit: Infinity,
43
+ },
44
+ headers: {
45
+ 'content-type': `multipart/form-data; boundary=${boundary}`,
46
+ },
47
+ });
48
+ parser.on('field', (name, val, info) => {
49
+ ++calls.partBegin;
50
+ ++calls.partData;
51
+ ++calls.partEnd;
52
+ }).on('close', () => {
53
+ ++calls.end;
54
+ console.timeEnd(moduleName);
55
+ });
56
+
57
+ console.time(moduleName);
58
+ for (const buf of buffers)
59
+ parser.write(buf);
60
+ break;
61
+ }
62
+
63
+ case 'formidable': {
64
+ const { MultipartParser } = require('formidable');
65
+
66
+ const parser = new MultipartParser();
67
+ parser.initWithBoundary(boundary);
68
+ parser.on('data', ({ name }) => {
69
+ ++calls[name];
70
+ if (name === 'end')
71
+ console.timeEnd(moduleName);
72
+ });
73
+
74
+ console.time(moduleName);
75
+ for (const buf of buffers)
76
+ parser.write(buf);
77
+
78
+ break;
79
+ }
80
+
81
+ case 'multiparty': {
82
+ const { Readable } = require('stream');
83
+
84
+ const { Form } = require('multiparty');
85
+
86
+ const form = new Form({
87
+ maxFieldsSize: Infinity,
88
+ maxFields: Infinity,
89
+ maxFilesSize: Infinity,
90
+ autoFields: false,
91
+ autoFiles: false,
92
+ });
93
+
94
+ const req = new Readable({ read: () => {} });
95
+ req.headers = {
96
+ 'content-type': `multipart/form-data; boundary=${boundary}`,
97
+ };
98
+
99
+ function hijack(name, fn) {
100
+ const oldFn = form[name];
101
+ form[name] = function() {
102
+ fn();
103
+ return oldFn.apply(this, arguments);
104
+ };
105
+ }
106
+
107
+ hijack('onParseHeaderField', () => {
108
+ ++calls.headerField;
109
+ });
110
+ hijack('onParseHeaderValue', () => {
111
+ ++calls.headerValue;
112
+ });
113
+ hijack('onParsePartBegin', () => {
114
+ ++calls.partBegin;
115
+ });
116
+ hijack('onParsePartData', () => {
117
+ ++calls.partData;
118
+ });
119
+ hijack('onParsePartEnd', () => {
120
+ ++calls.partEnd;
121
+ });
122
+
123
+ form.on('close', () => {
124
+ ++calls.end;
125
+ console.timeEnd(moduleName);
126
+ }).on('part', (p) => p.resume());
127
+
128
+ console.time(moduleName);
129
+ form.parse(req);
130
+ for (const buf of buffers)
131
+ req.push(buf);
132
+ req.push(null);
133
+
134
+ break;
135
+ }
136
+
137
+ default:
138
+ if (moduleName === undefined)
139
+ console.error('Missing parser module name');
140
+ else
141
+ console.error(`Invalid parser module name: ${moduleName}`);
142
+ process.exit(1);
143
+ }
@@ -0,0 +1,154 @@
1
+ 'use strict';
2
+
3
+ function createMultipartBuffers(boundary, sizes) {
4
+ const bufs = [];
5
+ for (let i = 0; i < sizes.length; ++i) {
6
+ const mb = sizes[i] * 1024 * 1024;
7
+ bufs.push(Buffer.from([
8
+ `--${boundary}`,
9
+ `content-disposition: form-data; name="file${i + 1}"; `
10
+ + `filename="random${i + 1}.bin"`,
11
+ 'content-type: application/octet-stream',
12
+ '',
13
+ '0'.repeat(mb),
14
+ '',
15
+ ].join('\r\n')));
16
+ }
17
+ bufs.push(Buffer.from([
18
+ `--${boundary}--`,
19
+ '',
20
+ ].join('\r\n')));
21
+ return bufs;
22
+ }
23
+
24
+ const boundary = '-----------------------------168072824752491622650073';
25
+ const buffers = createMultipartBuffers(boundary, [
26
+ 10,
27
+ 10,
28
+ 10,
29
+ 20,
30
+ 50,
31
+ ]);
32
+ const calls = {
33
+ partBegin: 0,
34
+ headerField: 0,
35
+ headerValue: 0,
36
+ headerEnd: 0,
37
+ headersEnd: 0,
38
+ partData: 0,
39
+ partEnd: 0,
40
+ end: 0,
41
+ };
42
+
43
+ const moduleName = process.argv[2];
44
+ switch (moduleName) {
45
+ case 'busboy': {
46
+ const busboy = require('busboy');
47
+
48
+ const parser = busboy({
49
+ limits: {
50
+ fieldSizeLimit: Infinity,
51
+ },
52
+ headers: {
53
+ 'content-type': `multipart/form-data; boundary=${boundary}`,
54
+ },
55
+ });
56
+ parser.on('file', (name, stream, info) => {
57
+ ++calls.partBegin;
58
+ stream.on('data', (chunk) => {
59
+ ++calls.partData;
60
+ }).on('end', () => {
61
+ ++calls.partEnd;
62
+ });
63
+ }).on('close', () => {
64
+ ++calls.end;
65
+ console.timeEnd(moduleName);
66
+ });
67
+
68
+ console.time(moduleName);
69
+ for (const buf of buffers)
70
+ parser.write(buf);
71
+ break;
72
+ }
73
+
74
+ case 'formidable': {
75
+ const { MultipartParser } = require('formidable');
76
+
77
+ const parser = new MultipartParser();
78
+ parser.initWithBoundary(boundary);
79
+ parser.on('data', ({ name }) => {
80
+ ++calls[name];
81
+ if (name === 'end')
82
+ console.timeEnd(moduleName);
83
+ });
84
+
85
+ console.time(moduleName);
86
+ for (const buf of buffers)
87
+ parser.write(buf);
88
+
89
+ break;
90
+ }
91
+
92
+ case 'multiparty': {
93
+ const { Readable } = require('stream');
94
+
95
+ const { Form } = require('multiparty');
96
+
97
+ const form = new Form({
98
+ maxFieldsSize: Infinity,
99
+ maxFields: Infinity,
100
+ maxFilesSize: Infinity,
101
+ autoFields: false,
102
+ autoFiles: false,
103
+ });
104
+
105
+ const req = new Readable({ read: () => {} });
106
+ req.headers = {
107
+ 'content-type': `multipart/form-data; boundary=${boundary}`,
108
+ };
109
+
110
+ function hijack(name, fn) {
111
+ const oldFn = form[name];
112
+ form[name] = function() {
113
+ fn();
114
+ return oldFn.apply(this, arguments);
115
+ };
116
+ }
117
+
118
+ hijack('onParseHeaderField', () => {
119
+ ++calls.headerField;
120
+ });
121
+ hijack('onParseHeaderValue', () => {
122
+ ++calls.headerValue;
123
+ });
124
+ hijack('onParsePartBegin', () => {
125
+ ++calls.partBegin;
126
+ });
127
+ hijack('onParsePartData', () => {
128
+ ++calls.partData;
129
+ });
130
+ hijack('onParsePartEnd', () => {
131
+ ++calls.partEnd;
132
+ });
133
+
134
+ form.on('close', () => {
135
+ ++calls.end;
136
+ console.timeEnd(moduleName);
137
+ }).on('part', (p) => p.resume());
138
+
139
+ console.time(moduleName);
140
+ form.parse(req);
141
+ for (const buf of buffers)
142
+ req.push(buf);
143
+ req.push(null);
144
+
145
+ break;
146
+ }
147
+
148
+ default:
149
+ if (moduleName === undefined)
150
+ console.error('Missing parser module name');
151
+ else
152
+ console.error(`Invalid parser module name: ${moduleName}`);
153
+ process.exit(1);
154
+ }