From 17dd2dbe5987e488940ef80ec958fcd947edc4d1 Mon Sep 17 00:00:00 2001
From: wangjiahao <1522128093@qq.com>
Date: Fri, 18 Jun 2021 10:58:26 +0800
Subject: [PATCH] =?UTF-8?q?feat:=20=E6=9B=B4=E6=8D=A2=E5=85=B6=E4=BB=96?=
=?UTF-8?q?=E7=BB=84=E4=BB=B6=E5=9B=BE=E6=A0=87=20=E5=B0=86=E4=B8=8A?=
=?UTF-8?q?=E4=BC=A0=E5=9B=BE=E7=89=87=E7=BB=84=E4=BB=B6=20=E7=A7=BB?=
=?UTF-8?q?=E5=8A=A8=E5=88=B0=E4=BE=A7=E8=BE=B9=E6=A0=8F=E4=B8=AD?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../canvas/components/Editor/index.vue | 10 -
.../components/canvas/components/Toolbar.vue | 6 +-
.../canvas/custom-component/component-list.js | 15 +-
frontend/src/styles/deicon/demo.css | 539 ++++++++++++++++
frontend/src/styles/deicon/demo_index.html | 602 ++++++++++++++++++
frontend/src/styles/deicon/iconfont.css | 24 +-
frontend/src/styles/deicon/iconfont.eot | Bin 6724 -> 0 bytes
frontend/src/styles/deicon/iconfont.js | 1 +
frontend/src/styles/deicon/iconfont.json | 135 ++++
frontend/src/styles/deicon/iconfont.ttf | Bin 6556 -> 7556 bytes
frontend/src/styles/deicon/iconfont.woff | Bin 4152 -> 4704 bytes
frontend/src/styles/deicon/iconfont.woff2 | Bin 3360 -> 3832 bytes
.../src/views/panel/AssistComponent/index.vue | 82 ++-
13 files changed, 1389 insertions(+), 25 deletions(-)
create mode 100644 frontend/src/styles/deicon/demo.css
create mode 100644 frontend/src/styles/deicon/demo_index.html
delete mode 100644 frontend/src/styles/deicon/iconfont.eot
create mode 100644 frontend/src/styles/deicon/iconfont.js
create mode 100644 frontend/src/styles/deicon/iconfont.json
diff --git a/frontend/src/components/canvas/components/Editor/index.vue b/frontend/src/components/canvas/components/Editor/index.vue
index a10a64e971..b30a605ff2 100644
--- a/frontend/src/components/canvas/components/Editor/index.vue
+++ b/frontend/src/components/canvas/components/Editor/index.vue
@@ -64,16 +64,6 @@
:element="item"
:out-style="getShapeStyleInt(item.style)"
/>
-
diff --git a/frontend/src/components/canvas/components/Toolbar.vue b/frontend/src/components/canvas/components/Toolbar.vue
index 430c970e6f..5f58da1044 100644
--- a/frontend/src/components/canvas/components/Toolbar.vue
+++ b/frontend/src/components/canvas/components/Toolbar.vue
@@ -41,9 +41,9 @@
-
-
-
+
+
+
diff --git a/frontend/src/components/canvas/custom-component/component-list.js b/frontend/src/components/canvas/custom-component/component-list.js
index afd70add33..6d30085a98 100644
--- a/frontend/src/components/canvas/custom-component/component-list.js
+++ b/frontend/src/components/canvas/custom-component/component-list.js
@@ -17,7 +17,7 @@ export const assistList = [
component: 'v-text',
type: 'v-text',
label: '文字',
- icon: 'iconfont icon-shuru',
+ icon: 'iconfont icon-text',
defaultClass: 'text-filter'
},
{
@@ -25,7 +25,18 @@ export const assistList = [
component: 'rect-shape',
type: 'rect-shape',
label: '矩形',
- icon: 'iconfont icon-xialakuang',
+ icon: 'iconfont icon-juxing',
+ defaultClass: 'text-filter'
+ }
+]
+
+export const pictureList = [
+ {
+ id: '20001',
+ component: 'picture',
+ type: 'picture',
+ label: '点击上传',
+ icon: 'iconfont icon-picture',
defaultClass: 'text-filter'
}
]
diff --git a/frontend/src/styles/deicon/demo.css b/frontend/src/styles/deicon/demo.css
new file mode 100644
index 0000000000..a67054a0a0
--- /dev/null
+++ b/frontend/src/styles/deicon/demo.css
@@ -0,0 +1,539 @@
+/* Logo 字体 */
+@font-face {
+ font-family: "iconfont logo";
+ src: url('https://at.alicdn.com/t/font_985780_km7mi63cihi.eot?t=1545807318834');
+ src: url('https://at.alicdn.com/t/font_985780_km7mi63cihi.eot?t=1545807318834#iefix') format('embedded-opentype'),
+ url('https://at.alicdn.com/t/font_985780_km7mi63cihi.woff?t=1545807318834') format('woff'),
+ url('https://at.alicdn.com/t/font_985780_km7mi63cihi.ttf?t=1545807318834') format('truetype'),
+ url('https://at.alicdn.com/t/font_985780_km7mi63cihi.svg?t=1545807318834#iconfont') format('svg');
+}
+
+.logo {
+ font-family: "iconfont logo";
+ font-size: 160px;
+ font-style: normal;
+ -webkit-font-smoothing: antialiased;
+ -moz-osx-font-smoothing: grayscale;
+}
+
+/* tabs */
+.nav-tabs {
+ position: relative;
+}
+
+.nav-tabs .nav-more {
+ position: absolute;
+ right: 0;
+ bottom: 0;
+ height: 42px;
+ line-height: 42px;
+ color: #666;
+}
+
+#tabs {
+ border-bottom: 1px solid #eee;
+}
+
+#tabs li {
+ cursor: pointer;
+ width: 100px;
+ height: 40px;
+ line-height: 40px;
+ text-align: center;
+ font-size: 16px;
+ border-bottom: 2px solid transparent;
+ position: relative;
+ z-index: 1;
+ margin-bottom: -1px;
+ color: #666;
+}
+
+
+#tabs .active {
+ border-bottom-color: #f00;
+ color: #222;
+}
+
+.tab-container .content {
+ display: none;
+}
+
+/* 页面布局 */
+.main {
+ padding: 30px 100px;
+ width: 960px;
+ margin: 0 auto;
+}
+
+.main .logo {
+ color: #333;
+ text-align: left;
+ margin-bottom: 30px;
+ line-height: 1;
+ height: 110px;
+ margin-top: -50px;
+ overflow: hidden;
+ *zoom: 1;
+}
+
+.main .logo a {
+ font-size: 160px;
+ color: #333;
+}
+
+.helps {
+ margin-top: 40px;
+}
+
+.helps pre {
+ padding: 20px;
+ margin: 10px 0;
+ border: solid 1px #e7e1cd;
+ background-color: #fffdef;
+ overflow: auto;
+}
+
+.icon_lists {
+ width: 100% !important;
+ overflow: hidden;
+ *zoom: 1;
+}
+
+.icon_lists li {
+ width: 100px;
+ margin-bottom: 10px;
+ margin-right: 20px;
+ text-align: center;
+ list-style: none !important;
+ cursor: default;
+}
+
+.icon_lists li .code-name {
+ line-height: 1.2;
+}
+
+.icon_lists .icon {
+ display: block;
+ height: 100px;
+ line-height: 100px;
+ font-size: 42px;
+ margin: 10px auto;
+ color: #333;
+ -webkit-transition: font-size 0.25s linear, width 0.25s linear;
+ -moz-transition: font-size 0.25s linear, width 0.25s linear;
+ transition: font-size 0.25s linear, width 0.25s linear;
+}
+
+.icon_lists .icon:hover {
+ font-size: 100px;
+}
+
+.icon_lists .svg-icon {
+ /* 通过设置 font-size 来改变图标大小 */
+ width: 1em;
+ /* 图标和文字相邻时,垂直对齐 */
+ vertical-align: -0.15em;
+ /* 通过设置 color 来改变 SVG 的颜色/fill */
+ fill: currentColor;
+ /* path 和 stroke 溢出 viewBox 部分在 IE 下会显示
+ normalize.css 中也包含这行 */
+ overflow: hidden;
+}
+
+.icon_lists li .name,
+.icon_lists li .code-name {
+ color: #666;
+}
+
+/* markdown 样式 */
+.markdown {
+ color: #666;
+ font-size: 14px;
+ line-height: 1.8;
+}
+
+.highlight {
+ line-height: 1.5;
+}
+
+.markdown img {
+ vertical-align: middle;
+ max-width: 100%;
+}
+
+.markdown h1 {
+ color: #404040;
+ font-weight: 500;
+ line-height: 40px;
+ margin-bottom: 24px;
+}
+
+.markdown h2,
+.markdown h3,
+.markdown h4,
+.markdown h5,
+.markdown h6 {
+ color: #404040;
+ margin: 1.6em 0 0.6em 0;
+ font-weight: 500;
+ clear: both;
+}
+
+.markdown h1 {
+ font-size: 28px;
+}
+
+.markdown h2 {
+ font-size: 22px;
+}
+
+.markdown h3 {
+ font-size: 16px;
+}
+
+.markdown h4 {
+ font-size: 14px;
+}
+
+.markdown h5 {
+ font-size: 12px;
+}
+
+.markdown h6 {
+ font-size: 12px;
+}
+
+.markdown hr {
+ height: 1px;
+ border: 0;
+ background: #e9e9e9;
+ margin: 16px 0;
+ clear: both;
+}
+
+.markdown p {
+ margin: 1em 0;
+}
+
+.markdown>p,
+.markdown>blockquote,
+.markdown>.highlight,
+.markdown>ol,
+.markdown>ul {
+ width: 80%;
+}
+
+.markdown ul>li {
+ list-style: circle;
+}
+
+.markdown>ul li,
+.markdown blockquote ul>li {
+ margin-left: 20px;
+ padding-left: 4px;
+}
+
+.markdown>ul li p,
+.markdown>ol li p {
+ margin: 0.6em 0;
+}
+
+.markdown ol>li {
+ list-style: decimal;
+}
+
+.markdown>ol li,
+.markdown blockquote ol>li {
+ margin-left: 20px;
+ padding-left: 4px;
+}
+
+.markdown code {
+ margin: 0 3px;
+ padding: 0 5px;
+ background: #eee;
+ border-radius: 3px;
+}
+
+.markdown strong,
+.markdown b {
+ font-weight: 600;
+}
+
+.markdown>table {
+ border-collapse: collapse;
+ border-spacing: 0px;
+ empty-cells: show;
+ border: 1px solid #e9e9e9;
+ width: 95%;
+ margin-bottom: 24px;
+}
+
+.markdown>table th {
+ white-space: nowrap;
+ color: #333;
+ font-weight: 600;
+}
+
+.markdown>table th,
+.markdown>table td {
+ border: 1px solid #e9e9e9;
+ padding: 8px 16px;
+ text-align: left;
+}
+
+.markdown>table th {
+ background: #F7F7F7;
+}
+
+.markdown blockquote {
+ font-size: 90%;
+ color: #999;
+ border-left: 4px solid #e9e9e9;
+ padding-left: 0.8em;
+ margin: 1em 0;
+}
+
+.markdown blockquote p {
+ margin: 0;
+}
+
+.markdown .anchor {
+ opacity: 0;
+ transition: opacity 0.3s ease;
+ margin-left: 8px;
+}
+
+.markdown .waiting {
+ color: #ccc;
+}
+
+.markdown h1:hover .anchor,
+.markdown h2:hover .anchor,
+.markdown h3:hover .anchor,
+.markdown h4:hover .anchor,
+.markdown h5:hover .anchor,
+.markdown h6:hover .anchor {
+ opacity: 1;
+ display: inline-block;
+}
+
+.markdown>br,
+.markdown>p>br {
+ clear: both;
+}
+
+
+.hljs {
+ display: block;
+ background: white;
+ padding: 0.5em;
+ color: #333333;
+ overflow-x: auto;
+}
+
+.hljs-comment,
+.hljs-meta {
+ color: #969896;
+}
+
+.hljs-string,
+.hljs-variable,
+.hljs-template-variable,
+.hljs-strong,
+.hljs-emphasis,
+.hljs-quote {
+ color: #df5000;
+}
+
+.hljs-keyword,
+.hljs-selector-tag,
+.hljs-type {
+ color: #a71d5d;
+}
+
+.hljs-literal,
+.hljs-symbol,
+.hljs-bullet,
+.hljs-attribute {
+ color: #0086b3;
+}
+
+.hljs-section,
+.hljs-name {
+ color: #63a35c;
+}
+
+.hljs-tag {
+ color: #333333;
+}
+
+.hljs-title,
+.hljs-attr,
+.hljs-selector-id,
+.hljs-selector-class,
+.hljs-selector-attr,
+.hljs-selector-pseudo {
+ color: #795da3;
+}
+
+.hljs-addition {
+ color: #55a532;
+ background-color: #eaffea;
+}
+
+.hljs-deletion {
+ color: #bd2c00;
+ background-color: #ffecec;
+}
+
+.hljs-link {
+ text-decoration: underline;
+}
+
+/* 代码高亮 */
+/* PrismJS 1.15.0
+https://prismjs.com/download.html#themes=prism&languages=markup+css+clike+javascript */
+/**
+ * prism.js default theme for JavaScript, CSS and HTML
+ * Based on dabblet (http://dabblet.com)
+ * @author Lea Verou
+ */
+code[class*="language-"],
+pre[class*="language-"] {
+ color: black;
+ background: none;
+ text-shadow: 0 1px white;
+ font-family: Consolas, Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;
+ text-align: left;
+ white-space: pre;
+ word-spacing: normal;
+ word-break: normal;
+ word-wrap: normal;
+ line-height: 1.5;
+
+ -moz-tab-size: 4;
+ -o-tab-size: 4;
+ tab-size: 4;
+
+ -webkit-hyphens: none;
+ -moz-hyphens: none;
+ -ms-hyphens: none;
+ hyphens: none;
+}
+
+pre[class*="language-"]::-moz-selection,
+pre[class*="language-"] ::-moz-selection,
+code[class*="language-"]::-moz-selection,
+code[class*="language-"] ::-moz-selection {
+ text-shadow: none;
+ background: #b3d4fc;
+}
+
+pre[class*="language-"]::selection,
+pre[class*="language-"] ::selection,
+code[class*="language-"]::selection,
+code[class*="language-"] ::selection {
+ text-shadow: none;
+ background: #b3d4fc;
+}
+
+@media print {
+
+ code[class*="language-"],
+ pre[class*="language-"] {
+ text-shadow: none;
+ }
+}
+
+/* Code blocks */
+pre[class*="language-"] {
+ padding: 1em;
+ margin: .5em 0;
+ overflow: auto;
+}
+
+:not(pre)>code[class*="language-"],
+pre[class*="language-"] {
+ background: #f5f2f0;
+}
+
+/* Inline code */
+:not(pre)>code[class*="language-"] {
+ padding: .1em;
+ border-radius: .3em;
+ white-space: normal;
+}
+
+.token.comment,
+.token.prolog,
+.token.doctype,
+.token.cdata {
+ color: slategray;
+}
+
+.token.punctuation {
+ color: #999;
+}
+
+.namespace {
+ opacity: .7;
+}
+
+.token.property,
+.token.tag,
+.token.boolean,
+.token.number,
+.token.constant,
+.token.symbol,
+.token.deleted {
+ color: #905;
+}
+
+.token.selector,
+.token.attr-name,
+.token.string,
+.token.char,
+.token.builtin,
+.token.inserted {
+ color: #690;
+}
+
+.token.operator,
+.token.entity,
+.token.url,
+.language-css .token.string,
+.style .token.string {
+ color: #9a6e3a;
+ background: hsla(0, 0%, 100%, .5);
+}
+
+.token.atrule,
+.token.attr-value,
+.token.keyword {
+ color: #07a;
+}
+
+.token.function,
+.token.class-name {
+ color: #DD4A68;
+}
+
+.token.regex,
+.token.important,
+.token.variable {
+ color: #e90;
+}
+
+.token.important,
+.token.bold {
+ font-weight: bold;
+}
+
+.token.italic {
+ font-style: italic;
+}
+
+.token.entity {
+ cursor: help;
+}
diff --git a/frontend/src/styles/deicon/demo_index.html b/frontend/src/styles/deicon/demo_index.html
new file mode 100644
index 0000000000..0185d772da
--- /dev/null
+++ b/frontend/src/styles/deicon/demo_index.html
@@ -0,0 +1,602 @@
+
+
+
+
+ iconfont Demo
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ - Unicode
+ - Font class
+ - Symbol
+
+
+
查看项目
+
+
+
+
+
+
+ -
+
+
矩形
+ 
+
+
+ -
+
+
text
+ 
+
+
+ -
+
+
picture
+ 
+
+
+ -
+
+
输入
+ 
+
+
+ -
+
+
树
+ 
+
+
+ -
+
+
查询搜索
+ 
+
+
+ -
+
+
季度
+ 
+
+
+ -
+
+
数字顺序
+ 
+
+
+ -
+
+
树列表
+ 
+
+
+ -
+
+
日期
+ 
+
+
+ -
+
+
左侧-区间
+ 
+
+
+ -
+
+
列表
+ 
+
+
+ -
+
+
下拉框
+ 
+
+
+ -
+
+
下拉树
+ 
+
+
+ -
+
+
重置
+ 
+
+
+ -
+
+
日
+ 
+
+
+ -
+
+
年
+ 
+
+
+ -
+
+
月
+ 
+
+
+
+
+
Unicode 引用
+
+
+
Unicode 是字体在网页端最原始的应用方式,特点是:
+
+ - 支持按字体的方式去动态调整图标大小,颜色等等。
+ - 默认情况下不支持多色,直接添加多色图标会自动去色。
+
+
+ 注意:新版 iconfont 支持两种方式引用多色图标:SVG symbol 引用方式和彩色字体图标模式。(使用彩色字体图标需要在「编辑项目」中开启「彩色」选项后并重新生成。)
+
+
Unicode 使用步骤如下:
+
第一步:拷贝项目下面生成的 @font-face
+
@font-face {
+ font-family: 'iconfont';
+ src: url('iconfont.woff2?t=1623984849135') format('woff2'),
+ url('iconfont.woff?t=1623984849135') format('woff'),
+ url('iconfont.ttf?t=1623984849135') format('truetype');
+}
+
+
第二步:定义使用 iconfont 的样式
+
.iconfont {
+ font-family: "iconfont" !important;
+ font-size: 16px;
+ font-style: normal;
+ -webkit-font-smoothing: antialiased;
+ -moz-osx-font-smoothing: grayscale;
+}
+
+
第三步:挑选相应图标并获取字体编码,应用于页面
+
+<span class="iconfont">3</span>
+
+
+ "iconfont" 是你项目下的 font-family。可以通过编辑项目查看,默认是 "iconfont"。
+
+
+
+
+
+
+ -
+
+
+ 矩形
+
+ .icon-juxing
+
+
+
+ -
+
+
+ text
+
+ .icon-text
+
+
+
+ -
+
+
+ picture
+
+ .icon-picture
+
+
+
+ -
+
+
+ 输入
+
+ .icon-shuru
+
+
+
+ -
+
+
+ 树
+
+ .icon-tree
+
+
+
+ -
+
+
+ 查询搜索
+
+ .icon-chaxunsousuo
+
+
+
+ -
+
+
+ 季度
+
+ .icon-jidu
+
+
+
+ -
+
+
+ 数字顺序
+
+ .icon-shuzishunxu
+
+
+
+ -
+
+
+ 树列表
+
+ .icon-Group-
+
+
+
+ -
+
+
+ 日期
+
+ .icon-riqi
+
+
+
+ -
+
+
+ 左侧-区间
+
+ .icon-zuoce-qujian
+
+
+
+ -
+
+
+ 列表
+
+ .icon-liebiao
+
+
+
+ -
+
+
+ 下拉框
+
+ .icon-xialakuang
+
+
+
+ -
+
+
+ 下拉树
+
+ .icon-xialashu
+
+
+
+ -
+
+
+ 重置
+
+ .icon-zhongzhi
+
+
+
+ -
+
+
+ 日
+
+ .icon-ri
+
+
+
+ -
+
+
+ 年
+
+ .icon-nian
+
+
+
+ -
+
+
+ 月
+
+ .icon-yue
+
+
+
+
+
+
font-class 引用
+
+
+
font-class 是 Unicode 使用方式的一种变种,主要是解决 Unicode 书写不直观,语意不明确的问题。
+
与 Unicode 使用方式相比,具有如下特点:
+
+ - 相比于 Unicode 语意明确,书写更直观。可以很容易分辨这个 icon 是什么。
+ - 因为使用 class 来定义图标,所以当要替换图标时,只需要修改 class 里面的 Unicode 引用。
+
+
使用步骤如下:
+
第一步:引入项目下面生成的 fontclass 代码:
+
<link rel="stylesheet" href="./iconfont.css">
+
+
第二步:挑选相应图标并获取类名,应用于页面:
+
<span class="iconfont icon-xxx"></span>
+
+
+ "
+ iconfont" 是你项目下的 font-family。可以通过编辑项目查看,默认是 "iconfont"。
+
+
+
+
+
+
+ -
+
+
矩形
+ #icon-juxing
+
+
+ -
+
+
text
+ #icon-text
+
+
+ -
+
+
picture
+ #icon-picture
+
+
+ -
+
+
输入
+ #icon-shuru
+
+
+ -
+
+
树
+ #icon-tree
+
+
+ -
+
+
查询搜索
+ #icon-chaxunsousuo
+
+
+ -
+
+
季度
+ #icon-jidu
+
+
+ -
+
+
数字顺序
+ #icon-shuzishunxu
+
+
+ -
+
+
树列表
+ #icon-Group-
+
+
+ -
+
+
日期
+ #icon-riqi
+
+
+ -
+
+
左侧-区间
+ #icon-zuoce-qujian
+
+
+ -
+
+
列表
+ #icon-liebiao
+
+
+ -
+
+
下拉框
+ #icon-xialakuang
+
+
+ -
+
+
下拉树
+ #icon-xialashu
+
+
+ -
+
+
重置
+ #icon-zhongzhi
+
+
+ -
+
+
日
+ #icon-ri
+
+
+ -
+
+
年
+ #icon-nian
+
+
+ -
+
+
月
+ #icon-yue
+
+
+
+
+
Symbol 引用
+
+
+
这是一种全新的使用方式,应该说这才是未来的主流,也是平台目前推荐的用法。相关介绍可以参考这篇文章
+ 这种用法其实是做了一个 SVG 的集合,与另外两种相比具有如下特点:
+
+ - 支持多色图标了,不再受单色限制。
+ - 通过一些技巧,支持像字体那样,通过
font-size
, color
来调整样式。
+ - 兼容性较差,支持 IE9+,及现代浏览器。
+ - 浏览器渲染 SVG 的性能一般,还不如 png。
+
+
使用步骤如下:
+
第一步:引入项目下面生成的 symbol 代码:
+
<script src="./iconfont.js"></script>
+
+
第二步:加入通用 CSS 代码(引入一次就行):
+
<style>
+.icon {
+ width: 1em;
+ height: 1em;
+ vertical-align: -0.15em;
+ fill: currentColor;
+ overflow: hidden;
+}
+</style>
+
+
第三步:挑选相应图标并获取类名,应用于页面:
+
<svg class="icon" aria-hidden="true">
+ <use xlink:href="#icon-xxx"></use>
+</svg>
+
+
+
+
+
+
+
+
+
diff --git a/frontend/src/styles/deicon/iconfont.css b/frontend/src/styles/deicon/iconfont.css
index 4388484f5b..800a45892e 100644
--- a/frontend/src/styles/deicon/iconfont.css
+++ b/frontend/src/styles/deicon/iconfont.css
@@ -1,10 +1,8 @@
-@font-face {font-family: "iconfont";
- src: url('iconfont.eot?t=1617248036081'); /* IE9 */
- src: url('iconfont.eot?t=1617248036081#iefix') format('embedded-opentype'), /* IE6-IE8 */
- url('data:application/x-font-woff2;charset=utf-8;base64,d09GMgABAAAAAA0gAAsAAAAAGZwAAAzTAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHEIGVgCFHAqjIJt0ATYCJANACyIABCAFhG0HgTgbBhUzg8LGAQQo3pHsvzzghgzIoS9AoljDGidUIyCOK/3MqtqEGFvSIyF89ev07/l6nXk/GOlFXlNFgvkcD/+/37d93r1frY6nWT9NSN5mEK+miYo30UgolEDSRGKR8CgeEutd6SR3DYFdyfbPHDwBlKlBEAK4a3Wt4IlkfAJOlZ6G8MxLUiVFksIP992HsPkFd8RL2zqI/Ymd3EH8NEf/XzatvYRBveuUZ6f/5SkXaMpILyW3QHTDNN3DHKM8TqGDQ/KQdyxQutr/raX2NmEHZHFCKAy5SLUUmNvZe/ePJ8yzwdkrECt8vq9CBYBVT7ZCVbdGVbg+T0LYWl//G5s8WIWOYTTiP4fr3p9A04yp2FxtH1CXOdbAhAt4+qh6yikbokPdVtWsm8VDdfXiVnEeD/zvH7+sRJ1CJXEOtOfU1gmrX8nuJVMar6V1jD2KzkYkTJGJd9r6tyCFeOprTR2fPQFm9MWP734dkCaaapkvdci0Dfz97cv319/flGOqoP1KnZfDjFt2bm+0JVmhpqGjq6e6n/7Dq2hqEVVcayv9VWqgx1dSgvaICAASiClABlEAFCAeADWQMoAGSDtAB6QDoAvSDWU5ZDVAFWQDQIDcRy51vj3IpcL3s6DpEy38tEBfzTqHi1T+U6UMwmVBq2pCaNY31FO9dT2Jj8hw9CEFce0SliMQdoiFGXFciRmj9Oax5nRK0RiKiE9QWLN6Q0NCtOijqDEoS8g1AUThldMo6xno8xkUCkGy2UaGehRuFADz8msUNJIUqibjptNxgdX3og/Dr8Lgx5XRmp+Q55AhEBr1ZuCBHxDw1CCOGSl+10v6dqD9rGe6r3j5MJp9d7K36nbgerKWdpP+q9Q+Mxw3nJ3C5elhsPbU13QXYtcFunJaHsso77UVvl0Vnl6Jp1ZHZ9bg2a80DIQhLynf3rtPRk/Wfz0fH+5VJo+CRx1LuRONzjyJ63qDHkxixEJrzsTaYeBbtAUCvBawk+WwTNbExoWioXLVHv5qxfRk0w109YsmWrWeEiID10VqYNAbmYnUryW1vbVwHY5kct2kTEpqFvroGA1fsBVPakoW6gLVZWY8RAtrfGbOppR/TdGZDIDdcymQR4iy44tkmgp1oq8UgZG5oAJxaToxY3ZTumIqslsi5JHJJXy60Oa5KrUzSpbpCHW4c3qliymUiMKiSoXI87d1sWHLiDE4ehHnShV6VN1WkAl1MW9Em5JaBCG4opsishQmbSJIpcxpMaYRSGA2rt3Yp0vckuYME9EWqlwZLu1OLUueJJthJrcnH1so7K+lOKYsk0URMdKvjcMf1LyTl2L2B2QIgU4qs6U8NXJmH8+N/cN1MTPgudk6uH6MEoWZK2xOI+jNttS0Ais14Q2TE+t50lemeX8lzPtJFxBaf6VD90ZWNt1f1Dz6cEx184PXzNKaz49VO5jCYHpugMgtur3swYVLwWoO1gcLjXnOaalRBYkCsnv5FpX9Nbk1kjbfUdN7adf02N90290dw8yw6OhD++CtrZA7Nj9wvuxVlKrjxRsh7VtprFaW1Hi/GNj+T+2p7e3A9Cq7DXa9ooX3/hwN/hpzHe3sUeFx0/01I8zcwEYpie410kX/tW41+75ptur6qkGnISXKIdmy9lIsrbmEGenXVnXIT0Ow9XOr7s9ebX0ZrXn+xVXf+eihbAIfjTO/TMgBI7EP3tsQoOgHXKEYGQI9HlVTjvcpA/16+P4o4MOPR1XMrlPHqHHlSVTt3rMnme3EPlzCH1VMxj4WGzquXCehQAkdYK8q1zTkdCsyIhKsPTXxEJiOIwNXvUpDuCL5D8vTkM2pia0bllCHn1vHpXDNZPLnotD1rdQXLpNg0p25imzhJywY+Wu2GrvTw2prT1ErOYN1e3adoOjosO8/6q3Ajh7VIx7vDxetHeq/Bqiyl5CQXYb2rZz+V5jn371ohrWUTL6+Wax68Khv4p9nvI9glWf03r6jt7e6phVbjwG5fX805siRGPTwQFrm5IULk5KQ2PjoeqNy7vuIe48+kdfX395A4DYIb/i2teVbz2c4bN056nPtms+e3ck9dHYADc7Fgw2CdFxdkEEwx9hTsy3Bo4tEoscJN+E4Y4Hw/xG62ZwIzmydv9IagS8ejEcQQTpfXRARER/C/e9HEGF4DPGXCMHDiGBOiraKNBe4akCeO0eSgCC8M8kVfkpDpRIoW/9SS9N64Qe7Dbuk3bP/3/Za4MafFNM8oU1mUFC8vsd30sOaTXMlFYLKnBOF9kXW132CUv0yuPfHTz5Y5QD6X5BA3AuuOn9HKsUwC73OgSHaDIGAEZmJHdcn2AH08c/fmluY8He4ZyQA7RrLKtmS6biRLgzncqbPNZqXQeHVifX1KVIJ1al+ZxWmnMHGH4/fQ3fyVo08YdnYGu4UW1RZrtECz05DZfgKvvPU74/yk/brCybQYUROol6iCdRyT0oD1r5YF0t3bi8eSqaL3RgOApgiDxDJ+q1mqvIKLKdefRV6CdancRYTbPZ16+N9Sz920gnlqp4nwF6UwWEFqOyNWQvSaULBAmQx1YnOd+Z2QOgEoRMNUW73icA/IjQYu3UiKzxIWlho2rWDzRJJQZhFZOjIjR2m+AQaFSVx/wWGNgwazFBfluBeNAbM2DYiwQU4oBUIRIdwPo8Bs7QsF/nLic634aFOHmdLI51y2kxaz29uyWDACMOIGEeSJaK++p0oKJ+8xfVn7PuO2ClcnukmtNXdK3zTmurbdoFeEi/g8ng6E3fSd9QxdY76ThzjxE98UzpoM2j4wzbbIcWMymAqYzAnx8V6wtHig5AdaRKydeK80ydwEUvCPmazkpjN+83eTIKlYzgkRwVfmp+/4/fQj0PKSY5GPfcjfuVrAKfAXXX+bFJGcvxHV7Pz+NdpDrB+sQ5oSnwGzuDWcUuk5Vc9Uac0g3KUt8pItjLHcdHsXOw8Fi8kPg6NR89fzUvTPPQe3Peu6nSM8iyPPqg8HfBw3GfWqD7W3hilTtCgIaQku0FdGN3Yfkzd6K+9n3x+pJ+/XrHONaxv4w8o+gOXR1S5MMIvWxVvxjGLX7lsAaVGWt0+jlWSsILsbAahJI4LkgN3sD9KPmqeBkiAa/nv3NxWaQQK58ycmQ3lQMoB58THyIEsI6U3c3NniYBo3QwAxazfS9FQdjYU5YocR7dlMZvZlkvnpCwgAVuHW2r9U/eBzanmw9aWk3kq4WD/M22HxVv9tiuoy+URW3FT4fJE0TVhMO1jmeKZYmZ6UmJMTIib7PzM5ZkrLp4vC7yX+3Sxu1x0NxVqRdHm5U5UUZGrWb3VdStbvcV1i4zYvNno6nLDVe26jHvUywieosDQ3nBAfbEiYMErGB9DXbfo46qP/WURBpbp/YS/P3RehAK17lxnzptIpdmJsPOY3QrmzmRx8k7mipQVLLQeZ62o1u1E9CL5ZTx6AVujqdXXPNCwc7XrOycHvZ+Y3DYxbpe3//rzp962vT3vtukuba3+ev06rbs2j72esrqTys4dvcvYhB5SOW2FVHdQsW76UnS/eC96kLiNgj3P3p+e8hmekagd3Ac2x9JVZxkZVw0G2EfZAwaTF4WPytOcTUUPGd6RZCSkYve6V5wB2EfJCeyCykUFLQ5nPbT4BrDDDhrdFTsm+H/LvmGUTXNtXKMw6omeYTQjd5XxqkLjwnvG42YtiFaNXC4Kc+kvLMotAlV5Z+jxJ5MQXPZI5WWhyKPrQOoFHuv4+ONHj086bj5lS2ZsG4Wy7zkkCsn/q4FH5zY+RfoBIJ2GX7DYm/C3vVyHdQCU/7gEEQJABj/VRT+Dn+N7NgSlfthW8h6vIAW9x7yPZPD6LICvptV/H/OBzsHiyjTc+xuD+YvktU/z0k0ElIZ+5mMA1MFAR/2voRJvyONqx9WnDK+PVKyl9qE8gPcWgKb7APAfo3kIHixTn5DVPzi6IEYFOj2UMJgKOdQGVTA5oyoGP9RkDcI2buGBSoCAMgqAZTCDIQgBtiAYxxGEIMAFESJC7yMqIXiHaAgIQZiL/uNzm4++Ah/mDDrDRnVHhYaSnXnyQzDxG5wEzclqP+kfeMIu1ZR1dmgNCdjGCtPOtTlbZZmiWrGDQQikRqYBTC77nMdZVVndiqWhePZgjgEtq6wbSudYEhkksa/OHnLf/htwRKCx4ZKjkv8Am+DHK41STRDWWiJdcl34yY7TypxaSp7NSKSsOAXB7SfKqJ9rAIys1NfoHc1U/FaWqpXL1+Mp/x40OWv34wIJkqIZ1vuv/N0QoM3hxrvrS72wXGUGeDK9PkiaSCahqwE38lgCJ5x/onSQmzWTjMUV4xafTkIGiq0MqNNtQOhQ08OB+QXtRSd3F0l1RtydekqOM3jBeJUqGi6PAmdn') format('woff2'),
- url('iconfont.woff?t=1617248036081') format('woff'),
- url('iconfont.ttf?t=1617248036081') format('truetype') /* chrome, firefox, opera, Safari, Android, iOS 4.2+ */
- /*url('/@/icons/svg/iconfont.svg?t=1617248036081#iconfont') format('svg'); !* iOS 4.1- *!*/
+@font-face {
+ font-family: "iconfont"; /* Project id 2459092 */
+ src: url('iconfont.woff2?t=1623984849135') format('woff2'),
+ url('iconfont.woff?t=1623984849135') format('woff'),
+ url('iconfont.ttf?t=1623984849135') format('truetype');
}
.iconfont {
@@ -15,6 +13,18 @@
-moz-osx-font-smoothing: grayscale;
}
+.icon-juxing:before {
+ content: "\e648";
+}
+
+.icon-text:before {
+ content: "\e959";
+}
+
+.icon-picture:before {
+ content: "\e643";
+}
+
.icon-shuru:before {
content: "\e6ab";
}
diff --git a/frontend/src/styles/deicon/iconfont.eot b/frontend/src/styles/deicon/iconfont.eot
deleted file mode 100644
index 1f8b8d072d06e0b60477de3ffdc0b751c98c4d9e..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001
literal 6724
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
JaK6Ua{{U<}S402+
diff --git a/frontend/src/styles/deicon/iconfont.js b/frontend/src/styles/deicon/iconfont.js
new file mode 100644
index 0000000000..c5ccd4d7c0
--- /dev/null
+++ b/frontend/src/styles/deicon/iconfont.js
@@ -0,0 +1 @@
+!function(c){var h,a,l,v,t,o,i='',e=(e=document.getElementsByTagName("script"))[e.length-1].getAttribute("data-injectcss");if(e&&!c.__iconfont__svg__cssinject__){c.__iconfont__svg__cssinject__=!0;try{document.write("")}catch(c){console&&console.log(c)}}function z(){t||(t=!0,l())}h=function(){var c,h,a;(a=document.createElement("div")).innerHTML=i,i=null,(h=a.getElementsByTagName("svg")[0])&&(h.setAttribute("aria-hidden","true"),h.style.position="absolute",h.style.width=0,h.style.height=0,h.style.overflow="hidden",c=h,(a=document.body).firstChild?(h=a.firstChild).parentNode.insertBefore(c,h):a.appendChild(c))},document.addEventListener?~["complete","loaded","interactive"].indexOf(document.readyState)?setTimeout(h,0):(a=function(){document.removeEventListener("DOMContentLoaded",a,!1),h()},document.addEventListener("DOMContentLoaded",a,!1)):document.attachEvent&&(l=h,v=c.document,t=!1,(o=function(){try{v.documentElement.doScroll("left")}catch(c){return void setTimeout(o,50)}z()})(),v.onreadystatechange=function(){"complete"==v.readyState&&(v.onreadystatechange=null,z())})}(window);
\ No newline at end of file
diff --git a/frontend/src/styles/deicon/iconfont.json b/frontend/src/styles/deicon/iconfont.json
new file mode 100644
index 0000000000..e9ce984096
--- /dev/null
+++ b/frontend/src/styles/deicon/iconfont.json
@@ -0,0 +1,135 @@
+{
+ "id": "2459092",
+ "name": "DataEase",
+ "font_family": "iconfont",
+ "css_prefix_text": "icon-",
+ "description": "",
+ "glyphs": [
+ {
+ "icon_id": "2404485",
+ "name": "矩形",
+ "font_class": "juxing",
+ "unicode": "e648",
+ "unicode_decimal": 58952
+ },
+ {
+ "icon_id": "924549",
+ "name": "text",
+ "font_class": "text",
+ "unicode": "e959",
+ "unicode_decimal": 59737
+ },
+ {
+ "icon_id": "5994104",
+ "name": "picture",
+ "font_class": "picture",
+ "unicode": "e643",
+ "unicode_decimal": 58947
+ },
+ {
+ "icon_id": "4016505",
+ "name": "输入",
+ "font_class": "shuru",
+ "unicode": "e6ab",
+ "unicode_decimal": 59051
+ },
+ {
+ "icon_id": "16852593",
+ "name": "树",
+ "font_class": "tree",
+ "unicode": "e628",
+ "unicode_decimal": 58920
+ },
+ {
+ "icon_id": "17407748",
+ "name": "查询搜索",
+ "font_class": "chaxunsousuo",
+ "unicode": "e615",
+ "unicode_decimal": 58901
+ },
+ {
+ "icon_id": "1281301",
+ "name": "季度",
+ "font_class": "jidu",
+ "unicode": "e624",
+ "unicode_decimal": 58916
+ },
+ {
+ "icon_id": "4553739",
+ "name": "数字顺序",
+ "font_class": "shuzishunxu",
+ "unicode": "e7de",
+ "unicode_decimal": 59358
+ },
+ {
+ "icon_id": "4685765",
+ "name": "树列表",
+ "font_class": "Group-",
+ "unicode": "e6a6",
+ "unicode_decimal": 59046
+ },
+ {
+ "icon_id": "4770736",
+ "name": "日期",
+ "font_class": "riqi",
+ "unicode": "e639",
+ "unicode_decimal": 58937
+ },
+ {
+ "icon_id": "4878484",
+ "name": "左侧-区间",
+ "font_class": "zuoce-qujian",
+ "unicode": "e6dd",
+ "unicode_decimal": 59101
+ },
+ {
+ "icon_id": "6056156",
+ "name": "列表",
+ "font_class": "liebiao",
+ "unicode": "e66f",
+ "unicode_decimal": 58991
+ },
+ {
+ "icon_id": "10907065",
+ "name": "下拉框",
+ "font_class": "xialakuang",
+ "unicode": "e8ca",
+ "unicode_decimal": 59594
+ },
+ {
+ "icon_id": "10908304",
+ "name": "下拉树",
+ "font_class": "xialashu",
+ "unicode": "e8d0",
+ "unicode_decimal": 59600
+ },
+ {
+ "icon_id": "12978136",
+ "name": "重置",
+ "font_class": "zhongzhi",
+ "unicode": "e611",
+ "unicode_decimal": 58897
+ },
+ {
+ "icon_id": "16197990",
+ "name": "日",
+ "font_class": "ri",
+ "unicode": "e691",
+ "unicode_decimal": 59025
+ },
+ {
+ "icon_id": "16197997",
+ "name": "年",
+ "font_class": "nian",
+ "unicode": "e692",
+ "unicode_decimal": 59026
+ },
+ {
+ "icon_id": "16198002",
+ "name": "月",
+ "font_class": "yue",
+ "unicode": "e695",
+ "unicode_decimal": 59029
+ }
+ ]
+}
diff --git a/frontend/src/styles/deicon/iconfont.ttf b/frontend/src/styles/deicon/iconfont.ttf
index a5fbbee4bbc27afc23ed5aee3c326a8f8c425bb6..ecd3c9b6b1a24724cb6db4850199035667a74da3 100644
GIT binary patch
literal 7556
zcmd^EeRN#Kb)P%$Yv0@VcD3L7T4_I|T}dmiq+RW8>Ksl$dn2^%+gS6ymSN+X<
zD}MmV2~Gd&)6ShcckbMoxpQac-Vr0ln48TpiS@1hd>eKUtH00MbG1-M{hYR5?Ko24$auSdCK-^ii;)J<2TUX){#Bl|`NFR5P3
zSmO}-+qZw};7rNec$~53ucQ7shOtX?3v-OgC@w6>Bq-;60hkBvZnt%N#JOP~-_7x`sI|H%~0_4hfn%5HITdWYo*Ejd#pP(R|k
zXxArqvXf=s+n3w=*do2c=D>EYHn`~U|0+Qg#tExotlJSwKd<%oGf+j(-N>Oa&}H@m
zl-pQL%)0C=hstf`j`Fhdn)3POsq$^*JIY@vKUjYCt=CRHb?Vu-FJFL;Kg4zGM{z;w
zul@+Ve(*2F&i!LpW0h%`k71A8WOdBP{7lDa-B=%sd4yGvSf&5(pJ^-LR80+ju})4B
z`=lIllCbA;o0FhdR_<_;u$b~PCke|auW^#FqVoAp5|&e*auP#t}r3SEZmLE1y=m`kb~~d)Jk7eL;8WM+|PviTPn0e2zcOnpl=CXKUFeHp;Gny(A0$
zse~G(WI_#w2PhN_=ZY&SpDXsKlw7gUSFq6x37%lMbh;#%1(T?0A;l3Q8W%KMT*#3p
zg!QMic3)C(gnYqpJ}#O`6FW`6wNtk&eW&F&1yX5one8sO+qF!0o44$6nWjsCZ!cox
zrcao4CVoMexpA@jTh;9(s4n^jNc`f{B1c`8mMY{sf92(4?!D?
zlSEA_Da8}1{vztbK~+hlpp0TJ3{9$_pD9R*6u41?wrV~pnn1f~B3)Y9oZXnkkDsvf
zN=I8R*Tzo>I9J^qj6{NT0KspkkKMvUW+kyJ}RDFH@W)uSg%$<>uwPi{V=GrQo
z7o{yQ(K;Q;M1oyH=sBP|SL-Ec_h>URv40l6Fa1bb4ZXCmRcr&hjE%se;t7w?MT^kN
zpwLg2s1O*WR+2EY_Mn=K+a=gae-EWpFQo;*{DqoAQp!WYRtgVNe_Dbl2!a?0(S%xT
zrA$;h8ncb~@t5p;{>{HJqUOW@_<*lo>ZOSvn&%pZLywAA;FdLMtu
zSKq6+U9t}~^81OU@%Yj;%i{56@$}NA7nVxWP}7p8%31*Y_~QWc|NMIt^GN2y)gRaU
z{q;0#N#<>`?v{^+l=}2TA*G?pnZLf?UwJ_$mnqlTkZ0q|&J%J0UM^iIWZSwrAw4Z^
zz^M>o^{kn-GI%GH*5aoPW)&3+K1x%BA{uGwl2pi-uq&e!_rUms&~@h-1m;g248q=
z_u%dPkvp$;8x>}_(MYH7RqweJ?Wzy_R)Po6ZvKr!U2fw+{tt7RxlHVZ!9UNyEfV(s
zj&zbQ;Dm}`2jtlrHq3S~)_#_4pJV5zO*xSYV9AA@3v(7`59_eYVyQ)0v=jBetV~Z-
z-}QzlF76Pz#phSX|oOj)>Y-YaJY`t-OjRwBX1Q!m96tyz52HdT)r9h3nP`HN@iajtVyPv5;GTd&yi$$?e;bsCyI`bP&=
z=;vR1^ycD{obVpSJu$}LVi{JzDYuR7W%reQa-E&
zqqs35;a2i#*vWBBF_jL~&iaC{JznSsA(6rDqN$kRN{VYiRa3F@Nz6SYiTy5`C*wKn
zf>ji1hk9WATB%q_TpC00TVY;1Q$>X)a}8J$x;s`L%|3-Dixqr
zGz62E`oOCR#t=H~Pxpz@g-haQ5Y$f!SPNeKE
zdpLGG%wdqy*x+9xZUtM1NRxDnZXnArX|+pKfxx#S91CN1YjiOX#!uUu=SQ)Wv;f`~8i3?%dp99V`HO>}00
zhGtw@GJ82sG&bpNow}-XeMwBQIH{_|<7U0j+~y6nXsta>NurK$kDexoart#c?zeh~
zk_~y1&ER^EkI3b9D-!8gU0pW86<;SQisdoe0_eJMb2pLO!v`=69`g8!{GK3r%!27b
zTqR35wl%dY*|$je_zKDVcKVT8j;~9`_4Y?rJQ||pN&%?ABu#M*pdColp2g^sX~7d
zUQf`=^RQ;@tz;ry2;;6!B}++ZYvny}5Or<=e+gdc=#KBqNp4w{gN?Bztx90+rUuK3
zBf0Bz@>y;lzdjfZg`&agtLNst>8`u}d&yQ+agl1sNnbP^r&!o>w>`W<4|^j~xm(c#
z?p85p_}iHC9Dg0&e*pJx4{oqkY$NWls}MY&dp#w^=8K$h*^=}d*56|V0@j=W+lGc-
z7df32url;7u+~_H|v3AIS1J8~DK3M*^{8IllnD7G9HPPNE
zetchZUo_h1Y4BB!`WhO1r>lJpm7ni2EX&wscs$RK=^l?R!1JOAnq^g2{>p0psJ%Et
z4n!wa&FPWekM=cJ{#0~E@B15i#S->9u)#m-(JvF7UMBkcF!oO$MLa`;iNcq_%Lnnt
zVWS=JBZk=)#Apl=g_g_;2v<>rPwW
zXh&ZkZX+FSTWSiXK4NXy$=a?xn6x-r<))X~&Lp9wTKr<4}Yden~6Y5ogObAV5%$%$uA@-m|DBrC$6H?k|BFBUi}K+P*@#2<(p
zoG3!*AR>Z}wAu%+BZ=S*p_>TYgj*_t(qtS5TR0zq+7`oGge*3W2qcxf@)6VTHy^Ql
zK2y44tf6W3;~g
zei1o==IrZd5nJ@)g+jx*?nQ*rz@jWJ&UIfLJ{pq9eew2mDN>3Eiv1Ug7o?}=C#2iw
zk4qi%FG*X^;QYodsbV2jd7R#?HaUrYN^7eB@#6eT{Nl=+^ybJFsbVozdAd+6P85q+
z6TGb~JZi@{i{l93j%k85Cs`W)q&Rm=Y`__nf)NCgg}jFIHjm&&K@xwI_a#fXX*8r#
zt$vY@@}cC}NKslIO+l(oY3
zVe3jW+z_&6469PlPg%zO(T>+TqbCeY8ZV_DXvw!!dm@>*ueA`PXCj%H|AF=*ul!y0
zZNs|P44e4fyO={_
zB!q3^O=9un&*RNQ)iB`*9*0VJ;7GUU!jTXjKHwzx7ZKDsg)}rncfOpczVVBf@lkuU
zvokvXLjk3w^FP!*1b=D3&MIGqi);GfF?r~E-Q+;IXKyk|w^pa#y{`KFP4unKXk~M>
zt1HS+L_4#lUKvJ1vUL7u$nSCMkLeaS0X=7-SVz3AE!-h9%rVA>*p>F%gcx7`+$o7w
z97ITg&Cp*|@OX9h^m=eOU~cI`+{xjxBNRsvP)o@IbcDa8s-=q&(D^f%&GW69OzZqt
zTf4eipEBWX(&e7&o~H~Cw{+<;JA2U#czE@G%kQQAZJJ3PU%26h`|eA;vhn7*Xf|^G
zm-go!KV8lL;eG%5pz(1F4KO5|BXXdssbZtB--k>>aX
z@m+~MdlENZkV`Zd_wEvQeP+$Y8$<)^#5>?Rb_v!TMjQ$z(n-WP1z$X*YVZdz!{2Q6
zXO_7BI@Ye}1L^Afw1k2`z(?tiX$QNPUw%c9$2(~3^=;U|7d<&l*ZuFT!Ovc^-}{9o
z@B&=J#eX(JHJn33(Hbs+-d4k9;N3M`!TH)>!&T5%)o=sn+qxR=hL<^wQ-ox()w4Y_{%Q?ZSeX4w4OdwmNj2PHn<-Gk-7H1p#+vETk(tq*
zvF(Rr<2$A%cTG*s7>mfJ(XrWyk?F4-Tb$7%
zf7YJqK4D?_PmKN9?>?}Z>B$7!Xl{9i8R5tLuZIWd_8PpN3dJ0gGse5J*jZcor
zGoy!QwEg2dW@e{Hm4mxyr)TAv>CsVh$L^6svy%s>W)IFz$$Q3k&bm=~WE^1f(5$*{
zdTMt65_x+3z_@v2c527yk^{4Q#z!W#iSg0x<0DhXq4AN4k-f7clVdI$MLXA#-BXie
UM|O|%>2Y}y%+ldmc%h8_50EALw*UYD
literal 6556
zcmd^DYmi*Ub?(#mHTTZknYlA_XZ9h@b9ZK?)jl*&!AhgWa!>&A5CR#35De1nL)wQ}
z?Sh1%yrCc}7v&HvLoiMO60r&3*rbR9afl-@ak+q0h_MZ>AXz_PQ0&s^CobJFl;3#d
z!hc2mR@8UynXVmppsRh-bDK|3}crTmlxSC8C6IDqXWE~1sx2qtFN4zyDqTtSIq0u
zzH!&}8A0Zj%ZoCTzKE)a@iw!N6r^z$aOwhU;K$gqQ+InZSe&h6^vUzLT>(y4u-igY
zljAku+BLL^Rsx2Y+Qy^LS0=t4F`d;UXqSxE9zXz=7WgSXr19+Kz1@$-!0^@I34ZG3P=xdzQ
zm~DK%ac|=*jVBr>-#&Hb#WSxgLv!zGzvqMPkn~|6p^vkFNp|*+F(3Mup)!r>%w&G7
zn~IToFcSmz%}8kd|NG~26!1b@4Y2Hn8*-6VF)+o#+l?C;ErZW4BO
z<`p-ImBhE3{gN(|Mx|%vQ6-{$RV}KA)Hk$Cv==;=ct9z7Sbki3NxFzx%w`>I6-zLj
zXq3}ZY1OtO(LyS}naU-LaulPOMp~{Sl?s(iT3t;kE2X9El$Nmz0oqK3Ql=ukbpJy0
zcEjs6_^7U)P+RpqboZ|2($$CgjYGSJ9y}C(!tgeK!mEp|`>DG4t)t2651yH*et|!A
z|4m+_$qX-;boy57;VZ${dhFsf4})*%%|mOw#uNO9i~WoJ$sbgo?mxquaAuHlr7Belaf;b~
zBJgYirQllK<`Z?n`P=IBT&qBRM(;D6D2-eIUB
z54PlBG#aF(pkO`=zrsryApx~z#xuc4B-lI&Hd_9TI3cz56FYE0P;?f&AYjuuWCynf
zqS3(Cpxr#~A{~PEIxk9ZIw!Xew%5t}SOx2xps2Q99inVyeVH&KmBqVpU9fKhABBb+&Vo>58waeRQG4^`eU+pUcPGI
z$e&)Z@U^b!*#4;>esVOtece1I1w$$&xLPNM@m()HeeZqC8#i2W+hXhV^vGs@`mVWy
z-x*$4z3zrnR}SRGO@dDv=Wnwib`HCS?PdGf+f<@!=mr{NtYTF#qF7-Qm0^ETO^w;9
zVhO8Qh{8S#`51;Avotk8sazJnFf2Nj%9krvZ>m(xWi#o1ir5iNMO!JQK>*4O=4(f6
zN$^G!lu4nB&1CmhU@e)nRwg
zb|jY7GUZLAsT%k|6rlB>)neHk8da?bRYxm%PzdRc>>Q?rO1W6dfqIaXN|kS>QZ81=
z4pF%h6YO>@oq>QtsW?P2Q~`iM0BDS=wit-5CI|(@me7@-3t5$X1s!V8lISX5!9e3w
zNDw;0e2`~{I5s%8MU`^c(+?0gBZ*OxG#%T7=uSm5On#oGCIXVgeLY(9QSy7ko>k!h
z-x>%}bAjK*Jst75EPH$&YJHk0p!#T|ZU$0Z@`Sy9I+q`nLNPfR+~g^vD`;LHjC31`p;(Tnw{u9(
zajsj2A{RqziL%iG$-c-1fgq9J)D(rfHOcUypVU@KQB1$DCxBk9fc?33L|#81A)m?Z
zfF)*V1+b^c?<@KIv`&`6E^B?6KGW-o5ru=7S|Kge)v-#qJgQetMiXnZI_HvC|ICQu
z^?Lk6BO^O_ClC8$lt;(18VH9}+xB=RB@r}9TdjGTCzT$Z6DAv>hg!EnYvBOhk*>*d
zM^~pJ>x%3h9t=w4@f3(heCq~U7wMje;Sr
za@piYw@g$%CBB>6E|?$uRUm-l-W
zyC*&n>nD#_<5~~b6oZl;Rl-z_fa>8+Nt%Qe<6&Jgi8>--y{D@`;FZ;2zzq1ghs&Vy
zcXa9skrLE&EfChYBrE=NbiYS2wsblk9+Ph8@HU+@Jjbf+a-2)=Il<39&EJKoRIp=q
z2HUZi$*Pfv9g%n#Mi7s*PJR&L-Cz3Be-G?d6%VO~oUv9%lgX&*
z?fI*XdNdGQEw5Abus0!&G8=us;;?FN*B?(b3bQq!S`>=1drZh;x&B&CBS*OHFW#L##;T*OGNx}ldOiH-aD+N1(
zh2BJNSt;RCw-v`niHI|)Fs+-1DqQ?)(e*B>=PJ=L2_=zG?;@@PeSr*p1
zo&ACEw6H!J94X`}KM7|sE|e`?s;bbauvy`FIlEZ^VR&OMOAd>PO$$nw0XfzcJi=WQ
zq`v{AqrDrv-!?W}w87gtVunH{9rjkXZ7{y=-OxK&-PEc^y1V
z&!M@0M3p3Uq#pvFa|F;~2w3_6oG2gkxs!aYSR^aH;Y9t(IJ6~|z;@L>uz}#oOwFHo&v=3uNXmMEzZe
zwpg9G5Rv_QJaOULu_K%x8AIOPG48Qqe?+{ao7cBN7V_RvdU=KV&QqWBuXpQo2$esF@bS@cB&-3xHKhwVd=QkxAeNS`(2nH
z*_ADqvdwSOTdi(4(ZAD{)_=UV^g7?(e2dXyj3q&Iwfqey-dPz(
z823&$PM-|Rv3}8A&Xfuo&ffw89R*4Js9=PB$cy|QFXXA6zfk}bY7lbj;&3F9?KS`=D)Q5%`hMF
z*`{gx9$6_NHFoV)@Gx`n6DQ(1G7Trbdqz4b)!G)5V8d(^yAbgm^j@%1me9S0gt;SB
z#Tg`KjZLGZaK;EvUlBJ2c1|y%KDfW|Y;m|CpmQrZ=!Wk9QM&c!uYZJ(dgFb4@ulyg
za|}Y-u=HJw#-~doPSJcw_i-O?O041?0t}nnzdw_qds?$UzrFS9UGz8LYVM5p5%tCS
z*TH
z>sdvxflW~?E82UfIRu{vb3`EHmT>72o+CnNr%VaD!Y`w0xpEA6{xU}MY69-^+QiaV
zp&~eJ>h*ZtBuiD163i0^NGl2PgGFkH<@W_uYBtm%p5TM9t{#m2
z{sa5>OV^WEul2{9RUw8yAMf9d344v&Zo~X@@)^w$Lj(^#ga4xd1`$E{^t@Z#p>=np
zwx!0>`}U=eY|E!tmG>jGbK`q={l(ivCtJhLWn0-5SbuTh3-1nbP{~T!ssM`1$vIPuXJ?Y@2ZvWsTkA9RxfMAFZyL|f
z&yOX?=4Pjp=R;t9YHBulU~YC_eb4;h#Qgk$bBBgRM*=^%XLcG-3|lbmI=0+A^1axA
zH?YIVC*k1CvKcn!U(2w7#EuC#dJxLC^`QNw%I1;y`;p)mBi=
zIF#=n&p~z*ddp*!^B7YSX%3R60iE9-VI3ox0-R(AoVIfDJT+-^z?u
z=m(vdP76a3ulM3}-d$YqJ$aBgNhFg(Dj~uooec7lk4zkk0Sc1El!Frsa|`nPT)pnw
zGf_LVFmrHr;o!ooyl-;vf)|aqOd^{(w4iRCn_W0CAkR(SIO)4(VRlb_;Kqf0leHOb
uYO;RAWNp?sG+CRf?O&+PjC&jqe4bk-W@pB4nV95rlkyCRrNaw##{LJTphac?
diff --git a/frontend/src/styles/deicon/iconfont.woff b/frontend/src/styles/deicon/iconfont.woff
index 30a8ef78680a9ee15f2d74393bc589f6f7db3abc..05fa75f07e4afba9c7c3cd0218b2ddfc9fb186a8 100644
GIT binary patch
delta 4377
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
LwLqaI5a|B^(LOK$
delta 3821
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
diff --git a/frontend/src/styles/deicon/iconfont.woff2 b/frontend/src/styles/deicon/iconfont.woff2
index 06b9a5132ba2b349d9515cfe1066dde87e83ea17..ed0a74539da03138ec5f9033808a8a1130f8e67f 100644
GIT binary patch
literal 3832
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
literal 3360
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
qimeQ&(``WLP}9SK`33DoCwCV~bw=EsdP
@@ -24,17 +24,48 @@
+
+
+
+