首次提交

master
谢庆 1 month ago
parent 73b03eaf79
commit e54767253e

@ -0,0 +1,24 @@
/* eslint-env node */
require('@rushstack/eslint-patch/modern-module-resolution');
module.exports = {
root: true,
extends: [
'plugin:vue/vue3-essential',
'eslint:recommended',
'@vue/eslint-config-typescript',
'@vue/eslint-config-prettier'
// '@vue/eslint-config-prettier/skip-formatting'
],
parserOptions: {
ecmaVersion: 'latest'
},
rules: {
'vue/multi-word-component-names': [
'error',
{
ignores: ['index', 'main']
}
]
}
};

26
.gitignore vendored

@ -0,0 +1,26 @@
# Logs
logs
*.log
npm-debug.log*
yarn-debug.log*
yarn-error.log*
pnpm-debug.log*
lerna-debug.log*
node_modules
.DS_Store
dist
dist-ssr
coverage
*.local
/cypress/videos/
/cypress/screenshots/
# Editor directories and files
.idea
*.suo
*.ntvs*
*.njsproj
*.sln
*.sw?

@ -0,0 +1,8 @@
{
"$schema": "https://json.schemastore.org/prettierrc",
"semi": true,
"tabWidth": 2,
"singleQuote": true,
"printWidth": 100,
"trailingComma": "none"
}

@ -0,0 +1,8 @@
{
"recommendations": [
"Vue.volar",
"Vue.vscode-typescript-vue-plugin",
"dbaeumer.vscode-eslint",
"esbenp.prettier-vscode"
]
}

@ -0,0 +1,9 @@
{
"editor.codeActionsOnSave": {
"source.fixAll.eslint": "explicit",
"eslint.autoFixOnSave": "explicit"
},
"files.eol": "\n"
}

@ -0,0 +1,165 @@
GNU LESSER GENERAL PUBLIC LICENSE
Version 3, 29 June 2007
Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
This version of the GNU Lesser General Public License incorporates
the terms and conditions of version 3 of the GNU General Public
License, supplemented by the additional permissions listed below.
0. Additional Definitions.
As used herein, "this License" refers to version 3 of the GNU Lesser
General Public License, and the "GNU GPL" refers to version 3 of the GNU
General Public License.
"The Library" refers to a covered work governed by this License,
other than an Application or a Combined Work as defined below.
An "Application" is any work that makes use of an interface provided
by the Library, but which is not otherwise based on the Library.
Defining a subclass of a class defined by the Library is deemed a mode
of using an interface provided by the Library.
A "Combined Work" is a work produced by combining or linking an
Application with the Library. The particular version of the Library
with which the Combined Work was made is also called the "Linked
Version".
The "Minimal Corresponding Source" for a Combined Work means the
Corresponding Source for the Combined Work, excluding any source code
for portions of the Combined Work that, considered in isolation, are
based on the Application, and not on the Linked Version.
The "Corresponding Application Code" for a Combined Work means the
object code and/or source code for the Application, including any data
and utility programs needed for reproducing the Combined Work from the
Application, but excluding the System Libraries of the Combined Work.
1. Exception to Section 3 of the GNU GPL.
You may convey a covered work under sections 3 and 4 of this License
without being bound by section 3 of the GNU GPL.
2. Conveying Modified Versions.
If you modify a copy of the Library, and, in your modifications, a
facility refers to a function or data to be supplied by an Application
that uses the facility (other than as an argument passed when the
facility is invoked), then you may convey a copy of the modified
version:
a) under this License, provided that you make a good faith effort to
ensure that, in the event an Application does not supply the
function or data, the facility still operates, and performs
whatever part of its purpose remains meaningful, or
b) under the GNU GPL, with none of the additional permissions of
this License applicable to that copy.
3. Object Code Incorporating Material from Library Header Files.
The object code form of an Application may incorporate material from
a header file that is part of the Library. You may convey such object
code under terms of your choice, provided that, if the incorporated
material is not limited to numerical parameters, data structure
layouts and accessors, or small macros, inline functions and templates
(ten or fewer lines in length), you do both of the following:
a) Give prominent notice with each copy of the object code that the
Library is used in it and that the Library and its use are
covered by this License.
b) Accompany the object code with a copy of the GNU GPL and this license
document.
4. Combined Works.
You may convey a Combined Work under terms of your choice that,
taken together, effectively do not restrict modification of the
portions of the Library contained in the Combined Work and reverse
engineering for debugging such modifications, if you also do each of
the following:
a) Give prominent notice with each copy of the Combined Work that
the Library is used in it and that the Library and its use are
covered by this License.
b) Accompany the Combined Work with a copy of the GNU GPL and this license
document.
c) For a Combined Work that displays copyright notices during
execution, include the copyright notice for the Library among
these notices, as well as a reference directing the user to the
copies of the GNU GPL and this license document.
d) Do one of the following:
0) Convey the Minimal Corresponding Source under the terms of this
License, and the Corresponding Application Code in a form
suitable for, and under terms that permit, the user to
recombine or relink the Application with a modified version of
the Linked Version to produce a modified Combined Work, in the
manner specified by section 6 of the GNU GPL for conveying
Corresponding Source.
1) Use a suitable shared library mechanism for linking with the
Library. A suitable mechanism is one that (a) uses at run time
a copy of the Library already present on the user's computer
system, and (b) will operate properly with a modified version
of the Library that is interface-compatible with the Linked
Version.
e) Provide Installation Information, but only if you would otherwise
be required to provide such information under section 6 of the
GNU GPL, and only to the extent that such information is
necessary to install and execute a modified version of the
Combined Work produced by recombining or relinking the
Application with a modified version of the Linked Version. (If
you use option 4d0, the Installation Information must accompany
the Minimal Corresponding Source and Corresponding Application
Code. If you use option 4d1, you must provide the Installation
Information in the manner specified by section 6 of the GNU GPL
for conveying Corresponding Source.)
5. Combined Libraries.
You may place library facilities that are a work based on the
Library side by side in a single library together with other library
facilities that are not Applications and are not covered by this
License, and convey such a combined library under terms of your
choice, if you do both of the following:
a) Accompany the combined library with a copy of the same work based
on the Library, uncombined with any other library facilities,
conveyed under the terms of this License.
b) Give prominent notice with the combined library that part of it
is a work based on the Library, and explaining where to find the
accompanying uncombined form of the same work.
6. Revised Versions of the GNU Lesser General Public License.
The Free Software Foundation may publish revised and/or new versions
of the GNU Lesser General Public License from time to time. Such new
versions will be similar in spirit to the present version, but may
differ in detail to address new problems or concerns.
Each version is given a distinguishing version number. If the
Library as you received it specifies that a certain numbered version
of the GNU Lesser General Public License "or any later version"
applies to it, you have the option of following the terms and
conditions either of that published version or of any later version
published by the Free Software Foundation. If the Library as you
received it does not specify a version number of the GNU Lesser
General Public License, you may choose any version of the GNU Lesser
General Public License ever published by the Free Software Foundation.
If the Library as you received it specifies that a proxy can decide
whether future versions of the GNU Lesser General Public License shall
apply, that proxy's public statement of acceptance of any version is
permanent authorization for you to choose that version for the
Library.

