Commit 20b57642 authored by hucy's avatar hucy

fix:不重要的提交

parent 15a7620e
export const getType = function (value: any): string {
type Types =
| 'Number'
| 'String'
| 'Boolean'
| 'Null'
| 'Undefined'
| 'Array'
| 'Object';
export const getType = function (value: any): Types {
const typeofs = Object.prototype.toString.call(value);
switch (typeofs) {
......@@ -24,6 +33,6 @@ export const getType = function (value: any): string {
return 'Object';
default:
return typeofs;
return typeofs as any;
}
};
......@@ -17,6 +17,7 @@ import AgGridLoadingOverlayComponent from './ag-grid/LoadingOverlayComponent.vue
import AgGridDateComponent from './ag-grid/DateComponent.vue';
import DialogTip from './dialog-tip/DialogTip.vue';
import DialogLayout from './dialog-layout/DialogLayout.vue';
import JsonView from './json-view/JsonView.vue';
export {
DateTimePick as ComDateTimePick,
......@@ -37,6 +38,7 @@ export {
DialogTip as ComDialogTip,
DialogLayout as ComDialogLayout,
Btn as MyBtn,
JsonView as ComJsonView,
};
export default {
......@@ -58,4 +60,5 @@ export default {
DialogTip,
DialogLayout,
Btn,
JsonView,
};
<!--
* @FileDescription: JSON 预览组件
* @Date: 2023-05-29
* @LastEditTime: 2023-05-29
-->
<script setup lang="ts">
import ObjView from './element/ObjView.vue';
import ArrView from './element/ArrView.vue';
import HtmlView from './element/HtmlView.vue';
interface IDetailProps {
data: any;
mainColor?: string;
objSideColor?: string;
arrSideColor?: string;
stringColor?: string;
numberColor?: string;
booleanColor?: string;
nullColor?: string;
otherColor?: string;
}
const props = withDefaults(defineProps<IDetailProps>(), {
data: () => {
return {};
},
mainColor: '#587498',
objSideColor: '#3C7DC4', // 大括号颜色
arrSideColor: '#a64942', // 中括号颜色
stringColor: '#5A8F29',
numberColor: '#b38766',
booleanColor: '#FF8F00',
nullColor: '#a2a9af',
otherColor: '#2B2B2B',
});
function isObject(data: any) {
const typeofs = Object.prototype.toString.call(data);
if (typeofs === '[object Object]') {
return true;
} else {
return false;
}
}
function isArray(data: any) {
const typeofs = Object.prototype.toString.call(data);
if (typeofs === '[object Array]') {
return true;
} else {
return false;
}
}
</script>
<template>
<template v-if="isObject(props.data)">
<obj-view v-bind="props" />
</template>
<template v-else-if="isArray(props.data)">
<arr-view v-bind="props" />
</template>
<template v-else>
<html-view v-bind="props" />
</template>
</template>
<style lang="scss" scoped></style>
<!--
* @FileDescription: JSON 数组 预览组件
* @Date: 2023-05-29
* @LastEditTime: 2023-05-29
-->
<script setup lang="ts">
import { ref } from 'vue';
import ObjView from './ObjView.vue';
import HtmlView from './HtmlView.vue';
import { isObject, isArray, isLastArr } from '../utils';
interface IDetailProps {
data: any;
isLast?: boolean;
mainColor?: string;
objSideColor?: string;
arrSideColor?: string;
stringColor?: string;
numberColor?: string;
booleanColor?: string;
nullColor?: string;
otherColor?: string;
}
const props = withDefaults(defineProps<IDetailProps>(), {
data: () => {
return {};
},
isLast: true,
});
const show = ref(true);
function clickStart() {
show.value = !show.value;
}
</script>
<template>
<div style="font-family: 'Gill Sans', sans-serif; position: relative">
<div :style="{ color: arrSideColor }" class="obj-side-start">
<q-icon
:name="show ? 'bi-dash-square' : 'bi-plus-square'"
@click="clickStart"
class="icon-action"
/>
&nbsp;[
</div>
<div style="padding-left: 16px" v-show="show">
<template v-for="(m, n) in props.data" :key="n">
<div v-if="isObject(m) && Object.keys(m).length > 0">
<obj-view
v-bind="props"
:data="m"
:is-last="isLastArr(n, props.data)"
/>
</div>
<div v-else-if="isArray(m) && m.length > 0">
<arr-view
v-bind="props"
:data="m"
:is-last="isLastArr(n, props.data)"
/>
</div>
<div v-else>
<html-view
v-bind="props"
:data="m"
:is-last="isLastArr(n, props.data)"
/>
</div>
</template>
</div>
<div v-show="!show" class="hide-text" :style="{ color: arrSideColor }">
...
</div>
<div class="obj-side-end" v-show="show">
<span :style="{ color: arrSideColor }">]</span>
<span v-if="!props.isLast" :style="{ color: mainColor }">&nbsp;,</span>
</div>
</div>
</template>
<style lang="scss" scoped>
.obj-side-start {
// padding: 0 8px;
.icon-action {
&:hover {
cursor: pointer;
}
}
}
.obj-side-end {
// padding: 0 8px;
}
.hide-text {
position: absolute;
top: 0;
left: 46px;
&::after {
position: absolute;
content: ']';
right: -8px;
}
}
</style>
<!--
* @FileDescription: JSON 文本 预览组件
* @Date: 2023-05-29
* @LastEditTime: 2023-05-29
-->
<script setup lang="ts">
interface IDetailProps {
data: any;
isLast?: boolean;
mainColor?: string;
objSideColor?: string;
arrSideColor?: string;
stringColor?: string;
numberColor?: string;
booleanColor?: string;
nullColor?: string;
otherColor?: string;
}
const props = withDefaults(defineProps<IDetailProps>(), {
data: () => {
return {};
},
isLast: true,
});
function htmlTranslate(value: any) {
const typeofs = Object.prototype.toString.call(value);
if (typeofs === '[object String]') {
return `"${value}"`;
} else if (typeofs === '[object Null]') {
return 'null';
} else {
return value;
}
}
function getColor(value: any) {
const typeofs = Object.prototype.toString.call(value);
switch (typeofs) {
case '[object Number]':
return props.numberColor; // NaN Infinity 也是Number类型
case '[object String]':
return props.stringColor;
case '[object Boolean]':
return props.booleanColor;
case '[object Null]':
return props.nullColor;
default:
return props.otherColor;
}
}
</script>
<template>
<span style="font-family: 'Gill Sans', sans-serif">
<span :style="{ color: getColor(props.data) }">
{{ htmlTranslate(props.data) }}</span
>
<span v-if="!props.isLast" :style="{ color: mainColor }">&nbsp;,</span>
</span>
</template>
<style lang="scss" scoped></style>
<!--
* @FileDescription: JSON 对象 预览组件
* @Date: 2023-05-29
* @LastEditTime: 2023-05-29
-->
<script setup lang="ts">
import { ref } from 'vue';
import ArrView from './ArrView.vue';
import HtmlView from './HtmlView.vue';
import { isArray, isLastObj, isLastArr, isObject } from '../utils';
interface IDetailProps {
data: any;
isLast?: boolean;
nest?: boolean;
mainColor?: string;
objSideColor?: string;
arrSideColor?: string;
stringColor?: string;
numberColor?: string;
booleanColor?: string;
nullColor?: string;
otherColor?: string;
}
const props = withDefaults(defineProps<IDetailProps>(), {
data: () => {
return {};
},
isLast: true,
nest: false,
});
const show = ref(true);
function clickStart() {
show.value = !show.value;
}
</script>
<template>
<div
style="font-family: 'Gill Sans', sans-serif; position: relative"
:style="{ paddingLeft: props.nest ? '16px' : 0 }"
>
<div :style="{ color: objSideColor }" class="obj-side-start">
<q-icon
:name="show ? 'bi-dash-square' : 'bi-plus-square'"
@click="clickStart"
class="icon-action"
/>
&nbsp;{
</div>
<div class="json-fa" v-show="show">
<template v-for="(item, key1, index) in props.data" :key="key1">
<div v-if="isArray(item) && item.length > 0">
<div :style="{ color: mainColor }">"{{ key1 }}":</div>
<arr-view
v-bind="props"
:data="item"
:is-last="isLastArr(index, props.data)"
class="childrens"
/>
</div>
<div v-else-if="isObject(item) && Object.keys(item).length > 0">
<div :style="{ color: mainColor }">"{{ key1 }}":</div>
<obj-view
v-bind="props"
:data="item"
:is-last="isLastObj(index, props.data)"
:nest="true"
/>
</div>
<div v-else>
<span :style="{ color: mainColor }"> "{{ key1 }}"&nbsp;:&nbsp;</span>
<html-view
v-bind="props"
:data="item"
:is-last="isLastObj(index, props.data)"
/>
</div>
</template>
</div>
<div
v-show="!show"
class="hide-text"
:style="{ color: objSideColor, left: props.nest ? '48px' : '32px' }"
>
...
</div>
<div class="obj-side-end" v-show="show">
<span :style="{ color: objSideColor }">}</span>
<span v-if="!props.isLast" :style="{ color: mainColor }">&nbsp;,</span>
</div>
</div>
</template>
<style lang="scss" scoped>
.json-fa {
padding-left: 16px;
}
.childrens {
padding-left: 16px;
}
.obj-side-start {
// padding: 0 8px;
.icon-action {
&:hover {
cursor: pointer;
}
}
}
.obj-side-end {
// padding: 0 8px;
}
.hide-text {
position: absolute;
top: 0;
&::after {
position: absolute;
content: '}';
right: -8px;
}
}
</style>
export function isObject(data: any) {
const typeofs = Object.prototype.toString.call(data);
if (typeofs === '[object Object]') {
return true;
} else {
return false;
}
}
export function isArray(data: any) {
const typeofs = Object.prototype.toString.call(data);
if (typeofs === '[object Array]') {
return true;
} else {
return false;
}
}
export function isLastArr(index: any, data: any) {
const len = data.length;
if (index === len - 1) {
return true;
} else {
return false;
}
}
export function isLastObj(index: any, data: any) {
const len = Object.keys(data).length;
if (index === len - 1) {
return true;
} else {
return false;
}
}
......@@ -22,6 +22,7 @@ $padding-xl: ($space-base * 3);
// $primary: #78c0a8;
$primary: rgba(116, 194, 225, 1);
$primary-bg-light: rgba(116, 194, 225, 0.125);
$primary-focus-shadow: rgba(116, 194, 225, 0.35);
$secondary: #26a69a;
$accent: #9c27b0;
......
......@@ -7,14 +7,14 @@
<img
:src="
leftDrawerOpen
? require('./menuListIcons/toggle-left-drawer-show.svg')
: require('./menuListIcons/toggle-left-drawer-hide.svg')
? require('./menuListIcons/kk-left-show.jpg')
: require('./menuListIcons/kk-left-hide.jpg')
"
/>
</q-avatar>
</q-btn>
<q-toolbar-title style="min-width: 140px"> Quasar App </q-toolbar-title>
<q-toolbar-title style="min-width: 140px"> 傲来小神仙 </q-toolbar-title>
<q-tabs
v-model="defaultRouter"
inline-label
......
<script setup lang="ts"></script>
<template>
<div class="top-left-box">
<span>人间草木</span>
<span>两眼空空</span>
</div>
</template>
......
......@@ -98,6 +98,34 @@ export const MenuList = [
link: '/js-page6',
active: false,
},
{
title: 'JSON预览',
caption: '',
icon: require('./menuListIcons/amis.svg'),
link: '/json-view',
active: false,
},
{
title: '二叉树',
caption: '',
icon: require('./menuListIcons/amis.svg'),
link: '/binary-tree',
active: false,
},
{
title: 'MDN Range',
caption: '',
icon: require('./menuListIcons/amis.svg'),
link: '/MDN-Range',
active: false,
},
{
title: '输入框',
caption: '评论输入框',
icon: require('./menuListIcons/amis.svg'),
link: '/review-input-box',
active: false,
},
],
},
{
......
<!--
* @FileDescription: MDN Range
* @Date: 2023-06-05
* @LastEditTime: 2023-06-06
-->
<script setup lang="ts">
import { onMounted, ref } from 'vue';
const _inputRef = ref<any>(null);
// const state = reactive({
// lastEditRange: null as any, // 定义最后光标对象
// });
onMounted(() => {
//
});
function rangeTest() {
let html;
const showRangeDiv = document.getElementById('showRange') as HTMLElement;
const selection = document.getSelection() as Selection;
if (selection.type === 'Range' && selection.rangeCount > 0) {
html = '你选取了' + selection.rangeCount + '段内容<br/>';
for (let i = 0; i < selection.rangeCount; i++) {
let range = selection.getRangeAt(i);
html += '第' + (i + 1) + '段内容为:' + range + '<br/>';
}
showRangeDiv.innerHTML = html;
} else {
showRangeDiv.innerHTML = '你没有选择内容';
}
}
function rangeSet() {
const oP1 = document.getElementById('p1') as HTMLElement;
const oB1 = document.getElementById('b1') as HTMLElement;
const oRange = document.createRange();
oRange.setStart(oB1.firstChild as ChildNode, 2); // 设置range的“起点”
oRange.setEnd(oP1.lastChild as ChildNode, 3); // 设置range的“结束点”
// Range.startContainer 只读;
// 返回包含 Range 开始的节点。【返回的是一个文本节点】
console.log(oRange.startContainer); // 元素oB1.firstChild,文本节点
// Range.startOffset 只读;
// 返回一个数字,表示 Range 在 startContainer 中的起始位置。
console.log(oRange.startOffset); // 2,可看到“起点”在<b id="b1">Hello</b>应是第三个字符
}
// function getCursor() {
// // 编辑框设置焦点
// const inputDom = _inputRef.value;
// inputDom.focus();
// const selection = document.getSelection() as Selection;
// const rangeCount = selection.rangeCount;
// if (rangeCount > 0) {
// // 设置最后光标对象
// state.lastEditRange = selection.getRangeAt(0);
// state.lastEditRange.deleteContents(); // 从 Document 中移除 Range 内容
// console.log('最后光标对象', state.lastEditRange);
// // 创建标签
// const el = document.createElement('span');
// el.innerHTML = '这是我创建的内容';
// // 在 Range 开头插入一个节点
// state.lastEditRange.insertNode(el);
// }
// }
// 插入话题
function insertTopic() {
insertHtmlAtCaret('#');
insertHtmlAtCaret('插入话题');
insertHtmlAtCaret('#');
const range = (window.getSelection() as Selection).getRangeAt(0);
range.selectNodeContents(
range.startContainer.childNodes[range.startOffset - 2]
);
}
// 插入标签
function insertEmoji() {
// 编辑框设置焦点
const inputDom = _inputRef.value;
inputDom.focus();
const selection = document.getSelection() as Selection;
const rangeCount = selection.rangeCount;
if (rangeCount > 0) {
// 设置最后光标对象
let range = selection.getRangeAt(0);
range.deleteContents(); // 从 Document 中移除 Range 内容
// 创建标签
const img = document.createElement('img');
img.setAttribute('class', 'img');
img.src = require('./imgs/angel.png');
img.style.height = '24px';
img.style.width = '24px';
// img.alt = item.label;
// 在 Range 开头插入一个节点
range.insertNode(img);
range = range.cloneRange();
range.setStartAfter(img);
range.collapse(true);
selection.removeAllRanges();
selection.addRange(range);
}
}
function insertHtmlAtCaret(html: any) {
// 编辑框设置焦点
const inputDom = _inputRef.value;
inputDom.focus();
const selection = document.getSelection() as Selection;
const rangeCount = selection.rangeCount;
if (rangeCount > 0) {
// 设置最后光标对象
let range = selection.getRangeAt(0);
range.deleteContents(); // 从 Document 中移除 Range 内容
// 创建标签
const el = document.createElement('span');
el.innerHTML = html;
const frag = document.createDocumentFragment();
let node;
let lastNode;
while ((node = el.firstChild)) {
lastNode = frag.appendChild(node);
}
range.insertNode(frag);
if (lastNode) {
range = range.cloneRange();
range.setStartAfter(lastNode);
range.collapse(true);
selection.removeAllRanges();
selection.addRange(range);
}
}
}
function getVal() {
const re = getDomValue(_inputRef.value);
console.log(re);
}
// 获取纯文本内容
function getDomValue(elem: any) {
let res = '';
Array.from(elem.childNodes).forEach((child: any) => {
if (child.nodeName === '#text') {
res += child.nodeValue;
} else if (child.nodeName === 'BR') {
res += '\n';
} else if (child.nodeName === 'BUTTON') {
res += getDomValue(child);
} else if (child.nodeName === 'IMG') {
res += child.alt;
} else if (child.nodeName === 'DIV') {
res += '\n' + getDomValue(child);
}
});
return res;
}
</script>
<template>
<div class="q-pa-md">
<div class="reference q-pa-md q-mb-md rounded-borders">
<p>参考链接:</p>
<a
href="https://developer.mozilla.org/zh-CN/docs/Web/API/Range"
target="_blank"
rel="noopener noreferrer"
>MDN Range</a
>
<br />
<a
href="http://www.jianshu.com/p/ad2f818cc3b0"
target="_blank"
rel="noopener noreferrer"
>html5之Range对象详解</a
>
<br />
<a
href="https://segmentfault.com/a/1190000005869372"
target="_blank"
rel="noopener noreferrer"
>html元素contenteditable属性如何定位光标和设置光标</a
>
<br />
<a
href="https://juejin.cn/post/6844903793864212494"
target="_blank"
rel="noopener noreferrer"
>div+contenteditable 实现富文本发布框的小结</a
>
</div>
<input type="button" value="点击我" @click="rangeTest" />
<div id="showRange"></div>
<br />
<button @click="rangeSet">点我查看节点</button>
<p id="p1"><span>span</span><b id="b1">Hello</b> World</p>
<br />
<button @click="insertTopic">点我插入话题</button>
<img
src="./imgs/angel.png"
alt=""
style="width: 25px; height: 25px"
@click="insertEmoji"
/>
<button @click="getVal">点我获取纯文本内容</button>
<div class="_input" contenteditable="true" ref="_inputRef">输入文字</div>
</div>
</template>
<style lang="scss" scoped>
.reference {
border: 1px solid $border-color;
background: $primary-bg-light;
}
._input {
min-width: 200px;
min-height: 60px;
font-size: 14px;
padding: 5px 8px;
border: 1px solid #ddd;
}
</style>
export default [
{
path: 'MDN-Range',
name: 'MDN_RANGE',
component: () => import('./MdnRange.vue'),
meta: {
title: 'MDN Range',
permission: ['*'],
keepalive: true,
},
},
];
<!--
* @FileDescription: 用JS做二叉树遍历算法
* https://juejin.cn/post/7028073289943613471
* @Date: 2023-05-29
* @LastEditTime: 2023-05-29
-->
<script setup lang="ts">
import { reactive, onMounted } from 'vue';
import Com from 'src/components';
const state = reactive({
data: {} as any,
});
onMounted(() => {
getData();
});
/**
* 我们用js的对象来表示二叉树
* 对象拥有三个属性,left、value、right,分别是左子树,值和右子树
* 上面 a+b*(c-d)-e/f 的例子我们用js可以这样表示
*/
function getData() {
state.data = {
value: '-',
left: {
value: '+',
left: {
value: 'a',
},
right: {
value: '*',
left: {
value: 'b',
},
right: {
value: '-',
left: {
value: 'c',
},
right: {
value: 'd',
},
},
},
},
right: {
value: '/',
left: {
value: 'e',
},
right: {
value: 'f',
},
},
};
}
</script>
<template>
<div>
<div class="row q-gutter-md">
<div class="img-box">
<img src="./imgs/binary-tree.jpg" />
</div>
<div class="q-gutter-md">
<table>
<thead>
<tr>
<th colspan="3">深度遍历</th>
</tr>
</thead>
<tbody>
<tr>
<th>前序</th>
<td>先访问根,然后访问左子树,最后访问右子树,DLR</td>
<td>-+a*b-cd/ef</td>
</tr>
<tr>
<th>中序</th>
<td>先访问左子树,然后访问根,最后访问右子树,LDR</td>
<td>a+b*c-d-e/f</td>
</tr>
<tr>
<th>后序</th>
<td>先后访问左子树,然后访问右子树,最后访问根,LRD</td>
<td>abcd-*+ef/-</td>
</tr>
</tbody>
</table>
<table>
<thead>
<tr>
<th colspan="3">广度遍历</th>
</tr>
</thead>
<tbody>
<tr>
<th>广度</th>
<td>按层的顺序一层一层遍历</td>
<td>-+/a*efb-cd</td>
</tr>
</tbody>
</table>
</div>
<div class="q-gutter-md">
<p>用js表示二叉树</p>
<Com.JsonView :data="state.data" />
</div>
</div>
</div>
</template>
<style lang="scss" scoped>
.img-box {
width: 350px;
> img {
width: 100%;
}
}
table {
border-collapse: collapse;
border: 1px solid #0d3f67;
color: #0d3f67;
th {
padding: 6px 4px;
font-size: 16px;
min-width: 120px;
border: 1px solid #0d3f67;
}
td {
padding: 6px 16px;
font-size: 16px;
border: 1px solid #0d3f67;
}
}
</style>
export default [
{
path: 'binary-tree',
name: 'BINARY_TREE',
component: () => import('./BinaryTree.vue'),
meta: {
title: '二叉树',
permission: ['*'],
keepalive: true,
},
},
];
<!--
* @FileDescription: JSON 预览
* @Date: 2023-05-16
* @LastEditTime: 2023-05-16
-->
<script setup lang="ts">
import { reactive, onMounted } from 'vue';
import { ComJsonView } from 'src/components';
const state = reactive({
data: {
name: '张三',
age: 28,
isShow: true,
money: null,
www: undefined,
children: [
{ name: '孩子1', age: 3 },
{ name: '孩子2', age: 1 },
'这是一句字符串',
100,
['1F', '2F', { name: '李四' }],
'珠穆朗玛峰',
],
sex: '男',
data: [
{ name: '张三', age: 18 },
{ name: '李四', age: 28 },
],
} as any,
});
onMounted(() => {
console.log('数据', state.data);
});
</script>
<template>
<div>{{ JSON.stringify(state.data) }}</div>
<br />
<div class="box">
<ComJsonView :data="state.data" />
</div>
<br />
</template>
<style lang="scss" scoped>
.box {
width: 500px;
padding: $padding-md;
margin-left: 40px;
border: 1px solid rgba(0, 0, 0, 0.562);
}
</style>
export default [
{
path: 'json-view',
name: 'JSON_VIEW',
component: () => import('./IndexPage.vue'),
meta: {
title: 'JSON预览',
permission: ['*'],
keepalive: true,
},
},
];
<!--
* @FileDescription: 评论输入框
* @Date: 2023-06-06
* @LastEditTime: 2023-06-06
-->
<script setup lang="ts">
import { ref, reactive, nextTick } from 'vue';
const inputRef = ref<any>(null);
const showEmoji = ref(false);
const emojiList = [
{
title: '分组1',
children: [
{
name: 'strawberry',
label: '草莓',
url: require('./emojis/strawberry.png'),
},
{
name: 'watermelon',
label: '西瓜',
url: require('./emojis/watermelon.png'),
},
],
},
{
title: '分组2',
children: [
{
name: 'kiss',
label: '亲亲',
url: require('./emojis/kiss.png'),
},
{
name: 'se',
label: '色',
url: require('./emojis/se.png'),
},
{
name: 'angel',
label: '天使',
url: require('./emojis/angel.png'),
},
{
name: 'reserved',
label: '矜持',
url: require('./emojis/reserved.png'),
},
{
name: 'smile',
label: '微笑',
url: require('./emojis/smile.png'),
},
{
name: 'oh',
label: '哦',
url: require('./emojis/oh.png'),
},
],
},
{
title: '应用',
children: [
{
name: 'QQ',
label: 'QQ',
url: require('./emojis/QQ.png'),
},
{
name: 'WeChat',
label: '微信',
url: require('./emojis/WeChat.png'),
},
],
},
];
const state = reactive({
commentContent: '',
commentContentByUI: '',
canClickIcon: false,
});
function willShow() {
showEmoji.value = !showEmoji.value;
}
// 点击表情
function clikeEmoji(item: any) {
// 编辑框设置焦点
const inputDom = inputRef.value;
inputDom.focus();
const selection = document.getSelection() as Selection;
const rangeCount = selection.rangeCount;
if (rangeCount > 0) {
// 设置最后光标对象
let range = selection.getRangeAt(0);
range.deleteContents(); // 从 Document 中移除 Range 内容
// 创建标签
const img = document.createElement('img');
img.setAttribute('class', 'input-img');
img.src = item.url;
img.alt = item.label;
img.style.height = '20px';
img.style.width = '20px';
img.style.transform = 'translateY(5px)';
// 在 Range 开头插入一个节点
range.insertNode(img);
range = range.cloneRange();
range.setStartAfter(img);
range.collapse(true);
selection.removeAllRanges();
selection.addRange(range);
}
showEmoji.value = false;
}
// 发表评论
function sendComment() {
const re = formatWord(getDomValue(inputRef.value));
state.commentContent = re;
const strlist = textJoin(re, []);
// console.log('NB', strlist);
const div = document.createElement('div');
div.style.lineHeight = '22px';
for (const ite of strlist) {
if (ite.isHtml) {
div.appendChild(ite.html);
} else {
const list = lineFeed(ite.text, []);
for (const n of list) {
if (n.isHtml) {
div.appendChild(n.html);
} else {
const node = document.createTextNode(n.text);
div.appendChild(node);
}
}
}
}
nextTick(() => {
const outHtml = div.outerHTML;
state.commentContentByUI = outHtml;
});
}
function textJoin(str: string, resArr: any[]) {
const startIndex = str.indexOf('[');
if (startIndex > -1) {
let afterStr = str.substring(startIndex + 1);
let endIndex = afterStr.indexOf(']');
if (endIndex > -1) {
const imgKey = afterStr.substring(0, endIndex);
const imgData = findImg(imgKey);
if (imgData) {
const img = document.createElement('img');
img.setAttribute('class', 'input-img');
img.src = imgData.url;
img.alt = imgData.label;
img.style.height = '26px';
img.style.width = '26px';
img.style.transform = 'translateY(5px)';
resArr.push({
text: str.substring(0, startIndex),
isHtml: false,
});
resArr.push({
html: img,
isHtml: true,
});
textJoin(afterStr.substring(endIndex + 1), resArr);
} else {
resArr.push({
text: str.substring(0, endIndex + 1),
isHtml: false,
});
textJoin(str.substring(endIndex + 1), resArr);
}
} else {
resArr.push({
text: str,
isHtml: false,
});
}
} else {
resArr.push({
text: str,
isHtml: false,
});
}
return resArr;
}
function findImg(imgk: string) {
let data = null as any;
let imgLsit = [] as any[];
for (const i of emojiList) {
imgLsit.push(...i.children);
}
for (const i of imgLsit) {
if (i.label === imgk) {
data = i;
break;
}
}
return data;
}
function inputFocus() {
// console.log('111');
state.canClickIcon = true;
}
function inputBlur() {
// state.canClickIcon = false;
}
// 获取纯文本内容
function getDomValue(elem: any) {
let res = '';
Array.from(elem.childNodes).forEach((child: any) => {
if (child.nodeName === '#text') {
res += child.nodeValue;
} else if (child.nodeName === 'BR') {
// res += '\n';
res += '<br>';
} else if (child.nodeName === 'BUTTON') {
res += getDomValue(child);
} else if (child.nodeName === 'IMG') {
res += '[' + child.alt + ']';
} else if (child.nodeName === 'DIV') {
// res += '\n' + getDomValue(child);
res += '<br>' + getDomValue(child);
}
});
return res;
}
// 换行标签转换
function lineFeed(val: string, arr: any[]) {
const index = val.indexOf('<br>');
if (index > -1) {
const br = document.createElement('br');
arr.push({
isHtml: false,
text: val.substring(0, index),
});
arr.push({
isHtml: true,
html: br,
});
lineFeed(val.substring(index + 4), arr);
} else {
arr.push({
isHtml: false,
text: val,
});
}
return arr;
}
// 文本换行
function formatWord(str: string) {
return str.replace(/\\n/g, '<br>');
}
</script>
<template>
<div class="column justify-center items-center container-height">
<div style="width: 460px">
<div class="avatar-box">
<q-avatar size="38px">
<img src="https://cdn.quasar.dev/img/avatar.png" />
</q-avatar>
<span class="name">皮皮虾</span>
</div>
<div class="input-box">
<div
class="input-sty"
contenteditable="true"
ref="inputRef"
placeholder="输入评论"
@focus="inputFocus"
@blur="inputBlur"
></div>
<div class="operation">
<div class="icon-box">
<q-icon
name="mood"
class="_icon"
size="22px"
@click="willShow"
v-if="state.canClickIcon"
/>
<div class="emoji-box-fa" v-show="showEmoji" id="_emoji">
<div class="emoji-box">
<div class="group-item" v-for="i in emojiList" :key="i.title">
<div class="group-item-title">{{ i.title }}</div>
<div class="childre-box">
<div
class="item-box"
v-for="chi in i.children"
:key="chi.name"
:title="chi.label"
@click="clikeEmoji(chi)"
>
<img :src="chi.url" :alt="chi.label" />
</div>
</div>
</div>
</div>
</div>
</div>
<q-btn
unelevated
color="primary"
label="发表评论"
@click="sendComment"
/>
</div>
</div>
</div>
<div style="width: 460px">
<div>评论内容:</div>
<div v-html="state.commentContentByUI" class="comment-sty"></div>
<div class="q-mt-lg">评论内容:</div>
<div>{{ state.commentContent }}</div>
</div>
</div>
</template>
<style lang="scss" scoped>
.input-sty {
min-width: 200px;
min-height: 80px;
font-size: 14px;
line-height: 22px;
padding: 5px 8px;
border: 1px solid #ddd;
color: $gray-text;
border-radius: 0.25rem;
transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
// transform: translateY(-10px) scale(0.9);
&:empty::before {
content: attr(placeholder);
color: $gray-light-text;
}
&:focus {
color: #212529;
background-color: #fff;
outline: 0;
border-color: $primary;
box-shadow: 0 0 0 0.25rem $primary-focus-shadow;
}
}
.name {
color: rgba(0, 0, 0, 0.55);
padding-left: 6px;
}
.avatar-box {
margin-bottom: 4px;
}
.input-box {
margin-left: 40px;
}
.operation {
padding: 6px 0;
display: flex;
flex-direction: row;
justify-content: space-between;
}
.icon-box {
position: relative;
color: rgba(0, 0, 0, 0.55);
._icon {
color: inherit;
&:hover {
cursor: pointer;
color: $primary;
}
}
.emoji-box-fa {
position: absolute;
padding: 8px;
border-radius: 6px;
top: 26px;
left: 0;
width: 400px;
height: 200px;
z-index: 10;
background: #fff;
box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 12px;
}
.emoji-box {
width: 100%;
height: 100%;
overflow: auto;
color: black;
&:hover {
cursor: default;
}
.group-item-title {
font-size: 12px;
color: $gray-text;
}
.childre-box {
display: flex;
flex-direction: row;
flex-wrap: wrap;
}
.item-box {
width: 40px;
height: 40px;
box-sizing: border-box;
transition: all 0.25s;
> img {
width: 100%;
height: 100%;
}
&:hover {
cursor: pointer;
transform: scale(1.2);
}
}
}
}
.img {
width: 40px;
height: 40px;
}
.comment-sty {
min-height: 80px;
background: rgba(0, 0, 0, 0.05);
border-radius: 0.25rem;
padding: 5px 8px;
color: $gray-text;
}
</style>
export default [
{
path: 'review-input-box',
name: 'REVIEW_INPUT_BOX',
component: () => import('./ReviewInputBox.vue'),
meta: {
title: '输入框',
permission: ['*'],
keepalive: true,
},
},
];
......@@ -9,6 +9,7 @@ export default {
<script setup lang="ts">
import { reactive, onMounted, watch, ref, nextTick, markRaw } from 'vue';
import * as echarts from 'echarts';
import { getType, isEmpty } from 'hcy-tool-test';
// import { useMessage } from 'src/common/hooks';
import PROVICE from './provice';
import { ChartOption, Series_A, Series_B, Series_D } from './config';
......@@ -16,7 +17,6 @@ import DateDetail from './element/DateDetail.vue';
import ImageScale from './element/ImageScale.vue';
import CropperImg from './element/CropperImg.vue';
import InsertCoin from './element/InsertCoin.vue';
// const { info } = useMessage();
const citySelectRef = ref<any>(null);
......@@ -70,6 +70,14 @@ watch(
);
onMounted(() => {
// const mytool = require('hcy-tool-test');
// const mytool = require('./test-utils/index');
const type = getType(123);
console.log(type);
const isE = isEmpty(0);
console.log(isE);
handleData();
setChart();
});
......
......@@ -7,6 +7,9 @@ import { ref } from 'vue';
defineExpose({
openModel,
});
const emit = defineEmits<{
(e: 'onOk', value: any): void;
}>();
const show = ref(false);
const amount = ref(1);
......@@ -18,6 +21,9 @@ function openModel() {
function onClose() {
show.value = false;
}
function onOk() {
emit('onOk', amount);
}
</script>
<template>
<q-dialog v-model="show" persistent>
......@@ -33,12 +39,39 @@ function onClose() {
<q-card-section style="padding-bottom: 8px">
<div class="content" style="width: 100%">
<div class="img-content" style="height: 300px; width: 100%">1</div>
<div class="img-content" style="height: 300px; width: 100%">
<div class="img-cont-box">
<div
class="img-main-box img-main-box-left"
:class="[
amount === 1
? 'img-main-box-active'
: 'img-main-box-unactive',
]"
@click="amount = 1"
>
<div class="background-left"></div>
</div>
</div>
<div class="img-cont-box">
<div
class="img-main-box img-main-box-right"
:class="[
amount === 2
? 'img-main-box-active'
: 'img-main-box-unactive',
]"
@click="amount = 2"
>
<div class="background-right"></div>
</div>
</div>
</div>
<div>
<q-checkbox v-model="giveLike" label="同时点赞内容" />
</div>
<div class="row justify-center">
<q-btn unelevated color="primary" label="确定" />
<q-btn unelevated color="primary" label="确定" @click="onOk" />
</div>
<div class="experience-box row justify-center">
经验值+10(今日20/50)
......@@ -63,7 +96,66 @@ function onClose() {
transform: translateY(-18px);
}
.img-content {
// background-color: bisque;
display: grid;
grid-template-columns: repeat(2, 1fr);
}
.img-cont-box {
padding: 16px;
}
.img-main-box {
border-radius: 8px;
box-sizing: border-box;
width: 100%;
height: 100%;
position: relative;
> div {
width: 100%;
height: 100%;
box-sizing: border-box;
background-repeat: no-repeat;
background-size: contain;
background-position: center;
}
&::before {
position: absolute;
top: 12px;
left: 15px;
font-size: 14px;
}
&:hover {
cursor: pointer;
}
}
.img-main-box-active {
border: 2px solid $primary;
color: $primary;
}
.img-main-box-unactive {
border: 2px dashed rgba(0, 0, 0, 0.2);
color: rgba(0, 0, 0, 0.2);
> div {
filter: grayscale(1);
}
&:hover {
border: 2px dashed $primary;
color: $primary;
}
}
.img-main-box-left {
&::before {
content: '1硬币';
}
}
.background-left {
background: url('../icons/one.svg');
}
.img-main-box-right {
&::before {
content: '2硬币';
}
}
.background-right {
background: url('../icons/two.svg');
}
.experience-box {
font-size: 12px;
......
<?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 height="1024" node-id="1" sillyvg="true" template-height="1024" template-width="1024" version="1.1" viewBox="0 0 1024 1024" width="1024" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><defs node-id="53"></defs><path d="M 394.55 103.71 L 575.90 103.71 L 575.90 285.06 L 394.55 285.06 Z" fill="#02c3ff" fill-rule="nonzero" node-id="55" stroke="none" target-height="181.35" target-width="181.35004" target-x="394.55" target-y="103.71"></path><path d="M 575.90 287.31 L 394.55 287.31 C 393.31 287.31 392.30 286.30 392.30 285.06 L 392.30 103.71 C 392.30 102.47 393.31 101.46 394.55 101.46 L 575.90 101.46 C 577.14 101.46 578.15 102.47 578.15 103.71 L 578.15 285.06 C 578.15 286.30 577.14 287.31 575.90 287.31 Z M 396.80 282.81 L 573.65 282.81 L 573.65 106.00 L 396.80 106.00 Z" fill="#262d33" fill-rule="nonzero" node-id="57" stroke="none" target-height="185.85" target-width="185.85004" target-x="392.3" target-y="101.46"></path><path d="M 394.55 285.06 L 575.90 285.06 L 575.90 466.41 L 394.55 466.41 Z" fill="#02c3ff" fill-rule="nonzero" node-id="59" stroke="none" target-height="181.35" target-width="181.35004" target-x="394.55" target-y="285.06"></path><path d="M 575.90 468.66 L 394.55 468.66 C 393.31 468.66 392.30 467.65 392.30 466.41 L 392.30 285.06 C 392.30 283.82 393.31 282.81 394.55 282.81 L 575.90 282.81 C 577.14 282.81 578.15 283.82 578.15 285.06 L 578.15 466.41 C 578.15 467.65 577.14 468.66 575.90 468.66 Z M 396.80 464.16 L 573.65 464.16 L 573.65 287.31 L 396.80 287.31 Z" fill="#262d33" fill-rule="nonzero" node-id="61" stroke="none" target-height="185.85" target-width="185.85004" target-x="392.3" target-y="282.81"></path><path d="M 394.55 466.41 L 575.90 466.41 L 575.90 647.76 L 394.55 647.76 Z" fill="#02c3ff" fill-rule="nonzero" node-id="63" stroke="none" target-height="181.35" target-width="181.35004" target-x="394.55" target-y="466.41"></path><path d="M 575.90 650.00 L 394.55 650.00 C 393.31 650.00 392.30 648.99 392.30 647.75 L 392.30 466.41 C 392.30 465.17 393.31 464.16 394.55 464.16 L 575.90 464.16 C 577.14 464.16 578.15 465.17 578.15 466.41 L 578.15 647.76 C 578.14 649.00 577.14 650.00 575.90 650.00 Z M 396.80 645.50 L 573.65 645.50 L 573.65 468.66 L 396.80 468.66 Z" fill="#262d33" fill-rule="nonzero" node-id="65" stroke="none" target-height="185.84" target-width="185.85004" target-x="392.3" target-y="464.16"></path><path d="M 439.89 511.75 L 530.56 511.75 L 530.56 602.42 L 439.89 602.42 Z" fill="#0078ff" fill-rule="nonzero" node-id="67" stroke="none" target-height="90.66998" target-width="90.66998" target-x="439.89" target-y="511.75"></path><path d="M 530.56 604.67 L 439.89 604.67 C 438.65 604.67 437.64 603.66 437.64 602.42 L 437.64 511.75 C 437.64 510.51 438.65 509.50 439.89 509.50 L 530.56 509.50 C 531.80 509.50 532.81 510.51 532.81 511.75 L 532.81 602.42 C 532.81 603.66 531.80 604.67 530.56 604.67 Z M 442.14 600.17 L 528.31 600.17 L 528.31 514.00 L 442.14 514.00 Z" fill="#262d33" fill-rule="nonzero" node-id="69" stroke="none" target-height="95.16998" target-width="95.16998" target-x="437.64" target-y="509.5"></path><path d="M 394.55 647.76 L 575.90 647.76 L 575.90 829.11 L 394.55 829.11 Z" fill="#02c3ff" fill-rule="nonzero" node-id="71" stroke="none" target-height="181.34998" target-width="181.35004" target-x="394.55" target-y="647.76"></path><path d="M 575.90 831.36 L 394.55 831.36 C 393.31 831.36 392.30 830.35 392.30 829.11 L 392.30 647.76 C 392.30 646.52 393.31 645.51 394.55 645.51 L 575.90 645.51 C 577.14 645.51 578.15 646.52 578.15 647.76 L 578.15 829.11 C 578.15 830.35 577.14 831.36 575.90 831.36 Z M 396.80 826.86 L 573.65 826.86 L 573.65 650.00 L 396.80 650.00 Z" fill="#262d33" fill-rule="nonzero" node-id="73" stroke="none" target-height="185.84998" target-width="185.85004" target-x="392.3" target-y="645.51"></path><path d="M 213.20 647.76 L 394.55 647.76 L 394.55 829.11 L 213.20 829.11 Z" fill="#02c3ff" fill-rule="nonzero" node-id="75" stroke="none" target-height="181.34998" target-width="181.34999" target-x="213.2" target-y="647.76"></path><path d="M 394.55 831.36 L 213.20 831.36 C 211.96 831.36 210.95 830.35 210.95 829.11 L 210.95 647.76 C 210.95 646.52 211.96 645.51 213.20 645.51 L 394.55 645.51 C 395.79 645.51 396.80 646.52 396.80 647.76 L 396.80 829.11 C 396.80 830.35 395.79 831.36 394.55 831.36 Z M 215.45 826.86 L 392.30 826.86 L 392.30 650.00 L 215.45 650.00 Z" fill="#262d33" fill-rule="nonzero" node-id="77" stroke="none" target-height="185.84998" target-width="185.84999" target-x="210.95" target-y="645.51"></path><path d="M 213.20 647.76 L 394.55 647.76 L 394.55 647.76 L 394.55 738.43 C 394.55 788.51 353.96 829.10 303.88 829.10 L 303.88 829.10 C 253.80 829.10 213.21 788.51 213.21 738.43 L 213.21 647.76 L 213.20 647.76 Z" fill="#fe7236" fill-rule="nonzero" node-id="79" stroke="none" target-height="181.33997" target-width="181.34999" target-x="213.2" target-y="647.76"></path><path d="M 303.87 831.36 C 252.59 831.29 211.04 789.71 211.00 738.43 L 211.00 647.76 C 211.00 646.52 212.01 645.51 213.25 645.51 L 394.55 645.51 C 395.79 645.51 396.80 646.52 396.80 647.76 L 396.80 738.43 C 396.76 789.74 355.18 831.32 303.87 831.36 Z M 215.45 650.00 L 215.45 738.42 C 215.11 770.24 231.89 799.78 259.39 815.79 C 286.89 831.79 320.86 831.79 348.36 815.79 C 375.86 799.78 392.64 770.24 392.30 738.42 L 392.30 650.00 Z" fill="#262d33" fill-rule="nonzero" node-id="81" stroke="none" target-height="185.84998" target-width="185.79999" target-x="211" target-y="645.51"></path><path d="M 575.90 829.11 L 575.90 768.36 L 636.35 768.36 L 636.35 708.21 L 696.79 708.21 L 696.79 647.76 L 757.25 647.76 L 757.25 829.11 L 636.65 829.11 L 575.90 829.11" fill="#02c3ff" fill-rule="nonzero" node-id="83" stroke="none" target-height="181.34998" target-width="181.34998" target-x="575.9" target-y="647.76"></path><path d="M 757.25 831.36 L 575.90 831.36 C 574.66 831.36 573.65 830.35 573.65 829.11 L 573.65 768.36 C 573.65 767.12 574.66 766.11 575.90 766.11 L 634.10 766.11 L 634.10 708.21 C 634.10 706.97 635.11 705.96 636.35 705.96 L 694.55 705.96 L 694.55 647.76 C 694.55 646.52 695.56 645.51 696.80 645.51 L 757.25 645.51 C 758.49 645.51 759.50 646.52 759.50 647.76 L 759.50 829.11 C 759.50 830.35 758.49 831.36 757.25 831.36 Z M 578.15 826.86 L 755.00 826.86 L 755.00 650.00 L 699.00 650.00 L 699.00 708.20 C 699.00 709.44 697.99 710.45 696.75 710.45 L 638.60 710.45 L 638.60 768.35 C 638.60 769.59 637.59 770.60 636.35 770.60 L 578.15 770.60 Z" fill="#262d33" fill-rule="nonzero" node-id="85" stroke="none" target-height="185.84998" target-width="185.84998" target-x="573.65" target-y="645.51"></path><path d="M 394.55 103.71 L 394.55 285.06 L 213.20 285.06 C 213.20 218.87 280.96 222.13 280.96 222.13 C 280.96 222.13 343.85 227.94 343.85 162.99 C 343.85 112.53 374.47 104.70 388.12 103.71 Z" fill="#ffa836" fill-rule="nonzero" node-id="87" stroke="none" target-height="181.35" target-width="181.34999" target-x="213.2" target-y="103.71"></path><path d="M 394.55 287.31 L 213.20 287.31 C 211.96 287.31 210.95 286.30 210.95 285.06 C 210.95 265.18 216.95 249.40 228.73 238.16 C 249.26 218.59 279.73 219.81 281.07 219.89 C 281.43 219.89 307.89 222.11 325.53 205.99 C 336.20 196.25 341.60 181.78 341.60 162.99 C 341.60 110.49 374.02 102.48 387.96 101.47 L 394.55 101.47 C 395.79 101.47 396.80 102.48 396.80 103.72 L 396.80 285.06 C 396.80 286.30 395.79 287.31 394.55 287.31 Z M 215.48 282.81 L 392.30 282.81 L 392.30 106.00 L 388.20 106.00 C 350.20 108.81 346.10 146.82 346.10 163.00 C 346.10 183.13 340.19 198.72 328.54 209.35 C 309.40 226.81 281.91 224.49 280.75 224.35 C 280.55 224.35 250.93 223.18 231.81 241.42 C 221.39 251.38 215.91 265.29 215.48 282.81 Z" fill="#262d33" fill-rule="nonzero" node-id="89" stroke="none" target-height="185.84" target-width="185.84999" target-x="210.95" target-y="101.47"></path><path d="M 771.09 546.76 L 766.09 549.05 C 766.36 548.80 770.67 544.54 770.46 541.46 C 770.25 538.38 760.46 550.55 760.46 550.55 L 757.79 552.85 L 742.00 566.44 C 741.49 564.44 740.89 562.58 740.26 560.81 C 737.83 553.68 733.79 547.21 728.44 541.91 C 724.09 537.56 718.70 534.39 712.78 532.69 C 711.42 532.22 712.78 529.04 712.78 529.04 C 722.44 529.31 720.37 520.04 719.55 517.27 C 718.20 519.06 715.69 519.50 713.82 518.27 C 707.73 526.14 706.36 521.76 706.36 521.76 C 706.07 522.40 705.59 522.94 704.98 523.29 C 704.98 523.29 705.10 531.51 703.29 531.51 C 701.48 531.51 692.38 530.51 683.19 535.83 C 674.00 541.15 657.44 553.73 669.00 565.31 L 672.52 567.73 L 682.52 563.11 L 675.69 590.26 L 646.34 707.39 L 667.11 707.39 C 667.11 707.39 694.56 610.73 695.48 605.74 C 695.48 605.74 719.31 605.05 733.62 601.19 L 723.18 647.06 L 741.32 647.06 C 741.32 647.06 758.15 603.23 756.11 591.20 C 755.18 585.65 752.11 582.58 745.70 581.12 C 748.91 579.45 751.84 577.29 754.40 574.73 C 760.53 568.94 768.40 552.37 768.40 552.37 C 768.40 552.37 775.00 551.80 776.47 548.05 C 777.41 545.11 777.99 542.07 778.21 538.99 Z M 714.74 580.88 L 717.80 571.07 L 721.07 560.56 C 721.67 561.97 722.93 564.80 724.58 568.00 C 726.81 572.35 729.78 577.34 732.68 580.07 C 727.70 580.09 721.76 580.39 714.74 580.88 Z" fill="#fbf5f0" fill-rule="nonzero" node-id="91" stroke="none" target-height="190.12" target-width="131.87" target-x="646.34" target-y="517.27"></path><path d="M 667.12 708.89 L 646.34 708.89 C 645.88 708.89 645.44 708.68 645.16 708.32 C 644.87 707.95 644.77 707.48 644.88 707.03 L 680.36 565.78 L 673.17 569.09 C 672.69 569.31 672.14 569.26 671.70 568.97 L 668.17 566.55 C 668.09 566.50 668.02 566.44 667.96 566.37 C 664.58 562.99 663.13 559.25 663.66 555.23 C 664.92 545.61 677.23 537.52 682.46 534.49 C 688.60 531.09 695.60 529.54 702.60 530.00 L 702.84 530.00 C 703.38 527.82 703.60 525.57 703.50 523.32 C 703.49 522.80 703.76 522.30 704.20 522.02 C 704.54 521.83 704.82 521.54 705.00 521.19 C 705.24 520.60 705.82 520.23 706.45 520.26 C 707.08 520.29 707.63 520.71 707.82 521.31 L 707.82 521.31 C 707.82 521.31 707.89 521.46 707.97 521.47 C 708.05 521.48 709.35 521.62 712.65 517.35 C 713.14 516.72 714.04 516.58 714.70 517.04 C 715.93 517.85 717.59 517.54 718.44 516.33 C 718.80 515.91 719.35 515.72 719.89 515.84 C 720.41 515.95 720.84 516.33 721.01 516.84 C 721.79 519.48 722.72 524.40 720.21 527.66 C 718.65 529.53 716.31 530.59 713.87 530.53 C 713.79 530.81 713.73 531.10 713.70 531.39 C 719.65 533.21 725.08 536.45 729.51 540.83 C 735.01 546.30 739.18 552.96 741.70 560.30 C 742.12 561.50 742.50 562.65 742.83 563.76 L 759.34 549.51 C 767.95 538.71 769.72 539.26 770.57 539.51 C 771.36 539.78 771.89 540.52 771.91 541.35 C 771.95 542.35 771.75 543.34 771.34 544.25 L 777.07 537.97 C 777.50 537.49 778.19 537.33 778.78 537.59 C 779.37 537.85 779.73 538.46 779.67 539.10 C 779.44 542.32 778.82 545.50 777.83 548.58 C 776.37 552.31 771.44 553.43 769.36 553.75 C 767.73 557.10 761.01 570.54 755.43 575.81 C 753.58 577.61 751.57 579.24 749.43 580.69 C 754.16 582.56 756.71 585.83 757.57 590.95 C 759.65 603.24 743.39 645.79 742.70 647.59 C 742.49 648.18 741.93 648.58 741.30 648.59 L 723.18 648.59 C 722.72 648.59 722.28 648.37 722.00 648.00 C 721.72 647.64 721.61 647.18 721.71 646.73 L 731.61 603.24 C 718.98 606.17 701.37 607.02 696.67 607.24 C 693.67 619.24 669.67 704.07 668.55 707.84 C 668.35 708.46 667.77 708.89 667.12 708.89 Z M 648.26 705.89 L 666.00 705.89 C 669.00 695.21 693.18 610.05 694.00 605.47 C 694.13 604.77 694.72 604.26 695.43 604.24 C 695.67 604.24 719.26 603.51 733.24 599.74 C 733.75 599.61 734.28 599.75 734.66 600.11 C 735.04 600.48 735.20 601.01 735.09 601.53 L 725.09 645.53 L 740.31 645.53 C 742.75 639.06 756.45 601.95 754.66 591.42 C 753.82 586.42 751.14 583.86 745.40 582.56 C 744.77 582.42 744.30 581.90 744.23 581.26 C 744.16 580.63 744.50 580.01 745.08 579.74 C 748.15 578.14 750.96 576.08 753.40 573.62 C 759.26 568.08 766.96 551.86 767.04 551.70 C 767.26 551.22 767.73 550.89 768.26 550.84 C 769.84 550.70 774.15 549.84 775.07 547.47 C 775.52 546.17 775.85 544.83 776.07 543.47 L 772.22 547.69 C 772.09 547.84 771.92 547.96 771.74 548.04 L 766.74 550.34 C 766.10 550.61 765.36 550.41 764.95 549.85 C 764.54 549.30 764.56 548.53 765.00 548.00 C 766.16 546.88 767.16 545.61 768.00 544.23 C 765.73 546.55 763.59 548.99 761.58 551.53 C 761.52 551.60 761.46 551.67 761.39 551.73 L 743.00 567.57 C 742.61 567.91 742.07 568.03 741.58 567.87 C 741.09 567.71 740.71 567.31 740.58 566.81 C 740.13 565.07 739.58 563.27 738.88 561.32 C 736.52 554.41 732.60 548.14 727.42 543.00 C 723.29 538.90 718.21 535.88 712.64 534.21 L 712.36 534.13 C 711.73 533.92 711.22 533.46 710.95 532.85 C 710.30 531.40 711.07 529.30 711.43 528.46 C 711.67 527.91 712.21 527.55 712.81 527.55 L 712.81 527.55 C 715.17 527.65 716.87 527.05 717.81 525.84 C 719.02 524.28 718.93 521.79 718.62 519.91 C 717.25 520.57 715.67 520.65 714.24 520.12 C 711.54 523.38 709.35 524.74 707.41 524.40 C 707.09 524.34 706.78 524.23 706.49 524.08 C 706.49 526.85 706.22 530.91 704.84 532.31 C 704.44 532.74 703.88 532.98 703.29 532.98 L 702.45 532.98 C 696.03 532.54 689.62 533.96 684.00 537.09 C 680.22 539.28 667.79 547.09 666.67 555.62 C 666.27 558.62 667.37 561.46 670.02 564.16 L 672.73 566.01 L 681.99 561.74 C 682.52 561.50 683.13 561.59 683.58 561.95 C 684.02 562.32 684.21 562.91 684.07 563.47 Z M 771.09 546.76 L 771.09 546.76 Z M 714.74 582.38 C 714.26 582.38 713.81 582.16 713.53 581.77 C 713.25 581.39 713.17 580.89 713.31 580.44 L 719.64 560.11 C 719.82 559.51 720.36 559.09 720.99 559.06 C 721.62 559.04 722.20 559.40 722.45 559.97 C 722.91 561.04 724.15 563.90 725.91 567.31 C 727.91 571.13 730.82 576.31 733.71 578.98 C 734.15 579.40 734.30 580.04 734.08 580.61 C 733.86 581.18 733.32 581.56 732.71 581.57 C 728.15 581.57 722.49 581.84 714.88 582.38 Z M 721.33 564.79 L 716.82 579.24 C 721.77 578.91 725.82 578.70 729.37 578.62 C 727.03 575.50 724.98 572.17 723.24 568.68 C 722.51 567.26 721.87 565.94 721.33 564.79 Z" fill="#262d33" fill-rule="nonzero" node-id="93" stroke="none" target-height="193.04999" target-width="134.80042" target-x="644.86957" target-y="515.84"></path><path d="M 720.93 515.08 C 720.58 515.86 720.12 516.59 719.57 517.25 L 719.57 517.25 C 718.22 519.04 715.71 519.48 713.84 518.25 C 707.75 526.12 706.38 521.74 706.38 521.74 C 706.09 522.38 705.61 522.92 705.00 523.27 C 704.08 523.92 702.93 524.14 701.84 523.88 C 700.75 523.63 699.82 522.91 699.29 521.92 C 697.29 518.41 700.43 516.51 699.44 513.43 C 698.60 510.79 703.29 510.60 704.99 508.66 C 706.69 506.72 709.29 508.56 711.75 507.15 C 714.00 505.87 716.75 508.80 718.29 509.50 C 719.83 510.20 723.81 508.94 720.93 515.08 Z" fill="#0078ff" fill-rule="nonzero" node-id="95" stroke="none" target-height="17.150726" target-width="23.289063" target-x="698.66" target-y="506.8311"></path><path d="M 702.65 525.46 C 700.69 525.47 698.89 524.39 697.99 522.65 C 696.92 520.79 696.81 518.52 697.70 516.57 C 698.12 515.73 698.22 514.78 698.01 513.87 C 697.09 510.96 699.90 509.72 701.57 508.97 C 702.41 508.68 703.19 508.23 703.86 507.65 C 705.23 506.09 706.97 506.15 708.38 506.20 C 709.27 506.33 710.19 506.20 711.01 505.83 C 713.50 504.41 716.01 506.19 717.75 507.37 C 718.13 507.64 718.52 507.89 718.93 508.12 C 719.19 508.19 719.45 508.24 719.72 508.27 C 720.72 508.41 722.29 508.62 723.06 510.03 C 723.83 511.44 723.53 513.08 722.29 515.72 L 722.29 515.72 C 721.90 516.58 721.40 517.38 720.81 518.11 C 720.78 518.16 720.74 518.21 720.70 518.25 C 719.19 520.21 716.58 520.96 714.26 520.11 C 711.56 523.37 709.37 524.73 707.43 524.39 C 707.08 524.33 706.74 524.21 706.43 524.04 C 706.22 524.22 706.00 524.38 705.77 524.52 C 704.84 525.12 703.76 525.45 702.65 525.46 Z M 707.58 509.19 C 706.81 509.19 706.43 509.28 706.12 509.63 C 705.17 510.55 704.03 511.26 702.79 511.71 C 702.16 512.00 700.98 512.52 700.84 512.83 C 701.28 514.38 701.18 516.04 700.54 517.52 C 700.09 518.88 699.79 519.78 700.59 521.15 C 700.89 521.76 701.44 522.21 702.09 522.39 C 702.82 522.54 703.58 522.39 704.20 521.99 C 704.54 521.79 704.82 521.50 705.00 521.15 C 705.24 520.56 705.82 520.19 706.45 520.22 C 707.08 520.25 707.63 520.67 707.82 521.27 L 707.82 521.27 C 707.82 521.27 707.89 521.42 707.97 521.43 C 708.05 521.44 709.35 521.58 712.65 517.31 C 713.14 516.68 714.04 516.54 714.70 517.00 C 715.89 517.79 717.49 517.53 718.35 516.39 C 718.37 516.35 718.40 516.30 718.44 516.27 C 718.90 515.71 719.28 515.10 719.58 514.44 C 720.68 512.09 720.43 511.44 720.43 511.44 C 720.07 511.33 719.70 511.25 719.32 511.22 C 718.76 511.17 718.21 511.04 717.68 510.83 C 717.11 510.54 716.56 510.21 716.04 509.83 C 714.90 509.04 713.34 507.95 712.49 508.43 C 711.19 509.10 709.72 509.37 708.27 509.20 Z M 720.93 515.08 L 720.93 515.08 Z" fill="#262d33" fill-rule="nonzero" node-id="97" stroke="none" target-height="20.124176" target-width="26.326904" target-x="697.1085" target-y="505.33585"></path><path d="M 766.06 550.56 C 765.66 550.56 765.28 550.41 765.00 550.13 C 764.72 549.85 764.56 549.47 764.56 549.07 L 764.56 549.07 C 764.57 548.24 765.24 547.58 766.07 547.58 C 766.89 547.58 767.56 548.26 767.56 549.08 C 767.56 549.91 766.89 550.58 766.06 550.58 Z" fill="#262d33" fill-rule="nonzero" node-id="99" stroke="none" target-height="3" target-width="2.999939" target-x="764.56" target-y="547.58"></path><path d="M 732.68 580.07 C 737.04 579.92 741.40 580.26 745.68 581.07" fill="#02c3ff" fill-rule="nonzero" node-id="101" stroke="none" target-height="1" target-width="13" target-x="732.68" target-y="580.07"></path><path d="M 745.70 582.62 C 745.59 582.63 745.48 582.63 745.37 582.62 C 741.19 581.82 736.94 581.49 732.69 581.62 L 732.69 581.62 C 731.86 581.62 731.19 580.95 731.19 580.12 C 731.19 579.29 731.86 578.62 732.69 578.62 C 737.15 578.47 741.62 578.81 746.00 579.66 C 746.83 579.75 747.43 580.50 747.33 581.33 C 747.24 582.15 746.50 582.75 745.67 582.66 Z" fill="#262d33" fill-rule="nonzero" node-id="103" stroke="none" target-height="4.039978" target-width="16.14502" target-x="731.19" target-y="578.62"></path><path d="M 714.74 580.88 C 712.38 581.05 709.89 581.23 707.28 581.44" fill="#02c3ff" fill-rule="nonzero" node-id="105" stroke="none" target-height="0.55999756" target-width="7.459961" target-x="707.28" target-y="580.88"></path><path d="M 707.28 582.94 C 706.45 582.97 705.75 582.33 705.72 581.50 C 705.69 580.67 706.33 579.97 707.16 579.94 C 709.78 579.73 712.27 579.54 714.64 579.39 C 715.46 579.35 716.16 579.96 716.24 580.78 C 716.29 581.61 715.67 582.32 714.84 582.38 C 712.49 582.54 710.01 582.72 707.40 582.93 Z" fill="#262d33" fill-rule="nonzero" node-id="107" stroke="none" target-height="3.5499878" target-width="10.52002" target-x="705.72" target-y="579.39"></path><path d="M 685.16 552.82 L 682.58 563.11" fill="#02c3ff" fill-rule="nonzero" node-id="109" stroke="none" target-height="10.289978" target-width="2.579956" target-x="682.58" target-y="552.82"></path><path d="M 682.58 564.61 C 682.46 564.61 682.33 564.59 682.21 564.56 C 681.82 564.46 681.49 564.22 681.29 563.88 C 681.08 563.53 681.02 563.13 681.12 562.74 L 683.70 552.45 C 683.91 551.65 684.72 551.16 685.52 551.36 C 685.91 551.45 686.24 551.70 686.45 552.04 C 686.65 552.38 686.71 552.79 686.61 553.18 L 684.00 563.47 C 683.84 564.13 683.26 564.59 682.58 564.61 Z" fill="#262d33" fill-rule="nonzero" node-id="111" stroke="none" target-height="13.27417" target-width="5.5508423" target-x="681.0911" target-y="551.3358"></path><path d="M 722.49 556.00 L 721.07 560.56" fill="#02c3ff" fill-rule="nonzero" node-id="113" stroke="none" target-height="4.5599976" target-width="1.4199829" target-x="721.07" target-y="556"></path><path d="M 721.07 562.06 C 720.92 562.06 720.77 562.03 720.62 561.99 C 720.24 561.87 719.92 561.61 719.73 561.26 C 719.54 560.91 719.50 560.49 719.62 560.11 L 721.04 555.55 C 721.29 554.76 722.13 554.31 722.92 554.56 C 723.71 554.81 724.16 555.65 723.91 556.44 L 722.50 561.00 C 722.31 561.63 721.73 562.06 721.07 562.06 Z" fill="#262d33" fill-rule="nonzero" node-id="115" stroke="none" target-height="7.5599976" target-width="4.4105225" target-x="719.5595" target-y="554.5"></path><path d="M 724.58 568.00 L 717.80 571.07 L 721.07 560.56 C 721.67 562.00 722.93 564.80 724.58 568.00 Z" fill="#ffa836" fill-rule="nonzero" node-id="117" stroke="none" target-height="10.51001" target-width="6.7800293" target-x="717.8" target-y="560.56"></path><path d="M 717.80 572.57 C 717.43 572.57 717.08 572.44 716.80 572.20 C 716.35 571.81 716.18 571.19 716.36 570.63 L 719.63 560.11 C 719.81 559.51 720.35 559.09 720.98 559.06 C 721.61 559.04 722.19 559.40 722.44 559.97 C 722.90 561.04 724.14 563.90 725.90 567.31 C 726.09 567.67 726.13 568.10 725.99 568.49 C 725.86 568.88 725.57 569.19 725.19 569.36 L 718.41 572.44 C 718.22 572.53 718.01 572.57 717.80 572.57 Z M 721.33 564.79 L 720.23 568.32 L 722.53 567.32 C 722.09 566.39 721.68 565.55 721.33 564.79 Z" fill="#262d33" fill-rule="nonzero" node-id="119" stroke="none" target-height="13.51001" target-width="9.7247925" target-x="716.3443" target-y="559.06"></path><path d="M 682.58 563.11 L 675.75 590.26 L 669.70 593.02 L 660.70 573.20 L 672.54 567.73 L 682.58 563.11 Z" fill="#ffa836" fill-rule="nonzero" node-id="121" stroke="none" target-height="29.910034" target-width="21.880005" target-x="660.7" target-y="563.11"></path><path d="M 669.69 594.52 C 669.51 594.52 669.34 594.49 669.17 594.42 C 668.80 594.28 668.50 594.00 668.33 593.64 L 659.33 573.82 C 659.16 573.46 659.14 573.04 659.28 572.67 C 659.42 572.29 659.70 571.99 660.06 571.82 L 682.00 561.74 C 682.53 561.50 683.14 561.59 683.59 561.95 C 684.03 562.32 684.22 562.91 684.08 563.47 L 677.26 590.62 C 677.15 591.06 676.85 591.43 676.43 591.62 L 670.37 594.38 C 670.16 594.48 669.92 594.53 669.69 594.52 Z M 662.69 573.94 L 670.44 591.00 L 674.44 589.16 L 680.32 565.75 Z" fill="#262d33" fill-rule="nonzero" node-id="123" stroke="none" target-height="32.900146" target-width="24.890808" target-x="659.1892" target-y="561.6199"></path><path d="M 682.59 563.09 L 682.58 563.11" fill="#02c3ff" fill-rule="nonzero" node-id="125" stroke="none" target-height="0.019958496" target-width="0.010009766" target-x="682.58" target-y="563.09"></path><path d="M 682.58 564.61 C 682.18 564.61 681.80 564.45 681.52 564.17 C 681.09 563.74 680.96 563.09 681.19 562.52 C 681.42 561.96 681.97 561.59 682.59 561.59 C 683.20 561.59 683.75 561.96 683.98 562.52 C 684.21 563.09 684.08 563.74 683.65 564.17 L 683.65 564.17 C 683.37 564.45 682.98 564.61 682.58 564.61 Z" fill="#262d33" fill-rule="nonzero" node-id="127" stroke="none" target-height="3.0204468" target-width="2.9608154" target-x="681.10455" target-y="561.58954"></path><path d="M 669.69 593.00 L 663.14 596.00 C 662.02 596.52 660.74 596.56 659.58 596.13 C 658.42 595.70 657.48 594.83 656.97 593.71 L 651.80 582.41 C 650.73 580.08 651.75 577.32 654.08 576.25 L 660.69 573.25 Z" fill="#0078ff" fill-rule="nonzero" node-id="129" stroke="none" target-height="23.155151" target-width="18.294006" target-x="651.396" target-y="573.25"></path><path d="M 661.20 597.93 C 658.79 597.92 656.61 596.52 655.61 594.33 L 650.44 583.00 C 649.04 579.92 650.38 576.29 653.44 574.85 L 660.06 571.85 C 660.43 571.69 660.84 571.69 661.21 571.85 C 661.58 571.99 661.88 572.27 662.05 572.63 L 671.05 592.45 C 671.22 592.81 671.24 593.23 671.10 593.60 C 670.96 593.98 670.67 594.28 670.31 594.45 L 663.75 597.45 C 662.94 597.79 662.07 597.95 661.20 597.93 Z M 660.00 575.19 L 654.76 577.61 C 653.19 578.35 652.50 580.21 653.22 581.79 L 658.39 593.08 C 659.12 594.66 660.98 595.36 662.57 594.64 L 667.76 592.27 Z" fill="#262d33" fill-rule="nonzero" node-id="131" stroke="none" target-height="26.196228" target-width="21.277649" target-x="649.9117" target-y="571.73376"></path><path d="M 675.77 591.76 L 675.77 591.76 C 674.94 591.75 674.28 591.08 674.28 590.25 C 674.28 589.43 674.96 588.76 675.78 588.76 C 676.61 588.76 677.28 589.43 677.28 590.26 C 677.28 590.66 677.12 591.05 676.83 591.33 C 676.54 591.61 676.15 591.77 675.75 591.76 Z" fill="#262d33" fill-rule="nonzero" node-id="133" stroke="none" target-height="3" target-width="3" target-x="674.28" target-y="588.76"></path><path d="M 786.90 529.39 L 778.17 538.99 L 771.09 546.76 L 766.09 549.05 C 766.36 548.80 770.67 544.54 770.46 541.46 C 770.25 538.38 760.46 550.55 760.46 550.55 L 757.79 552.85 L 740.31 560.85 C 737.88 553.72 733.84 547.25 728.49 541.95 L 761.70 526.62 L 784.77 524.78 C 784.18 526.64 785.10 528.64 786.90 529.39 Z" fill="#ffa836" fill-rule="nonzero" node-id="135" stroke="none" target-height="36.069946" target-width="58.410034" target-x="728.49" target-y="524.78"></path><path d="M 740.28 562.31 C 740.08 562.31 739.89 562.27 739.70 562.20 C 739.31 562.03 739.01 561.71 738.87 561.32 C 736.52 554.41 732.60 548.14 727.42 543.00 C 727.06 542.66 726.89 542.16 726.98 541.67 C 727.06 541.18 727.39 540.76 727.84 540.56 L 761.05 525.23 C 761.21 525.16 761.38 525.11 761.56 525.10 L 784.62 523.25 C 785.11 523.21 785.59 523.41 785.90 523.79 C 786.22 524.17 786.32 524.68 786.19 525.15 C 785.97 525.70 785.99 526.31 786.23 526.85 C 786.47 527.39 786.92 527.81 787.48 528.01 C 787.93 528.20 788.26 528.59 788.37 529.07 C 788.48 529.55 788.34 530.05 788.01 530.41 L 772.20 547.77 C 772.07 547.92 771.90 548.04 771.72 548.12 L 766.72 550.42 C 766.06 550.76 765.24 550.56 764.81 549.95 C 764.38 549.35 764.46 548.51 765.00 548.00 C 766.15 546.88 767.16 545.61 768.00 544.24 C 765.73 546.55 763.59 548.99 761.58 551.53 C 761.52 551.60 761.46 551.67 761.39 551.73 L 758.72 554.03 C 758.61 554.12 758.49 554.19 758.36 554.25 L 740.89 562.25 C 740.69 562.31 740.49 562.33 740.28 562.31 Z M 731.00 542.38 C 735.39 547.15 738.81 552.72 741.09 558.78 L 756.91 551.57 L 759.31 549.51 C 767.92 538.71 769.69 539.26 770.54 539.51 C 771.33 539.78 771.86 540.52 771.88 541.35 C 771.92 542.35 771.72 543.34 771.31 544.25 L 784.58 529.67 C 783.68 528.80 783.13 527.62 783.06 526.36 L 762.06 528.05 Z" fill="#262d33" fill-rule="nonzero" node-id="137" stroke="none" target-height="39.059998" target-width="61.391052" target-x="726.9788" target-y="523.25"></path><path d="M 791.66 524.17 L 786.90 529.39 C 785.07 528.65 784.13 526.62 784.74 524.74 L 784.74 524.74 Z" fill="#0078ff" fill-rule="nonzero" node-id="139" stroke="none" target-height="5.2200317" target-width="7.097351" target-x="784.5626" target-y="524.17"></path><path d="M 786.90 530.89 C 786.70 530.89 786.51 530.85 786.33 530.77 C 783.78 529.76 782.47 526.93 783.33 524.33 C 783.51 523.68 784.10 523.24 784.77 523.24 L 791.57 522.67 C 792.18 522.63 792.76 522.96 793.04 523.51 C 793.31 524.06 793.21 524.72 792.80 525.18 L 788.00 530.40 C 787.72 530.71 787.32 530.89 786.90 530.89 Z M 786.06 526.13 C 786.08 526.63 786.28 527.10 786.63 527.46 L 788.00 526.00 Z" fill="#262d33" fill-rule="nonzero" node-id="141" stroke="none" target-height="8.220032" target-width="10.095642" target-x="783.07935" target-y="522.67"></path><path d="M 766.06 550.56 C 765.66 550.56 765.28 550.41 765.00 550.13 C 764.72 549.85 764.56 549.47 764.56 549.07 L 764.56 549.07 C 764.57 548.24 765.24 547.58 766.07 547.58 C 766.89 547.58 767.56 548.26 767.56 549.08 C 767.56 549.91 766.89 550.58 766.06 550.58 Z" fill="#262d33" fill-rule="nonzero" node-id="143" stroke="none" target-height="3" target-width="2.999939" target-x="764.56" target-y="547.58"></path><path d="M 660.69 574.70 C 659.86 574.70 659.19 574.03 659.19 573.20 L 659.19 573.20 C 659.20 572.37 659.87 571.71 660.70 571.71 C 661.52 571.71 662.19 572.39 662.19 573.21 C 662.19 574.04 661.52 574.71 660.69 574.71 Z" fill="#262d33" fill-rule="nonzero" node-id="145" stroke="none" target-height="3" target-width="2.999939" target-x="659.19" target-y="571.71"></path><path d="M 784.76 526.23 C 784.36 526.23 783.98 526.08 783.70 525.80 C 783.42 525.52 783.26 525.14 783.26 524.74 L 783.26 524.74 C 783.27 523.91 783.94 523.25 784.77 523.25 C 785.59 523.25 786.26 523.93 786.26 524.75 C 786.26 525.58 785.59 526.25 784.76 526.25 Z" fill="#262d33" fill-rule="nonzero" node-id="147" stroke="none" target-height="3" target-width="2.999939" target-x="783.26" target-y="523.25"></path></svg>
\ No newline at end of file
<?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 height="1024" node-id="1" sillyvg="true" template-height="1024" template-width="1024" version="1.1" viewBox="0 0 1024 1024" width="1024" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><defs node-id="50"></defs><path d="M 784.82 701.78 L 784.82 874.70 L 429.42 874.70 L 438.98 861.53 L 555.04 701.78 L 784.82 701.78 Z" fill="#02c3ff" fill-rule="nonzero" node-id="52" stroke="none" target-height="172.91998" target-width="355.4" target-x="429.42" target-y="701.78"></path><path d="M 784.82 877.00 L 429.42 877.00 C 428.57 877.00 427.80 876.52 427.42 875.77 C 427.03 875.02 427.10 874.11 427.60 873.43 L 553.22 700.46 C 553.64 699.88 554.32 699.53 555.04 699.53 L 784.82 699.53 C 786.06 699.53 787.07 700.54 787.07 701.78 L 787.07 874.70 C 787.08 875.31 786.85 875.89 786.43 876.32 C 786.01 876.76 785.43 877.00 784.82 877.00 Z M 433.82 872.50 L 782.57 872.50 L 782.57 704.00 L 556.19 704.00 Z" fill="#262d33" fill-rule="nonzero" node-id="54" stroke="none" target-height="177.46997" target-width="359.88574" target-x="427.18427" target-y="699.53"></path><path d="M 698.36 701.78 L 698.36 701.78 C 746.11 701.78 784.82 740.49 784.82 788.24 L 784.82 788.24 C 784.82 835.99 746.11 874.70 698.36 874.70 L 698.36 874.70 C 650.61 874.70 611.90 835.99 611.90 788.24 L 611.90 788.24 C 611.90 740.49 650.61 701.78 698.36 701.78 Z" fill="#ffa836" fill-rule="nonzero" node-id="56" stroke="none" target-height="172.91998" target-width="172.91998" target-x="611.9" target-y="701.78"></path><path d="M 698.36 877.00 C 649.37 877.00 609.65 837.28 609.65 788.29 C 609.65 739.30 649.37 699.58 698.36 699.58 C 747.35 699.58 787.07 739.30 787.07 788.29 C 787.01 837.26 747.33 876.94 698.36 877.00 Z M 698.36 704.08 C 651.85 704.08 614.15 741.78 614.15 788.29 C 614.15 834.80 651.85 872.50 698.36 872.50 L 698.36 872.50 C 744.87 872.50 782.57 834.80 782.57 788.29 C 782.57 741.78 744.87 704.08 698.36 704.08 Z" fill="#262d33" fill-rule="nonzero" node-id="58" stroke="none" target-height="177.41998" target-width="177.41998" target-x="609.65" target-y="699.58"></path><path d="M 705.00 495.42 C 701.14 501.30 697.01 506.98 692.61 512.47 Z" fill="#02c3ff" fill-rule="nonzero" node-id="60" stroke="none" target-height="17.049957" target-width="12.390015" target-x="692.61" target-y="495.42"></path><path d="M 692.59 514.72 C 691.74 514.71 690.97 514.24 690.59 513.48 C 690.21 512.73 690.28 511.83 690.77 511.14 L 703.16 494.09 C 703.88 493.09 705.26 492.85 706.27 493.55 C 707.28 494.25 707.54 495.63 706.86 496.65 C 702.97 502.57 698.76 508.36 694.35 513.87 C 693.93 514.41 693.28 514.72 692.59 514.72 Z" fill="#262d33" fill-rule="nonzero" node-id="62" stroke="none" target-height="21.53418" target-width="16.846497" target-x="690.35114" target-y="493.1858"></path><path d="M 741.59 372.80 C 741.66 416.23 729.01 458.74 705.21 495.07 C 705.14 495.18 705.07 495.29 704.99 495.40 L 704.99 495.40 L 692.60 512.45 L 692.60 512.45 C 681.58 526.19 668.98 538.59 655.07 549.40 C 596.64 594.64 519.65 608.14 449.31 585.48 L 579.90 403.86 C 593.42 376.99 588.03 344.47 566.57 323.40 C 545.10 302.33 512.48 297.55 485.87 311.57 C 459.26 325.59 444.76 355.19 450.00 384.81 L 298.00 411.62 C 295.75 398.80 294.62 385.81 294.63 372.80 C 294.63 249.36 394.69 149.30 518.13 149.30 C 628.29 149.30 719.85 229.00 738.23 334.00 C 740.47 346.81 741.60 359.79 741.59 372.80 Z" fill="#02c3ff" fill-rule="nonzero" node-id="64" stroke="none" target-height="446.9292" target-width="446.96002" target-x="294.63" target-y="149.3"></path><path d="M 518.09 598.55 C 494.50 598.57 471.04 594.89 448.59 587.65 C 447.91 587.42 447.37 586.89 447.15 586.21 C 446.93 585.52 447.04 584.77 447.46 584.19 L 578.00 402.70 C 588.36 381.95 587.23 357.33 575.04 337.60 C 562.84 317.88 541.31 305.88 518.12 305.88 C 498.34 305.89 479.58 314.64 466.87 329.79 C 454.16 344.94 448.79 364.93 452.21 384.41 C 452.32 385.00 452.19 385.60 451.84 386.09 C 451.50 386.58 450.98 386.92 450.39 387.02 L 298.39 413.84 C 297.80 413.94 297.20 413.80 296.71 413.46 C 296.22 413.12 295.88 412.60 295.78 412.01 C 293.51 399.06 292.37 385.94 292.38 372.80 C 292.38 248.32 393.65 147.05 518.13 147.05 C 601.01 147.06 677.22 192.48 716.67 265.37 C 756.12 338.26 752.45 426.91 707.13 496.30 C 707.08 496.39 707.00 496.51 706.91 496.64 C 706.89 496.68 706.87 496.71 706.84 496.74 L 694.45 513.74 L 694.34 513.89 C 683.22 527.75 670.51 540.25 656.47 551.15 C 616.97 582.02 568.23 598.72 518.09 598.55 Z M 452.93 584.30 C 539.74 611.00 634.05 581.97 690.82 511.08 L 703.11 494.17 L 703.19 494.05 L 703.29 493.90 C 726.87 457.92 739.40 415.82 739.34 372.80 C 739.35 314.12 716.04 257.84 674.55 216.34 C 633.05 174.85 576.77 151.54 518.09 151.55 C 396.09 151.55 296.84 250.80 296.84 372.80 C 296.86 384.93 297.86 397.04 299.84 409.01 L 447.40 383.00 C 443.59 356.54 454.87 330.16 476.65 314.65 C 498.42 299.14 527.04 297.08 550.80 309.33 C 574.57 321.57 589.50 346.06 589.51 372.80 C 589.54 383.94 586.94 394.93 581.91 404.88 C 581.86 404.98 581.80 405.08 581.73 405.18 Z" fill="#262d33" fill-rule="nonzero" node-id="66" stroke="none" target-height="451.5" target-width="451.48578" target-x="292.38" target-y="147.05"></path><path d="M 705.22 495.08 L 704.99 495.40 C 705.07 495.29 705.14 495.18 705.21 495.07 Z" fill="#02c3ff" fill-rule="nonzero" node-id="68" stroke="none" target-height="0.32998657" target-width="0.22998047" target-x="704.99" target-y="495.07"></path><path d="M 705.00 497.65 C 704.52 497.65 704.05 497.50 703.67 497.21 C 703.19 496.86 702.87 496.33 702.78 495.75 C 702.68 495.16 702.83 494.56 703.18 494.08 L 703.30 493.90 C 703.78 493.13 704.67 492.72 705.57 492.86 C 706.46 493.00 707.19 493.66 707.41 494.54 C 707.57 495.18 707.44 495.86 707.06 496.40 L 706.86 496.68 C 706.84 496.70 706.82 496.72 706.81 496.75 C 706.38 497.32 705.71 497.65 705.00 497.65 Z" fill="#262d33" fill-rule="nonzero" node-id="70" stroke="none" target-height="4.7934265" target-width="4.661438" target-x="702.7767" target-y="492.85657"></path><path d="M 555.04 701.78 L 438.98 861.53 L 429.42 874.70 L 239.18 874.70 L 364.81 701.78 L 555.04 701.78 Z" fill="#02c3ff" fill-rule="nonzero" node-id="72" stroke="none" target-height="172.91998" target-width="315.86" target-x="239.18" target-y="701.78"></path><path d="M 429.42 877.00 L 239.18 877.00 C 238.33 877.00 237.56 876.52 237.18 875.77 C 236.79 875.02 236.86 874.11 237.36 873.43 L 363.00 700.46 C 363.42 699.87 364.11 699.53 364.83 699.53 L 555.00 699.53 C 555.85 699.53 556.62 700.00 557.01 700.75 C 557.40 701.51 557.33 702.41 556.83 703.10 L 431.24 876.00 C 430.83 876.61 430.15 876.98 429.42 877.00 Z M 243.60 872.50 L 428.27 872.50 L 550.63 704.00 L 366.00 704.00 Z" fill="#262d33" fill-rule="nonzero" node-id="74" stroke="none" target-height="177.46997" target-width="320.3012" target-x="236.94429" target-y="699.53"></path><path d="M 454.44 756.85 L 412.31 814.85 L 408.84 819.63 L 339.78 819.63 L 385.39 756.85 L 454.44 756.85 Z" fill="#fe7236" fill-rule="nonzero" node-id="76" stroke="none" target-height="62.78003" target-width="114.66" target-x="339.78" target-y="756.85"></path><path d="M 408.84 821.88 L 339.78 821.88 C 338.94 821.87 338.17 821.39 337.80 820.63 C 337.43 819.88 337.50 818.98 338.00 818.30 L 383.61 755.53 C 384.03 754.95 384.71 754.60 385.43 754.60 L 454.48 754.60 C 455.32 754.60 456.10 755.08 456.48 755.83 C 456.86 756.59 456.79 757.49 456.30 758.18 L 410.66 821.00 C 410.23 821.56 409.55 821.89 408.84 821.88 Z M 344.20 817.38 L 407.69 817.38 L 450.00 759.10 L 386.50 759.10 Z" fill="#262d33" fill-rule="nonzero" node-id="78" stroke="none" target-height="67.28003" target-width="119.14267" target-x="337.57288" target-y="754.6"></path><path d="M 692.58 512.48 L 555.00 701.78 L 364.82 701.78 L 449.29 585.51 C 537.68 614.07 634.51 585.01 692.58 512.51 Z" fill="#0078ff" fill-rule="nonzero" node-id="80" stroke="none" target-height="189.30005" target-width="327.76" target-x="364.82" target-y="512.48"></path><path d="M 555.00 704.00 L 364.82 704.00 C 363.97 704.00 363.20 703.53 362.81 702.78 C 362.42 702.02 362.49 701.12 362.99 700.43 L 447.46 584.16 C 448.03 583.37 449.05 583.04 449.98 583.34 C 471.99 590.43 494.97 594.04 518.09 594.02 C 567.21 594.19 614.95 577.84 653.67 547.62 C 667.45 536.92 679.92 524.65 690.83 511.04 C 691.58 510.05 693.00 509.86 693.98 510.62 C 694.97 511.37 695.16 512.78 694.41 513.77 L 556.87 703.10 C 556.43 703.68 555.73 704.02 555.00 704.00 Z M 369.19 699.50 L 553.90 699.50 L 669.90 539.88 C 665.57 543.82 661.09 547.58 656.46 551.17 C 616.96 582.02 568.24 598.69 518.12 598.52 C 495.08 598.54 472.16 595.03 450.18 588.12 Z" fill="#262d33" fill-rule="nonzero" node-id="82" stroke="none" target-height="193.8259" target-width="332.27634" target-x="362.57462" target-y="510.1741"></path><path d="M 772.87 677.88 L 753.18 637.00 C 759.81 637.91 759.97 639.38 759.97 639.38 C 764.37 649.18 766.84 650.72 768.03 650.60 C 769.14 653.35 770.40 655.48 771.51 654.70 C 774.16 652.81 767.80 637.94 767.80 637.94 C 765.42 628.75 755.98 627.94 755.98 627.94 C 725.98 624.71 688.51 624.71 688.51 624.71 C 688.51 624.71 688.96 619.71 690.40 618.14 C 691.07 617.28 692.06 616.72 693.15 616.58 C 695.15 609.40 688.87 603.77 688.51 603.44 C 688.51 604.25 688.00 605.59 686.34 607.69 C 682.96 611.96 681.87 611.98 681.85 611.98 C 681.83 611.98 681.25 610.73 680.44 611.36 C 679.63 611.99 679.35 616.28 683.02 616.64 C 684.10 616.73 686.70 634.57 681.40 636.17 C 679.17 636.80 678.18 634.48 678.01 630.62 C 677.84 626.76 672.36 621.85 672.36 621.85 L 672.36 621.85 C 672.36 621.85 661.72 622.09 660.78 634.29 C 659.84 646.49 656.71 692.29 656.71 692.29 C 656.71 692.29 635.80 694.79 635.80 698.38 C 635.80 701.03 642.12 700.09 645.43 699.38 L 645.43 699.38 C 647.02 700.84 651.91 701.92 664.94 697.99 C 666.20 697.22 673.22 675.99 675.64 658.99 C 676.15 666.54 680.00 703.12 706.04 701.76 C 727.49 700.65 739.46 677.13 744.25 664.90 L 757.51 701.83 L 786.17 701.83 Z M 711.78 660.88 L 702.28 637.96 C 702.28 637.96 721.28 636.48 736.56 636.31 C 727.83 642.88 711.78 660.85 711.78 660.85 Z" fill="#fbf5f0" fill-rule="nonzero" node-id="84" stroke="#262d33" stroke-linecap="round" stroke-width="3" target-height="98.390015" target-width="150.37" target-x="635.8" target-y="603.44"></path><path d="M 680.44 611.32 C 679.62 611.95 679.35 616.24 683.02 616.60 C 684.10 616.69 686.70 634.53 681.40 636.13 C 679.17 636.76 678.18 634.44 678.01 630.58 C 677.84 626.72 672.36 621.81 672.36 621.81 L 672.36 621.81 C 676.47 614.48 670.57 612.51 675.22 606.59 C 679.87 600.67 688.12 602.30 688.12 602.30 C 688.43 602.58 688.58 603.00 688.51 603.42 C 688.51 604.23 688.00 605.57 686.34 607.67 C 682.96 611.94 681.87 611.96 681.85 611.96 C 681.83 611.96 681.25 610.69 680.44 611.32 Z" fill="#0078ff" fill-rule="nonzero" node-id="86" stroke="none" target-height="34.102295" target-width="16.150024" target-x="672.36" target-y="602.09424"></path><path d="M 680.71 637.73 C 680.02 637.74 679.34 637.52 678.78 637.11 C 677.38 636.11 676.66 634.05 676.51 630.65 C 676.39 628.02 672.66 624.09 671.36 622.92 C 670.84 622.45 670.71 621.68 671.05 621.06 C 672.37 618.96 672.76 616.40 672.13 614.00 C 671.31 611.07 672.03 607.92 674.04 605.64 C 679.22 599.08 688.04 600.73 688.41 600.81 C 688.61 600.84 688.80 600.92 688.96 601.04 C 689.69 601.62 690.06 602.54 689.96 603.46 C 689.88 604.89 689.07 606.55 687.46 608.58 C 683.63 613.44 682.25 613.44 681.80 613.44 C 681.66 613.44 681.53 613.42 681.40 613.38 C 681.43 613.68 681.51 613.97 681.65 614.24 C 681.95 614.77 682.51 615.11 683.12 615.11 C 683.94 615.18 685.12 615.27 685.81 622.11 C 686.25 626.25 686.74 636.05 681.81 637.55 C 681.45 637.66 681.08 637.72 680.71 637.73 Z M 674.20 621.49 C 675.88 623.16 679.35 627.02 679.51 630.49 C 679.67 633.96 680.45 634.60 680.51 634.66 C 680.57 634.72 680.66 634.76 680.98 634.66 C 681.54 634.49 681.98 633.73 682.21 633.13 C 683.89 629.03 682.79 620.19 682.07 617.93 C 680.39 617.56 679.05 616.27 678.63 614.60 C 678.19 613.06 678.40 610.96 679.51 610.10 C 680.03 609.68 680.72 609.52 681.37 609.67 C 681.64 609.74 681.89 609.85 682.12 610.00 C 683.22 608.99 684.23 607.89 685.12 606.69 C 685.93 605.80 686.54 604.75 686.92 603.61 C 684.85 603.42 679.56 603.42 676.36 607.47 C 674.42 609.94 674.67 611.33 675.04 613.47 C 675.71 616.16 675.42 619.00 674.20 621.49 Z M 682.84 618.09 L 682.84 618.09 Z M 680.44 611.32 L 680.44 611.32 Z M 681.44 610.49 Z" fill="#262d33" fill-rule="nonzero" node-id="88" stroke="none" target-height="37.159607" target-width="19.07904" target-x="670.881" target-y="600.5704"></path><path d="M 768.00 650.59 C 766.88 647.65 765.95 644.64 765.21 641.59" fill="#fbf5f0" fill-rule="nonzero" node-id="90" stroke="none" target-height="9" target-width="2.789978" target-x="765.21" target-y="641.59"></path><path d="M 768.00 652.09 C 767.39 652.09 766.84 651.73 766.61 651.16 C 765.46 648.17 764.51 645.10 763.75 641.99 C 763.56 641.18 764.05 640.37 764.86 640.18 C 765.67 639.99 766.48 640.48 766.67 641.29 C 767.40 644.26 768.30 647.18 769.39 650.03 C 769.55 650.40 769.56 650.83 769.40 651.21 C 769.24 651.58 768.94 651.88 768.56 652.03 C 768.38 652.09 768.19 652.11 768.00 652.09 Z" fill="#262d33" fill-rule="nonzero" node-id="92" stroke="none" target-height="11.930786" target-width="5.786865" target-x="763.72925" target-y="640.15924"></path><path d="M 688.51 604.90 L 688.51 604.90 C 687.68 604.90 687.01 604.23 687.01 603.40 C 687.01 602.57 687.68 601.90 688.51 601.90 C 689.34 601.90 690.01 602.57 690.01 603.40 C 690.01 603.80 689.85 604.18 689.57 604.46 C 689.28 604.75 688.90 604.90 688.50 604.90 Z" fill="#262d33" fill-rule="nonzero" node-id="94" stroke="none" target-height="3" target-width="3" target-x="687.01" target-y="601.9"></path><path d="M 744.27 664.90 L 744.24 664.81" fill="#fbf5f0" fill-rule="nonzero" node-id="96" stroke="none" target-height="0.090026855" target-width="0.030029297" target-x="744.24" target-y="664.81"></path><path d="M 744.23 666.36 C 743.60 666.37 743.04 665.96 742.85 665.36 L 742.85 665.27 C 742.57 664.49 742.99 663.63 743.77 663.35 C 744.55 663.07 745.41 663.49 745.69 664.27 C 745.96 665.06 745.55 665.93 744.76 666.22 C 744.59 666.30 744.41 666.35 744.23 666.36 Z" fill="#262d33" fill-rule="nonzero" node-id="98" stroke="none" target-height="3.0927734" target-width="3.0012207" target-x="742.7672" target-y="663.2672"></path><path d="M 736.56 636.28 C 739.17 636.28 741.69 636.28 743.97 636.28 C 747.05 636.33 750.13 636.56 753.18 636.96" fill="#fbf5f0" fill-rule="nonzero" node-id="100" stroke="none" target-height="0.6799927" target-width="16.619995" target-x="736.56" target-y="636.28"></path><path d="M 753.18 638.49 L 752.97 638.49 C 749.98 638.11 746.98 637.89 743.97 637.83 C 741.59 637.77 739.12 637.76 736.62 637.83 C 735.80 637.83 735.13 637.18 735.10 636.36 C 735.09 635.96 735.24 635.58 735.52 635.29 C 735.79 635.00 736.17 634.84 736.57 634.83 C 739.11 634.83 741.63 634.83 744.05 634.83 C 747.19 634.89 750.32 635.12 753.43 635.52 C 754.26 635.58 754.88 636.30 754.82 637.12 C 754.77 637.95 754.05 638.58 753.22 638.52 Z" fill="#262d33" fill-rule="nonzero" node-id="102" stroke="none" target-height="3.6900024" target-width="19.725037" target-x="735.1" target-y="634.83"></path><path d="M 744.27 664.90 C 745.98 660.55 746.79 657.64 746.79 657.64" fill="#fbf5f0" fill-rule="nonzero" node-id="104" stroke="none" target-height="7.26001" target-width="2.5199585" target-x="744.27" target-y="657.64"></path><path d="M 744.27 666.40 C 744.08 666.40 743.90 666.37 743.72 666.30 C 742.95 665.99 742.57 665.12 742.87 664.35 C 744.53 660.14 745.34 657.27 745.34 657.24 C 745.56 656.44 746.39 655.98 747.19 656.20 C 747.99 656.42 748.45 657.25 748.23 658.05 C 748.23 658.17 747.38 661.05 745.66 665.45 C 745.44 666.02 744.88 666.40 744.27 666.40 Z" fill="#262d33" fill-rule="nonzero" node-id="106" stroke="none" target-height="10.243469" target-width="5.505615" target-x="742.7678" target-y="656.15656"></path><path d="M 645.45 700.90 L 645.45 700.90 C 644.62 700.89 643.96 700.22 643.96 699.39 C 643.96 698.57 644.64 697.90 645.46 697.90 C 646.29 697.90 646.96 698.57 646.96 699.40 C 646.96 699.80 646.80 700.19 646.51 700.47 C 646.22 700.75 645.83 700.91 645.43 700.90 Z" fill="#262d33" fill-rule="nonzero" node-id="108" stroke="none" target-height="3" target-width="3" target-x="643.96" target-y="697.9"></path><path d="M 676.48 648.49 C 676.46 652.01 676.19 655.51 675.66 658.99" fill="#fbf5f0" fill-rule="nonzero" node-id="110" stroke="none" target-height="10.5" target-width="0.8200073" target-x="675.66" target-y="648.49"></path><path d="M 675.66 660.49 L 675.45 660.49 C 674.63 660.37 674.06 659.61 674.17 658.79 C 674.69 655.39 674.96 651.96 674.98 648.52 C 674.97 647.69 675.64 647.01 676.47 647.00 C 676.87 646.98 677.26 647.13 677.55 647.42 C 677.84 647.70 677.99 648.09 677.98 648.49 C 677.96 652.08 677.68 655.66 677.14 659.21 C 677.04 659.95 676.40 660.49 675.66 660.49 Z" fill="#262d33" fill-rule="nonzero" node-id="112" stroke="none" target-height="13.48999" target-width="3.8099976" target-x="674.17" target-y="647"></path><path d="M 645.43 699.40 C 645.01 699.06 644.77 698.55 644.77 698.01 C 644.86 696.46 654.93 695.62 654.93 695.62" fill="#fbf5f0" fill-rule="nonzero" node-id="114" stroke="none" target-height="3.7800293" target-width="10.159973" target-x="644.77" target-y="695.62"></path><path d="M 645.43 700.90 C 645.06 700.90 644.70 700.76 644.43 700.51 C 643.66 699.86 643.24 698.89 643.29 697.89 C 643.34 696.89 643.45 695.08 654.81 694.13 C 655.21 694.09 655.61 694.21 655.91 694.47 C 656.22 694.73 656.40 695.10 656.43 695.50 C 656.46 695.90 656.34 696.29 656.08 696.59 C 655.82 696.90 655.46 697.09 655.06 697.12 C 652.21 697.31 649.39 697.77 646.62 698.48 C 646.98 698.93 647.05 699.55 646.80 700.06 C 646.54 700.58 646.02 700.91 645.44 700.90 Z" fill="#262d33" fill-rule="nonzero" node-id="116" stroke="none" target-height="6.7700195" target-width="13.140015" target-x="643.29" target-y="694.13"></path><path d="M 702.76 670.54 L 711.78 660.86" fill="#fbf5f0" fill-rule="nonzero" node-id="118" stroke="none" target-height="9.679993" target-width="9.02002" target-x="702.76" target-y="660.86"></path><path d="M 702.76 672.00 C 702.39 671.99 702.03 671.85 701.76 671.60 C 701.47 671.33 701.29 670.95 701.28 670.55 C 701.27 670.16 701.42 669.77 701.69 669.48 L 710.69 659.80 C 711.02 659.32 711.60 659.07 712.18 659.17 C 712.75 659.27 713.22 659.70 713.37 660.26 C 713.53 660.82 713.34 661.42 712.89 661.80 L 703.89 671.48 C 703.61 671.81 703.19 672.00 702.76 672.00 Z" fill="#262d33" fill-rule="nonzero" node-id="120" stroke="none" target-height="12.826477" target-width="12.090454" target-x="701.2818" target-y="659.1735"></path><path d="M 720.78 602.78 C 720.28 602.69 719.78 602.69 719.28 602.78 L 719.28 602.78 C 718.67 602.89 718.04 602.95 717.42 602.97 L 717.00 602.97 C 716.16 603.00 715.32 602.83 714.56 602.48 C 714.24 602.32 713.96 602.09 713.74 601.81 C 713.26 601.26 713.01 600.54 713.06 599.81 L 713.06 596.44 C 713.04 595.95 712.94 595.47 712.75 595.02 C 712.26 593.84 711.44 592.83 710.39 592.10 L 710.39 592.10 C 709.06 591.05 707.97 589.71 707.21 588.19 C 704.82 583.37 706.11 577.55 710.30 574.18 C 714.49 570.82 720.45 570.82 724.64 574.18 C 728.83 577.55 730.12 583.37 727.73 588.19 C 726.96 589.72 725.86 591.06 724.51 592.11 L 724.51 592.11 L 724.51 592.11 C 721.51 594.11 721.31 595.96 721.30 596.04 L 721.30 596.77 C 721.30 596.98 721.30 597.09 721.30 597.69 C 721.35 598.64 720.83 599.53 719.98 599.95 C 719.32 600.26 718.60 600.40 717.88 600.37 L 717.71 600.37 C 717.08 600.40 716.45 600.34 715.84 600.21 Z" fill="#ffa836" fill-rule="nonzero" node-id="122" stroke="none" target-height="31.312805" target-width="22.901245" target-x="706.01935" target-y="571.65717"></path><path d="M 717.00 604.46 C 715.92 604.49 714.85 604.27 713.88 603.80 C 713.37 603.55 712.92 603.19 712.57 602.74 C 711.89 601.93 711.53 600.90 711.57 599.84 L 711.57 596.47 L 711.57 596.47 C 711.55 596.17 711.48 595.87 711.36 595.59 C 710.97 594.68 710.33 593.90 709.52 593.34 C 707.99 592.14 706.74 590.62 705.87 588.88 C 703.17 583.43 704.62 576.84 709.36 573.03 C 714.09 569.22 720.85 569.22 725.58 573.03 C 730.32 576.84 731.77 583.43 729.07 588.88 C 728.20 590.61 726.96 592.13 725.43 593.32 L 725.30 593.41 C 723.21 594.79 722.82 595.98 722.76 596.20 L 722.76 597.75 C 722.80 599.12 722.11 600.41 720.95 601.15 L 721.42 601.38 C 722.13 601.72 722.46 602.56 722.17 603.29 C 721.87 604.02 721.06 604.40 720.31 604.16 C 720.04 604.13 719.78 604.13 719.51 604.16 C 718.79 604.27 718.06 604.34 717.33 604.37 Z M 717.47 573.19 C 714.04 573.22 710.86 575.00 709.05 577.91 C 707.25 580.83 707.05 584.46 708.55 587.55 C 709.21 588.87 710.15 590.03 711.31 590.95 C 712.57 591.84 713.56 593.07 714.15 594.50 C 714.40 595.14 714.54 595.81 714.56 596.50 L 714.56 599.50 C 714.92 598.98 715.57 598.74 716.18 598.91 C 716.66 599.01 717.15 599.05 717.64 599.02 L 717.83 599.02 C 718.32 599.05 718.80 598.96 719.25 598.77 C 719.60 598.60 719.80 598.23 719.75 597.84 L 719.75 596.19 C 719.75 595.66 720.09 593.35 723.63 591.01 C 726.90 588.36 728.16 583.94 726.78 579.96 C 725.41 575.98 721.68 573.30 717.47 573.24 Z" fill="#262d33" fill-rule="nonzero" node-id="124" stroke="none" target-height="34.286987" target-width="25.901428" target-x="704.5193" target-y="570.17303"></path><path d="M 720.78 602.78 C 720.28 602.69 719.78 602.69 719.28 602.78 L 719.28 602.78 C 718.67 602.89 718.04 602.95 717.42 602.97 L 717.00 602.97 C 716.16 603.00 715.32 602.83 714.56 602.48 C 714.24 602.32 713.96 602.09 713.74 601.81 C 713.26 601.26 713.01 600.54 713.06 599.81 L 713.06 596.44 C 713.04 595.95 712.94 595.47 712.75 595.02 C 712.26 593.84 711.44 592.83 710.39 592.10 L 710.39 592.10 C 709.06 591.05 707.97 589.71 707.21 588.19 C 704.82 583.37 706.11 577.55 710.30 574.18 C 714.49 570.82 720.45 570.82 724.64 574.18 C 728.83 577.55 730.12 583.37 727.73 588.19 C 726.96 589.72 725.86 591.06 724.51 592.11 L 724.51 592.11 L 724.51 592.11 C 721.51 594.11 721.31 595.96 721.30 596.04 L 721.30 596.77 C 721.30 596.98 721.30 597.09 721.30 597.69 C 721.35 598.64 720.83 599.53 719.98 599.95 C 719.32 600.26 718.60 600.40 717.88 600.37 L 717.71 600.37 C 717.08 600.40 716.45 600.34 715.84 600.21" fill="#ffa836" fill-rule="nonzero" node-id="126" stroke="none" target-height="31.312805" target-width="22.901245" target-x="706.01935" target-y="571.65717"></path><path d="M 717.00 604.46 C 715.92 604.49 714.85 604.27 713.88 603.80 C 713.37 603.55 712.92 603.19 712.57 602.74 C 711.89 601.93 711.53 600.90 711.57 599.84 L 711.57 596.47 L 711.57 596.47 C 711.55 596.17 711.48 595.87 711.36 595.59 C 710.97 594.68 710.33 593.90 709.52 593.34 C 707.99 592.14 706.74 590.62 705.87 588.88 C 703.17 583.43 704.62 576.84 709.36 573.03 C 714.09 569.22 720.85 569.22 725.58 573.03 C 730.32 576.84 731.77 583.43 729.07 588.88 C 728.20 590.61 726.96 592.13 725.43 593.32 L 725.30 593.41 C 723.21 594.79 722.82 595.98 722.76 596.20 L 722.76 597.75 C 722.80 599.16 722.07 600.49 720.86 601.21 C 720.98 601.23 721.10 601.26 721.21 601.30 C 721.97 601.57 722.38 602.39 722.14 603.16 C 721.90 603.94 721.09 604.38 720.31 604.16 C 720.04 604.13 719.78 604.13 719.51 604.16 C 718.79 604.27 718.06 604.34 717.33 604.37 Z M 717.47 573.19 C 714.04 573.22 710.86 575.00 709.05 577.91 C 707.25 580.83 707.05 584.46 708.55 587.55 C 709.21 588.87 710.15 590.03 711.31 590.95 C 712.57 591.84 713.56 593.07 714.15 594.50 C 714.40 595.14 714.54 595.81 714.56 596.50 L 714.56 599.50 C 714.92 598.98 715.57 598.75 716.18 598.91 C 716.66 599.01 717.15 599.05 717.64 599.02 L 717.83 599.02 C 718.32 599.05 718.80 598.96 719.25 598.77 C 719.60 598.60 719.80 598.23 719.75 597.84 L 719.75 596.19 C 719.75 595.66 720.09 593.35 723.63 591.01 C 726.90 588.36 728.16 583.94 726.78 579.96 C 725.41 575.98 721.68 573.30 717.47 573.24 Z" fill="#262d33" fill-rule="nonzero" node-id="128" stroke="none" target-height="34.286987" target-width="25.901428" target-x="704.5193" target-y="570.17303"></path><path d="M 717.51 567.40 C 716.68 567.40 716.01 566.73 716.01 565.90 L 716.01 558.11 C 716.01 557.28 716.68 556.61 717.51 556.61 C 718.34 556.61 719.01 557.28 719.01 558.11 L 719.01 565.90 C 719.01 566.73 718.34 567.40 717.51 567.40 Z" fill="#262d33" fill-rule="nonzero" node-id="130" stroke="none" target-height="10.790039" target-width="3" target-x="716.01" target-y="556.61"></path><path d="M 705.42 562.23 L 708.91 567.51" fill="#ffa836" fill-rule="nonzero" node-id="132" stroke="none" target-height="5.2800293" target-width="3.4899902" target-x="705.42" target-y="562.23"></path><path d="M 708.91 569.00 C 708.41 569.00 707.94 568.75 707.66 568.33 L 704.17 563.04 C 703.77 562.35 703.97 561.47 704.64 561.03 C 705.30 560.59 706.20 560.75 706.67 561.39 L 710.16 566.67 C 710.38 567.00 710.46 567.41 710.38 567.80 C 710.30 568.19 710.07 568.53 709.74 568.75 C 709.49 568.91 709.21 569.00 708.91 569.00 Z" fill="#262d33" fill-rule="nonzero" node-id="134" stroke="none" target-height="8.193054" target-width="6.402527" target-x="703.98004" target-y="560.80695"></path><path d="M 731.49 563.03 L 727.19 568.32" fill="#ffa836" fill-rule="nonzero" node-id="136" stroke="none" target-height="5.289978" target-width="4.299988" target-x="727.19" target-y="563.03"></path><path d="M 727.19 569.82 C 726.61 569.82 726.08 569.49 725.84 568.96 C 725.59 568.44 725.66 567.82 726.03 567.37 L 730.33 562.09 C 730.65 561.63 731.20 561.39 731.76 561.47 C 732.32 561.54 732.78 561.92 732.97 562.45 C 733.16 562.98 733.03 563.57 732.65 563.98 L 728.35 569.27 C 728.07 569.62 727.64 569.82 727.19 569.82 Z" fill="#262d33" fill-rule="nonzero" node-id="138" stroke="none" target-height="8.35376" target-width="7.323242" target-x="725.7019" target-y="561.46625"></path></svg>
\ No newline at end of file
......@@ -7,6 +7,10 @@ import VUE_STUDY from '../modules/vue-study/route';
import VUE_KONVA from '../modules/vue-konva/route';
import VECTOR from '../modules/vector/route';
import VUE_KONVA_LINE from '../modules/vue-konva-line/route';
import JSON_VIEW from '../modules/json-view/route';
import BINARY_TREE from '../modules/binary-tree/route';
import MDN_RANGE from '../modules/MDN-Range/route';
import REVIEW_INPUT_BOX from '../modules/review-input-box/route';
const routes: RouteRecordRaw[] = [
{
......@@ -18,7 +22,7 @@ const routes: RouteRecordRaw[] = [
path: '',
name: 'LaoutIndexPage',
component: () => import('pages/IndexPage.vue'),
redirect: '/vue-study',
redirect: '/review-input-box',
children: [
{
path: 'home',
......@@ -137,6 +141,10 @@ const routes: RouteRecordRaw[] = [
...VUE_KONVA,
...VECTOR,
...VUE_KONVA_LINE,
...JSON_VIEW,
...BINARY_TREE,
...MDN_RANGE,
...REVIEW_INPUT_BOX,
],
},
],
......
......@@ -3618,6 +3618,11 @@ hash-sum@^1.0.2:
resolved "https://registry.yarnpkg.com/hash-sum/-/hash-sum-1.0.2.tgz#33b40777754c6432573c120cc3808bbd10d47f04"
integrity sha512-fUs4B4L+mlt8/XAtSOGMUO1TXmAelItBPtJG7CyHJfYTdDjwisntGO2JQz7oUsatOY9o68+57eziUVNw/mRHmA==
hcy-tool-test@^1.0.4:
version "1.0.4"
resolved "https://registry.yarnpkg.com/hcy-tool-test/-/hcy-tool-test-1.0.4.tgz#e97211b0ab9ec230a3888387990e095d35c1c0fc"
integrity sha512-2w+mSrtDoDkNkQo+Cy/wtNhKdS8pJNECHroi1W9OqDZ4fc+yiPcIfhe0HJ5BCsv744dVyndelL6hDMgaJ5fe4A==
he@^1.2.0:
version "1.2.0"
resolved "https://registry.yarnpkg.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f"
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment