vite-plugin-storybook-nextjs 0.0.1--canary.1.c7603ba.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/LICENSE.md +21 -0
- package/README.md +3 -0
- package/dist/index.cjs +960 -0
- package/dist/index.js +945 -0
- package/dist/plugins/next-image/alias/image-context.cjs +8 -0
- package/dist/plugins/next-image/alias/image-context.js +6 -0
- package/dist/plugins/next-image/alias/image-default-loader.cjs +40 -0
- package/dist/plugins/next-image/alias/image-default-loader.js +38 -0
- package/dist/plugins/next-image/alias/next-image.cjs +53 -0
- package/dist/plugins/next-image/alias/next-image.js +25 -0
- package/dist/plugins/next-image/alias/next-legacy-image.cjs +27 -0
- package/dist/plugins/next-image/alias/next-legacy-image.js +20 -0
- package/package.json +66 -0
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
// src/plugins/next-image/alias/image-default-loader.tsx
|
|
4
|
+
var defaultLoader = ({
|
|
5
|
+
src,
|
|
6
|
+
width,
|
|
7
|
+
quality = 75
|
|
8
|
+
}) => {
|
|
9
|
+
const missingValues = [];
|
|
10
|
+
if (!src) {
|
|
11
|
+
missingValues.push("src");
|
|
12
|
+
}
|
|
13
|
+
if (!width) {
|
|
14
|
+
missingValues.push("width");
|
|
15
|
+
}
|
|
16
|
+
if (missingValues.length > 0) {
|
|
17
|
+
throw new Error(
|
|
18
|
+
`Next Image Optimization requires ${missingValues.join(
|
|
19
|
+
", "
|
|
20
|
+
)} to be provided. Make sure you pass them as props to the \`next/image\` component. Received: ${JSON.stringify(
|
|
21
|
+
{
|
|
22
|
+
src,
|
|
23
|
+
width,
|
|
24
|
+
quality
|
|
25
|
+
}
|
|
26
|
+
)}`
|
|
27
|
+
);
|
|
28
|
+
}
|
|
29
|
+
const url = new URL(src, window.location.href);
|
|
30
|
+
if (!url.searchParams.has("w") && !url.searchParams.has("q")) {
|
|
31
|
+
url.searchParams.set("w", width.toString());
|
|
32
|
+
url.searchParams.set("q", quality.toString());
|
|
33
|
+
}
|
|
34
|
+
if (!src.startsWith("http://") && !src.startsWith("https://")) {
|
|
35
|
+
return url.toString().slice(url.origin.length);
|
|
36
|
+
}
|
|
37
|
+
return url.toString();
|
|
38
|
+
};
|
|
39
|
+
|
|
40
|
+
exports.defaultLoader = defaultLoader;
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
// src/plugins/next-image/alias/image-default-loader.tsx
|
|
2
|
+
var defaultLoader = ({
|
|
3
|
+
src,
|
|
4
|
+
width,
|
|
5
|
+
quality = 75
|
|
6
|
+
}) => {
|
|
7
|
+
const missingValues = [];
|
|
8
|
+
if (!src) {
|
|
9
|
+
missingValues.push("src");
|
|
10
|
+
}
|
|
11
|
+
if (!width) {
|
|
12
|
+
missingValues.push("width");
|
|
13
|
+
}
|
|
14
|
+
if (missingValues.length > 0) {
|
|
15
|
+
throw new Error(
|
|
16
|
+
`Next Image Optimization requires ${missingValues.join(
|
|
17
|
+
", "
|
|
18
|
+
)} to be provided. Make sure you pass them as props to the \`next/image\` component. Received: ${JSON.stringify(
|
|
19
|
+
{
|
|
20
|
+
src,
|
|
21
|
+
width,
|
|
22
|
+
quality
|
|
23
|
+
}
|
|
24
|
+
)}`
|
|
25
|
+
);
|
|
26
|
+
}
|
|
27
|
+
const url = new URL(src, window.location.href);
|
|
28
|
+
if (!url.searchParams.has("w") && !url.searchParams.has("q")) {
|
|
29
|
+
url.searchParams.set("w", width.toString());
|
|
30
|
+
url.searchParams.set("q", quality.toString());
|
|
31
|
+
}
|
|
32
|
+
if (!src.startsWith("http://") && !src.startsWith("https://")) {
|
|
33
|
+
return url.toString().slice(url.origin.length);
|
|
34
|
+
}
|
|
35
|
+
return url.toString();
|
|
36
|
+
};
|
|
37
|
+
|
|
38
|
+
export { defaultLoader };
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var NextImageNamespace = require('next/image');
|
|
6
|
+
var defaultLoader = require('sb-original/default-loader');
|
|
7
|
+
var imageContext = require('sb-original/image-context');
|
|
8
|
+
var React = require('react');
|
|
9
|
+
|
|
10
|
+
function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
|
|
11
|
+
|
|
12
|
+
function _interopNamespace(e) {
|
|
13
|
+
if (e && e.__esModule) return e;
|
|
14
|
+
var n = Object.create(null);
|
|
15
|
+
if (e) {
|
|
16
|
+
Object.keys(e).forEach(function (k) {
|
|
17
|
+
if (k !== 'default') {
|
|
18
|
+
var d = Object.getOwnPropertyDescriptor(e, k);
|
|
19
|
+
Object.defineProperty(n, k, d.get ? d : {
|
|
20
|
+
enumerable: true,
|
|
21
|
+
get: function () { return e[k]; }
|
|
22
|
+
});
|
|
23
|
+
}
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
n.default = e;
|
|
27
|
+
return Object.freeze(n);
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
var NextImageNamespace__namespace = /*#__PURE__*/_interopNamespace(NextImageNamespace);
|
|
31
|
+
var React__default = /*#__PURE__*/_interopDefault(React);
|
|
32
|
+
|
|
33
|
+
// src/plugins/next-image/alias/next-image.tsx
|
|
34
|
+
var OriginalNextImage = NextImageNamespace__namespace.default;
|
|
35
|
+
var { getImageProps: originalGetImageProps } = NextImageNamespace__namespace;
|
|
36
|
+
var MockedNextImage = React__default.default.forwardRef(({ loader, ...props }, ref) => {
|
|
37
|
+
const imageParameters = React__default.default.useContext(imageContext.ImageContext);
|
|
38
|
+
return /* @__PURE__ */ React__default.default.createElement(
|
|
39
|
+
OriginalNextImage,
|
|
40
|
+
{
|
|
41
|
+
ref,
|
|
42
|
+
...imageParameters,
|
|
43
|
+
...props,
|
|
44
|
+
loader: loader ?? defaultLoader.defaultLoader
|
|
45
|
+
}
|
|
46
|
+
);
|
|
47
|
+
});
|
|
48
|
+
MockedNextImage.displayName = "NextImage";
|
|
49
|
+
var getImageProps = (props) => originalGetImageProps?.({ loader: defaultLoader.defaultLoader, ...props });
|
|
50
|
+
var next_image_default = MockedNextImage;
|
|
51
|
+
|
|
52
|
+
exports.default = next_image_default;
|
|
53
|
+
exports.getImageProps = getImageProps;
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import * as NextImageNamespace from 'next/image';
|
|
2
|
+
import { defaultLoader } from 'sb-original/default-loader';
|
|
3
|
+
import { ImageContext } from 'sb-original/image-context';
|
|
4
|
+
import React from 'react';
|
|
5
|
+
|
|
6
|
+
// src/plugins/next-image/alias/next-image.tsx
|
|
7
|
+
var OriginalNextImage = NextImageNamespace.default;
|
|
8
|
+
var { getImageProps: originalGetImageProps } = NextImageNamespace;
|
|
9
|
+
var MockedNextImage = React.forwardRef(({ loader, ...props }, ref) => {
|
|
10
|
+
const imageParameters = React.useContext(ImageContext);
|
|
11
|
+
return /* @__PURE__ */ React.createElement(
|
|
12
|
+
OriginalNextImage,
|
|
13
|
+
{
|
|
14
|
+
ref,
|
|
15
|
+
...imageParameters,
|
|
16
|
+
...props,
|
|
17
|
+
loader: loader ?? defaultLoader
|
|
18
|
+
}
|
|
19
|
+
);
|
|
20
|
+
});
|
|
21
|
+
MockedNextImage.displayName = "NextImage";
|
|
22
|
+
var getImageProps = (props) => originalGetImageProps?.({ loader: defaultLoader, ...props });
|
|
23
|
+
var next_image_default = MockedNextImage;
|
|
24
|
+
|
|
25
|
+
export { next_image_default as default, getImageProps };
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var OriginalNextLegacyImage = require('next/legacy/image');
|
|
4
|
+
var defaultLoader = require('sb-original/default-loader');
|
|
5
|
+
var imageContext = require('sb-original/image-context');
|
|
6
|
+
var React = require('react');
|
|
7
|
+
|
|
8
|
+
function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
|
|
9
|
+
|
|
10
|
+
var OriginalNextLegacyImage__default = /*#__PURE__*/_interopDefault(OriginalNextLegacyImage);
|
|
11
|
+
var React__default = /*#__PURE__*/_interopDefault(React);
|
|
12
|
+
|
|
13
|
+
// src/plugins/next-image/alias/next-legacy-image.tsx
|
|
14
|
+
function NextLegacyImage({ loader, ...props }) {
|
|
15
|
+
const imageParameters = React__default.default.useContext(imageContext.ImageContext);
|
|
16
|
+
return /* @__PURE__ */ React__default.default.createElement(
|
|
17
|
+
OriginalNextLegacyImage__default.default,
|
|
18
|
+
{
|
|
19
|
+
...imageParameters,
|
|
20
|
+
...props,
|
|
21
|
+
loader: loader ?? defaultLoader.defaultLoader
|
|
22
|
+
}
|
|
23
|
+
);
|
|
24
|
+
}
|
|
25
|
+
var next_legacy_image_default = NextLegacyImage;
|
|
26
|
+
|
|
27
|
+
module.exports = next_legacy_image_default;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import OriginalNextLegacyImage from 'next/legacy/image';
|
|
2
|
+
import { defaultLoader } from 'sb-original/default-loader';
|
|
3
|
+
import { ImageContext } from 'sb-original/image-context';
|
|
4
|
+
import React from 'react';
|
|
5
|
+
|
|
6
|
+
// src/plugins/next-image/alias/next-legacy-image.tsx
|
|
7
|
+
function NextLegacyImage({ loader, ...props }) {
|
|
8
|
+
const imageParameters = React.useContext(ImageContext);
|
|
9
|
+
return /* @__PURE__ */ React.createElement(
|
|
10
|
+
OriginalNextLegacyImage,
|
|
11
|
+
{
|
|
12
|
+
...imageParameters,
|
|
13
|
+
...props,
|
|
14
|
+
loader: loader ?? defaultLoader
|
|
15
|
+
}
|
|
16
|
+
);
|
|
17
|
+
}
|
|
18
|
+
var next_legacy_image_default = NextLegacyImage;
|
|
19
|
+
|
|
20
|
+
export { next_legacy_image_default as default };
|
package/package.json
ADDED
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "vite-plugin-storybook-nextjs",
|
|
3
|
+
"version": "0.0.1--canary.1.c7603ba.0",
|
|
4
|
+
"description": "",
|
|
5
|
+
"keywords": [
|
|
6
|
+
"vite-plugin",
|
|
7
|
+
"nextjs",
|
|
8
|
+
"storybook",
|
|
9
|
+
"vitest"
|
|
10
|
+
],
|
|
11
|
+
"author": "",
|
|
12
|
+
"license": "MIT",
|
|
13
|
+
"sideEffects": [
|
|
14
|
+
"./src/polyfills/promise-with-resolvers.ts"
|
|
15
|
+
],
|
|
16
|
+
"files": [
|
|
17
|
+
"dist"
|
|
18
|
+
],
|
|
19
|
+
"type": "module",
|
|
20
|
+
"exports": {
|
|
21
|
+
".": {
|
|
22
|
+
"import": "./dist/index.js",
|
|
23
|
+
"require": "./dist/index.cjs"
|
|
24
|
+
}
|
|
25
|
+
},
|
|
26
|
+
"scripts": {
|
|
27
|
+
"prepublishOnly": "pnpm build",
|
|
28
|
+
"build": "tsup",
|
|
29
|
+
"dev": "pnpm build --watch",
|
|
30
|
+
"check": "biome check",
|
|
31
|
+
"check:write": "biome check --write",
|
|
32
|
+
"release": "auto shipit"
|
|
33
|
+
},
|
|
34
|
+
"peerDependencies": {
|
|
35
|
+
"next": "^14.0.0",
|
|
36
|
+
"vite": "^5.0.0"
|
|
37
|
+
},
|
|
38
|
+
"devDependencies": {
|
|
39
|
+
"@biomejs/biome": "1.8.1",
|
|
40
|
+
"@types/node": "^20.0.0",
|
|
41
|
+
"@types/react": "^18",
|
|
42
|
+
"auto": "^11.2.0",
|
|
43
|
+
"lefthook": "^1.6.16",
|
|
44
|
+
"next": "^14.0.0",
|
|
45
|
+
"react": "^18",
|
|
46
|
+
"rollup": "^4.18.0",
|
|
47
|
+
"sharp": "^0.33.4",
|
|
48
|
+
"tsup": "^8.1.0",
|
|
49
|
+
"typescript": "^5.0.0",
|
|
50
|
+
"vite": "^5.0.0",
|
|
51
|
+
"vitest": "^1.6.0"
|
|
52
|
+
},
|
|
53
|
+
"packageManager": "pnpm@9.4.0",
|
|
54
|
+
"dependencies": {
|
|
55
|
+
"@next/env": "^14.2.4",
|
|
56
|
+
"find-up": "^7.0.0",
|
|
57
|
+
"image-size": "^1.1.1",
|
|
58
|
+
"ts-dedent": "^2.2.0"
|
|
59
|
+
},
|
|
60
|
+
"optionalDependencies": {
|
|
61
|
+
"sharp": "^0.33.4"
|
|
62
|
+
},
|
|
63
|
+
"publishConfig": {
|
|
64
|
+
"access": "public"
|
|
65
|
+
}
|
|
66
|
+
}
|