import "../styles/reset.css";
import { PropTypes as __WEBPACK_EXTERNAL_MODULE_bkui_vue_lib_shared_edbdfb03_PropTypes__, bkZIndexManager as __WEBPACK_EXTERNAL_MODULE_bkui_vue_lib_shared_edbdfb03_bkZIndexManager__, getFullscreenRoot as __WEBPACK_EXTERNAL_MODULE_bkui_vue_lib_shared_edbdfb03_getFullscreenRoot__, resolveClassName as __WEBPACK_EXTERNAL_MODULE_bkui_vue_lib_shared_edbdfb03_resolveClassName__, withInstall as __WEBPACK_EXTERNAL_MODULE_bkui_vue_lib_shared_edbdfb03_withInstall__ } from "../shared";
import { Fragment as __WEBPACK_EXTERNAL_MODULE_vue_Fragment__, Teleport as __WEBPACK_EXTERNAL_MODULE_vue_Teleport__, Transition as __WEBPACK_EXTERNAL_MODULE_vue_Transition__, computed as __WEBPACK_EXTERNAL_MODULE_vue_computed__, createTextVNode as __WEBPACK_EXTERNAL_MODULE_vue_createTextVNode__, createVNode as __WEBPACK_EXTERNAL_MODULE_vue_createVNode__, defineComponent as __WEBPACK_EXTERNAL_MODULE_vue_defineComponent__, effectScope as __WEBPACK_EXTERNAL_MODULE_vue_effectScope__, h as __WEBPACK_EXTERNAL_MODULE_vue_h__, nextTick as __WEBPACK_EXTERNAL_MODULE_vue_nextTick__, ref as __WEBPACK_EXTERNAL_MODULE_vue_ref__, render as __WEBPACK_EXTERNAL_MODULE_vue_render__, resolveDirective as __WEBPACK_EXTERNAL_MODULE_vue_resolveDirective__, shallowRef as __WEBPACK_EXTERNAL_MODULE_vue_shallowRef__, watch as __WEBPACK_EXTERNAL_MODULE_vue_watch__, withDirectives as __WEBPACK_EXTERNAL_MODULE_vue_withDirectives__ } from "vue";
import { usePrefix as __WEBPACK_EXTERNAL_MODULE_bkui_vue_lib_config_provider_fe8577a3_usePrefix__ } from "../config-provider";
import { AngleLeft as __WEBPACK_EXTERNAL_MODULE_bkui_vue_lib_icon_a97c79c3_AngleLeft__, AngleRight as __WEBPACK_EXTERNAL_MODULE_bkui_vue_lib_icon_a97c79c3_AngleRight__, Close as __WEBPACK_EXTERNAL_MODULE_bkui_vue_lib_icon_a97c79c3_Close__, Spinner as __WEBPACK_EXTERNAL_MODULE_bkui_vue_lib_icon_a97c79c3_Spinner__ } from "../icon";
import "../popover";
import { createPopper as __WEBPACK_EXTERNAL_MODULE__popperjs_core_a5c7319c_createPopper__ } from "@popperjs/core";
import "../loading";
import "../overflow-title";
import { default as __WEBPACK_EXTERNAL_MODULE_lodash_throttle_a7b7506a_default__ } from "lodash/throttle";
import { toType as __WEBPACK_EXTERNAL_MODULE_vue_types_22de060a_toType__ } from "vue-types";
/******/ var __webpack_modules__ = ({

/***/ 8283
(module, __unused_webpack_exports, __webpack_require__) {

/* unused reexport */ __webpack_require__(5022);


/***/ },

/***/ 1043
(module) {

/**
 * Copyright (c) 2015, Facebook, Inc.
 * All rights reserved.
 *
 * This source code is licensed under the BSD-style license found in the
 * LICENSE file in the root directory of this source tree. An additional grant
 * of patent rights can be found in the PATENTS file in the same directory.
 *
 * @providesModule ExecutionEnvironment
 */

/*jslint evil: true */



var canUseDOM = !!(
  typeof window !== 'undefined' &&
  window.document &&
  window.document.createElement
);

/**
 * Simple, lightweight module assisting with the detection and context of
 * Worker. Helps avoid circular dependencies and allows code to reason about
 * whether or not they are in a Worker, even if they never include the main
 * `ReactWorker` dependency.
 */
var ExecutionEnvironment = {

  canUseDOM: canUseDOM,

  canUseWorkers: typeof Worker !== 'undefined',

  canUseEventListeners:
    canUseDOM && !!(window.addEventListener || window.attachEvent),

  canUseViewport: canUseDOM && !!window.screen,

  isInWorker: !canUseDOM // For now, this is true - might change in the future.

};

module.exports = ExecutionEnvironment;


/***/ },

/***/ 7416
(module) {

/**
 * Copyright 2004-present Facebook. All Rights Reserved.
 *
 * @providesModule UserAgent_DEPRECATED
 */

/**
 *  Provides entirely client-side User Agent and OS detection. You should prefer
 *  the non-deprecated UserAgent module when possible, which exposes our
 *  authoritative server-side PHP-based detection to the client.
 *
 *  Usage is straightforward:
 *
 *    if (UserAgent_DEPRECATED.ie()) {
 *      //  IE
 *    }
 *
 *  You can also do version checks:
 *
 *    if (UserAgent_DEPRECATED.ie() >= 7) {
 *      //  IE7 or better
 *    }
 *
 *  The browser functions will return NaN if the browser does not match, so
 *  you can also do version compares the other way:
 *
 *    if (UserAgent_DEPRECATED.ie() < 7) {
 *      //  IE6 or worse
 *    }
 *
 *  Note that the version is a float and may include a minor version number,
 *  so you should always use range operators to perform comparisons, not
 *  strict equality.
 *
 *  **Note:** You should **strongly** prefer capability detection to browser
 *  version detection where it's reasonable:
 *
 *    http://www.quirksmode.org/js/support.html
 *
 *  Further, we have a large number of mature wrapper functions and classes
 *  which abstract away many browser irregularities. Check the documentation,
 *  grep for things, or ask on javascript@lists.facebook.com before writing yet
 *  another copy of "event || window.event".
 *
 */

var _populated = false;

// Browsers
var _ie, _firefox, _opera, _webkit, _chrome;

// Actual IE browser for compatibility mode
var _ie_real_version;

// Platforms
var _osx, _windows, _linux, _android;

// Architectures
var _win64;

// Devices
var _iphone, _ipad, _native;

var _mobile;

function _populate() {
  if (_populated) {
    return;
  }

  _populated = true;

  // To work around buggy JS libraries that can't handle multi-digit
  // version numbers, Opera 10's user agent string claims it's Opera
  // 9, then later includes a Version/X.Y field:
  //
  // Opera/9.80 (foo) Presto/2.2.15 Version/10.10
  var uas = navigator.userAgent;
  var agent = /(?:MSIE.(\d+\.\d+))|(?:(?:Firefox|GranParadiso|Iceweasel).(\d+\.\d+))|(?:Opera(?:.+Version.|.)(\d+\.\d+))|(?:AppleWebKit.(\d+(?:\.\d+)?))|(?:Trident\/\d+\.\d+.*rv:(\d+\.\d+))/.exec(uas);
  var os    = /(Mac OS X)|(Windows)|(Linux)/.exec(uas);

  _iphone = /\b(iPhone|iP[ao]d)/.exec(uas);
  _ipad = /\b(iP[ao]d)/.exec(uas);
  _android = /Android/i.exec(uas);
  _native = /FBAN\/\w+;/i.exec(uas);
  _mobile = /Mobile/i.exec(uas);

  // Note that the IE team blog would have you believe you should be checking
  // for 'Win64; x64'.  But MSDN then reveals that you can actually be coming
  // from either x64 or ia64;  so ultimately, you should just check for Win64
  // as in indicator of whether you're in 64-bit IE.  32-bit IE on 64-bit
  // Windows will send 'WOW64' instead.
  _win64 = !!(/Win64/.exec(uas));

  if (agent) {
    _ie = agent[1] ? parseFloat(agent[1]) : (
          agent[5] ? parseFloat(agent[5]) : NaN);
    // IE compatibility mode
    if (_ie && document && document.documentMode) {
      _ie = document.documentMode;
    }
    // grab the "true" ie version from the trident token if available
    var trident = /(?:Trident\/(\d+.\d+))/.exec(uas);
    _ie_real_version = trident ? parseFloat(trident[1]) + 4 : _ie;

    _firefox = agent[2] ? parseFloat(agent[2]) : NaN;
    _opera   = agent[3] ? parseFloat(agent[3]) : NaN;
    _webkit  = agent[4] ? parseFloat(agent[4]) : NaN;
    if (_webkit) {
      // We do not add the regexp to the above test, because it will always
      // match 'safari' only since 'AppleWebKit' appears before 'Chrome' in
      // the userAgent string.
      agent = /(?:Chrome\/(\d+\.\d+))/.exec(uas);
      _chrome = agent && agent[1] ? parseFloat(agent[1]) : NaN;
    } else {
      _chrome = NaN;
    }
  } else {
    _ie = _firefox = _opera = _chrome = _webkit = NaN;
  }

  if (os) {
    if (os[1]) {
      // Detect OS X version.  If no version number matches, set _osx to true.
      // Version examples:  10, 10_6_1, 10.7
      // Parses version number as a float, taking only first two sets of
      // digits.  If only one set of digits is found, returns just the major
      // version number.
      var ver = /(?:Mac OS X (\d+(?:[._]\d+)?))/.exec(uas);

      _osx = ver ? parseFloat(ver[1].replace('_', '.')) : true;
    } else {
      _osx = false;
    }
    _windows = !!os[2];
    _linux   = !!os[3];
  } else {
    _osx = _windows = _linux = false;
  }
}

var UserAgent_DEPRECATED = {

  /**
   *  Check if the UA is Internet Explorer.
   *
   *
   *  @return float|NaN Version number (if match) or NaN.
   */
  ie: function() {
    return _populate() || _ie;
  },

  /**
   * Check if we're in Internet Explorer compatibility mode.
   *
   * @return bool true if in compatibility mode, false if
   * not compatibility mode or not ie
   */
  ieCompatibilityMode: function() {
    return _populate() || (_ie_real_version > _ie);
  },


  /**
   * Whether the browser is 64-bit IE.  Really, this is kind of weak sauce;  we
   * only need this because Skype can't handle 64-bit IE yet.  We need to remove
   * this when we don't need it -- tracked by #601957.
   */
  ie64: function() {
    return UserAgent_DEPRECATED.ie() && _win64;
  },

  /**
   *  Check if the UA is Firefox.
   *
   *
   *  @return float|NaN Version number (if match) or NaN.
   */
  firefox: function() {
    return _populate() || _firefox;
  },


  /**
   *  Check if the UA is Opera.
   *
   *
   *  @return float|NaN Version number (if match) or NaN.
   */
  opera: function() {
    return _populate() || _opera;
  },


  /**
   *  Check if the UA is WebKit.
   *
   *
   *  @return float|NaN Version number (if match) or NaN.
   */
  webkit: function() {
    return _populate() || _webkit;
  },

  /**
   *  For Push
   *  WILL BE REMOVED VERY SOON. Use UserAgent_DEPRECATED.webkit
   */
  safari: function() {
    return UserAgent_DEPRECATED.webkit();
  },

  /**
   *  Check if the UA is a Chrome browser.
   *
   *
   *  @return float|NaN Version number (if match) or NaN.
   */
  chrome : function() {
    return _populate() || _chrome;
  },


  /**
   *  Check if the user is running Windows.
   *
   *  @return bool `true' if the user's OS is Windows.
   */
  windows: function() {
    return _populate() || _windows;
  },


  /**
   *  Check if the user is running Mac OS X.
   *
   *  @return float|bool   Returns a float if a version number is detected,
   *                       otherwise true/false.
   */
  osx: function() {
    return _populate() || _osx;
  },

  /**
   * Check if the user is running Linux.
   *
   * @return bool `true' if the user's OS is some flavor of Linux.
   */
  linux: function() {
    return _populate() || _linux;
  },

  /**
   * Check if the user is running on an iPhone or iPod platform.
   *
   * @return bool `true' if the user is running some flavor of the
   *    iPhone OS.
   */
  iphone: function() {
    return _populate() || _iphone;
  },

  mobile: function() {
    return _populate() || (_iphone || _ipad || _android || _mobile);
  },

  nativeApp: function() {
    // webviews inside of the native apps
    return _populate() || _native;
  },

  android: function() {
    return _populate() || _android;
  },

  ipad: function() {
    return _populate() || _ipad;
  }
};

module.exports = UserAgent_DEPRECATED;


/***/ },

/***/ 2586
(module, __unused_webpack_exports, __webpack_require__) {

/**
 * Copyright 2013-2015, Facebook, Inc.
 * All rights reserved.
 *
 * This source code is licensed under the BSD-style license found in the
 * LICENSE file in the root directory of this source tree. An additional grant
 * of patent rights can be found in the PATENTS file in the same directory.
 *
 * @providesModule isEventSupported
 */



var ExecutionEnvironment = __webpack_require__(1043);

var useHasFeature;
if (ExecutionEnvironment.canUseDOM) {
  useHasFeature =
    document.implementation &&
    document.implementation.hasFeature &&
    // always returns true in newer browsers as per the standard.
    // @see http://dom.spec.whatwg.org/#dom-domimplementation-hasfeature
    document.implementation.hasFeature('', '') !== true;
}

/**
 * Checks if an event is supported in the current execution environment.
 *
 * NOTE: This will not work correctly for non-generic events such as `change`,
 * `reset`, `load`, `error`, and `select`.
 *
 * Borrows from Modernizr.
 *
 * @param {string} eventNameSuffix Event name, e.g. "click".
 * @param {?boolean} capture Check if the capture phase is supported.
 * @return {boolean} True if the event is supported.
 * @internal
 * @license Modernizr 3.0.0pre (Custom Build) | MIT
 */
function isEventSupported(eventNameSuffix, capture) {
  if (!ExecutionEnvironment.canUseDOM ||
      capture && !('addEventListener' in document)) {
    return false;
  }

  var eventName = 'on' + eventNameSuffix;
  var isSupported = eventName in document;

  if (!isSupported) {
    var element = document.createElement('div');
    element.setAttribute(eventName, 'return;');
    isSupported = typeof element[eventName] === 'function';
  }

  if (!isSupported && useHasFeature && eventNameSuffix === 'wheel') {
    // This is the only way to test support for the `wheel` event in IE9+.
    isSupported = document.implementation.hasFeature('Events.wheel', '3.0');
  }

  return isSupported;
}

module.exports = isEventSupported;


/***/ },

/***/ 5022
(module, __unused_webpack_exports, __webpack_require__) {

/**
 * Copyright (c) 2015, Facebook, Inc.
 * All rights reserved.
 *
 * This source code is licensed under the BSD-style license found in the
 * LICENSE file in the root directory of this source tree. An additional grant
 * of patent rights can be found in the PATENTS file in the same directory.
 *
 * @providesModule normalizeWheel
 * @typechecks
 */



var UserAgent_DEPRECATED = __webpack_require__(7416);

var isEventSupported = __webpack_require__(2586);


// Reasonable defaults
var PIXEL_STEP  = 10;
var LINE_HEIGHT = 40;
var PAGE_HEIGHT = 800;

/**
 * Mouse wheel (and 2-finger trackpad) support on the web sucks.  It is
 * complicated, thus this doc is long and (hopefully) detailed enough to answer
 * your questions.
 *
 * If you need to react to the mouse wheel in a predictable way, this code is
 * like your bestest friend. * hugs *
 *
 * As of today, there are 4 DOM event types you can listen to:
 *
 *   'wheel'                -- Chrome(31+), FF(17+), IE(9+)
 *   'mousewheel'           -- Chrome, IE(6+), Opera, Safari
 *   'MozMousePixelScroll'  -- FF(3.5 only!) (2010-2013) -- don't bother!
 *   'DOMMouseScroll'       -- FF(0.9.7+) since 2003
 *
 * So what to do?  The is the best:
 *
 *   normalizeWheel.getEventType();
 *
 * In your event callback, use this code to get sane interpretation of the
 * deltas.  This code will return an object with properties:
 *
 *   spinX   -- normalized spin speed (use for zoom) - x plane
 *   spinY   -- " - y plane
 *   pixelX  -- normalized distance (to pixels) - x plane
 *   pixelY  -- " - y plane
 *
 * Wheel values are provided by the browser assuming you are using the wheel to
 * scroll a web page by a number of lines or pixels (or pages).  Values can vary
 * significantly on different platforms and browsers, forgetting that you can
 * scroll at different speeds.  Some devices (like trackpads) emit more events
 * at smaller increments with fine granularity, and some emit massive jumps with
 * linear speed or acceleration.
 *
 * This code does its best to normalize the deltas for you:
 *
 *   - spin is trying to normalize how far the wheel was spun (or trackpad
 *     dragged).  This is super useful for zoom support where you want to
 *     throw away the chunky scroll steps on the PC and make those equal to
 *     the slow and smooth tiny steps on the Mac. Key data: This code tries to
 *     resolve a single slow step on a wheel to 1.
 *
 *   - pixel is normalizing the desired scroll delta in pixel units.  You'll
 *     get the crazy differences between browsers, but at least it'll be in
 *     pixels!
 *
 *   - positive value indicates scrolling DOWN/RIGHT, negative UP/LEFT.  This
 *     should translate to positive value zooming IN, negative zooming OUT.
 *     This matches the newer 'wheel' event.
 *
 * Why are there spinX, spinY (or pixels)?
 *
 *   - spinX is a 2-finger side drag on the trackpad, and a shift + wheel turn
 *     with a mouse.  It results in side-scrolling in the browser by default.
 *
 *   - spinY is what you expect -- it's the classic axis of a mouse wheel.
 *
 *   - I dropped spinZ/pixelZ.  It is supported by the DOM 3 'wheel' event and
 *     probably is by browsers in conjunction with fancy 3D controllers .. but
 *     you know.
 *
 * Implementation info:
 *
 * Examples of 'wheel' event if you scroll slowly (down) by one step with an
 * average mouse:
 *
 *   OS X + Chrome  (mouse)     -    4   pixel delta  (wheelDelta -120)
 *   OS X + Safari  (mouse)     -  N/A   pixel delta  (wheelDelta  -12)
 *   OS X + Firefox (mouse)     -    0.1 line  delta  (wheelDelta  N/A)
 *   Win8 + Chrome  (mouse)     -  100   pixel delta  (wheelDelta -120)
 *   Win8 + Firefox (mouse)     -    3   line  delta  (wheelDelta -120)
 *
 * On the trackpad:
 *
 *   OS X + Chrome  (trackpad)  -    2   pixel delta  (wheelDelta   -6)
 *   OS X + Firefox (trackpad)  -    1   pixel delta  (wheelDelta  N/A)
 *
 * On other/older browsers.. it's more complicated as there can be multiple and
 * also missing delta values.
 *
 * The 'wheel' event is more standard:
 *
 * http://www.w3.org/TR/DOM-Level-3-Events/#events-wheelevents
 *
 * The basics is that it includes a unit, deltaMode (pixels, lines, pages), and
 * deltaX, deltaY and deltaZ.  Some browsers provide other values to maintain
 * backward compatibility with older events.  Those other values help us
 * better normalize spin speed.  Example of what the browsers provide:
 *
 *                          | event.wheelDelta | event.detail
 *        ------------------+------------------+--------------
 *          Safari v5/OS X  |       -120       |       0
 *          Safari v5/Win7  |       -120       |       0
 *         Chrome v17/OS X  |       -120       |       0
 *         Chrome v17/Win7  |       -120       |       0
 *                IE9/Win7  |       -120       |   undefined
 *         Firefox v4/OS X  |     undefined    |       1
 *         Firefox v4/Win7  |     undefined    |       3
 *
 */
function normalizeWheel(/*object*/ event) /*object*/ {
  var sX = 0, sY = 0,       // spinX, spinY
      pX = 0, pY = 0;       // pixelX, pixelY

  // Legacy
  if ('detail'      in event) { sY = event.detail; }
  if ('wheelDelta'  in event) { sY = -event.wheelDelta / 120; }
  if ('wheelDeltaY' in event) { sY = -event.wheelDeltaY / 120; }
  if ('wheelDeltaX' in event) { sX = -event.wheelDeltaX / 120; }

  // side scrolling on FF with DOMMouseScroll
  if ( 'axis' in event && event.axis === event.HORIZONTAL_AXIS ) {
    sX = sY;
    sY = 0;
  }

  pX = sX * PIXEL_STEP;
  pY = sY * PIXEL_STEP;

  if ('deltaY' in event) { pY = event.deltaY; }
  if ('deltaX' in event) { pX = event.deltaX; }

  if ((pX || pY) && event.deltaMode) {
    if (event.deltaMode == 1) {          // delta in LINE units
      pX *= LINE_HEIGHT;
      pY *= LINE_HEIGHT;
    } else {                             // delta in PAGE units
      pX *= PAGE_HEIGHT;
      pY *= PAGE_HEIGHT;
    }
  }

  // Fall-back if spin cannot be determined
  if (pX && !sX) { sX = (pX < 1) ? -1 : 1; }
  if (pY && !sY) { sY = (pY < 1) ? -1 : 1; }

  return { spinX  : sX,
           spinY  : sY,
           pixelX : pX,
           pixelY : pY };
}


/**
 * The best combination if you prefer spinX + spinY normalization.  It favors
 * the older DOMMouseScroll for Firefox, as FF does not include wheelDelta with
 * 'wheel' event, making spin speed determination impossible.
 */
normalizeWheel.getEventType = function() /*string*/ {
  return (UserAgent_DEPRECATED.firefox())
           ? 'DOMMouseScroll'
           : (isEventSupported('wheel'))
               ? 'wheel'
               : 'mousewheel';
};

module.exports = normalizeWheel;


/***/ }

/******/ });
/************************************************************************/
/******/ // The module cache
/******/ var __webpack_module_cache__ = {};
/******/ 
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/ 	// Check if module is in cache
/******/ 	var cachedModule = __webpack_module_cache__[moduleId];
/******/ 	if (cachedModule !== undefined) {
/******/ 		return cachedModule.exports;
/******/ 	}
/******/ 	// Create a new module (and put it into the cache)
/******/ 	var module = __webpack_module_cache__[moduleId] = {
/******/ 		// no module.id needed
/******/ 		// no module.loaded needed
/******/ 		exports: {}
/******/ 	};
/******/ 
/******/ 	// Execute the module function
/******/ 	__webpack_modules__[moduleId](module, module.exports, __webpack_require__);
/******/ 
/******/ 	// Return the exports of the module
/******/ 	return module.exports;
/******/ }
/******/ 
/************************************************************************/
/******/ /* webpack/runtime/define property getters */
/******/ (() => {
/******/ 	// define getter functions for harmony exports
/******/ 	__webpack_require__.d = (exports, definition) => {
/******/ 		for(var key in definition) {
/******/ 			if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {
/******/ 				Object.defineProperty(exports, key, { enumerable: true, get: definition[key] });
/******/ 			}
/******/ 		}
/******/ 	};
/******/ })();
/******/ 
/******/ /* webpack/runtime/hasOwnProperty shorthand */
/******/ (() => {
/******/ 	__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))
/******/ })();
/******/ 
/************************************************************************/

