@tilde-nlp/ngx-translate 2.0.3 → 2.1.0

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 (130) hide show
  1. package/esm2020/lib/factories/file-api-service.factory.mjs +1 -1
  2. package/esm2020/lib/factories/mt-term-term-api.factory.mjs +12 -0
  3. package/esm2020/lib/factories/text-api-service.factory.mjs +3 -3
  4. package/esm2020/lib/i18n/de.mjs +2 -7
  5. package/esm2020/lib/i18n/en.mjs +2 -6
  6. package/esm2020/lib/i18n/et.mjs +1 -6
  7. package/esm2020/lib/i18n/fi.mjs +1 -6
  8. package/esm2020/lib/i18n/lt.mjs +1 -6
  9. package/esm2020/lib/i18n/lv.mjs +2 -7
  10. package/esm2020/lib/i18n/pl.mjs +1 -6
  11. package/esm2020/lib/i18n/sv.mjs +1 -4
  12. package/esm2020/lib/injection-tokens/index.mjs +2 -1
  13. package/esm2020/lib/injection-tokens/mt-term-api.token.mjs +2 -0
  14. package/esm2020/lib/modules/tld-common/models/configs/tld-term-config.model.mjs +1 -1
  15. package/esm2020/lib/modules/tld-common/services/tld-translate-config.service.mjs +2 -1
  16. package/esm2020/lib/modules/tld-document/services/api/file-api.service.mjs +7 -7
  17. package/esm2020/lib/modules/tld-term/create-collection/create-collection.component.mjs +51 -0
  18. package/esm2020/lib/modules/tld-term/index.mjs +2 -1
  19. package/esm2020/lib/modules/tld-term/services/api-v1/models/mt-term-collection-v1-status.enum.mjs +7 -0
  20. package/esm2020/lib/modules/tld-term/services/api-v1/models/mt-term-collection-v1.model.mjs +2 -0
  21. package/esm2020/lib/modules/tld-term/services/api-v1/mt-term-v1.service.mjs +53 -0
  22. package/esm2020/lib/modules/tld-term/services/api-v2/mt-term-v2.service.mjs +67 -0
  23. package/esm2020/lib/modules/tld-term/services/engine-term/eninge-term-api.service.mjs +32 -0
  24. package/esm2020/lib/modules/tld-term/services/engine-term/models/add-engine-terms-request-params.model.mjs +2 -0
  25. package/esm2020/lib/modules/tld-term/services/engine-term/models/engine-term-collection-list.model.mjs +2 -0
  26. package/esm2020/lib/modules/tld-term/services/engine-term/models/engine-term-collection-scope.enum.mjs +6 -0
  27. package/esm2020/lib/modules/tld-term/services/engine-term/models/engine-term-collection-source.enum.mjs +6 -0
  28. package/esm2020/lib/modules/tld-term/services/engine-term/models/engine-term-collection-status.enum.mjs +11 -0
  29. package/esm2020/lib/modules/tld-term/services/engine-term/models/engine-term-collection.model.mjs +2 -0
  30. package/esm2020/lib/modules/tld-term/services/engine-term/models/index.mjs +8 -0
  31. package/esm2020/lib/modules/tld-term/services/engine-term/models/update-engine-terms-request-params.model.mjs +2 -0
  32. package/esm2020/lib/modules/tld-term/services/index.mjs +4 -4
  33. package/esm2020/lib/modules/tld-term/services/models/combined-collection-tooltip-key.enum.mjs +6 -0
  34. package/esm2020/lib/modules/tld-term/services/models/combined-collection.model.mjs +190 -0
  35. package/esm2020/lib/modules/tld-term/services/models/index.mjs +6 -0
  36. package/esm2020/lib/modules/tld-term/services/models/mt-collection-status.enum.mjs +14 -0
  37. package/esm2020/lib/modules/tld-term/services/models/mt-collection.model.mjs +2 -0
  38. package/esm2020/lib/modules/tld-term/services/models/mt-term-service.model.mjs +2 -0
  39. package/esm2020/lib/modules/tld-term/services/term-api/index.mjs +3 -0
  40. package/esm2020/lib/modules/tld-term/services/term-api/models/index.mjs +3 -0
  41. package/esm2020/lib/modules/tld-term/services/term-api/models/tld-term-collection-languages.model.mjs +2 -0
  42. package/esm2020/lib/modules/tld-term/services/term-api/models/tld-term-collection.model.mjs +2 -0
  43. package/esm2020/lib/modules/tld-term/services/term-api/term-api.service.mjs +58 -0
  44. package/esm2020/lib/modules/tld-term/services/terminology.service.mjs +292 -0
  45. package/esm2020/lib/modules/tld-term/tld-term-collection/tld-term-collection.component.mjs +27 -12
  46. package/esm2020/lib/modules/tld-term/tld-term-collection-list/tld-term-collection-list.component.mjs +24 -51
  47. package/esm2020/lib/modules/tld-term/tld-term-menu/tld-term-menu.component.mjs +19 -12
  48. package/esm2020/lib/modules/tld-term/tld-term.module.mjs +6 -5
  49. package/esm2020/lib/modules/tld-text/services/api/tld-translate-text-api.service.mjs +7 -7
  50. package/esm2020/lib/modules/tld-tooltip/services/api-v2/tld-system-api-v2.service.mjs +4 -2
  51. package/esm2020/lib/modules/tld-web/tld-translate-web/tld-translate-web.component.mjs +8 -8
  52. package/esm2020/lib/tld-translate.module.mjs +17 -4
  53. package/esm2020/public-api.mjs +4 -2
  54. package/fesm2015/tilde-nlp-ngx-translate.mjs +749 -435
  55. package/fesm2015/tilde-nlp-ngx-translate.mjs.map +1 -1
  56. package/fesm2020/tilde-nlp-ngx-translate.mjs +724 -431
  57. package/fesm2020/tilde-nlp-ngx-translate.mjs.map +1 -1
  58. package/lib/factories/file-api-service.factory.d.ts +2 -2
  59. package/lib/factories/mt-term-term-api.factory.d.ts +7 -0
  60. package/lib/factories/text-api-service.factory.d.ts +3 -3
  61. package/lib/i18n/de.d.ts +0 -5
  62. package/lib/i18n/en.d.ts +1 -5
  63. package/lib/i18n/et.d.ts +0 -5
  64. package/lib/i18n/fi.d.ts +0 -5
  65. package/lib/i18n/lt.d.ts +0 -5
  66. package/lib/i18n/lv.d.ts +0 -5
  67. package/lib/i18n/pl.d.ts +0 -5
  68. package/lib/i18n/sv.d.ts +0 -3
  69. package/lib/injection-tokens/index.d.ts +1 -0
  70. package/lib/injection-tokens/mt-term-api.token.d.ts +1 -0
  71. package/lib/modules/tld-common/models/configs/tld-term-config.model.d.ts +1 -0
  72. package/lib/modules/tld-document/services/api/file-api.service.d.ts +3 -3
  73. package/lib/modules/tld-term/create-collection/create-collection.component.d.ts +17 -0
  74. package/lib/modules/tld-term/index.d.ts +1 -0
  75. package/lib/modules/tld-term/{models/mt-collection-status.model.d.ts → services/api-v1/models/mt-term-collection-v1-status.enum.d.ts} +1 -1
  76. package/lib/modules/tld-term/services/api-v1/models/mt-term-collection-v1.model.d.ts +12 -0
  77. package/lib/modules/tld-term/services/api-v1/mt-term-v1.service.d.ts +17 -0
  78. package/lib/modules/tld-term/services/api-v2/mt-term-v2.service.d.ts +18 -0
  79. package/lib/modules/tld-term/services/engine-term/eninge-term-api.service.d.ts +17 -0
  80. package/lib/modules/tld-term/services/engine-term/models/add-engine-terms-request-params.model.d.ts +8 -0
  81. package/lib/modules/tld-term/services/engine-term/models/engine-term-collection-list.model.d.ts +4 -0
  82. package/lib/modules/tld-term/services/engine-term/models/engine-term-collection-scope.enum.d.ts +4 -0
  83. package/lib/modules/tld-term/services/engine-term/models/engine-term-collection-source.enum.d.ts +4 -0
  84. package/lib/modules/tld-term/services/engine-term/models/engine-term-collection-status.enum.d.ts +9 -0
  85. package/lib/modules/tld-term/services/engine-term/models/engine-term-collection.model.d.ts +14 -0
  86. package/lib/modules/tld-term/services/engine-term/models/index.d.ts +7 -0
  87. package/lib/modules/tld-term/services/engine-term/models/update-engine-terms-request-params.model.d.ts +5 -0
  88. package/lib/modules/tld-term/services/index.d.ts +3 -3
  89. package/lib/modules/tld-term/services/models/combined-collection-tooltip-key.enum.d.ts +4 -0
  90. package/lib/modules/tld-term/services/models/combined-collection.model.d.ts +87 -0
  91. package/lib/modules/tld-term/services/models/index.d.ts +5 -0
  92. package/lib/modules/tld-term/services/models/mt-collection-status.enum.d.ts +11 -0
  93. package/lib/modules/tld-term/services/models/mt-collection.model.d.ts +14 -0
  94. package/lib/modules/tld-term/services/models/mt-term-service.model.d.ts +7 -0
  95. package/lib/modules/tld-term/services/term-api/index.d.ts +2 -0
  96. package/lib/modules/tld-term/services/term-api/models/index.d.ts +2 -0
  97. package/lib/modules/tld-term/{models/term-api → services/term-api/models}/tld-term-collection.model.d.ts +2 -2
  98. package/lib/modules/tld-term/services/term-api/term-api.service.d.ts +17 -0
  99. package/lib/modules/tld-term/services/terminology.service.d.ts +63 -0
  100. package/lib/modules/tld-term/tld-term-collection/tld-term-collection.component.d.ts +13 -4
  101. package/lib/modules/tld-term/tld-term-collection-list/tld-term-collection-list.component.d.ts +13 -17
  102. package/lib/modules/tld-term/tld-term-menu/tld-term-menu.component.d.ts +11 -7
  103. package/lib/modules/tld-term/tld-term.module.d.ts +13 -12
  104. package/lib/modules/tld-text/services/api/tld-translate-text-api.service.d.ts +3 -3
  105. package/lib/modules/tld-web/tld-translate-web/tld-translate-web.component.d.ts +3 -3
  106. package/package.json +1 -1
  107. package/public-api.d.ts +3 -1
  108. package/src/assets/webcomponent/tld-translate.js +1 -1
  109. package/tilde-nlp-ngx-translate-2.1.0.tgz +0 -0
  110. package/esm2020/lib/modules/tld-term/models/converted-collection-tooltip-key.model.mjs +0 -7
  111. package/esm2020/lib/modules/tld-term/models/converted-collection-type.model.mjs +0 -9
  112. package/esm2020/lib/modules/tld-term/models/index.mjs +0 -7
  113. package/esm2020/lib/modules/tld-term/models/mt-api/tld-mt-term-collection.model.mjs +0 -2
  114. package/esm2020/lib/modules/tld-term/models/mt-collection-status.model.mjs +0 -7
  115. package/esm2020/lib/modules/tld-term/models/term-api/tld-term-collection-languages.model.mjs +0 -2
  116. package/esm2020/lib/modules/tld-term/models/term-api/tld-term-collection.model.mjs +0 -2
  117. package/esm2020/lib/modules/tld-term/models/tld-converted-collection.model.mjs +0 -114
  118. package/esm2020/lib/modules/tld-term/services/mt-collections-api.service.mjs +0 -33
  119. package/esm2020/lib/modules/tld-term/services/term-api.service.mjs +0 -34
  120. package/esm2020/lib/modules/tld-term/services/tld-term-collections.service.mjs +0 -253
  121. package/lib/modules/tld-term/models/converted-collection-tooltip-key.model.d.ts +0 -5
  122. package/lib/modules/tld-term/models/converted-collection-type.model.d.ts +0 -7
  123. package/lib/modules/tld-term/models/index.d.ts +0 -6
  124. package/lib/modules/tld-term/models/mt-api/tld-mt-term-collection.model.d.ts +0 -15
  125. package/lib/modules/tld-term/models/tld-converted-collection.model.d.ts +0 -43
  126. package/lib/modules/tld-term/services/mt-collections-api.service.d.ts +0 -13
  127. package/lib/modules/tld-term/services/term-api.service.d.ts +0 -15
  128. package/lib/modules/tld-term/services/tld-term-collections.service.d.ts +0 -57
  129. package/tilde-nlp-ngx-translate-2.0.3.tgz +0 -0
  130. /package/lib/modules/tld-term/{models/term-api → services/term-api/models}/tld-term-collection-languages.model.d.ts +0 -0
