@wizishop/img-manager 15.2.59 → 15.2.61
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/assets/i18n/en.json +1 -1
- package/assets/i18n/es.json +1 -1
- package/assets/i18n/fr.json +1 -1
- package/assets/i18n/it.json +1 -1
- package/esm2020/lib/components/images-view/images-actions-handler.mjs +1 -4
- package/esm2020/lib/components/images-view/mosaic-view/img-card/img-card.component.mjs +3 -3
- package/esm2020/lib/components/images-view/table-view/table-view.component.mjs +3 -3
- package/esm2020/lib/components/img-editor/img-editor.component.mjs +7 -44
- package/esm2020/lib/components/img-tabs/img-tabs.component.mjs +3 -12
- package/esm2020/lib/dto/img-manager.dto.mjs +1 -1
- package/esm2020/lib/services/api.service.mjs +1 -1
- package/esm2020/lib/services/img-event.service.mjs +1 -8
- package/esm2020/lib/services/rename-picture.service.mjs +1 -4
- package/esm2020/lib/wz-img-manager.module.mjs +1 -7
- package/fesm2015/wizishop-img-manager.mjs +9 -257
- package/fesm2015/wizishop-img-manager.mjs.map +1 -1
- package/fesm2020/wizishop-img-manager.mjs +9 -256
- package/fesm2020/wizishop-img-manager.mjs.map +1 -1
- package/lib/components/images-view/images-actions-handler.d.ts +0 -1
- package/lib/components/img-editor/img-editor.component.d.ts +1 -8
- package/lib/components/img-tabs/img-tabs.component.d.ts +0 -1
- package/lib/dto/img-manager.dto.d.ts +0 -1
- package/lib/services/api.service.d.ts +0 -1
- package/lib/services/img-event.service.d.ts +0 -3
- package/lib/services/rename-picture.service.d.ts +0 -1
- package/lib/wz-img-manager.module.d.ts +44 -46
- package/package.json +1 -1
- package/wizishop-img-manager-15.2.61.tgz +0 -0
- package/wz-img-manager.scss +2 -183
- package/esm2020/lib/components/img-editor/info-video/info-video.component.mjs +0 -62
- package/esm2020/lib/components/img-editor/show-iframe/show-iframe.component.mjs +0 -54
- package/esm2020/lib/services/video-info.service.mjs +0 -87
- package/lib/components/img-editor/info-video/info-video.component.d.ts +0 -20
- package/lib/components/img-editor/show-iframe/show-iframe.component.d.ts +0 -15
- package/lib/services/video-info.service.d.ts +0 -23
- package/wizishop-img-manager-15.2.59.tgz +0 -0
|
@@ -44,7 +44,6 @@ export declare abstract class ImagesActionHandler {
|
|
|
44
44
|
/** Event emit each time filters change */
|
|
45
45
|
onFiltersChange(): void;
|
|
46
46
|
onEdit(picture: ImgPictureDTO): void;
|
|
47
|
-
redirectToVideo(picture: ImgPictureDTO): void;
|
|
48
47
|
copyLink(file_name: string): void;
|
|
49
48
|
onToggleSelectImg(index: number): void;
|
|
50
49
|
onRemoveImg(picture: ImgPictureDTO): void;
|
|
@@ -8,18 +8,12 @@ export declare class ImgEditorComponent implements OnInit {
|
|
|
8
8
|
private renamePictureService;
|
|
9
9
|
stateDisplayed: any;
|
|
10
10
|
imgToEdit: ImgPictureDTO;
|
|
11
|
-
set isVideoEdit(value: boolean);
|
|
12
|
-
get isVideoEdit(): boolean;
|
|
13
|
-
private _isVideoEdit;
|
|
14
11
|
editClosed: EventEmitter<any>;
|
|
15
12
|
isLoading: boolean;
|
|
16
13
|
isImgModified: boolean;
|
|
17
14
|
isNameModified: boolean;
|
|
18
15
|
currentCroppedImage: string;
|
|
19
16
|
private previousName;
|
|
20
|
-
isEditorLinkActive: boolean;
|
|
21
|
-
isVideoModified: boolean;
|
|
22
|
-
private previousVideoLink;
|
|
23
17
|
msgFailSave: string;
|
|
24
18
|
msgFailLoad: string;
|
|
25
19
|
msgSuccessEdit: string;
|
|
@@ -30,8 +24,7 @@ export declare class ImgEditorComponent implements OnInit {
|
|
|
30
24
|
onRestartEdit(): void;
|
|
31
25
|
onCancel(): void;
|
|
32
26
|
onImgCropped(imgBase64: string): void;
|
|
33
|
-
onDeleteVideo(): void;
|
|
34
27
|
private renameAndReplaceImg;
|
|
35
28
|
static ɵfac: i0.ɵɵFactoryDeclaration<ImgEditorComponent, never>;
|
|
36
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<ImgEditorComponent, "img-editor", never, { "stateDisplayed": "stateDisplayed"; "imgToEdit": "imgToEdit";
|
|
29
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<ImgEditorComponent, "img-editor", never, { "stateDisplayed": "stateDisplayed"; "imgToEdit": "imgToEdit"; }, { "editClosed": "editClosed"; }, never, never, false, never>;
|
|
37
30
|
}
|
|
@@ -23,7 +23,6 @@ export declare class ImgTabsComponent implements OnInit {
|
|
|
23
23
|
editTab: boolean;
|
|
24
24
|
imgToEdit: ImgPictureDTO;
|
|
25
25
|
imgUpload: boolean;
|
|
26
|
-
isVideoEdit: boolean;
|
|
27
26
|
imgUploadedComponent: UploadListComponent;
|
|
28
27
|
snackBarNewVersionConfig: NwbSnackbarConfig;
|
|
29
28
|
constructor(imgEventEditService: ImgEventService, alertService: AlertService, route: Router);
|
|
@@ -21,7 +21,6 @@ export declare abstract class ApiService {
|
|
|
21
21
|
abstract uploadFileByUrl(url: string, fileName?: string): Observable<ImgPictureDTO>;
|
|
22
22
|
abstract replaceImg(imageBase64: string, id_file: string): Observable<ImgPictureDTO>;
|
|
23
23
|
abstract changeImgName(fileName: string, id_file: string): Observable<ImgPictureDTO>;
|
|
24
|
-
abstract changeVideoLink(videoLink: string, id_file: string): Observable<ImgPictureDTO>;
|
|
25
24
|
abstract removeImg(id_file: string): Observable<ImgPictureDTO>;
|
|
26
25
|
abstract removeMultipleImg(id_array: string[]): Observable<ImgPictureDTO[]>;
|
|
27
26
|
static ɵfac: i0.ɵɵFactoryDeclaration<ApiService, never>;
|
|
@@ -4,13 +4,10 @@ import * as i0 from "@angular/core";
|
|
|
4
4
|
export declare class ImgEventService {
|
|
5
5
|
imgRemoved$: BehaviorSubject<string>;
|
|
6
6
|
private imgToEditEvent;
|
|
7
|
-
private imgToVideoEvent;
|
|
8
7
|
private imgAdded;
|
|
9
8
|
private listDisplayedChange;
|
|
10
9
|
emitImgToEdit(imgToEdit: ImgPictureDTO): void;
|
|
11
|
-
emitImgToVideo(imgToEdit: ImgPictureDTO): void;
|
|
12
10
|
getImgToEditEventListener(): import("rxjs").Observable<ImgPictureDTO>;
|
|
13
|
-
getImgToVideoEventListener(): import("rxjs").Observable<ImgPictureDTO>;
|
|
14
11
|
emitImgAdded(id_file: string): void;
|
|
15
12
|
getImgAddedEventListner(): import("rxjs").Observable<string>;
|
|
16
13
|
emitlistDisplayedChange(value: boolean): void;
|
|
@@ -14,7 +14,6 @@ export declare class RenamePictureService {
|
|
|
14
14
|
private msgImgNameSaved;
|
|
15
15
|
constructor(apiService: ApiService, alertService: AlertService, imgManagerService: ImgManagerService);
|
|
16
16
|
setPicturesList(picturesList: ImgPictureDTO[]): void;
|
|
17
|
-
changeVideoLink(videoLink: string, idFile: string): import("rxjs").Observable<ImgPictureDTO>;
|
|
18
17
|
renamePicture(pictureNameUpdate: PictureNameUpdate): void;
|
|
19
18
|
changeImageName(name: string, idFile: string): import("rxjs").Observable<ImgPictureDTO>;
|
|
20
19
|
private getPictureById;
|
|
@@ -8,54 +8,52 @@ import * as i5 from "./components/images-view/mosaic-view/img-card/img-card.comp
|
|
|
8
8
|
import * as i6 from "./components/upload-list/upload-list.component";
|
|
9
9
|
import * as i7 from "./components/img-editor/img-editor.component";
|
|
10
10
|
import * as i8 from "./components/img-editor/info-section/info-section.component";
|
|
11
|
-
import * as i9 from "./components/
|
|
12
|
-
import * as i10 from "./components/img-
|
|
13
|
-
import * as i11 from "./components/
|
|
14
|
-
import * as i12 from "./components/
|
|
15
|
-
import * as i13 from "./components/
|
|
16
|
-
import * as i14 from "./components/
|
|
17
|
-
import * as i15 from "./components/
|
|
18
|
-
import * as i16 from "./components/images-view/
|
|
19
|
-
import * as i17 from "./components/
|
|
20
|
-
import * as i18 from "./components/
|
|
21
|
-
import * as i19 from "./components/shared/
|
|
22
|
-
import * as i20 from "./components/shared/
|
|
23
|
-
import * as i21 from "./components/shared/
|
|
24
|
-
import * as i22 from "./components/shared/
|
|
25
|
-
import * as i23 from "./components/shared/
|
|
26
|
-
import * as i24 from "./
|
|
27
|
-
import * as i25 from "./
|
|
28
|
-
import * as i26 from "./directives/
|
|
29
|
-
import * as i27 from "./directives/
|
|
30
|
-
import * as i28 from "./directives/
|
|
31
|
-
import * as i29 from "./directives/
|
|
32
|
-
import * as i30 from "./directives/table/
|
|
33
|
-
import * as i31 from "./directives/table/
|
|
34
|
-
import * as i32 from "./directives/
|
|
35
|
-
import * as i33 from "./directives/
|
|
36
|
-
import * as i34 from "./directives/
|
|
37
|
-
import * as i35 from "./
|
|
38
|
-
import * as i36 from "./
|
|
39
|
-
import * as i37 from "./pipes/pagination/
|
|
40
|
-
import * as i38 from "./pipes/
|
|
41
|
-
import * as i39 from "./pipes/
|
|
42
|
-
import * as i40 from "./pipes/
|
|
43
|
-
import * as i41 from "./pipes/
|
|
44
|
-
import * as i42 from "
|
|
45
|
-
import * as i43 from "
|
|
46
|
-
import * as i44 from "@angular/
|
|
47
|
-
import * as i45 from "
|
|
48
|
-
import * as i46 from "
|
|
49
|
-
import * as i47 from "
|
|
50
|
-
import * as i48 from "ngx-
|
|
51
|
-
import * as i49 from "@
|
|
52
|
-
import * as i50 from "
|
|
53
|
-
import * as i51 from "@
|
|
54
|
-
import * as i52 from "@angular/cdk/drag-drop";
|
|
55
|
-
import * as i53 from "@ngx-translate/core";
|
|
11
|
+
import * as i9 from "./components/canva-btn/canva-btn.component";
|
|
12
|
+
import * as i10 from "./components/img-selection/img-selection.component";
|
|
13
|
+
import * as i11 from "./components/loader/loader.component";
|
|
14
|
+
import * as i12 from "./components/shared/dropdown/dropdown.component";
|
|
15
|
+
import * as i13 from "./components/img-editor/cropper/cropper.component";
|
|
16
|
+
import * as i14 from "./components/images-view/images-view.component";
|
|
17
|
+
import * as i15 from "./components/images-view/mosaic-view/mosaic-view.component";
|
|
18
|
+
import * as i16 from "./components/images-view/table-view/table-view.component";
|
|
19
|
+
import * as i17 from "./components/shared/table/table.component";
|
|
20
|
+
import * as i18 from "./components/shared/input-search/input-search.component";
|
|
21
|
+
import * as i19 from "./components/shared/pagination/pagination.component";
|
|
22
|
+
import * as i20 from "./components/shared/checkbox/checkbox.component";
|
|
23
|
+
import * as i21 from "./components/shared/alert/alert.component";
|
|
24
|
+
import * as i22 from "./components/shared/pagination/page-selector/page-selector.component";
|
|
25
|
+
import * as i23 from "./components/shared/select/select.component";
|
|
26
|
+
import * as i24 from "./directives/drag-drop.directive";
|
|
27
|
+
import * as i25 from "./directives/loading.directive";
|
|
28
|
+
import * as i26 from "./directives/auto-hide.directive";
|
|
29
|
+
import * as i27 from "./directives/copy-to-clipboard.directive";
|
|
30
|
+
import * as i28 from "./directives/table/column.directive";
|
|
31
|
+
import * as i29 from "./directives/table/checkBoxRow.directive";
|
|
32
|
+
import * as i30 from "./directives/table/columnHeader.directive";
|
|
33
|
+
import * as i31 from "./directives/table/raw.directive";
|
|
34
|
+
import * as i32 from "./directives/abstract-debounce/abstract-debounce.directive";
|
|
35
|
+
import * as i33 from "./directives/abstract-debounce/debounce-keyup.directive";
|
|
36
|
+
import * as i34 from "./directives/zindex-toggle.directive";
|
|
37
|
+
import * as i35 from "./pipes/pagination/array-total-pages/array-pages.pipe";
|
|
38
|
+
import * as i36 from "./pipes/pagination/total-pages/is-last-page.pipe";
|
|
39
|
+
import * as i37 from "./pipes/pagination/text/custom-text.pipe";
|
|
40
|
+
import * as i38 from "./pipes/images/img-src.pipe";
|
|
41
|
+
import * as i39 from "./pipes/number-to-array.pipe";
|
|
42
|
+
import * as i40 from "./pipes/pagination/large-number-of-page/large-number-of-page.pipe";
|
|
43
|
+
import * as i41 from "./pipes/select/select-filters.pipe";
|
|
44
|
+
import * as i42 from "@angular/common";
|
|
45
|
+
import * as i43 from "@angular/common/http";
|
|
46
|
+
import * as i44 from "@angular/forms";
|
|
47
|
+
import * as i45 from "ngx-scrollbar";
|
|
48
|
+
import * as i46 from "ngx-scrollbar/reached-event";
|
|
49
|
+
import * as i47 from "@wizishop/ng-wizi-bulma";
|
|
50
|
+
import * as i48 from "ngx-image-cropper";
|
|
51
|
+
import * as i49 from "@angular/cdk/table";
|
|
52
|
+
import * as i50 from "@angular/cdk/drag-drop";
|
|
53
|
+
import * as i51 from "@ngx-translate/core";
|
|
56
54
|
export declare class WzImgManagerModule {
|
|
57
55
|
static withConfig(ApiService: Provider, ImageNotFoundProvider?: Provider): ModuleWithProviders<WzImgManagerModule>;
|
|
58
56
|
static ɵfac: i0.ɵɵFactoryDeclaration<WzImgManagerModule, never>;
|
|
59
|
-
static ɵmod: i0.ɵɵNgModuleDeclaration<WzImgManagerModule, [typeof i1.WzImgManagerComponent, typeof i2.ImgTabsComponent, typeof i3.ImgUploadComponent, typeof i4.PexelLibComponent, typeof i5.ImgCardComponent, typeof i6.UploadListComponent, typeof i7.ImgEditorComponent, typeof i8.EditorInfoSectionComponent, typeof i9.
|
|
57
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<WzImgManagerModule, [typeof i1.WzImgManagerComponent, typeof i2.ImgTabsComponent, typeof i3.ImgUploadComponent, typeof i4.PexelLibComponent, typeof i5.ImgCardComponent, typeof i6.UploadListComponent, typeof i7.ImgEditorComponent, typeof i8.EditorInfoSectionComponent, typeof i9.CanvaBtnComponent, typeof i10.ImgSelectionComponent, typeof i11.LoaderComponent, typeof i12.DropdownComponent, typeof i13.CropperComponent, typeof i14.ImagesViewComponent, typeof i15.MosaicViewComponent, typeof i16.TableViewComponent, typeof i17.TableComponent, typeof i18.InputSearchComponent, typeof i19.PaginationComponent, typeof i20.CheckboxComponent, typeof i21.AlertComponent, typeof i22.PageSelectorComponent, typeof i23.SelectComponent, typeof i24.DragDropDirective, typeof i25.LoadingDirective, typeof i26.AutoHideDirective, typeof i27.CopyClipboardDirective, typeof i28.TableColumn, typeof i29.CheckBoxRow, typeof i30.TableColumnHeader, typeof i31.TableRow, typeof i32.AbstractDebounceDirective, typeof i33.DebounceKeyupDirective, typeof i34.ZindexToggleDirective, typeof i35.PagniationArrayTotalPages, typeof i36.PagniationIsLastPage, typeof i37.PagniationText, typeof i38.ImageSrcPipe, typeof i39.NumberToArray, typeof i40.LargeNumberOfPagePipe, typeof i41.SelectFiltersPipe], [typeof i42.CommonModule, typeof i43.HttpClientModule, typeof i44.FormsModule, typeof i45.NgScrollbarModule, typeof i46.NgScrollbarReachedModule, typeof i47.NwbAllModule, typeof i48.ImageCropperModule, typeof i49.CdkTableModule, typeof i50.DragDropModule, typeof i51.TranslateModule], [typeof i1.WzImgManagerComponent]>;
|
|
60
58
|
static ɵinj: i0.ɵɵInjectorDeclaration<WzImgManagerModule>;
|
|
61
59
|
}
|
package/package.json
CHANGED
|
Binary file
|
package/wz-img-manager.scss
CHANGED
|
@@ -1336,10 +1336,6 @@ $tag-radius: rem(20px)!default;
|
|
|
1336
1336
|
padding: 0;
|
|
1337
1337
|
margin: 0 rem(30) 0 0;
|
|
1338
1338
|
|
|
1339
|
-
&, * {
|
|
1340
|
-
box-sizing: border-box;
|
|
1341
|
-
}
|
|
1342
|
-
|
|
1343
1339
|
&__propertyEditable {
|
|
1344
1340
|
margin-bottom: 31px;
|
|
1345
1341
|
p {
|
|
@@ -1472,31 +1468,6 @@ $tag-radius: rem(20px)!default;
|
|
|
1472
1468
|
.wz-img-manager .marginBottom {
|
|
1473
1469
|
margin-bottom: 20px;
|
|
1474
1470
|
}
|
|
1475
|
-
|
|
1476
|
-
.img-editorVideo__tabs {
|
|
1477
|
-
display: flex;
|
|
1478
|
-
justify-content: flex-start;
|
|
1479
|
-
align-items: center;
|
|
1480
|
-
gap: 20px;
|
|
1481
|
-
list-style-type: none;
|
|
1482
|
-
width: 100%;
|
|
1483
|
-
margin: 0 0 30px;
|
|
1484
|
-
li {
|
|
1485
|
-
cursor: pointer;
|
|
1486
|
-
padding-bottom: 8px;
|
|
1487
|
-
font-size: rem(14);
|
|
1488
|
-
color: $img-second-color;
|
|
1489
|
-
border-bottom: 1px solid transparent;
|
|
1490
|
-
transition: .3s ease;
|
|
1491
|
-
&:hover {
|
|
1492
|
-
color: $main-text;
|
|
1493
|
-
}
|
|
1494
|
-
&.active {
|
|
1495
|
-
color: $main-text;
|
|
1496
|
-
border-bottom: 1px solid $img-main-color;
|
|
1497
|
-
}
|
|
1498
|
-
}
|
|
1499
|
-
}
|
|
1500
1471
|
// Warning: in webcomponent (for wizishop-com project) the following style are added by styles-handler.js script (hard-coded)
|
|
1501
1472
|
.wz-img-manager .img-selection {
|
|
1502
1473
|
background-color: white;
|
|
@@ -2726,120 +2697,7 @@ $tag-radius: rem(20px)!default;
|
|
|
2726
2697
|
font-size: rem(16);
|
|
2727
2698
|
color: $main-text;
|
|
2728
2699
|
}
|
|
2729
|
-
}
|
|
2730
|
-
width: 100%;
|
|
2731
|
-
&, * {
|
|
2732
|
-
box-sizing: border-box;
|
|
2733
|
-
}
|
|
2734
|
-
&__wrapper {
|
|
2735
|
-
width: 100%;
|
|
2736
|
-
display: flex;
|
|
2737
|
-
flex-direction: column;
|
|
2738
|
-
justify-content: flex-start;
|
|
2739
|
-
align-items: flex-start;
|
|
2740
|
-
gap: 30px;
|
|
2741
|
-
&__top {
|
|
2742
|
-
width: 100%;
|
|
2743
|
-
display: flex;
|
|
2744
|
-
flex-direction: column;
|
|
2745
|
-
justify-content: flex-start;
|
|
2746
|
-
align-items: flex-start;
|
|
2747
|
-
gap: 12px;
|
|
2748
|
-
> label {
|
|
2749
|
-
font-size: rem(14);
|
|
2750
|
-
font-weight: 500;
|
|
2751
|
-
color: $main-text;
|
|
2752
|
-
i {
|
|
2753
|
-
font-size: rem(14);
|
|
2754
|
-
font-weight: 400;
|
|
2755
|
-
color: $img-second-color;
|
|
2756
|
-
margin: 0 0 0 5px;
|
|
2757
|
-
}
|
|
2758
|
-
}
|
|
2759
|
-
> span {
|
|
2760
|
-
font-size: rem(12);
|
|
2761
|
-
color: $img-second-color;
|
|
2762
|
-
margin-top: -2px;
|
|
2763
|
-
}
|
|
2764
|
-
> input {
|
|
2765
|
-
width: 100%;
|
|
2766
|
-
height: rem(40);
|
|
2767
|
-
border: 1px solid $img-input-border;
|
|
2768
|
-
border-radius: rem(3);
|
|
2769
|
-
color: $img-main-text;
|
|
2770
|
-
padding: 0 rem(20);
|
|
2771
|
-
font-size: rem(14);
|
|
2772
|
-
&:hover, &:focus {
|
|
2773
|
-
color: $main-text;
|
|
2774
|
-
border-color: $main-text;
|
|
2775
|
-
}
|
|
2776
|
-
}
|
|
2777
|
-
}
|
|
2778
|
-
&__bottom {
|
|
2779
|
-
width: 100%;
|
|
2780
|
-
display: flex;
|
|
2781
|
-
flex-direction: column;
|
|
2782
|
-
justify-content: flex-start;
|
|
2783
|
-
align-items: flex-start;
|
|
2784
|
-
gap: 15px;
|
|
2785
|
-
&.has-border {
|
|
2786
|
-
padding-bottom: 32px;
|
|
2787
|
-
border-bottom: 2px solid $img-input-border;
|
|
2788
|
-
}
|
|
2789
|
-
> strong {
|
|
2790
|
-
font-size: rem(16);
|
|
2791
|
-
font-weight: 600;
|
|
2792
|
-
color: $main-text;
|
|
2793
|
-
}
|
|
2794
|
-
> p {
|
|
2795
|
-
font-size: rem(14);
|
|
2796
|
-
font-weight: 400;
|
|
2797
|
-
color: $main-text;
|
|
2798
|
-
display: flex;
|
|
2799
|
-
align-items: center;
|
|
2800
|
-
width: 100%;
|
|
2801
|
-
> span {
|
|
2802
|
-
white-space: nowrap;
|
|
2803
|
-
&:first-child {
|
|
2804
|
-
width: 100%;
|
|
2805
|
-
}
|
|
2806
|
-
&:last-child {
|
|
2807
|
-
width: auto;
|
|
2808
|
-
}
|
|
2809
|
-
}
|
|
2810
|
-
}
|
|
2811
|
-
}
|
|
2812
|
-
& > a {
|
|
2813
|
-
color: $img-bright-red-color;
|
|
2814
|
-
text-decoration: underline;
|
|
2815
|
-
transition: .3s ease;
|
|
2816
|
-
cursor: pointer;
|
|
2817
|
-
font-size: rem(14);
|
|
2818
|
-
font-weight: 400;
|
|
2819
|
-
&:hover, &:focus {
|
|
2820
|
-
color: darken($img-bright-red-color, 10%);
|
|
2821
|
-
text-decoration: none;
|
|
2822
|
-
}
|
|
2823
|
-
}
|
|
2824
|
-
}
|
|
2825
|
-
}
|
|
2826
|
-
iframe {
|
|
2827
|
-
width: 100%!important;
|
|
2828
|
-
height: 309px;
|
|
2829
|
-
}
|
|
2830
|
-
|
|
2831
|
-
.show-iframe {
|
|
2832
|
-
box-sizing: border-box;
|
|
2833
|
-
padding: 20px;
|
|
2834
|
-
&__none {
|
|
2835
|
-
width: 100%;
|
|
2836
|
-
text-align: center;
|
|
2837
|
-
font-size: rem(16);
|
|
2838
|
-
font-weight: 600;
|
|
2839
|
-
color: $main-text;
|
|
2840
|
-
}
|
|
2841
|
-
}
|
|
2842
|
-
$default-color-p-alert: #1e5568;
|
|
2700
|
+
}$default-color-p-alert: #1e5568;
|
|
2843
2701
|
$success-color-p-alert: #11552e;
|
|
2844
2702
|
$warning-color-p-alert: #3a0505;
|
|
2845
2703
|
$primary-button: #e95656;
|
|
@@ -3928,7 +3786,7 @@ $card-img-size-small: 140px;
|
|
|
3928
3786
|
background-color: $img-orange-color;
|
|
3929
3787
|
}
|
|
3930
3788
|
}
|
|
3931
|
-
&.copy {
|
|
3789
|
+
&.copy {
|
|
3932
3790
|
background-color: $img-green-color;
|
|
3933
3791
|
transition: transform .3s ease .15s;
|
|
3934
3792
|
span, &:before {
|
|
@@ -4052,27 +3910,6 @@ $card-img-size-small: 140px;
|
|
|
4052
3910
|
}
|
|
4053
3911
|
}
|
|
4054
3912
|
}
|
|
4055
|
-
&__video {
|
|
4056
|
-
width: fit-content;
|
|
4057
|
-
height: 24px;
|
|
4058
|
-
display: flex;
|
|
4059
|
-
justify-content: center;
|
|
4060
|
-
align-items: center;
|
|
4061
|
-
position: absolute;
|
|
4062
|
-
bottom: 10px;
|
|
4063
|
-
right: 10px;
|
|
4064
|
-
background-color: rgba(29, 42, 59, 0.8);
|
|
4065
|
-
gap: 5px;
|
|
4066
|
-
border-radius: 3px;
|
|
4067
|
-
padding: 0 10px;
|
|
4068
|
-
color: white;
|
|
4069
|
-
font-size: rem(12);
|
|
4070
|
-
font-weight: 500;
|
|
4071
|
-
i {
|
|
4072
|
-
color: white;
|
|
4073
|
-
font-size: rem(14);
|
|
4074
|
-
}
|
|
4075
|
-
}
|
|
4076
3913
|
}
|
|
4077
3914
|
|
|
4078
3915
|
&__nameContainer {
|
|
@@ -4138,9 +3975,6 @@ $card-img-size-small: 140px;
|
|
|
4138
3975
|
|
|
4139
3976
|
&:hover, &:focus {
|
|
4140
3977
|
z-index: 3;
|
|
4141
|
-
.hover-img-size {
|
|
4142
|
-
opacity: 1;
|
|
4143
|
-
}
|
|
4144
3978
|
.img-card {
|
|
4145
3979
|
&__nameContainer {
|
|
4146
3980
|
overflow: visible;
|
|
@@ -4197,21 +4031,6 @@ $card-img-size-small: 140px;
|
|
|
4197
4031
|
width: $card-img-size-small;
|
|
4198
4032
|
}
|
|
4199
4033
|
}
|
|
4200
|
-
|
|
4201
|
-
.hover-img-size {
|
|
4202
|
-
position: absolute;
|
|
4203
|
-
top: 10px;
|
|
4204
|
-
right: 10px;
|
|
4205
|
-
opacity: 0;
|
|
4206
|
-
transition: .3s ease;
|
|
4207
|
-
background-color: rgba(0,0,0,.45);
|
|
4208
|
-
color: $white;
|
|
4209
|
-
font-size: rem(12);
|
|
4210
|
-
padding: 3px 6px;
|
|
4211
|
-
border-radius: 2px;
|
|
4212
|
-
pointer-events: none;
|
|
4213
|
-
}
|
|
4214
|
-
|
|
4215
4034
|
.wz-selector {
|
|
4216
4035
|
&__default {
|
|
4217
4036
|
position: relative;
|
|
@@ -1,62 +0,0 @@
|
|
|
1
|
-
import { Component, Input, Output, EventEmitter } from '@angular/core';
|
|
2
|
-
import { VideoInfoService } from "../../../services/video-info.service";
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "../../../services/video-info.service";
|
|
5
|
-
import * as i2 from "@angular/common";
|
|
6
|
-
import * as i3 from "@angular/forms";
|
|
7
|
-
import * as i4 from "@ngx-translate/core";
|
|
8
|
-
export class EditorInfoVideoComponent {
|
|
9
|
-
constructor(videoInfoService) {
|
|
10
|
-
this.videoInfoService = videoInfoService;
|
|
11
|
-
this.videoLink = '';
|
|
12
|
-
this.videoLinkChange = new EventEmitter();
|
|
13
|
-
this.isVideoModified = false;
|
|
14
|
-
this.isVideoModifiedChange = new EventEmitter();
|
|
15
|
-
this.deleteVideo = new EventEmitter();
|
|
16
|
-
this.videoDuration = '';
|
|
17
|
-
this.videoPublishDate = '';
|
|
18
|
-
}
|
|
19
|
-
ngOnInit() {
|
|
20
|
-
this.loadVideoInfos();
|
|
21
|
-
}
|
|
22
|
-
onVideoLinkChange(value) {
|
|
23
|
-
this.videoLink = value;
|
|
24
|
-
this.videoLinkChange.emit(value);
|
|
25
|
-
this.isVideoModifiedChange.emit(true);
|
|
26
|
-
this.loadVideoInfos();
|
|
27
|
-
}
|
|
28
|
-
loadVideoInfos() {
|
|
29
|
-
const obs = this.videoInfoService.getVideoInfo(this.videoLink);
|
|
30
|
-
if (!obs) {
|
|
31
|
-
this.videoDuration = '';
|
|
32
|
-
this.videoPublishDate = '';
|
|
33
|
-
return;
|
|
34
|
-
}
|
|
35
|
-
obs.subscribe(data => {
|
|
36
|
-
if (!data)
|
|
37
|
-
return;
|
|
38
|
-
this.videoDuration = data.duration;
|
|
39
|
-
this.videoPublishDate = data.publishDate;
|
|
40
|
-
});
|
|
41
|
-
}
|
|
42
|
-
onDelete() {
|
|
43
|
-
this.deleteVideo.emit();
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
EditorInfoVideoComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: EditorInfoVideoComponent, deps: [{ token: i1.VideoInfoService }], target: i0.ɵɵFactoryTarget.Component });
|
|
47
|
-
EditorInfoVideoComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: EditorInfoVideoComponent, selector: "info-video", inputs: { videoLink: "videoLink", isVideoModified: "isVideoModified" }, outputs: { videoLinkChange: "videoLinkChange", isVideoModifiedChange: "isVideoModifiedChange", deleteVideo: "deleteVideo" }, ngImport: i0, template: "<div class=\"info-video\">\r\n <div class=\"info-video__wrapper\">\r\n\r\n <div class=\"info-video__wrapper__top\">\r\n <label for=\"input-video\">\r\n {{ 'ImgManager.ImgEditor.UrlVideo' | translate }}\r\n <i class=\"fa-solid fa-circle-info\"></i>\r\n </label>\r\n\r\n <input\r\n type=\"text\"\r\n id=\"input-video\"\r\n [ngModel]=\"videoLink\"\r\n (ngModelChange)=\"onVideoLinkChange($event)\"\r\n />\r\n\r\n <span>{{ 'ImgManager.ImgEditor.tooltipsIframe' | translate }}</span>\r\n </div>\r\n\r\n <a *ngIf=\"videoLink\" (click)=\"onDelete()\">{{ 'ImgManager.ImgEditor.deleteVideo' | translate }}</a>\r\n </div>\r\n</div>\r\n", dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "pipe", type: i4.TranslatePipe, name: "translate" }] });
|
|
48
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: EditorInfoVideoComponent, decorators: [{
|
|
49
|
-
type: Component,
|
|
50
|
-
args: [{ selector: 'info-video', template: "<div class=\"info-video\">\r\n <div class=\"info-video__wrapper\">\r\n\r\n <div class=\"info-video__wrapper__top\">\r\n <label for=\"input-video\">\r\n {{ 'ImgManager.ImgEditor.UrlVideo' | translate }}\r\n <i class=\"fa-solid fa-circle-info\"></i>\r\n </label>\r\n\r\n <input\r\n type=\"text\"\r\n id=\"input-video\"\r\n [ngModel]=\"videoLink\"\r\n (ngModelChange)=\"onVideoLinkChange($event)\"\r\n />\r\n\r\n <span>{{ 'ImgManager.ImgEditor.tooltipsIframe' | translate }}</span>\r\n </div>\r\n\r\n <a *ngIf=\"videoLink\" (click)=\"onDelete()\">{{ 'ImgManager.ImgEditor.deleteVideo' | translate }}</a>\r\n </div>\r\n</div>\r\n" }]
|
|
51
|
-
}], ctorParameters: function () { return [{ type: i1.VideoInfoService }]; }, propDecorators: { videoLink: [{
|
|
52
|
-
type: Input
|
|
53
|
-
}], videoLinkChange: [{
|
|
54
|
-
type: Output
|
|
55
|
-
}], isVideoModified: [{
|
|
56
|
-
type: Input
|
|
57
|
-
}], isVideoModifiedChange: [{
|
|
58
|
-
type: Output
|
|
59
|
-
}], deleteVideo: [{
|
|
60
|
-
type: Output
|
|
61
|
-
}] } });
|
|
62
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5mby12aWRlby5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy93ei1pbWctbWFuYWdlci9zcmMvbGliL2NvbXBvbmVudHMvaW1nLWVkaXRvci9pbmZvLXZpZGVvL2luZm8tdmlkZW8uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvd3otaW1nLW1hbmFnZXIvc3JjL2xpYi9jb21wb25lbnRzL2ltZy1lZGl0b3IvaW5mby12aWRlby9pbmZvLXZpZGVvLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDL0UsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sc0NBQXNDLENBQUM7Ozs7OztBQU10RSxNQUFNLE9BQU8sd0JBQXdCO0lBYW5DLFlBQW9CLGdCQUFrQztRQUFsQyxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBWDdDLGNBQVMsR0FBVyxFQUFFLENBQUM7UUFDdEIsb0JBQWUsR0FBRyxJQUFJLFlBQVksRUFBVSxDQUFDO1FBRTlDLG9CQUFlLEdBQVksS0FBSyxDQUFDO1FBQ2hDLDBCQUFxQixHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7UUFFcEQsZ0JBQVcsR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO1FBRWpELGtCQUFhLEdBQVcsRUFBRSxDQUFDO1FBQzNCLHFCQUFnQixHQUFXLEVBQUUsQ0FBQztJQUUyQixDQUFDO0lBRTFELFFBQVE7UUFDTixJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7SUFDeEIsQ0FBQztJQUVELGlCQUFpQixDQUFDLEtBQWE7UUFDN0IsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7UUFFdkIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDakMsSUFBSSxDQUFDLHFCQUFxQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUV0QyxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7SUFDeEIsQ0FBQztJQUVELGNBQWM7UUFDWixNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUMvRCxJQUFJLENBQUMsR0FBRyxFQUFFO1lBQ1IsSUFBSSxDQUFDLGFBQWEsR0FBRyxFQUFFLENBQUM7WUFDeEIsSUFBSSxDQUFDLGdCQUFnQixHQUFHLEVBQUUsQ0FBQztZQUMzQixPQUFPO1NBQ1I7UUFFRCxHQUFHLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ25CLElBQUksQ0FBQyxJQUFJO2dCQUFFLE9BQU87WUFDbEIsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDO1lBQ25DLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDO1FBQzNDLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQzFCLENBQUM7O3FIQTdDVSx3QkFBd0I7eUdBQXhCLHdCQUF3Qix1UENQckMsaXNCQXNCQTsyRkRmYSx3QkFBd0I7a0JBSnBDLFNBQVM7K0JBQ0UsWUFBWTt1R0FLYixTQUFTO3NCQUFqQixLQUFLO2dCQUNJLGVBQWU7c0JBQXhCLE1BQU07Z0JBRUUsZUFBZTtzQkFBdkIsS0FBSztnQkFDSSxxQkFBcUI7c0JBQTlCLE1BQU07Z0JBRUcsV0FBVztzQkFBcEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE91dHB1dCwgRXZlbnRFbWl0dGVyLCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtWaWRlb0luZm9TZXJ2aWNlfSBmcm9tIFwiLi4vLi4vLi4vc2VydmljZXMvdmlkZW8taW5mby5zZXJ2aWNlXCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2luZm8tdmlkZW8nLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9pbmZvLXZpZGVvLmNvbXBvbmVudC5odG1sJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgRWRpdG9ySW5mb1ZpZGVvQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuXHJcbiAgQElucHV0KCkgdmlkZW9MaW5rOiBzdHJpbmcgPSAnJztcclxuICBAT3V0cHV0KCkgdmlkZW9MaW5rQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XHJcblxyXG4gIEBJbnB1dCgpIGlzVmlkZW9Nb2RpZmllZDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIEBPdXRwdXQoKSBpc1ZpZGVvTW9kaWZpZWRDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XHJcblxyXG4gIEBPdXRwdXQoKSBkZWxldGVWaWRlbyA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcclxuXHJcbiAgdmlkZW9EdXJhdGlvbjogc3RyaW5nID0gJyc7XHJcbiAgdmlkZW9QdWJsaXNoRGF0ZTogc3RyaW5nID0gJyc7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgdmlkZW9JbmZvU2VydmljZTogVmlkZW9JbmZvU2VydmljZSkge31cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLmxvYWRWaWRlb0luZm9zKCk7XHJcbiAgfVxyXG5cclxuICBvblZpZGVvTGlua0NoYW5nZSh2YWx1ZTogc3RyaW5nKSB7XHJcbiAgICB0aGlzLnZpZGVvTGluayA9IHZhbHVlO1xyXG5cclxuICAgIHRoaXMudmlkZW9MaW5rQ2hhbmdlLmVtaXQodmFsdWUpO1xyXG4gICAgdGhpcy5pc1ZpZGVvTW9kaWZpZWRDaGFuZ2UuZW1pdCh0cnVlKTtcclxuXHJcbiAgICB0aGlzLmxvYWRWaWRlb0luZm9zKCk7XHJcbiAgfVxyXG5cclxuICBsb2FkVmlkZW9JbmZvcygpIHtcclxuICAgIGNvbnN0IG9icyA9IHRoaXMudmlkZW9JbmZvU2VydmljZS5nZXRWaWRlb0luZm8odGhpcy52aWRlb0xpbmspO1xyXG4gICAgaWYgKCFvYnMpIHtcclxuICAgICAgdGhpcy52aWRlb0R1cmF0aW9uID0gJyc7XHJcbiAgICAgIHRoaXMudmlkZW9QdWJsaXNoRGF0ZSA9ICcnO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgb2JzLnN1YnNjcmliZShkYXRhID0+IHtcclxuICAgICAgaWYgKCFkYXRhKSByZXR1cm47XHJcbiAgICAgIHRoaXMudmlkZW9EdXJhdGlvbiA9IGRhdGEuZHVyYXRpb247XHJcbiAgICAgIHRoaXMudmlkZW9QdWJsaXNoRGF0ZSA9IGRhdGEucHVibGlzaERhdGU7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIG9uRGVsZXRlKCkge1xyXG4gICAgdGhpcy5kZWxldGVWaWRlby5lbWl0KCk7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJpbmZvLXZpZGVvXCI+XHJcbiAgPGRpdiBjbGFzcz1cImluZm8tdmlkZW9fX3dyYXBwZXJcIj5cclxuXHJcbiAgICA8ZGl2IGNsYXNzPVwiaW5mby12aWRlb19fd3JhcHBlcl9fdG9wXCI+XHJcbiAgICAgIDxsYWJlbCBmb3I9XCJpbnB1dC12aWRlb1wiPlxyXG4gICAgICAgIHt7ICdJbWdNYW5hZ2VyLkltZ0VkaXRvci5VcmxWaWRlbycgfCB0cmFuc2xhdGUgfX1cclxuICAgICAgICA8aSBjbGFzcz1cImZhLXNvbGlkIGZhLWNpcmNsZS1pbmZvXCI+PC9pPlxyXG4gICAgICA8L2xhYmVsPlxyXG5cclxuICAgICAgPGlucHV0XHJcbiAgICAgICAgdHlwZT1cInRleHRcIlxyXG4gICAgICAgIGlkPVwiaW5wdXQtdmlkZW9cIlxyXG4gICAgICAgIFtuZ01vZGVsXT1cInZpZGVvTGlua1wiXHJcbiAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwib25WaWRlb0xpbmtDaGFuZ2UoJGV2ZW50KVwiXHJcbiAgICAgIC8+XHJcblxyXG4gICAgICA8c3Bhbj57eyAnSW1nTWFuYWdlci5JbWdFZGl0b3IudG9vbHRpcHNJZnJhbWUnIHwgdHJhbnNsYXRlIH19PC9zcGFuPlxyXG4gICAgPC9kaXY+XHJcblxyXG4gICAgPGEgKm5nSWY9XCJ2aWRlb0xpbmtcIiAoY2xpY2spPVwib25EZWxldGUoKVwiPnt7ICdJbWdNYW5hZ2VyLkltZ0VkaXRvci5kZWxldGVWaWRlbycgfCB0cmFuc2xhdGUgfX08L2E+XHJcbiAgPC9kaXY+XHJcbjwvZGl2PlxyXG4iXX0=
|
|
@@ -1,54 +0,0 @@
|
|
|
1
|
-
import { Component, Input } from '@angular/core';
|
|
2
|
-
import { DomSanitizer } from '@angular/platform-browser';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "@angular/platform-browser";
|
|
5
|
-
import * as i2 from "@angular/common";
|
|
6
|
-
import * as i3 from "@ngx-translate/core";
|
|
7
|
-
export class EditorShowIframeComponent {
|
|
8
|
-
constructor(sanitizer) {
|
|
9
|
-
this.sanitizer = sanitizer;
|
|
10
|
-
this.videoLink = '';
|
|
11
|
-
this.safeUrl = null;
|
|
12
|
-
}
|
|
13
|
-
ngOnChanges() {
|
|
14
|
-
this.safeUrl = this.buildSafeIframeUrl(this.videoLink);
|
|
15
|
-
}
|
|
16
|
-
buildSafeIframeUrl(url) {
|
|
17
|
-
if (!url)
|
|
18
|
-
return null;
|
|
19
|
-
if (url.includes('youtube.com') || url.includes('youtu.be')) {
|
|
20
|
-
const videoId = this.extractYoutubeId(url);
|
|
21
|
-
if (!videoId)
|
|
22
|
-
return null;
|
|
23
|
-
const embed = `https://www.youtube.com/embed/${videoId}`;
|
|
24
|
-
return this.sanitizer.bypassSecurityTrustResourceUrl(embed);
|
|
25
|
-
}
|
|
26
|
-
if (url.includes('vimeo.com')) {
|
|
27
|
-
const videoId = this.extractVimeoId(url);
|
|
28
|
-
if (!videoId)
|
|
29
|
-
return null;
|
|
30
|
-
const embed = `https://player.vimeo.com/video/${videoId}`;
|
|
31
|
-
return this.sanitizer.bypassSecurityTrustResourceUrl(embed);
|
|
32
|
-
}
|
|
33
|
-
return null;
|
|
34
|
-
}
|
|
35
|
-
extractYoutubeId(url) {
|
|
36
|
-
const regExp = /^.*(youtu.be\/|v=|embed\/)([^#\&\?]*).*/;
|
|
37
|
-
const match = url.match(regExp);
|
|
38
|
-
return match && match[2].length > 0 ? match[2] : null;
|
|
39
|
-
}
|
|
40
|
-
extractVimeoId(url) {
|
|
41
|
-
const regExp = /vimeo\.com\/(?:video\/)?(\d+)/;
|
|
42
|
-
const match = url.match(regExp);
|
|
43
|
-
return match ? match[1] : null;
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
EditorShowIframeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: EditorShowIframeComponent, deps: [{ token: i1.DomSanitizer }], target: i0.ɵɵFactoryTarget.Component });
|
|
47
|
-
EditorShowIframeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: EditorShowIframeComponent, selector: "show-iframe", inputs: { videoLink: "videoLink" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"show-iframe\" *ngIf=\"safeUrl\">\r\n <iframe\r\n width=\"100%\"\r\n [src]=\"safeUrl\"\r\n frameborder=\"0\"\r\n allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\"\r\n allowfullscreen>\r\n </iframe>\r\n</div>\r\n\r\n<div class=\"show-iframe__none\" *ngIf=\"!safeUrl\">\r\n <p>{{ 'ImgManager.ImgEditor.NoVideo' | translate }}</p>\r\n</div>\r\n", dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }] });
|
|
48
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: EditorShowIframeComponent, decorators: [{
|
|
49
|
-
type: Component,
|
|
50
|
-
args: [{ selector: 'show-iframe', template: "<div class=\"show-iframe\" *ngIf=\"safeUrl\">\r\n <iframe\r\n width=\"100%\"\r\n [src]=\"safeUrl\"\r\n frameborder=\"0\"\r\n allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\"\r\n allowfullscreen>\r\n </iframe>\r\n</div>\r\n\r\n<div class=\"show-iframe__none\" *ngIf=\"!safeUrl\">\r\n <p>{{ 'ImgManager.ImgEditor.NoVideo' | translate }}</p>\r\n</div>\r\n" }]
|
|
51
|
-
}], ctorParameters: function () { return [{ type: i1.DomSanitizer }]; }, propDecorators: { videoLink: [{
|
|
52
|
-
type: Input
|
|
53
|
-
}] } });
|
|
54
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hvdy1pZnJhbWUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvd3otaW1nLW1hbmFnZXIvc3JjL2xpYi9jb21wb25lbnRzL2ltZy1lZGl0b3Ivc2hvdy1pZnJhbWUvc2hvdy1pZnJhbWUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvd3otaW1nLW1hbmFnZXIvc3JjL2xpYi9jb21wb25lbnRzL2ltZy1lZGl0b3Ivc2hvdy1pZnJhbWUvc2hvdy1pZnJhbWUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQWEsTUFBTSxlQUFlLENBQUM7QUFDNUQsT0FBTyxFQUFFLFlBQVksRUFBbUIsTUFBTSwyQkFBMkIsQ0FBQzs7Ozs7QUFNMUUsTUFBTSxPQUFPLHlCQUF5QjtJQUtwQyxZQUFvQixTQUF1QjtRQUF2QixjQUFTLEdBQVQsU0FBUyxDQUFjO1FBSGxDLGNBQVMsR0FBVyxFQUFFLENBQUM7UUFDaEMsWUFBTyxHQUEyQixJQUFJLENBQUM7SUFFTyxDQUFDO0lBRS9DLFdBQVc7UUFDVCxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDekQsQ0FBQztJQUVPLGtCQUFrQixDQUFDLEdBQVc7UUFDcEMsSUFBSSxDQUFDLEdBQUc7WUFBRSxPQUFPLElBQUksQ0FBQztRQUV0QixJQUFJLEdBQUcsQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLElBQUksR0FBRyxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsRUFBRTtZQUMzRCxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDM0MsSUFBSSxDQUFDLE9BQU87Z0JBQUUsT0FBTyxJQUFJLENBQUM7WUFFMUIsTUFBTSxLQUFLLEdBQUcsaUNBQWlDLE9BQU8sRUFBRSxDQUFDO1lBQ3pELE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyw4QkFBOEIsQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUM3RDtRQUVELElBQUksR0FBRyxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsRUFBRTtZQUM3QixNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ3pDLElBQUksQ0FBQyxPQUFPO2dCQUFFLE9BQU8sSUFBSSxDQUFDO1lBRTFCLE1BQU0sS0FBSyxHQUFHLGtDQUFrQyxPQUFPLEVBQUUsQ0FBQztZQUMxRCxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsOEJBQThCLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDN0Q7UUFFRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFTyxnQkFBZ0IsQ0FBQyxHQUFXO1FBQ2xDLE1BQU0sTUFBTSxHQUFHLHlDQUF5QyxDQUFDO1FBQ3pELE1BQU0sS0FBSyxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDaEMsT0FBTyxLQUFLLElBQUksS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO0lBQ3hELENBQUM7SUFFTyxjQUFjLENBQUMsR0FBVztRQUNoQyxNQUFNLE1BQU0sR0FBRywrQkFBK0IsQ0FBQztRQUMvQyxNQUFNLEtBQUssR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ2hDLE9BQU8sS0FBSyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztJQUNqQyxDQUFDOztzSEEzQ1UseUJBQXlCOzBHQUF6Qix5QkFBeUIsNEdDUHRDLGliQWFBOzJGRE5hLHlCQUF5QjtrQkFKckMsU0FBUzsrQkFDRSxhQUFhO21HQUtkLFNBQVM7c0JBQWpCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkNoYW5nZXMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRG9tU2FuaXRpemVyLCBTYWZlUmVzb3VyY2VVcmwgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnc2hvdy1pZnJhbWUnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9zaG93LWlmcmFtZS5jb21wb25lbnQuaHRtbCdcclxufSlcclxuZXhwb3J0IGNsYXNzIEVkaXRvclNob3dJZnJhbWVDb21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMge1xyXG5cclxuICBASW5wdXQoKSB2aWRlb0xpbms6IHN0cmluZyA9ICcnO1xyXG4gIHNhZmVVcmw6IFNhZmVSZXNvdXJjZVVybCB8IG51bGwgPSBudWxsO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHNhbml0aXplcjogRG9tU2FuaXRpemVyKSB7fVxyXG5cclxuICBuZ09uQ2hhbmdlcygpIHtcclxuICAgIHRoaXMuc2FmZVVybCA9IHRoaXMuYnVpbGRTYWZlSWZyYW1lVXJsKHRoaXMudmlkZW9MaW5rKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgYnVpbGRTYWZlSWZyYW1lVXJsKHVybDogc3RyaW5nKTogU2FmZVJlc291cmNlVXJsIHwgbnVsbCB7XHJcbiAgICBpZiAoIXVybCkgcmV0dXJuIG51bGw7XHJcblxyXG4gICAgaWYgKHVybC5pbmNsdWRlcygneW91dHViZS5jb20nKSB8fCB1cmwuaW5jbHVkZXMoJ3lvdXR1LmJlJykpIHtcclxuICAgICAgY29uc3QgdmlkZW9JZCA9IHRoaXMuZXh0cmFjdFlvdXR1YmVJZCh1cmwpO1xyXG4gICAgICBpZiAoIXZpZGVvSWQpIHJldHVybiBudWxsO1xyXG5cclxuICAgICAgY29uc3QgZW1iZWQgPSBgaHR0cHM6Ly93d3cueW91dHViZS5jb20vZW1iZWQvJHt2aWRlb0lkfWA7XHJcbiAgICAgIHJldHVybiB0aGlzLnNhbml0aXplci5ieXBhc3NTZWN1cml0eVRydXN0UmVzb3VyY2VVcmwoZW1iZWQpO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICh1cmwuaW5jbHVkZXMoJ3ZpbWVvLmNvbScpKSB7XHJcbiAgICAgIGNvbnN0IHZpZGVvSWQgPSB0aGlzLmV4dHJhY3RWaW1lb0lkKHVybCk7XHJcbiAgICAgIGlmICghdmlkZW9JZCkgcmV0dXJuIG51bGw7XHJcblxyXG4gICAgICBjb25zdCBlbWJlZCA9IGBodHRwczovL3BsYXllci52aW1lby5jb20vdmlkZW8vJHt2aWRlb0lkfWA7XHJcbiAgICAgIHJldHVybiB0aGlzLnNhbml0aXplci5ieXBhc3NTZWN1cml0eVRydXN0UmVzb3VyY2VVcmwoZW1iZWQpO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBudWxsO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBleHRyYWN0WW91dHViZUlkKHVybDogc3RyaW5nKTogc3RyaW5nIHwgbnVsbCB7XHJcbiAgICBjb25zdCByZWdFeHAgPSAvXi4qKHlvdXR1LmJlXFwvfHY9fGVtYmVkXFwvKShbXiNcXCZcXD9dKikuKi87XHJcbiAgICBjb25zdCBtYXRjaCA9IHVybC5tYXRjaChyZWdFeHApO1xyXG4gICAgcmV0dXJuIG1hdGNoICYmIG1hdGNoWzJdLmxlbmd0aCA+IDAgPyBtYXRjaFsyXSA6IG51bGw7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGV4dHJhY3RWaW1lb0lkKHVybDogc3RyaW5nKTogc3RyaW5nIHwgbnVsbCB7XHJcbiAgICBjb25zdCByZWdFeHAgPSAvdmltZW9cXC5jb21cXC8oPzp2aWRlb1xcLyk/KFxcZCspLztcclxuICAgIGNvbnN0IG1hdGNoID0gdXJsLm1hdGNoKHJlZ0V4cCk7XHJcbiAgICByZXR1cm4gbWF0Y2ggPyBtYXRjaFsxXSA6IG51bGw7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJzaG93LWlmcmFtZVwiICpuZ0lmPVwic2FmZVVybFwiPlxyXG4gIDxpZnJhbWVcclxuICAgIHdpZHRoPVwiMTAwJVwiXHJcbiAgICBbc3JjXT1cInNhZmVVcmxcIlxyXG4gICAgZnJhbWVib3JkZXI9XCIwXCJcclxuICAgIGFsbG93PVwiYWNjZWxlcm9tZXRlcjsgYXV0b3BsYXk7IGNsaXBib2FyZC13cml0ZTsgZW5jcnlwdGVkLW1lZGlhOyBneXJvc2NvcGU7IHBpY3R1cmUtaW4tcGljdHVyZTsgd2ViLXNoYXJlXCJcclxuICAgIGFsbG93ZnVsbHNjcmVlbj5cclxuICA8L2lmcmFtZT5cclxuPC9kaXY+XHJcblxyXG48ZGl2IGNsYXNzPVwic2hvdy1pZnJhbWVfX25vbmVcIiAqbmdJZj1cIiFzYWZlVXJsXCI+XHJcbiAgPHA+e3sgJ0ltZ01hbmFnZXIuSW1nRWRpdG9yLk5vVmlkZW8nIHwgdHJhbnNsYXRlIH19PC9wPlxyXG48L2Rpdj5cclxuIl19
|