ngx-sfc-common 0.0.4 → 0.0.6

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 (129) hide show
  1. package/_ngx-sfc-common.styles.scss +25 -0
  2. package/esm2020/lib/components/button/button.component.mjs +11 -10
  3. package/esm2020/lib/components/checkmark/checkmark-type.enum.mjs +6 -0
  4. package/esm2020/lib/components/checkmark/checkmark.component.mjs +24 -11
  5. package/esm2020/lib/components/close/close.component.mjs +3 -3
  6. package/esm2020/lib/components/delimeter/delimeter.component.mjs +3 -3
  7. package/esm2020/lib/components/dots/dots.component.mjs +3 -3
  8. package/esm2020/lib/components/hamburger/hamburger.component.mjs +3 -3
  9. package/esm2020/lib/components/index.mjs +7 -2
  10. package/esm2020/lib/components/load-container/load-container.component.mjs +161 -0
  11. package/esm2020/lib/components/load-container/load-container.constants.mjs +5 -0
  12. package/esm2020/lib/components/load-container/load-container.enum.mjs +6 -0
  13. package/esm2020/lib/components/load-container/models/load-container.model.mjs +2 -0
  14. package/esm2020/lib/components/load-container/models/load-more-parameters.model.mjs +2 -0
  15. package/esm2020/lib/components/load-container/models/load-more.model.mjs +2 -0
  16. package/esm2020/lib/components/load-container/service/load-more.service.mjs +27 -0
  17. package/esm2020/lib/components/load-more-button/load-more-button.component.mjs +31 -0
  18. package/esm2020/lib/components/loader/bounce/bounce-loader.component.mjs +3 -3
  19. package/esm2020/lib/components/loader/circle/circle-loader.component.mjs +3 -3
  20. package/esm2020/lib/components/loader/loader-base.component.mjs +3 -3
  21. package/esm2020/lib/components/loader/service/loader.service.mjs +7 -7
  22. package/esm2020/lib/components/modal/directive/click/modal-open-on-click.directive.mjs +48 -0
  23. package/esm2020/lib/components/modal/directive/open/modal-open.directive.mjs +29 -0
  24. package/esm2020/lib/components/modal/footer/default/default-modal-footer.component.mjs +7 -7
  25. package/esm2020/lib/components/modal/header/default/default-modal-header.component.mjs +6 -6
  26. package/esm2020/lib/components/modal/modal.component.mjs +5 -5
  27. package/esm2020/lib/components/modal/service/modal.service.mjs +4 -4
  28. package/esm2020/lib/components/pagination/pagination.component.mjs +7 -7
  29. package/esm2020/lib/components/pagination/service/pagination.service.mjs +3 -3
  30. package/esm2020/lib/components/sorting/service/sorting.service.mjs +3 -3
  31. package/esm2020/lib/components/sorting/sorting.component.mjs +5 -5
  32. package/esm2020/lib/components/template-content/template-content.component.mjs +5 -5
  33. package/esm2020/lib/components/toggle-switcher/toggle-switcher.component.mjs +13 -7
  34. package/esm2020/lib/components/tooltip/tooltip.component.mjs +4 -4
  35. package/esm2020/lib/constants/common.constants.mjs +2 -1
  36. package/esm2020/lib/constants/date-time.constants.mjs +3 -1
  37. package/esm2020/lib/constants/file.constants.mjs +2 -0
  38. package/esm2020/lib/constants/index.mjs +1 -1
  39. package/esm2020/lib/directives/click-outside/click-outside.directive.mjs +4 -4
  40. package/esm2020/lib/directives/component-size/component-size.directive.mjs +26 -13
  41. package/esm2020/lib/directives/destroy-parent/destroy-parent.directive.mjs +3 -3
  42. package/esm2020/lib/directives/dom-changes/dom-changes.directive.mjs +32 -0
  43. package/esm2020/lib/directives/index.mjs +4 -1
  44. package/esm2020/lib/directives/mouse-down/mouse-down.directive.mjs +3 -3
  45. package/esm2020/lib/directives/scroll-into-view/scroll-into-view.directive.mjs +29 -0
  46. package/esm2020/lib/directives/scroll-tracker/scroll-tracker.directive.mjs +39 -0
  47. package/esm2020/lib/directives/show-hide-element/show-hide-element.directive.mjs +3 -3
  48. package/esm2020/lib/directives/template-reference/template-reference.directive.mjs +3 -3
  49. package/esm2020/lib/directives/throw-element-on-hover/throw-element-on-hover.directive.mjs +3 -3
  50. package/esm2020/lib/enums/index.mjs +2 -1
  51. package/esm2020/lib/enums/sequence.enum.mjs +9 -0
  52. package/esm2020/lib/enums/ui.enum.mjs +4 -1
  53. package/esm2020/lib/ngx-sfc-common.module.mjs +47 -16
  54. package/esm2020/lib/pipes/index.mjs +2 -0
  55. package/esm2020/lib/pipes/switch-multi-case/switch-multi-case.pipe.mjs +16 -0
  56. package/esm2020/lib/services/document-ref.service.mjs +3 -3
  57. package/esm2020/lib/services/resize.service.mjs +3 -3
  58. package/esm2020/lib/services/window-ref.service.mjs +3 -3
  59. package/esm2020/lib/utils/collections.utils.mjs +30 -3
  60. package/esm2020/lib/utils/common.utils.mjs +9 -2
  61. package/esm2020/lib/utils/date-time.utils.mjs +57 -10
  62. package/esm2020/lib/utils/file.utils.mjs +4 -3
  63. package/esm2020/lib/utils/index.mjs +5 -5
  64. package/esm2020/lib/utils/ui.utils.mjs +9 -1
  65. package/esm2020/public-api.mjs +2 -1
  66. package/fesm2015/ngx-sfc-common.mjs +661 -156
  67. package/fesm2015/ngx-sfc-common.mjs.map +1 -1
  68. package/fesm2020/ngx-sfc-common.mjs +661 -156
  69. package/fesm2020/ngx-sfc-common.mjs.map +1 -1
  70. package/{ngx-sfc-common.d.ts → index.d.ts} +0 -0
  71. package/lib/components/button/button.component.d.ts +1 -1
  72. package/lib/components/checkmark/checkmark-type.enum.d.ts +4 -0
  73. package/lib/components/checkmark/checkmark.component.d.ts +5 -2
  74. package/lib/components/close/close.component.d.ts +1 -1
  75. package/lib/components/delimeter/delimeter.component.d.ts +1 -1
  76. package/lib/components/dots/dots.component.d.ts +1 -1
  77. package/lib/components/hamburger/hamburger.component.d.ts +1 -1
  78. package/lib/components/index.d.ts +11 -1
  79. package/lib/components/load-container/load-container.component.d.ts +49 -0
  80. package/lib/components/load-container/load-container.constants.d.ts +4 -0
  81. package/lib/components/load-container/load-container.enum.d.ts +4 -0
  82. package/lib/components/load-container/models/load-container.model.d.ts +11 -0
  83. package/lib/components/load-container/models/load-more-parameters.model.d.ts +4 -0
  84. package/lib/components/load-container/models/load-more.model.d.ts +4 -0
  85. package/lib/components/load-container/service/load-more.service.d.ts +12 -0
  86. package/lib/components/load-more-button/load-more-button.component.d.ts +12 -0
  87. package/lib/components/loader/bounce/bounce-loader.component.d.ts +1 -1
  88. package/lib/components/loader/circle/circle-loader.component.d.ts +1 -1
  89. package/lib/components/loader/loader-base.component.d.ts +1 -1
  90. package/lib/components/modal/directive/{modal-open-on-click.directive.d.ts → click/modal-open-on-click.directive.d.ts} +2 -2
  91. package/lib/components/modal/directive/open/modal-open.directive.d.ts +14 -0
  92. package/lib/components/modal/footer/default/default-modal-footer.component.d.ts +1 -1
  93. package/lib/components/modal/header/default/default-modal-header.component.d.ts +1 -1
  94. package/lib/components/modal/modal.component.d.ts +1 -1
  95. package/lib/components/modal/service/modal.service.d.ts +1 -1
  96. package/lib/components/pagination/pagination.component.d.ts +1 -1
  97. package/lib/components/sorting/sorting.component.d.ts +1 -1
  98. package/lib/components/template-content/template-content.component.d.ts +1 -1
  99. package/lib/components/toggle-switcher/toggle-switcher.component.d.ts +2 -1
  100. package/lib/components/tooltip/tooltip.component.d.ts +1 -1
  101. package/lib/constants/common.constants.d.ts +1 -0
  102. package/lib/constants/date-time.constants.d.ts +2 -0
  103. package/lib/constants/file.constants.d.ts +1 -0
  104. package/lib/constants/index.d.ts +1 -0
  105. package/lib/directives/click-outside/click-outside.directive.d.ts +1 -1
  106. package/lib/directives/component-size/component-size.directive.d.ts +8 -3
  107. package/lib/directives/destroy-parent/destroy-parent.directive.d.ts +1 -1
  108. package/lib/directives/dom-changes/dom-changes.directive.d.ts +12 -0
  109. package/lib/directives/index.d.ts +3 -0
  110. package/lib/directives/mouse-down/mouse-down.directive.d.ts +1 -1
  111. package/lib/directives/scroll-into-view/scroll-into-view.directive.d.ts +7 -0
  112. package/lib/directives/scroll-tracker/scroll-tracker.directive.d.ts +11 -0
  113. package/lib/directives/show-hide-element/show-hide-element.directive.d.ts +1 -1
  114. package/lib/directives/template-reference/template-reference.directive.d.ts +1 -1
  115. package/lib/directives/throw-element-on-hover/throw-element-on-hover.directive.d.ts +1 -1
  116. package/lib/enums/index.d.ts +1 -0
  117. package/lib/enums/sequence.enum.d.ts +7 -0
  118. package/lib/enums/ui.enum.d.ts +4 -1
  119. package/lib/ngx-sfc-common.module.d.ts +28 -21
  120. package/lib/pipes/index.d.ts +1 -0
  121. package/lib/pipes/switch-multi-case/switch-multi-case.pipe.d.ts +7 -0
  122. package/lib/utils/collections.utils.d.ts +16 -2
  123. package/lib/utils/common.utils.d.ts +5 -0
  124. package/lib/utils/date-time.utils.d.ts +26 -0
  125. package/lib/utils/index.d.ts +4 -4
  126. package/lib/utils/ui.utils.d.ts +6 -0
  127. package/package.json +5 -5
  128. package/public-api.d.ts +1 -0
  129. package/esm2020/lib/components/modal/directive/modal-open-on-click.directive.mjs +0 -50
