@dcl/asset-packs 2.5.10 → 2.5.11

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.
@@ -1,7 +1,8 @@
1
1
  import { IEngine } from '@dcl/ecs';
2
2
  import ReactEcs from '@dcl/react-ecs';
3
- export declare function DeleteStreamKeyConfirmation({ scaleFactor, engine, onCancel, }: {
3
+ export declare function DeleteStreamKeyConfirmation({ scaleFactor, engine, onCancel, onReset, }: {
4
4
  scaleFactor: number;
5
5
  engine: IEngine;
6
6
  onCancel(): void;
7
+ onReset(): void;
7
8
  }): ReactEcs.JSX.Element;
@@ -6,7 +6,7 @@ import { Error } from '../../Error';
6
6
  import { resetStreamKey } from '../api';
7
7
  import { getComponents } from '../../../definitions';
8
8
  import { state } from '../..';
9
- export function DeleteStreamKeyConfirmation({ scaleFactor, engine, onCancel, }) {
9
+ export function DeleteStreamKeyConfirmation({ scaleFactor, engine, onCancel, onReset, }) {
10
10
  const [isLoading, setIsLoading] = ReactEcs.useState(false);
11
11
  const [error, setError] = ReactEcs.useState('');
12
12
  const { VideoControlState } = getComponents(engine);
@@ -51,12 +51,11 @@ export function DeleteStreamKeyConfirmation({ scaleFactor, engine, onCancel, })
51
51
  }
52
52
  else {
53
53
  const videoControl = VideoControlState.getMutable(state.adminToolkitUiEntity);
54
- videoControl.streamKey = data?.streamingKey;
55
54
  videoControl.endsAt = data?.endsAt;
56
- onCancel();
55
+ onReset();
57
56
  }
58
57
  } }))),
59
58
  isLoading && ReactEcs.createElement(LoadingDots, { scaleFactor: scaleFactor, engine: engine }),
60
59
  error && ReactEcs.createElement(Error, { scaleFactor: scaleFactor, text: error })));
61
60
  }
62
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGVsZXRlU3RyZWFtS2V5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2FkbWluLXRvb2xraXQtdWkvVmlkZW9Db250cm9sL0xpdmVTdHJlYW0vRGVsZXRlU3RyZWFtS2V5LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQ3RDLE9BQU8sUUFBUSxFQUFFLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBRTFELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxjQUFjLENBQUE7QUFDckMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUMzQyxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sYUFBYSxDQUFBO0FBQ25DLE9BQU8sRUFBRSxjQUFjLEVBQW1CLE1BQU0sUUFBUSxDQUFBO0FBQ3hELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQTtBQUNwRCxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sT0FBTyxDQUFBO0FBRTdCLE1BQU0sVUFBVSwyQkFBMkIsQ0FBQyxFQUMxQyxXQUFXLEVBQ1gsTUFBTSxFQUNOLFFBQVEsR0FLVDtJQUNDLE1BQU0sQ0FBQyxTQUFTLEVBQUUsWUFBWSxDQUFDLEdBQUcsUUFBUSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQTtJQUMxRCxNQUFNLENBQUMsS0FBSyxFQUFFLFFBQVEsQ0FBQyxHQUFHLFFBQVEsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUE7SUFDL0MsTUFBTSxFQUFFLGlCQUFpQixFQUFFLEdBQUcsYUFBYSxDQUFDLE1BQU0sQ0FBQyxDQUFBO0lBRW5ELE9BQU8sQ0FDTCx1QkFBQyxRQUFRLElBQ1AsV0FBVyxFQUFFO1lBQ1gsU0FBUyxFQUFFLEdBQUcsR0FBRyxXQUFXO1lBQzVCLE9BQU8sRUFBRSxNQUFNO1lBQ2YsYUFBYSxF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USxFQUFFLENBQUE7b0JBQ1osQ0FBQztnQkFDSCxDQUFDLEdBQ0QsQ0FDSCxDQUNRO1FBQ1YsU0FBUyxJQUFJLHVCQUFDLFdBQVcsSUFBQyxXQUFXLEVBQUUsV0FBVyxFQUFFLE1BQU0sRUFBRSxNQUFNLEdBQUk7UUFDdEUsS0FBSyxJQUFJLHVCQUFDLEtBQUssSUFBQyxXQUFXLEVBQUUsV0FBVyxFQUFFLElBQUksRUFBRSxLQUFLLEdBQUksQ0FDakQsQ0FDWixDQUFBO0FBQ0gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElFbmdpbmUgfSBmcm9tICdAZGNsL2VjcydcbmltcG9ydCB7IENvbG9yNCB9IGZyb20gJ0BkY2wvZWNzLW1hdGgnXG5pbXBvcnQgUmVhY3RFY3MsIHsgVWlFbnRpdHksIExhYmVsIH0gZnJvbSAnQGRjbC9yZWFjdC1lY3MnXG5cbmltcG9ydCB7IEJ1dHRvbiB9IGZyb20gJy4uLy4uL0J1dHRvbidcbmltcG9ydCB7IExvYWRpbmdEb3RzIH0gZnJvbSAnLi4vLi4vTG9hZGluZydcbmltcG9ydCB7IEVycm9yIH0gZnJvbSAnLi4vLi4vRXJyb3InXG5pbXBvcnQgeyByZXNldFN0cmVhbUtleSwgcmV2b2tlU3RyZWFtS2V5IH0gZnJvbSAnLi4vYXBpJ1xuaW1wb3J0IHsgZ2V0Q29tcG9uZW50cyB9IGZyb20gJy4uLy4uLy4uL2RlZmluaXRpb25zJ1xuaW1wb3J0IHsgc3RhdGUgfSBmcm9tICcuLi8uLidcblxuZXhwb3J0IGZ1bmN0aW9uIERlbGV0ZVN0cmVhbUtleUNvbmZpcm1hdGlvbih7XG4gIHNjYWxlRmFjdG9yLFxuICBlbmdpbmUsXG4gIG9uQ2FuY2VsLFxufToge1xuICBzY2FsZUZhY3RvcjogbnVtYmVyXG4gIGVuZ2luZTogSUVuZ2luZVxuICBvbkNhbmNlbCgpOiB2b2lkXG59KSB7XG4gIGNvbnN0IFtpc0xvYWRpbmcsIHNldElzTG9hZGluZ10gPSBSZWFjdEVjcy51c2VTdGF0ZShmYWxzZSlcbiAgY29uc3QgW2Vycm9yLCBzZXRFcnJvcl0gPSBSZWFjdEVjcy51c2VTdGF0ZSgnJylcbiAgY29uc3QgeyBWaWRlb0NvbnRyb2xTdGF0ZSB9ID0gZ2V0Q29tcG9uZW50cyhlbmdpbmUpXG5cbiAgcmV0dXJuIChcbiAgICA8VWlFbnRpdHlcbiAgICAgIHVpVHJhbnNmb3JtPXt7XG4gICAgICAgIG1pbkhlaWdodDogNDc5ICogc2NhbGVGYWN0b3IsXG4gICAgICAgIGRpc3BsYXk6ICdmbGV4JyxcbiAgICAgICAgZmxleERpcmVjdGlvbjogJ2NvbHVtbicsXG4gICAgICAgIGFsaWduSXRlbXM6ICdjZW50ZXInLFxuICAgICAgICBqdXN0aWZ5Q29udGVudDogJ2NlbnRlcicsXG4gICAgICAgIGJvcmRlclJhZGl1czogMTIgKiBzY2FsZUZhY3RvcixcbiAgICAgIH19XG4gICAgPlxuICAgICAgPExhYmVsXG4gICAgICAgIHZhbHVlPVwiPGI+QXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIHJlc2V0IHlvdXIgU3RyZWFtIEtleT88L2I+XCJcbiAgICAgICAgZm9udFNpemU9ezE2ICogc2NhbGVGYWN0b3J9XG4gICAgICAgIGNvbG9yPXtDb2xvcjQuZnJvbUhleFN0cmluZygnI0ZDRkNGQycpfVxuICAgICAgLz5cblxuICAgICAgPExhYmVsXG4gICAgICAgIHZhbHVlPVwiQWN0aXZlIHN0cmVhbXMgdXNpbmcgdGhpcyBzdHJlYW0ga2V5IHdpbGwgYmUgZGlzY29ubmVjdGVkLlwiXG4gICAgICAgIGZvbnRTaXplPXsxNCAqIHNjYWxlRmFjdG9yfVxuICAgICAgICBjb2xvcj17Q29sb3I0LmZyb21IZXhTdHJpbmcoJyNGRkZGRkZCMicpfVxuICAgICAgICB1aVRyYW5zZm9ybT17e1xuICAgICAgICAgIG1hcmdpbjogeyB0b3A6IDYgKiBzY2FsZUZhY3RvciwgYm90dG9tOiAyNCAqIHNjYWxlRmFjdG9yIH0sXG4gICAgICAgIH19XG4gICAgICAvPlxuXG4gICAgICA8VWlFbnRpdHlcbiAgICAgICAgdWlUcmFuc2Zvcm09e3tcbiAgICAgICAgICBkaXNwbGF5OiAnZmxleCcsXG4gICAgICAgICAgZmxleERpcmVjdGlvbjogJ3JvdycsXG4gICAgICAgICAganVzdGlmeUNvbnRlbnQ6ICdjZW50ZXInLFxuICAgICAgICAgIGFsaWduSXRlbXM6ICdjZW50ZXInLFxuICAgICAgICAgIHdpZHRoOiAnMTAwJScsXG4gICAgICAgIH19XG4gICAgICA+XG4gICAgICAgIHshaXNMb2FkaW5nICYmIChcbiAgICAgICAgICA8QnV0dG9uXG4gICAgICAgICAgICBpZD1cInN0cmVhbV9rZXlfY2FuY2VsX3JlbW92ZVwiXG4gICAgICAgICAgICB2YWx1ZT1cIjxiPkNhbmNlbDwvYj5cIlxuICAgICAgICAgICAgdmFyaWFudD1cInByaW1hcnlcIlxuICAgICAgICAgICAgZm9udFNpemU9ezE4ICogc2NhbGVGYWN0b3J9XG4gICAgICAgICAgICBjb2xvcj17Q29sb3I0LkJsYWNrKCl9XG4gICAgICAgICAgICB1aVRyYW5zZm9ybT17e1xuICAgICAgICAgICAgICB3aWR0aDogOTAgKiBzY2FsZUZhY3RvcixcbiAgICAgICAgICAgICAgaGVpZ2h0OiA0MCAqIHNjYWxlRmFjdG9yLFxuICAgICAgICAgICAgICBkaXNwbGF5OiAnZmxleCcsXG4gICAgICAgICAgICAgIGp1c3RpZnlDb250ZW50OiAnY2VudGVyJyxcbiAgICAgICAgICAgICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXG4gICAgICAgICAgICAgIG1hcmdpbjogeyByaWdodDogMzAgKiBzY2FsZUZhY3RvciwgbGVmdDogMzAgKiBzY2FsZUZhY3RvciB9LFxuICAgICAgICAgICAgfX1cbiAgICAgICAgICAgIG9uTW91c2VEb3duPXsoKSA9PiBvbkNhbmNlbCgpfVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG4gICAgICAgIHshaXNMb2FkaW5nICYmIChcbiAgICAgICAgICA8QnV0dG9uXG4gICAgICAgICAgICBpZD1cInN0cmVhbV9rZXlfY29uZmlybV9yZW1vdmVcIlxuICAgICAgICAgICAgdmFsdWU9eyc8Yj5SZXNldDwvYj4nfVxuICAgICAgICAgICAgdmFyaWFudD1cInByaW1hcnlcIlxuICAgICAgICAgICAgZm9udFNpemU9ezE4ICogc2NhbGVGYWN0b3J9XG4gICAgICAgICAgICBjb2xvcj17Q29sb3I0LldoaXRlKCl9XG4gICAgICAgICAgICB1aVRyYW5zZm9ybT17e1xuICAgICAgICAgICAgICBwYWRkaW5nOiA4ICogc2NhbGVGYWN0b3IsXG4gICAgICAgICAgICAgIGhlaWdodDogNDAgKiBzY2FsZUZhY3RvcixcbiAgICAgICAgICAgICAganVzdGlmeUNvbnRlbnQ6ICdjZW50ZXInLFxuICAgICAgICAgICAgICBhbGlnbkl0ZW1zOiAnY2VudGVyJyxcbiAgICAgICAgICAgIH19XG4gICAgICAgICAgICB1aUJhY2tncm91bmQ9e3sgY29sb3I6IENvbG9yNC5mcm9tSGV4U3RyaW5nKCcjRkIzQjNCJykgfX1cbiAgICAgICAgICAgIG9uTW91c2VEb3duPXthc3luYyAoKSA9PiB7XG4gICAgICAgICAgICAgIHNldElzTG9hZGluZyh0cnVlKVxuICAgICAgICAgICAgICBjb25zdCBbZXJyb3IsIGRhdGFdID0gYXdhaXQgcmVzZXRTdHJlYW1LZXkoKVxuICAgICAgICAgICAgICBpZiAoZXJyb3IpIHtcbiAgICAgICAgICAgICAgICBzZXRFcnJvcihlcnJvcilcbiAgICAgICAgICAgICAgICBzZXRJc0xvYWRpbmcoZmFsc2UpXG4gICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgY29uc3QgdmlkZW9Db250cm9sID0gVmlkZW9Db250cm9sU3RhdGUuZ2V0TXV0YWJsZShzdGF0ZS5hZG1pblRvb2xraXRVaUVudGl0eSlcbiAgICAgICAgICAgICAgICB2aWRlb0NvbnRyb2wuc3RyZWFtS2V5ID0gZGF0YT8uc3RyZWFtaW5nS2V5XG4gICAgICAgICAgICAgICAgdmlkZW9Db250cm9sLmVuZHNBdCA9IGRhdGE/LmVuZHNBdFxuXG4gICAgICAgICAgICAgICAgLy8gcmVtb3ZlIHRoaXMgcGFnZSBzbyBpdCBjYW4gZ2VuZXJhdGUgYSBuZXcga2V5IGlmIHRoZSB1c2VyIHdhbnRzXG4gICAgICAgICAgICAgICAgb25DYW5jZWwoKVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9fVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG4gICAgICA8L1VpRW50aXR5PlxuICAgICAge2lzTG9hZGluZyAmJiA8TG9hZGluZ0RvdHMgc2NhbGVGYWN0b3I9e3NjYWxlRmFjdG9yfSBlbmdpbmU9e2VuZ2luZX0gLz59XG4gICAgICB7ZXJyb3IgJiYgPEVycm9yIHNjYWxlRmFjdG9yPXtzY2FsZUZhY3Rvcn0gdGV4dD17ZXJyb3J9IC8+fVxuICAgIDwvVWlFbnRpdHk+XG4gIClcbn1cbiJdfQ==
61
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGVsZXRlU3RyZWFtS2V5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2FkbWluLXRvb2xraXQtdWkvVmlkZW9Db250cm9sL0xpdmVTdHJlYW0vRGVsZXRlU3RyZWFtS2V5LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQ3RDLE9BQU8sUUFBUSxFQUFFLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBRTFELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxjQUFjLENBQUE7QUFDckMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUMzQyxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sYUFBYSxDQUFBO0FBQ25DLE9BQU8sRUFBRSxjQUFjLEVBQW1CLE1BQU0sUUFBUSxDQUFBO0FBQ3hELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQTtBQUNwRCxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sT0FBTyxDQUFBO0FBRTdCLE1BQU0sVUFBVSwyQkFBMkIsQ0FBQyxFQUMxQyxXQUFXLEVBQ1gsTUFBTSxFQUNOLFFBQVEsRUFDUixPQUFPLEdBTVI7SUFDQyxNQUFNLENBQUMsU0FBUyxFQUFFLFlBQVksQ0FBQyxHQUFHLFFBQVEsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUE7SUFDMUQsTUFBTSxDQUFDLEtBQUssRUFBRSxRQUFRLENBQUMsR0FBRyxRQUFRLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxDQUFBO0lBQy9DLE1BQU0sRUFBRSxpQkFBaUIsRUFBRSxHQUFHLGFBQWEsQ0FBQyxNQUFNLENBQUMsQ0FBQTtJQUVuRCxPQUFPLENBQ0wsdUJBQUMsUUFBUSxJQUNQLFdBQVcsRUFBRTtZQUNYLFNBQVMsRUFBRSxHQUFHLEdBQUcsV0FBVztZQUM1QixPQUFPLEVBQUUsTUFBTTtZ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RCxDQUNILENBQ1E7UUFDVixTQUFTLElBQUksdUJBQUMsV0FBVyxJQUFDLFdBQVcsRUFBRSxXQUFXLEVBQUUsTUFBTSxFQUFFLE1BQU0sR0FBSTtRQUN0RSxLQUFLLElBQUksdUJBQUMsS0FBSyxJQUFDLFdBQVcsRUFBRSxXQUFXLEVBQUUsSUFBSSxFQUFFLEtBQUssR0FBSSxDQUNqRCxDQUNaLENBQUE7QUFDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSUVuZ2luZSB9IGZyb20gJ0BkY2wvZWNzJ1xuaW1wb3J0IHsgQ29sb3I0IH0gZnJvbSAnQGRjbC9lY3MtbWF0aCdcbmltcG9ydCBSZWFjdEVjcywgeyBVaUVudGl0eSwgTGFiZWwgfSBmcm9tICdAZGNsL3JlYWN0LWVjcydcblxuaW1wb3J0IHsgQnV0dG9uIH0gZnJvbSAnLi4vLi4vQnV0dG9uJ1xuaW1wb3J0IHsgTG9hZGluZ0RvdHMgfSBmcm9tICcuLi8uLi9Mb2FkaW5nJ1xuaW1wb3J0IHsgRXJyb3IgfSBmcm9tICcuLi8uLi9FcnJvcidcbmltcG9ydCB7IHJlc2V0U3RyZWFtS2V5LCByZXZva2VTdHJlYW1LZXkgfSBmcm9tICcuLi9hcGknXG5pbXBvcnQgeyBnZXRDb21wb25lbnRzIH0gZnJvbSAnLi4vLi4vLi4vZGVmaW5pdGlvbnMnXG5pbXBvcnQgeyBzdGF0ZSB9IGZyb20gJy4uLy4uJ1xuXG5leHBvcnQgZnVuY3Rpb24gRGVsZXRlU3RyZWFtS2V5Q29uZmlybWF0aW9uKHtcbiAgc2NhbGVGYWN0b3IsXG4gIGVuZ2luZSxcbiAgb25DYW5jZWwsXG4gIG9uUmVzZXQsXG59OiB7XG4gIHNjYWxlRmFjdG9yOiBudW1iZXJcbiAgZW5naW5lOiBJRW5naW5lXG4gIG9uQ2FuY2VsKCk6IHZvaWRcbiAgb25SZXNldCgpOiB2b2lkXG59KSB7XG4gIGNvbnN0IFtpc0xvYWRpbmcsIHNldElzTG9hZGluZ10gPSBSZWFjdEVjcy51c2VTdGF0ZShmYWxzZSlcbiAgY29uc3QgW2Vycm9yLCBzZXRFcnJvcl0gPSBSZWFjdEVjcy51c2VTdGF0ZSgnJylcbiAgY29uc3QgeyBWaWRlb0NvbnRyb2xTdGF0ZSB9ID0gZ2V0Q29tcG9uZW50cyhlbmdpbmUpXG5cbiAgcmV0dXJuIChcbiAgICA8VWlFbnRpdHlcbiAgICAgIHVpVHJhbnNmb3JtPXt7XG4gICAgICAgIG1pbkhlaWdodDogNDc5ICogc2NhbGVGYWN0b3IsXG4gICAgICAgIGRpc3BsYXk6ICdmbGV4JyxcbiAgICAgICAgZmxleERpcmVjdGlvbjogJ2NvbHVtbicsXG4gICAgICAgIGFsaWduSXRlbXM6ICdjZW50ZXInLFxuICAgICAgICBqdXN0aWZ5Q29udGVudDogJ2NlbnRlcicsXG4gICAgICAgIGJvcmRlclJhZGl1czogMTIgKiBzY2FsZUZhY3RvcixcbiAgICAgIH19XG4gICAgPlxuICAgICAgPExhYmVsXG4gICAgICAgIHZhbHVlPVwiPGI+QXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIHJlc2V0IHlvdXIgU3RyZWFtIEtleT88L2I+XCJcbiAgICAgICAgZm9udFNpemU9ezE2ICogc2NhbGVGYWN0b3J9XG4gICAgICAgIGNvbG9yPXtDb2xvcjQuZnJvbUhleFN0cmluZygnI0ZDRkNGQycpfVxuICAgICAgLz5cblxuICAgICAgPExhYmVsXG4gICAgICAgIHZhbHVlPVwiQWN0aXZlIHN0cmVhbXMgdXNpbmcgdGhpcyBzdHJlYW0ga2V5IHdpbGwgYmUgZGlzY29ubmVjdGVkLlwiXG4gICAgICAgIGZvbnRTaXplPXsxNCAqIHNjYWxlRmFjdG9yfVxuICAgICAgICBjb2xvcj17Q29sb3I0LmZyb21IZXhTdHJpbmcoJyNGRkZGRkZCMicpfVxuICAgICAgICB1aVRyYW5zZm9ybT17e1xuICAgICAgICAgIG1hcmdpbjogeyB0b3A6IDYgKiBzY2FsZUZhY3RvciwgYm90dG9tOiAyNCAqIHNjYWxlRmFjdG9yIH0sXG4gICAgICAgIH19XG4gICAgICAvPlxuXG4gICAgICA8VWlFbnRpdHlcbiAgICAgICAgdWlUcmFuc2Zvcm09e3tcbiAgICAgICAgICBkaXNwbGF5OiAnZmxleCcsXG4gICAgICAgICAgZmxleERpcmVjdGlvbjogJ3JvdycsXG4gICAgICAgICAganVzdGlmeUNvbnRlbnQ6ICdjZW50ZXInLFxuICAgICAgICAgIGFsaWduSXRlbXM6ICdjZW50ZXInLFxuICAgICAgICAgIHdpZHRoOiAnMTAwJScsXG4gICAgICAgIH19XG4gICAgICA+XG4gICAgICAgIHshaXNMb2FkaW5nICYmIChcbiAgICAgICAgICA8QnV0dG9uXG4gICAgICAgICAgICBpZD1cInN0cmVhbV9rZXlfY2FuY2VsX3JlbW92ZVwiXG4gICAgICAgICAgICB2YWx1ZT1cIjxiPkNhbmNlbDwvYj5cIlxuICAgICAgICAgICAgdmFyaWFudD1cInByaW1hcnlcIlxuICAgICAgICAgICAgZm9udFNpemU9ezE4ICogc2NhbGVGYWN0b3J9XG4gICAgICAgICAgICBjb2xvcj17Q29sb3I0LkJsYWNrKCl9XG4gICAgICAgICAgICB1aVRyYW5zZm9ybT17e1xuICAgICAgICAgICAgICB3aWR0aDogOTAgKiBzY2FsZUZhY3RvcixcbiAgICAgICAgICAgICAgaGVpZ2h0OiA0MCAqIHNjYWxlRmFjdG9yLFxuICAgICAgICAgICAgICBkaXNwbGF5OiAnZmxleCcsXG4gICAgICAgICAgICAgIGp1c3RpZnlDb250ZW50OiAnY2VudGVyJyxcbiAgICAgICAgICAgICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXG4gICAgICAgICAgICAgIG1hcmdpbjogeyByaWdodDogMzAgKiBzY2FsZUZhY3RvciwgbGVmdDogMzAgKiBzY2FsZUZhY3RvciB9LFxuICAgICAgICAgICAgfX1cbiAgICAgICAgICAgIG9uTW91c2VEb3duPXsoKSA9PiBvbkNhbmNlbCgpfVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG4gICAgICAgIHshaXNMb2FkaW5nICYmIChcbiAgICAgICAgICA8QnV0dG9uXG4gICAgICAgICAgICBpZD1cInN0cmVhbV9rZXlfY29uZmlybV9yZW1vdmVcIlxuICAgICAgICAgICAgdmFsdWU9eyc8Yj5SZXNldDwvYj4nfVxuICAgICAgICAgICAgdmFyaWFudD1cInByaW1hcnlcIlxuICAgICAgICAgICAgZm9udFNpemU9ezE4ICogc2NhbGVGYWN0b3J9XG4gICAgICAgICAgICBjb2xvcj17Q29sb3I0LldoaXRlKCl9XG4gICAgICAgICAgICB1aVRyYW5zZm9ybT17e1xuICAgICAgICAgICAgICBwYWRkaW5nOiA4ICogc2NhbGVGYWN0b3IsXG4gICAgICAgICAgICAgIGhlaWdodDogNDAgKiBzY2FsZUZhY3RvcixcbiAgICAgICAgICAgICAganVzdGlmeUNvbnRlbnQ6ICdjZW50ZXInLFxuICAgICAgICAgICAgICBhbGlnbkl0ZW1zOiAnY2VudGVyJyxcbiAgICAgICAgICAgIH19XG4gICAgICAgICAgICB1aUJhY2tncm91bmQ9e3sgY29sb3I6IENvbG9yNC5mcm9tSGV4U3RyaW5nKCcjRkIzQjNCJykgfX1cbiAgICAgICAgICAgIG9uTW91c2VEb3duPXthc3luYyAoKSA9PiB7XG4gICAgICAgICAgICAgIHNldElzTG9hZGluZyh0cnVlKVxuICAgICAgICAgICAgICBjb25zdCBbZXJyb3IsIGRhdGFdID0gYXdhaXQgcmVzZXRTdHJlYW1LZXkoKVxuICAgICAgICAgICAgICBpZiAoZXJyb3IpIHtcbiAgICAgICAgICAgICAgICBzZXRFcnJvcihlcnJvcilcbiAgICAgICAgICAgICAgICBzZXRJc0xvYWRpbmcoZmFsc2UpXG4gICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgY29uc3QgdmlkZW9Db250cm9sID0gVmlkZW9Db250cm9sU3RhdGUuZ2V0TXV0YWJsZShzdGF0ZS5hZG1pblRvb2xraXRVaUVudGl0eSlcbiAgICAgICAgICAgICAgICB2aWRlb0NvbnRyb2wuZW5kc0F0ID0gZGF0YT8uZW5kc0F0XG4gICAgICAgICAgICAgICAgb25SZXNldCgpXG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH19XG4gICAgICAgICAgLz5cbiAgICAgICAgKX1cbiAgICAgIDwvVWlFbnRpdHk+XG4gICAgICB7aXNMb2FkaW5nICYmIDxMb2FkaW5nRG90cyBzY2FsZUZhY3Rvcj17c2NhbGVGYWN0b3J9IGVuZ2luZT17ZW5naW5lfSAvPn1cbiAgICAgIHtlcnJvciAmJiA8RXJyb3Igc2NhbGVGYWN0b3I9e3NjYWxlRmFjdG9yfSB0ZXh0PXtlcnJvcn0gLz59XG4gICAgPC9VaUVudGl0eT5cbiAgKVxufVxuIl19
@@ -1,6 +1,7 @@
1
1
  import { IEngine } from '@dcl/ecs';
