From bd1921df55921475dfbdbbc3125af5f0cafcc36d Mon Sep 17 00:00:00 2001 From: "wuji.xwt" Date: Thu, 10 Sep 2020 17:44:25 +0800 Subject: [PATCH] style: for utils --- packages/utils/src/asset.ts | 6 +++++- packages/utils/src/build-components.ts | 2 +- packages/utils/src/clone-deep.ts | 1 + packages/utils/src/create-content.ts | 2 +- packages/utils/src/create-icon.tsx | 2 +- packages/utils/src/get-prototype-of.ts | 1 + packages/utils/src/is-object.ts | 2 +- packages/utils/src/set-prototype-of.ts | 1 + packages/utils/src/svg-icon.tsx | 3 ++- 9 files changed, 14 insertions(+), 6 deletions(-) diff --git a/packages/utils/src/asset.ts b/packages/utils/src/asset.ts index 669cbede5..c23d574f0 100644 --- a/packages/utils/src/asset.ts +++ b/packages/utils/src/asset.ts @@ -100,7 +100,11 @@ export class StylePoint { private placeholder: Element | Text; - constructor(readonly level: number, readonly id?: string) { + readonly level: number; + + readonly id: string; + + constructor(level: number, id?: string) { let placeholder: any; if (id) { placeholder = document.head.querySelector(`style[data-id="${id}"]`); diff --git a/packages/utils/src/build-components.ts b/packages/utils/src/build-components.ts index 0aef3e4c6..434ba94c8 100644 --- a/packages/utils/src/build-components.ts +++ b/packages/utils/src/build-components.ts @@ -7,7 +7,7 @@ interface LibraryMap { [key: string]: string; } -function accessLibrary(library: string | object) { +function accessLibrary(library: string | Record) { if (typeof library !== 'string') { return library; } diff --git a/packages/utils/src/clone-deep.ts b/packages/utils/src/clone-deep.ts index 94719418a..99114634b 100644 --- a/packages/utils/src/clone-deep.ts +++ b/packages/utils/src/clone-deep.ts @@ -11,6 +11,7 @@ export function cloneDeep(src: any): any { } else if (type === 'object' && isPlainObject(src)) { data = {}; for (const key in src) { + // eslint-disable-next-line no-prototype-builtins if (src.hasOwnProperty(key)) { data[key] = cloneDeep(src[key]); } diff --git a/packages/utils/src/create-content.ts b/packages/utils/src/create-content.ts index 62e85b30d..211c26f16 100644 --- a/packages/utils/src/create-content.ts +++ b/packages/utils/src/create-content.ts @@ -1,7 +1,7 @@ import { ReactNode, ComponentType, isValidElement, cloneElement, createElement } from 'react'; import { isReactComponent } from './is-react'; -export function createContent(content: ReactNode | ComponentType, props?: object): ReactNode { +export function createContent(content: ReactNode | ComponentType, props?: Record): ReactNode { if (isValidElement(content)) { return props ? cloneElement(content, props) : content; } diff --git a/packages/utils/src/create-icon.tsx b/packages/utils/src/create-icon.tsx index 49f88aa0b..a69a042ae 100644 --- a/packages/utils/src/create-icon.tsx +++ b/packages/utils/src/create-icon.tsx @@ -5,7 +5,7 @@ import { isReactComponent } from './is-react'; const URL_RE = /^(https?:)\/\//i; -export function createIcon(icon?: IconType | null, props?: object): ReactNode { +export function createIcon(icon?: IconType | null, props?: Record): ReactNode { if (!icon) { return null; } diff --git a/packages/utils/src/get-prototype-of.ts b/packages/utils/src/get-prototype-of.ts index b64eebf63..924c01bcd 100644 --- a/packages/utils/src/get-prototype-of.ts +++ b/packages/utils/src/get-prototype-of.ts @@ -3,5 +3,6 @@ export function getPrototypeOf(target: any) { return Object.getPrototypeOf(target); } + // eslint-disable-next-line no-proto return target.__proto__; } diff --git a/packages/utils/src/is-object.ts b/packages/utils/src/is-object.ts index 1db32995e..4693388e4 100644 --- a/packages/utils/src/is-object.ts +++ b/packages/utils/src/is-object.ts @@ -1,3 +1,3 @@ -export function isObject(value: any): value is object { +export function isObject(value: any): value is Record { return value !== null && typeof value === 'object'; } diff --git a/packages/utils/src/set-prototype-of.ts b/packages/utils/src/set-prototype-of.ts index 7f242ac6a..5759f88c5 100644 --- a/packages/utils/src/set-prototype-of.ts +++ b/packages/utils/src/set-prototype-of.ts @@ -3,6 +3,7 @@ export function setPrototypeOf(target: any, proto: any) { if (typeof Object.setPrototypeOf !== 'undefined') { Object.setPrototypeOf(target, proto); // tslint:disable-line } else { + // eslint-disable-next-line no-proto target.__proto__ = proto; } } diff --git a/packages/utils/src/svg-icon.tsx b/packages/utils/src/svg-icon.tsx index f389606a8..f75724b06 100644 --- a/packages/utils/src/svg-icon.tsx +++ b/packages/utils/src/svg-icon.tsx @@ -13,7 +13,7 @@ export interface IconProps { fill?: string; size?: 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge' | number; children?: ReactNode; - style?: object; + style?: Record; } export function SVGIcon({ @@ -26,6 +26,7 @@ export function SVGIcon({ }: IconProps & { viewBox: string; }) { + // eslint-disable-next-line no-prototype-builtins if (SizePresets.hasOwnProperty(size)) { size = SizePresets[size]; }