UNPKG

reka-ui

Version:

Vue port for Radix UI Primitives.

87 lines (84 loc) 2.48 kB
const require_rolldown_runtime = require('../rolldown-runtime.cjs'); const require_shared_createContext = require('../shared/createContext.cjs'); const require_Collection_Collection = require('../Collection/Collection.cjs'); const vue = require_rolldown_runtime.__toESM(require("vue")); //#region src/Toast/ToastProvider.vue?vue&type=script&setup=true&lang.ts const [injectToastProviderContext, provideToastProviderContext] = require_shared_createContext.createContext("ToastProvider"); var ToastProvider_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ (0, vue.defineComponent)({ inheritAttrs: false, __name: "ToastProvider", props: { label: { type: String, required: false, default: "Notification" }, duration: { type: Number, required: false, default: 5e3 }, swipeDirection: { type: String, required: false, default: "right" }, swipeThreshold: { type: Number, required: false, default: 50 } }, setup(__props) { const props = __props; const { label, duration, swipeDirection, swipeThreshold } = (0, vue.toRefs)(props); require_Collection_Collection.useCollection({ isProvider: true }); const viewport = (0, vue.ref)(); const toastCount = (0, vue.ref)(0); const isFocusedToastEscapeKeyDownRef = (0, vue.ref)(false); const isClosePausedRef = (0, vue.ref)(false); if (props.label && typeof props.label === "string" && !props.label.trim()) { const error = "Invalid prop `label` supplied to `ToastProvider`. Expected non-empty `string`."; throw new Error(error); } provideToastProviderContext({ label, duration, swipeDirection, swipeThreshold, toastCount, viewport, onViewportChange(el) { viewport.value = el; }, onToastAdd() { toastCount.value++; }, onToastRemove() { toastCount.value--; }, isFocusedToastEscapeKeyDownRef, isClosePausedRef }); return (_ctx, _cache) => { return (0, vue.renderSlot)(_ctx.$slots, "default"); }; } }); //#endregion //#region src/Toast/ToastProvider.vue var ToastProvider_default = ToastProvider_vue_vue_type_script_setup_true_lang_default; //#endregion Object.defineProperty(exports, 'ToastProvider_default', { enumerable: true, get: function () { return ToastProvider_default; } }); Object.defineProperty(exports, 'injectToastProviderContext', { enumerable: true, get: function () { return injectToastProviderContext; } }); //# sourceMappingURL=ToastProvider.cjs.map