@posiwise/resource-module 0.0.192 → 0.0.194

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 (54) hide show
  1. package/fesm2022/posiwise-resource-module-base-top-banner.component-DSirXfem.mjs +142 -0
  2. package/fesm2022/posiwise-resource-module-base-top-banner.component-DSirXfem.mjs.map +1 -0
  3. package/fesm2022/posiwise-resource-module-resource-blogs.module-DIh--y78.mjs +264 -0
  4. package/fesm2022/posiwise-resource-module-resource-blogs.module-DIh--y78.mjs.map +1 -0
  5. package/fesm2022/posiwise-resource-module-resource-cards.module-Bp4BgXL2.mjs +1928 -0
  6. package/fesm2022/posiwise-resource-module-resource-cards.module-Bp4BgXL2.mjs.map +1 -0
  7. package/fesm2022/posiwise-resource-module-resource-case-studies.module-BtkkgIFa.mjs +246 -0
  8. package/fesm2022/posiwise-resource-module-resource-case-studies.module-BtkkgIFa.mjs.map +1 -0
  9. package/fesm2022/posiwise-resource-module-resource-events.module-BwK6UfCq.mjs +460 -0
  10. package/fesm2022/posiwise-resource-module-resource-events.module-BwK6UfCq.mjs.map +1 -0
  11. package/fesm2022/posiwise-resource-module-resource-hub.module-BWvid8gs.mjs +443 -0
  12. package/fesm2022/posiwise-resource-module-resource-hub.module-BWvid8gs.mjs.map +1 -0
  13. package/fesm2022/posiwise-resource-module-resource-integrations.module-qudabfwX.mjs +604 -0
  14. package/fesm2022/posiwise-resource-module-resource-integrations.module-qudabfwX.mjs.map +1 -0
  15. package/fesm2022/posiwise-resource-module-resource-post.module-BJnApbtU.mjs +777 -0
  16. package/fesm2022/posiwise-resource-module-resource-post.module-BJnApbtU.mjs.map +1 -0
  17. package/fesm2022/posiwise-resource-module-resource-release-notes.module-TH1usNf-.mjs +294 -0
  18. package/fesm2022/posiwise-resource-module-resource-release-notes.module-TH1usNf-.mjs.map +1 -0
  19. package/fesm2022/posiwise-resource-module-resource-root.module-DP0EMP-_.mjs +769 -0
  20. package/fesm2022/posiwise-resource-module-resource-root.module-DP0EMP-_.mjs.map +1 -0
  21. package/fesm2022/posiwise-resource-module-resource-videos.module-DR7dQ_8r.mjs +258 -0
  22. package/fesm2022/posiwise-resource-module-resource-videos.module-DR7dQ_8r.mjs.map +1 -0
  23. package/fesm2022/posiwise-resource-module-resource-white-papers.module-C8J9-eqL.mjs +259 -0
  24. package/fesm2022/posiwise-resource-module-resource-white-papers.module-C8J9-eqL.mjs.map +1 -0
  25. package/fesm2022/posiwise-resource-module-resource.service-DjeMJX1O.mjs +88 -0
  26. package/fesm2022/posiwise-resource-module-resource.service-DjeMJX1O.mjs.map +1 -0
  27. package/fesm2022/posiwise-resource-module.mjs +1603 -2
  28. package/fesm2022/posiwise-resource-module.mjs.map +1 -1
  29. package/package.json +6 -5
  30. package/types/posiwise-resource-module.d.ts +794 -506
  31. package/fesm2022/posiwise-resource-module-base-top-banner.component-CIvGr9du.mjs +0 -116
  32. package/fesm2022/posiwise-resource-module-base-top-banner.component-CIvGr9du.mjs.map +0 -1
  33. package/fesm2022/posiwise-resource-module-posiwise-resource-module-QIX6Y1Ol.mjs +0 -1888
  34. package/fesm2022/posiwise-resource-module-posiwise-resource-module-QIX6Y1Ol.mjs.map +0 -1
  35. package/fesm2022/posiwise-resource-module-resource-blogs.module-DQhQ9YWu.mjs +0 -69
  36. package/fesm2022/posiwise-resource-module-resource-blogs.module-DQhQ9YWu.mjs.map +0 -1
  37. package/fesm2022/posiwise-resource-module-resource-case-studies.module-D7ALgcL_.mjs +0 -135
  38. package/fesm2022/posiwise-resource-module-resource-case-studies.module-D7ALgcL_.mjs.map +0 -1
  39. package/fesm2022/posiwise-resource-module-resource-events.module-UnO7wcUI.mjs +0 -241
  40. package/fesm2022/posiwise-resource-module-resource-events.module-UnO7wcUI.mjs.map +0 -1
  41. package/fesm2022/posiwise-resource-module-resource-hub.module-UBFt3bki.mjs +0 -244
  42. package/fesm2022/posiwise-resource-module-resource-hub.module-UBFt3bki.mjs.map +0 -1
  43. package/fesm2022/posiwise-resource-module-resource-integrations.module-D7idZK_y.mjs +0 -295
  44. package/fesm2022/posiwise-resource-module-resource-integrations.module-D7idZK_y.mjs.map +0 -1
  45. package/fesm2022/posiwise-resource-module-resource-post.module-CR9sCgeR.mjs +0 -334
  46. package/fesm2022/posiwise-resource-module-resource-post.module-CR9sCgeR.mjs.map +0 -1
  47. package/fesm2022/posiwise-resource-module-resource-release-notes.module-DxRiC1Q4.mjs +0 -110
  48. package/fesm2022/posiwise-resource-module-resource-release-notes.module-DxRiC1Q4.mjs.map +0 -1
  49. package/fesm2022/posiwise-resource-module-resource-root.module-PmW6b6c0.mjs +0 -398
  50. package/fesm2022/posiwise-resource-module-resource-root.module-PmW6b6c0.mjs.map +0 -1
  51. package/fesm2022/posiwise-resource-module-resource-videos.module-VJAmMFn-.mjs +0 -68
  52. package/fesm2022/posiwise-resource-module-resource-videos.module-VJAmMFn-.mjs.map +0 -1
  53. package/fesm2022/posiwise-resource-module-resource-white-papers.module-jsS-ik0o.mjs +0 -70
  54. package/fesm2022/posiwise-resource-module-resource-white-papers.module-jsS-ik0o.mjs.map +0 -1
