@posiwise/resource-module 0.0.165 → 0.0.167

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (32) hide show
  1. package/fesm2022/{posiwise-resource-module-base-top-banner.component-qdYdb5Le.mjs → posiwise-resource-module-base-top-banner.component-BPTic8Ha.mjs} +5 -5
  2. package/fesm2022/{posiwise-resource-module-base-top-banner.component-qdYdb5Le.mjs.map → posiwise-resource-module-base-top-banner.component-BPTic8Ha.mjs.map} +1 -1
  3. package/fesm2022/{posiwise-resource-module-posiwise-resource-module-DlOc6owW.mjs → posiwise-resource-module-posiwise-resource-module-Cbhl4OZt.mjs} +79 -79
  4. package/fesm2022/{posiwise-resource-module-posiwise-resource-module-DlOc6owW.mjs.map → posiwise-resource-module-posiwise-resource-module-Cbhl4OZt.mjs.map} +1 -1
  5. package/fesm2022/posiwise-resource-module-resource-blogs.module-BKFwYvuJ.mjs +69 -0
  6. package/fesm2022/{posiwise-resource-module-resource-blogs.module-BY02aMCz.mjs.map → posiwise-resource-module-resource-blogs.module-BKFwYvuJ.mjs.map} +1 -1
  7. package/fesm2022/posiwise-resource-module-resource-case-studies.module-CRf9fPR1.mjs +133 -0
  8. package/fesm2022/{posiwise-resource-module-resource-case-studies.module-CP7-pHth.mjs.map → posiwise-resource-module-resource-case-studies.module-CRf9fPR1.mjs.map} +1 -1
  9. package/fesm2022/{posiwise-resource-module-resource-events.module-CXAhiCS6.mjs → posiwise-resource-module-resource-events.module-DmzL1dU7.mjs} +13 -13
  10. package/fesm2022/{posiwise-resource-module-resource-events.module-CXAhiCS6.mjs.map → posiwise-resource-module-resource-events.module-DmzL1dU7.mjs.map} +1 -1
  11. package/fesm2022/{posiwise-resource-module-resource-hub.module-a6qHwXRb.mjs → posiwise-resource-module-resource-hub.module-Vw3FHZxm.mjs} +10 -10
  12. package/fesm2022/{posiwise-resource-module-resource-hub.module-a6qHwXRb.mjs.map → posiwise-resource-module-resource-hub.module-Vw3FHZxm.mjs.map} +1 -1
  13. package/fesm2022/{posiwise-resource-module-resource-integrations.module-WfJfGko9.mjs → posiwise-resource-module-resource-integrations.module-BJXMl2br.mjs} +14 -14
  14. package/fesm2022/{posiwise-resource-module-resource-integrations.module-WfJfGko9.mjs.map → posiwise-resource-module-resource-integrations.module-BJXMl2br.mjs.map} +1 -1
  15. package/fesm2022/{posiwise-resource-module-resource-post.module-DvTdeeQt.mjs → posiwise-resource-module-resource-post.module-DoVkmGxX.mjs} +16 -16
  16. package/fesm2022/posiwise-resource-module-resource-post.module-DoVkmGxX.mjs.map +1 -0
  17. package/fesm2022/posiwise-resource-module-resource-release-notes.module-Bpk3hV9R.mjs +104 -0
  18. package/fesm2022/{posiwise-resource-module-resource-release-notes.module-CxAh59AL.mjs.map → posiwise-resource-module-resource-release-notes.module-Bpk3hV9R.mjs.map} +1 -1
  19. package/fesm2022/{posiwise-resource-module-resource-root.module-BHGO5PqT.mjs → posiwise-resource-module-resource-root.module-DGItMsFh.mjs} +20 -20
  20. package/fesm2022/{posiwise-resource-module-resource-root.module-BHGO5PqT.mjs.map → posiwise-resource-module-resource-root.module-DGItMsFh.mjs.map} +1 -1
  21. package/fesm2022/posiwise-resource-module-resource-videos.module-Cb_P8p3H.mjs +69 -0
  22. package/fesm2022/{posiwise-resource-module-resource-videos.module-BJxrv9JZ.mjs.map → posiwise-resource-module-resource-videos.module-Cb_P8p3H.mjs.map} +1 -1
  23. package/fesm2022/posiwise-resource-module-resource-white-papers.module-BMljtI-i.mjs +70 -0
  24. package/fesm2022/{posiwise-resource-module-resource-white-papers.module-iWQ29ue6.mjs.map → posiwise-resource-module-resource-white-papers.module-BMljtI-i.mjs.map} +1 -1
  25. package/fesm2022/posiwise-resource-module.mjs +1 -1
  26. package/package.json +1 -1
  27. package/fesm2022/posiwise-resource-module-resource-blogs.module-BY02aMCz.mjs +0 -69
  28. package/fesm2022/posiwise-resource-module-resource-case-studies.module-CP7-pHth.mjs +0 -133
  29. package/fesm2022/posiwise-resource-module-resource-post.module-DvTdeeQt.mjs.map +0 -1
  30. package/fesm2022/posiwise-resource-module-resource-release-notes.module-CxAh59AL.mjs +0 -104
  31. package/fesm2022/posiwise-resource-module-resource-videos.module-BJxrv9JZ.mjs +0 -69
  32. package/fesm2022/posiwise-resource-module-resource-white-papers.module-iWQ29ue6.mjs +0 -70
