@snabcentr/client-ui 0.0.0-test
Sign up to get free protection for your applications and to get access to all the features.
- package/LICENSE +1 -0
- package/README.md +9 -0
- package/banner/index.d.ts +2 -0
- package/banner/sc-banner.component.d.ts +130 -0
- package/banner/sc-banner.module.d.ts +17 -0
- package/cart/cart-item-mobile/sc-cart-item-mobile.component.d.ts +77 -0
- package/cart/index.d.ts +2 -0
- package/cart/sc-cart.module.d.ts +16 -0
- package/catalog/category-card/sc-category-card.component.d.ts +68 -0
- package/catalog/index.d.ts +7 -0
- package/catalog/input-quantity/sc-input-quantity.component.d.ts +75 -0
- package/catalog/price-card/sc-price-card.component.d.ts +114 -0
- package/catalog/price-history/sc-chart-option.d.ts +7 -0
- package/catalog/price-history/sc-i-chart-data-item.d.ts +13 -0
- package/catalog/price-history/sc-lang-RU.d.ts +113 -0
- package/catalog/price-history/sc-price-history.component.d.ts +73 -0
- package/catalog/price-warehouse-stock/sc-price-warehouse-stock.component.d.ts +37 -0
- package/catalog/sc-catalog.module.d.ts +21 -0
- package/catalog/sc-favorite-btn/sc-favorite-btn.component.d.ts +13 -0
- package/esm2020/banner/index.mjs +3 -0
- package/esm2020/banner/sc-banner.component.mjs +222 -0
- package/esm2020/banner/sc-banner.module.mjs +27 -0
- package/esm2020/cart/cart-item-mobile/sc-cart-item-mobile.component.mjs +119 -0
- package/esm2020/cart/index.mjs +3 -0
- package/esm2020/cart/sc-cart.module.mjs +58 -0
- package/esm2020/catalog/category-card/sc-category-card.component.mjs +109 -0
- package/esm2020/catalog/index.mjs +8 -0
- package/esm2020/catalog/input-quantity/sc-input-quantity.component.mjs +154 -0
- package/esm2020/catalog/price-card/sc-price-card.component.mjs +154 -0
- package/esm2020/catalog/price-history/sc-chart-option.mjs +79 -0
- package/esm2020/catalog/price-history/sc-i-chart-data-item.mjs +2 -0
- package/esm2020/catalog/price-history/sc-lang-RU.mjs +113 -0
- package/esm2020/catalog/price-history/sc-price-history.component.mjs +104 -0
- package/esm2020/catalog/price-warehouse-stock/sc-price-warehouse-stock.component.mjs +44 -0
- package/esm2020/catalog/sc-catalog.module.mjs +88 -0
- package/esm2020/catalog/sc-favorite-btn/sc-favorite-btn.component.mjs +24 -0
- package/esm2020/files/directives/index.mjs +3 -0
- package/esm2020/files/directives/tree-top.directive.mjs +63 -0
- package/esm2020/files/directives/tree.directive.mjs +47 -0
- package/esm2020/files/file-tree-item/file-tree-item.component.mjs +18 -0
- package/esm2020/files/files-and-documents.component.mjs +60 -0
- package/esm2020/files/files-and-documents.module.mjs +26 -0
- package/esm2020/files/index.mjs +6 -0
- package/esm2020/files/interfaces/tree-node.mjs +2 -0
- package/esm2020/files/services/index.mjs +3 -0
- package/esm2020/files/services/tree-icon.service.mjs +48 -0
- package/esm2020/files/services/tree-loader.service.mjs +60 -0
- package/esm2020/helpers/index.mjs +2 -0
- package/esm2020/helpers/sc-px-converter.mjs +27 -0
- package/esm2020/helpers/sc-units-helper.mjs +44 -0
- package/esm2020/icons/index.mjs +2 -0
- package/esm2020/icons/sc-client-ui-icons-name.mjs +107 -0
- package/esm2020/loader/index.mjs +2 -0
- package/esm2020/loader/sc-i-loader.mjs +2 -0
- package/esm2020/news/index.mjs +4 -0
- package/esm2020/news/news-card/sc-news-card.component.mjs +31 -0
- package/esm2020/news/news-card-skeleton/sc-news-card-skeleton.component.mjs +23 -0
- package/esm2020/news/sc-news.module.mjs +24 -0
- package/esm2020/order/index.mjs +3 -0
- package/esm2020/order/order-item-mobile/order-item-mobile.component.mjs +79 -0
- package/esm2020/order/sc-order.module.mjs +23 -0
- package/esm2020/public-api.mjs +15 -0
- package/esm2020/share-button/index.mjs +3 -0
- package/esm2020/share-button/sc-share-button.component.mjs +35 -0
- package/esm2020/share-button/sc-share-button.module.mjs +22 -0
- package/esm2020/snabcentr-client-ui.mjs +5 -0
- package/esm2020/tokens/index.mjs +2 -0
- package/esm2020/tokens/sc-linear-values-token.mjs +10 -0
- package/esm2020/validators/index.mjs +2 -0
- package/esm2020/validators/stepValidator.mjs +13 -0
- package/fesm2015/snabcentr-client-ui.mjs +1929 -0
- package/fesm2015/snabcentr-client-ui.mjs.map +1 -0
- package/fesm2020/snabcentr-client-ui.mjs +1901 -0
- package/fesm2020/snabcentr-client-ui.mjs.map +1 -0
- package/files/directives/index.d.ts +2 -0
- package/files/directives/tree-top.directive.d.ts +33 -0
- package/files/directives/tree.directive.d.ts +35 -0
- package/files/file-tree-item/file-tree-item.component.d.ts +9 -0
- package/files/files-and-documents.component.d.ts +27 -0
- package/files/files-and-documents.module.d.ts +16 -0
- package/files/index.d.ts +5 -0
- package/files/interfaces/tree-node.d.ts +29 -0
- package/files/services/index.d.ts +2 -0
- package/files/services/tree-icon.service.d.ts +23 -0
- package/files/services/tree-loader.service.d.ts +43 -0
- package/helpers/index.d.ts +1 -0
- package/helpers/sc-px-converter.d.ts +15 -0
- package/helpers/sc-units-helper.d.ts +28 -0
- package/icons/index.d.ts +1 -0
- package/icons/sc-client-ui-icons-name.d.ts +5 -0
- package/icons/svg-pack/scIconAddProfile.svg +11 -0
- package/icons/svg-pack/scIconApplication.svg +11 -0
- package/icons/svg-pack/scIconArrowDown.svg +11 -0
- package/icons/svg-pack/scIconArrowDownLarge.svg +11 -0
- package/icons/svg-pack/scIconArrowDownLargeEnd.svg +12 -0
- package/icons/svg-pack/scIconArrowLeft.svg +11 -0
- package/icons/svg-pack/scIconArrowReturn.svg +11 -0
- package/icons/svg-pack/scIconArrowRight.svg +11 -0
- package/icons/svg-pack/scIconArrowUp.svg +11 -0
- package/icons/svg-pack/scIconAttention.svg +11 -0
- package/icons/svg-pack/scIconBag.svg +11 -0
- package/icons/svg-pack/scIconBasket.svg +11 -0
- package/icons/svg-pack/scIconBell.svg +11 -0
- package/icons/svg-pack/scIconBook.svg +11 -0
- package/icons/svg-pack/scIconBubble.svg +11 -0
- package/icons/svg-pack/scIconCalendar.svg +11 -0
- package/icons/svg-pack/scIconCancel.svg +18 -0
- package/icons/svg-pack/scIconCart.svg +11 -0
- package/icons/svg-pack/scIconCatalog.svg +16 -0
- package/icons/svg-pack/scIconClients.svg +11 -0
- package/icons/svg-pack/scIconClip.svg +11 -0
- package/icons/svg-pack/scIconClock.svg +11 -0
- package/icons/svg-pack/scIconConfigurator.svg +18 -0
- package/icons/svg-pack/scIconContacts.svg +11 -0
- package/icons/svg-pack/scIconCross.svg +11 -0
- package/icons/svg-pack/scIconDeleteProfile.svg +12 -0
- package/icons/svg-pack/scIconDone.svg +12 -0
- package/icons/svg-pack/scIconDownloading.svg +11 -0
- package/icons/svg-pack/scIconEdit.svg +11 -0
- package/icons/svg-pack/scIconError.svg +12 -0
- package/icons/svg-pack/scIconExcelFile.svg +11 -0
- package/icons/svg-pack/scIconEye.svg +11 -0
- package/icons/svg-pack/scIconFavorite.svg +11 -0
- package/icons/svg-pack/scIconFavoriteFill.svg +11 -0
- package/icons/svg-pack/scIconFile.svg +11 -0
- package/icons/svg-pack/scIconFilter.svg +11 -0
- package/icons/svg-pack/scIconFolder.svg +11 -0
- package/icons/svg-pack/scIconFolderOpen.svg +11 -0
- package/icons/svg-pack/scIconFolderPlus.svg +11 -0
- package/icons/svg-pack/scIconGraph.svg +11 -0
- package/icons/svg-pack/scIconHamburger.svg +13 -0
- package/icons/svg-pack/scIconHeart.svg +11 -0
- package/icons/svg-pack/scIconHeartFill.svg +11 -0
- package/icons/svg-pack/scIconHistory.svg +11 -0
- package/icons/svg-pack/scIconHome.svg +12 -0
- package/icons/svg-pack/scIconImage.svg +11 -0
- package/icons/svg-pack/scIconLike.svg +11 -0
- package/icons/svg-pack/scIconList.svg +11 -0
- package/icons/svg-pack/scIconLocation.svg +11 -0
- package/icons/svg-pack/scIconLock.svg +11 -0
- package/icons/svg-pack/scIconLockOpen.svg +11 -0
- package/icons/svg-pack/scIconLogIn.svg +11 -0
- package/icons/svg-pack/scIconLogOut.svg +13 -0
- package/icons/svg-pack/scIconLogOut2.svg +13 -0
- package/icons/svg-pack/scIconMail.svg +11 -0
- package/icons/svg-pack/scIconMinus.svg +11 -0
- package/icons/svg-pack/scIconMoney.svg +11 -0
- package/icons/svg-pack/scIconMoney2.svg +11 -0
- package/icons/svg-pack/scIconNews.svg +11 -0
- package/icons/svg-pack/scIconOffer.svg +11 -0
- package/icons/svg-pack/scIconPalette.svg +18 -0
- package/icons/svg-pack/scIconPdfFile.svg +12 -0
- package/icons/svg-pack/scIconPercentage.svg +11 -0
- package/icons/svg-pack/scIconPhone.svg +11 -0
- package/icons/svg-pack/scIconPlus.svg +11 -0
- package/icons/svg-pack/scIconPrice.svg +11 -0
- package/icons/svg-pack/scIconProfile.svg +11 -0
- package/icons/svg-pack/scIconQRCodeScan.svg +18 -0
- package/icons/svg-pack/scIconQuestion.svg +11 -0
- package/icons/svg-pack/scIconReclamation.svg +11 -0
- package/icons/svg-pack/scIconRefresh.svg +11 -0
- package/icons/svg-pack/scIconRepeat.svg +11 -0
- package/icons/svg-pack/scIconRequisites.svg +11 -0
- package/icons/svg-pack/scIconRocket.svg +18 -0
- package/icons/svg-pack/scIconSave.svg +11 -0
- package/icons/svg-pack/scIconSearch.svg +12 -0
- package/icons/svg-pack/scIconSend.svg +11 -0
- package/icons/svg-pack/scIconSettings.svg +11 -0
- package/icons/svg-pack/scIconShare.svg +15 -0
- package/icons/svg-pack/scIconSocialCopy.svg +13 -0
- package/icons/svg-pack/scIconSocialEmail.svg +13 -0
- package/icons/svg-pack/scIconSocialFacebook.svg +12 -0
- package/icons/svg-pack/scIconSocialInstagram.svg +33 -0
- package/icons/svg-pack/scIconSocialQR.svg +12 -0
- package/icons/svg-pack/scIconSocialTelegram.svg +20 -0
- package/icons/svg-pack/scIconSocialViber.svg +16 -0
- package/icons/svg-pack/scIconSocialVk.svg +12 -0
- package/icons/svg-pack/scIconSocialWhatsapp.svg +12 -0
- package/icons/svg-pack/scIconStar.svg +11 -0
- package/icons/svg-pack/scIconSuitcase.svg +11 -0
- package/icons/svg-pack/scIconTasks.svg +11 -0
- package/icons/svg-pack/scIconTick.svg +11 -0
- package/icons/svg-pack/scIconTop.svg +11 -0
- package/icons/svg-pack/scIconVerticalThreeDots.svg +11 -0
- package/icons/svg-pack/scIconViewGrid.svg +11 -0
- package/icons/svg-pack/scIconViewInline.svg +11 -0
- package/icons/svg-pack/scIconViewTree.svg +15 -0
- package/icons/svg-pack/scIconWallet.svg +11 -0
- package/icons/svg-pack/scIconWarning.svg +11 -0
- package/icons/svg-pack/scIconWordFile.svg +12 -0
- package/index.d.ts +5 -0
- package/loader/index.d.ts +1 -0
- package/loader/sc-i-loader.d.ts +9 -0
- package/news/index.d.ts +3 -0
- package/news/news-card/sc-news-card.component.d.ts +22 -0
- package/news/news-card-skeleton/sc-news-card-skeleton.component.d.ts +12 -0
- package/news/sc-news.module.d.ts +14 -0
- package/order/index.d.ts +2 -0
- package/order/order-item-mobile/order-item-mobile.component.d.ts +53 -0
- package/order/sc-order.module.d.ts +13 -0
- package/package.json +62 -0
- package/public-api.d.ts +11 -0
- package/share-button/index.d.ts +2 -0
- package/share-button/sc-share-button.component.d.ts +22 -0
- package/share-button/sc-share-button.module.d.ts +12 -0
- package/styles/taiga/taiga-tailwind-preset.js +163 -0
- package/styles/taiga/variables.less +44 -0
- package/styles/tailwind/tailwind.scss +1461 -0
- package/tokens/index.d.ts +1 -0
- package/tokens/sc-linear-values-token.d.ts +8 -0
- package/validators/index.d.ts +1 -0
- package/validators/stepValidator.d.ts +7 -0
@@ -0,0 +1,44 @@
|
|
1
|
+
import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
|
2
|
+
import { map, switchMap } from 'rxjs';
|
3
|
+
import * as i0 from "@angular/core";
|
4
|
+
import * as i1 from "@snabcentr/client-core";
|
5
|
+
import * as i2 from "@angular/common";
|
6
|
+
import * as i3 from "@taiga-ui/core";
|
7
|
+
/**
|
8
|
+
* Компонент информации о наличии товара на складе.
|
9
|
+
*/
|
10
|
+
export class ScPriceWarehouseStockComponent {
|
11
|
+
/**
|
12
|
+
* Инициализирует экземпляр класса {@link ScPriceWarehouseStockComponent}.
|
13
|
+
*
|
14
|
+
* @param warehouseService Сервис для работы со складами.
|
15
|
+
*/
|
16
|
+
constructor(warehouseService) {
|
17
|
+
this.warehouseService = warehouseService;
|
18
|
+
/**
|
19
|
+
* Признак, что необходимо отобразить подсказку по складам.
|
20
|
+
*/
|
21
|
+
this.withStockHint = true;
|
22
|
+
/**
|
23
|
+
* {@link Observable} изменения выбранного склада.
|
24
|
+
*/
|
25
|
+
this.warehouseSelect$ = this.warehouseService.getWarehouseSelectChange$();
|
26
|
+
/**
|
27
|
+
* {@link Observable} изменения списка складов.
|
28
|
+
*/
|
29
|
+
this.stockByWarehouses$ = this.warehouseSelect$.pipe(switchMap((warehouseSelect) => this.warehouseService.getWarehouses$().pipe(map((warehouses) => this.product.warehouseStockCount?.map((stock) => [warehouses.find((warehouse) => warehouse.id === stock.id), stock])), map((stockByWarehouses) => stockByWarehouses?.sort((stock) => (stock[0]?.id === warehouseSelect?.id ? -1 : 1))))));
|
30
|
+
}
|
31
|
+
}
|
32
|
+
ScPriceWarehouseStockComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ScPriceWarehouseStockComponent, deps: [{ token: i1.ScWarehouseService }], target: i0.ɵɵFactoryTarget.Component });
|
33
|
+
ScPriceWarehouseStockComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: ScPriceWarehouseStockComponent, selector: "sc-price-warehouse-stock", inputs: { classList: "classList", product: "product", withStockHint: "withStockHint" }, ngImport: i0, template: "<ng-container *ngIf=\"product\">\n <ng-container>\n <div *ngIf=\"warehouseSelect$ | async as warehouseSelect\" class=\"flex items-center gap-1\">\n <span *ngIf=\"product.getNotStockMessage(warehouseSelect) as message\" class=\"text-xs min-w-2/5 text-tui-error-fill\" [ngClass]=\"classList\"> {{ message }} </span>\n <span *ngIf=\"product.isWarehouseStockExist(warehouseSelect.id)\" class=\"text-xs min-w-2/5 text-tui-success-fill\" [ngClass]=\"classList\">\n \u0412 \u043D\u0430\u043B\u0438\u0447\u0438\u0438<ng-container *ngIf=\"product.getWarehouseStockCount(warehouseSelect.id) as count\"\n >:\n <span class=\"whitespace-nowrap\">{{ count }} {{ product.quantityUnit }}</span>\n </ng-container>\n </span>\n <span *ngIf=\"product.onOrder\" class=\"text-xs min-w-2/5 text-sc-yellow\" [ngClass]=\"classList\">\u041F\u043E\u0434 \u0437\u0430\u043A\u0430\u0437</span>\n\n <tui-svg\n *ngIf=\"withStockHint && (stockByWarehouses$ | async)?.length\"\n src=\"tuiIconInfoLarge\"\n [tuiHint]=\"stockHint\"\n [tuiHintShowDelay]=\"100\"\n tuiHintDirection=\"top\"\n class=\"!text-xs !h-3\"\n ></tui-svg>\n </div>\n </ng-container>\n</ng-container>\n\n<ng-template #stockHint>\n <table *ngIf=\"warehouseSelect$ | async as warehouseSelect\" class=\"text-xs table-auto\" [ngClass]=\"classList\">\n <tbody>\n <tr *ngFor=\"let item of stockByWarehouses$ | async\" class=\"border-b\" [class.text-tui-primary]=\"warehouseSelect === item[0]\">\n <ng-container>\n <td class=\"px-1\">{{ item[0]?.name }}:</td>\n <td class=\"px-1\">{{ item[1].count ? item[1].count + ' ' + product.quantityUnit : '\u0412 \u043D\u0430\u043B\u0438\u0447\u0438\u0438' }}</td>\n </ng-container>\n </tr>\n </tbody>\n </table>\n</ng-template>\n", styles: ["[tuiIconButton]{--tui-radius-m: .75rem;--tui-height-xs: 1.25rem}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.TuiSvgComponent, selector: "tui-svg", inputs: ["src"] }, { kind: "directive", type: i3.TuiHintDirective, selector: "[tuiHint]:not(ng-container)", inputs: ["tuiHint", "tuiHintContext", "tuiHintAppearance"] }, { kind: "directive", type: i3.TuiHintDriverDirective, selector: "[tuiHint]" }, { kind: "directive", type: i3.TuiHintHoverDirective, selector: "[tuiHint]:not(ng-container)", inputs: ["tuiHintShowDelay", "tuiHintHideDelay"], exportAs: ["tuiHintHover"] }, { kind: "directive", type: i3.TuiHintPositionDirective, selector: "[tuiHint]:not([tuiHintCustomPosition])", inputs: ["tuiHintDirection"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
34
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ScPriceWarehouseStockComponent, decorators: [{
|
35
|
+
type: Component,
|
36
|
+
args: [{ selector: 'sc-price-warehouse-stock', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *ngIf=\"product\">\n <ng-container>\n <div *ngIf=\"warehouseSelect$ | async as warehouseSelect\" class=\"flex items-center gap-1\">\n <span *ngIf=\"product.getNotStockMessage(warehouseSelect) as message\" class=\"text-xs min-w-2/5 text-tui-error-fill\" [ngClass]=\"classList\"> {{ message }} </span>\n <span *ngIf=\"product.isWarehouseStockExist(warehouseSelect.id)\" class=\"text-xs min-w-2/5 text-tui-success-fill\" [ngClass]=\"classList\">\n \u0412 \u043D\u0430\u043B\u0438\u0447\u0438\u0438<ng-container *ngIf=\"product.getWarehouseStockCount(warehouseSelect.id) as count\"\n >:\n <span class=\"whitespace-nowrap\">{{ count }} {{ product.quantityUnit }}</span>\n </ng-container>\n </span>\n <span *ngIf=\"product.onOrder\" class=\"text-xs min-w-2/5 text-sc-yellow\" [ngClass]=\"classList\">\u041F\u043E\u0434 \u0437\u0430\u043A\u0430\u0437</span>\n\n <tui-svg\n *ngIf=\"withStockHint && (stockByWarehouses$ | async)?.length\"\n src=\"tuiIconInfoLarge\"\n [tuiHint]=\"stockHint\"\n [tuiHintShowDelay]=\"100\"\n tuiHintDirection=\"top\"\n class=\"!text-xs !h-3\"\n ></tui-svg>\n </div>\n </ng-container>\n</ng-container>\n\n<ng-template #stockHint>\n <table *ngIf=\"warehouseSelect$ | async as warehouseSelect\" class=\"text-xs table-auto\" [ngClass]=\"classList\">\n <tbody>\n <tr *ngFor=\"let item of stockByWarehouses$ | async\" class=\"border-b\" [class.text-tui-primary]=\"warehouseSelect === item[0]\">\n <ng-container>\n <td class=\"px-1\">{{ item[0]?.name }}:</td>\n <td class=\"px-1\">{{ item[1].count ? item[1].count + ' ' + product.quantityUnit : '\u0412 \u043D\u0430\u043B\u0438\u0447\u0438\u0438' }}</td>\n </ng-container>\n </tr>\n </tbody>\n </table>\n</ng-template>\n", styles: ["[tuiIconButton]{--tui-radius-m: .75rem;--tui-height-xs: 1.25rem}\n"] }]
|
37
|
+
}], ctorParameters: function () { return [{ type: i1.ScWarehouseService }]; }, propDecorators: { classList: [{
|
38
|
+
type: Input
|
39
|
+
}], product: [{
|
40
|
+
type: Input
|
41
|
+
}], withStockHint: [{
|
42
|
+
type: Input
|
43
|
+
}] } });
|
44
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2MtcHJpY2Utd2FyZWhvdXNlLXN0b2NrLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NsaWVudC11aS9jYXRhbG9nL3ByaWNlLXdhcmVob3VzZS1zdG9jay9zYy1wcmljZS13YXJlaG91c2Utc3RvY2suY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2xpZW50LXVpL2NhdGFsb2cvcHJpY2Utd2FyZWhvdXNlLXN0b2NrL3NjLXByaWNlLXdhcmVob3VzZS1zdG9jay5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUxRSxPQUFPLEVBQWMsR0FBRyxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQzs7Ozs7QUFFbEQ7O0dBRUc7QUFPSCxNQUFNLE9BQU8sOEJBQThCO0lBb0N2Qzs7OztPQUlHO0lBQ0gsWUFBb0MsZ0JBQW9DO1FBQXBDLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBb0I7UUE5QnhFOztXQUVHO1FBQ2Esa0JBQWEsR0FBWSxJQUFJLENBQUM7UUFFOUM7O1dBRUc7UUFDSSxxQkFBZ0IsR0FBbUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLHlCQUF5QixFQUFFLENBQUM7UUFFNUc7O1dBRUc7UUFDSSx1QkFBa0IsR0FBaUYsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FDaEksU0FBUyxDQUFDLENBQUMsZUFBZSxFQUFFLEVBQUUsQ0FDMUIsSUFBSSxDQUFDLGdCQUFnQixDQUFDLGNBQWMsRUFBRSxDQUFDLElBQUksQ0FDdkMsR0FBRyxDQUFDLENBQUMsVUFBVSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLG1CQUFtQixFQUFFLEdBQUcsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUMsU0FBUyxFQUFFLEVBQUUsQ0FBQyxTQUFTLENBQUMsRUFBRSxLQUFLLEtBQUssQ0FBQyxFQUFFLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQ3pJLEdBQUcsQ0FDQyxDQUFDLGlCQUFpQixFQUFFLEVBQUUsQ0FDbEIsaUJBQWlCLEVBQUUsSUFBSSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLEtBQUssZUFBZSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFvRSxDQUM3SixDQUNKLENBQ0osQ0FDSixDQUFDO0lBT3lFLENBQUM7OzJIQXpDbkUsOEJBQThCOytHQUE5Qiw4QkFBOEIsd0pDYjNDLHVnRUFvQ0E7MkZEdkJhLDhCQUE4QjtrQkFOMUMsU0FBUzsrQkFDSSwwQkFBMEIsbUJBRW5CLHVCQUF1QixDQUFDLE1BQU07eUdBTy9CLFNBQVM7c0JBQXhCLEtBQUs7Z0JBS1UsT0FBTztzQkFBdEIsS0FBSztnQkFLVSxhQUFhO3NCQUE1QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFNjSVdhcmVob3VzZVN0b2NrQ291bnQsIFNjUHJvZHVjdCwgU2NXYXJlaG91c2UsIFNjV2FyZWhvdXNlU2VydmljZSB9IGZyb20gJ0BzbmFiY2VudHIvY2xpZW50LWNvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgbWFwLCBzd2l0Y2hNYXAgfSBmcm9tICdyeGpzJztcblxuLyoqXG4gKiDQmtC+0LzQv9C+0L3QtdC90YIg0LjQvdGE0L7RgNC80LDRhtC40Lgg0L4g0L3QsNC70LjRh9C40Lgg0YLQvtCy0LDRgNCwINC90LAg0YHQutC70LDQtNC1LlxuICovXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3NjLXByaWNlLXdhcmVob3VzZS1zdG9jaycsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3NjLXByaWNlLXdhcmVob3VzZS1zdG9jay5jb21wb25lbnQuaHRtbCcsXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgc3R5bGVVcmxzOiBbJ3NjLXByaWNlLXdhcmVob3VzZS1zdG9jay5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBTY1ByaWNlV2FyZWhvdXNlU3RvY2tDb21wb25lbnQge1xuICAgIC8qKlxuICAgICAqINCh0YLRgNC+0LrQsCDQutC70LDRgdGB0L7QsiDQtNC70Y8g0YHQstC+0LnRgdGC0LIg0YHRgtCw0YLRg9GB0L7Qsi5cbiAgICAgKi9cbiAgICBASW5wdXQoKSBwdWJsaWMgY2xhc3NMaXN0OiBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiDQmNC90YTQvtGA0LzQsNGG0LjRjyDQviDRgtC+0LLQsNGA0LUv0YPRgdC70YPQs9C1LlxuICAgICAqL1xuICAgIEBJbnB1dCgpIHB1YmxpYyBwcm9kdWN0OiBTY1Byb2R1Y3Q7XG5cbiAgICAvKipcbiAgICAgKiDQn9GA0LjQt9C90LDQuiwg0YfRgtC+INC90LXQvtCx0YXQvtC00LjQvNC+INC+0YLQvtCx0YDQsNC30LjRgtGMINC/0L7QtNGB0LrQsNC30LrRgyDQv9C+INGB0LrQu9Cw0LTQsNC8LlxuICAgICAqL1xuICAgIEBJbnB1dCgpIHB1YmxpYyB3aXRoU3RvY2tIaW50OiBib29sZWFuID0gdHJ1ZTtcblxuICAgIC8qKlxuICAgICAqIHtAbGluayBPYnNlcnZhYmxlfSDQuNC30LzQtdC90LXQvdC40Y8g0LLRi9Cx0YDQsNC90L3QvtCz0L4g0YHQutC70LDQtNCwLlxuICAgICAqL1xuICAgIHB1YmxpYyB3YXJlaG91c2VTZWxlY3QkOiBPYnNlcnZhYmxlPFNjV2FyZWhvdXNlIHwgbnVsbD4gPSB0aGlzLndhcmVob3VzZVNlcnZpY2UuZ2V0V2FyZWhvdXNlU2VsZWN0Q2hhbmdlJCgpO1xuXG4gICAgLyoqXG4gICAgICoge0BsaW5rIE9ic2VydmFibGV9INC40LfQvNC10L3QtdC90LjRjyDRgdC/0LjRgdC60LAg0YHQutC70LDQtNC+0LIuXG4gICAgICovXG4gICAgcHVibGljIHN0b2NrQnlXYXJlaG91c2VzJD86IE9ic2VydmFibGU8W1NjV2FyZWhvdXNlIHwgdW5kZWZpbmVkLCBTY0lXYXJlaG91c2VTdG9ja0NvdW50XVtdIHwgdW5kZWZpbmVkPiA9IHRoaXMud2FyZWhvdXNlU2VsZWN0JC5waXBlKFxuICAgICAgICBzd2l0Y2hNYXAoKHdhcmVob3VzZVNlbGVjdCkgPT5cbiAgICAgICAgICAgIHRoaXMud2FyZWhvdXNlU2VydmljZS5nZXRXYXJlaG91c2VzJCgpLnBpcGUoXG4gICAgICAgICAgICAgICAgbWFwKCh3YXJlaG91c2VzKSA9PiB0aGlzLnByb2R1Y3Qud2FyZWhvdXNlU3RvY2tDb3VudD8ubWFwKChzdG9jaykgPT4gW3dhcmVob3VzZXMuZmluZCgod2FyZWhvdXNlKSA9PiB3YXJlaG91c2UuaWQgPT09IHN0b2NrLmlkKSwgc3RvY2tdKSksXG4gICAgICAgICAgICAgICAgbWFwKFxuICAgICAgICAgICAgICAgICAgICAoc3RvY2tCeVdhcmVob3VzZXMpID0+XG4gICAgICAgICAgICAgICAgICAgICAgICBzdG9ja0J5V2FyZWhvdXNlcz8uc29ydCgoc3RvY2spID0+IChzdG9ja1swXT8uaWQgPT09IHdhcmVob3VzZVNlbGVjdD8uaWQgPyAtMSA6IDEpKSBhcyBbU2NXYXJlaG91c2UgfCB1bmRlZmluZWQsIFNjSVdhcmVob3VzZVN0b2NrQ291bnRdW10gfCB1bmRlZmluZWRcbiAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICApXG4gICAgICAgIClcbiAgICApO1xuXG4gICAgLyoqXG4gICAgICog0JjQvdC40YbQuNCw0LvQuNC30LjRgNGD0LXRgiDRjdC60LfQtdC80L/Qu9GP0YAg0LrQu9Cw0YHRgdCwIHtAbGluayBTY1ByaWNlV2FyZWhvdXNlU3RvY2tDb21wb25lbnR9LlxuICAgICAqXG4gICAgICogQHBhcmFtIHdhcmVob3VzZVNlcnZpY2Ug0KHQtdGA0LLQuNGBINC00LvRjyDRgNCw0LHQvtGC0Ysg0YHQviDRgdC60LvQsNC00LDQvNC4LlxuICAgICAqL1xuICAgIHB1YmxpYyBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IHdhcmVob3VzZVNlcnZpY2U6IFNjV2FyZWhvdXNlU2VydmljZSkge31cbn1cbiIsIjxuZy1jb250YWluZXIgKm5nSWY9XCJwcm9kdWN0XCI+XG4gICAgPG5nLWNvbnRhaW5lcj5cbiAgICAgICAgPGRpdiAqbmdJZj1cIndhcmVob3VzZVNlbGVjdCQgfCBhc3luYyBhcyB3YXJlaG91c2VTZWxlY3RcIiBjbGFzcz1cImZsZXggaXRlbXMtY2VudGVyIGdhcC0xXCI+XG4gICAgICAgICAgICA8c3BhbiAqbmdJZj1cInByb2R1Y3QuZ2V0Tm90U3RvY2tNZXNzYWdlKHdhcmVob3VzZVNlbGVjdCkgYXMgbWVzc2FnZVwiIGNsYXNzPVwidGV4dC14cyBtaW4tdy0yLzUgdGV4dC10dWktZXJyb3ItZmlsbFwiIFtuZ0NsYXNzXT1cImNsYXNzTGlzdFwiPiB7eyBtZXNzYWdlIH19IDwvc3Bhbj5cbiAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwicHJvZHVjdC5pc1dhcmVob3VzZVN0b2NrRXhpc3Qod2FyZWhvdXNlU2VsZWN0LmlkKVwiIGNsYXNzPVwidGV4dC14cyBtaW4tdy0yLzUgdGV4dC10dWktc3VjY2Vzcy1maWxsXCIgW25nQ2xhc3NdPVwiY2xhc3NMaXN0XCI+XG4gICAgICAgICAgICAgICAg0JIg0L3QsNC70LjRh9C40Lg8bmctY29udGFpbmVyICpuZ0lmPVwicHJvZHVjdC5nZXRXYXJlaG91c2VTdG9ja0NvdW50KHdhcmVob3VzZVNlbGVjdC5pZCkgYXMgY291bnRcIlxuICAgICAgICAgICAgICAgICAgICA+OlxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIndoaXRlc3BhY2Utbm93cmFwXCI+e3sgY291bnQgfX0ge3sgcHJvZHVjdC5xdWFudGl0eVVuaXQgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICA8c3BhbiAqbmdJZj1cInByb2R1Y3Qub25PcmRlclwiIGNsYXNzPVwidGV4dC14cyBtaW4tdy0yLzUgdGV4dC1zYy15ZWxsb3dcIiBbbmdDbGFzc109XCJjbGFzc0xpc3RcIj7Qn9C+0LQg0LfQsNC60LDQtzwvc3Bhbj5cblxuICAgICAgICAgICAgPHR1aS1zdmdcbiAgICAgICAgICAgICAgICAqbmdJZj1cIndpdGhTdG9ja0hpbnQgJiYgKHN0b2NrQnlXYXJlaG91c2VzJCB8IGFzeW5jKT8ubGVuZ3RoXCJcbiAgICAgICAgICAgICAgICBzcmM9XCJ0dWlJY29uSW5mb0xhcmdlXCJcbiAgICAgICAgICAgICAgICBbdHVpSGludF09XCJzdG9ja0hpbnRcIlxuICAgICAgICAgICAgICAgIFt0dWlIaW50U2hvd0RlbGF5XT1cIjEwMFwiXG4gICAgICAgICAgICAgICAgdHVpSGludERpcmVjdGlvbj1cInRvcFwiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCIhdGV4dC14cyAhaC0zXCJcbiAgICAgICAgICAgID48L3R1aS1zdmc+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvbmctY29udGFpbmVyPlxuPC9uZy1jb250YWluZXI+XG5cbjxuZy10ZW1wbGF0ZSAjc3RvY2tIaW50PlxuICAgIDx0YWJsZSAqbmdJZj1cIndhcmVob3VzZVNlbGVjdCQgfCBhc3luYyBhcyB3YXJlaG91c2VTZWxlY3RcIiBjbGFzcz1cInRleHQteHMgdGFibGUtYXV0b1wiIFtuZ0NsYXNzXT1cImNsYXNzTGlzdFwiPlxuICAgICAgICA8dGJvZHk+XG4gICAgICAgICAgICA8dHIgKm5nRm9yPVwibGV0IGl0ZW0gb2Ygc3RvY2tCeVdhcmVob3VzZXMkIHwgYXN5bmNcIiBjbGFzcz1cImJvcmRlci1iXCIgW2NsYXNzLnRleHQtdHVpLXByaW1hcnldPVwid2FyZWhvdXNlU2VsZWN0ID09PSBpdGVtWzBdXCI+XG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPVwicHgtMVwiPnt7IGl0ZW1bMF0/Lm5hbWUgfX06PC90ZD5cbiAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPVwicHgtMVwiPnt7IGl0ZW1bMV0uY291bnQgPyBpdGVtWzFdLmNvdW50ICsgJyAnICsgcHJvZHVjdC5xdWFudGl0eVVuaXQgOiAn0JIg0L3QsNC70LjRh9C40LgnIH19PC90ZD5cbiAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgIDwvdHI+XG4gICAgICAgIDwvdGJvZHk+XG4gICAgPC90YWJsZT5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
|
@@ -0,0 +1,88 @@
|
|
1
|
+
import { NgModule } from '@angular/core';
|
2
|
+
import { CommonModule } from '@angular/common';
|
3
|
+
import { ScCategoryCardComponent } from './category-card/sc-category-card.component';
|
4
|
+
import { RouterModule } from '@angular/router';
|
5
|
+
import { TuiButtonModule, TuiHintModule, TuiLabelModule, TuiLinkModule, TuiLoaderModule, TuiModeModule, TuiSvgModule, TuiTextfieldControllerModule } from '@taiga-ui/core';
|
6
|
+
import { ScFavoriteBtnComponent } from './sc-favorite-btn/sc-favorite-btn.component';
|
7
|
+
import { TuiElasticContainerModule, TuiFieldErrorPipeModule, TuiInputNumberModule, TuiIslandModule } from '@taiga-ui/kit';
|
8
|
+
import { ScInputQuantityComponent } from './input-quantity/sc-input-quantity.component';
|
9
|
+
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
|
10
|
+
import { ScPriceCardComponent } from './price-card/sc-price-card.component';
|
11
|
+
import { ScPriceWarehouseStockComponent } from './price-warehouse-stock/sc-price-warehouse-stock.component';
|
12
|
+
import { ScPriceHistoryComponent } from './price-history/sc-price-history.component';
|
13
|
+
import * as echarts from 'echarts/core';
|
14
|
+
import { LineChart } from 'echarts/charts';
|
15
|
+
import { TitleComponent, TooltipComponent, GridComponent } from 'echarts/components';
|
16
|
+
import { SVGRenderer } from 'echarts/renderers';
|
17
|
+
import { NgxEchartsModule } from 'ngx-echarts';
|
18
|
+
import scLangRU from './price-history/sc-lang-RU';
|
19
|
+
import * as i0 from "@angular/core";
|
20
|
+
import * as i1 from "ngx-echarts";
|
21
|
+
echarts.registerLocale('RU', scLangRU);
|
22
|
+
echarts.use([TitleComponent, TooltipComponent, GridComponent, LineChart, SVGRenderer]);
|
23
|
+
/**
|
24
|
+
* Модуль каталога.
|
25
|
+
*/
|
26
|
+
export class ScCatalogModule {
|
27
|
+
}
|
28
|
+
ScCatalogModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ScCatalogModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
29
|
+
ScCatalogModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: ScCatalogModule, declarations: [ScCategoryCardComponent, ScFavoriteBtnComponent, ScInputQuantityComponent, ScPriceCardComponent, ScPriceWarehouseStockComponent, ScPriceHistoryComponent], imports: [CommonModule,
|
30
|
+
RouterModule,
|
31
|
+
TuiButtonModule,
|
32
|
+
TuiSvgModule,
|
33
|
+
TuiIslandModule,
|
34
|
+
TuiInputNumberModule,
|
35
|
+
TuiLabelModule,
|
36
|
+
TuiTextfieldControllerModule,
|
37
|
+
FormsModule,
|
38
|
+
ReactiveFormsModule,
|
39
|
+
TuiHintModule,
|
40
|
+
TuiModeModule,
|
41
|
+
TuiFieldErrorPipeModule,
|
42
|
+
TuiLoaderModule,
|
43
|
+
TuiLinkModule,
|
44
|
+
TuiElasticContainerModule, i1.NgxEchartsModule], exports: [ScCategoryCardComponent, ScFavoriteBtnComponent, ScInputQuantityComponent, ScPriceCardComponent, ScPriceWarehouseStockComponent, ScPriceHistoryComponent] });
|
45
|
+
ScCatalogModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ScCatalogModule, imports: [CommonModule,
|
46
|
+
RouterModule,
|
47
|
+
TuiButtonModule,
|
48
|
+
TuiSvgModule,
|
49
|
+
TuiIslandModule,
|
50
|
+
TuiInputNumberModule,
|
51
|
+
TuiLabelModule,
|
52
|
+
TuiTextfieldControllerModule,
|
53
|
+
FormsModule,
|
54
|
+
ReactiveFormsModule,
|
55
|
+
TuiHintModule,
|
56
|
+
TuiModeModule,
|
57
|
+
TuiFieldErrorPipeModule,
|
58
|
+
TuiLoaderModule,
|
59
|
+
TuiLinkModule,
|
60
|
+
TuiElasticContainerModule,
|
61
|
+
NgxEchartsModule.forRoot({ echarts })] });
|
62
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ScCatalogModule, decorators: [{
|
63
|
+
type: NgModule,
|
64
|
+
args: [{
|
65
|
+
declarations: [ScCategoryCardComponent, ScFavoriteBtnComponent, ScInputQuantityComponent, ScPriceCardComponent, ScPriceWarehouseStockComponent, ScPriceHistoryComponent],
|
66
|
+
exports: [ScCategoryCardComponent, ScFavoriteBtnComponent, ScInputQuantityComponent, ScPriceCardComponent, ScPriceWarehouseStockComponent, ScPriceHistoryComponent],
|
67
|
+
imports: [
|
68
|
+
CommonModule,
|
69
|
+
RouterModule,
|
70
|
+
TuiButtonModule,
|
71
|
+
TuiSvgModule,
|
72
|
+
TuiIslandModule,
|
73
|
+
TuiInputNumberModule,
|
74
|
+
TuiLabelModule,
|
75
|
+
TuiTextfieldControllerModule,
|
76
|
+
FormsModule,
|
77
|
+
ReactiveFormsModule,
|
78
|
+
TuiHintModule,
|
79
|
+
TuiModeModule,
|
80
|
+
TuiFieldErrorPipeModule,
|
81
|
+
TuiLoaderModule,
|
82
|
+
TuiLinkModule,
|
83
|
+
TuiElasticContainerModule,
|
84
|
+
NgxEchartsModule.forRoot({ echarts }),
|
85
|
+
],
|
86
|
+
}]
|
87
|
+
}] });
|
88
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2MtY2F0YWxvZy5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jbGllbnQtdWkvY2F0YWxvZy9zYy1jYXRhbG9nLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUNyRixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQUUsY0FBYyxFQUFFLGFBQWEsRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFFLFlBQVksRUFBRSw0QkFBNEIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzNLLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBQ3JGLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSx1QkFBdUIsRUFBRSxvQkFBb0IsRUFBRSxlQUFlLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUgsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFDeEYsT0FBTyxFQUFFLFdBQVcsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQzVFLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLDREQUE0RCxDQUFDO0FBQzVHLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQ3JGLE9BQU8sS0FBSyxPQUFPLE1BQU0sY0FBYyxDQUFDO0FBQ3hDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzQyxPQUFPLEVBQUUsY0FBYyxFQUFFLGdCQUFnQixFQUFFLGFBQWEsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3JGLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNoRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDL0MsT0FBTyxRQUFRLE1BQU0sNEJBQTRCLENBQUM7OztBQUVsRCxPQUFPLENBQUMsY0FBYyxDQUFDLElBQUksRUFBRSxRQUFRLENBQUMsQ0FBQztBQUN2QyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsY0FBYyxFQUFFLGdCQUFnQixFQUFFLGFBQWEsRUFBRSxTQUFTLEVBQUUsV0FBVyxDQUFDLENBQUMsQ0FBQztBQUV2Rjs7R0FFRztBQXdCSCxNQUFNLE9BQU8sZUFBZTs7NEdBQWYsZUFBZTs2R0FBZixlQUFlLGlCQXRCVCx1QkFBdUIsRUFBRSxzQkFBc0IsRUFBRSx3QkFBd0IsRUFBRSxvQkFBb0IsRUFBRSw4QkFBOEIsRUFBRSx1QkFBdUIsYUFHbkssWUFBWTtRQUNaLFlBQVk7UUFDWixlQUFlO1FBQ2YsWUFBWTtRQUNaLGVBQWU7UUFDZixvQkFBb0I7UUFDcEIsY0FBYztRQUNkLDRCQUE0QjtRQUM1QixXQUFXO1FBQ1gsbUJBQW1CO1FBQ25CLGFBQWE7UUFDYixhQUFhO1FBQ2IsdUJBQXVCO1FBQ3ZCLGVBQWU7UUFDZixhQUFhO1FBQ2IseUJBQXlCLGtDQWpCbkIsdUJBQXVCLEVBQUUsc0JBQXNCLEVBQUUsd0JBQXdCLEVBQUUsb0JBQW9CLEVBQUUsOEJBQThCLEVBQUUsdUJBQXVCOzZHQXFCekosZUFBZSxZQW5CcEIsWUFBWTtRQUNaLFlBQVk7UUFDWixlQUFlO1FBQ2YsWUFBWTtRQUNaLGVBQWU7UUFDZixvQkFBb0I7UUFDcEIsY0FBYztRQUNkLDRCQUE0QjtRQUM1QixXQUFXO1FBQ1gsbUJBQW1CO1FBQ25CLGFBQWE7UUFDYixhQUFhO1FBQ2IsdUJBQXVCO1FBQ3ZCLGVBQWU7UUFDZixhQUFhO1FBQ2IseUJBQXlCO1FBQ3pCLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxFQUFFLE9BQU8sRUFBRSxDQUFDOzJGQUdoQyxlQUFlO2tCQXZCM0IsUUFBUTttQkFBQztvQkFDTixZQUFZLEVBQUUsQ0FBQyx1QkFBdUIsRUFBRSxzQkFBc0IsRUFBRSx3QkFBd0IsRUFBRSxvQkFBb0IsRUFBRSw4QkFBOEIsRUFBRSx1QkFBdUIsQ0FBQztvQkFDeEssT0FBTyxFQUFFLENBQUMsdUJBQXVCLEVBQUUsc0JBQXNCLEVBQUUsd0JBQXdCLEVBQUUsb0JBQW9CLEVBQUUsOEJBQThCLEVBQUUsdUJBQXVCLENBQUM7b0JBQ25LLE9BQU8sRUFBRTt3QkFDTCxZQUFZO3dCQUNaLFlBQVk7d0JBQ1osZUFBZTt3QkFDZixZQUFZO3dCQUNaLGVBQWU7d0JBQ2Ysb0JBQW9CO3dCQUNwQixjQUFjO3dCQUNkLDRCQUE0Qjt3QkFDNUIsV0FBVzt3QkFDWCxtQkFBbUI7d0JBQ25CLGFBQWE7d0JBQ2IsYUFBYTt3QkFDYix1QkFBdUI7d0JBQ3ZCLGVBQWU7d0JBQ2YsYUFBYTt3QkFDYix5QkFBeUI7d0JBQ3pCLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxFQUFFLE9BQU8sRUFBRSxDQUFDO3FCQUN4QztpQkFDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgU2NDYXRlZ29yeUNhcmRDb21wb25lbnQgfSBmcm9tICcuL2NhdGVnb3J5LWNhcmQvc2MtY2F0ZWdvcnktY2FyZC5jb21wb25lbnQnO1xuaW1wb3J0IHsgUm91dGVyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IFR1aUJ1dHRvbk1vZHVsZSwgVHVpSGludE1vZHVsZSwgVHVpTGFiZWxNb2R1bGUsIFR1aUxpbmtNb2R1bGUsIFR1aUxvYWRlck1vZHVsZSwgVHVpTW9kZU1vZHVsZSwgVHVpU3ZnTW9kdWxlLCBUdWlUZXh0ZmllbGRDb250cm9sbGVyTW9kdWxlIH0gZnJvbSAnQHRhaWdhLXVpL2NvcmUnO1xuaW1wb3J0IHsgU2NGYXZvcml0ZUJ0bkNvbXBvbmVudCB9IGZyb20gJy4vc2MtZmF2b3JpdGUtYnRuL3NjLWZhdm9yaXRlLWJ0bi5jb21wb25lbnQnO1xuaW1wb3J0IHsgVHVpRWxhc3RpY0NvbnRhaW5lck1vZHVsZSwgVHVpRmllbGRFcnJvclBpcGVNb2R1bGUsIFR1aUlucHV0TnVtYmVyTW9kdWxlLCBUdWlJc2xhbmRNb2R1bGUgfSBmcm9tICdAdGFpZ2EtdWkva2l0JztcbmltcG9ydCB7IFNjSW5wdXRRdWFudGl0eUNvbXBvbmVudCB9IGZyb20gJy4vaW5wdXQtcXVhbnRpdHkvc2MtaW5wdXQtcXVhbnRpdHkuY29tcG9uZW50JztcbmltcG9ydCB7IEZvcm1zTW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgU2NQcmljZUNhcmRDb21wb25lbnQgfSBmcm9tICcuL3ByaWNlLWNhcmQvc2MtcHJpY2UtY2FyZC5jb21wb25lbnQnO1xuaW1wb3J0IHsgU2NQcmljZVdhcmVob3VzZVN0b2NrQ29tcG9uZW50IH0gZnJvbSAnLi9wcmljZS13YXJlaG91c2Utc3RvY2svc2MtcHJpY2Utd2FyZWhvdXNlLXN0b2NrLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTY1ByaWNlSGlzdG9yeUNvbXBvbmVudCB9IGZyb20gJy4vcHJpY2UtaGlzdG9yeS9zYy1wcmljZS1oaXN0b3J5LmNvbXBvbmVudCc7XG5pbXBvcnQgKiBhcyBlY2hhcnRzIGZyb20gJ2VjaGFydHMvY29yZSc7XG5pbXBvcnQgeyBMaW5lQ2hhcnQgfSBmcm9tICdlY2hhcnRzL2NoYXJ0cyc7XG5pbXBvcnQgeyBUaXRsZUNvbXBvbmVudCwgVG9vbHRpcENvbXBvbmVudCwgR3JpZENvbXBvbmVudCB9IGZyb20gJ2VjaGFydHMvY29tcG9uZW50cyc7XG5pbXBvcnQgeyBTVkdSZW5kZXJlciB9IGZyb20gJ2VjaGFydHMvcmVuZGVyZXJzJztcbmltcG9ydCB7IE5neEVjaGFydHNNb2R1bGUgfSBmcm9tICduZ3gtZWNoYXJ0cyc7XG5pbXBvcnQgc2NMYW5nUlUgZnJvbSAnLi9wcmljZS1oaXN0b3J5L3NjLWxhbmctUlUnO1xuXG5lY2hhcnRzLnJlZ2lzdGVyTG9jYWxlKCdSVScsIHNjTGFuZ1JVKTtcbmVjaGFydHMudXNlKFtUaXRsZUNvbXBvbmVudCwgVG9vbHRpcENvbXBvbmVudCwgR3JpZENvbXBvbmVudCwgTGluZUNoYXJ0LCBTVkdSZW5kZXJlcl0pO1xuXG4vKipcbiAqINCc0L7QtNGD0LvRjCDQutCw0YLQsNC70L7Qs9CwLlxuICovXG5ATmdNb2R1bGUoe1xuICAgIGRlY2xhcmF0aW9uczogW1NjQ2F0ZWdvcnlDYXJkQ29tcG9uZW50LCBTY0Zhdm9yaXRlQnRuQ29tcG9uZW50LCBTY0lucHV0UXVhbnRpdHlDb21wb25lbnQsIFNjUHJpY2VDYXJkQ29tcG9uZW50LCBTY1ByaWNlV2FyZWhvdXNlU3RvY2tDb21wb25lbnQsIFNjUHJpY2VIaXN0b3J5Q29tcG9uZW50XSxcbiAgICBleHBvcnRzOiBbU2NDYXRlZ29yeUNhcmRDb21wb25lbnQsIFNjRmF2b3JpdGVCdG5Db21wb25lbnQsIFNjSW5wdXRRdWFudGl0eUNvbXBvbmVudCwgU2NQcmljZUNhcmRDb21wb25lbnQsIFNjUHJpY2VXYXJlaG91c2VTdG9ja0NvbXBvbmVudCwgU2NQcmljZUhpc3RvcnlDb21wb25lbnRdLFxuICAgIGltcG9ydHM6IFtcbiAgICAgICAgQ29tbW9uTW9kdWxlLFxuICAgICAgICBSb3V0ZXJNb2R1bGUsXG4gICAgICAgIFR1aUJ1dHRvbk1vZHVsZSxcbiAgICAgICAgVHVpU3ZnTW9kdWxlLFxuICAgICAgICBUdWlJc2xhbmRNb2R1bGUsXG4gICAgICAgIFR1aUlucHV0TnVtYmVyTW9kdWxlLFxuICAgICAgICBUdWlMYWJlbE1vZHVsZSxcbiAgICAgICAgVHVpVGV4dGZpZWxkQ29udHJvbGxlck1vZHVsZSxcbiAgICAgICAgRm9ybXNNb2R1bGUsXG4gICAgICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG4gICAgICAgIFR1aUhpbnRNb2R1bGUsXG4gICAgICAgIFR1aU1vZGVNb2R1bGUsXG4gICAgICAgIFR1aUZpZWxkRXJyb3JQaXBlTW9kdWxlLFxuICAgICAgICBUdWlMb2FkZXJNb2R1bGUsXG4gICAgICAgIFR1aUxpbmtNb2R1bGUsXG4gICAgICAgIFR1aUVsYXN0aWNDb250YWluZXJNb2R1bGUsXG4gICAgICAgIE5neEVjaGFydHNNb2R1bGUuZm9yUm9vdCh7IGVjaGFydHMgfSksXG4gICAgXSxcbn0pXG5leHBvcnQgY2xhc3MgU2NDYXRhbG9nTW9kdWxlIHt9XG4iXX0=
|
@@ -0,0 +1,24 @@
|
|
1
|
+
import { ChangeDetectionStrategy, Component, EventEmitter, Output } from '@angular/core';
|
2
|
+
import * as i0 from "@angular/core";
|
3
|
+
import * as i1 from "@taiga-ui/core";
|
4
|
+
// TODO: TASK[#6771]: Реализовать кнопку избранных товаров.
|
5
|
+
/**
|
6
|
+
* Компонент кнопки избранных товаров и категорий.
|
7
|
+
*/
|
8
|
+
export class ScFavoriteBtnComponent {
|
9
|
+
constructor() {
|
10
|
+
/**
|
11
|
+
* Событие нажатия на кнопку.
|
12
|
+
*/
|
13
|
+
this.clickEvent = new EventEmitter();
|
14
|
+
}
|
15
|
+
}
|
16
|
+
ScFavoriteBtnComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ScFavoriteBtnComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
17
|
+
ScFavoriteBtnComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: ScFavoriteBtnComponent, selector: "sc-favorite-btn", outputs: { clickEvent: "clickEvent" }, ngImport: i0, template: "<button tuiIconButton (click)=\"clickEvent.emit()\" appearance=\"flat\" size=\"s\">\n <tui-svg class=\"text-tui-primary\" src=\"tuiIconBookmarkLarge\"></tui-svg>\n</button>\n", dependencies: [{ kind: "component", type: i1.TuiButtonComponent, selector: "button[tuiButton], button[tuiIconButton], a[tuiButton], a[tuiIconButton]", inputs: ["appearance", "disabled", "icon", "iconRight", "shape", "showLoader", "size"] }, { kind: "component", type: i1.TuiSvgComponent, selector: "tui-svg", inputs: ["src"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
18
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ScFavoriteBtnComponent, decorators: [{
|
19
|
+
type: Component,
|
20
|
+
args: [{ selector: 'sc-favorite-btn', changeDetection: ChangeDetectionStrategy.OnPush, template: "<button tuiIconButton (click)=\"clickEvent.emit()\" appearance=\"flat\" size=\"s\">\n <tui-svg class=\"text-tui-primary\" src=\"tuiIconBookmarkLarge\"></tui-svg>\n</button>\n" }]
|
21
|
+
}], propDecorators: { clickEvent: [{
|
22
|
+
type: Output
|
23
|
+
}] } });
|
24
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2MtZmF2b3JpdGUtYnRuLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NsaWVudC11aS9jYXRhbG9nL3NjLWZhdm9yaXRlLWJ0bi9zYy1mYXZvcml0ZS1idG4uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2xpZW50LXVpL2NhdGFsb2cvc2MtZmF2b3JpdGUtYnRuL3NjLWZhdm9yaXRlLWJ0bi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7OztBQUV6RiwyREFBMkQ7QUFDM0Q7O0dBRUc7QUFNSCxNQUFNLE9BQU8sc0JBQXNCO0lBTG5DO1FBTUk7O1dBRUc7UUFFSSxlQUFVLEdBQXVCLElBQUksWUFBWSxFQUFRLENBQUM7S0FDcEU7O21IQU5ZLHNCQUFzQjt1R0FBdEIsc0JBQXNCLDhGQ1huQyxtTEFHQTsyRkRRYSxzQkFBc0I7a0JBTGxDLFNBQVM7K0JBQ0ksaUJBQWlCLG1CQUVWLHVCQUF1QixDQUFDLE1BQU07OEJBT3hDLFVBQVU7c0JBRGhCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG4vLyBUT0RPOiBUQVNLWyM2NzcxXTog0KDQtdCw0LvQuNC30L7QstCw0YLRjCDQutC90L7Qv9C60YMg0LjQt9Cx0YDQsNC90L3Ri9GFINGC0L7QstCw0YDQvtCyLlxuLyoqXG4gKiDQmtC+0LzQv9C+0L3QtdC90YIg0LrQvdC+0L/QutC4INC40LfQsdGA0LDQvdC90YvRhSDRgtC+0LLQsNGA0L7QsiDQuCDQutCw0YLQtdCz0L7RgNC40LkuXG4gKi9cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnc2MtZmF2b3JpdGUtYnRuJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vc2MtZmF2b3JpdGUtYnRuLmNvbXBvbmVudC5odG1sJyxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgU2NGYXZvcml0ZUJ0bkNvbXBvbmVudCB7XG4gICAgLyoqXG4gICAgICog0KHQvtCx0YvRgtC40LUg0L3QsNC20LDRgtC40Y8g0L3QsCDQutC90L7Qv9C60YMuXG4gICAgICovXG4gICAgQE91dHB1dCgpXG4gICAgcHVibGljIGNsaWNrRXZlbnQ6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcbn1cbiIsIjxidXR0b24gdHVpSWNvbkJ1dHRvbiAoY2xpY2spPVwiY2xpY2tFdmVudC5lbWl0KClcIiBhcHBlYXJhbmNlPVwiZmxhdFwiIHNpemU9XCJzXCI+XG4gICAgPHR1aS1zdmcgY2xhc3M9XCJ0ZXh0LXR1aS1wcmltYXJ5XCIgc3JjPVwidHVpSWNvbkJvb2ttYXJrTGFyZ2VcIj48L3R1aS1zdmc+XG48L2J1dHRvbj5cbiJdfQ==
|
@@ -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;min-height:var(--tui-height-s);display:flex;align-items:center;padding:.5rem;margin:.5rem 0;border-radius:12px;background:var(--tui-base-03)}:host._expandable:hover{cursor:pointer;background:var(--tui-base-03)}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;min-height:var(--tui-height-s);display:flex;align-items:center;padding:.5rem;margin:.5rem 0;border-radius:12px;background:var(--tui-base-03)}:host._expandable:hover{cursor:pointer;background:var(--tui-base-03)}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
|