@wix/headless-instagram 0.0.1
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/cjs/dist/react/InstagramFeed.d.ts +7 -0
- package/cjs/dist/react/InstagramFeed.js +6 -0
- package/cjs/dist/react/InstagramFeedRoot.d.ts +18 -0
- package/cjs/dist/react/InstagramFeedRoot.js +19 -0
- package/cjs/dist/react/InstagramMedia.d.ts +73 -0
- package/cjs/dist/react/InstagramMedia.js +71 -0
- package/cjs/dist/react/InstagramMedias.d.ts +10 -0
- package/cjs/dist/react/InstagramMedias.js +16 -0
- package/cjs/dist/react/UserName.d.ts +11 -0
- package/cjs/dist/react/UserName.js +8 -0
- package/cjs/dist/react/core/InstagramMedia.d.ts +82 -0
- package/cjs/dist/react/core/InstagramMedia.js +65 -0
- package/cjs/dist/react/core/InstagramMedias.d.ts +19 -0
- package/cjs/dist/react/core/InstagramMedias.js +54 -0
- package/cjs/dist/react/core/Root.d.ts +7 -0
- package/cjs/dist/react/core/Root.js +8 -0
- package/cjs/dist/react/core/UserName.d.ts +21 -0
- package/cjs/dist/react/core/UserName.js +17 -0
- package/cjs/dist/react/core/index.d.ts +4 -0
- package/cjs/dist/react/core/index.js +5 -0
- package/cjs/dist/react/index.d.ts +2 -0
- package/cjs/dist/react/index.js +2 -0
- package/cjs/dist/services/index.d.ts +2 -0
- package/cjs/dist/services/index.js +2 -0
- package/cjs/dist/services/instagram-feed-service.d.ts +178 -0
- package/cjs/dist/services/instagram-feed-service.js +196 -0
- package/cjs/dist/services/instagram-media-item-service.d.ts +73 -0
- package/cjs/dist/services/instagram-media-item-service.js +55 -0
- package/cjs/dist/vitest.setup.d.ts +1 -0
- package/cjs/dist/vitest.setup.js +1 -0
- package/cjs/package.json +3 -0
- package/dist/react/InstagramFeed.d.ts +7 -0
- package/dist/react/InstagramFeed.js +6 -0
- package/dist/react/InstagramFeedRoot.d.ts +18 -0
- package/dist/react/InstagramFeedRoot.js +19 -0
- package/dist/react/InstagramMedia.d.ts +73 -0
- package/dist/react/InstagramMedia.js +71 -0
- package/dist/react/InstagramMedias.d.ts +10 -0
- package/dist/react/InstagramMedias.js +16 -0
- package/dist/react/UserName.d.ts +11 -0
- package/dist/react/UserName.js +8 -0
- package/dist/react/core/InstagramMedia.d.ts +82 -0
- package/dist/react/core/InstagramMedia.js +65 -0
- package/dist/react/core/InstagramMedias.d.ts +19 -0
- package/dist/react/core/InstagramMedias.js +54 -0
- package/dist/react/core/Root.d.ts +7 -0
- package/dist/react/core/Root.js +8 -0
- package/dist/react/core/UserName.d.ts +21 -0
- package/dist/react/core/UserName.js +17 -0
- package/dist/react/core/index.d.ts +4 -0
- package/dist/react/core/index.js +5 -0
- package/dist/react/index.d.ts +2 -0
- package/dist/react/index.js +2 -0
- package/dist/services/index.d.ts +2 -0
- package/dist/services/index.js +2 -0
- package/dist/services/instagram-feed-service.d.ts +178 -0
- package/dist/services/instagram-feed-service.js +196 -0
- package/dist/services/instagram-media-item-service.d.ts +73 -0
- package/dist/services/instagram-media-item-service.js +55 -0
- package/dist/vitest.setup.d.ts +1 -0
- package/dist/vitest.setup.js +1 -0
- package/package.json +81 -0
- package/react/package.json +6 -0
- package/services/package.json +6 -0
|
@@ -0,0 +1,196 @@
|
|
|
1
|
+
import { defineService, implementService } from '@wix/services-definitions';
|
|
2
|
+
import { SignalsServiceDefinition, } from '@wix/services-definitions/core-services/signals';
|
|
3
|
+
import { accounts } from '@wix/instagram-account';
|
|
4
|
+
import { media } from '@wix/instagram-media';
|
|
5
|
+
/**
|
|
6
|
+
* Default Instagram feed data
|
|
7
|
+
*/
|
|
8
|
+
const defaultInstagramFeedData = {
|
|
9
|
+
mediaItems: [],
|
|
10
|
+
hasMore: false,
|
|
11
|
+
};
|
|
12
|
+
/**
|
|
13
|
+
* Service definition for the Instagram Feed service.
|
|
14
|
+
* This defines the reactive API contract for managing Instagram feed data.
|
|
15
|
+
*/
|
|
16
|
+
export const InstagramFeedServiceDefinition = defineService('instagram-feed');
|
|
17
|
+
/**
|
|
18
|
+
* Implementation of the Instagram Feed service that manages reactive Instagram feed data.
|
|
19
|
+
* This service provides signals for feed data, loading state, and error handling,
|
|
20
|
+
* along with methods to dynamically load and refresh Instagram content.
|
|
21
|
+
*
|
|
22
|
+
* @example
|
|
23
|
+
* ```tsx
|
|
24
|
+
* import { InstagramFeedService, InstagramFeedServiceDefinition } from '@wix/instagram/services';
|
|
25
|
+
* import { useService } from '@wix/services-manager-react';
|
|
26
|
+
*
|
|
27
|
+
* function InstagramComponent({ feedConfig }) {
|
|
28
|
+
* return (
|
|
29
|
+
* <ServiceProvider services={createServicesMap([
|
|
30
|
+
* [InstagramFeedServiceDefinition, InstagramFeedService.withConfig(feedConfig)]
|
|
31
|
+
* ])}>
|
|
32
|
+
* <InstagramDisplay />
|
|
33
|
+
* </ServiceProvider>
|
|
34
|
+
* );
|
|
35
|
+
* }
|
|
36
|
+
*
|
|
37
|
+
* function InstagramDisplay() {
|
|
38
|
+
* const feedService = useService(InstagramFeedServiceDefinition);
|
|
39
|
+
* const feedData = feedService.feedData.get();
|
|
40
|
+
* const isLoading = feedService.isLoading.get();
|
|
41
|
+
* const error = feedService.error.get();
|
|
42
|
+
*
|
|
43
|
+
* if (isLoading) return <div>Loading Instagram feed...</div>;
|
|
44
|
+
* if (error) return <div>Error: {error}</div>;
|
|
45
|
+
*
|
|
46
|
+
* return <div>{feedData.mediaItems.length} posts loaded</div>;
|
|
47
|
+
* }
|
|
48
|
+
* ```
|
|
49
|
+
*/
|
|
50
|
+
export const InstagramFeedService = implementService.withConfig()(InstagramFeedServiceDefinition, ({ getService, config }) => {
|
|
51
|
+
const signalsService = getService(SignalsServiceDefinition);
|
|
52
|
+
const feedData = signalsService.signal(config.feedData || defaultInstagramFeedData);
|
|
53
|
+
const isLoading = signalsService.signal(!!config.accountId);
|
|
54
|
+
const error = signalsService.signal(null);
|
|
55
|
+
const loadFeed = async (accountId, cursor) => {
|
|
56
|
+
try {
|
|
57
|
+
isLoading.set(true);
|
|
58
|
+
error.set(null);
|
|
59
|
+
// Load Instagram account information
|
|
60
|
+
const accountResponse = await accounts.getInstagramAccount(accountId);
|
|
61
|
+
// Load Instagram media for the account
|
|
62
|
+
const mediaResponse = await media.listInstagramAccountMedia(accountId);
|
|
63
|
+
// Transform SDK media to our interface format
|
|
64
|
+
const transformedMedia = mediaResponse.media?.map((mediaItem) => ({
|
|
65
|
+
id: mediaItem._id || mediaItem.mediaId || '',
|
|
66
|
+
type: (mediaItem.mediaType || 'image'),
|
|
67
|
+
mediaUrl: mediaItem.mediaUrl || '',
|
|
68
|
+
thumbnailUrl: mediaItem.thumbnailUrl || undefined,
|
|
69
|
+
caption: mediaItem.caption,
|
|
70
|
+
permalink: mediaItem.permalink || '',
|
|
71
|
+
timestamp: typeof mediaItem.timestamp === 'string'
|
|
72
|
+
? mediaItem.timestamp
|
|
73
|
+
: new Date().toISOString(),
|
|
74
|
+
altText: mediaItem.caption ||
|
|
75
|
+
`Instagram post ${mediaItem._id || mediaItem.mediaId}`,
|
|
76
|
+
})) || [];
|
|
77
|
+
const newFeedData = {
|
|
78
|
+
account: accountResponse,
|
|
79
|
+
mediaItems: cursor
|
|
80
|
+
? [...feedData.get().mediaItems, ...transformedMedia]
|
|
81
|
+
: transformedMedia,
|
|
82
|
+
hasMore: false, // Note: Real pagination logic would depend on actual SDK response structure
|
|
83
|
+
nextCursor: undefined,
|
|
84
|
+
};
|
|
85
|
+
feedData.set(newFeedData);
|
|
86
|
+
}
|
|
87
|
+
catch (err) {
|
|
88
|
+
const errorMessage = err instanceof Error
|
|
89
|
+
? err.message
|
|
90
|
+
: 'Failed to load Instagram feed';
|
|
91
|
+
error.set(errorMessage);
|
|
92
|
+
}
|
|
93
|
+
finally {
|
|
94
|
+
isLoading.set(false);
|
|
95
|
+
}
|
|
96
|
+
};
|
|
97
|
+
const loadMore = async () => {
|
|
98
|
+
const currentData = feedData.get();
|
|
99
|
+
if (!currentData.hasMore || isLoading.get())
|
|
100
|
+
return;
|
|
101
|
+
if (config.accountId) {
|
|
102
|
+
await loadFeed(config.accountId, currentData.nextCursor);
|
|
103
|
+
}
|
|
104
|
+
};
|
|
105
|
+
const refresh = async () => {
|
|
106
|
+
if (config.accountId) {
|
|
107
|
+
await loadFeed(config.accountId);
|
|
108
|
+
}
|
|
109
|
+
};
|
|
110
|
+
// Initial load if accountId is provided
|
|
111
|
+
if (config.accountId && !config.feedData) {
|
|
112
|
+
loadFeed(config.accountId);
|
|
113
|
+
}
|
|
114
|
+
return {
|
|
115
|
+
feedData,
|
|
116
|
+
isLoading,
|
|
117
|
+
error,
|
|
118
|
+
loadMore,
|
|
119
|
+
refresh,
|
|
120
|
+
};
|
|
121
|
+
});
|
|
122
|
+
/**
|
|
123
|
+
* Input object for loading Instagram feed service configuration
|
|
124
|
+
*/
|
|
125
|
+
/**
|
|
126
|
+
* Loads Instagram feed service configuration from the Wix Instagram API for SSR initialization.
|
|
127
|
+
* This function is designed to be used during Server-Side Rendering (SSR) to preload
|
|
128
|
+
* Instagram feed data that will be used to configure the InstagramFeedService.
|
|
129
|
+
*
|
|
130
|
+
* @param input InstagramFeedServiceConfig object containing accountId and optional limit
|
|
131
|
+
* @returns Promise that resolves to InstagramFeedServiceConfigResult (success with config or notFound)
|
|
132
|
+
*
|
|
133
|
+
* @example
|
|
134
|
+
* ```tsx
|
|
135
|
+
* import { loadInstagramFeedServiceConfig } from '@wix/instagram/services';
|
|
136
|
+
*
|
|
137
|
+
* // In your SSR handler or server action
|
|
138
|
+
* const configResult = await loadInstagramFeedServiceConfig({
|
|
139
|
+
* accountId: 'instagram_account_123',
|
|
140
|
+
* limit: 12
|
|
141
|
+
* });
|
|
142
|
+
*
|
|
143
|
+
* if (configResult.type === 'success') {
|
|
144
|
+
* // Use configResult.config to initialize InstagramFeedService
|
|
145
|
+
* return configResult.config;
|
|
146
|
+
* } else {
|
|
147
|
+
* // Handle not found case
|
|
148
|
+
* return { accountId: 'instagram_account_123' }; // fallback config
|
|
149
|
+
* }
|
|
150
|
+
* ```
|
|
151
|
+
*/
|
|
152
|
+
export async function loadInstagramFeedServiceConfig(input) {
|
|
153
|
+
try {
|
|
154
|
+
const { accountId, limit } = input;
|
|
155
|
+
if (!accountId) {
|
|
156
|
+
return { type: 'notFound' };
|
|
157
|
+
}
|
|
158
|
+
// Load Instagram account information using SDK
|
|
159
|
+
const accountResponse = await accounts.getInstagramAccount(accountId);
|
|
160
|
+
if (!accountResponse) {
|
|
161
|
+
return { type: 'notFound' };
|
|
162
|
+
}
|
|
163
|
+
// Load initial media items using SDK
|
|
164
|
+
const mediaResponse = await media.listInstagramAccountMedia(accountId);
|
|
165
|
+
// Transform SDK media to our interface format
|
|
166
|
+
const transformedMedia = mediaResponse.media?.map((mediaItem) => ({
|
|
167
|
+
id: mediaItem._id || mediaItem.mediaId || '',
|
|
168
|
+
type: (mediaItem.mediaType || 'image'),
|
|
169
|
+
mediaUrl: mediaItem.mediaUrl || '',
|
|
170
|
+
thumbnailUrl: mediaItem.thumbnailUrl || undefined,
|
|
171
|
+
caption: mediaItem.caption,
|
|
172
|
+
permalink: mediaItem.permalink || '',
|
|
173
|
+
timestamp: typeof mediaItem.timestamp === 'string'
|
|
174
|
+
? mediaItem.timestamp
|
|
175
|
+
: new Date().toISOString(),
|
|
176
|
+
altText: mediaItem.caption ||
|
|
177
|
+
`Instagram post ${mediaItem._id || mediaItem.mediaId}`,
|
|
178
|
+
})) || [];
|
|
179
|
+
const feedData = {
|
|
180
|
+
account: accountResponse,
|
|
181
|
+
mediaItems: transformedMedia,
|
|
182
|
+
hasMore: false, // Note: Real pagination logic would depend on actual SDK response structure
|
|
183
|
+
nextCursor: undefined,
|
|
184
|
+
};
|
|
185
|
+
const config = {
|
|
186
|
+
accountId,
|
|
187
|
+
limit,
|
|
188
|
+
feedData,
|
|
189
|
+
};
|
|
190
|
+
return { type: 'success', config };
|
|
191
|
+
}
|
|
192
|
+
catch (error) {
|
|
193
|
+
console.error('Failed to load Instagram feed config:', error);
|
|
194
|
+
return { type: 'notFound' };
|
|
195
|
+
}
|
|
196
|
+
}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import { type Signal } from '@wix/services-definitions/core-services/signals';
|
|
2
|
+
import type { InstagramMediaItem } from './instagram-feed-service.js';
|
|
3
|
+
/**
|
|
4
|
+
* API interface for Instagram Media Item service
|
|
5
|
+
*/
|
|
6
|
+
export interface InstagramMediaItemServiceAPI {
|
|
7
|
+
/** Reactive signal containing the media item data */
|
|
8
|
+
mediaItem: Signal<InstagramMediaItem>;
|
|
9
|
+
/** Reactive signal containing the media item index */
|
|
10
|
+
index: Signal<number>;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Configuration for Instagram Media Item service
|
|
14
|
+
*/
|
|
15
|
+
export interface InstagramMediaItemServiceConfig {
|
|
16
|
+
/** The Instagram media item data */
|
|
17
|
+
mediaItem: InstagramMediaItem;
|
|
18
|
+
/** The index of this media item in the gallery */
|
|
19
|
+
index: number;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Service definition for Instagram Media Item
|
|
23
|
+
*/
|
|
24
|
+
export declare const InstagramMediaItemServiceDefinition: string & {
|
|
25
|
+
__api: InstagramMediaItemServiceAPI;
|
|
26
|
+
__config: {};
|
|
27
|
+
isServiceDefinition?: boolean;
|
|
28
|
+
} & InstagramMediaItemServiceAPI;
|
|
29
|
+
/**
|
|
30
|
+
* Implementation of the Instagram Media Item service that manages reactive media item data.
|
|
31
|
+
* This service provides signals for individual media item data and its index position.
|
|
32
|
+
* Used by gallery components to access media item information in a service-based architecture.
|
|
33
|
+
*
|
|
34
|
+
* @example
|
|
35
|
+
* ```tsx
|
|
36
|
+
* import { InstagramMediaItemService, InstagramMediaItemServiceDefinition } from '@wix/headless-instagram/services';
|
|
37
|
+
* import { useService } from '@wix/services-manager-react';
|
|
38
|
+
* import { WixServices, createServicesMap } from '@wix/services-manager';
|
|
39
|
+
*
|
|
40
|
+
* function MediaItemComponent({ mediaItem, index }) {
|
|
41
|
+
* return (
|
|
42
|
+
* <WixServices
|
|
43
|
+
* servicesMap={createServicesMap().addService(
|
|
44
|
+
* InstagramMediaItemServiceDefinition,
|
|
45
|
+
* InstagramMediaItemService,
|
|
46
|
+
* { mediaItem, index }
|
|
47
|
+
* )}
|
|
48
|
+
* >
|
|
49
|
+
* <MediaItemDisplay />
|
|
50
|
+
* </WixServices>
|
|
51
|
+
* );
|
|
52
|
+
* }
|
|
53
|
+
*
|
|
54
|
+
* function MediaItemDisplay() {
|
|
55
|
+
* const mediaItemService = useService(InstagramMediaItemServiceDefinition);
|
|
56
|
+
* const mediaItem = mediaItemService.mediaItem.get();
|
|
57
|
+
* const index = mediaItemService.index.get();
|
|
58
|
+
*
|
|
59
|
+
* return (
|
|
60
|
+
* <div>
|
|
61
|
+
* <img src={mediaItem.mediaUrl} alt={mediaItem.altText} />
|
|
62
|
+
* <span>Item {index + 1}</span>
|
|
63
|
+
* {mediaItem.type === 'video' && <VideoIndicator />}
|
|
64
|
+
* </div>
|
|
65
|
+
* );
|
|
66
|
+
* }
|
|
67
|
+
* ```
|
|
68
|
+
*/
|
|
69
|
+
export declare const InstagramMediaItemService: import("@wix/services-definitions").ServiceFactory<string & {
|
|
70
|
+
__api: InstagramMediaItemServiceAPI;
|
|
71
|
+
__config: {};
|
|
72
|
+
isServiceDefinition?: boolean;
|
|
73
|
+
} & InstagramMediaItemServiceAPI, InstagramMediaItemServiceConfig>;
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { defineService, implementService } from '@wix/services-definitions';
|
|
2
|
+
import { SignalsServiceDefinition, } from '@wix/services-definitions/core-services/signals';
|
|
3
|
+
/**
|
|
4
|
+
* Service definition for Instagram Media Item
|
|
5
|
+
*/
|
|
6
|
+
export const InstagramMediaItemServiceDefinition = defineService('instagramMediaItem');
|
|
7
|
+
/**
|
|
8
|
+
* Implementation of the Instagram Media Item service that manages reactive media item data.
|
|
9
|
+
* This service provides signals for individual media item data and its index position.
|
|
10
|
+
* Used by gallery components to access media item information in a service-based architecture.
|
|
11
|
+
*
|
|
12
|
+
* @example
|
|
13
|
+
* ```tsx
|
|
14
|
+
* import { InstagramMediaItemService, InstagramMediaItemServiceDefinition } from '@wix/headless-instagram/services';
|
|
15
|
+
* import { useService } from '@wix/services-manager-react';
|
|
16
|
+
* import { WixServices, createServicesMap } from '@wix/services-manager';
|
|
17
|
+
*
|
|
18
|
+
* function MediaItemComponent({ mediaItem, index }) {
|
|
19
|
+
* return (
|
|
20
|
+
* <WixServices
|
|
21
|
+
* servicesMap={createServicesMap().addService(
|
|
22
|
+
* InstagramMediaItemServiceDefinition,
|
|
23
|
+
* InstagramMediaItemService,
|
|
24
|
+
* { mediaItem, index }
|
|
25
|
+
* )}
|
|
26
|
+
* >
|
|
27
|
+
* <MediaItemDisplay />
|
|
28
|
+
* </WixServices>
|
|
29
|
+
* );
|
|
30
|
+
* }
|
|
31
|
+
*
|
|
32
|
+
* function MediaItemDisplay() {
|
|
33
|
+
* const mediaItemService = useService(InstagramMediaItemServiceDefinition);
|
|
34
|
+
* const mediaItem = mediaItemService.mediaItem.get();
|
|
35
|
+
* const index = mediaItemService.index.get();
|
|
36
|
+
*
|
|
37
|
+
* return (
|
|
38
|
+
* <div>
|
|
39
|
+
* <img src={mediaItem.mediaUrl} alt={mediaItem.altText} />
|
|
40
|
+
* <span>Item {index + 1}</span>
|
|
41
|
+
* {mediaItem.type === 'video' && <VideoIndicator />}
|
|
42
|
+
* </div>
|
|
43
|
+
* );
|
|
44
|
+
* }
|
|
45
|
+
* ```
|
|
46
|
+
*/
|
|
47
|
+
export const InstagramMediaItemService = implementService.withConfig()(InstagramMediaItemServiceDefinition, ({ getService, config }) => {
|
|
48
|
+
const signalsService = getService(SignalsServiceDefinition);
|
|
49
|
+
const mediaItem = signalsService.signal(config.mediaItem);
|
|
50
|
+
const index = signalsService.signal(config.index);
|
|
51
|
+
return {
|
|
52
|
+
mediaItem,
|
|
53
|
+
index,
|
|
54
|
+
};
|
|
55
|
+
});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import '@testing-library/jest-dom/vitest';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import '@testing-library/jest-dom/vitest';
|
package/package.json
ADDED
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@wix/headless-instagram",
|
|
3
|
+
"version": "0.0.1",
|
|
4
|
+
"description": "Headless components for Wix Instagram integration",
|
|
5
|
+
"type": "module",
|
|
6
|
+
"license": "MIT",
|
|
7
|
+
"repository": {
|
|
8
|
+
"type": "git",
|
|
9
|
+
"url": "https://github.com/wix/headless-components.git",
|
|
10
|
+
"directory": "packages/headless-components/instagram"
|
|
11
|
+
},
|
|
12
|
+
"bugs": {
|
|
13
|
+
"url": "https://github.com/wix/headless-components/issues"
|
|
14
|
+
},
|
|
15
|
+
"homepage": "https://github.com/wix/headless-components#readme",
|
|
16
|
+
"keywords": [
|
|
17
|
+
"wix",
|
|
18
|
+
"headless",
|
|
19
|
+
"instagram",
|
|
20
|
+
"react",
|
|
21
|
+
"components"
|
|
22
|
+
],
|
|
23
|
+
"publishConfig": {
|
|
24
|
+
"access": "public"
|
|
25
|
+
},
|
|
26
|
+
"scripts": {
|
|
27
|
+
"build": "npm run build:esm && npm run build:cjs",
|
|
28
|
+
"build:esm": "tsc -p tsconfig.json",
|
|
29
|
+
"build:cjs": "tsc -p tsconfig.cjs.json",
|
|
30
|
+
"test": "vitest --run",
|
|
31
|
+
"lint:fix": "prettier --write \"src/**/*.{ts,tsx,js,jsx,json,md}\"",
|
|
32
|
+
"lint:check": "prettier --check \"src/**/*.{ts,tsx,js,jsx,json,md}\""
|
|
33
|
+
},
|
|
34
|
+
"files": [
|
|
35
|
+
"dist",
|
|
36
|
+
"cjs",
|
|
37
|
+
"react",
|
|
38
|
+
"services"
|
|
39
|
+
],
|
|
40
|
+
"exports": {
|
|
41
|
+
"./react": {
|
|
42
|
+
"types": "./dist/react/index.d.ts",
|
|
43
|
+
"import": "./dist/react/index.js",
|
|
44
|
+
"require": "./cjs/dist/react/index.js"
|
|
45
|
+
},
|
|
46
|
+
"./core": {
|
|
47
|
+
"types": "./dist/react/core/index.d.ts",
|
|
48
|
+
"import": "./dist/react/core/index.js",
|
|
49
|
+
"require": "./cjs/dist/react/core/index.js"
|
|
50
|
+
},
|
|
51
|
+
"./services": {
|
|
52
|
+
"types": "./dist/services/index.d.ts",
|
|
53
|
+
"import": "./dist/services/index.js",
|
|
54
|
+
"require": "./cjs/dist/services/index.js"
|
|
55
|
+
}
|
|
56
|
+
},
|
|
57
|
+
"devDependencies": {
|
|
58
|
+
"@testing-library/dom": "^10.4.0",
|
|
59
|
+
"@testing-library/jest-dom": "^6.6.3",
|
|
60
|
+
"@testing-library/react": "^16.3.0",
|
|
61
|
+
"@types/node": "^20.9.0",
|
|
62
|
+
"@vitest/ui": "^3.1.4",
|
|
63
|
+
"jsdom": "^26.1.0",
|
|
64
|
+
"prettier": "^3.4.2",
|
|
65
|
+
"typescript": "^5.8.3",
|
|
66
|
+
"vitest": "^3.1.4"
|
|
67
|
+
},
|
|
68
|
+
"dependencies": {
|
|
69
|
+
"@radix-ui/react-slot": "^1.2.3",
|
|
70
|
+
"@wix/essentials": "^0.1.24",
|
|
71
|
+
"@wix/headless-media": "workspace:*",
|
|
72
|
+
"@wix/headless-utils": "workspace:*",
|
|
73
|
+
"@wix/instagram-account": "^1.0.16",
|
|
74
|
+
"@wix/instagram-media": "^1.0.13",
|
|
75
|
+
"@wix/services-definitions": "^0.1.4",
|
|
76
|
+
"@wix/services-manager-react": "^0.1.26"
|
|
77
|
+
},
|
|
78
|
+
"peerDependencies": {
|
|
79
|
+
"@wix/headless-components": "workspace:*"
|
|
80
|
+
}
|
|
81
|
+
}
|