diff --git a/package-lock.json b/package-lock.json index dc8eec6..9a30d04 100644 --- a/package-lock.json +++ b/package-lock.json @@ -4805,6 +4805,10 @@ "@pixi/utils": "6.5.9" } }, + "node_modules/@pixi/storybook-preset-vite": { + "resolved": "packages/storybook-preset-vite", + "link": true + }, "node_modules/@pixi/storybook-preset-webpack": { "resolved": "packages/storybook-preset-webpack", "link": true @@ -4813,6 +4817,10 @@ "resolved": "packages/storybook-renderer", "link": true }, + "node_modules/@pixi/storybook-vite": { + "resolved": "packages/storybook-vite", + "link": true + }, "node_modules/@pixi/storybook-webpack5": { "resolved": "packages/storybook-webpack5", "link": true @@ -5402,6 +5410,262 @@ "node": ">=14.14" } }, + "node_modules/@storybook/builder-vite": { + "version": "7.0.7", + "resolved": "https://registry.npmjs.org/@storybook/builder-vite/-/builder-vite-7.0.7.tgz", + "integrity": "sha512-2wL6fsFWzij+R155urOLc7EjZtlVWf4FLfaSlLGAuZwRQU40N04YdMaHMp9tjd9Vdr5fxEDwTB51PnVWJMlsEw==", + "dependencies": { + "@storybook/channel-postmessage": "7.0.7", + "@storybook/channel-websocket": "7.0.7", + "@storybook/client-logger": "7.0.7", + "@storybook/core-common": "7.0.7", + "@storybook/csf-plugin": "7.0.7", + "@storybook/mdx2-csf": "^1.0.0", + "@storybook/node-logger": "7.0.7", + "@storybook/preview": "7.0.7", + "@storybook/preview-api": "7.0.7", + "@storybook/types": "7.0.7", + "browser-assert": "^1.2.1", + "es-module-lexer": "^0.9.3", + "express": "^4.17.3", + "fs-extra": "^11.1.0", + "glob": "^8.1.0", + "glob-promise": "^6.0.2", + "magic-string": "^0.27.0", + "remark-external-links": "^8.0.0", + "remark-slug": "^6.0.0", + "rollup": "^2.25.0 || ^3.3.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/storybook" + }, + "peerDependencies": { + "@preact/preset-vite": "*", + "typescript": ">= 4.3.x", + "vite": "^3.0.0 || ^4.0.0", + "vite-plugin-glimmerx": "*" + }, + "peerDependenciesMeta": { + "@preact/preset-vite": { + "optional": true + }, + "typescript": { + "optional": true + }, + "vite-plugin-glimmerx": { + "optional": true + } + } + }, + "node_modules/@storybook/builder-vite/node_modules/@storybook/channel-postmessage": { + "version": "7.0.7", + "resolved": "https://registry.npmjs.org/@storybook/channel-postmessage/-/channel-postmessage-7.0.7.tgz", + "integrity": "sha512-XMtYfcaE0UoY/V7K1cTu9PcWETD4iyWb/Yswc4F9VrPw0Ui4UwGS1j4iaAu8DC06yyoJs4XvxYFBMlCQmKja6A==", + "dependencies": { + "@storybook/channels": "7.0.7", + "@storybook/client-logger": "7.0.7", + "@storybook/core-events": "7.0.7", + "@storybook/global": "^5.0.0", + "qs": "^6.10.0", + "telejson": "^7.0.3" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/storybook" + } + }, + "node_modules/@storybook/builder-vite/node_modules/@storybook/channel-websocket": { + "version": "7.0.7", + "resolved": "https://registry.npmjs.org/@storybook/channel-websocket/-/channel-websocket-7.0.7.tgz", + "integrity": "sha512-KDbLiQts4/dCow3qk5WJSPA6SlaX3iP9RhF0Fjj03hoG2TRskrvo+AkUiJr8gF6dpkPndfuCYUCRsO2Ml8B+AA==", + "dependencies": { + "@storybook/channels": "7.0.7", + "@storybook/client-logger": "7.0.7", + "@storybook/global": "^5.0.0", + "telejson": "^7.0.3" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/storybook" + } + }, + "node_modules/@storybook/builder-vite/node_modules/@storybook/channels": { + "version": "7.0.7", + "resolved": "https://registry.npmjs.org/@storybook/channels/-/channels-7.0.7.tgz", + "integrity": "sha512-Om4ovBLNw8pVrBu83MpOKgAuGO9Dpr1Coh2qp8t64WRPkejX1mxOY9IgH723//zH3igx8LCkf9rvBvcrsyaScQ==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/storybook" + } + }, + "node_modules/@storybook/builder-vite/node_modules/@storybook/client-logger": { + "version": "7.0.7", + "resolved": "https://registry.npmjs.org/@storybook/client-logger/-/client-logger-7.0.7.tgz", + "integrity": "sha512-EclHjDs5HwHMKB4X2orn/KKA0DTIDmp4AXAUJGRfxb5ArpKEb7tXLHsgrRBlaoz1j5LAwKTmEyZOONh9G3etjg==", + "dependencies": { + "@storybook/global": "^5.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/storybook" + } + }, + "node_modules/@storybook/builder-vite/node_modules/@storybook/core-common": { + "version": "7.0.7", + "resolved": "https://registry.npmjs.org/@storybook/core-common/-/core-common-7.0.7.tgz", + "integrity": "sha512-c8T24wex9bnCYdZVZFNX4VV+wfhrp47OLzVONZDqxMhq6G//Bgv5zH4Awcx5UfWf/05VcP7KGF1VKj8ebRyEEA==", + "dependencies": { + "@storybook/node-logger": "7.0.7", + "@storybook/types": "7.0.7", + "@types/node": "^16.0.0", + "@types/pretty-hrtime": "^1.0.0", + "chalk": "^4.1.0", + "esbuild": "^0.17.0", + "esbuild-register": "^3.4.0", + "file-system-cache": "^2.0.0", + "find-up": "^5.0.0", + "fs-extra": "^11.1.0", + "glob": "^8.1.0", + "glob-promise": "^6.0.2", + "handlebars": "^4.7.7", + "lazy-universal-dotenv": "^4.0.0", + "picomatch": "^2.3.0", + "pkg-dir": "^5.0.0", + "pretty-hrtime": "^1.0.3", + "resolve-from": "^5.0.0", + "ts-dedent": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/storybook" + } + }, + "node_modules/@storybook/builder-vite/node_modules/@storybook/core-events": { + "version": "7.0.7", + "resolved": "https://registry.npmjs.org/@storybook/core-events/-/core-events-7.0.7.tgz", + "integrity": "sha512-XNsR2RgaL2vBwuqsu+KA1DzGmB1UFfrAhpxhmyWTKDCniwtTLlaXgfKbqwcrOrPu/o1YswgIup/9UHepRHaf4A==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/storybook" + } + }, + "node_modules/@storybook/builder-vite/node_modules/@storybook/csf-plugin": { + "version": "7.0.7", + "resolved": "https://registry.npmjs.org/@storybook/csf-plugin/-/csf-plugin-7.0.7.tgz", + "integrity": "sha512-uhf2g077gXA6ZEMXIPQ0RnX+IoOTBJbj+6+VQfT7K5tvJeop1z0Fvk0FoknNXcUe7aUA0nzA/cUQ1v4vXqbY3Q==", + "dependencies": { + "@storybook/csf-tools": "7.0.7", + "unplugin": "^0.10.2" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/storybook" + } + }, + "node_modules/@storybook/builder-vite/node_modules/@storybook/csf-tools": { + "version": "7.0.7", + "resolved": "https://registry.npmjs.org/@storybook/csf-tools/-/csf-tools-7.0.7.tgz", + "integrity": "sha512-KbO5K2RS0oFm94eR49bAPvoyXY3Q6+ozvBek/F05RP7iAV790icQc59Xci9YDM1ONgb3afS+gSJGFBsE0h4pmg==", + "dependencies": { + "@babel/generator": "~7.21.1", + "@babel/parser": "~7.21.2", + "@babel/traverse": "~7.21.2", + "@babel/types": "~7.21.2", + "@storybook/csf": "^0.1.0", + "@storybook/types": "7.0.7", + "fs-extra": "^11.1.0", + "recast": "^0.23.1", + "ts-dedent": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/storybook" + } + }, + "node_modules/@storybook/builder-vite/node_modules/@storybook/node-logger": { + "version": "7.0.7", + "resolved": "https://registry.npmjs.org/@storybook/node-logger/-/node-logger-7.0.7.tgz", + "integrity": "sha512-5Y4LLgKeCStq1ktCKZ5eNPzQQSQ+CYZAlkEdzQ3Pp//0KXaZvVxEvGtaYhAymP2HatLpI8Oneo4lHrJioRfgww==", + "dependencies": { + "@types/npmlog": "^4.1.2", + "chalk": "^4.1.0", + "npmlog": "^5.0.1", + "pretty-hrtime": "^1.0.3" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/storybook" + } + }, + "node_modules/@storybook/builder-vite/node_modules/@storybook/preview": { + "version": "7.0.7", + "resolved": "https://registry.npmjs.org/@storybook/preview/-/preview-7.0.7.tgz", + "integrity": "sha512-uL3ZcFao6UvxiSxCIcXKFakxEr9Nn0lvu0zzC2yQCVepzA7a+GDr1cK5VbZ6Mez38CnOvBmb5pkCbgRqSf/oug==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/storybook" + } + }, + "node_modules/@storybook/builder-vite/node_modules/@storybook/preview-api": { + "version": "7.0.7", + "resolved": "https://registry.npmjs.org/@storybook/preview-api/-/preview-api-7.0.7.tgz", + "integrity": "sha512-R5pmGTodpu6hbwEg2RM2ulWtW3d426YzsisHrZJ+FT9lecWauN1y9xHCz7HdNzEFhT8r4YOa24L9ZS3mosZ7hA==", + "dependencies": { + "@storybook/channel-postmessage": "7.0.7", + "@storybook/channels": "7.0.7", + "@storybook/client-logger": "7.0.7", + "@storybook/core-events": "7.0.7", + "@storybook/csf": "^0.1.0", + "@storybook/global": "^5.0.0", + "@storybook/types": "7.0.7", + "@types/qs": "^6.9.5", + "dequal": "^2.0.2", + "lodash": "^4.17.21", + "memoizerific": "^1.11.3", + "qs": "^6.10.0", + "synchronous-promise": "^2.0.15", + "ts-dedent": "^2.0.0", + "util-deprecate": "^1.0.2" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/storybook" + } + }, + "node_modules/@storybook/builder-vite/node_modules/@storybook/types": { + "version": "7.0.7", + "resolved": "https://registry.npmjs.org/@storybook/types/-/types-7.0.7.tgz", + "integrity": "sha512-v9piuwp8FvTiHXIOOi5lEyTEJKhnbcbhVxgJ3VFhhXYFd0DTz6Bst0XIIgkgs21ITb3xhkfPbCRUueMcbXO1MA==", + "dependencies": { + "@storybook/channels": "7.0.7", + "@types/babel__core": "^7.0.0", + "@types/express": "^4.7.0", + "file-system-cache": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/storybook" + } + }, + "node_modules/@storybook/builder-vite/node_modules/@types/node": { + "version": "16.18.25", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.18.25.tgz", + "integrity": "sha512-rUDO6s9Q/El1R1I21HG4qw/LstTHCPO/oQNAwI/4b2f9EWvMnqt4d3HJwPMawfZ3UvodB8516Yg+VAq54YM+eA==" + }, + "node_modules/@storybook/builder-vite/node_modules/fs-extra": { + "version": "11.1.1", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.1.1.tgz", + "integrity": "sha512-MGIE4HOvQCeUCzmlHs0vXpih4ysz4wg9qiSAu6cd42lVwPbTM1TjV7RusoyQqMmk/95gdQZX72u+YW+c3eEpFQ==", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=14.14" + } + }, "node_modules/@storybook/builder-webpack5": { "version": "7.0.2", "resolved": "https://registry.npmjs.org/@storybook/builder-webpack5/-/builder-webpack5-7.0.2.tgz", @@ -13309,6 +13573,17 @@ "yallist": "^3.0.2" } }, + "node_modules/magic-string": { + "version": "0.27.0", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.27.0.tgz", + "integrity": "sha512-8UnnX2PeRAPZuN12svgR9j7M1uWMovg/CEnIwIG0LFkXSJJe4PdfUGiTGl8V9bsBHFUtfVINcSyYxd7q+kx9fA==", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.4.13" + }, + "engines": { + "node": ">=12" + } + }, "node_modules/make-dir": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", @@ -16159,9 +16434,9 @@ } }, "node_modules/postcss": { - "version": "8.4.21", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.21.tgz", - "integrity": "sha512-tP7u/Sn/dVxK2NnruI4H9BG+x+Wxz6oeZ1cJ8P6G/PZY0IKk4k/63TDsQf2kQq3+qoJeLm2kIBUNlZe3zgb4Zg==", + "version": "8.4.23", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.23.tgz", + "integrity": "sha512-bQ3qMcpF6A/YjR55xtoTr0jGOlnPOKAIMdOWiv0EIT6HVPEaJiJB4NLljSbiHoC2RX7DN5Uvjtpbg1NPdwv1oA==", "funding": [ { "type": "opencollective", @@ -16170,10 +16445,14 @@ { "type": "tidelift", "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" } ], "dependencies": { - "nanoid": "^3.3.4", + "nanoid": "^3.3.6", "picocolors": "^1.0.0", "source-map-js": "^1.0.2" }, @@ -17398,10 +17677,9 @@ } }, "node_modules/rollup": { - "version": "3.20.2", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-3.20.2.tgz", - "integrity": "sha512-3zwkBQl7Ai7MFYQE0y1MeQ15+9jsi7XxfrqwTb/9EK8D9C9+//EBR4M+CuA1KODRaNbFez/lWxA5vhEGZp4MUg==", - "dev": true, + "version": "3.21.3", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-3.21.3.tgz", + "integrity": "sha512-VnPfEG51nIv2xPLnZaekkuN06q9ZbnyDcLkaBdJa/W7UddyhOfMP2yOPziYQfeY7k++fZM8FdQIummFN5y14kA==", "bin": { "rollup": "dist/bin/rollup" }, @@ -19282,6 +19560,54 @@ "node": ">= 0.8" } }, + "node_modules/vite": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/vite/-/vite-4.3.4.tgz", + "integrity": "sha512-f90aqGBoxSFxWph2b39ae2uHAxm5jFBBdnfueNxZAT1FTpM13ccFQExCaKbR2xFW5atowjleRniQ7onjJ22QEg==", + "peer": true, + "dependencies": { + "esbuild": "^0.17.5", + "postcss": "^8.4.23", + "rollup": "^3.21.0" + }, + "bin": { + "vite": "bin/vite.js" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + }, + "peerDependencies": { + "@types/node": ">= 14", + "less": "*", + "sass": "*", + "stylus": "*", + "sugarss": "*", + "terser": "^5.4.0" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "less": { + "optional": true + }, + "sass": { + "optional": true + }, + "stylus": { + "optional": true + }, + "sugarss": { + "optional": true + }, + "terser": { + "optional": true + } + } + }, "node_modules/walk-up-path": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/walk-up-path/-/walk-up-path-1.0.0.tgz", @@ -19792,6 +20118,29 @@ "storybook": "~7.0.0-beta" } }, + "packages/storybook-preset-vite": { + "name": "@pixi/storybook-preset-vite", + "version": "0.0.6", + "license": "MIT", + "dependencies": { + "@storybook/builder-vite": "^7.0.0", + "@storybook/types": "^7.0.0", + "@types/node": "^16.0.0", + "react": "16.14.0", + "react-dom": "16.14.0" + }, + "devDependencies": { + "typescript": "~4.6.3" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "packages/storybook-preset-vite/node_modules/@types/node": { + "version": "16.18.25", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.18.25.tgz", + "integrity": "sha512-rUDO6s9Q/El1R1I21HG4qw/LstTHCPO/oQNAwI/4b2f9EWvMnqt4d3HJwPMawfZ3UvodB8516Yg+VAq54YM+eA==" + }, "packages/storybook-preset-webpack": { "name": "@pixi/storybook-preset-webpack", "version": "0.0.6", @@ -19849,6 +20198,33 @@ "pixi.js": ">6.0.0" } }, + "packages/storybook-vite": { + "name": "@pixi/storybook-vite", + "version": "0.0.6", + "license": "MIT", + "dependencies": { + "@pixi/storybook-preset-vite": "^0.0.6", + "@pixi/storybook-renderer": "^0.0.6", + "@storybook/builder-vite": "^7.0.0", + "@storybook/core-common": "^7.0.0", + "@types/node": "^14.14.20 || ^16.0.0", + "@types/offscreencanvas": "^2019.7.0", + "global": "^4.4.0", + "react": "16.14.0", + "react-dom": "16.14.0" + }, + "devDependencies": { + "typescript": "~4.6.3" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "packages/storybook-vite/node_modules/@types/node": { + "version": "16.18.25", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.18.25.tgz", + "integrity": "sha512-rUDO6s9Q/El1R1I21HG4qw/LstTHCPO/oQNAwI/4b2f9EWvMnqt4d3HJwPMawfZ3UvodB8516Yg+VAq54YM+eA==" + }, "packages/storybook-webpack5": { "name": "@pixi/storybook-webpack5", "version": "0.0.6", @@ -23206,6 +23582,24 @@ "integrity": "sha512-jf27xXl1/v2kA+Vr8E4/xLAMMO3xxNOk/blZCVr/RwKILS9T3R1Y7f4FICW2Gv4jLreBLvWwYM41NPon9/N3/g==", "requires": {} }, + "@pixi/storybook-preset-vite": { + "version": "file:packages/storybook-preset-vite", + "requires": { + "@storybook/builder-vite": "^7.0.0", + "@storybook/types": "^7.0.0", + "@types/node": "^16.0.0", + "react": "16.14.0", + "react-dom": "16.14.0", + "typescript": "~4.6.3" + }, + "dependencies": { + "@types/node": { + "version": "16.18.25", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.18.25.tgz", + "integrity": "sha512-rUDO6s9Q/El1R1I21HG4qw/LstTHCPO/oQNAwI/4b2f9EWvMnqt4d3HJwPMawfZ3UvodB8516Yg+VAq54YM+eA==" + } + } + }, "@pixi/storybook-preset-webpack": { "version": "file:packages/storybook-preset-webpack", "requires": { @@ -23244,6 +23638,28 @@ "typescript": "~4.6.3" } }, + "@pixi/storybook-vite": { + "version": "file:packages/storybook-vite", + "requires": { + "@pixi/storybook-preset-vite": "^0.0.6", + "@pixi/storybook-renderer": "^0.0.6", + "@storybook/builder-vite": "^7.0.0", + "@storybook/core-common": "^7.0.0", + "@types/node": "^14.14.20 || ^16.0.0", + "@types/offscreencanvas": "^2019.7.0", + "global": "^4.4.0", + "react": "16.14.0", + "react-dom": "16.14.0", + "typescript": "~4.6.3" + }, + "dependencies": { + "@types/node": { + "version": "16.18.25", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.18.25.tgz", + "integrity": "sha512-rUDO6s9Q/El1R1I21HG4qw/LstTHCPO/oQNAwI/4b2f9EWvMnqt4d3HJwPMawfZ3UvodB8516Yg+VAq54YM+eA==" + } + } + }, "@pixi/storybook-webpack5": { "version": "file:packages/storybook-webpack5", "requires": { @@ -23619,6 +24035,192 @@ } } }, + "@storybook/builder-vite": { + "version": "7.0.7", + "resolved": "https://registry.npmjs.org/@storybook/builder-vite/-/builder-vite-7.0.7.tgz", + "integrity": "sha512-2wL6fsFWzij+R155urOLc7EjZtlVWf4FLfaSlLGAuZwRQU40N04YdMaHMp9tjd9Vdr5fxEDwTB51PnVWJMlsEw==", + "requires": { + "@storybook/channel-postmessage": "7.0.7", + "@storybook/channel-websocket": "7.0.7", + "@storybook/client-logger": "7.0.7", + "@storybook/core-common": "7.0.7", + "@storybook/csf-plugin": "7.0.7", + "@storybook/mdx2-csf": "^1.0.0", + "@storybook/node-logger": "7.0.7", + "@storybook/preview": "7.0.7", + "@storybook/preview-api": "7.0.7", + "@storybook/types": "7.0.7", + "browser-assert": "^1.2.1", + "es-module-lexer": "^0.9.3", + "express": "^4.17.3", + "fs-extra": "^11.1.0", + "glob": "^8.1.0", + "glob-promise": "^6.0.2", + "magic-string": "^0.27.0", + "remark-external-links": "^8.0.0", + "remark-slug": "^6.0.0", + "rollup": "^2.25.0 || ^3.3.0" + }, + "dependencies": { + "@storybook/channel-postmessage": { + "version": "7.0.7", + "resolved": "https://registry.npmjs.org/@storybook/channel-postmessage/-/channel-postmessage-7.0.7.tgz", + "integrity": "sha512-XMtYfcaE0UoY/V7K1cTu9PcWETD4iyWb/Yswc4F9VrPw0Ui4UwGS1j4iaAu8DC06yyoJs4XvxYFBMlCQmKja6A==", + "requires": { + "@storybook/channels": "7.0.7", + "@storybook/client-logger": "7.0.7", + "@storybook/core-events": "7.0.7", + "@storybook/global": "^5.0.0", + "qs": "^6.10.0", + "telejson": "^7.0.3" + } + }, + "@storybook/channel-websocket": { + "version": "7.0.7", + "resolved": "https://registry.npmjs.org/@storybook/channel-websocket/-/channel-websocket-7.0.7.tgz", + "integrity": "sha512-KDbLiQts4/dCow3qk5WJSPA6SlaX3iP9RhF0Fjj03hoG2TRskrvo+AkUiJr8gF6dpkPndfuCYUCRsO2Ml8B+AA==", + "requires": { + "@storybook/channels": "7.0.7", + "@storybook/client-logger": "7.0.7", + "@storybook/global": "^5.0.0", + "telejson": "^7.0.3" + } + }, + "@storybook/channels": { + "version": "7.0.7", + "resolved": "https://registry.npmjs.org/@storybook/channels/-/channels-7.0.7.tgz", + "integrity": "sha512-Om4ovBLNw8pVrBu83MpOKgAuGO9Dpr1Coh2qp8t64WRPkejX1mxOY9IgH723//zH3igx8LCkf9rvBvcrsyaScQ==" + }, + "@storybook/client-logger": { + "version": "7.0.7", + "resolved": "https://registry.npmjs.org/@storybook/client-logger/-/client-logger-7.0.7.tgz", + "integrity": "sha512-EclHjDs5HwHMKB4X2orn/KKA0DTIDmp4AXAUJGRfxb5ArpKEb7tXLHsgrRBlaoz1j5LAwKTmEyZOONh9G3etjg==", + "requires": { + "@storybook/global": "^5.0.0" + } + }, + "@storybook/core-common": { + "version": "7.0.7", + "resolved": "https://registry.npmjs.org/@storybook/core-common/-/core-common-7.0.7.tgz", + "integrity": "sha512-c8T24wex9bnCYdZVZFNX4VV+wfhrp47OLzVONZDqxMhq6G//Bgv5zH4Awcx5UfWf/05VcP7KGF1VKj8ebRyEEA==", + "requires": { + "@storybook/node-logger": "7.0.7", + "@storybook/types": "7.0.7", + "@types/node": "^16.0.0", + "@types/pretty-hrtime": "^1.0.0", + "chalk": "^4.1.0", + "esbuild": "^0.17.0", + "esbuild-register": "^3.4.0", + "file-system-cache": "^2.0.0", + "find-up": "^5.0.0", + "fs-extra": "^11.1.0", + "glob": "^8.1.0", + "glob-promise": "^6.0.2", + "handlebars": "^4.7.7", + "lazy-universal-dotenv": "^4.0.0", + "picomatch": "^2.3.0", + "pkg-dir": "^5.0.0", + "pretty-hrtime": "^1.0.3", + "resolve-from": "^5.0.0", + "ts-dedent": "^2.0.0" + } + }, + "@storybook/core-events": { + "version": "7.0.7", + "resolved": "https://registry.npmjs.org/@storybook/core-events/-/core-events-7.0.7.tgz", + "integrity": "sha512-XNsR2RgaL2vBwuqsu+KA1DzGmB1UFfrAhpxhmyWTKDCniwtTLlaXgfKbqwcrOrPu/o1YswgIup/9UHepRHaf4A==" + }, + "@storybook/csf-plugin": { + "version": "7.0.7", + "resolved": "https://registry.npmjs.org/@storybook/csf-plugin/-/csf-plugin-7.0.7.tgz", + "integrity": "sha512-uhf2g077gXA6ZEMXIPQ0RnX+IoOTBJbj+6+VQfT7K5tvJeop1z0Fvk0FoknNXcUe7aUA0nzA/cUQ1v4vXqbY3Q==", + "requires": { + "@storybook/csf-tools": "7.0.7", + "unplugin": "^0.10.2" + } + }, + "@storybook/csf-tools": { + "version": "7.0.7", + "resolved": "https://registry.npmjs.org/@storybook/csf-tools/-/csf-tools-7.0.7.tgz", + "integrity": "sha512-KbO5K2RS0oFm94eR49bAPvoyXY3Q6+ozvBek/F05RP7iAV790icQc59Xci9YDM1ONgb3afS+gSJGFBsE0h4pmg==", + "requires": { + "@babel/generator": "~7.21.1", + "@babel/parser": "~7.21.2", + "@babel/traverse": "~7.21.2", + "@babel/types": "~7.21.2", + "@storybook/csf": "^0.1.0", + "@storybook/types": "7.0.7", + "fs-extra": "^11.1.0", + "recast": "^0.23.1", + "ts-dedent": "^2.0.0" + } + }, + "@storybook/node-logger": { + "version": "7.0.7", + "resolved": "https://registry.npmjs.org/@storybook/node-logger/-/node-logger-7.0.7.tgz", + "integrity": "sha512-5Y4LLgKeCStq1ktCKZ5eNPzQQSQ+CYZAlkEdzQ3Pp//0KXaZvVxEvGtaYhAymP2HatLpI8Oneo4lHrJioRfgww==", + "requires": { + "@types/npmlog": "^4.1.2", + "chalk": "^4.1.0", + "npmlog": "^5.0.1", + "pretty-hrtime": "^1.0.3" + } + }, + "@storybook/preview": { + "version": "7.0.7", + "resolved": "https://registry.npmjs.org/@storybook/preview/-/preview-7.0.7.tgz", + "integrity": "sha512-uL3ZcFao6UvxiSxCIcXKFakxEr9Nn0lvu0zzC2yQCVepzA7a+GDr1cK5VbZ6Mez38CnOvBmb5pkCbgRqSf/oug==" + }, + "@storybook/preview-api": { + "version": "7.0.7", + "resolved": "https://registry.npmjs.org/@storybook/preview-api/-/preview-api-7.0.7.tgz", + "integrity": "sha512-R5pmGTodpu6hbwEg2RM2ulWtW3d426YzsisHrZJ+FT9lecWauN1y9xHCz7HdNzEFhT8r4YOa24L9ZS3mosZ7hA==", + "requires": { + "@storybook/channel-postmessage": "7.0.7", + "@storybook/channels": "7.0.7", + "@storybook/client-logger": "7.0.7", + "@storybook/core-events": "7.0.7", + "@storybook/csf": "^0.1.0", + "@storybook/global": "^5.0.0", + "@storybook/types": "7.0.7", + "@types/qs": "^6.9.5", + "dequal": "^2.0.2", + "lodash": "^4.17.21", + "memoizerific": "^1.11.3", + "qs": "^6.10.0", + "synchronous-promise": "^2.0.15", + "ts-dedent": "^2.0.0", + "util-deprecate": "^1.0.2" + } + }, + "@storybook/types": { + "version": "7.0.7", + "resolved": "https://registry.npmjs.org/@storybook/types/-/types-7.0.7.tgz", + "integrity": "sha512-v9piuwp8FvTiHXIOOi5lEyTEJKhnbcbhVxgJ3VFhhXYFd0DTz6Bst0XIIgkgs21ITb3xhkfPbCRUueMcbXO1MA==", + "requires": { + "@storybook/channels": "7.0.7", + "@types/babel__core": "^7.0.0", + "@types/express": "^4.7.0", + "file-system-cache": "^2.0.0" + } + }, + "@types/node": { + "version": "16.18.25", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.18.25.tgz", + "integrity": "sha512-rUDO6s9Q/El1R1I21HG4qw/LstTHCPO/oQNAwI/4b2f9EWvMnqt4d3HJwPMawfZ3UvodB8516Yg+VAq54YM+eA==" + }, + "fs-extra": { + "version": "11.1.1", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.1.1.tgz", + "integrity": "sha512-MGIE4HOvQCeUCzmlHs0vXpih4ysz4wg9qiSAu6cd42lVwPbTM1TjV7RusoyQqMmk/95gdQZX72u+YW+c3eEpFQ==", + "requires": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + } + } + } + }, "@storybook/builder-webpack5": { "version": "7.0.2", "resolved": "https://registry.npmjs.org/@storybook/builder-webpack5/-/builder-webpack5-7.0.2.tgz", @@ -29719,6 +30321,14 @@ "yallist": "^3.0.2" } }, + "magic-string": { + "version": "0.27.0", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.27.0.tgz", + "integrity": "sha512-8UnnX2PeRAPZuN12svgR9j7M1uWMovg/CEnIwIG0LFkXSJJe4PdfUGiTGl8V9bsBHFUtfVINcSyYxd7q+kx9fA==", + "requires": { + "@jridgewell/sourcemap-codec": "^1.4.13" + } + }, "make-dir": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", @@ -31922,11 +32532,11 @@ } }, "postcss": { - "version": "8.4.21", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.21.tgz", - "integrity": "sha512-tP7u/Sn/dVxK2NnruI4H9BG+x+Wxz6oeZ1cJ8P6G/PZY0IKk4k/63TDsQf2kQq3+qoJeLm2kIBUNlZe3zgb4Zg==", + "version": "8.4.23", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.23.tgz", + "integrity": "sha512-bQ3qMcpF6A/YjR55xtoTr0jGOlnPOKAIMdOWiv0EIT6HVPEaJiJB4NLljSbiHoC2RX7DN5Uvjtpbg1NPdwv1oA==", "requires": { - "nanoid": "^3.3.4", + "nanoid": "^3.3.6", "picocolors": "^1.0.0", "source-map-js": "^1.0.2" } @@ -32834,10 +33444,9 @@ } }, "rollup": { - "version": "3.20.2", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-3.20.2.tgz", - "integrity": "sha512-3zwkBQl7Ai7MFYQE0y1MeQ15+9jsi7XxfrqwTb/9EK8D9C9+//EBR4M+CuA1KODRaNbFez/lWxA5vhEGZp4MUg==", - "dev": true, + "version": "3.21.3", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-3.21.3.tgz", + "integrity": "sha512-VnPfEG51nIv2xPLnZaekkuN06q9ZbnyDcLkaBdJa/W7UddyhOfMP2yOPziYQfeY7k++fZM8FdQIummFN5y14kA==", "requires": { "fsevents": "~2.3.2" } @@ -34233,6 +34842,18 @@ "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==" }, + "vite": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/vite/-/vite-4.3.4.tgz", + "integrity": "sha512-f90aqGBoxSFxWph2b39ae2uHAxm5jFBBdnfueNxZAT1FTpM13ccFQExCaKbR2xFW5atowjleRniQ7onjJ22QEg==", + "peer": true, + "requires": { + "esbuild": "^0.17.5", + "fsevents": "~2.3.2", + "postcss": "^8.4.23", + "rollup": "^3.21.0" + } + }, "walk-up-path": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/walk-up-path/-/walk-up-path-1.0.0.tgz", diff --git a/packages/storybook-preset-vite/README.md b/packages/storybook-preset-vite/README.md new file mode 100644 index 0000000..59877f9 --- /dev/null +++ b/packages/storybook-preset-vite/README.md @@ -0,0 +1,3 @@ +# Storybook Vite preset for PixiJS + +Storybook PixiJS Vite preset diff --git a/packages/storybook-preset-vite/package.json b/packages/storybook-preset-vite/package.json new file mode 100644 index 0000000..7a68c20 --- /dev/null +++ b/packages/storybook-preset-vite/package.json @@ -0,0 +1,64 @@ +{ + "name": "@pixi/storybook-preset-vite", + "version": "0.0.6", + "description": "Storybook for PixiJS: View PixiJS Components in isolation with Hot Reloading.", + "homepage": "https://github.com/pixijs/storybook/tree/main/packages/storybook-preset-vite", + "repository": { + "type": "git", + "url": "https://github.com/pixijs/storybook.git", + "directory": "packages/storybook-preset-vite" + }, + "license": "MIT", + "exports": { + ".": { + "require": "./dist/index.js", + "import": "./dist/index.mjs", + "types": "./dist/index.d.ts" + }, + "./preset": { + "require": "./dist/index.js", + "import": "./dist/index.mjs", + "types": "./dist/index.d.ts" + }, + "./package.json": { + "require": "./package.json", + "import": "./package.json", + "types": "./package.json" + } + }, + "main": "dist/index.js", + "module": "dist/index.mjs", + "types": "dist/index.d.ts", + "files": [ + "dist/**/*", + "README.md", + "*.js", + "*.d.ts" + ], + "scripts": { + "check": "tsc --noEmit", + "build": "../../scripts/prepare/bundle.ts" + }, + "dependencies": { + "@storybook/builder-vite": "^7.0.0", + "@storybook/types": "^7.0.0", + "@types/node": "^16.0.0", + "react": "16.14.0", + "react-dom": "16.14.0" + }, + "devDependencies": { + "typescript": "~4.6.3" + }, + "engines": { + "node": ">=10.13.0" + }, + "publishConfig": { + "access": "public" + }, + "bundler": { + "entries": [ + "./src/index.ts" + ], + "platform": "node" + } +} diff --git a/packages/storybook-preset-vite/preset.js b/packages/storybook-preset-vite/preset.js new file mode 100644 index 0000000..f4f0e99 --- /dev/null +++ b/packages/storybook-preset-vite/preset.js @@ -0,0 +1 @@ +module.exports = require('./dist/index'); diff --git a/packages/storybook-preset-vite/src/index.ts b/packages/storybook-preset-vite/src/index.ts new file mode 100644 index 0000000..4bea849 --- /dev/null +++ b/packages/storybook-preset-vite/src/index.ts @@ -0,0 +1,7 @@ +import type { StorybookConfigVite } from "./types"; + +export * from "./types"; + +export const vite: StorybookConfigVite["viteFinal"] = (config) => { + return config; +}; diff --git a/packages/storybook-preset-vite/src/types.ts b/packages/storybook-preset-vite/src/types.ts new file mode 100644 index 0000000..b3da55c --- /dev/null +++ b/packages/storybook-preset-vite/src/types.ts @@ -0,0 +1,5 @@ +export type { + StorybookConfigVite, + BuilderOptions, +} from "@storybook/builder-vite"; +export type { StorybookConfig, TypescriptOptions } from "@storybook/types"; diff --git a/packages/storybook-preset-vite/tsconfig.json b/packages/storybook-preset-vite/tsconfig.json new file mode 100644 index 0000000..17a53f4 --- /dev/null +++ b/packages/storybook-preset-vite/tsconfig.json @@ -0,0 +1,7 @@ +{ + "extends": "../../tsconfig.json", + "compilerOptions": { + "strict": true + }, + "include": ["src/**/*"], +} diff --git a/packages/storybook-vite/README.md b/packages/storybook-vite/README.md new file mode 100644 index 0000000..f23eb9c --- /dev/null +++ b/packages/storybook-vite/README.md @@ -0,0 +1,3 @@ +# Storybook PixiJS Framework + +Storybook PixiJS Framework diff --git a/packages/storybook-vite/package.json b/packages/storybook-vite/package.json new file mode 100644 index 0000000..beb43c4 --- /dev/null +++ b/packages/storybook-vite/package.json @@ -0,0 +1,69 @@ +{ + "name": "@pixi/storybook-vite", + "version": "0.0.6", + "description": "Storybook for PixiJS: View Pixi Components in isolation with Hot Reloading.", + "homepage": "https://github.com/pixijs/storybook/tree/main/packages/storybook-vite", + "repository": { + "type": "git", + "url": "https://github.com/pixijs/storybook.git", + "directory": "packages/storybook-vite" + }, + "license": "MIT", + "exports": { + ".": { + "require": "./dist/index.js", + "import": "./dist/index.mjs", + "types": "./dist/index.d.ts" + }, + "./preset": { + "require": "./dist/preset.js", + "import": "./dist/preset.mjs", + "types": "./dist/preset.d.ts" + }, + "./package.json": { + "require": "./package.json", + "import": "./package.json", + "types": "./package.json" + } + }, + "main": "dist/index.js", + "module": "dist/index.mjs", + "types": "dist/index.d.ts", + "files": [ + "dist/**/*", + "README.md", + "*.js", + "*.d.ts" + ], + "scripts": { + "check": "tsc --noEmit", + "build": "../../scripts/prepare/bundle.ts" + }, + "dependencies": { + "@pixi/storybook-preset-vite": "^0.0.6", + "@pixi/storybook-renderer": "^0.0.6", + "@storybook/builder-vite": "^7.0.0", + "@storybook/core-common": "^7.0.0", + "@types/node": "^14.14.20 || ^16.0.0", + "@types/offscreencanvas": "^2019.7.0", + "global": "^4.4.0", + "react": "16.14.0", + "react-dom": "16.14.0" + }, + "devDependencies": { + "typescript": "~4.6.3" + }, + "engines": { + "node": ">=10.13.0" + }, + "publishConfig": { + "access": "public" + }, + "bundler": { + "entries": [ + "./src/index.ts", + "./src/preset.ts" + ], + "platform": "node" + } +} diff --git a/packages/storybook-vite/preset.js b/packages/storybook-vite/preset.js new file mode 100644 index 0000000..a83f952 --- /dev/null +++ b/packages/storybook-vite/preset.js @@ -0,0 +1 @@ +module.exports = require('./dist/preset'); diff --git a/packages/storybook-vite/preview.js b/packages/storybook-vite/preview.js new file mode 100644 index 0000000..fe48d88 --- /dev/null +++ b/packages/storybook-vite/preview.js @@ -0,0 +1 @@ +export * from './dist/config'; diff --git a/packages/storybook-vite/src/index.ts b/packages/storybook-vite/src/index.ts new file mode 100644 index 0000000..b10bf73 --- /dev/null +++ b/packages/storybook-vite/src/index.ts @@ -0,0 +1,4 @@ +/// + +export * from '@pixi/storybook-renderer'; +export * from './types'; diff --git a/packages/storybook-vite/src/preset.ts b/packages/storybook-vite/src/preset.ts new file mode 100644 index 0000000..b696737 --- /dev/null +++ b/packages/storybook-vite/src/preset.ts @@ -0,0 +1,32 @@ +import path from "path"; +import type { PresetProperty } from "@storybook/types"; +import type { StorybookConfig } from "./types"; + +export const addons: PresetProperty<"addons", StorybookConfig> = [ + path.dirname( + require.resolve(path.join("@pixi/storybook-preset-vite", "package.json")) + ), + path.dirname( + require.resolve(path.join("@pixi/storybook-renderer", "package.json")) + ), +]; + +export const core: PresetProperty<"core", StorybookConfig> = async ( + config, + options +) => { + const framework = await options.presets.apply( + "framework" + ); + + return { + ...config, + builder: { + name: path.dirname( + require.resolve(path.join("@storybook/builder-vite", "package.json")) + ) as "@storybook/builder-vite", + options: + typeof framework === "string" ? {} : framework.options.builder || {}, + }, + }; +}; diff --git a/packages/storybook-vite/src/types.ts b/packages/storybook-vite/src/types.ts new file mode 100644 index 0000000..ca57373 --- /dev/null +++ b/packages/storybook-vite/src/types.ts @@ -0,0 +1,43 @@ +import type { + BuilderOptions, + StorybookConfig as StorybookConfigBase, + StorybookConfigVite, + TypescriptOptions as TypescriptOptionsBuilder, +} from "../../storybook-preset-vite/src/types"; + +type FrameworkName = "@pixi/storybook-vite"; +type BuilderName = "@storybook/builder-vite"; + +export type FrameworkOptions = { + builder?: BuilderOptions; +}; + +type StorybookConfigFramework = { + framework: + | FrameworkName + | { + name: FrameworkName; + options: FrameworkOptions; + }; + frameworkPath?: string; + core?: StorybookConfigBase["core"] & { + builder?: + | BuilderName + | { + name: BuilderName; + options: BuilderOptions; + }; + }; + typescript?: Partial & + StorybookConfigBase["typescript"]; +}; + +/** + * The interface for Storybook configuration in `main.ts` files. + */ +export type StorybookConfig = Omit< + StorybookConfigBase, + keyof StorybookConfigVite | keyof StorybookConfigFramework +> & + StorybookConfigVite & + StorybookConfigFramework; diff --git a/packages/storybook-vite/tsconfig.json b/packages/storybook-vite/tsconfig.json new file mode 100644 index 0000000..17a53f4 --- /dev/null +++ b/packages/storybook-vite/tsconfig.json @@ -0,0 +1,7 @@ +{ + "extends": "../../tsconfig.json", + "compilerOptions": { + "strict": true + }, + "include": ["src/**/*"], +}