croco-html 0.0.1 → 0.1.2

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 (127) hide show
  1. package/README.md +24 -24
  2. package/croco-html.d.ts +5 -5
  3. package/{esm2015/croco-html.js → esm2020/croco-html.mjs} +4 -4
  4. package/esm2020/lib/components/add-files-btn/add-files-btn.component.mjs +53 -0
  5. package/esm2020/lib/components/editor/external-video-block/external-video-block.component.mjs +45 -0
  6. package/esm2020/lib/components/editor/html-raw-editor/html-raw-editor.component.mjs +25 -0
  7. package/esm2020/lib/components/editor/image-editor/image-editor.component.mjs +50 -0
  8. package/{esm2015/lib/components/editor/index.js → esm2020/lib/components/editor/index.mjs} +8 -8
  9. package/esm2020/lib/components/editor/main-editor/main-editor.component.mjs +76 -0
  10. package/esm2020/lib/components/editor/main-editor-block/main-editor-block.component.mjs +41 -0
  11. package/esm2020/lib/components/editor/text-editor/text-editor.component.mjs +34 -0
  12. package/esm2020/lib/components/editor/visual-editor/visual-editor.component.mjs +161 -0
  13. package/esm2020/lib/components/file-id-select/file-id-select.component.mjs +62 -0
  14. package/{esm2015/lib/components/index.js → esm2020/lib/components/index.mjs} +6 -6
  15. package/esm2020/lib/components/upload-files-btn/upload-files-btn.component.mjs +54 -0
  16. package/{esm2015/lib/components/xml-tags/index.js → esm2020/lib/components/xml-tags/index.mjs} +9 -9
  17. package/esm2020/lib/components/xml-tags/xml-tag-external-video/xml-tag-external-video.component.mjs +43 -0
  18. package/esm2020/lib/components/xml-tags/xml-tag-header-inner-text-view/xml-tag-header-inner-text-view.component.mjs +17 -0
  19. package/esm2020/lib/components/xml-tags/xml-tag-header-text-view/xml-tag-header-text-view.component.mjs +18 -0
  20. package/esm2020/lib/components/xml-tags/xml-tag-html-view/xml-tag-html-view.component.mjs +16 -0
  21. package/esm2020/lib/components/xml-tags/xml-tag-rich-text-view/xml-tag-rich-text-view.component.mjs +20 -0
  22. package/esm2020/lib/components/xml-tags/xml-tag-table-view/xml-tag-table-view.component.mjs +20 -0
  23. package/esm2020/lib/components/xml-tags/xml-tag-text-view/xml-tag-text-view.component.mjs +17 -0
  24. package/esm2020/lib/components/xml-tags/xml-tag-view/xml-tag-view.component.mjs +21 -0
  25. package/{esm2015/lib/croco-html.module.js → esm2020/lib/croco-html.module.mjs} +90 -90
  26. package/{esm2015/lib/extensions/AngularMaterialTableMethods.js → esm2020/lib/extensions/AngularMaterialTableMethods.mjs} +64 -64
  27. package/{esm2015/lib/extensions/BodyTagsExtensions.js → esm2020/lib/extensions/BodyTagsExtensions.mjs} +120 -120
  28. package/{esm2015/lib/extensions/BootstrapTableMethods.js → esm2020/lib/extensions/BootstrapTableMethods.mjs} +67 -67
  29. package/{esm2015/lib/extensions/HtmlExtractionMethods.js → esm2020/lib/extensions/HtmlExtractionMethods.mjs} +63 -63
  30. package/{esm2015/lib/extensions/HtmlRawTagDataConsts.js → esm2020/lib/extensions/HtmlRawTagDataConsts.mjs} +4 -4
  31. package/{esm2015/lib/extensions/ImageMethods.js → esm2020/lib/extensions/ImageMethods.mjs} +24 -24
  32. package/{esm2015/lib/extensions/InterfaceBlock.js → esm2020/lib/extensions/InterfaceBlock.mjs} +2 -2
  33. package/{esm2015/lib/extensions/TableBuilder.js → esm2020/lib/extensions/TableBuilder.mjs} +35 -35
  34. package/esm2020/lib/extensions/TableMethods.mjs +108 -0
  35. package/{esm2015/lib/extensions/TextMethods.js → esm2020/lib/extensions/TextMethods.mjs} +29 -29
  36. package/esm2020/lib/extensions/TextSimpleMethods.mjs +77 -0
  37. package/{esm2015/lib/extensions/VideoMethods.js → esm2020/lib/extensions/VideoMethods.mjs} +20 -20
  38. package/{esm2015/lib/extensions/XmlExtensions.js → esm2020/lib/extensions/XmlExtensions.mjs} +26 -26
  39. package/{esm2015/lib/extensions/index.js → esm2020/lib/extensions/index.mjs} +13 -13
  40. package/{esm2015/lib/index.js → esm2020/lib/index.mjs} +113 -113
  41. package/esm2020/lib/models/models.mjs +2 -0
  42. package/{esm2015/lib/pipes/RichTextToHtmlPipe.js → esm2020/lib/pipes/RichTextToHtmlPipe.mjs} +26 -26
  43. package/{esm2015/lib/pipes/TagToSpanPipe.js → esm2020/lib/pipes/TagToSpanPipe.mjs} +16 -16
  44. package/{esm2015/lib/pipes/ToHtmlBodyTagsPipe.js → esm2020/lib/pipes/ToHtmlBodyTagsPipe.mjs} +17 -17
  45. package/{esm2015/lib/pipes/index.js → esm2020/lib/pipes/index.mjs} +5 -5
  46. package/{esm2015/lib/pipes/to-preview.pipe.js → esm2020/lib/pipes/to-preview.pipe.mjs} +17 -17
  47. package/esm2020/lib/services/file-upload.service.mjs +40 -0
  48. package/esm2020/lib/services/files-query.service.mjs +27 -0
  49. package/{esm2015/public-api.js → esm2020/public-api.mjs} +8 -8
  50. package/fesm2015/croco-html.mjs +1565 -0
  51. package/fesm2015/croco-html.mjs.map +1 -0
  52. package/fesm2020/croco-html.mjs +1568 -0
  53. package/fesm2020/croco-html.mjs.map +1 -0
  54. package/lib/components/add-files-btn/add-files-btn.component.d.ts +18 -18
  55. package/lib/components/editor/external-video-block/external-video-block.component.d.ts +19 -19
  56. package/lib/components/editor/html-raw-editor/html-raw-editor.component.d.ts +11 -11
  57. package/lib/components/editor/image-editor/image-editor.component.d.ts +20 -20
  58. package/lib/components/editor/index.d.ts +7 -7
  59. package/lib/components/editor/main-editor/main-editor.component.d.ts +28 -28
  60. package/lib/components/editor/main-editor-block/main-editor-block.component.d.ts +16 -16
  61. package/lib/components/editor/text-editor/text-editor.component.d.ts +14 -14
  62. package/lib/components/editor/visual-editor/visual-editor.component.d.ts +43 -43
  63. package/lib/components/file-id-select/file-id-select.component.d.ts +30 -30
  64. package/lib/components/index.d.ts +5 -5
  65. package/lib/components/upload-files-btn/upload-files-btn.component.d.ts +24 -24
  66. package/lib/components/xml-tags/index.d.ts +8 -8
  67. package/lib/components/xml-tags/xml-tag-external-video/xml-tag-external-video.component.d.ts +17 -17
  68. package/lib/components/xml-tags/xml-tag-header-inner-text-view/xml-tag-header-inner-text-view.component.d.ts +10 -10
  69. package/lib/components/xml-tags/xml-tag-header-text-view/xml-tag-header-text-view.component.d.ts +10 -10
  70. package/lib/components/xml-tags/xml-tag-html-view/xml-tag-html-view.component.d.ts +7 -7
  71. package/lib/components/xml-tags/xml-tag-rich-text-view/xml-tag-rich-text-view.component.d.ts +10 -10
  72. package/lib/components/xml-tags/xml-tag-table-view/xml-tag-table-view.component.d.ts +7 -7
  73. package/lib/components/xml-tags/xml-tag-text-view/xml-tag-text-view.component.d.ts +10 -10
  74. package/lib/components/xml-tags/xml-tag-view/xml-tag-view.component.d.ts +8 -8
  75. package/lib/croco-html.module.d.ts +60 -60
  76. package/lib/extensions/AngularMaterialTableMethods.d.ts +10 -10
  77. package/lib/extensions/BodyTagsExtensions.d.ts +10 -10
  78. package/lib/extensions/BootstrapTableMethods.d.ts +9 -9
  79. package/lib/extensions/HtmlExtractionMethods.d.ts +69 -69
  80. package/lib/extensions/HtmlRawTagDataConsts.d.ts +3 -3
  81. package/lib/extensions/ImageMethods.d.ts +17 -17
  82. package/lib/extensions/InterfaceBlock.d.ts +4 -4
  83. package/lib/extensions/TableBuilder.d.ts +5 -5
  84. package/lib/extensions/TableMethods.d.ts +58 -58
  85. package/lib/extensions/TextMethods.d.ts +19 -19
  86. package/lib/extensions/TextSimpleMethods.d.ts +23 -23
  87. package/lib/extensions/VideoMethods.d.ts +19 -19
  88. package/lib/extensions/XmlExtensions.d.ts +5 -5
  89. package/lib/extensions/index.d.ts +10 -10
  90. package/lib/index.d.ts +20 -20
  91. package/lib/models/models.d.ts +10 -10
  92. package/lib/pipes/RichTextToHtmlPipe.d.ts +8 -8
  93. package/lib/pipes/TagToSpanPipe.d.ts +7 -7
  94. package/lib/pipes/ToHtmlBodyTagsPipe.d.ts +8 -8
  95. package/lib/pipes/index.d.ts +4 -4
  96. package/lib/pipes/to-preview.pipe.d.ts +8 -8
  97. package/lib/services/file-upload.service.d.ts +23 -23
  98. package/lib/services/files-query.service.d.ts +42 -42
  99. package/package.json +26 -14
  100. package/public-api.d.ts +4 -4
  101. package/bundles/croco-html.umd.js +0 -2091
  102. package/bundles/croco-html.umd.js.map +0 -1
  103. package/esm2015/lib/components/add-files-btn/add-files-btn.component.js +0 -57
  104. package/esm2015/lib/components/editor/external-video-block/external-video-block.component.js +0 -49
  105. package/esm2015/lib/components/editor/html-raw-editor/html-raw-editor.component.js +0 -29
  106. package/esm2015/lib/components/editor/image-editor/image-editor.component.js +0 -54
  107. package/esm2015/lib/components/editor/main-editor/main-editor.component.js +0 -80
  108. package/esm2015/lib/components/editor/main-editor-block/main-editor-block.component.js +0 -45
  109. package/esm2015/lib/components/editor/text-editor/text-editor.component.js +0 -38
  110. package/esm2015/lib/components/editor/visual-editor/visual-editor.component.js +0 -165
  111. package/esm2015/lib/components/file-id-select/file-id-select.component.js +0 -66
  112. package/esm2015/lib/components/upload-files-btn/upload-files-btn.component.js +0 -58
  113. package/esm2015/lib/components/xml-tags/xml-tag-external-video/xml-tag-external-video.component.js +0 -47
  114. package/esm2015/lib/components/xml-tags/xml-tag-header-inner-text-view/xml-tag-header-inner-text-view.component.js +0 -21
  115. package/esm2015/lib/components/xml-tags/xml-tag-header-text-view/xml-tag-header-text-view.component.js +0 -22
  116. package/esm2015/lib/components/xml-tags/xml-tag-html-view/xml-tag-html-view.component.js +0 -20
  117. package/esm2015/lib/components/xml-tags/xml-tag-rich-text-view/xml-tag-rich-text-view.component.js +0 -24
  118. package/esm2015/lib/components/xml-tags/xml-tag-table-view/xml-tag-table-view.component.js +0 -24
  119. package/esm2015/lib/components/xml-tags/xml-tag-text-view/xml-tag-text-view.component.js +0 -21
  120. package/esm2015/lib/components/xml-tags/xml-tag-view/xml-tag-view.component.js +0 -26
  121. package/esm2015/lib/extensions/TableMethods.js +0 -100
  122. package/esm2015/lib/extensions/TextSimpleMethods.js +0 -78
  123. package/esm2015/lib/models/models.js +0 -2
  124. package/esm2015/lib/services/file-upload.service.js +0 -40
  125. package/esm2015/lib/services/files-query.service.js +0 -27
  126. package/fesm2015/croco-html.js +0 -1634
  127. package/fesm2015/croco-html.js.map +0 -1
