@depict-ai/ui 4.7.33 → 4.7.34
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/ES10/index.cjs +1640 -1621
- package/ES10/index.d.ts +139 -128
- package/ES10/index.js +1867 -1849
- package/latest/index.cjs +1564 -1552
- package/latest/index.d.ts +139 -128
- package/latest/index.js +1805 -1794
- package/package.json +1 -1
- package/server/ES10/index.cjs +566 -547
- package/server/ES10/index.d.ts +139 -128
- package/server/ES10/index.js +752 -734
- package/server/latest/index.cjs +575 -563
- package/server/latest/index.d.ts +139 -128
- package/server/latest/index.js +736 -725
package/server/latest/index.d.ts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
+
import { JSX, Accessor, Setter, Signal } from "solid-js";
|
|
1
2
|
import { Display, ModernDisplay, report, Amazing_Slider, useExpandingContainer, ColsAtSize, Elem, Node_Array } from "@depict-ai/utilishared/latest";
|
|
2
3
|
import { ContentLink, SearchResponse, SearchFilter as _SearchFilter1 } from "@depict-ai/types/api/SearchResponse";
|
|
3
4
|
import { Ancestors, ListingSuggestion, SearchSuggestionsResponseV3 } from "@depict-ai/types/api/SearchSuggestionsResponseV3";
|
|
4
5
|
import { ProductListing, GetListingResponse, ContentBlock as _ContentBlock1 } from "@depict-ai/types/api/GetListingResponse";
|
|
5
|
-
import { JSX, Accessor, Setter, Signal } from "solid-js";
|
|
6
6
|
import { SearchFilter, SearchRequestV3, SortModel } from "@depict-ai/types/api/SearchRequestV3";
|
|
7
7
|
import { ProductListingResponseV3, SearchFilter as _SearchFilter2 } from "@depict-ai/types/api/ProductListingResponseV3";
|
|
8
8
|
import { SearchSuggestionsRequestV3 } from "@depict-ai/types/api/SearchSuggestionsRequestV3";
|
|
@@ -11,7 +11,142 @@ import { GetListingRequest } from "@depict-ai/types/api/GetListingRequest";
|
|
|
11
11
|
import { BaseSearchRequestV3 } from "@depict-ai/types/api/BaseSearchRequestV3";
|
|
12
12
|
import { FeaturedInDisplay } from "@depict-ai/types/api/FeaturedInResponseV3";
|
|
13
13
|
import { SearchFilter as _SearchFilter3 } from "@depict-ai/types/api/SearchRequestV2";
|
|
14
|
-
export const version = "4.7.
|
|
14
|
+
export const version = "4.7.34";
|
|
15
|
+
/**
|
|
16
|
+
* Provider to wrap every listing (group of products) in
|
|
17
|
+
* Used for example for deduplicating ResizeObservers for responsive images
|
|
18
|
+
*/
|
|
19
|
+
export function ListingProvider(props: {
|
|
20
|
+
children: JSX.Element;
|
|
21
|
+
}): JSX.Element;
|
|
22
|
+
/**
|
|
23
|
+
* Use this to get the context object if your component is within a ListingProvider
|
|
24
|
+
*/
|
|
25
|
+
export function useListing(): Record<symbol, any> | undefined;
|
|
26
|
+
/**
|
|
27
|
+
* ImageContainer for using the padding hack to set the aspect ratio of an image
|
|
28
|
+
* Put this around an <img> or <ResponsiveImg> to give it a container that always has the same size as the image. This prevents CLS and enables ResponsiveImg to work (the browser to load the correct image size)
|
|
29
|
+
* (Not using the CSS aspect-ratio property yet here due to browser support)
|
|
30
|
+
*/
|
|
31
|
+
export function ImageContainer(props: {
|
|
32
|
+
aspectRatio: number | string;
|
|
33
|
+
class?: string;
|
|
34
|
+
children?: JSX.Element;
|
|
35
|
+
}): HTMLDivElement;
|
|
36
|
+
/**
|
|
37
|
+
* Provider to wrap every product card that gets rendered in (in PLPResults rendering internals), enables using useProductCardIndex anywhere inside the product card to get the index of the product card.
|
|
38
|
+
*/
|
|
39
|
+
export function ProductCardIndexProvider(props: {
|
|
40
|
+
children: JSX.Element;
|
|
41
|
+
index_: Accessor<number>;
|
|
42
|
+
}): JSX.Element;
|
|
43
|
+
/**
|
|
44
|
+
* Use this to get an accessor containing the index of your product card.
|
|
45
|
+
*/
|
|
46
|
+
export function useProductCardIndex(): Accessor<number> | undefined;
|
|
47
|
+
/**
|
|
48
|
+
* Automatically generate a srcset from the shopify CDN for an image and set the sizes attribute to the provided accessor.
|
|
49
|
+
* Will also delay loading and decoding of image until the browser is idle (with 5s timeout) to improve filtering/loading more performance.
|
|
50
|
+
* If ran within Depict product card rendering, within one of the first 8 product cards, those images will be loaded immediately and loading="lazy" will be ignored for them (unless you set it to "force-lazy").
|
|
51
|
+
* This is used for our responsive images:
|
|
52
|
+
* 1. The image must have a container with a fixed size (or aspect ratio) that is independent of the image. When aspectRatio is configured on the depict-cards element as data attribute, we will wrap the image in a ImageContainer for this. If it's false, the user has to provide this container themselves.
|
|
53
|
+
* 2. We set a ResizeObserver on one of the currently visible images (see makeSizeAccessor)
|
|
54
|
+
* 3. We set the size attribute of all the visible images to the size of the container we're observing. The point of this is that the sizes attribute is used to determine which image to load, and usually it's set by the user and depends on the relationship between image size and viewport size. By using a ResizeObserver, we can make sure the sizes attribute is always set to the correct value without it having to be configured. This will make so the browser always loads the correct image size for a crisp image but still fast load.
|
|
55
|
+
* You need to use insert(domNode, <ShopifyResponsiveImg size={sizeAccessor} src={src} />) if you want to insert the return value of this component into a DOM element manually, where you `import { insert } from "solid-js/web";` because we first want to insert the image once it has loaded.
|
|
56
|
+
*/
|
|
57
|
+
export function ShopifyResponsiveImg(props: {
|
|
58
|
+
resolutions?: number[];
|
|
59
|
+
/**
|
|
60
|
+
* Width of the container, we'll load an image with that width
|
|
61
|
+
*/
|
|
62
|
+
size: Accessor<number>;
|
|
63
|
+
/**
|
|
64
|
+
* Height of the container, if set we will use this to still load sharp images even when object-fit is set to "cover", and the image is "zoomed" in on the x-axis.
|
|
65
|
+
*/
|
|
66
|
+
sizeHeight?: Accessor<number>;
|
|
67
|
+
src: string;
|
|
68
|
+
loading?: "eager" | "lazy" | "force-lazy";
|
|
69
|
+
customUrls?: (url: string, width: number) => string;
|
|
70
|
+
/**
|
|
71
|
+
* When `true`, data written for ShopifyContainedImage's `autoAdjustAspectRatio` feature will only be allowed to be written the load after the image src has changed. This is to make css transitions on images whose size is animated smoother (since aspect ratio changing minimally as size changes will cause the transition to restart)
|
|
72
|
+
*/
|
|
73
|
+
keyRatioUpdating?: boolean;
|
|
74
|
+
} & Omit<JSX.ImgHTMLAttributes<HTMLImageElement>, "srcset" | "src" | "sizes" | "loading">): JSX.Element;
|
|
75
|
+
/**
|
|
76
|
+
* Base placeholder component used by ImagePlaceholder and TextPlaceholder
|
|
77
|
+
*/
|
|
78
|
+
export function BasePlaceholder(props: {
|
|
79
|
+
style: JSX.CSSProperties;
|
|
80
|
+
class?: string;
|
|
81
|
+
}): JSX.Element;
|
|
82
|
+
type ImagePlaceholderBaseOptions = {
|
|
83
|
+
style?: JSX.CSSProperties;
|
|
84
|
+
class?: string;
|
|
85
|
+
};
|
|
86
|
+
type ImagePlaceholderBlockOptions = {
|
|
87
|
+
width: string;
|
|
88
|
+
height: string;
|
|
89
|
+
};
|
|
90
|
+
type ImagePlaceholderImageOptions = {
|
|
91
|
+
aspectRatio: number | string;
|
|
92
|
+
};
|
|
93
|
+
/**
|
|
94
|
+
* A placeholder that can be used instead of an image or other block of content while it's loading.
|
|
95
|
+
* The placeholder has `display:block`, meaning it will create a new "row" in the layout for itself. Can be used either for images with a defined aspect ratio (ContainedImage) or blocks.
|
|
96
|
+
* @property aspectRatio if aspectRatio is defined the placeholder will be in "image mode" and fill out the available width and then adjust the height according to the aspectRatio
|
|
97
|
+
* @property width If width and height is set, the defined width and height will be used.
|
|
98
|
+
* @property height If width and height is set, the defined width and height will be used.
|
|
99
|
+
* @property class extra classes to add to the placeholder
|
|
100
|
+
* @property style extra styles to add to the placeholder
|
|
101
|
+
*/
|
|
102
|
+
export function ImagePlaceholder(props: ImagePlaceholderBaseOptions & (ImagePlaceholderBlockOptions | ImagePlaceholderImageOptions)): JSX.Element;
|
|
103
|
+
/**
|
|
104
|
+
* A Placeholder to use instead of some text, while it's loading. This is the inline version, meant to be embedded into sentences (or exist instead of them), etc.
|
|
105
|
+
* If you want a block version, use `ImagePlaceholder` with `width`and `height` set instead.
|
|
106
|
+
* @property height height of the placeholder. Set to `1em` by default.
|
|
107
|
+
* @property width width of the placeholder. For specific number of characters use `ch`, ex: `width="7ch"`
|
|
108
|
+
* @property class extra classes to add to the placeholder
|
|
109
|
+
* @property style extra styles to add to the placeholder
|
|
110
|
+
*/
|
|
111
|
+
export function TextPlaceholder(props: {
|
|
112
|
+
style?: JSX.CSSProperties;
|
|
113
|
+
height: string;
|
|
114
|
+
width: string;
|
|
115
|
+
class?: string;
|
|
116
|
+
}): JSX.Element;
|
|
117
|
+
export function DefaultInstantCardPlaceholder(): HTMLDivElement;
|
|
118
|
+
/**
|
|
119
|
+
* Returns two accessors (one width and one height) that will update when the size of the provided element changes, to be used with ResponsiveImg
|
|
120
|
+
*/
|
|
121
|
+
export function makeSizeAccessors(whatToWatch: HTMLElement): [Accessor<number>, Accessor<number>];
|
|
122
|
+
export const shopifyContainedImageContextSymbol: unique symbol;
|
|
123
|
+
/**
|
|
124
|
+
* Abstraction built on top of ShopifyResponsiveImg. This is your one-stop-shop If you just need a responsive image.
|
|
125
|
+
* Will return a div of the provided aspect ratio that always has the same size, to avoid content layout shift. Will then put the image inside of the container once it loads.
|
|
126
|
+
* Also makes a responsive image without you having to do anything: uses shopify's CDN which picks the best image format to resize the image to the size of the first image container in a certain listing.
|
|
127
|
+
* This works because the listings (recs, search, plp) all are wrapped in `<ListingProvider>`'s. This means all components rendered within can use `useListing` to get an object to write data to that will be the same for all components rendered within that listing. The first instance of this component rendered within a listing puts a ResizeObserver on its div and the other components then just set the sizes attribute of their image to that.
|
|
128
|
+
* @property src image source
|
|
129
|
+
* @property aspectRatio aspect ratio of the image
|
|
130
|
+
* @property class extra class to add to the container
|
|
131
|
+
* @property alt alt text for the image
|
|
132
|
+
* @property autoAdjustAspectRatio whether to automatically adjust the aspect ratio of the image to the majority of the aspect ratios of loaded images in the current listing provider. Defaults to false. Can be overriden with css variable --image-aspect-ratio.
|
|
133
|
+
* @property imgProps props to pass to ShopifyResponsiveImg to add to the <img> element
|
|
134
|
+
*/
|
|
135
|
+
export function ShopifyContainedImage(props: {
|
|
136
|
+
src: string;
|
|
137
|
+
aspectRatio: number | string;
|
|
138
|
+
autoAdjustAspectRatio?: boolean;
|
|
139
|
+
class?: string;
|
|
140
|
+
imgProps?: Omit<Parameters<typeof ShopifyResponsiveImg>[0], "size" | "src">;
|
|
141
|
+
}): HTMLDivElement;
|
|
142
|
+
/**
|
|
143
|
+
* Hacks ShopifyContainedImage work even for non-shopify image urls by forcing the format to be WebP
|
|
144
|
+
*/
|
|
145
|
+
export function ModernResponsiveContainedImage(props: Parameters<typeof ShopifyContainedImage>[0]): import("solid-js").JSX.Element;
|
|
146
|
+
/**
|
|
147
|
+
* Wrapper around ShopifyResponsiveImg (component that just does an image, without wrapping in div). The wrapper allows ShopifyResponsiveImg to work both with shopify CDN URLs and arbitrary URLs, where the latter will be fed through Depict's cloudflare resizer.
|
|
148
|
+
*/
|
|
149
|
+
export function ModernResponsiveImage(props: Parameters<typeof ShopifyResponsiveImg>[0]): import("solid-js").JSX.Element;
|
|
15
150
|
type DisplayTransformerAlwaysThereData = {
|
|
16
151
|
merchant: string;
|
|
17
152
|
market: string;
|
|
@@ -88,34 +223,6 @@ export function SentryErrorBoundary(props: {
|
|
|
88
223
|
on_error_?: (retry: VoidFunction) => JSX.Element | void;
|
|
89
224
|
class_list_?: string[];
|
|
90
225
|
}): JSX.Element;
|
|
91
|
-
/**
|
|
92
|
-
* Base placeholder component used by ImagePlaceholder and TextPlaceholder
|
|
93
|
-
*/
|
|
94
|
-
export function BasePlaceholder(props: {
|
|
95
|
-
style: JSX.CSSProperties;
|
|
96
|
-
class?: string;
|
|
97
|
-
}): JSX.Element;
|
|
98
|
-
type ImagePlaceholderBaseOptions = {
|
|
99
|
-
style?: JSX.CSSProperties;
|
|
100
|
-
class?: string;
|
|
101
|
-
};
|
|
102
|
-
type ImagePlaceholderBlockOptions = {
|
|
103
|
-
width: string;
|
|
104
|
-
height: string;
|
|
105
|
-
};
|
|
106
|
-
type ImagePlaceholderImageOptions = {
|
|
107
|
-
aspectRatio: number | string;
|
|
108
|
-
};
|
|
109
|
-
/**
|
|
110
|
-
* A placeholder that can be used instead of an image or other block of content while it's loading.
|
|
111
|
-
* The placeholder has `display:block`, meaning it will create a new "row" in the layout for itself. Can be used either for images with a defined aspect ratio (ContainedImage) or blocks.
|
|
112
|
-
* @property aspectRatio if aspectRatio is defined the placeholder will be in "image mode" and fill out the available width and then adjust the height according to the aspectRatio
|
|
113
|
-
* @property width If width and height is set, the defined width and height will be used.
|
|
114
|
-
* @property height If width and height is set, the defined width and height will be used.
|
|
115
|
-
* @property class extra classes to add to the placeholder
|
|
116
|
-
* @property style extra styles to add to the placeholder
|
|
117
|
-
*/
|
|
118
|
-
export function ImagePlaceholder(props: ImagePlaceholderBaseOptions & (ImagePlaceholderBlockOptions | ImagePlaceholderImageOptions)): JSX.Element;
|
|
119
226
|
/**
|
|
120
227
|
* The interface for a content block.
|
|
121
228
|
* Please make sure that you don't have content blocks overlap as that will cause undefined behavior.
|
|
@@ -222,17 +329,6 @@ type AddActualFieldToArray<T> = T extends Array<infer U> ? (U & {
|
|
|
222
329
|
actual_field?: string;
|
|
223
330
|
})[] : never;
|
|
224
331
|
type AddActualFieldToFilters<T extends SearchFilter[] | undefined> = T extends undefined ? undefined : AddActualFieldToArray<T>;
|
|
225
|
-
/**
|
|
226
|
-
* Provider to wrap every product card that gets rendered in (in PLPResults rendering internals), enables using useProductCardIndex anywhere inside the product card to get the index of the product card.
|
|
227
|
-
*/
|
|
228
|
-
export function ProductCardIndexProvider(props: {
|
|
229
|
-
children: JSX.Element;
|
|
230
|
-
index_: Accessor<number>;
|
|
231
|
-
}): JSX.Element;
|
|
232
|
-
/**
|
|
233
|
-
* Use this to get an accessor containing the index of your product card.
|
|
234
|
-
*/
|
|
235
|
-
export function useProductCardIndex(): Accessor<number> | undefined;
|
|
236
332
|
/**
|
|
237
333
|
* This is a function that will safely clone an object that may contain promises.
|
|
238
334
|
* It will use structuredClone to clone the object and then re-apply (copy) any promises that were in the original object to the cloned object.
|
|
@@ -298,91 +394,6 @@ export function SolidLayout(props: SolidLayoutOptions): JSX.Element;
|
|
|
298
394
|
* When using insert_after_container, view more and view less buttons are not currently supported.
|
|
299
395
|
*/
|
|
300
396
|
export function SolidLayoutWithProvidedElement(props: Omit<SolidLayoutOptions, "children" | "element_attributes">, container_element: HTMLDivElement, insert_after_container?: boolean, container_class?: string): JSX.Element;
|
|
301
|
-
/**
|
|
302
|
-
* Provider to wrap every listing (group of products) in
|
|
303
|
-
* Used for example for deduplicating ResizeObservers for responsive images
|
|
304
|
-
*/
|
|
305
|
-
export function ListingProvider(props: {
|
|
306
|
-
children: JSX.Element;
|
|
307
|
-
}): JSX.Element;
|
|
308
|
-
/**
|
|
309
|
-
* Use this to get the context object if your component is within a ListingProvider
|
|
310
|
-
*/
|
|
311
|
-
export function useListing(): Record<symbol, any> | undefined;
|
|
312
|
-
/**
|
|
313
|
-
* A Placeholder to use instead of some text, while it's loading. This is the inline version, meant to be embedded into sentences (or exist instead of them), etc.
|
|
314
|
-
* If you want a block version, use `ImagePlaceholder` with `width`and `height` set instead.
|
|
315
|
-
* @property height height of the placeholder. Set to `1em` by default.
|
|
316
|
-
* @property width width of the placeholder. For specific number of characters use `ch`, ex: `width="7ch"`
|
|
317
|
-
* @property class extra classes to add to the placeholder
|
|
318
|
-
* @property style extra styles to add to the placeholder
|
|
319
|
-
*/
|
|
320
|
-
export function TextPlaceholder(props: {
|
|
321
|
-
style?: JSX.CSSProperties;
|
|
322
|
-
height: string;
|
|
323
|
-
width: string;
|
|
324
|
-
class?: string;
|
|
325
|
-
}): JSX.Element;
|
|
326
|
-
export function DefaultInstantCardPlaceholder(): HTMLDivElement;
|
|
327
|
-
/**
|
|
328
|
-
* ImageContainer for using the padding hack to set the aspect ratio of an image
|
|
329
|
-
* Put this around an <img> or <ResponsiveImg> to give it a container that always has the same size as the image. This prevents CLS and enables ResponsiveImg to work (the browser to load the correct image size)
|
|
330
|
-
* (Not using the CSS aspect-ratio property yet here due to browser support)
|
|
331
|
-
*/
|
|
332
|
-
export function ImageContainer(props: {
|
|
333
|
-
aspectRatio: number | string;
|
|
334
|
-
class?: string;
|
|
335
|
-
children?: JSX.Element;
|
|
336
|
-
}): HTMLDivElement;
|
|
337
|
-
/**
|
|
338
|
-
* Returns an accessor that will update when the size of the provided element changes, to be used with ResponsiveImg
|
|
339
|
-
*/
|
|
340
|
-
export function makeSizeAccessor(whatToWatch: HTMLElement): Accessor<number>;
|
|
341
|
-
/**
|
|
342
|
-
* Automatically generate a srcset from the shopify CDN for an image and set the sizes attribute to the provided accessor.
|
|
343
|
-
* Will also delay loading and decoding of image until the browser is idle (with 5s timeout) to improve filtering/loading more performance.
|
|
344
|
-
* If ran within Depict product card rendering, within one of the first 8 product cards, those images will be loaded immediately and loading="lazy" will be ignored for them (unless you set it to "force-lazy").
|
|
345
|
-
* This is used for our responsive images:
|
|
346
|
-
* 1. The image must have a container with a fixed size (or aspect ratio) that is independent of the image. When aspectRatio is configured on the depict-cards element as data attribute, we will wrap the image in a ImageContainer for this. If it's false, the user has to provide this container themselves.
|
|
347
|
-
* 2. We set a ResizeObserver on one of the currently visible images (see makeSizeAccessor)
|
|
348
|
-
* 3. We set the size attribute of all the visible images to the size of the container we're observing. The point of this is that the sizes attribute is used to determine which image to load, and usually it's set by the user and depends on the relationship between image size and viewport size. By using a ResizeObserver, we can make sure the sizes attribute is always set to the correct value without it having to be configured. This will make so the browser always loads the correct image size for a crisp image but still fast load.
|
|
349
|
-
* You need to use insert(domNode, <ShopifyResponsiveImg size={sizeAccessor} src={src} />) if you want to insert the return value of this component into a DOM element manually, where you `import { insert } from "solid-js/web";` because we first want to insert the image once it has loaded.
|
|
350
|
-
*/
|
|
351
|
-
export function ShopifyResponsiveImg(props: {
|
|
352
|
-
resolutions?: number[];
|
|
353
|
-
size: Accessor<number>;
|
|
354
|
-
src: string;
|
|
355
|
-
loading?: "eager" | "lazy" | "force-lazy";
|
|
356
|
-
customUrls?: (url: string, width: number) => string;
|
|
357
|
-
/**
|
|
358
|
-
* When `true`, data written for ShopifyContainedImage's `autoAdjustAspectRatio` feature will only be allowed to be written the load after the image src has changed. This is to make css transitions on images whose size is animated smoother (since aspect ratio changing minimally as size changes will cause the transition to restart)
|
|
359
|
-
*/
|
|
360
|
-
keyRatioUpdating?: boolean;
|
|
361
|
-
} & Omit<JSX.ImgHTMLAttributes<HTMLImageElement>, "srcset" | "src" | "sizes" | "loading">): JSX.Element;
|
|
362
|
-
export const shopifyContainedImageContextSymbol: unique symbol;
|
|
363
|
-
/**
|
|
364
|
-
* Abstraction built on top of ShopifyResponsiveImg. This is your one-stop-shop If you just need a responsive image.
|
|
365
|
-
* Will return a div of the provided aspect ratio that always has the same size, to avoid content layout shift. Will then put the image inside of the container once it loads.
|
|
366
|
-
* Also makes a responsive image without you having to do anything: uses shopify's CDN which picks the best image format to resize the image to the size of the first image container in a certain listing.
|
|
367
|
-
* This works because the listings (recs, search, plp) all are wrapped in `<ListingProvider>`'s. This means all components rendered within can use `useListing` to get an object to write data to that will be the same for all components rendered within that listing. The first instance of this component rendered within a listing puts a ResizeObserver on its div and the other components then just set the sizes attribute of their image to that.
|
|
368
|
-
* @property src image source
|
|
369
|
-
* @property aspectRatio aspect ratio of the image
|
|
370
|
-
* @property class extra class to add to the container
|
|
371
|
-
* @property alt alt text for the image
|
|
372
|
-
* @property autoAdjustAspectRatio whether to automatically adjust the aspect ratio of the image to the majority of the aspect ratios of loaded images in the current listing provider. Defaults to false. Can be overriden with css variable --image-aspect-ratio.
|
|
373
|
-
* @property imgProps props to pass to ShopifyResponsiveImg to add to the <img> element
|
|
374
|
-
*/
|
|
375
|
-
export function ShopifyContainedImage(props: {
|
|
376
|
-
src: string;
|
|
377
|
-
aspectRatio: number | string;
|
|
378
|
-
autoAdjustAspectRatio?: boolean;
|
|
379
|
-
class?: string;
|
|
380
|
-
imgProps?: Omit<Parameters<typeof ShopifyResponsiveImg>[0], "size" | "src">;
|
|
381
|
-
}): HTMLDivElement;
|
|
382
|
-
/**
|
|
383
|
-
* Hacks ShopifyContainedImage work even for non-shopify image urls by forcing the format to be WebP
|
|
384
|
-
*/
|
|
385
|
-
export function ModernResponsiveContainedImage(props: Parameters<typeof ShopifyContainedImage>[0]): import("solid-js").JSX.Element;
|
|
386
397
|
/**
|
|
387
398
|
* PLP internationalisation shared between search and category listing
|
|
388
399
|
*/
|
|
@@ -1491,7 +1502,7 @@ type OpenModalParams<OriginalDisplay extends Display, OutputDisplay extends Mode
|
|
|
1491
1502
|
* Open the modal with support for alignment.
|
|
1492
1503
|
* @returns {void}
|
|
1493
1504
|
*/
|
|
1494
|
-
export const open_modal_with_alignment: <OriginalDisplay extends Display, OutputDisplay extends
|
|
1505
|
+
export const open_modal_with_alignment: <OriginalDisplay extends Display, OutputDisplay extends unknown>(openModalParams: OpenModalParams<OriginalDisplay, OutputDisplay>) => void;
|
|
1495
1506
|
export function open_search_with_shift_slash(open_search: VoidFunction): () => void;
|
|
1496
1507
|
export interface PageReplacer {
|
|
1497
1508
|
readonly render_: () => Node_Array;
|
|
@@ -1570,5 +1581,5 @@ export function CategoryPage<OriginalDisplay extends Display, OutputDisplay exte
|
|
|
1570
1581
|
content_blocks_by_row?: ContentBlocksByRow;
|
|
1571
1582
|
layout?: PossibleLayout;
|
|
1572
1583
|
filterModalParent_?: HTMLElement | ShadowRoot;
|
|
1573
|
-
}): import("@depict-ai/utilishared
|
|
1584
|
+
}): import("@depict-ai/utilishared").Node_Array;
|
|
1574
1585
|
export type { SearchFilter } from "@depict-ai/types/api/SearchRequestV3";
|