@streamscloud/embeddable 14.0.0-rc.0 → 14.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/core/analytics.profile-id.d.ts +5 -0
- package/dist/core/{analytics.installation-id.js → analytics.profile-id.js} +10 -20
- package/dist/external-api/data-providers/internal-media-center-analytics-handler.d.ts +14 -14
- package/dist/external-api/data-providers/internal-media-center-analytics-handler.js +19 -170
- package/dist/external-api/data-providers/internal-media-center-data-provider.svelte.js +6 -6
- package/dist/external-api/data-providers/internal-post-analytics-handler.d.ts +7 -7
- package/dist/external-api/data-providers/internal-post-analytics-handler.js +11 -72
- package/dist/external-api/data-providers/internal-stream-analytics-handler.d.ts +13 -12
- package/dist/external-api/data-providers/internal-stream-analytics-handler.js +18 -162
- package/dist/external-api/data-providers/mocks/index.d.ts +5 -0
- package/dist/external-api/data-providers/mocks/index.js +5 -0
- package/dist/{media-center/categories-following → external-api/data-providers/mocks}/mock-categories-following-handler.svelte.d.ts +1 -1
- package/dist/external-api/data-providers/mocks/mock-content-management-handler.svelte.d.ts +29 -0
- package/dist/external-api/data-providers/mocks/mock-content-management-handler.svelte.js +61 -0
- package/dist/{media-center/membership → external-api/data-providers/mocks}/mock-membership-handler.svelte.d.ts +1 -1
- package/dist/{media-center/navigation → external-api/data-providers/mocks}/mock-navigation-handler.svelte.d.ts +1 -2
- package/dist/{posts/social-interactions → external-api/data-providers/mocks}/mock-post-social-interactions-handler.svelte.d.ts +1 -2
- package/dist/{posts/social-interactions → external-api/data-providers/mocks}/mock-post-social-interactions-handler.svelte.js +17 -6
- package/dist/external-api/data-providers/mocks/operations.generated.d.ts +115 -0
- package/dist/external-api/data-providers/mocks/operations.generated.js +377 -0
- package/dist/external-api/data-providers/mocks/operations.graphql +18 -0
- package/dist/external-api/data-providers/post-data-loaders/mapper.js +3 -1
- package/dist/media-center/config/types.d.ts +7 -1
- package/dist/media-center/content-management/index.d.ts +1 -0
- package/dist/media-center/content-management/index.js +1 -0
- package/dist/media-center/content-management/types.d.ts +24 -0
- package/dist/media-center/content-management/types.js +1 -0
- package/dist/media-center/index.d.ts +2 -1
- package/dist/media-center/media-center/cmp.media-center-proxy.svelte +2 -2
- package/dist/media-center/media-center/discover/data-loading.d.ts +3 -0
- package/dist/media-center/media-center/discover/data-loading.js +13 -2
- package/dist/media-center/media-center/discover/discover-view-handler.svelte.d.ts +23 -0
- package/dist/media-center/media-center/discover/discover-view-handler.svelte.js +88 -0
- package/dist/media-center/media-center/discover/discover-view.svelte +90 -47
- package/dist/media-center/media-center/discover/discover-view.svelte.d.ts +2 -2
- package/dist/media-center/media-center/footer/media-center-footer.svelte +1 -1
- package/dist/media-center/media-center/handlers/index.d.ts +1 -0
- package/dist/media-center/media-center/handlers/index.js +1 -0
- package/dist/media-center/media-center/handlers/media-center-content-handler.svelte.d.ts +62 -0
- package/dist/media-center/media-center/handlers/media-center-content-handler.svelte.js +144 -0
- package/dist/media-center/media-center/header/media-center-header-mobile.svelte +10 -7
- package/dist/media-center/media-center/header/media-center-header.svelte +1 -1
- package/dist/media-center/media-center/media-center-context.svelte.d.ts +3 -2
- package/dist/media-center/media-center/media-center-context.svelte.js +30 -11
- package/dist/media-center/media-center/media-center-view.svelte +31 -13
- package/dist/media-center/media-center/menu/menu.svelte +16 -7
- package/dist/media-center/media-center/menu/menu.svelte.d.ts +1 -0
- package/dist/media-center/media-center/menu/popular-streams-panel-handler.svelte.d.ts +7 -0
- package/dist/media-center/media-center/menu/popular-streams-panel-handler.svelte.js +23 -8
- package/dist/media-center/media-center/moments/moments-feed-handler.svelte.d.ts +19 -2
- package/dist/media-center/media-center/moments/moments-feed-handler.svelte.js +51 -6
- package/dist/media-center/media-center/moments/moments-state.svelte.d.ts +2 -0
- package/dist/media-center/media-center/moments/moments-state.svelte.js +16 -1
- package/dist/media-center/media-center/posts-feed/posts-feed-handler.svelte.d.ts +24 -4
- package/dist/media-center/media-center/posts-feed/posts-feed-handler.svelte.js +90 -9
- package/dist/media-center/media-center/streams-feed/streams-feed-handler.svelte.d.ts +18 -3
- package/dist/media-center/media-center/streams-feed/streams-feed-handler.svelte.js +64 -9
- package/dist/media-center/media-center/streams-in-category/streams-in-category-panel.svelte +2 -6
- package/dist/posts/controls/index.d.ts +2 -1
- package/dist/posts/controls/index.js +2 -1
- package/dist/posts/controls/post-actions-generator.svelte.d.ts +20 -0
- package/dist/posts/controls/post-actions-generator.svelte.js +27 -0
- package/dist/posts/controls/post-actions-handler.svelte.d.ts +26 -0
- package/dist/posts/controls/post-actions-handler.svelte.js +56 -0
- package/dist/posts/index.d.ts +1 -0
- package/dist/posts/model/types.d.ts +1 -0
- package/dist/posts/post-viewer/cmp.post-viewer.svelte +6 -7
- package/dist/posts/post-viewer/cmp.post-viewer.svelte.d.ts +2 -2
- package/dist/posts/post-viewer/mapper.js +1 -0
- package/dist/posts/posts-player/cmp.posts-player.svelte +2 -1
- package/dist/posts/posts-player/cmp.posts-player.svelte.d.ts +2 -0
- package/dist/posts/posts-player/index.d.ts +2 -0
- package/dist/posts/posts-player/index.js +2 -1
- package/dist/posts/posts-player/posts-player-proxy.svelte +2 -1
- package/dist/posts/posts-player/posts-player-proxy.svelte.d.ts +3 -1
- package/dist/posts/posts-player/posts-player-view.svelte +132 -34
- package/dist/posts/posts-player/types.d.ts +13 -3
- package/dist/posts/sharing/index.d.ts +1 -0
- package/dist/posts/sharing/index.js +1 -0
- package/dist/posts/sharing/types.d.ts +5 -0
- package/dist/posts/sharing/types.js +1 -0
- package/dist/posts/social-interactions/types.d.ts +0 -1
- package/dist/streams/controls/index.d.ts +1 -0
- package/dist/streams/controls/index.js +1 -0
- package/dist/streams/controls/stream-actions-generator.svelte.d.ts +31 -0
- package/dist/streams/controls/stream-actions-generator.svelte.js +42 -0
- package/dist/streams/index.d.ts +1 -0
- package/dist/streams/index.js +1 -0
- package/dist/streams/layout/cmp.layout.svelte +4 -1
- package/dist/streams/layout/cmp.layout.svelte.d.ts +1 -0
- package/dist/streams/layout/element-views/cmp.short-video-stream-element.svelte +1 -0
- package/dist/streams/layout/models/mapper.js +1 -0
- package/dist/streams/sharing/index.d.ts +1 -0
- package/dist/streams/sharing/index.js +1 -0
- package/dist/streams/sharing/types.d.ts +5 -0
- package/dist/streams/sharing/types.js +1 -0
- package/dist/streams/stream-page-viewer/cmp.stream-page-viewer.svelte +43 -1
- package/dist/streams/stream-page-viewer/cmp.stream-page-viewer.svelte.d.ts +9 -0
- package/dist/streams/streams-player/cmp.streams-player.svelte +2 -1
- package/dist/streams/streams-player/cmp.streams-player.svelte.d.ts +2 -0
- package/dist/streams/streams-player/index.d.ts +2 -0
- package/dist/streams/streams-player/index.js +2 -1
- package/dist/streams/streams-player/streams-player-proxy.svelte +2 -1
- package/dist/streams/streams-player/streams-player-proxy.svelte.d.ts +2 -0
- package/dist/streams/streams-player/streams-player-view.svelte +150 -34
- package/dist/streams/streams-player/types.d.ts +8 -0
- package/dist/ui/button/resources/button-theme.svelte +2 -4
- package/dist/ui/card-actions/card-action-container.d.ts +2 -0
- package/dist/ui/card-actions/card-action-container.js +17 -0
- package/dist/ui/card-actions/cmp.card-action.svelte +28 -0
- package/dist/ui/card-actions/cmp.card-action.svelte.d.ts +10 -0
- package/dist/ui/card-actions/cmp.card-actions.svelte +71 -0
- package/dist/ui/card-actions/cmp.card-actions.svelte.d.ts +9 -0
- package/dist/ui/card-actions/index.d.ts +4 -0
- package/dist/ui/card-actions/index.js +3 -0
- package/dist/ui/card-actions/types.d.ts +9 -0
- package/dist/ui/card-actions/types.js +1 -0
- package/dist/ui/icon/cmp.icon.svelte +1 -1
- package/dist/ui/player/button/cmp.player-button.svelte +1 -3
- package/dist/ui/player/button/cmp.player-buttons-group.svelte +1 -3
- package/dist/ui/player/button/cmp.responsive-player-buttons-group.svelte +53 -0
- package/dist/ui/player/button/cmp.responsive-player-buttons-group.svelte.d.ts +10 -0
- package/dist/ui/player/button/index.d.ts +1 -0
- package/dist/ui/player/button/index.js +1 -0
- package/dist/{content-player → ui/player/content-player}/cmp.content-player.svelte +7 -29
- package/dist/{content-player → ui/player/content-player}/cmp.content-player.svelte.d.ts +11 -15
- package/dist/ui/player/content-player/content-player-config.svelte.d.ts +29 -0
- package/dist/ui/player/content-player/content-player-config.svelte.js +27 -0
- package/dist/{content-player → ui/player/content-player}/content-player-settings.svelte.d.ts +3 -3
- package/dist/{content-player → ui/player/content-player}/content-player-settings.svelte.js +2 -2
- package/dist/{content-player → ui/player/content-player}/controls-and-attachments.svelte +18 -65
- package/dist/{content-player → ui/player/content-player}/controls-and-attachments.svelte.d.ts +11 -14
- package/dist/{content-player → ui/player/content-player}/overview-panel.svelte +2 -4
- package/dist/{content-player → ui/player/content-player}/overview-panel.svelte.d.ts +5 -14
- package/dist/{content-player → ui/player/content-player}/ui-manager.svelte.d.ts +3 -2
- package/dist/{content-player → ui/player/content-player}/ui-manager.svelte.js +3 -2
- package/dist/ui/player/providers/chunks-player-buffer/player-chunk-item.svelte.d.ts +0 -2
- package/dist/ui/player/providers/chunks-player-buffer/player-chunk-item.svelte.js +1 -3
- package/dist/ui/player/providers/chunks-player-buffer/player-chunk.svelte.d.ts +3 -2
- package/dist/ui/player/providers/chunks-player-buffer/player-chunk.svelte.js +11 -5
- package/dist/ui/player/providers/chunks-player-buffer/player-chunks-manager.svelte.d.ts +3 -0
- package/dist/ui/player/providers/chunks-player-buffer/player-chunks-manager.svelte.js +74 -8
- package/dist/ui/player/providers/default-chunks-player-buffer.svelte.d.ts +2 -0
- package/dist/ui/player/providers/default-chunks-player-buffer.svelte.js +15 -4
- package/dist/ui/player/providers/default-feed-player-buffer.svelte.d.ts +1 -0
- package/dist/ui/player/providers/default-feed-player-buffer.svelte.js +27 -5
- package/dist/ui/player/providers/types.d.ts +1 -0
- package/dist/ui/player/slider/cmp.player-slider.svelte.d.ts +5 -14
- package/dist/ui/player/slider-horizontal/cmp.slider.svelte +2 -6
- package/dist/ui/player/slider-horizontal/cmp.slider.svelte.d.ts +5 -12
- package/dist/ui/shadow-dom/cmp.shadow-root.svelte +11 -6
- package/dist/ui/shadow-dom/colors.scss +2 -0
- package/package.json +7 -3
- package/dist/content-player/content-player-config.svelte.d.ts +0 -51
- package/dist/content-player/content-player-config.svelte.js +0 -48
- package/dist/core/analytics.installation-id.d.ts +0 -5
- package/dist/external-api/data-providers/mapper.d.ts +0 -3
- package/dist/external-api/data-providers/mapper.js +0 -18
- package/dist/posts/controls/cmp.controls.svelte +0 -120
- package/dist/posts/controls/cmp.controls.svelte.d.ts +0 -16
- /package/dist/{media-center/categories-following → external-api/data-providers/mocks}/mock-categories-following-handler.svelte.js +0 -0
- /package/dist/{media-center/membership → external-api/data-providers/mocks}/mock-membership-handler.svelte.js +0 -0
- /package/dist/{media-center/navigation → external-api/data-providers/mocks}/mock-navigation-handler.svelte.js +0 -0
- /package/dist/{content-player → ui/player/content-player}/index.d.ts +0 -0
- /package/dist/{content-player → ui/player/content-player}/index.js +0 -0
|
@@ -1,29 +1,19 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Key used for storing the
|
|
3
|
-
*/
|
|
4
|
-
const INSTALLATION_ID_STORAGE_KEY = 'streamscloud_installation_id';
|
|
5
|
-
/**
|
|
6
|
-
* Legacy key used for storing the profile ID in local storage (to be migrated)
|
|
2
|
+
* Key used for storing the profile ID in local storage
|
|
7
3
|
*/
|
|
8
4
|
const PROFILE_ID_STORAGE_KEY = 'streamscloud_profile_id';
|
|
9
5
|
/**
|
|
10
|
-
* Retrieves the
|
|
11
|
-
* @returns The
|
|
6
|
+
* Retrieves the profile ID from localStorage or generates a new one if it doesn't exist
|
|
7
|
+
* @returns The profile ID to use for analytics tracking
|
|
12
8
|
*/
|
|
13
|
-
export const
|
|
14
|
-
const
|
|
15
|
-
if (
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
if (legacyId) {
|
|
20
|
-
localStorage.setItem(INSTALLATION_ID_STORAGE_KEY, legacyId);
|
|
21
|
-
localStorage.removeItem(PROFILE_ID_STORAGE_KEY);
|
|
22
|
-
return legacyId;
|
|
9
|
+
export const getOrCreateProfileId = () => {
|
|
10
|
+
const storedProfileId = localStorage.getItem(PROFILE_ID_STORAGE_KEY);
|
|
11
|
+
if (!storedProfileId) {
|
|
12
|
+
const newProfileId = safeRandomUUID();
|
|
13
|
+
localStorage.setItem(PROFILE_ID_STORAGE_KEY, newProfileId);
|
|
14
|
+
return newProfileId;
|
|
23
15
|
}
|
|
24
|
-
|
|
25
|
-
localStorage.setItem(INSTALLATION_ID_STORAGE_KEY, newInstallationId);
|
|
26
|
-
return newInstallationId;
|
|
16
|
+
return storedProfileId;
|
|
27
17
|
};
|
|
28
18
|
function safeRandomUUID() {
|
|
29
19
|
// 1) Native support
|
|
@@ -1,20 +1,20 @@
|
|
|
1
|
-
import type { PostType } from '../..';
|
|
2
1
|
import type { IPostAnalyticsHandler } from '../../posts/posts-player/types';
|
|
3
2
|
import type { IStreamAnalyticsHandler } from '../../streams/streams-player/types';
|
|
4
3
|
export declare class InternalMediaCenterAnalyticsHandler implements IPostAnalyticsHandler, IStreamAnalyticsHandler {
|
|
5
4
|
constructor(graphqlOrigin: string | undefined);
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
5
|
+
setOrganizationId: (organizationId: string) => void;
|
|
6
|
+
trackPostOpened: (postId: string, ownerId: string) => void;
|
|
7
|
+
trackStreamView: (streamId: string) => void;
|
|
8
|
+
trackStreamPageView: (pageId: string, streamId: string) => void;
|
|
9
|
+
trackStreamEngagementTime: (streamId: string, engagementTime: number) => void;
|
|
10
|
+
trackStreamScrollDepth: (streamId: string, scrollDepth: number) => void;
|
|
11
|
+
trackStreamProductImpression: (productId: string, streamId: string) => void;
|
|
12
|
+
trackStreamProductClicked: (productId: string, streamId: string) => void;
|
|
13
|
+
reportPageVideoViews: (videoId: string, streamId: string) => void;
|
|
14
|
+
trackShortVideoView: (videoId: string) => void;
|
|
15
|
+
trackShortVideoProductImpression: (productId: string, videoId: string) => void;
|
|
16
|
+
trackShortVideoProductClick: (productId: string, videoId: string) => void;
|
|
17
17
|
trackShortVideoProgress: (pageId: string, videoId: string, progress: number, streamId: string) => void;
|
|
18
|
-
trackAdClick: (adId: string) =>
|
|
19
|
-
trackAdImpression: (adId: string) =>
|
|
18
|
+
trackAdClick: (adId: string) => void;
|
|
19
|
+
trackAdImpression: (adId: string) => void;
|
|
20
20
|
}
|
|
@@ -1,175 +1,24 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { getOrCreateProfileId } from '../../core/analytics.profile-id';
|
|
2
2
|
import { constructGraphQLUrl } from '../../core/graphql';
|
|
3
|
-
import {
|
|
4
|
-
import { AnalyticsCollector, EntityRelationType, EntityType, EventType, MeasurementType, Schemas } from '@streamscloud/streams-analytics-collector';
|
|
3
|
+
import { AppEventsTracker } from '@streamscloud/streams-analytics-collector';
|
|
5
4
|
export class InternalMediaCenterAnalyticsHandler {
|
|
6
5
|
constructor(graphqlOrigin) {
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
endpoint: constructGraphQLUrl(graphqlOrigin)
|
|
10
|
-
},
|
|
11
|
-
schema: Schemas.external,
|
|
12
|
-
metadata: {
|
|
13
|
-
installationId: getOrCreateInstallationId()
|
|
14
|
-
}
|
|
15
|
-
});
|
|
6
|
+
AppEventsTracker.setEndpoint(constructGraphQLUrl(graphqlOrigin));
|
|
7
|
+
AppEventsTracker.setProfileId(getOrCreateProfileId());
|
|
16
8
|
}
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
entity: {
|
|
33
|
-
type: EntityType.StreamPage,
|
|
34
|
-
id: pageId
|
|
35
|
-
},
|
|
36
|
-
eventType: EventType.Viewed,
|
|
37
|
-
relatedEntities: [
|
|
38
|
-
{
|
|
39
|
-
relationType: EntityRelationType.PlacedIn,
|
|
40
|
-
entity: {
|
|
41
|
-
type: EntityType.Stream,
|
|
42
|
-
id: streamId
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
]
|
|
46
|
-
});
|
|
47
|
-
trackStreamEngagementTime = (streamId, engagementTime) => AnalyticsCollector.measurementsReporter.reportMeasurement({
|
|
48
|
-
entity: {
|
|
49
|
-
type: EntityType.Stream,
|
|
50
|
-
id: streamId
|
|
51
|
-
},
|
|
52
|
-
measurementType: MeasurementType.EngagementTime,
|
|
53
|
-
value: engagementTime
|
|
54
|
-
});
|
|
55
|
-
trackStreamScrollDepth = (streamId, scrollDepth) => AnalyticsCollector.measurementsReporter.reportMeasurement({
|
|
56
|
-
entity: {
|
|
57
|
-
type: EntityType.Stream,
|
|
58
|
-
id: streamId
|
|
59
|
-
},
|
|
60
|
-
measurementType: MeasurementType.ScrollDepth,
|
|
61
|
-
value: scrollDepth
|
|
62
|
-
});
|
|
63
|
-
trackStreamProductImpression = (productId, streamId) => AnalyticsCollector.eventsReporter.reportEvent({
|
|
64
|
-
entity: {
|
|
65
|
-
type: EntityType.Product,
|
|
66
|
-
id: productId
|
|
67
|
-
},
|
|
68
|
-
eventType: EventType.Appeared,
|
|
69
|
-
relatedEntities: [
|
|
70
|
-
{
|
|
71
|
-
relationType: EntityRelationType.PlacedIn,
|
|
72
|
-
entity: {
|
|
73
|
-
type: EntityType.Stream,
|
|
74
|
-
id: streamId
|
|
75
|
-
}
|
|
76
|
-
}
|
|
77
|
-
]
|
|
78
|
-
});
|
|
79
|
-
trackStreamProductClicked = (productId, streamId) => AnalyticsCollector.eventsReporter.reportEvent({
|
|
80
|
-
entity: {
|
|
81
|
-
type: EntityType.Product,
|
|
82
|
-
id: productId
|
|
83
|
-
},
|
|
84
|
-
eventType: EventType.Clicked,
|
|
85
|
-
relatedEntities: [
|
|
86
|
-
{
|
|
87
|
-
relationType: EntityRelationType.PlacedIn,
|
|
88
|
-
entity: {
|
|
89
|
-
type: EntityType.Stream,
|
|
90
|
-
id: streamId
|
|
91
|
-
}
|
|
92
|
-
}
|
|
93
|
-
]
|
|
94
|
-
});
|
|
95
|
-
reportPageVideoViews = (pageId, streamId) => AnalyticsCollector.measurementsBatcher.reportBatch([
|
|
96
|
-
{
|
|
97
|
-
type: EntityType.StreamPage,
|
|
98
|
-
id: pageId
|
|
99
|
-
},
|
|
100
|
-
{
|
|
101
|
-
type: EntityType.Stream,
|
|
102
|
-
id: streamId
|
|
103
|
-
}
|
|
104
|
-
]);
|
|
105
|
-
trackShortVideoView = (videoId) => AnalyticsCollector.eventsReporter.reportEvent({
|
|
106
|
-
entity: {
|
|
107
|
-
type: EntityType.ShortVideo,
|
|
108
|
-
id: videoId
|
|
109
|
-
},
|
|
110
|
-
eventType: EventType.Viewed
|
|
111
|
-
});
|
|
112
|
-
trackShortVideoProductImpression = (productId, videoId) => AnalyticsCollector.eventsReporter.reportEvent({
|
|
113
|
-
entity: {
|
|
114
|
-
type: EntityType.Product,
|
|
115
|
-
id: productId
|
|
116
|
-
},
|
|
117
|
-
eventType: EventType.Appeared,
|
|
118
|
-
relatedEntities: [
|
|
119
|
-
{
|
|
120
|
-
relationType: EntityRelationType.PlacedIn,
|
|
121
|
-
entity: {
|
|
122
|
-
type: EntityType.ShortVideo,
|
|
123
|
-
id: videoId
|
|
124
|
-
}
|
|
125
|
-
}
|
|
126
|
-
]
|
|
127
|
-
});
|
|
128
|
-
trackShortVideoProductClick = (productId, videoId) => AnalyticsCollector.eventsReporter.reportEvent({
|
|
129
|
-
entity: {
|
|
130
|
-
type: EntityType.Product,
|
|
131
|
-
id: productId
|
|
132
|
-
},
|
|
133
|
-
eventType: EventType.Clicked,
|
|
134
|
-
relatedEntities: [
|
|
135
|
-
{
|
|
136
|
-
relationType: EntityRelationType.PlacedIn,
|
|
137
|
-
entity: {
|
|
138
|
-
type: EntityType.ShortVideo,
|
|
139
|
-
id: videoId
|
|
140
|
-
}
|
|
141
|
-
}
|
|
142
|
-
]
|
|
143
|
-
});
|
|
144
|
-
trackShortVideoProgress = (pageId, videoId, progress, streamId) => AnalyticsCollector.measurementsBatcher.collect([
|
|
145
|
-
{
|
|
146
|
-
type: EntityType.StreamPage,
|
|
147
|
-
id: pageId
|
|
148
|
-
},
|
|
149
|
-
{
|
|
150
|
-
type: EntityType.Stream,
|
|
151
|
-
id: streamId
|
|
152
|
-
}
|
|
153
|
-
], {
|
|
154
|
-
entity: {
|
|
155
|
-
type: EntityType.ShortVideo,
|
|
156
|
-
id: videoId
|
|
157
|
-
},
|
|
158
|
-
measurementType: MeasurementType.Progress,
|
|
159
|
-
value: progress
|
|
160
|
-
});
|
|
161
|
-
trackAdClick = (adId) => AnalyticsCollector.eventsReporter.reportEvent({
|
|
162
|
-
entity: {
|
|
163
|
-
type: EntityType.Ad,
|
|
164
|
-
id: adId
|
|
165
|
-
},
|
|
166
|
-
eventType: EventType.Clicked
|
|
167
|
-
});
|
|
168
|
-
trackAdImpression = (adId) => AnalyticsCollector.eventsReporter.reportEvent({
|
|
169
|
-
entity: {
|
|
170
|
-
type: EntityType.Ad,
|
|
171
|
-
id: adId
|
|
172
|
-
},
|
|
173
|
-
eventType: EventType.Appeared
|
|
174
|
-
});
|
|
9
|
+
setOrganizationId = (organizationId) => AppEventsTracker.setOrganizationId(organizationId);
|
|
10
|
+
trackPostOpened = (postId, ownerId) => AppEventsTracker.trackPostOpened(postId, ownerId);
|
|
11
|
+
trackStreamView = (streamId) => AppEventsTracker.trackStreamView(streamId);
|
|
12
|
+
trackStreamPageView = (pageId, streamId) => AppEventsTracker.trackStreamPageView(pageId, streamId);
|
|
13
|
+
trackStreamEngagementTime = (streamId, engagementTime) => AppEventsTracker.trackStreamEngagementTime(streamId, engagementTime);
|
|
14
|
+
trackStreamScrollDepth = (streamId, scrollDepth) => AppEventsTracker.trackStreamScrollDepth(streamId, scrollDepth);
|
|
15
|
+
trackStreamProductImpression = (productId, streamId) => AppEventsTracker.trackStreamProductImpression(productId, streamId);
|
|
16
|
+
trackStreamProductClicked = (productId, streamId) => AppEventsTracker.trackStreamProductClicked(productId, streamId);
|
|
17
|
+
reportPageVideoViews = (videoId, streamId) => AppEventsTracker.reportPageVideoViews(videoId, streamId);
|
|
18
|
+
trackShortVideoView = (videoId) => AppEventsTracker.trackShortVideoView(videoId);
|
|
19
|
+
trackShortVideoProductImpression = (productId, videoId) => AppEventsTracker.trackShortVideoProductImpression(productId, videoId);
|
|
20
|
+
trackShortVideoProductClick = (productId, videoId) => AppEventsTracker.trackShortVideoProductClick(productId, videoId);
|
|
21
|
+
trackShortVideoProgress = (pageId, videoId, progress, streamId) => AppEventsTracker.trackShortVideoProgress(pageId, videoId, progress, streamId);
|
|
22
|
+
trackAdClick = (adId) => AppEventsTracker.trackAdClick(adId);
|
|
23
|
+
trackAdImpression = (adId) => AppEventsTracker.trackAdImpression(adId);
|
|
175
24
|
}
|
|
@@ -1,11 +1,8 @@
|
|
|
1
1
|
import { Status, StreamStatus } from '../../core/enums';
|
|
2
2
|
import { createLocalGQLClient } from '../../core/graphql';
|
|
3
|
-
import { MockCategoryFollowingProvider } from '../../media-center/categories-following/mock-categories-following-handler.svelte';
|
|
4
|
-
import { MockMembershipHandler } from '../../media-center/membership/mock-membership-handler.svelte';
|
|
5
|
-
import { MockNavigationHandler } from '../../media-center/navigation/mock-navigation-handler.svelte';
|
|
6
|
-
import { MockPostSocialInteractionsHandler } from '../../posts/social-interactions/mock-post-social-interactions-handler.svelte';
|
|
7
3
|
import { PlayerColors } from '../../ui/player/colors';
|
|
8
4
|
import { InternalMediaCenterAnalyticsHandler } from './internal-media-center-analytics-handler';
|
|
5
|
+
import { MockCategoryFollowingProvider, MockMediaCenterContentManagementHandler, MockMembershipHandler, MockNavigationHandler, MockPostSocialInteractionsHandler } from './mocks';
|
|
9
6
|
import { GetMediaPageConfigDocument } from './operations.generated';
|
|
10
7
|
import { getPostsCursor } from './post-data-loaders';
|
|
11
8
|
import { getStreamPagesCursor, getStreamsCursor } from './stream-data-loaders';
|
|
@@ -94,9 +91,12 @@ export class InternalMediaCenterDataProvider {
|
|
|
94
91
|
this.handlers = {
|
|
95
92
|
analyticsHandler: new InternalMediaCenterAnalyticsHandler(graphqlOrigin),
|
|
96
93
|
categoriesFollowingHandler: testingStuff ? new MockCategoryFollowingProvider() : undefined,
|
|
97
|
-
|
|
94
|
+
postSocialInteractionsHandler: testingStuff ? new MockPostSocialInteractionsHandler() : undefined,
|
|
95
|
+
postSharingHandler: testingStuff ? { share: (postId) => console.warn('Share post', postId) } : undefined,
|
|
96
|
+
streamSharingHandler: testingStuff ? { share: (streamId) => console.warn('Share stream', streamId) } : undefined,
|
|
98
97
|
membershipHandler: testingStuff ? new MockMembershipHandler() : undefined,
|
|
99
|
-
navigationHandler: testingStuff && onNavigationStateChange ? new MockNavigationHandler(onNavigationStateChange) : undefined
|
|
98
|
+
navigationHandler: testingStuff && onNavigationStateChange ? new MockNavigationHandler(onNavigationStateChange) : undefined,
|
|
99
|
+
contentManagementHandler: testingStuff ? new MockMediaCenterContentManagementHandler(this.graphql) : undefined
|
|
100
100
|
};
|
|
101
101
|
}
|
|
102
102
|
}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import type { PostType } from '../../core/enums';
|
|
2
1
|
import type { IPostAnalyticsHandler } from '../../posts/posts-player';
|
|
3
2
|
export declare class InternalPostAnalyticsHandler implements IPostAnalyticsHandler {
|
|
4
3
|
constructor(graphqlOrigin: string | undefined);
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
4
|
+
setOrganizationId: (organizationId: string) => void;
|
|
5
|
+
trackPostOpened: (postId: string, ownerId: string) => void;
|
|
6
|
+
trackShortVideoView: (videoId: string) => void;
|
|
7
|
+
trackShortVideoProductImpression: (productId: string, videoId: string) => void;
|
|
8
|
+
trackShortVideoProductClick: (productId: string, videoId: string) => void;
|
|
9
|
+
trackAdClick: (adId: string) => void;
|
|
10
|
+
trackAdImpression: (adId: string) => void;
|
|
11
11
|
}
|
|
@@ -1,77 +1,16 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { getOrCreateProfileId } from '../../core/analytics.profile-id';
|
|
2
2
|
import { constructGraphQLUrl } from '../../core/graphql';
|
|
3
|
-
import {
|
|
4
|
-
import { AnalyticsCollector, EntityRelationType, EntityType, EventType, Schemas } from '@streamscloud/streams-analytics-collector';
|
|
3
|
+
import { AppEventsTracker } from '@streamscloud/streams-analytics-collector';
|
|
5
4
|
export class InternalPostAnalyticsHandler {
|
|
6
5
|
constructor(graphqlOrigin) {
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
endpoint: constructGraphQLUrl(graphqlOrigin)
|
|
10
|
-
},
|
|
11
|
-
schema: Schemas.external,
|
|
12
|
-
metadata: {
|
|
13
|
-
installationId: getOrCreateInstallationId()
|
|
14
|
-
}
|
|
15
|
-
});
|
|
6
|
+
AppEventsTracker.setEndpoint(constructGraphQLUrl(graphqlOrigin));
|
|
7
|
+
AppEventsTracker.setProfileId(getOrCreateProfileId());
|
|
16
8
|
}
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
trackShortVideoView = (videoId) => AnalyticsCollector.eventsReporter.reportEvent({
|
|
25
|
-
entity: {
|
|
26
|
-
type: EntityType.ShortVideo,
|
|
27
|
-
id: videoId
|
|
28
|
-
},
|
|
29
|
-
eventType: EventType.Viewed
|
|
30
|
-
});
|
|
31
|
-
trackShortVideoProductImpression = (productId, videoId) => AnalyticsCollector.eventsReporter.reportEvent({
|
|
32
|
-
entity: {
|
|
33
|
-
type: EntityType.Product,
|
|
34
|
-
id: productId
|
|
35
|
-
},
|
|
36
|
-
eventType: EventType.Appeared,
|
|
37
|
-
relatedEntities: [
|
|
38
|
-
{
|
|
39
|
-
relationType: EntityRelationType.PlacedIn,
|
|
40
|
-
entity: {
|
|
41
|
-
type: EntityType.ShortVideo,
|
|
42
|
-
id: videoId
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
]
|
|
46
|
-
});
|
|
47
|
-
trackShortVideoProductClick = (productId, videoId) => AnalyticsCollector.eventsReporter.reportEvent({
|
|
48
|
-
entity: {
|
|
49
|
-
type: EntityType.Product,
|
|
50
|
-
id: productId
|
|
51
|
-
},
|
|
52
|
-
eventType: EventType.Clicked,
|
|
53
|
-
relatedEntities: [
|
|
54
|
-
{
|
|
55
|
-
relationType: EntityRelationType.PlacedIn,
|
|
56
|
-
entity: {
|
|
57
|
-
type: EntityType.ShortVideo,
|
|
58
|
-
id: videoId
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
]
|
|
62
|
-
});
|
|
63
|
-
trackAdClick = (adId) => AnalyticsCollector.eventsReporter.reportEvent({
|
|
64
|
-
entity: {
|
|
65
|
-
type: EntityType.Ad,
|
|
66
|
-
id: adId
|
|
67
|
-
},
|
|
68
|
-
eventType: EventType.Clicked
|
|
69
|
-
});
|
|
70
|
-
trackAdImpression = (adId) => AnalyticsCollector.eventsReporter.reportEvent({
|
|
71
|
-
entity: {
|
|
72
|
-
type: EntityType.Ad,
|
|
73
|
-
id: adId
|
|
74
|
-
},
|
|
75
|
-
eventType: EventType.Appeared
|
|
76
|
-
});
|
|
9
|
+
setOrganizationId = (organizationId) => AppEventsTracker.setOrganizationId(organizationId);
|
|
10
|
+
trackPostOpened = (postId, ownerId) => AppEventsTracker.trackPostOpened(postId, ownerId);
|
|
11
|
+
trackShortVideoView = (videoId) => AppEventsTracker.trackShortVideoView(videoId);
|
|
12
|
+
trackShortVideoProductImpression = (productId, videoId) => AppEventsTracker.trackShortVideoProductImpression(productId, videoId);
|
|
13
|
+
trackShortVideoProductClick = (productId, videoId) => AppEventsTracker.trackShortVideoProductClick(productId, videoId);
|
|
14
|
+
trackAdClick = (adId) => AppEventsTracker.trackAdClick(adId);
|
|
15
|
+
trackAdImpression = (adId) => AppEventsTracker.trackAdImpression(adId);
|
|
77
16
|
}
|
|
@@ -1,17 +1,18 @@
|
|
|
1
1
|
import type { IStreamAnalyticsHandler } from '../../streams/streams-player/types';
|
|
2
2
|
export declare class InternalStreamAnalyticsHandler implements IStreamAnalyticsHandler {
|
|
3
3
|
constructor(graphqlOrigin: string | undefined);
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
4
|
+
setOrganizationId: (organizationId: string) => void;
|
|
5
|
+
trackStreamView: (streamId: string) => void;
|
|
6
|
+
trackStreamPageView: (pageId: string, streamId: string) => void;
|
|
7
|
+
trackStreamEngagementTime: (streamId: string, engagementTime: number) => void;
|
|
8
|
+
trackStreamScrollDepth: (streamId: string, scrollDepth: number) => void;
|
|
9
|
+
trackStreamProductImpression: (productId: string, streamId: string) => void;
|
|
10
|
+
trackStreamProductClicked: (productId: string, streamId: string) => void;
|
|
11
|
+
reportPageVideoViews: (videoId: string, streamId: string) => void;
|
|
12
|
+
trackShortVideoView: (videoId: string) => void;
|
|
13
|
+
trackShortVideoProductImpression: (productId: string, videoId: string) => void;
|
|
14
|
+
trackShortVideoProductClick: (productId: string, videoId: string) => void;
|
|
14
15
|
trackShortVideoProgress: (pageId: string, videoId: string, progress: number, streamId: string) => void;
|
|
15
|
-
trackAdClick: (adId: string) =>
|
|
16
|
-
trackAdImpression: (adId: string) =>
|
|
16
|
+
trackAdClick: (adId: string) => void;
|
|
17
|
+
trackAdImpression: (adId: string) => void;
|
|
17
18
|
}
|
|
@@ -1,167 +1,23 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { getOrCreateProfileId } from '../../core/analytics.profile-id';
|
|
2
2
|
import { constructGraphQLUrl } from '../../core/graphql';
|
|
3
|
-
import {
|
|
3
|
+
import { AppEventsTracker } from '@streamscloud/streams-analytics-collector';
|
|
4
4
|
export class InternalStreamAnalyticsHandler {
|
|
5
5
|
constructor(graphqlOrigin) {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
endpoint: constructGraphQLUrl(graphqlOrigin)
|
|
9
|
-
},
|
|
10
|
-
schema: Schemas.external,
|
|
11
|
-
metadata: {
|
|
12
|
-
installationId: getOrCreateInstallationId()
|
|
13
|
-
}
|
|
14
|
-
});
|
|
6
|
+
AppEventsTracker.setEndpoint(constructGraphQLUrl(graphqlOrigin));
|
|
7
|
+
AppEventsTracker.setProfileId(getOrCreateProfileId());
|
|
15
8
|
}
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
{
|
|
31
|
-
relationType: EntityRelationType.PlacedIn,
|
|
32
|
-
entity: {
|
|
33
|
-
type: EntityType.Stream,
|
|
34
|
-
id: streamId
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
]
|
|
38
|
-
});
|
|
39
|
-
trackStreamEngagementTime = (streamId, engagementTime) => AnalyticsCollector.measurementsReporter.reportMeasurement({
|
|
40
|
-
entity: {
|
|
41
|
-
type: EntityType.Stream,
|
|
42
|
-
id: streamId
|
|
43
|
-
},
|
|
44
|
-
measurementType: MeasurementType.EngagementTime,
|
|
45
|
-
value: engagementTime
|
|
46
|
-
});
|
|
47
|
-
trackStreamScrollDepth = (streamId, scrollDepth) => AnalyticsCollector.measurementsReporter.reportMeasurement({
|
|
48
|
-
entity: {
|
|
49
|
-
type: EntityType.Stream,
|
|
50
|
-
id: streamId
|
|
51
|
-
},
|
|
52
|
-
measurementType: MeasurementType.ScrollDepth,
|
|
53
|
-
value: scrollDepth
|
|
54
|
-
});
|
|
55
|
-
trackStreamProductImpression = (productId, streamId) => AnalyticsCollector.eventsReporter.reportEvent({
|
|
56
|
-
entity: {
|
|
57
|
-
type: EntityType.Product,
|
|
58
|
-
id: productId
|
|
59
|
-
},
|
|
60
|
-
eventType: EventType.Appeared,
|
|
61
|
-
relatedEntities: [
|
|
62
|
-
{
|
|
63
|
-
relationType: EntityRelationType.PlacedIn,
|
|
64
|
-
entity: {
|
|
65
|
-
type: EntityType.Stream,
|
|
66
|
-
id: streamId
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
]
|
|
70
|
-
});
|
|
71
|
-
trackStreamProductClicked = (productId, streamId) => AnalyticsCollector.eventsReporter.reportEvent({
|
|
72
|
-
entity: {
|
|
73
|
-
type: EntityType.Product,
|
|
74
|
-
id: productId
|
|
75
|
-
},
|
|
76
|
-
eventType: EventType.Clicked,
|
|
77
|
-
relatedEntities: [
|
|
78
|
-
{
|
|
79
|
-
relationType: EntityRelationType.PlacedIn,
|
|
80
|
-
entity: {
|
|
81
|
-
type: EntityType.Stream,
|
|
82
|
-
id: streamId
|
|
83
|
-
}
|
|
84
|
-
}
|
|
85
|
-
]
|
|
86
|
-
});
|
|
87
|
-
reportPageVideoViews = (pageId, streamId) => AnalyticsCollector.measurementsBatcher.reportBatch([
|
|
88
|
-
{
|
|
89
|
-
type: EntityType.StreamPage,
|
|
90
|
-
id: pageId
|
|
91
|
-
},
|
|
92
|
-
{
|
|
93
|
-
type: EntityType.Stream,
|
|
94
|
-
id: streamId
|
|
95
|
-
}
|
|
96
|
-
]);
|
|
97
|
-
trackShortVideoView = (videoId) => AnalyticsCollector.eventsReporter.reportEvent({
|
|
98
|
-
entity: {
|
|
99
|
-
type: EntityType.ShortVideo,
|
|
100
|
-
id: videoId
|
|
101
|
-
},
|
|
102
|
-
eventType: EventType.Viewed
|
|
103
|
-
});
|
|
104
|
-
trackShortVideoProductImpression = (productId, videoId) => AnalyticsCollector.eventsReporter.reportEvent({
|
|
105
|
-
entity: {
|
|
106
|
-
type: EntityType.Product,
|
|
107
|
-
id: productId
|
|
108
|
-
},
|
|
109
|
-
eventType: EventType.Appeared,
|
|
110
|
-
relatedEntities: [
|
|
111
|
-
{
|
|
112
|
-
relationType: EntityRelationType.PlacedIn,
|
|
113
|
-
entity: {
|
|
114
|
-
type: EntityType.ShortVideo,
|
|
115
|
-
id: videoId
|
|
116
|
-
}
|
|
117
|
-
}
|
|
118
|
-
]
|
|
119
|
-
});
|
|
120
|
-
trackShortVideoProductClick = (productId, videoId) => AnalyticsCollector.eventsReporter.reportEvent({
|
|
121
|
-
entity: {
|
|
122
|
-
type: EntityType.Product,
|
|
123
|
-
id: productId
|
|
124
|
-
},
|
|
125
|
-
eventType: EventType.Clicked,
|
|
126
|
-
relatedEntities: [
|
|
127
|
-
{
|
|
128
|
-
relationType: EntityRelationType.PlacedIn,
|
|
129
|
-
entity: {
|
|
130
|
-
type: EntityType.ShortVideo,
|
|
131
|
-
id: videoId
|
|
132
|
-
}
|
|
133
|
-
}
|
|
134
|
-
]
|
|
135
|
-
});
|
|
136
|
-
trackShortVideoProgress = (pageId, videoId, progress, streamId) => AnalyticsCollector.measurementsBatcher.collect([
|
|
137
|
-
{
|
|
138
|
-
type: EntityType.StreamPage,
|
|
139
|
-
id: pageId
|
|
140
|
-
},
|
|
141
|
-
{
|
|
142
|
-
type: EntityType.Stream,
|
|
143
|
-
id: streamId
|
|
144
|
-
}
|
|
145
|
-
], {
|
|
146
|
-
entity: {
|
|
147
|
-
type: EntityType.ShortVideo,
|
|
148
|
-
id: videoId
|
|
149
|
-
},
|
|
150
|
-
measurementType: MeasurementType.Progress,
|
|
151
|
-
value: progress
|
|
152
|
-
});
|
|
153
|
-
trackAdClick = (adId) => AnalyticsCollector.eventsReporter.reportEvent({
|
|
154
|
-
entity: {
|
|
155
|
-
type: EntityType.Ad,
|
|
156
|
-
id: adId
|
|
157
|
-
},
|
|
158
|
-
eventType: EventType.Clicked
|
|
159
|
-
});
|
|
160
|
-
trackAdImpression = (adId) => AnalyticsCollector.eventsReporter.reportEvent({
|
|
161
|
-
entity: {
|
|
162
|
-
type: EntityType.Ad,
|
|
163
|
-
id: adId
|
|
164
|
-
},
|
|
165
|
-
eventType: EventType.Appeared
|
|
166
|
-
});
|
|
9
|
+
setOrganizationId = (organizationId) => AppEventsTracker.setOrganizationId(organizationId);
|
|
10
|
+
trackStreamView = (streamId) => AppEventsTracker.trackStreamView(streamId);
|
|
11
|
+
trackStreamPageView = (pageId, streamId) => AppEventsTracker.trackStreamPageView(pageId, streamId);
|
|
12
|
+
trackStreamEngagementTime = (streamId, engagementTime) => AppEventsTracker.trackStreamEngagementTime(streamId, engagementTime);
|
|
13
|
+
trackStreamScrollDepth = (streamId, scrollDepth) => AppEventsTracker.trackStreamScrollDepth(streamId, scrollDepth);
|
|
14
|
+
trackStreamProductImpression = (productId, streamId) => AppEventsTracker.trackStreamProductImpression(productId, streamId);
|
|
15
|
+
trackStreamProductClicked = (productId, streamId) => AppEventsTracker.trackStreamProductClicked(productId, streamId);
|
|
16
|
+
reportPageVideoViews = (videoId, streamId) => AppEventsTracker.reportPageVideoViews(videoId, streamId);
|
|
17
|
+
trackShortVideoView = (videoId) => AppEventsTracker.trackShortVideoView(videoId);
|
|
18
|
+
trackShortVideoProductImpression = (productId, videoId) => AppEventsTracker.trackShortVideoProductImpression(productId, videoId);
|
|
19
|
+
trackShortVideoProductClick = (productId, videoId) => AppEventsTracker.trackShortVideoProductClick(productId, videoId);
|
|
20
|
+
trackShortVideoProgress = (pageId, videoId, progress, streamId) => AppEventsTracker.trackShortVideoProgress(pageId, videoId, progress, streamId);
|
|
21
|
+
trackAdClick = (adId) => AppEventsTracker.trackAdClick(adId);
|
|
22
|
+
trackAdImpression = (adId) => AppEventsTracker.trackAdImpression(adId);
|
|
167
23
|
}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export { MockCategoryFollowingProvider } from './mock-categories-following-handler.svelte';
|
|
2
|
+
export { MockMediaCenterContentManagementHandler } from './mock-content-management-handler.svelte';
|
|
3
|
+
export { MockMembershipHandler } from './mock-membership-handler.svelte';
|
|
4
|
+
export { MockNavigationHandler } from './mock-navigation-handler.svelte';
|
|
5
|
+
export { MockPostSocialInteractionsHandler } from './mock-post-social-interactions-handler.svelte';
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export { MockCategoryFollowingProvider } from './mock-categories-following-handler.svelte';
|
|
2
|
+
export { MockMediaCenterContentManagementHandler } from './mock-content-management-handler.svelte';
|
|
3
|
+
export { MockMembershipHandler } from './mock-membership-handler.svelte';
|
|
4
|
+
export { MockNavigationHandler } from './mock-navigation-handler.svelte';
|
|
5
|
+
export { MockPostSocialInteractionsHandler } from './mock-post-social-interactions-handler.svelte';
|