@lonik/oh-image 3.0.0 → 3.2.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.
@@ -1,5 +1,5 @@
1
1
  import { n as ImageLoaderOptions } from "./types-BEgZ3W30.js";
2
- import "./index-DMKCdFsX.js";
2
+ import "./index-C-1t5-gk.js";
3
3
  import { n as BaseLoaderOptions, t as BaseGlobalLoaderOptions } from "./base-loader-options-DCLkYppY.js";
4
4
  import * as react_jsx_runtime5 from "react/jsx-runtime";
5
5
 
@@ -1,4 +1,4 @@
1
- import { t as loaderFactory } from "./loader-factory-6EOKnqj1.js";
1
+ import { t as loaderFactory } from "./loader-factory-B9kl_kUR.js";
2
2
 
3
3
  //#region src/loaders/cloudflare/cloudflare-loader.tsx
4
4
  const { useLoaderContext: useCloudflareContext, LoaderProvider: CloudflareLoaderProvider, useLoader: useCloudflareLoader } = loaderFactory({
@@ -1,5 +1,5 @@
1
1
  import { n as ImageLoaderOptions } from "./types-BEgZ3W30.js";
2
- import * as react_jsx_runtime0 from "react/jsx-runtime";
2
+ import * as react_jsx_runtime7 from "react/jsx-runtime";
3
3
  import { Cloudinary, CloudinaryImage } from "@cloudinary/url-gen";
4
4
 
5
5
  //#region src/loaders/cloudinary/cloudinary-options.d.ts
@@ -34,7 +34,7 @@ declare function CloudinaryLoaderProvider({
34
34
  children: React.ReactNode;
35
35
  transforms?: CloudinaryTransforms;
36
36
  placeholder?: CloudinaryTransforms;
37
- }): react_jsx_runtime0.JSX.Element;
37
+ }): react_jsx_runtime7.JSX.Element;
38
38
  declare function useCloudinaryLoader(options?: CloudinaryLoaderHookOptions | CloudinaryTransforms): (imageOptions: ImageLoaderOptions) => string;
39
39
  declare const useCloudinaryContext: () => CloudinaryLoaderContext;
40
40
  //#endregion
@@ -1,7 +1,7 @@
1
1
  import { n as ImageLoaderOptions } from "./types-BEgZ3W30.js";
2
- import "./index-DMKCdFsX.js";
2
+ import "./index-C-1t5-gk.js";
3
3
  import { n as BaseLoaderOptions, t as BaseGlobalLoaderOptions } from "./base-loader-options-DCLkYppY.js";
4
- import * as react_jsx_runtime1 from "react/jsx-runtime";
4
+ import * as react_jsx_runtime0 from "react/jsx-runtime";
5
5
 
6
6
  //#region src/loaders/contentful/contentful-options.d.ts
7
7
  type ContentfulTransforms = Partial<{
@@ -39,6 +39,6 @@ declare const useContentfulContext: () => ContentfulGlobalOptions, ContentfulLoa
39
39
  ...props
40
40
  }: {
41
41
  children: React.ReactNode;
42
- } & Partial<ContentfulGlobalOptions>) => react_jsx_runtime1.JSX.Element, useContentfulLoader: (options?: ContentfulGlobalOptions | undefined) => (() => undefined) | ((imageOptions: ImageLoaderOptions) => string);
42
+ } & Partial<ContentfulGlobalOptions>) => react_jsx_runtime0.JSX.Element, useContentfulLoader: (options?: ContentfulGlobalOptions | undefined) => (() => undefined) | ((imageOptions: ImageLoaderOptions) => string);
43
43
  //#endregion
44
44
  export { ContentfulGlobalOptions, ContentfulLoaderProvider, ContentfulOptions, ContentfulTransforms, useContentfulContext, useContentfulLoader };
@@ -1,4 +1,4 @@
1
- import { t as loaderFactory } from "./loader-factory-6EOKnqj1.js";
1
+ import { t as loaderFactory } from "./loader-factory-B9kl_kUR.js";
2
2
 
3
3
  //#region src/loaders/contentful/contentful-loader.tsx