;// external "../shared"

;// external "vue"

;// external "../config-provider"

;// external "../icon"

;// ../../node_modules/@babel/runtime/helpers/esm/typeof.js
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);
}

;// ../../node_modules/@babel/runtime/helpers/esm/toPrimitive.js

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);
}

;// ../../node_modules/@babel/runtime/helpers/esm/toPropertyKey.js


function toPropertyKey(t) {
  var i = toPrimitive(t, "string");
  return "symbol" == _typeof(i) ? i : i + "";
}

;// ../../node_modules/@babel/runtime/helpers/esm/defineProperty.js

function _defineProperty(e, r, t) {
  return (r = toPropertyKey(r)) in e ? Object.defineProperty(e, r, {
    value: t,
    enumerable: !0,
    configurable: !0,
    writable: !0
  }) : e[r] = t, e;
}

;// ../../packages/directives/src/clickoutside.ts
function _createForOfIteratorHelper(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
/*
 * Tencent is pleased to support the open source community by making
 * 蓝鲸智云PaaS平台社区版 (BlueKing PaaS Community Edition) available.
 *
 * Copyright (C) 2025 Tencent.  All rights reserved.
 *
 * 蓝鲸智云PaaS平台社区版 (BlueKing PaaS Community Edition) is licensed under the MIT License.
 *
 * License for 蓝鲸智云PaaS平台社区版 (BlueKing PaaS Community Edition):
 *
 * ---------------------------------------------------
 * Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated
 * documentation files (the "Software"), to deal in the Software without restriction, including without limitation
 * the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and
 * to permit persons to whom the Software is furnished to do so, subject to the following conditions:
 *
 * The above copyright notice and this permission notice shall be included in all copies or substantial portions of
 * the Software.
 *
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO
 * THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
 * CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
 * IN THE SOFTWARE.
 */
var isElement = function isElement(e) {
  if (typeof Element === 'undefined') return false;
  return e instanceof Element;
};
var nodeList = new Map();
var startClick;
document.addEventListener('mousedown', function (e) {
  return startClick = e;
});
document.addEventListener('mouseup', function (e) {
  var _iterator = _createForOfIteratorHelper(nodeList.values()),
    _step;
  try {
    for (_iterator.s(); !(_step = _iterator.n()).done;) {
      var handlers = _step.value;
      var _iterator2 = _createForOfIteratorHelper(handlers),
        _step2;
      try {
        for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
          var documentHandler = _step2.value.documentHandler;
          documentHandler(e, startClick);
        }
      } catch (err) {
        _iterator2.e(err);
      } finally {
        _iterator2.f();
      }
    }
  } catch (err) {
    _iterator.e(err);
  } finally {
    _iterator.f();
  }
});
function createDocumentHandler(el, binding) {
  var excludes = [];
  if (Array.isArray(binding.arg)) {
    excludes = binding.arg;
  } else if (isElement(binding.arg)) {
    excludes.push(binding.arg);
  }
  return function (mouseup, mousedown) {
    var popperRef = binding.instance.popperRef;
    var mouseUpTarget = mouseup.target;
    var mouseDownTarget = mousedown === null || mousedown === void 0 ? void 0 : mousedown.target;
    var isBound = !binding || !binding.instance;
    var isTargetExists = !mouseUpTarget || !mouseDownTarget;
    var isContainedByEl = el.contains(mouseUpTarget) || el.contains(mouseDownTarget);
    var isSelf = el === mouseUpTarget;
    var isTargetExcluded = excludes.length && excludes.some(function (item) {
      return item === null || item === void 0 ? void 0 : item.contains(mouseUpTarget);
    }) || excludes.length && excludes.includes(mouseDownTarget);
    var isContainedByPopper = popperRef && (popperRef.contains(mouseUpTarget) || popperRef.contains(mouseDownTarget));
    if (isBound || isTargetExists || isContainedByEl || isSelf || isTargetExcluded || isContainedByPopper) {
      return;
    }
    binding.value(mouseup, mousedown);
  };
}
var ClickOutside = {
  beforeMount: function beforeMount(el, binding) {
    if (!nodeList.has(el)) {
      nodeList.set(el, []);
    }
    nodeList.get(el).push({
      documentHandler: createDocumentHandler(el, binding),
      bindingFn: binding.value
    });
  },
  updated: function updated(el, binding) {
    if (!nodeList.has(el)) {
      nodeList.set(el, []);
    }
    var handlers = nodeList.get(el);
    var oldHandlerIndex = handlers.findIndex(function (item) {
      return item.bindingFn === binding.oldValue;
    });
    var newHandler = {
      documentHandler: createDocumentHandler(el, binding),
      bindingFn: binding.value
    };
    if (oldHandlerIndex >= 0) {
      // replace the old handler to the new handler
      handlers.splice(oldHandlerIndex, 1, newHandler);
    } else {
      handlers.push(newHandler);
    }
  },
  unmounted: function unmounted(el) {
    // remove all listeners when a component unmounted
    nodeList["delete"](el);
  }
};
ClickOutside.install = function (app) {
  app.directive('bkTooltips', ClickOutside);
};
/* harmony default export */ const clickoutside = ((/* unused pure expression or super */ null && (ClickOutside)));
;// external "../popover"

