@storybook/addon-themes 0.0.0-pr-24271-sha-4a56eddc → 0.0.0-pr-24844-sha-520c653e

Sign up to get free protection for your applications and to get access to all the features.
package/README.md CHANGED
@@ -1,8 +1,8 @@
1
- # @storybook/addon-themes
1
+ # `@storybook/addon-themes
2
2
 
3
3
  Storybook Addon Themes can be used which between multiple themes for components inside the preview in [Storybook](https://storybook.js.org).
4
4
 
5
- ![React Storybook Screenshot](https://user-images.githubusercontent.com/18172605/274302488-77a39112-cdbe-4d16-9966-0d8e9e7e3399.gif)
5
+ ![React Storybook Screenshot](https://user-images.githubusercontent.com/42671/98158421-dada2300-1ea8-11eb-8619-af1e7018e1ec.png)
6
6
 
7
7
  ## Usage
8
8
 
package/dist/manager.js CHANGED
@@ -1 +1 @@
1
- "use strict";var __create=Object.create;var __defProp=Object.defineProperty;var __getOwnPropDesc=Object.getOwnPropertyDescriptor;var __getOwnPropNames=Object.getOwnPropertyNames;var __getProtoOf=Object.getPrototypeOf,__hasOwnProp=Object.prototype.hasOwnProperty;var __copyProps=(to,from,except,desc)=>{if(from&&typeof from=="object"||typeof from=="function")for(let key of __getOwnPropNames(from))!__hasOwnProp.call(to,key)&&key!==except&&__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to};var __toESM=(mod,isNodeMode,target)=>(target=mod!=null?__create(__getProtoOf(mod)):{},__copyProps(isNodeMode||!mod||!mod.__esModule?__defProp(target,"default",{value:mod,enumerable:!0}):target,mod));var import_manager_api2=require("@storybook/manager-api");var PARAM_KEY="themes",ADDON_ID=`storybook/${PARAM_KEY}}`;var THEME_SWITCHER_ID=`${ADDON_ID}/theme-switcher`,DEFAULT_ADDON_STATE={themesList:[],themeDefault:void 0},DEFAULT_THEME_PARAMETERS={},THEMING_EVENTS={REGISTER_THEMES:`${ADDON_ID}/REGISTER_THEMES`};var import_react=__toESM(require("react")),import_manager_api=require("@storybook/manager-api"),import_theming=require("@storybook/theming"),import_components=require("@storybook/components"),import_icons=require("@storybook/icons");var IconButtonLabel=import_theming.styled.div(({theme})=>({fontSize:theme.typography.size.s2-1,marginLeft:10})),hasMultipleThemes=themesList=>themesList.length>1,ThemeSwitcher=()=>{let{themeOverride}=(0,import_manager_api.useParameter)(PARAM_KEY,DEFAULT_THEME_PARAMETERS),[{theme:selected},updateGlobals]=(0,import_manager_api.useGlobals)(),[{themesList,themeDefault},updateState]=(0,import_manager_api.useAddonState)(THEME_SWITCHER_ID,DEFAULT_ADDON_STATE);(0,import_manager_api.useChannel)({[THEMING_EVENTS.REGISTER_THEMES]:({themes,defaultTheme})=>{updateState(state=>({...state,themesList:themes,themeDefault:defaultTheme}))}});let label=(0,import_react.useMemo)(()=>{if(themeOverride)return import_react.default.createElement(import_react.default.Fragment,null,"Story override");let themeName=selected||themeDefault;return themeName&&import_react.default.createElement(import_react.default.Fragment,null,`${themeName} theme`)},[themeOverride,themeDefault,selected]);return hasMultipleThemes(themesList)?import_react.default.createElement(import_react.Fragment,null,import_react.default.createElement(import_components.WithTooltip,{placement:"top",trigger:"click",closeOnClick:!0,tooltip:({onHide})=>import_react.default.createElement(import_components.TooltipLinkList,{links:themesList.map(theme=>({id:theme,title:theme,active:selected===theme,onClick:()=>{updateGlobals({theme}),onHide()}}))})},import_react.default.createElement(import_components.IconButton,{key:THEME_SWITCHER_ID,active:!themeOverride,title:"Theme"},import_react.default.createElement(import_icons.PaintBrushIcon,null),label&&import_react.default.createElement(IconButtonLabel,null,label)))):null};import_manager_api2.addons.register(ADDON_ID,()=>{import_manager_api2.addons.add(THEME_SWITCHER_ID,{title:"Themes",type:import_manager_api2.types.TOOL,match:({viewMode})=>!!(viewMode&&viewMode.match(/^(story|docs)$/)),render:ThemeSwitcher,paramKey:PARAM_KEY})});
1
+ "use strict";var __create=Object.create;var __defProp=Object.defineProperty;var __getOwnPropDesc=Object.getOwnPropertyDescriptor;var __getOwnPropNames=Object.getOwnPropertyNames;var __getProtoOf=Object.getPrototypeOf,__hasOwnProp=Object.prototype.hasOwnProperty;var __copyProps=(to,from,except,desc)=>{if(from&&typeof from=="object"||typeof from=="function")for(let key of __getOwnPropNames(from))!__hasOwnProp.call(to,key)&&key!==except&&__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to};var __toESM=(mod,isNodeMode,target)=>(target=mod!=null?__create(__getProtoOf(mod)):{},__copyProps(isNodeMode||!mod||!mod.__esModule?__defProp(target,"default",{value:mod,enumerable:!0}):target,mod));var import_manager_api2=require("@storybook/manager-api");var PARAM_KEY="themes",ADDON_ID=`storybook/${PARAM_KEY}}`;var THEME_SWITCHER_ID=`${ADDON_ID}/theme-switcher`,DEFAULT_ADDON_STATE={themesList:[],themeDefault:void 0},DEFAULT_THEME_PARAMETERS={},THEMING_EVENTS={REGISTER_THEMES:`${ADDON_ID}/REGISTER_THEMES`};var import_react=__toESM(require("react")),import_manager_api=require("@storybook/manager-api"),import_theming=require("@storybook/theming"),import_components=require("@storybook/components");var IconButtonLabel=import_theming.styled.div(({theme})=>({fontSize:theme.typography.size.s2-1,marginLeft:10})),hasMultipleThemes=themesList=>themesList.length>1,ThemeSwitcher=()=>{let{themeOverride}=(0,import_manager_api.useParameter)(PARAM_KEY,DEFAULT_THEME_PARAMETERS),[{theme:selected},updateGlobals]=(0,import_manager_api.useGlobals)(),[{themesList,themeDefault},updateState]=(0,import_manager_api.useAddonState)(THEME_SWITCHER_ID,DEFAULT_ADDON_STATE);(0,import_manager_api.useChannel)({[THEMING_EVENTS.REGISTER_THEMES]:({themes,defaultTheme})=>{updateState(state=>({...state,themesList:themes,themeDefault:defaultTheme}))}});let label=(0,import_react.useMemo)(()=>{if(themeOverride)return import_react.default.createElement(import_react.default.Fragment,null,"Story override");let themeName=selected||themeDefault;return themeName&&import_react.default.createElement(import_react.default.Fragment,null,`${themeName} theme`)},[themeOverride,themeDefault,selected]);return hasMultipleThemes(themesList)?import_react.default.createElement(import_react.Fragment,null,import_react.default.createElement(import_components.WithTooltip,{placement:"top",trigger:"click",closeOnClick:!0,tooltip:({onHide})=>import_react.default.createElement(import_components.TooltipLinkList,{links:themesList.map(theme=>({id:theme,title:theme,active:selected===theme,onClick:()=>{updateGlobals({theme}),onHide()}}))})},import_react.default.createElement(import_components.IconButton,{key:THEME_SWITCHER_ID,active:!themeOverride,title:"Theme"},import_react.default.createElement(import_components.Icons,{icon:"paintbrush"}),label&&import_react.default.createElement(IconButtonLabel,null,label)))):null};import_manager_api2.addons.register(ADDON_ID,()=>{import_manager_api2.addons.add(THEME_SWITCHER_ID,{title:"Themes",type:import_manager_api2.types.TOOL,match:({viewMode})=>!!(viewMode&&viewMode.match(/^(story|docs)$/)),render:ThemeSwitcher,paramKey:PARAM_KEY})});
package/dist/manager.mjs CHANGED
@@ -2,7 +2,6 @@ import { ADDON_ID, THEME_SWITCHER_ID, PARAM_KEY, DEFAULT_THEME_PARAMETERS, DEFAU
2
2
  import { addons, types, useParameter, useGlobals, useAddonState, useChannel } from '@storybook/manager-api';
3
3
  import React, { useMemo, Fragment } from 'react';
4
4
  import { styled } from '@storybook/theming';
5
- import { WithTooltip, TooltipLinkList, IconButton } from '@storybook/components';
6
- import { PaintBrushIcon } from '@storybook/icons';
5
+ import { WithTooltip, TooltipLinkList, IconButton, Icons } from '@storybook/components';
7
6
 
8
- var IconButtonLabel=styled.div(({theme})=>({fontSize:theme.typography.size.s2-1,marginLeft:10})),hasMultipleThemes=themesList=>themesList.length>1,ThemeSwitcher=()=>{let{themeOverride}=useParameter(PARAM_KEY,DEFAULT_THEME_PARAMETERS),[{theme:selected},updateGlobals]=useGlobals(),[{themesList,themeDefault},updateState]=useAddonState(THEME_SWITCHER_ID,DEFAULT_ADDON_STATE);useChannel({[THEMING_EVENTS.REGISTER_THEMES]:({themes,defaultTheme})=>{updateState(state=>({...state,themesList:themes,themeDefault:defaultTheme}));}});let label=useMemo(()=>{if(themeOverride)return React.createElement(React.Fragment,null,"Story override");let themeName=selected||themeDefault;return themeName&&React.createElement(React.Fragment,null,`${themeName} theme`)},[themeOverride,themeDefault,selected]);return hasMultipleThemes(themesList)?React.createElement(Fragment,null,React.createElement(WithTooltip,{placement:"top",trigger:"click",closeOnClick:!0,tooltip:({onHide})=>React.createElement(TooltipLinkList,{links:themesList.map(theme=>({id:theme,title:theme,active:selected===theme,onClick:()=>{updateGlobals({theme}),onHide();}}))})},React.createElement(IconButton,{key:THEME_SWITCHER_ID,active:!themeOverride,title:"Theme"},React.createElement(PaintBrushIcon,null),label&&React.createElement(IconButtonLabel,null,label)))):null};addons.register(ADDON_ID,()=>{addons.add(THEME_SWITCHER_ID,{title:"Themes",type:types.TOOL,match:({viewMode})=>!!(viewMode&&viewMode.match(/^(story|docs)$/)),render:ThemeSwitcher,paramKey:PARAM_KEY});});
7
+ var IconButtonLabel=styled.div(({theme})=>({fontSize:theme.typography.size.s2-1,marginLeft:10})),hasMultipleThemes=themesList=>themesList.length>1,ThemeSwitcher=()=>{let{themeOverride}=useParameter(PARAM_KEY,DEFAULT_THEME_PARAMETERS),[{theme:selected},updateGlobals]=useGlobals(),[{themesList,themeDefault},updateState]=useAddonState(THEME_SWITCHER_ID,DEFAULT_ADDON_STATE);useChannel({[THEMING_EVENTS.REGISTER_THEMES]:({themes,defaultTheme})=>{updateState(state=>({...state,themesList:themes,themeDefault:defaultTheme}));}});let label=useMemo(()=>{if(themeOverride)return React.createElement(React.Fragment,null,"Story override");let themeName=selected||themeDefault;return themeName&&React.createElement(React.Fragment,null,`${themeName} theme`)},[themeOverride,themeDefault,selected]);return hasMultipleThemes(themesList)?React.createElement(Fragment,null,React.createElement(WithTooltip,{placement:"top",trigger:"click",closeOnClick:!0,tooltip:({onHide})=>React.createElement(TooltipLinkList,{links:themesList.map(theme=>({id:theme,title:theme,active:selected===theme,onClick:()=>{updateGlobals({theme}),onHide();}}))})},React.createElement(IconButton,{key:THEME_SWITCHER_ID,active:!themeOverride,title:"Theme"},React.createElement(Icons,{icon:"paintbrush"}),label&&React.createElement(IconButtonLabel,null,label)))):null};addons.register(ADDON_ID,()=>{addons.add(THEME_SWITCHER_ID,{title:"Themes",type:types.TOOL,match:({viewMode})=>!!(viewMode&&viewMode.match(/^(story|docs)$/)),render:ThemeSwitcher,paramKey:PARAM_KEY});});
package/dist/preview.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import { ProjectAnnotations, Renderer } from '@storybook/types';
2
2
 
3
- declare const globals: ProjectAnnotations<Renderer>['globals'];
3
+ declare const preview: ProjectAnnotations<Renderer>;
4
4
 
5
- export { globals };
5
+ export { preview as default };
package/dist/preview.js CHANGED
@@ -1 +1 @@
1
- "use strict";var __defProp=Object.defineProperty;var __getOwnPropDesc=Object.getOwnPropertyDescriptor;var __getOwnPropNames=Object.getOwnPropertyNames;var __hasOwnProp=Object.prototype.hasOwnProperty;var __export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:!0})},__copyProps=(to,from,except,desc)=>{if(from&&typeof from=="object"||typeof from=="function")for(let key of __getOwnPropNames(from))!__hasOwnProp.call(to,key)&&key!==except&&__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to};var __toCommonJS=mod=>__copyProps(__defProp({},"__esModule",{value:!0}),mod);var preview_exports={};__export(preview_exports,{globals:()=>globals});module.exports=__toCommonJS(preview_exports);var PARAM_KEY="themes",ADDON_ID=`storybook/${PARAM_KEY}}`,GLOBAL_KEY="theme",THEME_SWITCHER_ID=`${ADDON_ID}/theme-switcher`;var THEMING_EVENTS={REGISTER_THEMES:`${ADDON_ID}/REGISTER_THEMES`};var globals={[GLOBAL_KEY]:""};0&&(module.exports={globals});
1
+ "use strict";var __defProp=Object.defineProperty;var __getOwnPropDesc=Object.getOwnPropertyDescriptor;var __getOwnPropNames=Object.getOwnPropertyNames;var __hasOwnProp=Object.prototype.hasOwnProperty;var __export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:!0})},__copyProps=(to,from,except,desc)=>{if(from&&typeof from=="object"||typeof from=="function")for(let key of __getOwnPropNames(from))!__hasOwnProp.call(to,key)&&key!==except&&__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to};var __toCommonJS=mod=>__copyProps(__defProp({},"__esModule",{value:!0}),mod);var preview_exports={};__export(preview_exports,{default:()=>preview_default});module.exports=__toCommonJS(preview_exports);var PARAM_KEY="themes",ADDON_ID=`storybook/${PARAM_KEY}}`,GLOBAL_KEY="theme",THEME_SWITCHER_ID=`${ADDON_ID}/theme-switcher`;var THEMING_EVENTS={REGISTER_THEMES:`${ADDON_ID}/REGISTER_THEMES`};var preview={globals:{[GLOBAL_KEY]:""}},preview_default=preview;
package/dist/preview.mjs CHANGED
@@ -1,5 +1,5 @@
1
1
  import { GLOBAL_KEY } from './chunk-5PKFUQBM.mjs';
