Skip to content
This repository was archived by the owner on Oct 7, 2023. It is now read-only.
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
59 commits
Select commit Hold shift + click to select a range
ab71f3f
chore: changed ./github/build.yml runs on macos
Jun 24, 2021
1def142
chore: 修复了scripts build
Jun 24, 2021
0383cba
feat(slider): 创建了没有minimap的slider
Jun 28, 2021
26b97eb
test(text): 设置了合适的精度
Jun 29, 2021
7638b56
Merge branch 'master' of https://github.com/antvis/GUI
Jun 29, 2021
27feadd
feat(slider): 创建了基本slider
Jul 5, 2021
4f91f73
test(slider): slider的基本单测
Jul 5, 2021
67b3513
chore: 设置编译目标为ES2019以支持可选链
Jul 5, 2021
2dcb137
Merge branch 'master' of ssh://github.com/antvis/GUI
Jul 5, 2021
e4d7d8f
refactor(slider): merge master into feat-slider
Jul 5, 2021
dde3697
fix(sparkline): 修正了sparkline的baseline计算方法,修正了sparkline的定位
Jul 5, 2021
a179a7b
feat(slider): 加入了sparkline
Jul 6, 2021
57c51c5
refactor(slider): 暂存
Jul 6, 2021
c7751f8
docs(slider): 添加了slider的example
Jul 6, 2021
0a21507
docs(slider): 添加了slider的文档
Jul 6, 2021
7395146
refactor(slider): slider 支持缩略图
Jul 6, 2021
96a908f
refactor(slider): 更新了参数类型
Jul 6, 2021
9a7c2bd
test(slider): 添加了slider 单测
Jul 6, 2021
e0ce930
Merge branch 'master' of ssh://github.com/antvis/GUI
Jul 6, 2021
b309bbc
refactor(slider): merge master into slider branch
Jul 6, 2021
3b03d16
fix(sparkline): 修正了sparkline data参数为空时不显示
Jul 7, 2021
2a61d57
refactor(util): 抽取了取得数字精度的方法
Jul 7, 2021
de74316
refactor(slider): 手柄尺寸自适应
Jul 7, 2021
1d7cd92
docs(slider): 修改了案例
Jul 7, 2021
eb7deeb
fix(slider): 修复了纵向布局下的slider 手柄尺寸
Jul 7, 2021
98d564a
Update index.ts
Aarebecca Jul 7, 2021
7e41cdf
refactor: 移除了applyAttrs
Jul 8, 2021
67d17e3
refactor(sparkline): 调整了类型定义
Jul 8, 2021
35eacdd
refactor(sparkline): sparkline添加了update方法
Jul 8, 2021
7c8f959
refactor: 重构了slider 和 sparkline代码,具有update功能
Jul 11, 2021
c8793a6
refactor(sparkline): 调整了代码结构
Jul 11, 2021
fa7de40
refactor(slider): 使用了padding[]代替{}
Jul 11, 2021
a647335
refactor: 从index导出component
Jul 11, 2021
a458a2f
refactor(component): 添加了getStyle方法
Jul 11, 2021
d6ed3b3
refactor(scrollbar): 改写了scrollbar
Jul 11, 2021
f94b4db
refactor(marker): 改写了marker
Jul 11, 2021
753208e
refactor(icon): 改写了icon
Jul 11, 2021
465d5fe
Merge branch 'master' of ssh://github.com/antvis/GUI
Jul 11, 2021
54658ac
refactor: 移除了isPC
Jul 11, 2021
9fece1f
test(marker): 更新了marker单测
Jul 11, 2021
b8c7168
test(sparkline): 更新了单测
Jul 11, 2021
06aeee6
refactor(icon): 更新了访问权限
Jul 11, 2021
5ba2f10
refactor(sparkline): 修正了lines
Jul 11, 2021
de5fed6
test(sparkline): 更新了path单测
Jul 11, 2021
a99edb1
refactor(slider): 更新了slider types
Jul 11, 2021
b91c582
refactor(soparkline): 更新了sparkline types
Jul 11, 2021
4552b07
Merge branch 'master' of ssh://github.com/antvis/GUI
Jul 13, 2021
b6e88ab
refactor: merge master
Jul 13, 2021
6c9245e
refactor: 修改了type
Jul 13, 2021
5f22562
refactor: 更新了update方法
Jul 13, 2021
236dc83
refactor: 更新了访问权限及types
Jul 13, 2021
6943dc3
refactor(slider): 更新了slider handle
Jul 13, 2021
8214e7c
test: 更新了单测
Jul 13, 2021
a260851
refactor(sparkline): 更新了sparkline的update方法
Jul 13, 2021
a2baf8c
test(sparkline): 更新了sparkline单测
Jul 13, 2021
b6d98c5
refactor(slider): 更新了slider的update方法参数
Jul 14, 2021
eaadfab
refactor: 更新了types attrs
Jul 14, 2021
cae6147
test: 移除了调试输出
Jul 14, 2021
5e4fc21
refactor: 移除了attributeChangedCallback中无用代码
Jul 14, 2021
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 10 additions & 0 deletions __tests__/unit/ui/icon/index.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -34,5 +34,15 @@ describe('icon', () => {
});

