lucid-ui
Version:
A UI component library from Xandr.
166 lines • 7.88 kB
JavaScript
"use strict";
var __assign = (this && this.__assign) || function () {
__assign = Object.assign || function(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
t[p] = s[p];
}
return t;
};
return __assign.apply(this, arguments);
};
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
o["default"] = v;
});
var __importStar = (this && this.__importStar) || function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
__setModuleDefault(result, mod);
return result;
};
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.DarkOverlay = exports.NoOverlay = exports.NoTitle = exports.CustomMessage = exports.Basic = exports.Interactive = void 0;
var lodash_1 = __importDefault(require("lodash"));
var react_1 = __importStar(require("react"));
var Button_1 = __importDefault(require("../Button/Button"));
var LoadingIndicator_1 = __importDefault(require("./LoadingIndicator"));
var BarChart_1 = __importDefault(require("../BarChart/BarChart"));
var LoadingIcon_1 = __importDefault(require("../Icon/LoadingIcon/LoadingIcon"));
exports.default = {
title: 'Loading Indicator/LoadingIndicator',
component: LoadingIndicator_1.default,
parameters: {
docs: {
description: {
component: LoadingIndicator_1.default.peek.description,
},
},
},
};
/* Interactive */
var Interactive = function (args) {
var dates = ['2015-01-01', '2015-01-02', '2015-01-03', '2015-01-04'];
var getData = function () {
return lodash_1.default.map(dates, function (date) { return ({ x: date, y: lodash_1.default.random(1, 5) }); });
};
var _a = (0, react_1.useState)({
isLoading: true,
data: lodash_1.default.map(dates, function (date) { return ({ x: date, y: 0 }); }),
overlayKind: 'dark',
}), state = _a[0], setState = _a[1];
var handleOverlayKindClick = function () {
setState(__assign(__assign({}, state), { overlayKind: state.overlayKind === 'dark' ? 'light' : 'dark' }));
};
(0, react_1.useEffect)(function () {
var removeIsLoading = setTimeout(function () { return setState(__assign(__assign({}, state), { isLoading: false, data: getData() })); }, 1000);
return function () {
clearTimeout(removeIsLoading);
};
}, []);
return (react_1.default.createElement(LoadingIndicator_1.default, __assign({}, args, { isLoading: state.isLoading, overlayKind: state.overlayKind }),
react_1.default.createElement(Button_1.default, { style: { margin: 10 }, onClick: function () {
setState(__assign(__assign({}, state), { isLoading: true }));
setTimeout(function () { return setState(__assign(__assign({}, state), { isLoading: false, data: getData() })); }, 2000);
} }, "Get more data"),
react_1.default.createElement(Button_1.default, { onClick: handleOverlayKindClick }, "".concat(state.overlayKind, " overlay color")),
react_1.default.createElement(BarChart_1.default, { width: 750, data: state.data, yAxisTitle: 'Revenue' })));
// },
};
exports.Interactive = Interactive;
/* Basic */
var Basic = function (args) {
return (react_1.default.createElement(LoadingIndicator_1.default, __assign({}, args, { isLoading: true }),
react_1.default.createElement(BarChart_1.default, { width: 750, data: [
{ x: '2015-01-01', y: 1 },
{ x: '2015-01-02', y: 2 },
{ x: '2015-01-03', y: 3 },
{ x: '2015-01-04', y: 5 },
] })));
};
exports.Basic = Basic;
/* Custom Message */
var CustomMessage = function (args) {
var LoadingMessage = LoadingIndicator_1.default.LoadingMessage, _a = LoadingIndicator_1.default.LoadingMessage, Title = _a.Title, Body = _a.Body, Icon = _a.Icon;
return (react_1.default.createElement("div", null,
react_1.default.createElement(LoadingIndicator_1.default, __assign({}, args, { isLoading: true }),
react_1.default.createElement(BarChart_1.default, { width: 750, data: [
{ x: '2015-01-01', y: 1 },
{ x: '2015-01-02', y: 2 },
{ x: '2015-01-03', y: 3 },
{ x: '2015-01-04', y: 5 },
] }),
react_1.default.createElement(LoadingMessage, null,
react_1.default.createElement(Icon, null,
react_1.default.createElement(LoadingIcon_1.default, { speed: 'slow' })),
react_1.default.createElement(Title, null, "Custom Title"),
react_1.default.createElement(Body, null, "Custom Body"))),
react_1.default.createElement(LoadingIndicator_1.default, __assign({}, args, { isLoading: true }),
react_1.default.createElement(BarChart_1.default, { width: 750, data: [
{ x: '2015-01-01', y: 1 },
{ x: '2015-01-02', y: 2 },
{ x: '2015-01-03', y: 3 },
{ x: '2015-01-04', y: 5 },
] }),
react_1.default.createElement(LoadingMessage, { Icon: react_1.default.createElement(LoadingIcon_1.default, { speed: 'fast' }), Title: 'Enhancing...', Body: 'Please wait' }))));
};
exports.CustomMessage = CustomMessage;
/* No Title */
var NoTitle = function (args) {
return (react_1.default.createElement(LoadingIndicator_1.default, __assign({}, args, { isLoading: true }),
react_1.default.createElement(BarChart_1.default, { width: 750, data: [
{ x: '2015-01-01', y: 1 },
{ x: '2015-01-02', y: 2 },
{ x: '2015-01-03', y: 3 },
{ x: '2015-01-04', y: 5 },
] }),
react_1.default.createElement(LoadingIndicator_1.default.LoadingMessage, { Title: null })));
};
exports.NoTitle = NoTitle;
exports.NoTitle.args = {
isLoading: true,
};
/* No Overlay */
var NoOverlay = function (args) {
return (react_1.default.createElement(LoadingIndicator_1.default, __assign({}, args),
react_1.default.createElement(BarChart_1.default, { width: 750, data: [
{ x: '2015-01-01', y: 1 },
{ x: '2015-01-02', y: 2 },
{ x: '2015-01-03', y: 3 },
{ x: '2015-01-04', y: 5 },
] })));
};
exports.NoOverlay = NoOverlay;
exports.NoOverlay.args = {
hasOverlay: false,
isLoading: true,
};
/* Dark Overlay */
var DarkOverlay = function (args) {
return (react_1.default.createElement(LoadingIndicator_1.default, __assign({}, args),
react_1.default.createElement(BarChart_1.default, { width: 750, data: [
{ x: '2015-01-01', y: 1 },
{ x: '2015-01-02', y: 2 },
{ x: '2015-01-03', y: 3 },
{ x: '2015-01-04', y: 5 },
] })));
};
exports.DarkOverlay = DarkOverlay;
exports.DarkOverlay.args = {
isLoading: true,
overlayKind: 'dark',
};
//# sourceMappingURL=LoadingIndicator.stories.js.map