jsf.js_next_gen 4.0.0-beta-23 → 4.0.1-alpha.0

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 (214) hide show
  1. package/.nyc_output/09ca9ebc-2305-4357-8db9-48ddfc7dfde2.json +1 -0
  2. package/.nyc_output/7c496a14-166e-4aa5-85b9-47b22b055ad8.json +1 -0
  3. package/.nyc_output/processinfo/09ca9ebc-2305-4357-8db9-48ddfc7dfde2.json +1 -0
  4. package/.nyc_output/processinfo/7c496a14-166e-4aa5-85b9-47b22b055ad8.json +1 -0
  5. package/.nyc_output/processinfo/index.json +1 -1
  6. package/README.md +13 -21
  7. package/dist/docs/assets/main.js +56 -52
  8. package/dist/docs/assets/search.js +1 -1
  9. package/dist/docs/assets/style.css +23 -0
  10. package/dist/docs/functions/faces.ajax.addOnError.html +2 -0
  11. package/dist/docs/functions/faces.ajax.addOnEvent.html +2 -0
  12. package/dist/docs/functions/faces.push.close.html +4 -2
  13. package/dist/docs/functions/faces.push.init.html +19 -7
  14. package/dist/docs/functions/faces.push.open.html +4 -2
  15. package/dist/docs/functions/myfaces.ab.html +9 -4
  16. package/dist/docs/functions/myfaces.onDomReady.html +72 -0
  17. package/dist/docs/index.html +16 -18
  18. package/dist/docs/modules/myfaces.html +3 -1
  19. package/dist/docs/variables/myfaces.oam.html +2 -1
  20. package/dist/window/faces-development.js +2846 -2085
  21. package/dist/window/faces-development.js.br +0 -0
  22. package/dist/window/faces-development.js.gz +0 -0
  23. package/dist/window/faces-development.js.map +1 -1
  24. package/dist/window/faces.js +1 -1
  25. package/dist/window/faces.js.LICENSE.txt +17 -2
  26. package/dist/window/faces.js.br +0 -0
  27. package/dist/window/faces.js.gz +0 -0
  28. package/dist/window/faces.js.map +1 -1
  29. package/dist/window/jsf-development.js +2856 -2084
  30. package/dist/window/jsf-development.js.br +0 -0
  31. package/dist/window/jsf-development.js.gz +0 -0
  32. package/dist/window/jsf-development.js.map +1 -1
  33. package/dist/window/jsf.js +1 -1
  34. package/dist/window/jsf.js.LICENSE.txt +17 -2
  35. package/dist/window/jsf.js.br +0 -0
  36. package/dist/window/jsf.js.gz +0 -0
  37. package/dist/window/jsf.js.map +1 -1
  38. package/package.json +19 -18
  39. package/plans for 4.0.1.txt +8 -0
  40. package/src/main/test.xml +23 -0
  41. package/src/main/typescript/@types/definitions/index.d.ts +19 -2
  42. package/src/main/typescript/api/_api.ts +68 -25
  43. package/src/main/typescript/api/jsf.ts +18 -0
  44. package/src/main/typescript/impl/AjaxImpl.ts +204 -100
  45. package/src/main/typescript/impl/PushImpl.ts +63 -38
  46. package/src/main/typescript/impl/core/Const.ts +56 -40
  47. package/src/main/typescript/impl/util/Assertions.ts +16 -8
  48. package/src/main/typescript/impl/util/AsyncRunnable.ts +85 -10
  49. package/src/main/typescript/impl/util/ExtDomQuery.ts +65 -54
  50. package/src/main/typescript/impl/util/FileUtils.ts +108 -0
  51. package/src/main/typescript/impl/util/HiddenInputBuilder.ts +93 -0
  52. package/src/main/typescript/impl/util/Lang.ts +91 -35
  53. package/src/main/typescript/impl/util/XhrQueueController.ts +112 -0
  54. package/src/main/typescript/impl/xhrCore/ErrorData.ts +15 -10
  55. package/src/main/typescript/impl/xhrCore/EventData.ts +3 -3
  56. package/src/main/typescript/impl/xhrCore/IResponseProcessor.ts +25 -11
  57. package/src/main/typescript/impl/xhrCore/RequestDataResolver.ts +78 -32
  58. package/src/main/typescript/impl/xhrCore/ResonseDataResolver.ts +10 -10
  59. package/src/main/typescript/impl/xhrCore/Response.ts +66 -49
  60. package/src/main/typescript/impl/xhrCore/ResponseProcessor.ts +211 -138
  61. package/src/main/typescript/impl/xhrCore/XhrFormData.ts +92 -166
  62. package/src/main/typescript/impl/xhrCore/XhrRequest.ts +111 -120
  63. package/src/main/typescript/myfaces/OamSubmit.ts +30 -14
  64. package/src/main/typescript/test/frameworkBase/_ext/monadish/DomQueryTest.spec.ts +163 -27
  65. package/src/main/typescript/test/frameworkBase/_ext/monadish/MonadTest.spec.ts +4 -4
  66. package/src/main/typescript/test/frameworkBase/_ext/monadish/fixtures/blank.css +0 -0
  67. package/src/main/typescript/test/frameworkBase/_ext/monadish/markups/tobago-with-header.ts +921 -0
  68. package/src/main/typescript/test/frameworkBase/_ext/monadish/markups/tobago-without-header.ts +108 -0
  69. package/src/main/typescript/test/frameworkBase/_ext/shared/StandardInits.ts +111 -3
  70. package/src/main/typescript/test/frameworkBase/_ext/shared/XmlResponses.ts +40 -1
  71. package/src/main/typescript/test/frameworkBase/_ext/shared/fixtures/jakarta.faces.resource/faces.js.jsf +0 -0
  72. package/src/main/typescript/test/impl/ImplTest.spec.ts +3 -3
  73. package/src/main/typescript/test/impl/ImplTest_23.spec.ts +3 -7
  74. package/src/main/typescript/test/myfaces/OnLoadSpec.ts +52 -0
  75. package/src/main/typescript/test/queue/AsynchronousProbe.ts +5 -5
  76. package/src/main/typescript/test/queue/AsynchronousQueueTest.spec.ts +4 -3
  77. package/src/main/typescript/test/xhrCore/EventTests.spec.ts +28 -22
  78. package/src/main/typescript/test/xhrCore/FileUploadTest.spec.ts +5 -2
  79. package/src/main/typescript/test/xhrCore/NamespacesRequestTest.spec.ts +203 -0
  80. package/src/main/typescript/test/xhrCore/OamSubmitTest.spec.ts +177 -0
  81. package/src/main/typescript/test/xhrCore/RequestParamsTest.spec.ts +158 -17
  82. package/src/main/typescript/test/xhrCore/RequestTest.spec.ts +320 -15
  83. package/src/main/typescript/test/xhrCore/RequestTest_23.spec.ts +45 -4
  84. package/src/main/typescript/test/xhrCore/ResponseTest.spec.ts +374 -35
  85. package/src/main/typescript/test/xhrCore/ResponseTest23.spec.ts +43 -9
  86. package/src/main/typescript/test/xhrCore/TobagoFileUploadTest.spec.ts +109 -0
  87. package/src/main/typescript/test/xhrCore/XhrFormDataTest.spec.ts +67 -49
  88. package/src/main/typescript/test.xml +6 -0
  89. package/src/main/typescript/tsconfig.json +1 -1
  90. package/src/test/resources/jsf-development.js +1 -1
  91. package/src/tmp/test.html +12 -88
  92. package/target/api/_api.js +63 -21
  93. package/target/api/_api.js.map +1 -1
  94. package/target/api/jsf.js +11 -0
  95. package/target/api/jsf.js.map +1 -1
  96. package/target/classes/com/example/jsfs_js_ts/DecoratedFacesJS.class +0 -0
  97. package/target/classes/com/example/jsfs_js_ts/DecoratingResourceHandlerWrapper.class +0 -0
  98. package/target/classes/com/example/jsfs_js_ts/FacesJSMapFileResourceWrapper.class +0 -0
  99. package/target/classes/com/example/jsfs_js_ts/FacesJSMappingDecorator.class +0 -0
  100. package/target/impl/AjaxImpl.js +177 -81
  101. package/target/impl/AjaxImpl.js.map +1 -1
  102. package/target/impl/PushImpl.js +66 -35
  103. package/target/impl/PushImpl.js.map +1 -1
  104. package/target/impl/core/Const.js +54 -39
  105. package/target/impl/core/Const.js.map +1 -1
  106. package/target/impl/core/Context.js +10 -0
  107. package/target/impl/core/Context.js.map +1 -0
  108. package/target/impl/util/Assertions.js +12 -7
  109. package/target/impl/util/Assertions.js.map +1 -1
  110. package/target/impl/util/AsyncQueue.js.map +1 -1
  111. package/target/impl/util/AsyncRunnable.js +60 -0
  112. package/target/impl/util/AsyncRunnable.js.map +1 -1
  113. package/target/impl/util/ExtDomQuery.js +66 -48
  114. package/target/impl/util/ExtDomQuery.js.map +1 -1
  115. package/target/impl/util/FileUtils.js +97 -0
  116. package/target/impl/util/FileUtils.js.map +1 -0
  117. package/target/impl/util/HiddenElementBuilder.js +7 -0
  118. package/target/impl/util/HiddenElementBuilder.js.map +1 -0
  119. package/target/impl/util/HiddenInputBuilder.js +83 -0
  120. package/target/impl/util/HiddenInputBuilder.js.map +1 -0
  121. package/target/{types/index.js → impl/util/IAsyncRunnable.js} +11 -2
  122. package/target/impl/util/IAsyncRunnable.js.map +1 -0
  123. package/target/impl/util/Lang.js +81 -31
  124. package/target/impl/util/Lang.js.map +1 -1
  125. package/target/impl/util/URLCodec.js +77 -0
  126. package/target/impl/util/URLCodec.js.map +1 -0
  127. package/target/impl/util/XhrQueueController.js +107 -0
  128. package/target/impl/util/XhrQueueController.js.map +1 -0
  129. package/target/impl/xhrCore/ErrorData.js +10 -8
  130. package/target/impl/xhrCore/ErrorData.js.map +1 -1
  131. package/target/impl/xhrCore/EventData.js +2 -2
  132. package/target/impl/xhrCore/EventData.js.map +1 -1
  133. package/target/impl/xhrCore/RequestContext.js +11 -0
  134. package/target/impl/xhrCore/RequestContext.js.map +1 -0
  135. package/target/impl/xhrCore/RequestDataResolver.js +70 -23
  136. package/target/impl/xhrCore/RequestDataResolver.js.map +1 -1
  137. package/target/impl/xhrCore/ResonseDataResolver.js +9 -9
  138. package/target/impl/xhrCore/ResonseDataResolver.js.map +1 -1
  139. package/target/impl/xhrCore/Response.js +44 -29
  140. package/target/impl/xhrCore/Response.js.map +1 -1
  141. package/target/impl/xhrCore/ResponseProcessor.js +187 -119
  142. package/target/impl/xhrCore/ResponseProcessor.js.map +1 -1
  143. package/target/impl/xhrCore/XhrFormData.js +82 -156
  144. package/target/impl/xhrCore/XhrFormData.js.map +1 -1
  145. package/target/impl/xhrCore/XhrQueHandler.js +11 -0
  146. package/target/impl/xhrCore/XhrQueHandler.js.map +1 -0
  147. package/target/impl/xhrCore/XhrQueueController.js +62 -0
  148. package/target/impl/xhrCore/XhrQueueController.js.map +1 -0
  149. package/target/impl/xhrCore/XhrRequest.js +94 -106
  150. package/target/impl/xhrCore/XhrRequest.js.map +1 -1
  151. package/target/myfaces/OamSubmit.js +25 -14
  152. package/target/myfaces/OamSubmit.js.map +1 -1
  153. package/target/test/frameworkBase/_ext/monadish/DomQueryTest.spec.js +124 -23
  154. package/target/test/frameworkBase/_ext/monadish/DomQueryTest.spec.js.map +1 -1
  155. package/target/test/frameworkBase/_ext/monadish/ExtendedArrayTest.spec.js +76 -0
  156. package/target/test/frameworkBase/_ext/monadish/ExtendedArrayTest.spec.js.map +1 -0
  157. package/target/test/frameworkBase/_ext/monadish/MonadTest.spec.js +4 -4
  158. package/target/test/frameworkBase/_ext/monadish/MonadTest.spec.js.map +1 -1
  159. package/target/test/frameworkBase/_ext/monadish/markups/tobago-with-header.js +925 -0
  160. package/target/test/frameworkBase/_ext/monadish/markups/tobago-with-header.js.map +1 -0
  161. package/target/test/frameworkBase/_ext/monadish/markups/tobago-without-header.js +112 -0
  162. package/target/test/frameworkBase/_ext/monadish/markups/tobago-without-header.js.map +1 -0
  163. package/target/test/frameworkBase/_ext/shared/StandardInits.js +103 -3
  164. package/target/test/frameworkBase/_ext/shared/StandardInits.js.map +1 -1
  165. package/target/test/frameworkBase/_ext/shared/XmlResponses.js +37 -1
  166. package/target/test/frameworkBase/_ext/shared/XmlResponses.js.map +1 -1
  167. package/target/test/impl/ImplTest.spec.js +2 -2
  168. package/target/test/impl/ImplTest.spec.js.map +1 -1
  169. package/target/test/impl/ImplTest_23.spec.js +2 -2
  170. package/target/test/impl/ImplTest_23.spec.js.map +1 -1
  171. package/target/test/myfaces/OnLoadSpec.js +57 -0
  172. package/target/test/myfaces/OnLoadSpec.js.map +1 -0
  173. package/target/test/queue/AsynchronousQueueTest.spec.js +3 -3
  174. package/target/test/queue/AsynchronousQueueTest.spec.js.map +1 -1
  175. package/target/test/xhrCore/EventTests.spec.js +26 -19
  176. package/target/test/xhrCore/EventTests.spec.js.map +1 -1
  177. package/target/test/xhrCore/FileUploadTest.spec.js +2 -1
  178. package/target/test/xhrCore/FileUploadTest.spec.js.map +1 -1
  179. package/target/test/xhrCore/NamespacesRequestTest.spec.js +204 -0
  180. package/target/test/xhrCore/NamespacesRequestTest.spec.js.map +1 -0
  181. package/target/test/xhrCore/OamSubmitTest.spec.js +180 -0
  182. package/target/test/xhrCore/OamSubmitTest.spec.js.map +1 -0
  183. package/target/test/xhrCore/RequestParamsTest.spec.js +142 -10
  184. package/target/test/xhrCore/RequestParamsTest.spec.js.map +1 -1
  185. package/target/test/xhrCore/RequestTest.spec.js +288 -11
  186. package/target/test/xhrCore/RequestTest.spec.js.map +1 -1
  187. package/target/test/xhrCore/RequestTest_23.spec.js +40 -2
  188. package/target/test/xhrCore/RequestTest_23.spec.js.map +1 -1
  189. package/target/test/xhrCore/ResponseTest.spec.js +315 -24
  190. package/target/test/xhrCore/ResponseTest.spec.js.map +1 -1
  191. package/target/test/xhrCore/ResponseTest23.spec.js +38 -8
  192. package/target/test/xhrCore/ResponseTest23.spec.js.map +1 -1
  193. package/target/test/xhrCore/TobagoFileUploadTest.spec.js +128 -0
  194. package/target/test/xhrCore/TobagoFileUploadTest.spec.js.map +1 -0
  195. package/target/test/xhrCore/XhrFormDataTest.spec.js +57 -34
  196. package/target/test/xhrCore/XhrFormDataTest.spec.js.map +1 -1
  197. package/target/test-classes/.gz +0 -0
  198. package/target/test-classes/com/example/jsfs_js_ts/JsfsJsTsApplicationTests.class +0 -0
  199. package/target/test-classes/fileuploadtest.html +24 -0
  200. package/target/test-classes/jsf-development.js +3559 -0
  201. package/target/test-classes/jsf-development.js.br +0 -0
  202. package/target/test-classes/jsf-development.js.gz +0 -0
  203. package/target/test-classes/jsf-development.js.map +1 -0
  204. package/target/test-classes/jsf.js +3 -0
  205. package/target/test-classes/jsf.js.br +0 -0
  206. package/target/test-classes/jsf.js.gz +0 -0
  207. package/tmp.xml +36 -0
  208. package/.nyc_output/2303b649-59d9-485c-9228-73b0ec8787a7.json +0 -1
  209. package/.nyc_output/756f2f03-c85b-4cdb-9b92-5799eb45ef1e.json +0 -1
  210. package/.nyc_output/processinfo/2303b649-59d9-485c-9228-73b0ec8787a7.json +0 -1
  211. package/.nyc_output/processinfo/756f2f03-c85b-4cdb-9b92-5799eb45ef1e.json +0 -1
  212. package/src/main/typescript/impl/util/AsyncQueue.ts +0 -133
  213. package/src/main/typescript/test/frameworkBase/_ext/monadish/StreamTest.spec.ts +0 -231
  214. package/target/types/index.js.map +0 -1
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ExtConfig = exports.ExtDQ = exports.ExtDomquery = void 0;
3
+ exports.ExtConfig = exports.ExtDQ = exports.ExtDomQuery = void 0;
4
4
  /*! Licensed to the Apache Software Foundation (ASF) under one or more
5
5
  * contributor license agreements. See the NOTICE file distributed with
6
6
  * this work for additional information regarding copyright ownership.
@@ -38,9 +38,12 @@ const IS_FACES_SOURCE = (source) => {
38
38
  (source === null || source === void 0 ? void 0 : source.search(/\/jsf[^.]*\.js.*ln=javax.faces.*/gi)) != -1);
