|
@@ -29,11 +29,12 @@
|
|
@dragend="dragEnd()"
|
|
@dragend="dragEnd()"
|
|
>
|
|
>
|
|
<t-image v-if="iItem.image" :src="iItem.image" fit="cover" />
|
|
<t-image v-if="iItem.image" :src="iItem.image" fit="cover" />
|
|
|
|
+ <div class="svg-box" v-else-if="iItem.svg" v-html="iItem.svg"></div>
|
|
<!-- <i v-else class="t-icon" :class="iItem.icon"></i> -->
|
|
<!-- <i v-else class="t-icon" :class="iItem.icon"></i> -->
|
|
<svg v-else class="l-icon" aria-hidden="true">
|
|
<svg v-else class="l-icon" aria-hidden="true">
|
|
<use :xlink:href="'#' + iItem.icon"></use>
|
|
<use :xlink:href="'#' + iItem.icon"></use>
|
|
</svg>
|
|
</svg>
|
|
- <p>{{ iItem.name }}</p>
|
|
|
|
|
|
+ <p :title="iItem.name">{{ iItem.name }}</p>
|
|
</div>
|
|
</div>
|
|
</t-collapse-panel>
|
|
</t-collapse-panel>
|
|
</t-collapse>
|
|
</t-collapse>
|
|
@@ -105,6 +106,7 @@ const getCommponentsLib = async () => {
|
|
_id: 1,
|
|
_id: 1,
|
|
name: 1,
|
|
name: 1,
|
|
folder: 1,
|
|
folder: 1,
|
|
|
|
+ component:1
|
|
},
|
|
},
|
|
};
|
|
};
|
|
const config = {
|
|
const config = {
|
|
@@ -218,7 +220,7 @@ watch(
|
|
console.log(newOpen);
|
|
console.log(newOpen);
|
|
if (activeGroup.value === "素材") {
|
|
if (activeGroup.value === "素材") {
|
|
const data: any = materialLib[newOpen[0]];
|
|
const data: any = materialLib[newOpen[0]];
|
|
- console.log("data", data.name);
|
|
|
|
|
|
+ console.log("data", data,newOpen[0]);
|
|
if (!data.list || data.list.length === 0) {
|
|
if (!data.list || data.list.length === 0) {
|
|
data.list = await getPngs(
|
|
data.list = await getPngs(
|
|
globalThis.folderJson ? data.pinyin : data.name
|
|
globalThis.folderJson ? data.pinyin : data.name
|
|
@@ -240,7 +242,7 @@ watch(
|
|
|
|
|
|
const dragStart = async (event: DragEvent, item: any) => {
|
|
const dragStart = async (event: DragEvent, item: any) => {
|
|
// console.log('drag', item);
|
|
// console.log('drag', item);
|
|
- console.log(event);
|
|
|
|
|
|
+ console.log(event,item);
|
|
|
|
|
|
if (!item || !event.dataTransfer) {
|
|
if (!item || !event.dataTransfer) {
|
|
return;
|
|
return;
|
|
@@ -251,7 +253,7 @@ const dragStart = async (event: DragEvent, item: any) => {
|
|
item.componentDatas = res.componentDatas;
|
|
item.componentDatas = res.componentDatas;
|
|
item.componentData = res.componentData;
|
|
item.componentData = res.componentData;
|
|
}
|
|
}
|
|
- if (!item.data && !item.componentData && item.image) {
|
|
|
|
|
|
+ if (!item.data && !item.component && item.image) {
|
|
let target: any = event.target;
|
|
let target: any = event.target;
|
|
target.children[0] && (target = target.children[0].children[0]);
|
|
target.children[0] && (target = target.children[0].children[0]);
|
|
// firefox naturalWidth svg 图片 可能是 0
|
|
// firefox naturalWidth svg 图片 可能是 0
|
|
@@ -271,9 +273,15 @@ const dragStart = async (event: DragEvent, item: any) => {
|
|
lockedOnCombine,
|
|
lockedOnCombine,
|
|
})
|
|
})
|
|
);
|
|
);
|
|
- } else if (item.componentData) {
|
|
|
|
- const pens = convertPen([item.componentData]);
|
|
|
|
- meta2d.canvas.addCaches = deepClone(pens);
|
|
|
|
|
|
+ } else if (item.component) {
|
|
|
|
+ console.log("comp",item.componentDatas,item.componentData)
|
|
|
|
+ if (item.componentData) {
|
|
|
|
+ const pens = convertPen([item.componentData]);
|
|
|
|
+ meta2d.canvas.addCaches = deepClone(pens);
|
|
|
|
+ } else if (item.componentDatas) {
|
|
|
|
+ console.log("进入")
|
|
|
|
+ meta2d.canvas.addCaches = deepClone(item.componentDatas);
|
|
|
|
+ }
|
|
} else {
|
|
} else {
|
|
event.dataTransfer.setData(
|
|
event.dataTransfer.setData(
|
|
"Meta2d",
|
|
"Meta2d",
|
|
@@ -365,6 +373,7 @@ onUnmounted(() => {
|
|
}
|
|
}
|
|
:deep(.t-collapse-panel__header) {
|
|
:deep(.t-collapse-panel__header) {
|
|
border: 0px;
|
|
border: 0px;
|
|
|
|
+ font-size: 12px;
|
|
}
|
|
}
|
|
|
|
|
|
:deep(.t-collapse-panel__body) {
|
|
:deep(.t-collapse-panel__body) {
|
|
@@ -373,33 +382,45 @@ onUnmounted(() => {
|
|
:deep(.t-collapse-panel__content) {
|
|
:deep(.t-collapse-panel__content) {
|
|
background-color: var(--color-background-active);
|
|
background-color: var(--color-background-active);
|
|
/* padding: 12px; */
|
|
/* padding: 12px; */
|
|
- padding: 0px;
|
|
|
|
|
|
+ padding: 0px 4px;
|
|
display: grid;
|
|
display: grid;
|
|
- grid-template-columns: 61px 61px 61px 61px;
|
|
|
|
- grid-template-rows: 90px;
|
|
|
|
- padding-bottom: 20px;
|
|
|
|
|
|
+ grid-template-columns: 1fr 1fr 1fr;
|
|
|
|
+ grid-row-gap: 9px;
|
|
|
|
+ /* grid-template-rows: 90px; */
|
|
|
|
+ /* padding-bottom: 20px; */
|
|
}
|
|
}
|
|
.show-item {
|
|
.show-item {
|
|
/* padding: 10px; */
|
|
/* padding: 10px; */
|
|
&:hover {
|
|
&:hover {
|
|
cursor: pointer;
|
|
cursor: pointer;
|
|
|
|
+ color: var(--color-primary-hover);
|
|
|
|
+ svg{
|
|
|
|
+ color: var(--color-primary-hover);
|
|
|
|
+ }
|
|
}
|
|
}
|
|
p {
|
|
p {
|
|
- /* margin-top: 10px; */
|
|
|
|
- /* height: 10px;
|
|
|
|
- line-height: 10px; */
|
|
|
|
|
|
+ margin-bottom: 14px;
|
|
text-align: center;
|
|
text-align: center;
|
|
font-size: 12px;
|
|
font-size: 12px;
|
|
- height: 28px;
|
|
|
|
|
|
+ height: 14px;
|
|
line-height: 14px;
|
|
line-height: 14px;
|
|
|
|
+ overflow: hidden;
|
|
|
|
+ text-overflow: ellipsis;
|
|
|
|
+ display: -webkit-box;
|
|
|
|
+ -webkit-line-clamp: 1;
|
|
|
|
+ word-break: break-all;
|
|
|
|
+ -webkit-box-orient: vertical;
|
|
}
|
|
}
|
|
.t-image__wrapper {
|
|
.t-image__wrapper {
|
|
- margin: 10px 14px;
|
|
|
|
|
|
+ /* margin: 10px 23px; */
|
|
height: 32px;
|
|
height: 32px;
|
|
width: 32px;
|
|
width: 32px;
|
|
background: #fff0;
|
|
background: #fff0;
|
|
|
|
+ margin-left: calc(50% - 16px);
|
|
|
|
+ margin-top: 10px;
|
|
|
|
+ margin-bottom: 10px;
|
|
:deep(.t-image) {
|
|
:deep(.t-image) {
|
|
- background-color: #fff;
|
|
|
|
|
|
+ /* background-color: #fff; */
|
|
border-radius: 2px;
|
|
border-radius: 2px;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
@@ -414,9 +435,24 @@ onUnmounted(() => {
|
|
|
|
|
|
svg {
|
|
svg {
|
|
color: var(--color);
|
|
color: var(--color);
|
|
|
|
+ height: 32px;
|
|
|
|
+ width: 100%;
|
|
|
|
+ margin: 4px 0px;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ .svg-box{
|
|
height: 32px;
|
|
height: 32px;
|
|
width: 32px;
|
|
width: 32px;
|
|
- margin: 10px 14px;
|
|
|
|
|
|
+ margin-left: calc(50% - 16px);
|
|
|
|
+ margin-top: 10px;
|
|
|
|
+ margin-bottom: 10px;
|
|
|
|
+ &:deep(svg){
|
|
|
|
+ height: 100%;
|
|
|
|
+ width: 100%;
|
|
|
|
+ .cls-1{
|
|
|
|
+ stroke: var(--color) !important;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|