jsf.js_next_gen 4.0.0-RC.3 → 4.0.0-RC.31

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 (185) hide show
  1. package/dist/docs/assets/main.js +56 -52
  2. package/dist/docs/assets/style.css +23 -0
  3. package/dist/window/faces-development.js +2961 -3011
  4. package/dist/window/faces-development.js.br +0 -0
  5. package/dist/window/faces-development.js.gz +0 -0
  6. package/dist/window/faces-development.js.map +1 -1
  7. package/dist/window/faces.js +1 -1
  8. package/dist/window/faces.js.LICENSE.txt +0 -2
  9. package/dist/window/faces.js.br +0 -0
  10. package/dist/window/faces.js.gz +0 -0
  11. package/dist/window/faces.js.map +1 -1
  12. package/dist/window/jsf-development.js +2966 -3016
  13. package/dist/window/jsf-development.js.br +0 -0
  14. package/dist/window/jsf-development.js.gz +0 -0
  15. package/dist/window/jsf-development.js.map +1 -1
  16. package/dist/window/jsf.js +1 -1
  17. package/dist/window/jsf.js.LICENSE.txt +0 -2
  18. package/dist/window/jsf.js.br +0 -0
  19. package/dist/window/jsf.js.gz +0 -0
  20. package/dist/window/jsf.js.map +1 -1
  21. package/package.json +16 -16
  22. package/src/main/test.xml +23 -0
  23. package/src/main/typescript/@types/definitions/index.d.ts +12 -7
  24. package/src/main/typescript/api/_api.ts +4 -3
  25. package/src/main/typescript/impl/AjaxImpl.ts +125 -41
  26. package/src/main/typescript/impl/core/Const.ts +52 -41
  27. package/src/main/typescript/impl/util/Assertions.ts +16 -8
  28. package/src/main/typescript/impl/util/ExtDomQuery.ts +12 -4
  29. package/src/main/typescript/impl/util/FileUtils.ts +66 -0
  30. package/src/main/typescript/impl/util/HiddenInputBuilder.ts +89 -0
  31. package/src/main/typescript/impl/util/Lang.ts +9 -11
  32. package/src/main/typescript/impl/xhrCore/ErrorData.ts +15 -10
  33. package/src/main/typescript/impl/xhrCore/EventData.ts +2 -2
  34. package/src/main/typescript/impl/xhrCore/IResponseProcessor.ts +15 -1
  35. package/src/main/typescript/impl/xhrCore/RequestDataResolver.ts +69 -24
  36. package/src/main/typescript/impl/xhrCore/ResonseDataResolver.ts +4 -4
  37. package/src/main/typescript/impl/xhrCore/Response.ts +55 -38
  38. package/src/main/typescript/impl/xhrCore/ResponseProcessor.ts +173 -98
  39. package/src/main/typescript/impl/xhrCore/XhrFormData.ts +91 -168
  40. package/src/main/typescript/impl/xhrCore/XhrRequest.ts +39 -23
  41. package/src/main/typescript/myfaces/OamSubmit.ts +29 -13
  42. package/src/main/typescript/test/frameworkBase/_ext/monadish/DomQueryTest.spec.ts +1 -1
  43. package/src/main/typescript/test/frameworkBase/_ext/shared/StandardInits.ts +73 -1
  44. package/src/main/typescript/test/frameworkBase/_ext/shared/XmlResponses.ts +40 -1
  45. package/src/main/typescript/test/impl/ImplTest.spec.ts +3 -3
  46. package/src/main/typescript/test/impl/ImplTest_23.spec.ts +3 -3
  47. package/src/main/typescript/test/xhrCore/EventTests.spec.ts +1 -1
  48. package/src/main/typescript/test/xhrCore/FileUploadTest.spec.ts +5 -2
  49. package/src/main/typescript/test/xhrCore/NamespacesRequestTest.spec.ts +203 -0
  50. package/src/main/typescript/test/xhrCore/OamSubmitTest.spec.ts +177 -0
  51. package/src/main/typescript/test/xhrCore/RequestParamsTest.spec.ts +158 -17
  52. package/src/main/typescript/test/xhrCore/RequestTest.spec.ts +70 -3
  53. package/src/main/typescript/test/xhrCore/RequestTest_23.spec.ts +39 -3
  54. package/src/main/typescript/test/xhrCore/ResponseTest.spec.ts +372 -34
  55. package/src/main/typescript/test/xhrCore/ResponseTest23.spec.ts +43 -9
  56. package/src/main/typescript/test/xhrCore/XhrFormDataTest.spec.ts +67 -49
  57. package/src/main/typescript/test.xml +6 -0
  58. package/src/main/typescript/tsconfig.json +2 -2
  59. package/src/test/resources/jsf-development.js +1 -1
  60. package/src/tmp/test.html +12 -88
  61. package/target/api/_api.js +16 -29
  62. package/target/api/_api.js.map +1 -1
  63. package/target/api/faces.js +4 -4
  64. package/target/api/faces.js.map +1 -1
  65. package/target/api/jsf.js +9 -9
  66. package/target/api/jsf.js.map +1 -1
  67. package/target/classes/com/example/jsfs_js_ts/DecoratedFacesJS.class +0 -0
  68. package/target/classes/com/example/jsfs_js_ts/DecoratingResourceHandlerWrapper.class +0 -0
  69. package/target/classes/com/example/jsfs_js_ts/FacesJSMapFileResourceWrapper.class +0 -0
  70. package/target/classes/com/example/jsfs_js_ts/FacesJSMappingDecorator.class +0 -0
  71. package/target/impl/AjaxImpl.js +155 -89
  72. package/target/impl/AjaxImpl.js.map +1 -1
  73. package/target/impl/PushImpl.js +45 -48
  74. package/target/impl/PushImpl.js.map +1 -1
  75. package/target/impl/core/Const.js +52 -40
  76. package/target/impl/core/Const.js.map +1 -1
  77. package/target/impl/core/Context.js +10 -0
  78. package/target/impl/core/Context.js.map +1 -0
  79. package/target/impl/core/ImplTypes.js +9 -14
  80. package/target/impl/core/ImplTypes.js.map +1 -1
  81. package/target/impl/i18n/Messages.js +3 -4
  82. package/target/impl/i18n/Messages.js.map +1 -1
  83. package/target/impl/util/Assertions.js +20 -24
  84. package/target/impl/util/Assertions.js.map +1 -1
  85. package/target/impl/util/AsyncQueue.js +28 -36
  86. package/target/impl/util/AsyncQueue.js.map +1 -1
  87. package/target/impl/util/ExtDomQuery.js +153 -221
  88. package/target/impl/util/ExtDomQuery.js.map +1 -1
  89. package/target/impl/util/FileUtils.js +64 -0
  90. package/target/impl/util/FileUtils.js.map +1 -0
  91. package/target/impl/util/HiddenElementBuilder.js +7 -0
  92. package/target/impl/util/HiddenElementBuilder.js.map +1 -0
  93. package/target/impl/util/HiddenInputBuilder.js +79 -0
  94. package/target/impl/util/HiddenInputBuilder.js.map +1 -0
  95. package/target/impl/util/Lang.js +23 -32
  96. package/target/impl/util/Lang.js.map +1 -1
  97. package/target/impl/util/URLCodec.js +77 -0
  98. package/target/impl/util/URLCodec.js.map +1 -0
  99. package/target/impl/xhrCore/ErrorData.js +41 -64
  100. package/target/impl/xhrCore/ErrorData.js.map +1 -1
  101. package/target/impl/xhrCore/EventData.js +10 -13
  102. package/target/impl/xhrCore/EventData.js.map +1 -1
  103. package/target/impl/xhrCore/RequestContext.js +11 -0
  104. package/target/impl/xhrCore/RequestContext.js.map +1 -0
  105. package/target/impl/xhrCore/RequestDataResolver.js +71 -27
  106. package/target/impl/xhrCore/RequestDataResolver.js.map +1 -1
  107. package/target/impl/xhrCore/ResonseDataResolver.js +16 -16
  108. package/target/impl/xhrCore/ResonseDataResolver.js.map +1 -1
  109. package/target/impl/xhrCore/Response.js +43 -28
  110. package/target/impl/xhrCore/Response.js.map +1 -1
  111. package/target/impl/xhrCore/ResponseProcessor.js +217 -162
  112. package/target/impl/xhrCore/ResponseProcessor.js.map +1 -1
  113. package/target/impl/xhrCore/XhrFormData.js +92 -208
  114. package/target/impl/xhrCore/XhrFormData.js.map +1 -1
  115. package/target/impl/xhrCore/XhrRequest.js +104 -104
  116. package/target/impl/xhrCore/XhrRequest.js.map +1 -1
  117. package/target/myfaces/OamSubmit.js +33 -24
  118. package/target/myfaces/OamSubmit.js.map +1 -1
  119. package/target/test/frameworkBase/LangTest.spec.js +46 -32
  120. package/target/test/frameworkBase/LangTest.spec.js.map +1 -1
  121. package/target/test/frameworkBase/_ext/monadish/DomQueryTest.spec.js +238 -228
  122. package/target/test/frameworkBase/_ext/monadish/DomQueryTest.spec.js.map +1 -1
  123. package/target/test/frameworkBase/_ext/monadish/LangTest.spec.js +45 -31
  124. package/target/test/frameworkBase/_ext/monadish/LangTest.spec.js.map +1 -1
  125. package/target/test/frameworkBase/_ext/monadish/MappingProbes.js +24 -33
  126. package/target/test/frameworkBase/_ext/monadish/MappingProbes.js.map +1 -1
  127. package/target/test/frameworkBase/_ext/monadish/MappingTest.spec.js +8 -8
  128. package/target/test/frameworkBase/_ext/monadish/MappingTest.spec.js.map +1 -1
  129. package/target/test/frameworkBase/_ext/monadish/MonadTest.spec.js +31 -31
  130. package/target/test/frameworkBase/_ext/monadish/MonadTest.spec.js.map +1 -1
  131. package/target/test/frameworkBase/_ext/monadish/StreamTest.spec.js +50 -48
  132. package/target/test/frameworkBase/_ext/monadish/StreamTest.spec.js.map +1 -1
  133. package/target/test/frameworkBase/_ext/shared/StandardInits.js +310 -132
  134. package/target/test/frameworkBase/_ext/shared/StandardInits.js.map +1 -1
  135. package/target/test/frameworkBase/_ext/shared/XmlResponses.js +235 -22
  136. package/target/test/frameworkBase/_ext/shared/XmlResponses.js.map +1 -1
  137. package/target/test/impl/ImplTest.spec.js +32 -59
  138. package/target/test/impl/ImplTest.spec.js.map +1 -1
  139. package/target/test/impl/ImplTest_23.spec.js +32 -59
  140. package/target/test/impl/ImplTest_23.spec.js.map +1 -1
  141. package/target/test/impl/SeparatorCharsTest.spec.js +17 -17
  142. package/target/test/impl/SeparatorCharsTest.spec.js.map +1 -1
  143. package/target/test/myfaces/OamSubmit.spec.js +25 -25
  144. package/target/test/myfaces/OamSubmit.spec.js.map +1 -1
  145. package/target/test/queue/AsynchronousProbe.js +23 -29
  146. package/target/test/queue/AsynchronousProbe.js.map +1 -1
  147. package/target/test/queue/AsynchronousQueueTest.spec.js +39 -70
  148. package/target/test/queue/AsynchronousQueueTest.spec.js.map +1 -1
  149. package/target/test/xhrCore/EventTests.spec.js +43 -74
  150. package/target/test/xhrCore/EventTests.spec.js.map +1 -1
  151. package/target/test/xhrCore/FakeWebsocket.js +14 -16
  152. package/target/test/xhrCore/FakeWebsocket.js.map +1 -1
  153. package/target/test/xhrCore/FileUploadTest.spec.js +48 -78
  154. package/target/test/xhrCore/FileUploadTest.spec.js.map +1 -1
  155. package/target/test/xhrCore/NamespacesRequestTest.spec.js +204 -0
  156. package/target/test/xhrCore/NamespacesRequestTest.spec.js.map +1 -0
  157. package/target/test/xhrCore/OamSubmitTest.spec.js +180 -0
  158. package/target/test/xhrCore/OamSubmitTest.spec.js.map +1 -0
  159. package/target/test/xhrCore/RequestParamsTest.spec.js +174 -73
  160. package/target/test/xhrCore/RequestParamsTest.spec.js.map +1 -1
  161. package/target/test/xhrCore/RequestTest.spec.js +173 -149
  162. package/target/test/xhrCore/RequestTest.spec.js.map +1 -1
  163. package/target/test/xhrCore/RequestTest_23.spec.js +127 -142
  164. package/target/test/xhrCore/RequestTest_23.spec.js.map +1 -1
  165. package/target/test/xhrCore/ResponseTest.spec.js +415 -100
  166. package/target/test/xhrCore/ResponseTest.spec.js.map +1 -1
  167. package/target/test/xhrCore/ResponseTest23.spec.js +152 -91
  168. package/target/test/xhrCore/ResponseTest23.spec.js.map +1 -1
  169. package/target/test/xhrCore/ShadowDomTest.spec.js +30 -61
  170. package/target/test/xhrCore/ShadowDomTest.spec.js.map +1 -1
  171. package/target/test/xhrCore/WebsocketTest.js +60 -93
  172. package/target/test/xhrCore/WebsocketTest.js.map +1 -1
  173. package/target/test/xhrCore/XhrFormDataTest.spec.js +79 -30
  174. package/target/test/xhrCore/XhrFormDataTest.spec.js.map +1 -1
  175. package/target/test-classes/.gz +0 -0
  176. package/target/test-classes/com/example/jsfs_js_ts/JsfsJsTsApplicationTests.class +0 -0
  177. package/target/test-classes/fileuploadtest.html +24 -0
  178. package/target/test-classes/jsf-development.js +3559 -0
  179. package/target/test-classes/jsf-development.js.br +0 -0
  180. package/target/test-classes/jsf-development.js.gz +0 -0
  181. package/target/test-classes/jsf-development.js.map +1 -0
  182. package/target/test-classes/jsf.js +3 -0
  183. package/target/test-classes/jsf.js.br +0 -0
  184. package/target/test-classes/jsf.js.gz +0 -0
  185. package/tmp.xml +36 -0
