Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release: Prerelease alpha 8.3.0-alpha.3 #28656

Merged
merged 121 commits into from
Jul 29, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
121 commits
Select commit Hold shift + click to select a range
e4668c3
Update ./docs/versions/next.json for v8.2.0-alpha.0
storybook-bot May 14, 2024
5d0911c
Merge pull request #27105 from storybookjs/valentin/nextjs-add-image-…
valentinpalkovic May 14, 2024
27698e3
Merge pull request #27088 from storybookjs/valentin/provide-relaxed-t…
valentinpalkovic May 14, 2024
8c8b922
Merge pull request #27093 from seanparmelee/raw-conflicts
valentinpalkovic May 14, 2024
e5a24ba
Write changelog for 8.1.1 [skip ci]
storybook-bot May 15, 2024
9d2c707
Bump version from "8.1.0" to "8.1.1" [skip ci]
storybook-bot May 15, 2024
400ce13
fix: remove unnecessary "<template>" tag for default slot without bin…
larsrickert May 16, 2024
b92adaa
update formatting
larsrickert May 16, 2024
3680913
feat(vue): improve generated code snippets
larsrickert May 18, 2024
8d5c308
revert unrelated changes
larsrickert May 18, 2024
49b1f51
revert formatting
larsrickert May 18, 2024
f94cc99
add new lines between multiple slots
larsrickert May 19, 2024
4084f0c
gracefully use fallback component name if real name not found
larsrickert May 19, 2024
bfeb2d8
feat: support slot bindings
larsrickert Jun 8, 2024
4428320
remove old source code generator
larsrickert Jun 8, 2024
14405ba
chore: fix unwanted rebase changes
larsrickert Jun 8, 2024
7d12ce6
chore: fix unwanted rebase changes
larsrickert Jun 8, 2024
304f13e
feat: support script setup and v-models
larsrickert Jun 9, 2024
06d0fdb
Merge branch 'next' into larsrickert/improve-vue-source-code
larsrickert Jun 9, 2024
b245c0d
fix typo
larsrickert Jun 9, 2024
7923ba3
simplify statement
larsrickert Jun 11, 2024
febc8c2
update a bunch of references to `build-storybook` command in the docs…
ahayes91 Jun 18, 2024
26c839e
undo some auto-formatting from my IDE
ahayes91 Jun 18, 2024
9bdc2ce
Merge branch 'next' into docs-build-storybook-references
ahayes91 Jun 20, 2024
e00d282
add index-json flag to test-runner script
yannbf Jun 27, 2024
1e93a51
skip story in test-runner tests
yannbf Jun 27, 2024
0d10313
skip server actions tests in test-runner
yannbf Jun 28, 2024
13ce086
fix code for slot bindings in minified build
larsrickert Jun 28, 2024
16704b8
Merge branch 'next' into docs-build-storybook-references
ahayes91 Jul 1, 2024
53206ca
update the references again after merging latest next branch
ahayes91 Jul 1, 2024
8040af4
Merge branch 'next' into yann/fix-test-runner-script
yannbf Jul 3, 2024
dbe47ac
Merge branch 'next' into yann/fix-test-runner-script
yannbf Jul 3, 2024
817f6de
Merge branch 'next' into yann/fix-test-runner-script
ndelangen Jul 4, 2024
0230958
Merge branch 'next' into docs-build-storybook-references
ahayes91 Jul 5, 2024
0134666
Merge branch 'next' into yann/fix-test-runner-script
ndelangen Jul 8, 2024
754627e
Merge branch 'next' into larsrickert/improve-vue-source-code
larsrickert Jul 9, 2024
bdeb85b
revert unwanted merge formattings
larsrickert Jul 9, 2024
da145e2
revert unwanted merge formattings
larsrickert Jul 9, 2024
0cfada6
Fix Angular template error for props with a circular reference
Marklb Jul 10, 2024
d2d40f3
Merge branch 'next' into yann/fix-test-runner-script
ndelangen Jul 10, 2024
1ca6410
Merge branch 'next' into larsrickert/improve-vue-source-code
larsrickert Jul 11, 2024
82ca30f
Merge branch 'next' into yann/fix-test-runner-script
yannbf Jul 11, 2024
eff8817
Merge branch 'next' into yann/fix-test-runner-script
ndelangen Jul 12, 2024
5cd1def
fix story test
yannbf Jul 12, 2024
db0f6f4
Merge branch 'next' into yann/fix-test-runner-script
yannbf Jul 12, 2024
cb5f303
Fix template props not able to use dot notation
Marklb Jul 13, 2024
2bdf8aa
Merge branch 'next' into larsrickert/improve-vue-source-code
chakAs3 Jul 13, 2024
cb54e33
Update storybook-theme-example-variables.md
booc0mtaco Jul 15, 2024
2beb72c
Update package.json
shilman Jul 16, 2024
bae1569
Merge branch 'next' into shilman/csf-feature-telemetry
shilman Jul 16, 2024
443d0b2
Telemetry: Record CSF feature usage
shilman Jul 16, 2024
4b7116e
Merge branch 'next' into shilman/csf-feature-telemetry
shilman Jul 16, 2024
30c5926
CSF: Add mount usage stats
shilman Jul 17, 2024
bb74213
CSF: Add beforeEach usage stats
shilman Jul 17, 2024
8a71a71
CSF: Add module mocking usage stats
shilman Jul 17, 2024
5c50792
Merge branch 'next' into larsrickert/improve-vue-source-code
kasperpeulen Jul 17, 2024
7a9090f
Merge branch 'next' into marklb/angular-prop-circular
Marklb Jul 18, 2024
2a822b6
Merge branch 'next' into marklb/fix-non-dot-notation-in-tpl
Marklb Jul 18, 2024
1660f23
Merge branch 'next' into shilman/csf-feature-telemetry
shilman Jul 19, 2024
047b67c
Add StoryIndexGenerator stats tests
shilman Jul 19, 2024
8930086
Merge branch 'shilman/csf-feature-telemetry' into shilman/csf-test-te…
shilman Jul 19, 2024
aba435b
Track loaders and PR cleanup
shilman Jul 19, 2024
3c08b4b
Merge branch 'next' into yann/fix-test-runner-script
kasperpeulen Jul 19, 2024
90e5cad
Merge branch 'shilman/csf-feature-telemetry' into shilman/csf-test-te…
shilman Jul 19, 2024
42dc1ab
Update tests
shilman Jul 19, 2024
7a2c5a9
Docs: Fix Addon Knowledge base links
jonniebigodes Jul 19, 2024
631bafd
Merge branch 'next' into shilman/csf-feature-telemetry
shilman Jul 19, 2024
43a01fa
Merge branch 'next' into docs_fix_addon_kb_links
jonniebigodes Jul 19, 2024
e62b9a3
Merge branch 'next' into docs_fix_addon_kb_links
jonniebigodes Jul 19, 2024
4db60d6
Merge pull request #28622 from storybookjs/shilman/csf-feature-telemetry
shilman Jul 19, 2024
b9e4b6a
Merge branch 'next' into docs_fix_addon_kb_links
jonniebigodes Jul 19, 2024
8da6907
Merge pull request #28653 from storybookjs/docs_fix_addon_kb_links
jonniebigodes Jul 19, 2024
6229b7f
Test module mock regex
shilman Jul 19, 2024
4bc40ae
Merge branch 'next' into shilman/csf-test-telemetry
shilman Jul 19, 2024
42f8d8f
Merge pull request #28624 from storybookjs/shilman/csf-test-telemetry
shilman Jul 19, 2024
4792e23
Merge branch 'next' into yann/fix-test-runner-script
kasperpeulen Jul 19, 2024
72ee6dc
Use xlarge executor
kasperpeulen Jul 19, 2024
505cfc7
Use large executor
kasperpeulen Jul 19, 2024
8b803a1
Update CHANGELOG.md for v8.2.5 [skip ci]
storybook-bot Jul 19, 2024
95874a5
Merge branch 'next' into larsrickert/improve-vue-source-code
larsrickert Jul 21, 2024
22938b9
fix build
larsrickert Jul 21, 2024
6356195
Merge pull request #27194 from storybookjs/larsrickert/improve-vue-so…
kasperpeulen Jul 21, 2024
ea72ef3
Merge pull request #28367 from storybookjs/yann/fix-test-runner-script
kasperpeulen Jul 22, 2024
50b25f5
Adjust beforeAll to be non-nullable in NormalizedProjectAnnotations
kasperpeulen Jul 22, 2024
7e55011
Merge pull request #28671 from storybookjs/kasper/before-all
kasperpeulen Jul 22, 2024
59b6fe2
Merge branch 'next' into docs-build-storybook-references
jonniebigodes Jul 22, 2024
30efa20
fix: prevent out of memory issue for slots and events
larsrickert Jul 22, 2024
8bccace
Merge pull request #28674 from storybookjs/larsrickert/out-of-memory-…
kasperpeulen Jul 23, 2024
5482a5c
Merge branch 'next' into patch-1
jonniebigodes Jul 23, 2024
68abfec
Merge pull request #28614 from booc0mtaco/patch-1
jonniebigodes Jul 23, 2024
b143cef
Add all the entrypoints of manager & preview and make the module type…
ndelangen Jul 23, 2024
0194358
set range in package.json back to workspace
ndelangen Jul 23, 2024
1f30459
fix versions
ndelangen Jul 23, 2024
2f7072b
Merge pull request #28691 from storybookjs/norbert/fix-28673
ndelangen Jul 23, 2024
d40abaa
Merge branch 'next' into marklb/fix-non-dot-notation-in-tpl
valentinpalkovic Jul 24, 2024
1b2d50a
Merge pull request #28588 from Marklb/marklb/fix-non-dot-notation-in-tpl
valentinpalkovic Jul 24, 2024
8fa89b9
Merge remote-tracking branch 'origin/next' into pr/Marklb/28498
valentinpalkovic Jul 24, 2024
78fda2a
Merge pull request #28498 from Marklb/marklb/angular-prop-circular
valentinpalkovic Jul 24, 2024
b7f3441
Remove setRegistryURL method from JsPackageManager
valentinpalkovic Jul 24, 2024
3cca421
Implement getRegistryURL for each package manager
valentinpalkovic Jul 24, 2024
dd2f9b4
Fix restoring registry
valentinpalkovic Jul 24, 2024
779f0a5
Update CHANGELOG.md for v8.2.6 [skip ci]
storybook-bot Jul 24, 2024
23c0eb8
Merge branch 'next' into docs-build-storybook-references
ahayes91 Jul 24, 2024
f2b5884
make suggested changes from PR
ahayes91 Jul 24, 2024
17e26a7
Merge pull request #28271 from ahayes91/docs-build-storybook-references
jonniebigodes Jul 24, 2024
d9b1fa6
add stories to main storybook from templates
ndelangen Jul 25, 2024
141d8a2
Merge pull request #28705 from storybookjs/norbert/add-template-stories
ndelangen Jul 25, 2024
e432880
Merge pull request #28699 from storybookjs/valentin/fix-installing-st…
valentinpalkovic Jul 25, 2024
5f80a63
upgrade Vitest to 1.6.0
yannbf Jul 25, 2024
1633942
Merge pull request #28711 from storybookjs/yann/upgrade-vitest-v1
yannbf Jul 25, 2024
cc0f779
Controls: Add disableSave parameter
valentinpalkovic Jul 29, 2024
8f30c5c
React: Update react-dom-shim to make it compatible with vitest
valentinpalkovic Jul 29, 2024
7452e1e
Rename disableSave to disableSaveFromUI in ControlsPanel
valentinpalkovic Jul 29, 2024
856762c
Merge pull request #28734 from storybookjs/valentin/disable-save-from…
valentinpalkovic Jul 29, 2024
11f43cc
Revert dynamic import of react-dom-shim
valentinpalkovic Jul 29, 2024
adf42a7
fix type usage in renderers
ndelangen Jul 29, 2024
df101c4
Merge pull request #28730 from storybookjs/valentin/fix-dynamic-requi…
valentinpalkovic Jul 29, 2024
04c4751
Build: Use !test tag to disable test-runner tests
yannbf Jul 29, 2024
54b4af3
Merge pull request #28745 from storybookjs/norbert/cpc-fix-types-usage
ndelangen Jul 29, 2024
c1e91ed
Merge pull request #28747 from storybookjs/yann/use-disable-tags-in-t…
yannbf Jul 29, 2024
6ae35af
Write changelog for 8.3.0-alpha.3 [skip ci]
storybook-bot Jul 29, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -390,7 +390,7 @@ jobs:
parallelism:
type: integer
executor:
class: medium
class: large
name: sb_playwright
parallelism: << parameters.parallelism >>
steps:
Expand Down
14 changes: 14 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,17 @@
## 8.2.6

