@colijnit/sharedcomponents 1.0.18 → 1.0.20

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 (44) hide show
  1. package/bundles/colijnit-sharedcomponents.umd.js +560 -83
  2. package/bundles/colijnit-sharedcomponents.umd.js.map +1 -1
  3. package/colijnit-sharedcomponents.d.ts +9 -7
  4. package/colijnit-sharedcomponents.metadata.json +1 -1
  5. package/esm2015/colijnit-sharedcomponents.js +10 -8
  6. package/esm2015/lib/assets/dictionary/text.properties.js +11 -0
  7. package/esm2015/lib/components/layout-switcher/layout-switcher.component.js +74 -0
  8. package/esm2015/lib/components/layout-switcher/layout-switcher.module.js +21 -0
  9. package/esm2015/lib/components/send-method-dialog/send-method-dialog.component.js +87 -17
  10. package/esm2015/lib/components/stock/stock.component.js +17 -4
  11. package/esm2015/lib/components/stock/stock.module.js +3 -3
  12. package/esm2015/lib/enum/icon.enum.js +4 -1
  13. package/esm2015/lib/enum/language-code.enum.js +8 -0
  14. package/esm2015/lib/model/icon-svg.js +4 -1
  15. package/esm2015/lib/service/dictionary.service.js +76 -0
  16. package/esm2015/lib/service/options.service.js +71 -0
  17. package/esm2015/lib/service/shared-connector.service.js +262 -0
  18. package/esm2015/lib/service/shared.service.js +30 -0
  19. package/esm2015/lib/service/stock.service.js +21 -26
  20. package/esm2015/lib/utils/string-utils.js +64 -0
  21. package/esm2015/public-api.js +4 -1
  22. package/fesm2015/colijnit-sharedcomponents.js +462 -58
  23. package/fesm2015/colijnit-sharedcomponents.js.map +1 -1
  24. package/lib/assets/dictionary/text.properties.d.ts +3 -0
  25. package/lib/components/layout-switcher/layout-switcher.component.d.ts +16 -0
  26. package/lib/components/layout-switcher/layout-switcher.module.d.ts +2 -0
  27. package/lib/components/layout-switcher/style/_layout.scss +96 -0
  28. package/lib/components/layout-switcher/style/_material-definition.scss +16 -0
  29. package/lib/components/layout-switcher/style/_theme.scss +6 -0
  30. package/lib/components/layout-switcher/style/material.scss +5 -0
  31. package/lib/components/send-method-dialog/send-method-dialog.component.d.ts +23 -6
  32. package/lib/components/send-method-dialog/style/_layout.scss +5 -0
  33. package/lib/components/stock/stock.component.d.ts +5 -1
  34. package/lib/enum/icon.enum.d.ts +3 -0
  35. package/lib/enum/language-code.enum.d.ts +6 -0
  36. package/lib/service/dictionary.service.d.ts +21 -0
  37. package/lib/service/options.service.d.ts +13 -0
  38. package/lib/service/{ione-connector-adapter.service.d.ts → shared-connector.service.d.ts} +5 -5
  39. package/lib/service/shared.service.d.ts +8 -0
  40. package/lib/service/stock.service.d.ts +2 -5
  41. package/lib/utils/string-utils.d.ts +22 -0
  42. package/package.json +1 -1
  43. package/public-api.d.ts +3 -0
  44. package/esm2015/lib/service/ione-connector-adapter.service.js +0 -265
@@ -1,7 +1,10 @@
1
1
  /** AUTO GENERATED FILE. DO NOT CHANGE.. OR YOU WILL SUFFER THE CONSEQUENCES OF YOUR ACTIONS **/