;// ../../packages/directives/src/ellipsis.ts
/* unused harmony import specifier */ var ellipsis_typeof;
/* unused harmony import specifier */ var $bkPopover;

/*
 * Tencent is pleased to support the open source community by making
 * 蓝鲸智云PaaS平台社区版 (BlueKing PaaS Community Edition) available.
 *
 * Copyright (C) 2025 Tencent.  All rights reserved.
 *
 * 蓝鲸智云PaaS平台社区版 (BlueKing PaaS Community Edition) is licensed under the MIT License.
 *
 * License for 蓝鲸智云PaaS平台社区版 (BlueKing PaaS Community Edition):
 *
 * ---------------------------------------------------
 * Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated
 * documentation files (the "Software"), to deal in the Software without restriction, including without limitation
 * the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and
 * to permit persons to whom the Software is furnished to do so, subject to the following conditions:
 *
 * The above copyright notice and this permission notice shall be included in all copies or substantial portions of
 * the Software.
 *
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO
 * THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
 * CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
 * IN THE SOFTWARE.
 */

var resolveOptions = function resolveOptions(el, binding) {
  var options = {
    content: '',
    target: el
  };
  if (ellipsis_typeof(binding) === 'object') {
    Object.assign(options, binding);
    if (Object.prototype.hasOwnProperty.call(binding, 'popoverOption')) {
      Object.assign(options, binding.popoverOption);
    }
  } else {
    options.content = binding;
  }
  return options;
};
var createInstance = function createInstance(el, binding) {
  var instance = null;
  var createTimer = null;
  var hidePopTimer = null;
  var options = resolveOptions(el, binding);
  var disabled = options.disabled;
  if (disabled || instance) {
    return;
  }
  var handleContentEnter = function handleContentEnter() {
    hidePopTimer && clearTimeout(hidePopTimer);
    hidePopTimer = null;
  };
  var handleContentLeave = function handleContentLeave() {
    var _instance, _instance2;
    if (createTimer) {
      clearTimeout(createTimer);
    }
    (_instance = instance) === null || _instance === void 0 || _instance.hide();
    (_instance2 = instance) === null || _instance2 === void 0 || _instance2.close();
    instance = null;
  };
  var handleMouseEnter = function handleMouseEnter() {
    handleContentLeave();
    createTimer && clearTimeout(createTimer);
    createTimer = setTimeout(function () {
      var targetOptions = resolveOptions(el, binding);
      targetOptions.isShow = true;
      targetOptions.content = typeof targetOptions.content === 'function' ? targetOptions.content() : targetOptions.content || el.innerText;
      targetOptions.allowHtml = true;
      Object.assign(targetOptions, {
        onContentMouseenter: handleContentEnter,
        onContentMouseleave: handleContentLeave
      });
      instance = $bkPopover(targetOptions);
    }, 300);
  };
  var handleMouseLeave = function handleMouseLeave() {
    hidePopTimer = setTimeout(function () {
      var _instance3, _instance4;
      if (createTimer) {
        clearTimeout(createTimer);
      }
      (_instance3 = instance) === null || _instance3 === void 0 || _instance3.hide();
      (_instance4 = instance) === null || _instance4 === void 0 || _instance4.close();
      instance = null;
    }, 120);
  };
  el.addEventListener('mouseenter', handleMouseEnter);
  el.addEventListener('mouseleave', handleMouseLeave);
  var destroyInstance = function destroyInstance(element) {
    var _ref, _ref2;
    handleMouseLeave();
    (_ref = element !== null && element !== void 0 ? element : el) === null || _ref === void 0 || _ref.removeEventListener('mouseenter', handleMouseEnter);
    (_ref2 = element !== null && element !== void 0 ? element : el) === null || _ref2 === void 0 || _ref2.removeEventListener('mouseleave', handleMouseLeave);
  };
  return {
    destroyInstance: destroyInstance,
    instance: instance
  };
};
var ellipsis = (/* unused pure expression or super */ null && ({
  mounted: function mounted(el, binding) {
    createInstance(el, binding);
  }
}));
/* harmony default export */ const src_ellipsis = ((/* unused pure expression or super */ null && (ellipsis)));
// EXTERNAL MODULE: ../../node_modules/normalize-wheel/index.js
var normalize_wheel = __webpack_require__(8283);
;// ../../packages/directives/src/mousewheel.ts
/* unused harmony import specifier */ var normalizeWheel;
/*
 * Tencent is pleased to support the open source community by making
 * 蓝鲸智云PaaS平台社区版 (BlueKing PaaS Community Edition) available.
 *
 * Copyright (C) 2025 Tencent.  All rights reserved.
 *
 * 蓝鲸智云PaaS平台社区版 (BlueKing PaaS Community Edition) is licensed under the MIT License.
 *
 * License for 蓝鲸智云PaaS平台社区版 (BlueKing PaaS Community Edition):
 *
 * ---------------------------------------------------
 * Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated
 * documentation files (the "Software"), to deal in the Software without restriction, including without limitation
 * the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and
 * to permit persons to whom the Software is furnished to do so, subject to the following conditions:
 *
 * The above copyright notice and this permission notice shall be included in all copies or substantial portions of
 * the Software.
 *
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO
 * THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
 * CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
 * IN THE SOFTWARE.
 */

