jsf.js_next_gen 1.0.0-beta-20 → 4.0.0-RC.1

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 (343) hide show
  1. package/.mocharc.json +2 -1
  2. package/.nyc_output/2303b649-59d9-485c-9228-73b0ec8787a7.json +1 -0
  3. package/.nyc_output/756f2f03-c85b-4cdb-9b92-5799eb45ef1e.json +1 -0
  4. package/.nyc_output/processinfo/2303b649-59d9-485c-9228-73b0ec8787a7.json +1 -0
  5. package/.nyc_output/processinfo/756f2f03-c85b-4cdb-9b92-5799eb45ef1e.json +1 -0
  6. package/.nyc_output/processinfo/index.json +1 -0
  7. package/.nycrc +2 -1
  8. package/README.md +78 -24
  9. package/dist/docs/assets/highlight.css +21 -0
  10. package/dist/docs/assets/search.js +1 -1
  11. package/dist/docs/assets/style.css +34 -2
  12. package/dist/docs/functions/{jsf.ajax.addOnError.html → faces.ajax.addOnError.html} +15 -13
  13. package/dist/docs/functions/{jsf.ajax.addOnEvent.html → faces.ajax.addOnEvent.html} +15 -13
  14. package/dist/docs/functions/{jsf.ajax.request.html → faces.ajax.request.html} +15 -13
  15. package/dist/docs/functions/{jsf.ajax.response.html → faces.ajax.response.html} +15 -13
  16. package/dist/docs/functions/{jsf.getClientWindow.html → faces.getClientWindow.html} +17 -14
  17. package/dist/docs/functions/{jsf.getProjectStage.html → faces.getProjectStage.html} +18 -15
  18. package/dist/docs/functions/{jsf.getViewState.html → faces.getViewState.html} +18 -15
  19. package/dist/docs/functions/{jsf.push.close.html → faces.push.close.html} +15 -13
  20. package/dist/docs/functions/{jsf.push.init.html → faces.push.init.html} +29 -19
  21. package/dist/docs/functions/{jsf.push.open.html → faces.push.open.html} +15 -13
  22. package/dist/docs/functions/{jsf.util.chain.html → faces.util.chain.html} +12 -10
  23. package/dist/docs/functions/myfaces.ab.html +10 -8
  24. package/dist/docs/index.html +71 -29
  25. package/dist/docs/modules/{jsf.ajax.html → faces.ajax.html} +18 -16
  26. package/dist/docs/modules/faces.html +75 -0
  27. package/dist/docs/modules/{jsf.push.html → faces.push.html} +16 -14
  28. package/dist/docs/modules/{jsf.util.html → faces.util.html} +12 -10
  29. package/dist/docs/modules/myfaces.html +8 -6
  30. package/dist/docs/modules.html +9 -7
  31. package/dist/docs/variables/faces.contextpath.html +57 -0
  32. package/dist/docs/variables/{jsf.implversion.html → faces.implversion.html} +17 -14
  33. package/dist/docs/variables/{jsf.separatorchar.html → faces.separatorchar.html} +18 -15
  34. package/dist/docs/variables/faces.specversion.html +64 -0
  35. package/dist/docs/variables/myfaces.oam.html +8 -6
  36. package/dist/window/faces-development.js +7688 -0
  37. package/dist/window/faces-development.js.br +0 -0
  38. package/dist/window/faces-development.js.gz +0 -0
  39. package/dist/window/faces-development.js.map +1 -0
  40. package/dist/window/faces.js +3 -0
  41. package/dist/window/faces.js.LICENSE.txt +87 -0
  42. package/dist/window/faces.js.br +0 -0
  43. package/dist/window/faces.js.gz +0 -0
  44. package/dist/window/faces.js.map +1 -0
  45. package/dist/window/jsf-development.js +3011 -2963
  46. package/dist/window/jsf-development.js.br +0 -0
  47. package/dist/window/jsf-development.js.gz +0 -0
  48. package/dist/window/jsf-development.js.map +1 -1
  49. package/dist/window/jsf.js +2 -1
  50. package/dist/window/jsf.js.LICENSE.txt +87 -0
  51. package/dist/window/jsf.js.br +0 -0
  52. package/dist/window/jsf.js.gz +0 -0
  53. package/dist/window/jsf.js.map +1 -1
  54. package/package.json +12 -12
  55. package/pom.xml +14 -0
  56. package/src/main/java/com/example/jsfs_js_ts/DecoratedFacesJS.java +94 -0
  57. package/src/main/java/com/example/jsfs_js_ts/DecoratingResourceHandlerWrapper.java +54 -0
  58. package/src/main/java/com/example/jsfs_js_ts/FacesJSMapFileResourceWrapper.java +57 -0
  59. package/src/main/java/com/example/jsfs_js_ts/FacesJSMappingDecorator.java +138 -0
  60. package/src/main/typescript/@types/definitions/index.d.ts +147 -0
  61. package/src/main/typescript/api/{Jsf.ts → _api.ts} +61 -49
  62. package/src/main/typescript/api/faces.ts +44 -0
  63. package/src/main/typescript/api/jsf.ts +43 -0
  64. package/src/main/typescript/impl/AjaxImpl.ts +39 -42
  65. package/src/main/typescript/impl/PushImpl.ts +27 -30
  66. package/src/main/typescript/impl/core/Const.ts +38 -16
  67. package/src/main/typescript/impl/core/ImplTypes.ts +1 -1
  68. package/src/main/typescript/impl/i18n/Messages.ts +2 -2
  69. package/src/main/typescript/impl/util/Assertions.ts +3 -3
  70. package/src/main/typescript/impl/util/AsyncQueue.ts +1 -1
  71. package/src/main/typescript/impl/util/AsyncRunnable.ts +5 -5
  72. package/src/main/typescript/impl/util/ExtDomQuery.ts +200 -48
  73. package/src/main/typescript/impl/util/IListener.ts +1 -1
  74. package/src/main/typescript/impl/util/Lang.ts +25 -25
  75. package/src/main/typescript/impl/xhrCore/ErrorData.ts +2 -3
  76. package/src/main/typescript/impl/xhrCore/EventData.ts +4 -3
  77. package/src/main/typescript/impl/xhrCore/IResponseProcessor.ts +19 -11
  78. package/src/main/typescript/impl/xhrCore/RequestDataResolver.ts +15 -14
  79. package/src/main/typescript/impl/xhrCore/ResonseDataResolver.ts +15 -11
  80. package/src/main/typescript/impl/xhrCore/Response.ts +30 -24
  81. package/src/main/typescript/impl/xhrCore/ResponseProcessor.ts +69 -49
  82. package/src/main/typescript/impl/xhrCore/XhrFormData.ts +9 -7
  83. package/src/main/typescript/impl/xhrCore/XhrRequest.ts +76 -60
  84. package/src/main/typescript/myfaces/OamSubmit.ts +12 -15
  85. package/src/main/typescript/test/frameworkBase/_ext/monadish/DomQueryTest.spec.ts +277 -65
  86. package/src/main/typescript/test/frameworkBase/_ext/monadish/LangTest.spec.ts +1 -1
  87. package/src/main/typescript/test/frameworkBase/_ext/monadish/MappingProbes.ts +1 -1
  88. package/src/main/typescript/test/frameworkBase/_ext/monadish/MappingTest.spec.ts +1 -1
  89. package/src/main/typescript/test/frameworkBase/_ext/monadish/MonadTest.spec.ts +1 -1
  90. package/src/main/typescript/test/frameworkBase/_ext/monadish/StreamTest.spec.ts +1 -1
  91. package/src/main/typescript/test/frameworkBase/_ext/monadish/fixtures/test.js +1 -0
  92. package/src/main/typescript/test/frameworkBase/_ext/monadish/fixtures/test2.js +1 -0
  93. package/src/main/typescript/test/frameworkBase/_ext/shared/StandardInits.ts +75 -30
  94. package/src/main/typescript/test/frameworkBase/_ext/shared/XmlResponses.ts +44 -4
  95. package/src/main/typescript/test/impl/ImplTest.spec.ts +18 -22
  96. package/src/main/typescript/test/impl/ImplTest_23.spec.ts +129 -0
  97. package/src/main/typescript/test/impl/SeparatorCharsTest.spec.ts +7 -6
  98. package/src/main/typescript/test/myfaces/OamSubmit.spec.ts +15 -24
  99. package/src/main/typescript/test/queue/AsynchronousProbe.ts +1 -1
  100. package/src/main/typescript/test/queue/AsynchronousQueueTest.spec.ts +4 -4
  101. package/src/main/typescript/test/xhrCore/EventTests.spec.ts +15 -23
  102. package/src/main/typescript/test/xhrCore/FakeWebsocket.ts +3 -3
  103. package/src/main/typescript/test/xhrCore/FileUploadTest.spec.ts +7 -32
  104. package/src/main/typescript/test/xhrCore/RequestParamsTest.spec.ts +16 -37
  105. package/src/main/typescript/test/xhrCore/RequestTest.spec.ts +17 -16
  106. package/src/main/typescript/test/xhrCore/RequestTest_23.spec.ts +364 -0
  107. package/src/main/typescript/test/xhrCore/ResponseTest.spec.ts +102 -47
  108. package/src/main/typescript/test/xhrCore/ResponseTest23.spec.ts +362 -0
  109. package/src/main/typescript/test/xhrCore/ShadowDomTest.spec.ts +6 -9
  110. package/src/main/typescript/test/xhrCore/WebsocketTest.ts +15 -15
  111. package/src/main/typescript/test/xhrCore/XhrFormDataTest.spec.ts +3 -3
  112. package/{target/main/typescript/impl/util/AsyncRunnable.js → src/main/typescript/test/xhrCore/fixtures/addedViewHead1.js} +4 -6
  113. package/src/main/typescript/test/xhrCore/fixtures/addedViewHead2.css +18 -0
  114. package/src/main/typescript/test/xhrCore/fixtures/addedViewHead2.js +16 -0
  115. package/src/main/typescript/test/xhrCore/fixtures/addedViewHead3.js +16 -0
  116. package/src/main/typescript/test/xhrCore/fixtures/nonce_script.js +16 -0
  117. package/src/main/typescript/tsconfig-typedoc.json +17 -1
  118. package/src/main/typescript/tsconfig.json +23 -5
  119. package/src/test/resources/jsf-development.js +1 -1
  120. package/src/test.html +75 -0
  121. package/src/tmp/test.html +92 -0
  122. package/target/api/{Jsf.js → _api.js} +68 -70
  123. package/target/api/_api.js.map +1 -0
  124. package/target/api/faces.js +45 -0
  125. package/target/api/faces.js.map +1 -0
  126. package/target/api/jsf.js +45 -0
  127. package/target/api/jsf.js.map +1 -0
  128. package/target/classes/com/example/jsfs_js_ts/DecoratedFacesJS.class +0 -0
  129. package/target/classes/com/example/jsfs_js_ts/DecoratingResourceHandlerWrapper.class +0 -0
  130. package/target/classes/com/example/jsfs_js_ts/FacesJSMapFileResourceWrapper.class +0 -0
  131. package/target/classes/com/example/jsfs_js_ts/FacesJSMappingDecorator.class +0 -0
  132. package/target/impl/AjaxImpl.js +85 -93
  133. package/target/impl/AjaxImpl.js.map +1 -1
  134. package/target/impl/PushImpl.js +63 -64
  135. package/target/impl/PushImpl.js.map +1 -1
  136. package/target/impl/core/Const.js +38 -19
  137. package/target/impl/core/Const.js.map +1 -1
  138. package/target/impl/core/ImplTypes.js +10 -15
  139. package/target/impl/core/ImplTypes.js.map +1 -1
  140. package/target/impl/i18n/Messages.js +5 -6
  141. package/target/impl/i18n/Messages.js.map +1 -1
  142. package/target/impl/util/Assertions.js +12 -21
  143. package/target/impl/util/Assertions.js.map +1 -1
  144. package/target/impl/util/AsyncQueue.js +28 -36
  145. package/target/impl/util/AsyncQueue.js.map +1 -1
  146. package/target/impl/util/AsyncRunnable.js +1 -1
  147. package/target/impl/util/ExtDomQuery.js +235 -138
  148. package/target/impl/util/ExtDomQuery.js.map +1 -1
  149. package/target/impl/util/Lang.js +43 -50
  150. package/target/impl/util/Lang.js.map +1 -1
  151. package/target/impl/xhrCore/ErrorData.js +37 -62
  152. package/target/impl/xhrCore/ErrorData.js.map +1 -1
  153. package/target/impl/xhrCore/EventData.js +12 -14
  154. package/target/impl/xhrCore/EventData.js.map +1 -1
  155. package/target/impl/xhrCore/RequestDataResolver.js +27 -29
  156. package/target/impl/xhrCore/RequestDataResolver.js.map +1 -1
  157. package/target/impl/xhrCore/ResonseDataResolver.js +25 -23
  158. package/target/impl/xhrCore/ResonseDataResolver.js.map +1 -1
  159. package/target/impl/xhrCore/Response.js +40 -36
  160. package/target/impl/xhrCore/Response.js.map +1 -1
  161. package/target/impl/xhrCore/ResponseProcessor.js +165 -167
  162. package/target/impl/xhrCore/ResponseProcessor.js.map +1 -1
  163. package/target/impl/xhrCore/XhrFormData.js +75 -103
  164. package/target/impl/xhrCore/XhrFormData.js.map +1 -1
  165. package/target/impl/xhrCore/XhrRequest.js +160 -145
  166. package/target/impl/xhrCore/XhrRequest.js.map +1 -1
  167. package/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst +4 -0
  168. package/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst +4 -0
  169. package/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/createdFiles.lst +1 -0
  170. package/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/inputFiles.lst +1 -0
  171. package/target/myfaces/OamSubmit.js +32 -20
  172. package/target/myfaces/OamSubmit.js.map +1 -1
  173. package/target/surefire-reports/TEST-com.example.jsfs_js_ts.JsfsJsTsApplicationTests.xml +78 -0
  174. package/target/surefire-reports/com.example.jsfs_js_ts.JsfsJsTsApplicationTests.txt +7 -0
  175. package/target/test/frameworkBase/LangTest.spec.js +46 -32
  176. package/target/test/frameworkBase/LangTest.spec.js.map +1 -1
  177. package/target/test/frameworkBase/_ext/monadish/DomQueryTest.spec.js +372 -134
  178. package/target/test/frameworkBase/_ext/monadish/DomQueryTest.spec.js.map +1 -1
  179. package/target/test/frameworkBase/_ext/monadish/LangTest.spec.js +46 -32
  180. package/target/test/frameworkBase/_ext/monadish/LangTest.spec.js.map +1 -1
  181. package/target/test/frameworkBase/_ext/monadish/MappingProbes.js +25 -34
  182. package/target/test/frameworkBase/_ext/monadish/MappingProbes.js.map +1 -1
  183. package/target/test/frameworkBase/_ext/monadish/MappingTest.spec.js +9 -9
  184. package/target/test/frameworkBase/_ext/monadish/MappingTest.spec.js.map +1 -1
  185. package/target/test/frameworkBase/_ext/monadish/MonadTest.spec.js +32 -32
  186. package/target/test/frameworkBase/_ext/monadish/MonadTest.spec.js.map +1 -1
  187. package/target/test/frameworkBase/_ext/monadish/StreamTest.spec.js +51 -49
  188. package/target/test/frameworkBase/_ext/monadish/StreamTest.spec.js.map +1 -1
  189. package/target/test/frameworkBase/_ext/shared/StandardInits.js +277 -124
  190. package/target/test/frameworkBase/_ext/shared/StandardInits.js.map +1 -1
  191. package/target/test/frameworkBase/_ext/shared/XmlResponses.js +199 -18
  192. package/target/test/frameworkBase/_ext/shared/XmlResponses.js.map +1 -1
  193. package/target/test/impl/ImplTest.spec.js +45 -33
  194. package/target/test/impl/ImplTest.spec.js.map +1 -1
  195. package/target/test/impl/ImplTest_23.spec.js +133 -0
  196. package/target/test/impl/ImplTest_23.spec.js.map +1 -0
  197. package/target/test/impl/SeparatorCharsTest.spec.js +22 -20
  198. package/target/test/impl/SeparatorCharsTest.spec.js.map +1 -1
  199. package/target/test/myfaces/OamSubmit.spec.js +35 -42
  200. package/target/test/myfaces/OamSubmit.spec.js.map +1 -1
  201. package/target/test/queue/AsynchronousProbe.js +24 -30
  202. package/target/test/queue/AsynchronousProbe.js.map +1 -1
  203. package/target/test/queue/AsynchronousQueueTest.spec.js +40 -71
  204. package/target/test/queue/AsynchronousQueueTest.spec.js.map +1 -1
  205. package/target/test/xhrCore/EventTests.spec.js +47 -83
  206. package/target/test/xhrCore/EventTests.spec.js.map +1 -1
  207. package/target/test/xhrCore/FakeWebsocket.js +15 -17
  208. package/target/test/xhrCore/FakeWebsocket.js.map +1 -1
  209. package/target/test/xhrCore/FileUploadTest.spec.js +50 -91
  210. package/target/test/xhrCore/FileUploadTest.spec.js.map +1 -1
  211. package/target/test/xhrCore/RequestParamsTest.spec.js +49 -98
  212. package/target/test/xhrCore/RequestParamsTest.spec.js.map +1 -1
  213. package/target/test/xhrCore/RequestTest.spec.js +84 -120
  214. package/target/test/xhrCore/RequestTest.spec.js.map +1 -1
  215. package/target/test/{typescript/xhrCore/RequestTest.js → xhrCore/RequestTest_23.spec.js} +142 -127
  216. package/target/test/xhrCore/RequestTest_23.spec.js.map +1 -0
  217. package/target/test/xhrCore/ResponseTest.spec.js +183 -105
  218. package/target/test/xhrCore/ResponseTest.spec.js.map +1 -1
  219. package/target/test/xhrCore/ResponseTest23.spec.js +312 -0
  220. package/target/test/xhrCore/ResponseTest23.spec.js.map +1 -0
  221. package/target/test/xhrCore/ShadowDomTest.spec.js +33 -66
  222. package/target/test/xhrCore/ShadowDomTest.spec.js.map +1 -1
  223. package/target/test/xhrCore/WebsocketTest.js +64 -97
  224. package/target/test/xhrCore/WebsocketTest.js.map +1 -1
  225. package/target/test/xhrCore/XhrFormDataTest.spec.js +42 -16
  226. package/target/test/xhrCore/XhrFormDataTest.spec.js.map +1 -1
  227. package/target/test-classes/jsf-development.js +452 -3674
  228. package/target/test-classes/jsf.js +1 -1
  229. package/target/test-classes/jsf.js.br +0 -0
  230. package/target/test-classes/jsf.js.gz +0 -0
  231. package/webpack.config.js +7 -4
  232. package/webpack.config.js.map +1 -1
  233. package/webpack.config.ts +23 -4
  234. package/dist/docs/modules/jsf.html +0 -71
  235. package/dist/docs/variables/jsf.specversion.html +0 -52
  236. package/integrationdeploy.cmd +0 -4
  237. package/integrationsdeploy.sh +0 -5
  238. package/remap.js +0 -44
  239. package/remap.js.map +0 -1
  240. package/src/main/java/com/example/jsfs_js_ts/JsfsJsTsApplication.java +0 -12
  241. package/src/main/types/typedefs.d.ts +0 -66
  242. package/target/api/Jsf.js.map +0 -1
  243. package/target/classes/com/example/jsfs_js_ts/JsfsJsTsApplication.class +0 -0
  244. package/target/impl/util/ListenerQueue.js +0 -3
  245. package/target/impl/util/ListenerQueue.js.map +0 -1
  246. package/target/main/typescript/api/Jsf.js +0 -258
  247. package/target/main/typescript/api/Jsf.js.map +0 -1
  248. package/target/main/typescript/impl/AjaxImpl.js +0 -569
  249. package/target/main/typescript/impl/AjaxImpl.js.map +0 -1
  250. package/target/main/typescript/impl/PushImpl.js +0 -215
  251. package/target/main/typescript/impl/PushImpl.js.map +0 -1
  252. package/target/main/typescript/impl/core/Const.js +0 -135
  253. package/target/main/typescript/impl/core/Const.js.map +0 -1
  254. package/target/main/typescript/impl/core/ImplTypes.js +0 -43
  255. package/target/main/typescript/impl/core/ImplTypes.js.map +0 -1
  256. package/target/main/typescript/impl/i18n/Messages.js +0 -114
  257. package/target/main/typescript/impl/i18n/Messages.js.map +0 -1
  258. package/target/main/typescript/impl/util/Assertions.js +0 -90
  259. package/target/main/typescript/impl/util/Assertions.js.map +0 -1
  260. package/target/main/typescript/impl/util/AsyncQueue.js +0 -104
  261. package/target/main/typescript/impl/util/AsyncQueue.js.map +0 -1
  262. package/target/main/typescript/impl/util/AsyncRunnable.js.map +0 -1
  263. package/target/main/typescript/impl/util/ExtDomQuery.js +0 -129
  264. package/target/main/typescript/impl/util/ExtDomQuery.js.map +0 -1
  265. package/target/main/typescript/impl/util/Lang.js +0 -215
  266. package/target/main/typescript/impl/util/Lang.js.map +0 -1
  267. package/target/main/typescript/impl/util/ListenerQueue.js +0 -3
  268. package/target/main/typescript/impl/util/ListenerQueue.js.map +0 -1
  269. package/target/main/typescript/impl/xhrCore/ErrorData.js +0 -89
  270. package/target/main/typescript/impl/xhrCore/ErrorData.js.map +0 -1
  271. package/target/main/typescript/impl/xhrCore/EventData.js +0 -30
  272. package/target/main/typescript/impl/xhrCore/EventData.js.map +0 -1
  273. package/target/main/typescript/impl/xhrCore/IResponseProcessor.js +0 -3
  274. package/target/main/typescript/impl/xhrCore/IResponseProcessor.js.map +0 -1
  275. package/target/main/typescript/impl/xhrCore/RequestDataResolver.js +0 -143
  276. package/target/main/typescript/impl/xhrCore/RequestDataResolver.js.map +0 -1
  277. package/target/main/typescript/impl/xhrCore/ResonseDataResolver.js +0 -103
  278. package/target/main/typescript/impl/xhrCore/ResonseDataResolver.js.map +0 -1
  279. package/target/main/typescript/impl/xhrCore/Response.js +0 -167
  280. package/target/main/typescript/impl/xhrCore/Response.js.map +0 -1
  281. package/target/main/typescript/impl/xhrCore/ResponseProcessor.js +0 -368
  282. package/target/main/typescript/impl/xhrCore/ResponseProcessor.js.map +0 -1
  283. package/target/main/typescript/impl/xhrCore/XhrFormData.js +0 -272
  284. package/target/main/typescript/impl/xhrCore/XhrFormData.js.map +0 -1
  285. package/target/main/typescript/impl/xhrCore/XhrRequest.js +0 -281
  286. package/target/main/typescript/impl/xhrCore/XhrRequest.js.map +0 -1
  287. package/target/test/frameworkBase/_ext/monadish/DomQueryTest.js +0 -293
  288. package/target/test/frameworkBase/_ext/monadish/DomQueryTest.js.map +0 -1
  289. package/target/test/frameworkBase/_ext/monadish/LangTest.js +0 -89
  290. package/target/test/frameworkBase/_ext/monadish/LangTest.js.map +0 -1
  291. package/target/test/frameworkBase/_ext/monadish/MappingTest.js +0 -39
  292. package/target/test/frameworkBase/_ext/monadish/MappingTest.js.map +0 -1
  293. package/target/test/frameworkBase/_ext/monadish/MonadTest.js +0 -155
  294. package/target/test/frameworkBase/_ext/monadish/MonadTest.js.map +0 -1
  295. package/target/test/frameworkBase/_ext/monadish/StreamTest.js +0 -176
  296. package/target/test/frameworkBase/_ext/monadish/StreamTest.js.map +0 -1
  297. package/target/test/frameworkBase/_ext/monadish/XmlQueryTest.js +0 -1
  298. package/target/test/frameworkBase/_ext/monadish/XmlQueryTest.js.map +0 -1
  299. package/target/test/typescript/frameworkBase/LangTest.js +0 -112
  300. package/target/test/typescript/frameworkBase/LangTest.js.map +0 -1
  301. package/target/test/typescript/frameworkBase/_ext/monadish/DomQueryTest.js +0 -293
  302. package/target/test/typescript/frameworkBase/_ext/monadish/DomQueryTest.js.map +0 -1
  303. package/target/test/typescript/frameworkBase/_ext/monadish/LangTest.js +0 -89
  304. package/target/test/typescript/frameworkBase/_ext/monadish/LangTest.js.map +0 -1
  305. package/target/test/typescript/frameworkBase/_ext/monadish/MappingProbes.js +0 -115
  306. package/target/test/typescript/frameworkBase/_ext/monadish/MappingProbes.js.map +0 -1
  307. package/target/test/typescript/frameworkBase/_ext/monadish/MappingTest.js +0 -39
  308. package/target/test/typescript/frameworkBase/_ext/monadish/MappingTest.js.map +0 -1
  309. package/target/test/typescript/frameworkBase/_ext/monadish/MonadTest.js +0 -155
  310. package/target/test/typescript/frameworkBase/_ext/monadish/MonadTest.js.map +0 -1
  311. package/target/test/typescript/frameworkBase/_ext/monadish/StreamTest.js +0 -176
  312. package/target/test/typescript/frameworkBase/_ext/monadish/StreamTest.js.map +0 -1
  313. package/target/test/typescript/frameworkBase/_ext/monadish/XmlQueryTest.js +0 -1
  314. package/target/test/typescript/frameworkBase/_ext/monadish/XmlQueryTest.js.map +0 -1
  315. package/target/test/typescript/frameworkBase/_ext/shared/StandardInits.js +0 -264
  316. package/target/test/typescript/frameworkBase/_ext/shared/StandardInits.js.map +0 -1
  317. package/target/test/typescript/frameworkBase/_ext/shared/XmlResponses.js +0 -23
  318. package/target/test/typescript/frameworkBase/_ext/shared/XmlResponses.js.map +0 -1
  319. package/target/test/typescript/impl/ImplTest.js +0 -98
  320. package/target/test/typescript/impl/ImplTest.js.map +0 -1
  321. package/target/test/typescript/impl/SeparatorCharsTest.js +0 -72
  322. package/target/test/typescript/impl/SeparatorCharsTest.js.map +0 -1
  323. package/target/test/typescript/queue/AsynchronousProbe.js +0 -99
  324. package/target/test/typescript/queue/AsynchronousProbe.js.map +0 -1
  325. package/target/test/typescript/queue/AsynchronousQueueTest.js +0 -130
  326. package/target/test/typescript/queue/AsynchronousQueueTest.js.map +0 -1
  327. package/target/test/typescript/xhrCore/EventTests.js +0 -155
  328. package/target/test/typescript/xhrCore/EventTests.js.map +0 -1
  329. package/target/test/typescript/xhrCore/FakeWebsocket.js +0 -25
  330. package/target/test/typescript/xhrCore/FakeWebsocket.js.map +0 -1
  331. package/target/test/typescript/xhrCore/FileUploadTest.js +0 -166
  332. package/target/test/typescript/xhrCore/FileUploadTest.js.map +0 -1
  333. package/target/test/typescript/xhrCore/RequestParamsTest.js +0 -151
  334. package/target/test/typescript/xhrCore/RequestParamsTest.js.map +0 -1
  335. package/target/test/typescript/xhrCore/RequestTest.js.map +0 -1
  336. package/target/test/typescript/xhrCore/ResponseTest.js +0 -257
  337. package/target/test/typescript/xhrCore/ResponseTest.js.map +0 -1
  338. package/target/test/typescript/xhrCore/ShadowDomTest.js +0 -122
  339. package/target/test/typescript/xhrCore/ShadowDomTest.js.map +0 -1
  340. package/target/test/typescript/xhrCore/WebsocketTest.js +0 -182
  341. package/target/test/typescript/xhrCore/WebsocketTest.js.map +0 -1
  342. package/target/test/typescript/xhrCore/XhrFormDataTest.js +0 -58
  343. package/target/test/typescript/xhrCore/XhrFormDataTest.js.map +0 -1
