@antischematic/angular-state-library
Advanced tools
+5
-5
@@ -103,3 +103,3 @@ import { createEnvironmentInjector, EnvironmentInjector, ErrorHandler, inject, INJECTOR } from "@angular/core"; | ||
| } | ||
| function runAction(fn, key, deps, ...args) { | ||
| function runAction(fn, key, deps, args) { | ||
| const event = inject(EventScheduler); | ||
@@ -116,3 +116,3 @@ event.schedule(EventType.Dispatch, key, args.length === 1 ? args[0] : args, getChanges(deps)); | ||
| teardown(this, key); | ||
| return runInContext(deps, runAction, proxy, catchError, key, fn, key, deps, ...args); | ||
| return runInContext(deps, runAction, proxy, catchError, key, fn, key, deps, args); | ||
| }); | ||
@@ -148,4 +148,4 @@ } | ||
| const events = getToken(EventScheduler, this); | ||
| const changes = Object.entries(value).map(([key, value]) => [key, value.previousValue]); | ||
| events.schedule(EventType.Dispatch, "ngOnChanges", value, new Map([[this, new Map(changes)]])); | ||
| const changes = Object.entries(value).map(([key, change]) => [key, change.previousValue]); | ||
| events.schedule(EventType.Dispatch, "ngOnChanges", { ...value }, new Map([[this, new Map(changes)]])); | ||
| fn.call(this, value); | ||
@@ -176,2 +176,2 @@ }); | ||
| } | ||
| //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2NvcmUvc3JjL2NvcmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNKLHlCQUF5QixFQUN6QixtQkFBbUIsRUFDbkIsWUFBWSxFQUNaLE1BQU0sRUFDTixRQUFRLEVBRVYsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFTLFNBQVMsRUFBd0IsTUFBTSxjQUFjLENBQUM7QUFDdEUsT0FBTyxFQUNKLFVBQVUsRUFDVixPQUFPLEVBQ1AsT0FBTyxFQUNQLGFBQWEsRUFDYixZQUFZLEVBQ1osUUFBUSxFQUNSLFFBQVEsRUFDUixTQUFTLEVBQ1QsT0FBTyxFQUNQLE9BQU8sRUFDVCxNQUFNLFlBQVksQ0FBQztBQUNwQixPQUFPLEVBQ0osTUFBTSxFQUNOLE9BQU8sRUFDUCxPQUFPLEVBQ1AsZUFBZSxFQUNmLGNBQWMsRUFDZCxXQUFXLEVBQ1gsWUFBWSxFQUNaLGlCQUFpQixFQUNqQixRQUFRLEVBQ1YsTUFBTSxhQUFhLENBQUM7QUFDckIsT0FBTyxFQUFDLFdBQVcsRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUMsTUFBTSxTQUFTLENBQUM7QUFDOUUsT0FBTyxFQUFDLEtBQUssRUFBRSxTQUFTLEVBQUMsTUFBTSxVQUFVLENBQUM7QUFDMUMsT0FBTyxFQUFDLElBQUksRUFBRSxJQUFJLEVBQUMsTUFBTSxTQUFTLENBQUM7QUFFbkMsU0FBUyxTQUFTLENBQUMsSUFBWTtJQUM1QixJQUFJLEtBQUssR0FBRyxLQUFLLENBQUE7SUFDakIsS0FBSyxNQUFNLENBQUMsTUFBTSxFQUFFLFNBQVMsQ0FBQyxJQUFJLElBQUksRUFBRTtRQUNyQyxLQUFLLE1BQU0sQ0FBQyxHQUFHLEVBQUUsUUFBUSxDQUFDLElBQUksU0FBUyxFQUFFO1lBQ3RDLE1BQU0sT0FBTyxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQTtZ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ZXNDb250ZW50IjpbImltcG9ydCB7XG4gICBjcmVhdGVFbnZpcm9ubWVudEluamVjdG9yLFxuICAgRW52aXJvbm1lbnRJbmplY3RvcixcbiAgIEVycm9ySGFuZGxlcixcbiAgIGluamVjdCxcbiAgIElOSkVDVE9SLFxuICAgUHJvdmlkZXJUb2tlblxufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHtEZXBNYXAsIEV2ZW50VHlwZSwgUGhhc2UsIFNlbGVjdE1ldGFkYXRhfSBmcm9tIFwiLi9pbnRlcmZhY2VzXCI7XG5pbXBvcnQge1xuICAgZ2V0QWN0aW9ucyxcbiAgIGdldERlcHMsXG4gICBnZXRNZXRhLFxuICAgZ2V0TWV0YVZhbHVlcyxcbiAgIGdldFNlbGVjdG9ycyxcbiAgIGdldFRva2VuLFxuICAgaW5qZWN0b3IsXG4gICBtYXJrRGlydHksXG4gICBzZXRNZXRhLFxuICAgdHJhY2tlZFxufSBmcm9tIFwiLi9tZXRhZGF0YVwiO1xuaW1wb3J0IHtcbiAgIEFDVElPTixcbiAgIENoYW5nZXMsXG4gICBDT05URVhULFxuICAgRWZmZWN0U2NoZWR1bGVyLFxuICAgRXZlbnRTY2hlZHVsZXIsXG4gICBST09UX0NPTkZJRyxcbiAgIFNUT1JFX0NPTkZJRyxcbiAgIFN0b3JlRXJyb3JIYW5kbGVyLFxuICAgVGVhcmRvd25cbn0gZnJvbSBcIi4vcHJvdmlkZXJzXCI7XG5pbXBvcnQge2NyZWF0ZVByb3h5LCBnZXRDaGFuZ2VzLCBwb3BTdGFjaywgcHVzaFN0YWNrLCB1bnRyYWNrfSBmcm9tIFwiLi9wcm94eVwiO1xuaW1wb3J0IHtzdG9yZSwgc3Vic2NyaWJlfSBmcm9tIFwiLi9zZWxlY3RcIjtcbmltcG9ydCB7Y2FsbCwgd3JhcH0gZnJvbSBcIi4vdXRpbHNcIjtcblxuZnVuY3Rpb24gY2hlY2tEZXBzKGRlcHM6IERlcE1hcCkge1xuICAgbGV0IGRpcnR5ID0gZmFsc2VcbiAgIGZvciAoY29uc3QgW29iamVjdCwga2V5VmFsdWVzXSBvZiBkZXBzKSB7XG4gICAgICBmb3IgKGNvbnN0IFtrZXksIHByZXZpb3VzXSBvZiBrZXlWYWx1ZXMpIHtcbiAgICAgICAgIGNvbnN0IGN1cnJlbnQgPSBvYmplY3Rba2V5XVxuICAgICAgICAgaWYgKCFPYmplY3QuaXMoY3VycmVudCwgcHJldmlvdXMpKSB7XG4gICAgICAgICAgICBrZXlWYWx1ZXMuc2V0KGtleSwgY3VycmVudClcbiAgICAgICAgICAgIGRpcnR5ID0gdHJ1ZVxuICAgICAgICAgfVxuICAgICAgfVxuICAgfVxuICAgcmV0dXJuIGRpcnR5XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBkZWNvcmF0ZUNoZWNrKHRhcmdldDoge30sIG5hbWU6IFBoYXNlKSB7XG4gICBjb25zdCBhY3Rpb25zID0gZ2V0QWN0aW9ucyh0YXJnZXQsIG5hbWUpXG4gICB3cmFwKHRhcmdldCwgbmFtZSwgZnVuY3Rpb24gKGZuKSB7XG4gICAgICBjb25zdCBldmVudHMgPSBnZXRUb2tlbihFdmVudFNjaGVkdWxlciwgdGhpcylcbiAgICAgIGZvciAoY29uc3QgYWN0aW9uIG9mIGFjdGlvbnMpIHtcbiAgICAgICAgIGNvbnN0IGRlcHMgPSBnZXREZXBzKHRoaXMsIGFjdGlvbi5rZXkpXG4gICAgICAgICBjb25zdCBkaXJ0eSA9IGFjdGlvbi50cmFjayAmJiBkZXBzICYmIGNoZWNrRGVwcyhkZXBzKVxuICAgICAgICAgaWYgKGFjdGlvbi5kZXNjcmlwdG9yPy52YWx1ZS5sZW5ndGggPT09IDAgJiYgKCFkZXBzICYmIGFjdGlvbi5pbW1lZGlhdGUgJiYgYWN0aW9uLnBoYXNlID09PSBuYW1lIHx8IGRpcnR5KSkge1xuICAgICAgICAgICAgbWFya0RpcnR5KHRoaXMpXG4gICAgICAgICAgICBjYWxsKHRoaXMsIGFjdGlvbi5rZXkpXG4gICAgICAgICB9XG4gICAgICB9XG4gICAgICBmb3IgKGNvbnN0IGFjdGlvbiBvZiBhY3Rpb25zKSB7XG4gICAgICAgICBjb25zdCBlZmZlY3QgPSBnZXRUb2tlbihFZmZlY3RTY2hlZHVsZXIsIHRoaXMsIGFjdGlvbi5rZXkpXG4gICAgICAgICBlZmZlY3QuZGVxdWV1ZSgpXG4gICAgICB9XG4gICAgICBldmVudHMuZmx1c2goKVxuICAgICAgZm4uYXBwbHkodGhpcylcbiAgIH0pXG59XG5cbmZ1bmN0aW9uIGdldENvbmZpZygpIHtcbiAgIHJldHVybiBpbmplY3QoU1RPUkVfQ09ORklHLCB7IHNlbGY6IHRydWUsIG9wdGlvbmFsOiB0cnVlIH0pID8/IGluamVjdChST09UX0NPTkZJRylcbn1cblxuZnVuY3Rpb24gcHJvdmlkZVZhbHVlKHByb3ZpZGU6IGFueSwgdXNlVmFsdWU6IGFueSkge1xuICAgcmV0dXJuIHsgcHJvdmlkZSwgdXNlVmFsdWV9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBzZXR1cCh0YXJnZXQ6IGFueSwgZmFjdG9yeTogYW55LCAuLi5hcmdzOiBhbnlbXSkge1xuICAgY29uc3QgaW5zdGFuY2UgPSBmYWN0b3J5KC4uLmFyZ3MpXG4gICBjb25zdCBwcm90b3R5cGUgPSB0YXJnZXQucHJvdG90eXBlXG4gICBjb25zdCBwYXJlbnQgPSBpbmplY3QoSU5KRUNUT1IpIGFzIEVudmlyb25tZW50SW5qZWN0b3JcbiAgIGNvbnN0IHN0b3JlSW5qZWN0b3IgPSBjcmVhdGVFbnZpcm9ubWVudEluamVjdG9yKFtcbiAgICAgIHByb3ZpZGVWYWx1ZShDaGFuZ2VzLCBuZXcgQ2hhbmdlcyhpbnN0YW5jZSkpLFxuICAgICAgcHJvdmlkZVZhbHVlKEVycm9ySGFuZGxlciwgbmV3IFN0b3JlRXJyb3JIYW5kbGVyKHByb3RvdHlwZSwgaW5zdGFuY2UpKSxcbiAgICAgIHByb3ZpZGVWYWx1ZShFdmVudFNjaGVkdWxlciwgbmV3IEV2ZW50U2NoZWR1bGVyKGluc3RhbmNlKSksXG4gICAgICBUZWFyZG93blxuICAgXSwgcGFyZW50KVxuICAgbGV0IHN0b3JlQ29uZmlnID0gZ2V0Q29uZmlnKClcbiAgIHNldE1ldGEoaW5qZWN0b3IsIHN0b3JlSW5qZWN0b3IsIGluc3RhbmNlKVxuICAgZm9yIChjb25zdCBhY3Rpb24gb2YgZ2V0QWN0aW9ucyhwcm90b3R5cGUpKSB7XG4gICAgICBjb25zdCBhY3Rpb25JbmplY3RvciA9IGNyZWF0ZUVudmlyb25tZW50SW5qZWN0b3IoW1xuICAgICAgICAgcHJvdmlkZVZhbHVlKEFDVElPTiwgYWN0aW9uKSxcbiAgICAgICAgIHByb3ZpZGVWYWx1ZShDT05URVhULCB7IGluc3RhbmNlIH0pLFxuICAgICAgICAgRWZmZWN0U2NoZWR1bGVyLFxuICAgICAgICAgVGVhcmRvd24sXG4gICAgICAgICBzdG9yZUNvbmZpZz8uYWN0aW9uUHJvdmlkZXJzID8/IFtdXG4gICAgICBdLCBzdG9yZUluamVjdG9yKVxuICAgICAgc2V0TWV0YShpbmplY3RvciwgYWN0aW9uSW5qZWN0b3IsIGluc3RhbmNlLCBhY3Rpb24ua2V5KVxuICAgfVxuICAgcmV0dXJuIGluc3RhbmNlXG59XG5cbmV4cG9ydCBjb25zdCBzdG9yZXMgPSBuZXcgU2V0PGFueT4oKVxuY29uc3QgZGVjb3JhdGVkID0gbmV3IFdlYWtTZXQoKVxuXG5leHBvcnQgZnVuY3Rpb24gZGVjb3JhdGVGYWN0b3J5KHRhcmdldDogYW55LCBmbjogKHRoaXM6IGFueSwgLi4uYXJnczogYW55W10pID0+IGFueSwgLi4uYWRkaXRpb25hbEFyZ3M6IGFueVtdKSB7XG4gICBjb25zdCBmYWN0b3J5ID0gdGFyZ2V0W1wiybVmYWNcIl1cbiAgIGlmIChmYWN0b3J5KSB7XG4gICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGFyZ2V0LCBcIsm1ZmFjXCIsIHtcbiAgICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICAgICAgIHZhbHVlOiBmdW5jdGlvbiAoLi4uYXJnczogYW55W10pIHtcbiAgICAgICAgICAgIHJldHVybiBmbih0YXJnZXQsIGZhY3RvcnksIC4uLmFkZGl0aW9uYWxBcmdzLCAuLi5hcmdzKVxuICAgICAgICAgfVxuICAgICAgfSlcbiAgIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHJ1bkluQ29udGV4dDxUIGV4dGVuZHMgKC4uLmFyZ3M6IGFueSkgPT4gYW55PihkZXBzOiBEZXBNYXAsIGZuOiBULCBjb250ZXh0ID0ge30sIGNhdGNoRXJyb3IgPSB0cnVlLCBrZXk/OiBzdHJpbmcsIC4uLmFyZ3M6IFBhcmFtZXRlcnM8VD4pIHtcbiAgIGNvbnN0IGluamVjdG9yID0gZ2V0VG9rZW4oRW52aXJvbm1lbnRJbmplY3RvciwgdW50cmFjayhjb250ZXh0KSwga2V5KVxuICAgY29uc3QgZXJyb3JIYW5kbGVyID0gaW5qZWN0b3IuZ2V0KEVycm9ySGFuZGxlcilcbiAgIHB1c2hTdGFjayhkZXBzKVxuICAgdHJ5IHtcbiAgICAgIHJldHVybiBpbmplY3Rvci5ydW5JbkNvbnRleHQoKCkgPT4gZm4uYXBwbHkoY29udGV4dCwgYXJncykpXG4gICB9IGNhdGNoIChlKSB7XG4gICAgICBpZiAoY2F0Y2hFcnJvcikge1xuICAgICAgICAgZXJyb3JIYW5kbGVyLmhhbmRsZUVycm9yKGUpXG4gICAgICB9IGVsc2Uge1xuICAgICAgICAgdGhyb3cgZVxuICAgICAgfVxuICAgfSBmaW5hbGx5IHtcbiAgICAgIHBvcFN0YWNrKClcbiAgIH1cbn1cblxuZnVuY3Rpb24gcnVuQWN0aW9uKHRoaXM6IGFueSwgZm46IGFueSwga2V5OiBhbnksIGRlcHM6IERlcE1hcCwgLi4uYXJnczogYW55W10pIHtcbiAgIGNvbnN0IGV2ZW50ID0gaW5qZWN0KEV2ZW50U2NoZWR1bGVyKVxuICAgZXZlbnQuc2NoZWR1bGUoRXZlbnRUeXBlLkRpc3BhdGNoLCBrZXksIGFyZ3MubGVuZ3RoID09PSAxID8gYXJnc1swXSA6IGFyZ3MsIGdldENoYW5nZXMoZGVwcykpXG4gICByZXR1cm4gZm4uYXBwbHkodGhpcywgYXJncylcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGRlY29yYXRlQWN0aW9ucyh0YXJnZXQ6IHt9KSB7XG4gICBmb3IgKGNvbnN0IHsga2V5LCBjYXRjaEVycm9yIH0gb2YgZ2V0QWN0aW9ucyh0YXJnZXQpKSB7XG4gICAgICB3cmFwKHRhcmdldCwga2V5LCBmdW5jdGlvbiAoZm4sIC4uLmFyZ3MpIHtcbiAgICAgICAgIGNvbnN0IHByb3h5ID0gY3JlYXRlUHJveHkodGhpcylcbiAgICAgICAgIGNvbnN0IGRlcHMgPSBuZXcgTWFwKClcbiAgICAgICAgIHNldE1ldGEodHJhY2tlZCwgZGVwcywgdGhpcywga2V5KVxuICAgICAgICAgdGVhcmRvd24odGhpcywga2V5KVxuICAgICAgICAgcmV0dXJuIHJ1bkluQ29udGV4dChkZXBzLCBydW5BY3Rpb24sIHByb3h5LCBjYXRjaEVycm9yLCBrZXksIGZuLCBrZXksIGRlcHMsIC4uLmFyZ3MpXG4gICAgICB9KVxuICAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gZGVjb3JhdGVTZWxlY3QodGFyZ2V0OiBhbnkpIHtcbiAgIHRhcmdldC5wcm90b3R5cGUubmdPblNlbGVjdCA/Pz0gZnVuY3Rpb24gKHRoaXM6IGFueSwgb2JzZXJ2ZXI6IGFueSkge1xuICAgICAgcmV0dXJuIHN0b3JlKHRhcmdldCkuc3Vic2NyaWJlKG9ic2VydmVyKVxuICAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gZGVjb3JhdGVTZWxlY3RvcnModGFyZ2V0OiB7fSkge1xuICAgZm9yIChjb25zdCB7IGtleSB9IG9mIGdldFNlbGVjdG9yczxTZWxlY3RNZXRhZGF0YT4odGFyZ2V0LCB0cnVlKSkge1xuICAgICAgd3JhcCh0YXJnZXQsIGtleSwgZnVuY3Rpb24gKGZuLCAuLi5hcmdzKSB7XG4gICAgICAgICBjb25zdCBjYWNoZUtleSA9IGtleSArIEpTT04uc3RyaW5naWZ5KGFyZ3MpXG4gICAgICAgICBjb25zdCBwcm94eSA9IGNyZWF0ZVByb3h5KHRoaXMpXG4gICAgICAgICBjb25zdCBkZXBzID0gZ2V0RGVwcyh0aGlzLCBjYWNoZUtleSlcbiAgICAgICAgIGNvbnN0IGRpcnR5ID0gZGVwcyA/IGNoZWNrRGVwcyhkZXBzKSA6IHRydWVcbiAgICAgICAgIGxldCByZXN1bHQgPSBnZXRNZXRhKGNhY2hlS2V5LCB0aGlzLCBrZXkpXG4gICAgICAgICBpZiAoZGlydHkpIHtcbiAgICAgICAgICAgIGNvbnN0IG5ld0RlcHMgPSBuZXcgTWFwKClcbiAgICAgICAgICAgIHJlc3VsdCA9IHJ1bkluQ29udGV4dChuZXdEZXBzLCBmbiwgcHJveHksIHRydWUsIHZvaWQgMCwgLi4uYXJncylcbiAgICAgICAgICAgIHNldE1ldGEoY2FjaGVLZXksIHJlc3VsdCwgdGhpcywga2V5KVxuICAgICAgICAgICAgc2V0TWV0YSh0cmFja2VkLCBuZXdEZXBzLCB0aGlzLCBjYWNoZUtleSlcbiAgICAgICAgIH1cbiAgICAgICAgIHJldHVybiByZXN1bHRcbiAgICAgIH0pXG4gICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBkZWNvcmF0ZUNoYW5nZXModGFyZ2V0OiB7fSkge1xuICAgd3JhcCh0YXJnZXQsIFwibmdPbkNoYW5nZXNcIiwgZnVuY3Rpb24gKGZuLCB2YWx1ZSkge1xuICAgICAgY29uc3QgZXZlbnRzID0gZ2V0VG9rZW4oRXZlbnRTY2hlZHVsZXIsIHRoaXMpXG4gICAgICBjb25zdCBjaGFuZ2VzID0gT2JqZWN0LmVudHJpZXModmFsdWUpLm1hcCgoW2tleSwgdmFsdWVdKSA9PiBba2V5LCAodmFsdWUgYXMgYW55KS5wcmV2aW91c1ZhbHVlXSkgYXMgYW55W11cbiAgICAgIGV2ZW50cy5zY2hlZHVsZShFdmVudFR5cGUuRGlzcGF0Y2gsIFwibmdPbkNoYW5nZXNcIiwgdmFsdWUsIG5ldyBNYXAoW1t0aGlzLCBuZXcgTWFwKGNoYW5nZXMpXV0pKVxuICAgICAgZm4uY2FsbCh0aGlzLCB2YWx1ZSlcbiAgIH0pXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBkZWNvcmF0ZU9uSW5pdCh0YXJnZXQ6IHt9KSB7XG4gICB3cmFwKHRhcmdldCwgXCJuZ09uSW5pdFwiLCBmdW5jdGlvbiAoZm4pIHtcbiAgICAgIGNvbnN0IGluamVjdG9yID0gZ2V0VG9rZW4oRW52aXJvbm1lbnRJbmplY3RvciwgdGhpcylcbiAgICAgIGZvciAoY29uc3QgYXR0YWNobWVudCBvZiBnZXRTZWxlY3RvcnM8eyB0b2tlbjogUHJvdmlkZXJUb2tlbjxhbnk+IHwgdW5kZWZpbmVkIH0+KHRhcmdldCwgZmFsc2UpKSB7XG4gICAgICAgICBpbmplY3Rvci5ydW5JbkNvbnRleHQoKCkgPT4ge1xuICAgICAgICAgICAgc3Vic2NyaWJlKGF0dGFjaG1lbnQudG9rZW4sIHRoaXMsIGF0dGFjaG1lbnQua2V5KVxuICAgICAgICAgfSlcbiAgICAgIH1cbiAgICAgIGZuLmNhbGwodGhpcylcbiAgIH0pXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBkZWNvcmF0ZURlc3Ryb3kodGFyZ2V0OiB7fSkge1xuICAgd3JhcCh0YXJnZXQsIFwibmdPbkRlc3Ryb3lcIiwgZnVuY3Rpb24gKGZuKSB7XG4gICAgICBmb3IgKGNvbnN0IGVudmlyb25tZW50SW5qZWN0b3Igb2YgZ2V0TWV0YVZhbHVlczxFbnZpcm9ubWVudEluamVjdG9yPihpbmplY3RvciwgdGhpcykpIHtcbiAgICAgICAgIGVudmlyb25tZW50SW5qZWN0b3IuZGVzdHJveSgpXG4gICAgICB9XG4gICAgICBmbi5hcHBseSh0aGlzKVxuICAgfSlcbn1cblxuZnVuY3Rpb24gdGVhcmRvd24oY29udGV4dDoge30sIGtleTogc3RyaW5nKSB7XG4gICBnZXRUb2tlbihUZWFyZG93biwgY29udGV4dCwga2V5KT8udW5zdWJzY3JpYmUoKVxufVxuIl19 | ||
| //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2NvcmUvc3JjL2NvcmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNKLHlCQUF5QixFQUN6QixtQkFBbUIsRUFDbkIsWUFBWSxFQUNaLE1BQU0sRUFDTixRQUFRLEVBRVYsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFTLFNBQVMsRUFBd0IsTUFBTSxjQUFjLENBQUM7QUFDdEUsT0FBTyxFQUNKLFVBQVUsRUFDVixPQUFPLEVBQ1AsT0FBTyxFQUNQLGFBQWEsRUFDYixZQUFZLEVBQ1osUUFBUSxFQUNSLFFBQVEsRUFDUixTQUFTLEVBQ1QsT0FBTyxFQUNQLE9BQU8sRUFDVCxNQUFNLFlBQVksQ0FBQztBQUNwQixPQUFPLEVBQ0osTUFBTSxFQUNOLE9BQU8sRUFDUCxPQUFPLEVBQ1AsZUFBZSxFQUNmLGNBQWMsRUFDZCxXQUFXLEVBQ1gsWUFBWSxFQUNaLGlCQUFpQixFQUNqQixRQUFRLEVBQ1YsTUFBTSxhQUFhLENBQUM7QUFDckIsT0FBTyxFQUFDLFdBQVcsRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUMsTUFBTSxTQUFTLENBQUM7QUFDOUUsT0FBTyxFQUFDLEtBQUssRUFBRSxTQUFTLEVBQUMsTUFBTSxVQUFVLENBQUM7QUFDMUMsT0FBTyxFQUFDLElBQUksRUFBRSxJQUFJLEVBQUMsTUFBTSxTQUFTLENBQUM7QUFFbkMsU0FBUyxTQUFTLENBQUMsSUFBWTtJQUM1QixJQUFJLEtBQUssR0FBRyxLQUFLLENBQUE7SUFDakIsS0FBSyxNQUFNLENBQUMsTUFBTSxFQUFFLFNBQVMsQ0FBQyxJQUFJLElBQUksRUFBRTtRQUNyQyxLQUFLLE1BQU0sQ0FBQyxHQUFHLEVBQUUsUUFBUSxDQUFDLElBQUksU0FBUyxFQUFFO1lBQ3RDLE1BQU0sT0FBTyxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQTtZ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c291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgIGNyZWF0ZUVudmlyb25tZW50SW5qZWN0b3IsXG4gICBFbnZpcm9ubWVudEluamVjdG9yLFxuICAgRXJyb3JIYW5kbGVyLFxuICAgaW5qZWN0LFxuICAgSU5KRUNUT1IsXG4gICBQcm92aWRlclRva2VuXG59IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQge0RlcE1hcCwgRXZlbnRUeXBlLCBQaGFzZSwgU2VsZWN0TWV0YWRhdGF9IGZyb20gXCIuL2ludGVyZmFjZXNcIjtcbmltcG9ydCB7XG4gICBnZXRBY3Rpb25zLFxuICAgZ2V0RGVwcyxcbiAgIGdldE1ldGEsXG4gICBnZXRNZXRhVmFsdWVzLFxuICAgZ2V0U2VsZWN0b3JzLFxuICAgZ2V0VG9rZW4sXG4gICBpbmplY3RvcixcbiAgIG1hcmtEaXJ0eSxcbiAgIHNldE1ldGEsXG4gICB0cmFja2VkXG59IGZyb20gXCIuL21ldGFkYXRhXCI7XG5pbXBvcnQge1xuICAgQUNUSU9OLFxuICAgQ2hhbmdlcyxcbiAgIENPTlRFWFQsXG4gICBFZmZlY3RTY2hlZHVsZXIsXG4gICBFdmVudFNjaGVkdWxlcixcbiAgIFJPT1RfQ09ORklHLFxuICAgU1RPUkVfQ09ORklHLFxuICAgU3RvcmVFcnJvckhhbmRsZXIsXG4gICBUZWFyZG93blxufSBmcm9tIFwiLi9wcm92aWRlcnNcIjtcbmltcG9ydCB7Y3JlYXRlUHJveHksIGdldENoYW5nZXMsIHBvcFN0YWNrLCBwdXNoU3RhY2ssIHVudHJhY2t9IGZyb20gXCIuL3Byb3h5XCI7XG5pbXBvcnQge3N0b3JlLCBzdWJzY3JpYmV9IGZyb20gXCIuL3NlbGVjdFwiO1xuaW1wb3J0IHtjYWxsLCB3cmFwfSBmcm9tIFwiLi91dGlsc1wiO1xuXG5mdW5jdGlvbiBjaGVja0RlcHMoZGVwczogRGVwTWFwKSB7XG4gICBsZXQgZGlydHkgPSBmYWxzZVxuICAgZm9yIChjb25zdCBbb2JqZWN0LCBrZXlWYWx1ZXNdIG9mIGRlcHMpIHtcbiAgICAgIGZvciAoY29uc3QgW2tleSwgcHJldmlvdXNdIG9mIGtleVZhbHVlcykge1xuICAgICAgICAgY29uc3QgY3VycmVudCA9IG9iamVjdFtrZXldXG4gICAgICAgICBpZiAoIU9iamVjdC5pcyhjdXJyZW50LCBwcmV2aW91cykpIHtcbiAgICAgICAgICAgIGtleVZhbHVlcy5zZXQoa2V5LCBjdXJyZW50KVxuICAgICAgICAgICAgZGlydHkgPSB0cnVlXG4gICAgICAgICB9XG4gICAgICB9XG4gICB9XG4gICByZXR1cm4gZGlydHlcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGRlY29yYXRlQ2hlY2sodGFyZ2V0OiB7fSwgbmFtZTogUGhhc2UpIHtcbiAgIGNvbnN0IGFjdGlvbnMgPSBnZXRBY3Rpb25zKHRhcmdldCwgbmFtZSlcbiAgIHdyYXAodGFyZ2V0LCBuYW1lLCBmdW5jdGlvbiAoZm4pIHtcbiAgICAgIGNvbnN0IGV2ZW50cyA9IGdldFRva2VuKEV2ZW50U2NoZWR1bGVyLCB0aGlzKVxuICAgICAgZm9yIChjb25zdCBhY3Rpb24gb2YgYWN0aW9ucykge1xuICAgICAgICAgY29uc3QgZGVwcyA9IGdldERlcHModGhpcywgYWN0aW9uLmtleSlcbiAgICAgICAgIGNvbnN0IGRpcnR5ID0gYWN0aW9uLnRyYWNrICYmIGRlcHMgJiYgY2hlY2tEZXBzKGRlcHMpXG4gICAgICAgICBpZiAoYWN0aW9uLmRlc2NyaXB0b3I/LnZhbHVlLmxlbmd0aCA9PT0gMCAmJiAoIWRlcHMgJiYgYWN0aW9uLmltbWVkaWF0ZSAmJiBhY3Rpb24ucGhhc2UgPT09IG5hbWUgfHwgZGlydHkpKSB7XG4gICAgICAgICAgICBtYXJrRGlydHkodGhpcylcbiAgICAgICAgICAgIGNhbGwodGhpcywgYWN0aW9uLmtleSlcbiAgICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGZvciAoY29uc3QgYWN0aW9uIG9mIGFjdGlvbnMpIHtcbiAgICAgICAgIGNvbnN0IGVmZmVjdCA9IGdldFRva2VuKEVmZmVjdFNjaGVkdWxlciwgdGhpcywgYWN0aW9uLmtleSlcbiAgICAgICAgIGVmZmVjdC5kZXF1ZXVlKClcbiAgICAgIH1cbiAgICAgIGV2ZW50cy5mbHVzaCgpXG4gICAgICBmbi5hcHBseSh0aGlzKVxuICAgfSlcbn1cblxuZnVuY3Rpb24gZ2V0Q29uZmlnKCkge1xuICAgcmV0dXJuIGluamVjdChTVE9SRV9DT05GSUcsIHsgc2VsZjogdHJ1ZSwgb3B0aW9uYWw6IHRydWUgfSkgPz8gaW5qZWN0KFJPT1RfQ09ORklHKVxufVxuXG5mdW5jdGlvbiBwcm92aWRlVmFsdWUocHJvdmlkZTogYW55LCB1c2VWYWx1ZTogYW55KSB7XG4gICByZXR1cm4geyBwcm92aWRlLCB1c2VWYWx1ZX1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHNldHVwKHRhcmdldDogYW55LCBmYWN0b3J5OiBhbnksIC4uLmFyZ3M6IGFueVtdKSB7XG4gICBjb25zdCBpbnN0YW5jZSA9IGZhY3RvcnkoLi4uYXJncylcbiAgIGNvbnN0IHByb3RvdHlwZSA9IHRhcmdldC5wcm90b3R5cGVcbiAgIGNvbnN0IHBhcmVudCA9IGluamVjdChJTkpFQ1RPUikgYXMgRW52aXJvbm1lbnRJbmplY3RvclxuICAgY29uc3Qgc3RvcmVJbmplY3RvciA9IGNyZWF0ZUVudmlyb25tZW50SW5qZWN0b3IoW1xuICAgICAgcHJvdmlkZVZhbHVlKENoYW5nZXMsIG5ldyBDaGFuZ2VzKGluc3RhbmNlKSksXG4gICAgICBwcm92aWRlVmFsdWUoRXJyb3JIYW5kbGVyLCBuZXcgU3RvcmVFcnJvckhhbmRsZXIocHJvdG90eXBlLCBpbnN0YW5jZSkpLFxuICAgICAgcHJvdmlkZVZhbHVlKEV2ZW50U2NoZWR1bGVyLCBuZXcgRXZlbnRTY2hlZHVsZXIoaW5zdGFuY2UpKSxcbiAgICAgIFRlYXJkb3duXG4gICBdLCBwYXJlbnQpXG4gICBsZXQgc3RvcmVDb25maWcgPSBnZXRDb25maWcoKVxuICAgc2V0TWV0YShpbmplY3Rvciwgc3RvcmVJbmplY3RvciwgaW5zdGFuY2UpXG4gICBmb3IgKGNvbnN0IGFjdGlvbiBvZiBnZXRBY3Rpb25zKHByb3RvdHlwZSkpIHtcbiAgICAgIGNvbnN0IGFjdGlvbkluamVjdG9yID0gY3JlYXRlRW52aXJvbm1lbnRJbmplY3RvcihbXG4gICAgICAgICBwcm92aWRlVmFsdWUoQUNUSU9OLCBhY3Rpb24pLFxuICAgICAgICAgcHJvdmlkZVZhbHVlKENPTlRFWFQsIHsgaW5zdGFuY2UgfSksXG4gICAgICAgICBFZmZlY3RTY2hlZHVsZXIsXG4gICAgICAgICBUZWFyZG93bixcbiAgICAgICAgIHN0b3JlQ29uZmlnPy5hY3Rpb25Qcm92aWRlcnMgPz8gW11cbiAgICAgIF0sIHN0b3JlSW5qZWN0b3IpXG4gICAgICBzZXRNZXRhKGluamVjdG9yLCBhY3Rpb25JbmplY3RvciwgaW5zdGFuY2UsIGFjdGlvbi5rZXkpXG4gICB9XG4gICByZXR1cm4gaW5zdGFuY2Vcbn1cblxuZXhwb3J0IGNvbnN0IHN0b3JlcyA9IG5ldyBTZXQ8YW55PigpXG5jb25zdCBkZWNvcmF0ZWQgPSBuZXcgV2Vha1NldCgpXG5cbmV4cG9ydCBmdW5jdGlvbiBkZWNvcmF0ZUZhY3RvcnkodGFyZ2V0OiBhbnksIGZuOiAodGhpczogYW55LCAuLi5hcmdzOiBhbnlbXSkgPT4gYW55LCAuLi5hZGRpdGlvbmFsQXJnczogYW55W10pIHtcbiAgIGNvbnN0IGZhY3RvcnkgPSB0YXJnZXRbXCLJtWZhY1wiXVxuICAgaWYgKGZhY3RvcnkpIHtcbiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0YXJnZXQsIFwiybVmYWNcIiwge1xuICAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgICAgICAgdmFsdWU6IGZ1bmN0aW9uICguLi5hcmdzOiBhbnlbXSkge1xuICAgICAgICAgICAgcmV0dXJuIGZuKHRhcmdldCwgZmFjdG9yeSwgLi4uYWRkaXRpb25hbEFyZ3MsIC4uLmFyZ3MpXG4gICAgICAgICB9XG4gICAgICB9KVxuICAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gcnVuSW5Db250ZXh0PFQgZXh0ZW5kcyAoLi4uYXJnczogYW55KSA9PiBhbnk+KGRlcHM6IERlcE1hcCwgZm46IFQsIGNvbnRleHQgPSB7fSwgY2F0Y2hFcnJvciA9IHRydWUsIGtleT86IHN0cmluZywgLi4uYXJnczogUGFyYW1ldGVyczxUPikge1xuICAgY29uc3QgaW5qZWN0b3IgPSBnZXRUb2tlbihFbnZpcm9ubWVudEluamVjdG9yLCB1bnRyYWNrKGNvbnRleHQpLCBrZXkpXG4gICBjb25zdCBlcnJvckhhbmRsZXIgPSBpbmplY3Rvci5nZXQoRXJyb3JIYW5kbGVyKVxuICAgcHVzaFN0YWNrKGRlcHMpXG4gICB0cnkge1xuICAgICAgcmV0dXJuIGluamVjdG9yLnJ1bkluQ29udGV4dCgoKSA9PiBmbi5hcHBseShjb250ZXh0LCBhcmdzKSlcbiAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIGlmIChjYXRjaEVycm9yKSB7XG4gICAgICAgICBlcnJvckhhbmRsZXIuaGFuZGxlRXJyb3IoZSlcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgICB0aHJvdyBlXG4gICAgICB9XG4gICB9IGZpbmFsbHkge1xuICAgICAgcG9wU3RhY2soKVxuICAgfVxufVxuXG5mdW5jdGlvbiBydW5BY3Rpb24odGhpczogYW55LCBmbjogYW55LCBrZXk6IGFueSwgZGVwczogRGVwTWFwLCBhcmdzOiBhbnlbXSkge1xuICAgY29uc3QgZXZlbnQgPSBpbmplY3QoRXZlbnRTY2hlZHVsZXIpXG4gICBldmVudC5zY2hlZHVsZShFdmVudFR5cGUuRGlzcGF0Y2gsIGtleSwgYXJncy5sZW5ndGggPT09IDEgPyBhcmdzWzBdIDogYXJncywgZ2V0Q2hhbmdlcyhkZXBzKSlcbiAgIHJldHVybiBmbi5hcHBseSh0aGlzLCBhcmdzKVxufVxuXG5leHBvcnQgZnVuY3Rpb24gZGVjb3JhdGVBY3Rpb25zKHRhcmdldDoge30pIHtcbiAgIGZvciAoY29uc3QgeyBrZXksIGNhdGNoRXJyb3IgfSBvZiBnZXRBY3Rpb25zKHRhcmdldCkpIHtcbiAgICAgIHdyYXAodGFyZ2V0LCBrZXksIGZ1bmN0aW9uIChmbiwgLi4uYXJncykge1xuICAgICAgICAgY29uc3QgcHJveHkgPSBjcmVhdGVQcm94eSh0aGlzKVxuICAgICAgICAgY29uc3QgZGVwcyA9IG5ldyBNYXAoKVxuICAgICAgICAgc2V0TWV0YSh0cmFja2VkLCBkZXBzLCB0aGlzLCBrZXkpXG4gICAgICAgICB0ZWFyZG93bih0aGlzLCBrZXkpXG4gICAgICAgICByZXR1cm4gcnVuSW5Db250ZXh0KGRlcHMsIHJ1bkFjdGlvbiwgcHJveHksIGNhdGNoRXJyb3IsIGtleSwgZm4sIGtleSwgZGVwcywgYXJncylcbiAgICAgIH0pXG4gICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBkZWNvcmF0ZVNlbGVjdCh0YXJnZXQ6IGFueSkge1xuICAgdGFyZ2V0LnByb3RvdHlwZS5uZ09uU2VsZWN0ID8/PSBmdW5jdGlvbiAodGhpczogYW55LCBvYnNlcnZlcjogYW55KSB7XG4gICAgICByZXR1cm4gc3RvcmUodGFyZ2V0KS5zdWJzY3JpYmUob2JzZXJ2ZXIpXG4gICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBkZWNvcmF0ZVNlbGVjdG9ycyh0YXJnZXQ6IHt9KSB7XG4gICBmb3IgKGNvbnN0IHsga2V5IH0gb2YgZ2V0U2VsZWN0b3JzPFNlbGVjdE1ldGFkYXRhPih0YXJnZXQsIHRydWUpKSB7XG4gICAgICB3cmFwKHRhcmdldCwga2V5LCBmdW5jdGlvbiAoZm4sIC4uLmFyZ3MpIHtcbiAgICAgICAgIGNvbnN0IGNhY2hlS2V5ID0ga2V5ICsgSlNPTi5zdHJpbmdpZnkoYXJncylcbiAgICAgICAgIGNvbnN0IHByb3h5ID0gY3JlYXRlUHJveHkodGhpcylcbiAgICAgICAgIGNvbnN0IGRlcHMgPSBnZXREZXBzKHRoaXMsIGNhY2hlS2V5KVxuICAgICAgICAgY29uc3QgZGlydHkgPSBkZXBzID8gY2hlY2tEZXBzKGRlcHMpIDogdHJ1ZVxuICAgICAgICAgbGV0IHJlc3VsdCA9IGdldE1ldGEoY2FjaGVLZXksIHRoaXMsIGtleSlcbiAgICAgICAgIGlmIChkaXJ0eSkge1xuICAgICAgICAgICAgY29uc3QgbmV3RGVwcyA9IG5ldyBNYXAoKVxuICAgICAgICAgICAgcmVzdWx0ID0gcnVuSW5Db250ZXh0KG5ld0RlcHMsIGZuLCBwcm94eSwgdHJ1ZSwgdm9pZCAwLCAuLi5hcmdzKVxuICAgICAgICAgICAgc2V0TWV0YShjYWNoZUtleSwgcmVzdWx0LCB0aGlzLCBrZXkpXG4gICAgICAgICAgICBzZXRNZXRhKHRyYWNrZWQsIG5ld0RlcHMsIHRoaXMsIGNhY2hlS2V5KVxuICAgICAgICAgfVxuICAgICAgICAgcmV0dXJuIHJlc3VsdFxuICAgICAgfSlcbiAgIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGRlY29yYXRlQ2hhbmdlcyh0YXJnZXQ6IHt9KSB7XG4gICB3cmFwKHRhcmdldCwgXCJuZ09uQ2hhbmdlc1wiLCBmdW5jdGlvbiAoZm4sIHZhbHVlKSB7XG4gICAgICBjb25zdCBldmVudHMgPSBnZXRUb2tlbihFdmVudFNjaGVkdWxlciwgdGhpcylcbiAgICAgIGNvbnN0IGNoYW5nZXMgPSBPYmplY3QuZW50cmllcyh2YWx1ZSkubWFwKChba2V5LCBjaGFuZ2VdKSA9PiBba2V5LCAoY2hhbmdlIGFzIGFueSkucHJldmlvdXNWYWx1ZV0pIGFzIGFueVtdXG4gICAgICBldmVudHMuc2NoZWR1bGUoRXZlbnRUeXBlLkRpc3BhdGNoLCBcIm5nT25DaGFuZ2VzXCIsIHsuLi52YWx1ZX0sIG5ldyBNYXAoW1t0aGlzLCBuZXcgTWFwKGNoYW5nZXMpXV0pKVxuICAgICAgZm4uY2FsbCh0aGlzLCB2YWx1ZSlcbiAgIH0pXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBkZWNvcmF0ZU9uSW5pdCh0YXJnZXQ6IHt9KSB7XG4gICB3cmFwKHRhcmdldCwgXCJuZ09uSW5pdFwiLCBmdW5jdGlvbiAoZm4pIHtcbiAgICAgIGNvbnN0IGluamVjdG9yID0gZ2V0VG9rZW4oRW52aXJvbm1lbnRJbmplY3RvciwgdGhpcylcbiAgICAgIGZvciAoY29uc3QgYXR0YWNobWVudCBvZiBnZXRTZWxlY3RvcnM8eyB0b2tlbjogUHJvdmlkZXJUb2tlbjxhbnk+IHwgdW5kZWZpbmVkIH0+KHRhcmdldCwgZmFsc2UpKSB7XG4gICAgICAgICBpbmplY3Rvci5ydW5JbkNvbnRleHQoKCkgPT4ge1xuICAgICAgICAgICAgc3Vic2NyaWJlKGF0dGFjaG1lbnQudG9rZW4sIHRoaXMsIGF0dGFjaG1lbnQua2V5KVxuICAgICAgICAgfSlcbiAgICAgIH1cbiAgICAgIGZuLmNhbGwodGhpcylcbiAgIH0pXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBkZWNvcmF0ZURlc3Ryb3kodGFyZ2V0OiB7fSkge1xuICAgd3JhcCh0YXJnZXQsIFwibmdPbkRlc3Ryb3lcIiwgZnVuY3Rpb24gKGZuKSB7XG4gICAgICBmb3IgKGNvbnN0IGVudmlyb25tZW50SW5qZWN0b3Igb2YgZ2V0TWV0YVZhbHVlczxFbnZpcm9ubWVudEluamVjdG9yPihpbmplY3RvciwgdGhpcykpIHtcbiAgICAgICAgIGVudmlyb25tZW50SW5qZWN0b3IuZGVzdHJveSgpXG4gICAgICB9XG4gICAgICBmbi5hcHBseSh0aGlzKVxuICAgfSlcbn1cblxuZnVuY3Rpb24gdGVhcmRvd24oY29udGV4dDoge30sIGtleTogc3RyaW5nKSB7XG4gICBnZXRUb2tlbihUZWFyZG93biwgY29udGV4dCwga2V5KT8udW5zdWJzY3JpYmUoKVxufVxuIl19 |
@@ -8,2 +8,2 @@ export var EventType; | ||
| })(EventType || (EventType = {})); | ||
| //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJmYWNlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2NvcmUvc3JjL2ludGVyZmFjZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBc0NBLE1BQU0sQ0FBTixJQUFZLFNBS1g7QUFMRCxXQUFZLFNBQVM7SUFDbEIsa0NBQXFCLENBQUE7SUFDckIsMEJBQWEsQ0FBQTtJQUNiLDRCQUFlLENBQUE7SUFDZixrQ0FBcUIsQ0FBQTtBQUN4QixDQUFDLEVBTFcsU0FBUyxLQUFULFNBQVMsUUFLcEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge09ic2VydmFibGV9IGZyb20gXCJyeGpzXCI7XG5pbXBvcnQge1Byb3ZpZGVyfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuXG50eXBlIENoYW5nZXMgPSBNYXA8b2JqZWN0LCBNYXA8UHJvcGVydHlLZXksIGFueT4+XG5cbmV4cG9ydCBpbnRlcmZhY2UgRXZlbnREYXRhPEFjdGlvbk5hbWUsIEFjdGlvbkNvbnRleHQgPSB1bmtub3duPiB7XG4gICByZWFkb25seSBpZDogbnVtYmVyXG4gICByZWFkb25seSBuYW1lOiBBY3Rpb25OYW1lXG4gICByZWFkb25seSBjb250ZXh0OiBBY3Rpb25Db250ZXh0XG4gICByZWFkb25seSB0aW1lc3RhbXA6IG51bWJlclxuICAgcmVhZG9ubHkgY2hhbmdlczogQ2hhbmdlc1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIERpc3BhdGNoRXZlbnQ8QWN0aW9uTmFtZSA9IFByb3BlcnR5S2V5LCBBY3Rpb25Db250ZXh0ID0gdW5rbm93biwgQWN0aW9uVmFsdWUgPSB1bmtub3duPiBleHRlbmRzIEV2ZW50RGF0YTxBY3Rpb25OYW1lLCBBY3Rpb25Db250ZXh0PiB7XG4gICByZWFkb25seSB0eXBlOiBFdmVudFR5cGUuRGlzcGF0Y2hcbiAgIHJlYWRvbmx5IHZhbHVlOiBBY3Rpb25WYWx1ZVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIE5leHRFdmVudDxBY3Rpb25OYW1lID0gUHJvcGVydHlLZXksIEFjdGlvbkNvbnRleHQgPSB1bmtub3duLCBBY3Rpb25WYWx1ZSA9IHVua25vd24+IGV4dGVuZHMgRXZlbnREYXRhPEFjdGlvbk5hbWUsIEFjdGlvbkNvbnRleHQ+IHtcbiAgIHJlYWRvbmx5IHZhbHVlOiBBY3Rpb25WYWx1ZSBleHRlbmRzIE9ic2VydmFibGU8aW5mZXIgUj4gPyBSIDogbmV2ZXJcbiAgIHJlYWRvbmx5IHR5cGU6IEV2ZW50VHlwZS5OZXh0XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRXJyb3JFdmVudDxBY3Rpb25OYW1lID0gUHJvcGVydHlLZXksIEFjdGlvbkNvbnRleHQgPSB1bmtub3duPiBleHRlbmRzIEV2ZW50RGF0YTxBY3Rpb25OYW1lLCBBY3Rpb25Db250ZXh0PiB7XG4gICByZWFkb25seSB2YWx1ZTogdW5rbm93blxuICAgcmVhZG9ubHkgdHlwZTogRXZlbnRUeXBlLkVycm9yXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29tcGxldGVFdmVudDxBY3Rpb25OYW1lID0gUHJvcGVydHlLZXksIEFjdGlvbkNvbnRleHQgPSB1bmtub3duPiBleHRlbmRzIEV2ZW50RGF0YTxBY3Rpb25OYW1lLCBBY3Rpb25Db250ZXh0PiB7XG4gICByZWFkb25seSB0eXBlOiBFdmVudFR5cGUuQ29tcGxldGVcbn1cblxuZXhwb3J0IHR5cGUgU3RvcmVFdmVudDxBY3Rpb25OYW1lID0gUHJvcGVydHlLZXksIEFjdGlvbkNvbnRleHQgPSB1bmtub3duLCBBY3Rpb25UeXBlID0gdW5rbm93biwgRWZmZWN0VHlwZSA9IHVua25vd24+ID1cbiAgIHwgRGlzcGF0Y2hFdmVudDxBY3Rpb25OYW1lLCBBY3Rpb25Db250ZXh0LCBBY3Rpb25UeXBlPlxuICAgfCBOZXh0RXZlbnQ8QWN0aW9uTmFtZSwgQWN0aW9uQ29udGV4dCwgRWZmZWN0VHlwZT5cbiAgIHwgRXJyb3JFdmVudDxBY3Rpb25OYW1lLCBBY3Rpb25Db250ZXh0PlxuICAgfCBDb21wbGV0ZUV2ZW50PEFjdGlvbk5hbWUsIEFjdGlvbkNvbnRleHQ+XG5cbmV4cG9ydCBlbnVtIEV2ZW50VHlwZSB7XG4gICBEaXNwYXRjaCA9IFwiZGlzcGF0Y2hcIixcbiAgIE5leHQgPSBcIm5leHRcIixcbiAgIEVycm9yID0gXCJlcnJvclwiLFxuICAgQ29tcGxldGUgPSBcImNvbXBsZXRlXCJcbn1cblxuZXhwb3J0IGludGVyZmFjZSBEaXNwYXRjaE9ic2VydmVyPFU+IHtcbiAgIG5leHQ/KHZhbHVlOiBVKTogdm9pZFxuICAgZXJyb3I/KGVycm9yOiB1bmtub3duKTogdm9pZFxuICAgY29tcGxldGU/KCk6IHZvaWRcbiAgIGZpbmFsaXplPygpOiB2b2lkXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVHlwZWRDaGFuZ2U8VD4ge1xuICAgcHJldmlvdXNWYWx1ZTogVCB8IHVuZGVmaW5lZDtcbiAgIGN1cnJlbnRWYWx1ZTogVDtcbiAgIGZpcnN0Q2hhbmdlOiBib29sZWFuO1xuICAgaXNGaXJzdENoYW5nZSgpOiBib29sZWFuO1xufVxuXG5leHBvcnQgdHlwZSBUeXBlZENoYW5nZXM8VD4gPSB7XG4gICBba2V5IGluIGtleW9mIFRdPzogVHlwZWRDaGFuZ2U8VFtrZXldPlxufVxuXG5leHBvcnQgY29uc3QgZW51bSBQaGFzZSB7XG4gICBEb0NoZWNrID0gXCJuZ0RvQ2hlY2tcIixcbiAgIEFmdGVyQ29udGVudENoZWNrZWQgPSBcIm5nQWZ0ZXJDb250ZW50Q2hlY2tlZFwiLFxuICAgQWZ0ZXJWaWV3Q2hlY2tlZCA9IFwibmdBZnRlclZpZXdDaGVja2VkXCJcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBY3Rpb25NZXRhZGF0YSB7XG4gICBpbW1lZGlhdGU/OiBib29sZWFuO1xuICAgcGhhc2U/OiBQaGFzZVxuICAgdHJhY2s/OiBib29sZWFuXG4gICBjYXRjaEVycm9yPzogYm9vbGVhblxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNlbGVjdE1ldGFkYXRhIHt9XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ2F1Z2h0TWV0YWRhdGEge31cblxuZXhwb3J0IHR5cGUgTWV0YWRhdGE8VD4gPSBUICYge1xuICAga2V5OiBzdHJpbmdcbiAgIGRlc2NyaXB0b3I/OiBQcm9wZXJ0eURlc2NyaXB0b3Jcbn1cblxuZXhwb3J0IHR5cGUgRXh0cmFjdEV2ZW50czxULCBVIGV4dGVuZHMgUHJvcGVydHlLZXk+ID0ge1xuICAgW2tleSBpbiBVXToga2V5IGV4dGVuZHMga2V5b2YgVCA/IFRba2V5XSBleHRlbmRzICguLi5wYXJhbXM6IGluZmVyIFApID0+IGluZmVyIFIgPyBTdG9yZUV2ZW50PGtleSwgVCwgUCwgUj4gOiBuZXZlciA6IG5ldmVyXG59W1VdXG5cbmV4cG9ydCBpbnRlcmZhY2UgU3RvcmVDb25maWcge1xuICAgcm9vdD86IGJvb2xlYW5cbiAgIGFjdGlvblByb3ZpZGVycz86IFByb3ZpZGVyW11cbn1cblxuZXhwb3J0IHR5cGUgRGVwTWFwID0gTWFwPFJlY29yZDxhbnksIGFueT4sIE1hcDxzdHJpbmcsIHVua25vd24+PlxuXG5leHBvcnQgaW50ZXJmYWNlIFpvbmVDb21wYXRpYmxlIHtcbiAgIHJ1bihmbjogRnVuY3Rpb24sIGFwcGx5VGhpcz86IHt9LCBhcHBseUFyZ3M/OiBhbnlbXSk6IGFueVxuICAgcnVuR3VhcmRlZChmbjogRnVuY3Rpb24sIGFwcGx5VGhpcz86IHt9LCBhcHBseUFyZ3M/OiBhbnlbXSk6IGFueVxufVxuIl19 | ||
| //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJmYWNlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2NvcmUvc3JjL2ludGVyZmFjZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBMkNBLE1BQU0sQ0FBTixJQUFZLFNBS1g7QUFMRCxXQUFZLFNBQVM7SUFDbEIsa0NBQXFCLENBQUE7SUFDckIsMEJBQWEsQ0FBQTtJQUNiLDRCQUFlLENBQUE7SUFDZixrQ0FBcUIsQ0FBQTtBQUN4QixDQUFDLEVBTFcsU0FBUyxLQUFULFNBQVMsUUFLcEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge09ic2VydmFibGV9IGZyb20gXCJyeGpzXCI7XG5pbXBvcnQge1Byb3ZpZGVyfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuXG50eXBlIENoYW5nZXMgPSBNYXA8b2JqZWN0LCBNYXA8UHJvcGVydHlLZXksIGFueT4+XG5cbmV4cG9ydCBpbnRlcmZhY2UgRXZlbnREYXRhPEFjdGlvbk5hbWUgPSBzdHJpbmcsIEFjdGlvbkNvbnRleHQgPSB1bmtub3duPiB7XG4gICByZWFkb25seSBpZDogbnVtYmVyXG4gICByZWFkb25seSBuYW1lOiBBY3Rpb25OYW1lXG4gICByZWFkb25seSBjb250ZXh0OiBBY3Rpb25Db250ZXh0XG4gICByZWFkb25seSB0aW1lc3RhbXA6IG51bWJlclxuICAgcmVhZG9ubHkgY2hhbmdlczogQ2hhbmdlc1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFVua25vd25FdmVudCBleHRlbmRzIEV2ZW50RGF0YSB7XG4gICB0eXBlOiBFdmVudFR5cGUsXG4gICB2YWx1ZT86IHVua25vd25cbn1cblxuZXhwb3J0IGludGVyZmFjZSBEaXNwYXRjaEV2ZW50PEFjdGlvbk5hbWUgPSBzdHJpbmcsIEFjdGlvbkNvbnRleHQgPSB1bmtub3duLCBBY3Rpb25WYWx1ZSA9IHVua25vd24+IGV4dGVuZHMgRXZlbnREYXRhPEFjdGlvbk5hbWUsIEFjdGlvbkNvbnRleHQ+IHtcbiAgIHJlYWRvbmx5IHR5cGU6IEV2ZW50VHlwZS5EaXNwYXRjaFxuICAgcmVhZG9ubHkgdmFsdWU6IEFjdGlvblZhbHVlXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTmV4dEV2ZW50PEFjdGlvbk5hbWUgPSBzdHJpbmcsIEFjdGlvbkNvbnRleHQgPSB1bmtub3duLCBBY3Rpb25WYWx1ZSA9IHVua25vd24+IGV4dGVuZHMgRXZlbnREYXRhPEFjdGlvbk5hbWUsIEFjdGlvbkNvbnRleHQ+IHtcbiAgIHJlYWRvbmx5IHZhbHVlOiBBY3Rpb25WYWx1ZSBleHRlbmRzIE9ic2VydmFibGU8aW5mZXIgUj4gPyBSIDogbmV2ZXJcbiAgIHJlYWRvbmx5IHR5cGU6IEV2ZW50VHlwZS5OZXh0XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRXJyb3JFdmVudDxBY3Rpb25OYW1lID0gc3RyaW5nLCBBY3Rpb25Db250ZXh0ID0gdW5rbm93bj4gZXh0ZW5kcyBFdmVudERhdGE8QWN0aW9uTmFtZSwgQWN0aW9uQ29udGV4dD4ge1xuICAgcmVhZG9ubHkgdmFsdWU6IHVua25vd25cbiAgIHJlYWRvbmx5IHR5cGU6IEV2ZW50VHlwZS5FcnJvclxufVxuXG5leHBvcnQgaW50ZXJmYWNlIENvbXBsZXRlRXZlbnQ8QWN0aW9uTmFtZSA9IHN0cmluZywgQWN0aW9uQ29udGV4dCA9IHVua25vd24+IGV4dGVuZHMgRXZlbnREYXRhPEFjdGlvbk5hbWUsIEFjdGlvbkNvbnRleHQ+IHtcbiAgIHJlYWRvbmx5IHR5cGU6IEV2ZW50VHlwZS5Db21wbGV0ZVxufVxuXG5leHBvcnQgdHlwZSBTdG9yZUV2ZW50PEFjdGlvbk5hbWUgPSBzdHJpbmcsIEFjdGlvbkNvbnRleHQgPSB1bmtub3duLCBBY3Rpb25UeXBlID0gdW5rbm93biwgRWZmZWN0VHlwZSA9IHVua25vd24+ID1cbiAgIHwgRGlzcGF0Y2hFdmVudDxBY3Rpb25OYW1lLCBBY3Rpb25Db250ZXh0LCBBY3Rpb25UeXBlPlxuICAgfCBOZXh0RXZlbnQ8QWN0aW9uTmFtZSwgQWN0aW9uQ29udGV4dCwgRWZmZWN0VHlwZT5cbiAgIHwgRXJyb3JFdmVudDxBY3Rpb25OYW1lLCBBY3Rpb25Db250ZXh0PlxuICAgfCBDb21wbGV0ZUV2ZW50PEFjdGlvbk5hbWUsIEFjdGlvbkNvbnRleHQ+XG5cbmV4cG9ydCBlbnVtIEV2ZW50VHlwZSB7XG4gICBEaXNwYXRjaCA9IFwiZGlzcGF0Y2hcIixcbiAgIE5leHQgPSBcIm5leHRcIixcbiAgIEVycm9yID0gXCJlcnJvclwiLFxuICAgQ29tcGxldGUgPSBcImNvbXBsZXRlXCJcbn1cblxuZXhwb3J0IGludGVyZmFjZSBEaXNwYXRjaE9ic2VydmVyPFU+IHtcbiAgIG5leHQ/KHZhbHVlOiBVKTogdm9pZFxuICAgZXJyb3I/KGVycm9yOiB1bmtub3duKTogdm9pZFxuICAgY29tcGxldGU/KCk6IHZvaWRcbiAgIGZpbmFsaXplPygpOiB2b2lkXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVHlwZWRDaGFuZ2U8VD4ge1xuICAgcHJldmlvdXNWYWx1ZTogVCB8IHVuZGVmaW5lZDtcbiAgIGN1cnJlbnRWYWx1ZTogVDtcbiAgIGZpcnN0Q2hhbmdlOiBib29sZWFuO1xuICAgaXNGaXJzdENoYW5nZSgpOiBib29sZWFuO1xufVxuXG5leHBvcnQgdHlwZSBUeXBlZENoYW5nZXM8VD4gPSB7XG4gICBba2V5IGluIGtleW9mIFRdPzogVHlwZWRDaGFuZ2U8VFtrZXldPlxufVxuXG5leHBvcnQgY29uc3QgZW51bSBQaGFzZSB7XG4gICBEb0NoZWNrID0gXCJuZ0RvQ2hlY2tcIixcbiAgIEFmdGVyQ29udGVudENoZWNrZWQgPSBcIm5nQWZ0ZXJDb250ZW50Q2hlY2tlZFwiLFxuICAgQWZ0ZXJWaWV3Q2hlY2tlZCA9IFwibmdBZnRlclZpZXdDaGVja2VkXCJcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBY3Rpb25NZXRhZGF0YSB7XG4gICBpbW1lZGlhdGU/OiBib29sZWFuO1xuICAgcGhhc2U/OiBQaGFzZVxuICAgdHJhY2s/OiBib29sZWFuXG4gICBjYXRjaEVycm9yPzogYm9vbGVhblxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNlbGVjdE1ldGFkYXRhIHt9XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ2F1Z2h0TWV0YWRhdGEge31cblxuZXhwb3J0IHR5cGUgTWV0YWRhdGE8VD4gPSBUICYge1xuICAga2V5OiBzdHJpbmdcbiAgIGRlc2NyaXB0b3I/OiBQcm9wZXJ0eURlc2NyaXB0b3Jcbn1cblxuZXhwb3J0IHR5cGUgRXh0cmFjdEV2ZW50czxULCBVIGV4dGVuZHMgc3RyaW5nPiA9IHtcbiAgIFtrZXkgaW4gVV06IGtleSBleHRlbmRzIGtleW9mIFQgPyBUW2tleV0gZXh0ZW5kcyAoLi4ucGFyYW1zOiBpbmZlciBQKSA9PiBpbmZlciBSID8gU3RvcmVFdmVudDxrZXksIFQsIFAsIFI+IDogbmV2ZXIgOiBuZXZlclxufVtVXVxuXG5leHBvcnQgaW50ZXJmYWNlIFN0b3JlQ29uZmlnIHtcbiAgIHJvb3Q/OiBib29sZWFuXG4gICBhY3Rpb25Qcm92aWRlcnM/OiBQcm92aWRlcltdXG59XG5cbmV4cG9ydCB0eXBlIERlcE1hcCA9IE1hcDxSZWNvcmQ8YW55LCBhbnk+LCBNYXA8c3RyaW5nLCB1bmtub3duPj5cblxuZXhwb3J0IGludGVyZmFjZSBab25lQ29tcGF0aWJsZSB7XG4gICBydW4oZm46IEZ1bmN0aW9uLCBhcHBseVRoaXM/OiB7fSwgYXBwbHlBcmdzPzogYW55W10pOiBhbnlcbiAgIHJ1bkd1YXJkZWQoZm46IEZ1bmN0aW9uLCBhcHBseVRoaXM/OiB7fSwgYXBwbHlBcmdzPzogYW55W10pOiBhbnlcbn1cbiJdfQ== |
@@ -5,3 +5,3 @@ import { inject, Injectable, InjectionToken } from "@angular/core"; | ||
| import { track } from "./proxy"; | ||
| import { getId } from "./utils"; | ||
| import { UID } from "./utils"; | ||
| import * as i0 from "@angular/core"; | ||
@@ -26,6 +26,7 @@ export const ACTION = new InjectionToken("ACTION"); | ||
| this.dispatcher = inject(EVENTS); | ||
| this.getId = inject(UID); | ||
| } | ||
| schedule(type, name, value, changes) { | ||
| this.events.push({ | ||
| id: getId(), | ||
| id: this.getId(), | ||
| timestamp: Date.now(), | ||
@@ -143,2 +144,2 @@ type, | ||
| } | ||
| //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vcHJvamVjdHMvY29yZS9zcmMvcHJvdmlkZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBZSxNQUFNLEVBQUUsVUFBVSxFQUFFLGNBQWMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUMvRSxPQUFPLEVBQStCLE9BQU8sRUFBRSxZQUFZLEVBQUUsU0FBUyxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBRXBGLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLFlBQVksQ0FBQztBQUM1QyxPQUFPLEVBQWEsS0FBSyxFQUFDLE1BQU0sU0FBUyxDQUFDO0FBQzFDLE9BQU8sRUFBQyxLQUFLLEVBQUMsTUFBTSxTQUFTLENBQUM7O0FBRTlCLE1BQU0sQ0FBQyxNQUFNLE1BQU0sR0FBRyxJQUFJLGNBQWMsQ0FBaUIsUUFBUSxDQUFDLENBQUE7QUFDbEUsTUFBTSxDQUFDLE1BQU0sT0FBTyxHQUFHLElBQUksY0FBYyxDQUF3QixTQUFTLENBQUMsQ0FBQTtBQUMzRSxNQUFNLENBQUMsTUFBTSxZQUFZLEdBQUcsSUFBSSxjQUFjLENBQWMsY0FBYyxDQUFDLENBQUE7QUFDM0UsTUFBTSxDQUFDLE1BQU0sV0FBVyxHQUFHLElBQUksY0FBYyxDQUFjLGFBQWEsRUFBRTtJQUN2RSxPQUFPO1FBQ0osT0FBTyxFQUFFLENBQUE7SUFDWixDQUFDO0NBQ0gsQ0FBQyxDQUFBO0FBQ0YsTUFBTSxDQUFDLE1BQU0sTUFBTSxHQUFHLElBQUksY0FBYyxDQUFDLFFBQVEsRUFBRTtJQUNoRCxPQUFPO1FBQ0osT0FBTyxJQUFJLE9BQU8sRUFBYyxDQUFBO0lBQ25DLENBQUM7Q0FDSCxDQUFDLENBQUE7QUFFRixNQUFNLE9BQU8sY0FBYztJQXlCeEIsWUFBb0IsT0FBVztRQUFYLFlBQU8sR0FBUCxPQUFPLENBQUk7UUF4Qi9CLFdBQU0sR0FBcUMsRUFBRSxDQUFBO1FBQzdDLGVBQVUsR0FB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Q0g7UUFDRCxNQUFNLEtBQUssQ0FBQTtJQUNkLENBQUM7Q0FHSCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RXJyb3JIYW5kbGVyLCBpbmplY3QsIEluamVjdGFibGUsIEluamVjdGlvblRva2VufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHtPYnNlcnZhYmxlLCBPcGVyYXRvckZ1bmN0aW9uLCBTdWJqZWN0LCBTdWJzY3JpcHRpb24sIHN3aXRjaEFsbH0gZnJvbSBcInJ4anNcIjtcbmltcG9ydCB7QWN0aW9uTWV0YWRhdGEsIERlcE1hcCwgRXZlbnRUeXBlLCBTdG9yZUNvbmZpZywgU3RvcmVFdmVudH0gZnJvbSBcIi4vaW50ZXJmYWNlc1wiO1xuaW1wb3J0IHtnZXRFcnJvckhhbmRsZXJzfSBmcm9tIFwiLi9tZXRhZGF0YVwiO1xuaW1wb3J0IHtnZXRDaGFuZ2VzLCB0cmFja30gZnJvbSBcIi4vcHJveHlcIjtcbmltcG9ydCB7Z2V0SWR9IGZyb20gXCIuL3V0aWxzXCI7XG5cbmV4cG9ydCBjb25zdCBBQ1RJT04gPSBuZXcgSW5qZWN0aW9uVG9rZW48QWN0aW9uTWV0YWRhdGE+KFwiQUNUSU9OXCIpXG5leHBvcnQgY29uc3QgQ09OVEVYVCA9IG5ldyBJbmplY3Rpb25Ub2tlbjx7IGluc3RhbmNlOiB1bmtub3duIH0+KFwiQ09OVEVYVFwiKVxuZXhwb3J0IGNvbnN0IFNUT1JFX0NPTkZJRyA9IG5ldyBJbmplY3Rpb25Ub2tlbjxTdG9yZUNvbmZpZz4oXCJTVE9SRV9DT05GSUdcIilcbmV4cG9ydCBjb25zdCBST09UX0NPTkZJRyA9IG5ldyBJbmplY3Rpb25Ub2tlbjxTdG9yZUNvbmZpZz4oXCJST09UX0NPTkZJR1wiLCB7XG4gICBmYWN0b3J5KCkge1xuICAgICAgcmV0dXJuIHt9XG4gICB9XG59KVxuZXhwb3J0IGNvbnN0IEVWRU5UUyA9IG5ldyBJbmplY3Rpb25Ub2tlbihcIkVWRU5UU1wiLCB7XG4gICBmYWN0b3J5KCkge1xuICAgICAgcmV0dXJuIG5ldyBTdWJqZWN0PFN0b3JlRXZlbnQ+KClcbiAgIH1cbn0pXG5cbmV4cG9ydCBjbGFzcyBFdmVudFNjaGVkdWxlciB7XG4gICBldmVudHM6IFN0b3JlRXZlbnQ8YW55LCBhbnksIGFueSwgYW55PltdID0gW11cbiAgIGRpc3BhdGNoZXIgPSBpbmplY3QoRVZFTlRTKVxuXG4gICBzY2hlZHVsZSh0eXBlOiBFdmVudFR5cGUsIG5hbWU6IHN0cmluZywgdmFsdWU6IHVua25vd24sIGNoYW5nZXM6IE1hcDxhbnksIGFueT4pIHtcbiAgICAgIHRoaXMuZXZlbnRzLnB1c2goe1xuICAgICAgICAgaWQ6IGdldElkKCksXG4gICAgICAgICB0aW1lc3RhbXA6IERhdGUubm93KCksXG4gICAgICAgICB0eXBlLFxuICAgICAgICAgY29udGV4dDogdGhpcy5jb250ZXh0LFxuICAgICAgICAgbmFtZSxcbiAgICAgICAgIHZhbHVlLFxuICAgICAgICAgY2hhbmdlc1xuICAgICAgfSlcbiAgIH1cblxuICAgZmx1c2goKSB7XG4gICAgICBsZXQgZXZlbnRcbiAgICAgIGlmICh0aGlzLmV2ZW50cy5sZW5ndGgpIHtcbiAgICAgICAgIHdoaWxlIChldmVudCA9IHRoaXMuZXZlbnRzLnNoaWZ0KCkpIHtcbiAgICAgICAgICAgIHRoaXMuZGlzcGF0Y2hlci5uZXh0KGV2ZW50KVxuICAgICAgICAgfVxuICAgICAgfVxuICAgfVxuXG4gICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNvbnRleHQ6IHt9KSB7fVxufVxuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgRWZmZWN0U2NoZWR1bGVyIHtcbiAgIHNvdXJjZSA9IG5ldyBTdWJqZWN0PE9ic2VydmFibGU8YW55Pj4oKVxuICAgcXVldWU6IGFueVtdID0gW11cbiAgIG9wZXJhdG9yPzogT3BlcmF0b3JGdW5jdGlvbjxPYnNlcnZhYmxlPGFueT4sIGFueT5cbiAgIGNvbm5lY3RlZCA9IGZhbHNlXG4gICBzdWJzY3JpcHRpb24gPSBTdWJzY3JpcHRpb24uRU1QVFlcbiAgIHBlbmRpbmcgPSBuZXcgU2V0XG4gICBjbG9zZWQgPSBmYWxzZVxuXG4gICBuZXh0KHNvdXJjZTogT2JzZXJ2YWJsZTxhbnk+KSB7XG4gICAgICB0aGlzLmNvbm5lY3QoKVxuICAgICAgdGhpcy5zb3VyY2UubmV4dChzb3VyY2UpXG4gICB9XG5cbiAgIGVucXVldWUoc291cmNlOiBPYnNlcnZhYmxlPGFueT4pIHtcbiAgICAgIHRoaXMucXVldWUucHVzaChzb3VyY2UpXG4gICB9XG5cbiAgIGRlcXVldWUoKSB7XG4gICAgICBsZXQgZWZmZWN0OiBhbnlcbiAgICAgIGlmICh0aGlzLnBlbmRpbmcuc2l6ZSA9PT0gMCkge1xuICAgICAgICAgd2hpbGUgKGVmZmVjdCA9IHRoaXMucXVldWUuc2hpZnQoKSkge1xuICAgICAgICAgICAgdGhpcy5uZXh0KGVmZmVjdClcbiAgICAgICAgIH1cbiAgICAgIH1cbiAgIH1cblxuICAgY29ubmVjdCgpIHtcbiAgICAgIGlmICghdGhpcy5jb25uZWN0ZWQgJiYgIXRoaXMuY2xvc2VkKSB7XG4gICAgICAgICB0aGlzLmNvbm5lY3RlZCA9IHRydWVcbiAgICAgICAgIHRoaXMuc3Vic2NyaXB0aW9uID0gdGhpcy5zb3VyY2UucGlwZSh0aGlzLm9wZXJhdG9yID8/IHN3aXRjaEFsbCgpKS5zdWJzY3JpYmUoKVxuICAgICAgICAgdGhpcy5zdWJzY3JpcHRpb24uYWRkKCgpID0+IHRoaXMuY29ubmVjdGVkID0gZmFsc2UpXG4gICAgICB9XG4gICB9XG5cbiAgIGFkZFBlbmRpbmcocHJvbWlzZTogUHJvbWlzZTxhbnk+KSB7XG4gICAgICB0aGlzLnBlbmRpbmcuYWRkKHByb21pc2UpXG4gICAgICBwcm9taXNlLmZpbmFsbHkoKCkgPT4ge1xuICAgICAgICAgdGhpcy5wZW5kaW5nLmRlbGV0ZShwcm9taXNlKVxuICAgICAgICAgdGhpcy5kZXF1ZXVlKClcbiAgICAgIH0pXG4gICB9XG5cbiAgIG5nT25EZXN0cm95KCkge1xuICAgICAgdGhpcy5jbG9zZWQgPSB0cnVlXG4gICAgICB0aGlzLnNvdXJjZS5jb21wbGV0ZSgpXG4gICAgICB0aGlzLnN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpXG4gICB9XG59XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBUZWFyZG93biB7XG4gICBzdWJzY3JpcHRpb25zOiBTdWJzY3JpcHRpb25bXSA9IFtdXG5cbiAgIHVuc3Vic2NyaWJlKCkge1xuICAgICAgbGV0IHN1YnNjcmlwdGlvblxuICAgICAgd2hpbGUgKHN1YnNjcmlwdGlvbiA9IHRoaXMuc3Vic2NyaXB0aW9ucy5zaGlmdCgpKSB7XG4gICAgICAgICBzdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKVxuICAgICAgfVxuICAgfVxuXG4gICBuZ09uRGVzdHJveSgpIHtcbiAgICAgIHRoaXMudW5zdWJzY3JpYmUoKVxuICAgfVxufVxuXG5leHBvcnQgY2xhc3MgQ2hhbmdlcyB7XG4gICBnZXQgdmFsdWUoKSB7XG4gICAgICByZXR1cm4gdHJhY2sodGhpcy50YXJnZXQuX19uZ1NpbXBsZUNoYW5nZXNfXz8ucHJldmlvdXMpID8/IHt9XG4gICB9XG5cbiAgIGNvbnN0cnVjdG9yKHByaXZhdGUgdGFyZ2V0OiBhbnkpIHt9XG59XG5cbmV4cG9ydCBjbGFzcyBTdG9yZUVycm9ySGFuZGxlciBpbXBsZW1lbnRzIEVycm9ySGFuZGxlciB7XG4gICBoYW5kbGVFcnJvcihlcnJvcjogdW5rbm93bikge1xuICAgICAgY29uc3QgZXJyb3JIYW5kbGVycyA9IGdldEVycm9ySGFuZGxlcnModGhpcy5wcm90b3R5cGUpXG4gICAgICBmb3IgKGNvbnN0IGhhbmRsZXIgb2YgZXJyb3JIYW5kbGVycykge1xuICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIHRoaXMuaW5zdGFuY2VbaGFuZGxlci5rZXldLmNhbGwodGhpcy5pbnN0YW5jZSwgZXJyb3IpXG4gICAgICAgICAgICBicmVha1xuICAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgICAgZXJyb3IgPSBlXG4gICAgICAgICB9XG4gICAgICB9XG4gICAgICB0aHJvdyBlcnJvclxuICAgfVxuXG4gICBjb25zdHJ1Y3Rvcihwcml2YXRlIHByb3RvdHlwZTogYW55LCBwcml2YXRlIGluc3RhbmNlOiBhbnkpIHt9XG59XG4iXX0= | ||
| //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vcHJvamVjdHMvY29yZS9zcmMvcHJvdmlkZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBZSxNQUFNLEVBQUUsVUFBVSxFQUFFLGNBQWMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUMvRSxPQUFPLEVBQStCLE9BQU8sRUFBRSxZQUFZLEVBQUUsU0FBUyxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBRXBGLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLFlBQVksQ0FBQztBQUM1QyxPQUFPLEVBQUMsS0FBSyxFQUFDLE1BQU0sU0FBUyxDQUFDO0FBQzlCLE9BQU8sRUFBQyxHQUFHLEVBQUMsTUFBTSxTQUFTLENBQUM7O0FBRTVCLE1BQU0sQ0FBQyxNQUFNLE1BQU0sR0FBRyxJQUFJLGNBQWMsQ0FBaUIsUUFBUSxDQUFDLENBQUE7QUFDbEUsTUFBTSxDQUFDLE1BQU0sT0FBTyxHQUFHLElBQUksY0FBYyxDQUF3QixTQUFTLENBQUMsQ0FBQTtBQUMzRSxNQUFNLENBQUMsTUFBTSxZQUFZLEdBQUcsSUFBSSxjQUFjLENBQWMsY0FBYyxDQUFDLENBQUE7QUFDM0UsTUFBTSxDQUFDLE1BQU0sV0FBVyxHQUFHLElBQUksY0FBYyxDQUFjLGFBQWEsRUFBRTtJQUN2RSxPQUFPO1FBQ0osT0FBTyxFQUFFLENBQUE7SUFDWixDQUFDO0NBQ0gsQ0FBQyxDQUFBO0FBQ0YsTUFBTSxDQUFDLE1BQU0sTUFBTSxHQUFHLElBQUksY0FBYyxDQUFDLFFBQVEsRUFBRTtJQUNoRCxPQUFPO1FBQ0osT0FBTyxJQUFJLE9BQU8sRUFBYyxDQUFBO0lBQ25DLENBQUM7Q0FDSCxDQUFDLENBQUE7QUFFRixNQUFNLE9BQU8sY0FBYztJQTBCeEIsWUFBb0IsT0FBVztRQUFYLFlBQU8sR0FBUCxPQUFPLENBQUk7UUF6Qi9CLFdBQU0sR0FBcUMsRUFBRSxDQUFBO1FBQzdDLGVBQVUsR0FB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QUFDLE9BQU8sQ0FBQyxFQUFFO2dCQUNULEtBQUssR0FBRyxDQUFDLENBQUE7YUFDWDtTQUNIO1FBQ0QsTUFBTSxLQUFLLENBQUE7SUFDZCxDQUFDO0NBR0giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0Vycm9ySGFuZGxlciwgaW5qZWN0LCBJbmplY3RhYmxlLCBJbmplY3Rpb25Ub2tlbn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7T2JzZXJ2YWJsZSwgT3BlcmF0b3JGdW5jdGlvbiwgU3ViamVjdCwgU3Vic2NyaXB0aW9uLCBzd2l0Y2hBbGx9IGZyb20gXCJyeGpzXCI7XG5pbXBvcnQge0FjdGlvbk1ldGFkYXRhLCBFdmVudFR5cGUsIFN0b3JlQ29uZmlnLCBTdG9yZUV2ZW50fSBmcm9tIFwiLi9pbnRlcmZhY2VzXCI7XG5pbXBvcnQge2dldEVycm9ySGFuZGxlcnN9IGZyb20gXCIuL21ldGFkYXRhXCI7XG5pbXBvcnQge3RyYWNrfSBmcm9tIFwiLi9wcm94eVwiO1xuaW1wb3J0IHtVSUR9IGZyb20gXCIuL3V0aWxzXCI7XG5cbmV4cG9ydCBjb25zdCBBQ1RJT04gPSBuZXcgSW5qZWN0aW9uVG9rZW48QWN0aW9uTWV0YWRhdGE+KFwiQUNUSU9OXCIpXG5leHBvcnQgY29uc3QgQ09OVEVYVCA9IG5ldyBJbmplY3Rpb25Ub2tlbjx7IGluc3RhbmNlOiB1bmtub3duIH0+KFwiQ09OVEVYVFwiKVxuZXhwb3J0IGNvbnN0IFNUT1JFX0NPTkZJRyA9IG5ldyBJbmplY3Rpb25Ub2tlbjxTdG9yZUNvbmZpZz4oXCJTVE9SRV9DT05GSUdcIilcbmV4cG9ydCBjb25zdCBST09UX0NPTkZJRyA9IG5ldyBJbmplY3Rpb25Ub2tlbjxTdG9yZUNvbmZpZz4oXCJST09UX0NPTkZJR1wiLCB7XG4gICBmYWN0b3J5KCkge1xuICAgICAgcmV0dXJuIHt9XG4gICB9XG59KVxuZXhwb3J0IGNvbnN0IEVWRU5UUyA9IG5ldyBJbmplY3Rpb25Ub2tlbihcIkVWRU5UU1wiLCB7XG4gICBmYWN0b3J5KCkge1xuICAgICAgcmV0dXJuIG5ldyBTdWJqZWN0PFN0b3JlRXZlbnQ+KClcbiAgIH1cbn0pXG5cbmV4cG9ydCBjbGFzcyBFdmVudFNjaGVkdWxlciB7XG4gICBldmVudHM6IFN0b3JlRXZlbnQ8YW55LCBhbnksIGFueSwgYW55PltdID0gW11cbiAgIGRpc3BhdGNoZXIgPSBpbmplY3QoRVZFTlRTKVxuICAgZ2V0SWQgPSBpbmplY3QoVUlEKVxuXG4gICBzY2hlZHVsZSh0eXBlOiBFdmVudFR5cGUsIG5hbWU6IHN0cmluZywgdmFsdWU6IHVua25vd24sIGNoYW5nZXM6IE1hcDxhbnksIGFueT4pIHtcbiAgICAgIHRoaXMuZXZlbnRzLnB1c2goe1xuICAgICAgICAgaWQ6IHRoaXMuZ2V0SWQoKSxcbiAgICAgICAgIHRpbWVzdGFtcDogRGF0ZS5ub3coKSxcbiAgICAgICAgIHR5cGUsXG4gICAgICAgICBjb250ZXh0OiB0aGlzLmNvbnRleHQsXG4gICAgICAgICBuYW1lLFxuICAgICAgICAgdmFsdWUsXG4gICAgICAgICBjaGFuZ2VzXG4gICAgICB9KVxuICAgfVxuXG4gICBmbHVzaCgpIHtcbiAgICAgIGxldCBldmVudFxuICAgICAgaWYgKHRoaXMuZXZlbnRzLmxlbmd0aCkge1xuICAgICAgICAgd2hpbGUgKGV2ZW50ID0gdGhpcy5ldmVudHMuc2hpZnQoKSkge1xuICAgICAgICAgICAgdGhpcy5kaXNwYXRjaGVyLm5leHQoZXZlbnQpXG4gICAgICAgICB9XG4gICAgICB9XG4gICB9XG5cbiAgIGNvbnN0cnVjdG9yKHByaXZhdGUgY29udGV4dDoge30pIHt9XG59XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBFZmZlY3RTY2hlZHVsZXIge1xuICAgc291cmNlID0gbmV3IFN1YmplY3Q8T2JzZXJ2YWJsZTxhbnk+PigpXG4gICBxdWV1ZTogYW55W10gPSBbXVxuICAgb3BlcmF0b3I/OiBPcGVyYXRvckZ1bmN0aW9uPE9ic2VydmFibGU8YW55PiwgYW55PlxuICAgY29ubmVjdGVkID0gZmFsc2VcbiAgIHN1YnNjcmlwdGlvbiA9IFN1YnNjcmlwdGlvbi5FTVBUWVxuICAgcGVuZGluZyA9IG5ldyBTZXRcbiAgIGNsb3NlZCA9IGZhbHNlXG5cbiAgIG5leHQoc291cmNlOiBPYnNlcnZhYmxlPGFueT4pIHtcbiAgICAgIHRoaXMuY29ubmVjdCgpXG4gICAgICB0aGlzLnNvdXJjZS5uZXh0KHNvdXJjZSlcbiAgIH1cblxuICAgZW5xdWV1ZShzb3VyY2U6IE9ic2VydmFibGU8YW55Pikge1xuICAgICAgdGhpcy5xdWV1ZS5wdXNoKHNvdXJjZSlcbiAgIH1cblxuICAgZGVxdWV1ZSgpIHtcbiAgICAgIGxldCBlZmZlY3Q6IGFueVxuICAgICAgaWYgKHRoaXMucGVuZGluZy5zaXplID09PSAwKSB7XG4gICAgICAgICB3aGlsZSAoZWZmZWN0ID0gdGhpcy5xdWV1ZS5zaGlmdCgpKSB7XG4gICAgICAgICAgICB0aGlzLm5leHQoZWZmZWN0KVxuICAgICAgICAgfVxuICAgICAgfVxuICAgfVxuXG4gICBjb25uZWN0KCkge1xuICAgICAgaWYgKCF0aGlzLmNvbm5lY3RlZCAmJiAhdGhpcy5jbG9zZWQpIHtcbiAgICAgICAgIHRoaXMuY29ubmVjdGVkID0gdHJ1ZVxuICAgICAgICAgdGhpcy5zdWJzY3JpcHRpb24gPSB0aGlzLnNvdXJjZS5waXBlKHRoaXMub3BlcmF0b3IgPz8gc3dpdGNoQWxsKCkpLnN1YnNjcmliZSgpXG4gICAgICAgICB0aGlzLnN1YnNjcmlwdGlvbi5hZGQoKCkgPT4gdGhpcy5jb25uZWN0ZWQgPSBmYWxzZSlcbiAgICAgIH1cbiAgIH1cblxuICAgYWRkUGVuZGluZyhwcm9taXNlOiBQcm9taXNlPGFueT4pIHtcbiAgICAgIHRoaXMucGVuZGluZy5hZGQocHJvbWlzZSlcbiAgICAgIHByb21pc2UuZmluYWxseSgoKSA9PiB7XG4gICAgICAgICB0aGlzLnBlbmRpbmcuZGVsZXRlKHByb21pc2UpXG4gICAgICAgICB0aGlzLmRlcXVldWUoKVxuICAgICAgfSlcbiAgIH1cblxuICAgbmdPbkRlc3Ryb3koKSB7XG4gICAgICB0aGlzLmNsb3NlZCA9IHRydWVcbiAgICAgIHRoaXMuc291cmNlLmNvbXBsZXRlKClcbiAgICAgIHRoaXMuc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKClcbiAgIH1cbn1cblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFRlYXJkb3duIHtcbiAgIHN1YnNjcmlwdGlvbnM6IFN1YnNjcmlwdGlvbltdID0gW11cblxuICAgdW5zdWJzY3JpYmUoKSB7XG4gICAgICBsZXQgc3Vic2NyaXB0aW9uXG4gICAgICB3aGlsZSAoc3Vic2NyaXB0aW9uID0gdGhpcy5zdWJzY3JpcHRpb25zLnNoaWZ0KCkpIHtcbiAgICAgICAgIHN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpXG4gICAgICB9XG4gICB9XG5cbiAgIG5nT25EZXN0cm95KCkge1xuICAgICAgdGhpcy51bnN1YnNjcmliZSgpXG4gICB9XG59XG5cbmV4cG9ydCBjbGFzcyBDaGFuZ2VzIHtcbiAgIGdldCB2YWx1ZSgpIHtcbiAgICAgIHJldHVybiB0cmFjayh0aGlzLnRhcmdldC5fX25nU2ltcGxlQ2hhbmdlc19fPy5wcmV2aW91cykgPz8ge31cbiAgIH1cblxuICAgY29uc3RydWN0b3IocHJpdmF0ZSB0YXJnZXQ6IGFueSkge31cbn1cblxuZXhwb3J0IGNsYXNzIFN0b3JlRXJyb3JIYW5kbGVyIGltcGxlbWVudHMgRXJyb3JIYW5kbGVyIHtcbiAgIGhhbmRsZUVycm9yKGVycm9yOiB1bmtub3duKSB7XG4gICAgICBjb25zdCBlcnJvckhhbmRsZXJzID0gZ2V0RXJyb3JIYW5kbGVycyh0aGlzLnByb3RvdHlwZSlcbiAgICAgIGZvciAoY29uc3QgaGFuZGxlciBvZiBlcnJvckhhbmRsZXJzKSB7XG4gICAgICAgICB0cnkge1xuICAgICAgICAgICAgdGhpcy5pbnN0YW5jZVtoYW5kbGVyLmtleV0uY2FsbCh0aGlzLmluc3RhbmNlLCBlcnJvcilcbiAgICAgICAgICAgIGJyZWFrXG4gICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgICBlcnJvciA9IGVcbiAgICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHRocm93IGVycm9yXG4gICB9XG5cbiAgIGNvbnN0cnVjdG9yKHByaXZhdGUgcHJvdG90eXBlOiBhbnksIHByaXZhdGUgaW5zdGFuY2U6IGFueSkge31cbn1cbiJdfQ== |
@@ -15,2 +15,3 @@ // noinspection JSUnusedGlobalSymbols | ||
| export { useMutation, useQuery, ResourceManager, QueryError } from "./data"; | ||
| //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2NvcmUvc3JjL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEscUNBQXFDO0FBQ3JDLE9BQU8sRUFDSixNQUFNLElBQUksUUFBUSxFQUNsQixlQUFlLElBQUksaUJBQWlCLEVBQ3RDLE1BQU0sUUFBUSxDQUFBO0FBQ2YscUNBQXFDO0FBQ3JDLE9BQU8sRUFDSixLQUFLLEVBQ0wsU0FBUyxFQUNULE9BQU8sRUFDUCxLQUFLLElBQUksQ0FBQyxFQUNWLE9BQU8sSUFBSSxFQUFFLEdBQ2YsTUFBTSxTQUFTLENBQUE7QUFDaEIsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLFlBQVksQ0FBQztBQUNwQyxPQUFPLEVBQ0osV0FBVyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUNqRixNQUFNLFNBQVMsQ0FBQTtBQUNoQixPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQTtBQUNwRCxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sZUFBZSxDQUFBO0FBQ3hDLE9BQU8sRUFBQyxVQUFVLEVBQUUsYUFBYSxFQUFFLGVBQWUsRUFBQyxNQUFNLGNBQWMsQ0FBQTtBQUN2RSxPQUFPLEVBQUMsTUFBTSxFQUFFLE1BQU0sRUFBQyxNQUFNLGFBQWEsQ0FBQztBQUMzQyxPQUFPLEVBQUMsY0FBYyxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxhQUFhLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUMsTUFBTSxTQUFTLENBQUM7QUFDM0ksT0FBTyxFQUFDLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBQyxNQUFNLGNBQWMsQ0FBQztBQUNuRixPQUFPLEVBQUMsS0FBSyxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQXVCLFNBQVMsRUFBb0IsTUFBTSxFQUFDLE1BQU0sVUFBVSxDQUFBO0FBQ3pHLE9BQU8sRUFDSixXQUFXLEVBQUUsUUFBUSxFQUFFLGVBQWUsRUFBK0IsVUFBVSxFQUNqRixNQUFNLFFBQVEsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbIi8vIG5vaW5zcGVjdGlvbiBKU1VudXNlZEdsb2JhbFN5bWJvbHNcbmV4cG9ydCB7XG4gICBzdG9yZXMgYXMgybXJtXN0b3JlcyxcbiAgIGRlY29yYXRlRmFjdG9yeSBhcyDJtcm1ZGVjb3JhdGVGYWN0b3J5XG59IGZyb20gXCIuL2NvcmVcIlxuLy8gbm9pbnNwZWN0aW9uIEpTVW51c2VkR2xvYmFsU3ltYm9sc1xuZXhwb3J0IHtcbiAgIHRyYWNrLFxuICAgaXNUcmFja2VkLFxuICAgdW50cmFjayxcbiAgIHRyYWNrIGFzICQsXG4gICB1bnRyYWNrIGFzICQkLFxufSBmcm9tIFwiLi9wcm94eVwiXG5leHBvcnQge2Rpc3BhdGNofSBmcm9tIFwiLi9kaXNwYXRjaFwiO1xuZXhwb3J0IHtcbiAgIHVzZU9wZXJhdG9yLCB1c2VDb25jYXQsIHVzZUV4aGF1c3QsIHVzZU1lcmdlLCB1c2VTd2l0Y2gsIGFkZFRlYXJkb3duLCB1c2VJbnB1dHNcbn0gZnJvbSBcIi4vaG9va3NcIlxuZXhwb3J0IHtUZW1wbGF0ZVByb3ZpZGVyfSBmcm9tIFwiLi90ZW1wbGF0ZS1wcm92aWRlclwiXG5leHBvcnQge2xvYWRFZmZlY3R9IGZyb20gXCIuL2xvYWQtZWZmZWN0XCJcbmV4cG9ydCB7VHJhbnNpdGlvbiwgdXNlVHJhbnNpdGlvbiwgVHJhbnNpdGlvblRva2VufSBmcm9tIFwiLi90cmFuc2l0aW9uXCJcbmV4cG9ydCB7RVZFTlRTLCBBQ1RJT059IGZyb20gXCIuL3Byb3ZpZGVyc1wiO1xuZXhwb3J0IHtjb25maWd1cmVTdG9yZSwgZXZlbnRzLCBnZXQsIHNldCwgYWN0aW9uRXZlbnQsIGFjdGlvbiwgZXJyb3JFdmVudCwgZXJyb3IsIGNvbXBsZXRlRXZlbnQsIGNvbXBsZXRlLCBuZXh0RXZlbnQsIG5leHR9IGZyb20gXCIuL3V0aWxzXCI7XG5leHBvcnQge1N0b3JlLCBDYXVnaHQsIFNlbGVjdCwgTGF5b3V0LCBCZWZvcmUsIEludm9rZSwgQWN0aW9ufSBmcm9tIFwiLi9kZWNvcmF0b3JzXCI7XG5leHBvcnQge3NsaWNlLCBzdG9yZSwgU2VsZWN0b3IsIE9uU2VsZWN0LCBXaXRoU3RhdGUsIHdpdGhTdGF0ZSwgV2l0aFN0YXRlT3B0aW9ucywgaW5wdXRzfSBmcm9tIFwiLi9zZWxlY3RcIlxuZXhwb3J0IHtcbiAgIHVzZU11dGF0aW9uLCB1c2VRdWVyeSwgUmVzb3VyY2VNYW5hZ2VyLCBNdXRhdGVPcHRpb25zLCBRdWVyeU9wdGlvbnMsIFF1ZXJ5RXJyb3Jcbn0gZnJvbSBcIi4vZGF0YVwiXG4iXX0= | ||
| export { EventType } from "./interfaces"; | ||
| //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2NvcmUvc3JjL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEscUNBQXFDO0FBQ3JDLE9BQU8sRUFDSixNQUFNLElBQUksUUFBUSxFQUNsQixlQUFlLElBQUksaUJBQWlCLEVBQ3RDLE1BQU0sUUFBUSxDQUFBO0FBQ2YscUNBQXFDO0FBQ3JDLE9BQU8sRUFDSixLQUFLLEVBQ0wsU0FBUyxFQUNULE9BQU8sRUFDUCxLQUFLLElBQUksQ0FBQyxFQUNWLE9BQU8sSUFBSSxFQUFFLEdBQ2YsTUFBTSxTQUFTLENBQUE7QUFDaEIsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLFlBQVksQ0FBQztBQUNwQyxPQUFPLEVBQ0osV0FBVyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUNqRixNQUFNLFNBQVMsQ0FBQTtBQUNoQixPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQTtBQUNwRCxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sZUFBZSxDQUFBO0FBQ3hDLE9BQU8sRUFBQyxVQUFVLEVBQUUsYUFBYSxFQUFFLGVBQWUsRUFBQyxNQUFNLGNBQWMsQ0FBQTtBQUN2RSxPQUFPLEVBQUMsTUFBTSxFQUFFLE1BQU0sRUFBQyxNQUFNLGFBQWEsQ0FBQztBQUMzQyxPQUFPLEVBQUMsY0FBYyxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxhQUFhLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUMsTUFBTSxTQUFTLENBQUM7QUFDM0ksT0FBTyxFQUFDLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBQyxNQUFNLGNBQWMsQ0FBQztBQUNuRixPQUFPLEVBQUMsS0FBSyxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQXVCLFNBQVMsRUFBb0IsTUFBTSxFQUFDLE1BQU0sVUFBVSxDQUFBO0FBQ3pHLE9BQU8sRUFDSixXQUFXLEVBQUUsUUFBUSxFQUFFLGVBQWUsRUFBK0IsVUFBVSxFQUNqRixNQUFNLFFBQVEsQ0FBQTtBQUNmLE9BQU8sRUFBRSxTQUFTLEVBQXNLLE1BQU0sY0FBYyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiLy8gbm9pbnNwZWN0aW9uIEpTVW51c2VkR2xvYmFsU3ltYm9sc1xuZXhwb3J0IHtcbiAgIHN0b3JlcyBhcyDJtcm1c3RvcmVzLFxuICAgZGVjb3JhdGVGYWN0b3J5IGFzIMm1ybVkZWNvcmF0ZUZhY3Rvcnlcbn0gZnJvbSBcIi4vY29yZVwiXG4vLyBub2luc3BlY3Rpb24gSlNVbnVzZWRHbG9iYWxTeW1ib2xzXG5leHBvcnQge1xuICAgdHJhY2ssXG4gICBpc1RyYWNrZWQsXG4gICB1bnRyYWNrLFxuICAgdHJhY2sgYXMgJCxcbiAgIHVudHJhY2sgYXMgJCQsXG59IGZyb20gXCIuL3Byb3h5XCJcbmV4cG9ydCB7ZGlzcGF0Y2h9IGZyb20gXCIuL2Rpc3BhdGNoXCI7XG5leHBvcnQge1xuICAgdXNlT3BlcmF0b3IsIHVzZUNvbmNhdCwgdXNlRXhoYXVzdCwgdXNlTWVyZ2UsIHVzZVN3aXRjaCwgYWRkVGVhcmRvd24sIHVzZUlucHV0c1xufSBmcm9tIFwiLi9ob29rc1wiXG5leHBvcnQge1RlbXBsYXRlUHJvdmlkZXJ9IGZyb20gXCIuL3RlbXBsYXRlLXByb3ZpZGVyXCJcbmV4cG9ydCB7bG9hZEVmZmVjdH0gZnJvbSBcIi4vbG9hZC1lZmZlY3RcIlxuZXhwb3J0IHtUcmFuc2l0aW9uLCB1c2VUcmFuc2l0aW9uLCBUcmFuc2l0aW9uVG9rZW59IGZyb20gXCIuL3RyYW5zaXRpb25cIlxuZXhwb3J0IHtFVkVOVFMsIEFDVElPTn0gZnJvbSBcIi4vcHJvdmlkZXJzXCI7XG5leHBvcnQge2NvbmZpZ3VyZVN0b3JlLCBldmVudHMsIGdldCwgc2V0LCBhY3Rpb25FdmVudCwgYWN0aW9uLCBlcnJvckV2ZW50LCBlcnJvciwgY29tcGxldGVFdmVudCwgY29tcGxldGUsIG5leHRFdmVudCwgbmV4dH0gZnJvbSBcIi4vdXRpbHNcIjtcbmV4cG9ydCB7U3RvcmUsIENhdWdodCwgU2VsZWN0LCBMYXlvdXQsIEJlZm9yZSwgSW52b2tlLCBBY3Rpb259IGZyb20gXCIuL2RlY29yYXRvcnNcIjtcbmV4cG9ydCB7c2xpY2UsIHN0b3JlLCBTZWxlY3RvciwgT25TZWxlY3QsIFdpdGhTdGF0ZSwgd2l0aFN0YXRlLCBXaXRoU3RhdGVPcHRpb25zLCBpbnB1dHN9IGZyb20gXCIuL3NlbGVjdFwiXG5leHBvcnQge1xuICAgdXNlTXV0YXRpb24sIHVzZVF1ZXJ5LCBSZXNvdXJjZU1hbmFnZXIsIE11dGF0ZU9wdGlvbnMsIFF1ZXJ5T3B0aW9ucywgUXVlcnlFcnJvclxufSBmcm9tIFwiLi9kYXRhXCJcbmV4cG9ydCB7IEV2ZW50VHlwZSwgU3RvcmVFdmVudCwgVHlwZWRDaGFuZ2VzLCBUeXBlZENoYW5nZSwgQ29tcGxldGVFdmVudCwgRGlzcGF0Y2hFdmVudCwgRXJyb3JFdmVudCwgTmV4dEV2ZW50LCBab25lQ29tcGF0aWJsZSwgU3RvcmVDb25maWcsIERpc3BhdGNoT2JzZXJ2ZXIsIEV2ZW50RGF0YSwgVW5rbm93bkV2ZW50IH0gZnJvbSBcIi4vaW50ZXJmYWNlc1wiXG4iXX0= |
| import { ChangeDetectorRef, ErrorHandler, inject, Injectable, INJECTOR, } from "@angular/core"; | ||
| import { BehaviorSubject, defer, distinctUntilChanged, EMPTY, filter, isObservable, map, skip, startWith, Subject, Subscription, } from "rxjs"; | ||
| import { BehaviorSubject, defer, distinctUntilChanged, EMPTY, filter, isObservable, map, observable, skip, startWith, Subject, Subscription, } from "rxjs"; | ||
| import { addTeardown } from "./hooks"; | ||
@@ -60,2 +60,5 @@ import { EventType } from "./interfaces"; | ||
| } | ||
| [observable]() { | ||
| return this; | ||
| } | ||
| get value() { | ||
@@ -81,2 +84,5 @@ return this.destination.value; | ||
| } | ||
| pipe(...operators) { | ||
| return this.destination.pipe(...operators); | ||
| } | ||
| subscribe(observer) { | ||
@@ -115,3 +121,2 @@ try { | ||
| this.event.schedule(EventType.Dispatch, this.key, value, changes); | ||
| this.event.flush(); | ||
| this.cdr.markForCheck(); | ||
@@ -140,2 +145,2 @@ } | ||
| } | ||
| //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vcHJvamVjdHMvY29yZS9zcmMvc2VsZWN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSixpQkFBaUIsRUFDakIsWUFBWSxFQUNaLE1BQU0sRUFDTixVQUFVLEVBRVYsUUFBUSxHQUdWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDSixlQUFlLEVBQ2YsS0FBSyxFQUNMLG9CQUFvQixFQUNwQixLQUFLLEVBQ0wsTUFBTSxFQUNOLFlBQVksRUFDWixHQUFHLEVBR0gsSUFBSSxFQUNKLFNBQVMsRUFDVCxPQUFPLEVBQ1AsWUFBWSxHQUNkLE1BQU0sTUFBTSxDQUFDO0FBQ2QsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLFNBQVMsQ0FBQztBQUNwQyxPQUFPLEVBQWdCLFNBQVMsRUFBMkIsTUFBTSxjQUFjLENBQUM7QUFDaEYsT0FBTyxFQUFDLE1BQU0sRUFBRSxjQUFjLEVBQUMsTUFBTSxhQUFhLENBQUM7QUFDbkQsT0FBTyxFQUFDLEtBQUssRUFBQyxNQUFNLFNBQVMsQ0FBQztBQUM5QixPQUFPLEVBQUMsTUFBTSxFQUFDLE1BQU0sU0FBUyxDQUFDOztBQUkvQixTQUFTLElBQUksQ0FBQyxNQUFXLEVBQUUsSUFBaUM7SUFDekQsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFO1FBQ3RCLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsRUFBRSxHQUFHLEVBQUUsRUFBRTtZQUM3QixHQUFHLENBQUMsR0FBRyxDQUFDLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFBO1lBQ3RCLE9BQU8sR0FBRyxDQUFBO1FBQ2IsQ0FBQyxFQUFFLEVBQVMsQ0FBQyxDQUFBO0tBQ2Y7SUFDRCxPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQTtBQUN0QixDQUFDO0FBSUQsTUFBTSxVQUFVLEtBQUssQ0FBQyxLQUF5QixF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QUMsQ0FBQTtRQUNsQyxNQUFNLElBQUksS0FBSyxDQUFDLCtEQUErRCxDQUFDLENBQUE7S0FDbEY7SUFDRCxTQUFTLENBQUMsR0FBRyxDQUFDLEdBQUcsS0FBSyxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFBO0lBQ3RDLFdBQVcsQ0FBQyxZQUFZLENBQUMsQ0FBQTtBQUM1QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgRXJyb3JIYW5kbGVyLFxuICAgaW5qZWN0LFxuICAgSW5qZWN0YWJsZSxcbiAgIEluamVjdG9yLFxuICAgSU5KRUNUT1IsXG4gICBQcm92aWRlclRva2VuLFxuICAgVHlwZSxcbn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7XG4gICBCZWhhdmlvclN1YmplY3QsXG4gICBkZWZlcixcbiAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkLFxuICAgRU1QVFksXG4gICBmaWx0ZXIsXG4gICBpc09ic2VydmFibGUsXG4gICBtYXAsXG4gICBPYnNlcnZhYmxlLFxuICAgT2JzZXJ2ZXIsXG4gICBza2lwLFxuICAgc3RhcnRXaXRoLFxuICAgU3ViamVjdCxcbiAgIFN1YnNjcmlwdGlvbixcbn0gZnJvbSBcInJ4anNcIjtcbmltcG9ydCB7YWRkVGVhcmRvd259IGZyb20gXCIuL2hvb2tzXCI7XG5pbXBvcnQge0Rpc3BhdGNoRXZlbnQsIEV2ZW50VHlwZSwgU3RvcmVFdmVudCwgVHlwZWRDaGFuZ2VzfSBmcm9tIFwiLi9pbnRlcmZhY2VzXCI7XG5pbXBvcnQge0VWRU5UUywgRXZlbnRTY2hlZHVsZXJ9IGZyb20gXCIuL3Byb3ZpZGVyc1wiO1xuaW1wb3J0IHt0cmFja30gZnJvbSBcIi4vcHJveHlcIjtcbmltcG9ydCB7ZXZlbnRzfSBmcm9tIFwiLi91dGlsc1wiO1xuXG5mdW5jdGlvbiBwaWNrPFQsIFUgZXh0ZW5kcyAoa2V5b2YgVClbXT4ob2JqZWN0OiBULCBrZXlzOiBVKTogUGljazxULCBVW251bWJlcl0+XG5mdW5jdGlvbiBwaWNrPFQsIFUgZXh0ZW5kcyBrZXlvZiBUPihvYmplY3Q6IFQsIGtleXM6IFUpOiBUW1VdXG5mdW5jdGlvbiBwaWNrKG9iamVjdDogYW55LCBrZXlzOiBQcm9wZXJ0eUtleSB8IFByb3BlcnR5S2V5W10pOiB1bmtub3duIHtcbiAgIGlmIChBcnJheS5pc0FycmF5KGtleXMpKSB7XG4gICAgICByZXR1cm4ga2V5cy5yZWR1Y2UoKGFjYywga2V5KSA9PiB7XG4gICAgICAgICBhY2Nba2V5XSA9IG9iamVjdFtrZXldXG4gICAgICAgICByZXR1cm4gYWNjXG4gICAgICB9LCB7fSBhcyBhbnkpXG4gICB9XG4gICByZXR1cm4gb2JqZWN0W2tleXNdXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBzbGljZTxUIGV4dGVuZHMge30sIFUgZXh0ZW5kcyBrZXlvZiBUPih0b2tlbjogUHJvdmlkZXJUb2tlbjxUPiwga2V5OiBVLCBpbmplY3Rvcj86IEluamVjdG9yKTogT2JzZXJ2YWJsZTxUW1VdPlxuZXhwb3J0IGZ1bmN0aW9uIHNsaWNlPFQgZXh0ZW5kcyB7fSwgVSBleHRlbmRzIChrZXlvZiBUKVtdPih0b2tlbjogUHJvdmlkZXJUb2tlbjxUPiwga2V5OiBVLCBpbmplY3Rvcj86IEluamVjdG9yKTogT2JzZXJ2YWJsZTxQaWNrPFQsIFVbbnVtYmVyXT4+XG5leHBvcnQgZnVuY3Rpb24gc2xpY2UodG9rZW46IFByb3ZpZGVyVG9rZW48YW55Piwga2V5czogYW55LCBpbmplY3RvciA9IGluamVjdChJTkpFQ1RPUikpOiBPYnNlcnZhYmxlPHVua25vd24+IHtcbiAgIHJldHVybiBkZWZlcigoKSA9PiB7XG4gICAgICBjb25zdCBjb250ZXh0ID0gaW5qZWN0b3IuZ2V0KHRva2VuKVxuICAgICAgcmV0dXJuIHN0b3JlKHRva2VuLCBpbmplY3RvcikucGlwZShcbiAgICAgICAgIG1hcCgoY29udGV4dCkgPT4gcGljayhjb250ZXh0LCBrZXlzKSksXG4gICAgICAgICBzdGFydFdpdGgocGljayhjb250ZXh0LCBrZXlzKSksXG4gICAgICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgoYSwgYikgPT4gIUFycmF5LmlzQXJyYXkoa2V5cykgPyBPYmplY3QuaXMoYSwgYikgOiBrZXlzLmV2ZXJ5KGtleSA9PiBPYmplY3QuaXMoYVtrZXldLCBiW2tleV0pKSlcbiAgICAgIClcbiAgIH0pXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBzdG9yZTxUIGV4dGVuZHMge30+KHRva2VuOiBQcm92aWRlclRva2VuPFQ+LCBpbmplY3RvciA9IGluamVjdChJTkpFQ1RPUikpOiBPYnNlcnZhYmxlPFQ+IHtcbiAgIHJldHVybiBkZWZlcigoKSA9PiB7XG4gICAgICBjb25zdCBjb250ZXh0ID0gaW5qZWN0b3IuZ2V0KHRva2VuKVxuICAgICAgcmV0dXJuIGluamVjdG9yLmdldChFVkVOVFMpLnBpcGUoXG4gICAgICAgICBmaWx0ZXIoZXZlbnQgPT4gZXZlbnQuY2hhbmdlcy5oYXMoY29udGV4dCkpLFxuICAgICAgICAgbWFwKCgpID0+IGNvbnRleHQpXG4gICAgIClcbiAgIH0pXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpbnB1dHM8VD4odG9rZW46IFByb3ZpZGVyVG9rZW48VD4sIGluamVjdG9yID0gaW5qZWN0KElOSkVDVE9SKSk6IE9ic2VydmFibGU8VHlwZWRDaGFuZ2VzPFQ+PiB7XG4gICByZXR1cm4gZGVmZXIoKCkgPT4ge1xuICAgICAgcmV0dXJuIGV2ZW50cyh0b2tlbiwgaW5qZWN0b3IpLnBpcGUoXG4gICAgICAgICBmaWx0ZXIoKGV2ZW50OiBTdG9yZUV2ZW50KTogZXZlbnQgaXMgRGlzcGF0Y2hFdmVudCA9PiBldmVudC5uYW1lID09PSBcIm5nT25DaGFuZ2VzXCIpLFxuICAgICAgICAgbWFwKGV2ZW50ID0+IGV2ZW50LnZhbHVlIGFzIFR5cGVkQ2hhbmdlczxUPilcbiAgICAgIClcbiAgIH0pXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgV2l0aFN0YXRlT3B0aW9uczxUPiB7XG4gICBmcm9tPzogT2JzZXJ2YWJsZTxUPlxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFdpdGhTdGF0ZTxUPiB7XG4gICBzb3VyY2U6IE9ic2VydmFibGU8VD5cbiAgIGRlc3RpbmF0aW9uOiBCZWhhdmlvclN1YmplY3Q8VD5cbn1cblxuZXhwb3J0IGludGVyZmFjZSBTZWxlY3RvciB7XG4gICBuZXc8VD4obmFtZTogc3RyaW5nLCBmYWN0b3J5OiAoc291cmNlOiBPYnNlcnZhYmxlPFQ+KSA9PiBXaXRoU3RhdGU8VD4pOiBUeXBlPEJlaGF2aW9yU3ViamVjdDxUPj5cbiAgIG5ldzxUPihuYW1lOiBzdHJpbmcsIGZhY3Rvcnk6IChzb3VyY2U6IE9ic2VydmFibGU8VD4pID0+IE9ic2VydmFibGU8VD4pOiBUeXBlPE9ic2VydmFibGU8VD4+XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB3aXRoU3RhdGU8VD4oaW5pdGlhbDogVCwgb3B0aW9uczogV2l0aFN0YXRlT3B0aW9uczxUPiA9IHt9KTogV2l0aFN0YXRlPFQ+IHtcbiAgIGNvbnN0IGRlc3RpbmF0aW9uID0gbmV3IEJlaGF2aW9yU3ViamVjdChpbml0aWFsKVxuICAgY29uc3Qgc291cmNlID0gb3B0aW9ucy5mcm9tID8/IEVNUFRZXG5cbiAgIHJldHVybiB7XG4gICAgICBkZXN0aW5hdGlvbixcbiAgICAgIHNvdXJjZSxcbiAgIH1cbn1cblxuZXhwb3J0IGNvbnN0IFNlbGVjdG9yOiBTZWxlY3RvciA9IGZ1bmN0aW9uIFNlbGVjdG9yKG5hbWU6IHN0cmluZywgc2VsZWN0OiBGdW5jdGlvbikge1xuICAgQEluamVjdGFibGUoKVxuICAgY2xhc3MgU2VsZWN0b3IgaW1wbGVtZW50cyBPblNlbGVjdCB7XG4gICAgICBzb3VyY2U6IE9ic2VydmFibGU8YW55PlxuICAgICAgZGVzdGluYXRpb246IEJlaGF2aW9yU3ViamVjdDxhbnk+XG4gICAgICBjb25uZWN0ZWQgPSBmYWxzZVxuICAgICAgc3Vic2NyaXB0aW9uID0gbmV3IFN1YnNjcmlwdGlvbigpXG4gICAgICB0YXJnZXQ6IFN1YmplY3Q8YW55PlxuXG4gICAgICBnZXQgdmFsdWUoKSB7XG4gICAgICAgICByZXR1cm4gdGhpcy5kZXN0aW5hdGlvbi52YWx1ZVxuICAgICAgfVxuXG4gICAgICBjb25uZWN0KCkge1xuICAgICAgICAgaWYgKCF0aGlzLmNvbm5lY3RlZCkge1xuICAgICAgICAgICAgdGhpcy5jb25uZWN0ZWQgPSB0cnVlXG4gICAgICAgICAgICB0aGlzLnN1YnNjcmlwdGlvbi5hZGQodGhpcy5zb3VyY2Uuc3Vic2NyaWJlKHRoaXMuZGVzdGluYXRpb24pKVxuICAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBuZXh0KHZhbHVlOiBhbnkpIHtcbiAgICAgICAgIHRoaXMudGFyZ2V0Lm5leHQodmFsdWUpXG4gICAgICB9XG5cbiAgICAgIG5nT25TZWxlY3Qob2JzZXJ2ZXI6IFBhcnRpYWw8T2JzZXJ2ZXI8YW55Pj4pIHtcbiAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5kZXN0aW5hdGlvbi5waXBlKHNraXAoMSkpLnN1YnNjcmliZShvYnNlcnZlcilcbiAgICAgICAgIH0gZmluYWxseSB7XG4gICAgICAgICAgICB0aGlzLmNvbm5lY3QoKVxuICAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBzdWJzY3JpYmUob2JzZXJ2ZXI6IGFueSkge1xuICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmRlc3RpbmF0aW9uLnN1YnNjcmliZShvYnNlcnZlcilcbiAgICAgICAgIH0gZmluYWxseSB7XG4gICAgICAgICAgICB0aGlzLmNvbm5lY3QoKVxuICAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBuZ09uRGVzdHJveSgpIHtcbiAgICAgICAgIHRoaXMuc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKClcbiAgICAgIH1cblxuICAgICAgY29uc3RydWN0b3IoKSB7XG4gICAgICAgICBjb25zdCBzdWJqZWN0ID0gbmV3IFN1YmplY3QoKVxuICAgICAgICAgY29uc3Qgc2VsZWN0aW9uID0gc2VsZWN0KHN1YmplY3QpXG4gICAgICAgICBpZiAoaXNPYnNlcnZhYmxlKHNlbGVjdGlvbikpIHtcbiAgICAgICAgICAgIHRoaXMuc291cmNlID0gc2VsZWN0aW9uXG4gICAgICAgICAgICB0aGlzLmRlc3RpbmF0aW9uID0gbmV3IEJlaGF2aW9yU3ViamVjdCh1bmRlZmluZWQpXG4gICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5zb3VyY2UgPSBzZWxlY3Rpb24uc291cmNlXG4gICAgICAgICAgICB0aGlzLmRlc3RpbmF0aW9uID0gc2VsZWN0aW9uLmRlc3RpbmF0aW9uXG4gICAgICAgICB9XG4gICAgICAgICB0aGlzLnRhcmdldCA9IHNlbGVjdC5sZW5ndGggPiAwID8gc3ViamVjdCA6IHRoaXMuZGVzdGluYXRpb25cbiAgICAgIH1cblxuICAgICAgc3RhdGljIG92ZXJyaWRkZW5OYW1lID0gbmFtZVxuICAgfVxuICAgcmV0dXJuIFNlbGVjdG9yXG59IGFzIGFueVxuXG5jbGFzcyBTZWxlY3RPYnNlcnZlciB7XG4gICBuZXh0KHZhbHVlOiBhbnkpIHtcbiAgICAgIGNvbnN0IHByZXZpb3VzID0gdGhpcy50YXJnZXRbdGhpcy5rZXldXG4gICAgICB0aGlzLnRhcmdldFt0aGlzLmtleV0gPSB0cmFjayh2YWx1ZSlcbiAgICAgIGNvbnN0IGNoYW5nZXMgPSBuZXcgTWFwKFtbdGhpcy50YXJnZXQsIG5ldyBNYXAoW1t0aGlzLmtleSwgcHJldmlvdXNdXSldXSlcbiAgICAgIHRoaXMuZXZlbnQuc2NoZWR1bGUoRXZlbnRUeXBlLkRpc3BhdGNoLCB0aGlzLmtleSwgdmFsdWUsIGNoYW5nZXMpXG4gICAgICB0aGlzLmV2ZW50LmZsdXNoKClcbiAgICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpXG4gICB9XG4gICBlcnJvcihlcnJvcjogdW5rbm93bikge1xuICAgICAgY29uc29sZS5lcnJvcihcIkVycm9yIHRocm93biBpbiBTZWxlY3RcIilcbiAgICAgIGNvbnNvbGUuZXJyb3IoXCJEaXJlY3RpdmU6XCIsIHRoaXMudGFyZ2V0KVxuICAgICAgY29uc29sZS5lcnJvcihcIktleTpcIiwgdGhpcy5rZXkpXG4gICAgICB0aGlzLmVycm9ySGFuZGxlci5oYW5kbGVFcnJvcihlcnJvcilcbiAgIH1cbiAgIGNvbXBsZXRlKCkge31cbiAgIGNvbnN0cnVjdG9yKHByaXZhdGUgdGFyZ2V0OiBhbnksIHByaXZhdGUga2V5OiBhbnksIHByaXZhdGUgZXZlbnQ6IEV2ZW50U2NoZWR1bGVyLCBwcml2YXRlIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsIHByaXZhdGUgZXJyb3JIYW5kbGVyOiBFcnJvckhhbmRsZXIpIHt9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBzdWJzY3JpYmU8VCBleHRlbmRzIHt9Pih0b2tlbjogUHJvdmlkZXJUb2tlbjxUPiB8IHVuZGVmaW5lZCwgZGlyZWN0aXZlOiBhbnksIGtleTogc3RyaW5nKTogYW55IHtcbiAgIGNvbnN0IGluc3RhbmNlID0gIHRva2VuID8gaW5qZWN0KHRva2VuKSA6IGRpcmVjdGl2ZVtrZXldXG4gICBjb25zdCBvYnNlcnZlciA9IG5ldyBTZWxlY3RPYnNlcnZlcihkaXJlY3RpdmUsIGtleSwgaW5qZWN0KEV2ZW50U2NoZWR1bGVyKSwgaW5qZWN0KENoYW5nZURldGVjdG9yUmVmKSwgaW5qZWN0KEVycm9ySGFuZGxlcikpXG4gICBjb25zdCBzdWJzY3JpcHRpb24gPSBpbnN0YW5jZS5uZ09uU2VsZWN0Py4ob2JzZXJ2ZXIpID8/IGluc3RhbmNlLnN1YnNjcmliZT8uKG9ic2VydmVyKVxuICAgaWYgKCFzdWJzY3JpcHRpb24pIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ0RpcmVjdGl2ZTonLCBkaXJlY3RpdmUpXG4gICAgICBjb25zb2xlLmVycm9yKCdLZXk6Jywga2V5KVxuICAgICAgY29uc29sZS5lcnJvcignT2JqZWN0OicsIGluc3RhbmNlKVxuICAgICAgdGhyb3cgbmV3IEVycm9yKGBPYmplY3QgZG9lcyBub3QgaW1wbGVtZW50IE9uU2VsZWN0IG9yIFN1YnNjcmliYWJsZSBpbnRlcmZhY2VzYClcbiAgIH1cbiAgIGRpcmVjdGl2ZVtrZXldID0gdHJhY2soZGlyZWN0aXZlW2tleV0pXG4gICBhZGRUZWFyZG93bihzdWJzY3JpcHRpb24pXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgT25TZWxlY3Qge1xuICAgbmdPblNlbGVjdChvYnNlcnZlcjogT2JzZXJ2ZXI8YW55Pik6IFN1YnNjcmlwdGlvblxufVxuIl19 | ||
| //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vcHJvamVjdHMvY29yZS9zcmMvc2VsZWN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSixpQkFBaUIsRUFDakIsWUFBWSxFQUNaLE1BQU0sRUFDTixVQUFVLEVBRVYsUUFBUSxHQUdWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDSixlQUFlLEVBQ2YsS0FBSyxFQUNMLG9CQUFvQixFQUNwQixLQUFLLEVBQ0wsTUFBTSxFQUNOLFlBQVksRUFDWixHQUFHLEVBQUUsVUFBVSxFQUdmLElBQUksRUFDSixTQUFTLEVBQ1QsT0FBTyxFQUNQLFlBQVksR0FDZCxNQUFNLE1BQU0sQ0FBQztBQUNkLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxTQUFTLENBQUM7QUFDcEMsT0FBTyxFQUFnQixTQUFTLEVBQTJCLE1BQU0sY0FBYyxDQUFDO0FBQ2hGLE9BQU8sRUFBQyxNQUFNLEVBQUUsY0FBYyxFQUFDLE1BQU0sYUFBYSxDQUFDO0FBQ25ELE9BQU8sRUFBQyxLQUFLLEVBQUMsTUFBTSxTQUFTLENBQUM7QUFDOUIsT0FBTyxFQUFDLE1BQU0sRUFBQyxNQUFNLFNBQVMsQ0FBQzs7QUFJL0IsU0FBUyxJQUFJLENBQUMsTUFBVyxFQUFFLElBQWlDO0lBQ3pELElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRTtRQUN0QixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLEVBQUU7WUFDN0IsR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQTtZQUN0QixPQUFPLEdBQUcsQ0FBQTtRQUNiLENBQUMsRUFBRSxFQUFTLENBQUMsQ0FBQTtLQUNmO0lBQ0QsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUE7QUFDdEIsQ0FBQztBQUlELE1BQU0sVUFBVSxLQUFLLENB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WSxFQUFFLFNBQVMsQ0FBQyxDQUFBO1FBQ3RDLE9BQU8sQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFLEdBQUcsQ0FBQyxDQUFBO1FBQzFCLE9BQU8sQ0FBQyxLQUFLLENBQUMsU0FBUyxFQUFFLFFBQVEsQ0FBQyxDQUFBO1FBQ2xDLE1BQU0sSUFBSSxLQUFLLENBQUMsK0RBQStELENBQUMsQ0FBQTtLQUNsRjtJQUNELFNBQVMsQ0FBQyxHQUFHLENBQUMsR0FBRyxLQUFLLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUE7SUFDdEMsV0FBVyxDQUFDLFlBQVksQ0FBQyxDQUFBO0FBQzVCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICBFcnJvckhhbmRsZXIsXG4gICBpbmplY3QsXG4gICBJbmplY3RhYmxlLFxuICAgSW5qZWN0b3IsXG4gICBJTkpFQ1RPUixcbiAgIFByb3ZpZGVyVG9rZW4sXG4gICBUeXBlLFxufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHtcbiAgIEJlaGF2aW9yU3ViamVjdCxcbiAgIGRlZmVyLFxuICAgZGlzdGluY3RVbnRpbENoYW5nZWQsXG4gICBFTVBUWSxcbiAgIGZpbHRlcixcbiAgIGlzT2JzZXJ2YWJsZSxcbiAgIG1hcCwgb2JzZXJ2YWJsZSxcbiAgIE9ic2VydmFibGUsXG4gICBPYnNlcnZlcixcbiAgIHNraXAsXG4gICBzdGFydFdpdGgsXG4gICBTdWJqZWN0LFxuICAgU3Vic2NyaXB0aW9uLFxufSBmcm9tIFwicnhqc1wiO1xuaW1wb3J0IHthZGRUZWFyZG93bn0gZnJvbSBcIi4vaG9va3NcIjtcbmltcG9ydCB7RGlzcGF0Y2hFdmVudCwgRXZlbnRUeXBlLCBTdG9yZUV2ZW50LCBUeXBlZENoYW5nZXN9IGZyb20gXCIuL2ludGVyZmFjZXNcIjtcbmltcG9ydCB7RVZFTlRTLCBFdmVudFNjaGVkdWxlcn0gZnJvbSBcIi4vcHJvdmlkZXJzXCI7XG5pbXBvcnQge3RyYWNrfSBmcm9tIFwiLi9wcm94eVwiO1xuaW1wb3J0IHtldmVudHN9IGZyb20gXCIuL3V0aWxzXCI7XG5cbmZ1bmN0aW9uIHBpY2s8VCwgVSBleHRlbmRzIChrZXlvZiBUKVtdPihvYmplY3Q6IFQsIGtleXM6IFUpOiBQaWNrPFQsIFVbbnVtYmVyXT5cbmZ1bmN0aW9uIHBpY2s8VCwgVSBleHRlbmRzIGtleW9mIFQ+KG9iamVjdDogVCwga2V5czogVSk6IFRbVV1cbmZ1bmN0aW9uIHBpY2sob2JqZWN0OiBhbnksIGtleXM6IFByb3BlcnR5S2V5IHwgUHJvcGVydHlLZXlbXSk6IHVua25vd24ge1xuICAgaWYgKEFycmF5LmlzQXJyYXkoa2V5cykpIHtcbiAgICAgIHJldHVybiBrZXlzLnJlZHVjZSgoYWNjLCBrZXkpID0+IHtcbiAgICAgICAgIGFjY1trZXldID0gb2JqZWN0W2tleV1cbiAgICAgICAgIHJldHVybiBhY2NcbiAgICAgIH0sIHt9IGFzIGFueSlcbiAgIH1cbiAgIHJldHVybiBvYmplY3Rba2V5c11cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHNsaWNlPFQgZXh0ZW5kcyB7fSwgVSBleHRlbmRzIGtleW9mIFQ+KHRva2VuOiBQcm92aWRlclRva2VuPFQ+LCBrZXk6IFUsIGluamVjdG9yPzogSW5qZWN0b3IpOiBPYnNlcnZhYmxlPFRbVV0+XG5leHBvcnQgZnVuY3Rpb24gc2xpY2U8VCBleHRlbmRzIHt9LCBVIGV4dGVuZHMgKGtleW9mIFQpW10+KHRva2VuOiBQcm92aWRlclRva2VuPFQ+LCBrZXk6IFUsIGluamVjdG9yPzogSW5qZWN0b3IpOiBPYnNlcnZhYmxlPFBpY2s8VCwgVVtudW1iZXJdPj5cbmV4cG9ydCBmdW5jdGlvbiBzbGljZSh0b2tlbjogUHJvdmlkZXJUb2tlbjxhbnk+LCBrZXlzOiBhbnksIGluamVjdG9yID0gaW5qZWN0KElOSkVDVE9SKSk6IE9ic2VydmFibGU8dW5rbm93bj4ge1xuICAgcmV0dXJuIGRlZmVyKCgpID0+IHtcbiAgICAgIGNvbnN0IGNvbnRleHQgPSBpbmplY3Rvci5nZXQodG9rZW4pXG4gICAgICByZXR1cm4gc3RvcmUodG9rZW4sIGluamVjdG9yKS5waXBlKFxuICAgICAgICAgbWFwKChjb250ZXh0KSA9PiBwaWNrKGNvbnRleHQsIGtleXMpKSxcbiAgICAgICAgIHN0YXJ0V2l0aChwaWNrKGNvbnRleHQsIGtleXMpKSxcbiAgICAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKChhLCBiKSA9PiAhQXJyYXkuaXNBcnJheShrZXlzKSA/IE9iamVjdC5pcyhhLCBiKSA6IGtleXMuZXZlcnkoa2V5ID0+IE9iamVjdC5pcyhhW2tleV0sIGJba2V5XSkpKVxuICAgICAgKVxuICAgfSlcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHN0b3JlPFQgZXh0ZW5kcyB7fT4odG9rZW46IFByb3ZpZGVyVG9rZW48VD4sIGluamVjdG9yID0gaW5qZWN0KElOSkVDVE9SKSk6IE9ic2VydmFibGU8VD4ge1xuICAgcmV0dXJuIGRlZmVyKCgpID0+IHtcbiAgICAgIGNvbnN0IGNvbnRleHQgPSBpbmplY3Rvci5nZXQodG9rZW4pXG4gICAgICByZXR1cm4gaW5qZWN0b3IuZ2V0KEVWRU5UUykucGlwZShcbiAgICAgICAgIGZpbHRlcihldmVudCA9PiBldmVudC5jaGFuZ2VzLmhhcyhjb250ZXh0KSksXG4gICAgICAgICBtYXAoKCkgPT4gY29udGV4dClcbiAgICAgKVxuICAgfSlcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlucHV0czxUPih0b2tlbjogUHJvdmlkZXJUb2tlbjxUPiwgaW5qZWN0b3IgPSBpbmplY3QoSU5KRUNUT1IpKTogT2JzZXJ2YWJsZTxUeXBlZENoYW5nZXM8VD4+IHtcbiAgIHJldHVybiBkZWZlcigoKSA9PiB7XG4gICAgICByZXR1cm4gZXZlbnRzKHRva2VuLCBpbmplY3RvcikucGlwZShcbiAgICAgICAgIGZpbHRlcigoZXZlbnQ6IFN0b3JlRXZlbnQpOiBldmVudCBpcyBEaXNwYXRjaEV2ZW50ID0+IGV2ZW50Lm5hbWUgPT09IFwibmdPbkNoYW5nZXNcIiksXG4gICAgICAgICBtYXAoZXZlbnQgPT4gZXZlbnQudmFsdWUgYXMgVHlwZWRDaGFuZ2VzPFQ+KVxuICAgICAgKVxuICAgfSlcbn1cblxuZXhwb3J0IGludGVyZmFjZSBXaXRoU3RhdGVPcHRpb25zPFQ+IHtcbiAgIGZyb20/OiBPYnNlcnZhYmxlPFQ+XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgV2l0aFN0YXRlPFQ+IHtcbiAgIHNvdXJjZTogT2JzZXJ2YWJsZTxUPlxuICAgZGVzdGluYXRpb246IEJlaGF2aW9yU3ViamVjdDxUPlxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNlbGVjdG9yIHtcbiAgIG5ldzxUPihuYW1lOiBzdHJpbmcsIGZhY3Rvcnk6IChzb3VyY2U6IE9ic2VydmFibGU8VD4pID0+IFdpdGhTdGF0ZTxUPik6IFR5cGU8QmVoYXZpb3JTdWJqZWN0PFQ+PlxuICAgbmV3PFQ+KG5hbWU6IHN0cmluZywgZmFjdG9yeTogKHNvdXJjZTogT2JzZXJ2YWJsZTxUPikgPT4gT2JzZXJ2YWJsZTxUPik6IFR5cGU8T2JzZXJ2YWJsZTxUPj5cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHdpdGhTdGF0ZTxUPihpbml0aWFsOiBULCBvcHRpb25zOiBXaXRoU3RhdGVPcHRpb25zPFQ+ID0ge30pOiBXaXRoU3RhdGU8VD4ge1xuICAgY29uc3QgZGVzdGluYXRpb24gPSBuZXcgQmVoYXZpb3JTdWJqZWN0KGluaXRpYWwpXG4gICBjb25zdCBzb3VyY2UgPSBvcHRpb25zLmZyb20gPz8gRU1QVFlcblxuICAgcmV0dXJuIHtcbiAgICAgIGRlc3RpbmF0aW9uLFxuICAgICAgc291cmNlLFxuICAgfVxufVxuXG5leHBvcnQgY29uc3QgU2VsZWN0b3I6IFNlbGVjdG9yID0gZnVuY3Rpb24gU2VsZWN0b3IobmFtZTogc3RyaW5nLCBzZWxlY3Q6IEZ1bmN0aW9uKSB7XG4gICBASW5qZWN0YWJsZSgpXG4gICBjbGFzcyBTZWxlY3RvciBpbXBsZW1lbnRzIE9uU2VsZWN0IHtcbiAgICAgIHNvdXJjZTogT2JzZXJ2YWJsZTxhbnk+XG4gICAgICBkZXN0aW5hdGlvbjogQmVoYXZpb3JTdWJqZWN0PGFueT5cbiAgICAgIGNvbm5lY3RlZCA9IGZhbHNlXG4gICAgICBzdWJzY3JpcHRpb24gPSBuZXcgU3Vic2NyaXB0aW9uKClcbiAgICAgIHRhcmdldDogU3ViamVjdDxhbnk+XG5cbiAgICAgIFtvYnNlcnZhYmxlXSgpIHtcbiAgICAgICAgIHJldHVybiB0aGlzXG4gICAgICB9XG5cbiAgICAgIGdldCB2YWx1ZSgpIHtcbiAgICAgICAgIHJldHVybiB0aGlzLmRlc3RpbmF0aW9uLnZhbHVlXG4gICAgICB9XG5cbiAgICAgIGNvbm5lY3QoKSB7XG4gICAgICAgICBpZiAoIXRoaXMuY29ubmVjdGVkKSB7XG4gICAgICAgICAgICB0aGlzLmNvbm5lY3RlZCA9IHRydWVcbiAgICAgICAgICAgIHRoaXMuc3Vic2NyaXB0aW9uLmFkZCh0aGlzLnNvdXJjZS5zdWJzY3JpYmUodGhpcy5kZXN0aW5hdGlvbikpXG4gICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIG5leHQodmFsdWU6IGFueSkge1xuICAgICAgICAgdGhpcy50YXJnZXQubmV4dCh2YWx1ZSlcbiAgICAgIH1cblxuICAgICAgbmdPblNlbGVjdChvYnNlcnZlcjogUGFydGlhbDxPYnNlcnZlcjxhbnk+Pikge1xuICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmRlc3RpbmF0aW9uLnBpcGUoc2tpcCgxKSkuc3Vic2NyaWJlKG9ic2VydmVyKVxuICAgICAgICAgfSBmaW5hbGx5IHtcbiAgICAgICAgICAgIHRoaXMuY29ubmVjdCgpXG4gICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHBpcGUoLi4ub3BlcmF0b3JzOiBhbnlbXSkge1xuICAgICAgICAgcmV0dXJuIHRoaXMuZGVzdGluYXRpb24ucGlwZSguLi5vcGVyYXRvcnMgYXMgW10pXG4gICAgICB9XG5cbiAgICAgIHN1YnNjcmliZShvYnNlcnZlcjogYW55KSB7XG4gICAgICAgICB0cnkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuZGVzdGluYXRpb24uc3Vic2NyaWJlKG9ic2VydmVyKVxuICAgICAgICAgfSBmaW5hbGx5IHtcbiAgICAgICAgICAgIHRoaXMuY29ubmVjdCgpXG4gICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIG5nT25EZXN0cm95KCkge1xuICAgICAgICAgdGhpcy5zdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKVxuICAgICAgfVxuXG4gICAgICBjb25zdHJ1Y3RvcigpIHtcbiAgICAgICAgIGNvbnN0IHN1YmplY3QgPSBuZXcgU3ViamVjdCgpXG4gICAgICAgICBjb25zdCBzZWxlY3Rpb24gPSBzZWxlY3Qoc3ViamVjdClcbiAgICAgICAgIGlmIChpc09ic2VydmFibGUoc2VsZWN0aW9uKSkge1xuICAgICAgICAgICAgdGhpcy5zb3VyY2UgPSBzZWxlY3Rpb25cbiAgICAgICAgICAgIHRoaXMuZGVzdGluYXRpb24gPSBuZXcgQmVoYXZpb3JTdWJqZWN0KHVuZGVmaW5lZClcbiAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLnNvdXJjZSA9IHNlbGVjdGlvbi5zb3VyY2VcbiAgICAgICAgICAgIHRoaXMuZGVzdGluYXRpb24gPSBzZWxlY3Rpb24uZGVzdGluYXRpb25cbiAgICAgICAgIH1cbiAgICAgICAgIHRoaXMudGFyZ2V0ID0gc2VsZWN0Lmxlbmd0aCA+IDAgPyBzdWJqZWN0IDogdGhpcy5kZXN0aW5hdGlvblxuICAgICAgfVxuXG4gICAgICBzdGF0aWMgb3ZlcnJpZGRlbk5hbWUgPSBuYW1lXG4gICB9XG4gICByZXR1cm4gU2VsZWN0b3Jcbn0gYXMgYW55XG5cbmNsYXNzIFNlbGVjdE9ic2VydmVyIHtcbiAgIG5leHQodmFsdWU6IGFueSkge1xuICAgICAgY29uc3QgcHJldmlvdXMgPSB0aGlzLnRhcmdldFt0aGlzLmtleV1cbiAgICAgIHRoaXMudGFyZ2V0W3RoaXMua2V5XSA9IHRyYWNrKHZhbHVlKVxuICAgICAgY29uc3QgY2hhbmdlcyA9IG5ldyBNYXAoW1t0aGlzLnRhcmdldCwgbmV3IE1hcChbW3RoaXMua2V5LCBwcmV2aW91c11dKV1dKVxuICAgICAgdGhpcy5ldmVudC5zY2hlZHVsZShFdmVudFR5cGUuRGlzcGF0Y2gsIHRoaXMua2V5LCB2YWx1ZSwgY2hhbmdlcylcbiAgICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpXG4gICB9XG4gICBlcnJvcihlcnJvcjogdW5rbm93bikge1xuICAgICAgY29uc29sZS5lcnJvcihcIkVycm9yIHRocm93biBpbiBTZWxlY3RcIilcbiAgICAgIGNvbnNvbGUuZXJyb3IoXCJEaXJlY3RpdmU6XCIsIHRoaXMudGFyZ2V0KVxuICAgICAgY29uc29sZS5lcnJvcihcIktleTpcIiwgdGhpcy5rZXkpXG4gICAgICB0aGlzLmVycm9ySGFuZGxlci5oYW5kbGVFcnJvcihlcnJvcilcbiAgIH1cbiAgIGNvbXBsZXRlKCkge31cbiAgIGNvbnN0cnVjdG9yKHByaXZhdGUgdGFyZ2V0OiBhbnksIHByaXZhdGUga2V5OiBhbnksIHByaXZhdGUgZXZlbnQ6IEV2ZW50U2NoZWR1bGVyLCBwcml2YXRlIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsIHByaXZhdGUgZXJyb3JIYW5kbGVyOiBFcnJvckhhbmRsZXIpIHt9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBzdWJzY3JpYmU8VCBleHRlbmRzIHt9Pih0b2tlbjogUHJvdmlkZXJUb2tlbjxUPiB8IHVuZGVmaW5lZCwgZGlyZWN0aXZlOiBhbnksIGtleTogc3RyaW5nKTogYW55IHtcbiAgIGNvbnN0IGluc3RhbmNlID0gIHRva2VuID8gaW5qZWN0KHRva2VuKSA6IGRpcmVjdGl2ZVtrZXldXG4gICBjb25zdCBvYnNlcnZlciA9IG5ldyBTZWxlY3RPYnNlcnZlcihkaXJlY3RpdmUsIGtleSwgaW5qZWN0KEV2ZW50U2NoZWR1bGVyKSwgaW5qZWN0KENoYW5nZURldGVjdG9yUmVmKSwgaW5qZWN0KEVycm9ySGFuZGxlcikpXG4gICBjb25zdCBzdWJzY3JpcHRpb24gPSBpbnN0YW5jZS5uZ09uU2VsZWN0Py4ob2JzZXJ2ZXIpID8/IGluc3RhbmNlLnN1YnNjcmliZT8uKG9ic2VydmVyKVxuICAgaWYgKCFzdWJzY3JpcHRpb24pIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ0RpcmVjdGl2ZTonLCBkaXJlY3RpdmUpXG4gICAgICBjb25zb2xlLmVycm9yKCdLZXk6Jywga2V5KVxuICAgICAgY29uc29sZS5lcnJvcignT2JqZWN0OicsIGluc3RhbmNlKVxuICAgICAgdGhyb3cgbmV3IEVycm9yKGBPYmplY3QgZG9lcyBub3QgaW1wbGVtZW50IE9uU2VsZWN0IG9yIFN1YnNjcmliYWJsZSBpbnRlcmZhY2VzYClcbiAgIH1cbiAgIGRpcmVjdGl2ZVtrZXldID0gdHJhY2soZGlyZWN0aXZlW2tleV0pXG4gICBhZGRUZWFyZG93bihzdWJzY3JpcHRpb24pXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgT25TZWxlY3Qge1xuICAgbmdPblNlbGVjdChvYnNlcnZlcjogT2JzZXJ2ZXI8YW55Pik6IFN1YnNjcmlwdGlvblxufVxuIl19 |
+11
-7
@@ -1,2 +0,2 @@ | ||
| import { inject, INJECTOR } from "@angular/core"; | ||
| import { inject, InjectionToken, INJECTOR } from "@angular/core"; | ||
| import { defer, filter, map, Observable } from "rxjs"; | ||
@@ -27,9 +27,13 @@ import { EventType } from "./interfaces"; | ||
| export function noop() { } | ||
| let id = 0; | ||
| export function getId() { | ||
| return id++; | ||
| } | ||
| export const UID = new InjectionToken("UID", { | ||
| factory() { | ||
| let id = 0; | ||
| return function getId() { | ||
| return id++; | ||
| }; | ||
| } | ||
| }); | ||
| export function events(token, injector = inject(INJECTOR)) { | ||
| return defer(() => { | ||
| const context = injector.get(token); | ||
| const context = typeof token === "function" ? injector.get(token) : token; | ||
| return injector.get(EVENTS).pipe(filter(event => event.context === context)); | ||
@@ -84,2 +88,2 @@ }); | ||
| } | ||
| //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3NyYy91dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsTUFBTSxFQUFZLFFBQVEsRUFBZ0IsTUFBTSxlQUFlLENBQUM7QUFDeEUsT0FBTyxFQUFDLEtBQUssRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLFVBQVUsRUFBd0IsTUFBTSxNQUFNLENBQUM7QUFDM0UsT0FBTyxFQUdKLFNBQVMsRUFLWCxNQUFNLGNBQWMsQ0FBQztBQUN0QixPQUFPLEVBQUMsTUFBTSxFQUFFLFdBQVcsRUFBRSxZQUFZLEVBQUMsTUFBTSxhQUFhLENBQUM7QUFDOUQsT0FBTyxFQUFDLEtBQUssRUFBRSxPQUFPLEVBQUMsTUFBTSxTQUFTLENBQUM7QUFFdkMsTUFBTSxVQUFVLGFBQWEsQ0FBQyxHQUFXO0lBQ3RDLE1BQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxjQUFjLENBQUMsR0FBRyxDQUFDLENBQUE7SUFDeEMsT0FBTyxLQUFLLEtBQUssSUFBSSxJQUFJLEtBQUssS0FBSyxNQUFNLENBQUMsU0FBUyxDQUFBO0FBQ3RELENBQUM7QUFFRCxNQUFNLFVBQVUsSUFBSSxDQUFDLE1BQXdCLEVBQUUsR0FBVyxFQUFFLEdBQUcsSUFBVztJQUN2RSxPQUFPLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxDQUFBO0FBQ3pDLENBQUM7QUFFRCxNQUFNLFVBQVUsSUFBSSxDQUFDLE1BQW1DLEVBQUUsUUFBcUIsRUFBRSxFQUFzQztJQUNwSCxNQUFNLFVBQVUsR0FBRyxNQUFNLENBQUMsd0JBQXdCLENBQUMsTUFBTSxFQUFFLFFBQVEsQ0FBRSxDQUFBO0lBQ3JFLE1BQU0sTUFBTSxHQUFHLFVBQVUsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUE7SUFDL0MsTUFBTSxVQUFV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QyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQzdCLENBQUE7QUFDSixDQUFDO0FBRUQsTUFBTSxVQUFVLGFBQWEsQ0FBMEIsS0FBdUIsRUFBRSxJQUFVLEVBQUUsUUFBbUI7SUFDNUcsT0FBTyxNQUFNLENBQUMsS0FBSyxFQUFFLFFBQVEsQ0FBQyxDQUFDLElBQUksQ0FDaEMsZ0JBQWdCLENBQWdCLElBQUksRUFBRSxTQUFTLENBQUMsUUFBUSxDQUFDLENBQzNELENBQUE7QUFDSixDQUFDO0FBRUQsTUFBTSxVQUFVLFFBQVEsQ0FBMEIsS0FBdUIsRUFBRSxJQUFVLEVBQUUsUUFBbUI7SUFDdkcsT0FBTyxhQUFhLENBQUMsS0FBSyxFQUFFLElBQUksRUFBRSxRQUFRLENBQUMsQ0FBQyxJQUFJLENBQzdDLGdCQUFnQixDQUFnQixJQUFJLEVBQUUsU0FBUyxDQUFDLFFBQVEsQ0FBQyxFQUN6RCxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsU0FBUyxDQUFDLENBQ3RCLENBQUE7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtpbmplY3QsIEluamVjdG9yLCBJTkpFQ1RPUiwgUHJvdmlkZXJUb2tlbn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7ZGVmZXIsIGZpbHRlciwgbWFwLCBPYnNlcnZhYmxlLCBPcGVyYXRvckZ1bmN0aW9uLCB0YXB9IGZyb20gXCJyeGpzXCI7XG5pbXBvcnQge1xuICAgQ29tcGxldGVFdmVudCxcbiAgIERpc3BhdGNoRXZlbnQsIEVycm9yRXZlbnQsXG4gICBFdmVudFR5cGUsXG4gICBFeHRyYWN0RXZlbnRzLCBOZXh0RXZlbnQsXG4gICBTdG9yZUNvbmZpZyxcbiAgIFN0b3JlRXZlbnQsXG4gICBab25lQ29tcGF0aWJsZVxufSBmcm9tIFwiLi9pbnRlcmZhY2VzXCI7XG5pbXBvcnQge0VWRU5UUywgUk9PVF9DT05GSUcsIFNUT1JFX0NPTkZJR30gZnJvbSBcIi4vcHJvdmlkZXJzXCI7XG5pbXBvcnQge3RyYWNrLCB1bnRyYWNrfSBmcm9tIFwiLi9wcm94eVwiO1xuXG5leHBvcnQgZnVuY3Rpb24gaXNQbGFpbk9iamVjdChvYmo6IG9iamVjdCkge1xuICAgY29uc3QgcHJvdG8gPSBPYmplY3QuZ2V0UHJvdG90eXBlT2Yob2JqKVxuICAgcmV0dXJuIHByb3RvID09PSBudWxsIHx8IHByb3RvID09PSBPYmplY3QucHJvdG90eXBlXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjYWxsKHRhcmdldDogUmVjb3JkPGFueSwgYW55Piwga2V5OiBzdHJpbmcsIC4uLmFyZ3M6IGFueVtdKSB7XG4gICByZXR1cm4gdGFyZ2V0W2tleV0uYXBwbHkodGFyZ2V0LCBhcmdzKVxufVxuXG5leHBvcnQgZnVuY3Rpb24gd3JhcCh0YXJnZXQ6IHsgW2tleTogUHJvcGVydHlLZXldOiBhbnkgfSwgcHJvcGVydHk6IFByb3BlcnR5S2V5LCBmbjogKHRoaXM6IGFueSwgLi4uYXJnczogYW55W10pID0+IGFueSkge1xuICAgY29uc3QgZGVzY3JpcHRvciA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IodGFyZ2V0LCBwcm9wZXJ0eSkhXG4gICBjb25zdCBvYmplY3QgPSBkZXNjcmlwdG9yID8gZGVzY3JpcHRvciA6IHRhcmdldFxuICAgY29uc3QgZ2V0T3JWYWx1ZSA9IGRlc2NyaXB0b3I/LmdldCA/IFwiZ2V0XCIgOiBcInZhbHVlXCJcbiAgIGNvbnN0IG9yaWdpbmFsRnVuY3Rpb24gPSAoZGVzY3JpcHRvciA/IGRlc2NyaXB0b3JbZ2V0T3JWYWx1ZV0gOiBvYmplY3RbcHJvcGVydHldKSA/PyBub29wXG5cbiAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0YXJnZXQsIHByb3BlcnR5LCB7XG4gICAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgICBbZ2V0T3JWYWx1ZV06IGZ1bmN0aW9uICh0aGlzOiB1bmtub3duLCAuLi5hcmdzOiBhbnlbXSkge1xuICAgICAgICAgcmV0dXJuIGZuLmNhbGwodW50cmFjayh0aGlzKSwgb3JpZ2luYWxGdW5jdGlvbiwgLi4uYXJncylcbiAgICAgIH1cbiAgIH0pXG5cbiAgIHJldHVybiBvcmlnaW5hbEZ1bmN0aW9uID09PSBub29wXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBub29wKCkge31cblxubGV0IGlkID0gMFxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0SWQoKSB7XG4gICByZXR1cm4gaWQrK1xufVxuXG5cbmV4cG9ydCBmdW5jdGlvbiBldmVudHM8VD4odG9rZW46IFByb3ZpZGVyVG9rZW48VD4sIGluamVjdG9yID0gaW5qZWN0KElOSkVDVE9SKSk6IE9ic2VydmFibGU8RXh0cmFjdEV2ZW50czxULCBrZXlvZiBUPj4ge1xuICAgcmV0dXJuIGRlZmVyKCgpID0+IHtcbiAgICAgIGNvbnN0IGNvbnRleHQgPSBpbmplY3Rvci5nZXQodG9rZW4pXG4gICAgICByZXR1cm4gaW5qZWN0b3IuZ2V0KEVWRU5UUykucGlwZShcbiAgICAgICAgIGZpbHRlcihldmVudCA9PiBldmVudC5jb250ZXh0ID09PSBjb250ZXh0KVxuICAgICAgKVxuICAgfSkgYXMgT2JzZXJ2YWJsZTxFeHRyYWN0RXZlbnRzPFQsIGtleW9mIFQ+PlxufVxuXG5leHBvcnQgZnVuY3Rpb24gY29uZmlndXJlU3RvcmUoY29uZmlnOiBTdG9yZUNvbmZpZykge1xuICAgcmV0dXJuIHtcbiAgICAgIHByb3ZpZGU6IGNvbmZpZy5yb290ID8gUk9PVF9DT05GSUcgOiBTVE9SRV9DT05GSUcsXG4gICAgICB1c2VWYWx1ZTogY29uZmlnXG4gICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBvYnNlcnZlSW5ab25lPFQ+KHNvdXJjZTogT2JzZXJ2YWJsZTxUPiwgem9uZTogWm9uZUNvbXBhdGlibGUpOiBPYnNlcnZhYmxlPFQ+IHtcbiAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZShzdWJzY3JpYmVyID0+IHtcbiAgICAgIHJldHVybiB6b25lLnJ1bigoKSA9PiB7XG4gICAgICAgICByZXR1cm4gc291cmNlLnN1YnNjcmliZShzdWJzY3JpYmVyKVxuICAgICAgfSlcbiAgIH0pXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXQ8VCBleHRlbmRzIHsgdmFsdWU6IHVua25vd24gfT4odG9rZW46IFByb3ZpZGVyVG9rZW48VD4pOiBUW1widmFsdWVcIl0ge1xuICAgcmV0dXJuIHRyYWNrKGluamVjdCh0b2tlbikudmFsdWUpXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBzZXQ8VCBleHRlbmRzIHsgdmFsdWU6IHVua25vd24sIG5leHQ6ICh2YWx1ZTogVFtcInZhbHVlXCJdKSA9PiB2b2lkIH0+KHRva2VuOiBQcm92aWRlclRva2VuPFQ+LCB2YWx1ZTogVFtcInZhbHVlXCJdKTogdm9pZCB7XG4gICBpbmplY3QodG9rZW4pLm5leHQodmFsdWUpXG59XG5cbnR5cGUgQWN0aW9uUGFyYW1zPFQ+ID0gVCBleHRlbmRzICguLi5wYXJhbXM6IGluZmVyIFBhcmFtcykgPT4gYW55ID8gUGFyYW1zIGV4dGVuZHMgeyBsZW5ndGg6IDEgfSA/IFBhcmFtc1swXSA6IFBhcmFtcyA6IG5ldmVyXG5cbmZ1bmN0aW9uIGZpbHRlckJ5TmFtZVR5cGU8VCBleHRlbmRzIFN0b3JlRXZlbnQ+KG5hbWU6IFByb3BlcnR5S2V5LCB0eXBlOiBFdmVudFR5cGUpOiBPcGVyYXRvckZ1bmN0aW9uPGFueSwgVD4ge1xuICAgcmV0dXJuIGZpbHRlcigoZXZlbnQ6IFN0b3JlRXZlbnQpOiBldmVudCBpcyBUID0+IGV2ZW50Lm5hbWUgPT09IG5hbWUgJiYgZXZlbnQudHlwZSA9PT0gdHlwZSlcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGFjdGlvbkV2ZW50PFQsIFRLZXkgZXh0ZW5kcyBrZXlvZiBUPih0b2tlbjogUHJvdmlkZXJUb2tlbjxUPiwgbmFtZTogVEtleSwgaW5qZWN0b3I/OiBJbmplY3Rvcik6IE9ic2VydmFibGU8RGlzcGF0Y2hFdmVudD4ge1xuICAgcmV0dXJuIGV2ZW50cyh0b2tlbiwgaW5qZWN0b3IpLnBpcGUoXG4gICAgICBmaWx0ZXJCeU5hbWVUeXBlPERpc3BhdGNoRXZlbnQ8YW55LCBhbnksIGFueVtdPj4obmFtZSwgRXZlbnRUeXBlLkRpc3BhdGNoKSxcbiAgIClcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGFjdGlvbjxULCBUS2V5IGV4dGVuZHMga2V5b2YgVD4odG9rZW46IFByb3ZpZGVyVG9rZW48VD4sIG5hbWU6IFRLZXksIGluamVjdG9yPzogSW5qZWN0b3IpOiBPYnNlcnZhYmxlPEFjdGlvblBhcmFtczxUW1RLZXldPj4ge1xuICAgcmV0dXJuIGFjdGlvbkV2ZW50KHRva2VuLCBuYW1lLCBpbmplY3RvcikucGlwZShcbiAgICAgIG1hcCgoZXZlbnQ6IGFueSkgPT4gZXZlbnQudmFsdWUpXG4gICApXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBuZXh0RXZlbnQ8VCwgVEtleSBleHRlbmRzIGtleW9mIFQ+KHRva2VuOiBQcm92aWRlclRva2VuPFQ+LCBuYW1lOiBUS2V5LCBpbmplY3Rvcj86IEluamVjdG9yKTogT2JzZXJ2YWJsZTxOZXh0RXZlbnQ+IHtcbiAgIHJldHVybiBldmVudHModG9rZW4sIGluamVjdG9yKS5waXBlKFxuICAgICAgZmlsdGVyQnlOYW1lVHlwZTxOZXh0RXZlbnQ+KG5hbWUsIEV2ZW50VHlwZS5OZXh0KVxuICAgKVxufVxuXG5leHBvcnQgZnVuY3Rpb24gbmV4dDxULCBUS2V5IGV4dGVuZHMga2V5b2YgVD4odG9rZW46IFByb3ZpZGVyVG9rZW48VD4sIG5hbWU6IFRLZXksIGluamVjdG9yPzogSW5qZWN0b3IpOiBPYnNlcnZhYmxlPFRbVEtleV0gZXh0ZW5kcyAoKSA9PiBpbmZlciBSID8gUiBleHRlbmRzIE9ic2VydmFibGU8aW5mZXIgUz4gPyBTIDogbmV2ZXIgOiBuZXZlcj4ge1xuICAgcmV0dXJuIG5leHRFdmVudCh0b2tlbiwgbmFtZSwgaW5qZWN0b3IpLnBpcGUoXG4gICAgICBtYXAoKGV2ZW50KSA9PiBldmVudC52YWx1ZSlcbiAgIClcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGVycm9yRXZlbnQ8VCwgVEtleSBleHRlbmRzIGtleW9mIFQ+KHRva2VuOiBQcm92aWRlclRva2VuPFQ+LCBuYW1lOiBUS2V5LCBpbmplY3Rvcj86IEluamVjdG9yKTogT2JzZXJ2YWJsZTxFcnJvckV2ZW50PiB7XG4gICByZXR1cm4gZXZlbnRzKHRva2VuLCBpbmplY3RvcikucGlwZShcbiAgICAgIGZpbHRlckJ5TmFtZVR5cGU8RXJyb3JFdmVudD4obmFtZSwgRXZlbnRUeXBlLkVycm9yKVxuICAgKVxufVxuXG5leHBvcnQgZnVuY3Rpb24gZXJyb3I8VCwgVEtleSBleHRlbmRzIGtleW9mIFQ+KHRva2VuOiBQcm92aWRlclRva2VuPFQ+LCBuYW1lOiBUS2V5LCBpbmplY3Rvcj86IEluamVjdG9yKTogT2JzZXJ2YWJsZTx1bmtub3duPiB7XG4gICByZXR1cm4gZXJyb3JFdmVudCh0b2tlbiwgbmFtZSwgaW5qZWN0b3IpLnBpcGUoXG4gICAgICBtYXAoKGV2ZW50KSA9PiBldmVudC52YWx1ZSlcbiAgIClcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGNvbXBsZXRlRXZlbnQ8VCwgVEtleSBleHRlbmRzIGtleW9mIFQ+KHRva2VuOiBQcm92aWRlclRva2VuPFQ+LCBuYW1lOiBUS2V5LCBpbmplY3Rvcj86IEluamVjdG9yKTogT2JzZXJ2YWJsZTxDb21wbGV0ZUV2ZW50PiB7XG4gICByZXR1cm4gZXZlbnRzKHRva2VuLCBpbmplY3RvcikucGlwZShcbiAgICAgIGZpbHRlckJ5TmFtZVR5cGU8Q29tcGxldGVFdmVudD4obmFtZSwgRXZlbnRUeXBlLkNvbXBsZXRlKVxuICAgKVxufVxuXG5leHBvcnQgZnVuY3Rpb24gY29tcGxldGU8VCwgVEtleSBleHRlbmRzIGtleW9mIFQ+KHRva2VuOiBQcm92aWRlclRva2VuPFQ+LCBuYW1lOiBUS2V5LCBpbmplY3Rvcj86IEluamVjdG9yKTogT2JzZXJ2YWJsZTx2b2lkPiB7XG4gICByZXR1cm4gY29tcGxldGVFdmVudCh0b2tlbiwgbmFtZSwgaW5qZWN0b3IpLnBpcGUoXG4gICAgICBmaWx0ZXJCeU5hbWVUeXBlPENvbXBsZXRlRXZlbnQ+KG5hbWUsIEV2ZW50VHlwZS5Db21wbGV0ZSksXG4gICAgICBtYXAoKCkgPT4gdW5kZWZpbmVkKVxuICAgKVxufVxuIl19 | ||
| //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3NyYy91dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsTUFBTSxFQUFFLGNBQWMsRUFBWSxRQUFRLEVBQWdCLE1BQU0sZUFBZSxDQUFDO0FBQ3hGLE9BQU8sRUFBQyxLQUFLLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxVQUFVLEVBQXdCLE1BQU0sTUFBTSxDQUFDO0FBQzNFLE9BQU8sRUFHSixTQUFTLEVBS1gsTUFBTSxjQUFjLENBQUM7QUFDdEIsT0FBTyxFQUFDLE1BQU0sRUFBRSxXQUFXLEVBQUUsWUFBWSxFQUFDLE1BQU0sYUFBYSxDQUFDO0FBQzlELE9BQU8sRUFBQyxLQUFLLEVBQUUsT0FBTyxFQUFDLE1BQU0sU0FBUyxDQUFDO0FBRXZDLE1BQU0sVUFBVSxhQUFhLENBQUMsR0FBVztJQUN0QyxNQUFNLEtBQUssR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxDQUFBO0lBQ3hDLE9BQU8sS0FBSyxLQUFLLElBQUksSUFBSSxLQUFLLEtBQUssTUFBTSxDQUFDLFNBQVMsQ0FBQTtBQUN0RCxDQUFDO0FBRUQsTUFBTSxVQUFVLElBQUksQ0FBQyxNQUF3QixFQUFFLEdBQVcsRUFBRSxHQUFHLElBQVc7SUFDdkUsT0FBTyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsS0FBSyxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsQ0FBQTtBQUN6QyxDQUFDO0FBRUQsTUFBTSxVQUFVLElBQUksQ0FBQyxNQUFtQyxFQUFFLFFBQXFCLEVBQUUsRUFBc0M7SUFDcEgsTUFBTSxVQUFVLEdBQUcsTUFBTSxDQUFDLHdCQUF3QixDQUFDLE1BQU0sRUFBRSxRQUFRLENBQUUsQ0FBQTtJQUNyRSxNQUFNLE1BQU0sR0FBRyxVQUFVLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFBO0lBQy9D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Q0osQ0FBQztBQUVELE1BQU0sVUFBVSxLQUFLLENBQTBCLEtBQXVCLEVBQUUsSUFBVSxFQUFFLFFBQW1CO0lBQ3BHLE9BQU8sVUFBVSxDQUFDLEtBQUssRUFBRSxJQUFJLEVBQUUsUUFBUSxDQUFDLENBQUMsSUFBSSxDQUMxQyxHQUFHLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FDN0IsQ0FBQTtBQUNKLENBQUM7QUFFRCxNQUFNLFVBQVUsYUFBYSxDQUEwQixLQUF1QixFQUFFLElBQVUsRUFBRSxRQUFtQjtJQUM1RyxPQUFPLE1BQU0sQ0FBQyxLQUFLLEVBQUUsUUFBUSxDQUFDLENBQUMsSUFBSSxDQUNoQyxnQkFBZ0IsQ0FBZ0IsSUFBSSxFQUFFLFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FDM0QsQ0FBQTtBQUNKLENBQUM7QUFFRCxNQUFNLFVBQVUsUUFBUSxDQUEwQixLQUF1QixFQUFFLElBQVUsRUFBRSxRQUFtQjtJQUN2RyxPQUFPLGFBQWEsQ0FBQyxLQUFLLEVBQUUsSUFBSSxFQUFFLFFBQVEsQ0FBQyxDQUFDLElBQUksQ0FDN0MsZ0JBQWdCLENBQWdCLElBQUksRUFBRSxTQUFTLENBQUMsUUFBUSxDQUFDLEVBQ3pELEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxTQUFTLENBQUMsQ0FDdEIsQ0FBQTtBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge2luamVjdCwgSW5qZWN0aW9uVG9rZW4sIEluamVjdG9yLCBJTkpFQ1RPUiwgUHJvdmlkZXJUb2tlbn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7ZGVmZXIsIGZpbHRlciwgbWFwLCBPYnNlcnZhYmxlLCBPcGVyYXRvckZ1bmN0aW9uLCB0YXB9IGZyb20gXCJyeGpzXCI7XG5pbXBvcnQge1xuICAgQ29tcGxldGVFdmVudCxcbiAgIERpc3BhdGNoRXZlbnQsIEVycm9yRXZlbnQsXG4gICBFdmVudFR5cGUsXG4gICBFeHRyYWN0RXZlbnRzLCBOZXh0RXZlbnQsXG4gICBTdG9yZUNvbmZpZyxcbiAgIFN0b3JlRXZlbnQsXG4gICBab25lQ29tcGF0aWJsZVxufSBmcm9tIFwiLi9pbnRlcmZhY2VzXCI7XG5pbXBvcnQge0VWRU5UUywgUk9PVF9DT05GSUcsIFNUT1JFX0NPTkZJR30gZnJvbSBcIi4vcHJvdmlkZXJzXCI7XG5pbXBvcnQge3RyYWNrLCB1bnRyYWNrfSBmcm9tIFwiLi9wcm94eVwiO1xuXG5leHBvcnQgZnVuY3Rpb24gaXNQbGFpbk9iamVjdChvYmo6IG9iamVjdCkge1xuICAgY29uc3QgcHJvdG8gPSBPYmplY3QuZ2V0UHJvdG90eXBlT2Yob2JqKVxuICAgcmV0dXJuIHByb3RvID09PSBudWxsIHx8IHByb3RvID09PSBPYmplY3QucHJvdG90eXBlXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjYWxsKHRhcmdldDogUmVjb3JkPGFueSwgYW55Piwga2V5OiBzdHJpbmcsIC4uLmFyZ3M6IGFueVtdKSB7XG4gICByZXR1cm4gdGFyZ2V0W2tleV0uYXBwbHkodGFyZ2V0LCBhcmdzKVxufVxuXG5leHBvcnQgZnVuY3Rpb24gd3JhcCh0YXJnZXQ6IHsgW2tleTogUHJvcGVydHlLZXldOiBhbnkgfSwgcHJvcGVydHk6IFByb3BlcnR5S2V5LCBmbjogKHRoaXM6IGFueSwgLi4uYXJnczogYW55W10pID0+IGFueSkge1xuICAgY29uc3QgZGVzY3JpcHRvciA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IodGFyZ2V0LCBwcm9wZXJ0eSkhXG4gICBjb25zdCBvYmplY3QgPSBkZXNjcmlwdG9yID8gZGVzY3JpcHRvciA6IHRhcmdldFxuICAgY29uc3QgZ2V0T3JWYWx1ZSA9IGRlc2NyaXB0b3I/LmdldCA/IFwiZ2V0XCIgOiBcInZhbHVlXCJcbiAgIGNvbnN0IG9yaWdpbmFsRnVuY3Rpb24gPSAoZGVzY3JpcHRvciA/IGRlc2NyaXB0b3JbZ2V0T3JWYWx1ZV0gOiBvYmplY3RbcHJvcGVydHldKSA/PyBub29wXG5cbiAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0YXJnZXQsIHByb3BlcnR5LCB7XG4gICAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgICBbZ2V0T3JWYWx1ZV06IGZ1bmN0aW9uICh0aGlzOiB1bmtub3duLCAuLi5hcmdzOiBhbnlbXSkge1xuICAgICAgICAgcmV0dXJuIGZuLmNhbGwodW50cmFjayh0aGlzKSwgb3JpZ2luYWxGdW5jdGlvbiwgLi4uYXJncylcbiAgICAgIH1cbiAgIH0pXG5cbiAgIHJldHVybiBvcmlnaW5hbEZ1bmN0aW9uID09PSBub29wXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBub29wKCkge31cblxuZXhwb3J0IGNvbnN0IFVJRCA9IG5ldyBJbmplY3Rpb25Ub2tlbihcIlVJRFwiLCB7XG4gICBmYWN0b3J5KCkge1xuICAgICAgbGV0IGlkID0gMFxuICAgICAgcmV0dXJuIGZ1bmN0aW9uIGdldElkKCkge1xuICAgICAgICAgcmV0dXJuIGlkKytcbiAgICAgIH1cbiAgIH1cbn0pXG5cbmV4cG9ydCBmdW5jdGlvbiBldmVudHM8VD4odG9rZW46IFByb3ZpZGVyVG9rZW48VD4sIGluamVjdG9yPzogSW5qZWN0b3IpOiBPYnNlcnZhYmxlPEV4dHJhY3RFdmVudHM8VCwgRXh0cmFjdDxrZXlvZiBULCBzdHJpbmc+Pj5cbmV4cG9ydCBmdW5jdGlvbiBldmVudHM8VD4oY29udGV4dDogVCk6IE9ic2VydmFibGU8RXh0cmFjdEV2ZW50czxULCBFeHRyYWN0PGtleW9mIFQsIHN0cmluZz4+PlxuZXhwb3J0IGZ1bmN0aW9uIGV2ZW50czxUPih0b2tlbjogUHJvdmlkZXJUb2tlbjxUPiB8IFQsIGluamVjdG9yID0gaW5qZWN0KElOSkVDVE9SKSk6IE9ic2VydmFibGU8RXh0cmFjdEV2ZW50czxULCBFeHRyYWN0PGtleW9mIFQsIHN0cmluZz4+PiB7XG4gICByZXR1cm4gZGVmZXIoKCkgPT4ge1xuICAgICAgY29uc3QgY29udGV4dCA9IHR5cGVvZiB0b2tlbiA9PT0gXCJmdW5jdGlvblwiID8gaW5qZWN0b3IuZ2V0KHRva2VuKSA6IHRva2VuXG4gICAgICByZXR1cm4gaW5qZWN0b3IuZ2V0KEVWRU5UUykucGlwZShcbiAgICAgICAgIGZpbHRlcihldmVudCA9PiBldmVudC5jb250ZXh0ID09PSBjb250ZXh0KVxuICAgICAgKVxuICAgfSkgYXMgT2JzZXJ2YWJsZTxFeHRyYWN0RXZlbnRzPFQsIEV4dHJhY3Q8a2V5b2YgVCwgc3RyaW5nPj4+XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjb25maWd1cmVTdG9yZShjb25maWc6IFN0b3JlQ29uZmlnKSB7XG4gICByZXR1cm4ge1xuICAgICAgcHJvdmlkZTogY29uZmlnLnJvb3QgPyBST09UX0NPTkZJRyA6IFNUT1JFX0NPTkZJRyxcbiAgICAgIHVzZVZhbHVlOiBjb25maWdcbiAgIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIG9ic2VydmVJblpvbmU8VD4oc291cmNlOiBPYnNlcnZhYmxlPFQ+LCB6b25lOiBab25lQ29tcGF0aWJsZSk6IE9ic2VydmFibGU8VD4ge1xuICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlKHN1YnNjcmliZXIgPT4ge1xuICAgICAgcmV0dXJuIHpvbmUucnVuKCgpID0+IHtcbiAgICAgICAgIHJldHVybiBzb3VyY2Uuc3Vic2NyaWJlKHN1YnNjcmliZXIpXG4gICAgICB9KVxuICAgfSlcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldDxUIGV4dGVuZHMgeyB2YWx1ZTogdW5rbm93biB9Pih0b2tlbjogUHJvdmlkZXJUb2tlbjxUPik6IFRbXCJ2YWx1ZVwiXSB7XG4gICByZXR1cm4gdHJhY2soaW5qZWN0KHRva2VuKS52YWx1ZSlcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHNldDxUIGV4dGVuZHMgeyB2YWx1ZTogdW5rbm93biwgbmV4dDogKHZhbHVlOiBUW1widmFsdWVcIl0pID0+IHZvaWQgfT4odG9rZW46IFByb3ZpZGVyVG9rZW48VD4sIHZhbHVlOiBUW1widmFsdWVcIl0pOiB2b2lkIHtcbiAgIGluamVjdCh0b2tlbikubmV4dCh2YWx1ZSlcbn1cblxudHlwZSBBY3Rpb25QYXJhbXM8VD4gPSBUIGV4dGVuZHMgKC4uLnBhcmFtczogaW5mZXIgUGFyYW1zKSA9PiBhbnkgPyBQYXJhbXMgZXh0ZW5kcyB7IGxlbmd0aDogMSB9ID8gUGFyYW1zWzBdIDogUGFyYW1zIDogbmV2ZXJcblxuZnVuY3Rpb24gZmlsdGVyQnlOYW1lVHlwZTxUIGV4dGVuZHMgU3RvcmVFdmVudD4obmFtZTogUHJvcGVydHlLZXksIHR5cGU6IEV2ZW50VHlwZSk6IE9wZXJhdG9yRnVuY3Rpb248YW55LCBUPiB7XG4gICByZXR1cm4gZmlsdGVyKChldmVudDogU3RvcmVFdmVudCk6IGV2ZW50IGlzIFQgPT4gZXZlbnQubmFtZSA9PT0gbmFtZSAmJiBldmVudC50eXBlID09PSB0eXBlKVxufVxuXG5leHBvcnQgZnVuY3Rpb24gYWN0aW9uRXZlbnQ8VCwgVEtleSBleHRlbmRzIGtleW9mIFQ+KHRva2VuOiBQcm92aWRlclRva2VuPFQ+LCBuYW1lOiBUS2V5LCBpbmplY3Rvcj86IEluamVjdG9yKTogT2JzZXJ2YWJsZTxEaXNwYXRjaEV2ZW50PiB7XG4gICByZXR1cm4gZXZlbnRzKHRva2VuLCBpbmplY3RvcikucGlwZShcbiAgICAgIGZpbHRlckJ5TmFtZVR5cGU8RGlzcGF0Y2hFdmVudDxhbnksIGFueSwgYW55W10+PihuYW1lLCBFdmVudFR5cGUuRGlzcGF0Y2gpLFxuICAgKVxufVxuXG5leHBvcnQgZnVuY3Rpb24gYWN0aW9uPFQsIFRLZXkgZXh0ZW5kcyBrZXlvZiBUPih0b2tlbjogUHJvdmlkZXJUb2tlbjxUPiwgbmFtZTogVEtleSwgaW5qZWN0b3I/OiBJbmplY3Rvcik6IE9ic2VydmFibGU8QWN0aW9uUGFyYW1zPFRbVEtleV0+PiB7XG4gICByZXR1cm4gYWN0aW9uRXZlbnQodG9rZW4sIG5hbWUsIGluamVjdG9yKS5waXBlKFxuICAgICAgbWFwKChldmVudDogYW55KSA9PiBldmVudC52YWx1ZSlcbiAgIClcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIG5leHRFdmVudDxULCBUS2V5IGV4dGVuZHMga2V5b2YgVD4odG9rZW46IFByb3ZpZGVyVG9rZW48VD4sIG5hbWU6IFRLZXksIGluamVjdG9yPzogSW5qZWN0b3IpOiBPYnNlcnZhYmxlPE5leHRFdmVudD4ge1xuICAgcmV0dXJuIGV2ZW50cyh0b2tlbiwgaW5qZWN0b3IpLnBpcGUoXG4gICAgICBmaWx0ZXJCeU5hbWVUeXBlPE5leHRFdmVudD4obmFtZSwgRXZlbnRUeXBlLk5leHQpXG4gICApXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBuZXh0PFQsIFRLZXkgZXh0ZW5kcyBrZXlvZiBUPih0b2tlbjogUHJvdmlkZXJUb2tlbjxUPiwgbmFtZTogVEtleSwgaW5qZWN0b3I/OiBJbmplY3Rvcik6IE9ic2VydmFibGU8VFtUS2V5XSBleHRlbmRzICgpID0+IGluZmVyIFIgPyBSIGV4dGVuZHMgT2JzZXJ2YWJsZTxpbmZlciBTPiA/IFMgOiBuZXZlciA6IG5ldmVyPiB7XG4gICByZXR1cm4gbmV4dEV2ZW50KHRva2VuLCBuYW1lLCBpbmplY3RvcikucGlwZShcbiAgICAgIG1hcCgoZXZlbnQpID0+IGV2ZW50LnZhbHVlKVxuICAgKVxufVxuXG5leHBvcnQgZnVuY3Rpb24gZXJyb3JFdmVudDxULCBUS2V5IGV4dGVuZHMga2V5b2YgVD4odG9rZW46IFByb3ZpZGVyVG9rZW48VD4sIG5hbWU6IFRLZXksIGluamVjdG9yPzogSW5qZWN0b3IpOiBPYnNlcnZhYmxlPEVycm9yRXZlbnQ+IHtcbiAgIHJldHVybiBldmVudHModG9rZW4sIGluamVjdG9yKS5waXBlKFxuICAgICAgZmlsdGVyQnlOYW1lVHlwZTxFcnJvckV2ZW50PihuYW1lLCBFdmVudFR5cGUuRXJyb3IpXG4gICApXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBlcnJvcjxULCBUS2V5IGV4dGVuZHMga2V5b2YgVD4odG9rZW46IFByb3ZpZGVyVG9rZW48VD4sIG5hbWU6IFRLZXksIGluamVjdG9yPzogSW5qZWN0b3IpOiBPYnNlcnZhYmxlPHVua25vd24+IHtcbiAgIHJldHVybiBlcnJvckV2ZW50KHRva2VuLCBuYW1lLCBpbmplY3RvcikucGlwZShcbiAgICAgIG1hcCgoZXZlbnQpID0+IGV2ZW50LnZhbHVlKVxuICAgKVxufVxuXG5leHBvcnQgZnVuY3Rpb24gY29tcGxldGVFdmVudDxULCBUS2V5IGV4dGVuZHMga2V5b2YgVD4odG9rZW46IFByb3ZpZGVyVG9rZW48VD4sIG5hbWU6IFRLZXksIGluamVjdG9yPzogSW5qZWN0b3IpOiBPYnNlcnZhYmxlPENvbXBsZXRlRXZlbnQ+IHtcbiAgIHJldHVybiBldmVudHModG9rZW4sIGluamVjdG9yKS5waXBlKFxuICAgICAgZmlsdGVyQnlOYW1lVHlwZTxDb21wbGV0ZUV2ZW50PihuYW1lLCBFdmVudFR5cGUuQ29tcGxldGUpXG4gICApXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjb21wbGV0ZTxULCBUS2V5IGV4dGVuZHMga2V5b2YgVD4odG9rZW46IFByb3ZpZGVyVG9rZW48VD4sIG5hbWU6IFRLZXksIGluamVjdG9yPzogSW5qZWN0b3IpOiBPYnNlcnZhYmxlPHZvaWQ+IHtcbiAgIHJldHVybiBjb21wbGV0ZUV2ZW50KHRva2VuLCBuYW1lLCBpbmplY3RvcikucGlwZShcbiAgICAgIGZpbHRlckJ5TmFtZVR5cGU8Q29tcGxldGVFdmVudD4obmFtZSwgRXZlbnRUeXBlLkNvbXBsZXRlKSxcbiAgICAgIG1hcCgoKSA9PiB1bmRlZmluZWQpXG4gICApXG59XG4iXX0= |
| import * as i0 from '@angular/core'; | ||
| import { ChangeDetectorRef, inject, INJECTOR, InjectionToken, Injectable, ErrorHandler, createEnvironmentInjector, EnvironmentInjector, ElementRef, Directive, Input, EventEmitter } from '@angular/core'; | ||
| import { defer, filter, Observable, map, Subject, Subscription, switchAll, pipe, mergeAll, concatAll, exhaustAll, startWith, distinctUntilChanged, BehaviorSubject, EMPTY, isObservable, skip, tap, catchError, ReplaySubject, takeWhile, merge, fromEvent, of, debounce, interval, switchMap, takeUntil, throttle, timer, retry, share, finalize } from 'rxjs'; | ||
| import { ChangeDetectorRef, InjectionToken, inject, INJECTOR, Injectable, ErrorHandler, createEnvironmentInjector, EnvironmentInjector, ElementRef, Directive, Input, EventEmitter } from '@angular/core'; | ||
| import { defer, filter, Observable, map, Subject, Subscription, switchAll, pipe, mergeAll, concatAll, exhaustAll, startWith, distinctUntilChanged, BehaviorSubject, EMPTY, isObservable, observable, skip, tap, catchError, ReplaySubject, takeWhile, merge, fromEvent, of, debounce, interval, switchMap, takeUntil, throttle, timer, retry, share, finalize } from 'rxjs'; | ||
| import { DOCUMENT } from '@angular/common'; | ||
@@ -168,9 +168,13 @@ | ||
| function noop() { } | ||
| let id = 0; | ||
| function getId() { | ||
| return id++; | ||
| } | ||
| const UID = new InjectionToken("UID", { | ||
| factory() { | ||
| let id = 0; | ||
| return function getId() { | ||
| return id++; | ||
| }; | ||
| } | ||
| }); | ||
| function events(token, injector = inject(INJECTOR)) { | ||
| return defer(() => { | ||
| const context = injector.get(token); | ||
| const context = typeof token === "function" ? injector.get(token) : token; | ||
| return injector.get(EVENTS).pipe(filter(event => event.context === context)); | ||
@@ -244,6 +248,7 @@ }); | ||
| this.dispatcher = inject(EVENTS); | ||
| this.getId = inject(UID); | ||
| } | ||
| schedule(type, name, value, changes) { | ||
| this.events.push({ | ||
| id: getId(), | ||
| id: this.getId(), | ||
| timestamp: Date.now(), | ||
@@ -443,2 +448,5 @@ type, | ||
| } | ||
| [observable]() { | ||
| return this; | ||
| } | ||
| get value() { | ||
@@ -464,2 +472,5 @@ return this.destination.value; | ||
| } | ||
| pipe(...operators) { | ||
| return this.destination.pipe(...operators); | ||
| } | ||
| subscribe(observer) { | ||
@@ -498,3 +509,2 @@ try { | ||
| this.event.schedule(EventType.Dispatch, this.key, value, changes); | ||
| this.event.flush(); | ||
| this.cdr.markForCheck(); | ||
@@ -623,3 +633,3 @@ } | ||
| } | ||
| function runAction(fn, key, deps, ...args) { | ||
| function runAction(fn, key, deps, args) { | ||
| const event = inject(EventScheduler); | ||
@@ -636,3 +646,3 @@ event.schedule(EventType.Dispatch, key, args.length === 1 ? args[0] : args, getChanges(deps)); | ||
| teardown(this, key); | ||
| return runInContext(deps, runAction, proxy, catchError, key, fn, key, deps, ...args); | ||
| return runInContext(deps, runAction, proxy, catchError, key, fn, key, deps, args); | ||
| }); | ||
@@ -669,4 +679,4 @@ } | ||
| const events = getToken(EventScheduler, this); | ||
| const changes = Object.entries(value).map(([key, value]) => [key, value.previousValue]); | ||
| events.schedule(EventType.Dispatch, "ngOnChanges", value, new Map([[this, new Map(changes)]])); | ||
| const changes = Object.entries(value).map(([key, change]) => [key, change.previousValue]); | ||
| events.schedule(EventType.Dispatch, "ngOnChanges", Object.assign({}, value), new Map([[this, new Map(changes)]])); | ||
| fn.call(this, value); | ||
@@ -1144,4 +1154,4 @@ }); | ||
| export { track as $, untrack as $$, ACTION, Action, Before, Caught, EVENTS, Invoke, Layout, QueryError, ResourceManager, Select, Selector, Store, TemplateProvider, Transition, TransitionToken, action, actionEvent, addTeardown, complete, completeEvent, configureStore, dispatch, error, errorEvent, events, get, inputs, isTracked, loadEffect, next, nextEvent, set, slice, store, track, untrack, useConcat, useExhaust, useInputs, useMerge, useMutation, useOperator, useQuery, useSwitch, useTransition, withState, decorateFactory as ɵɵdecorateFactory, stores as ɵɵstores }; | ||
| export { track as $, untrack as $$, ACTION, Action, Before, Caught, EVENTS, EventType, Invoke, Layout, QueryError, ResourceManager, Select, Selector, Store, TemplateProvider, Transition, TransitionToken, action, actionEvent, addTeardown, complete, completeEvent, configureStore, dispatch, error, errorEvent, events, get, inputs, isTracked, loadEffect, next, nextEvent, set, slice, store, track, untrack, useConcat, useExhaust, useInputs, useMerge, useMutation, useOperator, useQuery, useSwitch, useTransition, withState, decorateFactory as ɵɵdecorateFactory, stores as ɵɵstores }; | ||
| //# sourceMappingURL=antischematic-angular-state-library.mjs.map | ||
| //# sourceMappingURL=antischematic-angular-state-library.mjs.map |
| import * as i0 from '@angular/core'; | ||
| import { ChangeDetectorRef, inject, INJECTOR, InjectionToken, Injectable, ErrorHandler, createEnvironmentInjector, EnvironmentInjector, ElementRef, Directive, Input, EventEmitter } from '@angular/core'; | ||
| import { defer, filter, Observable, map, Subject, Subscription, switchAll, pipe, mergeAll, concatAll, exhaustAll, startWith, distinctUntilChanged, BehaviorSubject, EMPTY, isObservable, skip, tap, catchError, ReplaySubject, takeWhile, merge, fromEvent, of, debounce, interval, switchMap, takeUntil, throttle, timer, retry, share, finalize } from 'rxjs'; | ||
| import { ChangeDetectorRef, InjectionToken, inject, INJECTOR, Injectable, ErrorHandler, createEnvironmentInjector, EnvironmentInjector, ElementRef, Directive, Input, EventEmitter } from '@angular/core'; | ||
| import { defer, filter, Observable, map, Subject, Subscription, switchAll, pipe, mergeAll, concatAll, exhaustAll, startWith, distinctUntilChanged, BehaviorSubject, EMPTY, isObservable, observable, skip, tap, catchError, ReplaySubject, takeWhile, merge, fromEvent, of, debounce, interval, switchMap, takeUntil, throttle, timer, retry, share, finalize } from 'rxjs'; | ||
| import { DOCUMENT } from '@angular/common'; | ||
@@ -163,9 +163,13 @@ | ||
| function noop() { } | ||
| let id = 0; | ||
| function getId() { | ||
| return id++; | ||
| } | ||
| const UID = new InjectionToken("UID", { | ||
| factory() { | ||
| let id = 0; | ||
| return function getId() { | ||
| return id++; | ||
| }; | ||
| } | ||
| }); | ||
| function events(token, injector = inject(INJECTOR)) { | ||
| return defer(() => { | ||
| const context = injector.get(token); | ||
| const context = typeof token === "function" ? injector.get(token) : token; | ||
| return injector.get(EVENTS).pipe(filter(event => event.context === context)); | ||
@@ -239,6 +243,7 @@ }); | ||
| this.dispatcher = inject(EVENTS); | ||
| this.getId = inject(UID); | ||
| } | ||
| schedule(type, name, value, changes) { | ||
| this.events.push({ | ||
| id: getId(), | ||
| id: this.getId(), | ||
| timestamp: Date.now(), | ||
@@ -435,2 +440,5 @@ type, | ||
| } | ||
| [observable]() { | ||
| return this; | ||
| } | ||
| get value() { | ||
@@ -456,2 +464,5 @@ return this.destination.value; | ||
| } | ||
| pipe(...operators) { | ||
| return this.destination.pipe(...operators); | ||
| } | ||
| subscribe(observer) { | ||
@@ -490,3 +501,2 @@ try { | ||
| this.event.schedule(EventType.Dispatch, this.key, value, changes); | ||
| this.event.flush(); | ||
| this.cdr.markForCheck(); | ||
@@ -611,3 +621,3 @@ } | ||
| } | ||
| function runAction(fn, key, deps, ...args) { | ||
| function runAction(fn, key, deps, args) { | ||
| const event = inject(EventScheduler); | ||
@@ -624,3 +634,3 @@ event.schedule(EventType.Dispatch, key, args.length === 1 ? args[0] : args, getChanges(deps)); | ||
| teardown(this, key); | ||
| return runInContext(deps, runAction, proxy, catchError, key, fn, key, deps, ...args); | ||
| return runInContext(deps, runAction, proxy, catchError, key, fn, key, deps, args); | ||
| }); | ||
@@ -656,4 +666,4 @@ } | ||
| const events = getToken(EventScheduler, this); | ||
| const changes = Object.entries(value).map(([key, value]) => [key, value.previousValue]); | ||
| events.schedule(EventType.Dispatch, "ngOnChanges", value, new Map([[this, new Map(changes)]])); | ||
| const changes = Object.entries(value).map(([key, change]) => [key, change.previousValue]); | ||
| events.schedule(EventType.Dispatch, "ngOnChanges", { ...value }, new Map([[this, new Map(changes)]])); | ||
| fn.call(this, value); | ||
@@ -1124,4 +1134,4 @@ }); | ||
| export { track as $, untrack as $$, ACTION, Action, Before, Caught, EVENTS, Invoke, Layout, QueryError, ResourceManager, Select, Selector, Store, TemplateProvider, Transition, TransitionToken, action, actionEvent, addTeardown, complete, completeEvent, configureStore, dispatch, error, errorEvent, events, get, inputs, isTracked, loadEffect, next, nextEvent, set, slice, store, track, untrack, useConcat, useExhaust, useInputs, useMerge, useMutation, useOperator, useQuery, useSwitch, useTransition, withState, decorateFactory as ɵɵdecorateFactory, stores as ɵɵstores }; | ||
| export { track as $, untrack as $$, ACTION, Action, Before, Caught, EVENTS, EventType, Invoke, Layout, QueryError, ResourceManager, Select, Selector, Store, TemplateProvider, Transition, TransitionToken, action, actionEvent, addTeardown, complete, completeEvent, configureStore, dispatch, error, errorEvent, events, get, inputs, isTracked, loadEffect, next, nextEvent, set, slice, store, track, untrack, useConcat, useExhaust, useInputs, useMerge, useMutation, useOperator, useQuery, useSwitch, useTransition, withState, decorateFactory as ɵɵdecorateFactory, stores as ɵɵstores }; | ||
| //# sourceMappingURL=antischematic-angular-state-library.mjs.map | ||
| //# sourceMappingURL=antischematic-angular-state-library.mjs.map |
+11
-7
| import { Observable } from "rxjs"; | ||
| import { Provider } from "@angular/core"; | ||
| declare type Changes = Map<object, Map<PropertyKey, any>>; | ||
| export interface EventData<ActionName, ActionContext = unknown> { | ||
| export interface EventData<ActionName = string, ActionContext = unknown> { | ||
| readonly id: number; | ||
@@ -11,18 +11,22 @@ readonly name: ActionName; | ||
| } | ||
| export interface DispatchEvent<ActionName = PropertyKey, ActionContext = unknown, ActionValue = unknown> extends EventData<ActionName, ActionContext> { | ||
| export interface UnknownEvent extends EventData { | ||
| type: EventType; | ||
| value?: unknown; | ||
| } | ||
| export interface DispatchEvent<ActionName = string, ActionContext = unknown, ActionValue = unknown> extends EventData<ActionName, ActionContext> { | ||
| readonly type: EventType.Dispatch; | ||
| readonly value: ActionValue; | ||
| } | ||
| export interface NextEvent<ActionName = PropertyKey, ActionContext = unknown, ActionValue = unknown> extends EventData<ActionName, ActionContext> { | ||
| export interface NextEvent<ActionName = string, ActionContext = unknown, ActionValue = unknown> extends EventData<ActionName, ActionContext> { | ||
| readonly value: ActionValue extends Observable<infer R> ? R : never; | ||
| readonly type: EventType.Next; | ||
| } | ||
| export interface ErrorEvent<ActionName = PropertyKey, ActionContext = unknown> extends EventData<ActionName, ActionContext> { | ||
| export interface ErrorEvent<ActionName = string, ActionContext = unknown> extends EventData<ActionName, ActionContext> { | ||
| readonly value: unknown; | ||
| readonly type: EventType.Error; | ||
| } | ||
| export interface CompleteEvent<ActionName = PropertyKey, ActionContext = unknown> extends EventData<ActionName, ActionContext> { | ||
| export interface CompleteEvent<ActionName = string, ActionContext = unknown> extends EventData<ActionName, ActionContext> { | ||
| readonly type: EventType.Complete; | ||
| } | ||
| export declare type StoreEvent<ActionName = PropertyKey, ActionContext = unknown, ActionType = unknown, EffectType = unknown> = DispatchEvent<ActionName, ActionContext, ActionType> | NextEvent<ActionName, ActionContext, EffectType> | ErrorEvent<ActionName, ActionContext> | CompleteEvent<ActionName, ActionContext>; | ||
| export declare type StoreEvent<ActionName = string, ActionContext = unknown, ActionType = unknown, EffectType = unknown> = DispatchEvent<ActionName, ActionContext, ActionType> | NextEvent<ActionName, ActionContext, EffectType> | ErrorEvent<ActionName, ActionContext> | CompleteEvent<ActionName, ActionContext>; | ||
| export declare enum EventType { | ||
@@ -68,3 +72,3 @@ Dispatch = "dispatch", | ||
| }; | ||
| export declare type ExtractEvents<T, U extends PropertyKey> = { | ||
| export declare type ExtractEvents<T, U extends string> = { | ||
| [key in U]: key extends keyof T ? T[key] extends (...params: infer P) => infer R ? StoreEvent<key, T, P, R> : never : never; | ||
@@ -71,0 +75,0 @@ }[U]; |
+1
-1
| { | ||
| "name": "@antischematic/angular-state-library", | ||
| "description": "Reactive state without boilerplate", | ||
| "version": "0.7.4", | ||
| "version": "0.7.5", | ||
| "author": { | ||
@@ -6,0 +6,0 @@ "name": "Michael Muscat" |
+3
-2
@@ -11,7 +11,8 @@ import { ErrorHandler, InjectionToken } from "@angular/core"; | ||
| export declare const ROOT_CONFIG: InjectionToken<StoreConfig>; | ||
| export declare const EVENTS: InjectionToken<Subject<StoreEvent<PropertyKey, unknown, unknown, unknown>>>; | ||
| export declare const EVENTS: InjectionToken<Subject<StoreEvent<string, unknown, unknown, unknown>>>; | ||
| export declare class EventScheduler { | ||
| private context; | ||
| events: StoreEvent<any, any, any, any>[]; | ||
| dispatcher: Subject<StoreEvent<PropertyKey, unknown, unknown, unknown>>; | ||
| dispatcher: Subject<StoreEvent<string, unknown, unknown, unknown>>; | ||
| getId: () => number; | ||
| schedule(type: EventType, name: string, value: unknown, changes: Map<any, any>): void; | ||
@@ -18,0 +19,0 @@ flush(): void; |
+1
-0
@@ -13,1 +13,2 @@ export { stores as ɵɵstores, decorateFactory as ɵɵdecorateFactory } from "./core"; | ||
| export { useMutation, useQuery, ResourceManager, MutateOptions, QueryOptions, QueryError } from "./data"; | ||
| export { EventType, StoreEvent, TypedChanges, TypedChange, CompleteEvent, DispatchEvent, ErrorEvent, NextEvent, ZoneCompatible, StoreConfig, DispatchObserver, EventData, UnknownEvent } from "./interfaces"; |
+5
-4
@@ -1,2 +0,2 @@ | ||
| import { Injector, ProviderToken } from "@angular/core"; | ||
| import { InjectionToken, Injector, ProviderToken } from "@angular/core"; | ||
| import { Observable } from "rxjs"; | ||
@@ -10,6 +10,7 @@ import { CompleteEvent, DispatchEvent, ErrorEvent, ExtractEvents, NextEvent, StoreConfig, ZoneCompatible } from "./interfaces"; | ||
| export declare function noop(): void; | ||
| export declare function getId(): number; | ||
| export declare function events<T>(token: ProviderToken<T>, injector?: Injector): Observable<ExtractEvents<T, keyof T>>; | ||
| export declare const UID: InjectionToken<() => number>; | ||
| export declare function events<T>(token: ProviderToken<T>, injector?: Injector): Observable<ExtractEvents<T, Extract<keyof T, string>>>; | ||
| export declare function events<T>(context: T): Observable<ExtractEvents<T, Extract<keyof T, string>>>; | ||
| export declare function configureStore(config: StoreConfig): { | ||
| provide: import("@angular/core").InjectionToken<StoreConfig>; | ||
| provide: InjectionToken<StoreConfig>; | ||
| useValue: StoreConfig; | ||
@@ -16,0 +17,0 @@ }; |
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is too big to display
Network access
Supply chain riskThis module accesses the network.
Found 1 instance in 1 package
Network access
Supply chain riskThis module accesses the network.
Found 1 instance in 1 package
518562
1.08%3952
0.97%