@yoamigo.com/core 1.3.0 → 1.4.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.
@@ -0,0 +1,36 @@
1
+ // src/icons/custom-icons.tsx
2
+ import { forwardRef, createElement } from "react";
3
+ var appleMusicIconNode = [
4
+ [
5
+ "path",
6
+ {
7
+ d: "M23.994 6.124a9.23 9.23 0 00-.24-2.19c-.317-1.31-1.062-2.31-2.18-3.043a5.022 5.022 0 00-1.877-.726 10.496 10.496 0 00-1.564-.15c-.04-.003-.083-.01-.124-.013H5.986c-.152.01-.303.017-.455.026-.747.043-1.49.123-2.193.4-1.336.53-2.3 1.452-2.865 2.78-.192.448-.292.925-.363 1.408-.056.392-.088.785-.1 1.18 0 .032-.007.062-.01.093v12.223c.01.14.017.283.027.424.05.815.154 1.624.497 2.373.65 1.42 1.738 2.353 3.234 2.801.42.127.856.187 1.293.228.555.053 1.11.06 1.667.06h11.03a12.5 12.5 0 001.57-.1c.822-.106 1.596-.35 2.295-.81a5.046 5.046 0 001.88-2.207c.186-.42.293-.87.37-1.324.113-.675.138-1.358.137-2.04-.002-3.8 0-7.595-.003-11.393zm-6.423 3.99v5.712c0 .417-.058.827-.244 1.206-.29.59-.76.962-1.388 1.14-.35.1-.706.157-1.07.173-.95.045-1.773-.6-1.943-1.536a1.88 1.88 0 011.038-2.022c.323-.16.67-.25 1.018-.324.378-.082.758-.153 1.134-.24.274-.063.457-.23.51-.516a.904.904 0 00.02-.193c0-1.815 0-3.63-.002-5.443a.725.725 0 00-.026-.185c-.04-.15-.15-.243-.304-.234-.16.01-.318.035-.475.066-.76.15-1.52.303-2.28.456l-2.325.47-1.374.278c-.016.003-.032.01-.048.013-.277.077-.377.203-.39.49-.002.042 0 .086 0 .13-.002 2.602 0 5.204-.003 7.805 0 .42-.047.836-.215 1.227-.278.64-.77 1.04-1.434 1.233-.35.1-.71.16-1.075.172-.96.036-1.755-.6-1.92-1.544-.14-.812.23-1.685 1.154-2.075.357-.15.73-.232 1.108-.31.287-.06.575-.116.86-.177.383-.083.583-.323.6-.714v-.15c0-2.96 0-5.922.002-8.882 0-.123.013-.25.042-.37.07-.285.273-.448.546-.518.255-.066.515-.112.774-.165.733-.15 1.466-.296 2.2-.444l2.27-.46c.67-.134 1.34-.27 2.01-.403.22-.043.442-.088.663-.106.31-.025.523.17.554.482.008.073.012.148.012.223.002 1.91.002 3.822 0 5.732z",
8
+ key: "svg-0"
9
+ }
10
+ ]
11
+ ];
12
+ var IconBrandAppleMusic = forwardRef(
13
+ ({ color = "currentColor", size = 24, className, style, title, ...rest }, ref) => createElement(
14
+ "svg",
15
+ {
16
+ ref,
17
+ xmlns: "http://www.w3.org/2000/svg",
18
+ width: size,
19
+ height: size,
20
+ viewBox: "0 0 24 24",
21
+ fill: color,
22
+ className,
23
+ style,
24
+ ...rest
25
+ },
26
+ // Title element provides native browser tooltip on hover
27
+ title && createElement("title", { key: "title" }, title),
28
+ ...appleMusicIconNode.map(([tag, attrs]) => createElement(tag, attrs))
29
+ )
30
+ );
31
+ IconBrandAppleMusic.displayName = "IconBrandAppleMusic";
32
+ var CUSTOM_ICON_NAMES = ["IconBrandAppleMusic"];
33
+ export {
34
+ CUSTOM_ICON_NAMES,
35
+ IconBrandAppleMusic
36
+ };
package/dist/icons.d.ts CHANGED
@@ -1,5 +1,4 @@
1
- import * as React from 'react';
2
- import { SVGAttributes, CSSProperties } from 'react';
1
+ export { IconBrandAppleMusic } from './icons-custom.js';
3
2
  export { default as IconAB } from '@tabler/icons-react/dist/esm/icons/IconAB.mjs';