@@ -1,4 +1,4 @@
1
- /* Licensed to the Apache Software Foundation (ASF) under one or more
1
+ /*! Licensed to the Apache Software Foundation (ASF) under one or more
2
2
  * contributor license agreements. See the NOTICE file distributed with
3
3
  * this work for additional information regarding copyright ownership.
4
4
  * The ASF licenses this file to you under the Apache License, Version 2.0
@@ -16,6 +16,7 @@
16
16
  import {ArrayCollector, Config, DQ, Lang, LazyStream, Stream} from "mona-dish";
17
17
  import {EMPTY_STR, IDENT_ALL, IDENT_FORM, P_VIEWSTATE} from "../core/Const";
18
18
  import isString = Lang.isString;
19
+ import {ExtConfig} from "../util/ExtDomQuery";
19
20
 
20
21
 
21
22
  /**
@@ -24,7 +25,7 @@ import isString = Lang.isString;
24
25
  *
25
26
  * We cannot use standard html5 forms everywhere
26
27
  * due to api constraints on the HTML Form object in IE11
27
- * and due to the url encoding constraint given by the jsf.js spec
28
+ * and due to the url encoding constraint given by the faces.js spec
28
29
  *
29
30
  * probably only one needed and one overlay!
30
31
  * the entire file input storing probably is redundant now
@@ -44,7 +45,7 @@ export class XhrFormData extends Config {
44
45
  * data collector from a given form
45
46
  *
46
47
  * @param dataSource either a form as DomQuery object or an encoded url string
47
- * @param viewState the form view state or an external viewstate coming in as string
48
+ * @param viewState the form view state or an external viewState coming in as string
48
49
  * @param executes the executes id list for the elements to being processed
49
50
  * @param partialIds partial ids to collect, to reduce the data sent down
50
51
  */