2
2
 
3
- var globals={[GLOBAL_KEY]:""};
3
+ var preview={globals:{[GLOBAL_KEY]:""}},preview_default=preview;
4
4
 
5
- export { globals };
5
+ export { preview_default as default };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@storybook/addon-themes",
3
- "version": "0.0.0-pr-24271-sha-4a56eddc",
3
+ "version": "0.0.0-pr-24844-sha-520c653e",
4
4
  "description": "Switch between multiple themes for you components in Storybook",
5
5
  "keywords": [
6
6
  "css",
@@ -74,18 +74,17 @@
74
74
  "prep": "../../../scripts/prepare/bundle.ts"
75
75
  },
76
76
  "dependencies": {
77
- "@storybook/client-logger": "0.0.0-pr-24271-sha-4a56eddc",
78
- "@storybook/components": "0.0.0-pr-24271-sha-4a56eddc",
79
- "@storybook/core-events": "0.0.0-pr-24271-sha-4a56eddc",
80
- "@storybook/icons": "^1.2.1",
81
- "@storybook/manager-api": "0.0.0-pr-24271-sha-4a56eddc",
82
- "@storybook/preview-api": "0.0.0-pr-24271-sha-4a56eddc",
83
- "@storybook/theming": "0.0.0-pr-24271-sha-4a56eddc",
84
- "@storybook/types": "0.0.0-pr-24271-sha-4a56eddc",
77
+ "@storybook/client-logger": "0.0.0-pr-24844-sha-520c653e",
78
+ "@storybook/components": "0.0.0-pr-24844-sha-520c653e",
79
+ "@storybook/core-events": "0.0.0-pr-24844-sha-520c653e",
80
+ "@storybook/manager-api": "0.0.0-pr-24844-sha-520c653e",
81
+ "@storybook/preview-api": "0.0.0-pr-24844-sha-520c653e",
82
+ "@storybook/theming": "0.0.0-pr-24844-sha-520c653e",
83
+ "@storybook/types": "0.0.0-pr-24844-sha-520c653e",
85
84
  "ts-dedent": "^2.0.0"
86
85
  },
