From afac7cfa2f40b216dfd5bd4ef1dce41cad78c9f5 Mon Sep 17 00:00:00 2001 From: devin Date: Wed, 12 Apr 2023 10:02:18 +0800 Subject: [PATCH 01/14] =?UTF-8?q?=E7=A7=BB=E9=99=A4=E4=B8=8D=E9=9C=80?= =?UTF-8?q?=E8=A6=81=E7=9A=84=E4=BE=9D=E8=B5=96=20PrestColorPool=E6=94=AF?= =?UTF-8?q?=E6=8C=81=E5=85=A8=E5=B1=80=E8=AE=BE=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- packages/opendesign/package.json | 7 +------ .../opendesign/src/components/_shared/export.ts | 2 ++ .../opendesign/src/components/_shared/global.ts | 8 ++++++++ .../opendesign/src/components/_shared/utils.ts | 16 +--------------- .../src/components/carousel/gallery.ts | 4 ++-- .../opendesign/src/components/figure/OFigure.vue | 4 ++-- .../hooks/use-intersection-observer.ts | 1 - .../src/components/hooks/use-resize-observer.ts | 1 - packages/opendesign/src/components/vite-env.d.ts | 4 ---- packages/opendesign/tsconfig.json | 6 +----- 10 files changed, 17 insertions(+), 36 deletions(-) diff --git a/packages/opendesign/package.json b/packages/opendesign/package.json index 3ab14bd9..a8c486d9 100644 --- a/packages/opendesign/package.json +++ b/packages/opendesign/package.json @@ -28,14 +28,9 @@ }, "devDependencies": { "@opensig/opensig-scripts": "workspace:^0.0.8", - "@types/lodash-es": "^4.17.6", "typescript": "^4.6.4", "vue": "^3.2.41", "vue-tsc": "^1.0.13" }, - "dependencies": { - "intersection-observer-polyfill": "^0.1.0", - "lodash-es": "^4.17.21", - "resize-observer-polyfill": "^1.5.1" - } + "dependencies": {} } diff --git a/packages/opendesign/src/components/_shared/export.ts b/packages/opendesign/src/components/_shared/export.ts index 54b272ab..1551a1ff 100644 --- a/packages/opendesign/src/components/_shared/export.ts +++ b/packages/opendesign/src/components/_shared/export.ts @@ -3,3 +3,5 @@ export { initSize, initRound } from './global'; export * from './init-icons'; export * from './is'; + +export * from './utils'; diff --git a/packages/opendesign/src/components/_shared/global.ts b/packages/opendesign/src/components/_shared/global.ts index b5deb32e..7a850a52 100644 --- a/packages/opendesign/src/components/_shared/global.ts +++ b/packages/opendesign/src/components/_shared/global.ts @@ -1,4 +1,5 @@ import { ref } from 'vue'; +import { ColorPool } from './utils'; // 尺寸 export const SizeTypes = ['large', 'medium', 'small'] as const; @@ -27,3 +28,10 @@ export type ColorT = typeof ColorTypes[number]; export const Color2Types = ['normal', 'success', 'warning', 'danger'] as const; export type Color2T = typeof ColorTypes[number]; + +// 随机颜色池 +const PrestColor = ['#d9e6c3', '#ebd5be', '#d1e6de', '#e0ceeb', '#ebd3c7', '#e6dada', '#e3deeb', '#dedae6', '#cad0e8', '#cedeeb']; +export const PrestColorPool = ref(new ColorPool(PrestColor)); +export function initPrestColor(colors: string[]) { + PrestColorPool.value = new ColorPool(colors); +} diff --git a/packages/opendesign/src/components/_shared/utils.ts b/packages/opendesign/src/components/_shared/utils.ts index aacccf1f..9e240eb1 100644 --- a/packages/opendesign/src/components/_shared/utils.ts +++ b/packages/opendesign/src/components/_shared/utils.ts @@ -1,14 +1,3 @@ -import { throttle as _throttle, debounce as _debounce } from 'lodash-es'; -import type { ThrottleSettings, DebounceSettings } from 'lodash-es'; - -// 防抖 -export function debounce) => unknown>(fn: T, wait?: number, ctx?: unknown | null, opts?: ThrottleSettings) { - return _debounce.apply(ctx, [fn, wait, opts]); -} -// 节流 -export function throttle) => unknown>(fn: T, wait?: number, ctx?: unknown | null, opts?: DebounceSettings) { - return _throttle.apply(ctx, [fn, wait, opts]); -} // 防抖 时间为一个一帧 export function debounceRAF) => any>(fn: T) { let handle = 0; @@ -49,7 +38,7 @@ export function throttleRAF) => unknown>(fn: /** * 颜色池 */ -class ColorPool { +export class ColorPool { pool: Array; tmpPool: Array; @@ -77,6 +66,3 @@ class ColorPool { return color; } } - -const PrestColor = ['#d9e6c3', '#ebd5be', '#d1e6de', '#e0ceeb', '#ebd3c7', '#e6dada', '#e3deeb', '#dedae6', '#cad0e8', '#cedeeb']; -export const PrestColorPool = new ColorPool(PrestColor); \ No newline at end of file diff --git a/packages/opendesign/src/components/carousel/gallery.ts b/packages/opendesign/src/components/carousel/gallery.ts index a48bbdec..6e6d8205 100644 --- a/packages/opendesign/src/components/carousel/gallery.ts +++ b/packages/opendesign/src/components/carousel/gallery.ts @@ -2,7 +2,7 @@ import { isFunction } from '../_shared/is'; import { PointMoveT } from '../_shared/pointer'; import Effect, { EffectOptionT } from './effect'; import { useResizeObserver } from '../hooks'; -import { throttleRAF } from '../_shared/utils'; +import { debounceRAF } from '../_shared/utils'; interface GalleryItemT { index: number; @@ -75,7 +75,7 @@ export default class Gallery extends Effect { }; const or = useResizeObserver(); - const listener = throttleRAF(() => { + const listener = debounceRAF(() => { this.update(slideElList, slideContainer); this.active(activeIndex, false, true); }); diff --git a/packages/opendesign/src/components/figure/OFigure.vue b/packages/opendesign/src/components/figure/OFigure.vue index 5e01eacc..1550a0bc 100644 --- a/packages/opendesign/src/components/figure/OFigure.vue +++ b/packages/opendesign/src/components/figure/OFigure.vue @@ -1,6 +1,6 @@ diff --git a/packages/portal/src/router.ts b/packages/portal/src/router.ts index c041e9ed..ad5f2059 100644 --- a/packages/portal/src/router.ts +++ b/packages/portal/src/router.ts @@ -8,6 +8,12 @@ export const routes = [ label: '通用', component: TheHome, }, + { + path: '/text', + name: 'Text', + label: '文本 Text', + component: () => import('./pages/TheText.vue'), + }, { path: '/icons', name: 'Icons', -- Gitee From ce0981167aa546e653f44bbd9bd99fcb37c0a113 Mon Sep 17 00:00:00 2001 From: devin Date: Thu, 13 Apr 2023 00:58:22 +0800 Subject: [PATCH 04/14] =?UTF-8?q?=E4=BC=98=E5=8C=96layer=E7=BB=84=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/components/dialog/ODialog.vue | 9 ++- .../dialog/__demo__/DialogBasic.vue | 8 +- .../src/components/dialog/style/index.scss | 1 + .../src/components/layer/OLayer.vue | 78 ++++++++----------- .../components/layer/__demo__/LayerBasic.vue | 17 ++++ .../opendesign/src/components/layer/types.ts | 12 +-- .../src/components/loading/OLoading.vue | 17 ++-- .../loading/__demo__/LoadingBasic.vue | 25 +++--- .../{IndexLoading.vue => TheIndex.vue} | 0 .../src/components/loading/types.ts | 18 +++++ .../src/components/loading/use-loading.ts | 39 +++++----- .../src/components/loading/v-loading.ts | 25 ++++-- packages/portal/src/router.ts | 2 +- 13 files changed, 142 insertions(+), 109 deletions(-) rename packages/opendesign/src/components/loading/__demo__/{IndexLoading.vue => TheIndex.vue} (100%) diff --git a/packages/opendesign/src/components/dialog/ODialog.vue b/packages/opendesign/src/components/dialog/ODialog.vue index 9145375d..64a1cc3f 100644 --- a/packages/opendesign/src/components/dialog/ODialog.vue +++ b/packages/opendesign/src/components/dialog/ODialog.vue @@ -15,8 +15,14 @@ const emits = defineEmits<{ const layerRef = ref | null>(null); const onCloseClick = () => { - layerRef.value?.hide(); + layerRef.value?.toggle(false); }; + +defineExpose({ + toggle(show?: boolean) { + layerRef.value?.toggle(show); + }, +});