@@ -31,7 +31,7 @@ export function isAsyncData(data) {
31
31
  * @returns Extended object with new property
32
32
  */
33
33
  export function addPropertyToObject(obj, property, value = null) {
34
- if (!isDefined(property) && !obj.hasOwnProperty(property)) {
34
+ if (isDefined(property) && !obj.hasOwnProperty(property)) {
35
35
  let newObj = {};
36
36
  newObj[property] = value;
37
37
  obj = { ...obj, ...newObj };
@@ -91,4 +91,11 @@ export const nameof = (name) => name;
91
91
  export function isNumeric(number) {
92
92
  return !isNaN(parseFloat(number));
93
93
  }
94
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbW9uLnV0aWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXNmYy1jb21tb24vc3JjL2xpYi91dGlscy9jb21tb24udXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUVsQzs7OztHQUlHO0FBQ0gsTUFBTSxVQUFVLFNBQVMsQ0FBSSxLQUEyQjtJQUNwRCxPQUFVLEtBQUssS0FBSyxTQUFTLElBQU8sS0FBSyxLQUFLLElBQUksQ0FBQztBQUN2RCxDQUFDO0FBRUQ7Ozs7R0FJRztBQUNILE1BQU0sVUFBVSxRQUFRLENBQUMsS0FBVTtJQUMvQixPQUFPLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxJQUFJLE9BQU8sS0FBSyxLQUFLLFFBQVEsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztBQUNwRixDQUFDO0FBRUQ7Ozs7R0FJRztBQUNILE1BQU0sVUFBVSxXQUFXLENBQUMsSUFBUztJQUNqQyxPQUFPLElBQUksWUFBWSxVQUFVLENBQUM7QUFDdEMsQ0FBQztBQUVEOzs7Ozs7R0FNRztBQUNILE1BQU0sVUFBVSxtQkFBbUIsQ0FBQyxHQUFRLEVBQUUsUUFBZ0IsRUFBRSxRQUFhLElBQUk7SUFDN0UsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLEVBQUU7UUFDdkQsSUFBSSxNQUFNLEdBQVEsRUFBRSxDQUFDO1FBQ3JCLE1BQU0sQ0FBQyxRQUFRLENBQUMsR0FBRyxLQUFLLENBQUM7UUFDekIsR0FBRyxHQUFHLEVBQUUsR0FBRyxHQUFHLEVBQUUsR0FBRyxNQUFNLEVBQUUsQ0FBQztLQUMvQjtJQUVELE9BQU8sR0FBRyxDQUFDO0FBQ2YsQ0FBQztBQUVEOzs7O0dBSUc7QUFDSCxNQUFNLFVBQVUsd0JBQXdCLENBQUMsR0FBUSxFQUFFLFFBQWdCO0lBQy9ELElBQUksR0FBRyxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsRUFBRTtRQUM5QixPQUFPLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQztLQUN4QjtBQUNMLENBQUM7QUFFRDs7OztJQUlJO0FBRUo7Ozs7O0dBS0c7QUFDSCxNQUFNLFVBQVUsU0FBUyxDQUFDLE1BQVcsRUFBRSxHQUFHLE9BQWM7SUFDcEQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNO1FBQ2YsT0FBTyxNQUFNLENBQUM7SUFFbEIsTUFBTSxNQUFNLEdBQUcsT0FBTyxDQUFDLEtBQUssRUFBRSxDQUFDO0lBRS9CLElBQUksUUFBUSxDQUFDLE1BQU0sQ0FBQyxJQUFJLFFBQVEsQ0FBQyxNQUFNLENBQUMsRUFBRTtRQUN0QyxLQUFLLE1BQU0sR0FBRyxJQUFJLE1BQU0sRUFBRTtZQUN0QixJQUFJLFFBQVEsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRTtnQkFDdkIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUM7b0JBQUUsTUFBTSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7Z0JBQ3ZELFNBQVMsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEVBQUUsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7YUFDdkM7aUJBQU07Z0JBQ0gsTUFBTSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxFQUFFLE1BQU0sQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUM7YUFDakQ7U0FDSjtLQUNKO0lBRUQsT0FBTyxTQUFTLENBQUMsTUFBTSxFQUFFLEdBQUcsT0FBTyxDQUFDLENBQUM7QUFDekMsQ0FBQztBQUVEOzs7O0dBSUc7QUFDSCxNQUFNLENBQUMsTUFBTSxNQUFNLEdBQUcsQ0FBSSxJQUFhLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQztBQUVqRDs7OztLQUlLO0FBQ0wsTUFBTSxVQUFVLFNBQVMsQ0FBQyxNQUFXO0lBQ2pDLE9BQU8sQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7QUFDdEMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcclxuXHJcbi8qKlxyXG4gKiBSZXR1cm4gdHJ1ZSBpZiB2YWx1ZSBkZWZpbmVkXHJcbiAqIEBwYXJhbSB2YWx1ZSBWYWx1ZSB0byBjaGVja1xyXG4gKiBAcmV0dXJucyBUcnVlIGlmIHZhbHVlIGlzIG5vdCBudWxsIGFuZCBkZWZpbmVkXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gaXNEZWZpbmVkPFQ+KHZhbHVlOiBUIHwgdW5kZWZpbmVkIHwgbnVsbCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIDxUPnZhbHVlICE9PSB1bmRlZmluZWQgJiYgPFQ+dmFsdWUgIT09IG51bGw7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBSZXR1cm4gdHJ1ZSBpZiB2YWx1ZSBpcyBvYmplY3RcclxuICogQHBhcmFtIHZhbHVlIFZhbHVlIHRvIGNoZWNrXHJcbiAqIEByZXR1cm5zIFRydWUgaWYgdmFsdWUgaXMgb2JqZWN0XHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gaXNPYmplY3QodmFsdWU6IGFueSk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIChpc0RlZmluZWQodmFsdWUpICYmIHR5cGVvZiB2YWx1ZSA9PT0gJ29iamVjdCcgJiYgIUFycmF5LmlzQXJyYXkodmFsdWUpKTtcclxufVxyXG5cclxuLyoqXHJcbiAqIFJldHVybiB0cnVlIGlmIGRhdGEgaXMgb2JzZXJ2YWJsZVxyXG4gKiBAcGFyYW0gZGF0YSBPYmplY3QgdG8gY2hlY2tcclxuICogQHJldHVybnMgVHJ1ZSBpZiBkYXRhIGlzIG9ic2VydmFibGVcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBpc0FzeW5jRGF0YShkYXRhOiBhbnkpIHtcclxuICAgIHJldHVybiBkYXRhIGluc3RhbmNlb2YgT2JzZXJ2YWJsZTtcclxufVxyXG5cclxuLyoqXHJcbiAqIFJldHVybiBleHRlbmRlZCBvYmplY3Qgd2l0aCBuZXcgcHJvcGVydHlcclxuICogQHBhcmFtIG9iaiBPYmplY3QgdG8gZXh0ZW5kIGJ5IHByb3BlcnR5XHJcbiAqIEBwYXJhbSBwcm9wZXJ0eSBOZXcgcHJvcGVydHkgbmFtZSBcclxuICogQHBhcmFtIHZhbHVlIFZhbHVlIGZvciBuZXcgcHJvcGVydHlcclxuICogQHJldHVybnMgRXh0ZW5kZWQgb2JqZWN0IHdpdGggbmV3IHByb3BlcnR5XHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gYWRkUHJvcGVydHlUb09iamVjdChvYmo6IGFueSwgcHJvcGVydHk6IHN0cmluZywgdmFsdWU6IGFueSA9IG51bGwpOiBhbnkge1xyXG4gICAgaWYgKCFpc0RlZmluZWQocHJvcGVydHkpICYmICFvYmouaGFzT3duUHJvcGVydHkocHJvcGVydHkpKSB7XHJcbiAgICAgICAgbGV0IG5ld09iajogYW55ID0ge307XHJcbiAgICAgICAgbmV3T2JqW3Byb3BlcnR5XSA9IHZhbHVlO1xyXG4gICAgICAgIG9iaiA9IHsgLi4ub2JqLCAuLi5uZXdPYmogfTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gb2JqO1xyXG59XHJcblxyXG4vKipcclxuICogUmVtb3ZlIHByb3BlcnR5IGZyb20gb2JqZWN0XHJcbiAqIEBwYXJhbSBvYmogT2JqZWN0IGZvciByZW1vdmluZyBwcm9wZXJ0eVxyXG4gKiBAcGFyYW0gcHJvcGVydHkgUHJvcGVydHkgbmFtZSB0byByZW1vdmVcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiByZW1vdmVQcm9wZXJ0eUZyb21PYmplY3Qob2JqOiBhbnksIHByb3BlcnR5OiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIGlmIChvYmouaGFzT3duUHJvcGVydHkocHJvcGVydHkpKSB7XHJcbiAgICAgICAgZGVsZXRlIG9ialtwcm9wZXJ0eV07XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qKlxyXG4gICogRGVlcCBtZXJnZSBvYmplY3Qgd2l0aCBvdGhlcnNcclxuICAqIEBwYXJhbSB0YXJnZXQgT2JqZWN0IHRvIG1lcmdlXHJcbiAgKiBAcGFyYW0gc291cmNlcyBcclxuICAqL1xyXG5cclxuLyoqXHJcbiAqIERlZXAgbWVyZ2Ugb2JqZWN0IHdpdGggb3RoZXJzXHJcbiAqIEBwYXJhbSB0YXJnZXQgIE9iamVjdCB0byBtZXJnZVxyXG4gKiBAcGFyYW0gc291cmNlcyBPYmplY3RzIHRvIGJlIG1lcmdlZCB3aXRoIHRhcmdldFxyXG4gKiBAcmV0dXJucyBNZXJnZWQgb2JqZWN0XHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gbWVyZ2VEZWVwKHRhcmdldDogYW55LCAuLi5zb3VyY2VzOiBhbnlbXSk6IGFueSB7XHJcbiAgICBpZiAoIXNvdXJjZXMubGVuZ3RoKVxyXG4gICAgICAgIHJldHVybiB0YXJnZXQ7XHJcblxyXG4gICAgY29uc3Qgc291cmNlID0gc291cmNlcy5zaGlmdCgpO1xyXG5cclxuICAgIGlmIChpc09iamVjdCh0YXJnZXQpICYmIGlzT2JqZWN0KHNvdXJjZSkpIHtcclxuICAgICAgICBmb3IgKGNvbnN0IGtleSBpbiBzb3VyY2UpIHtcclxuICAgICAgICAgICAgaWYgKGlzT2JqZWN0KHNvdXJjZVtrZXldKSkge1xyXG4gICAgICAgICAgICAgICAgaWYgKCF0YXJnZXRba2V5XSkgT2JqZWN0LmFzc2lnbih0YXJnZXQsIHsgW2tleV06IHt9IH0pO1xyXG4gICAgICAgICAgICAgICAgbWVyZ2VEZWVwKHRhcmdldFtrZXldLCBzb3VyY2Vba2V5XSk7XHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICBPYmplY3QuYXNzaWduKHRhcmdldCwgeyBba2V5XTogc291cmNlW2tleV0gfSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIG1lcmdlRGVlcCh0YXJnZXQsIC4uLnNvdXJjZXMpO1xyXG59XHJcblxyXG4vKipcclxuICogR2V0IHR5cGUncyBwcm9wZXJ0eSBuYW1lIHNhZmV0eVxyXG4gKiBAcGFyYW0gbmFtZSBLZXlPZiBwcm9wZXJ0eVxyXG4gKiBAcmV0dXJucyBUeXBlJ3MgcHJvcGVydHkgbmFtZVxyXG4gKi9cclxuZXhwb3J0IGNvbnN0IG5hbWVvZiA9IDxUPihuYW1lOiBrZXlvZiBUKSA9PiBuYW1lO1xyXG5cclxuLyoqXHJcbiAgICogRGV0ZXJtaW5lcyBpZiB0aGUgaW5wdXQgaXMgYSBOdW1iZXIgb3Igc29tZXRoaW5nIHRoYXQgY2FuIGJlIGNvZXJjZWQgdG8gYSBOdW1iZXJcclxuICAgKiBAcGFyYW0gLSBUaGUgaW5wdXQgdG8gYmUgdGVzdGVkXHJcbiAgICogQHJldHVybnMgLSBBbiBpbmRpY2F0aW9uIGlmIHRoZSBpbnB1dCBpcyBhIE51bWJlciBvciBjYW4gYmUgY29lcmNlZCB0byBhIE51bWJlclxyXG4gICAqL1xyXG5leHBvcnQgZnVuY3Rpb24gaXNOdW1lcmljKG51bWJlcjogYW55KTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gIWlzTmFOKHBhcnNlRmxvYXQobnVtYmVyKSk7XHJcbn0iXX0=
94
+ /**
95
+ * Return true if current browser is Chrome
96
+ * @returns If current browser is Chrome
97
+ */
98
+ export function isChromeBrowser() {
99
+ return /Chrome/.test(navigator.userAgent) && /Google Inc/.test(navigator.vendor);
100
+ }
101
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbW9uLnV0aWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXNmYy1jb21tb24vc3JjL2xpYi91dGlscy9jb21tb24udXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUVsQzs7OztHQUlHO0FBQ0gsTUFBTSxVQUFVLFNBQVMsQ0FBSSxLQUEyQjtJQUNwRCxPQUFVLEtBQUssS0FBSyxTQUFTLElBQU8sS0FBSyxLQUFLLElBQUksQ0FBQztBQUN2RCxDQUFDO0FBRUQ7Ozs7R0FJRztBQUNILE1BQU0sVUFBVSxRQUFRLENBQUMsS0FBVTtJQUMvQixPQUFPLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxJQUFJLE9BQU8sS0FBSyxLQUFLLFFBQVEsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztBQUNwRixDQUFDO0FBRUQ7Ozs7R0FJRztBQUNILE1BQU0sVUFBVSxXQUFXLENBQUMsSUFBUztJQUNqQyxPQUFPLElBQUksWUFBWSxVQUFVLENBQUM7QUFDdEMsQ0FBQztBQUVEOzs7Ozs7R0FNRztBQUNILE1BQU0sVUFBVSxtQkFBbUIsQ0FBQyxHQUFRLEVBQUUsUUFBZ0IsRUFBRSxRQUFhLElBQUk7SUFDN0UsSUFBSSxTQUFTLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxFQUFFO1FBQ3RELElBQUksTUFBTSxHQUFRLEVBQUUsQ0FBQztRQUNyQixNQUFNLENBQUMsUUFBUSxDQUFDLEdBQUcsS0FBSyxDQUFDO1FBQ3pCLEdBQUcsR0FBRyxFQUFFLEdBQUcsR0FBRyxFQUFFLEdBQUcsTUFBTSxFQUFFLENBQUM7S0FDL0I7SUFFRCxPQUFPLEdBQUcsQ0FBQztBQUNmLENBQUM7QUFFRDs7OztHQUlHO0FBQ0gsTUFBTSxVQUFVLHdCQUF3QixDQUFDLEdBQVEsRUFBRSxRQUFnQjtJQUMvRCxJQUFJLEdBQUcsQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLEVBQUU7UUFDOUIsT0FBTyxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUM7S0FDeEI7QUFDTCxDQUFDO0FBRUQ7Ozs7SUFJSTtBQUVKOzs7OztHQUtHO0FBQ0gsTUFBTSxVQUFVLFNBQVMsQ0FBQyxNQUFXLEVBQUUsR0FBRyxPQUFjO0lBQ3BELElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTTtRQUNmLE9BQU8sTUFBTSxDQUFDO0lBRWxCLE1BQU0sTUFBTSxHQUFHLE9BQU8sQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUUvQixJQUFJLFFBQVEsQ0FBQyxNQUFNLENBQUMsSUFBSSxRQUFRLENBQUMsTUFBTSxDQUFDLEVBQUU7UUFDdEMsS0FBSyxNQUFNLEdBQUcsSUFBSSxNQUFNLEVBQUU7WUFDdEIsSUFBSSxRQUFRLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUU7Z0JBQ3ZCLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDO29CQUFFLE1BQU0sQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO2dCQUN2RCxTQUFTLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxFQUFFLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO2FBQ3ZDO2lCQUFNO2dCQUNILE1BQU0sQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsRUFBRSxNQUFNLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDO2FBQ2pEO1NBQ0o7S0FDSjtJQUVELE9BQU8sU0FBUyxDQUFDLE1BQU0sRUFBRSxHQUFHLE9BQU8sQ0FBQyxDQUFDO0FBQ3pDLENBQUM7QUFFRDs7OztHQUlHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sTUFBTSxHQUFHLENBQUksSUFBYSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUM7QUFFakQ7Ozs7S0FJSztBQUNMLE1BQU0sVUFBVSxTQUFTLENBQUMsTUFBVztJQUNqQyxPQUFPLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO0FBQ3RDLENBQUM7QUFFRDs7O0dBR0c7QUFDSCxNQUFNLFVBQVUsZUFBZTtJQUMzQixPQUFPLFFBQVEsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxJQUFJLFlBQVksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0FBQ3JGLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XHJcblxyXG4vKipcclxuICogUmV0dXJuIHRydWUgaWYgdmFsdWUgZGVmaW5lZFxyXG4gKiBAcGFyYW0gdmFsdWUgVmFsdWUgdG8gY2hlY2tcclxuICogQHJldHVybnMgVHJ1ZSBpZiB2YWx1ZSBpcyBub3QgbnVsbCBhbmQgZGVmaW5lZFxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGlzRGVmaW5lZDxUPih2YWx1ZTogVCB8IHVuZGVmaW5lZCB8IG51bGwpOiBib29sZWFuIHtcclxuICAgIHJldHVybiA8VD52YWx1ZSAhPT0gdW5kZWZpbmVkICYmIDxUPnZhbHVlICE9PSBudWxsO1xyXG59XHJcblxyXG4vKipcclxuICogUmV0dXJuIHRydWUgaWYgdmFsdWUgaXMgb2JqZWN0XHJcbiAqIEBwYXJhbSB2YWx1ZSBWYWx1ZSB0byBjaGVja1xyXG4gKiBAcmV0dXJucyBUcnVlIGlmIHZhbHVlIGlzIG9iamVjdFxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGlzT2JqZWN0KHZhbHVlOiBhbnkpOiBib29sZWFuIHtcclxuICAgIHJldHVybiAoaXNEZWZpbmVkKHZhbHVlKSAmJiB0eXBlb2YgdmFsdWUgPT09ICdvYmplY3QnICYmICFBcnJheS5pc0FycmF5KHZhbHVlKSk7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBSZXR1cm4gdHJ1ZSBpZiBkYXRhIGlzIG9ic2VydmFibGVcclxuICogQHBhcmFtIGRhdGEgT2JqZWN0IHRvIGNoZWNrXHJcbiAqIEByZXR1cm5zIFRydWUgaWYgZGF0YSBpcyBvYnNlcnZhYmxlXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gaXNBc3luY0RhdGEoZGF0YTogYW55KSB7XHJcbiAgICByZXR1cm4gZGF0YSBpbnN0YW5jZW9mIE9ic2VydmFibGU7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBSZXR1cm4gZXh0ZW5kZWQgb2JqZWN0IHdpdGggbmV3IHByb3BlcnR5XHJcbiAqIEBwYXJhbSBvYmogT2JqZWN0IHRvIGV4dGVuZCBieSBwcm9wZXJ0eVxyXG4gKiBAcGFyYW0gcHJvcGVydHkgTmV3IHByb3BlcnR5IG5hbWUgXHJcbiAqIEBwYXJhbSB2YWx1ZSBWYWx1ZSBmb3IgbmV3IHByb3BlcnR5XHJcbiAqIEByZXR1cm5zIEV4dGVuZGVkIG9iamVjdCB3aXRoIG5ldyBwcm9wZXJ0eVxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGFkZFByb3BlcnR5VG9PYmplY3Qob2JqOiBhbnksIHByb3BlcnR5OiBzdHJpbmcsIHZhbHVlOiBhbnkgPSBudWxsKTogYW55IHtcclxuICAgIGlmIChpc0RlZmluZWQocHJvcGVydHkpICYmICFvYmouaGFzT3duUHJvcGVydHkocHJvcGVydHkpKSB7XHJcbiAgICAgICAgbGV0IG5ld09iajogYW55ID0ge307XHJcbiAgICAgICAgbmV3T2JqW3Byb3BlcnR5XSA9IHZhbHVlO1xyXG4gICAgICAgIG9iaiA9IHsgLi4ub2JqLCAuLi5uZXdPYmogfTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gb2JqO1xyXG59XHJcblxyXG4vKipcclxuICogUmVtb3ZlIHByb3BlcnR5IGZyb20gb2JqZWN0XHJcbiAqIEBwYXJhbSBvYmogT2JqZWN0IGZvciByZW1vdmluZyBwcm9wZXJ0eVxyXG4gKiBAcGFyYW0gcHJvcGVydHkgUHJvcGVydHkgbmFtZSB0byByZW1vdmVcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiByZW1vdmVQcm9wZXJ0eUZyb21PYmplY3Qob2JqOiBhbnksIHByb3BlcnR5OiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIGlmIChvYmouaGFzT3duUHJvcGVydHkocHJvcGVydHkpKSB7XHJcbiAgICAgICAgZGVsZXRlIG9ialtwcm9wZXJ0eV07XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qKlxyXG4gICogRGVlcCBtZXJnZSBvYmplY3Qgd2l0aCBvdGhlcnNcclxuICAqIEBwYXJhbSB0YXJnZXQgT2JqZWN0IHRvIG1lcmdlXHJcbiAgKiBAcGFyYW0gc291cmNlcyBcclxuICAqL1xyXG5cclxuLyoqXHJcbiAqIERlZXAgbWVyZ2Ugb2JqZWN0IHdpdGggb3RoZXJzXHJcbiAqIEBwYXJhbSB0YXJnZXQgIE9iamVjdCB0byBtZXJnZVxyXG4gKiBAcGFyYW0gc291cmNlcyBPYmplY3RzIHRvIGJlIG1lcmdlZCB3aXRoIHRhcmdldFxyXG4gKiBAcmV0dXJucyBNZXJnZWQgb2JqZWN0XHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gbWVyZ2VEZWVwKHRhcmdldDogYW55LCAuLi5zb3VyY2VzOiBhbnlbXSk6IGFueSB7XHJcbiAgICBpZiAoIXNvdXJjZXMubGVuZ3RoKVxyXG4gICAgICAgIHJldHVybiB0YXJnZXQ7XHJcblxyXG4gICAgY29uc3Qgc291cmNlID0gc291cmNlcy5zaGlmdCgpO1xyXG5cclxuICAgIGlmIChpc09iamVjdCh0YXJnZXQpICYmIGlzT2JqZWN0KHNvdXJjZSkpIHtcclxuICAgICAgICBmb3IgKGNvbnN0IGtleSBpbiBzb3VyY2UpIHtcclxuICAgICAgICAgICAgaWYgKGlzT2JqZWN0KHNvdXJjZVtrZXldKSkge1xyXG4gICAgICAgICAgICAgICAgaWYgKCF0YXJnZXRba2V5XSkgT2JqZWN0LmFzc2lnbih0YXJnZXQsIHsgW2tleV06IHt9IH0pO1xyXG4gICAgICAgICAgICAgICAgbWVyZ2VEZWVwKHRhcmdldFtrZXldLCBzb3VyY2Vba2V5XSk7XHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICBPYmplY3QuYXNzaWduKHRhcmdldCwgeyBba2V5XTogc291cmNlW2tleV0gfSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIG1lcmdlRGVlcCh0YXJnZXQsIC4uLnNvdXJjZXMpO1xyXG59XHJcblxyXG4vKipcclxuICogR2V0IHR5cGUncyBwcm9wZXJ0eSBuYW1lIHNhZmV0eVxyXG4gKiBAcGFyYW0gbmFtZSBLZXlPZiBwcm9wZXJ0eVxyXG4gKiBAcmV0dXJucyBUeXBlJ3MgcHJvcGVydHkgbmFtZVxyXG4gKi9cclxuZXhwb3J0IGNvbnN0IG5hbWVvZiA9IDxUPihuYW1lOiBrZXlvZiBUKSA9PiBuYW1lO1xyXG5cclxuLyoqXHJcbiAgICogRGV0ZXJtaW5lcyBpZiB0aGUgaW5wdXQgaXMgYSBOdW1iZXIgb3Igc29tZXRoaW5nIHRoYXQgY2FuIGJlIGNvZXJjZWQgdG8gYSBOdW1iZXJcclxuICAgKiBAcGFyYW0gLSBUaGUgaW5wdXQgdG8gYmUgdGVzdGVkXHJcbiAgICogQHJldHVybnMgLSBBbiBpbmRpY2F0aW9uIGlmIHRoZSBpbnB1dCBpcyBhIE51bWJlciBvciBjYW4gYmUgY29lcmNlZCB0byBhIE51bWJlclxyXG4gICAqL1xyXG5leHBvcnQgZnVuY3Rpb24gaXNOdW1lcmljKG51bWJlcjogYW55KTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gIWlzTmFOKHBhcnNlRmxvYXQobnVtYmVyKSk7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBSZXR1cm4gdHJ1ZSBpZiBjdXJyZW50IGJyb3dzZXIgaXMgQ2hyb21lXHJcbiAqIEByZXR1cm5zIElmIGN1cnJlbnQgYnJvd3NlciBpcyBDaHJvbWVcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBpc0Nocm9tZUJyb3dzZXIoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gL0Nocm9tZS8udGVzdChuYXZpZ2F0b3IudXNlckFnZW50KSAmJiAvR29vZ2xlIEluYy8udGVzdChuYXZpZ2F0b3IudmVuZG9yKTtcclxufSJdfQ==
@@ -7,8 +7,9 @@ import { isDefined } from "./common.utils";
7
7
  * @returns Date with minute value
8
8
  */
9
9
  export function setMinutes(date, minute) {
10
- date.setMinutes(minute);
11
- return new Date(date.getFullYear(), date.getMonth(), date.getDate(), date.getHours(), date.getMinutes());
10
+ const result = new Date(date);
11
+ result.setMinutes(minute);
12
+ return result;
12
13
  }
13
14
  /**
14
15
  * Set hours for date
@@ -17,8 +18,9 @@ export function setMinutes(date, minute) {
17
18
  * @returns Date with hour value
18
19
  */
19
20
  export function setHours(date, hour) {
20
- date.setHours(hour);
21
- return new Date(date.getFullYear(), date.getMonth(), date.getDate(), date.getHours(), date.getMinutes());
21
+ const result = new Date(date);
22
+ result.setHours(hour);
23
+ return result;
22
24
  }
23
25
  /**
24
26
  * Set day for date value
@@ -38,8 +40,52 @@ export function setDay(date, dayNumber) {
38
40
  * @returns Date with year value
39
41
  */
40
42
  export function setYear(date, year) {
41
- date.setFullYear(year);
42
- return new Date(date.getFullYear(), date.getMonth(), date.getDate(), date.getHours(), date.getMinutes());
43
+ const result = new Date(date);
44
+ result.setFullYear(year);
45
+ return result;
46
+ }
47
+ /**
48
+ * Set seconds for date
49
+ * @param date Date value
50
+ * @param value Seconds value
51
+ * @returns Date with minute value
52
+ */
53
+ export function setSeconds(date, value) {
54
+ const result = new Date(date);
55
+ result.setSeconds(value);
56
+ return result;
57
+ }
58
+ /**
59
+ * Set milliseconds for date
60
+ * @param date Date value
61
+ * @param value Milliseconds value
62
+ * @returns Date with minute value
63
+ */
64
+ export function setMilliseconds(date, value) {
65
+ const result = new Date(date);
66
+ result.setMilliseconds(value);
67
+ return result;
68
+ }
69
+ /**
70
+ * Set 0 for seconds and milliseconds of date
71
+ * @param date Date value
72
+ * @returns Date with minute value
73
+ */
74
+ export function setDefaultSecondsAndMiliseconds(date) {
75
+ const result = new Date(date);
76
+ result.setSeconds(0);
77
+ result.setMilliseconds(0);
78
+ return result;
79
+ }
80
+ /**
81
+ * Get next date
82
+ * @param date Date value
83
+ * @returns Next date
84
+ */
85
+ export function getNextDate(date) {
86
+ const nextDate = new Date(date);
87
+ nextDate.setDate(date.getDate() + 1);
88
+ return nextDate;
43
89
  }
44
90
  /**
45
91
  * Get next month as date
@@ -161,9 +207,10 @@ export function getWeeksNumberInMonth(date) {
161
207
  * @returns True if first and second date are equal
162
208
  */
163
209
  export function isEqualDates(date1, date2) {
164
- date1.setHours(0, 0, 0, 0);
165
- date2.setHours(0, 0, 0, 0);
166
- return date1.getTime() === date2.getTime();
210
+ const date1Value = new Date(date1), date2Value = new Date(date2);
211
+ date1Value.setHours(0, 0, 0, 0);
212
+ date2Value.setHours(0, 0, 0, 0);
213
+ return date1Value.getTime() === date2Value.getTime();
167
214
  }
168
215
  /**
169
216
  * Return true if first date greater than second date
@@ -205,4 +252,4 @@ export function isDateTimeGreatOrEqual(date1, date2) {
205
252
  return new Date(date1.getFullYear(), date1.getMonth(), date1.getDate(), date1.getHours(), date1.getMinutes())
206
253
  >= new Date(date2.getFullYear(), date2.getMonth(), date2.getDate(), date2.getHours(), date2.getMinutes());
207
254
  }
208
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS10aW1lLnV0aWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXNmYy1jb21tb24vc3JjL2xpYi91dGlscy9kYXRlLXRpbWUudXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ2pELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUUzQzs7Ozs7R0FLRztBQUNGLE1BQU0sVUFBVSxVQUFVLENBQUMsSUFBVSxFQUFFLE1BQWM7SUFDbEQsSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUN4QixPQUFPLElBQUksSUFBSSxDQUNYLElBQUksQ0FBQyxXQUFXLEVBQUUsRUFDbEIsSUFBSSxDQUFDLFFBQVEsRUFBRSxFQUNmLElBQUksQ0FBQyxPQUFPLEVBQUUsRUFDZCxJQUFJLENBQUMsUUFBUSxFQUFFLEVBQ2YsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUNwQixDQUFDO0FBQ04sQ0FBQztBQUVEOzs7OztHQUtHO0FBQ0gsTUFBTSxVQUFVLFFBQVEsQ0FBQyxJQUFVLEVBQUUsSUFBWTtJQUM3QyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3BCLE9BQU8sSUFBSSxJQUFJLENBQ1gsSUFBSSxDQUFDLFdBQVcsRUFBRSxFQUNsQixJQUFJLENBQUMsUUFBUSxFQUFFLEVBQ2YsSUFBSSxDQUFDLE9BQU8sRUFBRSxFQUNkLElBQUksQ0FBQyxRQUFRLEVBQUUsRUFDZixJQUFJLENBQUMsVUFBVSxFQUFFLENBQ3BCLENBQUM7QUFDTixDQUFDO0FBRUQ7Ozs7O0dBS0c7QUFDSCxNQUFNLFVBQVUsTUFBTSxDQUFDLElBQVUsRUFBRSxTQUFpQjtJQUNoRCxNQUFNLFFBQVEsR0FBRyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNoQyxRQUFRLENBQUMs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USxFQUFFLEVBQUUsS0FBSyxDQUFDLFVBQVUsRUFBRSxDQUFDO1VBQ25DLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXLEVBQUUsRUFBRSxLQUFLLENBQUMsUUFBUSxFQUFFLEVBQUUsS0FBSyxDQUFDLE9BQU8sRUFBRSxFQUM3RCxLQUFLLENBQUMsUUFBUSxFQUFFLEVBQUUsS0FBSyxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUM7QUFDbEQsQ0FBQztBQUVEOzs7OztHQUtHO0FBQ0gsTUFBTSxVQUFVLHNCQUFzQixDQUFDLEtBQVcsRUFBRSxLQUFXO0lBQzNELE9BQU8sSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLFdBQVcsRUFBRSxFQUFFLEtBQUssQ0FBQyxRQUFRLEVBQUUsRUFBRSxLQUFLLENBQUMsT0FBTyxFQUFFLEVBQ2xFLEtBQUssQ0FBQyxRQUFRLEVBQUUsRUFBRSxLQUFLLENBQUMsVUFBVSxFQUFFLENBQUM7V0FDbEMsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLFdBQVcsRUFBRSxFQUFFLEtBQUssQ0FBQyxRQUFRLEVBQUUsRUFBRSxLQUFLLENBQUMsT0FBTyxFQUFFLEVBQzlELEtBQUssQ0FBQyxRQUFRLEVBQUUsRUFBRSxLQUFLLENBQUMsVUFBVSxFQUFFLENBQUMsQ0FBQztBQUNsRCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGF0ZVRpbWVDb25zdGFudHMgfSBmcm9tIFwiLi4vY29uc3RhbnRzXCI7XHJcbmltcG9ydCB7IGlzRGVmaW5lZCB9IGZyb20gXCIuL2NvbW1vbi51dGlsc1wiO1xyXG5cclxuLyoqXHJcbiAqIFNldCBtaW51dGVzIGZvciBkYXRlXHJcbiAqIEBwYXJhbSBkYXRlIERhdGUgdmFsdWVcclxuICogQHBhcmFtIG1pbnV0ZSBNaW51dGUgdmFsdWVcclxuICogQHJldHVybnMgRGF0ZSB3aXRoIG1pbnV0ZSB2YWx1ZVxyXG4gKi9cclxuIGV4cG9ydCBmdW5jdGlvbiBzZXRNaW51dGVzKGRhdGU6IERhdGUsIG1pbnV0ZTogbnVtYmVyKTogRGF0ZSB7XHJcbiAgICBkYXRlLnNldE1pbnV0ZXMobWludXRlKTtcclxuICAgIHJldHVybiBuZXcgRGF0ZShcclxuICAgICAgICBkYXRlLmdldEZ1bGxZZWFyKCksXHJcbiAgICAgICAgZGF0ZS5nZXRNb250aCgpLFxyXG4gICAgICAgIGRhdGUuZ2V0RGF0ZSgpLFxyXG4gICAgICAgIGRhdGUuZ2V0SG91cnMoKSxcclxuICAgICAgICBkYXRlLmdldE1pbnV0ZXMoKVxyXG4gICAgKTtcclxufVxyXG5cclxuLyoqXHJcbiAqIFNldCBob3VycyBmb3IgZGF0ZVxyXG4gKiBAcGFyYW0gZGF0ZSBEYXRlIHZhbHVlXHJcbiAqIEBwYXJhbSBob3VyIEhvdXIgdmFsdWVcclxuICogQHJldHVybnMgRGF0ZSB3aXRoIGhvdXIgdmFsdWVcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBzZXRIb3VycyhkYXRlOiBEYXRlLCBob3VyOiBudW1iZXIpOiBEYXRlIHtcclxuICAgIGRhdGUuc2V0SG91cnMoaG91cik7XHJcbiAgICByZXR1cm4gbmV3IERhdGUoXHJcbiAgICAgICAgZGF0ZS5nZXRGdWxsWWVhcigpLFxyXG4gICAgICAgIGRhdGUuZ2V0TW9udGgoKSxcclxuICAgICAgICBkYXRlLmdldERhdGUoKSxcclxuICAgICAgICBkYXRlLmdldEhvdXJzKCksXHJcbiAgICAgICAgZGF0ZS5nZXRNaW51dGVzKClcclxuICAgICk7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBTZXQgZGF5IGZvciBkYXRlIHZhbHVlXHJcbiAqIEBwYXJhbSBkYXRlIERhdGUgdmFsdWVcclxuICogQHBhcmFtIGRheU51bWJlciBEYXkgbnVtYmVyIFxyXG4gKiBAcmV0dXJucyBEYXRlIHdpdGggZGF5IG51bWJlclxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIHNldERheShkYXRlOiBEYXRlLCBkYXlOdW1iZXI6IG51bWJlcik6IERhdGUge1xyXG4gICAgY29uc3QgbmV4dERhdGUgPSBuZXcgRGF0ZShkYXRlKTtcclxuICAgIG5leHREYXRlLnNldERhdGUoZGF5TnVtYmVyKTtcclxuICAgIHJldHVybiBuZXh0RGF0ZTtcclxufVxyXG5cclxuLyoqXHJcbiAqIFNldCB5ZWFyIGZvciBkYXRlXHJcbiAqIEBwYXJhbSBkYXRlIERhdGUgdmFsdWVcclxuICogQHBhcmFtIHllYXIgWWVhciB2YWx1ZVxyXG4gKiBAcmV0dXJucyBEYXRlIHdpdGggeWVhciB2YWx1ZVxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIHNldFllYXIoZGF0ZTogRGF0ZSwgeWVhcjogbnVtYmVyKTogRGF0ZSB7XHJcbiAgICBkYXRlLnNldEZ1bGxZZWFyKHllYXIpO1xyXG4gICAgcmV0dXJuIG5ldyBEYXRlKFxyXG4gICAgICAgIGRhdGUuZ2V0RnVsbFllYXIoKSxcclxuICAgICAgICBkYXRlLmdldE1vbnRoKCksXHJcbiAgICAgICAgZGF0ZS5nZXREYXRlKCksXHJcbiAgICAgICAgZGF0ZS5nZXRIb3VycygpLFxyXG4gICAgICAgIGRhdGUuZ2V0TWludXRlcygpXHJcbiAgICApO1xyXG59XHJcblxyXG4vKipcclxuICogR2V0IG5leHQgbW9udGggYXMgZGF0ZVxyXG4gKiBAcGFyYW0gZGF0ZSBEYXRlIHZhbHVlXHJcbiAqIEByZXR1cm5zIE5leHQgbW9udGggYXMgZGF0ZVxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGdldE5leHRNb250aChkYXRlOiBEYXRlKTogRGF0ZSB7XHJcbiAgICBjb25zdCBuZXh0TW9udGggPSBuZXcgRGF0ZShkYXRlKTtcclxuICAgIG5leHRNb250aC5zZXRNb250aChkYXRlLmdldE1vbnRoKCkgKyAxKVxyXG4gICAgcmV0dXJuIG5leHRNb250aDtcclxufVxyXG5cclxuLyoqXHJcbiAqIEdldCBwcmV2aW91cyBtb250aCBhcyBkYXRlXHJcbiAqIEBwYXJhbSBkYXRlIERhdGUgdmFsdWVcclxuICogQHJldHVybnMgUHJldmlvdXMgbW9udGggYXMgZGF0ZVxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGdldFByZXZpb3VzTW9udGgoZGF0ZTogRGF0ZSk6IERhdGUge1xyXG4gICAgY29uc3QgcHJldk1vbnRoID0gbmV3IERhdGUoZGF0ZSk7XHJcbiAgICBwcmV2TW9udGguc2V0TW9udGgoZGF0ZS5nZXRNb250aCgpIC0gMSk7XHJcbiAgICByZXR1cm4gcHJldk1vbnRoO1xyXG59XHJcblxyXG4vKipcclxuICogR2V0IG5leHQgeWVhciBhcyBkYXRlXHJcbiAqIEBwYXJhbSBkYXRlIERhdGUgdmFsdWVcclxuICogQHJldHVybnMgTmV4dCB5ZWFyIGFzIGRhdGVcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBnZXROZXh0WWVhcihkYXRlOiBEYXRlKTogRGF0ZSB7XHJcbiAgICBjb25zdCBuZXh0WWVhciA9IG5ldyBEYXRlKGRhdGUpO1xyXG4gICAgbmV4dFllYXIuc2V0RnVsbFllYXIoZGF0ZS5nZXRGdWxsWWVhcigpICsgMSk7XHJcbiAgICByZXR1cm4gbmV4dFllYXI7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBHZXQgcHJldmlvdXMgeWVhciBhcyBkYXRlXHJcbiAqIEBwYXJhbSBkYXRlIERhdGUgdmFsdWVcclxuICogQHJldHVybnMgUHJldmlvdXMgeWVhciBhcyBkYXRlXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gZ2V0UHJldmlvdXNZZWFyKGRhdGU6IERhdGUpOiBEYXRlIHtcclxuICAgIGNvbnN0IHByZXZZZWFyID0gbmV3IERhdGUoZGF0ZSk7XHJcbiAgICBwcmV2WWVhci5zZXRGdWxsWWVhcihkYXRlLmdldEZ1bGxZZWFyKCkgLSAxKTtcclxuICAgIHJldHVybiBwcmV2WWVhcjtcclxufVxyXG5cclxuLyoqXHJcbiAqIFJldHVybiBmaXJzdCBkYXkgb2YgbW9udGggYXMgZGF0ZSBmcm9tIGRhdGUgdmFsdWVcclxuICogQHBhcmFtIGRhdGUgRGF0ZSB2YWx1ZVxyXG4gKiBAcmV0dXJucyBGaXJzdCBkYXkgb2YgbW9udGggYXMgZGF0ZVxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGdldEZpcnN0RGF5T2ZNb250aChkYXRlOiBEYXRlKTogRGF0ZSB7XHJcbiAgICBpZiAoaXNEZWZpbmVkKGRhdGUpICYmIGRhdGUgaW5zdGFuY2VvZiBEYXRlKSB7XHJcbiAgICAgICAgY29uc3QgeWVhciA9IGRhdGUuZ2V0RnVsbFllYXIoKSxcclxuICAgICAgICAgICAgbW9udGggPSBkYXRlLmdldE1vbnRoKCk7XHJcbiAgICAgICAgcmV0dXJuIG5ldyBEYXRlKHllYXIsIG1vbnRoLCAxKTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gZGF0ZTtcclxufVxyXG5cclxuLyoqXHJcbiAqIFJldHVybiBsYXN0IGRheSBvZiBtb250aCBhcyBkYXRlIGZyb20gZGF0ZSB2YWx1ZVxyXG4gKiBAcGFyYW0gZGF0ZSBEYXRlIHZhbHVlXHJcbiAqIEByZXR1cm5zIExhc3QgZGF5IG9mIG1vbnRoIGFzIGRhdGVcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBnZXRMYXN0RGF5T2ZNb250aChkYXRlOiBEYXRlKTogRGF0ZSB7XHJcbiAgICBpZiAoaXNEZWZpbmVkKGRhdGUpICYmIGRhdGUgaW5zdGFuY2VvZiBEYXRlKSB7XHJcbiAgICAgICAgY29uc3QgeWVhciA9IGRhdGUuZ2V0RnVsbFllYXIoKSxcclxuICAgICAgICAgICAgbW9udGggPSBkYXRlLmdldE1vbnRoKCk7XHJcbiAgICAgICAgcmV0dXJuIG5ldyBEYXRlKHllYXIsIG1vbnRoICsgMSwgMCk7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIGRhdGU7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBSZXR1cm4gZmlyc3QgZGF5IG9mIHllYXIgYXMgZGF0ZSBmcm9tIGRhdGUgdmFsdWVcclxuICogQHBhcmFtIGRhdGUgRGF0ZSB2YWx1ZVxyXG4gKiBAcmV0dXJucyBGaXJzdCBkYXkgb2YgeWVhciBhcyBkYXRlXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gZ2V0Rmlyc3REYXlPZlllYXIoZGF0ZTogRGF0ZSk6IERhdGUge1xyXG4gICAgaWYgKGlzRGVmaW5lZChkYXRlKSAmJiBkYXRlIGluc3RhbmNlb2YgRGF0ZSkge1xyXG4gICAgICAgIHJldHVybiBuZXcgRGF0ZShkYXRlLmdldEZ1bGxZZWFyKCksIDAsIDEpO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBkYXRlO1xyXG59XHJcblxyXG4vKipcclxuICogUmV0dXJuIGxhc3QgZGF5IG9mIHllYXIgYXMgZGF0ZSBmcm9tIGRhdGUgdmFsdWVcclxuICogQHBhcmFtIGRhdGUgRGF0ZSB2YWx1ZVxyXG4gKiBAcmV0dXJucyBMYXN0IGRheSBvZiB5ZWFyIGFzIGRhdGVcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBnZXRMYXN0RGF5T2ZZZWFyKGRhdGU6IERhdGUpOiBEYXRlIHtcclxuICAgIGlmIChpc0RlZmluZWQoZGF0ZSkgJiYgZGF0ZSBpbnN0YW5jZW9mIERhdGUpIHtcclxuICAgICAgICByZXR1cm4gbmV3IERhdGUoZGF0ZS5nZXRGdWxsWWVhcigpLCAxMiwgMCk7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIGRhdGU7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBSZXR1cm4gZmlyc3QgZGF5IG9mIG1vbnRoIGFzIGRhdGVcclxuICogQHBhcmFtIHllYXIgWWVhciB2YWx1ZVxyXG4gKiBAcGFyYW0gbW9udGggTW9udGggdmFsdWVcclxuICogQHJldHVybnMgRmlyc3QgZGF5IG9mIG1vbnRoXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gZ2V0Rmlyc3REYXlPZk1vbnRoQnlZZWFyQW5kTW9udGgoeWVhcjogbnVtYmVyLCBtb250aDogbnVtYmVyKTogRGF0ZSB7XHJcbiAgICByZXR1cm4gbmV3IERhdGUoeWVhciwgbW9udGgsIDEpO1xyXG59XHJcblxyXG4vKipcclxuICogUmV0dXJuIGxhc3QgZGF5IG9mIG1vbnRoIGFzIGRhdGVcclxuICogQHBhcmFtIHllYXIgWWVhciB2YWx1ZVxyXG4gKiBAcGFyYW0gbW9udGggTW9udGggdmFsdWVcclxuICogQHJldHVybnMgTGFzdCBkYXkgb2YgbW9udGhcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBnZXRMYXN0RGF5T2ZNb250aEJ5WWVhckFuZE1vbnRoKHllYXI6IG51bWJlciwgbW9udGg6IG51bWJlcik6IERhdGUge1xyXG4gICAgcmV0dXJuIG5ldyBEYXRlKHllYXIsIG1vbnRoICsgMSwgMCk7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBSZXR1cm4gd2VlayBudW1iZXIgaW4gbW9udGggZnJvbSBkYXRlIHZhbHVlXHJcbiAqIEBwYXJhbSBkYXRlIERhdGUgdmFsdWVcclxuICogQHJldHVybnMgV2VlayBudW1iZXJcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBnZXRXZWVrc051bWJlckluTW9udGgoZGF0ZTogRGF0ZSk6IG51bWJlciB7XHJcbiAgICBjb25zdCBmaXJzdE9mTW9udGggPSBnZXRGaXJzdERheU9mTW9udGgoZGF0ZSksXHJcbiAgICAgICAgbGFzdE9mTW9udGggPSBnZXRMYXN0RGF5T2ZNb250aChkYXRlKSxcclxuICAgICAgICB1c2VkID0gZmlyc3RPZk1vbnRoLmdldERheSgpICsgbGFzdE9mTW9udGguZ2V0RGF0ZSgpO1xyXG4gICAgcmV0dXJuIE1hdGguY2VpbCh1c2VkIC8gRGF0ZVRpbWVDb25zdGFudHMuREFZU19JTl9XRUVLKTtcclxufVxyXG5cclxuLyoqXHJcbiAqIFJldHVybiB0cnVlIGlmIGZpcnN0IGFuZCBzZWNvbmQgZGF0ZSBhcmUgZXF1YWxcclxuICogQHBhcmFtIGRhdGUxIEZpcnN0IGRhdGUgdmFsdWVcclxuICogQHBhcmFtIGRhdGUyIFNlY29uZCBkYXRlIHZhbHVlXHJcbiAqIEByZXR1cm5zIFRydWUgaWYgZmlyc3QgYW5kIHNlY29uZCBkYXRlIGFyZSBlcXVhbFxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGlzRXF1YWxEYXRlcyhkYXRlMTogRGF0ZSwgZGF0ZTI6IERhdGUpOiBib29sZWFuIHtcclxuICAgIGRhdGUxLnNldEhvdXJzKDAsIDAsIDAsIDApO1xyXG4gICAgZGF0ZTIuc2V0SG91cnMoMCwgMCwgMCwgMCk7XHJcblxyXG4gICAgcmV0dXJuIGRhdGUxLmdldFRpbWUoKSA9PT0gZGF0ZTIuZ2V0VGltZSgpO1xyXG59XHJcblxyXG4vKipcclxuICogUmV0dXJuIHRydWUgaWYgZmlyc3QgZGF0ZSBncmVhdGVyIHRoYW4gc2Vjb25kIGRhdGVcclxuICogQHBhcmFtIGRhdGUxIEZpcnN0IGRhdGUgdmFsdWVcclxuICogQHBhcmFtIGRhdGUyIFNlY29uZCBkYXRlIHZhbHVlXHJcbiAqIEByZXR1cm5zIFRydWUgaWYgZmlyc3QgZGF0ZSBncmVhdGVyIHRoYW4gc2Vjb25kIGRhdGVcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBpc0RhdGVHcmVhdChkYXRlMTogRGF0ZSwgZGF0ZTI6IERhdGUpOiBib29sZWFuIHtcclxuICAgIHJldHVybiBuZXcgRGF0ZShkYXRlMS5nZXRGdWxsWWVhcigpLCBkYXRlMS5nZXRNb250aCgpLCBkYXRlMS5nZXREYXRlKCkpXHJcbiAgICAgICAgPiBuZXcgRGF0ZShkYXRlMi5nZXRGdWxsWWVhcigpLCBkYXRlMi5nZXRNb250aCgpLCBkYXRlMi5nZXREYXRlKCkpO1xyXG59XHJcblxyXG4vKipcclxuICogUmV0dXJuIHRydWUgaWYgZmlyc3QgZGF0ZSBncmVhdGVyIG9yIGVxdWFsIHRvIHNlY29uZCBkYXRlXHJcbiAqIEBwYXJhbSBkYXRlMSBGaXJzdCBkYXRlIHZhbHVlXHJcbiAqIEBwYXJhbSBkYXRlMiBTZWNvbmQgZGF0ZSB2YWx1ZVxyXG4gKiBAcmV0dXJucyBUcnVlIGlmIGZpcnN0IGRhdGUgZ3JlYXRlciBvciBlcXVhbCB0byBzZWNvbmQgZGF0ZVxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGlzRGF0ZUdyZWF0T3JFcXVhbChkYXRlMTogRGF0ZSwgZGF0ZTI6IERhdGUpOiBib29sZWFuIHtcclxuICAgIHJldHVybiBuZXcgRGF0ZShkYXRlMS5nZXRGdWxsWWVhcigpLCBkYXRlMS5nZXRNb250aCgpLCBkYXRlMS5nZXREYXRlKCkpXHJcbiAgICAgICAgPj0gbmV3IERhdGUoZGF0ZTIuZ2V0RnVsbFllYXIoKSwgZGF0ZTIuZ2V0TW9udGgoKSwgZGF0ZTIuZ2V0RGF0ZSgpKTtcclxufVxyXG5cclxuLyoqXHJcbiAqIFJldHVybiB0cnVlIGlmIGZpcnN0IGRhdGUgdGltZSBncmVhdGVyIHRoYW4gc2Vjb25kIGRhdGUgdGltZVxyXG4gKiBAcGFyYW0gZGF0ZTEgRmlyc3QgZGF0ZSB0aW1lIHZhbHVlXHJcbiAqIEBwYXJhbSBkYXRlMiBTZWNvbmQgZGF0ZSB0aW1lIHZhbHVlXHJcbiAqIEByZXR1cm5zIFRydWUgaWYgZmlyc3QgZGF0ZSB0aW1lIGdyZWF0ZXIgdGhhbiBzZWNvbmQgZGF0ZSB0aW1lXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gaXNEYXRlVGltZUdyZWF0KGRhdGUxOiBEYXRlLCBkYXRlMjogRGF0ZSk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIG5ldyBEYXRlKGRhdGUxLmdldEZ1bGxZZWFyKCksIGRhdGUxLmdldE1vbnRoKCksIGRhdGUxLmdldERhdGUoKSxcclxuICAgICAgICBkYXRlMS5nZXRIb3VycygpLCBkYXRlMS5nZXRNaW51dGVzKCkpXHJcbiAgICAgICAgPiBuZXcgRGF0ZShkYXRlMi5nZXRGdWxsWWVhcigpLCBkYXRlMi5nZXRNb250aCgpLCBkYXRlMi5nZXREYXRlKCksXHJcbiAgICAgICAgICAgIGRhdGUyLmdldEhvdXJzKCksIGRhdGUyLmdldE1pbnV0ZXMoKSk7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBSZXR1cm4gdHJ1ZSBpZiBmaXJzdCBkYXRlIHRpbWUgZ3JlYXRlciBvciBlcXVhbCB0byBzZWNvbmQgZGF0ZSB0aW1lXHJcbiAqIEBwYXJhbSBkYXRlMSBGaXJzdCBkYXRlIHRpbWUgdmFsdWVcclxuICogQHBhcmFtIGRhdGUyIFNlY29uZCBkYXRlIHRpbWUgdmFsdWVcclxuICogQHJldHVybnMgVHJ1ZSBpZiBmaXJzdCBkYXRlIHRpbWUgZ3JlYXRlciBvciBlcXVhbCB0byBzZWNvbmQgZGF0ZSB0aW1lXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gaXNEYXRlVGltZUdyZWF0T3JFcXVhbChkYXRlMTogRGF0ZSwgZGF0ZTI6IERhdGUpOiBib29sZWFuIHtcclxuICAgIHJldHVybiBuZXcgRGF0ZShkYXRlMS5nZXRGdWxsWWVhcigpLCBkYXRlMS5nZXRNb250aCgpLCBkYXRlMS5nZXREYXRlKCksXHJcbiAgICAgICAgZGF0ZTEuZ2V0SG91cnMoKSwgZGF0ZTEuZ2V0TWludXRlcygpKVxyXG4gICAgICAgID49IG5ldyBEYXRlKGRhdGUyLmdldEZ1bGxZZWFyKCksIGRhdGUyLmdldE1vbnRoKCksIGRhdGUyLmdldERhdGUoKSxcclxuICAgICAgICAgICAgZGF0ZTIuZ2V0SG91cnMoKSwgZGF0ZTIuZ2V0TWludXRlcygpKTtcclxufSJdfQ==
255
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS10aW1lLnV0aWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXNmYy1jb21tb24vc3JjL2xpYi91dGlscy9kYXRlLXRpbWUudXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ2pELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUUzQzs7Ozs7R0FLRztBQUNILE1BQU0sVUFBVSxVQUFVLENBQUMsSUFBVSxFQUFFLE1BQWM7SUFDakQsTUFBTSxNQUFNLEdBQUcsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDOUIsTUFBTSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUMxQixPQUFPLE1BQU0sQ0FBQztBQUNsQixDQUFDO0FBRUQ7Ozs7O0dBS0c7QUFDSCxNQUFNLFVBQVUsUUFBUSxDQUFDLElBQVUsRUFBRSxJQUFZO0lBQzdDLE1BQU0sTUFBTSxHQUFHLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzlCLE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDdEIsT0FBTyxNQUFNLENBQUM7QUFDbEIsQ0FBQztBQUVEOzs7OztHQUtHO0FBQ0gsTUFBTSxVQUFVLE1BQU0sQ0FBQyxJQUFVLEVBQUUsU0FBaUI7SUFDaEQsTUFBTSxRQUFRLEdBQUcsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDaEMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUM1QixPQUFPLFFBQVEsQ0FBQztBQUNwQixDQUFDO0FBRUQ7Ozs7O0dBS0c7QUFDSCxNQUFNLFVBQVUsT0FBTyxDQUFDLElBQVUsRUFBRSxJQUFZO0lBQzVDLE1BQU0sTUFBTSxHQUFHLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzlCLE1B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Q0FBQyxRQUFRLEVBQUUsRUFBRSxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7VUFDakUsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLFdBQVcsRUFBRSxFQUFFLEtBQUssQ0FBQyxRQUFRLEVBQUUsRUFBRSxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQztBQUMzRSxDQUFDO0FBRUQ7Ozs7O0dBS0c7QUFDSCxNQUFNLFVBQVUsa0JBQWtCLENBQUMsS0FBVyxFQUFFLEtBQVc7SUFDdkQsT0FBTyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVyxFQUFFLEVBQUUsS0FBSyxDQUFDLFFBQVEsRUFBRSxFQUFFLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztXQUNoRSxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVyxFQUFFLEVBQUUsS0FBSyxDQUFDLFFBQVEsRUFBRSxFQUFFLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO0FBQzVFLENBQUM7QUFFRDs7Ozs7R0FLRztBQUNILE1BQU0sVUFBVSxlQUFlLENBQUMsS0FBVyxFQUFFLEtBQVc7SUFDcEQsT0FBTyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVyxFQUFFLEVBQUUsS0FBSyxDQUFDLFFBQVEsRUFBRSxFQUFFLEtBQUssQ0FBQyxPQUFPLEVBQUUsRUFDbEUsS0FBSyxDQUFDLFFBQVEsRUFBRSxFQUFFLEtBQUssQ0FBQyxVQUFVLEVBQUUsQ0FBQztVQUNuQyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVyxFQUFFLEVBQUUsS0FBSyxDQUFDLFFBQVEsRUFBRSxFQUFFLEtBQUssQ0FBQyxPQUFPLEVBQUUsRUFDN0QsS0FBSyxDQUFDLFFBQVEsRUFBRSxFQUFFLEtBQUssQ0FBQyxVQUFVLEVBQUUsQ0FBQyxDQUFDO0FBQ2xELENBQUM7QUFFRDs7Ozs7R0FLRztBQUNILE1BQU0sVUFBVSxzQkFBc0IsQ0FBQyxLQUFXLEVBQUUsS0FBVztJQUMzRCxPQUFPLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXLEVBQUUsRUFBRSxLQUFLLENBQUMsUUFBUSxFQUFFLEVBQUUsS0FBSyxDQUFDLE9BQU8sRUFBRSxFQUNsRSxLQUFLLENBQUMsUUFBUSxFQUFFLEVBQUUsS0FBSyxDQUFDLFVBQVUsRUFBRSxDQUFDO1dBQ2xDLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXLEVBQUUsRUFBRSxLQUFLLENBQUMsUUFBUSxFQUFFLEVBQUUsS0FBSyxDQUFDLE9BQU8sRUFBRSxFQUM5RCxLQUFLLENBQUMsUUFBUSxFQUFFLEVBQUUsS0FBSyxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUM7QUFDbEQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERhdGVUaW1lQ29uc3RhbnRzIH0gZnJvbSBcIi4uL2NvbnN0YW50c1wiO1xyXG5pbXBvcnQgeyBpc0RlZmluZWQgfSBmcm9tIFwiLi9jb21tb24udXRpbHNcIjtcclxuXHJcbi8qKlxyXG4gKiBTZXQgbWludXRlcyBmb3IgZGF0ZVxyXG4gKiBAcGFyYW0gZGF0ZSBEYXRlIHZhbHVlXHJcbiAqIEBwYXJhbSBtaW51dGUgTWludXRlIHZhbHVlXHJcbiAqIEByZXR1cm5zIERhdGUgd2l0aCBtaW51dGUgdmFsdWVcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBzZXRNaW51dGVzKGRhdGU6IERhdGUsIG1pbnV0ZTogbnVtYmVyKTogRGF0ZSB7XHJcbiAgICBjb25zdCByZXN1bHQgPSBuZXcgRGF0ZShkYXRlKTtcclxuICAgIHJlc3VsdC5zZXRNaW51dGVzKG1pbnV0ZSk7XHJcbiAgICByZXR1cm4gcmVzdWx0O1xyXG59XHJcblxyXG4vKipcclxuICogU2V0IGhvdXJzIGZvciBkYXRlXHJcbiAqIEBwYXJhbSBkYXRlIERhdGUgdmFsdWVcclxuICogQHBhcmFtIGhvdXIgSG91ciB2YWx1ZVxyXG4gKiBAcmV0dXJucyBEYXRlIHdpdGggaG91ciB2YWx1ZVxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIHNldEhvdXJzKGRhdGU6IERhdGUsIGhvdXI6IG51bWJlcik6IERhdGUge1xyXG4gICAgY29uc3QgcmVzdWx0ID0gbmV3IERhdGUoZGF0ZSk7XHJcbiAgICByZXN1bHQuc2V0SG91cnMoaG91cik7XHJcbiAgICByZXR1cm4gcmVzdWx0O1xyXG59XHJcblxyXG4vKipcclxuICogU2V0IGRheSBmb3IgZGF0ZSB2YWx1ZVxyXG4gKiBAcGFyYW0gZGF0ZSBEYXRlIHZhbHVlXHJcbiAqIEBwYXJhbSBkYXlOdW1iZXIgRGF5IG51bWJlciBcclxuICogQHJldHVybnMgRGF0ZSB3aXRoIGRheSBudW1iZXJcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBzZXREYXkoZGF0ZTogRGF0ZSwgZGF5TnVtYmVyOiBudW1iZXIpOiBEYXRlIHtcclxuICAgIGNvbnN0IG5leHREYXRlID0gbmV3IERhdGUoZGF0ZSk7XHJcbiAgICBuZXh0RGF0ZS5zZXREYXRlKGRheU51bWJlcik7XHJcbiAgICByZXR1cm4gbmV4dERhdGU7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBTZXQgeWVhciBmb3IgZGF0ZVxyXG4gKiBAcGFyYW0gZGF0ZSBEYXRlIHZhbHVlXHJcbiAqIEBwYXJhbSB5ZWFyIFllYXIgdmFsdWVcclxuICogQHJldHVybnMgRGF0ZSB3aXRoIHllYXIgdmFsdWVcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBzZXRZZWFyKGRhdGU6IERhdGUsIHllYXI6IG51bWJlcik6IERhdGUge1xyXG4gICAgY29uc3QgcmVzdWx0ID0gbmV3IERhdGUoZGF0ZSk7XHJcbiAgICByZXN1bHQuc2V0RnVsbFllYXIoeWVhcik7XHJcbiAgICByZXR1cm4gcmVzdWx0O1xyXG59XHJcblxyXG4vKipcclxuICogU2V0IHNlY29uZHMgZm9yIGRhdGVcclxuICogQHBhcmFtIGRhdGUgRGF0ZSB2YWx1ZVxyXG4gKiBAcGFyYW0gdmFsdWUgU2Vjb25kcyB2YWx1ZVxyXG4gKiBAcmV0dXJucyBEYXRlIHdpdGggbWludXRlIHZhbHVlXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gc2V0U2Vjb25kcyhkYXRlOiBEYXRlLCB2YWx1ZTogbnVtYmVyKTogRGF0ZSB7XHJcbiAgICBjb25zdCByZXN1bHQgPSBuZXcgRGF0ZShkYXRlKTtcclxuICAgIHJlc3VsdC5zZXRTZWNvbmRzKHZhbHVlKTtcclxuICAgIHJldHVybiByZXN1bHQ7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBTZXQgbWlsbGlzZWNvbmRzIGZvciBkYXRlXHJcbiAqIEBwYXJhbSBkYXRlIERhdGUgdmFsdWVcclxuICogQHBhcmFtIHZhbHVlIE1pbGxpc2Vjb25kcyB2YWx1ZVxyXG4gKiBAcmV0dXJucyBEYXRlIHdpdGggbWludXRlIHZhbHVlXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gc2V0TWlsbGlzZWNvbmRzKGRhdGU6IERhdGUsIHZhbHVlOiBudW1iZXIpOiBEYXRlIHtcclxuICAgIGNvbnN0IHJlc3VsdCA9IG5ldyBEYXRlKGRhdGUpO1xyXG4gICAgcmVzdWx0LnNldE1pbGxpc2Vjb25kcyh2YWx1ZSk7XHJcbiAgICByZXR1cm4gcmVzdWx0O1xyXG59XHJcblxyXG4vKipcclxuICogU2V0IDAgZm9yIHNlY29uZHMgYW5kIG1pbGxpc2Vjb25kcyBvZiBkYXRlXHJcbiAqIEBwYXJhbSBkYXRlIERhdGUgdmFsdWVcclxuICogQHJldHVybnMgRGF0ZSB3aXRoIG1pbnV0ZSB2YWx1ZVxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIHNldERlZmF1bHRTZWNvbmRzQW5kTWlsaXNlY29uZHMoZGF0ZTogRGF0ZSk6IERhdGUge1xyXG4gICAgY29uc3QgcmVzdWx0ID0gbmV3IERhdGUoZGF0ZSk7XHJcbiAgICByZXN1bHQuc2V0U2Vjb25kcygwKTtcclxuICAgIHJlc3VsdC5zZXRNaWxsaXNlY29uZHMoMCk7XHJcbiAgICByZXR1cm4gcmVzdWx0O1xyXG59XHJcblxyXG4vKipcclxuICogR2V0IG5leHQgZGF0ZVxyXG4gKiBAcGFyYW0gZGF0ZSBEYXRlIHZhbHVlXHJcbiAqIEByZXR1cm5zIE5leHQgZGF0ZVxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGdldE5leHREYXRlKGRhdGU6IERhdGUpOiBEYXRlIHtcclxuICAgIGNvbnN0IG5leHREYXRlID0gbmV3IERhdGUoZGF0ZSk7XHJcbiAgICBuZXh0RGF0ZS5zZXREYXRlKGRhdGUuZ2V0RGF0ZSgpICsgMSlcclxuICAgIHJldHVybiBuZXh0RGF0ZTtcclxufVxyXG5cclxuLyoqXHJcbiAqIEdldCBuZXh0IG1vbnRoIGFzIGRhdGVcclxuICogQHBhcmFtIGRhdGUgRGF0ZSB2YWx1ZVxyXG4gKiBAcmV0dXJucyBOZXh0IG1vbnRoIGFzIGRhdGVcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBnZXROZXh0TW9udGgoZGF0ZTogRGF0ZSk6IERhdGUge1xyXG4gICAgY29uc3QgbmV4dE1vbnRoID0gbmV3IERhdGUoZGF0ZSk7XHJcbiAgICBuZXh0TW9udGguc2V0TW9udGgoZGF0ZS5nZXRNb250aCgpICsgMSlcclxuICAgIHJldHVybiBuZXh0TW9udGg7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBHZXQgcHJldmlvdXMgbW9udGggYXMgZGF0ZVxyXG4gKiBAcGFyYW0gZGF0ZSBEYXRlIHZhbHVlXHJcbiAqIEByZXR1cm5zIFByZXZpb3VzIG1vbnRoIGFzIGRhdGVcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBnZXRQcmV2aW91c01vbnRoKGRhdGU6IERhdGUpOiBEYXRlIHtcclxuICAgIGNvbnN0IHByZXZNb250aCA9IG5ldyBEYXRlKGRhdGUpO1xyXG4gICAgcHJldk1vbnRoLnNldE1vbnRoKGRhdGUuZ2V0TW9udGgoKSAtIDEpO1xyXG4gICAgcmV0dXJuIHByZXZNb250aDtcclxufVxyXG5cclxuLyoqXHJcbiAqIEdldCBuZXh0IHllYXIgYXMgZGF0ZVxyXG4gKiBAcGFyYW0gZGF0ZSBEYXRlIHZhbHVlXHJcbiAqIEByZXR1cm5zIE5leHQgeWVhciBhcyBkYXRlXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gZ2V0TmV4dFllYXIoZGF0ZTogRGF0ZSk6IERhdGUge1xyXG4gICAgY29uc3QgbmV4dFllYXIgPSBuZXcgRGF0ZShkYXRlKTtcclxuICAgIG5leHRZZWFyLnNldEZ1bGxZZWFyKGRhdGUuZ2V0RnVsbFllYXIoKSArIDEpO1xyXG4gICAgcmV0dXJuIG5leHRZZWFyO1xyXG59XHJcblxyXG4vKipcclxuICogR2V0IHByZXZpb3VzIHllYXIgYXMgZGF0ZVxyXG4gKiBAcGFyYW0gZGF0ZSBEYXRlIHZhbHVlXHJcbiAqIEByZXR1cm5zIFByZXZpb3VzIHllYXIgYXMgZGF0ZVxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGdldFByZXZpb3VzWWVhcihkYXRlOiBEYXRlKTogRGF0ZSB7XHJcbiAgICBjb25zdCBwcmV2WWVhciA9IG5ldyBEYXRlKGRhdGUpO1xyXG4gICAgcHJldlllYXIuc2V0RnVsbFllYXIoZGF0ZS5nZXRGdWxsWWVhcigpIC0gMSk7XHJcbiAgICByZXR1cm4gcHJldlllYXI7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBSZXR1cm4gZmlyc3QgZGF5IG9mIG1vbnRoIGFzIGRhdGUgZnJvbSBkYXRlIHZhbHVlXHJcbiAqIEBwYXJhbSBkYXRlIERhdGUgdmFsdWVcclxuICogQHJldHVybnMgRmlyc3QgZGF5IG9mIG1vbnRoIGFzIGRhdGVcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBnZXRGaXJzdERheU9mTW9udGgoZGF0ZTogRGF0ZSk6IERhdGUge1xyXG4gICAgaWYgKGlzRGVmaW5lZChkYXRlKSAmJiBkYXRlIGluc3RhbmNlb2YgRGF0ZSkge1xyXG4gICAgICAgIGNvbnN0IHllYXIgPSBkYXRlLmdldEZ1bGxZZWFyKCksXHJcbiAgICAgICAgICAgIG1vbnRoID0gZGF0ZS5nZXRNb250aCgpO1xyXG4gICAgICAgIHJldHVybiBuZXcgRGF0ZSh5ZWFyLCBtb250aCwgMSk7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIGRhdGU7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBSZXR1cm4gbGFzdCBkYXkgb2YgbW9udGggYXMgZGF0ZSBmcm9tIGRhdGUgdmFsdWVcclxuICogQHBhcmFtIGRhdGUgRGF0ZSB2YWx1ZVxyXG4gKiBAcmV0dXJucyBMYXN0IGRheSBvZiBtb250aCBhcyBkYXRlXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gZ2V0TGFzdERheU9mTW9udGgoZGF0ZTogRGF0ZSk6IERhdGUge1xyXG4gICAgaWYgKGlzRGVmaW5lZChkYXRlKSAmJiBkYXRlIGluc3RhbmNlb2YgRGF0ZSkge1xyXG4gICAgICAgIGNvbnN0IHllYXIgPSBkYXRlLmdldEZ1bGxZZWFyKCksXHJcbiAgICAgICAgICAgIG1vbnRoID0gZGF0ZS5nZXRNb250aCgpO1xyXG4gICAgICAgIHJldHVybiBuZXcgRGF0ZSh5ZWFyLCBtb250aCArIDEsIDApO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBkYXRlO1xyXG59XHJcblxyXG4vKipcclxuICogUmV0dXJuIGZpcnN0IGRheSBvZiB5ZWFyIGFzIGRhdGUgZnJvbSBkYXRlIHZhbHVlXHJcbiAqIEBwYXJhbSBkYXRlIERhdGUgdmFsdWVcclxuICogQHJldHVybnMgRmlyc3QgZGF5IG9mIHllYXIgYXMgZGF0ZVxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGdldEZpcnN0RGF5T2ZZZWFyKGRhdGU6IERhdGUpOiBEYXRlIHtcclxuICAgIGlmIChpc0RlZmluZWQoZGF0ZSkgJiYgZGF0ZSBpbnN0YW5jZW9mIERhdGUpIHtcclxuICAgICAgICByZXR1cm4gbmV3IERhdGUoZGF0ZS5nZXRGdWxsWWVhcigpLCAwLCAxKTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gZGF0ZTtcclxufVxyXG5cclxuLyoqXHJcbiAqIFJldHVybiBsYXN0IGRheSBvZiB5ZWFyIGFzIGRhdGUgZnJvbSBkYXRlIHZhbHVlXHJcbiAqIEBwYXJhbSBkYXRlIERhdGUgdmFsdWVcclxuICogQHJldHVybnMgTGFzdCBkYXkgb2YgeWVhciBhcyBkYXRlXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gZ2V0TGFzdERheU9mWWVhcihkYXRlOiBEYXRlKTogRGF0ZSB7XHJcbiAgICBpZiAoaXNEZWZpbmVkKGRhdGUpICYmIGRhdGUgaW5zdGFuY2VvZiBEYXRlKSB7XHJcbiAgICAgICAgcmV0dXJuIG5ldyBEYXRlKGRhdGUuZ2V0RnVsbFllYXIoKSwgMTIsIDApO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBkYXRlO1xyXG59XHJcblxyXG4vKipcclxuICogUmV0dXJuIGZpcnN0IGRheSBvZiBtb250aCBhcyBkYXRlXHJcbiAqIEBwYXJhbSB5ZWFyIFllYXIgdmFsdWVcclxuICogQHBhcmFtIG1vbnRoIE1vbnRoIHZhbHVlXHJcbiAqIEByZXR1cm5zIEZpcnN0IGRheSBvZiBtb250aFxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGdldEZpcnN0RGF5T2ZNb250aEJ5WWVhckFuZE1vbnRoKHllYXI6IG51bWJlciwgbW9udGg6IG51bWJlcik6IERhdGUge1xyXG4gICAgcmV0dXJuIG5ldyBEYXRlKHllYXIsIG1vbnRoLCAxKTtcclxufVxyXG5cclxuLyoqXHJcbiAqIFJldHVybiBsYXN0IGRheSBvZiBtb250aCBhcyBkYXRlXHJcbiAqIEBwYXJhbSB5ZWFyIFllYXIgdmFsdWVcclxuICogQHBhcmFtIG1vbnRoIE1vbnRoIHZhbHVlXHJcbiAqIEByZXR1cm5zIExhc3QgZGF5IG9mIG1vbnRoXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gZ2V0TGFzdERheU9mTW9udGhCeVllYXJBbmRNb250aCh5ZWFyOiBudW1iZXIsIG1vbnRoOiBudW1iZXIpOiBEYXRlIHtcclxuICAgIHJldHVybiBuZXcgRGF0ZSh5ZWFyLCBtb250aCArIDEsIDApO1xyXG59XHJcblxyXG4vKipcclxuICogUmV0dXJuIHdlZWsgbnVtYmVyIGluIG1vbnRoIGZyb20gZGF0ZSB2YWx1ZVxyXG4gKiBAcGFyYW0gZGF0ZSBEYXRlIHZhbHVlXHJcbiAqIEByZXR1cm5zIFdlZWsgbnVtYmVyXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gZ2V0V2Vla3NOdW1iZXJJbk1vbnRoKGRhdGU6IERhdGUpOiBudW1iZXIge1xyXG4gICAgY29uc3QgZmlyc3RPZk1vbnRoID0gZ2V0Rmlyc3REYXlPZk1vbnRoKGRhdGUpLFxyXG4gICAgICAgIGxhc3RPZk1vbnRoID0gZ2V0TGFzdERheU9mTW9udGgoZGF0ZSksXHJcbiAgICAgICAgdXNlZCA9IGZpcnN0T2ZNb250aC5nZXREYXkoKSArIGxhc3RPZk1vbnRoLmdldERhdGUoKTtcclxuICAgIHJldHVybiBNYXRoLmNlaWwodXNlZCAvIERhdGVUaW1lQ29uc3RhbnRzLkRBWVNfSU5fV0VFSyk7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBSZXR1cm4gdHJ1ZSBpZiBmaXJzdCBhbmQgc2Vjb25kIGRhdGUgYXJlIGVxdWFsXHJcbiAqIEBwYXJhbSBkYXRlMSBGaXJzdCBkYXRlIHZhbHVlXHJcbiAqIEBwYXJhbSBkYXRlMiBTZWNvbmQgZGF0ZSB2YWx1ZVxyXG4gKiBAcmV0dXJucyBUcnVlIGlmIGZpcnN0IGFuZCBzZWNvbmQgZGF0ZSBhcmUgZXF1YWxcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBpc0VxdWFsRGF0ZXMoZGF0ZTE6IERhdGUsIGRhdGUyOiBEYXRlKTogYm9vbGVhbiB7XHJcbiAgICBjb25zdCBkYXRlMVZhbHVlID0gbmV3IERhdGUoZGF0ZTEpLFxyXG4gICAgICAgIGRhdGUyVmFsdWUgPSBuZXcgRGF0ZShkYXRlMik7XHJcbiAgICBkYXRlMVZhbHVlLnNldEhvdXJzKDAsIDAsIDAsIDApO1xyXG4gICAgZGF0ZTJWYWx1ZS5zZXRIb3VycygwLCAwLCAwLCAwKTtcclxuXHJcbiAgICByZXR1cm4gZGF0ZTFWYWx1ZS5nZXRUaW1lKCkgPT09IGRhdGUyVmFsdWUuZ2V0VGltZSgpO1xyXG59XHJcblxyXG4vKipcclxuICogUmV0dXJuIHRydWUgaWYgZmlyc3QgZGF0ZSBncmVhdGVyIHRoYW4gc2Vjb25kIGRhdGVcclxuICogQHBhcmFtIGRhdGUxIEZpcnN0IGRhdGUgdmFsdWVcclxuICogQHBhcmFtIGRhdGUyIFNlY29uZCBkYXRlIHZhbHVlXHJcbiAqIEByZXR1cm5zIFRydWUgaWYgZmlyc3QgZGF0ZSBncmVhdGVyIHRoYW4gc2Vjb25kIGRhdGVcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBpc0RhdGVHcmVhdChkYXRlMTogRGF0ZSwgZGF0ZTI6IERhdGUpOiBib29sZWFuIHtcclxuICAgIHJldHVybiBuZXcgRGF0ZShkYXRlMS5nZXRGdWxsWWVhcigpLCBkYXRlMS5nZXRNb250aCgpLCBkYXRlMS5nZXREYXRlKCkpXHJcbiAgICAgICAgPiBuZXcgRGF0ZShkYXRlMi5nZXRGdWxsWWVhcigpLCBkYXRlMi5nZXRNb250aCgpLCBkYXRlMi5nZXREYXRlKCkpO1xyXG59XHJcblxyXG4vKipcclxuICogUmV0dXJuIHRydWUgaWYgZmlyc3QgZGF0ZSBncmVhdGVyIG9yIGVxdWFsIHRvIHNlY29uZCBkYXRlXHJcbiAqIEBwYXJhbSBkYXRlMSBGaXJzdCBkYXRlIHZhbHVlXHJcbiAqIEBwYXJhbSBkYXRlMiBTZWNvbmQgZGF0ZSB2YWx1ZVxyXG4gKiBAcmV0dXJucyBUcnVlIGlmIGZpcnN0IGRhdGUgZ3JlYXRlciBvciBlcXVhbCB0byBzZWNvbmQgZGF0ZVxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGlzRGF0ZUdyZWF0T3JFcXVhbChkYXRlMTogRGF0ZSwgZGF0ZTI6IERhdGUpOiBib29sZWFuIHtcclxuICAgIHJldHVybiBuZXcgRGF0ZShkYXRlMS5nZXRGdWxsWWVhcigpLCBkYXRlMS5nZXRNb250aCgpLCBkYXRlMS5nZXREYXRlKCkpXHJcbiAgICAgICAgPj0gbmV3IERhdGUoZGF0ZTIuZ2V0RnVsbFllYXIoKSwgZGF0ZTIuZ2V0TW9udGgoKSwgZGF0ZTIuZ2V0RGF0ZSgpKTtcclxufVxyXG5cclxuLyoqXHJcbiAqIFJldHVybiB0cnVlIGlmIGZpcnN0IGRhdGUgdGltZSBncmVhdGVyIHRoYW4gc2Vjb25kIGRhdGUgdGltZVxyXG4gKiBAcGFyYW0gZGF0ZTEgRmlyc3QgZGF0ZSB0aW1lIHZhbHVlXHJcbiAqIEBwYXJhbSBkYXRlMiBTZWNvbmQgZGF0ZSB0aW1lIHZhbHVlXHJcbiAqIEByZXR1cm5zIFRydWUgaWYgZmlyc3QgZGF0ZSB0aW1lIGdyZWF0ZXIgdGhhbiBzZWNvbmQgZGF0ZSB0aW1lXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gaXNEYXRlVGltZUdyZWF0KGRhdGUxOiBEYXRlLCBkYXRlMjogRGF0ZSk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIG5ldyBEYXRlKGRhdGUxLmdldEZ1bGxZZWFyKCksIGRhdGUxLmdldE1vbnRoKCksIGRhdGUxLmdldERhdGUoKSxcclxuICAgICAgICBkYXRlMS5nZXRIb3VycygpLCBkYXRlMS5nZXRNaW51dGVzKCkpXHJcbiAgICAgICAgPiBuZXcgRGF0ZShkYXRlMi5nZXRGdWxsWWVhcigpLCBkYXRlMi5nZXRNb250aCgpLCBkYXRlMi5nZXREYXRlKCksXHJcbiAgICAgICAgICAgIGRhdGUyLmdldEhvdXJzKCksIGRhdGUyLmdldE1pbnV0ZXMoKSk7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBSZXR1cm4gdHJ1ZSBpZiBmaXJzdCBkYXRlIHRpbWUgZ3JlYXRlciBvciBlcXVhbCB0byBzZWNvbmQgZGF0ZSB0aW1lXHJcbiAqIEBwYXJhbSBkYXRlMSBGaXJzdCBkYXRlIHRpbWUgdmFsdWVcclxuICogQHBhcmFtIGRhdGUyIFNlY29uZCBkYXRlIHRpbWUgdmFsdWVcclxuICogQHJldHVybnMgVHJ1ZSBpZiBmaXJzdCBkYXRlIHRpbWUgZ3JlYXRlciBvciBlcXVhbCB0byBzZWNvbmQgZGF0ZSB0aW1lXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gaXNEYXRlVGltZUdyZWF0T3JFcXVhbChkYXRlMTogRGF0ZSwgZGF0ZTI6IERhdGUpOiBib29sZWFuIHtcclxuICAgIHJldHVybiBuZXcgRGF0ZShkYXRlMS5nZXRGdWxsWWVhcigpLCBkYXRlMS5nZXRNb250aCgpLCBkYXRlMS5nZXREYXRlKCksXHJcbiAgICAgICAgZGF0ZTEuZ2V0SG91cnMoKSwgZGF0ZTEuZ2V0TWludXRlcygpKVxyXG4gICAgICAgID49IG5ldyBEYXRlKGRhdGUyLmdldEZ1bGxZZWFyKCksIGRhdGUyLmdldE1vbnRoKCksIGRhdGUyLmdldERhdGUoKSxcclxuICAgICAgICAgICAgZGF0ZTIuZ2V0SG91cnMoKSwgZGF0ZTIuZ2V0TWludXRlcygpKTtcclxufSJdfQ==
@@ -39,7 +39,8 @@ export function readAsDataURL(file, onLoad) {
39
39
  reader.onload = () => onLoad(reader.result);
40
40
  reader.readAsDataURL(file);
41
41
  }
42
- throw new Error('File utils | Read as data URL function --> File is empty.');
42
+ else
43
+ throw new Error('File utils | Read as data URL function --> File is empty.');
43
44
  }
44
45
  /**
45
46
  * Return true if file is image
@@ -47,6 +48,6 @@ export function readAsDataURL(file, onLoad) {
47
48
  * @returns True if file is image
48
49
  */
49
50
  export function isImage(file) {
50
- return (/\.(gif|jpe?g|jpg|tiff|png|webp|bmp)$/i).test(file.name);
51
+ return isDefined(file) && (/\.(gif|jpe?g|jpg|tiff|png|webp|bmp)$/i).test(file.name);
51
52
  }
52
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS51dGlscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1zZmMtY29tbW9uL3NyYy9saWIvdXRpbHMvZmlsZS51dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUUzQzs7Ozs7R0FLRztBQUNILE1BQU0sVUFBVSxhQUFhLENBQUMsS0FBYSxFQUFFLFFBQVEsR0FBRyxDQUFDO0lBQ3JELElBQUksS0FBSyxLQUFLLENBQUM7UUFDWCxPQUFPLEdBQUcsQ0FBQztJQUVmLE1BQU0sQ0FBQyxHQUFHLElBQUksQ0FBQztJQUNmLE1BQU0sRUFBRSxHQUFHLFFBQVEsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDO0lBQ3ZDLE1BQU0sS0FBSyxHQUFHLENBQUMsT0FBTyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztJQUN4RSxNQUFNLENBQUMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBRXBELE9BQU8sVUFBVSxDQUFDLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEdBQUcsR0FBRyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUM3RSxDQUFDO0FBRUQ7Ozs7R0FJRztBQUNILE1BQU0sVUFBVSxnQkFBZ0IsQ0FBQyxJQUFVO0lBQ3ZDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDO1FBQ2hCLE9BQU8sZUFBZSxDQUFDLFlBQVksQ0FBQztJQUV4QyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxLQUFLLGVBQWUsQ0FBQyxlQUFlLEVBQUU7UUFDNUQsT0FBTyxlQUFlLENBQUMsWUFBWSxDQUFDO0tBQ3ZDO0lBRUQsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLEVBQVksQ0FBQztBQUNoRCxDQUFDO0FBRUQ7Ozs7R0FJRztBQUNILE1BQU0sVUFBVSxhQUFhLENBQUMsSUFBVSxFQUFFLE1BQXFEO0lBQzNGLElBQUksU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFO1FBQ2pCLE1BQU0sTUFBTSxHQUFHLElBQUksVUFBVSxFQUFFLENBQUM7UUFDaEMsTUFBTSxDQUFDLE1BQU0sR0FBRyxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzVDLE1BQU0sQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUM7S0FDOUI7SUFFRCxNQUFNLElBQUksS0FBSyxDQUFDLDJEQUEyRCxDQUFDLENBQUM7QUFDakYsQ0FBQztBQUVEOzs7O0dBSUc7QUFDSCxNQUFNLFVBQVUsT0FBTyxDQUFDLElBQVU7SUFDOUIsT0FBTyxDQUFDLHVDQUF1QyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztBQUNyRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uQ29uc3RhbnRzIH0gZnJvbSBcIi4uL2NvbnN0YW50c1wiO1xyXG5pbXBvcnQgeyBpc0RlZmluZWQgfSBmcm9tIFwiLi9jb21tb24udXRpbHNcIjtcclxuXHJcbi8qKlxyXG4gKiBSZXR1cm4gcGFyc2VkIGZpbGUgc2l6ZSBhcyBzdHJpbmdcclxuICogQHBhcmFtIGJ5dGVzIEJ5dGVzIGNvdW50XHJcbiAqIEBwYXJhbSBkZWNpbWFscyBWYWx1ZSBhZnRlciBkb3RcclxuICogQHJldHVybnMgUGFyc2VkIGZpbGUgc2l6ZVxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIHBhcnNlRmlsZVNpemUoYnl0ZXM6IG51bWJlciwgZGVjaW1hbHMgPSAyKTogc3RyaW5nIHtcclxuICAgIGlmIChieXRlcyA9PT0gMClcclxuICAgICAgICByZXR1cm4gJzAnO1xyXG5cclxuICAgIGNvbnN0IGsgPSAxMDI0O1xyXG4gICAgY29uc3QgZG0gPSBkZWNpbWFscyA8IDAgPyAwIDogZGVjaW1hbHM7XHJcbiAgICBjb25zdCBzaXplcyA9IFsnQnl0ZXMnLCAnS0InLCAnTUInLCAnR0InLCAnVEInLCAnUEInLCAnRUInLCAnWkInLCAnWUInXTtcclxuICAgIGNvbnN0IGkgPSBNYXRoLmZsb29yKE1hdGgubG9nKGJ5dGVzKSAvIE1hdGgubG9nKGspKTtcclxuXHJcbiAgICByZXR1cm4gcGFyc2VGbG9hdCgoYnl0ZXMgLyBNYXRoLnBvdyhrLCBpKSkudG9GaXhlZChkbSkpICsgJyAnICsgc2l6ZXNbaV07XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBSZXR1cm4gZmlsZSBleHRlbnNpb25cclxuICogQHBhcmFtIGZpbGUgRmlsZSB2YWx1ZSBcclxuICogQHJldHVybnMgRmlsZSBleHRlbnNpb25cclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBnZXRGaWxlRXh0ZW5zaW9uKGZpbGU6IEZpbGUpOiBzdHJpbmcge1xyXG4gICAgaWYgKCFpc0RlZmluZWQoZmlsZSkpXHJcbiAgICAgICAgcmV0dXJuIENvbW1vbkNvbnN0YW50cy5FTVBUWV9TVFJJTkc7XHJcblxyXG4gICAgaWYgKGZpbGUubmFtZS5pbmRleE9mKCcuJykgPT09IENvbW1vbkNvbnN0YW50cy5OT1RfRk9VTkRfSU5ERVgpIHtcclxuICAgICAgICByZXR1cm4gQ29tbW9uQ29uc3RhbnRzLkVNUFRZX1NUUklORztcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gZmlsZS5uYW1lLnNwbGl0KCcuJykucG9wKCkgYXMgc3RyaW5nO1xyXG59XHJcblxyXG4vKipcclxuICogUmVhZCBmaWxlIGFzIGRhdGEgVVJMXHJcbiAqIEBwYXJhbSBmaWxlIEZpbGUgdmFsdWVcclxuICogQHBhcmFtIG9uTG9hZCBPbiBsb2FkIGFjdGlvblxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIHJlYWRBc0RhdGFVUkwoZmlsZTogRmlsZSwgb25Mb2FkOiAocmVzdWx0OiBzdHJpbmcgfCBBcnJheUJ1ZmZlciB8IG51bGwpID0+IHZvaWQpOiB2b2lkIHtcclxuICAgIGlmIChpc0RlZmluZWQoZmlsZSkpIHtcclxuICAgICAgICBjb25zdCByZWFkZXIgPSBuZXcgRmlsZVJlYWRlcigpO1xyXG4gICAgICAgIHJlYWRlci5vbmxvYWQgPSAoKSA9PiBvbkxvYWQocmVhZGVyLnJlc3VsdCk7XHJcbiAgICAgICAgcmVhZGVyLnJlYWRBc0RhdGFVUkwoZmlsZSk7XHJcbiAgICB9XHJcblxyXG4gICAgdGhyb3cgbmV3IEVycm9yKCdGaWxlIHV0aWxzIHwgUmVhZCBhcyBkYXRhIFVSTCBmdW5jdGlvbiAtLT4gRmlsZSBpcyBlbXB0eS4nKTtcclxufVxyXG5cclxuLyoqXHJcbiAqIFJldHVybiB0cnVlIGlmIGZpbGUgaXMgaW1hZ2VcclxuICogQHBhcmFtIGZpbGUgRmlsZSB2YWx1ZVxyXG4gKiBAcmV0dXJucyBUcnVlIGlmIGZpbGUgaXMgaW1hZ2VcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBpc0ltYWdlKGZpbGU6IEZpbGUpOiBib29sZWFuIHtcclxuICAgIHJldHVybiAoL1xcLihnaWZ8anBlP2d8anBnfHRpZmZ8cG5nfHdlYnB8Ym1wKSQvaSkudGVzdChmaWxlLm5hbWUpO1xyXG59Il19
53
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS51dGlscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1zZmMtY29tbW9uL3NyYy9saWIvdXRpbHMvZmlsZS51dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUUzQzs7Ozs7R0FLRztBQUNILE1BQU0sVUFBVSxhQUFhLENBQUMsS0FBYSxFQUFFLFFBQVEsR0FBRyxDQUFDO0lBQ3JELElBQUksS0FBSyxLQUFLLENBQUM7UUFDWCxPQUFPLEdBQUcsQ0FBQztJQUVmLE1BQU0sQ0FBQyxHQUFHLElBQUksQ0FBQztJQUNmLE1BQU0sRUFBRSxHQUFHLFFBQVEsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDO0lBQ3ZDLE1BQU0sS0FBSyxHQUFHLENBQUMsT0FBTyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztJQUN4RSxNQUFNLENBQUMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBRXBELE9BQU8sVUFBVSxDQUFDLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEdBQUcsR0FBRyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUM3RSxDQUFDO0FBRUQ7Ozs7R0FJRztBQUNILE1BQU0sVUFBVSxnQkFBZ0IsQ0FBQyxJQUFVO0lBQ3ZDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDO1FBQ2hCLE9BQU8sZUFBZSxDQUFDLFlBQVksQ0FBQztJQUV4QyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxLQUFLLGVBQWUsQ0FBQyxlQUFlLEVBQUU7UUFDNUQsT0FBTyxlQUFlLENBQUMsWUFBWSxDQUFDO0tBQ3ZDO0lBRUQsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLEVBQVksQ0FBQztBQUNoRCxDQUFDO0FBRUQ7Ozs7R0FJRztBQUNILE1BQU0sVUFBVSxhQUFhLENBQUMsSUFBVSxFQUFFLE1BQXFEO0lBQzNGLElBQUksU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFO1FBQ2pCLE1BQU0sTUFBTSxHQUFHLElBQUksVUFBVSxFQUFFLENBQUM7UUFDaEMsTUFBTSxDQUFDLE1BQU0sR0FBRyxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzVDLE1BQU0sQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUM7S0FDOUI7O1FBQ0csTUFBTSxJQUFJLEtBQUssQ0FBQywyREFBMkQsQ0FBQyxDQUFDO0FBQ3JGLENBQUM7QUFFRDs7OztHQUlHO0FBQ0gsTUFBTSxVQUFVLE9BQU8sQ0FBQyxJQUFVO0lBQzlCLE9BQU8sU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsdUNBQXVDLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0FBQ3hGLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Db25zdGFudHMgfSBmcm9tIFwiLi4vY29uc3RhbnRzXCI7XHJcbmltcG9ydCB7IGlzRGVmaW5lZCB9IGZyb20gXCIuL2NvbW1vbi51dGlsc1wiO1xyXG5cclxuLyoqXHJcbiAqIFJldHVybiBwYXJzZWQgZmlsZSBzaXplIGFzIHN0cmluZ1xyXG4gKiBAcGFyYW0gYnl0ZXMgQnl0ZXMgY291bnRcclxuICogQHBhcmFtIGRlY2ltYWxzIFZhbHVlIGFmdGVyIGRvdFxyXG4gKiBAcmV0dXJucyBQYXJzZWQgZmlsZSBzaXplXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gcGFyc2VGaWxlU2l6ZShieXRlczogbnVtYmVyLCBkZWNpbWFscyA9IDIpOiBzdHJpbmcge1xyXG4gICAgaWYgKGJ5dGVzID09PSAwKVxyXG4gICAgICAgIHJldHVybiAnMCc7XHJcblxyXG4gICAgY29uc3QgayA9IDEwMjQ7XHJcbiAgICBjb25zdCBkbSA9IGRlY2ltYWxzIDwgMCA/IDAgOiBkZWNpbWFscztcclxuICAgIGNvbnN0IHNpemVzID0gWydCeXRlcycsICdLQicsICdNQicsICdHQicsICdUQicsICdQQicsICdFQicsICdaQicsICdZQiddO1xyXG4gICAgY29uc3QgaSA9IE1hdGguZmxvb3IoTWF0aC5sb2coYnl0ZXMpIC8gTWF0aC5sb2coaykpO1xyXG5cclxuICAgIHJldHVybiBwYXJzZUZsb2F0KChieXRlcyAvIE1hdGgucG93KGssIGkpKS50b0ZpeGVkKGRtKSkgKyAnICcgKyBzaXplc1tpXTtcclxufVxyXG5cclxuLyoqXHJcbiAqIFJldHVybiBmaWxlIGV4dGVuc2lvblxyXG4gKiBAcGFyYW0gZmlsZSBGaWxlIHZhbHVlIFxyXG4gKiBAcmV0dXJucyBGaWxlIGV4dGVuc2lvblxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGdldEZpbGVFeHRlbnNpb24oZmlsZTogRmlsZSk6IHN0cmluZyB7XHJcbiAgICBpZiAoIWlzRGVmaW5lZChmaWxlKSlcclxuICAgICAgICByZXR1cm4gQ29tbW9uQ29uc3RhbnRzLkVNUFRZX1NUUklORztcclxuXHJcbiAgICBpZiAoZmlsZS5uYW1lLmluZGV4T2YoJy4nKSA9PT0gQ29tbW9uQ29uc3RhbnRzLk5PVF9GT1VORF9JTkRFWCkge1xyXG4gICAgICAgIHJldHVybiBDb21tb25Db25zdGFudHMuRU1QVFlfU1RSSU5HO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBmaWxlLm5hbWUuc3BsaXQoJy4nKS5wb3AoKSBhcyBzdHJpbmc7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBSZWFkIGZpbGUgYXMgZGF0YSBVUkxcclxuICogQHBhcmFtIGZpbGUgRmlsZSB2YWx1ZVxyXG4gKiBAcGFyYW0gb25Mb2FkIE9uIGxvYWQgYWN0aW9uXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gcmVhZEFzRGF0YVVSTChmaWxlOiBGaWxlLCBvbkxvYWQ6IChyZXN1bHQ6IHN0cmluZyB8IEFycmF5QnVmZmVyIHwgbnVsbCkgPT4gdm9pZCk6IHZvaWQge1xyXG4gICAgaWYgKGlzRGVmaW5lZChmaWxlKSkge1xyXG4gICAgICAgIGNvbnN0IHJlYWRlciA9IG5ldyBGaWxlUmVhZGVyKCk7XHJcbiAgICAgICAgcmVhZGVyLm9ubG9hZCA9ICgpID0+IG9uTG9hZChyZWFkZXIucmVzdWx0KTtcclxuICAgICAgICByZWFkZXIucmVhZEFzRGF0YVVSTChmaWxlKTtcclxuICAgIH0gZWxzZVxyXG4gICAgICAgIHRocm93IG5ldyBFcnJvcignRmlsZSB1dGlscyB8IFJlYWQgYXMgZGF0YSBVUkwgZnVuY3Rpb24gLS0+IEZpbGUgaXMgZW1wdHkuJyk7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBSZXR1cm4gdHJ1ZSBpZiBmaWxlIGlzIGltYWdlXHJcbiAqIEBwYXJhbSBmaWxlIEZpbGUgdmFsdWVcclxuICogQHJldHVybnMgVHJ1ZSBpZiBmaWxlIGlzIGltYWdlXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gaXNJbWFnZShmaWxlOiBGaWxlKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gaXNEZWZpbmVkKGZpbGUpICYmICgvXFwuKGdpZnxqcGU/Z3xqcGd8dGlmZnxwbmd8d2VicHxibXApJC9pKS50ZXN0KGZpbGUubmFtZSk7XHJcbn0iXX0=
@@ -1,7 +1,7 @@
1
- export { isDefined, isObject, isAsyncData, addPropertyToObject, removePropertyFromObject, mergeDeep, nameof, isNumeric } from './common.utils';
1
+ export { isDefined, isObject, isAsyncData, addPropertyToObject, removePropertyFromObject, mergeDeep, nameof, isNumeric, isChromeBrowser } from './common.utils';
2
2
  export { isNullOrEmptyString, contains, trim } from './string.utils';
3
- export { setMinutes, setHours, setDay, setYear, getNextMonth, getPreviousMonth, getNextYear, getPreviousYear, getFirstDayOfMonth, getLastDayOfMonth, getFirstDayOfYear, getLastDayOfYear, getFirstDayOfMonthByYearAndMonth, getLastDayOfMonthByYearAndMonth, getWeeksNumberInMonth, isEqualDates, isDateGreat, isDateGreatOrEqual, isDateTimeGreat, isDateTimeGreatOrEqual } from './date-time.utils';
3
+ export { setMinutes, setHours, setDay, setYear, setSeconds, setMilliseconds, setDefaultSecondsAndMiliseconds, getNextDate, getNextMonth, getPreviousMonth, getNextYear, getPreviousYear, getFirstDayOfMonth, getLastDayOfMonth, getFirstDayOfYear, getLastDayOfYear, getFirstDayOfMonthByYearAndMonth, getLastDayOfMonthByYearAndMonth, getWeeksNumberInMonth, isEqualDates, isDateGreat, isDateGreatOrEqual, isDateTimeGreat, isDateTimeGreatOrEqual } from './date-time.utils';
4
4
  export { parseFileSize, getFileExtension, readAsDataURL, isImage } from './file.utils';
5
- export { getCssLikeValue, getValueFromCssLikeValue, getCalcValue, addClasses, removeClasses, rgbToHex, hexToRgb, replaceRgbOpacity } from './ui.utils';
6
- export { any, hasItem, hasItemBy, hasObjectItem, firstOrDefault, firstItem, lastItem, all, where, skip, sortBy, sortByPath, distinct, sum, max, remove, addItem, removeItem, updateItem, getCollectionOrEmpty } from './collections.utils';
7
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc2ZjLWNvbW1vbi9zcmMvbGliL3V0aWxzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCxTQUFTLEVBQ1QsUUFBUSxFQUNSLFdBQVcsRUFDWCxtQkFBbUIsRUFDbkIsd0JBQXdCLEVBQ3hCLFNBQVMsRUFDVCxNQUFNLEVBQ04sU0FBUyxFQUNaLE1BQU0sZ0JBQWdCLENBQUE7QUFFdkIsT0FBTyxFQUNILG1CQUFtQixFQUNuQixRQUFRLEVBQ1IsSUFBSSxFQUNQLE1BQU0sZ0JBQWdCLENBQUE7QUFFdkIsT0FBTyxFQUNILFVBQVUsRUFDVixRQUFRLEVBQ1IsTUFBTSxFQUNOLE9BQU8sRUFDUCxZQUFZLEVBQ1osZ0JBQWdCLEVBQ2hCLFdBQVcsRUFDWCxlQUFlLEVBQ2Ysa0JBQWtCLEVBQ2xCLGlCQUFpQixFQUNqQixpQkFBaUIsRUFDakIsZ0JBQWdCLEVBQ2hCLGdDQUFnQyxFQUNoQywrQkFBK0IsRUFDL0IscUJBQXFCLEVBQ3JCLFlBQVksRUFDWixXQUFXLEVBQ1gsa0JBQWtCLEVBQ2xCLGVBQWUsRUFDZixzQkFBc0IsRUFDekIsTUFBTSxtQkFBbUIsQ0FBQTtBQUUxQixPQUFPLEVBQ0gsYUFBYSxFQUNiLGdCQUFnQixFQUNoQixhQUFhLEVBQ2IsT0FBTyxFQUNWLE1BQU0sY0FBYyxDQUFBO0FBRXJCLE9BQU8sRUFDSCxlQUFlLEVBQ2Ysd0JBQXdCLEVBQ3hCLFlBQVksRUFDWixVQUFVLEVBQ1YsYUFBYSxFQUNiLFFBQVEsRUFDUixRQUFRLEVBQ1IsaUJBQWlCLEVBQ3BCLE1BQU0sWUFBWSxDQUFBO0FBRW5CLE9BQU8sRUFDSCxHQUFHLEVBQ0gsT0FBTyxFQUNQLFNBQVMsRUFDVCxhQUFhLEVBQ2IsY0FBYyxFQUNkLFNBQVMsRUFDVCxRQUFRLEVBQ1IsR0FBRyxFQUNILEtBQUssRUFDTCxJQUFJLEVBQ0osTUFBTSxFQUNOLFVBQVUsRUFDVixRQUFRLEVBQ1IsR0FBRyxFQUNILEdBQUcsRUFDSCxNQUFNLEVBQ04sT0FBTyxFQUNQLFVBQVUsRUFDVixVQUFVLEVBQ1Ysb0JBQW9CLEVBQ3ZCLE1BQU0scUJBQXFCLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQge1xyXG4gICAgaXNEZWZpbmVkLFxyXG4gICAgaXNPYmplY3QsXHJcbiAgICBpc0FzeW5jRGF0YSxcclxuICAgIGFkZFByb3BlcnR5VG9PYmplY3QsXHJcbiAgICByZW1vdmVQcm9wZXJ0eUZyb21PYmplY3QsXHJcbiAgICBtZXJnZURlZXAsXHJcbiAgICBuYW1lb2YsXHJcbiAgICBpc051bWVyaWNcclxufSBmcm9tICcuL2NvbW1vbi51dGlscydcclxuXHJcbmV4cG9ydCB7XHJcbiAgICBpc051bGxPckVtcHR5U3RyaW5nLFxyXG4gICAgY29udGFpbnMsXHJcbiAgICB0cmltXHJcbn0gZnJvbSAnLi9zdHJpbmcudXRpbHMnXHJcblxyXG5leHBvcnQge1xyXG4gICAgc2V0TWludXRlcyxcclxuICAgIHNldEhvdXJzLFxyXG4gICAgc2V0RGF5LFxyXG4gICAgc2V0WWVhcixcclxuICAgIGdldE5leHRNb250aCxcclxuICAgIGdldFByZXZpb3VzTW9udGgsXHJcbiAgICBnZXROZXh0WWVhcixcclxuICAgIGdldFByZXZpb3VzWWVhcixcclxuICAgIGdldEZpcnN0RGF5T2ZNb250aCxcclxuICAgIGdldExhc3REYXlPZk1vbnRoLFxyXG4gICAgZ2V0Rmlyc3REYXlPZlllYXIsXHJcbiAgICBnZXRMYXN0RGF5T2ZZZWFyLFxyXG4gICAgZ2V0Rmlyc3REYXlPZk1vbnRoQnlZZWFyQW5kTW9udGgsXHJcbiAgICBnZXRMYXN0RGF5T2ZNb250aEJ5WWVhckFuZE1vbnRoLFxyXG4gICAgZ2V0V2Vla3NOdW1iZXJJbk1vbnRoLFxyXG4gICAgaXNFcXVhbERhdGVzLFxyXG4gICAgaXNEYXRlR3JlYXQsXHJcbiAgICBpc0RhdGVHcmVhdE9yRXF1YWwsXHJcbiAgICBpc0RhdGVUaW1lR3JlYXQsXHJcbiAgICBpc0RhdGVUaW1lR3JlYXRPckVxdWFsXHJcbn0gZnJvbSAnLi9kYXRlLXRpbWUudXRpbHMnXHJcblxyXG5leHBvcnQge1xyXG4gICAgcGFyc2VGaWxlU2l6ZSxcclxuICAgIGdldEZpbGVFeHRlbnNpb24sXHJcbiAgICByZWFkQXNEYXRhVVJMLFxyXG4gICAgaXNJbWFnZVxyXG59IGZyb20gJy4vZmlsZS51dGlscydcclxuXHJcbmV4cG9ydCB7XHJcbiAgICBnZXRDc3NMaWtlVmFsdWUsXHJcbiAgICBnZXRWYWx1ZUZyb21Dc3NMaWtlVmFsdWUsXHJcbiAgICBnZXRDYWxjVmFsdWUsXHJcbiAgICBhZGRDbGFzc2VzLFxyXG4gICAgcmVtb3ZlQ2xhc3NlcyxcclxuICAgIHJnYlRvSGV4LFxyXG4gICAgaGV4VG9SZ2IsXHJcbiAgICByZXBsYWNlUmdiT3BhY2l0eVxyXG59IGZyb20gJy4vdWkudXRpbHMnXHJcblxyXG5leHBvcnQge1xyXG4gICAgYW55LFxyXG4gICAgaGFzSXRlbSxcclxuICAgIGhhc0l0ZW1CeSxcclxuICAgIGhhc09iamVjdEl0ZW0sXHJcbiAgICBmaXJzdE9yRGVmYXVsdCxcclxuICAgIGZpcnN0SXRlbSxcclxuICAgIGxhc3RJdGVtLFxyXG4gICAgYWxsLFxyXG4gICAgd2hlcmUsXHJcbiAgICBza2lwLFxyXG4gICAgc29ydEJ5LFxyXG4gICAgc29ydEJ5UGF0aCxcclxuICAgIGRpc3RpbmN0LFxyXG4gICAgc3VtLFxyXG4gICAgbWF4LFxyXG4gICAgcmVtb3ZlLFxyXG4gICAgYWRkSXRlbSxcclxuICAgIHJlbW92ZUl0ZW0sXHJcbiAgICB1cGRhdGVJdGVtLFxyXG4gICAgZ2V0Q29sbGVjdGlvbk9yRW1wdHlcclxufSBmcm9tICcuL2NvbGxlY3Rpb25zLnV0aWxzJyJdfQ==
5
+ export { getCssLikeValue, getValueFromCssLikeValue, getCalcValue, getRotateValue, addClasses, removeClasses, rgbToHex, hexToRgb, replaceRgbOpacity } from './ui.utils';
6
+ export { any, hasItem, hasItemBy, hasObjectItem, firstOrDefault, firstItem, lastItem, all, where, skip, sort, sortBy, sortByPath, distinct, sum, max, remove, addItem, removeItem, removeItemBy, updateItemBy, getCollectionOrEmpty } from './collections.utils';
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc2ZjLWNvbW1vbi9zcmMvbGliL3V0aWxzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCxTQUFTLEVBQ1QsUUFBUSxFQUNSLFdBQVcsRUFDWCxtQkFBbUIsRUFDbkIsd0JBQXdCLEVBQ3hCLFNBQVMsRUFDVCxNQUFNLEVBQ04sU0FBUyxFQUNULGVBQWUsRUFDbEIsTUFBTSxnQkFBZ0IsQ0FBQTtBQUV2QixPQUFPLEVBQ0gsbUJBQW1CLEVBQ25CLFFBQVEsRUFDUixJQUFJLEVBQ1AsTUFBTSxnQkFBZ0IsQ0FBQTtBQUV2QixPQUFPLEVBQ0gsVUFBVSxFQUNWLFFBQVEsRUFDUixNQUFNLEVBQ04sT0FBTyxFQUNQLFVBQVUsRUFDVixlQUFlLEVBQ2YsK0JBQStCLEVBQy9CLFdBQVcsRUFDWCxZQUFZLEVBQ1osZ0JBQWdCLEVBQ2hCLFdBQVcsRUFDWCxlQUFlLEVBQ2Ysa0JBQWtCLEVBQ2xCLGlCQUFpQixFQUNqQixpQkFBaUIsRUFDakIsZ0JBQWdCLEVBQ2hCLGdDQUFnQyxFQUNoQywrQkFBK0IsRUFDL0IscUJBQXFCLEVBQ3JCLFlBQVksRUFDWixXQUFXLEVBQ1gsa0JBQWtCLEVBQ2xCLGVBQWUsRUFDZixzQkFBc0IsRUFDekIsTUFBTSxtQkFBbUIsQ0FBQTtBQUUxQixPQUFPLEVBQ0gsYUFBYSxFQUNiLGdCQUFnQixFQUNoQixhQUFhLEVBQ2IsT0FBTyxFQUNWLE1BQU0sY0FBYyxDQUFBO0FBRXJCLE9BQU8sRUFDSCxlQUFlLEVBQ2Ysd0JBQXdCLEVBQ3hCLFlBQVksRUFDWixjQUFjLEVBQ2QsVUFBVSxFQUNWLGFBQWEsRUFDYixRQUFRLEVBQ1IsUUFBUSxFQUNSLGlCQUFpQixFQUNwQixNQUFNLFlBQVksQ0FBQTtBQUVuQixPQUFPLEVBQ0gsR0FBRyxFQUNILE9BQU8sRUFDUCxTQUFTLEVBQ1QsYUFBYSxFQUNiLGNBQWMsRUFDZCxTQUFTLEVBQ1QsUUFBUSxFQUNSLEdBQUcsRUFDSCxLQUFLLEVBQ0wsSUFBSSxFQUNKLElBQUksRUFDSixNQUFNLEVBQ04sVUFBVSxFQUNWLFFBQVEsRUFDUixHQUFHLEVBQ0gsR0FBRyxFQUNILE1BQU0sRUFDTixPQUFPLEVBQ1AsVUFBVSxFQUNWLFlBQVksRUFDWixZQUFZLEVBQ1osb0JBQW9CLEVBQ3ZCLE1BQU0scUJBQXFCLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQge1xyXG4gICAgaXNEZWZpbmVkLFxyXG4gICAgaXNPYmplY3QsXHJcbiAgICBpc0FzeW5jRGF0YSxcclxuICAgIGFkZFByb3BlcnR5VG9PYmplY3QsXHJcbiAgICByZW1vdmVQcm9wZXJ0eUZyb21PYmplY3QsXHJcbiAgICBtZXJnZURlZXAsXHJcbiAgICBuYW1lb2YsXHJcbiAgICBpc051bWVyaWMsXHJcbiAgICBpc0Nocm9tZUJyb3dzZXJcclxufSBmcm9tICcuL2NvbW1vbi51dGlscydcclxuXHJcbmV4cG9ydCB7XHJcbiAgICBpc051bGxPckVtcHR5U3RyaW5nLFxyXG4gICAgY29udGFpbnMsXHJcbiAgICB0cmltXHJcbn0gZnJvbSAnLi9zdHJpbmcudXRpbHMnXHJcblxyXG5leHBvcnQge1xyXG4gICAgc2V0TWludXRlcyxcclxuICAgIHNldEhvdXJzLFxyXG4gICAgc2V0RGF5LFxyXG4gICAgc2V0WWVhcixcclxuICAgIHNldFNlY29uZHMsXHJcbiAgICBzZXRNaWxsaXNlY29uZHMsXHJcbiAgICBzZXREZWZhdWx0U2Vjb25kc0FuZE1pbGlzZWNvbmRzLFxyXG4gICAgZ2V0TmV4dERhdGUsXHJcbiAgICBnZXROZXh0TW9udGgsXHJcbiAgICBnZXRQcmV2aW91c01vbnRoLFxyXG4gICAgZ2V0TmV4dFllYXIsXHJcbiAgICBnZXRQcmV2aW91c1llYXIsXHJcbiAgICBnZXRGaXJzdERheU9mTW9udGgsXHJcbiAgICBnZXRMYXN0RGF5T2ZNb250aCxcclxuICAgIGdldEZpcnN0RGF5T2ZZZWFyLFxyXG4gICAgZ2V0TGFzdERheU9mWWVhcixcclxuICAgIGdldEZpcnN0RGF5T2ZNb250aEJ5WWVhckFuZE1vbnRoLFxyXG4gICAgZ2V0TGFzdERheU9mTW9udGhCeVllYXJBbmRNb250aCxcclxuICAgIGdldFdlZWtzTnVtYmVySW5Nb250aCxcclxuICAgIGlzRXF1YWxEYXRlcyxcclxuICAgIGlzRGF0ZUdyZWF0LFxyXG4gICAgaXNEYXRlR3JlYXRPckVxdWFsLFxyXG4gICAgaXNEYXRlVGltZUdyZWF0LFxyXG4gICAgaXNEYXRlVGltZUdyZWF0T3JFcXVhbFxyXG59IGZyb20gJy4vZGF0ZS10aW1lLnV0aWxzJ1xyXG5cclxuZXhwb3J0IHtcclxuICAgIHBhcnNlRmlsZVNpemUsXHJcbiAgICBnZXRGaWxlRXh0ZW5zaW9uLFxyXG4gICAgcmVhZEFzRGF0YVVSTCxcclxuICAgIGlzSW1hZ2VcclxufSBmcm9tICcuL2ZpbGUudXRpbHMnXHJcblxyXG5leHBvcnQge1xyXG4gICAgZ2V0Q3NzTGlrZVZhbHVlLFxyXG4gICAgZ2V0VmFsdWVGcm9tQ3NzTGlrZVZhbHVlLFxyXG4gICAgZ2V0Q2FsY1ZhbHVlLFxyXG4gICAgZ2V0Um90YXRlVmFsdWUsXHJcbiAgICBhZGRDbGFzc2VzLFxyXG4gICAgcmVtb3ZlQ2xhc3NlcyxcclxuICAgIHJnYlRvSGV4LFxyXG4gICAgaGV4VG9SZ2IsXHJcbiAgICByZXBsYWNlUmdiT3BhY2l0eVxyXG59IGZyb20gJy4vdWkudXRpbHMnXHJcblxyXG5leHBvcnQge1xyXG4gICAgYW55LFxyXG4gICAgaGFzSXRlbSxcclxuICAgIGhhc0l0ZW1CeSxcclxuICAgIGhhc09iamVjdEl0ZW0sXHJcbiAgICBmaXJzdE9yRGVmYXVsdCxcclxuICAgIGZpcnN0SXRlbSxcclxuICAgIGxhc3RJdGVtLFxyXG4gICAgYWxsLFxyXG4gICAgd2hlcmUsXHJcbiAgICBza2lwLFxyXG4gICAgc29ydCxcclxuICAgIHNvcnRCeSxcclxuICAgIHNvcnRCeVBhdGgsXHJcbiAgICBkaXN0aW5jdCxcclxuICAgIHN1bSxcclxuICAgIG1heCxcclxuICAgIHJlbW92ZSxcclxuICAgIGFkZEl0ZW0sXHJcbiAgICByZW1vdmVJdGVtLFxyXG4gICAgcmVtb3ZlSXRlbUJ5LFxyXG4gICAgdXBkYXRlSXRlbUJ5LFxyXG4gICAgZ2V0Q29sbGVjdGlvbk9yRW1wdHlcclxufSBmcm9tICcuL2NvbGxlY3Rpb25zLnV0aWxzJyJdfQ==
@@ -25,6 +25,14 @@ export function getValueFromCssLikeValue(value, type = UIConstants.CSS_PIXELS) {
25
25
  export function getCalcValue(part, value = 100) {
26
26
  return `calc(${value}${UIConstants.CSS_PERCENTAGE} / ${part} )`;
27
27
  }
28
+ /**
29
+ * Return CCS like rotate value
30
+ * @param value value as degrees
31
+ * @returns Rotate value
32
+ */
33
+ export function getRotateValue(value) {
34
+ return `rotate(${value}deg)`;
35
+ }
28
36
  /**
29
37
  * Add classes to HTML element
30
38
  * @param element HTML element
@@ -79,4 +87,4 @@ export function hexToRgb(hex) {
79
87
  export function replaceRgbOpacity(rgb, opacity) {
80
88
  return rgb.replace(UIConstants.RGB_OPACITY_PLACEHOLDER, opacity.toString());
81
89
  }
82
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWkudXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc2ZjLWNvbW1vbi9zcmMvbGliL3V0aWxzL3VpLnV0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxlQUFlLEVBQUUsV0FBVyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQzVELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUUzQzs7OztHQUlHO0FBQ0gsTUFBTSxVQUFVLGVBQWUsQ0FBQyxLQUFhLEVBQ3pDLE9BQWUsV0FBVyxDQUFDLFVBQVU7SUFDckMsT0FBTyxLQUFLLEdBQUcsSUFBSSxDQUFDO0FBQ3hCLENBQUM7QUFFRDs7OztHQUlHO0FBQ0gsTUFBTSxVQUFVLHdCQUF3QixDQUFDLEtBQWEsRUFDbEQsT0FBZSxXQUFXLENBQUMsVUFBVTtJQUNyQyxPQUFPLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsZUFBZSxDQUFDLFlBQVksQ0FBQyxDQUFDO0FBQzlELENBQUM7QUFFRDs7Ozs7R0FLRztBQUNILE1BQU0sVUFBVSxZQUFZLENBQUMsSUFBWSxFQUFFLFFBQWdCLEdBQUc7SUFDMUQsT0FBTyxRQUFRLEtBQUssR0FBRyxXQUFXLENBQUMsY0FBYyxNQUFNLElBQUksSUFBSSxDQUFDO0FBQ3BFLENBQUM7QUFFRDs7OztHQUlHO0FBQ0gsTUFBTSxVQUFVLFVBQVUsQ0FBQyxPQUFvQixFQUFFLEdBQUcsVUFBeUI7SUFDekUsSUFBSSxTQUFTLENBQUMsT0FBTyxDQUFDLEVBQUU7UUFDcEIsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQztLQUN2RTtBQUNMLENBQUM7QUFFRDs7OztHQUlHO0FBQ0gsTUFBTSxVQUFVLGFBQWEsQ0FBQyxPQUFvQixFQUFFLEdBQUcsVUFBeUI7SUFDNUUsSUFBSSxTQUFTLENBQUMsT0FBTyxDQUFDLEVBQUU7UUFDcEIsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQztLQUMxRTtBQUNMLENBQUM7QUFFRDs7Ozs7O0dBTUc7QUFDSCxNQUFNLFVBQVUsUUFBUSxDQUFDLENBQVMsRUFBRSxDQUFTLEVBQUUsQ0FBUztJQUNwRCxPQUFPLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFDOUUsQ0FBQztBQUVEOzs7O0dBSUc7QUFDSCxNQUFNLFVBQVUsUUFBUSxDQUFDLEdBQVc7SUFDaEMsSUFBSSxNQUFNLEdBQUcsMkNBQTJDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ25FLElBQUksTUFBTSxFQUFFO1FBQ1IsSUFBSSxDQUFDLEdBQUcsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUNoQyxJQUFJLENBQUMsR0FBRyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ2hDLElBQUksQ0FBQyxHQUFHLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDaEMsT0FBTyxPQUFPLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUM7S0FDbEM7SUFDRCxPQUFPLElBQUksQ0FBQztBQUNoQixDQUFDO0FBRUQ7Ozs7O0dBS0c7QUFDSCxNQUFNLFVBQVUsaUJBQWlCLENBQUMsR0FBVyxFQUFFLE9BQWU7SUFDMUQsT0FBTyxHQUFHLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyx1QkFBdUIsRUFBRSxPQUFPLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztBQUNoRixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uQ29uc3RhbnRzLCBVSUNvbnN0YW50cyB9IGZyb20gXCIuLi9jb25zdGFudHNcIjtcclxuaW1wb3J0IHsgaXNEZWZpbmVkIH0gZnJvbSBcIi4vY29tbW9uLnV0aWxzXCI7XHJcblxyXG4vKipcclxuICogUmV0dXJuIENTUyBsaWtlIHZhbHVlXHJcbiAqIEBwYXJhbSB2YWx1ZSBWYWx1ZSBhcyBudW1iZXJcclxuICogQHJldHVybnMgVmFsdWUgYXMgJzFweCdcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBnZXRDc3NMaWtlVmFsdWUodmFsdWU6IG51bWJlcixcclxuICAgIHR5cGU6IHN0cmluZyA9IFVJQ29uc3RhbnRzLkNTU19QSVhFTFMpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHZhbHVlICsgdHlwZTtcclxufVxyXG5cclxuLyoqXHJcbiAqIFBhcnNlIENTUyBsaWtlIHZhbHVlIHRvIG51bWJlclxyXG4gKiBAcGFyYW0gdmFsdWUgQ1NTIGxpa2UgdmFsdWVcclxuICogQHJldHVybnMgTnVtYmVyIHZhbHVlXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gZ2V0VmFsdWVGcm9tQ3NzTGlrZVZhbHVlKHZhbHVlOiBzdHJpbmcsXHJcbiAgICB0eXBlOiBzdHJpbmcgPSBVSUNvbnN0YW50cy5DU1NfUElYRUxTKTogbnVtYmVyIHtcclxuICAgIHJldHVybiArdmFsdWUucmVwbGFjZSh0eXBlLCBDb21tb25Db25zdGFudHMuRU1QVFlfU1RSSU5HKTtcclxufVxyXG5cclxuLyoqXHJcbiAqIFJldHVybiBDQ1MgbGlrZSBjYWxjIHZhbHVlXHJcbiAqIEBwYXJhbSB2YWx1ZSBBbGwgdmFsdWUgKDEwMCUgYnkgZGVmYXVsdClcclxuICogQHBhcmFtIHBhcnQgUGFydCB2YWx1ZVxyXG4gKiBAcmV0dXJucyBDYWxjIHZhbHVlXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gZ2V0Q2FsY1ZhbHVlKHBhcnQ6IG51bWJlciwgdmFsdWU6IG51bWJlciA9IDEwMCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gYGNhbGMoJHt2YWx1ZX0ke1VJQ29uc3RhbnRzLkNTU19QRVJDRU5UQUdFfSAvICR7cGFydH0gKWA7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBBZGQgY2xhc3NlcyB0byBIVE1MIGVsZW1lbnRcclxuICogQHBhcmFtIGVsZW1lbnQgSFRNTCBlbGVtZW50XHJcbiAqIEBwYXJhbSBjbGFzc05hbWVzIEFycmF5IG9mIENTUyBjbGFzc2VzXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gYWRkQ2xhc3NlcyhlbGVtZW50OiBIVE1MRWxlbWVudCwgLi4uY2xhc3NOYW1lczogQXJyYXk8c3RyaW5nPik6IHZvaWQge1xyXG4gICAgaWYgKGlzRGVmaW5lZChlbGVtZW50KSkge1xyXG4gICAgICAgIGNsYXNzTmFtZXMuZm9yRWFjaCgoY2xhc3NOYW1lKSA9PiBlbGVtZW50LmNsYXNzTGlzdC5hZGQoY2xhc3NOYW1lKSk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBSZW1vdmUgY2xhc3NlcyB0byBIVE1MIGVsZW1lbnRcclxuICogQHBhcmFtIGVsZW1lbnQgSFRNTCBlbGVtZW50XHJcbiAqIEBwYXJhbSBjbGFzc05hbWVzIEFycmF5IG9mIENTUyBjbGFzc2VzXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gcmVtb3ZlQ2xhc3NlcyhlbGVtZW50OiBIVE1MRWxlbWVudCwgLi4uY2xhc3NOYW1lczogQXJyYXk8c3RyaW5nPik6IHZvaWQge1xyXG4gICAgaWYgKGlzRGVmaW5lZChlbGVtZW50KSkge1xyXG4gICAgICAgIGNsYXNzTmFtZXMuZm9yRWFjaCgoY2xhc3NOYW1lKSA9PiBlbGVtZW50LmNsYXNzTGlzdC5yZW1vdmUoY2xhc3NOYW1lKSk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBDb252ZXJ0IFJHQiBjb2xvciB0byBIRVhcclxuICogQHBhcmFtIHIgUmVkXHJcbiAqIEBwYXJhbSBnIEdyZWVuXHJcbiAqIEBwYXJhbSBiIEJsdWVcclxuICogQHJldHVybnMgSEVYIHZhbHVlXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gcmdiVG9IZXgocjogbnVtYmVyLCBnOiBudW1iZXIsIGI6IG51bWJlcikge1xyXG4gICAgcmV0dXJuIFwiI1wiICsgKCgxIDw8IDI0KSArIChyIDw8IDE2KSArIChnIDw8IDgpICsgYikudG9TdHJpbmcoMTYpLnNsaWNlKDEpO1xyXG59XHJcblxyXG4vKipcclxuICogQ29udmVydCBIRVggdG8gUkdCIHZhbHVlXHJcbiAqIEBwYXJhbSBoZXggSEVYIHZhbHVlXHJcbiAqIEByZXR1cm5zIFJHQiB2YWx1ZVxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGhleFRvUmdiKGhleDogc3RyaW5nKTogc3RyaW5nIHwgbnVsbCB7XHJcbiAgICB2YXIgcmVzdWx0ID0gL14jPyhbYS1mXFxkXXsyfSkoW2EtZlxcZF17Mn0pKFthLWZcXGRdezJ9KSQvaS5leGVjKGhleCk7XHJcbiAgICBpZiAocmVzdWx0KSB7XHJcbiAgICAgICAgdmFyIHIgPSBwYXJzZUludChyZXN1bHRbMV0sIDE2KTtcclxuICAgICAgICB2YXIgZyA9IHBhcnNlSW50KHJlc3VsdFsyXSwgMTYpO1xyXG4gICAgICAgIHZhciBiID0gcGFyc2VJbnQocmVzdWx0WzNdLCAxNik7XHJcbiAgICAgICAgcmV0dXJuIGByZ2IoJHtyfSwgJHtnfSwgJHtifSlgO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIG51bGw7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBTZXQgb3BhY2l0eSBmb3IgUkdCIHZhbHVlXHJcbiAqIEBwYXJhbSByZ2IgUmdiIHZhbHVlIHdpdGgge29wYWNpdHl9IHBsYWNlaG9sZGVyXHJcbiAqIEBwYXJhbSBvcGFjaXR5IE9wYWNpdHkgdmFsdWVcclxuICogQHJldHVybnMgUkdCIHZhbHVlIHdpdGggcmVsZXZhbnQgb3BhY2l0eVxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIHJlcGxhY2VSZ2JPcGFjaXR5KHJnYjogc3RyaW5nLCBvcGFjaXR5OiBudW1iZXIpIHtcclxuICAgIHJldHVybiByZ2IucmVwbGFjZShVSUNvbnN0YW50cy5SR0JfT1BBQ0lUWV9QTEFDRUhPTERFUiwgb3BhY2l0eS50b1N0cmluZygpKTtcclxufSJdfQ==
90
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWkudXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc2ZjLWNvbW1vbi9zcmMvbGliL3V0aWxzL3VpLnV0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxlQUFlLEVBQUUsV0FBVyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQzVELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUUzQzs7OztHQUlHO0FBQ0gsTUFBTSxVQUFVLGVBQWUsQ0FBQyxLQUFhLEVBQ3pDLE9BQWUsV0FBVyxDQUFDLFVBQVU7SUFDckMsT0FBTyxLQUFLLEdBQUcsSUFBSSxDQUFDO0FBQ3hCLENBQUM7QUFFRDs7OztHQUlHO0FBQ0gsTUFBTSxVQUFVLHdCQUF3QixDQUFDLEtBQWEsRUFDbEQsT0FBZSxXQUFXLENBQUMsVUFBVTtJQUNyQyxPQUFPLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsZUFBZSxDQUFDLFlBQVksQ0FBQyxDQUFDO0FBQzlELENBQUM7QUFFRDs7Ozs7R0FLRztBQUNILE1BQU0sVUFBVSxZQUFZLENBQUMsSUFBWSxFQUFFLFFBQWdCLEdBQUc7SUFDMUQsT0FBTyxRQUFRLEtBQUssR0FBRyxXQUFXLENBQUMsY0FBYyxNQUFNLElBQUksSUFBSSxDQUFDO0FBQ3BFLENBQUM7QUFFRDs7OztHQUlHO0FBQ0gsTUFBTSxVQUFVLGNBQWMsQ0FBQyxLQUFhO0lBQ3hDLE9BQU8sVUFBVSxLQUFLLE1BQU0sQ0FBQztBQUNqQyxDQUFDO0FBRUQ7Ozs7R0FJRztBQUNILE1BQU0sVUFBVSxVQUFVLENBQUMsT0FBb0IsRUFBRSxHQUFHLFVBQXlCO0lBQ3pFLElBQUksU0FBUyxDQUFDLE9BQU8sQ0FBQyxFQUFFO1FBQ3BCLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxTQUFTLEVBQUUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUM7S0FDdkU7QUFDTCxDQUFDO0FBRUQ7Ozs7R0FJRztBQUNILE1BQU0sVUFBVSxhQUFhLENBQUMsT0FBb0IsRUFBRSxHQUFHLFVBQXlCO0lBQzVFLElBQUksU0FBUyxDQUFDLE9BQU8sQ0FBQyxFQUFFO1FBQ3BCLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxTQUFTLEVBQUUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUM7S0FDMUU7QUFDTCxDQUFDO0FBRUQ7Ozs7OztHQU1HO0FBQ0gsTUFBTSxVQUFVLFFBQVEsQ0FBQyxDQUFTLEVBQUUsQ0FBUyxFQUFFLENBQVM7SUFDcEQsT0FBTyxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQzlFLENBQUM7QUFFRDs7OztHQUlHO0FBQ0gsTUFBTSxVQUFVLFFBQVEsQ0FBQyxHQUFXO0lBQ2hDLElBQUksTUFBTSxHQUFHLDJDQUEyQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNuRSxJQUFJLE1BQU0sRUFBRTtRQUNSLElBQUksQ0FBQyxHQUFHLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDaEMsSUFBSSxDQUFDLEdBQUcsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUNoQyxJQUFJLENBQUMsR0FBRyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ2hDLE9BQU8sT0FBTyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDO0tBQ2xDO0lBQ0QsT0FBTyxJQUFJLENBQUM7QUFDaEIsQ0FBQztBQUVEOzs7OztHQUtHO0FBQ0gsTUFBTSxVQUFVLGlCQUFpQixDQUFDLEdBQVcsRUFBRSxPQUFlO0lBQzFELE9BQU8sR0FBRyxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsdUJBQXVCLEVBQUUsT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUM7QUFDaEYsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbkNvbnN0YW50cywgVUlDb25zdGFudHMgfSBmcm9tIFwiLi4vY29uc3RhbnRzXCI7XHJcbmltcG9ydCB7IGlzRGVmaW5lZCB9IGZyb20gXCIuL2NvbW1vbi51dGlsc1wiO1xyXG5cclxuLyoqXHJcbiAqIFJldHVybiBDU1MgbGlrZSB2YWx1ZVxyXG4gKiBAcGFyYW0gdmFsdWUgVmFsdWUgYXMgbnVtYmVyXHJcbiAqIEByZXR1cm5zIFZhbHVlIGFzICcxcHgnXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gZ2V0Q3NzTGlrZVZhbHVlKHZhbHVlOiBudW1iZXIsXHJcbiAgICB0eXBlOiBzdHJpbmcgPSBVSUNvbnN0YW50cy5DU1NfUElYRUxTKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB2YWx1ZSArIHR5cGU7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBQYXJzZSBDU1MgbGlrZSB2YWx1ZSB0byBudW1iZXJcclxuICogQHBhcmFtIHZhbHVlIENTUyBsaWtlIHZhbHVlXHJcbiAqIEByZXR1cm5zIE51bWJlciB2YWx1ZVxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGdldFZhbHVlRnJvbUNzc0xpa2VWYWx1ZSh2YWx1ZTogc3RyaW5nLFxyXG4gICAgdHlwZTogc3RyaW5nID0gVUlDb25zdGFudHMuQ1NTX1BJWEVMUyk6IG51bWJlciB7XHJcbiAgICByZXR1cm4gK3ZhbHVlLnJlcGxhY2UodHlwZSwgQ29tbW9uQ29uc3RhbnRzLkVNUFRZX1NUUklORyk7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBSZXR1cm4gQ0NTIGxpa2UgY2FsYyB2YWx1ZVxyXG4gKiBAcGFyYW0gdmFsdWUgQWxsIHZhbHVlICgxMDAlIGJ5IGRlZmF1bHQpXHJcbiAqIEBwYXJhbSBwYXJ0IFBhcnQgdmFsdWVcclxuICogQHJldHVybnMgQ2FsYyB2YWx1ZVxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGdldENhbGNWYWx1ZShwYXJ0OiBudW1iZXIsIHZhbHVlOiBudW1iZXIgPSAxMDApOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIGBjYWxjKCR7dmFsdWV9JHtVSUNvbnN0YW50cy5DU1NfUEVSQ0VOVEFHRX0gLyAke3BhcnR9IClgO1xyXG59XHJcblxyXG4vKipcclxuICogUmV0dXJuIENDUyBsaWtlIHJvdGF0ZSB2YWx1ZVxyXG4gKiBAcGFyYW0gdmFsdWUgdmFsdWUgYXMgZGVncmVlc1xyXG4gKiBAcmV0dXJucyBSb3RhdGUgdmFsdWVcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBnZXRSb3RhdGVWYWx1ZSh2YWx1ZTogbnVtYmVyKTogc3RyaW5nIHtcclxuICAgIHJldHVybiBgcm90YXRlKCR7dmFsdWV9ZGVnKWA7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBBZGQgY2xhc3NlcyB0byBIVE1MIGVsZW1lbnRcclxuICogQHBhcmFtIGVsZW1lbnQgSFRNTCBlbGVtZW50XHJcbiAqIEBwYXJhbSBjbGFzc05hbWVzIEFycmF5IG9mIENTUyBjbGFzc2VzXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gYWRkQ2xhc3NlcyhlbGVtZW50OiBIVE1MRWxlbWVudCwgLi4uY2xhc3NOYW1lczogQXJyYXk8c3RyaW5nPik6IHZvaWQge1xyXG4gICAgaWYgKGlzRGVmaW5lZChlbGVtZW50KSkge1xyXG4gICAgICAgIGNsYXNzTmFtZXMuZm9yRWFjaCgoY2xhc3NOYW1lKSA9PiBlbGVtZW50LmNsYXNzTGlzdC5hZGQoY2xhc3NOYW1lKSk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBSZW1vdmUgY2xhc3NlcyB0byBIVE1MIGVsZW1lbnRcclxuICogQHBhcmFtIGVsZW1lbnQgSFRNTCBlbGVtZW50XHJcbiAqIEBwYXJhbSBjbGFzc05hbWVzIEFycmF5IG9mIENTUyBjbGFzc2VzXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gcmVtb3ZlQ2xhc3NlcyhlbGVtZW50OiBIVE1MRWxlbWVudCwgLi4uY2xhc3NOYW1lczogQXJyYXk8c3RyaW5nPik6IHZvaWQge1xyXG4gICAgaWYgKGlzRGVmaW5lZChlbGVtZW50KSkge1xyXG4gICAgICAgIGNsYXNzTmFtZXMuZm9yRWFjaCgoY2xhc3NOYW1lKSA9PiBlbGVtZW50LmNsYXNzTGlzdC5yZW1vdmUoY2xhc3NOYW1lKSk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBDb252ZXJ0IFJHQiBjb2xvciB0byBIRVhcclxuICogQHBhcmFtIHIgUmVkXHJcbiAqIEBwYXJhbSBnIEdyZWVuXHJcbiAqIEBwYXJhbSBiIEJsdWVcclxuICogQHJldHVybnMgSEVYIHZhbHVlXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gcmdiVG9IZXgocjogbnVtYmVyLCBnOiBudW1iZXIsIGI6IG51bWJlcikge1xyXG4gICAgcmV0dXJuIFwiI1wiICsgKCgxIDw8IDI0KSArIChyIDw8IDE2KSArIChnIDw8IDgpICsgYikudG9TdHJpbmcoMTYpLnNsaWNlKDEpO1xyXG59XHJcblxyXG4vKipcclxuICogQ29udmVydCBIRVggdG8gUkdCIHZhbHVlXHJcbiAqIEBwYXJhbSBoZXggSEVYIHZhbHVlXHJcbiAqIEByZXR1cm5zIFJHQiB2YWx1ZVxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGhleFRvUmdiKGhleDogc3RyaW5nKTogc3RyaW5nIHwgbnVsbCB7XHJcbiAgICB2YXIgcmVzdWx0ID0gL14jPyhbYS1mXFxkXXsyfSkoW2EtZlxcZF17Mn0pKFthLWZcXGRdezJ9KSQvaS5leGVjKGhleCk7XHJcbiAgICBpZiAocmVzdWx0KSB7XHJcbiAgICAgICAgdmFyIHIgPSBwYXJzZUludChyZXN1bHRbMV0sIDE2KTtcclxuICAgICAgICB2YXIgZyA9IHBhcnNlSW50KHJlc3VsdFsyXSwgMTYpO1xyXG4gICAgICAgIHZhciBiID0gcGFyc2VJbnQocmVzdWx0WzNdLCAxNik7XHJcbiAgICAgICAgcmV0dXJuIGByZ2IoJHtyfSwgJHtnfSwgJHtifSlgO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIG51bGw7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBTZXQgb3BhY2l0eSBmb3IgUkdCIHZhbHVlXHJcbiAqIEBwYXJhbSByZ2IgUmdiIHZhbHVlIHdpdGgge29wYWNpdHl9IHBsYWNlaG9sZGVyXHJcbiAqIEBwYXJhbSBvcGFjaXR5IE9wYWNpdHkgdmFsdWVcclxuICogQHJldHVybnMgUkdCIHZhbHVlIHdpdGggcmVsZXZhbnQgb3BhY2l0eVxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIHJlcGxhY2VSZ2JPcGFjaXR5KHJnYjogc3RyaW5nLCBvcGFjaXR5OiBudW1iZXIpIHtcclxuICAgIHJldHVybiByZ2IucmVwbGFjZShVSUNvbnN0YW50cy5SR0JfT1BBQ0lUWV9QTEFDRUhPTERFUiwgb3BhY2l0eS50b1N0cmluZygpKTtcclxufSJdfQ==
@@ -7,5 +7,6 @@ export * from './lib/enums';
7
7
  export * from './lib/utils';
8
8
  export * from './lib/services';
9
9
  export * from './lib/directives';
10
+ export * from './lib/pipes';
10
11
  export * from './lib/components';
11
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL25neC1zZmMtY29tbW9uL3NyYy9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyw2QkFBNkIsQ0FBQztBQUM1QyxjQUFjLGlCQUFpQixDQUFDO0FBQ2hDLGNBQWMsYUFBYSxDQUFDO0FBQzVCLGNBQWMsYUFBYSxDQUFDO0FBQzVCLGNBQWMsZ0JBQWdCLENBQUM7QUFDL0IsY0FBYyxrQkFBa0IsQ0FBQztBQUNqQyxjQUFjLGtCQUFrQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcclxuICogUHVibGljIEFQSSBTdXJmYWNlIG9mIG5neC1zZmMtY29tbW9uXHJcbiAqL1xyXG5cclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbmd4LXNmYy1jb21tb24ubW9kdWxlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29uc3RhbnRzJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvZW51bXMnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi91dGlscyc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvZGlyZWN0aXZlcyc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMnO1xyXG4iXX0=
12
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL25neC1zZmMtY29tbW9uL3NyYy9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyw2QkFBNkIsQ0FBQztBQUM1QyxjQUFjLGlCQUFpQixDQUFDO0FBQ2hDLGNBQWMsYUFBYSxDQUFDO0FBQzVCLGNBQWMsYUFBYSxDQUFDO0FBQzVCLGNBQWMsZ0JBQWdCLENBQUM7QUFDL0IsY0FBYyxrQkFBa0IsQ0FBQztBQUNqQyxjQUFjLGFBQWEsQ0FBQztBQUM1QixjQUFjLGtCQUFrQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcclxuICogUHVibGljIEFQSSBTdXJmYWNlIG9mIG5neC1zZmMtY29tbW9uXHJcbiAqL1xyXG5cclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbmd4LXNmYy1jb21tb24ubW9kdWxlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29uc3RhbnRzJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvZW51bXMnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi91dGlscyc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvZGlyZWN0aXZlcyc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3BpcGVzJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cyc7XHJcbiJdfQ==