@kwiz/common 1.0.150 → 1.0.152

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 (138) hide show
  1. package/.mocharc.js +12 -0
  2. package/lib/cjs/_dependencies.js +2 -2
  3. package/lib/cjs/_dependencies.js.map +1 -1
  4. package/lib/cjs/config.js +1 -2
  5. package/lib/cjs/config.js.map +1 -1
  6. package/lib/cjs/helpers/base64.js +7 -8
  7. package/lib/cjs/helpers/base64.js.map +1 -1
  8. package/lib/cjs/helpers/browser.js +80 -93
  9. package/lib/cjs/helpers/browser.js.map +1 -1
  10. package/lib/cjs/helpers/browserinfo.js +10 -5
  11. package/lib/cjs/helpers/browserinfo.js.map +1 -1
  12. package/lib/cjs/helpers/collections.base.js +33 -34
  13. package/lib/cjs/helpers/collections.base.js.map +1 -1
  14. package/lib/cjs/helpers/collections.js +3 -4
  15. package/lib/cjs/helpers/collections.js.map +1 -1
  16. package/lib/cjs/helpers/color.js +3 -4
  17. package/lib/cjs/helpers/color.js.map +1 -1
  18. package/lib/cjs/helpers/cookies.js +5 -6
  19. package/lib/cjs/helpers/cookies.js.map +1 -1
  20. package/lib/cjs/helpers/date.js +17 -17
  21. package/lib/cjs/helpers/date.js.map +1 -1
  22. package/lib/cjs/helpers/debug.js +7 -8
  23. package/lib/cjs/helpers/debug.js.map +1 -1
  24. package/lib/cjs/helpers/emails.js +2 -2
  25. package/lib/cjs/helpers/emails.js.map +1 -1
  26. package/lib/cjs/helpers/eval.js +1 -2
  27. package/lib/cjs/helpers/eval.js.map +1 -1
  28. package/lib/cjs/helpers/file.js +4 -4
  29. package/lib/cjs/helpers/file.js.map +1 -1
  30. package/lib/cjs/helpers/flatted.js +2 -2
  31. package/lib/cjs/helpers/flatted.js.map +1 -1
  32. package/lib/cjs/helpers/functions.js +1 -2
  33. package/lib/cjs/helpers/functions.js.map +1 -1
  34. package/lib/cjs/helpers/graph/calendar.types.js +2 -3
  35. package/lib/cjs/helpers/graph/calendar.types.js.map +1 -1
  36. package/lib/cjs/helpers/http.js +3 -3
  37. package/lib/cjs/helpers/http.js.map +1 -1
  38. package/lib/cjs/helpers/json.js +3 -4
  39. package/lib/cjs/helpers/json.js.map +1 -1
  40. package/lib/cjs/helpers/md5.js +5 -2
  41. package/lib/cjs/helpers/md5.js.map +1 -1
  42. package/lib/cjs/helpers/objects.js +16 -16
  43. package/lib/cjs/helpers/objects.js.map +1 -1
  44. package/lib/cjs/helpers/promises.js +8 -9
  45. package/lib/cjs/helpers/promises.js.map +1 -1
  46. package/lib/cjs/helpers/random.js +2 -3
  47. package/lib/cjs/helpers/random.js.map +1 -1
  48. package/lib/cjs/helpers/scheduler/scheduler.js +4 -4
  49. package/lib/cjs/helpers/scheduler/scheduler.js.map +1 -1
  50. package/lib/cjs/helpers/sharepoint.js +53 -55
  51. package/lib/cjs/helpers/sharepoint.js.map +1 -1
  52. package/lib/cjs/helpers/strings.js +29 -30
  53. package/lib/cjs/helpers/strings.js.map +1 -1
  54. package/lib/cjs/helpers/typecheckers.js +36 -36
  55. package/lib/cjs/helpers/typecheckers.js.map +1 -1
  56. package/lib/cjs/helpers/url.js +14 -15
  57. package/lib/cjs/helpers/url.js.map +1 -1
  58. package/lib/cjs/types/sharepoint.types.js.map +1 -1
  59. package/lib/cjs/utils/auth/common.js +11 -10
  60. package/lib/cjs/utils/auth/common.js.map +1 -1
  61. package/lib/cjs/utils/auth/discovery.js +4 -5
  62. package/lib/cjs/utils/auth/discovery.js.map +1 -1
  63. package/lib/cjs/utils/base64.js +1 -2
  64. package/lib/cjs/utils/base64.js.map +1 -1
  65. package/lib/cjs/utils/date.js +2 -3
  66. package/lib/cjs/utils/date.js.map +1 -1
  67. package/lib/cjs/utils/emails.js +1 -2
  68. package/lib/cjs/utils/emails.js.map +1 -1
  69. package/lib/cjs/utils/localstoragecache.js +8 -8
  70. package/lib/cjs/utils/localstoragecache.js.map +1 -1
  71. package/lib/cjs/utils/rest.js +52 -42
  72. package/lib/cjs/utils/rest.js.map +1 -1
  73. package/lib/cjs/utils/sharepoint.rest/common.js +32 -27
  74. package/lib/cjs/utils/sharepoint.rest/common.js.map +1 -1
  75. package/lib/cjs/utils/sharepoint.rest/date.js +8 -6
  76. package/lib/cjs/utils/sharepoint.rest/date.js.map +1 -1
  77. package/lib/cjs/utils/sharepoint.rest/file.folder.js +28 -29
  78. package/lib/cjs/utils/sharepoint.rest/file.folder.js.map +1 -1
  79. package/lib/cjs/utils/sharepoint.rest/item.js +33 -32
  80. package/lib/cjs/utils/sharepoint.rest/item.js.map +1 -1
  81. package/lib/cjs/utils/sharepoint.rest/list.js +116 -72
  82. package/lib/cjs/utils/sharepoint.rest/list.js.map +1 -1
  83. package/lib/cjs/utils/sharepoint.rest/listutils/GetListItemsByCaml.js +1 -2
  84. package/lib/cjs/utils/sharepoint.rest/listutils/GetListItemsByCaml.js.map +1 -1
  85. package/lib/cjs/utils/sharepoint.rest/listutils/GetListItemsById.js +2 -3
  86. package/lib/cjs/utils/sharepoint.rest/listutils/GetListItemsById.js.map +1 -1
  87. package/lib/cjs/utils/sharepoint.rest/listutils/common.js +2 -2
  88. package/lib/cjs/utils/sharepoint.rest/listutils/common.js.map +1 -1
  89. package/lib/cjs/utils/sharepoint.rest/location.js +2 -3
  90. package/lib/cjs/utils/sharepoint.rest/location.js.map +1 -1
  91. package/lib/cjs/utils/sharepoint.rest/navigation-links.js +3 -4
  92. package/lib/cjs/utils/sharepoint.rest/navigation-links.js.map +1 -1
  93. package/lib/cjs/utils/sharepoint.rest/user.js +26 -27
  94. package/lib/cjs/utils/sharepoint.rest/user.js.map +1 -1
  95. package/lib/cjs/utils/sharepoint.rest/web.js +109 -73
  96. package/lib/cjs/utils/sharepoint.rest/web.js.map +1 -1
  97. package/lib/esm/helpers/browser.js +8 -20
  98. package/lib/esm/helpers/browser.js.map +1 -1
  99. package/lib/esm/helpers/browserinfo.js +5 -1
  100. package/lib/esm/helpers/browserinfo.js.map +1 -1
  101. package/lib/esm/helpers/md5.js +4 -0
  102. package/lib/esm/helpers/md5.js.map +1 -1
  103. package/lib/esm/helpers/sharepoint.js +8 -10
  104. package/lib/esm/helpers/sharepoint.js.map +1 -1
  105. package/lib/esm/helpers/typecheckers.js +1 -1
  106. package/lib/esm/helpers/typecheckers.js.map +1 -1
  107. package/lib/esm/types/sharepoint.types.js.map +1 -1
  108. package/lib/esm/utils/auth/common.js +7 -5
  109. package/lib/esm/utils/auth/common.js.map +1 -1
  110. package/lib/esm/utils/rest.js +48 -38
  111. package/lib/esm/utils/rest.js.map +1 -1
  112. package/lib/esm/utils/sharepoint.rest/common.js +20 -16
  113. package/lib/esm/utils/sharepoint.rest/common.js.map +1 -1
  114. package/lib/esm/utils/sharepoint.rest/date.js +7 -4
  115. package/lib/esm/utils/sharepoint.rest/date.js.map +1 -1
  116. package/lib/esm/utils/sharepoint.rest/item.js +7 -6
  117. package/lib/esm/utils/sharepoint.rest/item.js.map +1 -1
  118. package/lib/esm/utils/sharepoint.rest/list.js +57 -13
  119. package/lib/esm/utils/sharepoint.rest/list.js.map +1 -1
  120. package/lib/esm/utils/sharepoint.rest/web.js +46 -9
  121. package/lib/esm/utils/sharepoint.rest/web.js.map +1 -1
  122. package/lib/types/helpers/browser.d.ts +1 -1
  123. package/lib/types/helpers/browserinfo.d.ts +1 -0
  124. package/lib/types/helpers/sharepoint.d.ts +1 -1
  125. package/lib/types/types/sharepoint.types.d.ts +0 -26
  126. package/lib/types/utils/sharepoint.rest/common.d.ts +2 -0
  127. package/lib/types/utils/sharepoint.rest/item.d.ts +4 -1
  128. package/lib/types/utils/sharepoint.rest/list.d.ts +11 -2
  129. package/lib/types/utils/sharepoint.rest/web.d.ts +3 -1
  130. package/package.json +12 -3
  131. package/test/auth.ts +31 -0
  132. package/test/hooks.ts +181 -0
  133. package/test/readme.md +61 -0
  134. package/test/sp/files-folders.ts +258 -0
  135. package/test/sp/items.ts +295 -0
  136. package/test/sp/lists.ts +679 -0
  137. package/test/sp/users.ts +57 -0
  138. package/test/sp/webs.ts +43 -0
