@weaverse/hydrogen 3.1.3 → 3.1.4

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.mts CHANGED
@@ -322,9 +322,37 @@ declare function withWeaverse(Component: React.ComponentType<any>): (props: Reac
322
322
  declare function getRequestQueries<T = Record<string, string | boolean>>(request: Request): T;
323
323
  declare function getWeaverseConfigs(request: Request, env: HydrogenThemeEnv): WeaverseProjectConfigs;
324
324
  declare function generateDataFromSchema({ inspector, }: HydrogenComponentSchema | HydrogenThemeSchema): Record<string, any>;
325
+ /**
326
+ * Resize an image to the specified dimensions.
327
+ *
328
+ * @param imageURL {string} URL of the image
329
+ * @param size {string} Shopify size attribute
330
+ * @returns {string} URL with size attribute
331
+ *
332
+ * @example
333
+ * resizeImage('https://cdn.shopify.com/image.jpg', '100x')
334
+ * resizeImage('https://cdn.shopify.com/image.jpg', '100x100')
335
+ */
336
+ declare function resizeShopifyImage(imageURL: string, size: string): string;
325
337
 
326
338
  declare function getSelectedProductOptions(request: Request): SelectedOptionInput[];
327
339
 
340
+ declare let IMAGES_PLACEHOLDERS: {
341
+ image: string;
342
+ banner: string;
343
+ backgroundImage: string;
344
+ blog_1: string;
345
+ blog_2: string;
346
+ blog_3: string;
347
+ collection_1: string;
348
+ collection_2: string;
349
+ collection_3: string;
350
+ product_1: string;
351
+ product_2: string;
352
+ product_3: string;
353
+ product_4: string;
354
+ };
355
+
328
356
  declare class WeaverseHydrogen extends Weaverse {
329
357
  platformType: PlatformTypeEnum;
330
358
  pageId: string;
@@ -343,4 +371,4 @@ declare class WeaverseHydrogenItem extends WeaverseItemStore {
343
371
  get _schemaData(): Record<string, any>;
344
372
  }
345
373
 
346
- export { type AllCacheOptions, type BasicInput, type ComponentLoaderArgs, type CreateWeaverseClientArgs, type FetchProjectPayload, type FetchProjectRequestBody, type FetchWithCacheOptions, type HeadingInput, type HeadingInputType, type HydrogenComponent, type HydrogenComponentData, type HydrogenComponentLoaderFunction, type HydrogenComponentPresets, type HydrogenComponentProps, type HydrogenComponentSchema, type HydrogenElement, type HydrogenPageAssignment, type HydrogenPageConfigs, type HydrogenPageData, type HydrogenProjectConfig, type HydrogenProjectType, type HydrogenThemeEnv, type HydrogenThemeInfo, type HydrogenThemeSchema, type HydrogenThemeSettings, type HydrogenToolbarAction, type I18nLocale, type InspectorGroup, type LoadPageParams, type Locale, type Localizations, type PageAssignmentParams, type PageType, type PublicEnv, type RootRouteData, type RouteLoaderArgs, type WeaverseArticle, type WeaverseBlog, WeaverseClient, type WeaverseClientArgs, type WeaverseCollection, WeaverseHydrogen, WeaverseHydrogenItem, type WeaverseHydrogenParams, WeaverseHydrogenRoot, type WeaverseHydrogenRootProps, type WeaverseInternal, type WeaverseLoaderData, type WeaverseLoaderRequestInfo, type WeaverseProduct, type WeaverseProjectConfigs, type WeaverseStorefrontData, type WeaverseStudioQueries, type WeaverseThemeConfigs, generateDataFromSchema, getRequestQueries, getSelectedProductOptions, getWeaverseConfigs, useThemeSettings, withWeaverse };
374
+ export { type AllCacheOptions, type BasicInput, type ComponentLoaderArgs, type CreateWeaverseClientArgs, type FetchProjectPayload, type FetchProjectRequestBody, type FetchWithCacheOptions, type HeadingInput, type HeadingInputType, type HydrogenComponent, type HydrogenComponentData, type HydrogenComponentLoaderFunction, type HydrogenComponentPresets, type HydrogenComponentProps, type HydrogenComponentSchema, type HydrogenElement, type HydrogenPageAssignment, type HydrogenPageConfigs, type HydrogenPageData, type HydrogenProjectConfig, type HydrogenProjectType, type HydrogenThemeEnv, type HydrogenThemeInfo, type HydrogenThemeSchema, type HydrogenThemeSettings, type HydrogenToolbarAction, type I18nLocale, IMAGES_PLACEHOLDERS, type InspectorGroup, type LoadPageParams, type Locale, type Localizations, type PageAssignmentParams, type PageType, type PublicEnv, type RootRouteData, type RouteLoaderArgs, type WeaverseArticle, type WeaverseBlog, WeaverseClient, type WeaverseClientArgs, type WeaverseCollection, WeaverseHydrogen, WeaverseHydrogenItem, type WeaverseHydrogenParams, WeaverseHydrogenRoot, type WeaverseHydrogenRootProps, type WeaverseInternal, type WeaverseLoaderData, type WeaverseLoaderRequestInfo, type WeaverseProduct, type WeaverseProjectConfigs, type WeaverseStorefrontData, type WeaverseStudioQueries, type WeaverseThemeConfigs, generateDataFromSchema, getRequestQueries, getSelectedProductOptions, getWeaverseConfigs, resizeShopifyImage, useThemeSettings, withWeaverse };
package/dist/index.d.ts CHANGED
@@ -322,9 +322,37 @@ declare function withWeaverse(Component: React.ComponentType<any>): (props: Reac
322
322
  declare function getRequestQueries<T = Record<string, string | boolean>>(request: Request): T;
323
323
  declare function getWeaverseConfigs(request: Request, env: HydrogenThemeEnv): WeaverseProjectConfigs;
324
324
  declare function generateDataFromSchema({ inspector, }: HydrogenComponentSchema | HydrogenThemeSchema): Record<string, any>;
325
+ /**
326
+ * Resize an image to the specified dimensions.
327
+ *
328
+ * @param imageURL {string} URL of the image
329
+ * @param size {string} Shopify size attribute
330
+ * @returns {string} URL with size attribute
331
+ *
332
+ * @example
333
+ * resizeImage('https://cdn.shopify.com/image.jpg', '100x')
334
+ * resizeImage('https://cdn.shopify.com/image.jpg', '100x100')
335
+ */
336
+ declare function resizeShopifyImage(imageURL: string, size: string): string;
325
337
 
326
338
  declare function getSelectedProductOptions(request: Request): SelectedOptionInput[];
327
339
 
340
+ declare let IMAGES_PLACEHOLDERS: {
341
+ image: string;
342
+ banner: string;
343
+ backgroundImage: string;
344
+ blog_1: string;
345
+ blog_2: string;
346
+ blog_3: string;
347
+ collection_1: string;
348
+ collection_2: string;
349
+ collection_3: string;
350
+ product_1: string;
351
+ product_2: string;
352
+ product_3: string;
353
+ product_4: string;
354
+ };
355
+
328
356
  declare class WeaverseHydrogen extends Weaverse {
329
357
  platformType: PlatformTypeEnum;
330
358
  pageId: string;
@@ -343,4 +371,4 @@ declare class WeaverseHydrogenItem extends WeaverseItemStore {
343
371
  get _schemaData(): Record<string, any>;
344
372
  }
345
373
 
346
- export { type AllCacheOptions, type BasicInput, type ComponentLoaderArgs, type CreateWeaverseClientArgs, type FetchProjectPayload, type FetchProjectRequestBody, type FetchWithCacheOptions, type HeadingInput, type HeadingInputType, type HydrogenComponent, type HydrogenComponentData, type HydrogenComponentLoaderFunction, type HydrogenComponentPresets, type HydrogenComponentProps, type HydrogenComponentSchema, type HydrogenElement, type HydrogenPageAssignment, type HydrogenPageConfigs, type HydrogenPageData, type HydrogenProjectConfig, type HydrogenProjectType, type HydrogenThemeEnv, type HydrogenThemeInfo, type HydrogenThemeSchema, type HydrogenThemeSettings, type HydrogenToolbarAction, type I18nLocale, type InspectorGroup, type LoadPageParams, type Locale, type Localizations, type PageAssignmentParams, type PageType, type PublicEnv, type RootRouteData, type RouteLoaderArgs, type WeaverseArticle, type WeaverseBlog, WeaverseClient, type WeaverseClientArgs, type WeaverseCollection, WeaverseHydrogen, WeaverseHydrogenItem, type WeaverseHydrogenParams, WeaverseHydrogenRoot, type WeaverseHydrogenRootProps, type WeaverseInternal, type WeaverseLoaderData, type WeaverseLoaderRequestInfo, type WeaverseProduct, type WeaverseProjectConfigs, type WeaverseStorefrontData, type WeaverseStudioQueries, type WeaverseThemeConfigs, generateDataFromSchema, getRequestQueries, getSelectedProductOptions, getWeaverseConfigs, useThemeSettings, withWeaverse };
374
+ export { type AllCacheOptions, type BasicInput, type ComponentLoaderArgs, type CreateWeaverseClientArgs, type FetchProjectPayload, type FetchProjectRequestBody, type FetchWithCacheOptions, type HeadingInput, type HeadingInputType, type HydrogenComponent, type HydrogenComponentData, type HydrogenComponentLoaderFunction, type HydrogenComponentPresets, type HydrogenComponentProps, type HydrogenComponentSchema, type HydrogenElement, type HydrogenPageAssignment, type HydrogenPageConfigs, type HydrogenPageData, type HydrogenProjectConfig, type HydrogenProjectType, type HydrogenThemeEnv, type HydrogenThemeInfo, type HydrogenThemeSchema, type HydrogenThemeSettings, type HydrogenToolbarAction, type I18nLocale, IMAGES_PLACEHOLDERS, type InspectorGroup, type LoadPageParams, type Locale, type Localizations, type PageAssignmentParams, type PageType, type PublicEnv, type RootRouteData, type RouteLoaderArgs, type WeaverseArticle, type WeaverseBlog, WeaverseClient, type WeaverseClientArgs, type WeaverseCollection, WeaverseHydrogen, WeaverseHydrogenItem, type WeaverseHydrogenParams, WeaverseHydrogenRoot, type WeaverseHydrogenRootProps, type WeaverseInternal, type WeaverseLoaderData, type WeaverseLoaderRequestInfo, type WeaverseProduct, type WeaverseProjectConfigs, type WeaverseStorefrontData, type WeaverseStudioQueries, type WeaverseThemeConfigs, generateDataFromSchema, getRequestQueries, getSelectedProductOptions, getWeaverseConfigs, resizeShopifyImage, useThemeSettings, withWeaverse };
package/dist/index.js CHANGED
@@ -30,6 +30,7 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
30
30
  // src/index.ts
31
31
  var src_exports = {};
32
32
  __export(src_exports, {
33
+ IMAGES_PLACEHOLDERS: () => IMAGES_PLACEHOLDERS,
33
34
  WeaverseClient: () => WeaverseClient,
34
35
  WeaverseHydrogen: () => WeaverseHydrogen,
35
36
  WeaverseHydrogenItem: () => WeaverseHydrogenItem,
@@ -38,6 +39,7 @@ __export(src_exports, {
38
39
  getRequestQueries: () => getRequestQueries,
39
40
  getSelectedProductOptions: () => getSelectedProductOptions,
40
41
  getWeaverseConfigs: () => getWeaverseConfigs,
42
+ resizeShopifyImage: () => resizeShopifyImage,
41
43
  useChildInstances: () => import_react14.useChildInstances,
42
44
  useItemInstance: () => import_react14.useItemInstance,
43
45
  useParentInstance: () => import_react14.useParentInstance,
@@ -104,6 +106,18 @@ function generateDataFromSchema({
104
106
  }
105
107
  return data;
106
108
  }
109
+ function resizeShopifyImage(imageURL, size) {
110
+ try {
111
+ if (size === "original") {
112
+ return imageURL;
113
+ } else {
114
+ let matches = imageURL.match(/(.*\/[\w-_.]+)\.(\w{2,4})/);
115
+ return matches[1] + "_" + size + "." + matches[2];
116
+ }
117
+ } catch (e) {
118
+ return imageURL;
119
+ }
120
+ }
107
121
 
108
122
  // src/WeaverseHydrogenRoot.tsx
109
123
  var import_react11 = require("@remix-run/react");
@@ -561,6 +575,23 @@ function getSelectedProductOptions(request) {
561
575
  );
562
576
  }
563
577
 
578
+ // src/placeholders.ts
579
+ var IMAGES_PLACEHOLDERS = {
580
+ image: "https://cdn.shopify.com/s/files/1/0838/0052/3057/files/h2-placeholder-image.svg",
581
+ banner: "https://cdn.shopify.com/s/files/1/0838/0052/3057/files/h2-placeholder-banner.svg",
582
+ backgroundImage: "https://cdn.shopify.com/s/files/1/0838/0052/3057/files/h2-placeholder-bg.svg",
583
+ blog_1: "https://cdn.shopify.com/s/files/1/0838/0052/3057/files/h2-placeholder-blog-1.svg",
584
+ blog_2: "https://cdn.shopify.com/s/files/1/0838/0052/3057/files/h2-placeholder-blog-2.svg",
585
+ blog_3: "https://cdn.shopify.com/s/files/1/0838/0052/3057/files/h2-placeholder-blog-3.svg",
586
+ collection_1: "https://cdn.shopify.com/s/files/1/0838/0052/3057/files/h2-placeholder-collection-1.svg",
587
+ collection_2: "https://cdn.shopify.com/s/files/1/0838/0052/3057/files/h2-placeholder-collection-2.svg",
588
+ collection_3: "https://cdn.shopify.com/s/files/1/0838/0052/3057/files/h2-placeholder-collection-3.svg",
589
+ product_1: "https://cdn.shopify.com/s/files/1/0838/0052/3057/files/h2-placeholder-tshirt-1.svg",
590
+ product_2: "https://cdn.shopify.com/s/files/1/0838/0052/3057/files/h2-placeholder-tshirt-2.svg",
591
+ product_3: "https://cdn.shopify.com/s/files/1/0838/0052/3057/files/h2-placeholder-tshirt-3.svg",
592
+ product_4: "https://cdn.shopify.com/s/files/1/0838/0052/3057/files/h2-placeholder-tshirt-4.svg"
593
+ };
594
+
564
595
  // src/index.ts
565
596
  var WeaverseHydrogen = class extends import_react14.Weaverse {
566
597
  platformType = "shopify-hydrogen";
@@ -596,6 +627,7 @@ var WeaverseHydrogenItem = class extends import_react14.WeaverseItemStore {
596
627
  import_react14.Weaverse.ItemConstructor = WeaverseHydrogenItem;
597
628
  // Annotate the CommonJS export names for ESM import in node:
598
629
  0 && (module.exports = {
630
+ IMAGES_PLACEHOLDERS,
599
631
  WeaverseClient,
600
632
  WeaverseHydrogen,
601
633
  WeaverseHydrogenItem,
@@ -604,6 +636,7 @@ import_react14.Weaverse.ItemConstructor = WeaverseHydrogenItem;
604
636
  getRequestQueries,
605
637
  getSelectedProductOptions,
606
638
  getWeaverseConfigs,
639
+ resizeShopifyImage,
607
640
  useChildInstances,
608
641
  useItemInstance,
609
642
  useParentInstance,
package/dist/index.mjs CHANGED
@@ -70,6 +70,18 @@ function generateDataFromSchema({
70
70
  }
71
71
  return data;
72
72
  }
73
+ function resizeShopifyImage(imageURL, size) {
74
+ try {
75
+ if (size === "original") {
76
+ return imageURL;
77
+ } else {
78
+ let matches = imageURL.match(/(.*\/[\w-_.]+)\.(\w{2,4})/);
79
+ return matches[1] + "_" + size + "." + matches[2];
80
+ }
81
+ } catch (e) {
82
+ return imageURL;
83
+ }
84
+ }
73
85
 
74
86
  // src/WeaverseHydrogenRoot.tsx
75
87
  import { Await, useLoaderData } from "@remix-run/react";
@@ -532,6 +544,23 @@ function getSelectedProductOptions(request) {
532
544
  );
533
545
  }
534
546
 
547
+ // src/placeholders.ts
548
+ var IMAGES_PLACEHOLDERS = {
549
+ image: "https://cdn.shopify.com/s/files/1/0838/0052/3057/files/h2-placeholder-image.svg",
550
+ banner: "https://cdn.shopify.com/s/files/1/0838/0052/3057/files/h2-placeholder-banner.svg",
551
+ backgroundImage: "https://cdn.shopify.com/s/files/1/0838/0052/3057/files/h2-placeholder-bg.svg",
552
+ blog_1: "https://cdn.shopify.com/s/files/1/0838/0052/3057/files/h2-placeholder-blog-1.svg",
553
+ blog_2: "https://cdn.shopify.com/s/files/1/0838/0052/3057/files/h2-placeholder-blog-2.svg",
554
+ blog_3: "https://cdn.shopify.com/s/files/1/0838/0052/3057/files/h2-placeholder-blog-3.svg",
555
+ collection_1: "https://cdn.shopify.com/s/files/1/0838/0052/3057/files/h2-placeholder-collection-1.svg",
556
+ collection_2: "https://cdn.shopify.com/s/files/1/0838/0052/3057/files/h2-placeholder-collection-2.svg",
557
+ collection_3: "https://cdn.shopify.com/s/files/1/0838/0052/3057/files/h2-placeholder-collection-3.svg",
558
+ product_1: "https://cdn.shopify.com/s/files/1/0838/0052/3057/files/h2-placeholder-tshirt-1.svg",
559
+ product_2: "https://cdn.shopify.com/s/files/1/0838/0052/3057/files/h2-placeholder-tshirt-2.svg",
560
+ product_3: "https://cdn.shopify.com/s/files/1/0838/0052/3057/files/h2-placeholder-tshirt-3.svg",
561
+ product_4: "https://cdn.shopify.com/s/files/1/0838/0052/3057/files/h2-placeholder-tshirt-4.svg"
562
+ };
563
+
535
564
  // src/index.ts
536
565
  var WeaverseHydrogen = class extends Weaverse {
537
566
  platformType = "shopify-hydrogen";
@@ -566,6 +595,7 @@ var WeaverseHydrogenItem = class extends WeaverseItemStore {
566
595
  };
567
596
  Weaverse.ItemConstructor = WeaverseHydrogenItem;
568
597
  export {
598
+ IMAGES_PLACEHOLDERS,
569
599
  WeaverseClient,
570
600
  WeaverseHydrogen,
571
601
  WeaverseHydrogenItem,
@@ -574,6 +604,7 @@ export {
574
604
  getRequestQueries,
575
605
  getSelectedProductOptions,
576
606
  getWeaverseConfigs,
607
+ resizeShopifyImage,
577
608
  useChildInstances,
578
609
  useItemInstance,
579
610
  useParentInstance,
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@weaverse/hydrogen",
3
3
  "author": "Weaverse Team",
4
4
  "description": "Components, hooks, and utilities for building Shopify Hydrogen websites with Weaverse",
5
- "version": "3.1.3",
5
+ "version": "3.1.4",
6
6
  "license": "MIT",
7
7
  "main": "dist/index.js",
8
8
  "typings": "dist/index.d.ts",
@@ -33,7 +33,7 @@
33
33
  "singleQuote": true
34
34
  },
35
35
  "dependencies": {
36
- "@weaverse/react": "3.1.3",
36
+ "@weaverse/react": "3.1.4",
37
37
  "react-error-boundary": "^4.0.13"
38
38
  },
39
39
  "devDependencies": {