@snabcentr/client-ui 0.0.23 → 0.0.24

Sign up to get free protection for your applications and to get access to all the features.
Files changed (31) hide show
  1. package/esm2020/files/directives/index.mjs +3 -0
  2. package/esm2020/files/directives/tree-top.directive.mjs +63 -0
  3. package/esm2020/files/directives/tree.directive.mjs +47 -0
  4. package/esm2020/files/file-tree-item/file-tree-item.component.mjs +18 -0
  5. package/esm2020/files/files-and-documents.component.mjs +60 -0
  6. package/esm2020/files/files-and-documents.module.mjs +26 -0
  7. package/esm2020/files/index.mjs +6 -0
  8. package/esm2020/files/interfaces/tree-node.mjs +2 -0
  9. package/esm2020/files/services/index.mjs +3 -0
  10. package/esm2020/files/services/tree-icon.service.mjs +48 -0
  11. package/esm2020/files/services/tree-loader.service.mjs +60 -0
  12. package/esm2020/public-api.mjs +2 -1
  13. package/fesm2015/snabcentr-client-ui.mjs +287 -5
  14. package/fesm2015/snabcentr-client-ui.mjs.map +1 -1
  15. package/fesm2020/snabcentr-client-ui.mjs +285 -5
  16. package/fesm2020/snabcentr-client-ui.mjs.map +1 -1
  17. package/files/directives/index.d.ts +2 -0
  18. package/files/directives/tree-top.directive.d.ts +33 -0
  19. package/files/directives/tree.directive.d.ts +35 -0
  20. package/files/file-tree-item/file-tree-item.component.d.ts +9 -0
  21. package/files/files-and-documents.component.d.ts +27 -0
  22. package/files/files-and-documents.module.d.ts +16 -0
  23. package/files/index.d.ts +5 -0
  24. package/files/interfaces/tree-node.d.ts +29 -0
  25. package/files/services/index.d.ts +2 -0
  26. package/files/services/tree-icon.service.d.ts +23 -0
  27. package/files/services/tree-loader.service.d.ts +43 -0
  28. package/package.json +1 -1
  29. package/public-api.d.ts +1 -0
  30. package/release_notes.tmp +6 -1
  31. package/styles/tailwind/tailwind.scss +13 -4