@@ -1,7 +1,77 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.addEventListeners = exports.ScriptEncode = exports.HTMLDecode = exports.HTMLEncode = exports.isIFrameAccessible = exports.isInsideIFrame = exports.createHtmlElement = exports.createStylesheet = exports.addStyleSheet = exports.delayAsync = exports.waitForAsync = exports.waitFor = exports.waitForWindowObject = exports.composePath = exports.setSelectOptionByIndex = exports.setSelectOptionByValue = exports.getSelectedOption = exports.getSelectOptionByIndex = exports.getSelectOptionByValue = exports.removeAttributeFromHTMLElements = exports.removeHTMLElement = exports.emptyHTMLElement = exports.isNode = exports.isElement = exports.getAnimationEndEventName = exports.getAnimationFlags = exports.getPageHidden = exports.computedStyleToInlineStyle = exports.cumulativeOffset = exports.getScrollbarWidth = exports.getScrollParent = exports.querySelectorAllMaintainOrder = exports.querySelectorAllFirstOrNull = exports.isElementVisible = exports.removeDOMChangedObserver = exports.registerDOMChangedObserver = exports.registerModernThemeChanged = exports.registerModernInplaceNavigationOnInit = exports.registerDocumentLoadComplete = exports.registerDOMContentLoadedListener = exports.HtmlTextContents = exports.elementFromHtml = exports.pasteTextAtCursor = exports.copyToClipboard = exports.copyTextToClipboard = exports.downloadFile = exports.saveZipFile = exports.saveFile = exports.addEventHandler = exports.triggerNativeEvent = void 0;
4
- exports.convertImageToBase64 = exports.getCSSVariableValue = exports.stopEvent = exports.getUniqueElementId = exports.getLoadingOverlayHtml = exports.hideLoadingOverlay = exports.showLoadingOverlay = exports.loadModernFormsCSS = exports.findAcestor = exports.isChildOf = exports.DisableAnchorInterceptInElement = exports.DisableAnchorInterceptInHtml = exports.DisableAnchorIntercept = exports.DisableAnchorInterceptValue = exports.DisableAnchorInterceptAttribute = exports.registerUrlChanged = exports.getReactInstanceFromElement = exports.addStyleElement = exports.dispatchCustomEvent = exports.OnWindowResize = exports.throttle = exports.interval = exports.debounce = void 0;
3
+ exports.DisableAnchorInterceptValue = exports.DisableAnchorInterceptAttribute = void 0;
4
+ exports.triggerNativeEvent = triggerNativeEvent;
5
+ exports.addEventHandler = addEventHandler;
6
+ exports.saveFile = saveFile;
7
+ exports.saveZipFile = saveZipFile;
8
+ exports.downloadFile = downloadFile;
9
+ exports.copyTextToClipboard = copyTextToClipboard;
10
+ exports.copyToClipboard = copyToClipboard;
11
+ exports.pasteTextAtCursor = pasteTextAtCursor;
12
+ exports.elementFromHtml = elementFromHtml;
13
+ exports.HtmlTextContents = HtmlTextContents;
14
+ exports.registerDOMContentLoadedListener = registerDOMContentLoadedListener;
15
+ exports.registerDocumentLoadComplete = registerDocumentLoadComplete;
16
+ exports.registerModernInplaceNavigationOnInit = registerModernInplaceNavigationOnInit;
17
+ exports.registerModernThemeChanged = registerModernThemeChanged;
18
+ exports.registerDOMChangedObserver = registerDOMChangedObserver;
19
+ exports.removeDOMChangedObserver = removeDOMChangedObserver;
20
+ exports.isElementVisible = isElementVisible;
21
+ exports.querySelectorAllFirstOrNull = querySelectorAllFirstOrNull;
22
+ exports.querySelectorAllMaintainOrder = querySelectorAllMaintainOrder;
23
+ exports.getScrollParent = getScrollParent;
24
+ exports.getScrollbarWidth = getScrollbarWidth;
25
+ exports.cumulativeOffset = cumulativeOffset;
26
+ exports.computedStyleToInlineStyle = computedStyleToInlineStyle;
27
+ exports.getPageHidden = getPageHidden;
28
+ exports.getAnimationFlags = getAnimationFlags;
29
+ exports.getAnimationEndEventName = getAnimationEndEventName;
30
+ exports.isElement = isElement;
31
+ exports.isNode = isNode;
32
+ exports.emptyHTMLElement = emptyHTMLElement;
33
+ exports.removeHTMLElement = removeHTMLElement;
34
+ exports.removeAttributeFromHTMLElements = removeAttributeFromHTMLElements;
35
+ exports.getSelectOptionByValue = getSelectOptionByValue;
36
+ exports.getSelectOptionByIndex = getSelectOptionByIndex;
37
+ exports.getSelectedOption = getSelectedOption;
38
+ exports.setSelectOptionByValue = setSelectOptionByValue;
39
+ exports.setSelectOptionByIndex = setSelectOptionByIndex;
40
+ exports.composePath = composePath;
41
+ exports.waitForWindowObject = waitForWindowObject;
42
+ exports.waitFor = waitFor;
43
+ exports.waitForAsync = waitForAsync;
44
+ exports.delayAsync = delayAsync;
45
+ exports.addStyleSheet = addStyleSheet;
46
+ exports.createStylesheet = createStylesheet;
47
+ exports.createHtmlElement = createHtmlElement;
48
+ exports.isInsideIFrame = isInsideIFrame;
49
+ exports.isIFrameAccessible = isIFrameAccessible;
50
+ exports.HTMLEncode = HTMLEncode;
51
+ exports.HTMLDecode = HTMLDecode;
52
+ exports.ScriptEncode = ScriptEncode;
53
+ exports.addEventListeners = addEventListeners;
54
+ exports.debounce = debounce;
55
+ exports.interval = interval;
56
+ exports.throttle = throttle;
57
+ exports.OnWindowResize = OnWindowResize;
58
+ exports.dispatchCustomEvent = dispatchCustomEvent;
59
+ exports.addStyleElement = addStyleElement;
60
+ exports.getReactInstanceFromElement = getReactInstanceFromElement;
61
+ exports.registerUrlChanged = registerUrlChanged;
62
+ exports.DisableAnchorIntercept = DisableAnchorIntercept;
63
+ exports.DisableAnchorInterceptInHtml = DisableAnchorInterceptInHtml;
64
+ exports.DisableAnchorInterceptInElement = DisableAnchorInterceptInElement;
65
+ exports.isChildOf = isChildOf;
66
+ exports.findAcestor = findAcestor;
67
+ exports.loadModernFormsCSS = loadModernFormsCSS;
68
+ exports.showLoadingOverlay = showLoadingOverlay;
69
+ exports.hideLoadingOverlay = hideLoadingOverlay;
70
+ exports.getLoadingOverlayHtml = getLoadingOverlayHtml;
71
+ exports.getUniqueElementId = getUniqueElementId;
72
+ exports.stopEvent = stopEvent;
73
+ exports.getCSSVariableValue = getCSSVariableValue;
74
+ exports.convertImageToBase64 = convertImageToBase64;
5
75
  const collections_base_1 = require("./collections.base");