2
2
  import ReactEcs from '@dcl/react-ecs';
3
- export declare function GenerateStreamKey({ scaleFactor, engine, }: {
3
+ export declare function GenerateStreamKey({ scaleFactor, engine, onGenerate, }: {
4
4
  scaleFactor: number;
5
5
  engine: IEngine;
6
+ onGenerate: () => void;
6
7
  }): ReactEcs.JSX.Element;
@@ -6,7 +6,7 @@ import { generateStreamKey } from '../api';
6
6
  import { LoadingDots } from '../../Loading';
7
7
  import { getComponents } from '../../../definitions';
8
8
  import { state } from '../..';
9
- export function GenerateStreamKey({ scaleFactor, engine, }) {
9
+ export function GenerateStreamKey({ scaleFactor, engine, onGenerate, }) {
10
10
  const [loading, setLoading] = ReactEcs.useState(false);
11
11
  const [error, setError] = ReactEcs.useState('');
12
12
  const { VideoControlState } = getComponents(engine);
@@ -32,10 +32,10 @@ export function GenerateStreamKey({ scaleFactor, engine, }) {
32
32
  }
33
33
  else if (data) {
34
34
  const videoControl = VideoControlState.getMutable(state.adminToolkitUiEntity);
35
- videoControl.streamKey = data.streamingKey;
36
35
  videoControl.endsAt = data.endsAt;
36
+ onGenerate();
37
37
  }
38
38
  } })),
39
39
  error && (ReactEcs.createElement(Error, { scaleFactor: scaleFactor, text: error, uiTransform: { margin: { top: 16 * scaleFactor } } }))))));
40
40
  }