@@ -1,7 +0,0 @@
1
- export var ConvertedCollectionTooltipKey;
2
- (function (ConvertedCollectionTooltipKey) {
3
- ConvertedCollectionTooltipKey["NO_ENTRIES"] = "NO_ENTRIES";
4
- ConvertedCollectionTooltipKey["IMPORTING"] = "IMPORTING";
5
- ConvertedCollectionTooltipKey["SYNCING"] = "SYNCING";
6
- })(ConvertedCollectionTooltipKey || (ConvertedCollectionTooltipKey = {}));
7
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udmVydGVkLWNvbGxlY3Rpb24tdG9vbHRpcC1rZXkubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90bGQtdHJhbnNsYXRlL3NyYy9saWIvbW9kdWxlcy90bGQtdGVybS9tb2RlbHMvY29udmVydGVkLWNvbGxlY3Rpb24tdG9vbHRpcC1rZXkubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFOLElBQVksNkJBSVg7QUFKRCxXQUFZLDZCQUE2QjtJQUNyQywwREFBeUIsQ0FBQTtJQUN6Qix3REFBdUIsQ0FBQTtJQUN2QixvREFBbUIsQ0FBQTtBQUN2QixDQUFDLEVBSlcsNkJBQTZCLEtBQTdCLDZCQUE2QixRQUl4QyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIENvbnZlcnRlZENvbGxlY3Rpb25Ub29sdGlwS2V5e1xyXG4gICAgTk9fRU5UUklFUyA9IFwiTk9fRU5UUklFU1wiLFxyXG4gICAgSU1QT1JUSU5HID0gXCJJTVBPUlRJTkdcIixcclxuICAgIFNZTkNJTkcgPSBcIlNZTkNJTkdcIlxyXG59Il19
@@ -1,9 +0,0 @@
1
- /**
2
- * Enumerator to determine if collection imported from term api or mt
3
- */
4
- export var ConvertedCollectionType;
5
- (function (ConvertedCollectionType) {
6
- ConvertedCollectionType[ConvertedCollectionType["Term"] = 0] = "Term";
7
- ConvertedCollectionType[ConvertedCollectionType["MT"] = 1] = "MT";
8
- })(ConvertedCollectionType || (ConvertedCollectionType = {}));
9
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udmVydGVkLWNvbGxlY3Rpb24tdHlwZS5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RsZC10cmFuc2xhdGUvc3JjL2xpYi9tb2R1bGVzL3RsZC10ZXJtL21vZGVscy9jb252ZXJ0ZWQtY29sbGVjdGlvbi10eXBlLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBQ0gsTUFBTSxDQUFOLElBQVksdUJBR1g7QUFIRCxXQUFZLHVCQUF1QjtJQUMvQixxRUFBSSxDQUFBO0lBQ0osaUVBQUUsQ0FBQTtBQUNOLENBQUMsRUFIVyx1QkFBdUIsS0FBdkIsdUJBQXVCLFFBR2xDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXHJcbiAqIEVudW1lcmF0b3IgdG8gZGV0ZXJtaW5lIGlmIGNvbGxlY3Rpb24gaW1wb3J0ZWQgZnJvbSB0ZXJtIGFwaSBvciBtdFxyXG4gKi9cclxuZXhwb3J0IGVudW0gQ29udmVydGVkQ29sbGVjdGlvblR5cGV7XHJcbiAgICBUZXJtLFxyXG4gICAgTVRcclxufSJdfQ==
@@ -1,7 +0,0 @@
1
- export * from './mt-api/tld-mt-term-collection.model';
2
- export * from './term-api/tld-term-collection.model';
3
- export * from './term-api/tld-term-collection-languages.model';
4
- export * from './tld-converted-collection.model';
5
- export * from './converted-collection-tooltip-key.model';
6
- export * from './converted-collection-type.model';
7
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90bGQtdHJhbnNsYXRlL3NyYy9saWIvbW9kdWxlcy90bGQtdGVybS9tb2RlbHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyx1Q0FBdUMsQ0FBQztBQUN0RCxjQUFjLHNDQUFzQyxDQUFDO0FBQ3JELGNBQWMsZ0RBQWdELENBQUM7QUFDL0QsY0FBYyxrQ0FBa0MsQ0FBQztBQUNqRCxjQUFjLDBDQUEwQyxDQUFDO0FBQ3pELGNBQWMsbUNBQW1DLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL210LWFwaS90bGQtbXQtdGVybS1jb2xsZWN0aW9uLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi90ZXJtLWFwaS90bGQtdGVybS1jb2xsZWN0aW9uLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi90ZXJtLWFwaS90bGQtdGVybS1jb2xsZWN0aW9uLWxhbmd1YWdlcy5tb2RlbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vdGxkLWNvbnZlcnRlZC1jb2xsZWN0aW9uLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9jb252ZXJ0ZWQtY29sbGVjdGlvbi10b29sdGlwLWtleS5tb2RlbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vY29udmVydGVkLWNvbGxlY3Rpb24tdHlwZS5tb2RlbCc7XHJcbiJdfQ==
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGxkLW10LXRlcm0tY29sbGVjdGlvbi5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RsZC10cmFuc2xhdGUvc3JjL2xpYi9tb2R1bGVzL3RsZC10ZXJtL21vZGVscy9tdC1hcGkvdGxkLW10LXRlcm0tY29sbGVjdGlvbi5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTXRDb2xsZWN0aW9uU3RhdHVzIH0gZnJvbSBcIi4uL210LWNvbGxlY3Rpb24tc3RhdHVzLm1vZGVsXCI7XHJcblxyXG4vKipcclxuICogSW50ZXJmYWNlIHRoYXQgZGVzY3JpYmVzIHN0cnVjdHVyZSByZXR1cm5lZCBmcm9tIEdldERldGFpbGVkVGVybUNvcnBvcmFcclxuICovXHJcbmV4cG9ydCBpbnRlcmZhY2UgSVRsZE1UVGVybUNvbGxlY3Rpb24ge1xyXG4gIENvcnB1c0lkOiBzdHJpbmc7XHJcbiAgTWVzc2FnZTogc3RyaW5nO1xyXG4gIFN0YXR1czogTXRDb2xsZWN0aW9uU3RhdHVzO1xyXG4gIFRpbGRlVGVybUlkOiBzdHJpbmc7XHJcbiAgVGl0bGU6IHN0cmluZztcclxuICBUeXBlOiBzdHJpbmc7XHJcbiAgQXR0YWNobWVudERhdGVUaW1lOiBzdHJpbmc7XHJcbiAgQ291bnQ6IG51bWJlcjtcclxuICBQcmVwYXJlZERhdGVUaW1lOiBzdHJpbmc7XHJcbn1cclxuIl19
@@ -1,7 +0,0 @@
1
- export var MtCollectionStatus;
2
- (function (MtCollectionStatus) {
3
- MtCollectionStatus["READY"] = "Ready";
4
- MtCollectionStatus["PROCESSING"] = "Processing";
5
- MtCollectionStatus["ERROR"] = "Error";
6
- })(MtCollectionStatus || (MtCollectionStatus = {}));
7
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXQtY29sbGVjdGlvbi1zdGF0dXMubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90bGQtdHJhbnNsYXRlL3NyYy9saWIvbW9kdWxlcy90bGQtdGVybS9tb2RlbHMvbXQtY29sbGVjdGlvbi1zdGF0dXMubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFOLElBQVksa0JBSVg7QUFKRCxXQUFZLGtCQUFrQjtJQUMxQixxQ0FBZSxDQUFBO0lBQ2YsK0NBQXlCLENBQUE7SUFDekIscUNBQWUsQ0FBQTtBQUNuQixDQUFDLEVBSlcsa0JBQWtCLEtBQWxCLGtCQUFrQixRQUk3QiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIE10Q29sbGVjdGlvblN0YXR1c3tcclxuICAgIFJFQURZID0gXCJSZWFkeVwiLFxyXG4gICAgUFJPQ0VTU0lORyA9IFwiUHJvY2Vzc2luZ1wiLFxyXG4gICAgRVJST1IgPSBcIkVycm9yXCIgXHJcbn0iXX0=
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGxkLXRlcm0tY29sbGVjdGlvbi1sYW5ndWFnZXMubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90bGQtdHJhbnNsYXRlL3NyYy9saWIvbW9kdWxlcy90bGQtdGVybS9tb2RlbHMvdGVybS1hcGkvdGxkLXRlcm0tY29sbGVjdGlvbi1sYW5ndWFnZXMubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxyXG4gKiBUZXJtIGNvbGxlY3Rpb24gZnJvbSB0ZXJtIHBvcnRhbCBsYW5ndWFnZXMgcHJvcGVydHkgaW50ZXJmYWNlLlxyXG4gKi9cclxuZXhwb3J0IGludGVyZmFjZSBJVGxkVGVybUNvbGxlY3Rpb25MYW5ndWFnZXN7XHJcbiAgICAvKipcclxuICAgICAqIExhbmd1YWdlIGNvZGVcclxuICAgICAqL1xyXG4gICAgaWQ6IHN0cmluZztcclxuICAgIGNvdW50OiBudW1iZXI7XHJcbiAgICBuYW1lOiBzdHJpbmc7XHJcbn0iXX0=
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGxkLXRlcm0tY29sbGVjdGlvbi5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RsZC10cmFuc2xhdGUvc3JjL2xpYi9tb2R1bGVzL3RsZC10ZXJtL21vZGVscy90ZXJtLWFwaS90bGQtdGVybS1jb2xsZWN0aW9uLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJVGxkVGVybUNvbGxlY3Rpb25MYW5ndWFnZXMgfSBmcm9tIFwiLi90bGQtdGVybS1jb2xsZWN0aW9uLWxhbmd1YWdlcy5tb2RlbFwiO1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBJVGxkVGVybUNvbGxlY3Rpb24ge1xyXG4gICAgYWxsb3dzVXNlc0Jlc2lkZXNER1Q6IGJvb2xlYW47XHJcbiAgICBhcHByb3ByaWF0bmVzc0ZvckRTSTogYm9vbGVhbjtcclxuICAgIGF0dHJpYnV0aW9uVGV4dDogc3RyaW5nO1xyXG4gICAgYmVsb25naW5nOiBhbnk7XHJcbiAgICBjYW5Eb3dubG9hZFB1YmxpYzogYm9vbGVhbjtcclxuICAgIGNsb3NlZDogYm9vbGVhbjtcclxuICAgIGNvbGxlY3Rpb25HdWlkOiBzdHJpbmc7XHJcbiAgICBjb2xsZWN0aW9uVGFnczogYW55W107XHJcbiAgICBjcEVtYWlsOiBzdHJpbmc7XHJcbiAgICBjcE5hbWU6IHN0cmluZztcclxuICAgIGNwT3JnYW5pemF0aW9uOiBzdHJpbmc7XHJcbiAgICBjcFN1cm5hbWU6IHN0cmluZztcclxuICAgIGNyZWF0ZURhdGU6IERhdGU7XHJcbiAgICBkZWZhdWx0RG9tYWluOiBhbnk7XHJcbiAgICBkZWZhdWx0TGFuZ3VhZ2VzOiBhbnk7XHJcbiAgICBkZXNjcmlwdGlvbjogc3RyaW5nO1xyXG4gICAgZG9tYWluSUQ6IGFueTtcclxuICAgIGRvbWFpbnM6IGFueTtcclxuICAgIGVscmNTaGFyZUlkOiBhbnk7XHJcbiAgICBlbnRyeUNvdW50OiBudW1iZXI7XHJcbiAgICBldXJvdm9jRG9tYWluSWQ6IGFueTtcclxuICAgIGV4dGVybmFsVXJpOiBzdHJpbmc7XHJcbiAgICBpZDogbnVtYmVyO1xyXG4gICAgaXByRW1haWw6IHN0cmluZztcclxuICAgIGlwck5hbWU6IHN0cmluZztcclxuICAgIGlwck9yZ2FuaXphdGlvbjogc3RyaW5nO1xyXG4gICAgaXByU3VybmFtZTogc3RyaW5nO1xyXG4gICAgaXNJbXBvcnRpbmc6IGJvb2xlYW47XHJcbiAgICBpc1BTSTogYm9vbGVhbjtcclxuICAgIGxhbmd1YWdlczogSVRsZFRlcm1Db2xsZWN0aW9uTGFuZ3VhZ2VzW107XHJcbiAgICBsaWNlbmNlOiBhbnk7XHJcbiAgICBtZXRhTm9yZElkOiBhbnk7XHJcbiAgICBtb2RpZnlEYXRlOiBzdHJpbmc7XHJcbiAgICBuYW1lOiBzdHJpbmc7XHJcbiAgICBvcmlnaW5hbE5hbWU6IHN0cmluZztcclxuICAgIG9yaWdpbmFsTmFtZUxhbmc6IHN0cmluZztcclxuICAgIG93bmVyR3JvdXBHdWlkOiBzdHJpbmc7XHJcbiAgICBwZXJtaXNzaW9uczogc3RyaW5nW107XHJcbiAgICBwdWJsaWM6IGJvb2xlYW47XHJcbiAgICByZXN0cmljdGlvbnNPZlVzZTogYW55O1xyXG4gICAgc291cmNlVVJMOiBzdHJpbmc7XHJcbiAgICB0YXJnZXRDb2xsZWN0aW9uSWQ6IGFueTtcclxuICAgIHR5cGU6IHN0cmluZztcclxufSJdfQ==
@@ -1,114 +0,0 @@
1
- import { ConvertedCollectionTooltipKey } from "./converted-collection-tooltip-key.model";
2
- import { ConvertedCollectionType } from "./converted-collection-type.model";
3
- import { MtCollectionStatus } from "./mt-collection-status.model";
4
- /**
5
- * Used to combine term collection interfaces from term api and MT api.
6
- */
7
- export class TldConvertedCollection {
8
- constructor(obj, sourceLanguageCode, targetLanguageCode) {
9
- this.sourceLanguageCode = sourceLanguageCode;
10
- this.targetLanguageCode = targetLanguageCode;
11
- this.isSynchronized = true;
12
- if (this.isTldCorpus(obj)) {
13
- this.fromTldMTCollection(obj);
14
- }
15
- else {
16
- this.fromTermApi(obj);
17
- }
18
- }
19
- get syncButtonVissible() {
20
- return !this.isSynchronized || (this.termModifiedDate && this.mtStatus === MtCollectionStatus.ERROR);
21
- }
22
- get isImporting() {
23
- return this.mtStatus === MtCollectionStatus.PROCESSING;
24
- }
25
- ;
26
- static findExistingCollectionFromList(termCollections, collection) {
27
- for (const col of termCollections) {
28
- if ((col.id && col.id === collection.id)
29
- || (collection.termId && col.termId === collection.termId)) {
30
- return col;
31
- }
32
- }
33
- return null;
34
- }
35
- update(obj) {
36
- if (obj.importedFrom === ConvertedCollectionType.MT) {
37
- if (obj.mtStatus !== MtCollectionStatus.ERROR) {
38
- this.errorKey = null;
39
- }
40
- this.id = obj.id;
41
- this.mtStatus = obj.mtStatus;
42
- this.mtAttachmentDateTime = obj.mtAttachmentDateTime;
43
- this.mtEntryCount = obj.mtEntryCount;
44
- }
45
- else if (obj.importedFrom === ConvertedCollectionType.Term) {
46
- this.termId = obj.termId;
47
- this.languagesString = obj.languagesString;
48
- this.termModifiedDate = obj.termModifiedDate;
49
- this.entryCount = obj.entryCount;
50
- this.title = obj.title;
51
- }
52
- this.isSynchronized = this.isTermSynchronizedWithMT();
53
- if (this.entryCount === 0 && this.termId !== null) {
54
- this.tooltipKey = ConvertedCollectionTooltipKey.NO_ENTRIES;
55
- }
56
- else if (this.isImporting && this.mtEntryCount === 0) {
57
- this.tooltipKey = ConvertedCollectionTooltipKey.IMPORTING;
58
- }
59
- else if (this.isImporting) {
60
- this.tooltipKey = ConvertedCollectionTooltipKey.SYNCING;
61
- }
62
- else {
63
- this.tooltipKey = null;
64
- }
65
- }
66
- deletedFromTermApi() {
67
- this.termId = null;
68
- this.languagesString = null;
69
- this.termModifiedDate = null;
70
- this.entryCount = null;
71
- }
72
- static convertCollections(collections, sourceLanguage, targetLanguage) {
73
- const converted = [];
74
- collections.forEach((collection) => {
75
- converted.push(new TldConvertedCollection(collection, sourceLanguage, targetLanguage));
76
- });
77
- return converted;
78
- }
79
- fromTermApi(obj) {
80
- this.termId = obj.id.toString();
81
- this.title = obj.name;
82
- this.importedFrom = ConvertedCollectionType.Term;
83
- this.termModifiedDate = new Date(obj.modifyDate);
84
- const language = obj.languages?.find(lang => lang.id.toLowerCase() === this.sourceLanguageCode.toLowerCase());
85
- this.entryCount = language?.count ?? 0;
86
- this.languagesString = obj.languages.filter(lang => lang.id !== this.sourceLanguageCode && lang.count > 0)
87
- .map(lang => lang.id.toUpperCase()).join(", ");
88
- }
89
- fromTldMTCollection(obj) {
90
- this.id = obj.CorpusId;
91
- this.title = obj.Title;
92
- this.importedFrom = ConvertedCollectionType.MT;
93
- this.mtAttachmentDateTime = new Date(obj.AttachmentDateTime);
94
- this.termId = obj.TildeTermId;
95
- this.mtStatus = obj.Status;
96
- this.mtPreparedDateTime = obj.PreparedDateTime;
97
- this.mtEntryCount = obj.Count;
98
- }
99
- isTldCorpus(obj) {
100
- return obj.TildeTermId !== undefined;
101
- }
102
- /**
103
- * Check if the newest version of the term collection is synchronized from Term portal.
104
- * Note. Term collections that are not linked from Term portal are considered as synchronized.
105
- */
106
- isTermSynchronizedWithMT() {
107
- let isSynchronized = true;
108
- if (this.termModifiedDate && this.mtAttachmentDateTime) {
109
- isSynchronized = this.termModifiedDate < this.mtAttachmentDateTime;
110
- }
111
- return isSynchronized;
112
- }
113
- }
114
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGxkLWNvbnZlcnRlZC1jb2xsZWN0aW9uLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGxkLXRyYW5zbGF0ZS9zcmMvbGliL21vZHVsZXMvdGxkLXRlcm0vbW9kZWxzL3RsZC1jb252ZXJ0ZWQtY29sbGVjdGlvbi5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUN6RixPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUM1RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNsRTs7R0FFRztBQUNILE1BQU0sT0FBTyxzQkFBc0I7SUE2Qi9CLFlBQVksR0FBOEMsRUFBRSxrQkFBMEIsRUFBRSxrQkFBMEI7UUFDOUcsSUFBSSxDQUFDLGtCQUFrQixHQUFHLGtCQUFrQixDQUFDO1FBQzdDLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxrQkFBa0IsQ0FBQztRQUM3QyxJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQztRQUUzQixJQUFJLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDdkIsSUFBSSxDQUFDLG1CQUFtQixDQUFDLEdBQUcsQ0FBQyxDQUFDO1NBQ2pDO2FBQ0k7WUFDRCxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1NBQ3pCO0lBQ0wsQ0FBQztJQW5CRCxJQUFJLGtCQUFrQjtRQUNsQixPQUFPLENBQUMsSUFBSSxDQUFDLGNBQWMsSUFBSSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsSUFBSSxJQUFJLENBQUMsUUFBUSxLQUFLLGtCQUFrQixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3pHLENBQUM7SUFFRCxJQUFJLFdBQVc7UUFDWCxPQUFPLElBQUksQ0FBQyxRQUFRLEtBQUssa0JBQWtCLENBQUMsVUFB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QixDQUFDLEVBQUUsQ0FBQztRQUMvQyxJQUFJLENBQUMsb0JBQW9CLEdBQUcsSUFBSSxJQUFJLENBQUMsR0FBRyxDQUFDLGtCQUFrQixDQUFDLENBQUM7UUFDN0QsSUFBSSxDQUFDLE1BQU0sR0FBRyxHQUFHLENBQUMsV0FBVyxDQUFDO1FBQzlCLElBQUksQ0FBQyxRQUFRLEdBQUcsR0FBRyxDQUFDLE1BQU0sQ0FBQztRQUMzQixJQUFJLENBQUMsa0JBQWtCLEdBQUcsR0FBRyxDQUFDLGdCQUFnQixDQUFDO1FBQy9DLElBQUksQ0FBQyxZQUFZLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQztJQUNsQyxDQUFDO0lBRU8sV0FBVyxDQUFDLEdBQThDO1FBQzlELE9BQVEsR0FBNEIsQ0FBQyxXQUFXLEtBQUssU0FBUyxDQUFDO0lBQ25FLENBQUM7SUFFRDs7O01BR0U7SUFDTSx3QkFBd0I7UUFDNUIsSUFBSSxjQUFjLEdBQUcsSUFBSSxDQUFDO1FBQzFCLElBQUksSUFBSSxDQUFDLGdCQUFnQixJQUFJLElBQUksQ0FBQyxvQkFBb0IsRUFBRTtZQUNwRCxjQUFjLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixHQUFHLElBQUksQ0FBQyxvQkFBb0IsQ0FBQztTQUN0RTtRQUNELE9BQU8sY0FBYyxDQUFDO0lBQzFCLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElUbGRNVFRlcm1Db2xsZWN0aW9uLCBJVGxkVGVybUNvbGxlY3Rpb24gfSBmcm9tIFwiLlwiO1xyXG5pbXBvcnQgeyBFcnJvckNvZGUgfSBmcm9tIFwiLi4vLi4vdGxkLWNvbW1vbi9tb2RlbHMvZXJyb3JzL2Vycm9yLWNvZGVzLmVudW1cIjtcclxuaW1wb3J0IHsgQ29udmVydGVkQ29sbGVjdGlvblRvb2x0aXBLZXkgfSBmcm9tIFwiLi9jb252ZXJ0ZWQtY29sbGVjdGlvbi10b29sdGlwLWtleS5tb2RlbFwiO1xyXG5pbXBvcnQgeyBDb252ZXJ0ZWRDb2xsZWN0aW9uVHlwZSB9IGZyb20gXCIuL2NvbnZlcnRlZC1jb2xsZWN0aW9uLXR5cGUubW9kZWxcIjtcclxuaW1wb3J0IHsgTXRDb2xsZWN0aW9uU3RhdHVzIH0gZnJvbSBcIi4vbXQtY29sbGVjdGlvbi1zdGF0dXMubW9kZWxcIjtcclxuLyoqXHJcbiAqIFVzZWQgdG8gY29tYmluZSB0ZXJtIGNvbGxlY3Rpb24gaW50ZXJmYWNlcyBmcm9tIHRlcm0gYXBpIGFuZCBNVCBhcGkuXHJcbiAqL1xyXG5leHBvcnQgY2xhc3MgVGxkQ29udmVydGVkQ29sbGVjdGlvbiB7XHJcbiAgICB0aXRsZTogc3RyaW5nO1xyXG4gICAgaWQ6IHN0cmluZztcclxuICAgIHRlcm1JZDogc3RyaW5nO1xyXG4gICAgLyoqIEVudHJ5IGNvdW50IGZvciBzb3VyY2UgbGFuZ3VhZ2UgZnJvbSB0ZXJtIGFwaSAqL1xyXG4gICAgZW50cnlDb3VudDogbnVtYmVyO1xyXG4gICAgLyoqIEVudHJ5IGNvdW50IGZyb20gTVQgYXBpICovXHJcbiAgICBtdEVudHJ5Q291bnQ6IG51bWJlcjtcclxuICAgIHNvdXJjZUxhbmd1YWdlQ29kZTogc3RyaW5nO1xyXG4gICAgdGFyZ2V0TGFuZ3VhZ2VDb2RlOiBzdHJpbmc7XHJcbiAgICBpbXBvcnRlZEZyb206IENvbnZlcnRlZENvbGxlY3Rpb25UeXBlO1xyXG4gICAgbXRBdHRhY2htZW50RGF0ZVRpbWU6IERhdGU7XHJcbiAgICB0ZXJtTW9kaWZpZWREYXRlOiBEYXRlO1xyXG4gICAgaXNTeW5jaHJvbml6ZWQ6IGJvb2xlYW47XHJcbiAgICBsYW5ndWFnZXNTdHJpbmc6IHN0cmluZztcclxuICAgIHRvb2x0aXBLZXk6IENvbnZlcnRlZENvbGxlY3Rpb25Ub29sdGlwS2V5O1xyXG4gICAgbXRTdGF0dXM6IE10Q29sbGVjdGlvblN0YXR1cztcclxuICAgIGVycm9yS2V5OiBFcnJvckNvZGU7XHJcbiAgICBtdFByZXBhcmVkRGF0ZVRpbWU6IHN0cmluZztcclxuXHJcblxyXG4gICAgZ2V0IHN5bmNCdXR0b25WaXNzaWJsZSgpIHtcclxuICAgICAgICByZXR1cm4gIXRoaXMuaXNTeW5jaHJvbml6ZWQgfHwgKHRoaXMudGVybU1vZGlmaWVkRGF0ZSAmJiB0aGlzLm10U3RhdHVzID09PSBNdENvbGxlY3Rpb25TdGF0dXMuRVJST1IpO1xyXG4gICAgfVxyXG5cclxuICAgIGdldCBpc0ltcG9ydGluZygpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5tdFN0YXR1cyA9PT0gTXRDb2xsZWN0aW9uU3RhdHVzLlBST0NFU1NJTkc7XHJcbiAgICB9O1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKG9iajogSVRsZFRlcm1Db2xsZWN0aW9uIHwgSVRsZE1UVGVybUNvbGxlY3Rpb24sIHNvdXJjZUxhbmd1YWdlQ29kZTogc3RyaW5nLCB0YXJnZXRMYW5ndWFnZUNvZGU6IHN0cmluZykge1xyXG4gICAgICAgIHRoaXMuc291cmNlTGFuZ3VhZ2VDb2RlID0gc291cmNlTGFuZ3VhZ2VDb2RlO1xyXG4gICAgICAgIHRoaXMudGFyZ2V0TGFuZ3VhZ2VDb2RlID0gdGFyZ2V0TGFuZ3VhZ2VDb2RlO1xyXG4gICAgICAgIHRoaXMuaXNTeW5jaHJvbml6ZWQgPSB0cnVlO1xyXG5cclxuICAgICAgICBpZiAodGhpcy5pc1RsZENvcnB1cyhvYmopKSB7XHJcbiAgICAgICAgICAgIHRoaXMuZnJvbVRsZE1UQ29sbGVjdGlvbihvYmopO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIHtcclxuICAgICAgICAgICAgdGhpcy5mcm9tVGVybUFwaShvYmopO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBzdGF0aWMgZmluZEV4aXN0aW5nQ29sbGVjdGlvbkZyb21MaXN0KHRlcm1Db2xsZWN0aW9uczogU2V0PFRsZENvbnZlcnRlZENvbGxlY3Rpb24+LCBjb2xsZWN0aW9uOiBUbGRDb252ZXJ0ZWRDb2xsZWN0aW9uKSB7XHJcbiAgICAgICAgZm9yIChjb25zdCBjb2wgb2YgdGVybUNvbGxlY3Rpb25zKSB7XHJcbiAgICAgICAgICAgIGlmICgoY29sLmlkICYmIGNvbC5pZCA9PT0gY29sbGVjdGlvbi5pZClcclxuICAgICAgICAgICAgICAgIHx8IChjb2xsZWN0aW9uLnRlcm1JZCAmJiBjb2wudGVybUlkID09PSBjb2xsZWN0aW9uLnRlcm1JZCkpIHtcclxuICAgICAgICAgICAgICAgIHJldHVybiBjb2w7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICB9XHJcblxyXG4gICAgdXBkYXRlKG9iajogVGxkQ29udmVydGVkQ29sbGVjdGlvbikge1xyXG4gICAgICAgIGlmIChvYmouaW1wb3J0ZWRGcm9tID09PSBDb252ZXJ0ZWRDb2xsZWN0aW9uVHlwZS5NVCkge1xyXG4gICAgICAgICAgICBpZiAob2JqLm10U3RhdHVzICE9PSBNdENvbGxlY3Rpb25TdGF0dXMuRVJST1IpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuZXJyb3JLZXkgPSBudWxsO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHRoaXMuaWQgPSBvYmouaWQ7XHJcbiAgICAgICAgICAgIHRoaXMubXRTdGF0dXMgPSBvYmoubXRTdGF0dXM7XHJcbiAgICAgICAgICAgIHRoaXMubXRBdHRhY2htZW50RGF0ZVRpbWUgPSBvYmoubXRBdHRhY2htZW50RGF0ZVRpbWU7XHJcbiAgICAgICAgICAgIHRoaXMubXRFbnRyeUNvdW50ID0gb2JqLm10RW50cnlDb3VudDtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSBpZiAob2JqLmltcG9ydGVkRnJvbSA9PT0gQ29udmVydGVkQ29sbGVjdGlvblR5cGUuVGVybSkge1xyXG4gICAgICAgICAgICB0aGlzLnRlcm1JZCA9IG9iai50ZXJtSWQ7XHJcbiAgICAgICAgICAgIHRoaXMubGFuZ3VhZ2VzU3RyaW5nID0gb2JqLmxhbmd1YWdlc1N0cmluZztcclxuICAgICAgICAgICAgdGhpcy50ZXJtTW9kaWZpZWREYXRlID0gb2JqLnRlcm1Nb2RpZmllZERhdGU7XHJcbiAgICAgICAgICAgIHRoaXMuZW50cnlDb3VudCA9IG9iai5lbnRyeUNvdW50O1xyXG4gICAgICAgICAgICB0aGlzLnRpdGxlID0gb2JqLnRpdGxlO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLmlzU3luY2hyb25pemVkID0gdGhpcy5pc1Rlcm1TeW5jaHJvbml6ZWRXaXRoTVQoKTtcclxuXHJcbiAgICAgICAgaWYgKHRoaXMuZW50cnlDb3VudCA9PT0gMCAmJiB0aGlzLnRlcm1JZCAhPT0gbnVsbCkge1xyXG4gICAgICAgICAgICB0aGlzLnRvb2x0aXBLZXkgPSBDb252ZXJ0ZWRDb2xsZWN0aW9uVG9vbHRpcEtleS5OT19FTlRSSUVTO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIGlmICh0aGlzLmlzSW1wb3J0aW5nICYmIHRoaXMubXRFbnRyeUNvdW50ID09PSAwKSB7XHJcbiAgICAgICAgICAgIHRoaXMudG9vbHRpcEtleSA9IENvbnZlcnRlZENvbGxlY3Rpb25Ub29sdGlwS2V5LklNUE9SVElORztcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSBpZiAodGhpcy5pc0ltcG9ydGluZykge1xyXG4gICAgICAgICAgICB0aGlzLnRvb2x0aXBLZXkgPSBDb252ZXJ0ZWRDb2xsZWN0aW9uVG9vbHRpcEtleS5TWU5DSU5HO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIHtcclxuICAgICAgICAgICAgdGhpcy50b29sdGlwS2V5ID0gbnVsbDtcclxuICAgICAgICB9XHJcblxyXG4gICAgfVxyXG5cclxuICAgIGRlbGV0ZWRGcm9tVGVybUFwaSgpIHtcclxuICAgICAgICB0aGlzLnRlcm1JZCA9IG51bGw7XHJcbiAgICAgICAgdGhpcy5sYW5ndWFnZXNTdHJpbmcgPSBudWxsO1xyXG4gICAgICAgIHRoaXMudGVybU1vZGlmaWVkRGF0ZSA9IG51bGw7XHJcbiAgICAgICAgdGhpcy5lbnRyeUNvdW50ID0gbnVsbDtcclxuICAgIH1cclxuXHJcbiAgICBzdGF0aWMgY29udmVydENvbGxlY3Rpb25zKGNvbGxlY3Rpb25zOiBJVGxkTVRUZXJtQ29sbGVjdGlvbltdIHwgSVRsZFRlcm1Db2xsZWN0aW9uW10sIHNvdXJjZUxhbmd1YWdlOiBzdHJpbmcsIHRhcmdldExhbmd1YWdlOiBzdHJpbmcpIHtcclxuICAgICAgICBjb25zdCBjb252ZXJ0ZWQ6IFRsZENvbnZlcnRlZENvbGxlY3Rpb25bXSA9IFtdO1xyXG4gICAgICAgIGNvbGxlY3Rpb25zLmZvckVhY2goKGNvbGxlY3Rpb24pID0+IHtcclxuICAgICAgICAgICAgY29udmVydGVkLnB1c2gobmV3IFRsZENvbnZlcnRlZENvbGxlY3Rpb24oY29sbGVjdGlvbiwgc291cmNlTGFuZ3VhZ2UsIHRhcmdldExhbmd1YWdlKSk7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgcmV0dXJuIGNvbnZlcnRlZDtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGZyb21UZXJtQXBpKG9iajogSVRsZFRlcm1Db2xsZWN0aW9uKSB7XHJcbiAgICAgICAgdGhpcy50ZXJtSWQgPSBvYmouaWQudG9TdHJpbmcoKTtcclxuICAgICAgICB0aGlzLnRpdGxlID0gb2JqLm5hbWU7XHJcbiAgICAgICAgdGhpcy5pbXBvcnRlZEZyb20gPSBDb252ZXJ0ZWRDb2xsZWN0aW9uVHlwZS5UZXJtO1xyXG4gICAgICAgIHRoaXMudGVybU1vZGlmaWVkRGF0ZSA9IG5ldyBEYXRlKG9iai5tb2RpZnlEYXRlKTtcclxuICAgICAgICBjb25zdCBsYW5ndWFnZSA9IG9iai5sYW5ndWFnZXM/LmZpbmQobGFuZyA9PiBsYW5nLmlkLnRvTG93ZXJDYXNlKCkgPT09IHRoaXMuc291cmNlTGFuZ3VhZ2VDb2RlLnRvTG93ZXJDYXNlKCkpO1xyXG4gICAgICAgIHRoaXMuZW50cnlDb3VudCA9IGxhbmd1YWdlPy5jb3VudCA/PyAwO1xyXG4gICAgICAgIHRoaXMubGFuZ3VhZ2VzU3RyaW5nID0gb2JqLmxhbmd1YWdlcy5maWx0ZXIobGFuZyA9PiBsYW5nLmlkICE9PSB0aGlzLnNvdXJjZUxhbmd1YWdlQ29kZSAmJiBsYW5nLmNvdW50ID4gMClcclxuICAgICAgICAgICAgLm1hcChsYW5nID0+IGxhbmcuaWQudG9VcHBlckNhc2UoKSkuam9pbihcIiwgXCIpO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgZnJvbVRsZE1UQ29sbGVjdGlvbihvYmo6IElUbGRNVFRlcm1Db2xsZWN0aW9uKSB7XHJcbiAgICAgICAgdGhpcy5pZCA9IG9iai5Db3JwdXNJZDtcclxuICAgICAgICB0aGlzLnRpdGxlID0gb2JqLlRpdGxlO1xyXG4gICAgICAgIHRoaXMuaW1wb3J0ZWRGcm9tID0gQ29udmVydGVkQ29sbGVjdGlvblR5cGUuTVQ7XHJcbiAgICAgICAgdGhpcy5tdEF0dGFjaG1lbnREYXRlVGltZSA9IG5ldyBEYXRlKG9iai5BdHRhY2htZW50RGF0ZVRpbWUpO1xyXG4gICAgICAgIHRoaXMudGVybUlkID0gb2JqLlRpbGRlVGVybUlkO1xyXG4gICAgICAgIHRoaXMubXRTdGF0dXMgPSBvYmouU3RhdHVzO1xyXG4gICAgICAgIHRoaXMubXRQcmVwYXJlZERhdGVUaW1lID0gb2JqLlByZXBhcmVkRGF0ZVRpbWU7XHJcbiAgICAgICAgdGhpcy5tdEVudHJ5Q291bnQgPSBvYmouQ291bnQ7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBpc1RsZENvcnB1cyhvYmo6IElUbGRUZXJtQ29sbGVjdGlvbiB8IElUbGRNVFRlcm1Db2xsZWN0aW9uKTogb2JqIGlzIElUbGRNVFRlcm1Db2xsZWN0aW9uIHtcclxuICAgICAgICByZXR1cm4gKG9iaiBhcyBJVGxkTVRUZXJtQ29sbGVjdGlvbikuVGlsZGVUZXJtSWQgIT09IHVuZGVmaW5lZDtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIENoZWNrIGlmIHRoZSBuZXdlc3QgdmVyc2lvbiBvZiB0aGUgdGVybSBjb2xsZWN0aW9uIGlzIHN5bmNocm9uaXplZCBmcm9tIFRlcm0gcG9ydGFsLiBcclxuICAgICAqIE5vdGUuIFRlcm0gY29sbGVjdGlvbnMgdGhhdCBhcmUgbm90IGxpbmtlZCBmcm9tIFRlcm0gcG9ydGFsIGFyZSBjb25zaWRlcmVkIGFzIHN5bmNocm9uaXplZC5cclxuICAgICovXHJcbiAgICBwcml2YXRlIGlzVGVybVN5bmNocm9uaXplZFdpdGhNVCgpIHtcclxuICAgICAgICBsZXQgaXNTeW5jaHJvbml6ZWQgPSB0cnVlO1xyXG4gICAgICAgIGlmICh0aGlzLnRlcm1Nb2RpZmllZERhdGUgJiYgdGhpcy5tdEF0dGFjaG1lbnREYXRlVGltZSkge1xyXG4gICAgICAgICAgICBpc1N5bmNocm9uaXplZCA9IHRoaXMudGVybU1vZGlmaWVkRGF0ZSA8IHRoaXMubXRBdHRhY2htZW50RGF0ZVRpbWU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBpc1N5bmNocm9uaXplZDtcclxuICAgIH1cclxufSJdfQ==
@@ -1,33 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import { map } from 'rxjs/operators';
3
- import { Common } from '../../tld-common/models';
4
- import { TldConvertedCollection } from '../models';
5
- import * as i0 from "@angular/core";
6
- import * as i1 from "@angular/common/http";
7
- import * as i2 from "../../tld-common/services";
8
- export class MtCollectionsApiService {
9
- constructor(http, config) {
10
- this.http = http;
11
- this.config = config;
12
- }
13
- attachTermsFromTildeTerm(systemId, tildeTermCollectionId) {
14
- const params = { systemID: systemId, tildeTermColectionID: tildeTermCollectionId };
15
- const url = `${this.config.coreConfig.translationServiceUrl}AttachTermsFromTildeTerm`;
16
- return this.http.get(url, { params });
17
- }
18
- loadMTCollections(systemId, sourceLanguage, targetLanguage) {
19
- const headers = Common.getAuthHeaders(this.config);
20
- const url = `${this.config.coreConfig.translationServiceUrl}GetDetailedSystemTermCorpora`;
21
- const params = { systemID: systemId };
22
- return this.http.get(url, { headers, params }).pipe(map((collections) => { return TldConvertedCollection.convertCollections(collections, sourceLanguage, targetLanguage); }));
23
- }
24
- }
25
- MtCollectionsApiService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: MtCollectionsApiService, deps: [{ token: i1.HttpClient }, { token: i2.TldTranslateConfigService }], target: i0.ɵɵFactoryTarget.Injectable });
26
- MtCollectionsApiService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: MtCollectionsApiService, providedIn: 'root' });
27
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: MtCollectionsApiService, decorators: [{
28
- type: Injectable,
29
- args: [{
30
- providedIn: 'root'
31
- }]
32
- }], ctorParameters: function () { return [{ type: i1.HttpClient }, { type: i2.TldTranslateConfigService }]; } });
33
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXQtY29sbGVjdGlvbnMtYXBpLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90bGQtdHJhbnNsYXRlL3NyYy9saWIvbW9kdWxlcy90bGQtdGVybS9zZXJ2aWNlcy9tdC1jb2xsZWN0aW9ucy1hcGkuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyQyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFakQsT0FBTyxFQUF3QixzQkFBc0IsRUFBRSxNQUFNLFdBQVcsQ0FBQzs7OztBQUt6RSxNQUFNLE9BQU8sdUJBQXVCO0lBRWxDLFlBQTZCLElBQWdCLEVBQzFCLE1BQWlDO1FBRHZCLFNBQUksR0FBSixJQUFJLENBQVk7UUFDMUIsV0FBTSxHQUFOLE1BQU0sQ0FBMkI7SUFBSSxDQUFDO0lBRXpELHdCQUF3QixDQUFDLFFBQWdCLEVBQUUscUJBQTZCO1FBQ3RFLE1BQU0sTUFBTSxHQUFHLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxvQkFBb0IsRUFBRSxxQkFBcUIsRUFBRSxDQUFDO1FBQ25GLE1BQU0sR0FBRyxHQUFHLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMscUJBQXFCLDBCQUEwQixDQUFDO1FBQ3RGLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLEVBQUUsTUFBTSxFQUFFLENBQUMsQ0FBQztJQUN4QyxDQUFDO0lBRUQsaUJBQWlCLENBQUMsUUFBZ0IsRUFBRSxjQUFxQixFQUFFLGNBQXNCO1FBQy9FLE1BQU0sT0FBTyxHQUFHLE1BQU0sQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ25ELE1BQU0sR0FBRyxHQUFHLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMscUJBQXFCLDhCQUE4QixDQUFDO1FBQzFGLE1BQU0sTUFBTSxHQUFHLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxDQUFDO1FBQ3RDLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQXlCLEdBQUcsRUFBRSxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FDekUsR0FBRyxDQUFDLENBQUMsV0FBVyxFQUFFLEVBQUUsR0FBRyxPQUFPLHNCQUFzQixDQUFDLGtCQUFrQixDQUFDLFdBQVcsRUFBRSxjQUFjLEVBQUUsY0FBYyxDQUFDLENBQUEsQ0FBQyxDQUFDLENBQUMsQ0FDeEgsQ0FBQztJQUNKLENBQUM7O29IQWxCVSx1QkFBdUI7d0hBQXZCLHVCQUF1QixjQUZ0QixNQUFNOzJGQUVQLHVCQUF1QjtrQkFIbkMsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xyXG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgQ29tbW9uIH0gZnJvbSAnLi4vLi4vdGxkLWNvbW1vbi9tb2RlbHMnO1xyXG5pbXBvcnQgeyBUbGRUcmFuc2xhdGVDb25maWdTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vdGxkLWNvbW1vbi9zZXJ2aWNlcyc7XHJcbmltcG9ydCB7IElUbGRNVFRlcm1Db2xsZWN0aW9uLCBUbGRDb252ZXJ0ZWRDb2xsZWN0aW9uIH0gZnJvbSAnLi4vbW9kZWxzJztcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIE10Q29sbGVjdGlvbnNBcGlTZXJ2aWNlIHtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBodHRwOiBIdHRwQ2xpZW50LFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSBjb25maWc6IFRsZFRyYW5zbGF0ZUNvbmZpZ1NlcnZpY2UpIHsgfVxyXG5cclxuICBhdHRhY2hUZXJtc0Zyb21UaWxkZVRlcm0oc3lzdGVtSWQ6IHN0cmluZywgdGlsZGVUZXJtQ29sbGVjdGlvbklkOiBzdHJpbmcpIHtcclxuICAgIGNvbnN0IHBhcmFtcyA9IHsgc3lzdGVtSUQ6IHN5c3RlbUlkLCB0aWxkZVRlcm1Db2xlY3Rpb25JRDogdGlsZGVUZXJtQ29sbGVjdGlvbklkIH07XHJcbiAgICBjb25zdCB1cmwgPSBgJHt0aGlzLmNvbmZpZy5jb3JlQ29uZmlnLnRyYW5zbGF0aW9uU2VydmljZVVybH1BdHRhY2hUZXJtc0Zyb21UaWxkZVRlcm1gO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQodXJsLCB7IHBhcmFtcyB9KTtcclxuICB9XHJcblxyXG4gIGxvYWRNVENvbGxlY3Rpb25zKHN5c3RlbUlkOiBzdHJpbmcsIHNvdXJjZUxhbmd1YWdlOnN0cmluZywgdGFyZ2V0TGFuZ3VhZ2U6IHN0cmluZykge1xyXG4gICAgY29uc3QgaGVhZGVycyA9IENvbW1vbi5nZXRBdXRoSGVhZGVycyh0aGlzLmNvbmZpZyk7XHJcbiAgICBjb25zdCB1cmwgPSBgJHt0aGlzLmNvbmZpZy5jb3JlQ29uZmlnLnRyYW5zbGF0aW9uU2VydmljZVVybH1HZXREZXRhaWxlZFN5c3RlbVRlcm1Db3Jwb3JhYDtcclxuICAgIGNvbnN0IHBhcmFtcyA9IHsgc3lzdGVtSUQ6IHN5c3RlbUlkIH07XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxJVGxkTVRUZXJtQ29sbGVjdGlvbltdPih1cmwsIHsgaGVhZGVycywgcGFyYW1zIH0pLnBpcGUoXHJcbiAgICAgIG1hcCgoY29sbGVjdGlvbnMpID0+IHsgcmV0dXJuIFRsZENvbnZlcnRlZENvbGxlY3Rpb24uY29udmVydENvbGxlY3Rpb25zKGNvbGxlY3Rpb25zLCBzb3VyY2VMYW5ndWFnZSwgdGFyZ2V0TGFuZ3VhZ2UpIH0pXHJcbiAgICApO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -1,34 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import { map } from 'rxjs/operators';
3
- import { TldConvertedCollection } from '../models/tld-converted-collection.model';
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "../../tld-common/services";
6
- import * as i2 from "@angular/common/http";
7
- export class TermApiService {
8
- constructor(config, http) {
9
- this.config = config;
10
- this.http = http;
11
- }
12
- get url() {
13
- return `${this.config.termConfig.apiUrl}/api/termservice/collection`;
14
- }
15
- createCollection(defaultLanguages, collectionName) {
16
- const params = {
17
- name: collectionName,
18
- defaultLanguages
19
- };
20
- return this.http.post(this.url, params);
21
- }
22
- getCollectionList(sourceLanguageCode, targetLanguageCode) {
23
- return this.http.get(this.url).pipe(map((collections) => { return TldConvertedCollection.convertCollections(collections, sourceLanguageCode, targetLanguageCode); }));
24
- }
25
- }
26
- TermApiService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: TermApiService, deps: [{ token: i1.TldTranslateConfigService }, { token: i2.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
27
- TermApiService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: TermApiService, providedIn: 'root' });
28
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: TermApiService, decorators: [{
29
- type: Injectable,
30
- args: [{
31
- providedIn: 'root'
32
- }]
33
- }], ctorParameters: function () { return [{ type: i1.TldTranslateConfigService }, { type: i2.HttpClient }]; } });
34
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVybS1hcGkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RsZC10cmFuc2xhdGUvc3JjL2xpYi9tb2R1bGVzL3RsZC10ZXJtL3NlcnZpY2VzL3Rlcm0tYXBpLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHckMsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sMENBQTBDLENBQUM7Ozs7QUFLbEYsTUFBTSxPQUFPLGNBQWM7SUFLekIsWUFBNkIsTUFBaUMsRUFDM0MsSUFBZ0I7UUFETixXQUFNLEdBQU4sTUFBTSxDQUEyQjtRQUMzQyxTQUFJLEdBQUosSUFBSSxDQUFZO0lBQ25DLENBQUM7SUFORCxJQUFJLEdBQUc7UUFDTCxPQUFPLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsTUFBTSw2QkFBNkIsQ0FBQztJQUN2RSxDQUFDO0lBTUQsZ0JBQWdCLENBQUMsZ0JBQTBCLEVBQUUsY0FBc0I7UUFDakUsTUFBTSxNQUFNLEdBQUc7WUFDYixJQUFJLEVBQUUsY0FBYztZQUNwQixnQkFBZ0I7U0FDakIsQ0FBQztRQUNGLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQXFCLElBQUksQ0FBQyxHQUFHLEVBQUUsTUFBTSxDQUFDLENBQUE7SUFDN0QsQ0FBQztJQUVELGlCQUFpQixDQUFDLGtCQUEwQixFQUFFLGtCQUEwQjtRQUN0RSxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUF1QixJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUN2RCxHQUFHLENBQUMsQ0FBQyxXQUFXLEVBQUUsRUFBRSxHQUFHLE9BQU8sc0JBQXNCLENBQUMsa0JBQWtCLENBQUMsV0FBVyxFQUFFLGtCQUFrQixFQUFFLGtCQUFrQixDQUFDLENBQUEsQ0FBQyxDQUFDLENBQUMsQ0FDaEksQ0FBQztJQUNKLENBQUM7OzJHQXJCVSxjQUFjOytHQUFkLGNBQWMsY0FGYixNQUFNOzJGQUVQLGNBQWM7a0JBSDFCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IFRsZFRyYW5zbGF0ZUNvbmZpZ1NlcnZpY2UgfSBmcm9tICcuLi8uLi90bGQtY29tbW9uL3NlcnZpY2VzJztcclxuaW1wb3J0IHsgSVRsZFRlcm1Db2xsZWN0aW9uIH0gZnJvbSAnLi4vbW9kZWxzL3Rlcm0tYXBpL3RsZC10ZXJtLWNvbGxlY3Rpb24ubW9kZWwnO1xyXG5pbXBvcnQgeyBUbGRDb252ZXJ0ZWRDb2xsZWN0aW9uIH0gZnJvbSAnLi4vbW9kZWxzL3RsZC1jb252ZXJ0ZWQtY29sbGVjdGlvbi5tb2RlbCc7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUZXJtQXBpU2VydmljZSB7XHJcbiAgZ2V0IHVybCgpIHtcclxuICAgIHJldHVybiBgJHt0aGlzLmNvbmZpZy50ZXJtQ29uZmlnLmFwaVVybH0vYXBpL3Rlcm1zZXJ2aWNlL2NvbGxlY3Rpb25gO1xyXG4gIH1cclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBjb25maWc6IFRsZFRyYW5zbGF0ZUNvbmZpZ1NlcnZpY2UsXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IGh0dHA6IEh0dHBDbGllbnQpIHtcclxuICB9XHJcbiAgXHJcbiAgY3JlYXRlQ29sbGVjdGlvbihkZWZhdWx0TGFuZ3VhZ2VzOiBzdHJpbmdbXSwgY29sbGVjdGlvbk5hbWU6IHN0cmluZykge1xyXG4gICAgY29uc3QgcGFyYW1zID0ge1xyXG4gICAgICBuYW1lOiBjb2xsZWN0aW9uTmFtZSxcclxuICAgICAgZGVmYXVsdExhbmd1YWdlc1xyXG4gICAgfTtcclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxJVGxkVGVybUNvbGxlY3Rpb24+KHRoaXMudXJsLCBwYXJhbXMpXHJcbiAgfVxyXG5cclxuICBnZXRDb2xsZWN0aW9uTGlzdChzb3VyY2VMYW5ndWFnZUNvZGU6IHN0cmluZywgdGFyZ2V0TGFuZ3VhZ2VDb2RlOiBzdHJpbmcpIHtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PElUbGRUZXJtQ29sbGVjdGlvbltdPih0aGlzLnVybCkucGlwZShcclxuICAgICAgbWFwKChjb2xsZWN0aW9ucykgPT4geyByZXR1cm4gVGxkQ29udmVydGVkQ29sbGVjdGlvbi5jb252ZXJ0Q29sbGVjdGlvbnMoY29sbGVjdGlvbnMsIHNvdXJjZUxhbmd1YWdlQ29kZSwgdGFyZ2V0TGFuZ3VhZ2VDb2RlKSB9KVxyXG4gICAgKTtcclxuICB9XHJcbn1cclxuIl19
@@ -1,253 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import { forkJoin } from 'rxjs';
3
- import { map, tap } from 'rxjs/operators';
4
- import { ErrorCode } from '../../tld-common/models/errors/error-codes.enum';
5
- import { ConvertedCollectionType } from '../models/converted-collection-type.model';
6
- import { MtCollectionStatus } from '../models/mt-collection-status.model';
7
- import { TldConvertedCollection } from '../models/tld-converted-collection.model';
8
- import * as i0 from "@angular/core";
9
- import * as i1 from "../../tld-common/services";
10
- import * as i2 from "../../tld-tooltip/services";
11
- import * as i3 from "./term-api.service";
12
- import * as i4 from "./mt-collections-api.service";
13
- export class TldTermCollectionsService {
14
- constructor(config, tldSystem, termApi, mtApi) {
15
- this.config = config;
16
- this.tldSystem = tldSystem;
17
- this.termApi = termApi;
18
- this.mtApi = mtApi;
19
- this._selected = null;
20
- this.LOCAL_STORAGE_KEY = "systemLastCollections";
21
- this.tldSystem.getActiveData()
22
- .subscribe((active) => {
23
- this.sourceLanguageCode = active?.sourceLang.lang;
24
- this.targetLanguageCode = active?.targetLang.lang;
25
- this.activeSystemId = active?.systemId || null;
26
- this._collections = new Set();
27
- // avoiding setter, so the null value is not storeed in location since it is not by user action
28
- this._selected = null;
29
- if (active && this.tldSystem.isTerminologySupported(active?.system)) {
30
- this.refreshCollections(true);
31
- }
32
- });
33
- }
34
- get selected() { return this._selected; }
35
- set selected(val) {
36
- this._selected = val;
37
- this.storeSelectedInLocalStorage();
38
- if (!this._selected) {
39
- return;
40
- }
41
- if (!this._selected.id) {
42
- this.addCollectionToSystem(this._selected);
43
- }
44
- }
45
- get collections() {
46
- return this._collections;
47
- }
48
- get isRefreshingCollections() {
49
- return this._isRefreshingCollections;
50
- }
51
- get canCreateCollections() {
52
- return this.config.termConfig.canCreateCollection;
53
- }
54
- get hasEditPermissions() {
55
- return this.config?.coreConfig.isAuth && this.canCreateCollections && this.config.termConfig.isTermPortalSupported;
56
- }
57
- get hasAnyCollections() {
58
- return this._hasAnyCollections;
59
- }
60
- get shouldShowPromotion() {
61
- return !this.hasAnyCollections && !this.hasEditPermissions;
62
- }
63
- onMenuOpen() {
64
- this.menuOpened = true;
65
- if (!this.shouldShowPromotion) {
66
- this.startAutoRefresh();
67
- }
68
- }
69
- onMenuClose() {
70
- this.menuOpened = false;
71
- // if menu is closed, but selected collection still syncing, auto refresh should be kept opened.
72
- if (this.selected?.mtStatus !== MtCollectionStatus.PROCESSING) {
73
- this.stopAutoRefresh();
74
- }
75
- }
76
- addCollectionToSystem(collection) {
77
- if (!collection || !collection.termId) {
78
- console.error("Trying to attach collection that has no tilde term id.");
79
- return;
80
- }
81
- collection.mtStatus = MtCollectionStatus.PROCESSING;
82
- collection.isSynchronized = true;
83
- this.mtApi.attachTermsFromTildeTerm(this.activeSystemId, collection.termId)
84
- .subscribe(() => { }, () => {
85
- collection.mtStatus = MtCollectionStatus.ERROR;
86
- collection.errorKey = ErrorCode.COLLECTION_IMPORT;
87
- });
88
- }
89
- create(defaultLanguages, collectionName) {
90
- return this.termApi.createCollection(defaultLanguages, collectionName).pipe(map(collection => new TldConvertedCollection(collection, this.sourceLanguageCode, this.targetLanguageCode)), tap((collection) => {
91
- this._collections.add(collection);
92
- this._hasAnyCollections = true;
93
- }));
94
- }
95
- refreshCollections(setSelectedFromLocalStorage = false) {
96
- if (!this.activeSystemId
97
- || !this.config.termConfig.isCollectionsActivated) {
98
- return;
99
- }
100
- this._isRefreshingCollections = true;
101
- const observables = [
102
- this.termApi.getCollectionList(this.sourceLanguageCode, this.targetLanguageCode),
103
- this.mtApi.loadMTCollections(this.activeSystemId, this.sourceLanguageCode, this.targetLanguageCode)
104
- ];
105
- forkJoin(observables).subscribe((response) => {
106
- this.isAnyImporting = false;
107
- // TO DO. Doesn't seem to be clean approach with syncing collections. Maybe some cleaner solution possible?
108
- this.removeDeletedFromTerms(response[0]);
109
- this.updateCollections([...response[0], ...response[1]]);
110
- if (setSelectedFromLocalStorage) {
111
- this.setSelectedFromLocalStorage();
112
- }
113
- this._isRefreshingCollections = false;
114
- this.scheduleRefresh();
115
- }, (error) => {
116
- this._isRefreshingCollections = false;
117
- // it is enough to show error only in console. No special thing is necessary.
118
- console.error(error);
119
- });
120
- }
121
- /**
122
- *
123
- * @returns selected collection id if it is allowed to use collection for translations
124
- */
125
- selectedIdForTranslation() {
126
- if (this.selected && (this.selected.mtPreparedDateTime || this.selected.mtStatus === MtCollectionStatus.READY)) {
127
- return this.selected.id;
128
- }
129
- return null;
130
- }
131
- startAutoRefresh() {
132
- this.isAutoRefreshingOn = true;
133
- this.scheduleRefresh(0);
134
- }
135
- stopAutoRefresh() {
136
- if (this.refreshTimeout) {
137
- clearTimeout(this.refreshTimeout);
138
- this.refreshTimeout = null;
139
- }
140
- this.isAutoRefreshingOn = false;
141
- }
142
- scheduleRefresh(timeout) {
143
- // if menu is closed and selected collection is not importing anymore - auto refreshing should be cancelled.
144
- if (!this.menuOpened && !this.selected?.isImporting && this.isAutoRefreshingOn) {
145
- this.stopAutoRefresh();
146
- return;
147
- }
148
- // if menu is opened, auto refresh should be on. If menu is closed, refresh needs to be done only if selected is importing.
149
- if (!this.refreshTimeout && (this.isAutoRefreshingOn || this.selected?.isImporting)) {
150
- const timeoutMs = timeout ?? (this.isAnyImporting ? this.config.termConfig.refreshTimeoutMsWhenImporting : this.config.termConfig.refreshTimeoutMs);
151
- this.refreshTimeout = setTimeout(() => {
152
- this.refreshTimeout = null;
153
- this.refreshCollections();
154
- }, timeoutMs);
155
- }
156
- }
157
- /**
158
- * Should be called after refresh to check if there is any collections from term api that are deleted.
159
- */
160
- removeDeletedFromTerms(refreshedList) {
161
- for (const collection of this.collections) {
162
- if (!collection.termId) {
163
- continue;
164
- }
165
- const exists = refreshedList.find(refreshedCollection => refreshedCollection.importedFrom === ConvertedCollectionType.Term && refreshedCollection.termId === collection.termId);
166
- if (!exists) {
167
- // Removes collection if it hasn't been imported.
168
- if (!collection.id) {
169
- this.collections.delete(collection);
170
- }
171
- else {
172
- collection.deletedFromTermApi();
173
- }
174
- }
175
- }
176
- }
177
- updateCollections(refreshedCollections) {
178
- // sets collection list to this value at the end, so deleted collections are not in the list.
179
- const updatedCollections = new Set();
180
- for (let collection of refreshedCollections) {
181
- // User shouldn't see failed collections if he can't retry to import them.
182
- if (!this.hasEditPermissions
183
- && collection.importedFrom === ConvertedCollectionType.MT
184
- && collection.mtStatus === MtCollectionStatus.ERROR) {
185
- continue;
186
- }
187
- if (collection.isImporting) {
188
- this.isAnyImporting = true;
189
- }
190
- let existing = TldConvertedCollection.findExistingCollectionFromList(this.collections, collection);
191
- // Term Id should be set only for entities coming from term API, because collection can be deleted, but key would still be in MT api.
192
- // But term id is necessary to do the previous check to sync collections - it can be set to null only after update.
193
- if (collection.importedFrom === ConvertedCollectionType.MT) {
194
- // Collections from MT should be only visible when Ready or collection is being processed, but it has already been created before and it can be used.
195
- if (!(collection.mtStatus === MtCollectionStatus.READY
196
- || (collection.mtStatus === MtCollectionStatus.PROCESSING && collection.mtPreparedDateTime)
197
- || existing)) {
198
- continue;
199
- }
200
- collection.termId = null;
201
- }
202
- if (existing) {
203
- existing.update(collection);
204
- }
205
- else {
206
- this.collections.add(collection);
207
- }
208
- const editedCollection = existing ?? collection;
209
- updatedCollections.add(editedCollection);
210
- }
211
- this._collections = updatedCollections;
212
- this._hasAnyCollections = updatedCollections.size > 0;
213
- }
214
- setSelectedFromLocalStorage() {
215
- // If no collections or selected is already set, it should not be changed from localstorage value. (Usually, localstorage should have the same value).
216
- if (this.collections?.size === 0 || this.selected) {
217
- return;
218
- }
219
- const storedId = this.readLocalStorage()?.[this.activeSystemId];
220
- if (!storedId) {
221
- return;
222
- }
223
- const existing = Array.from(this.collections).find(item => item.id === storedId || item.termId === storedId);
224
- this.selected = existing;
225
- }
226
- storeSelectedInLocalStorage() {
227
- let localStorageObject = this.readLocalStorage();
228
- if (!localStorageObject) {
229
- localStorageObject = {};
230
- }
231
- localStorageObject[this.activeSystemId] = this.selected ? (this.selected.termId ?? this.selected.id) : null;
232
- // store term id if it exists
233
- localStorage.setItem(this.LOCAL_STORAGE_KEY, JSON.stringify(localStorageObject));
234
- }
235
- readLocalStorage() {
236
- const data = localStorage.getItem(this.LOCAL_STORAGE_KEY);
237
- try {
238
- return JSON.parse(data);
239
- }
240
- catch {
241
- return null;
242
- }
243
- }
244
- }
245
- TldTermCollectionsService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: TldTermCollectionsService, deps: [{ token: i1.TldTranslateConfigService }, { token: i2.TldSystemService }, { token: i3.TermApiService }, { token: i4.MtCollectionsApiService }], target: i0.ɵɵFactoryTarget.Injectable });
246
- TldTermCollectionsService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: TldTermCollectionsService, providedIn: 'root' });
247
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: TldTermCollectionsService, decorators: [{
248
- type: Injectable,
249
- args: [{
250
- providedIn: 'root'
251
- }]
252
- }], ctorParameters: function () { return [{ type: i1.TldTranslateConfigService }, { type: i2.TldSystemService }, { type: i3.TermApiService }, { type: i4.MtCollectionsApiService }]; } });
253
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGxkLXRlcm0tY29sbGVjdGlvbnMuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RsZC10cmFuc2xhdGUvc3JjL2xpYi9tb2R1bGVzL3RsZC10ZXJtL3NlcnZpY2VzL3RsZC10ZXJtLWNvbGxlY3Rpb25zLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsUUFBUSxFQUFjLE1BQU0sTUFBTSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDMUMsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGlEQUFpRCxDQUFDO0FBRzVFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQ3BGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDBDQUEwQyxDQUFDOzs7Ozs7QUFPbEYsTUFBTSxPQUFPLHlCQUF5QjtJQXVEcEMsWUFBNkIsTUFBaUMsRUFDM0MsU0FBMkIsRUFDM0IsT0FBdUIsRUFDdkIsS0FBOEI7UUFIcEIsV0FBTSxHQUFOLE1BQU0sQ0FBMkI7UUFDM0MsY0FBUyxHQUFULFNBQVMsQ0FBa0I7UUFDM0IsWUFBTyxHQUFQLE9BQU8sQ0FBZ0I7UUFDdkIsVUFBSyxHQUFMLEtBQUssQ0FBeUI7UUF4RHpDLGNBQVMsR0FBMkIsSUFBSSxDQUFDO1FBbURoQyxzQkFBaUIsR0FBRyx1QkFBdUIsQ0FBQztRQU0zRCxJQUFJLENBQUMsU0FBUyxDQUFDLGFBQWEsRUFBRTthQUMzQixTQUFTLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRTtZQUNwQixJQUFJLENBQUMsa0JBQWtCLEdBQUcsTUFBTSxFQUFFLFVBQVUsQ0FBQyxJ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SyxRQUFRLElBQUksSUFBSSxDQUFDLE1BQU0sS0FBSyxRQUFRLENBQUMsQ0FBQztRQUM3RyxJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztJQUMzQixDQUFDO0lBR08sMkJBQTJCO1FBQ2pDLElBQUksa0JBQWtCLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7UUFDakQsSUFBSSxDQUFDLGtCQUFrQixFQUFFO1lBQ3ZCLGtCQUFrQixHQUFHLEVBQUUsQ0FBQztTQUN6QjtRQUVELGtCQUFrQixDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztRQUM1Ryw2QkFBNkI7UUFDN0IsWUFBWSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLENBQUM7SUFDbkYsQ0FBQztJQUVPLGdCQUFnQjtRQUN0QixNQUFNLElBQUksR0FBRyxZQUFZLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBQzFELElBQUk7WUFDRixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDekI7UUFDRCxNQUFNO1lBQ0osT0FBTyxJQUFJLENBQUM7U0FDYjtJQUNILENBQUM7O3NIQTNSVSx5QkFBeUI7MEhBQXpCLHlCQUF5QixjQUZ4QixNQUFNOzJGQUVQLHlCQUF5QjtrQkFIckMsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IGZvcmtKb2luLCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IG1hcCwgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBFcnJvckNvZGUgfSBmcm9tICcuLi8uLi90bGQtY29tbW9uL21vZGVscy9lcnJvcnMvZXJyb3ItY29kZXMuZW51bSc7XHJcbmltcG9ydCB7IFRsZFRyYW5zbGF0ZUNvbmZpZ1NlcnZpY2UgfSBmcm9tICcuLi8uLi90bGQtY29tbW9uL3NlcnZpY2VzJztcclxuaW1wb3J0IHsgVGxkU3lzdGVtU2VydmljZSB9IGZyb20gJy4uLy4uL3RsZC10b29sdGlwL3NlcnZpY2VzJztcclxuaW1wb3J0IHsgQ29udmVydGVkQ29sbGVjdGlvblR5cGUgfSBmcm9tICcuLi9tb2RlbHMvY29udmVydGVkLWNvbGxlY3Rpb24tdHlwZS5tb2RlbCc7XHJcbmltcG9ydCB7IE10Q29sbGVjdGlvblN0YXR1cyB9IGZyb20gJy4uL21vZGVscy9tdC1jb2xsZWN0aW9uLXN0YXR1cy5tb2RlbCc7XHJcbmltcG9ydCB7IFRsZENvbnZlcnRlZENvbGxlY3Rpb24gfSBmcm9tICcuLi9tb2RlbHMvdGxkLWNvbnZlcnRlZC1jb2xsZWN0aW9uLm1vZGVsJztcclxuaW1wb3J0IHsgTXRDb2xsZWN0aW9uc0FwaVNlcnZpY2UgfSBmcm9tICcuL210LWNvbGxlY3Rpb25zLWFwaS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgVGVybUFwaVNlcnZpY2UgfSBmcm9tICcuL3Rlcm0tYXBpLnNlcnZpY2UnO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290J1xyXG59KVxyXG5leHBvcnQgY2xhc3MgVGxkVGVybUNvbGxlY3Rpb25zU2VydmljZSB7XHJcblxyXG4gIHByaXZhdGUgX3NlbGVjdGVkOiBUbGRDb252ZXJ0ZWRDb2xsZWN0aW9uID0gbnVsbDtcclxuICBnZXQgc2VsZWN0ZWQoKSB7IHJldHVybiB0aGlzLl9zZWxlY3RlZDsgfVxyXG4gIHNldCBzZWxlY3RlZCh2YWw6IFRsZENvbnZlcnRlZENvbGxlY3Rpb24pIHtcclxuICAgIHRoaXMuX3NlbGVjdGVkID0gdmFsO1xyXG4gICAgdGhpcy5zdG9yZVNlbGVjdGVkSW5Mb2NhbFN0b3JhZ2UoKTtcclxuICAgIGlmICghdGhpcy5fc2VsZWN0ZWQpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICghdGhpcy5fc2VsZWN0ZWQuaWQpIHtcclxuICAgICAgdGhpcy5hZGRDb2xsZWN0aW9uVG9TeXN0ZW0odGhpcy5fc2VsZWN0ZWQpO1xyXG4gICAgfVxyXG5cclxuICB9XHJcblxyXG4gIC8vIHNldCBpbnN0ZWFkIG9mIGFycmF5IGJlY2F1c2Ugb25seSBkaXN0aW5jdCB2YWx1ZXMgc2hvdWxkIGJlIGluIGxpc3QgYW5kIHdpdGggc2V0IG5vIG1hbnVhbCBjaGVja3MgYXJlIG5lY2Vzc2FyeS5cclxuICBwcml2YXRlIF9jb2xsZWN0aW9uczogU2V0PFRsZENvbnZlcnRlZENvbGxlY3Rpb24+O1xyXG4gIGdldCBjb2xsZWN0aW9ucygpIHtcclxuICAgIHJldHVybiB0aGlzLl9jb2xsZWN0aW9ucztcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX2lzUmVmcmVzaGluZ0NvbGxlY3Rpb25zOiBib29sZWFuO1xyXG4gIGdldCBpc1JlZnJlc2hpbmdDb2xsZWN0aW9ucygpIHtcclxuICAgIHJldHVybiB0aGlzLl9pc1JlZnJlc2hpbmdDb2xsZWN0aW9ucztcclxuICB9XHJcblxyXG4gIGdldCBjYW5DcmVhdGVDb2xsZWN0aW9ucygpIHtcclxuICAgIHJldHVybiB0aGlzLmNvbmZpZy50ZXJtQ29uZmlnLmNhbkNyZWF0ZUNvbGxlY3Rpb247XHJcbiAgfVxyXG5cclxuICBnZXQgaGFzRWRpdFBlcm1pc3Npb25zKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuY29uZmlnPy5jb3JlQ29uZmlnLmlzQXV0aCAmJiB0aGlzLmNhbkNyZWF0ZUNvbGxlY3Rpb25zICYmIHRoaXMuY29uZmlnLnRlcm1Db25maWcuaXNUZXJtUG9ydGFsU3VwcG9ydGVkO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfaGFzQW55Q29sbGVjdGlvbnM6IGJvb2xlYW47XHJcbiAgZ2V0IGhhc0FueUNvbGxlY3Rpb25zKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuX2hhc0FueUNvbGxlY3Rpb25zO1xyXG4gIH1cclxuXHJcbiAgZ2V0IHNob3VsZFNob3dQcm9tb3Rpb24oKSB7XHJcbiAgICByZXR1cm4gIXRoaXMuaGFzQW55Q29sbGVjdGlvbnMgJiYgIXRoaXMuaGFzRWRpdFBlcm1pc3Npb25zO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBpc0F1dG9SZWZyZXNoaW5nT246IGJvb2xlYW47XHJcbiAgcHJpdmF0ZSBzb3VyY2VMYW5ndWFnZUNvZGU6IHN0cmluZztcclxuICBwcml2YXRlIHRhcmdldExhbmd1YWdlQ29kZTogc3RyaW5nO1xyXG4gIHByaXZhdGUgYWN0aXZlU3lzdGVtSWQ6IHN0cmluZztcclxuICBwcml2YXRlIHJlZnJlc2hUaW1lb3V0OiBhbnk7XHJcbiAgcHJpdmF0ZSBpc0FueUltcG9ydGluZzogYm9vbGVhbjtcclxuICBwcml2YXRlIG1lbnVPcGVuZWQ6IGJvb2xlYW47XHJcblxyXG4gIHByaXZhdGUgcmVhZG9ubHkgTE9DQUxfU1RPUkFHRV9LRVkgPSBcInN5c3RlbUxhc3RDb2xsZWN0aW9uc1wiO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IGNvbmZpZzogVGxkVHJhbnNsYXRlQ29uZmlnU2VydmljZSxcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgdGxkU3lzdGVtOiBUbGRTeXN0ZW1TZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSB0ZXJtQXBpOiBUZXJtQXBpU2VydmljZSxcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgbXRBcGk6IE10Q29sbGVjdGlvbnNBcGlTZXJ2aWNlKSB7XHJcbiAgICB0aGlzLnRsZFN5c3RlbS5nZXRBY3RpdmVEYXRhKClcclxuICAgICAgLnN1YnNjcmliZSgoYWN0aXZlKSA9PiB7XHJcbiAgICAgICAgdGhpcy5zb3VyY2VMYW5ndWFnZUNvZGUgPSBhY3RpdmU/LnNvdXJjZUxhbmcubGFuZztcclxuICAgICAgICB0aGlzLnRhcmdldExhbmd1YWdlQ29kZSA9IGFjdGl2ZT8udGFyZ2V0TGFuZy5sYW5nO1xyXG4gICAgICAgIHRoaXMuYWN0aXZlU3lzdGVtSWQgPSBhY3RpdmU/LnN5c3RlbUlkIHx8IG51bGw7XHJcbiAgICAgICAgdGhpcy5fY29sbGVjdGlvbnMgPSBuZXcgU2V0KCk7XHJcbiAgICAgICAgLy8gYXZvaWRpbmcgc2V0dGVyLCBzbyB0aGUgbnVsbCB2YWx1ZSBpcyBub3Qgc3RvcmVlZCBpbiBsb2NhdGlvbiBzaW5jZSBpdCBpcyBub3QgYnkgdXNlciBhY3Rpb25cclxuICAgICAgICB0aGlzLl9zZWxlY3RlZCA9IG51bGw7XHJcbiAgICAgICAgaWYgKGFjdGl2ZSAmJiB0aGlzLnRsZFN5c3RlbS5pc1Rlcm1pbm9sb2d5U3VwcG9ydGVkKGFjdGl2ZT8uc3lzdGVtKSkge1xyXG4gICAgICAgICAgdGhpcy5yZWZyZXNoQ29sbGVjdGlvbnModHJ1ZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICB9XHJcblxyXG4gIG9uTWVudU9wZW4oKSB7XHJcbiAgICB0aGlzLm1lbnVPcGVuZWQgPSB0cnVlO1xyXG4gICAgaWYgKCF0aGlzLnNob3VsZFNob3dQcm9tb3Rpb24pIHtcclxuICAgICAgdGhpcy5zdGFydEF1dG9SZWZyZXNoKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBvbk1lbnVDbG9zZSgpIHtcclxuICAgIHRoaXMubWVudU9wZW5lZCA9IGZhbHNlO1xyXG4gICAgLy8gaWYgbWVudSBpcyBjbG9zZWQsIGJ1dCBzZWxlY3RlZCBjb2xsZWN0aW9uIHN0aWxsIHN5bmNpbmcsIGF1dG8gcmVmcmVzaCBzaG91bGQgYmUga2VwdCBvcGVuZWQuXHJcbiAgICBpZiAodGhpcy5zZWxlY3RlZD8ubXRTdGF0dXMgIT09IE10Q29sbGVjdGlvblN0YXR1cy5QUk9DRVNTSU5HKSB7XHJcbiAgICAgIHRoaXMuc3RvcEF1dG9SZWZyZXNoKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBhZGRDb2xsZWN0aW9uVG9TeXN0ZW0oY29sbGVjdGlvbjogVGxkQ29udmVydGVkQ29sbGVjdGlvbikge1xyXG4gICAgaWYgKCFjb2xsZWN0aW9uIHx8ICFjb2xsZWN0aW9uLnRlcm1JZCkge1xyXG4gICAgICBjb25zb2xlLmVycm9yKFwiVHJ5aW5nIHRvIGF0dGFjaCBjb2xsZWN0aW9uIHRoYXQgaGFzIG5vIHRpbGRlIHRlcm0gaWQuXCIpO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICBjb2xsZWN0aW9uLm10U3RhdHVzID0gTXRDb2xsZWN0aW9uU3RhdHVzLlBST0NFU1NJTkc7XHJcbiAgICBjb2xsZWN0aW9uLmlzU3luY2hyb25pemVkID0gdHJ1ZTtcclxuICAgIHRoaXMubXRBcGkuYXR0YWNoVGVybXNGcm9tVGlsZGVUZXJtKHRoaXMuYWN0aXZlU3lzdGVtSWQsIGNvbGxlY3Rpb24udGVybUlkKVxyXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHsgfSxcclxuICAgICAgICAoKSA9PiB7XHJcbiAgICAgICAgICBjb2xsZWN0aW9uLm10U3RhdHVzID0gTXRDb2xsZWN0aW9uU3RhdHVzLkVSUk9SO1xyXG4gICAgICAgICAgY29sbGVjdGlvbi5lcnJvcktleSA9IEVycm9yQ29kZS5DT0xMRUNUSU9OX0lNUE9SVDtcclxuICAgICAgICB9KTtcclxuICB9XHJcblxyXG4gIGNyZWF0ZShkZWZhdWx0TGFuZ3VhZ2VzOiBzdHJpbmdbXSwgY29sbGVjdGlvbk5hbWU6IHN0cmluZykge1xyXG4gICAgcmV0dXJuIHRoaXMudGVybUFwaS5jcmVhdGVDb2xsZWN0aW9uKGRlZmF1bHRMYW5ndWFnZXMsIGNvbGxlY3Rpb25OYW1lKS5waXBlKFxyXG4gICAgICBtYXAoY29sbGVjdGlvbiA9PiBuZXcgVGxkQ29udmVydGVkQ29sbGVjdGlvbihjb2xsZWN0aW9uLCB0aGlzLnNvdXJjZUxhbmd1YWdlQ29kZSwgdGhpcy50YXJnZXRMYW5ndWFnZUNvZGUpKSxcclxuICAgICAgdGFwKChjb2xsZWN0aW9uKSA9PiB7XHJcbiAgICAgICAgdGhpcy5fY29sbGVjdGlvbnMuYWRkKGNvbGxlY3Rpb24pO1xyXG4gICAgICAgIHRoaXMuX2hhc0FueUNvbGxlY3Rpb25zID0gdHJ1ZTtcclxuICAgICAgfSlcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICByZWZyZXNoQ29sbGVjdGlvbnMoc2V0U2VsZWN0ZWRGcm9tTG9jYWxTdG9yYWdlID0gZmFsc2UpIHtcclxuICAgIGlmICghdGhpcy5hY3RpdmVTeXN0ZW1JZFxyXG4gICAgICB8fCAhdGhpcy5jb25maWcudGVybUNvbmZpZy5pc0NvbGxlY3Rpb25zQWN0aXZhdGVkKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIHRoaXMuX2lzUmVmcmVzaGluZ0NvbGxlY3Rpb25zID0gdHJ1ZTtcclxuICAgIGNvbnN0IG9ic2VydmFibGVzOiBPYnNlcnZhYmxlPFRsZENvbnZlcnRlZENvbGxlY3Rpb25bXT5bXSA9IFtcclxuICAgICAgdGhpcy50ZXJtQXBpLmdldENvbGxlY3Rpb25MaXN0KHRoaXMuc291cmNlTGFuZ3VhZ2VDb2RlLCB0aGlzLnRhcmdldExhbmd1YWdlQ29kZSksXHJcbiAgICAgIHRoaXMubXRBcGkubG9hZE1UQ29sbGVjdGlvbnModGhpcy5hY3RpdmVTeXN0ZW1JZCwgdGhpcy5zb3VyY2VMYW5ndWFnZUNvZGUsIHRoaXMudGFyZ2V0TGFuZ3VhZ2VDb2RlKVxyXG4gICAgXTtcclxuXHJcbiAgICBmb3JrSm9pbihvYnNlcnZhYmxlcykuc3Vic2NyaWJlKFxyXG4gICAgICAocmVzcG9uc2UpID0+IHtcclxuICAgICAgICB0aGlzLmlzQW55SW1wb3J0aW5nID0gZmFsc2U7XHJcbiAgICAgICAgLy8gVE8gRE8uIERvZXNuJ3Qgc2VlbSB0byBiZSBjbGVhbiBhcHByb2FjaCB3aXRoIHN5bmNpbmcgY29sbGVjdGlvbnMuIE1heWJlIHNvbWUgY2xlYW5lciBzb2x1dGlvbiBwb3NzaWJsZT9cclxuICAgICAgICB0aGlzLnJlbW92ZURlbGV0ZWRGcm9tVGVybXMocmVzcG9uc2VbMF0pO1xyXG4gICAgICAgIHRoaXMudXBkYXRlQ29sbGVjdGlvbnMoWy4uLnJlc3BvbnNlWzBdLCAuLi5yZXNwb25zZVsxXV0pO1xyXG4gICAgICAgIGlmIChzZXRTZWxlY3RlZEZyb21Mb2NhbFN0b3JhZ2UpIHtcclxuICAgICAgICAgIHRoaXMuc2V0U2VsZWN0ZWRGcm9tTG9jYWxTdG9yYWdlKCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuX2lzUmVmcmVzaGluZ0NvbGxlY3Rpb25zID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5zY2hlZHVsZVJlZnJlc2goKTtcclxuICAgICAgfSwgKGVycm9yKSA9PiB7XHJcbiAgICAgICAgdGhpcy5faXNSZWZyZXNoaW5nQ29sbGVjdGlvbnMgPSBmYWxzZTtcclxuICAgICAgICAvLyBpdCBpcyBlbm91Z2ggdG8gc2hvdyBlcnJvciBvbmx5IGluIGNvbnNvbGUuIE5vIHNwZWNpYWwgdGhpbmcgaXMgbmVjZXNzYXJ5LlxyXG4gICAgICAgIGNvbnNvbGUuZXJyb3IoZXJyb3IpO1xyXG4gICAgICB9KTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqXHJcbiAgICogQHJldHVybnMgc2VsZWN0ZWQgY29sbGVjdGlvbiBpZCBpZiBpdCBpcyBhbGxvd2VkIHRvIHVzZSBjb2xsZWN0aW9uIGZvciB0cmFuc2xhdGlvbnNcclxuICAgKi9cclxuICBzZWxlY3RlZElkRm9yVHJhbnNsYXRpb24oKTogc3RyaW5nIHtcclxuICAgIGlmICh0aGlzLnNlbGVjdGVkICYmICh0aGlzLnNlbGVjdGVkLm10UHJlcGFyZWREYXRlVGltZSB8fCB0aGlzLnNlbGVjdGVkLm10U3RhdHVzID09PSBNdENvbGxlY3Rpb25TdGF0dXMuUkVBRFkpKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLnNlbGVjdGVkLmlkO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIG51bGw7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHN0YXJ0QXV0b1JlZnJlc2goKSB7XHJcbiAgICB0aGlzLmlzQXV0b1JlZnJlc2hpbmdPbiA9IHRydWU7XHJcbiAgICB0aGlzLnNjaGVkdWxlUmVmcmVzaCgwKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgc3RvcEF1dG9SZWZyZXNoKCkge1xyXG4gICAgaWYgKHRoaXMucmVmcmVzaFRpbWVvdXQpIHtcclxuICAgICAgY2xlYXJUaW1lb3V0KHRoaXMucmVmcmVzaFRpbWVvdXQpO1xyXG4gICAgICB0aGlzLnJlZnJlc2hUaW1lb3V0ID0gbnVsbDtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLmlzQXV0b1JlZnJlc2hpbmdPbiA9IGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBzY2hlZHVsZVJlZnJlc2godGltZW91dD86IG51bWJlcikge1xyXG4gICAgLy8gaWYgbWVudSBpcyBjbG9zZWQgYW5kIHNlbGVjdGVkIGNvbGxlY3Rpb24gaXMgbm90IGltcG9ydGluZyBhbnltb3JlIC0gYXV0byByZWZyZXNoaW5nIHNob3VsZCBiZSBjYW5jZWxsZWQuXHJcbiAgICBpZiAoIXRoaXMubWVudU9wZW5lZCAmJiAhdGhpcy5zZWxlY3RlZD8uaXNJbXBvcnRpbmcgJiYgdGhpcy5pc0F1dG9SZWZyZXNoaW5nT24pIHtcclxuICAgICAgdGhpcy5zdG9wQXV0b1JlZnJlc2goKTtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIGlmIG1lbnUgaXMgb3BlbmVkLCBhdXRvIHJlZnJlc2ggc2hvdWxkIGJlIG9uLiBJZiBtZW51IGlzIGNsb3NlZCwgcmVmcmVzaCBuZWVkcyB0byBiZSBkb25lIG9ubHkgaWYgc2VsZWN0ZWQgaXMgaW1wb3J0aW5nLlxyXG4gICAgaWYgKCF0aGlzLnJlZnJlc2hUaW1lb3V0ICYmICh0aGlzLmlzQXV0b1JlZnJlc2hpbmdPbiB8fCB0aGlzLnNlbGVjdGVkPy5pc0ltcG9ydGluZykpIHtcclxuICAgICAgY29uc3QgdGltZW91dE1zID0gdGltZW91dCA/PyAodGhpcy5pc0FueUltcG9ydGluZyA/IHRoaXMuY29uZmlnLnRlcm1Db25maWcucmVmcmVzaFRpbWVvdXRNc1doZW5JbXBvcnRpbmcgOiB0aGlzLmNvbmZpZy50ZXJtQ29uZmlnLnJlZnJlc2hUaW1lb3V0TXMpO1xyXG4gICAgICB0aGlzLnJlZnJlc2hUaW1lb3V0ID0gc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5yZWZyZXNoVGltZW91dCA9IG51bGw7XHJcbiAgICAgICAgdGhpcy5yZWZyZXNoQ29sbGVjdGlvbnMoKVxyXG4gICAgICB9LCB0aW1lb3V0TXMpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogU2hvdWxkIGJlIGNhbGxlZCBhZnRlciByZWZyZXNoIHRvIGNoZWNrIGlmIHRoZXJlIGlzIGFueSBjb2xsZWN0aW9ucyBmcm9tIHRlcm0gYXBpIHRoYXQgYXJlIGRlbGV0ZWQuXHJcbiAgICovXHJcbiAgcHJpdmF0ZSByZW1vdmVEZWxldGVkRnJvbVRlcm1zKHJlZnJlc2hlZExpc3Q6IFRsZENvbnZlcnRlZENvbGxlY3Rpb25bXSkge1xyXG4gICAgZm9yIChjb25zdCBjb2xsZWN0aW9uIG9mIHRoaXMuY29sbGVjdGlvbnMpIHtcclxuICAgICAgaWYgKCFjb2xsZWN0aW9uLnRlcm1JZCkge1xyXG4gICAgICAgIGNvbnRpbnVlO1xyXG4gICAgICB9XHJcbiAgICAgIGNvbnN0IGV4aXN0cyA9IHJlZnJlc2hlZExpc3QuZmluZChyZWZyZXNoZWRDb2xsZWN0aW9uID0+IHJlZnJlc2hlZENvbGxlY3Rpb24uaW1wb3J0ZWRGcm9tID09PSBDb252ZXJ0ZWRDb2xsZWN0aW9uVHlwZS5UZXJtICYmIHJlZnJlc2hlZENvbGxlY3Rpb24udGVybUlkID09PSBjb2xsZWN0aW9uLnRlcm1JZCk7XHJcbiAgICAgIGlmICghZXhpc3RzKSB7XHJcbiAgICAgICAgLy8gUmVtb3ZlcyBjb2xsZWN0aW9uIGlmIGl0IGhhc24ndCBiZWVuIGltcG9ydGVkLlxyXG4gICAgICAgIGlmICghY29sbGVjdGlvbi5pZCkge1xyXG4gICAgICAgICAgdGhpcy5jb2xsZWN0aW9ucy5kZWxldGUoY29sbGVjdGlvbik7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2Uge1xyXG4gICAgICAgICAgY29sbGVjdGlvbi5kZWxldGVkRnJvbVRlcm1BcGkoKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgdXBkYXRlQ29sbGVjdGlvbnMocmVmcmVzaGVkQ29sbGVjdGlvbnM6IFRsZENvbnZlcnRlZENvbGxlY3Rpb25bXSkge1xyXG4gICAgLy8gc2V0cyBjb2xsZWN0aW9uIGxpc3QgdG8gdGhpcyB2YWx1ZSBhdCB0aGUgZW5kLCBzbyBkZWxldGVkIGNvbGxlY3Rpb25zIGFyZSBub3QgaW4gdGhlIGxpc3QuXHJcbiAgICBjb25zdCB1cGRhdGVkQ29sbGVjdGlvbnMgPSBuZXcgU2V0PFRsZENvbnZlcnRlZENvbGxlY3Rpb24+KCk7XHJcbiAgICBmb3IgKGxldCBjb2xsZWN0aW9uIG9mIHJlZnJlc2hlZENvbGxlY3Rpb25zKSB7XHJcbiAgICAgIC8vIFVzZXIgc2hvdWxkbid0IHNlZSBmYWlsZWQgY29sbGVjdGlvbnMgaWYgaGUgY2FuJ3QgcmV0cnkgdG8gaW1wb3J0IHRoZW0uXHJcbiAgICAgIGlmICghdGhpcy5oYXNFZGl0UGVybWlzc2lvbnNcclxuICAgICAgICAmJiBjb2xsZWN0aW9uLmltcG9ydGVkRnJvbSA9PT0gQ29udmVydGVkQ29sbGVjdGlvblR5cGUuTVRcclxuICAgICAgICAmJiBjb2xsZWN0aW9uLm10U3RhdHVzID09PSBNdENvbGxlY3Rpb25TdGF0dXMuRVJST1IpIHtcclxuICAgICAgICBjb250aW51ZTtcclxuICAgICAgfVxyXG5cclxuICAgICAgaWYgKGNvbGxlY3Rpb24uaXNJbXBvcnRpbmcpIHtcclxuICAgICAgICB0aGlzLmlzQW55SW1wb3J0aW5nID0gdHJ1ZTtcclxuICAgICAgfVxyXG5cclxuICAgICAgbGV0IGV4aXN0aW5nOiBUbGRDb252ZXJ0ZWRDb2xsZWN0aW9uID0gVGxkQ29udmVydGVkQ29sbGVjdGlvbi5maW5kRXhpc3RpbmdDb2xsZWN0aW9uRnJvbUxpc3QodGhpcy5jb2xsZWN0aW9ucywgY29sbGVjdGlvbik7XHJcblxyXG4gICAgICAvLyBUZXJtIElkIHNob3VsZCBiZSBzZXQgb25seSBmb3IgZW50aXRpZXMgY29taW5nIGZyb20gdGVybSBBUEksIGJlY2F1c2UgY29sbGVjdGlvbiBjYW4gYmUgZGVsZXRlZCwgYnV0IGtleSB3b3VsZCBzdGlsbCBiZSBpbiBNVCBhcGkuXHJcbiAgICAgIC8vIEJ1dCB0ZXJtIGlkIGlzIG5lY2Vzc2FyeSB0byBkbyB0aGUgcHJldmlvdXMgY2hlY2sgdG8gc3luYyBjb2xsZWN0aW9ucyAtIGl0IGNhbiBiZSBzZXQgdG8gbnVsbCBvbmx5IGFmdGVyIHVwZGF0ZS5cclxuICAgICAgaWYgKGNvbGxlY3Rpb24uaW1wb3J0ZWRGcm9tID09PSBDb252ZXJ0ZWRDb2xsZWN0aW9uVHlwZS5NVCkge1xyXG4gICAgICAgIC8vIENvbGxlY3Rpb25zIGZyb20gTVQgc2hvdWxkIGJlIG9ubHkgdmlzaWJsZSB3aGVuIFJlYWR5IG9yIGNvbGxlY3Rpb24gaXMgYmVpbmcgcHJvY2Vzc2VkLCBidXQgaXQgaGFzIGFscmVhZHkgYmVlbiBjcmVhdGVkIGJlZm9yZSBhbmQgaXQgY2FuIGJlIHVzZWQuXHJcbiAgICAgICAgaWYgKCEoY29sbGVjdGlvbi5tdFN0YXR1cyA9PT0gTXRDb2xsZWN0aW9uU3RhdHVzLlJFQURZXHJcbiAgICAgICAgICB8fCAoY29sbGVjdGlvbi5tdFN0YXR1cyA9PT0gTXRDb2xsZWN0aW9uU3RhdHVzLlBST0NFU1NJTkcgJiYgY29sbGVjdGlvbi5tdFByZXBhcmVkRGF0ZVRpbWUpXHJcbiAgICAgICAgICB8fCBleGlzdGluZykpIHtcclxuICAgICAgICAgIGNvbnRpbnVlO1xyXG4gICAgICAgIH1cclxuICAgICAgICBjb2xsZWN0aW9uLnRlcm1JZCA9IG51bGw7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGlmIChleGlzdGluZykge1xyXG4gICAgICAgIGV4aXN0aW5nLnVwZGF0ZShjb2xsZWN0aW9uKTtcclxuICAgICAgfVxyXG4gICAgICBlbHNlIHtcclxuICAgICAgICB0aGlzLmNvbGxlY3Rpb25zLmFkZChjb2xsZWN0aW9uKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgY29uc3QgZWRpdGVkQ29sbGVjdGlvbiA9IGV4aXN0aW5nID8/IGNvbGxlY3Rpb247XHJcbiAgICAgIHVwZGF0ZWRDb2xsZWN0aW9ucy5hZGQoZWRpdGVkQ29sbGVjdGlvbik7XHJcbiAgICB9XHJcbiAgICB0aGlzLl9jb2xsZWN0aW9ucyA9IHVwZGF0ZWRDb2xsZWN0aW9ucztcclxuICAgIHRoaXMuX2hhc0FueUNvbGxlY3Rpb25zID0gdXBkYXRlZENvbGxlY3Rpb25zLnNpemUgPiAwO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBzZXRTZWxlY3RlZEZyb21Mb2NhbFN0b3JhZ2UoKSB7XHJcbiAgICAvLyBJZiBubyBjb2xsZWN0aW9ucyBvciBzZWxlY3RlZCBpcyBhbHJlYWR5IHNldCwgaXQgc2hvdWxkIG5vdCBiZSBjaGFuZ2VkIGZyb20gbG9jYWxzdG9yYWdlIHZhbHVlLiAoVXN1YWxseSwgbG9jYWxzdG9yYWdlIHNob3VsZCBoYXZlIHRoZSBzYW1lIHZhbHVlKS5cclxuICAgIGlmICh0aGlzLmNvbGxlY3Rpb25zPy5zaXplID09PSAwIHx8IHRoaXMuc2VsZWN0ZWQpIHtcclxuICAgICAgcmV0dXJuXHJcbiAgICB9XHJcblxyXG4gICAgY29uc3Qgc3RvcmVkSWQgPSB0aGlzLnJlYWRMb2NhbFN0b3JhZ2UoKT8uW3RoaXMuYWN0aXZlU3lzdGVtSWRdO1xyXG4gICAgaWYgKCFzdG9yZWRJZCkge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgZXhpc3RpbmcgPSBBcnJheS5mcm9tKHRoaXMuY29sbGVjdGlvbnMpLmZpbmQoaXRlbSA9PiBpdGVtLmlkID09PSBzdG9yZWRJZCB8fCBpdGVtLnRlcm1JZCA9PT0gc3RvcmVkSWQpO1xyXG4gICAgdGhpcy5zZWxlY3RlZCA9IGV4aXN0aW5nO1xyXG4gIH1cclxuXHJcblxyXG4gIHByaXZhdGUgc3RvcmVTZWxlY3RlZEluTG9jYWxTdG9yYWdlKCkge1xyXG4gICAgbGV0IGxvY2FsU3RvcmFnZU9iamVjdCA9IHRoaXMucmVhZExvY2FsU3RvcmFnZSgpO1xyXG4gICAgaWYgKCFsb2NhbFN0b3JhZ2VPYmplY3QpIHtcclxuICAgICAgbG9jYWxTdG9yYWdlT2JqZWN0ID0ge307XHJcbiAgICB9XHJcblxyXG4gICAgbG9jYWxTdG9yYWdlT2JqZWN0W3RoaXMuYWN0aXZlU3lzdGVtSWRdID0gdGhpcy5zZWxlY3RlZCA/ICh0aGlzLnNlbGVjdGVkLnRlcm1JZCA/PyB0aGlzLnNlbGVjdGVkLmlkKSA6IG51bGw7XHJcbiAgICAvLyBzdG9yZSB0ZXJtIGlkIGlmIGl0IGV4aXN0c1xyXG4gICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0odGhpcy5MT0NBTF9TVE9SQUdFX0tFWSwgSlNPTi5zdHJpbmdpZnkobG9jYWxTdG9yYWdlT2JqZWN0KSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHJlYWRMb2NhbFN0b3JhZ2UoKTogYW55IHtcclxuICAgIGNvbnN0IGRhdGEgPSBsb2NhbFN0b3JhZ2UuZ2V0SXRlbSh0aGlzLkxPQ0FMX1NUT1JBR0VfS0VZKTtcclxuICAgIHRyeSB7XHJcbiAgICAgIHJldHVybiBKU09OLnBhcnNlKGRhdGEpO1xyXG4gICAgfVxyXG4gICAgY2F0Y2gge1xyXG4gICAgICByZXR1cm4gbnVsbDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIl19
@@ -1,5 +0,0 @@
1
- export declare enum ConvertedCollectionTooltipKey {
2
- NO_ENTRIES = "NO_ENTRIES",
3
- IMPORTING = "IMPORTING",
4
- SYNCING = "SYNCING"
5
- }
@@ -1,7 +0,0 @@
1
- /**
2
- * Enumerator to determine if collection imported from term api or mt
3
- */
4
- export declare enum ConvertedCollectionType {
5
- Term = 0,
6
- MT = 1
7
- }
@@ -1,6 +0,0 @@
1
- export * from './mt-api/tld-mt-term-collection.model';
2
- export * from './term-api/tld-term-collection.model';
3
- export * from './term-api/tld-term-collection-languages.model';
4
- export * from './tld-converted-collection.model';
5
- export * from './converted-collection-tooltip-key.model';
6
- export * from './converted-collection-type.model';
@@ -1,15 +0,0 @@
1
- import { MtCollectionStatus } from "../mt-collection-status.model";
2
- /**
3
- * Interface that describes structure returned from GetDetailedTermCorpora
4
- */
5
- export interface ITldMTTermCollection {
6
- CorpusId: string;
7
- Message: string;
8
- Status: MtCollectionStatus;
9
- TildeTermId: string;
10
- Title: string;
11
- Type: string;
12
- AttachmentDateTime: string;
13
- Count: number;
14
- PreparedDateTime: string;
15
- }