Published by seek-oss-ci over 1 year ago
Published by seek-oss-ci over 1 year ago
sku pre-commit
lints the same files as sku lint
(#821)Published by seek-oss-ci over 1 year ago
*.less
files in them (#817)Published by seek-oss-ci over 1 year ago
Drop support for styling with treat. Please migrate styles to Vanilla Extract. (#809)
Remove workaround for classnames
package issue (#803)
A workaround for a bug in the classnames
package has been removed now that the bug has been fixed.
Please evaluate whether you need to use classnames
library in your app.
Prefer using Braid's Box
component, which supports the full clsx
API, instead.
If you need to construct class name strings for components other than Box
, prefer the clsx
package over the classnames
package.
sku init
no longer installs and configures husky for you (#804)
BREAKING CHANGE
sku init
no longer adds husky
as a dependecy nor does it configure husky for you out of the box.
For instructions on how to set up husky
to use sku's pre-commit hook, see the docs.
Support Storybook v7 (#810)
sku now supports Storybook v7. Please read the Storybook migration guide for a high-level overview of what has changed. For a more detailed list of changes, take a look at the full migration notes.
NOTE: Since sku installs and configures Storybook for you, a lot of the changes will not be relevant to users.
BREAKING CHANGE
As of Storybook v7, stories that use the storiesOf
API will not work by default. The storiesOf
API is deprecated and will be removed in Storybook v8, so it is highly encouraged to migrate your stories to the Component Story Format (CSF).
Migration can be done automatically via the migration tools provided by Storybook:
npx storybook@7 migrate storiesof-to-csf --glob="src/**/*.stories.tsx"
After doing this migration, your stories may need some manual cleanup to function correctly, such as adding a default metadata export.
When your stories are working, you can also optionally migrate to the newer CSF 3:
npx storybook@7 migrate csf-2-to-3 --glob="src/**/*.stories.tsx"
If you cannot migrate your stories to CSF, or you need to dynamically generate stories with storiesOf
(see this issue for more info on the future of the storiesOf
API), you can set the storybookStoryStore
flag to false
in your sku config:
import { type SkuConfig } from 'sku';
export default {
storybookStoryStore: false,
} satisfies SkuConfig;
Drop support for seek-style-guide
BREAKING CHANGE
seek-style-guide
is no longer supported by sku. Flow support was already removed from sku in v11, so
any seek-style-guide
components that use flow currently don't work with sku. However, there were remnants
of seek-style-guide
still present in sku's codebase. Specifically, import optimization and
component mocking. These features have now been removed. Please migrate to braid-design-system
.
Require Node.js 18.12+ (#805)
BREAKING CHANGE
Node 14 has already reached end of life as of April 2023, and Node.js 16 had its end of life date brought forward to September 2023, so in the interest of preventing another breaking change in 4 months time, we're pre-emptively dropping support for Node.js 16 in addition to Node.js 14.
We've chosen to support Node.js versions from v18.12 onwards as this version was the first Node.js 18 LTS release.
Consider upgrading the Node.js version for your project across:
.nvmrc
package.json#/engines/node
@types/node
package version.buildkite/pipeline.yml
, Dockerfile
, etc.)Re-export all of @storybook/react
(#810)
Previously, only specific APIs were re-exported under sku/@storybook/react
. All APIs are now re-exported.
Upgrade to TypeScript 5.0 (#813)
This major release includes breaking changes. See the TypeScript 5.0 announcement for more information.
Published by seek-oss-ci over 1 year ago
Published by seek-oss-ci over 1 year ago
Allow Webpack to interpret all .mjs
files as modules, not just those from node_modules
(#811)
This fixes an error with compiled Vocab translation files because Webpack would not parse require.resolveWeak
in .mjs
files.
Bump Prettier to ensure parity with TypeScript and ESLint rules (#808)
Add warning banner about .less
files (#802)
Published by seek-oss-ci over 1 year ago
Add support for Storybook's preview.js
file and re-export the DecoratorFn
type from @storybook/react
(#792)
sku now supports global customization of story rendering via a .storybook/preview.(js|ts|tsx)
file.
EXAMPLE USAGE:
import 'braid-design-system/reset';
import apac from 'braid-design-system/themes/apac';
import { BraidProvider } from 'braid-design-system';
import React from 'react';
import type { DecoratorFn } from 'sku/@storybook/react';
// This will wrap every story in a BraidProvider
export const decorators: DecoratorFn = [
(Story) => (
<BraidProvider theme={apac}>
<Story />
</BraidProvider>
),
];
See the Storybook docs for more info.
Published by seek-oss-ci over 1 year ago
Published by seek-oss-ci over 1 year ago
Published by seek-oss-ci over 1 year ago
Start sku dev server middleware when running storybook (#787)
When running sku storybook
, if you have configured devServerMiddleware
in your sku config, that middleware will now be passed through to storybook and injected into its own middleware stack.
Published by seek-oss-ci over 1 year ago
Published by seek-oss-ci over 1 year ago
Update Vocab libraries (#781)
The @vocab/types
package has been absorbed into the @vocab/core
package and the generated translation file will import types from the @vocab/core
package instead.
@vocab/webpack/loader
has been updated to work with more file types (.js
, .cjs
, .mjs
)
Update to eslint-config-seek v11.0.0. (#779)
This version of the ESLint config adds additional rules enforcing consistent type imports/exports, as explained in this article.
Any reported errors can be auto-fixed with sku format
.
Published by seek-oss-ci over 1 year ago
sku build
or sku build-ssr
that caused the copying of assets from the public
folder to the target
folder to fail (#776)Published by seek-oss-ci over 1 year ago
Published by seek-oss-ci over 1 year ago
Re-export Meta
and StoryObj
types from @storybook/react
(#773)
The Meta
and StoryObj
types are now re-exported under sku/@storybook/react
.
These types are useful for typing CSF 3 stories which are the new recommended way of writing stories.
EXAMPLE USAGE:
import type { Meta } from 'sku/@storybook/react';
import { MyComponent } from './MyComponent';
const meta: Meta<typeof MyComponent> = {
title: 'Path/To/MyComponent',
component: MyComponent,
};
export default meta;
type Story = StoryObj<typeof MyComponent>;
export const Basic: Story = {};
export const WithProp: Story = {
render: () => <MyComponent prop="value" />,
};
Published by seek-oss-ci over 1 year ago
start-ssr: Enable devServerMiddleware
to serve static assets (#765)
Apply devServerMiddleware
before sku static asset middleware, to support consumers serving custom static assets.
Published by seek-oss-ci over 1 year ago
@types/jest
as a dependency (#757)Published by seek-oss-ci over 1 year ago
Add libraryFile
configuration option (#755)
This option allows the file name of the library to be specified in the sku configuration.
If this option is not specified then the libraryName
option will be used for this purpose instead (note that this is the previously existing behaviour).
EXAMPLE USAGE:
// sku.config.ts
import type { SkuConfig } from 'sku';
const skuConfig: SkuConfig = {
libraryEntry: 'src/library.js',
renderEntry: 'src/render.js',
libraryName: 'MyAwesomeLibrary',
libraryFile: 'my-awesome-library',
};
export default skuConfig;