var isFirefox = typeof navigator !== 'undefined' && navigator.userAgent.toLowerCase().indexOf('firefox') > -1;
var mousewheelHandler = function mousewheelHandler(element, callback) {
  if (element !== null && element !== void 0 && element.addEventListener) {
    element.addEventListener(isFirefox ? 'DOMMouseScroll' : 'mousewheel', function (e) {
      var normalized = normalizeWheel(e);
      callback === null || callback === void 0 || callback.apply(this, [e, normalized]);
    });
  }
};
var mousewheel = (/* unused pure expression or super */ null && ({
  beforeMount: function beforeMount(el, binding) {
    mousewheelHandler(el, binding.value);
  }
}));
/* harmony default export */ const src_mousewheel = ((/* unused pure expression or super */ null && (mousewheel)));
;// ../../node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js
function arrayLikeToArray_arrayLikeToArray(r, a) {
  (null == a || a > r.length) && (a = r.length);
  for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e];
  return n;
}

;// ../../node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js

function _arrayWithoutHoles(r) {
  if (Array.isArray(r)) return arrayLikeToArray_arrayLikeToArray(r);
}

;// ../../node_modules/@babel/runtime/helpers/esm/iterableToArray.js
function _iterableToArray(r) {
  if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r);
}

;// ../../node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js

function unsupportedIterableToArray_unsupportedIterableToArray(r, a) {
  if (r) {
    if ("string" == typeof r) return arrayLikeToArray_arrayLikeToArray(r, a);
    var t = {}.toString.call(r).slice(8, -1);
    return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? arrayLikeToArray_arrayLikeToArray(r, a) : void 0;
  }
}