2
2
  export const IconSvg = {
3
+ "angle_left_solid": "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 320 512\"><path fill=\"#183153\" d=\"M41.4 233.4c-12.5 12.5-12.5 32.8 0 45.3l160 160c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L109.3 256 246.6 118.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-160 160z\"/></svg>",
4
+ "angle_right_solid": "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 320 512\"><path fill=\"#183153\" d=\"M278.6 233.4c12.5 12.5 12.5 32.8 0 45.3l-160 160c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L210.7 256 73.4 118.6c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0l160 160z\"/></svg>",
3
5
  "arrow_fat_right": "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 50 50\"><polygon points=\"37.5 25 25.2 12.7 25.2 20.35 12.5 20.35 12.5 29.66 25.2 29.66 25.2 37.3 37.5 25\" fill=\"#484f60\"/></svg>",
4
6
  "arrow_point_right": "<svg version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" x=\"0px\" y=\"0px\" viewBox=\"0 0 51 51\" enable-background=\"new 0 0 51 51\"><path fill=\"#484F5F\" d=\"M19.1,14.3l14.7,9.6c0.1,0.1,0.2,0.2,0.2,0.4v2.4c0,0.2-0.1,0.3-0.2,0.4l-14.7,9.6c-0.2,0.2-0.5,0.1-0.7-0.1l-1.4-2.1c-0.2-0.2-0.1-0.5,0.1-0.7l12-7.8c0.3-0.2,0.3-0.6,0-0.8l-12-7.8c-0.2-0.2-0.3-0.5-0.1-0.7l1.4-2.1C18.6,14.2,18.9,14.2,19.1,14.3z\"/></svg>",
7
+ "bring_forward_regular": "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><path fill=\"#183153\" d=\"M224 464H448C456.8 464 464 456.8 464 448V224C464 215.2 456.8 208 448 208H384V160H448C483.3 160 512 188.7 512 224V448C512 483.3 483.3 512 448 512H224C188.7 512 160 483.3 160 448V384H208V448C208 456.8 215.2 464 224 464zM64 352C28.65 352 0 323.3 0 288V64C0 28.65 28.65 0 64 0H288C323.3 0 352 28.65 352 64V288C352 323.3 323.3 352 288 352H64z\"/></svg>",
5
8
  "delete_left_regular": "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 576 512\"><path d=\"M432.1 208.1L385.9 256L432.1 303C442.3 312.4 442.3 327.6 432.1 336.1C423.6 346.3 408.4 346.3 399 336.1L352 289.9L304.1 336.1C295.6 346.3 280.4 346.3 271 336.1C261.7 327.6 261.7 312.4 271 303L318.1 256L271 208.1C261.7 199.6 261.7 184.4 271 175C280.4 165.7 295.6 165.7 304.1 175L352 222.1L399 175C408.4 165.7 423.6 165.7 432.1 175C442.3 184.4 442.3 199.6 432.1 208.1V208.1zM512 64C547.3 64 576 92.65 576 128V384C576 419.3 547.3 448 512 448H205.3C188.3 448 172 441.3 160 429.3L9.372 278.6C3.371 272.6 0 264.5 0 256C0 247.5 3.372 239.4 9.372 233.4L160 82.75C172 70.74 188.3 64 205.3 64L512 64zM528 128C528 119.2 520.8 112 512 112H205.3C201 112 196.9 113.7 193.9 116.7L54.63 256L193.9 395.3C196.9 398.3 201 400 205.3 400H512C520.8 400 528 392.8 528 384V128z\"/></svg>",
6
9
  "delivery_truck": "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 50 50\"><rect x=\"15.35\" y=\"16.56\" width=\"15.14\" height=\"10.94\" transform=\"translate(-1.83 2.08) rotate(-5)\" fill=\"#484f60\"/><path d=\"M38.5,18.1l-6.9.61L32.41,28l-7.63.67a3.76,3.76,0,0,1,1.43,2.25l7.25-.63A3.83,3.83,0,0,1,41,29.6l1-.1-.52-6Zm.29,5.84-3.91.34a.51.51,0,0,1-.55-.46L34,20.1a.49.49,0,0,1,.45-.54l2.27-.2a.5.5,0,0,1,.48.25l2,3.59A.5.5,0,0,1,38.79,23.94Z\" fill=\"#484f60\"/><path d=\"M19.66,29.09a3.8,3.8,0,0,0-1,2.46l-.74.07-1.82-.94L16,29.41Z\" fill=\"#484f60\"/><path d=\"M34.56,30.62a2.74,2.74,0,1,0,2.49-3A2.73,2.73,0,0,0,34.56,30.62Z\" fill=\"#484f60\"/><path d=\"M19.74,31.91a2.74,2.74,0,1,0,2.49-3A2.74,2.74,0,0,0,19.74,31.91Z\" fill=\"#484f60\"/><rect x=\"7.96\" y=\"17.63\" width=\"5\" height=\"1\" transform=\"translate(-1.54 0.98) rotate(-5)\" fill=\"#484f60\"/><rect x=\"11.02\" y=\"29.71\" width=\"3\" height=\"1\" transform=\"translate(-2.59 1.21) rotate(-5)\" fill=\"#484f60\"/><rect x=\"9.48\" y=\"23.53\" width=\"4\" height=\"1\" transform=\"matrix(1, -0.09, 0.09, 1, -2.05, 1.09)\" fill=\"#484f60\"/></svg>",
7
10
  "email": "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 50 50\"><path d=\"M31.79,38.45A17.82,17.82,0,0,1,23.86,40,13.09,13.09,0,0,1,10.41,26.42C10.41,17.63,16.83,10,26.53,10c7.63,0,13.06,5.21,13.06,12.46,0,6.33-3.53,10.3-8.19,10.3a3.42,3.42,0,0,1-3.71-3.32h-.08A6.5,6.5,0,0,1,22,32.76c-2.75,0-4.82-2.11-4.82-5.65a9.85,9.85,0,0,1,10.13-10,12.89,12.89,0,0,1,5.13,1l-1.3,8c-.43,2.54-.13,3.71,1.08,3.75,1.85.09,4.18-2.28,4.18-7.28,0-5.65-3.62-10-10.3-10S13.73,17.76,13.73,26c0,7.25,4.57,11.3,11,11.3A14.81,14.81,0,0,0,31,36ZM28,20.65a5.34,5.34,0,0,0-1.33-.18c-2.85,0-5.09,2.81-5.09,6.12,0,1.64.73,2.68,2.16,2.68,1.59,0,3.27-2,3.66-4.53Z\" fill=\"#484f60\"/></svg>",
@@ -10,4 +13,4 @@ export const IconSvg = {
10
13
  "signature_field": "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 50 50\"><path d=\"M20.1,25.42a1.1,1.1,0,1,1,1.27,1.45l-3.3,9.07A63.13,63.13,0,0,1,28,28.3l1.26-12-8.26-3-6.77,10A62.4,62.4,0,0,1,17,35.54l3.3-9.07A1.12,1.12,0,0,1,20.1,25.42Z\" fill=\"#484f60\"/><rect x=\"21.62\" y=\"11.43\" width=\"8.79\" height=\"2.34\" transform=\"translate(5.88 -8.14) rotate(20)\" fill=\"#484f60\"/><path d=\"M18.11,37.48c1.44,2.65,4.58,2.94,7.23,2.1,1.41-.44,2.2-1.49,3.44-2.06,2.42-1.1,3.13,1.2,5.36,1.37.42,0,2-.65,1.54-.68-2.55-.19-2.93-3.13-5.51-2.65a4.9,4.9,0,0,0-1.64.71c-.77.49-1.31,1.62-2.07,2l-4.61.56A3.38,3.38,0,0,1,20,37c-.22-.41-2,.28-1.85.5Z\" fill=\"#484f60\"/></svg>",
11
14
  "xml": "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 50 50\"><path d=\"M31.42,40.17H13.87c-2.15,0-2.71-.56-2.71-2.72V12.88c0-2.15.56-2.71,2.71-2.71H25.48l8.66,8.88v3.43H32.8V19.6l-7.88-8.09H13.87c-1.37,0-1.37,0-1.37,1.37V37.45c0,1.37,0,1.37,1.37,1.37H31.42c1.38,0,1.38,0,1.38-1.37V35h1.34v2.43C34.14,39.61,33.58,40.17,31.42,40.17Z\" fill=\"#484f60\"/><path d=\"M25.2,10.84v6.44c0,1.78.27,2,2,2h6.23Z\" fill=\"#484f60\"/><path d=\"M19.14,24.27v9h19.7v-9Zm5.36,7.41-1.3-2-1.3,2H20.48l2-3.06-1.81-2.8h1.38l1.18,1.88,1.15-1.88h1.37l-1.83,2.85,2,3Zm7.67,0h-1.1V27.07l-1.16,4.61H28.77l-1.16-4.61v4.61H26.52V25.82h1.76l1.07,4,1-4h1.77Zm5.33,0H33.38V25.87h1.18v4.82H37.5Z\" fill=\"#484f60\"/></svg>"
12
15
  };
13
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbi1zdmcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaGFyZWRjb21wb25lbnRzL3NyYy9saWIvbW9kZWwvaWNvbi1zdmcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsZ0dBQWdHO0FBRWhHLE1BQU0sQ0FBQyxNQUFNLE9BQU8sR0FBa0M7SUFDckQsaUJBQWlCLEVBQUUsOExBQThMO0lBQ2pOLG1CQUFtQixFQUFFLDhaQUE4WjtJQUNuYixxQkFBcUIsRUFBRSx3MEJBQXcwQjtJQUMvMUIsZ0JBQWdCLEVBQUUsbWxDQUFtbEM7SUFDcm1DLE9BQU8sRUFBRSxxcEJBQXFwQjtJQUM5cEIsS0FBSyxFQUFFLHUwQ0FBdTBDO0lBQzkwQyxPQUFPLEVBQUUsaWxCQUFpbEI7SUFDMWxCLGlCQUFpQixFQUFFLHVwQkFBdXBCO0lBQzFxQixLQUFLLEVBQUUsdXJCQUF1ckI7Q0FDOXJCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKiogQVVUTyBHRU5FUkFURUQgRklMRS4gRE8gTk9UIENIQU5HRS4uIE9SIFlPVSBXSUxMIFNVRkZFUiBUSEUgQ09OU0VRVUVOQ0VTIE9GIFlPVVIgQUNUSU9OUyAqKi9cclxuXHJcbmV4cG9ydCBjb25zdCBJY29uU3ZnOiB7W2ljb25OYW1lOiBzdHJpbmddOiBzdHJpbmd9ID0gIHtcclxuIFwiYXJyb3dfZmF0X3JpZ2h0XCI6IFwiPHN2ZyB4bWxucz1cXFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcXFwiIHZpZXdCb3g9XFxcIjAgMCA1MCA1MFxcXCI+PHBvbHlnb24gcG9pbnRzPVxcXCIzNy41IDI1IDI1LjIgMTIuNyAyNS4yIDIwLjM1IDEyLjUgMjAuMzUgMTIuNSAyOS42NiAyNS4yIDI5LjY2IDI1LjIgMzcuMyAzNy41IDI1XFxcIiBmaWxsPVxcXCIjNDg0ZjYwXFxcIi8+PC9zdmc+XCIsXHJcbiBcImFycm93X3BvaW50X3JpZ2h0XCI6IFwiPHN2ZyB2ZXJzaW9uPVxcXCIxLjFcXFwiIHhtbG5zPVxcXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1xcXCIgeD1cXFwiMHB4XFxcIiB5PVxcXCIwcHhcXFwiIHZpZXdCb3g9XFxcIjAgMCA1MSA1MVxcXCIgZW5hYmxlLWJhY2tncm91bmQ9XFxcIm5ldyAwIDAgNTEgNTFcXFwiPjxwYXRoIGZpbGw9XFxcIiM0ODRGNUZcXFwiIGQ9XFxcIk0xOS4xLDE0LjNsMTQuNyw5LjZjMC4xLDAuMSwwLjIsMC4yLDAuMiwwLjR2Mi40YzAsMC4yLTAuMSwwLjMtMC4yLDAuNGwtMTQuNyw5LjZjLTAuMiwwLjItMC41LDAuMS0wLjctMC4xbC0xLjQtMi4xYy0wLjItMC4yLTAuMS0wLjUsMC4xLTAuN2wxMi03LjhjMC4zLTAuMiwwLjMtMC42LDAtMC44bC0xMi03LjhjLTAuMi0wLjItMC4zLTAuNS0wLjEtMC43bDEuNC0yLjFDMTguNiwxNC4yLDE4LjksMTQuMiwxOS4xLDE0LjN6XFxcIi8+PC9zdmc+XCIsXHJcbiBcImRlbGV0ZV9sZWZ0X3JlZ3VsYXJcIjogXCI8c3ZnIHhtbG5zPVxcXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1xcXCIgdmlld0JveD1cXFwiMCAwIDU3NiA1MTJcXFwiPjxwYXRoIGQ9XFxcIk00MzIuMSAyMDguMUwzODUuOSAyNTZMNDMyLjEgMzAzQzQ0Mi4zIDMxMi40IDQ0Mi4zIDMyNy42IDQzMi4xIDMzNi4xQzQyMy42IDM0Ni4zIDQwOC40IDM0Ni4zIDM5OSAzMzYuMUwzNTIgMjg5LjlMMzA0LjEgMzM2LjFDMjk1LjYgMzQ2LjMgMjgwLjQgMzQ2LjMgMjcxIDMzNi4xQzI2MS43IDMyNy42IDI2MS43IDMxMi40IDI3MSAzMDNMMzE4LjEgMjU2TDI3MSAyMDguMUMyNjEuNyAxOTkuNiAyNjEuNyAxODQuNCAyNzEgMTc1QzI4MC40IDE2NS43IDI5NS42IDE2NS43IDMwNC4xIDE3NUwzNTIgMjIyLjFMMzk5IDE3NUM0MDguNCAxNjUuNyA0MjMuNiAxNjUuNyA0MzIuMSAxNzVDNDQyLjMgMTg0LjQgNDQyLjMgMTk5LjYgNDMyLjEgMjA4LjFWMjA4LjF6TTUxMiA2NEM1NDcuMyA2NCA1NzYgOTIuNjUgNTc2IDEyOFYzODRDNTc2IDQxOS4zIDU0Ny4zIDQ0OCA1MTIgNDQ4SDIwNS4zQzE4OC4zIDQ0OCAxNzIgNDQxLjMgMTYwIDQyOS4zTDkuMzcyIDI3OC42QzMuMzcxIDI3Mi42IDAgMjY0LjUgMCAyNTZDMCAyNDcuNSAzLjM3MiAyMzkuNCA5LjM3MiAyMzMuNEwxNjAgODIuNzVDMTcyIDcwLjc0IDE4OC4zIDY0IDIwNS4zIDY0TDUxMiA2NHpNNTI4IDEyOEM1MjggMTE5LjIgNTIwLjggMTEyIDUxMiAxMTJIMjA1LjNDMjAxIDExMiAxOTYuOSAxMTMuNyAxOTMuOSAxMTYuN0w1NC42MyAyNTZMMTkzLjkgMzk1LjNDMTk2LjkgMzk4LjMgMjAxIDQwMCAyMDUuMyA0MDBINTEyQzUyMC44IDQwMCA1MjggMzkyLjggNTI4IDM4NFYxMjh6XFxcIi8+PC9zdmc+XCIsXHJcbiBcImRlbGl2ZXJ5X3RydWNrXCI6IFwiPHN2ZyB4bWxucz1cXFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcXFwiIHZpZXdCb3g9XFxcIjAgMCA1MCA1MFxcXCI+PHJlY3QgeD1cXFwiMTUuMzVcXFwiIHk9XFxcIjE2LjU2XFxcIiB3aWR0aD1cXFwiMTUuMTRcXFwiIGhlaWdodD1cXFwiMTAuOTRcXFwiIHRyYW5zZm9ybT1cXFwidHJhbnNsYXRlKC0xLjgzIDIuMDgpIHJvdGF0ZSgtNSlcXFwiIGZpbGw9XFxcIiM0ODRmNjBcXFwiLz48cGF0aCBkPVxcXCJNMzguNSwxOC4xbC02LjkuNjFMMzIuNDEsMjhsLTcuNjMuNjdhMy43NiwzLjc2LDAsMCwxLDEuNDMsMi4yNWw3LjI1LS42M0EzLjgzLDMuODMsMCwwLDEsNDEsMjkuNmwxLS4xLS41Mi02Wm0uMjksNS44NC0zLjkxLjM0YS41MS41MSwwLDAsMS0uNTUtLjQ2TDM0LDIwLjFhLjQ5LjQ5LDAsMCwxLC40NS0uNTRsMi4yNy0uMmEuNS41LDAsMCwxLC40OC4yNWwyLDMuNTlBLjUuNSwwLDAsMSwzOC43OSwyMy45NFpcXFwiIGZpbGw9XFxcIiM0ODRmNjBcXFwiLz48cGF0aCBkPVxcXCJNMTkuNjYsMjkuMDlhMy44LDMuOCwwLDAsMC0xLDIuNDZsLS43NC4wNy0xLjgyLS45NEwxNiwyOS40MVpcXFwiIGZpbGw9XFxcIiM0ODRmNjBcXFwiLz48cGF0aCBkPVxcXCJNMzQuNTYsMzAuNjJhMi43NCwyLjc0LDAsMSwwLDIuNDktM0EyLjczLDIuNzMsMCwwLDAsMzQuNTYsMzAuNjJaXFxcIiBmaWxsPVxcXCIjNDg0ZjYwXFxcIi8+PHBhdGggZD1cXFwiTTE5Ljc0LDMxLjkxYTIuNzQsMi43NCwwLDEsMCwyLjQ5LTNBMi43NCwyLjc0LDAsMCwwLDE5Ljc0LDMxLjkxWlxcXCIgZmlsbD1cXFwiIzQ4NGY2MFxcXCIvPjxyZWN0IHg9XFxcIjcuOTZcXFwiIHk9XFxcIjE3LjYzXFxcIiB3aWR0aD1cXFwiNVxcXCIgaGVpZ2h0PVxcXCIxXFxcIiB0cmFuc2Zvcm09XFxcInRyYW5zbGF0ZSgtMS41NCAwLjk4KSByb3RhdGUoLTUpXFxcIiBmaWxsPVxcXCIjNDg0ZjYwXFxcIi8+PHJlY3QgeD1cXFwiMTEuMDJcXFwiIHk9XFxcIjI5LjcxXFxcIiB3aWR0aD1cXFwiM1xcXCIgaGVpZ2h0PVxcXCIxXFxcIiB0cmFuc2Zvcm09XFxcInRyYW5zbGF0ZSgtMi41OSAxLjIxKSByb3RhdGUoLTUpXFxcIiBmaWxsPVxcXCIjNDg0ZjYwXFxcIi8+PHJlY3QgeD1cXFwiOS40OFxcXCIgeT1cXFwiMjMuNTNcXFwiIHdpZHRoPVxcXCI0XFxcIiBoZWlnaHQ9XFxcIjFcXFwiIHRyYW5zZm9ybT1cXFwibWF0cml4KDEsIC0wLjA5LCAwLjA5LCAxLCAtMi4wNSwgMS4wOSlcXFwiIGZpbGw9XFxcIiM0ODRmNjBcXFwiLz48L3N2Zz5cIixcclxuIFwiZW1haWxcIjogXCI8c3ZnIHhtbG5zPVxcXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1xcXCIgdmlld0JveD1cXFwiMCAwIDUwIDUwXFxcIj48cGF0aCBkPVxcXCJNMzEuNzksMzguNDVBMTcuODIsMTcuODIsMCwwLDEsMjMuODYsNDAsMTMuMDksMTMuMDksMCwwLDEsMTAuNDEsMjYuNDJDMTAuNDEsMTcuNjMsMTYuODMsMTAsMjYuNTMsMTBjNy42MywwLDEzLjA2LDUuMjEsMTMuMDYsMTIuNDYsMCw2LjMzLTMuNTMsMTAuMy04LjE5LDEwLjNhMy40MiwzLjQyLDAsMCwxLTMuNzEtMy4zMmgtLjA4QTYuNSw2LjUsMCwwLDEsMjIsMzIuNzZjLTIuNzUsMC00LjgyLTIuMTEtNC44Mi01LjY1YTkuODUsOS44NSwwLDAsMSwxMC4xMy0xMCwxMi44OSwxMi44OSwwLDAsMSw1LjEzLDFsLTEuMyw4Yy0uNDMsMi41NC0uMTMsMy43MSwxLjA4LDMuNzUsMS44NS4wOSw0LjE4LTIuMjgsNC4xOC03LjI4LDAtNS42NS0zLjYyLTEwLTEwLjMtMTBTMTMuNzMsMTcuNzYsMTMuNzMsMjZjMCw3LjI1LDQuNTcsMTEuMywxMSwxMS4zQTE0LjgxLDE0LjgxLDAsMCwwLDMxLDM2Wk0yOCwyMC42NWE1LjM0LDUuMzQsMCwwLDAtMS4zMy0uMThjLTIuODUsMC01LjA5LDIuODEtNS4wOSw2LjEyLDAsMS42NC43MywyLjY4LDIuMTYsMi42OCwxLjU5LDAsMy4yNy0yLDMuNjYtNC41M1pcXFwiIGZpbGw9XFxcIiM0ODRmNjBcXFwiLz48L3N2Zz5cIixcclxuIFwicGRmXCI6IFwiPHN2ZyB4bWxucz1cXFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcXFwiIHZpZXdCb3g9XFxcIjAgMCA1MCA1MFxcXCI+PHBhdGggZD1cXFwiTTMxLjQyLDQwLjE3SDEzLjg4Yy0yLjE2LDAtMi43Mi0uNTYtMi43Mi0yLjcyVjEyLjg4YzAtMi4xNS41Ni0yLjcxLDIuNzItMi43MWgxMS42bDguNjYsOC44OHYzLjQzSDMyLjhWMTkuNmwtNy44OC04LjA5aC0xMWMtMS4zOCwwLTEuMzgsMC0xLjM4LDEuMzdWMzcuNDVjMCwxLjM3LDAsMS4zNywxLjM4LDEuMzdIMzEuNDJjMS4zOCwwLDEuMzgsMCwxLjM4LTEuMzdWMzVoMS4zNHYyLjQzQzM0LjE0LDM5LjYxLDMzLjU4LDQwLjE3LDMxLjQyLDQwLjE3WlxcXCIgZmlsbD1cXFwiIzQ4NGY2MFxcXCIvPjxwYXRoIGQ9XFxcIk0yNy44MywyNi42M3Y0LjI0aDFhMy41NywzLjU3LDAsMCwwLC43OC0uMDYsMS4yMiwxLjIyLDAsMCwwLC41Mi0uMjYsMS40NCwxLjQ0LDAsMCwwLC4zNC0uNjIsNC4xMyw0LjEzLDAsMCwwLC4xMy0xLjE4LDMuNzksMy43OSwwLDAsMC0uMTMtMS4xNCwxLjUxLDEuNTEsMCwwLDAtLjM3LS42MiwxLjE0LDEuMTQsMCwwLDAtLjYtLjMsNS45Myw1LjkzLDAsMCwwLTEuMDYtLjA2WlxcXCIgZmlsbD1cXFwiIzQ4NGY2MFxcXCIvPjxwYXRoIGQ9XFxcIk0yMS44NiwyNi42M3YxLjgyaC43MWEzLjU3LDMuNTcsMCwwLDAsMS0uMUEuODguODgsMCwwLDAsMjQsMjhhLjg0Ljg0LDAsMCwwLC4xNC0uNS44LjgsMCwwLDAtLjItLjU3Ljg4Ljg4LDAsMCwwLS41Mi0uMjksNi4zNiw2LjM2LDAsMCwwLS45MywwWlxcXCIgZmlsbD1cXFwiIzQ4NGY2MFxcXCIvPjxwYXRoIGQ9XFxcIk0xOS4xNCwyNC4yN3Y5aDE5Ljd2LTlabTYuMTIsNC4yNGExLjY4LDEuNjgsMCwwLDEtLjU0LjYzLDEuOSwxLjksMCwwLDEtLjY3LjMsNi41Nyw2LjU3LDAsMCwxLTEuMzQuMWgtLjg1VjMySDIwLjU3VjI1LjU0aDIuMDdhNy43NSw3Ljc1LDAsMCwxLDEuNTQuMSwxLjczLDEuNzMsMCwwLDEsLjkzLjYzLDIsMiwwLDAsMSwuMzcsMS4yNUEyLDIsMCwwLDEsMjUuMjYsMjguNTFabTYuNDUsMS42NkEyLjkxLDIuOTEsMCwwLDEsMzEsMzEuMzFhMi4yOCwyLjI4LDAsMCwxLS45MS41MUE0LDQsMCwwLDEsMjksMzJIMjYuNTRWMjUuNTRIMjguOWE0LjIxLDQuMjEsMCwwLDEsMS4yMi4xMywyLjA4LDIuMDgsMCwwLDEsMSwuNTksMi43OSwyLjc5LDAsMCwxLC42MSwxLDQuNzYsNC43NiwwLDAsMSwuMjEsMS41MkE0LjE5LDQuMTksMCwwLDEsMzEuNzEsMzAuMTdabTUuNy0zLjU0aC0zLjF2MS41MkgzN3YxLjA4SDM0LjMxVjMySDMzVjI1LjU0aDQuMzlaXFxcIiBmaWxsPVxcXCIjNDg0ZjYwXFxcIi8+PHBhdGggZD1cXFwiTTI1LjIsMTAuODR2Ni40NGMwLDEuNzguMjcsMiwyLDJoNi4yM1pcXFwiIGZpbGw9XFxcIiM0ODRmNjBcXFwiLz48L3N2Zz5cIixcclxuIFwicHJpbnRcIjogXCI8c3ZnIHhtbG5zPVxcXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1xcXCIgdmlld0JveD1cXFwiMCAwIDUwIDUwXFxcIj48cGF0aCBkPVxcXCJNMzgsMTYuNUgxMmEyLDIsMCwwLDAtMiwydjlhMiwyLDAsMCwwLDIsMmgydi01SDM2djVoMmEyLDIsMCwwLDAsMi0ydi05QTIsMiwwLDAsMCwzOCwxNi41Wk0zNywyMWExLjUsMS41LDAsMSwxLDEuNS0xLjVBMS41LDEuNSwwLDAsMSwzNywyMVpcXFwiIGZpbGw9XFxcIiM0ODRmNjBcXFwiLz48cGF0aCBkPVxcXCJNMzUsMTEuNXY1SDE1di01SDM1bTEtMUgxNHY3SDM2di03WlxcXCIgZmlsbD1cXFwiIzQ4NGY2MFxcXCIvPjxwYXRoIGQ9XFxcIk0zNSwyNS41djEzSDE1di0xM0gzNW0xLTFIMTR2MTVIMzZ2LTE1WlxcXCIgZmlsbD1cXFwiIzQ4NGY2MFxcXCIvPjxyZWN0IHg9XFxcIjE3XFxcIiB5PVxcXCIyOC4zXFxcIiB3aWR0aD1cXFwiMTZcXFwiIGhlaWdodD1cXFwiMC44XFxcIiBmaWxsPVxcXCIjNDg0ZjYwXFxcIi8+PHJlY3QgeD1cXFwiMTdcXFwiIHk9XFxcIjMxLjVcXFwiIHdpZHRoPVxcXCIxNlxcXCIgaGVpZ2h0PVxcXCIwLjhcXFwiIGZpbGw9XFxcIiM0ODRmNjBcXFwiLz48cmVjdCB4PVxcXCIxN1xcXCIgeT1cXFwiMzQuN1xcXCIgd2lkdGg9XFxcIjE2XFxcIiBoZWlnaHQ9XFxcIjAuOFxcXCIgZmlsbD1cXFwiIzQ4NGY2MFxcXCIvPjwvc3ZnPlwiLFxyXG4gXCJzaWduYXR1cmVfZmllbGRcIjogXCI8c3ZnIHhtbG5zPVxcXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1xcXCIgdmlld0JveD1cXFwiMCAwIDUwIDUwXFxcIj48cGF0aCBkPVxcXCJNMjAuMSwyNS40MmExLjEsMS4xLDAsMSwxLDEuMjcsMS40NWwtMy4zLDkuMDdBNjMuMTMsNjMuMTMsMCwwLDEsMjgsMjguM2wxLjI2LTEyLTguMjYtMy02Ljc3LDEwQTYyLjQsNjIuNCwwLDAsMSwxNywzNS41NGwzLjMtOS4wN0ExLjEyLDEuMTIsMCwwLDEsMjAuMSwyNS40MlpcXFwiIGZpbGw9XFxcIiM0ODRmNjBcXFwiLz48cmVjdCB4PVxcXCIyMS42MlxcXCIgeT1cXFwiMTEuNDNcXFwiIHdpZHRoPVxcXCI4Ljc5XFxcIiBoZWlnaHQ9XFxcIjIuMzRcXFwiIHRyYW5zZm9ybT1cXFwidHJhbnNsYXRlKDUuODggLTguMTQpIHJvdGF0ZSgyMClcXFwiIGZpbGw9XFxcIiM0ODRmNjBcXFwiLz48cGF0aCBkPVxcXCJNMTguMTEsMzcuNDhjMS40NCwyLjY1LDQuNTgsMi45NCw3LjIzLDIuMSwxLjQxLS40NCwyLjItMS40OSwzLjQ0LTIuMDYsMi40Mi0xLjEsMy4xMywxLjIsNS4zNiwxLjM3LjQyLDAsMi0uNjUsMS41NC0uNjgtMi41NS0uMTktMi45My0zLjEzLTUuNTEtMi42NWE0LjksNC45LDAsMCwwLTEuNjQuNzFjLS43Ny40OS0xLjMxLDEuNjItMi4wNywybC00LjYxLjU2QTMuMzgsMy4zOCwwLDAsMSwyMCwzN2MtLjIyLS40MS0yLC4yOC0xLjg1LjVaXFxcIiBmaWxsPVxcXCIjNDg0ZjYwXFxcIi8+PC9zdmc+XCIsXHJcbiBcInhtbFwiOiBcIjxzdmcgeG1sbnM9XFxcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXFxcIiB2aWV3Qm94PVxcXCIwIDAgNTAgNTBcXFwiPjxwYXRoIGQ9XFxcIk0zMS40Miw0MC4xN0gxMy44N2MtMi4xNSwwLTIuNzEtLjU2LTIuNzEtMi43MlYxMi44OGMwLTIuMTUuNTYtMi43MSwyLjcxLTIuNzFIMjUuNDhsOC42Niw4Ljg4djMuNDNIMzIuOFYxOS42bC03Ljg4LTguMDlIMTMuODdjLTEuMzcsMC0xLjM3LDAtMS4zNywxLjM3VjM3LjQ1YzAsMS4zNywwLDEuMzcsMS4zNywxLjM3SDMxLjQyYzEuMzgsMCwxLjM4LDAsMS4zOC0xLjM3VjM1aDEuMzR2Mi40M0MzNC4xNCwzOS42MSwzMy41OCw0MC4xNywzMS40Miw0MC4xN1pcXFwiIGZpbGw9XFxcIiM0ODRmNjBcXFwiLz48cGF0aCBkPVxcXCJNMjUuMiwxMC44NHY2LjQ0YzAsMS43OC4yNywyLDIsMmg2LjIzWlxcXCIgZmlsbD1cXFwiIzQ4NGY2MFxcXCIvPjxwYXRoIGQ9XFxcIk0xOS4xNCwyNC4yN3Y5aDE5Ljd2LTlabTUuMzYsNy40MS0xLjMtMi0xLjMsMkgyMC40OGwyLTMuMDYtMS44MS0yLjhoMS4zOGwxLjE4LDEuODgsMS4xNS0xLjg4aDEuMzdsLTEuODMsMi44NSwyLDNabTcuNjcsMGgtMS4xVjI3LjA3bC0xLjE2LDQuNjFIMjguNzdsLTEuMTYtNC42MXY0LjYxSDI2LjUyVjI1LjgyaDEuNzZsMS4wNyw0LDEtNGgxLjc3Wm01LjMzLDBIMzMuMzhWMjUuODdoMS4xOHY0LjgySDM3LjVaXFxcIiBmaWxsPVxcXCIjNDg0ZjYwXFxcIi8+PC9zdmc+XCJcclxufTsiXX0=
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbi1zdmcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaGFyZWRjb21wb25lbnRzL3NyYy9saWIvbW9kZWwvaWNvbi1zdmcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsZ0dBQWdHO0FBRWhHLE1BQU0sQ0FBQyxNQUFNLE9BQU8sR0FBa0M7SUFDckQsa0JBQWtCLEVBQUUsaVJBQWlSO0lBQ3JTLG1CQUFtQixFQUFFLGtSQUFrUjtJQUN2UyxpQkFBaUIsRUFBRSw4TEFBOEw7SUFDak4sbUJBQW1CLEVBQUUsOFpBQThaO0lBQ25iLHVCQUF1QixFQUFFLDBiQUEwYjtJQUNuZCxxQkFBcUIsRUFBRSx3MEJBQXcwQjtJQUMvMUIsZ0JBQWdCLEVBQUUsbWxDQUFtbEM7SUFDcm1DLE9BQU8sRUFBRSxxcEJBQXFwQjtJQUM5cEIsS0FBSyxFQUFFLHUwQ0FBdTBDO0lBQzkwQyxPQUFPLEVBQUUsaWxCQUFpbEI7SUFDMWxCLGlCQUFpQixFQUFFLHVwQkFBdXBCO0lBQzFxQixLQUFLLEVBQUUsdXJCQUF1ckI7Q0FDOXJCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKiogQVVUTyBHRU5FUkFURUQgRklMRS4gRE8gTk9UIENIQU5HRS4uIE9SIFlPVSBXSUxMIFNVRkZFUiBUSEUgQ09OU0VRVUVOQ0VTIE9GIFlPVVIgQUNUSU9OUyAqKi9cclxuXHJcbmV4cG9ydCBjb25zdCBJY29uU3ZnOiB7W2ljb25OYW1lOiBzdHJpbmddOiBzdHJpbmd9ID0gIHtcclxuIFwiYW5nbGVfbGVmdF9zb2xpZFwiOiBcIjxzdmcgeG1sbnM9XFxcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXFxcIiB2aWV3Qm94PVxcXCIwIDAgMzIwIDUxMlxcXCI+PHBhdGggZmlsbD1cXFwiIzE4MzE1M1xcXCIgZD1cXFwiTTQxLjQgMjMzLjRjLTEyLjUgMTIuNS0xMi41IDMyLjggMCA0NS4zbDE2MCAxNjBjMTIuNSAxMi41IDMyLjggMTIuNSA0NS4zIDBzMTIuNS0zMi44IDAtNDUuM0wxMDkuMyAyNTYgMjQ2LjYgMTE4LjZjMTIuNS0xMi41IDEyLjUtMzIuOCAwLTQ1LjNzLTMyLjgtMTIuNS00NS4zIDBsLTE2MCAxNjB6XFxcIi8+PC9zdmc+XCIsXHJcbiBcImFuZ2xlX3JpZ2h0X3NvbGlkXCI6IFwiPHN2ZyB4bWxucz1cXFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcXFwiIHZpZXdCb3g9XFxcIjAgMCAzMjAgNTEyXFxcIj48cGF0aCBmaWxsPVxcXCIjMTgzMTUzXFxcIiBkPVxcXCJNMjc4LjYgMjMzLjRjMTIuNSAxMi41IDEyLjUgMzIuOCAwIDQ1LjNsLTE2MCAxNjBjLTEyLjUgMTIuNS0zMi44IDEyLjUtNDUuMyAwcy0xMi41LTMyLjggMC00NS4zTDIxMC43IDI1NiA3My40IDExOC42Yy0xMi41LTEyLjUtMTIuNS0zMi44IDAtNDUuM3MzMi44LTEyLjUgNDUuMyAwbDE2MCAxNjB6XFxcIi8+PC9zdmc+XCIsXHJcbiBcImFycm93X2ZhdF9yaWdodFwiOiBcIjxzdmcgeG1sbnM9XFxcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXFxcIiB2aWV3Qm94PVxcXCIwIDAgNTAgNTBcXFwiPjxwb2x5Z29uIHBvaW50cz1cXFwiMzcuNSAyNSAyNS4yIDEyLjcgMjUuMiAyMC4zNSAxMi41IDIwLjM1IDEyLjUgMjkuNjYgMjUuMiAyOS42NiAyNS4yIDM3LjMgMzcuNSAyNVxcXCIgZmlsbD1cXFwiIzQ4NGY2MFxcXCIvPjwvc3ZnPlwiLFxyXG4gXCJhcnJvd19wb2ludF9yaWdodFwiOiBcIjxzdmcgdmVyc2lvbj1cXFwiMS4xXFxcIiB4bWxucz1cXFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcXFwiIHg9XFxcIjBweFxcXCIgeT1cXFwiMHB4XFxcIiB2aWV3Qm94PVxcXCIwIDAgNTEgNTFcXFwiIGVuYWJsZS1iYWNrZ3JvdW5kPVxcXCJuZXcgMCAwIDUxIDUxXFxcIj48cGF0aCBmaWxsPVxcXCIjNDg0RjVGXFxcIiBkPVxcXCJNMTkuMSwxNC4zbDE0LjcsOS42YzAuMSwwLjEsMC4yLDAuMiwwLjIsMC40djIuNGMwLDAuMi0wLjEsMC4zLTAuMiwwLjRsLTE0LjcsOS42Yy0wLjIsMC4yLTAuNSwwLjEtMC43LTAuMWwtMS40LTIuMWMtMC4yLTAuMi0wLjEtMC41LDAuMS0wLjdsMTItNy44YzAuMy0wLjIsMC4zLTAuNiwwLTAuOGwtMTItNy44Yy0wLjItMC4yLTAuMy0wLjUtMC4xLTAuN2wxLjQtMi4xQzE4LjYsMTQuMiwxOC45LDE0LjIsMTkuMSwxNC4zelxcXCIvPjwvc3ZnPlwiLFxyXG4gXCJicmluZ19mb3J3YXJkX3JlZ3VsYXJcIjogXCI8c3ZnIHhtbG5zPVxcXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1xcXCIgdmlld0JveD1cXFwiMCAwIDUxMiA1MTJcXFwiPjxwYXRoIGZpbGw9XFxcIiMxODMxNTNcXFwiIGQ9XFxcIk0yMjQgNDY0SDQ0OEM0NTYuOCA0NjQgNDY0IDQ1Ni44IDQ2NCA0NDhWMjI0QzQ2NCAyMTUuMiA0NTYuOCAyMDggNDQ4IDIwOEgzODRWMTYwSDQ0OEM0ODMuMyAxNjAgNTEyIDE4OC43IDUxMiAyMjRWNDQ4QzUxMiA0ODMuMyA0ODMuMyA1MTIgNDQ4IDUxMkgyMjRDMTg4LjcgNTEyIDE2MCA0ODMuMyAxNjAgNDQ4VjM4NEgyMDhWNDQ4QzIwOCA0NTYuOCAyMTUuMiA0NjQgMjI0IDQ2NHpNNjQgMzUyQzI4LjY1IDM1MiAwIDMyMy4zIDAgMjg4VjY0QzAgMjguNjUgMjguNjUgMCA2NCAwSDI4OEMzMjMuMyAwIDM1MiAyOC42NSAzNTIgNjRWMjg4QzM1MiAzMjMuMyAzMjMuMyAzNTIgMjg4IDM1Mkg2NHpcXFwiLz48L3N2Zz5cIixcclxuIFwiZGVsZXRlX2xlZnRfcmVndWxhclwiOiBcIjxzdmcgeG1sbnM9XFxcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXFxcIiB2aWV3Qm94PVxcXCIwIDAgNTc2IDUxMlxcXCI+PHBhdGggZD1cXFwiTTQzMi4xIDIwOC4xTDM4NS45IDI1Nkw0MzIuMSAzMDNDNDQyLjMgMzEyLjQgNDQyLjMgMzI3LjYgNDMyLjEgMzM2LjFDNDIzLjYgMzQ2LjMgNDA4LjQgMzQ2LjMgMzk5IDMzNi4xTDM1MiAyODkuOUwzMDQuMSAzMzYuMUMyOTUuNiAzNDYuMyAyODAuNCAzNDYuMyAyNzEgMzM2LjFDMjYxLjcgMzI3LjYgMjYxLjcgMzEyLjQgMjcxIDMwM0wzMTguMSAyNTZMMjcxIDIwOC4xQzI2MS43IDE5OS42IDI2MS43IDE4NC40IDI3MSAxNzVDMjgwLjQgMTY1LjcgMjk1LjYgMTY1LjcgMzA0LjEgMTc1TDM1MiAyMjIuMUwzOTkgMTc1QzQwOC40IDE2NS43IDQyMy42IDE2NS43IDQzMi4xIDE3NUM0NDIuMyAxODQuNCA0NDIuMyAxOTkuNiA0MzIuMSAyMDguMVYyMDguMXpNNTEyIDY0QzU0Ny4zIDY0IDU3NiA5Mi42NSA1NzYgMTI4VjM4NEM1NzYgNDE5LjMgNTQ3LjMgNDQ4IDUxMiA0NDhIMjA1LjNDMTg4LjMgNDQ4IDE3MiA0NDEuMyAxNjAgNDI5LjNMOS4zNzIgMjc4LjZDMy4zNzEgMjcyLjYgMCAyNjQuNSAwIDI1NkMwIDI0Ny41IDMuMzcyIDIzOS40IDkuMzcyIDIzMy40TDE2MCA4Mi43NUMxNzIgNzAuNzQgMTg4LjMgNjQgMjA1LjMgNjRMNTEyIDY0ek01MjggMTI4QzUyOCAxMTkuMiA1MjAuOCAxMTIgNTEyIDExMkgyMDUuM0MyMDEgMTEyIDE5Ni45IDExMy43IDE5My45IDExNi43TDU0LjYzIDI1NkwxOTMuOSAzOTUuM0MxOTYuOSAzOTguMyAyMDEgNDAwIDIwNS4zIDQwMEg1MTJDNTIwLjggNDAwIDUyOCAzOTIuOCA1MjggMzg0VjEyOHpcXFwiLz48L3N2Zz5cIixcclxuIFwiZGVsaXZlcnlfdHJ1Y2tcIjogXCI8c3ZnIHhtbG5zPVxcXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1xcXCIgdmlld0JveD1cXFwiMCAwIDUwIDUwXFxcIj48cmVjdCB4PVxcXCIxNS4zNVxcXCIgeT1cXFwiMTYuNTZcXFwiIHdpZHRoPVxcXCIxNS4xNFxcXCIgaGVpZ2h0PVxcXCIxMC45NFxcXCIgdHJhbnNmb3JtPVxcXCJ0cmFuc2xhdGUoLTEuODMgMi4wOCkgcm90YXRlKC01KVxcXCIgZmlsbD1cXFwiIzQ4NGY2MFxcXCIvPjxwYXRoIGQ9XFxcIk0zOC41LDE4LjFsLTYuOS42MUwzMi40MSwyOGwtNy42My42N2EzLjc2LDMuNzYsMCwwLDEsMS40MywyLjI1bDcuMjUtLjYzQTMuODMsMy44MywwLDAsMSw0MSwyOS42bDEtLjEtLjUyLTZabS4yOSw1Ljg0LTMuOTEuMzRhLjUxLjUxLDAsMCwxLS41NS0uNDZMMzQsMjAuMWEuNDkuNDksMCwwLDEsLjQ1LS41NGwyLjI3LS4yYS41LjUsMCwwLDEsLjQ4LjI1bDIsMy41OUEuNS41LDAsMCwxLDM4Ljc5LDIzLjk0WlxcXCIgZmlsbD1cXFwiIzQ4NGY2MFxcXCIvPjxwYXRoIGQ9XFxcIk0xOS42NiwyOS4wOWEzLjgsMy44LDAsMCwwLTEsMi40NmwtLjc0LjA3LTEuODItLjk0TDE2LDI5LjQxWlxcXCIgZmlsbD1cXFwiIzQ4NGY2MFxcXCIvPjxwYXRoIGQ9XFxcIk0zNC41NiwzMC42MmEyLjc0LDIuNzQsMCwxLDAsMi40OS0zQTIuNzMsMi43MywwLDAsMCwzNC41NiwzMC42MlpcXFwiIGZpbGw9XFxcIiM0ODRmNjBcXFwiLz48cGF0aCBkPVxcXCJNMTkuNzQsMzEuOTFhMi43NCwyLjc0LDAsMSwwLDIuNDktM0EyLjc0LDIuNzQsMCwwLDAsMTkuNzQsMzEuOTFaXFxcIiBmaWxsPVxcXCIjNDg0ZjYwXFxcIi8+PHJlY3QgeD1cXFwiNy45NlxcXCIgeT1cXFwiMTcuNjNcXFwiIHdpZHRoPVxcXCI1XFxcIiBoZWlnaHQ9XFxcIjFcXFwiIHRyYW5zZm9ybT1cXFwidHJhbnNsYXRlKC0xLjU0IDAuOTgpIHJvdGF0ZSgtNSlcXFwiIGZpbGw9XFxcIiM0ODRmNjBcXFwiLz48cmVjdCB4PVxcXCIxMS4wMlxcXCIgeT1cXFwiMjkuNzFcXFwiIHdpZHRoPVxcXCIzXFxcIiBoZWlnaHQ9XFxcIjFcXFwiIHRyYW5zZm9ybT1cXFwidHJhbnNsYXRlKC0yLjU5IDEuMjEpIHJvdGF0ZSgtNSlcXFwiIGZpbGw9XFxcIiM0ODRmNjBcXFwiLz48cmVjdCB4PVxcXCI5LjQ4XFxcIiB5PVxcXCIyMy41M1xcXCIgd2lkdGg9XFxcIjRcXFwiIGhlaWdodD1cXFwiMVxcXCIgdHJhbnNmb3JtPVxcXCJtYXRyaXgoMSwgLTAuMDksIDAuMDksIDEsIC0yLjA1LCAxLjA5KVxcXCIgZmlsbD1cXFwiIzQ4NGY2MFxcXCIvPjwvc3ZnPlwiLFxyXG4gXCJlbWFpbFwiOiBcIjxzdmcgeG1sbnM9XFxcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXFxcIiB2aWV3Qm94PVxcXCIwIDAgNTAgNTBcXFwiPjxwYXRoIGQ9XFxcIk0zMS43OSwzOC40NUExNy44MiwxNy44MiwwLDAsMSwyMy44Niw0MCwxMy4wOSwxMy4wOSwwLDAsMSwxMC40MSwyNi40MkMxMC40MSwxNy42MywxNi44MywxMCwyNi41MywxMGM3LjYzLDAsMTMuMDYsNS4yMSwxMy4wNiwxMi40NiwwLDYuMzMtMy41MywxMC4zLTguMTksMTAuM2EzLjQyLDMuNDIsMCwwLDEtMy43MS0zLjMyaC0uMDhBNi41LDYuNSwwLDAsMSwyMiwzMi43NmMtMi43NSwwLTQuODItMi4xMS00LjgyLTUuNjVhOS44NSw5Ljg1LDAsMCwxLDEwLjEzLTEwLDEyLjg5LDEyLjg5LDAsMCwxLDUuMTMsMWwtMS4zLDhjLS40MywyLjU0LS4xMywzLjcxLDEuMDgsMy43NSwxLjg1LjA5LDQuMTgtMi4yOCw0LjE4LTcuMjgsMC01LjY1LTMuNjItMTAtMTAuMy0xMFMxMy43MywxNy43NiwxMy43MywyNmMwLDcuMjUsNC41NywxMS4zLDExLDExLjNBMTQuODEsMTQuODEsMCwwLDAsMzEsMzZaTTI4LDIwLjY1YTUuMzQsNS4zNCwwLDAsMC0xLjMzLS4xOGMtMi44NSwwLTUuMDksMi44MS01LjA5LDYuMTIsMCwxLjY0LjczLDIuNjgsMi4xNiwyLjY4LDEuNTksMCwzLjI3LTIsMy42Ni00LjUzWlxcXCIgZmlsbD1cXFwiIzQ4NGY2MFxcXCIvPjwvc3ZnPlwiLFxyXG4gXCJwZGZcIjogXCI8c3ZnIHhtbG5zPVxcXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1xcXCIgdmlld0JveD1cXFwiMCAwIDUwIDUwXFxcIj48cGF0aCBkPVxcXCJNMzEuNDIsNDAuMTdIMTMuODhjLTIuMTYsMC0yLjcyLS41Ni0yLjcyLTIuNzJWMTIuODhjMC0yLjE1LjU2LTIuNzEsMi43Mi0yLjcxaDExLjZsOC42Niw4Ljg4djMuNDNIMzIuOFYxOS42bC03Ljg4LTguMDloLTExYy0xLjM4LDAtMS4zOCwwLTEuMzgsMS4zN1YzNy40NWMwLDEuMzcsMCwxLjM3LDEuMzgsMS4zN0gzMS40MmMxLjM4LDAsMS4zOCwwLDEuMzgtMS4zN1YzNWgxLjM0djIuNDNDMzQuMTQsMzkuNjEsMzMuNTgsNDAuMTcsMzEuNDIsNDAuMTdaXFxcIiBmaWxsPVxcXCIjNDg0ZjYwXFxcIi8+PHBhdGggZD1cXFwiTTI3LjgzLDI2LjYzdjQuMjRoMWEzLjU3LDMuNTcsMCwwLDAsLjc4LS4wNiwxLjIyLDEuMjIsMCwwLDAsLjUyLS4yNiwxLjQ0LDEuNDQsMCwwLDAsLjM0LS42Miw0LjEzLDQuMTMsMCwwLDAsLjEzLTEuMTgsMy43OSwzLjc5LDAsMCwwLS4xMy0xLjE0LDEuNTEsMS41MSwwLDAsMC0uMzctLjYyLDEuMTQsMS4xNCwwLDAsMC0uNi0uMyw1LjkzLDUuOTMsMCwwLDAtMS4wNi0uMDZaXFxcIiBmaWxsPVxcXCIjNDg0ZjYwXFxcIi8+PHBhdGggZD1cXFwiTTIxLjg2LDI2LjYzdjEuODJoLjcxYTMuNTcsMy41NywwLDAsMCwxLS4xQS44OC44OCwwLDAsMCwyNCwyOGEuODQuODQsMCwwLDAsLjE0LS41LjguOCwwLDAsMC0uMi0uNTcuODguODgsMCwwLDAtLjUyLS4yOSw2LjM2LDYuMzYsMCwwLDAtLjkzLDBaXFxcIiBmaWxsPVxcXCIjNDg0ZjYwXFxcIi8+PHBhdGggZD1cXFwiTTE5LjE0LDI0LjI3djloMTkuN3YtOVptNi4xMiw0LjI0YTEuNjgsMS42OCwwLDAsMS0uNTQuNjMsMS45LDEuOSwwLDAsMS0uNjcuMyw2LjU3LDYuNTcsMCwwLDEtMS4zNC4xaC0uODVWMzJIMjAuNTdWMjUuNTRoMi4wN2E3Ljc1LDcuNzUsMCwwLDEsMS41NC4xLDEuNzMsMS43MywwLDAsMSwuOTMuNjMsMiwyLDAsMCwxLC4zNywxLjI1QTIsMiwwLDAsMSwyNS4yNiwyOC41MVptNi40NSwxLjY2QTIuOTEsMi45MSwwLDAsMSwzMSwzMS4zMWEyLjI4LDIuMjgsMCwwLDEtLjkxLjUxQTQsNCwwLDAsMSwyOSwzMkgyNi41NFYyNS41NEgyOC45YTQuMjEsNC4yMSwwLDAsMSwxLjIyLjEzLDIuMDgsMi4wOCwwLDAsMSwxLC41OSwyLjc5LDIuNzksMCwwLDEsLjYxLDEsNC43Niw0Ljc2LDAsMCwxLC4yMSwxLjUyQTQuMTksNC4xOSwwLDAsMSwzMS43MSwzMC4xN1ptNS43LTMuNTRoLTMuMXYxLjUySDM3djEuMDhIMzQuMzFWMzJIMzNWMjUuNTRoNC4zOVpcXFwiIGZpbGw9XFxcIiM0ODRmNjBcXFwiLz48cGF0aCBkPVxcXCJNMjUuMiwxMC44NHY2LjQ0YzAsMS43OC4yNywyLDIsMmg2LjIzWlxcXCIgZmlsbD1cXFwiIzQ4NGY2MFxcXCIvPjwvc3ZnPlwiLFxyXG4gXCJwcmludFwiOiBcIjxzdmcgeG1sbnM9XFxcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXFxcIiB2aWV3Qm94PVxcXCIwIDAgNTAgNTBcXFwiPjxwYXRoIGQ9XFxcIk0zOCwxNi41SDEyYTIsMiwwLDAsMC0yLDJ2OWEyLDIsMCwwLDAsMiwyaDJ2LTVIMzZ2NWgyYTIsMiwwLDAsMCwyLTJ2LTlBMiwyLDAsMCwwLDM4LDE2LjVaTTM3LDIxYTEuNSwxLjUsMCwxLDEsMS41LTEuNUExLjUsMS41LDAsMCwxLDM3LDIxWlxcXCIgZmlsbD1cXFwiIzQ4NGY2MFxcXCIvPjxwYXRoIGQ9XFxcIk0zNSwxMS41djVIMTV2LTVIMzVtMS0xSDE0djdIMzZ2LTdaXFxcIiBmaWxsPVxcXCIjNDg0ZjYwXFxcIi8+PHBhdGggZD1cXFwiTTM1LDI1LjV2MTNIMTV2LTEzSDM1bTEtMUgxNHYxNUgzNnYtMTVaXFxcIiBmaWxsPVxcXCIjNDg0ZjYwXFxcIi8+PHJlY3QgeD1cXFwiMTdcXFwiIHk9XFxcIjI4LjNcXFwiIHdpZHRoPVxcXCIxNlxcXCIgaGVpZ2h0PVxcXCIwLjhcXFwiIGZpbGw9XFxcIiM0ODRmNjBcXFwiLz48cmVjdCB4PVxcXCIxN1xcXCIgeT1cXFwiMzEuNVxcXCIgd2lkdGg9XFxcIjE2XFxcIiBoZWlnaHQ9XFxcIjAuOFxcXCIgZmlsbD1cXFwiIzQ4NGY2MFxcXCIvPjxyZWN0IHg9XFxcIjE3XFxcIiB5PVxcXCIzNC43XFxcIiB3aWR0aD1cXFwiMTZcXFwiIGhlaWdodD1cXFwiMC44XFxcIiBmaWxsPVxcXCIjNDg0ZjYwXFxcIi8+PC9zdmc+XCIsXHJcbiBcInNpZ25hdHVyZV9maWVsZFwiOiBcIjxzdmcgeG1sbnM9XFxcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXFxcIiB2aWV3Qm94PVxcXCIwIDAgNTAgNTBcXFwiPjxwYXRoIGQ9XFxcIk0yMC4xLDI1LjQyYTEuMSwxLjEsMCwxLDEsMS4yNywxLjQ1bC0zLjMsOS4wN0E2My4xMyw2My4xMywwLDAsMSwyOCwyOC4zbDEuMjYtMTItOC4yNi0zLTYuNzcsMTBBNjIuNCw2Mi40LDAsMCwxLDE3LDM1LjU0bDMuMy05LjA3QTEuMTIsMS4xMiwwLDAsMSwyMC4xLDI1LjQyWlxcXCIgZmlsbD1cXFwiIzQ4NGY2MFxcXCIvPjxyZWN0IHg9XFxcIjIxLjYyXFxcIiB5PVxcXCIxMS40M1xcXCIgd2lkdGg9XFxcIjguNzlcXFwiIGhlaWdodD1cXFwiMi4zNFxcXCIgdHJhbnNmb3JtPVxcXCJ0cmFuc2xhdGUoNS44OCAtOC4xNCkgcm90YXRlKDIwKVxcXCIgZmlsbD1cXFwiIzQ4NGY2MFxcXCIvPjxwYXRoIGQ9XFxcIk0xOC4xMSwzNy40OGMxLjQ0LDIuNjUsNC41OCwyLjk0LDcuMjMsMi4xLDEuNDEtLjQ0LDIuMi0xLjQ5LDMuNDQtMi4wNiwyLjQyLTEuMSwzLjEzLDEuMiw1LjM2LDEuMzcuNDIsMCwyLS42NSwxLjU0LS42OC0yLjU1LS4xOS0yLjkzLTMuMTMtNS41MS0yLjY1YTQuOSw0LjksMCwwLDAtMS42NC43MWMtLjc3LjQ5LTEuMzEsMS42Mi0yLjA3LDJsLTQuNjEuNTZBMy4zOCwzLjM4LDAsMCwxLDIwLDM3Yy0uMjItLjQxLTIsLjI4LTEuODUuNVpcXFwiIGZpbGw9XFxcIiM0ODRmNjBcXFwiLz48L3N2Zz5cIixcclxuIFwieG1sXCI6IFwiPHN2ZyB4bWxucz1cXFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcXFwiIHZpZXdCb3g9XFxcIjAgMCA1MCA1MFxcXCI+PHBhdGggZD1cXFwiTTMxLjQyLDQwLjE3SDEzLjg3Yy0yLjE1LDAtMi43MS0uNTYtMi43MS0yLjcyVjEyLjg4YzAtMi4xNS41Ni0yLjcxLDIuNzEtMi43MUgyNS40OGw4LjY2LDguODh2My40M0gzMi44VjE5LjZsLTcuODgtOC4wOUgxMy44N2MtMS4zNywwLTEuMzcsMC0xLjM3LDEuMzdWMzcuNDVjMCwxLjM3LDAsMS4zNywxLjM3LDEuMzdIMzEuNDJjMS4zOCwwLDEuMzgsMCwxLjM4LTEuMzdWMzVoMS4zNHYyLjQzQzM0LjE0LDM5LjYxLDMzLjU4LDQwLjE3LDMxLjQyLDQwLjE3WlxcXCIgZmlsbD1cXFwiIzQ4NGY2MFxcXCIvPjxwYXRoIGQ9XFxcIk0yNS4yLDEwLjg0djYuNDRjMCwxLjc4LjI3LDIsMiwyaDYuMjNaXFxcIiBmaWxsPVxcXCIjNDg0ZjYwXFxcIi8+PHBhdGggZD1cXFwiTTE5LjE0LDI0LjI3djloMTkuN3YtOVptNS4zNiw3LjQxLTEuMy0yLTEuMywySDIwLjQ4bDItMy4wNi0xLjgxLTIuOGgxLjM4bDEuMTgsMS44OCwxLjE1LTEuODhoMS4zN2wtMS44MywyLjg1LDIsM1ptNy42NywwaC0xLjFWMjcuMDdsLTEuMTYsNC42MUgyOC43N2wtMS4xNi00LjYxdjQuNjFIMjYuNTJWMjUuODJoMS43NmwxLjA3LDQsMS00aDEuNzdabTUuMzMsMEgzMy4zOFYyNS44N2gxLjE4djQuODJIMzcuNVpcXFwiIGZpbGw9XFxcIiM0ODRmNjBcXFwiLz48L3N2Zz5cIlxyXG59OyJdfQ==
@@ -0,0 +1,76 @@
1
+ import { __awaiter } from "tslib";
2
+ import { Injectable } from "@angular/core";
3
+ import { LanguageCode } from "../enum/language-code.enum";
4
+ import { StringUtils } from "../utils/string-utils";
5
+ import { Dictionary } from "../assets/dictionary/text.properties";
6
+ import * as i0 from "@angular/core";
7
+ // The localization service, providing peers with text translation functionality.
8
+ export class DictionaryService {
9
+ constructor() {
10
+ this.dictionaryUrl = "js/browser/res/dictionary/";
11
+ // private _dictionaryPromise: Map<LanguageCode, Promise<{ [key: string]: string }>> = new Map<LanguageCode, Promise<{ [key: string]: string }>>();
12
+ this._dictionaries = new Map();
13
+ // Some dictionary values have one or more '|~' texts in them, meant to be replaced with client-side given texts.
14
+ this._placeholder = "|~";
15
+ }
16
+ get language() {
17
+ return this._language;
18
+ }
19
+ set rootUrl(value) {
20
+ this._rootUrl = value;
21
+ this._dictBasePath = this._rootUrl + "/" + this.dictionaryUrl;
22
+ }
23
+ // Loads the dictionary for given language in memory.
24
+ setDictionary(language) {
25
+ return __awaiter(this, void 0, void 0, function* () {
26
+ this._language = language || LanguageCode.Dutch;
27
+ this._loadDictionary();
28
+ });
29
+ }
30
+ _loadDictionary() {
31
+ if (!this._dictionaries.has(this._language)) {
32
+ const dictionary = new Dictionary();
33
+ // eslint-disable-next-line no-magic-numbers
34
+ if (dictionary.strings[this._language.substr(0, 2).toLowerCase()] !== undefined) {
35
+ // eslint-disable-next-line no-magic-numbers
36
+ this._dictionaries.set(this._language, dictionary.strings[this._language.substr(0, 2).toLowerCase()]);
37
+ }
38
+ }
39
+ }
40
+ /**
41
+ * Returns the localized text for the given dictionary key.
42
+ * @param {string} key
43
+ * @param {boolean} [upperCaseFirst = true] False for first letter lowercase, true for first letter uppercase for returned dict val
44
+ * @param {string[]} replacementTexts Rest params for replacement of '|~' in returned dict value
45
+ * @returns {string} The translated text for given dictionary key
46
+ */
47
+ get(key, upperCaseFirst = true, ...replacementTexts) {
48
+ if (!StringUtils.IsStringWithLength(key)) {
49
+ return key || "";
50
+ }
51
+ if (this.language === undefined) {
52
+ this._language = LanguageCode.Dutch;
53
+ this._loadDictionary();
54
+ }
55
+ let text = this._dictionaries.get(this.language)[key];
56
+ text = StringUtils.IsStringWithLength(text) ? text : key;
57
+ if (upperCaseFirst) {
58
+ text = text.charAt(0).toUpperCase() + text.slice(1);
59
+ }
60
+ else {
61
+ text = text.charAt(0).toLowerCase() + text.slice(1);
62
+ }
63
+ if (replacementTexts.length > 0) {
64
+ text = StringUtils.ReplaceOccurrencesIn(text, this._placeholder, ...replacementTexts);
65
+ }
66
+ return text;
67
+ }
68
+ }
69
+ DictionaryService.ɵprov = i0.ɵɵdefineInjectable({ factory: function DictionaryService_Factory() { return new DictionaryService(); }, token: DictionaryService, providedIn: "root" });
70
+ DictionaryService.decorators = [
71
+ { type: Injectable, args: [{
72
+ providedIn: "root"
73
+ },] }
74
+ ];
75
+ DictionaryService.ctorParameters = () => [];
76
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGljdGlvbmFyeS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2hhcmVkY29tcG9uZW50cy9zcmMvbGliL3NlcnZpY2UvZGljdGlvbmFyeS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSw0QkFBNEIsQ0FBQztBQUN4RCxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sdUJBQXVCLENBQUM7QUFDbEQsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLHNDQUFzQyxDQUFDOztBQUVoRSxpRkFBaUY7QUFJakYsTUFBTSxPQUFPLGlCQUFpQjtJQXVCNUI7UUF0QmlCLGtCQUFhLEdBQVcsNEJBQTRCLENBQUM7UUFldEUsbUpBQW1KO1FBQzNJLGtCQUFhLEdBQTJDLElBQUksR0FBRyxFQUFxQyxDQUFDO1FBRzdHLGlIQUFpSDtRQUNoRyxpQkFBWSxHQUFXLElBQUksQ0FBQztJQUk3QyxDQUFDO0lBdEJELElBQVcsUUFBUTtRQUNqQixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDeEIsQ0FBQztJQUVELElBQVcsT0FBTyxDQUFDLEtBQWE7UUFDOUIsSUFBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUM7UUFDdEIsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsUUFBUSxHQUFHLEdBQUcsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDO0lBQ2hFLENBQUM7SUFpQkQscURBQXFEO0lBQ3hDLGFBQWEsQ0FBQyxRQUFnQjs7WUFDekMsSUFBSSxDQUFDLFNBQVMsR0FBRyxRQUFRLElBQUksWUFBWSxDQUFDLEtBQUssQ0FBQztZQUNoRCxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDekIsQ0FBQztLQUFBO0lBRU8sZUFBZTtRQUNyQixJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxFQUFFO1lBQzNDLE1BQU0sVUFBVSxHQUFlLElBQUksVUFBVSxFQUFFLENBQUM7WUFDaEQsNENBQTRDO1lBQzVDLElBQUksVUFBVSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsV0FBVyxFQUFFLENBQUMsS0FBSyxTQUFTLEVBQUU7Z0JBQy9FLDRDQUE0QztnQkFDNUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxVQUFVLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDLENBQUM7YUFDdkc7U0FDRjtJQUNILENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSSxHQUFHLENBQUMsR0FBVyxFQUFFLGlCQUEwQixJQUFJLEVBQUUsR0FBRyxnQkFBMEI7UUFDbkYsSUFBSSxDQUFDLFdBQVcsQ0FBQyxrQkFBa0IsQ0FBQyxHQUFHLENBQUMsRUFBRTtZQUN4QyxPQUFPLEdBQUcsSUFBSSxFQUFFLENBQUM7U0FDbEI7UUFFRCxJQUFJLElBQUksQ0FBQyxRQUFRLEtBQUssU0FBUyxFQUFFO1lBQy9CLElBQUksQ0FBQyxTQUFTLEdBQUcsWUFBWSxDQUFDLEtBQUssQ0FBQztZQUNwQyxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7U0FDeEI7UUFFRCxJQUFJLElBQUksR0FBVyxJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDOUQsSUFBSSxHQUFHLFdBQVcsQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUM7UUFFekQsSUFBSSxjQUFjLEVBQUU7WUFDbEIsSUFBSSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsV0FBVyxFQUFFLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztTQUNyRDthQUFNO1lBQ0wsSUFBSSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsV0FBVyxFQUFFLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztTQUNyRDtRQUVELElBQUksZ0JBQWdCLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtZQUMvQixJQUFJLEdBQUcsV0FBVyxDQUFDLG9CQUFvQixDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsWUFBWSxFQUFFLEdBQUcsZ0JBQWdCLENBQUMsQ0FBQztTQUN2RjtRQUVELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQzs7OztZQTlFRixVQUFVLFNBQUM7Z0JBQ1YsVUFBVSxFQUFFLE1BQU07YUFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0luamVjdGFibGV9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7TGFuZ3VhZ2VDb2RlfSBmcm9tIFwiLi4vZW51bS9sYW5ndWFnZS1jb2RlLmVudW1cIjtcclxuaW1wb3J0IHtTdHJpbmdVdGlsc30gZnJvbSBcIi4uL3V0aWxzL3N0cmluZy11dGlsc1wiO1xyXG5pbXBvcnQge0RpY3Rpb25hcnl9IGZyb20gXCIuLi9hc3NldHMvZGljdGlvbmFyeS90ZXh0LnByb3BlcnRpZXNcIjtcclxuXHJcbi8vIFRoZSBsb2NhbGl6YXRpb24gc2VydmljZSwgcHJvdmlkaW5nIHBlZXJzIHdpdGggdGV4dCB0cmFuc2xhdGlvbiBmdW5jdGlvbmFsaXR5LlxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogXCJyb290XCJcclxufSlcclxuZXhwb3J0IGNsYXNzIERpY3Rpb25hcnlTZXJ2aWNlIHtcclxuICBwcml2YXRlIHJlYWRvbmx5IGRpY3Rpb25hcnlVcmw6IHN0cmluZyA9IFwianMvYnJvd3Nlci9yZXMvZGljdGlvbmFyeS9cIjtcclxuXHJcbiAgcHVibGljIGdldCBsYW5ndWFnZSgpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMuX2xhbmd1YWdlO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHNldCByb290VXJsKHZhbHVlOiBzdHJpbmcpIHtcclxuICAgIHRoaXMuX3Jvb3RVcmwgPSB2YWx1ZTtcclxuICAgIHRoaXMuX2RpY3RCYXNlUGF0aCA9IHRoaXMuX3Jvb3RVcmwgKyBcIi9cIiArIHRoaXMuZGljdGlvbmFyeVVybDtcclxuICB9XHJcblxyXG4gIC8vIHB1YmxpYyBkaWN0aW9uYXJ5TG9hZGVkOiBTdWJqZWN0PHZvaWQ+ID0gbmV3IFN1YmplY3QoKTtcclxuXHJcbiAgcHJpdmF0ZSBfZGljdEJhc2VQYXRoOiBzdHJpbmc7XHJcbiAgcHJpdmF0ZSBfcm9vdFVybDogc3RyaW5nO1xyXG4gIC8vIHByaXZhdGUgX2RpY3Rpb25hcnlQcm9taXNlOiBNYXA8TGFuZ3VhZ2VDb2RlLCBQcm9taXNlPHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH0+PiA9IG5ldyBNYXA8TGFuZ3VhZ2VDb2RlLCBQcm9taXNlPHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH0+PigpO1xyXG4gIHByaXZhdGUgX2RpY3Rpb25hcmllczogTWFwPHN0cmluZywgeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfT4gPSBuZXcgTWFwPHN0cmluZywgeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfT4oKTtcclxuICBwcml2YXRlIF9sYW5ndWFnZTogc3RyaW5nO1xyXG5cclxuICAvLyBTb21lIGRpY3Rpb25hcnkgdmFsdWVzIGhhdmUgb25lIG9yIG1vcmUgJ3x+JyB0ZXh0cyBpbiB0aGVtLCBtZWFudCB0byBiZSByZXBsYWNlZCB3aXRoIGNsaWVudC1zaWRlIGdpdmVuIHRleHRzLlxyXG4gIHByaXZhdGUgcmVhZG9ubHkgX3BsYWNlaG9sZGVyOiBzdHJpbmcgPSBcInx+XCI7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICkge1xyXG4gIH1cclxuXHJcbiAgLy8gTG9hZHMgdGhlIGRpY3Rpb25hcnkgZm9yIGdpdmVuIGxhbmd1YWdlIGluIG1lbW9yeS5cclxuICBwdWJsaWMgYXN5bmMgc2V0RGljdGlvbmFyeShsYW5ndWFnZTogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICB0aGlzLl9sYW5ndWFnZSA9IGxhbmd1YWdlIHx8IExhbmd1YWdlQ29kZS5EdXRjaDtcclxuICAgIHRoaXMuX2xvYWREaWN0aW9uYXJ5KCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9sb2FkRGljdGlvbmFyeSgpIHtcclxuICAgIGlmICghdGhpcy5fZGljdGlvbmFyaWVzLmhhcyh0aGlzLl9sYW5ndWFnZSkpIHtcclxuICAgICAgY29uc3QgZGljdGlvbmFyeTogRGljdGlvbmFyeSA9IG5ldyBEaWN0aW9uYXJ5KCk7XHJcbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1tYWdpYy1udW1iZXJzXHJcbiAgICAgIGlmIChkaWN0aW9uYXJ5LnN0cmluZ3NbdGhpcy5fbGFuZ3VhZ2Uuc3Vic3RyKDAsIDIpLnRvTG93ZXJDYXNlKCldICE9PSB1bmRlZmluZWQpIHtcclxuICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tbWFnaWMtbnVtYmVyc1xyXG4gICAgICAgIHRoaXMuX2RpY3Rpb25hcmllcy5zZXQodGhpcy5fbGFuZ3VhZ2UsIGRpY3Rpb25hcnkuc3RyaW5nc1t0aGlzLl9sYW5ndWFnZS5zdWJzdHIoMCwgMikudG9Mb3dlckNhc2UoKV0pO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBSZXR1cm5zIHRoZSBsb2NhbGl6ZWQgdGV4dCBmb3IgdGhlIGdpdmVuIGRpY3Rpb25hcnkga2V5LlxyXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBrZXlcclxuICAgKiBAcGFyYW0ge2Jvb2xlYW59IFt1cHBlckNhc2VGaXJzdCA9IHRydWVdIEZhbHNlIGZvciBmaXJzdCBsZXR0ZXIgbG93ZXJjYXNlLCB0cnVlIGZvciBmaXJzdCBsZXR0ZXIgdXBwZXJjYXNlIGZvciByZXR1cm5lZCBkaWN0IHZhbFxyXG4gICAqIEBwYXJhbSB7c3RyaW5nW119IHJlcGxhY2VtZW50VGV4dHMgUmVzdCBwYXJhbXMgZm9yIHJlcGxhY2VtZW50IG9mICd8ficgaW4gcmV0dXJuZWQgZGljdCB2YWx1ZVxyXG4gICAqIEByZXR1cm5zIHtzdHJpbmd9IFRoZSB0cmFuc2xhdGVkIHRleHQgZm9yIGdpdmVuIGRpY3Rpb25hcnkga2V5XHJcbiAgICovXHJcbiAgcHVibGljIGdldChrZXk6IHN0cmluZywgdXBwZXJDYXNlRmlyc3Q6IGJvb2xlYW4gPSB0cnVlLCAuLi5yZXBsYWNlbWVudFRleHRzOiBzdHJpbmdbXSk6IHN0cmluZyB7XHJcbiAgICBpZiAoIVN0cmluZ1V0aWxzLklzU3RyaW5nV2l0aExlbmd0aChrZXkpKSB7XHJcbiAgICAgIHJldHVybiBrZXkgfHwgXCJcIjtcclxuICAgIH1cclxuXHJcbiAgICBpZiAodGhpcy5sYW5ndWFnZSA9PT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgIHRoaXMuX2xhbmd1YWdlID0gTGFuZ3VhZ2VDb2RlLkR1dGNoO1xyXG4gICAgICB0aGlzLl9sb2FkRGljdGlvbmFyeSgpO1xyXG4gICAgfVxyXG5cclxuICAgIGxldCB0ZXh0OiBzdHJpbmcgPSB0aGlzLl9kaWN0aW9uYXJpZXMuZ2V0KHRoaXMubGFuZ3VhZ2UpW2tleV07XHJcbiAgICB0ZXh0ID0gU3RyaW5nVXRpbHMuSXNTdHJpbmdXaXRoTGVuZ3RoKHRleHQpID8gdGV4dCA6IGtleTtcclxuXHJcbiAgICBpZiAodXBwZXJDYXNlRmlyc3QpIHtcclxuICAgICAgdGV4dCA9IHRleHQuY2hhckF0KDApLnRvVXBwZXJDYXNlKCkgKyB0ZXh0LnNsaWNlKDEpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGV4dCA9IHRleHQuY2hhckF0KDApLnRvTG93ZXJDYXNlKCkgKyB0ZXh0LnNsaWNlKDEpO1xyXG4gICAgfVxyXG5cclxuICAgIGlmIChyZXBsYWNlbWVudFRleHRzLmxlbmd0aCA+IDApIHtcclxuICAgICAgdGV4dCA9IFN0cmluZ1V0aWxzLlJlcGxhY2VPY2N1cnJlbmNlc0luKHRleHQsIHRoaXMuX3BsYWNlaG9sZGVyLCAuLi5yZXBsYWNlbWVudFRleHRzKTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gdGV4dDtcclxuICB9XHJcbn1cclxuIl19
@@ -0,0 +1,71 @@
1
+ import { __awaiter } from "tslib";
2
+ import { Injectable } from "@angular/core";
3
+ import { BehaviorSubject } from "rxjs";
4
+ import { DictionaryService } from "./dictionary.service";
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "./dictionary.service";
7
+ export class OptionsService {
8
+ constructor(_dictionary) {
9
+ this._dictionary = _dictionary;
10
+ this.optionsInitialized = new BehaviorSubject(false);
11
+ this.optionsLoaded = new BehaviorSubject(false);
12
+ }
13
+ set options(value) {
14
+ this._options = value;
15
+ }
16
+ get options() {
17
+ return this._options;
18
+ }
19
+ createSettingsFromObject(obj) {
20
+ return __awaiter(this, void 0, void 0, function* () {
21
+ this.options = new Object();
22
+ if (obj.hasOwnProperty("url")) {
23
+ this.options.url = obj["url"];
24
+ }
25
+ if (obj.hasOwnProperty("schema")) {
26
+ this.options.schema = obj["schema"];
27
+ }
28
+ if (obj.hasOwnProperty("version")) {
29
+ this.options.version = obj["version"];
30
+ }
31
+ if (obj.hasOwnProperty("languageCode")) {
32
+ this.options.languageCode = obj["languageCode"];
33
+ }
34
+ else {
35
+ this.options.languageCode = "NL";
36
+ }
37
+ if (obj.hasOwnProperty("username")) {
38
+ this.options.username = obj["username"];
39
+ }
40
+ if (obj.hasOwnProperty("password")) {
41
+ this.options.password = obj["password"];
42
+ }
43
+ if (obj.hasOwnProperty("session")) {
44
+ this.options.session = obj["session"];
45
+ }
46
+ if (obj.hasOwnProperty("useLoginEncryption")) {
47
+ this.options.useLoginEncryption = obj["useLoginEncryption"];
48
+ }
49
+ this.optionsLoaded.next(true);
50
+ });
51
+ }
52
+ initialize(options) {
53
+ return __awaiter(this, void 0, void 0, function* () {
54
+ if (options) {
55
+ yield this.createSettingsFromObject(options);
56
+ yield this._dictionary.setDictionary(this.options.languageCode);
57
+ this.optionsInitialized.next(true);
58
+ }
59
+ });
60
+ }
61
+ }
62
+ OptionsService.ɵprov = i0.ɵɵdefineInjectable({ factory: function OptionsService_Factory() { return new OptionsService(i0.ɵɵinject(i1.DictionaryService)); }, token: OptionsService, providedIn: "root" });
63
+ OptionsService.decorators = [
64
+ { type: Injectable, args: [{
65
+ providedIn: "root"
66
+ },] }
67
+ ];
68
+ OptionsService.ctorParameters = () => [
69
+ { type: DictionaryService }
70
+ ];
71
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3B0aW9ucy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2hhcmVkY29tcG9uZW50cy9zcmMvbGliL3NlcnZpY2Uvb3B0aW9ucy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDckMsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sc0JBQXNCLENBQUM7OztBQUt2RCxNQUFNLE9BQU8sY0FBYztJQWdCekIsWUFBb0IsV0FBOEI7UUFBOUIsZ0JBQVcsR0FBWCxXQUFXLENBQW1CO1FBZDNDLHVCQUFrQixHQUE2QixJQUFJLGVBQWUsQ0FBVSxLQUFLLENBQUMsQ0FBQztRQVVuRixrQkFBYSxHQUE2QixJQUFJLGVBQWUsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUs1RSxDQUFDO0lBYkQsSUFBVyxPQUFPLENBQUMsS0FBVTtRQUMzQixJQUFJLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQztJQUN4QixDQUFDO0lBRUQsSUFBVyxPQUFPO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN2QixDQUFDO0lBU1ksd0JBQXdCLENBQUMsR0FBUTs7WUFDNUMsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLE1BQU0sRUFBRSxDQUFDO1lBQzVCLElBQUksR0FBRyxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsRUFBRTtnQkFDN0IsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDO2FBQy9CO1lBQ0QsSUFBSSxHQUFHLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxFQUFFO2dCQUNoQyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sR0FBRyxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUM7YUFDckM7WUFDRCxJQUFJLEdBQUcsQ0FBQyxjQUFjLENBQUMsU0FBUyxDQUFDLEVBQUU7Z0JBQ2pDLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxHQUFHLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQzthQUN2QztZQUNELElBQUksR0FBRyxDQUFDLGNBQWMsQ0FBQyxjQUFjLENBQUMsRUFBRTtnQkFDdEMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxZQUFZLEdBQUcsR0FBRyxDQUFDLGNBQWMsQ0FBQyxDQUFDO2FBQ2pEO2lCQUFNO2dCQUNMLElBQUksQ0FBQyxPQUFPLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQzthQUNsQztZQUNELElBQUksR0FBRyxDQUFDLGNBQWMsQ0FBQyxVQUFVLENBQUMsRUFBRTtnQkFDbEMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLEdBQUcsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFDO2FBQ3pDO1lBQ0QsSUFBSSxHQUFHLENBQUMsY0FBYyxDQUFDLFVBQVUsQ0FBQyxFQUFFO2dCQUNsQyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsR0FBRyxHQUFHLENBQUMsVUFBVSxDQUFDLENBQUM7YUFDekM7WUFDRCxJQUFJLEdBQUcsQ0FBQyxjQUFjLENBQUMsU0FBUyxDQUFDLEVBQUU7Z0JBQ2pDLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxHQUFHLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQzthQUN2QztZQUNELElBQUksR0FBRyxDQUFDLGNBQWMsQ0FBQyxvQkFBb0IsQ0FBQyxFQUFFO2dCQUM1QyxJQUFJLENBQUMsT0FBTyxDQUFDLGtCQUFrQixHQUFHLEdBQUcsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO2FBQzdEO1lBRUQsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDaEMsQ0FBQztLQUFBO0lBRVksVUFBVSxDQUFDLE9BQVk7O1lBQ2xDLElBQUksT0FBTyxFQUFFO2dCQUNYLE1BQU0sSUFBSSxDQUFDLHdCQUF3QixDQUFDLE9BQU8sQ0FBQyxDQUFDO2dCQUM3QyxNQUFNLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLENBQUM7Z0JBQ2hFLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7YUFDcEM7UUFDSCxDQUFDO0tBQUE7Ozs7WUE1REYsVUFBVSxTQUFDO2dCQUNWLFVBQVUsRUFBRSxNQUFNO2FBQ25COzs7WUFKTyxpQkFBaUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0luamVjdGFibGV9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7QmVoYXZpb3JTdWJqZWN0fSBmcm9tIFwicnhqc1wiO1xyXG5pbXBvcnQge0RpY3Rpb25hcnlTZXJ2aWNlfSBmcm9tIFwiLi9kaWN0aW9uYXJ5LnNlcnZpY2VcIjtcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiBcInJvb3RcIlxyXG59KVxyXG5leHBvcnQgY2xhc3MgT3B0aW9uc1NlcnZpY2Uge1xyXG5cclxuICBwdWJsaWMgb3B0aW9uc0luaXRpYWxpemVkOiBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcclxuXHJcbiAgcHVibGljIHNldCBvcHRpb25zKHZhbHVlOiBhbnkpIHtcclxuICAgIHRoaXMuX29wdGlvbnMgPSB2YWx1ZTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgb3B0aW9ucygpOiBhbnkge1xyXG4gICAgcmV0dXJuIHRoaXMuX29wdGlvbnM7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgb3B0aW9uc0xvYWRlZDogQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+ID0gbmV3IEJlaGF2aW9yU3ViamVjdChmYWxzZSk7XHJcblxyXG4gIHByaXZhdGUgX29wdGlvbnM6IGFueTtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBfZGljdGlvbmFyeTogRGljdGlvbmFyeVNlcnZpY2UpIHtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBhc3luYyBjcmVhdGVTZXR0aW5nc0Zyb21PYmplY3Qob2JqOiBhbnkpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIHRoaXMub3B0aW9ucyA9IG5ldyBPYmplY3QoKTtcclxuICAgIGlmIChvYmouaGFzT3duUHJvcGVydHkoXCJ1cmxcIikpIHtcclxuICAgICAgdGhpcy5vcHRpb25zLnVybCA9IG9ialtcInVybFwiXTtcclxuICAgIH1cclxuICAgIGlmIChvYmouaGFzT3duUHJvcGVydHkoXCJzY2hlbWFcIikpIHtcclxuICAgICAgdGhpcy5vcHRpb25zLnNjaGVtYSA9IG9ialtcInNjaGVtYVwiXTtcclxuICAgIH1cclxuICAgIGlmIChvYmouaGFzT3duUHJvcGVydHkoXCJ2ZXJzaW9uXCIpKSB7XHJcbiAgICAgIHRoaXMub3B0aW9ucy52ZXJzaW9uID0gb2JqW1widmVyc2lvblwiXTtcclxuICAgIH1cclxuICAgIGlmIChvYmouaGFzT3duUHJvcGVydHkoXCJsYW5ndWFnZUNvZGVcIikpIHtcclxuICAgICAgdGhpcy5vcHRpb25zLmxhbmd1YWdlQ29kZSA9IG9ialtcImxhbmd1YWdlQ29kZVwiXTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMub3B0aW9ucy5sYW5ndWFnZUNvZGUgPSBcIk5MXCI7XHJcbiAgICB9XHJcbiAgICBpZiAob2JqLmhhc093blByb3BlcnR5KFwidXNlcm5hbWVcIikpIHtcclxuICAgICAgdGhpcy5vcHRpb25zLnVzZXJuYW1lID0gb2JqW1widXNlcm5hbWVcIl07XHJcbiAgICB9XHJcbiAgICBpZiAob2JqLmhhc093blByb3BlcnR5KFwicGFzc3dvcmRcIikpIHtcclxuICAgICAgdGhpcy5vcHRpb25zLnBhc3N3b3JkID0gb2JqW1wicGFzc3dvcmRcIl07XHJcbiAgICB9XHJcbiAgICBpZiAob2JqLmhhc093blByb3BlcnR5KFwic2Vzc2lvblwiKSkge1xyXG4gICAgICB0aGlzLm9wdGlvbnMuc2Vzc2lvbiA9IG9ialtcInNlc3Npb25cIl07XHJcbiAgICB9XHJcbiAgICBpZiAob2JqLmhhc093blByb3BlcnR5KFwidXNlTG9naW5FbmNyeXB0aW9uXCIpKSB7XHJcbiAgICAgIHRoaXMub3B0aW9ucy51c2VMb2dpbkVuY3J5cHRpb24gPSBvYmpbXCJ1c2VMb2dpbkVuY3J5cHRpb25cIl07XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5vcHRpb25zTG9hZGVkLm5leHQodHJ1ZSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYXN5bmMgaW5pdGlhbGl6ZShvcHRpb25zOiBhbnkpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIGlmIChvcHRpb25zKSB7XHJcbiAgICAgIGF3YWl0IHRoaXMuY3JlYXRlU2V0dGluZ3NGcm9tT2JqZWN0KG9wdGlvbnMpO1xyXG4gICAgICBhd2FpdCB0aGlzLl9kaWN0aW9uYXJ5LnNldERpY3Rpb25hcnkodGhpcy5vcHRpb25zLmxhbmd1YWdlQ29kZSk7XHJcbiAgICAgIHRoaXMub3B0aW9uc0luaXRpYWxpemVkLm5leHQodHJ1ZSk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,262 @@
1
+ import { __awaiter } from "tslib";
2
+ import { Articles } from "@colijnit/articleapi/build/articles";
3
+ import { Sharedapi } from "@colijnit/sharedapi/build/sharedapi";
4
+ import { Printer } from "@colijnit/sharedapi/build/model/report/printer.bo";
5
+ import { Injectable } from "@angular/core";
6
+ import { BusinessObjectFactory } from "../factory/business-object-factory";
7
+ import { PrintStockStickers } from "@colijnit/sharedapi/build/model/print-stock-stickers";
8
+ import { ArticleStock as ArticleStockBo } from "@colijnit/articleapi/build/model/article-stock.bo";
9
+ import { StockHistoryBo } from "@colijnit/articleapi/build/model/stock-history.bo";
10
+ import { StockStickersPrintLayoutsBo } from "@colijnit/sharedapi/build/model/report/stock-stickers-print-layouts.bo";
11
+ import { ArticleDetailsBo } from "@colijnit/articleapi/build/model/article-details.bo";
12
+ import { StockStatus } from "@colijnit/articleapi/build/model/stock-status.bo";
13
+ import { StockManagementWarehouses } from "@colijnit/articleapi/build/model/stock-management-warehouses.bo";
14
+ import { StockLocation } from "@colijnit/articleapi/build/model/stock-location.bo";
15
+ import { ArticleTransaction as ArticleTransactionBo } from "@colijnit/articleapi/build/model/article-transaction.bo";
16
+ import { OptionsService } from "./options.service";
17
+ import * as i0 from "@angular/core";
18
+ import * as i1 from "./options.service";
19
+ export class SharedConnectorService {
20
+ constructor(_optionsService) {
21
+ this._optionsService = _optionsService;
22
+ this._boFactory = new BusinessObjectFactory();
23
+ }
24
+ connect() {
25
+ return __awaiter(this, void 0, void 0, function* () {
26
+ this.connector = new Articles(this._optionsService.options);
27
+ this.sharedConnector = new Sharedapi(this._optionsService.options);
28
+ this._optionsService.options.session = this.connector.session && this.sharedConnector.session;
29
+ });
30
+ }
31
+ getAllPrinters(showAll = true) {
32
+ return __awaiter(this, void 0, void 0, function* () {
33
+ return new Promise((resolve, reject) => {
34
+ return this.sharedConnector.listAllPrinters(showAll).then((result) => {
35
+ if (result.validationResult && result.validationResult.success) {
36
+ if (result.resultObject) {
37
+ resolve(this._boFactory.makeBOArrayFromRawBackendDataArray(Printer, result.resultObject));
38
+ }
39
+ }
40
+ else {
41
+ reject(result.validationMessagesAsString);
42
+ }
43
+ });
44
+ });
45
+ });
46
+ }
47
+ getPrintStockStickers(request) {
48
+ return __awaiter(this, void 0, void 0, function* () {
49
+ return new Promise((resolve, reject) => {
50
+ return this.sharedConnector.getPrintStockStickers(request).then((result) => {
51
+ if (result.validationResult && result.validationResult.success) {
52
+ if (result.resultObject) {
53
+ resolve(this._boFactory.makeWithRawBackendData(PrintStockStickers, result.resultObject));
54
+ }
55
+ }
56
+ else {
57
+ reject(result.validationMessagesAsString);
58
+ }
59
+ });
60
+ });
61
+ });
62
+ }
63
+ // public async getStockStickerPrintLayouts(stockStickersPrintLayoutsBo: StockStickersPrintLayoutsBo): Promise<StockStickersPrintLayoutsBo[]> {
64
+ // return new Promise((resolve: Function, reject: Function) => {
65
+ // return this.sharedConnector.getStockStickerPrintLayouts(stockStickersPrintLayoutsBo).then((result: DataServiceResponse) => {
66
+ // if (result.validationResult && result.validationResult.success) {
67
+ // if (result.resultObject) {
68
+ // resolve(this._boFactory.makeWithRawBackendData(stockStickersPrintLayoutsBo, result.resultObject));
69
+ // }
70
+ // } else {
71
+ // reject(result.validationMessagesAsString);
72
+ // }
73
+ // })
74
+ // })
75
+ // }
76
+ getArticleFullObject(goodId) {
77
+ return __awaiter(this, void 0, void 0, function* () {
78
+ return new Promise((resolve, reject) => {
79
+ return this.connector.getArticleFullObject(goodId).then((result) => {
80
+ // if (result.validationResult && result.validationResult.success) {
81
+ // if (result.resultObject) {
82
+ // resolve(this._boFactory.makeWithRawBackendData(ArticleExtended, result.resultObject));
83
+ // }
84
+ // } else {
85
+ // reject(result.validationMessagesAsString);
86
+ // }
87
+ });
88
+ });
89
+ });
90
+ }
91
+ getStockHistory(request) {
92
+ return __awaiter(this, void 0, void 0, function* () {
93
+ return new Promise((resolve, reject) => {
94
+ return this.connector.getStockHistory(request).then((result) => {
95
+ if (result.validationResult && result.validationResult.success) {
96
+ if (result.resultObject && result.resultObject.hasOwnProperty("stockHistory")) {
97
+ resolve(this._boFactory.makeBOArrayFromRawBackendDataArray(StockHistoryBo, result.resultObject.stockHistory));
98
+ }
99
+ }
100
+ else {
101
+ reject(result.validationMessagesAsString);
102
+ }
103
+ });
104
+ });
105
+ });
106
+ }
107
+ getStockInformation(data) {
108
+ return __awaiter(this, void 0, void 0, function* () {
109
+ return new Promise((resolve, reject) => {
110
+ return this.connector.getStockInformation(data).then((result) => {
111
+ if (result.validationResult && result.validationResult.success) {
112
+ if (result.resultObjects) {
113
+ resolve(this._boFactory.makeBOArrayFromRawBackendDataArray(ArticleStockBo, result.resultObjects));
114
+ }
115
+ }
116
+ else {
117
+ reject(result.validationMessagesAsString);
118
+ }
119
+ });
120
+ });
121
+ });
122
+ }
123
+ getStockManagementWarehouses() {
124
+ return __awaiter(this, void 0, void 0, function* () {
125
+ return new Promise((resolve, reject) => {
126
+ return this.connector.getStockManagementWarehouses().then((result) => {
127
+ if (result.validationResult && result.validationResult.success) {
128
+ if (result.resultObjects) {
129
+ resolve(this._boFactory.makeBOArrayFromRawBackendDataArray(StockManagementWarehouses, result.resultObjects));
130
+ }
131
+ }
132
+ else {
133
+ reject(result.validationMessagesAsString);
134
+ }
135
+ });
136
+ });
137
+ });
138
+ }
139
+ getStockManagementLocations(warehouseNo) {
140
+ return __awaiter(this, void 0, void 0, function* () {
141
+ return new Promise((resolve, reject) => {
142
+ return this.connector.getStockManagementLocations(warehouseNo).then((result) => {
143
+ if (result.validationResult && result.validationResult.success) {
144
+ if (result.resultObjects) {
145
+ resolve(this._boFactory.makeBOArrayFromRawBackendDataArray(StockLocation, result.resultObjects));
146
+ }
147
+ }
148
+ else {
149
+ reject(result.validationMessagesAsString);
150
+ }
151
+ });
152
+ });
153
+ });
154
+ }
155
+ getArticleDetails(data) {
156
+ return __awaiter(this, void 0, void 0, function* () {
157
+ return new Promise((resolve, reject) => {
158
+ return this.connector.getArticleDetails(data).then((result) => {
159
+ if (result.validationResult && result.validationResult.success) {
160
+ if (result.resultObjects) {
161
+ resolve(this._boFactory.makeBOArrayFromRawBackendDataArray(ArticleDetailsBo, result.resultObjects));
162
+ }
163
+ }
164
+ else {
165
+ reject(result.validationMessagesAsString);
166
+ }
167
+ });
168
+ });
169
+ });
170
+ }
171
+ updateArticleDetails(data) {
172
+ return __awaiter(this, void 0, void 0, function* () {
173
+ return new Promise((resolve, reject) => {
174
+ return this.connector.updateArticleDetails(data).then((result) => __awaiter(this, void 0, void 0, function* () {
175
+ if (result.validationResult && result.validationResult.success) {
176
+ yield this.commit();
177
+ resolve(true);
178
+ }
179
+ else {
180
+ reject(result.validationMessagesAsString);
181
+ }
182
+ }));
183
+ });
184
+ });
185
+ }
186
+ lockArticleDetails(data) {
187
+ return __awaiter(this, void 0, void 0, function* () {
188
+ return new Promise((resolve, reject) => {
189
+ return this.connector.lockArticleDetails(data).then((result) => __awaiter(this, void 0, void 0, function* () {
190
+ if (result.validationResult && result.validationResult.success) {
191
+ yield this.commit();
192
+ resolve(true);
193
+ }
194
+ else {
195
+ reject(result.validationMessagesAsString);
196
+ }
197
+ }));
198
+ });
199
+ });
200
+ }
201
+ getStockStatus() {
202
+ return __awaiter(this, void 0, void 0, function* () {
203
+ return new Promise((resolve, reject) => {
204
+ return this.connector.getStockState().then((result) => {
205
+ if (result.validationResult && result.validationResult.success) {
206
+ if (result.resultObjects) {
207
+ resolve(this._boFactory.makeBOArrayFromRawBackendDataArray(StockStatus, result.resultObjects));
208
+ }
209
+ }
210
+ else {
211
+ reject(result.validationMessagesAsString);
212
+ }
213
+ });
214
+ });
215
+ });
216
+ }
217
+ getStockStickerTemplates(data) {
218
+ return __awaiter(this, void 0, void 0, function* () {
219
+ return new Promise((resolve, reject) => {
220
+ return this.sharedConnector.getStockStickerPrintLayouts(data).then((result) => {
221
+ if (result.validationResult && result.validationResult.success) {
222
+ if (result.resultObject) {
223
+ resolve(this._boFactory.makeBOArrayFromRawBackendDataArray(StockStickersPrintLayoutsBo, result.resultObject));
224
+ }
225
+ }
226
+ else {
227
+ reject(result.validationMessagesAsString);
228
+ }
229
+ });
230
+ });
231
+ });
232
+ }
233
+ getArticleTransaction(data) {
234
+ return __awaiter(this, void 0, void 0, function* () {
235
+ return new Promise((resolve, reject) => {
236
+ return this.connector.getArticleTransaction(data).then((result) => {
237
+ if (result.validationResult && result.validationResult.success) {
238
+ if (result.resultObjects) {
239
+ resolve(this._boFactory.makeBOArrayFromRawBackendDataArray(ArticleTransactionBo, result.resultObjects));
240
+ }
241
+ }
242
+ else {
243
+ reject(result.validationMessagesAsString);
244
+ }
245
+ });
246
+ });
247
+ });
248
+ }
249
+ commit() {
250
+ return this.connector.commit();
251
+ }
252
+ }
253
+ SharedConnectorService.ɵprov = i0.ɵɵdefineInjectable({ factory: function SharedConnectorService_Factory() { return new SharedConnectorService(i0.ɵɵinject(i1.OptionsService)); }, token: SharedConnectorService, providedIn: "root" });
254
+ SharedConnectorService.decorators = [
255
+ { type: Injectable, args: [{
256
+ providedIn: "root"
257
+ },] }
258
+ ];
259
+ SharedConnectorService.ctorParameters = () => [
260
+ { type: OptionsService }
261
+ ];
262
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hhcmVkLWNvbm5lY3Rvci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2hhcmVkY29tcG9uZW50cy9zcmMvbGliL3NlcnZpY2Uvc2hhcmVkLWNvbm5lY3Rvci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0scUNBQXFDLENBQUM7QUFDN0QsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBQzlELE9BQU8sRUFBQyxPQUFPLEVBQUMsTUFBTSxtREFBbUQsQ0FBQztBQUMxRSxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBSXpDLE9BQU8sRUFBQyxxQkFBcUIsRUFBQyxNQUFNLG9DQUFvQyxDQUFDO0FBQ3pFLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLHNEQUFzRCxDQUFDO0FBRXhGLE9BQU8sRUFBQyxZQUFZLElBQUksY0FBYyxFQUFDLE1BQU0sbURBQW1ELENBQUM7QUFFakcsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLG1EQUFtRCxDQUFDO0FBQ2pGLE9BQU8sRUFBQywyQkFBMkIsRUFBQyxNQUFNLHdFQUF3RSxDQUFDO0FBRW5ILE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLHFEQUFxRCxDQUFDO0FBQ3JGLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxrREFBa0QsQ0FBQztBQUM3RSxPQUFPLEVBQUMseUJBQXlCLEVBQUMsTUFBTSxpRUFBaUUsQ0FBQztBQUMxRyxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sb0RBQW9ELENBQUM7QUFFakYsT0FBTyxFQUFDLGtCQUFrQixJQUFJLG9CQUFvQixFQUFDLE1BQU0seURBQXlELENBQUM7QUFDbkgsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLG1CQUFtQixDQUFDOzs7QUFPakQsTUFBTSxPQUFPLHNCQUFzQjtJQU9qQyxZQUNV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QUFPLEVBQUU7d0JBQzlELElBQUksTUFBTSxDQUFDLGFBQWEsRUFBRTs0QkFDeEIsT0FBTyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsa0NBQWtDLENBQUMsb0JBQW9CLEVBQUUsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUM7eUJBQ3pHO3FCQUNGO3lCQUFNO3dCQUNMLE1BQU0sQ0FBQyxNQUFNLENBQUMsMEJBQTBCLENBQUMsQ0FBQztxQkFDM0M7Z0JBQ0gsQ0FBQyxDQUFDLENBQUM7WUFDTCxDQUFDLENBQUMsQ0FBQztRQUNMLENBQUM7S0FBQTtJQUVNLE1BQU07UUFDWCxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxFQUFFLENBQUM7SUFDakMsQ0FBQzs7OztZQTFORixVQUFVLFNBQUM7Z0JBQ1YsVUFBVSxFQUFFLE1BQU07YUFDbkI7OztZQUxPLGNBQWMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0FydGljbGVzfSBmcm9tIFwiQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvYXJ0aWNsZXNcIjtcclxuaW1wb3J0IHtTaGFyZWRhcGl9IGZyb20gXCJAY29saWpuaXQvc2hhcmVkYXBpL2J1aWxkL3NoYXJlZGFwaVwiO1xyXG5pbXBvcnQge1ByaW50ZXJ9IGZyb20gXCJAY29saWpuaXQvc2hhcmVkYXBpL2J1aWxkL21vZGVsL3JlcG9ydC9wcmludGVyLmJvXCI7XHJcbmltcG9ydCB7SW5qZWN0YWJsZX0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHtBcnRpY2xlRXh0ZW5kZWR9IGZyb20gXCJAY29saWpuaXQvYXJ0aWNsZWFwaS9idWlsZC9tb2RlbC9hcnRpY2xlLWV4dGVuZGVkLmJvXCI7XHJcbmltcG9ydCB7RGF0YVNlcnZpY2VSZXNwb25zZURhdGF9IGZyb20gXCJAY29saWpuaXQvYXJ0aWNsZWFwaS9idWlsZC9tb2RlbC9kYXRhLXNlcnZpY2UtcmVzcG9uc2UtZGF0YVwiO1xyXG5pbXBvcnQge0RhdGFTZXJ2aWNlUmVzcG9uc2VEYXRhIGFzIERhdGFTZXJ2aWNlUmVzcG9uc2V9IGZyb20gXCJAY29saWpuaXQvc2hhcmVkYXBpL2J1aWxkL21vZGVsL2RhdGEtc2VydmljZS1yZXNwb25zZS1kYXRhXCI7XHJcbmltcG9ydCB7QnVzaW5lc3NPYmplY3RGYWN0b3J5fSBmcm9tIFwiLi4vZmFjdG9yeS9idXNpbmVzcy1vYmplY3QtZmFjdG9yeVwiO1xyXG5pbXBvcnQge1ByaW50U3RvY2tTdGlja2Vyc30gZnJvbSBcIkBjb2xpam5pdC9zaGFyZWRhcGkvYnVpbGQvbW9kZWwvcHJpbnQtc3RvY2stc3RpY2tlcnNcIjtcclxuaW1wb3J0IHtHZXRTdG9ja0hpc3RvcnlSZXF1ZXN0fSBmcm9tIFwiQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvZ2V0LXN0b2NrLWhpc3RvcnktcmVxdWVzdFwiO1xyXG5pbXBvcnQge0FydGljbGVTdG9jayBhcyBBcnRpY2xlU3RvY2tCb30gZnJvbSBcIkBjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL2FydGljbGUtc3RvY2suYm9cIjtcclxuaW1wb3J0IHtBcnRpY2xlU3RvY2t9IGZyb20gXCJAY29saWpuaXQvYXJ0aWNsZWFwaS9idWlsZC9tb2RlbC9hcnRpY2xlLXN0b2NrXCI7XHJcbmltcG9ydCB7U3RvY2tIaXN0b3J5Qm99IGZyb20gXCJAY29saWpuaXQvYXJ0aWNsZWFwaS9idWlsZC9tb2RlbC9zdG9jay1oaXN0b3J5LmJvXCI7XHJcbmltcG9ydCB7U3RvY2tTdGlja2Vyc1ByaW50TGF5b3V0c0JvfSBmcm9tIFwiQGNvbGlqbml0L3NoYXJlZGFwaS9idWlsZC9tb2RlbC9yZXBvcnQvc3RvY2stc3RpY2tlcnMtcHJpbnQtbGF5b3V0cy5ib1wiO1xyXG5pbXBvcnQge0FydGljbGVTdG9ja01hbmFnZW1lbnR9IGZyb20gXCJAY29saWpuaXQvYXJ0aWNsZWFwaS9idWlsZC9tb2RlbC9hcnRpY2xlLXN0b2NrLW1hbmFnZW1lbnRcIjtcclxuaW1wb3J0IHtBcnRpY2xlRGV0YWlsc0JvfSBmcm9tIFwiQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvYXJ0aWNsZS1kZXRhaWxzLmJvXCI7XHJcbmltcG9ydCB7U3RvY2tTdGF0dXN9IGZyb20gXCJAY29saWpuaXQvYXJ0aWNsZWFwaS9idWlsZC9tb2RlbC9zdG9jay1zdGF0dXMuYm9cIjtcclxuaW1wb3J0IHtTdG9ja01hbmFnZW1lbnRXYXJlaG91c2VzfSBmcm9tIFwiQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvc3RvY2stbWFuYWdlbWVudC13YXJlaG91c2VzLmJvXCI7XHJcbmltcG9ydCB7U3RvY2tMb2NhdGlvbn0gZnJvbSBcIkBjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL3N0b2NrLWxvY2F0aW9uLmJvXCI7XHJcbmltcG9ydCB7QXJ0aWNsZVRyYW5zYWN0aW9ufSBmcm9tIFwiQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvYXJ0aWNsZS10cmFuc2FjdGlvblwiO1xyXG5pbXBvcnQge0FydGljbGVUcmFuc2FjdGlvbiBhcyBBcnRpY2xlVHJhbnNhY3Rpb25Cb30gZnJvbSBcIkBjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL2FydGljbGUtdHJhbnNhY3Rpb24uYm9cIjtcclxuaW1wb3J0IHtPcHRpb25zU2VydmljZX0gZnJvbSBcIi4vb3B0aW9ucy5zZXJ2aWNlXCI7XHJcblxyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46IFwicm9vdFwiXHJcbn0pXHJcblxyXG5leHBvcnQgY2xhc3MgU2hhcmVkQ29ubmVjdG9yU2VydmljZSB7XHJcbiAgcHVibGljIGNvbm5lY3RvcjogQXJ0aWNsZXM7XHJcbiAgcHVibGljIHNoYXJlZENvbm5lY3RvcjogU2hhcmVkYXBpO1xyXG5cclxuICBwcml2YXRlIF9ib0ZhY3Rvcnk6IEJ1c2luZXNzT2JqZWN0RmFjdG9yeSA9IG5ldyBCdXNpbmVzc09iamVjdEZhY3RvcnkoKTtcclxuXHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBfb3B0aW9uc1NlcnZpY2U6IE9wdGlvbnNTZXJ2aWNlLFxyXG4gICkge1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGFzeW5jIGNvbm5lY3QoKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICB0aGlzLmNvbm5lY3RvciA9IG5ldyBBcnRpY2xlcyh0aGlzLl9vcHRpb25zU2VydmljZS5vcHRpb25zKTtcclxuICAgIHRoaXMuc2hhcmVkQ29ubmVjdG9yID0gbmV3IFNoYXJlZGFwaSh0aGlzLl9vcHRpb25zU2VydmljZS5vcHRpb25zKTtcclxuICAgIHRoaXMuX29wdGlvbnNTZXJ2aWNlLm9wdGlvbnMuc2Vzc2lvbiA9IHRoaXMuY29ubmVjdG9yLnNlc3Npb24gJiYgdGhpcy5zaGFyZWRDb25uZWN0b3Iuc2Vzc2lvbjtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBhc3luYyBnZXRBbGxQcmludGVycyhzaG93QWxsOiBib29sZWFuID0gdHJ1ZSk6IFByb21pc2U8UHJpbnRlcltdPiB7XHJcbiAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmU6IEZ1bmN0aW9uLCByZWplY3Q6IEZ1bmN0aW9uKSA9PiB7XHJcbiAgICAgIHJldHVybiB0aGlzLnNoYXJlZENvbm5lY3Rvci5saXN0QWxsUHJpbnRlcnMoc2hvd0FsbCkudGhlbigocmVzdWx0OiBEYXRhU2VydmljZVJlc3BvbnNlKSA9PiB7XHJcbiAgICAgICAgaWYgKHJlc3VsdC52YWxpZGF0aW9uUmVzdWx0ICYmIHJlc3VsdC52YWxpZGF0aW9uUmVzdWx0LnN1Y2Nlc3MpIHtcclxuICAgICAgICAgIGlmIChyZXN1bHQucmVzdWx0T2JqZWN0KSB7XHJcbiAgICAgICAgICAgIHJlc29sdmUodGhpcy5fYm9GYWN0b3J5Lm1ha2VCT0FycmF5RnJvbVJhd0JhY2tlbmREYXRhQXJyYXkoUHJpbnRlciwgcmVzdWx0LnJlc3VsdE9iamVjdCkpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICByZWplY3QocmVzdWx0LnZhbGlkYXRpb25NZXNzYWdlc0FzU3RyaW5nKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYXN5bmMgZ2V0UHJpbnRTdG9ja1N0aWNrZXJzKHJlcXVlc3Q6IFByaW50U3RvY2tTdGlja2Vycyk6IFByb21pc2U8UHJpbnRTdG9ja1N0aWNrZXJzPiB7XHJcbiAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmU6IEZ1bmN0aW9uLCByZWplY3Q6IEZ1bmN0aW9uKSA9PiB7XHJcbiAgICAgIHJldHVybiB0aGlzLnNoYXJlZENvbm5lY3Rvci5nZXRQcmludFN0b2NrU3RpY2tlcnMocmVxdWVzdCkudGhlbigocmVzdWx0OiBEYXRhU2VydmljZVJlc3BvbnNlKSA9PiB7XHJcbiAgICAgICAgaWYgKHJlc3VsdC52YWxpZGF0aW9uUmVzdWx0ICYmIHJlc3VsdC52YWxpZGF0aW9uUmVzdWx0LnN1Y2Nlc3MpIHtcclxuICAgICAgICAgIGlmIChyZXN1bHQucmVzdWx0T2JqZWN0KSB7XHJcbiAgICAgICAgICAgIHJlc29sdmUodGhpcy5fYm9GYWN0b3J5Lm1ha2VXaXRoUmF3QmFja2VuZERhdGEoUHJpbnRTdG9ja1N0aWNrZXJzLCByZXN1bHQucmVzdWx0T2JqZWN0KSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHJlamVjdChyZXN1bHQudmFsaWRhdGlvbk1lc3NhZ2VzQXNTdHJpbmcpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSlcclxuICAgIH0pXHJcbiAgfVxyXG5cclxuICAvLyBwdWJsaWMgYXN5bmMgZ2V0U3RvY2tTdGlja2VyUHJpbnRMYXlvdXRzKHN0b2NrU3RpY2tlcnNQcmludExheW91dHNCbzogU3RvY2tTdGlja2Vyc1ByaW50TGF5b3V0c0JvKTogUHJvbWlzZTxTdG9ja1N0aWNrZXJzUHJpbnRMYXlvdXRzQm9bXT4ge1xyXG4gIC8vICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlOiBGdW5jdGlvbiwgcmVqZWN0OiBGdW5jdGlvbikgPT4ge1xyXG4gIC8vICAgICByZXR1cm4gdGhpcy5zaGFyZWRDb25uZWN0b3IuZ2V0U3RvY2tTdGlja2VyUHJpbnRMYXlvdXRzKHN0b2NrU3RpY2tlcnNQcmludExheW91dHNCbykudGhlbigocmVzdWx0OiBEYXRhU2VydmljZVJlc3BvbnNlKSA9PiB7XHJcbiAgLy8gICAgICAgaWYgKHJlc3VsdC52YWxpZGF0aW9uUmVzdWx0ICYmIHJlc3VsdC52YWxpZGF0aW9uUmVzdWx0LnN1Y2Nlc3MpIHtcclxuICAvLyAgICAgICAgIGlmIChyZXN1bHQucmVzdWx0T2JqZWN0KSB7XHJcbiAgLy8gICAgICAgICAgIHJlc29sdmUodGhpcy5fYm9GYWN0b3J5Lm1ha2VXaXRoUmF3QmFja2VuZERhdGEoc3RvY2tTdGlja2Vyc1ByaW50TGF5b3V0c0JvLCByZXN1bHQucmVzdWx0T2JqZWN0KSk7XHJcbiAgLy8gICAgICAgICB9XHJcbiAgLy8gICAgICAgfSBlbHNlIHtcclxuICAvLyAgICAgICAgIHJlamVjdChyZXN1bHQudmFsaWRhdGlvbk1lc3NhZ2VzQXNTdHJpbmcpO1xyXG4gIC8vICAgICAgIH1cclxuICAvLyAgICAgfSlcclxuICAvLyAgIH0pXHJcbiAgLy8gfVxyXG5cclxuICBwdWJsaWMgYXN5bmMgZ2V0QXJ0aWNsZUZ1bGxPYmplY3QoZ29vZElkOiBudW1iZXIpOiBQcm9taXNlPEFydGljbGVFeHRlbmRlZD4ge1xyXG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlOiBGdW5jdGlvbiwgcmVqZWN0OiBGdW5jdGlvbikgPT4ge1xyXG4gICAgICByZXR1cm4gdGhpcy5jb25uZWN0b3IuZ2V0QXJ0aWNsZUZ1bGxPYmplY3QoZ29vZElkKS50aGVuKChyZXN1bHQ6IERhdGFTZXJ2aWNlUmVzcG9uc2VEYXRhKSA9PiB7XHJcbiAgICAgICAgLy8gaWYgKHJlc3VsdC52YWxpZGF0aW9uUmVzdWx0ICYmIHJlc3VsdC52YWxpZGF0aW9uUmVzdWx0LnN1Y2Nlc3MpIHtcclxuICAgICAgICAvLyAgIGlmIChyZXN1bHQucmVzdWx0T2JqZWN0KSB7XHJcbiAgICAgICAgLy8gICAgIHJlc29sdmUodGhpcy5fYm9GYWN0b3J5Lm1ha2VXaXRoUmF3QmFja2VuZERhdGEoQXJ0aWNsZUV4dGVuZGVkLCByZXN1bHQucmVzdWx0T2JqZWN0KSk7XHJcbiAgICAgICAgLy8gICB9XHJcbiAgICAgICAgLy8gfSBlbHNlIHtcclxuICAgICAgICAvLyAgIHJlamVjdChyZXN1bHQudmFsaWRhdGlvbk1lc3NhZ2VzQXNTdHJpbmcpO1xyXG4gICAgICAgIC8vIH1cclxuICAgICAgfSk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBhc3luYyBnZXRTdG9ja0hpc3RvcnkocmVxdWVzdDogR2V0U3RvY2tIaXN0b3J5UmVxdWVzdCk6IFByb21pc2U8U3RvY2tIaXN0b3J5Qm9bXT4ge1xyXG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlOiBGdW5jdGlvbiwgcmVqZWN0OiBGdW5jdGlvbikgPT4ge1xyXG4gICAgICByZXR1cm4gdGhpcy5jb25uZWN0b3IuZ2V0U3RvY2tIaXN0b3J5KHJlcXVlc3QpLnRoZW4oKHJlc3VsdDogRGF0YVNlcnZpY2VSZXNwb25zZURhdGEpID0+IHtcclxuICAgICAgICBpZiAocmVzdWx0LnZhbGlkYXRpb25SZXN1bHQgJiYgcmVzdWx0LnZhbGlkYXRpb25SZXN1bHQuc3VjY2Vzcykge1xyXG4gICAgICAgICAgaWYgKHJlc3VsdC5yZXN1bHRPYmplY3QgJiYgcmVzdWx0LnJlc3VsdE9iamVjdC5oYXNPd25Qcm9wZXJ0eShcInN0b2NrSGlzdG9yeVwiKSkge1xyXG4gICAgICAgICAgICByZXNvbHZlKHRoaXMuX2JvRmFjdG9yeS5tYWtlQk9BcnJheUZyb21SYXdCYWNrZW5kRGF0YUFycmF5KFN0b2NrSGlzdG9yeUJvLCByZXN1bHQucmVzdWx0T2JqZWN0LnN0b2NrSGlzdG9yeSkpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICByZWplY3QocmVzdWx0LnZhbGlkYXRpb25NZXNzYWdlc0FzU3RyaW5nKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pXHJcbiAgICB9KVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGFzeW5jIGdldFN0b2NrSW5mb3JtYXRpb24oZGF0YTogQXJ0aWNsZVN0b2NrKTogUHJvbWlzZTxBcnRpY2xlU3RvY2tCb1tdPiB7XHJcbiAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmU6IEZ1bmN0aW9uLCByZWplY3Q6IEZ1bmN0aW9uKSA9PiB7XHJcbiAgICAgIHJldHVybiB0aGlzLmNvbm5lY3Rvci5nZXRTdG9ja0luZm9ybWF0aW9uKGRhdGEpLnRoZW4oKHJlc3VsdDogRGF0YVNlcnZpY2VSZXNwb25zZURhdGEpID0+IHtcclxuICAgICAgICBpZiAocmVzdWx0LnZhbGlkYXRpb25SZXN1bHQgJiYgcmVzdWx0LnZhbGlkYXRpb25SZXN1bHQuc3VjY2Vzcykge1xyXG4gICAgICAgICAgaWYgKHJlc3VsdC5yZXN1bHRPYmplY3RzKSB7XHJcbiAgICAgICAgICAgIHJlc29sdmUodGhpcy5fYm9GYWN0b3J5Lm1ha2VCT0FycmF5RnJvbVJhd0JhY2tlbmREYXRhQXJyYXkoQXJ0aWNsZVN0b2NrQm8sIHJlc3VsdC5yZXN1bHRPYmplY3RzKSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHJlamVjdChyZXN1bHQudmFsaWRhdGlvbk1lc3NhZ2VzQXNTdHJpbmcpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBhc3luYyBnZXRTdG9ja01hbmFnZW1lbnRXYXJlaG91c2VzKCk6IFByb21pc2U8U3RvY2tNYW5hZ2VtZW50V2FyZWhvdXNlc1tdPiB7XHJcbiAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmU6IEZ1bmN0aW9uLCByZWplY3Q6IEZ1bmN0aW9uKSA9PiB7XHJcbiAgICAgIHJldHVybiB0aGlzLmNvbm5lY3Rvci5nZXRTdG9ja01hbmFnZW1lbnRXYXJlaG91c2VzKCkudGhlbigocmVzdWx0OiBEYXRhU2VydmljZVJlc3BvbnNlRGF0YSkgPT4ge1xyXG4gICAgICAgIGlmIChyZXN1bHQudmFsaWRhdGlvblJlc3VsdCAmJiByZXN1bHQudmFsaWRhdGlvblJlc3VsdC5zdWNjZXNzKSB7XHJcbiAgICAgICAgICBpZiAocmVzdWx0LnJlc3VsdE9iamVjdHMpIHtcclxuICAgICAgICAgICAgcmVzb2x2ZSh0aGlzLl9ib0ZhY3RvcnkubWFrZUJPQXJyYXlGcm9tUmF3QmFja2VuZERhdGFBcnJheShTdG9ja01hbmFnZW1lbnRXYXJlaG91c2VzLCByZXN1bHQucmVzdWx0T2JqZWN0cykpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICByZWplY3QocmVzdWx0LnZhbGlkYXRpb25NZXNzYWdlc0FzU3RyaW5nKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYXN5bmMgZ2V0U3RvY2tNYW5hZ2VtZW50TG9jYXRpb25zKHdhcmVob3VzZU5vOiBudW1iZXIpOiBQcm9taXNlPFN0b2NrTG9jYXRpb25bXT4ge1xyXG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlOiBGdW5jdGlvbiwgcmVqZWN0OiBGdW5jdGlvbikgPT4ge1xyXG4gICAgICByZXR1cm4gdGhpcy5jb25uZWN0b3IuZ2V0U3RvY2tNYW5hZ2VtZW50TG9jYXRpb25zKHdhcmVob3VzZU5vKS50aGVuKChyZXN1bHQ6IERhdGFTZXJ2aWNlUmVzcG9uc2VEYXRhKSA9PiB7XHJcbiAgICAgICAgaWYgKHJlc3VsdC52YWxpZGF0aW9uUmVzdWx0ICYmIHJlc3VsdC52YWxpZGF0aW9uUmVzdWx0LnN1Y2Nlc3MpIHtcclxuICAgICAgICAgIGlmIChyZXN1bHQucmVzdWx0T2JqZWN0cykge1xyXG4gICAgICAgICAgICByZXNvbHZlKHRoaXMuX2JvRmFjdG9yeS5tYWtlQk9BcnJheUZyb21SYXdCYWNrZW5kRGF0YUFycmF5KFN0b2NrTG9jYXRpb24sIHJlc3VsdC5yZXN1bHRPYmplY3RzKSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHJlamVjdChyZXN1bHQudmFsaWRhdGlvbk1lc3NhZ2VzQXNTdHJpbmcpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBhc3luYyBnZXRBcnRpY2xlRGV0YWlscyhkYXRhOiBBcnRpY2xlU3RvY2tNYW5hZ2VtZW50KTogUHJvbWlzZTxBcnRpY2xlRGV0YWlsc0JvW10+IHtcclxuICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZTogRnVuY3Rpb24sIHJlamVjdDogRnVuY3Rpb24pID0+IHtcclxuICAgICAgcmV0dXJuIHRoaXMuY29ubmVjdG9yLmdldEFydGljbGVEZXRhaWxzKGRhdGEpLnRoZW4oKHJlc3VsdDogRGF0YVNlcnZpY2VSZXNwb25zZURhdGEpID0+IHtcclxuICAgICAgICBpZiAocmVzdWx0LnZhbGlkYXRpb25SZXN1bHQgJiYgcmVzdWx0LnZhbGlkYXRpb25SZXN1bHQuc3VjY2Vzcykge1xyXG4gICAgICAgICAgaWYgKHJlc3VsdC5yZXN1bHRPYmplY3RzKSB7XHJcbiAgICAgICAgICAgIHJlc29sdmUodGhpcy5fYm9GYWN0b3J5Lm1ha2VCT0FycmF5RnJvbVJhd0JhY2tlbmREYXRhQXJyYXkoQXJ0aWNsZURldGFpbHNCbywgcmVzdWx0LnJlc3VsdE9iamVjdHMpKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgcmVqZWN0KHJlc3VsdC52YWxpZGF0aW9uTWVzc2FnZXNBc1N0cmluZyk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGFzeW5jIHVwZGF0ZUFydGljbGVEZXRhaWxzKGRhdGE6IEFydGljbGVEZXRhaWxzQm8pOiBQcm9taXNlPGJvb2xlYW4+IHtcclxuICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZTogRnVuY3Rpb24sIHJlamVjdDogRnVuY3Rpb24pID0+IHtcclxuICAgICAgcmV0dXJuIHRoaXMuY29ubmVjdG9yLnVwZGF0ZUFydGljbGVEZXRhaWxzKGRhdGEpLnRoZW4oYXN5bmMgKHJlc3VsdDogRGF0YVNlcnZpY2VSZXNwb25zZURhdGEpID0+IHtcclxuICAgICAgICBpZiAocmVzdWx0LnZhbGlkYXRpb25SZXN1bHQgJiYgcmVzdWx0LnZhbGlkYXRpb25SZXN1bHQuc3VjY2Vzcykge1xyXG4gICAgICAgICAgYXdhaXQgdGhpcy5jb21taXQoKTtcclxuICAgICAgICAgIHJlc29sdmUodHJ1ZSk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHJlamVjdChyZXN1bHQudmFsaWRhdGlvbk1lc3NhZ2VzQXNTdHJpbmcpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICB9KTtcclxuICB9XHJcbiAgcHVibGljIGFzeW5jIGxvY2tBcnRpY2xlRGV0YWlscyhkYXRhOiBBcnRpY2xlU3RvY2tNYW5hZ2VtZW50KTogUHJvbWlzZTxib29sZWFuPiB7XHJcbiAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmU6IEZ1bmN0aW9uLCByZWplY3Q6IEZ1bmN0aW9uKSA9PiB7XHJcbiAgICAgIHJldHVybiB0aGlzLmNvbm5lY3Rvci5sb2NrQXJ0aWNsZURldGFpbHMoZGF0YSkudGhlbihhc3luYyAocmVzdWx0OiBEYXRhU2VydmljZVJlc3BvbnNlRGF0YSkgPT4ge1xyXG4gICAgICAgIGlmIChyZXN1bHQudmFsaWRhdGlvblJlc3VsdCAmJiByZXN1bHQudmFsaWRhdGlvblJlc3VsdC5zdWNjZXNzKSB7XHJcbiAgICAgICAgICBhd2FpdCB0aGlzLmNvbW1pdCgpO1xyXG4gICAgICAgICAgcmVzb2x2ZSh0cnVlKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgcmVqZWN0KHJlc3VsdC52YWxpZGF0aW9uTWVzc2FnZXNBc1N0cmluZyk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcblxyXG4gIHB1YmxpYyBhc3luYyBnZXRTdG9ja1N0YXR1cygpOiBQcm9taXNlPFN0b2NrU3RhdHVzW10+IHtcclxuICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZTogRnVuY3Rpb24sIHJlamVjdDogRnVuY3Rpb24pID0+IHtcclxuICAgICAgcmV0dXJuIHRoaXMuY29ubmVjdG9yLmdldFN0b2NrU3RhdGUoKS50aGVuKChyZXN1bHQ6IERhdGFTZXJ2aWNlUmVzcG9uc2VEYXRhKSA9PiB7XHJcbiAgICAgICAgaWYgKHJlc3VsdC52YWxpZGF0aW9uUmVzdWx0ICYmIHJlc3VsdC52YWxpZGF0aW9uUmVzdWx0LnN1Y2Nlc3MpIHtcclxuICAgICAgICAgIGlmIChyZXN1bHQucmVzdWx0T2JqZWN0cykge1xyXG4gICAgICAgICAgICByZXNvbHZlKHRoaXMuX2JvRmFjdG9yeS5tYWtlQk9BcnJheUZyb21SYXdCYWNrZW5kRGF0YUFycmF5KFN0b2NrU3RhdHVzLCByZXN1bHQucmVzdWx0T2JqZWN0cykpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICByZWplY3QocmVzdWx0LnZhbGlkYXRpb25NZXNzYWdlc0FzU3RyaW5nKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYXN5bmMgZ2V0U3RvY2tTdGlja2VyVGVtcGxhdGVzKGRhdGE6IFN0b2NrU3RpY2tlcnNQcmludExheW91dHNCbyk6IFByb21pc2U8U3RvY2tTdGlja2Vyc1ByaW50TGF5b3V0c0JvW10+IHtcclxuICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZTogRnVuY3Rpb24sIHJlamVjdDogRnVuY3Rpb24pID0+IHtcclxuICAgICAgcmV0dXJuIHRoaXMuc2hhcmVkQ29ubmVjdG9yLmdldFN0b2NrU3RpY2tlclByaW50TGF5b3V0cyhkYXRhKS50aGVuKChyZXN1bHQ6IERhdGFTZXJ2aWNlUmVzcG9uc2UpID0+IHtcclxuICAgICAgICBpZiAocmVzdWx0LnZhbGlkYXRpb25SZXN1bHQgJiYgcmVzdWx0LnZhbGlkYXRpb25SZXN1bHQuc3VjY2Vzcykge1xyXG4gICAgICAgICAgaWYgKHJlc3VsdC5yZXN1bHRPYmplY3QpIHtcclxuICAgICAgICAgICAgcmVzb2x2ZSh0aGlzLl9ib0ZhY3RvcnkubWFrZUJPQXJyYXlGcm9tUmF3QmFja2VuZERhdGFBcnJheShTdG9ja1N0aWNrZXJzUHJpbnRMYXlvdXRzQm8sIHJlc3VsdC5yZXN1bHRPYmplY3QpKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgcmVqZWN0KHJlc3VsdC52YWxpZGF0aW9uTWVzc2FnZXNBc1N0cmluZyk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGFzeW5jIGdldEFydGljbGVUcmFuc2FjdGlvbihkYXRhOiBBcnRpY2xlVHJhbnNhY3Rpb24pOiBQcm9taXNlPEFydGljbGVUcmFuc2FjdGlvbkJvW10+IHtcclxuICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZTogRnVuY3Rpb24sIHJlamVjdDogRnVuY3Rpb24pID0+IHtcclxuICAgICAgcmV0dXJuIHRoaXMuY29ubmVjdG9yLmdldEFydGljbGVUcmFuc2FjdGlvbihkYXRhKS50aGVuKChyZXN1bHQ6IERhdGFTZXJ2aWNlUmVzcG9uc2VEYXRhKSA9PiB7XHJcbiAgICAgICAgaWYgKHJlc3VsdC52YWxpZGF0aW9uUmVzdWx0ICYmIHJlc3VsdC52YWxpZGF0aW9uUmVzdWx0LnN1Y2Nlc3MpIHtcclxuICAgICAgICAgIGlmIChyZXN1bHQucmVzdWx0T2JqZWN0cykge1xyXG4gICAgICAgICAgICByZXNvbHZlKHRoaXMuX2JvRmFjdG9yeS5tYWtlQk9BcnJheUZyb21SYXdCYWNrZW5kRGF0YUFycmF5KEFydGljbGVUcmFuc2FjdGlvbkJvLCByZXN1bHQucmVzdWx0T2JqZWN0cykpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICByZWplY3QocmVzdWx0LnZhbGlkYXRpb25NZXNzYWdlc0FzU3RyaW5nKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgY29tbWl0KCk6IFByb21pc2U8RGF0YVNlcnZpY2VSZXNwb25zZURhdGE+IHtcclxuICAgIHJldHVybiB0aGlzLmNvbm5lY3Rvci5jb21taXQoKTtcclxuICB9XHJcblxyXG59XHJcbiJdfQ==
@@ -0,0 +1,30 @@
1
+ import { __awaiter } from "tslib";
2
+ import { SharedConnectorService } from "./shared-connector.service";
3
+ import { Injectable } from "@angular/core";
4
+ import { OptionsService } from "./options.service";
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "./options.service";
7
+ import * as i2 from "./shared-connector.service";
8
+ export class SharedService {
9
+ constructor(options, connector) {
10
+ this.options = options;
11
+ this.connector = connector;
12
+ }
13
+ init(options) {
14
+ return __awaiter(this, void 0, void 0, function* () {
15
+ yield this.options.initialize(options);
16
+ this.connector.connect();
17
+ });
18
+ }
19
+ }
20
+ SharedService.ɵprov = i0.ɵɵdefineInjectable({ factory: function SharedService_Factory() { return new SharedService(i0.ɵɵinject(i1.OptionsService), i0.ɵɵinject(i2.SharedConnectorService)); }, token: SharedService, providedIn: "root" });
21
+ SharedService.decorators = [
22
+ { type: Injectable, args: [{
23
+ providedIn: "root"
24
+ },] }
25
+ ];
26
+ SharedService.ctorParameters = () => [
27
+ { type: OptionsService },
28
+ { type: SharedConnectorService }
29
+ ];
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hhcmVkLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaGFyZWRjb21wb25lbnRzL3NyYy9saWIvc2VydmljZS9zaGFyZWQuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFDLHNCQUFzQixFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFDbEUsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sbUJBQW1CLENBQUM7Ozs7QUFNakQsTUFBTSxPQUFPLGFBQWE7SUFFeEIsWUFDWSxPQUF1QixFQUN2QixTQUFpQztRQURqQyxZQUFPLEdBQVAsT0FBTyxDQUFnQjtRQUN2QixjQUFTLEdBQVQsU0FBUyxDQUF3QjtJQUU3QyxDQUFDO0lBRVksSUFBSSxDQUFDLE9BQVk7O1lBQzVCLE1BQU0sSUFBSSxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDdkMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUMzQixDQUFDO0tBQUE7Ozs7WUFmRixVQUFVLFNBQUM7Z0JBQ1YsVUFBVSxFQUFFLE1BQU07YUFDbkI7OztZQUpPLGNBQWM7WUFGZCxzQkFBc0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1NoYXJlZENvbm5lY3RvclNlcnZpY2V9IGZyb20gXCIuL3NoYXJlZC1jb25uZWN0b3Iuc2VydmljZVwiO1xyXG5pbXBvcnQge0luamVjdGFibGV9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7T3B0aW9uc1NlcnZpY2V9IGZyb20gXCIuL29wdGlvbnMuc2VydmljZVwiO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46IFwicm9vdFwiXHJcbn0pXHJcblxyXG5leHBvcnQgY2xhc3MgU2hhcmVkU2VydmljZSB7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJvdGVjdGVkIG9wdGlvbnM6IE9wdGlvbnNTZXJ2aWNlLFxyXG4gICAgcHJvdGVjdGVkIGNvbm5lY3RvcjogU2hhcmVkQ29ubmVjdG9yU2VydmljZSxcclxuICApIHtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBhc3luYyBpbml0KG9wdGlvbnM6IGFueSk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgYXdhaXQgdGhpcy5vcHRpb25zLmluaXRpYWxpemUob3B0aW9ucyk7XHJcbiAgICB0aGlzLmNvbm5lY3Rvci5jb25uZWN0KCk7XHJcbiAgfVxyXG59XHJcbiJdfQ==