@xqmsg/ui-core 0.18.8 → 0.19.0
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/components/icons/neutral/index.d.ts +1 -0
- package/dist/components/toast/Toast.stories.d.ts +5 -0
- package/dist/components/toast/index.d.ts +12 -0
- package/dist/hooks/useToast.d.ts +6 -0
- package/dist/index.d.ts +1 -0
- package/dist/theme/provider/index.d.ts +1 -1
- package/dist/ui-core.cjs.development.js +88 -5
- package/dist/ui-core.cjs.development.js.map +1 -1
- package/dist/ui-core.cjs.production.min.js +1 -1
- package/dist/ui-core.cjs.production.min.js.map +1 -1
- package/dist/ui-core.esm.js +88 -6
- package/dist/ui-core.esm.js.map +1 -1
- package/package.json +1 -1
- package/src/components/icons/neutral/index.tsx +3 -2
- package/src/components/icons/neutral/neutral.svg +1 -1
- package/src/components/toast/Toast.stories.tsx +52 -0
- package/src/components/toast/index.tsx +78 -0
- package/src/hooks/useToast.tsx +13 -0
- package/src/index.tsx +1 -0
- package/src/theme/provider/index.tsx +1 -1
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import React, { ReactNode } from 'react';
|
|
2
|
+
export declare type ToastVariant = 'positive' | 'warning' | 'error' | 'neutral';
|
|
3
|
+
export interface ToastProps {
|
|
4
|
+
variant: ToastVariant;
|
|
5
|
+
message: ReactNode;
|
|
6
|
+
buttonText?: string;
|
|
7
|
+
onClick?: () => void;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* A functional React component utilized to render the `Toast` component
|
|
11
|
+
*/
|
|
12
|
+
export declare const Toast: React.FC<ToastProps>;
|
package/dist/index.d.ts
CHANGED
|
@@ -16,5 +16,6 @@ export * from './components/tabs';
|
|
|
16
16
|
export * from './components/text';
|
|
17
17
|
export * from './theme/provider';
|
|
18
18
|
export * from './components/toolbar';
|
|
19
|
+
export * from './hooks/useToast';
|
|
19
20
|
export * from './components/form/utils/formErrors';
|
|
20
21
|
export * from './theme/foundations/colors';
|
|
@@ -12,7 +12,6 @@ var lodash = require('lodash');
|
|
|
12
12
|
var icons = require('@chakra-ui/icons');
|
|
13
13
|
var reactRouterDom = require('react-router-dom');
|
|
14
14
|
var hi = require('react-icons/hi');
|
|
15
|
-
var provider = require('@chakra-ui/provider');
|
|
16
15
|
var themeTools = require('@chakra-ui/theme-tools');
|
|
17
16
|
var system = require('@chakra-ui/system');
|
|
18
17
|
|
|
@@ -91,7 +90,7 @@ var SvgNeutral = function SvgNeutral(props, ref) {
|
|
|
91
90
|
ref: ref
|
|
92
91
|
}, props), _path$1 || (_path$1 = /*#__PURE__*/React.createElement("path", {
|
|
93
92
|
d: "M7 4.5V4a.5.5 0 0 0-.5.5H7Zm.005 0h.5a.5.5 0 0 0-.5-.5v.5Zm0 .005v.5a.5.5 0 0 0 .5-.5h-.5Zm-.005 0h-.5a.5.5 0 0 0 .5.5v-.5Zm-.724 1.548a.5.5 0 1 0 .448.894l-.448-.894Zm.252.433-.224-.447.224.447Zm.708.569.485.12-.485-.12Zm-.472 1.89-.485-.12.485.12Zm.708.569.224.447-.224-.447Zm.252.433a.5.5 0 1 0-.448-.894l.448.894ZM12.5 7A5.5 5.5 0 0 1 7 12.5v1A6.5 6.5 0 0 0 13.5 7h-1ZM7 12.5A5.5 5.5 0 0 1 1.5 7h-1A6.5 6.5 0 0 0 7 13.5v-1ZM1.5 7A5.5 5.5 0 0 1 7 1.5v-1A6.5 6.5 0 0 0 .5 7h1ZM7 1.5A5.5 5.5 0 0 1 12.5 7h1A6.5 6.5 0 0 0 7 .5v1ZM7 5h.005V4H7v1Zm-.495-.5v.005h1V4.5h-1Zm.5-.495H7v1h.005v-1Zm.495.5V4.5h-1v.005h1Zm-.776 2.442.027-.014-.447-.894-.028.014.448.894Zm.027-.014L6.28 8.824l.97.243.472-1.891-.97-.243Zm.945 3.028.028-.014-.448-.894-.027.014.447.894ZM6.279 8.824a1 1 0 0 0 1.417 1.137l-.447-.894-.97-.243Zm.472-1.89.97.242a1 1 0 0 0-1.417-1.137l.447.894Z",
|
|
94
|
-
fill: "
|
|
93
|
+
fill: "current",
|
|
95
94
|
fillOpacity: 0.6
|
|
96
95
|
})));
|
|
97
96
|
};
|
|
@@ -103,9 +102,11 @@ var Memo$1 = /*#__PURE__*/React.memo(ForwardRef$1);
|
|
|
103
102
|
*/
|
|
104
103
|
|
|
105
104
|
var Neutral = function Neutral(_ref) {
|
|
106
|
-
var
|
|
105
|
+
var color = _ref.color,
|
|
106
|
+
boxSize = _ref.boxSize;
|
|
107
107
|
return /*#__PURE__*/React__default.createElement(Memo$1, {
|
|
108
|
-
boxSize: boxSize
|
|
108
|
+
boxSize: boxSize,
|
|
109
|
+
fill: color || '#3C3C43'
|
|
109
110
|
});
|
|
110
111
|
};
|
|
111
112
|
|
|
@@ -4177,7 +4178,7 @@ var customXQChakraTheme = /*#__PURE__*/react.extendTheme( /*#__PURE__*/_extends$
|
|
|
4177
4178
|
var XQThemeProvider = function XQThemeProvider(_ref) {
|
|
4178
4179
|
var children = _ref.children,
|
|
4179
4180
|
cssVarsRoot = _ref.cssVarsRoot;
|
|
4180
|
-
return /*#__PURE__*/React__default.createElement(
|
|
4181
|
+
return /*#__PURE__*/React__default.createElement(react.ChakraProvider, {
|
|
4181
4182
|
theme: customXQChakraTheme,
|
|
4182
4183
|
resetCSS: true,
|
|
4183
4184
|
cssVarsRoot: cssVarsRoot
|
|
@@ -4317,6 +4318,87 @@ var Toolbar = function Toolbar(_ref) {
|
|
|
4317
4318
|
}, children, " ")));
|
|
4318
4319
|
};
|
|
4319
4320
|
|
|
4321
|
+
/**
|
|
4322
|
+
* A functional React component utilized to render the `Toast` component
|
|
4323
|
+
*/
|
|
4324
|
+
|
|
4325
|
+
var Toast = function Toast(_ref) {
|
|
4326
|
+
var variant = _ref.variant,
|
|
4327
|
+
message = _ref.message,
|
|
4328
|
+
buttonText = _ref.buttonText,
|
|
4329
|
+
onClick = _ref.onClick;
|
|
4330
|
+
var Icon = React.useMemo(function () {
|
|
4331
|
+
switch (variant) {
|
|
4332
|
+
case 'error':
|
|
4333
|
+
return /*#__PURE__*/React__default.createElement(Error$1, {
|
|
4334
|
+
boxSize: "16px"
|
|
4335
|
+
});
|
|
4336
|
+
|
|
4337
|
+
case 'neutral':
|
|
4338
|
+
return /*#__PURE__*/React__default.createElement(Neutral, {
|
|
4339
|
+
boxSize: "16px",
|
|
4340
|
+
color: "white"
|
|
4341
|
+
});
|
|
4342
|
+
|
|
4343
|
+
case 'positive':
|
|
4344
|
+
return /*#__PURE__*/React__default.createElement(Positive, {
|
|
4345
|
+
boxSize: "16px"
|
|
4346
|
+
});
|
|
4347
|
+
|
|
4348
|
+
case 'warning':
|
|
4349
|
+
return /*#__PURE__*/React__default.createElement(Warning, {
|
|
4350
|
+
boxSize: "16px"
|
|
4351
|
+
});
|
|
4352
|
+
|
|
4353
|
+
default:
|
|
4354
|
+
return null;
|
|
4355
|
+
}
|
|
4356
|
+
}, [variant]);
|
|
4357
|
+
return /*#__PURE__*/React__default.createElement(react.Flex, {
|
|
4358
|
+
alignItems: "center",
|
|
4359
|
+
width: "fit-content",
|
|
4360
|
+
height: "32px",
|
|
4361
|
+
p: "8px",
|
|
4362
|
+
bg: "#151515D9",
|
|
4363
|
+
borderColor: "#9999991A",
|
|
4364
|
+
borderRadius: "8px"
|
|
4365
|
+
}, /*#__PURE__*/React__default.createElement(react.Box, {
|
|
4366
|
+
pr: "8px"
|
|
4367
|
+
}, Icon), /*#__PURE__*/React__default.createElement(react.Text, {
|
|
4368
|
+
pr: "16px",
|
|
4369
|
+
fontSize: "13px",
|
|
4370
|
+
color: colors.label.primary.dark
|
|
4371
|
+
}, message), onClick && buttonText && /*#__PURE__*/React__default.createElement(react.Flex, {
|
|
4372
|
+
ml: "auto",
|
|
4373
|
+
justifyContent: "flex-end"
|
|
4374
|
+
}, /*#__PURE__*/React__default.createElement(react.Button, {
|
|
4375
|
+
color: colors.fill.action,
|
|
4376
|
+
style: {
|
|
4377
|
+
background: 'transparent',
|
|
4378
|
+
border: 'transparent',
|
|
4379
|
+
boxShadow: 'none'
|
|
4380
|
+
},
|
|
4381
|
+
_hover: {
|
|
4382
|
+
bg: 'transparent',
|
|
4383
|
+
border: 'transparent',
|
|
4384
|
+
boxShadow: 'none'
|
|
4385
|
+
},
|
|
4386
|
+
onClick: onClick
|
|
4387
|
+
}, buttonText)));
|
|
4388
|
+
};
|
|
4389
|
+
|
|
4390
|
+
var useToast = function useToast(props) {
|
|
4391
|
+
var toast = react.useToast();
|
|
4392
|
+
return function () {
|
|
4393
|
+
return toast({
|
|
4394
|
+
position: props.position,
|
|
4395
|
+
render: function render() {
|
|
4396
|
+
return /*#__PURE__*/React__default.createElement(Toast, Object.assign({}, props));
|
|
4397
|
+
}
|
|
4398
|
+
});
|
|
4399
|
+
};
|
|
4400
|
+
};
|
|
4401
|
+
|
|
4320
4402
|
function formatErrorResponse(error) {
|
|
4321
4403
|
var _error$response, _error$response$data;
|
|
4322
4404
|
|
|
@@ -4392,4 +4474,5 @@ exports.Warning = Warning;
|
|
|
4392
4474
|
exports.XQThemeProvider = XQThemeProvider;
|
|
4393
4475
|
exports.colors = colors;
|
|
4394
4476
|
exports.formatErrorResponse = formatErrorResponse;
|
|
4477
|
+
exports.useToast = useToast;
|
|
4395
4478
|
//# sourceMappingURL=ui-core.cjs.development.js.map
|