isomorphic-region-loader 16.5.14 → 16.5.15

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (42) hide show
  1. package/assets/shared/shared_folder_info.txt +1 -1
  2. package/browser/esm2022/lib/index.mjs +2 -1
  3. package/browser/esm2022/lib/models.mjs +13 -0
  4. package/browser/esm2022/lib/region-remover.mjs +1 -1
  5. package/browser/esm2022/lib/region.mjs +9 -9
  6. package/browser/fesm2022/isomorphic-region-loader.mjs +21 -9
  7. package/browser/fesm2022/isomorphic-region-loader.mjs.map +1 -1
  8. package/browser/lib/index.d.ts +1 -0
  9. package/browser/lib/models.d.ts +15 -0
  10. package/browser/lib/region.d.ts +3 -3
  11. package/client/esm2022/lib/index.mjs +2 -1
  12. package/client/esm2022/lib/models.mjs +13 -0
  13. package/client/esm2022/lib/region-remover.mjs +1 -1
  14. package/client/esm2022/lib/region.mjs +9 -9
  15. package/client/fesm2022/isomorphic-region-loader.mjs +21 -9
  16. package/client/fesm2022/isomorphic-region-loader.mjs.map +1 -1
  17. package/client/lib/index.d.ts +1 -0
  18. package/client/lib/models.d.ts +15 -0
  19. package/client/lib/region.d.ts +3 -3
  20. package/client/package.json +37 -34
  21. package/lib/index.d.ts +1 -0
  22. package/lib/index.js +1 -0
  23. package/lib/index.js.map +1 -1
  24. package/lib/models.d.ts +14 -0
  25. package/lib/models.js +14 -0
  26. package/lib/models.js.map +1 -0
  27. package/lib/region-remover.js.map +1 -1
  28. package/lib/region.d.ts +3 -3
  29. package/lib/region.js +8 -8
  30. package/lib/region.js.map +1 -1
  31. package/package.json +7 -4
  32. package/package.json_tnp.json5 +3 -0
  33. package/tmp-environment.json +41 -45
  34. package/websql/esm2022/lib/index.mjs +2 -1
  35. package/websql/esm2022/lib/models.mjs +13 -0
  36. package/websql/esm2022/lib/region-remover.mjs +1 -1
  37. package/websql/esm2022/lib/region.mjs +9 -9
  38. package/websql/fesm2022/isomorphic-region-loader.mjs +21 -9
  39. package/websql/fesm2022/isomorphic-region-loader.mjs.map +1 -1
  40. package/websql/lib/index.d.ts +1 -0
  41. package/websql/lib/models.d.ts +15 -0
  42. package/websql/lib/region.d.ts +3 -3
@@ -1,6 +1,6 @@
1
1
  THIS FILE IS GENERATED. THIS FILE IS GENERATED. THIS FILE IS GENERATED.
2
2
 
3
- Assets from this folder are being shipped with this npm package (isomorphic-region-loader@16.5.14)
3
+ Assets from this folder are being shipped with this npm package (isomorphic-region-loader@16.5.15)
4
4
  created from this project.
5
5
 
6
6
  THIS FILE IS GENERATED.THIS FILE IS GENERATED. THIS FILE IS GENERATED.
@@ -1,4 +1,5 @@
1
1
  import { RegionRemover } from "./region-remover";