4
3
  export { default as IconAB2 } from '@tabler/icons-react/dist/esm/icons/IconAB2.mjs';
5
4
  export { default as IconAbacus } from '@tabler/icons-react/dist/esm/icons/IconAbacus.mjs';
@@ -5987,23 +5986,4 @@ export { default as IconZoomScanFilled } from '@tabler/icons-react/dist/esm/icon
5987
5986
  export { default as IconZzz } from '@tabler/icons-react/dist/esm/icons/IconZzz.mjs';
5988
5987
  export { default as IconZzzOff } from '@tabler/icons-react/dist/esm/icons/IconZzzOff.mjs';
5989
5988
  export { IconProps } from '@tabler/icons-react';
5990
-
5991
- /**
5992
- * Custom icon props - subset of Tabler IconProps that we actually use
5993
- */
5994
- interface CustomIconProps extends Omit<SVGAttributes<SVGSVGElement>, 'stroke'> {
5995
- size?: number | string;
5996
- color?: string;
5997
- className?: string;
5998
- style?: CSSProperties;
5999
- /** Tooltip text shown on hover */
6000
- title?: string;
6001
- }
6002
- /**
6003
- * Apple Music icon
6004
- * Uses createElement instead of JSX to avoid bundler transformation issues.
6005
- * This matches how Tabler icons are built internally.
6006
- */
6007
- declare const IconBrandAppleMusic: React.ForwardRefExoticComponent<CustomIconProps & React.RefAttributes<SVGSVGElement>>;
6008
-
6009
- export { IconBrandAppleMusic };
5989
+ import 'react';
package/dist/index.d.ts CHANGED
@@ -1,12 +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 { 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-D-2LGr22.js';
3
+ export { A as AudioFieldValue, J as BackgroundConfig, K as BackgroundImageConfig, C as ContentStoreProviderProd, x as EmbedFieldValue, y as EmbedType, I as ImageFieldValue, h as MarkdownText, j as MarkdownTextProps, O as OverlayConfig, P as PageInfo, f as StaticImage, g as StaticImageProps, M as StaticText, S as StaticTextProps, V as VideoFieldValue, D as YaContainer, H as YaContainerProps, q as YaEmbed, w as YaEmbedProps, Y as YaImage, k as YaImageProps, z as YaLink, B as YaLinkProps, m as YaVideo, o as YaVideoProps, a as audio, b as background, e as embed, i as image, l as link, F as parseBackgroundConfig, p as parseEmbedUrl, G as serializeBackgroundConfig, r as serializeEmbedValue, s as serializeImageValue, n as serializeVideoValue, t as text, c as useContentStoreProd, u as useSafeTriangle, v as video } from './useSafeTriangle-PCUZIdaA.js';
4
4
  import * as react_jsx_runtime from 'react/jsx-runtime';
5
- import React__default, { ReactNode } from 'react';
5
+ import React__default, { ReactNode, ComponentType } 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
+ import { IconProps } from '@tabler/icons-react';
10
10
 
11
11
  /** Common HTML elements that YaText can render as */
12
12
  type YaTextElement = 'span' | 'div' | 'p' | 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6' | 'label' | 'strong' | 'em';
@@ -100,40 +100,6 @@ interface SafeHtmlProps {
100
100
  */
101
101
  declare function SafeHtml({ content, className, mode }: SafeHtmlProps): react_jsx_runtime.JSX.Element;
102
102
 
103
- interface SafeTriangleBelowProps {
104
- /** Ref to the trigger element */
105
- triggerRef: React.RefObject<HTMLElement | null>;
106
- /** Ref to the popover element */
107
- popoverRef: React.RefObject<HTMLElement | null>;
108
- /** Whether the popover is currently visible */
109
- isVisible: boolean;
110
- /** Called when mouse leaves the safe zone */
111
- onLeave?: () => void;
112
- /** Called when mouse stays inside the safe zone (cancels hide timeout) */
113
- onStayInside?: () => void;
114
- }
115
- /**
116
- * SafeTriangleBelow creates a safe zone between a trigger element and a popover,
117
- * preventing the popover from closing when users move their mouse through the gap.
118
- *
119
- * The safe zone is a bounding box around both elements. Mouse position is tracked
120
- * and onLeave is called when the mouse exits this zone.
121
- *
122
- * The SVG visualization is purely for debugging (pointer-events: none) -
123
- * all mouse tracking is done via position checking, allowing clicks to pass through.
124
- *
125
- * Usage:
126
- * ```tsx
127
- * <SafeTriangleBelow
128
- * triggerRef={triggerRef}
129
- * popoverRef={popoverRef}
130
- * isVisible={isOpen}
131
- * onLeave={() => setIsOpen(false)}
132
- * />
133
- * ```
134
- */
135
- declare function SafeTriangleBelow({ triggerRef, popoverRef, isVisible, onLeave, onStayInside, }: SafeTriangleBelowProps): null;
136
-
137
103
  interface TooltipProps {
138
104
  /** Tooltip content */
139
105
  content: React.ReactNode;
@@ -1066,63 +1032,6 @@ interface AnimatedTextOptions {
1066
1032
  */
1067
1033
  declare function useAnimatedText(fieldId: string, content: string, options?: AnimatedTextOptions): AnimatedTextResult;
1068
1034
 
1069
- interface UseSafeTriangleOptions {
1070
- /** Delay before showing popover (ms) */
1071
- showDelay?: number;
1072
- /** Delay before hiding popover after mouse leaves (ms) */
1073
- hideDelay?: number;
1074
- /** Whether the hook is enabled (for edit mode check) */
1075
- enabled?: boolean;
1076
- }
1077
- interface UseSafeTriangleReturn<T extends HTMLElement, U extends HTMLElement> {
1078
- /** Ref to attach to the trigger element */
1079
- triggerRef: React.RefObject<T | null>;
1080
- /** Ref to attach to the popover element */
1081
- popoverRef: React.RefObject<U | null>;
1082
- /** Whether the popover should be visible */
1083
- isVisible: boolean;
1084
- /** Event handlers to spread on the trigger container */
1085
- handlers: {
1086
- onMouseEnter: () => void;
1087
- onMouseLeave: () => void;
1088
- onFocus: () => void;
1089
- };
1090
- /** Props to spread on the SafeTriangleBelow component */
1091
- triangleProps: {
1092
- triggerRef: React.RefObject<T | null>;
1093
- popoverRef: React.RefObject<U | null>;
1094
- isVisible: boolean;
1095
- onLeave: () => void;
1096
- onStayInside: () => void;
1097
- };
1098
- /** Manually show the popover */
1099
- show: () => void;
1100
- /** Manually hide the popover */
1101
- hide: () => void;
1102
- }
1103
- /**
1104
- * Hook for managing safe triangle popover state.
1105
- * Handles show/hide delays and provides all necessary refs and handlers.
1106
- *
1107
- * @example
1108
- * ```tsx
1109
- * const { triggerRef, popoverRef, isVisible, handlers, triangleProps } = useSafeTriangle()
1110
- *
1111
- * return (
1112
- * <div>
1113
- * <a ref={triggerRef} {...handlers}>
1114
- * Hover me
1115
- * </a>
1116
- * {isVisible && (
1117
- * <div ref={popoverRef}>Popover content</div>
1118
- * )}
1119
- * <SafeTriangleBelow {...triangleProps} />
1120
- * </div>
1121
- * )
1122
- * ```
1123
- */
1124
- declare function useSafeTriangle<T extends HTMLElement = HTMLElement, U extends HTMLElement = HTMLDivElement>(options?: UseSafeTriangleOptions): UseSafeTriangleReturn<T, U>;
1125
-
1126
1035
  /**
1127
1036
  * useContent - Unified Content Access Hook
1128
1037
  *
@@ -1784,6 +1693,213 @@ interface UseSubscriptionStatusResult {
1784
1693
  */
1785
1694
  declare function useSubscriptionStatus(options: UseSubscriptionStatusOptions): UseSubscriptionStatusResult;
1786
1695
 
1696
+ /**
1697
+ * DynamicIcon Component - Render icons by name with lazy loading
1698
+ *
1699
+ * This component loads Tabler icons dynamically to enable tree-shaking.
1700
+ * Icons are loaded on-demand and cached for subsequent renders.
1701
+ *
1702
+ * @example
1703
+ * ```tsx
1704
+ * // Basic usage
1705
+ * <DynamicIcon name="IconBrandTwitter" size={24} />
1706
+ *
1707
+ * // With custom styling
1708
+ * <DynamicIcon name="IconHeart" size={20} color="red" stroke={1.5} />
1709
+ *
1710
+ * // With fallback while loading
1711
+ * <DynamicIcon name="IconUser" size={24} fallback={<Spinner />} />
1712
+ * ```
1713
+ */
1714
+
1715
+ interface DynamicIconProps extends Omit<IconProps, 'ref'> {
1716
+ /** Name of the Tabler icon (e.g., "IconBrandTwitter", "IconHeart") */
1717
+ name: string;
1718
+ /** Optional fallback element to show while loading */
1719
+ fallback?: React__default.ReactNode;
1720
+ /** Additional class name for the icon wrapper */
1721
+ className?: string;
1722
+ }
1723
+ /**
1724
+ * Renders a Tabler icon by name with lazy loading.
1725
+ *
1726
+ * The component first checks the cache for an already-loaded icon.
1727
+ * If not found, it dynamically imports the icon and caches it.
1728
+ *
1729
+ * For production builds where specific icons are known ahead of time,
1730
+ * consider pre-registering icons with `registerIcon()` for faster initial render.
1731
+ */
1732
+ declare function DynamicIconComponent({ name, fallback, className, size, stroke, ...props }: DynamicIconProps): React__default.ReactElement | null;
1733
+ /**
1734
+ * Memoized DynamicIcon to prevent unnecessary re-renders.
1735
+ * Re-renders only when name or size/stroke props change.
1736
+ */
1737
+ declare const DynamicIcon: React__default.MemoExoticComponent<typeof DynamicIconComponent>;
1738
+
1739
+ /**
1740
+ * Icon Registry - Dynamic import system with caching (DEV mode)
1741
+ *
1742
+ * This module provides tree-shakeable icon loading:
1743
+ * - Pre-register icons for faster initial render (sync)
1744
+ * - Lazy-loaded icon loaders (loaded after window load for fast startup)
1745
+ * - LRU-like cache to prevent memory bloat
1746
+ *
1747
+ * Performance:
1748
+ * - Icon loaders (782KB) are lazy-loaded after window load
1749
+ * - Before load, icons will wait for loaders to be available
1750
+ * - After load, all icons load instantly via static imports
1751
+ *
1752
+ * Note: Production uses icon-registry.prod.ts which requires pre-registration.
1753
+ */
1754
+
1755
+ type IconComponent = ComponentType<IconProps>;
1756
+ type IconLoader = () => Promise<IconComponent>;
1757
+ /**
1758
+ * Check if icon loaders have been loaded
1759
+ */
1760
+ declare function isIconLoadersReady(): boolean;
1761
+ /**
1762
+ * Manually trigger icon loaders loading (useful for preloading)
1763
+ */
1764
+ declare function preloadIconLoaders(): Promise<void>;
1765
+ /**
1766
+ * Pre-register an icon with a custom loader.
1767
+ * Use this for icons that should be available immediately (e.g., commonly used icons).
1768
+ *
1769
+ * @example
1770
+ * ```ts
1771
+ * // Pre-register for faster loading
1772
+ * registerIcon('IconBrandTwitter', () => import('@tabler/icons-react').then(m => m.IconBrandTwitter))
1773
+ * ```
1774
+ */
1775
+ declare function registerIcon(name: string, loader: IconLoader): void;
1776
+ /**
1777
+ * Pre-register multiple icons at once.
1778
+ *
1779
+ * @example
1780
+ * ```ts
1781
+ * registerIcons({
1782
+ * IconBrandTwitter: () => import('@tabler/icons-react').then(m => m.IconBrandTwitter),
1783
+ * IconBrandFacebook: () => import('@tabler/icons-react').then(m => m.IconBrandFacebook),
1784
+ * })
1785
+ * ```
1786
+ */
1787
+ declare function registerIcons(loaders: Record<string, IconLoader>): void;
1788
+ /**
1789
+ * Get a cached icon component synchronously.
1790
+ * Returns null if the icon hasn't been loaded yet.
1791
+ *
1792
+ * @example
1793
+ * ```ts
1794
+ * const Icon = getIcon('IconBrandTwitter')
1795
+ * if (Icon) {
1796
+ * return <Icon size={24} />
1797
+ * }
1798
+ * ```
1799
+ */
1800
+ declare function getIcon(name: string): IconComponent | null;
1801
+ /**
1802
+ * Load an icon dynamically with caching.
1803
+ * Uses pre-registered loader if available, otherwise falls back to dynamic import.
1804
+ *
1805
+ * @example
1806
+ * ```ts
1807
+ * const Icon = await loadIcon('IconBrandTwitter')
1808
+ * if (Icon) {
1809
+ * return <Icon size={24} />
1810
+ * }
1811
+ * ```
1812
+ */
1813
+ declare function loadIcon(name: string): Promise<IconComponent | null>;
1814
+ /**
1815
+ * Preload multiple icons in parallel.
1816
+ * Useful for preloading icons that will be used soon.
1817
+ *
1818
+ * @example
1819
+ * ```ts
1820
+ * // Preload social icons before they're needed
1821
+ * await preloadIcons(['IconBrandTwitter', 'IconBrandFacebook', 'IconBrandInstagram'])
1822
+ * ```
1823
+ */
1824
+ declare function preloadIcons(names: string[]): Promise<void>;
1825
+ /**
1826
+ * Check if an icon is loaded and cached.
1827
+ */
1828
+ declare function isIconLoaded(name: string): boolean;
1829
+
1830
+ /**
1831
+ * Icon Metadata - Curated list of commonly used icons + all Tabler icons
1832
+ *
1833
+ * This file contains metadata (strings) for search/filtering.
1834
+ * Actual icon components are loaded dynamically via icon-registry.ts
1835
+ *
1836
+ * Categories:
1837
+ * - brand: Social media and brand logos
1838
+ * - communication: Email, phone, chat
1839
+ * - media: Play, pause, volume, music
1840
+ * - navigation: Arrows, menu, home
1841
+ * - commerce: Cart, payment, shipping
1842
+ * - ui: Common UI elements
1843
+ * - files: Documents, folders
1844
+ * - weather: Weather icons
1845
+ * - misc: Miscellaneous useful icons
1846
+ *
1847
+ * Search Features:
1848
+ * - Keyword matching (exact substring)
1849
+ * - Alias matching (common abbreviations, rebrands)
1850
+ * - Fuzzy matching (typo tolerance via Levenshtein distance)
1851
+ * - All ~6000 Tabler icons available (auto-categorized by name)
1852
+ *
1853
+ * Performance:
1854
+ * - Icon list (132KB) is lazy-loaded after window load
1855
+ * - Until loaded, search returns only curated icons (~150)
1856
+ * - After load, all ~6000 icons are searchable
1857
+ */
1858
+ /**
1859
+ * Check if the full icon list has been loaded
1860
+ */
1861
+ declare function isIconListLoaded(): boolean;
1862
+ /**
1863
+ * Manually trigger icon list loading (useful for preloading)
1864
+ */
1865
+ declare function preloadIconList(): Promise<void>;
1866
+ type IconCategory = 'brand' | 'communication' | 'media' | 'navigation' | 'commerce' | 'ui' | 'files' | 'weather' | 'misc';
1867
+ interface IconMeta {
1868
+ name: string;
1869
+ category: IconCategory;
1870
+ keywords: string[];
1871
+ }
1872
+ /**
1873
+ * Curated list of ~150 commonly used icons
1874
+ * These cover most website builder use cases
1875
+ */
1876
+ declare const ICON_METADATA: IconMeta[];
1877
+ /**
1878
+ * Category display names for the icon picker UI
1879
+ */
1880
+ declare const ICON_CATEGORIES: Record<IconCategory, string>;
1881
+ /**
1882
+ * Get icons by category (from all icons)
1883
+ */
1884
+ declare function getIconsByCategory(category: IconCategory): IconMeta[];
1885
+ /**
1886
+ * Search icons by keyword, alias, or fuzzy name match
1887
+ * Searches all ~6000 Tabler icons
1888
+ * @param query - Search query
1889
+ * @param limit - Maximum number of results (default: 150 for performance)
1890
+ */
1891
+ declare function searchIcons(query: string, limit?: number): IconMeta[];
1892
+ /**
1893
+ * Get icon metadata by name
1894
+ */
1895
+ declare function getIconMeta(name: string): IconMeta | undefined;
1896
+ /**
1897
+ * Get human-readable label from icon name
1898
+ * e.g., "IconBrandTwitter" -> "Twitter"
1899
+ * e.g., "IconShoppingCart" -> "Shopping Cart"
1900
+ */
1901
+ declare function getIconLabel(name: string): string;
1902
+
1787
1903
  interface IconPickerProps {
1788
1904
  /** Currently selected icon name (e.g., "IconBrandTwitter") */
1789
1905
  value: string | null;
@@ -1799,4 +1915,4 @@ declare function getIconPickerLabel(value: string | null): string;
1799
1915
 
1800
1916
  declare function IconPicker({ value, onChange, onClose }: IconPickerProps): react_jsx_runtime.JSX.Element;
1801
1917
 
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 };
1918
+ 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, DynamicIcon, type DynamicIconProps, type EmbedField, ICON_CATEGORIES, ICON_METADATA, type IconCategory, type IconComponent, type IconLoader, type IconMeta, IconPicker, type IconPickerProps, type ImageField, type ImageValue, type LinkField, type LinkValue, type Product, QueryFilter, SafeHtml, type SafeHtmlProps, 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, getIcon, getIconLabel, getIconMeta, getIconPickerLabel, getIconsByCategory, getTextCursorPosition, imageCrossfadeStrategy, isIconListLoaded, isIconLoaded, isIconLoadersReady, linkTransitionStrategy, loadIcon, parseFieldValue, preloadIconList, preloadIconLoaders, preloadIcons, registerIcon, registerIcons, searchIcons, stringifyFieldValue, stripHtml, textTypingStrategy, useAIEditAnimation, useAIEditContext, useAIEditContextOptional, useAnimatedText, useCart, useCartContext, useCheckout, useCheckoutStatus, useCollectionContent, useCollectionList, useCollectionRecord, useContent, useCustomerPortal, useOptionalCartContext, useProduct, useProducts, useSubscription, useSubscriptionStatus, useSubscriptionTiers };