UNPKG

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

1 lines 41.8 kB
{"version":3,"file":"index.mjs","sources":["../../src/toast/BaseToast.vue","../../src/toast/ToastMessage.vue","../../src/toast/ToastMessage.vue?vue&type=template&id=4aaeaac6&lang.js","../../src/toast/Toast.vue","../../src/toast/Toast.vue?vue&type=template&id=784ef6d3&lang.js"],"sourcesContent":["<script>\nimport BaseComponent from '@primevue/core/basecomponent';\nimport ToastStyle from 'primevue/toast/style';\n\nexport default {\n name: 'BaseToast',\n extends: BaseComponent,\n props: {\n group: {\n type: String,\n default: null\n },\n position: {\n type: String,\n default: 'top-right'\n },\n autoZIndex: {\n type: Boolean,\n default: true\n },\n baseZIndex: {\n type: Number,\n default: 0\n },\n breakpoints: {\n type: Object,\n default: null\n },\n closeIcon: {\n type: String,\n default: undefined\n },\n infoIcon: {\n type: String,\n default: undefined\n },\n warnIcon: {\n type: String,\n default: undefined\n },\n errorIcon: {\n type: String,\n default: undefined\n },\n successIcon: {\n type: String,\n default: undefined\n },\n closeButtonProps: {\n type: null,\n default: null\n },\n onMouseEnter: {\n type: Function,\n default: undefined\n },\n onMouseLeave: {\n type: Function,\n default: undefined\n },\n onClick: {\n type: Function,\n default: undefined\n }\n },\n style: ToastStyle,\n provide() {\n return {\n $pcToast: this,\n $parentInstance: this\n };\n }\n};\n</script>\n","<template>\n <div :class=\"[cx('message'), message.styleClass]\" role=\"alert\" aria-live=\"assertive\" aria-atomic=\"true\" :data-p=\"dataP\" v-bind=\"ptm('message')\" @click=\"onMessageClick\" @mouseenter=\"onMouseEnter\" @mouseleave=\"onMouseLeave\">\n <component v-if=\"templates.container\" :is=\"templates.container\" :message=\"message\" :closeCallback=\"onCloseClick\" />\n <div v-else :class=\"[cx('messageContent'), message.contentStyleClass]\" v-bind=\"ptm('messageContent')\">\n <template v-if=\"!templates.message\">\n <component :is=\"templates.messageicon ? templates.messageicon : templates.icon ? templates.icon : iconComponent && iconComponent.name ? iconComponent : 'span'\" :class=\"cx('messageIcon')\" v-bind=\"ptm('messageIcon')\" />\n <div :class=\"cx('messageText')\" :data-p=\"dataP\" v-bind=\"ptm('messageText')\">\n <span :class=\"cx('summary')\" :data-p=\"dataP\" v-bind=\"ptm('summary')\">{{ message.summary }}</span>\n <div v-if=\"message.detail\" :class=\"cx('detail')\" :data-p=\"dataP\" v-bind=\"ptm('detail')\">{{ message.detail }}</div>\n </div>\n </template>\n <component v-else :is=\"templates.message\" :message=\"message\"></component>\n <div v-if=\"message.closable !== false\" v-bind=\"ptm('buttonContainer')\">\n <button v-ripple :class=\"cx('closeButton')\" type=\"button\" :aria-label=\"closeAriaLabel\" @click=\"onCloseClick\" autofocus :data-p=\"dataP\" v-bind=\"{ ...closeButtonProps, ...ptm('closeButton') }\">\n <component :is=\"templates.closeicon || 'TimesIcon'\" :class=\"[cx('closeIcon'), closeIcon]\" v-bind=\"ptm('closeIcon')\" />\n </button>\n </div>\n </div>\n </div>\n</template>\n\n<script>\nimport { cn } from '@primeuix/utils';\nimport BaseComponent from '@primevue/core/basecomponent';\nimport CheckIcon from '@primevue/icons/check';\nimport ExclamationTriangleIcon from '@primevue/icons/exclamationtriangle';\nimport InfoCircleIcon from '@primevue/icons/infocircle';\nimport TimesIcon from '@primevue/icons/times';\nimport TimesCircleIcon from '@primevue/icons/timescircle';\nimport Ripple from 'primevue/ripple';\n\nexport default {\n name: 'ToastMessage',\n hostName: 'Toast',\n extends: BaseComponent,\n emits: ['close'],\n closeTimeout: null,\n createdAt: null,\n lifeRemaining: null,\n props: {\n message: {\n type: null,\n default: null\n },\n templates: {\n type: Object,\n default: null\n },\n closeIcon: {\n type: String,\n default: null\n },\n infoIcon: {\n type: String,\n default: null\n },\n warnIcon: {\n type: String,\n default: null\n },\n errorIcon: {\n type: String,\n default: null\n },\n successIcon: {\n type: String,\n default: null\n },\n closeButtonProps: {\n type: null,\n default: null\n }\n },\n mounted() {\n if (this.message.life) {\n this.lifeRemaining = this.message.life;\n this.startTimeout();\n }\n },\n beforeUnmount() {\n this.clearCloseTimeout();\n },\n methods: {\n startTimeout() {\n this.createdAt = new Date().valueOf();\n this.closeTimeout = setTimeout(() => {\n this.close({ message: this.message, type: 'life-end' });\n }, this.lifeRemaining);\n },\n close(params) {\n this.$emit('close', params);\n },\n onCloseClick() {\n this.clearCloseTimeout();\n this.close({ message: this.message, type: 'close' });\n },\n clearCloseTimeout() {\n if (this.closeTimeout) {\n clearTimeout(this.closeTimeout);\n this.closeTimeout = null;\n }\n },\n onMessageClick(event) {\n this.props?.onClick && this.props.onClick({ originalEvent: event, message: this.message });\n },\n onMouseEnter(event) {\n if (this.props?.onMouseEnter) {\n this.props.onMouseEnter({ originalEvent: event, message: this.message });\n\n if (event.defaultPrevented) {\n return;\n }\n\n if (this.message.life) {\n this.lifeRemaining = this.createdAt + this.lifeRemaining - Date().valueOf();\n this.createdAt = null;\n this.clearCloseTimeout();\n }\n }\n },\n onMouseLeave(event) {\n if (this.props?.onMouseLeave) {\n this.props.onMouseLeave({ originalEvent: event, message: this.message });\n\n if (event.defaultPrevented) {\n return;\n }\n\n if (this.message.life) {\n this.startTimeout();\n }\n }\n }\n },\n computed: {\n iconComponent() {\n return {\n info: !this.infoIcon && InfoCircleIcon,\n success: !this.successIcon && CheckIcon,\n warn: !this.warnIcon && ExclamationTriangleIcon,\n error: !this.errorIcon && TimesCircleIcon\n }[this.message.severity];\n },\n closeAriaLabel() {\n return this.$primevue.config.locale.aria ? this.$primevue.config.locale.aria.close : undefined;\n },\n dataP() {\n return cn({\n [this.message.severity]: this.message.severity\n });\n }\n },\n components: {\n TimesIcon: TimesIcon,\n InfoCircleIcon: InfoCircleIcon,\n CheckIcon: CheckIcon,\n ExclamationTriangleIcon: ExclamationTriangleIcon,\n TimesCircleIcon: TimesCircleIcon\n },\n directives: {\n ripple: Ripple\n }\n};\n</script>\n","<template>\n <div :class=\"[cx('message'), message.styleClass]\" role=\"alert\" aria-live=\"assertive\" aria-atomic=\"true\" :data-p=\"dataP\" v-bind=\"ptm('message')\" @click=\"onMessageClick\" @mouseenter=\"onMouseEnter\" @mouseleave=\"onMouseLeave\">\n <component v-if=\"templates.container\" :is=\"templates.container\" :message=\"message\" :closeCallback=\"onCloseClick\" />\n <div v-else :class=\"[cx('messageContent'), message.contentStyleClass]\" v-bind=\"ptm('messageContent')\">\n <template v-if=\"!templates.message\">\n <component :is=\"templates.messageicon ? templates.messageicon : templates.icon ? templates.icon : iconComponent && iconComponent.name ? iconComponent : 'span'\" :class=\"cx('messageIcon')\" v-bind=\"ptm('messageIcon')\" />\n <div :class=\"cx('messageText')\" :data-p=\"dataP\" v-bind=\"ptm('messageText')\">\n <span :class=\"cx('summary')\" :data-p=\"dataP\" v-bind=\"ptm('summary')\">{{ message.summary }}</span>\n <div v-if=\"message.detail\" :class=\"cx('detail')\" :data-p=\"dataP\" v-bind=\"ptm('detail')\">{{ message.detail }}</div>\n </div>\n </template>\n <component v-else :is=\"templates.message\" :message=\"message\"></component>\n <div v-if=\"message.closable !== false\" v-bind=\"ptm('buttonContainer')\">\n <button v-ripple :class=\"cx('closeButton')\" type=\"button\" :aria-label=\"closeAriaLabel\" @click=\"onCloseClick\" autofocus :data-p=\"dataP\" v-bind=\"{ ...closeButtonProps, ...ptm('closeButton') }\">\n <component :is=\"templates.closeicon || 'TimesIcon'\" :class=\"[cx('closeIcon'), closeIcon]\" v-bind=\"ptm('closeIcon')\" />\n </button>\n </div>\n </div>\n </div>\n</template>\n\n<script>\nimport { cn } from '@primeuix/utils';\nimport BaseComponent from '@primevue/core/basecomponent';\nimport CheckIcon from '@primevue/icons/check';\nimport ExclamationTriangleIcon from '@primevue/icons/exclamationtriangle';\nimport InfoCircleIcon from '@primevue/icons/infocircle';\nimport TimesIcon from '@primevue/icons/times';\nimport TimesCircleIcon from '@primevue/icons/timescircle';\nimport Ripple from 'primevue/ripple';\n\nexport default {\n name: 'ToastMessage',\n hostName: 'Toast',\n extends: BaseComponent,\n emits: ['close'],\n closeTimeout: null,\n createdAt: null,\n lifeRemaining: null,\n props: {\n message: {\n type: null,\n default: null\n },\n templates: {\n type: Object,\n default: null\n },\n closeIcon: {\n type: String,\n default: null\n },\n infoIcon: {\n type: String,\n default: null\n },\n warnIcon: {\n type: String,\n default: null\n },\n errorIcon: {\n type: String,\n default: null\n },\n successIcon: {\n type: String,\n default: null\n },\n closeButtonProps: {\n type: null,\n default: null\n }\n },\n mounted() {\n if (this.message.life) {\n this.lifeRemaining = this.message.life;\n this.startTimeout();\n }\n },\n beforeUnmount() {\n this.clearCloseTimeout();\n },\n methods: {\n startTimeout() {\n this.createdAt = new Date().valueOf();\n this.closeTimeout = setTimeout(() => {\n this.close({ message: this.message, type: 'life-end' });\n }, this.lifeRemaining);\n },\n close(params) {\n this.$emit('close', params);\n },\n onCloseClick() {\n this.clearCloseTimeout();\n this.close({ message: this.message, type: 'close' });\n },\n clearCloseTimeout() {\n if (this.closeTimeout) {\n clearTimeout(this.closeTimeout);\n this.closeTimeout = null;\n }\n },\n onMessageClick(event) {\n this.props?.onClick && this.props.onClick({ originalEvent: event, message: this.message });\n },\n onMouseEnter(event) {\n if (this.props?.onMouseEnter) {\n this.props.onMouseEnter({ originalEvent: event, message: this.message });\n\n if (event.defaultPrevented) {\n return;\n }\n\n if (this.message.life) {\n this.lifeRemaining = this.createdAt + this.lifeRemaining - Date().valueOf();\n this.createdAt = null;\n this.clearCloseTimeout();\n }\n }\n },\n onMouseLeave(event) {\n if (this.props?.onMouseLeave) {\n this.props.onMouseLeave({ originalEvent: event, message: this.message });\n\n if (event.defaultPrevented) {\n return;\n }\n\n if (this.message.life) {\n this.startTimeout();\n }\n }\n }\n },\n computed: {\n iconComponent() {\n return {\n info: !this.infoIcon && InfoCircleIcon,\n success: !this.successIcon && CheckIcon,\n warn: !this.warnIcon && ExclamationTriangleIcon,\n error: !this.errorIcon && TimesCircleIcon\n }[this.message.severity];\n },\n closeAriaLabel() {\n return this.$primevue.config.locale.aria ? this.$primevue.config.locale.aria.close : undefined;\n },\n dataP() {\n return cn({\n [this.message.severity]: this.message.severity\n });\n }\n },\n components: {\n TimesIcon: TimesIcon,\n InfoCircleIcon: InfoCircleIcon,\n CheckIcon: CheckIcon,\n ExclamationTriangleIcon: ExclamationTriangleIcon,\n TimesCircleIcon: TimesCircleIcon\n },\n directives: {\n ripple: Ripple\n }\n};\n</script>\n","<template>\n <Portal>\n <div ref=\"container\" :class=\"cx('root')\" :style=\"sx('root', true, { position })\" :data-p=\"dataP\" v-bind=\"ptmi('root')\">\n <transition-group name=\"p-toast-message\" tag=\"div\" @enter=\"onEnter\" @leave=\"onLeave\" v-bind=\"{ ...ptm('transition') }\">\n <ToastMessage\n v-for=\"msg of messages\"\n :key=\"msg.id\"\n :message=\"msg\"\n :templates=\"$slots\"\n :closeIcon=\"closeIcon\"\n :infoIcon=\"infoIcon\"\n :warnIcon=\"warnIcon\"\n :errorIcon=\"errorIcon\"\n :successIcon=\"successIcon\"\n :closeButtonProps=\"closeButtonProps\"\n :unstyled=\"unstyled\"\n @close=\"remove($event)\"\n :pt=\"pt\"\n />\n </transition-group>\n </div>\n </Portal>\n</template>\n\n<script>\nimport { cn } from '@primeuix/utils';\nimport { setAttribute } from '@primeuix/utils/dom';\nimport { isEmpty } from '@primeuix/utils/object';\nimport { ZIndex } from '@primeuix/utils/zindex';\nimport Portal from 'primevue/portal';\nimport ToastEventBus from 'primevue/toasteventbus';\nimport BaseToast from './BaseToast.vue';\nimport ToastMessage from './ToastMessage.vue';\n\nvar messageIdx = 0;\n\nexport default {\n name: 'Toast',\n extends: BaseToast,\n inheritAttrs: false,\n emits: ['close', 'life-end'],\n data() {\n return {\n messages: []\n };\n },\n styleElement: null,\n mounted() {\n ToastEventBus.on('add', this.onAdd);\n ToastEventBus.on('remove', this.onRemove);\n ToastEventBus.on('remove-group', this.onRemoveGroup);\n ToastEventBus.on('remove-all-groups', this.onRemoveAllGroups);\n\n if (this.breakpoints) {\n this.createStyle();\n }\n },\n beforeUnmount() {\n this.destroyStyle();\n\n if (this.$refs.container && this.autoZIndex) {\n ZIndex.clear(this.$refs.container);\n }\n\n ToastEventBus.off('add', this.onAdd);\n ToastEventBus.off('remove', this.onRemove);\n ToastEventBus.off('remove-group', this.onRemoveGroup);\n ToastEventBus.off('remove-all-groups', this.onRemoveAllGroups);\n },\n methods: {\n add(message) {\n if (message.id == null) {\n message.id = messageIdx++;\n }\n\n this.messages = [...this.messages, message];\n },\n remove(params) {\n const index = this.messages.findIndex((m) => m.id === params.message.id);\n\n if (index !== -1) {\n this.messages.splice(index, 1);\n this.$emit(params.type, { message: params.message });\n }\n },\n onAdd(message) {\n if (this.group == message.group) {\n this.add(message);\n }\n },\n onRemove(message) {\n this.remove({ message, type: 'close' });\n },\n onRemoveGroup(group) {\n if (this.group === group) {\n this.messages = [];\n }\n },\n onRemoveAllGroups() {\n this.messages.forEach((message) => this.$emit('close', { message }));\n this.messages = [];\n },\n onEnter() {\n if (this.autoZIndex) {\n ZIndex.set('modal', this.$refs.container, this.baseZIndex || this.$primevue.config.zIndex.modal);\n }\n },\n onLeave() {\n if (this.$refs.container && this.autoZIndex && isEmpty(this.messages)) {\n setTimeout(() => {\n ZIndex.clear(this.$refs.container);\n }, 200);\n }\n },\n createStyle() {\n if (!this.styleElement && !this.isUnstyled) {\n this.styleElement = document.createElement('style');\n this.styleElement.type = 'text/css';\n setAttribute(this.styleElement, 'nonce', this.$primevue?.config?.csp?.nonce);\n document.head.appendChild(this.styleElement);\n\n let innerHTML = '';\n\n for (let breakpoint in this.breakpoints) {\n let breakpointStyle = '';\n\n for (let styleProp in this.breakpoints[breakpoint]) {\n breakpointStyle += styleProp + ':' + this.breakpoints[breakpoint][styleProp] + '!important;';\n }\n\n innerHTML += `\n @media screen and (max-width: ${breakpoint}) {\n .p-toast[${this.$attrSelector}] {\n ${breakpointStyle}\n }\n }\n `;\n }\n\n this.styleElement.innerHTML = innerHTML;\n }\n },\n destroyStyle() {\n if (this.styleElement) {\n document.head.removeChild(this.styleElement);\n this.styleElement = null;\n }\n }\n },\n computed: {\n dataP() {\n return cn({\n [this.position]: this.position\n });\n }\n },\n components: {\n ToastMessage: ToastMessage,\n Portal: Portal\n }\n};\n</script>\n","<template>\n <Portal>\n <div ref=\"container\" :class=\"cx('root')\" :style=\"sx('root', true, { position })\" :data-p=\"dataP\" v-bind=\"ptmi('root')\">\n <transition-group name=\"p-toast-message\" tag=\"div\" @enter=\"onEnter\" @leave=\"onLeave\" v-bind=\"{ ...ptm('transition') }\">\n <ToastMessage\n v-for=\"msg of messages\"\n :key=\"msg.id\"\n :message=\"msg\"\n :templates=\"$slots\"\n :closeIcon=\"closeIcon\"\n :infoIcon=\"infoIcon\"\n :warnIcon=\"warnIcon\"\n :errorIcon=\"errorIcon\"\n :successIcon=\"successIcon\"\n :closeButtonProps=\"closeButtonProps\"\n :unstyled=\"unstyled\"\n @close=\"remove($event)\"\n :pt=\"pt\"\n />\n </transition-group>\n </div>\n </Portal>\n</template>\n\n<script>\nimport { cn } from '@primeuix/utils';\nimport { setAttribute } from '@primeuix/utils/dom';\nimport { isEmpty } from '@primeuix/utils/object';\nimport { ZIndex } from '@primeuix/utils/zindex';\nimport Portal from 'primevue/portal';\nimport ToastEventBus from 'primevue/toasteventbus';\nimport BaseToast from './BaseToast.vue';\nimport ToastMessage from './ToastMessage.vue';\n\nvar messageIdx = 0;\n\nexport default {\n name: 'Toast',\n extends: BaseToast,\n inheritAttrs: false,\n emits: ['close', 'life-end'],\n data() {\n return {\n messages: []\n };\n },\n styleElement: null,\n mounted() {\n ToastEventBus.on('add', this.onAdd);\n ToastEventBus.on('remove', this.onRemove);\n ToastEventBus.on('remove-group', this.onRemoveGroup);\n ToastEventBus.on('remove-all-groups', this.onRemoveAllGroups);\n\n if (this.breakpoints) {\n this.createStyle();\n }\n },\n beforeUnmount() {\n this.destroyStyle();\n\n if (this.$refs.container && this.autoZIndex) {\n ZIndex.clear(this.$refs.container);\n }\n\n ToastEventBus.off('add', this.onAdd);\n ToastEventBus.off('remove', this.onRemove);\n ToastEventBus.off('remove-group', this.onRemoveGroup);\n ToastEventBus.off('remove-all-groups', this.onRemoveAllGroups);\n },\n methods: {\n add(message) {\n if (message.id == null) {\n message.id = messageIdx++;\n }\n\n this.messages = [...this.messages, message];\n },\n remove(params) {\n const index = this.messages.findIndex((m) => m.id === params.message.id);\n\n if (index !== -1) {\n this.messages.splice(index, 1);\n this.$emit(params.type, { message: params.message });\n }\n },\n onAdd(message) {\n if (this.group == message.group) {\n this.add(message);\n }\n },\n onRemove(message) {\n this.remove({ message, type: 'close' });\n },\n onRemoveGroup(group) {\n if (this.group === group) {\n this.messages = [];\n }\n },\n onRemoveAllGroups() {\n this.messages.forEach((message) => this.$emit('close', { message }));\n this.messages = [];\n },\n onEnter() {\n if (this.autoZIndex) {\n ZIndex.set('modal', this.$refs.container, this.baseZIndex || this.$primevue.config.zIndex.modal);\n }\n },\n onLeave() {\n if (this.$refs.container && this.autoZIndex && isEmpty(this.messages)) {\n setTimeout(() => {\n ZIndex.clear(this.$refs.container);\n }, 200);\n }\n },\n createStyle() {\n if (!this.styleElement && !this.isUnstyled) {\n this.styleElement = document.createElement('style');\n this.styleElement.type = 'text/css';\n setAttribute(this.styleElement, 'nonce', this.$primevue?.config?.csp?.nonce);\n document.head.appendChild(this.styleElement);\n\n let innerHTML = '';\n\n for (let breakpoint in this.breakpoints) {\n let breakpointStyle = '';\n\n for (let styleProp in this.breakpoints[breakpoint]) {\n breakpointStyle += styleProp + ':' + this.breakpoints[breakpoint][styleProp] + '!important;';\n }\n\n innerHTML += `\n @media screen and (max-width: ${breakpoint}) {\n .p-toast[${this.$attrSelector}] {\n ${breakpointStyle}\n }\n }\n `;\n }\n\n this.styleElement.innerHTML = innerHTML;\n }\n },\n destroyStyle() {\n if (this.styleElement) {\n document.head.removeChild(this.styleElement);\n this.styleElement = null;\n }\n }\n },\n computed: {\n dataP() {\n return cn({\n [this.position]: this.position\n });\n }\n },\n components: {\n ToastMessage: ToastMessage,\n Portal: Portal\n }\n};\n</script>\n"],"names":["name","BaseComponent","props","group","type","String","position","autoZIndex","Boolean","baseZIndex","Number","breakpoints","Object","closeIcon","undefined","infoIcon","warnIcon","errorIcon","successIcon","closeButtonProps","onMouseEnter","Function","onMouseLeave","onClick","style","ToastStyle","provide","$pcToast","$parentInstance","hostName","emits","closeTimeout","createdAt","lifeRemaining","message","templates","mounted","life","startTimeout","beforeUnmount","clearCloseTimeout","methods","_this","Date","valueOf","setTimeout","close","params","$emit","onCloseClick","clearTimeout","onMessageClick","event","_this$props","originalEvent","_this$props2","defaultPrevented","_this$props3","computed","iconComponent","info","InfoCircleIcon","success","CheckIcon","warn","ExclamationTriangleIcon","error","TimesCircleIcon","severity","closeAriaLabel","$primevue","config","locale","aria","dataP","cn","_defineProperty","components","TimesIcon","directives","ripple","Ripple","_openBlock","_createElementBlock","_mergeProps","_ctx","cx","$props","styleClass","role","$options","ptm","apply","arguments","onMouseenter","onMouseleave","container","_createBlock","_resolveDynamicComponent","closeCallback","contentStyleClass","_Fragment","key","messageicon","icon","_createElementVNode","_toDisplayString","summary","_hoisted_3","detail","_hoisted_4","closable","_withDirectives","autofocus","_objectSpread","closeicon","messageIdx","BaseToast","inheritAttrs","data","messages","styleElement","ToastEventBus","on","onAdd","onRemove","onRemoveGroup","onRemoveAllGroups","createStyle","destroyStyle","$refs","ZIndex","clear","off","add","id","concat","_toConsumableArray","remove","index","findIndex","m","splice","forEach","onEnter","set","zIndex","modal","onLeave","_this2","isEmpty","isUnstyled","_this$$primevue","document","createElement","setAttribute","csp","nonce","head","appendChild","innerHTML","breakpoint","breakpointStyle","styleProp","$attrSelector","removeChild","ToastMessage","Portal","_component_Portal","ref","sx","ptmi","_createVNode","_TransitionGroup","tag","_renderList","$data","msg","_component_ToastMessage","$slots","unstyled","onClose","_cache","$event","pt"],"mappings":"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"}