2
+ export * from './models';
2
3
  function StripBrowserCode(content) {
3
4
  // @ts-ignore
4
5
  content = RegionRemover.from(this.resourcePath, content, ['@browser']).output + '\n';
@@ -13,4 +14,4 @@ export * from './region';
13
14
  export default StripBrowserCode;
14
15
  ;
15
16
  ({}); // @--end-of-file-for-module=isomorphic-region-loader lib/index.ts
16
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi90bXAtbGlicy1mb3ItZGlzdC9pc29tb3JwaGljLXJlZ2lvbi1sb2FkZXIvcHJvamVjdHMvaXNvbW9ycGhpYy1yZWdpb24tbG9hZGVyL3NyYy9saWIvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBR2pELFNBQVMsZ0JBQWdCLENBQUMsT0FBTztJQUcvQixhQUFhO0lBQ2IsT0FBTyxHQUFHLGFBQWEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxPQUFPLEVBQUUsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUM7SUFFckYsSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFO1FBQ2xCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUM7S0FDdEI7SUFFRCxPQUFPLE9BQU8sQ0FBQztBQUNqQixDQUFDO0FBRUQsT0FBTyxFQUFFLGdCQUFnQixJQUFJLGdCQUFnQixFQUFFLENBQUM7QUFFaEQsY0FBYyxrQkFBa0IsQ0FBQztBQUNqQyxjQUFjLFVBQVUsQ0FBQztBQUV6QixlQUFlLGdCQUFnQixDQUFDO0FBRS9CLENBQUM7QUFBQSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsa0VBQWtFIiwic291cmNlc0NvbnRlbnQiOlsiXG5cblxuaW1wb3J0IHsgUmVnaW9uUmVtb3ZlciB9IGZyb20gXCIuL3JlZ2lvbi1yZW1vdmVyXCI7XG5cblxuZnVuY3Rpb24gU3RyaXBCcm93c2VyQ29kZShjb250ZW50KSB7XG5cblxuICAvLyBAdHMtaWdub3JlXG4gIGNvbnRlbnQgPSBSZWdpb25SZW1vdmVyLmZyb20odGhpcy5yZXNvdXJjZVBhdGgsIGNvbnRlbnQsIFsnQGJyb3dzZXInXSkub3V0cHV0ICsgJ1xcbic7XG5cbiAgaWYgKHRoaXMuY2FjaGVhYmxlKSB7XG4gICAgdGhpcy5jYWNoZWFibGUodHJ1ZSk7XG4gIH1cblxuICByZXR1cm4gY29udGVudDtcbn1cblxuZXhwb3J0IHsgU3RyaXBCcm93c2VyQ29kZSBhcyBTdHJpcEJsb2NrTG9hZGVyIH07XG5cbmV4cG9ydCAqIGZyb20gJy4vcmVnaW9uLXJlbW92ZXInO1xuZXhwb3J0ICogZnJvbSAnLi9yZWdpb24nO1xuXG5leHBvcnQgZGVmYXVsdCBTdHJpcEJyb3dzZXJDb2RlO1xuXG4gOyh7fSk7IC8vIEAtLWVuZC1vZi1maWxlLWZvci1tb2R1bGU9aXNvbW9ycGhpYy1yZWdpb24tbG9hZGVyIGxpYi9pbmRleC50cyJdfQ==
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi90bXAtbGlicy1mb3ItZGlzdC9pc29tb3JwaGljLXJlZ2lvbi1sb2FkZXIvcHJvamVjdHMvaXNvbW9ycGhpYy1yZWdpb24tbG9hZGVyL3NyYy9saWIvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRWpELGNBQWMsVUFBVSxDQUFDO0FBRXpCLFNBQVMsZ0JBQWdCLENBQUMsT0FBTztJQUcvQixhQUFhO0lBQ2IsT0FBTyxHQUFHLGFBQWEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxPQUFPLEVBQUUsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUM7SUFFckYsSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFO1FBQ2xCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUM7S0FDdEI7SUFFRCxPQUFPLE9BQU8sQ0FBQztBQUNqQixDQUFDO0FBRUQsT0FBTyxFQUFFLGdCQUFnQixJQUFJLGdCQUFnQixFQUFFLENBQUM7QUFFaEQsY0FBYyxrQkFBa0IsQ0FBQztBQUNqQyxjQUFjLFVBQVUsQ0FBQztBQUV6QixlQUFlLGdCQUFnQixDQUFDO0FBRS9CLENBQUM7QUFBQSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsa0VBQWtFIiwic291cmNlc0NvbnRlbnQiOlsiXG5cblxuaW1wb3J0IHsgUmVnaW9uUmVtb3ZlciB9IGZyb20gXCIuL3JlZ2lvbi1yZW1vdmVyXCI7XG5cbmV4cG9ydCAqIGZyb20gJy4vbW9kZWxzJztcblxuZnVuY3Rpb24gU3RyaXBCcm93c2VyQ29kZShjb250ZW50KSB7XG5cblxuICAvLyBAdHMtaWdub3JlXG4gIGNvbnRlbnQgPSBSZWdpb25SZW1vdmVyLmZyb20odGhpcy5yZXNvdXJjZVBhdGgsIGNvbnRlbnQsIFsnQGJyb3dzZXInXSkub3V0cHV0ICsgJ1xcbic7XG5cbiAgaWYgKHRoaXMuY2FjaGVhYmxlKSB7XG4gICAgdGhpcy5jYWNoZWFibGUodHJ1ZSk7XG4gIH1cblxuICByZXR1cm4gY29udGVudDtcbn1cblxuZXhwb3J0IHsgU3RyaXBCcm93c2VyQ29kZSBhcyBTdHJpcEJsb2NrTG9hZGVyIH07XG5cbmV4cG9ydCAqIGZyb20gJy4vcmVnaW9uLXJlbW92ZXInO1xuZXhwb3J0ICogZnJvbSAnLi9yZWdpb24nO1xuXG5leHBvcnQgZGVmYXVsdCBTdHJpcEJyb3dzZXJDb2RlO1xuXG4gOyh7fSk7IC8vIEAtLWVuZC1vZi1maWxlLWZvci1tb2R1bGU9aXNvbW9ycGhpYy1yZWdpb24tbG9hZGVyIGxpYi9pbmRleC50cyJdfQ==
@@ -0,0 +1,13 @@
1
+ export const labelReplacementCode = {
2
+ browserCode: '/* */',
3
+ backendCode: '/* */',
4
+ notForNpmCode: '/* */',
5
+ onlyForGithubDocs: '/* */',
6
+ flatenImportExportRequred: '/* */', // '/* only for github docs */',
7
+ };
8
+ export const ReplacementStringArr = [
9
+ '@backend', '@backendFunc', '@cutCodeIfTrue', '@cutCodeIfFalse', "@notForNpm"
10
+ ];
11
+ ;
12
+ ({}); // @--end-of-file-for-module=isomorphic-region-loader lib/models.ts
13
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vdG1wLWxpYnMtZm9yLWRpc3QvaXNvbW9ycGhpYy1yZWdpb24tbG9hZGVyL3Byb2plY3RzL2lzb21vcnBoaWMtcmVnaW9uLWxvYWRlci9zcmMvbGliL21vZGVscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQSxNQUFNLENBQUMsTUFBTSxvQkFBb0IsR0FBRztJQUNsQyxXQUFXLEVBQUUsT0FBTztJQUNwQixXQUFXLEVBQUUsT0FBTztJQUNwQixhQUFhLEVBQUUsT0FBTztJQUN0QixpQkFBaUIsRUFBRSxPQUFPO0lBQzFCLHlCQUF5QixFQUFFLE9BQU8sRUFBQyxnQ0FBZ0M7Q0FDcEUsQ0FBQztBQUdGLE1BQU0sQ0FBQyxNQUFNLG9CQUFvQixHQUFHO0lBQ2xDLFVBQVUsRUFBRSxjQUFjLEVBQUUsZ0JBQWdCLEVBQUUsaUJBQWlCLEVBQUUsWUFBWTtDQUN2RCxDQUFDO0FBZ0J4QixDQUFDO0FBQUEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLG1FQUFtRSIsInNvdXJjZXNDb250ZW50IjpbIlxuXG5cbmV4cG9ydCBjb25zdCBsYWJlbFJlcGxhY2VtZW50Q29kZSA9IHtcbiAgYnJvd3NlckNvZGU6ICcvKiAqLycsLy8gJy8qIGJyb3dzZXIgY29kZSAqLycsXG4gIGJhY2tlbmRDb2RlOiAnLyogKi8nLC8vICcvKiBiYWNrZW5kIGNvZGUgKi8nLFxuICBub3RGb3JOcG1Db2RlOiAnLyogKi8nLC8vJy8qIG5vdCBmb3IgbnBtIGxpYiBjb2RlICovJyxcbiAgb25seUZvckdpdGh1YkRvY3M6ICcvKiAqLycsLy8gJy8qIG9ubHkgZm9yIGdpdGh1YiBkb2NzICovJyxcbiAgZmxhdGVuSW1wb3J0RXhwb3J0UmVxdXJlZDogJy8qICovJywvLyAnLyogb25seSBmb3IgZ2l0aHViIGRvY3MgKi8nLFxufTtcblxuZXhwb3J0IHR5cGUgUmVwbGFjZW1lbnRTdHJpbmcgPSAnQGJhY2tlbmQnIHwgJ0BiYWNrZW5kRnVuYycgfCAnQGN1dENvZGVJZlRydWUnIHwgJ0BjdXRDb2RlSWZGYWxzZScgfCAnQG5vdEZvck5wbSc7XG5leHBvcnQgY29uc3QgUmVwbGFjZW1lbnRTdHJpbmdBcnIgPSBbXG4gICdAYmFja2VuZCcsICdAYmFja2VuZEZ1bmMnLCAnQGN1dENvZGVJZlRydWUnLCAnQGN1dENvZGVJZkZhbHNlJywgXCJAbm90Rm9yTnBtXCJcbl0gYXMgUmVwbGFjZW1lbnRTdHJpbmdbXTtcblxuZXhwb3J0IHR5cGUgUmVwbGFjZW1lbnQ8RW52Q29uZmlnID0gYW55PiA9IChSZXBsYWNlbWVudFN0cmluZ1xuICB8IFtSZXBsYWNlbWVudFN0cmluZywgc3RyaW5nXVxuICB8IFtSZXBsYWNlbWVudFN0cmluZywgKGV4cHJlc3Npb246IGFueSwgZW52OiBFbnZDb25maWcpID0+ICgpID0+IGJvb2xlYW5dXG4pO1xuXG5leHBvcnQgaW50ZXJmYWNlIFJlcGxhY2VPcHRpb25zRXh0ZW5kZWQ8RW52Q29uZmlnID0gYW55PiB7XG5cbiAgcmVwbGFjZW1lbnRzOiBSZXBsYWNlbWVudFtdO1xuICBlbnY/OiBFbnZDb25maWdcbn1cblxuXG5cblxuIDsoe30pOyAvLyBALS1lbmQtb2YtZmlsZS1mb3ItbW9kdWxlPWlzb21vcnBoaWMtcmVnaW9uLWxvYWRlciBsaWIvbW9kZWxzLnRzIl19
@@ -109,4 +109,4 @@ export class RegionRemover {
109
109
  }
110
110
  ;
111
111
  ({}); // @--end-of-file-for-module=isomorphic-region-loader lib/region-remover.ts
112
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVnaW9uLXJlbW92ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi90bXAtbGlicy1mb3ItZGlzdC9pc29tb3JwaGljLXJlZ2lvbi1sb2FkZXIvcHJvamVjdHMvaXNvbW9ycGhpYy1yZWdpb24tbG9hZGVyL3NyYy9saWIvcmVnaW9uLXJlbW92ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLENBQUMsRUFBRSxJQUFJLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUczQyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBR2xDLE9BQU8sRUFBRSxZQUFZLEVBQUUsSUFBSSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFHeEQsTUFBTSxPQUFPLGFBQWE7SUFJakIsTUFBTSxDQUFDLElBQUksQ0FDaEIscUJBQTZCLEVBQzdCLE9BQWUsRUFDZixhQUFtQixFQUFFLDRCQUE0QjtJQUNqRCxPQUFhO1FBR2IsSUFBSSxhQUFhLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO1FBRXhELElBQUksQ0FBQyxhQUFhLEVBQUU7WUFDbEIsYUFBYSxHQUFHO2dCQUNkLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxrQkFBa0IsQ0FBQztnQkFDdkMsSUFBSSxDQUFDLE9BQWM7YUFDcEIsQ0FBQztTQUNIO1FBQ0QsT0FBTyxJQUFJLGFBQWEsQ0FBQyxxQkFBcUIsRUFBRSxhQUFvQixFQUFFLE9BQU8sRUFBRSxhQUFhLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDekcsQ0FBQztJQUVPLGdCQUFnQixDQUFDLENBQVM7UUFDaEMsTUFBTSxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDcEUsT0FBTyxHQUFHLENBQUM7SUFDYixDQUFDO0lBQ08sY0FBYyxDQUFDLENBQVM7UUFDOUIsTUFBTSxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDbEUsT0FBTyxHQUFHLENBQUM7SUFDYixDQUFDO0lBR0QsWUFDa0IscUJBQTZCLEVBQzdDLGFBQTBDLEVBQ2xDLE9BQWUsRUFDdkIsYUFBbUIsRUFBRSw0QkFBNEI7SUFDakMsT0FBYTtRQUpiLDBCQUFxQixHQUFyQixxQkFBcUIsQ0FBUTtRQUVyQyxZQUFPLEdBQVAsT0FBTyxDQUFRO1FBRVAsWUFBTyxHQUFQLE9BQU8sQ0FBTTtRQW5DZCxpQkFBWSxHQUFhLEVBQUUsQ0FBQztRQUM1QixlQUFVLEdBQWEsRUFBRSxDQUFDO1FBcUN6QyxJQUFJLENBQUMsWUFBWSxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLEVBQUU7WUFDOUQsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUMzRCxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsZUFBZSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1NBQ3hEO1FBQ0QsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxFQUFFO1lBQ25ELElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDaEQsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztTQUM3QztRQUNELElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsRUFBRTtZQUNsRCxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQy9DLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7U0FDNUM7UUFFRCxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN2QyxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksTUFBTSxDQUNwQixJQUFJLEVBQ0osYUFBYSxFQUNiLEtBQUssQ0FBQyxFQUNOLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLEVBQ3JCLENBQUMsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsRUFDN0IsS0FBSyxDQUFDLENBQUM7UUFDVCxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN2QixDQUFDO0lBRU8sSUFBSSxDQUFDLElBQVk7UUFDdkIsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQztRQU92QyxJQUFJLEtBQUssR0FBRyxDQUFDLENBQUM7UUFDZCxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsWUFBWSxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBRTtZQUM1QyxNQUFNLENBQUMsR0FBRyxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDMUIsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUU7Z0JBQ2hCLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRTtvQkFDWCxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztvQkFDekIsU0FBUztpQkFDVjtnQkFDRCxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxFQUFFO29CQUN4QyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztvQkFDekIsU0FBUztpQkFDVjthQUNGO1lBQ0QsSUFBSSxJQUFJLENBQUMsb0JBQW9CLEVBQUU7Z0JBQzdCLElBQUksSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQyxFQUFFO29CQUM1QixJQUFJLENBQUMseUJBQXlCLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO29CQUNyQyxLQUFLLEVBQUUsQ0FBQztpQkFDVDtxQkFBTSxJQUFJLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLEVBQUU7b0JBQ2pDLElBQUksS0FBSyxLQUFLLENBQUMsRUFBRTt3QkFDZixJQUFJLENBQUMsYUFBYSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztxQkFDMUI7eUJBQU0sSUFBSSxLQUFLLEdBQUcsQ0FBQyxFQUFFO3dCQUNwQixJQUFJLENBQUMseUJBQXlCLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO3dCQUNyQyxLQUFLLEVBQUUsQ0FBQztxQkFDVDtpQkFDRjtxQkFBTTtvQkFDTCxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxHQUFHLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFO3dCQUM1RCxLQUFLLEdBQUcsQ0FBQyxDQUFDO3dCQUNWLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO3FCQUMxQjt5QkFBTTt3QkFDTCxJQUFJLENBQUMseUJBQXlCLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO3FCQUN0QztpQkFDRjthQUNGO2lCQUFNO2dCQUNMLElBQUksSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQyxFQUFFO29CQUM1QixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO2lCQUNsQztxQkFBTSxJQUFJLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLEVBQUU7b0JBQ2pDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO2lCQUMxQjtxQkFBTTtvQkFDTCxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztpQkFDMUI7YUFDRjtTQUNGO1FBR0QsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQztRQUM5QixJQUFJLFFBQVEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1lBQ3ZCLEtBQUssSUFBSSxLQUFLLEdBQUcsQ0FBQyxFQUFFLEtBQUssR0FBRyxRQUFRLENBQUMsTUFBTSxFQUFFLEtBQUssRUFBRSxFQUFFO2dCQUNwRCxNQUFNLEtBQUssR0FBRyxRQUFRLENBQUMsS0FBSyxDQUFXLENBQUM7Z0JBQ3hDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7YUFDbEI7U0FDRjtJQUNILENBQUM7SUFFRCxJQUFJLE1BQU07UUFDUixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDOUIsQ0FBQztDQUVGO0FBRUEsQ0FBQztBQUFBLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQywyRUFBMkUiLCJzb3VyY2VzQ29udGVudCI6WyJcblxuaW1wb3J0IHsgXywgcGF0aCB9IGZyb20gJ3RucC1jb3JlL2Jyb3dzZXInO1xuXG5pbXBvcnQgeyBIZWxwZXJzIH0gZnJvbSAndG5wLWNvcmUvYnJvd3Nlcic7XG5pbXBvcnQgeyBSZWdpb24gfSBmcm9tICcuL3JlZ2lvbic7XG5cbmltcG9ydCB7IENvbmZpZ01vZGVscyB9IGZyb20gJ3RucC1jb25maWcvYnJvd3Nlcic7XG5pbXBvcnQgeyBSRUdFWF9SRUdJT04sIFRBR1MgfSBmcm9tICd0bnAtY29uZmlnL2Jyb3dzZXInO1xuXG5cbmV4cG9ydCBjbGFzcyBSZWdpb25SZW1vdmVyIHtcbiAgcHJpdmF0ZSByb290OiBSZWdpb247XG4gIHByaXZhdGUgcmVhZG9ubHkgU1RBUlRfUkVHSU9OOiBSZWdFeHBbXSA9IFtdO1xuICBwcml2YXRlIHJlYWRvbmx5IEVORF9SRUdJT046IFJlZ0V4cFtdID0gW107XG4gIHB1YmxpYyBzdGF0aWMgZnJvbShcbiAgICByZWFsdGl2ZU9yQWJzRmlsZVBBdGg6IHN0cmluZyxcbiAgICBjb250ZW50OiBzdHJpbmcsXG4gICAgcmVwbGFjZW1lbnRzcz86IGFueSwgLy8gTW9kZWxzLmRldi5SZXBsYWNlbWVudFtdLFxuICAgIHByb2plY3Q/OiBhbnksIC8vIFByb2plY3QsXG4gICkge1xuXG4gICAgbGV0IGZpbGVFeHRlbnNpb24gPSBwYXRoLmV4dG5hbWUocmVhbHRpdmVPckFic0ZpbGVQQXRoKTtcblxuICAgIGlmICghcmVwbGFjZW1lbnRzcykge1xuICAgICAgcmVwbGFjZW1lbnRzcyA9IFtcbiAgICAgICAgW1RBR1MuQkFDS0VORF9GVU5DLCBgcmV0dXJuICh2b2lkIDApO2BdLFxuICAgICAgICBUQUdTLkJBQ0tFTkQgYXMgYW55LFxuICAgICAgXTtcbiAgICB9XG4gICAgcmV0dXJuIG5ldyBSZWdpb25SZW1vdmVyKHJlYWx0aXZlT3JBYnNGaWxlUEF0aCwgZmlsZUV4dGVuc2lvbiBhcyBhbnksIGNvbnRlbnQsIHJlcGxhY2VtZW50c3MsIHByb2plY3QpO1xuICB9XG5cbiAgcHJpdmF0ZSBtYXRjaFN0YXJ0UmVnaW9uKGw6IHN0cmluZykge1xuICAgIGNvbnN0IHJlcyA9ICFfLmlzVW5kZWZpbmVkKHRoaXMuU1RBUlRfUkVHSU9OLmZpbmQociA9PiBsLm1hdGNoKHIpKSk7XG4gICAgcmV0dXJuIHJlcztcbiAgfVxuICBwcml2YXRlIG1hdGNoRW5kUmVnaW9uKGw6IHN0cmluZykge1xuICAgIGNvbnN0IHJlcyA9ICFfLmlzVW5kZWZpbmVkKHRoaXMuRU5EX1JFR0lPTi5maW5kKHIgPT4gbC5tYXRjaChyKSkpO1xuICAgIHJldHVybiByZXM7XG4gIH1cblxuXG4gIHByaXZhdGUgY29uc3RydWN0b3IoXG4gICAgcHVibGljIHJlYWRvbmx5IHJlYWx0aXZlT3JBYnNGaWxlUEF0aDogc3RyaW5nLFxuICAgIGZpbGVFeHRlbnNpb246IENvbmZpZ01vZGVscy5DdXRhYmxlRmlsZUV4dCxcbiAgICBwcml2YXRlIGNvbnRlbnQ6IHN0cmluZyxcbiAgICByZXBsYWNlbWVudHNzPzogYW55LCAvLyBNb2RlbHMuZGV2LlJlcGxhY2VtZW50W10sXG4gICAgcHVibGljIHJlYWRvbmx5IHByb2plY3Q/OiBhbnksIC8vIFByb2plY3RcblxuICApIHtcbiAgICBpZiAoKFJFR0VYX1JFR0lPTi5UU19KU19TQ1NTX1NBU1MuRVhUKS5pbmNsdWRlcyhmaWxlRXh0ZW5zaW9uKSkge1xuICAgICAgdGhpcy5TVEFSVF9SRUdJT04ucHVzaChSRUdFWF9SRUdJT04uVFNfSlNfU0NTU19TQVNTLlNUQVJUKTtcbiAgICAgIHRoaXMuRU5EX1JFR0lPTi5wdXNoKFJFR0VYX1JFR0lPTi5UU19KU19TQ1NTX1NBU1MuRU5EKTtcbiAgICB9XG4gICAgaWYgKChSRUdFWF9SRUdJT04uSFRNTC5FWFQpLmluY2x1ZGVzKGZpbGVFeHRlbnNpb24pKSB7XG4gICAgICB0aGlzLlNUQVJUX1JFR0lPTi5wdXNoKFJFR0VYX1JFR0lPTi5IVE1MLlNUQVJUKTtcbiAgICAgIHRoaXMuRU5EX1JFR0lPTi5wdXNoKFJFR0VYX1JFR0lPTi5IVE1MLkVORCk7XG4gICAgfVxuICAgIGlmICgoUkVHRVhfUkVHSU9OLkNTUy5FWFQpLmluY2x1ZGVzKGZpbGVFeHRlbnNpb24pKSB7XG4gICAgICB0aGlzLlNUQVJUX1JFR0lPTi5wdXNoKFJFR0VYX1JFR0lPTi5DU1MuU1RBUlQpO1xuICAgICAgdGhpcy5FTkRfUkVHSU9OLnB1c2goUkVHRVhfUkVHSU9OLkNTUy5FTkQpO1xuICAgIH1cblxuICAgIGNvbnN0IGxpbmVzID0gdGhpcy5jb250ZW50LnNwbGl0KCdcXG4nKTtcbiAgICB0aGlzLnJvb3QgPSBuZXcgUmVnaW9uKFxuICAgICAgdGhpcyxcbiAgICAgIHJlcGxhY2VtZW50c3MsXG4gICAgICB2b2lkIDAsXG4gICAgICAwLCAobGluZXMubGVuZ3RoIC0gMSksXG4gICAgICBfLmZpcnN0KGxpbmVzKSwgXy5sYXN0KGxpbmVzKSxcbiAgICAgIGxpbmVzKTtcbiAgICB0aGlzLnRyZWUodGhpcy5yb290KTtcbiAgfVxuXG4gIHByaXZhdGUgdHJlZShub2RlOiBSZWdpb24pIHtcbiAgICBjb25zdCBjb250ZW50TGluZXMgPSBub2RlLmNvbnRlbnRMaW5lcztcblxuXG5cblxuXG5cbiAgICBsZXQgc3RhY2sgPSAwO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgY29udGVudExpbmVzLmxlbmd0aDsgaSsrKSB7XG4gICAgICBjb25zdCBsID0gY29udGVudExpbmVzW2ldO1xuICAgICAgaWYgKCFub2RlLmlzUm9vdCkge1xuICAgICAgICBpZiAoaSA9PT0gMCkge1xuICAgICAgICAgIG5vZGUuYWRkTm9ybWFsTGluZShsLCAwKTtcbiAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoaSA9PT0gKG5vZGUuY29udGVudExpbmVzLmxlbmd0aCAtIDEpKSB7XG4gICAgICAgICAgbm9kZS5hZGROb3JtYWxMaW5lKGwsIGkpO1xuICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBpZiAobm9kZS5sYXN0UmVnaW9uV2l0aG91dEVuZCkge1xuICAgICAgICBpZiAodGhpcy5tYXRjaFN0YXJ0UmVnaW9uKGwpKSB7XG4gICAgICAgICAgbm9kZS5hZGROb3JtYWxMaW5lVG9MYXN0UmVnaW9uKGwsIGkpO1xuICAgICAgICAgIHN0YWNrKys7XG4gICAgICAgIH0gZWxzZSBpZiAodGhpcy5tYXRjaEVuZFJlZ2lvbihsKSkge1xuICAgICAgICAgIGlmIChzdGFjayA9PT0gMCkge1xuICAgICAgICAgICAgbm9kZS5lbmRMYXN0UmVnaW9uKGksIGwpO1xuICAgICAgICAgIH0gZWxzZSBpZiAoc3RhY2sgPiAwKSB7XG4gICAgICAgICAgICBub2RlLmFkZE5vcm1hbExpbmVUb0xhc3RSZWdpb24obCwgaSk7XG4gICAgICAgICAgICBzdGFjay0tO1xuICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBpZiAoaSA9PT0gKG5vZGUuY29udGVudExpbmVzLmxlbmd0aCAtIChub2RlLmlzUm9vdCA/IDEgOiAyKSkpIHtcbiAgICAgICAgICAgIHN0YWNrID0gMDtcbiAgICAgICAgICAgIG5vZGUuZW5kTGFzdFJlZ2lvbihpLCBsKTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgbm9kZS5hZGROb3JtYWxMaW5lVG9MYXN0UmVnaW9uKGwsIGkpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgaWYgKHRoaXMubWF0Y2hTdGFydFJlZ2lvbihsKSkge1xuICAgICAgICAgIG5vZGUuYWRkUmVnaW9uKHRoaXMsIG5vZGUsIGksIGwpO1xuICAgICAgICB9IGVsc2UgaWYgKHRoaXMubWF0Y2hFbmRSZWdpb24obCkpIHtcbiAgICAgICAgICBub2RlLmFkZE5vcm1hbExpbmUobCwgaSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgbm9kZS5hZGROb3JtYWxMaW5lKGwsIGkpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG5cbiAgICBjb25zdCBjaGlsZHJlbiA9IG5vZGUucmVnaW9ucztcbiAgICBpZiAoY2hpbGRyZW4ubGVuZ3RoID4gMCkge1xuICAgICAgZm9yIChsZXQgaW5kZXggPSAwOyBpbmRleCA8IGNoaWxkcmVuLmxlbmd0aDsgaW5kZXgrKykge1xuICAgICAgICBjb25zdCBjaGlsZCA9IGNoaWxkcmVuW2luZGV4XSBhcyBSZWdpb247XG4gICAgICAgIHRoaXMudHJlZShjaGlsZCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgZ2V0IG91dHB1dCgpIHtcbiAgICByZXR1cm4gdGhpcy5yb290LnRvU3RyaW5nKCk7XG4gIH1cblxufVxuXG4gOyh7fSk7IC8vIEAtLWVuZC1vZi1maWxlLWZvci1tb2R1bGU9aXNvbW9ycGhpYy1yZWdpb24tbG9hZGVyIGxpYi9yZWdpb24tcmVtb3Zlci50cyJdfQ==
112
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVnaW9uLXJlbW92ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi90bXAtbGlicy1mb3ItZGlzdC9pc29tb3JwaGljLXJlZ2lvbi1sb2FkZXIvcHJvamVjdHMvaXNvbW9ycGhpYy1yZWdpb24tbG9hZGVyL3NyYy9saWIvcmVnaW9uLXJlbW92ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLENBQUMsRUFBRSxJQUFJLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUczQyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBR2xDLE9BQU8sRUFBRSxZQUFZLEVBQUUsSUFBSSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFHeEQsTUFBTSxPQUFPLGFBQWE7SUFJakIsTUFBTSxDQUFDLElBQUksQ0FDaEIscUJBQTZCLEVBQzdCLE9BQWUsRUFDZixhQUFtQixFQUFFLDRCQUE0QjtJQUNqRCxPQUFhO1FBR2IsSUFBSSxhQUFhLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO1FBRXhELElBQUksQ0FBQyxhQUFhLEVBQUU7WUFDbEIsYUFBYSxHQUFHO2dCQUNkLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxrQkFBa0IsQ0FBQztnQkFDdkMsSUFBSSxDQUFDLE9BQWM7YUFDcEIsQ0FBQztTQUNIO1FBQ0QsT0FBTyxJQUFJLGFBQWEsQ0FBQyxxQkFBcUIsRUFBRSxhQUFvQixFQUFFLE9BQU8sRUFBRSxhQUFhLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDekcsQ0FBQztJQUVPLGdCQUFnQixDQUFDLENBQVM7UUFDaEMsTUFBTSxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDcEUsT0FB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QyxFQUFFO29CQUM1QixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO2lCQUNsQztxQkFBTSxJQUFJLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLEVBQUU7b0JBQ2pDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO2lCQUMxQjtxQkFBTTtvQkFDTCxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztpQkFDMUI7YUFDRjtTQUNGO1FBR0QsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQztRQUM5QixJQUFJLFFBQVEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1lBQ3ZCLEtBQUssSUFBSSxLQUFLLEdBQUcsQ0FBQyxFQUFFLEtBQUssR0FBRyxRQUFRLENBQUMsTUFBTSxFQUFFLEtBQUssRUFBRSxFQUFFO2dCQUNwRCxNQUFNLEtBQUssR0FBRyxRQUFRLENBQUMsS0FBSyxDQUFXLENBQUM7Z0JBQ3hDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7YUFDbEI7U0FDRjtJQUNILENBQUM7SUFFRCxJQUFJLE1BQU07UUFDUixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDOUIsQ0FBQztDQUVGO0FBRUEsQ0FBQztBQUFBLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQywyRUFBMkUiLCJzb3VyY2VzQ29udGVudCI6WyJcblxuaW1wb3J0IHsgXywgcGF0aCB9IGZyb20gJ3RucC1jb3JlL2Jyb3dzZXInO1xuXG5pbXBvcnQgeyBIZWxwZXJzIH0gZnJvbSAndG5wLWNvcmUvYnJvd3Nlcic7XG5pbXBvcnQgeyBSZWdpb24gfSBmcm9tICcuL3JlZ2lvbic7XG4vLyBAdHMtaWdub3JlXG5pbXBvcnQgeyBDb3JlTW9kZWxzIH0gZnJvbSAndG5wLWNvcmUvYnJvd3Nlcic7XG5pbXBvcnQgeyBSRUdFWF9SRUdJT04sIFRBR1MgfSBmcm9tICd0bnAtY29uZmlnL2Jyb3dzZXInO1xuXG5cbmV4cG9ydCBjbGFzcyBSZWdpb25SZW1vdmVyIHtcbiAgcHJpdmF0ZSByb290OiBSZWdpb247XG4gIHByaXZhdGUgcmVhZG9ubHkgU1RBUlRfUkVHSU9OOiBSZWdFeHBbXSA9IFtdO1xuICBwcml2YXRlIHJlYWRvbmx5IEVORF9SRUdJT046IFJlZ0V4cFtdID0gW107XG4gIHB1YmxpYyBzdGF0aWMgZnJvbShcbiAgICByZWFsdGl2ZU9yQWJzRmlsZVBBdGg6IHN0cmluZyxcbiAgICBjb250ZW50OiBzdHJpbmcsXG4gICAgcmVwbGFjZW1lbnRzcz86IGFueSwgLy8gTW9kZWxzLmRldi5SZXBsYWNlbWVudFtdLFxuICAgIHByb2plY3Q/OiBhbnksIC8vIFByb2plY3QsXG4gICkge1xuXG4gICAgbGV0IGZpbGVFeHRlbnNpb24gPSBwYXRoLmV4dG5hbWUocmVhbHRpdmVPckFic0ZpbGVQQXRoKTtcblxuICAgIGlmICghcmVwbGFjZW1lbnRzcykge1xuICAgICAgcmVwbGFjZW1lbnRzcyA9IFtcbiAgICAgICAgW1RBR1MuQkFDS0VORF9GVU5DLCBgcmV0dXJuICh2b2lkIDApO2BdLFxuICAgICAgICBUQUdTLkJBQ0tFTkQgYXMgYW55LFxuICAgICAgXTtcbiAgICB9XG4gICAgcmV0dXJuIG5ldyBSZWdpb25SZW1vdmVyKHJlYWx0aXZlT3JBYnNGaWxlUEF0aCwgZmlsZUV4dGVuc2lvbiBhcyBhbnksIGNvbnRlbnQsIHJlcGxhY2VtZW50c3MsIHByb2plY3QpO1xuICB9XG5cbiAgcHJpdmF0ZSBtYXRjaFN0YXJ0UmVnaW9uKGw6IHN0cmluZykge1xuICAgIGNvbnN0IHJlcyA9ICFfLmlzVW5kZWZpbmVkKHRoaXMuU1RBUlRfUkVHSU9OLmZpbmQociA9PiBsLm1hdGNoKHIpKSk7XG4gICAgcmV0dXJuIHJlcztcbiAgfVxuICBwcml2YXRlIG1hdGNoRW5kUmVnaW9uKGw6IHN0cmluZykge1xuICAgIGNvbnN0IHJlcyA9ICFfLmlzVW5kZWZpbmVkKHRoaXMuRU5EX1JFR0lPTi5maW5kKHIgPT4gbC5tYXRjaChyKSkpO1xuICAgIHJldHVybiByZXM7XG4gIH1cblxuXG4gIHByaXZhdGUgY29uc3RydWN0b3IoXG4gICAgcHVibGljIHJlYWRvbmx5IHJlYWx0aXZlT3JBYnNGaWxlUEF0aDogc3RyaW5nLFxuICAgIGZpbGVFeHRlbnNpb246IENvcmVNb2RlbHMuQ3V0YWJsZUZpbGVFeHQsXG4gICAgcHJpdmF0ZSBjb250ZW50OiBzdHJpbmcsXG4gICAgcmVwbGFjZW1lbnRzcz86IGFueSwgLy8gTW9kZWxzLmRldi5SZXBsYWNlbWVudFtdLFxuICAgIHB1YmxpYyByZWFkb25seSBwcm9qZWN0PzogYW55LCAvLyBQcm9qZWN0XG5cbiAgKSB7XG4gICAgaWYgKChSRUdFWF9SRUdJT04uVFNfSlNfU0NTU19TQVNTLkVYVCkuaW5jbHVkZXMoZmlsZUV4dGVuc2lvbikpIHtcbiAgICAgIHRoaXMuU1RBUlRfUkVHSU9OLnB1c2goUkVHRVhfUkVHSU9OLlRTX0pTX1NDU1NfU0FTUy5TVEFSVCk7XG4gICAgICB0aGlzLkVORF9SRUdJT04ucHVzaChSRUdFWF9SRUdJT04uVFNfSlNfU0NTU19TQVNTLkVORCk7XG4gICAgfVxuICAgIGlmICgoUkVHRVhfUkVHSU9OLkhUTUwuRVhUKS5pbmNsdWRlcyhmaWxlRXh0ZW5zaW9uKSkge1xuICAgICAgdGhpcy5TVEFSVF9SRUdJT04ucHVzaChSRUdFWF9SRUdJT04uSFRNTC5TVEFSVCk7XG4gICAgICB0aGlzLkVORF9SRUdJT04ucHVzaChSRUdFWF9SRUdJT04uSFRNTC5FTkQpO1xuICAgIH1cbiAgICBpZiAoKFJFR0VYX1JFR0lPTi5DU1MuRVhUKS5pbmNsdWRlcyhmaWxlRXh0ZW5zaW9uKSkge1xuICAgICAgdGhpcy5TVEFSVF9SRUdJT04ucHVzaChSRUdFWF9SRUdJT04uQ1NTLlNUQVJUKTtcbiAgICAgIHRoaXMuRU5EX1JFR0lPTi5wdXNoKFJFR0VYX1JFR0lPTi5DU1MuRU5EKTtcbiAgICB9XG5cbiAgICBjb25zdCBsaW5lcyA9IHRoaXMuY29udGVudC5zcGxpdCgnXFxuJyk7XG4gICAgdGhpcy5yb290ID0gbmV3IFJlZ2lvbihcbiAgICAgIHRoaXMsXG4gICAgICByZXBsYWNlbWVudHNzLFxuICAgICAgdm9pZCAwLFxuICAgICAgMCwgKGxpbmVzLmxlbmd0aCAtIDEpLFxuICAgICAgXy5maXJzdChsaW5lcyksIF8ubGFzdChsaW5lcyksXG4gICAgICBsaW5lcyk7XG4gICAgdGhpcy50cmVlKHRoaXMucm9vdCk7XG4gIH1cblxuICBwcml2YXRlIHRyZWUobm9kZTogUmVnaW9uKSB7XG4gICAgY29uc3QgY29udGVudExpbmVzID0gbm9kZS5jb250ZW50TGluZXM7XG5cblxuXG5cblxuXG4gICAgbGV0IHN0YWNrID0gMDtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGNvbnRlbnRMaW5lcy5sZW5ndGg7IGkrKykge1xuICAgICAgY29uc3QgbCA9IGNvbnRlbnRMaW5lc1tpXTtcbiAgICAgIGlmICghbm9kZS5pc1Jvb3QpIHtcbiAgICAgICAgaWYgKGkgPT09IDApIHtcbiAgICAgICAgICBub2RlLmFkZE5vcm1hbExpbmUobCwgMCk7XG4gICAgICAgICAgY29udGludWU7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGkgPT09IChub2RlLmNvbnRlbnRMaW5lcy5sZW5ndGggLSAxKSkge1xuICAgICAgICAgIG5vZGUuYWRkTm9ybWFsTGluZShsLCBpKTtcbiAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgaWYgKG5vZGUubGFzdFJlZ2lvbldpdGhvdXRFbmQpIHtcbiAgICAgICAgaWYgKHRoaXMubWF0Y2hTdGFydFJlZ2lvbihsKSkge1xuICAgICAgICAgIG5vZGUuYWRkTm9ybWFsTGluZVRvTGFzdFJlZ2lvbihsLCBpKTtcbiAgICAgICAgICBzdGFjaysrO1xuICAgICAgICB9IGVsc2UgaWYgKHRoaXMubWF0Y2hFbmRSZWdpb24obCkpIHtcbiAgICAgICAgICBpZiAoc3RhY2sgPT09IDApIHtcbiAgICAgICAgICAgIG5vZGUuZW5kTGFzdFJlZ2lvbihpLCBsKTtcbiAgICAgICAgICB9IGVsc2UgaWYgKHN0YWNrID4gMCkge1xuICAgICAgICAgICAgbm9kZS5hZGROb3JtYWxMaW5lVG9MYXN0UmVnaW9uKGwsIGkpO1xuICAgICAgICAgICAgc3RhY2stLTtcbiAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgaWYgKGkgPT09IChub2RlLmNvbnRlbnRMaW5lcy5sZW5ndGggLSAobm9kZS5pc1Jvb3QgPyAxIDogMikpKSB7XG4gICAgICAgICAgICBzdGFjayA9IDA7XG4gICAgICAgICAgICBub2RlLmVuZExhc3RSZWdpb24oaSwgbCk7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIG5vZGUuYWRkTm9ybWFsTGluZVRvTGFzdFJlZ2lvbihsLCBpKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGlmICh0aGlzLm1hdGNoU3RhcnRSZWdpb24obCkpIHtcbiAgICAgICAgICBub2RlLmFkZFJlZ2lvbih0aGlzLCBub2RlLCBpLCBsKTtcbiAgICAgICAgfSBlbHNlIGlmICh0aGlzLm1hdGNoRW5kUmVnaW9uKGwpKSB7XG4gICAgICAgICAgbm9kZS5hZGROb3JtYWxMaW5lKGwsIGkpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIG5vZGUuYWRkTm9ybWFsTGluZShsLCBpKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuXG4gICAgY29uc3QgY2hpbGRyZW4gPSBub2RlLnJlZ2lvbnM7XG4gICAgaWYgKGNoaWxkcmVuLmxlbmd0aCA+IDApIHtcbiAgICAgIGZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPCBjaGlsZHJlbi5sZW5ndGg7IGluZGV4KyspIHtcbiAgICAgICAgY29uc3QgY2hpbGQgPSBjaGlsZHJlbltpbmRleF0gYXMgUmVnaW9uO1xuICAgICAgICB0aGlzLnRyZWUoY2hpbGQpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGdldCBvdXRwdXQoKSB7XG4gICAgcmV0dXJuIHRoaXMucm9vdC50b1N0cmluZygpO1xuICB9XG5cbn1cblxuIDsoe30pOyAvLyBALS1lbmQtb2YtZmlsZS1mb3ItbW9kdWxlPWlzb21vcnBoaWMtcmVnaW9uLWxvYWRlciBsaWIvcmVnaW9uLXJlbW92ZXIudHMiXX0=
@@ -1,5 +1,5 @@
1
1
  import { _ } from 'tnp-core/browser';
2
- import { Models } from 'tnp-models/browser';
2
+ import { labelReplacementCode } from './models';
3
3
  import { TAGS } from 'tnp-config/browser';
4
4
  export class Region {
5
5
  constructor(context, replacementss, parent, startIndex, endIndex, lineStart, lineEnd, contentLines = []) {
@@ -82,30 +82,30 @@ export class Region {
82
82
  const verticalLength = regionOrString.toString().split('\n').length - 1;
83
83
  if (regionOrString.containsTitle(regionTag)) {
84
84
  if (regionTag.toLowerCase() === TAGS.WEBSQL.toLowerCase()) {
85
- out = `${_.times(verticalLength).map(() => Models.label.backendCode + '\n').join('')} ${out}`;
85
+ out = `${_.times(verticalLength).map(() => labelReplacementCode.backendCode + '\n').join('')} ${out}`;
86
86
  }
87
87
  if (regionTag.toLowerCase() === TAGS.BACKEND.toLowerCase()) {
88
- out = `${_.times(verticalLength).map(() => Models.label.backendCode + '\n').join('')} ${out}`;
88
+ out = `${_.times(verticalLength).map(() => labelReplacementCode.backendCode + '\n').join('')} ${out}`;
89
89
  }
90
90
  if (regionTag.toLowerCase() === TAGS.NOT_FOR_NPM.toLowerCase()) {
91
- out = `${_.times(verticalLength).map(() => Models.label.notForNpmCode + '\n').join('')} ${out}`;
91
+ out = `${_.times(verticalLength).map(() => labelReplacementCode.notForNpmCode + '\n').join('')} ${out}`;
92
92
  }
93
93
  if (regionTag.toLowerCase() === TAGS.BROWSER.toLowerCase()) {
94
- out = `${_.times(verticalLength).map(() => Models.label.browserCode + '\n').join('')} ${out}`;
94
+ out = `${_.times(verticalLength).map(() => labelReplacementCode.browserCode + '\n').join('')} ${out}`;
95
95
  }
96
96
  if (regionTag.toLowerCase() === TAGS.WEBSQL_ONLY.toLowerCase()) {
97
- out = `${_.times(verticalLength).map(() => Models.label.backendCode + '\n').join('')} ${out}`;
97
+ out = `${_.times(verticalLength).map(() => labelReplacementCode.backendCode + '\n').join('')} ${out}`;
98
98
  }
99
99
  if (regionTag.toLowerCase() === TAGS.BACKEND_FUNC.toLowerCase()) {
100
100
  let spacesPrevious = previous.search(/\S/);
101
101
  spacesPrevious = (spacesPrevious < 0 ? 0 : spacesPrevious);
102
- out = `${_.times(verticalLength).map(() => Models.label.backendCode + '\n').join('')}`
102
+ out = `${_.times(verticalLength).map(() => labelReplacementCode.backendCode + '\n').join('')}`
103
103
  + `${_.times(spacesPrevious).map(n => ' ').join('')} ${out}`;
104
104
  }
105
105
  if (regionTag.toLowerCase() === TAGS.WEBSQL_FUNC.toLowerCase()) {
106
106
  let spacesPrevious = previous.search(/\S/);
107
107
  spacesPrevious = (spacesPrevious < 0 ? 0 : spacesPrevious);
108
- out = `${_.times(verticalLength).map(() => Models.label.backendCode + '\n').join('')}`
108
+ out = `${_.times(verticalLength).map(() => labelReplacementCode.backendCode + '\n').join('')}`
109
109
  + `${_.times(spacesPrevious).map(n => ' ').join('')} ${out}`;
110
110
  }
111
111
  if (regionTag.toLowerCase() === TAGS.CUT_CODE_IF_TRUE.toLowerCase()
@@ -148,4 +148,4 @@ export class Region {
148
148
  }
149
149
  ;
150
150
  ({}); // @--end-of-file-for-module=isomorphic-region-loader lib/region.ts
151
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVnaW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vdG1wLWxpYnMtZm9yLWRpc3QvaXNvbW9ycGhpYy1yZWdpb24tbG9hZGVyL3Byb2plY3RzL2lzb21vcnBoaWMtcmVnaW9uLWxvYWRlci9zcmMvbGliL3JlZ2lvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQVcsQ0FBQyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDOUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBRzVDLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUUxQyxNQUFNLE9BQU8sTUFBTTtJQUNqQixZQUNVLE9BQXNCLEVBQ3ZCLGFBQXVDLEVBQ3ZDLE1BQWMsRUFDZCxVQUFrQixFQUNsQixRQUFnQixFQUNoQixTQUFpQixFQUNqQixPQUFlLEVBQ2YsZUFBeUIsRUFBRTtRQVAxQixZQUFPLEdBQVAsT0FBTyxDQUFlO1FBQ3ZCLGtCQUFhLEdBQWIsYUFBYSxDQUEwQjtRQUN2QyxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ2QsZUFBVSxHQUFWLFVBQVUsQ0FBUTtRQUNsQixhQUFRLEdBQVIsUUFBUSxDQUFRO1FBQ2hCLGNBQVMsR0FBVCxTQUFTLENBQVE7UUFDakIsWUFBTyxHQUFQLE9BQU8sQ0FBUTtRQUNmLGlCQUFZLEdBQVosWUFBWSxDQUFlO1FBZ0I1QixxQkFBZ0IsR0FBd0IsRUFBRSxDQUFDO0lBZC9DLENBQUM7SUFFTCxJQUFXLE1BQU07UUFDZixPQUFPLElBQUksQ0FBQyxRQUFRLEtBQUssS0FBSyxDQUFDLENBQUM7SUFDbEMsQ0FBQztJQUVELElBQVcsb0JBQW9CO1FBQzdCLE1BQU0sSUFBSSxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFDM0MsSUFBSSxJQUFJLFlBQVksTUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUMxQyxPQUFPLElBQUksQ0FBQztTQUNiO1FBQ0QsT0FBTyxLQUFLLENBQUMsQ0FBQztJQUNoQixDQUFDO0lBSUQsSUFBSSxPQUFPO1FBQ1QsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxZQUFZLE1BQU0sQ0FBQyxDQUFDO0lBQ2hFLENBQUM7SUFFTyxNQUFNLENBQUMsUUFBZ0IsRUFBRSxPQUFlO1FBQzlDLElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDO1FBQ3pCLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO0lBQ3pCLENBQUM7SUFFRCxJQUFJLE1BQU07UUFDUixPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUN0QixDQUFDO0lBRUQsYUFBYSxDQUFDLENBQVMsRUFBRSxTQUFpQjtRQUN4QyxJQUFJLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFDO1FBQ3RDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDaEMsQ0FBQztJQUVELHlCQUF5QixDQUFDLENBQVMsRUFBRSxTQUFpQjtRQUNwRCxJQUFJLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFDO1FBQ3RDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ2pELENBQUM7SUFFRCxTQUFTLENBQUMsT0FBc0IsRUFBRSxNQUFjLEVBQUUsVUFBa0IsRUFBRSxTQUFpQjtRQUNyRixJQUFJLENBQUMsWUFBWSxDQUFDLFVBQVUsQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFDO1FBQ3ZDLE1BQU0sTUFBTSxHQUFHLElBQUksTUFBTSxDQUN2QixPQUFPLEVBQ1AsSUFBSSxDQUFDLGFBQWEsRUFDbEIsTUFBTSxFQUNOLFVBQVUsRUFBRSxLQUFLLENBQUMsRUFDbEIsU0FBUyxFQUFFLEtBQUssQ0FBQyxFQUNqQixDQUFDLFNBQVMsQ0FBQyxDQUNaLENBQUM7UUFDRixJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3JDLENBQUM7SUFFRCxhQUFhLENBQUMsUUFBZ0IsRUFBRSxPQUFlO1FBQzdDLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLEdBQUcsS0FBSyxDQUFDLENBQUM7UUFDckMsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxZQUFZLE1BQU0sSUFBSSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQVcsQ0FBQztRQUNyRyxnQkFBZ0IsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQzVDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxRQUFRLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVPLGFBQWEsQ0FBQyxDQUErQjtRQUNuRCxNQUFNLEdBQUcsR0FBRyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFFaEQsT0FBTyxHQUFHLENBQUM7SUFDYixDQUFDO0lBRUQsSUFBWSxXQUFXO1FBQ3JCLElBQUksSUFBSSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUM7UUFDMUIsTUFBTSxVQUFVLEdBQUcsU0FBUyxDQUFDO1FBQzdCLE1BQU0sYUFBYSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDOUMsSUFBSSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQ2pCLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLGFBQWEsR0FBRyxVQUFVLENBQUMsTUFBTSxDQUFDLEVBQ2hELEVBQUUsQ0FDSCxDQUFDO1FBQ0YsT0FBTyxJQUFJO2FBQ1IsT0FBTyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUM7YUFDbEIsT0FBTyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLHVCQUF1QjtJQUNqRCxDQUFDO0lBRU0sUUFBUTtRQUNiLElBQUksSUFBSSxDQUFDLFNBQVMsS0FBSyxLQUFLLENBQUMsRUFBRTtZQUM3QixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUM7U0FDdkI7UUFDRCxJQUFJLFFBQVEsR0FBRyxFQUFFLENBQUM7UUFDbEIsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsZ0JBQWdCO2FBQ25DLEdBQUcsQ0FBQyxjQUFjLENBQUMsRUFBRTtZQUNwQixJQUFJLGNBQWMsWUFBWSxNQUFNLEVBQUU7Z0JBRXBDLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUM7Z0JBQ3hDLEtBQUssSUFBSSxLQUFLLEdBQUcsQ0FBQyxFQUFFLEtBQUssR0FBRyxZQUFZLENBQUMsTUFBTSxFQUFFLEtBQUssRUFBRSxFQUFFO29CQUN4RCxNQUFNLEdBQUcsR0FBRyxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUM7b0JBQ2hDLE1BQU0sS0FBSyxHQUFHLENBQUMsQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7b0JBRTdDLE1BQU0sU0FBUyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLEdBQWUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQWlDLENBQUM7b0JBRTNGLElBQUksR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBVyxDQUFDO29CQUUxQyxNQUFNLGNBQWMsR0FBRyxjQUFjLENBQUMsUUFBUSxFQUFFLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7b0JBRXhFLElBQUksY0FBYyxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUMsRUFBRTt3QkFDM0MsSUFBSSxTQUFTLENBQUMsV0FBVyxFQUFFLEtBQUssSUFBSSxDQUFDLE1BQU0sQ0FBQyxXQUFXLEVBQUUsRUFBRTs0QkFDekQsR0FBRyxHQUFHLEdBQUcsQ0FBQyxDQUFDLEtBQUssQ0FBQyxjQUFjLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxLQUFLLEdBQUcsRUFBRSxDQUFDO3lCQUNoRzt3QkFDRCxJQUFJLFNBQVMsQ0FBQyxXQUFXLEVBQUUsS0FBSyxJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsRUFBRSxFQUFFOzRCQUMxRCxHQUFHLEdBQUcsR0FBRyxDQUFDLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLEtBQUssR0FBRyxFQUFFLENBQUM7eUJBQ2hHO3dCQUNELElBQUksU0FBUyxDQUFDLFdBQVcsRUFBRSxLQUFLLElBQUksQ0FBQyxXQUFXLENBQUMsV0FBVyxFQUFFLEVBQUU7NEJBQzlELEdBQUcsR0FBRyxHQUFHLENBQUMsQ0FBQyxLQUFLLENBQUMsY0FBYyxDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQzt5QkFDbEc7d0JBQ0QsSUFBSSxTQUFTLENBQUMsV0FBVyxFQUFFLEtBQUssSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLEVBQUUsRUFBRTs0QkFDMUQsR0FBRyxHQUFHLEdBQUcsQ0FBQyxDQUFDLEtBQUssQ0FBQyxjQUFjLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxLQUFLLEdBQUcsRUFBRSxDQUFDO3lCQUNoRzt3QkFDRCxJQUFJLFNBQVMsQ0FBQyxXQUFXLEVBQUUsS0FBSyxJQUFJLENBQUMsV0FBVyxDQUFDLFdBQVcsRUFBRSxFQUFFOzRCQUM5RCxHQUFHLEdBQUcsR0FBRyxDQUFDLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLEtBQUssR0FBRyxFQUFFLENBQUM7eUJBQ2hHO3dCQUNELElBQ0UsU0FBUyxDQUFDLFdBQVcsRUFBRSxLQUFLLElBQUksQ0FBQyxZQUFZLENBQUMsV0FBVyxFQUFFLEVBQzNEOzRCQUNBLElBQUksY0FBYyxHQUFHLFFBQVEsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7NEJBQzNDLGNBQWMsR0FBRyxDQUFDLGNBQWMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsY0FBYyxDQUFDLENBQUM7NEJBQzNELEdBQUcsR0FBRyxHQUFHLENBQUMsQ0FBQyxLQUFLLENBQUMsY0FBYyxDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsRUFBRTtrQ0FDbEYsR0FBRyxDQUFDLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQzt5QkFDakU7d0JBQ0QsSUFDRSxTQUFTLENBQUMsV0FBVyxFQUFFLEtBQUssSUFBSSxDQUFDLFdBQVcsQ0FBQyxXQUFXLEVBQUUsRUFDMUQ7NEJBQ0EsSUFBSSxjQUFjLEdBQUcsUUFBUSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQzs0QkFDM0MsY0FBYyxHQUFHLENBQUMsY0FBYyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxjQUFjLENBQUMsQ0FBQzs0QkFDM0QsR0FBRyxHQUFHLEdBQUcsQ0FBQyxDQUFDLEtBQUssQ0FBQyxjQUFjLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxFQUFFO2tDQUNsRixHQUFHLENBQUMsQ0FBQyxLQUFLLENBQUMsY0FBYyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxLQUFLLEdBQUcsRUFBRSxDQUFDO3lCQUNqRTt3QkFDRCxJQUNFLFNBQVMsQ0FBQyxXQUFXLEVBQUUsS0FBSyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsV0FBVyxFQUFFOztnQ0FFL0QsU0FBUyxDQUFDLFdBQVcsRUFBRSxLQUFLLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxXQUFXLEVBQUUsRUFDaEU7NEJBQ0EsTUFBTSxFQUFFLEdBQUcsR0FBVSxDQUFDLENBQUMsb0NBQW9DOzRCQUMzRCxJQUFJLG1CQUFtQixHQUFHLGNBQWMsQ0FBQyxXQUFXLENBQUM7NEJBRXJELG1CQUFtQixHQUFHLG1CQUFtQixDQUFDLE9BQU8sQ0FBQyxTQUFTLEVBQUUsRUFBRSxDQUFDLENBQUM7NEJBR2pFLE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLE9BQU8sSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUM7NEJBRWpFLE1BQU0sT0FBTyxHQUFHLEVBQUUsQ0FBQyxtQkFBbUIsRUFBRSxnQkFBZ0IsRUFBRSxJQUFJLENBQUMscUJBQXFCLENBQUMsQ0FBQzs0QkFFdEYsSUFBSSxPQUFPLEtBQUssSUFBSSxFQUFFO2dDQUNwQixTQUFTOzZCQUNWOzRCQUNELElBQ0UsQ0FBQyxPQUFPLElBQUksQ0FDVixTQUFTLENBQUMsV0FBVyxFQUFFLEtBQUssSUFBSSxDQUFDLGdCQUFnQixDQUFDLFdBQVcsRUFBRSxDQUNoRSxDQUFDOztvQ0FFRixDQUFDLENBQUMsT0FBTyxJQUFJLENBQ1gsU0FBUyxDQUFDLFdBQVcsRUFBRSxLQUFLLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxXQUFXLEVBQUUsQ0FDakUsQ0FBQyxFQUNGO2dDQUNBLEdBQUcsR0FBRyxFQUFFLENBQUM7NkJBQ1Y7aUNBQU07Z0NBQ0wsU0FBUzs2QkFDVjt5QkFDRjt3QkFDRCxjQUFjLENBQUMsU0FBUyxHQUFHLEdBQUcsQ0FBQzt3QkFDL0IsTUFBTTtxQkFDUDtpQkFDRjthQUVGO1lBQ0QsTUFBTSxHQUFHLEdBQUcsY0FBYyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ3RDLFFBQVEsR0FBRyxHQUFHLENBQUM7WUFDZixPQUFPLEdBQUcsQ0FBQztRQUNiLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNoQixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDeEIsQ0FBQztJQUVELElBQVksT0FBTztRQUNqQixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDO0lBQzlCLENBQUM7SUFFRCxJQUFZLHFCQUFxQjtRQUMvQixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMscUJBQXFCLENBQUM7SUFDNUMsQ0FBQztDQUVGO0FBR0EsQ0FBQztBQUFBLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxtRUFBbUUiLCJzb3VyY2VzQ29udGVudCI6WyJcblxuaW1wb3J0IHsgSGVscGVycywgXyB9IGZyb20gJ3RucC1jb3JlL2Jyb3dzZXInO1xuaW1wb3J0IHsgTW9kZWxzIH0gZnJvbSAndG5wLW1vZGVscy9icm93c2VyJztcblxuaW1wb3J0IHR5cGUgeyBSZWdpb25SZW1vdmVyIH0gZnJvbSAnLi9yZWdpb24tcmVtb3Zlcic7XG5pbXBvcnQgeyBUQUdTIH0gZnJvbSAndG5wLWNvbmZpZy9icm93c2VyJztcblxuZXhwb3J0IGNsYXNzIFJlZ2lvbiB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgY29udGV4dDogUmVnaW9uUmVtb3ZlcixcbiAgICBwdWJsaWMgcmVwbGFjZW1lbnRzczogTW9kZWxzLmRldi5SZXBsYWNlbWVudFtdLFxuICAgIHB1YmxpYyBwYXJlbnQ6IFJlZ2lvbixcbiAgICBwdWJsaWMgc3RhcnRJbmRleDogbnVtYmVyLFxuICAgIHB1YmxpYyBlbmRJbmRleDogbnVtYmVyLFxuICAgIHB1YmxpYyBsaW5lU3RhcnQ6IHN0cmluZyxcbiAgICBwdWJsaWMgbGluZUVuZDogc3RyaW5nLFxuICAgIHB1YmxpYyBjb250ZW50TGluZXM6IHN0cmluZ1tdID0gW10sXG5cbiAgKSB7IH1cbiAgcHJpdmF0ZSB0bXBPdXRwdXQ6IHN0cmluZztcbiAgcHVibGljIGdldCBoYXNFbmQoKSB7XG4gICAgcmV0dXJuIHRoaXMuZW5kSW5kZXggIT09IHZvaWQgMDtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgbGFzdFJlZ2lvbldpdGhvdXRFbmQoKSB7XG4gICAgY29uc3QgbGFzdCA9IF8ubGFzdCh0aGlzLnJlZ2lvbnNPclN0cmluZ3MpO1xuICAgIGlmIChsYXN0IGluc3RhbmNlb2YgUmVnaW9uICYmICFsYXN0Lmhhc0VuZCkge1xuICAgICAgcmV0dXJuIGxhc3Q7XG4gICAgfVxuICAgIHJldHVybiB2b2lkIDA7XG4gIH1cblxuICBwcml2YXRlIHJlZ2lvbnNPclN0cmluZ3M6IChSZWdpb24gfCBzdHJpbmcpW10gPSBbXTtcblxuICBnZXQgcmVnaW9ucygpIHtcbiAgICByZXR1cm4gdGhpcy5yZWdpb25zT3JTdHJpbmdzLmZpbHRlcihmID0+IGYgaW5zdGFuY2VvZiBSZWdpb24pO1xuICB9XG5cbiAgcHJpdmF0ZSBzZXRFbmQoZW5kSW5kZXg6IG51bWJlciwgbGluZUVuZDogc3RyaW5nKSB7XG4gICAgdGhpcy5lbmRJbmRleCA9IGVuZEluZGV4O1xuICAgIHRoaXMubGluZUVuZCA9IGxpbmVFbmQ7XG4gIH1cblxuICBnZXQgaXNSb290KCkge1xuICAgIHJldHVybiAhdGhpcy5wYXJlbnQ7XG4gIH1cblxuICBhZGROb3JtYWxMaW5lKGw6IHN0cmluZywgbGluZUluZGV4OiBudW1iZXIpIHtcbiAgICB0aGlzLmNvbnRlbnRMaW5lc1tsaW5lSW5kZXhdID0gdm9pZCAwO1xuICAgIHRoaXMucmVnaW9uc09yU3RyaW5ncy5wdXNoKGwpO1xuICB9XG5cbiAgYWRkTm9ybWFsTGluZVRvTGFzdFJlZ2lvbihsOiBzdHJpbmcsIGxpbmVJbmRleDogbnVtYmVyKSB7XG4gICAgdGhpcy5jb250ZW50TGluZXNbbGluZUluZGV4XSA9IHZvaWQgMDtcbiAgICB0aGlzLmxhc3RSZWdpb25XaXRob3V0RW5kLmNvbnRlbnRMaW5lcy5wdXNoKGwpO1xuICB9XG5cbiAgYWRkUmVnaW9uKGNvbnRleHQ6IFJlZ2lvblJlbW92ZXIsIHBhcmVudDogUmVnaW9uLCBzdGFydEluZGV4OiBudW1iZXIsIGxpbmVTdGFydDogc3RyaW5nKSB7XG4gICAgdGhpcy5jb250ZW50TGluZXNbc3RhcnRJbmRleF0gPSB2b2lkIDA7XG4gICAgY29uc3QgbmV3UmVnID0gbmV3IFJlZ2lvbihcbiAgICAgIGNvbnRleHQsXG4gICAgICB0aGlzLnJlcGxhY2VtZW50c3MsXG4gICAgICBwYXJlbnQsXG4gICAgICBzdGFydEluZGV4LCB2b2lkIDAsXG4gICAgICBsaW5lU3RhcnQsIHZvaWQgMCxcbiAgICAgIFtsaW5lU3RhcnRdXG4gICAgKTtcbiAgICB0aGlzLnJlZ2lvbnNPclN0cmluZ3MucHVzaChuZXdSZWcpO1xuICB9XG5cbiAgZW5kTGFzdFJlZ2lvbihlbmRJbmRleDogbnVtYmVyLCBsaW5lRW5kOiBzdHJpbmcpIHtcbiAgICB0aGlzLmNvbnRlbnRMaW5lc1tlbmRJbmRleF0gPSB2b2lkIDA7XG4gICAgY29uc3QgcmVnaW9uV2l0aG91dEVuZCA9IHRoaXMucmVnaW9uc09yU3RyaW5ncy5maW5kKHIgPT4gciBpbnN0YW5jZW9mIFJlZ2lvbiAmJiAhci5oYXNFbmQpIGFzIFJlZ2lvbjtcbiAgICByZWdpb25XaXRob3V0RW5kLmNvbnRlbnRMaW5lcy5wdXNoKGxpbmVFbmQpO1xuICAgIHJlZ2lvbldpdGhvdXRFbmQuc2V0RW5kKGVuZEluZGV4LCBsaW5lRW5kKTtcbiAgfVxuXG4gIHByaXZhdGUgY29udGFpbnNUaXRsZShzOiBNb2RlbHMuZGV2LlJlcGxhY2VtZW50U3RyaW5nKSB7XG4gICAgY29uc3QgcmVzID0gKHRoaXMudGl0bGVTdHJpbmcuc2VhcmNoKHMpICE9PSAtMSk7XG5cbiAgICByZXR1cm4gcmVzO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXQgdGl0bGVTdHJpbmcoKSB7XG4gICAgbGV0IGxpbmUgPSB0aGlzLmxpbmVTdGFydDtcbiAgICBjb25zdCByZWdpb25Xb3JkID0gJyNyZWdpb24nO1xuICAgIGNvbnN0IGluZGV4T2ZSZWdpb24gPSBsaW5lLnNlYXJjaChyZWdpb25Xb3JkKTtcbiAgICBsaW5lID0gbGluZS5yZXBsYWNlKFxuICAgICAgbGluZS5zbGljZSgwLCBpbmRleE9mUmVnaW9uICsgcmVnaW9uV29yZC5sZW5ndGgpLFxuICAgICAgJydcbiAgICApO1xuICAgIHJldHVybiBsaW5lXG4gICAgICAucmVwbGFjZSgnLS0+JywgJycpXG4gICAgICAucmVwbGFjZSgnPCEtLScsICcnKTsgLy8gVE9ETyBub3QgbmVjZXNzZXJ5ID9cbiAgfVxuXG4gIHB1YmxpYyB0b1N0cmluZygpIHtcbiAgICBpZiAodGhpcy50bXBPdXRwdXQgIT09IHZvaWQgMCkge1xuICAgICAgcmV0dXJuIHRoaXMudG1wT3V0cHV0O1xuICAgIH1cbiAgICBsZXQgcHJldmlvdXMgPSAnJztcbiAgICB0aGlzLnRtcE91dHB1dCA9IHRoaXMucmVnaW9uc09yU3RyaW5nc1xuICAgICAgLm1hcChyZWdpb25PclN0cmluZyA9PiB7XG4gICAgICAgIGlmIChyZWdpb25PclN0cmluZyBpbnN0YW5jZW9mIFJlZ2lvbikge1xuXG4gICAgICAgICAgY29uc3QgcmVwbGFjZW1lbnRzID0gdGhpcy5yZXBsYWNlbWVudHNzO1xuICAgICAgICAgIGZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPCByZXBsYWNlbWVudHMubGVuZ3RoOyBpbmRleCsrKSB7XG4gICAgICAgICAgICBjb25zdCByZXAgPSByZXBsYWNlbWVudHNbaW5kZXhdO1xuICAgICAgICAgICAgY29uc3QgaXNBcnIgPSBfLmlzQXJyYXkocmVwbGFjZW1lbnRzW2luZGV4XSk7XG5cbiAgICAgICAgICAgIGNvbnN0IHJlZ2lvblRhZyA9IChpc0FyciA/IF8uZmlyc3QocmVwIGFzIHN0cmluZ1tdKSA6IHJlcCkgYXMgTW9kZWxzLmRldi5SZXBsYWNlbWVudFN0cmluZztcblxuICAgICAgICAgICAgbGV0IG91dCA9IChpc0FyciA/IHJlcFsxXSA6ICcnKSBhcyBzdHJpbmc7XG5cbiAgICAgICAgICAgIGNvbnN0IHZlcnRpY2FsTGVuZ3RoID0gcmVnaW9uT3JTdHJpbmcudG9TdHJpbmcoKS5zcGxpdCgnXFxuJykubGVuZ3RoIC0gMTtcblxuICAgICAgICAgICAgaWYgKHJlZ2lvbk9yU3RyaW5nLmNvbnRhaW5zVGl0bGUocmVnaW9uVGFnKSkge1xuICAgICAgICAgICAgICBpZiAocmVnaW9uVGFnLnRvTG93ZXJDYXNlKCkgPT09IFRBR1MuV0VCU1FMLnRvTG93ZXJDYXNlKCkpIHtcbiAgICAgICAgICAgICAgICBvdXQgPSBgJHtfLnRpbWVzKHZlcnRpY2FsTGVuZ3RoKS5tYXAoKCkgPT4gTW9kZWxzLmxhYmVsLmJhY2tlbmRDb2RlICsgJ1xcbicpLmpvaW4oJycpfSAgJHtvdXR9YDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBpZiAocmVnaW9uVGFnLnRvTG93ZXJDYXNlKCkgPT09IFRBR1MuQkFDS0VORC50b0xvd2VyQ2FzZSgpKSB7XG4gICAgICAgICAgICAgICAgb3V0ID0gYCR7Xy50aW1lcyh2ZXJ0aWNhbExlbmd0aCkubWFwKCgpID0+IE1vZGVscy5sYWJlbC5iYWNrZW5kQ29kZSArICdcXG4nKS5qb2luKCcnKX0gICR7b3V0fWA7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgaWYgKHJlZ2lvblRhZy50b0xvd2VyQ2FzZSgpID09PSBUQUdTLk5PVF9GT1JfTlBNLnRvTG93ZXJDYXNlKCkpIHtcbiAgICAgICAgICAgICAgICBvdXQgPSBgJHtfLnRpbWVzKHZlcnRpY2FsTGVuZ3RoKS5tYXAoKCkgPT4gTW9kZWxzLmxhYmVsLm5vdEZvck5wbUNvZGUgKyAnXFxuJykuam9pbignJyl9ICAke291dH1gO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIGlmIChyZWdpb25UYWcudG9Mb3dlckNhc2UoKSA9PT0gVEFHUy5CUk9XU0VSLnRvTG93ZXJDYXNlKCkpIHtcbiAgICAgICAgICAgICAgICBvdXQgPSBgJHtfLnRpbWVzKHZlcnRpY2FsTGVuZ3RoKS5tYXAoKCkgPT4gTW9kZWxzLmxhYmVsLmJyb3dzZXJDb2RlICsgJ1xcbicpLmpvaW4oJycpfSAgJHtvdXR9YDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBpZiAocmVnaW9uVGFnLnRvTG93ZXJDYXNlKCkgPT09IFRBR1MuV0VCU1FMX09OTFkudG9Mb3dlckNhc2UoKSkge1xuICAgICAgICAgICAgICAgIG91dCA9IGAke18udGltZXModmVydGljYWxMZW5ndGgpLm1hcCgoKSA9PiBNb2RlbHMubGFiZWwuYmFja2VuZENvZGUgKyAnXFxuJykuam9pbignJyl9ICAke291dH1gO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgICByZWdpb25UYWcudG9Mb3dlckNhc2UoKSA9PT0gVEFHUy5CQUNLRU5EX0ZVTkMudG9Mb3dlckNhc2UoKVxuICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICBsZXQgc3BhY2VzUHJldmlvdXMgPSBwcmV2aW91cy5zZWFyY2goL1xcUy8pO1xuICAgICAgICAgICAgICAgIHNwYWNlc1ByZXZpb3VzID0gKHNwYWNlc1ByZXZpb3VzIDwgMCA/IDAgOiBzcGFjZXNQcmV2aW91cyk7XG4gICAgICAgICAgICAgICAgb3V0ID0gYCR7Xy50aW1lcyh2ZXJ0aWNhbExlbmd0aCkubWFwKCgpID0+IE1vZGVscy5sYWJlbC5iYWNrZW5kQ29kZSArICdcXG4nKS5qb2luKCcnKX1gXG4gICAgICAgICAgICAgICAgICArIGAke18udGltZXMoc3BhY2VzUHJldmlvdXMpLm1hcChuID0+ICcgJykuam9pbignJyl9ICAke291dH1gO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgICByZWdpb25UYWcudG9Mb3dlckNhc2UoKSA9PT0gVEFHUy5XRUJTUUxfRlVOQy50b0xvd2VyQ2FzZSgpXG4gICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgIGxldCBzcGFjZXNQcmV2aW91cyA9IHByZXZpb3VzLnNlYXJjaCgvXFxTLyk7XG4gICAgICAgICAgICAgICAgc3BhY2VzUHJldmlvdXMgPSAoc3BhY2VzUHJldmlvdXMgPCAwID8gMCA6IHNwYWNlc1ByZXZpb3VzKTtcbiAgICAgICAgICAgICAgICBvdXQgPSBgJHtfLnRpbWVzKHZlcnRpY2FsTGVuZ3RoKS5tYXAoKCkgPT4gTW9kZWxzLmxhYmVsLmJhY2tlbmRDb2RlICsgJ1xcbicpLmpvaW4oJycpfWBcbiAgICAgICAgICAgICAgICAgICsgYCR7Xy50aW1lcyhzcGFjZXNQcmV2aW91cykubWFwKG4gPT4gJyAnKS5qb2luKCcnKX0gICR7b3V0fWA7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgIHJlZ2lvblRhZy50b0xvd2VyQ2FzZSgpID09PSBUQUdTLkNVVF9DT0RFX0lGX1RSVUUudG9Mb3dlckNhc2UoKVxuICAgICAgICAgICAgICAgIHx8XG4gICAgICAgICAgICAgICAgcmVnaW9uVGFnLnRvTG93ZXJDYXNlKCkgPT09IFRBR1MuQ1VUX0NPREVfSUZfRkFMU0UudG9Mb3dlckNhc2UoKVxuICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICBjb25zdCBmbiA9IG91dCBhcyBhbnk7IC8vIGFzIFJldHVyblR5cGU8dHlwZW9mIGNvZGVDdXR0Rm4+O1xuICAgICAgICAgICAgICAgIGxldCBleHByZXNzaW9uVG9FeGVjdXRlID0gcmVnaW9uT3JTdHJpbmcudGl0bGVTdHJpbmc7XG5cbiAgICAgICAgICAgICAgICBleHByZXNzaW9uVG9FeGVjdXRlID0gZXhwcmVzc2lvblRvRXhlY3V0ZS5yZXBsYWNlKHJlZ2lvblRhZywgJycpO1xuXG5cbiAgICAgICAgICAgICAgICBjb25zdCBjb25maWdGb3JQcm9qZWN0ID0gdGhpcy5wcm9qZWN0ICYmIHRoaXMucHJvamVjdC5lbnYuY29uZmlnO1xuXG4gICAgICAgICAgICAgICAgY29uc3QgY3V0Q29kZSA9IGZuKGV4cHJlc3Npb25Ub0V4ZWN1dGUsIGNvbmZpZ0ZvclByb2plY3QsIHRoaXMucmVhbHRpdmVPckFic0ZpbGVQQXRoKTtcblxuICAgICAgICAgICAgICAgIGlmIChjdXRDb2RlID09PSBudWxsKSB7XG4gICAgICAgICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICAgKGN1dENvZGUgJiYgKFxuICAgICAgICAgICAgICAgICAgICByZWdpb25UYWcudG9Mb3dlckNhc2UoKSA9PT0gVEFHUy5DVVRfQ09ERV9JRl9UUlVFLnRvTG93ZXJDYXNlKClcbiAgICAgICAgICAgICAgICAgICkpXG4gICAgICAgICAgICAgICAgICB8fFxuICAgICAgICAgICAgICAgICAgKCFjdXRDb2RlICYmIChcbiAgICAgICAgICAgICAgICAgICAgcmVnaW9uVGFnLnRvTG93ZXJDYXNlKCkgPT09IFRBR1MuQ1VUX0NPREVfSUZfRkFMU0UudG9Mb3dlckNhc2UoKVxuICAgICAgICAgICAgICAgICAgKSlcbiAgICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICAgIG91dCA9ICcnO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgcmVnaW9uT3JTdHJpbmcudG1wT3V0cHV0ID0gb3V0O1xuICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuICAgICAgICBjb25zdCByZXMgPSByZWdpb25PclN0cmluZy50b1N0cmluZygpO1xuICAgICAgICBwcmV2aW91cyA9IHJlcztcbiAgICAgICAgcmV0dXJuIHJlcztcbiAgICAgIH0pLmpvaW4oJ1xcbicpO1xuICAgIHJldHVybiB0aGlzLnRtcE91dHB1dDtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0IHByb2plY3QoKSB7XG4gICAgcmV0dXJuIHRoaXMuY29udGV4dC5wcm9qZWN0O1xuICB9XG5cbiAgcHJpdmF0ZSBnZXQgcmVhbHRpdmVPckFic0ZpbGVQQXRoKCkge1xuICAgIHJldHVybiB0aGlzLmNvbnRleHQucmVhbHRpdmVPckFic0ZpbGVQQXRoO1xuICB9XG5cbn1cblxuXG4gOyh7fSk7IC8vIEAtLWVuZC1vZi1maWxlLWZvci1tb2R1bGU9aXNvbW9ycGhpYy1yZWdpb24tbG9hZGVyIGxpYi9yZWdpb24udHMiXX0=
151
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVnaW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vdG1wLWxpYnMtZm9yLWRpc3QvaXNvbW9ycGhpYy1yZWdpb24tbG9hZGVyL3Byb2plY3RzL2lzb21vcnBoaWMtcmVnaW9uLWxvYWRlci9zcmMvbGliL3JlZ2lvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQVcsQ0FBQyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDOUMsT0FBTyxFQUFrQyxvQkFBb0IsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUdoRixPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFMUMsTUFBTSxPQUFPLE1BQU07SUFDakIsWUFDVSxPQUFzQixFQUN2QixhQUE0QixFQUM1QixNQUFjLEVBQ2QsVUFBa0IsRUFDbEIsUUFBZ0IsRUFDaEIsU0FBaUIsRUFDakIsT0FBZSxFQUNmLGVBQXlCLEVBQUU7UUFQMUIsWUFBTyxHQUFQLE9BQU8sQ0FBZTtRQUN2QixrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUM1QixXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ2QsZUFBVSxHQUFWLFVBQVUsQ0FBUTtRQUNsQixhQUFRLEdBQVIsUUFBUSxDQUFRO1FBQ2hCLGNBQVMsR0FBVCxTQUFTLENBQVE7UUFDakIsWUFBTyxHQUFQLE9BQU8sQ0FBUTtRQUNmLGlCQUFZLEdBQVosWUFBWSxDQUFlO1FBZ0I1QixxQkFBZ0IsR0FBd0IsRUFBRSxDQUFDO0lBZC9DLENBQUM7SUFFTCxJQUFXLE1BQU07UUFDZixPQUFPLElBQUksQ0FBQyxRQUFRLEtBQUssS0FBSyxDQUFDLENBQUM7SUFDbEMsQ0FBQztJQUVELElBQVcsb0JBQW9CO1FBQzdCLE1BQU0sSUFBSSxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFDM0MsSUFBSSxJQUFJLFlBQVksTUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0s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QUFDLE1BQU0sQ0FBQyxXQUFXLEVBQUUsRUFBRTs0QkFDekQsR0FBRyxHQUFHLEdBQUcsQ0FBQyxDQUFDLEtBQUssQ0FBQyxjQUFjLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsb0JBQW9CLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQzt5QkFDeEc7d0JBQ0QsSUFBSSxTQUFTLENBQUMsV0FBVyxFQUFFLEtBQUssSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLEVBQUUsRUFBRTs0QkFDMUQsR0FBRyxHQUFHLEdBQUcsQ0FBQyxDQUFDLEtBQUssQ0FBQyxjQUFjLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsb0JBQW9CLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQzt5QkFDeEc7d0JBQ0QsSUFBSSxTQUFTLENBQUMsV0FBVyxFQUFFLEtBQUssSUFBSSxDQUFDLFdBQVcsQ0FBQyxXQUFXLEVBQUUsRUFBRTs0QkFDOUQsR0FBRyxHQUFHLEdBQUcsQ0FBQyxDQUFDLEtBQUssQ0FBQyxjQUFjLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsb0JBQW9CLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQzt5QkFDMUc7d0JBQ0QsSUFBSSxTQUFTLENBQUMsV0FBVyxFQUFFLEtBQUssSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLEVBQUUsRUFBRTs0QkFDMUQsR0FBRyxHQUFHLEdBQUcsQ0FBQyxDQUFDLEtBQUssQ0FBQyxjQUFjLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsb0JBQW9CLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQzt5QkFDeEc7d0JBQ0QsSUFBSSxTQUFTLENBQUMsV0FBVyxFQUFFLEtBQUssSUFBSSxDQUFDLFdBQVcsQ0FBQyxXQUFXLEVBQUUsRUFBRTs0QkFDOUQsR0FBRyxHQUFHLEdBQUcsQ0FBQyxDQUFDLEtBQUssQ0FBQyxjQUFjLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsb0JBQW9CLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQzt5QkFDeEc7d0JBQ0QsSUFDRSxTQUFTLENBQUMsV0FBVyxFQUFFLEtBQUssSUFBSSxDQUFDLFlBQVksQ0FBQyxXQUFXLEVBQUUsRUFDM0Q7NEJBQ0EsSUFBSSxjQUFjLEdBQUcsUUFBUSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQzs0QkFDM0MsY0FBYyxHQUFHLENBQUMsY0FBYyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxjQUFjLENBQUMsQ0FBQzs0QkFDM0QsR0FBRyxHQUFHLEdBQUcsQ0FBQyxDQUFDLEtBQUssQ0FBQyxjQUFjLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsb0JBQW9CLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsRUFBRTtrQ0FDMUYsR0FBRyxDQUFDLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQzt5QkFDakU7d0JBQ0QsSUFDRSxTQUFTLENBQUMsV0FBVyxFQUFFLEtBQUssSUFBSSxDQUFDLFdBQVcsQ0FBQyxXQUFXLEVBQUUsRUFDMUQ7NEJBQ0EsSUFBSSxjQUFjLEdBQUcsUUFBUSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQzs0QkFDM0MsY0FBYyxHQUFHLENBQUMsY0FBYyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxjQUFjLENBQUMsQ0FBQzs0QkFDM0QsR0FBRyxHQUFHLEdBQUcsQ0FBQyxDQUFDLEtBQUssQ0FBQyxjQUFjLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsb0JBQW9CLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsRUFBRTtrQ0FDMUYsR0FBRyxDQUFDLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQzt5QkFDakU7d0JBQ0QsSUFDRSxTQUFTLENBQUMsV0FBVyxFQUFFLEtBQUssSUFBSSxDQUFDLGdCQUFnQixDQUFDLFdBQVcsRUFBRTs7Z0NBRS9ELFNBQVMsQ0FBQyxXQUFXLEVBQUUsS0FBSyxJQUFJLENBQUMsaUJBQWlCLENBQUMsV0FBVyxFQUFFLEVBQ2hFOzRCQUNBLE1BQU0sRUFBRSxHQUFHLEdBQVUsQ0FBQyxDQUFDLG9DQUFvQzs0QkFDM0QsSUFBSSxtQkFBbUIsR0FBRyxjQUFjLENBQUMsV0FBVyxDQUFDOzRCQUVyRCxtQkFBbUIsR0FBRyxtQkFBbUIsQ0FBQyxPQUFPLENBQUMsU0FBUyxFQUFFLEVBQUUsQ0FBQyxDQUFDOzRCQUdqRSxNQUFNLGdCQUFnQixHQUFHLElBQUksQ0FBQyxPQUFPLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDOzRCQUVqRSxNQUFNLE9BQU8sR0FBRyxFQUFFLENBQUMsbUJBQW1CLEVBQUUsZ0JBQWdCLEVBQUUsSUFBSSxDQUFDLHFCQUFxQixDQUFDLENBQUM7NEJBRXRGLElBQUksT0FBTyxLQUFLLElBQUksRUFBRTtnQ0FDcEIsU0FBUzs2QkFDVjs0QkFDRCxJQUNFLENBQUMsT0FBTyxJQUFJLENBQ1YsU0FBUyxDQUFDLFdBQVcsRUFBRSxLQUFLLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxXQUFXLEVBQUUsQ0FDaEUsQ0FBQzs7b0NBRUYsQ0FBQyxDQUFDLE9BQU8sSUFBSSxDQUNYLFNBQVMsQ0FBQyxXQUFXLEVBQUUsS0FBSyxJQUFJLENBQUMsaUJBQWlCLENBQUMsV0FBVyxFQUFFLENBQ2pFLENBQUMsRUFDRjtnQ0FDQSxHQUFHLEdBQUcsRUFBRSxDQUFDOzZCQUNWO2lDQUFNO2dDQUNMLFNBQVM7NkJBQ1Y7eUJBQ0Y7d0JBQ0QsY0FBYyxDQUFDLFNBQVMsR0FBRyxHQUFHLENBQUM7d0JBQy9CLE1BQU07cUJBQ1A7aUJBQ0Y7YUFFRjtZQUNELE1BQU0sR0FBRyxHQUFHLGNBQWMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUN0QyxRQUFRLEdBQUcsR0FBRyxDQUFDO1lBQ2YsT0FBTyxHQUFHLENBQUM7UUFDYixDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDaEIsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDO0lBQ3hCLENBQUM7SUFFRCxJQUFZLE9BQU87UUFDakIsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQztJQUM5QixDQUFDO0lBRUQsSUFBWSxxQkFBcUI7UUFDL0IsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLHFCQUFxQixDQUFDO0lBQzVDLENBQUM7Q0FFRjtBQUdBLENBQUM7QUFBQSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsbUVBQW1FIiwic291cmNlc0NvbnRlbnQiOlsiXG5cbmltcG9ydCB7IEhlbHBlcnMsIF8gfSBmcm9tICd0bnAtY29yZS9icm93c2VyJztcbmltcG9ydCB7IFJlcGxhY2VtZW50LCBSZXBsYWNlbWVudFN0cmluZywgbGFiZWxSZXBsYWNlbWVudENvZGUgfSBmcm9tICcuL21vZGVscyc7XG5cbmltcG9ydCB0eXBlIHsgUmVnaW9uUmVtb3ZlciB9IGZyb20gJy4vcmVnaW9uLXJlbW92ZXInO1xuaW1wb3J0IHsgVEFHUyB9IGZyb20gJ3RucC1jb25maWcvYnJvd3Nlcic7XG5cbmV4cG9ydCBjbGFzcyBSZWdpb24ge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGNvbnRleHQ6IFJlZ2lvblJlbW92ZXIsXG4gICAgcHVibGljIHJlcGxhY2VtZW50c3M6IFJlcGxhY2VtZW50W10sXG4gICAgcHVibGljIHBhcmVudDogUmVnaW9uLFxuICAgIHB1YmxpYyBzdGFydEluZGV4OiBudW1iZXIsXG4gICAgcHVibGljIGVuZEluZGV4OiBudW1iZXIsXG4gICAgcHVibGljIGxpbmVTdGFydDogc3RyaW5nLFxuICAgIHB1YmxpYyBsaW5lRW5kOiBzdHJpbmcsXG4gICAgcHVibGljIGNvbnRlbnRMaW5lczogc3RyaW5nW10gPSBbXSxcblxuICApIHsgfVxuICBwcml2YXRlIHRtcE91dHB1dDogc3RyaW5nO1xuICBwdWJsaWMgZ2V0IGhhc0VuZCgpIHtcbiAgICByZXR1cm4gdGhpcy5lbmRJbmRleCAhPT0gdm9pZCAwO1xuICB9XG5cbiAgcHVibGljIGdldCBsYXN0UmVnaW9uV2l0aG91dEVuZCgpIHtcbiAgICBjb25zdCBsYXN0ID0gXy5sYXN0KHRoaXMucmVnaW9uc09yU3RyaW5ncyk7XG4gICAgaWYgKGxhc3QgaW5zdGFuY2VvZiBSZWdpb24gJiYgIWxhc3QuaGFzRW5kKSB7XG4gICAgICByZXR1cm4gbGFzdDtcbiAgICB9XG4gICAgcmV0dXJuIHZvaWQgMDtcbiAgfVxuXG4gIHByaXZhdGUgcmVnaW9uc09yU3RyaW5nczogKFJlZ2lvbiB8IHN0cmluZylbXSA9IFtdO1xuXG4gIGdldCByZWdpb25zKCkge1xuICAgIHJldHVybiB0aGlzLnJlZ2lvbnNPclN0cmluZ3MuZmlsdGVyKGYgPT4gZiBpbnN0YW5jZW9mIFJlZ2lvbik7XG4gIH1cblxuICBwcml2YXRlIHNldEVuZChlbmRJbmRleDogbnVtYmVyLCBsaW5lRW5kOiBzdHJpbmcpIHtcbiAgICB0aGlzLmVuZEluZGV4ID0gZW5kSW5kZXg7XG4gICAgdGhpcy5saW5lRW5kID0gbGluZUVuZDtcbiAgfVxuXG4gIGdldCBpc1Jvb3QoKSB7XG4gICAgcmV0dXJuICF0aGlzLnBhcmVudDtcbiAgfVxuXG4gIGFkZE5vcm1hbExpbmUobDogc3RyaW5nLCBsaW5lSW5kZXg6IG51bWJlcikge1xuICAgIHRoaXMuY29udGVudExpbmVzW2xpbmVJbmRleF0gPSB2b2lkIDA7XG4gICAgdGhpcy5yZWdpb25zT3JTdHJpbmdzLnB1c2gobCk7XG4gIH1cblxuICBhZGROb3JtYWxMaW5lVG9MYXN0UmVnaW9uKGw6IHN0cmluZywgbGluZUluZGV4OiBudW1iZXIpIHtcbiAgICB0aGlzLmNvbnRlbnRMaW5lc1tsaW5lSW5kZXhdID0gdm9pZCAwO1xuICAgIHRoaXMubGFzdFJlZ2lvbldpdGhvdXRFbmQuY29udGVudExpbmVzLnB1c2gobCk7XG4gIH1cblxuICBhZGRSZWdpb24oY29udGV4dDogUmVnaW9uUmVtb3ZlciwgcGFyZW50OiBSZWdpb24sIHN0YXJ0SW5kZXg6IG51bWJlciwgbGluZVN0YXJ0OiBzdHJpbmcpIHtcbiAgICB0aGlzLmNvbnRlbnRMaW5lc1tzdGFydEluZGV4XSA9IHZvaWQgMDtcbiAgICBjb25zdCBuZXdSZWcgPSBuZXcgUmVnaW9uKFxuICAgICAgY29udGV4dCxcbiAgICAgIHRoaXMucmVwbGFjZW1lbnRzcyxcbiAgICAgIHBhcmVudCxcbiAgICAgIHN0YXJ0SW5kZXgsIHZvaWQgMCxcbiAgICAgIGxpbmVTdGFydCwgdm9pZCAwLFxuICAgICAgW2xpbmVTdGFydF1cbiAgICApO1xuICAgIHRoaXMucmVnaW9uc09yU3RyaW5ncy5wdXNoKG5ld1JlZyk7XG4gIH1cblxuICBlbmRMYXN0UmVnaW9uKGVuZEluZGV4OiBudW1iZXIsIGxpbmVFbmQ6IHN0cmluZykge1xuICAgIHRoaXMuY29udGVudExpbmVzW2VuZEluZGV4XSA9IHZvaWQgMDtcbiAgICBjb25zdCByZWdpb25XaXRob3V0RW5kID0gdGhpcy5yZWdpb25zT3JTdHJpbmdzLmZpbmQociA9PiByIGluc3RhbmNlb2YgUmVnaW9uICYmICFyLmhhc0VuZCkgYXMgUmVnaW9uO1xuICAgIHJlZ2lvbldpdGhvdXRFbmQuY29udGVudExpbmVzLnB1c2gobGluZUVuZCk7XG4gICAgcmVnaW9uV2l0aG91dEVuZC5zZXRFbmQoZW5kSW5kZXgsIGxpbmVFbmQpO1xuICB9XG5cbiAgcHJpdmF0ZSBjb250YWluc1RpdGxlKHM6IFJlcGxhY2VtZW50U3RyaW5nKSB7XG4gICAgY29uc3QgcmVzID0gKHRoaXMudGl0bGVTdHJpbmcuc2VhcmNoKHMpICE9PSAtMSk7XG5cbiAgICByZXR1cm4gcmVzO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXQgdGl0bGVTdHJpbmcoKSB7XG4gICAgbGV0IGxpbmUgPSB0aGlzLmxpbmVTdGFydDtcbiAgICBjb25zdCByZWdpb25Xb3JkID0gJyNyZWdpb24nO1xuICAgIGNvbnN0IGluZGV4T2ZSZWdpb24gPSBsaW5lLnNlYXJjaChyZWdpb25Xb3JkKTtcbiAgICBsaW5lID0gbGluZS5yZXBsYWNlKFxuICAgICAgbGluZS5zbGljZSgwLCBpbmRleE9mUmVnaW9uICsgcmVnaW9uV29yZC5sZW5ndGgpLFxuICAgICAgJydcbiAgICApO1xuICAgIHJldHVybiBsaW5lXG4gICAgICAucmVwbGFjZSgnLS0+JywgJycpXG4gICAgICAucmVwbGFjZSgnPCEtLScsICcnKTsgLy8gVE9ETyBub3QgbmVjZXNzZXJ5ID9cbiAgfVxuXG4gIHB1YmxpYyB0b1N0cmluZygpIHtcbiAgICBpZiAodGhpcy50bXBPdXRwdXQgIT09IHZvaWQgMCkge1xuICAgICAgcmV0dXJuIHRoaXMudG1wT3V0cHV0O1xuICAgIH1cbiAgICBsZXQgcHJldmlvdXMgPSAnJztcbiAgICB0aGlzLnRtcE91dHB1dCA9IHRoaXMucmVnaW9uc09yU3RyaW5nc1xuICAgICAgLm1hcChyZWdpb25PclN0cmluZyA9PiB7XG4gICAgICAgIGlmIChyZWdpb25PclN0cmluZyBpbnN0YW5jZW9mIFJlZ2lvbikge1xuXG4gICAgICAgICAgY29uc3QgcmVwbGFjZW1lbnRzID0gdGhpcy5yZXBsYWNlbWVudHNzO1xuICAgICAgICAgIGZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPCByZXBsYWNlbWVudHMubGVuZ3RoOyBpbmRleCsrKSB7XG4gICAgICAgICAgICBjb25zdCByZXAgPSByZXBsYWNlbWVudHNbaW5kZXhdO1xuICAgICAgICAgICAgY29uc3QgaXNBcnIgPSBfLmlzQXJyYXkocmVwbGFjZW1lbnRzW2luZGV4XSk7XG5cbiAgICAgICAgICAgIGNvbnN0IHJlZ2lvblRhZyA9IChpc0FyciA/IF8uZmlyc3QocmVwIGFzIHN0cmluZ1tdKSA6IHJlcCkgYXMgUmVwbGFjZW1lbnRTdHJpbmc7XG5cbiAgICAgICAgICAgIGxldCBvdXQgPSAoaXNBcnIgPyByZXBbMV0gOiAnJykgYXMgc3RyaW5nO1xuXG4gICAgICAgICAgICBjb25zdCB2ZXJ0aWNhbExlbmd0aCA9IHJlZ2lvbk9yU3RyaW5nLnRvU3RyaW5nKCkuc3BsaXQoJ1xcbicpLmxlbmd0aCAtIDE7XG5cbiAgICAgICAgICAgIGlmIChyZWdpb25PclN0cmluZy5jb250YWluc1RpdGxlKHJlZ2lvblRhZykpIHtcbiAgICAgICAgICAgICAgaWYgKHJlZ2lvblRhZy50b0xvd2VyQ2FzZSgpID09PSBUQUdTLldFQlNRTC50b0xvd2VyQ2FzZSgpKSB7XG4gICAgICAgICAgICAgICAgb3V0ID0gYCR7Xy50aW1lcyh2ZXJ0aWNhbExlbmd0aCkubWFwKCgpID0+IGxhYmVsUmVwbGFjZW1lbnRDb2RlLmJhY2tlbmRDb2RlICsgJ1xcbicpLmpvaW4oJycpfSAgJHtvdXR9YDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBpZiAocmVnaW9uVGFnLnRvTG93ZXJDYXNlKCkgPT09IFRBR1MuQkFDS0VORC50b0xvd2VyQ2FzZSgpKSB7XG4gICAgICAgICAgICAgICAgb3V0ID0gYCR7Xy50aW1lcyh2ZXJ0aWNhbExlbmd0aCkubWFwKCgpID0+IGxhYmVsUmVwbGFjZW1lbnRDb2RlLmJhY2tlbmRDb2RlICsgJ1xcbicpLmpvaW4oJycpfSAgJHtvdXR9YDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBpZiAocmVnaW9uVGFnLnRvTG93ZXJDYXNlKCkgPT09IFRBR1MuTk9UX0ZPUl9OUE0udG9Mb3dlckNhc2UoKSkge1xuICAgICAgICAgICAgICAgIG91dCA9IGAke18udGltZXModmVydGljYWxMZW5ndGgpLm1hcCgoKSA9PiBsYWJlbFJlcGxhY2VtZW50Q29kZS5ub3RGb3JOcG1Db2RlICsgJ1xcbicpLmpvaW4oJycpfSAgJHtvdXR9YDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBpZiAocmVnaW9uVGFnLnRvTG93ZXJDYXNlKCkgPT09IFRBR1MuQlJPV1NFUi50b0xvd2VyQ2FzZSgpKSB7XG4gICAgICAgICAgICAgICAgb3V0ID0gYCR7Xy50aW1lcyh2ZXJ0aWNhbExlbmd0aCkubWFwKCgpID0+IGxhYmVsUmVwbGFjZW1lbnRDb2RlLmJyb3dzZXJDb2RlICsgJ1xcbicpLmpvaW4oJycpfSAgJHtvdXR9YDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBpZiAocmVnaW9uVGFnLnRvTG93ZXJDYXNlKCkgPT09IFRBR1MuV0VCU1FMX09OTFkudG9Mb3dlckNhc2UoKSkge1xuICAgICAgICAgICAgICAgIG91dCA9IGAke18udGltZXModmVydGljYWxMZW5ndGgpLm1hcCgoKSA9PiBsYWJlbFJlcGxhY2VtZW50Q29kZS5iYWNrZW5kQ29kZSArICdcXG4nKS5qb2luKCcnKX0gICR7b3V0fWA7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgIHJlZ2lvblRhZy50b0xvd2VyQ2FzZSgpID09PSBUQUdTLkJBQ0tFTkRfRlVOQy50b0xvd2VyQ2FzZSgpXG4gICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgIGxldCBzcGFjZXNQcmV2aW91cyA9IHByZXZpb3VzLnNlYXJjaCgvXFxTLyk7XG4gICAgICAgICAgICAgICAgc3BhY2VzUHJldmlvdXMgPSAoc3BhY2VzUHJldmlvdXMgPCAwID8gMCA6IHNwYWNlc1ByZXZpb3VzKTtcbiAgICAgICAgICAgICAgICBvdXQgPSBgJHtfLnRpbWVzKHZlcnRpY2FsTGVuZ3RoKS5tYXAoKCkgPT4gbGFiZWxSZXBsYWNlbWVudENvZGUuYmFja2VuZENvZGUgKyAnXFxuJykuam9pbignJyl9YFxuICAgICAgICAgICAgICAgICAgKyBgJHtfLnRpbWVzKHNwYWNlc1ByZXZpb3VzKS5tYXAobiA9PiAnICcpLmpvaW4oJycpfSAgJHtvdXR9YDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgcmVnaW9uVGFnLnRvTG93ZXJDYXNlKCkgPT09IFRBR1MuV0VCU1FMX0ZVTkMudG9Mb3dlckNhc2UoKVxuICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICBsZXQgc3BhY2VzUHJldmlvdXMgPSBwcmV2aW91cy5zZWFyY2goL1xcUy8pO1xuICAgICAgICAgICAgICAgIHNwYWNlc1ByZXZpb3VzID0gKHNwYWNlc1ByZXZpb3VzIDwgMCA/IDAgOiBzcGFjZXNQcmV2aW91cyk7XG4gICAgICAgICAgICAgICAgb3V0ID0gYCR7Xy50aW1lcyh2ZXJ0aWNhbExlbmd0aCkubWFwKCgpID0+IGxhYmVsUmVwbGFjZW1lbnRDb2RlLmJhY2tlbmRDb2RlICsgJ1xcbicpLmpvaW4oJycpfWBcbiAgICAgICAgICAgICAgICAgICsgYCR7Xy50aW1lcyhzcGFjZXNQcmV2aW91cykubWFwKG4gPT4gJyAnKS5qb2luKCcnKX0gICR7b3V0fWA7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgIHJlZ2lvblRhZy50b0xvd2VyQ2FzZSgpID09PSBUQUdTLkNVVF9DT0RFX0lGX1RSVUUudG9Mb3dlckNhc2UoKVxuICAgICAgICAgICAgICAgIHx8XG4gICAgICAgICAgICAgICAgcmVnaW9uVGFnLnRvTG93ZXJDYXNlKCkgPT09IFRBR1MuQ1VUX0NPREVfSUZfRkFMU0UudG9Mb3dlckNhc2UoKVxuICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICBjb25zdCBmbiA9IG91dCBhcyBhbnk7IC8vIGFzIFJldHVyblR5cGU8dHlwZW9mIGNvZGVDdXR0Rm4+O1xuICAgICAgICAgICAgICAgIGxldCBleHByZXNzaW9uVG9FeGVjdXRlID0gcmVnaW9uT3JTdHJpbmcudGl0bGVTdHJpbmc7XG5cbiAgICAgICAgICAgICAgICBleHByZXNzaW9uVG9FeGVjdXRlID0gZXhwcmVzc2lvblRvRXhlY3V0ZS5yZXBsYWNlKHJlZ2lvblRhZywgJycpO1xuXG5cbiAgICAgICAgICAgICAgICBjb25zdCBjb25maWdGb3JQcm9qZWN0ID0gdGhpcy5wcm9qZWN0ICYmIHRoaXMucHJvamVjdC5lbnYuY29uZmlnO1xuXG4gICAgICAgICAgICAgICAgY29uc3QgY3V0Q29kZSA9IGZuKGV4cHJlc3Npb25Ub0V4ZWN1dGUsIGNvbmZpZ0ZvclByb2plY3QsIHRoaXMucmVhbHRpdmVPckFic0ZpbGVQQXRoKTtcblxuICAgICAgICAgICAgICAgIGlmIChjdXRDb2RlID09PSBudWxsKSB7XG4gICAgICAgICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICAgKGN1dENvZGUgJiYgKFxuICAgICAgICAgICAgICAgICAgICByZWdpb25UYWcudG9Mb3dlckNhc2UoKSA9PT0gVEFHUy5DVVRfQ09ERV9JRl9UUlVFLnRvTG93ZXJDYXNlKClcbiAgICAgICAgICAgICAgICAgICkpXG4gICAgICAgICAgICAgICAgICB8fFxuICAgICAgICAgICAgICAgICAgKCFjdXRDb2RlICYmIChcbiAgICAgICAgICAgICAgICAgICAgcmVnaW9uVGFnLnRvTG93ZXJDYXNlKCkgPT09IFRBR1MuQ1VUX0NPREVfSUZfRkFMU0UudG9Mb3dlckNhc2UoKVxuICAgICAgICAgICAgICAgICAgKSlcbiAgICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICAgIG91dCA9ICcnO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgcmVnaW9uT3JTdHJpbmcudG1wT3V0cHV0ID0gb3V0O1xuICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuICAgICAgICBjb25zdCByZXMgPSByZWdpb25PclN0cmluZy50b1N0cmluZygpO1xuICAgICAgICBwcmV2aW91cyA9IHJlcztcbiAgICAgICAgcmV0dXJuIHJlcztcbiAgICAgIH0pLmpvaW4oJ1xcbicpO1xuICAgIHJldHVybiB0aGlzLnRtcE91dHB1dDtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0IHByb2plY3QoKSB7XG4gICAgcmV0dXJuIHRoaXMuY29udGV4dC5wcm9qZWN0O1xuICB9XG5cbiAgcHJpdmF0ZSBnZXQgcmVhbHRpdmVPckFic0ZpbGVQQXRoKCkge1xuICAgIHJldHVybiB0aGlzLmNvbnRleHQucmVhbHRpdmVPckFic0ZpbGVQQXRoO1xuICB9XG5cbn1cblxuXG4gOyh7fSk7IC8vIEAtLWVuZC1vZi1maWxlLWZvci1tb2R1bGU9aXNvbW9ycGhpYy1yZWdpb24tbG9hZGVyIGxpYi9yZWdpb24udHMiXX0=
@@ -1,7 +1,19 @@
1
1
  import { _, path } from 'tnp-core/browser';
2
- import { Models } from 'tnp-models/browser';
3
2
  import { TAGS, REGEX_REGION } from 'tnp-config/browser';
4
3
 
4
+ const labelReplacementCode = {
5
+ browserCode: '/* */',
6
+ backendCode: '/* */',
7
+ notForNpmCode: '/* */',
8
+ onlyForGithubDocs: '/* */',
9
+ flatenImportExportRequred: '/* */', // '/* only for github docs */',
10
+ };
11
+ const ReplacementStringArr = [
12
+ '@backend', '@backendFunc', '@cutCodeIfTrue', '@cutCodeIfFalse', "@notForNpm"
13
+ ];
14
+ ;
15
+ ({}); // @--end-of-file-for-module=isomorphic-region-loader lib/models.ts
16
+
5
17
  class Region {
6
18
  constructor(context, replacementss, parent, startIndex, endIndex, lineStart, lineEnd, contentLines = []) {
7
19
  this.context = context;
@@ -83,30 +95,30 @@ class Region {
83
95
  const verticalLength = regionOrString.toString().split('\n').length - 1;
84
96
  if (regionOrString.containsTitle(regionTag)) {
85
97
  if (regionTag.toLowerCase() === TAGS.WEBSQL.toLowerCase()) {
86
- out = `${_.times(verticalLength).map(() => Models.label.backendCode + '\n').join('')} ${out}`;
98
+ out = `${_.times(verticalLength).map(() => labelReplacementCode.backendCode + '\n').join('')} ${out}`;
87
99
  }
88
100
  if (regionTag.toLowerCase() === TAGS.BACKEND.toLowerCase()) {
89
- out = `${_.times(verticalLength).map(() => Models.label.backendCode + '\n').join('')} ${out}`;
101
+ out = `${_.times(verticalLength).map(() => labelReplacementCode.backendCode + '\n').join('')} ${out}`;
90
102
  }
91
103
  if (regionTag.toLowerCase() === TAGS.NOT_FOR_NPM.toLowerCase()) {
92
- out = `${_.times(verticalLength).map(() => Models.label.notForNpmCode + '\n').join('')} ${out}`;
104
+ out = `${_.times(verticalLength).map(() => labelReplacementCode.notForNpmCode + '\n').join('')} ${out}`;
93
105
  }
94
106
  if (regionTag.toLowerCase() === TAGS.BROWSER.toLowerCase()) {
95
- out = `${_.times(verticalLength).map(() => Models.label.browserCode + '\n').join('')} ${out}`;
107
+ out = `${_.times(verticalLength).map(() => labelReplacementCode.browserCode + '\n').join('')} ${out}`;
96
108
  }
97
109
  if (regionTag.toLowerCase() === TAGS.WEBSQL_ONLY.toLowerCase()) {
98
- out = `${_.times(verticalLength).map(() => Models.label.backendCode + '\n').join('')} ${out}`;
110
+ out = `${_.times(verticalLength).map(() => labelReplacementCode.backendCode + '\n').join('')} ${out}`;
99
111
  }
100
112
  if (regionTag.toLowerCase() === TAGS.BACKEND_FUNC.toLowerCase()) {
101
113
  let spacesPrevious = previous.search(/\S/);
102
114
  spacesPrevious = (spacesPrevious < 0 ? 0 : spacesPrevious);
103
- out = `${_.times(verticalLength).map(() => Models.label.backendCode + '\n').join('')}`
115
+ out = `${_.times(verticalLength).map(() => labelReplacementCode.backendCode + '\n').join('')}`
104
116
  + `${_.times(spacesPrevious).map(n => ' ').join('')} ${out}`;
105
117
  }
106
118
  if (regionTag.toLowerCase() === TAGS.WEBSQL_FUNC.toLowerCase()) {
107
119
  let spacesPrevious = previous.search(/\S/);
108
120
  spacesPrevious = (spacesPrevious < 0 ? 0 : spacesPrevious);
109
- out = `${_.times(verticalLength).map(() => Models.label.backendCode + '\n').join('')}`
121
+ out = `${_.times(verticalLength).map(() => labelReplacementCode.backendCode + '\n').join('')}`
110
122
  + `${_.times(spacesPrevious).map(n => ' ').join('')} ${out}`;
111
123
  }
112
124
  if (regionTag.toLowerCase() === TAGS.CUT_CODE_IF_TRUE.toLowerCase()
@@ -274,5 +286,5 @@ function StripBrowserCode(content) {
274
286
  * Generated bundle index. Do not edit.
275
287
  */
276
288
 
277
- export { Region, RegionRemover, StripBrowserCode as StripBlockLoader };
289
+ export { Region, RegionRemover, ReplacementStringArr, StripBrowserCode as StripBlockLoader, labelReplacementCode };
278
290
  //# sourceMappingURL=isomorphic-region-loader.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"isomorphic-region-loader.mjs","sources":["../../../tmp-libs-for-dist/isomorphic-region-loader/projects/isomorphic-region-loader/src/lib/region.ts","../../../tmp-libs-for-dist/isomorphic-region-loader/projects/isomorphic-region-loader/src/lib/region-remover.ts","../../../tmp-libs-for-dist/isomorphic-region-loader/projects/isomorphic-region-loader/src/lib/index.ts","../../../tmp-libs-for-dist/isomorphic-region-loader/projects/isomorphic-region-loader/src/isomorphic-region-loader.ts"],"sourcesContent":["\n\nimport { Helpers, _ } from 'tnp-core/browser';\nimport { Models } from 'tnp-models/browser';\n\nimport type { RegionRemover } from './region-remover';\nimport { TAGS } from 'tnp-config/browser';\n\nexport class Region {\n constructor(\n private context: RegionRemover,\n public replacementss: Models.dev.Replacement[],\n public parent: Region,\n public startIndex: number,\n public endIndex: number,\n public lineStart: string,\n public lineEnd: string,\n public contentLines: string[] = [],\n\n ) { }\n private tmpOutput: string;\n public get hasEnd() {\n return this.endIndex !== void 0;\n }\n\n public get lastRegionWithoutEnd() {\n const last = _.last(this.regionsOrStrings);\n if (last instanceof Region && !last.hasEnd) {\n return last;\n }\n return void 0;\n }\n\n private regionsOrStrings: (Region | string)[] = [];\n\n get regions() {\n return this.regionsOrStrings.filter(f => f instanceof Region);\n }\n\n private setEnd(endIndex: number, lineEnd: string) {\n this.endIndex = endIndex;\n this.lineEnd = lineEnd;\n }\n\n get isRoot() {\n return !this.parent;\n }\n\n addNormalLine(l: string, lineIndex: number) {\n this.contentLines[lineIndex] = void 0;\n this.regionsOrStrings.push(l);\n }\n\n addNormalLineToLastRegion(l: string, lineIndex: number) {\n this.contentLines[lineIndex] = void 0;\n this.lastRegionWithoutEnd.contentLines.push(l);\n }\n\n addRegion(context: RegionRemover, parent: Region, startIndex: number, lineStart: string) {\n this.contentLines[startIndex] = void 0;\n const newReg = new Region(\n context,\n this.replacementss,\n parent,\n startIndex, void 0,\n lineStart, void 0,\n [lineStart]\n );\n this.regionsOrStrings.push(newReg);\n }\n\n endLastRegion(endIndex: number, lineEnd: string) {\n this.contentLines[endIndex] = void 0;\n const regionWithoutEnd = this.regionsOrStrings.find(r => r instanceof Region && !r.hasEnd) as Region;\n regionWithoutEnd.contentLines.push(lineEnd);\n regionWithoutEnd.setEnd(endIndex, lineEnd);\n }\n\n private containsTitle(s: Models.dev.ReplacementString) {\n const res = (this.titleString.search(s) !== -1);\n\n return res;\n }\n\n private get titleString() {\n let line = this.lineStart;\n const regionWord = '#region';\n const indexOfRegion = line.search(regionWord);\n line = line.replace(\n line.slice(0, indexOfRegion + regionWord.length),\n ''\n );\n return line\n .replace('-->', '')\n .replace('<!--', ''); // TODO not necessery ?\n }\n\n public toString() {\n if (this.tmpOutput !== void 0) {\n return this.tmpOutput;\n }\n let previous = '';\n this.tmpOutput = this.regionsOrStrings\n .map(regionOrString => {\n if (regionOrString instanceof Region) {\n\n const replacements = this.replacementss;\n for (let index = 0; index < replacements.length; index++) {\n const rep = replacements[index];\n const isArr = _.isArray(replacements[index]);\n\n const regionTag = (isArr ? _.first(rep as string[]) : rep) as Models.dev.ReplacementString;\n\n let out = (isArr ? rep[1] : '') as string;\n\n const verticalLength = regionOrString.toString().split('\\n').length - 1;\n\n if (regionOrString.containsTitle(regionTag)) {\n if (regionTag.toLowerCase() === TAGS.WEBSQL.toLowerCase()) {\n out = `${_.times(verticalLength).map(() => Models.label.backendCode + '\\n').join('')} ${out}`;\n }\n if (regionTag.toLowerCase() === TAGS.BACKEND.toLowerCase()) {\n out = `${_.times(verticalLength).map(() => Models.label.backendCode + '\\n').join('')} ${out}`;\n }\n if (regionTag.toLowerCase() === TAGS.NOT_FOR_NPM.toLowerCase()) {\n out = `${_.times(verticalLength).map(() => Models.label.notForNpmCode + '\\n').join('')} ${out}`;\n }\n if (regionTag.toLowerCase() === TAGS.BROWSER.toLowerCase()) {\n out = `${_.times(verticalLength).map(() => Models.label.browserCode + '\\n').join('')} ${out}`;\n }\n if (regionTag.toLowerCase() === TAGS.WEBSQL_ONLY.toLowerCase()) {\n out = `${_.times(verticalLength).map(() => Models.label.backendCode + '\\n').join('')} ${out}`;\n }\n if (\n regionTag.toLowerCase() === TAGS.BACKEND_FUNC.toLowerCase()\n ) {\n let spacesPrevious = previous.search(/\\S/);\n spacesPrevious = (spacesPrevious < 0 ? 0 : spacesPrevious);\n out = `${_.times(verticalLength).map(() => Models.label.backendCode + '\\n').join('')}`\n + `${_.times(spacesPrevious).map(n => ' ').join('')} ${out}`;\n }\n if (\n regionTag.toLowerCase() === TAGS.WEBSQL_FUNC.toLowerCase()\n ) {\n let spacesPrevious = previous.search(/\\S/);\n spacesPrevious = (spacesPrevious < 0 ? 0 : spacesPrevious);\n out = `${_.times(verticalLength).map(() => Models.label.backendCode + '\\n').join('')}`\n + `${_.times(spacesPrevious).map(n => ' ').join('')} ${out}`;\n }\n if (\n regionTag.toLowerCase() === TAGS.CUT_CODE_IF_TRUE.toLowerCase()\n ||\n regionTag.toLowerCase() === TAGS.CUT_CODE_IF_FALSE.toLowerCase()\n ) {\n const fn = out as any; // as ReturnType<typeof codeCuttFn>;\n let expressionToExecute = regionOrString.titleString;\n\n expressionToExecute = expressionToExecute.replace(regionTag, '');\n\n\n const configForProject = this.project && this.project.env.config;\n\n const cutCode = fn(expressionToExecute, configForProject, this.realtiveOrAbsFilePAth);\n\n if (cutCode === null) {\n continue;\n }\n if (\n (cutCode && (\n regionTag.toLowerCase() === TAGS.CUT_CODE_IF_TRUE.toLowerCase()\n ))\n ||\n (!cutCode && (\n regionTag.toLowerCase() === TAGS.CUT_CODE_IF_FALSE.toLowerCase()\n ))\n ) {\n out = '';\n } else {\n continue;\n }\n }\n regionOrString.tmpOutput = out;\n break;\n }\n }\n\n }\n const res = regionOrString.toString();\n previous = res;\n return res;\n }).join('\\n');\n return this.tmpOutput;\n }\n\n private get project() {\n return this.context.project;\n }\n\n private get realtiveOrAbsFilePAth() {\n return this.context.realtiveOrAbsFilePAth;\n }\n\n}\n\n\n ;({}); // @--end-of-file-for-module=isomorphic-region-loader lib/region.ts","\n\nimport { _, path } from 'tnp-core/browser';\n\nimport { Helpers } from 'tnp-core/browser';\nimport { Region } from './region';\n\nimport { ConfigModels } from 'tnp-config/browser';\nimport { REGEX_REGION, TAGS } from 'tnp-config/browser';\n\n\nexport class RegionRemover {\n private root: Region;\n private readonly START_REGION: RegExp[] = [];\n private readonly END_REGION: RegExp[] = [];\n public static from(\n realtiveOrAbsFilePAth: string,\n content: string,\n replacementss?: any, // Models.dev.Replacement[],\n project?: any, // Project,\n ) {\n\n let fileExtension = path.extname(realtiveOrAbsFilePAth);\n\n if (!replacementss) {\n replacementss = [\n [TAGS.BACKEND_FUNC, `return (void 0);`],\n TAGS.BACKEND as any,\n ];\n }\n return new RegionRemover(realtiveOrAbsFilePAth, fileExtension as any, content, replacementss, project);\n }\n\n private matchStartRegion(l: string) {\n const res = !_.isUndefined(this.START_REGION.find(r => l.match(r)));\n return res;\n }\n private matchEndRegion(l: string) {\n const res = !_.isUndefined(this.END_REGION.find(r => l.match(r)));\n return res;\n }\n\n\n private constructor(\n public readonly realtiveOrAbsFilePAth: string,\n fileExtension: ConfigModels.CutableFileExt,\n private content: string,\n replacementss?: any, // Models.dev.Replacement[],\n public readonly project?: any, // Project\n\n ) {\n if ((REGEX_REGION.TS_JS_SCSS_SASS.EXT).includes(fileExtension)) {\n this.START_REGION.push(REGEX_REGION.TS_JS_SCSS_SASS.START);\n this.END_REGION.push(REGEX_REGION.TS_JS_SCSS_SASS.END);\n }\n if ((REGEX_REGION.HTML.EXT).includes(fileExtension)) {\n this.START_REGION.push(REGEX_REGION.HTML.START);\n this.END_REGION.push(REGEX_REGION.HTML.END);\n }\n if ((REGEX_REGION.CSS.EXT).includes(fileExtension)) {\n this.START_REGION.push(REGEX_REGION.CSS.START);\n this.END_REGION.push(REGEX_REGION.CSS.END);\n }\n\n const lines = this.content.split('\\n');\n this.root = new Region(\n this,\n replacementss,\n void 0,\n 0, (lines.length - 1),\n _.first(lines), _.last(lines),\n lines);\n this.tree(this.root);\n }\n\n private tree(node: Region) {\n const contentLines = node.contentLines;\n\n\n\n\n\n\n let stack = 0;\n for (let i = 0; i < contentLines.length; i++) {\n const l = contentLines[i];\n if (!node.isRoot) {\n if (i === 0) {\n node.addNormalLine(l, 0);\n continue;\n }\n if (i === (node.contentLines.length - 1)) {\n node.addNormalLine(l, i);\n continue;\n }\n }\n if (node.lastRegionWithoutEnd) {\n if (this.matchStartRegion(l)) {\n node.addNormalLineToLastRegion(l, i);\n stack++;\n } else if (this.matchEndRegion(l)) {\n if (stack === 0) {\n node.endLastRegion(i, l);\n } else if (stack > 0) {\n node.addNormalLineToLastRegion(l, i);\n stack--;\n }\n } else {\n if (i === (node.contentLines.length - (node.isRoot ? 1 : 2))) {\n stack = 0;\n node.endLastRegion(i, l);\n } else {\n node.addNormalLineToLastRegion(l, i);\n }\n }\n } else {\n if (this.matchStartRegion(l)) {\n node.addRegion(this, node, i, l);\n } else if (this.matchEndRegion(l)) {\n node.addNormalLine(l, i);\n } else {\n node.addNormalLine(l, i);\n }\n }\n }\n\n\n const children = node.regions;\n if (children.length > 0) {\n for (let index = 0; index < children.length; index++) {\n const child = children[index] as Region;\n this.tree(child);\n }\n }\n }\n\n get output() {\n return this.root.toString();\n }\n\n}\n\n ;({}); // @--end-of-file-for-module=isomorphic-region-loader lib/region-remover.ts","\n\n\nimport { RegionRemover } from \"./region-remover\";\n\n\nfunction StripBrowserCode(content) {\n\n\n // @ts-ignore\n content = RegionRemover.from(this.resourcePath, content, ['@browser']).output + '\\n';\n\n if (this.cacheable) {\n this.cacheable(true);\n }\n\n return content;\n}\n\nexport { StripBrowserCode as StripBlockLoader };\n\nexport * from './region-remover';\nexport * from './region';\n\nexport default StripBrowserCode;\n\n ;({}); // @--end-of-file-for-module=isomorphic-region-loader lib/index.ts","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"isomorphic-region-loader.mjs","sources":["../../../tmp-libs-for-dist/isomorphic-region-loader/projects/isomorphic-region-loader/src/lib/models.ts","../../../tmp-libs-for-dist/isomorphic-region-loader/projects/isomorphic-region-loader/src/lib/region.ts","../../../tmp-libs-for-dist/isomorphic-region-loader/projects/isomorphic-region-loader/src/lib/region-remover.ts","../../../tmp-libs-for-dist/isomorphic-region-loader/projects/isomorphic-region-loader/src/lib/index.ts","../../../tmp-libs-for-dist/isomorphic-region-loader/projects/isomorphic-region-loader/src/isomorphic-region-loader.ts"],"sourcesContent":["\n\n\nexport const labelReplacementCode = {\n browserCode: '/* */',// '/* browser code */',\n backendCode: '/* */',// '/* backend code */',\n notForNpmCode: '/* */',//'/* not for npm lib code */',\n onlyForGithubDocs: '/* */',// '/* only for github docs */',\n flatenImportExportRequred: '/* */',// '/* only for github docs */',\n};\n\nexport type ReplacementString = '@backend' | '@backendFunc' | '@cutCodeIfTrue' | '@cutCodeIfFalse' | '@notForNpm';\nexport const ReplacementStringArr = [\n '@backend', '@backendFunc', '@cutCodeIfTrue', '@cutCodeIfFalse', \"@notForNpm\"\n] as ReplacementString[];\n\nexport type Replacement<EnvConfig = any> = (ReplacementString\n | [ReplacementString, string]\n | [ReplacementString, (expression: any, env: EnvConfig) => () => boolean]\n);\n\nexport interface ReplaceOptionsExtended<EnvConfig = any> {\n\n replacements: Replacement[];\n env?: EnvConfig\n}\n\n\n\n\n ;({}); // @--end-of-file-for-module=isomorphic-region-loader lib/models.ts","\n\nimport { Helpers, _ } from 'tnp-core/browser';\nimport { Replacement, ReplacementString, labelReplacementCode } from './models';\n\nimport type { RegionRemover } from './region-remover';\nimport { TAGS } from 'tnp-config/browser';\n\nexport class Region {\n constructor(\n private context: RegionRemover,\n public replacementss: Replacement[],\n public parent: Region,\n public startIndex: number,\n public endIndex: number,\n public lineStart: string,\n public lineEnd: string,\n public contentLines: string[] = [],\n\n ) { }\n private tmpOutput: string;\n public get hasEnd() {\n return this.endIndex !== void 0;\n }\n\n public get lastRegionWithoutEnd() {\n const last = _.last(this.regionsOrStrings);\n if (last instanceof Region && !last.hasEnd) {\n return last;\n }\n return void 0;\n }\n\n private regionsOrStrings: (Region | string)[] = [];\n\n get regions() {\n return this.regionsOrStrings.filter(f => f instanceof Region);\n }\n\n private setEnd(endIndex: number, lineEnd: string) {\n this.endIndex = endIndex;\n this.lineEnd = lineEnd;\n }\n\n get isRoot() {\n return !this.parent;\n }\n\n addNormalLine(l: string, lineIndex: number) {\n this.contentLines[lineIndex] = void 0;\n this.regionsOrStrings.push(l);\n }\n\n addNormalLineToLastRegion(l: string, lineIndex: number) {\n this.contentLines[lineIndex] = void 0;\n this.lastRegionWithoutEnd.contentLines.push(l);\n }\n\n addRegion(context: RegionRemover, parent: Region, startIndex: number, lineStart: string) {\n this.contentLines[startIndex] = void 0;\n const newReg = new Region(\n context,\n this.replacementss,\n parent,\n startIndex, void 0,\n lineStart, void 0,\n [lineStart]\n );\n this.regionsOrStrings.push(newReg);\n }\n\n endLastRegion(endIndex: number, lineEnd: string) {\n this.contentLines[endIndex] = void 0;\n const regionWithoutEnd = this.regionsOrStrings.find(r => r instanceof Region && !r.hasEnd) as Region;\n regionWithoutEnd.contentLines.push(lineEnd);\n regionWithoutEnd.setEnd(endIndex, lineEnd);\n }\n\n private containsTitle(s: ReplacementString) {\n const res = (this.titleString.search(s) !== -1);\n\n return res;\n }\n\n private get titleString() {\n let line = this.lineStart;\n const regionWord = '#region';\n const indexOfRegion = line.search(regionWord);\n line = line.replace(\n line.slice(0, indexOfRegion + regionWord.length),\n ''\n );\n return line\n .replace('-->', '')\n .replace('<!--', ''); // TODO not necessery ?\n }\n\n public toString() {\n if (this.tmpOutput !== void 0) {\n return this.tmpOutput;\n }\n let previous = '';\n this.tmpOutput = this.regionsOrStrings\n .map(regionOrString => {\n if (regionOrString instanceof Region) {\n\n const replacements = this.replacementss;\n for (let index = 0; index < replacements.length; index++) {\n const rep = replacements[index];\n const isArr = _.isArray(replacements[index]);\n\n const regionTag = (isArr ? _.first(rep as string[]) : rep) as ReplacementString;\n\n let out = (isArr ? rep[1] : '') as string;\n\n const verticalLength = regionOrString.toString().split('\\n').length - 1;\n\n if (regionOrString.containsTitle(regionTag)) {\n if (regionTag.toLowerCase() === TAGS.WEBSQL.toLowerCase()) {\n out = `${_.times(verticalLength).map(() => labelReplacementCode.backendCode + '\\n').join('')} ${out}`;\n }\n if (regionTag.toLowerCase() === TAGS.BACKEND.toLowerCase()) {\n out = `${_.times(verticalLength).map(() => labelReplacementCode.backendCode + '\\n').join('')} ${out}`;\n }\n if (regionTag.toLowerCase() === TAGS.NOT_FOR_NPM.toLowerCase()) {\n out = `${_.times(verticalLength).map(() => labelReplacementCode.notForNpmCode + '\\n').join('')} ${out}`;\n }\n if (regionTag.toLowerCase() === TAGS.BROWSER.toLowerCase()) {\n out = `${_.times(verticalLength).map(() => labelReplacementCode.browserCode + '\\n').join('')} ${out}`;\n }\n if (regionTag.toLowerCase() === TAGS.WEBSQL_ONLY.toLowerCase()) {\n out = `${_.times(verticalLength).map(() => labelReplacementCode.backendCode + '\\n').join('')} ${out}`;\n }\n if (\n regionTag.toLowerCase() === TAGS.BACKEND_FUNC.toLowerCase()\n ) {\n let spacesPrevious = previous.search(/\\S/);\n spacesPrevious = (spacesPrevious < 0 ? 0 : spacesPrevious);\n out = `${_.times(verticalLength).map(() => labelReplacementCode.backendCode + '\\n').join('')}`\n + `${_.times(spacesPrevious).map(n => ' ').join('')} ${out}`;\n }\n if (\n regionTag.toLowerCase() === TAGS.WEBSQL_FUNC.toLowerCase()\n ) {\n let spacesPrevious = previous.search(/\\S/);\n spacesPrevious = (spacesPrevious < 0 ? 0 : spacesPrevious);\n out = `${_.times(verticalLength).map(() => labelReplacementCode.backendCode + '\\n').join('')}`\n + `${_.times(spacesPrevious).map(n => ' ').join('')} ${out}`;\n }\n if (\n regionTag.toLowerCase() === TAGS.CUT_CODE_IF_TRUE.toLowerCase()\n ||\n regionTag.toLowerCase() === TAGS.CUT_CODE_IF_FALSE.toLowerCase()\n ) {\n const fn = out as any; // as ReturnType<typeof codeCuttFn>;\n let expressionToExecute = regionOrString.titleString;\n\n expressionToExecute = expressionToExecute.replace(regionTag, '');\n\n\n const configForProject = this.project && this.project.env.config;\n\n const cutCode = fn(expressionToExecute, configForProject, this.realtiveOrAbsFilePAth);\n\n if (cutCode === null) {\n continue;\n }\n if (\n (cutCode && (\n regionTag.toLowerCase() === TAGS.CUT_CODE_IF_TRUE.toLowerCase()\n ))\n ||\n (!cutCode && (\n regionTag.toLowerCase() === TAGS.CUT_CODE_IF_FALSE.toLowerCase()\n ))\n ) {\n out = '';\n } else {\n continue;\n }\n }\n regionOrString.tmpOutput = out;\n break;\n }\n }\n\n }\n const res = regionOrString.toString();\n previous = res;\n return res;\n }).join('\\n');\n return this.tmpOutput;\n }\n\n private get project() {\n return this.context.project;\n }\n\n private get realtiveOrAbsFilePAth() {\n return this.context.realtiveOrAbsFilePAth;\n }\n\n}\n\n\n ;({}); // @--end-of-file-for-module=isomorphic-region-loader lib/region.ts","\n\nimport { _, path } from 'tnp-core/browser';\n\nimport { Helpers } from 'tnp-core/browser';\nimport { Region } from './region';\n// @ts-ignore\nimport { CoreModels } from 'tnp-core/browser';\nimport { REGEX_REGION, TAGS } from 'tnp-config/browser';\n\n\nexport class RegionRemover {\n private root: Region;\n private readonly START_REGION: RegExp[] = [];\n private readonly END_REGION: RegExp[] = [];\n public static from(\n realtiveOrAbsFilePAth: string,\n content: string,\n replacementss?: any, // Models.dev.Replacement[],\n project?: any, // Project,\n ) {\n\n let fileExtension = path.extname(realtiveOrAbsFilePAth);\n\n if (!replacementss) {\n replacementss = [\n [TAGS.BACKEND_FUNC, `return (void 0);`],\n TAGS.BACKEND as any,\n ];\n }\n return new RegionRemover(realtiveOrAbsFilePAth, fileExtension as any, content, replacementss, project);\n }\n\n private matchStartRegion(l: string) {\n const res = !_.isUndefined(this.START_REGION.find(r => l.match(r)));\n return res;\n }\n private matchEndRegion(l: string) {\n const res = !_.isUndefined(this.END_REGION.find(r => l.match(r)));\n return res;\n }\n\n\n private constructor(\n public readonly realtiveOrAbsFilePAth: string,\n fileExtension: CoreModels.CutableFileExt,\n private content: string,\n replacementss?: any, // Models.dev.Replacement[],\n public readonly project?: any, // Project\n\n ) {\n if ((REGEX_REGION.TS_JS_SCSS_SASS.EXT).includes(fileExtension)) {\n this.START_REGION.push(REGEX_REGION.TS_JS_SCSS_SASS.START);\n this.END_REGION.push(REGEX_REGION.TS_JS_SCSS_SASS.END);\n }\n if ((REGEX_REGION.HTML.EXT).includes(fileExtension)) {\n this.START_REGION.push(REGEX_REGION.HTML.START);\n this.END_REGION.push(REGEX_REGION.HTML.END);\n }\n if ((REGEX_REGION.CSS.EXT).includes(fileExtension)) {\n this.START_REGION.push(REGEX_REGION.CSS.START);\n this.END_REGION.push(REGEX_REGION.CSS.END);\n }\n\n const lines = this.content.split('\\n');\n this.root = new Region(\n this,\n replacementss,\n void 0,\n 0, (lines.length - 1),\n _.first(lines), _.last(lines),\n lines);\n this.tree(this.root);\n }\n\n private tree(node: Region) {\n const contentLines = node.contentLines;\n\n\n\n\n\n\n let stack = 0;\n for (let i = 0; i < contentLines.length; i++) {\n const l = contentLines[i];\n if (!node.isRoot) {\n if (i === 0) {\n node.addNormalLine(l, 0);\n continue;\n }\n if (i === (node.contentLines.length - 1)) {\n node.addNormalLine(l, i);\n continue;\n }\n }\n if (node.lastRegionWithoutEnd) {\n if (this.matchStartRegion(l)) {\n node.addNormalLineToLastRegion(l, i);\n stack++;\n } else if (this.matchEndRegion(l)) {\n if (stack === 0) {\n node.endLastRegion(i, l);\n } else if (stack > 0) {\n node.addNormalLineToLastRegion(l, i);\n stack--;\n }\n } else {\n if (i === (node.contentLines.length - (node.isRoot ? 1 : 2))) {\n stack = 0;\n node.endLastRegion(i, l);\n } else {\n node.addNormalLineToLastRegion(l, i);\n }\n }\n } else {\n if (this.matchStartRegion(l)) {\n node.addRegion(this, node, i, l);\n } else if (this.matchEndRegion(l)) {\n node.addNormalLine(l, i);\n } else {\n node.addNormalLine(l, i);\n }\n }\n }\n\n\n const children = node.regions;\n if (children.length > 0) {\n for (let index = 0; index < children.length; index++) {\n const child = children[index] as Region;\n this.tree(child);\n }\n }\n }\n\n get output() {\n return this.root.toString();\n }\n\n}\n\n ;({}); // @--end-of-file-for-module=isomorphic-region-loader lib/region-remover.ts","\n\n\nimport { RegionRemover } from \"./region-remover\";\n\nexport * from './models';\n\nfunction StripBrowserCode(content) {\n\n\n // @ts-ignore\n content = RegionRemover.from(this.resourcePath, content, ['@browser']).output + '\\n';\n\n if (this.cacheable) {\n this.cacheable(true);\n }\n\n return content;\n}\n\nexport { StripBrowserCode as StripBlockLoader };\n\nexport * from './region-remover';\nexport * from './region';\n\nexport default StripBrowserCode;\n\n ;({}); // @--end-of-file-for-module=isomorphic-region-loader lib/index.ts","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  // @ts-nocheck
2
+ export * from './models';
2
3
  declare function StripBrowserCode(content: any): any;
3
4
  export { StripBrowserCode as StripBlockLoader };
4
5
  export * from './region-remover';
@@ -0,0 +1,15 @@
1
+ // @ts-nocheck
2
+ export declare const labelReplacementCode: {
3
+ browserCode: string;
4
+ backendCode: string;
5
+ notForNpmCode: string;
6
+ onlyForGithubDocs: string;
7
+ flatenImportExportRequred: string;
8
+ };
9
+ export type ReplacementString = '@backend' | '@backendFunc' | '@cutCodeIfTrue' | '@cutCodeIfFalse' | '@notForNpm';
10
+ export declare const ReplacementStringArr: ReplacementString[];
11
+ export type Replacement<EnvConfig = any> = (ReplacementString | [ReplacementString, string] | [ReplacementString, (expression: any, env: EnvConfig) => () => boolean]);
12
+ export interface ReplaceOptionsExtended<EnvConfig = any> {
13
+ replacements: Replacement[];
14
+ env?: EnvConfig;
15
+ }
@@ -1,16 +1,16 @@
1
1
  // @ts-nocheck
2
- import { Models } from 'tnp-models/browser';
2
+ import { Replacement } from './models';
3
3
  import type { RegionRemover } from './region-remover';
4
4
  export declare class Region {
5
5
  private context;
6
- replacementss: Models.dev.Replacement[];
6
+ replacementss: Replacement[];
7
7
  parent: Region;
8
8
  startIndex: number;
9
9
  endIndex: number;
10
10
  lineStart: string;
11
11
  lineEnd: string;
12
12
  contentLines: string[];
13
- constructor(context: RegionRemover, replacementss: Models.dev.Replacement[], parent: Region, startIndex: number, endIndex: number, lineStart: string, lineEnd: string, contentLines?: string[]);
13
+ constructor(context: RegionRemover, replacementss: Replacement[], parent: Region, startIndex: number, endIndex: number, lineStart: string, lineEnd: string, contentLines?: string[]);
14
14
  private tmpOutput;
15
15
  get hasEnd(): boolean;
16
16
  get lastRegionWithoutEnd(): Region;
@@ -1,4 +1,5 @@
1
1
  import { RegionRemover } from "./region-remover";
2
+ export * from './models';
2
3
  function StripBrowserCode(content) {
3
4
  // @ts-ignore
4
5
  content = RegionRemover.from(this.resourcePath, content, ['@browser']).output + '\n';
@@ -13,4 +14,4 @@ export * from './region';
13
14
  export default StripBrowserCode;
14
15
  ;
15
16
  ({}); // @--end-of-file-for-module=isomorphic-region-loader lib/index.ts
16
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi90bXAtbGlicy1mb3ItZGlzdC9pc29tb3JwaGljLXJlZ2lvbi1sb2FkZXIvcHJvamVjdHMvaXNvbW9ycGhpYy1yZWdpb24tbG9hZGVyL3NyYy9saWIvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBR2pELFNBQVMsZ0JBQWdCLENBQUMsT0FBTztJQUcvQixhQUFhO0lBQ2IsT0FBTyxHQUFHLGFBQWEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxPQUFPLEVBQUUsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUM7SUFFckYsSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFO1FBQ2xCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUM7S0FDdEI7SUFFRCxPQUFPLE9BQU8sQ0FBQztBQUNqQixDQUFDO0FBRUQsT0FBTyxFQUFFLGdCQUFnQixJQUFJLGdCQUFnQixFQUFFLENBQUM7QUFFaEQsY0FBYyxrQkFBa0IsQ0FBQztBQUNqQyxjQUFjLFVBQVUsQ0FBQztBQUV6QixlQUFlLGdCQUFnQixDQUFDO0FBRS9CLENBQUM7QUFBQSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsa0VBQWtFIiwic291cmNlc0NvbnRlbnQiOlsiXG5cblxuaW1wb3J0IHsgUmVnaW9uUmVtb3ZlciB9IGZyb20gXCIuL3JlZ2lvbi1yZW1vdmVyXCI7XG5cblxuZnVuY3Rpb24gU3RyaXBCcm93c2VyQ29kZShjb250ZW50KSB7XG5cblxuICAvLyBAdHMtaWdub3JlXG4gIGNvbnRlbnQgPSBSZWdpb25SZW1vdmVyLmZyb20odGhpcy5yZXNvdXJjZVBhdGgsIGNvbnRlbnQsIFsnQGJyb3dzZXInXSkub3V0cHV0ICsgJ1xcbic7XG5cbiAgaWYgKHRoaXMuY2FjaGVhYmxlKSB7XG4gICAgdGhpcy5jYWNoZWFibGUodHJ1ZSk7XG4gIH1cblxuICByZXR1cm4gY29udGVudDtcbn1cblxuZXhwb3J0IHsgU3RyaXBCcm93c2VyQ29kZSBhcyBTdHJpcEJsb2NrTG9hZGVyIH07XG5cbmV4cG9ydCAqIGZyb20gJy4vcmVnaW9uLXJlbW92ZXInO1xuZXhwb3J0ICogZnJvbSAnLi9yZWdpb24nO1xuXG5leHBvcnQgZGVmYXVsdCBTdHJpcEJyb3dzZXJDb2RlO1xuXG4gOyh7fSk7IC8vIEAtLWVuZC1vZi1maWxlLWZvci1tb2R1bGU9aXNvbW9ycGhpYy1yZWdpb24tbG9hZGVyIGxpYi9pbmRleC50cyJdfQ==
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi90bXAtbGlicy1mb3ItZGlzdC9pc29tb3JwaGljLXJlZ2lvbi1sb2FkZXIvcHJvamVjdHMvaXNvbW9ycGhpYy1yZWdpb24tbG9hZGVyL3NyYy9saWIvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRWpELGNBQWMsVUFBVSxDQUFDO0FBRXpCLFNBQVMsZ0JBQWdCLENBQUMsT0FBTztJQUcvQixhQUFhO0lBQ2IsT0FBTyxHQUFHLGFBQWEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxPQUFPLEVBQUUsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUM7SUFFckYsSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFO1FBQ2xCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUM7S0FDdEI7SUFFRCxPQUFPLE9BQU8sQ0FBQztBQUNqQixDQUFDO0FBRUQsT0FBTyxFQUFFLGdCQUFnQixJQUFJLGdCQUFnQixFQUFFLENBQUM7QUFFaEQsY0FBYyxrQkFBa0IsQ0FBQztBQUNqQyxjQUFjLFVBQVUsQ0FBQztBQUV6QixlQUFlLGdCQUFnQixDQUFDO0FBRS9CLENBQUM7QUFBQSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsa0VBQWtFIiwic291cmNlc0NvbnRlbnQiOlsiXG5cblxuaW1wb3J0IHsgUmVnaW9uUmVtb3ZlciB9IGZyb20gXCIuL3JlZ2lvbi1yZW1vdmVyXCI7XG5cbmV4cG9ydCAqIGZyb20gJy4vbW9kZWxzJztcblxuZnVuY3Rpb24gU3RyaXBCcm93c2VyQ29kZShjb250ZW50KSB7XG5cblxuICAvLyBAdHMtaWdub3JlXG4gIGNvbnRlbnQgPSBSZWdpb25SZW1vdmVyLmZyb20odGhpcy5yZXNvdXJjZVBhdGgsIGNvbnRlbnQsIFsnQGJyb3dzZXInXSkub3V0cHV0ICsgJ1xcbic7XG5cbiAgaWYgKHRoaXMuY2FjaGVhYmxlKSB7XG4gICAgdGhpcy5jYWNoZWFibGUodHJ1ZSk7XG4gIH1cblxuICByZXR1cm4gY29udGVudDtcbn1cblxuZXhwb3J0IHsgU3RyaXBCcm93c2VyQ29kZSBhcyBTdHJpcEJsb2NrTG9hZGVyIH07XG5cbmV4cG9ydCAqIGZyb20gJy4vcmVnaW9uLXJlbW92ZXInO1xuZXhwb3J0ICogZnJvbSAnLi9yZWdpb24nO1xuXG5leHBvcnQgZGVmYXVsdCBTdHJpcEJyb3dzZXJDb2RlO1xuXG4gOyh7fSk7IC8vIEAtLWVuZC1vZi1maWxlLWZvci1tb2R1bGU9aXNvbW9ycGhpYy1yZWdpb24tbG9hZGVyIGxpYi9pbmRleC50cyJdfQ==
@@ -0,0 +1,13 @@
1
+ export const labelReplacementCode = {
2
+ browserCode: '/* */',
3
+ backendCode: '/* */',
4
+ notForNpmCode: '/* */',
5
+ onlyForGithubDocs: '/* */',
6
+ flatenImportExportRequred: '/* */', // '/* only for github docs */',
7
+ };
8
+ export const ReplacementStringArr = [
9
+ '@backend', '@backendFunc', '@cutCodeIfTrue', '@cutCodeIfFalse', "@notForNpm"
10
+ ];
11
+ ;
12
+ ({}); // @--end-of-file-for-module=isomorphic-region-loader lib/models.ts
13
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vdG1wLWxpYnMtZm9yLWRpc3QvaXNvbW9ycGhpYy1yZWdpb24tbG9hZGVyL3Byb2plY3RzL2lzb21vcnBoaWMtcmVnaW9uLWxvYWRlci9zcmMvbGliL21vZGVscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQSxNQUFNLENBQUMsTUFBTSxvQkFBb0IsR0FBRztJQUNsQyxXQUFXLEVBQUUsT0FBTztJQUNwQixXQUFXLEVBQUUsT0FBTztJQUNwQixhQUFhLEVBQUUsT0FBTztJQUN0QixpQkFBaUIsRUFBRSxPQUFPO0lBQzFCLHlCQUF5QixFQUFFLE9BQU8sRUFBQyxnQ0FBZ0M7Q0FDcEUsQ0FBQztBQUdGLE1BQU0sQ0FBQyxNQUFNLG9CQUFvQixHQUFHO0lBQ2xDLFVBQVUsRUFBRSxjQUFjLEVBQUUsZ0JBQWdCLEVBQUUsaUJBQWlCLEVBQUUsWUFBWTtDQUN2RCxDQUFDO0FBZ0J4QixDQUFDO0FBQUEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLG1FQUFtRSIsInNvdXJjZXNDb250ZW50IjpbIlxuXG5cbmV4cG9ydCBjb25zdCBsYWJlbFJlcGxhY2VtZW50Q29kZSA9IHtcbiAgYnJvd3NlckNvZGU6ICcvKiAqLycsLy8gJy8qIGJyb3dzZXIgY29kZSAqLycsXG4gIGJhY2tlbmRDb2RlOiAnLyogKi8nLC8vICcvKiBiYWNrZW5kIGNvZGUgKi8nLFxuICBub3RGb3JOcG1Db2RlOiAnLyogKi8nLC8vJy8qIG5vdCBmb3IgbnBtIGxpYiBjb2RlICovJyxcbiAgb25seUZvckdpdGh1YkRvY3M6ICcvKiAqLycsLy8gJy8qIG9ubHkgZm9yIGdpdGh1YiBkb2NzICovJyxcbiAgZmxhdGVuSW1wb3J0RXhwb3J0UmVxdXJlZDogJy8qICovJywvLyAnLyogb25seSBmb3IgZ2l0aHViIGRvY3MgKi8nLFxufTtcblxuZXhwb3J0IHR5cGUgUmVwbGFjZW1lbnRTdHJpbmcgPSAnQGJhY2tlbmQnIHwgJ0BiYWNrZW5kRnVuYycgfCAnQGN1dENvZGVJZlRydWUnIHwgJ0BjdXRDb2RlSWZGYWxzZScgfCAnQG5vdEZvck5wbSc7XG5leHBvcnQgY29uc3QgUmVwbGFjZW1lbnRTdHJpbmdBcnIgPSBbXG4gICdAYmFja2VuZCcsICdAYmFja2VuZEZ1bmMnLCAnQGN1dENvZGVJZlRydWUnLCAnQGN1dENvZGVJZkZhbHNlJywgXCJAbm90Rm9yTnBtXCJcbl0gYXMgUmVwbGFjZW1lbnRTdHJpbmdbXTtcblxuZXhwb3J0IHR5cGUgUmVwbGFjZW1lbnQ8RW52Q29uZmlnID0gYW55PiA9IChSZXBsYWNlbWVudFN0cmluZ1xuICB8IFtSZXBsYWNlbWVudFN0cmluZywgc3RyaW5nXVxuICB8IFtSZXBsYWNlbWVudFN0cmluZywgKGV4cHJlc3Npb246IGFueSwgZW52OiBFbnZDb25maWcpID0+ICgpID0+IGJvb2xlYW5dXG4pO1xuXG5leHBvcnQgaW50ZXJmYWNlIFJlcGxhY2VPcHRpb25zRXh0ZW5kZWQ8RW52Q29uZmlnID0gYW55PiB7XG5cbiAgcmVwbGFjZW1lbnRzOiBSZXBsYWNlbWVudFtdO1xuICBlbnY/OiBFbnZDb25maWdcbn1cblxuXG5cblxuIDsoe30pOyAvLyBALS1lbmQtb2YtZmlsZS1mb3ItbW9kdWxlPWlzb21vcnBoaWMtcmVnaW9uLWxvYWRlciBsaWIvbW9kZWxzLnRzIl19
@@ -109,4 +109,4 @@ export class RegionRemover {
109
109
  }
110
110
  ;
111
111
  ({}); // @--end-of-file-for-module=isomorphic-region-loader lib/region-remover.ts
112
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVnaW9uLXJlbW92ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi90bXAtbGlicy1mb3ItZGlzdC9pc29tb3JwaGljLXJlZ2lvbi1sb2FkZXIvcHJvamVjdHMvaXNvbW9ycGhpYy1yZWdpb24tbG9hZGVyL3NyYy9saWIvcmVnaW9uLXJlbW92ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLENBQUMsRUFBRSxJQUFJLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUczQyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBR2xDLE9BQU8sRUFBRSxZQUFZLEVBQUUsSUFBSSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFHeEQsTUFBTSxPQUFPLGFBQWE7SUFJakIsTUFBTSxDQUFDLElBQUksQ0FDaEIscUJBQTZCLEVBQzdCLE9BQWUsRUFDZixhQUFtQixFQUFFLDRCQUE0QjtJQUNqRCxPQUFhO1FBR2IsSUFBSSxhQUFhLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO1FBRXhELElBQUksQ0FBQyxhQUFhLEVBQUU7WUFDbEIsYUFBYSxHQUFHO2dCQUNkLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxrQkFBa0IsQ0FBQztnQkFDdkMsSUFBSSxDQUFDLE9BQWM7YUFDcEIsQ0FBQztTQUNIO1FBQ0QsT0FBTyxJQUFJLGFBQWEsQ0FBQyxxQkFBcUIsRUFBRSxhQUFvQixFQUFFLE9BQU8sRUFBRSxhQUFhLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDekcsQ0FBQztJQUVPLGdCQUFnQixDQUFDLENBQVM7UUFDaEMsTUFBTSxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDcEUsT0FB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QyxFQUFFO29CQUM1QixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO2lCQUNsQztxQkFBTSxJQUFJLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLEVBQUU7b0JBQ2pDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO2lCQUMxQjtxQkFBTTtvQkFDTCxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztpQkFDMUI7YUFDRjtTQUNGO1FBR0QsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQztRQUM5QixJQUFJLFFBQVEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1lBQ3ZCLEtBQUssSUFBSSxLQUFLLEdBQUcsQ0FBQyxFQUFFLEtBQUssR0FBRyxRQUFRLENBQUMsTUFBTSxFQUFFLEtBQUssRUFBRSxFQUFFO2dCQUNwRCxNQUFNLEtBQUssR0FBRyxRQUFRLENBQUMsS0FBSyxDQUFXLENBQUM7Z0JBQ3hDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7YUFDbEI7U0FDRjtJQUNILENBQUM7SUFFRCxJQUFJLE1BQU07UUFDUixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDOUIsQ0FBQztDQUVGO0FBRUEsQ0FBQztBQUFBLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQywyRUFBMkUiLCJzb3VyY2VzQ29udGVudCI6WyJcblxuaW1wb3J0IHsgXywgcGF0aCB9IGZyb20gJ3RucC1jb3JlL2Jyb3dzZXInO1xuXG5pbXBvcnQgeyBIZWxwZXJzIH0gZnJvbSAndG5wLWNvcmUvYnJvd3Nlcic7XG5pbXBvcnQgeyBSZWdpb24gfSBmcm9tICcuL3JlZ2lvbic7XG5cbmltcG9ydCB7IENvbmZpZ01vZGVscyB9IGZyb20gJ3RucC1jb25maWcvYnJvd3Nlcic7XG5pbXBvcnQgeyBSRUdFWF9SRUdJT04sIFRBR1MgfSBmcm9tICd0bnAtY29uZmlnL2Jyb3dzZXInO1xuXG5cbmV4cG9ydCBjbGFzcyBSZWdpb25SZW1vdmVyIHtcbiAgcHJpdmF0ZSByb290OiBSZWdpb247XG4gIHByaXZhdGUgcmVhZG9ubHkgU1RBUlRfUkVHSU9OOiBSZWdFeHBbXSA9IFtdO1xuICBwcml2YXRlIHJlYWRvbmx5IEVORF9SRUdJT046IFJlZ0V4cFtdID0gW107XG4gIHB1YmxpYyBzdGF0aWMgZnJvbShcbiAgICByZWFsdGl2ZU9yQWJzRmlsZVBBdGg6IHN0cmluZyxcbiAgICBjb250ZW50OiBzdHJpbmcsXG4gICAgcmVwbGFjZW1lbnRzcz86IGFueSwgLy8gTW9kZWxzLmRldi5SZXBsYWNlbWVudFtdLFxuICAgIHByb2plY3Q/OiBhbnksIC8vIFByb2plY3QsXG4gICkge1xuXG4gICAgbGV0IGZpbGVFeHRlbnNpb24gPSBwYXRoLmV4dG5hbWUocmVhbHRpdmVPckFic0ZpbGVQQXRoKTtcblxuICAgIGlmICghcmVwbGFjZW1lbnRzcykge1xuICAgICAgcmVwbGFjZW1lbnRzcyA9IFtcbiAgICAgICAgW1RBR1MuQkFDS0VORF9GVU5DLCBgcmV0dXJuICh2b2lkIDApO2BdLFxuICAgICAgICBUQUdTLkJBQ0tFTkQgYXMgYW55LFxuICAgICAgXTtcbiAgICB9XG4gICAgcmV0dXJuIG5ldyBSZWdpb25SZW1vdmVyKHJlYWx0aXZlT3JBYnNGaWxlUEF0aCwgZmlsZUV4dGVuc2lvbiBhcyBhbnksIGNvbnRlbnQsIHJlcGxhY2VtZW50c3MsIHByb2plY3QpO1xuICB9XG5cbiAgcHJpdmF0ZSBtYXRjaFN0YXJ0UmVnaW9uKGw6IHN0cmluZykge1xuICAgIGNvbnN0IHJlcyA9ICFfLmlzVW5kZWZpbmVkKHRoaXMuU1RBUlRfUkVHSU9OLmZpbmQociA9PiBsLm1hdGNoKHIpKSk7XG4gICAgcmV0dXJuIHJlcztcbiAgfVxuICBwcml2YXRlIG1hdGNoRW5kUmVnaW9uKGw6IHN0cmluZykge1xuICAgIGNvbnN0IHJlcyA9ICFfLmlzVW5kZWZpbmVkKHRoaXMuRU5EX1JFR0lPTi5maW5kKHIgPT4gbC5tYXRjaChyKSkpO1xuICAgIHJldHVybiByZXM7XG4gIH1cblxuXG4gIHByaXZhdGUgY29uc3RydWN0b3IoXG4gICAgcHVibGljIHJlYWRvbmx5IHJlYWx0aXZlT3JBYnNGaWxlUEF0aDogc3RyaW5nLFxuICAgIGZpbGVFeHRlbnNpb246IENvbmZpZ01vZGVscy5DdXRhYmxlRmlsZUV4dCxcbiAgICBwcml2YXRlIGNvbnRlbnQ6IHN0cmluZyxcbiAgICByZXBsYWNlbWVudHNzPzogYW55LCAvLyBNb2RlbHMuZGV2LlJlcGxhY2VtZW50W10sXG4gICAgcHVibGljIHJlYWRvbmx5IHByb2plY3Q/OiBhbnksIC8vIFByb2plY3RcblxuICApIHtcbiAgICBpZiAoKFJFR0VYX1JFR0lPTi5UU19KU19TQ1NTX1NBU1MuRVhUKS5pbmNsdWRlcyhmaWxlRXh0ZW5zaW9uKSkge1xuICAgICAgdGhpcy5TVEFSVF9SRUdJT04ucHVzaChSRUdFWF9SRUdJT04uVFNfSlNfU0NTU19TQVNTLlNUQVJUKTtcbiAgICAgIHRoaXMuRU5EX1JFR0lPTi5wdXNoKFJFR0VYX1JFR0lPTi5UU19KU19TQ1NTX1NBU1MuRU5EKTtcbiAgICB9XG4gICAgaWYgKChSRUdFWF9SRUdJT04uSFRNTC5FWFQpLmluY2x1ZGVzKGZpbGVFeHRlbnNpb24pKSB7XG4gICAgICB0aGlzLlNUQVJUX1JFR0lPTi5wdXNoKFJFR0VYX1JFR0lPTi5IVE1MLlNUQVJUKTtcbiAgICAgIHRoaXMuRU5EX1JFR0lPTi5wdXNoKFJFR0VYX1JFR0lPTi5IVE1MLkVORCk7XG4gICAgfVxuICAgIGlmICgoUkVHRVhfUkVHSU9OLkNTUy5FWFQpLmluY2x1ZGVzKGZpbGVFeHRlbnNpb24pKSB7XG4gICAgICB0aGlzLlNUQVJUX1JFR0lPTi5wdXNoKFJFR0VYX1JFR0lPTi5DU1MuU1RBUlQpO1xuICAgICAgdGhpcy5FTkRfUkVHSU9OLnB1c2goUkVHRVhfUkVHSU9OLkNTUy5FTkQpO1xuICAgIH1cblxuICAgIGNvbnN0IGxpbmVzID0gdGhpcy5jb250ZW50LnNwbGl0KCdcXG4nKTtcbiAgICB0aGlzLnJvb3QgPSBuZXcgUmVnaW9uKFxuICAgICAgdGhpcyxcbiAgICAgIHJlcGxhY2VtZW50c3MsXG4gICAgICB2b2lkIDAsXG4gICAgICAwLCAobGluZXMubGVuZ3RoIC0gMSksXG4gICAgICBfLmZpcnN0KGxpbmVzKSwgXy5sYXN0KGxpbmVzKSxcbiAgICAgIGxpbmVzKTtcbiAgICB0aGlzLnRyZWUodGhpcy5yb290KTtcbiAgfVxuXG4gIHByaXZhdGUgdHJlZShub2RlOiBSZWdpb24pIHtcbiAgICBjb25zdCBjb250ZW50TGluZXMgPSBub2RlLmNvbnRlbnRMaW5lcztcblxuXG5cblxuXG5cbiAgICBsZXQgc3RhY2sgPSAwO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgY29udGVudExpbmVzLmxlbmd0aDsgaSsrKSB7XG4gICAgICBjb25zdCBsID0gY29udGVudExpbmVzW2ldO1xuICAgICAgaWYgKCFub2RlLmlzUm9vdCkge1xuICAgICAgICBpZiAoaSA9PT0gMCkge1xuICAgICAgICAgIG5vZGUuYWRkTm9ybWFsTGluZShsLCAwKTtcbiAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoaSA9PT0gKG5vZGUuY29udGVudExpbmVzLmxlbmd0aCAtIDEpKSB7XG4gICAgICAgICAgbm9kZS5hZGROb3JtYWxMaW5lKGwsIGkpO1xuICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBpZiAobm9kZS5sYXN0UmVnaW9uV2l0aG91dEVuZCkge1xuICAgICAgICBpZiAodGhpcy5tYXRjaFN0YXJ0UmVnaW9uKGwpKSB7XG4gICAgICAgICAgbm9kZS5hZGROb3JtYWxMaW5lVG9MYXN0UmVnaW9uKGwsIGkpO1xuICAgICAgICAgIHN0YWNrKys7XG4gICAgICAgIH0gZWxzZSBpZiAodGhpcy5tYXRjaEVuZFJlZ2lvbihsKSkge1xuICAgICAgICAgIGlmIChzdGFjayA9PT0gMCkge1xuICAgICAgICAgICAgbm9kZS5lbmRMYXN0UmVnaW9uKGksIGwpO1xuICAgICAgICAgIH0gZWxzZSBpZiAoc3RhY2sgPiAwKSB7XG4gICAgICAgICAgICBub2RlLmFkZE5vcm1hbExpbmVUb0xhc3RSZWdpb24obCwgaSk7XG4gICAgICAgICAgICBzdGFjay0tO1xuICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBpZiAoaSA9PT0gKG5vZGUuY29udGVudExpbmVzLmxlbmd0aCAtIChub2RlLmlzUm9vdCA/IDEgOiAyKSkpIHtcbiAgICAgICAgICAgIHN0YWNrID0gMDtcbiAgICAgICAgICAgIG5vZGUuZW5kTGFzdFJlZ2lvbihpLCBsKTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgbm9kZS5hZGROb3JtYWxMaW5lVG9MYXN0UmVnaW9uKGwsIGkpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgaWYgKHRoaXMubWF0Y2hTdGFydFJlZ2lvbihsKSkge1xuICAgICAgICAgIG5vZGUuYWRkUmVnaW9uKHRoaXMsIG5vZGUsIGksIGwpO1xuICAgICAgICB9IGVsc2UgaWYgKHRoaXMubWF0Y2hFbmRSZWdpb24obCkpIHtcbiAgICAgICAgICBub2RlLmFkZE5vcm1hbExpbmUobCwgaSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgbm9kZS5hZGROb3JtYWxMaW5lKGwsIGkpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG5cbiAgICBjb25zdCBjaGlsZHJlbiA9IG5vZGUucmVnaW9ucztcbiAgICBpZiAoY2hpbGRyZW4ubGVuZ3RoID4gMCkge1xuICAgICAgZm9yIChsZXQgaW5kZXggPSAwOyBpbmRleCA8IGNoaWxkcmVuLmxlbmd0aDsgaW5kZXgrKykge1xuICAgICAgICBjb25zdCBjaGlsZCA9IGNoaWxkcmVuW2luZGV4XSBhcyBSZWdpb247XG4gICAgICAgIHRoaXMudHJlZShjaGlsZCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgZ2V0IG91dHB1dCgpIHtcbiAgICByZXR1cm4gdGhpcy5yb290LnRvU3RyaW5nKCk7XG4gIH1cblxufVxuXG4gOyh7fSk7IC8vIEAtLWVuZC1vZi1maWxlLWZvci1tb2R1bGU9aXNvbW9ycGhpYy1yZWdpb24tbG9hZGVyIGxpYi9yZWdpb24tcmVtb3Zlci50cyJdfQ==
112
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVnaW9uLXJlbW92ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi90bXAtbGlicy1mb3ItZGlzdC9pc29tb3JwaGljLXJlZ2lvbi1sb2FkZXIvcHJvamVjdHMvaXNvbW9ycGhpYy1yZWdpb24tbG9hZGVyL3NyYy9saWIvcmVnaW9uLXJlbW92ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLENBQUMsRUFBRSxJQUFJLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUczQyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBR2xDLE9BQU8sRUFBRSxZQUFZLEVBQUUsSUFBSSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFHeEQsTUFBTSxPQUFPLGFBQWE7SUFJakIsTUFBTSxDQUFDLElBQUksQ0FDaEIscUJBQTZCLEVBQzdCLE9BQWUsRUFDZixhQUFtQixFQUFFLDRCQUE0QjtJQUNqRCxPQUFhO1FBR2IsSUFBSSxhQUFhLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO1FBRXhELElBQUksQ0FBQyxhQUFhLEVBQUU7WUFDbEIsYUFBYSxHQUFHO2dCQUNkLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxrQkFBa0IsQ0FBQztnQkFDdkMsSUFBSSxDQUFDLE9BQWM7YUFDcEIsQ0FBQztTQUNIO1FBQ0QsT0FBTyxJQUFJLGFBQWEsQ0FBQyxxQkFBcUIsRUFBRSxhQUFvQixFQUFFLE9BQU8sRUFBRSxhQUFhLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDekcsQ0FBQztJQUVPLGdCQUFnQixDQUFDLENBQVM7UUFDaEMsTUFBTSxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDcEUsT0FB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QyxFQUFFO29CQUM1QixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO2lCQUNsQztxQkFBTSxJQUFJLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLEVBQUU7b0JBQ2pDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO2lCQUMxQjtxQkFBTTtvQkFDTCxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztpQkFDMUI7YUFDRjtTQUNGO1FBR0QsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQztRQUM5QixJQUFJLFFBQVEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1lBQ3ZCLEtBQUssSUFBSSxLQUFLLEdBQUcsQ0FBQyxFQUFFLEtBQUssR0FBRyxRQUFRLENBQUMsTUFBTSxFQUFFLEtBQUssRUFBRSxFQUFFO2dCQUNwRCxNQUFNLEtBQUssR0FBRyxRQUFRLENBQUMsS0FBSyxDQUFXLENBQUM7Z0JBQ3hDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7YUFDbEI7U0FDRjtJQUNILENBQUM7SUFFRCxJQUFJLE1BQU07UUFDUixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDOUIsQ0FBQztDQUVGO0FBRUEsQ0FBQztBQUFBLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQywyRUFBMkUiLCJzb3VyY2VzQ29udGVudCI6WyJcblxuaW1wb3J0IHsgXywgcGF0aCB9IGZyb20gJ3RucC1jb3JlL2Jyb3dzZXInO1xuXG5pbXBvcnQgeyBIZWxwZXJzIH0gZnJvbSAndG5wLWNvcmUvYnJvd3Nlcic7XG5pbXBvcnQgeyBSZWdpb24gfSBmcm9tICcuL3JlZ2lvbic7XG4vLyBAdHMtaWdub3JlXG5pbXBvcnQgeyBDb3JlTW9kZWxzIH0gZnJvbSAndG5wLWNvcmUvYnJvd3Nlcic7XG5pbXBvcnQgeyBSRUdFWF9SRUdJT04sIFRBR1MgfSBmcm9tICd0bnAtY29uZmlnL2Jyb3dzZXInO1xuXG5cbmV4cG9ydCBjbGFzcyBSZWdpb25SZW1vdmVyIHtcbiAgcHJpdmF0ZSByb290OiBSZWdpb247XG4gIHByaXZhdGUgcmVhZG9ubHkgU1RBUlRfUkVHSU9OOiBSZWdFeHBbXSA9IFtdO1xuICBwcml2YXRlIHJlYWRvbmx5IEVORF9SRUdJT046IFJlZ0V4cFtdID0gW107XG4gIHB1YmxpYyBzdGF0aWMgZnJvbShcbiAgICByZWFsdGl2ZU9yQWJzRmlsZVBBdGg6IHN0cmluZyxcbiAgICBjb250ZW50OiBzdHJpbmcsXG4gICAgcmVwbGFjZW1lbnRzcz86IGFueSwgLy8gTW9kZWxzLmRldi5SZXBsYWNlbWVudFtdLFxuICAgIHByb2plY3Q/OiBhbnksIC8vIFByb2plY3QsXG4gICkge1xuXG4gICAgbGV0IGZpbGVFeHRlbnNpb24gPSBwYXRoLmV4dG5hbWUocmVhbHRpdmVPckFic0ZpbGVQQXRoKTtcblxuICAgIGlmICghcmVwbGFjZW1lbnRzcykge1xuICAgICAgcmVwbGFjZW1lbnRzcyA9IFtcbiAgICAgICAgW1RBR1MuQkFDS0VORF9GVU5DLCBgcmV0dXJuICh2b2lkIDApO2BdLFxuICAgICAgICBUQUdTLkJBQ0tFTkQgYXMgYW55LFxuICAgICAgXTtcbiAgICB9XG4gICAgcmV0dXJuIG5ldyBSZWdpb25SZW1vdmVyKHJlYWx0aXZlT3JBYnNGaWxlUEF0aCwgZmlsZUV4dGVuc2lvbiBhcyBhbnksIGNvbnRlbnQsIHJlcGxhY2VtZW50c3MsIHByb2plY3QpO1xuICB9XG5cbiAgcHJpdmF0ZSBtYXRjaFN0YXJ0UmVnaW9uKGw6IHN0cmluZykge1xuICAgIGNvbnN0IHJlcyA9ICFfLmlzVW5kZWZpbmVkKHRoaXMuU1RBUlRfUkVHSU9OLmZpbmQociA9PiBsLm1hdGNoKHIpKSk7XG4gICAgcmV0dXJuIHJlcztcbiAgfVxuICBwcml2YXRlIG1hdGNoRW5kUmVnaW9uKGw6IHN0cmluZykge1xuICAgIGNvbnN0IHJlcyA9ICFfLmlzVW5kZWZpbmVkKHRoaXMuRU5EX1JFR0lPTi5maW5kKHIgPT4gbC5tYXRjaChyKSkpO1xuICAgIHJldHVybiByZXM7XG4gIH1cblxuXG4gIHByaXZhdGUgY29uc3RydWN0b3IoXG4gICAgcHVibGljIHJlYWRvbmx5IHJlYWx0aXZlT3JBYnNGaWxlUEF0aDogc3RyaW5nLFxuICAgIGZpbGVFeHRlbnNpb246IENvcmVNb2RlbHMuQ3V0YWJsZUZpbGVFeHQsXG4gICAgcHJpdmF0ZSBjb250ZW50OiBzdHJpbmcsXG4gICAgcmVwbGFjZW1lbnRzcz86IGFueSwgLy8gTW9kZWxzLmRldi5SZXBsYWNlbWVudFtdLFxuICAgIHB1YmxpYyByZWFkb25seSBwcm9qZWN0PzogYW55LCAvLyBQcm9qZWN0XG5cbiAgKSB7XG4gICAgaWYgKChSRUdFWF9SRUdJT04uVFNfSlNfU0NTU19TQVNTLkVYVCkuaW5jbHVkZXMoZmlsZUV4dGVuc2lvbikpIHtcbiAgICAgIHRoaXMuU1RBUlRfUkVHSU9OLnB1c2goUkVHRVhfUkVHSU9OLlRTX0pTX1NDU1NfU0FTUy5TVEFSVCk7XG4gICAgICB0aGlzLkVORF9SRUdJT04ucHVzaChSRUdFWF9SRUdJT04uVFNfSlNfU0NTU19TQVNTLkVORCk7XG4gICAgfVxuICAgIGlmICgoUkVHRVhfUkVHSU9OLkhUTUwuRVhUKS5pbmNsdWRlcyhmaWxlRXh0ZW5zaW9uKSkge1xuICAgICAgdGhpcy5TVEFSVF9SRUdJT04ucHVzaChSRUdFWF9SRUdJT04uSFRNTC5TVEFSVCk7XG4gICAgICB0aGlzLkVORF9SRUdJT04ucHVzaChSRUdFWF9SRUdJT04uSFRNTC5FTkQpO1xuICAgIH1cbiAgICBpZiAoKFJFR0VYX1JFR0lPTi5DU1MuRVhUKS5pbmNsdWRlcyhmaWxlRXh0ZW5zaW9uKSkge1xuICAgICAgdGhpcy5TVEFSVF9SRUdJT04ucHVzaChSRUdFWF9SRUdJT04uQ1NTLlNUQVJUKTtcbiAgICAgIHRoaXMuRU5EX1JFR0lPTi5wdXNoKFJFR0VYX1JFR0lPTi5DU1MuRU5EKTtcbiAgICB9XG5cbiAgICBjb25zdCBsaW5lcyA9IHRoaXMuY29udGVudC5zcGxpdCgnXFxuJyk7XG4gICAgdGhpcy5yb290ID0gbmV3IFJlZ2lvbihcbiAgICAgIHRoaXMsXG4gICAgICByZXBsYWNlbWVudHNzLFxuICAgICAgdm9pZCAwLFxuICAgICAgMCwgKGxpbmVzLmxlbmd0aCAtIDEpLFxuICAgICAgXy5maXJzdChsaW5lcyksIF8ubGFzdChsaW5lcyksXG4gICAgICBsaW5lcyk7XG4gICAgdGhpcy50cmVlKHRoaXMucm9vdCk7XG4gIH1cblxuICBwcml2YXRlIHRyZWUobm9kZTogUmVnaW9uKSB7XG4gICAgY29uc3QgY29udGVudExpbmVzID0gbm9kZS5jb250ZW50TGluZXM7XG5cblxuXG5cblxuXG4gICAgbGV0IHN0YWNrID0gMDtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGNvbnRlbnRMaW5lcy5sZW5ndGg7IGkrKykge1xuICAgICAgY29uc3QgbCA9IGNvbnRlbnRMaW5lc1tpXTtcbiAgICAgIGlmICghbm9kZS5pc1Jvb3QpIHtcbiAgICAgICAgaWYgKGkgPT09IDApIHtcbiAgICAgICAgICBub2RlLmFkZE5vcm1hbExpbmUobCwgMCk7XG4gICAgICAgICAgY29udGludWU7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGkgPT09IChub2RlLmNvbnRlbnRMaW5lcy5sZW5ndGggLSAxKSkge1xuICAgICAgICAgIG5vZGUuYWRkTm9ybWFsTGluZShsLCBpKTtcbiAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgaWYgKG5vZGUubGFzdFJlZ2lvbldpdGhvdXRFbmQpIHtcbiAgICAgICAgaWYgKHRoaXMubWF0Y2hTdGFydFJlZ2lvbihsKSkge1xuICAgICAgICAgIG5vZGUuYWRkTm9ybWFsTGluZVRvTGFzdFJlZ2lvbihsLCBpKTtcbiAgICAgICAgICBzdGFjaysrO1xuICAgICAgICB9IGVsc2UgaWYgKHRoaXMubWF0Y2hFbmRSZWdpb24obCkpIHtcbiAgICAgICAgICBpZiAoc3RhY2sgPT09IDApIHtcbiAgICAgICAgICAgIG5vZGUuZW5kTGFzdFJlZ2lvbihpLCBsKTtcbiAgICAgICAgICB9IGVsc2UgaWYgKHN0YWNrID4gMCkge1xuICAgICAgICAgICAgbm9kZS5hZGROb3JtYWxMaW5lVG9MYXN0UmVnaW9uKGwsIGkpO1xuICAgICAgICAgICAgc3RhY2stLTtcbiAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgaWYgKGkgPT09IChub2RlLmNvbnRlbnRMaW5lcy5sZW5ndGggLSAobm9kZS5pc1Jvb3QgPyAxIDogMikpKSB7XG4gICAgICAgICAgICBzdGFjayA9IDA7XG4gICAgICAgICAgICBub2RlLmVuZExhc3RSZWdpb24oaSwgbCk7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIG5vZGUuYWRkTm9ybWFsTGluZVRvTGFzdFJlZ2lvbihsLCBpKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGlmICh0aGlzLm1hdGNoU3RhcnRSZWdpb24obCkpIHtcbiAgICAgICAgICBub2RlLmFkZFJlZ2lvbih0aGlzLCBub2RlLCBpLCBsKTtcbiAgICAgICAgfSBlbHNlIGlmICh0aGlzLm1hdGNoRW5kUmVnaW9uKGwpKSB7XG4gICAgICAgICAgbm9kZS5hZGROb3JtYWxMaW5lKGwsIGkpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIG5vZGUuYWRkTm9ybWFsTGluZShsLCBpKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuXG4gICAgY29uc3QgY2hpbGRyZW4gPSBub2RlLnJlZ2lvbnM7XG4gICAgaWYgKGNoaWxkcmVuLmxlbmd0aCA+IDApIHtcbiAgICAgIGZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPCBjaGlsZHJlbi5sZW5ndGg7IGluZGV4KyspIHtcbiAgICAgICAgY29uc3QgY2hpbGQgPSBjaGlsZHJlbltpbmRleF0gYXMgUmVnaW9uO1xuICAgICAgICB0aGlzLnRyZWUoY2hpbGQpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGdldCBvdXRwdXQoKSB7XG4gICAgcmV0dXJuIHRoaXMucm9vdC50b1N0cmluZygpO1xuICB9XG5cbn1cblxuIDsoe30pOyAvLyBALS1lbmQtb2YtZmlsZS1mb3ItbW9kdWxlPWlzb21vcnBoaWMtcmVnaW9uLWxvYWRlciBsaWIvcmVnaW9uLXJlbW92ZXIudHMiXX0=