primevue
Version:
PrimeVue is an open source UI library for Vue featuring a rich set of 80+ components, a theme designer, various theme alternatives such as Material, Bootstrap, Tailwind, premium templates and professional support. In addition, it integrates with PrimeBloc
59 lines (55 loc) • 4.93 kB
JavaScript
import BaseStyle from 'primevue/base/style';
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
var css = "\n@layer primevue {\n .p-toast {\n width: 25rem;\n white-space: pre-line;\n word-break: break-word;\n }\n\n .p-toast-message-icon {\n flex-shrink: 0;\n }\n\n .p-toast-message-content {\n display: flex;\n align-items: flex-start;\n }\n\n .p-toast-message-text {\n flex: 1 1 auto;\n }\n\n .p-toast-top-center {\n transform: translateX(-50%);\n }\n\n .p-toast-bottom-center {\n transform: translateX(-50%);\n }\n\n .p-toast-center {\n min-width: 20vw;\n transform: translate(-50%, -50%);\n }\n\n .p-toast-icon-close {\n display: flex;\n align-items: center;\n justify-content: center;\n overflow: hidden;\n position: relative;\n }\n\n .p-toast-icon-close.p-link {\n cursor: pointer;\n }\n\n /* Animations */\n .p-toast-message-enter-from {\n opacity: 0;\n -webkit-transform: translateY(50%);\n -ms-transform: translateY(50%);\n transform: translateY(50%);\n }\n\n .p-toast-message-leave-from {\n max-height: 1000px;\n }\n\n .p-toast .p-toast-message.p-toast-message-leave-to {\n max-height: 0;\n opacity: 0;\n margin-bottom: 0;\n overflow: hidden;\n }\n\n .p-toast-message-enter-active {\n -webkit-transition: transform 0.3s, opacity 0.3s;\n transition: transform 0.3s, opacity 0.3s;\n }\n\n .p-toast-message-leave-active {\n -webkit-transition: max-height 0.45s cubic-bezier(0, 1, 0, 1), opacity 0.3s, margin-bottom 0.3s;\n transition: max-height 0.45s cubic-bezier(0, 1, 0, 1), opacity 0.3s, margin-bottom 0.3s;\n }\n}\n";
// Position
var inlineStyles = {
root: function root(_ref) {
var position = _ref.position;
return {
position: 'fixed',
top: position === 'top-right' || position === 'top-left' || position === 'top-center' ? '20px' : position === 'center' ? '50%' : null,
right: (position === 'top-right' || position === 'bottom-right') && '20px',
bottom: (position === 'bottom-left' || position === 'bottom-right' || position === 'bottom-center') && '20px',
left: position === 'top-left' || position === 'bottom-left' ? '20px' : position === 'center' || position === 'top-center' || position === 'bottom-center' ? '50%' : null
};
}
};
var classes = {
root: function root(_ref2) {
var props = _ref2.props,
instance = _ref2.instance;
return ['p-toast p-component p-toast-' + props.position, {
'p-input-filled': instance.$primevue.config.inputStyle === 'filled',
'p-ripple-disabled': instance.$primevue.config.ripple === false
}];
},
container: function container(_ref3) {
var props = _ref3.props;
return ['p-toast-message', {
'p-toast-message-info': props.message.severity === 'info' || props.message.severity === undefined,
'p-toast-message-warn': props.message.severity === 'warn',
'p-toast-message-error': props.message.severity === 'error',
'p-toast-message-success': props.message.severity === 'success'
}];
},
content: 'p-toast-message-content',
icon: function icon(_ref4) {
var props = _ref4.props;
return ['p-toast-message-icon', _defineProperty(_defineProperty(_defineProperty(_defineProperty({}, props.infoIcon, props.message.severity === 'info'), props.warnIcon, props.message.severity === 'warn'), props.errorIcon, props.message.severity === 'error'), props.successIcon, props.message.severity === 'success')];
},
text: 'p-toast-message-text',
summary: 'p-toast-summary',
detail: 'p-toast-detail',
closeButton: 'p-toast-icon-close p-link',
closeIcon: 'p-toast-icon-close-icon'
};
var ToastStyle = BaseStyle.extend({
name: 'toast',
css: css,
classes: classes,
inlineStyles: inlineStyles
});
export { ToastStyle as default };