;// ../../node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js
function _nonIterableSpread() {
  throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
}

;// ../../node_modules/@babel/runtime/helpers/esm/toConsumableArray.js




function _toConsumableArray(r) {
  return _arrayWithoutHoles(r) || _iterableToArray(r) || unsupportedIterableToArray_unsupportedIterableToArray(r) || _nonIterableSpread();
}

;// external "@popperjs/core"

;// ../../packages/directives/src/tooltips.ts



function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
/*
 * Tencent is pleased to support the open source community by making
 * 蓝鲸智云PaaS平台社区版 (BlueKing PaaS Community Edition) available.
 *
 * Copyright (C) 2025 Tencent.  All rights reserved.
 *
 * 蓝鲸智云PaaS平台社区版 (BlueKing PaaS Community Edition) is licensed under the MIT License.
 *
 * License for 蓝鲸智云PaaS平台社区版 (BlueKing PaaS Community Edition):
 *
 * ---------------------------------------------------
 * Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated
 * documentation files (the "Software"), to deal in the Software without restriction, including without limitation
 * the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and
 * to permit persons to whom the Software is furnished to do so, subject to the following conditions:
 *
 * The above copyright notice and this permission notice shall be included in all copies or substantial portions of
 * the Software.
 *
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO
 * THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
 * CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
 * IN THE SOFTWARE.
 */



var tooltips_nodeList = new WeakMap();
var tooltips = {
  beforeMount: function beforeMount(el, binding) {
    var opts = getOpts(binding);
    var trigger = opts.trigger,
      showOnInit = opts.showOnInit;
    var popper = renderContent(opts);
    var delayTimeout = null;
    if (showOnInit) {
      __WEBPACK_EXTERNAL_MODULE_vue_nextTick__(function () {
        show(el);
      });
    }
    if (trigger === 'hover') {
      var hideTimeout = null;
      el.addEventListener('mouseenter', function () {
        delayTimeout = setTimeout(function () {
          show(el);
          clearTimeout(hideTimeout);
          clearTimeout(delayTimeout);
        }, opts.delay);
      });
      popper.addEventListener('mouseenter', function () {
        clearTimeout(hideTimeout);
      });
      el.addEventListener('mouseleave', function () {
        clearTimeout(delayTimeout);
        hideTimeout = setTimeout(function () {
          hide(el);
        }, 100);
      });
      popper.addEventListener('mouseleave', function () {
        clearTimeout(delayTimeout);
        hideTimeout = setTimeout(function () {
          hide(el);
        }, 100);
      });
    } else if (trigger === 'click') {
      document.body.addEventListener('click', function (event) {
        if (el.contains(event.target) && !popper.hasAttribute('data-show')) {
          delayTimeout = setTimeout(function () {
            show(el);
            clearTimeout(delayTimeout);
          }, opts.delay);
        } else if (!el.contains(event.target) && popper.hasAttribute('data-show')) {
          hide(el);
        }
      });
    }
    tooltips_nodeList.set(el, {
      opts: opts,
      popper: popper,
      popperInstance: null
    });
  },
  updated: function updated(el, binding) {
    if (tooltips_nodeList.get(el)) {
      tooltips_nodeList.get(el).opts = getOpts(binding);
    }
  },
  unmounted: function unmounted(el) {
    hide(el);
    tooltips_nodeList["delete"](el);
  }
};
/**
 * 初始化配置
 * @returns tooltips配置
 */
function initOptions() {
  var defaultOpts = {
    arrow: true,
    disabled: false,
    trigger: 'hover',
    theme: 'dark',
    content: '',
    showOnInit: false,
    placement: 'top',
    distance: 8,
    extCls: '',
    sameWidth: false,
    delay: 0,
    onShow: function onShow() {},
    onHide: function onHide() {}
  };
  return defaultOpts;
}
/**
 * 获取配置
 * @returns tooltips配置
 */
function getOpts(binding) {
  var opts = initOptions();
  if (_typeof(binding.value) === 'object') {
    Object.assign(opts, binding.value);
  } else {
    opts.content = binding.value;
  }
  return opts;
}
/**
 * 创建tooltips DOM
 * @param opts
 * @returns
 */
function renderContext(value, content) {
  if (typeof value === 'string') {
    content.innerText = value;
  } else {
    // 如果 content 是 Vue 组件的实例，则挂载它
    var container = document.createElement('div');
    var vnode = __WEBPACK_EXTERNAL_MODULE_vue_h__(value);
    __WEBPACK_EXTERNAL_MODULE_vue_render__(vnode, container);
    content.innerHTML = container.innerHTML;
  }
}
function renderContent(opts) {
  var value = opts.content,
    hasArrow = opts.arrow,
    theme = opts.theme,
    extCls = opts.extCls;
  var isLight = theme === 'light';
  var content = document.createElement('div');
  var prefix = document.documentElement.style.getPropertyValue('--bk-prefix') || 'bk';
  content.className = "".concat(__WEBPACK_EXTERNAL_MODULE_bkui_vue_lib_shared_edbdfb03_resolveClassName__('popper', prefix), " ").concat(isLight ? 'light' : 'dark', " ").concat(extCls);
  content.innerText = value;
  renderContext(value, content);
  if (hasArrow) {
    var arrow = renderArrow();
    content.appendChild(arrow);
  }
  return content;
}
/**
 * 渲染箭头dom
 * @returns arrow DOM
 */
function renderArrow() {
  var arrow = document.createElement('div');
  var prefix = document.documentElement.style.getPropertyValue('--bk-prefix') || 'bk';
  arrow.className = __WEBPACK_EXTERNAL_MODULE_bkui_vue_lib_shared_edbdfb03_resolveClassName__('popper-arrow', prefix);
  arrow.setAttribute('data-popper-arrow', '');
  return arrow;
}
/**
 * 创建popper实例
 * @param el
 * @param popper
 * @returns popper实例
 */
function createPopperInstance(el, popper) {
  if (!tooltips_nodeList.get(el)) return;
  var _nodeList$get = tooltips_nodeList.get(el),
    opts = _nodeList$get.opts;
  var placement = opts.placement,
    distance = opts.distance,
    sameWidth = opts.sameWidth;
  var popperInstance = __WEBPACK_EXTERNAL_MODULE__popperjs_core_a5c7319c_createPopper__(el, popper, {
    placement: placement,
    modifiers: [{
      name: 'offset',
      options: {
        offset: [0, distance]
      }
    }, {
      name: 'arrow',
      options: {
        padding: 5
      }
    }].concat(_toConsumableArray(sameWidth ? [{
      name: 'sameWidth',
      enabled: true,
      phase: 'beforeWrite',
      requires: ['computeStyles'],
      fn: function fn(_ref) {
        var state = _ref.state;
        state.styles.popper.width = "".concat(state.rects.reference.width, "px");
      },
      effect: function effect(_ref2) {
        var state = _ref2.state;
        state.elements.popper.style.overflowWrap = 'break-word';
        state.elements.popper.style.width = "".concat(state.elements.reference.offsetWidth, "px");
      }
    }] : []))
  });
  return popperInstance;
}
/**
 * 显示
 * @param el
 */
function show(el) {
  if (!tooltips_nodeList.get(el)) return;
  var _nodeList$get2 = tooltips_nodeList.get(el),
    popper = _nodeList$get2.popper,
    opts = _nodeList$get2.opts;
  var disabled = opts.disabled,
    content = opts.content,
    hasArrow = opts.arrow,
    onShow = opts.onShow,
    boundary = opts.boundary,
    _opts$modifiers = opts.modifiers,
    modifiers = _opts$modifiers === void 0 ? [] : _opts$modifiers;
  if (disabled) return;
  popper.style.zIndex = String(__WEBPACK_EXTERNAL_MODULE_bkui_vue_lib_shared_edbdfb03_bkZIndexManager__.getPopperIndex());
  renderContext(content, popper);
  if (hasArrow) {
    var arrow = renderArrow();
    popper.appendChild(arrow);
  }
  var container = document.body;
  if (boundary) {
    if (boundary === 'parent') {
      container = el.parentElement;
    } else if (boundary instanceof HTMLElement) {
      container = boundary;
    }
  }
  container.appendChild(popper);
  var popperInstance = createPopperInstance(el, popper);
  onShow();
  // Make the tooltip visible
  popper.setAttribute('data-show', '');
  // Enable the event listeners
  popperInstance.setOptions(function (options) {
    return _objectSpread(_objectSpread({}, options), {}, {
      modifiers: [].concat(_toConsumableArray(options.modifiers), _toConsumableArray(modifiers), [{
        name: 'eventListeners',
        enabled: true
      }])
    });
  });
  // Update its position
  popperInstance.forceUpdate();
  tooltips_nodeList.get(el).popperInstance = popperInstance;
}
/**
 * 隐藏
 * @param el
 */