41
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiR2VuZXJhdGVTdHJlYW1LZXkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYWRtaW4tdG9vbGtpdC11aS9WaWRlb0NvbnRyb2wvTGl2ZVN0cmVhbS9HZW5lcmF0ZVN0cmVhbUtleS50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUV0QyxPQUFPLFFBQVEsRUFBRSxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUMxRCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sY0FBYyxDQUFBO0FBQ3JDLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxhQUFhLENBQUE7QUFDbkMsT0FBTyxFQUFFLGlCQUFpQixFQUFnQixNQUFNLFFBQVEsQ0FBQTtBQUN4RCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQzNDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQTtBQUNwRCxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sT0FBTyxDQUFBO0FBRTdCLE1BQU0sVUFBVSxpQkFBaUIsQ0FBQyxFQUNoQyxXQUFXLEVBQ1gsTUFBTSxHQUlQO0lBQ0MsTUFBTSxDQUFDLE9BQU8sRUFBRSxVQUFVLENBQUMsR0FBRyxRQUFRLENBQUMsUUFBUSxDQUFVLEtBQUssQ0FBQyxDQUFBO0lBQy9ELE1BQU0sQ0FBQyxLQUFLLEVBQUUsUUFBUSxDQUFDLEdBQUcsUUFBUSxDQUFDLFFBQVEsQ0FBUyxFQUFFLENBQUMsQ0FBQTtJQUN2RCxNQUFNLEVBQUUsaUJBQWlCLEVBQUUsR0FBRyxhQUFhLENBQUMsTUFBTSxDQUFDLENBQUE7SUFFbkQsT0FBTyxDQUNMLHVCQUFDLFFBQVEsSUFDUCxXQUFXLEVBQUU7WUFDWCxLQUFLLEVBQUUsTUFBTTtZQUNiLE1BQU0sRUFBRSxHQUFHLEdBQUcsV0FBVztZQUN6QixjQUFjLEVBQUUsUUFBUTtZQUN4QixVQUFVLEVBQUUsUUFBUTtTQUNyQixJQUVBLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FDVCx1QkFBQyxRQUFRLElBQUMsV0FBVyxFQUFFLEVBQUUsYUFBYSxFQUFFLFFBQVEsRUFBRTtRQUNoRCx1QkFBQyxXQUFXLElBQUMsV0FBVyxFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUUsTUFBTSxHQUFJO1FBQ3pELHVCQUFDLEtBQUssSUFDSixLQUFLLEVBQUMsNEJBQTRCLEVBQ2xDLEtBQUssRUFBRSxNQUFNLENBQUMsYUFBYSxDQUFDLFNBQVMsQ0FBQyxFQUN0QyxRQUFRLEVBQUUsRUFBRSxHQUFHLFdBQVcsRUFDMUIsV0FBVyxFQUFFLEVBQUUsTUFBTSxFQUFFLEVBQUUsR0FBRyxFQUFFLEVBQUUsR0FBRyxXQUFXLEVBQUUsRUFBRSxHQUNsRCxDQUNPLENBQ1osQ0FBQyxDQUFDLENBQUMsQ0FDRix1QkFBQyxRQUFRLElBQUMsV0FBVyxFQUFFLEVBQUUsYUFBYSxFQUFFLFFBQVEsRUFBRTtRQUNoRCx1QkFBQyxRQUFRLElBQUMsV0FBVyxFQUFFLEVBQUUsY0FBYyxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFO1lBQ2hFLHVCQUFDLE1BQU0sSUFDTCxFQUFFLEVBQUMsaUNBQWlDLEVBQ3BDLEtBQUssRUFBQyx1QkFBdUIsRUFDN0IsUUFBUSxFQUFFLEVBQUUsR0FBRyxXQUFXLEVBQzFCLFdBQVcsRUFBRTtvQkFDWCxNQUFNLEVBQUUsRUFBRSxHQUFHLFdBQVc7b0JBQ3hCLE9BQU8sRUFBRSxFQUFFLEdBQUcsV0FBVztvQkFDekIsTUFBTSxFQUFFLEVBQUUsTUFBTSxFQUFFLEVBQUUsR0FBRyxXQUFXLEVBQUU7aUJBQ3JDLEVBQ0QsV0FBVyxFQUFFLEtBQUssSUFBSSxFQUFFO29CQUN0QixVQUFVLENBQUMsSUFBSSxDQUFDLENBQUE7b0JBQ2hCLE1BQU0sQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLEdBQUcsTUFBTSxpQkFBaUIsRUFBRSxDQUFBO29CQUMvQyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUE7b0JBQ2pCLElBQUksS0FBSyxFQUFFLENBQUM7d0JBQ1YsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFBO29CQUNqQixDQUFDO3lCQUFNLElBQUksSUFBSSxFQUFFLENBQUM7d0JBQ2hCLE1BQU0sWUFBWSxHQUFHLGlCQUFpQixDQUFDLFVBQVUsQ0FDL0MsS0FBSyxDQUFDLG9CQUFvQixDQUMzQixDQUFBO3dCQUNELFlBQVksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQTt3QkFDMUMsWUFBWSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFBO29CQUNuQyxDQUFDO2dCQUNILENBQUMsR0FDRCxDQUNPO1FBQ1YsS0FBSyxJQUFJLENBQ1IsdUJBQUMsS0FBSyxJQUNKLFdBQVcsRUFBRSxXQUFXLEVBQ3hCLElBQUksRUFBRSxLQUFLLEVBQ1gsV0FBVyxFQUFFLEVBQUUsTUFBTSxFQUFFLEVBQUUsR0FBRyxFQUFFLEVBQUUsR0FBRyxXQUFXLEVBQUUsRUFBRSxHQUNsRCxDQUNILENBQ1EsQ0FDWixDQUNRLENBQ1osQ0FBQTtBQUNILENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb2xvcjQgfSBmcm9tICdAZGNsL3Nkay9tYXRoJ1xuaW1wb3J0IHsgSUVuZ2luZSB9IGZyb20gJ0BkY2wvZWNzJ1xuaW1wb3J0IFJlYWN0RWNzLCB7IFVpRW50aXR5LCBMYWJlbCB9IGZyb20gJ0BkY2wvcmVhY3QtZWNzJ1xuaW1wb3J0IHsgQnV0dG9uIH0gZnJvbSAnLi4vLi4vQnV0dG9uJ1xuaW1wb3J0IHsgRXJyb3IgfSBmcm9tICcuLi8uLi9FcnJvcidcbmltcG9ydCB7IGdlbmVyYXRlU3RyZWFtS2V5LCBnZXRTdHJlYW1LZXkgfSBmcm9tICcuLi9hcGknXG5pbXBvcnQgeyBMb2FkaW5nRG90cyB9IGZyb20gJy4uLy4uL0xvYWRpbmcnXG5pbXBvcnQgeyBnZXRDb21wb25lbnRzIH0gZnJvbSAnLi4vLi4vLi4vZGVmaW5pdGlvbnMnXG5pbXBvcnQgeyBzdGF0ZSB9IGZyb20gJy4uLy4uJ1xuXG5leHBvcnQgZnVuY3Rpb24gR2VuZXJhdGVTdHJlYW1LZXkoe1xuICBzY2FsZUZhY3RvcixcbiAgZW5naW5lLFxufToge1xuICBzY2FsZUZhY3RvcjogbnVtYmVyXG4gIGVuZ2luZTogSUVuZ2luZVxufSkge1xuICBjb25zdCBbbG9hZGluZywgc2V0TG9hZGluZ10gPSBSZWFjdEVjcy51c2VTdGF0ZTxib29sZWFuPihmYWxzZSlcbiAgY29uc3QgW2Vycm9yLCBzZXRFcnJvcl0gPSBSZWFjdEVjcy51c2VTdGF0ZTxzdHJpbmc+KCcnKVxuICBjb25zdCB7IFZpZGVvQ29udHJvbFN0YXRlIH0gPSBnZXRDb21wb25lbnRzKGVuZ2luZSlcblxuICByZXR1cm4gKFxuICAgIDxVaUVudGl0eVxuICAgICAgdWlUcmFuc2Zvcm09e3tcbiAgICAgICAgd2lkdGg6ICcxMDAlJyxcbiAgICAgICAgaGVpZ2h0OiA0NjAgKiBzY2FsZUZhY3RvcixcbiAgICAgICAganVzdGlmeUNvbnRlbnQ6ICdjZW50ZXInLFxuICAgICAgICBhbGlnbkl0ZW1zOiAnY2VudGVyJyxcbiAgICAgIH19XG4gICAgPlxuICAgICAge2xvYWRpbmcgPyAoXG4gICAgICAgIDxVaUVudGl0eSB1aVRyYW5zZm9ybT17eyBmbGV4RGlyZWN0aW9uOiAnY29sdW1uJyB9fT5cbiAgICAgICAgICA8TG9hZGluZ0RvdHMgc2NhbGVGYWN0b3I9e3NjYWxlRmFjdG9yfSBlbmdpbmU9e2VuZ2luZX0gLz5cbiAgICAgICAgICA8TGFiZWxcbiAgICAgICAgICAgIHZhbHVlPVwiR2VuZXJhdGluZyB5b3VyIFN0cmVhbSBLZXlcIlxuICAgICAgICAgICAgY29sb3I9e0NvbG9yNC5mcm9tSGV4U3RyaW5nKCcjQTA5QkE4Jyl9XG4gICAgICAgICAgICBmb250U2l6ZT17MTYgKiBzY2FsZUZhY3Rvcn1cbiAgICAgICAgICAgIHVpVHJhbnNmb3JtPXt7IG1hcmdpbjogeyB0b3A6IDE2ICogc2NhbGVGYWN0b3IgfSB9fVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvVWlFbnRpdHk+XG4gICAgICApIDogKFxuICAgICAgICA8VWlFbnRpdHkgdWlUcmFuc2Zvcm09e3sgZmxleERpcmVjdGlvbjogJ2NvbHVtbicgfX0+XG4gICAgICAgICAgPFVpRW50aXR5IHVpVHJhbnNmb3JtPXt7IGp1c3RpZnlDb250ZW50OiAnY2VudGVyJywgd2lkdGg6ICcxMDAlJyB9fT5cbiAgICAgICAgICAgIDxCdXR0b25cbiAgICAgICAgICAgICAgaWQ9XCJ2aWRlb19jb250cm9sX2xpdmVfZ2VuZXJhdGVfa2V5XCJcbiAgICAgICAgICAgICAgdmFsdWU9XCI8Yj5HZXQgU3RyZWFtIEtleTwvYj5cIlxuICAgICAgICAgICAgICBmb250U2l6ZT17MTggKiBzY2FsZUZhY3Rvcn1cbiAgICAgICAgICAgICAgdWlUcmFuc2Zvcm09e3tcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDUyICogc2NhbGVGYWN0b3IsXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTYgKiBzY2FsZUZhY3RvcixcbiAgICAgICAgICAgICAgICBtYXJnaW46IHsgYm90dG9tOiAxNiAqIHNjYWxlRmFjdG9yIH1cbiAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgb25Nb3VzZURvd249e2FzeW5jICgpID0+IHtcbiAgICAgICAgICAgICAgICBzZXRMb2FkaW5nKHRydWUpXG4gICAgICAgICAgICAgICAgY29uc3QgW2Vycm9yLCBkYXRhXSA9IGF3YWl0IGdlbmVyYXRlU3RyZWFtS2V5KClcbiAgICAgICAgICAgICAgICBzZXRMb2FkaW5nKGZhbHNlKVxuICAgICAgICAgICAgICAgIGlmIChlcnJvcikge1xuICAgICAgICAgICAgICAgICAgc2V0RXJyb3IoZXJyb3IpXG4gICAgICAgICAgICAgICAgfSBlbHNlIGlmIChkYXRhKSB7XG4gICAgICAgICAgICAgICAgICBjb25zdCB2aWRlb0NvbnRyb2wgPSBWaWRlb0NvbnRyb2xTdGF0ZS5nZXRNdXRhYmxlKFxuICAgICAgICAgICAgICAgICAgICBzdGF0ZS5hZG1pblRvb2xraXRVaUVudGl0eSxcbiAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgIHZpZGVvQ29udHJvbC5zdHJlYW1LZXkgPSBkYXRhLnN0cmVhbWluZ0tleVxuICAgICAgICAgICAgICAgICAgdmlkZW9Db250cm9sLmVuZHNBdCA9IGRhdGEuZW5kc0F0XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICA8L1VpRW50aXR5PlxuICAgICAgICAgIHtlcnJvciAmJiAoXG4gICAgICAgICAgICA8RXJyb3JcbiAgICAgICAgICAgICAgc2NhbGVGYWN0b3I9e3NjYWxlRmFjdG9yfVxuICAgICAgICAgICAgICB0ZXh0PXtlcnJvcn1cbiAgICAgICAgICAgICAgdWlUcmFuc2Zvcm09e3sgbWFyZ2luOiB7IHRvcDogMTYgKiBzY2FsZUZhY3RvciB9IH19XG4gICAgICAgICAgICAvPlxuICAgICAgICAgICl9XG4gICAgICAgIDwvVWlFbnRpdHk+XG4gICAgICApfVxuICAgIDwvVWlFbnRpdHk+XG4gIClcbn1cbiJdfQ==
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiR2VuZXJhdGVTdHJlYW1LZXkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYWRtaW4tdG9vbGtpdC11aS9WaWRlb0NvbnRyb2wvTGl2ZVN0cmVhbS9HZW5lcmF0ZVN0cmVhbUtleS50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUV0QyxPQUFPLFFBQVEsRUFBRSxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUMxRCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sY0FBYyxDQUFBO0FBQ3JDLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxhQUFhLENBQUE7QUFDbkMsT0FBTyxFQUFFLGlCQUFpQixFQUFnQixNQUFNLFFBQVEsQ0FBQTtBQUN4RCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQzNDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQTtBQUNwRCxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sT0FBTyxDQUFBO0FBRTdCLE1BQU0sVUFBVSxpQkFBaUIsQ0FBQyxFQUNoQyxXQUFXLEVBQ1gsTUFBTSxFQUNOLFVBQVUsR0FLWDtJQUNDLE1BQU0sQ0FBQyxPQUFPLEVBQUUsVUFBVSxDQUFDLEdBQUcsUUFBUSxDQUFDLFFBQVEsQ0FBVSxLQUFLLENBQUMsQ0FBQTtJQUMvRCxNQUFNLENBQUMsS0FBSyxFQUFFLFFBQVEsQ0FBQyxHQUFHLFFBQVEsQ0FBQyxRQUFRLENBQVMsRUFBRSxDQUFDLENBQUE7SUFDdkQsTUFBTSxFQUFFLGlCQUFpQixFQUFFLEdBQUcsYUFBYSxDQUFDLE1BQU0sQ0FBQyxDQUFBO0lBRW5ELE9BQU8sQ0FDTCx1QkFBQyxRQUFRLElBQ1AsV0FBVyxFQUFFO1lBQ1gsS0FBSyxFQUFFLE1BQU07WUFDYixNQUFNLEVBQUUsR0FBRyxHQUFHLFdBQVc7WUFDekIsY0FBYyxFQUFFLFFBQVE7WUFDeEIsVUFBVSxFQUFFLFFBQVE7U0FDckIsSUFFQSxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQ1QsdUJBQUMsUUFBUSxJQUFDLFdBQVcsRUFBRSxFQUFFLGFBQWEsRUFBRSxRQUFRLEVBQUU7UUFDaEQsdUJBQUMsV0FBVyxJQUFDLFdBQVcsRUFBRSxXQUFXLEVBQUUsTUFBTSxFQUFFLE1BQU0sR0FBSTtRQUN6RCx1QkFBQyxLQUFLLElBQ0osS0FBSyxFQUFDLDRCQUE0QixFQUNsQyxLQUFLLEVBQUUsTUFBTSxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUMsRUFDdEMsUUFBUSxFQUFFLEVBQUUsR0FBRyxXQUFXLEVBQzFCLFdBQVcsRUFBRSxFQUFFLE1BQU0sRUFBRSxFQUFFLEdBQUcsRUFBRSxFQUFFLEdBQUcsV0FBVyxFQUFFLEVBQUUsR0FDbEQsQ0FDTyxDQUNaLENBQUMsQ0FBQyxDQUFDLENBQ0YsdUJBQUMsUUFBUSxJQUFDLFdBQVcsRUFBRSxFQUFFLGFBQWEsRUFBRSxRQUFRLEVBQUU7UUFDaEQsdUJBQUMsUUFBUSxJQUFDLFdBQVcsRUFBRSxFQUFFLGNBQWMsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRTtZQUNoRSx1QkFBQyxNQUFNLElBQ0wsRUFBRSxFQUFDLGlDQUFpQyxFQUNwQyxLQUFLLEVBQUMsdUJBQXVCLEVBQzdCLFFBQVEsRUFBRSxFQUFFLEdBQUcsV0FBVyxFQUMxQixXQUFXLEVBQUU7b0JBQ1gsTUFBTSxFQUFFLEVBQUUsR0FBRyxXQUFXO29CQUN4QixPQUFPLEVBQUUsRUFBRSxHQUFHLFdBQVc7b0JBQ3pCLE1BQU0sRUFBRSxFQUFFLE1BQU0sRUFBRSxFQUFFLEdBQUcsV0FBVyxFQUFFO2lCQUNyQyxFQUNELFdBQVcsRUFBRSxLQUFLLElBQUksRUFBRTtvQkFDdEIsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFBO29CQUNoQixNQUFNLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxHQUFHLE1BQU0saUJBQWlCLEVBQUUsQ0FBQTtvQkFDL0MsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFBO29CQUNqQixJQUFJLEtBQUssRUFBRSxDQUFDO3dCQUNWLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQTtvQkFDakIsQ0FBQzt5QkFBTSxJQUFJLElBQUksRUFBRSxDQUFDO3dCQUNoQixNQUFNLFlBQVksR0FBRyxpQkFBaUIsQ0FBQyxVQUFVLENBQy9DLEtBQUssQ0FBQyxvQkFBb0IsQ0FDM0IsQ0FBQTt3QkFDRCxZQUFZLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUE7d0JBQ2pDLFVBQVUsRUFBRSxDQUFBO29CQUNkLENBQUM7Z0JBQ0gsQ0FBQyxHQUNELENBQ087UUFDVixLQUFLLElBQUksQ0FDUix1QkFBQyxLQUFLLElBQ0osV0FBVyxFQUFFLFdBQVcsRUFDeEIsSUFBSSxFQUFFLEtBQUssRUFDWCxXQUFXLEVBQUUsRUFBRSxNQUFNLEVBQUUsRUFBRSxHQUFHLEVBQUUsRUFBRSxHQUFHLFdBQVcsRUFBRSxFQUFFLEdBQ2xELENBQ0gsQ0FDUSxDQUNaLENBQ1EsQ0FDWixDQUFBO0FBQ0gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbG9yNCB9IGZyb20gJ0BkY2wvc2RrL21hdGgnXG5pbXBvcnQgeyBJRW5naW5lIH0gZnJvbSAnQGRjbC9lY3MnXG5pbXBvcnQgUmVhY3RFY3MsIHsgVWlFbnRpdHksIExhYmVsIH0gZnJvbSAnQGRjbC9yZWFjdC1lY3MnXG5pbXBvcnQgeyBCdXR0b24gfSBmcm9tICcuLi8uLi9CdXR0b24nXG5pbXBvcnQgeyBFcnJvciB9IGZyb20gJy4uLy4uL0Vycm9yJ1xuaW1wb3J0IHsgZ2VuZXJhdGVTdHJlYW1LZXksIGdldFN0cmVhbUtleSB9IGZyb20gJy4uL2FwaSdcbmltcG9ydCB7IExvYWRpbmdEb3RzIH0gZnJvbSAnLi4vLi4vTG9hZGluZydcbmltcG9ydCB7IGdldENvbXBvbmVudHMgfSBmcm9tICcuLi8uLi8uLi9kZWZpbml0aW9ucydcbmltcG9ydCB7IHN0YXRlIH0gZnJvbSAnLi4vLi4nXG5cbmV4cG9ydCBmdW5jdGlvbiBHZW5lcmF0ZVN0cmVhbUtleSh7XG4gIHNjYWxlRmFjdG9yLFxuICBlbmdpbmUsXG4gIG9uR2VuZXJhdGUsXG59OiB7XG4gIHNjYWxlRmFjdG9yOiBudW1iZXJcbiAgZW5naW5lOiBJRW5naW5lXG4gIG9uR2VuZXJhdGU6ICgpID0+IHZvaWRcbn0pIHtcbiAgY29uc3QgW2xvYWRpbmcsIHNldExvYWRpbmddID0gUmVhY3RFY3MudXNlU3RhdGU8Ym9vbGVhbj4oZmFsc2UpXG4gIGNvbnN0IFtlcnJvciwgc2V0RXJyb3JdID0gUmVhY3RFY3MudXNlU3RhdGU8c3RyaW5nPignJylcbiAgY29uc3QgeyBWaWRlb0NvbnRyb2xTdGF0ZSB9ID0gZ2V0Q29tcG9uZW50cyhlbmdpbmUpXG5cbiAgcmV0dXJuIChcbiAgICA8VWlFbnRpdHlcbiAgICAgIHVpVHJhbnNmb3JtPXt7XG4gICAgICAgIHdpZHRoOiAnMTAwJScsXG4gICAgICAgIGhlaWdodDogNDYwICogc2NhbGVGYWN0b3IsXG4gICAgICAgIGp1c3RpZnlDb250ZW50OiAnY2VudGVyJyxcbiAgICAgICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXG4gICAgICB9fVxuICAgID5cbiAgICAgIHtsb2FkaW5nID8gKFxuICAgICAgICA8VWlFbnRpdHkgdWlUcmFuc2Zvcm09e3sgZmxleERpcmVjdGlvbjogJ2NvbHVtbicgfX0+XG4gICAgICAgICAgPExvYWRpbmdEb3RzIHNjYWxlRmFjdG9yPXtzY2FsZUZhY3Rvcn0gZW5naW5lPXtlbmdpbmV9IC8+XG4gICAgICAgICAgPExhYmVsXG4gICAgICAgICAgICB2YWx1ZT1cIkdlbmVyYXRpbmcgeW91ciBTdHJlYW0gS2V5XCJcbiAgICAgICAgICAgIGNvbG9yPXtDb2xvcjQuZnJvbUhleFN0cmluZygnI0EwOUJBOCcpfVxuICAgICAgICAgICAgZm9udFNpemU9ezE2ICogc2NhbGVGYWN0b3J9XG4gICAgICAgICAgICB1aVRyYW5zZm9ybT17eyBtYXJnaW46IHsgdG9wOiAxNiAqIHNjYWxlRmFjdG9yIH0gfX1cbiAgICAgICAgICAvPlxuICAgICAgICA8L1VpRW50aXR5PlxuICAgICAgKSA6IChcbiAgICAgICAgPFVpRW50aXR5IHVpVHJhbnNmb3JtPXt7IGZsZXhEaXJlY3Rpb246ICdjb2x1bW4nIH19PlxuICAgICAgICAgIDxVaUVudGl0eSB1aVRyYW5zZm9ybT17eyBqdXN0aWZ5Q29udGVudDogJ2NlbnRlcicsIHdpZHRoOiAnMTAwJScgfX0+XG4gICAgICAgICAgICA8QnV0dG9uXG4gICAgICAgICAgICAgIGlkPVwidmlkZW9fY29udHJvbF9saXZlX2dlbmVyYXRlX2tleVwiXG4gICAgICAgICAgICAgIHZhbHVlPVwiPGI+R2V0IFN0cmVhbSBLZXk8L2I+XCJcbiAgICAgICAgICAgICAgZm9udFNpemU9ezE4ICogc2NhbGVGYWN0b3J9XG4gICAgICAgICAgICAgIHVpVHJhbnNmb3JtPXt7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA1MiAqIHNjYWxlRmFjdG9yLFxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDE2ICogc2NhbGVGYWN0b3IsXG4gICAgICAgICAgICAgICAgbWFyZ2luOiB7IGJvdHRvbTogMTYgKiBzY2FsZUZhY3RvciB9XG4gICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgIG9uTW91c2VEb3duPXthc3luYyAoKSA9PiB7XG4gICAgICAgICAgICAgICAgc2V0TG9hZGluZyh0cnVlKVxuICAgICAgICAgICAgICAgIGNvbnN0IFtlcnJvciwgZGF0YV0gPSBhd2FpdCBnZW5lcmF0ZVN0cmVhbUtleSgpXG4gICAgICAgICAgICAgICAgc2V0TG9hZGluZyhmYWxzZSlcbiAgICAgICAgICAgICAgICBpZiAoZXJyb3IpIHtcbiAgICAgICAgICAgICAgICAgIHNldEVycm9yKGVycm9yKVxuICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoZGF0YSkge1xuICAgICAgICAgICAgICAgICAgY29uc3QgdmlkZW9Db250cm9sID0gVmlkZW9Db250cm9sU3RhdGUuZ2V0TXV0YWJsZShcbiAgICAgICAgICAgICAgICAgICAgc3RhdGUuYWRtaW5Ub29sa2l0VWlFbnRpdHksXG4gICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICB2aWRlb0NvbnRyb2wuZW5kc0F0ID0gZGF0YS5lbmRzQXRcbiAgICAgICAgICAgICAgICAgIG9uR2VuZXJhdGUoKVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgPC9VaUVudGl0eT5cbiAgICAgICAgICB7ZXJyb3IgJiYgKFxuICAgICAgICAgICAgPEVycm9yXG4gICAgICAgICAgICAgIHNjYWxlRmFjdG9yPXtzY2FsZUZhY3Rvcn1cbiAgICAgICAgICAgICAgdGV4dD17ZXJyb3J9XG4gICAgICAgICAgICAgIHVpVHJhbnNmb3JtPXt7IG1hcmdpbjogeyB0b3A6IDE2ICogc2NhbGVGYWN0b3IgfSB9fVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICApfVxuICAgICAgICA8L1VpRW50aXR5PlxuICAgICAgKX1cbiAgICA8L1VpRW50aXR5PlxuICApXG59XG4iXX0=
@@ -1,7 +1,6 @@
1
1
  import { DeepReadonlyObject, Entity, IEngine, PBVideoPlayer } from '@dcl/ecs';
2
2
  import ReactEcs from '@dcl/react-ecs';
