Skip to content

Commit 61686fb

Browse files
committed
🐛 fix: Fix single border
1 parent 7a04a61 commit 61686fb

File tree

8 files changed

+72
-73
lines changed

8 files changed

+72
-73
lines changed

e2e/__tests__/modal.e2e.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
import { initHtml2Sketch, isUpdate, outputJSONData } from './utils';
21
import SketchFormat from '@sketch-hq/sketch-file-format-ts';
2+
import { initHtml2Sketch, isUpdate, outputJSONData } from './utils';
33

44
describe('测试 Modal 类型', () => {
55
test('Modal 正常', async () => {

e2e/docs/case/basic/demos/Tabs.tsx

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
import React from 'react';
2+
import { useElements, TestLayout } from '@e2e-utils';
3+
import { Tabs } from 'antd';
4+
import { AppleOutlined, AndroidOutlined } from '@ant-design/icons';
5+
6+
const { TabPane } = Tabs;
7+
8+
/**
9+
*
10+
*/
11+
export default () => {
12+
const { elements, ref } = useElements();
13+
14+
return (
15+
<TestLayout elements={elements}>
16+
<div ref={ref}>
17+
<Tabs defaultActiveKey="2">
18+
<TabPane
19+
tab={
20+
<span>
21+
<AppleOutlined />
22+
Tab 1
23+
</span>
24+
}
25+
key="1"
26+
>
27+
Tab 1
28+
</TabPane>
29+
<TabPane
30+
tab={
31+
<span>
32+
<AndroidOutlined />
33+
Tab 2
34+
</span>
35+
}
36+
key="2"
37+
>
38+
Tab 2
39+
</TabPane>
40+
</Tabs>
41+
</div>
42+
</TestLayout>
43+
);
44+
};

e2e/docs/case/basic/tabs.md

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
---
2+
title: Tabs 解析
3+
order: 20
4+
---
5+
6+
解析 Tabs
7+
8+
<code src="./demos/Tabs.tsx" />

e2e/utils/ToSketchLayout.tsx

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@ import React, { FC, useState } from 'react';
22
import { Button, Card, Col, Divider, Row, Space } from 'antd';
33
import ReactJson from 'react-json-view';
44
import useSketchJSON from './useSketchJSON';
5-
// import useAddBase64Url from './useAddBase64Url';
65

76
interface FooterProps {
87
elements: Element[] | Element;
@@ -13,10 +12,6 @@ const ToSketchLayout: FC<FooterProps> = ({ elements, children, buttons }) => {
1312
const { sketchJSON, generateGroup, generateSymbol } = useSketchJSON();
1413
const [showJSON, setShowJSON] = useState(false);
1514

16-
// const { isFinished } = useAddBase64Url();
17-
18-
// const disableToParse = !isFinished;
19-
2015
return (
2116
<div>
2217
{children}
@@ -42,15 +37,13 @@ const ToSketchLayout: FC<FooterProps> = ({ elements, children, buttons }) => {
4237
</Button>
4338
))}
4439
<Button
45-
// disabled={disableToParse}
4640
onClick={() => {
4741
generateGroup(elements);
4842
}}
4943
>
5044
转换为 Group
5145
</Button>
5246
<Button
53-
// disabled={disableToParse}
5447
type="primary"
5548
onClick={() => {
5649
generateSymbol(elements);

e2e/utils/useAddBase64Url.ts

Lines changed: 0 additions & 60 deletions
This file was deleted.

package.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@
4545
"e2e:local": "jest --config=jest.e2e.config.js",
4646
"e2e:update": "UPDATE=1 jest --config=jest.e2e.config.js --update-snapshot",
4747
"--------- ": "",
48-
"clean": "rm -rf es lib dist build coverage tests/dist src/.umi .eslintcache",
48+
"clean": "rm -rf es lib dist build coverage e2e/dist src/.umi .eslintcache",
4949
"lint": "npm run lint-eslint",
5050
"tsc": "tsc -p tsconfig-check.json",
5151
"lint-eslint": "eslint --cache --ext .js,.jsx,.ts,.tsx --format=pretty ./src",
@@ -80,6 +80,7 @@
8080
"devDependencies": {
8181
"@ant-design/charts": "^0.9.13",
8282
"@ant-design/pro-skeleton": "^1.0.0-beta.7",
83+
"@ant-design/pro-table": "^2.6.3",
8384
"@babel/core": "^7.8.3",
8485
"@babel/plugin-proposal-object-rest-spread": "^7.8.3",
8586
"@babel/preset-env": "^7.8.3",

src/function/nodeToLayers.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -74,6 +74,7 @@ const nodeToLayers = async (node: Element): Promise<AnyLayer[]> => {
7474

7575
if (hasPseudoShape.before) {
7676
const beforeEl = await parsePseudoToShape(node, 'before');
77+
console.info('转换为:', beforeEl);
7778
layers.push(beforeEl);
7879
}
7980

src/utils/visibility.ts

Lines changed: 16 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -106,15 +106,27 @@ export const isVisibleShape = (shape: Rectangle) => {
106106

107107
// 没任何样式的话,就返回不可见
108108
const hasNoStyle =
109-
shape.style.fills.length === 0 && shape.style.borders.length === 0;
109+
shape.style.fills.length === 0 &&
110+
shape.style.borders.length === 0 &&
111+
shape.style.innerShadows.length === 0 &&
112+
shape.style.shadows.length === 0;
113+
110114
if (hasNoStyle) return false;
111115

112116
const isInvalidFills = shape.style.fills.every(
113117
(fill) => fill.opacity.toString() === '0',
114118
);
115-
const isInvalidBorders = shape.style.borders.every(
116-
(border) => border.opacity === 0 || border.thickness === 0,
117-
);
119+
const isInvalidBorders =
120+
shape.style.borders.every(
121+
(border) => border.opacity === 0 || border.thickness === 0,
122+
) &&
123+
// TODO 需要用 tab 补一下测试用例
124+
shape.style.innerShadows.every((shadow) => {
125+
return (
126+
shadow.opacity.toString() === '0' ||
127+
shadow.color.hex.toLowerCase() === '#fffff'
128+
);
129+
});
118130

119131
return !(isInvalidFills && isInvalidBorders);
120132
};

0 commit comments

Comments
 (0)