1 | 'use strict';
|
2 |
|
3 | Object.defineProperty(exports, '__esModule', { value: true });
|
4 |
|
5 | function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; }
|
6 |
|
7 | require('./slicedToArray-ef426d0f.js');
|
8 | require('./unsupportedIterableToArray-8a00e599.js');
|
9 | var React = require('react');
|
10 | var React__default = _interopDefault(React);
|
11 | require('./_commonjsHelpers-72d386ba.js');
|
12 | var index = require('./index-b0606964.js');
|
13 | var defineProperty = require('./defineProperty-0921a47c.js');
|
14 | require('./toConsumableArray-7f36359f.js');
|
15 | var _styled = require('styled-components');
|
16 | var _styled__default = _interopDefault(_styled);
|
17 | require('./getPrototypeOf-e2d1e599.js');
|
18 | require('./color.js');
|
19 | require('./components.js');
|
20 | require('./contains-component.js');
|
21 | require('./css.js');
|
22 | require('./dayjs.min-aa59a48e.js');
|
23 | require('./date.js');
|
24 | require('./miscellaneous.js');
|
25 | require('./environment.js');
|
26 | require('./font.js');
|
27 | require('./math-ecfd5d91.js');
|
28 | require('./characters.js');
|
29 | require('./format.js');
|
30 | require('./keycodes.js');
|
31 | require('./url.js');
|
32 | require('./web3.js');
|
33 | var constants = require('./constants.js');
|
34 | require('./breakpoints.js');
|
35 | require('./springs.js');
|
36 | var textStyles = require('./text-styles.js');
|
37 | require('./theme-dark.js');
|
38 | require('./theme-light.js');
|
39 | var Theme = require('./Theme.js');
|
40 | require('./extends-40571110.js');
|
41 | require('./objectWithoutProperties-35db8ab0.js');
|
42 | require('./index-ecc57c9f.js');
|
43 | require('./FocusVisible.js');
|
44 | require('./ButtonBase.js');
|
45 | require('./getDisplayName-7ab6d318.js');
|
46 | var index$2 = require('./index-2b9f03ad.js');
|
47 | var LoadingRing = require('./LoadingRing.js');
|
48 | var Link = require('./Link.js');
|
49 |
|
50 | var illustrationRedImage = "5140b2d928ee3408.png";
|
51 |
|
52 | var illustrationBlueImage = "665de3412d16a795.png";
|
53 |
|
54 | function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
|
55 |
|
56 | function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { defineProperty._defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
57 |
|
58 | function useEmptyStateParts(status, configurator, functionMode) {
|
59 | var publicUrl = index$2.usePublicUrl();
|
60 | var defaultConfigurator = React.useMemo(function () {
|
61 |
|
62 | var Illustration = function Illustration(_ref) {
|
63 | var path = _ref.path;
|
64 | return React__default.createElement("img", {
|
65 | src: publicUrl + path,
|
66 | alt: "",
|
67 | height: 20 * constants.GU
|
68 | });
|
69 | };
|
70 |
|
71 | return {
|
72 | default: {
|
73 | displayLoader: false,
|
74 | title: 'No data available.',
|
75 | subtitle: null,
|
76 | illustration: React__default.createElement(Illustration, {
|
77 | path: illustrationBlueImage
|
78 | }),
|
79 | clearLabel: null
|
80 | },
|
81 | loading: {
|
82 | displayLoader: true,
|
83 | title: 'Loading data…',
|
84 | subtitle: null,
|
85 | illustration: React__default.createElement(Illustration, {
|
86 | path: illustrationBlueImage
|
87 | }),
|
88 | clearLabel: null
|
89 | },
|
90 | 'empty-filters': {
|
91 | displayLoader: false,
|
92 | title: 'No results found.',
|
93 | subtitle: 'We can’t find any item matching your filter selection.',
|
94 | illustration: React__default.createElement(Illustration, {
|
95 | path: illustrationRedImage
|
96 | }),
|
97 | clearLabel: 'Clear filters'
|
98 | },
|
99 | 'empty-search': {
|
100 | displayLoader: false,
|
101 | title: 'No results found.',
|
102 | subtitle: 'We can’t find any item matching your search query.',
|
103 | illustration: React__default.createElement(Illustration, {
|
104 | path: illustrationRedImage
|
105 | }),
|
106 | clearLabel: 'Clear filters'
|
107 | }
|
108 | };
|
109 | }, [publicUrl]);
|
110 | var parts = functionMode ? {} : configurator[status];
|
111 | return _objectSpread(_objectSpread({}, defaultConfigurator[status]), parts);
|
112 | }
|
113 |
|
114 | var _StyledSection = _styled__default("section").withConfig({
|
115 | displayName: "EmptyState___StyledSection",
|
116 | componentId: "sc-18fsc1i-0"
|
117 | })(["display:flex;justify-content:center;align-items:center;"]);
|
118 |
|
119 | var _StyledDiv = _styled__default("div").withConfig({
|
120 | displayName: "EmptyState___StyledDiv",
|
121 | componentId: "sc-18fsc1i-1"
|
122 | })(["width:", "px;padding:", "px 0;text-align:center;"], function (p) {
|
123 | return p._css;
|
124 | }, function (p) {
|
125 | return p._css2;
|
126 | });
|
127 |
|
128 | var _StyledDiv2 = _styled__default("div").withConfig({
|
129 | displayName: "EmptyState___StyledDiv2",
|
130 | componentId: "sc-18fsc1i-2"
|
131 | })(["padding-bottom:", "px;"], function (p) {
|
132 | return p._css3;
|
133 | });
|
134 |
|
135 | var _StyledH = _styled__default("h1").withConfig({
|
136 | displayName: "EmptyState___StyledH",
|
137 | componentId: "sc-18fsc1i-3"
|
138 | })(["", ";display:flex;align-items:center;justify-content:center;"], function (p) {
|
139 | return p._css4;
|
140 | });
|
141 |
|
142 | var _StyledLoadingRing = _styled__default(LoadingRing.default).withConfig({
|
143 | displayName: "EmptyState___StyledLoadingRing",
|
144 | componentId: "sc-18fsc1i-4"
|
145 | })(["margin-right:", "px;"], function (p) {
|
146 | return p._css5;
|
147 | });
|
148 |
|
149 | var _StyledDiv3 = _styled__default("div").withConfig({
|
150 | displayName: "EmptyState___StyledDiv3",
|
151 | componentId: "sc-18fsc1i-5"
|
152 | })(["color:", ";"], function (p) {
|
153 | return p._css6;
|
154 | });
|
155 |
|
156 | function EmptyState(_ref2) {
|
157 | var status = _ref2.status,
|
158 | configurator = _ref2.configurator,
|
159 | onStatusEmptyClear = _ref2.onStatusEmptyClear;
|
160 | var theme = Theme.useTheme();
|
161 | var functionMode = typeof configurator === 'function';
|
162 | var emptyState = useEmptyStateParts(status, configurator, functionMode);
|
163 | var emptyStateOverride = functionMode ? configurator(status) : null;
|
164 |
|
165 |
|
166 | if ( React__default.isValidElement(emptyStateOverride)) {
|
167 | return emptyStateOverride;
|
168 | }
|
169 |
|
170 | return React__default.createElement(_StyledSection, null, React__default.createElement(_StyledDiv, {
|
171 | _css: 31 * constants.GU,
|
172 | _css2: 8 * constants.GU
|
173 | }, emptyState.illustration && React__default.createElement(_StyledDiv2, {
|
174 | _css3: 2 * constants.GU
|
175 | }, emptyState.illustration), emptyState.title && React__default.createElement(_StyledH, {
|
176 | _css4: textStyles.textStyle('title2')
|
177 | }, emptyState.displayLoader && React__default.createElement(_StyledLoadingRing, {
|
178 | _css5: 1 * constants.GU
|
179 | }), emptyState.title), emptyState.subtitle && React__default.createElement(_StyledDiv3, {
|
180 | _css6: theme.surfaceContentSecondary
|
181 | }, emptyState.subtitle, ' ', emptyState.clearLabel && React__default.createElement(Link.default, {
|
182 | onClick: onStatusEmptyClear
|
183 | }, emptyState.clearLabel))));
|
184 | }
|
185 |
|
186 | EmptyState.propTypes = {
|
187 | status: index.PropTypes.oneOf(['default', 'empty-filters', 'empty-search', 'loading']),
|
188 | configurator: index.PropTypes.object,
|
189 | onStatusEmptyClear: index.PropTypes.func
|
190 | };
|
191 |
|
192 | exports.default = EmptyState;
|
193 |
|