43 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			43 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
import { defineComponent, mergeProps as _mergeProps, createVNode as _createVNode } from "vue";
 | 
						|
import { pick, extend, numericProp, unknownProp, makeStringProp, createNamespace } from "../utils/index.mjs";
 | 
						|
import { Popup } from "../popup/index.mjs";
 | 
						|
import { popupSharedProps } from "../popup/shared.mjs";
 | 
						|
const [name, bem] = createNamespace("notify");
 | 
						|
const popupInheritProps = ["lockScroll", "position", "show", "teleport", "zIndex"];
 | 
						|
const notifyProps = extend({}, popupSharedProps, {
 | 
						|
  type: makeStringProp("danger"),
 | 
						|
  color: String,
 | 
						|
  message: numericProp,
 | 
						|
  position: makeStringProp("top"),
 | 
						|
  className: unknownProp,
 | 
						|
  background: String,
 | 
						|
  lockScroll: Boolean
 | 
						|
});
 | 
						|
var stdin_default = defineComponent({
 | 
						|
  name,
 | 
						|
  props: notifyProps,
 | 
						|
  emits: ["update:show"],
 | 
						|
  setup(props, {
 | 
						|
    emit,
 | 
						|
    slots
 | 
						|
  }) {
 | 
						|
    const updateShow = (show) => emit("update:show", show);
 | 
						|
    return () => _createVNode(Popup, _mergeProps({
 | 
						|
      "class": [bem([props.type]), props.className],
 | 
						|
      "style": {
 | 
						|
        color: props.color,
 | 
						|
        background: props.background
 | 
						|
      },
 | 
						|
      "overlay": false,
 | 
						|
      "duration": 0.2,
 | 
						|
      "onUpdate:show": updateShow
 | 
						|
    }, pick(props, popupInheritProps)), {
 | 
						|
      default: () => [slots.default ? slots.default() : props.message]
 | 
						|
    });
 | 
						|
  }
 | 
						|
});
 | 
						|
export {
 | 
						|
  stdin_default as default,
 | 
						|
  notifyProps
 | 
						|
};
 |