1 | "use strict";
|
2 |
|
3 | require("core-js/modules/es.array.concat.js");
|
4 |
|
5 | require("core-js/modules/es.function.name.js");
|
6 |
|
7 | Object.defineProperty(exports, "__esModule", {
|
8 | value: true
|
9 | });
|
10 | exports.makeDecorator = void 0;
|
11 |
|
12 | var makeDecorator = function makeDecorator(_ref) {
|
13 | var name = _ref.name,
|
14 | parameterName = _ref.parameterName,
|
15 | wrapper = _ref.wrapper,
|
16 | _ref$skipIfNoParamete = _ref.skipIfNoParametersOrOptions,
|
17 | skipIfNoParametersOrOptions = _ref$skipIfNoParamete === void 0 ? false : _ref$skipIfNoParamete;
|
18 |
|
19 | var decorator = function decorator(options) {
|
20 | return function (getStory, context) {
|
21 | var parameters = context.parameters && context.parameters[parameterName];
|
22 |
|
23 | if (parameters && parameters.disable) {
|
24 | return getStory(context);
|
25 | }
|
26 |
|
27 | if (skipIfNoParametersOrOptions && !options && !parameters) {
|
28 | return getStory(context);
|
29 | }
|
30 |
|
31 | return wrapper(getStory, context, {
|
32 | options: options,
|
33 | parameters: parameters
|
34 | });
|
35 | };
|
36 | };
|
37 |
|
38 | return function () {
|
39 | for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
40 | args[_key] = arguments[_key];
|
41 | }
|
42 |
|
43 |
|
44 | if (typeof args[0] === 'function') {
|
45 | return decorator().apply(void 0, args);
|
46 | }
|
47 |
|
48 | return function () {
|
49 |
|
50 | if (arguments.length > 1) {
|
51 |
|
52 | if (args.length > 1) {
|
53 | return decorator(args).apply(void 0, arguments);
|
54 | }
|
55 |
|
56 | return decorator.apply(void 0, args).apply(void 0, arguments);
|
57 | }
|
58 |
|
59 | throw new Error("Passing stories directly into ".concat(name, "() is not allowed,\n instead use addDecorator(").concat(name, ") and pass options with the '").concat(parameterName, "' parameter"));
|
60 | };
|
61 | };
|
62 | };
|
63 |
|
64 | exports.makeDecorator = makeDecorator; |
\ | No newline at end of file |