4
4
  const { useLoaderContext: useContentfulContext, LoaderProvider: ContentfulLoaderProvider, useLoader: useContentfulLoader } = loaderFactory({
@@ -1,7 +1,7 @@
1
1
  import { n as ImageLoaderOptions } from "./types-BEgZ3W30.js";
2
- import "./index-DMKCdFsX.js";
2
+ import "./index-C-1t5-gk.js";
3
3
  import { n as BaseLoaderOptions, t as BaseGlobalLoaderOptions } from "./base-loader-options-DCLkYppY.js";
4
- import * as react_jsx_runtime2 from "react/jsx-runtime";
4
+ import * as react_jsx_runtime3 from "react/jsx-runtime";
5
5
 
6
6
  //#region src/loaders/imgproxy/imgproxy-options.d.ts
7
7
  type ResizeType = "fit" | "fill" | "fill-down" | "force" | "auto";
@@ -376,7 +376,14 @@ type ImgproxyTransforms = Partial<{
376
376
  watermark_shadow: number;
377
377
  }>;
378
378
  type ImgproxyOptions = BaseLoaderOptions<ImgproxyTransforms>;
379
- type ImgproxyGlobalOptions = BaseGlobalLoaderOptions<ImgproxyTransforms>;
379
+ interface ImgproxyGlobalOptions extends BaseGlobalLoaderOptions<ImgproxyOptions> {
380
+ /**
381
+ * If \`undefined\`, won't set anything (this is for backward compatibility and will be removed in future versions, where by default it will be "insecure").
382
+ * - \`"insecure"\` sets it to insecure
383
+ * - \`string\` sets the custom signature
384
+ */
385
+ signature?: "insecure" | (string & {}) | undefined;
386
+ }
380
387
  //#endregion
381
388
  //#region src/loaders/imgproxy/imgproxy-loader.d.ts
382
389
  declare const useImgproxyContext: () => ImgproxyGlobalOptions, ImgproxyLoaderProvider: ({
@@ -384,6 +391,6 @@ declare const useImgproxyContext: () => ImgproxyGlobalOptions, ImgproxyLoaderPro
384
391
  ...props
385
392
  }: {
386
393
  children: React.ReactNode;
387
- } & Partial<ImgproxyGlobalOptions>) => react_jsx_runtime2.JSX.Element, useImgproxyLoader: (options?: ImgproxyGlobalOptions | undefined) => (() => undefined) | ((imageOptions: ImageLoaderOptions) => string);
394
+ } & Partial<ImgproxyGlobalOptions>) => react_jsx_runtime3.JSX.Element, useImgproxyLoader: (options?: ImgproxyGlobalOptions | undefined) => (() => undefined) | ((imageOptions: ImageLoaderOptions) => string);
388
395
  //#endregion
389
396
  export { ImgproxyGlobalOptions, ImgproxyLoaderProvider, ImgproxyOptions, ImgproxyTransforms, useImgproxyContext, useImgproxyLoader };
package/dist/imgproxy.js CHANGED
@@ -1,4 +1,4 @@
1
- import { t as loaderFactory } from "./loader-factory-6EOKnqj1.js";
1
+ import { t as loaderFactory } from "./loader-factory-B9kl_kUR.js";
2
2
 
3
3
  //#region src/loaders/imgproxy/imgproxy-loader.tsx
4
4
  const { useLoaderContext: useImgproxyContext, LoaderProvider: ImgproxyLoaderProvider, useLoader: useImgproxyLoader } = loaderFactory({
@@ -129,7 +129,10 @@ const { useLoaderContext: useImgproxyContext, LoaderProvider: ImgproxyLoaderProv
129
129
  ] },
130
130
  zoom: { orders: ["x", "y"] }
131
131
  }
132
- }, ({ path, params, imageOptions }) => `${path}/${params}/plain/${imageOptions.src}`);
132
+ }, ({ path, params, imageOptions, options }) => {
133
+ if (options.signature !== void 0) return `${path}/${options.signature}/${params}/plain/${imageOptions.src}`;
134
+ return `${path}/${params}/plain/${imageOptions.src}`;
135
+ });
133
136
 
134
137
  //#endregion
135
138
  export { ImgproxyLoaderProvider, useImgproxyContext, useImgproxyLoader };
@@ -1,11 +1,11 @@
1
1
  import { r as ImageProps, t as ImageLoader } from "./types-BEgZ3W30.js";
2
- import * as react_jsx_runtime7 from "react/jsx-runtime";
2
+ import * as react_jsx_runtime6 from "react/jsx-runtime";
3
3
 
4
4
  //#region src/react/image.d.ts
5
- declare function Image(props: ImageProps): react_jsx_runtime7.JSX.Element;
5
+ declare function Image(props: ImageProps): react_jsx_runtime6.JSX.Element;
6
6
  //#endregion
7
7
  //#region src/react/image-factory.d.ts
