@acrolinx/sidebar-sdk 1.1.13 → 2.0.0-dev1

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 (122) hide show
  1. package/README.md +22 -22
  2. package/dist/index.d.ts +612 -23
  3. package/dist/index.js +3325 -64
  4. package/package.json +44 -90
  5. package/dist/acrolinx-plugin.d.ts +0 -58
  6. package/dist/acrolinx-plugin.js +0 -318
  7. package/dist/acrolinx-plugin.js.map +0 -1
  8. package/dist/acrolinx-sidebar-sdk.js +0 -2
  9. package/dist/acrolinx-sidebar-sdk.js.LICENSE.txt +0 -16
  10. package/dist/acrolinx-sidebar-sdk.min.js +0 -1
  11. package/dist/adapters/AbstractRichtextEditorAdapter.d.ts +0 -35
  12. package/dist/adapters/AbstractRichtextEditorAdapter.js +0 -267
  13. package/dist/adapters/AbstractRichtextEditorAdapter.js.map +0 -1
  14. package/dist/adapters/AdapterInterface.d.ts +0 -63
  15. package/dist/adapters/AdapterInterface.js +0 -51
  16. package/dist/adapters/AdapterInterface.js.map +0 -1
  17. package/dist/adapters/AsyncAutoBindAdapter.d.ts +0 -18
  18. package/dist/adapters/AsyncAutoBindAdapter.js +0 -77
  19. package/dist/adapters/AsyncAutoBindAdapter.js.map +0 -1
  20. package/dist/adapters/AsyncContentEditableAdapter.d.ts +0 -22
  21. package/dist/adapters/AsyncContentEditableAdapter.js +0 -135
  22. package/dist/adapters/AsyncContentEditableAdapter.js.map +0 -1
  23. package/dist/adapters/AsyncMultiEditorAdapter.d.ts +0 -11
  24. package/dist/adapters/AsyncMultiEditorAdapter.js +0 -97
  25. package/dist/adapters/AsyncMultiEditorAdapter.js.map +0 -1
  26. package/dist/adapters/AutoBindAdapter.d.ts +0 -16
  27. package/dist/adapters/AutoBindAdapter.js +0 -56
  28. package/dist/adapters/AutoBindAdapter.js.map +0 -1
  29. package/dist/adapters/CKEditor5Adapter.d.ts +0 -16
  30. package/dist/adapters/CKEditor5Adapter.js +0 -86
  31. package/dist/adapters/CKEditor5Adapter.js.map +0 -1
  32. package/dist/adapters/CKEditorAdapter.d.ts +0 -14
  33. package/dist/adapters/CKEditorAdapter.js +0 -72
  34. package/dist/adapters/CKEditorAdapter.js.map +0 -1
  35. package/dist/adapters/CodeMirror6Adapter.d.ts +0 -29
  36. package/dist/adapters/CodeMirror6Adapter.js +0 -123
  37. package/dist/adapters/CodeMirror6Adapter.js.map +0 -1
  38. package/dist/adapters/CodeMirrorAdapter.d.ts +0 -31
  39. package/dist/adapters/CodeMirrorAdapter.js +0 -143
  40. package/dist/adapters/CodeMirrorAdapter.js.map +0 -1
  41. package/dist/adapters/ContentEditableAdapter.d.ts +0 -11
  42. package/dist/adapters/ContentEditableAdapter.js +0 -45
  43. package/dist/adapters/ContentEditableAdapter.js.map +0 -1
  44. package/dist/adapters/InputAdapter.d.ts +0 -28
  45. package/dist/adapters/InputAdapter.js +0 -125
  46. package/dist/adapters/InputAdapter.js.map +0 -1
  47. package/dist/adapters/MultiEditorAdapter.d.ts +0 -56
  48. package/dist/adapters/MultiEditorAdapter.js +0 -184
  49. package/dist/adapters/MultiEditorAdapter.js.map +0 -1
  50. package/dist/adapters/QuipAdapter.d.ts +0 -16
  51. package/dist/adapters/QuipAdapter.js +0 -148
  52. package/dist/adapters/QuipAdapter.js.map +0 -1
  53. package/dist/adapters/SynchronizeAsyncAdapter.d.ts +0 -22
  54. package/dist/adapters/SynchronizeAsyncAdapter.js +0 -67
  55. package/dist/adapters/SynchronizeAsyncAdapter.js.map +0 -1
  56. package/dist/adapters/TinyMCEAdapter.d.ts +0 -13
  57. package/dist/adapters/TinyMCEAdapter.js +0 -51
  58. package/dist/adapters/TinyMCEAdapter.js.map +0 -1
  59. package/dist/adapters/TinyMCEWordpressAdapter.d.ts +0 -10
  60. package/dist/adapters/TinyMCEWordpressAdapter.js +0 -78
  61. package/dist/adapters/TinyMCEWordpressAdapter.js.map +0 -1
  62. package/dist/adapters/XeditorAdapter.d.ts +0 -130
  63. package/dist/adapters/XeditorAdapter.js +0 -232
  64. package/dist/adapters/XeditorAdapter.js.map +0 -1
  65. package/dist/autobind/autobind.d.ts +0 -8
  66. package/dist/autobind/autobind.js +0 -120
  67. package/dist/autobind/autobind.js.map +0 -1
  68. package/dist/export-for-browser.d.ts +0 -57
  69. package/dist/export-for-browser.js +0 -73
  70. package/dist/export-for-browser.js.map +0 -1
  71. package/dist/floating-sidebar/async-storage.d.ts +0 -11
  72. package/dist/floating-sidebar/async-storage.js +0 -49
  73. package/dist/floating-sidebar/async-storage.js.map +0 -1
  74. package/dist/floating-sidebar/floating-sidebar.d.ts +0 -41
  75. package/dist/floating-sidebar/floating-sidebar.js +0 -234
  76. package/dist/floating-sidebar/floating-sidebar.js.map +0 -1
  77. package/dist/index.js.map +0 -1
  78. package/dist/lookup/diff-based.d.ts +0 -19
  79. package/dist/lookup/diff-based.js +0 -102
  80. package/dist/lookup/diff-based.js.map +0 -1
  81. package/dist/message-adapter/message-adapter.d.ts +0 -10
  82. package/dist/message-adapter/message-adapter.js +0 -109
  83. package/dist/message-adapter/message-adapter.js.map +0 -1
  84. package/dist/utils/adapter-utils.d.ts +0 -2
  85. package/dist/utils/adapter-utils.js +0 -36
  86. package/dist/utils/adapter-utils.js.map +0 -1
  87. package/dist/utils/alignment.d.ts +0 -11
  88. package/dist/utils/alignment.js +0 -32
  89. package/dist/utils/alignment.js.map +0 -1
  90. package/dist/utils/check-selection.d.ts +0 -3
  91. package/dist/utils/check-selection.js +0 -123
  92. package/dist/utils/check-selection.js.map +0 -1
  93. package/dist/utils/detect-browser.d.ts +0 -6
  94. package/dist/utils/detect-browser.js +0 -71
  95. package/dist/utils/detect-browser.js.map +0 -1
  96. package/dist/utils/escaping.d.ts +0 -6
  97. package/dist/utils/escaping.js +0 -46
  98. package/dist/utils/escaping.js.map +0 -1
  99. package/dist/utils/logging.d.ts +0 -2
  100. package/dist/utils/logging.js +0 -34
  101. package/dist/utils/logging.js.map +0 -1
  102. package/dist/utils/match.d.ts +0 -10
  103. package/dist/utils/match.js +0 -33
  104. package/dist/utils/match.js.map +0 -1
  105. package/dist/utils/scrolling.d.ts +0 -6
  106. package/dist/utils/scrolling.js +0 -92
  107. package/dist/utils/scrolling.js.map +0 -1
  108. package/dist/utils/sidebar-loader.d.ts +0 -19
  109. package/dist/utils/sidebar-loader.js +0 -157
  110. package/dist/utils/sidebar-loader.js.map +0 -1
  111. package/dist/utils/text-dom-mapping.d.ts +0 -13
  112. package/dist/utils/text-dom-mapping.js +0 -90
  113. package/dist/utils/text-dom-mapping.js.map +0 -1
  114. package/dist/utils/text-extraction.d.ts +0 -8
  115. package/dist/utils/text-extraction.js +0 -60
  116. package/dist/utils/text-extraction.js.map +0 -1
  117. package/dist/utils/utils.d.ts +0 -39
  118. package/dist/utils/utils.js +0 -155
  119. package/dist/utils/utils.js.map +0 -1
  120. package/dist/utils/work-queue.d.ts +0 -7
  121. package/dist/utils/work-queue.js +0 -66
  122. package/dist/utils/work-queue.js.map +0 -1
