jsf.js_next_gen 4.0.0-beta-11 → 4.0.0-beta-13

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 (146) hide show
  1. package/dist/window/faces-development.js +165 -49
  2. package/dist/window/faces-development.js.br +0 -0
  3. package/dist/window/faces-development.js.gz +0 -0
  4. package/dist/window/faces-development.js.map +1 -1
  5. package/dist/window/faces.js +1 -1
  6. package/dist/window/faces.js.br +0 -0
  7. package/dist/window/faces.js.gz +0 -0
  8. package/dist/window/faces.js.map +1 -1
  9. package/dist/window/jsf-development.js +165 -49
  10. package/dist/window/jsf-development.js.br +0 -0
  11. package/dist/window/jsf-development.js.gz +0 -0
  12. package/dist/window/jsf-development.js.map +1 -1
  13. package/dist/window/jsf.js +1 -1
  14. package/dist/window/jsf.js.br +0 -0
  15. package/dist/window/jsf.js.gz +0 -0
  16. package/dist/window/jsf.js.map +1 -1
  17. package/package.json +3 -3
  18. package/pom.xml +14 -0
  19. package/src/main/java/com/example/jsfs_js_ts/DecoratedFacesJS.java +80 -0
  20. package/src/main/java/com/example/jsfs_js_ts/DecoratingResourceHandlerWrapper.java +54 -0
  21. package/src/main/typescript/impl/util/ExtDomQuery.ts +10 -6
  22. package/src/main/typescript/test/frameworkBase/_ext/shared/StandardInits.ts +0 -2
  23. package/target/api/{Jsf.js → jsf.js} +0 -0
  24. package/target/api/{Jsf.js.map → jsf.js.map} +0 -0
  25. package/target/impl/util/ExtDomQuery.js +10 -6
  26. package/target/impl/util/ExtDomQuery.js.map +1 -1
  27. package/target/test/frameworkBase/_ext/shared/StandardInits.js +0 -2
  28. package/target/test/frameworkBase/_ext/shared/StandardInits.js.map +1 -1
  29. package/src/main/java/com/example/jsfs_js_ts/JsfsJsTsApplication.java +0 -12
  30. package/target/api/_faces.js +0 -251
  31. package/target/api/_faces.js.map +0 -1
  32. package/target/classes/com/example/jsfs_js_ts/JsfsJsTsApplication.class +0 -0
  33. package/target/impl/util/ListenerQueue.js +0 -3
  34. package/target/impl/util/ListenerQueue.js.map +0 -1
  35. package/target/main/typescript/api/Jsf.js +0 -258
  36. package/target/main/typescript/api/Jsf.js.map +0 -1
  37. package/target/main/typescript/impl/AjaxImpl.js +0 -569
  38. package/target/main/typescript/impl/AjaxImpl.js.map +0 -1
  39. package/target/main/typescript/impl/PushImpl.js +0 -215
  40. package/target/main/typescript/impl/PushImpl.js.map +0 -1
  41. package/target/main/typescript/impl/core/Const.js +0 -135
  42. package/target/main/typescript/impl/core/Const.js.map +0 -1
  43. package/target/main/typescript/impl/core/ImplTypes.js +0 -43
  44. package/target/main/typescript/impl/core/ImplTypes.js.map +0 -1
  45. package/target/main/typescript/impl/i18n/Messages.js +0 -114
  46. package/target/main/typescript/impl/i18n/Messages.js.map +0 -1
  47. package/target/main/typescript/impl/util/Assertions.js +0 -90
  48. package/target/main/typescript/impl/util/Assertions.js.map +0 -1
  49. package/target/main/typescript/impl/util/AsyncQueue.js +0 -104
  50. package/target/main/typescript/impl/util/AsyncQueue.js.map +0 -1
  51. package/target/main/typescript/impl/util/AsyncRunnable.js +0 -18
  52. package/target/main/typescript/impl/util/AsyncRunnable.js.map +0 -1
  53. package/target/main/typescript/impl/util/ExtDomQuery.js +0 -129
  54. package/target/main/typescript/impl/util/ExtDomQuery.js.map +0 -1
  55. package/target/main/typescript/impl/util/Lang.js +0 -215
  56. package/target/main/typescript/impl/util/Lang.js.map +0 -1
  57. package/target/main/typescript/impl/util/ListenerQueue.js +0 -3
  58. package/target/main/typescript/impl/util/ListenerQueue.js.map +0 -1
  59. package/target/main/typescript/impl/xhrCore/ErrorData.js +0 -89
  60. package/target/main/typescript/impl/xhrCore/ErrorData.js.map +0 -1
  61. package/target/main/typescript/impl/xhrCore/EventData.js +0 -30
  62. package/target/main/typescript/impl/xhrCore/EventData.js.map +0 -1
  63. package/target/main/typescript/impl/xhrCore/IResponseProcessor.js +0 -3
  64. package/target/main/typescript/impl/xhrCore/IResponseProcessor.js.map +0 -1
  65. package/target/main/typescript/impl/xhrCore/RequestDataResolver.js +0 -143
  66. package/target/main/typescript/impl/xhrCore/RequestDataResolver.js.map +0 -1
  67. package/target/main/typescript/impl/xhrCore/ResonseDataResolver.js +0 -103
  68. package/target/main/typescript/impl/xhrCore/ResonseDataResolver.js.map +0 -1
  69. package/target/main/typescript/impl/xhrCore/Response.js +0 -167
  70. package/target/main/typescript/impl/xhrCore/Response.js.map +0 -1
  71. package/target/main/typescript/impl/xhrCore/ResponseProcessor.js +0 -368
  72. package/target/main/typescript/impl/xhrCore/ResponseProcessor.js.map +0 -1
  73. package/target/main/typescript/impl/xhrCore/XhrFormData.js +0 -272
  74. package/target/main/typescript/impl/xhrCore/XhrFormData.js.map +0 -1
  75. package/target/main/typescript/impl/xhrCore/XhrRequest.js +0 -281
  76. package/target/main/typescript/impl/xhrCore/XhrRequest.js.map +0 -1
  77. package/target/test/frameworkBase/_ext/monadish/DomQueryTest.js +0 -293
  78. package/target/test/frameworkBase/_ext/monadish/DomQueryTest.js.map +0 -1
  79. package/target/test/frameworkBase/_ext/monadish/LangTest.js +0 -89
  80. package/target/test/frameworkBase/_ext/monadish/LangTest.js.map +0 -1
  81. package/target/test/frameworkBase/_ext/monadish/MappingTest.js +0 -39
  82. package/target/test/frameworkBase/_ext/monadish/MappingTest.js.map +0 -1
  83. package/target/test/frameworkBase/_ext/monadish/MonadTest.js +0 -155
  84. package/target/test/frameworkBase/_ext/monadish/MonadTest.js.map +0 -1
  85. package/target/test/frameworkBase/_ext/monadish/StreamTest.js +0 -176
  86. package/target/test/frameworkBase/_ext/monadish/StreamTest.js.map +0 -1
  87. package/target/test/frameworkBase/_ext/monadish/XmlQueryTest.js +0 -1
  88. package/target/test/frameworkBase/_ext/monadish/XmlQueryTest.js.map +0 -1
  89. package/target/test/impl/ImplTest_23.spec_.js +0 -165
  90. package/target/test/impl/ImplTest_23.spec_.js.map +0 -1
  91. package/target/test/typescript/frameworkBase/LangTest.js +0 -112
  92. package/target/test/typescript/frameworkBase/LangTest.js.map +0 -1
  93. package/target/test/typescript/frameworkBase/_ext/monadish/DomQueryTest.js +0 -293
  94. package/target/test/typescript/frameworkBase/_ext/monadish/DomQueryTest.js.map +0 -1
  95. package/target/test/typescript/frameworkBase/_ext/monadish/LangTest.js +0 -89
  96. package/target/test/typescript/frameworkBase/_ext/monadish/LangTest.js.map +0 -1
  97. package/target/test/typescript/frameworkBase/_ext/monadish/MappingProbes.js +0 -115
  98. package/target/test/typescript/frameworkBase/_ext/monadish/MappingProbes.js.map +0 -1
  99. package/target/test/typescript/frameworkBase/_ext/monadish/MappingTest.js +0 -39
  100. package/target/test/typescript/frameworkBase/_ext/monadish/MappingTest.js.map +0 -1
  101. package/target/test/typescript/frameworkBase/_ext/monadish/MonadTest.js +0 -155
  102. package/target/test/typescript/frameworkBase/_ext/monadish/MonadTest.js.map +0 -1
  103. package/target/test/typescript/frameworkBase/_ext/monadish/StreamTest.js +0 -176
  104. package/target/test/typescript/frameworkBase/_ext/monadish/StreamTest.js.map +0 -1
  105. package/target/test/typescript/frameworkBase/_ext/monadish/XmlQueryTest.js +0 -1
  106. package/target/test/typescript/frameworkBase/_ext/monadish/XmlQueryTest.js.map +0 -1
  107. package/target/test/typescript/frameworkBase/_ext/shared/StandardInits.js +0 -264
  108. package/target/test/typescript/frameworkBase/_ext/shared/StandardInits.js.map +0 -1
  109. package/target/test/typescript/frameworkBase/_ext/shared/XmlResponses.js +0 -23
  110. package/target/test/typescript/frameworkBase/_ext/shared/XmlResponses.js.map +0 -1
  111. package/target/test/typescript/impl/ImplTest.js +0 -98
  112. package/target/test/typescript/impl/ImplTest.js.map +0 -1
  113. package/target/test/typescript/impl/SeparatorCharsTest.js +0 -72
  114. package/target/test/typescript/impl/SeparatorCharsTest.js.map +0 -1
  115. package/target/test/typescript/queue/AsynchronousProbe.js +0 -99
  116. package/target/test/typescript/queue/AsynchronousProbe.js.map +0 -1
  117. package/target/test/typescript/queue/AsynchronousQueueTest.js +0 -130
  118. package/target/test/typescript/queue/AsynchronousQueueTest.js.map +0 -1
  119. package/target/test/typescript/xhrCore/EventTests.js +0 -155
  120. package/target/test/typescript/xhrCore/EventTests.js.map +0 -1
  121. package/target/test/typescript/xhrCore/FakeWebsocket.js +0 -25
  122. package/target/test/typescript/xhrCore/FakeWebsocket.js.map +0 -1
  123. package/target/test/typescript/xhrCore/FileUploadTest.js +0 -166
  124. package/target/test/typescript/xhrCore/FileUploadTest.js.map +0 -1
  125. package/target/test/typescript/xhrCore/RequestParamsTest.js +0 -151
  126. package/target/test/typescript/xhrCore/RequestParamsTest.js.map +0 -1
  127. package/target/test/typescript/xhrCore/RequestTest.js +0 -318
  128. package/target/test/typescript/xhrCore/RequestTest.js.map +0 -1
  129. package/target/test/typescript/xhrCore/ResponseTest.js +0 -257
  130. package/target/test/typescript/xhrCore/ResponseTest.js.map +0 -1
  131. package/target/test/typescript/xhrCore/ShadowDomTest.js +0 -122
  132. package/target/test/typescript/xhrCore/ShadowDomTest.js.map +0 -1
  133. package/target/test/typescript/xhrCore/WebsocketTest.js +0 -182
  134. package/target/test/typescript/xhrCore/WebsocketTest.js.map +0 -1
  135. package/target/test/typescript/xhrCore/XhrFormDataTest.js +0 -58
  136. package/target/test/typescript/xhrCore/XhrFormDataTest.js.map +0 -1
  137. package/target/test-classes/.gz +0 -0
  138. package/target/test-classes/com/example/jsfs_js_ts/JsfsJsTsApplicationTests.class +0 -0
  139. package/target/test-classes/fileuploadtest.html +0 -24
  140. package/target/test-classes/jsf-development.js +0 -6781
  141. package/target/test-classes/jsf-development.js.br +0 -0
  142. package/target/test-classes/jsf-development.js.gz +0 -0
  143. package/target/test-classes/jsf-development.js.map +0 -1
  144. package/target/test-classes/jsf.js +0 -3
  145. package/target/test-classes/jsf.js.br +0 -0
  146. package/target/test-classes/jsf.js.gz +0 -0
