@gravitee/ui-components 3.25.0 → 3.25.1
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/package.json
CHANGED
package/src/molecules/gv-code.js
CHANGED
|
@@ -23,7 +23,7 @@ import { placeholder } from '@codemirror/view';
|
|
|
23
23
|
import { shapeClipboard } from '../styles/shapes';
|
|
24
24
|
import { dispatchCustomEvent } from '../lib/events';
|
|
25
25
|
import { uuid } from '../lib/utils';
|
|
26
|
-
import { classMap } from 'lit
|
|
26
|
+
import { classMap } from 'lit/directives/class-map';
|
|
27
27
|
import { GvInput } from '../atoms/gv-input';
|
|
28
28
|
import { skeleton } from '../styles/skeleton';
|
|
29
29
|
import { empty } from '../styles/empty';
|
|
@@ -294,4 +294,4 @@ export class GvCode extends GvInput {
|
|
|
294
294
|
|
|
295
295
|
}
|
|
296
296
|
window.customElements.define('gv-code', GvCode);
|
|
297
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4vbm9kZV9tb2R1bGVzL0BncmF2aXRlZS91aS1jb21wb25lbnRzL21vbGVjdWxlcy9ndi1jb2RlLmpzIl0sIm5hbWVzIjpbImNzcyIsImh0bWwiLCJFZGl0b3JWaWV3IiwiYmFzaWNTZXR1cCIsIkVkaXRvclN0YXRlIiwiQ29tcGFydG1lbnQiLCJhdXRvY29tcGxldGlvbiIsImpzb24iLCJsYW5ndWFnZXMiLCJwbGFjZWhvbGRlciIsInNoYXBlQ2xpcGJvYXJkIiwiZGlzcGF0Y2hDdXN0b21FdmVudCIsInV1aWQiLCJjbGFzc01hcCIsIkd2SW5wdXQiLCJza2VsZXRvbiIsImVtcHR5IiwiaW5wdXQiLCJHdkNvZGUiLCJwcm9wZXJ0aWVzIiwib3B0aW9ucyIsInR5cGUiLCJPYmplY3QiLCJyb3dzIiwiTnVtYmVyIiwiX2Vycm9yIiwiU3RyaW5nIiwiYXR0cmlidXRlIiwiY29uc3RydWN0b3IiLCJfaWQiLCJ2YWx1ZSIsInJlYWRvbmx5IiwiYXV0b2ZvY3VzIiwiY2xpcGJvYXJkIiwiX2NsaXBib2FyZEljb24iLCJsYW5ndWFnZUNvbXBhcnRtZW50IiwicmVhZG9ubHlDb21wYXJ0bWVudCIsInBsYWNlaG9sZGVyQ29tcGFydG1lbnQiLCJyZW5kZXIiLCJjbGFzc2VzIiwiYm94IiwibGFyZ2UiLCJtZWRpdW0iLCJzbWFsbCIsImNvcGllZCIsImhhc0NsaXBib2FyZCIsIl9jb3BpZWQiLCJpbnB1dENsYXNzZXMiLCJjb250ZW50IiwiY29kZSIsImhhc0lucHV0U3R5bGUiLCJsYWJlbCIsInJlbmRlckljb24iLCJkZXNjcmlwdGlvbiIsImJpbmRJbnB1dEV2ZW50cyIsImN1cnJlbnRUYXJnZXQiLCJfYXV0b2NvbXBsZXRlIiwiY29tcGxldGlvbkNvbnRleHQiLCJoYW5kbGVyIiwibWF0Y2giLCJmaW5kQmVzdEF1dG9jb21wbGV0ZUhhbmRsZXIiLCJydW4iLCJjYWxsIiwiZGVmYXVsdENvbXBsZXRpb25IYW5kbGVyIiwibGFuZ3VhZ2UiLCJzdGF0ZSIsImxhbmd1YWdlRGF0YUF0IiwicG9zIiwibGVuZ3RoIiwiZnJvbSIsIl9nZXRFeHRlbnNpb25zIiwiY29kZW1pcnJvclRoZW1lIiwib2YiLCJ0cmFuc2FjdGlvbkZpbHRlciIsInRyIiwibmV3RG9jIiwibGluZXMiLCJlZGl0YWJsZSIsImRpc2FibGVkIiwidXBkYXRlTGlzdGVuZXIiLCJ2aWV3VXBkYXRlIiwiZG9jQ2hhbmdlZCIsIl9lZGl0b3JWaWV3IiwiZG9jIiwidG9TdHJpbmciLCJhY3RpdmF0ZU9uVHlwaW5nIiwib3ZlcnJpZGUiLCJiaW5kIiwiZ2V0RXh0ZW5zaW9ucyIsImdldElucHV0RWxlbWVudCIsInNoYWRvd1Jvb3QiLCJxdWVyeVNlbGVjdG9yIiwiZmlyc3RVcGRhdGVkIiwiX2VkaXRvclN0YXRlIiwiY3JlYXRlIiwiZXh0ZW5zaW9ucyIsInBhcmVudCIsInJvb3QiLCJkaXNwYXRjaCIsInRyYW5zYWN0aW9uIiwidXBkYXRlIiwiZSIsImFwcGVuZENoaWxkIiwiZG9tIiwidXBkYXRlZCIsImhhcyIsIl9yZWZsZWN0UGxhY2Vob2xkZXIiLCJfcmVmbGVjdFZhbHVlIiwiX3JlZmxlY3RSZWFkb25seURpc2FibGVkIiwiX3JlZmxlY3RPcHRpb25zIiwiZWZmZWN0cyIsInJlY29uZmlndXJlIiwiY2hhbmdlcyIsInRvIiwiaW5zZXJ0IiwiZmluZExhbmd1YWdlIiwibW9kZSIsIm1vZGVPbmx5Iiwic3BsaXQiLCJwb3AiLCJhc2NpaWRvYyIsIlN0cmVhbUxhbmd1YWdlIiwiUHJvbWlzZSIsImFsbCIsIm5hbWUiLCJzdXBwb3J0IiwiZXh0ZW5zaW9uIiwiZGVmaW5lIiwiZmluZCIsImxhbmd1YWdlRGVzY3JpcHRpb24iLCJ0b1VwcGVyQ2FzZSIsImFsaWFzIiwiaW5jbHVkZXMiLCJjb25zb2xlIiwid2FybiIsIm1hcCIsImwiLCJsb2FkIiwidGhlbWUiLCJvdXRsaW5lIiwiYmFja2dyb3VuZENvbG9yIiwiY29sb3IiLCJib3JkZXJMZWZ0IiwiYm9yZGVyQ29sb3IiLCJzdHlsZXMiLCJ3aW5kb3ciLCJj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SyxFQUdMQyxLQUhLLEVBSUxDLEtBSkssRUFLTDtBQUNBakIsSUFBQUEsR0FBRyxxekJBTkUsQ0FBUDtBQXVFRDs7QUEzU2lDO0FBOFNwQ2lKLE1BQU0sQ0FBQ0MsY0FBUCxDQUFzQm5CLE1BQXRCLENBQTZCLFNBQTdCLEVBQXdDN0csTUFBeEMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChDKSAyMDE1IFRoZSBHcmF2aXRlZSB0ZWFtIChodHRwOi8vZ3Jhdml0ZWUuaW8pXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuaW1wb3J0IHsgY3NzLCBodG1sIH0gZnJvbSAnbGl0JztcblxuaW1wb3J0IHsgRWRpdG9yVmlldywgYmFzaWNTZXR1cCB9IGZyb20gJ0Bjb2RlbWlycm9yL2Jhc2ljLXNldHVwJztcbmltcG9ydCB7IEVkaXRvclN0YXRlLCBDb21wYXJ0bWVudCB9IGZyb20gJ0Bjb2RlbWlycm9yL3N0YXRlJztcbmltcG9ydCB7IGF1dG9jb21wbGV0aW9uIH0gZnJvbSAnQGNvZGVtaXJyb3IvYXV0b2NvbXBsZXRlJztcbmltcG9ydCB7IGpzb24gfSBmcm9tICdAY29kZW1pcnJvci9sYW5nLWpzb24nO1xuaW1wb3J0IHsgbGFuZ3VhZ2VzIH0gZnJvbSAnQGNvZGVtaXJyb3IvbGFuZ3VhZ2UtZGF0YSc7XG5pbXBvcnQgeyBwbGFjZWhvbGRlciB9IGZyb20gJ0Bjb2RlbWlycm9yL3ZpZXcnO1xuXG5pbXBvcnQgeyBzaGFwZUNsaXBib2FyZCB9IGZyb20gJy4uL3N0eWxlcy9zaGFwZXMnO1xuaW1wb3J0IHsgZGlzcGF0Y2hDdXN0b21FdmVudCB9IGZyb20gJy4uL2xpYi9ldmVudHMnO1xuaW1wb3J0IHsgdXVpZCB9IGZyb20gJy4uL2xpYi91dGlscyc7XG5pbXBvcnQgeyBjbGFzc01hcCB9IGZyb20gJ2xpdC1odG1sL2RpcmVjdGl2ZXMvY2xhc3MtbWFwJztcbmltcG9ydCB7IEd2SW5wdXQgfSBmcm9tICcuLi9hdG9tcy9ndi1pbnB1dCc7XG5pbXBvcnQgeyBza2VsZXRvbiB9IGZyb20gJy4uL3N0eWxlcy9za2VsZXRvbic7XG5pbXBvcnQgeyBlbXB0eSB9IGZyb20gJy4uL3N0eWxlcy9lbXB0eSc7XG5pbXBvcnQgeyBpbnB1dCB9IGZyb20gJy4uL3N0eWxlcy9pbnB1dCc7XG5cbi8qKlxuICogQ29kZSBjb21wb25lbnRcbiAqXG4gKiAjIyBEZXRhaWxzXG4gKiAqIGhhcyBAdGhlbWUgZmFjZXRcbiAqXG4gKiBAZmlyZXMgZ3YtY29kZTppbnB1dCAtIGlucHV0IGV2ZW50cyB3aXRoIHRoZSBgdmFsdWVgIG9uIGBkZXRhaWxgXG4gKiBAZmlyZXMgZ3YtY29kZTpyZWFkeSAtIGV2ZW50IGRpc3BhdGNoIHdoZW4gY29tcG9uZW50IGlzIHJlYWR5XG4gKiBAZmlyZXMgZ3YtY29kZTpjbGlwYm9hcmQtY29weSAtIGV2ZW50IGRpc3BhdGNoIHdoZW4gY29tcG9uZW50IHRoZSBgdmFsdWVgIGhhcyBiZWVuIGNvcGllZCB0byBjbGlwYm9hcmRcbiAqXG4gKiBAYXR0ciB7U3RyaW5nfSBsYWJlbCAtIGNvZGUgbGFuZ3VhZ2VcbiAqIEBhdHRyIHtTdHJpbmd9IHZhbHVlIC0gY29kZSBjb250ZW50IHRvIGJlIGhpZ2hsaWdodGVkXG4gKiBAYXR0ciB7b3B0aW9uc30gT2JqZWN0IC0gb3B0aW9ucyBiYXNlZCBvbiBjb2RlbWlycm9yXG4gKiBAYXR0ciB7U3RyaW5nfSBwbGFjZWhvbGRlciAtIGFuIGV4YW1wbGUgdmFsdWUgdG8gZGlzcGxheSBpbiB0aGUgaW5wdXQgd2hlbiBlbXB0eVxuICogQGF0dHIge051bWJlcn0gcm93cyAtIG51bWJlciBvZiByb3dzIG9mIHRoZSB0ZXh0IGVsZW1lbnRcbiAqIEBhdHRyIHtCb29sZWFufSBsYXJnZSAtIGZvciBhIGxhcmdlIGlucHV0IChvbmx5IGlmIHRoZSBmaWVsZCBoYXMgb25lIHJvdylcbiAqIEBhdHRyIHtCb29sZWFufSBtZWRpdW0gLSBmb3IgYSBtZWRpdW0gaW5wdXQgKG9ubHkgaWYgdGhlIGZpZWxkIGhhcyBvbmUgcm93KSAoRGVmYXVsdClcbiAqIEBhdHRyIHtCb29sZWFufSBzbWFsbCAtIGZvciBhIHNtYWxsIGlucHV0IChvbmx5IGlmIHRoZSBmaWVsZCBoYXMgb25lIHJvdylcbiAqXG4gKiBAYXR0ciB7Qm9vbGVhbn0gW2NsaXBib2FyZD1mYWxzZV0tIHRydWUgaWYgZmllbGQgaGFzIGNsaXBib2FyZCBidXR0b25cbiAqIEBhdHRyIHtCb29sZWFufSBbYXV0b2ZvY3VzPWZhbHNlXSAtIHRydWUgdG8gcHV0IHRoZSBmb2N1cyBvbiB0aGUgaW5wdXRcbiAqIEBhdHRyIHtCb29sZWFufSBbcmVhZG9ubHk9ZmFsc2VdIC0gdHJ1ZSBpZiBmaWVsZCBpcyByZWFkb25seSBtb2RlXG4gKi9cbmV4cG9ydCBjbGFzcyBHdkNvZGUgZXh0ZW5kcyBHdklucHV0IHtcbiAgc3RhdGljIGdldCBwcm9wZXJ0aWVzKCkge1xuICAgIHJldHVybiB7XG4gICAgICAuLi5zdXBlci5wcm9wZXJ0aWVzLFxuICAgICAgb3B0aW9uczogeyB0eXBlOiBPYmplY3QgfSxcbiAgICAgIHJvd3M6IHsgdHlwZTogTnVtYmVyIH0sXG4gICAgICBfZXJyb3I6IHsgdHlwZTogU3RyaW5nLCBhdHRyaWJ1dGU6IGZhbHNlIH0sXG4gICAgfTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy5faWQgPSBgZ3YtY29kZS0ke3V1aWQoKX1gO1xuICAgIHRoaXMudmFsdWUgPSAnJztcbiAgICB0aGlzLnJlYWRvbmx5ID0gZmFsc2U7XG4gICAgdGhpcy5hdXRvZm9jdXMgPSBmYWxzZTtcbiAgICB0aGlzLmNsaXBib2FyZCA9IGZhbHNlO1xuICAgIHRoaXMuX2NsaXBib2FyZEljb24gPSBzaGFwZUNsaXBib2FyZDtcbiAgICB0aGlzLmxhbmd1YWdlQ29tcGFydG1lbnQgPSBuZXcgQ29tcGFydG1lbnQoKTtcbiAgICB0aGlzLnJlYWRvbmx5Q29tcGFydG1lbnQgPSBuZXcgQ29tcGFydG1lbnQoKTtcbiAgICB0aGlzLnBsYWNlaG9sZGVyQ29tcGFydG1lbnQgPSBuZXcgQ29tcGFydG1lbnQoKTtcbiAgfVxuXG4gIHJlbmRlcigpIHtcbiAgICBjb25zdCBjbGFzc2VzID0ge1xuICAgICAgYm94OiB0cnVlLFxuICAgICAgJ2JveC1pbnZpc2libGUnOiB0aGlzLnNrZWxldG9uLFxuICAgICAgbGFyZ2U6IHRoaXMubGFyZ2UsXG4gICAgICBtZWRpdW06IHRoaXMubWVkaXVtIHx8ICghdGhpcy5sYXJnZSAmJiAhdGhpcy5zbWFsbCksXG4gICAgICBzbWFsbDogdGhpcy5zbWFsbCxcbiAgICAgIGNvcGllZDogdGhpcy5oYXNDbGlwYm9hcmQgJiYgdGhpcy5fY29waWVkLFxuICAgIH07XG4gICAgY29uc3QgaW5wdXRDbGFzc2VzID0ge1xuICAgICAgY29udGVudDogdHJ1ZSxcbiAgICAgIGNvZGU6ICF0aGlzLmhhc0lucHV0U3R5bGUsXG4gICAgICBpbnB1dDogdGhpcy5oYXNJbnB1dFN0eWxlLFxuICAgIH07XG5cbiAgICByZXR1cm4gaHRtbGBcbiAgICAgIDxkaXYgY2xhc3M9XCIke2NsYXNzTWFwKGNsYXNzZXMpfVwiPlxuICAgICAgICAke3RoaXMubGFiZWwgPyBodG1sYDxsYWJlbCBmb3I9XCJjb2RlXCI+JHt0aGlzLmxhYmVsfTwvbGFiZWw+YCA6ICcnfVxuICAgICAgICA8ZGl2IGlkPVwiJHt0aGlzLl9pZH1cIiBjbGFzcz1cIiR7Y2xhc3NNYXAoaW5wdXRDbGFzc2VzKX1cIj5cbiAgICAgICAgICA8IS0tIE5vIGZvcm1hdCBwbGVhc2UgLS0+XG4gICAgICAgICAgJHt0aGlzLnJlbmRlckljb24oKX1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICAgICR7dGhpcy5kZXNjcmlwdGlvbiAhPSBudWxsID8gaHRtbGA8ZGl2IGNsYXNzPVwiZGVzY3JpcHRpb25cIiAuaW5uZXJIVE1MPVwiJHt0aGlzLmRlc2NyaXB0aW9ufVwiPjwvZGl2PmAgOiAnJ31cbiAgICBgO1xuICB9XG5cbiAgYmluZElucHV0RXZlbnRzKCkge1xuICAgIGRpc3BhdGNoQ3VzdG9tRXZlbnQodGhpcywgJ3JlYWR5JywgeyBjdXJyZW50VGFyZ2V0OiB0aGlzIH0pO1xuICB9XG5cbiAgZ2V0IGhhc0lucHV0U3R5bGUoKSB7XG4gICAgcmV0dXJuIHRoaXMucm93cyA9PT0gMTtcbiAgfVxuXG4gIF9hdXRvY29tcGxldGUoY29tcGxldGlvbkNvbnRleHQpIHtcbiAgICBjb25zdCB7IGhhbmRsZXIsIG1hdGNoIH0gPSB0aGlzLmZpbmRCZXN0QXV0b2NvbXBsZXRlSGFuZGxlcihjb21wbGV0aW9uQ29udGV4dCk7XG4gICAgcmV0dXJuIGhhbmRsZXIucnVuLmNhbGwodGhpcywgY29tcGxldGlvbkNvbnRleHQsIG1hdGNoKTtcbiAgfVxuXG4gIGZpbmRCZXN0QXV0b2NvbXBsZXRlSGFuZGxlcihjb21wbGV0aW9uQ29udGV4dCkge1xuICAgIHJldHVybiB7IGhhbmRsZXI6IHRoaXMuZGVmYXVsdENvbXBsZXRpb25IYW5kbGVyLCBtYXRjaDogdHJ1ZSB9O1xuICB9XG5cbiAgZ2V0IGRlZmF1bHRDb21wbGV0aW9uSGFuZGxlcigpIHtcbiAgICByZXR1cm4ge1xuICAgICAgcnVuKGNvbXBsZXRpb25Db250ZXh0KSB7XG4gICAgICAgIGNvbnN0IGxhbmd1YWdlID0gY29tcGxldGlvbkNvbnRleHQuc3RhdGUubGFuZ3VhZ2VEYXRhQXQoJ2F1dG9jb21wbGV0ZScsIGNvbXBsZXRpb25Db250ZXh0LnBvcyk7XG4gICAgICAgIGlmIChsYW5ndWFnZS5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgcmV0dXJuIGxhbmd1YWdlWzBdKGNvbXBsZXRpb25Db250ZXh0KTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4geyBmcm9tOiBjb21wbGV0aW9uQ29udGV4dC5wb3MsIG9wdGlvbnM6IFtdIH07XG4gICAgICB9LFxuICAgIH07XG4gIH1cblxuICBfZ2V0RXh0ZW5zaW9ucygpIHtcbiAgICByZXR1cm4gW1xuICAgICAgYmFzaWNTZXR1cCxcbiAgICAgIEd2Q29kZS5jb2RlbWlycm9yVGhlbWUsXG4gICAgICB0aGlzLmxhbmd1YWdlQ29tcGFydG1lbnQub2YoanNvbigpKSxcbiAgICAgIHRoaXMucGxhY2Vob2xkZXJDb21wYXJ0bWVudC5vZihwbGFjZWhvbGRlcih0aGlzLnBsYWNlaG9sZGVyIHx8ICcnKSksXG4gICAgICBFZGl0b3JTdGF0ZS50cmFuc2FjdGlvbkZpbHRlci5vZigodHIpID0+ICh0aGlzLmhhc0lucHV0U3R5bGUgJiYgdHIubmV3RG9jLmxpbmVzID4gMSA/IFtdIDogdHIpKSxcbiAgICAgIHRoaXMucmVhZG9ubHlDb21wYXJ0bWVudC5vZihFZGl0b3JWaWV3LmVkaXRhYmxlLm9mKCF0aGlzLnJlYWRvbmx5ICYmICF0aGlzLmRpc2FibGVkKSksXG4gICAgICBFZGl0b3JWaWV3LnVwZGF0ZUxpc3RlbmVyLm9mKCh2aWV3VXBkYXRlKSA9PiB7XG4gICAgICAgIGlmICh2aWV3VXBkYXRlLmRvY0NoYW5nZWQpIHtcbiAgICAgICAgICB0aGlzLnZhbHVlID0gdGhpcy5fZWRpdG9yVmlldy5zdGF0ZS5kb2MudG9TdHJpbmcoKTtcbiAgICAgICAgICBkaXNwYXRjaEN1c3RvbUV2ZW50KHRoaXMsICdpbnB1dCcsIHRoaXMudmFsdWUpO1xuICAgICAgICB9XG4gICAgICB9KSxcbiAgICAgIGF1dG9jb21wbGV0aW9uKHtcbiAgICAgICAgYWN0aXZhdGVPblR5cGluZzogdHJ1ZSxcbiAgICAgICAgb3ZlcnJpZGU6IFt0aGlzLl9hdXRvY29tcGxldGUuYmluZCh0aGlzKV0sXG4gICAgICB9KSxcbiAgICAgIC4uLnRoaXMuZ2V0RXh0ZW5zaW9ucygpLFxuICAgIF07XG4gIH1cblxuICBnZXRFeHRlbnNpb25zKCkge1xuICAgIHJldHVybiBbXTtcbiAgfVxuXG4gIGdldElucHV0RWxlbWVudCgpIHtcbiAgICByZXR1cm4gdGhpcy5zaGFkb3dSb290LnF1ZXJ5U2VsZWN0b3IoYFtpZD0ke3RoaXMuX2lkfV1gKTtcbiAgfVxuXG4gIGZpcnN0VXBkYXRlZCgpIHtcbiAgICBzdXBlci5maXJzdFVwZGF0ZWQoKTtcbiAgICB0aGlzLl9lZGl0b3JTdGF0ZSA9IEVkaXRvclN0YXRlLmNyZWF0ZSh7XG4gICAgICBkb2M6IHRoaXMudmFsdWUsXG4gICAgICBleHRlbnNpb25zOiB0aGlzLl9nZXRFeHRlbnNpb25zKCksXG4gICAgfSk7XG4gICAgY29uc3QgcGFyZW50ID0gdGhpcy5nZXRJbnB1dEVsZW1lbnQoKTtcbiAgICB0aGlzLl9lZGl0b3JWaWV3ID0gbmV3IEVkaXRvclZpZXcoe1xuICAgICAgcm9vdDogdGhpcy5zaGFkb3dSb290LFxuICAgICAgcGFyZW50LFxuICAgICAgc3RhdGU6IHRoaXMuX2VkaXRvclN0YXRlLFxuICAgICAgZGlzcGF0Y2g6ICh0cmFuc2FjdGlvbikgPT4ge1xuICAgICAgICB0cnkge1xuICAgICAgICAgIHRoaXMuX2VkaXRvclZpZXcudXBkYXRlKFt0cmFuc2FjdGlvbl0pO1xuICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgLy8gU29tZXRpbWVzIHRoZSBkZWZhdWx0IGRpc3BhdGNoIGZuIHRocm93cyBhbiBOU19FUlJPUl9GQUlMVVJFIGF0IHJ1bnRpbWUuXG4gICAgICAgICAgLy8gSXQncyBzbyBzdHJhbmdlIGJ1dCB3aXRoIHRoaXMgY2F0Y2ggZXZlcnl0aGluZyBpcyBva2F5XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgfSk7XG4gICAgcGFyZW50LmFwcGVuZENoaWxkKHRoaXMuX2VkaXRvclZpZXcuZG9tKTtcbiAgfVxuXG4gIGFzeW5jIHVwZGF0ZWQocHJvcGVydGllcykge1xuICAgIHN1cGVyLnVwZGF0ZWQocHJvcGVydGllcyk7XG4gICAgaWYgKHByb3BlcnRpZXMuaGFzKCdwbGFjZWhvbGRlcicpKSB7XG4gICAgICB0aGlzLl9yZWZsZWN0UGxhY2Vob2xkZXIoKTtcbiAgICB9XG4gICAgaWYgKHByb3BlcnRpZXMuaGFzKCd2YWx1ZScpKSB7XG4gICAgICB0aGlzLl9yZWZsZWN0VmFsdWUoKTtcbiAgICB9XG4gICAgaWYgKHByb3BlcnRpZXMuaGFzKCdyZWFkb25seScpIHx8IHByb3BlcnRpZXMuaGFzKCdkaXNhYmxlZCcpKSB7XG4gICAgICB0aGlzLl9yZWZsZWN0UmVhZG9ubHlEaXNhYmxlZCgpO1xuICAgIH1cbiAgICBpZiAocHJvcGVydGllcy5oYXMoJ29wdGlvbnMnKSAmJiB0aGlzLm9wdGlvbnMpIHtcbiAgICAgIGF3YWl0IHRoaXMuX3JlZmxlY3RPcHRpb25zKCk7XG4gICAgfVxuICB9XG5cbiAgX3JlZmxlY3RQbGFjZWhvbGRlcigpIHtcbiAgICB0aGlzLl9lZGl0b3JWaWV3LmRpc3BhdGNoKHtcbiAgICAgIGVmZmVjdHM6IHRoaXMucGxhY2Vob2xkZXJDb21wYXJ0bWVudC5yZWNvbmZpZ3VyZShwbGFjZWhvbGRlcih0aGlzLnBsYWNlaG9sZGVyKSksXG4gICAgfSk7XG4gIH1cblxuICBfcmVmbGVjdFZhbHVlKCkge1xuICAgIGNvbnN0IHRyYW5zYWN0aW9uID0gdGhpcy5fZWRpdG9yU3RhdGUudXBkYXRlKHtcbiAgICAgIGNoYW5nZXM6IHtcbiAgICAgICAgZnJvbTogMCxcbiAgICAgICAgdG86IHRoaXMuX2VkaXRvclN0YXRlLmRvYy5sZW5ndGgsXG4gICAgICAgIGluc2VydDogdGhpcy52YWx1ZSxcbiAgICAgIH0sXG4gICAgfSk7XG4gICAgdGhpcy5fZWRpdG9yU3RhdGUgPSB0cmFuc2FjdGlvbi5zdGF0ZTtcbiAgfVxuXG4gIF9yZWZsZWN0UmVhZG9ubHlEaXNhYmxlZCgpIHtcbiAgICB0aGlzLl9lZGl0b3JWaWV3LmRpc3BhdGNoKHtcbiAgICAgIGVmZmVjdHM6IHRoaXMucmVhZG9ubHlDb21wYXJ0bWVudC5yZWNvbmZpZ3VyZShFZGl0b3JWaWV3LmVkaXRhYmxlLm9mKCF0aGlzLnJlYWRvbmx5ICYmICF0aGlzLmRpc2FibGVkKSksXG4gICAgfSk7XG4gIH1cblxuICBzdGF0aWMgYXN5bmMgZmluZExhbmd1YWdlKG1vZGUpIHtcbiAgICBpZiAobW9kZSkge1xuICAgICAgY29uc3QgbW9kZU9ubHkgPSBtb2RlLnNwbGl0KCcvJykucG9wKCk7XG4gICAgICBpZiAobW9kZU9ubHkgPT09ICdhc2NpaWRvYycpIHtcbiAgICAgICAgY29uc3QgW3sgYXNjaWlkb2MgfSwgeyBTdHJlYW1MYW5ndWFnZSB9XSA9IGF3YWl0IFByb21pc2UuYWxsKFtcbiAgICAgICAgICBpbXBvcnQoJ2NvZGVtaXJyb3ItYXNjaWlkb2MvbGliL2FzY2lpZG9jJyksXG4gICAgICAgICAgaW1wb3J0KCdAY29kZW1pcnJvci9zdHJlYW0tcGFyc2VyJyksXG4gICAgICAgIF0pO1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIG5hbWU6ICdhc2NpaWRvYycsXG4gICAgICAgICAgc3VwcG9ydDoge1xuICAgICAgICAgICAgZXh0ZW5zaW9uOiBTdHJlYW1MYW5ndWFnZS5kZWZpbmUoYXNjaWlkb2MpLFxuICAgICAgICAgIH0sXG4gICAgICAgIH07XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjb25zdCBsYW5ndWFnZSA9IGxhbmd1YWdlcy5maW5kKChsYW5ndWFnZURlc2NyaXB0aW9uKSA9PiB7XG4gICAgICAgICAgcmV0dXJuIGxhbmd1YWdlRGVzY3JpcHRpb24ubmFtZS50b1VwcGVyQ2FzZSgpID09PSBtb2RlT25seS50b1VwcGVyQ2FzZSgpIHx8IGxhbmd1YWdlRGVzY3JpcHRpb24uYWxpYXMuaW5jbHVkZXMobW9kZU9ubHkpO1xuICAgICAgICB9KTtcbiAgICAgICAgaWYgKGxhbmd1YWdlID09IG51bGwpIHtcbiAgICAgICAgICBjb25zb2xlLndhcm4oXG4gICAgICAgICAgICBgQ2Fubm90IGZpbmQgbGFuZ3VhZ2UgJHttb2RlfSwgcGxlYXNlIHVzZSBsYW5ndWFnZSBzdXBwb3J0ZWQgYnkgQ29kZU1pcnJvciA2YCxcbiAgICAgICAgICAgIGxhbmd1YWdlcy5tYXAoKGwpID0+IGwubmFtZSksXG4gICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gbGFuZ3VhZ2U7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgYXN5bmMgX3JlZmxlY3RPcHRpb25zKCkge1xuICAgIGNvbnN0IGxhbmd1YWdlID0gYXdhaXQgR3ZDb2RlLmZpbmRMYW5ndWFnZSh0aGlzLm9wdGlvbnMubW9kZSk7XG4gICAgaWYgKGxhbmd1YWdlICE9IG51bGwpIHtcbiAgICAgIGlmIChsYW5ndWFnZS5zdXBwb3J0ID09IG51bGwpIHtcbiAgICAgICAgYXdhaXQgbGFuZ3VhZ2UubG9hZCgpO1xuICAgICAgfVxuICAgICAgdGhpcy5fZWRpdG9yVmlldy5kaXNwYXRjaCh7XG4gICAgICAgIGVmZmVjdHM6IHRoaXMubGFuZ3VhZ2VDb21wYXJ0bWVudC5yZWNvbmZpZ3VyZShsYW5ndWFnZS5zdXBwb3J0LmV4dGVuc2lvbiksXG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBzdGF0aWMgZ2V0IGNvZGVtaXJyb3JUaGVtZSgpIHtcbiAgICByZXR1cm4gRWRpdG9yVmlldy50aGVtZSh7XG4gICAgICAnJi5jbS1lZGl0b3IuY20tZm9jdXNlZCc6IHtcbiAgICAgICAgb3V0bGluZTogJ25vbmUnLFxuICAgICAgfSxcbiAgICAgICcuY20tZ3V0dGVycyc6IHtcbiAgICAgICAgYmFja2dyb3VuZENvbG9yOiAndmFyKC0tZ3YtaW5wdXQtaWNvbi0tYmdjLCB2YXIoLS1ndi10aGVtZS1uZXV0cmFsLWNvbG9yLCAjZjVmNWY1KSknLFxuICAgICAgICBjb2xvcjogJ3ZhcigtLWd2LXRoZW1lLWZvbnQtY29sb3ItZGFyaywgIzI2MjYyNiknLFxuICAgICAgICBib3JkZXJMZWZ0OiAnNXB4IHNvbGlkJyxcbiAgICAgICAgYm9yZGVyQ29sb3I6ICd2YXIoLS1ndi1pbnB1dC0tYmRjLCB2YXIoLS1ndi10aGVtZS1uZXV0cmFsLWNvbG9yLWRhcmssICNkOWQ5ZDkpKScsXG4gICAgICB9LFxuICAgIH0pO1xuICB9XG5cbiAgc3RhdGljIGdldCBzdHlsZXMoKSB7XG4gICAgcmV0dXJuIFtcbiAgICAgIC4uLnN1cGVyLnN0eWxlcyxcbiAgICAgIHNrZWxldG9uLFxuICAgICAgZW1wdHksXG4gICAgICBpbnB1dCxcbiAgICAgIC8vIGxhbmd1YWdlPUNTU1xuICAgICAgY3NzYFxuICAgICAgICA6aG9zdCB7XG4gICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBtYXJnaW46IDAgMC4ycmVtIDAuMnJlbSAwLjJyZW07XG4gICAgICAgIH1cblxuICAgICAgICAuY29udGVudCB7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIGJvcmRlcjogdmFyKC0tZ3YtaW5wdXQtLWJkdywgMXB4KSB2YXIoLS1ndi1pbnB1dC0tYmRzLCBzb2xpZCkgdmFyKC0tZ3YtaW5wdXQtLWJkYywgdmFyKC0tZ3YtdGhlbWUtbmV1dHJhbC1jb2xvci1kYXJrLCAjZDlkOWQ5KSk7XG4gICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICAgIH1cblxuICAgICAgICAuYnRuX2NvcHkge1xuICAgICAgICB9XG5cbiAgICAgICAgLmJveC1pY29uIHtcbiAgICAgICAgICBib3R0b206IC0xcHg7XG4gICAgICAgICAgcmlnaHQ6IC0xcHg7XG4gICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5jb2RlIC5ib3gtaWNvbiB7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgICAgICB9XG5cbiAgICAgICAgLmNvZGUgLmNtLWNvbnRlbnQsXG4gICAgICAgIC5jb2RlIC5jbS1ndXR0ZXJzIHtcbiAgICAgICAgICBoZWlnaHQ6IHZhcigtLWlucHV0LW1lZGl1bS0taCk7XG4gICAgICAgIH1cblxuICAgICAgICAubGFyZ2UgLmNvZGUgLmNtLWNvbnRlbnQsXG4gICAgICAgIC5sYXJnZSAuY29kZSAuY20tZ3V0dGVycyB7XG4gICAgICAgICAgaGVpZ2h0OiB2YXIoLS1pbnB1dC1sYXJnZS0taCk7XG4gICAgICAgIH1cblxuICAgICAgICAuc21hbGwgLmNvZGUgLmNtLWNvbnRlbnQsXG4gICAgICAgIC5zbWFsbCAuY29kZSAuY20tZ3V0dGVycyB7XG4gICAgICAgICAgaGVpZ2h0OiB2YXIoLS1pbnB1dC1zbWFsbC0taCk7XG4gICAgICAgIH1cblxuICAgICAgICAvKiogIE92ZXJyaWRlIENvZGVtaXJyb3IgdGhlbWUgKi9cbiAgICAgICAgLmlucHV0IC5jbS1ndXR0ZXJzIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgLmlucHV0IC5jbS1zY3JvbGxlciB7XG4gICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgfVxuXG4gICAgICAgIC5pbnB1dCAuY20tYWN0aXZlTGluZSxcbiAgICAgICAgOmhvc3QoW3JlYWRvbmx5XSkgLmNtLWFjdGl2ZUxpbmUge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICB9XG5cbiAgICAgICAgLmlucHV0IC5jbS1jb250ZW50IHtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgOmhvc3QoW2ludmFsaWRdKSAuY20tZ3V0dGVycyB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1ndi10aGVtZS1jb2xvci1lcnJvciwgI2RhMWExYik7XG4gICAgICAgIH1cbiAgICAgIGAsXG4gICAgXTtcbiAgfVxufVxuXG53aW5kb3cuY3VzdG9tRWxlbWVudHMuZGVmaW5lKCdndi1jb2RlJywgR3ZDb2RlKTtcbiJdfQ==
|
|
297
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4vbm9kZV9tb2R1bGVzL0BncmF2aXRlZS91aS1jb21wb25lbnRzL21vbGVjdWxlcy9ndi1jb2RlLmpzIl0sIm5hbWVzIjpbImNzcyIsImh0bWwiLCJFZGl0b3JWaWV3IiwiYmFzaWNTZXR1cCIsIkVkaXRvclN0YXRlIiwiQ29tcGFydG1lbnQiLCJhdXRvY29tcGxldGlvbiIsImpzb24iLCJsYW5ndWFnZXMiLCJwbGFjZWhvbGRlciIsInNoYXBlQ2xpcGJvYXJkIiwiZGlzcGF0Y2hDdXN0b21FdmVudCIsInV1aWQiLCJjbGFzc01hcCIsIkd2SW5wdXQiLCJza2VsZXRvbiIsImVtcHR5IiwiaW5wdXQiLCJHdkNvZGUiLCJwcm9wZXJ0aWVzIiwib3B0aW9ucyIsInR5cGUiLCJPYmplY3QiLCJyb3dzIiwiTnVtYmVyIiwiX2Vycm9yIiwiU3RyaW5nIiwiYXR0cmlidXRlIiwiY29uc3RydWN0b3IiLCJfaWQiLCJ2YWx1ZSIsInJlYWRvbmx5IiwiYXV0b2ZvY3VzIiwiY2xpcGJvYXJkIiwiX2NsaXBib2FyZEljb24iLCJsYW5ndWFnZUNvbXBhcnRtZW50IiwicmVhZG9ubHlDb21wYXJ0bWVudCIsInBsYWNlaG9sZGVyQ29tcGFydG1lbnQiLCJyZW5kZXIiLCJjbGFzc2VzIiwiYm94IiwibGFyZ2UiLCJtZWRpdW0iLCJzbWFsbCIsImNvcGllZCIsImhhc0NsaXBib2FyZCIsIl9jb3BpZWQiLCJpbnB1dENsYXNzZXMiLCJjb250ZW50IiwiY29kZSIsImhhc0lucHV0U3R5bGUiLCJsYWJlbCIsInJlbmRlckljb24iLCJkZXNjcmlwdGlvbiIsImJpbmRJbnB1dEV2ZW50cyIsImN1cnJlbnRUYXJnZXQiLCJfYXV0b2NvbXBsZXRlIiwiY29tcGxldGlvbkNvbnRleHQiLCJoYW5kbGVyIiwibWF0Y2giLCJmaW5kQmVzdEF1dG9jb21wbGV0ZUhhbmRsZXIiLCJydW4iLCJjYWxsIiwiZGVmYXVsdENvbXBsZXRpb25IYW5kbGVyIiwibGFuZ3VhZ2UiLCJzdGF0ZSIsImxhbmd1YWdlRGF0YUF0IiwicG9zIiwibGVuZ3RoIiwiZnJvbSIsIl9nZXRFeHRlbnNpb25zIiwiY29kZW1pcnJvclRoZW1lIiwib2YiLCJ0cmFuc2FjdGlvbkZpbHRlciIsInRyIiwibmV3RG9jIiwibGluZXMiLCJlZGl0YWJsZSIsImRpc2FibGVkIiwidXBkYXRlTGlzdGVuZXIiLCJ2aWV3VXBkYXRlIiwiZG9jQ2hhbmdlZCIsIl9lZGl0b3JWaWV3IiwiZG9jIiwidG9TdHJpbmciLCJhY3RpdmF0ZU9uVHlwaW5nIiwib3ZlcnJpZGUiLCJiaW5kIiwiZ2V0RXh0ZW5zaW9ucyIsImdldElucHV0RWxlbWVudCIsInNoYWRvd1Jvb3QiLCJxdWVyeVNlbGVjdG9yIiwiZmlyc3RVcGRhdGVkIiwiX2VkaXRvclN0YXRlIiwiY3JlYXRlIiwiZXh0ZW5zaW9ucyIsInBhcmVudCIsInJvb3QiLCJkaXNwYXRjaCIsInRyYW5zYWN0aW9uIiwidXBkYXRlIiwiZSIsImFwcGVuZENoaWxkIiwiZG9tIiwidXBkYXRlZCIsImhhcyIsIl9yZWZsZWN0UGxhY2Vob2xkZXIiLCJfcmVmbGVjdFZhbHVlIiwiX3JlZmxlY3RSZWFkb25seURpc2FibGVkIiwiX3JlZmxlY3RPcHRpb25zIiwiZWZmZWN0cyIsInJlY29uZmlndXJlIiwiY2hhbmdlcyIsInRvIiwiaW5zZXJ0IiwiZmluZExhbmd1YWdlIiwibW9kZSIsIm1vZGVPbmx5Iiwic3BsaXQiLCJwb3AiLCJhc2NpaWRvYyIsIlN0cmVhbUxhbmd1YWdlIiwiUHJvbWlzZSIsImFsbCIsIm5hbWUiLCJzdXBwb3J0IiwiZXh0ZW5zaW9uIiwiZGVmaW5lIiwiZmluZCIsImxhbmd1YWdlRGVzY3JpcHRpb24iLCJ0b1VwcGVyQ2FzZSIsImFsaWFzIiwiaW5jbHVkZXMiLCJjb25zb2xlIiwid2FybiIsIm1hcCIsImwiLCJsb2FkIiwidGhlbWUiLCJvdXRsaW5lIiwiYmFja2dyb3VuZENvbG9yIiwiY29sb3IiLCJib3JkZXJMZWZ0IiwiYm9yZGVyQ29sb3IiLCJzdHlsZXMiLCJ3aW5kb3ciLCJj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SyxFQUdMQyxLQUhLLEVBSUxDLEtBSkssRUFLTDtBQUNBakIsSUFBQUEsR0FBRyxxekJBTkUsQ0FBUDtBQXVFRDs7QUEzU2lDO0FBOFNwQ2lKLE1BQU0sQ0FBQ0MsY0FBUCxDQUFzQm5CLE1BQXRCLENBQTZCLFNBQTdCLEVBQXdDN0csTUFBeEMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChDKSAyMDE1IFRoZSBHcmF2aXRlZSB0ZWFtIChodHRwOi8vZ3Jhdml0ZWUuaW8pXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuaW1wb3J0IHsgY3NzLCBodG1sIH0gZnJvbSAnbGl0JztcblxuaW1wb3J0IHsgRWRpdG9yVmlldywgYmFzaWNTZXR1cCB9IGZyb20gJ0Bjb2RlbWlycm9yL2Jhc2ljLXNldHVwJztcbmltcG9ydCB7IEVkaXRvclN0YXRlLCBDb21wYXJ0bWVudCB9IGZyb20gJ0Bjb2RlbWlycm9yL3N0YXRlJztcbmltcG9ydCB7IGF1dG9jb21wbGV0aW9uIH0gZnJvbSAnQGNvZGVtaXJyb3IvYXV0b2NvbXBsZXRlJztcbmltcG9ydCB7IGpzb24gfSBmcm9tICdAY29kZW1pcnJvci9sYW5nLWpzb24nO1xuaW1wb3J0IHsgbGFuZ3VhZ2VzIH0gZnJvbSAnQGNvZGVtaXJyb3IvbGFuZ3VhZ2UtZGF0YSc7XG5pbXBvcnQgeyBwbGFjZWhvbGRlciB9IGZyb20gJ0Bjb2RlbWlycm9yL3ZpZXcnO1xuXG5pbXBvcnQgeyBzaGFwZUNsaXBib2FyZCB9IGZyb20gJy4uL3N0eWxlcy9zaGFwZXMnO1xuaW1wb3J0IHsgZGlzcGF0Y2hDdXN0b21FdmVudCB9IGZyb20gJy4uL2xpYi9ldmVudHMnO1xuaW1wb3J0IHsgdXVpZCB9IGZyb20gJy4uL2xpYi91dGlscyc7XG5pbXBvcnQgeyBjbGFzc01hcCB9IGZyb20gJ2xpdC9kaXJlY3RpdmVzL2NsYXNzLW1hcCc7XG5pbXBvcnQgeyBHdklucHV0IH0gZnJvbSAnLi4vYXRvbXMvZ3YtaW5wdXQnO1xuaW1wb3J0IHsgc2tlbGV0b24gfSBmcm9tICcuLi9zdHlsZXMvc2tlbGV0b24nO1xuaW1wb3J0IHsgZW1wdHkgfSBmcm9tICcuLi9zdHlsZXMvZW1wdHknO1xuaW1wb3J0IHsgaW5wdXQgfSBmcm9tICcuLi9zdHlsZXMvaW5wdXQnO1xuXG4vKipcbiAqIENvZGUgY29tcG9uZW50XG4gKlxuICogIyMgRGV0YWlsc1xuICogKiBoYXMgQHRoZW1lIGZhY2V0XG4gKlxuICogQGZpcmVzIGd2LWNvZGU6aW5wdXQgLSBpbnB1dCBldmVudHMgd2l0aCB0aGUgYHZhbHVlYCBvbiBgZGV0YWlsYFxuICogQGZpcmVzIGd2LWNvZGU6cmVhZHkgLSBldmVudCBkaXNwYXRjaCB3aGVuIGNvbXBvbmVudCBpcyByZWFkeVxuICogQGZpcmVzIGd2LWNvZGU6Y2xpcGJvYXJkLWNvcHkgLSBldmVudCBkaXNwYXRjaCB3aGVuIGNvbXBvbmVudCB0aGUgYHZhbHVlYCBoYXMgYmVlbiBjb3BpZWQgdG8gY2xpcGJvYXJkXG4gKlxuICogQGF0dHIge1N0cmluZ30gbGFiZWwgLSBjb2RlIGxhbmd1YWdlXG4gKiBAYXR0ciB7U3RyaW5nfSB2YWx1ZSAtIGNvZGUgY29udGVudCB0byBiZSBoaWdobGlnaHRlZFxuICogQGF0dHIge29wdGlvbnN9IE9iamVjdCAtIG9wdGlvbnMgYmFzZWQgb24gY29kZW1pcnJvclxuICogQGF0dHIge1N0cmluZ30gcGxhY2Vob2xkZXIgLSBhbiBleGFtcGxlIHZhbHVlIHRvIGRpc3BsYXkgaW4gdGhlIGlucHV0IHdoZW4gZW1wdHlcbiAqIEBhdHRyIHtOdW1iZXJ9IHJvd3MgLSBudW1iZXIgb2Ygcm93cyBvZiB0aGUgdGV4dCBlbGVtZW50XG4gKiBAYXR0ciB7Qm9vbGVhbn0gbGFyZ2UgLSBmb3IgYSBsYXJnZSBpbnB1dCAob25seSBpZiB0aGUgZmllbGQgaGFzIG9uZSByb3cpXG4gKiBAYXR0ciB7Qm9vbGVhbn0gbWVkaXVtIC0gZm9yIGEgbWVkaXVtIGlucHV0IChvbmx5IGlmIHRoZSBmaWVsZCBoYXMgb25lIHJvdykgKERlZmF1bHQpXG4gKiBAYXR0ciB7Qm9vbGVhbn0gc21hbGwgLSBmb3IgYSBzbWFsbCBpbnB1dCAob25seSBpZiB0aGUgZmllbGQgaGFzIG9uZSByb3cpXG4gKlxuICogQGF0dHIge0Jvb2xlYW59IFtjbGlwYm9hcmQ9ZmFsc2VdLSB0cnVlIGlmIGZpZWxkIGhhcyBjbGlwYm9hcmQgYnV0dG9uXG4gKiBAYXR0ciB7Qm9vbGVhbn0gW2F1dG9mb2N1cz1mYWxzZV0gLSB0cnVlIHRvIHB1dCB0aGUgZm9jdXMgb24gdGhlIGlucHV0XG4gKiBAYXR0ciB7Qm9vbGVhbn0gW3JlYWRvbmx5PWZhbHNlXSAtIHRydWUgaWYgZmllbGQgaXMgcmVhZG9ubHkgbW9kZVxuICovXG5leHBvcnQgY2xhc3MgR3ZDb2RlIGV4dGVuZHMgR3ZJbnB1dCB7XG4gIHN0YXRpYyBnZXQgcHJvcGVydGllcygpIHtcbiAgICByZXR1cm4ge1xuICAgICAgLi4uc3VwZXIucHJvcGVydGllcyxcbiAgICAgIG9wdGlvbnM6IHsgdHlwZTogT2JqZWN0IH0sXG4gICAgICByb3dzOiB7IHR5cGU6IE51bWJlciB9LFxuICAgICAgX2Vycm9yOiB7IHR5cGU6IFN0cmluZywgYXR0cmlidXRlOiBmYWxzZSB9LFxuICAgIH07XG4gIH1cblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMuX2lkID0gYGd2LWNvZGUtJHt1dWlkKCl9YDtcbiAgICB0aGlzLnZhbHVlID0gJyc7XG4gICAgdGhpcy5yZWFkb25seSA9IGZhbHNlO1xuICAgIHRoaXMuYXV0b2ZvY3VzID0gZmFsc2U7XG4gICAgdGhpcy5jbGlwYm9hcmQgPSBmYWxzZTtcbiAgICB0aGlzLl9jbGlwYm9hcmRJY29uID0gc2hhcGVDbGlwYm9hcmQ7XG4gICAgdGhpcy5sYW5ndWFnZUNvbXBhcnRtZW50ID0gbmV3IENvbXBhcnRtZW50KCk7XG4gICAgdGhpcy5yZWFkb25seUNvbXBhcnRtZW50ID0gbmV3IENvbXBhcnRtZW50KCk7XG4gICAgdGhpcy5wbGFjZWhvbGRlckNvbXBhcnRtZW50ID0gbmV3IENvbXBhcnRtZW50KCk7XG4gIH1cblxuICByZW5kZXIoKSB7XG4gICAgY29uc3QgY2xhc3NlcyA9IHtcbiAgICAgIGJveDogdHJ1ZSxcbiAgICAgICdib3gtaW52aXNpYmxlJzogdGhpcy5za2VsZXRvbixcbiAgICAgIGxhcmdlOiB0aGlzLmxhcmdlLFxuICAgICAgbWVkaXVtOiB0aGlzLm1lZGl1bSB8fCAoIXRoaXMubGFyZ2UgJiYgIXRoaXMuc21hbGwpLFxuICAgICAgc21hbGw6IHRoaXMuc21hbGwsXG4gICAgICBjb3BpZWQ6IHRoaXMuaGFzQ2xpcGJvYXJkICYmIHRoaXMuX2NvcGllZCxcbiAgICB9O1xuICAgIGNvbnN0IGlucHV0Q2xhc3NlcyA9IHtcbiAgICAgIGNvbnRlbnQ6IHRydWUsXG4gICAgICBjb2RlOiAhdGhpcy5oYXNJbnB1dFN0eWxlLFxuICAgICAgaW5wdXQ6IHRoaXMuaGFzSW5wdXRTdHlsZSxcbiAgICB9O1xuXG4gICAgcmV0dXJuIGh0bWxgXG4gICAgICA8ZGl2IGNsYXNzPVwiJHtjbGFzc01hcChjbGFzc2VzKX1cIj5cbiAgICAgICAgJHt0aGlzLmxhYmVsID8gaHRtbGA8bGFiZWwgZm9yPVwiY29kZVwiPiR7dGhpcy5sYWJlbH08L2xhYmVsPmAgOiAnJ31cbiAgICAgICAgPGRpdiBpZD1cIiR7dGhpcy5faWR9XCIgY2xhc3M9XCIke2NsYXNzTWFwKGlucHV0Q2xhc3Nlcyl9XCI+XG4gICAgICAgICAgPCEtLSBObyBmb3JtYXQgcGxlYXNlIC0tPlxuICAgICAgICAgICR7dGhpcy5yZW5kZXJJY29uKCl9XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgICAke3RoaXMuZGVzY3JpcHRpb24gIT0gbnVsbCA/IGh0bWxgPGRpdiBjbGFzcz1cImRlc2NyaXB0aW9uXCIgLmlubmVySFRNTD1cIiR7dGhpcy5kZXNjcmlwdGlvbn1cIj48L2Rpdj5gIDogJyd9XG4gICAgYDtcbiAgfVxuXG4gIGJpbmRJbnB1dEV2ZW50cygpIHtcbiAgICBkaXNwYXRjaEN1c3RvbUV2ZW50KHRoaXMsICdyZWFkeScsIHsgY3VycmVudFRhcmdldDogdGhpcyB9KTtcbiAgfVxuXG4gIGdldCBoYXNJbnB1dFN0eWxlKCkge1xuICAgIHJldHVybiB0aGlzLnJvd3MgPT09IDE7XG4gIH1cblxuICBfYXV0b2NvbXBsZXRlKGNvbXBsZXRpb25Db250ZXh0KSB7XG4gICAgY29uc3QgeyBoYW5kbGVyLCBtYXRjaCB9ID0gdGhpcy5maW5kQmVzdEF1dG9jb21wbGV0ZUhhbmRsZXIoY29tcGxldGlvbkNvbnRleHQpO1xuICAgIHJldHVybiBoYW5kbGVyLnJ1bi5jYWxsKHRoaXMsIGNvbXBsZXRpb25Db250ZXh0LCBtYXRjaCk7XG4gIH1cblxuICBmaW5kQmVzdEF1dG9jb21wbGV0ZUhhbmRsZXIoY29tcGxldGlvbkNvbnRleHQpIHtcbiAgICByZXR1cm4geyBoYW5kbGVyOiB0aGlzLmRlZmF1bHRDb21wbGV0aW9uSGFuZGxlciwgbWF0Y2g6IHRydWUgfTtcbiAgfVxuXG4gIGdldCBkZWZhdWx0Q29tcGxldGlvbkhhbmRsZXIoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHJ1bihjb21wbGV0aW9uQ29udGV4dCkge1xuICAgICAgICBjb25zdCBsYW5ndWFnZSA9IGNvbXBsZXRpb25Db250ZXh0LnN0YXRlLmxhbmd1YWdlRGF0YUF0KCdhdXRvY29tcGxldGUnLCBjb21wbGV0aW9uQ29udGV4dC5wb3MpO1xuICAgICAgICBpZiAobGFuZ3VhZ2UubGVuZ3RoID4gMCkge1xuICAgICAgICAgIHJldHVybiBsYW5ndWFnZVswXShjb21wbGV0aW9uQ29udGV4dCk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHsgZnJvbTogY29tcGxldGlvbkNvbnRleHQucG9zLCBvcHRpb25zOiBbXSB9O1xuICAgICAgfSxcbiAgICB9O1xuICB9XG5cbiAgX2dldEV4dGVuc2lvbnMoKSB7XG4gICAgcmV0dXJuIFtcbiAgICAgIGJhc2ljU2V0dXAsXG4gICAgICBHdkNvZGUuY29kZW1pcnJvclRoZW1lLFxuICAgICAgdGhpcy5sYW5ndWFnZUNvbXBhcnRtZW50Lm9mKGpzb24oKSksXG4gICAgICB0aGlzLnBsYWNlaG9sZGVyQ29tcGFydG1lbnQub2YocGxhY2Vob2xkZXIodGhpcy5wbGFjZWhvbGRlciB8fCAnJykpLFxuICAgICAgRWRpdG9yU3RhdGUudHJhbnNhY3Rpb25GaWx0ZXIub2YoKHRyKSA9PiAodGhpcy5oYXNJbnB1dFN0eWxlICYmIHRyLm5ld0RvYy5saW5lcyA+IDEgPyBbXSA6IHRyKSksXG4gICAgICB0aGlzLnJlYWRvbmx5Q29tcGFydG1lbnQub2YoRWRpdG9yVmlldy5lZGl0YWJsZS5vZighdGhpcy5yZWFkb25seSAmJiAhdGhpcy5kaXNhYmxlZCkpLFxuICAgICAgRWRpdG9yVmlldy51cGRhdGVMaXN0ZW5lci5vZigodmlld1VwZGF0ZSkgPT4ge1xuICAgICAgICBpZiAodmlld1VwZGF0ZS5kb2NDaGFuZ2VkKSB7XG4gICAgICAgICAgdGhpcy52YWx1ZSA9IHRoaXMuX2VkaXRvclZpZXcuc3RhdGUuZG9jLnRvU3RyaW5nKCk7XG4gICAgICAgICAgZGlzcGF0Y2hDdXN0b21FdmVudCh0aGlzLCAnaW5wdXQnLCB0aGlzLnZhbHVlKTtcbiAgICAgICAgfVxuICAgICAgfSksXG4gICAgICBhdXRvY29tcGxldGlvbih7XG4gICAgICAgIGFjdGl2YXRlT25UeXBpbmc6IHRydWUsXG4gICAgICAgIG92ZXJyaWRlOiBbdGhpcy5fYXV0b2NvbXBsZXRlLmJpbmQodGhpcyldLFxuICAgICAgfSksXG4gICAgICAuLi50aGlzLmdldEV4dGVuc2lvbnMoKSxcbiAgICBdO1xuICB9XG5cbiAgZ2V0RXh0ZW5zaW9ucygpIHtcbiAgICByZXR1cm4gW107XG4gIH1cblxuICBnZXRJbnB1dEVsZW1lbnQoKSB7XG4gICAgcmV0dXJuIHRoaXMuc2hhZG93Um9vdC5xdWVyeVNlbGVjdG9yKGBbaWQ9JHt0aGlzLl9pZH1dYCk7XG4gIH1cblxuICBmaXJzdFVwZGF0ZWQoKSB7XG4gICAgc3VwZXIuZmlyc3RVcGRhdGVkKCk7XG4gICAgdGhpcy5fZWRpdG9yU3RhdGUgPSBFZGl0b3JTdGF0ZS5jcmVhdGUoe1xuICAgICAgZG9jOiB0aGlzLnZhbHVlLFxuICAgICAgZXh0ZW5zaW9uczogdGhpcy5fZ2V0RXh0ZW5zaW9ucygpLFxuICAgIH0pO1xuICAgIGNvbnN0IHBhcmVudCA9IHRoaXMuZ2V0SW5wdXRFbGVtZW50KCk7XG4gICAgdGhpcy5fZWRpdG9yVmlldyA9IG5ldyBFZGl0b3JWaWV3KHtcbiAgICAgIHJvb3Q6IHRoaXMuc2hhZG93Um9vdCxcbiAgICAgIHBhcmVudCxcbiAgICAgIHN0YXRlOiB0aGlzLl9lZGl0b3JTdGF0ZSxcbiAgICAgIGRpc3BhdGNoOiAodHJhbnNhY3Rpb24pID0+IHtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICB0aGlzLl9lZGl0b3JWaWV3LnVwZGF0ZShbdHJhbnNhY3Rpb25dKTtcbiAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgIC8vIFNvbWV0aW1lcyB0aGUgZGVmYXVsdCBkaXNwYXRjaCBmbiB0aHJvd3MgYW4gTlNfRVJST1JfRkFJTFVSRSBhdCBydW50aW1lLlxuICAgICAgICAgIC8vIEl0J3Mgc28gc3RyYW5nZSBidXQgd2l0aCB0aGlzIGNhdGNoIGV2ZXJ5dGhpbmcgaXMgb2theVxuICAgICAgICB9XG4gICAgICB9LFxuICAgIH0pO1xuICAgIHBhcmVudC5hcHBlbmRDaGlsZCh0aGlzLl9lZGl0b3JWaWV3LmRvbSk7XG4gIH1cblxuICBhc3luYyB1cGRhdGVkKHByb3BlcnRpZXMpIHtcbiAgICBzdXBlci51cGRhdGVkKHByb3BlcnRpZXMpO1xuICAgIGlmIChwcm9wZXJ0aWVzLmhhcygncGxhY2Vob2xkZXInKSkge1xuICAgICAgdGhpcy5fcmVmbGVjdFBsYWNlaG9sZGVyKCk7XG4gICAgfVxuICAgIGlmIChwcm9wZXJ0aWVzLmhhcygndmFsdWUnKSkge1xuICAgICAgdGhpcy5fcmVmbGVjdFZhbHVlKCk7XG4gICAgfVxuICAgIGlmIChwcm9wZXJ0aWVzLmhhcygncmVhZG9ubHknKSB8fCBwcm9wZXJ0aWVzLmhhcygnZGlzYWJsZWQnKSkge1xuICAgICAgdGhpcy5fcmVmbGVjdFJlYWRvbmx5RGlzYWJsZWQoKTtcbiAgICB9XG4gICAgaWYgKHByb3BlcnRpZXMuaGFzKCdvcHRpb25zJykgJiYgdGhpcy5vcHRpb25zKSB7XG4gICAgICBhd2FpdCB0aGlzLl9yZWZsZWN0T3B0aW9ucygpO1xuICAgIH1cbiAgfVxuXG4gIF9yZWZsZWN0UGxhY2Vob2xkZXIoKSB7XG4gICAgdGhpcy5fZWRpdG9yVmlldy5kaXNwYXRjaCh7XG4gICAgICBlZmZlY3RzOiB0aGlzLnBsYWNlaG9sZGVyQ29tcGFydG1lbnQucmVjb25maWd1cmUocGxhY2Vob2xkZXIodGhpcy5wbGFjZWhvbGRlcikpLFxuICAgIH0pO1xuICB9XG5cbiAgX3JlZmxlY3RWYWx1ZSgpIHtcbiAgICBjb25zdCB0cmFuc2FjdGlvbiA9IHRoaXMuX2VkaXRvclN0YXRlLnVwZGF0ZSh7XG4gICAgICBjaGFuZ2VzOiB7XG4gICAgICAgIGZyb206IDAsXG4gICAgICAgIHRvOiB0aGlzLl9lZGl0b3JTdGF0ZS5kb2MubGVuZ3RoLFxuICAgICAgICBpbnNlcnQ6IHRoaXMudmFsdWUsXG4gICAgICB9LFxuICAgIH0pO1xuICAgIHRoaXMuX2VkaXRvclN0YXRlID0gdHJhbnNhY3Rpb24uc3RhdGU7XG4gIH1cblxuICBfcmVmbGVjdFJlYWRvbmx5RGlzYWJsZWQoKSB7XG4gICAgdGhpcy5fZWRpdG9yVmlldy5kaXNwYXRjaCh7XG4gICAgICBlZmZlY3RzOiB0aGlzLnJlYWRvbmx5Q29tcGFydG1lbnQucmVjb25maWd1cmUoRWRpdG9yVmlldy5lZGl0YWJsZS5vZighdGhpcy5yZWFkb25seSAmJiAhdGhpcy5kaXNhYmxlZCkpLFxuICAgIH0pO1xuICB9XG5cbiAgc3RhdGljIGFzeW5jIGZpbmRMYW5ndWFnZShtb2RlKSB7XG4gICAgaWYgKG1vZGUpIHtcbiAgICAgIGNvbnN0IG1vZGVPbmx5ID0gbW9kZS5zcGxpdCgnLycpLnBvcCgpO1xuICAgICAgaWYgKG1vZGVPbmx5ID09PSAnYXNjaWlkb2MnKSB7XG4gICAgICAgIGNvbnN0IFt7IGFzY2lpZG9jIH0sIHsgU3RyZWFtTGFuZ3VhZ2UgfV0gPSBhd2FpdCBQcm9taXNlLmFsbChbXG4gICAgICAgICAgaW1wb3J0KCdjb2RlbWlycm9yLWFzY2lpZG9jL2xpYi9hc2NpaWRvYycpLFxuICAgICAgICAgIGltcG9ydCgnQGNvZGVtaXJyb3Ivc3RyZWFtLXBhcnNlcicpLFxuICAgICAgICBdKTtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICBuYW1lOiAnYXNjaWlkb2MnLFxuICAgICAgICAgIHN1cHBvcnQ6IHtcbiAgICAgICAgICAgIGV4dGVuc2lvbjogU3RyZWFtTGFuZ3VhZ2UuZGVmaW5lKGFzY2lpZG9jKSxcbiAgICAgICAgICB9LFxuICAgICAgICB9O1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29uc3QgbGFuZ3VhZ2UgPSBsYW5ndWFnZXMuZmluZCgobGFuZ3VhZ2VEZXNjcmlwdGlvbikgPT4ge1xuICAgICAgICAgIHJldHVybiBsYW5ndWFnZURlc2NyaXB0aW9uLm5hbWUudG9VcHBlckNhc2UoKSA9PT0gbW9kZU9ubHkudG9VcHBlckNhc2UoKSB8fCBsYW5ndWFnZURlc2NyaXB0aW9uLmFsaWFzLmluY2x1ZGVzKG1vZGVPbmx5KTtcbiAgICAgICAgfSk7XG4gICAgICAgIGlmIChsYW5ndWFnZSA9PSBudWxsKSB7XG4gICAgICAgICAgY29uc29sZS53YXJuKFxuICAgICAgICAgICAgYENhbm5vdCBmaW5kIGxhbmd1YWdlICR7bW9kZX0sIHBsZWFzZSB1c2UgbGFuZ3VhZ2Ugc3VwcG9ydGVkIGJ5IENvZGVNaXJyb3IgNmAsXG4gICAgICAgICAgICBsYW5ndWFnZXMubWFwKChsKSA9PiBsLm5hbWUpLFxuICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGxhbmd1YWdlO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIGFzeW5jIF9yZWZsZWN0T3B0aW9ucygpIHtcbiAgICBjb25zdCBsYW5ndWFnZSA9IGF3YWl0IEd2Q29kZS5maW5kTGFuZ3VhZ2UodGhpcy5vcHRpb25zLm1vZGUpO1xuICAgIGlmIChsYW5ndWFnZSAhPSBudWxsKSB7XG4gICAgICBpZiAobGFuZ3VhZ2Uuc3VwcG9ydCA9PSBudWxsKSB7XG4gICAgICAgIGF3YWl0IGxhbmd1YWdlLmxvYWQoKTtcbiAgICAgIH1cbiAgICAgIHRoaXMuX2VkaXRvclZpZXcuZGlzcGF0Y2goe1xuICAgICAgICBlZmZlY3RzOiB0aGlzLmxhbmd1YWdlQ29tcGFydG1lbnQucmVjb25maWd1cmUobGFuZ3VhZ2Uuc3VwcG9ydC5leHRlbnNpb24pLFxuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgc3RhdGljIGdldCBjb2RlbWlycm9yVGhlbWUoKSB7XG4gICAgcmV0dXJuIEVkaXRvclZpZXcudGhlbWUoe1xuICAgICAgJyYuY20tZWRpdG9yLmNtLWZvY3VzZWQnOiB7XG4gICAgICAgIG91dGxpbmU6ICdub25lJyxcbiAgICAgIH0sXG4gICAgICAnLmNtLWd1dHRlcnMnOiB7XG4gICAgICAgIGJhY2tncm91bmRDb2xvcjogJ3ZhcigtLWd2LWlucHV0LWljb24tLWJnYywgdmFyKC0tZ3YtdGhlbWUtbmV1dHJhbC1jb2xvciwgI2Y1ZjVmNSkpJyxcbiAgICAgICAgY29sb3I6ICd2YXIoLS1ndi10aGVtZS1mb250LWNvbG9yLWRhcmssICMyNjI2MjYpJyxcbiAgICAgICAgYm9yZGVyTGVmdDogJzVweCBzb2xpZCcsXG4gICAgICAgIGJvcmRlckNvbG9yOiAndmFyKC0tZ3YtaW5wdXQtLWJkYywgdmFyKC0tZ3YtdGhlbWUtbmV1dHJhbC1jb2xvci1kYXJrLCAjZDlkOWQ5KSknLFxuICAgICAgfSxcbiAgICB9KTtcbiAgfVxuXG4gIHN0YXRpYyBnZXQgc3R5bGVzKCkge1xuICAgIHJldHVybiBbXG4gICAgICAuLi5zdXBlci5zdHlsZXMsXG4gICAgICBza2VsZXRvbixcbiAgICAgIGVtcHR5LFxuICAgICAgaW5wdXQsXG4gICAgICAvLyBsYW5ndWFnZT1DU1NcbiAgICAgIGNzc2BcbiAgICAgICAgOmhvc3Qge1xuICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgbWFyZ2luOiAwIDAuMnJlbSAwLjJyZW0gMC4ycmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLmNvbnRlbnQge1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICBib3JkZXI6IHZhcigtLWd2LWlucHV0LS1iZHcsIDFweCkgdmFyKC0tZ3YtaW5wdXQtLWJkcywgc29saWQpIHZhcigtLWd2LWlucHV0LS1iZGMsIHZhcigtLWd2LXRoZW1lLW5ldXRyYWwtY29sb3ItZGFyaywgI2Q5ZDlkOSkpO1xuICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLmJ0bl9jb3B5IHtcbiAgICAgICAgfVxuXG4gICAgICAgIC5ib3gtaWNvbiB7XG4gICAgICAgICAgYm90dG9tOiAtMXB4O1xuICAgICAgICAgIHJpZ2h0OiAtMXB4O1xuICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIH1cblxuICAgICAgICAuY29kZSAuYm94LWljb24ge1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5jb2RlIC5jbS1jb250ZW50LFxuICAgICAgICAuY29kZSAuY20tZ3V0dGVycyB7XG4gICAgICAgICAgaGVpZ2h0OiB2YXIoLS1pbnB1dC1tZWRpdW0tLWgpO1xuICAgICAgICB9XG5cbiAgICAgICAgLmxhcmdlIC5jb2RlIC5jbS1jb250ZW50LFxuICAgICAgICAubGFyZ2UgLmNvZGUgLmNtLWd1dHRlcnMge1xuICAgICAgICAgIGhlaWdodDogdmFyKC0taW5wdXQtbGFyZ2UtLWgpO1xuICAgICAgICB9XG5cbiAgICAgICAgLnNtYWxsIC5jb2RlIC5jbS1jb250ZW50LFxuICAgICAgICAuc21hbGwgLmNvZGUgLmNtLWd1dHRlcnMge1xuICAgICAgICAgIGhlaWdodDogdmFyKC0taW5wdXQtc21hbGwtLWgpO1xuICAgICAgICB9XG5cbiAgICAgICAgLyoqICBPdmVycmlkZSBDb2RlbWlycm9yIHRoZW1lICovXG4gICAgICAgIC5pbnB1dCAuY20tZ3V0dGVycyB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5pbnB1dCAuY20tc2Nyb2xsZXIge1xuICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIH1cblxuICAgICAgICAuaW5wdXQgLmNtLWFjdGl2ZUxpbmUsXG4gICAgICAgIDpob3N0KFtyZWFkb25seV0pIC5jbS1hY3RpdmVMaW5lIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5pbnB1dCAuY20tY29udGVudCB7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIDpob3N0KFtpbnZhbGlkXSkgLmNtLWd1dHRlcnMge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tZ3YtdGhlbWUtY29sb3ItZXJyb3IsICNkYTFhMWIpO1xuICAgICAgICB9XG4gICAgICBgLFxuICAgIF07XG4gIH1cbn1cblxud2luZG93LmN1c3RvbUVsZW1lbnRzLmRlZmluZSgnZ3YtY29kZScsIEd2Q29kZSk7XG4iXX0=
|
|
@@ -17,7 +17,7 @@ import { css, html, LitElement } from 'lit';
|
|
|
17
17
|
import { dispatchCustomEvent } from '../lib/events';
|
|
18
18
|
import { toDom } from '../lib/text-format';
|
|
19
19
|
import { empty } from '../styles/empty';
|
|
20
|
-
import { classMap } from 'lit
|
|
20
|
+
import { classMap } from 'lit/directives/class-map';
|
|
21
21
|
/**
|
|
22
22
|
* Documentation component
|
|
23
23
|
*
|
|
@@ -129,4 +129,4 @@ export class GvDocumentation extends LitElement {
|
|
|
129
129
|
|
|
130
130
|
}
|
|
131
131
|
window.customElements.define('gv-documentation', GvDocumentation);
|
|
132
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4vbm9kZV9tb2R1bGVzL0BncmF2aXRlZS91aS1jb21wb25lbnRzL29yZ2FuaXNtcy9ndi1kb2N1bWVudGF0aW9uLmpzIl0sIm5hbWVzIjpbImNzcyIsImh0bWwiLCJMaXRFbGVtZW50IiwiZGlzcGF0Y2hDdXN0b21FdmVudCIsInRvRG9tIiwiZW1wdHkiLCJjbGFzc01hcCIsIkd2RG9jdW1lbnRhdGlvbiIsInByb3BlcnRpZXMiLCJ0ZXh0IiwidHlwZSIsIlN0cmluZyIsImltYWdlIiwiX2RvbSIsIk9iamVjdCIsImF0dHJpYnV0ZSIsImRpc2FibGVkIiwiQm9vbGVhbiIsIndpdGhvdXRIZWFkZXIiLCJfY3NzTG9hZGVkIiwic3R5bGVzIiwiY29uc3RydWN0b3IiLCJfb25DbG9zZURvY3VtZW50YXRpb24iLCJfcmVuZGVySWNvbiIsInNob3VsZFVwZGF0ZSIsInByb3BzIiwiaGFzIiwidGhlbiIsInRpdGxlIiwiZWxlbWVudCIsInF1ZXJ5U2VsZWN0b3IiLCJyZW1vdmUiLCJxdWVyeVNlbGVjdG9yQWxsIiwiZm9yRWFjaCIsImxpbmsiLCJ0YXJnZXQiLCJfb25Mb2FkIiwicmVuZGVyIiwiY29udGVudCIsInNob3ciLCJ3aW5kb3ciLCJjdXN0b21FbGVtZW50cyIsImRlZmluZSJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBU0EsR0FBVCxFQUFjQyxJQUFkLEVBQW9CQyxVQUFwQixRQUFzQyxLQUF0QztBQUNBLFNBQVNDLG1CQUFULFFBQW9DLGVBQXBDO0FBQ0EsU0FBU0MsS0FBVCxRQUFzQixvQkFBdEI7QUFDQSxTQUFTQyxLQUFULFFBQXNCLGlCQUF0QjtBQUNBLFNBQVNDLFFBQVQsUUFBeUIsK0JBQXpCO0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FB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SSxFQUROLEdBRUVBLElBQUksMkNBRUUsS0FBS2UsUUFBTCxHQUNFZixJQUFJLEVBRE4sR0FFRUEsSUFBSSxvRUFJa0IsS0FBS3FCLHFCQUp2Qiw4QkFKUiw4QkFZbUJNLEtBWm5CLDZCQWFtQixLQUFLTCxXQUFMLEVBYm5CLGVBSkQsZ0JBbUJPakIsUUFBUSxDQUFDO0FBQUUscUJBQWUsSUFBakI7QUFBdUJpQyxNQUFBQSxJQUFJLEVBQUUsS0FBS3BCO0FBQWxDLEtBQUQsQ0FuQmYsTUFvQkhtQixPQXBCRyw4QkFxQnVCaEMsUUFBUSxDQUFDO0FBQUVELE1BQUFBLEtBQUssRUFBRSxJQUFUO0FBQWVrQyxNQUFBQSxJQUFJLEVBQUVELE9BQU8sSUFBSTtBQUFoQyxLQUFELENBckIvQiw2SEFBWDtBQTJCRDs7QUFqTDZDO0FBb0xoREUsTUFBTSxDQUFDQyxjQUFQLENBQXNCQyxNQUF0QixDQUE2QixrQkFBN0IsRUFBaURuQyxlQUFqRCIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgKEMpIDIwMTUgVGhlIEdyYXZpdGVlIHRlYW0gKGh0dHA6Ly9ncmF2aXRlZS5pbylcbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5pbXBvcnQgeyBjc3MsIGh0bWwsIExpdEVsZW1lbnQgfSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgZGlzcGF0Y2hDdXN0b21FdmVudCB9IGZyb20gJy4uL2xpYi9ldmVudHMnO1xuaW1wb3J0IHsgdG9Eb20gfSBmcm9tICcuLi9saWIvdGV4dC1mb3JtYXQnO1xuaW1wb3J0IHsgZW1wdHkgfSBmcm9tICcuLi9zdHlsZXMvZW1wdHknO1xuaW1wb3J0IHsgY2xhc3NNYXAgfSBmcm9tICdsaXQtaHRtbC9kaXJlY3RpdmVzL2NsYXNzLW1hcCc7XG5cbi8qKlxuICogIERvY3VtZW50YXRpb24gY29tcG9uZW50XG4gKlxuICog4pqg77iPIFRoaXMgY29tcG9uZW50IGlzIGJhc2VkIG9uIGBhc2NpaWRvY3RvcmAsIGBoaWdobGlnaHQuanNgIGFuZCBgYXNjaWlkb2N0b3ItaGlnaGxpZ2h0LmpzYC5cbiAqIFRvIHVzZSB0aGlzIGNvbXBvbmVudCBpbiB5b3VyIHByb2plY3QgYmUgc3VyZSB0aGUgZGVwZW5kZW5jaWVzIGFyZSBpbnN0YWxsZWQgb3JcbiAqIGluc3RhbGwgdGhlbSB3aXRoOiBgbnBtIGluc3RhbGwgYXNjaWlkb2N0b3IgaGlnaGxpZ2h0LmpzIGFzY2lpZG9jdG9yLWhpZ2hsaWdodC5qcyAtLXNhdmVgXG4gKlxuICogQGF0dHIge1N0cmluZ30gdGV4dCAtIERvY3VtZW50YXRpb24gY29udGVudFxuICogQGF0dHIge1N0cmluZ30gdHlwZSAtIFR5cGUgb2YgY29udGVudFxuICogQGF0dHIge1N0cmluZ30gaW1hZ2UgLSBJbWFnZSBvciBpY29uIHRvIGRpc3BsYXkgaW4gaGVhZGVyXG4gKiBAYXR0ciB7Qm9vbGVhbn0gZGlzYWJsZWQgLSB0cnVlIGlmIGNvbXBvbmVudCBpcyBkaXNhYmxlZFxuICogQGF0dHIge0Jvb2xlYW59IHdpdGhvdXQtaGVhZGVyIC0gdHJ1ZSBpZiBjb21wb25lbnQgc2hvdWxkIG5vdCBoYXZlIGhlYWRlciB3aXRoIHRpdGxlIGFuZCBhY3Rpb25zXG4gKi9cbmV4cG9ydCBjbGFzcyBHdkRvY3VtZW50YXRpb24gZXh0ZW5kcyBMaXRFbGVtZW50IHtcbiAgc3RhdGljIGdldCBwcm9wZXJ0aWVzKCkge1xuICAgIHJldHVybiB7XG4gICAgICB0ZXh0OiB7IHR5cGU6IFN0cmluZyB9LFxuICAgICAgdHlwZTogeyB0eXBlOiBTdHJpbmcgfSxcbiAgICAgIGltYWdlOiB7IHR5cGU6IFN0cmluZyB9LFxuICAgICAgX2RvbTogeyB0eXBlOiBPYmplY3QsIGF0dHJpYnV0ZTogZmFsc2UgfSxcbiAgICAgIGRpc2FibGVkOiB7IHR5cGU6IEJvb2xlYW4gfSxcbiAgICAgIHdpdGhvdXRIZWFkZXI6IHsgdHlwZTogQm9vbGVhbiwgYXR0cmlidXRlOiAnd2l0aG91dC1oZWFkZXInIH0sXG4gICAgICBfY3NzTG9hZGVkOiB7IHR5cGU6IEJvb2xlYW4sIGF0dHJpYnV0ZTogZmFsc2UgfSxcbiAgICB9O1xuICB9XG5cbiAgc3RhdGljIGdldCBzdHlsZXMoKSB7XG4gICAgcmV0dXJuIFtcbiAgICAgIGVtcHR5LFxuICAgICAgLy8gbGFuZ3VhZ2U9Q1NTXG4gICAgICBjc3NgXG4gICAgICAgIDpob3N0IHtcbiAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5oZWFkZXIge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkOWQ5ZDk7XG4gICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICBtaW4taGVpZ2h0OiA0NXB4O1xuICAgICAgICAgIC0tZ3YtaWNvbi0tczogMjZweDtcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgIHBhZGRpbmc6IDAgMXJlbTtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIH1cblxuICAgICAgICAuaGVhZGVyIC5sZWZ0LFxuICAgICAgICAuaGVhZGVyIC5yaWdodCB7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBmbGV4OiAxO1xuICAgICAgICAgIHotaW5kZXg6IDEwO1xuICAgICAgICB9XG5cbiAgICAgICAgLmhlYWRlciAucmlnaHQge1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICAgIH1cblxuICAgICAgICAuaGVhZGVyIC50aXRsZSB7XG4gICAgICAgICAgY29sb3I6ICMyODQ0NGY7XG4gICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMnJlbTtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5oZWFkZXIgZ3YtaW1hZ2Uge1xuICAgICAgICAgIGhlaWdodDogMzVweDtcbiAgICAgICAgICB3aWR0aDogMzVweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5jb250YWluZXIge1xuICAgICAgICAgIGZsZXgtZ3JvdzogMTtcblxuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAgICAgICAgIC8qIGZvciBGaXJlZm94ICovXG4gICAgICAgICAgbWluLWhlaWdodDogMDtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICAuZG9jLWNvbnRlbnQge1xuICAgICAgICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgZmxleC1ncm93OiAxO1xuXG4gICAgICAgICAgb3ZlcmZsb3c6IGF1dG87XG5cbiAgICAgICAgICAvKiBmb3IgRmlyZWZveCAqL1xuICAgICAgICAgIG1pbi1oZWlnaHQ6IDA7XG4gICAgICAgICAgcGFkZGluZzogMC41cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLyogSGFjayBmb3IgbG9uZyBzdHJpbmcgKi9cbiAgICAgICAgLmhsanMtc3RyaW5nIHtcbiAgICAgICAgICB3aGl0ZS1zcGFjZTogcHJlLXdyYXA7XG4gICAgICAgIH1cblxuICAgICAgICAuZW1wdHkge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAuc2hvdyB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICAgIGAsXG4gICAgXTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy50eXBlID0gJ2Fkb2MnO1xuICB9XG5cbiAgX29uQ2xvc2VEb2N1bWVudGF0aW9uKCkge1xuICAgIGRpc3BhdGNoQ3VzdG9tRXZlbnQodGhpcywgJ2Nsb3NlJyk7XG4gIH1cblxuICBfcmVuZGVySWNvbigpIHtcbiAgICBpZiAodGhpcy5pbWFnZSkge1xuICAgICAgcmV0dXJuIGh0bWxgPGd2LWltYWdlIHNyYz1cIiR7dGhpcy5pbWFnZX1cIj48L2d2LWltYWdlPmA7XG4gICAgfVxuICAgIHJldHVybiBodG1sYDxndi1pY29uIHNoYXBlPVwiY29kZTpxdWVzdGlvblwiPjwvZ3YtaWNvbj5gO1xuICB9XG5cbiAgc2hvdWxkVXBkYXRlKHByb3BzKSB7XG4gICAgaWYgKHByb3BzLmhhcygndGV4dCcpKSB7XG4gICAgICB0b0RvbSh0aGlzLnRleHQsIHRoaXMudHlwZSwgdHJ1ZSkudGhlbigoX2RvbSkgPT4ge1xuICAgICAgICB0aGlzLl9kb20gPSBfZG9tO1xuICAgICAgICBpZiAodGhpcy5fZG9tKSB7XG4gICAgICAgICAgY29uc3QgdGl0bGUgPSB0aGlzLl9kb20uZWxlbWVudC5xdWVyeVNlbGVjdG9yKCdoMScpO1xuICAgICAgICAgIGlmICh0aXRsZSAmJiAhdGhpcy53aXRob3V0SGVhZGVyKSB7XG4gICAgICAgICAgICB0aXRsZS5yZW1vdmUoKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgdGhpcy5fZG9tLmVsZW1lbnQucXVlcnlTZWxlY3RvckFsbCgnYScpLmZvckVhY2goKGxpbmspID0+IChsaW5rLnRhcmdldCA9ICdfYmxhbmsnKSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgICByZXR1cm4gc3VwZXIuc2hvdWxkVXBkYXRlKHByb3BzKTtcbiAgfVxuXG4gIF9vbkxvYWQoKSB7XG4gICAgdGhpcy5fY3NzTG9hZGVkID0gdHJ1ZTtcbiAgfVxuXG4gIHJlbmRlcigpIHtcbiAgICBsZXQgdGl0bGUgPSAnJztcbiAgICBsZXQgY29udGVudDtcbiAgICBpZiAodGhpcy5fZG9tKSB7XG4gICAgICB0aXRsZSA9IHRoaXMuX2RvbS50aXRsZTtcbiAgICAgIGNvbnRlbnQgPSB0aGlzLl9kb20uZWxlbWVudDtcbiAgICB9XG5cbiAgICByZXR1cm4gaHRtbGA8bGluayBAbG9hZD1cIiR7dGhpcy5fb25Mb2FkfVwiIHJlbD1cInN0eWxlc2hlZXRcIiBocmVmPVwiY3NzL2RvY3VtZW50YXRpb24uY3NzXCIgLz5cbiAgICAgIDxkaXYgY2xhc3M9XCJjb250YWluZXJcIj5cbiAgICAgICAgJHt0aGlzLndpdGhvdXRIZWFkZXJcbiAgICAgICAgICA/IGh0bWxgYFxuICAgICAgICAgIDogaHRtbGA8ZGl2IGNsYXNzPVwiaGVhZGVyXCI+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJsZWZ0XCI+XG4gICAgICAgICAgICAgICAgJHt0aGlzLmRpc2FibGVkXG4gICAgICAgICAgICAgICAgICA/IGh0bWxgYFxuICAgICAgICAgICAgICAgICAgOiBodG1sYDxndi1idXR0b25cbiAgICAgICAgICAgICAgICAgICAgICBpY29uPVwiZ2VuZXJhbDpjbG9zZVwiXG4gICAgICAgICAgICAgICAgICAgICAgb3V0bGluZWRcbiAgICAgICAgICAgICAgICAgICAgICBzbWFsbFxuICAgICAgICAgICAgICAgICAgICAgIEBndi1idXR0b246Y2xpY2s9XCIke3RoaXMuX29uQ2xvc2VEb2N1bWVudGF0aW9ufVwiXG4gICAgICAgICAgICAgICAgICAgICAgdGl0bGU9XCJDbG9zZVwiXG4gICAgICAgICAgICAgICAgICAgID48L2d2LWJ1dHRvbj5gfVxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRpdGxlXCI+JHt0aXRsZX08L2Rpdj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJpZ2h0XCI+JHt0aGlzLl9yZW5kZXJJY29uKCl9PC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5gfVxuICAgICAgICA8ZGl2IGNsYXNzPVwiJHtjbGFzc01hcCh7ICdkb2MtY29udGVudCc6IHRydWUsIHNob3c6IHRoaXMuX2Nzc0xvYWRlZCB9KX1cIj5cbiAgICAgICAgICAke2NvbnRlbnR9XG4gICAgICAgICAgPHNsb3QgbmFtZT1cImVtcHR5XCIgY2xhc3M9XCIke2NsYXNzTWFwKHsgZW1wdHk6IHRydWUsIHNob3c6IGNvbnRlbnQgPT0gbnVsbCB9KX1cIj5cbiAgICAgICAgICAgIDxkaXY+U29ycnksdGhlIGRvY3VtZW50YXRpb24gd2FzIG5vdCBmb3VuZC48L2Rpdj5cbiAgICAgICAgICAgIDxkaXY+U2VlIHRoZSBkb2N1bWVudGF0aW9uIGFib3V0IHBsdWdpbnMuPC9kaXY+XG4gICAgICAgICAgPC9zbG90PlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PiBgO1xuICB9XG59XG5cbndpbmRvdy5jdXN0b21FbGVtZW50cy5kZWZpbmUoJ2d2LWRvY3VtZW50YXRpb24nLCBHdkRvY3VtZW50YXRpb24pO1xuIl19
|
|
132
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4vbm9kZV9tb2R1bGVzL0BncmF2aXRlZS91aS1jb21wb25lbnRzL29yZ2FuaXNtcy9ndi1kb2N1bWVudGF0aW9uLmpzIl0sIm5hbWVzIjpbImNzcyIsImh0bWwiLCJMaXRFbGVtZW50IiwiZGlzcGF0Y2hDdXN0b21FdmVudCIsInRvRG9tIiwiZW1wdHkiLCJjbGFzc01hcCIsIkd2RG9jdW1lbnRhdGlvbiIsInByb3BlcnRpZXMiLCJ0ZXh0IiwidHlwZSIsIlN0cmluZyIsImltYWdlIiwiX2RvbSIsIk9iamVjdCIsImF0dHJpYnV0ZSIsImRpc2FibGVkIiwiQm9vbGVhbiIsIndpdGhvdXRIZWFkZXIiLCJfY3NzTG9hZGVkIiwic3R5bGVzIiwiY29uc3RydWN0b3IiLCJfb25DbG9zZURvY3VtZW50YXRpb24iLCJfcmVuZGVySWNvbiIsInNob3VsZFVwZGF0ZSIsInByb3BzIiwiaGFzIiwidGhlbiIsInRpdGxlIiwiZWxlbWVudCIsInF1ZXJ5U2VsZWN0b3IiLCJyZW1vdmUiLCJxdWVyeVNlbGVjdG9yQWxsIiwiZm9yRWFjaCIsImxpbmsiLCJ0YXJnZXQiLCJfb25Mb2FkIiwicmVuZGVyIiwiY29udGVudCIsInNob3ciLCJ3aW5kb3ciLCJjdXN0b21FbGVtZW50cyIsImRlZmluZSJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBU0EsR0FBVCxFQUFjQyxJQUFkLEVBQW9CQyxVQUFwQixRQUFzQyxLQUF0QztBQUNBLFNBQVNDLG1CQUFULFFBQW9DLGVBQXBDO0FBQ0EsU0FBU0MsS0FBVCxRQUFzQixvQkFBdEI7QUFDQSxTQUFTQyxLQUFULFFBQXNCLGlCQUF0QjtBQUNBLFNBQVNDLFFBQVQsUUFBeUIsMEJBQXpCO0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FB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SSxFQUROLEdBRUVBLElBQUksMkNBRUUsS0FBS2UsUUFBTCxHQUNFZixJQUFJLEVBRE4sR0FFRUEsSUFBSSxvRUFJa0IsS0FBS3FCLHFCQUp2Qiw4QkFKUiw4QkFZbUJNLEtBWm5CLDZCQWFtQixLQUFLTCxXQUFMLEVBYm5CLGVBSkQsZ0JBbUJPakIsUUFBUSxDQUFDO0FBQUUscUJBQWUsSUFBakI7QUFBdUJpQyxNQUFBQSxJQUFJLEVBQUUsS0FBS3BCO0FBQWxDLEtBQUQsQ0FuQmYsTUFvQkhtQixPQXBCRyw4QkFxQnVCaEMsUUFBUSxDQUFDO0FBQUVELE1BQUFBLEtBQUssRUFBRSxJQUFUO0FBQWVrQyxNQUFBQSxJQUFJLEVBQUVELE9BQU8sSUFBSTtBQUFoQyxLQUFELENBckIvQiw2SEFBWDtBQTJCRDs7QUFqTDZDO0FBb0xoREUsTUFBTSxDQUFDQyxjQUFQLENBQXNCQyxNQUF0QixDQUE2QixrQkFBN0IsRUFBaURuQyxlQUFqRCIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgKEMpIDIwMTUgVGhlIEdyYXZpdGVlIHRlYW0gKGh0dHA6Ly9ncmF2aXRlZS5pbylcbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5pbXBvcnQgeyBjc3MsIGh0bWwsIExpdEVsZW1lbnQgfSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgZGlzcGF0Y2hDdXN0b21FdmVudCB9IGZyb20gJy4uL2xpYi9ldmVudHMnO1xuaW1wb3J0IHsgdG9Eb20gfSBmcm9tICcuLi9saWIvdGV4dC1mb3JtYXQnO1xuaW1wb3J0IHsgZW1wdHkgfSBmcm9tICcuLi9zdHlsZXMvZW1wdHknO1xuaW1wb3J0IHsgY2xhc3NNYXAgfSBmcm9tICdsaXQvZGlyZWN0aXZlcy9jbGFzcy1tYXAnO1xuXG4vKipcbiAqICBEb2N1bWVudGF0aW9uIGNvbXBvbmVudFxuICpcbiAqIOKaoO+4jyBUaGlzIGNvbXBvbmVudCBpcyBiYXNlZCBvbiBgYXNjaWlkb2N0b3JgLCBgaGlnaGxpZ2h0LmpzYCBhbmQgYGFzY2lpZG9jdG9yLWhpZ2hsaWdodC5qc2AuXG4gKiBUbyB1c2UgdGhpcyBjb21wb25lbnQgaW4geW91ciBwcm9qZWN0IGJlIHN1cmUgdGhlIGRlcGVuZGVuY2llcyBhcmUgaW5zdGFsbGVkIG9yXG4gKiBpbnN0YWxsIHRoZW0gd2l0aDogYG5wbSBpbnN0YWxsIGFzY2lpZG9jdG9yIGhpZ2hsaWdodC5qcyBhc2NpaWRvY3Rvci1oaWdobGlnaHQuanMgLS1zYXZlYFxuICpcbiAqIEBhdHRyIHtTdHJpbmd9IHRleHQgLSBEb2N1bWVudGF0aW9uIGNvbnRlbnRcbiAqIEBhdHRyIHtTdHJpbmd9IHR5cGUgLSBUeXBlIG9mIGNvbnRlbnRcbiAqIEBhdHRyIHtTdHJpbmd9IGltYWdlIC0gSW1hZ2Ugb3IgaWNvbiB0byBkaXNwbGF5IGluIGhlYWRlclxuICogQGF0dHIge0Jvb2xlYW59IGRpc2FibGVkIC0gdHJ1ZSBpZiBjb21wb25lbnQgaXMgZGlzYWJsZWRcbiAqIEBhdHRyIHtCb29sZWFufSB3aXRob3V0LWhlYWRlciAtIHRydWUgaWYgY29tcG9uZW50IHNob3VsZCBub3QgaGF2ZSBoZWFkZXIgd2l0aCB0aXRsZSBhbmQgYWN0aW9uc1xuICovXG5leHBvcnQgY2xhc3MgR3ZEb2N1bWVudGF0aW9uIGV4dGVuZHMgTGl0RWxlbWVudCB7XG4gIHN0YXRpYyBnZXQgcHJvcGVydGllcygpIHtcbiAgICByZXR1cm4ge1xuICAgICAgdGV4dDogeyB0eXBlOiBTdHJpbmcgfSxcbiAgICAgIHR5cGU6IHsgdHlwZTogU3RyaW5nIH0sXG4gICAgICBpbWFnZTogeyB0eXBlOiBTdHJpbmcgfSxcbiAgICAgIF9kb206IHsgdHlwZTogT2JqZWN0LCBhdHRyaWJ1dGU6IGZhbHNlIH0sXG4gICAgICBkaXNhYmxlZDogeyB0eXBlOiBCb29sZWFuIH0sXG4gICAgICB3aXRob3V0SGVhZGVyOiB7IHR5cGU6IEJvb2xlYW4sIGF0dHJpYnV0ZTogJ3dpdGhvdXQtaGVhZGVyJyB9LFxuICAgICAgX2Nzc0xvYWRlZDogeyB0eXBlOiBCb29sZWFuLCBhdHRyaWJ1dGU6IGZhbHNlIH0sXG4gICAgfTtcbiAgfVxuXG4gIHN0YXRpYyBnZXQgc3R5bGVzKCkge1xuICAgIHJldHVybiBbXG4gICAgICBlbXB0eSxcbiAgICAgIC8vIGxhbmd1YWdlPUNTU1xuICAgICAgY3NzYFxuICAgICAgICA6aG9zdCB7XG4gICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIH1cblxuICAgICAgICAuaGVhZGVyIHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZDlkOWQ5O1xuICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgbWluLWhlaWdodDogNDVweDtcbiAgICAgICAgICAtLWd2LWljb24tLXM6IDI2cHg7XG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICBwYWRkaW5nOiAwIDFyZW07XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB9XG5cbiAgICAgICAgLmhlYWRlciAubGVmdCxcbiAgICAgICAgLmhlYWRlciAucmlnaHQge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgZmxleDogMTtcbiAgICAgICAgICB6LWluZGV4OiAxMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5oZWFkZXIgLnJpZ2h0IHtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgICB9XG5cbiAgICAgICAgLmhlYWRlciAudGl0bGUge1xuICAgICAgICAgIGNvbG9yOiAjMjg0NDRmO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjJyZW07XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgIH1cblxuICAgICAgICAuaGVhZGVyIGd2LWltYWdlIHtcbiAgICAgICAgICBoZWlnaHQ6IDM1cHg7XG4gICAgICAgICAgd2lkdGg6IDM1cHg7XG4gICAgICAgIH1cblxuICAgICAgICAuY29udGFpbmVyIHtcbiAgICAgICAgICBmbGV4LWdyb3c6IDE7XG5cbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICAgICAgICAvKiBmb3IgRmlyZWZveCAqL1xuICAgICAgICAgIG1pbi1oZWlnaHQ6IDA7XG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgLmRvYy1jb250ZW50IHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgIGZsZXgtZ3JvdzogMTtcblxuICAgICAgICAgIG92ZXJmbG93OiBhdXRvO1xuXG4gICAgICAgICAgLyogZm9yIEZpcmVmb3ggKi9cbiAgICAgICAgICBtaW4taGVpZ2h0OiAwO1xuICAgICAgICAgIHBhZGRpbmc6IDAuNXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8qIEhhY2sgZm9yIGxvbmcgc3RyaW5nICovXG4gICAgICAgIC5obGpzLXN0cmluZyB7XG4gICAgICAgICAgd2hpdGUtc3BhY2U6IHByZS13cmFwO1xuICAgICAgICB9XG5cbiAgICAgICAgLmVtcHR5IHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgLnNob3cge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgICBgLFxuICAgIF07XG4gIH1cblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMudHlwZSA9ICdhZG9jJztcbiAgfVxuXG4gIF9vbkNsb3NlRG9jdW1lbnRhdGlvbigpIHtcbiAgICBkaXNwYXRjaEN1c3RvbUV2ZW50KHRoaXMsICdjbG9zZScpO1xuICB9XG5cbiAgX3JlbmRlckljb24oKSB7XG4gICAgaWYgKHRoaXMuaW1hZ2UpIHtcbiAgICAgIHJldHVybiBodG1sYDxndi1pbWFnZSBzcmM9XCIke3RoaXMuaW1hZ2V9XCI+PC9ndi1pbWFnZT5gO1xuICAgIH1cbiAgICByZXR1cm4gaHRtbGA8Z3YtaWNvbiBzaGFwZT1cImNvZGU6cXVlc3Rpb25cIj48L2d2LWljb24+YDtcbiAgfVxuXG4gIHNob3VsZFVwZGF0ZShwcm9wcykge1xuICAgIGlmIChwcm9wcy5oYXMoJ3RleHQnKSkge1xuICAgICAgdG9Eb20odGhpcy50ZXh0LCB0aGlzLnR5cGUsIHRydWUpLnRoZW4oKF9kb20pID0+IHtcbiAgICAgICAgdGhpcy5fZG9tID0gX2RvbTtcbiAgICAgICAgaWYgKHRoaXMuX2RvbSkge1xuICAgICAgICAgIGNvbnN0IHRpdGxlID0gdGhpcy5fZG9tLmVsZW1lbnQucXVlcnlTZWxlY3RvcignaDEnKTtcbiAgICAgICAgICBpZiAodGl0bGUgJiYgIXRoaXMud2l0aG91dEhlYWRlcikge1xuICAgICAgICAgICAgdGl0bGUucmVtb3ZlKCk7XG4gICAgICAgICAgfVxuICAgICAgICAgIHRoaXMuX2RvbS5lbGVtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJ2EnKS5mb3JFYWNoKChsaW5rKSA9PiAobGluay50YXJnZXQgPSAnX2JsYW5rJykpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gICAgcmV0dXJuIHN1cGVyLnNob3VsZFVwZGF0ZShwcm9wcyk7XG4gIH1cblxuICBfb25Mb2FkKCkge1xuICAgIHRoaXMuX2Nzc0xvYWRlZCA9IHRydWU7XG4gIH1cblxuICByZW5kZXIoKSB7XG4gICAgbGV0IHRpdGxlID0gJyc7XG4gICAgbGV0IGNvbnRlbnQ7XG4gICAgaWYgKHRoaXMuX2RvbSkge1xuICAgICAgdGl0bGUgPSB0aGlzLl9kb20udGl0bGU7XG4gICAgICBjb250ZW50ID0gdGhpcy5fZG9tLmVsZW1lbnQ7XG4gICAgfVxuXG4gICAgcmV0dXJuIGh0bWxgPGxpbmsgQGxvYWQ9XCIke3RoaXMuX29uTG9hZH1cIiByZWw9XCJzdHlsZXNoZWV0XCIgaHJlZj1cImNzcy9kb2N1bWVudGF0aW9uLmNzc1wiIC8+XG4gICAgICA8ZGl2IGNsYXNzPVwiY29udGFpbmVyXCI+XG4gICAgICAgICR7dGhpcy53aXRob3V0SGVhZGVyXG4gICAgICAgICAgPyBodG1sYGBcbiAgICAgICAgICA6IGh0bWxgPGRpdiBjbGFzcz1cImhlYWRlclwiPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibGVmdFwiPlxuICAgICAgICAgICAgICAgICR7dGhpcy5kaXNhYmxlZFxuICAgICAgICAgICAgICAgICAgPyBodG1sYGBcbiAgICAgICAgICAgICAgICAgIDogaHRtbGA8Z3YtYnV0dG9uXG4gICAgICAgICAgICAgICAgICAgICAgaWNvbj1cImdlbmVyYWw6Y2xvc2VcIlxuICAgICAgICAgICAgICAgICAgICAgIG91dGxpbmVkXG4gICAgICAgICAgICAgICAgICAgICAgc21hbGxcbiAgICAgICAgICAgICAgICAgICAgICBAZ3YtYnV0dG9uOmNsaWNrPVwiJHt0aGlzLl9vbkNsb3NlRG9jdW1lbnRhdGlvbn1cIlxuICAgICAgICAgICAgICAgICAgICAgIHRpdGxlPVwiQ2xvc2VcIlxuICAgICAgICAgICAgICAgICAgICA+PC9ndi1idXR0b24+YH1cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0aXRsZVwiPiR7dGl0bGV9PC9kaXY+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyaWdodFwiPiR7dGhpcy5fcmVuZGVySWNvbigpfTwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+YH1cbiAgICAgICAgPGRpdiBjbGFzcz1cIiR7Y2xhc3NNYXAoeyAnZG9jLWNvbnRlbnQnOiB0cnVlLCBzaG93OiB0aGlzLl9jc3NMb2FkZWQgfSl9XCI+XG4gICAgICAgICAgJHtjb250ZW50fVxuICAgICAgICAgIDxzbG90IG5hbWU9XCJlbXB0eVwiIGNsYXNzPVwiJHtjbGFzc01hcCh7IGVtcHR5OiB0cnVlLCBzaG93OiBjb250ZW50ID09IG51bGwgfSl9XCI+XG4gICAgICAgICAgICA8ZGl2PlNvcnJ5LHRoZSBkb2N1bWVudGF0aW9uIHdhcyBub3QgZm91bmQuPC9kaXY+XG4gICAgICAgICAgICA8ZGl2PlNlZSB0aGUgZG9jdW1lbnRhdGlvbiBhYm91dCBwbHVnaW5zLjwvZGl2PlxuICAgICAgICAgIDwvc2xvdD5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj4gYDtcbiAgfVxufVxuXG53aW5kb3cuY3VzdG9tRWxlbWVudHMuZGVmaW5lKCdndi1kb2N1bWVudGF0aW9uJywgR3ZEb2N1bWVudGF0aW9uKTtcbiJdfQ==
|