function hide(el) {
  if (!tooltips_nodeList.get(el)) return;
  var _nodeList$get3 = tooltips_nodeList.get(el),
    popper = _nodeList$get3.popper,
    popperInstance = _nodeList$get3.popperInstance,
    opts = _nodeList$get3.opts;
  var onHide = opts.onHide;
  if (popper && document.body.contains(popper)) {
    var _popper$parentNode;
    popper.removeAttribute('data-show');
    popperInstance === null || popperInstance === void 0 || popperInstance.destroy();
    popper === null || popper === void 0 || (_popper$parentNode = popper.parentNode) === null || _popper$parentNode === void 0 || _popper$parentNode.removeChild(popper);
    onHide();
  }
}
/* harmony default export */ const src_tooltips = (tooltips);
;// external "../loading"

;// external "../overflow-title"

;// ../../packages/directives/src/index.ts
/*
 * Tencent is pleased to support the open source community by making
 * 蓝鲸智云PaaS平台社区版 (BlueKing PaaS Community Edition) available.
 *
 * Copyright (C) 2025 Tencent.  All rights reserved.
 *
 * 蓝鲸智云PaaS平台社区版 (BlueKing PaaS Community Edition) is licensed under the MIT License.
 *
 * License for 蓝鲸智云PaaS平台社区版 (BlueKing PaaS Community Edition):
 *
 * ---------------------------------------------------
 * Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated
 * documentation files (the "Software"), to deal in the Software without restriction, including without limitation
 * the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and
 * to permit persons to whom the Software is furnished to do so, subject to the following conditions:
 *
 * The above copyright notice and this permission notice shall be included in all copies or substantial portions of
 * the Software.
 *
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO
 * THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
 * CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
 * IN THE SOFTWARE.
 */






// export { createInstance as bkEllipsisInstance } from './ellipsis';
;// external "lodash/throttle"

;// external "vue-types"

;// ../../packages/image/src/props.ts


var FitEnum;
(function (FitEnum) {
  FitEnum["CONTAIN"] = "contain";
  FitEnum["COVER"] = "cover";
  FitEnum["FILL"] = "fill";
  FitEnum["NONE"] = "none";
  FitEnum["SCALE_DOWN"] = "scale-down";
})(FitEnum || (FitEnum = {}));
var propsImage = {
  src: __WEBPACK_EXTERNAL_MODULE_bkui_vue_lib_shared_edbdfb03_PropTypes__.string.def(''),
  fallback: __WEBPACK_EXTERNAL_MODULE_bkui_vue_lib_shared_edbdfb03_PropTypes__.string.def(''),
  placeholder: __WEBPACK_EXTERNAL_MODULE_bkui_vue_lib_shared_edbdfb03_PropTypes__.any,
  fit: __WEBPACK_EXTERNAL_MODULE_vue_types_22de060a_toType__('fit', {}).def(FitEnum.FILL),
  lazy: __WEBPACK_EXTERNAL_MODULE_bkui_vue_lib_shared_edbdfb03_PropTypes__.bool,
  urlList: __WEBPACK_EXTERNAL_MODULE_bkui_vue_lib_shared_edbdfb03_PropTypes__.array.def([]),
  isShowPreviewTitle: __WEBPACK_EXTERNAL_MODULE_bkui_vue_lib_shared_edbdfb03_PropTypes__.bool.def(true),
  maskClose: __WEBPACK_EXTERNAL_MODULE_bkui_vue_lib_shared_edbdfb03_PropTypes__.bool.def(true),
  zIndex: __WEBPACK_EXTERNAL_MODULE_bkui_vue_lib_shared_edbdfb03_PropTypes__.number.def(2000)
};
var propsImageViever = {
  urlList: {
    type: Array,
    "default": function _default() {
      return [];
    }
  },
  zIndex: __WEBPACK_EXTERNAL_MODULE_bkui_vue_lib_shared_edbdfb03_PropTypes__.number.def(2000),
  initialIndex: __WEBPACK_EXTERNAL_MODULE_bkui_vue_lib_shared_edbdfb03_PropTypes__.number.def(0),
  isShowTitle: __WEBPACK_EXTERNAL_MODULE_bkui_vue_lib_shared_edbdfb03_PropTypes__.bool.def(true),
  loops: __WEBPACK_EXTERNAL_MODULE_bkui_vue_lib_shared_edbdfb03_PropTypes__.bool.def(true),
  maskClose: __WEBPACK_EXTERNAL_MODULE_bkui_vue_lib_shared_edbdfb03_PropTypes__.bool.def(true)
};
;// ../../packages/image/src/image-viewer.tsx


function image_viewer_ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function image_viewer_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? image_viewer_ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : image_viewer_ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
/*
 * Tencent is pleased to support the open source community by making
 * 蓝鲸智云PaaS平台社区版 (BlueKing PaaS Community Edition) available.
 *
 * Copyright (C) 2025 Tencent.  All rights reserved.
 *
 * 蓝鲸智云PaaS平台社区版 (BlueKing PaaS Community Edition) is licensed under the MIT License.
 *
 * License for 蓝鲸智云PaaS平台社区版 (BlueKing PaaS Community Edition):
 *
 * ---------------------------------------------------
 * Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated
 * documentation files (the "Software"), to deal in the Software without restriction, including without limitation
 * the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and
 * to permit persons to whom the Software is furnished to do so, subject to the following conditions:
 *
 * The above copyright notice and this permission notice shall be included in all copies or substantial portions of
 * the Software.
 *
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO
 * THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
 * CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
 * IN THE SOFTWARE.
 */