87
86
  "devDependencies": {
88
- "typescript": "~5.2.2"
87
+ "typescript": "~4.9.3"
89
88
  },
90
89
  "peerDependencies": {
91
90
  "react": "^16.8.0 || ^17.0.0 || ^18.0.0",
@@ -115,6 +114,6 @@
115
114
  "unsupportedFrameworks": [
116
115
  "react-native"
117
116
  ],
118
- "icon": "https://user-images.githubusercontent.com/18172605/264114587-e4b32190-a9b7-4afa-b739-c873fc0498a6.png"
117
+ "icon": ""
119
118
  }
120
119
  }
package/postinstall.js CHANGED
@@ -1,24 +1,17 @@
1
1
  const { spawn } = require('child_process');
2
2
 
3
3
  const PACKAGE_MANAGER_TO_COMMAND = {
4
- npm: ['npx'],
5
- pnpm: ['pnpm', 'dlx'],
6
- yarn1: ['npx'],
7
- yarn2: ['yarn', 'dlx'],
4
+ npm: 'npx',
5
+ yarn1: 'npx',
6
+ yarn2: 'yarn dlx',
7
+ pnpm: 'pnpm dlx',
8
8
  };
9
9
 
10
- const selectPackageManagerCommand = (packageManager) => PACKAGE_MANAGER_TO_COMMAND[packageManager];
10
+ module.exports = function postinstall(options) {
11
+ const command = PACKAGE_MANAGER_TO_COMMAND[options.packageManager];
11
12
 
12
- const spawnPackageManagerScript = async (packageManager, args) => {
13
- const [command, ...baseArgs] = selectPackageManagerCommand(packageManager);
14
-
15
- await spawn(command, [...baseArgs, ...args], {
13
+ spawn(command, ['@storybook/auto-config', 'themes'], {
16
14
  stdio: 'inherit',
17
15
  cwd: process.cwd(),
18
- shell: true,
19
16
  });
20
17
  };
21
-
22
- module.exports = async function postinstall({ packageManager = 'npm' }) {
23
- await spawnPackageManagerScript(packageManager, ['@storybook/auto-config', 'themes']);
24
- };