@@ -0,0 +1,3 @@
1
+ export * from './tree-top.directive';
2
+ export * from './tree.directive';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbGllbnQtdWkvZmlsZXMvZGlyZWN0aXZlcy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGNBQWMsa0JBQWtCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3RyZWUtdG9wLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL3RyZWUuZGlyZWN0aXZlJztcbiJdfQ==
@@ -0,0 +1,63 @@
1
+ /* eslint-disable @angular-eslint/no-input-rename */
2
+ import { Directive, Input, forwardRef } from '@angular/core';
3
+ import { TUI_TREE_CONTENT, TUI_TREE_START } from '@taiga-ui/kit';
4
+ import { PolymorpheusComponent } from '@tinkoff/ng-polymorpheus';
5
+ import { FileTreeItemComponent } from '../file-tree-item/file-tree-item.component';
6
+ import * as i0 from "@angular/core";
7
+ /**
8
+ * Директива отвечающая за корневые элементы дерева.
9
+ */
10
+ export class TreeTopDirective {
11
+ constructor() {
12
+ /**
13
+ * Отображаемое имя корневого элемента дерева.
14
+ */
15
+ this.text = '';
16
+ }
17
+ }
18
+ TreeTopDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: TreeTopDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
19
+ TreeTopDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.3.0", type: TreeTopDirective, selector: "[scTopNodeText]", inputs: { text: ["scTopNodeText", "text"], icon: ["scTopNodeIcon", "icon"], link: ["scTopNodeLink", "link"], hasChildren: ["scTopNodeChilds", "hasChildren"], id: ["scTopNodeParent", "id"], createdAt: ["scTopNodeDate", "createdAt"] }, providers: [
20
+ {
21
+ provide: TUI_TREE_START,
22
+ useExisting: forwardRef(() => TreeTopDirective),
23
+ },
24
+ {
25
+ provide: TUI_TREE_CONTENT,
26
+ useValue: new PolymorpheusComponent(FileTreeItemComponent),
27
+ },
28
+ ], ngImport: i0 });
29
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: TreeTopDirective, decorators: [{
30
+ type: Directive,
31
+ args: [{
32
+ selector: '[scTopNodeText]',
33
+ providers: [
34
+ {
35
+ provide: TUI_TREE_START,
36
+ useExisting: forwardRef(() => TreeTopDirective),
37
+ },
38
+ {
39
+ provide: TUI_TREE_CONTENT,
40
+ useValue: new PolymorpheusComponent(FileTreeItemComponent),
41
+ },
42
+ ],
43
+ }]
44
+ }], propDecorators: { text: [{
45
+ type: Input,
46
+ args: ['scTopNodeText']
47
+ }], icon: [{
48
+ type: Input,
49
+ args: ['scTopNodeIcon']
50
+ }], link: [{
51
+ type: Input,
52
+ args: ['scTopNodeLink']
53
+ }], hasChildren: [{
54
+ type: Input,
55
+ args: ['scTopNodeChilds']
56
+ }], id: [{
57
+ type: Input,
58
+ args: ['scTopNodeParent']
59
+ }], createdAt: [{
60
+ type: Input,
61
+ args: ['scTopNodeDate']
62
+ }] } });
63
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJlZS10b3AuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2xpZW50LXVpL2ZpbGVzL2RpcmVjdGl2ZXMvdHJlZS10b3AuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLG9EQUFvRDtBQUNwRCxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDN0QsT0FBTyxFQUFFLGdCQUFnQixFQUFFLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNqRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQzs7QUFHbkY7O0dBRUc7QUFjSCxNQUFNLE9BQU8sZ0JBQWdCO0lBYjdCO1FBY0k7O1dBRUc7UUFFSSxTQUFJLEdBQUcsRUFBRSxDQUFDO0tBK0JwQjs7NkdBcENZLGdCQUFnQjtpR0FBaEIsZ0JBQWdCLG9SQVhkO1FBQ1A7WUFDSSxPQUFPLEVBQUUsY0FBYztZQUN2QixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLGdCQUFnQixDQUFDO1NBQ2xEO1FBQ0Q7WUFDSSxPQUFPLEVBQUUsZ0JBQWdCO1lBQ3pCLFFBQVEsRUFBRSxJQUFJLHFCQUFxQixDQUFDLHFCQUFxQixDQUFDO1NBQzdEO0tBQ0o7MkZBRVEsZ0JBQWdCO2tCQWI1QixTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxpQkFBaUI7b0JBQzNCLFNBQVMsRUFBRTt3QkFDUDs0QkFDSSxPQUFPLEVBQUUsY0FBYzs0QkFDdkIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsaUJBQWlCLENBQUM7eUJBQ2xEO3dCQUNEOzRCQUNJLE9BQU8sRUFBRSxnQkFBZ0I7NEJBQ3pCLFFBQVEsRUFBRSxJQUFJLHFCQUFxQixDQUFDLHFCQUFxQixDQUFDO3lCQUM3RDtxQkFDSjtpQkFDSjs4QkFNVSxJQUFJO3NCQURWLEtBQUs7dUJBQUMsZUFBZTtnQkFPZixJQUFJO3NCQURWLEtBQUs7dUJBQUMsZUFBZTtnQkFPZixJQUFJO3NCQURWLEtBQUs7dUJBQUMsZUFBZTtnQkFPZixXQUFXO3NCQURqQixLQUFLO3VCQUFDLGlCQUFpQjtnQkFPakIsRUFBRTtzQkFEUixLQUFLO3VCQUFDLGlCQUFpQjtnQkFPakIsU0FBUztzQkFEZixLQUFLO3VCQUFDLGVBQWUiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXQtcmVuYW1lICovXG5pbXBvcnQgeyBEaXJlY3RpdmUsIElucHV0LCBmb3J3YXJkUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUVUlfVFJFRV9DT05URU5ULCBUVUlfVFJFRV9TVEFSVCB9IGZyb20gJ0B0YWlnYS11aS9raXQnO1xuaW1wb3J0IHsgUG9seW1vcnBoZXVzQ29tcG9uZW50IH0gZnJvbSAnQHRpbmtvZmYvbmctcG9seW1vcnBoZXVzJztcbmltcG9ydCB7IEZpbGVUcmVlSXRlbUNvbXBvbmVudCB9IGZyb20gJy4uL2ZpbGUtdHJlZS1pdGVtL2ZpbGUtdHJlZS1pdGVtLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUcmVlTm9kZSB9IGZyb20gJy4uL2ludGVyZmFjZXMvdHJlZS1ub2RlJztcblxuLyoqXG4gKiDQlNC40YDQtdC60YLQuNCy0LAg0L7RgtCy0LXRh9Cw0Y7RidCw0Y8g0LfQsCDQutC+0YDQvdC10LLRi9C1INGN0LvQtdC80LXQvdGC0Ysg0LTQtdGA0LXQstCwLlxuICovXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ1tzY1RvcE5vZGVUZXh0XScsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IFRVSV9UUkVFX1NUQVJULFxuICAgICAgICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gVHJlZVRvcERpcmVjdGl2ZSksXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IFRVSV9UUkVFX0NPTlRFTlQsXG4gICAgICAgICAgICB1c2VWYWx1ZTogbmV3IFBvbHltb3JwaGV1c0NvbXBvbmVudChGaWxlVHJlZUl0ZW1Db21wb25lbnQpLFxuICAgICAgICB9LFxuICAgIF0sXG59KVxuZXhwb3J0IGNsYXNzIFRyZWVUb3BEaXJlY3RpdmUgaW1wbGVtZW50cyBUcmVlTm9kZSB7XG4gICAgLyoqXG4gICAgICog0J7RgtC+0LHRgNCw0LbQsNC10LzQvtC1INC40LzRjyDQutC+0YDQvdC10LLQvtCz0L4g0Y3Qu9C10LzQtdC90YLQsCDQtNC10YDQtdCy0LAuXG4gICAgICovXG4gICAgQElucHV0KCdzY1RvcE5vZGVUZXh0JylcbiAgICBwdWJsaWMgdGV4dCA9ICcnO1xuXG4gICAgLyoqXG4gICAgICog0JfQvdCw0YfQvtC6INC60L7RgNC90LXQstC+0LPQviDRjdC70LXQvNC10L3RgtCwINC00LXRgNC10LLQsC5cbiAgICAgKi9cbiAgICBASW5wdXQoJ3NjVG9wTm9kZUljb24nKVxuICAgIHB1YmxpYyBpY29uOiBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiDQodGB0YvQu9C60LAg0LrQvtGA0L3QtdCy0L7Qs9C+INGN0LvQtdC80LXQvdGC0LAg0LTQtdGA0LXQstCwLlxuICAgICAqL1xuICAgIEBJbnB1dCgnc2NUb3BOb2RlTGluaycpXG4gICAgcHVibGljIGxpbms/OiBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiDQn9GA0LjQt9C90LDQuiDQvdCw0LvQuNGH0LjRjyDQtNC+0YfQtdGA0L3QuNGFINGN0LvQtdC80LXQvdGC0L7Qsi5cbiAgICAgKi9cbiAgICBASW5wdXQoJ3NjVG9wTm9kZUNoaWxkcycpXG4gICAgcHVibGljIGhhc0NoaWxkcmVuOiBib29sZWFuO1xuXG4gICAgLyoqXG4gICAgICog0JjQtNC10L3RgtC40YTQuNC60LDRgtC+0YAg0LrQvtGA0L3QtdCy0L7Qs9C+INGN0LvQtdC80LXQvdGC0LAg0LTQtdGA0LXQstCwLlxuICAgICAqL1xuICAgIEBJbnB1dCgnc2NUb3BOb2RlUGFyZW50JylcbiAgICBwdWJsaWMgaWQ/OiBudW1iZXI7XG5cbiAgICAvKipcbiAgICAgKiDQlNCw0YLQsCDRgdC+0LfQtNCw0L3QuNGPINC60L7RgNC90LXQstC+0LPQviDRjdC70LXQvNC10L3RgtCwINC00LXRgNC10LLQsC5cbiAgICAgKi9cbiAgICBASW5wdXQoJ3NjVG9wTm9kZURhdGUnKVxuICAgIHB1YmxpYyBjcmVhdGVkQXQ/OiBzdHJpbmc7XG59XG4iXX0=
@@ -0,0 +1,47 @@
1
+ import { Directive } from '@angular/core';
2
+ import { TuiTreeService } from '@taiga-ui/kit';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@taiga-ui/kit";
5
+ /**
6
+ * Директива отвечающая за обработку действий над элементами дерева.
7
+ */
8
+ export class TreeDirective {
9
+ /**
10
+ * Инициализирует экземпляр класса {@link TreeDirective}.
11
+ *
12
+ * @param service Сервис для работы с деревом.
13
+ */
14
+ constructor(service) {
15
+ this.service = service;
16
+ /**
17
+ * Карта данных дерева.
18
+ */
19
+ this.map = new Map();
20
+ /**
21
+ * Проверяет указанный элемент дерева на наличие дочерних элементов и возвращает массив дочерних элементов, если они есть, либо пустой массив.
22
+ *
23
+ * @param node Элемент дерева.
24
+ * @returns Возвращает массив типа TreeNode[].
25
+ */
26
+ this.childrenHandler = (node) => (node.hasChildren ? this.service.getChildren(node) : []);
27
+ }
28
+ /**
29
+ * Обрабатывает нажатие на указанный элемент дерева.
30
+ *
31
+ * @param node Элемент дерева.
32
+ */
33
+ onToggled(node) {
34
+ this.service.loadChildren(node);
35
+ }
36
+ }
37
+ TreeDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: TreeDirective, deps: [{ token: i1.TuiTreeService }], target: i0.ɵɵFactoryTarget.Directive });
38
+ TreeDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.3.0", type: TreeDirective, selector: "[scTree]", providers: [TuiTreeService], exportAs: ["scTree"], ngImport: i0 });
39
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: TreeDirective, decorators: [{
40
+ type: Directive,
41
+ args: [{
42
+ selector: '[scTree]',
43
+ exportAs: 'scTree',
44
+ providers: [TuiTreeService],
45
+ }]
46
+ }], ctorParameters: function () { return [{ type: i1.TuiTreeService }]; } });
47
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJlZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbGllbnQtdWkvZmlsZXMvZGlyZWN0aXZlcy90cmVlLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTFDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7OztBQUcvQzs7R0FFRztBQU1ILE1BQU0sT0FBTyxhQUFhO0lBTXRCOzs7O09BSUc7SUFDSCxZQUFtQyxPQUFpQztRQUFqQyxZQUFPLEdBQVAsT0FBTyxDQUEwQjtRQVZwRTs7V0FFRztRQUNJLFFBQUcsR0FBRyxJQUFJLEdBQUcsRUFBcUIsQ0FBQztRQVMxQzs7Ozs7V0FLRztRQUNJLG9CQUFlLEdBQThDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQVJoRSxDQUFDO0lBVXhFOzs7O09BSUc7SUFDSSxTQUFTLENBQUMsSUFBYztRQUMzQixJQUFJLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNwQyxDQUFDOzswR0E1QlEsYUFBYTs4RkFBYixhQUFhLG1DQUZYLENBQUMsY0FBYyxDQUFDOzJGQUVsQixhQUFhO2tCQUx6QixTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxVQUFVO29CQUNwQixRQUFRLEVBQUUsUUFBUTtvQkFDbEIsU0FBUyxFQUFFLENBQUMsY0FBYyxDQUFDO2lCQUM5QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVHVpSGFuZGxlciB9IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHsgVHVpVHJlZVNlcnZpY2UgfSBmcm9tICdAdGFpZ2EtdWkva2l0JztcbmltcG9ydCB7IFRyZWVOb2RlIH0gZnJvbSAnLi4vaW50ZXJmYWNlcy90cmVlLW5vZGUnO1xuXG4vKipcbiAqINCU0LjRgNC10LrRgtC40LLQsCDQvtGC0LLQtdGH0LDRjtGJ0LDRjyDQt9CwINC+0LHRgNCw0LHQvtGC0LrRgyDQtNC10LnRgdGC0LLQuNC5INC90LDQtCDRjdC70LXQvNC10L3RgtCw0LzQuCDQtNC10YDQtdCy0LAuXG4gKi9cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW3NjVHJlZV0nLFxuICAgIGV4cG9ydEFzOiAnc2NUcmVlJyxcbiAgICBwcm92aWRlcnM6IFtUdWlUcmVlU2VydmljZV0sXG59KVxuZXhwb3J0IGNsYXNzIFRyZWVEaXJlY3RpdmUge1xuICAgIC8qKlxuICAgICAqINCa0LDRgNGC0LAg0LTQsNC90L3Ri9GFINC00LXRgNC10LLQsC5cbiAgICAgKi9cbiAgICBwdWJsaWMgbWFwID0gbmV3IE1hcDxUcmVlTm9kZSwgYm9vbGVhbj4oKTtcblxuICAgIC8qKlxuICAgICAqINCY0L3QuNGG0LjQsNC70LjQt9C40YDRg9C10YIg0Y3QutC30LXQvNC/0LvRj9GAINC60LvQsNGB0YHQsCB7QGxpbmsgVHJlZURpcmVjdGl2ZX0uXG4gICAgICpcbiAgICAgKiBAcGFyYW0gc2VydmljZSDQodC10YDQstC40YEg0LTQu9GPINGA0LDQsdC+0YLRiyDRgSDQtNC10YDQtdCy0L7QvC5cbiAgICAgKi9cbiAgICBwdWJsaWMgY29uc3RydWN0b3IocHVibGljIHJlYWRvbmx5IHNlcnZpY2U6IFR1aVRyZWVTZXJ2aWNlPFRyZWVOb2RlPikge31cblxuICAgIC8qKlxuICAgICAqINCf0YDQvtCy0LXRgNGP0LXRgiDRg9C60LDQt9Cw0L3QvdGL0Lkg0Y3Qu9C10LzQtdC90YIg0LTQtdGA0LXQstCwINC90LAg0L3QsNC70LjRh9C40LUg0LTQvtGH0LXRgNC90LjRhSDRjdC70LXQvNC10L3RgtC+0LIg0Lgg0LLQvtC30LLRgNCw0YnQsNC10YIg0LzQsNGB0YHQuNCyINC00L7Rh9C10YDQvdC40YUg0Y3Qu9C10LzQtdC90YLQvtCyLCDQtdGB0LvQuCDQvtC90Lgg0LXRgdGC0YwsINC70LjQsdC+INC/0YPRgdGC0L7QuSDQvNCw0YHRgdC40LIuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gbm9kZSDQrdC70LXQvNC10L3RgiDQtNC10YDQtdCy0LAuXG4gICAgICogQHJldHVybnMg0JLQvtC30LLRgNCw0YnQsNC10YIg0LzQsNGB0YHQuNCyINGC0LjQv9CwIFRyZWVOb2RlW10uXG4gICAgICovXG4gICAgcHVibGljIGNoaWxkcmVuSGFuZGxlcjogVHVpSGFuZGxlcjxUcmVlTm9kZSwgcmVhZG9ubHkgVHJlZU5vZGVbXT4gPSAobm9kZSkgPT4gKG5vZGUuaGFzQ2hpbGRyZW4gPyB0aGlzLnNlcnZpY2UuZ2V0Q2hpbGRyZW4obm9kZSkgOiBbXSk7XG5cbiAgICAvKipcbiAgICAgKiDQntCx0YDQsNCx0LDRgtGL0LLQsNC10YIg0L3QsNC20LDRgtC40LUg0L3QsCDRg9C60LDQt9Cw0L3QvdGL0Lkg0Y3Qu9C10LzQtdC90YIg0LTQtdGA0LXQstCwLlxuICAgICAqXG4gICAgICogQHBhcmFtIG5vZGUg0K3Qu9C10LzQtdC90YIg0LTQtdGA0LXQstCwLlxuICAgICAqL1xuICAgIHB1YmxpYyBvblRvZ2dsZWQobm9kZTogVHJlZU5vZGUpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zZXJ2aWNlLmxvYWRDaGlsZHJlbihub2RlKTtcbiAgICB9XG59XG4iXX0=
@@ -0,0 +1,18 @@
1
+ import { ChangeDetectionStrategy, Component } from '@angular/core';
2
+ import { TuiTreeItemContentComponent } from '@taiga-ui/kit';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@angular/common";
5
+ /**
6
+ * Компонент для удаления стандартного значка элемента дерева.
7
+ */
8
+ export class FileTreeItemComponent extends TuiTreeItemContentComponent {
9
+ }
10
+ FileTreeItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FileTreeItemComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
11
+ FileTreeItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: FileTreeItemComponent, selector: "sc-file-tree-item", host: { listeners: { "click": "onClick()" } }, usesInheritance: true, ngImport: i0, template: "<ng-container [ngTemplateOutlet]=\"context.template\"></ng-container>\n", styles: [":host{position:relative;height:var(--tui-height-s);display:flex;align-items:center;padding:0 .5rem;border-radius:var(--tui-radius-xs);background:var(--tui-base-01)}:host:before,:host:after{content:\"\";position:absolute;left:-.75rem;z-index:-1}:host:before{width:1rem;border-bottom:1px solid var(--tui-base-04)}:host:after{top:-1rem;bottom:1rem;border-left:1px solid var(--tui-base-04)}:host._expandable:hover{cursor:pointer;background:var(--tui-base-02)}tui-svg{position:relative;background:inherit;z-index:1}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
12
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FileTreeItemComponent, decorators: [{
13
+ type: Component,
14
+ args: [{ selector: 'sc-file-tree-item', changeDetection: ChangeDetectionStrategy.OnPush, host: {
15
+ '(click)': `onClick()`,
16
+ }, template: "<ng-container [ngTemplateOutlet]=\"context.template\"></ng-container>\n", styles: [":host{position:relative;height:var(--tui-height-s);display:flex;align-items:center;padding:0 .5rem;border-radius:var(--tui-radius-xs);background:var(--tui-base-01)}:host:before,:host:after{content:\"\";position:absolute;left:-.75rem;z-index:-1}:host:before{width:1rem;border-bottom:1px solid var(--tui-base-04)}:host:after{top:-1rem;bottom:1rem;border-left:1px solid var(--tui-base-04)}:host._expandable:hover{cursor:pointer;background:var(--tui-base-02)}tui-svg{position:relative;background:inherit;z-index:1}\n"] }]
17
+ }] });
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS10cmVlLWl0ZW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2xpZW50LXVpL2ZpbGVzL2ZpbGUtdHJlZS1pdGVtL2ZpbGUtdHJlZS1pdGVtLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NsaWVudC11aS9maWxlcy9maWxlLXRyZWUtaXRlbS9maWxlLXRyZWUtaXRlbS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25FLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBRTVEOztHQUVHO0FBV0gsTUFBTSxPQUFPLHFCQUFzQixTQUFRLDJCQUEyQjs7a0hBQXpELHFCQUFxQjtzR0FBckIscUJBQXFCLCtIQ2hCbEMseUVBQ0E7MkZEZWEscUJBQXFCO2tCQVZqQyxTQUFTOytCQUNJLG1CQUFtQixtQkFHWix1QkFBdUIsQ0FBQyxNQUFNLFFBRXpDO3dCQUNGLFNBQVMsRUFBRSxXQUFXO3FCQUN6QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFR1aVRyZWVJdGVtQ29udGVudENvbXBvbmVudCB9IGZyb20gJ0B0YWlnYS11aS9raXQnO1xuXG4vKipcbiAqINCa0L7QvNC/0L7QvdC10L3RgiDQtNC70Y8g0YPQtNCw0LvQtdC90LjRjyDRgdGC0LDQvdC00LDRgNGC0L3QvtCz0L4g0LfQvdCw0YfQutCwINGN0LvQtdC80LXQvdGC0LAg0LTQtdGA0LXQstCwLlxuICovXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3NjLWZpbGUtdHJlZS1pdGVtJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vZmlsZS10cmVlLWl0ZW0uY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2ZpbGUtdHJlZS1pdGVtLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1ob3N0LW1ldGFkYXRhLXByb3BlcnR5XG4gICAgaG9zdDoge1xuICAgICAgICAnKGNsaWNrKSc6IGBvbkNsaWNrKClgLFxuICAgIH0sXG59KVxuZXhwb3J0IGNsYXNzIEZpbGVUcmVlSXRlbUNvbXBvbmVudCBleHRlbmRzIFR1aVRyZWVJdGVtQ29udGVudENvbXBvbmVudCB7fVxuIiwiPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJjb250ZXh0LnRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XG4iXX0=
@@ -0,0 +1,60 @@
1
+ import { ChangeDetectionStrategy, Component, Inject } from '@angular/core';
2
+ import { TUI_TREE_LOADING, TUI_TREE_LOADER } from '@taiga-ui/kit';
3
+ import { map } from 'rxjs';
4
+ import { TreeLoaderService } from './services/tree-loader.service';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "./services/tree-icon.service";
7
+ import * as i2 from "@snabcentr/client-core";
8
+ import * as i3 from "@angular/common";
9
+ import * as i4 from "@taiga-ui/kit";
10
+ import * as i5 from "@taiga-ui/core";
11
+ import * as i6 from "./directives/tree.directive";
12
+ import * as i7 from "./directives/tree-top.directive";
13
+ /**
14
+ * Компонент файлов и документов.
15
+ */
16
+ export class FilesAndDocumentsComponent {
17
+ /**
18
+ * Инициализирует экземпляр класса {@link FilesAndDocumentsComponent}.
19
+ *
20
+ * @param loading Объект отвечающий за значок загрузки, в момент раскрытия элемента дерева.
21
+ * @param iconService Сервис для определения и назначения значка элементу дерева.
22
+ * @param filesService Сервис для загрузки файлов.
23
+ */
24
+ constructor(loading, iconService, filesService) {
25
+ this.loading = loading;
26
+ this.iconService = iconService;
27
+ this.filesService = filesService;
28
+ /**
29
+ * Данные визуализации и их начальное получение.
30
+ */
31
+ this.data$ = this.filesService.getFiles().pipe(map((data) => data.map((item) => ({
32
+ text: item.name,
33
+ icon: this.iconService.getIconName(item),
34
+ hasChildren: this.iconService.hasChildren(item),
35
+ createdAt: item.createdAt,
36
+ id: item.id,
37
+ link: item.link,
38
+ }))));
39
+ }
40
+ }
41
+ FilesAndDocumentsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FilesAndDocumentsComponent, deps: [{ token: TUI_TREE_LOADING }, { token: i1.TreeIconService }, { token: i2.ScFilesService }], target: i0.ɵɵFactoryTarget.Component });
42
+ FilesAndDocumentsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: FilesAndDocumentsComponent, selector: "sc-files-and-documents", providers: [
43
+ {
44
+ provide: TUI_TREE_LOADER,
45
+ useClass: TreeLoaderService,
46
+ },
47
+ ], ngImport: i0, template: "<ng-container *ngIf=\"data$ | async as data; else skeleton\">\n <tui-tree\n *ngFor=\"let node of data\"\n #tree=\"scTree\"\n scTree\n [scTopNodeText]=\"node.text\"\n [scTopNodeIcon]=\"node.icon\"\n [scTopNodeLink]=\"node.link\"\n [scTopNodeChilds]=\"node.hasChildren\"\n [scTopNodeParent]=\"node.id\"\n [scTopNodeDate]=\"node.createdAt\"\n [childrenHandler]=\"tree.childrenHandler\"\n [content]=\"content\"\n [map]=\"tree.map\"\n [tuiTreeController]=\"false\"\n [value]=\"tree.service.data$ | async\"\n (toggled)=\"tree.onToggled($event)\"\n class=\"overflow-hidden\"\n ></tui-tree>\n</ng-container>\n\n<ng-template #content let-item>\n <tui-loader *ngIf=\"item === loading; else text\" class=\"w-8 my-4\"></tui-loader>\n <ng-template #text>\n <tui-svg [src]=\"item.icon\" class=\"tui-space_right-2\"></tui-svg>\n <a tuiLink [pseudo]=\"true\" *ngIf=\"item.link\" href=\"{{ item.link }}\" class=\"grow\">{{ item.text }}</a>\n <p *ngIf=\"!item.link\" class=\"grow\">{{ item.text }}</p>\n <p>{{ item.createdAt }}</p>\n </ng-template>\n</ng-template>\n\n<ng-template #skeleton>\n <div class=\"flex flex-col gap-2\">\n <div *ngFor=\"let _ of [].constructor(7)\" class=\"flex items-center gap-2\">\n <div class=\"tui-skeleton h-6 w-6\"></div>\n <div class=\"tui-skeleton h-4 w-40\"></div>\n </div>\n </div>\n</ng-template>\n", dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.TuiTreeComponent, selector: "tui-tree[value]", inputs: ["value", "trackBy", "content"] }, { kind: "directive", type: i4.TuiTreeChildrenDirective, selector: "tui-tree[childrenHandler]", inputs: ["childrenHandler"] }, { kind: "directive", type: i4.TuiTreeControllerDirective, selector: "[tuiTreeController][map]", inputs: ["tuiTreeController", "map"], outputs: ["toggled"], exportAs: ["tuiTreeController"] }, { kind: "component", type: i5.TuiSvgComponent, selector: "tui-svg", inputs: ["src"] }, { kind: "component", type: i5.TuiLoaderComponent, selector: "tui-loader", inputs: ["size", "inheritColor", "overlay", "textContent", "showLoader"] }, { kind: "component", type: i5.TuiLinkComponent, selector: "a[tuiLink], button[tuiLink]", inputs: ["pseudo", "icon", "iconAlign", "iconRotated", "mode"], exportAs: ["tuiLink"] }, { kind: "directive", type: i6.TreeDirective, selector: "[scTree]", exportAs: ["scTree"] }, { kind: "directive", type: i7.TreeTopDirective, selector: "[scTopNodeText]", inputs: ["scTopNodeText", "scTopNodeIcon", "scTopNodeLink", "scTopNodeChilds", "scTopNodeParent", "scTopNodeDate"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
48
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FilesAndDocumentsComponent, decorators: [{
49
+ type: Component,
50
+ args: [{ selector: 'sc-files-and-documents', changeDetection: ChangeDetectionStrategy.OnPush, providers: [
51
+ {
52
+ provide: TUI_TREE_LOADER,
53
+ useClass: TreeLoaderService,
54
+ },
55
+ ], template: "<ng-container *ngIf=\"data$ | async as data; else skeleton\">\n <tui-tree\n *ngFor=\"let node of data\"\n #tree=\"scTree\"\n scTree\n [scTopNodeText]=\"node.text\"\n [scTopNodeIcon]=\"node.icon\"\n [scTopNodeLink]=\"node.link\"\n [scTopNodeChilds]=\"node.hasChildren\"\n [scTopNodeParent]=\"node.id\"\n [scTopNodeDate]=\"node.createdAt\"\n [childrenHandler]=\"tree.childrenHandler\"\n [content]=\"content\"\n [map]=\"tree.map\"\n [tuiTreeController]=\"false\"\n [value]=\"tree.service.data$ | async\"\n (toggled)=\"tree.onToggled($event)\"\n class=\"overflow-hidden\"\n ></tui-tree>\n</ng-container>\n\n<ng-template #content let-item>\n <tui-loader *ngIf=\"item === loading; else text\" class=\"w-8 my-4\"></tui-loader>\n <ng-template #text>\n <tui-svg [src]=\"item.icon\" class=\"tui-space_right-2\"></tui-svg>\n <a tuiLink [pseudo]=\"true\" *ngIf=\"item.link\" href=\"{{ item.link }}\" class=\"grow\">{{ item.text }}</a>\n <p *ngIf=\"!item.link\" class=\"grow\">{{ item.text }}</p>\n <p>{{ item.createdAt }}</p>\n </ng-template>\n</ng-template>\n\n<ng-template #skeleton>\n <div class=\"flex flex-col gap-2\">\n <div *ngFor=\"let _ of [].constructor(7)\" class=\"flex items-center gap-2\">\n <div class=\"tui-skeleton h-6 w-6\"></div>\n <div class=\"tui-skeleton h-4 w-40\"></div>\n </div>\n </div>\n</ng-template>\n" }]
56
+ }], ctorParameters: function () { return [{ type: undefined, decorators: [{
57
+ type: Inject,
58
+ args: [TUI_TREE_LOADING]
59
+ }] }, { type: i1.TreeIconService }, { type: i2.ScFilesService }]; } });
60
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZXMtYW5kLWRvY3VtZW50cy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jbGllbnQtdWkvZmlsZXMvZmlsZXMtYW5kLWRvY3VtZW50cy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jbGllbnQtdWkvZmlsZXMvZmlsZXMtYW5kLWRvY3VtZW50cy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsZUFBZSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRWxFLE9BQU8sRUFBYyxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFdkMsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7Ozs7Ozs7OztBQUduRTs7R0FFRztBQVlILE1BQU0sT0FBTywwQkFBMEI7SUFpQm5DOzs7Ozs7T0FNRztJQUNILFlBQTZELE9BQWdCLEVBQWtCLFdBQTRCLEVBQW1CLFlBQTRCO1FBQTdHLFlBQU8sR0FBUCxPQUFPLENBQVM7UUFBa0IsZ0JBQVcsR0FBWCxXQUFXLENBQWlCO1FBQW1CLGlCQUFZLEdBQVosWUFBWSxDQUFnQjtRQXZCMUs7O1dBRUc7UUFDSSxVQUFLLEdBQTJCLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxFQUFFLENBQUMsSUFBSSxDQUNwRSxHQUFHLENBQUMsQ0FBQyxJQUFzQixFQUFFLEVBQUUsQ0FDM0IsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQztZQUNoQixJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUk7WUFDZixJQUFJLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDO1lBQ3hDLFdBQVcsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUM7WUFDL0MsU0FBUyxFQUFFLElBQUksQ0FBQyxTQUFTO1lBQ3pCLEVBQUUsRUFBRSxJQUFJLENBQUMsRUFBRTtZQUNYLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSTtTQUNsQixDQUFDLENBQUMsQ0FDTixDQUNKLENBQUM7SUFTMkssQ0FBQzs7dUhBeEJySywwQkFBMEIsa0JBd0JSLGdCQUFnQjsyR0F4QmxDLDBCQUEwQixpREFQeEI7UUFDUDtZQUNJLE9BQU8sRUFBRSxlQUFlO1lBQ3hCLFFBQVEsRUFBRSxpQkFBaUI7U0FDOUI7S0FDSiwwQkNwQkwsNitDQXVDQTsyRkRqQmEsMEJBQTBCO2tCQVh0QyxTQUFTOytCQUNJLHdCQUF3QixtQkFFakIsdUJBQXVCLENBQUMsTUFBTSxhQUNwQzt3QkFDUDs0QkFDSSxPQUFPLEVBQUUsZUFBZTs0QkFDeEIsUUFBUSxFQUFFLGlCQUFpQjt5QkFDOUI7cUJBQ0o7OzBCQTBCbUIsTUFBTTsyQkFBQyxnQkFBZ0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFRVSV9UUkVFX0xPQURJTkcsIFRVSV9UUkVFX0xPQURFUiB9IGZyb20gJ0B0YWlnYS11aS9raXQnO1xuaW1wb3J0IHsgU2NEb2N1bWVudEluZm8sIFNjRmlsZXNTZXJ2aWNlIH0gZnJvbSAnQHNuYWJjZW50ci9jbGllbnQtY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBtYXAgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFRyZWVJY29uU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvdHJlZS1pY29uLnNlcnZpY2UnO1xuaW1wb3J0IHsgVHJlZUxvYWRlclNlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzL3RyZWUtbG9hZGVyLnNlcnZpY2UnO1xuaW1wb3J0IHsgVHJlZU5vZGUgfSBmcm9tICcuL2ludGVyZmFjZXMvdHJlZS1ub2RlJztcblxuLyoqXG4gKiDQmtC+0LzQv9C+0L3QtdC90YIg0YTQsNC50LvQvtCyINC4INC00L7QutGD0LzQtdC90YLQvtCyLlxuICovXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3NjLWZpbGVzLWFuZC1kb2N1bWVudHMnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9maWxlcy1hbmQtZG9jdW1lbnRzLmNvbXBvbmVudC5odG1sJyxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogVFVJX1RSRUVfTE9BREVSLFxuICAgICAgICAgICAgdXNlQ2xhc3M6IFRyZWVMb2FkZXJTZXJ2aWNlLFxuICAgICAgICB9LFxuICAgIF0sXG59KVxuZXhwb3J0IGNsYXNzIEZpbGVzQW5kRG9jdW1lbnRzQ29tcG9uZW50IHtcbiAgICAvKipcbiAgICAgKiDQlNCw0L3QvdGL0LUg0LLQuNC30YPQsNC70LjQt9Cw0YbQuNC4INC4INC40YUg0L3QsNGH0LDQu9GM0L3QvtC1INC/0L7Qu9GD0YfQtdC90LjQtS5cbiAgICAgKi9cbiAgICBwdWJsaWMgZGF0YSQ6IE9ic2VydmFibGU8VHJlZU5vZGVbXT4gPSB0aGlzLmZpbGVzU2VydmljZS5nZXRGaWxlcygpLnBpcGUoXG4gICAgICAgIG1hcCgoZGF0YTogU2NEb2N1bWVudEluZm9bXSkgPT5cbiAgICAgICAgICAgIGRhdGEubWFwKChpdGVtKSA9PiAoe1xuICAgICAgICAgICAgICAgIHRleHQ6IGl0ZW0ubmFtZSxcbiAgICAgICAgICAgICAgICBpY29uOiB0aGlzLmljb25TZXJ2aWNlLmdldEljb25OYW1lKGl0ZW0pLFxuICAgICAgICAgICAgICAgIGhhc0NoaWxkcmVuOiB0aGlzLmljb25TZXJ2aWNlLmhhc0NoaWxkcmVuKGl0ZW0pLFxuICAgICAgICAgICAgICAgIGNyZWF0ZWRBdDogaXRlbS5jcmVhdGVkQXQsXG4gICAgICAgICAgICAgICAgaWQ6IGl0ZW0uaWQsXG4gICAgICAgICAgICAgICAgbGluazogaXRlbS5saW5rLFxuICAgICAgICAgICAgfSkpXG4gICAgICAgIClcbiAgICApO1xuXG4gICAgLyoqXG4gICAgICog0JjQvdC40YbQuNCw0LvQuNC30LjRgNGD0LXRgiDRjdC60LfQtdC80L/Qu9GP0YAg0LrQu9Cw0YHRgdCwIHtAbGluayBGaWxlc0FuZERvY3VtZW50c0NvbXBvbmVudH0uXG4gICAgICpcbiAgICAgKiBAcGFyYW0gbG9hZGluZyDQntCx0YrQtdC60YIg0L7RgtCy0LXRh9Cw0Y7RidC40Lkg0LfQsCDQt9C90LDRh9C+0Log0LfQsNCz0YDRg9C30LrQuCwg0LIg0LzQvtC80LXQvdGCINGA0LDRgdC60YDRi9GC0LjRjyDRjdC70LXQvNC10L3RgtCwINC00LXRgNC10LLQsC5cbiAgICAgKiBAcGFyYW0gaWNvblNlcnZpY2Ug0KHQtdGA0LLQuNGBINC00LvRjyDQvtC/0YDQtdC00LXQu9C10L3QuNGPINC4INC90LDQt9C90LDRh9C10L3QuNGPINC30L3QsNGH0LrQsCDRjdC70LXQvNC10L3RgtGDINC00LXRgNC10LLQsC5cbiAgICAgKiBAcGFyYW0gZmlsZXNTZXJ2aWNlINCh0LXRgNCy0LjRgSDQtNC70Y8g0LfQsNCz0YDRg9C30LrQuCDRhNCw0LnQu9C+0LIuXG4gICAgICovXG4gICAgcHVibGljIGNvbnN0cnVjdG9yKEBJbmplY3QoVFVJX1RSRUVfTE9BRElORykgcHVibGljIHJlYWRvbmx5IGxvYWRpbmc6IHVua25vd24sIHB1YmxpYyByZWFkb25seSBpY29uU2VydmljZTogVHJlZUljb25TZXJ2aWNlLCBwcml2YXRlIHJlYWRvbmx5IGZpbGVzU2VydmljZTogU2NGaWxlc1NlcnZpY2UpIHt9XG59XG4iLCI8bmctY29udGFpbmVyICpuZ0lmPVwiZGF0YSQgfCBhc3luYyBhcyBkYXRhOyBlbHNlIHNrZWxldG9uXCI+XG4gICAgPHR1aS10cmVlXG4gICAgICAgICpuZ0Zvcj1cImxldCBub2RlIG9mIGRhdGFcIlxuICAgICAgICAjdHJlZT1cInNjVHJlZVwiXG4gICAgICAgIHNjVHJlZVxuICAgICAgICBbc2NUb3BOb2RlVGV4dF09XCJub2RlLnRleHRcIlxuICAgICAgICBbc2NUb3BOb2RlSWNvbl09XCJub2RlLmljb25cIlxuICAgICAgICBbc2NUb3BOb2RlTGlua109XCJub2RlLmxpbmtcIlxuICAgICAgICBbc2NUb3BOb2RlQ2hpbGRzXT1cIm5vZGUuaGFzQ2hpbGRyZW5cIlxuICAgICAgICBbc2NUb3BOb2RlUGFyZW50XT1cIm5vZGUuaWRcIlxuICAgICAgICBbc2NUb3BOb2RlRGF0ZV09XCJub2RlLmNyZWF0ZWRBdFwiXG4gICAgICAgIFtjaGlsZHJlbkhhbmRsZXJdPVwidHJlZS5jaGlsZHJlbkhhbmRsZXJcIlxuICAgICAgICBbY29udGVudF09XCJjb250ZW50XCJcbiAgICAgICAgW21hcF09XCJ0cmVlLm1hcFwiXG4gICAgICAgIFt0dWlUcmVlQ29udHJvbGxlcl09XCJmYWxzZVwiXG4gICAgICAgIFt2YWx1ZV09XCJ0cmVlLnNlcnZpY2UuZGF0YSQgfCBhc3luY1wiXG4gICAgICAgICh0b2dnbGVkKT1cInRyZWUub25Ub2dnbGVkKCRldmVudClcIlxuICAgICAgICBjbGFzcz1cIm92ZXJmbG93LWhpZGRlblwiXG4gICAgPjwvdHVpLXRyZWU+XG48L25nLWNvbnRhaW5lcj5cblxuPG5nLXRlbXBsYXRlICNjb250ZW50IGxldC1pdGVtPlxuICAgIDx0dWktbG9hZGVyICpuZ0lmPVwiaXRlbSA9PT0gbG9hZGluZzsgZWxzZSB0ZXh0XCIgY2xhc3M9XCJ3LTggbXktNFwiPjwvdHVpLWxvYWRlcj5cbiAgICA8bmctdGVtcGxhdGUgI3RleHQ+XG4gICAgICAgIDx0dWktc3ZnIFtzcmNdPVwiaXRlbS5pY29uXCIgY2xhc3M9XCJ0dWktc3BhY2VfcmlnaHQtMlwiPjwvdHVpLXN2Zz5cbiAgICAgICAgPGEgdHVpTGluayBbcHNldWRvXT1cInRydWVcIiAqbmdJZj1cIml0ZW0ubGlua1wiIGhyZWY9XCJ7eyBpdGVtLmxpbmsgfX1cIiBjbGFzcz1cImdyb3dcIj57eyBpdGVtLnRleHQgfX08L2E+XG4gICAgICAgIDxwICpuZ0lmPVwiIWl0ZW0ubGlua1wiIGNsYXNzPVwiZ3Jvd1wiPnt7IGl0ZW0udGV4dCB9fTwvcD5cbiAgICAgICAgPHA+e3sgaXRlbS5jcmVhdGVkQXQgfX08L3A+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjc2tlbGV0b24+XG4gICAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1jb2wgZ2FwLTJcIj5cbiAgICAgICAgPGRpdiAqbmdGb3I9XCJsZXQgXyBvZiBbXS5jb25zdHJ1Y3Rvcig3KVwiIGNsYXNzPVwiZmxleCBpdGVtcy1jZW50ZXIgZ2FwLTJcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0dWktc2tlbGV0b24gaC02IHctNlwiPjwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInR1aS1za2VsZXRvbiBoLTQgdy00MFwiPjwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
@@ -0,0 +1,26 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import { FilesAndDocumentsComponent } from './files-and-documents.component';
4
+ import { TuiTreeModule } from '@taiga-ui/kit';
5
+ import { TuiLinkModule, TuiLoaderModule, TuiSvgModule } from '@taiga-ui/core';
6
+ import { FileTreeItemComponent } from './file-tree-item/file-tree-item.component';
7
+ import { TreeTopDirective } from '../public-api';
8
+ import { TreeDirective } from './directives/tree.directive';
9
+ import * as i0 from "@angular/core";
10
+ /**
11
+ * Модуль файлов и документов.
12
+ */
13
+ export class FilesAndDocumentsModule {
14
+ }
15
+ FilesAndDocumentsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FilesAndDocumentsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
16
+ FilesAndDocumentsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: FilesAndDocumentsModule, declarations: [FilesAndDocumentsComponent, TreeDirective, TreeTopDirective, FileTreeItemComponent], imports: [CommonModule, TuiTreeModule, TuiSvgModule, TuiLoaderModule, TuiLinkModule], exports: [FilesAndDocumentsComponent] });
17
+ FilesAndDocumentsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FilesAndDocumentsModule, imports: [CommonModule, TuiTreeModule, TuiSvgModule, TuiLoaderModule, TuiLinkModule] });
18
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FilesAndDocumentsModule, decorators: [{
19
+ type: NgModule,
20
+ args: [{
21
+ imports: [CommonModule, TuiTreeModule, TuiSvgModule, TuiLoaderModule, TuiLinkModule],
22
+ declarations: [FilesAndDocumentsComponent, TreeDirective, TreeTopDirective, FileTreeItemComponent],
23
+ exports: [FilesAndDocumentsComponent],
24
+ }]
25
+ }] });
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZXMtYW5kLWRvY3VtZW50cy5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jbGllbnQtdWkvZmlsZXMvZmlsZXMtYW5kLWRvY3VtZW50cy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDN0UsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM5QyxPQUFPLEVBQUUsYUFBYSxFQUFFLGVBQWUsRUFBRSxZQUFZLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM5RSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUNsRixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDZCQUE2QixDQUFDOztBQUU1RDs7R0FFRztBQU1ILE1BQU0sT0FBTyx1QkFBdUI7O29IQUF2Qix1QkFBdUI7cUhBQXZCLHVCQUF1QixpQkFIakIsMEJBQTBCLEVBQUUsYUFBYSxFQUFFLGdCQUFnQixFQUFFLHFCQUFxQixhQUR2RixZQUFZLEVBQUUsYUFBYSxFQUFFLFlBQVksRUFBRSxlQUFlLEVBQUUsYUFBYSxhQUV6RSwwQkFBMEI7cUhBRTNCLHVCQUF1QixZQUp0QixZQUFZLEVBQUUsYUFBYSxFQUFFLFlBQVksRUFBRSxlQUFlLEVBQUUsYUFBYTsyRkFJMUUsdUJBQXVCO2tCQUxuQyxRQUFRO21CQUFDO29CQUNOLE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxhQUFhLEVBQUUsWUFBWSxFQUFFLGVBQWUsRUFBRSxhQUFhLENBQUM7b0JBQ3BGLFlBQVksRUFBRSxDQUFDLDBCQUEwQixFQUFFLGFBQWEsRUFBRSxnQkFBZ0IsRUFBRSxxQkFBcUIsQ0FBQztvQkFDbEcsT0FBTyxFQUFFLENBQUMsMEJBQTBCLENBQUM7aUJBQ3hDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBGaWxlc0FuZERvY3VtZW50c0NvbXBvbmVudCB9IGZyb20gJy4vZmlsZXMtYW5kLWRvY3VtZW50cy5jb21wb25lbnQnO1xuaW1wb3J0IHsgVHVpVHJlZU1vZHVsZSB9IGZyb20gJ0B0YWlnYS11aS9raXQnO1xuaW1wb3J0IHsgVHVpTGlua01vZHVsZSwgVHVpTG9hZGVyTW9kdWxlLCBUdWlTdmdNb2R1bGUgfSBmcm9tICdAdGFpZ2EtdWkvY29yZSc7XG5pbXBvcnQgeyBGaWxlVHJlZUl0ZW1Db21wb25lbnQgfSBmcm9tICcuL2ZpbGUtdHJlZS1pdGVtL2ZpbGUtdHJlZS1pdGVtLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUcmVlVG9wRGlyZWN0aXZlIH0gZnJvbSAnLi4vcHVibGljLWFwaSc7XG5pbXBvcnQgeyBUcmVlRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL3RyZWUuZGlyZWN0aXZlJztcblxuLyoqXG4gKiDQnNC+0LTRg9C70Ywg0YTQsNC50LvQvtCyINC4INC00L7QutGD0LzQtdC90YLQvtCyLlxuICovXG5ATmdNb2R1bGUoe1xuICAgIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIFR1aVRyZWVNb2R1bGUsIFR1aVN2Z01vZHVsZSwgVHVpTG9hZGVyTW9kdWxlLCBUdWlMaW5rTW9kdWxlXSxcbiAgICBkZWNsYXJhdGlvbnM6IFtGaWxlc0FuZERvY3VtZW50c0NvbXBvbmVudCwgVHJlZURpcmVjdGl2ZSwgVHJlZVRvcERpcmVjdGl2ZSwgRmlsZVRyZWVJdGVtQ29tcG9uZW50XSxcbiAgICBleHBvcnRzOiBbRmlsZXNBbmREb2N1bWVudHNDb21wb25lbnRdLFxufSlcbmV4cG9ydCBjbGFzcyBGaWxlc0FuZERvY3VtZW50c01vZHVsZSB7fVxuIl19
@@ -0,0 +1,6 @@
1
+ export * from './files-and-documents.component';
2
+ export * from './files-and-documents.module';
3
+ export * from './services';
4
+ export * from './directives';
5
+ export * from './interfaces/tree-node';
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jbGllbnQtdWkvZmlsZXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLDhCQUE4QixDQUFDO0FBQzdDLGNBQWMsWUFBWSxDQUFDO0FBQzNCLGNBQWMsY0FBYyxDQUFDO0FBQzdCLGNBQWMsd0JBQXdCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2ZpbGVzLWFuZC1kb2N1bWVudHMuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vZmlsZXMtYW5kLWRvY3VtZW50cy5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9zZXJ2aWNlcyc7XG5leHBvcnQgKiBmcm9tICcuL2RpcmVjdGl2ZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9pbnRlcmZhY2VzL3RyZWUtbm9kZSc7XG4iXX0=
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJlZS1ub2RlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2xpZW50LXVpL2ZpbGVzL2ludGVyZmFjZXMvdHJlZS1ub2RlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqINCY0L3RgtC10YDRhNC10LnRgSDQtNC70Y8g0YDQtdCw0LvQuNC30LDRhtC40Lgg0LrQvtC80L/QvtC90LXQvdGC0LDQvNC4LCDQvtGC0L7QsdGA0LDQttCw0Y7RidC40LzQuCDRjdC70LXQvNC10L3RgiDQtNC10YDQtdCy0LAuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVHJlZU5vZGUge1xuICAgIC8qKlxuICAgICAqINCf0YDQuNC30L3QsNC6INC90LDQu9C40YfQuNGPINC00L7Rh9C10YDQvdC40YUg0Y3Qu9C10LzQtdC90YLQvtCyLlxuICAgICAqL1xuICAgIGhhc0NoaWxkcmVuOiBib29sZWFuO1xuXG4gICAgLyoqXG4gICAgICog0J7RgtC+0LHRgNCw0LbQsNC10LzQvtC1INC40LzRjyDRjdC70LXQvNC10L3RgtCwINC00LXRgNC10LLQsC5cbiAgICAgKi9cbiAgICB0ZXh0OiBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiDQntGC0L7QsdGA0LDQttCw0LXQvNGL0Lkg0LfQvdCw0YfQvtC6INGN0LvQtdC80LXQvdGC0LAg0LTQtdGA0LXQstCwLlxuICAgICAqL1xuICAgIGljb246IHN0cmluZztcblxuICAgIC8qKlxuICAgICAqINCY0LTQtdC90YLQuNGE0LjQutCw0YLQvtGAINGN0LvQtdC80LXQvdGC0LAg0LTQtdGA0LXQstCwLlxuICAgICAqL1xuICAgIGlkPzogbnVtYmVyO1xuXG4gICAgLyoqXG4gICAgICog0KHRgdGL0LvQutCwINGN0LvQtdC80LXQvdGC0LAg0LTQtdGA0LXQstCwLlxuICAgICAqL1xuICAgIGxpbms/OiBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiDQlNCw0YLQsCDRgdC+0LfQtNCw0L3QuNGPINGN0LvQtdC80LXQvdGC0LAg0LTQtdGA0LXQstCwLlxuICAgICAqL1xuICAgIGNyZWF0ZWRBdD86IHN0cmluZztcbn1cbiJdfQ==
@@ -0,0 +1,3 @@
1
+ export * from './tree-icon.service';
2
+ export * from './tree-loader.service';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbGllbnQtdWkvZmlsZXMvc2VydmljZXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxxQkFBcUIsQ0FBQztBQUNwQyxjQUFjLHVCQUF1QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi90cmVlLWljb24uc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL3RyZWUtbG9hZGVyLnNlcnZpY2UnO1xuIl19
@@ -0,0 +1,48 @@
1
+ import { Injectable } from '@angular/core';
2
+ import { ScIconTypesEnum } from '@snabcentr/client-core';
3
+ import * as i0 from "@angular/core";
4
+ /**
5
+ * Сервис работающий с значками элементов дерева.
6
+ */
7
+ export class TreeIconService {
8
+ /**
9
+ * Назначает значок элементу дерева в зависимости от типа файла.
10
+ *
11
+ * @param info Объект пришедших данных о файле.
12
+ * @returns Возвращает название значка в виде строки.
13
+ */
14
+ getIconName(info) {
15
+ switch (info.getIcon()) {
16
+ case ScIconTypesEnum.iconImage:
17
+ return 'scIconImage';
18
+ case ScIconTypesEnum.iconPdfFile:
19
+ return 'scIconPdfFile';
20
+ case ScIconTypesEnum.iconWordFile:
21
+ return 'scIconWordFile';
22
+ case ScIconTypesEnum.iconExcelFile:
23
+ return 'scIconExcelFile';
24
+ case ScIconTypesEnum.iconFolder:
25
+ return 'scIconFolder';
26
+ default:
27
+ return 'scIconFile';
28
+ }
29
+ }
30
+ /**
31
+ * Проверяет на признак наличия дочерних элементов.
32
+ *
33
+ * @param info Объект пришедших данных о файле.
34
+ * @returns Возвращает true при наличии дочерних элементов и false при их отсутсвии.
35
+ */
36
+ hasChildren(info) {
37
+ return info.type === 'dir';
38
+ }
39
+ }
40
+ TreeIconService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: TreeIconService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
41
+ TreeIconService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: TreeIconService, providedIn: 'root' });
42
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: TreeIconService, decorators: [{
43
+ type: Injectable,
44
+ args: [{
45
+ providedIn: 'root',
46
+ }]
47
+ }] });
48
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJlZS1pY29uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbGllbnQtdWkvZmlsZXMvc2VydmljZXMvdHJlZS1pY29uLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7O0FBRXpEOztHQUVHO0FBSUgsTUFBTSxPQUFPLGVBQWU7SUFDeEI7Ozs7O09BS0c7SUFDSSxXQUFXLENBQUMsSUFBb0I7UUFDbkMsUUFBUSxJQUFJLENBQUMsT0FBTyxFQUFFLEVBQUU7WUFDcEIsS0FBSyxlQUFlLENBQUMsU0FBUztnQkFDMUIsT0FBTyxhQUFhLENBQUM7WUFDekIsS0FBSyxlQUFlLENBQUMsV0FBVztnQkFDNUIsT0FBTyxlQUFlLENBQUM7WUFDM0IsS0FBSyxlQUFlLENBQUMsWUFBWTtnQkFDN0IsT0FBTyxnQkFBZ0IsQ0FBQztZQUM1QixLQUFLLGVBQWUsQ0FBQyxhQUFhO2dCQUM5QixPQUFPLGlCQUFpQixDQUFDO1lBQzdCLEtBQUssZUFBZSxDQUFDLFVBQVU7Z0JBQzNCLE9BQU8sY0FBYyxDQUFDO1lBQzFCO2dCQUNJLE9BQU8sWUFBWSxDQUFDO1NBQzNCO0lBQ0wsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0ksV0FBVyxDQUFDLElBQW9CO1FBQ25DLE9BQU8sSUFBSSxDQUFDLElBQUksS0FBSyxLQUFLLENBQUM7SUFDL0IsQ0FBQzs7NEdBaENRLGVBQWU7Z0hBQWYsZUFBZSxjQUZaLE1BQU07MkZBRVQsZUFBZTtrQkFIM0IsVUFBVTttQkFBQztvQkFDUixVQUFVLEVBQUUsTUFBTTtpQkFDckIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTY0RvY3VtZW50SW5mbyB9IGZyb20gJ0BzbmFiY2VudHIvY2xpZW50LWNvcmUvZmlsZXMvY2xhc3Nlcy9zYy1kb2N1bWVudC1pbmZvJztcbmltcG9ydCB7IFNjSWNvblR5cGVzRW51bSB9IGZyb20gJ0BzbmFiY2VudHIvY2xpZW50LWNvcmUnO1xuXG4vKipcbiAqINCh0LXRgNCy0LjRgSDRgNCw0LHQvtGC0LDRjtGJ0LjQuSDRgSDQt9C90LDRh9C60LDQvNC4INGN0LvQtdC80LXQvdGC0L7QsiDQtNC10YDQtdCy0LAuXG4gKi9cbkBJbmplY3RhYmxlKHtcbiAgICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIFRyZWVJY29uU2VydmljZSB7XG4gICAgLyoqXG4gICAgICog0J3QsNC30L3QsNGH0LDQtdGCINC30L3QsNGH0L7QuiDRjdC70LXQvNC10L3RgtGDINC00LXRgNC10LLQsCDQsiDQt9Cw0LLQuNGB0LjQvNC+0YHRgtC4INC+0YIg0YLQuNC/0LAg0YTQsNC50LvQsC5cbiAgICAgKlxuICAgICAqIEBwYXJhbSBpbmZvINCe0LHRitC10LrRgiDQv9GA0LjRiNC10LTRiNC40YUg0LTQsNC90L3Ri9GFINC+INGE0LDQudC70LUuXG4gICAgICogQHJldHVybnMg0JLQvtC30LLRgNCw0YnQsNC10YIg0L3QsNC30LLQsNC90LjQtSDQt9C90LDRh9C60LAg0LIg0LLQuNC00LUg0YHRgtGA0L7QutC4LlxuICAgICAqL1xuICAgIHB1YmxpYyBnZXRJY29uTmFtZShpbmZvOiBTY0RvY3VtZW50SW5mbyk6IHN0cmluZyB7XG4gICAgICAgIHN3aXRjaCAoaW5mby5nZXRJY29uKCkpIHtcbiAgICAgICAgICAgIGNhc2UgU2NJY29uVHlwZXNFbnVtLmljb25JbWFnZTpcbiAgICAgICAgICAgICAgICByZXR1cm4gJ3NjSWNvbkltYWdlJztcbiAgICAgICAgICAgIGNhc2UgU2NJY29uVHlwZXNFbnVtLmljb25QZGZGaWxlOlxuICAgICAgICAgICAgICAgIHJldHVybiAnc2NJY29uUGRmRmlsZSc7XG4gICAgICAgICAgICBjYXNlIFNjSWNvblR5cGVzRW51bS5pY29uV29yZEZpbGU6XG4gICAgICAgICAgICAgICAgcmV0dXJuICdzY0ljb25Xb3JkRmlsZSc7XG4gICAgICAgICAgICBjYXNlIFNjSWNvblR5cGVzRW51bS5pY29uRXhjZWxGaWxlOlxuICAgICAgICAgICAgICAgIHJldHVybiAnc2NJY29uRXhjZWxGaWxlJztcbiAgICAgICAgICAgIGNhc2UgU2NJY29uVHlwZXNFbnVtLmljb25Gb2xkZXI6XG4gICAgICAgICAgICAgICAgcmV0dXJuICdzY0ljb25Gb2xkZXInO1xuICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICByZXR1cm4gJ3NjSWNvbkZpbGUnO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICog0J/RgNC+0LLQtdGA0Y/QtdGCINC90LAg0L/RgNC40LfQvdCw0Log0L3QsNC70LjRh9C40Y8g0LTQvtGH0LXRgNC90LjRhSDRjdC70LXQvNC10L3RgtC+0LIuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gaW5mbyDQntCx0YrQtdC60YIg0L/RgNC40YjQtdC00YjQuNGFINC00LDQvdC90YvRhSDQviDRhNCw0LnQu9C1LlxuICAgICAqIEByZXR1cm5zINCS0L7Qt9Cy0YDQsNGJ0LDQtdGCIHRydWUg0L/RgNC4INC90LDQu9C40YfQuNC4INC00L7Rh9C10YDQvdC40YUg0Y3Qu9C10LzQtdC90YLQvtCyINC4IGZhbHNlINC/0YDQuCDQuNGFINC+0YLRgdGD0YLRgdCy0LjQuC5cbiAgICAgKi9cbiAgICBwdWJsaWMgaGFzQ2hpbGRyZW4oaW5mbzogU2NEb2N1bWVudEluZm8pOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIGluZm8udHlwZSA9PT0gJ2Rpcic7XG4gICAgfVxufVxuIl19
@@ -0,0 +1,60 @@
1
+ import { Injectable } from '@angular/core';
2
+ import { map } from 'rxjs';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@snabcentr/client-core";
5
+ import * as i2 from "./tree-icon.service";
6
+ /**
7
+ * Сервис для асинхронного раскрытия вложенности.
8
+ */
9
+ export class TreeLoaderService {
10
+ /**
11
+ * Инициализирует экземпляр класса {@link TreeLoaderService}
12
+ *
13
+ * @param filesService Сервис для получения файлов директории.
14
+ * @param iconService Сервис для определения и назначения значка элементу дерева.
15
+ */
16
+ constructor(filesService, iconService) {
17
+ this.filesService = filesService;
18
+ this.iconService = iconService;
19
+ }
20
+ /**
21
+ * Загружает дочерние элементы дерева.
22
+ *
23
+ * @param item Элемент дерева.
24
+ * @returns Массив дочерних элементов.
25
+ */
26
+ loadChildren(item) {
27
+ return item.id ? this.initData(item.id) : this.initData(undefined);
28
+ }
29
+ /**
30
+ * Проверяет указанный элемент дерева на наличие дочерних элементов и возвращает массив дочерних элементов, если они есть, либо пустой массив.
31
+ *
32
+ * @param node Элемент дерева.
33
+ * @returns Возвращает массив типа TreeNode[].
34
+ */
35
+ hasChildren(node) {
36
+ return node.hasChildren && !!node.id;
37
+ }
38
+ /**
39
+ * Загружает и заполняет массив дочерних элементов.
40
+ *
41
+ * @param id Идентификатор директории, чьи дочернии элементы загружаются.
42
+ * @returns Возвращает массив дочерних элементов.
43
+ */
44
+ initData(id) {
45
+ return this.filesService.getFiles(id).pipe(map((data) => data.map((item) => ({
46
+ text: item.name,
47
+ icon: this.iconService.getIconName(item),
48
+ hasChildren: this.iconService.hasChildren(item),
49
+ createdAt: item.createdAt,
50
+ id: item.id,
51
+ link: item.link,
52
+ }))));
53
+ }
54
+ }
55
+ TreeLoaderService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: TreeLoaderService, deps: [{ token: i1.ScFilesService }, { token: i2.TreeIconService }], target: i0.ɵɵFactoryTarget.Injectable });
56
+ TreeLoaderService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: TreeLoaderService });
57
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: TreeLoaderService, decorators: [{
58
+ type: Injectable
59
+ }], ctorParameters: function () { return [{ type: i1.ScFilesService }, { type: i2.TreeIconService }]; } });
60
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJlZS1sb2FkZXIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NsaWVudC11aS9maWxlcy9zZXJ2aWNlcy90cmVlLWxvYWRlci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUFjLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQzs7OztBQUl2Qzs7R0FFRztBQUVILE1BQU0sT0FBTyxpQkFBaUI7SUFDMUI7Ozs7O09BS0c7SUFDSCxZQUFvQyxZQUE0QixFQUFtQixXQUE0QjtRQUEzRSxpQkFBWSxHQUFaLFlBQVksQ0FBZ0I7UUFBbUIsZ0JBQVcsR0FBWCxXQUFXLENBQWlCO0lBQUcsQ0FBQztJQUVuSDs7Ozs7T0FLRztJQUNJLFlBQVksQ0FBQyxJQUFjO1FBQzlCLE9BQU8sSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDdkUsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0ksV0FBVyxDQUFDLElBQWM7UUFDN0IsT0FBTyxJQUFJLENBQUMsV0FBVyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO0lBQ3pDLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNLLFFBQVEsQ0FBQyxFQUFzQjtRQUNuQyxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FDdEMsR0FBRyxDQUFDLENBQUMsSUFBc0IsRUFBRSxFQUFFLENBQzNCLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDaEIsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJO1lBQ2YsSUFBSSxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQztZQUN4QyxXQUFXLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDO1lBQy9DLFNBQVMsRUFBRSxJQUFJLENBQUMsU0FBUztZQUN6QixFQUFFLEVBQUUsSUFBSSxDQUFDLEVBQUU7WUFDWCxJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUk7U0FDbEIsQ0FBQyxDQUFDLENBQ04sQ0FDSixDQUFDO0lBQ04sQ0FBQzs7OEdBaERRLGlCQUFpQjtrSEFBakIsaUJBQWlCOzJGQUFqQixpQkFBaUI7a0JBRDdCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTY0RvY3VtZW50SW5mbywgU2NGaWxlc1NlcnZpY2UgfSBmcm9tICdAc25hYmNlbnRyL2NsaWVudC1jb3JlJztcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFR1aVRyZWVMb2FkZXIgfSBmcm9tICdAdGFpZ2EtdWkva2l0JztcbmltcG9ydCB7IE9ic2VydmFibGUsIG1hcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgVHJlZUljb25TZXJ2aWNlIH0gZnJvbSAnLi90cmVlLWljb24uc2VydmljZSc7XG5pbXBvcnQgeyBUcmVlTm9kZSB9IGZyb20gJy4uL2ludGVyZmFjZXMvdHJlZS1ub2RlJztcblxuLyoqXG4gKiDQodC10YDQstC40YEg0LTQu9GPINCw0YHQuNC90YXRgNC+0L3QvdC+0LPQviDRgNCw0YHQutGA0YvRgtC40Y8g0LLQu9C+0LbQtdC90L3QvtGB0YLQuC5cbiAqL1xuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFRyZWVMb2FkZXJTZXJ2aWNlIGltcGxlbWVudHMgVHVpVHJlZUxvYWRlcjxUcmVlTm9kZT4ge1xuICAgIC8qKlxuICAgICAqINCY0L3QuNGG0LjQsNC70LjQt9C40YDRg9C10YIg0Y3QutC30LXQvNC/0LvRj9GAINC60LvQsNGB0YHQsCB7QGxpbmsgVHJlZUxvYWRlclNlcnZpY2V9XG4gICAgICpcbiAgICAgKiBAcGFyYW0gZmlsZXNTZXJ2aWNlINCh0LXRgNCy0LjRgSDQtNC70Y8g0L/QvtC70YPRh9C10L3QuNGPINGE0LDQudC70L7QsiDQtNC40YDQtdC60YLQvtGA0LjQuC5cbiAgICAgKiBAcGFyYW0gaWNvblNlcnZpY2Ug0KHQtdGA0LLQuNGBINC00LvRjyDQvtC/0YDQtdC00LXQu9C10L3QuNGPINC4INC90LDQt9C90LDRh9C10L3QuNGPINC30L3QsNGH0LrQsCDRjdC70LXQvNC10L3RgtGDINC00LXRgNC10LLQsC5cbiAgICAgKi9cbiAgICBwdWJsaWMgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBmaWxlc1NlcnZpY2U6IFNjRmlsZXNTZXJ2aWNlLCBwcml2YXRlIHJlYWRvbmx5IGljb25TZXJ2aWNlOiBUcmVlSWNvblNlcnZpY2UpIHt9XG5cbiAgICAvKipcbiAgICAgKiDQl9Cw0LPRgNGD0LbQsNC10YIg0LTQvtGH0LXRgNC90LjQtSDRjdC70LXQvNC10L3RgtGLINC00LXRgNC10LLQsC5cbiAgICAgKlxuICAgICAqIEBwYXJhbSBpdGVtINCt0LvQtdC80LXQvdGCINC00LXRgNC10LLQsC5cbiAgICAgKiBAcmV0dXJucyDQnNCw0YHRgdC40LIg0LTQvtGH0LXRgNC90LjRhSDRjdC70LXQvNC10L3RgtC+0LIuXG4gICAgICovXG4gICAgcHVibGljIGxvYWRDaGlsZHJlbihpdGVtOiBUcmVlTm9kZSk6IE9ic2VydmFibGU8VHJlZU5vZGVbXT4ge1xuICAgICAgICByZXR1cm4gaXRlbS5pZCA/IHRoaXMuaW5pdERhdGEoaXRlbS5pZCkgOiB0aGlzLmluaXREYXRhKHVuZGVmaW5lZCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICog0J/RgNC+0LLQtdGA0Y/QtdGCINGD0LrQsNC30LDQvdC90YvQuSDRjdC70LXQvNC10L3RgiDQtNC10YDQtdCy0LAg0L3QsCDQvdCw0LvQuNGH0LjQtSDQtNC+0YfQtdGA0L3QuNGFINGN0LvQtdC80LXQvdGC0L7QsiDQuCDQstC+0LfQstGA0LDRidCw0LXRgiDQvNCw0YHRgdC40LIg0LTQvtGH0LXRgNC90LjRhSDRjdC70LXQvNC10L3RgtC+0LIsINC10YHQu9C4INC+0L3QuCDQtdGB0YLRjCwg0LvQuNCx0L4g0L/Rg9GB0YLQvtC5INC80LDRgdGB0LjQsi5cbiAgICAgKlxuICAgICAqIEBwYXJhbSBub2RlINCt0LvQtdC80LXQvdGCINC00LXRgNC10LLQsC5cbiAgICAgKiBAcmV0dXJucyDQktC+0LfQstGA0LDRidCw0LXRgiDQvNCw0YHRgdC40LIg0YLQuNC/0LAgVHJlZU5vZGVbXS5cbiAgICAgKi9cbiAgICBwdWJsaWMgaGFzQ2hpbGRyZW4obm9kZTogVHJlZU5vZGUpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIG5vZGUuaGFzQ2hpbGRyZW4gJiYgISFub2RlLmlkO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqINCX0LDQs9GA0YPQttCw0LXRgiDQuCDQt9Cw0L/QvtC70L3Rj9C10YIg0LzQsNGB0YHQuNCyINC00L7Rh9C10YDQvdC40YUg0Y3Qu9C10LzQtdC90YLQvtCyLlxuICAgICAqXG4gICAgICogQHBhcmFtIGlkINCY0LTQtdC90YLQuNGE0LjQutCw0YLQvtGAINC00LjRgNC10LrRgtC+0YDQuNC4LCDRh9GM0Lgg0LTQvtGH0LXRgNC90LjQuCDRjdC70LXQvNC10L3RgtGLINC30LDQs9GA0YPQttCw0Y7RgtGB0Y8uXG4gICAgICogQHJldHVybnMg0JLQvtC30LLRgNCw0YnQsNC10YIg0LzQsNGB0YHQuNCyINC00L7Rh9C10YDQvdC40YUg0Y3Qu9C10LzQtdC90YLQvtCyLlxuICAgICAqL1xuICAgIHByaXZhdGUgaW5pdERhdGEoaWQ6IG51bWJlciB8IHVuZGVmaW5lZCk6IE9ic2VydmFibGU8VHJlZU5vZGVbXT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5maWxlc1NlcnZpY2UuZ2V0RmlsZXMoaWQpLnBpcGUoXG4gICAgICAgICAgICBtYXAoKGRhdGE6IFNjRG9jdW1lbnRJbmZvW10pID0+XG4gICAgICAgICAgICAgICAgZGF0YS5tYXAoKGl0ZW0pID0+ICh7XG4gICAgICAgICAgICAgICAgICAgIHRleHQ6IGl0ZW0ubmFtZSxcbiAgICAgICAgICAgICAgICAgICAgaWNvbjogdGhpcy5pY29uU2VydmljZS5nZXRJY29uTmFtZShpdGVtKSxcbiAgICAgICAgICAgICAgICAgICAgaGFzQ2hpbGRyZW46IHRoaXMuaWNvblNlcnZpY2UuaGFzQ2hpbGRyZW4oaXRlbSksXG4gICAgICAgICAgICAgICAgICAgIGNyZWF0ZWRBdDogaXRlbS5jcmVhdGVkQXQsXG4gICAgICAgICAgICAgICAgICAgIGlkOiBpdGVtLmlkLFxuICAgICAgICAgICAgICAgICAgICBsaW5rOiBpdGVtLmxpbmssXG4gICAgICAgICAgICAgICAgfSkpXG4gICAgICAgICAgICApXG4gICAgICAgICk7XG4gICAgfVxufVxuIl19
@@ -4,6 +4,7 @@
4
4
  export * from './banner';