@@ -67,8 +68,9 @@ export class XhrFormData extends Config {
67
68
  }
68
69
 
69
70
  /**
70
- * generic post init code, for now, this peforms some post assign data post processing
71
- * @param executes
71
+ * generic post init code, for now, this performs some post assign data post-processing
72
+ * @param executes the executable dom nodes which need to be processed into the form data, which we can send
73
+ * in our ajax request
72
74
  */
73
75
  postInit(...executes: Array<string>) {
74
76
  let fetchInput = (id: string): DQ => {
@@ -121,7 +123,7 @@ export class XhrFormData extends Config {
121
123
  * @param keyValueEntries
122
124
  */
123
125
  assignString(keyValueEntries: string[]) {
124
- let toMerge = new Config({});
126
+ let toMerge = new ExtConfig({});
125
127
 
126
128
  function splitToKeyVal(line: string) {
127
129
  return line.split(/=(.*)/gi);
@@ -201,7 +203,7 @@ export class XhrFormData extends Config {
201
203
  /*
202
204
  * Spec. 13.3.1
203
205
  * Collect and encode input elements.
204
- * Additionally the hidden element javax.faces.ViewState
206
+ * Additionally the hidden element jakarta.faces.ViewState
205
207
  * Enhancement partial page submit
206
208
  *
207
209
  */
@@ -1,4 +1,4 @@
1
- /* Licensed to the Apache Software Foundation (ASF) under one or more
1
+ /*! Licensed to the Apache Software Foundation (ASF) under one or more
2
2
  * contributor license agreements. See the NOTICE file distributed with
3
3
  * this work for additional information regarding copyright ownership.
4
4
  * The ASF licenses this file to you under the Apache License, Version 2.0
@@ -46,8 +46,8 @@ import {resolveFinalUrl, resolveHandlerFunc} from "./RequestDataResolver";
46
46
  import failSaveExecute = ExtLang.failSaveExecute;
47
47
 
48
48
  /**
49
- * JSFed XHR Request Wrapper
50
- * as Asyncrunnable for our Asynchronous queue
49
+ * Faces XHR Request Wrapper
50
+ * as AsyncRunnable for our Asynchronous queue
51
51
  *
52
52
  * The idea is that we basically just enqueue
53
53
  * a single ajax request into our queue
@@ -55,8 +55,6 @@ import failSaveExecute = ExtLang.failSaveExecute;
55
55
  *
56
56
  */
57
57
 
58
- declare let jsf: any;
59
-
60
58
  export class XhrRequest implements AsyncRunnable<XMLHttpRequest> {
61
59
 
62
60
  private responseContext: Config;
@@ -66,15 +64,15 @@ export class XhrRequest implements AsyncRunnable<XMLHttpRequest> {
66
64
  /**
67
65
  * helper support so that we do not have to drag in Promise shims
68
66
  */
69
- private catchFuncs: Array<Function> = [];
70
- private thenFunc: Array<Function> = [];
67
+ private catchFunctions: Array<Function> = [];
68
+ private thenFunctions: Array<Function> = [];
71
69
 
72
70
  /**
73
- * Reqired Parameters
71
+ * Required Parameters
74
72
  *
75
73
  * @param source the issuing element
76
74
  * @param sourceForm the form which is related to the issuing element
77
- * @param requestContext the request context with allö pass through values
75
+ * @param requestContext the request context with all pass through values
78
76
  *
79
77
  * Optional Parameters
80
78
  *
@@ -83,7 +81,7 @@ export class XhrRequest implements AsyncRunnable<XMLHttpRequest> {
83
81
  * @param timeout optional xhr timeout
84
82
  * @param ajaxType optional request type, default "POST"
85
83
  * @param contentType optional content type, default "application/x-www-form-urlencoded"
86
- * @param xhrObject optional xhr object which must fullfill the XMLHTTPRequest api, default XMLHttpRequest
84
+ * @param xhrObject optional xhr object which must fulfill the XMLHTTPRequest api, default XMLHttpRequest
87
85
  */
88
86
  constructor(
89
87
  private source: DQ,
@@ -96,10 +94,10 @@ export class XhrRequest implements AsyncRunnable<XMLHttpRequest> {
96
94
  private contentType = URL_ENCODED,
97
95
  private xhrObject = new XMLHttpRequest()
98
96
  ) {
99
- /*
100
- * we omit promises here
101
- * some browsers do not support it and we do not need shim code
102
- */
97
+
98
+ // we omit promises here because we have to deal with cancel functionality,
99
+ // and promises to not provide that (yet) instead we have our async queue
100
+ // which uses an api internally, which is very close to promises
103
101
  this.registerXhrCallbacks((data: any) => {
104
102
  this.resolve(data)
105
103
  }, (data: any) => {
@@ -118,21 +116,21 @@ export class XhrRequest implements AsyncRunnable<XMLHttpRequest> {
118
116
  try {
119
117
 
120
118
  let formElement = this.sourceForm.getAsElem(0).value;
121
- let viewState = jsf.getViewState(formElement);
122
- //encoded we need to decode
123
- //We generated a base representation of the current form
124
- //in case someone has overloaded the viewstate with addtional decorators we merge
125
- //that in, there is no way around it, the spec allows it and getViewState
126
- //must be called, so whatever getViewState delivers has higher priority then
127
- //whatever the formData object delivers
128
- //the partialIdsArray arr is almost deprecated legacy code where we allowed to send a separate list of partial
129
- //ids for reduced load and server processing, this will be removed soon, we can handle the same via execute
130
- //anyway TODO remove the partial ids array
119
+ let viewState = (window?.faces ?? window?.jsf).getViewState(formElement);
120
+ // encoded we need to decode
121
+ // We generated a base representation of the current form
122
+ // in case someone has overloaded the viewState with additional decorators we merge
123
+ // that in, there is no way around it, the spec allows it and getViewState
124
+ // must be called, so whatever getViewState delivers has higher priority then
125
+ // whatever the formData object delivers
126
+ // the partialIdsArray arr is almost deprecated legacy code where we allowed to send a separate list of partial
127
+ // ids for reduced load and server processing, this will be removed soon, we can handle the same via execute
128
+ // anyway TODO remove the partial ids array
131
129
  let formData: XhrFormData = new XhrFormData(this.sourceForm, viewState, executesArr(), this.partialIdsArray);
132
130
 
133
131
  this.contentType = formData.isMultipartRequest ? "undefined" : this.contentType;
134
132
 
135
- //next step the pass through parameters are merged in for post params
133
+ // next step the pass through parameters are merged in for post params
136
134
  let requestContext = this.requestContext;
137
135
  let passThroughParams = requestContext.getIf(CTX_PARAM_PASS_THR);
138
136
 
@@ -143,31 +141,31 @@ export class XhrRequest implements AsyncRunnable<XMLHttpRequest> {
143
141
 
144
142
  this.responseContext = passThroughParams.deepCopy;
145
143
 
146
- //we have to shift the internal passthroughs around to build up our response context
144
+ // we have to shift the internal passthroughs around to build up our response context
147
145
  let responseContext = this.responseContext;
148
146
 
149
147
  responseContext.assign(CTX_PARAM_MF_INTERNAL).value = this.internalContext.value;
150
148
 
151
- //per spec the onevent and onerrors must be passed through to the response
149
+ // per spec the onevent and onerror handlers must be passed through to the response
152
150
  responseContext.assign(ON_EVENT).value = requestContext.getIf(ON_EVENT).value;
153
151
  responseContext.assign(ON_ERROR).value = requestContext.getIf(ON_ERROR).value;
154
152
 
155
153
  xhrObject.open(this.ajaxType, resolveFinalUrl(this.sourceForm, formData, this.ajaxType), true);
156
154
 
157
- //adding timeout
155
+ // adding timeout
158
156
  this.timeout ? xhrObject.timeout = this.timeout : null;
159
157
 
160
- //a bug in the xhr stub library prevents the setRequestHeader to be properly executed on fake xhr objects
161
- //normal browsers should resolve this
162
- //tests can quietly fail on this one
158
+ // a bug in the xhr stub library prevents the setRequestHeader to be properly executed on fake xhr objects
159
+ // normal browsers should resolve this
160
+ // tests can quietly fail on this one
163
161
  if(this.contentType != "undefined") {
164
162
  ignoreErr(() => xhrObject.setRequestHeader(CONTENT_TYPE, `${this.contentType}; charset=utf-8`));
165
163
  }
166
164
 
167
165
  ignoreErr(() => xhrObject.setRequestHeader(HEAD_FACES_REQ, VAL_AJAX));
168
166
 
169
- //probably not needed anymore, will test this
170
- //some webkit based mobile browsers do not follow the w3c spec of
167
+ // probably not needed anymore, will test this
168
+ // some webkit based mobile browsers do not follow the w3c spec of
171
169
  // setting, they accept headers automatically
172
170
  ignoreErr(() => xhrObject.setRequestHeader(REQ_ACCEPT, STD_ACCEPT));
173
171
 
@@ -176,7 +174,7 @@ export class XhrRequest implements AsyncRunnable<XMLHttpRequest> {
176
174
  this.sendRequest(formData);
177
175
 
178
176
  } catch (e) {
179
- //_onError//_onError
177
+ // _onError
180
178
  this.handleError(e);
181
179
  }
182
180
  return this;
@@ -191,34 +189,31 @@ export class XhrRequest implements AsyncRunnable<XMLHttpRequest> {
191
189
  }
192
190
 
193
191
  resolve(data: any) {
194
- Stream.of(...this.thenFunc).reduce((inputVal: any, thenFunc: any) => {
192
+ Stream.of(...this.thenFunctions).reduce((inputVal: any, thenFunc: any) => {
195
193
  return thenFunc(inputVal);
196
194
  }, data);
197
195
  }
198
196
 
199
197
  reject(data: any) {
200
- Stream.of(...this.catchFuncs).reduce((inputVal: any, catchFunc: any) => {
198
+ Stream.of(...this.catchFunctions).reduce((inputVal: any, catchFunc: any) => {
201
199
  return catchFunc(inputVal);
202
200
  }, data);
203
201
  }
204
202
 
205
203
  catch(func: (data: any) => any): AsyncRunnable<XMLHttpRequest> {
206
- //this.$promise.catch(func);
207
- this.catchFuncs.push(func);
204
+ this.catchFunctions.push(func);
208
205
  return this;
209
206
  }
210
207
 
211
208
  finally(func: () => void): AsyncRunnable<XMLHttpRequest> {
212
- //no ie11 support we probably are going to revert to shims for that one
213
- //(<any>this.$promise).then(func).catch(func);
214
- this.catchFuncs.push(func);
215
- this.thenFunc.push(func);
209
+ // no ie11 support we probably are going to revert to shims for that one
210
+ this.catchFunctions.push(func);
211
+ this.thenFunctions.push(func);
216
212
  return this;
217
213
  }
218
214
 
219
215
  then(func: (data: any) => any): AsyncRunnable<XMLHttpRequest> {
220
- //this.$promise.then(func);
221
- this.thenFunc.push(func);
216
+ this.thenFunctions.push(func);
222
217
  return this;
223
218
  }
224
219
 
@@ -245,16 +240,35 @@ export class XhrRequest implements AsyncRunnable<XMLHttpRequest> {
245
240
  this.onDone(this.xhrObject, resolve);
246
241
  };
247
242
  xhrObject.onerror = (errorData: any) => {
243
+
244
+ // some browsers trigger an error when cancelling a request internally
245
+ // in this case we simply ignore the request and clear up the queue, because
246
+ // it is not safe anymore to proceed with the current queue
247
+ // This bypasses a Safari issue where it keeps requests hanging after page unload
248
+ // and then triggers a cancel error on then instead of just stopping
249
+ // and clearing the code
250
+ if(this.isCancelledResponse(this.xhrObject)) {
251
+ reject();
252
+ this.stopProgress = true;
253
+ return;
254
+ }
248
255
  this.onError(errorData, reject);
249
256
  };
250
257
  }
251
258
 
259
+ private isCancelledResponse(currentTarget: XMLHttpRequest): boolean {
260
+ return currentTarget?.status === 0 && // cancelled by browser
261
+ currentTarget?.readyState === 4 &&
262
+ currentTarget?.responseText === '' &&
263
+ currentTarget?.responseXML === null;
264
+ }
265
+
252
266
  /*
253
- * xhr processing callbacks
254
- *
255
- * Those methods are the callbacks called by
256
- * the xhr object depending on its own state
257
- */
267
+ * xhr processing callbacks
268
+ *
269
+ * Those methods are the callbacks called by
270
+ * the xhr object depending on its own state
271
+ */
258
272
 
259
273
  private onAbort(reject: Consumer<any>) {
260
274
  reject();
@@ -269,13 +283,14 @@ export class XhrRequest implements AsyncRunnable<XMLHttpRequest> {
269
283
 
270
284
  this.sendEvent(COMPLETE);
271
285
 
272
- //malforms always result in empty response xml
286
+ // malformed responses always result in empty response xml
287
+ // per spec a valid response cannot be empty
273
288
  if (!this?.xhrObject?.responseXML) {
274
289
  this.handleMalFormedXML(resolve);
275
290
  return;
276
291
  }
277
292
 
278
- jsf.ajax.response(this.xhrObject, this.responseContext.value ?? {});
293
+ (window?.faces ?? window.jsf).ajax.response(this.xhrObject, this.responseContext.value ?? {});
279
294
  }
280
295
 
281
296
  private handleMalFormedXML(resolve: Function) {
@@ -292,14 +307,15 @@ export class XhrRequest implements AsyncRunnable<XMLHttpRequest> {
292
307
  try {
293
308
  this.handleError(errorData, true);
294
309
  } finally {
295
- //we issue a resolve in this case to allow the system to recover
310
+ // we issue a resolve in this case to allow the system to recover
311
+ // reject would clean up the queue
296
312
  resolve(errorData);
297
- //reject();
298
313
  }
299
- //non blocking non clearing
314
+ // non blocking non clearing
300
315
  }
301
316
 
302
317
  private onDone(data: any, resolve: Consumer<any>) {
318
+ // if stop progress a special handling including resolve is already performed
303
319
  if (this.stopProgress) {
304
320
  return;
305
321
  }
@@ -314,10 +330,10 @@ export class XhrRequest implements AsyncRunnable<XMLHttpRequest> {
314
330
  private sendRequest(formData: XhrFormData) {
315
331
  let isPost = this.ajaxType != REQ_TYPE_GET;
316
332
  if (formData.isMultipartRequest) {
317
- //in case of a multipart request we send in a formData object as body
333
+ // in case of a multipart request we send in a formData object as body
318
334
  this.xhrObject.send((isPost) ? formData.toFormData() : null);
319
335
  } else {
320
- //in case of a normal request we send it normally
336
+ // in case of a normal request we send it normally
321
337
  this.xhrObject.send((isPost) ? formData.toString() : null);
322
338
  }
323
339
  }
@@ -328,10 +344,10 @@ export class XhrRequest implements AsyncRunnable<XMLHttpRequest> {
328
344
  private sendEvent(evtType: string) {
329
345
  let eventData = EventData.createFromRequest(this.xhrObject, this.requestContext, evtType);
330
346
  try {
331
- //user code error, we might cover
332
- //this in onError but also we cannot swallow it
333
- //we need to resolve the local handlers lazyly,
334
- //because some frameworks might decorate them over the context in the response
347
+ // User code error, we might cover
348
+ // this in onError, but also we cannot swallow it.
349
+ // We need to resolve the local handlers lazily,
350
+ // because some frameworks might decorate them over the context in the response
335
351
  let eventHandler = resolveHandlerFunc(this.requestContext, this.responseContext, ON_EVENT);
336
352
 
337
353
  Implementation.sendEvent(eventData, eventHandler);
@@ -1,4 +1,4 @@
1
- /* Licensed to the Apache Software Foundation (ASF) under one or more
1
+ /*! Licensed to the Apache Software Foundation (ASF) under one or more
2
2
  * contributor license agreements. See the NOTICE file distributed with
3
3
  * this work for additional information regarding copyright ownership.
4
4
  * The ASF licenses this file to you under the Apache License, Version 2.0
@@ -27,10 +27,6 @@ import {DQ, Stream} from "mona-dish";
27
27
  *
28
28
  * we might move the code over in the future, but for now a straight 1:1 port suffices
29
29
  */
30
- declare const window: any;
31
- declare const myfaces: any;
32
-
33
- //TODO add unit tests to check all this here that it works just as before
34
30
  export module oam {
35
31
  /**
36
32
  * sets a hidden input field
@@ -38,7 +34,7 @@ export module oam {
38
34
  * @param name the hidden field
39
35
  * @param value the value to be rendered
40
36
  */
41
- export const setHiddenInput = function (formName: string, name: string, value: string) {
37
+ export const setHiddenInput = function (formName: string, name: string, value: string): void {
42
38
  DQ.byId(document.forms[formName])
43
39
  .each(form => {
44
40
  const input = form.querySelectorAll(`input[type='hidden'][name='${name}']`);
@@ -58,7 +54,7 @@ export module oam {
58
54
  * @param formName formName for the input
59
55
  * @param name the name of the input field
60
56
  */
61
- export const clearHiddenInput = function (formName: string, name: string) {
57
+ export const clearHiddenInput = function (formName: string, name: string): void {
62
58
  let element = document.forms?.[formName]?.elements?.[name];
63
59
  if(!element) {
64
60
  return;
@@ -77,13 +73,13 @@ export module oam {
77
73
  * @param target
78
74
  * @param params
79
75
  */
80
- export const submitForm = function (formName: string, linkId: string, target: string, params: { [key: string]: any }) {
76
+ export const submitForm = function (formName: string, linkId: string, target: string, params: { [key: string]: any }): boolean {
81
77
  let clearFn = 'clearFormHiddenParams_' + formName.replace(/-/g, '\$:').replace(/:/g, '_');
82
78
  window?.[clearFn]?.(formName);
83
79
 
84
80
  //autoscroll code
85
- if (window?.myfaces?.core?.config?.autoScroll && window?.getScrolling) {
86
- myfaces.oam.setHiddenInput(formName, 'autoScroll', window?.getScrolling());
81
+ if (window?.myfaces?.core?.config?.autoScroll && (window as any)?.getScrolling) {
82
+ myfaces.oam.setHiddenInput(formName, 'autoScroll', (window as any)?.getScrolling());
87
83
  }
88
84
  Stream.ofAssoc(params).each((param: [string, any]) => {
89
85
  myfaces.oam.setHiddenInput(formName, param[0], param[1]);
@@ -106,13 +102,14 @@ export module oam {
106
102
  }
107
103
  } catch (e) {
108
104
  window?.console.error(e);
105
+ } finally {
106
+ form.attr(ATTR_TARGET).value = oldTarget;
107
+ Stream.ofAssoc(params).each((param: [string, any]) => {
108
+ myfaces.oam.clearHiddenInput(formName, param[0]);
109
+ });
110
+ myfaces.oam.clearHiddenInput(formName, `${formName}:_idcl`);
109
111
  }
110
112
 
111
- form.attr(ATTR_TARGET).value = oldTarget;
112
- Stream.ofAssoc(params).each((param: [string, any]) => {
113
- myfaces.oam.clearHiddenInput(formName, param[0]);
114
- });
115
- myfaces.oam.clearHiddenInput(formName, `${formName}:_idcl`);
116
113
  });
117
114
  return false;
118
115
  };