@@ -1,26 +0,0 @@
1
- import { Component, Input, ViewEncapsulation } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- import * as i1 from "../xml-tag-text-view/xml-tag-text-view.component";
4
- import * as i2 from "../xml-tag-header-text-view/xml-tag-header-text-view.component";
5
- import * as i3 from "../xml-tag-html-view/xml-tag-html-view.component";
6
- import * as i4 from "../xml-tag-external-video/xml-tag-external-video.component";
7
- import * as i5 from "@angular/common";
8
- export class XmlTagViewComponent {
9
- constructor() {
10
- this.data = [];
11
- }
12
- }
13
- XmlTagViewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.1.5", ngImport: i0, type: XmlTagViewComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
14
- XmlTagViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.1.5", type: XmlTagViewComponent, selector: "croco-html-xml-tag-view", inputs: { data: "data" }, ngImport: i0, template: "<div class=\"\">\n <div class=\"row\" *ngFor=\"let item of data\">\n <div *ngIf=\"item.type === 'text'\">\n <croco-html-xml-tag-text-view [item]=\"item\"></croco-html-xml-tag-text-view>\n </div>\n <div *ngIf=\"item.type === 'image'\" class=\"red\" style=\"margin-top: 10px;\" >\n <h4>\u0414\u0430\u043D\u043D\u044B\u0439 \u0442\u0435\u0433 \u0431\u043E\u043B\u044C\u0448\u0435 \u0431\u043E\u043B\u044C\u0448\u0435 \u043D\u0435 \u043F\u043E\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442\u0441\u044F</h4>\n <span>\n \u0412\u043C\u0435\u0442\u043E \u044D\u0442\u043E\u0433\u043E \u043F\u0435\u0440\u0435\u0438\u043C\u0435\u043D\u0443\u0439\u0442\u0435 \u0442\u0435\u0433 image \u043D\u0430 file-image\n </span>\n </div>\n <div *ngIf=\"item.type === 'html-raw'\" [innerHTML]=\"item.data.innerHTML\">\n </div>\n <div *ngIf=\"item.type === 'h1' || item.type === 'h2' || item.type === 'h3' || item.type === 'h4' || item.type === 'h5' || item.type === 'h6'\">\n <croco-html-xml-tag-header-text-view [item]=\"item\"></croco-html-xml-tag-header-text-view>\n </div>\n <div *ngIf=\"item.type === 'file-image'\">\n <img class=\"mx-auto d-block img-fluid\" [src]=\"item.data.src\"/>\n </div>\n <div *ngIf=\"item.type === 'table'\">\n \n <croco-html-xml-tag-html-view *ngIf=\"item.validationResult.isSucceeded\" [html]=\"item.bootstrapHtml\">\n </croco-html-xml-tag-html-view>\n \n <app-tutor-baseapiresponse-banner \n *ngIf=\"item.validationResult && !item.validationResult.isSucceeded\" \n [message]=\"item.validationResult.message\">\n </app-tutor-baseapiresponse-banner>\n </div>\n \n <div *ngIf=\"item.type === 'rich-text'\">\n <croco-html-xml-tag-text-view [richTextData]=\"item\"></croco-html-xml-tag-text-view>\n </div>\n <div *ngIf=\"item.type === 'external-video'\">\n <croco-html-xml-tag-external-video [data]=\"item\"></croco-html-xml-tag-external-video>\n </div>\n <div *ngIf=\"item.type === 'unsupported-tag'\" class=\"red\" style=\"margin-top: 10px;\" >\n <h4>\u0414\u0430\u043D\u043D\u044B\u0439 \u0442\u0435\u0433 \u043D\u0435 \u043F\u043E\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442\u0441\u044F</h4>\n <span>\n {{item.data.tagString}}\n </span>\n </div>\n </div>\n</div>", styles: [".red{background-color:#c94444;color:#fff}\n"], components: [{ type: i1.XmlTagTextViewComponent, selector: "croco-html-xml-tag-text-view", inputs: ["item"] }, { type: i2.XmlTagHeaderTextViewComponent, selector: "croco-html-xml-tag-header-text-view", inputs: ["item"] }, { type: i3.XmlTagHtmlViewComponent, selector: "croco-html-xml-tag-html-view", inputs: ["html"] }, { type: i4.XmlTagExternalVideoComponent, selector: "croco-html-xml-tag-external-video", inputs: ["data", "tagData"] }], directives: [{ type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], encapsulation: i0.ViewEncapsulation.None });
15
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.5", ngImport: i0, type: XmlTagViewComponent, decorators: [{
16
- type: Component,
17
- args: [{
18
- selector: 'croco-html-xml-tag-view',
19
- templateUrl: './xml-tag-view.component.html',
20
- styleUrls: ['./xml-tag-view.component.css'],
21
- encapsulation: ViewEncapsulation.None,
22
- }]
23
- }], ctorParameters: function () { return []; }, propDecorators: { data: [{
24
- type: Input
25
- }] } });
26
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieG1sLXRhZy12aWV3LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nyb2NvLWh0bWwvc3JjL2xpYi9jb21wb25lbnRzL3htbC10YWdzL3htbC10YWctdmlldy94bWwtdGFnLXZpZXcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY3JvY28taHRtbC9zcmMvbGliL2NvbXBvbmVudHMveG1sLXRhZ3MveG1sLXRhZy12aWV3L3htbC10YWctdmlldy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7OztBQVNwRSxNQUFNLE9BQU8sbUJBQW1CO0lBSzlCO1FBRkEsU0FBSSxHQUFvQixFQUFFLENBQUM7SUFFWCxDQUFDOztnSEFMTixtQkFBbUI7b0dBQW5CLG1CQUFtQix5RkNUaEMsb2hGQTJDTTsyRkRsQ08sbUJBQW1CO2tCQU4vQixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSx5QkFBeUI7b0JBQ25DLFdBQVcsRUFBRSwrQkFBK0I7b0JBQzVDLFNBQVMsRUFBRSxDQUFDLDhCQUE4QixDQUFDO29CQUMzQyxhQUFhLEVBQUUsaUJBQWlCLENBQUMsSUFBSTtpQkFDdEM7MEVBSUMsSUFBSTtzQkFESCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEludGVyZmFjZUJsb2NrIH0gZnJvbSBcIi4uLy4uLy4uL2V4dGVuc2lvbnMvSW50ZXJmYWNlQmxvY2tcIjtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnY3JvY28taHRtbC14bWwtdGFnLXZpZXcnLFxuICB0ZW1wbGF0ZVVybDogJy4veG1sLXRhZy12aWV3LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4veG1sLXRhZy12aWV3LmNvbXBvbmVudC5jc3MnXSxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbn0pXG5leHBvcnQgY2xhc3MgWG1sVGFnVmlld0NvbXBvbmVudCB7XG5cbiAgQElucHV0KClcbiAgZGF0YTpJbnRlcmZhY2VCbG9ja1tdID0gW107XG5cbiAgY29uc3RydWN0b3IoKSB7IH1cblxufVxuIiwiPGRpdiBjbGFzcz1cIlwiPlxuICAgIDxkaXYgY2xhc3M9XCJyb3dcIiAqbmdGb3I9XCJsZXQgaXRlbSBvZiBkYXRhXCI+XG4gICAgICAgIDxkaXYgKm5nSWY9XCJpdGVtLnR5cGUgPT09ICd0ZXh0J1wiPlxuICAgICAgICAgICAgPGNyb2NvLWh0bWwteG1sLXRhZy10ZXh0LXZpZXcgW2l0ZW1dPVwiaXRlbVwiPjwvY3JvY28taHRtbC14bWwtdGFnLXRleHQtdmlldz5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgKm5nSWY9XCJpdGVtLnR5cGUgPT09ICdpbWFnZSdcIiBjbGFzcz1cInJlZFwiIHN0eWxlPVwibWFyZ2luLXRvcDogMTBweDtcIiA+XG4gICAgICAgICAgICA8aDQ+0JTQsNC90L3Ri9C5INGC0LXQsyDQsdC+0LvRjNGI0LUg0LHQvtC70YzRiNC1INC90LUg0L/QvtC00LTQtdGA0LbQuNCy0LDQtdGC0YHRjzwvaDQ+XG4gICAgICAgICAgICA8c3Bhbj5cbiAgICAgICAgICAgICAgICDQktC80LXRgtC+INGN0YLQvtCz0L4g0L/QtdGA0LXQuNC80LXQvdGD0LnRgtC1INGC0LXQsyBpbWFnZSDQvdCwIGZpbGUtaW1hZ2VcbiAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgKm5nSWY9XCJpdGVtLnR5cGUgPT09ICdodG1sLXJhdydcIiBbaW5uZXJIVE1MXT1cIml0ZW0uZGF0YS5pbm5lckhUTUxcIj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgKm5nSWY9XCJpdGVtLnR5cGUgPT09ICdoMScgfHwgaXRlbS50eXBlID09PSAnaDInIHx8IGl0ZW0udHlwZSA9PT0gJ2gzJyB8fCBpdGVtLnR5cGUgPT09ICdoNCcgfHwgaXRlbS50eXBlID09PSAnaDUnIHx8IGl0ZW0udHlwZSA9PT0gJ2g2J1wiPlxuICAgICAgICAgICAgPGNyb2NvLWh0bWwteG1sLXRhZy1oZWFkZXItdGV4dC12aWV3IFtpdGVtXT1cIml0ZW1cIj48L2Nyb2NvLWh0bWwteG1sLXRhZy1oZWFkZXItdGV4dC12aWV3PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiAqbmdJZj1cIml0ZW0udHlwZSA9PT0gJ2ZpbGUtaW1hZ2UnXCI+XG4gICAgICAgICAgICA8aW1nIGNsYXNzPVwibXgtYXV0byBkLWJsb2NrIGltZy1mbHVpZFwiIFtzcmNdPVwiaXRlbS5kYXRhLnNyY1wiLz5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgKm5nSWY9XCJpdGVtLnR5cGUgPT09ICd0YWJsZSdcIj5cbiAgICBcbiAgICAgICAgICAgIDxjcm9jby1odG1sLXhtbC10YWctaHRtbC12aWV3ICpuZ0lmPVwiaXRlbS52YWxpZGF0aW9uUmVzdWx0LmlzU3VjY2VlZGVkXCIgW2h0bWxdPVwiaXRlbS5ib290c3RyYXBIdG1sXCI+XG4gICAgICAgICAgICA8L2Nyb2NvLWh0bWwteG1sLXRhZy1odG1sLXZpZXc+XG4gICAgICAgICAgICAgXG4gICAgICAgICAgICA8YXBwLXR1dG9yLWJhc2VhcGlyZXNwb25zZS1iYW5uZXIgXG4gICAgICAgICAgICAgICAgKm5nSWY9XCJpdGVtLnZhbGlkYXRpb25SZXN1bHQgJiYgIWl0ZW0udmFsaWRhdGlvblJlc3VsdC5pc1N1Y2NlZWRlZFwiIFxuICAgICAgICAgICAgICAgIFttZXNzYWdlXT1cIml0ZW0udmFsaWRhdGlvblJlc3VsdC5tZXNzYWdlXCI+XG4gICAgICAgICAgICA8L2FwcC10dXRvci1iYXNlYXBpcmVzcG9uc2UtYmFubmVyPlxuICAgICAgICA8L2Rpdj5cbiAgICBcbiAgICAgICAgPGRpdiAqbmdJZj1cIml0ZW0udHlwZSA9PT0gJ3JpY2gtdGV4dCdcIj5cbiAgICAgICAgICAgIDxjcm9jby1odG1sLXhtbC10YWctdGV4dC12aWV3IFtyaWNoVGV4dERhdGFdPVwiaXRlbVwiPjwvY3JvY28taHRtbC14bWwtdGFnLXRleHQtdmlldz5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgKm5nSWY9XCJpdGVtLnR5cGUgPT09ICdleHRlcm5hbC12aWRlbydcIj5cbiAgICAgICAgICAgIDxjcm9jby1odG1sLXhtbC10YWctZXh0ZXJuYWwtdmlkZW8gW2RhdGFdPVwiaXRlbVwiPjwvY3JvY28taHRtbC14bWwtdGFnLWV4dGVybmFsLXZpZGVvPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiAqbmdJZj1cIml0ZW0udHlwZSA9PT0gJ3Vuc3VwcG9ydGVkLXRhZydcIiBjbGFzcz1cInJlZFwiIHN0eWxlPVwibWFyZ2luLXRvcDogMTBweDtcIiA+XG4gICAgICAgICAgICA8aDQ+0JTQsNC90L3Ri9C5INGC0LXQsyDQvdC1INC/0L7QtNC00LXRgNC20LjQstCw0LXRgtGB0Y88L2g0PlxuICAgICAgICAgICAgPHNwYW4+XG4gICAgICAgICAgICAgICAge3tpdGVtLmRhdGEudGFnU3RyaW5nfX1cbiAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG48L2Rpdj4iXX0=
@@ -1,100 +0,0 @@
1
- import { AngularMaterialTableMethods } from './AngularMaterialTableMethods';
2
- import { BootstrapTableMethods } from './BootstrapTableMethods';
3
- import { HtmlExtractionMethods } from './HtmlExtractionMethods';
4
- import { TextSimpleMethods } from './TextSimpleMethods';
5
- export class TableTypes {
6
- }
7
- TableTypes.TableRowColumnData = "table-row-column-data";
8
- TableTypes.Table = "table";
9
- TableTypes.TableRowColumn = "table-row-column";
10
- export class TableMethods {
11
- static getTableFromHtmlTag(tableTag) {
12
- let tableData = {
13
- header: TableMethods.getHeader(tableTag),
14
- rows: TableMethods.getTableRows(tableTag)
15
- };
16
- var result = {
17
- type: TableTypes.Table,
18
- data: tableData,
19
- validationResult: this.checkTable(tableData),
20
- bootstrapHtml: ""
21
- };
22
- if (!result.validationResult) {
23
- return result;
24
- }
25
- result.bootstrapHtml = BootstrapTableMethods.BuildTable(result.data);
26
- var angularMaterialTableDataCheck = AngularMaterialTableMethods.checkAngularMaterialTableData(tableData);
27
- if (!angularMaterialTableDataCheck.isSucceeded) {
28
- return Object.assign(Object.assign({}, result), { angularMaterialTableDataCheck });
29
- }
30
- return Object.assign(Object.assign({}, result), { angularMaterialTableDataCheck, html: tableTag.outerHTML, angularMaterialTableData: AngularMaterialTableMethods.getAngularMaterialTableData(tableData.header.columns, tableData.rows) });
31
- }
32
- static checkTable(tableData) {
33
- let rows = tableData.rows;
34
- let prevRowCount = -1;
35
- for (let i = 0; i < rows.length; i++) {
36
- const row = rows[i];
37
- if (row.columns.length !== prevRowCount && prevRowCount != -1) {
38
- return {
39
- isSucceeded: false,
40
- message: `Ошибка при обработке разметки таблицы. `
41
- + `Количество колонок в каждой строке таблицы должно соотвествовать друг другу. `
42
- + `В строке таблицы №${i + 1} количество колонок = ${row.columns.length}, а в строке выше ${prevRowCount}.`
43
- };
44
- }
45
- prevRowCount = row.columns.length;
46
- }
47
- return {
48
- isSucceeded: true,
49
- message: "Ok"
50
- };
51
- }
52
- static getHeader(tableTag) {
53
- let header = tableTag.tHead;
54
- if (header === null) {
55
- return null;
56
- }
57
- let tr = header.children.item(0);
58
- let headerColumns = [];
59
- for (let j = 0; j < tr.children.length; j++) {
60
- const jElement = tr.children.item(j);
61
- headerColumns.push(jElement.innerHTML);
62
- }
63
- return {
64
- type: "table-header",
65
- columns: headerColumns
66
- };
67
- }
68
- static getTableRows(tableTag) {
69
- let tBody = tableTag.tBodies.item(0);
70
- let rows = [];
71
- for (let i = 0; i < tBody.children.length; i++) {
72
- const iElement = tBody.children.item(i);
73
- let rowColumns = [];
74
- for (let j = 0; j < iElement.children.length; j++) {
75
- const jElement = iElement.children.item(j);
76
- let children = HtmlExtractionMethods.transformHtmlElementToBlocks(jElement);
77
- if (children.length === 0) {
78
- var textTag = document.createElement("p");
79
- textTag.innerHTML = jElement.innerHTML;
80
- var textElem = TextSimpleMethods.ExtractTextTag(textTag);
81
- children.push(textElem);
82
- }
83
- var result = {
84
- type: TableTypes.TableRowColumnData,
85
- data: {
86
- text: jElement.innerHTML,
87
- children
88
- }
89
- };
90
- rowColumns.push(result);
91
- }
92
- rows.push({
93
- type: TableTypes.TableRowColumn,
94
- columns: rowColumns
95
- });
96
- }
97
- return rows;
98
- }
99
- }
100
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVGFibGVNZXRob2RzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY3JvY28taHRtbC9zcmMvbGliL2V4dGVuc2lvbnMvVGFibGVNZXRob2RzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQzVFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRWhFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBbUN4RCxNQUFNLE9BQU8sVUFBVTs7QUFDSCw2QkFBa0IsR0FBRyx1QkFBdUIsQ0FBQztBQUM3QyxnQkFBSyxHQUFHLE9BQU8sQ0FBQztBQUNoQix5QkFBYyxHQUFHLGtCQUFrQixDQUFDO0FBR3hELE1BQU0sT0FBTyxZQUFZO0lBRXJCLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxRQUEwQjtRQUNqRCxJQUFJLFNBQVMsR0FBZTtZQUN4QixNQUFNLEVBQUUsWUFBWSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUM7WUFDeEMsSUFBSSxFQUFFLFlBQVksQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDO1NBQzVDLENBQUM7UUFFRixJQUFJLE1BQU0sR0FBRztZQUNULElBQUksRUFBRSxVQUFVLENBQUMsS0FBSztZQUN0QixJQUFJLEVBQUUsU0FBUztZQUNmLGdCQUFnQixFQUFFLElBQUksQ0FBQyxVQUFVLENBQUMsU0FBUyxDQUFDO1lBQzVDLGFBQWEsRUFBRSxFQUFFO1NBQ3BCLENBQUE7UUFFRCxJQUFHLENBQUMsTUFBTSxDQUFDLGdCQUFnQixFQUFDO1lBQ3hCLE9BQU8sTUFBTSxDQUFDO1NBQ2pCO1FBQ0QsTUFBTSxDQUFDLGFBQWEsR0FBRyxxQkFBcUIsQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLElB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Q0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFO2dCQUMvQyxNQUFNLFFBQVEsR0FBRyxRQUFRLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQWdCLENBQUM7Z0JBRTFELElBQUksUUFBUSxHQUFHLHFCQUFxQixDQUFDLDRCQUE0QixDQUFDLFFBQVEsQ0FBQyxDQUFDO2dCQUU1RSxJQUFHLFFBQVEsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFDO29CQUNyQixJQUFJLE9BQU8sR0FBRyxRQUFRLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxDQUFDO29CQUMxQyxPQUFPLENBQUMsU0FBUyxHQUFHLFFBQVEsQ0FBQyxTQUFTLENBQUM7b0JBRXZDLElBQUksUUFBUSxHQUFHLGlCQUFpQixDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsQ0FBQztvQkFFekQsUUFBUSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztpQkFDM0I7Z0JBRUQsSUFBSSxNQUFNLEdBQXNCO29CQUM1QixJQUFJLEVBQUUsVUFBVSxDQUFDLGtCQUFrQjtvQkFDbkMsSUFBSSxFQUFFO3dCQUNGLElBQUksRUFBRSxRQUFRLENBQUMsU0FBUzt3QkFDeEIsUUFBUTtxQkFDWDtpQkFDSixDQUFDO2dCQUVGLFVBQVUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7YUFDM0I7WUFFRCxJQUFJLENBQUMsSUFBSSxDQUFDO2dCQUNOLElBQUksRUFBRSxVQUFVLENBQUMsY0FBYztnQkFDL0IsT0FBTyxFQUFFLFVBQVU7YUFDdEIsQ0FBQyxDQUFDO1NBQ047UUFFRCxPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBbmd1bGFyTWF0ZXJpYWxUYWJsZU1ldGhvZHMgfSBmcm9tICcuL0FuZ3VsYXJNYXRlcmlhbFRhYmxlTWV0aG9kcyc7XG5pbXBvcnQgeyBCb290c3RyYXBUYWJsZU1ldGhvZHMgfSBmcm9tICcuL0Jvb3RzdHJhcFRhYmxlTWV0aG9kcyc7XG5pbXBvcnQgeyBIdG1sRXh0cmFjdGlvbk1ldGhvZHMgfSBmcm9tICcuL0h0bWxFeHRyYWN0aW9uTWV0aG9kcyc7XG5pbXBvcnQgeyBJbnRlcmZhY2VCbG9jayB9IGZyb20gXCIuL0ludGVyZmFjZUJsb2NrXCI7XG5pbXBvcnQgeyBUZXh0U2ltcGxlTWV0aG9kcyB9IGZyb20gJy4vVGV4dFNpbXBsZU1ldGhvZHMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEJhc2VBcGlSZXNwb25zZSB7XG4gICAgaXNTdWNjZWVkZWQ6IGJvb2xlYW47XG4gICAgbWVzc2FnZTogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFRhYmxlSGVhZGVyRGF0YXtcbiAgICB0eXBlOiBcInRhYmxlLWhlYWRlclwiO1xuICAgIGNvbHVtbnM6IHN0cmluZ1tdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFRhYmxlUm93Q29sdW1uRGF0YSB7XG4gICAgdHlwZTogXCJ0YWJsZS1yb3ctY29sdW1uLWRhdGFcIjtcbiAgICBkYXRhOiB7XG4gICAgICAgIHRleHQ6IHN0cmluZztcbiAgICAgICAgY2hpbGRyZW46IEludGVyZmFjZUJsb2NrW107XG4gICAgfVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFRhYmxlUm93RGF0YSB7XG4gICAgdHlwZTogXCJ0YWJsZS1yb3ctY29sdW1uXCI7XG4gICAgY29sdW1uczogVGFibGVSb3dDb2x1bW5EYXRhW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVGFibGVEYXRhe1xuICAgIGhlYWRlcjogVGFibGVIZWFkZXJEYXRhLFxuICAgIHJvd3M6IFRhYmxlUm93RGF0YVtdXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVGFibGVUYWdEYXRhe1xuICAgIHR5cGU6IFwidGFibGVcIjtcbiAgICBkYXRhOiBUYWJsZURhdGE7XG59XG5cbmV4cG9ydCBjbGFzcyBUYWJsZVR5cGVze1xuICAgIHN0YXRpYyByZWFkb25seSBUYWJsZVJvd0NvbHVtbkRhdGEgPSBcInRhYmxlLXJvdy1jb2x1bW4tZGF0YVwiO1xuICAgIHN0YXRpYyByZWFkb25seSBUYWJsZSA9IFwidGFibGVcIjtcbiAgICBzdGF0aWMgcmVhZG9ubHkgVGFibGVSb3dDb2x1bW4gPSBcInRhYmxlLXJvdy1jb2x1bW5cIjtcbn1cblxuZXhwb3J0IGNsYXNzIFRhYmxlTWV0aG9kcyB7XG5cbiAgICBzdGF0aWMgZ2V0VGFibGVGcm9tSHRtbFRhZyh0YWJsZVRhZzogSFRNTFRhYmxlRWxlbWVudCkge1xuICAgICAgICBsZXQgdGFibGVEYXRhIDogVGFibGVEYXRhID0ge1xuICAgICAgICAgICAgaGVhZGVyOiBUYWJsZU1ldGhvZHMuZ2V0SGVhZGVyKHRhYmxlVGFnKSxcbiAgICAgICAgICAgIHJvd3M6IFRhYmxlTWV0aG9kcy5nZXRUYWJsZVJvd3ModGFibGVUYWcpXG4gICAgICAgIH07XG5cbiAgICAgICAgdmFyIHJlc3VsdCA9IHtcbiAgICAgICAgICAgIHR5cGU6IFRhYmxlVHlwZXMuVGFibGUsXG4gICAgICAgICAgICBkYXRhOiB0YWJsZURhdGEsXG4gICAgICAgICAgICB2YWxpZGF0aW9uUmVzdWx0OiB0aGlzLmNoZWNrVGFibGUodGFibGVEYXRhKSxcbiAgICAgICAgICAgIGJvb3RzdHJhcEh0bWw6IFwiXCJcbiAgICAgICAgfVxuXG4gICAgICAgIGlmKCFyZXN1bHQudmFsaWRhdGlvblJlc3VsdCl7XG4gICAgICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgICAgICB9XG4gICAgICAgIHJlc3VsdC5ib290c3RyYXBIdG1sID0gQm9vdHN0cmFwVGFibGVNZXRob2RzLkJ1aWxkVGFibGUocmVzdWx0LmRhdGEpO1xuXG4gICAgICAgIHZhciBhbmd1bGFyTWF0ZXJpYWxUYWJsZURhdGFDaGVjayA9IEFuZ3VsYXJNYXRlcmlhbFRhYmxlTWV0aG9kcy5jaGVja0FuZ3VsYXJNYXRlcmlhbFRhYmxlRGF0YSh0YWJsZURhdGEpO1xuXG4gICAgICAgIGlmICghYW5ndWxhck1hdGVyaWFsVGFibGVEYXRhQ2hlY2suaXNTdWNjZWVkZWQpIHtcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgLi4ucmVzdWx0LFxuICAgICAgICAgICAgICAgIGFuZ3VsYXJNYXRlcmlhbFRhYmxlRGF0YUNoZWNrXG4gICAgICAgICAgICB9O1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIC4uLnJlc3VsdCxcbiAgICAgICAgICAgIGFuZ3VsYXJNYXRlcmlhbFRhYmxlRGF0YUNoZWNrLFxuICAgICAgICAgICAgaHRtbDogdGFibGVUYWcub3V0ZXJIVE1MLFxuICAgICAgICAgICAgYW5ndWxhck1hdGVyaWFsVGFibGVEYXRhOiBBbmd1bGFyTWF0ZXJpYWxUYWJsZU1ldGhvZHMuZ2V0QW5ndWxhck1hdGVyaWFsVGFibGVEYXRhKHRhYmxlRGF0YS5oZWFkZXIuY29sdW1ucywgdGFibGVEYXRhLnJvd3MpLFxuICAgICAgICB9O1xuICAgIH1cblxuICAgIHN0YXRpYyBjaGVja1RhYmxlKHRhYmxlRGF0YTogVGFibGVEYXRhKSA6IEJhc2VBcGlSZXNwb25zZXtcblxuICAgICAgICBsZXQgcm93cyA9IHRhYmxlRGF0YS5yb3dzO1xuXG4gICAgICAgIGxldCBwcmV2Um93Q291bnQgPSAtMTtcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCByb3dzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICBjb25zdCByb3cgPSByb3dzW2ldO1xuXG4gICAgICAgICAgICBpZiAocm93LmNvbHVtbnMubGVuZ3RoICE9PSBwcmV2Um93Q291bnQgJiYgcHJldlJvd0NvdW50ICE9IC0xKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICAgICAgaXNTdWNjZWVkZWQ6IGZhbHNlLFxuICAgICAgICAgICAgICAgICAgICBtZXNzYWdlOiBg0J7RiNC40LHQutCwINC/0YDQuCDQvtCx0YDQsNCx0L7RgtC60LUg0YDQsNC30LzQtdGC0LrQuCDRgtCw0LHQu9C40YbRiy4gYFxuICAgICAgICAgICAgICAgICAgICAgICAgKyBg0JrQvtC70LjRh9C10YHRgtCy0L4g0LrQvtC70L7QvdC+0Log0LIg0LrQsNC20LTQvtC5INGB0YLRgNC+0LrQtSDRgtCw0LHQu9C40YbRiyDQtNC+0LvQttC90L4g0YHQvtC+0YLQstC10YHRgtCy0L7QstCw0YLRjCDQtNGA0YPQsyDQtNGA0YPQs9GDLiBgXG4gICAgICAgICAgICAgICAgICAgICAgICArIGDQkiDRgdGC0YDQvtC60LUg0YLQsNCx0LvQuNGG0Ysg4oSWJHtpICsgMX0g0LrQvtC70LjRh9C10YHRgtCy0L4g0LrQvtC70L7QvdC+0LogPSAke3Jvdy5jb2x1bW5zLmxlbmd0aH0sINCwINCyINGB0YLRgNC+0LrQtSDQstGL0YjQtSAke3ByZXZSb3dDb3VudH0uYFxuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBwcmV2Um93Q291bnQgPSByb3cuY29sdW1ucy5sZW5ndGg7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgaXNTdWNjZWVkZWQ6IHRydWUsXG4gICAgICAgICAgICBtZXNzYWdlOiBcIk9rXCJcbiAgICAgICAgfVxuICAgIH1cblxuXG4gICAgc3RhdGljIGdldEhlYWRlcih0YWJsZVRhZzogSFRNTFRhYmxlRWxlbWVudCkgOiBUYWJsZUhlYWRlckRhdGEge1xuICAgICAgICBsZXQgaGVhZGVyID0gdGFibGVUYWcudEhlYWQ7XG5cbiAgICAgICAgaWYoaGVhZGVyID09PSBudWxsKXtcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICB9XG5cbiAgICAgICAgbGV0IHRyID0gaGVhZGVyLmNoaWxkcmVuLml0ZW0oMCk7XG5cbiAgICAgICAgbGV0IGhlYWRlckNvbHVtbnM6IHN0cmluZ1tdID0gW107XG5cbiAgICAgICAgZm9yIChsZXQgaiA9IDA7IGogPCB0ci5jaGlsZHJlbi5sZW5ndGg7IGorKykge1xuICAgICAgICAgICAgY29uc3QgakVsZW1lbnQgPSB0ci5jaGlsZHJlbi5pdGVtKGopIGFzIEhUTUxFbGVtZW50O1xuXG4gICAgICAgICAgICBoZWFkZXJDb2x1bW5zLnB1c2goakVsZW1lbnQuaW5uZXJIVE1MKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICB0eXBlOiBcInRhYmxlLWhlYWRlclwiLFxuICAgICAgICAgICAgY29sdW1uczogaGVhZGVyQ29sdW1uc1xuICAgICAgICB9O1xuICAgIH1cblxuICAgIHN0YXRpYyBnZXRUYWJsZVJvd3ModGFibGVUYWc6IEhUTUxUYWJsZUVsZW1lbnQpOiBBcnJheTxUYWJsZVJvd0RhdGE+IHtcbiAgICAgICAgbGV0IHRCb2R5ID0gdGFibGVUYWcudEJvZGllcy5pdGVtKDApO1xuXG4gICAgICAgIGxldCByb3dzOiBUYWJsZVJvd0RhdGFbXSA9IFtdO1xuXG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdEJvZHkuY2hpbGRyZW4ubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgIGNvbnN0IGlFbGVtZW50ID0gdEJvZHkuY2hpbGRyZW4uaXRlbShpKTtcblxuICAgICAgICAgICAgbGV0IHJvd0NvbHVtbnM6IFRhYmxlUm93Q29sdW1uRGF0YVtdID0gW107XG5cbiAgICAgICAgICAgIGZvciAobGV0IGogPSAwOyBqIDwgaUVsZW1lbnQuY2hpbGRyZW4ubGVuZ3RoOyBqKyspIHtcbiAgICAgICAgICAgICAgICBjb25zdCBqRWxlbWVudCA9IGlFbGVtZW50LmNoaWxkcmVuLml0ZW0oaikgYXMgSFRNTEVsZW1lbnQ7XG5cbiAgICAgICAgICAgICAgICBsZXQgY2hpbGRyZW4gPSBIdG1sRXh0cmFjdGlvbk1ldGhvZHMudHJhbnNmb3JtSHRtbEVsZW1lbnRUb0Jsb2NrcyhqRWxlbWVudCk7XG5cbiAgICAgICAgICAgICAgICBpZihjaGlsZHJlbi5sZW5ndGggPT09IDApe1xuICAgICAgICAgICAgICAgICAgICB2YXIgdGV4dFRhZyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoXCJwXCIpO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0VGFnLmlubmVySFRNTCA9IGpFbGVtZW50LmlubmVySFRNTDtcblxuICAgICAgICAgICAgICAgICAgICB2YXIgdGV4dEVsZW0gPSBUZXh0U2ltcGxlTWV0aG9kcy5FeHRyYWN0VGV4dFRhZyh0ZXh0VGFnKTtcblxuICAgICAgICAgICAgICAgICAgICBjaGlsZHJlbi5wdXNoKHRleHRFbGVtKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICB2YXIgcmVzdWx0OlRhYmxlUm93Q29sdW1uRGF0YSA9IHtcbiAgICAgICAgICAgICAgICAgICAgdHlwZTogVGFibGVUeXBlcy5UYWJsZVJvd0NvbHVtbkRhdGEsXG4gICAgICAgICAgICAgICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQ6IGpFbGVtZW50LmlubmVySFRNTCxcbiAgICAgICAgICAgICAgICAgICAgICAgIGNoaWxkcmVuXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICAgICAgcm93Q29sdW1ucy5wdXNoKHJlc3VsdCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHJvd3MucHVzaCh7XG4gICAgICAgICAgICAgICAgdHlwZTogVGFibGVUeXBlcy5UYWJsZVJvd0NvbHVtbixcbiAgICAgICAgICAgICAgICBjb2x1bW5zOiByb3dDb2x1bW5zXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiByb3dzO1xuICAgIH1cbn1cbiJdfQ==
@@ -1,78 +0,0 @@
1
- export const TextTag = "text";
2
- export class TextSimpleMethods {
3
- static ExtractTextTag(elem) {
4
- var _a;
5
- var hAlignValue = (_a = elem.getAttribute("h-align")) !== null && _a !== void 0 ? _a : "left";
6
- var data = {
7
- textTagName: elem.tagName.toLowerCase(),
8
- text: elem.innerText.trim().replace('\n\t', ''),
9
- html: elem.innerHTML.trim().replace('\n\t', ''),
10
- horizontalAlignment: hAlignValue,
11
- validationResult: {
12
- isSucceeded: true,
13
- message: "Ok"
14
- }
15
- };
16
- let result = {
17
- type: TextTag,
18
- data: data
19
- };
20
- if (result.data.text === '\n') {
21
- result.data.text = '';
22
- }
23
- if (result.data.html === '\n') {
24
- result.data.html = '';
25
- }
26
- var alignmentVals = ["left", "right", "center"];
27
- if (alignmentVals.indexOf(hAlignValue) < 0) {
28
- result.data.validationResult = {
29
- isSucceeded: false,
30
- message: `Недопустимое значение атрибута h-align. Допустимые значения: ${alignmentVals.join(', ')}. `
31
- + 'Данный тег можно не указывать, по-умолчанию будет применено выравнивание слева.'
32
- };
33
- }
34
- var html = result.data.html;
35
- var htmlValidation = this.ValidateTextHtml(html);
36
- if (!htmlValidation.isSucceeded) {
37
- result.data.validationResult = htmlValidation;
38
- }
39
- return result;
40
- }
41
- static ValidateTextHtml(html) {
42
- var p = document.createElement("p");
43
- p.innerHTML = html;
44
- for (let i = 0; i < p.children.length; i++) {
45
- const element = p.children.item(i);
46
- var validationResult = this.ValidateTag(element);
47
- if (!validationResult.isSucceeded) {
48
- return validationResult;
49
- }
50
- }
51
- return {
52
- isSucceeded: true,
53
- message: `Ok`
54
- };
55
- }
56
- static ValidateTag(element) {
57
- let lowerTag = element.tagName.toLowerCase();
58
- if (!this.supportedTags.includes(lowerTag)) {
59
- return {
60
- isSucceeded: false,
61
- message: `Тег <${lowerTag}> не поддерживается внутри тега <text>`
62
- };
63
- }
64
- for (let i = 0; i < element.children.length; i++) {
65
- const nElement = element.children.item(i);
66
- var innerValidationResult = this.ValidateTag(nElement);
67
- if (!innerValidationResult.isSucceeded) {
68
- return innerValidationResult;
69
- }
70
- }
71
- return {
72
- isSucceeded: true,
73
- message: "Ok"
74
- };
75
- }
76
- }
77
- TextSimpleMethods.supportedTags = ["sup", "sub", "strong", "b", "i"];
78
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVGV4dFNpbXBsZU1ldGhvZHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jcm9jby1odG1sL3NyYy9saWIvZXh0ZW5zaW9ucy9UZXh0U2ltcGxlTWV0aG9kcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLENBQUMsTUFBTSxPQUFPLEdBQUcsTUFBTSxDQUFDO0FBb0I5QixNQUFNLE9BQU8saUJBQWlCO0lBSTFCLE1BQU0sQ0FBQyxjQUFjLENBQUMsSUFBaUI7O1FBQ25DLElBQUksV0FBVyxHQUFHLE1BQUEsSUFBSSxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsbUNBQUksTUFBYSxDQUFDO1FBRWhFLElBQUksSUFBSSxHQUFzQjtZQUMxQixXQUFXLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLEVBQUU7WUFDdkMsSUFBSSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUM7WUFDL0MsSUFBSSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUM7WUFDL0MsbUJBQW1CLEVBQUUsV0FBVztZQUNoQyxnQkFBZ0IsRUFBRTtnQkFDZCxXQUFXLEVBQUUsSUFBSTtnQkFDakIsT0FBTyxFQUFFLElBQUk7YUFDaEI7U0FDSixDQUFDO1FBRUYsSUFBSSxNQUFNLEdBQWtCO1lBQ3hCLElBQUksRUFBRSxPQUFPO1lBQ2IsSUFBSSxFQUFFLElBQUk7U0FDYixDQUFDO1FBRUYsSUFBRyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksS0FBSyxJQUFJLEVBQUM7WUFDekIsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLEdBQUcsRUFBRSxDQUFDO1NBQ3pCO1FBQ0QsSUFBRyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksS0FBSyxJQUFJLEVBQUM7WUFDekIsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLEdBQUcsRUFBRSxDQUFDO1NBQ3pCO1FBRUQsSUFBSSxhQUFhLEdBQUcsQ0FBQyxNQUFNLEVBQUUsT0FBTyxFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBRWhELElBQUksYUFBYSxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFFeEMsTUFBTSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsR0FBRztnQkFDM0IsV0FBVyxFQUFFLEtBQUs7Z0JBQ2xCLE9BQU8sRUFBRSxnRUFBZ0UsYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSTtzQkFDL0YsaUZBQWlGO2FBQzFGLENBQUM7U0FDTDtRQUVELElBQUksSUFBSSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDO1FBQzVCLElBQUksY0FBYyxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUVqRCxJQUFHLENBQUMsY0FBYyxDQUFDLFdBQVcsRUFBQztZQUMzQixNQUFNLENBQUMsSUFBSSxDQUFDLGdCQUFnQixHQUFHLGNBQWMsQ0FBQztTQUNqRDtRQUVELE9BQU8sTUFBTSxDQUFDO0lBQ2xCLENBQUM7SUFFRCxNQUFNLENBQUMsZ0JBQWdCLENBQUMsSUFBWTtRQUVoQyxJQUFJLENBQUMsR0FBRyxRQUFRLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ3BDLENBQUMsQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDO1FBRW5CLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLENBQUMsUUFBUSxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBRTtZQUN4QyxNQUFNLE9BQU8sR0FBRyxDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUVuQyxJQUFJLGdCQUFnQixHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLENBQUM7WUFFakQsSUFBRyxDQUFDLGdCQUFnQixDQUFDLFdBQVcsRUFBQztnQkFDN0IsT0FBTyxnQkFBZ0IsQ0FBQzthQUMzQjtTQUNKO1FBRUQsT0FBTztZQUNILFdBQVcsRUFBQyxJQUFJO1lBQ2hCLE9BQU8sRUFBRSxJQUFJO1NBQ2hCLENBQUE7SUFDTCxDQUFDO0lBRUQsTUFBTSxDQUFDLFdBQVcsQ0FBQyxPQUFpQjtRQUNoQyxJQUFJLFFBQVEsR0FBRyxPQUFPLENBQUMsT0FBTyxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBRTdDLElBQUcsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsRUFBQztZQUN0QyxPQUFPO2dCQUNILFdBQVcsRUFBRSxLQUFLO2dCQUNsQixPQUFPLEVBQUUsUUFBUSxRQUFRLHdDQUF3QzthQUNwRSxDQUFBO1NBQ0o7UUFFRCxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsT0FBTyxDQUFDLFFBQVEsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUU7WUFDOUMsTUFBTSxRQUFRLEdBQUcsT0FBTyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFFMUMsSUFBSSxxQkFBcUIsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBRXZELElBQUcsQ0FBQyxxQkFBcUIsQ0FBQyxXQUFXLEVBQUM7Z0JBQ2xDLE9BQU8scUJBQXFCLENBQUM7YUFDaEM7U0FDSjtRQUVELE9BQU87WUFDSCxXQUFXLEVBQUUsSUFBSTtZQUNqQixPQUFPLEVBQUUsSUFBSTtTQUNoQixDQUFDO0lBQ04sQ0FBQzs7QUE5Rk0sK0JBQWEsR0FBRyxDQUFDLEtBQUssRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJhc2VBcGlSZXNwb25zZSB9IGZyb20gXCIuL1RhYmxlTWV0aG9kc1wiO1xuXG5leHBvcnQgY29uc3QgVGV4dFRhZyA9IFwidGV4dFwiO1xuXG5leHBvcnQgaW50ZXJmYWNlIFNpbXBsZVRleHRUYWcge1xuICAgIHR5cGU6IFwidGV4dFwiLFxuICAgIGRhdGE6IFNpbXBsZVRleHRUYWdEYXRhXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgR2VuZXJpY1RleHRUYWcge1xuICAgIHR5cGU6IHN0cmluZyxcbiAgICBkYXRhOiBTaW1wbGVUZXh0VGFnRGF0YVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNpbXBsZVRleHRUYWdEYXRhIHtcbiAgICB0ZXh0VGFnTmFtZTogc3RyaW5nO1xuICAgIHRleHQ6IHN0cmluZyxcbiAgICBodG1sOiBzdHJpbmcsXG4gICAgaG9yaXpvbnRhbEFsaWdubWVudDogXCJsZWZ0XCIgfCBcInJpZ2h0XCIgfCBcImNlbnRlclwiLFxuICAgIHZhbGlkYXRpb25SZXN1bHQ6IEJhc2VBcGlSZXNwb25zZVxufVxuXG5leHBvcnQgY2xhc3MgVGV4dFNpbXBsZU1ldGhvZHMge1xuXG4gICAgc3RhdGljIHN1cHBvcnRlZFRhZ3MgPSBbXCJzdXBcIiwgXCJzdWJcIiwgXCJzdHJvbmdcIiwgXCJiXCIsIFwiaVwiXTtcblxuICAgIHN0YXRpYyBFeHRyYWN0VGV4dFRhZyhlbGVtOiBIVE1MRWxlbWVudCk6IFNpbXBsZVRleHRUYWcge1xuICAgICAgICB2YXIgaEFsaWduVmFsdWUgPSBlbGVtLmdldEF0dHJpYnV0ZShcImgtYWxpZ25cIikgPz8gXCJsZWZ0XCIgYXMgYW55O1xuXG4gICAgICAgIHZhciBkYXRhOiBTaW1wbGVUZXh0VGFnRGF0YSA9IHtcbiAgICAgICAgICAgIHRleHRUYWdOYW1lOiBlbGVtLnRhZ05hbWUudG9Mb3dlckNhc2UoKSxcbiAgICAgICAgICAgIHRleHQ6IGVsZW0uaW5uZXJUZXh0LnRyaW0oKS5yZXBsYWNlKCdcXG5cXHQnLCAnJyksXG4gICAgICAgICAgICBodG1sOiBlbGVtLmlubmVySFRNTC50cmltKCkucmVwbGFjZSgnXFxuXFx0JywgJycpLFxuICAgICAgICAgICAgaG9yaXpvbnRhbEFsaWdubWVudDogaEFsaWduVmFsdWUsXG4gICAgICAgICAgICB2YWxpZGF0aW9uUmVzdWx0OiB7XG4gICAgICAgICAgICAgICAgaXNTdWNjZWVkZWQ6IHRydWUsXG4gICAgICAgICAgICAgICAgbWVzc2FnZTogXCJPa1wiXG4gICAgICAgICAgICB9XG4gICAgICAgIH07XG5cbiAgICAgICAgbGV0IHJlc3VsdDogU2ltcGxlVGV4dFRhZyA9IHtcbiAgICAgICAgICAgIHR5cGU6IFRleHRUYWcsXG4gICAgICAgICAgICBkYXRhOiBkYXRhXG4gICAgICAgIH07XG5cbiAgICAgICAgaWYocmVzdWx0LmRhdGEudGV4dCA9PT0gJ1xcbicpe1xuICAgICAgICAgICAgcmVzdWx0LmRhdGEudGV4dCA9ICcnO1xuICAgICAgICB9XG4gICAgICAgIGlmKHJlc3VsdC5kYXRhLmh0bWwgPT09ICdcXG4nKXtcbiAgICAgICAgICAgIHJlc3VsdC5kYXRhLmh0bWwgPSAnJztcbiAgICAgICAgfVxuXG4gICAgICAgIHZhciBhbGlnbm1lbnRWYWxzID0gW1wibGVmdFwiLCBcInJpZ2h0XCIsIFwiY2VudGVyXCJdO1xuXG4gICAgICAgIGlmIChhbGlnbm1lbnRWYWxzLmluZGV4T2YoaEFsaWduVmFsdWUpIDwgMCkge1xuXG4gICAgICAgICAgICByZXN1bHQuZGF0YS52YWxpZGF0aW9uUmVzdWx0ID0ge1xuICAgICAgICAgICAgICAgIGlzU3VjY2VlZGVkOiBmYWxzZSxcbiAgICAgICAgICAgICAgICBtZXNzYWdlOiBg0J3QtdC00L7Qv9GD0YHRgtC40LzQvtC1INC30L3QsNGH0LXQvdC40LUg0LDRgtGA0LjQsdGD0YLQsCBoLWFsaWduLiDQlNC+0L/Rg9GB0YLQuNC80YvQtSDQt9C90LDRh9C10L3QuNGPOiAke2FsaWdubWVudFZhbHMuam9pbignLCAnKX0uIGBcbiAgICAgICAgICAgICAgICAgICAgKyAn0JTQsNC90L3Ri9C5INGC0LXQsyDQvNC+0LbQvdC+INC90LUg0YPQutCw0LfRi9Cy0LDRgtGMLCDQv9C+LdGD0LzQvtC70YfQsNC90LjRjiDQsdGD0LTQtdGCINC/0YDQuNC80LXQvdC10L3QviDQstGL0YDQsNCy0L3QuNCy0LDQvdC40LUg0YHQu9C10LLQsC4nXG4gICAgICAgICAgICB9O1xuICAgICAgICB9XG5cbiAgICAgICAgdmFyIGh0bWwgPSByZXN1bHQuZGF0YS5odG1sO1xuICAgICAgICB2YXIgaHRtbFZhbGlkYXRpb24gPSB0aGlzLlZhbGlkYXRlVGV4dEh0bWwoaHRtbCk7XG5cbiAgICAgICAgaWYoIWh0bWxWYWxpZGF0aW9uLmlzU3VjY2VlZGVkKXtcbiAgICAgICAgICAgIHJlc3VsdC5kYXRhLnZhbGlkYXRpb25SZXN1bHQgPSBodG1sVmFsaWRhdGlvbjtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgfVxuXG4gICAgc3RhdGljIFZhbGlkYXRlVGV4dEh0bWwoaHRtbDogc3RyaW5nKSA6IEJhc2VBcGlSZXNwb25zZXtcblxuICAgICAgICB2YXIgcCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoXCJwXCIpO1xuICAgICAgICBwLmlubmVySFRNTCA9IGh0bWw7XG5cbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBwLmNoaWxkcmVuLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICBjb25zdCBlbGVtZW50ID0gcC5jaGlsZHJlbi5pdGVtKGkpO1xuXG4gICAgICAgICAgICB2YXIgdmFsaWRhdGlvblJlc3VsdCA9IHRoaXMuVmFsaWRhdGVUYWcoZWxlbWVudCk7XG5cbiAgICAgICAgICAgIGlmKCF2YWxpZGF0aW9uUmVzdWx0LmlzU3VjY2VlZGVkKXtcbiAgICAgICAgICAgICAgICByZXR1cm4gdmFsaWRhdGlvblJlc3VsdDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBpc1N1Y2NlZWRlZDp0cnVlLFxuICAgICAgICAgICAgbWVzc2FnZTogYE9rYFxuICAgICAgICB9XG4gICAgfVxuXG4gICAgc3RhdGljIFZhbGlkYXRlVGFnKGVsZW1lbnQgOiBFbGVtZW50KTogQmFzZUFwaVJlc3BvbnNle1xuICAgICAgICBsZXQgbG93ZXJUYWcgPSBlbGVtZW50LnRhZ05hbWUudG9Mb3dlckNhc2UoKTtcblxuICAgICAgICBpZighdGhpcy5zdXBwb3J0ZWRUYWdzLmluY2x1ZGVzKGxvd2VyVGFnKSl7XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIGlzU3VjY2VlZGVkOiBmYWxzZSxcbiAgICAgICAgICAgICAgICBtZXNzYWdlOiBg0KLQtdCzIDwke2xvd2VyVGFnfT4g0L3QtSDQv9C+0LTQtNC10YDQttC40LLQsNC10YLRgdGPINCy0L3Rg9GC0YDQuCDRgtC10LPQsCA8dGV4dD5gXG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGVsZW1lbnQuY2hpbGRyZW4ubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgIGNvbnN0IG5FbGVtZW50ID0gZWxlbWVudC5jaGlsZHJlbi5pdGVtKGkpO1xuXG4gICAgICAgICAgICB2YXIgaW5uZXJWYWxpZGF0aW9uUmVzdWx0ID0gdGhpcy5WYWxpZGF0ZVRhZyhuRWxlbWVudCk7XG5cbiAgICAgICAgICAgIGlmKCFpbm5lclZhbGlkYXRpb25SZXN1bHQuaXNTdWNjZWVkZWQpe1xuICAgICAgICAgICAgICAgIHJldHVybiBpbm5lclZhbGlkYXRpb25SZXN1bHQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgaXNTdWNjZWVkZWQ6IHRydWUsXG4gICAgICAgICAgICBtZXNzYWdlOiBcIk9rXCJcbiAgICAgICAgfTtcbiAgICB9XG59XG4iXX0=
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY3JvY28taHRtbC9zcmMvbGliL21vZGVscy9tb2RlbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgVGFnSXRlbSB7XG4gICAgdGFnOiBzdHJpbmc7XG4gICAgZGlzcGxheVZhbHVlOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSHRtbEJvZHlUYWcge1xuICAgIHRhZ0Rlc2NyaXB0aW9uOiBUYWdJdGVtO1xuICAgIGlubmVySHRtbDogc3RyaW5nO1xuICAgIGF0dHJpYnV0ZXM6IE9iamVjdDtcbiAgICBwcmVzZW50T3JFZGl0OiBib29sZWFuO1xufSJdfQ==
@@ -1,40 +0,0 @@
1
- import { Inject, Injectable } from "@angular/core";
2
- import * as i0 from "@angular/core";
3
- import * as i1 from "@angular/common/http";
4
- export class FileUploadService {
5
- constructor(_httpClient, baseUrl) {
6
- this._httpClient = _httpClient;
7
- this.baseUrl = baseUrl;
8
- }
9
- postFile(file, createLocalCopiesNow = false) {
10
- const formData = new FormData();
11
- formData.append(`fileKey1`, file, file.name);
12
- return this.postFilesInner(formData, createLocalCopiesNow);
13
- }
14
- postFiles(files, createLocalCopiesNow = false) {
15
- const formData = new FormData();
16
- for (let i = 0; i < files.length; i++) {
17
- var fileToUpload = files.item(i);
18
- formData.append(`fileKey${i}`, fileToUpload, fileToUpload === null || fileToUpload === void 0 ? void 0 : fileToUpload.name);
19
- }
20
- return this.postFilesInner(formData, createLocalCopiesNow);
21
- }
22
- postFilesInner(formData, createLocalCopiesNow = false) {
23
- let endpoint = this.baseUrl + 'Api/Files/UploadFiles';
24
- if (createLocalCopiesNow) {
25
- endpoint += '/Now';
26
- }
27
- return this._httpClient
28
- .post(endpoint, formData);
29
- }
30
- }
31
- FileUploadService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.1.5", ngImport: i0, type: FileUploadService, deps: [{ token: i1.HttpClient }, { token: 'BASE_URL' }], target: i0.ɵɵFactoryTarget.Injectable });
32
- FileUploadService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.1.5", ngImport: i0, type: FileUploadService, providedIn: 'root' });
33
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.5", ngImport: i0, type: FileUploadService, decorators: [{
34
- type: Injectable,
35
- args: [{ providedIn: 'root' }]
36
- }], ctorParameters: function () { return [{ type: i1.HttpClient }, { type: undefined, decorators: [{
37
- type: Inject,
38
- args: ['BASE_URL']
39
- }] }]; } });
40
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS11cGxvYWQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nyb2NvLWh0bWwvc3JjL2xpYi9zZXJ2aWNlcy9maWxlLXVwbG9hZC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFpQm5ELE1BQU0sT0FBTyxpQkFBaUI7SUFFMUIsWUFBb0IsV0FBdUIsRUFDWCxPQUFlO1FBRDNCLGdCQUFXLEdBQVgsV0FBVyxDQUFZO1FBQ1gsWUFBTyxHQUFQLE9BQU8sQ0FBUTtJQUMvQyxDQUFDO0lBRUQsUUFBUSxDQUFDLElBQVUsRUFBRSxvQkFBb0IsR0FBRyxLQUFLO1FBQzdDLE1BQU0sUUFBUSxHQUFhLElBQUksUUFBUSxFQUFFLENBQUM7UUFFMUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxVQUFVLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUU3QyxPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxFQUFFLG9CQUFvQixDQUFDLENBQUM7SUFDL0QsQ0FBQztJQUVELFNBQVMsQ0FBQyxLQUFlLEVBQUUsb0JBQW9CLEdBQUcsS0FBSztRQUVuRCxNQUFNLFFBQVEsR0FBYSxJQUFJLFFBQVEsRUFBRSxDQUFDO1FBRTFDLEtBQUksSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFDO1lBQ2pDLElBQUksWUFBWSxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDakMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsRUFBRSxFQUFFLFlBQW9CLEVBQUUsWUFBWSxhQUFaLFlBQVksdUJBQVosWUFBWSxDQUFFLElBQUksQ0FBQyxDQUFDO1NBQzVFO1FBRUQsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsRUFBRSxvQkFBb0IsQ0FBQyxDQUFDO0lBQy9ELENBQUM7SUFFRCxjQUFjLENBQUMsUUFBa0IsRUFBRSxvQkFBb0IsR0FBRyxLQUFLO1FBRTNELElBQUksUUFBUSxHQUFHLElBQUksQ0FBQyxPQUFPLEdBQUcsdUJBQXVCLENBQUM7UUFFdEQsSUFBRyxvQkFBb0IsRUFBQztZQUNwQixRQUFRLElBQUksTUFBTSxDQUFDO1NBQ3RCO1FBRUQsT0FBTyxJQUFJLENBQUMsV0FBVzthQUNsQixJQUFJLENBQThCLFFBQVEsRUFBRSxRQUFRLENBQUMsQ0FBQztJQUMvRCxDQUFDOzs4R0FwQ1EsaUJBQWlCLDRDQUdkLFVBQVU7a0hBSGIsaUJBQWlCLGNBREwsTUFBTTsyRkFDbEIsaUJBQWlCO2tCQUQ3QixVQUFVO21CQUFDLEVBQUMsVUFBVSxFQUFFLE1BQU0sRUFBQzs7MEJBSXZCLE1BQU07MkJBQUMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uL2h0dHBcIjtcbmltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSBcInJ4anNcIjtcblxuZXhwb3J0IGludGVyZmFjZSBCYXNlQXBpUmVzcG9uc2Uge1xuICBpc1N1Y2NlZWRlZDogYm9vbGVhbjtcbiAgbWVzc2FnZTogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEdlbmVyaWNCYXNlQXBpUmVzcG9uc2U8VD4gZXh0ZW5kcyBCYXNlQXBpUmVzcG9uc2Uge1xuICByZXNwb25zZU9iamVjdDogVDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBCYXNlQXBpUmVzcG9uc2VXaXRoRmlsZXNJZHMgZXh0ZW5kcyBCYXNlQXBpUmVzcG9uc2V7XG4gICAgcmVzcG9uc2VPYmplY3Q6IG51bWJlcltdO1xufVxuXG5ASW5qZWN0YWJsZSh7cHJvdmlkZWRJbjogJ3Jvb3QnfSlcbmV4cG9ydCBjbGFzcyBGaWxlVXBsb2FkU2VydmljZSB7XG5cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9odHRwQ2xpZW50OiBIdHRwQ2xpZW50LFxuICAgICAgICBASW5qZWN0KCdCQVNFX1VSTCcpIHByaXZhdGUgYmFzZVVybDogc3RyaW5nKSB7XG4gICAgfVxuXG4gICAgcG9zdEZpbGUoZmlsZTogRmlsZSwgY3JlYXRlTG9jYWxDb3BpZXNOb3cgPSBmYWxzZSk6T2JzZXJ2YWJsZTxCYXNlQXBpUmVzcG9uc2VXaXRoRmlsZXNJZHM+e1xuICAgICAgICBjb25zdCBmb3JtRGF0YTogRm9ybURhdGEgPSBuZXcgRm9ybURhdGEoKTtcblxuICAgICAgICBmb3JtRGF0YS5hcHBlbmQoYGZpbGVLZXkxYCwgZmlsZSwgZmlsZS5uYW1lKTtcblxuICAgICAgICByZXR1cm4gdGhpcy5wb3N0RmlsZXNJbm5lcihmb3JtRGF0YSwgY3JlYXRlTG9jYWxDb3BpZXNOb3cpO1xuICAgIH1cblxuICAgIHBvc3RGaWxlcyhmaWxlczogRmlsZUxpc3QsIGNyZWF0ZUxvY2FsQ29waWVzTm93ID0gZmFsc2UpOiBPYnNlcnZhYmxlPEJhc2VBcGlSZXNwb25zZVdpdGhGaWxlc0lkcz4ge1xuXG4gICAgICAgIGNvbnN0IGZvcm1EYXRhOiBGb3JtRGF0YSA9IG5ldyBGb3JtRGF0YSgpO1xuXG4gICAgICAgIGZvcihsZXQgaSA9IDA7IGkgPCBmaWxlcy5sZW5ndGg7IGkrKyl7XG4gICAgICAgICAgICB2YXIgZmlsZVRvVXBsb2FkID0gZmlsZXMuaXRlbShpKTtcbiAgICAgICAgICAgIGZvcm1EYXRhLmFwcGVuZChgZmlsZUtleSR7aX1gLCBmaWxlVG9VcGxvYWQgYXMgQmxvYiwgZmlsZVRvVXBsb2FkPy5uYW1lKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0aGlzLnBvc3RGaWxlc0lubmVyKGZvcm1EYXRhLCBjcmVhdGVMb2NhbENvcGllc05vdyk7XG4gICAgfVxuXG4gICAgcG9zdEZpbGVzSW5uZXIoZm9ybURhdGE6IEZvcm1EYXRhLCBjcmVhdGVMb2NhbENvcGllc05vdyA9IGZhbHNlKTogT2JzZXJ2YWJsZTxCYXNlQXBpUmVzcG9uc2VXaXRoRmlsZXNJZHM+IHtcblxuICAgICAgICBsZXQgZW5kcG9pbnQgPSB0aGlzLmJhc2VVcmwgKyAnQXBpL0ZpbGVzL1VwbG9hZEZpbGVzJztcblxuICAgICAgICBpZihjcmVhdGVMb2NhbENvcGllc05vdyl7XG4gICAgICAgICAgICBlbmRwb2ludCArPSAnL05vdyc7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gdGhpcy5faHR0cENsaWVudFxuICAgICAgICAgICAgLnBvc3Q8QmFzZUFwaVJlc3BvbnNlV2l0aEZpbGVzSWRzPihlbmRwb2ludCwgZm9ybURhdGEpO1xuICAgIH1cbn1cbiJdfQ==
@@ -1,27 +0,0 @@
1
- import { Inject, Injectable } from "@angular/core";
2
- import * as i0 from "@angular/core";
3
- import * as i1 from "@angular/common/http";
4
- export class FilesQueryService {
5
- constructor(_httpClient, baseUrl) {
6
- this._httpClient = _httpClient;
7
- this._baseControllerUrl = baseUrl + 'Api/Files/';
8
- }
9
- getFilesWithRelations(model) {
10
- return this._httpClient.post(this._baseControllerUrl + `GetFiles/WithRelations`, model);
11
- }
12
- getFiles(model) {
13
- return this._httpClient.post(this._baseControllerUrl + `GetFiles`, model);
14
- }
15
- }
16
- FilesQueryService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.1.5", ngImport: i0, type: FilesQueryService, deps: [{ token: i1.HttpClient }, { token: 'BASE_URL' }], target: i0.ɵɵFactoryTarget.Injectable });
17
- FilesQueryService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.1.5", ngImport: i0, type: FilesQueryService, providedIn: 'root' });
18
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.5", ngImport: i0, type: FilesQueryService, decorators: [{
19
- type: Injectable,
20
- args: [{
21
- providedIn: 'root'
22
- }]
23
- }], ctorParameters: function () { return [{ type: i1.HttpClient }, { type: undefined, decorators: [{
24
- type: Inject,
25
- args: ['BASE_URL']
26
- }] }]; } });
27
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZXMtcXVlcnkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nyb2NvLWh0bWwvc3JjL2xpYi9zZXJ2aWNlcy9maWxlcy1xdWVyeS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFrRG5ELE1BQU0sT0FBTyxpQkFBaUI7SUFJMUIsWUFBb0IsV0FBdUIsRUFDbkIsT0FBZTtRQURuQixnQkFBVyxHQUFYLFdBQVcsQ0FBWTtRQUV2QyxJQUFJLENBQUMsa0JBQWtCLEdBQUcsT0FBTyxHQUFHLFlBQVksQ0FBQztJQUNyRCxDQUFDO0lBRU0scUJBQXFCLENBQUMsS0FBa0I7UUFDM0MsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FDeEIsSUFBSSxDQUFDLGtCQUFrQixHQUFHLHdCQUF3QixFQUFFLEtBQUssQ0FDNUQsQ0FBQztJQUNOLENBQUM7SUFFTSxRQUFRLENBQUMsS0FBa0I7UUFDOUIsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FDeEIsSUFBSSxDQUFDLGtCQUFrQixHQUFHLFVBQVUsRUFBRSxLQUFLLENBQzlDLENBQUM7SUFDTixDQUFDOzs4R0FuQlEsaUJBQWlCLDRDQUtkLFVBQVU7a0hBTGIsaUJBQWlCLGNBRmQsTUFBTTsyRkFFVCxpQkFBaUI7a0JBSDdCLFVBQVU7bUJBQUM7b0JBQ1IsVUFBVSxFQUFFLE1BQU07aUJBQ3JCOzswQkFNUSxNQUFNOzJCQUFDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vbi9odHRwXCI7XG5pbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gXCJyeGpzXCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgR2V0TGlzdFJlc3VsdDxUPntcblxuICAvKlxuICDQodC60L7Qu9GM0LrQviDQstGB0LXQs9C+INC30LDQv9C40YHQtdC5XG4gICAqL1xuICB0b3RhbENvdW50Om51bWJlcjtcblxuICAvKlxuICDQotC10LrRg9GJ0LjQuSDRgdC/0LjRgdC+0LpcbiAgICovXG4gIGxpc3Q6QXJyYXk8VD47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGJGaWxlTm9EYXRhV2l0aFJlbGF0aW9ucyB7XG4gICAgaWQ6IG51bWJlcjtcbiAgICBmaWxlTmFtZTogc3RyaW5nO1xuICAgIHJlbGF0aW9uczogQXJyYXk8RmlsZVJlbGF0aW9uTW9kZWw+O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZpbGVSZWxhdGlvbk1vZGVsIHtcbiAgICBlbnRpdHlUeXBlRnVsbE5hbWU6IHN0cmluZztcbiAgICBlbnRpdHlLZXk6IHN0cmluZztcbiAgICByZWxhdGlvbk5hbWU6IHN0cmluZztcbiAgICByZWxhdGlvblZhbHVlOiBzdHJpbmc7XG4gICAgcmVsYXRpb25DdXN0b21EYXRhOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2VhcmNoRmlsZXMge1xuICAgIGZpbGVOYW1lOiBzdHJpbmc7XG4gICAgcTogc3RyaW5nO1xuICAgIGNvdW50OiBudW1iZXIgfCBudWxsO1xuICAgIG9mZlNldDogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEdldExpc3RTZWFyY2hNb2RlbCB7XG4gICAgY291bnQ6IG51bWJlciB8IG51bGw7XG4gICAgb2ZmU2V0OiBudW1iZXI7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRmlsZU5hbWVBbmRJZE1vZGVsIHtcbiAgICBmaWxlSWQ6IG51bWJlcjtcbiAgICBmaWxlTmFtZTogc3RyaW5nO1xufVxuXG5ASW5qZWN0YWJsZSh7XG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIEZpbGVzUXVlcnlTZXJ2aWNle1xuXG4gICAgX2Jhc2VDb250cm9sbGVyVXJsOiBzdHJpbmc7XG5cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9odHRwQ2xpZW50OiBIdHRwQ2xpZW50LFxuICAgICAgICBASW5qZWN0KCdCQVNFX1VSTCcpIGJhc2VVcmw6IHN0cmluZykge1xuICAgICAgICB0aGlzLl9iYXNlQ29udHJvbGxlclVybCA9IGJhc2VVcmwgKyAnQXBpL0ZpbGVzLyc7XG4gICAgfVxuXG4gICAgcHVibGljIGdldEZpbGVzV2l0aFJlbGF0aW9ucyhtb2RlbDogU2VhcmNoRmlsZXMpOk9ic2VydmFibGU8R2V0TGlzdFJlc3VsdDxEYkZpbGVOb0RhdGFXaXRoUmVsYXRpb25zPj57XG4gICAgICAgIHJldHVybiB0aGlzLl9odHRwQ2xpZW50LnBvc3Q8R2V0TGlzdFJlc3VsdDxEYkZpbGVOb0RhdGFXaXRoUmVsYXRpb25zPj4oXG4gICAgICAgICAgICB0aGlzLl9iYXNlQ29udHJvbGxlclVybCArIGBHZXRGaWxlcy9XaXRoUmVsYXRpb25zYCwgbW9kZWxcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0RmlsZXMobW9kZWw6IFNlYXJjaEZpbGVzKTpPYnNlcnZhYmxlPEdldExpc3RSZXN1bHQ8RmlsZU5hbWVBbmRJZE1vZGVsPj57XG4gICAgICAgIHJldHVybiB0aGlzLl9odHRwQ2xpZW50LnBvc3Q8R2V0TGlzdFJlc3VsdDxGaWxlTmFtZUFuZElkTW9kZWw+PihcbiAgICAgICAgICAgIHRoaXMuX2Jhc2VDb250cm9sbGVyVXJsICsgYEdldEZpbGVzYCwgbW9kZWxcbiAgICAgICAgKTtcbiAgICB9XG59XG4iXX0=