/* harmony default export */ const image_viewer = (__WEBPACK_EXTERNAL_MODULE_vue_defineComponent__({
  name: 'ImageViewer',
  directives: {
    bkTooltips: src_tooltips
  },
  props: propsImageViever,
  emits: ['close', 'change'],
  setup: function setup(props, _ref) {
    var emit = _ref.emit;
    var scopeEventListener = __WEBPACK_EXTERNAL_MODULE_vue_effectScope__();
    // @ts-ignore
    var wrapper = __WEBPACK_EXTERNAL_MODULE_vue_ref__();
    var imgRefs = __WEBPACK_EXTERNAL_MODULE_vue_ref__([]);
    var mode = __WEBPACK_EXTERNAL_MODULE_vue_ref__('');
    var index = __WEBPACK_EXTERNAL_MODULE_vue_ref__(props.initialIndex);
    var loading = __WEBPACK_EXTERNAL_MODULE_vue_ref__(false);
    var error = __WEBPACK_EXTERNAL_MODULE_vue_ref__(false);
    var transform = __WEBPACK_EXTERNAL_MODULE_vue_shallowRef__({
      scale: 1,
      deg: 0,
      offsetX: 0,
      offsetY: 0,
      enableTransition: false
    });
    var isSingle = __WEBPACK_EXTERNAL_MODULE_vue_computed__(function () {
      var _props$urlList;
      return (props === null || props === void 0 || (_props$urlList = props.urlList) === null || _props$urlList === void 0 ? void 0 : _props$urlList.length) < 2;
    });
    var isFirst = __WEBPACK_EXTERNAL_MODULE_vue_computed__(function () {
      return index.value === 0;
    });
    var isLast = __WEBPACK_EXTERNAL_MODULE_vue_computed__(function () {
      return index.value === props.urlList.length - 1;
    });
    var currentImg = __WEBPACK_EXTERNAL_MODULE_vue_computed__(function () {
      return props.urlList[index.value];
    });
    var currentName = __WEBPACK_EXTERNAL_MODULE_vue_computed__(function () {
      var arr = currentImg.value.split('/');
      return arr[arr.length - 1];
    });
    var imgStyle = __WEBPACK_EXTERNAL_MODULE_vue_computed__(function () {
      var _transform$value = transform.value,
        scale = _transform$value.scale,
        deg = _transform$value.deg,
        offsetX = _transform$value.offsetX,
        offsetY = _transform$value.offsetY,
        enableTransition = _transform$value.enableTransition;
      var translateX = offsetX / scale;
      var translateY = offsetY / scale;
      switch (deg % 360) {
        case 90:
        case -270:
          var _ref2 = [translateY, -translateX];
          translateX = _ref2[0];
          translateY = _ref2[1];
          break;
        case 180:
        case -180:
          var _ref3 = [-translateX, -translateY];
          translateX = _ref3[0];
          translateY = _ref3[1];
          break;
        case 270:
        case -90:
          var _ref4 = [-translateY, translateX];
          translateX = _ref4[0];
          translateY = _ref4[1];
          break;
      }
      var style = {
        transform: "scale(".concat(scale, ") rotate(").concat(deg, "deg) translate(").concat(translateX, "px, ").concat(translateY, "px)"),
        transition: enableTransition ? 'transform .3s' : ''
      };
      if (mode.value === 'contain') {
        style.maxWidth = '100%';
        style.maxHeight = '100%';
      }
      return style;
    });
    var wrapStyles = __WEBPACK_EXTERNAL_MODULE_vue_computed__(function () {
      var zIndex = 2000;
      if (props.zIndex) {
        zIndex = props.zIndex;
      } else {
        zIndex += __WEBPACK_EXTERNAL_MODULE_bkui_vue_lib_shared_edbdfb03_bkZIndexManager__.getModalNextIndex() || 1;
      }
      return {
        zIndex: zIndex
      };
    });
    var keydownHandler = __WEBPACK_EXTERNAL_MODULE_lodash_throttle_a7b7506a_default__(function (e) {
      switch (Number(e.code)) {
        // ESC
        case 27:
          hide();
          break;
        // SPACE
        case 32:
          toggleMode('original');
          break;
        // LEFT_ARROW
        case 37:
          prev();
          break;
        // UP_ARROW
        case 38:
          handleActions('zoomIn');
          break;
        // RIGHT_ARROW
        case 39:
          next();
          break;
        // DOWN_ARROW
        case 40:
          handleActions('zoomOut');
          break;
      }
    });
    var mousewheelHandler = __WEBPACK_EXTERNAL_MODULE_lodash_throttle_a7b7506a_default__(function (e /* TODO: wheelDelta is deprecated */) {
      var delta = e.wheelDelta ? e.wheelDelta : -e.detail;
      if (delta > 0) {
        handleActions('zoomIn', {
          zoomRate: 1.2,
          enableTransition: false
        });
      } else {
        handleActions('zoomOut', {
          zoomRate: 1.2,
          enableTransition: false
        });
      }
    });
    scopeEventListener.run(function () {
      document.addEventListener('keydown', keydownHandler);
      document.addEventListener('mousewheel', mousewheelHandler);
    });
    function hide() {
      document.removeEventListener('keydown', keydownHandler);
      document.removeEventListener('mousewheel', mousewheelHandler);
      scopeEventListener.stop();
      emit('close');
    }
    function toggleMode(modeNames) {
      if (loading.value) return;
      mode.value = modeNames;
      reset();
    }
    function reset() {
      transform.value = {
        scale: 1,
        deg: 0,
        offsetX: 0,
        offsetY: 0,
        enableTransition: false
      };
    }
    function prev() {
      if (isFirst.value && !props.loops) return;
      var len = props.urlList.length;
      index.value = (index.value - 1 + len) % len;
    }
    function next() {
      if (isLast.value && !props.loops) return;
      var len = props.urlList.length;
      index.value = (index.value + 1) % len;
    }
    function handleActions(action) {
      var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
      if (loading.value) return;
      var _zoomRate$rotateDeg$e = image_viewer_objectSpread({
          zoomRate: 0.2,
          rotateDeg: 90,
          enableTransition: true
        }, options),
        zoomRate = _zoomRate$rotateDeg$e.zoomRate,
        rotateDeg = _zoomRate$rotateDeg$e.rotateDeg,
        enableTransition = _zoomRate$rotateDeg$e.enableTransition;
      switch (action) {
        case 'zoomOut':
          if (transform.value.scale > 0.2) {
            transform.value.scale = Number.parseFloat((transform.value.scale - zoomRate).toFixed(3));
          }
          break;
        case 'zoomIn':
          if (transform.value.scale < 7) {
            transform.value.scale = Number.parseFloat((transform.value.scale + zoomRate).toFixed(3));
          }
          break;
        case 'clockwise':
          transform.value.deg += rotateDeg;
          break;
        case 'anticlockwise':
          transform.value.deg -= rotateDeg;
          break;
      }
      transform.value.enableTransition = enableTransition;
    }
    function handleImgLoad() {
      error.value = false;
      loading.value = false;
    }
    function handleImgError(e) {
      error.value = true;
      loading.value = false;
      e.target.alt = '加载失败';
    }
    function handleMouseDown(e) {
      if (loading.value || e.button !== 0 || !wrapper.value) return;
      transform.value.enableTransition = false;
      var _transform$value2 = transform.value,
        offsetX = _transform$value2.offsetX,
        offsetY = _transform$value2.offsetY;
      var startX = e.pageX;
      var startY = e.pageY;
      var mousemove = __WEBPACK_EXTERNAL_MODULE_lodash_throttle_a7b7506a_default__(function (ev) {
        transform.value = image_viewer_objectSpread(image_viewer_objectSpread({}, transform.value), {}, {
          offsetX: offsetX + ev.pageX - startX,
          offsetY: offsetY + ev.pageY - startY
        });
      });
      var _mouseup = function mouseup() {
        document.removeEventListener('mousemove', mousemove);
        document.removeEventListener('mouseup', _mouseup);
      };
      document.addEventListener('mousemove', mousemove);
      document.addEventListener('mouseup', _mouseup);
      e.preventDefault();
    }
    var _usePrefix = __WEBPACK_EXTERNAL_MODULE_bkui_vue_lib_config_provider_fe8577a3_usePrefix__(),
      resolveClassName = _usePrefix.resolveClassName;
    var teleportTo = __WEBPACK_EXTERNAL_MODULE_vue_computed__(function () {
      return __WEBPACK_EXTERNAL_MODULE_bkui_vue_lib_shared_edbdfb03_getFullscreenRoot__();
    });
    return function () {
      return __WEBPACK_EXTERNAL_MODULE_vue_createVNode__(__WEBPACK_EXTERNAL_MODULE_vue_Teleport__, {
        "to": teleportTo.value
      }, {
        "default": function _default() {
          return [__WEBPACK_EXTERNAL_MODULE_vue_createVNode__(__WEBPACK_EXTERNAL_MODULE_vue_Transition__, null, {
            "default": function _default() {
              return [__WEBPACK_EXTERNAL_MODULE_vue_createVNode__("div", {
                "ref": "wrapper",
                "style": wrapStyles.value,
                "class": "".concat(resolveClassName('image-viewer-wrapper')),
                "tabindex": "-1"
              }, [__WEBPACK_EXTERNAL_MODULE_vue_createVNode__("div", {
                "class": "".concat(resolveClassName('image-viewer-mask')),
                "onClick": function onClick() {
                  props.maskClose && hide();
                }
              }, null), props.isShowTitle && props.urlList.length ? __WEBPACK_EXTERNAL_MODULE_vue_createVNode__("div", {
                "class": "".concat(resolveClassName('image-viewer-header'))
              }, [__WEBPACK_EXTERNAL_MODULE_vue_createVNode__("div", null, [currentName]), __WEBPACK_EXTERNAL_MODULE_vue_createVNode__("div", {
                "class": "tc "
              }, [index.value + 1, __WEBPACK_EXTERNAL_MODULE_vue_createTextVNode__("/"), props.urlList.length]), __WEBPACK_EXTERNAL_MODULE_vue_createVNode__("div", {
                "class": "quit-box tr"
              }, [__WEBPACK_EXTERNAL_MODULE_vue_createVNode__("div", {
                "class": "quit-tips mr10"
              }, [__WEBPACK_EXTERNAL_MODULE_vue_createTextVNode__("ESC \u53EF\u4EE5\u9000\u51FA\u5168\u5C4F")]), __WEBPACK_EXTERNAL_MODULE_vue_createVNode__("div", {
                "class": "".concat(resolveClassName('image-viewer-close')),
                "onClick": hide
              }, [__WEBPACK_EXTERNAL_MODULE_vue_createVNode__(__WEBPACK_EXTERNAL_MODULE_bkui_vue_lib_icon_a97c79c3_Close__, null, null)])])]) : '', !isSingle.value ? __WEBPACK_EXTERNAL_MODULE_vue_createVNode__(__WEBPACK_EXTERNAL_MODULE_vue_Fragment__, null, [__WEBPACK_EXTERNAL_MODULE_vue_createVNode__("div", {
                "class": "".concat(resolveClassName('image-viewer-btn'), " ").concat(resolveClassName('image-viewer-prev'), " ").concat(!props.loops && isFirst ? 'is-disabled' : ''),
                "onClick": prev
              }, [__WEBPACK_EXTERNAL_MODULE_vue_createVNode__(__WEBPACK_EXTERNAL_MODULE_bkui_vue_lib_icon_a97c79c3_AngleLeft__, null, null)]), __WEBPACK_EXTERNAL_MODULE_vue_createVNode__("div", {
                "class": "".concat(resolveClassName('image-viewer-btn'), " ").concat(resolveClassName('image-viewer-prev'), " ").concat(!props.loops && isLast ? 'is-disabled' : ''),
                "onClick": next
              }, [__WEBPACK_EXTERNAL_MODULE_vue_createVNode__(__WEBPACK_EXTERNAL_MODULE_bkui_vue_lib_icon_a97c79c3_AngleRight__, null, null)]), __WEBPACK_EXTERNAL_MODULE_vue_createVNode__("div", {
                "class": "".concat(resolveClassName('image-viewer-actions-inner'))
              }, [__WEBPACK_EXTERNAL_MODULE_vue_withDirectives__(__WEBPACK_EXTERNAL_MODULE_vue_createVNode__(__WEBPACK_EXTERNAL_MODULE_bkui_vue_lib_icon_a97c79c3_AngleLeft__, {
                "onClick": function onClick() {
                  return handleActions('zoomOut');
                }
              }, null), [[__WEBPACK_EXTERNAL_MODULE_vue_resolveDirective__("bk-tooltips"), "{content: '\u63D0\u793A\u4FE1\u606F', placement: 'top'}"]]), __WEBPACK_EXTERNAL_MODULE_vue_withDirectives__(__WEBPACK_EXTERNAL_MODULE_vue_createVNode__("i", {
                "class": "",
                "onClick": function onClick() {
                  return handleActions('zoomOut');
                }
              }, null), [[__WEBPACK_EXTERNAL_MODULE_vue_resolveDirective__("bk-tooltips"), "{content: '\u63D0\u793A\u4FE1\u606F', placement: 'top'}"]]), __WEBPACK_EXTERNAL_MODULE_vue_withDirectives__(__WEBPACK_EXTERNAL_MODULE_vue_createVNode__("i", {
                "class": "".concat(resolveClassName('icon'), " icon-narrow-line"),
                "onClick": function onClick() {
                  return handleActions('zoomOut');
                }
              }, null), [[__WEBPACK_EXTERNAL_MODULE_vue_resolveDirective__("bk-tooltips"), "{content: '\u63D0\u793A\u4FE1\u606F', placement: 'top'}"]])])]) : '', __WEBPACK_EXTERNAL_MODULE_vue_createVNode__("div", {
                "class": "".concat(resolveClassName('image-viewer-canvas'), " ").concat(props.isShowTitle ? resolveClassName('image-viewer-has-header') : '')
              }, [error.value ? __WEBPACK_EXTERNAL_MODULE_vue_createVNode__("div", {
                "class": "".concat(resolveClassName('image-viewer-error'))
              }, [__WEBPACK_EXTERNAL_MODULE_vue_createVNode__("div", null, [__WEBPACK_EXTERNAL_MODULE_vue_createVNode__("i", {
                "class": "".concat(resolveClassName('icon'), " icon-image-fail")
              }, null)]), __WEBPACK_EXTERNAL_MODULE_vue_createVNode__("div", null, [__WEBPACK_EXTERNAL_MODULE_vue_createTextVNode__("\u62B1\u6B49\uFF0C\u56FE\u7247\u52A0\u8F7D\u5931\u8D25")])]) : props.urlList.map(function (url, i) {
                if (i === index.value) {
                  return '';
                }
                return __WEBPACK_EXTERNAL_MODULE_vue_createVNode__("img", {
                  "key": i,
                  "ref": function ref(el) {
                    return imgRefs[i] = el;
                  },
                  "style": imgStyle.value,
                  "class": "".concat(resolveClassName('image-viewer-img')),
                  "src": url,
                  "onError": handleImgError,
                  "onLoad": handleImgLoad,
                  "onMousedown": handleMouseDown
                }, null);
              })])])];
            }
          })];
        }
      });
    };
  }
}));
;// ../../packages/image/src/image.tsx
/*
 * Tencent is pleased to support the open source community by making
 * 蓝鲸智云PaaS平台社区版 (BlueKing PaaS Community Edition) available.
 *
 * Copyright (C) 2025 Tencent.  All rights reserved.
 *
 * 蓝鲸智云PaaS平台社区版 (BlueKing PaaS Community Edition) is licensed under the MIT License.
 *
 * License for 蓝鲸智云PaaS平台社区版 (BlueKing PaaS Community Edition):
 *
 * ---------------------------------------------------
 * Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated
 * documentation files (the "Software"), to deal in the Software without restriction, including without limitation
 * the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and
 * to permit persons to whom the Software is furnished to do so, subject to the following conditions:
 *
 * The above copyright notice and this permission notice shall be included in all copies or substantial portions of
 * the Software.
 *
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO
 * THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
 * CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
 * IN THE SOFTWARE.
 */





