bkui-vue 0.0.2-beta.36 → 0.0.2-beta.37
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/affix/index.js +391 -1
- package/lib/alert/index.js +287 -1
- package/lib/animate-number/index.js +219 -1
- package/lib/backtop/index.js +264 -1
- package/lib/badge/index.js +304 -1
- package/lib/breadcrumb/index.js +379 -1
- package/lib/button/index.js +403 -1
- package/lib/card/index.js +369 -1
- package/lib/cascader/index.js +2095 -2
- package/lib/checkbox/index.js +602 -1
- package/lib/code-diff/index.js +5548 -1
- package/lib/collapse/index.js +605 -1
- package/lib/collapse-transition/index.js +237 -1
- package/lib/color-picker/index.js +2735 -1
- package/lib/components.js +770 -1
- package/lib/config-provider/index.js +377 -1
- package/lib/container/index.js +408 -1
- package/lib/date-picker/index.js +5576 -1
- package/lib/dialog/index.js +1324 -2
- package/lib/directives/index.js +1386 -2
- package/lib/dist.index.js +179 -1
- package/lib/divider/index.js +237 -1
- package/lib/dropdown/index.js +455 -1
- package/lib/exception/index.js +435 -1
- package/lib/fixed-navbar/index.js +222 -1
- package/lib/form/index.js +1004 -1
- package/lib/hooks.js +133 -1
- package/lib/icon/angle-double-down-line.js +541 -1
- package/lib/icon/angle-double-left-line.js +541 -1
- package/lib/icon/angle-double-left.js +541 -1
- package/lib/icon/angle-double-right-line.js +541 -1
- package/lib/icon/angle-double-right.js +541 -1
- package/lib/icon/angle-double-up-line.js +541 -1
- package/lib/icon/angle-down-fill.js +541 -1
- package/lib/icon/angle-down-line.js +541 -1
- package/lib/icon/angle-down.js +541 -1
- package/lib/icon/angle-left.js +541 -1
- package/lib/icon/angle-right.js +541 -1
- package/lib/icon/angle-up-fill.js +541 -1
- package/lib/icon/angle-up.js +541 -1
- package/lib/icon/archive-fill.js +541 -1
- package/lib/icon/arrows-left.js +541 -1
- package/lib/icon/arrows-right.js +541 -1
- package/lib/icon/assistant.js +541 -1
- package/lib/icon/audio-fill.js +541 -1
- package/lib/icon/bk.js +541 -1
- package/lib/icon/circle.js +541 -1
- package/lib/icon/close-line.js +541 -1
- package/lib/icon/close.js +541 -1
- package/lib/icon/code.js +541 -1
- package/lib/icon/cog-shape.js +541 -1
- package/lib/icon/collapse-left.js +541 -1
- package/lib/icon/copy-shape.js +541 -1
- package/lib/icon/copy.js +541 -1
- package/lib/icon/data-shape.js +541 -1
- package/lib/icon/del.js +541 -1
- package/lib/icon/doc-fill.js +541 -1
- package/lib/icon/done.js +541 -1
- package/lib/icon/down-shape.js +541 -1
- package/lib/icon/down-small.js +541 -1
- package/lib/icon/edit-line.js +541 -1
- package/lib/icon/ellipsis.js +541 -1
- package/lib/icon/enlarge-line.js +541 -1
- package/lib/icon/error.js +541 -1
- package/lib/icon/excel-fill.js +541 -1
- package/lib/icon/exclamation-circle-shape.js +541 -1
- package/lib/icon/eye.js +541 -1
- package/lib/icon/filliscreen-line.js +541 -1
- package/lib/icon/fix-line.js +541 -1
- package/lib/icon/fix-shape.js +541 -1
- package/lib/icon/folder-open.js +541 -1
- package/lib/icon/folder-shape-open.js +541 -1
- package/lib/icon/folder-shape.js +541 -1
- package/lib/icon/folder.js +541 -1
- package/lib/icon/funnel.js +541 -1
- package/lib/icon/help-document-fill.js +541 -1
- package/lib/icon/help-fill.js +541 -1
- package/lib/icon/help.js +541 -1
- package/lib/icon/image-fill.js +563 -1
- package/lib/icon/img-error.js +563 -1
- package/lib/icon/img-placehoulder.js +563 -1
- package/lib/icon/index.js +2353 -1
- package/lib/icon/info-line.js +563 -1
- package/lib/icon/info.js +563 -1
- package/lib/icon/left-shape.js +563 -1
- package/lib/icon/left-turn-line.js +563 -1
- package/lib/icon/narrow-line.js +563 -1
- package/lib/icon/original.js +563 -1
- package/lib/icon/pdf-fill.js +563 -1
- package/lib/icon/play-shape.js +563 -1
- package/lib/icon/plus.js +563 -1
- package/lib/icon/ppt-fill.js +563 -1
- package/lib/icon/qq.js +563 -1
- package/lib/icon/right-shape.js +563 -1
- package/lib/icon/right-turn-line.js +563 -1
- package/lib/icon/search.js +563 -1
- package/lib/icon/share.js +563 -1
- package/lib/icon/spinner.js +563 -1
- package/lib/icon/success.js +563 -1
- package/lib/icon/switcher-loading.js +563 -1
- package/lib/icon/text-file.js +563 -1
- package/lib/icon/text-fill.js +563 -1
- package/lib/icon/transfer.js +563 -1
- package/lib/icon/tree-application-shape.js +563 -1
- package/lib/icon/unfull-screen.js +563 -1
- package/lib/icon/unvisible.js +563 -1
- package/lib/icon/up-shape.js +563 -1
- package/lib/icon/upload.js +563 -1
- package/lib/icon/video-fill.js +563 -1
- package/lib/icon/warn.js +563 -1
- package/lib/icon/weixin-pro.js +563 -1
- package/lib/icon/weixin.js +563 -1
- package/lib/image/index.js +681 -1
- package/lib/index.js +195 -1
- package/lib/info-box/index.js +1514 -2
- package/lib/input/index.js +1038 -1
- package/lib/link/index.js +232 -1
- package/lib/loading/index.js +443 -1
- package/lib/locale/index.js +489 -1
- package/lib/menu/index.js +793 -1
- package/lib/message/index.js +1842 -2
- package/lib/modal/index.js +407 -1
- package/lib/navigation/index.js +439 -1
- package/lib/notify/index.js +470 -1
- package/lib/overflow-title/index.js +547 -1
- package/lib/pagination/index.js +974 -1
- package/lib/plugin-popover/index.js +4121 -1
- package/lib/plugins/index.js +130 -1
- package/lib/pop-confirm/index.js +367 -1
- package/lib/popover/index.js +4127 -1
- package/lib/popover2/index.js +171 -1
- package/lib/preset.js +164 -1
- package/lib/process/index.js +1146 -2
- package/lib/progress/index.js +495 -1
- package/lib/radio/index.js +693 -1
- package/lib/rate/index.js +406 -1
- package/lib/resize-layout/index.js +499 -1
- package/lib/search-select/index.js +3024 -2
- package/lib/select/index.js +2599 -2
- package/lib/shared/index.js +2832 -1
- package/lib/sideslider/index.js +1056 -2
- package/lib/slider/index.js +1683 -2
- package/lib/steps/index.js +1215 -2
- package/lib/swiper/index.js +404 -1
- package/lib/switcher/index.js +335 -1
- package/lib/tab/index.js +935 -1
- package/lib/table/index.js +6588 -1
- package/lib/table-column/index.js +768 -1
- package/lib/tag/index.js +309 -1
- package/lib/tag-input/index.js +1758 -1
- package/lib/time-picker/index.js +142 -1
- package/lib/timeline/index.js +310 -1
- package/lib/transfer/index.js +767 -1
- package/lib/tree/index.js +2664 -1
- package/lib/upload/index.js +3257 -2
- package/lib/virtual-render/index.js +806 -1
- package/package.json +1 -1
- package/lib/cascader/index.js.LICENSE.txt +0 -1
- package/lib/dialog/index.js.LICENSE.txt +0 -1
- package/lib/directives/index.js.LICENSE.txt +0 -14
- package/lib/info-box/index.js.LICENSE.txt +0 -1
- package/lib/message/index.js.LICENSE.txt +0 -6
- package/lib/process/index.js.LICENSE.txt +0 -1
- package/lib/search-select/index.js.LICENSE.txt +0 -1
- package/lib/select/index.js.LICENSE.txt +0 -1
- package/lib/sideslider/index.js.LICENSE.txt +0 -1
- package/lib/slider/index.js.LICENSE.txt +0 -1
- package/lib/steps/index.js.LICENSE.txt +0 -1
- package/lib/upload/index.js.LICENSE.txt +0 -1
package/lib/affix/index.js
CHANGED
@@ -1 +1,391 @@
|
|
1
|
-
|
1
|
+
(function webpackUniversalModuleDefinition(root, factory) {
|
2
|
+
if(typeof exports === 'object' && typeof module === 'object')
|
3
|
+
module.exports = factory(require("../shared"), require("vue"), require("lodash"), require("../config-provider"));
|
4
|
+
else if(typeof define === 'function' && define.amd)
|
5
|
+
define(["../shared", "vue", "lodash", "../config-provider"], factory);
|
6
|
+
else {
|
7
|
+
var a = typeof exports === 'object' ? factory(require("../shared"), require("vue"), require("lodash"), require("../config-provider")) : factory(root["../shared"], root["vue"], root["lodash"], root["../config-provider"]);
|
8
|
+
for(var i in a) (typeof exports === 'object' ? exports : root)[i] = a[i];
|
9
|
+
}
|
10
|
+
})(self, (__WEBPACK_EXTERNAL_MODULE__4212__, __WEBPACK_EXTERNAL_MODULE__748__, __WEBPACK_EXTERNAL_MODULE__467__, __WEBPACK_EXTERNAL_MODULE__2717__) => {
|
11
|
+
return /******/ (() => { // webpackBootstrap
|
12
|
+
/******/ "use strict";
|
13
|
+
/******/ var __webpack_modules__ = ({
|
14
|
+
|
15
|
+
/***/ 2717:
|
16
|
+
/***/ ((module) => {
|
17
|
+
|
18
|
+
module.exports = __WEBPACK_EXTERNAL_MODULE__2717__;
|
19
|
+
|
20
|
+
/***/ }),
|
21
|
+
|
22
|
+
/***/ 4212:
|
23
|
+
/***/ ((module) => {
|
24
|
+
|
25
|
+
module.exports = __WEBPACK_EXTERNAL_MODULE__4212__;
|
26
|
+
|
27
|
+
/***/ }),
|
28
|
+
|
29
|
+
/***/ 467:
|
30
|
+
/***/ ((module) => {
|
31
|
+
|
32
|
+
module.exports = __WEBPACK_EXTERNAL_MODULE__467__;
|
33
|
+
|
34
|
+
/***/ }),
|
35
|
+
|
36
|
+
/***/ 748:
|
37
|
+
/***/ ((module) => {
|
38
|
+
|
39
|
+
module.exports = __WEBPACK_EXTERNAL_MODULE__748__;
|
40
|
+
|
41
|
+
/***/ })
|
42
|
+
|
43
|
+
/******/ });
|
44
|
+
/************************************************************************/
|
45
|
+
/******/ // The module cache
|
46
|
+
/******/ var __webpack_module_cache__ = {};
|
47
|
+
/******/
|
48
|
+
/******/ // The require function
|
49
|
+
/******/ function __webpack_require__(moduleId) {
|
50
|
+
/******/ // Check if module is in cache
|
51
|
+
/******/ var cachedModule = __webpack_module_cache__[moduleId];
|
52
|
+
/******/ if (cachedModule !== undefined) {
|
53
|
+
/******/ return cachedModule.exports;
|
54
|
+
/******/ }
|
55
|
+
/******/ // Create a new module (and put it into the cache)
|
56
|
+
/******/ var module = __webpack_module_cache__[moduleId] = {
|
57
|
+
/******/ // no module.id needed
|
58
|
+
/******/ // no module.loaded needed
|
59
|
+
/******/ exports: {}
|
60
|
+
/******/ };
|
61
|
+
/******/
|
62
|
+
/******/ // Execute the module function
|
63
|
+
/******/ __webpack_modules__[moduleId](module, module.exports, __webpack_require__);
|
64
|
+
/******/
|
65
|
+
/******/ // Return the exports of the module
|
66
|
+
/******/ return module.exports;
|
67
|
+
/******/ }
|
68
|
+
/******/
|
69
|
+
/************************************************************************/
|
70
|
+
/******/ /* webpack/runtime/define property getters */
|
71
|
+
/******/ (() => {
|
72
|
+
/******/ // define getter functions for harmony exports
|
73
|
+
/******/ __webpack_require__.d = (exports, definition) => {
|
74
|
+
/******/ for(var key in definition) {
|
75
|
+
/******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {
|
76
|
+
/******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] });
|
77
|
+
/******/ }
|
78
|
+
/******/ }
|
79
|
+
/******/ };
|
80
|
+
/******/ })();
|
81
|
+
/******/
|
82
|
+
/******/ /* webpack/runtime/hasOwnProperty shorthand */
|
83
|
+
/******/ (() => {
|
84
|
+
/******/ __webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))
|
85
|
+
/******/ })();
|
86
|
+
/******/
|
87
|
+
/******/ /* webpack/runtime/make namespace object */
|
88
|
+
/******/ (() => {
|
89
|
+
/******/ // define __esModule on exports
|
90
|
+
/******/ __webpack_require__.r = (exports) => {
|
91
|
+
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
|
92
|
+
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
93
|
+
/******/ }
|
94
|
+
/******/ Object.defineProperty(exports, '__esModule', { value: true });
|
95
|
+
/******/ };
|
96
|
+
/******/ })();
|
97
|
+
/******/
|
98
|
+
/************************************************************************/
|
99
|
+
var __webpack_exports__ = {};
|
100
|
+
// This entry need to be wrapped in an IIFE because it need to be isolated against other modules in the chunk.
|
101
|
+
(() => {
|
102
|
+
// ESM COMPAT FLAG
|
103
|
+
__webpack_require__.r(__webpack_exports__);
|
104
|
+
|
105
|
+
// EXPORTS
|
106
|
+
__webpack_require__.d(__webpack_exports__, {
|
107
|
+
"default": () => (/* binding */ src)
|
108
|
+
});
|
109
|
+
|
110
|
+
// EXTERNAL MODULE: external "../shared"
|
111
|
+
var external_shared_ = __webpack_require__(4212);
|
112
|
+
;// CONCATENATED MODULE: ../../node_modules/@babel/runtime/helpers/esm/typeof.js
|
113
|
+
function _typeof(obj) {
|
114
|
+
"@babel/helpers - typeof";
|
115
|
+
|
116
|
+
return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) {
|
117
|
+
return typeof obj;
|
118
|
+
} : function (obj) {
|
119
|
+
return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj;
|
120
|
+
}, _typeof(obj);
|
121
|
+
}
|
122
|
+
;// CONCATENATED MODULE: ../../node_modules/@babel/runtime/helpers/esm/toPrimitive.js
|
123
|
+
|
124
|
+
function _toPrimitive(input, hint) {
|
125
|
+
if (_typeof(input) !== "object" || input === null) return input;
|
126
|
+
var prim = input[Symbol.toPrimitive];
|
127
|
+
if (prim !== undefined) {
|
128
|
+
var res = prim.call(input, hint || "default");
|
129
|
+
if (_typeof(res) !== "object") return res;
|
130
|
+
throw new TypeError("@@toPrimitive must return a primitive value.");
|
131
|
+
}
|
132
|
+
return (hint === "string" ? String : Number)(input);
|
133
|
+
}
|
134
|
+
;// CONCATENATED MODULE: ../../node_modules/@babel/runtime/helpers/esm/toPropertyKey.js
|
135
|
+
|
136
|
+
|
137
|
+
function _toPropertyKey(arg) {
|
138
|
+
var key = _toPrimitive(arg, "string");
|
139
|
+
return _typeof(key) === "symbol" ? key : String(key);
|
140
|
+
}
|
141
|
+
;// CONCATENATED MODULE: ../../node_modules/@babel/runtime/helpers/esm/defineProperty.js
|
142
|
+
|
143
|
+
function _defineProperty(obj, key, value) {
|
144
|
+
key = _toPropertyKey(key);
|
145
|
+
if (key in obj) {
|
146
|
+
Object.defineProperty(obj, key, {
|
147
|
+
value: value,
|
148
|
+
enumerable: true,
|
149
|
+
configurable: true,
|
150
|
+
writable: true
|
151
|
+
});
|
152
|
+
} else {
|
153
|
+
obj[key] = value;
|
154
|
+
}
|
155
|
+
return obj;
|
156
|
+
}
|
157
|
+
// EXTERNAL MODULE: external "vue"
|
158
|
+
var external_vue_ = __webpack_require__(748);
|
159
|
+
// EXTERNAL MODULE: external "lodash"
|
160
|
+
var external_lodash_ = __webpack_require__(467);
|
161
|
+
// EXTERNAL MODULE: external "../config-provider"
|
162
|
+
var external_config_provider_ = __webpack_require__(2717);
|
163
|
+
;// CONCATENATED MODULE: ../../packages/affix/src/affix.tsx
|
164
|
+
|
165
|
+
|
166
|
+
/*
|
167
|
+
* Tencent is pleased to support the open source community by making
|
168
|
+
* 蓝鲸智云PaaS平台社区版 (BlueKing PaaS Community Edition) available.
|
169
|
+
*
|
170
|
+
* Copyright (C) 2021 THL A29 Limited, a Tencent company. All rights reserved.
|
171
|
+
*
|
172
|
+
* 蓝鲸智云PaaS平台社区版 (BlueKing PaaS Community Edition) is licensed under the MIT License.
|
173
|
+
*
|
174
|
+
* License for 蓝鲸智云PaaS平台社区版 (BlueKing PaaS Community Edition):
|
175
|
+
*
|
176
|
+
* ---------------------------------------------------
|
177
|
+
* Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated
|
178
|
+
* documentation files (the "Software"), to deal in the Software without restriction, including without limitation
|
179
|
+
* the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and
|
180
|
+
* to permit persons to whom the Software is furnished to do so, subject to the following conditions:
|
181
|
+
*
|
182
|
+
* The above copyright notice and this permission notice shall be included in all copies or substantial portions of
|
183
|
+
* the Software.
|
184
|
+
*
|
185
|
+
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO
|
186
|
+
* THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
187
|
+
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
|
188
|
+
* CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
|
189
|
+
* IN THE SOFTWARE.
|
190
|
+
*/
|
191
|
+
|
192
|
+
|
193
|
+
|
194
|
+
|
195
|
+
var on = function () {
|
196
|
+
if (document.addEventListener) {
|
197
|
+
return function (element, event, handler) {
|
198
|
+
if (element && event && handler) {
|
199
|
+
element.addEventListener(event, handler, true);
|
200
|
+
}
|
201
|
+
};
|
202
|
+
}
|
203
|
+
return function (element, event, handler) {
|
204
|
+
if (element && event && handler) {
|
205
|
+
element.attachEvent("on".concat(event), handler);
|
206
|
+
}
|
207
|
+
};
|
208
|
+
}();
|
209
|
+
// 兼容浏览器,移除事件监听器
|
210
|
+
var off = function () {
|
211
|
+
if (document.removeEventListener) {
|
212
|
+
return function (element, event, handler) {
|
213
|
+
if (element && event) {
|
214
|
+
element.removeEventListener(event, handler, true);
|
215
|
+
}
|
216
|
+
};
|
217
|
+
}
|
218
|
+
return function (element, event, handler) {
|
219
|
+
if (element && event) {
|
220
|
+
element.detachEvent("on".concat(event), handler);
|
221
|
+
}
|
222
|
+
};
|
223
|
+
}();
|
224
|
+
/* harmony default export */ const affix = ((0,external_vue_.defineComponent)({
|
225
|
+
name: 'Affix',
|
226
|
+
props: {
|
227
|
+
offsetTop: external_shared_.PropTypes.number.def(0),
|
228
|
+
offsetBottom: external_shared_.PropTypes.number,
|
229
|
+
target: external_shared_.PropTypes.string.def(''),
|
230
|
+
zIndex: external_shared_.PropTypes.number.def(1000)
|
231
|
+
},
|
232
|
+
emits: ['change'],
|
233
|
+
setup: function setup(props, _ref) {
|
234
|
+
var emit = _ref.emit,
|
235
|
+
slots = _ref.slots;
|
236
|
+
var point = (0,external_vue_.ref)(null);
|
237
|
+
var root = (0,external_vue_.ref)(null);
|
238
|
+
var targetEl = (0,external_vue_.ref)();
|
239
|
+
var styles = (0,external_vue_.ref)({});
|
240
|
+
var _getCurrentInstance = (0,external_vue_.getCurrentInstance)(),
|
241
|
+
proxy = _getCurrentInstance.proxy;
|
242
|
+
var affixWidth = (0,external_vue_.ref)(0);
|
243
|
+
var offsetStyles = (0,external_vue_.computed)(function () {
|
244
|
+
return Object.assign(Object.assign({}, styles.value), {
|
245
|
+
'z-index': props.zIndex
|
246
|
+
});
|
247
|
+
});
|
248
|
+
(0,external_vue_.onMounted)(function () {
|
249
|
+
affixWidth.value = proxy.$el.offsetWidth;
|
250
|
+
targetEl.value = props.target ? document.querySelector(props.target) : window;
|
251
|
+
on(targetEl.value, 'scroll', listenScroll);
|
252
|
+
on(targetEl.value, 'resize', listenScroll);
|
253
|
+
(0,external_vue_.nextTick)(function () {
|
254
|
+
handleScroll();
|
255
|
+
});
|
256
|
+
});
|
257
|
+
var _usePrefix = (0,external_config_provider_.usePrefix)(),
|
258
|
+
resolveClassName = _usePrefix.resolveClassName;
|
259
|
+
var affix = (0,external_vue_.ref)(false);
|
260
|
+
var pointClass = (0,external_vue_.computed)(function () {
|
261
|
+
return (0,external_shared_.classes)(_defineProperty({}, "".concat(resolveClassName('affix')), affix.value));
|
262
|
+
});
|
263
|
+
var offsetType = (0,external_vue_.computed)(function () {
|
264
|
+
return props.offsetBottom >= 0 ? 'bottom' : 'top';
|
265
|
+
});
|
266
|
+
var setTargetLoop = function setTargetLoop() {
|
267
|
+
if (offsetType.value === 'top') {
|
268
|
+
styles.value = {
|
269
|
+
top: "".concat(targetEl.value.getBoundingClientRect().top + props.offsetTop, "px")
|
270
|
+
};
|
271
|
+
} else {
|
272
|
+
styles.value = {
|
273
|
+
bottom: "".concat(window.innerHeight - targetEl.value.getBoundingClientRect().bottom + props.offsetBottom, "px")
|
274
|
+
};
|
275
|
+
}
|
276
|
+
};
|
277
|
+
var listenScroll = (0,external_lodash_.throttle)(function () {
|
278
|
+
handleScroll();
|
279
|
+
}, 100);
|
280
|
+
// 获取元素到浏览器边缘的距离
|
281
|
+
var getOffset = function getOffset(element) {
|
282
|
+
var rect = element.value.getBoundingClientRect();
|
283
|
+
var rect2 = targetEl.value === window ? {
|
284
|
+
top: 0,
|
285
|
+
left: 0
|
286
|
+
} : targetEl.value.getBoundingClientRect();
|
287
|
+
var clientTop = targetEl.value.clientTop || 0;
|
288
|
+
var clientLeft = targetEl.value.clientLeft || 0;
|
289
|
+
return {
|
290
|
+
top: rect.top - rect2.top - clientTop,
|
291
|
+
left: rect.left - rect2.left - clientLeft
|
292
|
+
};
|
293
|
+
};
|
294
|
+
var handleScroll = function handleScroll() {
|
295
|
+
var rect = targetEl.value === window ? {
|
296
|
+
top: 0,
|
297
|
+
left: 0,
|
298
|
+
bottom: window.innerHeight
|
299
|
+
} : targetEl.value.getBoundingClientRect();
|
300
|
+
var elOffset = getOffset(root);
|
301
|
+
var windowHeight = targetEl.value === window ? targetEl.value.innerHeight : targetEl.value.clientHeight;
|
302
|
+
var elHeight = point.value.offsetHeight;
|
303
|
+
// Fixed Top
|
304
|
+
if (elOffset.top < props.offsetTop && offsetType.value === 'top' && !affix.value) {
|
305
|
+
affix.value = true;
|
306
|
+
styles.value = {
|
307
|
+
position: 'fixed',
|
308
|
+
top: "".concat(rect.top + props.offsetTop, "px"),
|
309
|
+
left: "".concat(rect.left + elOffset.left, "px"),
|
310
|
+
width: "".concat(affixWidth.value, "px")
|
311
|
+
};
|
312
|
+
if (targetEl.value !== window) {
|
313
|
+
on(window, 'scroll', setTargetLoop);
|
314
|
+
}
|
315
|
+
emit('change', true);
|
316
|
+
} else if (elOffset.top > props.offsetTop && offsetType.value === 'top' && affix.value) {
|
317
|
+
affix.value = false;
|
318
|
+
styles.value = null;
|
319
|
+
emit('change', false);
|
320
|
+
}
|
321
|
+
// Fixed Bottom
|
322
|
+
if (elOffset.top + props.offsetBottom + elHeight > windowHeight && offsetType.value === 'bottom' && !affix.value) {
|
323
|
+
affix.value = true;
|
324
|
+
styles.value = {
|
325
|
+
bottom: "".concat(window.innerHeight - rect.bottom + props.offsetBottom, "px"),
|
326
|
+
left: "".concat(rect.left + elOffset.left, "px"),
|
327
|
+
width: "".concat(affixWidth.value, "px")
|
328
|
+
};
|
329
|
+
if (targetEl.value !== window) {
|
330
|
+
on(window, 'scroll', setTargetLoop);
|
331
|
+
}
|
332
|
+
emit('change', true);
|
333
|
+
} else if (elOffset.top + props.offsetBottom + elHeight < windowHeight && offsetType.value === 'bottom' && affix.value) {
|
334
|
+
affix.value = false;
|
335
|
+
styles.value = null;
|
336
|
+
emit('change', false);
|
337
|
+
}
|
338
|
+
};
|
339
|
+
(0,external_vue_.onBeforeUnmount)(function () {
|
340
|
+
off(targetEl.value, 'scroll', listenScroll);
|
341
|
+
off(targetEl.value, 'resize', listenScroll);
|
342
|
+
off(window, 'scroll', setTargetLoop);
|
343
|
+
});
|
344
|
+
return function () {
|
345
|
+
var _a;
|
346
|
+
return (0,external_vue_.createVNode)("div", {
|
347
|
+
"ref": root
|
348
|
+
}, [(0,external_vue_.createVNode)("div", {
|
349
|
+
"ref": point,
|
350
|
+
"class": pointClass.value,
|
351
|
+
"style": offsetStyles.value
|
352
|
+
}, [(_a = slots["default"]) === null || _a === void 0 ? void 0 : _a.call(slots)])]);
|
353
|
+
};
|
354
|
+
}
|
355
|
+
}));
|
356
|
+
;// CONCATENATED MODULE: ../../packages/affix/src/index.ts
|
357
|
+
/*
|
358
|
+
* Tencent is pleased to support the open source community by making
|
359
|
+
* 蓝鲸智云PaaS平台社区版 (BlueKing PaaS Community Edition) available.
|
360
|
+
*
|
361
|
+
* Copyright (C) 2021 THL A29 Limited, a Tencent company. All rights reserved.
|
362
|
+
*
|
363
|
+
* 蓝鲸智云PaaS平台社区版 (BlueKing PaaS Community Edition) is licensed under the MIT License.
|
364
|
+
*
|
365
|
+
* License for 蓝鲸智云PaaS平台社区版 (BlueKing PaaS Community Edition):
|
366
|
+
*
|
367
|
+
* ---------------------------------------------------
|
368
|
+
* Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated
|
369
|
+
* documentation files (the "Software"), to deal in the Software without restriction, including without limitation
|
370
|
+
* the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and
|
371
|
+
* to permit persons to whom the Software is furnished to do so, subject to the following conditions:
|
372
|
+
*
|
373
|
+
* The above copyright notice and this permission notice shall be included in all copies or substantial portions of
|
374
|
+
* the Software.
|
375
|
+
*
|
376
|
+
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO
|
377
|
+
* THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
378
|
+
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
|
379
|
+
* CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
|
380
|
+
* IN THE SOFTWARE.
|
381
|
+
*/
|
382
|
+
|
383
|
+
|
384
|
+
var BkAffix = (0,external_shared_.withInstall)(affix);
|
385
|
+
/* harmony default export */ const src = (BkAffix);
|
386
|
+
})();
|
387
|
+
|
388
|
+
/******/ return __webpack_exports__;
|
389
|
+
/******/ })()
|
390
|
+
;
|
391
|
+
});
|