diff --git a/packages/entry/src/common.js b/packages/entry/src/common.js
index f93cee1e3..d55a0c18f 100644
--- a/packages/entry/src/common.js
+++ b/packages/entry/src/common.js
@@ -10,7 +10,7 @@
*
*/
-import { initHook } from "./hooks"
+import { initHook } from './hooks'
const vueLifeHook = [
'onMounted',
diff --git a/packages/layout/src/Main.vue b/packages/layout/src/Main.vue
index 6c6fee120..c10ac3d8a 100644
--- a/packages/layout/src/Main.vue
+++ b/packages/layout/src/Main.vue
@@ -50,7 +50,7 @@ import { constants } from '@opentiny/tiny-engine-utils'
const { message } = useModal()
const { requestInitBlocks } = blockPlugin.api
-const { fetchGroups } = materials.api
+const { fetchGroups } = materials.apis
const { BROADCAST_CHANNEL } = constants
export default {
diff --git a/packages/plugins/materials/index.js b/packages/plugins/materials/index.js
index 13ff9b5ee..13a773932 100644
--- a/packages/plugins/materials/index.js
+++ b/packages/plugins/materials/index.js
@@ -10,15 +10,28 @@
*
*/
-import entry, { api } from './src/Main.vue'
+import entry from './src/Main.vue'
import metaData from './meta.js'
+import MaterialLayout from './src/meta/layout'
+import MaterialBlock from './src/meta/block'
+import MaterialComponent from './src/meta/component'
+import MaterialHeader from './src/components/header/Main.vue'
import { ResourceService } from './src/composable'
export default {
...metaData,
entry,
- api,
- metas: [ResourceService]
+ layout: MaterialLayout,
+ options: {
+ defaultTabId: 'engine.plugins.materials.component',
+ tabComponentIds: ['engine.plugins.materials.component', 'engine.plugins.materials.block']
+ },
+ components: {
+ header: MaterialHeader
+ },
+ apis: { ...MaterialBlock.apis },
+ api: { ...MaterialBlock.apis },
+ metas: [MaterialBlock, MaterialComponent, ResourceService]
}
export { entry, ResourceService }
diff --git a/packages/plugins/materials/src/Main.vue b/packages/plugins/materials/src/Main.vue
index 3239ecb9d..305919fae 100644
--- a/packages/plugins/materials/src/Main.vue
+++ b/packages/plugins/materials/src/Main.vue
@@ -1,116 +1,18 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
-
-
diff --git a/packages/plugins/materials/src/components/header/Main.vue b/packages/plugins/materials/src/components/header/Main.vue
new file mode 100644
index 000000000..8b734be7a
--- /dev/null
+++ b/packages/plugins/materials/src/components/header/Main.vue
@@ -0,0 +1,33 @@
+
+
+
+
+
diff --git a/packages/plugins/materials/src/meta/block/index.js b/packages/plugins/materials/src/meta/block/index.js
new file mode 100644
index 000000000..b801a21b5
--- /dev/null
+++ b/packages/plugins/materials/src/meta/block/index.js
@@ -0,0 +1,14 @@
+import entry from './src/Main.vue'
+import metaData from './meta'
+import { fetchGroups } from './src/http'
+
+export default {
+ ...metaData,
+ entry,
+ apis: {
+ fetchGroups
+ },
+ options: {
+ title: '区块'
+ }
+}
diff --git a/packages/plugins/materials/src/meta/block/meta.js b/packages/plugins/materials/src/meta/block/meta.js
new file mode 100644
index 000000000..2acb872cf
--- /dev/null
+++ b/packages/plugins/materials/src/meta/block/meta.js
@@ -0,0 +1,4 @@
+export default {
+ id: 'engine.plugins.materials.block',
+ type: 'plugins'
+}
diff --git a/packages/plugins/materials/src/block/BlockDetail.vue b/packages/plugins/materials/src/meta/block/src/BlockDetail.vue
similarity index 100%
rename from packages/plugins/materials/src/block/BlockDetail.vue
rename to packages/plugins/materials/src/meta/block/src/BlockDetail.vue
diff --git a/packages/plugins/materials/src/block/BlockGroup.vue b/packages/plugins/materials/src/meta/block/src/BlockGroup.vue
similarity index 100%
rename from packages/plugins/materials/src/block/BlockGroup.vue
rename to packages/plugins/materials/src/meta/block/src/BlockGroup.vue
diff --git a/packages/plugins/materials/src/block/BlockGroupArrange.vue b/packages/plugins/materials/src/meta/block/src/BlockGroupArrange.vue
similarity index 100%
rename from packages/plugins/materials/src/block/BlockGroupArrange.vue
rename to packages/plugins/materials/src/meta/block/src/BlockGroupArrange.vue
diff --git a/packages/plugins/materials/src/block/BlockGroupFilters.vue b/packages/plugins/materials/src/meta/block/src/BlockGroupFilters.vue
similarity index 100%
rename from packages/plugins/materials/src/block/BlockGroupFilters.vue
rename to packages/plugins/materials/src/meta/block/src/BlockGroupFilters.vue
diff --git a/packages/plugins/materials/src/block/BlockGroupPanel.vue b/packages/plugins/materials/src/meta/block/src/BlockGroupPanel.vue
similarity index 100%
rename from packages/plugins/materials/src/block/BlockGroupPanel.vue
rename to packages/plugins/materials/src/meta/block/src/BlockGroupPanel.vue
diff --git a/packages/plugins/materials/src/block/BlockGroupSort.vue b/packages/plugins/materials/src/meta/block/src/BlockGroupSort.vue
similarity index 100%
rename from packages/plugins/materials/src/block/BlockGroupSort.vue
rename to packages/plugins/materials/src/meta/block/src/BlockGroupSort.vue
diff --git a/packages/plugins/materials/src/block/BlockGroupTransfer.vue b/packages/plugins/materials/src/meta/block/src/BlockGroupTransfer.vue
similarity index 100%
rename from packages/plugins/materials/src/block/BlockGroupTransfer.vue
rename to packages/plugins/materials/src/meta/block/src/BlockGroupTransfer.vue
diff --git a/packages/plugins/materials/src/block/BlockGroupTransferPanel.vue b/packages/plugins/materials/src/meta/block/src/BlockGroupTransferPanel.vue
similarity index 100%
rename from packages/plugins/materials/src/block/BlockGroupTransferPanel.vue
rename to packages/plugins/materials/src/meta/block/src/BlockGroupTransferPanel.vue
diff --git a/packages/plugins/materials/src/block/BlockList.vue b/packages/plugins/materials/src/meta/block/src/BlockList.vue
similarity index 100%
rename from packages/plugins/materials/src/block/BlockList.vue
rename to packages/plugins/materials/src/meta/block/src/BlockList.vue
diff --git a/packages/plugins/materials/src/block/BlockVersionSelect.vue b/packages/plugins/materials/src/meta/block/src/BlockVersionSelect.vue
similarity index 100%
rename from packages/plugins/materials/src/block/BlockVersionSelect.vue
rename to packages/plugins/materials/src/meta/block/src/BlockVersionSelect.vue
diff --git a/packages/plugins/materials/src/block/Main.vue b/packages/plugins/materials/src/meta/block/src/Main.vue
similarity index 85%
rename from packages/plugins/materials/src/block/Main.vue
rename to packages/plugins/materials/src/meta/block/src/Main.vue
index e27165635..dc5706dff 100644
--- a/packages/plugins/materials/src/block/Main.vue
+++ b/packages/plugins/materials/src/meta/block/src/Main.vue
@@ -6,6 +6,10 @@
+
+
+
+
+
+
diff --git a/packages/settings/styles/src/js/useStyle.js b/packages/settings/styles/src/js/useStyle.js
index ebc9fdd12..95dcbcb12 100644
--- a/packages/settings/styles/src/js/useStyle.js
+++ b/packages/settings/styles/src/js/useStyle.js
@@ -134,7 +134,13 @@ const getClassNameAndIdList = (schema) => {
}
watch(
- () => [useCanvas().getCurrentSchema?.(), state.schemaUpdateKey, useProps().propsUpdateKey?.value, useCanvas().canvasApi?.value?.getSchema?.(), schemaLength],
+ () => [
+ useCanvas().getCurrentSchema?.(),
+ state.schemaUpdateKey,
+ useProps().propsUpdateKey?.value,
+ useCanvas().canvasApi?.value?.getSchema?.(),
+ schemaLength
+ ],
([curSchema], [oldCurSchema] = []) => {
const { getCurrentSchema, canvasApi } = useCanvas()
let schema = getCurrentSchema()