@taiga-ui/core 2.49.2 → 2.50.2
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.
- package/bundles/taiga-ui-core-components-data-list.umd.js +2 -1
- package/bundles/taiga-ui-core-components-data-list.umd.js.map +1 -1
- package/bundles/taiga-ui-core-components-data-list.umd.min.js +1 -1
- package/bundles/taiga-ui-core-components-data-list.umd.min.js.map +1 -1
- package/bundles/taiga-ui-core-components-dialog.umd.js +6 -5
- package/bundles/taiga-ui-core-components-dialog.umd.js.map +1 -1
- package/bundles/taiga-ui-core-components-dialog.umd.min.js +1 -1
- package/bundles/taiga-ui-core-components-dialog.umd.min.js.map +1 -1
- package/bundles/taiga-ui-core-components-dropdown-box.umd.js +5 -4
- package/bundles/taiga-ui-core-components-dropdown-box.umd.js.map +1 -1
- package/bundles/taiga-ui-core-components-dropdown-box.umd.min.js +1 -1
- package/bundles/taiga-ui-core-components-dropdown-box.umd.min.js.map +1 -1
- package/bundles/taiga-ui-core-components-hints-host.umd.js +5 -5
- package/bundles/taiga-ui-core-components-hints-host.umd.js.map +1 -1
- package/bundles/taiga-ui-core-components-hints-host.umd.min.js +1 -1
- package/bundles/taiga-ui-core-components-hints-host.umd.min.js.map +1 -1
- package/bundles/taiga-ui-core-components-primitive-textfield.umd.js +18 -19
- package/bundles/taiga-ui-core-components-primitive-textfield.umd.js.map +1 -1
- package/bundles/taiga-ui-core-components-primitive-textfield.umd.min.js +1 -1
- package/bundles/taiga-ui-core-components-primitive-textfield.umd.min.js.map +1 -1
- package/bundles/taiga-ui-core-components-root.umd.js +1 -1
- package/bundles/taiga-ui-core-components-root.umd.min.js +1 -1
- package/bundles/taiga-ui-core-components-root.umd.min.js.map +1 -1
- package/bundles/taiga-ui-core-constants.umd.js +1 -1
- package/bundles/taiga-ui-core-constants.umd.js.map +1 -1
- package/bundles/taiga-ui-core-constants.umd.min.js +1 -1
- package/bundles/taiga-ui-core-constants.umd.min.js.map +1 -1
- package/bundles/taiga-ui-core-tokens.umd.js +2 -2
- package/bundles/taiga-ui-core-tokens.umd.js.map +1 -1
- package/bundles/taiga-ui-core-tokens.umd.min.js +1 -1
- package/bundles/taiga-ui-core-tokens.umd.min.js.map +1 -1
- package/bundles/taiga-ui-core-utils-dom.umd.js +46 -0
- package/bundles/taiga-ui-core-utils-dom.umd.js.map +1 -1
- package/bundles/taiga-ui-core-utils-dom.umd.min.js +1 -1
- package/bundles/taiga-ui-core-utils-dom.umd.min.js.map +1 -1
- package/bundles/taiga-ui-core-utils-format.umd.js +1 -0
- package/bundles/taiga-ui-core-utils-format.umd.js.map +1 -1
- package/bundles/taiga-ui-core-utils-format.umd.min.js.map +1 -1
- package/bundles/taiga-ui-core-utils-mask.umd.js +3 -1
- package/bundles/taiga-ui-core-utils-mask.umd.js.map +1 -1
- package/bundles/taiga-ui-core-utils-mask.umd.min.js.map +1 -1
- package/bundles/taiga-ui-core-utils-mobile.umd.js +17 -0
- package/bundles/taiga-ui-core-utils-mobile.umd.js.map +1 -0
- package/bundles/taiga-ui-core-utils-mobile.umd.min.js +2 -0
- package/bundles/taiga-ui-core-utils-mobile.umd.min.js.map +1 -0
- package/bundles/taiga-ui-core-utils.umd.js +12 -4
- package/bundles/taiga-ui-core-utils.umd.js.map +1 -1
- package/bundles/taiga-ui-core-utils.umd.min.js +1 -1
- package/components/data-list/data-list.component.d.ts +1 -1
- package/components/data-list/taiga-ui-core-components-data-list.metadata.json +1 -1
- package/components/dialog/taiga-ui-core-components-dialog.metadata.json +1 -1
- package/components/hints-host/taiga-ui-core-components-hints-host.metadata.json +1 -1
- package/components/primitive-textfield/taiga-ui-core-components-primitive-textfield.metadata.json +1 -1
- package/components/primitive-textfield/value-decoration/value-decoration.component.d.ts +6 -6
- package/components/root/taiga-ui-core-components-root.metadata.json +1 -1
- package/constants/taiga-ui-core-constants.metadata.json +1 -1
- package/constants/version.d.ts +1 -1
- package/esm2015/components/data-list/data-list.component.js +3 -3
- package/esm2015/components/dialog/dialog.providers.js +4 -2
- package/esm2015/components/dropdown-box/dropdown-box.component.js +7 -6
- package/esm2015/components/hints-host/hint-box/hint-box.component.js +3 -2
- package/esm2015/components/primitive-textfield/primitive-textfield.module.js +2 -4
- package/esm2015/components/primitive-textfield/value-decoration/value-decoration.component.js +17 -19
- package/esm2015/components/root/root.component.js +1 -1
- package/esm2015/constants/version.js +2 -2
- package/esm2015/interfaces/number-format-settings.js +1 -1
- package/esm2015/tokens/is-mobile-resolution.js +4 -3
- package/esm2015/utils/dom/get-viewport-height.js +21 -0
- package/esm2015/utils/dom/get-viewport-width.js +21 -0
- package/esm2015/utils/dom/index.js +3 -1
- package/esm2015/utils/format/format-number.js +2 -1
- package/esm2015/utils/index.js +2 -1
- package/esm2015/utils/mask/create-number-mask.js +4 -2
- package/esm2015/utils/mobile/index.js +2 -0
- package/esm2015/utils/mobile/is-mobile.js +5 -0
- package/esm2015/utils/mobile/taiga-ui-core-utils-mobile.js +5 -0
- package/esm5/components/data-list/data-list.component.js +3 -2
- package/esm5/components/dialog/dialog.providers.js +4 -2
- package/esm5/components/dropdown-box/dropdown-box.component.js +7 -6
- package/esm5/components/hints-host/hint-box/hint-box.component.js +3 -2
- package/esm5/components/primitive-textfield/primitive-textfield.module.js +2 -4
- package/esm5/components/primitive-textfield/value-decoration/value-decoration.component.js +17 -19
- package/esm5/components/root/root.component.js +1 -1
- package/esm5/constants/version.js +2 -2
- package/esm5/interfaces/number-format-settings.js +1 -1
- package/esm5/tokens/is-mobile-resolution.js +4 -3
- package/esm5/utils/dom/get-viewport-height.js +22 -0
- package/esm5/utils/dom/get-viewport-width.js +22 -0
- package/esm5/utils/dom/index.js +3 -1
- package/esm5/utils/format/format-number.js +2 -1
- package/esm5/utils/index.js +2 -1
- package/esm5/utils/mask/create-number-mask.js +4 -2
- package/esm5/utils/mobile/index.js +2 -0
- package/esm5/utils/mobile/is-mobile.js +6 -0
- package/esm5/utils/mobile/taiga-ui-core-utils-mobile.js +5 -0
- package/fesm2015/taiga-ui-core-components-data-list.js +2 -2
- package/fesm2015/taiga-ui-core-components-data-list.js.map +1 -1
- package/fesm2015/taiga-ui-core-components-dialog.js +3 -1
- package/fesm2015/taiga-ui-core-components-dialog.js.map +1 -1
- package/fesm2015/taiga-ui-core-components-dropdown-box.js +6 -5
- package/fesm2015/taiga-ui-core-components-dropdown-box.js.map +1 -1
- package/fesm2015/taiga-ui-core-components-hints-host.js +2 -1
- package/fesm2015/taiga-ui-core-components-hints-host.js.map +1 -1
- package/fesm2015/taiga-ui-core-components-primitive-textfield.js +17 -19
- package/fesm2015/taiga-ui-core-components-primitive-textfield.js.map +1 -1
- package/fesm2015/taiga-ui-core-components-root.js +1 -1
- package/fesm2015/taiga-ui-core-constants.js +1 -1
- package/fesm2015/taiga-ui-core-constants.js.map +1 -1
- package/fesm2015/taiga-ui-core-tokens.js +3 -3
- package/fesm2015/taiga-ui-core-tokens.js.map +1 -1
- package/fesm2015/taiga-ui-core-utils-dom.js +43 -1
- package/fesm2015/taiga-ui-core-utils-dom.js.map +1 -1
- package/fesm2015/taiga-ui-core-utils-format.js +1 -0
- package/fesm2015/taiga-ui-core-utils-format.js.map +1 -1
- package/fesm2015/taiga-ui-core-utils-mask.js +3 -1
- package/fesm2015/taiga-ui-core-utils-mask.js.map +1 -1
- package/fesm2015/taiga-ui-core-utils-mobile.js +12 -0
- package/fesm2015/taiga-ui-core-utils-mobile.js.map +1 -0
- package/fesm2015/taiga-ui-core-utils.js +1 -0
- package/fesm2015/taiga-ui-core-utils.js.map +1 -1
- package/fesm5/taiga-ui-core-components-data-list.js +2 -1
- package/fesm5/taiga-ui-core-components-data-list.js.map +1 -1
- package/fesm5/taiga-ui-core-components-dialog.js +3 -1
- package/fesm5/taiga-ui-core-components-dialog.js.map +1 -1
- package/fesm5/taiga-ui-core-components-dropdown-box.js +6 -5
- package/fesm5/taiga-ui-core-components-dropdown-box.js.map +1 -1
- package/fesm5/taiga-ui-core-components-hints-host.js +2 -1
- package/fesm5/taiga-ui-core-components-hints-host.js.map +1 -1
- package/fesm5/taiga-ui-core-components-primitive-textfield.js +17 -19
- package/fesm5/taiga-ui-core-components-primitive-textfield.js.map +1 -1
- package/fesm5/taiga-ui-core-components-root.js +1 -1
- package/fesm5/taiga-ui-core-constants.js +1 -1
- package/fesm5/taiga-ui-core-constants.js.map +1 -1
- package/fesm5/taiga-ui-core-tokens.js +3 -3
- package/fesm5/taiga-ui-core-tokens.js.map +1 -1
- package/fesm5/taiga-ui-core-utils-dom.js +45 -1
- package/fesm5/taiga-ui-core-utils-dom.js.map +1 -1
- package/fesm5/taiga-ui-core-utils-format.js +1 -0
- package/fesm5/taiga-ui-core-utils-format.js.map +1 -1
- package/fesm5/taiga-ui-core-utils-mask.js +3 -1
- package/fesm5/taiga-ui-core-utils-mask.js.map +1 -1
- package/fesm5/taiga-ui-core-utils-mobile.js +13 -0
- package/fesm5/taiga-ui-core-utils-mobile.js.map +1 -0
- package/fesm5/taiga-ui-core-utils.js +1 -0
- package/fesm5/taiga-ui-core-utils.js.map +1 -1
- package/package.json +4 -4
- package/tokens/taiga-ui-core-tokens.metadata.json +1 -1
- package/utils/dom/get-viewport-height.d.ts +18 -0
- package/utils/dom/get-viewport-width.d.ts +18 -0
- package/utils/dom/index.d.ts +2 -0
- package/utils/dom/taiga-ui-core-utils-dom.metadata.json +1 -1
- package/utils/index.d.ts +1 -0
- package/utils/mobile/index.d.ts +1 -0
- package/utils/mobile/is-mobile.d.ts +2 -0
- package/utils/mobile/package.json +13 -0
- package/utils/mobile/taiga-ui-core-utils-mobile.d.ts +4 -0
- package/utils/mobile/taiga-ui-core-utils-mobile.metadata.json +1 -0
- package/utils/taiga-ui-core-utils.metadata.json +1 -1
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { CHAR_HYPHEN, CHAR_NO_BREAK_SPACE } from '@taiga-ui/cdk';
|
|
2
2
|
import { getFractionPartPadded } from './get-fractional-part-padded';
|
|
3
|
+
// TODO: refactor later to `formatNumber(value: number, options: Partial<AllTheStuff>)`
|
|
3
4
|
/**
|
|
4
5
|
* Formats number adding a thousand separators and correct decimal separator
|
|
5
6
|
* padding decimal part with zeroes to given length
|
|
@@ -35,4 +36,4 @@ export function formatNumber(value, decimalLimit = null, decimalSeparator = ',',
|
|
|
35
36
|
}
|
|
36
37
|
return fractionPartPadded ? result + decimalSeparator + fractionPartPadded : result;
|
|
37
38
|
}
|
|
38
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
39
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybWF0LW51bWJlci5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0B0YWlnYS11aS9jb3JlL3V0aWxzL2Zvcm1hdC8iLCJzb3VyY2VzIjpbImZvcm1hdC1udW1iZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFdBQVcsRUFBRSxtQkFBbUIsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUUvRCxPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUVuRSx1RkFBdUY7QUFDdkY7Ozs7Ozs7Ozs7R0FVRztBQUNILE1BQU0sVUFBVSxZQUFZLENBQ3hCLEtBQWEsRUFDYixlQUE4QixJQUFJLEVBQ2xDLG1CQUEyQixHQUFHLEVBQzlCLG9CQUE0QixtQkFBbUIsRUFDL0MsY0FBdUIsSUFBSTtJQUUzQixNQUFNLGlCQUFpQixHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBRTlELElBQUksa0JBQWtCLEdBQUcscUJBQXFCLENBQUMsS0FBSyxFQUFFLFlBQVksQ0FBQyxDQUFDO0lBRXBFLElBQUksWUFBWSxLQUFLLElBQUksRUFBRTtRQUN2QixJQUFJLFdBQVcsRUFBRTtZQUNiLE1BQU0sZUFBZSxHQUFXLElBQUksQ0FBQyxHQUFHLENBQ3BDLFlBQVksR0FBRyxrQkFBa0IsQ0FBQyxNQUFNLEVBQ3hDLENBQUMsQ0FDSixDQUFDO1lBQ0YsTUFBTSxjQUFjLEdBQUcsR0FBRyxDQUFDLE1BQU0sQ0FBQyxlQUFlLENBQUMsQ0FBQztZQUVuRCxrQkFBa0IsR0FBRyxHQUFHLGtCQUFrQixHQUFHLGNBQWMsRUFBRSxDQUFDO1NBQ2pFO2FBQU07WUFDSCxrQkFBa0IsR0FBRyxrQkFBa0IsQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1NBQzlEO0tBQ0o7SUFFRCxNQUFNLFNBQVMsR0FBRyxpQkFBaUIsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO0lBQy9DLE1BQU0sSUFBSSxHQUFHLEtBQUssR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO0lBQzFDLElBQUksTUFBTSxHQUFHLElBQUksR0FBRyxpQkFBaUIsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFFaEQsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLGlCQUFpQixDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBRTtRQUMvQyxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssU0FBUyxJQUFJLGlCQUFpQixDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7WUFDckQsTUFBTSxJQUFJLGlCQUFpQixDQUFDO1NBQy9CO1FBRUQsTUFBTSxJQUFJLGlCQUFpQixDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQztLQUN6QztJQUVELE9BQU8sa0JBQWtCLENBQUMsQ0FBQyxDQUFDLE1BQU0sR0FBRyxnQkFBZ0IsR0FBRyxrQkFBa0IsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDO0FBQ3hGLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NIQVJfSFlQSEVOLCBDSEFSX05PX0JSRUFLX1NQQUNFfSBmcm9tICdAdGFpZ2EtdWkvY2RrJztcblxuaW1wb3J0IHtnZXRGcmFjdGlvblBhcnRQYWRkZWR9IGZyb20gJy4vZ2V0LWZyYWN0aW9uYWwtcGFydC1wYWRkZWQnO1xuXG4vLyBUT0RPOiByZWZhY3RvciBsYXRlciB0byBgZm9ybWF0TnVtYmVyKHZhbHVlOiBudW1iZXIsIG9wdGlvbnM6IFBhcnRpYWw8QWxsVGhlU3R1ZmY+KWBcbi8qKlxuICogRm9ybWF0cyBudW1iZXIgYWRkaW5nIGEgdGhvdXNhbmQgc2VwYXJhdG9ycyBhbmQgY29ycmVjdCBkZWNpbWFsIHNlcGFyYXRvclxuICogcGFkZGluZyBkZWNpbWFsIHBhcnQgd2l0aCB6ZXJvZXMgdG8gZ2l2ZW4gbGVuZ3RoXG4gKlxuICogQHBhcmFtIHZhbHVlIHRoZSBpbnB1dCBudW1iZXJcbiAqIEBwYXJhbSBkZWNpbWFsTGltaXQgbnVtYmVyIG9mIGRpZ2l0cyBvZiBkZWNpbWFsIHBhcnQsIG51bGwgdG8ga2VlcCB1bnRvdWNoZWRcbiAqIEBwYXJhbSBkZWNpbWFsU2VwYXJhdG9yIHNlcGFyYXRvciBiZXR3ZWVuIHRoZSBpbnRlZ2VyIGFuZCB0aGUgZGVjaW1hbCBwYXJ0XG4gKiBAcGFyYW0gdGhvdXNhbmRTZXBhcmF0b3Igc2VwYXJhdG9yIGJldHdlZW4gdGhvdXNhbmRzXG4gKiBAcGFyYW0gemVyb1BhZGRpbmcgZW5hYmxlIHplcm9zIGF0IHRoZSBlbmQgb2YgZGVjaW1hbCBwYXJ0XG4gKiBAcmV0dXJuIHRoZSBmb3JtYXR0ZWQgc3RyaW5nXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBmb3JtYXROdW1iZXIoXG4gICAgdmFsdWU6IG51bWJlcixcbiAgICBkZWNpbWFsTGltaXQ6IG51bWJlciB8IG51bGwgPSBudWxsLFxuICAgIGRlY2ltYWxTZXBhcmF0b3I6IHN0cmluZyA9ICcsJyxcbiAgICB0aG91c2FuZFNlcGFyYXRvcjogc3RyaW5nID0gQ0hBUl9OT19CUkVBS19TUEFDRSxcbiAgICB6ZXJvUGFkZGluZzogYm9vbGVhbiA9IHRydWUsXG4pOiBzdHJpbmcge1xuICAgIGNvbnN0IGludGVnZXJQYXJ0U3RyaW5nID0gU3RyaW5nKE1hdGguZmxvb3IoTWF0aC5hYnModmFsdWUpKSk7XG5cbiAgICBsZXQgZnJhY3Rpb25QYXJ0UGFkZGVkID0gZ2V0RnJhY3Rpb25QYXJ0UGFkZGVkKHZhbHVlLCBkZWNpbWFsTGltaXQpO1xuXG4gICAgaWYgKGRlY2ltYWxMaW1pdCAhPT0gbnVsbCkge1xuICAgICAgICBpZiAoemVyb1BhZGRpbmcpIHtcbiAgICAgICAgICAgIGNvbnN0IHplcm9QYWRkaW5nU2l6ZTogbnVtYmVyID0gTWF0aC5tYXgoXG4gICAgICAgICAgICAgICAgZGVjaW1hbExpbWl0IC0gZnJhY3Rpb25QYXJ0UGFkZGVkLmxlbmd0aCxcbiAgICAgICAgICAgICAgICAwLFxuICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIGNvbnN0IHplcm9QYXJ0U3RyaW5nID0gJzAnLnJlcGVhdCh6ZXJvUGFkZGluZ1NpemUpO1xuXG4gICAgICAgICAgICBmcmFjdGlvblBhcnRQYWRkZWQgPSBgJHtmcmFjdGlvblBhcnRQYWRkZWR9JHt6ZXJvUGFydFN0cmluZ31gO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgZnJhY3Rpb25QYXJ0UGFkZGVkID0gZnJhY3Rpb25QYXJ0UGFkZGVkLnJlcGxhY2UoLzAqJC8sICcnKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGNvbnN0IHJlbWFpbmRlciA9IGludGVnZXJQYXJ0U3RyaW5nLmxlbmd0aCAlIDM7XG4gICAgY29uc3Qgc2lnbiA9IHZhbHVlIDwgMCA/IENIQVJfSFlQSEVOIDogJyc7XG4gICAgbGV0IHJlc3VsdCA9IHNpZ24gKyBpbnRlZ2VyUGFydFN0cmluZy5jaGFyQXQoMCk7XG5cbiAgICBmb3IgKGxldCBpID0gMTsgaSA8IGludGVnZXJQYXJ0U3RyaW5nLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIGlmIChpICUgMyA9PT0gcmVtYWluZGVyICYmIGludGVnZXJQYXJ0U3RyaW5nLmxlbmd0aCA+IDMpIHtcbiAgICAgICAgICAgIHJlc3VsdCArPSB0aG91c2FuZFNlcGFyYXRvcjtcbiAgICAgICAgfVxuXG4gICAgICAgIHJlc3VsdCArPSBpbnRlZ2VyUGFydFN0cmluZy5jaGFyQXQoaSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGZyYWN0aW9uUGFydFBhZGRlZCA/IHJlc3VsdCArIGRlY2ltYWxTZXBhcmF0b3IgKyBmcmFjdGlvblBhcnRQYWRkZWQgOiByZXN1bHQ7XG59XG4iXX0=
|
package/esm2015/utils/index.js
CHANGED
|
@@ -2,5 +2,6 @@ export * from '@taiga-ui/core/utils/dom';
|
|
|
2
2
|
export * from '@taiga-ui/core/utils/format';
|
|
3
3
|
export * from '@taiga-ui/core/utils/mask';
|
|
4
4
|
export * from '@taiga-ui/core/utils/miscellaneous';
|
|
5
|
+
export * from '@taiga-ui/core/utils/mobile';
|
|
5
6
|
export * from '@taiga-ui/core/utils/polyfills';
|
|
6
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AdGFpZ2EtdWkvY29yZS91dGlscy8iLCJzb3VyY2VzIjpbImluZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsMEJBQTBCLENBQUM7QUFDekMsY0FBYyw2QkFBNkIsQ0FBQztBQUM1QyxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMsb0NBQW9DLENBQUM7QUFDbkQsY0FBYyw2QkFBNkIsQ0FBQztBQUM1QyxjQUFjLGdDQUFnQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnQHRhaWdhLXVpL2NvcmUvdXRpbHMvZG9tJztcbmV4cG9ydCAqIGZyb20gJ0B0YWlnYS11aS9jb3JlL3V0aWxzL2Zvcm1hdCc7XG5leHBvcnQgKiBmcm9tICdAdGFpZ2EtdWkvY29yZS91dGlscy9tYXNrJztcbmV4cG9ydCAqIGZyb20gJ0B0YWlnYS11aS9jb3JlL3V0aWxzL21pc2NlbGxhbmVvdXMnO1xuZXhwb3J0ICogZnJvbSAnQHRhaWdhLXVpL2NvcmUvdXRpbHMvbW9iaWxlJztcbmV4cG9ydCAqIGZyb20gJ0B0YWlnYS11aS9jb3JlL3V0aWxzL3BvbHlmaWxscyc7XG4iXX0=
|
|
@@ -112,7 +112,9 @@ function convertToMask(strNumber) {
|
|
|
112
112
|
}
|
|
113
113
|
function addThousandsSeparator(strNumber, thousandSymbol) {
|
|
114
114
|
return strNumber.length > 3
|
|
115
|
-
?
|
|
115
|
+
? // TODO: investigate to disallow potentially catastrophic exponential-time regular expressions.
|
|
116
|
+
// eslint-disable-next-line unicorn/no-unsafe-regex
|
|
117
|
+
strNumber.replace(/\B(?=(\d{3})+(?!\d))/g, thousandSymbol)
|
|
116
118
|
: strNumber;
|
|
117
119
|
}
|
|
118
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLW51bWJlci1tYXNrLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHRhaWdhLXVpL2NvcmUvdXRpbHMvbWFzay8iLCJzb3VyY2VzIjpbImNyZWF0ZS1udW1iZXItbWFzay50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsWUFBWSxFQUFFLFdBQVcsRUFBRSxtQkFBbUIsRUFBRSxTQUFTLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDeEYsT0FBTyxFQUNILGVBQWUsRUFDZixnQkFBZ0IsRUFDaEIseUJBQXlCLEVBQ3pCLHFCQUFxQixHQUN4QixNQUFNLDBCQUEwQixDQUFDO0FBR2xDLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLDZCQUE2QixDQUFDO0FBRS9ELE1BQU0sY0FBYyxHQUFHLE9BQU8sQ0FBQztBQUUvQjs7R0FFRztBQUNILE1BQU0sVUFBVSxtQkFBbUIsQ0FBQyxFQUNoQyxZQUFZLEdBQUcsS0FBSyxFQUNwQixhQUFhLEdBQUcsR0FBRyxFQUNuQixjQUFjLEdBQUcsbUJBQW1CLEVBQ3BDLHdCQUF3QixHQUFHLElBQUksRUFDL0IsWUFBWSxHQUFHLENBQUMsRUFDaEIsY0FBYyxHQUFHLEtBQUssRUFDdEIsYUFBYSxHQUFHLEtBQUssRUFDckIsWUFBWSxHQUFHLENBQUMsTUFDTSxFQUFFO0lBQ3hCLFNBQVMsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDO0lBQ2pELFNBQVMsQ0FBQyxNQUFNLENBQUMsWUFBWSxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQ3BDLFNBQVMsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDO0lBQ2pELFNBQVMsQ0FBQyxNQUFNLENBQUMsWUFBWSxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBRXBDLE9BQU8sQ0FBQyxRQUFRLEVBQUUsRUFBQyxzQkFBc0IsRUFBQyxFQUFFLEVBQUU7UUFDMUMsSUFBSSxz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SSxDQUFDLENBQUMsQ0FBQyxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0FBQzlFLENBQUM7QUFFRCxTQUFTLHFCQUFxQixDQUFDLFNBQWlCLEVBQUUsY0FBc0I7SUFDcEUsT0FBTyxTQUFTLENBQUMsTUFBTSxHQUFHLENBQUM7UUFDdkIsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsdUJBQXVCLEVBQUUsY0FBYyxDQUFDO1FBQzVELENBQUMsQ0FBQyxTQUFTLENBQUM7QUFDcEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q0hBUl9FTl9EQVNILCBDSEFSX0hZUEhFTiwgQ0hBUl9OT19CUkVBS19TUEFDRSwgdHVpQXNzZXJ0fSBmcm9tICdAdGFpZ2EtdWkvY2RrJztcbmltcG9ydCB7XG4gICAgTUFTS19DQVJFVF9UUkFQLFxuICAgIFRVSV9ESUdJVF9SRUdFWFAsXG4gICAgVFVJX0xFQURJTkdfWkVST0VTX1JFR0VYUCxcbiAgICBUVUlfTk9OX0RJR0lUU19SRUdFWFAsXG59IGZyb20gJ0B0YWlnYS11aS9jb3JlL2NvbnN0YW50cyc7XG5pbXBvcnQge1R1aU51bWJlck1hc2tPcHRpb25zLCBUdWlUZXh0TWFza0xpc3RIYW5kbGVyfSBmcm9tICdAdGFpZ2EtdWkvY29yZS9tYXNrJztcbmltcG9ydCB7VHVpRGVjaW1hbFN5bWJvbH0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvdHlwZXMnO1xuaW1wb3J0IHtvdGhlckRlY2ltYWxTeW1ib2x9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3V0aWxzL2Zvcm1hdCc7XG5cbmNvbnN0IE5PTl9aRVJPX0RJR0lUID0gL1sxLTldLztcblxuLyoqXG4gKiBBZGFwdGF0aW9uIGZvciB7QGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL3RleHQtbWFzay90ZXh0LW1hc2svdHJlZS9tYXN0ZXIvYWRkb25zI2NyZWF0ZW51bWJlcm1hc2sgYGNyZWF0ZU51bWJlck1hc2tgfVxuICovXG5leHBvcnQgZnVuY3Rpb24gdHVpQ3JlYXRlTnVtYmVyTWFzayh7XG4gICAgYWxsb3dEZWNpbWFsID0gZmFsc2UsXG4gICAgZGVjaW1hbFN5bWJvbCA9ICcsJyxcbiAgICB0aG91c2FuZFN5bWJvbCA9IENIQVJfTk9fQlJFQUtfU1BBQ0UsXG4gICAgYXV0b0NvcnJlY3REZWNpbWFsU3ltYm9sID0gdHJ1ZSxcbiAgICBkZWNpbWFsTGltaXQgPSAyLFxuICAgIHJlcXVpcmVEZWNpbWFsID0gZmFsc2UsXG4gICAgYWxsb3dOZWdhdGl2ZSA9IGZhbHNlLFxuICAgIGludGVnZXJMaW1pdCA9IDAsXG59OiBUdWlOdW1iZXJNYXNrT3B0aW9ucyA9IHt9KTogVHVpVGV4dE1hc2tMaXN0SGFuZGxlciB7XG4gICAgdHVpQXNzZXJ0LmFzc2VydChOdW1iZXIuaXNJbnRlZ2VyKGRlY2ltYWxMaW1pdCkpO1xuICAgIHR1aUFzc2VydC5hc3NlcnQoZGVjaW1hbExpbWl0ID49IDApO1xuICAgIHR1aUFzc2VydC5hc3NlcnQoTnVtYmVyLmlzSW50ZWdlcihpbnRlZ2VyTGltaXQpKTtcbiAgICB0dWlBc3NlcnQuYXNzZXJ0KGludGVnZXJMaW1pdCA+PSAwKTtcblxuICAgIHJldHVybiAocmF3VmFsdWUsIHtwcmV2aW91c0NvbmZvcm1lZFZhbHVlfSkgPT4ge1xuICAgICAgICBpZiAocHJldmlvdXNDb25mb3JtZWRWYWx1ZSAmJiByZXF1aXJlRGVjaW1hbCkge1xuICAgICAgICAgICAgY29uc3QgY29uZm9ybWVkV2l0aG91dFNlcGFyYXRvciA9IHJhd1ZhbHVlLnNwbGl0KHRob3VzYW5kU3ltYm9sKS5qb2luKCcnKTtcbiAgICAgICAgICAgIGNvbnN0IHByZXZpb3VzQ29uZm9ybWVkVmFsdWVXaXRob3V0RGVjaW1hbFN5bWJvbEFuZFNlcGFyYXRvciA9XG4gICAgICAgICAgICAgICAgcHJldmlvdXNDb25mb3JtZWRWYWx1ZVxuICAgICAgICAgICAgICAgICAgICAuc3BsaXQodGhvdXNhbmRTeW1ib2wpXG4gICAgICAgICAgICAgICAgICAgIC5qb2luKCcnKVxuICAgICAgICAgICAgICAgICAgICAuc3BsaXQoZGVjaW1hbFN5bWJvbClcbiAgICAgICAgICAgICAgICAgICAgLmpvaW4oJycpO1xuXG4gICAgICAgICAgICAvLyBGb3JiaWQgcmVtb3ZhbCBvZiBkZWNpbWFsIHNlcGFyYXRvciBpZiBkZWNpbWFsIHBhcnQgaXMgcmVxdWlyZWRcbiAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgICBjb25mb3JtZWRXaXRob3V0U2VwYXJhdG9yID09PVxuICAgICAgICAgICAgICAgIHByZXZpb3VzQ29uZm9ybWVkVmFsdWVXaXRob3V0RGVjaW1hbFN5bWJvbEFuZFNlcGFyYXRvclxuICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgcmF3VmFsdWUgPSBwcmV2aW91c0NvbmZvcm1lZFZhbHVlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgaXNOZWdhdGl2ZSA9XG4gICAgICAgICAgICAocmF3VmFsdWVbMF0gPT09IENIQVJfSFlQSEVOIHx8IHJhd1ZhbHVlWzBdID09PSBDSEFSX0VOX0RBU0gpICYmXG4gICAgICAgICAgICBhbGxvd05lZ2F0aXZlO1xuXG4gICAgICAgIGlmIChcbiAgICAgICAgICAgIGlzRGVjaW1hbFN5bWJvbChyYXdWYWx1ZSwgZGVjaW1hbFN5bWJvbCwgYXV0b0NvcnJlY3REZWNpbWFsU3ltYm9sKSAmJlxuICAgICAgICAgICAgYWxsb3dEZWNpbWFsXG4gICAgICAgICkge1xuICAgICAgICAgICAgcmV0dXJuIFsnMCcsIGRlY2ltYWxTeW1ib2wsIFRVSV9ESUdJVF9SRUdFWFBdO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGlzTmVnYXRpdmUpIHtcbiAgICAgICAgICAgIHJhd1ZhbHVlID0gcmF3VmFsdWUuc2xpY2UoMSk7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBkZWNpbWFsSW5kZXggPSBnZXREZWNpbWFsU3ltYm9sSW5kZXgoXG4gICAgICAgICAgICByYXdWYWx1ZSxcbiAgICAgICAgICAgIGRlY2ltYWxTeW1ib2wsXG4gICAgICAgICAgICBhdXRvQ29ycmVjdERlY2ltYWxTeW1ib2wsXG4gICAgICAgICk7XG4gICAgICAgIGNvbnN0IGhhc0RlY2ltYWwgPSBkZWNpbWFsSW5kZXggIT09IC0xO1xuICAgICAgICBjb25zdCBpbnRlZ2VyID0gaGFzRGVjaW1hbCA/IHJhd1ZhbHVlLnNsaWNlKDAsIGRlY2ltYWxJbmRleCkgOiByYXdWYWx1ZTtcbiAgICAgICAgY29uc3QgdGhvdXNhbmRTZXBhcmF0b3JzID0gaW50ZWdlci5tYXRjaChuZXcgUmVnRXhwKHRob3VzYW5kU3ltYm9sLCAnZycpKSB8fCBbXTtcbiAgICAgICAgY29uc3QgaW50ZWdlckNhcHBlZCA9IGludGVnZXJMaW1pdFxuICAgICAgICAgICAgPyBpbnRlZ2VyLnNsaWNlKDAsIGludGVnZXJMaW1pdCArIHRob3VzYW5kU2VwYXJhdG9ycy5sZW5ndGgpXG4gICAgICAgICAgICA6IGludGVnZXI7XG4gICAgICAgIGNvbnN0IGludGVnZXJDYXBwZWRDbGVhbiA9IGludGVnZXJDYXBwZWQucmVwbGFjZShUVUlfTk9OX0RJR0lUU19SRUdFWFAsICcnKTtcbiAgICAgICAgY29uc3QgW2xlYWRpbmdaZXJvc01hdGNoXSA9IGludGVnZXJDYXBwZWRDbGVhbi5tYXRjaChcbiAgICAgICAgICAgIFRVSV9MRUFESU5HX1pFUk9FU19SRUdFWFAsXG4gICAgICAgICkgfHwgWycnXTtcbiAgICAgICAgY29uc3QgbGVhZGluZ1plcm9zQW1vdW50ID0gbGVhZGluZ1plcm9zTWF0Y2gubGVuZ3RoO1xuICAgICAgICBjb25zdCBpbnRlZ2VyQ2FwcGVkWmVyb3NDbGVhbiA9IGludGVnZXJDYXBwZWRDbGVhblxuICAgICAgICAgICAgLnJlcGxhY2UoL14wKyg/IVxcLnwkKS8sICcnKVxuICAgICAgICAgICAgLnRyaW0oKTtcbiAgICAgICAgY29uc3Qgd2l0aFNlcGFyYXRvciA9IGFkZFRob3VzYW5kc1NlcGFyYXRvcihcbiAgICAgICAgICAgIGludGVnZXJDYXBwZWRaZXJvc0NsZWFuLFxuICAgICAgICAgICAgdGhvdXNhbmRTeW1ib2wsXG4gICAgICAgICk7XG4gICAgICAgIGNvbnN0IG1hc2sgPSBjb252ZXJ0VG9NYXNrKHdpdGhTZXBhcmF0b3IpO1xuXG4gICAgICAgIGlmICgoaGFzRGVjaW1hbCAmJiBhbGxvd0RlY2ltYWwpIHx8IHJlcXVpcmVEZWNpbWFsKSB7XG4gICAgICAgICAgICBjb25zdCBmcmFjdGlvbiA9IGhhc0RlY2ltYWxcbiAgICAgICAgICAgICAgICA/IGNvbnZlcnRUb01hc2soXG4gICAgICAgICAgICAgICAgICAgICAgcmF3VmFsdWUuc2xpY2UoZGVjaW1hbEluZGV4ICsgMSkucmVwbGFjZShUVUlfTk9OX0RJR0lUU19SRUdFWFAsICcnKSxcbiAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICA6IFtdO1xuICAgICAgICAgICAgY29uc3QgZnJhY3Rpb25DYXBwZWQgPSBkZWNpbWFsTGltaXRcbiAgICAgICAgICAgICAgICA/IGZyYWN0aW9uLnNsaWNlKDAsIGRlY2ltYWxMaW1pdClcbiAgICAgICAgICAgICAgICA6IGZyYWN0aW9uO1xuXG4gICAgICAgICAgICBpZiAocmF3VmFsdWVbZGVjaW1hbEluZGV4XSAhPT0gb3RoZXJEZWNpbWFsU3ltYm9sKGRlY2ltYWxTeW1ib2wpKSB7XG4gICAgICAgICAgICAgICAgbWFzay5wdXNoKE1BU0tfQ0FSRVRfVFJBUCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIG1hc2sucHVzaChkZWNpbWFsU3ltYm9sLCBNQVNLX0NBUkVUX1RSQVAsIC4uLmZyYWN0aW9uQ2FwcGVkKTtcblxuICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBkZWNpbWFsTGltaXQgLSBmcmFjdGlvbkNhcHBlZC5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgICAgIG1hc2sucHVzaChUVUlfRElHSVRfUkVHRVhQKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGlzT25seVplcm9EaWdpdCA9IG1hc2subGVuZ3RoID09PSAxICYmIGludGVnZXJDYXBwZWRaZXJvc0NsZWFuID09PSAnMCc7XG5cbiAgICAgICAgaWYgKGlzTmVnYXRpdmUpIHtcbiAgICAgICAgICAgIGlmIChtYXNrLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgICAgICAgIG1hc2sucHVzaChUVUlfRElHSVRfUkVHRVhQKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgbWFzay51bnNoaWZ0KENIQVJfSFlQSEVOKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBwcmV2ZW50TGVhZGluZ1plcm9lcyhtYXNrLCBpc09ubHlaZXJvRGlnaXQsIGxlYWRpbmdaZXJvc0Ftb3VudCk7XG4gICAgfTtcbn1cblxuZnVuY3Rpb24gcHJldmVudExlYWRpbmdaZXJvZXMoXG4gICAgbWFzazogQXJyYXk8c3RyaW5nIHwgUmVnRXhwPixcbiAgICBpc09ubHlaZXJvRGlnaXQ6IGJvb2xlYW4gPSBmYWxzZSxcbiAgICBsZWFkaW5nWmVyb3NBbW91bnQ6IG51bWJlciA9IDAsXG4pOiBBcnJheTxzdHJpbmcgfCBSZWdFeHA+IHtcbiAgICBpZiAoaXNPbmx5WmVyb0RpZ2l0IHx8IGxlYWRpbmdaZXJvc0Ftb3VudCA9PT0gMCkge1xuICAgICAgICByZXR1cm4gbWFzaztcbiAgICB9XG5cbiAgICBjb25zdCBmaXJzdERpZ2l0SW5kZXggPSBtYXNrLmluZGV4T2YoVFVJX0RJR0lUX1JFR0VYUCk7XG5cbiAgICBpZiAoZmlyc3REaWdpdEluZGV4ID09PSAtMSkge1xuICAgICAgICByZXR1cm4gbWFzaztcbiAgICB9XG5cbiAgICBjb25zdCBzZWNvbmRNYXNrRGlnaXQgPSBtYXNrW2ZpcnN0RGlnaXRJbmRleCArIDFdO1xuICAgIGNvbnN0IGlzQ2FyZXRUcmFwID0gc2Vjb25kTWFza0RpZ2l0ID09PSBNQVNLX0NBUkVUX1RSQVA7XG5cbiAgICBpZiAoaXNDYXJldFRyYXAgJiYgbGVhZGluZ1plcm9zQW1vdW50ID09PSAxKSB7XG4gICAgICAgIHJldHVybiBtYXNrO1xuICAgIH0gZWxzZSBpZiAoaXNDYXJldFRyYXApIHtcbiAgICAgICAgbWFzay51bnNoaWZ0KE5PTl9aRVJPX0RJR0lUKTtcblxuICAgICAgICByZXR1cm4gbWFzaztcbiAgICB9XG5cbiAgICBtYXNrW2ZpcnN0RGlnaXRJbmRleF0gPSBOT05fWkVST19ESUdJVDtcblxuICAgIHJldHVybiBtYXNrO1xufVxuXG5mdW5jdGlvbiBnZXREZWNpbWFsU3ltYm9sSW5kZXgoXG4gICAgc3RyOiBzdHJpbmcsXG4gICAgZGVjaW1hbFN5bWJvbDogVHVpRGVjaW1hbFN5bWJvbCxcbiAgICBhdXRvQ29ycmVjdERlY2ltYWxTeW1ib2w6IGJvb2xlYW4sXG4pOiBudW1iZXIge1xuICAgIGlmICghYXV0b0NvcnJlY3REZWNpbWFsU3ltYm9sKSB7XG4gICAgICAgIHJldHVybiBzdHIubGFzdEluZGV4T2YoZGVjaW1hbFN5bWJvbCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIE1hdGgubWF4KFxuICAgICAgICBzdHIubGFzdEluZGV4T2YoZGVjaW1hbFN5bWJvbCksXG4gICAgICAgIHN0ci5sYXN0SW5kZXhPZihvdGhlckRlY2ltYWxTeW1ib2woZGVjaW1hbFN5bWJvbCkpLFxuICAgICk7XG59XG5cbmZ1bmN0aW9uIGlzRGVjaW1hbFN5bWJvbChcbiAgICBzdHI6IHN0cmluZyxcbiAgICBkZWNpbWFsU3ltYm9sOiBUdWlEZWNpbWFsU3ltYm9sLFxuICAgIGF1dG9Db3JyZWN0RGVjaW1hbFN5bWJvbDogYm9vbGVhbixcbik6IGJvb2xlYW4ge1xuICAgIGlmIChhdXRvQ29ycmVjdERlY2ltYWxTeW1ib2wpIHtcbiAgICAgICAgcmV0dXJuIC9eWywuXSQvLnRlc3Qoc3RyKTtcbiAgICB9XG5cbiAgICByZXR1cm4gc3RyID09PSBkZWNpbWFsU3ltYm9sO1xufVxuXG5mdW5jdGlvbiBjb252ZXJ0VG9NYXNrKHN0ck51bWJlcjogc3RyaW5nKTogQXJyYXk8c3RyaW5nIHwgUmVnRXhwPiB7XG4gICAgcmV0dXJuIHN0ck51bWJlclxuICAgICAgICAuc3BsaXQoJycpXG4gICAgICAgIC5tYXAoY2hhciA9PiAoVFVJX0RJR0lUX1JFR0VYUC50ZXN0KGNoYXIpID8gVFVJX0RJR0lUX1JFR0VYUCA6IGNoYXIpKTtcbn1cblxuZnVuY3Rpb24gYWRkVGhvdXNhbmRzU2VwYXJhdG9yKHN0ck51bWJlcjogc3RyaW5nLCB0aG91c2FuZFN5bWJvbDogc3RyaW5nKTogc3RyaW5nIHtcbiAgICByZXR1cm4gc3RyTnVtYmVyLmxlbmd0aCA+IDNcbiAgICAgICAgPyBzdHJOdW1iZXIucmVwbGFjZSgvXFxCKD89KFxcZHszfSkrKD8hXFxkKSkvZywgdGhvdXNhbmRTeW1ib2wpXG4gICAgICAgIDogc3RyTnVtYmVyO1xufVxuIl19
|
|
120
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLW51bWJlci1tYXNrLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHRhaWdhLXVpL2NvcmUvdXRpbHMvbWFzay8iLCJzb3VyY2VzIjpbImNyZWF0ZS1udW1iZXItbWFzay50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsWUFBWSxFQUFFLFdBQVcsRUFBRSxtQkFBbUIsRUFBRSxTQUFTLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDeEYsT0FBTyxFQUNILGVBQWUsRUFDZixnQkFBZ0IsRUFDaEIseUJBQXlCLEVBQ3pCLHFCQUFxQixHQUN4QixNQUFNLDBCQUEwQixDQUFDO0FBR2xDLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLDZCQUE2QixDQUFDO0FBRS9ELE1BQU0sY0FBYyxHQUFHLE9BQU8sQ0FBQztBQUUvQjs7R0FFRztBQUNILE1BQU0sVUFBVSxtQkFBbUIsQ0FBQyxFQUNoQyxZQUFZLEdBQUcsS0FBSyxFQUNwQixhQUFhLEdBQUcsR0FBRyxFQUNuQixjQUFjLEdBQUcsbUJBQW1CLEVBQ3BDLHdCQUF3QixHQUFHLElBQUksRUFDL0IsWUFBWSxHQUFHLENBQUMsRUFDaEIsY0FBYyxHQUFHLEtBQUssRUFDdEIsYUFBYSxHQUFHLEtBQUssRUFDckIsWUFBWSxHQUFHLENBQUMsTUFDTSxFQUFFO0lBQ3hCLFNBQVMsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDO0lBQ2pELFNBQVMsQ0FBQyxNQUFNLENBQUMsWUFBWSxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQ3BDLFNBQVMsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDO0lBQ2pELFNBQVMsQ0FBQyxNQUFNLENBQUMsWUFBWSxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBRXBDLE9BQU8sQ0FBQyxRQUFRLEVBQUUsRUFBQyxzQkFBc0IsRUFBQyxFQUFFLEVBQUU7UUFDMUMsSUFBSSxz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SSxDQUFDLENBQUMsQ0FBQyxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0FBQzlFLENBQUM7QUFFRCxTQUFTLHFCQUFxQixDQUFDLFNBQWlCLEVBQUUsY0FBc0I7SUFDcEUsT0FBTyxTQUFTLENBQUMsTUFBTSxHQUFHLENBQUM7UUFDdkIsQ0FBQyxDQUFDLCtGQUErRjtZQUMvRixtREFBbUQ7WUFDbkQsU0FBUyxDQUFDLE9BQU8sQ0FBQyx1QkFBdUIsRUFBRSxjQUFjLENBQUM7UUFDNUQsQ0FBQyxDQUFDLFNBQVMsQ0FBQztBQUNwQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDSEFSX0VOX0RBU0gsIENIQVJfSFlQSEVOLCBDSEFSX05PX0JSRUFLX1NQQUNFLCB0dWlBc3NlcnR9IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHtcbiAgICBNQVNLX0NBUkVUX1RSQVAsXG4gICAgVFVJX0RJR0lUX1JFR0VYUCxcbiAgICBUVUlfTEVBRElOR19aRVJPRVNfUkVHRVhQLFxuICAgIFRVSV9OT05fRElHSVRTX1JFR0VYUCxcbn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvY29uc3RhbnRzJztcbmltcG9ydCB7VHVpTnVtYmVyTWFza09wdGlvbnMsIFR1aVRleHRNYXNrTGlzdEhhbmRsZXJ9IGZyb20gJ0B0YWlnYS11aS9jb3JlL21hc2snO1xuaW1wb3J0IHtUdWlEZWNpbWFsU3ltYm9sfSBmcm9tICdAdGFpZ2EtdWkvY29yZS90eXBlcyc7XG5pbXBvcnQge290aGVyRGVjaW1hbFN5bWJvbH0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvdXRpbHMvZm9ybWF0JztcblxuY29uc3QgTk9OX1pFUk9fRElHSVQgPSAvWzEtOV0vO1xuXG4vKipcbiAqIEFkYXB0YXRpb24gZm9yIHtAbGluayBodHRwczovL2dpdGh1Yi5jb20vdGV4dC1tYXNrL3RleHQtbWFzay90cmVlL21hc3Rlci9hZGRvbnMjY3JlYXRlbnVtYmVybWFzayBgY3JlYXRlTnVtYmVyTWFza2B9XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB0dWlDcmVhdGVOdW1iZXJNYXNrKHtcbiAgICBhbGxvd0RlY2ltYWwgPSBmYWxzZSxcbiAgICBkZWNpbWFsU3ltYm9sID0gJywnLFxuICAgIHRob3VzYW5kU3ltYm9sID0gQ0hBUl9OT19CUkVBS19TUEFDRSxcbiAgICBhdXRvQ29ycmVjdERlY2ltYWxTeW1ib2wgPSB0cnVlLFxuICAgIGRlY2ltYWxMaW1pdCA9IDIsXG4gICAgcmVxdWlyZURlY2ltYWwgPSBmYWxzZSxcbiAgICBhbGxvd05lZ2F0aXZlID0gZmFsc2UsXG4gICAgaW50ZWdlckxpbWl0ID0gMCxcbn06IFR1aU51bWJlck1hc2tPcHRpb25zID0ge30pOiBUdWlUZXh0TWFza0xpc3RIYW5kbGVyIHtcbiAgICB0dWlBc3NlcnQuYXNzZXJ0KE51bWJlci5pc0ludGVnZXIoZGVjaW1hbExpbWl0KSk7XG4gICAgdHVpQXNzZXJ0LmFzc2VydChkZWNpbWFsTGltaXQgPj0gMCk7XG4gICAgdHVpQXNzZXJ0LmFzc2VydChOdW1iZXIuaXNJbnRlZ2VyKGludGVnZXJMaW1pdCkpO1xuICAgIHR1aUFzc2VydC5hc3NlcnQoaW50ZWdlckxpbWl0ID49IDApO1xuXG4gICAgcmV0dXJuIChyYXdWYWx1ZSwge3ByZXZpb3VzQ29uZm9ybWVkVmFsdWV9KSA9PiB7XG4gICAgICAgIGlmIChwcmV2aW91c0NvbmZvcm1lZFZhbHVlICYmIHJlcXVpcmVEZWNpbWFsKSB7XG4gICAgICAgICAgICBjb25zdCBjb25mb3JtZWRXaXRob3V0U2VwYXJhdG9yID0gcmF3VmFsdWUuc3BsaXQodGhvdXNhbmRTeW1ib2wpLmpvaW4oJycpO1xuICAgICAgICAgICAgY29uc3QgcHJldmlvdXNDb25mb3JtZWRWYWx1ZVdpdGhvdXREZWNpbWFsU3ltYm9sQW5kU2VwYXJhdG9yID1cbiAgICAgICAgICAgICAgICBwcmV2aW91c0NvbmZvcm1lZFZhbHVlXG4gICAgICAgICAgICAgICAgICAgIC5zcGxpdCh0aG91c2FuZFN5bWJvbClcbiAgICAgICAgICAgICAgICAgICAgLmpvaW4oJycpXG4gICAgICAgICAgICAgICAgICAgIC5zcGxpdChkZWNpbWFsU3ltYm9sKVxuICAgICAgICAgICAgICAgICAgICAuam9pbignJyk7XG5cbiAgICAgICAgICAgIC8vIEZvcmJpZCByZW1vdmFsIG9mIGRlY2ltYWwgc2VwYXJhdG9yIGlmIGRlY2ltYWwgcGFydCBpcyByZXF1aXJlZFxuICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgIGNvbmZvcm1lZFdpdGhvdXRTZXBhcmF0b3IgPT09XG4gICAgICAgICAgICAgICAgcHJldmlvdXNDb25mb3JtZWRWYWx1ZVdpdGhvdXREZWNpbWFsU3ltYm9sQW5kU2VwYXJhdG9yXG4gICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICByYXdWYWx1ZSA9IHByZXZpb3VzQ29uZm9ybWVkVmFsdWU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBpc05lZ2F0aXZlID1cbiAgICAgICAgICAgIChyYXdWYWx1ZVswXSA9PT0gQ0hBUl9IWVBIRU4gfHwgcmF3VmFsdWVbMF0gPT09IENIQVJfRU5fREFTSCkgJiZcbiAgICAgICAgICAgIGFsbG93TmVnYXRpdmU7XG5cbiAgICAgICAgaWYgKFxuICAgICAgICAgICAgaXNEZWNpbWFsU3ltYm9sKHJhd1ZhbHVlLCBkZWNpbWFsU3ltYm9sLCBhdXRvQ29ycmVjdERlY2ltYWxTeW1ib2wpICYmXG4gICAgICAgICAgICBhbGxvd0RlY2ltYWxcbiAgICAgICAgKSB7XG4gICAgICAgICAgICByZXR1cm4gWycwJywgZGVjaW1hbFN5bWJvbCwgVFVJX0RJR0lUX1JFR0VYUF07XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoaXNOZWdhdGl2ZSkge1xuICAgICAgICAgICAgcmF3VmFsdWUgPSByYXdWYWx1ZS5zbGljZSgxKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGRlY2ltYWxJbmRleCA9IGdldERlY2ltYWxTeW1ib2xJbmRleChcbiAgICAgICAgICAgIHJhd1ZhbHVlLFxuICAgICAgICAgICAgZGVjaW1hbFN5bWJvbCxcbiAgICAgICAgICAgIGF1dG9Db3JyZWN0RGVjaW1hbFN5bWJvbCxcbiAgICAgICAgKTtcbiAgICAgICAgY29uc3QgaGFzRGVjaW1hbCA9IGRlY2ltYWxJbmRleCAhPT0gLTE7XG4gICAgICAgIGNvbnN0IGludGVnZXIgPSBoYXNEZWNpbWFsID8gcmF3VmFsdWUuc2xpY2UoMCwgZGVjaW1hbEluZGV4KSA6IHJhd1ZhbHVlO1xuICAgICAgICBjb25zdCB0aG91c2FuZFNlcGFyYXRvcnMgPSBpbnRlZ2VyLm1hdGNoKG5ldyBSZWdFeHAodGhvdXNhbmRTeW1ib2wsICdnJykpIHx8IFtdO1xuICAgICAgICBjb25zdCBpbnRlZ2VyQ2FwcGVkID0gaW50ZWdlckxpbWl0XG4gICAgICAgICAgICA/IGludGVnZXIuc2xpY2UoMCwgaW50ZWdlckxpbWl0ICsgdGhvdXNhbmRTZXBhcmF0b3JzLmxlbmd0aClcbiAgICAgICAgICAgIDogaW50ZWdlcjtcbiAgICAgICAgY29uc3QgaW50ZWdlckNhcHBlZENsZWFuID0gaW50ZWdlckNhcHBlZC5yZXBsYWNlKFRVSV9OT05fRElHSVRTX1JFR0VYUCwgJycpO1xuICAgICAgICBjb25zdCBbbGVhZGluZ1plcm9zTWF0Y2hdID0gaW50ZWdlckNhcHBlZENsZWFuLm1hdGNoKFxuICAgICAgICAgICAgVFVJX0xFQURJTkdfWkVST0VTX1JFR0VYUCxcbiAgICAgICAgKSB8fCBbJyddO1xuICAgICAgICBjb25zdCBsZWFkaW5nWmVyb3NBbW91bnQgPSBsZWFkaW5nWmVyb3NNYXRjaC5sZW5ndGg7XG4gICAgICAgIGNvbnN0IGludGVnZXJDYXBwZWRaZXJvc0NsZWFuID0gaW50ZWdlckNhcHBlZENsZWFuXG4gICAgICAgICAgICAucmVwbGFjZSgvXjArKD8hXFwufCQpLywgJycpXG4gICAgICAgICAgICAudHJpbSgpO1xuICAgICAgICBjb25zdCB3aXRoU2VwYXJhdG9yID0gYWRkVGhvdXNhbmRzU2VwYXJhdG9yKFxuICAgICAgICAgICAgaW50ZWdlckNhcHBlZFplcm9zQ2xlYW4sXG4gICAgICAgICAgICB0aG91c2FuZFN5bWJvbCxcbiAgICAgICAgKTtcbiAgICAgICAgY29uc3QgbWFzayA9IGNvbnZlcnRUb01hc2sod2l0aFNlcGFyYXRvcik7XG5cbiAgICAgICAgaWYgKChoYXNEZWNpbWFsICYmIGFsbG93RGVjaW1hbCkgfHwgcmVxdWlyZURlY2ltYWwpIHtcbiAgICAgICAgICAgIGNvbnN0IGZyYWN0aW9uID0gaGFzRGVjaW1hbFxuICAgICAgICAgICAgICAgID8gY29udmVydFRvTWFzayhcbiAgICAgICAgICAgICAgICAgICAgICByYXdWYWx1ZS5zbGljZShkZWNpbWFsSW5kZXggKyAxKS5yZXBsYWNlKFRVSV9OT05fRElHSVRTX1JFR0VYUCwgJycpLFxuICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgIDogW107XG4gICAgICAgICAgICBjb25zdCBmcmFjdGlvbkNhcHBlZCA9IGRlY2ltYWxMaW1pdFxuICAgICAgICAgICAgICAgID8gZnJhY3Rpb24uc2xpY2UoMCwgZGVjaW1hbExpbWl0KVxuICAgICAgICAgICAgICAgIDogZnJhY3Rpb247XG5cbiAgICAgICAgICAgIGlmIChyYXdWYWx1ZVtkZWNpbWFsSW5kZXhdICE9PSBvdGhlckRlY2ltYWxTeW1ib2woZGVjaW1hbFN5bWJvbCkpIHtcbiAgICAgICAgICAgICAgICBtYXNrLnB1c2goTUFTS19DQVJFVF9UUkFQKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgbWFzay5wdXNoKGRlY2ltYWxTeW1ib2wsIE1BU0tfQ0FSRVRfVFJBUCwgLi4uZnJhY3Rpb25DYXBwZWQpO1xuXG4gICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGRlY2ltYWxMaW1pdCAtIGZyYWN0aW9uQ2FwcGVkLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICAgICAgbWFzay5wdXNoKFRVSV9ESUdJVF9SRUdFWFApO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgaXNPbmx5WmVyb0RpZ2l0ID0gbWFzay5sZW5ndGggPT09IDEgJiYgaW50ZWdlckNhcHBlZFplcm9zQ2xlYW4gPT09ICcwJztcblxuICAgICAgICBpZiAoaXNOZWdhdGl2ZSkge1xuICAgICAgICAgICAgaWYgKG1hc2subGVuZ3RoID09PSAwKSB7XG4gICAgICAgICAgICAgICAgbWFzay5wdXNoKFRVSV9ESUdJVF9SRUdFWFApO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBtYXNrLnVuc2hpZnQoQ0hBUl9IWVBIRU4pO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHByZXZlbnRMZWFkaW5nWmVyb2VzKG1hc2ssIGlzT25seVplcm9EaWdpdCwgbGVhZGluZ1plcm9zQW1vdW50KTtcbiAgICB9O1xufVxuXG5mdW5jdGlvbiBwcmV2ZW50TGVhZGluZ1plcm9lcyhcbiAgICBtYXNrOiBBcnJheTxzdHJpbmcgfCBSZWdFeHA+LFxuICAgIGlzT25seVplcm9EaWdpdDogYm9vbGVhbiA9IGZhbHNlLFxuICAgIGxlYWRpbmdaZXJvc0Ftb3VudDogbnVtYmVyID0gMCxcbik6IEFycmF5PHN0cmluZyB8IFJlZ0V4cD4ge1xuICAgIGlmIChpc09ubHlaZXJvRGlnaXQgfHwgbGVhZGluZ1plcm9zQW1vdW50ID09PSAwKSB7XG4gICAgICAgIHJldHVybiBtYXNrO1xuICAgIH1cblxuICAgIGNvbnN0IGZpcnN0RGlnaXRJbmRleCA9IG1hc2suaW5kZXhPZihUVUlfRElHSVRfUkVHRVhQKTtcblxuICAgIGlmIChmaXJzdERpZ2l0SW5kZXggPT09IC0xKSB7XG4gICAgICAgIHJldHVybiBtYXNrO1xuICAgIH1cblxuICAgIGNvbnN0IHNlY29uZE1hc2tEaWdpdCA9IG1hc2tbZmlyc3REaWdpdEluZGV4ICsgMV07XG4gICAgY29uc3QgaXNDYXJldFRyYXAgPSBzZWNvbmRNYXNrRGlnaXQgPT09IE1BU0tfQ0FSRVRfVFJBUDtcblxuICAgIGlmIChpc0NhcmV0VHJhcCAmJiBsZWFkaW5nWmVyb3NBbW91bnQgPT09IDEpIHtcbiAgICAgICAgcmV0dXJuIG1hc2s7XG4gICAgfSBlbHNlIGlmIChpc0NhcmV0VHJhcCkge1xuICAgICAgICBtYXNrLnVuc2hpZnQoTk9OX1pFUk9fRElHSVQpO1xuXG4gICAgICAgIHJldHVybiBtYXNrO1xuICAgIH1cblxuICAgIG1hc2tbZmlyc3REaWdpdEluZGV4XSA9IE5PTl9aRVJPX0RJR0lUO1xuXG4gICAgcmV0dXJuIG1hc2s7XG59XG5cbmZ1bmN0aW9uIGdldERlY2ltYWxTeW1ib2xJbmRleChcbiAgICBzdHI6IHN0cmluZyxcbiAgICBkZWNpbWFsU3ltYm9sOiBUdWlEZWNpbWFsU3ltYm9sLFxuICAgIGF1dG9Db3JyZWN0RGVjaW1hbFN5bWJvbDogYm9vbGVhbixcbik6IG51bWJlciB7XG4gICAgaWYgKCFhdXRvQ29ycmVjdERlY2ltYWxTeW1ib2wpIHtcbiAgICAgICAgcmV0dXJuIHN0ci5sYXN0SW5kZXhPZihkZWNpbWFsU3ltYm9sKTtcbiAgICB9XG5cbiAgICByZXR1cm4gTWF0aC5tYXgoXG4gICAgICAgIHN0ci5sYXN0SW5kZXhPZihkZWNpbWFsU3ltYm9sKSxcbiAgICAgICAgc3RyLmxhc3RJbmRleE9mKG90aGVyRGVjaW1hbFN5bWJvbChkZWNpbWFsU3ltYm9sKSksXG4gICAgKTtcbn1cblxuZnVuY3Rpb24gaXNEZWNpbWFsU3ltYm9sKFxuICAgIHN0cjogc3RyaW5nLFxuICAgIGRlY2ltYWxTeW1ib2w6IFR1aURlY2ltYWxTeW1ib2wsXG4gICAgYXV0b0NvcnJlY3REZWNpbWFsU3ltYm9sOiBib29sZWFuLFxuKTogYm9vbGVhbiB7XG4gICAgaWYgKGF1dG9Db3JyZWN0RGVjaW1hbFN5bWJvbCkge1xuICAgICAgICByZXR1cm4gL15bLC5dJC8udGVzdChzdHIpO1xuICAgIH1cblxuICAgIHJldHVybiBzdHIgPT09IGRlY2ltYWxTeW1ib2w7XG59XG5cbmZ1bmN0aW9uIGNvbnZlcnRUb01hc2soc3RyTnVtYmVyOiBzdHJpbmcpOiBBcnJheTxzdHJpbmcgfCBSZWdFeHA+IHtcbiAgICByZXR1cm4gc3RyTnVtYmVyXG4gICAgICAgIC5zcGxpdCgnJylcbiAgICAgICAgLm1hcChjaGFyID0+IChUVUlfRElHSVRfUkVHRVhQLnRlc3QoY2hhcikgPyBUVUlfRElHSVRfUkVHRVhQIDogY2hhcikpO1xufVxuXG5mdW5jdGlvbiBhZGRUaG91c2FuZHNTZXBhcmF0b3Ioc3RyTnVtYmVyOiBzdHJpbmcsIHRob3VzYW5kU3ltYm9sOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiBzdHJOdW1iZXIubGVuZ3RoID4gM1xuICAgICAgICA/IC8vIFRPRE86IGludmVzdGlnYXRlIHRvIGRpc2FsbG93IHBvdGVudGlhbGx5IGNhdGFzdHJvcGhpYyBleHBvbmVudGlhbC10aW1lIHJlZ3VsYXIgZXhwcmVzc2lvbnMuXG4gICAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHVuaWNvcm4vbm8tdW5zYWZlLXJlZ2V4XG4gICAgICAgICAgc3RyTnVtYmVyLnJlcGxhY2UoL1xcQig/PShcXGR7M30pKyg/IVxcZCkpL2csIHRob3VzYW5kU3ltYm9sKVxuICAgICAgICA6IHN0ck51bWJlcjtcbn1cbiJdfQ==
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export * from './is-mobile';
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AdGFpZ2EtdWkvY29yZS91dGlscy9tb2JpbGUvIiwic291cmNlcyI6WyJpbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGFBQWEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vaXMtbW9iaWxlJztcbiJdfQ==
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { tuiGetViewportWidth } from '@taiga-ui/core/utils/dom';
|
|
2
|
+
export function tuiIsMobile(windowRef, { mobile }) {
|
|
3
|
+
return tuiGetViewportWidth(windowRef) <= mobile;
|
|
4
|
+
}
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXMtbW9iaWxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHRhaWdhLXVpL2NvcmUvdXRpbHMvbW9iaWxlLyIsInNvdXJjZXMiOlsiaXMtbW9iaWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBRTdELE1BQU0sVUFBVSxXQUFXLENBQUMsU0FBaUIsRUFBRSxFQUFDLE1BQU0sRUFBVztJQUM3RCxPQUFPLG1CQUFtQixDQUFDLFNBQVMsQ0FBQyxJQUFJLE1BQU0sQ0FBQztBQUNwRCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtUdWlNZWRpYX0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvaW50ZXJmYWNlcyc7XG5pbXBvcnQge3R1aUdldFZpZXdwb3J0V2lkdGh9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3V0aWxzL2RvbSc7XG5cbmV4cG9ydCBmdW5jdGlvbiB0dWlJc01vYmlsZSh3aW5kb3dSZWY6IFdpbmRvdywge21vYmlsZX06IFR1aU1lZGlhKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHR1aUdldFZpZXdwb3J0V2lkdGgod2luZG93UmVmKSA8PSBtb2JpbGU7XG59XG4iXX0=
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generated bundle index. Do not edit.
|
|
3
|
+
*/
|
|
4
|
+
export * from './index';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFpZ2EtdWktY29yZS11dGlscy1tb2JpbGUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AdGFpZ2EtdWkvY29yZS91dGlscy9tb2JpbGUvIiwic291cmNlcyI6WyJ0YWlnYS11aS1jb3JlLXV0aWxzLW1vYmlsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ==
|
|
@@ -38,6 +38,7 @@ var TuiDataListComponent = /** @class */ (function () {
|
|
|
38
38
|
};
|
|
39
39
|
// TODO: Consider aria-activedescendant for proper accessibility implementation
|
|
40
40
|
TuiDataListComponent.prototype.handleFocusLossIfNecessary = function (element) {
|
|
41
|
+
if (element === void 0) { element = this.elementRef.nativeElement; }
|
|
41
42
|
if (this.origin && isNativeFocusedIn(element)) {
|
|
42
43
|
setNativeMouseFocused(this.origin, true, true);
|
|
43
44
|
}
|
|
@@ -101,7 +102,7 @@ var TuiDataListComponent = /** @class */ (function () {
|
|
|
101
102
|
HostListener('keydown.arrowUp.prevent', ['$event.target', '-1'])
|
|
102
103
|
], TuiDataListComponent.prototype, "onKeyDownArrow", null);
|
|
103
104
|
__decorate([
|
|
104
|
-
HostListener('wheel.silent.passive'
|
|
105
|
+
HostListener('wheel.silent.passive'),
|
|
105
106
|
HostListener('mouseleave', ['$event.target'])
|
|
106
107
|
], TuiDataListComponent.prototype, "handleFocusLossIfNecessary", null);
|
|
107
108
|
TuiDataListComponent = TuiDataListComponent_1 = __decorate([
|
|
@@ -124,4 +125,4 @@ var TuiDataListComponent = /** @class */ (function () {
|
|
|
124
125
|
return TuiDataListComponent;
|
|
125
126
|
}());
|
|
126
127
|
export { TuiDataListComponent };
|
|
127
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
128
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1saXN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0B0YWlnYS11aS9jb3JlL2NvbXBvbmVudHMvZGF0YS1saXN0LyIsInNvdXJjZXMiOlsiZGF0YS1saXN0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUNILHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsZUFBZSxFQUNmLFVBQVUsRUFDVixVQUFVLEVBQ1YsV0FBVyxFQUNYLFlBQVksRUFDWixNQUFNLEVBQ04sS0FBSyxFQUNMLFNBQVMsRUFDVCxpQkFBaUIsR0FDcEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUNILFdBQVcsRUFDWCxpQkFBaUIsRUFDakIsU0FBUyxFQUNULHdCQUF3QixFQUN4QixTQUFTLEVBQ1QscUJBQXFCLEVBQ3JCLHNCQUFzQixFQUN0QixjQUFjLEVBQ2QsT0FBTyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBQyxzQkFBc0IsRUFBRSx5QkFBeUIsRUFBQyxNQUFNLHVCQUF1QixDQUFDO0FBR3hGLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDaEMsT0FBTyxFQUFDLEdBQUcsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBRW5DLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBRTdELCtFQUErRTtBQUMvRSxXQUFXO0FBY1g7SUFlSSw4QkFDeUMsVUFBbUMsRUFFL0Qsb0JBQXdDO1FBRlosZUFBVSxHQUFWLFVBQVUsQ0FBeUI7UUFFL0QseUJBQW9CLEdBQXBCLG9CQUFvQixDQUFvQjtRQWhCcEMsWUFBTyxHQUFxQyxXQUFXLENBQUM7UUFPekUsU0FBSSxHQUFvQixTQUFTLENBQUM7UUFJbEMsaUJBQVksR0FBd0IsRUFBRSxDQUFDO0lBTXBDLENBQUM7NkJBbkJLLG9CQUFvQjtJQXNCN0Isc0JBQUksd0NBQU07YUFBVjtZQUNJLE9BQU8sd0JBQXdCLENBQUMs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REFLekU7SUFHRDtRQURDLFlBQVksQ0FBQyxtQkFBbUIsQ0FBQztvREFDbkI7SUFJZjtRQUZDLFlBQVksQ0FBQywyQkFBMkIsRUFBRSxDQUFDLGVBQWUsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUNqRSxZQUFZLENBQUMseUJBQXlCLEVBQUUsQ0FBQyxlQUFlLEVBQUUsSUFBSSxDQUFDLENBQUM7OERBS2hFO0lBS0Q7UUFGQyxZQUFZLENBQUMsc0JBQXNCLENBQUM7UUFDcEMsWUFBWSxDQUFDLFlBQVksRUFBRSxDQUFDLGVBQWUsQ0FBQyxDQUFDOzBFQU83QztJQXJEUSxvQkFBb0I7UUFiaEMsU0FBUyxDQUFDO1lBQ1AsUUFBUSxFQUFFLGVBQWU7WUFDekIsMllBQXdDO1lBRXhDLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO1lBQy9DLGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO1lBQ3JDLFNBQVMsRUFBRTtnQkFDUDtvQkFDSSxPQUFPLEVBQUUsc0JBQXNCO29CQUMvQixXQUFXLEVBQUUsVUFBVSxDQUFDLGNBQU0sT0FBQSxzQkFBb0IsRUFBcEIsQ0FBb0IsQ0FBQztpQkFDdEQ7YUFDSjs7U0FDSixDQUFDO1FBaUJPLFdBQUEsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFBO1FBQ2xCLFdBQUEsTUFBTSxDQUFDLHlCQUF5QixDQUFDLENBQUE7T0FqQjdCLG9CQUFvQixDQTJFaEM7SUFBRCwyQkFBQztDQUFBLEFBM0VELElBMkVDO1NBM0VZLG9CQUFvQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ29tcG9uZW50LFxuICAgIENvbnRlbnRDaGlsZHJlbixcbiAgICBFbGVtZW50UmVmLFxuICAgIGZvcndhcmRSZWYsXG4gICAgSG9zdEJpbmRpbmcsXG4gICAgSG9zdExpc3RlbmVyLFxuICAgIEluamVjdCxcbiAgICBJbnB1dCxcbiAgICBRdWVyeUxpc3QsXG4gICAgVmlld0VuY2Fwc3VsYXRpb24sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgICBFTVBUWV9RVUVSWSxcbiAgICBpc05hdGl2ZUZvY3VzZWRJbixcbiAgICBpc1ByZXNlbnQsXG4gICAgaXRlbXNRdWVyeUxpc3RPYnNlcnZhYmxlLFxuICAgIG1vdmVGb2N1cyxcbiAgICBzZXROYXRpdmVNb3VzZUZvY3VzZWQsXG4gICAgdHVpQXNzZXJ0SXNIVE1MRWxlbWVudCxcbiAgICB0dWlEZWZhdWx0UHJvcCxcbiAgICB0dWlQdXJlLFxufSBmcm9tICdAdGFpZ2EtdWkvY2RrJztcbmltcG9ydCB7VHVpRGF0YUxpc3RBY2Nlc3Nvcn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvaW50ZXJmYWNlcyc7XG5pbXBvcnQge1RVSV9EQVRBX0xJU1RfQUNDRVNTT1IsIFRVSV9OT1RISU5HX0ZPVU5EX01FU1NBR0V9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3Rva2Vucyc7XG5pbXBvcnQge1R1aURhdGFMaXN0Um9sZX0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvdHlwZXMnO1xuaW1wb3J0IHtQb2x5bW9ycGhldXNDb250ZW50fSBmcm9tICdAdGlua29mZi9uZy1wb2x5bW9ycGhldXMnO1xuaW1wb3J0IHtPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcbmltcG9ydCB7bWFwfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7VHVpT3B0aW9uQ29tcG9uZW50fSBmcm9tICcuL29wdGlvbi9vcHRpb24uY29tcG9uZW50JztcblxuLy8gVE9ETzogQ29uc2lkZXIgYXJpYS1hY3RpdmVkZXNjZW5kYW50IGZvciBwcm9wZXIgYWNjZXNzaWJpbGl0eSBpbXBsZW1lbnRhdGlvblxuLy8gQGR5bmFtaWNcbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAndHVpLWRhdGEtbGlzdCcsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2RhdGEtbGlzdC50ZW1wbGF0ZS5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9kYXRhLWxpc3Quc3R5bGUubGVzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IFRVSV9EQVRBX0xJU1RfQUNDRVNTT1IsXG4gICAgICAgICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBUdWlEYXRhTGlzdENvbXBvbmVudCksXG4gICAgICAgIH0sXG4gICAgXSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpRGF0YUxpc3RDb21wb25lbnQ8VD4gaW1wbGVtZW50cyBUdWlEYXRhTGlzdEFjY2Vzc29yPFQ+IHtcbiAgICBAQ29udGVudENoaWxkcmVuKGZvcndhcmRSZWYoKCkgPT4gVHVpT3B0aW9uQ29tcG9uZW50KSwge2Rlc2NlbmRhbnRzOiB0cnVlfSlcbiAgICBwcml2YXRlIHJlYWRvbmx5IG9wdGlvbnM6IFF1ZXJ5TGlzdDxUdWlPcHRpb25Db21wb25lbnQ8VD4+ID0gRU1QVFlfUVVFUlk7XG5cbiAgICBwcml2YXRlIG9yaWdpbj86IEhUTUxFbGVtZW50O1xuXG4gICAgQElucHV0KClcbiAgICBASG9zdEJpbmRpbmcoJ2F0dHIucm9sZScpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICByb2xlOiBUdWlEYXRhTGlzdFJvbGUgPSAnbGlzdGJveCc7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgZW1wdHlDb250ZW50OiBQb2x5bW9ycGhldXNDb250ZW50ID0gJyc7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgQEluamVjdChFbGVtZW50UmVmKSBwcml2YXRlIHJlYWRvbmx5IGVsZW1lbnRSZWY6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxuICAgICAgICBASW5qZWN0KFRVSV9OT1RISU5HX0ZPVU5EX01FU1NBR0UpXG4gICAgICAgIHJlYWRvbmx5IGRlZmF1bHRFbXB0eUNvbnRlbnQkOiBPYnNlcnZhYmxlPHN0cmluZz4sXG4gICAgKSB7fVxuXG4gICAgQHR1aVB1cmVcbiAgICBnZXQgZW1wdHkkKCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgICAgICByZXR1cm4gaXRlbXNRdWVyeUxpc3RPYnNlcnZhYmxlKHRoaXMub3B0aW9ucykucGlwZShtYXAoKHtsZW5ndGh9KSA9PiAhbGVuZ3RoKSk7XG4gICAgfVxuXG4gICAgQEhvc3RMaXN0ZW5lcignZm9jdXNpbicsIFsnJGV2ZW50LnJlbGF0ZWRUYXJnZXQnLCAnJGV2ZW50LmN1cnJlbnRUYXJnZXQnXSlcbiAgICBvbkZvY3VzSW4ocmVsYXRlZFRhcmdldDogSFRNTEVsZW1lbnQsIGN1cnJlbnRUYXJnZXQ6IEhUTUxFbGVtZW50KTogdm9pZCB7XG4gICAgICAgIGlmICghY3VycmVudFRhcmdldC5jb250YWlucyhyZWxhdGVkVGFyZ2V0KSAmJiAhdGhpcy5vcmlnaW4pIHtcbiAgICAgICAgICAgIHRoaXMub3JpZ2luID0gcmVsYXRlZFRhcmdldDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBIb3N0TGlzdGVuZXIoJ21vdXNlZG93bi5wcmV2ZW50JylcbiAgICBub29wKCk6IHZvaWQge31cblxuICAgIEBIb3N0TGlzdGVuZXIoJ2tleWRvd24uYXJyb3dEb3duLnByZXZlbnQnLCBbJyRldmVudC50YXJnZXQnLCAnMSddKVxuICAgIEBIb3N0TGlzdGVuZXIoJ2tleWRvd24uYXJyb3dVcC5wcmV2ZW50JywgWyckZXZlbnQudGFyZ2V0JywgJy0xJ10pXG4gICAgb25LZXlEb3duQXJyb3coY3VycmVudDogSFRNTEVsZW1lbnQsIHN0ZXA6IG51bWJlcik6IHZvaWQge1xuICAgICAgICBjb25zdCB7ZWxlbWVudHN9ID0gdGhpcztcblxuICAgICAgICBtb3ZlRm9jdXMoZWxlbWVudHMuaW5kZXhPZihjdXJyZW50KSwgZWxlbWVudHMsIHN0ZXApO1xuICAgIH1cblxuICAgIC8vIFRPRE86IENvbnNpZGVyIGFyaWEtYWN0aXZlZGVzY2VuZGFudCBmb3IgcHJvcGVyIGFjY2Vzc2liaWxpdHkgaW1wbGVtZW50YXRpb25cbiAgICBASG9zdExpc3RlbmVyKCd3aGVlbC5zaWxlbnQucGFzc2l2ZScpXG4gICAgQEhvc3RMaXN0ZW5lcignbW91c2VsZWF2ZScsIFsnJGV2ZW50LnRhcmdldCddKVxuICAgIGhhbmRsZUZvY3VzTG9zc0lmTmVjZXNzYXJ5KFxuICAgICAgICBlbGVtZW50OiBIVE1MRWxlbWVudCA9IHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LFxuICAgICk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5vcmlnaW4gJiYgaXNOYXRpdmVGb2N1c2VkSW4oZWxlbWVudCkpIHtcbiAgICAgICAgICAgIHNldE5hdGl2ZU1vdXNlRm9jdXNlZCh0aGlzLm9yaWdpbiwgdHJ1ZSwgdHJ1ZSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBnZXRPcHRpb25zKGluY2x1ZGVEaXNhYmxlZDogYm9vbGVhbiA9IGZhbHNlKTogcmVhZG9ubHkgVFtdIHtcbiAgICAgICAgcmV0dXJuIHRoaXMub3B0aW9uc1xuICAgICAgICAgICAgLnRvQXJyYXkoKVxuICAgICAgICAgICAgLmZpbHRlcigoe2Rpc2FibGVkfSkgPT4gaW5jbHVkZURpc2FibGVkIHx8ICFkaXNhYmxlZClcbiAgICAgICAgICAgIC5tYXAoKHt2YWx1ZX0pID0+IHZhbHVlKVxuICAgICAgICAgICAgLmZpbHRlcihpc1ByZXNlbnQpO1xuICAgIH1cblxuICAgIG9uRm9jdXMoe3RhcmdldH06IEV2ZW50LCB0b3A6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgdHVpQXNzZXJ0SXNIVE1MRWxlbWVudCh0YXJnZXQpO1xuXG4gICAgICAgIGNvbnN0IHtlbGVtZW50c30gPSB0aGlzO1xuXG4gICAgICAgIG1vdmVGb2N1cyh0b3AgPyAtMSA6IGVsZW1lbnRzLmxlbmd0aCwgZWxlbWVudHMsIHRvcCA/IDEgOiAtMSk7XG4gICAgICAgIHRoaXMuaGFuZGxlRm9jdXNMb3NzSWZOZWNlc3NhcnkodGFyZ2V0KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldCBlbGVtZW50cygpOiByZWFkb25seSBIVE1MRWxlbWVudFtdIHtcbiAgICAgICAgcmV0dXJuIEFycmF5LmZyb20odGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvckFsbCgnW3R1aU9wdGlvbl0nKSk7XG4gICAgfVxufVxuIl19
|
|
@@ -2,6 +2,7 @@ import { DOCUMENT } from '@angular/common';
|
|
|
2
2
|
import { ElementRef, InjectionToken } from '@angular/core';
|
|
3
3
|
import { WINDOW } from '@ng-web-apis/common';
|
|
4
4
|
import { containsOrAfter, isCurrentTarget, TuiDestroyService, typedFromEvent, } from '@taiga-ui/cdk';
|
|
5
|
+
import { tuiGetViewportWidth } from '@taiga-ui/core/utils/dom';
|
|
5
6
|
import { POLYMORPHEUS_CONTEXT } from '@tinkoff/ng-polymorpheus';
|
|
6
7
|
import { EMPTY, merge } from 'rxjs';
|
|
7
8
|
import { filter, switchMapTo, take, takeUntil } from 'rxjs/operators';
|
|
@@ -26,7 +27,8 @@ export function dialogCloseStreamFactory(documentRef, windowRef, _a, close$, des
|
|
|
26
27
|
filter(function (_a) {
|
|
27
28
|
var target = _a.target, clientX = _a.clientX;
|
|
28
29
|
return target instanceof Element &&
|
|
29
|
-
windowRef
|
|
30
|
+
tuiGetViewportWidth(windowRef) - clientX >
|
|
31
|
+
SCROLLBAR_PLACEHOLDER &&
|
|
30
32
|
!containsOrAfter(nativeElement, target);
|
|
31
33
|
}), switchMapTo(typedFromEvent(documentRef, 'mouseup').pipe(take(1),
|
|
32
34
|
// TODO: iframe warning
|
|
@@ -53,4 +55,4 @@ export var TUI_DIALOG_PROVIDERS = [
|
|
|
53
55
|
useFactory: dialogCloseStreamFactory,
|
|
54
56
|
},
|
|
55
57
|
];
|
|
56
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
58
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLnByb3ZpZGVycy5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0B0YWlnYS11aS9jb3JlL2NvbXBvbmVudHMvZGlhbG9nLyIsInNvdXJjZXMiOlsiZGlhbG9nLnByb3ZpZGVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDekMsT0FBTyxFQUFDLFVBQVUsRUFBRSxjQUFjLEVBQVcsTUFBTSxlQUFlLENBQUM7QUFDbkUsT0FBTyxFQUFDLE1BQU0sRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQzNDLE9BQU8sRUFDSCxlQUFlLEVBQ2YsZUFBZSxFQUNmLGlCQUFpQixFQUVqQixjQUFjLEdBQ2pCLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBQzdELE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBQzlELE9BQU8sRUFBQyxLQUFLLEVBQUUsS0FBSyxFQUFhLE1BQU0sTUFBTSxDQUFDO0FBQzlDLE9BQU8sRUFBQyxNQUFNLEVBQUUsV0FBVyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUVwRSxNQUFNLENBQUMsSUFBTSxpQkFBaUIsR0FBRyxJQUFJLGNBQWMsQ0FDL0MsMkJBQTJCLEVBQzNCO0lBQ0ksT0FBTyxFQUFFLGNBQU0sT0FBQSxLQUFLLEVBQUwsQ0FBSztDQUN2QixDQUNKLENBQUM7QUFFRixJQUFNLHFCQUFxQixHQUFHLEVBQUUsQ0FBQztBQUVqQyxNQUFNLFVBQVUsd0JBQXdCLENBQ3BDLFdBQXFCLEVBQ3JCLFNBQWlCLEVBQ2pCLEVBQXdDLEVBQ3hDLE1BQXdCLEVBQ3hCLFFBQTBCLEVBQzFCLEVBQTREO1FBSDNELGdDQUFhO1FBR2IsNEJBQVc7SUFFWixPQUFPLFdBQVc7UUFDZCxDQUFDLENBQUMsS0FBSyxDQUNELGNBQWMsQ0FBQyxhQUFhLEVBQUUsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxlQUFlLENBQUMsQ0FBQyxFQUNwRSxjQUFjLENBQUMsV0FBVyxFQUFFLFNBQVMsQ0FBQyxDQUFDLElBQUk7UUFDdkMsdUJBQXVCO1FBQ3ZCLE1BQU0sQ0FDRixVQUFDLEVBQWE7Z0JBQVosWUFBRyxFQUFFLGtCQUFNO1lBQ1QsT0FBQSxHQUFHLEtBQUssUUFBUTtnQkFDaEIsTUFBTSxZQUFZLE9BQU87Z0JBQ3pCLENBQUMsQ0FBQyxlQUFlLENBQUMsYUFBYSxFQUFFLE1BQU0sQ0FBQztvQkFDcEMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUhuQyxDQUdtQyxDQUMxQyxDQUNKLEVBQ0QsY0FBYyxDQUFDLFdBQVcsRUFBRSxXQUFXLENBQUMsQ0FBQyxJQUFJO1FBQ3pDLHVCQUF1QjtRQUN2QixNQUFNLENBQ0YsVUFBQyxFQUFpQjtnQkFBaEIsa0JBQU0sRUFBRSxvQkFBTztZQUNiLE9BQUEsTUFBTSxZQUFZLE9BQU87Z0JBQ3pCLG1CQUFtQixDQUFDLFNBQVMsQ0FBQyxHQUFHLE9BQU87b0JBQ3BDLHFCQUFxQjtnQkFDekIsQ0FBQyxlQUFlLENBQUMsYUFBYSxFQUFFLE1BQU0sQ0FBQztRQUh2QyxDQUd1QyxDQUM5QyxFQUNELFdBQVcsQ0FDUCxjQUFjLENBQUMsV0FBVyxFQUFFLFNBQVMsQ0FBQyxDQUFDLElBQUksQ0FDdkMsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUNQLHVCQUF1QjtRQUN2QixNQUFNLENBQ0YsVUFBQyxFQUFRO2dCQUFQLGtCQUFNO1lBQ0osT0FBQSxNQUFNLFlBQVksT0FBTztnQkFDekIsQ0FBQyxlQUFlLENBQUMsYUFBYSxFQUFFLE1BQU0sQ0FBQztRQUR2QyxDQUN1QyxDQUM5QyxDQUNKLENBQ0osQ0FDSixFQUNELE1BQU0sQ0FDVCxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDN0IsQ0FBQyxDQUFDLE1BQU0sQ0FBQztBQUNqQixDQUFDO0FBRUQsTUFBTSxDQUFDLElBQU0sdUJBQXVCLEdBQUcsSUFBSSxjQUFjLENBQ3JELHdCQUF3QixDQUMzQixDQUFDO0FBQ0YsTUFBTSxDQUFDLElBQU0sb0JBQW9CLEdBQWU7SUFDNUMsaUJBQWlCO0lBQ2pCO1FBQ0ksT0FBTyxFQUFFLHVCQUF1QjtRQUNoQyxJQUFJLEVBQUU7WUFDRixRQUFRO1lBQ1IsTUFBTTtZQUNOLFVBQVU7WUFDVixpQkFBaUI7WUFDakIsaUJBQWlCO1lBQ2pCLG9CQUFvQjtTQUN2QjtRQUNELFVBQVUsRUFBRSx3QkFBd0I7S0FDdkM7Q0FDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtET0NVTUVOVH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7RWxlbWVudFJlZiwgSW5qZWN0aW9uVG9rZW4sIFByb3ZpZGVyfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7V0lORE9XfSBmcm9tICdAbmctd2ViLWFwaXMvY29tbW9uJztcbmltcG9ydCB7XG4gICAgY29udGFpbnNPckFmdGVyLFxuICAgIGlzQ3VycmVudFRhcmdldCxcbiAgICBUdWlEZXN0cm95U2VydmljZSxcbiAgICBUdWlEaWFsb2csXG4gICAgdHlwZWRGcm9tRXZlbnQsXG59IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHtUdWlEaWFsb2dPcHRpb25zfSBmcm9tICdAdGFpZ2EtdWkvY29yZS9pbnRlcmZhY2VzJztcbmltcG9ydCB7dHVpR2V0Vmlld3BvcnRXaWR0aH0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvdXRpbHMvZG9tJztcbmltcG9ydCB7UE9MWU1PUlBIRVVTX0NPTlRFWFR9IGZyb20gJ0B0aW5rb2ZmL25nLXBvbHltb3JwaGV1cyc7XG5pbXBvcnQge0VNUFRZLCBtZXJnZSwgT2JzZXJ2YWJsZX0gZnJvbSAncnhqcyc7XG5pbXBvcnQge2ZpbHRlciwgc3dpdGNoTWFwVG8sIHRha2UsIHRha2VVbnRpbH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5leHBvcnQgY29uc3QgVFVJX0RJQUxPR1NfQ0xPU0UgPSBuZXcgSW5qZWN0aW9uVG9rZW48T2JzZXJ2YWJsZTx1bmtub3duPj4oXG4gICAgJ0Egc3RyZWFtIHRvIGNsb3NlIGRpYWxvZ3MnLFxuICAgIHtcbiAgICAgICAgZmFjdG9yeTogKCkgPT4gRU1QVFksXG4gICAgfSxcbik7XG5cbmNvbnN0IFNDUk9MTEJBUl9QTEFDRUhPTERFUiA9IDE3O1xuXG5leHBvcnQgZnVuY3Rpb24gZGlhbG9nQ2xvc2VTdHJlYW1GYWN0b3J5KFxuICAgIGRvY3VtZW50UmVmOiBEb2N1bWVudCxcbiAgICB3aW5kb3dSZWY6IFdpbmRvdyxcbiAgICB7bmF0aXZlRWxlbWVudH06IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxuICAgIGNsb3NlJDogT2JzZXJ2YWJsZTx2b2lkPixcbiAgICBkZXN0cm95JDogT2JzZXJ2YWJsZTx2b2lkPixcbiAgICB7ZGlzbWlzc2libGV9OiBUdWlEaWFsb2c8VHVpRGlhbG9nT3B0aW9uczx1bmtub3duPiwgdW5rbm93bj4sXG4pOiBPYnNlcnZhYmxlPHVua25vd24+IHtcbiAgICByZXR1cm4gZGlzbWlzc2libGVcbiAgICAgICAgPyBtZXJnZShcbiAgICAgICAgICAgICAgdHlwZWRGcm9tRXZlbnQobmF0aXZlRWxlbWVudCwgJ2NsaWNrJykucGlwZShmaWx0ZXIoaXNDdXJyZW50VGFyZ2V0KSksXG4gICAgICAgICAgICAgIHR5cGVkRnJvbUV2ZW50KGRvY3VtZW50UmVmLCAna2V5ZG93bicpLnBpcGUoXG4gICAgICAgICAgICAgICAgICAvLyBUT0RPOiBpZnJhbWUgd2FybmluZ1xuICAgICAgICAgICAgICAgICAgZmlsdGVyKFxuICAgICAgICAgICAgICAgICAgICAgICh7a2V5LCB0YXJnZXR9KSA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICBrZXkgPT09ICdFc2NhcGUnICYmXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHRhcmdldCBpbnN0YW5jZW9mIEVsZW1lbnQgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgKCFjb250YWluc09yQWZ0ZXIobmF0aXZlRWxlbWVudCwgdGFyZ2V0KSB8fFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmF0aXZlRWxlbWVudC5jb250YWlucyh0YXJnZXQpKSxcbiAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgIHR5cGVkRnJvbUV2ZW50KGRvY3VtZW50UmVmLCAnbW91c2Vkb3duJykucGlwZShcbiAgICAgICAgICAgICAgICAgIC8vIFRPRE86IGlmcmFtZSB3YXJuaW5nXG4gICAgICAgICAgICAgICAgICBmaWx0ZXIoXG4gICAgICAgICAgICAgICAgICAgICAgKHt0YXJnZXQsIGNsaWVudFh9KSA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICB0YXJnZXQgaW5zdGFuY2VvZiBFbGVtZW50ICYmXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHR1aUdldFZpZXdwb3J0V2lkdGgod2luZG93UmVmKSAtIGNsaWVudFggPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU0NST0xMQkFSX1BMQUNFSE9MREVSICYmXG4gICAgICAgICAgICAgICAgICAgICAgICAgICFjb250YWluc09yQWZ0ZXIobmF0aXZlRWxlbWVudCwgdGFyZ2V0KSxcbiAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICBzd2l0Y2hNYXBUbyhcbiAgICAgICAgICAgICAgICAgICAgICB0eXBlZEZyb21FdmVudChkb2N1bWVudFJlZiwgJ21vdXNldXAnKS5waXBlKFxuICAgICAgICAgICAgICAgICAgICAgICAgICB0YWtlKDEpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBUT0RPOiBpZnJhbWUgd2FybmluZ1xuICAgICAgICAgICAgICAgICAgICAgICAgICBmaWx0ZXIoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoe3RhcmdldH0pID0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGFyZ2V0IGluc3RhbmNlb2YgRWxlbWVudCAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICFjb250YWluc09yQWZ0ZXIobmF0aXZlRWxlbWVudCwgdGFyZ2V0KSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgY2xvc2UkLFxuICAgICAgICAgICkucGlwZSh0YWtlVW50aWwoZGVzdHJveSQpKVxuICAgICAgICA6IGNsb3NlJDtcbn1cblxuZXhwb3J0IGNvbnN0IFRVSV9ESUFMT0dfQ0xPU0VfU1RSRUFNID0gbmV3IEluamVjdGlvblRva2VuPE9ic2VydmFibGU8dW5rbm93bj4+KFxuICAgICdEaWFsb2dzIGNsb3Npbmcgc3RyZWFtJyxcbik7XG5leHBvcnQgY29uc3QgVFVJX0RJQUxPR19QUk9WSURFUlM6IFByb3ZpZGVyW10gPSBbXG4gICAgVHVpRGVzdHJveVNlcnZpY2UsXG4gICAge1xuICAgICAgICBwcm92aWRlOiBUVUlfRElBTE9HX0NMT1NFX1NUUkVBTSxcbiAgICAgICAgZGVwczogW1xuICAgICAgICAgICAgRE9DVU1FTlQsXG4gICAgICAgICAgICBXSU5ET1csXG4gICAgICAgICAgICBFbGVtZW50UmVmLFxuICAgICAgICAgICAgVFVJX0RJQUxPR1NfQ0xPU0UsXG4gICAgICAgICAgICBUdWlEZXN0cm95U2VydmljZSxcbiAgICAgICAgICAgIFBPTFlNT1JQSEVVU19DT05URVhULFxuICAgICAgICBdLFxuICAgICAgICB1c2VGYWN0b3J5OiBkaWFsb2dDbG9zZVN0cmVhbUZhY3RvcnksXG4gICAgfSxcbl07XG4iXX0=
|
|
@@ -5,7 +5,7 @@ import { AbstractTuiPortalHostComponent, getClosestFocusable, inRange, POLLING_T
|
|
|
5
5
|
import { tuiDropdownAnimation } from '@taiga-ui/core/animations';
|
|
6
6
|
import { DEFAULT_MARGIN, DEFAULT_MAX_WIDTH } from '@taiga-ui/core/constants';
|
|
7
7
|
import { TUI_ANIMATION_OPTIONS, TUI_DROPDOWN_DIRECTIVE } from '@taiga-ui/core/tokens';
|
|
8
|
-
import { getScreenWidth } from '@taiga-ui/core/utils/dom';
|
|
8
|
+
import { getScreenWidth, tuiGetViewportWidth } from '@taiga-ui/core/utils/dom';
|
|
9
9
|
import { fromEvent, merge, Observable } from 'rxjs';
|
|
10
10
|
import { takeUntil, throttleTime } from 'rxjs/operators';
|
|
11
11
|
/**
|
|
@@ -122,10 +122,11 @@ var TuiDropdownBoxComponent = /** @class */ (function () {
|
|
|
122
122
|
: 0;
|
|
123
123
|
var left = Math.ceil(directiveRect.left - hostRect.left - offset);
|
|
124
124
|
var right = Math.floor(hostRect.right - directiveRect.right - offset);
|
|
125
|
+
var viewportWidth = tuiGetViewportWidth(this.windowRef);
|
|
125
126
|
switch (this.getFinalAlign(style, directiveRect)) {
|
|
126
127
|
case 'left':
|
|
127
|
-
if (right + DEFAULT_MARGIN >
|
|
128
|
-
inRange(left + DEFAULT_MARGIN, 0,
|
|
128
|
+
if (right + DEFAULT_MARGIN > viewportWidth ||
|
|
129
|
+
inRange(left + DEFAULT_MARGIN, 0, viewportWidth)) {
|
|
129
130
|
style.left = px(left);
|
|
130
131
|
style.right = 'auto';
|
|
131
132
|
}
|
|
@@ -135,8 +136,8 @@ var TuiDropdownBoxComponent = /** @class */ (function () {
|
|
|
135
136
|
}
|
|
136
137
|
break;
|
|
137
138
|
case 'right':
|
|
138
|
-
if (inRange(right + DEFAULT_MARGIN, 0,
|
|
139
|
-
left + DEFAULT_MARGIN >
|
|
139
|
+
if (inRange(right + DEFAULT_MARGIN, 0, viewportWidth) ||
|
|
140
|
+
left + DEFAULT_MARGIN > viewportWidth) {
|
|
140
141
|
style.left = 'auto';
|
|
141
142
|
style.right = px(right);
|
|
142
143
|
}
|
|
@@ -309,4 +310,4 @@ var TuiDropdownBoxComponent = /** @class */ (function () {
|
|
|
309
310
|
return TuiDropdownBoxComponent;
|
|
310
311
|
}());
|
|
311
312
|
export { TuiDropdownBoxComponent };
|
|
312
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24tYm94LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0B0YWlnYS11aS9jb3JlL2NvbXBvbmVudHMvZHJvcGRvd24tYm94LyIsInNvdXJjZXMiOlsiZHJvcGRvd24tYm94LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQ0EsT0FBTyxFQUNILGdCQUFnQixFQUNoQix1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFVBQVUsRUFDVixXQUFXLEVBQ1gsTUFBTSxFQUNOLE1BQU0sRUFDTixTQUFTLEdBQ1osTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLGVBQWUsRUFBRSxNQUFNLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUM1RCxPQUFPLEVBQ0gsOEJBQThCLEVBQzlCLG1CQUFtQixFQUNuQixPQUFPLEVBQ1AsWUFBWSxFQUNaLEVBQUUsRUFDRixzQkFBc0IsRUFDdEIsc0JBQXNCLEVBQ3RCLGlCQUFpQixFQUNqQix3QkFBd0IsRUFDeEIsa0JBQWtCLEVBQ2xCLE9BQU8sRUFDUCxXQUFXLEdBQ2QsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sMkJBQTJCLENBQUM7QUFDL0QsT0FBTyxFQUFDLGNBQWMsRUFBRSxpQkFBaUIsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBRzNFLE9BQU8sRUFBQyxxQkFBcUIsRUFBRSxzQkFBc0IsRUFBQyxNQUFNLHVCQUF1QixDQUFDO0FBRXBGLE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUN4RCxPQUFPLEVBQUMsU0FBUyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDbEQsT0FBTyxFQUFDLFNBQVMsRUFBRSxZQUFZLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUV2RDs7R0FFRztBQUNILG9CQUFvQjtBQUNwQiw4RkFBOEY7QUFDOUYsV0FBVztBQVNYO0lBc0JJLGlDQUVJLFFBQTJCLEVB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QUUzQyxlQUFlLEVBQUUsdUJBQXVCLENBQUMsT0FBTztZQUNoRCxTQUFTLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQztZQUM5QixVQUFVLEVBQUUsQ0FBQyxvQkFBb0IsQ0FBQzs7U0FDckMsQ0FBQztRQXdCTyxXQUFBLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFBO1FBRXpCLFdBQUEsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFBO1FBQ2QsV0FBQSxNQUFNLENBQUMsc0JBQXNCLENBQUMsQ0FBQTtRQUM5QixXQUFBLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQTtRQUNkLFdBQUEsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFBO1FBQ2xCLFdBQUEsTUFBTSxDQUFDLDhCQUE4QixDQUFDLENBQUE7UUFFdEMsV0FBQSxNQUFNLENBQUMscUJBQXFCLENBQUMsQ0FBQTtRQUM3QixXQUFBLE1BQU0sQ0FBQyxlQUFlLENBQUMsQ0FBQTtPQWhDbkIsdUJBQXVCLENBcVZuQztJQUFELDhCQUFDO0NBQUEsQUFyVkQsSUFxVkM7U0FyVlksdUJBQXVCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtBbmltYXRpb25PcHRpb25zfSBmcm9tICdAYW5ndWxhci9hbmltYXRpb25zJztcbmltcG9ydCB7XG4gICAgQWZ0ZXJWaWV3Q2hlY2tlZCxcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDb21wb25lbnQsXG4gICAgRWxlbWVudFJlZixcbiAgICBIb3N0QmluZGluZyxcbiAgICBJbmplY3QsXG4gICAgTmdab25lLFxuICAgIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0FOSU1BVElPTl9GUkFNRSwgV0lORE9XfSBmcm9tICdAbmctd2ViLWFwaXMvY29tbW9uJztcbmltcG9ydCB7XG4gICAgQWJzdHJhY3RUdWlQb3J0YWxIb3N0Q29tcG9uZW50LFxuICAgIGdldENsb3Nlc3RGb2N1c2FibGUsXG4gICAgaW5SYW5nZSxcbiAgICBQT0xMSU5HX1RJTUUsXG4gICAgcHgsXG4gICAgVHVpQWN0aXZlWm9uZURpcmVjdGl2ZSxcbiAgICB0dWlBc3NlcnRJc0hUTUxFbGVtZW50LFxuICAgIFR1aURlc3Ryb3lTZXJ2aWNlLFxuICAgIFR1aURyb3Bkb3duSG9zdENvbXBvbmVudCxcbiAgICBUdWlPdmVyc2Nyb2xsTW9kZVQsXG4gICAgdHVpUHVyZSxcbiAgICB0dWlab25lZnJlZSxcbn0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge3R1aURyb3Bkb3duQW5pbWF0aW9ufSBmcm9tICdAdGFpZ2EtdWkvY29yZS9hbmltYXRpb25zJztcbmltcG9ydCB7REVGQVVMVF9NQVJHSU4sIERFRkFVTFRfTUFYX1dJRFRIfSBmcm9tICdAdGFpZ2EtdWkvY29yZS9jb25zdGFudHMnO1xuaW1wb3J0IHtUdWlEcm9wZG93bkFuaW1hdGlvbn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvZW51bXMnO1xuaW1wb3J0IHtUdWlBbmltYXRpb25PcHRpb25zLCBUdWlEcm9wZG93bn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvaW50ZXJmYWNlcyc7XG5pbXBvcnQge1RVSV9BTklNQVRJT05fT1BUSU9OUywgVFVJX0RST1BET1dOX0RJUkVDVElWRX0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvdG9rZW5zJztcbmltcG9ydCB7VHVpSG9yaXpvbnRhbERpcmVjdGlvbiwgVHVpVmVydGljYWxEaXJlY3Rpb259IGZyb20gJ0B0YWlnYS11aS9jb3JlL3R5cGVzJztcbmltcG9ydCB7Z2V0U2NyZWVuV2lkdGh9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3V0aWxzL2RvbSc7XG5pbXBvcnQge2Zyb21FdmVudCwgbWVyZ2UsIE9ic2VydmFibGV9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHt0YWtlVW50aWwsIHRocm90dGxlVGltZX0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG4vKipcbiAqICBUaGlzIGNvbXBvbmVudCBpcyB1c2VkIHRvIHNob3cgdGVtcGxhdGUgaW4gYSBwb3J0YWwgdXNpbmcgZGVmYXVsdCBzdHlsZSBvZiB3aGl0ZSByb3VuZGVkIGJveCB3aXRoIGEgc2hhZG93XG4gKi9cbi8vIEBiYWQgVE9ETzogT25QdXNoXG4vLyBBbWJpZW50IHR5cGUgY2Fubm90IGJlIHVzZWQgd2l0aG91dCBkeW5hbWljIGh0dHBzOi8vZ2l0aHViLmNvbS9hbmd1bGFyL2FuZ3VsYXIvaXNzdWVzLzIzMzk1XG4vLyBAZHluYW1pY1xuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICd0dWktZHJvcGRvd24tYm94JyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vZHJvcGRvd24tYm94LnRlbXBsYXRlLmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2Ryb3Bkb3duLWJveC5zdHlsZS5sZXNzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5EZWZhdWx0LFxuICAgIHByb3ZpZGVyczogW1R1aURlc3Ryb3lTZXJ2aWNlXSxcbiAgICBhbmltYXRpb25zOiBbdHVpRHJvcGRvd25BbmltYXRpb25dLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlEcm9wZG93bkJveENvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0NoZWNrZWQge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgYW5pbWF0aW9uVG9wID0ge1xuICAgICAgICB2YWx1ZTogVHVpRHJvcGRvd25BbmltYXRpb24uRmFkZUluVG9wLFxuICAgICAgICAuLi50aGlzLm9wdGlvbnMsXG4gICAgfTtcblxuICAgIHByaXZhdGUgcmVhZG9ubHkgYW5pbWF0aW9uQm90dG9tID0ge1xuICAgICAgICB2YWx1ZTogVHVpRHJvcGRvd25BbmltYXRpb24uRmFkZUluQm90dG9tLFxuICAgICAgICAuLi50aGlzLm9wdGlvbnMsXG4gICAgfTtcblxuICAgIC8qKlxuICAgICAqIElzIHByZXZpb3VzIHBvc2l0aW9uIG9uIHRvcCAodG8gcHJldmVudCBqdW1waW5nIHVwIGFuZCBkb3duIG9uIHNjcm9sbClcbiAgICAgKi9cbiAgICBwcml2YXRlIHByZXZEaXJlY3Rpb25Jc1RvcCA9IGZhbHNlO1xuXG4gICAgQEhvc3RCaW5kaW5nKCdAdHVpRHJvcGRvd25BbmltYXRpb24nKVxuICAgIGRyb3Bkb3duQW5pbWF0aW9uITogVHVpQW5pbWF0aW9uT3B0aW9ucztcblxuICAgIEBWaWV3Q2hpbGQoJ2NvbnRlbnQnLCB7cmVhZDogRWxlbWVudFJlZn0pXG4gICAgcmVhZG9ubHkgY29udGVudEVsZW1lbnRSZWY/OiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PjtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBASW5qZWN0KFR1aURlc3Ryb3lTZXJ2aWNlKVxuICAgICAgICBkZXN0cm95JDogVHVpRGVzdHJveVNlcnZpY2UsXG4gICAgICAgIEBJbmplY3QoTmdab25lKSBuZ1pvbmU6IE5nWm9uZSxcbiAgICAgICAgQEluamVjdChUVUlfRFJPUERPV05fRElSRUNUSVZFKSByZWFkb25seSBkaXJlY3RpdmU6IFR1aURyb3Bkb3duLFxuICAgICAgICBASW5qZWN0KFdJTkRPVykgcHJpdmF0ZSByZWFkb25seSB3aW5kb3dSZWY6IFdpbmRvdyxcbiAgICAgICAgQEluamVjdChFbGVtZW50UmVmKSBwcml2YXRlIHJlYWRvbmx5IGVsZW1lbnRSZWY6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxuICAgICAgICBASW5qZWN0KEFic3RyYWN0VHVpUG9ydGFsSG9zdENvbXBvbmVudClcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBwb3J0YWxIb3N0OiBUdWlEcm9wZG93bkhvc3RDb21wb25lbnQsXG4gICAgICAgIEBJbmplY3QoVFVJX0FOSU1BVElPTl9PUFRJT05TKSBwcml2YXRlIHJlYWRvbmx5IG9wdGlvbnM6IEFuaW1hdGlvbk9wdGlvbnMsXG4gICAgICAgIEBJbmplY3QoQU5JTUFUSU9OX0ZSQU1FKSBhbmltYXRpb25GcmFtZSQ6IE9ic2VydmFibGU8bnVtYmVyPixcbiAgICApIHtcbiAgICAgICAgbWVyZ2UoXG4gICAgICAgICAgICBhbmltYXRpb25GcmFtZSQucGlwZSh0aHJvdHRsZVRpbWUoUE9MTElOR19USU1FKSksXG4gICAgICAgICAgICB0aGlzLmRpcmVjdGl2ZS5yZWZyZXNoJCxcbiAgICAgICAgICAgIGZyb21FdmVudCh0aGlzLndpbmRvd1JlZiwgJ3Jlc2l6ZScpLFxuICAgICAgICApXG4gICAgICAgICAgICAucGlwZSh0dWlab25lZnJlZShuZ1pvbmUpLCB0YWtlVW50aWwoZGVzdHJveSQpKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5jYWxjdWxhdGVQb3NpdGlvbkFuZFNpemUoKTtcbiAgICAgICAgICAgIH0pO1xuICAgIH1cblxuICAgIGdldCBvdmVyc2Nyb2xsKCk6IFR1aU92ZXJzY3JvbGxNb2RlVCB7XG4gICAgICAgIHJldHVybiB0aGlzLmluTW9kYWwgPyAnYWxsJyA6ICdzY3JvbGwnO1xuICAgIH1cblxuICAgIEB0dWlQdXJlXG4gICAgZ2V0Q29udGV4dDxUIGV4dGVuZHMgb2JqZWN0PihcbiAgICAgICAgY29udGV4dD86IFQsXG4gICAgICAgIGFjdGl2ZVpvbmU/OiBUdWlBY3RpdmVab25lRGlyZWN0aXZlLFxuICAgICk6XG4gICAgICAgIHwgKFQgJiB7YWN0aXZlWm9uZT86IFR1aUFjdGl2ZVpvbmVEaXJlY3RpdmV9KVxuICAgICAgICB8IHthY3RpdmVab25lPzogVHVpQWN0aXZlWm9uZURpcmVjdGl2ZX0ge1xuICAgICAgICByZXR1cm4gey4uLmNvbnRleHQsIGFjdGl2ZVpvbmV9O1xuICAgIH1cblxuICAgIG5nQWZ0ZXJWaWV3Q2hlY2tlZCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jYWxjdWxhdGVQb3NpdGlvbkFuZFNpemUoKTtcbiAgICB9XG5cbiAgICBvblRvcEZvY3VzKCk6IHZvaWQge1xuICAgICAgICB0aGlzLm1vdmVGb2N1c091dHNpZGUodHJ1ZSk7XG4gICAgfVxuXG4gICAgb25Cb3R0b21Gb2N1cygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5tb3ZlRm9jdXNPdXRzaWRlKGZhbHNlKTtcbiAgICB9XG5cbiAgICBAdHVpUHVyZVxuICAgIHByaXZhdGUgZ2V0IGluTW9kYWwoKTogYm9vbGVhbiB7XG4gICAgICAgIC8vIEBhd2Z1bCBUT0RPOiBnZXQgcmlkIG9mIGNvbXBvbmVudCB0YWcgbmFtZSBkZXBlbmRlbmN5XG4gICAgICAgIHJldHVybiAhIXRoaXMuZGlyZWN0aXZlLmhvc3QuY2xvc2VzdCgndHVpLWRpYWxvZy1ob3N0Jyk7XG4gICAgfVxuXG4gICAgQHR1aVB1cmVcbiAgICBwcml2YXRlIGdldCBpbk9wdGlvbigpOiBib29sZWFuIHtcbiAgICAgICAgLy8gQGF3ZnVsIFRPRE86IGdldCByaWQgb2YgY29tcG9uZW50IHRhZyBuYW1lIGRlcGVuZGVuY3lcbiAgICAgICAgcmV0dXJuICEhdGhpcy5kaXJlY3RpdmUuaG9zdC5jbG9zZXN0KCdbdHVpT3B0aW9uXScpO1xuICAgIH1cblxuICAgIHByaXZhdGUgY2FsY3VsYXRlUG9zaXRpb25BbmRTaXplKCk6IHZvaWQge1xuICAgICAgICBjb25zdCB7Y2xpZW50UmVjdH0gPSB0aGlzLmRpcmVjdGl2ZTtcbiAgICAgICAgY29uc3Qge3N0eWxlfSA9IHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50O1xuICAgICAgICBjb25zdCBob3N0UmVjdCA9IHRoaXMuZGlyZWN0aXZlLmZpeGVkXG4gICAgICAgICAgICA/IHRoaXMucG9ydGFsSG9zdC5maXhlZFBvc2l0aW9uT2Zmc2V0KClcbiAgICAgICAgICAgIDogdGhpcy5wb3J0YWxIb3N0LmNsaWVudFJlY3Q7XG5cbiAgICAgICAgc3R5bGUucG9zaXRpb24gPSB0aGlzLmRpcmVjdGl2ZS5maXhlZCA/ICdmaXhlZCcgOiAnYWJzb2x1dGUnO1xuXG4gICAgICAgIHRoaXMuY2FsY3VsYXRlVmVydGljYWxQb3NpdGlvbihzdHlsZSwgY2xpZW50UmVjdCwgaG9zdFJlY3QpO1xuICAgICAgICB0aGlzLmNhbGN1bGF0ZUhvcml6b250YWxQb3NpdGlvbihzdHlsZSwgY2xpZW50UmVjdCwgaG9zdFJlY3QpO1xuICAgICAgICB0aGlzLmNhbGN1bGF0ZVdpZHRoKHN0eWxlLCBjbGllbnRSZWN0KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldEZpbmFsQWxpZ24oXG4gICAgICAgIHN0eWxlOiBDU1NTdHlsZURlY2xhcmF0aW9uLFxuICAgICAgICBkaXJlY3RpdmVSZWN0OiBDbGllbnRSZWN0LFxuICAgICk6IFR1aUhvcml6b250YWxEaXJlY3Rpb24ge1xuICAgICAgICBjb25zdCBkcm9wZG93blJlY3QgPSB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICAgICAgY29uc3QgZHJvcGRvd25XaWR0aCA9IHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50Lm9mZnNldFdpZHRoO1xuICAgICAgICBjb25zdCBzY3JlZW5XaWR0aCA9IGdldFNjcmVlbldpZHRoKHRoaXMud2luZG93UmVmLmRvY3VtZW50KTtcbiAgICAgICAgY29uc3QgaXNEcm9wZG93blNpemVIeXBvdGhldGljYWxseUZpdHNWaWV3cG9ydCA9XG4gICAgICAgICAgICBkaXJlY3RpdmVSZWN0LmxlZnQgKyBkcm9wZG93bldpZHRoIDwgc2NyZWVuV2lkdGggfHxcbiAgICAgICAgICAgIGRpcmVjdGl2ZVJlY3QucmlnaHQgLSBkcm9wZG93bldpZHRoID4gMDtcbiAgICAgICAgY29uc3QgaXNEcm9wZG93blNpemVBY3R1YWxseUZpdHNWaWV3cG9ydCA9XG4gICAgICAgICAgICBkcm9wZG93blJlY3QucmlnaHQgPD0gc2NyZWVuV2lkdGggJiYgZHJvcGRvd25SZWN0LmxlZnQgPj0gMDtcbiAgICAgICAgbGV0IGZpbmFsQWxpZ246IFR1aUhvcml6b250YWxEaXJlY3Rpb24gPSB0aGlzLmRpcmVjdGl2ZS5hbGlnbjtcblxuICAgICAgICBzd2l0Y2ggKHRoaXMuZGlyZWN0aXZlLmFsaWduKSB7XG4gICAgICAgICAgICBjYXNlICdsZWZ0JzpcbiAgICAgICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgICAgIGlzRHJvcGRvd25TaXplSHlwb3RoZXRpY2FsbHlGaXRzVmlld3BvcnQgJiZcbiAgICAgICAgICAgICAgICAgICAgZHJvcGRvd25SZWN0LnJpZ2h0ID4gc2NyZWVuV2lkdGhcbiAgICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICAgICAgZmluYWxBbGlnbiA9ICdyaWdodCc7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlICdyaWdodCc6XG4gICAgICAgICAgICAgICAgaWYgKGlzRHJvcGRvd25TaXplSHlwb3RoZXRpY2FsbHlGaXRzVmlld3BvcnQgJiYgZHJvcGRvd25SZWN0LmxlZnQgPCAwKSB7XG4gICAgICAgICAgICAgICAgICAgIGZpbmFsQWxpZ24gPSAnbGVmdCc7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoc3R5bGUucmlnaHQgPT09ICdhdXRvJyAmJiBpc0Ryb3Bkb3duU2l6ZUFjdHVhbGx5Rml0c1ZpZXdwb3J0KSB7XG4gICAgICAgICAgICBmaW5hbEFsaWduID0gJ2xlZnQnO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHN0eWxlLmxlZnQgPT09ICdhdXRvJyAmJiBpc0Ryb3Bkb3duU2l6ZUFjdHVhbGx5Rml0c1ZpZXdwb3J0KSB7XG4gICAgICAgICAgICBmaW5hbEFsaWduID0gJ3JpZ2h0JztcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBmaW5hbEFsaWduO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENhbGN1bGF0ZXMgaG9yaXpvbnRhbCBwb3NpdGlvblxuICAgICAqXG4gICAgICogQHBhcmFtIHN0eWxlIGRyb3Bkb3duQm94IGVsZW1lbnRSZWYgc3R5bGVzIG9iamVjdFxuICAgICAqIEBwYXJhbSBkaXJlY3RpdmVSZWN0IENsaWVudFJlY3Qgb2YgaG9zdGluZyBkaXJlY3RpdmVcbiAgICAgKiBAcGFyYW0gaG9zdFJlY3QgQ2xpZW50UmVjdCBvZiAgcG9ydGFsIGhvc3RcbiAgICAgKi9cbiAgICBwcml2YXRlIGNhbGN1bGF0ZUhvcml6b250YWxQb3NpdGlvbihcbiAgICAgICAgc3R5bGU6IENTU1N0eWxlRGVjbGFyYXRpb24sXG4gICAgICAgIGRpcmVjdGl2ZVJlY3Q6IENsaWVudFJlY3QsXG4gICAgICAgIGhvc3RSZWN0OiBDbGllbnRSZWN0LFxuICAgICk6IHZvaWQge1xuICAgICAgICBjb25zdCBvZmZzZXQgPSB0aGlzLmRpcmVjdGl2ZS5zaWRlZFxuICAgICAgICAgICAgPyB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS53aWR0aCArIERFRkFVTFRfTUFSR0lOXG4gICAgICAgICAgICA6IDA7XG4gICAgICAgIGNvbnN0IGxlZnQgPSBNYXRoLmNlaWwoZGlyZWN0aXZlUmVjdC5sZWZ0IC0gaG9zdFJlY3QubGVmdCAtIG9mZnNldCk7XG4gICAgICAgIGNvbnN0IHJpZ2h0ID0gTWF0aC5mbG9vcihob3N0UmVjdC5yaWdodCAtIGRpcmVjdGl2ZVJlY3QucmlnaHQgLSBvZmZzZXQpO1xuXG4gICAgICAgIHN3aXRjaCAodGhpcy5nZXRGaW5hbEFsaWduKHN0eWxlLCBkaXJlY3RpdmVSZWN0KSkge1xuICAgICAgICAgICAgY2FzZSAnbGVmdCc6XG4gICAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICAgICByaWdodCArIERFRkFVTFRfTUFSR0lOID4gdGhpcy53aW5kb3dSZWYuaW5uZXJXaWR0aCB8fFxuICAgICAgICAgICAgICAgICAgICBpblJhbmdlKGxlZnQgKyBERUZBVUxUX01BUkdJTiwgMCwgdGhpcy53aW5kb3dSZWYuaW5uZXJXaWR0aClcbiAgICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICAgICAgc3R5bGUubGVmdCA9IHB4KGxlZnQpO1xuICAgICAgICAgICAgICAgICAgICBzdHlsZS5yaWdodCA9ICdhdXRvJztcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBzdHlsZS5sZWZ0ID0gJ2F1dG8nO1xuICAgICAgICAgICAgICAgICAgICBzdHlsZS5yaWdodCA9IHB4KHJpZ2h0KTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgJ3JpZ2h0JzpcbiAgICAgICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgICAgIGluUmFuZ2UocmlnaHQgKyBERUZBVUxUX01BUkdJTiwgMCwgdGhpcy53aW5kb3dSZWYuaW5uZXJXaWR0aCkgfHxcbiAgICAgICAgICAgICAgICAgICAgbGVmdCArIERFRkFVTFRfTUFSR0lOID4gdGhpcy53aW5kb3dSZWYuaW5uZXJXaWR0aFxuICAgICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgICAgICBzdHlsZS5sZWZ0ID0gJ2F1dG8nO1xuICAgICAgICAgICAgICAgICAgICBzdHlsZS5yaWdodCA9IHB4KHJpZ2h0KTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBzdHlsZS5sZWZ0ID0gcHgobGVmdCk7XG4gICAgICAgICAgICAgICAgICAgIHN0eWxlLnJpZ2h0ID0gJ2F1dG8nO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ2FsY3VsYXRlcyB2ZXJ0aWNhbCBwb3NpdGlvbiBhbmQgaGVpZ2h0XG4gICAgICpcbiAgICAgKiBAcGFyYW0gc3R5bGUgZHJvcGRvd25Cb3ggZWxlbWVudFJlZiBzdHlsZXMgb2JqZWN0XG4gICAgICogQHBhcmFtIGRpcmVjdGl2ZVJlY3QgQ2xpZW50UmVjdCBvZiBob3N0aW5nIGRpcmVjdGl2ZVxuICAgICAqIEBwYXJhbSBob3N0UmVjdCBDbGllbnRSZWN0IG9mICBwb3J0YWwgaG9zdFxuICAgICAqL1xuICAgIHByaXZhdGUgY2FsY3VsYXRlVmVydGljYWxQb3NpdGlvbihcbiAgICAgICAgc3R5bGU6IENTU1N0eWxlRGVjbGFyYXRpb24sXG4gICAgICAgIGRpcmVjdGl2ZVJlY3Q6IENsaWVudFJlY3QsXG4gICAgICAgIGhvc3RSZWN0OiBDbGllbnRSZWN0LFxuICAgICk6IHZvaWQge1xuICAgICAgICBjb25zdCB3aW5kb3dIZWlnaHQgPSB0aGlzLndpbmRvd1JlZi5pbm5lckhlaWdodDtcbiAgICAgICAgLy8gTWF4aW11bSBoZWlnaHQgb2YgdGhlIGJveFxuICAgICAgICBjb25zdCBib3hIZWlnaHRMaW1pdCA9IE1hdGgubWluKFxuICAgICAgICAgICAgdGhpcy5kaXJlY3RpdmUubWF4SGVpZ2h0LFxuICAgICAgICAgICAgd2luZG93SGVpZ2h0IC0gREVGQVVMVF9NQVJHSU4gKiAyLFxuICAgICAgICApO1xuICAgICAgICBjb25zdCBvZmZzZXQgPSB0aGlzLmRpcmVjdGl2ZS5zaWRlZFxuICAgICAgICAgICAgPyBERUZBVUxUX01BUkdJTiAtIGRpcmVjdGl2ZVJlY3QuaGVpZ2h0XG4gICAgICAgICAgICA6IERFRkFVTFRfTUFSR0lOICogMjtcbiAgICAgICAgY29uc3QgdG9wQXZhaWxhYmxlSGVpZ2h0ID0gZGlyZWN0aXZlUmVjdC50b3AgLSBvZmZzZXQ7XG4gICAgICAgIGNvbnN0IGJvdHRvbUF2YWlsYWJsZUhlaWdodCA9IHdpbmRvd0hlaWdodCAtIGRpcmVjdGl2ZVJlY3QuYm90dG9tIC0gb2Zmc2V0O1xuICAgICAgICBjb25zdCBmaW5hbERpcmVjdGlvbiA9IHRoaXMuZ2V0RmluYWxEaXJlY3Rpb24oZGlyZWN0aXZlUmVjdCk7XG4gICAgICAgIGNvbnN0IG9wdGlvbk9mZnNldCA9IHRoaXMuaW5PcHRpb24gPyBERUZBVUxUX01BUkdJTiAqIDIgOiAwO1xuXG4gICAgICAgIHRoaXMucHJldkRpcmVjdGlvbklzVG9wID0gZmluYWxEaXJlY3Rpb24gPT09ICd0b3AnO1xuXG4gICAgICAgIGlmIChmaW5hbERpcmVjdGlvbiA9PT0gJ3RvcCcpIHtcbiAgICAgICAgICAgIHRoaXMuZHJvcGRvd25BbmltYXRpb24gPSB0aGlzLmFuaW1hdGlvbkJvdHRvbTtcblxuICAgICAgICAgICAgc3R5bGUubWF4SGVpZ2h0ID0gcHgoTWF0aC5taW4oYm94SGVpZ2h0TGltaXQsIHRvcEF2YWlsYWJsZUhlaWdodCkpO1xuICAgICAgICAgICAgc3R5bGUudG9wID0gJ2F1dG8nO1xuICAgICAgICAgICAgc3R5bGUuYm90dG9tID0gcHgoXG4gICAgICAgICAgICAgICAgaG9zdFJlY3QuYm90dG9tIC1cbiAgICAgICAgICAgICAgICAgICAgZGlyZWN0aXZlUmVjdC50b3AgLVxuICAgICAgICAgICAgICAgICAgICBERUZBVUxUX01BUkdJTiArXG4gICAgICAgICAgICAgICAgICAgIG9mZnNldCAtXG4gICAgICAgICAgICAgICAgICAgIG9wdGlvbk9mZnNldCxcbiAgICAgICAgICAgICk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmRyb3Bkb3duQW5pbWF0aW9uID0gdGhpcy5hbmltYXRpb25Ub3A7XG5cbiAgICAgICAgICAgIHN0eWxlLm1heEhlaWdodCA9IHB4KE1hdGgubWluKGJveEhlaWdodExpbWl0LCBib3R0b21BdmFpbGFibGVIZWlnaHQpKTtcbiAgICAgICAgICAgIHN0eWxlLnRvcCA9IHB4KFxuICAgICAgICAgICAgICAgIGRpcmVjdGl2ZVJlY3QuYm90dG9tIC1cbiAgICAgICAgICAgICAgICAgICAgaG9zdFJlY3QudG9wIC1cbiAgICAgICAgICAgICAgICAgICAgREVGQVVMVF9NQVJHSU4gK1xuICAgICAgICAgICAgICAgICAgICBvZmZzZXQgLVxuICAgICAgICAgICAgICAgICAgICBvcHRpb25PZmZzZXQsXG4gICAgICAgICAgICApO1xuICAgICAgICAgICAgc3R5bGUuYm90dG9tID0gJ2F1dG8nO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRGaW5hbERpcmVjdGlvbihkaXJlY3RpdmVSZWN0OiBDbGllbnRSZWN0KTogVHVpVmVydGljYWxEaXJlY3Rpb24gfCBudWxsIHtcbiAgICAgICAgY29uc3Qgd2luZG93SGVpZ2h0ID0gdGhpcy53aW5kb3dSZWYuaW5uZXJIZWlnaHQ7XG4gICAgICAgIGNvbnN0IG9mZnNldCA9IHRoaXMuZGlyZWN0aXZlLnNpZGVkXG4gICAgICAgICAgICA/IERFRkFVTFRfTUFSR0lOIC0gZGlyZWN0aXZlUmVjdC5oZWlnaHRcbiAgICAgICAgICAgIDogREVGQVVMVF9NQVJHSU4gKiAyO1xuXG4gICAgICAgIC8vIE1heGltdW0gc3BhY2UgYXZhaWxhYmxlIG9uIHRvcCBhbmQgb24gdGhlIGJvdHRvbSBpbiB0aGUgdmlld3BvcnRcbiAgICAgICAgY29uc3QgdG9wQXZhaWxhYmxlSGVpZ2h0ID0gZGlyZWN0aXZlUmVjdC50b3AgLSBvZmZzZXQ7XG4gICAgICAgIGNvbnN0IGJvdHRvbUF2YWlsYWJsZUhlaWdodCA9IHdpbmRvd0hlaWdodCAtIGRpcmVjdGl2ZVJlY3QuYm90dG9tIC0gb2Zmc2V0O1xuXG4gICAgICAgIGxldCBmaW5hbERpcmVjdGlvbjogVHVpVmVydGljYWxEaXJlY3Rpb24gfCBudWxsID0gbnVsbDtcblxuICAgICAgICAvLyBHaXZlbiBkaXJlY3Rpb24gaXMgYXBwbGllZCBpZiB3ZSBjYW4gZml0IHRoZSBib3ggaW4gdGhlIGxpbWl0cyB0aGF0IHdheVxuICAgICAgICBzd2l0Y2ggKHRoaXMuZGlyZWN0aXZlLmRpcmVjdGlvbikge1xuICAgICAgICAgICAgY2FzZSAndG9wJzpcbiAgICAgICAgICAgICAgICBpZiAodG9wQXZhaWxhYmxlSGVpZ2h0ID49IHRoaXMuZGlyZWN0aXZlLm1pbkhlaWdodCkge1xuICAgICAgICAgICAgICAgICAgICBmaW5hbERpcmVjdGlvbiA9ICd0b3AnO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSAnYm90dG9tJzpcbiAgICAgICAgICAgICAgICBpZiAoYm90dG9tQXZhaWxhYmxlSGVpZ2h0ID49IHRoaXMuZGlyZWN0aXZlLm1pbkhlaWdodCkge1xuICAgICAgICAgICAgICAgICAgICBmaW5hbERpcmVjdGlvbiA9ICdib3R0b20nO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gTWF4aW11bSBoZWlnaHQgb2YgdGhlIGJveFxuICAgICAgICBjb25zdCBib3hIZWlnaHRMaW1pdCA9IE1hdGgubWluKFxuICAgICAgICAgICAgdGhpcy5kaXJlY3RpdmUubWF4SGVpZ2h0LFxuICAgICAgICAgICAgd2luZG93SGVpZ2h0IC0gREVGQVVMVF9NQVJHSU4gKiAyLFxuICAgICAgICApO1xuXG4gICAgICAgIC8vIENob29zZSBkaXJlY3Rpb24gaWYgZ2l2ZW4gZGlyZWN0aW9uIGRpZCBub3QgZml0XG4gICAgICAgIGlmIChmaW5hbERpcmVjdGlvbiA9PT0gbnVsbCAmJiB0aGlzLmNvbnRlbnRFbGVtZW50UmVmKSB7XG4gICAgICAgICAgICAvLyBCb3ggaGVpZ2h0IGlmIGl0IGZpdHMgd2l0aG91dCBzY3JvbGxcbiAgICAgICAgICAgIGNvbnN0IHZpc3VhbEhlaWdodCA9IE1hdGgubWluKFxuICAgICAgICAgICAgICAgIHRoaXMuY29udGVudEVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5oZWlnaHQgK1xuICAgICAgICAgICAgICAgICAgICAodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQub2Zmc2V0SGVpZ2h0IC1cbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmNsaWVudEhlaWdodCksXG4gICAgICAgICAgICAgICAgYm94SGVpZ2h0TGltaXQsXG4gICAgICAgICAgICApO1xuXG4gICAgICAgICAgICAvLyBJZiB0aGVyZSBpcyBlbm91Z2ggc3BhY2UgdG8gZml0IGJlbG93IHdpdGhvdXQgc2Nyb2xsLFxuICAgICAgICAgICAgLy8gY2hvb3NlICdib3R0b20nLCB1bmxlc3MgaXQgd2FzIHByZXZpb3VzbHkgb24gdGhlIHRvcFxuICAgICAgICAgICAgaWYgKHRoaXMucHJldkRpcmVjdGlvbklzVG9wICYmIHRvcEF2YWlsYWJsZUhlaWdodCA+PSB2aXN1YWxIZWlnaHQpIHtcbiAgICAgICAgICAgICAgICBmaW5hbERpcmVjdGlvbiA9ICd0b3AnO1xuICAgICAgICAgICAgfSBlbHNlIGlmIChib3R0b21BdmFpbGFibGVIZWlnaHQgPj0gdmlzdWFsSGVpZ2h0KSB7XG4gICAgICAgICAgICAgICAgZmluYWxEaXJlY3Rpb24gPSAnYm90dG9tJztcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgLy8gQ29ybmVyIGNhc2Ug4oCUIHNlbGVjdCBkaXJlY3Rpb24gd2l0aCBtb3JlIHNwYWNlXG4gICAgICAgICAgICAgICAgZmluYWxEaXJlY3Rpb24gPVxuICAgICAgICAgICAgICAgICAgICBib3R0b21BdmFpbGFibGVIZWlnaHQgPj0gdG9wQXZhaWxhYmxlSGVpZ2h0ID8gJ2JvdHRvbScgOiAndG9wJztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBmaW5hbERpcmVjdGlvbjtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDYWxjdWxhdGVzIHdpZHRoXG4gICAgICpcbiAgICAgKiBAcGFyYW0gc3R5bGUgZHJvcGRvd25Cb3ggZWxlbWVudFJlZiBzdHlsZXMgb2JqZWN0XG4gICAgICogQHBhcmFtIGRpcmVjdGl2ZVJlY3QgQ2xpZW50UmVjdCBvZiBob3N0aW5nIGRpcmVjdGl2ZVxuICAgICAqL1xuICAgIHByaXZhdGUgY2FsY3VsYXRlV2lkdGgoc3R5bGU6IENTU1N0eWxlRGVjbGFyYXRpb24sIGRpcmVjdGl2ZVJlY3Q6IENsaWVudFJlY3QpOiB2b2lkIHtcbiAgICAgICAgc3R5bGUud2lkdGggPVxuICAgICAgICAgICAgdGhpcy5kaXJlY3RpdmUubGltaXRNaW5XaWR0aCA9PT0gJ2ZpeGVkJyAmJiAhdGhpcy5kaXJlY3RpdmUuc2lkZWRcbiAgICAgICAgICAgICAgICA/IHB4KGRpcmVjdGl2ZVJlY3Qud2lkdGgpXG4gICAgICAgICAgICAgICAgOiAnJztcblxuICAgICAgICBpZiAodGhpcy5kaXJlY3RpdmUubGltaXRNaW5XaWR0aCA9PT0gJ21pbicgJiYgIXRoaXMuZGlyZWN0aXZlLnNpZGVkKSB7XG4gICAgICAgICAgICBzdHlsZS5taW5XaWR0aCA9IHB4KGRpcmVjdGl2ZVJlY3Qud2lkdGgpO1xuICAgICAgICAgICAgc3R5bGUubWF4V2lkdGggPSBweChERUZBVUxUX01BWF9XSURUSCk7XG5cbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHN0eWxlLm1pbldpZHRoID0gJyc7XG4gICAgICAgIHN0eWxlLm1heFdpZHRoID0gJyc7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBtb3ZlRm9jdXNPdXRzaWRlKHByZXZpb3VzOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHtob3N0fSA9IHRoaXMuZGlyZWN0aXZlO1xuICAgICAgICBjb25zdCB7b3duZXJEb2N1bWVudH0gPSBob3N0O1xuICAgICAgICBjb25zdCByb290ID0gb3duZXJEb2N1bWVudCA/IG93bmVyRG9jdW1lbnQuYm9keSA6IGhvc3Q7XG5cbiAgICAgICAgdHVpQXNzZXJ0SXNIVE1MRWxlbWVudChob3N0KTtcblxuICAgICAgICBsZXQgZm9jdXNhYmxlID0gZ2V0Q2xvc2VzdEZvY3VzYWJsZShob3N0LCBwcmV2aW91cywgcm9vdCk7XG5cbiAgICAgICAgd2hpbGUgKGZvY3VzYWJsZSAhPT0gbnVsbCAmJiBob3N0LmNvbnRhaW5zKGZvY3VzYWJsZSkpIHtcbiAgICAgICAgICAgIGZvY3VzYWJsZSA9IGdldENsb3Nlc3RGb2N1c2FibGUoZm9jdXNhYmxlLCBwcmV2aW91cywgcm9vdCk7XG4gICAgICAgIH1cblxuICAgICAgICBmb2N1c2FibGU/LmZvY3VzKCk7XG4gICAgfVxufVxuIl19
|
|
313
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24tYm94LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0B0YWlnYS11aS9jb3JlL2NvbXBvbmVudHMvZHJvcGRvd24tYm94LyIsInNvdXJjZXMiOlsiZHJvcGRvd24tYm94LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQ0EsT0FBTyxFQUNILGdCQUFnQixFQUNoQix1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFVBQVUsRUFDVixXQUFXLEVBQ1gsTUFBTSxFQUNOLE1BQU0sRUFDTixTQUFTLEdBQ1osTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLGVBQWUsRUFBRSxNQUFNLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUM1RCxPQUFPLEVBQ0gsOEJBQThCLEVBQzlCLG1CQUFtQixFQUNuQixPQUFPLEVBQ1AsWUFBWSxFQUNaLEVBQUUsRUFDRixzQkFBc0IsRUFDdEIsc0JBQXNCLEVBQ3RCLGlCQUFpQixFQUNqQix3QkFBd0IsRUFDeEIsa0JBQWtCLEVBQ2xCLE9BQU8sRUFDUCxXQUFXLEdBQ2QsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sMkJBQTJCLENBQUM7QUFDL0QsT0FBTyxFQUFDLGNBQWMsRUFBRSxpQkFBaUIsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBRzNFLE9BQU8sRUFBQyxxQkFBcUIsRUFBRSxzQkFBc0IsRUFBQyxNQUFNLHVCQUF1QixDQUFDO0FBRXBGLE9BQU8sRUFBQyxjQUFjLEVBQUUsbUJBQW1CLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUM3RSxPQUFPLEVBQUMsU0FBUyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDbEQsT0FBTyxFQUFDLFNBQVMsRUFBRSxZQUFZLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUV2RDs7R0FFRztBQUNILG9CQUFvQjtBQUNwQiw4RkFBOEY7QUFDOUYsV0FBVztBQVNYO0lBc0JJLGlD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RUFBRSx1QkFBdUIsQ0FBQyxPQUFPO1lBQ2hELFNBQVMsRUFBRSxDQUFDLGlCQUFpQixDQUFDO1lBQzlCLFVBQVUsRUFBRSxDQUFDLG9CQUFvQixDQUFDOztTQUNyQyxDQUFDO1FBd0JPLFdBQUEsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUE7UUFFekIsV0FBQSxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUE7UUFDZCxXQUFBLE1BQU0sQ0FBQyxzQkFBc0IsQ0FBQyxDQUFBO1FBQzlCLFdBQUEsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFBO1FBQ2QsV0FBQSxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUE7UUFDbEIsV0FBQSxNQUFNLENBQUMsOEJBQThCLENBQUMsQ0FBQTtRQUV0QyxXQUFBLE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQyxDQUFBO1FBQzdCLFdBQUEsTUFBTSxDQUFDLGVBQWUsQ0FBQyxDQUFBO09BaENuQix1QkFBdUIsQ0FzVm5DO0lBQUQsOEJBQUM7Q0FBQSxBQXRWRCxJQXNWQztTQXRWWSx1QkFBdUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0FuaW1hdGlvbk9wdGlvbnN9IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnO1xuaW1wb3J0IHtcbiAgICBBZnRlclZpZXdDaGVja2VkLFxuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENvbXBvbmVudCxcbiAgICBFbGVtZW50UmVmLFxuICAgIEhvc3RCaW5kaW5nLFxuICAgIEluamVjdCxcbiAgICBOZ1pvbmUsXG4gICAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7QU5JTUFUSU9OX0ZSQU1FLCBXSU5ET1d9IGZyb20gJ0BuZy13ZWItYXBpcy9jb21tb24nO1xuaW1wb3J0IHtcbiAgICBBYnN0cmFjdFR1aVBvcnRhbEhvc3RDb21wb25lbnQsXG4gICAgZ2V0Q2xvc2VzdEZvY3VzYWJsZSxcbiAgICBpblJhbmdlLFxuICAgIFBPTExJTkdfVElNRSxcbiAgICBweCxcbiAgICBUdWlBY3RpdmVab25lRGlyZWN0aXZlLFxuICAgIHR1aUFzc2VydElzSFRNTEVsZW1lbnQsXG4gICAgVHVpRGVzdHJveVNlcnZpY2UsXG4gICAgVHVpRHJvcGRvd25Ib3N0Q29tcG9uZW50LFxuICAgIFR1aU92ZXJzY3JvbGxNb2RlVCxcbiAgICB0dWlQdXJlLFxuICAgIHR1aVpvbmVmcmVlLFxufSBmcm9tICdAdGFpZ2EtdWkvY2RrJztcbmltcG9ydCB7dHVpRHJvcGRvd25BbmltYXRpb259IGZyb20gJ0B0YWlnYS11aS9jb3JlL2FuaW1hdGlvbnMnO1xuaW1wb3J0IHtERUZBVUxUX01BUkdJTiwgREVGQVVMVF9NQVhfV0lEVEh9IGZyb20gJ0B0YWlnYS11aS9jb3JlL2NvbnN0YW50cyc7XG5pbXBvcnQge1R1aURyb3Bkb3duQW5pbWF0aW9ufSBmcm9tICdAdGFpZ2EtdWkvY29yZS9lbnVtcyc7XG5pbXBvcnQge1R1aUFuaW1hdGlvbk9wdGlvbnMsIFR1aURyb3Bkb3dufSBmcm9tICdAdGFpZ2EtdWkvY29yZS9pbnRlcmZhY2VzJztcbmltcG9ydCB7VFVJX0FOSU1BVElPTl9PUFRJT05TLCBUVUlfRFJPUERPV05fRElSRUNUSVZFfSBmcm9tICdAdGFpZ2EtdWkvY29yZS90b2tlbnMnO1xuaW1wb3J0IHtUdWlIb3Jpem9udGFsRGlyZWN0aW9uLCBUdWlWZXJ0aWNhbERpcmVjdGlvbn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvdHlwZXMnO1xuaW1wb3J0IHtnZXRTY3JlZW5XaWR0aCwgdHVpR2V0Vmlld3BvcnRXaWR0aH0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvdXRpbHMvZG9tJztcbmltcG9ydCB7ZnJvbUV2ZW50LCBtZXJnZSwgT2JzZXJ2YWJsZX0gZnJvbSAncnhqcyc7XG5pbXBvcnQge3Rha2VVbnRpbCwgdGhyb3R0bGVUaW1lfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbi8qKlxuICogIFRoaXMgY29tcG9uZW50IGlzIHVzZWQgdG8gc2hvdyB0ZW1wbGF0ZSBpbiBhIHBvcnRhbCB1c2luZyBkZWZhdWx0IHN0eWxlIG9mIHdoaXRlIHJvdW5kZWQgYm94IHdpdGggYSBzaGFkb3dcbiAqL1xuLy8gQGJhZCBUT0RPOiBPblB1c2hcbi8vIEFtYmllbnQgdHlwZSBjYW5ub3QgYmUgdXNlZCB3aXRob3V0IGR5bmFtaWMgaHR0cHM6Ly9naXRodWIuY29tL2FuZ3VsYXIvYW5ndWxhci9pc3N1ZXMvMjMzOTVcbi8vIEBkeW5hbWljXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3R1aS1kcm9wZG93bi1ib3gnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9kcm9wZG93bi1ib3gudGVtcGxhdGUuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vZHJvcGRvd24tYm94LnN0eWxlLmxlc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LkRlZmF1bHQsXG4gICAgcHJvdmlkZXJzOiBbVHVpRGVzdHJveVNlcnZpY2VdLFxuICAgIGFuaW1hdGlvbnM6IFt0dWlEcm9wZG93bkFuaW1hdGlvbl0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aURyb3Bkb3duQm94Q29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3Q2hlY2tlZCB7XG4gICAgcHJpdmF0ZSByZWFkb25seSBhbmltYXRpb25Ub3AgPSB7XG4gICAgICAgIHZhbHVlOiBUdWlEcm9wZG93bkFuaW1hdGlvbi5GYWRlSW5Ub3AsXG4gICAgICAgIC4uLnRoaXMub3B0aW9ucyxcbiAgICB9O1xuXG4gICAgcHJpdmF0ZSByZWFkb25seSBhbmltYXRpb25Cb3R0b20gPSB7XG4gICAgICAgIHZhbHVlOiBUdWlEcm9wZG93bkFuaW1hdGlvbi5GYWRlSW5Cb3R0b20sXG4gICAgICAgIC4uLnRoaXMub3B0aW9ucyxcbiAgICB9O1xuXG4gICAgLyoqXG4gICAgICogSXMgcHJldmlvdXMgcG9zaXRpb24gb24gdG9wICh0byBwcmV2ZW50IGp1bXBpbmcgdXAgYW5kIGRvd24gb24gc2Nyb2xsKVxuICAgICAqL1xuICAgIHByaXZhdGUgcHJldkRpcmVjdGlvbklzVG9wID0gZmFsc2U7XG5cbiAgICBASG9zdEJpbmRpbmcoJ0B0dWlEcm9wZG93bkFuaW1hdGlvbicpXG4gICAgZHJvcGRvd25BbmltYXRpb24hOiBUdWlBbmltYXRpb25PcHRpb25zO1xuXG4gICAgQFZpZXdDaGlsZCgnY29udGVudCcsIHtyZWFkOiBFbGVtZW50UmVmfSlcbiAgICByZWFkb25seSBjb250ZW50RWxlbWVudFJlZj86IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+O1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIEBJbmplY3QoVHVpRGVzdHJveVNlcnZpY2UpXG4gICAgICAgIGRlc3Ryb3kkOiBUdWlEZXN0cm95U2VydmljZSxcbiAgICAgICAgQEluamVjdChOZ1pvbmUpIG5nWm9uZTogTmdab25lLFxuICAgICAgICBASW5qZWN0KFRVSV9EUk9QRE9XTl9ESVJFQ1RJVkUpIHJlYWRvbmx5IGRpcmVjdGl2ZTogVHVpRHJvcGRvd24sXG4gICAgICAgIEBJbmplY3QoV0lORE9XKSBwcml2YXRlIHJlYWRvbmx5IHdpbmRvd1JlZjogV2luZG93LFxuICAgICAgICBASW5qZWN0KEVsZW1lbnRSZWYpIHByaXZhdGUgcmVhZG9ubHkgZWxlbWVudFJlZjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4sXG4gICAgICAgIEBJbmplY3QoQWJzdHJhY3RUdWlQb3J0YWxIb3N0Q29tcG9uZW50KVxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IHBvcnRhbEhvc3Q6IFR1aURyb3Bkb3duSG9zdENvbXBvbmVudCxcbiAgICAgICAgQEluamVjdChUVUlfQU5JTUFUSU9OX09QVElPTlMpIHByaXZhdGUgcmVhZG9ubHkgb3B0aW9uczogQW5pbWF0aW9uT3B0aW9ucyxcbiAgICAgICAgQEluamVjdChBTklNQVRJT05fRlJBTUUpIGFuaW1hdGlvbkZyYW1lJDogT2JzZXJ2YWJsZTxudW1iZXI+LFxuICAgICkge1xuICAgICAgICBtZXJnZShcbiAgICAgICAgICAgIGFuaW1hdGlvbkZyYW1lJC5waXBlKHRocm90dGxlVGltZShQT0xMSU5HX1RJTUUpKSxcbiAgICAgICAgICAgIHRoaXMuZGlyZWN0aXZlLnJlZnJlc2gkLFxuICAgICAgICAgICAgZnJvbUV2ZW50KHRoaXMud2luZG93UmVmLCAncmVzaXplJyksXG4gICAgICAgIClcbiAgICAgICAgICAgIC5waXBlKHR1aVpvbmVmcmVlKG5nWm9uZSksIHRha2VVbnRpbChkZXN0cm95JCkpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLmNhbGN1bGF0ZVBvc2l0aW9uQW5kU2l6ZSgpO1xuICAgICAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgZ2V0IG92ZXJzY3JvbGwoKTogVHVpT3ZlcnNjcm9sbE1vZGVUIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaW5Nb2RhbCA/ICdhbGwnIDogJ3Njcm9sbCc7XG4gICAgfVxuXG4gICAgQHR1aVB1cmVcbiAgICBnZXRDb250ZXh0PFQgZXh0ZW5kcyBvYmplY3Q+KFxuICAgICAgICBjb250ZXh0PzogVCxcbiAgICAgICAgYWN0aXZlWm9uZT86IFR1aUFjdGl2ZVpvbmVEaXJlY3RpdmUsXG4gICAgKTpcbiAgICAgICAgfCAoVCAmIHthY3RpdmVab25lPzogVHVpQWN0aXZlWm9uZURpcmVjdGl2ZX0pXG4gICAgICAgIHwge2FjdGl2ZVpvbmU/OiBUdWlBY3RpdmVab25lRGlyZWN0aXZlfSB7XG4gICAgICAgIHJldHVybiB7Li4uY29udGV4dCwgYWN0aXZlWm9uZX07XG4gICAgfVxuXG4gICAgbmdBZnRlclZpZXdDaGVja2VkKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNhbGN1bGF0ZVBvc2l0aW9uQW5kU2l6ZSgpO1xuICAgIH1cblxuICAgIG9uVG9wRm9jdXMoKTogdm9pZCB7XG4gICAgICAgIHRoaXMubW92ZUZvY3VzT3V0c2lkZSh0cnVlKTtcbiAgICB9XG5cbiAgICBvbkJvdHRvbUZvY3VzKCk6IHZvaWQge1xuICAgICAgICB0aGlzLm1vdmVGb2N1c091dHNpZGUoZmFsc2UpO1xuICAgIH1cblxuICAgIEB0dWlQdXJlXG4gICAgcHJpdmF0ZSBnZXQgaW5Nb2RhbCgpOiBib29sZWFuIHtcbiAgICAgICAgLy8gQGF3ZnVsIFRPRE86IGdldCByaWQgb2YgY29tcG9uZW50IHRhZyBuYW1lIGRlcGVuZGVuY3lcbiAgICAgICAgcmV0dXJuICEhdGhpcy5kaXJlY3RpdmUuaG9zdC5jbG9zZXN0KCd0dWktZGlhbG9nLWhvc3QnKTtcbiAgICB9XG5cbiAgICBAdHVpUHVyZVxuICAgIHByaXZhdGUgZ2V0IGluT3B0aW9uKCk6IGJvb2xlYW4ge1xuICAgICAgICAvLyBAYXdmdWwgVE9ETzogZ2V0IHJpZCBvZiBjb21wb25lbnQgdGFnIG5hbWUgZGVwZW5kZW5jeVxuICAgICAgICByZXR1cm4gISF0aGlzLmRpcmVjdGl2ZS5ob3N0LmNsb3Nlc3QoJ1t0dWlPcHRpb25dJyk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjYWxjdWxhdGVQb3NpdGlvbkFuZFNpemUoKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHtjbGllbnRSZWN0fSA9IHRoaXMuZGlyZWN0aXZlO1xuICAgICAgICBjb25zdCB7c3R5bGV9ID0gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQ7XG4gICAgICAgIGNvbnN0IGhvc3RSZWN0ID0gdGhpcy5kaXJlY3RpdmUuZml4ZWRcbiAgICAgICAgICAgID8gdGhpcy5wb3J0YWxIb3N0LmZpeGVkUG9zaXRpb25PZmZzZXQoKVxuICAgICAgICAgICAgOiB0aGlzLnBvcnRhbEhvc3QuY2xpZW50UmVjdDtcblxuICAgICAgICBzdHlsZS5wb3NpdGlvbiA9IHRoaXMuZGlyZWN0aXZlLmZpeGVkID8gJ2ZpeGVkJyA6ICdhYnNvbHV0ZSc7XG5cbiAgICAgICAgdGhpcy5jYWxjdWxhdGVWZXJ0aWNhbFBvc2l0aW9uKHN0eWxlLCBjbGllbnRSZWN0LCBob3N0UmVjdCk7XG4gICAgICAgIHRoaXMuY2FsY3VsYXRlSG9yaXpvbnRhbFBvc2l0aW9uKHN0eWxlLCBjbGllbnRSZWN0LCBob3N0UmVjdCk7XG4gICAgICAgIHRoaXMuY2FsY3VsYXRlV2lkdGgoc3R5bGUsIGNsaWVudFJlY3QpO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0RmluYWxBbGlnbihcbiAgICAgICAgc3R5bGU6IENTU1N0eWxlRGVjbGFyYXRpb24sXG4gICAgICAgIGRpcmVjdGl2ZVJlY3Q6IENsaWVudFJlY3QsXG4gICAgKTogVHVpSG9yaXpvbnRhbERpcmVjdGlvbiB7XG4gICAgICAgIGNvbnN0IGRyb3Bkb3duUmVjdCA9IHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuICAgICAgICBjb25zdCBkcm9wZG93bldpZHRoID0gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQub2Zmc2V0V2lkdGg7XG4gICAgICAgIGNvbnN0IHNjcmVlbldpZHRoID0gZ2V0U2NyZWVuV2lkdGgodGhpcy53aW5kb3dSZWYuZG9jdW1lbnQpO1xuICAgICAgICBjb25zdCBpc0Ryb3Bkb3duU2l6ZUh5cG90aGV0aWNhbGx5Rml0c1ZpZXdwb3J0ID1cbiAgICAgICAgICAgIGRpcmVjdGl2ZVJlY3QubGVmdCArIGRyb3Bkb3duV2lkdGggPCBzY3JlZW5XaWR0aCB8fFxuICAgICAgICAgICAgZGlyZWN0aXZlUmVjdC5yaWdodCAtIGRyb3Bkb3duV2lkdGggPiAwO1xuICAgICAgICBjb25zdCBpc0Ryb3Bkb3duU2l6ZUFjdHVhbGx5Rml0c1ZpZXdwb3J0ID1cbiAgICAgICAgICAgIGRyb3Bkb3duUmVjdC5yaWdodCA8PSBzY3JlZW5XaWR0aCAmJiBkcm9wZG93blJlY3QubGVmdCA+PSAwO1xuICAgICAgICBsZXQgZmluYWxBbGlnbjogVHVpSG9yaXpvbnRhbERpcmVjdGlvbiA9IHRoaXMuZGlyZWN0aXZlLmFsaWduO1xuXG4gICAgICAgIHN3aXRjaCAodGhpcy5kaXJlY3RpdmUuYWxpZ24pIHtcbiAgICAgICAgICAgIGNhc2UgJ2xlZnQnOlxuICAgICAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgICAgICAgaXNEcm9wZG93blNpemVIeXBvdGhldGljYWxseUZpdHNWaWV3cG9ydCAmJlxuICAgICAgICAgICAgICAgICAgICBkcm9wZG93blJlY3QucmlnaHQgPiBzY3JlZW5XaWR0aFxuICAgICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgICAgICBmaW5hbEFsaWduID0gJ3JpZ2h0JztcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgJ3JpZ2h0JzpcbiAgICAgICAgICAgICAgICBpZiAoaXNEcm9wZG93blNpemVIeXBvdGhldGljYWxseUZpdHNWaWV3cG9ydCAmJiBkcm9wZG93blJlY3QubGVmdCA8IDApIHtcbiAgICAgICAgICAgICAgICAgICAgZmluYWxBbGlnbiA9ICdsZWZ0JztcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChzdHlsZS5yaWdodCA9PT0gJ2F1dG8nICYmIGlzRHJvcGRvd25TaXplQWN0dWFsbHlGaXRzVmlld3BvcnQpIHtcbiAgICAgICAgICAgIGZpbmFsQWxpZ24gPSAnbGVmdCc7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoc3R5bGUubGVmdCA9PT0gJ2F1dG8nICYmIGlzRHJvcGRvd25TaXplQWN0dWFsbHlGaXRzVmlld3BvcnQpIHtcbiAgICAgICAgICAgIGZpbmFsQWxpZ24gPSAncmlnaHQnO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGZpbmFsQWxpZ247XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ2FsY3VsYXRlcyBob3Jpem9udGFsIHBvc2l0aW9uXG4gICAgICpcbiAgICAgKiBAcGFyYW0gc3R5bGUgZHJvcGRvd25Cb3ggZWxlbWVudFJlZiBzdHlsZXMgb2JqZWN0XG4gICAgICogQHBhcmFtIGRpcmVjdGl2ZVJlY3QgQ2xpZW50UmVjdCBvZiBob3N0aW5nIGRpcmVjdGl2ZVxuICAgICAqIEBwYXJhbSBob3N0UmVjdCBDbGllbnRSZWN0IG9mICBwb3J0YWwgaG9zdFxuICAgICAqL1xuICAgIHByaXZhdGUgY2FsY3VsYXRlSG9yaXpvbnRhbFBvc2l0aW9uKFxuICAgICAgICBzdHlsZTogQ1NTU3R5bGVEZWNsYXJhdGlvbixcbiAgICAgICAgZGlyZWN0aXZlUmVjdDogQ2xpZW50UmVjdCxcbiAgICAgICAgaG9zdFJlY3Q6IENsaWVudFJlY3QsXG4gICAgKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IG9mZnNldCA9IHRoaXMuZGlyZWN0aXZlLnNpZGVkXG4gICAgICAgICAgICA/IHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLndpZHRoICsgREVGQVVMVF9NQVJHSU5cbiAgICAgICAgICAgIDogMDtcbiAgICAgICAgY29uc3QgbGVmdCA9IE1hdGguY2VpbChkaXJlY3RpdmVSZWN0LmxlZnQgLSBob3N0UmVjdC5sZWZ0IC0gb2Zmc2V0KTtcbiAgICAgICAgY29uc3QgcmlnaHQgPSBNYXRoLmZsb29yKGhvc3RSZWN0LnJpZ2h0IC0gZGlyZWN0aXZlUmVjdC5yaWdodCAtIG9mZnNldCk7XG4gICAgICAgIGNvbnN0IHZpZXdwb3J0V2lkdGggPSB0dWlHZXRWaWV3cG9ydFdpZHRoKHRoaXMud2luZG93UmVmKTtcblxuICAgICAgICBzd2l0Y2ggKHRoaXMuZ2V0RmluYWxBbGlnbihzdHlsZSwgZGlyZWN0aXZlUmVjdCkpIHtcbiAgICAgICAgICAgIGNhc2UgJ2xlZnQnOlxuICAgICAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQgKyBERUZBVUxUX01BUkdJTiA+IHZpZXdwb3J0V2lkdGggfHxcbiAgICAgICAgICAgICAgICAgICAgaW5SYW5nZShsZWZ0ICsgREVGQVVMVF9NQVJHSU4sIDAsIHZpZXdwb3J0V2lkdGgpXG4gICAgICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgICAgIHN0eWxlLmxlZnQgPSBweChsZWZ0KTtcbiAgICAgICAgICAgICAgICAgICAgc3R5bGUucmlnaHQgPSAnYXV0byc7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgc3R5bGUubGVmdCA9ICdhdXRvJztcbiAgICAgICAgICAgICAgICAgICAgc3R5bGUucmlnaHQgPSBweChyaWdodCk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlICdyaWdodCc6XG4gICAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICAgICBpblJhbmdlKHJpZ2h0ICsgREVGQVVMVF9NQVJHSU4sIDAsIHZpZXdwb3J0V2lkdGgpIHx8XG4gICAgICAgICAgICAgICAgICAgIGxlZnQgKyBERUZBVUxUX01BUkdJTiA+IHZpZXdwb3J0V2lkdGhcbiAgICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICAgICAgc3R5bGUubGVmdCA9ICdhdXRvJztcbiAgICAgICAgICAgICAgICAgICAgc3R5bGUucmlnaHQgPSBweChyaWdodCk7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgc3R5bGUubGVmdCA9IHB4KGxlZnQpO1xuICAgICAgICAgICAgICAgICAgICBzdHlsZS5yaWdodCA9ICdhdXRvJztcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENhbGN1bGF0ZXMgdmVydGljYWwgcG9zaXRpb24gYW5kIGhlaWdodFxuICAgICAqXG4gICAgICogQHBhcmFtIHN0eWxlIGRyb3Bkb3duQm94IGVsZW1lbnRSZWYgc3R5bGVzIG9iamVjdFxuICAgICAqIEBwYXJhbSBkaXJlY3RpdmVSZWN0IENsaWVudFJlY3Qgb2YgaG9zdGluZyBkaXJlY3RpdmVcbiAgICAgKiBAcGFyYW0gaG9zdFJlY3QgQ2xpZW50UmVjdCBvZiAgcG9ydGFsIGhvc3RcbiAgICAgKi9cbiAgICBwcml2YXRlIGNhbGN1bGF0ZVZlcnRpY2FsUG9zaXRpb24oXG4gICAgICAgIHN0eWxlOiBDU1NTdHlsZURlY2xhcmF0aW9uLFxuICAgICAgICBkaXJlY3RpdmVSZWN0OiBDbGllbnRSZWN0LFxuICAgICAgICBob3N0UmVjdDogQ2xpZW50UmVjdCxcbiAgICApOiB2b2lkIHtcbiAgICAgICAgY29uc3Qgd2luZG93SGVpZ2h0ID0gdGhpcy53aW5kb3dSZWYuaW5uZXJIZWlnaHQ7XG4gICAgICAgIC8vIE1heGltdW0gaGVpZ2h0IG9mIHRoZSBib3hcbiAgICAgICAgY29uc3QgYm94SGVpZ2h0TGltaXQgPSBNYXRoLm1pbihcbiAgICAgICAgICAgIHRoaXMuZGlyZWN0aXZlLm1heEhlaWdodCxcbiAgICAgICAgICAgIHdpbmRvd0hlaWdodCAtIERFRkFVTFRfTUFSR0lOICogMixcbiAgICAgICAgKTtcbiAgICAgICAgY29uc3Qgb2Zmc2V0ID0gdGhpcy5kaXJlY3RpdmUuc2lkZWRcbiAgICAgICAgICAgID8gREVGQVVMVF9NQVJHSU4gLSBkaXJlY3RpdmVSZWN0LmhlaWdodFxuICAgICAgICAgICAgOiBERUZBVUxUX01BUkdJTiAqIDI7XG4gICAgICAgIGNvbnN0IHRvcEF2YWlsYWJsZUhlaWdodCA9IGRpcmVjdGl2ZVJlY3QudG9wIC0gb2Zmc2V0O1xuICAgICAgICBjb25zdCBib3R0b21BdmFpbGFibGVIZWlnaHQgPSB3aW5kb3dIZWlnaHQgLSBkaXJlY3RpdmVSZWN0LmJvdHRvbSAtIG9mZnNldDtcbiAgICAgICAgY29uc3QgZmluYWxEaXJlY3Rpb24gPSB0aGlzLmdldEZpbmFsRGlyZWN0aW9uKGRpcmVjdGl2ZVJlY3QpO1xuICAgICAgICBjb25zdCBvcHRpb25PZmZzZXQgPSB0aGlzLmluT3B0aW9uID8gREVGQVVMVF9NQVJHSU4gKiAyIDogMDtcblxuICAgICAgICB0aGlzLnByZXZEaXJlY3Rpb25Jc1RvcCA9IGZpbmFsRGlyZWN0aW9uID09PSAndG9wJztcblxuICAgICAgICBpZiAoZmluYWxEaXJlY3Rpb24gPT09ICd0b3AnKSB7XG4gICAgICAgICAgICB0aGlzLmRyb3Bkb3duQW5pbWF0aW9uID0gdGhpcy5hbmltYXRpb25Cb3R0b207XG5cbiAgICAgICAgICAgIHN0eWxlLm1heEhlaWdodCA9IHB4KE1hdGgubWluKGJveEhlaWdodExpbWl0LCB0b3BBdmFpbGFibGVIZWlnaHQpKTtcbiAgICAgICAgICAgIHN0eWxlLnRvcCA9ICdhdXRvJztcbiAgICAgICAgICAgIHN0eWxlLmJvdHRvbSA9IHB4KFxuICAgICAgICAgICAgICAgIGhvc3RSZWN0LmJvdHRvbSAtXG4gICAgICAgICAgICAgICAgICAgIGRpcmVjdGl2ZVJlY3QudG9wIC1cbiAgICAgICAgICAgICAgICAgICAgREVGQVVMVF9NQVJHSU4gK1xuICAgICAgICAgICAgICAgICAgICBvZmZzZXQgLVxuICAgICAgICAgICAgICAgICAgICBvcHRpb25PZmZzZXQsXG4gICAgICAgICAgICApO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5kcm9wZG93bkFuaW1hdGlvbiA9IHRoaXMuYW5pbWF0aW9uVG9wO1xuXG4gICAgICAgICAgICBzdHlsZS5tYXhIZWlnaHQgPSBweChNYXRoLm1pbihib3hIZWlnaHRMaW1pdCwgYm90dG9tQXZhaWxhYmxlSGVpZ2h0KSk7XG4gICAgICAgICAgICBzdHlsZS50b3AgPSBweChcbiAgICAgICAgICAgICAgICBkaXJlY3RpdmVSZWN0LmJvdHRvbSAtXG4gICAgICAgICAgICAgICAgICAgIGhvc3RSZWN0LnRvcCAtXG4gICAgICAgICAgICAgICAgICAgIERFRkFVTFRfTUFSR0lOICtcbiAgICAgICAgICAgICAgICAgICAgb2Zmc2V0IC1cbiAgICAgICAgICAgICAgICAgICAgb3B0aW9uT2Zmc2V0LFxuICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIHN0eWxlLmJvdHRvbSA9ICdhdXRvJztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0RmluYWxEaXJlY3Rpb24oZGlyZWN0aXZlUmVjdDogQ2xpZW50UmVjdCk6IFR1aVZlcnRpY2FsRGlyZWN0aW9uIHwgbnVsbCB7XG4gICAgICAgIGNvbnN0IHdpbmRvd0hlaWdodCA9IHRoaXMud2luZG93UmVmLmlubmVySGVpZ2h0O1xuICAgICAgICBjb25zdCBvZmZzZXQgPSB0aGlzLmRpcmVjdGl2ZS5zaWRlZFxuICAgICAgICAgICAgPyBERUZBVUxUX01BUkdJTiAtIGRpcmVjdGl2ZVJlY3QuaGVpZ2h0XG4gICAgICAgICAgICA6IERFRkFVTFRfTUFSR0lOICogMjtcblxuICAgICAgICAvLyBNYXhpbXVtIHNwYWNlIGF2YWlsYWJsZSBvbiB0b3AgYW5kIG9uIHRoZSBib3R0b20gaW4gdGhlIHZpZXdwb3J0XG4gICAgICAgIGNvbnN0IHRvcEF2YWlsYWJsZUhlaWdodCA9IGRpcmVjdGl2ZVJlY3QudG9wIC0gb2Zmc2V0O1xuICAgICAgICBjb25zdCBib3R0b21BdmFpbGFibGVIZWlnaHQgPSB3aW5kb3dIZWlnaHQgLSBkaXJlY3RpdmVSZWN0LmJvdHRvbSAtIG9mZnNldDtcblxuICAgICAgICBsZXQgZmluYWxEaXJlY3Rpb246IFR1aVZlcnRpY2FsRGlyZWN0aW9uIHwgbnVsbCA9IG51bGw7XG5cbiAgICAgICAgLy8gR2l2ZW4gZGlyZWN0aW9uIGlzIGFwcGxpZWQgaWYgd2UgY2FuIGZpdCB0aGUgYm94IGluIHRoZSBsaW1pdHMgdGhhdCB3YXlcbiAgICAgICAgc3dpdGNoICh0aGlzLmRpcmVjdGl2ZS5kaXJlY3Rpb24pIHtcbiAgICAgICAgICAgIGNhc2UgJ3RvcCc6XG4gICAgICAgICAgICAgICAgaWYgKHRvcEF2YWlsYWJsZUhlaWdodCA+PSB0aGlzLmRpcmVjdGl2ZS5taW5IZWlnaHQpIHtcbiAgICAgICAgICAgICAgICAgICAgZmluYWxEaXJlY3Rpb24gPSAndG9wJztcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgJ2JvdHRvbSc6XG4gICAgICAgICAgICAgICAgaWYgKGJvdHRvbUF2YWlsYWJsZUhlaWdodCA+PSB0aGlzLmRpcmVjdGl2ZS5taW5IZWlnaHQpIHtcbiAgICAgICAgICAgICAgICAgICAgZmluYWxEaXJlY3Rpb24gPSAnYm90dG9tJztcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIE1heGltdW0gaGVpZ2h0IG9mIHRoZSBib3hcbiAgICAgICAgY29uc3QgYm94SGVpZ2h0TGltaXQgPSBNYXRoLm1pbihcbiAgICAgICAgICAgIHRoaXMuZGlyZWN0aXZlLm1heEhlaWdodCxcbiAgICAgICAgICAgIHdpbmRvd0hlaWdodCAtIERFRkFVTFRfTUFSR0lOICogMixcbiAgICAgICAgKTtcblxuICAgICAgICAvLyBDaG9vc2UgZGlyZWN0aW9uIGlmIGdpdmVuIGRpcmVjdGlvbiBkaWQgbm90IGZpdFxuICAgICAgICBpZiAoZmluYWxEaXJlY3Rpb24gPT09IG51bGwgJiYgdGhpcy5jb250ZW50RWxlbWVudFJlZikge1xuICAgICAgICAgICAgLy8gQm94IGhlaWdodCBpZiBpdCBmaXRzIHdpdGhvdXQgc2Nyb2xsXG4gICAgICAgICAgICBjb25zdCB2aXN1YWxIZWlnaHQgPSBNYXRoLm1pbihcbiAgICAgICAgICAgICAgICB0aGlzLmNvbnRlbnRFbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkuaGVpZ2h0ICtcbiAgICAgICAgICAgICAgICAgICAgKHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50Lm9mZnNldEhlaWdodCAtXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5jbGllbnRIZWlnaHQpLFxuICAgICAgICAgICAgICAgIGJveEhlaWdodExpbWl0LFxuICAgICAgICAgICAgKTtcblxuICAgICAgICAgICAgLy8gSWYgdGhlcmUgaXMgZW5vdWdoIHNwYWNlIHRvIGZpdCBiZWxvdyB3aXRob3V0IHNjcm9sbCxcbiAgICAgICAgICAgIC8vIGNob29zZSAnYm90dG9tJywgdW5sZXNzIGl0IHdhcyBwcmV2aW91c2x5IG9uIHRoZSB0b3BcbiAgICAgICAgICAgIGlmICh0aGlzLnByZXZEaXJlY3Rpb25Jc1RvcCAmJiB0b3BBdmFpbGFibGVIZWlnaHQgPj0gdmlzdWFsSGVpZ2h0KSB7XG4gICAgICAgICAgICAgICAgZmluYWxEaXJlY3Rpb24gPSAndG9wJztcbiAgICAgICAgICAgIH0gZWxzZSBpZiAoYm90dG9tQXZhaWxhYmxlSGVpZ2h0ID49IHZpc3VhbEhlaWdodCkge1xuICAgICAgICAgICAgICAgIGZpbmFsRGlyZWN0aW9uID0gJ2JvdHRvbSc7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIC8vIENvcm5lciBjYXNlIOKAlCBzZWxlY3QgZGlyZWN0aW9uIHdpdGggbW9yZSBzcGFjZVxuICAgICAgICAgICAgICAgIGZpbmFsRGlyZWN0aW9uID1cbiAgICAgICAgICAgICAgICAgICAgYm90dG9tQXZhaWxhYmxlSGVpZ2h0ID49IHRvcEF2YWlsYWJsZUhlaWdodCA/ICdib3R0b20nIDogJ3RvcCc7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gZmluYWxEaXJlY3Rpb247XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ2FsY3VsYXRlcyB3aWR0aFxuICAgICAqXG4gICAgICogQHBhcmFtIHN0eWxlIGRyb3Bkb3duQm94IGVsZW1lbnRSZWYgc3R5bGVzIG9iamVjdFxuICAgICAqIEBwYXJhbSBkaXJlY3RpdmVSZWN0IENsaWVudFJlY3Qgb2YgaG9zdGluZyBkaXJlY3RpdmVcbiAgICAgKi9cbiAgICBwcml2YXRlIGNhbGN1bGF0ZVdpZHRoKHN0eWxlOiBDU1NTdHlsZURlY2xhcmF0aW9uLCBkaXJlY3RpdmVSZWN0OiBDbGllbnRSZWN0KTogdm9pZCB7XG4gICAgICAgIHN0eWxlLndpZHRoID1cbiAgICAgICAgICAgIHRoaXMuZGlyZWN0aXZlLmxpbWl0TWluV2lkdGggPT09ICdmaXhlZCcgJiYgIXRoaXMuZGlyZWN0aXZlLnNpZGVkXG4gICAgICAgICAgICAgICAgPyBweChkaXJlY3RpdmVSZWN0LndpZHRoKVxuICAgICAgICAgICAgICAgIDogJyc7XG5cbiAgICAgICAgaWYgKHRoaXMuZGlyZWN0aXZlLmxpbWl0TWluV2lkdGggPT09ICdtaW4nICYmICF0aGlzLmRpcmVjdGl2ZS5zaWRlZCkge1xuICAgICAgICAgICAgc3R5bGUubWluV2lkdGggPSBweChkaXJlY3RpdmVSZWN0LndpZHRoKTtcbiAgICAgICAgICAgIHN0eWxlLm1heFdpZHRoID0gcHgoREVGQVVMVF9NQVhfV0lEVEgpO1xuXG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBzdHlsZS5taW5XaWR0aCA9ICcnO1xuICAgICAgICBzdHlsZS5tYXhXaWR0aCA9ICcnO1xuICAgIH1cblxuICAgIHByaXZhdGUgbW92ZUZvY3VzT3V0c2lkZShwcmV2aW91czogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICBjb25zdCB7aG9zdH0gPSB0aGlzLmRpcmVjdGl2ZTtcbiAgICAgICAgY29uc3Qge293bmVyRG9jdW1lbnR9ID0gaG9zdDtcbiAgICAgICAgY29uc3Qgcm9vdCA9IG93bmVyRG9jdW1lbnQgPyBvd25lckRvY3VtZW50LmJvZHkgOiBob3N0O1xuXG4gICAgICAgIHR1aUFzc2VydElzSFRNTEVsZW1lbnQoaG9zdCk7XG5cbiAgICAgICAgbGV0IGZvY3VzYWJsZSA9IGdldENsb3Nlc3RGb2N1c2FibGUoaG9zdCwgcHJldmlvdXMsIHJvb3QpO1xuXG4gICAgICAgIHdoaWxlIChmb2N1c2FibGUgIT09IG51bGwgJiYgaG9zdC5jb250YWlucyhmb2N1c2FibGUpKSB7XG4gICAgICAgICAgICBmb2N1c2FibGUgPSBnZXRDbG9zZXN0Rm9jdXNhYmxlKGZvY3VzYWJsZSwgcHJldmlvdXMsIHJvb3QpO1xuICAgICAgICB9XG5cbiAgICAgICAgZm9jdXNhYmxlPy5mb2N1cygpO1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -5,6 +5,7 @@ import { px, TuiDestroyService, tuiPure, tuiZonefree, } from '@taiga-ui/cdk';
|
|
|
5
5
|
import { tuiFadeIn } from '@taiga-ui/core/animations';
|
|
6
6
|
import { TuiPointerHintDirective } from '@taiga-ui/core/directives/pointer-hint';
|
|
7
7
|
import { TUI_ANIMATION_OPTIONS, TUI_MEDIA } from '@taiga-ui/core/tokens';
|
|
8
|
+
import { tuiIsMobile } from '@taiga-ui/core/utils';
|
|
8
9
|
import { POLYMORPHEUS_CONTEXT } from '@tinkoff/ng-polymorpheus';
|
|
9
10
|
import { Observable } from 'rxjs';
|
|
10
11
|
import { takeUntil } from 'rxjs/operators';
|
|
@@ -76,7 +77,7 @@ var TuiHintBoxComponent = /** @class */ (function () {
|
|
|
76
77
|
});
|
|
77
78
|
Object.defineProperty(TuiHintBoxComponent.prototype, "isMobile", {
|
|
78
79
|
get: function () {
|
|
79
|
-
return this.windowRef
|
|
80
|
+
return tuiIsMobile(this.windowRef, this.media);
|
|
80
81
|
},
|
|
81
82
|
enumerable: true,
|
|
82
83
|
configurable: true
|
|
@@ -269,4 +270,4 @@ var TuiHintBoxComponent = /** @class */ (function () {
|
|
|
269
270
|
return TuiHintBoxComponent;
|
|
270
271
|
}());
|
|
271
272
|
export { TuiHintBoxComponent };
|
|
272
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGludC1ib3guY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHRhaWdhLXVpL2NvcmUvY29tcG9uZW50cy9oaW50cy1ob3N0LyIsInNvdXJjZXMiOlsiaGludC1ib3gvaGludC1ib3guY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFDQSxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsVUFBVSxFQUNWLFdBQVcsRUFDWCxNQUFNLEVBQ04sTUFBTSxFQUNOLFNBQVMsR0FDWixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsZUFBZSxFQUFFLE1BQU0sRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQzVELE9BQU8sRUFDSCxFQUFFLEVBRUYsaUJBQWlCLEVBQ2pCLE9BQU8sRUFDUCxXQUFXLEdBQ2QsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBQ3BELE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLHdDQUF3QyxDQUFDO0FBRS9FLE9BQU8sRUFBQyxxQkFBcUIsRUFBRSxTQUFTLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUV2RSxPQUFPLEVBQUMsb0JBQW9CLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUM5RCxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBQ2hDLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUV6QyxPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUU5RCxJQUFNLEtBQUssR0FBRyxDQUFDLENBQUM7QUFDaEIsSUFBTSxZQUFZLEdBQUcsQ0FBQyxDQUFDO0FBQ3ZCLElBQU0sWUFBWSxHQUFHLEVBQUUsQ0FBQztBQUN4QixJQUFNLFdBQVcsR0FBRyxFQUFFLENBQUM7QUFDdkIsSUFBTSxVQUFVLEdBQUcsQ0FBQyxDQUFDO0FBQ3JCLElBQU0sWUFBWSxH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Q0FBQzs0REFHakM7SUFHRDtRQURDLFdBQVcsQ0FBQyxnQkFBZ0IsQ0FBQzttREFHN0I7SUF0Q1EsbUJBQW1CO1FBUi9CLFNBQVMsQ0FBQztZQUNQLFFBQVEsRUFBRSxvQkFBb0I7WUFDOUIscVlBQXVDO1lBRXZDLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO1lBQy9DLFNBQVMsRUFBRSxDQUFDLGlCQUFpQixDQUFDO1lBQzlCLFVBQVUsRUFBRSxDQUFDLFNBQVMsQ0FBQzs7U0FDMUIsQ0FBQztRQVNPLFdBQUEsTUFBTSxDQUFDLGVBQWUsQ0FBQyxDQUFBO1FBQ3ZCLFdBQUEsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUE7UUFDekIsV0FBQSxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUE7UUFDZCxXQUFBLE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQyxDQUFBO1FBQzdCLFdBQUEsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFBO1FBQ2xCLFdBQUEsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFBO1FBQ2QsV0FBQSxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUE7UUFDakIsV0FBQSxNQUFNLENBQUMsVUFBVSxDQUFDLGNBQU0sT0FBQSxxQkFBcUIsRUFBckIsQ0FBcUIsQ0FBQyxDQUFDLENBQUE7UUFFL0MsV0FBQSxNQUFNLENBQUMsb0JBQW9CLENBQUMsQ0FBQTtPQWpCeEIsbUJBQW1CLENBeU4vQjtJQUFELDBCQUFDO0NBQUEsQUF6TkQsSUF5TkM7U0F6TlksbUJBQW1CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtBbmltYXRpb25PcHRpb25zfSBmcm9tICdAYW5ndWxhci9hbmltYXRpb25zJztcbmltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ29tcG9uZW50LFxuICAgIEVsZW1lbnRSZWYsXG4gICAgZm9yd2FyZFJlZixcbiAgICBIb3N0QmluZGluZyxcbiAgICBJbmplY3QsXG4gICAgTmdab25lLFxuICAgIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0FOSU1BVElPTl9GUkFNRSwgV0lORE9XfSBmcm9tICdAbmctd2ViLWFwaXMvY29tbW9uJztcbmltcG9ydCB7XG4gICAgcHgsXG4gICAgVHVpQ29udGV4dFdpdGhJbXBsaWNpdCxcbiAgICBUdWlEZXN0cm95U2VydmljZSxcbiAgICB0dWlQdXJlLFxuICAgIHR1aVpvbmVmcmVlLFxufSBmcm9tICdAdGFpZ2EtdWkvY2RrJztcbmltcG9ydCB7QWJzdHJhY3RUdWlIaW50fSBmcm9tICdAdGFpZ2EtdWkvY29yZS9hYnN0cmFjdCc7XG5pbXBvcnQge3R1aUZhZGVJbn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvYW5pbWF0aW9ucyc7XG5pbXBvcnQge1R1aVBvaW50ZXJIaW50RGlyZWN0aXZlfSBmcm9tICdAdGFpZ2EtdWkvY29yZS9kaXJlY3RpdmVzL3BvaW50ZXItaGludCc7XG5pbXBvcnQge1R1aU1lZGlhfSBmcm9tICdAdGFpZ2EtdWkvY29yZS9pbnRlcmZhY2VzJztcbmltcG9ydCB7VFVJX0FOSU1BVElPTl9PUFRJT05TLCBUVUlfTUVESUF9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3Rva2Vucyc7XG5pbXBvcnQge1R1aURpcmVjdGlvbiwgVHVpSGludE1vZGVUfSBmcm9tICdAdGFpZ2EtdWkvY29yZS90eXBlcyc7XG5pbXBvcnQge1BPTFlNT1JQSEVVU19DT05URVhUfSBmcm9tICdAdGlua29mZi9uZy1wb2x5bW9ycGhldXMnO1xuaW1wb3J0IHtPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcbmltcG9ydCB7dGFrZVVudGlsfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7VHVpSGludHNIb3N0Q29tcG9uZW50fSBmcm9tICcuLi9oaW50cy1ob3N0LmNvbXBvbmVudCc7XG5cbmNvbnN0IFNQQUNFID0gODtcbmNvbnN0IEJPUkRFUl9XSURUSCA9IDE7XG5jb25zdCBMRUZUX1BBRERJTkcgPSAxNjtcbmNvbnN0IFRPUF9QQURESU5HID0gMTI7XG5jb25zdCBBUlJPV19TSVpFID0gODtcbmNvbnN0IEFSUk9XX09GRlNFVCA9IDE2O1xuY29uc3QgQVJST1dIRUFEX09GRlNFVCA9IEFSUk9XX09GRlNFVCArIChBUlJPV19TSVpFICogTWF0aC5zcXJ0KDIpKSAvIDI7XG5jb25zdCByZXZlcnNlRGlyZWN0aW9uc1ZlcnRpY2FsOiB7W2tleSBpbiBUdWlEaXJlY3Rpb25dOiBUdWlEaXJlY3Rpb259ID0ge1xuICAgICd0b3AtbGVmdCc6ICdib3R0b20tbGVmdCcsXG4gICAgJ3RvcC1yaWdodCc6ICdib3R0b20tcmlnaHQnLFxuICAgICdib3R0b20tbGVmdCc6ICd0b3AtbGVmdCcsXG4gICAgJ2JvdHRvbS1yaWdodCc6ICd0b3AtcmlnaHQnLFxuICAgIGxlZnQ6ICdyaWdodCcsXG4gICAgcmlnaHQ6ICdsZWZ0JyxcbiAgICAndG9wLW1pZGRsZSc6ICdib3R0b20tbWlkZGxlJyxcbiAgICAnYm90dG9tLW1pZGRsZSc6ICd0b3AtbWlkZGxlJyxcbn07XG5jb25zdCByZXZlcnNlRGlyZWN0aW9uc0hvcml6b250YWw6IHtba2V5IGluIFR1aURpcmVjdGlvbl06IFR1aURpcmVjdGlvbn0gPSB7XG4gICAgJ3RvcC1sZWZ0JzogJ3RvcC1yaWdodCcsXG4gICAgJ3RvcC1yaWdodCc6ICd0b3AtbGVmdCcsXG4gICAgJ2JvdHRvbS1sZWZ0JzogJ2JvdHRvbS1yaWdodCcsXG4gICAgJ2JvdHRvbS1yaWdodCc6ICdib3R0b20tbGVmdCcsXG4gICAgbGVmdDogJ3JpZ2h0JyxcbiAgICByaWdodDogJ2xlZnQnLFxuICAgICd0b3AtbWlkZGxlJzogJ3RvcC1taWRkbGUnLFxuICAgICdib3R0b20tbWlkZGxlJzogJ2JvdHRvbS1taWRkbGUnLFxufTtcblxuLy8gVE9ETzogY29uc2lkZXIgYWJzdHJhY3RpbmcgVUkgYW5kIG1vdmUgdG8gQ0RLLCBzcGxpdCBoaW50IGFuZCBvdmVyZmxvd1xuLy8gQW1iaWVudCB0eXBlIGNhbm5vdCBiZSB1c2VkIHdpdGhvdXQgZHluYW1pYyBodHRwczovL2dpdGh1Yi5jb20vYW5ndWxhci9hbmd1bGFyL2lzc3Vlcy8yMzM5NVxuLy8gQGR5bmFtaWNcbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAndHVpLWhpbnQtYm94W2hpbnRdJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vaGludC1ib3gudGVtcGxhdGUuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vaGludC1ib3guc3R5bGUubGVzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHByb3ZpZGVyczogW1R1aURlc3Ryb3lTZXJ2aWNlXSxcbiAgICBhbmltYXRpb25zOiBbdHVpRmFkZUluXSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpSGludEJveENvbXBvbmVudCB7XG4gICAgQFZpZXdDaGlsZCgnYXJyb3cnKVxuICAgIHByaXZhdGUgcmVhZG9ubHkgYXJyb3c/OiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PjtcblxuICAgIEBIb3N0QmluZGluZygnQHR1aUZhZGVJbicpXG4gICAgcmVhZG9ubHkgYW5pbWF0aW9uID0ge3ZhbHVlOiAnJywgLi4udGhpcy5vcHRpb25zfSBhcyBjb25zdDtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBASW5qZWN0KEFOSU1BVElPTl9GUkFNRSkgYW5pbWF0aW9uRnJhbWUkOiBPYnNlcnZhYmxlPG51bWJlcj4sXG4gICAgICAgIEBJbmplY3QoVHVpRGVzdHJveVNlcnZpY2UpIGRlc3Ryb3kkOiBPYnNlcnZhYmxlPHZvaWQ+LFxuICAgICAgICBASW5qZWN0KE5nWm9uZSkgbmdab25lOiBOZ1pvbmUsXG4gICAgICAgIEBJbmplY3QoVFVJX0FOSU1BVElPTl9PUFRJT05TKSBwcml2YXRlIHJlYWRvbmx5IG9wdGlvbnM6IEFuaW1hdGlvbk9wdGlvbnMsXG4gICAgICAgIEBJbmplY3QoRWxlbWVudFJlZikgcHJpdmF0ZSByZWFkb25seSBlbGVtZW50UmVmOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgICAgICAgQEluamVjdChXSU5ET1cpIHByaXZhdGUgcmVhZG9ubHkgd2luZG93UmVmOiBXaW5kb3csXG4gICAgICAgIEBJbmplY3QoVFVJX01FRElBKSBwcml2YXRlIHJlYWRvbmx5IG1lZGlhOiBUdWlNZWRpYSxcbiAgICAgICAgQEluamVjdChmb3J3YXJkUmVmKCgpID0+IFR1aUhpbnRzSG9zdENvbXBvbmVudCkpXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgaGludHNIb3N0OiBUdWlIaW50c0hvc3RDb21wb25lbnQsXG4gICAgICAgIEBJbmplY3QoUE9MWU1PUlBIRVVTX0NPTlRFWFQpXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgY29udGV4dDogVHVpQ29udGV4dFdpdGhJbXBsaWNpdDxBYnN0cmFjdFR1aUhpbnQ+LFxuICAgICkge1xuICAgICAgICBhbmltYXRpb25GcmFtZSRcbiAgICAgICAgICAgIC5waXBlKHR1aVpvbmVmcmVlKG5nWm9uZSksIHRha2VVbnRpbChkZXN0cm95JCkpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKCgpID0+IHRoaXMuY2FsY3VsYXRlUG9zaXRpb24oKSk7XG4gICAgfVxuXG4gICAgZ2V0IGhpbnQoKTogQWJzdHJhY3RUdWlIaW50IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY29udGV4dC4kaW1wbGljaXQ7XG4gICAgfVxuXG4gICAgQHR1aVB1cmVcbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLl91bnRvdWNoYWJsZScpXG4gICAgZ2V0IGlzVW50b3VjaGFibGUoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmhpbnQgaW5zdGFuY2VvZiBUdWlQb2ludGVySGludERpcmVjdGl2ZTtcbiAgICB9XG5cbiAgICBASG9zdEJpbmRpbmcoJ2F0dHIuZGF0YS1tb2RlJylcbiAgICBnZXQgbW9kZSgpOiBUdWlIaW50TW9kZVQgfCBudWxsIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaGludC5tb2RlO1xuICAgIH1cblxuICAgIGdldCBpc01vYmlsZSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMud2luZG93UmVmLmlubmVyV2lkdGggPD0gdGhpcy5tZWRpYS5tb2JpbGU7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ2FsY3VsYXRlcyB3cmFwcGVyIHBvc2l0aW9uLlxuICAgICAqIFN0eWxlcyBhcmUgc2V0IGRpcmVjdGx5IHRvIGF2b2lkIHZpc3VhbCBzaGFrZSBvZiBlbGVtZW50XG4gICAgICovXG4gICAgcHJpdmF0ZSBjYWxjdWxhdGVQb3NpdGlvbigpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMubW9kZSAhPT0gJ292ZXJmbG93Jykge1xuICAgICAgICAgICAgdGhpcy5jYWxjdWxhdGVDb29yZGluYXRlcygpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5zZXRPdmVyZmxvd1N0eWxlcygpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjYWxjdWxhdGVDb29yZGluYXRlcygpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuaXNNb2JpbGUpIHtcbiAgICAgICAgICAgIHRoaXMuY2FsY3VsYXRlTW9iaWxlQ29vcmRpbmF0ZXMoKTtcblxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgaG9zdFJlY3QgPSB0aGlzLmhpbnQuZ2V0RWxlbWVudENsaWVudFJlY3QoKTtcbiAgICAgICAgY29uc3QgcG9ydGFsUmVjdCA9IHRoaXMuaGludHNIb3N0LmNsaWVudFJlY3Q7XG4gICAgICAgIGNvbnN0IHRvb2x0aXAgPSB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcbiAgICAgICAgY29uc3Qge3N0eWxlfSA9IHRvb2x0aXA7XG4gICAgICAgIGNvbnN0IHRvb2x0aXBSZWN0ID0gdG9vbHRpcC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICAgICAgY29uc3QgaXNIb3N0TG9uZyA9IGhvc3RSZWN0LndpZHRoID4gQVJST1dIRUFEX09GRlNFVCAqIDI7XG4gICAgICAgIGNvbnN0IGRpcmVjdGlvbnM6IFR1aURpcmVjdGlvbltdID0gW1xuICAgICAgICAgICAgJ2xlZnQnLFxuICAgICAgICAgICAgJ3JpZ2h0JyxcbiAgICAgICAgICAgICdib3R0b20tbGVmdCcsXG4gICAgICAgICAgICAnYm90dG9tLXJpZ2h0JyxcbiAgICAgICAgICAgICdib3R0b20tbWlkZGxlJyxcbiAgICAgICAgICAgICd0b3AtbGVmdCcsXG4gICAgICAgICAgICAndG9wLXJpZ2h0JyxcbiAgICAgICAgICAgICd0b3AtbWlkZGxlJyxcbiAgICAgICAgXTtcblxuICAgICAgICBsZXQgdG9wID0gMDtcbiAgICAgICAgbGV0IGxlZnQgPSAwO1xuICAgICAgICBsZXQge2RpcmVjdGlvbn0gPSB0aGlzLmhpbnQ7XG5cbiAgICAgICAgY29uc3QgaG9yaXpvbnRhbFRvcCA9XG4gICAgICAgICAgICBob3N0UmVjdC50b3AgKyBob3N0UmVjdC5oZWlnaHQgLyAyIC0gdG9vbHRpcFJlY3QuaGVpZ2h0IC8gMiAtIHBvcnRhbFJlY3QudG9wO1xuICAgICAgICBjb25zdCBob3Jpem9udGFsTGVmdCA9XG4gICAgICAgICAgICBob3N0UmVjdC5sZWZ0IC0gdG9vbHRpcFJlY3Qud2lkdGggLSBTUEFDRSAtIHBvcnRhbFJlY3QubGVmdDtcbiAgICAgICAgY29uc3QgaG9yaXpvbnRhbFJpZ2h0ID0gaG9zdFJlY3QubGVmdCArIGhvc3RSZWN0LndpZHRoICsgU1BBQ0UgLSBwb3J0YWxSZWN0LmxlZnQ7XG4gICAgICAgIGNvbnN0IHZlcnRpY2FsQm90dG9tID0gaG9zdFJlY3QuYm90dG9tICsgU1BBQ0UgLSBwb3J0YWxSZWN0LnRvcDtcbiAgICAgICAgY29uc3QgdmVydGljYWxUb3AgPSBob3N0UmVjdC50b3AgLSB0b29sdGlwUmVjdC5oZWlnaHQgLSBTUEFDRSAtIHBvcnRhbFJlY3QudG9wO1xuICAgICAgICBjb25zdCB2ZXJ0aWNhbFJpZ2h0ID0gaXNIb3N0TG9uZ1xuICAgICAgICAgICAgPyBob3N0UmVjdC5sZWZ0IC0gcG9ydGFsUmVjdC5sZWZ0XG4gICAgICAgICAgICA6IGhvc3RSZWN0LmxlZnQgKyBob3N0UmVjdC53aWR0aCAvIDIgLSBBUlJPV0hFQURfT0ZGU0VUIC0gcG9ydGFsUmVjdC5sZWZ0O1xuICAgICAgICBjb25zdCB2ZXJ0aWNhbExlZnQgPSBpc0hvc3RMb25nXG4gICAgICAgICAgICA/IGhvc3RSZWN0LmxlZnQgLSB0b29sdGlwUmVjdC53aWR0aCArIGhvc3RSZWN0LndpZHRoIC0gcG9ydGFsUmVjdC5sZWZ0XG4gICAgICAgICAgICA6IGhvc3RSZWN0LmxlZnQgLVxuICAgICAgICAgICAgICB0b29sdGlwUmVjdC53aWR0aCArXG4gICAgICAgICAgICAgIGhvc3RSZWN0LndpZHRoIC8gMiArXG4gICAgICAgICAgICAgIEFSUk9XSEVBRF9PRkZTRVQgLVxuICAgICAgICAgICAgICBwb3J0YWxSZWN0LmxlZnQ7XG4gICAgICAgIGNvbnN0IHZlcnRpY2FsTWlkZGxlID1cbiAgICAgICAgICAgIGhvc3RSZWN0LmxlZnQgLSB0b29sdGlwUmVjdC53aWR0aCAvIDIgKyBob3N0UmVjdC53aWR0aCAvIDIgLSBwb3J0YWxSZWN0LmxlZnQ7XG5cbiAgICAgICAgZGlyZWN0aW9ucy5zcGxpY2UoZGlyZWN0aW9ucy5pbmRleE9mKGRpcmVjdGlvbiksIDEpO1xuXG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1jb25zdGFudC1jb25kaXRpb25cbiAgICAgICAgd2hpbGUgKHRydWUpIHtcbiAgICAgICAgICAgIHN3aXRjaCAoZGlyZWN0aW9uKSB7XG4gICAgICAgICAgICAgICAgY2FzZSAnbGVmdCc6XG4gICAgICAgICAgICAgICAgICAgIHRvcCA9IGhvcml6b250YWxUb3A7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQgPSBob3Jpem9udGFsTGVmdDtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgY2FzZSAncmlnaHQnOlxuICAgICAgICAgICAgICAgICAgICB0b3AgPSBob3Jpem9udGFsVG9wO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0ID0gaG9yaXpvbnRhbFJpZ2h0O1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBjYXNlICd0b3AtcmlnaHQnOlxuICAgICAgICAgICAgICAgICAgICB0b3AgPSB2ZXJ0aWNhbFRvcDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdCA9IHZlcnRpY2FsUmlnaHQ7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIGNhc2UgJ3RvcC1sZWZ0JzpcbiAgICAgICAgICAgICAgICAgICAgdG9wID0gdmVydGljYWxUb3A7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQgPSB2ZXJ0aWNhbExlZnQ7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIGNhc2UgJ2JvdHRvbS1yaWdodCc6XG4gICAgICAgICAgICAgICAgICAgIHRvcCA9IHZlcnRpY2FsQm90dG9tO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0ID0gdmVydGljYWxSaWdodDtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgY2FzZSAnYm90dG9tLWxlZnQnOlxuICAgICAgICAgICAgICAgICAgICB0b3AgPSB2ZXJ0aWNhbEJvdHRvbTtcbiAgICAgICAgICAgICAgICAgICAgbGVmdCA9IHZlcnRpY2FsTGVmdDtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgY2FzZSAnYm90dG9tLW1pZGRsZSc6XG4gICAgICAgICAgICAgICAgICAgIHRvcCA9IHZlcnRpY2FsQm90dG9tO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0ID0gdmVydGljYWxNaWRkbGU7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIGNhc2UgJ3RvcC1taWRkbGUnOlxuICAgICAgICAgICAgICAgICAgICB0b3AgPSB2ZXJ0aWNhbFRvcDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdCA9IHZlcnRpY2FsTWlkZGxlO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgY29uc3QgdmVydGljYWxGaXQgPVxuICAgICAgICAgICAgICAgIHRvcCArIHBvcnRhbFJlY3QudG9wID4gU1BBQ0UgJiZcbiAgICAgICAgICAgICAgICB0b3AgKyB0b29sdGlwUmVjdC5oZWlnaHQgKyBTUEFDRSArIHBvcnRhbFJlY3QudG9wIDxcbiAgICAgICAgICAgICAgICAgICAgdGhpcy53aW5kb3dSZWYuaW5uZXJIZWlnaHQ7XG4gICAgICAgICAgICBjb25zdCBob3Jpem9udGFsRml0ID1cbiAgICAgICAgICAgICAgICBsZWZ0ID4gU1BBQ0UgJiZcbiAgICAgICAgICAgICAgICBsZWZ0ICsgdG9vbHRpcFJlY3Qud2lkdGggKyBTUEFDRSArIHBvcnRhbFJlY3QubGVmdCA8IHBvcnRhbFJlY3Qud2lkdGg7XG5cbiAgICAgICAgICAgIGlmIChkaXJlY3Rpb25zLmxlbmd0aCA9PT0gMCB8fCAodmVydGljYWxGaXQgJiYgaG9yaXpvbnRhbEZpdCkpIHtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgZGlyZWN0aW9uID0gdmVydGljYWxGaXRcbiAgICAgICAgICAgICAgICA/IHJldmVyc2VEaXJlY3Rpb25zSG9yaXpvbnRhbFtkaXJlY3Rpb25dXG4gICAgICAgICAgICAgICAgOiByZXZlcnNlRGlyZWN0aW9uc1ZlcnRpY2FsW2RpcmVjdGlvbl07XG4gICAgICAgICAgICBkaXJlY3Rpb24gPVxuICAgICAgICAgICAgICAgIGRpcmVjdGlvbnMuc3BsaWNlKGRpcmVjdGlvbnMuaW5kZXhPZihkaXJlY3Rpb24pLCAxKVswXSB8fCBkaXJlY3Rpb247XG4gICAgICAgIH1cblxuICAgICAgICBzdHlsZS50b3AgPSBweCh0b3ApO1xuICAgICAgICBzdHlsZS5sZWZ0ID0gcHgobGVmdCk7XG5cbiAgICAgICAgdG9vbHRpcC5zZXRBdHRyaWJ1dGUoJ2RhdGEtdHVpLWhvc3QtZGlyZWN0aW9uJywgZGlyZWN0aW9uKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGNhbGN1bGF0ZU1vYmlsZUNvb3JkaW5hdGVzKCk6IHZvaWQge1xuICAgICAgICBjb25zdCBob3N0UmVjdCA9IHRoaXMuaGludC5nZXRFbGVtZW50Q2xpZW50UmVjdCgpO1xuICAgICAgICBjb25zdCBwb3J0YWxSZWN0ID0gdGhpcy5oaW50c0hvc3QuY2xpZW50UmVjdDtcbiAgICAgICAgY29uc3QgdG9vbHRpcCA9IHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50O1xuICAgICAgICBjb25zdCB7c3R5bGV9ID0gdG9vbHRpcDtcbiAgICAgICAgY29uc3QgdG9vbHRpcFJlY3QgPSB0b29sdGlwLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuICAgICAgICBjb25zdCB2ZXJ0aWNhbFRvcCA9IGhvc3RSZWN0LnRvcCAtIHRvb2x0aXBSZWN0LmhlaWdodCAtIFNQQUNFIC0gcG9ydGFsUmVjdC50b3A7XG4gICAgICAgIGNvbnN0IHZlcnRpY2FsQm90dG9tID0gaG9zdFJlY3QuYm90dG9tICsgU1BBQ0UgLSBwb3J0YWxSZWN0LnRvcDtcbiAgICAgICAgY29uc3QgdmVydGljYWxUb3BGaXQgPVxuICAgICAgICAgICAgdmVydGljYWxUb3AgKyBwb3J0YWxSZWN0LnRvcCA+IFNQQUNFICYmXG4gICAgICAgICAgICBob3N0UmVjdC50b3AgPCB0aGlzLndpbmRvd1JlZi5pbm5lckhlaWdodDtcbiAgICAgICAgY29uc3QgdmVydGljYWxCb3R0b21GaXQgPVxuICAgICAgICAgICAgaG9zdFJlY3QuYm90dG9tID4gMCAmJlxuICAgICAgICAgICAgaG9zdFJlY3QuYm90dG9tICsgMiAqIFNQQUNFICsgdG9vbHRpcFJlY3QuaGVpZ2h0IDwgdGhpcy53aW5kb3dSZWYuaW5uZXJIZWlnaHQ7XG4gICAgICAgIGNvbnN0IGRpcmVjdGlvbiA9XG4gICAgICAgICAgICAodGhpcy5oaW50LmRpcmVjdGlvbi5pbmNsdWRlcygndG9wJykgJiYgdmVydGljYWxUb3BGaXQpIHx8ICF2ZXJ0aWNhbEJvdHRvbUZpdFxuICAgICAgICAgICAgICAgID8gJ3RvcCdcbiAgICAgICAgICAgICAgICA6ICdib3R0b20nO1xuICAgICAgICBjb25zdCBhdHRlbXB0ZWRMZWZ0ID1cbiAgICAgICAgICAgIHBvcnRhbFJlY3QubGVmdCArIGhvc3RSZWN0LmxlZnQgKyBob3N0UmVjdC53aWR0aCAvIDIgLSB0b29sdGlwUmVjdC53aWR0aCAvIDI7XG4gICAgICAgIGNvbnN0IGxlZnQgPSBNYXRoLm1heChcbiAgICAgICAgICAgIGF0dGVtcHRlZExlZnQgKyB0b29sdGlwUmVjdC53aWR0aCArIFNQQUNFID4gcG9ydGFsUmVjdC5yaWdodFxuICAgICAgICAgICAgICAgID8gcG9ydGFsUmVjdC5yaWdodCAtIFNQQUNFIC0gdG9vbHRpcFJlY3Qud2lkdGhcbiAgICAgICAgICAgICAgICA6IGF0dGVtcHRlZExlZnQsXG4gICAgICAgICAgICBTUEFDRSAqIDIsXG4gICAgICAgICk7XG5cbiAgICAgICAgc3R5bGUubGVmdCA9IHB4KGxlZnQpO1xuICAgICAgICBzdHlsZS50b3AgPSBkaXJlY3Rpb24gPT09ICd0b3AnID8gcHgodmVydGljYWxUb3ApIDogcHgodmVydGljYWxCb3R0b20pO1xuXG4gICAgICAgIGlmICh0aGlzLmFycm93KSB7XG4gICAgICAgICAgICB0aGlzLmFycm93Lm5hdGl2ZUVsZW1lbnQuc3R5bGUubGVmdCA9IHB4KFxuICAgICAgICAgICAgICAgIGhvc3RSZWN0LmxlZnQgPD0gU1BBQ0UgKiAyICYmIGhvc3RSZWN0LndpZHRoID4gQVJST1dfT0ZGU0VUICogMlxuICAgICAgICAgICAgICAgICAgICA/IEFSUk9XX09GRlNFVFxuICAgICAgICAgICAgICAgICAgICA6IGhvc3RSZWN0LmxlZnQgKyBob3N0UmVjdC53aWR0aCAvIDIgLSBsZWZ0IC0gQVJST1dfU0laRSAvIDIsXG4gICAgICAgICAgICApO1xuICAgICAgICB9XG5cbiAgICAgICAgdG9vbHRpcC5zZXRBdHRyaWJ1dGUoJ2RhdGEtdHVpLWhvc3QtZGlyZWN0aW9uJywgZGlyZWN0aW9uKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHNldE92ZXJmbG93U3R5bGVzKCk6IHZvaWQge1xuICAgICAgICBjb25zdCBob3N0UmVjdCA9IHRoaXMuaGludC5nZXRFbGVtZW50Q2xpZW50UmVjdCgpO1xuICAgICAgICBjb25zdCB7c3R5bGV9ID0gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQ7XG5cbiAgICAgICAgc3R5bGUudG9wID0gcHgoaG9zdFJlY3QudG9wIC0gd2luZG93LmlubmVySGVpZ2h0IC0gVE9QX1BBRERJTkcgLSBCT1JERVJfV0lEVEgpO1xuICAgICAgICBzdHlsZS5sZWZ0ID0gcHgoaG9zdFJlY3QubGVmdCAtIExFRlRfUEFERElORyAtIEJPUkRFUl9XSURUSCk7XG4gICAgICAgIHN0eWxlLndpZHRoID0gcHgoaG9zdFJlY3Qud2lkdGggKyBMRUZUX1BBRERJTkcgKiAyICsgQk9SREVSX1dJRFRIICogMik7XG4gICAgfVxufVxuIl19
|
|
273
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGludC1ib3guY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHRhaWdhLXVpL2NvcmUvY29tcG9uZW50cy9oaW50cy1ob3N0LyIsInNvdXJjZXMiOlsiaGludC1ib3gvaGludC1ib3guY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFDQSxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsVUFBVSxFQUNWLFdBQVcsRUFDWCxNQUFNLEVBQ04sTUFBTSxFQUNOLFNBQVMsR0FDWixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsZUFBZSxFQUFFLE1BQU0sRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQzVELE9BQU8sRUFDSCxFQUFFLEVBRUYsaUJBQWlCLEVBQ2pCLE9BQU8sRUFDUCxXQUFXLEdBQ2QsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBQ3BELE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLHdDQUF3QyxDQUFDO0FBRS9FLE9BQU8sRUFBQyxxQkFBcUIsRUFBRSxTQUFTLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUV2RSxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDakQsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFDOUQsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUNoQyxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFFekMsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFFOUQsSUFBTSxLQUFLLEdBQUcsQ0FBQyxDQUFDO0FBQ2hCLElBQU0sWUFBWSxHQUFHLENBQUMsQ0FBQztBQUN2QixJQUFNLFlBQVksR0FBRyxFQUFFLENBQUM7QUFDeEIsSUFBTSxXQUFXLEdBQUcsRUFBRSxDQUFDO0FBQ3ZC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QTBCM0Q7UUFGQyxPQUFPO1FBQ1AsV0FBVyxDQUFDLG9CQUFvQixDQUFDOzREQUdqQztJQUdEO1FBREMsV0FBVyxDQUFDLGdCQUFnQixDQUFDO21EQUc3QjtJQXRDUSxtQkFBbUI7UUFSL0IsU0FBUyxDQUFDO1lBQ1AsUUFBUSxFQUFFLG9CQUFvQjtZQUM5QixxWUFBdUM7WUFFdkMsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07WUFDL0MsU0FBUyxFQUFFLENBQUMsaUJBQWlCLENBQUM7WUFDOUIsVUFBVSxFQUFFLENBQUMsU0FBUyxDQUFDOztTQUMxQixDQUFDO1FBU08sV0FBQSxNQUFNLENBQUMsZUFBZSxDQUFDLENBQUE7UUFDdkIsV0FBQSxNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQTtRQUN6QixXQUFBLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQTtRQUNkLFdBQUEsTUFBTSxDQUFDLHFCQUFxQixDQUFDLENBQUE7UUFDN0IsV0FBQSxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUE7UUFDbEIsV0FBQSxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUE7UUFDZCxXQUFBLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQTtRQUNqQixXQUFBLE1BQU0sQ0FBQyxVQUFVLENBQUMsY0FBTSxPQUFBLHFCQUFxQixFQUFyQixDQUFxQixDQUFDLENBQUMsQ0FBQTtRQUUvQyxXQUFBLE1BQU0sQ0FBQyxvQkFBb0IsQ0FBQyxDQUFBO09BakJ4QixtQkFBbUIsQ0F5Ti9CO0lBQUQsMEJBQUM7Q0FBQSxBQXpORCxJQXlOQztTQXpOWSxtQkFBbUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0FuaW1hdGlvbk9wdGlvbnN9IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnO1xuaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDb21wb25lbnQsXG4gICAgRWxlbWVudFJlZixcbiAgICBmb3J3YXJkUmVmLFxuICAgIEhvc3RCaW5kaW5nLFxuICAgIEluamVjdCxcbiAgICBOZ1pvbmUsXG4gICAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7QU5JTUFUSU9OX0ZSQU1FLCBXSU5ET1d9IGZyb20gJ0BuZy13ZWItYXBpcy9jb21tb24nO1xuaW1wb3J0IHtcbiAgICBweCxcbiAgICBUdWlDb250ZXh0V2l0aEltcGxpY2l0LFxuICAgIFR1aURlc3Ryb3lTZXJ2aWNlLFxuICAgIHR1aVB1cmUsXG4gICAgdHVpWm9uZWZyZWUsXG59IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHtBYnN0cmFjdFR1aUhpbnR9IGZyb20gJ0B0YWlnYS11aS9jb3JlL2Fic3RyYWN0JztcbmltcG9ydCB7dHVpRmFkZUlufSBmcm9tICdAdGFpZ2EtdWkvY29yZS9hbmltYXRpb25zJztcbmltcG9ydCB7VHVpUG9pbnRlckhpbnREaXJlY3RpdmV9IGZyb20gJ0B0YWlnYS11aS9jb3JlL2RpcmVjdGl2ZXMvcG9pbnRlci1oaW50JztcbmltcG9ydCB7VHVpTWVkaWF9IGZyb20gJ0B0YWlnYS11aS9jb3JlL2ludGVyZmFjZXMnO1xuaW1wb3J0IHtUVUlfQU5JTUFUSU9OX09QVElPTlMsIFRVSV9NRURJQX0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvdG9rZW5zJztcbmltcG9ydCB7VHVpRGlyZWN0aW9uLCBUdWlIaW50TW9kZVR9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3R5cGVzJztcbmltcG9ydCB7dHVpSXNNb2JpbGV9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3V0aWxzJztcbmltcG9ydCB7UE9MWU1PUlBIRVVTX0NPTlRFWFR9IGZyb20gJ0B0aW5rb2ZmL25nLXBvbHltb3JwaGV1cyc7XG5pbXBvcnQge09ic2VydmFibGV9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHt0YWtlVW50aWx9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHtUdWlIaW50c0hvc3RDb21wb25lbnR9IGZyb20gJy4uL2hpbnRzLWhvc3QuY29tcG9uZW50JztcblxuY29uc3QgU1BBQ0UgPSA4O1xuY29uc3QgQk9SREVSX1dJRFRIID0gMTtcbmNvbnN0IExFRlRfUEFERElORyA9IDE2O1xuY29uc3QgVE9QX1BBRERJTkcgPSAxMjtcbmNvbnN0IEFSUk9XX1NJWkUgPSA4O1xuY29uc3QgQVJST1dfT0ZGU0VUID0gMTY7XG5jb25zdCBBUlJPV0hFQURfT0ZGU0VUID0gQVJST1dfT0ZGU0VUICsgKEFSUk9XX1NJWkUgKiBNYXRoLnNxcnQoMikpIC8gMjtcbmNvbnN0IHJldmVyc2VEaXJlY3Rpb25zVmVydGljYWw6IHtba2V5IGluIFR1aURpcmVjdGlvbl06IFR1aURpcmVjdGlvbn0gPSB7XG4gICAgJ3RvcC1sZWZ0JzogJ2JvdHRvbS1sZWZ0JyxcbiAgICAndG9wLXJpZ2h0JzogJ2JvdHRvbS1yaWdodCcsXG4gICAgJ2JvdHRvbS1sZWZ0JzogJ3RvcC1sZWZ0JyxcbiAgICAnYm90dG9tLXJpZ2h0JzogJ3RvcC1yaWdodCcsXG4gICAgbGVmdDogJ3JpZ2h0JyxcbiAgICByaWdodDogJ2xlZnQnLFxuICAgICd0b3AtbWlkZGxlJzogJ2JvdHRvbS1taWRkbGUnLFxuICAgICdib3R0b20tbWlkZGxlJzogJ3RvcC1taWRkbGUnLFxufTtcbmNvbnN0IHJldmVyc2VEaXJlY3Rpb25zSG9yaXpvbnRhbDoge1trZXkgaW4gVHVpRGlyZWN0aW9uXTogVHVpRGlyZWN0aW9ufSA9IHtcbiAgICAndG9wLWxlZnQnOiAndG9wLXJpZ2h0JyxcbiAgICAndG9wLXJpZ2h0JzogJ3RvcC1sZWZ0JyxcbiAgICAnYm90dG9tLWxlZnQnOiAnYm90dG9tLXJpZ2h0JyxcbiAgICAnYm90dG9tLXJpZ2h0JzogJ2JvdHRvbS1sZWZ0JyxcbiAgICBsZWZ0OiAncmlnaHQnLFxuICAgIHJpZ2h0OiAnbGVmdCcsXG4gICAgJ3RvcC1taWRkbGUnOiAndG9wLW1pZGRsZScsXG4gICAgJ2JvdHRvbS1taWRkbGUnOiAnYm90dG9tLW1pZGRsZScsXG59O1xuXG4vLyBUT0RPOiBjb25zaWRlciBhYnN0cmFjdGluZyBVSSBhbmQgbW92ZSB0byBDREssIHNwbGl0IGhpbnQgYW5kIG92ZXJmbG93XG4vLyBBbWJpZW50IHR5cGUgY2Fubm90IGJlIHVzZWQgd2l0aG91dCBkeW5hbWljIGh0dHBzOi8vZ2l0aHViLmNvbS9hbmd1bGFyL2FuZ3VsYXIvaXNzdWVzLzIzMzk1XG4vLyBAZHluYW1pY1xuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICd0dWktaGludC1ib3hbaGludF0nLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9oaW50LWJveC50ZW1wbGF0ZS5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9oaW50LWJveC5zdHlsZS5sZXNzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgcHJvdmlkZXJzOiBbVHVpRGVzdHJveVNlcnZpY2VdLFxuICAgIGFuaW1hdGlvbnM6IFt0dWlGYWRlSW5dLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlIaW50Qm94Q29tcG9uZW50IHtcbiAgICBAVmlld0NoaWxkKCdhcnJvdycpXG4gICAgcHJpdmF0ZSByZWFkb25seSBhcnJvdz86IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+O1xuXG4gICAgQEhvc3RCaW5kaW5nKCdAdHVpRmFkZUluJylcbiAgICByZWFkb25seSBhbmltYXRpb24gPSB7dmFsdWU6ICcnLCAuLi50aGlzLm9wdGlvbnN9IGFzIGNvbnN0O1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIEBJbmplY3QoQU5JTUFUSU9OX0ZSQU1FKSBhbmltYXRpb25GcmFtZSQ6IE9ic2VydmFibGU8bnVtYmVyPixcbiAgICAgICAgQEluamVjdChUdWlEZXN0cm95U2VydmljZSkgZGVzdHJveSQ6IE9ic2VydmFibGU8dm9pZD4sXG4gICAgICAgIEBJbmplY3QoTmdab25lKSBuZ1pvbmU6IE5nWm9uZSxcbiAgICAgICAgQEluamVjdChUVUlfQU5JTUFUSU9OX09QVElPTlMpIHByaXZhdGUgcmVhZG9ubHkgb3B0aW9uczogQW5pbWF0aW9uT3B0aW9ucyxcbiAgICAgICAgQEluamVjdChFbGVtZW50UmVmKSBwcml2YXRlIHJlYWRvbmx5IGVsZW1lbnRSZWY6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxuICAgICAgICBASW5qZWN0KFdJTkRPVykgcHJpdmF0ZSByZWFkb25seSB3aW5kb3dSZWY6IFdpbmRvdyxcbiAgICAgICAgQEluamVjdChUVUlfTUVESUEpIHByaXZhdGUgcmVhZG9ubHkgbWVkaWE6IFR1aU1lZGlhLFxuICAgICAgICBASW5qZWN0KGZvcndhcmRSZWYoKCkgPT4gVHVpSGludHNIb3N0Q29tcG9uZW50KSlcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBoaW50c0hvc3Q6IFR1aUhpbnRzSG9zdENvbXBvbmVudCxcbiAgICAgICAgQEluamVjdChQT0xZTU9SUEhFVVNfQ09OVEVYVClcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBjb250ZXh0OiBUdWlDb250ZXh0V2l0aEltcGxpY2l0PEFic3RyYWN0VHVpSGludD4sXG4gICAgKSB7XG4gICAgICAgIGFuaW1hdGlvbkZyYW1lJFxuICAgICAgICAgICAgLnBpcGUodHVpWm9uZWZyZWUobmdab25lKSwgdGFrZVVudGlsKGRlc3Ryb3kkKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5jYWxjdWxhdGVQb3NpdGlvbigpKTtcbiAgICB9XG5cbiAgICBnZXQgaGludCgpOiBBYnN0cmFjdFR1aUhpbnQge1xuICAgICAgICByZXR1cm4gdGhpcy5jb250ZXh0LiRpbXBsaWNpdDtcbiAgICB9XG5cbiAgICBAdHVpUHVyZVxuICAgIEBIb3N0QmluZGluZygnY2xhc3MuX3VudG91Y2hhYmxlJylcbiAgICBnZXQgaXNVbnRvdWNoYWJsZSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaGludCBpbnN0YW5jZW9mIFR1aVBvaW50ZXJIaW50RGlyZWN0aXZlO1xuICAgIH1cblxuICAgIEBIb3N0QmluZGluZygnYXR0ci5kYXRhLW1vZGUnKVxuICAgIGdldCBtb2RlKCk6IFR1aUhpbnRNb2RlVCB8IG51bGwge1xuICAgICAgICByZXR1cm4gdGhpcy5oaW50Lm1vZGU7XG4gICAgfVxuXG4gICAgZ2V0IGlzTW9iaWxlKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdHVpSXNNb2JpbGUodGhpcy53aW5kb3dSZWYsIHRoaXMubWVkaWEpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENhbGN1bGF0ZXMgd3JhcHBlciBwb3NpdGlvbi5cbiAgICAgKiBTdHlsZXMgYXJlIHNldCBkaXJlY3RseSB0byBhdm9pZCB2aXN1YWwgc2hha2Ugb2YgZWxlbWVudFxuICAgICAqL1xuICAgIHByaXZhdGUgY2FsY3VsYXRlUG9zaXRpb24oKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLm1vZGUgIT09ICdvdmVyZmxvdycpIHtcbiAgICAgICAgICAgIHRoaXMuY2FsY3VsYXRlQ29vcmRpbmF0ZXMoKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuc2V0T3ZlcmZsb3dTdHlsZXMoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgY2FsY3VsYXRlQ29vcmRpbmF0ZXMoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmlzTW9iaWxlKSB7XG4gICAgICAgICAgICB0aGlzLmNhbGN1bGF0ZU1vYmlsZUNvb3JkaW5hdGVzKCk7XG5cbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGhvc3RSZWN0ID0gdGhpcy5oaW50LmdldEVsZW1lbnRDbGllbnRSZWN0KCk7XG4gICAgICAgIGNvbnN0IHBvcnRhbFJlY3QgPSB0aGlzLmhpbnRzSG9zdC5jbGllbnRSZWN0O1xuICAgICAgICBjb25zdCB0b29sdGlwID0gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQ7XG4gICAgICAgIGNvbnN0IHtzdHlsZX0gPSB0b29sdGlwO1xuICAgICAgICBjb25zdCB0b29sdGlwUmVjdCA9IHRvb2x0aXAuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgICAgIGNvbnN0IGlzSG9zdExvbmcgPSBob3N0UmVjdC53aWR0aCA+IEFSUk9XSEVBRF9PRkZTRVQgKiAyO1xuICAgICAgICBjb25zdCBkaXJlY3Rpb25zOiBUdWlEaXJlY3Rpb25bXSA9IFtcbiAgICAgICAgICAgICdsZWZ0JyxcbiAgICAgICAgICAgICdyaWdodCcsXG4gICAgICAgICAgICAnYm90dG9tLWxlZnQnLFxuICAgICAgICAgICAgJ2JvdHRvbS1yaWdodCcsXG4gICAgICAgICAgICAnYm90dG9tLW1pZGRsZScsXG4gICAgICAgICAgICAndG9wLWxlZnQnLFxuICAgICAgICAgICAgJ3RvcC1yaWdodCcsXG4gICAgICAgICAgICAndG9wLW1pZGRsZScsXG4gICAgICAgIF07XG5cbiAgICAgICAgbGV0IHRvcCA9IDA7XG4gICAgICAgIGxldCBsZWZ0ID0gMDtcbiAgICAgICAgbGV0IHtkaXJlY3Rpb259ID0gdGhpcy5oaW50O1xuXG4gICAgICAgIGNvbnN0IGhvcml6b250YWxUb3AgPVxuICAgICAgICAgICAgaG9zdFJlY3QudG9wICsgaG9zdFJlY3QuaGVpZ2h0IC8gMiAtIHRvb2x0aXBSZWN0LmhlaWdodCAvIDIgLSBwb3J0YWxSZWN0LnRvcDtcbiAgICAgICAgY29uc3QgaG9yaXpvbnRhbExlZnQgPVxuICAgICAgICAgICAgaG9zdFJlY3QubGVmdCAtIHRvb2x0aXBSZWN0LndpZHRoIC0gU1BBQ0UgLSBwb3J0YWxSZWN0LmxlZnQ7XG4gICAgICAgIGNvbnN0IGhvcml6b250YWxSaWdodCA9IGhvc3RSZWN0LmxlZnQgKyBob3N0UmVjdC53aWR0aCArIFNQQUNFIC0gcG9ydGFsUmVjdC5sZWZ0O1xuICAgICAgICBjb25zdCB2ZXJ0aWNhbEJvdHRvbSA9IGhvc3RSZWN0LmJvdHRvbSArIFNQQUNFIC0gcG9ydGFsUmVjdC50b3A7XG4gICAgICAgIGNvbnN0IHZlcnRpY2FsVG9wID0gaG9zdFJlY3QudG9wIC0gdG9vbHRpcFJlY3QuaGVpZ2h0IC0gU1BBQ0UgLSBwb3J0YWxSZWN0LnRvcDtcbiAgICAgICAgY29uc3QgdmVydGljYWxSaWdodCA9IGlzSG9zdExvbmdcbiAgICAgICAgICAgID8gaG9zdFJlY3QubGVmdCAtIHBvcnRhbFJlY3QubGVmdFxuICAgICAgICAgICAgOiBob3N0UmVjdC5sZWZ0ICsgaG9zdFJlY3Qud2lkdGggLyAyIC0gQVJST1dIRUFEX09GRlNFVCAtIHBvcnRhbFJlY3QubGVmdDtcbiAgICAgICAgY29uc3QgdmVydGljYWxMZWZ0ID0gaXNIb3N0TG9uZ1xuICAgICAgICAgICAgPyBob3N0UmVjdC5sZWZ0IC0gdG9vbHRpcFJlY3Qud2lkdGggKyBob3N0UmVjdC53aWR0aCAtIHBvcnRhbFJlY3QubGVmdFxuICAgICAgICAgICAgOiBob3N0UmVjdC5sZWZ0IC1cbiAgICAgICAgICAgICAgdG9vbHRpcFJlY3Qud2lkdGggK1xuICAgICAgICAgICAgICBob3N0UmVjdC53aWR0aCAvIDIgK1xuICAgICAgICAgICAgICBBUlJPV0hFQURfT0ZGU0VUIC1cbiAgICAgICAgICAgICAgcG9ydGFsUmVjdC5sZWZ0O1xuICAgICAgICBjb25zdCB2ZXJ0aWNhbE1pZGRsZSA9XG4gICAgICAgICAgICBob3N0UmVjdC5sZWZ0IC0gdG9vbHRpcFJlY3Qud2lkdGggLyAyICsgaG9zdFJlY3Qud2lkdGggLyAyIC0gcG9ydGFsUmVjdC5sZWZ0O1xuXG4gICAgICAgIGRpcmVjdGlvbnMuc3BsaWNlKGRpcmVjdGlvbnMuaW5kZXhPZihkaXJlY3Rpb24pLCAxKTtcblxuICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tY29uc3RhbnQtY29uZGl0aW9uXG4gICAgICAgIHdoaWxlICh0cnVlKSB7XG4gICAgICAgICAgICBzd2l0Y2ggKGRpcmVjdGlvbikge1xuICAgICAgICAgICAgICAgIGNhc2UgJ2xlZnQnOlxuICAgICAgICAgICAgICAgICAgICB0b3AgPSBob3Jpem9udGFsVG9wO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0ID0gaG9yaXpvbnRhbExlZnQ7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIGNhc2UgJ3JpZ2h0JzpcbiAgICAgICAgICAgICAgICAgICAgdG9wID0gaG9yaXpvbnRhbFRvcDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdCA9IGhvcml6b250YWxSaWdodDtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgY2FzZSAndG9wLXJpZ2h0JzpcbiAgICAgICAgICAgICAgICAgICAgdG9wID0gdmVydGljYWxUb3A7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQgPSB2ZXJ0aWNhbFJpZ2h0O1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBjYXNlICd0b3AtbGVmdCc6XG4gICAgICAgICAgICAgICAgICAgIHRvcCA9IHZlcnRpY2FsVG9wO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0ID0gdmVydGljYWxMZWZ0O1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBjYXNlICdib3R0b20tcmlnaHQnOlxuICAgICAgICAgICAgICAgICAgICB0b3AgPSB2ZXJ0aWNhbEJvdHRvbTtcbiAgICAgICAgICAgICAgICAgICAgbGVmdCA9IHZlcnRpY2FsUmlnaHQ7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIGNhc2UgJ2JvdHRvbS1sZWZ0JzpcbiAgICAgICAgICAgICAgICAgICAgdG9wID0gdmVydGljYWxCb3R0b207XG4gICAgICAgICAgICAgICAgICAgIGxlZnQgPSB2ZXJ0aWNhbExlZnQ7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIGNhc2UgJ2JvdHRvbS1taWRkbGUnOlxuICAgICAgICAgICAgICAgICAgICB0b3AgPSB2ZXJ0aWNhbEJvdHRvbTtcbiAgICAgICAgICAgICAgICAgICAgbGVmdCA9IHZlcnRpY2FsTWlkZGxlO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBjYXNlICd0b3AtbWlkZGxlJzpcbiAgICAgICAgICAgICAgICAgICAgdG9wID0gdmVydGljYWxUb3A7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQgPSB2ZXJ0aWNhbE1pZGRsZTtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGNvbnN0IHZlcnRpY2FsRml0ID1cbiAgICAgICAgICAgICAgICB0b3AgKyBwb3J0YWxSZWN0LnRvcCA+IFNQQUNFICYmXG4gICAgICAgICAgICAgICAgdG9wICsgdG9vbHRpcFJlY3QuaGVpZ2h0ICsgU1BBQ0UgKyBwb3J0YWxSZWN0LnRvcCA8XG4gICAgICAgICAgICAgICAgICAgIHRoaXMud2luZG93UmVmLmlubmVySGVpZ2h0O1xuICAgICAgICAgICAgY29uc3QgaG9yaXpvbnRhbEZpdCA9XG4gICAgICAgICAgICAgICAgbGVmdCA+IFNQQUNFICYmXG4gICAgICAgICAgICAgICAgbGVmdCArIHRvb2x0aXBSZWN0LndpZHRoICsgU1BBQ0UgKyBwb3J0YWxSZWN0LmxlZnQgPCBwb3J0YWxSZWN0LndpZHRoO1xuXG4gICAgICAgICAgICBpZiAoZGlyZWN0aW9ucy5sZW5ndGggPT09IDAgfHwgKHZlcnRpY2FsRml0ICYmIGhvcml6b250YWxGaXQpKSB7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGRpcmVjdGlvbiA9IHZlcnRpY2FsRml0XG4gICAgICAgICAgICAgICAgPyByZXZlcnNlRGlyZWN0aW9uc0hvcml6b250YWxbZGlyZWN0aW9uXVxuICAgICAgICAgICAgICAgIDogcmV2ZXJzZURpcmVjdGlvbnNWZXJ0aWNhbFtkaXJlY3Rpb25dO1xuICAgICAgICAgICAgZGlyZWN0aW9uID1cbiAgICAgICAgICAgICAgICBkaXJlY3Rpb25zLnNwbGljZShkaXJlY3Rpb25zLmluZGV4T2YoZGlyZWN0aW9uKSwgMSlbMF0gfHwgZGlyZWN0aW9uO1xuICAgICAgICB9XG5cbiAgICAgICAgc3R5bGUudG9wID0gcHgodG9wKTtcbiAgICAgICAgc3R5bGUubGVmdCA9IHB4KGxlZnQpO1xuXG4gICAgICAgIHRvb2x0aXAuc2V0QXR0cmlidXRlKCdkYXRhLXR1aS1ob3N0LWRpcmVjdGlvbicsIGRpcmVjdGlvbik7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjYWxjdWxhdGVNb2JpbGVDb29yZGluYXRlcygpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgaG9zdFJlY3QgPSB0aGlzLmhpbnQuZ2V0RWxlbWVudENsaWVudFJlY3QoKTtcbiAgICAgICAgY29uc3QgcG9ydGFsUmVjdCA9IHRoaXMuaGludHNIb3N0LmNsaWVudFJlY3Q7XG4gICAgICAgIGNvbnN0IHRvb2x0aXAgPSB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcbiAgICAgICAgY29uc3Qge3N0eWxlfSA9IHRvb2x0aXA7XG4gICAgICAgIGNvbnN0IHRvb2x0aXBSZWN0ID0gdG9vbHRpcC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICAgICAgY29uc3QgdmVydGljYWxUb3AgPSBob3N0UmVjdC50b3AgLSB0b29sdGlwUmVjdC5oZWlnaHQgLSBTUEFDRSAtIHBvcnRhbFJlY3QudG9wO1xuICAgICAgICBjb25zdCB2ZXJ0aWNhbEJvdHRvbSA9IGhvc3RSZWN0LmJvdHRvbSArIFNQQUNFIC0gcG9ydGFsUmVjdC50b3A7XG4gICAgICAgIGNvbnN0IHZlcnRpY2FsVG9wRml0ID1cbiAgICAgICAgICAgIHZlcnRpY2FsVG9wICsgcG9ydGFsUmVjdC50b3AgPiBTUEFDRSAmJlxuICAgICAgICAgICAgaG9zdFJlY3QudG9wIDwgdGhpcy53aW5kb3dSZWYuaW5uZXJIZWlnaHQ7XG4gICAgICAgIGNvbnN0IHZlcnRpY2FsQm90dG9tRml0ID1cbiAgICAgICAgICAgIGhvc3RSZWN0LmJvdHRvbSA+IDAgJiZcbiAgICAgICAgICAgIGhvc3RSZWN0LmJvdHRvbSArIDIgKiBTUEFDRSArIHRvb2x0aXBSZWN0LmhlaWdodCA8IHRoaXMud2luZG93UmVmLmlubmVySGVpZ2h0O1xuICAgICAgICBjb25zdCBkaXJlY3Rpb24gPVxuICAgICAgICAgICAgKHRoaXMuaGludC5kaXJlY3Rpb24uaW5jbHVkZXMoJ3RvcCcpICYmIHZlcnRpY2FsVG9wRml0KSB8fCAhdmVydGljYWxCb3R0b21GaXRcbiAgICAgICAgICAgICAgICA/ICd0b3AnXG4gICAgICAgICAgICAgICAgOiAnYm90dG9tJztcbiAgICAgICAgY29uc3QgYXR0ZW1wdGVkTGVmdCA9XG4gICAgICAgICAgICBwb3J0YWxSZWN0LmxlZnQgKyBob3N0UmVjdC5sZWZ0ICsgaG9zdFJlY3Qud2lkdGggLyAyIC0gdG9vbHRpcFJlY3Qud2lkdGggLyAyO1xuICAgICAgICBjb25zdCBsZWZ0ID0gTWF0aC5tYXgoXG4gICAgICAgICAgICBhdHRlbXB0ZWRMZWZ0ICsgdG9vbHRpcFJlY3Qud2lkdGggKyBTUEFDRSA+IHBvcnRhbFJlY3QucmlnaHRcbiAgICAgICAgICAgICAgICA/IHBvcnRhbFJlY3QucmlnaHQgLSBTUEFDRSAtIHRvb2x0aXBSZWN0LndpZHRoXG4gICAgICAgICAgICAgICAgOiBhdHRlbXB0ZWRMZWZ0LFxuICAgICAgICAgICAgU1BBQ0UgKiAyLFxuICAgICAgICApO1xuXG4gICAgICAgIHN0eWxlLmxlZnQgPSBweChsZWZ0KTtcbiAgICAgICAgc3R5bGUudG9wID0gZGlyZWN0aW9uID09PSAndG9wJyA/IHB4KHZlcnRpY2FsVG9wKSA6IHB4KHZlcnRpY2FsQm90dG9tKTtcblxuICAgICAgICBpZiAodGhpcy5hcnJvdykge1xuICAgICAgICAgICAgdGhpcy5hcnJvdy5uYXRpdmVFbGVtZW50LnN0eWxlLmxlZnQgPSBweChcbiAgICAgICAgICAgICAgICBob3N0UmVjdC5sZWZ0IDw9IFNQQUNFICogMiAmJiBob3N0UmVjdC53aWR0aCA+IEFSUk9XX09GRlNFVCAqIDJcbiAgICAgICAgICAgICAgICAgICAgPyBBUlJPV19PRkZTRVRcbiAgICAgICAgICAgICAgICAgICAgOiBob3N0UmVjdC5sZWZ0ICsgaG9zdFJlY3Qud2lkdGggLyAyIC0gbGVmdCAtIEFSUk9XX1NJWkUgLyAyLFxuICAgICAgICAgICAgKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRvb2x0aXAuc2V0QXR0cmlidXRlKCdkYXRhLXR1aS1ob3N0LWRpcmVjdGlvbicsIGRpcmVjdGlvbik7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzZXRPdmVyZmxvd1N0eWxlcygpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgaG9zdFJlY3QgPSB0aGlzLmhpbnQuZ2V0RWxlbWVudENsaWVudFJlY3QoKTtcbiAgICAgICAgY29uc3Qge3N0eWxlfSA9IHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50O1xuXG4gICAgICAgIHN0eWxlLnRvcCA9IHB4KGhvc3RSZWN0LnRvcCAtIHdpbmRvdy5pbm5lckhlaWdodCAtIFRPUF9QQURESU5HIC0gQk9SREVSX1dJRFRIKTtcbiAgICAgICAgc3R5bGUubGVmdCA9IHB4KGhvc3RSZWN0LmxlZnQgLSBMRUZUX1BBRERJTkcgLSBCT1JERVJfV0lEVEgpO1xuICAgICAgICBzdHlsZS53aWR0aCA9IHB4KGhvc3RSZWN0LndpZHRoICsgTEVGVF9QQURESU5HICogMiArIEJPUkRFUl9XSURUSCAqIDIpO1xuICAgIH1cbn1cbiJdfQ==
|