39
39
  };
40
40
  /**
41
- * namespace myfaces.testscripts can be used as extension point for internal
42
- * tests, those will be handled similarly to faces.js - regarding
43
- * reload blocking on ajax requests
41
+ * namespace myfaces\.testscripts can be used as extension point for internal
42
+ * tests, those will be handled similarly to faces.js, in regard
43
+ * to reload blocking on ajax requests
44
+ *
45
+ * Note: atm not used, used to be used in the old implementation
46
+ * but still is reserved for now
44
47
  *
45
48
  * @param source the source to check
46
49
  * @constructor
@@ -51,19 +54,19 @@ const IS_INTERNAL_SOURCE = (source) => {
51
54
  const ATTR_SRC = 'src';
52
55
  /**
53
56
  * Extension which adds implementation specific
54
- * meta data to our dom query
57
+ * meta-data to our dom query
55
58
  *
56
59
  * Usage
57
60
  * el = new ExtDQ(oldReference)
58
61
  * nonce = el.nonce
59
62
  * windowId = el.getWindowId
60
63
  */
61
- class ExtDomquery extends mona_dish_1.DQ {
64
+ class ExtDomQuery extends mona_dish_1.DQ {
62
65
  static get windowId() {
63
- return new ExtDomquery(document.body).windowId;
66
+ return new ExtDomQuery(document.body).windowId;
64
67
  }
65
68
  static get nonce() {
66
- return new ExtDomquery(document.body).nonce;
69
+ return new ExtDomQuery(document.body).nonce;
67
70
  }
68
71
  get windowId() {
69
72
  const fetchWindowIdFromURL = function () {
@@ -93,6 +96,7 @@ class ExtDomquery extends mona_dish_1.DQ {
93
96
  * this is done once and only lazily
94
97
  */
95
98
  get nonce() {
99
+ var _a;
96
100
  //already processed
97
101
  let myfacesConfig = new ExtConfig(window.myfaces);
98
102
  let nonce = myfacesConfig.getIf("config", "cspMeta", "nonce");
@@ -102,60 +106,57 @@ class ExtDomquery extends mona_dish_1.DQ {
102
106
  let curScript = new mona_dish_1.DQ(document.currentScript);
103
107
  //since our baseline atm is ie11 we cannot use document.currentScript globally
104
108
  if (!!this.extractNonce(curScript)) {
105
- // fastpath for modern browsers
109
+ // fast-path for modern browsers
106
110
  return this.extractNonce(curScript);
107
111
  }
108
112
  // fallback if the currentScript method fails, we just search the jsf tags for nonce, this is
109
113
  // the last possibility
110
- let nonceScript = mona_dish_1.DQ
111
- .querySelectorAll("script[src], link[src]")
112
- .lazyStream
114
+ let nonceScript = mona_dish_1.Optional.fromNullable((_a = mona_dish_1.DQ
115
+ .querySelectorAll("script[src], link[src]").asArray
113
116
  .filter((item) => this.extractNonce(item) && item.attr(ATTR_SRC) != null)
114
- .filter(item => IS_FACES_SOURCE(item.attr(ATTR_SRC).value))
115
- .first();
117
+ .filter(item => IS_FACES_SOURCE(item.attr(ATTR_SRC).value))) === null || _a === void 0 ? void 0 : _a[0]);
116
118
  if (nonceScript.isPresent()) {
117
119
  return this.extractNonce(nonceScript.value);
118
120
  }
119
121
  return null;
120
122
  }
121
- extractNonce(curScript) {
122
- var _a, _b;
123
- return (_b = (_a = curScript.getAsElem(0).value) === null || _a === void 0 ? void 0 : _a.nonce) !== null && _b !== void 0 ? _b : curScript.attr("nonce").value;
124
- }
125
123
  static searchJsfJsFor(item) {
126
- return new ExtDomquery(document).searchJsfJsFor(item);
124
+ return new ExtDomQuery(document).searchJsfJsFor(item);
127
125
  }
128
126
  /**
129
- * searches the embedded faces.js for items like separator char etc..
127
+ * searches the embedded faces.js for items like separator char etc.
130
128
  * expects a match as variable under position 1 in the result match
131
- * @param rexp
129
+ * @param regExp
132
130
  */
133
- searchJsfJsFor(rexp) {
131
+ searchJsfJsFor(regExp) {
132
+ var _a;
134
133
  //perfect application for lazy stream
135
- return mona_dish_1.DQ.querySelectorAll("script[src], link[src]").lazyStream
134
+ return mona_dish_1.Optional.fromNullable((_a = mona_dish_1.DQ.querySelectorAll("script[src], link[src]").asArray
136
135
  .filter(item => IS_FACES_SOURCE(item.attr(ATTR_SRC).value))
137
- .map(item => item.attr(ATTR_SRC).value.match(rexp))
136
+ .map(item => item.attr(ATTR_SRC).value.match(regExp))
138
137
  .filter(item => item != null && item.length > 1)
139
138
  .map((result) => {
140
139
  return decodeURIComponent(result[1]);
141
- }).first();
140
+ })) === null || _a === void 0 ? void 0 : _a[0]);
142
141
  }
143
142
  globalEval(code, nonce) {
144
- return new ExtDomquery(super.globalEval(code, nonce !== null && nonce !== void 0 ? nonce : this.nonce));
143
+ return new ExtDomQuery(super.globalEval(code, nonce !== null && nonce !== void 0 ? nonce : this.nonce));
145
144
  }
145
+ // called from base class runScripts, do not delete
146
+ // noinspection JSUnusedGlobalSymbols
146
147
  globalEvalSticky(code, nonce) {
147
- return new ExtDomquery(super.globalEvalSticky(code, nonce !== null && nonce !== void 0 ? nonce : this.nonce));
148
+ return new ExtDomQuery(super.globalEvalSticky(code, nonce !== null && nonce !== void 0 ? nonce : this.nonce));
148
149
  }
149
150
  /**
150
151
  * decorated run scripts which takes our jsf extensions into consideration
151
152
  * (standard DomQuery will let you pass anything)
152
153
  * @param sticky if set to true the internally generated element for the script is left in the dom
153
- * @param whilteListed
154
+ * @param whiteListed
154
155
  */
155
- runScripts(sticky = false, whilteListed) {
156
+ runScripts(sticky = false, whiteListed) {
156
157
  const whitelistFunc = (src) => {
157
158
  var _a;
158
- return ((_a = whilteListed === null || whilteListed === void 0 ? void 0 : whilteListed(src)) !== null && _a !== void 0 ? _a : true) && !IS_FACES_SOURCE(src) && !IS_INTERNAL_SOURCE(src);
159
+ return ((_a = whiteListed === null || whiteListed === void 0 ? void 0 : whiteListed(src)) !== null && _a !== void 0 ? _a : true) && !IS_FACES_SOURCE(src) && !IS_INTERNAL_SOURCE(src);
159
160
  };
160
161
  return super.runScripts(sticky, whitelistFunc);
161
162
  }
@@ -165,7 +166,7 @@ class ExtDomquery extends mona_dish_1.DQ {
165
166
  * @param suppressDoubleIncludes checks for existing elements in the head before running the insert
166
167
  */
167
168
  runHeadInserts(suppressDoubleIncludes = true) {
168
- let head = ExtDomquery.byId(document.head);
169
+ let head = ExtDomQuery.byId(document.head);
169
170
  //automated nonce handling
170
171
  let processedScripts = [];
171
172
  // the idea is only to run head inserts on resources
@@ -178,12 +179,13 @@ class ExtDomquery extends mona_dish_1.DQ {
178
179
  }
179
180
  const tagName = element.tagName.value;
180
181
  if (!tagName) {
181
- // textnode
182
+ // text node they do not have tag names, so we can process them as they are without
183
+ // any further ado
182
184
  return true;
183
185
  }
184
186
  let reference = element.attr("href")
185
- .orElse(element.attr("src").value)
186
- .orElse(element.attr("rel").value);
187
+ .orElseLazy(() => element.attr("src").value)
188
+ .orElseLazy(() => element.attr("rel").value);
187
189
  if (!reference.isPresent()) {
188
190
  return true;
189
191
  }
@@ -196,7 +198,7 @@ class ExtDomquery extends mona_dish_1.DQ {
196
198
  .each(element => {
197
199
  if (element.tagName.value != "SCRIPT") {
198
200
  //we need to run runScripts properly to deal with the rest
199
- new ExtDomquery(...processedScripts).runScripts(true);
201
+ new ExtDomQuery(...processedScripts).runScripts(true);
200
202
  processedScripts = [];
201
203
  head.append(element);
202
204
  }
@@ -204,7 +206,7 @@ class ExtDomquery extends mona_dish_1.DQ {
204
206
  processedScripts.push(element);
205
207
  }
206
208
  });
207
- new ExtDomquery(...processedScripts).runScripts(true);
209
+ new ExtDomQuery(...processedScripts).runScripts(true);
208
210
  }
209
211
  /**
210
212
  * byId producer
@@ -215,11 +217,18 @@ class ExtDomquery extends mona_dish_1.DQ {
215
217
  */
216
218
  static byId(selector, deep = false) {
217
219
  const ret = mona_dish_1.DomQuery.byId(selector, deep);
218
- return new ExtDomquery(ret);
220
+ return new ExtDomQuery(ret);
221
+ }
222
+ extractNonce(curScript) {
223
+ var _a, _b;
224
+ return (_b = (_a = curScript.getAsElem(0).value) === null || _a === void 0 ? void 0 : _a.nonce) !== null && _b !== void 0 ? _b : curScript.attr("nonce").value;
225
+ }
226
+ filter(func) {
227
+ return new ExtDomQuery(super.filter(func));
219
228
  }
220
229
  }
221
- exports.ExtDomquery = ExtDomquery;
222
- exports.ExtDQ = ExtDomquery;
230
+ exports.ExtDomQuery = ExtDomQuery;
231
+ exports.ExtDQ = ExtDomQuery;
223
232
  /**
224
233
  * in order to reduce the number of interception points for the fallbacks we add
225
234
  * the namespace remapping straight to our config accessors
@@ -227,25 +236,26 @@ exports.ExtDQ = ExtDomquery;
227
236
  class ExtConfig extends mona_dish_1.Config {
228
237
  constructor(root) {
229
238
  super(root);
239
+ this.$nspEnabled = true;
230
240
  }
231
241
  assignIf(condition, ...accessPath) {
232
- const acessPathMapped = this.remap(accessPath);
233
- return super.assignIf(condition, ...acessPathMapped);
242
+ const accessPathMapped = this.remap(accessPath);
243
+ return super.assignIf(condition, ...accessPathMapped);
234
244
  }
235
245
  assign(...accessPath) {
236
- const acessPathMapped = this.remap(accessPath);
237
- return super.assign(...acessPathMapped);
246
+ const accessPathMapped = this.remap(accessPath);
247
+ return super.assign(...accessPathMapped);
238
248
  }
239
249
  append(...accessPath) {
240
250
  return super.append(...accessPath);
241
251
  }
242
252
  appendIf(condition, ...accessPath) {
243
- const acessPathMapped = this.remap(accessPath);
244
- return super.appendIf(condition, ...acessPathMapped);
253
+ const accessPathMapped = this.remap(accessPath);
254
+ return super.appendIf(condition, ...accessPathMapped);
245
255
  }
246
256
  getIf(...accessPath) {
247
- const acessPathMapped = this.remap(accessPath);
248
- return super.getIf(...acessPathMapped);
257
+ const accessPathMapped = this.remap(accessPath);
258
+ return super.getIf(...accessPathMapped);
249
259
  }
250
260
  get(defaultVal) {
251
261
  return super.get((0, Const_1.$nsp)(defaultVal));
@@ -277,8 +287,16 @@ class ExtConfig extends mona_dish_1.Config {
277
287
  get deepCopy() {
278
288
  return new ExtConfig(super.deepCopy$());
279
289
  }
290
+ /**
291
+ * helper to remap the namespaces of an array of access paths
292
+ * @param accessPath the access paths to be remapped
293
+ * @private returns an array of access paths with version remapped namespaces
294
+ */
280
295
  remap(accessPath) {
281
- return mona_dish_1.Stream.of(...accessPath).map(key => (0, Const_1.$nsp)(key)).collect(new mona_dish_1.ArrayCollector());
296
+ if (!this.$nspEnabled) {
297
+ return accessPath;
298
+ }
299
+ return [...accessPath].map(key => (0, Const_1.$nsp)(key));
282
300
  }
283
301
  }
284
302
  exports.ExtConfig = ExtConfig;
@@ -1 +1 @@
1
- {"version":3,"file":"ExtDomQuery.js","sourceRoot":"","sources":["../../../src/main/typescript/impl/util/ExtDomQuery.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ExtDomQuery.js","sourceRoot":"","sources":["../../../src/main/typescript/impl/util/ExtDomQuery.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,97 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getFormInputsAsArr = exports.fixEmptyParameters = exports.resolveFiles = exports.decodeEncodedValues = exports.encodeFormData = void 0;
4
+ const ExtDomQuery_1 = require("./ExtDomQuery");
5
+ const Const_1 = require("../core/Const");
6
+ /*
7
+ * various routines for encoding and decoding url parameters
8
+ * into configs and vice versa
9
+ */
10
+ /**
11
+ * encodes a given form data into a url encoded string
12
+ * @param formData the form data config object
13
+ * @param paramsMapper the params mapper
14
+ * @param defaultStr a default string if nothing comes out of it
15
+ */
16
+ function encodeFormData(formData, paramsMapper = (inStr, inVal) => [inStr, inVal], defaultStr = Const_1.EMPTY_STR) {
17
+ if (formData.isAbsent()) {
18
+ return defaultStr;
19
+ }
20
+ const assocValues = formData.value;
21
+ const expandValueArrAndRename = key => assocValues[key].map(val => paramsMapper(key, val));
22
+ const isPropertyKey = key => assocValues.hasOwnProperty(key);
23
+ const isNotFile = ([, value]) => !(value instanceof ExtDomQuery_1.ExtDomQuery.global().File);
24
+ const mapIntoUrlParam = keyVal => `${encodeURIComponent(keyVal[0])}=${encodeURIComponent(keyVal[1])}`;
25
+ return Object.keys(assocValues)
26
+ .filter(isPropertyKey)
27
+ .flatMap(expandValueArrAndRename)
28
+ .filter(isNotFile)
29
+ .map(mapIntoUrlParam)
30
+ .join("&");
31
+ }
32
+ exports.encodeFormData = encodeFormData;
33
+ /**
34
+ * splits and decodes encoded values into strings containing of key=value
35
+ * @param encoded encoded string
36
+ */
37
+ function decodeEncodedValues(encoded) {
38
+ const filterBlanks = item => !!(item || '').replace(/\s+/g, '');
39
+ const splitKeyValuePair = line => {
40
+ let index = line.indexOf("=");
41
+ if (index == -1) {
42
+ return [line];
43
+ }
44
+ return [line.substring(0, index), line.substring(index + 1)];
45
+ };
46
+ let requestParamEntries = decodeURIComponent(encoded).split(/&/gi);
47
+ return requestParamEntries.filter(filterBlanks).map(splitKeyValuePair);
48
+ }
49
+ exports.decodeEncodedValues = decodeEncodedValues;
50
+ /**
51
+ * gets all the input files and their corresponding file objects
52
+ * @param dataSource
53
+ */
54
+ function resolveFiles(dataSource) {
55
+ const expandFilesArr = ([key, files]) => {
56
+ return [...files].map(file => [key, file]);
57
+ };
58
+ const remapFileInput = fileInput => {
59
+ return [fileInput.name.value || fileInput.id.value, fileInput.filesFromElem(0)];
60
+ };
61
+ const files = dataSource
62
+ .querySelectorAllDeep("input[type='file']")
63
+ .asArray;
64
+ const ret = files
65
+ .map(remapFileInput)
66
+ .flatMap(expandFilesArr);
67
+ return ret;
68
+ }
69
+ exports.resolveFiles = resolveFiles;
70
+ function fixEmptyParameters(keyVal) {
71
+ var _a, _b;
72
+ return (keyVal.length < 3 ? [(_a = keyVal === null || keyVal === void 0 ? void 0 : keyVal[0]) !== null && _a !== void 0 ? _a : [], (_b = keyVal === null || keyVal === void 0 ? void 0 : keyVal[1]) !== null && _b !== void 0 ? _b : []] : keyVal);
73
+ }
74
+ exports.fixEmptyParameters = fixEmptyParameters;
75
+ /**
76
+ * returns the decoded viewState from parentItem
77
+ * @param parentItem
78
+ */
79
+ function resolveViewState(parentItem) {
80
+ const viewStateStr = (0, Const_1.$faces)().getViewState(parentItem.getAsElem(0).value);
81
+ // we now need to decode it and then merge it into the target buf
82
+ // which hosts already our overrides (aka do not override what is already there(
83
+ // after that we need to deal with form elements on a separate level
84
+ return decodeEncodedValues(viewStateStr);
85
+ }
86
+ /**
87
+ * gets all the inputs under the form parentItem
88
+ * as array
89
+ * @param parentItem
90
+ */
91
+ function getFormInputsAsArr(parentItem) {
92
+ const standardInputs = resolveViewState(parentItem);
93
+ const fileInputs = resolveFiles(parentItem);
94
+ return standardInputs.concat(...fileInputs);
95
+ }
96
+ exports.getFormInputsAsArr = getFormInputsAsArr;
97
+ //# sourceMappingURL=FileUtils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FileUtils.js","sourceRoot":"","sources":["../../../src/main/typescript/impl/util/FileUtils.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.HiddenElementBuilder = void 0;
4
+ class HiddenElementBuilder {
5
+ }
6
+ exports.HiddenElementBuilder = HiddenElementBuilder;
7
+ //# sourceMappingURL=HiddenElementBuilder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HiddenElementBuilder.js","sourceRoot":"","sources":["../../../src/main/typescript/impl/util/HiddenElementBuilder.ts"],"names":[],"mappings":";;;AAAA,MAAa,oBAAoB;CAChC;AADD,oDACC"}
@@ -0,0 +1,83 @@
1
+ "use strict";
2
+ /*! Licensed to the Apache Software Foundation (ASF) under one or more
3
+ * contributor license agreements. See the NOTICE file distributed with
4
+ * this work for additional information regarding copyright ownership.
5
+ * The ASF licenses this file to you under the Apache License, Version 2.0
6
+ * (the "License"); you may not use this file except in compliance with
7
+ * the License. You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ *
17
+ */
18
+ Object.defineProperty(exports, "__esModule", { value: true });
19
+ exports.HiddenInputBuilder = void 0;
20
+ const mona_dish_1 = require("mona-dish");
21
+ const Const_1 = require("../core/Const");
22
+ /**
23
+ * Builder for hidden inputs.
24
+ * ATM only ViewState and Client window
25
+ * are supported (per spec)
26
+ *
27
+ * Improves readability in the response processor!
28
+ */
29
+ class HiddenInputBuilder {
30
+ constructor(selector) {
31
+ this.selector = selector;
32
+ this.namedViewRoot = false;
33
+ const isViewState = selector.indexOf((0, Const_1.$nsp)(Const_1.P_VIEWSTATE)) != -1;
34
+ this.name = isViewState ? Const_1.P_VIEWSTATE : Const_1.P_CLIENT_WINDOW;
35
+ this.template = isViewState ? Const_1.HTML_VIEWSTATE : Const_1.HTML_CLIENT_WINDOW;
36
+ }
37
+ withNamingContainerId(namingContainer) {
38
+ this.namingContainerId = namingContainer;
39
+ return this;
40
+ }
41
+ withParent(parent) {
42
+ this.parent = parent;
43
+ return this;
44
+ }
45
+ withNamedViewRoot(namedViewRoot) {
46
+ this.namedViewRoot = namedViewRoot;
47
+ return this;
48
+ }
49
+ build() {
50
+ var _a, _b, _c;
51
+ const SEP = (0, Const_1.$faces)().separatorchar;
52
+ let existingStates = (0, mona_dish_1.DQ$)(`[name*='${(0, Const_1.$nsp)(this.name)}']`);
53
+ let cnt = existingStates.asArray.map(state => {
54
+ let ident = state.id.orElse("-1").value;
55
+ ident = ident.substring(ident.lastIndexOf(SEP) + 1);
56
+ return parseInt(ident);
57
+ })
58
+ .filter(item => {
59
+ return !isNaN(item);
60
+ })
61
+ .reduce((item1, item2) => {
62
+ return Math.max(item1, item2);
63
+ }, -1);
64
+ //the maximum new ident is the current max + 1
65
+ cnt++;
66
+ const newElement = mona_dish_1.DQ.fromMarkup((0, Const_1.$nsp)(this.template));
67
+ newElement.id.value = (((_a = this.namingContainerId) === null || _a === void 0 ? void 0 : _a.length) ?
68
+ [this.namingContainerId, (0, Const_1.$nsp)(this.name), cnt] :
69
+ [(0, Const_1.$nsp)(this.name), cnt]).join(SEP);
70
+ //name must be prefixed with the naming container id as well according to the jsdocs
71
+ if (this.namedViewRoot) {
72
+ newElement.name.value = ((_b = this.namingContainerId) === null || _b === void 0 ? void 0 : _b.length) ?
73
+ [this.namingContainerId, (0, Const_1.$nsp)(this.name)].join(SEP) : (0, Const_1.$nsp)(this.name);
74
+ }
75
+ else {
76
+ newElement.name.value = (0, Const_1.$nsp)(this.name);
77
+ }
78
+ (_c = this === null || this === void 0 ? void 0 : this.parent) === null || _c === void 0 ? void 0 : _c.append(newElement);
79
+ return newElement;
80
+ }
81
+ }
82
+ exports.HiddenInputBuilder = HiddenInputBuilder;
83
+ //# sourceMappingURL=HiddenInputBuilder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HiddenInputBuilder.js","sourceRoot":"","sources":["../../../src/main/typescript/impl/util/HiddenInputBuilder.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  "use strict";
2
- /* Licensed to the Apache Software Foundation (ASF) under one or more
2
+ /*! Licensed to the Apache Software Foundation (ASF) under one or more
3
3
  * contributor license agreements. See the NOTICE file distributed with
4
4
  * this work for additional information regarding copyright ownership.
5
5
  * The ASF licenses this file to you under the Apache License, Version 2.0
@@ -15,4 +15,13 @@
15
15
  * limitations under the License.
16
16
  */
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
- //# sourceMappingURL=index.js.map
18
+ exports.AsyncRunnable = void 0;
19
+ /**
20
+ * pretty much the same as cancellable Promise, but given
21
+ * we do not have that on browser level yet this is sort
22
+ * of a non intrusive Shim!
23
+ */
24
+ class AsyncRunnable {
25
+ }
26
+ exports.AsyncRunnable = AsyncRunnable;
27
+ //# sourceMappingURL=IAsyncRunnable.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IAsyncRunnable.js","sourceRoot":"","sources":["../../../src/main/typescript/impl/util/IAsyncRunnable.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;AA4DH;;;;GAIG;AACH,MAAa,aAAa;CAEzB;AAFD,sCAEC"}