Ben Lin
2024-06-18 ebbd788fbb2c0b45d4473798efc57eec8ba74a25
src/components/Scrollbar/src/util.ts
@@ -1,4 +1,5 @@
import type { BarMap } from './types';
import type { MergeAll } from '@/utils/types';
export const BAR_MAP: BarMap = {
  vertical: {
@@ -23,7 +24,6 @@
  },
};
// @ts-ignore
export function renderThumbStyle({ move, size, bar }) {
  const style = {} as any;
  const translate = `translate${bar.axis}(${move}%)`;
@@ -36,12 +36,20 @@
  return style;
}
function extend<T, K>(to: T, _from: K): T & K {
function extend<T extends object, K extends object>(to: T, _from: K): T & K {
  return Object.assign(to, _from);
}
export function toObject<T>(arr: Array<T>): Recordable<T> {
  const res = {};
/**
 * [
 *  { name: 'zhangsan', age: 18 },
 *  { sex: 'male', age: 20 }
 * ]
 * =>
 * { name: 'zhangsan', sex: 'male', age: 20 }
 */
export function toObject<T extends object[]>(arr: T): MergeAll<T> {
  const res = {} as MergeAll<T>;
  for (let i = 0; i < arr.length; i++) {
    if (arr[i]) {
      extend(res, arr[i]);