Skip to content

Commit

Permalink
telemetry: strip out preset from addon name
Browse files Browse the repository at this point in the history
also move getStorybookMetadata method to the bottom so it's used after the definition
of computeStorybookMetadata
  • Loading branch information
yannbf committed Jun 9, 2022
1 parent 08351b7 commit 56694e9
Show file tree
Hide file tree
Showing 2 changed files with 28 additions and 19 deletions.
13 changes: 11 additions & 2 deletions lib/telemetry/src/storybook-metadata.test.ts
Expand Up @@ -82,12 +82,17 @@ describe('await computeStorybookMetadata', () => {
devDependencies: {
'@storybook/react': 'x.y.z',
'@storybook/addon-essentials': 'x.x.x',
'storybook-addon-deprecated': 'x.x.x',
'@storybook/addon-knobs': 'x.x.y',
'storybook-addon-deprecated': 'x.x.z',
},
},
mainConfig: {
...mainJsMock,
addons: ['@storybook/addon-essentials', 'storybook-addon-deprecated/register'],
addons: [
'@storybook/addon-essentials',
'storybook-addon-deprecated/register',
'@storybook/addon-knobs/preset',
],
},
});

Expand All @@ -97,6 +102,10 @@ describe('await computeStorybookMetadata', () => {
"options": undefined,
"version": "x.x.x",
},
"@storybook/addon-knobs": Object {
"options": undefined,
"version": "x.x.x",
},
"storybook-addon-deprecated": Object {
"options": undefined,
"version": "x.x.x",
Expand Down
34 changes: 17 additions & 17 deletions lib/telemetry/src/storybook-metadata.ts
Expand Up @@ -12,22 +12,6 @@ import type { StorybookMetadata, Dependency, StorybookAddon } from './types';
import { getActualPackageVersion, getActualPackageVersions } from './package-versions';
import { getMonorepoType } from './get-monorepo-type';

let cachedMetadata: StorybookMetadata;
export const getStorybookMetadata = async (_configDir: string) => {
if (cachedMetadata) {
return cachedMetadata;
}

const packageJson = readPkgUp.sync({ cwd: process.cwd() }).packageJson as PackageJson;
const configDir =
(_configDir ||
(getStorybookConfiguration(packageJson.scripts.storybook, '-c', '--config-dir') as string)) ??
'.storybook';
const mainConfig = loadMainConfig({ configDir });
cachedMetadata = await computeStorybookMetadata({ mainConfig, packageJson });
return cachedMetadata;
};

export const metaFrameworks = {
next: 'Next',
'react-scripts': 'CRA',
Expand Down Expand Up @@ -147,7 +131,7 @@ export const computeStorybookMetadata = async ({
let result;
let options;
if (typeof addon === 'string') {
result = addon.replace('/register', '');
result = addon.replace('/register', '').replace('/preset', '');
} else {
options = addon.options;
result = addon.name;
Expand Down Expand Up @@ -204,3 +188,19 @@ export const computeStorybookMetadata = async ({
hasStorybookEslint,
};
};

let cachedMetadata: StorybookMetadata;
export const getStorybookMetadata = async (_configDir: string) => {
if (cachedMetadata) {
return cachedMetadata;
}

const packageJson = readPkgUp.sync({ cwd: process.cwd() }).packageJson as PackageJson;
const configDir =
(_configDir ||
(getStorybookConfiguration(packageJson.scripts.storybook, '-c', '--config-dir') as string)) ??
'.storybook';
const mainConfig = loadMainConfig({ configDir });
cachedMetadata = await computeStorybookMetadata({ mainConfig, packageJson });
return cachedMetadata;
};

0 comments on commit 56694e9

Please sign in to comment.