@@ -1,116 +0,0 @@
1
- import * as i0 from '@angular/core';
2
- import { ChangeDetectionStrategy, Component } from '@angular/core';
3
- import * as i3 from '@angular/platform-browser';
4
- import { AppBaseComponent } from '@posiwise/app-base-component';
5
- import * as i2 from '@posiwise/common-services';
6
- import { HelperService } from '@posiwise/helper-service';
7
- import { forkJoin } from 'rxjs';
8
- import { e as ResourceService } from './posiwise-resource-module-posiwise-resource-module-QIX6Y1Ol.mjs';
9
-
10
- class BaseTopBannerComponent extends AppBaseComponent {
11
- constructor(resourceService, tagService, authService, titleService, cdr, injector) {
12
- super(injector);
13
- this.resourceService = resourceService;
14
- this.tagService = tagService;
15
- this.authService = authService;
16
- this.titleService = titleService;
17
- this.cdr = cdr;
18
- this.masterSubscriptionId = this.appConfig.master_subscription.subscription_id;
19
- this.posts = [];
20
- this.testimonialsPosts = [];
21
- this.isLoaded = false;
22
- this.canEditResourcesValue = false;
23
- }
24
- ngOnInit() {
25
- this.getUserSubscriptionId().subscribe(response => {
26
- this.subscriptionId = response;
27
- this.cdr.markForCheck();
28
- });
29
- this.authService.getToken$().subscribe(res => {
30
- this.userLoggedIn = !!res;
31
- if (this.userLoggedIn) {
32
- this.localStorage.getItem$('product').subscribe(res => {
33
- const data = res ? JSON.parse(res) : null;
34
- this.subscriptionId = data?.subscriptionId;
35
- this.cdr.markForCheck();
36
- });
37
- this.userService.getUserInfo().subscribe(data => {
38
- this.user = data;
39
- this.updateCanEditResourcesValue();
40
- this.getTags();
41
- this.cdr.markForCheck();
42
- });
43
- }
44
- else {
45
- this.getTags();
46
- }
47
- this.cdr.markForCheck();
48
- });
49
- }
50
- getTags() {
51
- this.isLoaded = false;
52
- forkJoin({
53
- categories: this.tagService.getAllTagCategories({ search: this.getSearchTerm() }, this.getEffectiveSubscriptionId()),
54
- tags: this.tagService.getTagsByType('post_categories', {}, this.getEffectiveSubscriptionId())
55
- })
56
- .subscribe(({ categories, tags }) => {
57
- this.tagCategory = categories?.tag_categories?.[0];
58
- this.blogPostTag = tags.tags.find(tag => tag.tag_category_id === this.tagCategory?.id);
59
- this.updateSEOMetadata();
60
- this.cdr.markForCheck();
61
- })
62
- .add(() => {
63
- this.isLoaded = true;
64
- this.cdr.markForCheck();
65
- });
66
- }
67
- /** Helper method to get effective subscription ID */
68
- getEffectiveSubscriptionId() {
69
- return HelperService.getEffectiveSubscriptionId(this.user, this.subscriptionId, this.masterSubscriptionId);
70
- }
71
- updateSEOMetadata() {
72
- if (this.blogPostTag) {
73
- // Update page title if meta_title is available
74
- if (this.blogPostTag.meta_title) {
75
- this.titleService.setTitle(this.blogPostTag.meta_title);
76
- }
77
- // Update meta description if meta_description is available
78
- if (this.blogPostTag.meta_description) {
79
- this.updateMetaDescription(this.blogPostTag.meta_description);
80
- }
81
- }
82
- }
83
- updateMetaDescription(description) {
84
- let metaDescription = document.querySelector('meta[name="description"]');
85
- if (!metaDescription) {
86
- metaDescription = document.createElement('meta');
87
- metaDescription.setAttribute('name', 'description');
88
- document.head.appendChild(metaDescription);
89
- }
90
- metaDescription.setAttribute('content', description);
91
- }
92
- updateCanEditResourcesValue() {
93
- if (this.userLoggedIn && this.user) {
94
- this.canEditResourcesValue = HelperService.canEditResources(this.user, this.userLoggedIn, this.permissionService);
95
- }
96
- else {
97
- this.canEditResourcesValue = false;
98
- }
99
- }
100
- canEditResources() {
101
- return this.canEditResourcesValue;
102
- }
103
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.19", ngImport: i0, type: BaseTopBannerComponent, deps: [{ token: ResourceService }, { token: i2.TagService }, { token: i2.AuthService }, { token: i3.Title }, { token: i0.ChangeDetectorRef }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component }); }
104
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.19", type: BaseTopBannerComponent, isStandalone: false, selector: "ng-component", usesInheritance: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
105
- }
106
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.19", ngImport: i0, type: BaseTopBannerComponent, decorators: [{
107
- type: Component,
108
- args: [{
109
- template: '',
110
- changeDetection: ChangeDetectionStrategy.OnPush,
111
- standalone: false
112
- }]
113
- }], ctorParameters: () => [{ type: ResourceService }, { type: i2.TagService }, { type: i2.AuthService }, { type: i3.Title }, { type: i0.ChangeDetectorRef }, { type: i0.Injector }] });
114
-
115
- export { BaseTopBannerComponent as B };
116
- //# sourceMappingURL=posiwise-resource-module-base-top-banner.component-CIvGr9du.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"posiwise-resource-module-base-top-banner.component-CIvGr9du.mjs","sources":["../../../../libs/resource-module/src/lib/public/components/base/base-top-banner.component.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n Injector,\n OnInit\n} from '@angular/core';\nimport { Title } from '@angular/platform-browser';\n\nimport { AppBaseComponent } from '@posiwise/app-base-component';\nimport { AuthService, TagService } from '@posiwise/common-services';\nimport { Resource, User } from '@posiwise/common-utilities';\nimport { HelperService } from '@posiwise/helper-service';\n\nimport { forkJoin } from 'rxjs';\n\nimport { ResourceService } from '../../../resource.service';\n\n@Component({\n template: '',\n\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false\n})\nexport abstract class BaseTopBannerComponent extends AppBaseComponent implements OnInit {\n subscriptionId: number;\n masterSubscriptionId = this.appConfig.master_subscription.subscription_id;\n posts: Resource[] = [];\n testimonialsPosts = [];\n userLoggedIn: boolean;\n blogPostTag;\n tagCategory;\n blogTestimonialsPostTag;\n isLoaded = false;\n user: User;\n isMasterSubscription;\n\n canEditResourcesValue = false;\n\n constructor(\n protected readonly resourceService: ResourceService,\n protected readonly tagService: TagService,\n private readonly authService: AuthService,\n private readonly titleService: Title,\n protected readonly cdr: ChangeDetectorRef,\n injector: Injector\n ) {\n super(injector);\n }\n\n ngOnInit() {\n this.getUserSubscriptionId().subscribe(response => {\n this.subscriptionId = response;\n this.cdr.markForCheck();\n });\n this.authService.getToken$().subscribe(res => {\n this.userLoggedIn = !!res;\n if (this.userLoggedIn) {\n this.localStorage.getItem$('product').subscribe(res => {\n const data = res ? JSON.parse(res) : null;\n this.subscriptionId = data?.subscriptionId;\n this.cdr.markForCheck();\n });\n this.userService.getUserInfo().subscribe(data => {\n this.user = data;\n this.updateCanEditResourcesValue();\n this.getTags();\n this.cdr.markForCheck();\n });\n } else {\n this.getTags();\n }\n this.cdr.markForCheck();\n });\n }\n\n protected getTags() {\n this.isLoaded = false;\n forkJoin({\n categories: this.tagService.getAllTagCategories(\n { search: this.getSearchTerm() },\n this.getEffectiveSubscriptionId()\n ),\n tags: this.tagService.getTagsByType(\n 'post_categories',\n {},\n this.getEffectiveSubscriptionId()\n )\n })\n .subscribe(({ categories, tags }) => {\n this.tagCategory = categories?.tag_categories?.[0];\n this.blogPostTag = tags.tags.find(\n tag => tag.tag_category_id === this.tagCategory?.id\n );\n this.updateSEOMetadata();\n this.cdr.markForCheck();\n })\n .add(() => {\n this.isLoaded = true;\n this.cdr.markForCheck();\n });\n }\n\n /** Helper method to get effective subscription ID */\n protected getEffectiveSubscriptionId(): number {\n return HelperService.getEffectiveSubscriptionId(\n this.user,\n this.subscriptionId,\n this.masterSubscriptionId\n );\n }\n\n protected updateSEOMetadata() {\n if (this.blogPostTag) {\n // Update page title if meta_title is available\n if (this.blogPostTag.meta_title) {\n this.titleService.setTitle(this.blogPostTag.meta_title);\n }\n\n // Update meta description if meta_description is available\n if (this.blogPostTag.meta_description) {\n this.updateMetaDescription(this.blogPostTag.meta_description);\n }\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 // Abstract method that each component must implement\n protected abstract getSearchTerm(): string;\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"],"names":["i1.ResourceService"],"mappings":"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"}