6
76
  const images_1 = require("./images");
7
77
  const objects_1 = require("./objects");
@@ -46,14 +116,12 @@ function triggerNativeEvent(ele, eventName) {
46
116
  ele.dispatchEvent(evt);
47
117
  }
48
118
  }
49
- exports.triggerNativeEvent = triggerNativeEvent;
50
119
  function addEventHandler(elm, event, handler) {
51
120
  if ((0, typecheckers_1.isUndefined)(elm.addEventListener)) //IE8
52
121
  elm.attachEvent("on" + event, handler);
53
122
  else
54
123
  elm.addEventListener(event, handler, false);
55
124
  }
56
- exports.addEventHandler = addEventHandler;
57
125
  const saveFileLinkId = "kwizcom_download_link_tmp";
58
126
  /** prompts user to save/download a text file */
59
127
  function saveFile(fileName, fileData, type) {
@@ -88,7 +156,6 @@ function saveFile(fileName, fileData, type) {
88
156
  }, 200);
89
157
  }
90
158
  }
91
- exports.saveFile = saveFile;
92
159
  function saveZipFile(fileName, fileDataBase64) {
93
160
  let link = document.getElementById(saveFileLinkId);
94
161
  if (link) {
@@ -111,7 +178,6 @@ function saveZipFile(fileName, fileDataBase64) {
111
178
  link.click();
112
179
  }, 200);
113
180
  }