@@ -1 +0,0 @@
1
- //# sourceMappingURL=XmlQueryTest.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"XmlQueryTest.js","sourceRoot":"","sources":["../../../../../../src/test/typescript/frameworkBase/_ext/monadish/XmlQueryTest.ts"],"names":[],"mappings":""}
@@ -1,264 +0,0 @@
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
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
18
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
19
- return new (P || (P = Promise))(function (resolve, reject) {
20
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
21
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
22
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
23
- step((generator = generator.apply(thisArg, _arguments || [])).next());
24
- });
25
- };
26
- var __generator = (this && this.__generator) || function (thisArg, body) {
27
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
28
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
29
- function verb(n) { return function (v) { return step([n, v]); }; }
30
- function step(op) {
31
- if (f) throw new TypeError("Generator is already executing.");
32
- while (_) try {
33
- 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;
34
- if (y = 0, t) op = [op[0] & 2, t.value];
35
- switch (op[0]) {
36
- case 0: case 1: t = op; break;
37
- case 4: _.label++; return { value: op[1], done: false };
38
- case 5: _.label++; y = op[1]; op = [0]; continue;
39
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
40
- default:
41
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
42
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
43
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
44
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
45
- if (t[2]) _.ops.pop();
46
- _.trys.pop(); continue;
47
- }
48
- op = body.call(thisArg, _);
49
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
50
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
51
- }
52
- };
53
- Object.defineProperty(exports, "__esModule", { value: true });
54
- exports.StandardInits = void 0;
55
- var mona_dish_1 = require("mona-dish");
56
- /**
57
- * helpers with various init and html patterns
58
- *
59
- * We use jsdom global which builds up a
60
- * dom tree and emulates a full environment
61
- *
62
- * Note the buildup and loading is asynchronous so
63
- * we have to work with Promises and asyncs to get things
64
- * where we want to have them
65
- *
66
- * This is a pattern pretty much for every test which iterates over
67
- * multiple doms
68
- */
69
- var StandardInits;
70
- (function (StandardInits) {
71
- StandardInits.HTML_DEFAULT = "<!DOCTYPE html>\n<html lang=\"en\">\n<head>\n <meta charset=\"UTF-8\">\n <title>Title</title>\n</head>\n<body>\n<div id=\"id_1\"></div>\n<div id=\"id_2\" booga=\"blarg\"></div>\n<div id=\"id_3\"></div>\n<div id=\"id_4\"></div>\n</body>\n</html>";
72
- StandardInits.HTML_SHADOW = "<!DOCTYPE html>\n<html lang=\"en\">\n<head>\n <meta charset=\"UTF-8\">\n <title>Title</title>\n</head>\n<body>\n<form id=\"blarg\">\n <input type=\"text\" id=\"blarg:input_1\" name=\"blarg:input_1\" value=\"input_1_val\"></input>\n <input type=\"hidden\" id=\"javax.faces.ViewState\" name=\"javax.faces.ViewState\" value=\"blubbblubblubb\"></input>\n <input type=\"button\" id=\"blarg:input_2\" name=\"blarg:input_2\" value=\"input_1_val\"></input>\n <div id=\"shadowDomArea\">\n <input type=\"button\" id=\"blarg:input_3\" name=\"blarg:input_3\" value=\"input_3_val\"></input>\n </div>\n</form>\n</body>\n</html>";
73
- /**
74
- * a page simulating basically a simple jsf form
75
- */
76
- var HTML_FORM_DEFAULT = "<!DOCTYPE html>\n<html lang=\"en\">\n<head>\n <meta charset=\"UTF-8\">\n <title>Title</title>\n</head>\n<body>\n<form id=\"blarg\">\n <input type=\"text\" id=\"input_1\" name=\"input_1\" value=\"input_1_val\"></input>\n <input type=\"hidden\" id=\"javax.faces.ViewState\" name=\"javax.faces.ViewState\" value=\"blubbblubblubb\"></input>\n <input type=\"button\" id=\"input_2\" name=\"input_2\" value=\"input_1_val\"></input>\n</form>\n</body>\n</html>";
77
- /**
78
- * a page simulating basically a simple jsf form
79
- */
80
- var HTML_FILE_FORM_DEFAULT = "<!DOCTYPE html>\n<html lang=\"en\">\n<head>\n <meta charset=\"UTF-8\">\n <title>Title</title>\n</head>\n<body>\n<form id=\"blarg\" enctype=\"multipart/form-data\">\n <input type=\"file\" id=\"f\u00EDleupload\"></input>\n <input type=\"text\" id=\"input_1\" name=\"input_1\" value=\"input_1_val\"></input>\n <input type=\"hidden\" id=\"javax.faces.ViewState\" name=\"javax.faces.ViewState\" value=\"blubbblubblubb\"></input>\n <input type=\"button\" id=\"input_2\" name=\"input_2\" value=\"input_1_val\"></input>\n</form>\n</body>\n</html>";
81
- StandardInits.STD_XML = "<?xml version=\"1.0\" encoding=\"utf-8\"?><partial-response><changes><update id=\"value_1\"><![CDATA[<span id=\"out1\">2</span>]]></update><update id=\"javax.faces.ViewState\"><![CDATA[j_id1:j_id3]]></update></changes></partial-response>";
82
- /**
83
- * a page containing a jsf.js input with a new separator char
84
- * @param separatorChar
85
- * @constructor
86
- */
87
- function HTML_DEFAULT_SEPARATOR_CHAR(separatorChar) {
88
- return "<!DOCTYPE html>\n<html lang=\"en\">\n<head>\n <meta charset=\"UTF-8\">\n <title>Title</title>\n <script type=\"text/javascript\"\n src=\"/wfmportal/javax.faces.resource/jsf.js.jsf?ln=javax.faces&separator=".concat(separatorChar, "\"></script>\n</head>\n<body>\n<form id=\"blarg\">\n <input type=\"text\" id=\"input_1\" name=\"input_1\"/>\n <input type=\"button\" id=\"input_2\" name=\"input_2\"/>\n</form>\n</body>\n</html>\n \n ");
89
- }
90
- /**
91
- * This is a standardized small page mockup
92
- * testing the various aspects of the protocol
93
- * under pure html conditions
94
- *
95
- * We get the jsf out of the way and bascially simulate what the browser sees
96
- */
97
- StandardInits.PROTOCOL_PAGE = "<!DOCTYPE html>\n<html lang=\"en\">\n<head>\n <meta charset=\"UTF-8\">\n <title>Title</title>\n</head>\n<body>\n<h2>protocol testcase1</h2>\n\n<div id=\"centerDiv\">\n\n <h1>Selenium Testprobe for insert update delete and attribute change</h1>\n\n <h2>This test tests all aspects of the protocol, under xhr and iframe conditions</h2>\n\n <div id=\"testResults\">\n \n <h3>Test Results</h3>\n\n <div id=\"evalarea1\">eval area 1 triggered by eval</div>\n \n <div id=\"evalarea2\">eval area 2 triggered by update</div>\n \n <div id=\"evalarea3\">eval area 3 triggered by insert</div>\n \n <div id=\"evalarea4\">eval area 4 triggered by a click on the changed attributes area</div>\n\n <div id=\"changesArea\">update insert area</div>\n \n <div id=\"deleteable\">delete area will be deleted once you press the delete button</div>\n \n <div id=\"attributeChange\">attributes changes area</div>\n \n \n \n </div>\n\n <h2>Call actions via normal ppr</h2>\n\n <form id=\"form1\" action=\"boog.html\">\n \n <input type=\"hidden\" id=\"javax.faces.ViewState\" name=\"javax.faces.ViewState\" value=\"blubbblubblubb\"></input>\n \n <input type=\"button\" id=\"cmd_eval\" value=\"eval\"\n onclick=\"emitPPR(this, ('undefined' == typeof event)? null: event, 'eval1');\"/>\n \n <input type=\"button\" id=\"cmd_update_insert\" value=\"update insert\"\n onclick=\"emitPPR(this, ('undefined' == typeof event)? null: event, 'updateinsert1');\"/>\n \n <input type=\"button\" id=\"cmd_update_insert2\" value=\"update insert second protocol path\"\n onclick=\"emitPPR(this, ('undefined' == typeof event)? null: event, 'updateinsert2');\"/>\n\n <input type=\"button\" id=\"cmd_delete\" value=\"delete\"\n onclick=\"emitPPR(this, ('undefined' == typeof event)? null: event, 'delete1');\"/>\n\n <input type=\"button\" id=\"cmd_replace\" value=\"Replace Body\"\n onclick=\"emitPPR(this, ('undefined' == typeof event)? null: event, 'body_replace1');\"/>\n\n <input type=\"button\" id=\"cmd_attributeschange\" value=\"change attributes\"\n onclick=\"emitPPR(this, ('undefined' == typeof event)? null: event, 'attributes');\"/>\n\n <input type=\"button\" id=\"cmd_illegalresponse\" value=\"illegal response, error trigger\"\n onclick=\"emitPPR(this, ('undefined' == typeof event)? null: event, 'illegalResponse');\"/>\n\n <input type=\"button\" id=\"cmd_viewstate\" value=\"Viewstate only update trigger\"\n onclick=\"emitPPR(this, ('undefined' == typeof event)? null: event, 'viewstate');\"/>\n\n <input type=\"button\" id=\"cmd_error\" value=\"Server error with error response\"\n onclick=\"emitPPR(this, ('undefined' == typeof event)? null: event, 'errors');\"/>\n\n <input type=\"button\" id=\"cmd_error_component\" value=\"Error: no component given\"\n onclick=\"jsf.ajax.request(null, event, {}); return false\"/>\n\n </form>\n\n <script type=\"text/javascript\">\n document.getElementById(\"evalarea1\").innerHTML = \"booga\";\n\n var target = \"./test.mockup\";\n\n function emitPPR(source, event, action, useIframe, formName) {\n debugger;\n console.debug(\"emitting;\");\n document.getElementById(formName || \"form1\").action = target;\n\n jsf.ajax.request(/*String|Dom Node*/ source, /*|EVENT|*/ (window.event) ? window.event : event, /*{|OPTIONS|}*/ {op: action});\n }\n </script>\n</div>\n</body>";
98
- function basicXML() {
99
- return new window.DOMParser().parseFromString(StandardInits.STD_XML, "text/xml");
100
- }
101
- StandardInits.basicXML = basicXML;
102
- function standardInit(scope, initFunc) {
103
- if (initFunc === void 0) { initFunc = defaultHtml; }
104
- global.navigator = {
105
- language: "en-En"
106
- };
107
- return initFunc(false).then(function (closeFunc) {
108
- scope.currentTest.closeIt = function () {
109
- closeFunc();
110
- delete global.navigator;
111
- };
112
- });
113
- }
114
- StandardInits.standardInit = standardInit;
115
- function standardClose(scope) {
116
- scope.currentTest.closeIt();
117
- }
118
- StandardInits.standardClose = standardClose;
119
- function defaultHtml(withJsf) {
120
- if (withJsf === void 0) { withJsf = true; }
121
- return init(StandardInits.HTML_DEFAULT, withJsf);
122
- }
123
- StandardInits.defaultHtml = defaultHtml;
124
- function defaultMyFaces(withJsf) {
125
- if (withJsf === void 0) { withJsf = true; }
126
- return init(HTML_FORM_DEFAULT, withJsf);
127
- }
128
- StandardInits.defaultMyFaces = defaultMyFaces;
129
- function defaultFileForm(withJsf) {
130
- if (withJsf === void 0) { withJsf = true; }
131
- return init(HTML_FILE_FORM_DEFAULT, withJsf);
132
- }
133
- StandardInits.defaultFileForm = defaultFileForm;
134
- function shadowDomMyFaces(withJsf) {
135
- if (withJsf === void 0) { withJsf = true; }
136
- return init(StandardInits.HTML_SHADOW, withJsf).then(function (close) {
137
- var shadow = mona_dish_1.DomQuery.byId(window.document).byId("shadowDomArea").attachShadow();
138
- shadow.innerHtml = "\n <input type=\"button\" id=\"input_3\" name=\"input_3\" value=\"input_3_val\" ></input>\n <div id=\"shadowContent\">before update</div>\n ";
139
- return close;
140
- });
141
- }
142
- StandardInits.shadowDomMyFaces = shadowDomMyFaces;
143
- function protocolPage(withJsf) {
144
- if (withJsf === void 0) { withJsf = true; }
145
- return init(StandardInits.PROTOCOL_PAGE, withJsf);
146
- }
147
- StandardInits.protocolPage = protocolPage;
148
- function defaultSeparatorChar(separatorChar, withJsf) {
149
- if (withJsf === void 0) { withJsf = true; }
150
- var template = HTML_DEFAULT_SEPARATOR_CHAR(separatorChar);
151
- return init(template, withJsf);
152
- }
153
- StandardInits.defaultSeparatorChar = defaultSeparatorChar;
154
- /**
155
- * we need to manually apply the jsf top the global namespace
156
- *
157
- * the reason simply is that
158
- * we use our typescript dependency system on the tests
159
- * which forfeits the global namespace.
160
- *
161
- * The global namespace is used after the build automatically
162
- * by using the window build
163
- *
164
- * @param data
165
- * @param Implementation
166
- */
167
- var applyJsfToGlobals = function (data, Implementation, PushImpl) {
168
- var _a, _b;
169
- global.jsf = data.jsf;
170
- global.window.jsf = data.jsf;
171
- global.Implementation = Implementation.Implementation;
172
- global.PushImpl = PushImpl.PushImpl;
173
- //bypass a bug on windows jsdom, domparser not an auto global but on window only
174
- global.DOMParser = (_a = global === null || global === void 0 ? void 0 : global.DOMParser) !== null && _a !== void 0 ? _a : window.DOMParser;
175
- global.document = (_b = global === null || global === void 0 ? void 0 : global.document) !== null && _b !== void 0 ? _b : window.document;
176
- };
177
- /**
178
- * init the jsdom global
179
- * @param clean
180
- * @param template
181
- */
182
- var initJSDOM = function (template) {
183
- return __awaiter(this, void 0, void 0, function () {
184
- return __generator(this, function (_a) {
185
- // @ts-ignore
186
- return [2 /*return*/, Promise.resolve().then(function () { return require('jsdom-global'); }).then(function (domIt) {
187
- return domIt(template, {
188
- contentType: "text/html",
189
- runScripts: "dangerously"
190
- });
191
- })];
192
- });
193
- });
194
- };
195
- /**
196
- * init the jsf subsystem
197
- */
198
- var initJSF = function () {
199
- return __awaiter(this, void 0, void 0, function () {
200
- return __generator(this, function (_a) {
201
- // @ts-ignore
202
- return [2 /*return*/, Promise.resolve().then(function () { return require("../../../../../main/typescript/api/Jsf"); }).then(function (data) {
203
- var Implementation = require("../../../../../main/typescript/impl/AjaxImpl");
204
- var PushImpl = require("../../../../../main/typescript/impl/PushImpl");
205
- applyJsfToGlobals(data, Implementation, PushImpl);
206
- })];
207
- });
208
- });
209
- };
210
- /**
211
- * lets clean up some old data which might interfere
212
- */
213
- var resetGlobals = function () {
214
- var _a, _b;
215
- (_a = global === null || global === void 0 ? void 0 : global.Implementation) === null || _a === void 0 ? void 0 : _a.reset();
216
- (_b = global === null || global === void 0 ? void 0 : global.PushImpl) === null || _b === void 0 ? void 0 : _b.reset();
217
- delete global.jsf;
218
- delete global.Implementation;
219
- delete global.PushImpl;
220
- };
221
- /**
222
- * entry point which initializes the test system with a template and with or without jsf
223
- *
224
- * @param template
225
- * @param withJsf
226
- */
227
- function init(template, withJsf) {
228
- if (withJsf === void 0) { withJsf = true; }
229
- return __awaiter(this, void 0, void 0, function () {
230
- var clean;
231
- return __generator(this, function (_a) {
232
- switch (_a.label) {
233
- case 0:
234
- clean = null;
235
- if (!withJsf) return [3 /*break*/, 3];
236
- resetGlobals();
237
- // @ts-ignore
238
- return [4 /*yield*/, initJSDOM(template).then(function (data) { return clean = data; })];
239
- case 1:
240
- // @ts-ignore
241
- _a.sent();
242
- return [4 /*yield*/, initJSF()];
243
- case 2:
244
- _a.sent();
245
- return [3 /*break*/, 5];
246
- case 3:
247
- // @ts-ignore
248
- return [4 /*yield*/, Promise.resolve().then(function () { return require('jsdom-global'); }).then(function (domIt) {
249
- clean = domIt(template);
250
- })];
251
- case 4:
252
- // @ts-ignore
253
- _a.sent();
254
- _a.label = 5;
255
- case 5:
256
- //the async is returning a promise on the caller level
257
- //which gets the return value on once done
258
- return [2 /*return*/, clean];
259
- }
260
- });
261
- });
262
- }
263
- })(StandardInits = exports.StandardInits || (exports.StandardInits = {}));
264
- //# sourceMappingURL=StandardInits.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"StandardInits.js","sourceRoot":"","sources":["../../../../../../src/test/typescript/frameworkBase/_ext/shared/StandardInits.ts"],"names":[],"mappings":"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"}
@@ -1,23 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.XmlResponses = void 0;
4
- var XmlResponses = /** @class */ (function () {
5
- function XmlResponses() {
6
- }
7
- XmlResponses.EVAL_1 = "\n <partial-response>\n <changes>\n <eval><![CDATA[\n document.getElementById('evalarea1').innerHTML = 'eval test succeeded';\n ]]></eval>\n </changes>\n </partial-response>\n ";
8
- XmlResponses.UPDATE_INSERT_1 = "\n <partial-response>\n <changes>\n <update id=\"changesArea\"><![CDATA[\n <div id='changesArea'>update succeeded 1</div><script type='text/javascript'>document.getElementById('evalarea2').innerHTML='embedded script at update succeed';</script>\n ]]></update>\n <insert id=\"inserted1\" before=\"changesArea\"><![CDATA[\n <div id='insertbefore'>insert before succeeded should display before test1</div><script type='text/javascript'>document.getElementById('evalarea3').innerHTML='embedded script at insert succeed';</script>\n ]]></insert>\n <insert id=\"inserted2\" after=\"changesArea\"><![CDATA[\n <div id='insertafter'>insert after succeeded should display after test1</div>\n ]]></insert>\n </changes>\n </partial-response>\n ";
9
- XmlResponses.SHADOW_DOM_UPDATE = "\n <partial-response>\n <changes><update id=\"shadowContent\"><![CDATA[<div id=\"shadowContent\">after update</div>]]></update></changes>\n </partial-response> \n ";
10
- XmlResponses.UPDATE_INSERT_2 = "\n <partial-response>\n <changes>\n <update id=\"changesArea\"><![CDATA[\n <div id='changesArea'>update succeeded 2</div><script type='text/javascript'>document.getElementById('evalarea2').innerHTML='embedded script at update succeed';</script>\n ]]></update>\n <insert id=\"inserted1\" >\n <before id='changesArea'><![CDATA[insert before succeeded should display before test1<script type='text/javascript'>document.getElementById('evalarea3').innerHTML='embedded script at insert succeed';</script>]]></before>\n </insert> \n <insert id=\"inserted2\">\n <after id='changesArea'><![CDATA[insert after succeeded should display after test1]]></after>\n </insert>\n </changes>\n </partial-response>\n ";
11
- XmlResponses.DELETE_1 = "\n <partial-response>\n <changes>\n <delete id=\"deletable\"></delete>\n </changes>\n </partial-response>\n ";
12
- XmlResponses.VIEWSTATE_1 = "\n <partial-response>\n <changes>\n <update id=\"javax.faces.ViewState\"><![CDATA[hello world]]></update>\n </changes>\n </partial-response>\n ";
13
- XmlResponses.ATTRIBUTE_CHANGE = "\n <partial-response>\n <changes>\n <attributes id=\"attributeChange\">\n <attribute name=\"style\" value=\"color:rgb(100,100,100);\"></attribute>\n <attribute name=\"style\" value=\"border:1px solid black;\"></attribute>\n <attribute name=\"onclick\" value=\"document.getElementById('evalarea4').innerHTML = 'attributes onclick succeeded';\"></attribute>\n </attributes>\n </changes>\n </partial-response>\n ";
14
- XmlResponses.ERROR_1 = "\n <partial-response>\n <error>\n <error-name>Error1</error-name> \n </error>\n </partial-response>\n ";
15
- XmlResponses.ERROR_2 = "\n <partial-response>\n <error>\n <error-name>Erro21</error-name> \n <error-message><![CDATA[Error2 Text]]></error-message> \n </error>\n </partial-response>\n ";
16
- XmlResponses.BODY_REPLACEMENT = "<partial-response>\n <changes>\n <update id=\"javax.faces.ViewBody\"><![CDATA[\n <body id=\"the_id\" class=\"tundra\">\n <div id='centerDiv'>\n <h1>Test for body change done</h1>\n <h3>Body replacement test successful</h3>\n <table>\n <tbody>\n <td>\n <div id=\"embed_target\" class='embed-target'>booga</div>\n </td>\n <td></td>\n </tbody>\n </table>\n <script type='text/javascript'>\n document.getElementById('embed_target').innerHTML = 'hello from embedded script in replacement body';\n </script>\n </div>\n </body>\n ]]>\n </update>\n </changes>\n</partial-response>\n\n";
17
- XmlResponses.HEAD_REPLACEMENT = "<partial-response>\n <changes>\n <update id=\"javax.faces.ViewHead\"><![CDATA[\n <head>\n <meta blarg=\"blarg2\"></meta>\n <script type='text/javascript'>\n document.getElementById('evalarea1').innerHTML = 'hello from embedded script in replacement head';\n </script>\n </head>\n ]]>\n </update>\n </changes>\n</partial-response>\n\n";
18
- XmlResponses.VIEW_ROOT_REPLACEMENT = "<partial-response>\n <changes>\n <update id=\"javax.faces.ViewRoot\"><![CDATA[\n <html>\n <head>\n <meta blarg=\"blarg2\"></meta>\n <script type='text/javascript'>\n document.getElementById('evalarea1').innerHTML = 'hello from embedded script in replacement head';\n </script>\n </head>\n <body id=\"the_id\" class=\"tundra\">\n <div id='centerDiv'>\n <h1>Test for body change done</h1>\n <h3>Body replacement test successful</h3>\n <table>\n <tbody>\n <td>\n <div id=\"evalarea1\">blarg</div>\n <div id=\"embed_target\" class='embed-target'>booga</div>\n </td>\n <td></td>\n </tbody>\n </table>\n <script type='text/javascript'>\n document.getElementById('embed_target').innerHTML = 'hello from embedded script in replacement body';\n </script>\n </div>\n </body>\n </html>\n ]]>\n </update>\n </changes>\n</partial-response>\n";
19
- XmlResponses.ILLEGAL_RESP = ">>>> xxxx >YYYY-!->>>";
20
- return XmlResponses;
21
- }());
22
- exports.XmlResponses = XmlResponses;
23
- //# sourceMappingURL=XmlResponses.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"XmlResponses.js","sourceRoot":"","sources":["../../../../../../src/test/typescript/frameworkBase/_ext/shared/XmlResponses.ts"],"names":[],"mappings":";;;AAAA;IAAA;IA6KA,CAAC;IA3KU,mBAAM,GAAG,0NAQf,CAAC;IAEK,4BAAe,GAAG,qzBAcxB,CAAC;IAEK,8BAAiB,GAAC,2MAIxB,CAAC;IAEK,4BAAe,GAAG,sxBAcxB,CAAC;IAEK,qBAAQ,GAAG,oIAMjB,CAAC;IAEK,wBAAW,GAAG,uKAMpB,CAAC;IAEK,6BAAgB,GAAG,ydAUzB,CAAC;IAEK,oBAAO,GAAG,6IAMhB,CAAC;IACK,oBAAO,GAAG,qNAOhB,CAAC;IAEK,6BAAgB,GAAG,g3BAyB7B,CAAC;IAES,6BAAgB,GAAG,ocAc7B,CAAC;IAES,kCAAqB,GAAG,+uCAiClC,CAAC;IAES,yBAAY,GAAG,uBAAuB,CAAC;IAClD,mBAAC;CAAA,AA7KD,IA6KC;AA7KY,oCAAY"}
@@ -1,98 +0,0 @@
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
- var _this = this;
18
- Object.defineProperty(exports, "__esModule", { value: true });
19
- var mocha_1 = require("mocha");
20
- var chai_1 = require("chai");
21
- var sinon = require("sinon");
22
- var mona_dish_1 = require("mona-dish");
23
- var StandardInits_1 = require("../frameworkBase/_ext/shared/StandardInits");
24
- var defaultMyFaces = StandardInits_1.StandardInits.defaultMyFaces;
25
- var Const_1 = require("../../../main/typescript/impl/core/Const");
26
- sinon.reset();
27
- /**
28
- * testing the jsf.ajax.request api without triggering any
29
- * xhr request...
30
- * the idea is to shim the code which triggers the request out and check what is going in
31
- * and what is coming out
32
- */
33
- (0, mocha_1.describe)('jsf.ajax.request test suite', function () {
34
- beforeEach(function () {
35
- return defaultMyFaces();
36
- });
37
- (0, mocha_1.it)("jsf.ajax.request can be called", function () {
38
- //we stub the addRequestToQueue, to enable the request check only
39
- //without any xhr and response, both will be tested separately for
40
- //proper behavior
41
- var Impl = Implementation;
42
- var addRequestToQueue = sinon.stub(Impl.queueHandler, "addRequestToQueue");
43
- //now the jsf.ajax.request should trigger but should not go into
44
- //the asynchronous event loop.
45
- //lets check it out
46
- try {
47
- mona_dish_1.DomQuery.byId("input_2").addEventListener("click", function (event) {
48
- jsf.ajax.request(null, event, { render: '@all', execute: '@form' });
49
- }).click();
50
- (0, chai_1.expect)(addRequestToQueue.called).to.be.true;
51
- (0, chai_1.expect)(addRequestToQueue.callCount).to.eq(1);
52
- var argElement = addRequestToQueue.args[0][2];
53
- var context_1 = addRequestToQueue.args[0][2];
54
- (0, chai_1.expect)(context_1.getIf("passThrgh", Const_1.P_RENDER).value).eq("@all");
55
- //Execute issuing form due to @form and always the issuing element
56
- (0, chai_1.expect)(context_1.getIf("passThrgh", Const_1.P_EXECUTE).value).eq("blarg input_2");
57
- }
58
- finally {
59
- //once done we restore the proper state
60
- addRequestToQueue.restore();
61
- }
62
- });
63
- (0, mocha_1.it)("jsf.ajax.request passthroughs must end up in passthrough", function (done) {
64
- //TODO implementation
65
- done();
66
- });
67
- (0, mocha_1.it)("jsf.util.chain must work", function () {
68
- var called = {};
69
- window.called = called;
70
- var func1 = function () {
71
- called["func1"] = true;
72
- return true;
73
- };
74
- var func2 = "function func2(called) {\n called[\"func2\"] = true;\n return true;\n }";
75
- var func3 = function () {
76
- called["func3"] = true;
77
- return false;
78
- };
79
- var func4 = "return (function func4(called) {\n called[\"func4\"] = true;\n return false;\n })(event)";
80
- var func5 = function () {
81
- called["func5"] = true;
82
- return false;
83
- };
84
- jsf.util.chain(_this, called, func1, func2, func3, func4, func5);
85
- (0, chai_1.expect)(called["func1"]).to.be.true;
86
- (0, chai_1.expect)(called["func2"]).to.be.true;
87
- (0, chai_1.expect)(!!called["func3"]).to.be.true;
88
- (0, chai_1.expect)(!!called["func4"]).to.be.false;
89
- (0, chai_1.expect)(!!called["func5"]).to.be.false;
90
- called = {};
91
- jsf.util.chain(_this, called, func1, func2, func4, func5);
92
- (0, chai_1.expect)(called["func1"]).to.be.true;
93
- (0, chai_1.expect)(called["func2"]).to.be.true;
94
- (0, chai_1.expect)(!!called["func4"]).to.be.true;
95
- (0, chai_1.expect)(!!called["func5"]).to.be.false;
96
- });
97
- });
98
- //# sourceMappingURL=ImplTest.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ImplTest.js","sourceRoot":"","sources":["../../../../src/test/typescript/impl/ImplTest.ts"],"names":[],"mappings":"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"}
@@ -1,72 +0,0 @@
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
- Object.defineProperty(exports, "__esModule", { value: true });
18
- var mocha_1 = require("mocha");
19
- var chai_1 = require("chai");
20
- var sinon = require("sinon");
21
- var StandardInits_1 = require("../frameworkBase/_ext/shared/StandardInits");
22
- var defaultMyFaces = StandardInits_1.StandardInits.defaultMyFaces;
23
- var defaultSeparatorChar = StandardInits_1.StandardInits.defaultSeparatorChar;
24
- var jsdom = require("jsdom");
25
- var JSDOM = jsdom.JSDOM;
26
- sinon.reset();
27
- (0, mocha_1.describe)('various tests for get separator char', function () {
28
- (0, mocha_1.it)("should have : as standard separator char", function (done) {
29
- var waitForResult = defaultMyFaces();
30
- waitForResult.then(function (close) {
31
- try {
32
- var separator = jsf.separatorchar;
33
- (0, chai_1.expect)(separator).to.eq(":");
34
- }
35
- finally {
36
- Implementation.reset();
37
- close();
38
- done();
39
- }
40
- });
41
- });
42
- (0, mocha_1.it)("should have a custom separator char", function (done) {
43
- var waitForResult = defaultSeparatorChar("$");
44
- waitForResult.then(function (close) {
45
- try {
46
- var separator = Implementation.getSeparatorChar();
47
- console.debug("sep:", separator);
48
- (0, chai_1.expect)(separator).to.eq("$");
49
- done();
50
- }
51
- finally {
52
- Implementation.reset();
53
- close();
54
- }
55
- });
56
- });
57
- (0, mocha_1.it)("should have a url encoded separator char", function (done) {
58
- var waitForResult = defaultSeparatorChar("%21");
59
- waitForResult.then(function (close) {
60
- try {
61
- var separator = Implementation.getSeparatorChar();
62
- (0, chai_1.expect)(separator).to.eq("!");
63
- done();
64
- }
65
- finally {
66
- Implementation.reset();
67
- close();
68
- }
69
- });
70
- });
71
- });
72
- //# sourceMappingURL=SeparatorCharsTest.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"SeparatorCharsTest.js","sourceRoot":"","sources":["../../../../src/test/typescript/impl/SeparatorCharsTest.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;AAEH,+BAAmC;AACnC,6BAA4B;AAC5B,6BAA+B;AAC/B,4EAAyE;AACzE,IAAO,cAAc,GAAG,6BAAa,CAAC,cAAc,CAAC;AACrD,IAAO,oBAAoB,GAAG,6BAAa,CAAC,oBAAoB,CAAC;AAEjE,IAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;AACxB,IAAA,KAAK,GAAI,KAAK,MAAT,CAAU;AACtB,KAAK,CAAC,KAAK,EAAE,CAAC;AAKd,IAAA,gBAAQ,EAAC,sCAAsC,EAAE;IAE7C,IAAA,UAAE,EAAC,0CAA0C,EAAE,UAAC,IAAI;QAEhD,IAAI,aAAa,GAAG,cAAc,EAAE,CAAC;QACrC,aAAa,CAAC,IAAI,CAAC,UAAC,KAAK;YACrB,IAAI;gBACA,IAAI,SAAS,GAAG,GAAG,CAAC,aAAa,CAAC;gBAClC,IAAA,aAAM,EAAC,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;aAChC;oBAAS;gBACN,cAAc,CAAC,KAAK,EAAE,CAAC;gBACvB,KAAK,EAAE,CAAC;gBACR,IAAI,EAAE,CAAC;aACV;QACL,CAAC,CAAC,CAAA;IACN,CAAC,CAAC,CAAC;IAEH,IAAA,UAAE,EAAC,qCAAqC,EAAE,UAAC,IAAI;QAE3C,IAAI,aAAa,GAAG,oBAAoB,CAAC,GAAG,CAAC,CAAC;QAC9C,aAAa,CAAC,IAAI,CAAC,UAAC,KAAK;YACrB,IAAI;gBACA,IAAI,SAAS,GAAG,cAAc,CAAC,gBAAgB,EAAE,CAAC;gBAClD,OAAO,CAAC,KAAK,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;gBACjC,IAAA,aAAM,EAAC,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;gBAC7B,IAAI,EAAE,CAAC;aACV;oBAAS;gBACN,cAAc,CAAC,KAAK,EAAE,CAAC;gBACvB,KAAK,EAAE,CAAC;aAEX;QACL,CAAC,CAAC,CAAC;IAEP,CAAC,CAAC,CAAC;IAEH,IAAA,UAAE,EAAC,0CAA0C,EAAE,UAAC,IAAI;QAEhD,IAAI,aAAa,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAC;QAChD,aAAa,CAAC,IAAI,CAAC,UAAC,KAAK;YACrB,IAAI;gBACA,IAAI,SAAS,GAAG,cAAc,CAAC,gBAAgB,EAAE,CAAC;gBAClD,IAAA,aAAM,EAAC,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;gBAC7B,IAAI,EAAE,CAAC;aACV;oBAAS;gBACN,cAAc,CAAC,KAAK,EAAE,CAAC;gBACvB,KAAK,EAAE,CAAC;aAEX;QACL,CAAC,CAAC,CAAC;IAEP,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
@@ -1,99 +0,0 @@
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
- Object.defineProperty(exports, "__esModule", { value: true });
18
- exports.ProbeClass = void 0;
19
- var ProbeClass = /** @class */ (function () {
20
- function ProbeClass($timeout, resolveIt) {
21
- if (resolveIt === void 0) { resolveIt = true; }
22
- var _this = this;
23
- this.$timeout = $timeout;
24
- this.resolveIt = resolveIt;
25
- this.thenPerformed = false;
26
- this.catchPerformed = false;
27
- this.finallyPerformed = false;
28
- this.value = new Promise(function (resolve, reject) {
29
- _this.$timeout(function () {
30
- if (_this.resolveIt) {
31
- resolve(function () { return true; });
32
- }
33
- else {
34
- reject();
35
- }
36
- }, 100);
37
- });
38
- }
39
- ProbeClass.prototype.catch = function (func) {
40
- var _this = this;
41
- var catchFunc = function (data) {
42
- _this.catchPerformed = true;
43
- return func(data);
44
- };
45
- if (this.value) {
46
- this.value.catch(catchFunc);
47
- }
48
- else {
49
- this.fCatch = catchFunc;
50
- }
51
- return this;
52
- };
53
- ProbeClass.prototype.finally = function (func) {
54
- var _this = this;
55
- var finallyFunc = function () {
56
- _this.finallyPerformed = true;
57
- func();
58
- };
59
- if (this.value) {
60
- this.value.finally(finallyFunc);
61
- }
62
- else {
63
- this.fFinally = finallyFunc;
64
- }
65
- return this;
66
- };
67
- ProbeClass.prototype.start = function () {
68
- //starts the process
69
- if (this.fCatch) {
70
- this.value.catch(this.fCatch);
71
- }
72
- if (this.fThen) {
73
- this.value.then(this.fThen);
74
- }
75
- if (this.fFinally) {
76
- this.value.finally(this.fFinally);
77
- }
78
- };
79
- ProbeClass.prototype.cancel = function () {
80
- //TODO do something with it
81
- };
82
- ProbeClass.prototype.then = function (func) {
83
- var _this = this;
84
- var thenFunc = function (data) {
85
- _this.thenPerformed = true;
86
- return func(data);
87
- };
88
- if (this.value) {
89
- this.value.then(thenFunc);
90
- }
91
- else {
92
- this.fThen = thenFunc;
93
- }
94
- return this;
95
- };
96
- return ProbeClass;
97
- }());
98
- exports.ProbeClass = ProbeClass;
99
- //# sourceMappingURL=AsynchronousProbe.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AsynchronousProbe.js","sourceRoot":"","sources":["../../../../src/test/typescript/queue/AsynchronousProbe.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;AASH;IAWI,oBAAoB,QAAkB,EAAU,SAAgB;QAAhB,0BAAA,EAAA,gBAAgB;QAAhE,iBAUC;QAVmB,aAAQ,GAAR,QAAQ,CAAU;QAAU,cAAS,GAAT,SAAS,CAAO;QAJhE,kBAAa,GAAG,KAAK,CAAC;QACtB,mBAAc,GAAG,KAAK,CAAC;QACvB,qBAAgB,GAAG,KAAK,CAAC;QAGrB,IAAI,CAAC,KAAK,GAAG,IAAI,OAAO,CAAC,UAAC,OAAO,EAAE,MAAM;YACrC,KAAI,CAAC,QAAQ,CAAC;gBACV,IAAI,KAAI,CAAC,SAAS,EAAE;oBAChB,OAAO,CAAC,cAAM,OAAA,IAAI,EAAJ,CAAI,CAAC,CAAC;iBACvB;qBAAM;oBACH,MAAM,EAAE,CAAC;iBACZ;YACL,CAAC,EAAE,GAAG,CAAC,CAAC;QACZ,CAAC,CAAC,CAAC;IACP,CAAC;IAED,0BAAK,GAAL,UAAM,IAAwB;QAA9B,iBAWC;QAVG,IAAI,SAAS,GAAG,UAAC,IAAS;YACtB,KAAI,CAAC,cAAc,GAAG,IAAI,CAAC;YAC3B,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC;QACtB,CAAC,CAAC;QACF,IAAI,IAAI,CAAC,KAAK,EAAE;YACZ,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;SAC/B;aAAM;YACH,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;SAC3B;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,4BAAO,GAAP,UAAQ,IAAgB;QAAxB,iBAWC;QAVG,IAAI,WAAW,GAAG;YACd,KAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;YAC7B,IAAI,EAAE,CAAC;QACX,CAAC,CAAC;QACF,IAAI,IAAI,CAAC,KAAK,EAAE;YACZ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;SACnC;aAAM;YACH,IAAI,CAAC,QAAQ,GAAG,WAAW,CAAC;SAC/B;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,0BAAK,GAAL;QACI,oBAAoB;QAEpB,IAAI,IAAI,CAAC,MAAM,EAAE;YACb,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;SACjC;QACD,IAAI,IAAI,CAAC,KAAK,EAAE;YACZ,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SAC/B;QACD,IAAI,IAAI,CAAC,QAAQ,EAAE;YACf,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;SACrC;IACL,CAAC;IAED,2BAAM,GAAN;QACI,2BAA2B;IAC/B,CAAC;IAED,yBAAI,GAAJ,UAAK,IAAwB;QAA7B,iBAaC;QAXG,IAAI,QAAQ,GAAG,UAAC,IAAS;YACrB,KAAI,CAAC,aAAa,GAAG,IAAI,CAAC;YAC1B,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC;QACtB,CAAC,CAAC;QAEF,IAAI,IAAI,CAAC,KAAK,EAAE;YACZ,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;SAC7B;aAAM;YACH,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC;SACzB;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IACL,iBAAC;AAAD,CAAC,AAjFD,IAiFC;AAjFY,gCAAU"}