UNPKG

@opensig/opendesign

Version:

90 lines (89 loc) 2.7 kB
"use strict"; const vue = require("vue"); const OScrollbar_vue_vue_type_script_setup_true_lang = require("./OScrollbar.vue.js"); const types = require("./types.js"); const vueUtils = require("../_utils/vue-utils.js"); const _hoisted_1 = { class: "o-scroller o-scrollbar-wrapper" }; const _sfc_main = /* @__PURE__ */ vue.defineComponent({ __name: "OScroller", props: types.scrollerProps, emits: ["scroll"], setup(__props, { expose: __expose, emit: __emit }) { const props = __props; const emits = __emit; const targetRef = vue.ref(null); const scrollTo = (options) => { if (!targetRef.value) { return; } targetRef.value.scrollTo(options); }; const scrollBy = (options) => { if (!targetRef.value) { return; } targetRef.value.scrollBy(options); }; __expose({ scrollTo, /** * 按偏移量滚动 * @since 1.2.4 */ scrollBy, /** * 获取容器DOM元素 */ getContainerEl() { return targetRef.value; } }); return (_ctx, _cache) => { return vue.openBlock(), vue.createElementBlock("div", _hoisted_1, [ vue.createElementVNode( "div", { ref_key: "targetRef", ref: targetRef, class: vue.normalizeClass( vue.unref(vueUtils.mergeClass)( "o-scroller-container", { "is-x-disabled": props.disabledX, "is-y-disabled": props.disabledY }, props.wrapClass ) ), onScrollPassive: _cache[0] || (_cache[0] = (e) => emits("scroll", e)) }, [ vue.renderSlot(_ctx.$slots, "default") ], 34 /* CLASS, NEED_HYDRATION */ ), vue.createVNode(OScrollbar_vue_vue_type_script_setup_true_lang, { target: targetRef.value, "disabled-x": props.disabledX, "disabled-y": props.disabledY, duration: props.duration, "show-type": props.showType, size: props.size, "bar-class": props.barClass, "auto-update-on-scroll-size": props.autoUpdateOnScrollSize }, { thumb: vue.withCtx(() => [ vue.renderSlot(_ctx.$slots, "thumb") ]), track: vue.withCtx(() => [ vue.renderSlot(_ctx.$slots, "track") ]), _: 3 /* FORWARDED */ }, 8, ["target", "disabled-x", "disabled-y", "duration", "show-type", "size", "bar-class", "auto-update-on-scroll-size"]) ]); }; } }); module.exports = _sfc_main;