From 30a072b58a3070a129fdc24cbf1356ca4be0c661 Mon Sep 17 00:00:00 2001 From: kanno <812137533@qq.com> Date: Tue, 26 Nov 2024 15:25:25 +0800 Subject: [PATCH] chore: release v0.2.1 --- CHANGELOG.md | 4 ++++ README.md | 39 +++++++++++++++++++++++++++++++++++++++ package.json | 2 +- src/shared/index.ts | 9 --------- 4 files changed, 44 insertions(+), 10 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 78b2778..ab736e8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,7 @@ +## 0.2.1 + +Optimize render and cache. + # 0.2.0 Break preset color scheme. Add cache diff --git a/README.md b/README.md index f3a0899..e7b7613 100644 --- a/README.md +++ b/README.md @@ -14,6 +14,45 @@ $ yarn add squarified See the dev directory for a minimal example. +### API + +```ts +// convert data into expected data +declare function c2m< + T extends AnyObject & { + groups: any[] + }, + K extends keyof T +>(data: T, key: K, modifier?: (data: T) => T): T & { + weight: number +} + +// preset theme layout (unstable) +declare function presetDecorator(app: TreemapLayout): void + +declare function getNodeDepth(node: NativeModule): number + +declare function visit(data: T[], fn: (data: T) => boolean | void): T | null + +declare function findRelativeNode(p: { + x: number + y: number +}, layoutNodes: LayoutModule[]): LayoutModule | null + +declare function findRelativeNodeById(id: string, layoutNodes: LayoutModule[]): LayoutModule | null + +interface App { + init: (el: HTMLElement) => void + dispose: () => void + setOptions: (options: TreemapOptions) => void + resize: () => void + use: (using: Using, register: (app: TreemapLayout) => void) => void + zoom: (id: string) => void +} + +declare function createTreemap(): App +``` + ### Auth Kanno diff --git a/package.json b/package.json index 4194ca9..25eba1d 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "squarified", - "version": "0.2.0", + "version": "0.2.1", "description": "squarified tree map", "main": "dist/index.js", "module": "dist/index.mjs", diff --git a/src/shared/index.ts b/src/shared/index.ts index 362f15d..02c45ba 100644 --- a/src/shared/index.ts +++ b/src/shared/index.ts @@ -2,10 +2,6 @@ import { Matrix2D } from '../etoile/native/matrix' import type { RectStyleOptions } from '../etoile/graph/rect' import { Rect, Text } from '../etoile' -export function isObject(data: NonNullable>): data is object { - return Object.prototype.toString.call(data) === '[object Object]' -} - export function hashCode(str: string) { let hash = 0 for (let i = 0; i < str.length; i++) { @@ -24,11 +20,6 @@ export function perferNumeric(s: string | number) { export function noop() {} -export function replaceString(str: S, searchValue: From, replaceValue: To) { - return str.replace(searchValue, replaceValue) as S extends `${infer L}${From extends '' ? never : From}${infer R}` ? `${L}${To}${R}` - : S -} - export function createFillBlock(x: number, y: number, width: number, height: number, style?: Partial) { return new Rect({ width, height, x, y, style }) }