3
- export declare function ShowStreamKey({ scaleFactor, engine, video, entity, onReset, streamKey, endsAt, }: {
4
- streamKey: string;
3
+ export declare function ShowStreamKey({ scaleFactor, engine, video, entity, onReset, endsAt, }: {
5
4
  endsAt: number;
6
5
  scaleFactor: number;
7
6
  engine: IEngine;
@@ -7,13 +7,43 @@ import { Button } from '../../Button';
7
7
  import { LIVEKIT_STREAM_SRC } from '../../../definitions';
8
8
  import { ERROR_ICON } from '../../Error';
9
9
  import { CONTENT_URL } from '../../constants';
10
+ import { getStreamKey } from '../api';
11
+ import { LoadingDots } from '../../Loading';
12
+ import { startTimeout, stopTimeout, startInterval, stopInterval } from '../../../timer';
13
+ import { state } from '../..';
10
14
  const STREAM_ICONS = {
11
15
  eyeShow: `${CONTENT_URL}/admin_toolkit/assets/icons/eye.png`,
12
16
  eyeHide: `${CONTENT_URL}/admin_toolkit/assets/icons/eye-off.png`,
13
17
  };
14
- export function ShowStreamKey({ scaleFactor, engine, video, entity, onReset, streamKey, endsAt, }) {
18
+ const AUTO_HIDE_DURATION_SECONDS = 30;
19
+ const STREAM_KEY_TIMEOUT_ACTION = 'video_control_stream_key_timeout';
20
+ const STREAM_KEY_INTERVAL_ACTION = 'video_control_stream_key_interval';
21
+ export function ShowStreamKey({ scaleFactor, engine, video, entity, onReset, endsAt, }) {
15
22
  const controls = createVideoPlayerControls(entity, engine);
16
23
  const [showStreamkey, setShowStreamkey] = ReactEcs.useState(false);
24
+ const [loading, setLoading] = ReactEcs.useState(false);
25
+ const [streamKey, setStreamKey] = ReactEcs.useState(undefined);
26
+ const [timeRemaining, setTimeRemaining] = ReactEcs.useState(AUTO_HIDE_DURATION_SECONDS);
27
+ ReactEcs.useEffect(() => {
28
+ if (streamKey) {
29
+ setTimeRemaining(AUTO_HIDE_DURATION_SECONDS);
30
+ startTimeout(state.adminToolkitUiEntity, STREAM_KEY_TIMEOUT_ACTION, AUTO_HIDE_DURATION_SECONDS, () => {
31
+ setStreamKey(undefined);
32
+ setShowStreamkey(false);
33
+ setTimeRemaining(0);
34
+ });
35
+ startInterval(state.adminToolkitUiEntity, STREAM_KEY_INTERVAL_ACTION, 0.1, () => {
36
+ setTimeRemaining((prev) => Math.max(0, prev - 0.1));
37
+ });
38
+ return () => {
39
+ stopTimeout(state.adminToolkitUiEntity, STREAM_KEY_TIMEOUT_ACTION);
40
+ stopInterval(state.adminToolkitUiEntity, STREAM_KEY_INTERVAL_ACTION);
41
+ };
42
+ }
43
+ else {
44
+ setTimeRemaining(0);
45
+ }
46
+ }, [streamKey]);
17
47
  return (ReactEcs.createElement(UiEntity, { uiTransform: { flexDirection: 'column' } },
18
48
  ReactEcs.createElement(Label, { value: "<b>RMTP Server<b>", color: Color4.White(), fontSize: 16 * scaleFactor, uiTransform: {
19
49
  margin: { top: 16 * scaleFactor, bottom: 8 * scaleFactor },
@@ -28,7 +58,14 @@ export function ShowStreamKey({ scaleFactor, engine, video, entity, onReset, str
28
58
  ReactEcs.createElement(Label, { value: "<b>Stream Key<b>", color: Color4.White(), fontSize: 16 * scaleFactor, uiTransform: {
29
59
  margin: { top: 16 * scaleFactor, bottom: 8 * scaleFactor },
30
60
  } }),
31
- ReactEcs.createElement(UiEntity, { uiTransform: {
61
+ loading ? (ReactEcs.createElement(UiEntity, { uiTransform: {
62
+ width: '100%',
63
+ margin: { bottom: 8 * scaleFactor, top: 8 * scaleFactor },
64
+ height: 42 * scaleFactor,
65
+ justifyContent: 'center',
66
+ alignItems: 'center',
67
+ } },
68
+ ReactEcs.createElement(LoadingDots, { scaleFactor: scaleFactor, engine: engine }))) : (ReactEcs.createElement(UiEntity, { uiTransform: {
32
69
  width: '100%',
33
70
  margin: { bottom: 8 * scaleFactor, top: 8 * scaleFactor },
34
71
  height: 42 * scaleFactor,
@@ -37,7 +74,7 @@ export function ShowStreamKey({ scaleFactor, engine, video, entity, onReset, str
37
74
  justifyContent: 'space-between',
38
75
  alignItems: 'center',
39
76
  }, uiBackground: { color: Color4.White() } },
40
- ReactEcs.createElement(Label, { uiTransform: { margin: { left: 16 * scaleFactor } }, fontSize: 16 * scaleFactor, value: `<b>${showStreamkey ? streamKey : '*********************************'}</b>`, color: Color4.fromHexString('#A09BA8') }),
77
+ ReactEcs.createElement(Label, { uiTransform: { margin: { left: 16 * scaleFactor } }, fontSize: 16 * scaleFactor, value: `<b>${showStreamkey && streamKey ? streamKey : '*********************************'}</b>`, color: Color4.fromHexString('#A09BA8') }),
41
78
  ReactEcs.createElement(UiEntity, { uiTransform: {
42
79
  width: 25 * scaleFactor,
43
80
  height: 25 * scaleFactor,
@@ -45,10 +82,33 @@ export function ShowStreamKey({ scaleFactor, engine, video, entity, onReset, str
45
82
  }, uiBackground: {
46
83
  textureMode: 'stretch',
47
84
  texture: {
48
- src: showStreamkey ? STREAM_ICONS.eyeHide : STREAM_ICONS.eyeShow,
85
+ src: showStreamkey && streamKey ? STREAM_ICONS.eyeHide : STREAM_ICONS.eyeShow,
49
86
  },
50
87
  color: Color4.Black(),
51
- }, onMouseDown: () => setShowStreamkey(!showStreamkey) })),
88
+ }, onMouseDown: async () => {
89
+ if (!streamKey) {
90
+ setLoading(true);
91
+ const [error, data] = await getStreamKey();
92
+ setLoading(false);
93
+ if (!error && data?.streamingKey) {
94
+ setStreamKey(data.streamingKey);
95
+ setShowStreamkey(true);
96
+ }
97
+ }
98
+ else {
99
+ setShowStreamkey(!showStreamkey);
100
+ }
101
+ } }))),
102
+ ReactEcs.createElement(UiEntity, { uiTransform: {
103
+ width: '100%',
104
+ height: 4 * scaleFactor,
105
+ margin: { top: 8 * scaleFactor },
106
+ display: streamKey && timeRemaining > 0 && showStreamkey ? 'flex' : 'none',
107
+ }, uiBackground: { color: Color4.fromHexString('#FFFFFF1A') } },
108
+ ReactEcs.createElement(UiEntity, { uiTransform: {
109
+ width: `${(timeRemaining / AUTO_HIDE_DURATION_SECONDS) * 100}%`,
110
+ height: '100%',
111
+ }, uiBackground: { color: Color4.fromHexString('#00D3FF') } })),
52
112
  ReactEcs.createElement(UiEntity, { uiTransform: {
53
113
  width: '100%',
54
114
  height: 40 * scaleFactor,
@@ -109,4 +169,4 @@ function formatTimeRemaining(endsAt) {
109
169
  return `${hours.toString().padStart(2, '0')}:${minutes.toString().padStart(2, '0')}:${seconds.toString().padStart(2, '0')}`;
110
170
  }
111
171
  }
112
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU2hvd1N0cmVhbUtleS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9hZG1pbi10b29sa2l0LXVpL1ZpZGVvQ29udHJvbC9MaXZlU3RyZWFtL1Nob3dTdHJlYW1LZXkudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFFdEMsT0FBTyxRQUFRLEVBQUUsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFDMUQsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLElBQUksQ0FBQTtBQUMzQixPQUFPLEVBQ0wseUJBQXlCLEdBQzFCLE1BQU0sVUFBVSxDQUFBO0FBQ2pCLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGtCQUFrQixDQUFBO0FBQ3JELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxjQUFjLENBQUE7QUFDckMsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sc0JBQXNCLENBQUE7QUFDekQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGFBQWEsQ0FBQTtBQUN4QyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFFN0MsTUFBTSxZQUFZLEdBQUc7SUFDbkIsT0FBTyxFQUFFLEdBQUcsV0FBVyxxQ0FBcUM7SUFDNUQsT0FBTyxFQUFFLEdBQUcsV0FBVyx5Q0FBeUM7Q0FDakUsQ0FBQTtBQUVELE1BQU0sVUFBVSxhQUFhLENBQUMsRUFDNUIsV0FBVyxFQUNYLE1BQU0sRUFDTixLQUFLLEVBQ0wsTUFBTSxFQUNOLE9BQU8sRUFDUCxTQUFTLEVBQ1QsTUFBTSxHQVNQO0lBQ0MsTUFBTSxRQUFRLEdBQUcseUJBQXlCLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBQyxDQUFBO0lBQzFELE1BQU0sQ0FBQyxhQUFhLEVBQUUsZ0JBQWdCLENBQUMsR0FBRyxRQUFRLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxD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QUFDLElBQUksT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLElBQUksT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLEVBQUUsQ0FBQTtJQUM3SCxDQUFDO0FBQ0gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbG9yNCB9IGZyb20gJ0BkY2wvc2RrL21hdGgnXG5pbXBvcnQgeyBEZWVwUmVhZG9ubHlPYmplY3QsIEVudGl0eSwgSUVuZ2luZSwgUEJWaWRlb1BsYXllciB9IGZyb20gJ0BkY2wvZWNzJ1xuaW1wb3J0IFJlYWN0RWNzLCB7IFVpRW50aXR5LCBMYWJlbCB9IGZyb20gJ0BkY2wvcmVhY3QtZWNzJ1xuaW1wb3J0IHsgQ09MT1JTIH0gZnJvbSAnLi4nXG5pbXBvcnQge1xuICBjcmVhdGVWaWRlb1BsYXllckNvbnRyb2xzLFxufSBmcm9tICcuLi91dGlscydcbmltcG9ydCB7IFZpZGVvQ29udHJvbFZvbHVtZSB9IGZyb20gJy4uL1ZvbHVtZUNvbnRyb2wnXG5pbXBvcnQgeyBCdXR0b24gfSBmcm9tICcuLi8uLi9CdXR0b24nXG5pbXBvcnQgeyBMSVZFS0lUX1NUUkVBTV9TUkMgfSBmcm9tICcuLi8uLi8uLi9kZWZpbml0aW9ucydcbmltcG9ydCB7IEVSUk9SX0lDT04gfSBmcm9tICcuLi8uLi9FcnJvcidcbmltcG9ydCB7IENPTlRFTlRfVVJMIH0gZnJvbSAnLi4vLi4vY29uc3RhbnRzJ1xuXG5jb25zdCBTVFJFQU1fSUNPTlMgPSB7XG4gIGV5ZVNob3c6IGAke0NPTlRFTlRfVVJMfS9hZG1pbl90b29sa2l0L2Fzc2V0cy9pY29ucy9leWUucG5nYCxcbiAgZXllSGlkZTogYCR7Q09OVEVOVF9VUkx9L2FkbWluX3Rvb2xraXQvYXNzZXRzL2ljb25zL2V5ZS1vZmYucG5nYCxcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIFNob3dTdHJlYW1LZXkoe1xuICBzY2FsZUZhY3RvcixcbiAgZW5naW5lLFxuICB2aWRlbyxcbiAgZW50aXR5LFxuICBvblJlc2V0LFxuICBzdHJlYW1LZXksXG4gIGVuZHNBdCxcbn06IHtcbiAgc3RyZWFtS2V5OiBzdHJpbmdcbiAgZW5kc0F0OiBudW1iZXIsXG4gIHNjYWxlRmFjdG9yOiBudW1iZXJcbiAgZW5naW5lOiBJRW5naW5lXG4gIGVudGl0eTogRW50aXR5XG4gIHZpZGVvOiBEZWVwUmVhZG9ubHlPYmplY3Q8UEJWaWRlb1BsYXllcj4gfCB1bmRlZmluZWRcbiAgb25SZXNldCgpOiB2b2lkXG59KSB7XG4gIGNvbnN0IGNvbnRyb2xzID0gY3JlYXRlVmlkZW9QbGF5ZXJDb250cm9scyhlbnRpdHksIGVuZ2luZSlcbiAgY29uc3QgW3Nob3dTdHJlYW1rZXksIHNldFNob3dTdHJlYW1rZXldID0gUmVhY3RFY3MudXNlU3RhdGUoZmFsc2UpXG5cbiAgcmV0dXJuIChcbiAgICA8VWlFbnRpdHkgdWlUcmFuc2Zvcm09e3sgZmxleERpcmVjdGlvbjogJ2NvbHVtbicgfX0+XG4gICAgICA8TGFiZWxcbiAgICAgICAgdmFsdWU9XCI8Yj5STVRQIFNlcnZlcjxiPlwiXG4gICAgICAgIGNvbG9yPXtDb2xvcjQuV2hpdGUoKX1cbiAgICAgICAgZm9udFNpemU9ezE2ICogc2NhbGVGYWN0b3J9XG4gICAgICAgIHVpVHJhbnNmb3JtPXt7XG4gICAgICAgICAgbWFyZ2luOiB7IHRvcDogMTYgKiBzY2FsZUZhY3RvciwgYm90dG9tOiA4ICogc2NhbGVGYWN0b3IgfSxcbiAgICAgICAgfX1cbiAgICAgIC8+XG4gICAgICA8VWlFbnRpdHlcbiAgICAgICAgdWlUcmFuc2Zvcm09e3tcbiAgICAgICAgICB3aWR0aDogJzEwMCUnLFxuICAgICAgICAgIG1hcmdpbjogeyBib3R0b206IDggKiBzY2FsZUZhY3RvciwgdG9wOiA4ICogc2NhbGVGYWN0b3IgfSxcbiAgICAgICAgICBoZWlnaHQ6IDQyICogc2NhbGVGYWN0b3IsXG4gICAgICAgICAgYm9yZGVyUmFkaXVzOiAxMiAqIHNjYWxlRmFjdG9yLFxuICAgICAgICB9fVxuICAgICAgICB1aUJhY2tncm91bmQ9e3sgY29sb3I6IENvbG9yNC5XaGl0ZSgpIH19XG4gICAgICA+XG4gICAgICAgIDxMYWJlbFxuICAgICAgICAgIHVpVHJhbnNmb3JtPXt7IG1hcmdpbjogeyBsZWZ0OiAxNiAqIHNjYWxlRmFjdG9yIH0gfX1cbiAgICAgICAgICBmb250U2l6ZT17MTYgKiBzY2FsZUZhY3Rvcn1cbiAgICAgICAgICB2YWx1ZT1cIjxiPnJ0bXBzOi8vZGNsLnJ0bXAubGl2ZWtpdC5jbG91ZC94PC9iPlwiXG4gICAgICAgICAgY29sb3I9e0NvbG9yNC5mcm9tSGV4U3RyaW5nKCcjQTA5QkE4Jyl9XG4gICAgICAgIC8+XG4gICAgICA8L1VpRW50aXR5PlxuICAgICAgPExhYmVsXG4gICAgICAgIHZhbHVlPVwiPGI+U3RyZWFtIEtleTxiPlwiXG4gICAgICAgIGNvbG9yPXtDb2xvcjQuV2hpdGUoKX1cbiAgICAgICAgZm9udFNpemU9ezE2ICogc2NhbGVGYWN0b3J9XG4gICAgICAgIHVpVHJhbnNmb3JtPXt7XG4gICAgICAgICAgbWFyZ2luOiB7IHRvcDogMTYgKiBzY2FsZUZhY3RvciwgYm90dG9tOiA4ICogc2NhbGVGYWN0b3IgfSxcbiAgICAgICAgfX1cbiAgICAgIC8+XG4gICAgICA8VWlFbnRpdHlcbiAgICAgICAgdWlUcmFuc2Zvcm09e3tcbiAgICAgICAgICB3aWR0aDogJzEwMCUnLFxuICAgICAgICAgIG1hcmdpbjogeyBib3R0b206IDggKiBzY2FsZUZhY3RvciwgdG9wOiA4ICogc2NhbGVGYWN0b3IgfSxcbiAgICAgICAgICBoZWlnaHQ6IDQyICogc2NhbGVGYWN0b3IsXG4gICAgICAgICAgYm9yZGVyUmFkaXVzOiAxMiAqIHNjYWxlRmFjdG9yLFxuICAgICAgICAgIGZsZXhEaXJlY3Rpb246ICdyb3cnLFxuICAgICAgICAgIGp1c3RpZnlDb250ZW50OiAnc3BhY2UtYmV0d2VlbicsXG4gICAgICAgICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXG4gICAgICAgIH19XG4gICAgICAgIHVpQmFja2dyb3VuZD17eyBjb2xvcjogQ29sb3I0LldoaXRlKCkgfX1cbiAgICAgID5cbiAgICAgICAgPExhYmVsXG4gICAgICAgICAgdWlUcmFuc2Zvcm09e3sgbWFyZ2luOiB7IGxlZnQ6IDE2ICogc2NhbGVGYWN0b3IgfSB9fVxuICAgICAgICAgIGZvbnRTaXplPXsxNiAqIHNjYWxlRmFjdG9yfVxuICAgICAgICAgIHZhbHVlPXtgPGI+JHtzaG93U3RyZWFta2V5ID8gc3RyZWFtS2V5IDogJyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKid9PC9iPmB9XG4gICAgICAgICAgY29sb3I9e0NvbG9yNC5mcm9tSGV4U3RyaW5nKCcjQTA5QkE4Jyl9XG4gICAgICAgIC8+XG4gICAgICAgIDxVaUVudGl0eVxuICAgICAgICAgIHVpVHJhbnNmb3JtPXt7XG4gICAgICAgICAgICB3aWR0aDogMjUgKiBzY2FsZUZhY3RvcixcbiAgICAgICAgICAgIGhlaWdodDogMjUgKiBzY2FsZUZhY3RvcixcbiAgICAgICAgICAgIG1hcmdpbjogeyByaWdodDogMTAgKiBzY2FsZUZhY3RvciB9LFxuICAgICAgICAgIH19XG4gICAgICAgICAgdWlCYWNrZ3JvdW5kPXt7XG4gICAgICAgICAgICB0ZXh0dXJlTW9kZTogJ3N0cmV0Y2gnLFxuICAgICAgICAgICAgdGV4dHVyZToge1xuICAgICAgICAgICAgICBzcmM6IHNob3dTdHJlYW1rZXkgPyBTVFJFQU1fSUNPTlMuZXllSGlkZSA6IFNUUkVBTV9JQ09OUy5leWVTaG93LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGNvbG9yOiBDb2xvcjQuQmxhY2soKSxcbiAgICAgICAgICB9fVxuICAgICAgICAgIG9uTW91c2VEb3duPXsoKSA9PiBzZXRTaG93U3RyZWFta2V5KCFzaG93U3RyZWFta2V5KX1cbiAgICAgICAgLz5cbiAgICAgIDwvVWlFbnRpdHk+XG5cbiAgICAgIDxVaUVudGl0eVxuICAgICAgICB1aVRyYW5zZm9ybT17e1xuICAgICAgICAgIHdpZHRoOiAnMTAwJScsXG4gICAgICAgICAgaGVpZ2h0OiA0MCAqIHNjYWxlRmFjdG9yLFxuICAgICAgICAgIGZsZXhEaXJlY3Rpb246ICdyb3cnLFxuICAgICAgICAgIGp1c3RpZnlDb250ZW50OiAnc3BhY2UtYmV0d2VlbicsXG4gICAgICAgICAgbWFyZ2luOiB7IHRvcDogMTAgKiBzY2FsZUZhY3RvciwgYm90dG9tOiAxNiAqIHNjYWxlRmFjdG9yIH0sXG4gICAgICAgIH19XG4gICAgICA+XG4gICAgICAgIHtlbmRzQXQgPiBEYXRlLm5vdygpID8gKFxuICAgICAgICAgIDxVaUVudGl0eSB1aVRyYW5zZm9ybT17eyBmbGV4RGlyZWN0aW9uOiAnY29sdW1uJyB9fT5cbiAgICAgICAgICAgIDxMYWJlbFxuICAgICAgICAgICAgICB2YWx1ZT1cIlN0cmVhbSBleHBpcmVzIGluOlwiXG4gICAgICAgICAgICAgIGNvbG9yPXtDb2xvcjQuZnJvbUhleFN0cmluZygnI0ZGRkZGRkIyJyl9XG4gICAgICAgICAgICAgIGZvbnRTaXplPXsxNCAqIHNjYWxlRmFjdG9yfVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxMYWJlbFxuICAgICAgICAgICAgICB2YWx1ZT17Zm9ybWF0VGltZVJlbWFpbmluZyhlbmRzQXQpfVxuICAgICAgICAgICAgICBjb2xvcj17Q29sb3I0LmZyb21IZXhTdHJpbmcoJyNGRkZGRkZCMicpfVxuICAgICAgICAgICAgICBmb250U2l6ZT17MTQgKiBzY2FsZUZhY3Rvcn1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgPC9VaUVudGl0eT5cbiAgICAgICAgKSA6IChcbiAgICAgICAgICA8VWlFbnRpdHlcbiAgICAgICAgICAgIHVpVHJhbnNmb3JtPXt7XG4gICAgICAgICAgICAgIGZsZXhEaXJlY3Rpb246ICdyb3cnLFxuICAgICAgICAgICAgICBtYXJnaW46IHsgcmlnaHQ6IDEwICogc2NhbGVGYWN0b3IgfSxcbiAgICAgICAgICAgICAgYm9yZGVyV2lkdGg6IDIsXG4gICAgICAgICAgICAgIGJvcmRlckNvbG9yOiBDb2xvcjQuR3JlZW4oKSxcbiAgICAgICAgICAgIH19XG4gICAgICAgICAgPlxuICAgICAgICAgICAgPFVpRW50aXR5XG4gICAgICAgICAgICAgIHVpVHJhbnNmb3JtPXt7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDE1ICogc2NhbGVGYWN0b3IsXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxNSAqIHNjYWxlRmFjdG9yLFxuICAgICAgICAgICAgICAgIG1hcmdpbjogeyByaWdodDogNCAqIHNjYWxlRmFjdG9yLCB0b3A6IDQgKiBzY2FsZUZhY3RvciB9LFxuICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICB1aUJhY2tncm91bmQ9e3tcbiAgICAgICAgICAgICAgICB0ZXh0dXJlTW9kZTogJ3N0cmV0Y2gnLFxuICAgICAgICAgICAgICAgIHRleHR1cmU6IHtcbiAgICAgICAgICAgICAgICAgIHNyYzogRVJST1JfSUNPTixcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxMYWJlbFxuICAgICAgICAgICAgICBmb250U2l6ZT17MTQgKiBzY2FsZUZhY3Rvcn1cbiAgICAgICAgICAgICAgdGV4dEFsaWduPVwibWlkZGxlLWxlZnRcIlxuICAgICAgICAgICAgICBjb2xvcj17Q29sb3I0LmZyb21IZXhTdHJpbmcoJyNGRjAwMDAnKX1cbiAgICAgICAgICAgICAgdmFsdWU9XCJTdHJlYW0gdGltZWQgb3V0LiBQbGVhc2UgcmVzdGFydCBzdHJlYW0gaW4gYnJvYWRjYXN0aW5nIHNvZnR3YXJlLlwiXG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvVWlFbnRpdHk+XG4gICAgICAgICl9XG4gICAgICAgIHt2aWRlbz8uc3JjID09PSBMSVZFS0lUX1NUUkVBTV9TUkMgPyAoXG4gICAgICAgICAgPEJ1dHRvblxuICAgICAgICAgICAgaWQ9XCJ2aWRlb19jb250cm9sX3NoYXJlX3NjcmVlbl9jbGVhclwiXG4gICAgICAgICAgICB2YWx1ZT1cIjxiPkRlYWN0aXZhdGU8L2I+XCJcbiAgICAgICAgICAgIHZhcmlhbnQ9XCJ0ZXh0XCJcbiAgICAgICAgICAgIGZvbnRTaXplPXsxNiAqIHNjYWxlRmFjdG9yfVxuICAgICAgICAgICAgY29sb3I9e0NvbG9yNC5XaGl0ZSgpfVxuICAgICAgICAgICAgdWlUcmFuc2Zvcm09e3tcbiAgICAgICAgICAgICAgbWluV2lkdGg6IDEyMCAqIHNjYWxlRmFjdG9yLFxuICAgICAgICAgICAgICBtYXJnaW46IHsgcmlnaHQ6IDggKiBzY2FsZUZhY3RvciB9LFxuICAgICAgICAgICAgICBwYWRkaW5nOiB7IGxlZnQ6IDggKiBzY2FsZUZhY3RvciwgcmlnaHQ6IDggKiBzY2FsZUZhY3RvciB9LFxuICAgICAgICAgICAgfX1cbiAgICAgICAgICAgIG9uTW91c2VEb3duPXsoKSA9PiB7XG4gICAgICAgICAgICAgIGNvbnRyb2xzLnNldFNvdXJjZSgnJylcbiAgICAgICAgICAgIH19XG4gICAgICAgICAgLz5cbiAgICAgICAgKSA6IChcbiAgICAgICAgICA8QnV0dG9uXG4gICAgICAgICAgICBpZD1cInZpZGVvX2NvbnRyb2xfc2hhcmVfc2NyZWVuX3NoYXJlXCJcbiAgICAgICAgICAgIHZhbHVlPVwiPGI+QWN0aXZhdGU8L2I+XCJcbiAgICAgICAgICAgIGxhYmVsVHJhbnNmb3JtPXt7XG4gICAgICAgICAgICAgIG1hcmdpbjogeyBsZWZ0OiAyMCAqIHNjYWxlRmFjdG9yLCByaWdodDogMjAgKiBzY2FsZUZhY3RvciB9LFxuICAgICAgICAgICAgfX1cbiAgICAgICAgICAgIHVpVHJhbnNmb3JtPXt7XG4gICAgICAgICAgICAgIG1pbldpZHRoOiAxMjAgKiBzY2FsZUZhY3RvcixcbiAgICAgICAgICAgIH19XG4gICAgICAgICAgICBmb250U2l6ZT17MTYgKiBzY2FsZUZhY3Rvcn1cbiAgICAgICAgICAgIHVpQmFja2dyb3VuZD17eyBjb2xvcjogQ09MT1JTLlNVQ0NFU1MgfX1cbiAgICAgICAgICAgIGNvbG9yPXtDb2xvcjQuQmxhY2soKX1cbiAgICAgICAgICAgIG9uTW91c2VEb3duPXsoKSA9PiB7XG4gICAgICAgICAgICAgIGNvbnRyb2xzLnNldFNvdXJjZShMSVZFS0lUX1NUUkVBTV9TUkMpXG4gICAgICAgICAgICB9fVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG4gICAgICA8L1VpRW50aXR5PlxuICAgICAgPFZpZGVvQ29udHJvbFZvbHVtZVxuICAgICAgICBlbmdpbmU9e2VuZ2luZX1cbiAgICAgICAgbGFiZWw9XCI8Yj5TdHJlYW0gVm9sdW1lPC9iPlwiXG4gICAgICAgIGVudGl0eT17ZW50aXR5fVxuICAgICAgICB2aWRlbz17dmlkZW99XG4gICAgICAvPlxuICAgICAgPFVpRW50aXR5PlxuICAgICAgICA8QnV0dG9uXG4gICAgICAgICAgaWQ9XCJ2aWRlb19jb250cm9sX3Jlc2V0X3N0cmVhbV9rZXlcIlxuICAgICAgICAgIHZhbHVlPVwiPGI+UmVzZXQgU3RyZWFtIEtleTwvYj5cIlxuICAgICAgICAgIHZhcmlhbnQ9XCJ0ZXh0XCJcbiAgICAgICAgICBmb250U2l6ZT17MTYgKiBzY2FsZUZhY3Rvcn1cbiAgICAgICAgICBjb2xvcj17Q29sb3I0LmZyb21IZXhTdHJpbmcoJyNGQjNCM0InKX1cbiAgICAgICAgICB1aVRyYW5zZm9ybT17e1xuICAgICAgICAgICAgbWFyZ2luOiB7IHJpZ2h0OiA4ICogc2NhbGVGYWN0b3IsIHRvcDogMjAgKiBzY2FsZUZhY3RvciB9LFxuICAgICAgICAgICAgcGFkZGluZzogeyBsZWZ0OiA4ICogc2NhbGVGYWN0b3IsIHJpZ2h0OiA4ICogc2NhbGVGYWN0b3IgfSxcbiAgICAgICAgICB9fVxuICAgICAgICAgIG9uTW91c2VEb3duPXsoKSA9PiBvblJlc2V0KCl9XG4gICAgICAgIC8+XG4gICAgICA8L1VpRW50aXR5PlxuICAgIDwvVWlFbnRpdHk+XG4gIClcbn1cblxuLy8gSGVscGVyIGZ1bmN0aW9uIHRvIGZvcm1hdCB0aW1lIHJlbWFpbmluZyAtIHNob3dzIGRheXMgaWYgPiAxIGRheSwgb3RoZXJ3aXNlIHNob3dzIGhoOm1tOnNzXG5mdW5jdGlvbiBmb3JtYXRUaW1lUmVtYWluaW5nKGVuZHNBdDogbnVtYmVyKTogc3RyaW5nIHtcbiAgY29uc3Qgbm93ID0gRGF0ZS5ub3coKVxuICBjb25zdCB0aW1lUmVtYWluaW5nID0gTWF0aC5tYXgoMCwgZW5kc0F0IC0gbm93KVxuXG4gIGNvbnN0IGRheXMgPSBNYXRoLmZsb29yKHRpbWVSZW1haW5pbmcgLyAoMTAwMCAqIDYwICogNjAgKiAyNCkpXG5cbiAgaWYgKGRheXMgPj0gMSkge1xuICAgIHJldHVybiBgJHtkYXlzfSAke2RheXMgPT09IDEgPyAnZGF5JyA6ICdkYXlzJ31gXG4gIH0gZWxzZSB7XG4gICAgY29uc3QgaG91cnMgPSBNYXRoLmZsb29yKHRpbWVSZW1haW5pbmcgLyAoMTAwMCAqIDYwICogNjApKVxuICAgIGNvbnN0IG1pbnV0ZXMgPSBNYXRoLmZsb29yKCh0aW1lUmVtYWluaW5nICUgKDEwMDAgKiA2MCAqIDYwKSkgLyAoMTAwMCAqIDYwKSlcbiAgICBjb25zdCBzZWNvbmRzID0gTWF0aC5mbG9vcigodGltZVJlbWFpbmluZyAlICgxMDAwICogNjApKSAvIDEwMDApXG4gICAgcmV0dXJuIGAke2hvdXJzLnRvU3RyaW5nKCkucGFkU3RhcnQoMiwgJzAnKX06JHttaW51dGVzLnRvU3RyaW5nKCkucGFkU3RhcnQoMiwgJzAnKX06JHtzZWNvbmRzLnRvU3RyaW5nKCkucGFkU3RhcnQoMiwgJzAnKX1gXG4gIH1cbn1cbiJdfQ==
172
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU2hvd1N0cmVhbUtleS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9hZG1pbi10b29sa2l0LXVpL1ZpZGVvQ29udHJvbC9MaXZlU3RyZWFtL1Nob3dTdHJlYW1LZXkudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFFdEMsT0FBTyxRQUFRLEVBQUUsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFDMUQsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLElBQUksQ0FBQTtBQUMzQixPQUFPLEVBQ0wseUJBQXlCLEdBQzFCLE1BQU0sVUFBVSxDQUFBO0FBQ2pCLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGtCQUFrQixDQUFBO0FBQ3JELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxjQUFjLENBQUE7QUFDckMsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sc0JBQXNCLENBQUE7QUFDekQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGFBQWEsQ0FBQTtBQUN4QyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDN0MsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLFFBQVEsQ0FBQTtBQUNyQyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQzNDLE9BQU8sRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLGFBQWEsRUFBRSxZQUFZLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUN2RixPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sT0FBTyxDQUFBO0FBRTdCLE1BQU0sWUFBWSxHQUFHO0lBQ25CLE9BQU8sRUFBRSxHQUFHLFdBQVcscUNBQXFDO0lBQzVELE9BQU8sRUFBRSxHQUFHLFdBQVcseUNBQXlDO0NBQ2pFLENBQUE7QUFFRCxNQUFNLDBCQUEwQixHQUFHLEVBQUUsQ0FBQTtBQUNy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RS9DLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxHQUFHLENBQUMsSUFBSSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQTtJQUU5RCxJQUFJLElBQUksSUFBSSxDQUFDLEVBQUUsQ0FBQztRQUNkLE9BQU8sR0FBRyxJQUFJLElBQUksSUFBSSxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQTtJQUNqRCxDQUFDO1NBQU0sQ0FBQztRQUNOLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxHQUFHLENBQUMsSUFBSSxHQUFHLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFBO1FBQzFELE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxhQUFhLEdBQUcsQ0FBQyxJQUFJLEdBQUcsRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQTtRQUM1RSxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsYUFBYSxHQUFHLENBQUMsSUFBSSxHQUFHLEVBQUUsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUE7UUFDaEUsT0FBTyxHQUFHLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxJQUFJLE9BQU8sQ0FBQyxRQUFRLEVBQUUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxJQUFJLE9BQU8sQ0FBQyxRQUFRLEVBQUUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxFQUFFLENBQUE7SUFDN0gsQ0FBQztBQUNILENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb2xvcjQgfSBmcm9tICdAZGNsL3Nkay9tYXRoJ1xuaW1wb3J0IHsgRGVlcFJlYWRvbmx5T2JqZWN0LCBFbnRpdHksIElFbmdpbmUsIFBCVmlkZW9QbGF5ZXIgfSBmcm9tICdAZGNsL2VjcydcbmltcG9ydCBSZWFjdEVjcywgeyBVaUVudGl0eSwgTGFiZWwgfSBmcm9tICdAZGNsL3JlYWN0LWVjcydcbmltcG9ydCB7IENPTE9SUyB9IGZyb20gJy4uJ1xuaW1wb3J0IHtcbiAgY3JlYXRlVmlkZW9QbGF5ZXJDb250cm9scyxcbn0gZnJvbSAnLi4vdXRpbHMnXG5pbXBvcnQgeyBWaWRlb0NvbnRyb2xWb2x1bWUgfSBmcm9tICcuLi9Wb2x1bWVDb250cm9sJ1xuaW1wb3J0IHsgQnV0dG9uIH0gZnJvbSAnLi4vLi4vQnV0dG9uJ1xuaW1wb3J0IHsgTElWRUtJVF9TVFJFQU1fU1JDIH0gZnJvbSAnLi4vLi4vLi4vZGVmaW5pdGlvbnMnXG5pbXBvcnQgeyBFUlJPUl9JQ09OIH0gZnJvbSAnLi4vLi4vRXJyb3InXG5pbXBvcnQgeyBDT05URU5UX1VSTCB9IGZyb20gJy4uLy4uL2NvbnN0YW50cydcbmltcG9ydCB7IGdldFN0cmVhbUtleSB9IGZyb20gJy4uL2FwaSdcbmltcG9ydCB7IExvYWRpbmdEb3RzIH0gZnJvbSAnLi4vLi4vTG9hZGluZydcbmltcG9ydCB7IHN0YXJ0VGltZW91dCwgc3RvcFRpbWVvdXQsIHN0YXJ0SW50ZXJ2YWwsIHN0b3BJbnRlcnZhbCB9IGZyb20gJy4uLy4uLy4uL3RpbWVyJ1xuaW1wb3J0IHsgc3RhdGUgfSBmcm9tICcuLi8uLidcblxuY29uc3QgU1RSRUFNX0lDT05TID0ge1xuICBleWVTaG93OiBgJHtDT05URU5UX1VSTH0vYWRtaW5fdG9vbGtpdC9hc3NldHMvaWNvbnMvZXllLnBuZ2AsXG4gIGV5ZUhpZGU6IGAke0NPTlRFTlRfVVJMfS9hZG1pbl90b29sa2l0L2Fzc2V0cy9pY29ucy9leWUtb2ZmLnBuZ2AsXG59XG5cbmNvbnN0IEFVVE9fSElERV9EVVJBVElPTl9TRUNPTkRTID0gMzBcbmNvbnN0IFNUUkVBTV9LRVlfVElNRU9VVF9BQ1RJT04gPSAndmlkZW9fY29udHJvbF9zdHJlYW1fa2V5X3RpbWVvdXQnXG5jb25zdCBTVFJFQU1fS0VZX0lOVEVSVkFMX0FDVElPTiA9ICd2aWRlb19jb250cm9sX3N0cmVhbV9rZXlfaW50ZXJ2YWwnXG5cbmV4cG9ydCBmdW5jdGlvbiBTaG93U3RyZWFtS2V5KHtcbiAgc2NhbGVGYWN0b3IsXG4gIGVuZ2luZSxcbiAgdmlkZW8sXG4gIGVudGl0eSxcbiAgb25SZXNldCxcbiAgZW5kc0F0LFxufToge1xuICBlbmRzQXQ6IG51bWJlcixcbiAgc2NhbGVGYWN0b3I6IG51bWJlclxuICBlbmdpbmU6IElFbmdpbmVcbiAgZW50aXR5OiBFbnRpdHlcbiAgdmlkZW86IERlZXBSZWFkb25seU9iamVjdDxQQlZpZGVvUGxheWVyPiB8IHVuZGVmaW5lZFxuICBvblJlc2V0KCk6IHZvaWRcbn0pIHtcbiAgY29uc3QgY29udHJvbHMgPSBjcmVhdGVWaWRlb1BsYXllckNvbnRyb2xzKGVudGl0eSwgZW5naW5lKVxuICBjb25zdCBbc2hvd1N0cmVhbWtleSwgc2V0U2hvd1N0cmVhbWtleV0gPSBSZWFjdEVjcy51c2VTdGF0ZShmYWxzZSlcbiAgY29uc3QgW2xvYWRpbmcsIHNldExvYWRpbmddID0gUmVhY3RFY3MudXNlU3RhdGUoZmFsc2UpXG4gIGNvbnN0IFtzdHJlYW1LZXksIHNldFN0cmVhbUtleV0gPSBSZWFjdEVjcy51c2VTdGF0ZTxzdHJpbmcgfCB1bmRlZmluZWQ+KHVuZGVmaW5lZClcbiAgY29uc3QgW3RpbWVSZW1haW5pbmcsIHNldFRpbWVSZW1haW5pbmddID0gUmVhY3RFY3MudXNlU3RhdGUoQVVUT19ISURFX0RVUkFUSU9OX1NFQ09ORFMpXG5cbiAgLy8gYXV0by1oaWRlIHN0cmVhbSBrZXkgYWZ0ZXIgc3BlY2lmaWVkIGR1cmF0aW9uXG4gIFJlYWN0RWNzLnVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKHN0cmVhbUtleSkge1xuICAgICAgc2V0VGltZVJlbWFpbmluZyhBVVRPX0hJREVfRFVSQVRJT05fU0VDT05EUylcblxuICAgICAgc3RhcnRUaW1lb3V0KHN0YXRlLmFkbWluVG9vbGtpdFVpRW50aXR5LCBTVFJFQU1fS0VZX1RJTUVPVVRfQUNUSU9OLCBBVVRPX0hJREVfRFVSQVRJT05fU0VDT05EUywgKCkgPT4ge1xuICAgICAgICBzZXRTdHJlYW1LZXkodW5kZWZpbmVkKVxuICAgICAgICBzZXRTaG93U3RyZWFta2V5KGZhbHNlKVxuICAgICAgICBzZXRUaW1lUmVtYWluaW5nKDApXG4gICAgICB9KVxuXG4gICAgICBzdGFydEludGVydmFsKHN0YXRlLmFkbWluVG9vbGtpdFVpRW50aXR5LCBTVFJFQU1fS0VZX0lOVEVSVkFMX0FDVElPTiwgMC4xLCAoKSA9PiB7XG4gICAgICAgIHNldFRpbWVSZW1haW5pbmcoKHByZXYpID0+IE1hdGgubWF4KDAsIHByZXYgLSAwLjEpKVxuICAgICAgfSlcblxuICAgICAgcmV0dXJuICgpID0+IHtcbiAgICAgICAgc3RvcFRpbWVvdXQoc3RhdGUuYWRtaW5Ub29sa2l0VWlFbnRpdHksIFNUUkVBTV9LRVlfVElNRU9VVF9BQ1RJT04pXG4gICAgICAgIHN0b3BJbnRlcnZhbChzdGF0ZS5hZG1pblRvb2xraXRVaUVudGl0eSwgU1RSRUFNX0tFWV9JTlRFUlZBTF9BQ1RJT04pXG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIHNldFRpbWVSZW1haW5pbmcoMClcbiAgICB9XG4gIH0sIFtzdHJlYW1LZXldKVxuXG4gIHJldHVybiAoXG4gICAgPFVpRW50aXR5IHVpVHJhbnNmb3JtPXt7IGZsZXhEaXJlY3Rpb246ICdjb2x1bW4nIH19PlxuICAgICAgPExhYmVsXG4gICAgICAgIHZhbHVlPVwiPGI+Uk1UUCBTZXJ2ZXI8Yj5cIlxuICAgICAgICBjb2xvcj17Q29sb3I0LldoaXRlKCl9XG4gICAgICAgIGZvbnRTaXplPXsxNiAqIHNjYWxlRmFjdG9yfVxuICAgICAgICB1aVRyYW5zZm9ybT17e1xuICAgICAgICAgIG1hcmdpbjogeyB0b3A6IDE2ICogc2NhbGVGYWN0b3IsIGJvdHRvbTogOCAqIHNjYWxlRmFjdG9yIH0sXG4gICAgICAgIH19XG4gICAgICAvPlxuICAgICAgPFVpRW50aXR5XG4gICAgICAgIHVpVHJhbnNmb3JtPXt7XG4gICAgICAgICAgd2lkdGg6ICcxMDAlJyxcbiAgICAgICAgICBtYXJnaW46IHsgYm90dG9tOiA4ICogc2NhbGVGYWN0b3IsIHRvcDogOCAqIHNjYWxlRmFjdG9yIH0sXG4gICAgICAgICAgaGVpZ2h0OiA0MiAqIHNjYWxlRmFjdG9yLFxuICAgICAgICAgIGJvcmRlclJhZGl1czogMTIgKiBzY2FsZUZhY3RvcixcbiAgICAgICAgfX1cbiAgICAgICAgdWlCYWNrZ3JvdW5kPXt7IGNvbG9yOiBDb2xvcjQuV2hpdGUoKSB9fVxuICAgICAgPlxuICAgICAgICA8TGFiZWxcbiAgICAgICAgICB1aVRyYW5zZm9ybT17eyBtYXJnaW46IHsgbGVmdDogMTYgKiBzY2FsZUZhY3RvciB9IH19XG4gICAgICAgICAgZm9udFNpemU9ezE2ICogc2NhbGVGYWN0b3J9XG4gICAgICAgICAgdmFsdWU9XCI8Yj5ydG1wczovL2RjbC5ydG1wLmxpdmVraXQuY2xvdWQveDwvYj5cIlxuICAgICAgICAgIGNvbG9yPXtDb2xvcjQuZnJvbUhleFN0cmluZygnI0EwOUJBOCcpfVxuICAgICAgICAvPlxuICAgICAgPC9VaUVudGl0eT5cbiAgICAgIDxMYWJlbFxuICAgICAgICB2YWx1ZT1cIjxiPlN0cmVhbSBLZXk8Yj5cIlxuICAgICAgICBjb2xvcj17Q29sb3I0LldoaXRlKCl9XG4gICAgICAgIGZvbnRTaXplPXsxNiAqIHNjYWxlRmFjdG9yfVxuICAgICAgICB1aVRyYW5zZm9ybT17e1xuICAgICAgICAgIG1hcmdpbjogeyB0b3A6IDE2ICogc2NhbGVGYWN0b3IsIGJvdHRvbTogOCAqIHNjYWxlRmFjdG9yIH0sXG4gICAgICAgIH19XG4gICAgICAvPlxuICAgICAge2xvYWRpbmcgPyAoXG4gICAgICAgIDxVaUVudGl0eVxuICAgICAgICAgIHVpVHJhbnNmb3JtPXt7XG4gICAgICAgICAgICB3aWR0aDogJzEwMCUnLFxuICAgICAgICAgICAgbWFyZ2luOiB7IGJvdHRvbTogOCAqIHNjYWxlRmFjdG9yLCB0b3A6IDggKiBzY2FsZUZhY3RvciB9LFxuICAgICAgICAgICAgaGVpZ2h0OiA0MiAqIHNjYWxlRmFjdG9yLFxuICAgICAgICAgICAganVzdGlmeUNvbnRlbnQ6ICdjZW50ZXInLFxuICAgICAgICAgICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXG4gICAgICAgICAgfX1cbiAgICAgICAgPlxuICAgICAgICAgIDxMb2FkaW5nRG90cyBzY2FsZUZhY3Rvcj17c2NhbGVGYWN0b3J9IGVuZ2luZT17ZW5naW5lfSAvPlxuICAgICAgICA8L1VpRW50aXR5PlxuICAgICAgKSA6IChcbiAgICAgICAgPFVpRW50aXR5XG4gICAgICAgICAgdWlUcmFuc2Zvcm09e3tcbiAgICAgICAgICAgIHdpZHRoOiAnMTAwJScsXG4gICAgICAgICAgICBtYXJnaW46IHsgYm90dG9tOiA4ICogc2NhbGVGYWN0b3IsIHRvcDogOCAqIHNjYWxlRmFjdG9yIH0sXG4gICAgICAgICAgICBoZWlnaHQ6IDQyICogc2NhbGVGYWN0b3IsXG4gICAgICAgICAgICBib3JkZXJSYWRpdXM6IDEyICogc2NhbGVGYWN0b3IsXG4gICAgICAgICAgICBmbGV4RGlyZWN0aW9uOiAncm93JyxcbiAgICAgICAgICAgIGp1c3RpZnlDb250ZW50OiAnc3BhY2UtYmV0d2VlbicsXG4gICAgICAgICAgICBhbGlnbkl0ZW1zOiAnY2VudGVyJyxcbiAgICAgICAgICB9fVxuICAgICAgICAgIHVpQmFja2dyb3VuZD17eyBjb2xvcjogQ29sb3I0LldoaXRlKCkgfX1cbiAgICAgICAgPlxuICAgICAgICAgIDxMYWJlbFxuICAgICAgICAgICAgdWlUcmFuc2Zvcm09e3sgbWFyZ2luOiB7IGxlZnQ6IDE2ICogc2NhbGVGYWN0b3IgfSB9fVxuICAgICAgICAgICAgZm9udFNpemU9ezE2ICogc2NhbGVGYWN0b3J9XG4gICAgICAgICAgICB2YWx1ZT17YDxiPiR7c2hvd1N0cmVhbWtleSAmJiBzdHJlYW1LZXkgPyBzdHJlYW1LZXkgOiAnKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqJ308L2I+YH1cbiAgICAgICAgICAgIGNvbG9yPXtDb2xvcjQuZnJvbUhleFN0cmluZygnI0EwOUJBOCcpfVxuICAgICAgICAgIC8+XG4gICAgICAgICAgPFVpRW50aXR5XG4gICAgICAgICAgICB1aVRyYW5zZm9ybT17e1xuICAgICAgICAgICAgICB3aWR0aDogMjUgKiBzY2FsZUZhY3RvcixcbiAgICAgICAgICAgICAgaGVpZ2h0OiAyNSAqIHNjYWxlRmFjdG9yLFxuICAgICAgICAgICAgICBtYXJnaW46IHsgcmlnaHQ6IDEwICogc2NhbGVGYWN0b3IgfSxcbiAgICAgICAgICAgIH19XG4gICAgICAgICAgICB1aUJhY2tncm91bmQ9e3tcbiAgICAgICAgICAgICAgdGV4dHVyZU1vZGU6ICdzdHJldGNoJyxcbiAgICAgICAgICAgICAgdGV4dHVyZToge1xuICAgICAgICAgICAgICAgIHNyYzogc2hvd1N0cmVhbWtleSAmJiBzdHJlYW1LZXkgPyBTVFJFQU1fSUNPTlMuZXllSGlkZSA6IFNUUkVBTV9JQ09OUy5leWVTaG93LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICBjb2xvcjogQ29sb3I0LkJsYWNrKCksXG4gICAgICAgICAgICB9fVxuICAgICAgICAgICAgb25Nb3VzZURvd249e2FzeW5jICgpID0+IHtcbiAgICAgICAgICAgICAgaWYgKCFzdHJlYW1LZXkpIHtcbiAgICAgICAgICAgICAgICBzZXRMb2FkaW5nKHRydWUpXG4gICAgICAgICAgICAgICAgY29uc3QgW2Vycm9yLCBkYXRhXSA9IGF3YWl0IGdldFN0cmVhbUtleSgpXG4gICAgICAgICAgICAgICAgc2V0TG9hZGluZyhmYWxzZSlcbiAgICAgICAgICAgICAgICBpZiAoIWVycm9yICYmIGRhdGE/LnN0cmVhbWluZ0tleSkge1xuICAgICAgICAgICAgICAgICAgc2V0U3RyZWFtS2V5KGRhdGEuc3RyZWFtaW5nS2V5KVxuICAgICAgICAgICAgICAgICAgc2V0U2hvd1N0cmVhbWtleSh0cnVlKVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBzZXRTaG93U3RyZWFta2V5KCFzaG93U3RyZWFta2V5KVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9fVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvVWlFbnRpdHk+XG4gICAgICApfVxuICAgICAgPFVpRW50aXR5XG4gICAgICAgIHVpVHJhbnNmb3JtPXt7XG4gICAgICAgICAgd2lkdGg6ICcxMDAlJyxcbiAgICAgICAgICBoZWlnaHQ6IDQgKiBzY2FsZUZhY3RvcixcbiAgICAgICAgICBtYXJnaW46IHsgdG9wOiA4ICogc2NhbGVGYWN0b3IgfSxcbiAgICAgICAgICBkaXNwbGF5OiBzdHJlYW1LZXkgJiYgdGltZVJlbWFpbmluZyA+IDAgJiYgc2hvd1N0cmVhbWtleSA/ICdmbGV4JyA6ICdub25lJyxcbiAgICAgICAgfX1cbiAgICAgICAgdWlCYWNrZ3JvdW5kPXt7IGNvbG9yOiBDb2xvcjQuZnJvbUhleFN0cmluZygnI0ZGRkZGRjFBJykgfX1cbiAgICAgID5cbiAgICAgICAgPFVpRW50aXR5XG4gICAgICAgICAgdWlUcmFuc2Zvcm09e3tcbiAgICAgICAgICAgIHdpZHRoOiBgJHsodGltZVJlbWFpbmluZyAvIEFVVE9fSElERV9EVVJBVElPTl9TRUNPTkRTKSAqIDEwMH0lYCxcbiAgICAgICAgICAgIGhlaWdodDogJzEwMCUnLFxuICAgICAgICAgIH19XG4gICAgICAgICAgdWlCYWNrZ3JvdW5kPXt7IGNvbG9yOiBDb2xvcjQuZnJvbUhleFN0cmluZygnIzAwRDNGRicpIH19XG4gICAgICAgIC8+XG4gICAgICA8L1VpRW50aXR5PlxuXG4gICAgICA8VWlFbnRpdHlcbiAgICAgICAgdWlUcmFuc2Zvcm09e3tcbiAgICAgICAgICB3aWR0aDogJzEwMCUnLFxuICAgICAgICAgIGhlaWdodDogNDAgKiBzY2FsZUZhY3RvcixcbiAgICAgICAgICBmbGV4RGlyZWN0aW9uOiAncm93JyxcbiAgICAgICAgICBqdXN0aWZ5Q29udGVudDogJ3NwYWNlLWJldHdlZW4nLFxuICAgICAgICAgIG1hcmdpbjogeyB0b3A6IDEwICogc2NhbGVGYWN0b3IsIGJvdHRvbTogMTYgKiBzY2FsZUZhY3RvciB9LFxuICAgICAgICB9fVxuICAgICAgPlxuICAgICAgICB7ZW5kc0F0ID4gRGF0ZS5ub3coKSA/IChcbiAgICAgICAgICA8VWlFbnRpdHkgdWlUcmFuc2Zvcm09e3sgZmxleERpcmVjdGlvbjogJ2NvbHVtbicgfX0+XG4gICAgICAgICAgICA8TGFiZWxcbiAgICAgICAgICAgICAgdmFsdWU9XCJTdHJlYW0gZXhwaXJlcyBpbjpcIlxuICAgICAgICAgICAgICBjb2xvcj17Q29sb3I0LmZyb21IZXhTdHJpbmcoJyNGRkZGRkZCMicpfVxuICAgICAgICAgICAgICBmb250U2l6ZT17MTQgKiBzY2FsZUZhY3Rvcn1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8TGFiZWxcbiAgICAgICAgICAgICAgdmFsdWU9e2Zvcm1hdFRpbWVSZW1haW5pbmcoZW5kc0F0KX1cbiAgICAgICAgICAgICAgY29sb3I9e0NvbG9yNC5mcm9tSGV4U3RyaW5nKCcjRkZGRkZGQjInKX1cbiAgICAgICAgICAgICAgZm9udFNpemU9ezE0ICogc2NhbGVGYWN0b3J9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvVWlFbnRpdHk+XG4gICAgICAgICkgOiAoXG4gICAgICAgICAgPFVpRW50aXR5XG4gICAgICAgICAgICB1aVRyYW5zZm9ybT17e1xuICAgICAgICAgICAgICBmbGV4RGlyZWN0aW9uOiAncm93JyxcbiAgICAgICAgICAgICAgbWFyZ2luOiB7IHJpZ2h0OiAxMCAqIHNjYWxlRmFjdG9yIH0sXG4gICAgICAgICAgICAgIGJvcmRlcldpZHRoOiAyLFxuICAgICAgICAgICAgICBib3JkZXJDb2xvcjogQ29sb3I0LkdyZWVuKCksXG4gICAgICAgICAgICB9fVxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxVaUVudGl0eVxuICAgICAgICAgICAgICB1aVRyYW5zZm9ybT17e1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxNSAqIHNjYWxlRmFjdG9yLFxuICAgICAgICAgICAgICAgIGhlaWdodDogMTUgKiBzY2FsZUZhY3RvcixcbiAgICAgICAgICAgICAgICBtYXJnaW46IHsgcmlnaHQ6IDQgKiBzY2FsZUZhY3RvciwgdG9wOiA0ICogc2NhbGVGYWN0b3IgfSxcbiAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgdWlCYWNrZ3JvdW5kPXt7XG4gICAgICAgICAgICAgICAgdGV4dHVyZU1vZGU6ICdzdHJldGNoJyxcbiAgICAgICAgICAgICAgICB0ZXh0dXJlOiB7XG4gICAgICAgICAgICAgICAgICBzcmM6IEVSUk9SX0lDT04sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8TGFiZWxcbiAgICAgICAgICAgICAgZm9udFNpemU9ezE0ICogc2NhbGVGYWN0b3J9XG4gICAgICAgICAgICAgIHRleHRBbGlnbj1cIm1pZGRsZS1sZWZ0XCJcbiAgICAgICAgICAgICAgY29sb3I9e0NvbG9yNC5mcm9tSGV4U3RyaW5nKCcjRkYwMDAwJyl9XG4gICAgICAgICAgICAgIHZhbHVlPVwiU3RyZWFtIHRpbWVkIG91dC4gUGxlYXNlIHJlc3RhcnQgc3RyZWFtIGluIGJyb2FkY2FzdGluZyBzb2Z0d2FyZS5cIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICA8L1VpRW50aXR5PlxuICAgICAgICApfVxuICAgICAgICB7dmlkZW8/LnNyYyA9PT0gTElWRUtJVF9TVFJFQU1fU1JDID8gKFxuICAgICAgICAgIDxCdXR0b25cbiAgICAgICAgICAgIGlkPVwidmlkZW9fY29udHJvbF9zaGFyZV9zY3JlZW5fY2xlYXJcIlxuICAgICAgICAgICAgdmFsdWU9XCI8Yj5EZWFjdGl2YXRlPC9iPlwiXG4gICAgICAgICAgICB2YXJpYW50PVwidGV4dFwiXG4gICAgICAgICAgICBmb250U2l6ZT17MTYgKiBzY2FsZUZhY3Rvcn1cbiAgICAgICAgICAgIGNvbG9yPXtDb2xvcjQuV2hpdGUoKX1cbiAgICAgICAgICAgIHVpVHJhbnNmb3JtPXt7XG4gICAgICAgICAgICAgIG1pbldpZHRoOiAxMjAgKiBzY2FsZUZhY3RvcixcbiAgICAgICAgICAgICAgbWFyZ2luOiB7IHJpZ2h0OiA4ICogc2NhbGVGYWN0b3IgfSxcbiAgICAgICAgICAgICAgcGFkZGluZzogeyBsZWZ0OiA4ICogc2NhbGVGYWN0b3IsIHJpZ2h0OiA4ICogc2NhbGVGYWN0b3IgfSxcbiAgICAgICAgICAgIH19XG4gICAgICAgICAgICBvbk1vdXNlRG93bj17KCkgPT4ge1xuICAgICAgICAgICAgICBjb250cm9scy5zZXRTb3VyY2UoJycpXG4gICAgICAgICAgICB9fVxuICAgICAgICAgIC8+XG4gICAgICAgICkgOiAoXG4gICAgICAgICAgPEJ1dHRvblxuICAgICAgICAgICAgaWQ9XCJ2aWRlb19jb250cm9sX3NoYXJlX3NjcmVlbl9zaGFyZVwiXG4gICAgICAgICAgICB2YWx1ZT1cIjxiPkFjdGl2YXRlPC9iPlwiXG4gICAgICAgICAgICBsYWJlbFRyYW5zZm9ybT17e1xuICAgICAgICAgICAgICBtYXJnaW46IHsgbGVmdDogMjAgKiBzY2FsZUZhY3RvciwgcmlnaHQ6IDIwICogc2NhbGVGYWN0b3IgfSxcbiAgICAgICAgICAgIH19XG4gICAgICAgICAgICB1aVRyYW5zZm9ybT17e1xuICAgICAgICAgICAgICBtaW5XaWR0aDogMTIwICogc2NhbGVGYWN0b3IsXG4gICAgICAgICAgICB9fVxuICAgICAgICAgICAgZm9udFNpemU9ezE2ICogc2NhbGVGYWN0b3J9XG4gICAgICAgICAgICB1aUJhY2tncm91bmQ9e3sgY29sb3I6IENPTE9SUy5TVUNDRVNTIH19XG4gICAgICAgICAgICBjb2xvcj17Q29sb3I0LkJsYWNrKCl9XG4gICAgICAgICAgICBvbk1vdXNlRG93bj17KCkgPT4ge1xuICAgICAgICAgICAgICBjb250cm9scy5zZXRTb3VyY2UoTElWRUtJVF9TVFJFQU1fU1JDKVxuICAgICAgICAgICAgfX1cbiAgICAgICAgICAvPlxuICAgICAgICApfVxuICAgICAgPC9VaUVudGl0eT5cbiAgICAgIDxWaWRlb0NvbnRyb2xWb2x1bWVcbiAgICAgICAgZW5naW5lPXtlbmdpbmV9XG4gICAgICAgIGxhYmVsPVwiPGI+U3RyZWFtIFZvbHVtZTwvYj5cIlxuICAgICAgICBlbnRpdHk9e2VudGl0eX1cbiAgICAgICAgdmlkZW89e3ZpZGVvfVxuICAgICAgLz5cbiAgICAgIDxVaUVudGl0eT5cbiAgICAgICAgPEJ1dHRvblxuICAgICAgICAgIGlkPVwidmlkZW9fY29udHJvbF9yZXNldF9zdHJlYW1fa2V5XCJcbiAgICAgICAgICB2YWx1ZT1cIjxiPlJlc2V0IFN0cmVhbSBLZXk8L2I+XCJcbiAgICAgICAgICB2YXJpYW50PVwidGV4dFwiXG4gICAgICAgICAgZm9udFNpemU9ezE2ICogc2NhbGVGYWN0b3J9XG4gICAgICAgICAgY29sb3I9e0NvbG9yNC5mcm9tSGV4U3RyaW5nKCcjRkIzQjNCJyl9XG4gICAgICAgICAgdWlUcmFuc2Zvcm09e3tcbiAgICAgICAgICAgIG1hcmdpbjogeyByaWdodDogOCAqIHNjYWxlRmFjdG9yLCB0b3A6IDIwICogc2NhbGVGYWN0b3IgfSxcbiAgICAgICAgICAgIHBhZGRpbmc6IHsgbGVmdDogOCAqIHNjYWxlRmFjdG9yLCByaWdodDogOCAqIHNjYWxlRmFjdG9yIH0sXG4gICAgICAgICAgfX1cbiAgICAgICAgICBvbk1vdXNlRG93bj17KCkgPT4gb25SZXNldCgpfVxuICAgICAgICAvPlxuICAgICAgPC9VaUVudGl0eT5cbiAgICA8L1VpRW50aXR5PlxuICApXG59XG5cbi8vIEhlbHBlciBmdW5jdGlvbiB0byBmb3JtYXQgdGltZSByZW1haW5pbmcgLSBzaG93cyBkYXlzIGlmID4gMSBkYXksIG90aGVyd2lzZSBzaG93cyBoaDptbTpzc1xuZnVuY3Rpb24gZm9ybWF0VGltZVJlbWFpbmluZyhlbmRzQXQ6IG51bWJlcik6IHN0cmluZyB7XG4gIGNvbnN0IG5vdyA9IERhdGUubm93KClcbiAgY29uc3QgdGltZVJlbWFpbmluZyA9IE1hdGgubWF4KDAsIGVuZHNBdCAtIG5vdylcblxuICBjb25zdCBkYXlzID0gTWF0aC5mbG9vcih0aW1lUmVtYWluaW5nIC8gKDEwMDAgKiA2MCAqIDYwICogMjQpKVxuXG4gIGlmIChkYXlzID49IDEpIHtcbiAgICByZXR1cm4gYCR7ZGF5c30gJHtkYXlzID09PSAxID8gJ2RheScgOiAnZGF5cyd9YFxuICB9IGVsc2Uge1xuICAgIGNvbnN0IGhvdXJzID0gTWF0aC5mbG9vcih0aW1lUmVtYWluaW5nIC8gKDEwMDAgKiA2MCAqIDYwKSlcbiAgICBjb25zdCBtaW51dGVzID0gTWF0aC5mbG9vcigodGltZVJlbWFpbmluZyAlICgxMDAwICogNjAgKiA2MCkpIC8gKDEwMDAgKiA2MCkpXG4gICAgY29uc3Qgc2Vjb25kcyA9IE1hdGguZmxvb3IoKHRpbWVSZW1haW5pbmcgJSAoMTAwMCAqIDYwKSkgLyAxMDAwKVxuICAgIHJldHVybiBgJHtob3Vycy50b1N0cmluZygpLnBhZFN0YXJ0KDIsICcwJyl9OiR7bWludXRlcy50b1N0cmluZygpLnBhZFN0YXJ0KDIsICcwJyl9OiR7c2Vjb25kcy50b1N0cmluZygpLnBhZFN0YXJ0KDIsICcwJyl9YFxuICB9XG59XG4iXX0=
@@ -16,30 +16,31 @@ export const STREAMING_SUPPORT_URL = 'https://docs.decentraland.org//creator/edi
16
16
  export function LiveStream({ engine, scaleFactor, entity, video }) {
17
17
  const [showResetStreamKey, setResetStreamKey] = ReactEcs.useState(false);
18
18
  const [loading, setLoading] = ReactEcs.useState(false);
19
+ const [hasStreamKey, setHasStreamKey] = ReactEcs.useState(false);
19
20
  const { VideoControlState } = getComponents(engine);
20
21
  const videoControlState = VideoControlState.getOrNull(state.adminToolkitUiEntity);
21
- const streamKey = videoControlState?.streamKey;
22
22
  const streamKeyEndsAt = videoControlState?.endsAt;
23
23
  ReactEcs.useEffect(() => {
24
24
  async function streamKeyFn() {
25
- if (!streamKey)
26
- setLoading(true);
25
+ setLoading(true);
27
26
  const [error, data] = await getStreamKey();
28
27
  const videoControlState = VideoControlState.getMutable(state.adminToolkitUiEntity);
29
28
  if (error) {
30
29
  videoControlState.endsAt = undefined;
31
- videoControlState.streamKey = undefined;
30
+ setHasStreamKey(false);
32
31
  }
33
32
  else {
34
33
  videoControlState.endsAt = data?.endsAt;
35
- videoControlState.streamKey = data?.streamingKey ?? '';
34
+ setHasStreamKey(true);
36
35
  }
37
36
  setLoading(false);
38
37
  }
39
38
  streamKeyFn();
40
39
  }, []);
41
40
  if (showResetStreamKey) {
42
- return ReactEcs.createElement(DeleteStreamKeyConfirmation, { scaleFactor: scaleFactor, engine: engine, onCancel: () => setResetStreamKey(false) });
41
+ return ReactEcs.createElement(DeleteStreamKeyConfirmation, { scaleFactor: scaleFactor, engine: engine, onCancel: () => setResetStreamKey(false), onReset: () => {
42
+ setResetStreamKey(false);
43
+ } });
43
44
  }
44
45
  return (ReactEcs.createElement(UiEntity, { uiTransform: { flexDirection: 'column', width: '100%' } },
45
46
  ReactEcs.createElement(UiEntity, { uiTransform: { width: '100%', justifyContent: 'space-between' } },
@@ -56,7 +57,7 @@ export function LiveStream({ engine, scaleFactor, entity, video }) {
56
57
  },
57
58
  } })),
58
59
  ReactEcs.createElement(Label, { textAlign: "middle-left", value: "Use the RTMP server and stream key below in your broadcasting software to start streaming to this screen.", color: Color4.fromHexString('#A09BA8'), fontSize: 16 * scaleFactor }),
59
- loading ? (ReactEcs.createElement(LoadingDots, { uiTransform: { minHeight: 400 * scaleFactor }, scaleFactor: scaleFactor, engine: engine })) : streamKey ? (ReactEcs.createElement(ShowStreamKey, { streamKey: streamKey ?? '', endsAt: streamKeyEndsAt ?? 0, scaleFactor: scaleFactor, engine: engine, entity: entity, video: video, onReset: () => setResetStreamKey(true) })) : (ReactEcs.createElement(GenerateStreamKey, { scaleFactor: scaleFactor, engine: engine })),
60
- !streamKey && ReactEcs.createElement(Label, { fontSize: 14 * scaleFactor, color: Color4.fromHexString('#FF2D55'), value: "Do not share your stream key with anyone, and be careful not to display it on screen while streaming." })));
60
+ loading ? (ReactEcs.createElement(LoadingDots, { uiTransform: { minHeight: 400 * scaleFactor }, scaleFactor: scaleFactor, engine: engine })) : hasStreamKey ? (ReactEcs.createElement(ShowStreamKey, { endsAt: streamKeyEndsAt ?? 0, scaleFactor: scaleFactor, engine: engine, entity: entity, video: video, onReset: () => setResetStreamKey(true) })) : (ReactEcs.createElement(GenerateStreamKey, { scaleFactor: scaleFactor, engine: engine, onGenerate: () => setHasStreamKey(true) })),
61
+ !hasStreamKey && ReactEcs.createElement(Label, { fontSize: 14 * scaleFactor, color: Color4.fromHexString('#FF2D55'), value: "Do not share your stream key with anyone, and be careful not to display it on screen while streaming." })));
61
62
  }
62
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYWRtaW4tdG9vbGtpdC11aS9WaWRlb0NvbnRyb2wvTGl2ZVN0cmVhbS9pbmRleC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUV0QyxPQUFPLFFBQVEsRUFBRSxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUMxRCxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sSUFBSSxDQUFBO0FBQzFCLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxjQUFjLENBQUE7QUFDckMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlCQUFpQixDQUFBO0FBQy9DLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHFCQUFxQixDQUFBO0FBQ3ZELE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLG1CQUFtQixDQUFBO0FBQy9ELE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxPQUFPLENBQUE7QUFDN0IsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHNCQUFzQixDQUFBO0FBQ3BELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxRQUFRLENBQUE7QUFDckMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUMzQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMkJBQTJCLENBQUE7QUFDM0QsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGFBQWEsQ0FBQTtBQUV2QyxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRyxnQ0FBZ0MsQ0FBQTtBQUNsRSxNQUFNLENBQUMsTUFBTSxxQkFBcUIsR0FBRyw4REFBOEQsQ0FBQTtBQUVuRyxNQUFNLFVBQVUsVUFBVSxDQUFDLEVBQ3pCLE1BQU0sRUFDTixXQUFXLEVBQ1gsTUFBTSxFQUNOLEtBQUssRUFNTjtJQUNDLE1BQU0sQ0FBQyxrQkFB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QUUsRUFBRSxHQUFHLFdBQVcsR0FDMUI7UUFDRCxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQ1QsdUJBQUMsV0FBVyxJQUNWLFdBQVcsRUFBRSxFQUFFLFNBQVMsRUFBRSxHQUFHLEdBQUcsV0FBVyxFQUFFLEVBQzdDLFdBQVcsRUFBRSxXQUFXLEVBQ3hCLE1BQU0sRUFBRSxNQUFNLEdBQ2QsQ0FDSCxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQ2QsdUJBQUMsYUFBYSxJQUNaLFNBQVMsRUFBRSxTQUFTLElBQUksRUFBRSxFQUMxQixNQUFNLEVBQUUsZUFBZSxJQUFJLENBQUMsRUFDNUIsV0FBVyxFQUFFLFdBQVcsRUFDeEIsTUFBTSxFQUFFLE1BQU0sRUFDZCxNQUFNLEVBQUUsTUFBTSxFQUNkLEtBQUssRUFBRSxLQUFLLEVBQ1osT0FBTyxFQUFFLEdBQUcsRUFBRSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxHQUN0QyxDQUNILENBQUMsQ0FBQyxDQUFDLENBQ0YsdUJBQUMsaUJBQWlCLElBQUMsV0FBVyxFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUUsTUFBTSxHQUFJLENBQ2hFO1FBQ0EsQ0FBQyxTQUFTLElBQUksdUJBQUMsS0FBSyxJQUNuQixRQUFRLEVBQUUsRUFBRSxHQUFHLFdBQVcsRUFDMUIsS0FBSyxFQUFFLE1BQU0sQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLEVBQ3RDLEtBQUssRUFBQyx1R0FBdUcsR0FDN0csQ0FDTyxDQUNaLENBQUE7QUFDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29sb3I0IH0gZnJvbSAnQGRjbC9zZGsvbWF0aCdcbmltcG9ydCB7IERlZXBSZWFkb25seU9iamVjdCwgRW50aXR5LCBJRW5naW5lLCBQQlZpZGVvUGxheWVyIH0gZnJvbSAnQGRjbC9lY3MnXG5pbXBvcnQgUmVhY3RFY3MsIHsgVWlFbnRpdHksIExhYmVsIH0gZnJvbSAnQGRjbC9yZWFjdC1lY3MnXG5pbXBvcnQgeyBJQ09OUyB9IGZyb20gJy4uJ1xuaW1wb3J0IHsgSGVhZGVyIH0gZnJvbSAnLi4vLi4vSGVhZGVyJ1xuaW1wb3J0IHsgU2hvd1N0cmVhbUtleSB9IGZyb20gJy4vU2hvd1N0cmVhbUtleSdcbmltcG9ydCB7IEdlbmVyYXRlU3RyZWFtS2V5IH0gZnJvbSAnLi9HZW5lcmF0ZVN0cmVhbUtleSdcbmltcG9ydCB7IERlbGV0ZVN0cmVhbUtleUNvbmZpcm1hdGlvbiB9IGZyb20gJy4vRGVsZXRlU3RyZWFtS2V5J1xuaW1wb3J0IHsgc3RhdGUgfSBmcm9tICcuLi8uLidcbmltcG9ydCB7IGdldENvbXBvbmVudHMgfSBmcm9tICcuLi8uLi8uLi9kZWZpbml0aW9ucydcbmltcG9ydCB7IGdldFN0cmVhbUtleSB9IGZyb20gJy4uL2FwaSdcbmltcG9ydCB7IExvYWRpbmdEb3RzIH0gZnJvbSAnLi4vLi4vTG9hZGluZydcbmltcG9ydCB7IG9wZW5FeHRlcm5hbFVybCB9IGZyb20gJ35zeXN0ZW0vUmVzdHJpY3RlZEFjdGlvbnMnXG5pbXBvcnQgeyBIRUxQX0lDT04gfSBmcm9tICcuLi9WaWRlb1VybCdcblxuZXhwb3J0IGNvbnN0IExJVkVLSVRfU1RSRUFNX1NSQyA9ICdsaXZla2l0LXZpZGVvOi8vY3VycmVudC1zdHJlYW0nXG5leHBvcnQgY29uc3QgU1RSRUFNSU5HX1NVUFBPUlRfVVJMID0gJ2h0dHBzOi8vZG9jcy5kZWNlbnRyYWxhbmQub3JnLy9jcmVhdG9yL2VkaXRvci9saXZlLXN0cmVhbWluZydcblxuZXhwb3J0IGZ1bmN0aW9uIExpdmVTdHJlYW0oe1xuICBlbmdpbmUsXG4gIHNjYWxlRmFjdG9yLFxuICBlbnRpdHksXG4gIHZpZGVvXG59OiB7XG4gIGVuZ2luZTogSUVuZ2luZVxuICBzY2FsZUZhY3RvcjogbnVtYmVyXG4gIGVudGl0eTogRW50aXR5XG4gIHZpZGVvOiBEZWVwUmVhZG9ubHlPYmplY3Q8UEJWaWRlb1BsYXllcj4gfCB1bmRlZmluZWRcbn0pIHtcbiAgY29uc3QgW3Nob3dSZXNldFN0cmVhbUtleSwgc2V0UmVzZXRTdHJlYW1LZXldID0gUmVhY3RFY3MudXNlU3RhdGU8Ym9vbGVhbj4oZmFsc2UpXG4gIGNvbnN0IFtsb2FkaW5nLCBzZXRMb2FkaW5nXSA9IFJlYWN0RWNzLnVzZVN0YXRlPGJvb2xlYW4+KGZhbHNlKVxuICBjb25zdCB7IFZpZGVvQ29udHJvbFN0YXRlIH0gPSBnZXRDb21wb25lbnRzKGVuZ2luZSlcbiAgY29uc3QgdmlkZW9Db250cm9sU3RhdGUgPSBWaWRlb0NvbnRyb2xTdGF0ZS5nZXRPck51bGwoc3RhdGUuYWRtaW5Ub29sa2l0VWlFbnRpdHkpXG4gIGNvbnN0IHN0cmVhbUtleSA9IHZpZGVvQ29udHJvbFN0YXRlPy5zdHJlYW1LZXlcbiAgY29uc3Qgc3RyZWFtS2V5RW5kc0F0ID0gdmlkZW9Db250cm9sU3RhdGU/LmVuZHNBdFxuXG4gIFJlYWN0RWNzLnVzZUVmZmVjdCgoKSA9PiB7XG4gICAgYXN5bmMgZnVuY3Rpb24gc3RyZWFtS2V5Rm4oKSB7XG4gICAgICBpZiAoIXN0cmVhbUtleSkgc2V0TG9hZGluZyh0cnVlKVxuICAgICAgY29uc3QgW2Vycm9yLCBkYXRhXSA9IGF3YWl0IGdldFN0cmVhbUtleSgpXG4gICAgICBjb25zdCB2aWRlb0NvbnRyb2xTdGF0ZSA9IFZpZGVvQ29udHJvbFN0YXRlLmdldE11dGFibGUoXG4gICAgICAgIHN0YXRlLmFkbWluVG9vbGtpdFVpRW50aXR5LFxuICAgICAgKVxuICAgICAgaWYgKGVycm9yKSB7XG4gICAgICAgIHZpZGVvQ29udHJvbFN0YXRlLmVuZHNBdCA9IHVuZGVmaW5lZFxuICAgICAgICB2aWRlb0NvbnRyb2xTdGF0ZS5zdHJlYW1LZXkgPSB1bmRlZmluZWRcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHZpZGVvQ29udHJvbFN0YXRlLmVuZHNBdCA9IGRhdGE/LmVuZHNBdFxuICAgICAgICB2aWRlb0NvbnRyb2xTdGF0ZS5zdHJlYW1LZXkgPSBkYXRhPy5zdHJlYW1pbmdLZXkgPz8gJydcbiAgICAgIH1cbiAgICAgIHNldExvYWRpbmcoZmFsc2UpXG4gICAgfVxuICAgIHN0cmVhbUtleUZuKClcbiAgfSwgW10pXG5cblxuICBpZiAoc2hvd1Jlc2V0U3RyZWFtS2V5KSB7XG4gICAgcmV0dXJuIDxEZWxldGVTdHJlYW1LZXlDb25maXJtYXRpb25cbiAgICAgIHNjYWxlRmFjdG9yPXtzY2FsZUZhY3Rvcn1cbiAgICAgIGVuZ2luZT17ZW5naW5lfVxuICAgICAgb25DYW5jZWw9eygpID0+IHNldFJlc2V0U3RyZWFtS2V5KGZhbHNlKX1cbiAgICAvPlxuICB9XG5cbiAgcmV0dXJuIChcbiAgICA8VWlFbnRpdHkgdWlUcmFuc2Zvcm09e3sgZmxleERpcmVjdGlvbjogJ2NvbHVtbicsIHdpZHRoOiAnMTAwJScgfX0+XG4gICAgICA8VWlFbnRpdHlcbiAgICAgICAgdWlUcmFuc2Zvcm09e3sgd2lkdGg6ICcxMDAlJywganVzdGlmeUNvbnRlbnQ6ICdzcGFjZS1iZXR3ZWVuJyB9fVxuICAgICAgPlxuICAgICAgICA8SGVhZGVyXG4gICAgICAgICAgaWNvblNyYz17SUNPTlMuTElWRV9TT1VSQ0V9XG4gICAgICAgICAgdGl0bGU9XCJMaXZlIFN0cmVhbVwiXG4gICAgICAgICAgc2NhbGVGYWN0b3I9e3NjYWxlRmFjdG9yfVxuICAgICAgICAvPlxuICAgICAgICA8VWlFbnRpdHlcbiAgICAgICAgICBvbk1vdXNlRG93bj17KCkgPT4gb3BlbkV4dGVybmFsVXJsKHsgdXJsOiBTVFJFQU1JTkdfU1VQUE9SVF9VUkwgfSl9XG4gICAgICAgICAgdWlUcmFuc2Zvcm09e3tcbiAgICAgICAgICAgIHdpZHRoOiAyNSAqIHNjYWxlRmFjdG9yLFxuICAgICAgICAgICAgaGVpZ2h0OiAyNSAqIHNjYWxlRmFjdG9yLFxuICAgICAgICAgICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXG4gICAgICAgICAgfX1cbiAgICAgICAgICB1aUJhY2tncm91bmQ9e3tcbiAgICAgICAgICAgIHRleHR1cmVNb2RlOiAnc3RyZXRjaCcsXG4gICAgICAgICAgICBjb2xvcjogQ29sb3I0LldoaXRlKCksXG4gICAgICAgICAgICB0ZXh0dXJlOiB7XG4gICAgICAgICAgICAgIHNyYzogSEVMUF9JQ09OLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9fVxuICAgICAgICAvPlxuICAgICAgPC9VaUVudGl0eT5cbiAgICAgIDxMYWJlbFxuICAgICAgICB0ZXh0QWxpZ249XCJtaWRkbGUtbGVmdFwiXG4gICAgICAgIHZhbHVlPVwiVXNlIHRoZSBSVE1QIHNlcnZlciBhbmQgc3RyZWFtIGtleSBiZWxvdyBpbiB5b3VyIGJyb2FkY2FzdGluZyBzb2Z0d2FyZSB0byBzdGFydCBzdHJlYW1pbmcgdG8gdGhpcyBzY3JlZW4uXCJcbiAgICAgICAgY29sb3I9e0NvbG9yNC5mcm9tSGV4U3RyaW5nKCcjQTA5QkE4Jyl9XG4gICAgICAgIGZvbnRTaXplPXsxNiAqIHNjYWxlRmFjdG9yfVxuICAgICAgLz5cbiAgICAgIHtsb2FkaW5nID8gKFxuICAgICAgICA8TG9hZGluZ0RvdHNcbiAgICAgICAgICB1aVRyYW5zZm9ybT17eyBtaW5IZWlnaHQ6IDQwMCAqIHNjYWxlRmFjdG9yIH19XG4gICAgICAgICAgc2NhbGVGYWN0b3I9e3NjYWxlRmFjdG9yfVxuICAgICAgICAgIGVuZ2luZT17ZW5naW5lfVxuICAgICAgICAvPlxuICAgICAgKSA6IHN0cmVhbUtleSA/IChcbiAgICAgICAgPFNob3dTdHJlYW1LZXlcbiAgICAgICAgICBzdHJlYW1LZXk9e3N0cmVhbUtleSA/PyAnJ31cbiAgICAgICAgICBlbmRzQXQ9e3N0cmVhbUtleUVuZHNBdCA/PyAwfVxuICAgICAgICAgIHNjYWxlRmFjdG9yPXtzY2FsZUZhY3Rvcn1cbiAgICAgICAgICBlbmdpbmU9e2VuZ2luZX1cbiAgICAgICAgICBlbnRpdHk9e2VudGl0eX1cbiAgICAgICAgICB2aWRlbz17dmlkZW99XG4gICAgICAgICAgb25SZXNldD17KCkgPT4gc2V0UmVzZXRTdHJlYW1LZXkodHJ1ZSl9XG4gICAgICAgIC8+XG4gICAgICApIDogKFxuICAgICAgICA8R2VuZXJhdGVTdHJlYW1LZXkgc2NhbGVGYWN0b3I9e3NjYWxlRmFjdG9yfSBlbmdpbmU9e2VuZ2luZX0gLz5cbiAgICAgICl9XG4gICAgICB7IXN0cmVhbUtleSAmJiA8TGFiZWxcbiAgICAgICAgZm9udFNpemU9ezE0ICogc2NhbGVGYWN0b3J9XG4gICAgICAgIGNvbG9yPXtDb2xvcjQuZnJvbUhleFN0cmluZygnI0ZGMkQ1NScpfVxuICAgICAgICB2YWx1ZT1cIkRvIG5vdCBzaGFyZSB5b3VyIHN0cmVhbSBrZXkgd2l0aCBhbnlvbmUsIGFuZCBiZSBjYXJlZnVsIG5vdCB0byBkaXNwbGF5IGl0IG9uIHNjcmVlbiB3aGlsZSBzdHJlYW1pbmcuXCJcbiAgICAgIC8+fVxuICAgIDwvVWlFbnRpdHk+XG4gIClcbn1cblxuIl19
63
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYWRtaW4tdG9vbGtpdC11aS9WaWRlb0NvbnRyb2wvTGl2ZVN0cmVhbS9pbmRleC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUV0QyxPQUFPLFFBQVEsRUFBRSxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUMxRCxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sSUFBSSxDQUFBO0FBQzFCLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxjQUFjLENBQUE7QUFDckMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlCQUFpQixDQUFBO0FBQy9DLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHFCQUFxQixDQUFBO0FBQ3ZELE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLG1CQUFtQixDQUFBO0FBQy9ELE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxPQUFPLENBQUE7QUFDN0IsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHNCQUFzQixDQUFBO0FBQ3BELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxRQUFRLENBQUE7QUFDckMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUMzQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMkJBQTJCLENBQUE7QUFDM0QsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGFBQWEsQ0FBQTtBQUV2QyxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRyxnQ0FBZ0MsQ0FBQTtBQUNsRSxNQUFNLENBQUMsTUFBTSxxQkFBcUIsR0FBRyw4REFBOEQsQ0FBQTtBQUVuRyxNQUFNLFVBQVUsVUFBVSxDQUFDLEVBQ3pCLE1BQU0sRUFDTixXQUFXLEVBQ1gsTUFBTSxFQUNOLEtBQUssRUFNTjtJQUNDLE1BQU0sQ0FBQyxrQkFBa0IsRUFBRSxpQkFBaUIsQ0FBQyxHQUFHLFFBQVEsQ0FBQyxRQUFRLENBQVUsS0FBSyxDQUFDLENBQUE7SUFDakYsTUFBTSxDQUFDLE9BQU8sRUFBRSxVQUFVLENBQUMsR0FBRyxRQUFRLENBQUMsUUFBUSxDQUFVLEtBQUssQ0FBQyxDQUFBO0lBQy9ELE1BQU0sQ0FBQyxZQUFZLEVBQUUsZUFBZSxDQUFDLEdBQUcsUUFBUSxDQUFDLFFBQVEsQ0FBVSxLQUFLLENBQUMsQ0FBQTtJQUN6RSxNQUFNLEVBQUUsaUJBQWlCLEVBQUUsR0FBRyxhQUFhLENBQUMsTUFBTSxDQUFDLENBQUE7SUFDbkQsTUFBTSxpQkFBaUIsR0FBRyxpQkFBaUIsQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLG9CQUFvQixDQUFDLENBQUE7SUFDakYsTUFBTSxlQUFlLEdBQUcsaUJBQWlCLEVBQUUsTUFBTSxDQUFBO0lBRWpELFFBQVEsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1FBQ3RCLEtBQUssVUFBVSxXQUFXO1lBQ3hCLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQTtZQUNoQixNQUFNLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxHQUFHLE1BQU0sWUFBWSxFQUFFLENBQUE7WUFDMUMsTUFBTSxpQkFBaUIsR0FBRyxpQkFBaUIsQ0FBQyxVQUFVLENBQ3BELEtBQUssQ0FBQyxvQkFBb0IsQ0FDM0IsQ0FBQTtZQUNELElBQUksS0FBSyxFQUFFLENBQUM7Z0JBQ1YsaUJBQWlCLENBQUMsTUFBTSxHQUFHLFNBQVMsQ0FBQTtnQkFDcEMsZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFBO1lBQ3hCLENBQUM7aUJBQU0sQ0FBQztnQkFDTixpQkFBaUIsQ0FBQyxNQUFNLEdBQUcsSUFBSSxFQUFFLE1BQU0sQ0FBQTtnQkFDdkMsZUFBZSxDQUFDLElBQUksQ0FBQyxDQUFBO1lBQ3ZCLENBQUM7WUFDRCxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUE7UUFDbkIsQ0FBQztRQUNELFdBQVcsRUFBRSxDQUFBO0lBQ2YsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFBO0lBR04sSUFBSSxrQkFBa0IsRUFBRSxDQUFDO1FBQ3ZCLE9BQU8sdUJBQUMsMkJBQTJCLElBQ2pDLFdBQVcsRUFBRSxXQUFXLEVBQ3hCLE1BQU0sRUFBRSxNQUFNLEVBQ2QsUUFBUSxFQUFFLEdBQUcsRUFBRSxDQUFDLGlCQUFpQixDQUFDLEtBQUssQ0FBQyxFQUN4QyxPQUFPLEVBQUUsR0FBRyxFQUFFO2dCQUNaLGlCQUFpQixDQUFDLEtBQUssQ0FBQyxDQUFBO1lBQzFCLENBQUMsR0FDRCxDQUFBO0lBQ0osQ0FBQztJQUVELE9BQU8sQ0FDTCx1QkFBQyxRQUFRLElBQUMsV0FBVyxFQUFFLEVBQUUsYUFBYSxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFO1FBQy9ELHVCQUFDLFFBQVEsSUFDUCxXQUFXLEVBQUUsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLGNBQWMsRUFBRSxlQUFlLEVBQUU7WUFFL0QsdUJBQUMsTUFBTSxJQUNMLE9BQU8sRUFBRSxLQUFLLENBQUMsV0FBVyxFQUMxQixLQUFLLEVBQUMsYUFBYSxFQUNuQixXQUFXLEVBQUUsV0FBVyxHQUN4QjtZQUNGLHVCQUFDLFFBQVEsSUFDUCxXQUFXLEVBQUUsR0FBRyxFQUFFLENBQUMsZUFBZSxDQUFDLEVBQUUsR0FBRyxFQUFFLHFCQUFxQixFQUFFLENBQUMsRUFDbEUsV0FBVyxFQUFFO29CQUNYLEtBQUssRUFBRSxFQUFFLEdBQUcsV0FBVztvQkFDdkIsTUFBTSxFQUFFLEVBQUUsR0FBRyxXQUFXO29CQUN4QixVQUFVLEVBQUUsUUFBUTtpQkFDckIsRUFDRCxZQUFZLEVBQUU7b0JBQ1osV0FBVyxFQUFFLFNBQVM7b0JBQ3RCLEtBQUssRUFBRSxNQUFNLENBQUMsS0FBSyxFQUFFO29CQUNyQixPQUFPLEVBQUU7d0JBQ1AsR0FBRyxFQUFFLFNBQVM7cUJBQ2Y7aUJBQ0YsR0FDRCxDQUNPO1FBQ1gsdUJBQUMsS0FBSyxJQUNKLFNBQVMsRUFBQyxhQUFhLEVBQ3ZCLEtBQUssRUFBQywyR0FBMkcsRUFDakgsS0FBSyxFQUFFLE1BQU0sQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLEVBQ3RDLFFBQVEsRUFBRSxFQUFFLEdBQUcsV0FBVyxHQUMxQjtRQUNELE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FDVCx1QkFBQyxXQUFXLElBQ1YsV0FBVyxFQUFFLEVBQUUsU0FBUyxFQUFFLEdBQUcsR0FBRyxXQUFXLEVBQUUsRUFDN0MsV0FBVyxFQUFFLFdBQVcsRUFDeEIsTUFBTSxFQUFFLE1BQU0sR0FDZCxDQUNILENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FDakIsdUJBQUMsYUFBYSxJQUNaLE1BQU0sRUFBRSxlQUFlLElBQUksQ0FBQyxFQUM1QixXQUFXLEVBQUUsV0FBVyxFQUN4QixNQUFNLEVBQUUsTUFBTSxFQUNkLE1BQU0sRUFBRSxNQUFNLEVBQ2QsS0FBSyxFQUFFLEtBQUssRUFDWixPQUFPLEVBQUUsR0FBRyxFQUFFLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLEdBQ3RDLENBQ0gsQ0FBQyxDQUFDLENBQUMsQ0FDRix1QkFBQyxpQkFBaUIsSUFDaEIsV0FBVyxFQUFFLFdBQVcsRUFDeEIsTUFBTSxFQUFFLE1BQU0sRUFDZCxVQUFVLEVBQUUsR0FBRyxFQUFFLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxHQUN2QyxDQUNIO1FBQ0EsQ0FBQyxZQUFZLElBQUksdUJBQUMsS0FBSyxJQUN0QixRQUFRLEVBQUUsRUFBRSxHQUFHLFdBQVcsRUFDMUIsS0FBSyxFQUFFLE1BQU0sQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLEVBQ3RDLEtBQUssRUFBQyx1R0FBdUcsR0FDN0csQ0FDTyxDQUNaLENBQUE7QUFDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29sb3I0IH0gZnJvbSAnQGRjbC9zZGsvbWF0aCdcbmltcG9ydCB7IERlZXBSZWFkb25seU9iamVjdCwgRW50aXR5LCBJRW5naW5lLCBQQlZpZGVvUGxheWVyIH0gZnJvbSAnQGRjbC9lY3MnXG5pbXBvcnQgUmVhY3RFY3MsIHsgVWlFbnRpdHksIExhYmVsIH0gZnJvbSAnQGRjbC9yZWFjdC1lY3MnXG5pbXBvcnQgeyBJQ09OUyB9IGZyb20gJy4uJ1xuaW1wb3J0IHsgSGVhZGVyIH0gZnJvbSAnLi4vLi4vSGVhZGVyJ1xuaW1wb3J0IHsgU2hvd1N0cmVhbUtleSB9IGZyb20gJy4vU2hvd1N0cmVhbUtleSdcbmltcG9ydCB7IEdlbmVyYXRlU3RyZWFtS2V5IH0gZnJvbSAnLi9HZW5lcmF0ZVN0cmVhbUtleSdcbmltcG9ydCB7IERlbGV0ZVN0cmVhbUtleUNvbmZpcm1hdGlvbiB9IGZyb20gJy4vRGVsZXRlU3RyZWFtS2V5J1xuaW1wb3J0IHsgc3RhdGUgfSBmcm9tICcuLi8uLidcbmltcG9ydCB7IGdldENvbXBvbmVudHMgfSBmcm9tICcuLi8uLi8uLi9kZWZpbml0aW9ucydcbmltcG9ydCB7IGdldFN0cmVhbUtleSB9IGZyb20gJy4uL2FwaSdcbmltcG9ydCB7IExvYWRpbmdEb3RzIH0gZnJvbSAnLi4vLi4vTG9hZGluZydcbmltcG9ydCB7IG9wZW5FeHRlcm5hbFVybCB9IGZyb20gJ35zeXN0ZW0vUmVzdHJpY3RlZEFjdGlvbnMnXG5pbXBvcnQgeyBIRUxQX0lDT04gfSBmcm9tICcuLi9WaWRlb1VybCdcblxuZXhwb3J0IGNvbnN0IExJVkVLSVRfU1RSRUFNX1NSQyA9ICdsaXZla2l0LXZpZGVvOi8vY3VycmVudC1zdHJlYW0nXG5leHBvcnQgY29uc3QgU1RSRUFNSU5HX1NVUFBPUlRfVVJMID0gJ2h0dHBzOi8vZG9jcy5kZWNlbnRyYWxhbmQub3JnLy9jcmVhdG9yL2VkaXRvci9saXZlLXN0cmVhbWluZydcblxuZXhwb3J0IGZ1bmN0aW9uIExpdmVTdHJlYW0oe1xuICBlbmdpbmUsXG4gIHNjYWxlRmFjdG9yLFxuICBlbnRpdHksXG4gIHZpZGVvXG59OiB7XG4gIGVuZ2luZTogSUVuZ2luZVxuICBzY2FsZUZhY3RvcjogbnVtYmVyXG4gIGVudGl0eTogRW50aXR5XG4gIHZpZGVvOiBEZWVwUmVhZG9ubHlPYmplY3Q8UEJWaWRlb1BsYXllcj4gfCB1bmRlZmluZWRcbn0pIHtcbiAgY29uc3QgW3Nob3dSZXNldFN0cmVhbUtleSwgc2V0UmVzZXRTdHJlYW1LZXldID0gUmVhY3RFY3MudXNlU3RhdGU8Ym9vbGVhbj4oZmFsc2UpXG4gIGNvbnN0IFtsb2FkaW5nLCBzZXRMb2FkaW5nXSA9IFJlYWN0RWNzLnVzZVN0YXRlPGJvb2xlYW4+KGZhbHNlKVxuICBjb25zdCBbaGFzU3RyZWFtS2V5LCBzZXRIYXNTdHJlYW1LZXldID0gUmVhY3RFY3MudXNlU3RhdGU8Ym9vbGVhbj4oZmFsc2UpXG4gIGNvbnN0IHsgVmlkZW9Db250cm9sU3RhdGUgfSA9IGdldENvbXBvbmVudHMoZW5naW5lKVxuICBjb25zdCB2aWRlb0NvbnRyb2xTdGF0ZSA9IFZpZGVvQ29udHJvbFN0YXRlLmdldE9yTnVsbChzdGF0ZS5hZG1pblRvb2xraXRVaUVudGl0eSlcbiAgY29uc3Qgc3RyZWFtS2V5RW5kc0F0ID0gdmlkZW9Db250cm9sU3RhdGU/LmVuZHNBdFxuXG4gIFJlYWN0RWNzLnVzZUVmZmVjdCgoKSA9PiB7XG4gICAgYXN5bmMgZnVuY3Rpb24gc3RyZWFtS2V5Rm4oKSB7XG4gICAgICBzZXRMb2FkaW5nKHRydWUpXG4gICAgICBjb25zdCBbZXJyb3IsIGRhdGFdID0gYXdhaXQgZ2V0U3RyZWFtS2V5KClcbiAgICAgIGNvbnN0IHZpZGVvQ29udHJvbFN0YXRlID0gVmlkZW9Db250cm9sU3RhdGUuZ2V0TXV0YWJsZShcbiAgICAgICAgc3RhdGUuYWRtaW5Ub29sa2l0VWlFbnRpdHksXG4gICAgICApXG4gICAgICBpZiAoZXJyb3IpIHtcbiAgICAgICAgdmlkZW9Db250cm9sU3RhdGUuZW5kc0F0ID0gdW5kZWZpbmVkXG4gICAgICAgIHNldEhhc1N0cmVhbUtleShmYWxzZSlcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHZpZGVvQ29udHJvbFN0YXRlLmVuZHNBdCA9IGRhdGE/LmVuZHNBdFxuICAgICAgICBzZXRIYXNTdHJlYW1LZXkodHJ1ZSlcbiAgICAgIH1cbiAgICAgIHNldExvYWRpbmcoZmFsc2UpXG4gICAgfVxuICAgIHN0cmVhbUtleUZuKClcbiAgfSwgW10pXG5cblxuICBpZiAoc2hvd1Jlc2V0U3RyZWFtS2V5KSB7XG4gICAgcmV0dXJuIDxEZWxldGVTdHJlYW1LZXlDb25maXJtYXRpb25cbiAgICAgIHNjYWxlRmFjdG9yPXtzY2FsZUZhY3Rvcn1cbiAgICAgIGVuZ2luZT17ZW5naW5lfVxuICAgICAgb25DYW5jZWw9eygpID0+IHNldFJlc2V0U3RyZWFtS2V5KGZhbHNlKX1cbiAgICAgIG9uUmVzZXQ9eygpID0+IHtcbiAgICAgICAgc2V0UmVzZXRTdHJlYW1LZXkoZmFsc2UpXG4gICAgICB9fVxuICAgIC8+XG4gIH1cblxuICByZXR1cm4gKFxuICAgIDxVaUVudGl0eSB1aVRyYW5zZm9ybT17eyBmbGV4RGlyZWN0aW9uOiAnY29sdW1uJywgd2lkdGg6ICcxMDAlJyB9fT5cbiAgICAgIDxVaUVudGl0eVxuICAgICAgICB1aVRyYW5zZm9ybT17eyB3aWR0aDogJzEwMCUnLCBqdXN0aWZ5Q29udGVudDogJ3NwYWNlLWJldHdlZW4nIH19XG4gICAgICA+XG4gICAgICAgIDxIZWFkZXJcbiAgICAgICAgICBpY29uU3JjPXtJQ09OUy5MSVZFX1NPVVJDRX1cbiAgICAgICAgICB0aXRsZT1cIkxpdmUgU3RyZWFtXCJcbiAgICAgICAgICBzY2FsZUZhY3Rvcj17c2NhbGVGYWN0b3J9XG4gICAgICAgIC8+XG4gICAgICAgIDxVaUVudGl0eVxuICAgICAgICAgIG9uTW91c2VEb3duPXsoKSA9PiBvcGVuRXh0ZXJuYWxVcmwoeyB1cmw6IFNUUkVBTUlOR19TVVBQT1JUX1VSTCB9KX1cbiAgICAgICAgICB1aVRyYW5zZm9ybT17e1xuICAgICAgICAgICAgd2lkdGg6IDI1ICogc2NhbGVGYWN0b3IsXG4gICAgICAgICAgICBoZWlnaHQ6IDI1ICogc2NhbGVGYWN0b3IsXG4gICAgICAgICAgICBhbGlnbkl0ZW1zOiAnY2VudGVyJyxcbiAgICAgICAgICB9fVxuICAgICAgICAgIHVpQmFja2dyb3VuZD17e1xuICAgICAgICAgICAgdGV4dHVyZU1vZGU6ICdzdHJldGNoJyxcbiAgICAgICAgICAgIGNvbG9yOiBDb2xvcjQuV2hpdGUoKSxcbiAgICAgICAgICAgIHRleHR1cmU6IHtcbiAgICAgICAgICAgICAgc3JjOiBIRUxQX0lDT04sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH19XG4gICAgICAgIC8+XG4gICAgICA8L1VpRW50aXR5PlxuICAgICAgPExhYmVsXG4gICAgICAgIHRleHRBbGlnbj1cIm1pZGRsZS1sZWZ0XCJcbiAgICAgICAgdmFsdWU9XCJVc2UgdGhlIFJUTVAgc2VydmVyIGFuZCBzdHJlYW0ga2V5IGJlbG93IGluIHlvdXIgYnJvYWRjYXN0aW5nIHNvZnR3YXJlIHRvIHN0YXJ0IHN0cmVhbWluZyB0byB0aGlzIHNjcmVlbi5cIlxuICAgICAgICBjb2xvcj17Q29sb3I0LmZyb21IZXhTdHJpbmcoJyNBMDlCQTgnKX1cbiAgICAgICAgZm9udFNpemU9ezE2ICogc2NhbGVGYWN0b3J9XG4gICAgICAvPlxuICAgICAge2xvYWRpbmcgPyAoXG4gICAgICAgIDxMb2FkaW5nRG90c1xuICAgICAgICAgIHVpVHJhbnNmb3JtPXt7IG1pbkhlaWdodDogNDAwICogc2NhbGVGYWN0b3IgfX1cbiAgICAgICAgICBzY2FsZUZhY3Rvcj17c2NhbGVGYWN0b3J9XG4gICAgICAgICAgZW5naW5lPXtlbmdpbmV9XG4gICAgICAgIC8+XG4gICAgICApIDogaGFzU3RyZWFtS2V5ID8gKFxuICAgICAgICA8U2hvd1N0cmVhbUtleVxuICAgICAgICAgIGVuZHNBdD17c3RyZWFtS2V5RW5kc0F0ID8/IDB9XG4gICAgICAgICAgc2NhbGVGYWN0b3I9e3NjYWxlRmFjdG9yfVxuICAgICAgICAgIGVuZ2luZT17ZW5naW5lfVxuICAgICAgICAgIGVudGl0eT17ZW50aXR5fVxuICAgICAgICAgIHZpZGVvPXt2aWRlb31cbiAgICAgICAgICBvblJlc2V0PXsoKSA9PiBzZXRSZXNldFN0cmVhbUtleSh0cnVlKX1cbiAgICAgICAgLz5cbiAgICAgICkgOiAoXG4gICAgICAgIDxHZW5lcmF0ZVN0cmVhbUtleVxuICAgICAgICAgIHNjYWxlRmFjdG9yPXtzY2FsZUZhY3Rvcn1cbiAgICAgICAgICBlbmdpbmU9e2VuZ2luZX1cbiAgICAgICAgICBvbkdlbmVyYXRlPXsoKSA9PiBzZXRIYXNTdHJlYW1LZXkodHJ1ZSl9XG4gICAgICAgIC8+XG4gICAgICApfVxuICAgICAgeyFoYXNTdHJlYW1LZXkgJiYgPExhYmVsXG4gICAgICAgIGZvbnRTaXplPXsxNCAqIHNjYWxlRmFjdG9yfVxuICAgICAgICBjb2xvcj17Q29sb3I0LmZyb21IZXhTdHJpbmcoJyNGRjJENTUnKX1cbiAgICAgICAgdmFsdWU9XCJEbyBub3Qgc2hhcmUgeW91ciBzdHJlYW0ga2V5IHdpdGggYW55b25lLCBhbmQgYmUgY2FyZWZ1bCBub3QgdG8gZGlzcGxheSBpdCBvbiBzY3JlZW4gd2hpbGUgc3RyZWFtaW5nLlwiXG4gICAgICAvPn1cbiAgICA8L1VpRW50aXR5PlxuICApXG59XG4iXX0=