/* harmony default export */ const src_image = (__WEBPACK_EXTERNAL_MODULE_vue_defineComponent__({
  name: 'Image',
  props: propsImage,
  emits: ['loaded', 'error', 'close', 'change'],
  setup: function setup(props, _ref) {
    var emit = _ref.emit,
      slots = _ref.slots;
    var loading = __WEBPACK_EXTERNAL_MODULE_vue_ref__(true);
    var hasError = __WEBPACK_EXTERNAL_MODULE_vue_ref__(true);
    var isShowViewer = __WEBPACK_EXTERNAL_MODULE_vue_ref__(false);
    var prevOverflow = __WEBPACK_EXTERNAL_MODULE_vue_ref__('');
    var imageSrc = __WEBPACK_EXTERNAL_MODULE_vue_ref__('');
    function clickHandler() {}
    __WEBPACK_EXTERNAL_MODULE_vue_watch__(function () {
      return props.src;
    }, function () {
      loadImage();
    });
    var preview = __WEBPACK_EXTERNAL_MODULE_vue_computed__(function () {
      var _props$urlList;
      return (props === null || props === void 0 || (_props$urlList = props.urlList) === null || _props$urlList === void 0 ? void 0 : _props$urlList.length) > 0;
    });
    function closeViewer() {
      document.body.style.overflow = prevOverflow.value;
      isShowViewer.value = false;
      emit('close');
    }
    function change(val) {
      emit('change', val);
    }
    function loadImage() {
      loading.value = true;
      hasError.value = false;
      imageSrc.value = props.src;
    }
    var _usePrefix = __WEBPACK_EXTERNAL_MODULE_bkui_vue_lib_config_provider_fe8577a3_usePrefix__(),
      resolveClassName = _usePrefix.resolveClassName;
    return function () {
      function getContent() {
        if (loading.value) {
          return __WEBPACK_EXTERNAL_MODULE_vue_createVNode__("div", {
            "class": "".concat(resolveClassName('image-placeholder'))
          }, [__WEBPACK_EXTERNAL_MODULE_vue_createVNode__(__WEBPACK_EXTERNAL_MODULE_bkui_vue_lib_icon_a97c79c3_Spinner__, null, null)]);
        }
        if (hasError.value) {
          if (slots.error) {
            if (typeof slots.error === 'function') {
              return slots.error();
            }
            return slots.error;
          }
          return __WEBPACK_EXTERNAL_MODULE_vue_createVNode__("div", {
            "class": "".concat(resolveClassName('image-placeholder'))
          }, [props.fallback ? __WEBPACK_EXTERNAL_MODULE_vue_createVNode__("img", {
            "alt": "\u56FE\u7247\u52A0\u8F7D\u9519\u8BEF",
            "src": props.fallback
          }, null) : '', __WEBPACK_EXTERNAL_MODULE_vue_withDirectives__(__WEBPACK_EXTERNAL_MODULE_vue_createVNode__("i", {
            "class": "".concat(resolveClassName('icon'), " icon-image-fail")
          }, null), [[__WEBPACK_EXTERNAL_MODULE_vue_resolveDirective__("else")]])]);
        }
        return __WEBPACK_EXTERNAL_MODULE_vue_createVNode__("img", {
          "src": props.src,
          "onClick": clickHandler
        }, null);
      }
      return __WEBPACK_EXTERNAL_MODULE_vue_createVNode__("div", {
        "class": "".concat(resolveClassName('image'))
      }, [getContent(), preview.value && isShowViewer.value ? __WEBPACK_EXTERNAL_MODULE_vue_createVNode__(image_viewer, {
        "is-show-title": props.isShowPreviewTitle,
        "maskClose": props.maskClose,
        "url-list": props.urlList,
        "zIndex": props.zIndex,
        "onChange": change,
        "onClose": closeViewer
      }, null) : '']);
    };
  }
}));
;// ../../packages/image/src/index.ts
/*
 * Tencent is pleased to support the open source community by making
 * 蓝鲸智云PaaS平台社区版 (BlueKing PaaS Community Edition) available.
 *
 * Copyright (C) 2025 Tencent.  All rights reserved.
 *
 * 蓝鲸智云PaaS平台社区版 (BlueKing PaaS Community Edition) is licensed under the MIT License.
 *
 * License for 蓝鲸智云PaaS平台社区版 (BlueKing PaaS Community Edition):
 *
 * ---------------------------------------------------
 * Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated
 * documentation files (the "Software"), to deal in the Software without restriction, including without limitation
 * the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and
 * to permit persons to whom the Software is furnished to do so, subject to the following conditions:
 *
 * The above copyright notice and this permission notice shall be included in all copies or substantial portions of
 * the Software.
 *
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO
 * THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
 * CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
 * IN THE SOFTWARE.
 */




var BkImage = __WEBPACK_EXTERNAL_MODULE_bkui_vue_lib_shared_edbdfb03_withInstall__(src_image);
/* harmony default export */ const src = (BkImage);
export { src_image as Image, image_viewer as ImageViewer, src as default };