@@ -1,157 +0,0 @@
1
- "use strict";
2
- /*
3
- * Copyright 2016-present Acrolinx GmbH
4
- *
5
- * Licensed under the Apache License, Version 2.0 (the "License");
6
- * you may not use this file except in compliance with the License.
7
- * 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.SidebarURLInvalidError = void 0;
19
- exports.loadSidebarCode = loadSidebarCode;
20
- exports.grepAttributeValues = grepAttributeValues;
21
- exports.rebaseRelativeUrl = rebaseRelativeUrl;
22
- exports.loadSidebarIntoIFrame = loadSidebarIntoIFrame;
23
- exports.rebaseRelativeUrls = rebaseRelativeUrls;
24
- var tslib_1 = require("tslib");
25
- var utils = tslib_1.__importStar(require("./utils"));
26
- var sidebar_startpage_1 = require("@acrolinx/sidebar-startpage");
27
- var SidebarURLInvalidError = /** @class */ (function (_super) {
28
- tslib_1.__extends(SidebarURLInvalidError, _super);
29
- function SidebarURLInvalidError(message, configuredSidebarURL, htmlLoaded) {
30
- var _this = _super.call(this, message) || this;
31
- _this.message = message;
32
- _this.configuredSidebarURL = configuredSidebarURL;
33
- _this.htmlLoaded = htmlLoaded;
34
- _this.configuredSidebarURL = configuredSidebarURL;
35
- _this.htmlLoaded = htmlLoaded;
36
- _this.details = message + '\n' + 'Configured SidebarURL:' + configuredSidebarURL + '\n' + htmlLoaded;
37
- return _this;
38
- }
39
- return SidebarURLInvalidError;
40
- }(Error));
41
- exports.SidebarURLInvalidError = SidebarURLInvalidError;
42
- function createCSSLinkElement(href) {
43
- var el = document.createElement('link');
44
- el.rel = 'stylesheet';
45
- el.href = href;
46
- return el;
47
- }
48
- function createScriptElement(src) {
49
- var el = document.createElement('script');
50
- el.src = src;
51
- el.type = 'text/javascript';
52
- el.async = false;
53
- el.defer = false;
54
- return el;
55
- }
56
- function createCompleteSidebarUrl(sidebarBaseUrl) {
57
- var timestamp = Date.now();
58
- return sidebarBaseUrl + 'index.html?t=' + timestamp;
59
- }
60
- /**
61
- * Loads the Styles and Scripts of the sidebar into the current window.
62
- * @param sidebarUrl must end with /
63
- *
64
- * TODO: Is this function currently used in any of our clients?
65
- */
66
- function loadSidebarCode(sidebarBaseUrl) {
67
- var completeSidebarUrl = createCompleteSidebarUrl(sidebarBaseUrl);
68
- utils.fetch(completeSidebarUrl, function (sidebarHtml) {
69
- if (sidebarHtml.indexOf('<meta name="sidebar-version"') < 0) {
70
- try {
71
- throw new SidebarURLInvalidError('It looks like the sidebar URL was configured wrongly.', sidebarBaseUrl, sidebarHtml);
72
- }
73
- catch (error) {
74
- console.log(error);
75
- return;
76
- }
77
- }
78
- var withoutComments = sidebarHtml.replace(/<!--[\s\S]*?-->/g, '');
79
- var head = document.querySelector('head');
80
- var makeRelativeUrlsAbsolutToSidebar = function (url) { return rebaseRelativeUrl(url, sidebarBaseUrl); };
81
- var css = grepAttributeValues(withoutComments, 'href').map(makeRelativeUrlsAbsolutToSidebar);
82
- css.forEach(function (ref) {
83
- head.appendChild(createCSSLinkElement(ref));
84
- });
85
- var scripts = grepAttributeValues(withoutComments, 'src').map(makeRelativeUrlsAbsolutToSidebar);
86
- scripts.forEach(function (ref) {
87
- head.appendChild(createScriptElement(ref));
88
- });
89
- });
90
- }
91
- // Exported only for testing
92
- function grepAttributeValues(html, attribute) {
93
- var regexp = new RegExp("".concat(attribute, "=\"(.*?)\""), 'g');
94
- var matches;
95
- var result = [];
96
- while ((matches = regexp.exec(html)) !== null) {
97
- result.push(matches[1]);
98
- }
99
- return result;
100
- }
101
- // Exported only for testing
102
- function rebaseRelativeUrl(url, sidebarBaseUrl) {
103
- if (url.match(/^https?:/)) {
104
- return url;
105
- }
106
- else {
107
- return sidebarBaseUrl + url;
108
- }
109
- }
110
- function loadSidebarIntoIFrame(config, sidebarIFrameElement, onSidebarLoaded) {
111
- if (config.sidebarHtml || !config.sidebarUrl) {
112
- injectSidebarHtml(config.sidebarHtml || sidebar_startpage_1.ACROLINX_STARTPAGE_INLINED_HTML, sidebarIFrameElement);
113
- onSidebarLoaded();
114
- return;
115
- }
116
- var sidebarBaseUrl = config.sidebarUrl;
117
- var completeSidebarUrl = createCompleteSidebarUrl(sidebarBaseUrl);
118
- if (config.useMessageAdapter || (config.useSidebarFromSameOriginDirectly && utils.isFromSameOrigin(sidebarBaseUrl))) {
119
- sidebarIFrameElement.addEventListener('load', onSidebarLoaded);
120
- sidebarIFrameElement.src = completeSidebarUrl;
121
- }
122
- else {
123
- utils.fetch(completeSidebarUrl, function (sidebarHtml) {
124
- if (sidebarHtml.indexOf('<meta name="sidebar-version"') < 0) {
125
- try {
126
- throw new SidebarURLInvalidError('It looks like the sidebar URL was configured wrongly. ' + 'Check developer console for more information!', completeSidebarUrl, sidebarHtml);
127
- }
128
- catch (error) {
129
- if (error instanceof Error) {
130
- injectSidebarHtml(error.message, sidebarIFrameElement);
131
- }
132
- else {
133
- injectSidebarHtml('Unknown error loading sidebar', sidebarIFrameElement);
134
- }
135
- console.error(error);
136
- return;
137
- }
138
- }
139
- var sidebarHtmlWithAbsoluteLinks = rebaseRelativeUrls(sidebarHtml, sidebarBaseUrl);
140
- injectSidebarHtml(sidebarHtmlWithAbsoluteLinks, sidebarIFrameElement);
141
- onSidebarLoaded();
142
- });
143
- }
144
- }
145
- // Exported only for testing
146
- function rebaseRelativeUrls(sidebarHtml, sidebarBaseUrl) {
147
- return sidebarHtml
148
- .replace(/src="(?!https?:)/g, 'src="' + sidebarBaseUrl)
149
- .replace(/href="(?!https?:)/g, 'href="' + sidebarBaseUrl);
150
- }
151
- function injectSidebarHtml(sidebarHtml, sidebarIFrameElement) {
152
- var sidebarContentWindow = sidebarIFrameElement.contentWindow;
153
- sidebarContentWindow.document.open();
154
- sidebarContentWindow.document.write(sidebarHtml);
155
- sidebarContentWindow.document.close();
156
- }
157
- //# sourceMappingURL=sidebar-loader.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sidebar-loader.js","sourceRoot":"","sources":["../../../../src/utils/sidebar-loader.ts"],"names":[],"mappings":"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"}
@@ -1,13 +0,0 @@
1
- export interface TextDomMapping {
2
- text: string;
3
- domPositions: DomPosition[];
4
- }
5
- export interface DomPosition {
6
- node: Node;
7
- offset: number;
8
- }
9
- export declare function textMapping(text: string, domPositions: DomPosition[]): TextDomMapping;
10
- export declare function concatTextMappings(textMappings: TextDomMapping[]): TextDomMapping;
11
- export declare function domPosition(node: Node, offset: number): DomPosition;
12
- export declare function extractTextDomMapping(node: Node): TextDomMapping;
13
- export declare function getEndDomPos(endIndex: number, domPositions: DomPosition[]): DomPosition;
@@ -1,90 +0,0 @@
1
- "use strict";
2
- /*
3
- * Copyright 2016-present Acrolinx GmbH
4
- *
5
- * Licensed under the Apache License, Version 2.0 (the "License");
6
- * you may not use this file except in compliance with the License.
7
- * 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.textMapping = textMapping;
19
- exports.concatTextMappings = concatTextMappings;
20
- exports.domPosition = domPosition;
21
- exports.extractTextDomMapping = extractTextDomMapping;
22
- exports.getEndDomPos = getEndDomPos;
23
- var tslib_1 = require("tslib");
24
- var _ = tslib_1.__importStar(require("lodash"));
25
- var utils_1 = require("./utils");
26
- var text_extraction_1 = require("./text-extraction");
27
- var EMPTY_TEXT_DOM_MAPPING = (0, utils_1.deepFreezed)({
28
- text: '',
29
- domPositions: [],
30
- });
31
- function textMapping(text, domPositions) {
32
- return {
33
- text: text,
34
- domPositions: domPositions,
35
- };
36
- }
37
- function concatTextMappings(textMappings) {
38
- return {
39
- text: textMappings.map(function (tm) { return tm.text; }).join(''),
40
- domPositions: _.flatten(textMappings.map(function (tm) { return tm.domPositions; })),
41
- };
42
- }
43
- function domPosition(node, offset) {
44
- return {
45
- node: node,
46
- offset: offset,
47
- };
48
- }
49
- var IGNORED_NODE_NAMES = (0, utils_1.toSet)(['SCRIPT', 'STYLE']);
50
- function extractTextDomMapping(node) {
51
- return concatTextMappings(_.map(node.childNodes, function (child) {
52
- switch (child.nodeType) {
53
- case Node.ELEMENT_NODE:
54
- var nodeName = child.nodeName;
55
- if (IGNORED_NODE_NAMES[nodeName]) {
56
- return EMPTY_TEXT_DOM_MAPPING;
57
- }
58
- var childMappings = extractTextDomMapping(child);
59
- if (text_extraction_1.NEW_LINE_TAGS[nodeName]) {
60
- var lastChildDomPos = _.last(childMappings.domPositions);
61
- return {
62
- text: childMappings.text + '\n',
63
- domPositions: childMappings.domPositions.concat({
64
- node: (lastChildDomPos && lastChildDomPos.node) || child,
65
- offset: (lastChildDomPos && lastChildDomPos.offset) || 0,
66
- }),
67
- };
68
- }
69
- return childMappings;
70
- case Node.TEXT_NODE:
71
- var textContent = child.textContent;
72
- if (textContent) {
73
- return textMapping(textContent, _.times(textContent.length, function (i) { return domPosition(child, i); }));
74
- }
75
- else {
76
- return EMPTY_TEXT_DOM_MAPPING;
77
- }
78
- default:
79
- return EMPTY_TEXT_DOM_MAPPING;
80
- }
81
- }));
82
- }
83
- function getEndDomPos(endIndex, domPositions) {
84
- var index = domPositions[Math.max(Math.min(endIndex, domPositions.length) - 1, 0)];
85
- return {
86
- node: index.node,
87
- offset: index.offset + 1,
88
- };
89
- }
90
- //# sourceMappingURL=text-dom-mapping.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"text-dom-mapping.js","sourceRoot":"","sources":["../../../../src/utils/text-dom-mapping.ts"],"names":[],"mappings":"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"}
@@ -1,8 +0,0 @@
1
- import { OffSetAlign } from './alignment';
2
- export declare const NEW_LINE_TAGS: Readonly<{
3
- [key: string]: boolean;
4
- }>;
5
- export declare const AUTO_SELF_CLOSING_LINE_TAGS: Readonly<{
6
- [key: string]: boolean;
7
- }>;
8
- export declare function extractText(s: string): [string, OffSetAlign[]];
@@ -1,60 +0,0 @@
1
- "use strict";
2
- /*
3
- * Copyright 2016-present Acrolinx GmbH
4
- *
5
- * Licensed under the Apache License, Version 2.0 (the "License");
6
- * you may not use this file except in compliance with the License.
7
- * 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.AUTO_SELF_CLOSING_LINE_TAGS = exports.NEW_LINE_TAGS = void 0;
19
- exports.extractText = extractText;
20
- var tslib_1 = require("tslib");
21
- var _ = tslib_1.__importStar(require("lodash"));
22
- var utils_1 = require("./utils");
23
- var entities = tslib_1.__importStar(require("entities"));
24
- var REPLACE_SCRIPTS_REGEXP = '<script\\b[^<]*(?:(?!<\\/script>)<[^<]*)*</script>';
25
- var REPLACE_STYLES_REGEXP = '<style\\b[^<]*(?:(?!<\\/style>)<[^<]*)*</style>';
26
- var REPLACE_TAG_REGEXP = '<([^>]+)>';
27
- var REPLACE_ENTITY_REGEXP = '&.*?;';
28
- // Order is important.
29
- var REPLACE_TAGS_PARTS = [REPLACE_SCRIPTS_REGEXP, REPLACE_STYLES_REGEXP, REPLACE_TAG_REGEXP, REPLACE_ENTITY_REGEXP];
30
- var REPLACE_TAGS_REGEXP = '(' + REPLACE_TAGS_PARTS.join('|') + ')';
31
- exports.NEW_LINE_TAGS = (0, utils_1.toSet)(['BR', 'P', 'DIV']);
32
- exports.AUTO_SELF_CLOSING_LINE_TAGS = (0, utils_1.toSet)(['BR']);
33
- function getTagReplacement(completeTag) {
34
- var _a = (/^<(\/?)(\w+)/i.exec(completeTag.toUpperCase()) || []).slice(1), _b = _a[0], slash1 = _b === void 0 ? '' : _b, _c = _a[1], tagName = _c === void 0 ? '' : _c, _d = _a[2], slash2 = _d === void 0 ? '' : _d;
35
- if (tagName) {
36
- if (exports.AUTO_SELF_CLOSING_LINE_TAGS[tagName] || (exports.NEW_LINE_TAGS[tagName] && (slash1 || slash2))) {
37
- return '\n';
38
- }
39
- }
40
- return '';
41
- }
42
- // Exported for testing
43
- function extractText(s) {
44
- var regExp = new RegExp(REPLACE_TAGS_REGEXP, 'ig');
45
- var offsetMapping = [];
46
- var currentDiffOffset = 0;
47
- var resultText = s.replace(regExp, function (tagOrEntity, _p1, _p2, offset) {
48
- var rep = _.startsWith(tagOrEntity, '&')
49
- ? entities.decodeHTMLStrict(tagOrEntity)
50
- : getTagReplacement(tagOrEntity);
51
- currentDiffOffset -= tagOrEntity.length - rep.length;
52
- offsetMapping.push({
53
- oldPosition: offset + tagOrEntity.length,
54
- diffOffset: currentDiffOffset,
55
- });
56
- return rep;
57
- });
58
- return [resultText, offsetMapping];
59
- }
60
- //# sourceMappingURL=text-extraction.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"text-extraction.js","sourceRoot":"","sources":["../../../../src/utils/text-extraction.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;AA8BH,kCAgBC;;AA5CD,gDAA4B;AAC5B,iCAAgC;AAEhC,yDAAqC;AAErC,IAAM,sBAAsB,GAAG,oDAAoD,CAAC;AACpF,IAAM,qBAAqB,GAAG,iDAAiD,CAAC;AAChF,IAAM,kBAAkB,GAAG,WAAW,CAAC;AACvC,IAAM,qBAAqB,GAAG,OAAO,CAAC;AACtC,sBAAsB;AACtB,IAAM,kBAAkB,GAAG,CAAC,sBAAsB,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,qBAAqB,CAAC,CAAC;AACtH,IAAM,mBAAmB,GAAG,GAAG,GAAG,kBAAkB,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC;AAExD,QAAA,aAAa,GAAG,IAAA,aAAK,EAAC,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC;AAC1C,QAAA,2BAA2B,GAAG,IAAA,aAAK,EAAC,CAAC,IAAI,CAAC,CAAC,CAAC;AAEzD,SAAS,iBAAiB,CAAC,WAAmB;IACtC,IAAA,KAA2C,CAAC,eAAe,CAAC,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAA1G,UAAW,EAAX,MAAM,mBAAG,EAAE,KAAA,EAAE,UAAY,EAAZ,OAAO,mBAAG,EAAE,KAAA,EAAE,UAAW,EAAX,MAAM,mBAAG,EAAE,KAAoE,CAAC;IAElH,IAAI,OAAO,EAAE,CAAC;QACZ,IAAI,mCAA2B,CAAC,OAAO,CAAC,IAAI,CAAC,qBAAa,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,CAAC,EAAE,CAAC;YAC3F,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IACD,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,uBAAuB;AACvB,SAAgB,WAAW,CAAC,CAAS;IACnC,IAAM,MAAM,GAAG,IAAI,MAAM,CAAC,mBAAmB,EAAE,IAAI,CAAC,CAAC;IACrD,IAAM,aAAa,GAAkB,EAAE,CAAC;IACxC,IAAI,iBAAiB,GAAG,CAAC,CAAC;IAC1B,IAAM,UAAU,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,UAAC,WAAW,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM;QACjE,IAAM,GAAG,GAAG,CAAC,CAAC,UAAU,CAAC,WAAW,EAAE,GAAG,CAAC;YACxC,CAAC,CAAC,QAAQ,CAAC,gBAAgB,CAAC,WAAW,CAAC;YACxC,CAAC,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC;QACnC,iBAAiB,IAAI,WAAW,CAAC,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC;QACrD,aAAa,CAAC,IAAI,CAAC;YACjB,WAAW,EAAE,MAAM,GAAG,WAAW,CAAC,MAAM;YACxC,UAAU,EAAE,iBAAiB;SAC9B,CAAC,CAAC;QACH,OAAO,GAAG,CAAC;IACb,CAAC,CAAC,CAAC;IACH,OAAO,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;AACrC,CAAC"}
@@ -1,39 +0,0 @@
1
- export declare function logTime(text: string, f: Function): any;
2
- export declare function fetch(url: string, callback: (s: string) => void): void;
3
- export declare function isIFrame(el: Element): el is HTMLIFrameElement;
4
- export type SimulateInputEventProps = {
5
- startNode: Node;
6
- endNode: Node;
7
- eventType: string;
8
- startOffset: number;
9
- endOffset: number;
10
- replacement: string;
11
- disableSimulation?: boolean;
12
- };
13
- export declare function simulateInputEvent(props: SimulateInputEventProps): void;
14
- export declare function parseUrl(href: string): {
15
- protocol: string;
16
- host: string;
17
- hostname: string;
18
- port: string;
19
- pathname: string;
20
- hash: string;
21
- };
22
- export declare function isFromSameOrigin(url: string): boolean;
23
- export declare function toSet(keys: string[]): Readonly<{
24
- [key: string]: boolean;
25
- }>;
26
- export declare function assign<T, U>(obj: T, update: U): T & U;
27
- export declare function deepFreezed<T>(o: T): T;
28
- export declare function isDisplayed(element: Element): boolean;
29
- export declare function assertElementIsDisplayed(element: Element): void;
30
- export declare function containsText(s: string): boolean;
31
- export declare function removeNode(node: Node): void;
32
- export declare function isPromise<T>(result: T | Promise<T>): result is Promise<T>;
33
- export declare class Deferred<T> {
34
- resolve: (x: T) => void;
35
- reject: (x: T) => void;
36
- promise: Promise<T>;
37
- constructor();
38
- }
39
- export declare function waitMs(ms: number): Promise<unknown>;
@@ -1,155 +0,0 @@
1
- "use strict";
2
- /*
3
- * Copyright 2016-present Acrolinx GmbH
4
- *
5
- * Licensed under the Apache License, Version 2.0 (the "License");
6
- * you may not use this file except in compliance with the License.
7
- * 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.Deferred = void 0;
19
- exports.logTime = logTime;
20
- exports.fetch = fetch;
21
- exports.isIFrame = isIFrame;
22
- exports.simulateInputEvent = simulateInputEvent;
23
- exports.parseUrl = parseUrl;
24
- exports.isFromSameOrigin = isFromSameOrigin;
25
- exports.toSet = toSet;
26
- exports.assign = assign;
27
- exports.deepFreezed = deepFreezed;
28
- exports.isDisplayed = isDisplayed;
29
- exports.assertElementIsDisplayed = assertElementIsDisplayed;
30
- exports.containsText = containsText;
31
- exports.removeNode = removeNode;
32
- exports.isPromise = isPromise;
33
- exports.waitMs = waitMs;
34
- var tslib_1 = require("tslib");
35
- var _ = tslib_1.__importStar(require("lodash"));
36
- function logTime(text, f) {
37
- var startTime = Date.now();
38
- var result = f();
39
- console.log("Duration of \"".concat(text, ":\""), Date.now() - startTime);
40
- return result;
41
- }
42
- function fetch(url, callback) {
43
- var request = new XMLHttpRequest();
44
- request.open('GET', url, true);
45
- request.onload = function () {
46
- if (request.status >= 200 && request.status < 400) {
47
- callback(request.responseText);
48
- }
49
- else {
50
- throw new Error("Error while loading ".concat(url, "."));
51
- }
52
- };
53
- request.onerror = function () {
54
- throw new Error("Error while loading ".concat(url, "."));
55
- };
56
- request.send();
57
- }
58
- function isIFrame(el) {
59
- return el.nodeName === 'IFRAME';
60
- }
61
- function simulateInputEvent(props) {
62
- var startNode = props.startNode, endNode = props.endNode, eventType = props.eventType, startOffset = props.startOffset, endOffset = props.endOffset, replacement = props.replacement, disableSimulation = props.disableSimulation;
63
- if (disableSimulation) {
64
- return;
65
- }
66
- var staticRange = new StaticRange({
67
- startContainer: startNode,
68
- startOffset: startOffset,
69
- endContainer: endNode,
70
- endOffset: endOffset,
71
- });
72
- var eventOptions = {
73
- inputType: 'insertText',
74
- data: replacement,
75
- bubbles: true,
76
- cancelable: false,
77
- targetRanges: [staticRange],
78
- };
79
- startNode.dispatchEvent(new InputEvent(eventType, eventOptions));
80
- }
81
- function parseUrl(href) {
82
- var aElement = document.createElement('a');
83
- aElement.href = href;
84
- if (aElement.host === '') {
85
- // IE workaround.
86
- aElement.href = aElement.href;
87
- }
88
- var protocol = aElement.protocol, host = aElement.host, hostname = aElement.hostname, port = aElement.port, pathname = aElement.pathname, hash = aElement.hash;
89
- return { protocol: protocol, host: host, hostname: hostname, port: port, pathname: pathname, hash: hash };
90
- }
91
- function isFromSameOrigin(url) {
92
- var _a = parseUrl(url), protocol = _a.protocol, host = _a.host;
93
- return location.protocol === protocol && location.host === host;
94
- }
95
- function toSet(keys) {
96
- return Object.freeze(_.zipObject(keys, keys.map(_.constant(true))));
97
- }
98
- function assign(obj, update) {
99
- return _.assign({}, obj, update);
100
- }
101
- function deepFreeze(o) {
102
- Object.freeze(o);
103
- var oIsFunction = typeof o === 'function';
104
- var hasOwnProp = Object.prototype.hasOwnProperty;
105
- Object.getOwnPropertyNames(o).forEach(function (prop) {
106
- if (hasOwnProp.call(o, prop) &&
107
- (oIsFunction ? prop !== 'caller' && prop !== 'callee' && prop !== 'arguments' : true) &&
108
- o[prop] !== null &&
109
- (typeof o[prop] === 'object' || typeof o[prop] === 'function') &&
110
- !Object.isFrozen(o[prop])) {
111
- deepFreeze(o[prop]);
112
- }
113
- });
114
- }
115
- function deepFreezed(o) {
116
- var oClone = _.cloneDeep(o);
117
- deepFreeze(oClone);
118
- return oClone;
119
- }
120
- function isDisplayed(element) {
121
- if (!element.parentNode) {
122
- return false;
123
- }
124
- var boundingBox = element.getBoundingClientRect();
125
- return !!boundingBox.width && !!boundingBox.height;
126
- }
127
- function assertElementIsDisplayed(element) {
128
- if (!isDisplayed(element)) {
129
- throw Error('Adapter element is not displayed.');
130
- }
131
- }
132
- function containsText(s) {
133
- return /\S/.test(s);
134
- }
135
- function removeNode(node) {
136
- node.parentNode.removeChild(node);
137
- }
138
- function isPromise(result) {
139
- return result && typeof result.then === 'function';
140
- }
141
- var Deferred = /** @class */ (function () {
142
- function Deferred() {
143
- var _this = this;
144
- this.promise = new Promise(function (resolve, reject) {
145
- _this.resolve = resolve;
146
- _this.reject = reject;
147
- });
148
- }
149
- return Deferred;
150
- }());
151
- exports.Deferred = Deferred;
152
- function waitMs(ms) {
153
- return new Promise(function (resolve) { return setTimeout(resolve, ms); });
154
- }
155
- //# sourceMappingURL=utils.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../src/utils/utils.ts"],"names":[],"mappings":"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"}
@@ -1,7 +0,0 @@
1
- export type PromiseProvider<T> = () => PromiseLike<T>;
2
- export declare class WorkQueue {
3
- private workTodo;
4
- private currentWork?;
5
- addWork<T>(work: PromiseProvider<T>): Promise<T>;
6
- private doRemainingWork;
7
- }
@@ -1,66 +0,0 @@
1
- "use strict";
2
- /*
3
- * Copyright 2018-present Acrolinx GmbH
4
- *
5
- * Licensed under the Apache License, Version 2.0 (the "License");
6
- * you may not use this file except in compliance with the License.
7
- * 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.WorkQueue = void 0;
19
- var utils_1 = require("./utils");
20
- var Fifo = /** @class */ (function () {
21
- function Fifo() {
22
- this.store = [];
23
- }
24
- Fifo.prototype.push = function (val) {
25
- this.store.push(val);
26
- };
27
- Fifo.prototype.pop = function () {
28
- return this.store.shift();
29
- };
30
- return Fifo;
31
- }());
32
- var WorkQueue = /** @class */ (function () {
33
- function WorkQueue() {
34
- this.workTodo = new Fifo();
35
- }
36
- WorkQueue.prototype.addWork = function (work) {
37
- var workItem = {
38
- work: work,
39
- deferred: new utils_1.Deferred(),
40
- };
41
- this.workTodo.push(workItem);
42
- if (!this.currentWork) {
43
- this.doRemainingWork();
44
- }
45
- return workItem.deferred.promise;
46
- };
47
- WorkQueue.prototype.doRemainingWork = function () {
48
- var _this = this;
49
- var nextWorkItem = this.workTodo.pop();
50
- if (nextWorkItem) {
51
- this.currentWork = nextWorkItem.work();
52
- this.currentWork.then(function (result) {
53
- nextWorkItem.deferred.resolve(result);
54
- _this.currentWork = undefined;
55
- _this.doRemainingWork();
56
- }, function (error) {
57
- nextWorkItem.deferred.reject(error);
58
- _this.currentWork = undefined;
59
- _this.doRemainingWork();
60
- });
61
- }
62
- };
63
- return WorkQueue;
64
- }());
65
- exports.WorkQueue = WorkQueue;
66
- //# sourceMappingURL=work-queue.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"work-queue.js","sourceRoot":"","sources":["../../../../src/utils/work-queue.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;AAEH,iCAAmC;AAEnC;IAAA;QACU,UAAK,GAAQ,EAAE,CAAC;IAS1B,CAAC;IAPC,mBAAI,GAAJ,UAAK,GAAM;QACT,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACvB,CAAC;IAED,kBAAG,GAAH;QACE,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;IAC5B,CAAC;IACH,WAAC;AAAD,CAAC,AAVD,IAUC;AASD;IAAA;QACU,aAAQ,GAAG,IAAI,IAAI,EAAiB,CAAC;IAiC/C,CAAC;IA9BC,2BAAO,GAAP,UAAW,IAAwB;QACjC,IAAM,QAAQ,GAAgB;YAC5B,IAAI,EAAE,IAAI;YACV,QAAQ,EAAE,IAAI,gBAAQ,EAAE;SACzB,CAAC;QACF,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC7B,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACtB,IAAI,CAAC,eAAe,EAAE,CAAC;QACzB,CAAC;QACD,OAAO,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC;IACnC,CAAC;IAEO,mCAAe,GAAvB;QAAA,iBAiBC;QAhBC,IAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC;QACzC,IAAI,YAAY,EAAE,CAAC;YACjB,IAAI,CAAC,WAAW,GAAG,YAAY,CAAC,IAAI,EAAE,CAAC;YACvC,IAAI,CAAC,WAAW,CAAC,IAAI,CACnB,UAAC,MAAM;gBACL,YAAY,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;gBACtC,KAAI,CAAC,WAAW,GAAG,SAAS,CAAC;gBAC7B,KAAI,CAAC,eAAe,EAAE,CAAC;YACzB,CAAC,EACD,UAAC,KAAK;gBACJ,YAAY,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBACpC,KAAI,CAAC,WAAW,GAAG,SAAS,CAAC;gBAC7B,KAAI,CAAC,eAAe,EAAE,CAAC;YACzB,CAAC,CACF,CAAC;QACJ,CAAC;IACH,CAAC;IACH,gBAAC;AAAD,CAAC,AAlCD,IAkCC;AAlCY,8BAAS"}