UNPKG

ndd-react

Version:

A lightweight, customizable toast notification library for React applications

1 lines 5.81 kB
{"version":3,"sources":["style.css"],"names":[],"mappings":"AAAA,mBACE,GACI,SAAU,CACV,qCACJ,CAEA,GACI,SAAU,CACV,gCACJ,CACF,CAEA,oBACE,GACI,SAAU,CACV,gCACJ,CAEA,GACI,SAAU,CACV,qCACJ,CACF,CAEA,oBACE,GACI,UACJ,CAEA,GACI,OACJ,CACF,CAEA,iBAGE,YAAa,CACb,qBAAsB,CACtB,SAAW,CACX,aAAe,CALf,cAAe,CAMf,WAAY,CALZ,UAMF,CAEA,2BAEE,WAAa,CADb,SAEF,CAEA,0BAEE,UAAY,CADZ,SAEF,CAEA,8BACE,YAAc,CACd,WACF,CAEA,6BACE,YAAc,CACd,UACF,CAEA,4BAEE,QAAS,CADT,SAAW,CAEX,0BACF,CAEA,+BACE,YAAc,CACd,QAAS,CACT,0BACF,CAEA,OACE,0BAA2B,CAC3B,kCAAmC,CACnC,8BAAqC,CAGrC,gBAAiB,CADjB,oBAAsB,CADtB,qCAA0C,CAG1C,YAAa,CACb,qBAAsB,CAEtB,eAAgB,CADhB,iBAEF,CAEA,qBACE,oBACF,CAEA,mBACE,oBACF,CAEA,qBACE,oBACF,CAEA,kBACE,oBACF,CAEA,eAEE,sBAAuB,CADvB,YAAa,CAGb,UAAY,CADZ,YAEF,CAEA,aAKE,kBAAmB,CAJnB,oBAAqB,CAOrB,6GAE4C,CAN5C,YAAa,CAGb,aAAc,CAJd,aAAc,CAGd,sBAAuB,CAJvB,YASF,CAEA,0BACE,oCAAyC,CACzC,aACF,CAEA,wBACE,mCAAwC,CACxC,aACF,CAEA,0BACE,oCAAyC,CACzC,aACF,CAEA,uBACE,oCAAyC,CACzC,aACF,CAEA,WAEE,kBAAmB,CADnB,YAAa,CAIb,WAAY,CAFZ,sBAAuB,CACvB,UAEF,CAEA,eAEE,WAAY,CADZ,UAEF,CAEA,YACE,MACF,CAEA,aAEE,aAAc,CACd,cAAe,CAFf,eAAgB,CAGhB,eAAgB,CAChB,QACF,CAEA,eACE,aAAc,CACd,iBAAmB,CACnB,eAAgB,CAEhB,eAAgB,CADhB,iBAEF,CAEA,aAEE,eAAgB,CAChB,WAAY,CAFZ,aAAc,CAId,cAAe,CADf,cAAgB,CAEhB,oBACF,CAEA,mBACE,aACF,CAEA,iBAEE,cAAe,CADf,aAEF,CAEA,cAGE,uCAAwC,CAFxC,UAAW,CACX,UAEF,CAEA,+BACE,iDACF,CAEA,6BACE,iDACF,CAEA,+BACE,iDACF,CAEA,4BACE,iDACF,CAUA,mCACE,OACI,6BACJ,CAEA,aACI,wBACJ,CAEA,eACI,0BACJ,CAEA,mBACI,aACJ,CACF,CAEA,aACE,gEACF,CAEA,YACE,wCACF","file":"index.css","sourcesContent":["@keyframes slideIn {\n 0% {\n opacity: 0;\n transform: translateY(20px) scale(0.95);\n }\n\n 100% {\n opacity: 1;\n transform: translateY(0) scale(1);\n }\n}\n\n@keyframes slideOut {\n 0% {\n opacity: 1;\n transform: translateY(0) scale(1);\n }\n\n 100% {\n opacity: 0;\n transform: translateY(20px) scale(0.95);\n }\n}\n\n@keyframes progress {\n 0% {\n width: 100%;\n }\n\n 100% {\n width: 0%;\n }\n}\n\n.toast-container {\n position: fixed;\n z-index: 50;\n display: flex;\n flex-direction: column;\n gap: 0.5rem;\n padding: 0.5rem;\n width: 22rem;\n}\n\n.toast-container.top-right {\n top: 0.5rem;\n right: 0.5rem;\n}\n\n.toast-container.top-left {\n top: 0.5rem;\n left: 0.5rem;\n}\n\n.toast-container.bottom-right {\n bottom: 0.5rem;\n right: 0.5rem;\n}\n\n.toast-container.bottom-left {\n bottom: 0.5rem;\n left: 0.5rem;\n}\n\n.toast-container.top-center {\n top: 0.5rem;\n left: 50%;\n transform: translateX(-50%);\n}\n\n.toast-container.bottom-center {\n bottom: 0.5rem;\n left: 50%;\n transform: translateX(-50%);\n}\n\n.toast {\n backdrop-filter: blur(16px);\n -webkit-backdrop-filter: blur(16px);\n background: rgba(255, 255, 255, 0.65);\n box-shadow: 0 8px 32px rgba(0, 0, 0, 0.08);\n border-radius: 0.75rem;\n border: 1px solid;\n display: flex;\n flex-direction: column;\n position: relative;\n overflow: hidden;\n}\n\n.toast.toast-success {\n border-color: #d1fae5;\n}\n\n.toast.toast-error {\n border-color: #fee2e2;\n}\n\n.toast.toast-warning {\n border-color: #fef3c7;\n}\n\n.toast.toast-info {\n border-color: #dbeafe;\n}\n\n.toast-content {\n display: flex;\n align-items: flex-start;\n padding: 1rem;\n gap: 0.75rem;\n}\n\n.icon-circle {\n border-radius: 9999px;\n width: 2.5rem;\n height: 2.5rem;\n display: flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n box-shadow: 0 4px 12px -2px rgba(0, 0, 0, 0.1),\n inset 0 -1px 4px rgba(0, 0, 0, 0.05),\n inset 0 1px 4px rgba(255, 255, 255, 0.4);\n}\n\n.icon-circle.icon-success {\n background-color: rgba(16, 185, 129, 0.1);\n color: #059669;\n}\n\n.icon-circle.icon-error {\n background-color: rgba(239, 68, 68, 0.1);\n color: #dc2626;\n}\n\n.icon-circle.icon-warning {\n background-color: rgba(245, 158, 11, 0.1);\n color: #d97706;\n}\n\n.icon-circle.icon-info {\n background-color: rgba(59, 130, 246, 0.1);\n color: #2563eb;\n}\n\n.icon-core {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 20px;\n height: 20px;\n}\n\n.icon-core svg {\n width: 100%;\n height: 100%;\n}\n\n.toast-text {\n flex: 1;\n}\n\n.toast-title {\n font-weight: 600;\n color: #1f2937;\n font-size: 1rem;\n line-height: 1.5;\n margin: 0;\n}\n\n.toast-message {\n color: #4b5563;\n font-size: 0.875rem;\n line-height: 1.5;\n margin-top: 0.25rem;\n margin-bottom: 0;\n}\n\n.toast-close {\n color: #9ca3af;\n background: none;\n border: none;\n padding: 0.25rem;\n cursor: pointer;\n transition: color 0.2s;\n}\n\n.toast-close:hover {\n color: #4b5563;\n}\n\n.toast-close svg {\n width: 1.25rem;\n height: 1.25rem;\n}\n\n.progress-bar {\n height: 3px;\n width: 100%;\n animation: progress 3.5s linear forwards;\n}\n\n.progress-bar.progress-success {\n background: linear-gradient(90deg, #34d399, #a7f3d0);\n}\n\n.progress-bar.progress-error {\n background: linear-gradient(90deg, #f87171, #fecaca);\n}\n\n.progress-bar.progress-warning {\n background: linear-gradient(90deg, #fbbf24, #fde68a);\n}\n\n.progress-bar.progress-info {\n background: linear-gradient(90deg, #60a5fa, #bfdbfe);\n}\n\n.toast-enter {\n animation: slideIn 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) forwards;\n}\n\n.toast-exit {\n animation: slideOut 0.3s ease-out forwards;\n}\n\n@media (prefers-color-scheme: dark) {\n .toast {\n background: rgba(15, 15, 20, 0.85);\n }\n\n .toast-title {\n color: rgba(255, 255, 255, 0.9);\n }\n\n .toast-message {\n color: rgba(156, 163, 175, 0.9);\n }\n\n .toast-close:hover {\n color: rgba(209, 213, 219, 1);\n }\n}\n\n.toast-enter {\n animation: slideIn 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) forwards;\n}\n\n.toast-exit {\n animation: slideOut 0.3s ease-out forwards;\n}"]}