@arconnect/components
Advanced tools
Comparing version 0.1.8 to 0.1.9
@@ -12,1 +12,3 @@ export * from "./hooks"; | ||
export * from "./Tooltip"; | ||
export * from "./Spacer"; | ||
export { useToasts } from "./Toast/utils"; |
@@ -17,2 +17,3 @@ "use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.useToasts = void 0; | ||
__exportStar(require("./hooks"), exports); | ||
@@ -29,1 +30,4 @@ __exportStar(require("./Button"), exports); | ||
__exportStar(require("./Tooltip"), exports); | ||
__exportStar(require("./Spacer"), exports); | ||
var utils_1 = require("./Toast/utils"); | ||
Object.defineProperty(exports, "useToasts", { enumerable: true, get: function () { return utils_1.useToasts; } }); |
@@ -17,8 +17,51 @@ "use strict"; | ||
}; | ||
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { | ||
if (k2 === undefined) k2 = k; | ||
var desc = Object.getOwnPropertyDescriptor(m, k); | ||
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { | ||
desc = { enumerable: true, get: function() { return m[k]; } }; | ||
} | ||
Object.defineProperty(o, k2, desc); | ||
}) : (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 __spreadArray = (this && this.__spreadArray) || function (to, from, pack) { | ||
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) { | ||
if (ar || !(i in from)) { | ||
if (!ar) ar = Array.prototype.slice.call(from, 0, i); | ||
ar[i] = from[i]; | ||
} | ||
} | ||
return to.concat(ar || Array.prototype.slice.call(from)); | ||
}; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.Provider = void 0; | ||
var jsx_runtime_1 = require("react/jsx-runtime"); | ||
var styled_components_1 = require("styled-components"); | ||
var react_1 = require("react"); | ||
var styled_components_1 = __importStar(require("styled-components")); | ||
var utils_1 = require("../Toast/utils"); | ||
var framer_motion_1 = require("framer-motion"); | ||
var Toast_1 = require("../Toast"); | ||
var nanoid_1 = require("nanoid"); | ||
function Provider(_a) { | ||
var children = _a.children, _b = _a.theme, theme = _b === void 0 ? "light" : _b; | ||
var _c = (0, react_1.useState)([]), toasts = _c[0], setToasts = _c[1]; | ||
function setToast(toast) { | ||
var id = (0, nanoid_1.nanoid)(); | ||
setToasts(function (val) { return __spreadArray(__spreadArray([], val, true), [__assign(__assign({}, toast), { id: id, addedAt: new Date().getTime() })], false); }); | ||
setTimeout(function () { return setToasts(function (val) { return val.filter(function (t) { return t.id !== id; }); }); }, toast.duration); | ||
} | ||
return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(GlobalStyle, { dark: theme === "dark" }), (0, jsx_runtime_1.jsx)(styled_components_1.ThemeProvider, __assign({ theme: { | ||
@@ -30,6 +73,14 @@ theme: "171, 154, 255", | ||
background: "255, 255, 255" | ||
} }, { children: children }))] })); | ||
} }, { children: (0, jsx_runtime_1.jsxs)(utils_1.ToastsContext.Provider, __assign({ value: { toasts: toasts, setToast: setToast } }, { children: [(0, jsx_runtime_1.jsx)(Toasts, { theme: theme, setToasts: setToasts }), children] })) }))] })); | ||
} | ||
exports.Provider = Provider; | ||
var Toasts = function (_a) { | ||
var setToasts = _a.setToasts, theme = _a.theme; | ||
var toasts = (0, utils_1.useToasts)().toasts; | ||
return ((0, jsx_runtime_1.jsx)(ToastsWrapper, { children: (0, jsx_runtime_1.jsx)(framer_motion_1.AnimatePresence, { children: toasts.map(function (toast, i) { return ((0, jsx_runtime_1.jsx)(Toast_1.Toast, __assign({ action: toast.action, duration: toast.duration, type: toast.type, displayTheme: theme, close: function (id) { | ||
setToasts(function (val) { return val.filter(function (t) { return t.id !== id; }); }); | ||
}, addedAt: toast.addedAt }, { children: toast.content }), i)); }) }) })); | ||
}; | ||
var GlobalStyle = (0, styled_components_1.createGlobalStyle)(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n @import url('https://fonts.googleapis.com/css2?family=Manrope:wght@200;300;400;500;600;700;800&display=swap');\n\n body {\n background-color: ", ";\n color: ", ";\n font-family: 'Manrope VF', 'Manrope', sans-serif;\n letter-spacing: .5px;\n }\n\n input, textarea, button, select {\n font-family: 'Manrope VF', 'Manrope', sans-serif;\n letter-spacing: .5px;\n }\n"], ["\n @import url('https://fonts.googleapis.com/css2?family=Manrope:wght@200;300;400;500;600;700;800&display=swap');\n\n body {\n background-color: ", ";\n color: ", ";\n font-family: 'Manrope VF', 'Manrope', sans-serif;\n letter-spacing: .5px;\n }\n\n input, textarea, button, select {\n font-family: 'Manrope VF', 'Manrope', sans-serif;\n letter-spacing: .5px;\n }\n"])), function (props) { return props.dark ? "#000" : "#fff"; }, function (props) { return props.dark ? "#fff" : "#000"; }); | ||
var templateObject_1; | ||
var ToastsWrapper = styled_components_1.default.div(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n display: flex;\n position: fixed;\n flex-direction: column;\n gap: 1rem;\n bottom: 1rem;\n left: 1rem;\n right: 1rem;\n"], ["\n display: flex;\n position: fixed;\n flex-direction: column;\n gap: 1rem;\n bottom: 1rem;\n left: 1rem;\n right: 1rem;\n"]))); | ||
var templateObject_1, templateObject_2; |
@@ -12,1 +12,3 @@ export * from "./hooks"; | ||
export * from "./Tooltip"; | ||
export * from "./Spacer"; | ||
export { useToasts } from "./Toast/utils"; |
@@ -12,1 +12,3 @@ export * from "./hooks"; | ||
export * from "./Tooltip"; | ||
export * from "./Spacer"; | ||
export { useToasts } from "./Toast/utils"; |
@@ -16,6 +16,26 @@ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) { | ||
}; | ||
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime"; | ||
import { createGlobalStyle, ThemeProvider } from "styled-components"; | ||
var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) { | ||
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) { | ||
if (ar || !(i in from)) { | ||
if (!ar) ar = Array.prototype.slice.call(from, 0, i); | ||
ar[i] = from[i]; | ||
} | ||
} | ||
return to.concat(ar || Array.prototype.slice.call(from)); | ||
}; | ||
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime"; | ||
import { useState } from "react"; | ||
import styled, { createGlobalStyle, ThemeProvider } from "styled-components"; | ||
import { ToastsContext, useToasts } from "../Toast/utils"; | ||
import { AnimatePresence } from "framer-motion"; | ||
import { Toast } from "../Toast"; | ||
import { nanoid } from "nanoid"; | ||
export function Provider(_a) { | ||
var children = _a.children, _b = _a.theme, theme = _b === void 0 ? "light" : _b; | ||
var _c = useState([]), toasts = _c[0], setToasts = _c[1]; | ||
function setToast(toast) { | ||
var id = nanoid(); | ||
setToasts(function (val) { return __spreadArray(__spreadArray([], val, true), [__assign(__assign({}, toast), { id: id, addedAt: new Date().getTime() })], false); }); | ||
setTimeout(function () { return setToasts(function (val) { return val.filter(function (t) { return t.id !== id; }); }); }, toast.duration); | ||
} | ||
return (_jsxs(_Fragment, { children: [_jsx(GlobalStyle, { dark: theme === "dark" }), _jsx(ThemeProvider, __assign({ theme: { | ||
@@ -27,5 +47,13 @@ theme: "171, 154, 255", | ||
background: "255, 255, 255" | ||
} }, { children: children }))] })); | ||
} }, { children: _jsxs(ToastsContext.Provider, __assign({ value: { toasts: toasts, setToast: setToast } }, { children: [_jsx(Toasts, { theme: theme, setToasts: setToasts }), children] })) }))] })); | ||
} | ||
var Toasts = function (_a) { | ||
var setToasts = _a.setToasts, theme = _a.theme; | ||
var toasts = useToasts().toasts; | ||
return (_jsx(ToastsWrapper, { children: _jsx(AnimatePresence, { children: toasts.map(function (toast, i) { return (_jsx(Toast, __assign({ action: toast.action, duration: toast.duration, type: toast.type, displayTheme: theme, close: function (id) { | ||
setToasts(function (val) { return val.filter(function (t) { return t.id !== id; }); }); | ||
}, addedAt: toast.addedAt }, { children: toast.content }), i)); }) }) })); | ||
}; | ||
var GlobalStyle = createGlobalStyle(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n @import url('https://fonts.googleapis.com/css2?family=Manrope:wght@200;300;400;500;600;700;800&display=swap');\n\n body {\n background-color: ", ";\n color: ", ";\n font-family: 'Manrope VF', 'Manrope', sans-serif;\n letter-spacing: .5px;\n }\n\n input, textarea, button, select {\n font-family: 'Manrope VF', 'Manrope', sans-serif;\n letter-spacing: .5px;\n }\n"], ["\n @import url('https://fonts.googleapis.com/css2?family=Manrope:wght@200;300;400;500;600;700;800&display=swap');\n\n body {\n background-color: ", ";\n color: ", ";\n font-family: 'Manrope VF', 'Manrope', sans-serif;\n letter-spacing: .5px;\n }\n\n input, textarea, button, select {\n font-family: 'Manrope VF', 'Manrope', sans-serif;\n letter-spacing: .5px;\n }\n"])), function (props) { return props.dark ? "#000" : "#fff"; }, function (props) { return props.dark ? "#fff" : "#000"; }); | ||
var templateObject_1; | ||
var ToastsWrapper = styled.div(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n display: flex;\n position: fixed;\n flex-direction: column;\n gap: 1rem;\n bottom: 1rem;\n left: 1rem;\n right: 1rem;\n"], ["\n display: flex;\n position: fixed;\n flex-direction: column;\n gap: 1rem;\n bottom: 1rem;\n left: 1rem;\n right: 1rem;\n"]))); | ||
var templateObject_1, templateObject_2; |
{ | ||
"name": "@arconnect/components", | ||
"version": "0.1.8", | ||
"version": "0.1.9", | ||
"private": false, | ||
@@ -28,2 +28,3 @@ "publishConfig": { | ||
"framer-motion": "^7.5.2", | ||
"nanoid": "^4.0.0", | ||
"typescript": "^4.4.2", | ||
@@ -30,0 +31,0 @@ "web-vitals": "^2.1.0" |
148468
114
2633
10
+ Addednanoid@^4.0.0
+ Addednanoid@4.0.2(transitive)