canvas.appendChild(icon);

icon.update({
size: 16,
spacing: 10,
symbol:
'data:image/gif;base64,R0lGODlhEAAQAMQAAORHHOVSKudfOulrSOp3WOyDZu6QdvCchPGolfO0o/XBs/fNwfjZ0frl3/zy7////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAkAABAALAAAAAAQABAAAAVVICSOZGlCQAosJ6mu7fiyZeKqNKToQGDsM8hBADgUXoGAiqhSvp5QAnQKGIgUhwFUYLCVDFCrKUE1lBavAViFIDlTImbKC5Gm2hB0SlBCBMQiB0UjIQA7',
});

icon.destroy();
canvas.destroy();
});
});
75 changes: 29 additions & 46 deletions __tests__/unit/ui/marker/index.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -9,34 +9,28 @@ const renderer = new CanvasRenderer({
enableDirtyRectangleRendering: true,
});

describe('marker', () => {
test('basic', async () => {
const div = createDiv();

// @ts-ignore
const canvas = new Canvas({
container: div,
width: 300,
height: 300,
renderer,
});

const marker = new Marker({
attrs: {
symbol: 'triangle-down',
x: 50,
y: 50,
r: 16,
fill: 'green',
},
});

canvas.appendChild(marker);
const div = createDiv();

// @ts-ignore
const canvas = new Canvas({
container: div,
width: 300,
height: 300,
renderer,
});

expect(marker.getPathShape().getBounds().center[0]).toBe(100);
expect(marker.getPathShape().getBounds().center[1]).toBe(100);
});
const marker = new Marker({
attrs: {
symbol: 'triangle-down',
x: 50,
y: 50,
size: 16,
fill: 'green',
},
});
canvas.appendChild(marker);

describe('marker', () => {
test('customize marker', async () => {
Marker.registerSymbol(
'star',
Expand All @@ -45,26 +39,15 @@ describe('marker', () => {
)
);

const div = createDiv();

// @ts-ignore
const canvas = new Canvas({
container: div,
width: 300,
height: 300,
renderer,
marker.update({
symbol: 'star',
x: 50,
y: 50,
size: 16,
stroke: 'red',
});

const marker = new Marker({
attrs: {
symbol: 'star',
x: 50,
y: 50,
r: 16,
stroke: 'red',
},
});

canvas.appendChild(marker);
});
});

marker.destroy();
canvas.destroy();
110 changes: 48 additions & 62 deletions __tests__/unit/ui/scrollbar/index.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -19,30 +19,33 @@ const renderer = new CanvasRenderer({
enableDirtyRectangleRendering: true,
});

const div = createDiv();

// @ts-ignore
const canvas = new Canvas({
container: div,
width: 300,
height: 300,
renderer,
});

const height = 100;
const thumbLen = 30;
const scrollbar = new Scrollbar({
attrs: {
height,
thumbLen,
x: 100,
y: 5,
value: 0.5,
width: 20,
},
});

canvas.appendChild(scrollbar);

describe('scrollbar', () => {
test('basic', async () => {
const div = createDiv();

// @ts-ignore
const canvas = new Canvas({
container: div,
width: 300,
height: 300,
renderer,
});

const height = 100;
const thumbLen = 30;
const scrollbar = new Scrollbar({
attrs: {
height,
thumbLen,
x: 100,
y: 5,
value: 0.5,
width: 20,
},
});
expect(scrollbar.getValue()).toBe(0.5);

const { padding } = scrollbar.attributes;
Expand All @@ -52,128 +55,111 @@ describe('scrollbar', () => {
let value = 0.2;
scrollbar.setValue(value);
expect(scrollbar.getValue()).toBe(value);
expect(scrollbar.lastChild.attributes.y).toBeCloseTo(

expect(scrollbar.getElementsByName('thumb')[0].attr('y')).toBeCloseTo(
top + (height - verticalPadding - thumbLen) * clamp(value, 0, 1),
1
);

value = 0.1;
scrollbar.setValue(value);
expect(scrollbar.getValue()).toBe(value);
expect(scrollbar.lastChild.attributes.y).toBeCloseTo(
expect(scrollbar.getElementsByName('thumb')[0].attr('y')).toBeCloseTo(
top + (height - verticalPadding - thumbLen) * clamp(value, 0, 1),
1
);

value = 0.9;
scrollbar.setValue(value);
expect(scrollbar.getValue()).toBe(value);
expect(scrollbar.lastChild.attributes.y).toBeCloseTo(
expect(scrollbar.getElementsByName('thumb')[0].attr('y')).toBeCloseTo(
top + (height - verticalPadding - thumbLen) * clamp(value, 0, 1),
1
);

value = 10;
scrollbar.setValue(value);
expect(scrollbar.getValue()).toBe(value);
expect(scrollbar.lastChild.attributes.y).toBeCloseTo(
expect(scrollbar.getElementsByName('thumb')[0].attr('y')).toBeCloseTo(
top + (height - verticalPadding - thumbLen) * clamp(value, 0, 1),
1
);

value = -10086;
scrollbar.setValue(value);
expect(scrollbar.getValue()).toBe(value);
expect(scrollbar.lastChild.attributes.y).toBeCloseTo(
expect(scrollbar.getElementsByName('thumb')[0].attr('y')).toBeCloseTo(
top + (height - verticalPadding - thumbLen) * clamp(value, 0, 1),
1
);

canvas.appendChild(scrollbar);

// scrollbar.destroy();
// canvas.destroy();
});

test('horizontal', async () => {
const div = createDiv();

// @ts-ignore
const canvas = new Canvas({
container: div,
width: 300,
height: 300,
renderer,
});

const width = 100;
const thumbLen = 30;

const scrollbar = new Scrollbar({
attrs: {
width,
thumbLen,
x: 10,
y: 50,
orient: 'horizontal',
height: 20,
value: 0.5,
},
scrollbar.update({
width,
thumbLen,
x: 10,
y: 50,
orient: 'horizontal',
height: 20,
value: 0.5,
});

expect(scrollbar.getValue()).toBe(0.5);

const { padding } = scrollbar.attributes;
const [, right, , left] = padding;

const horizonPadding = left + right;

let value = 0.2;
scrollbar.setValue(value);
expect(scrollbar.getValue()).toBe(value);
expect(scrollbar.lastChild.attributes.x).toBeCloseTo(
expect(scrollbar.getElementsByName('thumb')[0].attr('x')).toBeCloseTo(
left + (width - horizonPadding - thumbLen) * clamp(value, 0, 1),
1
);

value = 0.1;
scrollbar.setValue(value);
expect(scrollbar.getValue()).toBe(value);
expect(scrollbar.lastChild.attributes.x).toBeCloseTo(
expect(scrollbar.getElementsByName('thumb')[0].attr('x')).toBeCloseTo(
left + (width - horizonPadding - thumbLen) * clamp(value, 0, 1),
1
);

value = 0.9;
scrollbar.setValue(value);
expect(scrollbar.getValue()).toBe(value);
expect(scrollbar.lastChild.attributes.x).toBeCloseTo(
expect(scrollbar.getElementsByName('thumb')[0].attr('x')).toBeCloseTo(
left + (width - horizonPadding - thumbLen) * clamp(value, 0, 1),
1
);

value = 10;
scrollbar.setValue(value);
expect(scrollbar.getValue()).toBe(value);
expect(scrollbar.lastChild.attributes.x).toBeCloseTo(
expect(scrollbar.getElementsByName('thumb')[0].attr('x')).toBeCloseTo(
left + (width - horizonPadding - thumbLen) * clamp(value, 0, 1),
1
);

value = -10086;
scrollbar.setValue(value);
expect(scrollbar.getValue()).toBe(value);
expect(scrollbar.lastChild.attributes.x).toBeCloseTo(
expect(scrollbar.getElementsByName('thumb')[0].attr('x')).toBeCloseTo(
left + (width - horizonPadding - thumbLen) * clamp(value, 0, 1),
1
);

scrollbar.addEventListener('valuechange', (e) => {
console.log('scroll: ', e);
e;
});

canvas.appendChild(scrollbar);
// scrollbar.destroy();
// canvas.destroy();
});
});

// scrollbar.destroy();
// canvas.destroy();
Loading