@storybook/addon-backgrounds 6.5.9 → 7.0.0-alpha.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/components/ColorIcon.js +13 -15
- package/dist/cjs/constants.js +5 -5
- package/dist/cjs/containers/BackgroundSelector.js +43 -106
- package/dist/cjs/containers/GridSelector.js +14 -63
- package/dist/cjs/decorators/withBackground.js +20 -25
- package/dist/cjs/decorators/withGrid.js +44 -39
- package/dist/cjs/helpers/index.js +27 -50
- package/dist/cjs/manager.js +7 -34
- package/dist/cjs/preview.js +2 -2
- package/dist/esm/components/ColorIcon.js +13 -15
- package/dist/esm/constants.js +5 -5
- package/dist/esm/containers/BackgroundSelector.js +39 -82
- package/dist/esm/containers/GridSelector.js +12 -44
- package/dist/esm/decorators/withBackground.js +20 -21
- package/dist/esm/decorators/withGrid.js +40 -33
- package/dist/esm/helpers/index.js +27 -43
- package/dist/esm/manager.js +5 -10
- package/dist/esm/preview.js +2 -2
- package/dist/{ts3.9 → types}/components/ColorIcon.d.ts +0 -0
- package/dist/{ts3.9 → types}/constants.d.ts +0 -0
- package/dist/{ts3.9 → types}/containers/BackgroundSelector.d.ts +0 -0
- package/dist/{ts3.9 → types}/containers/GridSelector.d.ts +0 -0
- package/dist/{ts3.9 → types}/decorators/withBackground.d.ts +0 -0
- package/dist/{ts3.9 → types}/decorators/withGrid.d.ts +0 -0
- package/dist/{ts3.9 → types}/helpers/index.d.ts +0 -0
- package/dist/{ts3.9 → types}/index.d.ts +0 -0
- package/dist/{ts3.9 → types}/manager.d.ts +0 -0
- package/dist/{ts3.9 → types}/preview.d.ts +0 -0
- package/dist/{ts3.9 → types}/types/index.d.ts +0 -0
- package/package.json +9 -21
- package/dist/modern/components/ColorIcon.js +0 -14
- package/dist/modern/constants.js +0 -6
- package/dist/modern/containers/BackgroundSelector.js +0 -93
- package/dist/modern/containers/GridSelector.js +0 -34
- package/dist/modern/decorators/withBackground.js +0 -42
- package/dist/modern/decorators/withGrid.js +0 -67
- package/dist/modern/helpers/index.js +0 -86
- package/dist/modern/index.js +0 -6
- package/dist/modern/manager.js +0 -15
- package/dist/modern/preview.js +0 -19
- package/dist/modern/types/index.js +0 -1
- package/dist/ts3.4/components/ColorIcon.d.ts +0 -3
- package/dist/ts3.4/constants.d.ts +0 -6
- package/dist/ts3.4/containers/BackgroundSelector.d.ts +0 -2
- package/dist/ts3.4/containers/GridSelector.d.ts +0 -2
- package/dist/ts3.4/decorators/withBackground.d.ts +0 -2
- package/dist/ts3.4/decorators/withGrid.d.ts +0 -2
- package/dist/ts3.4/helpers/index.d.ts +0 -6
- package/dist/ts3.4/index.d.ts +0 -2
- package/dist/ts3.4/manager.d.ts +0 -1
- package/dist/ts3.4/preview.d.ts +0 -14
- package/dist/ts3.4/types/index.d.ts +0 -28
|
@@ -7,20 +7,18 @@ exports.ColorIcon = void 0;
|
|
|
7
7
|
|
|
8
8
|
var _theming = require("@storybook/theming");
|
|
9
9
|
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
};
|
|
24
|
-
});
|
|
10
|
+
const ColorIcon = _theming.styled.span(({
|
|
11
|
+
background
|
|
12
|
+
}) => ({
|
|
13
|
+
borderRadius: '1rem',
|
|
14
|
+
display: 'block',
|
|
15
|
+
height: '1rem',
|
|
16
|
+
width: '1rem',
|
|
17
|
+
background
|
|
18
|
+
}), ({
|
|
19
|
+
theme
|
|
20
|
+
}) => ({
|
|
21
|
+
boxShadow: `${theme.appBorderColor} 0 0 0 1px inset`
|
|
22
|
+
}));
|
|
25
23
|
|
|
26
24
|
exports.ColorIcon = ColorIcon;
|
package/dist/cjs/constants.js
CHANGED
|
@@ -4,13 +4,13 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.PARAM_KEY = exports.GRID_PARAM_KEY = exports.EVENTS = exports.ADDON_ID = void 0;
|
|
7
|
-
|
|
7
|
+
const ADDON_ID = 'storybook/background';
|
|
8
8
|
exports.ADDON_ID = ADDON_ID;
|
|
9
|
-
|
|
9
|
+
const PARAM_KEY = 'backgrounds';
|
|
10
10
|
exports.PARAM_KEY = PARAM_KEY;
|
|
11
|
-
|
|
11
|
+
const GRID_PARAM_KEY = 'grid';
|
|
12
12
|
exports.GRID_PARAM_KEY = GRID_PARAM_KEY;
|
|
13
|
-
|
|
14
|
-
UPDATE:
|
|
13
|
+
const EVENTS = {
|
|
14
|
+
UPDATE: `${ADDON_ID}/update`
|
|
15
15
|
};
|
|
16
16
|
exports.EVENTS = EVENTS;
|
|
@@ -1,44 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
4
|
-
|
|
5
|
-
require("core-js/modules/es.symbol.js");
|
|
6
|
-
|
|
7
|
-
require("core-js/modules/es.symbol.description.js");
|
|
8
|
-
|
|
9
|
-
require("core-js/modules/es.symbol.iterator.js");
|
|
10
|
-
|
|
11
|
-
require("core-js/modules/es.string.iterator.js");
|
|
12
|
-
|
|
13
|
-
require("core-js/modules/es.array.from.js");
|
|
14
|
-
|
|
15
|
-
require("core-js/modules/es.array.slice.js");
|
|
16
|
-
|
|
17
|
-
require("core-js/modules/es.regexp.exec.js");
|
|
18
|
-
|
|
19
|
-
require("core-js/modules/es.weak-map.js");
|
|
20
|
-
|
|
21
|
-
require("core-js/modules/es.object.get-own-property-descriptor.js");
|
|
22
|
-
|
|
23
3
|
Object.defineProperty(exports, "__esModule", {
|
|
24
4
|
value: true
|
|
25
5
|
});
|
|
26
6
|
exports.BackgroundSelector = void 0;
|
|
27
7
|
|
|
28
|
-
require("core-js/modules/es.array.map.js");
|
|
29
|
-
|
|
30
|
-
require("core-js/modules/es.function.name.js");
|
|
31
|
-
|
|
32
|
-
require("core-js/modules/es.array.concat.js");
|
|
33
|
-
|
|
34
|
-
require("core-js/modules/es.array.iterator.js");
|
|
35
|
-
|
|
36
|
-
require("core-js/modules/es.object.to-string.js");
|
|
37
|
-
|
|
38
|
-
require("core-js/modules/web.dom-collections.iterator.js");
|
|
39
|
-
|
|
40
|
-
require("core-js/modules/es.object.assign.js");
|
|
41
|
-
|
|
42
8
|
var _react = _interopRequireWildcard(require("react"));
|
|
43
9
|
|
|
44
10
|
var _memoizerific = _interopRequireDefault(require("memoizerific"));
|
|
@@ -57,79 +23,47 @@ var _helpers = require("../helpers");
|
|
|
57
23
|
|
|
58
24
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
59
25
|
|
|
60
|
-
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function
|
|
61
|
-
|
|
62
|
-
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null ||
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
|
|
85
|
-
|
|
86
|
-
var createBackgroundSelectorItem = (0, _memoizerific.default)(1000)(function (id, name, value, hasSwatch, change, active) {
|
|
87
|
-
return {
|
|
88
|
-
id: id || name,
|
|
89
|
-
title: name,
|
|
90
|
-
onClick: function onClick() {
|
|
91
|
-
change({
|
|
92
|
-
selected: value,
|
|
93
|
-
name: name
|
|
94
|
-
});
|
|
95
|
-
},
|
|
96
|
-
value: value,
|
|
97
|
-
right: hasSwatch ? /*#__PURE__*/_react.default.createElement(_ColorIcon.ColorIcon, {
|
|
98
|
-
background: value
|
|
99
|
-
}) : undefined,
|
|
100
|
-
active: active
|
|
101
|
-
};
|
|
102
|
-
});
|
|
103
|
-
var getDisplayedItems = (0, _memoizerific.default)(10)(function (backgrounds, selectedBackgroundColor, change) {
|
|
104
|
-
var backgroundSelectorItems = backgrounds.map(function (_ref) {
|
|
105
|
-
var name = _ref.name,
|
|
106
|
-
value = _ref.value;
|
|
107
|
-
return createBackgroundSelectorItem(null, name, value, true, change, value === selectedBackgroundColor);
|
|
108
|
-
});
|
|
26
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
27
|
+
|
|
28
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
29
|
+
|
|
30
|
+
const createBackgroundSelectorItem = (0, _memoizerific.default)(1000)((id, name, value, hasSwatch, change, active) => ({
|
|
31
|
+
id: id || name,
|
|
32
|
+
title: name,
|
|
33
|
+
onClick: () => {
|
|
34
|
+
change({
|
|
35
|
+
selected: value,
|
|
36
|
+
name
|
|
37
|
+
});
|
|
38
|
+
},
|
|
39
|
+
value,
|
|
40
|
+
right: hasSwatch ? /*#__PURE__*/_react.default.createElement(_ColorIcon.ColorIcon, {
|
|
41
|
+
background: value
|
|
42
|
+
}) : undefined,
|
|
43
|
+
active
|
|
44
|
+
}));
|
|
45
|
+
const getDisplayedItems = (0, _memoizerific.default)(10)((backgrounds, selectedBackgroundColor, change) => {
|
|
46
|
+
const backgroundSelectorItems = backgrounds.map(({
|
|
47
|
+
name,
|
|
48
|
+
value
|
|
49
|
+
}) => createBackgroundSelectorItem(null, name, value, true, change, value === selectedBackgroundColor));
|
|
109
50
|
|
|
110
51
|
if (selectedBackgroundColor !== 'transparent') {
|
|
111
|
-
return [createBackgroundSelectorItem('reset', 'Clear background', 'transparent', null, change, false)]
|
|
52
|
+
return [createBackgroundSelectorItem('reset', 'Clear background', 'transparent', null, change, false), ...backgroundSelectorItems];
|
|
112
53
|
}
|
|
113
54
|
|
|
114
55
|
return backgroundSelectorItems;
|
|
115
56
|
});
|
|
116
|
-
|
|
57
|
+
const DEFAULT_BACKGROUNDS_CONFIG = {
|
|
117
58
|
default: null,
|
|
118
59
|
disable: true,
|
|
119
60
|
values: []
|
|
120
61
|
};
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
var _useGlobals = (0, _api.useGlobals)(),
|
|
127
|
-
_useGlobals2 = _slicedToArray(_useGlobals, 2),
|
|
128
|
-
globals = _useGlobals2[0],
|
|
129
|
-
updateGlobals = _useGlobals2[1];
|
|
130
|
-
|
|
131
|
-
var globalsBackgroundColor = (_globals$BACKGROUNDS_ = globals[_constants.PARAM_KEY]) === null || _globals$BACKGROUNDS_ === void 0 ? void 0 : _globals$BACKGROUNDS_.value;
|
|
132
|
-
var selectedBackgroundColor = (0, _react.useMemo)(function () {
|
|
62
|
+
const BackgroundSelector = /*#__PURE__*/(0, _react.memo)(() => {
|
|
63
|
+
const backgroundsConfig = (0, _api.useParameter)(_constants.PARAM_KEY, DEFAULT_BACKGROUNDS_CONFIG);
|
|
64
|
+
const [globals, updateGlobals] = (0, _api.useGlobals)();
|
|
65
|
+
const globalsBackgroundColor = globals[_constants.PARAM_KEY]?.value;
|
|
66
|
+
const selectedBackgroundColor = (0, _react.useMemo)(() => {
|
|
133
67
|
return (0, _helpers.getBackgroundColorByName)(globalsBackgroundColor, backgroundsConfig.values, backgroundsConfig.default);
|
|
134
68
|
}, [backgroundsConfig, globalsBackgroundColor]);
|
|
135
69
|
|
|
@@ -137,10 +71,12 @@ var BackgroundSelector = /*#__PURE__*/(0, _react.memo)(function () {
|
|
|
137
71
|
_clientLogger.logger.warn('Addon Backgrounds api has changed in Storybook 6.0. Please refer to the migration guide: https://github.com/storybookjs/storybook/blob/next/MIGRATION.md');
|
|
138
72
|
}
|
|
139
73
|
|
|
140
|
-
|
|
141
|
-
updateGlobals(
|
|
142
|
-
|
|
143
|
-
|
|
74
|
+
const onBackgroundChange = (0, _react.useCallback)(value => {
|
|
75
|
+
updateGlobals({
|
|
76
|
+
[_constants.PARAM_KEY]: Object.assign({}, globals[_constants.PARAM_KEY], {
|
|
77
|
+
value
|
|
78
|
+
})
|
|
79
|
+
});
|
|
144
80
|
}, [backgroundsConfig, globals, updateGlobals]);
|
|
145
81
|
|
|
146
82
|
if (backgroundsConfig.disable) {
|
|
@@ -151,12 +87,13 @@ var BackgroundSelector = /*#__PURE__*/(0, _react.memo)(function () {
|
|
|
151
87
|
placement: "top",
|
|
152
88
|
trigger: "click",
|
|
153
89
|
closeOnClick: true,
|
|
154
|
-
tooltip:
|
|
155
|
-
|
|
90
|
+
tooltip: ({
|
|
91
|
+
onHide
|
|
92
|
+
}) => {
|
|
156
93
|
return /*#__PURE__*/_react.default.createElement(_components.TooltipLinkList, {
|
|
157
|
-
links: getDisplayedItems(backgroundsConfig.values, selectedBackgroundColor,
|
|
158
|
-
|
|
159
|
-
|
|
94
|
+
links: getDisplayedItems(backgroundsConfig.values, selectedBackgroundColor, ({
|
|
95
|
+
selected
|
|
96
|
+
}) => {
|
|
160
97
|
if (selectedBackgroundColor !== selected) {
|
|
161
98
|
onBackgroundChange(selected);
|
|
162
99
|
}
|
|
@@ -1,40 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
4
|
-
|
|
5
|
-
require("core-js/modules/es.symbol.js");
|
|
6
|
-
|
|
7
|
-
require("core-js/modules/es.symbol.description.js");
|
|
8
|
-
|
|
9
|
-
require("core-js/modules/es.object.to-string.js");
|
|
10
|
-
|
|
11
|
-
require("core-js/modules/es.symbol.iterator.js");
|
|
12
|
-
|
|
13
|
-
require("core-js/modules/es.array.iterator.js");
|
|
14
|
-
|
|
15
|
-
require("core-js/modules/es.string.iterator.js");
|
|
16
|
-
|
|
17
|
-
require("core-js/modules/web.dom-collections.iterator.js");
|
|
18
|
-
|
|
19
|
-
require("core-js/modules/es.array.slice.js");
|
|
20
|
-
|
|
21
|
-
require("core-js/modules/es.function.name.js");
|
|
22
|
-
|
|
23
|
-
require("core-js/modules/es.array.from.js");
|
|
24
|
-
|
|
25
|
-
require("core-js/modules/es.regexp.exec.js");
|
|
26
|
-
|
|
27
|
-
require("core-js/modules/es.weak-map.js");
|
|
28
|
-
|
|
29
|
-
require("core-js/modules/es.object.get-own-property-descriptor.js");
|
|
30
|
-
|
|
31
3
|
Object.defineProperty(exports, "__esModule", {
|
|
32
4
|
value: true
|
|
33
5
|
});
|
|
34
6
|
exports.GridSelector = void 0;
|
|
35
7
|
|
|
36
|
-
require("core-js/modules/es.object.assign.js");
|
|
37
|
-
|
|
38
8
|
var _react = _interopRequireWildcard(require("react"));
|
|
39
9
|
|
|
40
10
|
var _api = require("@storybook/api");
|
|
@@ -43,53 +13,34 @@ var _components = require("@storybook/components");
|
|
|
43
13
|
|
|
44
14
|
var _constants = require("../constants");
|
|
45
15
|
|
|
46
|
-
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function
|
|
47
|
-
|
|
48
|
-
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
49
|
-
|
|
50
|
-
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
51
|
-
|
|
52
|
-
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
53
|
-
|
|
54
|
-
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
16
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
55
17
|
|
|
56
|
-
function
|
|
18
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
57
19
|
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
var GridSelector = /*#__PURE__*/(0, _react.memo)(function () {
|
|
65
|
-
var _globals$BACKGROUNDS_;
|
|
66
|
-
|
|
67
|
-
var _useGlobals = (0, _api.useGlobals)(),
|
|
68
|
-
_useGlobals2 = _slicedToArray(_useGlobals, 2),
|
|
69
|
-
globals = _useGlobals2[0],
|
|
70
|
-
updateGlobals = _useGlobals2[1];
|
|
71
|
-
|
|
72
|
-
var _useParameter = (0, _api.useParameter)(_constants.PARAM_KEY, {
|
|
20
|
+
const GridSelector = /*#__PURE__*/(0, _react.memo)(() => {
|
|
21
|
+
const [globals, updateGlobals] = (0, _api.useGlobals)();
|
|
22
|
+
const {
|
|
23
|
+
grid
|
|
24
|
+
} = (0, _api.useParameter)(_constants.PARAM_KEY, {
|
|
73
25
|
grid: {
|
|
74
26
|
disable: false
|
|
75
27
|
}
|
|
76
|
-
})
|
|
77
|
-
grid = _useParameter.grid;
|
|
28
|
+
});
|
|
78
29
|
|
|
79
|
-
if (grid
|
|
30
|
+
if (grid?.disable) {
|
|
80
31
|
return null;
|
|
81
32
|
}
|
|
82
33
|
|
|
83
|
-
|
|
34
|
+
const isActive = globals[_constants.PARAM_KEY]?.grid || false;
|
|
84
35
|
return /*#__PURE__*/_react.default.createElement(_components.IconButton, {
|
|
85
36
|
key: "background",
|
|
86
37
|
active: isActive,
|
|
87
38
|
title: "Apply a grid to the preview",
|
|
88
|
-
onClick:
|
|
89
|
-
|
|
39
|
+
onClick: () => updateGlobals({
|
|
40
|
+
[_constants.PARAM_KEY]: Object.assign({}, globals[_constants.PARAM_KEY], {
|
|
90
41
|
grid: !isActive
|
|
91
|
-
})
|
|
92
|
-
}
|
|
42
|
+
})
|
|
43
|
+
})
|
|
93
44
|
}, /*#__PURE__*/_react.default.createElement(_components.Icons, {
|
|
94
45
|
icon: "grid"
|
|
95
46
|
}));
|
|
@@ -5,44 +5,39 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.withBackground = void 0;
|
|
7
7
|
|
|
8
|
-
require("core-js/modules/es.array.iterator.js");
|
|
9
|
-
|
|
10
|
-
require("core-js/modules/es.object.to-string.js");
|
|
11
|
-
|
|
12
|
-
require("core-js/modules/web.dom-collections.iterator.js");
|
|
13
|
-
|
|
14
|
-
require("core-js/modules/es.array.concat.js");
|
|
15
|
-
|
|
16
8
|
var _addons = require("@storybook/addons");
|
|
17
9
|
|
|
18
10
|
var _constants = require("../constants");
|
|
19
11
|
|
|
20
12
|
var _helpers = require("../helpers");
|
|
21
13
|
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
14
|
+
const withBackground = (StoryFn, context) => {
|
|
15
|
+
const {
|
|
16
|
+
globals,
|
|
17
|
+
parameters
|
|
18
|
+
} = context;
|
|
19
|
+
const globalsBackgroundColor = globals[_constants.PARAM_KEY]?.value;
|
|
20
|
+
const backgroundsConfig = parameters[_constants.PARAM_KEY];
|
|
21
|
+
const selectedBackgroundColor = (0, _addons.useMemo)(() => {
|
|
30
22
|
if (backgroundsConfig.disable) {
|
|
31
23
|
return 'transparent';
|
|
32
24
|
}
|
|
33
25
|
|
|
34
26
|
return (0, _helpers.getBackgroundColorByName)(globalsBackgroundColor, backgroundsConfig.values, backgroundsConfig.default);
|
|
35
27
|
}, [backgroundsConfig, globalsBackgroundColor]);
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
28
|
+
const isActive = (0, _addons.useMemo)(() => selectedBackgroundColor && selectedBackgroundColor !== 'transparent', [selectedBackgroundColor]);
|
|
29
|
+
const selector = context.viewMode === 'docs' ? `#anchor--${context.id} .docs-story` : '.sb-show-main';
|
|
30
|
+
const backgroundStyles = (0, _addons.useMemo)(() => {
|
|
31
|
+
const transitionStyle = 'transition: background-color 0.3s;';
|
|
32
|
+
return `
|
|
33
|
+
${selector} {
|
|
34
|
+
background: ${selectedBackgroundColor} !important;
|
|
35
|
+
${(0, _helpers.isReduceMotionEnabled)() ? '' : transitionStyle}
|
|
36
|
+
}
|
|
37
|
+
`;
|
|
43
38
|
}, [selectedBackgroundColor, selector]);
|
|
44
|
-
(0, _addons.useEffect)(
|
|
45
|
-
|
|
39
|
+
(0, _addons.useEffect)(() => {
|
|
40
|
+
const selectorId = context.viewMode === 'docs' ? `addon-backgrounds-docs-${context.id}` : `addon-backgrounds-color`;
|
|
46
41
|
|
|
47
42
|
if (!isActive) {
|
|
48
43
|
(0, _helpers.clearStyles)(selectorId);
|
|
@@ -1,18 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
require("core-js/modules/es.array.slice.js");
|
|
4
|
-
|
|
5
|
-
require("core-js/modules/es.object.freeze.js");
|
|
6
|
-
|
|
7
3
|
Object.defineProperty(exports, "__esModule", {
|
|
8
4
|
value: true
|
|
9
5
|
});
|
|
10
6
|
exports.withGrid = void 0;
|
|
11
7
|
|
|
12
|
-
require("core-js/modules/es.array.join.js");
|
|
13
|
-
|
|
14
|
-
require("core-js/modules/es.array.concat.js");
|
|
15
|
-
|
|
16
8
|
var _tsDedent = _interopRequireDefault(require("ts-dedent"));
|
|
17
9
|
|
|
18
10
|
var _utilDeprecate = _interopRequireDefault(require("util-deprecate"));
|
|
@@ -23,46 +15,59 @@ var _helpers = require("../helpers");
|
|
|
23
15
|
|
|
24
16
|
var _constants = require("../constants");
|
|
25
17
|
|
|
26
|
-
var _templateObject;
|
|
27
|
-
|
|
28
18
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
29
19
|
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
20
|
+
const deprecatedCellSizeWarning = (0, _utilDeprecate.default)(() => {}, (0, _tsDedent.default)`
|
|
21
|
+
Backgrounds Addon: The cell size parameter has been changed.
|
|
22
|
+
|
|
23
|
+
- parameters.grid.cellSize should now be parameters.backgrounds.grid.cellSize
|
|
24
|
+
See https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#deprecated-grid-parameter
|
|
25
|
+
`);
|
|
26
|
+
|
|
27
|
+
const withGrid = (StoryFn, context) => {
|
|
28
|
+
const {
|
|
29
|
+
globals,
|
|
30
|
+
parameters
|
|
31
|
+
} = context;
|
|
32
|
+
const gridParameters = parameters[_constants.PARAM_KEY].grid;
|
|
33
|
+
const isActive = globals[_constants.PARAM_KEY]?.grid === true && gridParameters.disable !== true;
|
|
34
|
+
const {
|
|
35
|
+
cellAmount,
|
|
36
|
+
cellSize,
|
|
37
|
+
opacity
|
|
38
|
+
} = gridParameters;
|
|
39
|
+
const isInDocs = context.viewMode === 'docs';
|
|
40
|
+
let gridSize;
|
|
41
|
+
|
|
42
|
+
if (parameters.grid?.cellSize) {
|
|
48
43
|
gridSize = parameters.grid.cellSize;
|
|
49
44
|
deprecatedCellSizeWarning();
|
|
50
45
|
} else {
|
|
51
46
|
gridSize = cellSize;
|
|
52
47
|
}
|
|
53
48
|
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
return
|
|
49
|
+
const isLayoutPadded = parameters.layout === undefined || parameters.layout === 'padded'; // 16px offset in the grid to account for padded layout
|
|
50
|
+
|
|
51
|
+
const defaultOffset = isLayoutPadded ? 16 : 0;
|
|
52
|
+
const offsetX = gridParameters.offsetX ?? (isInDocs ? 20 : defaultOffset);
|
|
53
|
+
const offsetY = gridParameters.offsetY ?? (isInDocs ? 20 : defaultOffset);
|
|
54
|
+
const gridStyles = (0, _addons.useMemo)(() => {
|
|
55
|
+
const selector = context.viewMode === 'docs' ? `#anchor--${context.id} .docs-story` : '.sb-show-main';
|
|
56
|
+
const backgroundSize = [`${gridSize * cellAmount}px ${gridSize * cellAmount}px`, `${gridSize * cellAmount}px ${gridSize * cellAmount}px`, `${gridSize}px ${gridSize}px`, `${gridSize}px ${gridSize}px`].join(', ');
|
|
57
|
+
return `
|
|
58
|
+
${selector} {
|
|
59
|
+
background-size: ${backgroundSize} !important;
|
|
60
|
+
background-position: ${offsetX}px ${offsetY}px, ${offsetX}px ${offsetY}px, ${offsetX}px ${offsetY}px, ${offsetX}px ${offsetY}px !important;
|
|
61
|
+
background-blend-mode: difference !important;
|
|
62
|
+
background-image: linear-gradient(rgba(130, 130, 130, ${opacity}) 1px, transparent 1px),
|
|
63
|
+
linear-gradient(90deg, rgba(130, 130, 130, ${opacity}) 1px, transparent 1px),
|
|
64
|
+
linear-gradient(rgba(130, 130, 130, ${opacity / 2}) 1px, transparent 1px),
|
|
65
|
+
linear-gradient(90deg, rgba(130, 130, 130, ${opacity / 2}) 1px, transparent 1px) !important;
|
|
66
|
+
}
|
|
67
|
+
`;
|
|
63
68
|
}, [gridSize]);
|
|
64
|
-
(0, _addons.useEffect)(
|
|
65
|
-
|
|
69
|
+
(0, _addons.useEffect)(() => {
|
|
70
|
+
const selectorId = context.viewMode === 'docs' ? `addon-backgrounds-grid-docs-${context.id}` : `addon-backgrounds-grid`;
|
|
66
71
|
|
|
67
72
|
if (!isActive) {
|
|
68
73
|
(0, _helpers.clearStyles)(selectorId);
|