@bnsights/bbsf-utilities 1.0.32 → 1.0.33

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 (124) hide show
  1. package/README.md +4 -4
  2. package/bnsights-bbsf-utilities-1.0.33.tgz +0 -0
  3. package/bnsights-bbsf-utilities.d.ts +0 -1
  4. package/bnsights-bbsf-utilities.metadata.json +1 -0
  5. package/bundles/bnsights-bbsf-utilities.umd.js +4865 -0
  6. package/bundles/bnsights-bbsf-utilities.umd.js.map +1 -0
  7. package/esm2015/lib/bbsf-utilities.module.js +52 -0
  8. package/esm2015/lib/shared/authentication/auth.service.js +236 -0
  9. package/esm2015/lib/shared/config/word/constants.js +105 -0
  10. package/esm2015/lib/shared/config/word/docx-document.js +351 -0
  11. package/esm2015/lib/shared/config/word/helpers/index.js +4 -0
  12. package/esm2015/lib/shared/config/word/helpers/render-document-file.js +278 -0
  13. package/esm2015/lib/shared/config/word/helpers/xml-builder.js +1765 -0
  14. package/esm2015/lib/shared/config/word/html-to-docx.js +195 -0
  15. package/esm2015/lib/shared/config/word/index.js +55 -0
  16. package/esm2015/lib/shared/config/word/namespaces.js +37 -0
  17. package/esm2015/lib/shared/config/word/schemas/content-types.js +26 -0
  18. package/esm2015/lib/shared/config/word/schemas/core.js +29 -0
  19. package/esm2015/lib/shared/config/word/schemas/document-rels.js +16 -0
  20. package/esm2015/lib/shared/config/word/schemas/document.template.js +109 -0
  21. package/esm2015/lib/shared/config/word/schemas/font-table.js +40 -0
  22. package/esm2015/lib/shared/config/word/schemas/generic-rels.js +11 -0
  23. package/esm2015/lib/shared/config/word/schemas/index.js +13 -0
  24. package/esm2015/lib/shared/config/word/schemas/numbering.js +19 -0
  25. package/esm2015/lib/shared/config/word/schemas/rels.js +11 -0
  26. package/esm2015/lib/shared/config/word/schemas/settings.js +13 -0
  27. package/esm2015/lib/shared/config/word/schemas/styles.js +149 -0
  28. package/esm2015/lib/shared/config/word/schemas/theme.js +200 -0
  29. package/esm2015/lib/shared/config/word/schemas/web-settings.js +9 -0
  30. package/esm2015/lib/shared/config/word/utils/color-conversion.js +60 -0
  31. package/esm2015/lib/shared/config/word/utils/list.js +51 -0
  32. package/esm2015/lib/shared/config/word/utils/unit-conversion.js +30 -0
  33. package/esm2015/lib/shared/config/word/utils/url.js +9 -0
  34. package/esm2015/lib/shared/config/word/utils/vnode.js +3 -0
  35. package/esm2015/lib/shared/config/word/word-work/templates/documentTemplate.js +54 -0
  36. package/esm2015/lib/shared/config/word/word-work/templates/index.js +4 -0
  37. package/esm2015/lib/shared/config/word/word-work/templates/mhtDocumentTemplate.js +22 -0
  38. package/esm2015/lib/shared/config/word/word-work/templates/mhtPartTemplate.js +10 -0
  39. package/esm2015/lib/shared/config/word/word-work/utils.js +26 -0
  40. package/esm2015/lib/shared/models/WordDocumentModel.js +8 -0
  41. package/esm2015/lib/shared/services/AppearanceConfiguration.service.js +37 -0
  42. package/esm2015/lib/shared/services/configuration.service.js +26 -0
  43. package/esm2015/lib/shared/services/controlvalidation.service.js +168 -0
  44. package/esm2015/lib/shared/services/environment.service.js +48 -0
  45. package/esm2015/lib/shared/services/masterlayout.service.js +96 -0
  46. package/esm2015/lib/shared/services/requesthandler.service.js +206 -0
  47. package/esm2015/lib/shared/services/stylesbundle.service.js +56 -0
  48. package/esm2015/lib/shared/services/translate.service.js +13 -0
  49. package/esm2015/lib/shared/services/translationresolver.service.js +20 -0
  50. package/esm2015/lib/shared/services/utility.service.js +96 -0
  51. package/esm2015/lib/shared/services/word-document.service.js +39 -0
  52. package/esm2015/public-api.js +20 -0
  53. package/fesm2015/bnsights-bbsf-utilities.js +4634 -0
  54. package/fesm2015/bnsights-bbsf-utilities.js.map +1 -0
  55. package/lib/bbsf-utilities.module.d.ts +0 -9
  56. package/lib/shared/authentication/auth.service.d.ts +0 -3
  57. package/lib/shared/config/word/constants.d.ts +124 -0
  58. package/lib/shared/config/word/docx-document.d.ts +73 -0
  59. package/lib/shared/config/word/helpers/index.d.ts +1 -0
  60. package/lib/shared/config/word/helpers/render-document-file.d.ts +4 -0
  61. package/lib/shared/config/word/helpers/xml-builder.d.ts +14 -0
  62. package/lib/shared/config/word/html-to-docx.d.ts +1 -0
  63. package/lib/shared/config/word/index.d.ts +1 -0
  64. package/lib/shared/config/word/namespaces.d.ts +36 -0
  65. package/lib/shared/config/word/schemas/content-types.d.ts +1 -0
  66. package/lib/shared/config/word/schemas/core.d.ts +1 -0
  67. package/lib/shared/config/word/schemas/document-rels.d.ts +1 -0
  68. package/lib/shared/config/word/schemas/document.template.d.ts +4 -0
  69. package/lib/shared/config/word/schemas/font-table.d.ts +1 -0
  70. package/lib/shared/config/word/schemas/generic-rels.d.ts +1 -0
  71. package/lib/shared/config/word/schemas/index.d.ts +12 -0
  72. package/lib/shared/config/word/schemas/numbering.d.ts +1 -0
  73. package/lib/shared/config/word/schemas/rels.d.ts +1 -0
  74. package/lib/shared/config/word/schemas/settings.d.ts +1 -0
  75. package/lib/shared/config/word/schemas/styles.d.ts +1 -0
  76. package/lib/shared/config/word/schemas/theme.d.ts +1 -0
  77. package/lib/shared/config/word/schemas/web-settings.d.ts +1 -0
  78. package/lib/shared/config/word/utils/color-conversion.d.ts +7 -0
  79. package/lib/shared/config/word/utils/list.d.ts +6 -0
  80. package/lib/shared/config/word/utils/unit-conversion.d.ts +29 -0
  81. package/lib/shared/config/word/utils/url.d.ts +1 -0
  82. package/lib/shared/config/word/utils/vnode.d.ts +1 -0
  83. package/lib/shared/config/word/word-work/templates/documentTemplate.d.ts +12 -0
  84. package/lib/shared/config/word/word-work/templates/index.d.ts +3 -0
  85. package/lib/shared/config/word/word-work/templates/mhtDocumentTemplate.d.ts +1 -0
  86. package/lib/shared/config/word/word-work/templates/mhtPartTemplate.d.ts +1 -0
  87. package/lib/shared/config/word/word-work/utils.d.ts +1 -0
  88. package/lib/shared/models/WordDocumentModel.d.ts +16 -0
  89. package/lib/shared/services/AppearanceConfiguration.service.d.ts +0 -3
  90. package/lib/shared/services/configuration.service.d.ts +0 -3
  91. package/lib/shared/services/controlvalidation.service.d.ts +0 -3
  92. package/lib/shared/services/environment.service.d.ts +0 -3
  93. package/lib/shared/services/masterlayout.service.d.ts +0 -3
  94. package/lib/shared/services/requesthandler.service.d.ts +0 -3
  95. package/lib/shared/services/stylesbundle.service.d.ts +0 -3
  96. package/lib/shared/services/translate.service.d.ts +0 -3
  97. package/lib/shared/services/translationresolver.service.d.ts +0 -3
  98. package/lib/shared/services/utility.service.d.ts +0 -3
  99. package/lib/shared/services/word-document.service.d.ts +5 -0
  100. package/package.json +7 -19
  101. package/public-api.d.ts +2 -0
  102. package/bnsights-bbsf-utilities-1.0.32.tgz +0 -0
  103. package/esm2020/lib/bbsf-utilities.module.mjs +0 -74
  104. package/esm2020/lib/shared/authentication/auth.service.mjs +0 -217
  105. package/esm2020/lib/shared/services/AppearanceConfiguration.service.mjs +0 -35
  106. package/esm2020/lib/shared/services/configuration.service.mjs +0 -24
  107. package/esm2020/lib/shared/services/controlvalidation.service.mjs +0 -166
  108. package/esm2020/lib/shared/services/environment.service.mjs +0 -50
  109. package/esm2020/lib/shared/services/masterlayout.service.mjs +0 -84
  110. package/esm2020/lib/shared/services/requesthandler.service.mjs +0 -202
  111. package/esm2020/lib/shared/services/stylesbundle.service.mjs +0 -55
  112. package/esm2020/lib/shared/services/translate.service.mjs +0 -14
  113. package/esm2020/lib/shared/services/translationresolver.service.mjs +0 -18
  114. package/esm2020/lib/shared/services/utility.service.mjs +0 -90
  115. package/esm2020/public-api.mjs +0 -18
  116. package/fesm2015/bnsights-bbsf-utilities.mjs +0 -1009
  117. package/fesm2015/bnsights-bbsf-utilities.mjs.map +0 -1
  118. package/fesm2020/bnsights-bbsf-utilities.mjs +0 -997
  119. package/fesm2020/bnsights-bbsf-utilities.mjs.map +0 -1
  120. /package/{esm2020/bnsights-bbsf-utilities.mjs → esm2015/bnsights-bbsf-utilities.js} +0 -0
  121. /package/{esm2020/lib/shared/config/environment.mjs → esm2015/lib/shared/config/environment.js} +0 -0
  122. /package/{esm2020/lib/shared/models/AreaModel.mjs → esm2015/lib/shared/models/AreaModel.js} +0 -0
  123. /package/{esm2020/lib/shared/models/ErrorModel.mjs → esm2015/lib/shared/models/ErrorModel.js} +0 -0
  124. /package/{esm2020/lib/shared/models/RequestOptionsModel.mjs → esm2015/lib/shared/models/RequestOptionsModel.js} +0 -0