@@ -31,33 +31,6 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
31
31
  step((generator = generator.apply(thisArg, _arguments || [])).next());
32
32
  });
33
33
  };
34
- var __generator = (this && this.__generator) || function (thisArg, body) {
35
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
36
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
37
- function verb(n) { return function (v) { return step([n, v]); }; }
38
- function step(op) {
39
- if (f) throw new TypeError("Generator is already executing.");
40
- while (_) try {
41
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
42
- if (y = 0, t) op = [op[0] & 2, t.value];
43
- switch (op[0]) {
44
- case 0: case 1: t = op; break;
45
- case 4: _.label++; return { value: op[1], done: false };
46
- case 5: _.label++; y = op[1]; op = [0]; continue;
47
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
48
- default:
49
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
50
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
51
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
52
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
53
- if (t[2]) _.ops.pop();
54
- _.trys.pop(); continue;
55
- }
56
- op = body.call(thisArg, _);
57
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
58
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
59
- }
60
- };
61
34
  Object.defineProperty(exports, "__esModule", { value: true });
62
35
  /*! Licensed to the Apache Software Foundation (ASF) under one or more
63
36
  * contributor license agreements. See the NOTICE file distributed with
@@ -74,15 +47,51 @@ Object.defineProperty(exports, "__esModule", { value: true });
74
47
  * See the License for the specific language governing permissions and
75
48
  * limitations under the License.
76
49
  */
77
- var sinon = __importStar(require("sinon"));
78
- var AjaxImpl_1 = require("../../impl/AjaxImpl");
79
- var StandardInits_1 = require("../frameworkBase/_ext/shared/StandardInits");
50
+ const sinon = __importStar(require("sinon"));
51
+ const AjaxImpl_1 = require("../../impl/AjaxImpl");
52
+ const StandardInits_1 = require("../frameworkBase/_ext/shared/StandardInits");
80
53
  var protocolPage = StandardInits_1.StandardInits.protocolPage;
81
- var mona_dish_1 = require("mona-dish");
82
- var XhrFormData_1 = require("../../impl/xhrCore/XhrFormData");
83
- var chai_1 = require("chai");
54
+ const mona_dish_1 = require("mona-dish");
55
+ const chai_1 = require("chai");
56
+ var HTML_PREFIX_EMBEDDED_BODY = StandardInits_1.StandardInits.HTML_PREFIX_EMBEDDED_BODY;
57
+ const mocha_1 = require("mocha");
58
+ const FileUtils_1 = require("../../impl/util/FileUtils");
59
+ const ExtDomQuery_1 = require("../../impl/util/ExtDomQuery");
60
+ /**
61
+ * merges a list of key value entries into a target config
62
+ * @param target the target receiving the key value entries
63
+ * @param keyValueEntries a list of key value entries divided by =
64
+ * @param paramsMapper a key value remapper
65
+ */
66
+ function mergeKeyValueEntries(target, keyValueEntries, paramsMapper = (key, value) => [key, value]) {
67
+ function fixKeyWithoutVal(keyVal) {
68
+ var _a, _b;
69
+ 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;
70
+ }
71
+ let toMerge = new ExtDomQuery_1.ExtConfig({});
72
+ keyValueEntries
73
+ //special case of having keys without values
74
+ .map(keyVal => fixKeyWithoutVal(keyVal))
75
+ .map(keyVal => paramsMapper(keyVal[0], keyVal[1]))
76
+ .each(keyVal => {
77
+ var _a, _b;
78
+ let value = (_b = (_a = keyVal === null || keyVal === void 0 ? void 0 : keyVal.splice(1)) === null || _a === void 0 ? void 0 : _a.join("")) !== null && _b !== void 0 ? _b : "";
79
+ if (toMerge.getIfPresent(keyVal[0]).isPresent()) {
80
+ toMerge.append(keyVal[0]).value = value;
81
+ }
82
+ else {
83
+ toMerge.assign(keyVal[0]).value = value;
84
+ }
85
+ });
86
+ target.shallowMerge(toMerge);
87
+ }
88
+ function getFormData(requestBody) {
89
+ let ret = new mona_dish_1.Config({});
90
+ mergeKeyValueEntries(ret, (0, FileUtils_1.decodeEncodedValues)(requestBody));
91
+ return ret;
92
+ }
84
93
  describe("test for proper request param patterns identical to the old implementation", function () {
85
- var UPDATE_INSERT_2 = {
94
+ const UPDATE_INSERT_2 = {
86
95
  "op": "updateinsert2",
87
96
  "jakarta.faces.partial.event": "click",
88
97
  "jakarta.faces.source": "cmd_update_insert2",
@@ -94,11 +103,11 @@ describe("test for proper request param patterns identical to the old implementa
94
103
  /**
95
104
  * matches two maps for absolute identicality
96
105
  */
97
- var matches = function (item1, item2) {
106
+ let matches = (item1, item2) => {
98
107
  if (Object.keys(item1).length != Object.keys(item2).length) {
99
108
  return false;
100
109
  }
101
- for (var key in item1) {
110
+ for (let key in item1) {
102
111
  if ((!(key in item2)) || item1[key] != item2[key]) {
103
112
  return false;
104
113
  }
@@ -106,66 +115,158 @@ describe("test for proper request param patterns identical to the old implementa
106
115
  return true;
107
116
  };
108
117
  beforeEach(function () {
109
- return __awaiter(this, void 0, void 0, function () {
110
- var waitForResult;
111
- var _this = this;
112
- return __generator(this, function (_a) {
113
- waitForResult = protocolPage();
114
- return [2 /*return*/, waitForResult.then(function (close) {
115
- _this.xhr = sinon.useFakeXMLHttpRequest();
116
- _this.requests = [];
117
- _this.xhr.onCreate = function (xhr) {
118
- _this.requests.push(xhr);
119
- };
120
- global.XMLHttpRequest = _this.xhr;
121
- window.XMLHttpRequest = _this.xhr;
122
- _this.jsfAjaxResponse = sinon.stub(global.faces.ajax, "response");
123
- _this.closeIt = function () {
124
- global.XMLHttpRequest = window.XMLHttpRequest = _this.xhr.restore();
125
- _this.jsfAjaxResponse.restore();
126
- AjaxImpl_1.Implementation.reset();
127
- close();
128
- };
129
- })];
118
+ return __awaiter(this, void 0, void 0, function* () {
119
+ let waitForResult = protocolPage();
120
+ return waitForResult.then((close) => {
121
+ this.xhr = sinon.useFakeXMLHttpRequest();
122
+ this.requests = [];
123
+ this.xhr.onCreate = (xhr) => {
124
+ this.requests.push(xhr);
125
+ };
126
+ global.XMLHttpRequest = this.xhr;
127
+ window.XMLHttpRequest = this.xhr;
128
+ this.jsfAjaxResponse = sinon.stub(global.faces.ajax, "response");
129
+ this.closeIt = () => {
130
+ global.XMLHttpRequest = window.XMLHttpRequest = this.xhr.restore();
131
+ this.jsfAjaxResponse.restore();
132
+ AjaxImpl_1.Implementation.reset();
133
+ close();
134
+ };
130
135
  });
131
136
  });
132
137
  });
133
138
  afterEach(function () {
134
139
  this.closeIt();
135
140
  });
136
- it("must pass updateinsert2 with proper parameters", function () {
141
+ (0, mocha_1.it)("must pass updateinsert2 with proper parameters", function () {
137
142
  mona_dish_1.DQ.byId("cmd_update_insert2").click();
138
- var requestBody = this.requests[0].requestBody;
139
- var formData = new XhrFormData_1.XhrFormData(requestBody);
143
+ let requestBody = this.requests[0].requestBody;
144
+ let formData = getFormData(requestBody);
140
145
  (0, chai_1.expect)(matches(formData.value, UPDATE_INSERT_2)).to.be.true;
141
146
  });
142
- it("must handle base64 encoded strings properly as request data", function () {
143
- var probe = "YWFhYWFhc1Rlc3RpdCDDpGtvNDU5NjczMDA9PSsrNDU5MGV3b3UkJiUmLyQmJQ==";
147
+ (0, mocha_1.it)("must handle base64 encoded strings properly as request data", function () {
148
+ let probe = "YWFhYWFhc1Rlc3RpdCDDpGtvNDU5NjczMDA9PSsrNDU5MGV3b3UkJiUmLyQmJQ==";
144
149
  mona_dish_1.DQ.byId("jakarta.faces.ViewState").inputValue.value = probe;
145
150
  mona_dish_1.DQ.byId("cmd_update_insert2").click();
146
- var requestBody = this.requests[0].requestBody;
151
+ let requestBody = this.requests[0].requestBody;
147
152
  //We check if the base64 encoded string matches the original
148
- var formData = new XhrFormData_1.XhrFormData(requestBody);
149
- (0, chai_1.expect)(decodeURIComponent(formData.getIf("jakarta.faces.ViewState").value) == probe).to.be.true;
153
+ let formData = getFormData(requestBody);
154
+ (0, chai_1.expect)(formData.getIf("jakarta.faces.ViewState").value == probe).to.be.true;
150
155
  });
151
- it("must handle empty parameters properly", function () {
152
- var probe = "";
156
+ (0, mocha_1.it)("must handle empty parameters properly", function () {
157
+ let probe = "";
153
158
  mona_dish_1.DQ.byId("jakarta.faces.ViewState").inputValue.value = probe;
154
159
  mona_dish_1.DQ.byId("cmd_update_insert2").click();
155
- var requestBody = this.requests[0].requestBody;
160
+ let requestBody = this.requests[0].requestBody;
156
161
  //We check if the base64 encoded string matches the original
157
- var formData = new XhrFormData_1.XhrFormData(requestBody);
162
+ let formData = getFormData(requestBody);
158
163
  (0, chai_1.expect)(decodeURIComponent(formData.getIf("jakarta.faces.ViewState").value) == probe).to.be.true;
159
164
  });
160
165
  //KssbpZfCe+0lwDhgMRQ44wRFkaM1o1lbMMUO3lini5YhXWm6
161
- it("must handle base64 special cases properly (+ in encoding)", function () {
162
- var probe = "KssbpZfCe+0lwDhgMRQ44wRFkaM1o1lbMMUO3lini5YhXWm6";
166
+ (0, mocha_1.it)("must handle base64 special cases properly (+ in encoding)", function () {
167
+ let probe = "KssbpZfCe+0lwDhgMRQ44wRFkaM1o1lbMMUO3lini5YhXWm6";
163
168
  mona_dish_1.DQ.byId("jakarta.faces.ViewState").inputValue.value = probe;
164
169
  mona_dish_1.DQ.byId("cmd_update_insert2").click();
165
- var requestBody = this.requests[0].requestBody;
170
+ let requestBody = this.requests[0].requestBody;
166
171
  //We check if the base64 encoded string matches the original
167
- var formData = new XhrFormData_1.XhrFormData(requestBody);
172
+ let formData = getFormData(requestBody);
168
173
  (0, chai_1.expect)(decodeURIComponent(formData.getIf("jakarta.faces.ViewState").value) == probe).to.be.true;
169
174
  });
175
+ (0, mocha_1.it)("must handle prefixed inputs properly (prefixes must be present) faces4", function (done) {
176
+ window.document.body.innerHTML = HTML_PREFIX_EMBEDDED_BODY;
177
+ global["debug_inp"] = true;
178
+ //we now run the tests here
179
+ try {
180
+ let event = {
181
+ isTrusted: true,
182
+ type: 'change',
183
+ target: document.getElementById("page:input::field"),
184
+ currentTarget: document.getElementById("page:input::field")
185
+ };
186
+ faces.ajax.request(document.getElementById("page:input"), event, {
187
+ render: "page:output",
188
+ execute: "page:input",
189
+ params: {
190
+ "booga2.xxx": "yyy",
191
+ "javax.faces.behavior.event": "change",
192
+ "booga": "bla"
193
+ },
194
+ });
195
+ }
196
+ catch (err) {
197
+ console.error(err);
198
+ (0, chai_1.expect)(false).to.eq(true);
199
+ }
200
+ const requestBody = this.requests[0].requestBody;
201
+ //We check if the base64 encoded string matches the original
202
+ (0, chai_1.expect)(requestBody.indexOf("javax.faces.behavior.event")).to.not.eq(-1);
203
+ (0, chai_1.expect)(requestBody.indexOf("javax.faces.behavior.event=change")).to.not.eq(-1);
204
+ (0, chai_1.expect)(requestBody.indexOf("page%3Ainput=input_value")).to.not.eq(-1);
205
+ done();
206
+ });
207
+ /**
208
+ * This test is based on Tobago 6 (Jakarte EE 9).
209
+ */
210
+ (0, mocha_1.it)("must handle ':' in IDs properly", function (done) {
211
+ window.document.body.innerHTML = `
212
+
213
+ <tobago-page locale="en" class="container-fluid" id="page" focus-on-error="true" wait-overlay-delay-full="1000" wait-overlay-delay-ajax="1000">
214
+ <form action="/content/010-input/10-in/In.xhtml?jfwid=q6qbeuqed" id="page::form" method="post" accept-charset="UTF-8" data-tobago-context-path="">
215
+ <input type="hidden" name="jakarta.faces.source" id="jakarta.faces.source" disabled="disabled">
216
+ <tobago-focus id="page::lastFocusId">
217
+ <input type="hidden" name="page::lastFocusId" id="page::lastFocusId::field">
218
+ </tobago-focus>
219
+ <input type="hidden" name="org.apache.myfaces.tobago.webapp.Secret" id="org.apache.myfaces.tobago.webapp.Secret" value="secretValue">
220
+ <tobago-in id="page:input" class="tobago-auto-spacing">
221
+ <input type="text" name="page:input" id="page:input::field" class="form-control" value="Bob">
222
+ <tobago-behavior event="change" client-id="page:input" field-id="page:input::field" execute="page:input" render="page:output"></tobago-behavior>
223
+ </tobago-in>
224
+ <tobago-out id="page:output" class="tobago-auto-spacing">
225
+ <span class="form-control-plaintext"></span>
226
+ </tobago-out>
227
+ <div class="tobago-page-menuStore">
228
+ </div>
229
+ <span id="page::faces-state-container">
230
+ <input type="hidden" name="jakarta.faces.ViewState" id="j_id__v_0:jakarta.faces.ViewState:1" value="viewStateValue" autocomplete="off">
231
+ <input type="hidden" name="jakarta.faces.RenderKitId" value="tobago">
232
+ <input type="hidden" id="j_id__v_0:jakarta.faces.ClientWindow:1" name="jakarta.faces.ClientWindow" value="clientWindowValue">
233
+ </span>
234
+ </form>
235
+ </tobago-page>
236
+ `;
237
+ //we now run the tests here
238
+ try {
239
+ let event = {
240
+ isTrusted: true,
241
+ type: 'change',
242
+ target: document.getElementById("page:input::field"),
243
+ currentTarget: document.getElementById("page:input::field")
244
+ };
245
+ global.debug2 = true;
246
+ faces.ajax.request(document.getElementById("page:input"), event, {
247
+ "jakarta.faces.behavior.event": 'change',
248
+ execute: "page:input",
249
+ render: "page:output"
250
+ });
251
+ }
252
+ catch (err) {
253
+ console.error(err);
254
+ (0, chai_1.expect)(false).to.eq(true);
255
+ }
256
+ const requestBody = this.requests[0].requestBody;
257
+ (0, chai_1.expect)(requestBody.indexOf("org.apache.myfaces.tobago.webapp.Secret=secretValue")).to.not.eq(-1);
258
+ (0, chai_1.expect)(requestBody.indexOf("page%3Ainput=Bob")).to.not.eq(-1);
259
+ (0, chai_1.expect)(requestBody.indexOf("jakarta.faces.ViewState=viewStateValue")).to.not.eq(-1);
260
+ (0, chai_1.expect)(requestBody.indexOf("jakarta.faces.RenderKitId=tobago")).to.not.eq(-1);
261
+ (0, chai_1.expect)(requestBody.indexOf("jakarta.faces.ClientWindow=clientWindowValue")).to.not.eq(-1);
262
+ (0, chai_1.expect)(requestBody.indexOf("jakarta.faces.behavior.event=change")).to.not.eq(-1);
263
+ (0, chai_1.expect)(requestBody.indexOf("jakarta.faces.partial.event=change")).to.not.eq(-1);
264
+ (0, chai_1.expect)(requestBody.indexOf("jakarta.faces.source=page%3Ainput")).to.not.eq(-1);
265
+ (0, chai_1.expect)(requestBody.indexOf("jakarta.faces.partial.ajax=true")).to.not.eq(-1);
266
+ (0, chai_1.expect)(requestBody.indexOf("page%3A%3Aform=page%3A%3Aform")).to.not.eq(-1);
267
+ (0, chai_1.expect)(requestBody.indexOf("jakarta.faces.partial.execute=page%3Ainput")).to.not.eq(-1);
268
+ (0, chai_1.expect)(requestBody.indexOf("jakarta.faces.partial.render=page%3Aoutput")).to.not.eq(-1);
269
+ done();
270
+ });
170
271
  });
171
272
  //# sourceMappingURL=RequestParamsTest.spec.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"RequestParamsTest.spec.js","sourceRoot":"","sources":["../../../src/main/typescript/test/xhrCore/RequestParamsTest.spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RequestParamsTest.spec.js","sourceRoot":"","sources":["../../../src/main/typescript/test/xhrCore/RequestParamsTest.spec.ts"],"names":[],"mappings":"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"}