114
- exports.saveZipFile = saveZipFile;
115
181
  /** force browser to download instead of opening a file */
116
182
  function downloadFile(url) {
117
183
  var link = document.createElement('a');
@@ -124,7 +190,6 @@ function downloadFile(url) {
124
190
  link.click();
125
191
  document.body.removeChild(link);
126
192
  }
127
- exports.downloadFile = downloadFile;
128
193
  function copyTextToClipboard(text, multiline) {
129
194
  var input = document.createElement(multiline ? "textarea" : "input");
130
195
  input.value = text;
@@ -136,7 +201,6 @@ function copyTextToClipboard(text, multiline) {
136
201
  input.remove();
137
202
  return copied;
138
203
  }
139
- exports.copyTextToClipboard = copyTextToClipboard;
140
204
  /** copies the text of an element to the clipboard. if not supported by browser - will return false so caller must check and show
141
205
  * a message to the user asking him to hit ctrl+c
142
206
  */
@@ -181,7 +245,6 @@ function copyToClipboard(el) {
181
245
  }
182
246
  return false;
183
247
  }
184
- exports.copyToClipboard = copyToClipboard;
185
248
  function pasteTextAtCursor(textArea, text) {
186
249
  if ((0, typecheckers_1.isNullOrEmptyString)(text))
187
250
  return;
@@ -195,19 +258,16 @@ function pasteTextAtCursor(textArea, text) {
195
258
  textArea.selectionStart = selectionStart + text.length;
196
259
  textArea.selectionEnd = selectionStart + text.length;
197
260
  }
198
- exports.pasteTextAtCursor = pasteTextAtCursor;
199
261
  /** wraps the html in a div element and returns it */
200
262
  function elementFromHtml(html) {
201
263
  var d = document.createElement("div");
202
264
  d.innerHTML = html;
203
265
  return d;
204
266
  }
205
- exports.elementFromHtml = elementFromHtml;
206
267
  function HtmlTextContents(htmlElement) {
207
268
  let innerText = ((0, typecheckers_1.isString)(htmlElement) ? elementFromHtml(htmlElement) : htmlElement).innerText;
208
269
  return (0, strings_1.stripRichTextWhitespace)(innerText.replace(/\n/g, " ").replace(/ {2}/g, " "));
209
270
  }
210
- exports.HtmlTextContents = HtmlTextContents;
211
271
  function registerDOMContentLoadedListener(doc) {
212
272
  return new Promise((resolve, reject) => {
213
273
  doc = doc || document;
@@ -225,7 +285,6 @@ function registerDOMContentLoadedListener(doc) {
225
285
  }
226
286
  });
227
287
  }
228
- exports.registerDOMContentLoadedListener = registerDOMContentLoadedListener;
229
288
  function registerDocumentLoadComplete(doc) {
230
289
  return new Promise((resolve, reject) => {
231
290
  doc = doc || document;
@@ -245,7 +304,6 @@ function registerDocumentLoadComplete(doc) {
245
304
  }
246
305
  });
247
306
  }
248
- exports.registerDocumentLoadComplete = registerDocumentLoadComplete;
249
307
  /** on modern experience, using navagation does inplace-page update.
250
308
  * document ready, and all windows events will not trigger and global objects will remain.
251
309
  * our app loader will fire this event when the page does that navigation so we can hook up to be notified.
@@ -253,7 +311,6 @@ exports.registerDocumentLoadComplete = registerDocumentLoadComplete;
253
311
  function registerModernInplaceNavigationOnInit(handler) {
254
312
  addEventHandler(document, "kwOnInit", handler);
255
313
  }
256
- exports.registerModernInplaceNavigationOnInit = registerModernInplaceNavigationOnInit;
257
314
  /** Triggers handler when theme changes on a modern page
258
315
  * When the user changes the site's theme, or when navigating to a sub-site, or clicking back
259
316
  * in the browser navigating back to parent site with different theme
@@ -261,7 +318,6 @@ exports.registerModernInplaceNavigationOnInit = registerModernInplaceNavigationO
261
318
  function registerModernThemeChanged(handler) {
262
319
  addEventHandler(document, "kwOnThemeChanged", handler);
263
320
  }
264
- exports.registerModernThemeChanged = registerModernThemeChanged;
265
321
  ;
266
322
  let _DOMChangedObserverDefs = [];
267
323
  function _getDOMChangedObserverDef(ele, ignoreSubTree) {
@@ -367,7 +423,6 @@ function registerDOMChangedObserver(callbackOrHandler, ele) {
367
423
  _DOMChangedObserverDefs.push(newDef);
368
424
  });
369
425
  }
370
- exports.registerDOMChangedObserver = registerDOMChangedObserver;
371
426
  function removeDOMChangedObserver(callbackOrHandler, ele) {
372
427
  let callbackInfo = _getDomObserverCallbackInfo(callbackOrHandler);
373
428
  if (!(0, typecheckers_1.isFunction)(callbackInfo.handler) && (0, typecheckers_1.isNullOrEmptyString)(callbackInfo.key)) {
@@ -416,7 +471,6 @@ function removeDOMChangedObserver(callbackOrHandler, ele) {
416
471
  }
417
472
  });
418
473
  }
419
- exports.removeDOMChangedObserver = removeDOMChangedObserver;
420
474
  function isElementVisible(ele) {
421
475
  //must be a valid element
422
476
  if (!isElement(ele) || !ele.getAttribute) {
@@ -437,7 +491,6 @@ function isElementVisible(ele) {
437
491
  }
438
492
  return false;
439
493
  }
440
- exports.isElementVisible = isElementVisible;
441
494
  function querySelectorAllFirstOrNull(selectors, maintainOrder = false) {
442
495
  if ((0, typecheckers_1.isNullOrUndefined)(selectors)) {
443
496
  return null;
@@ -451,7 +504,6 @@ function querySelectorAllFirstOrNull(selectors, maintainOrder = false) {
451
504
  return (result || null);
452
505
  }
453
506
  }
454
- exports.querySelectorAllFirstOrNull = querySelectorAllFirstOrNull;
455
507
  function querySelectorAllMaintainOrder(selectors, parent) {
456
508
  if ((0, typecheckers_1.isNullOrUndefined)(selectors)) {
457
509
  return null;
@@ -473,7 +525,6 @@ function querySelectorAllMaintainOrder(selectors, parent) {
473
525
  });
474
526
  return eles;
475
527
  }
476
- exports.querySelectorAllMaintainOrder = querySelectorAllMaintainOrder;
477
528
  function getScrollParent(node) {
478
529
  if (node === null) {
479
530
  return null;
@@ -485,7 +536,6 @@ function getScrollParent(node) {
485
536
  return getScrollParent(node.parentNode);
486
537
  }
487
538
  }
488
- exports.getScrollParent = getScrollParent;
489
539
  var _scrollbarWidth = -1;
490
540
  function getScrollbarWidth() {
491
541
  if (_scrollbarWidth < 0) {
@@ -508,7 +558,6 @@ function getScrollbarWidth() {
508
558
  }
509
559
  return _scrollbarWidth;
510
560
  }
511
- exports.getScrollbarWidth = getScrollbarWidth;
512
561
  function cumulativeOffset(element) {
513
562
  var top = 0, left = 0;
514
563
  do {
@@ -521,7 +570,6 @@ function cumulativeOffset(element) {
521
570
  left: left
522
571
  };
523
572
  }
524
- exports.cumulativeOffset = cumulativeOffset;
525
573
  function computedStyleToInlineStyle(elm, options = { recursive: true, removeClassNames: true }) {
526
574
  if (!elm) {
527
575
  return;
@@ -538,7 +586,6 @@ function computedStyleToInlineStyle(elm, options = { recursive: true, removeClas
538
586
  }
539
587
  elm.setAttribute("style", computedStyle.cssText);
540
588
  }
541
- exports.computedStyleToInlineStyle = computedStyleToInlineStyle;
542
589
  function getPageHidden(document = window.document) {
543
590
  var hiddenPropName;
544
591
  if (typeof document.hidden !== "undefined") {
@@ -553,7 +600,6 @@ function getPageHidden(document = window.document) {
553
600
  }
554
601
  return (0, typecheckers_1.isString)(hiddenPropName) ? document[hiddenPropName] : false;
555
602
  }
556
- exports.getPageHidden = getPageHidden;
557
603
  function getAnimationFlags() {
558
604
  var isSupported = false, animationstring = 'animation', keyframeprefix = '', domPrefixes = 'Webkit Moz O ms Khtml'.split(' '), pfx = '', elem = document.createElement('div');
559
605
  if (elem.style.animationName !== undefined) {
@@ -577,7 +623,6 @@ function getAnimationFlags() {
577
623
  prefix: pfx
578
624
  };
579
625
  }
580
- exports.getAnimationFlags = getAnimationFlags;
581
626
  function getAnimationEndEventName() {
582
627
  var animations = {
583
628
  "animation": "animationend",
@@ -590,15 +635,12 @@ function getAnimationEndEventName() {
590
635
  return animations[flags.animationName];
591
636
  }
592
637
  }
593
- exports.getAnimationEndEventName = getAnimationEndEventName;
594
638
  function isElement(ele) {
595
639
  return !(0, typecheckers_1.isNullOrUndefined)(ele) && (ele.nodeType === 1 || ele instanceof Element);
596
640
  }
597
- exports.isElement = isElement;
598
641
  function isNode(ele) {
599
642
  return !(0, typecheckers_1.isNullOrUndefined)(ele) && ((ele.nodeName && ele.nodeType >= 1 && ele.nodeType <= 12) || ele instanceof Node);
600
643
  }
601
- exports.isNode = isNode;
602
644
  function _eleOrSelectorToElementArray(eleOrSelector) {
603
645
  if ((0, typecheckers_1.isNullOrUndefined)(eleOrSelector)) {
604
646
  return [];
@@ -635,7 +677,6 @@ function emptyHTMLElement(eleOrSelector) {
635
677
  }
636
678
  });
637
679
  }
638
- exports.emptyHTMLElement = emptyHTMLElement;
639
680
  function removeHTMLElement(eleOrSelector) {
640
681
  var elements = _eleOrSelectorToElementArray(eleOrSelector);
641
682
  elements.forEach((ele) => {
@@ -649,7 +690,6 @@ function removeHTMLElement(eleOrSelector) {
649
690
  }
650
691
  });
651
692
  }
652
- exports.removeHTMLElement = removeHTMLElement;
653
693
  function removeAttributeFromHTMLElements(eleOrSelector, attributeName) {
654
694
  var elements = _eleOrSelectorToElementArray(eleOrSelector);
655
695
  elements.forEach((elm) => {
@@ -660,7 +700,6 @@ function removeAttributeFromHTMLElements(eleOrSelector, attributeName) {
660
700
  }
661
701
  });
662
702
  }
663
- exports.removeAttributeFromHTMLElements = removeAttributeFromHTMLElements;
664
703
  function getSelectOptionByValue(selectElement, value) {
665
704
  if ((0, typecheckers_1.isNullOrUndefined)(selectElement) || (0, typecheckers_1.isNullOrUndefined)(value)) {
666
705
  return null;
@@ -670,14 +709,12 @@ function getSelectOptionByValue(selectElement, value) {
670
709
  })[0];
671
710
  return option;
672
711
  }
673
- exports.getSelectOptionByValue = getSelectOptionByValue;
674
712
  function getSelectOptionByIndex(selectElement, index) {
675
713
  if ((0, typecheckers_1.isNullOrUndefined)(selectElement) || !(0, typecheckers_1.isNumeric)(index)) {
676
714
  return null;
677
715
  }
678
716
  return selectElement.options[Number(index)];
679
717
  }
680
- exports.getSelectOptionByIndex = getSelectOptionByIndex;
681
718
  function getSelectedOption(selectElement) {
682
719
  if ((0, typecheckers_1.isNullOrUndefined)(selectElement)) {
683
720
  return null;
@@ -686,7 +723,6 @@ function getSelectedOption(selectElement) {
686
723
  return option.selected;
687
724
  })[0];
688
725
  }
689
- exports.getSelectedOption = getSelectedOption;
690
726
  function setSelectOptionByValue(selectElement, value) {
691
727
  var option = getSelectOptionByValue(selectElement, value);
692
728
  if (option) {
@@ -695,9 +731,8 @@ function setSelectOptionByValue(selectElement, value) {
695
731
  }
696
732
  return null;
697
733
  }
698
- exports.setSelectOptionByValue = setSelectOptionByValue;
699
734
  function setSelectOptionByIndex(selectElement, index) {
700
- if ((0, typecheckers_1.isNullOrUndefined)(selectElement) || (0, typecheckers_1.isNumeric)(index)) {
735
+ if ((0, typecheckers_1.isNullOrUndefined)(selectElement) || !(0, typecheckers_1.isNumeric)(index)) {
701
736
  return null;
702
737
  }
703
738
  var option = selectElement.options[Number(index)];
@@ -707,7 +742,6 @@ function setSelectOptionByIndex(selectElement, index) {
707
742
  }
708
743
  return null;
709
744
  }
710
- exports.setSelectOptionByIndex = setSelectOptionByIndex;
711
745
  function composePath(evt) {
712
746
  var path = ((0, typecheckers_1.isFunction)(evt["composedPath"]) && evt["composedPath"]()) || evt.path, target = evt.target;
713
747
  if (path !== null) {
@@ -730,12 +764,10 @@ function composePath(evt) {
730
764
  }
731
765
  return [target].concat(getParents(target)).concat([window]);
732
766
  }
733
- exports.composePath = composePath;
734
767
  /** timeouts after 10 seconds by default */
735
768
  function waitForWindowObject(typeFullName, windowOrParent, timeout = 10000) {
736
769
  return waitFor(() => !(0, typecheckers_1.isTypeofFullNameNullOrUndefined)(typeFullName, windowOrParent), timeout);
737
770
  }
738
- exports.waitForWindowObject = waitForWindowObject;
739
771
  /** timeouts after 10 seconds by default */
740
772
  function waitFor(checker, timeout = 10000, intervalLength = 50) {
741
773
  return new Promise((resolve, reject) => {
@@ -765,7 +797,6 @@ function waitFor(checker, timeout = 10000, intervalLength = 50) {
765
797
  _retry();
766
798
  });
767
799
  }
768
- exports.waitFor = waitFor;
769
800
  /**
770
801
  * Waits for an async check to return true or times out.
771
802
  * @param checker Async function that returns boolean result.
@@ -785,7 +816,6 @@ async function waitForAsync(checker, timeout = 10000, intervalLength = 50) {
785
816
  }
786
817
  return exists;
787
818
  }
788
- exports.waitForAsync = waitForAsync;
789
819
  /**
790
820
  * An async function that returns after a set delay.
791
821
  * @param delay The delay in milliseconds. Defaults to 500ms.
@@ -797,7 +827,6 @@ function delayAsync(delay = 500) {
797
827
  }, delay);
798
828
  });
799
829
  }
800
- exports.delayAsync = delayAsync;
801
830
  function addStyleSheet(options, doc) {
802
831
  doc = doc || document;
803
832
  var head = doc.head || doc.getElementsByTagName("head")[0];
@@ -806,7 +835,6 @@ function addStyleSheet(options, doc) {
806
835
  head.appendChild(link);
807
836
  }
808
837
  }
809
- exports.addStyleSheet = addStyleSheet;
810
838
  function createStylesheet(options, doc) {
811
839
  doc = doc || document;
812
840
  options = options || {};
@@ -819,7 +847,6 @@ function createStylesheet(options, doc) {
819
847
  };
820
848
  return createHtmlElement("link", options, doc);
821
849
  }
822
- exports.createStylesheet = createStylesheet;
823
850
  function createHtmlElement(tagName, options, doc) {
824
851
  doc = doc || document;
825
852
  var element = doc.createElement(tagName);
@@ -861,7 +888,6 @@ function createHtmlElement(tagName, options, doc) {
861
888
  }
862
889
  return element;
863
890
  }
864
- exports.createHtmlElement = createHtmlElement;
865
891
  function isInsideIFrame(win) {
866
892
  win = win || window;
867
893
  try {
@@ -871,7 +897,6 @@ function isInsideIFrame(win) {
871
897
  return true;
872
898
  }
873
899
  }
874
- exports.isInsideIFrame = isInsideIFrame;
875
900
  function isIFrameAccessible(iframeEle) {
876
901
  try {
877
902
  var location = (iframeEle.contentWindow || iframeEle.contentDocument).location;
@@ -881,7 +906,6 @@ function isIFrameAccessible(iframeEle) {
881
906
  return false;
882
907
  }
883
908
  }
884
- exports.isIFrameAccessible = isIFrameAccessible;
885
909
  function HTMLEncode(d) {
886
910
  if ((0, typecheckers_1.isNullOrEmptyString)(d)) {
887
911
  return "";
@@ -912,31 +936,17 @@ function HTMLEncode(d) {
912
936
  }
913
937
  return result.join("");
914
938
  }
915
- exports.HTMLEncode = HTMLEncode;
916
- function HTMLDecode(a) {
917
- if ((0, typecheckers_1.isNullOrEmptyString)(a)) {
939
+ function HTMLDecode(text) {
940
+ if (text === null || text === "") {
918
941
  return "";
919
942
  }
920
- var e = [/&lt;/g, /&gt;/g, /&quot;/g, /&#39;/g, /&#58;/g, /&#123;/g, /&#125;/g, /&amp;/g];
921
- var f = ["<", ">", '"', "'", ":", "{", "}", "&"];
922
- var d = [];
923
- for (var c = 0; c < a.length; c++) {
924
- var b = a.indexOf("&");
925
- if (b !== -1) {
926
- if (b > 0) {
927
- d.push(a.substr(0, b));
928
- a = a.substr(b);
929
- }
930
- a = a.replace(e[c], f[c]);
931
- }
932
- else {
933
- break;
934
- }
943
+ let entities = [/&lt;/g, /&gt;/g, /&quot;/g, /&#39;/g, /&#58;/g, /&#123;/g, /&#125;/g, /&amp;/g];
944
+ let decodedValues = ["<", ">", '"', "'", ":", "{", "}", "&"];
945
+ for (let c = 0; c < entities.length; c++) {
946
+ text = text.replace(entities[c], decodedValues[c]);
935
947
  }
936
- d.push(a);
937
- return d.join("");
948
+ return text;
938
949
  }
939
- exports.HTMLDecode = HTMLDecode;
940
950
  function ScriptEncode(e) {
941
951
  if (null === e || typeof e === "undefined")
942
952
  return "";
@@ -997,7 +1007,6 @@ function ScriptEncode(e) {
997
1007
  }
998
1008
  return a.join("");
999
1009
  }
1000
- exports.ScriptEncode = ScriptEncode;
1001
1010
  function addEventListeners(eles, events, listener, useCapture = false) {
1002
1011
  if (!(0, typecheckers_1.isFunction)(listener)) {
1003
1012
  return;
@@ -1024,7 +1033,6 @@ function addEventListeners(eles, events, listener, useCapture = false) {
1024
1033
  }
1025
1034
  });
1026
1035
  }
1027
- exports.addEventListeners = addEventListeners;
1028
1036
  /** defer calling this function multiple times within X time frame to execute only once after the last call */
1029
1037
  function debounce(callback, ms, thisArg = null) {
1030
1038
  let timeoutId = null;
@@ -1036,13 +1044,11 @@ function debounce(callback, ms, thisArg = null) {
1036
1044
  };
1037
1045
  return func;
1038
1046
  }
1039
- exports.debounce = debounce;
1040
1047
  /** call a funciton X number of times, on a specific interval. */
1041
1048
  function interval(callback, msBetweenCalls, numberOfTimesToCall, thisArg = null) {
1042
1049
  for (let index = 1; index <= numberOfTimesToCall; index++)
1043
1050
  window.setTimeout(() => { callback.apply(thisArg); }, msBetweenCalls * index);
1044
1051
  }
1045
- exports.interval = interval;
1046
1052
  /** throttle repeated calls to callback, makes sure it is only called once per *wait* at most, but won't defer it for longer than that.
1047
1053
  * Unlike debounce, which can end up waiting for 5 minutes if it is being called repeatedly.
1048
1054
  */
@@ -1082,7 +1088,6 @@ function throttle(callback, wait = 250, thisArg = null) {
1082
1088
  };
1083
1089
  return wrapper;
1084
1090
  }
1085
- exports.throttle = throttle;
1086
1091
  var _resizeHandlers = {};
1087
1092
  var _resizeRegistered = false;
1088
1093
  function _handleResize() {
@@ -1104,7 +1109,6 @@ function OnWindowResize(handlerID, handler) {
1104
1109
  addEventHandler(window, "resize", debounce(_handleResize, 250));
1105
1110
  }
1106
1111
  }
1107
- exports.OnWindowResize = OnWindowResize;
1108
1112
  function dispatchCustomEvent(obj, eventName, params = { bubbles: false, cancelable: false, detail: null }) {
1109
1113
  if ((0, typecheckers_1.isNullOrUndefined)(obj) || !(0, typecheckers_1.isFunction)(obj.dispatchEvent)) {
1110
1114
  return;
@@ -1122,7 +1126,6 @@ function dispatchCustomEvent(obj, eventName, params = { bubbles: false, cancelab
1122
1126
  }
1123
1127
  obj.dispatchEvent(event);
1124
1128
  }
1125
- exports.dispatchCustomEvent = dispatchCustomEvent;
1126
1129
  function addStyleElement(cssText, id) {
1127
1130
  var parent = document.head || document.getElementsByTagName("head")[0] || document;
1128
1131
  let cssElm = !(0, typecheckers_1.isNullOrEmptyString)(id) ? document.getElementById(id) : null;
@@ -1135,7 +1138,6 @@ function addStyleElement(cssText, id) {
1135
1138
  cssElm.innerHTML = cssText;
1136
1139
  return cssElm;
1137
1140
  }
1138
- exports.addStyleElement = addStyleElement;
1139
1141
  function getReactInstanceFromElement(node) {
1140
1142
  if (!(0, typecheckers_1.isNullOrUndefined)(node)) {
1141
1143
  for (const key in node) {
@@ -1146,7 +1148,6 @@ function getReactInstanceFromElement(node) {
1146
1148
  }
1147
1149
  return null;
1148
1150
  }
1149
- exports.getReactInstanceFromElement = getReactInstanceFromElement;
1150
1151
  /** registers a listener to when the browser url changed */
1151
1152
  function registerUrlChanged(callback) {
1152
1153
  if (!_global.registerUrlChangedCallbacks.includes(callback)) {
@@ -1178,25 +1179,21 @@ function registerUrlChanged(callback) {
1178
1179
  }
1179
1180
  }
1180
1181
  }
1181
- exports.registerUrlChanged = registerUrlChanged;
1182
1182
  exports.DisableAnchorInterceptAttribute = "data-interception";
1183
1183
  exports.DisableAnchorInterceptValue = "off";
1184
1184
  function DisableAnchorIntercept(link) {
1185
1185
  link.setAttribute(exports.DisableAnchorInterceptAttribute, exports.DisableAnchorInterceptValue);
1186
1186
  }
1187
- exports.DisableAnchorIntercept = DisableAnchorIntercept;
1188
1187
  /** go over HTML and add data-interception="off" to all <a> tags. */
1189
1188
  function DisableAnchorInterceptInHtml(html) {
1190
1189
  return html.replace(/<a /g, `<a ${exports.DisableAnchorInterceptAttribute}="${exports.DisableAnchorInterceptValue}" `);
1191
1190
  }
1192
- exports.DisableAnchorInterceptInHtml = DisableAnchorInterceptInHtml;
1193
1191
  /** adding the disable attribute to all a links in the container that do not already have them. returning the number of links that were disabled (not ones that were already disabled before) */
1194
1192
  function DisableAnchorInterceptInElement(container) {
1195
1193
  var links = container.querySelectorAll(`a:not([${exports.DisableAnchorInterceptAttribute}='${exports.DisableAnchorInterceptValue}'])`);
1196
1194
  links.forEach(link => DisableAnchorIntercept(link));
1197
1195
  return links.length;
1198
1196
  }
1199
- exports.DisableAnchorInterceptInElement = DisableAnchorInterceptInElement;
1200
1197
  function isChildOf(node, parent) {
1201
1198
  let classes = ((0, typecheckers_1.isNotEmptyString)(parent.class) ? [parent.class] : (0, typecheckers_1.isNotEmptyArray)(parent.class) ? parent.class : []).map(c => `.${c}`);
1202
1199
  let ids = ((0, typecheckers_1.isNotEmptyString)(parent.id) ? [parent.id] : (0, typecheckers_1.isNotEmptyArray)(parent.id) ? parent.id : []).map(id => `#${id}`);
@@ -1209,7 +1206,6 @@ function isChildOf(node, parent) {
1209
1206
  else
1210
1207
  return false;
1211
1208
  }
1212
- exports.isChildOf = isChildOf;
1213
1209
  function findAcestor(ele, predicate) {
1214
1210
  if (!isElement(ele) || !(0, typecheckers_1.isFunction)(predicate)) {
1215
1211
  return null;
@@ -1222,7 +1218,6 @@ function findAcestor(ele, predicate) {
1222
1218
  }
1223
1219
  return null;
1224
1220
  }
1225
- exports.findAcestor = findAcestor;
1226
1221
  function loadModernFormsCSS() {
1227
1222
  let styleElm = document.getElementById('kw_modernui_css');
1228
1223
  if (!styleElm) {
@@ -1233,7 +1228,6 @@ function loadModernFormsCSS() {
1233
1228
  document.head.appendChild(styleElm);
1234
1229
  }
1235
1230
  }
1236
- exports.loadModernFormsCSS = loadModernFormsCSS;
1237
1231
  function showLoadingOverlay(elm, options) {
1238
1232
  let overlay = elm.querySelector('.kw-loading-overlay');
1239
1233
  if (!overlay) {
@@ -1255,29 +1249,24 @@ function showLoadingOverlay(elm, options) {
1255
1249
  overlay.innerHTML = options && options.innerHtml || `<img src="${images_1.LOGO_ANIM}" style="max-width: 30%;max-height: 30%;">`;
1256
1250
  overlay.style.backgroundColor = options && options.bgColor || "white";
1257
1251
  }
1258
- exports.showLoadingOverlay = showLoadingOverlay;
1259
1252
  function hideLoadingOverlay(elm) {
1260
1253
  if (isElement(elm)) {
1261
1254
  let overlays = Array.from(elm.querySelectorAll('.kw-loading-overlay'));
1262
1255
  removeHTMLElement(overlays);
1263
1256
  }
1264
1257
  }
1265
- exports.hideLoadingOverlay = hideLoadingOverlay;
1266
1258
  function getLoadingOverlayHtml(options) {
1267
1259
  let overlay = document.createElement("div");
1268
1260
  showLoadingOverlay(overlay, options);
1269
1261
  return overlay.innerHTML;
1270
1262
  }
1271
- exports.getLoadingOverlayHtml = getLoadingOverlayHtml;
1272
1263
  function getUniqueElementId(id = "") {
1273
1264
  return `${id}${(0, random_1.getUniqueId)()}`;
1274
1265
  }
1275
- exports.getUniqueElementId = getUniqueElementId;
1276
1266
  function stopEvent(e) {
1277
1267
  e.stopPropagation && e.stopPropagation();
1278
1268
  e.preventDefault && e.preventDefault();
1279
1269
  }
1280
- exports.stopEvent = stopEvent;
1281
1270
  /** send in --color or var(--color) and get the computed value for an element */
1282
1271
  function getCSSVariableValue(value, elm = document.body) {
1283
1272
  if (value.startsWith("var("))
@@ -1290,7 +1279,6 @@ function getCSSVariableValue(value, elm = document.body) {
1290
1279
  }
1291
1280
  return value;
1292
1281
  }
1293
- exports.getCSSVariableValue = getCSSVariableValue;
1294
1282
  /**
1295
1283
  * Converts an HTMLImageElement/SVGImageElement to base 64 and resizes the image to the exact dimensions of the element.
1296
1284
  * The following image types are supported: jpg, jpeg, gif, png, webp, bmp
@@ -1361,5 +1349,4 @@ async function convertImageToBase64(imgEle, quality = "medium") {
1361
1349
  crossOriginImg.src = src;
1362
1350
  });
1363
1351
  }
1364
- exports.convertImageToBase64 = convertImageToBase64;
1365
1352
  //# sourceMappingURL=browser.js.map