@ -1,5 +1,6 @@
# maotu-webtopo
<<<<<<< HEAD
#### 介绍
{**以下是 Gitee 平台说明,您可以替换此简介**
Gitee 是 OSCHINA 推出的基于 Git 的代码托管平台(同时支持 SVN。专为开发者提供稳定、高效、安全的云端软件开发协作平台
@ -37,3 +38,75 @@ Gitee 是 OSCHINA 推出的基于 Git 的代码托管平台(同时支持 SVN
4. [GVP](https://gitee.com/gvp) 全称是 Gitee 最有价值开源项目,是综合评定出的优秀开源项目
5. Gitee 官方提供的使用手册 [https://gitee.com/help](https://gitee.com/help)
6. Gitee 封面人物是一档用来展示 Gitee 会员风采的栏目 [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/)
=======
基于 vue3 的 web 组态引擎库
探索将已有 svg 文件转为自由缩放图形库的解决方案,也可用作低代码大屏项目开发
## 说明
此开源版本的代码源自于 [maotu 插件版](https://www.npmjs.com/package/maotu) 0.3.1 版本,与插件版的差异请查阅插件版的 readme。
## 使用文档
请参考:[http://mt.yaolm.top](http://mt.yaolm.top)
## 声明
`maotu-webtopo` 使用了 `LGPL-3.0` 协议。这意味着:
* 您可以将 `maotu-webtopo` 作为库链接到您的商业项目,而无需开源您的整个项目。
* 如果您修改了 `maotu-webtopo` 的**核心库**代码,并分发了修改后的版本,您必须按照 LGPL-3.0 协议的要求,开源您所做的修改。
* 如果您仅仅是将`maotu-webtopo` 作为库链接到你的项目,而没有修改或分发它的源代码,那么你的项目无需开源。
详细的 LGPL-3.0 许可证文本请查阅 [https://www.gnu.org/licenses/lgpl-3.0.html](https://www.gnu.org/licenses/lgpl-3.0.html)。
## 如何构建插件并使用
**构建库:**
1. 使用 `pnpm run lib` 命令构建 `maotu-webtopo`,生成 `dist` 文件夹。
**使用库:**
1. **推荐使用 pnpm 安装:**
```bash
pnpm i maotu # 前提是你已经发布到了 npm
```
如果选择手动复制,请继续参考以下步骤
2. 将 `dist` 文件夹中的以下文件复制到你的项目:
* `dist/maotu.es.js`:库的入口文件。
* `dist/style.css`:库的样式文件。
* `dist/src` 库的ts类型定义。
* 将这些文件放到你项目中的合适位置。例如,你可以创建一个 `src/lib/maotu` 目录,并将它们复制到这里。
3. 确保你的项目可以访问到 `style.css` 文件。可以通过在入口文件或组件中引入的方式来实现。
**在项目中使用示例:**
```vue
<script setup lang="ts">
import { MtEdit } from "@/lib/maotu/maotu.es" // 替换为你的实际路径
import "@/lib/maotu/style.css" // 替换为你的实际路径
</script>
<template>
<div class="w-1/1 h-100vh">
<mt-edit ref="MtEditRef" />
</div>
</template>
<style scoped></style>
```
## 鸣谢
maotu的部分逻辑实现参考了以下大佬的文章
[幽月之格-可拖拽、缩放、旋转组件实现细节](https://juejin.cn/user/3597257779449165/posts)
[woai3c-一个低代码(可视化拖拽)教学项目](https://github.com/woai3c/visual-drag-demo)
>>>>>>> 6a5e8b1 (首次提交)

8
env.d.ts vendored

@ -0,0 +1,8 @@
/// <reference types="vite/client" />
declare module '*.vue' {
import type { DefineComponent } from 'vue';
const vueComponent: DefineComponent<{}, {}, any>;
export default vueComponent;
}

10
global.d.ts vendored

@ -0,0 +1,10 @@
declare global {
interface Window {
$svgEventCallBack: (type: string, svg_item_id: string, ...args: any[]) => void;
$setItemAttrByID: (id: string, key: string, val: any) => Promise<unknown>;
$getItemAttrByID: (id: string, key: string, val: any) => any;
$previewCompareVal: (val1: any, operator: '>' | '<' | '=' | '!=', val2: any) => boolean;
globalData: Map<string, import('@/components/mt-edit/store/types').DataItem>;
}
}
export {};

@ -0,0 +1,13 @@
<!DOCTYPE html>
<html lang="en" class="dark">
<head>
<meta charset="UTF-8">
<link rel="icon" href="/favicon.svg" type="image/svg+xml" />
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>MaoTu</title>
</head>
<body>
<div id="app"></div>
<script type="module" src="/src/main.ts"></script>
</body>
</html>

12468
package-lock.json generated

File diff suppressed because it is too large Load Diff

@ -0,0 +1,79 @@
{
"name": "maotu",
"version": "0.3.1",
"private": false,
"scripts": {
"dev": "pnpm run format && vite",
"build": "run-p type-check \"build-only {@}\" --",
"preview": "vite preview",
"test:unit": "vitest",
"build-only": "vite build",
"type-check": "vue-tsc --noEmit -p tsconfig.vitest.json --composite false",
"lint": "eslint . --ext .vue,.js,.jsx,.cjs,.mjs,.ts,.tsx,.cts,.mts --fix --ignore-path .gitignore",
"format": "prettier --write src/",
"lib": "vite build --mode lib",
"npm": "vite build --mode npm"
},
"files": [
"dist"
],
"main": "./dist/maotu.umd.js",
"module": "./dist/maotu.es.js",
"exports": {
".": {
"import": "./dist/maotu.es.js",
"require": "./dist/maotu.umd.js",
"types": "./dist/src/export.d.ts"
},
"./*": "./*"
},
"typings": "dist/export.d.ts",
"dependencies": {
"@tweenjs/tween.js": "^25.0.0",
"@vueuse/core": "^10.6.1",
"ace-builds": "^1.32.0",
"animate.css": "^4.1.1",
"ant-design-vue": "^4.2.6",
"axios": "^1.13.2",
"canvg": "^4.0.1",
"dat.gui": "^0.7.9",
"echarts": "^5.4.3",
"element-plus": "^2.13.1",
"gsap": "^3.14.2",
"html2canvas": "^1.4.1",
"less": "^4.2.0",
"mitt": "^3.0.1",
"pinia": "^3.0.4",
"stats.js": "^0.17.0",
"three": "^0.182.0",
"vue": "^3.3.4",
"vue-echarts": "^6.6.5",
"vue-router": "^4.2.5",
"vue3-ace-editor": "^2.2.4"
},
"devDependencies": {
"@rushstack/eslint-patch": "^1.3.3",
"@tsconfig/node18": "^18.2.2",
"@types/jsdom": "^21.1.3",
"@types/node": "^18.18.5",
"@vitejs/plugin-vue": "^4.4.0",
"@vue/eslint-config-prettier": "^8.0.0",
"@vue/eslint-config-typescript": "^12.0.0",
"@vue/test-utils": "^2.4.1",
"@vue/tsconfig": "^0.4.0",
"eslint": "^8.49.0",
"eslint-import-resolver-alias": "^1.1.2",
"eslint-plugin-vue": "^9.17.0",
"jsdom": "^22.1.0",
"npm-run-all2": "^6.1.1",
"prettier": "^3.0.3",
"sass": "^1.97.3",
"typescript": "~5.2.0",
"unocss": "^0.57.4",
"vite": "^4.4.11",
"vite-plugin-dts": "^3.6.0",
"vite-plugin-svg-icons": "^2.0.1",
"vitest": "^0.34.6",
"vue-tsc": "^1.8.19"
}
}

File diff suppressed because it is too large Load Diff

@ -0,0 +1,140 @@
{
"canvasCfg": {
"width": 1920,
"height": 1080,
"scale": 1,
"color": "",
"img": "",
"guide": true,
"adsorp": true,
"adsorp_diff": 5,
"transform_origin": {
"x": 0,
"y": 0
},
"drag_offset": {
"x": 0,
"y": 0
}
},
"gridCfg": {
"enabled": true,
"align": true,
"size": 10
},
"json": [
{
"id": "vue-my-regulator-iwEp1KifC7",
"title": "vue谣调",
"type": "vue",
"binfo": {
"left": 129.98797607421875,
"top": 70,
"width": 50,
"height": 50,
"angle": 0
},
"resize": true,
"rotate": true,
"lock": false,
"active": false,
"hide": false,
"props": {
"moduleType": "遥测",
"moduleId": ""
},
"tag": "vue-my-regulator",
"common_animations": {
"val": "",
"delay": "delay-0s",
"speed": "slow",
"repeat": "infinite"
},
"events": []
},
{
"id": "vue-my-switch-info-XZmvJDTfd8",
"title": "vue遥控",
"type": "vue",
"binfo": {
"left": 240,
"top": 70,
"width": 50,
"height": 50,
"angle": 0
},
"resize": true,
"rotate": true,
"lock": false,
"active": false,
"hide": false,
"props": {
"moduleType": "遥控",
"moduleId": ""
},
"tag": "vue-my-switch-info",
"common_animations": {
"val": "",
"delay": "delay-0s",
"speed": "slow",
"repeat": "infinite"
},
"events": []
},
{
"id": "vue-my-num-info-W1j7n1WBMs",
"title": "vue谣测",
"type": "vue",
"binfo": {
"left": 180,
"top": 70,
"width": 50,
"height": 50,
"angle": 0
},
"resize": true,
"rotate": true,
"lock": false,
"active": false,
"hide": false,
"props": {
"moduleType": "遥测",
"moduleId": ""
},
"tag": "vue-my-num-info",
"common_animations": {
"val": "",
"delay": "delay-0s",
"speed": "slow",
"repeat": "infinite"
},
"events": []
},
{
"id": "vue-my-signal-info-VFdTsqHrqK",
"title": "vue遥信01",
"type": "vue",
"binfo": {
"left": 70,
"top": 140,
"width": 430,
"height": 210,
"angle": 0
},
"resize": true,
"rotate": true,
"lock": false,
"active": false,
"hide": false,
"props": {},
"tag": "vue-my-signal-info",
"common_animations": {
"val": "",
"delay": "delay-0s",
"speed": "slow",
"repeat": "infinite"
},
"events": []
}
]
}

@ -0,0 +1,139 @@
{
"canvasCfg": {
"width": 1920,
"height": 1080,
"scale": 1,
"color": "",
"img": "",
"guide": true,
"adsorp": true,
"adsorp_diff": 5,
"transform_origin": {
"x": 0,
"y": 0
},
"drag_offset": {
"x": 0,
"y": 0
}
},
"gridCfg": {
"enabled": true,
"align": true,
"size": 10
},
"json": [
{
"id": "vue-my-regulator-iwEp1KifC7",
"title": "vue谣调",
"type": "vue",
"binfo": {
"left": 129.98797607421875,
"top": 70,
"width": 50,
"height": 50,
"angle": 0
},
"resize": true,
"rotate": true,
"lock": false,
"active": false,
"hide": false,
"props": {
"moduleType": "遥测",
"moduleId": ""
},
"tag": "vue-my-regulator",
"common_animations": {
"val": "",
"delay": "delay-0s",
"speed": "slow",
"repeat": "infinite"
},
"events": []
},
{
"id": "vue-my-num-info-W1j7n1WBMs",
"title": "vue谣测",
"type": "vue",
"binfo": {
"left": 330,
"top": 380,
"width": 50,
"height": 50,
"angle": 0
},
"resize": true,
"rotate": true,
"lock": false,
"active": false,
"hide": false,
"props": {
"moduleType": "遥测",
"moduleId": ""
},
"tag": "vue-my-num-info",
"common_animations": {
"val": "",
"delay": "delay-0s",
"speed": "slow",
"repeat": "infinite"
},
"events": []
},
{
"id": "vue-my-signal-info-VFdTsqHrqK",
"title": "vue遥信01",
"type": "vue",
"binfo": {
"left": 70,
"top": 140,
"width": 430,
"height": 210,
"angle": 0
},
"resize": true,
"rotate": true,
"lock": false,
"active": false,
"hide": false,
"props": {},
"tag": "vue-my-signal-info",
"common_animations": {
"val": "",
"delay": "delay-0s",
"speed": "slow",
"repeat": "infinite"
},
"events": []
},
{
"id": "vue-my-img-DLxtEt9t9A",
"title": "vue图形组件",
"type": "vue",
"binfo": {
"left": 64.97598266601562,
"top": 370,
"width": 130,
"height": 100,
"angle": 0
},
"resize": true,
"rotate": true,
"lock": false,
"active": false,
"hide": false,
"props": {
"maxWidth": ""
},
"tag": "vue-my-img",
"common_animations": {
"val": "",
"delay": "delay-0s",
"speed": "slow",
"repeat": "infinite"
},
"events": []
}
]
}

@ -0,0 +1,147 @@
{
"canvasCfg": {
"width": 1920,
"height": 1080,
"scale": 1,
"color": "",
"img": "",
"guide": true,
"adsorp": true,
"adsorp_diff": 5,
"transform_origin": {
"x": 0,
"y": 0
},
"drag_offset": {
"x": 0,
"y": 0
}
},
"gridCfg": {
"enabled": true,
"align": true,
"size": 10
},
"json": [
{
"id": "vue-my-signal-info-VFdTsqHrqK",
"title": "vue遥信01",
"type": "vue",
"binfo": {
"left": 50,
"top": 50,
"width": 430,
"height": 210,
"angle": 0
},
"resize": true,
"rotate": true,
"lock": false,
"active": false,
"hide": false,
"props": {},
"tag": "vue-my-signal-info",
"common_animations": {
"val": "",
"delay": "delay-0s",
"speed": "slow",
"repeat": "infinite"
},
"events": []
},
{
"id": "vue-my-run-info-QOvDKecsyZ",
"title": "vue运行信息",
"type": "vue",
"binfo": {
"left": 500,
"top": 50,
"width": 240,
"height": 180,
"angle": 0
},
"resize": true,
"rotate": true,
"lock": false,
"active": false,
"hide": false,
"props": {
"fontFamily": "Segoe UI",
"fontSize": 14,
"testColor": "#000000"
},
"tag": "vue-my-run-info",
"common_animations": {
"val": "",
"delay": "delay-0s",
"speed": "slow",
"repeat": "infinite"
},
"events": []
},
{
"id": "vue-my-multi-type-info-V5rhA1U1PF",
"title": "vue运行状态信息",
"type": "vue",
"binfo": {
"left": 490,
"top": 240,
"width": 270,
"height": 180,
"angle": 0
},
"resize": true,
"rotate": true,
"lock": false,
"active": false,
"hide": false,
"props": {
"headline": "11111",
"fontFamily": "Segoe UI",
"fontSize": 14,
"dataSource": "ultraVires",
"testColor": "#000000"
},
"tag": "vue-my-multi-type-info",
"common_animations": {
"val": "",
"delay": "delay-0s",
"speed": "slow",
"repeat": "infinite"
},
"events": []
},
{
"id": "vue-my-multi-type-info-OMI6pUcsA9",
"title": "vue运行状态信息",
"type": "vue",
"binfo": {
"left": 110,
"top": 270,
"width": 310,
"height": 200,
"angle": 0
},
"resize": true,
"rotate": true,
"lock": false,
"active": false,
"hide": false,
"props": {
"headline": "2222",
"fontFamily": "Segoe UI",
"fontSize": 14,
"dataSource": "ultraVires",
"testColor": "#000000"
},
"tag": "vue-my-multi-type-info",
"common_animations": {
"val": "",
"delay": "delay-0s",
"speed": "slow",
"repeat": "infinite"
},
"events": []
}
]
}

@ -0,0 +1,113 @@
{
"canvasCfg": {
"width": 1920,
"height": 1080,
"scale": 1,
"color": "",
"img": "",
"guide": true,
"adsorp": true,
"adsorp_diff": 5,
"transform_origin": {
"x": 0,
"y": 0
},
"drag_offset": {
"x": 0,
"y": 0
}
},
"gridCfg": {
"enabled": true,
"align": true,
"size": 10
},
"json": [
{
"id": "vue-my-signal-info-VFdTsqHrqK11111",
"title": "vue遥信01",
"type": "vue",
"binfo": {
"left": 50,
"top": 50,
"width": 430,
"height": 210,
"angle": 0
},
"resize": true,
"rotate": true,
"lock": false,
"active": false,
"hide": false,
"props": {},
"tag": "vue-my-signal-info",
"common_animations": {
"val": "",
"delay": "delay-0s",
"speed": "slow",
"repeat": "infinite"
},
"events": []
},
{
"id": "vue-my-run-info-QOvDKecsyZ",
"title": "vue运行信息",
"type": "vue",
"binfo": {
"left": 500,
"top": 50,
"width": 240,
"height": 180,
"angle": 0
},
"resize": true,
"rotate": true,
"lock": false,
"active": false,
"hide": false,
"props": {
"fontFamily": "Segoe UI",
"fontSize": 14,
"testColor": "#000000"
},
"tag": "vue-my-run-info",
"common_animations": {
"val": "",
"delay": "delay-0s",
"speed": "slow",
"repeat": "infinite"
},
"events": []
},
{
"id": "vue-my-tableOnly-a6n14qu2iO",
"title": "单一功能表单",
"type": "vue",
"binfo": {
"left": 40,
"top": 270,
"width": 620,
"height": 250,
"angle": 0
},
"resize": true,
"rotate": true,
"lock": false,
"active": false,
"hide": false,
"props": {
"fontFamily": "黑体",
"fontSize": 12,
"testColor": "#767676"
},
"tag": "vue-my-tableOnly",
"common_animations": {
"val": "",
"delay": "delay-0s",
"speed": "slow",
"repeat": "infinite"
},
"events": []
}
]
}

File diff suppressed because it is too large Load Diff

@ -0,0 +1,19 @@
[
{
"id":"1",
"name":"fireControlAlarmFloor.json"
},
{
"id":"2",
"name":"fireControlAlarmHost.json"
},{
"id":"3",
"name":"fireControlAlarmIndex.json"
},{
"id":"4",
"name":"fireControlIndex.json"
},{
"id":"5",
"name":"homeOverview.json"
}
]

@ -0,0 +1,34 @@
<svg id="组_2" data-name="组 2" xmlns="http://www.w3.org/2000/svg" width="700" height="700" viewBox="0 0 700 700">
<defs>
<style>
.cls-1 {
fill: none;
stroke: #00ccbd;
stroke-width: 20px;
fill-rule: evenodd;
}
.cls-2 {
font-size: 100px;
}
.cls-2, .cls-3 {
fill: #deea2e;
font-weight: 700;
}
.cls-3 {
font-size: 120px;
}
</style>
</defs>
<g id="组_1" data-name="组 1">
<path id="形状_1" data-name="形状 1" class="cls-1" d="M34.518,406.156S47.789,166,187.922,211.451c0,0,55.156,15.864,91.453,45.448,0,0,67.7-42.655,141.6,0"/>
<path id="形状_1_拷贝" data-name="形状 1 拷贝" class="cls-1" d="M665.493,406.156s-13.271-240.373-153.4-194.884c0,0-55.156,15.879-91.452,45.489,0,0-67.7-42.694-141.6,0"/>
<path id="形状_2" data-name="形状 2" class="cls-1" d="M117.921,306.109s9.026-64.564,74.891-32.1"/>
<path id="形状_2_拷贝" data-name="形状 2 拷贝" class="cls-1" d="M581.357,306.589s-9-65.089-74.668-32.357"/>
<text id="ao" class="cls-2" transform="translate(124.132 368.651) scale(0.823)">ao</text>
<text id="tu" class="cls-2" transform="translate(482.948 368.651) scale(0.823)">tu</text>
</g>
<text id="M_A_O_T_U" data-name="M A O T U" class="cls-3" x="45.25" y="537.03">M A O T U</text>
</svg>

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 950 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 194 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 164 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 532 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 43 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 43 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 326 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 240 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 214 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 43 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 62 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 41 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 73 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 671 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 679 B

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

Binary file not shown.

After

Width:  |  Height:  |  Size: 39 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 114 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 107 KiB

File diff suppressed because one or more lines are too long

Binary file not shown.

Binary file not shown.

File diff suppressed because it is too large Load Diff

Binary file not shown.

After

Width:  |  Height:  |  Size: 258 KiB

@ -0,0 +1,48 @@
-----BEGIN CERTIFICATE-----
MIIDOTCCAiGgAwIBAgIUMlpmdzEzz0WD0PUO0QkP8fLZNgkwDQYJKoZIhvcNAQEL
BQAwRTELMAkGA1UEBhMCQVUxEzARBgNVBAgMClNvbWUtU3RhdGUxITAfBgNVBAoM
GEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZDAeFw0yNDA4MzAwODQzMTNaFw0zNDA4
MjgwODQzMTNaMEUxCzAJBgNVBAYTAkFVMRMwEQYDVQQIDApTb21lLVN0YXRlMSEw
HwYDVQQKDBhJbnRlcm5ldCBXaWRnaXRzIFB0eSBMdGQwggEiMA0GCSqGSIb3DQEB
AQUAA4IBDwAwggEKAoIBAQCzSYo9nAVhEGB5eg7qq7Hu0sQ4wAJI9v154Vy3VDzX
OQ/kQIBEslzuITwe/k+SlbN7PL5QwG1ZHT5koMhpgIdwZL09+wajebCExxFbyyWs
5ZkFinMocD64VJXh1gflYAoFH6koYspJ1KaVCnden7Pp07dPAGA/HtYZ/NTfdaSc
zdODDMjwAigxb+MW0x3XNTrFkOXZCQr8xjnToT4vzxmqD6pnzSUOYc6TSlDP9jya
SZYnuoi1/fcPXtRwF59hqK8CqZLNuNuBZFjqs+Xtm8P9V4LvWWou/8rrAhjyPJSA
ExbMG9rwdvzLEfKKtxeAy1edY6FN9BPEU/8ouvciFeIXAgMBAAGjITAfMB0GA1Ud
DgQWBBShVuuuBF2x6n++4kQSQ2G5ShT2EjANBgkqhkiG9w0BAQsFAAOCAQEAJwiY
XmwpOedDYHyffk5ILhxE/aHp1FnCYEbdVzXY7cct9uYGFefCNT8FRTUzG+obPn9N
Cqm5Yw/jcETOe4PIEDP2/mcRnjOKXMJtiPlcKTMtMM2nfo56sfA7WKihwjI/JpX+
Ea4E4b18Z4xyCcvs6+sxcK+1D/8deeS/CJ8MvEokLRGudKG86gNaP4AMF6uHkAYh
bwssuuIehpzwDOd6OwT3+8XlKI30lSN+1JNP2PCz/tvOBVDo81RhacYQA3Xrf30c
E/zqnB3/xFIVvb1Z4UCgYpNGkDCD4tMp7gVrPDn5MvrCPAnoGJ76vblyAo0zNqer
lfI9n4JDwJkxbrgfew==
-----END CERTIFICATE-----
-----BEGIN PRIVATE KEY-----
MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQCzSYo9nAVhEGB5
eg7qq7Hu0sQ4wAJI9v154Vy3VDzXOQ/kQIBEslzuITwe/k+SlbN7PL5QwG1ZHT5k
oMhpgIdwZL09+wajebCExxFbyyWs5ZkFinMocD64VJXh1gflYAoFH6koYspJ1KaV
Cnden7Pp07dPAGA/HtYZ/NTfdaSczdODDMjwAigxb+MW0x3XNTrFkOXZCQr8xjnT
oT4vzxmqD6pnzSUOYc6TSlDP9jyaSZYnuoi1/fcPXtRwF59hqK8CqZLNuNuBZFjq
s+Xtm8P9V4LvWWou/8rrAhjyPJSAExbMG9rwdvzLEfKKtxeAy1edY6FN9BPEU/8o
uvciFeIXAgMBAAECggEADsAuL4N2rdW7GkOAlq4ppYyRuFmT1oz7rdts1WiI2OxI
8m6cHwrNuonheGtUAKtwaONGhT5PwNU3HPBdjNCWVBj1uPO+SBTrAQGf2/2Ky/7X
6CzL7LfPcTsEWeBSJf0Q1fsU383A9vIYAosp5w8crlBM9KMDSC4xT1IN8ZSsRnpF
TfB+tozVJKeIwZzuUT8tA3Sq/m6aYhe986KEfuG3HN7rdrs0Jf7VpdeTlFt46cWS
9hitSodewmtBhFPonq4MBf28kIhKE/ZsI/9LmM6XHEh83DyCsDeLKgkpQ3jC0WVI
LxaxFps4GWY6Jqsz5pF9LfV0v2Cl13mdpK4nloKrAQKBgQDs/i4AT2MJlCBwaWkL
gGqp2vXtu1+8hzT7Uy6VbzfyFFW5oc+Mp8t2KwI55zvIeQVf51oprST6mBDpr0me
m4hllTLknj4pTsnh7Vhus45pMNCI0PS1NKVbg0sIANCdgqg+HafGAgEsfQ7ZaHr8
cHzfre6UQdWlk+ByGMzcQ0tfPwKBgQDBqpO85fXsaEsDVckHymBMbGy0XEGTjcZq
x9UG4bhLWvKEorr9YF5WqoCdjyKniWjUdoSsXbTXidHofnVFBNwrnBkfdGBdS6Xa
xJnGms2Ma0/ZOtCgn3hH1COJ4uRzFtxWkyjeXYslKmNnhkDr4bZcnUph5eFpPukN
hd/ZUcUfKQKBgQC8naOA7a3VzsVukgZfeAnsO28lkM4mHrnFGLPnjMfK6/I6NpUX
zee5mYtBCE7lQ6RKarewmbPnmaVERxThncmVh4QkveidOa6lGCAcot1BzO77JMrN
eSPtzHWn3fYqlfVO0o1XovrKLJHn6CaRyPkpkKVj622dRS8Jv8EzwH85QwKBgH9z
vMqiJFgywrstJ6HC4+Ensdp4pIdw1FXNsTpYLisZbWUwmxLI6wzqJL6MRmgvnBfG
78Vn3e3DO6tgHdkQO71Pe5Ehy5FaiYoRvInhsshojyIM/OPYTxYmXEUQVvwO3W70
Zf8BXONWpBirV+pkntkQgrUuzkuvJTzLD+g7UhkRAoGBANRCYeVuOoinozZUkPL7
BiX06UDPFSB0IXSLvRSmZTMgj4OR0F+/yNzyxQ8SMFJfubFLxnwJtYcK7ibYaIS7
3afQT5IUj4vJ8xwTpm7/QmJlf7iOdd9gyFYvbToR9mZm9RDh/ECZ50g49IHZfAiW
cXI7DAoiCdJEup9jwBGKf8iX
-----END PRIVATE KEY-----

@ -0,0 +1,21 @@
<svg width="557" height="554" xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1">
<g>
<path
d="m279,38.19467a238.80533,238.80533 0 1 1 -238.80533,238.80533a238.80533,238.80533 0 0 1 238.80533,-238.80533m0,-38.528a277.33333,277.33333 0 1 0 277.33333,277.33333a277.33333,277.33333 0 0 0 -277.33333,-277.33333z"
id="circle1"
/>
<path
id="line1"
d="m436.15733,143.928a14.67733,14.67733 0 0 0 -12.8,7.44533a96,96 0 0 1 -137.10933,24.66134a125.09867,125.09867 0 0 0 -188.032,24.14933a14.208,14.208 0 0 0 -1.28,2.13333a5.80267,5.80267 0 0 0 -0.66133,1.408a14.656,14.656 0 0 0 24.14933,15.68a6.272,6.272 0 0 0 1.28,-1.49333a96.832,96.832 0 0 1 13.248,-16.49067a95.76533,95.76533 0 0 1 124.62933,-9.30133a125.07733,125.07733 0 0 0 189.26934,-26.176a5.824,5.824 0 0 0 0.68266,-1.49333a14.63467,14.63467 0 0 0 -13.44,-20.43734l0.064,-0.08533z"
/>
<path
id="line2"
d="m440.15733,239.928a14.67733,14.67733 0 0 0 -12.8,7.44533a96,96 0 0 1 -137.10933,24.66134a125.09867,125.09867 0 0 0 -188.032,24.14933a14.208,14.208 0 0 0 -1.28,2.13333a5.80267,5.80267 0 0 0 -0.66133,1.408a14.656,14.656 0 0 0 24.14933,15.68a6.272,6.272 0 0 0 1.28,-1.49333a96.832,96.832 0 0 1 13.248,-16.49067a95.76533,95.76533 0 0 1 124.62933,-9.30133a125.07733,125.07733 0 0 0 189.26934,-26.176a5.824,5.824 0 0 0 0.68266,-1.49333a14.63467,14.63467 0 0 0 -13.44,-20.43734l0.064,-0.08533z"
/>
<path
id="line3"
d="m444.15733,336.928a14.67733,14.67733 0 0 0 -12.8,7.44533a96,96 0 0 1 -137.10933,24.66134a125.09867,125.09867 0 0 0 -188.032,24.14933a14.208,14.208 0 0 0 -1.28,2.13333a5.80267,5.80267 0 0 0 -0.66133,1.408a14.656,14.656 0 0 0 24.14933,15.68a6.272,6.272 0 0 0 1.28,-1.49333a96.832,96.832 0 0 1 13.248,-16.49067a95.76533,95.76533 0 0 1 124.62933,-9.30133a125.07733,125.07733 0 0 0 189.26934,-26.176a5.824,5.824 0 0 0 0.68266,-1.49333a14.63467,14.63467 0 0 0 -13.44,-20.43734l0.064,-0.08533z"
/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 2.0 KiB

@ -0,0 +1 @@
<svg t="1770361287574" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="3048" width="200" height="200"><path d="M938.666667 553.92V768c0 64.8-52.533333 117.333333-117.333334 117.333333H202.666667c-64.8 0-117.333333-52.533333-117.333334-117.333333V256c0-64.8 52.533333-117.333333 117.333334-117.333333h618.666666c64.8 0 117.333333 52.533333 117.333334 117.333333v297.92z m-64-74.624V256a53.333333 53.333333 0 0 0-53.333334-53.333333H202.666667a53.333333 53.333333 0 0 0-53.333334 53.333333v344.48A290.090667 290.090667 0 0 1 192 597.333333a286.88 286.88 0 0 1 183.296 65.845334C427.029333 528.384 556.906667 437.333333 704 437.333333c65.706667 0 126.997333 16.778667 170.666667 41.962667z m0 82.24c-5.333333-8.32-21.130667-21.653333-43.648-32.917333C796.768 511.488 753.045333 501.333333 704 501.333333c-121.770667 0-229.130667 76.266667-270.432 188.693334-2.730667 7.445333-7.402667 20.32-13.994667 38.581333-7.68 21.301333-34.453333 28.106667-51.370666 13.056-16.437333-14.634667-28.554667-25.066667-36.138667-31.146667A222.890667 222.890667 0 0 0 192 661.333333c-14.464 0-28.725333 1.365333-42.666667 4.053334V768a53.333333 53.333333 0 0 0 53.333334 53.333333h618.666666a53.333333 53.333333 0 0 0 53.333334-53.333333V561.525333zM320 480a96 96 0 1 1 0-192 96 96 0 0 1 0 192z m0-64a32 32 0 1 0 0-64 32 32 0 0 0 0 64z" fill="#000000" p-id="3049"></path></svg>

After

Width:  |  Height:  |  Size: 1.4 KiB

@ -0,0 +1 @@
<svg t="1770362060130" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="12390" width="200" height="200"><path d="M602.144 64a16 16 0 0 1 10.688 4.096l277.856 249.28a16 16 0 0 1 5.312 11.904V864a96 96 0 0 1-96 96H224a96 96 0 0 1-96-96V160a96 96 0 0 1 96-96h378.144zM576 128H224a32 32 0 0 0-32 32v704a32 32 0 0 0 32 32h576a32 32 0 0 0 32-32V385.184h-160a96 96 0 0 1-96-96L575.968 128zM704 608a32 32 0 0 1 0 64H320a32 32 0 0 1 0-64z m-149.344-192a32 32 0 1 1 0 64H320a32 32 0 0 1 0-64zM640 178.432L640 289.216a32 32 0 0 0 32 32l127.104-0.032-159.136-142.752z" p-id="12391"></path></svg>

After

Width:  |  Height:  |  Size: 626 B

@ -0,0 +1 @@
<svg t="1770361409968" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5074" width="200" height="200"><path d="M144.6 138.6h437l182 176.5v118.3h70V314.1c0-18.2-7.5-35.8-20.5-48.5L629.7 87.7c-12.7-12.3-29.4-19-47-19H142.2c-37.2 0-67.5 30.3-67.5 67.5V881c0 37.2 30.3 67.5 67.5 67.5h320.5v-70h-318V138.6z" p-id="5075"></path><path d="M937.2 880.9L855.3 799c53.6-77 46-183.9-22.6-252.5-37.3-37.3-86.9-57.9-139.7-57.9-52.8 0-102.4 20.6-139.7 57.9-37.3 37.3-57.9 86.9-57.9 139.7 0 52.8 20.6 102.4 57.9 139.7 38.5 38.5 89.1 57.8 139.7 57.8 39.5 0 79-11.7 112.8-35.2l81.9 81.9c13.7 13.7 35.8 13.7 49.5 0 13.7-13.6 13.7-35.8 0-49.5zM602.8 776.5c-24.1-24.1-37.4-56.1-37.4-90.2s13.3-66.1 37.4-90.2c24.1-24.1 56.1-37.4 90.2-37.4s66.1 13.3 90.2 37.4c49.7 49.7 49.7 130.7 0 180.4-49.7 49.7-130.6 49.7-180.4 0zM267 265.3c-19.3 0-35 15.7-35 35s15.7 35 35 35h290.8c19.3 0 35-15.7 35-35s-15.7-35-35-35H267zM441.6 458.8H267c-19.3 0-35 15.7-35 35s15.7 35 35 35h174.6c19.3 0 35-15.7 35-35s-15.7-35-35-35zM267 722.4h57c19.3 0 35-15.7 35-35s-15.7-35-35-35h-57c-19.3 0-35 15.7-35 35s15.6 35 35 35z" p-id="5076"></path></svg>

After

Width:  |  Height:  |  Size: 1.1 KiB

@ -0,0 +1 @@
<svg t="1770361367217" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="4051" width="200" height="200"><path d="M346.396444 310.840889c18.375111 0 33.223111-14.848 33.223111-33.223111L379.619556 144.611556c0-18.375111-14.904889-33.223111-33.223111-33.223111-18.375111 0-33.223111 14.848-33.223111 33.223111l0 132.949333C313.173333 295.992889 328.021333 310.840889 346.396444 310.840889zM512.568889 310.840889c18.375111 0 33.223111-14.848 33.223111-33.223111L545.792 144.611556c0-18.375111-14.848-33.223111-33.223111-33.223111-18.375111 0-33.223111 14.904889-33.223111 33.223111l0 132.949333C479.345778 295.992889 494.250667 310.840889 512.568889 310.840889zM412.899556 175.104l33.223111 0 0 66.446222-33.223111 0 0-66.446222ZM579.128889 175.104l33.223111 0 0 66.446222-33.223111 0 0-66.446222ZM911.36 811.121778l0-539.875556c0.113778-55.125333-44.657778-99.726222-99.669333-99.726222L745.244444 171.52l0 66.446222 66.446222 0c18.318222 0 33.336889 14.904889 33.336889 33.223111l0 539.932444c0 18.318222-15.018667 33.28-33.336889 33.28L213.447111 844.401778c-18.261333 0-33.223111-14.961778-33.223111-33.28L179.712 811.121778l0.512-539.875556c0-18.318222 14.904889-33.223111 33.223111-33.223111L279.893333 238.023111 279.893333 171.52 213.447111 171.52C158.435556 171.52 113.777778 216.120889 113.777778 271.246222l0 539.875556c0 55.239111 44.657778 99.726222 99.669333 99.726222l598.243556 0c53.418667 0 96.654222-41.927111 99.271111-94.776889 0.056889-0.284444 0.398222-0.625778 0.398222-0.910222l0-2.958222c0-0.398222 0.113778-0.739556 0.113778-1.137778L911.36 811.064889zM678.798222 310.840889c18.318222 0 33.223111-14.848 33.223111-33.223111L712.021333 144.611556c0-18.375111-14.904889-33.223111-33.223111-33.223111s-33.223111 14.848-33.223111 33.223111l0 132.949333C645.575111 295.992889 660.309333 310.840889 678.798222 310.840889zM312.604444 444.302222l398.848 0c18.204444 0 33.223111-14.904889 33.223111-33.223111 0-18.375111-15.018667-33.223111-33.223111-33.223111L312.604444 377.856c-18.375111 0-33.223111 14.848-33.223111 33.223111C279.381333 429.397333 294.229333 444.302222 312.604444 444.302222zM711.452444 541.866667 312.604444 541.866667c-18.375111 0-33.223111 14.904889-33.223111 33.223111s14.848 33.223111 33.223111 33.223111l398.848 0c18.204444 0 33.223111-14.904889 33.223111-33.223111S729.656889 541.866667 711.452444 541.866667zM711.452444 712.305778 312.604444 712.305778c-18.375111 0-33.223111 14.904889-33.223111 33.109333 0 18.375111 14.848 33.336889 33.223111 33.336889l398.848 0c18.204444 0 33.223111-14.961778 33.223111-33.336889C744.675556 727.153778 729.656889 712.305778 711.452444 712.305778z" fill="#272636" p-id="4052"></path></svg>

After

Width:  |  Height:  |  Size: 2.6 KiB

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20"><path fill="currentColor" d="M2 8a3 3 0 0 1 3-3h10a3 3 0 0 1 3 3v3a3 3 0 0 1-3 3H5a3 3 0 0 1-3-3V8Zm7 1.5a.5.5 0 0 0 .5.5H14a.5.5 0 0 0 0-1H9.5a.5.5 0 0 0-.5.5Zm-1 0a1.5 1.5 0 1 0-3 0a1.5 1.5 0 0 0 3 0Z"/></svg>

After

Width:  |  Height:  |  Size: 294 B

@ -0,0 +1,5 @@
<svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 15 15">
<path fill="currentColor" fill-rule="evenodd"
d="M6.5 1a.5.5 0 0 0 0 1c.627 0 .957.2 1.156.478C7.878 2.79 8 3.288 8 4v7c0 .712-.122 1.21-.344 1.522c-.199.278-.53.478-1.156.478a.5.5 0 0 0 0 1c.873 0 1.543-.3 1.97-.897l.03-.044l.03.044c.427.597 1.097.897 1.97.897a.5.5 0 0 0 0-1c-.627 0-.957-.2-1.156-.478C9.122 12.21 9 11.712 9 11V4c0-.712.122-1.21.344-1.522C9.543 2.2 9.874 2 10.5 2a.5.5 0 0 0 0-1c-.873 0-1.543.3-1.97.897l-.03.044l-.03-.044C8.042 1.3 7.372 1 6.5 1M14 5h-3V4h3a1 1 0 0 1 1 1v5a1 1 0 0 1-1 1h-3v-1h3zM6 4v1H1v5h5v1H1a1 1 0 0 1-1-1V5a1 1 0 0 1 1-1z"
clip-rule="evenodd" />
</svg>

After

Width:  |  Height:  |  Size: 700 B

@ -0,0 +1 @@
<svg t="1770361726263" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="17572" width="200" height="200"><path d="M812.4 213.4V813H210.3V213.4h602.1m-669-19.5v638.6c0 26.2 21.2 47.4 47.4 47.4h641.1c26.2 0 47.4-21.2 47.4-47.4V193.9c0-26.2-21.2-47.4-47.4-47.4H190.8c-26.2 0-47.4 21.2-47.4 47.4z" fill="#202A35" p-id="17573"></path><path d="M344.3 714.8c-18.7 0-33.8-15.1-33.8-33.8V547c0-18.7 15.1-33.8 33.8-33.8 18.7 0 33.8 15.1 33.8 33.8v134c0 18.6-15.2 33.8-33.8 33.8zM511.3 714.8c-18.7 0-33.8-15.1-33.8-33.8V346.5c0-18.7 15.1-33.8 33.8-33.8 18.7 0 33.8 15.1 33.8 33.8V681c0 18.6-15.1 33.8-33.8 33.8zM678.6 714.8c-18.7 0-33.8-15.1-33.8-33.8V480.3c0-18.7 15.1-33.8 33.8-33.8 18.7 0 33.8 15.1 33.8 33.8V681c0 18.6-15.2 33.8-33.8 33.8z" fill="#202A35" p-id="17574"></path></svg>

After

Width:  |  Height:  |  Size: 817 B

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 16 16"><path fill="currentColor" fill-rule="evenodd" d="M13.45 8.75a5.501 5.501 0 1 1-6.2-6.2V8c0 .414.336.75.75.75zm0-1.5h-4.7v-4.7a5.503 5.503 0 0 1 4.7 4.7M15 8A7 7 0 1 1 1 8a7 7 0 0 1 14 0" clip-rule="evenodd"/></svg>

After

Width:  |  Height:  |  Size: 299 B

@ -0,0 +1 @@
<svg t="1770361846588" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="20273" width="200" height="200"><path d="M985.5 797c0-54.1-37.6-99.6-88-111.8V137c0-13.8-11.2-25-25-25s-25 11.2-25 25v547.3c-52.4 10.7-92 57.2-92 112.7 0 63.4 51.6 115 115 115h2c0.6 0 1.2 0 1.7-0.1 61.7-2 111.3-52.7 111.3-114.9z m-115 65c-35.8 0-65-29.2-65-65s29.2-65 65-65 65 29.2 65 65-29.2 65-65 65zM153.5 112h-2c-62.5 1.1-113 52.2-113 115 0 54.5 38.1 100.2 89 112v548c0 13.8 11.2 25 25 25s25-11.2 25-25V339.5c51.9-11.1 91-57.3 91-112.5 0-63.4-51.6-115-115-115z m0 180c-35.8 0-65-29.2-65-65s29.2-65 65-65 65 29.2 65 65-29.2 65-65 65zM535.5 399.7V137c0-13.8-11.2-25-25-25s-25 11.2-25 25v262.7c-51.4 11.4-90 57.4-90 112.3s38.6 100.8 90 112.3V887c0 13.8 11.2 25 25 25s25-11.2 25-25V624.3c51.4-11.4 90-57.4 90-112.3s-38.6-100.8-90-112.3z m-25 177.3c-35.8 0-65-29.2-65-65s29.2-65 65-65 65 29.2 65 65-29.2 65-65 65z" fill="#2c2c2c" p-id="20274"></path></svg>

After

Width:  |  Height:  |  Size: 970 B

@ -0,0 +1 @@
<svg t="1770361486882" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="7055" width="200" height="200"><path d="M512 576c-35.35 0-64-28.65-64-64s28.65-64 64-64 64 28.65 64 64-28.65 64-64 64zM366.37 712.6c-2.64 3.64-7.78 4.41-11.34 1.65C294.77 667.41 256 594.23 256 512s38.77-155.41 99.04-202.25c3.55-2.76 8.69-1.99 11.34 1.65l28.24 38.86c2.51 3.45 1.89 8.29-1.46 10.94C348.59 396.36 320 450.84 320 512s28.59 115.64 73.14 150.8c3.35 2.64 3.97 7.48 1.46 10.94l-28.23 38.86zM657.7 311.46c2.64-3.64 7.79-4.41 11.34-1.65C729.26 356.65 768 429.8 768 512s-38.74 155.35-98.96 202.19c-3.55 2.76-8.69 1.99-11.34-1.65l-28.24-38.86c-2.51-3.45-1.89-8.29 1.46-10.93C675.44 627.58 704 573.13 704 512s-28.56-115.58-73.07-150.74c-3.35-2.64-3.97-7.48-1.46-10.93l28.23-38.87zM253.48 867.98c-2.63 3.62-7.73 4.38-11.31 1.68C133.94 787.88 64 658.11 64 512s69.94-275.88 178.18-357.66c3.57-2.7 8.67-1.94 11.31 1.68l28.22 38.84c2.56 3.52 1.82 8.44-1.65 11.07C187.67 276.06 128 387.06 128 512s59.67 235.94 152.06 306.06c3.47 2.63 4.21 7.55 1.65 11.07l-28.23 38.85z m517.11-711.9c2.63-3.62 7.73-4.38 11.31-1.68C890.09 236.18 960 365.93 960 512s-69.91 275.82-178.1 357.6c-3.57 2.7-8.67 1.94-11.31-1.68l-28.22-38.85c-2.56-3.52-1.82-8.44 1.65-11.07C836.37 747.88 896 636.9 896 512s-59.63-235.88-151.98-306.01c-3.47-2.63-4.21-7.55-1.65-11.07l28.22-38.84z" fill="#2c2c2c" p-id="7056"></path></svg>

After

Width:  |  Height:  |  Size: 1.4 KiB

@ -0,0 +1 @@
<svg t="1770361665271" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="14725" width="200" height="200"><path d="M512 930.133333c-234.666667 0-426.666667-192-426.666667-426.666666C85.333333 352 166.4 209.066667 298.666667 134.4c21.333333-12.8 46.933333-6.4 57.6 14.933333 12.8 21.333333 6.4 46.933333-14.933334 57.6-104.533333 61.866667-170.666667 174.933333-170.666666 296.533334 0 187.733333 153.6 341.333333 341.333333 341.333333s341.333333-153.6 341.333333-341.333333c0-113.066667-55.466667-219.733333-151.466666-283.733334-19.2-12.8-25.6-40.533333-10.666667-59.733333 12.8-19.2 38.4-23.466667 59.733333-10.666667 117.333333 78.933333 187.733333 211.2 187.733334 354.133334 0 234.666667-192 426.666667-426.666667 426.666666z m10.666667-375.466666c-23.466667 0-42.666667-19.2-42.666667-42.666667V85.333333c0-23.466667 19.2-42.666667 42.666667-42.666666s42.666667 19.2 42.666666 42.666666v426.666667c0 23.466667-19.2 42.666667-42.666666 42.666667z" fill="#333333" p-id="14726"></path></svg>

After

Width:  |  Height:  |  Size: 1.0 KiB

@ -0,0 +1 @@
<svg t="1770361166962" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5088" width="200" height="200"><path d="M288 512l256 0C561.92 512 576 497.92 576 480 576 462.08 561.92 448 544 448l-256 0C270.08 448 256 462.08 256 480 256 497.92 270.08 512 288 512zM768 64 192 64C121.6 64 64 121.6 64 192l0 576c0 70.4 57.6 128 128 128l576 0c70.4 0 128-57.6 128-128L896 192C896 121.6 838.4 64 768 64zM832 768c0 35.2-28.8 64-64 64L192 832c-35.2 0-64-28.8-64-64L128 192c0-35.2 28.8-64 64-64l576 0c35.2 0 64 28.8 64 64L832 768zM672 256l-384 0C270.08 256 256 270.08 256 288 256 305.92 270.08 320 288 320l384 0C689.92 320 704 305.92 704 288 704 270.08 689.92 256 672 256zM608 640l-320 0C270.08 640 256 654.08 256 672l0 0C256 689.92 270.08 704 288 704l320 0c17.92 0 32-14.08 32-32l0 0C640 654.08 625.92 640 608 640z" p-id="5089"></path></svg>

After

Width:  |  Height:  |  Size: 867 B

@ -0,0 +1 @@
<svg t="1770360982349" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="4009" width="200" height="200"><path d="M959.825022 384.002258V191.939717C959.825022 121.2479 902.517291 63.940169 831.825474 63.940169H191.939717C121.2479 63.940169 63.940169 121.2479 63.940169 191.939717v639.885757C63.940169 902.517291 121.2479 959.825022 191.939717 959.825022h639.885757c70.691817 0 127.999548-57.307731 127.999548-127.999548V384.002258zM146.66502 146.66502a63.737872 63.737872 0 0 1 45.336109-18.784682h639.997742A63.961844 63.961844 0 0 1 895.884854 192.001129V320.062089H127.880338V192.001129A63.737872 63.737872 0 0 1 146.66502 146.66502z m269.1267 461.308451v-223.971213h192.181751v223.971213h-192.181751z m192.181751 63.940169v223.971214h-192.181751v-223.971214h192.181751z m-256.12192-63.940169H127.880338v-223.971213h223.971213v223.971213z m-205.186531 269.235073a63.466939 63.466939 0 0 1-18.784682-45.209673V671.91364h223.971213v223.971214H192.001129a63.625887 63.625887 0 0 1-45.336109-18.67631z m749.219834-45.209673A63.763159 63.763159 0 0 1 831.998871 895.884854H671.91364v-223.971214h223.971214v160.085231z m0-224.0254h-223.971214v-223.971213h223.971214v223.971213z" fill="" p-id="4010"></path></svg>

After

Width:  |  Height:  |  Size: 1.2 KiB

@ -0,0 +1,960 @@
<template>
<!-- <VueBaseTable /> -->
<!-- <vueImgTest /> -->
<!-- <VueThreeMachine /> -->
<!-- <vueThreeEquipment /> -->
<el-config-provider :locale="zhCn">
<router-view />
</el-config-provider>
<!-- <viewIndex /> -->
</template>
<script setup lang="ts">
import { getCurrentInstance, defineAsyncComponent, ref, onMounted, h, createApp } from 'vue';
import { leftAsideStore } from '@/export';
import viewIndex from '@/layout/view_index.vue';
import zhCn from 'element-plus/es/locale/lang/zh-cn';
// xq
import VueMyTest from '@/components/my-test.vue';
import VueMyButton from '@/components/my-button.vue';
import vueInstrument from '@/components/vue-xq-test/vue-instrument.vue';
import VueTableOnly from '@/components/vue-xq-test/vue-table-only.vue';
import VueTableComplex from '@/components/vue-xq-test/vue-table-complex.vue';
import VueImg from '@/components/vue-xq-test/vue-img.vue';
import VueRunInfo from '@/components/vue-xq-test/vue-run-info.vue';
import VueMultiTypeInfo from '@/components/vue-xq-test/vue-multi-type-info.vue';
import VueSignalInfo from '@/components/vue-xq-test/vue-signal-info.vue';
import vueSignalGaudy from '@/components/vue-xq-test/vue-signal-gaudy.vue';
import VueSwitchInfo from '@/components/vue-xq-test/vue-switch-info.vue';
import VueNumInfo from '@/components/vue-xq-test/vue-num-info.vue';
import VueRegulator from '@/components/vue-xq-test/vue-regulator.vue';
import VueBaseTable from '@/components/vue-xq-test/vue-base-table.vue';
import VueThreeMachine from '@/components/vue-xq-test/vue-three-machine.vue';
import VueThreePipeline from '@/components/vue-xq-test/vue-three-pipeline.vue';
import VueBaseCardInfo from '@/components/vue-xq-test/vue-base-card-info.vue';
import VuePhotonCard from '@/components/vue-xq-test/vue-photon-card.vue';
import VueEssentialInformation from '@/components/vue-xq-test/vue-essential-information.vue';
import VueAssembleTable from '@/components/vue-xq-test/vue-assemble-table.vue';
import VueSynthesizeTable from '@/components/vue-xq-test/vue-synthesize-table.vue';
import VueThreeSmokeSiren from '@/components/vue-xq-test/vue-three-smokeSiren.vue';
import VueThreeScene from '@/components/vue-xq-test/vue-three-scene.vue';
import VueHostMachine from '@/components/vue-xq-test/vue-host-machine.vue';
import VueThreeTest from '@/components/vue-xq-test/vue-three-test.vue';
import VueThreeGroundFloor from '@/components/vue-xq-test/vue-three-groundFloor.vue';
// import vueThreeEquipment from '@/components/three-components/vue-three-equipment.vue';
const instance = getCurrentInstance();
instance?.appContext.app.component('vue-my-button', VueMyButton);
instance?.appContext.app.component('vue-my-input', VueMyTest);
instance?.appContext.app.component('vue-my-instrument', vueInstrument);
instance?.appContext.app.component('vue-my-tableOnly', VueTableOnly);
instance?.appContext.app.component('vue-my-complex', VueTableComplex);
instance?.appContext.app.component('vue-my-img', VueImg);
instance?.appContext.app.component('vue-my-run-info', VueRunInfo);
instance?.appContext.app.component('vue-my-multi-type-info', VueMultiTypeInfo);
instance?.appContext.app.component('vue-my-signal-info', VueSignalInfo);
instance?.appContext.app.component('vue-my-signal-gaudy', vueSignalGaudy);
instance?.appContext.app.component('vue-my-switch-info', VueSwitchInfo);
instance?.appContext.app.component('vue-my-num-info', VueNumInfo);
instance?.appContext.app.component('vue-my-regulator', VueRegulator);
instance?.appContext.app.component('vue-my-base-table', VueBaseTable);
instance?.appContext.app.component('vue-my-regulator', VueRegulator);
instance?.appContext.app.component('vue-my-three-machine', VueThreeMachine);
instance?.appContext.app.component('vue-my-three-pipeline', VueThreePipeline);
instance?.appContext.app.component('vue-my-base-card-info', VueBaseCardInfo);
instance?.appContext.app.component('vue-my-photon-card', VuePhotonCard);
instance?.appContext.app.component('vue-my-essential-information', VueEssentialInformation);
instance?.appContext.app.component('vue-my-assemble-table', VueAssembleTable);
instance?.appContext.app.component('vue-my-synthesize-table', VueSynthesizeTable);
instance?.appContext.app.component('vue-my-three-smoke-siren', VueThreeSmokeSiren);
instance?.appContext.app.component('vue-my-three-scene', VueThreeScene);
instance?.appContext.app.component('vue-my-host-machine', VueHostMachine);
instance?.appContext.app.component('vue-my-three-test', VueThreeTest);
instance?.appContext.app.component('vue-my-three-ground-floor', VueThreeGroundFloor);
const electrical_modules_files = import.meta.glob('./assets/svgs/electrical/**.svg', {
eager: true,
as: 'raw'
});
const electrical_stroke_modules_files = import.meta.glob('./assets/svgs/electrical/stroke/**.svg', {
eager: true,
as: 'raw'
});
const electrical_register_config: any = [];
for (const key in electrical_modules_files) {
//svg
const name = key.split('/').pop()!.split('.')[0];
electrical_register_config.push({
id: name,
title: name,
type: 'svg',
thumbnail: 'data:image/svg+xml;utf8,' + encodeURIComponent(electrical_modules_files[key]),
svg: electrical_modules_files[key],
props: {
fill: {
type: 'color',
val: '#FF0000',
title: '填充色'
}
}
});
}
for (const key in electrical_stroke_modules_files) {
//svg
const name = key.split('/').pop()!.split('.')[0];
electrical_register_config.push({
id: name,
title: name,
type: 'svg',
thumbnail:
'data:image/svg+xml;utf8,' + encodeURIComponent(electrical_stroke_modules_files[key]),
svg: electrical_stroke_modules_files[key],
props: {
stroke: {
type: 'color',
val: '#00ff00',
title: '边框色'
}
}
});
}
leftAsideStore.registerConfig('电气符号', electrical_register_config);
leftAsideStore.registerConfig('vue四遥组件', [
{
id: 'vue-my-signal-info',
title: 'vue遥信01',
type: 'vue',
thumbnail: '/public/svgs/info.svg',
props: {}
},
{
id: 'vue-my-signal-gaudy',
title: 'vue遥信02',
type: 'vue',
thumbnail: '/public/svgs/signal-gaudy.svg',
props: {
moduleType: {
type: 'inputTypeTag',
val: '遥信',
title: '四遥类型'
},
moduleId: {
type: 'inputSelectId',
val: '',
title: '绑定ID'
},
location: {
type: 'select',
val: 'bottom',
title: '名称位置',
options: [
{
value: 'top',
label: '上'
},
{
value: 'bottom',
label: '下'
},
{
value: 'left',
label: '左'
},
{
value: 'right',
label: '右'
}
]
}
}
},
{
id: 'vue-my-switch-info',
title: 'vue遥控',
type: 'vue',
thumbnail: '/public/svgs/switch-info.svg',
props: {
moduleType: {
type: 'inputTypeTag',
val: '遥控',
title: '四遥类型'
},
moduleId: {
type: 'inputSelectId',
val: '',
title: '绑定ID'
}
}
},
{
id: 'vue-my-num-info',
title: 'vue遥测',
type: 'vue',
thumbnail: '/public/svgs/num-info.svg',
props: {
moduleType: {
type: 'inputTypeTag',
val: '遥测',
title: '四遥类型'
},
moduleId: {
type: 'inputSelectId',
val: '--',
title: '绑定ID'
},
location: {
type: 'select',
val: 'bottom',
title: '名称位置',
options: [
{
value: 'top',
label: '上'
},
{
value: 'bottom',
label: '下'
},
{
value: 'left',
label: '左'
},
{
value: 'right',
label: '右'
}
]
}
}
},
{
id: 'vue-my-regulator',
title: 'vue遥调',
type: 'vue',
thumbnail: '/public/svgs/regulator.svg',
props: {
moduleType: {
type: 'inputTypeTag',
val: '遥测',
title: '四遥类型'
},
moduleId: {
type: 'inputSelectId',
val: '--',
title: '绑定ID'
}
}
}
]);
leftAsideStore.registerConfig('vue公共组件', [
{
id: 'vue-my-input',
title: 'vue输入框',
type: 'vue',
thumbnail: '/svgs/my-input.svg',
props: {
modelValue: {
type: 'input',
val: '输入框',
title: '文本'
},
fontFamily: {
title: '字体',
type: 'select',
val: '黑体',
options: [
{
value: '黑体',
label: '黑体'
},
{
value: '宋体',
label: '宋体'
}
]
},
testColor: {
type: 'color',
val: '#44B6E7',
title: '文字颜色'
}
}
},
{
id: 'vue-my-tableOnly',
title: '单一功能表单',
type: 'vue',
thumbnail: '/public/svgs/table-only.svg',
props: {
fontFamily: {
title: '字体',
type: 'select',
val: '黑体',
options: [
{
value: '黑体',
label: '黑体'
},
{
value: '宋体',
label: '宋体'
}
]
},
fontSize: {
type: 'number',
val: 12,
title: '字体大小'
},
testColor: {
type: 'color',
val: '#767676',
title: '文字颜色'
}
}
},
{
id: 'vue-my-complex',
title: '分组功能表单',
type: 'vue',
thumbnail: '/public/svgs/table-only.svg',
props: {
fontFamily: {
title: '字体',
type: 'select',
val: '黑体',
options: [
{
value: '黑体',
label: '黑体'
},
{
value: '宋体',
label: '宋体'
}
]
},
fontSize: {
type: 'number',
val: 12,
title: '字体大小'
},
testColor: {
type: 'color',
val: '#767676',
title: '文字颜色'
}
}
},
{
id: 'vue-my-img',
title: 'vue图形组件',
type: 'vue',
thumbnail: '/public/svgs/image.svg',
props: {
moduleId: {
type: 'upload',
val: '--',
title: '绑定'
}
}
},
{
id: 'vue-my-run-info',
title: 'vue运行信息',
type: 'vue',
thumbnail: '/public/svgs/log.svg',
props: {
fontFamily: {
title: '字体',
type: 'select',
val: 'Segoe UI',
options: [
{
value: 'Segoe UI',
label: 'Segoe UI'
},
{
value: '微软雅黑',
label: '微软雅黑'
},
{
value: '黑体',
label: '黑体'
},
{
value: '宋体',
label: '宋体'
}
]
},
fontSize: {
type: 'number',
val: 14,
title: '字体大小'
},
testColor: {
type: 'color',
val: '#000000',
title: '文字颜色'
},
dataSource: {
title: '信息类型',
type: 'select',
val: '--',
options: [
{
value: 'globalOverview',
label: '全站总揽'
},
{
value: 'fireExtinguishing',
label: '消防系统'
},
{
value: 'firePolice',
label: '火灾报警主机'
}
]
}
}
},
{
id: 'vue-my-multi-type-info',
title: 'vue运行状态信息',
type: 'vue',
thumbnail: '/public/svgs/log-sel.svg',
props: {
headline: {
type: 'input',
val: '自定义标题',
title: '标题'
},
fontFamily: {
title: '字体',
type: 'select',
val: 'Segoe UI',
options: [
{
value: 'Segoe UI',
label: 'Segoe UI'
},
{
value: '微软雅黑',
label: '微软雅黑'
},
{
value: '黑体',
label: '黑体'
},
{
value: '宋体',
label: '宋体'
}
]
},
fontSize: {
type: 'number',
val: 14,
title: '字体大小'
},
dataSource: {
type: 'select',
val: 'ultraVires',
title: '数据来源',
options: [
{
value: 'ultraVires',
label: '越权信息'
},
{
value: 'linkage',
label: '联动信息'
},
{
value: 'unitException',
label: '异常设备'
}
]
},
testColor: {
type: 'color',
val: '#000000',
title: '文字颜色'
}
}
},
{
id: 'vue-my-base-table',
title: 'vue公共表格',
type: 'vue',
thumbnail: '/public/svgs/table-base.svg',
props: {
dataSource: {
title: '数据源',
type: 'select',
val: '--',
options: [
{
value: 'wholeSiteMessage',
label: '全站报文'
},
{
value: 'unitException',
label: '异常设备'
},
{
value: 'unauthorized',
label: '越权消息'
}
]
}
}
}
]);
leftAsideStore.registerConfig('vue3D组件', [
{
id: 'vue-my-three-machine',
title: '3d机房',
type: 'vue',
thumbnail: '/public/svgs/table-base.svg',
props: {
dataSource: {
title: '数据源',
type: 'input',
val: '--'
}
}
},
{
id: 'vue-my-three-pipeline',
title: '3d管道',
type: 'vue',
thumbnail: '/public/svgs/table-base.svg',
props: {
dataSource: {
title: '数据源',
type: 'input',
val: '--'
}
}
},
{
id: 'vue-my-three-smoke-siren',
title: '3d烟感报警器+信息',
type: 'vue',
thumbnail: '/public/svgs/table-only.svg',
props: {
dataSource: {
title: '数据源',
type: 'input',
val: '--'
}
}
},
{
id: 'vue-my-three-scene',
title: '3d烟感报警器+楼层',
type: 'vue',
thumbnail: '/public/svgs/table-only.svg',
props: {
dataSource: {
title: '数据源',
type: 'input',
val: '--'
}
}
},
{
id: 'vue-my-three-test',
title: '3d-test',
type: 'vue',
thumbnail: '/public/svgs/table-only.svg',
props: {
dataSource: {
title: '数据源',
type: 'input',
val: '--'
}
}
},
{
id: 'vue-my-three-ground-floor',
title: '3d-生产综合楼一楼',
type: 'vue',
thumbnail: '/public/svgs/table-only.svg',
props: {
dataSource: {
title: '数据源',
type: 'input',
val: '--'
}
}
}
]);
leftAsideStore.registerConfig('vue组件', [
{
id: 'vue-my-base-card-info',
title: '火灾报警-火警卡片',
type: 'vue',
thumbnail: '/public/svgs/table-base.svg',
props: {
fontFamily: {
title: '字体',
type: 'select',
val: 'Segoe UI',
options: [
{
value: 'Segoe UI',
label: 'Segoe UI'
},
{
value: '微软雅黑',
label: '微软雅黑'
},
{
value: '黑体',
label: '黑体'
},
{
value: '宋体',
label: '宋体'
}
]
},
fontSize: {
type: 'number',
val: 14,
title: '字体大小'
},
headline: {
type: 'input',
val: '自定义标题',
title: '标题'
}
}
},
{
id: 'vue-my-photon-card',
title: '火灾报警主机-光字牌',
type: 'vue',
thumbnail: '/public/svgs/table-base.svg',
props: {
fontFamily: {
title: '字体',
type: 'select',
val: 'Segoe UI',
options: [
{
value: 'Segoe UI',
label: 'Segoe UI'
},
{
value: '微软雅黑',
label: '微软雅黑'
},
{
value: '黑体',
label: '黑体'
},
{
value: '宋体',
label: '宋体'
}
]
},
fontSize: {
type: 'number',
val: 14,
title: '字体大小'
},
testColor: {
type: 'color',
val: '#000000',
title: '文字颜色'
}
}
},
{
id: 'vue-my-essential-information',
title: '火灾报警主机-基本信息',
type: 'vue',
thumbnail: '/public/svgs/table-base.svg',
props: {
fontFamily: {
title: '字体',
type: 'select',
val: 'Segoe UI',
options: [
{
value: 'Segoe UI',
label: 'Segoe UI'
},
{
value: '微软雅黑',
label: '微软雅黑'
},
{
value: '黑体',
label: '黑体'
},
{
value: '宋体',
label: '宋体'
}
]
},
fontSize: {
type: 'number',
val: 14,
title: '字体大小'
},
testColor: {
type: 'color',
val: '#000000',
title: '文字颜色'
}
}
},
{
id: 'vue-my-assemble-table',
title: '火灾报警主机-装配说明',
type: 'vue',
thumbnail: '/public/svgs/table-base.svg',
props: {
fontFamily: {
title: '字体',
type: 'select',
val: '黑体',
options: [
{
value: '黑体',
label: '黑体'
},
{
value: '宋体',
label: '宋体'
}
]
},
fontSize: {
type: 'number',
val: 12,
title: '字体大小'
},
testColor: {
type: 'color',
val: '#767676',
title: '文字颜色'
}
}
},
{
id: 'vue-my-synthesize-table',
title: '生产综合楼1楼-运行信息(表格)',
type: 'vue',
thumbnail: '/public/svgs/table-only.svg',
props: {
fontFamily: {
title: '字体',
type: 'select',
val: '黑体',
options: [
{
value: '黑体',
label: '黑体'
},
{
value: '宋体',
label: '宋体'
}
]
},
fontSize: {
type: 'number',
val: 12,
title: '字体大小'
},
testColor: {
type: 'color',
val: '#767676',
title: '文字颜色'
}
}
},
{
id: 'vue-my-host-machine',
title: '生产综合楼1楼-主机',
type: 'vue',
thumbnail: '/public/svgs/table-only.svg',
props: {
fontFamily: {
title: '字体',
type: 'select',
val: 'Segoe UI',
options: [
{
value: 'Segoe UI',
label: 'Segoe UI'
},
{
value: '微软雅黑',
label: '微软雅黑'
},
{
value: '黑体',
label: '黑体'
},
{
value: '宋体',
label: '宋体'
}
]
},
fontSize: {
type: 'number',
val: 14,
title: '字体大小'
},
headline: {
type: 'input',
val: '自定义标题',
title: '标题'
}
}
}
]);
leftAsideStore.registerConfig('开发测试用', [
{
id: 'my-button',
title: '我的按钮',
type: 'vue',
thumbnail: '/svgs/my-button.svg',
props: {
text: {
type: 'input',
val: '按钮',
title: '文本'
},
bgColor: {
type: 'color',
val: '#44B6E7',
title: '背景色'
},
fontFamily: {
title: '字体',
type: 'select',
val: '黑体',
options: [
{
value: '黑体',
label: '黑体'
},
{
value: '宋体',
label: '宋体'
}
]
}
}
},
{
id: 'my-input',
title: '我的输入框',
type: 'vue',
thumbnail: '/svgs/my-input.svg',
props: {
modelValue: {
type: 'input',
val: '输入框',
title: '文本'
}
}
},
{
id: 'custom-demo',
title: '自定义svg',
type: 'custom-svg',
thumbnail: '/svgs/demo.svg',
props: {
circleFill: {
type: 'color',
val: '#FF0000',
title: '圆颜色'
},
pathFill1: {
type: 'color',
val: '#00FF00',
title: '线1颜色'
},
pathFill2: {
type: 'color',
val: '#0000FF',
title: '线2颜色'
},
pathFill3: {
type: 'color',
val: '#FFFF00',
title: '线3颜色'
},
showLine2: {
type: 'switch',
val: true,
title: '显示线2'
}
}
},
{
id: 'pie-charts',
title: 'echarts饼图',
type: 'vue',
thumbnail: '/svgs/pie-charts.svg',
props: {
title: {
title: '标题',
type: 'input',
val: '默认标题'
},
seriesName: {
title: '详情',
type: 'input',
val: '详情标题'
},
seriesData: {
title: '数据',
type: 'jsonEdit',
val: [
{
value: 1048,
name: '办公楼A'
},
{
value: 735,
name: '办公楼B'
},
{
value: 580,
name: '保安室'
},
{
value: 484,
name: '地下车库'
},
{
value: 300,
name: '食堂'
}
]
}
}
}
]);
</script>
<style scoped></style>

@ -0,0 +1,92 @@
#mt-edit.dark {
color-scheme: dark;
--el-color-primary: #409eff;
--el-color-primary-light-3: #3375b9;
--el-color-primary-light-5: #2a598a;
--el-color-primary-light-7: #213d5b;
--el-color-primary-light-8: #1d3043;
--el-color-primary-light-9: #18222c;
--el-color-primary-dark-2: #66b1ff;
--el-color-success: #67c23a;
--el-color-success-light-3: #4e8e2f;
--el-color-success-light-5: #3e6b27;
--el-color-success-light-7: #2d481f;
--el-color-success-light-8: #25371c;
--el-color-success-light-9: #1c2518;
--el-color-success-dark-2: #85ce61;
--el-color-warning: #e6a23c;
--el-color-warning-light-3: #a77730;
--el-color-warning-light-5: #7d5b28;
--el-color-warning-light-7: #533f20;
--el-color-warning-light-8: #3e301c;
--el-color-warning-light-9: #292218;
--el-color-warning-dark-2: #ebb563;
--el-color-danger: #f56c6c;
--el-color-danger-light-3: #b25252;
--el-color-danger-light-5: #854040;
--el-color-danger-light-7: #582e2e;
--el-color-danger-light-8: #412626;
--el-color-danger-light-9: #2b1d1d;
--el-color-danger-dark-2: #f78989;
--el-color-error: #f56c6c;
--el-color-error-light-3: #b25252;
--el-color-error-light-5: #854040;
--el-color-error-light-7: #582e2e;
--el-color-error-light-8: #412626;
--el-color-error-light-9: #2b1d1d;
--el-color-error-dark-2: #f78989;
--el-color-info: #909399;
--el-color-info-light-3: #6b6d71;
--el-color-info-light-5: #525457;
--el-color-info-light-7: #393a3c;
--el-color-info-light-8: #2d2d2f;
--el-color-info-light-9: #202121;
--el-color-info-dark-2: #a6a9ad;
--el-box-shadow: 0px 12px 32px 4px rgba(0, 0, 0, 0.36), 0px 8px 20px rgba(0, 0, 0, 0.72);
--el-box-shadow-light: 0px 0px 12px rgba(0, 0, 0, 0.72);
--el-box-shadow-lighter: 0px 0px 6px rgba(0, 0, 0, 0.72);
--el-box-shadow-dark:
0px 16px 48px 16px rgba(0, 0, 0, 0.72), 0px 12px 32px #000000, 0px 8px 16px -8px #000000;
--el-bg-color-page: #0a0a0a;
--el-bg-color: #141414;
--el-bg-color-overlay: #1d1e1f;
--el-text-color-primary: #e5eaf3;
--el-text-color-regular: #cfd3dc;
--el-text-color-secondary: #a3a6ad;
--el-text-color-placeholder: #8d9095;
--el-text-color-disabled: #6c6e72;
--el-border-color-darker: #636466;
--el-border-color-dark: #58585b;
--el-border-color: #4c4d4f;
--el-border-color-light: #414243;
--el-border-color-lighter: #363637;
--el-border-color-extra-light: #2b2b2c;
--el-fill-color-darker: #424243;
--el-fill-color-dark: #39393a;
--el-fill-color: #303030;
--el-fill-color-light: #262727;
--el-fill-color-lighter: #1d1d1d;
--el-fill-color-extra-light: #191919;
--el-fill-color-blank: transparent;
--el-mask-color: rgba(0, 0, 0, 0.8);
--el-mask-color-extra-light: rgba(0, 0, 0, 0.3);
transition: all 5s;
}
#mt-edit.dark .el-button {
--el-button-disabled-text-color: rgba(255, 255, 255, 0.5);
}
#mt-edit.dark .el-card {
--el-card-bg-color: var(--el-bg-color-overlay);
}
#mt-edit.dark .el-empty {
--el-empty-fill-color-0: var(--el-color-black);
--el-empty-fill-color-1: #4b4b52;
--el-empty-fill-color-2: #36383d;
--el-empty-fill-color-3: #1e1e20;
--el-empty-fill-color-4: #262629;
--el-empty-fill-color-5: #202124;
--el-empty-fill-color-6: #212224;
--el-empty-fill-color-7: #1b1c1f;
--el-empty-fill-color-8: #1c1d1f;
--el-empty-fill-color-9: #18181a;
}

@ -0,0 +1,6 @@
<svg class="icon" viewBox="0 0 1024 1024" version="1.1"
xmlns="http://www.w3.org/2000/svg" width="200" height="200">
<path
d="M801.171 483.589H544V226.418c0-17.673-14.327-32-32-32s-32 14.327-32 32v257.171H222.83c-17.673 0-32 14.327-32 32s14.327 32 32 32H480v257.17c0 17.673 14.327 32 32 32s32-14.327 32-32v-257.17h257.171c17.673 0 32-14.327 32-32s-14.327-32-32-32z"
fill=""></path>
</svg>

After

Width:  |  Height:  |  Size: 412 B

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 256 256"><path fill="currentColor" d="M228 216a12 12 0 0 1-12 12H40a12 12 0 0 1 0-24h176a12 12 0 0 1 12 12m-92-48V80a20 20 0 0 1 20-20h36a20 20 0 0 1 20 20v88a20 20 0 0 1-20 20h-36a20 20 0 0 1-20-20m24-4h28V84h-28Zm-116 4V40a20 20 0 0 1 20-20h36a20 20 0 0 1 20 20v128a20 20 0 0 1-20 20H64a20 20 0 0 1-20-20m24-4h28V44H68Z"/></svg>

After

Width:  |  Height:  |  Size: 408 B

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 256 256"><path fill="currentColor" d="M208 136h-68v-16h44a20 20 0 0 0 20-20V60a20 20 0 0 0-20-20h-44v-8a12 12 0 0 0-24 0v8H72a20 20 0 0 0-20 20v40a20 20 0 0 0 20 20h44v16H48a20 20 0 0 0-20 20v40a20 20 0 0 0 20 20h68v8a12 12 0 0 0 24 0v-8h68a20 20 0 0 0 20-20v-40a20 20 0 0 0-20-20M76 64h104v32H76Zm128 128H52v-32h152Z"/></svg>

After

Width:  |  Height:  |  Size: 404 B

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 256 256"><path fill="currentColor" d="M52 40v176a12 12 0 0 1-24 0V40a12 12 0 0 1 24 0m16 60V64a20 20 0 0 1 20-20h88a20 20 0 0 1 20 20v36a20 20 0 0 1-20 20H88a20 20 0 0 1-20-20m24-4h80V68H92Zm144 60v36a20 20 0 0 1-20 20H88a20 20 0 0 1-20-20v-36a20 20 0 0 1 20-20h128a20 20 0 0 1 20 20m-24 4H92v28h120Z"/></svg>

After

Width:  |  Height:  |  Size: 387 B

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 256 256"><path fill="currentColor" d="M228 40v176a12 12 0 0 1-24 0V40a12 12 0 0 1 24 0m-40 24v36a20 20 0 0 1-20 20H80a20 20 0 0 1-20-20V64a20 20 0 0 1 20-20h88a20 20 0 0 1 20 20m-24 4H84v28h80Zm24 88v36a20 20 0 0 1-20 20H40a20 20 0 0 1-20-20v-36a20 20 0 0 1 20-20h128a20 20 0 0 1 20 20m-24 4H44v28h120Z"/></svg>

After

Width:  |  Height:  |  Size: 389 B

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 256 256"><path fill="currentColor" d="M228 40a12 12 0 0 1-12 12H40a12 12 0 0 1 0-24h176a12 12 0 0 1 12 12m-16 48v88a20 20 0 0 1-20 20h-36a20 20 0 0 1-20-20V88a20 20 0 0 1 20-20h36a20 20 0 0 1 20 20m-24 4h-28v80h28Zm-68-4v128a20 20 0 0 1-20 20H64a20 20 0 0 1-20-20V88a20 20 0 0 1 20-20h36a20 20 0 0 1 20 20m-24 4H68v120h28Z"/></svg>

After

Width:  |  Height:  |  Size: 409 B

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 256 256"><path fill="currentColor" d="M224 116h-8V72a20 20 0 0 0-20-20h-40a20 20 0 0 0-20 20v44h-16V48a20 20 0 0 0-20-20H60a20 20 0 0 0-20 20v68h-8a12 12 0 0 0 0 24h8v68a20 20 0 0 0 20 20h40a20 20 0 0 0 20-20v-68h16v44a20 20 0 0 0 20 20h40a20 20 0 0 0 20-20v-44h8a12 12 0 0 0 0-24M96 204H64V52h32Zm96-24h-32V76h32Z"/></svg>

After

Width:  |  Height:  |  Size: 401 B

@ -0,0 +1,5 @@
<svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 15 15">
<path fill="currentColor" fill-rule="evenodd"
d="M3.5 14.9a.4.4 0 0 0 .4-.4v-4.034l1.317 1.317a.4.4 0 0 0 .565-.566l-2-2a.4.4 0 0 0-.565 0l-2 2a.4.4 0 0 0 .565.566L3.1 10.466V14.5c0 .22.18.4.4.4ZM8 10.5a.5.5 0 0 0 .5.5h6a.5.5 0 1 0 0-1h-6a.5.5 0 0 0-.5.5Zm0-3a.5.5 0 0 0 .5.5h6a.5.5 0 0 0 0-1h-6a.5.5 0 0 0-.5.5ZM8.5 5a.5.5 0 1 1 0-1h6a.5.5 0 0 1 0 1h-6ZM3.9.5a.4.4 0 0 0-.8 0v4.034L1.781 3.217a.4.4 0 0 0-.565.566l2 2a.4.4 0 0 0 .565 0l2-2a.4.4 0 0 0-.565-.566L3.899 4.534V.5Z"
clip-rule="evenodd" />
</svg>

After

Width:  |  Height:  |  Size: 614 B

@ -0,0 +1,6 @@
<svg viewBox="0 0 1024 1024" version="1.1"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
width="200" height="200">
<path
d="M513.173333 128A255.061333 255.061333 0 0 0 448 298.666667c0 141.376 114.624 256 256 256a255.36 255.36 0 0 0 189.802667-84.202667c1.450667 13.653333 2.197333 27.498667 2.197333 41.536 0 212.074667-171.925333 384-384 384S128 724.074667 128 512c0-209.706667 168.106667-380.16 376.96-383.936L513.152 128z m-117.824 85.930667l-3.52 1.408C274.645333 262.826667 192 377.770667 192 512c0 176.725333 143.274667 320 320 320 145.408 0 268.16-96.981333 307.114667-229.802667l1.536-5.504-1.6 0.64a319.509333 319.509333 0 0 1-106.496 21.226667L704 618.666667c-176.725333 0-320-143.274667-320-320 0-28.48 3.754667-56.405333 10.944-83.2l0.405333-1.536z"></path>
</svg>

After

Width:  |  Height:  |  Size: 829 B

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 24 24"><path fill="currentColor" d="M7.5 1h9v3H22v2h-2.029l-.5 17H4.529l-.5-17H2V4h5.5V1Zm2 3h5V3h-5v1ZM6.03 6l.441 15h11.058l.441-15H6.03ZM13 8v11h-2V8h2Z"/></svg>

After

Width:  |  Height:  |  Size: 242 B

@ -0,0 +1,5 @@
<svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 15 15">
<path fill="currentColor" fill-rule="evenodd"
d="M5.5 2a.5.5 0 0 1 .5.5v3a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1 0-1H5V2.5a.5.5 0 0 1 .5-.5Zm4 0a.5.5 0 0 1 .5.5V5h2.5a.5.5 0 0 1 0 1h-3a.5.5 0 0 1-.5-.5v-3a.5.5 0 0 1 .5-.5ZM2 9.5a.5.5 0 0 1 .5-.5h3a.5.5 0 0 1 .5.5v3a.5.5 0 0 1-1 0V10H2.5a.5.5 0 0 1-.5-.5Zm7 0a.5.5 0 0 1 .5-.5h3a.5.5 0 0 1 0 1H10v2.5a.5.5 0 0 1-1 0v-3Z"
clip-rule="evenodd" />
</svg>

After

Width:  |  Height:  |  Size: 497 B

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 24 24"><path fill="currentColor" d="M3 1h12.414L21 6.586V12h-2V9h-6V3H5v18h6v2H3V1Zm12 2.414V7h3.586L15 3.414Zm4.05 10.674l4.858 4.914l-4.858 4.914l-1.422-1.406l2.48-2.508h-7.11v-2h7.11l-2.48-2.508l1.422-1.406Z"/></svg>

After

Width:  |  Height:  |  Size: 297 B

@ -0,0 +1,4 @@
<svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 2048 2048">
<path fill="currentColor"
d="M1664 1664v-384h128v512h-512v-128h384zM1280 256h512v512h-128V384h-384V256zM256 768V256h512v128H384v384H256zm128 512v384h384v128H256v-512h128z" />
</svg>

After

Width:  |  Height:  |  Size: 283 B

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 1024 1024"><path fill="currentColor" d="M912 820.1V203.9c28-9.9 48-36.6 48-67.9c0-39.8-32.2-72-72-72c-31.3 0-58 20-67.9 48H203.9C194 84 167.3 64 136 64c-39.8 0-72 32.2-72 72c0 31.3 20 58 48 67.9v616.2C84 830 64 856.7 64 888c0 39.8 32.2 72 72 72c31.3 0 58-20 67.9-48h616.2c9.9 28 36.6 48 67.9 48c39.8 0 72-32.2 72-72c0-31.3-20-58-48-67.9zM888 112c13.3 0 24 10.7 24 24s-10.7 24-24 24s-24-10.7-24-24s10.7-24 24-24zM136 912c-13.3 0-24-10.7-24-24s10.7-24 24-24s24 10.7 24 24s-10.7 24-24 24zm0-752c-13.3 0-24-10.7-24-24s10.7-24 24-24s24 10.7 24 24s-10.7 24-24 24zm704 680H184V184h656v656zm48 72c-13.3 0-24-10.7-24-24s10.7-24 24-24s24 10.7 24 24s-10.7 24-24 24z"/><path fill="currentColor" d="M288 474h448c8.8 0 16-7.2 16-16V282c0-8.8-7.2-16-16-16H288c-8.8 0-16 7.2-16 16v176c0 8.8 7.2 16 16 16zm56-136h336v64H344v-64zm-56 420h448c8.8 0 16-7.2 16-16V566c0-8.8-7.2-16-16-16H288c-8.8 0-16 7.2-16 16v176c0 8.8 7.2 16 16 16zm56-136h336v64H344v-64z"/></svg>

After

Width:  |  Height:  |  Size: 1023 B

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 24 24"><path fill="currentColor" d="M12 21a9 9 0 1 0 0-18a9 9 0 0 0 0 18m11-9c0 6.075-4.925 11-11 11S1 18.075 1 12S5.925 1 12 1s11 4.925 11 11m-9.996 6.254H11V16.25h2.004zM11 15.25V14c0-.867.39-1.573.826-2.11c.432-.53.974-.974 1.41-1.318a2 2 0 1 0-3.123-2.24l-.333.944l-1.885-.666l.333-.943a4.001 4.001 0 1 1 6.246 4.476c-.431.34-.817.666-1.096 1.009c-.274.338-.378.61-.378.848v1.25z"/></svg>

After

Width:  |  Height:  |  Size: 470 B

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 20 20"><path fill="currentColor" d="M3.5 18a.5.5 0 0 1-.5-.5v-15a.5.5 0 0 1 1 0v15a.5.5 0 0 1-.5.5m12.5-.5a.5.5 0 0 0 1 0v-15a.5.5 0 0 0-1 0zM9 4a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h2a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2z"/></svg>

After

Width:  |  Height:  |  Size: 295 B

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 24 24"><path fill="currentColor" d="M3 1h12.414L21 6.586V23h-9v-2h7V9h-6V3H5v10H3V1Zm12 2.414V7h3.586L15 3.414ZM7.05 14.088l4.858 4.914l-4.858 4.914l-1.422-1.406l2.48-2.508H.997v-2h7.11l-2.48-2.508l1.422-1.406Z"/></svg>

After

Width:  |  Height:  |  Size: 297 B

@ -0,0 +1,7 @@
<svg viewBox="0 0 1024 1024" version="1.1"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
width="200" height="200">
<path
d="M522.88 874.666667a21.333333 21.333333 0 0 1 21.333333 21.333333v85.333333a21.333333 21.333333 0 0 1-21.333333 21.333334h-21.333333a21.333333 21.333333 0 0 1-21.333334-21.333334v-85.333333a21.333333 21.333333 0 0 1 21.333334-21.333333h21.333333z m268.416-107.52l60.352 60.352a21.333333 21.333333 0 0 1 0 30.165333l-15.082667 15.082667a21.333333 21.333333 0 0 1-30.186666 0l-60.330667-60.352a21.333333 21.333333 0 0 1 0-30.165334l15.082667-15.082666a21.333333 21.333333 0 0 1 30.165333 0z m-527.957333 0l15.082666 15.082666a21.333333 21.333333 0 0 1 0 30.165334l-60.352 60.352a21.333333 21.333333 0 0 1-30.165333 0l-15.082667-15.082667a21.333333 21.333333 0 0 1 0-30.165333l60.330667-60.352a21.333333 21.333333 0 0 1 30.186667 0zM512 277.333333c141.376 0 256 114.624 256 256s-114.624 256-256 256-256-114.624-256-256 114.624-256 256-256z m0 64a192 192 0 1 0 0 384 192 192 0 0 0 0-384z m448.213333 160a21.333333 21.333333 0 0 1 21.333334 21.333334v21.333333a21.333333 21.333333 0 0 1-21.333334 21.333333h-85.333333a21.333333 21.333333 0 0 1-21.333333-21.333333v-21.333333a21.333333 21.333333 0 0 1 21.333333-21.333334h85.333333z m-810.666666 0a21.333333 21.333333 0 0 1 21.333333 21.333334v21.333333a21.333333 21.333333 0 0 1-21.333333 21.333333h-85.333334a21.333333 21.333333 0 0 1-21.333333-21.333333v-21.333333a21.333333 21.333333 0 0 1 21.333333-21.333334h85.333334zM836.586667 193.92l15.082666 15.082667a21.333333 21.333333 0 0 1 0 30.165333l-60.352 60.352a21.333333 21.333333 0 0 1-30.165333 0l-15.082667-15.082667a21.333333 21.333333 0 0 1 0-30.165333l60.330667-60.352a21.333333 21.333333 0 0 1 30.186667 0z m-618.496 0l60.352 60.352a21.333333 21.333333 0 0 1 0 30.165333l-15.082667 15.082667a21.333333 21.333333 0 0 1-30.186667 0L172.821333 239.146667a21.333333 21.333333 0 0 1 0-30.165334l15.082667-15.082666a21.333333 21.333333 0 0 1 30.165333 0zM522.901333 64a21.333333 21.333333 0 0 1 21.333334 21.333333v85.333334a21.333333 21.333333 0 0 1-21.333334 21.333333h-21.333333a21.333333 21.333333 0 0 1-21.333333-21.333333V85.333333a21.333333 21.333333 0 0 1 21.333333-21.333333h21.333333z"
></path>
</svg>

After

Width:  |  Height:  |  Size: 2.2 KiB

@ -0,0 +1 @@
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1676518938084" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="2193" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><path d="M893.60324 384c-54.7 1-101.1 36.4-118.4 85.4-2.2 6.4-8.3 10.6-15 10.6H263.80324c-6.7 0-12.8-4.2-15-10.6-17.3-49.1-63.6-84.4-118.4-85.4C59.90324 382.7 0.50324 440.6 0.00324 511.1-0.49676 582.2 57.00324 640 128.00324 640c55.7 0 103.1-35.6 120.7-85.3 2.3-6.4 8.3-10.7 15.1-10.7h496.4c6.8 0 12.8 4.3 15.1 10.7 17.6 49.7 65 85.3 120.7 85.3 71 0 128.5-57.8 128-128.9-0.5-70.5-59.9-128.4-130.4-127.1zM128.00324 576c-35.3 0-64-28.7-64-64s28.7-64 64-64 64 28.7 64 64-28.7 64-64 64z m768 0c-35.3 0-64-28.7-64-64s28.7-64 64-64 64 28.7 64 64-28.7 64-64 64z" p-id="2194"></path></svg>

After

Width:  |  Height:  |  Size: 904 B

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 36 36"><path fill="currentColor" d="M18.09 20.59A2.41 2.41 0 0 0 17 25.14V28h2v-2.77a2.41 2.41 0 0 0-.91-4.64" class="clr-i-outline clr-i-outline-path-1"/><path fill="currentColor" d="M26 15v-4.28a8.2 8.2 0 0 0-8-8.36a8.2 8.2 0 0 0-8 8.36V15H7v17a2 2 0 0 0 2 2h18a2 2 0 0 0 2-2V15Zm-14-4.28a6.2 6.2 0 0 1 6-6.36a6.2 6.2 0 0 1 6 6.36V15H12ZM9 32V17h18v15Z" class="clr-i-outline clr-i-outline-path-2"/><path fill="none" d="M0 0h36v36H0z"/></svg>

After

Width:  |  Height:  |  Size: 521 B

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 24 24"><path fill="currentColor" d="M2 4h20v2H2V4Zm20 5.57v4.86L18.113 12L22 9.57ZM2 13v-2h15v2H2Zm0 7v-2h20v2H2Z"/></svg>

After

Width:  |  Height:  |  Size: 200 B

Some files were not shown because too many files have changed in this diff Show More

Loading…
Cancel
Save