8
- declare function __imageFactory(defaultProps: any): (props: any) => react_jsx_runtime7.JSX.Element;
8
+ declare function __imageFactory(defaultProps: any): (props: any) => react_jsx_runtime6.JSX.Element;
9
9
  //#endregion
10
10
  //#region src/react/use-img-loaded.d.ts
11
11
  /**
@@ -47,6 +47,6 @@ declare function ImageProvider({
47
47
  ...props
48
48
  }: {
49
49
  children: React.ReactNode;
50
- } & Partial<ImageContextValue>): react_jsx_runtime7.JSX.Element;
50
+ } & Partial<ImageContextValue>): react_jsx_runtime6.JSX.Element;
51
51
  //#endregion
52
52
  export { Image as a, __imageFactory as i, useImageContext as n, useImgLoaded as r, ImageProvider as t };
package/dist/kontent.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  import { n as ImageLoaderOptions } from "./types-BEgZ3W30.js";
2
- import "./index-DMKCdFsX.js";
2
+ import "./index-C-1t5-gk.js";
3
3
  import { n as BaseLoaderOptions, t as BaseGlobalLoaderOptions } from "./base-loader-options-DCLkYppY.js";
4
- import * as react_jsx_runtime3 from "react/jsx-runtime";
4
+ import * as react_jsx_runtime1 from "react/jsx-runtime";
5
5
 
6
6
  //#region src/loaders/kontent/kontent-options.d.ts
7
7
  type KontentTransforms = Partial<{
@@ -44,6 +44,6 @@ declare const useKontentContext: () => KontentGlobalOptions, KontentLoaderProvid
44
44
  ...props
45
45
  }: {
46
46
  children: React.ReactNode;
47
- } & Partial<KontentGlobalOptions>) => react_jsx_runtime3.JSX.Element, useKontentLoader: (options?: KontentGlobalOptions | undefined) => (() => undefined) | ((imageOptions: ImageLoaderOptions) => string);
47
+ } & Partial<KontentGlobalOptions>) => react_jsx_runtime1.JSX.Element, useKontentLoader: (options?: KontentGlobalOptions | undefined) => (() => undefined) | ((imageOptions: ImageLoaderOptions) => string);
48
48
  //#endregion
49
49
  export { KontentGlobalOptions, KontentLoaderProvider, KontentOptions, KontentTransforms, useKontentContext, useKontentLoader };
package/dist/kontent.js CHANGED
@@ -1,4 +1,4 @@
1
- import { t as loaderFactory } from "./loader-factory-6EOKnqj1.js";
1
+ import { t as loaderFactory } from "./loader-factory-B9kl_kUR.js";
2
2
 
3
3
  //#region src/loaders/kontent/kontent-loader.tsx
4
4
  const { useLoaderContext: useKontentContext, LoaderProvider: KontentLoaderProvider, useLoader: useKontentLoader } = loaderFactory({
@@ -83,6 +83,10 @@ function loaderFactory(defaults, config, urlResolver) {
83
83
  console.warn("Path is not provided");
84
84
  return () => void 0;
85
85
  }
86
+ const mergedOptions = {
87
+ ...context,
88
+ ...options
89
+ };
86
90
  return (imageOptions) => {
87
91
  const defaultTransform = imageOptions.isPlaceholder ? context.placeholder : context.transforms;
88
92
  const optionTransforms = imageOptions.isPlaceholder ? options?.placeholder : options?.transforms;
@@ -104,7 +108,8 @@ function loaderFactory(defaults, config, urlResolver) {
104
108
  return urlResolver({
105
109
  imageOptions,
106
110
  params: [...params, ...resolvedTransforms].join(config.paramSeparator),
107
- path
111
+ path,
112
+ options: mergedOptions
108
113
  });
109
114
  };
110
115
  };
package/dist/netlify.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  import { n as ImageLoaderOptions } from "./types-BEgZ3W30.js";
2
- import "./index-DMKCdFsX.js";
2
+ import "./index-C-1t5-gk.js";
3
3
  import { n as BaseLoaderOptions, t as BaseGlobalLoaderOptions } from "./base-loader-options-DCLkYppY.js";
4
- import * as react_jsx_runtime4 from "react/jsx-runtime";
4
+ import * as react_jsx_runtime2 from "react/jsx-runtime";
5
5
 
6
6
  //#region src/loaders/netlify/netlify-options.d.ts
7
7
  type NetlifyTransforms = Partial<{
@@ -21,6 +21,6 @@ declare const useNetlifyContext: () => NetlifyGlobalOptions, NetlifyLoaderProvid
21
21
  ...props
22
22
  }: {
23
23
  children: React.ReactNode;
24
- } & Partial<NetlifyGlobalOptions>) => react_jsx_runtime4.JSX.Element, useNetlifyLoader: (options?: NetlifyGlobalOptions | undefined) => (() => undefined) | ((imageOptions: ImageLoaderOptions) => string);
24
+ } & Partial<NetlifyGlobalOptions>) => react_jsx_runtime2.JSX.Element, useNetlifyLoader: (options?: NetlifyGlobalOptions | undefined) => (() => undefined) | ((imageOptions: ImageLoaderOptions) => string);
25
25
  //#endregion
26
26
  export { NetlifyGlobalOptions, NetlifyLoaderProvider, NetlifyOptions, NetlifyTransforms, useNetlifyContext, useNetlifyLoader };
package/dist/netlify.js CHANGED
@@ -1,4 +1,4 @@
1
- import { t as loaderFactory } from "./loader-factory-6EOKnqj1.js";
1
+ import { t as loaderFactory } from "./loader-factory-B9kl_kUR.js";
2
2
 
3
3
  //#region src/loaders/netlify/netlify-loader.tsx
4
4
  const { useLoaderContext: useNetlifyContext, LoaderProvider: NetlifyLoaderProvider, useLoader: useNetlifyLoader } = loaderFactory({
package/dist/plugin.d.ts CHANGED
@@ -44,6 +44,7 @@ type PluginTransforms = Omit<ImageTransforms, "breakpoints">;
44
44
  type PluginPlaceholderTransforms = Omit<PlaceholderTransforms, "pl_show">;
45
45
  interface PluginConfig {
46
46
  distDir: string;
47
+ outDir?: string;
47
48
  transforms?: PluginTransforms;
48
49
  placeholder?: PluginPlaceholderTransforms;
49
50
  breakpoints?: number[];
package/dist/plugin.js CHANGED
@@ -263,7 +263,7 @@ function ohImage(options) {
263
263
  cacheDir = join(viteConfig.cacheDir, DEV_DIR);
264
264
  isBuild = viteConfig.command === "build";
265
265
  assetsDir = viteConfig.build.assetsDir;
266
- outDir = join(viteConfig.root, viteConfig.build.outDir);
266
+ outDir = config.outDir ? join(viteConfig.root, config.outDir) : join(viteConfig.root, viteConfig.build.outDir);
267
267
  },
268
268
  enforce: "pre",
269
269
  configureServer(server) {
package/dist/react.d.ts CHANGED
@@ -1,3 +1,3 @@
1
1
  import { n as ImageLoaderOptions, r as ImageProps, t as ImageLoader } from "./types-BEgZ3W30.js";
2
- import { a as Image, i as __imageFactory, n as useImageContext, r as useImgLoaded, t as ImageProvider } from "./index-DMKCdFsX.js";
2
+ import { a as Image, i as __imageFactory, n as useImageContext, r as useImgLoaded, t as ImageProvider } from "./index-C-1t5-gk.js";
3
3
  export { Image, ImageLoader, ImageLoaderOptions, ImageProps, ImageProvider, __imageFactory, useImageContext, useImgLoaded };
@@ -1,5 +1,5 @@
1
1
  import { n as ImageLoaderOptions } from "./types-BEgZ3W30.js";
2
- import "./index-DMKCdFsX.js";
2
+ import "./index-C-1t5-gk.js";
3
3
  import { n as BaseLoaderOptions, t as BaseGlobalLoaderOptions } from "./base-loader-options-DCLkYppY.js";
4
4
  import * as react_jsx_runtime0 from "react/jsx-runtime";
5
5
 
package/dist/wordpress.js CHANGED
@@ -1,4 +1,4 @@
1
- import { t as loaderFactory } from "./loader-factory-6EOKnqj1.js";
1
+ import { t as loaderFactory } from "./loader-factory-B9kl_kUR.js";
2
2
 
3
3
  //#region src/loaders/wordpress/wordpress-loader.tsx
4
4
  const { useLoaderContext: useWordpressContext, LoaderProvider: WordpressLoaderProvider, useLoader: useWordpressLoader } = loaderFactory({
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@lonik/oh-image",
3
3
  "type": "module",
4
- "version": "3.0.0",
4
+ "version": "3.2.0",
5
5
  "description": "A React component library for optimized image handling.",
6
6
  "author": "Luka Onikadze <lukonik@gmail.com>",
7
7
  "license": "MIT",