@depict-ai/react-ui 0.0.44 → 0.0.46

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/index.d.ts CHANGED
@@ -1,20 +1,9 @@
1
1
  import React, { PropsWithChildren, ReactNode } from "react";
2
- // @ts-ignore -- react-router is optional and only used for typing the reactRouterUseNavigate property
3
- import { useNavigate } from "react-router";
4
2
  import { Display } from "@depict-ai/utilishared";
5
3
  import { SDKColsAtSize, SDKGridSpacing } from "@depict-ai/ui";
6
4
  export function DepictSearchField(): import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>>;
7
- type BaseSearchConfig = {
8
- /**
9
- * The market to use for the search.
10
- * @example "se", "no", "dk"
11
- */
12
- merchant: string;
13
- /**
14
- * The merchant to use for the search.
15
- * @example "se", "no", "dk"
16
- */
17
- market: string;
5
+ type NavigateFunction = (href: string) => void;
6
+ type DepictSearchConfig = {
18
7
  /**
19
8
  * The path to the search page.
20
9
  * @example "/search", "/sok"
@@ -27,49 +16,65 @@ type BaseSearchConfig = {
27
16
  */
28
17
  urlParamName?: string;
29
18
  /**
30
- * Whether or not to enable category suggestions.
19
+ * Whether or not to enable category suggestions in the search modal and search page.
31
20
  * @default false
32
21
  */
33
22
  enableCategorySuggestions?: boolean;
34
23
  };
24
+ type DepictBaseConfig = {
25
+ /**
26
+ * The merchant to use for the search.
27
+ * @example "YOUR_MERCHANT", "stronger"
28
+ */
29
+ merchant: string;
30
+ /**
31
+ * The market to use for the search.
32
+ * @example "YOUR_MARKET", "no", "en-de"
33
+ */
34
+ market: string;
35
+ /**
36
+ * The function to use for navigating to a new page.
37
+ * This function will be used internally by our components to navigate.
38
+ *
39
+ * You don't need to provide any in a Next.js context.
40
+ *
41
+ * @example
42
+ * Here is how you would use it with react-router, using our helper function.
43
+ * ```tsx
44
+ * import { DepictProvider, Navigation } from "@depict-ai/react-ui";
45
+ *
46
+ * function Router() {
47
+ * const navigate = useNavigate();
48
+ * return (
49
+ * <DepictProvider
50
+ * merchant="houdini"
51
+ * market="en-de"
52
+ * navigateFunction={Navigation.reactRouterNavigation(navigate)}
53
+ * search={{
54
+ * searchPagePath: "/search",
55
+ * }}
56
+ * >
57
+ * <Routes>[...]</Routes>
58
+ * </DepictProvider>
59
+ * );
60
+ * }
61
+ * ```
62
+ * @example
63
+ * If you're using another library, you can define your own navigate function, that's compatible with the `NavigateFunction` type.
64
+ * ```tsx
65
+ * const navigateFunction = (href: string) => {
66
+ * router.push(href);
67
+ * };
68
+ * ```
69
+ */
70
+ navigateFunction?: NavigateFunction;
71
+ };
35
72
  /**
36
- * You can pass the function you use to navigate to a new page.
37
- *
38
- * Currently only works with react-router's useNavigate hook.
39
- * @example
40
- * ```tsx
41
- * // @ts-ignore -- react-router is optional and only used for typing the reactRouterUseNavigate property
42
- import { useNavigate } from "react-router";
43
- *
44
- * const App = () => {
45
- * return (
46
- * <DepictProvider
47
- * merchant="YOUR_MERCHANT"
48
- * market="YOUR_MARKET"
49
- * searchPagePath="/search"
50
- * navigateFunction={useNavigate}
51
- * >
52
- * <App />
53
- * </DepictProvider>
54
- * );
55
- * };
56
- * ```
57
- */
58
- type DepictConfigInReactRouterContext = {
59
- reactRouterUseNavigate: ReactRouterUseNavigate;
60
- onNavigation?: undefined;
61
- } & BaseSearchConfig;
62
- type DepictConfigInOtherContext = {
63
- onNavigation: (href: string, shallow?: boolean) => unknown;
64
- reactRouterUseNavigate?: undefined;
65
- } & BaseSearchConfig;
66
- type DepictConfig = BaseSearchConfig | DepictConfigInReactRouterContext | DepictConfigInOtherContext;
67
- /**
68
- *
69
- If react-router does not exist, useNavigate will fall back to "any".
70
- In that case, the ReactRouterUseNavigate type becomes "never" and cannot be used.
73
+ * The config for the DepictProvider.
71
74
  */
72
- type ReactRouterUseNavigate = any extends typeof useNavigate ? never : typeof useNavigate;
75
+ type DepictConfig = DepictBaseConfig & {
76
+ search: DepictSearchConfig;
77
+ };
73
78
  /**
74
79
  * The DepictProvider is a wrapper component that should be used to wrap any component that uses Depict components.
75
80
  *
@@ -79,14 +84,14 @@ type ReactRouterUseNavigate = any extends typeof useNavigate ? never : typeof us
79
84
  *
80
85
  * @example
81
86
  * ```tsx
82
- * const App = () => {
83
- * const navigate = useNavigate();
84
- *
87
+ * const App = () => { *
85
88
  * return (
86
89
  * <DepictProvider
87
90
  * merchant="YOUR_MERCHANT"
88
91
  * market="YOUR_MARKET"
89
- * searchPagePath="/search"
92
+ * search={{
93
+ * searchPagePath: "/search",
94
+ * }}
90
95
  * >
91
96
  * <App />
92
97
  * </DepictProvider>
@@ -99,7 +104,9 @@ export function DepictProvider(props: PropsWithChildren<DepictConfig>): import("
99
104
  children?: import("react").ReactNode;
100
105
  }>;
101
106
  /**
102
- * A search header alignment component.
107
+ * A search header alignment component,
108
+ * which should be placed in the header of the page and
109
+ * will be used to align the search modal input.
103
110
  * @returns {JSX.Element}
104
111
  */
105
112
  export function DepictSearchHeader(): import("react").DetailedReactHTMLElement<{
@@ -115,10 +122,11 @@ export function openModal(): void;
115
122
  * The Depict product card props.
116
123
  */
117
124
  export interface DepictProductCardProps<T extends Display> {
125
+ /** The display data to render. */
118
126
  display: T | null;
119
127
  }
120
128
  /**
121
- * Depict product card
129
+ * Depict product card to use for rendering products.
122
130
  */
123
131
  export type DepictProductCard<T extends Display> = (props: DepictProductCardProps<T>) => ReactNode;
124
132
  interface SearchPageConfig<T extends Display> {
@@ -128,15 +136,22 @@ interface SearchPageConfig<T extends Display> {
128
136
  productCard: DepictProductCard<T>;
129
137
  /**
130
138
  * How many columns to show at each media size.
131
- * @default { [[4], [3, 1024], [2, 901]] }
139
+ * @default
140
+ * [[2, 901], [3, 1024], [4]]
141
+ * @example
142
+ * [[2, 901], [3, 1024], [4]]
143
+ * means 2 columns at sizes up to 901px, 3 columns at sizes up to 1024px and after that 4 columns at any size.
132
144
  */
133
145
  columnsAtSize?: SDKColsAtSize;
134
146
  /**
135
147
  * The spacing between products.
148
+ * @default "2%"
149
+ * @example
150
+ * "2%", "10px", "1rem"
136
151
  */
137
152
  gridSpacing?: SDKGridSpacing;
138
153
  /**
139
- * Whether or not to show the search input field.
154
+ * Whether or not to show the search input field in the search page.
140
155
  * @default true
141
156
  */
142
157
  includeInputField?: boolean;
@@ -169,8 +184,6 @@ interface SearchPageConfig<T extends Display> {
169
184
  * id: display.product_id,
170
185
  * name: display.title,
171
186
  * description: display.title,
172
- * variants: [],
173
- * options: [],
174
187
  * images: [{ url: display.image_url }],
175
188
  * price: {
176
189
  * value: display.sale_price,
@@ -188,7 +201,7 @@ export function DepictSearchPage<T extends Display>(props: SearchPageConfig<T>):
188
201
  * Props for the ImagePlaceholder component.
189
202
  */
190
203
  interface ImagePlaceholderProps {
191
- /** The aspect ratio of the image. */
204
+ /** The aspect ratio of the image that will be displayed. */
192
205
  aspectRatio: number;
193
206
  }
194
207
  /**
@@ -201,11 +214,24 @@ export const ImagePlaceholder: React.FC<ImagePlaceholderProps>;
201
214
  * Props for the TextPlaceholder component.
202
215
  */
203
216
  interface TextPlaceholderProps {
204
- /** The height of the text. */
217
+ /**
218
+ * The height of the text, including a unit.
219
+ * @example "1em"
220
+ */
205
221
  height: string;
206
- /** The width of the text. */
222
+ /**
223
+ * The width of the text.
224
+ * @example "60px", "10em"
225
+ */
207
226
  width: string;
208
227
  }
209
228
  /** A placeholder text that can be used in place of a text that is loading. */
210
229
  export const TextPlaceholder: React.FC<TextPlaceholderProps>;
211
- export const version = "0.0.44";
230
+ export const version = "0.0.46";
231
+ /**
232
+ * Helper function to navigate to a new page depending on the navigation library used.
233
+ */
234
+ export const Navigation: {
235
+ nextRouterNavigation: (router: import("next/router").NextRouter) => (href: string) => void;
236
+ reactRouterNavigation: (navigateFunction: import("react-router").NavigateFunction) => (href: string) => void;
237
+ };
package/dist/main.js CHANGED
@@ -18,6 +18,7 @@ $parcel$export(module.exports, "DepictSearchPage", () => $a6bedbe4b4d6d027$expor
18
18
  $parcel$export(module.exports, "ImagePlaceholder", () => $308b2c6db21be2eb$export$3f37af283f8fb843);
19
19
  $parcel$export(module.exports, "TextPlaceholder", () => $afce04c26b0c4208$export$89c6019e4baa40b1);
20
20
  $parcel$export(module.exports, "version", () => $db7b67857900028b$export$83d89fbfd8236492);
21
+ $parcel$export(module.exports, "Navigation", () => $b742053c966024b4$export$b8a61e5c71402559);
21
22
  /*! Depict.ai search and product listing react SDK wrapper */ // This is where the actual source of your React stuff should live
22
23
  // Note, if you add an export here, also add one in src-server/main.ts
23
24
 
@@ -134,8 +135,20 @@ function $6319748b4f0426f0$var$removeLotsOfPadding() {
134
135
 
135
136
 
136
137
 
138
+
139
+ const $bc389476eeb2b615$export$599d4515591ef232 = (href)=>{
140
+ const shallow = (0, $b4d0d98857ed9934$export$6cb4d3a5c1ac9b43)(location);
141
+ if (window.next) window.next.router.push(href, undefined, {
142
+ shallow: shallow,
143
+ scroll: true
144
+ });
145
+ else location.href = href;
146
+ };
147
+
148
+
137
149
  function $18b830ef84ac138a$export$9fac37a9c21c2f3b(props) {
138
- const { children: children , searchPagePath: searchPagePath , urlParamName: urlParamName , enableCategorySuggestions: enableCategorySuggestions , market: market , merchant: merchant } = props;
150
+ const { children: children , market: market , merchant: merchant , navigateFunction: navigateFunction } = props;
151
+ const { searchPagePath: searchPagePath , urlParamName: urlParamName , enableCategorySuggestions: enableCategorySuggestions } = props.search ?? {};
139
152
  if (!market || !merchant) {
140
153
  (0, $0b7cd4fb39fc3502$export$8e769ad4338a911e).required_state_set_[1](false);
141
154
  return (0, $4GYXz$react.createElement)((0, $4GYXz$react.Fragment), null, children);
@@ -145,11 +158,6 @@ function $18b830ef84ac138a$export$9fac37a9c21c2f3b(props) {
145
158
  const [get_search_page_path, set_search_page_path] = (0, $0b7cd4fb39fc3502$export$8e769ad4338a911e).search_page_path_;
146
159
  set_search_page_path(searchPagePath);
147
160
  if (!search) {
148
- let react_router_navigate;
149
- if ("reactRouterUseNavigate" in props) {
150
- const { reactRouterUseNavigate: reactRouterUseNavigate } = props;
151
- if (typeof reactRouterUseNavigate === "function") react_router_navigate = reactRouterUseNavigate();
152
- }
153
161
  (0, $0b7cd4fb39fc3502$export$8e769ad4338a911e).search = new (0, $4GYXz$depictaiui.DepictSearch)({
154
162
  search_query_url_param_name: urlParamName,
155
163
  market: market,
@@ -167,20 +175,8 @@ function $18b830ef84ac138a$export$9fac37a9c21c2f3b(props) {
167
175
  }
168
176
  },
169
177
  on_navigation: (new_href)=>{
170
- const shallow = (0, $b4d0d98857ed9934$export$6cb4d3a5c1ac9b43)(location);
171
- if ("onNavigation" in props) {
172
- const { onNavigation: onNavigation } = props;
173
- if (typeof onNavigation === "function") return onNavigation(new_href, shallow);
174
- }
175
- if (react_router_navigate) {
176
- const url_object = new URL(new_href);
177
- return react_router_navigate(url_object.pathname + url_object.search + url_object.hash);
178
- }
179
- if (window.next) window.next.router.push(new_href, undefined, {
180
- shallow: shallow,
181
- scroll: true
182
- });
183
- else location.href = new_href;
178
+ if (navigateFunction) navigateFunction(new_href);
179
+ else (0, $bc389476eeb2b615$export$599d4515591ef232)(new_href);
184
180
  },
185
181
  url_transformer: (url)=>url.pathname = (0, $4GYXz$solidjs.untrack)(get_search_page_path)
186
182
  });
@@ -351,9 +347,40 @@ const $afce04c26b0c4208$export$89c6019e4baa40b1 = ({ width: width , height: heig
351
347
  };
352
348
 
353
349
 
354
- const $db7b67857900028b$export$83d89fbfd8236492 = "0.0.44";
350
+ const $db7b67857900028b$export$83d89fbfd8236492 = "0.0.46";
351
+
352
+
355
353
 
356
354
 
355
+ const $e387bd534de10acd$export$804fac5697cfbe35 = (router)=>(href)=>{
356
+ const shallow = (0, $b4d0d98857ed9934$export$6cb4d3a5c1ac9b43)(location);
357
+ router.push(href, undefined, {
358
+ shallow: shallow,
359
+ scroll: true
360
+ });
361
+ };
362
+
363
+
364
+ /**
365
+ * Helper function that creates a function that can be used as the
366
+ * navigateFunction callback for DepictProvider when using react-router.
367
+ *
368
+ * React-router expect relative URLs, so this function will strip the
369
+ * protocol, hostname and port from the URL.
370
+ *
371
+ * @param navigateFunction what useNavigate() returns
372
+ * @returns a function that can be used as the navigateFunction callback for DepictProvider
373
+ */ const $201a023b63de7d2f$export$d53481656a62aebe = (navigateFunction)=>(href)=>{
374
+ const url_object = new URL(href);
375
+ return navigateFunction(url_object.pathname + url_object.search + url_object.hash);
376
+ };
377
+
378
+
379
+ const $b742053c966024b4$export$b8a61e5c71402559 = {
380
+ nextRouterNavigation: $e387bd534de10acd$export$804fac5697cfbe35,
381
+ reactRouterNavigation: $201a023b63de7d2f$export$d53481656a62aebe
382
+ };
383
+
357
384
 
358
385
  const $b03e4eee8610ebbe$var$package_name = "@depict-ai/react-ui";
359
386
  (0, $4GYXz$depictaiutilishared.dlog)($b03e4eee8610ebbe$var$package_name + " version", (0, $db7b67857900028b$export$83d89fbfd8236492));
package/dist/module.js CHANGED
@@ -122,8 +122,20 @@ function $8071251ee4e9ffa1$var$removeLotsOfPadding() {
122
122
 
123
123
 
124
124
 
125
+
126
+ const $7216ca4c8308a0f9$export$599d4515591ef232 = (href)=>{
127
+ const shallow = (0, $c83ba9ab79386687$export$6cb4d3a5c1ac9b43)(location);
128
+ if (window.next) window.next.router.push(href, undefined, {
129
+ shallow: shallow,
130
+ scroll: true
131
+ });
132
+ else location.href = href;
133
+ };
134
+
135
+
125
136
  function $faf794495ff8b304$export$9fac37a9c21c2f3b(props) {
126
- const { children: children , searchPagePath: searchPagePath , urlParamName: urlParamName , enableCategorySuggestions: enableCategorySuggestions , market: market , merchant: merchant } = props;
137
+ const { children: children , market: market , merchant: merchant , navigateFunction: navigateFunction } = props;
138
+ const { searchPagePath: searchPagePath , urlParamName: urlParamName , enableCategorySuggestions: enableCategorySuggestions } = props.search ?? {};
127
139
  if (!market || !merchant) {
128
140
  (0, $42858f023ef23dab$export$8e769ad4338a911e).required_state_set_[1](false);
129
141
  return (0, $TZSbU$createElement)((0, $TZSbU$Fragment), null, children);
@@ -133,11 +145,6 @@ function $faf794495ff8b304$export$9fac37a9c21c2f3b(props) {
133
145
  const [get_search_page_path, set_search_page_path] = (0, $42858f023ef23dab$export$8e769ad4338a911e).search_page_path_;
134
146
  set_search_page_path(searchPagePath);
135
147
  if (!search) {
136
- let react_router_navigate;
137
- if ("reactRouterUseNavigate" in props) {
138
- const { reactRouterUseNavigate: reactRouterUseNavigate } = props;
139
- if (typeof reactRouterUseNavigate === "function") react_router_navigate = reactRouterUseNavigate();
140
- }
141
148
  (0, $42858f023ef23dab$export$8e769ad4338a911e).search = new (0, $TZSbU$DepictSearch)({
142
149
  search_query_url_param_name: urlParamName,
143
150
  market: market,
@@ -155,20 +162,8 @@ function $faf794495ff8b304$export$9fac37a9c21c2f3b(props) {
155
162
  }
156
163
  },
157
164
  on_navigation: (new_href)=>{
158
- const shallow = (0, $c83ba9ab79386687$export$6cb4d3a5c1ac9b43)(location);
159
- if ("onNavigation" in props) {
160
- const { onNavigation: onNavigation } = props;
161
- if (typeof onNavigation === "function") return onNavigation(new_href, shallow);
162
- }
163
- if (react_router_navigate) {
164
- const url_object = new URL(new_href);
165
- return react_router_navigate(url_object.pathname + url_object.search + url_object.hash);
166
- }
167
- if (window.next) window.next.router.push(new_href, undefined, {
168
- shallow: shallow,
169
- scroll: true
170
- });
171
- else location.href = new_href;
165
+ if (navigateFunction) navigateFunction(new_href);
166
+ else (0, $7216ca4c8308a0f9$export$599d4515591ef232)(new_href);
172
167
  },
173
168
  url_transformer: (url)=>url.pathname = (0, $TZSbU$untrack)(get_search_page_path)
174
169
  });
@@ -339,9 +334,40 @@ const $8aa3ab31237c8dc9$export$89c6019e4baa40b1 = ({ width: width , height: heig
339
334
  };
340
335
 
341
336
 
342
- const $c9c4d066f9a5b51b$export$83d89fbfd8236492 = "0.0.44";
337
+ const $c9c4d066f9a5b51b$export$83d89fbfd8236492 = "0.0.46";
338
+
339
+
343
340
 
344
341
 
342
+ const $a92aa2beb560b8af$export$804fac5697cfbe35 = (router)=>(href)=>{
343
+ const shallow = (0, $c83ba9ab79386687$export$6cb4d3a5c1ac9b43)(location);
344
+ router.push(href, undefined, {
345
+ shallow: shallow,
346
+ scroll: true
347
+ });
348
+ };
349
+
350
+
351
+ /**
352
+ * Helper function that creates a function that can be used as the
353
+ * navigateFunction callback for DepictProvider when using react-router.
354
+ *
355
+ * React-router expect relative URLs, so this function will strip the
356
+ * protocol, hostname and port from the URL.
357
+ *
358
+ * @param navigateFunction what useNavigate() returns
359
+ * @returns a function that can be used as the navigateFunction callback for DepictProvider
360
+ */ const $01e1970add53d62a$export$d53481656a62aebe = (navigateFunction)=>(href)=>{
361
+ const url_object = new URL(href);
362
+ return navigateFunction(url_object.pathname + url_object.search + url_object.hash);
363
+ };
364
+
365
+
366
+ const $97603d19204ec48d$export$b8a61e5c71402559 = {
367
+ nextRouterNavigation: $a92aa2beb560b8af$export$804fac5697cfbe35,
368
+ reactRouterNavigation: $01e1970add53d62a$export$d53481656a62aebe
369
+ };
370
+
345
371
 
346
372
  const $43099132aad1ceb6$var$package_name = "@depict-ai/react-ui";
347
373
  (0, $TZSbU$dlog)($43099132aad1ceb6$var$package_name + " version", (0, $c9c4d066f9a5b51b$export$83d89fbfd8236492));
@@ -350,4 +376,4 @@ const $43099132aad1ceb6$var$package_name = "@depict-ai/react-ui";
350
376
  });
351
377
 
352
378
 
353
- export {$54b0d21b77e719c4$export$d2c02478244f91f7 as DepictSearchField, $faf794495ff8b304$export$9fac37a9c21c2f3b as DepictProvider, $f41a371216eff80b$export$a7f6cffb6b8ba11c as openModal, $f41a371216eff80b$export$cbcd1ecdb41b1d0a as DepictSearchHeader, $9f8d5ef3c016c493$export$210723f5a54a7028 as DepictSearchPage, $c95f83f01e99fc18$export$3f37af283f8fb843 as ImagePlaceholder, $8aa3ab31237c8dc9$export$89c6019e4baa40b1 as TextPlaceholder, $c9c4d066f9a5b51b$export$83d89fbfd8236492 as version};
379
+ export {$54b0d21b77e719c4$export$d2c02478244f91f7 as DepictSearchField, $faf794495ff8b304$export$9fac37a9c21c2f3b as DepictProvider, $f41a371216eff80b$export$a7f6cffb6b8ba11c as openModal, $f41a371216eff80b$export$cbcd1ecdb41b1d0a as DepictSearchHeader, $9f8d5ef3c016c493$export$210723f5a54a7028 as DepictSearchPage, $c95f83f01e99fc18$export$3f37af283f8fb843 as ImagePlaceholder, $8aa3ab31237c8dc9$export$89c6019e4baa40b1 as TextPlaceholder, $c9c4d066f9a5b51b$export$83d89fbfd8236492 as version, $97603d19204ec48d$export$b8a61e5c71402559 as Navigation};
@@ -1,4 +1,4 @@
1
- export const version = "0.0.44";
1
+ export const version = "0.0.46";
2
2
  export function DepictProvider(props: any): any;
3
3
  export function DepictSearchField(): any;
4
4
  export function DepictSearchPage(): any;
@@ -15,7 +15,7 @@ $parcel$export(module.exports, "openModal", () => $41e7e5d85b5e0d49$export$a7f6c
15
15
  $parcel$export(module.exports, "version", () => $db7b67857900028b$export$83d89fbfd8236492);
16
16
 
17
17
 
18
- const $db7b67857900028b$export$83d89fbfd8236492 = "0.0.44";
18
+ const $db7b67857900028b$export$83d89fbfd8236492 = "0.0.46";
19
19
 
20
20
 
21
21
  function $41e7e5d85b5e0d49$export$9fac37a9c21c2f3b(props) {
@@ -3,7 +3,7 @@ import {jsx as $1RlIW$jsx} from "react/jsx-runtime";
3
3
 
4
4
 
5
5
 
6
- const $c9c4d066f9a5b51b$export$83d89fbfd8236492 = "0.0.44";
6
+ const $c9c4d066f9a5b51b$export$83d89fbfd8236492 = "0.0.46";
7
7
 
8
8
 
9
9
  function $2b1fdeb83610500f$export$9fac37a9c21c2f3b(props) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@depict-ai/react-ui",
3
- "version": "0.0.44",
3
+ "version": "0.0.46",
4
4
  "packageManager": "yarn@3.2.2",
5
5
  "source": "src/index.ts",
6
6
  "main": "dist/main.js",
@@ -83,8 +83,8 @@
83
83
  "/dist-server"
84
84
  ],
85
85
  "dependencies": {
86
- "@depict-ai/ui": "^0.0.22",
87
- "@depict-ai/utilishared": "^0.0.20",
86
+ "@depict-ai/ui": "^0.0.24",
87
+ "@depict-ai/utilishared": "^0.0.22",
88
88
  "solid-js": "^1.6.2"
89
89
  },
90
90
  "peerDependencies": {
@@ -109,6 +109,7 @@
109
109
  "jest": "^29.3.1",
110
110
  "jest-haste-map": "^29.3.1",
111
111
  "jest-resolve": "^29.3.1",
112
+ "next": "^13.1.1",
112
113
  "parcel": "latest",
113
114
  "react": "^18.2.0",
114
115
  "react-dom": "^18.2.0",