@@ -0,0 +1,30 @@
1
+ export const pixelRegex = /([\d.]+)px/i;
2
+ export const percentageRegex = /([\d.]+)%/i;
3
+ export const pointRegex = /([\d.]+)pt/i;
4
+ export const cmRegex = /([\d.]+)cm/i;
5
+ export const inchRegex = /([\d.]+)in/i;
6
+ export const pixelToEMU = (pixelValue) => Math.round(pixelValue * 9525);
7
+ export const EMUToPixel = (EMUValue) => Math.round(EMUValue / 9525);
8
+ export const TWIPToEMU = (TWIPValue) => Math.round(TWIPValue * 635);
9
+ export const EMUToTWIP = (EMUValue) => Math.round(EMUValue / 635);
10
+ export const pointToTWIP = (pointValue) => Math.round(pointValue * 20);
11
+ export const TWIPToPoint = (TWIPValue) => Math.round(TWIPValue / 20);
12
+ export const pointToHIP = (pointValue) => Math.round(pointValue * 2);
13
+ export const HIPToPoint = (HIPValue) => Math.round(HIPValue / 2);
14
+ export const HIPToTWIP = (HIPValue) => Math.round(HIPValue * 10);
15
+ export const TWIPToHIP = (TWIPValue) => Math.round(TWIPValue / 10);
16
+ export const pixelToTWIP = (pixelValue) => EMUToTWIP(pixelToEMU(pixelValue));
17
+ export const TWIPToPixel = (TWIPValue) => EMUToPixel(TWIPToEMU(TWIPValue));
18
+ export const pixelToHIP = (pixelValue) => TWIPToHIP(EMUToTWIP(pixelToEMU(pixelValue)));
19
+ export const HIPToPixel = (HIPValue) => EMUToPixel(TWIPToEMU(HIPToTWIP(HIPValue)));
20
+ export const inchToPoint = (inchValue) => Math.round(inchValue * 72);
21
+ export const inchToTWIP = (inchValue) => pointToTWIP(inchToPoint(inchValue));
22
+ export const cmToInch = (cmValue) => cmValue * 0.3937008;
23
+ export const cmToTWIP = (cmValue) => inchToTWIP(cmToInch(cmValue));
24
+ export const pixelToPoint = (pixelValue) => HIPToPoint(pixelToHIP(pixelValue));
25
+ export const pointToPixel = (pointValue) => HIPToPixel(pointToHIP(pointValue));
26
+ export const EIPToPoint = (EIPValue) => Math.round(EIPValue / 8);
27
+ export const pointToEIP = (PointValue) => Math.round(PointValue * 8);
28
+ export const pixelToEIP = (pixelValue) => pointToEIP(pixelToPoint(pixelValue));
29
+ export const EIPToPixel = (EIPValue) => pointToPixel(EIPToPoint(EIPValue));
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidW5pdC1jb252ZXJzaW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmJzZi11dGlsaXRpZXMvc3JjL2xpYi9zaGFyZWQvY29uZmlnL3dvcmQvdXRpbHMvdW5pdC1jb252ZXJzaW9uLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBRyxhQUFhLENBQUM7QUFDeEMsTUFBTSxDQUFDLE1BQU0sZUFBZSxHQUFHLFlBQVksQ0FBQztBQUM1QyxNQUFNLENBQUMsTUFBTSxVQUFVLEdBQUcsYUFBYSxDQUFDO0FBQ3hDLE1BQU0sQ0FBQyxNQUFNLE9BQU8sR0FBRyxhQUFhLENBQUM7QUFDckMsTUFBTSxDQUFDLE1BQU0sU0FBUyxHQUFHLGFBQWEsQ0FBQztBQUV2QyxNQUFNLENBQUMsTUFBTSxVQUFVLEdBQUcsQ0FBQyxVQUFVLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxDQUFDO0FBRXhFLE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBRyxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLENBQUM7QUFFcEUsTUFBTSxDQUFDLE1BQU0sU0FBUyxHQUFHLENBQUMsU0FBUyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsR0FBRyxHQUFHLENBQUMsQ0FBQztBQUVwRSxNQUFNLENBQUMsTUFBTSxTQUFTLEdBQUcsQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxHQUFHLEdBQUcsQ0FBQyxDQUFDO0FBRWxFLE1BQU0sQ0FBQyxNQUFNLFdBQVcsR0FBRyxDQUFDLFVBQVUsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLEdBQUcsRUFBRSxDQUFDLENBQUM7QUFFdkUsTUFBTSxDQUFDLE1BQU0sV0FBVyxHQUFHLENBQUMsU0FBUyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsR0FBRyxFQUFFLENBQUMsQ0FBQztBQUVyRSxNQUFNLENBQUMsTUFBTSxVQUFVLEdBQUcsQ0FBQyxVQUFVLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxHQUFHLENBQUMsQ0FBQyxDQUFDO0FBRXJFLE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBRyxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLEdBQUcsQ0FBQyxDQUFDLENBQUM7QUFFakUsTUFBTSxDQUFDLE1BQU0sU0FBUyxHQUFHLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsR0FBRyxFQUFFLENBQUMsQ0FBQztBQUVqRSxNQUFNLENBQUMsTUFBTSxTQUFTLEdBQUcsQ0FBQyxTQUFTLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsU0FBUyxHQUFHLEVBQUUsQ0FBQyxDQUFDO0FBRW5FLE1BQU0sQ0FBQyxNQUFNLFdBQVcsR0FBRyxDQUFDLFVBQVUsRUFBRSxFQUFFLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDO0FBRTdFLE1BQU0sQ0FBQyxNQUFNLFdBQVcsR0FBRyxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDO0FBRTNFLE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBRyxDQUFDLFVBQVUsRUFBRSxFQUFFLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBRXZGLE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBRyxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBRW5GLE1BQU0sQ0FBQyxNQUFNLFdBQVcsR0FBRyxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLEdBQUcsRUFBRSxDQUFDLENBQUM7QUFFckUsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHLENBQUMsU0FBUyxFQUFFLEVBQUUsQ0FBQyxXQUFXLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUM7QUFFN0UsTUFBTSxDQUFDLE1BQU0sUUFBUSxHQUFHLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQyxPQUFPLEdBQUcsU0FBUyxDQUFDO0FBRXpELE1BQU0sQ0FBQyxNQUFNLFFBQVEsR0FBRyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO0FBRW5FLE1BQU0sQ0FBQyxNQUFNLFlBQVksR0FBRyxDQUFDLFVBQVUsRUFBRSxFQUFFLENBQUMsVUFBVSxDQUFDLFVBQVUsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDO0FBRS9FLE1BQU0sQ0FBQyxNQUFNLFlBQVksR0FBRyxDQUFDLFVBQVUsRUFBRSxFQUFFLENBQUMsVUFBVSxDQUFDLFVBQVUsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDO0FBRS9FLE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBRyxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLEdBQUcsQ0FBQyxDQUFDLENBQUM7QUFFakUsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHLENBQUMsVUFBVSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsR0FBRyxDQUFDLENBQUMsQ0FBQztBQUVyRSxNQUFNLENBQUMsTUFBTSxVQUFVLEdBQUcsQ0FBQyxVQUFVLEVBQUUsRUFBRSxDQUFDLFVBQVUsQ0FBQyxZQUFZLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQztBQUUvRSxNQUFNLENBQUMsTUFBTSxVQUFVLEdBQUcsQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDLFlBQVksQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBwaXhlbFJlZ2V4ID0gLyhbXFxkLl0rKXB4L2k7XHJcbmV4cG9ydCBjb25zdCBwZXJjZW50YWdlUmVnZXggPSAvKFtcXGQuXSspJS9pO1xyXG5leHBvcnQgY29uc3QgcG9pbnRSZWdleCA9IC8oW1xcZC5dKylwdC9pO1xyXG5leHBvcnQgY29uc3QgY21SZWdleCA9IC8oW1xcZC5dKyljbS9pO1xyXG5leHBvcnQgY29uc3QgaW5jaFJlZ2V4ID0gLyhbXFxkLl0rKWluL2k7XHJcblxyXG5leHBvcnQgY29uc3QgcGl4ZWxUb0VNVSA9IChwaXhlbFZhbHVlKSA9PiBNYXRoLnJvdW5kKHBpeGVsVmFsdWUgKiA5NTI1KTtcclxuXHJcbmV4cG9ydCBjb25zdCBFTVVUb1BpeGVsID0gKEVNVVZhbHVlKSA9PiBNYXRoLnJvdW5kKEVNVVZhbHVlIC8gOTUyNSk7XHJcblxyXG5leHBvcnQgY29uc3QgVFdJUFRvRU1VID0gKFRXSVBWYWx1ZSkgPT4gTWF0aC5yb3VuZChUV0lQVmFsdWUgKiA2MzUpO1xyXG5cclxuZXhwb3J0IGNvbnN0IEVNVVRvVFdJUCA9IChFTVVWYWx1ZSkgPT4gTWF0aC5yb3VuZChFTVVWYWx1ZSAvIDYzNSk7XHJcblxyXG5leHBvcnQgY29uc3QgcG9pbnRUb1RXSVAgPSAocG9pbnRWYWx1ZSkgPT4gTWF0aC5yb3VuZChwb2ludFZhbHVlICogMjApO1xyXG5cclxuZXhwb3J0IGNvbnN0IFRXSVBUb1BvaW50ID0gKFRXSVBWYWx1ZSkgPT4gTWF0aC5yb3VuZChUV0lQVmFsdWUgLyAyMCk7XHJcblxyXG5leHBvcnQgY29uc3QgcG9pbnRUb0hJUCA9IChwb2ludFZhbHVlKSA9PiBNYXRoLnJvdW5kKHBvaW50VmFsdWUgKiAyKTtcclxuXHJcbmV4cG9ydCBjb25zdCBISVBUb1BvaW50ID0gKEhJUFZhbHVlKSA9PiBNYXRoLnJvdW5kKEhJUFZhbHVlIC8gMik7XHJcblxyXG5leHBvcnQgY29uc3QgSElQVG9UV0lQID0gKEhJUFZhbHVlKSA9PiBNYXRoLnJvdW5kKEhJUFZhbHVlICogMTApO1xyXG5cclxuZXhwb3J0IGNvbnN0IFRXSVBUb0hJUCA9IChUV0lQVmFsdWUpID0+IE1hdGgucm91bmQoVFdJUFZhbHVlIC8gMTApO1xyXG5cclxuZXhwb3J0IGNvbnN0IHBpeGVsVG9UV0lQID0gKHBpeGVsVmFsdWUpID0+IEVNVVRvVFdJUChwaXhlbFRvRU1VKHBpeGVsVmFsdWUpKTtcclxuXHJcbmV4cG9ydCBjb25zdCBUV0lQVG9QaXhlbCA9IChUV0lQVmFsdWUpID0+IEVNVVRvUGl4ZWwoVFdJUFRvRU1VKFRXSVBWYWx1ZSkpO1xyXG5cclxuZXhwb3J0IGNvbnN0IHBpeGVsVG9ISVAgPSAocGl4ZWxWYWx1ZSkgPT4gVFdJUFRvSElQKEVNVVRvVFdJUChwaXhlbFRvRU1VKHBpeGVsVmFsdWUpKSk7XHJcblxyXG5leHBvcnQgY29uc3QgSElQVG9QaXhlbCA9IChISVBWYWx1ZSkgPT4gRU1VVG9QaXhlbChUV0lQVG9FTVUoSElQVG9UV0lQKEhJUFZhbHVlKSkpO1xyXG5cclxuZXhwb3J0IGNvbnN0IGluY2hUb1BvaW50ID0gKGluY2hWYWx1ZSkgPT4gTWF0aC5yb3VuZChpbmNoVmFsdWUgKiA3Mik7XHJcblxyXG5leHBvcnQgY29uc3QgaW5jaFRvVFdJUCA9IChpbmNoVmFsdWUpID0+IHBvaW50VG9UV0lQKGluY2hUb1BvaW50KGluY2hWYWx1ZSkpO1xyXG5cclxuZXhwb3J0IGNvbnN0IGNtVG9JbmNoID0gKGNtVmFsdWUpID0+IGNtVmFsdWUgKiAwLjM5MzcwMDg7XHJcblxyXG5leHBvcnQgY29uc3QgY21Ub1RXSVAgPSAoY21WYWx1ZSkgPT4gaW5jaFRvVFdJUChjbVRvSW5jaChjbVZhbHVlKSk7XHJcblxyXG5leHBvcnQgY29uc3QgcGl4ZWxUb1BvaW50ID0gKHBpeGVsVmFsdWUpID0+IEhJUFRvUG9pbnQocGl4ZWxUb0hJUChwaXhlbFZhbHVlKSk7XHJcblxyXG5leHBvcnQgY29uc3QgcG9pbnRUb1BpeGVsID0gKHBvaW50VmFsdWUpID0+IEhJUFRvUGl4ZWwocG9pbnRUb0hJUChwb2ludFZhbHVlKSk7XHJcblxyXG5leHBvcnQgY29uc3QgRUlQVG9Qb2ludCA9IChFSVBWYWx1ZSkgPT4gTWF0aC5yb3VuZChFSVBWYWx1ZSAvIDgpO1xyXG5cclxuZXhwb3J0IGNvbnN0IHBvaW50VG9FSVAgPSAoUG9pbnRWYWx1ZSkgPT4gTWF0aC5yb3VuZChQb2ludFZhbHVlICogOCk7XHJcblxyXG5leHBvcnQgY29uc3QgcGl4ZWxUb0VJUCA9IChwaXhlbFZhbHVlKSA9PiBwb2ludFRvRUlQKHBpeGVsVG9Qb2ludChwaXhlbFZhbHVlKSk7XHJcblxyXG5leHBvcnQgY29uc3QgRUlQVG9QaXhlbCA9IChFSVBWYWx1ZSkgPT4gcG9pbnRUb1BpeGVsKEVJUFRvUG9pbnQoRUlQVmFsdWUpKTtcclxuIl19
@@ -0,0 +1,9 @@
1
+ const isValidUrl = (urlString) => {
2
+ const urlRegex = /http(s)?:\/\/(\w+:?\w*@)?(\S+)(:\d+)?((?<=\.)\w+)+(\/([\w#!:.?+=&%@!\-/])*)?/gi;
3
+ return Boolean(urlRegex.test(urlString));
4
+ };
5
+ const ɵ0 = isValidUrl;
6
+ // eslint-disable-next-line import/prefer-default-export
7
+ export { isValidUrl };
8
+ export { ɵ0 };
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXJsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmJzZi11dGlsaXRpZXMvc3JjL2xpYi9zaGFyZWQvY29uZmlnL3dvcmQvdXRpbHMvdXJsLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sVUFBVSxHQUFHLENBQUMsU0FBUyxFQUFFLEVBQUU7SUFDL0IsTUFBTSxRQUFRLEdBQUcsZ0ZBQWdGLENBQUM7SUFFbEcsT0FBTyxPQUFPLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDO0FBQzNDLENBQUMsQ0FBQzs7QUFFRix3REFBd0Q7QUFDeEQsT0FBTyxFQUFFLFVBQVUsRUFBRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiY29uc3QgaXNWYWxpZFVybCA9ICh1cmxTdHJpbmcpID0+IHtcclxuICBjb25zdCB1cmxSZWdleCA9IC9odHRwKHMpPzpcXC9cXC8oXFx3Kzo/XFx3KkApPyhcXFMrKSg6XFxkKyk/KCg/PD1cXC4pXFx3KykrKFxcLyhbXFx3IyE6Lj8rPSYlQCFcXC0vXSkqKT8vZ2k7XHJcblxyXG4gIHJldHVybiBCb29sZWFuKHVybFJlZ2V4LnRlc3QodXJsU3RyaW5nKSk7XHJcbn07XHJcblxyXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgaW1wb3J0L3ByZWZlci1kZWZhdWx0LWV4cG9ydFxyXG5leHBvcnQgeyBpc1ZhbGlkVXJsIH07XHJcbiJdfQ==
@@ -0,0 +1,3 @@
1
+ // eslint-disable-next-line import/prefer-default-export
2
+ export const vNodeHasChildren = (vNode) => vNode && vNode.children && Array.isArray(vNode.children) && vNode.children.length;
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidm5vZGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYnNmLXV0aWxpdGllcy9zcmMvbGliL3NoYXJlZC9jb25maWcvd29yZC91dGlscy92bm9kZS5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSx3REFBd0Q7QUFDeEQsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQUcsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUN4QyxLQUFLLElBQUksS0FBSyxDQUFDLFFBQVEsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxLQUFLLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBpbXBvcnQvcHJlZmVyLWRlZmF1bHQtZXhwb3J0XHJcbmV4cG9ydCBjb25zdCB2Tm9kZUhhc0NoaWxkcmVuID0gKHZOb2RlKSA9PlxyXG4gIHZOb2RlICYmIHZOb2RlLmNoaWxkcmVuICYmIEFycmF5LmlzQXJyYXkodk5vZGUuY2hpbGRyZW4pICYmIHZOb2RlLmNoaWxkcmVuLmxlbmd0aDtcclxuIl19
@@ -0,0 +1,54 @@
1
+ export const defaultMargins = {
2
+ top: 1440,
3
+ right: 1440,
4
+ bottom: 1440,
5
+ left: 1440,
6
+ header: 720,
7
+ footer: 720,
8
+ gutter: 0,
9
+ };
10
+ export const documentTemplate = (width, height, orient, margins) => {
11
+ return `<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
12
+ <w:document
13
+ xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main"
14
+ xmlns:m="http://schemas.openxmlformats.org/officeDocument/2006/math"
15
+ xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships"
16
+ xmlns:wp="http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing"
17
+ xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main"
18
+ xmlns:ns6="http://schemas.openxmlformats.org/schemaLibrary/2006/main"
19
+ xmlns:c="http://schemas.openxmlformats.org/drawingml/2006/chart"
20
+ xmlns:ns8="http://schemas.openxmlformats.org/drawingml/2006/chartDrawing"
21
+ xmlns:dgm="http://schemas.openxmlformats.org/drawingml/2006/diagram"
22
+ xmlns:pic="http://schemas.openxmlformats.org/drawingml/2006/picture"
23
+ xmlns:ns11="http://schemas.openxmlformats.org/drawingml/2006/spreadsheetDrawing"
24
+ xmlns:dsp="http://schemas.microsoft.com/office/drawing/2008/diagram"
25
+ xmlns:ns13="urn:schemas-microsoft-com:office:excel"
26
+ xmlns:o="urn:schemas-microsoft-com:office:office"
27
+ xmlns:v="urn:schemas-microsoft-com:vml"
28
+ xmlns:w10="urn:schemas-microsoft-com:office:word"
29
+ xmlns:ns17="urn:schemas-microsoft-com:office:powerpoint"
30
+ xmlns:odx="http://opendope.org/xpaths"
31
+ xmlns:odc="http://opendope.org/conditions"
32
+ xmlns:odq="http://opendope.org/questions"
33
+ xmlns:odi="http://opendope.org/components"
34
+ xmlns:odgm="http://opendope.org/SmartArt/DataHierarchy"
35
+ xmlns:ns24="http://schemas.openxmlformats.org/officeDocument/2006/bibliography"
36
+ xmlns:ns25="http://schemas.openxmlformats.org/drawingml/2006/compatibility"
37
+ xmlns:ns26="http://schemas.openxmlformats.org/drawingml/2006/lockedCanvas">
38
+ <w:body>
39
+ <w:altChunk r:id="htmlChunk" />
40
+ <w:sectPr>
41
+ <w:pgSz w:w="${width}" w:h="${height}" w:orient="${orient}" />
42
+ <w:pgMar w:top="${margins.top}"
43
+ w:right="${margins.right}"
44
+ w:bottom="${margins.bottom}"
45
+ w:left="${margins.left}"
46
+ w:header="${margins.header}"
47
+ w:footer="${margins.footer}"
48
+ w:gutter="${margins.gutter}"/>
49
+ </w:sectPr>
50
+ </w:body>
51
+ </w:document>
52
+ `;
53
+ };
54
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnRUZW1wbGF0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Jic2YtdXRpbGl0aWVzL3NyYy9saWIvc2hhcmVkL2NvbmZpZy93b3JkL3dvcmQtd29yay90ZW1wbGF0ZXMvZG9jdW1lbnRUZW1wbGF0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQUMsTUFBTSxjQUFjLEdBQUc7SUFDNUIsR0FBRyxFQUFFLElBQUk7SUFDVCxLQUFLLEVBQUUsSUFBSTtJQUNYLE1BQU0sRUFBRSxJQUFJO0lBQ1osSUFBSSxFQUFFLElBQUk7SUFDVixNQUFNLEVBQUUsR0FBRztJQUNYLE1BQU0sRUFBRSxHQUFHO0lBQ1gsTUFBTSxFQUFFLENBQUM7Q0FDVixDQUFBO0FBTUQsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQUcsQ0FBQyxLQUFhLEVBQUUsTUFBYyxFQUFFLE1BQWMsRUFBRSxPQUFnQixFQUFFLEVBQUU7SUFDbEcsT0FBTzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O3FCQThCWSxLQUFLLFVBQVUsTUFBTSxlQUFlLE1BQU07d0JBQ3ZDLE9BQU8sQ0FBQyxHQUFHOzBCQUNULE9BQU8sQ0FBQyxLQUFLOzJCQUNaLE9BQU8sQ0FBQyxNQUFNO3lCQUNoQixPQUFPLENBQUMsSUFBSTsyQkFDVixPQUFPLENBQUMsTUFBTTsyQkFDZCxPQUFPLENBQUMsTUFBTTsyQkFDZCxPQUFPLENBQUMsTUFBTTs7OztDQUl4QyxDQUFBO0FBQ0QsQ0FBQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IGRlZmF1bHRNYXJnaW5zID0ge1xyXG4gIHRvcDogMTQ0MCxcclxuICByaWdodDogMTQ0MCxcclxuICBib3R0b206IDE0NDAsXHJcbiAgbGVmdDogMTQ0MCxcclxuICBoZWFkZXI6IDcyMCxcclxuICBmb290ZXI6IDcyMCxcclxuICBndXR0ZXI6IDAsXHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIE1hcmdpbnMgPSB0eXBlb2YgZGVmYXVsdE1hcmdpbnNcclxuXHJcbmV4cG9ydCB0eXBlIE9yaWVudCA9ICdsYW5kc2NhcGUnIHwgJ3BvcnRyYWl0J1xyXG5cclxuZXhwb3J0IGNvbnN0IGRvY3VtZW50VGVtcGxhdGUgPSAod2lkdGg6IG51bWJlciwgaGVpZ2h0OiBudW1iZXIsIG9yaWVudDogc3RyaW5nLCBtYXJnaW5zOiBNYXJnaW5zKSA9PiB7XHJcbiAgcmV0dXJuIGA8P3htbCB2ZXJzaW9uPVwiMS4wXCIgZW5jb2Rpbmc9XCJVVEYtOFwiIHN0YW5kYWxvbmU9XCJ5ZXNcIj8+XHJcbjx3OmRvY3VtZW50XHJcbiAgeG1sbnM6dz1cImh0dHA6Ly9zY2hlbWFzLm9wZW54bWxmb3JtYXRzLm9yZy93b3JkcHJvY2Vzc2luZ21sLzIwMDYvbWFpblwiXHJcbiAgeG1sbnM6bT1cImh0dHA6Ly9zY2hlbWFzLm9wZW54bWxmb3JtYXRzLm9yZy9vZmZpY2VEb2N1bWVudC8yMDA2L21hdGhcIlxyXG4gIHhtbG5zOnI9XCJodHRwOi8vc2NoZW1hcy5vcGVueG1sZm9ybWF0cy5vcmcvb2ZmaWNlRG9jdW1lbnQvMjAwNi9yZWxhdGlvbnNoaXBzXCJcclxuICB4bWxuczp3cD1cImh0dHA6Ly9zY2hlbWFzLm9wZW54bWxmb3JtYXRzLm9yZy9kcmF3aW5nbWwvMjAwNi93b3JkcHJvY2Vzc2luZ0RyYXdpbmdcIlxyXG4gIHhtbG5zOmE9XCJodHRwOi8vc2NoZW1hcy5vcGVueG1sZm9ybWF0cy5vcmcvZHJhd2luZ21sLzIwMDYvbWFpblwiXHJcbiAgeG1sbnM6bnM2PVwiaHR0cDovL3NjaGVtYXMub3BlbnhtbGZvcm1hdHMub3JnL3NjaGVtYUxpYnJhcnkvMjAwNi9tYWluXCJcclxuICB4bWxuczpjPVwiaHR0cDovL3NjaGVtYXMub3BlbnhtbGZvcm1hdHMub3JnL2RyYXdpbmdtbC8yMDA2L2NoYXJ0XCJcclxuICB4bWxuczpuczg9XCJodHRwOi8vc2NoZW1hcy5vcGVueG1sZm9ybWF0cy5vcmcvZHJhd2luZ21sLzIwMDYvY2hhcnREcmF3aW5nXCJcclxuICB4bWxuczpkZ209XCJodHRwOi8vc2NoZW1hcy5vcGVueG1sZm9ybWF0cy5vcmcvZHJhd2luZ21sLzIwMDYvZGlhZ3JhbVwiXHJcbiAgeG1sbnM6cGljPVwiaHR0cDovL3NjaGVtYXMub3BlbnhtbGZvcm1hdHMub3JnL2RyYXdpbmdtbC8yMDA2L3BpY3R1cmVcIlxyXG4gIHhtbG5zOm5zMTE9XCJodHRwOi8vc2NoZW1hcy5vcGVueG1sZm9ybWF0cy5vcmcvZHJhd2luZ21sLzIwMDYvc3ByZWFkc2hlZXREcmF3aW5nXCJcclxuICB4bWxuczpkc3A9XCJodHRwOi8vc2NoZW1hcy5taWNyb3NvZnQuY29tL29mZmljZS9kcmF3aW5nLzIwMDgvZGlhZ3JhbVwiXHJcbiAgeG1sbnM6bnMxMz1cInVybjpzY2hlbWFzLW1pY3Jvc29mdC1jb206b2ZmaWNlOmV4Y2VsXCJcclxuICB4bWxuczpvPVwidXJuOnNjaGVtYXMtbWljcm9zb2Z0LWNvbTpvZmZpY2U6b2ZmaWNlXCJcclxuICB4bWxuczp2PVwidXJuOnNjaGVtYXMtbWljcm9zb2Z0LWNvbTp2bWxcIlxyXG4gIHhtbG5zOncxMD1cInVybjpzY2hlbWFzLW1pY3Jvc29mdC1jb206b2ZmaWNlOndvcmRcIlxyXG4gIHhtbG5zOm5zMTc9XCJ1cm46c2NoZW1hcy1taWNyb3NvZnQtY29tOm9mZmljZTpwb3dlcnBvaW50XCJcclxuICB4bWxuczpvZHg9XCJodHRwOi8vb3BlbmRvcGUub3JnL3hwYXRoc1wiXHJcbiAgeG1sbnM6b2RjPVwiaHR0cDovL29wZW5kb3BlLm9yZy9jb25kaXRpb25zXCJcclxuICB4bWxuczpvZHE9XCJodHRwOi8vb3BlbmRvcGUub3JnL3F1ZXN0aW9uc1wiXHJcbiAgeG1sbnM6b2RpPVwiaHR0cDovL29wZW5kb3BlLm9yZy9jb21wb25lbnRzXCJcclxuICB4bWxuczpvZGdtPVwiaHR0cDovL29wZW5kb3BlLm9yZy9TbWFydEFydC9EYXRhSGllcmFyY2h5XCJcclxuICB4bWxuczpuczI0PVwiaHR0cDovL3NjaGVtYXMub3BlbnhtbGZvcm1hdHMub3JnL29mZmljZURvY3VtZW50LzIwMDYvYmlibGlvZ3JhcGh5XCJcclxuICB4bWxuczpuczI1PVwiaHR0cDovL3NjaGVtYXMub3BlbnhtbGZvcm1hdHMub3JnL2RyYXdpbmdtbC8yMDA2L2NvbXBhdGliaWxpdHlcIlxyXG4gIHhtbG5zOm5zMjY9XCJodHRwOi8vc2NoZW1hcy5vcGVueG1sZm9ybWF0cy5vcmcvZHJhd2luZ21sLzIwMDYvbG9ja2VkQ2FudmFzXCI+XHJcbiAgPHc6Ym9keT5cclxuICAgIDx3OmFsdENodW5rIHI6aWQ9XCJodG1sQ2h1bmtcIiAvPlxyXG4gICAgPHc6c2VjdFByPlxyXG4gICAgICA8dzpwZ1N6IHc6dz1cIiR7d2lkdGh9XCIgdzpoPVwiJHtoZWlnaHR9XCIgdzpvcmllbnQ9XCIke29yaWVudH1cIiAvPlxyXG4gICAgICA8dzpwZ01hciB3OnRvcD1cIiR7bWFyZ2lucy50b3B9XCJcclxuICAgICAgICAgICAgICAgdzpyaWdodD1cIiR7bWFyZ2lucy5yaWdodH1cIlxyXG4gICAgICAgICAgICAgICB3OmJvdHRvbT1cIiR7bWFyZ2lucy5ib3R0b219XCJcclxuICAgICAgICAgICAgICAgdzpsZWZ0PVwiJHttYXJnaW5zLmxlZnR9XCJcclxuICAgICAgICAgICAgICAgdzpoZWFkZXI9XCIke21hcmdpbnMuaGVhZGVyfVwiXHJcbiAgICAgICAgICAgICAgIHc6Zm9vdGVyPVwiJHttYXJnaW5zLmZvb3Rlcn1cIlxyXG4gICAgICAgICAgICAgICB3Omd1dHRlcj1cIiR7bWFyZ2lucy5ndXR0ZXJ9XCIvPlxyXG4gICAgPC93OnNlY3RQcj5cclxuICA8L3c6Ym9keT5cclxuPC93OmRvY3VtZW50PlxyXG5gXHJcbn1cclxuIl19
@@ -0,0 +1,4 @@
1
+ export * from './documentTemplate';
2
+ export * from './mhtDocumentTemplate';
3
+ export * from './mhtPartTemplate';
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYnNmLXV0aWxpdGllcy9zcmMvbGliL3NoYXJlZC9jb25maWcvd29yZC93b3JkLXdvcmsvdGVtcGxhdGVzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsb0JBQW9CLENBQUE7QUFDbEMsY0FBYyx1QkFBdUIsQ0FBQTtBQUNyQyxjQUFjLG1CQUFtQixDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9kb2N1bWVudFRlbXBsYXRlJ1xyXG5leHBvcnQgKiBmcm9tICcuL21odERvY3VtZW50VGVtcGxhdGUnXHJcbmV4cG9ydCAqIGZyb20gJy4vbWh0UGFydFRlbXBsYXRlJ1xyXG4iXX0=
@@ -0,0 +1,22 @@
1
+ export const mhtDocumentTemplate = (htmlSource, contentParts) => {
2
+ debugger;
3
+ return `MIME-Version: 1.0
4
+ Content-Type: multipart/related;
5
+ type="text/html";
6
+ boundary="----=mhtDocumentPart"
7
+
8
+
9
+ ------=mhtDocumentPart
10
+ Content-Type: text/html;
11
+ charset="utf-8"
12
+ Content-Transfer-Encoding: quoted-printable
13
+ Content-Location: file:///C:/fake/document.html
14
+
15
+ ${htmlSource}
16
+
17
+ ${contentParts}
18
+
19
+ ------=mhtDocumentPart--
20
+ `;
21
+ };
22
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWh0RG9jdW1lbnRUZW1wbGF0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Jic2YtdXRpbGl0aWVzL3NyYy9saWIvc2hhcmVkL2NvbmZpZy93b3JkL3dvcmQtd29yay90ZW1wbGF0ZXMvbWh0RG9jdW1lbnRUZW1wbGF0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBRyxDQUFDLFVBQWtCLEVBQUUsWUFBb0IsRUFBRSxFQUFFO0lBQzlFLFFBQVEsQ0FBQztJQUNULE9BQU87Ozs7Ozs7Ozs7OztFQVlQLFVBQVU7O0VBRVYsWUFBWTs7O0NBR2IsQ0FBQTtBQUNELENBQUMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBtaHREb2N1bWVudFRlbXBsYXRlID0gKGh0bWxTb3VyY2U6IHN0cmluZywgY29udGVudFBhcnRzOiBzdHJpbmcpID0+IHtcclxuICBkZWJ1Z2dlcjtcclxuICByZXR1cm4gYE1JTUUtVmVyc2lvbjogMS4wXHJcbkNvbnRlbnQtVHlwZTogbXVsdGlwYXJ0L3JlbGF0ZWQ7XHJcbiAgICB0eXBlPVwidGV4dC9odG1sXCI7XHJcbiAgICBib3VuZGFyeT1cIi0tLS09bWh0RG9jdW1lbnRQYXJ0XCJcclxuXHJcblxyXG4tLS0tLS09bWh0RG9jdW1lbnRQYXJ0XHJcbkNvbnRlbnQtVHlwZTogdGV4dC9odG1sO1xyXG4gICAgY2hhcnNldD1cInV0Zi04XCJcclxuQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogcXVvdGVkLXByaW50YWJsZVxyXG5Db250ZW50LUxvY2F0aW9uOiBmaWxlOi8vL0M6L2Zha2UvZG9jdW1lbnQuaHRtbFxyXG5cclxuJHtodG1sU291cmNlfVxyXG5cclxuJHtjb250ZW50UGFydHN9XHJcblxyXG4tLS0tLS09bWh0RG9jdW1lbnRQYXJ0LS1cclxuYFxyXG59XHJcbiJdfQ==
@@ -0,0 +1,10 @@
1
+ export const mhtPartTemplate = (contentType, contentEncoding, contentLocation, encodedContent) => {
2
+ return `------=mhtDocumentPart
3
+ Content-Type: ${contentType}
4
+ Content-Transfer-Encoding: ${contentEncoding}
5
+ Content-Location: ${contentLocation}
6
+
7
+ ${encodedContent}
8
+ `;
9
+ };
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWh0UGFydFRlbXBsYXRlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmJzZi11dGlsaXRpZXMvc3JjL2xpYi9zaGFyZWQvY29uZmlnL3dvcmQvd29yZC13b3JrL3RlbXBsYXRlcy9taHRQYXJ0VGVtcGxhdGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0sZUFBZSxHQUFHLENBQzdCLFdBQW1CLEVBQ25CLGVBQXVCLEVBQ3ZCLGVBQXVCLEVBQ3ZCLGNBQXNCLEVBQ3RCLEVBQUU7SUFDRixPQUFPO2dCQUNPLFdBQVc7NkJBQ0UsZUFBZTtvQkFDeEIsZUFBZTs7RUFFakMsY0FBYztDQUNmLENBQUE7QUFDRCxDQUFDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgbWh0UGFydFRlbXBsYXRlID0gKFxyXG4gIGNvbnRlbnRUeXBlOiBzdHJpbmcsXHJcbiAgY29udGVudEVuY29kaW5nOiBzdHJpbmcsXHJcbiAgY29udGVudExvY2F0aW9uOiBzdHJpbmcsXHJcbiAgZW5jb2RlZENvbnRlbnQ6IHN0cmluZyxcclxuKSA9PiB7XHJcbiAgcmV0dXJuIGAtLS0tLS09bWh0RG9jdW1lbnRQYXJ0XHJcbkNvbnRlbnQtVHlwZTogJHtjb250ZW50VHlwZX1cclxuQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogJHtjb250ZW50RW5jb2Rpbmd9XHJcbkNvbnRlbnQtTG9jYXRpb246ICR7Y29udGVudExvY2F0aW9ufVxyXG5cclxuJHtlbmNvZGVkQ29udGVudH1cclxuYFxyXG59XHJcbiJdfQ==
@@ -0,0 +1,26 @@
1
+ import { mhtDocumentTemplate, mhtPartTemplate } from './templates';
2
+ export function getMHTdocument(htmlSource) {
3
+ debugger;
4
+ const ref = _prepareImageParts(htmlSource);
5
+ const imageContentPartsString = ref.imageContentParts.join('\n');
6
+ htmlSource = ref.htmlSource.replace(/\=/g, '=3D');
7
+ return mhtDocumentTemplate(htmlSource, imageContentPartsString);
8
+ }
9
+ function _prepareImageParts(htmlSource) {
10
+ debugger;
11
+ const imageContentParts = [];
12
+ const inlinedSrcPattern = /"data:(\w+\/\w+);(\w+),(\S+)"/g;
13
+ const inlinedReplacer = (match, contentType, contentEncoding, encodedContent) => {
14
+ const index = imageContentParts.length;
15
+ const extension = contentType.split('/')[1];
16
+ const contentLocation = `file:///C:/fake/image${index}.${extension}`;
17
+ imageContentParts.push(mhtPartTemplate(contentType, contentEncoding, contentLocation, encodedContent));
18
+ return `\"${contentLocation}\"`;
19
+ };
20
+ if (!/<img/g.test(htmlSource)) {
21
+ return { htmlSource, imageContentParts };
22
+ }
23
+ htmlSource = htmlSource.replace(inlinedSrcPattern, inlinedReplacer);
24
+ return { htmlSource, imageContentParts };
25
+ }
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYnNmLXV0aWxpdGllcy9zcmMvbGliL3NoYXJlZC9jb25maWcvd29yZC93b3JkLXdvcmsvdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLG1CQUFtQixFQUFFLGVBQWUsRUFBRSxNQUFNLGFBQWEsQ0FBQTtBQUVsRSxNQUFNLFVBQVUsY0FBYyxDQUFDLFVBQWtCO0lBQy9DLFFBQVEsQ0FBQTtJQUNSLE1BQU0sR0FBRyxHQUFHLGtCQUFrQixDQUFDLFVBQVUsQ0FBQyxDQUFBO0lBQzFDLE1BQU0sdUJBQXVCLEdBQUcsR0FBRyxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQTtJQUNoRSxVQUFVLEdBQUcsR0FBRyxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQyxDQUFBO0lBQ2pELE9BQU8sbUJBQW1CLENBQUMsVUFBVSxFQUFFLHVCQUF1QixDQUFDLENBQUE7QUFDakUsQ0FBQztBQUVELFNBQVMsa0JBQWtCLENBQUMsVUFBa0I7SUFDNUMsUUFBUSxDQUFBO0lBQ1IsTUFBTSxpQkFBaUIsR0FBYSxFQUFFLENBQUE7SUFDdEMsTUFBTSxpQkFBaUIsR0FBRyxnQ0FBZ0MsQ0FBQTtJQUMxRCxNQUFNLGVBQWUsR0FBRyxDQUFDLEtBQWEsRUFBRSxXQUFtQixFQUFFLGVBQXVCLEVBQUUsY0FBc0IsRUFBRSxFQUFFO1FBQzlHLE1BQU0sS0FBSyxHQUFHLGlCQUFpQixDQUFDLE1BQU0sQ0FBQTtRQUN0QyxNQUFNLFNBQVMsR0FBRyxXQUFXLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFBO1FBQzNDLE1BQU0sZUFBZSxHQUFHLHdCQUF3QixLQUFLLElBQUksU0FBUyxFQUFFLENBQUE7UUFDcEUsaUJBQWlCLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxXQUFXLEVBQUUsZUFBZSxFQUFFLGVBQWUsRUFBRSxjQUFjLENBQUMsQ0FBQyxDQUFBO1FBQ3RHLE9BQU8sS0FBSyxlQUFlLElBQUksQ0FBQTtJQUNqQyxDQUFDLENBQUE7SUFDRCxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsRUFBRTtRQUM3QixPQUFPLEVBQUUsVUFBVSxFQUFFLGlCQUFpQixFQUFFLENBQUE7S0FDekM7SUFDRCxVQUFVLEdBQUcsVUFBVSxDQUFDLE9BQU8sQ0FBQyxpQkFBaUIsRUFBRSxlQUFlLENBQUMsQ0FBQTtJQUNuRSxPQUFPLEVBQUUsVUFBVSxFQUFFLGlCQUFpQixFQUFFLENBQUE7QUFDMUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IG1odERvY3VtZW50VGVtcGxhdGUsIG1odFBhcnRUZW1wbGF0ZSB9IGZyb20gJy4vdGVtcGxhdGVzJ1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGdldE1IVGRvY3VtZW50KGh0bWxTb3VyY2U6IHN0cmluZykge1xyXG4gIGRlYnVnZ2VyXHJcbiAgY29uc3QgcmVmID0gX3ByZXBhcmVJbWFnZVBhcnRzKGh0bWxTb3VyY2UpXHJcbiAgY29uc3QgaW1hZ2VDb250ZW50UGFydHNTdHJpbmcgPSByZWYuaW1hZ2VDb250ZW50UGFydHMuam9pbignXFxuJylcclxuICBodG1sU291cmNlID0gcmVmLmh0bWxTb3VyY2UucmVwbGFjZSgvXFw9L2csICc9M0QnKVxyXG4gIHJldHVybiBtaHREb2N1bWVudFRlbXBsYXRlKGh0bWxTb3VyY2UsIGltYWdlQ29udGVudFBhcnRzU3RyaW5nKVxyXG59XHJcblxyXG5mdW5jdGlvbiBfcHJlcGFyZUltYWdlUGFydHMoaHRtbFNvdXJjZTogc3RyaW5nKSB7XHJcbiAgZGVidWdnZXJcclxuICBjb25zdCBpbWFnZUNvbnRlbnRQYXJ0czogc3RyaW5nW10gPSBbXVxyXG4gIGNvbnN0IGlubGluZWRTcmNQYXR0ZXJuID0gL1wiZGF0YTooXFx3K1xcL1xcdyspOyhcXHcrKSwoXFxTKylcIi9nXHJcbiAgY29uc3QgaW5saW5lZFJlcGxhY2VyID0gKG1hdGNoOiBzdHJpbmcsIGNvbnRlbnRUeXBlOiBzdHJpbmcsIGNvbnRlbnRFbmNvZGluZzogc3RyaW5nLCBlbmNvZGVkQ29udGVudDogc3RyaW5nKSA9PiB7XHJcbiAgICBjb25zdCBpbmRleCA9IGltYWdlQ29udGVudFBhcnRzLmxlbmd0aFxyXG4gICAgY29uc3QgZXh0ZW5zaW9uID0gY29udGVudFR5cGUuc3BsaXQoJy8nKVsxXVxyXG4gICAgY29uc3QgY29udGVudExvY2F0aW9uID0gYGZpbGU6Ly8vQzovZmFrZS9pbWFnZSR7aW5kZXh9LiR7ZXh0ZW5zaW9ufWBcclxuICAgIGltYWdlQ29udGVudFBhcnRzLnB1c2gobWh0UGFydFRlbXBsYXRlKGNvbnRlbnRUeXBlLCBjb250ZW50RW5jb2RpbmcsIGNvbnRlbnRMb2NhdGlvbiwgZW5jb2RlZENvbnRlbnQpKVxyXG4gICAgcmV0dXJuIGBcXFwiJHtjb250ZW50TG9jYXRpb259XFxcImBcclxuICB9XHJcbiAgaWYgKCEvPGltZy9nLnRlc3QoaHRtbFNvdXJjZSkpIHtcclxuICAgIHJldHVybiB7IGh0bWxTb3VyY2UsIGltYWdlQ29udGVudFBhcnRzIH1cclxuICB9XHJcbiAgaHRtbFNvdXJjZSA9IGh0bWxTb3VyY2UucmVwbGFjZShpbmxpbmVkU3JjUGF0dGVybiwgaW5saW5lZFJlcGxhY2VyKVxyXG4gIHJldHVybiB7IGh0bWxTb3VyY2UsIGltYWdlQ29udGVudFBhcnRzIH1cclxufVxyXG4iXX0=
@@ -0,0 +1,8 @@
1
+ export class WordDocumentModel {
2
+ constructor() {
3
+ this.options = new DocumentOptionsModel();
4
+ }
5
+ }
6
+ export class DocumentOptionsModel {
7
+ }
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiV29yZERvY3VtZW50TW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYnNmLXV0aWxpdGllcy9zcmMvbGliL3NoYXJlZC9tb2RlbHMvV29yZERvY3VtZW50TW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxPQUFPLGlCQUFpQjtJQUE5QjtRQUtFLFlBQU8sR0FBc0IsSUFBSSxvQkFBb0IsRUFBRSxDQUFBO0lBQ3pELENBQUM7Q0FBQTtBQUNELE1BQU0sT0FBTyxvQkFBb0I7Q0FXaEMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY2xhc3MgV29yZERvY3VtZW50TW9kZWxcclxue1xyXG4gIGhlYWRlcjpzdHJpbmc7XHJcbiAgZm9vdGVyOnN0cmluZztcclxuICBib2R5OnN0cmluZztcclxuICBvcHRpb25zOkRvY3VtZW50T3B0aW9uc01vZGVsPW5ldyBEb2N1bWVudE9wdGlvbnNNb2RlbCgpXHJcbn1cclxuZXhwb3J0IGNsYXNzIERvY3VtZW50T3B0aW9uc01vZGVsXHJcbntcclxuICBwYWdlSGVpZ2h0Om51bWJlcjtcclxuICBwYWdlV2lkdGg6bnVtYmVyO1xyXG4gIHRvcDpudW1iZXI7XHJcbiAgYm90dG9tOm51bWJlcjtcclxuICBsZWZ0Om51bWJlcjtcclxuICByaWdodDpudW1iZXI7XHJcbiAgaXNMYW5kc2NhcGU6Ym9vbGVhbjtcclxuICBzaG93UGFnaW5nOmJvb2xlYW47XHJcblxyXG59XHJcbiJdfQ==
@@ -0,0 +1,37 @@
1
+ import { Injectable } from "@angular/core";
2
+ import { ConfigurationService } from "./configuration.service";
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "./configuration.service";
5
+ export class AppearanceConfigurationService {
6
+ constructor(configService) {
7
+ this.configService = configService;
8
+ }
9
+ getLayoutTheme() {
10
+ return this.configService.getConfigurationValue('AnonymousLayout_Theme');
11
+ }
12
+ getFooterText() {
13
+ return this.configService.getConfigurationValue('AnonymousLayout_FooterText');
14
+ }
15
+ getPageTitle() {
16
+ return this.configService.getConfigurationValue('AnonymousLayout_PageTitle');
17
+ }
18
+ getFavIcon() {
19
+ return this.configService.getConfigurationValue('AnonymousLayout_FavIcon');
20
+ }
21
+ getCustomStyles() {
22
+ return this.configService.getConfigurationValue('AnonymousLayout_CustomStyles');
23
+ }
24
+ getLogo() {
25
+ return this.configService.getConfigurationValue('AnonymousLayout_Logo');
26
+ }
27
+ }
28
+ AppearanceConfigurationService.ɵprov = i0.ɵɵdefineInjectable({ factory: function AppearanceConfigurationService_Factory() { return new AppearanceConfigurationService(i0.ɵɵinject(i1.ConfigurationService)); }, token: AppearanceConfigurationService, providedIn: "root" });
29
+ AppearanceConfigurationService.decorators = [
30
+ { type: Injectable, args: [{
31
+ providedIn: 'root'
32
+ },] }
33
+ ];
34
+ AppearanceConfigurationService.ctorParameters = () => [
35
+ { type: ConfigurationService }
36
+ ];
37
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQXBwZWFyYW5jZUNvbmZpZ3VyYXRpb24uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Jic2YtdXRpbGl0aWVzL3NyYy9saWIvc2hhcmVkL3NlcnZpY2VzL0FwcGVhcmFuY2VDb25maWd1cmF0aW9uLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQzs7O0FBSy9ELE1BQU0sT0FBTyw4QkFBOEI7SUFDdkMsWUFBb0IsYUFBbUM7UUFBbkMsa0JBQWEsR0FBYixhQUFhLENBQXNCO0lBQ3ZELENBQUM7SUFFRCxjQUFjO1FBQ1YsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLHFCQUFxQixDQUFDLHVCQUF1QixDQUFDLENBQUM7SUFDN0UsQ0FBQztJQUNELGFBQWE7UUFDVCxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMscUJBQXFCLENBQUMsNEJBQTRCLENBQUMsQ0FBQztJQUNsRixDQUFDO0lBQ0QsWUFBWTtRQUNSLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxxQkFBcUIsQ0FBQywyQkFBMkIsQ0FBQyxDQUFDO0lBQ2pGLENBQUM7SUFDRCxVQUFVO1FBQ04sT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLHFCQUFxQixDQUFDLHlCQUF5QixDQUFDLENBQUM7SUFDL0UsQ0FBQztJQUNELGVBQWU7UUFDWCxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMscUJBQXFCLENBQUMsOEJBQThCLENBQUMsQ0FBQztJQUNwRixDQUFDO0lBQ0QsT0FBTztRQUNILE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxxQkFBcUIsQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO0lBQzVFLENBQUM7Ozs7WUF4QkosVUFBVSxTQUFDO2dCQUNSLFVBQVUsRUFBRSxNQUFNO2FBQ3JCOzs7WUFKUSxvQkFBb0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gXCJAbmd4LXRyYW5zbGF0ZS9jb3JlXCI7XHJcbmltcG9ydCB7IENvbmZpZ3VyYXRpb25TZXJ2aWNlIH0gZnJvbSBcIi4vY29uZmlndXJhdGlvbi5zZXJ2aWNlXCI7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgICBwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIEFwcGVhcmFuY2VDb25maWd1cmF0aW9uU2VydmljZSB7XHJcbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNvbmZpZ1NlcnZpY2U6IENvbmZpZ3VyYXRpb25TZXJ2aWNlKSB7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0TGF5b3V0VGhlbWUoKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuY29uZmlnU2VydmljZS5nZXRDb25maWd1cmF0aW9uVmFsdWUoJ0Fub255bW91c0xheW91dF9UaGVtZScpO1xyXG4gICAgfVxyXG4gICAgZ2V0Rm9vdGVyVGV4dCgpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5jb25maWdTZXJ2aWNlLmdldENvbmZpZ3VyYXRpb25WYWx1ZSgnQW5vbnltb3VzTGF5b3V0X0Zvb3RlclRleHQnKTtcclxuICAgIH1cclxuICAgIGdldFBhZ2VUaXRsZSgpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5jb25maWdTZXJ2aWNlLmdldENvbmZpZ3VyYXRpb25WYWx1ZSgnQW5vbnltb3VzTGF5b3V0X1BhZ2VUaXRsZScpO1xyXG4gICAgfVxyXG4gICAgZ2V0RmF2SWNvbigpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5jb25maWdTZXJ2aWNlLmdldENvbmZpZ3VyYXRpb25WYWx1ZSgnQW5vbnltb3VzTGF5b3V0X0Zhdkljb24nKTtcclxuICAgIH1cclxuICAgIGdldEN1c3RvbVN0eWxlcygpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5jb25maWdTZXJ2aWNlLmdldENvbmZpZ3VyYXRpb25WYWx1ZSgnQW5vbnltb3VzTGF5b3V0X0N1c3RvbVN0eWxlcycpO1xyXG4gICAgfVxyXG4gICAgZ2V0TG9nbygpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5jb25maWdTZXJ2aWNlLmdldENvbmZpZ3VyYXRpb25WYWx1ZSgnQW5vbnltb3VzTGF5b3V0X0xvZ28nKTtcclxuICAgIH1cclxufSJdfQ==
@@ -0,0 +1,26 @@
1
+ import { HttpClient } from "@angular/common/http";
2
+ import { Injectable } from "@angular/core";
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@angular/common/http";
5
+ export class ConfigurationService {
6
+ constructor(httpClient) {
7
+ this.httpClient = httpClient;
8
+ this.httpClient.get("./assets/config/configurations.json").subscribe(data => {
9
+ ConfigurationService.JsonData = data;
10
+ });
11
+ }
12
+ getConfigurationValue(key) {
13
+ return ConfigurationService.JsonData[key];
14
+ }
15
+ }
16
+ ConfigurationService.JsonData = [];
17
+ ConfigurationService.ɵprov = i0.ɵɵdefineInjectable({ factory: function ConfigurationService_Factory() { return new ConfigurationService(i0.ɵɵinject(i1.HttpClient)); }, token: ConfigurationService, providedIn: "root" });
18
+ ConfigurationService.decorators = [
19
+ { type: Injectable, args: [{
20
+ providedIn: 'root'
21
+ },] }
22
+ ];
23
+ ConfigurationService.ctorParameters = () => [
24
+ { type: HttpClient }
25
+ ];
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlndXJhdGlvbi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmJzZi11dGlsaXRpZXMvc3JjL2xpYi9zaGFyZWQvc2VydmljZXMvY29uZmlndXJhdGlvbi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNsRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFNM0MsTUFBTSxPQUFPLG9CQUFvQjtJQUU3QixZQUFvQixVQUFzQjtRQUF0QixlQUFVLEdBQVYsVUFBVSxDQUFZO1FBQ3RDLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLHFDQUFxQyxDQUFDLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ3hFLG9CQUFvQixDQUFDLFFBQVEsR0FBRyxJQUFhLENBQUM7UUFDaEQsQ0FBQyxDQUFDLENBQUE7SUFDUixDQUFDO0lBQ0QscUJBQXFCLENBQUMsR0FBVTtRQUM1QixPQUFRLG9CQUFvQixDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUMvQyxDQUFDOztBQVJLLDZCQUFRLEdBQU8sRUFBRSxDQUFBOzs7WUFKMUIsVUFBVSxTQUFDO2dCQUNSLFVBQVUsRUFBRSxNQUFNO2FBQ3JCOzs7WUFOUSxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gXCJAYW5ndWxhci9jb21tb24vaHR0cFwiO1xyXG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gXCJAbmd4LXRyYW5zbGF0ZS9jb3JlXCI7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgICBwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIENvbmZpZ3VyYXRpb25TZXJ2aWNlIHtcclxuICAgc3RhdGljIEpzb25EYXRhOmFueVtdPVtdXHJcbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIGh0dHBDbGllbnQ6IEh0dHBDbGllbnQpe1xyXG4gICAgICAgIHRoaXMuaHR0cENsaWVudC5nZXQoXCIuL2Fzc2V0cy9jb25maWcvY29uZmlndXJhdGlvbnMuanNvblwiKS5zdWJzY3JpYmUoZGF0YSA9PntcclxuICAgICAgICAgICAgQ29uZmlndXJhdGlvblNlcnZpY2UuSnNvbkRhdGEgPSBkYXRhIGFzIGFueVtdO1xyXG4gICAgICAgICAgfSlcclxuICAgIH1cclxuICAgIGdldENvbmZpZ3VyYXRpb25WYWx1ZShrZXk6c3RyaW5nKSB7XHJcbiAgICAgICAgcmV0dXJuICBDb25maWd1cmF0aW9uU2VydmljZS5Kc29uRGF0YVtrZXldO1xyXG4gICAgfVxyXG59Il19
@@ -0,0 +1,168 @@
1
+ import { __decorate } from "tslib";
2
+ import { Injectable } from '@angular/core';
3
+ import { BlockUI } from 'ng-block-ui';
4
+ import { UtilityService } from './utility.service';
5
+ import { RequestOptionsModel } from '../models/RequestOptionsModel';
6
+ import * as i0 from "@angular/core";
7
+ import * as i1 from "./utility.service";
8
+ export class ControlValidationService {
9
+ constructor(utilityService) {
10
+ this.utilityService = utilityService;
11
+ this.requestOptions = new RequestOptionsModel();
12
+ this.isCreatedBefor = false;
13
+ }
14
+ showGlobalError(errorMessage, formId, deleteOld) {
15
+ let globalErorrElement = document.getElementsByClassName('alert alert-InvalidValidation bg-light-danger text-danger');
16
+ if (globalErorrElement.length > 0) {
17
+ this.removeElementsByClass('alert alert-InvalidValidation bg-light-danger text-danger');
18
+ }
19
+ if (this.isCreatedBefor == true) {
20
+ this.removeElementsByClass('alert alert-InvalidValidation bg-light-danger text-danger');
21
+ }
22
+ // tslint:disable-next-line: prefer-const
23
+ if (!formId)
24
+ formId = "currentForm";
25
+ var object = document.getElementById(formId);
26
+ const tagName = 'div';
27
+ // tslint:disable-next-line: prefer-const
28
+ var elementToAppend = document.createElement(tagName); // Your tag name here
29
+ let message = "";
30
+ if (!errorMessage || (typeof errorMessage == "string")) {
31
+ if (localStorage.getItem('language') == "ar")
32
+ message = errorMessage ? errorMessage : "لديك بعص الأخطاء . من فضلك قم بالمراجعه ";
33
+ else
34
+ message = errorMessage ? errorMessage : "You have some validation errors. Please check below";
35
+ elementToAppend.innerHTML = "<ul class='list-unstyled m-0 py-3 d-flex align-items-center fs-6'><li><i class='fa fa-times-circle text-danger me-3 fs-2'></i>" + message + "</li></ul>";
36
+ elementToAppend.className += 'alert alert-InvalidValidation bg-light-danger text-danger';
37
+ elementToAppend.id += 'errorId';
38
+ // tslint:disable-next-line: prefer-for-of
39
+ const elementToAppen = elementToAppend.cloneNode(true);
40
+ // let targetElement = object.getElementsByClassName("b-control")[0];
41
+ object.insertBefore(elementToAppen, object.firstChild);
42
+ }
43
+ else {
44
+ elementToAppend.innerHTML = "<ul>";
45
+ for (const iterator of errorMessage) {
46
+ elementToAppend.innerHTML = "<li>" + iterator + "</li>";
47
+ }
48
+ elementToAppend.innerHTML = "</ul>";
49
+ elementToAppend.className += 'alert alert-InvalidValidation bg-light-danger text-danger';
50
+ elementToAppend.id += 'errorId';
51
+ // tslint:disable-next-line: prefer-for-of
52
+ const elementToAppen = elementToAppend.cloneNode(true);
53
+ // let targetElement = object.getElementsByClassName("b-control")[0];
54
+ object.insertBefore(elementToAppen, object.firstChild);
55
+ }
56
+ this.isCreatedBefor = true;
57
+ }
58
+ RemoveGlobalError() {
59
+ const removedList = document.getElementsByClassName('alert alert-InvalidValidation bg-light-danger text-danger');
60
+ // tslint:disable-next-line: prefer-for-of
61
+ for (let index = 0; index < removedList.length; index++) {
62
+ const element = removedList[index];
63
+ element.remove();
64
+ }
65
+ this.isCreatedBefor = false;
66
+ }
67
+ showInputErro(errors) {
68
+ // show error on top of form
69
+ this.showGlobalError();
70
+ // remove old error from server
71
+ this.removeElementsByClass('errortemplet');
72
+ // Looping in error Object
73
+ for (const key in errors) {
74
+ if (errors.hasOwnProperty(key)) {
75
+ for (const iterator of errors[key]) {
76
+ const input = document.querySelectorAll('[ng-reflect-name=' + key + ']')[0];
77
+ if (input.attributes['ng-reflect-name'].value === key) {
78
+ this.removeElementsByClass('erroclass-' + key);
79
+ const tagName = 'p';
80
+ const elementToAppend = document.createElement(tagName); // Your tag name here
81
+ elementToAppend.innerHTML = iterator;
82
+ elementToAppend.style.color = 'red';
83
+ elementToAppend.className += 'errortemplet erroclass-' + key;
84
+ const elementToappen = elementToAppend.cloneNode(true);
85
+ input.parentNode.insertBefore(elementToappen, input.lastChild);
86
+ break;
87
+ }
88
+ }
89
+ }
90
+ }
91
+ }
92
+ removeElementsByClass(className) {
93
+ const elements = document.getElementsByClassName(className);
94
+ while (elements.length > 0) {
95
+ elements[0].parentNode.removeChild(elements[0]);
96
+ }
97
+ }
98
+ renderServerErrors(form, err, requestOptions, formId) {
99
+ if (err.error == null) {
100
+ return;
101
+ }
102
+ let errorsArray = [];
103
+ this.requestOptions = requestOptions;
104
+ err.error.validation_errors.forEach((element) => {
105
+ let fieldName = element.field;
106
+ let controlName = element.controlName;
107
+ let message = element.message;
108
+ if (form == null) {
109
+ this.requestOptions.customErrorMessage ? this.utilityService.notifyErrorMessage(this.requestOptions.customErrorMessage) : this.utilityService.notifyErrorMessage(`${message}`);
110
+ }
111
+ else if (controlName && !this.hasControlName(form, controlName)) {
112
+ errorsArray.push(`${fieldName}: ${message}`);
113
+ // this.showGlobalError(`${fieldName}: ${message}`,formId )
114
+ }
115
+ else {
116
+ this.setFieldError(form, controlName, fieldName, message);
117
+ }
118
+ });
119
+ if (errorsArray.length > 0)
120
+ this.showGlobalError(errorsArray, formId);
121
+ }
122
+ hasControlName(form, controlName) {
123
+ let control = form.get(controlName);
124
+ return control != null;
125
+ }
126
+ setFieldError(form, controlName, fieldName, message) {
127
+ let control = null;
128
+ if (controlName)
129
+ control = form.get(controlName);
130
+ else
131
+ control = form.get(fieldName.split('.')[0]);
132
+ let errors = { "errorMassage": message };
133
+ let fieldNameArray = fieldName.split('.');
134
+ if (fieldNameArray.length >= 1) {
135
+ switch (fieldNameArray[fieldNameArray.length - 1].toLocaleLowerCase()) {
136
+ case "english":
137
+ let englishControl = control.get("English");
138
+ englishControl.setErrors(errors);
139
+ break;
140
+ case "arabic":
141
+ let arabicControl = control.get("Arabic");
142
+ arabicControl.setErrors(errors);
143
+ break;
144
+ default:
145
+ control.setErrors(errors);
146
+ }
147
+ }
148
+ else if (fieldNameArray.length == 1) {
149
+ control.setErrors(errors);
150
+ }
151
+ else {
152
+ this.requestOptions.customErrorMessage ? this.utilityService.notifyErrorMessage(this.requestOptions.customErrorMessage) : this.utilityService.notifyErrorMessage(`${message}`);
153
+ }
154
+ }
155
+ }
156
+ ControlValidationService.ɵprov = i0.ɵɵdefineInjectable({ factory: function ControlValidationService_Factory() { return new ControlValidationService(i0.ɵɵinject(i1.UtilityService)); }, token: ControlValidationService, providedIn: "root" });
157
+ ControlValidationService.decorators = [
158
+ { type: Injectable, args: [{
159
+ providedIn: 'root'
160
+ },] }
161
+ ];
162
+ ControlValidationService.ctorParameters = () => [
163
+ { type: UtilityService }
164
+ ];
165
+ __decorate([
166
+ BlockUI()
167
+ ], ControlValidationService.prototype, "blockUI", void 0);
168
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udHJvbHZhbGlkYXRpb24uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Jic2YtdXRpbGl0aWVzL3NyYy9saWIvc2hhcmVkL3NlcnZpY2VzL2NvbnRyb2x2YWxpZGF0aW9uLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQXVDLE1BQU0sZUFBZSxDQUFDO0FBRWhGLE9BQU8sRUFBRSxPQUFPLEVBQWEsTUFBTSxhQUFhLENBQUM7QUFLakQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLCtCQUErQixDQUFDOzs7QUFPcEUsTUFBTSxPQUFPLHdCQUF3QjtJQUduQyxZQUVZLGNBQThCO1FBQTlCLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQUpsQyxtQkFBYyxHQUF3QixJQUFJLG1CQUFtQixFQUFFLENBQUM7UUFTeEUsbUJBQWMsR0FBRyxLQUFLLENBQUM7SUFGdkIsQ0FBQztJQU1ELGVBQWUsQ0FBQyxZQUFnQyxFQUFFLE1BQWUsRUFBRSxTQUFtQjtRQUNwRixJQUFJLGtCQUFrQixHQUFHLFFBQVEsQ0FBQyxzQkFBc0IsQ0FBQywyREFBMkQsQ0FBQyxDQUFBO1FBQ3JILElBQUksa0JBQWtCLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtZQUNqQyxJQUFJLENBQUMscUJBQXFCLENBQUMsMkRBQTJELENBQUMsQ0FBQztTQUN6RjtRQUdELElBQUksSUFBSSxDQUFDLGNBQWMsSUFBSSxJQUFJLEVBQUU7WUFDL0IsSUFBSSxDQUFDLHFCQUFxQixDQUFDLDJEQUEyRCxDQUFDLENBQUM7U0FDekY7UUFFRCx5Q0FBeUM7UUFDekMsSUFBSSxDQUFDLE1BQU07WUFDVCxNQUFNLEdBQUcsYUFBYSxDQUFBO1FBQ3hCLElBQUksTUFBTSxHQUFHLFFBQVEsQ0FBQyxjQUFj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QUFjLENBQUMsa0JBQWtCLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLGtCQUFrQixDQUFDLEdBQUcsT0FBTyxFQUFFLENBQUMsQ0FBQTtTQUMvSztJQUdILENBQUM7Ozs7WUF0TEYsVUFBVSxTQUFDO2dCQUNWLFVBQVUsRUFBRSxNQUFNO2FBQ25COzs7WUFQUSxjQUFjOztBQW9CVjtJQUFWLE9BQU8sRUFBRTt5REFBb0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBPcHRpb25hbCwgSG9zdCwgU2tpcFNlbGYsIENvbXBvbmVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBJbmRpdmlkdWFsQ29uZmlnLCBUb2FzdHJTZXJ2aWNlIH0gZnJvbSAnbmd4LXRvYXN0cic7XHJcbmltcG9ydCB7IEJsb2NrVUksIE5nQmxvY2tVSSB9IGZyb20gJ25nLWJsb2NrLXVpJztcclxuaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sLCBDb250cm9sQ29udGFpbmVyLCBDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1IsIEZvcm1Db250cm9sLCBGb3Jtc01vZHVsZSwgRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XHJcbmltcG9ydCB7IEh0dHBFcnJvclJlc3BvbnNlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xyXG5pbXBvcnQgeyBFcnJvck1vZGVsIH0gZnJvbSAnLi4vbW9kZWxzL0Vycm9yTW9kZWwnO1xyXG5pbXBvcnQgeyBVdGlsaXR5U2VydmljZSB9IGZyb20gJy4vdXRpbGl0eS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgUmVxdWVzdE9wdGlvbnNNb2RlbCB9IGZyb20gJy4uL21vZGVscy9SZXF1ZXN0T3B0aW9uc01vZGVsJztcclxuXHJcblxyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290J1xyXG59KVxyXG5leHBvcnQgY2xhc3MgQ29udHJvbFZhbGlkYXRpb25TZXJ2aWNlIHtcclxuICBwcml2YXRlIHJlcXVlc3RPcHRpb25zOiBSZXF1ZXN0T3B0aW9uc01vZGVsID0gbmV3IFJlcXVlc3RPcHRpb25zTW9kZWwoKTtcclxuXHJcbiAgY29uc3RydWN0b3JcclxuICAgIChcclxuICAgICAgcHJpdmF0ZSB1dGlsaXR5U2VydmljZTogVXRpbGl0eVNlcnZpY2VcclxuICAgICkge1xyXG5cclxuICB9XHJcblxyXG4gIGlzQ3JlYXRlZEJlZm9yID0gZmFsc2U7XHJcblxyXG4gIEBCbG9ja1VJKCkgYmxvY2tVSTogTmdCbG9ja1VJO1xyXG5cclxuICBzaG93R2xvYmFsRXJyb3IoZXJyb3JNZXNzYWdlPzogc3RyaW5nIHwgc3RyaW5nW10sIGZvcm1JZD86IHN0cmluZywgZGVsZXRlT2xkPzogYm9vbGVhbikge1xyXG4gICAgbGV0IGdsb2JhbEVyb3JyRWxlbWVudCA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlDbGFzc05hbWUoJ2FsZXJ0IGFsZXJ0LUludmFsaWRWYWxpZGF0aW9uIGJnLWxpZ2h0LWRhbmdlciB0ZXh0LWRhbmdlcicpXHJcbiAgICBpZiAoZ2xvYmFsRXJvcnJFbGVtZW50Lmxlbmd0aCA+IDApIHtcclxuICAgICAgdGhpcy5yZW1vdmVFbGVtZW50c0J5Q2xhc3MoJ2FsZXJ0IGFsZXJ0LUludmFsaWRWYWxpZGF0aW9uIGJnLWxpZ2h0LWRhbmdlciB0ZXh0LWRhbmdlcicpO1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICBpZiAodGhpcy5pc0NyZWF0ZWRCZWZvciA9PSB0cnVlKSB7XHJcbiAgICAgIHRoaXMucmVtb3ZlRWxlbWVudHNCeUNsYXNzKCdhbGVydCBhbGVydC1JbnZhbGlkVmFsaWRhdGlvbiBiZy1saWdodC1kYW5nZXIgdGV4dC1kYW5nZXInKTtcclxuICAgIH1cclxuXHJcbiAgICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6IHByZWZlci1jb25zdFxyXG4gICAgaWYgKCFmb3JtSWQpXHJcbiAgICAgIGZvcm1JZCA9IFwiY3VycmVudEZvcm1cIlxyXG4gICAgdmFyIG9iamVjdCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGZvcm1JZCk7XHJcbiAgICBjb25zdCB0YWdOYW1lID0gJ2Rpdic7XHJcbiAgICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6IHByZWZlci1jb25zdFxyXG4gICAgdmFyIGVsZW1lbnRUb0FwcGVuZCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQodGFnTmFtZSk7IC8vIFlvdXIgdGFnIG5hbWUgaGVyZVxyXG4gICAgbGV0IG1lc3NhZ2U6IHN0cmluZyB8IHN0cmluZ1tdID0gXCJcIjtcclxuXHJcblxyXG4gICAgaWYgKCFlcnJvck1lc3NhZ2UgfHwgKHR5cGVvZiBlcnJvck1lc3NhZ2UgPT0gXCJzdHJpbmdcIikpIHtcclxuICAgICAgaWYgKGxvY2FsU3RvcmFnZS5nZXRJdGVtKCdsYW5ndWFnZScpID09IFwiYXJcIilcclxuICAgICAgICBtZXNzYWdlID0gZXJyb3JNZXNzYWdlID8gZXJyb3JNZXNzYWdlIDogXCLZhNiv2YrZgyDYqNi52LUg2KfZhNij2K7Yt9in2KEgLiDZhdmGINmB2LbZhNmDINmC2YUg2KjYp9mE2YXYsdin2KzYudmHIFwiO1xyXG4gICAgICBlbHNlXHJcbiAgICAgICAgbWVzc2FnZSA9IGVycm9yTWVzc2FnZSA/IGVycm9yTWVzc2FnZSA6IFwiWW91IGhhdmUgc29tZSB2YWxpZGF0aW9uIGVycm9ycy4gUGxlYXNlIGNoZWNrIGJlbG93XCJcclxuICAgICAgZWxlbWVudFRvQXBwZW5kLmlubmVySFRNTCA9IFwiPHVsIGNsYXNzPSdsaXN0LXVuc3R5bGVkIG0tMCBweS0zIGQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgZnMtNic+PGxpPjxpIGNsYXNzPSdmYSBmYS10aW1lcy1jaXJjbGUgdGV4dC1kYW5nZXIgbWUtMyBmcy0yJz48L2k+XCIgKyBtZXNzYWdlICsgXCI8L2xpPjwvdWw+XCI7XHJcbiAgICAgIGVsZW1lbnRUb0FwcGVuZC5jbGFzc05hbWUgKz0gJ2FsZXJ0IGFsZXJ0LUludmFsaWRWYWxpZGF0aW9uIGJnLWxpZ2h0LWRhbmdlciB0ZXh0LWRhbmdlcic7XHJcbiAgICAgIGVsZW1lbnRUb0FwcGVuZC5pZCArPSAnZXJyb3JJZCc7XHJcbiAgICAgIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTogcHJlZmVyLWZvci1vZlxyXG4gICAgICBjb25zdCBlbGVtZW50VG9BcHBlbiA9IGVsZW1lbnRUb0FwcGVuZC5jbG9uZU5vZGUodHJ1ZSk7XHJcbiAgICAgIC8vIGxldCB0YXJnZXRFbGVtZW50ID0gb2JqZWN0LmdldEVsZW1lbnRzQnlDbGFzc05hbWUoXCJiLWNvbnRyb2xcIilbMF07XHJcbiAgICAgIG9iamVjdC5pbnNlcnRCZWZvcmUoZWxlbWVudFRvQXBwZW4sIG9iamVjdC5maXJzdENoaWxkKTtcclxuICAgIH1cclxuICAgIGVsc2Uge1xyXG4gICAgICBlbGVtZW50VG9BcHBlbmQuaW5uZXJIVE1MID0gXCI8dWw+XCI7XHJcblxyXG4gICAgICBmb3IgKGNvbnN0IGl0ZXJhdG9yIG9mIGVycm9yTWVzc2FnZSkge1xyXG5cclxuICAgICAgICBlbGVtZW50VG9BcHBlbmQuaW5uZXJIVE1MID0gXCI8bGk+XCIgKyBpdGVyYXRvciArIFwiPC9saT5cIjtcclxuICAgICAgfVxyXG5cclxuICAgICAgZWxlbWVudFRvQXBwZW5kLmlubmVySFRNTCA9IFwiPC91bD5cIjtcclxuICAgICAgZWxlbWVudFRvQXBwZW5kLmNsYXNzTmFtZSArPSAnYWxlcnQgYWxlcnQtSW52YWxpZFZhbGlkYXRpb24gYmctbGlnaHQtZGFuZ2VyIHRleHQtZGFuZ2VyJztcclxuICAgICAgZWxlbWVudFRvQXBwZW5kLmlkICs9ICdlcnJvcklkJztcclxuICAgICAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOiBwcmVmZXItZm9yLW9mXHJcbiAgICAgIGNvbnN0IGVsZW1lbnRUb0FwcGVuID0gZWxlbWVudFRvQXBwZW5kLmNsb25lTm9kZSh0cnVlKTtcclxuICAgICAgLy8gbGV0IHRhcmdldEVsZW1lbnQgPSBvYmplY3QuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZShcImItY29udHJvbFwiKVswXTtcclxuICAgICAgb2JqZWN0Lmluc2VydEJlZm9yZShlbGVtZW50VG9BcHBlbiwgb2JqZWN0LmZpcnN0Q2hpbGQpO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuaXNDcmVhdGVkQmVmb3IgPSB0cnVlO1xyXG5cclxuICB9XHJcblxyXG4gIFJlbW92ZUdsb2JhbEVycm9yKCkge1xyXG4gICAgY29uc3QgcmVtb3ZlZExpc3QgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKCdhbGVydCBhbGVydC1JbnZhbGlkVmFsaWRhdGlvbiBiZy1saWdodC1kYW5nZXIgdGV4dC1kYW5nZXInKTtcclxuICAgIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTogcHJlZmVyLWZvci1vZlxyXG4gICAgZm9yIChsZXQgaW5kZXggPSAwOyBpbmRleCA8IHJlbW92ZWRMaXN0Lmxlbmd0aDsgaW5kZXgrKykge1xyXG4gICAgICBjb25zdCBlbGVtZW50ID0gcmVtb3ZlZExpc3RbaW5kZXhdO1xyXG4gICAgICBlbGVtZW50LnJlbW92ZSgpO1xyXG4gICAgfVxyXG4gICAgdGhpcy5pc0NyZWF0ZWRCZWZvciA9IGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgc2hvd0lucHV0RXJybyhlcnJvcnM6IGFueSkge1xyXG5cclxuICAgIC8vIHNob3cgZXJyb3Igb24gdG9wIG9mIGZvcm0gXHJcbiAgICB0aGlzLnNob3dHbG9iYWxFcnJvcigpO1xyXG4gICAgLy8gcmVtb3ZlIG9sZCBlcnJvciBmcm9tIHNlcnZlclxyXG4gICAgdGhpcy5yZW1vdmVFbGVtZW50c0J5Q2xhc3MoJ2Vycm9ydGVtcGxldCcpO1xyXG4gICAgLy8gTG9vcGluZyBpbiBlcnJvciBPYmplY3RcclxuICAgIGZvciAoY29uc3Qga2V5IGluIGVycm9ycykge1xyXG4gICAgICBpZiAoZXJyb3JzLmhhc093blByb3BlcnR5KGtleSkpIHtcclxuICAgICAgICBmb3IgKGNvbnN0IGl0ZXJhdG9yIG9mIGVycm9yc1trZXldKSB7XHJcbiAgICAgICAgICBjb25zdCBpbnB1dCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJ1tuZy1yZWZsZWN0LW5hbWU9JyArIGtleSArICddJylbMF07XHJcbiAgICAgICAgICBpZiAoKGlucHV0LmF0dHJpYnV0ZXNbJ25nLXJlZmxlY3QtbmFtZSddLnZhbHVlIGFzIHN0cmluZykgPT09IGtleSkge1xyXG4gICAgICAgICAgICB0aGlzLnJlbW92ZUVsZW1lbnRzQnlDbGFzcygnZXJyb2NsYXNzLScgKyBrZXkpO1xyXG4gICAgICAgICAgICBjb25zdCB0YWdOYW1lID0gJ3AnXHJcbiAgICAgICAgICAgIGNvbnN0IGVsZW1lbnRUb0FwcGVuZCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQodGFnTmFtZSk7IC8vIFlvdXIgdGFnIG5hbWUgaGVyZVxyXG4gICAgICAgICAgICBlbGVtZW50VG9BcHBlbmQuaW5uZXJIVE1MID0gaXRlcmF0b3I7XHJcbiAgICAgICAgICAgIGVsZW1lbnRUb0FwcGVuZC5zdHlsZS5jb2xvciA9ICdyZWQnXHJcbiAgICAgICAgICAgIGVsZW1lbnRUb0FwcGVuZC5jbGFzc05hbWUgKz0gJ2Vycm9ydGVtcGxldCBlcnJvY2xhc3MtJyArIGtleTtcclxuICAgICAgICAgICAgY29uc3QgZWxlbWVudFRvYXBwZW4gPSBlbGVtZW50VG9BcHBlbmQuY2xvbmVOb2RlKHRydWUpO1xyXG4gICAgICAgICAgICBpbnB1dC5wYXJlbnROb2RlLmluc2VydEJlZm9yZShlbGVtZW50VG9hcHBlbiwgaW5wdXQubGFzdENoaWxkKTtcclxuICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICByZW1vdmVFbGVtZW50c0J5Q2xhc3MoY2xhc3NOYW1lKSB7XHJcbiAgICBjb25zdCBlbGVtZW50cyA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlDbGFzc05hbWUoY2xhc3NOYW1lKTtcclxuICAgIHdoaWxlIChlbGVtZW50cy5sZW5ndGggPiAwKSB7XHJcbiAgICAgIGVsZW1lbnRzWzBdLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQoZWxlbWVudHNbMF0pO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcblxyXG4gIHJlbmRlclNlcnZlckVycm9ycyhmb3JtOiBGb3JtR3JvdXAsIGVycjogSHR0cEVycm9yUmVzcG9uc2UsIHJlcXVlc3RPcHRpb25zOiBSZXF1ZXN0T3B0aW9uc01vZGVsLCBmb3JtSWQ/OiBzdHJpbmcpIHtcclxuICAgIGlmIChlcnIuZXJyb3IgPT0gbnVsbCkge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICBsZXQgZXJyb3JzQXJyYXk6IHN0cmluZ1tdID0gW107XHJcblxyXG4gICAgdGhpcy5yZXF1ZXN0T3B0aW9ucyA9IHJlcXVlc3RPcHRpb25zO1xyXG4gICAgZXJyLmVycm9yLnZhbGlkYXRpb25fZXJyb3JzLmZvckVhY2goKGVsZW1lbnQ6IEVycm9yTW9kZWwpID0+IHtcclxuICAgICAgbGV0IGZpZWxkTmFtZSA9IGVsZW1lbnQuZmllbGQ7XHJcbiAgICAgIGxldCBjb250cm9sTmFtZSA9IGVsZW1lbnQuY29udHJvbE5hbWU7XHJcbiAgICAgIGxldCBtZXNzYWdlID0gZWxlbWVudC5tZXNzYWdlO1xyXG4gICAgICBpZiAoZm9ybSA9PSBudWxsKSB7XHJcbiAgICAgICAgdGhpcy5yZXF1ZXN0T3B0aW9ucy5jdXN0b21FcnJvck1lc3NhZ2UgPyB0aGlzLnV0aWxpdHlTZXJ2aWNlLm5vdGlmeUVycm9yTWVzc2FnZSh0aGlzLnJlcXVlc3RPcHRpb25zLmN1c3RvbUVycm9yTWVzc2FnZSkgOiB0aGlzLnV0aWxpdHlTZXJ2aWNlLm5vdGlmeUVycm9yTWVzc2FnZShgJHttZXNzYWdlfWApO1xyXG4gICAgICB9XHJcbiAgICAgIGVsc2UgaWYgKGNvbnRyb2xOYW1lICYmICF0aGlzLmhhc0NvbnRyb2xOYW1lKGZvcm0sIGNvbnRyb2xOYW1lKSkge1xyXG4gICAgICAgIGVycm9yc0FycmF5LnB1c2goYCR7ZmllbGROYW1lfTogJHttZXNzYWdlfWApO1xyXG4gICAgICAgIC8vIHRoaXMuc2hvd0dsb2JhbEVycm9yKGAke2ZpZWxkTmFtZX06ICR7bWVzc2FnZX1gLGZvcm1JZCApXHJcbiAgICAgIH1cclxuICAgICAgZWxzZSB7XHJcbiAgICAgICAgdGhpcy5zZXRGaWVsZEVycm9yKGZvcm0sIGNvbnRyb2xOYW1lLCBmaWVsZE5hbWUsIG1lc3NhZ2UpO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICAgIGlmIChlcnJvcnNBcnJheS5sZW5ndGggPiAwKVxyXG4gICAgICB0aGlzLnNob3dHbG9iYWxFcnJvcihlcnJvcnNBcnJheSwgZm9ybUlkKVxyXG5cclxuXHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGhhc0NvbnRyb2xOYW1lKGZvcm06IEZvcm1Hcm91cCwgY29udHJvbE5hbWU6IHN0cmluZyk6IGJvb2xlYW4ge1xyXG4gICAgbGV0IGNvbnRyb2wgPSBmb3JtLmdldChjb250cm9sTmFtZSk7XHJcbiAgICByZXR1cm4gY29udHJvbCAhPSBudWxsO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBzZXRGaWVsZEVycm9yKGZvcm06IEZvcm1Hcm91cCwgY29udHJvbE5hbWU6IHN0cmluZywgZmllbGROYW1lOiBzdHJpbmcsIG1lc3NhZ2U6IHN0cmluZykge1xyXG4gICAgbGV0IGNvbnRyb2wgPSBudWxsXHJcbiAgICBpZiAoY29udHJvbE5hbWUpXHJcbiAgICAgIGNvbnRyb2wgPSBmb3JtLmdldChjb250cm9sTmFtZSk7XHJcbiAgICBlbHNlXHJcbiAgICAgIGNvbnRyb2wgPSBmb3JtLmdldChmaWVsZE5hbWUuc3BsaXQoJy4nKVswXSk7XHJcbiAgICBsZXQgZXJyb3JzID0geyBcImVycm9yTWFzc2FnZVwiOiBtZXNzYWdlIH07XHJcbiAgICBsZXQgZmllbGROYW1lQXJyYXkgPSBmaWVsZE5hbWUuc3BsaXQoJy4nKTtcclxuICAgIGlmIChmaWVsZE5hbWVBcnJheS5sZW5ndGggPj0gMSkge1xyXG4gICAgICBzd2l0Y2ggKGZpZWxkTmFtZUFycmF5W2ZpZWxkTmFtZUFycmF5Lmxlbmd0aCAtIDFdLnRvTG9jYWxlTG93ZXJDYXNlKCkpIHtcclxuICAgICAgICBjYXNlIFwiZW5nbGlzaFwiOlxyXG4gICAgICAgICAgbGV0IGVuZ2xpc2hDb250cm9sID0gY29udHJvbC5nZXQoXCJFbmdsaXNoXCIpXHJcbiAgICAgICAgICBlbmdsaXNoQ29udHJvbC5zZXRFcnJvcnMoZXJyb3JzKTtcclxuICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgIGNhc2UgXCJhcmFiaWNcIjpcclxuICAgICAgICAgIGxldCBhcmFiaWNDb250cm9sID0gY29udHJvbC5nZXQoXCJBcmFiaWNcIilcclxuICAgICAgICAgIGFyYWJpY0NvbnRyb2wuc2V0RXJyb3JzKGVycm9ycyk7XHJcbiAgICAgICAgICBicmVhaztcclxuXHJcbiAgICAgICAgZGVmYXVsdDpcclxuICAgICAgICAgIGNvbnRyb2wuc2V0RXJyb3JzKGVycm9ycyk7XHJcbiAgICAgIH1cclxuXHJcbiAgICB9XHJcbiAgICBlbHNlIGlmIChmaWVsZE5hbWVBcnJheS5sZW5ndGggPT0gMSkge1xyXG4gICAgICBjb250cm9sLnNldEVycm9ycyhlcnJvcnMpO1xyXG4gICAgfVxyXG4gICAgZWxzZSB7XHJcbiAgICAgIHRoaXMucmVxdWVzdE9wdGlvbnMuY3VzdG9tRXJyb3JNZXNzYWdlID8gdGhpcy51dGlsaXR5U2VydmljZS5ub3RpZnlFcnJvck1lc3NhZ2UodGhpcy5yZXF1ZXN0T3B0aW9ucy5jdXN0b21FcnJvck1lc3NhZ2UpIDogdGhpcy51dGlsaXR5U2VydmljZS5ub3RpZnlFcnJvck1lc3NhZ2UoYCR7bWVzc2FnZX1gKVxyXG4gICAgfVxyXG5cclxuXHJcbiAgfVxyXG5cclxuXHJcbn1cclxuIl19
@@ -0,0 +1,48 @@
1
+ import { Injectable } from '@angular/core';
2
+ import { environment } from '../config/environment';
3
+ import * as i0 from "@angular/core";
4
+ export class EnvironmentService {
5
+ getEnvironmentObject() {
6
+ return environment;
7
+ }
8
+ getBaseUrl() {
9
+ let Url = environment["BBSF_BaseURL"];
10
+ return Url;
11
+ }
12
+ getApiUrl() {
13
+ let Url = environment["BBSF_ApiUrl"];
14
+ return Url;
15
+ }
16
+ getProductionMode() {
17
+ let Mode = environment["BBSF_IsProduction"];
18
+ return Mode;
19
+ }
20
+ getDefaultLanguage() {
21
+ let Mode = environment["BBSF_DefaultLanguage"];
22
+ return Mode;
23
+ }
24
+ getIdentityServerUrl() {
25
+ let Url = environment["BBSF_IdentityServerUrl"];
26
+ return Url;
27
+ }
28
+ getIsIdentityServerExternal() {
29
+ let Mode = environment["BBSF_IsExternalIdentityServer"];
30
+ return Mode;
31
+ }
32
+ getIsIdentityServerClientId() {
33
+ let Mode = environment["BBSF_IdentityServer_Client_Id"];
34
+ return Mode;
35
+ }
36
+ getIsIdentityServerClientSecret() {
37
+ let Mode = environment["BBSF_IdentityServer_Client_Secret"];
38
+ return Mode;
39
+ }
40
+ }
41
+ EnvironmentService.AreaList = [];
42
+ EnvironmentService.ɵprov = i0.ɵɵdefineInjectable({ factory: function EnvironmentService_Factory() { return new EnvironmentService(); }, token: EnvironmentService, providedIn: "root" });
43
+ EnvironmentService.decorators = [
44
+ { type: Injectable, args: [{
45
+ providedIn: 'root'
46
+ },] }
47
+ ];
48
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW52aXJvbm1lbnQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Jic2YtdXRpbGl0aWVzL3NyYy9saWIvc2hhcmVkL3NlcnZpY2VzL2Vudmlyb25tZW50LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7O0FBTXBELE1BQU0sT0FBTyxrQkFBa0I7SUFLN0Isb0JBQW9CO1FBQ2xCLE9BQU8sV0FBVyxDQUFDO0lBQ3JCLENBQUM7SUFFRCxVQUFVO1FBQ1IsSUFBSSxHQUFHLEdBQUcsV0FBVyxDQUFDLGNBQWMsQ0FBQyxDQUFBO1FBQ3JDLE9BQU8sR0FBRyxDQUFDO0lBQ2IsQ0FBQztJQUNELFNBQVM7UUFDUCxJQUFJLEdBQUcsR0FBRyxXQUFXLENBQUMsYUFBYSxDQUFDLENBQUE7UUFDcEMsT0FBTyxHQUFHLENBQUM7SUFDYixDQUFDO0lBRUQsaUJBQWlCO1FBQ2YsSUFBSSxJQUFJLEdBQUcsV0FBVyxDQUFDLG1CQUFtQixDQUFZLENBQUE7UUFFdEQsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsa0JBQWtCO1FBQ2hCLElBQUksSUFBSSxHQUFHLFdBQVcsQ0FBQyxzQkFBc0IsQ0FBVyxDQUFBO1FBQ3hELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUNELG9CQUFvQjtRQUNsQixJQUFJLEdBQUcsR0FBRyxXQUFXLENBQUMsd0JBQXdCLENBQUMsQ0FBQTtRQUMvQyxPQUFPLEdBQUcsQ0FBQztJQUNiLENBQUM7SUFDRCwyQkFBMkI7UUFDekIsSUFBSSxJQUFJLEdBQUcsV0FBVyxDQUFDLCtCQUErQixDQUFXLENBQUE7UUFDakUsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBQ0QsMkJBQTJCO1FBQ3pCLElBQUksSUFBSSxHQUFHLFdBQVcsQ0FBQywrQkFBK0IsQ0FBVyxDQUFBO1FBQ2pFLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVELCtCQUErQjtRQUM3QixJQUFJLElBQUksR0FBRyxXQUFXLENBQUMsbUNBQW1DLENBQVcsQ0FBQTtRQUNyRSxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7O0FBekNLLDJCQUFRLEdBQWdCLEVBQUUsQ0FBQTs7O1lBTmpDLFVBQVUsU0FBQztnQkFDVixVQUFVLEVBQUUsTUFBTTthQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgZW52aXJvbm1lbnQgfSBmcm9tICcuLi9jb25maWcvZW52aXJvbm1lbnQnO1xyXG5pbXBvcnQgeyBBcmVhTW9kZWwgfSBmcm9tICcuLi9tb2RlbHMvQXJlYU1vZGVsJztcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIEVudmlyb25tZW50U2VydmljZSB7XHJcblxyXG5cclxuIHN0YXRpYyBBcmVhTGlzdDogQXJlYU1vZGVsW10gPSBbXVxyXG5cclxuICBnZXRFbnZpcm9ubWVudE9iamVjdCgpIHtcclxuICAgIHJldHVybiBlbnZpcm9ubWVudDtcclxuICB9XHJcblxyXG4gIGdldEJhc2VVcmwoKSB7XHJcbiAgICBsZXQgVXJsID0gZW52aXJvbm1lbnRbXCJCQlNGX0Jhc2VVUkxcIl1cclxuICAgIHJldHVybiBVcmw7XHJcbiAgfVxyXG4gIGdldEFwaVVybCgpIHtcclxuICAgIGxldCBVcmwgPSBlbnZpcm9ubWVudFtcIkJCU0ZfQXBpVXJsXCJdXHJcbiAgICByZXR1cm4gVXJsO1xyXG4gIH1cclxuXHJcbiAgZ2V0UHJvZHVjdGlvbk1vZGUoKSB7XHJcbiAgICBsZXQgTW9kZSA9IGVudmlyb25tZW50W1wiQkJTRl9Jc1Byb2R1Y3Rpb25cIl0gYXMgYm9vbGVhblxyXG5cclxuICAgIHJldHVybiBNb2RlO1xyXG4gIH1cclxuXHJcbiAgZ2V0RGVmYXVsdExhbmd1YWdlKCkge1xyXG4gICAgbGV0IE1vZGUgPSBlbnZpcm9ubWVudFtcIkJCU0ZfRGVmYXVsdExhbmd1YWdlXCJdIGFzIHN0cmluZ1xyXG4gICAgcmV0dXJuIE1vZGU7XHJcbiAgfVxyXG4gIGdldElkZW50aXR5U2VydmVyVXJsKCkge1xyXG4gICAgbGV0IFVybCA9IGVudmlyb25tZW50W1wiQkJTRl9JZGVudGl0eVNlcnZlclVybFwiXVxyXG4gICAgcmV0dXJuIFVybDtcclxuICB9XHJcbiAgZ2V0SXNJZGVudGl0eVNlcnZlckV4dGVybmFsKCkge1xyXG4gICAgbGV0IE1vZGUgPSBlbnZpcm9ubWVudFtcIkJCU0ZfSXNFeHRlcm5hbElkZW50aXR5U2VydmVyXCJdIGFzIHN0cmluZ1xyXG4gICAgcmV0dXJuIE1vZGU7XHJcbiAgfVxyXG4gIGdldElzSWRlbnRpdHlTZXJ2ZXJDbGllbnRJZCgpIHtcclxuICAgIGxldCBNb2RlID0gZW52aXJvbm1lbnRbXCJCQlNGX0lkZW50aXR5U2VydmVyX0NsaWVudF9JZFwiXSBhcyBzdHJpbmdcclxuICAgIHJldHVybiBNb2RlO1xyXG4gIH1cclxuXHJcbiAgZ2V0SXNJZGVudGl0eVNlcnZlckNsaWVudFNlY3JldCgpIHtcclxuICAgIGxldCBNb2RlID0gZW52aXJvbm1lbnRbXCJCQlNGX0lkZW50aXR5U2VydmVyX0NsaWVudF9TZWNyZXRcIl0gYXMgc3RyaW5nXHJcbiAgICByZXR1cm4gTW9kZTtcclxuICB9XHJcblxyXG5cclxuXHJcbn1cclxuIl19