* Move shared components to a packages/ directory so they can be publish more sensibly * Iterate towards split out shared-components module * Move shared component source into src/ subdir * Fix up imports * Include shared components in babel-ing (again) * Remove now unused dependencies * Update import in storybook preview * ...except of course they aren't unused if we import the shared components by source * Ignore shared components deps * Add shared-components to i18n paths and upgrade web-i18n to version that supports doing so * Move storybook stuff to shared-components * Seems we don't need this anymore... * Remove unused deps and remove storybook plugin from eslint * Presumably working-directory is only valid on run steps * Ignore dep & run prettier * Prettier on knips.ts * Hopefully run in right dir * Remember how to software write * Okay... how about THIS way? * Oh right, they were git ignored. Sigh. * Add concurrently * Ignore in knip * Better? * Paaaaaaaackageeeeeeees * More packages * Move playwright snapshots * Still need a custom snapshots dir * Add eslint back * Oh, now knip sees them * Fix another import * Don't lint shared-components with everything else Okay, eslint & tsconfig are tied too closely for this to work and running tsc on the shared components will need its deps installing * Maybe lint shared components please? * Not quite * Remove storybook again Re-check if it does work without it * Remove storybook eslint plugin as we're not linting storybook here anymore * Remove this too * We do need it here though
47 lines
1.4 KiB
TypeScript
47 lines
1.4 KiB
TypeScript
/*
|
|
Copyright 2025 New Vector Ltd.
|
|
|
|
SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only OR LicenseRef-Element-Commercial
|
|
Please see LICENSE files in the repository root for full details.
|
|
*/
|
|
|
|
import type { StorybookConfig } from "@storybook/react-vite";
|
|
import path from "node:path";
|
|
import { nodePolyfills } from "vite-plugin-node-polyfills";
|
|
import { mergeConfig } from "vite";
|
|
|
|
const config: StorybookConfig = {
|
|
stories: ["../src/**/*.stories.@(js|jsx|mjs|ts|tsx)"],
|
|
staticDirs: ["../../../webapp"],
|
|
addons: ["@storybook/addon-docs", "@storybook/addon-designs", "@storybook/addon-a11y"],
|
|
framework: "@storybook/react-vite",
|
|
core: {
|
|
disableTelemetry: true,
|
|
},
|
|
typescript: {
|
|
reactDocgen: "react-docgen-typescript",
|
|
},
|
|
async viteFinal(config) {
|
|
return mergeConfig(config, {
|
|
resolve: {
|
|
alias: {
|
|
// Alias used by i18n.tsx
|
|
$webapp: path.resolve("../../webapp"),
|
|
},
|
|
},
|
|
// Needed for counterpart to work
|
|
plugins: [nodePolyfills({ include: ["process", "util"] })],
|
|
server: {
|
|
allowedHosts: ["localhost", ".docker.internal"],
|
|
},
|
|
});
|
|
},
|
|
refs: {
|
|
"compound-web": {
|
|
title: "Compound Web",
|
|
url: "https://element-hq.github.io/compound-web/",
|
|
},
|
|
},
|
|
};
|
|
export default config;
|