- CPC: Fix missing exports for addon-kit - [#28691](https://github.com/storybookjs/storybook/pull/28691), thanks @ndelangen!

## 8.2.5

- CPC: Add the globals export for manager - [#28650](https://github.com/storybookjs/storybook/pull/28650), thanks @ndelangen!
- CPC: Correct path to the `@storybook/theming/create` alias - [#28643](https://github.com/storybookjs/storybook/pull/28643), thanks @Averethel!
- Components: Remove external overrides - [#28632](https://github.com/storybookjs/storybook/pull/28632), thanks @kasperpeulen!
- Core: Fix header for MountMustBeDestructuredError message - [#28590](https://github.com/storybookjs/storybook/pull/28590), thanks @0916dhkim!
- Onboarding: Fix code snippet when story name differs from export name - [#28649](https://github.com/storybookjs/storybook/pull/28649), thanks @ghengeveld!
- Telemetry: Add mount, beforeEach, moduleMock stats - [#28624](https://github.com/storybookjs/storybook/pull/28624), thanks @shilman!
- Telemetry: CSF feature usage - [#28622](https://github.com/storybookjs/storybook/pull/28622), thanks @shilman!

## 8.2.4

- CLI: Add diagnostic when the `storybook` package is missing - [#28604](https://github.com/storybookjs/storybook/pull/28604), thanks @kasperpeulen!
Expand Down
15 changes: 15 additions & 0 deletions CHANGELOG.prerelease.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,18 @@
## 8.3.0-alpha.3

- Angular: Fix Angular template error for props with a circular reference - [#28498](https://github.com/storybookjs/storybook/pull/28498), thanks @Marklb!
- Angular: Fix template props not able to use dot notation - [#28588](https://github.com/storybookjs/storybook/pull/28588), thanks @Marklb!
- CLI: Fix the initialization of Storybook in workspaces - [#28699](https://github.com/storybookjs/storybook/pull/28699), thanks @valentinpalkovic!
- CPC: Fix missing exports for addon-kit - [#28691](https://github.com/storybookjs/storybook/pull/28691), thanks @ndelangen!
- CPC: Fix type usage in renderers - [#28745](https://github.com/storybookjs/storybook/pull/28745), thanks @ndelangen!
- Controls: Add disableSave parameter - [#28734](https://github.com/storybookjs/storybook/pull/28734), thanks @valentinpalkovic!
- React: Avoid 'Dynamic require of react is not possible' issue - [#28730](https://github.com/storybookjs/storybook/pull/28730), thanks @valentinpalkovic!
- Telemetry: Add mount, beforeEach, moduleMock stats - [#28624](https://github.com/storybookjs/storybook/pull/28624), thanks @shilman!
- Telemetry: CSF feature usage - [#28622](https://github.com/storybookjs/storybook/pull/28622), thanks @shilman!
- Types: Adjust beforeAll to be non-nullable in NormalizedProjectAnnotations - [#28671](https://github.com/storybookjs/storybook/pull/28671), thanks @kasperpeulen!
- Vue: Fix out of memory error when using vue-component-meta for events and slots - [#28674](https://github.com/storybookjs/storybook/pull/28674), thanks @larsrickert!
- Vue: Improve generated code snippets - [#27194](https://github.com/storybookjs/storybook/pull/27194), thanks @larsrickert!

## 8.3.0-alpha.2

- Addon-Interactions: Fix status in panel tab - [#28580](https://github.com/storybookjs/storybook/pull/28580), thanks @yannbf!
Expand Down
79 changes: 70 additions & 9 deletions code/.storybook/main.ts
Original file line number Diff line number Diff line change
Expand Up @@ -8,34 +8,78 @@ const managerApiPath = path.join(__dirname, '../core/src/manager-api');

const config: StorybookConfig = {
stories: [
{
directory: '../core/template/stories',
titlePrefix: 'core',
},
{
directory: '../core/src/manager',
titlePrefix: '@manager',
titlePrefix: 'manager',
},
{
directory: '../core/src/preview-api',
titlePrefix: '@preview',
titlePrefix: 'preview',
},
{
directory: '../core/src/components/brand',
titlePrefix: 'brand',
},
{
directory: '../core/src/components',
titlePrefix: '@components',
directory: '../core/src/components/components',
titlePrefix: 'components',
},
{
directory: '../lib/blocks/src',
titlePrefix: '@blocks',
titlePrefix: 'blocks',
},
{
directory: '../addons/a11y/template/stories',
titlePrefix: 'addons/a11y',
},
{
directory: '../addons/actions/template/stories',
titlePrefix: 'addons/actions',
},
{
directory: '../addons/backgrounds/template/stories',
titlePrefix: 'addons/backgrounds',
},
{
directory: '../addons/controls/src',
titlePrefix: '@addons/controls',
titlePrefix: 'addons/controls',
},
{
directory: '../addons/controls/template/stories',
titlePrefix: 'addons/controls',
},
{
directory: '../addons/docs/template/stories',
titlePrefix: 'addons/docs',
},
{
directory: '../addons/links/template/stories',
titlePrefix: 'addons/links',
},
{
directory: '../addons/viewport/template/stories',
titlePrefix: 'addons/viewport',
},
{
directory: '../addons/toolbars/template/stories',
titlePrefix: 'addons/toolbars',
},
{
directory: '../addons/onboarding/src',
titlePrefix: '@addons/onboarding',
titlePrefix: 'addons/onboarding',
},
{
directory: '../addons/interactions/src',
titlePrefix: '@addons/interactions',
titlePrefix: 'addons/interactions',
},
// {
// directory: '../addons/interactions/template/stories',
// titlePrefix: 'addons/interactions',
// },
],
addons: [
'@storybook/addon-links',
Expand All @@ -46,6 +90,11 @@ const config: StorybookConfig = {
'@storybook/addon-a11y',
'@chromatic-com/storybook',
],
previewAnnotations: [
'./core/template/stories/preview.ts',
'./addons/toolbars/template/stories/preview.ts',
'./renderers/react/template/components/index.js',
],
build: {
test: {
// we have stories for the blocks here, we can't exclude them
Expand All @@ -58,9 +107,21 @@ const config: StorybookConfig = {
name: '@storybook/react-vite',
options: {},
},
refs: {
icons: {
title: 'Icons',
url: 'https://main--64b56e737c0aeefed9d5e675.chromatic.com',
expanded: false,
},
},
core: {
disableTelemetry: true,
},
features: {
viewportStoryGlobals: true,
themesStoryGlobals: true,
backgroundsStoryGlobals: true,
},
viteFinal: (viteConfig, { configType }) =>
mergeConfig(viteConfig, {
resolve: {
Expand All @@ -81,7 +142,7 @@ const config: StorybookConfig = {
sourcemap: process.env.CI !== 'true',
},
}),
logLevel: 'debug',
// logLevel: 'debug',
};

export default config;
17 changes: 0 additions & 17 deletions code/.storybook/preview.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -296,20 +296,3 @@ export const parameters = {
],
},
};

export const globalTypes = {
theme: {
name: 'Theme',
description: 'Global theme for components',
toolbar: {
icon: 'circlehollow',
title: 'Theme',
items: [
{ value: 'light', icon: 'circlehollow', title: 'light' },
{ value: 'dark', icon: 'circle', title: 'dark' },
{ value: 'side-by-side', icon: 'sidebar', title: 'side by side' },
{ value: 'stacked', icon: 'bottombar', title: 'stacked' },
],
},
},
};
15 changes: 11 additions & 4 deletions code/addons/controls/src/ControlsPanel.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@ interface ControlsParameters {
sort?: SortType;
expanded?: boolean;
presetColors?: PresetColor[];
disableSaveFromUI?: boolean;
}

interface ControlsPanelProps {
Expand All @@ -46,7 +47,12 @@ export const ControlsPanel = ({ saveStory, createStory }: ControlsPanelProps) =>
const [args, updateArgs, resetArgs, initialArgs] = useArgs();
const [globals] = useGlobals();
const rows = useArgTypes();
const { expanded, sort, presetColors } = useParameter<ControlsParameters>(PARAM_KEY, {});
const {
expanded,
sort,
presetColors,
disableSaveFromUI = false,
} = useParameter<ControlsParameters>(PARAM_KEY, {});
const { path, previewInitialized } = useStorybookState();

// If the story is prepared, then show the args table
Expand Down Expand Up @@ -84,9 +90,10 @@ export const ControlsPanel = ({ saveStory, createStory }: ControlsPanelProps) =>
sort={sort}
isLoading={isLoading}
/>
{hasControls && hasUpdatedArgs && global.CONFIG_TYPE === 'DEVELOPMENT' && (
<SaveStory {...{ resetArgs, saveStory, createStory }} />
)}
{hasControls &&
hasUpdatedArgs &&
global.CONFIG_TYPE === 'DEVELOPMENT' &&
disableSaveFromUI !== true && <SaveStory {...{ resetArgs, saveStory, createStory }} />}
</AddonWrapper>
);
};
2 changes: 1 addition & 1 deletion code/addons/docs/docs/recipes.md
Original file line number Diff line number Diff line change
Expand Up @@ -184,7 +184,7 @@ The Storybook UI is a workshop for developing components in isolation. Storybook
To address this, we’ve added a CLI flag to only export the docs. This flag is also available in dev mode:

```sh
yarn build-storybook --docs
yarn storybook build --docs
```

## Disabling docs stories
Expand Down
7 changes: 2 additions & 5 deletions code/addons/docs/template/stories/docspage/error.stories.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ import { global as globalThis } from '@storybook/global';

export default {
component: globalThis.Components.Button,
tags: ['autodocs'],
tags: ['autodocs', '!test'],
args: { label: 'Click Me!' },
parameters: { chromatic: { disable: true } },
};
Expand All @@ -12,10 +12,7 @@ export default {
*/
export const ErrorStory = {
decorators: [
(storyFn) => {
// Don't throw in the test runner; there's no easy way to skip (yet)
if (window?.navigator?.userAgent?.match(/StorybookTestRunner/)) return storyFn();

() => {
throw new Error('Story did something wrong');
},
],
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ export default {
actions: { argTypesRegex: '^on[A-Z].*' },
chromatic: { disable: true },
},
tags: ['!test'],
};

export const Default = {
Expand Down
2 changes: 1 addition & 1 deletion code/addons/links/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,7 @@
"prep": "node --loader ../../../scripts/node_modules/esbuild-register/loader.js -r ../../../scripts/node_modules/esbuild-register/register.js ../../../scripts/prepare/addon-bundle.ts"
},
"dependencies": {
"@storybook/csf": "0.1.11",
"@storybook/csf": "^0.1.11",
"@storybook/global": "^5.0.0",
"ts-dedent": "^2.0.0"
},
Expand Down
4 changes: 2 additions & 2 deletions code/core/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -253,7 +253,7 @@
"prep": "bun ./scripts/prep.ts"
},
"dependencies": {
"@storybook/csf": "0.1.11",
"@storybook/csf": "^0.1.11",
"@types/express": "^4.17.21",
"@types/node": "^18.0.0",
"browser-assert": "^1.2.1",
Expand Down Expand Up @@ -285,7 +285,7 @@
"@radix-ui/react-dialog": "^1.0.5",
"@radix-ui/react-scroll-area": "^1.0.5",
"@radix-ui/react-slot": "^1.0.2",
"@storybook/docs-mdx": "4.0.0-next.0",
"@storybook/docs-mdx": "4.0.0-next.1",
"@storybook/global": "^5.0.0",
"@storybook/icons": "^1.2.5",
"@tanstack/react-virtual": "^3.3.0",
Expand Down
18 changes: 2 additions & 16 deletions code/core/src/common/js-package-manager/JsPackageManager.ts
Original file line number Diff line number Diff line change
Expand Up @@ -64,22 +64,6 @@ export abstract class JsPackageManager {
return packageJSON ? packageJSON.version ?? null : null;
}

// NOTE: for some reason yarn prefers the npm registry in
// local development, so always use npm
async setRegistryURL(url: string) {
if (url) {
await this.executeCommand({ command: 'npm', args: ['config', 'set', 'registry', url] });
} else {
await this.executeCommand({ command: 'npm', args: ['config', 'delete', 'registry'] });
}
}

async getRegistryURL() {
const res = await this.executeCommand({ command: 'npm', args: ['config', 'get', 'registry'] });
const url = res.trim();
return url === 'undefined' ? undefined : url;
}

constructor(options?: JsPackageManagerOptions) {
this.cwd = options?.cwd || process.cwd();
}
Expand Down Expand Up @@ -487,6 +471,8 @@ export abstract class JsPackageManager {
): // Use generic and conditional type to force `string[]` if fetchAllVersions is true and `string` if false
Promise<T extends true ? string[] : string>;

public abstract getRegistryURL(): Promise<string | undefined>;

public abstract runPackageCommand(
command: string,
args: string[],
Expand Down
15 changes: 0 additions & 15 deletions code/core/src/common/js-package-manager/NPMProxy.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -34,21 +34,6 @@ describe('NPM Proxy', () => {
});
});

describe('setRegistryUrl', () => {
it('should run `npm config set registry https://foo.bar`', async () => {
const executeCommandSpy = vi.spyOn(npmProxy, 'executeCommand').mockResolvedValueOnce('');

await npmProxy.setRegistryURL('https://foo.bar');

expect(executeCommandSpy).toHaveBeenCalledWith(
expect.objectContaining({
command: 'npm',
args: ['config', 'set', 'registry', 'https://foo.bar'],
})
);
});
});

describe('installDependencies', () => {
describe('npm6', () => {
it('should run `npm install`', async () => {
Expand Down
11 changes: 11 additions & 0 deletions code/core/src/common/js-package-manager/NPMProxy.ts
Original file line number Diff line number Diff line change
Expand Up @@ -181,6 +181,17 @@ export class NPMProxy extends JsPackageManager {
});
}

public async getRegistryURL() {
const res = await this.executeCommand({
command: 'npm',
// "npm config" commands are not allowed in workspaces per default
// https://github.com/npm/cli/issues/6099#issuecomment-1847584792
args: ['config', 'get', 'registry', '-ws=false', '-iwr'],
});
const url = res.trim();
return url === 'undefined' ? undefined : url;
}

protected async runAddDeps(dependencies: string[], installAsDevDependencies: boolean) {
const { logStream, readLogFile, moveLogFile, removeLogFile } = await createLogStream();
let args = [...dependencies];
Expand Down
15 changes: 0 additions & 15 deletions code/core/src/common/js-package-manager/PNPMProxy.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -24,21 +24,6 @@ describe('PNPM Proxy', () => {
});
});

describe('setRegistryUrl', () => {
it('should run `npm config set registry https://foo.bar`', async () => {
const executeCommandSpy = vi.spyOn(pnpmProxy, 'executeCommand').mockResolvedValueOnce('');

await pnpmProxy.setRegistryURL('https://foo.bar');

expect(executeCommandSpy).toHaveBeenCalledWith(
expect.objectContaining({
command: 'npm',
args: ['config', 'set', 'registry', 'https://foo.bar'],
})
);
});
});

describe('installDependencies', () => {
it('should run `pnpm install`', async () => {
const executeCommandSpy = vi
Expand Down
Loading