@@ -1 +1 @@
1
- {"version":3,"file":"posiwise-resource-module-resource-root.module-BHGO5PqT.mjs","sources":["../../../../libs/resource-module/src/lib/public/components/resources/resource-tags/resource-tags.component.ts","../../../../libs/resource-module/src/lib/public/components/resources/resource-tags/resource-tags.component.html","../../../../libs/resource-module/src/lib/public/components/resources/vault-section/vault-section.component.ts","../../../../libs/resource-module/src/lib/public/components/resources/vault-section/vault-section.component.html","../../../../libs/resource-module/src/lib/public/components/resources/resources.component.ts","../../../../libs/resource-module/src/lib/public/components/resources/resources.component.html","../../../../libs/resource-module/src/lib/public/modules/root/resource-root-shared.module.ts","../../../../libs/resource-module/src/lib/public/modules/root/resource-root.module.ts"],"sourcesContent":["import {\n Component,\n EventEmitter,\n Injector,\n Input,\n OnChanges,\n OnInit,\n Output,\n SimpleChanges\n} from '@angular/core';\n\nimport { AppBaseComponent } from '@posiwise/app-base-component';\nimport { TagService } from '@posiwise/common-services';\nimport { Tag, User } from '@posiwise/common-utilities';\nimport { HelperService } from '@posiwise/helper-service';\n\n@Component({\n selector: 'pw-resource-tags',\n templateUrl: './resource-tags.component.html',\n styleUrls: [\n './resource-tags.component.scss',\n '../../resources-hub/resources-hub.component.scss'\n ],\n\n standalone: false\n})\nexport class ResourceTagComponent extends AppBaseComponent implements OnInit, OnChanges {\n @Output() tagsLoaded = new EventEmitter<Tag[]>();\n @Output() tagSelected = new EventEmitter<Tag>();\n @Input() user: User;\n @Input() userLoggedIn: boolean;\n\n tags = [];\n subscriptionId: number;\n loading = true;\n loaded = false;\n\n selectedTag: Tag | null = null;\n isMasterSubscription;\n\n canEditResourcesValue = false;\n\n constructor(\n private readonly tagService: TagService,\n injector: Injector\n ) {\n super(injector);\n }\n\n ngOnInit() {\n this.localStorage.getItem$('product').subscribe(product => {\n const data = product ? JSON.parse(product) : null;\n this.subscriptionId =\n data?.subscriptionId ?? this.appConfig.master_subscription.subscription_id;\n });\n this.getTags();\n }\n\n ngOnChanges(changes: SimpleChanges) {\n if (changes['user'] || changes['userLoggedIn']) {\n if (this.userLoggedIn && this.user) {\n this.updateCanEditResourcesValue();\n }\n }\n }\n\n navigateToTagList(): void {\n HelperService.navigateToTagList();\n }\n\n selectTag(tag: Tag): void {\n this.selectedTag = tag;\n this.tagSelected.emit(tag);\n }\n\n getTags() {\n this.loading = true;\n this.tagService\n .getTagsByType('post_categories', {}, this.getEffectiveSubscriptionId())\n .subscribe(res => {\n this.tags = (res?.tags ?? [])\n .filter(tag => tag.visible_in_resources)\n .map(tag => ({\n ...tag\n }));\n this.tagsLoaded.emit(this.tags);\n })\n .add(() => {\n this.loading = false;\n this.loaded = true;\n });\n }\n\n /** Helper method to get effective subscription ID */\n private getEffectiveSubscriptionId(): number {\n return HelperService.getEffectiveSubscriptionId(\n this.user,\n this.subscriptionId,\n this.appConfig.master_subscription.subscription_id\n );\n }\n\n private updateCanEditResourcesValue(): void {\n this.canEditResourcesValue = HelperService.canEditResources(\n this.user,\n this.userLoggedIn,\n this.permissionService\n );\n }\n\n canEditResources(): boolean {\n return this.canEditResourcesValue;\n }\n}\n","<section class=\"tag-section py-5 bg-white\" *ngIf=\"tags?.length\">\n <div class=\"container\">\n <i *ngIf=\"userLoggedIn && user?.auth?.granted['Pages.Admin']\"\n class=\"fa fa-edit in-page-edit-icon cursor-pointer text-black d-flex justify-content-end mb-3\"\n (click)=\"navigateToTagList()\"\n (keydown.enter)=\"navigateToTagList()\"\n (keydown.space)=\"navigateToTagList()\"\n title=\"Edit Tags\"></i>\n <div class=\"row g-4\">\n <div class=\"col-md-3 col-sm-6 col-6 mb-1 mb-lg-4\" *ngFor=\"let tag of tags\">\n <div (click)=\"selectTag(tag)\" (keydown.enter)=\"selectTag(tag)\" class=\"resource-card d-flex align-items-center p-3\" [ngClass]=\"{ 'selected': selectedTag?.name === tag.name }\">\n <i *ngIf=\"tag?.icon_name\" class=\"fa\" [ngClass]=\"tag.icon_name + ' resource-icon me-3'\"></i>\n <span class=\"resource-text\">{{ tag.name }}</span>\n </div>\n </div>\n </div>\n </div>\n</section>\n","import {\n Component,\n Injector,\n Input,\n OnChanges,\n OnDestroy,\n OnInit,\n SimpleChanges,\n TemplateRef,\n ViewChild\n} from '@angular/core';\nimport { Title } from '@angular/platform-browser';\n\nimport { AdminService } from '@posiwise/admin-module-utils';\nimport { AppBaseComponent } from '@posiwise/app-base-component';\nimport { User } from '@posiwise/common-utilities';\nimport { HelperService } from '@posiwise/helper-service';\nimport { CustomUploaderComponent } from '@posiwise/utils';\n\nimport { NgbModal } from '@ng-bootstrap/ng-bootstrap';\n\n@Component({\n selector: 'pw-vault-section',\n templateUrl: './vault-section.component.html',\n styleUrls: ['./vault-section.component.scss'],\n\n standalone: false\n})\nexport class VaultSectionComponent\n extends AppBaseComponent\n implements OnInit, OnChanges, OnDestroy\n{\n @ViewChild('editResourceModal') editResourceModalRef!: TemplateRef<CustomUploaderComponent>;\n @Input() user: User;\n @Input() userLoggedIn: boolean;\n\n companyName;\n resourceTagLine = this.appConfig.pages_config?.resources.resources_tagline;\n resourceImage = this.appConfig.pages_config?.resources.resources_image.url;\n resourceDescription = this.appConfig.pages_config?.resources.resources_description;\n domainId = this.appConfig.domain_id;\n\n image: string | null = null;\n file: File | null = null;\n imageModalRef;\n\n editingTagline = '';\n editingDescription = '';\n\n subscriptionId;\n isMasterSubscription;\n previewResourceImage: { url: string; name: string };\n\n canEditResourcesValue = false;\n\n private seoUpdateTimer;\n\n constructor(\n injector: Injector,\n private readonly modalService: NgbModal,\n private readonly adminService: AdminService,\n private readonly titleService: Title\n ) {\n super(injector);\n }\n\n ngOnInit() {\n this.previewResourceImage = {\n url: this.appConfig.pages_config?.resources.resources_image.url ?? '',\n name: 'resources_image.png'\n };\n this.companyName = this.appConfig?.company.name;\n\n // Critical image preloading is now handled server-side for better LCP performance\n\n // Use proper timer management instead of setTimeout\n this.scheduleSEOMetadataUpdate();\n }\n\n ngOnChanges(changes: SimpleChanges) {\n if (changes['user'] || changes['userLoggedIn']) {\n if (this.userLoggedIn && this.user) {\n this.permissionService.user = this.user;\n this.updateCanEditResourcesValue();\n }\n }\n }\n\n private scheduleSEOMetadataUpdate(): void {\n // Clear any existing timer to prevent multiple timers\n this.clearSEOTimer();\n\n // Schedule the SEO update with proper timer management\n this.seoUpdateTimer = setTimeout(() => {\n this.updateSEOMetadata();\n this.seoUpdateTimer = null; // Clear reference after execution\n }, 2000);\n }\n\n private clearSEOTimer(): void {\n if (this.seoUpdateTimer) {\n clearTimeout(this.seoUpdateTimer);\n this.seoUpdateTimer = null;\n }\n }\n\n private updateSEOMetadata() {\n // Use resource tagline as page title\n if (this.resourceTagLine) {\n this.titleService.setTitle(this.resourceTagLine);\n }\n\n // Use resource description as meta description\n if (this.resourceDescription) {\n this.updateMetaDescription(this.resourceDescription);\n }\n }\n\n private updateMetaDescription(description: string) {\n let metaDescription = document.querySelector('meta[name=\"description\"]');\n if (!metaDescription) {\n metaDescription = document.createElement('meta');\n metaDescription.setAttribute('name', 'description');\n document.head.appendChild(metaDescription);\n }\n metaDescription.setAttribute('content', description);\n }\n\n openEditResourceModal(): void {\n this.editingTagline = this.resourceTagLine;\n this.editingDescription = this.resourceDescription;\n this.image = this.resourceImage;\n this.file = null;\n this.modalService.open(this.editResourceModalRef, { centered: true });\n }\n\n saveResourceContent(modal): void {\n const formData = new FormData();\n\n formData.append('subscription_id', this.getEffectiveSubscriptionId().toString());\n formData.append('resources_tagline', this.editingTagline || '');\n formData.append('resources_description', this.editingDescription || '');\n\n if (this.file) {\n formData.append('resources_image', this.file);\n } else if (!this.image) {\n formData.append('remove_resources_image', 'true');\n }\n this.adminService.updateDomainConfig(this.appConfig?.domain_id, formData).subscribe(() => {\n this.resourceTagLine = this.editingTagline;\n this.resourceDescription = this.editingDescription;\n this.resourceImage = this.image;\n this.toast.success('Resources updated');\n modal.close();\n this.updateSEOMetadata();\n });\n }\n\n openImageModal(modalTemplate): void {\n this.imageModalRef = this.modalService.open(modalTemplate, { centered: true, size: 'md' });\n }\n\n onImageSelected(base64: string): void {\n this.image = base64;\n this.file = HelperService.convertBase64ToFile(base64);\n this.imageModalRef?.close();\n }\n\n removeImage(): void {\n this.image = null;\n this.file = null;\n }\n\n override ngOnDestroy(): void {\n // Clean up timer to prevent memory leaks\n this.clearSEOTimer();\n }\n\n /** Helper method to get effective subscription ID */\n private getEffectiveSubscriptionId(): number {\n return HelperService.getEffectiveSubscriptionId(\n this.user,\n this.subscriptionId,\n this.appConfig.master_subscription.subscription_id\n );\n }\n handleImageError(event: Event, fallbackPath): void {\n HelperService.handleImageFallbackPath(event, fallbackPath);\n }\n\n private updateCanEditResourcesValue(): void {\n if (this.userLoggedIn && this.user) {\n this.canEditResourcesValue = HelperService.canEditResources(\n this.user,\n this.userLoggedIn,\n this.permissionService\n );\n } else {\n this.canEditResourcesValue = false;\n }\n }\n\n canEditResources(): boolean {\n return this.canEditResourcesValue;\n }\n}\n","<section class=\"vault-section\">\n <div class=\"skewed-bg\"></div>\n\n <!-- Edit Icon (top-right) -->\n\n <div class=\"container\">\n <div class=\"row align-items-center vault-row\">\n <!-- Left Content -->\n <div class=\"col-lg-6 col-12 text-content\">\n <div class=\"d-flex\">\n <h2 class=\"headline\">{{resourceTagLine || 'UPDATE ME ON ADMIN/DOMAINS MODULE'}}</h2>\n <i\n *ngIf=\"canEditResourcesValue\"\n class=\"fa fa-edit tag-edit-icon in-page-edit-icon mt-4 ms-3 cursor-pointer\"\n title=\"Edit Resource\"\n (click)=\"openEditResourceModal()\"\n (keydown.enter)=\"openEditResourceModal()\"\n (keydown.space)=\"openEditResourceModal()\"\n ></i>\n </div>\n <div class=\"description-content\">\n <p class=\"description\" [innerHTML]=\"resourceDescription || 'UPDATE ME ON ADMIN/DOMAINS MODULE.'\">\n </p>\n </div>\n </div>\n\n <!-- Right Content -->\n <div class=\"col-lg-6 col-12 img-wrapper\">\n <ng-container *ngIf=\"resourceImage; else noVideo\">\n <img\n [src]=\"resourceImage\"\n alt=\"Vault Mockup\"\n class=\"img-fluid\"\n width=\"800\"\n height=\"600\"\n fetchpriority=\"high\"\n decoding=\"async\"\n loading=\"eager\" />\n </ng-container>\n\n <ng-template #noVideo>\n <pw-no-data [withImage]=\"true\" [message]=\"'ADD ME ON ADMIN/DOMAINS MODULE' | transloco\"></pw-no-data>\n </ng-template>\n </div>\n </div>\n </div>\n</section>\n\n<!-- Edit Modal -->\n<ng-template #editResourceModal let-modal>\n <div class=\"modal-header\">\n <h5 class=\"modal-title\">Edit Resources</h5>\n <button type=\"button\" class=\"btn-close\" aria-label=\"Close\" (click)=\"modal.dismiss()\"></button>\n </div>\n <div class=\"modal-body\">\n <div class=\"mb-3\">\n <label for=\"editTagline\" class=\"form-label\">Tagline</label>\n <input id=\"editTagline\" [(ngModel)]=\"editingTagline\" class=\"form-control\" />\n </div>\n <div class=\"mb-3\">\n <label for=\"editDescription\" class=\"form-label\">Description</label>\n <textarea id=\"editDescription\" [(ngModel)]=\"editingDescription\" rows=\"4\" class=\"form-control\"></textarea>\n </div>\n <div class=\"mb-3\">\n <label class=\"form-label\" for=\"resource-image\">Resource Image</label>\n <div class=\"text-center d-flex flex-column align-items-center\">\n <img\n [src]=\"image || 'assets/img/resource/blog.png'\"\n (click)=\"openImageModal(imageCropContent)\"\n (keydown.enter)=\"openImageModal(imageCropContent)\"\n class=\"image w-100 mb-2\"\n alt=\"Resource content\"\n (error)=\"handleImageError($event, 'assets/img/resource/blog.png')\" />\n\n <div class=\"d-flex justify-content-between align-items-center mt-2\">\n <a class=\"d-inline-block\" (click)=\"openImageModal(imageCropContent)\">\n {{ file || image ? 'Edit' : 'Add' }} Picture\n </a>\n <i *ngIf=\"image\"\n class=\"fa fa-trash delete-icon text-danger ms-2 cursor-pointer\"\n title=\"Remove Image\"\n (click)=\"removeImage()\"\n (keydown.enter)=\"removeImage()\"></i>\n </div>\n </div>\n </div>\n\n </div>\n <div class=\"modal-footer\">\n <button class=\"btn btn-primary\" (click)=\"saveResourceContent(modal)\">Save</button>\n <button class=\"btn btn-secondary\" (click)=\"modal.dismiss()\">Cancel</button>\n </div>\n</ng-template>\n\n\n\n<ng-template #imageCropContent let-modal>\n <div class=\"modal-header\">\n <h5 class=\"modal-title\">Upload Picture</h5>\n <button type=\"button\" class=\"btn-close\" (click)=\"modal.dismiss()\"></button>\n </div>\n <div class=\"modal-body\">\n <small>You can upload a JPG, GIF, or PNG file.</small>\n <pw-image-cropper\n [aspectRatio]=\"'dynamic'\"\n (imageSelectionEvent)=\"onImageSelected($event)\"\n (closeEvent)=\"modal.close()\">\n </pw-image-cropper>\n </div>\n</ng-template>\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n Injector,\n OnInit\n} from '@angular/core';\n\nimport { AppBaseComponent } from '@posiwise/app-base-component';\nimport { AuthService } from '@posiwise/common-services';\nimport { Tag, User } from '@posiwise/common-utilities';\n\n@Component({\n selector: 'pw-resources',\n templateUrl: './resources.component.html',\n styleUrls: ['./resources.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n\n standalone: false\n})\nexport class ResourceComponent extends AppBaseComponent implements OnInit {\n allTags: Tag[] = [];\n user: User;\n userLoggedIn: boolean;\n isFooterLoaded: boolean;\n\n constructor(\n private readonly authService: AuthService,\n private readonly cdr: ChangeDetectorRef,\n injector: Injector\n ) {\n super(injector);\n }\n\n ngOnInit() {\n this.authService.getToken$().subscribe(res => {\n this.userLoggedIn = !!res;\n this.cdr.markForCheck();\n if (this.userLoggedIn) {\n this.userService.getUserInfo().subscribe(data => {\n this.user = data;\n this.cdr.markForCheck();\n });\n }\n });\n }\n\n onTagsLoaded(tags: Tag[]) {\n this.allTags = tags;\n this.cdr.markForCheck();\n }\n\n hasTag(name: string): boolean {\n return this.allTags.some(tag => tag.name?.toLowerCase() === name.toLowerCase());\n }\n\n getCategoryIdByTagName(name: string): number | undefined {\n const tag = this.allTags.find(t => t.name?.toLowerCase() === name.toLowerCase());\n return tag?.tag_category_id;\n }\n\n getTag(name: string) {\n const tag = this.allTags.find(t => t.name?.toLowerCase() === name.toLowerCase());\n return tag;\n }\n\n getTitleByTagName(name: string): string | undefined {\n const tag = this.allTags.find(t => t.name?.toLowerCase() === name.toLowerCase());\n return tag?.title;\n }\n\n scrollToTag(tag: Tag) {\n const sectionMap: { [key: string]: string } = {\n Videos: 'videos',\n Events: 'events',\n 'Blog Posts': 'blog-posts',\n 'Case Studies': 'case-studies',\n 'White Papers': 'white-papers',\n 'Product Release Notes': 'product-release-notes'\n };\n\n const sectionId = sectionMap[tag.name?.trim()];\n if (sectionId) {\n setTimeout(() => {\n const el = document.getElementById(sectionId);\n if (el) el.scrollIntoView({ behavior: 'smooth', block: 'start' });\n }, 100);\n }\n }\n\n onVaultLoaded(isLoaded: boolean) {\n this.isFooterLoaded = isLoaded;\n console.log('Vault loaded:', isLoaded);\n }\n}\n","\n <pw-resource-header [user]=\"user\" [userLoggedIn]=\"userLoggedIn\"></pw-resource-header>\n <pw-vault-section [user]=\"user\" [userLoggedIn]=\"userLoggedIn\"></pw-vault-section>\n<pw-resource-tags [user]=\"user\" [userLoggedIn]=\"userLoggedIn\" (tagsLoaded)=\"onTagsLoaded($event)\" (tagSelected)=\"scrollToTag($event)\"></pw-resource-tags>\n<pw-resource-video-card id=\"videos\" [tag]=\"getTag('Videos')\" [showVideoSection]=\"true\" *ngIf=\"hasTag('Videos')\" [categoryId]=\"getCategoryIdByTagName('Videos')\" [resourceTitle]=\"getTitleByTagName('Videos')\" [user]=\"user\" [userLoggedIn]=\"userLoggedIn\"></pw-resource-video-card>\n<pw-upcoming-event-card id=\"events\" [tag]=\"getTag('Events')\" [showEventContent]=\"true\" *ngIf=\"hasTag('Events')\" [categoryId]=\"getCategoryIdByTagName('Events')\" [resourceTitle]=\"getTitleByTagName('Events')\" [user]=\"user\" [userLoggedIn]=\"userLoggedIn\"></pw-upcoming-event-card>\n<pw-resource-cards resourceLink=\"/resources/blogs\" [tag]=\"getTag('Blog Posts')\" id=\"blog-posts\" *ngIf=\"hasTag('Blog Posts')\" [categoryId]=\"getCategoryIdByTagName('Blog Posts')\" [resourceTitle]=\"getTitleByTagName('Blog Posts')\" [user]=\"user\" [userLoggedIn]=\"userLoggedIn\"></pw-resource-cards>\n<pw-case-studies-card id=\"case-studies\" [tag]=\"getTag('Case Studies')\" [showCaseStudyHeader]=\"true\" *ngIf=\"hasTag('Case Studies')\" [categoryId]=\"getCategoryIdByTagName('Case Studies')\" [resourceTitle]=\"getTitleByTagName('Case Studies')\" [user]=\"user\" [userLoggedIn]=\"userLoggedIn\"></pw-case-studies-card>\n<pw-resource--vault (isLoadedChange)=\"onVaultLoaded($event)\" id=\"white-papers\" [tag]=\"getTag('White Papers')\" [showVaultSection]=\"true\" *ngIf=\"hasTag('White Papers')\" [categoryId]=\"getCategoryIdByTagName('White Papers')\" [resourceTitle]=\"getTitleByTagName('White Papers')\" [user]=\"user\" [userLoggedIn]=\"userLoggedIn\"></pw-resource--vault>\n<pw-resource-note-card [isResource]=\"true\" [isReleasePress]=\"true\" id=\"product-release-notes\" [tag]=\"getTag('Product Release Notes')\" [releaseHeader]=\"true\" *ngIf=\"hasTag('Product Release Notes')\" [categoryId]=\"getCategoryIdByTagName('Product Release Notes')\" [resourceTitle]=\"getTitleByTagName('Product Release Notes')\" [user]=\"user\" [userLoggedIn]=\"userLoggedIn\"></pw-resource-note-card>\n<pw-trial-4-contact-us *ngIf=\"isFooterLoaded\" [user]=\"user\" [userLoggedIn]=\"userLoggedIn\"></pw-trial-4-contact-us>","import { CommonModule } from '@angular/common';\nimport { CUSTOM_ELEMENTS_SCHEMA, NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\nimport { CoreTranslocoModule } from '@posiwise/core-transloco';\nimport { ResourceSharedComponentsModule } from '@posiwise/shared-components';\n\nimport { TranslocoModule } from '@jsverse/transloco';\n\nimport { ResourceCardsModule } from '../../shared/resource-cards.module';\n\n/**\n * Shared module specifically for ResourceRootModule\n * Imports only the essential modules needed by the root resource page\n * without the unnecessary dependencies from ResourceSharedModule\n */\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n CoreTranslocoModule,\n TranslocoModule,\n ResourceSharedComponentsModule,\n ResourceCardsModule\n ],\n exports: [\n ResourceCardsModule,\n CommonModule,\n FormsModule,\n CoreTranslocoModule,\n TranslocoModule,\n ResourceSharedComponentsModule\n ],\n schemas: [CUSTOM_ELEMENTS_SCHEMA]\n})\nexport class ResourceRootSharedModule {}\n","import { CUSTOM_ELEMENTS_SCHEMA, NgModule } from '@angular/core';\nimport { RouterModule, Routes } from '@angular/router';\n\nimport { ResourceTagComponent } from '../../components/resources/resource-tags/resource-tags.component';\nimport { ResourceComponent } from '../../components/resources/resources.component';\nimport { VaultSectionComponent } from '../../components/resources/vault-section/vault-section.component';\n\nimport { ResourceRootSharedModule } from './resource-root-shared.module';\n\nconst routes: Routes = [\n {\n path: '',\n component: ResourceComponent,\n data: {\n title: 'Resources Library',\n permission: 'Pages.Blog',\n preload: false\n }\n }\n];\n\n@NgModule({\n declarations: [ResourceComponent, ResourceTagComponent, VaultSectionComponent],\n imports: [ResourceRootSharedModule, RouterModule.forChild(routes)],\n schemas: [CUSTOM_ELEMENTS_SCHEMA]\n})\nexport class ResourceRootModule {}\n"],"names":["i1","i2","i3","i4","i5","i6","i7","i8","i9","i2.ResourceVideoCardComponent","i3.UpcomingEventCardComponent","i4.ResourceCardComponent","i5.CaseStudyCardComponent","i6.ResourceNoteCardComponent","i7.ResourceVaultComponent","i10","i11.ResourceTagComponent","i12.VaultSectionComponent"],"mappings":"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"}
1
+ {"version":3,"file":"posiwise-resource-module-resource-root.module-DGItMsFh.mjs","sources":["../../../../libs/resource-module/src/lib/public/components/resources/resource-tags/resource-tags.component.ts","../../../../libs/resource-module/src/lib/public/components/resources/resource-tags/resource-tags.component.html","../../../../libs/resource-module/src/lib/public/components/resources/vault-section/vault-section.component.ts","../../../../libs/resource-module/src/lib/public/components/resources/vault-section/vault-section.component.html","../../../../libs/resource-module/src/lib/public/components/resources/resources.component.ts","../../../../libs/resource-module/src/lib/public/components/resources/resources.component.html","../../../../libs/resource-module/src/lib/public/modules/root/resource-root-shared.module.ts","../../../../libs/resource-module/src/lib/public/modules/root/resource-root.module.ts"],"sourcesContent":["import {\n Component,\n EventEmitter,\n Injector,\n Input,\n OnChanges,\n OnInit,\n Output,\n SimpleChanges\n} from '@angular/core';\n\nimport { AppBaseComponent } from '@posiwise/app-base-component';\nimport { TagService } from '@posiwise/common-services';\nimport { Tag, User } from '@posiwise/common-utilities';\nimport { HelperService } from '@posiwise/helper-service';\n\n@Component({\n selector: 'pw-resource-tags',\n templateUrl: './resource-tags.component.html',\n styleUrls: [\n './resource-tags.component.scss',\n '../../resources-hub/resources-hub.component.scss'\n ],\n\n standalone: false\n})\nexport class ResourceTagComponent extends AppBaseComponent implements OnInit, OnChanges {\n @Output() tagsLoaded = new EventEmitter<Tag[]>();\n @Output() tagSelected = new EventEmitter<Tag>();\n @Input() user: User;\n @Input() userLoggedIn: boolean;\n\n tags = [];\n subscriptionId: number;\n loading = true;\n loaded = false;\n\n selectedTag: Tag | null = null;\n isMasterSubscription;\n\n canEditResourcesValue = false;\n\n constructor(\n private readonly tagService: TagService,\n injector: Injector\n ) {\n super(injector);\n }\n\n ngOnInit() {\n this.localStorage.getItem$('product').subscribe(product => {\n const data = product ? JSON.parse(product) : null;\n this.subscriptionId =\n data?.subscriptionId ?? this.appConfig.master_subscription.subscription_id;\n });\n this.getTags();\n }\n\n ngOnChanges(changes: SimpleChanges) {\n if (changes['user'] || changes['userLoggedIn']) {\n if (this.userLoggedIn && this.user) {\n this.updateCanEditResourcesValue();\n }\n }\n }\n\n navigateToTagList(): void {\n HelperService.navigateToTagList();\n }\n\n selectTag(tag: Tag): void {\n this.selectedTag = tag;\n this.tagSelected.emit(tag);\n }\n\n getTags() {\n this.loading = true;\n this.tagService\n .getTagsByType('post_categories', {}, this.getEffectiveSubscriptionId())\n .subscribe(res => {\n this.tags = (res?.tags ?? [])\n .filter(tag => tag.visible_in_resources)\n .map(tag => ({\n ...tag\n }));\n this.tagsLoaded.emit(this.tags);\n })\n .add(() => {\n this.loading = false;\n this.loaded = true;\n });\n }\n\n /** Helper method to get effective subscription ID */\n private getEffectiveSubscriptionId(): number {\n return HelperService.getEffectiveSubscriptionId(\n this.user,\n this.subscriptionId,\n this.appConfig.master_subscription.subscription_id\n );\n }\n\n private updateCanEditResourcesValue(): void {\n this.canEditResourcesValue = HelperService.canEditResources(\n this.user,\n this.userLoggedIn,\n this.permissionService\n );\n }\n\n canEditResources(): boolean {\n return this.canEditResourcesValue;\n }\n}\n","<section class=\"tag-section py-5 bg-white\" *ngIf=\"tags?.length\">\n <div class=\"container\">\n <i *ngIf=\"userLoggedIn && user?.auth?.granted['Pages.Admin']\"\n class=\"fa fa-edit in-page-edit-icon cursor-pointer text-black d-flex justify-content-end mb-3\"\n (click)=\"navigateToTagList()\"\n (keydown.enter)=\"navigateToTagList()\"\n (keydown.space)=\"navigateToTagList()\"\n title=\"Edit Tags\"></i>\n <div class=\"row g-4\">\n <div class=\"col-md-3 col-sm-6 col-6 mb-1 mb-lg-4\" *ngFor=\"let tag of tags\">\n <div (click)=\"selectTag(tag)\" (keydown.enter)=\"selectTag(tag)\" class=\"resource-card d-flex align-items-center p-3\" [ngClass]=\"{ 'selected': selectedTag?.name === tag.name }\">\n <i *ngIf=\"tag?.icon_name\" class=\"fa\" [ngClass]=\"tag.icon_name + ' resource-icon me-3'\"></i>\n <span class=\"resource-text\">{{ tag.name }}</span>\n </div>\n </div>\n </div>\n </div>\n</section>\n","import {\n Component,\n Injector,\n Input,\n OnChanges,\n OnDestroy,\n OnInit,\n SimpleChanges,\n TemplateRef,\n ViewChild\n} from '@angular/core';\nimport { Title } from '@angular/platform-browser';\n\nimport { AdminService } from '@posiwise/admin-module-utils';\nimport { AppBaseComponent } from '@posiwise/app-base-component';\nimport { User } from '@posiwise/common-utilities';\nimport { HelperService } from '@posiwise/helper-service';\nimport { CustomUploaderComponent } from '@posiwise/utils';\n\nimport { NgbModal } from '@ng-bootstrap/ng-bootstrap';\n\n@Component({\n selector: 'pw-vault-section',\n templateUrl: './vault-section.component.html',\n styleUrls: ['./vault-section.component.scss'],\n\n standalone: false\n})\nexport class VaultSectionComponent\n extends AppBaseComponent\n implements OnInit, OnChanges, OnDestroy\n{\n @ViewChild('editResourceModal') editResourceModalRef!: TemplateRef<CustomUploaderComponent>;\n @Input() user: User;\n @Input() userLoggedIn: boolean;\n\n companyName;\n resourceTagLine = this.appConfig.pages_config?.resources.resources_tagline;\n resourceImage = this.appConfig.pages_config?.resources.resources_image.url;\n resourceDescription = this.appConfig.pages_config?.resources.resources_description;\n domainId = this.appConfig.domain_id;\n\n image: string | null = null;\n file: File | null = null;\n imageModalRef;\n\n editingTagline = '';\n editingDescription = '';\n\n subscriptionId;\n isMasterSubscription;\n previewResourceImage: { url: string; name: string };\n\n canEditResourcesValue = false;\n\n private seoUpdateTimer;\n\n constructor(\n injector: Injector,\n private readonly modalService: NgbModal,\n private readonly adminService: AdminService,\n private readonly titleService: Title\n ) {\n super(injector);\n }\n\n ngOnInit() {\n this.previewResourceImage = {\n url: this.appConfig.pages_config?.resources.resources_image.url ?? '',\n name: 'resources_image.png'\n };\n this.companyName = this.appConfig?.company.name;\n\n // Critical image preloading is now handled server-side for better LCP performance\n\n // Use proper timer management instead of setTimeout\n this.scheduleSEOMetadataUpdate();\n }\n\n ngOnChanges(changes: SimpleChanges) {\n if (changes['user'] || changes['userLoggedIn']) {\n if (this.userLoggedIn && this.user) {\n this.permissionService.user = this.user;\n this.updateCanEditResourcesValue();\n }\n }\n }\n\n private scheduleSEOMetadataUpdate(): void {\n // Clear any existing timer to prevent multiple timers\n this.clearSEOTimer();\n\n // Schedule the SEO update with proper timer management\n this.seoUpdateTimer = setTimeout(() => {\n this.updateSEOMetadata();\n this.seoUpdateTimer = null; // Clear reference after execution\n }, 2000);\n }\n\n private clearSEOTimer(): void {\n if (this.seoUpdateTimer) {\n clearTimeout(this.seoUpdateTimer);\n this.seoUpdateTimer = null;\n }\n }\n\n private updateSEOMetadata() {\n // Use resource tagline as page title\n if (this.resourceTagLine) {\n this.titleService.setTitle(this.resourceTagLine);\n }\n\n // Use resource description as meta description\n if (this.resourceDescription) {\n this.updateMetaDescription(this.resourceDescription);\n }\n }\n\n private updateMetaDescription(description: string) {\n let metaDescription = document.querySelector('meta[name=\"description\"]');\n if (!metaDescription) {\n metaDescription = document.createElement('meta');\n metaDescription.setAttribute('name', 'description');\n document.head.appendChild(metaDescription);\n }\n metaDescription.setAttribute('content', description);\n }\n\n openEditResourceModal(): void {\n this.editingTagline = this.resourceTagLine;\n this.editingDescription = this.resourceDescription;\n this.image = this.resourceImage;\n this.file = null;\n this.modalService.open(this.editResourceModalRef, { centered: true });\n }\n\n saveResourceContent(modal): void {\n const formData = new FormData();\n\n formData.append('subscription_id', this.getEffectiveSubscriptionId().toString());\n formData.append('resources_tagline', this.editingTagline || '');\n formData.append('resources_description', this.editingDescription || '');\n\n if (this.file) {\n formData.append('resources_image', this.file);\n } else if (!this.image) {\n formData.append('remove_resources_image', 'true');\n }\n this.adminService.updateDomainConfig(this.appConfig?.domain_id, formData).subscribe(() => {\n this.resourceTagLine = this.editingTagline;\n this.resourceDescription = this.editingDescription;\n this.resourceImage = this.image;\n this.toast.success('Resources updated');\n modal.close();\n this.updateSEOMetadata();\n });\n }\n\n openImageModal(modalTemplate): void {\n this.imageModalRef = this.modalService.open(modalTemplate, { centered: true, size: 'md' });\n }\n\n onImageSelected(base64: string): void {\n this.image = base64;\n this.file = HelperService.convertBase64ToFile(base64);\n this.imageModalRef?.close();\n }\n\n removeImage(): void {\n this.image = null;\n this.file = null;\n }\n\n override ngOnDestroy(): void {\n // Clean up timer to prevent memory leaks\n this.clearSEOTimer();\n }\n\n /** Helper method to get effective subscription ID */\n private getEffectiveSubscriptionId(): number {\n return HelperService.getEffectiveSubscriptionId(\n this.user,\n this.subscriptionId,\n this.appConfig.master_subscription.subscription_id\n );\n }\n handleImageError(event: Event, fallbackPath): void {\n HelperService.handleImageFallbackPath(event, fallbackPath);\n }\n\n private updateCanEditResourcesValue(): void {\n if (this.userLoggedIn && this.user) {\n this.canEditResourcesValue = HelperService.canEditResources(\n this.user,\n this.userLoggedIn,\n this.permissionService\n );\n } else {\n this.canEditResourcesValue = false;\n }\n }\n\n canEditResources(): boolean {\n return this.canEditResourcesValue;\n }\n}\n","<section class=\"vault-section\">\n <div class=\"skewed-bg\"></div>\n\n <!-- Edit Icon (top-right) -->\n\n <div class=\"container\">\n <div class=\"row align-items-center vault-row\">\n <!-- Left Content -->\n <div class=\"col-lg-6 col-12 text-content\">\n <div class=\"d-flex\">\n <h2 class=\"headline\">{{resourceTagLine || 'UPDATE ME ON ADMIN/DOMAINS MODULE'}}</h2>\n <i\n *ngIf=\"canEditResourcesValue\"\n class=\"fa fa-edit tag-edit-icon in-page-edit-icon mt-4 ms-3 cursor-pointer\"\n title=\"Edit Resource\"\n (click)=\"openEditResourceModal()\"\n (keydown.enter)=\"openEditResourceModal()\"\n (keydown.space)=\"openEditResourceModal()\"\n ></i>\n </div>\n <div class=\"description-content\">\n <p class=\"description\" [innerHTML]=\"resourceDescription || 'UPDATE ME ON ADMIN/DOMAINS MODULE.'\">\n </p>\n </div>\n </div>\n\n <!-- Right Content -->\n <div class=\"col-lg-6 col-12 img-wrapper\">\n <ng-container *ngIf=\"resourceImage; else noVideo\">\n <img\n [src]=\"resourceImage\"\n alt=\"Vault Mockup\"\n class=\"img-fluid\"\n width=\"800\"\n height=\"600\"\n fetchpriority=\"high\"\n decoding=\"async\"\n loading=\"eager\" />\n </ng-container>\n\n <ng-template #noVideo>\n <pw-no-data [withImage]=\"true\" [message]=\"'ADD ME ON ADMIN/DOMAINS MODULE' | transloco\"></pw-no-data>\n </ng-template>\n </div>\n </div>\n </div>\n</section>\n\n<!-- Edit Modal -->\n<ng-template #editResourceModal let-modal>\n <div class=\"modal-header\">\n <h5 class=\"modal-title\">Edit Resources</h5>\n <button type=\"button\" class=\"btn-close\" aria-label=\"Close\" (click)=\"modal.dismiss()\"></button>\n </div>\n <div class=\"modal-body\">\n <div class=\"mb-3\">\n <label for=\"editTagline\" class=\"form-label\">Tagline</label>\n <input id=\"editTagline\" [(ngModel)]=\"editingTagline\" class=\"form-control\" />\n </div>\n <div class=\"mb-3\">\n <label for=\"editDescription\" class=\"form-label\">Description</label>\n <textarea id=\"editDescription\" [(ngModel)]=\"editingDescription\" rows=\"4\" class=\"form-control\"></textarea>\n </div>\n <div class=\"mb-3\">\n <label class=\"form-label\" for=\"resource-image\">Resource Image</label>\n <div class=\"text-center d-flex flex-column align-items-center\">\n <img\n [src]=\"image || 'assets/img/resource/blog.png'\"\n (click)=\"openImageModal(imageCropContent)\"\n (keydown.enter)=\"openImageModal(imageCropContent)\"\n class=\"image w-100 mb-2\"\n alt=\"Resource content\"\n (error)=\"handleImageError($event, 'assets/img/resource/blog.png')\" />\n\n <div class=\"d-flex justify-content-between align-items-center mt-2\">\n <a class=\"d-inline-block\" (click)=\"openImageModal(imageCropContent)\">\n {{ file || image ? 'Edit' : 'Add' }} Picture\n </a>\n <i *ngIf=\"image\"\n class=\"fa fa-trash delete-icon text-danger ms-2 cursor-pointer\"\n title=\"Remove Image\"\n (click)=\"removeImage()\"\n (keydown.enter)=\"removeImage()\"></i>\n </div>\n </div>\n </div>\n\n </div>\n <div class=\"modal-footer\">\n <button class=\"btn btn-primary\" (click)=\"saveResourceContent(modal)\">Save</button>\n <button class=\"btn btn-secondary\" (click)=\"modal.dismiss()\">Cancel</button>\n </div>\n</ng-template>\n\n\n\n<ng-template #imageCropContent let-modal>\n <div class=\"modal-header\">\n <h5 class=\"modal-title\">Upload Picture</h5>\n <button type=\"button\" class=\"btn-close\" (click)=\"modal.dismiss()\"></button>\n </div>\n <div class=\"modal-body\">\n <small>You can upload a JPG, GIF, or PNG file.</small>\n <pw-image-cropper\n [aspectRatio]=\"'dynamic'\"\n (imageSelectionEvent)=\"onImageSelected($event)\"\n (closeEvent)=\"modal.close()\">\n </pw-image-cropper>\n </div>\n</ng-template>\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n Injector,\n OnInit\n} from '@angular/core';\n\nimport { AppBaseComponent } from '@posiwise/app-base-component';\nimport { AuthService } from '@posiwise/common-services';\nimport { Tag, User } from '@posiwise/common-utilities';\n\n@Component({\n selector: 'pw-resources',\n templateUrl: './resources.component.html',\n styleUrls: ['./resources.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n\n standalone: false\n})\nexport class ResourceComponent extends AppBaseComponent implements OnInit {\n allTags: Tag[] = [];\n user: User;\n userLoggedIn: boolean;\n isFooterLoaded: boolean;\n\n constructor(\n private readonly authService: AuthService,\n private readonly cdr: ChangeDetectorRef,\n injector: Injector\n ) {\n super(injector);\n }\n\n ngOnInit() {\n this.authService.getToken$().subscribe(res => {\n this.userLoggedIn = !!res;\n this.cdr.markForCheck();\n if (this.userLoggedIn) {\n this.userService.getUserInfo().subscribe(data => {\n this.user = data;\n this.cdr.markForCheck();\n });\n }\n });\n }\n\n onTagsLoaded(tags: Tag[]) {\n this.allTags = tags;\n this.cdr.markForCheck();\n }\n\n hasTag(name: string): boolean {\n return this.allTags.some(tag => tag.name?.toLowerCase() === name.toLowerCase());\n }\n\n getCategoryIdByTagName(name: string): number | undefined {\n const tag = this.allTags.find(t => t.name?.toLowerCase() === name.toLowerCase());\n return tag?.tag_category_id;\n }\n\n getTag(name: string) {\n const tag = this.allTags.find(t => t.name?.toLowerCase() === name.toLowerCase());\n return tag;\n }\n\n getTitleByTagName(name: string): string | undefined {\n const tag = this.allTags.find(t => t.name?.toLowerCase() === name.toLowerCase());\n return tag?.title;\n }\n\n scrollToTag(tag: Tag) {\n const sectionMap: { [key: string]: string } = {\n Videos: 'videos',\n Events: 'events',\n 'Blog Posts': 'blog-posts',\n 'Case Studies': 'case-studies',\n 'White Papers': 'white-papers',\n 'Product Release Notes': 'product-release-notes'\n };\n\n const sectionId = sectionMap[tag.name?.trim()];\n if (sectionId) {\n setTimeout(() => {\n const el = document.getElementById(sectionId);\n if (el) el.scrollIntoView({ behavior: 'smooth', block: 'start' });\n }, 100);\n }\n }\n\n onVaultLoaded(isLoaded: boolean) {\n this.isFooterLoaded = isLoaded;\n console.log('Vault loaded:', isLoaded);\n }\n}\n","\n <pw-resource-header [user]=\"user\" [userLoggedIn]=\"userLoggedIn\"></pw-resource-header>\n <pw-vault-section [user]=\"user\" [userLoggedIn]=\"userLoggedIn\"></pw-vault-section>\n<pw-resource-tags [user]=\"user\" [userLoggedIn]=\"userLoggedIn\" (tagsLoaded)=\"onTagsLoaded($event)\" (tagSelected)=\"scrollToTag($event)\"></pw-resource-tags>\n<pw-resource-video-card id=\"videos\" [tag]=\"getTag('Videos')\" [showVideoSection]=\"true\" *ngIf=\"hasTag('Videos')\" [categoryId]=\"getCategoryIdByTagName('Videos')\" [resourceTitle]=\"getTitleByTagName('Videos')\" [user]=\"user\" [userLoggedIn]=\"userLoggedIn\"></pw-resource-video-card>\n<pw-upcoming-event-card id=\"events\" [tag]=\"getTag('Events')\" [showEventContent]=\"true\" *ngIf=\"hasTag('Events')\" [categoryId]=\"getCategoryIdByTagName('Events')\" [resourceTitle]=\"getTitleByTagName('Events')\" [user]=\"user\" [userLoggedIn]=\"userLoggedIn\"></pw-upcoming-event-card>\n<pw-resource-cards resourceLink=\"/resources/blogs\" [tag]=\"getTag('Blog Posts')\" id=\"blog-posts\" *ngIf=\"hasTag('Blog Posts')\" [categoryId]=\"getCategoryIdByTagName('Blog Posts')\" [resourceTitle]=\"getTitleByTagName('Blog Posts')\" [user]=\"user\" [userLoggedIn]=\"userLoggedIn\"></pw-resource-cards>\n<pw-case-studies-card id=\"case-studies\" [tag]=\"getTag('Case Studies')\" [showCaseStudyHeader]=\"true\" *ngIf=\"hasTag('Case Studies')\" [categoryId]=\"getCategoryIdByTagName('Case Studies')\" [resourceTitle]=\"getTitleByTagName('Case Studies')\" [user]=\"user\" [userLoggedIn]=\"userLoggedIn\"></pw-case-studies-card>\n<pw-resource--vault (isLoadedChange)=\"onVaultLoaded($event)\" id=\"white-papers\" [tag]=\"getTag('White Papers')\" [showVaultSection]=\"true\" *ngIf=\"hasTag('White Papers')\" [categoryId]=\"getCategoryIdByTagName('White Papers')\" [resourceTitle]=\"getTitleByTagName('White Papers')\" [user]=\"user\" [userLoggedIn]=\"userLoggedIn\"></pw-resource--vault>\n<pw-resource-note-card [isResource]=\"true\" [isReleasePress]=\"true\" id=\"product-release-notes\" [tag]=\"getTag('Product Release Notes')\" [releaseHeader]=\"true\" *ngIf=\"hasTag('Product Release Notes')\" [categoryId]=\"getCategoryIdByTagName('Product Release Notes')\" [resourceTitle]=\"getTitleByTagName('Product Release Notes')\" [user]=\"user\" [userLoggedIn]=\"userLoggedIn\"></pw-resource-note-card>\n<pw-trial-4-contact-us *ngIf=\"isFooterLoaded\" [user]=\"user\" [userLoggedIn]=\"userLoggedIn\"></pw-trial-4-contact-us>","import { CommonModule } from '@angular/common';\nimport { CUSTOM_ELEMENTS_SCHEMA, NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\nimport { CoreTranslocoModule } from '@posiwise/core-transloco';\nimport { ResourceSharedComponentsModule } from '@posiwise/shared-components';\n\nimport { TranslocoModule } from '@jsverse/transloco';\n\nimport { ResourceCardsModule } from '../../shared/resource-cards.module';\n\n/**\n * Shared module specifically for ResourceRootModule\n * Imports only the essential modules needed by the root resource page\n * without the unnecessary dependencies from ResourceSharedModule\n */\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n CoreTranslocoModule,\n TranslocoModule,\n ResourceSharedComponentsModule,\n ResourceCardsModule\n ],\n exports: [\n ResourceCardsModule,\n CommonModule,\n FormsModule,\n CoreTranslocoModule,\n TranslocoModule,\n ResourceSharedComponentsModule\n ],\n schemas: [CUSTOM_ELEMENTS_SCHEMA]\n})\nexport class ResourceRootSharedModule {}\n","import { CUSTOM_ELEMENTS_SCHEMA, NgModule } from '@angular/core';\nimport { RouterModule, Routes } from '@angular/router';\n\nimport { ResourceTagComponent } from '../../components/resources/resource-tags/resource-tags.component';\nimport { ResourceComponent } from '../../components/resources/resources.component';\nimport { VaultSectionComponent } from '../../components/resources/vault-section/vault-section.component';\n\nimport { ResourceRootSharedModule } from './resource-root-shared.module';\n\nconst routes: Routes = [\n {\n path: '',\n component: ResourceComponent,\n data: {\n title: 'Resources Library',\n permission: 'Pages.Blog',\n preload: false\n }\n }\n];\n\n@NgModule({\n declarations: [ResourceComponent, ResourceTagComponent, VaultSectionComponent],\n imports: [ResourceRootSharedModule, RouterModule.forChild(routes)],\n schemas: [CUSTOM_ELEMENTS_SCHEMA]\n})\nexport class ResourceRootModule {}\n"],"names":["i1","i2","i3","i4","i5","i6","i7","i8","i9","i2.ResourceVideoCardComponent","i3.UpcomingEventCardComponent","i4.ResourceCardComponent","i5.CaseStudyCardComponent","i6.ResourceNoteCardComponent","i7.ResourceVaultComponent","i10","i11.ResourceTagComponent","i12.VaultSectionComponent"],"mappings":"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"}
@@ -0,0 +1,69 @@
1
+ import * as i0 from '@angular/core';
2
+ import { Component, NgModule } from '@angular/core';
3
+ import * as i1 from '@angular/router';
4
+ import { RouterModule } from '@angular/router';
5
+ import * as i2 from '@posiwise/common-services';
6
+ import { e as ResourceService, h as ResourceTopBannerEditComponent, B as BaseResourceComponent, R as ResourceVideoCardComponent, g as ResourceSharedModule } from './posiwise-resource-module-posiwise-resource-module-Cbhl4OZt.mjs';
7
+ import * as i4 from '@posiwise/resource-contact-us';
8
+ import * as i3$1 from '@angular/common';
9
+ import * as i6 from '@posiwise/utils';
10
+ import * as i3 from '@angular/platform-browser';
11
+ import { B as BaseTopBannerComponent } from './posiwise-resource-module-base-top-banner.component-BPTic8Ha.mjs';
12
+ import * as i8 from '@posiwise/directives';
13
+
14
+ class VideosTopBannerComponent extends BaseTopBannerComponent {
15
+ constructor(resourceService, tagService, authService, titleService, injector) {
16
+ super(resourceService, tagService, authService, titleService, injector);
17
+ }
18
+ getSearchTerm() {
19
+ return 'Videos';
20
+ }
21
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: VideosTopBannerComponent, deps: [{ token: ResourceService }, { token: i2.TagService }, { token: i2.AuthService }, { token: i3.Title }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component }); }
22
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.18", type: VideosTopBannerComponent, isStandalone: false, selector: "pw-resource-videos-top-banner", usesInheritance: true, ngImport: i0, template: "<section class=\"bg-white pricing-section\">\n <div class=\"resource-banner\">\n <div class=\"container d-flex flex-column flex-lg-row align-items-center justify-content-between\" *ngIf=\"isLoaded\">\n\n <!-- Left Content -->\n <div class=\"text-content\">\n <div class=\"resource-heading\">\n <h1 class=\"resource-header-text mb-4\">\n <span class=\"d-inline-flex align-items-center gap-2 flex-wrap\">\n <span [innerHTML]=\"blogPostTag?.title || 'Videos on Demand'\"></span>\n <pw-resource-top-banner-edit\n *ngIf=\"canEditResourcesValue\"\n [blogPostTag]=\"blogPostTag\"\n [user]=\"user\"\n [userLoggedIn]=\"userLoggedIn\"\n (getUpdatedTag)=\"getPostTags()\"\n ></pw-resource-top-banner-edit>\n </span>\n <span class=\"blue-text\"></span>\n </h1>\n </div>\n </div>\n\n <!-- Add directly below .text-content, still inside .container -->\n <div class=\"text-extension mt-4\">\n\n <div class=\"cta-buttons d-flex flex-column justify-between h-100\">\n <div class=\"flex-grow-1\">\n <ng-container *ngIf=\"blogPostTag?.description && blogPostTag.description !== 'null' ; else defaultDescription\">\n <p class=\"intro\" [innerHTML]=\"blogPostTag.description\"></p>\n </ng-container>\n <ng-template #defaultDescription>\n <p class=\"intro\">\n Discover below all our videos.\n </p>\n </ng-template>\n </div>\n </div>\n</div>\n\n <!-- Right Content -->\n <div class=\"image-content ms-lg-5 mt-5 mt-lg-0\">\n <div class=\"resource-math-img\" ></div>\n <img class=\"resource-laptop-img dyn-img\"\n [src]=\"(blogPostTag?.image?.url && !(blogPostTag?.image?.url.includes('no_image_uploaded_squared'))) ? blogPostTag?.image?.url : '/assets/img/resource/video-template.png'\"\n alt=\"Videos on demand banner\"\n loading=\"eager\"\n fetchpriority=\"high\" />\n </div>\n\n </div>\n </div>\n</section>\n", styles: ["@charset \"UTF-8\";.cta-btn{display:inline-block;background:var(--text-color, black);color:#fff;padding:1rem 2rem;border-radius:40px;font-weight:500;text-decoration:none;font-size:1.4rem;border:1px solid;box-shadow:none!important;border-color:var(--text-color, textColor)}.cta-btn:hover{background-color:#fff!important;color:var(--text-color, black)!important}@media (width <= 768px){.dyn-img{top:-3rem!important}}.text-extension{max-width:560px}.text-extension .intro{font-size:2rem;line-height:3rem;font-weight:400;color:var(--text-color, black);margin-bottom:1rem}.text-extension .cta-buttons{margin-top:2rem!important}.text-extension .note{font-size:1.2rem;color:#000;margin-top:1rem;margin-left:3rem}.resource-banner{box-shadow:0 4px 32px -14px #40576d4d!important;position:relative;padding:5rem 0;color:#fff;background:linear-gradient(90deg,var(--first) 0%,#a8e1fb 100%);overflow:hidden;z-index:2}@media (width <= 1200px){.resource-banner .container{padding:7rem 3rem 0rem!important}}.resource-banner:after{content:\"\";position:absolute;bottom:0;left:0;width:100%;height:61%;background:#fff;clip-path:polygon(0 18%,100% 0%,100% 100%,0% 100%)}.resource-banner .container{position:relative;z-index:2}.resource-banner .text-content{max-width:500px;text-align:left;margin-bottom:75rem}.resource-banner .text-content h1{margin-bottom:1.5rem;line-height:1.2}.resource-banner .text-content .intro{font-size:1.2rem;margin:1rem 0;color:#000}.resource-banner .text-content .cta-btn{display:inline-block;background:#000;color:#fff;padding:1rem 2rem;border-radius:40px;font-weight:500;text-decoration:none;font-size:1.4rem}.resource-banner .text-content .cta-buttons{margin-top:2rem}.resource-banner .text-content .note{margin-top:1rem;margin-left:5.6rem;font-size:.9rem;color:#555}.resource-banner .resource-header-text{max-width:500px;font-weight:500;color:#fff!important;font-size:4.5rem!important}.resource-banner .blue-text{font-weight:100}@media (width <= 991px){.resource-banner .text-content{margin-top:1.5rem;margin-bottom:0;text-align:center;max-width:360px}.resource-banner .text-content h1{margin-bottom:6.5rem!important}.resource-banner .resource-header-text{font-size:2.5rem!important}.resource-banner .cta-buttons{margin-top:0rem!important;justify-content:center!important}.resource-banner .note{margin-left:8rem!important}.resource-banner .image-content{position:relative;margin-bottom:3rem;height:230px}.resource-banner .image-content .floating-box{position:absolute;top:25px;left:3rem;transform:translate(-50%) rotate(-10deg);background:#fff;padding:.75rem 1rem;border-radius:20px;box-shadow:0 8px 30px #00000026;text-align:center;z-index:3;display:inline-block;width:auto}.resource-banner .image-content .floating-box img{width:24px;margin-bottom:.4rem}.resource-banner .image-content .floating-box .label{font-size:.75rem;color:#333;margin:0;line-height:1.2}.resource-banner .image-content .floating-box .count{font-size:1.2rem;font-weight:700;color:#000;margin-top:.25rem}.resource-banner .image-content .screen-img{max-width:280px;position:absolute;bottom:0;left:3rem;z-index:2;transform:rotate(-1deg);box-shadow:0 8px 15px #0003}.resource-banner .image-content .person-img{max-width:170px;width:100%;position:relative;z-index:3;left:13rem;top:-11.35rem}.resource-banner .image-content .resource-laptop-img{max-width:300px;width:100%;position:relative;z-index:3;margin-top:3rem;left:2%;height:auto!important;top:4rem}}@media (width >= 991px){.resource-banner .text-content{position:absolute;width:760px}}.white-content{background:#fff;color:#000}.white-content .intro{font-size:1.2rem;color:#000}.white-content .note{font-size:.85rem;margin-top:1rem;color:#555}@media (width >= 991px){.section-outer{padding-top:7rem!important}}@media (width >= 768px) and (width <= 991px){.resource-math-img{left:36%!important;top:22rem!important}}@media (width >= 991px) and (width <= 1200px){.text-extension{max-width:760px;position:absolute;margin-bottom:23rem!important}.resource-divider{top:63.5rem;position:absolute!important}.resource-banner{padding-bottom:90px!important}}@media (width >= 1200px){.text-extension{max-width:500px;position:absolute;margin-bottom:31rem!important}.resource-laptop-img{width:100%;max-width:800px!important;max-height:800px!important;height:auto}}@media (width >= 1200px){.resource-divider{top:59.5rem;position:absolute!important}.cta-tab{margin-bottom:5rem!important}}@media (width >= 1200px){.image-content{margin-top:0;display:flex;align-items:flex-end;gap:1.5rem;height:0}.image-content .floating-box{position:absolute;top:25px;transform:translate(-50%) rotate(-10deg);background:#fff;padding:1rem;border-radius:20px;box-shadow:0 8px 30px #00000026;text-align:center;width:170px;z-index:3}.image-content .floating-box img{width:30px;margin-bottom:.5rem}.image-content .floating-box .label{font-size:.85rem;color:#333;margin:0}.image-content .floating-box .count{font-size:1.5rem;font-weight:700;color:#000;margin:.25rem 0 0}.image-content .screen-img{width:100%;position:absolute;bottom:5rem;left:3rem;z-index:2;transform:rotate(-1deg);box-shadow:0 8px 15px #0003;max-width:400px;margin-bottom:4rem}.image-content .person-img{max-width:800px;width:100%;position:relative;z-index:3;min-width:420px;margin-bottom:0;bottom:7rem;left:4rem}.image-content .resource-laptop-img{top:4rem;left:2rem;position:relative}.image-content .resource-math-img{bottom:9rem;left:61rem;position:relative;height:312px;margin-right:1rem;min-width:450px!important}}@media (width <= 786px){.text-extension{position:absolute;margin:3rem;margin-top:11rem!important}}@media (width >= 786px) and (width <= 991px){.text-extension{position:absolute;margin:3rem;margin-top:24rem!important}}@media (width >= 704px) and (width <= 768px){.resource-laptop-img{top:18rem!important;right:30%!important;left:auto!important}}@media (width >= 786px) and (width <= 991px){.resource-laptop-img{max-width:250px!important;top:18rem!important;right:30%!important;left:auto!important}}@media (width >= 991px) and (width <= 1200px){.resource-laptop-img{top:7rem;left:3%;position:relative;width:100%;max-width:600px!important;height:auto}}@media (width >= 786px) and (width <= 1200px){.image-content{margin-top:0;display:flex;align-items:flex-end;gap:1.5rem;height:0}.image-content .floating-box{position:absolute;top:25px;transform:translate(-50%) rotate(-10deg);background:#fff;padding:1rem;border-radius:20px;box-shadow:0 8px 30px #00000026;text-align:center;width:170px;z-index:3}.image-content .floating-box img{width:30px;margin-bottom:.5rem}.image-content .floating-box .label{font-size:.85rem;color:#333;margin:0}.image-content .floating-box .count{font-size:1.5rem;font-weight:700;color:#000;margin:.25rem 0 0}.image-content .screen-img{width:100%;position:absolute;bottom:5rem;left:3rem;z-index:2;transform:rotate(-1deg);box-shadow:0 8px 15px #0003;max-width:400px;margin-bottom:4rem}.image-content .person-img{max-width:800px;width:100%;position:relative;z-index:3;min-width:420px;margin-bottom:0;bottom:7rem;left:4rem}.image-content .resource-math-img{height:243px!important;min-width:350px;bottom:9rem;left:34rem;position:relative;width:350px!important}}@media (width <= 991px){.resource-banner{padding-bottom:15rem}}@media (width <= 768px){.resource-math-img{top:18rem}.cta-btn{justify-content:center}.resource-divider{margin-top:49rem!important}.intro{font-size:1.7rem!important}}@media (width >= 768px) and (width <= 991px){.cta-btn{justify-content:center}.resource-divider{margin-top:36rem!important}}@media (width >= 991px){.resource-banner{padding-top:768px;padding-bottom:42px;overflow:hidden}.section-fadeout{height:40px;width:100%;background:linear-gradient(to bottom,#fff0,#f8f9fa)}.resource-heading{width:700px!important}::ng-deep .vault-section{max-width:1580px!important;padding-left:48px!important;padding-top:130px!important}}@media (width <= 991px){.billing-section{flex-direction:column!important;gap:3rem}.billing-section .billing-section1,.billing-section .billing-section2{width:90%!important}.billing-section .billing-section1{margin-left:1.5rem;margin-top:4rem}}@media (width >= 768px) and (width <= 1200px){.container{padding:0 6rem!important}.outer-section-fadeout{top:62rem!important}}@media (max-width: 991px){.resource-banner .container{display:flex;flex-direction:column;align-items:flex-start;min-height:auto}.resource-banner .text-content,.resource-banner .text-extension,.resource-banner .image-content{position:static!important;left:auto;top:auto;max-width:100%;margin:0!important}.resource-banner .text-content{margin-bottom:0!important}.text-extension{margin-top:1rem!important}.resource-banner .image-content{width:100%;height:auto;align-self:center;margin-top:auto!important}.resource-banner .resource-laptop-img{position:static!important;max-width:260px;width:100%;height:auto!important}.resource-banner{padding:2rem 0 0rem!important}}@media (max-width: 575px){.resource-banner:after{height:45%}}\n", "@media (width <= 768px){.dyn-img{top:6rem!important}}\n", ".bold{font-weight:700}.resource-heading{margin-bottom:2rem}.resource-note{margin-top:1rem;font-size:.85rem;color:#555}.resource-divider{border:0;height:40px;width:100%;background:linear-gradient(to bottom,#0000,#00000026);margin:0}.press-release-icon{height:auto!important;margin:0 11px 1.9rem;display:block;align-self:center;width:auto!important;aspect-ratio:0!important;object-fit:cover;margin-top:auto;margin-right:0!important}.resource-vault-section{padding:60px 0;background:#fff;padding-bottom:9rem!important;padding-top:7rem!important;box-shadow:0 4px 32px -14px #40576d4d!important}.resource-vault-section .vault-heading{font-size:3rem;font-weight:300}.resource-vault-section .explore-link{color:#000;font-weight:400;text-decoration:none;font-size:1.5rem}.resource-vault-section .resource-blog-card{display:flex;flex-direction:column;justify-content:space-between;background-color:#fff;border-radius:30px;box-shadow:0 20px 40px #00000014;padding:25px;text-align:center;width:338px;height:auto!important}.resource-vault-section .resource-blog-card h5{font-size:1.5rem;font-weight:400;margin-bottom:.5rem;color:var(--text-color, black)}.resource-vault-section .resource-blog-card p{font-size:1.5rem;color:var(--text-color, black);line-height:2rem}.resource-vault-section .resource-blog-card img{width:100%;border-radius:10px;aspect-ratio:1/1;object-fit:cover;margin-top:auto;margin-right:0!important;max-width:250px!important;align-self:center!important}.resource-vault-section .resource-blog-card iframe{height:210px;border-radius:10px;object-fit:cover;margin-right:0!important;max-width:280px!important}.resource-vault-section .resource-blog-card .resource-btn{background-color:var(--text-color, black);color:#fff;margin-top:auto;padding:10px 24px;border-radius:24px;font-size:1.5rem;font-weight:500;width:100%;max-width:240px;cursor:pointer;transition:background .3s ease;display:flex;justify-content:space-between;align-self:center;align-items:center;text-align:left;text-decoration:none;border:1px solid;box-shadow:none!important;border-color:var(--text-color, black)}.resource-vault-section .resource-blog-card .resource-btn:hover{background:#fff;color:var(--text-color, black)!important}.resource-vault-section .vault-description{text-align:left;max-width:657px;color:#182527;line-height:2.3rem!important;font-size:1.65rem}@media (width <= 1200px){.resource-vault-section .vault-heading{font-size:3.5rem}.resource-vault-section .vault-description{margin-top:1.35rem}.resource-vault-section .resource-btn{margin-left:0!important}}.video-row{gap:5.5rem!important;margin-top:3rem!important}@media (width >= 991px){section.bg-white.text-center.extra-top-padding{position:relative;overflow:hidden}section.bg-white.text-center.extra-top-padding .banner-header{margin-bottom:4rem!important}}.vault-header{text-align:left}@media (width >= 768px) and (width <= 1200px){.container{padding:0 6rem!important}}@media (width <= 768px){.video-row{gap:3rem!important}}@media (max-width: 768px){.resource-vault-section{padding-bottom:6rem!important}.resource-vault-section .container{padding-top:0rem!important;padding-bottom:0rem!important}.vault-header{text-align:center!important}.vault-heading{font-size:3rem!important}}@media (width <= 1200px){.container{padding:7rem 3rem 1rem!important}}\n", ".video-row{gap:5.5rem!important;margin-top:3rem!important}::ng-deep .resource-section{box-shadow:0 4px 32px -14px #40576d4d!important}.release-icon{height:auto;margin:0 11px 1.9rem;display:block;align-self:center}@media (width >= 768px) and (width <= 1200px){.resource-title{font-size:1.4rem!important}}textarea{font-size:1.4rem!important}@media (width <= 768px){.resource-title{font-size:1.2rem!important}.container{padding:1rem!important}}@media (width >= 768px) and (width <= 1200px){.container{padding:1rem 3rem!important}}@media (width <= 1200px){.resource-vault-section .vault-heading{font-size:3.5rem}.resource-vault-section .vault-description{margin-top:1.35rem}.resource-vault-section .vault-card{width:100%!important}.resource-vault-section .vault-btn{margin-left:0!important;width:100%!important}}@media (width >= 991px){::ng-deep .trial-meeting-section:before{top:600px!important}::ng-deep .dashboard{margin-bottom:1rem!important}section.bg-white.text-center.extra-top-padding{position:relative;overflow:hidden}section.bg-white.text-center.extra-top-padding .banner-header{margin-bottom:4rem!important}section.bg-white.text-center.extra-top-padding:before,section.bg-white.text-center.extra-top-padding:after{content:\"\";position:absolute;background:url(/assets/img/logos/background-banner.png) no-repeat;background-size:contain;width:160px;height:450px;z-index:0;opacity:.8}section.bg-white.text-center.extra-top-padding:before{top:500px;left:0}section.bg-white.text-center.extra-top-padding:after{top:90px;right:0}}.vault-header{text-align:left}@media (width >= 768px) and (width <= 1200px){.container{padding:0 6rem!important}}@media (width <= 1200px){.resource-card{width:100%!important}.release-notes-section{padding:7rem 0!important}}@media (width >= 768px) and (width <= 1200px){.resource-hero-section{padding:0 6rem!important}.cards-row{justify-content:center}}.resource-body-section{background-color:#fff}.resource-body-section .container{padding:0 1.5rem;padding-bottom:4rem!important;padding-top:7rem!important;max-width:850px;margin:0 auto;text-align:left}.user-not-logged-in{background:#f7f7f7;border:1px solid rgb(238,238,238);font-weight:400}.user-not-logged-in a{color:var(--first)!important;text-decoration:none;font-weight:500}.resource-book-section{background:#fff;padding-top:7rem;padding-bottom:0}.resource-book-section .container{max-width:850px;margin:0 auto;padding:0 2rem!important;text-align:left}.resource-book-section .resource-contact{line-height:1.6;font-size:1.5rem}.resource-book-section .resource-contact a{text-decoration:underline;color:#000;margin:0 .2rem}.resource-book-section .resource-contact a:hover{color:var(--first)!important}.resource-offer-section{background:#fff;padding-top:2rem}.resource-offer-section .container{max-width:850px;margin:0 auto;padding:0 1.5rem;text-align:left}.resource-offer-section .resource-title{font-size:2rem;font-weight:700;color:#000;margin-bottom:.25em!important}.resource-offer-section .resource-title strong{font-weight:700}.resource-offer-section .resource-description{font-size:1.5rem;line-height:1.8rem;color:#333;margin-bottom:1.5rem}.resource-offer-section .resource-offer-list{font-size:1.1rem;line-height:1.5rem;margin-bottom:2.5rem;margin-top:2.5rem}.resource-offer-section .resource-offer-list p{font-size:1.5rem;margin:.5rem 0;font-weight:400}.resource-offer-section .resource-signup{margin-bottom:2.5rem}.resource-offer-section .resource-signup .signup-link{font-size:1.5rem;font-weight:400;text-decoration:underline;color:#000}@media (width <= 768px){.resource-offer-section .resource-book-section{padding-top:2rem!important}.resource-offer-section .container{text-align:left}.resource-offer-section .resource-title{font-size:1.5rem}.resource-offer-section .resource-description,.resource-offer-section .resource-offer-list,.resource-offer-section .resource-signup,.resource-offer-section .signup-link,.resource-offer-section .resource-contact,.resource-offer-section .resource-offer-list p{font-size:1.2rem!important}}.resource-offer-intro{font-size:1.5rem;font-weight:400}.outer-section-fadeout{position:absolute;top:139rem;height:40px;width:100%;background:linear-gradient(to bottom,#fff0,#f8f9fa)}.body-divider{border:0;height:40px;width:100%;background:linear-gradient(to bottom,#0000,#00000026);margin:0}@media (width <= 768px){.resource-book-section{padding-top:2rem!important}.resource-contact{font-size:1.2rem!important}}::ng-deep .body-quill{border-width:0!important;max-width:900px;display:block;margin-left:auto;margin-right:auto}::ng-deep .p-textarea{border-radius:.5rem;border:1px solid #ced4da;font-size:1rem!important}.card{background-color:#fff;border-radius:12px}.comment-row{gap:2rem;padding-bottom:5rem;max-width:1000px;display:block;margin-left:auto;margin-right:auto}.comment-label{font-size:1.5rem!important}.response-row{max-width:1000px;display:block;margin-left:auto;margin-right:auto;margin-top:3rem!important}\n"], dependencies: [{ kind: "component", type: ResourceTopBannerEditComponent, selector: "pw-resource-top-banner-edit", inputs: ["blogPostTag", "user", "userLoggedIn"], outputs: ["getUpdatedTag"] }, { kind: "directive", type: i3$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i8.LazyImgDirective, selector: "img" }] }); }
23
+ }
24
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: VideosTopBannerComponent, decorators: [{
25
+ type: Component,
26
+ args: [{ selector: 'pw-resource-videos-top-banner', standalone: false, template: "<section class=\"bg-white pricing-section\">\n <div class=\"resource-banner\">\n <div class=\"container d-flex flex-column flex-lg-row align-items-center justify-content-between\" *ngIf=\"isLoaded\">\n\n <!-- Left Content -->\n <div class=\"text-content\">\n <div class=\"resource-heading\">\n <h1 class=\"resource-header-text mb-4\">\n <span class=\"d-inline-flex align-items-center gap-2 flex-wrap\">\n <span [innerHTML]=\"blogPostTag?.title || 'Videos on Demand'\"></span>\n <pw-resource-top-banner-edit\n *ngIf=\"canEditResourcesValue\"\n [blogPostTag]=\"blogPostTag\"\n [user]=\"user\"\n [userLoggedIn]=\"userLoggedIn\"\n (getUpdatedTag)=\"getPostTags()\"\n ></pw-resource-top-banner-edit>\n </span>\n <span class=\"blue-text\"></span>\n </h1>\n </div>\n </div>\n\n <!-- Add directly below .text-content, still inside .container -->\n <div class=\"text-extension mt-4\">\n\n <div class=\"cta-buttons d-flex flex-column justify-between h-100\">\n <div class=\"flex-grow-1\">\n <ng-container *ngIf=\"blogPostTag?.description && blogPostTag.description !== 'null' ; else defaultDescription\">\n <p class=\"intro\" [innerHTML]=\"blogPostTag.description\"></p>\n </ng-container>\n <ng-template #defaultDescription>\n <p class=\"intro\">\n Discover below all our videos.\n </p>\n </ng-template>\n </div>\n </div>\n</div>\n\n <!-- Right Content -->\n <div class=\"image-content ms-lg-5 mt-5 mt-lg-0\">\n <div class=\"resource-math-img\" ></div>\n <img class=\"resource-laptop-img dyn-img\"\n [src]=\"(blogPostTag?.image?.url && !(blogPostTag?.image?.url.includes('no_image_uploaded_squared'))) ? blogPostTag?.image?.url : '/assets/img/resource/video-template.png'\"\n alt=\"Videos on demand banner\"\n loading=\"eager\"\n fetchpriority=\"high\" />\n </div>\n\n </div>\n </div>\n</section>\n", styles: ["@charset \"UTF-8\";.cta-btn{display:inline-block;background:var(--text-color, black);color:#fff;padding:1rem 2rem;border-radius:40px;font-weight:500;text-decoration:none;font-size:1.4rem;border:1px solid;box-shadow:none!important;border-color:var(--text-color, textColor)}.cta-btn:hover{background-color:#fff!important;color:var(--text-color, black)!important}@media (width <= 768px){.dyn-img{top:-3rem!important}}.text-extension{max-width:560px}.text-extension .intro{font-size:2rem;line-height:3rem;font-weight:400;color:var(--text-color, black);margin-bottom:1rem}.text-extension .cta-buttons{margin-top:2rem!important}.text-extension .note{font-size:1.2rem;color:#000;margin-top:1rem;margin-left:3rem}.resource-banner{box-shadow:0 4px 32px -14px #40576d4d!important;position:relative;padding:5rem 0;color:#fff;background:linear-gradient(90deg,var(--first) 0%,#a8e1fb 100%);overflow:hidden;z-index:2}@media (width <= 1200px){.resource-banner .container{padding:7rem 3rem 0rem!important}}.resource-banner:after{content:\"\";position:absolute;bottom:0;left:0;width:100%;height:61%;background:#fff;clip-path:polygon(0 18%,100% 0%,100% 100%,0% 100%)}.resource-banner .container{position:relative;z-index:2}.resource-banner .text-content{max-width:500px;text-align:left;margin-bottom:75rem}.resource-banner .text-content h1{margin-bottom:1.5rem;line-height:1.2}.resource-banner .text-content .intro{font-size:1.2rem;margin:1rem 0;color:#000}.resource-banner .text-content .cta-btn{display:inline-block;background:#000;color:#fff;padding:1rem 2rem;border-radius:40px;font-weight:500;text-decoration:none;font-size:1.4rem}.resource-banner .text-content .cta-buttons{margin-top:2rem}.resource-banner .text-content .note{margin-top:1rem;margin-left:5.6rem;font-size:.9rem;color:#555}.resource-banner .resource-header-text{max-width:500px;font-weight:500;color:#fff!important;font-size:4.5rem!important}.resource-banner .blue-text{font-weight:100}@media (width <= 991px){.resource-banner .text-content{margin-top:1.5rem;margin-bottom:0;text-align:center;max-width:360px}.resource-banner .text-content h1{margin-bottom:6.5rem!important}.resource-banner .resource-header-text{font-size:2.5rem!important}.resource-banner .cta-buttons{margin-top:0rem!important;justify-content:center!important}.resource-banner .note{margin-left:8rem!important}.resource-banner .image-content{position:relative;margin-bottom:3rem;height:230px}.resource-banner .image-content .floating-box{position:absolute;top:25px;left:3rem;transform:translate(-50%) rotate(-10deg);background:#fff;padding:.75rem 1rem;border-radius:20px;box-shadow:0 8px 30px #00000026;text-align:center;z-index:3;display:inline-block;width:auto}.resource-banner .image-content .floating-box img{width:24px;margin-bottom:.4rem}.resource-banner .image-content .floating-box .label{font-size:.75rem;color:#333;margin:0;line-height:1.2}.resource-banner .image-content .floating-box .count{font-size:1.2rem;font-weight:700;color:#000;margin-top:.25rem}.resource-banner .image-content .screen-img{max-width:280px;position:absolute;bottom:0;left:3rem;z-index:2;transform:rotate(-1deg);box-shadow:0 8px 15px #0003}.resource-banner .image-content .person-img{max-width:170px;width:100%;position:relative;z-index:3;left:13rem;top:-11.35rem}.resource-banner .image-content .resource-laptop-img{max-width:300px;width:100%;position:relative;z-index:3;margin-top:3rem;left:2%;height:auto!important;top:4rem}}@media (width >= 991px){.resource-banner .text-content{position:absolute;width:760px}}.white-content{background:#fff;color:#000}.white-content .intro{font-size:1.2rem;color:#000}.white-content .note{font-size:.85rem;margin-top:1rem;color:#555}@media (width >= 991px){.section-outer{padding-top:7rem!important}}@media (width >= 768px) and (width <= 991px){.resource-math-img{left:36%!important;top:22rem!important}}@media (width >= 991px) and (width <= 1200px){.text-extension{max-width:760px;position:absolute;margin-bottom:23rem!important}.resource-divider{top:63.5rem;position:absolute!important}.resource-banner{padding-bottom:90px!important}}@media (width >= 1200px){.text-extension{max-width:500px;position:absolute;margin-bottom:31rem!important}.resource-laptop-img{width:100%;max-width:800px!important;max-height:800px!important;height:auto}}@media (width >= 1200px){.resource-divider{top:59.5rem;position:absolute!important}.cta-tab{margin-bottom:5rem!important}}@media (width >= 1200px){.image-content{margin-top:0;display:flex;align-items:flex-end;gap:1.5rem;height:0}.image-content .floating-box{position:absolute;top:25px;transform:translate(-50%) rotate(-10deg);background:#fff;padding:1rem;border-radius:20px;box-shadow:0 8px 30px #00000026;text-align:center;width:170px;z-index:3}.image-content .floating-box img{width:30px;margin-bottom:.5rem}.image-content .floating-box .label{font-size:.85rem;color:#333;margin:0}.image-content .floating-box .count{font-size:1.5rem;font-weight:700;color:#000;margin:.25rem 0 0}.image-content .screen-img{width:100%;position:absolute;bottom:5rem;left:3rem;z-index:2;transform:rotate(-1deg);box-shadow:0 8px 15px #0003;max-width:400px;margin-bottom:4rem}.image-content .person-img{max-width:800px;width:100%;position:relative;z-index:3;min-width:420px;margin-bottom:0;bottom:7rem;left:4rem}.image-content .resource-laptop-img{top:4rem;left:2rem;position:relative}.image-content .resource-math-img{bottom:9rem;left:61rem;position:relative;height:312px;margin-right:1rem;min-width:450px!important}}@media (width <= 786px){.text-extension{position:absolute;margin:3rem;margin-top:11rem!important}}@media (width >= 786px) and (width <= 991px){.text-extension{position:absolute;margin:3rem;margin-top:24rem!important}}@media (width >= 704px) and (width <= 768px){.resource-laptop-img{top:18rem!important;right:30%!important;left:auto!important}}@media (width >= 786px) and (width <= 991px){.resource-laptop-img{max-width:250px!important;top:18rem!important;right:30%!important;left:auto!important}}@media (width >= 991px) and (width <= 1200px){.resource-laptop-img{top:7rem;left:3%;position:relative;width:100%;max-width:600px!important;height:auto}}@media (width >= 786px) and (width <= 1200px){.image-content{margin-top:0;display:flex;align-items:flex-end;gap:1.5rem;height:0}.image-content .floating-box{position:absolute;top:25px;transform:translate(-50%) rotate(-10deg);background:#fff;padding:1rem;border-radius:20px;box-shadow:0 8px 30px #00000026;text-align:center;width:170px;z-index:3}.image-content .floating-box img{width:30px;margin-bottom:.5rem}.image-content .floating-box .label{font-size:.85rem;color:#333;margin:0}.image-content .floating-box .count{font-size:1.5rem;font-weight:700;color:#000;margin:.25rem 0 0}.image-content .screen-img{width:100%;position:absolute;bottom:5rem;left:3rem;z-index:2;transform:rotate(-1deg);box-shadow:0 8px 15px #0003;max-width:400px;margin-bottom:4rem}.image-content .person-img{max-width:800px;width:100%;position:relative;z-index:3;min-width:420px;margin-bottom:0;bottom:7rem;left:4rem}.image-content .resource-math-img{height:243px!important;min-width:350px;bottom:9rem;left:34rem;position:relative;width:350px!important}}@media (width <= 991px){.resource-banner{padding-bottom:15rem}}@media (width <= 768px){.resource-math-img{top:18rem}.cta-btn{justify-content:center}.resource-divider{margin-top:49rem!important}.intro{font-size:1.7rem!important}}@media (width >= 768px) and (width <= 991px){.cta-btn{justify-content:center}.resource-divider{margin-top:36rem!important}}@media (width >= 991px){.resource-banner{padding-top:768px;padding-bottom:42px;overflow:hidden}.section-fadeout{height:40px;width:100%;background:linear-gradient(to bottom,#fff0,#f8f9fa)}.resource-heading{width:700px!important}::ng-deep .vault-section{max-width:1580px!important;padding-left:48px!important;padding-top:130px!important}}@media (width <= 991px){.billing-section{flex-direction:column!important;gap:3rem}.billing-section .billing-section1,.billing-section .billing-section2{width:90%!important}.billing-section .billing-section1{margin-left:1.5rem;margin-top:4rem}}@media (width >= 768px) and (width <= 1200px){.container{padding:0 6rem!important}.outer-section-fadeout{top:62rem!important}}@media (max-width: 991px){.resource-banner .container{display:flex;flex-direction:column;align-items:flex-start;min-height:auto}.resource-banner .text-content,.resource-banner .text-extension,.resource-banner .image-content{position:static!important;left:auto;top:auto;max-width:100%;margin:0!important}.resource-banner .text-content{margin-bottom:0!important}.text-extension{margin-top:1rem!important}.resource-banner .image-content{width:100%;height:auto;align-self:center;margin-top:auto!important}.resource-banner .resource-laptop-img{position:static!important;max-width:260px;width:100%;height:auto!important}.resource-banner{padding:2rem 0 0rem!important}}@media (max-width: 575px){.resource-banner:after{height:45%}}\n", "@media (width <= 768px){.dyn-img{top:6rem!important}}\n", ".bold{font-weight:700}.resource-heading{margin-bottom:2rem}.resource-note{margin-top:1rem;font-size:.85rem;color:#555}.resource-divider{border:0;height:40px;width:100%;background:linear-gradient(to bottom,#0000,#00000026);margin:0}.press-release-icon{height:auto!important;margin:0 11px 1.9rem;display:block;align-self:center;width:auto!important;aspect-ratio:0!important;object-fit:cover;margin-top:auto;margin-right:0!important}.resource-vault-section{padding:60px 0;background:#fff;padding-bottom:9rem!important;padding-top:7rem!important;box-shadow:0 4px 32px -14px #40576d4d!important}.resource-vault-section .vault-heading{font-size:3rem;font-weight:300}.resource-vault-section .explore-link{color:#000;font-weight:400;text-decoration:none;font-size:1.5rem}.resource-vault-section .resource-blog-card{display:flex;flex-direction:column;justify-content:space-between;background-color:#fff;border-radius:30px;box-shadow:0 20px 40px #00000014;padding:25px;text-align:center;width:338px;height:auto!important}.resource-vault-section .resource-blog-card h5{font-size:1.5rem;font-weight:400;margin-bottom:.5rem;color:var(--text-color, black)}.resource-vault-section .resource-blog-card p{font-size:1.5rem;color:var(--text-color, black);line-height:2rem}.resource-vault-section .resource-blog-card img{width:100%;border-radius:10px;aspect-ratio:1/1;object-fit:cover;margin-top:auto;margin-right:0!important;max-width:250px!important;align-self:center!important}.resource-vault-section .resource-blog-card iframe{height:210px;border-radius:10px;object-fit:cover;margin-right:0!important;max-width:280px!important}.resource-vault-section .resource-blog-card .resource-btn{background-color:var(--text-color, black);color:#fff;margin-top:auto;padding:10px 24px;border-radius:24px;font-size:1.5rem;font-weight:500;width:100%;max-width:240px;cursor:pointer;transition:background .3s ease;display:flex;justify-content:space-between;align-self:center;align-items:center;text-align:left;text-decoration:none;border:1px solid;box-shadow:none!important;border-color:var(--text-color, black)}.resource-vault-section .resource-blog-card .resource-btn:hover{background:#fff;color:var(--text-color, black)!important}.resource-vault-section .vault-description{text-align:left;max-width:657px;color:#182527;line-height:2.3rem!important;font-size:1.65rem}@media (width <= 1200px){.resource-vault-section .vault-heading{font-size:3.5rem}.resource-vault-section .vault-description{margin-top:1.35rem}.resource-vault-section .resource-btn{margin-left:0!important}}.video-row{gap:5.5rem!important;margin-top:3rem!important}@media (width >= 991px){section.bg-white.text-center.extra-top-padding{position:relative;overflow:hidden}section.bg-white.text-center.extra-top-padding .banner-header{margin-bottom:4rem!important}}.vault-header{text-align:left}@media (width >= 768px) and (width <= 1200px){.container{padding:0 6rem!important}}@media (width <= 768px){.video-row{gap:3rem!important}}@media (max-width: 768px){.resource-vault-section{padding-bottom:6rem!important}.resource-vault-section .container{padding-top:0rem!important;padding-bottom:0rem!important}.vault-header{text-align:center!important}.vault-heading{font-size:3rem!important}}@media (width <= 1200px){.container{padding:7rem 3rem 1rem!important}}\n", ".video-row{gap:5.5rem!important;margin-top:3rem!important}::ng-deep .resource-section{box-shadow:0 4px 32px -14px #40576d4d!important}.release-icon{height:auto;margin:0 11px 1.9rem;display:block;align-self:center}@media (width >= 768px) and (width <= 1200px){.resource-title{font-size:1.4rem!important}}textarea{font-size:1.4rem!important}@media (width <= 768px){.resource-title{font-size:1.2rem!important}.container{padding:1rem!important}}@media (width >= 768px) and (width <= 1200px){.container{padding:1rem 3rem!important}}@media (width <= 1200px){.resource-vault-section .vault-heading{font-size:3.5rem}.resource-vault-section .vault-description{margin-top:1.35rem}.resource-vault-section .vault-card{width:100%!important}.resource-vault-section .vault-btn{margin-left:0!important;width:100%!important}}@media (width >= 991px){::ng-deep .trial-meeting-section:before{top:600px!important}::ng-deep .dashboard{margin-bottom:1rem!important}section.bg-white.text-center.extra-top-padding{position:relative;overflow:hidden}section.bg-white.text-center.extra-top-padding .banner-header{margin-bottom:4rem!important}section.bg-white.text-center.extra-top-padding:before,section.bg-white.text-center.extra-top-padding:after{content:\"\";position:absolute;background:url(/assets/img/logos/background-banner.png) no-repeat;background-size:contain;width:160px;height:450px;z-index:0;opacity:.8}section.bg-white.text-center.extra-top-padding:before{top:500px;left:0}section.bg-white.text-center.extra-top-padding:after{top:90px;right:0}}.vault-header{text-align:left}@media (width >= 768px) and (width <= 1200px){.container{padding:0 6rem!important}}@media (width <= 1200px){.resource-card{width:100%!important}.release-notes-section{padding:7rem 0!important}}@media (width >= 768px) and (width <= 1200px){.resource-hero-section{padding:0 6rem!important}.cards-row{justify-content:center}}.resource-body-section{background-color:#fff}.resource-body-section .container{padding:0 1.5rem;padding-bottom:4rem!important;padding-top:7rem!important;max-width:850px;margin:0 auto;text-align:left}.user-not-logged-in{background:#f7f7f7;border:1px solid rgb(238,238,238);font-weight:400}.user-not-logged-in a{color:var(--first)!important;text-decoration:none;font-weight:500}.resource-book-section{background:#fff;padding-top:7rem;padding-bottom:0}.resource-book-section .container{max-width:850px;margin:0 auto;padding:0 2rem!important;text-align:left}.resource-book-section .resource-contact{line-height:1.6;font-size:1.5rem}.resource-book-section .resource-contact a{text-decoration:underline;color:#000;margin:0 .2rem}.resource-book-section .resource-contact a:hover{color:var(--first)!important}.resource-offer-section{background:#fff;padding-top:2rem}.resource-offer-section .container{max-width:850px;margin:0 auto;padding:0 1.5rem;text-align:left}.resource-offer-section .resource-title{font-size:2rem;font-weight:700;color:#000;margin-bottom:.25em!important}.resource-offer-section .resource-title strong{font-weight:700}.resource-offer-section .resource-description{font-size:1.5rem;line-height:1.8rem;color:#333;margin-bottom:1.5rem}.resource-offer-section .resource-offer-list{font-size:1.1rem;line-height:1.5rem;margin-bottom:2.5rem;margin-top:2.5rem}.resource-offer-section .resource-offer-list p{font-size:1.5rem;margin:.5rem 0;font-weight:400}.resource-offer-section .resource-signup{margin-bottom:2.5rem}.resource-offer-section .resource-signup .signup-link{font-size:1.5rem;font-weight:400;text-decoration:underline;color:#000}@media (width <= 768px){.resource-offer-section .resource-book-section{padding-top:2rem!important}.resource-offer-section .container{text-align:left}.resource-offer-section .resource-title{font-size:1.5rem}.resource-offer-section .resource-description,.resource-offer-section .resource-offer-list,.resource-offer-section .resource-signup,.resource-offer-section .signup-link,.resource-offer-section .resource-contact,.resource-offer-section .resource-offer-list p{font-size:1.2rem!important}}.resource-offer-intro{font-size:1.5rem;font-weight:400}.outer-section-fadeout{position:absolute;top:139rem;height:40px;width:100%;background:linear-gradient(to bottom,#fff0,#f8f9fa)}.body-divider{border:0;height:40px;width:100%;background:linear-gradient(to bottom,#0000,#00000026);margin:0}@media (width <= 768px){.resource-book-section{padding-top:2rem!important}.resource-contact{font-size:1.2rem!important}}::ng-deep .body-quill{border-width:0!important;max-width:900px;display:block;margin-left:auto;margin-right:auto}::ng-deep .p-textarea{border-radius:.5rem;border:1px solid #ced4da;font-size:1rem!important}.card{background-color:#fff;border-radius:12px}.comment-row{gap:2rem;padding-bottom:5rem;max-width:1000px;display:block;margin-left:auto;margin-right:auto}.comment-label{font-size:1.5rem!important}.response-row{max-width:1000px;display:block;margin-left:auto;margin-right:auto;margin-top:3rem!important}\n"] }]
27
+ }], ctorParameters: () => [{ type: ResourceService }, { type: i2.TagService }, { type: i2.AuthService }, { type: i3.Title }, { type: i0.Injector }] });
28
+
29
+ class ResourceVideoComponent extends BaseResourceComponent {
30
+ constructor(resourceService, tagService, authService, injector) {
31
+ super(resourceService, tagService, authService, injector);
32
+ }
33
+ getResourceType() {
34
+ return 'Videos';
35
+ }
36
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: ResourceVideoComponent, deps: [{ token: ResourceService }, { token: i2.TagService }, { token: i2.AuthService }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component }); }
37
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.18", type: ResourceVideoComponent, isStandalone: false, selector: "pw-resource-videos", usesInheritance: true, ngImport: i0, template: "<pw-resource-header [user]=\"user\" [userLoggedIn]=\"userLoggedIn\"></pw-resource-header>\n<pw-resource-videos-top-banner></pw-resource-videos-top-banner>\n\n\n<pw-resource-video-card *ngIf=\"blogPostTag?.tag_category_id\" [tag]=\"blogPostTag\" [categoryId]=\"blogPostTag?.tag_category_id\" [resourceTitle]=\"blogPostTag?.title\" [resourceTitle]=\"blogPostTag?.title\" [postSlice]=\"true\" [user]=\"user\" [userLoggedIn]=\"userLoggedIn\"></pw-resource-video-card>\n\n<pw-trial-4-contact-us [user]=\"user\" [userLoggedIn]=\"userLoggedIn\"></pw-trial-4-contact-us>\n", dependencies: [{ kind: "component", type: ResourceVideoCardComponent, selector: "pw-resource-video-card", inputs: ["showVideoSection", "categoryId", "tag", "postSlice", "resourceTitle", "user", "userLoggedIn"] }, { kind: "component", type: i4.Trial4ContactUsComponent, selector: "pw-trial-4-contact-us", inputs: ["subscriptionId", "sourceId", "masterSubscriptionId", "experimentName", "microserviceName", "shardName", "user", "userLoggedIn"] }, { kind: "directive", type: i3$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i6.ResourceHeaderComponent, selector: "pw-resource-header", inputs: ["user", "userLoggedIn"] }, { kind: "component", type: VideosTopBannerComponent, selector: "pw-resource-videos-top-banner" }] }); }
38
+ }
39
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: ResourceVideoComponent, decorators: [{
40
+ type: Component,
41
+ args: [{ selector: 'pw-resource-videos', standalone: false, template: "<pw-resource-header [user]=\"user\" [userLoggedIn]=\"userLoggedIn\"></pw-resource-header>\n<pw-resource-videos-top-banner></pw-resource-videos-top-banner>\n\n\n<pw-resource-video-card *ngIf=\"blogPostTag?.tag_category_id\" [tag]=\"blogPostTag\" [categoryId]=\"blogPostTag?.tag_category_id\" [resourceTitle]=\"blogPostTag?.title\" [resourceTitle]=\"blogPostTag?.title\" [postSlice]=\"true\" [user]=\"user\" [userLoggedIn]=\"userLoggedIn\"></pw-resource-video-card>\n\n<pw-trial-4-contact-us [user]=\"user\" [userLoggedIn]=\"userLoggedIn\"></pw-trial-4-contact-us>\n" }]
42
+ }], ctorParameters: () => [{ type: ResourceService }, { type: i2.TagService }, { type: i2.AuthService }, { type: i0.Injector }] });
43
+
44
+ const routes = [
45
+ {
46
+ path: '',
47
+ component: ResourceVideoComponent,
48
+ data: {
49
+ title: 'Resources - Videos',
50
+ permission: 'Pages.Blog',
51
+ preload: false
52
+ }
53
+ }
54
+ ];
55
+ class ResourceVideosModule {
56
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: ResourceVideosModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
57
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.18", ngImport: i0, type: ResourceVideosModule, declarations: [ResourceVideoComponent, VideosTopBannerComponent], imports: [ResourceSharedModule, i1.RouterModule] }); }
58
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: ResourceVideosModule, imports: [ResourceSharedModule, RouterModule.forChild(routes)] }); }
59
+ }
60
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: ResourceVideosModule, decorators: [{
61
+ type: NgModule,
62
+ args: [{
63
+ declarations: [ResourceVideoComponent, VideosTopBannerComponent],
64
+ imports: [ResourceSharedModule, RouterModule.forChild(routes)]
65
+ }]
66
+ }] });
67
+
68
+ export { ResourceVideosModule };
69
+ //# sourceMappingURL=posiwise-resource-module-resource-videos.module-Cb_P8p3H.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"posiwise-resource-module-resource-videos.module-BJxrv9JZ.mjs","sources":["../../../../libs/resource-module/src/lib/public/components/resource-videos/resource-videos-top-banner/resource-videos-top-banner.component.ts","../../../../libs/resource-module/src/lib/public/components/resource-videos/resource-videos-top-banner/resource-videos-top-banner.component.html","../../../../libs/resource-module/src/lib/public/components/resource-videos/resource-videos.component.ts","../../../../libs/resource-module/src/lib/public/components/resource-videos/resource-videos.component.html","../../../../libs/resource-module/src/lib/public/modules/videos/resource-videos.module.ts"],"sourcesContent":["import { Component, Injector } from '@angular/core';\nimport { Title } from '@angular/platform-browser';\n\nimport { AuthService, TagService } from '@posiwise/common-services';\n\nimport { ResourceService } from '../../../../resource.service';\nimport { BaseTopBannerComponent } from '../../base/base-top-banner.component';\n\n@Component({\n selector: 'pw-resource-videos-top-banner',\n templateUrl: './resource-videos-top-banner.component.html',\n styleUrls: [\n '../../resource-case-studies/resource-case-studies.component.scss',\n './resource-videos-top-banner.component.scss',\n '../../resources/resources-shared.component.scss',\n '../../resource-post/related-resources/related-resources.component.scss'\n ],\n\n standalone: false\n})\nexport class VideosTopBannerComponent extends BaseTopBannerComponent {\n constructor(\n resourceService: ResourceService,\n tagService: TagService,\n authService: AuthService,\n titleService: Title,\n injector: Injector\n ) {\n super(resourceService, tagService, authService, titleService, injector);\n }\n\n protected getSearchTerm(): string {\n return 'Videos';\n }\n}\n","<section class=\"bg-white pricing-section\">\n <div class=\"resource-banner\">\n <div class=\"container d-flex flex-column flex-lg-row align-items-center justify-content-between\" *ngIf=\"isLoaded\">\n\n <!-- Left Content -->\n <div class=\"text-content\">\n <div class=\"resource-heading\">\n <h1 class=\"resource-header-text mb-4\">\n <span class=\"d-inline-flex align-items-center gap-2 flex-wrap\">\n <span [innerHTML]=\"blogPostTag?.title || 'Videos on Demand'\"></span>\n <pw-resource-top-banner-edit\n *ngIf=\"canEditResourcesValue\"\n [blogPostTag]=\"blogPostTag\"\n [user]=\"user\"\n [userLoggedIn]=\"userLoggedIn\"\n (getUpdatedTag)=\"getPostTags()\"\n ></pw-resource-top-banner-edit>\n </span>\n <span class=\"blue-text\"></span>\n </h1>\n </div>\n </div>\n\n <!-- Add directly below .text-content, still inside .container -->\n <div class=\"text-extension mt-4\">\n\n <div class=\"cta-buttons d-flex flex-column justify-between h-100\">\n <div class=\"flex-grow-1\">\n <ng-container *ngIf=\"blogPostTag?.description && blogPostTag.description !== 'null' ; else defaultDescription\">\n <p class=\"intro\" [innerHTML]=\"blogPostTag.description\"></p>\n </ng-container>\n <ng-template #defaultDescription>\n <p class=\"intro\">\n Discover below all our videos.\n </p>\n </ng-template>\n </div>\n </div>\n</div>\n\n <!-- Right Content -->\n <div class=\"image-content ms-lg-5 mt-5 mt-lg-0\">\n <div class=\"resource-math-img\" ></div>\n <img class=\"resource-laptop-img dyn-img\"\n [src]=\"(blogPostTag?.image?.url && !(blogPostTag?.image?.url.includes('no_image_uploaded_squared'))) ? blogPostTag?.image?.url : '/assets/img/resource/video-template.png'\"\n alt=\"Videos on demand banner\"\n loading=\"eager\"\n fetchpriority=\"high\" />\n </div>\n\n </div>\n </div>\n</section>\n","import { Component, Injector } from '@angular/core';\n\nimport { AuthService, TagService } from '@posiwise/common-services';\n\nimport { ResourceService } from '../../../resource.service';\nimport { BaseResourceComponent } from '../base/base-resource.component';\n\n@Component({\n selector: 'pw-resource-videos',\n templateUrl: './resource-videos.component.html',\n styleUrls: [],\n\n standalone: false\n})\nexport class ResourceVideoComponent extends BaseResourceComponent {\n constructor(\n resourceService: ResourceService,\n tagService: TagService,\n authService: AuthService,\n injector: Injector\n ) {\n super(resourceService, tagService, authService, injector);\n }\n\n protected getResourceType(): string {\n return 'Videos';\n }\n}\n","<pw-resource-header [user]=\"user\" [userLoggedIn]=\"userLoggedIn\"></pw-resource-header>\n<pw-resource-videos-top-banner></pw-resource-videos-top-banner>\n\n\n<pw-resource-video-card *ngIf=\"blogPostTag?.tag_category_id\" [tag]=\"blogPostTag\" [categoryId]=\"blogPostTag?.tag_category_id\" [resourceTitle]=\"blogPostTag?.title\" [resourceTitle]=\"blogPostTag?.title\" [postSlice]=\"true\" [user]=\"user\" [userLoggedIn]=\"userLoggedIn\"></pw-resource-video-card>\n\n<pw-trial-4-contact-us [user]=\"user\" [userLoggedIn]=\"userLoggedIn\"></pw-trial-4-contact-us>\n","import { NgModule } from '@angular/core';\nimport { RouterModule, Routes } from '@angular/router';\n\nimport { ResourceVideoComponent } from '../../components/resource-videos/resource-videos.component';\nimport { VideosTopBannerComponent } from '../../components/resource-videos/resource-videos-top-banner/resource-videos-top-banner.component';\nimport { ResourceSharedModule } from '../../shared/resource-shared.module';\n\nconst routes: Routes = [\n {\n path: '',\n component: ResourceVideoComponent,\n data: {\n title: 'Resources - Videos',\n permission: 'Pages.Blog',\n preload: false\n }\n }\n];\n\n@NgModule({\n declarations: [ResourceVideoComponent, VideosTopBannerComponent],\n imports: [ResourceSharedModule, RouterModule.forChild(routes)]\n})\nexport class ResourceVideosModule {}\n"],"names":["i1.ResourceService","i4.ResourceTopBannerEditComponent","i5","i6","i3.ResourceVideoCardComponent","i7.VideosTopBannerComponent"],"mappings":"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"}
1
+ {"version":3,"file":"posiwise-resource-module-resource-videos.module-Cb_P8p3H.mjs","sources":["../../../../libs/resource-module/src/lib/public/components/resource-videos/resource-videos-top-banner/resource-videos-top-banner.component.ts","../../../../libs/resource-module/src/lib/public/components/resource-videos/resource-videos-top-banner/resource-videos-top-banner.component.html","../../../../libs/resource-module/src/lib/public/components/resource-videos/resource-videos.component.ts","../../../../libs/resource-module/src/lib/public/components/resource-videos/resource-videos.component.html","../../../../libs/resource-module/src/lib/public/modules/videos/resource-videos.module.ts"],"sourcesContent":["import { Component, Injector } from '@angular/core';\nimport { Title } from '@angular/platform-browser';\n\nimport { AuthService, TagService } from '@posiwise/common-services';\n\nimport { ResourceService } from '../../../../resource.service';\nimport { BaseTopBannerComponent } from '../../base/base-top-banner.component';\n\n@Component({\n selector: 'pw-resource-videos-top-banner',\n templateUrl: './resource-videos-top-banner.component.html',\n styleUrls: [\n '../../resource-case-studies/resource-case-studies.component.scss',\n './resource-videos-top-banner.component.scss',\n '../../resources/resources-shared.component.scss',\n '../../resource-post/related-resources/related-resources.component.scss'\n ],\n\n standalone: false\n})\nexport class VideosTopBannerComponent extends BaseTopBannerComponent {\n constructor(\n resourceService: ResourceService,\n tagService: TagService,\n authService: AuthService,\n titleService: Title,\n injector: Injector\n ) {\n super(resourceService, tagService, authService, titleService, injector);\n }\n\n protected getSearchTerm(): string {\n return 'Videos';\n }\n}\n","<section class=\"bg-white pricing-section\">\n <div class=\"resource-banner\">\n <div class=\"container d-flex flex-column flex-lg-row align-items-center justify-content-between\" *ngIf=\"isLoaded\">\n\n <!-- Left Content -->\n <div class=\"text-content\">\n <div class=\"resource-heading\">\n <h1 class=\"resource-header-text mb-4\">\n <span class=\"d-inline-flex align-items-center gap-2 flex-wrap\">\n <span [innerHTML]=\"blogPostTag?.title || 'Videos on Demand'\"></span>\n <pw-resource-top-banner-edit\n *ngIf=\"canEditResourcesValue\"\n [blogPostTag]=\"blogPostTag\"\n [user]=\"user\"\n [userLoggedIn]=\"userLoggedIn\"\n (getUpdatedTag)=\"getPostTags()\"\n ></pw-resource-top-banner-edit>\n </span>\n <span class=\"blue-text\"></span>\n </h1>\n </div>\n </div>\n\n <!-- Add directly below .text-content, still inside .container -->\n <div class=\"text-extension mt-4\">\n\n <div class=\"cta-buttons d-flex flex-column justify-between h-100\">\n <div class=\"flex-grow-1\">\n <ng-container *ngIf=\"blogPostTag?.description && blogPostTag.description !== 'null' ; else defaultDescription\">\n <p class=\"intro\" [innerHTML]=\"blogPostTag.description\"></p>\n </ng-container>\n <ng-template #defaultDescription>\n <p class=\"intro\">\n Discover below all our videos.\n </p>\n </ng-template>\n </div>\n </div>\n</div>\n\n <!-- Right Content -->\n <div class=\"image-content ms-lg-5 mt-5 mt-lg-0\">\n <div class=\"resource-math-img\" ></div>\n <img class=\"resource-laptop-img dyn-img\"\n [src]=\"(blogPostTag?.image?.url && !(blogPostTag?.image?.url.includes('no_image_uploaded_squared'))) ? blogPostTag?.image?.url : '/assets/img/resource/video-template.png'\"\n alt=\"Videos on demand banner\"\n loading=\"eager\"\n fetchpriority=\"high\" />\n </div>\n\n </div>\n </div>\n</section>\n","import { Component, Injector } from '@angular/core';\n\nimport { AuthService, TagService } from '@posiwise/common-services';\n\nimport { ResourceService } from '../../../resource.service';\nimport { BaseResourceComponent } from '../base/base-resource.component';\n\n@Component({\n selector: 'pw-resource-videos',\n templateUrl: './resource-videos.component.html',\n styleUrls: [],\n\n standalone: false\n})\nexport class ResourceVideoComponent extends BaseResourceComponent {\n constructor(\n resourceService: ResourceService,\n tagService: TagService,\n authService: AuthService,\n injector: Injector\n ) {\n super(resourceService, tagService, authService, injector);\n }\n\n protected getResourceType(): string {\n return 'Videos';\n }\n}\n","<pw-resource-header [user]=\"user\" [userLoggedIn]=\"userLoggedIn\"></pw-resource-header>\n<pw-resource-videos-top-banner></pw-resource-videos-top-banner>\n\n\n<pw-resource-video-card *ngIf=\"blogPostTag?.tag_category_id\" [tag]=\"blogPostTag\" [categoryId]=\"blogPostTag?.tag_category_id\" [resourceTitle]=\"blogPostTag?.title\" [resourceTitle]=\"blogPostTag?.title\" [postSlice]=\"true\" [user]=\"user\" [userLoggedIn]=\"userLoggedIn\"></pw-resource-video-card>\n\n<pw-trial-4-contact-us [user]=\"user\" [userLoggedIn]=\"userLoggedIn\"></pw-trial-4-contact-us>\n","import { NgModule } from '@angular/core';\nimport { RouterModule, Routes } from '@angular/router';\n\nimport { ResourceVideoComponent } from '../../components/resource-videos/resource-videos.component';\nimport { VideosTopBannerComponent } from '../../components/resource-videos/resource-videos-top-banner/resource-videos-top-banner.component';\nimport { ResourceSharedModule } from '../../shared/resource-shared.module';\n\nconst routes: Routes = [\n {\n path: '',\n component: ResourceVideoComponent,\n data: {\n title: 'Resources - Videos',\n permission: 'Pages.Blog',\n preload: false\n }\n }\n];\n\n@NgModule({\n declarations: [ResourceVideoComponent, VideosTopBannerComponent],\n imports: [ResourceSharedModule, RouterModule.forChild(routes)]\n})\nexport class ResourceVideosModule {}\n"],"names":["i1.ResourceService","i4.ResourceTopBannerEditComponent","i5","i6","i3.ResourceVideoCardComponent","i7.VideosTopBannerComponent"],"mappings":"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"}