5
5
  export * from './cart';
6
6
  export * from './catalog';
7
+ export * from './files';
7
8
  export * from './icons';
8
9
  export * from './loader';
9
10
  export * from './news';
@@ -11,4 +12,4 @@ export * from './order';
11
12
  export * from './share-button';
12
13
  export * from './validators';
13
14
  export * from './tokens';
14
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2NsaWVudC11aS9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxVQUFVLENBQUM7QUFDekIsY0FBYyxRQUFRLENBQUM7QUFDdkIsY0FBYyxXQUFXLENBQUM7QUFDMUIsY0FBYyxTQUFTLENBQUM7QUFDeEIsY0FBYyxVQUFVLENBQUM7QUFDekIsY0FBYyxRQUFRLENBQUM7QUFDdkIsY0FBYyxTQUFTLENBQUM7QUFDeEIsY0FBYyxnQkFBZ0IsQ0FBQztBQUMvQixjQUFjLGNBQWMsQ0FBQztBQUM3QixjQUFjLFVBQVUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBQdWJsaWMgQVBJIFN1cmZhY2Ugb2YgdWlcbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2Jhbm5lcic7XG5leHBvcnQgKiBmcm9tICcuL2NhcnQnO1xuZXhwb3J0ICogZnJvbSAnLi9jYXRhbG9nJztcbmV4cG9ydCAqIGZyb20gJy4vaWNvbnMnO1xuZXhwb3J0ICogZnJvbSAnLi9sb2FkZXInO1xuZXhwb3J0ICogZnJvbSAnLi9uZXdzJztcbmV4cG9ydCAqIGZyb20gJy4vb3JkZXInO1xuZXhwb3J0ICogZnJvbSAnLi9zaGFyZS1idXR0b24nO1xuZXhwb3J0ICogZnJvbSAnLi92YWxpZGF0b3JzJztcbmV4cG9ydCAqIGZyb20gJy4vdG9rZW5zJztcbiJdfQ==
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2NsaWVudC11aS9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxVQUFVLENBQUM7QUFDekIsY0FBYyxRQUFRLENBQUM7QUFDdkIsY0FBYyxXQUFXLENBQUM7QUFDMUIsY0FBYyxTQUFTLENBQUM7QUFDeEIsY0FBYyxTQUFTLENBQUM7QUFDeEIsY0FBYyxVQUFVLENBQUM7QUFDekIsY0FBYyxRQUFRLENBQUM7QUFDdkIsY0FBYyxTQUFTLENBQUM7QUFDeEIsY0FBYyxnQkFBZ0IsQ0FBQztBQUMvQixjQUFjLGNBQWMsQ0FBQztBQUM3QixjQUFjLFVBQVUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBQdWJsaWMgQVBJIFN1cmZhY2Ugb2YgdWlcbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2Jhbm5lcic7XG5leHBvcnQgKiBmcm9tICcuL2NhcnQnO1xuZXhwb3J0ICogZnJvbSAnLi9jYXRhbG9nJztcbmV4cG9ydCAqIGZyb20gJy4vZmlsZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9pY29ucyc7XG5leHBvcnQgKiBmcm9tICcuL2xvYWRlcic7XG5leHBvcnQgKiBmcm9tICcuL25ld3MnO1xuZXhwb3J0ICogZnJvbSAnLi9vcmRlcic7XG5leHBvcnQgKiBmcm9tICcuL3NoYXJlLWJ1dHRvbic7XG5leHBvcnQgKiBmcm9tICcuL3ZhbGlkYXRvcnMnO1xuZXhwb3J0ICogZnJvbSAnLi90b2tlbnMnO1xuIl19