@yoamigo.com/core 1.0.0 → 1.1.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/{api-client-D8FkeBAI.d.ts → api-client-BaZ_K5a6.d.ts} +0 -8
- package/dist/{content-helpers-DOUKazMz.d.ts → icon-metadata-CVUpe16i.d.ts} +209 -4
- package/dist/index.d.ts +70 -2
- package/dist/index.js +2032 -342
- package/dist/lib-prod.d.ts +1 -1
- package/dist/lib.d.ts +1 -1
- package/dist/lib.js +63 -0
- package/dist/plugin.js +3 -2
- package/dist/prod.d.ts +34 -3
- package/dist/prod.js +319 -55
- package/package.json +9 -2
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
-
import React$1, { ReactNode, CSSProperties } from 'react';
|
|
2
|
+
import React$1, { ReactNode, CSSProperties, ComponentType } from 'react';
|
|
3
|
+
import { IconProps } from '@tabler/icons-react';
|
|
3
4
|
|
|
4
5
|
type EditMode = 'read-only' | 'inline-edit';
|
|
5
6
|
interface ContentStore {
|
|
@@ -159,11 +160,23 @@ interface YaLinkProps {
|
|
|
159
160
|
/** Available pages for href dropdown (injected by template) */
|
|
160
161
|
availablePages?: PageInfo[];
|
|
161
162
|
/** Optional click handler called after navigation */
|
|
162
|
-
onClick?: () => void;
|
|
163
|
+
onClick?: (e?: React$1.MouseEvent) => void;
|
|
163
164
|
/** Target attribute for the link (e.g., "_blank" to open in new tab) */
|
|
164
165
|
target?: string;
|
|
165
166
|
/** Rel attribute for the link (e.g., "noopener noreferrer" for security) */
|
|
166
167
|
rel?: string;
|
|
168
|
+
/** Title attribute for accessibility (tooltip on hover) */
|
|
169
|
+
title?: string;
|
|
170
|
+
/**
|
|
171
|
+
* Icon position relative to text. Uses fieldId.icon for icon name.
|
|
172
|
+
* - 'left': Icon before text (e.g., "🐦 Follow us")
|
|
173
|
+
* - 'right': Icon after text (e.g., "Learn more →")
|
|
174
|
+
* - 'only': Icon only, no text (e.g., social media buttons)
|
|
175
|
+
* - undefined: No icon, text only (default)
|
|
176
|
+
*/
|
|
177
|
+
iconPosition?: 'left' | 'right' | 'only';
|
|
178
|
+
/** Icon size in pixels (default: 20 for left/right, 24 for only) */
|
|
179
|
+
iconSize?: number;
|
|
167
180
|
}
|
|
168
181
|
declare module '@tiptap/core' {
|
|
169
182
|
interface Commands<ReturnType> {
|
|
@@ -177,7 +190,7 @@ declare module '@tiptap/core' {
|
|
|
177
190
|
};
|
|
178
191
|
}
|
|
179
192
|
}
|
|
180
|
-
declare function YaLink({ fieldId, href: defaultHref, className, wrapperClassName, style, as: Component, children, availablePages, onClick, target, rel }: YaLinkProps): react_jsx_runtime.JSX.Element;
|
|
193
|
+
declare function YaLink({ fieldId, href: defaultHref, className, wrapperClassName, style, as: Component, children, availablePages, onClick, target, rel, title, iconPosition, iconSize }: YaLinkProps): react_jsx_runtime.JSX.Element;
|
|
181
194
|
|
|
182
195
|
interface BackgroundImageConfig {
|
|
183
196
|
src: string;
|
|
@@ -374,5 +387,197 @@ declare function video(config: VideoFieldValue): string;
|
|
|
374
387
|
* embed({ type: "soundcloud", src: "user/track" })
|
|
375
388
|
*/
|
|
376
389
|
declare function embed(config: EmbedFieldValue): string;
|
|
390
|
+
/**
|
|
391
|
+
* Link field value for YaLink components (href only).
|
|
392
|
+
*
|
|
393
|
+
* YaLink uses compound fields: fieldId.text and fieldId.href
|
|
394
|
+
* Use this helper for the href value. The text is stored separately.
|
|
395
|
+
*
|
|
396
|
+
* @example
|
|
397
|
+
* // In content.ts:
|
|
398
|
+
* "hero.listenButton.href": link("#player"),
|
|
399
|
+
* "hero.listenButton.text": text("Listen to Preview"),
|
|
400
|
+
*
|
|
401
|
+
* // Or for external links:
|
|
402
|
+
* "footer.twitterLink.href": link("https://twitter.com/username"),
|
|
403
|
+
*/
|
|
404
|
+
declare function link(href: string): string;
|
|
405
|
+
|
|
406
|
+
/**
|
|
407
|
+
* DynamicIcon Component - Render icons by name with lazy loading
|
|
408
|
+
*
|
|
409
|
+
* This component loads Tabler icons dynamically to enable tree-shaking.
|
|
410
|
+
* Icons are loaded on-demand and cached for subsequent renders.
|
|
411
|
+
*
|
|
412
|
+
* @example
|
|
413
|
+
* ```tsx
|
|
414
|
+
* // Basic usage
|
|
415
|
+
* <DynamicIcon name="IconBrandTwitter" size={24} />
|
|
416
|
+
*
|
|
417
|
+
* // With custom styling
|
|
418
|
+
* <DynamicIcon name="IconHeart" size={20} color="red" stroke={1.5} />
|
|
419
|
+
*
|
|
420
|
+
* // With fallback while loading
|
|
421
|
+
* <DynamicIcon name="IconUser" size={24} fallback={<Spinner />} />
|
|
422
|
+
* ```
|
|
423
|
+
*/
|
|
424
|
+
|
|
425
|
+
interface DynamicIconProps extends Omit<IconProps, 'ref'> {
|
|
426
|
+
/** Name of the Tabler icon (e.g., "IconBrandTwitter", "IconHeart") */
|
|
427
|
+
name: string;
|
|
428
|
+
/** Optional fallback element to show while loading */
|
|
429
|
+
fallback?: React$1.ReactNode;
|
|
430
|
+
/** Additional class name for the icon wrapper */
|
|
431
|
+
className?: string;
|
|
432
|
+
}
|
|
433
|
+
/**
|
|
434
|
+
* Renders a Tabler icon by name with lazy loading.
|
|
435
|
+
*
|
|
436
|
+
* The component first checks the cache for an already-loaded icon.
|
|
437
|
+
* If not found, it dynamically imports the icon and caches it.
|
|
438
|
+
*
|
|
439
|
+
* For production builds where specific icons are known ahead of time,
|
|
440
|
+
* consider pre-registering icons with `registerIcon()` for faster initial render.
|
|
441
|
+
*/
|
|
442
|
+
declare function DynamicIconComponent({ name, fallback, className, size, stroke, ...props }: DynamicIconProps): React$1.ReactElement | null;
|
|
443
|
+
/**
|
|
444
|
+
* Memoized DynamicIcon to prevent unnecessary re-renders.
|
|
445
|
+
* Re-renders only when name or size/stroke props change.
|
|
446
|
+
*/
|
|
447
|
+
declare const DynamicIcon: React$1.MemoExoticComponent<typeof DynamicIconComponent>;
|
|
448
|
+
|
|
449
|
+
/**
|
|
450
|
+
* Icon Registry - Dynamic import system with caching
|
|
451
|
+
*
|
|
452
|
+
* This module provides tree-shakeable icon loading:
|
|
453
|
+
* - Pre-register icons for faster initial render (sync)
|
|
454
|
+
* - Dynamic import for lazy loading (async)
|
|
455
|
+
* - LRU-like cache to prevent memory bloat
|
|
456
|
+
*/
|
|
457
|
+
|
|
458
|
+
type IconComponent = ComponentType<IconProps>;
|
|
459
|
+
type IconLoader = () => Promise<{
|
|
460
|
+
default: IconComponent;
|
|
461
|
+
}>;
|
|
462
|
+
/**
|
|
463
|
+
* Pre-register an icon with a custom loader.
|
|
464
|
+
* Use this for icons that should be available immediately (e.g., commonly used icons).
|
|
465
|
+
*
|
|
466
|
+
* @example
|
|
467
|
+
* ```ts
|
|
468
|
+
* // Pre-register for faster loading
|
|
469
|
+
* registerIcon('IconBrandTwitter', () => import('@tabler/icons-react').then(m => ({ default: m.IconBrandTwitter })))
|
|
470
|
+
* ```
|
|
471
|
+
*/
|
|
472
|
+
declare function registerIcon(name: string, loader: IconLoader): void;
|
|
473
|
+
/**
|
|
474
|
+
* Pre-register multiple icons at once.
|
|
475
|
+
*
|
|
476
|
+
* @example
|
|
477
|
+
* ```ts
|
|
478
|
+
* registerIcons({
|
|
479
|
+
* IconBrandTwitter: () => import('@tabler/icons-react').then(m => ({ default: m.IconBrandTwitter })),
|
|
480
|
+
* IconBrandFacebook: () => import('@tabler/icons-react').then(m => ({ default: m.IconBrandFacebook })),
|
|
481
|
+
* })
|
|
482
|
+
* ```
|
|
483
|
+
*/
|
|
484
|
+
declare function registerIcons(loaders: Record<string, IconLoader>): void;
|
|
485
|
+
/**
|
|
486
|
+
* Get a cached icon component synchronously.
|
|
487
|
+
* Returns null if the icon hasn't been loaded yet.
|
|
488
|
+
*
|
|
489
|
+
* @example
|
|
490
|
+
* ```ts
|
|
491
|
+
* const Icon = getIcon('IconBrandTwitter')
|
|
492
|
+
* if (Icon) {
|
|
493
|
+
* return <Icon size={24} />
|
|
494
|
+
* }
|
|
495
|
+
* ```
|
|
496
|
+
*/
|
|
497
|
+
declare function getIcon(name: string): IconComponent | null;
|
|
498
|
+
/**
|
|
499
|
+
* Load an icon dynamically with caching.
|
|
500
|
+
* Uses pre-registered loader if available, otherwise falls back to dynamic import.
|
|
501
|
+
*
|
|
502
|
+
* @example
|
|
503
|
+
* ```ts
|
|
504
|
+
* const Icon = await loadIcon('IconBrandTwitter')
|
|
505
|
+
* if (Icon) {
|
|
506
|
+
* return <Icon size={24} />
|
|
507
|
+
* }
|
|
508
|
+
* ```
|
|
509
|
+
*/
|
|
510
|
+
declare function loadIcon(name: string): Promise<IconComponent | null>;
|
|
511
|
+
/**
|
|
512
|
+
* Preload multiple icons in parallel.
|
|
513
|
+
* Useful for preloading icons that will be used soon.
|
|
514
|
+
*
|
|
515
|
+
* @example
|
|
516
|
+
* ```ts
|
|
517
|
+
* // Preload social icons before they're needed
|
|
518
|
+
* await preloadIcons(['IconBrandTwitter', 'IconBrandFacebook', 'IconBrandInstagram'])
|
|
519
|
+
* ```
|
|
520
|
+
*/
|
|
521
|
+
declare function preloadIcons(names: string[]): Promise<void>;
|
|
522
|
+
/**
|
|
523
|
+
* Check if an icon is loaded and cached.
|
|
524
|
+
*/
|
|
525
|
+
declare function isIconLoaded(name: string): boolean;
|
|
526
|
+
|
|
527
|
+
/**
|
|
528
|
+
* Icon Metadata - Curated list of commonly used icons
|
|
529
|
+
*
|
|
530
|
+
* This file contains ONLY metadata (strings) for search/filtering.
|
|
531
|
+
* Actual icon components are loaded dynamically via icon-registry.ts
|
|
532
|
+
*
|
|
533
|
+
* Categories:
|
|
534
|
+
* - brand: Social media and brand logos
|
|
535
|
+
* - communication: Email, phone, chat
|
|
536
|
+
* - media: Play, pause, volume, music
|
|
537
|
+
* - navigation: Arrows, menu, home
|
|
538
|
+
* - commerce: Cart, payment, shipping
|
|
539
|
+
* - ui: Common UI elements
|
|
540
|
+
* - files: Documents, folders
|
|
541
|
+
* - weather: Weather icons
|
|
542
|
+
* - misc: Miscellaneous useful icons
|
|
543
|
+
*
|
|
544
|
+
* Search Features:
|
|
545
|
+
* - Keyword matching (exact substring)
|
|
546
|
+
* - Alias matching (common abbreviations, rebrands)
|
|
547
|
+
* - Fuzzy matching (typo tolerance via Levenshtein distance)
|
|
548
|
+
*/
|
|
549
|
+
type IconCategory = 'brand' | 'communication' | 'media' | 'navigation' | 'commerce' | 'ui' | 'files' | 'weather' | 'misc';
|
|
550
|
+
interface IconMeta {
|
|
551
|
+
name: string;
|
|
552
|
+
category: IconCategory;
|
|
553
|
+
keywords: string[];
|
|
554
|
+
}
|
|
555
|
+
/**
|
|
556
|
+
* Curated list of ~150 commonly used icons
|
|
557
|
+
* These cover most website builder use cases
|
|
558
|
+
*/
|
|
559
|
+
declare const ICON_METADATA: IconMeta[];
|
|
560
|
+
/**
|
|
561
|
+
* Category display names for the icon picker UI
|
|
562
|
+
*/
|
|
563
|
+
declare const ICON_CATEGORIES: Record<IconCategory, string>;
|
|
564
|
+
/**
|
|
565
|
+
* Get icons by category
|
|
566
|
+
*/
|
|
567
|
+
declare function getIconsByCategory(category: IconCategory): IconMeta[];
|
|
568
|
+
/**
|
|
569
|
+
* Search icons by keyword, alias, or fuzzy name match
|
|
570
|
+
*/
|
|
571
|
+
declare function searchIcons(query: string): IconMeta[];
|
|
572
|
+
/**
|
|
573
|
+
* Get icon metadata by name
|
|
574
|
+
*/
|
|
575
|
+
declare function getIconMeta(name: string): IconMeta | undefined;
|
|
576
|
+
/**
|
|
577
|
+
* Get human-readable label from icon name
|
|
578
|
+
* e.g., "IconBrandTwitter" -> "Twitter"
|
|
579
|
+
* e.g., "IconShoppingCart" -> "Shopping Cart"
|
|
580
|
+
*/
|
|
581
|
+
declare function getIconLabel(name: string): string;
|
|
377
582
|
|
|
378
|
-
export { serializeBackgroundConfig as A, type
|
|
583
|
+
export { serializeBackgroundConfig as $, getIconMeta as A, type IconCategory as B, ContentStoreProvider as C, DynamicIcon as D, type EditMode as E, type IconMeta as F, serializeImageValue as G, type YaImageProps as H, type IconComponent as I, type ImageFieldValue as J, YaVideo as K, serializeVideoValue as L, MpText as M, type YaVideoProps as N, YaEmbed as O, type PageInfo as P, serializeEmbedValue as Q, type YaEmbedProps as R, type StaticTextProps as S, type EmbedFieldValue as T, type EmbedType as U, type VideoFieldValue as V, YaLink as W, type YaLinkProps as X, YaImage as Y, YaContainer as Z, parseBackgroundConfig as _, type DynamicIconProps as a, type YaContainerProps as a0, type BackgroundConfig as a1, type BackgroundImageConfig as a2, type OverlayConfig as a3, background as b, registerIcons as c, loadIcon as d, embed as e, isIconLoaded as f, getIcon as g, type IconLoader as h, image as i, getIconLabel as j, type ContentStore as k, link as l, MpImage as m, type StaticImageProps as n, MarkdownText as o, preloadIcons as p, type MarkdownTextProps as q, registerIcon as r, parseEmbedUrl as s, text as t, useContentStore as u, video as v, ICON_METADATA as w, ICON_CATEGORIES as x, getIconsByCategory as y, searchIcons as z };
|
package/dist/index.d.ts
CHANGED
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
import { C as ChangeSource, Q as QueryFilter, b as CollectionRecord, o as CartItem, E as EditMode } from './cart-storage-DFdGPcwm.js';
|
|
2
2
|
export { a as CollectionClient, d as CollectionClientConfig, t as ContentStoreContextType, v as ContentStoreMode, p as ContentStoreProvider, L as ListOptions, c as ListResponse, S as SingleResponse, f as clearSessionId, g as getCollectionClient, n as getLocalCartItemCount, k as getLocalCartItems, e as getSessionId, i as initBuilderSelection, r as resetCollectionClient, q as useContentStore } from './cart-storage-DFdGPcwm.js';
|
|
3
|
-
export {
|
|
3
|
+
export { a1 as BackgroundConfig, a2 as BackgroundImageConfig, C as ContentStoreProviderProd, D as DynamicIcon, a as DynamicIconProps, T as EmbedFieldValue, U as EmbedType, x as ICON_CATEGORIES, w as ICON_METADATA, B as IconCategory, I as IconComponent, h as IconLoader, F as IconMeta, J as ImageFieldValue, o as MarkdownText, q as MarkdownTextProps, a3 as OverlayConfig, P as PageInfo, m as StaticImage, n as StaticImageProps, M as StaticText, S as StaticTextProps, V as VideoFieldValue, Z as YaContainer, a0 as YaContainerProps, O as YaEmbed, R as YaEmbedProps, Y as YaImage, H as YaImageProps, W as YaLink, X as YaLinkProps, K as YaVideo, N as YaVideoProps, b as background, e as embed, g as getIcon, j as getIconLabel, A as getIconMeta, y as getIconsByCategory, i as image, f as isIconLoaded, l as link, d as loadIcon, _ as parseBackgroundConfig, s as parseEmbedUrl, p as preloadIcons, r as registerIcon, c as registerIcons, z as searchIcons, $ as serializeBackgroundConfig, Q as serializeEmbedValue, G as serializeImageValue, L as serializeVideoValue, t as text, u as useContentStoreProd, v as video } from './icon-metadata-CVUpe16i.js';
|
|
4
4
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
5
5
|
import React$1, { ReactNode } from 'react';
|
|
6
6
|
export { Link, LinkProps, NavigateFunction, RouteDefinition, Router, RouterProps, ScrollRestoration, createRouteDefinition, extractRouteParams, filePathToRoutePath, generatePath, sortRoutesBySpecificity, useNavigate } from './router.js';
|
|
7
7
|
export { Route, Switch, useLocation, useParams } from 'wouter';
|
|
8
8
|
export { A as AssetResolverFn, C as ContentRegistry, c as contentRegistry, a as getAllContent, g as getContent, h as hasContent, r as registerContent, b as resolveAssetUrl, s as setAssetResolver } from './asset-resolver-BnIvDkVv.js';
|
|
9
|
+
import '@tabler/icons-react';
|
|
9
10
|
|
|
10
11
|
/** Common HTML elements that YaText can render as */
|
|
11
12
|
type YaTextElement = 'span' | 'div' | 'p' | 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6' | 'label' | 'strong' | 'em';
|
|
@@ -30,6 +31,58 @@ declare module '@tiptap/core' {
|
|
|
30
31
|
}
|
|
31
32
|
declare function YaText({ fieldId, className, as: Component, children }: YaTextProps): react_jsx_runtime.JSX.Element;
|
|
32
33
|
|
|
34
|
+
type AccessRule = 'PUBLIC' | 'EMAIL_SIGNUP' | 'SUBSCRIBERS_ONLY' | 'PASSWORD_PROTECTED';
|
|
35
|
+
interface AssetAccessInfo {
|
|
36
|
+
assetId: string;
|
|
37
|
+
filename: string;
|
|
38
|
+
fileType: string;
|
|
39
|
+
folderId?: string;
|
|
40
|
+
folderName?: string;
|
|
41
|
+
accessRule: AccessRule;
|
|
42
|
+
showPreview: boolean;
|
|
43
|
+
previewDuration: number;
|
|
44
|
+
requiresAuth: boolean;
|
|
45
|
+
authType: 'email' | 'password' | 'subscriber' | null;
|
|
46
|
+
url?: string;
|
|
47
|
+
}
|
|
48
|
+
interface YaProtectedMediaProps {
|
|
49
|
+
/** Field ID for the asset */
|
|
50
|
+
fieldId: string;
|
|
51
|
+
/** Asset ID from the database */
|
|
52
|
+
assetId: string;
|
|
53
|
+
/** Media type: audio or video */
|
|
54
|
+
type: 'audio' | 'video';
|
|
55
|
+
/** Optional CSS class name */
|
|
56
|
+
className?: string;
|
|
57
|
+
/** Preview poster image for video */
|
|
58
|
+
poster?: string;
|
|
59
|
+
/** Default aspect ratio (for video) */
|
|
60
|
+
aspectRatio?: string;
|
|
61
|
+
/** Optional title/label for the media */
|
|
62
|
+
title?: string;
|
|
63
|
+
/** Called when unlock is successful */
|
|
64
|
+
onUnlock?: () => void;
|
|
65
|
+
/** Called when unlock fails */
|
|
66
|
+
onUnlockError?: (error: string) => void;
|
|
67
|
+
}
|
|
68
|
+
declare function YaProtectedMedia({ fieldId, assetId, type, className, poster, aspectRatio, title, onUnlock, onUnlockError, }: YaProtectedMediaProps): react_jsx_runtime.JSX.Element | null;
|
|
69
|
+
|
|
70
|
+
interface YaIconProps {
|
|
71
|
+
/** Field ID for content storage - icon name stored at fieldId.icon */
|
|
72
|
+
fieldId: string;
|
|
73
|
+
/** Default icon name if none set in content store (e.g., "IconHeart") */
|
|
74
|
+
fallback?: string;
|
|
75
|
+
/** Icon size in pixels (default: 24) */
|
|
76
|
+
size?: number;
|
|
77
|
+
/** Icon stroke width (default: 2) */
|
|
78
|
+
stroke?: number;
|
|
79
|
+
/** Additional classes for the icon itself */
|
|
80
|
+
className?: string;
|
|
81
|
+
/** Classes for the wrapper span (edit mode only) */
|
|
82
|
+
wrapperClassName?: string;
|
|
83
|
+
}
|
|
84
|
+
declare function YaIcon({ fieldId, fallback, size, stroke, className, wrapperClassName, }: YaIconProps): react_jsx_runtime.JSX.Element | null;
|
|
85
|
+
|
|
33
86
|
/**
|
|
34
87
|
* SafeHtml Component - Secure HTML Renderer
|
|
35
88
|
*
|
|
@@ -1731,4 +1784,19 @@ interface UseSubscriptionStatusResult {
|
|
|
1731
1784
|
*/
|
|
1732
1785
|
declare function useSubscriptionStatus(options: UseSubscriptionStatusOptions): UseSubscriptionStatusResult;
|
|
1733
1786
|
|
|
1734
|
-
|
|
1787
|
+
interface IconPickerProps {
|
|
1788
|
+
/** Currently selected icon name (e.g., "IconBrandTwitter") */
|
|
1789
|
+
value: string | null;
|
|
1790
|
+
/** Callback when icon is selected */
|
|
1791
|
+
onChange: (iconName: string | null) => void;
|
|
1792
|
+
/** Callback to close the picker */
|
|
1793
|
+
onClose: () => void;
|
|
1794
|
+
}
|
|
1795
|
+
/**
|
|
1796
|
+
* Get display label for the icon picker trigger
|
|
1797
|
+
*/
|
|
1798
|
+
declare function getIconPickerLabel(value: string | null): string;
|
|
1799
|
+
|
|
1800
|
+
declare function IconPicker({ value, onChange, onClose }: IconPickerProps): react_jsx_runtime.JSX.Element;
|
|
1801
|
+
|
|
1802
|
+
export { type AIEditContextValue, AIEditProvider, type AccessRule, type AnimatedTextOptions, type AnimatedTextResult, type AnimationConfig, type AnimationMetadata, type AnimationOptions, type AnimationPhase, type AnimationResult, type AnimationState, type AnimationStrategy, type AnyField, type AssetAccessInfo, CartItem, CartProvider, type CartProviderProps, type CheckoutOptions, type CheckoutResult, type CheckoutSessionStatus, type CollectionContentContextValue, CollectionContentProvider, type CollectionContentProviderProps, type CollectionData, CollectionDetailPage, type CollectionDetailPageProps, type CollectionDetailRenderProps, CollectionItem, type CollectionItemProps, type CollectionItemRenderProps, CollectionList, type CollectionListData, CollectionListPage, type CollectionListPageProps, type CollectionListPaginationProps, type CollectionListProps, type CollectionListRenderProps, CollectionRecord, type ContainerField, type ContentHandle, type CustomerPortalParams, type CustomerPortalResult, type EmbedField, IconPicker, type IconPickerProps, type ImageField, type ImageValue, type LinkField, type LinkValue, type Product, QueryFilter, SafeHtml, type SafeHtmlProps, SafeTriangleBelow, type SubscribeParams, type SubscribeResult, type SubscriptionDetails, type SubscriptionPrice, type SubscriptionProduct, type SubscriptionStatusResult, type SubscriptionStatusType, type SubscriptionTier, type TextAnimationMetadata, type TextDiff, type TextField, Tooltip, type TooltipProps, type UseCartOptions, type UseCartResult, type UseCheckoutOptions, type UseCheckoutResult, type UseCheckoutStatusOptions, type UseCheckoutStatusResult, type UseCollectionListOptions, type UseCollectionListResult, type UseCollectionRecordOptions, type UseCollectionRecordResult, type UseCustomerPortalOptions, type UseCustomerPortalResult, type UseProductOptions, type UseProductResult, type UseProductsOptions, type UseProductsResult, type UseSubscriptionOptions, type UseSubscriptionResult, type UseSubscriptionStatusOptions, type UseSubscriptionStatusResult, type UseSubscriptionTiersOptions, type UseSubscriptionTiersResult, type VideoField, YaIcon, type YaIconProps, YaProtectedMedia, type YaProtectedMediaProps, YaText, type YaTextProps, buildIntermediateText, calculateAnimationTiming, computeTextDiff, containsHtml, getIconPickerLabel, getTextCursorPosition, imageCrossfadeStrategy, linkTransitionStrategy, parseFieldValue, stringifyFieldValue, stripHtml, textTypingStrategy, useAIEditAnimation, useAIEditContext, useAIEditContextOptional, useAnimatedText, useCart, useCartContext, useCheckout, useCheckoutStatus, useCollectionContent, useCollectionList, useCollectionRecord, useContent, useCustomerPortal, useOptionalCartContext, useProduct, useProducts, useSafeTriangle, useSubscription, useSubscriptionStatus, useSubscriptionTiers };
|