From 2a96332eaab172cb02f5aed2a449ffce5ca0f0b7 Mon Sep 17 00:00:00 2001 From: zhf <1204297681@qq.com> Date: Mon, 25 Sep 2023 19:52:39 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E8=A1=A5=E5=85=85studio-theme=E5=8C=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- packages/studio-theme/.eslintrc.cjs | 48 ++ packages/studio-theme/.npmrc | 1 + packages/studio-theme/CHANGELOG.md | 9 + packages/studio-theme/ibiz.config.ts | 44 ++ packages/studio-theme/package.json | 53 ++ packages/studio-theme/scripts/link.sh | 5 + .../bottom-exp/bottom-exp.provider.ts | 20 + .../src/component/bottom-exp/bottom-exp.tsx | 21 + .../src/component/bottom-exp/index.ts | 17 + .../footer-menus/footer-menus.provider.ts | 20 + .../component/footer-menus/footer-menus.tsx | 21 + .../src/component/footer-menus/index.ts | 25 + packages/studio-theme/src/component/index.ts | 5 + .../src/component/left-exp/index.ts | 17 + .../component/left-exp/left-exp.provider.ts | 20 + .../src/component/left-exp/left-exp.tsx | 21 + .../src/component/top-menus/index.ts | 17 + .../component/top-menus/top-menus.provider.ts | 20 + .../src/component/top-menus/top-menus.tsx | 25 + .../src/component/user-menus/index.ts | 17 + .../user-menus/user-menus.provider.ts | 20 + .../src/component/user-menus/user-menus.tsx | 21 + packages/studio-theme/src/index.ts | 21 + .../app-index-view-layout-blank-mode.ts | 31 + .../publish/app-index-view-layout-center.ts | 28 + .../src/publish/app-index-view-layout-top.ts | 426 ++++++++++++++ .../src/publish/app-index-view-layout.ts | 466 +++++++++++++++ .../src/publish/app-login-view.ts | 170 ++++++ ...del-repository-data-view-exp-bar-layout.ts | 180 ++++++ ...ut-model-repository-grid-exp-bar-layout.ts | 179 ++++++ ...ut-model-repository-list-exp-bar-layout.ts | 179 ++++++ ...ut-model-repository-tree-exp-bar-layout.ts | 179 ++++++ packages/studio-theme/src/publish/index.ts | 169 ++++++ ...-repository-de-calendar-exp-view-layout.ts | 98 ++++ ...odel-repository-de-calendar-view-layout.ts | 206 +++++++ ...t-model-repository-de-chart-view-layout.ts | 251 +++++++++ ...repository-de-data-view-exp-view-layout.ts | 98 ++++ ...ut-model-repository-de-data-view-layout.ts | 251 +++++++++ ...-model-repository-de-edit-view-2-layout.ts | 275 +++++++++ ...-model-repository-de-edit-view-3-layout.ts | 257 +++++++++ ...-model-repository-de-edit-view-4-layout.ts | 234 ++++++++ ...ut-model-repository-de-edit-view-layout.ts | 176 ++++++ ...odel-repository-de-grid-exp-view-layout.ts | 98 ++++ ...ut-model-repository-de-grid-view-layout.ts | 251 +++++++++ ...sitory-de-index-pickup-data-view-layout.ts | 28 + ...-model-repository-de-kanban-view-layout.ts | 251 +++++++++ ...odel-repository-de-list-exp-view-layout.ts | 98 ++++ ...ut-model-repository-de-list-view-layout.ts | 251 +++++++++ ...-model-repository-de-option-view-layout.ts | 228 ++++++++ ...t-model-repository-de-panel-view-layout.ts | 176 ++++++ ...l-repository-de-pickup-data-view-layout.ts | 28 + ...l-repository-de-pickup-grid-view-layout.ts | 28 + ...l-repository-de-pickup-tree-view-layout.ts | 27 + ...odel-repository-de-pickup-view-2-layout.ts | 273 +++++++++ ...-model-repository-de-pickup-view-layout.ts | 228 ++++++++ ...model-repository-de-tab-exp-view-layout.ts | 201 +++++++ ...odel-repository-de-tree-exp-view-layout.ts | 98 ++++ ...ut-model-repository-de-tree-view-layout.ts | 250 +++++++++ ...-model-repository-de-wizard-view-layout.ts | 49 ++ ...del-repository-dem-pickup-view-2-layout.ts | 414 ++++++++++++++ ...model-repository-dem-pickup-view-layout.ts | 368 ++++++++++++ ...repository-dewf-dyna-action-view-layout.ts | 98 ++++ ...repository-dewf-dyna-edit-view-3-layout.ts | 257 +++++++++ ...l-repository-dewf-dyna-edit-view-layout.ts | 175 ++++++ ...-repository-dewf-dyna-start-view-layout.ts | 99 ++++ ...-model-repository-form-pickup-data-view.ts | 28 + .../src/theme/elements/index.scss | 35 ++ .../src/theme/generic/element-plus.scss | 454 +++++++++++++++ .../studio-theme/src/theme/generic/index.scss | 2 + packages/studio-theme/src/theme/index.scss | 17 + .../src/theme/objects/expand/expand.scss | 41 ++ .../studio-theme/src/theme/objects/index.scss | 3 + .../src/theme/objects/state/state.scss | 1 + .../src/theme/theme/dark/dark-theme.scss | 280 +++++++++ .../default-dark/default-dark-theme.scss | 378 +++++++++++++ .../theme/theme/default/default-theme.scss | 380 +++++++++++++ .../studio-theme/src/theme/theme/index.scss | 9 + .../src/theme/theme/light/light-theme.scss | 283 ++++++++++ .../theme/theme/omni-oa/omni-oa-theme.scss | 392 +++++++++++++ .../studio-theme/src/theme/tumps/index.scss | 1 + packages/studio-theme/src/theme/var.scss | 88 +++ .../{{pages@DEDATAVIEWEXPVIEW}}.ts.hbs | 3 + .../{{pages@DEGRIDEXPVIEW}}.ts.hbs | 3 + .../{{pages@DELISTEXPVIEW}}.ts.hbs | 3 + .../{{pages@DETREEEXPVIEW}}.ts.hbs | 3 + packages/studio-theme/template/index.ts.hbs | 169 ++++++ .../{{pages@APPINDEXVIEW}}.ts.hbs | 1 + .../{{pages@APPLOGINVIEW}}.ts.hbs | 1 + .../{{pages@DECALENDAREXPVIEW}}.ts.hbs | 3 + .../{{pages@DECALENDARVIEW}}.ts.hbs | 3 + .../{{pages@DECHARTVIEW}}.ts.hbs | 3 + .../{{pages@DEDATAVIEWEXPVIEW}}.ts.hbs | 3 + .../{{pages@DEDATAVIEW}}.ts.hbs | 3 + .../{{pages@DEEDITVIEW2}}.ts.hbs | 3 + .../{{pages@DEEDITVIEW3}}.ts.hbs | 3 + .../{{pages@DEEDITVIEW4}}.ts.hbs | 3 + .../{{pages@DEEDITVIEW}}.ts.hbs | 3 + .../{{pages@DEFORMPICKUPDATAVIEW}}.ts.hbs | 3 + .../{{pages@DEGRIDEXPVIEW}}.ts.hbs | 3 + .../{{pages@DEGRIDVIEW}}.ts.hbs | 3 + .../{{pages@DEINDEXPICKUPDATAVIEW}}.ts.hbs | 3 + .../{{pages@DEKANBANVIEW}}.ts.hbs | 3 + .../{{pages@DELISTEXPVIEW}}.ts.hbs | 3 + .../{{pages@DELISTVIEW}}.ts.hbs | 3 + .../{{pages@DEMPICKUPVIEW2}}.ts.hbs | 3 + .../{{pages@DEMPICKUPVIEW}}.ts.hbs | 3 + .../{{pages@DEOPTVIEW}}.ts.hbs | 3 + .../{{pages@DEPANELVIEW}}.ts.hbs | 3 + .../{{pages@DEPICKUPDATAVIEW}}.ts.hbs | 3 + .../{{pages@DEPICKUPGRIDVIEW}}.ts.hbs | 3 + .../{{pages@DEPICKUPTREEVIEW}}.ts.hbs | 3 + .../{{pages@DEPICKUPVIEW2}}.ts.hbs | 3 + .../{{pages@DEPICKUPVIEW}}.ts.hbs | 3 + .../{{pages@DETABEXPVIEW}}.ts.hbs | 3 + .../{{pages@DETREEEXPVIEW}}.ts.hbs | 3 + .../{{pages@DETREEVIEW}}.ts.hbs | 3 + .../{{pages@DEWFDYNAACTIONVIEW}}.ts.hbs | 3 + .../{{pages@DEWFDYNAEDITVIEW3}}.ts.hbs | 3 + .../{{pages@DEWFDYNAEDITVIEW}}.ts.hbs | 3 + .../{{pages@DEWFDYNASTARTVIEW}}.ts.hbs | 3 + .../{{pages@DEWIZARDVIEW}}.ts.hbs | 3 + packages/studio-theme/tsconfig.json | 14 + pnpm-lock.yaml | 531 +++++++++++++++--- 123 files changed, 11465 insertions(+), 69 deletions(-) create mode 100644 packages/studio-theme/.eslintrc.cjs create mode 100644 packages/studio-theme/.npmrc create mode 100644 packages/studio-theme/CHANGELOG.md create mode 100644 packages/studio-theme/ibiz.config.ts create mode 100644 packages/studio-theme/package.json create mode 100755 packages/studio-theme/scripts/link.sh create mode 100644 packages/studio-theme/src/component/bottom-exp/bottom-exp.provider.ts create mode 100644 packages/studio-theme/src/component/bottom-exp/bottom-exp.tsx create mode 100644 packages/studio-theme/src/component/bottom-exp/index.ts create mode 100644 packages/studio-theme/src/component/footer-menus/footer-menus.provider.ts create mode 100644 packages/studio-theme/src/component/footer-menus/footer-menus.tsx create mode 100644 packages/studio-theme/src/component/footer-menus/index.ts create mode 100644 packages/studio-theme/src/component/index.ts create mode 100644 packages/studio-theme/src/component/left-exp/index.ts create mode 100644 packages/studio-theme/src/component/left-exp/left-exp.provider.ts create mode 100644 packages/studio-theme/src/component/left-exp/left-exp.tsx create mode 100644 packages/studio-theme/src/component/top-menus/index.ts create mode 100644 packages/studio-theme/src/component/top-menus/top-menus.provider.ts create mode 100644 packages/studio-theme/src/component/top-menus/top-menus.tsx create mode 100644 packages/studio-theme/src/component/user-menus/index.ts create mode 100644 packages/studio-theme/src/component/user-menus/user-menus.provider.ts create mode 100644 packages/studio-theme/src/component/user-menus/user-menus.tsx create mode 100644 packages/studio-theme/src/index.ts create mode 100644 packages/studio-theme/src/publish/app-index-view-layout-blank-mode.ts create mode 100644 packages/studio-theme/src/publish/app-index-view-layout-center.ts create mode 100644 packages/studio-theme/src/publish/app-index-view-layout-top.ts create mode 100644 packages/studio-theme/src/publish/app-index-view-layout.ts create mode 100644 packages/studio-theme/src/publish/app-login-view.ts create mode 100644 packages/studio-theme/src/publish/control-layout/control-layout-model-repository-data-view-exp-bar-layout.ts create mode 100644 packages/studio-theme/src/publish/control-layout/control-layout-model-repository-grid-exp-bar-layout.ts create mode 100644 packages/studio-theme/src/publish/control-layout/control-layout-model-repository-list-exp-bar-layout.ts create mode 100644 packages/studio-theme/src/publish/control-layout/control-layout-model-repository-tree-exp-bar-layout.ts create mode 100644 packages/studio-theme/src/publish/index.ts create mode 100644 packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-calendar-exp-view-layout.ts create mode 100644 packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-calendar-view-layout.ts create mode 100644 packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-chart-view-layout.ts create mode 100644 packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-data-view-exp-view-layout.ts create mode 100644 packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-data-view-layout.ts create mode 100644 packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-edit-view-2-layout.ts create mode 100644 packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-edit-view-3-layout.ts create mode 100644 packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-edit-view-4-layout.ts create mode 100644 packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-edit-view-layout.ts create mode 100644 packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-grid-exp-view-layout.ts create mode 100644 packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-grid-view-layout.ts create mode 100644 packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-index-pickup-data-view-layout.ts create mode 100644 packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-kanban-view-layout.ts create mode 100644 packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-list-exp-view-layout.ts create mode 100644 packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-list-view-layout.ts create mode 100644 packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-option-view-layout.ts create mode 100644 packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-panel-view-layout.ts create mode 100644 packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-pickup-data-view-layout.ts create mode 100644 packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-pickup-grid-view-layout.ts create mode 100644 packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-pickup-tree-view-layout.ts create mode 100644 packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-pickup-view-2-layout.ts create mode 100644 packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-pickup-view-layout.ts create mode 100644 packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-tab-exp-view-layout.ts create mode 100644 packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-tree-exp-view-layout.ts create mode 100644 packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-tree-view-layout.ts create mode 100644 packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-wizard-view-layout.ts create mode 100644 packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-dem-pickup-view-2-layout.ts create mode 100644 packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-dem-pickup-view-layout.ts create mode 100644 packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-dewf-dyna-action-view-layout.ts create mode 100644 packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-dewf-dyna-edit-view-3-layout.ts create mode 100644 packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-dewf-dyna-edit-view-layout.ts create mode 100644 packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-dewf-dyna-start-view-layout.ts create mode 100644 packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-form-pickup-data-view.ts create mode 100644 packages/studio-theme/src/theme/elements/index.scss create mode 100644 packages/studio-theme/src/theme/generic/element-plus.scss create mode 100644 packages/studio-theme/src/theme/generic/index.scss create mode 100644 packages/studio-theme/src/theme/index.scss create mode 100644 packages/studio-theme/src/theme/objects/expand/expand.scss create mode 100644 packages/studio-theme/src/theme/objects/index.scss create mode 100644 packages/studio-theme/src/theme/objects/state/state.scss create mode 100644 packages/studio-theme/src/theme/theme/dark/dark-theme.scss create mode 100644 packages/studio-theme/src/theme/theme/default-dark/default-dark-theme.scss create mode 100644 packages/studio-theme/src/theme/theme/default/default-theme.scss create mode 100644 packages/studio-theme/src/theme/theme/index.scss create mode 100644 packages/studio-theme/src/theme/theme/light/light-theme.scss create mode 100644 packages/studio-theme/src/theme/theme/omni-oa/omni-oa-theme.scss create mode 100644 packages/studio-theme/src/theme/tumps/index.scss create mode 100644 packages/studio-theme/src/theme/var.scss create mode 100644 packages/studio-theme/template/control-layout/{{pages@DEDATAVIEWEXPVIEW}}.ts.hbs create mode 100644 packages/studio-theme/template/control-layout/{{pages@DEGRIDEXPVIEW}}.ts.hbs create mode 100644 packages/studio-theme/template/control-layout/{{pages@DELISTEXPVIEW}}.ts.hbs create mode 100644 packages/studio-theme/template/control-layout/{{pages@DETREEEXPVIEW}}.ts.hbs create mode 100644 packages/studio-theme/template/index.ts.hbs create mode 100644 packages/studio-theme/template/{{appEntities}}/{{pages@APPINDEXVIEW}}.ts.hbs create mode 100644 packages/studio-theme/template/{{appEntities}}/{{pages@APPLOGINVIEW}}.ts.hbs create mode 100644 packages/studio-theme/template/{{appEntities}}/{{pages@DECALENDAREXPVIEW}}.ts.hbs create mode 100644 packages/studio-theme/template/{{appEntities}}/{{pages@DECALENDARVIEW}}.ts.hbs create mode 100644 packages/studio-theme/template/{{appEntities}}/{{pages@DECHARTVIEW}}.ts.hbs create mode 100644 packages/studio-theme/template/{{appEntities}}/{{pages@DEDATAVIEWEXPVIEW}}.ts.hbs create mode 100644 packages/studio-theme/template/{{appEntities}}/{{pages@DEDATAVIEW}}.ts.hbs create mode 100644 packages/studio-theme/template/{{appEntities}}/{{pages@DEEDITVIEW2}}.ts.hbs create mode 100644 packages/studio-theme/template/{{appEntities}}/{{pages@DEEDITVIEW3}}.ts.hbs create mode 100644 packages/studio-theme/template/{{appEntities}}/{{pages@DEEDITVIEW4}}.ts.hbs create mode 100644 packages/studio-theme/template/{{appEntities}}/{{pages@DEEDITVIEW}}.ts.hbs create mode 100644 packages/studio-theme/template/{{appEntities}}/{{pages@DEFORMPICKUPDATAVIEW}}.ts.hbs create mode 100644 packages/studio-theme/template/{{appEntities}}/{{pages@DEGRIDEXPVIEW}}.ts.hbs create mode 100644 packages/studio-theme/template/{{appEntities}}/{{pages@DEGRIDVIEW}}.ts.hbs create mode 100644 packages/studio-theme/template/{{appEntities}}/{{pages@DEINDEXPICKUPDATAVIEW}}.ts.hbs create mode 100644 packages/studio-theme/template/{{appEntities}}/{{pages@DEKANBANVIEW}}.ts.hbs create mode 100644 packages/studio-theme/template/{{appEntities}}/{{pages@DELISTEXPVIEW}}.ts.hbs create mode 100644 packages/studio-theme/template/{{appEntities}}/{{pages@DELISTVIEW}}.ts.hbs create mode 100644 packages/studio-theme/template/{{appEntities}}/{{pages@DEMPICKUPVIEW2}}.ts.hbs create mode 100644 packages/studio-theme/template/{{appEntities}}/{{pages@DEMPICKUPVIEW}}.ts.hbs create mode 100644 packages/studio-theme/template/{{appEntities}}/{{pages@DEOPTVIEW}}.ts.hbs create mode 100644 packages/studio-theme/template/{{appEntities}}/{{pages@DEPANELVIEW}}.ts.hbs create mode 100644 packages/studio-theme/template/{{appEntities}}/{{pages@DEPICKUPDATAVIEW}}.ts.hbs create mode 100644 packages/studio-theme/template/{{appEntities}}/{{pages@DEPICKUPGRIDVIEW}}.ts.hbs create mode 100644 packages/studio-theme/template/{{appEntities}}/{{pages@DEPICKUPTREEVIEW}}.ts.hbs create mode 100644 packages/studio-theme/template/{{appEntities}}/{{pages@DEPICKUPVIEW2}}.ts.hbs create mode 100644 packages/studio-theme/template/{{appEntities}}/{{pages@DEPICKUPVIEW}}.ts.hbs create mode 100644 packages/studio-theme/template/{{appEntities}}/{{pages@DETABEXPVIEW}}.ts.hbs create mode 100644 packages/studio-theme/template/{{appEntities}}/{{pages@DETREEEXPVIEW}}.ts.hbs create mode 100644 packages/studio-theme/template/{{appEntities}}/{{pages@DETREEVIEW}}.ts.hbs create mode 100644 packages/studio-theme/template/{{appEntities}}/{{pages@DEWFDYNAACTIONVIEW}}.ts.hbs create mode 100644 packages/studio-theme/template/{{appEntities}}/{{pages@DEWFDYNAEDITVIEW3}}.ts.hbs create mode 100644 packages/studio-theme/template/{{appEntities}}/{{pages@DEWFDYNAEDITVIEW}}.ts.hbs create mode 100644 packages/studio-theme/template/{{appEntities}}/{{pages@DEWFDYNASTARTVIEW}}.ts.hbs create mode 100644 packages/studio-theme/template/{{appEntities}}/{{pages@DEWIZARDVIEW}}.ts.hbs create mode 100644 packages/studio-theme/tsconfig.json diff --git a/packages/studio-theme/.eslintrc.cjs b/packages/studio-theme/.eslintrc.cjs new file mode 100644 index 0000000..cc8b12b --- /dev/null +++ b/packages/studio-theme/.eslintrc.cjs @@ -0,0 +1,48 @@ +module.exports = { + root: true, + env: { + browser: true, + es2021: true, + }, + extends: [ + 'airbnb-base', + 'plugin:vue/recommended', + 'plugin:prettier/recommended', + 'plugin:@typescript-eslint/recommended', + ], + parser: 'vue-eslint-parser', + parserOptions: { + parser: '@typescript-eslint/parser', + ecmaFeatures: { + jsx: true, + }, + ecmaVersion: 'latest', + sourceType: 'module', + }, + plugins: ['vue', '@typescript-eslint', 'unused-imports'], + rules: { + 'no-console': process.env.NODE_ENV === 'production' ? 'warn' : 'off', + 'no-debugger': process.env.NODE_ENV === 'production' ? 'warn' : 'off', + 'no-undef': [0], + 'no-plusplus': ['error', { allowForLoopAfterthoughts: true }], // 禁止使用++,-- + 'class-methods-use-this': [0], // 强制未使用到 this 的对象方法改为静态 + 'prefer-destructuring': [0], + 'import/no-unresolved': [0], + 'unused-imports/no-unused-imports': 'error', + 'no-underscore-dangle': [0], // 禁止使用下划线开头的变量名 + 'consistent-return': [0], // return 后面是否允许省略 + 'func-names': [0], // 函数表达式必须有名字 + 'import/extensions': [0], // 引入文件时必须制定后缀 + 'import/prefer-default-export': [0], // 关闭首选默认导出 + 'vue/no-setup-props-destructure': [0], + 'vue/require-default-prop': [0], // props 非必填参数必须给默认值 + 'no-unused-vars': ['error', { argsIgnorePattern: '^_' }], + '@typescript-eslint/no-unused-vars': ['error', { argsIgnorePattern: '^_' }], + '@typescript-eslint/no-inferrable-types': [0], + '@typescript-eslint/no-explicit-any': ['error'], + '@typescript-eslint/explicit-module-boundary-types': 'error', // 要求导出函数和类的公共类方法的显式返回和参数类型 + 'no-param-reassign': [0], + 'no-useless-constructor': [0], + 'no-empty-function': [0], + }, +}; diff --git a/packages/studio-theme/.npmrc b/packages/studio-theme/.npmrc new file mode 100644 index 0000000..214c29d --- /dev/null +++ b/packages/studio-theme/.npmrc @@ -0,0 +1 @@ +registry=https://registry.npmjs.org/ diff --git a/packages/studio-theme/CHANGELOG.md b/packages/studio-theme/CHANGELOG.md new file mode 100644 index 0000000..3163e96 --- /dev/null +++ b/packages/studio-theme/CHANGELOG.md @@ -0,0 +1,9 @@ +# 版本变更日志 + +这个项目的所有关键变化都将记录在此文件中. + +此日志格式基于 [Keep a Changelog](https://keepachangelog.com/zh-CN/1.0.0/), +并且此项目遵循 [Semantic Versioning](https://semver.org/lang/zh-CN/). + +## [Unreleased] + diff --git a/packages/studio-theme/ibiz.config.ts b/packages/studio-theme/ibiz.config.ts new file mode 100644 index 0000000..28f8823 --- /dev/null +++ b/packages/studio-theme/ibiz.config.ts @@ -0,0 +1,44 @@ +/* eslint-disable import/no-extraneous-dependencies */ +import path from 'path'; +import { defineConfig } from '@ibiz-template/cli'; + +const cwd = process.cwd(); + +const root = path.resolve(cwd, 'src'); + +export default defineConfig({ + rootDir: root, + bundles: [ + { + input: 'index.ts', + output: [ + { + format: 'system', + dir: 'dist', + entryFileNames: '[name].system.min.js', + sourcemap: true, + }, + ], + }, + ], + theme: { + prefix: `@import "${path.resolve( + cwd, + 'node_modules/@ibiz-template/theme/style/global.scss', + )}";`, + output: ['es', 'lib'], + }, + external: [ + 'vue', + 'vue-router', + 'vue-i18n', + 'qx-util', + 'pinia', + 'element-plus', + '@ibiz-template/core', + '@ibiz-template/runtime', + '@ibiz-template/vue3-util', + '@ibiz-template/model-helper', + '@ibiz-template/vue3-components', + ], +}); diff --git a/packages/studio-theme/package.json b/packages/studio-theme/package.json new file mode 100644 index 0000000..9913597 --- /dev/null +++ b/packages/studio-theme/package.json @@ -0,0 +1,53 @@ +{ + "name": "@ibiz-template/studio-theme", + "version": "1.0.18", + "type": "module", + "main": "lib/index.cjs", + "types": "es/index.d.ts", + "exports": { + ".": { + "import": "./es/index.mjs", + "require": "./lib/index.cjs" + } + }, + "repository": { + "type": "git", + "url": "https://gitee.com/iBizModeling/ibiz-template-vue-theme.git" + }, + "files": [ + "dist", + "es", + "lib", + "CHANGELOG.md" + ], + "scripts": { + "dev": "ibiz-temp build -w", + "build": "npm run pub && ibiz-temp build -c && vue-tsc --declaration --emitDeclarationOnly", + "pub": "ibizlab pub -m /root/workspace/FrontPresetModel/frontmodelbackend-core/src/main/resources/model/front/model/ibiz -t ./template -o ./src/publish --app StudioFrontModel --clean", + "publish:next": "npm run build && npm publish --access public --tag=next --registry=https://registry.npmjs.org/", + "publish:dev": "npm run build && npm publish --access public --tag=dev --registry=https://registry.npmjs.org/", + "publish:beta": "npm run build && npm publish --access public --tag=beta --registry=https://registry.npmjs.org/", + "publish:npm": "npm run build && npm publish --access public --registry=https://registry.npmjs.org/" + }, + "author": "chitanda", + "license": "MIT", + "dependencies": { + "@ibiz-template/core": "^0.1.24", + "@ibiz-template/model-helper": "^0.1.28", + "@ibiz-template/runtime": "^0.1.28", + "@ibiz-template/theme": "^0.1.24", + "@ibiz-template/vue3-util": "^0.1.28", + "@ibiz/model-core": "^0.0.18", + "element-plus": "^2.3.14", + "pinia": "^2.1.6", + "qx-util": "^0.4.8", + "vue": "^3.3.4", + "vue-i18n": "^9.4.1", + "vue-router": "^4.2.4" + }, + "devDependencies": { + "typescript": "^5.2.2", + "vite": "^4.4.9", + "vue-tsc": "^1.8.11" + } +} diff --git a/packages/studio-theme/scripts/link.sh b/packages/studio-theme/scripts/link.sh new file mode 100755 index 0000000..6a18037 --- /dev/null +++ b/packages/studio-theme/scripts/link.sh @@ -0,0 +1,5 @@ +pnpm link --global "@ibiz-template/vue3-util" +pnpm link --global "@ibiz-template/model-helper" +pnpm link --global "@ibiz-template/runtime" +pnpm link --global "@ibiz-template/core" +pnpm link --global "@ibiz-template/theme" \ No newline at end of file diff --git a/packages/studio-theme/src/component/bottom-exp/bottom-exp.provider.ts b/packages/studio-theme/src/component/bottom-exp/bottom-exp.provider.ts new file mode 100644 index 0000000..0aea39b --- /dev/null +++ b/packages/studio-theme/src/component/bottom-exp/bottom-exp.provider.ts @@ -0,0 +1,20 @@ +import { + IPanelItemProvider, + PanelController, + PanelItemController, +} from '@ibiz-template/runtime'; +import { IPanelItem } from '@ibiz/model-core'; + +export class BottomExpProvider implements IPanelItemProvider { + component: string = 'IBizBottomExp'; + + async createController( + panelItem: IPanelItem, + panel: PanelController, + parent: PanelItemController | undefined, + ): Promise { + const c = new PanelItemController(panelItem, panel, parent); + await c.init(); + return c; + } +} diff --git a/packages/studio-theme/src/component/bottom-exp/bottom-exp.tsx b/packages/studio-theme/src/component/bottom-exp/bottom-exp.tsx new file mode 100644 index 0000000..d7059c1 --- /dev/null +++ b/packages/studio-theme/src/component/bottom-exp/bottom-exp.tsx @@ -0,0 +1,21 @@ +import { defineComponent, PropType } from 'vue'; +import { IPanelRawItem } from '@ibiz/model-core'; +import { PanelItemController } from '@ibiz-template/runtime'; + +export const BottomExp = defineComponent({ + name: 'IBizBottomExp', + props: { + modelData: { + type: Object as PropType, + required: true, + }, + controller: { + type: PanelItemController, + required: true, + }, + }, + setup(_prop) {}, + render() { + return
{this.modelData.rawItem?.predefinedType}
; + }, +}); diff --git a/packages/studio-theme/src/component/bottom-exp/index.ts b/packages/studio-theme/src/component/bottom-exp/index.ts new file mode 100644 index 0000000..d2658b1 --- /dev/null +++ b/packages/studio-theme/src/component/bottom-exp/index.ts @@ -0,0 +1,17 @@ +import { registerPanelItemProvider } from '@ibiz-template/runtime'; +import { withInstall } from '@ibiz-template/vue3-util'; +import { App } from 'vue'; +import { BottomExp } from './bottom-exp'; +import { BottomExpProvider } from './bottom-exp.provider'; + +export { BottomExpProvider }; + +export const IBizBottomExp = withInstall(BottomExp, function (v: App) { + v.component(BottomExp.name, BottomExp); + registerPanelItemProvider( + 'RAWITEM_INDEX_BOTTOM_EXP', + () => new BottomExpProvider(), + ); +}); + +export default IBizBottomExp; diff --git a/packages/studio-theme/src/component/footer-menus/footer-menus.provider.ts b/packages/studio-theme/src/component/footer-menus/footer-menus.provider.ts new file mode 100644 index 0000000..c8b83e9 --- /dev/null +++ b/packages/studio-theme/src/component/footer-menus/footer-menus.provider.ts @@ -0,0 +1,20 @@ +import { + IPanelItemProvider, + PanelController, + PanelItemController, +} from '@ibiz-template/runtime'; +import { IPanelItem } from '@ibiz/model-core'; + +export class FooterMenusProvider implements IPanelItemProvider { + component: string = 'IBizFooterMenus'; + + async createController( + panelItem: IPanelItem, + panel: PanelController, + parent: PanelItemController | undefined, + ): Promise { + const c = new PanelItemController(panelItem, panel, parent); + await c.init(); + return c; + } +} diff --git a/packages/studio-theme/src/component/footer-menus/footer-menus.tsx b/packages/studio-theme/src/component/footer-menus/footer-menus.tsx new file mode 100644 index 0000000..705c84f --- /dev/null +++ b/packages/studio-theme/src/component/footer-menus/footer-menus.tsx @@ -0,0 +1,21 @@ +import { defineComponent, PropType } from 'vue'; +import { IPanelRawItem } from '@ibiz/model-core'; +import { PanelItemController } from '@ibiz-template/runtime'; + +export const FooterMenus = defineComponent({ + name: 'IBizFooterMenus', + props: { + modelData: { + type: Object as PropType, + required: true, + }, + controller: { + type: PanelItemController, + required: true, + }, + }, + setup(_prop) {}, + render() { + return
{this.modelData.rawItem?.predefinedType}
; + }, +}); diff --git a/packages/studio-theme/src/component/footer-menus/index.ts b/packages/studio-theme/src/component/footer-menus/index.ts new file mode 100644 index 0000000..0d33d94 --- /dev/null +++ b/packages/studio-theme/src/component/footer-menus/index.ts @@ -0,0 +1,25 @@ +import { registerPanelItemProvider } from '@ibiz-template/runtime'; +import { withInstall } from '@ibiz-template/vue3-util'; +import { App } from 'vue'; +import { FooterMenus } from './footer-menus'; +import { FooterMenusProvider } from './footer-menus.provider'; + +export { FooterMenusProvider }; + +export const IBizFooterMenus = withInstall(FooterMenus, function (v: App) { + v.component(FooterMenus.name, FooterMenus); + registerPanelItemProvider( + 'RAWITEM_INDEX_FOOTER_LEFT', + () => new FooterMenusProvider(), + ); + registerPanelItemProvider( + 'RAWITEM_INDEX_FOOTER_CENTER', + () => new FooterMenusProvider(), + ); + registerPanelItemProvider( + 'RAWITEM_INDEX_FOOTER_RIGHT', + () => new FooterMenusProvider(), + ); +}); + +export default IBizFooterMenus; diff --git a/packages/studio-theme/src/component/index.ts b/packages/studio-theme/src/component/index.ts new file mode 100644 index 0000000..5222041 --- /dev/null +++ b/packages/studio-theme/src/component/index.ts @@ -0,0 +1,5 @@ +export * from './footer-menus'; +export * from './left-exp'; +export * from './bottom-exp'; +export * from './top-menus'; +export * from './user-menus'; diff --git a/packages/studio-theme/src/component/left-exp/index.ts b/packages/studio-theme/src/component/left-exp/index.ts new file mode 100644 index 0000000..1e66441 --- /dev/null +++ b/packages/studio-theme/src/component/left-exp/index.ts @@ -0,0 +1,17 @@ +import { registerPanelItemProvider } from '@ibiz-template/runtime'; +import { withInstall } from '@ibiz-template/vue3-util'; +import { App } from 'vue'; +import { LeftExp } from './left-exp'; +import { LeftExpProvider } from './left-exp.provider'; + +export { LeftExpProvider }; + +export const IBizLeftExp = withInstall(LeftExp, function (v: App) { + v.component(LeftExp.name, LeftExp); + registerPanelItemProvider( + 'RAWITEM_INDEX_LEFT_EXP', + () => new LeftExpProvider(), + ); +}); + +export default IBizLeftExp; diff --git a/packages/studio-theme/src/component/left-exp/left-exp.provider.ts b/packages/studio-theme/src/component/left-exp/left-exp.provider.ts new file mode 100644 index 0000000..7ca55ab --- /dev/null +++ b/packages/studio-theme/src/component/left-exp/left-exp.provider.ts @@ -0,0 +1,20 @@ +import { + IPanelItemProvider, + PanelController, + PanelItemController, +} from '@ibiz-template/runtime'; +import { IPanelItem } from '@ibiz/model-core'; + +export class LeftExpProvider implements IPanelItemProvider { + component: string = 'IBizLeftExp'; + + async createController( + panelItem: IPanelItem, + panel: PanelController, + parent: PanelItemController | undefined, + ): Promise { + const c = new PanelItemController(panelItem, panel, parent); + await c.init(); + return c; + } +} diff --git a/packages/studio-theme/src/component/left-exp/left-exp.tsx b/packages/studio-theme/src/component/left-exp/left-exp.tsx new file mode 100644 index 0000000..463ab82 --- /dev/null +++ b/packages/studio-theme/src/component/left-exp/left-exp.tsx @@ -0,0 +1,21 @@ +import { defineComponent, PropType } from 'vue'; +import { IPanelRawItem } from '@ibiz/model-core'; +import { PanelItemController } from '@ibiz-template/runtime'; + +export const LeftExp = defineComponent({ + name: 'IBizLeftExp', + props: { + modelData: { + type: Object as PropType, + required: true, + }, + controller: { + type: PanelItemController, + required: true, + }, + }, + setup(_prop) {}, + render() { + return
{this.modelData.rawItem?.predefinedType}
; + }, +}); diff --git a/packages/studio-theme/src/component/top-menus/index.ts b/packages/studio-theme/src/component/top-menus/index.ts new file mode 100644 index 0000000..8110d16 --- /dev/null +++ b/packages/studio-theme/src/component/top-menus/index.ts @@ -0,0 +1,17 @@ +import { registerPanelItemProvider } from '@ibiz-template/runtime'; +import { withInstall } from '@ibiz-template/vue3-util'; +import { App } from 'vue'; +import { TopMenus } from './top-menus'; +import { TopMenusProvider } from './top-menus.provider'; + +export { TopMenusProvider }; + +export const IBizTopMenus = withInstall(TopMenus, function (v: App) { + v.component(TopMenus.name, TopMenus); + registerPanelItemProvider( + 'RAWITEM_INDEX_TOP_MENUS', + () => new TopMenusProvider(), + ); +}); + +export default IBizTopMenus; diff --git a/packages/studio-theme/src/component/top-menus/top-menus.provider.ts b/packages/studio-theme/src/component/top-menus/top-menus.provider.ts new file mode 100644 index 0000000..1920209 --- /dev/null +++ b/packages/studio-theme/src/component/top-menus/top-menus.provider.ts @@ -0,0 +1,20 @@ +import { + IPanelItemProvider, + PanelController, + PanelItemController, +} from '@ibiz-template/runtime'; +import { IPanelItem } from '@ibiz/model-core'; + +export class TopMenusProvider implements IPanelItemProvider { + component: string = 'IBizTopMenus'; + + async createController( + panelItem: IPanelItem, + panel: PanelController, + parent: PanelItemController | undefined, + ): Promise { + const c = new PanelItemController(panelItem, panel, parent); + await c.init(); + return c; + } +} diff --git a/packages/studio-theme/src/component/top-menus/top-menus.tsx b/packages/studio-theme/src/component/top-menus/top-menus.tsx new file mode 100644 index 0000000..aa4a528 --- /dev/null +++ b/packages/studio-theme/src/component/top-menus/top-menus.tsx @@ -0,0 +1,25 @@ +import { defineComponent, inject, PropType } from 'vue'; +import { IPanelRawItem } from '@ibiz/model-core'; +import { CTX, PanelItemController } from '@ibiz-template/runtime'; + +export const TopMenus = defineComponent({ + name: 'IBizTopMenus', + props: { + modelData: { + type: Object as PropType, + required: true, + }, + controller: { + type: PanelItemController, + required: true, + }, + }, + setup(_prop) { + const ctx = inject('ctx', undefined); + console.log(ctx?.view); + }, + render() { + console.log(this.controller, this.modelData); + return
{this.modelData.rawItem?.predefinedType}
; + }, +}); diff --git a/packages/studio-theme/src/component/user-menus/index.ts b/packages/studio-theme/src/component/user-menus/index.ts new file mode 100644 index 0000000..7eb13aa --- /dev/null +++ b/packages/studio-theme/src/component/user-menus/index.ts @@ -0,0 +1,17 @@ +import { registerPanelItemProvider } from '@ibiz-template/runtime'; +import { withInstall } from '@ibiz-template/vue3-util'; +import { App } from 'vue'; +import { UserMenus } from './user-menus'; +import { UserMenusProvider } from './user-menus.provider'; + +export { UserMenusProvider }; + +export const IBizUserMenus = withInstall(UserMenus, (v: App) => { + v.component(UserMenus.name, UserMenus); + registerPanelItemProvider( + 'RAWITEM_INDEX_USER_MENUS', + () => new UserMenusProvider(), + ); +}); + +export default UserMenusProvider; diff --git a/packages/studio-theme/src/component/user-menus/user-menus.provider.ts b/packages/studio-theme/src/component/user-menus/user-menus.provider.ts new file mode 100644 index 0000000..2288faf --- /dev/null +++ b/packages/studio-theme/src/component/user-menus/user-menus.provider.ts @@ -0,0 +1,20 @@ +import { + IPanelItemProvider, + PanelController, + PanelItemController, +} from '@ibiz-template/runtime'; +import { IPanelItem } from '@ibiz/model-core'; + +export class UserMenusProvider implements IPanelItemProvider { + component: string = 'IBizUserMenus'; + + async createController( + panelItem: IPanelItem, + panel: PanelController, + parent: PanelItemController | undefined, + ): Promise { + const c = new PanelItemController(panelItem, panel, parent); + await c.init(); + return c; + } +} diff --git a/packages/studio-theme/src/component/user-menus/user-menus.tsx b/packages/studio-theme/src/component/user-menus/user-menus.tsx new file mode 100644 index 0000000..b9a61fc --- /dev/null +++ b/packages/studio-theme/src/component/user-menus/user-menus.tsx @@ -0,0 +1,21 @@ +import { defineComponent, PropType } from 'vue'; +import { IPanelRawItem } from '@ibiz/model-core'; +import { PanelItemController } from '@ibiz-template/runtime'; + +export const UserMenus = defineComponent({ + name: 'IBizUserMenus', + props: { + modelData: { + type: Object as PropType, + required: true, + }, + controller: { + type: PanelItemController, + required: true, + }, + }, + setup(_prop) {}, + render() { + return
{this.modelData.rawItem?.predefinedType}
; + }, +}); diff --git a/packages/studio-theme/src/index.ts b/packages/studio-theme/src/index.ts new file mode 100644 index 0000000..2cd7b06 --- /dev/null +++ b/packages/studio-theme/src/index.ts @@ -0,0 +1,21 @@ +import { App } from 'vue'; +import { + IBizBottomExp, + IBizFooterMenus, + IBizLeftExp, + IBizTopMenus, + IBizUserMenus, +} from './component'; +import './theme/index.scss'; + +export * from './publish'; + +export default { + install: (v: App): void => { + v.use(IBizFooterMenus); + v.use(IBizLeftExp); + v.use(IBizBottomExp); + v.use(IBizTopMenus); + v.use(IBizUserMenus); + }, +}; diff --git a/packages/studio-theme/src/publish/app-index-view-layout-blank-mode.ts b/packages/studio-theme/src/publish/app-index-view-layout-blank-mode.ts new file mode 100644 index 0000000..3ff787f --- /dev/null +++ b/packages/studio-theme/src/publish/app-index-view-layout-blank-mode.ts @@ -0,0 +1,31 @@ +export default { + "layoutMode": "FLEX", + "layout": { + "layout": "FLEX" + }, + "rootPanelItems": [ + { + "rawItem": { + "predefinedType": "NAV_POS_INDEX", + "id": "nav_pos_index" + }, + "caption": "导航区占位", + "itemStyle": "DEFAULT", + "itemType": "RAWITEM", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "showCaption": true, + "id": "nav_pos_index" + } + ], + "layoutPanel": true, + "codeName": "IndexViewLayout_BLANK_MODE", + "controlType": "VIEWLAYOUTPANEL", + "logicName": "应用首页视图布局_空白模式(预置模型)", + "controlParam": {}, + "name": "layoutpanel", + "id": "indexviewlayout_blank_mode" +} diff --git a/packages/studio-theme/src/publish/app-index-view-layout-center.ts b/packages/studio-theme/src/publish/app-index-view-layout-center.ts new file mode 100644 index 0000000..49772b7 --- /dev/null +++ b/packages/studio-theme/src/publish/app-index-view-layout-center.ts @@ -0,0 +1,28 @@ +export default { + "layoutMode": "FLEX", + "layout": { + "layout": "FLEX" + }, + "rootPanelItems": [ + { + "caption": "首页菜单", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX", + "widthMode": "FULL" + }, + "showCaption": true, + "id": "appmenu" + } + ], + "layoutPanel": true, + "codeName": "IndexViewLayout_CENTER", + "controlType": "VIEWLAYOUTPANEL", + "logicName": "应用首页视图布局_中间菜单(预置模型)", + "controlParam": {}, + "name": "layoutpanel", + "id": "indexviewlayout_center" +} diff --git a/packages/studio-theme/src/publish/app-index-view-layout-top.ts b/packages/studio-theme/src/publish/app-index-view-layout-top.ts new file mode 100644 index 0000000..37cb8ce --- /dev/null +++ b/packages/studio-theme/src/publish/app-index-view-layout-top.ts @@ -0,0 +1,426 @@ +export default { + "layoutMode": "FLEX", + "layout": { + "layout": "FLEX" + }, + "rootPanelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "rawItem": { + "predefinedType": "NAV_TABS", + "id": "nav_tabs" + }, + "caption": "标签页导航栏", + "itemStyle": "DEFAULT", + "itemType": "RAWITEM", + "layoutPos": { + "shrink": 0, + "layout": "FLEX" + }, + "showCaption": true, + "id": "nav_tabs" + }, + { + "rawItem": { + "predefinedType": "NAV_POS_INDEX", + "id": "nav_pos_index" + }, + "caption": "导航区占位", + "itemStyle": "DEFAULT", + "itemType": "RAWITEM", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "nav_pos_index" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "contentHeight": 100, + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "layoutPos": "CENTER", + "height": 100, + "heightMode": "PERCENTAGE", + "layout": "BORDER" + }, + "id": "app_content" + } + ], + "predefinedType": "CONTAINER_SCROLL_MAIN", + "layout": { + "layout": "BORDER" + }, + "dataRegionType": "INHERIT", + "caption": "面板容器", + "contentWidth": 100, + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "layoutPos": "CENTER", + "layout": "BORDER", + "width": 100, + "widthMode": "PERCENTAGE" + }, + "showCaption": true, + "id": "container_scroll_main" + }, + { + "panelItems": [ + { + "panelItems": [ + { + "rawItem": { + "predefinedType": "APP_APPTITLE", + "id": "app_apptitle" + }, + "caption": "应用标题", + "itemStyle": "DEFAULT", + "itemType": "RAWITEM", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "app_apptitle" + }, + { + "caption": "首页菜单", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "appmenu" + }, + { + "panelItems": [ + { + "panelItems": [ + { + "rawItem": { + "caption": "文本内容", + "halign": "LEFT", + "renderMode": "TEXT", + "valign": "MIDDLE", + "wrapMode": "NOWRAP", + "contentType": "RAW", + "predefinedType": "INDEX_VIEW_SEARCH", + "id": "index_view_search" + }, + "caption": "文本", + "itemStyle": "DEFAULT", + "itemType": "RAWITEM", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "index_view_search" + } + ], + "layout": { + "align": "center", + "layout": "FLEX", + "valign": "center" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "container3" + }, + { + "panelItems": [ + { + "panelItems": [ + { + "actionType": "NONE", + "buttonStyle": "DEFAULT", + "buttonType": "PANELBUTTON", + "renderMode": "BUTTON", + "tooltip": "按钮", + "uiactionTarget": "NONE", + "caption": "按钮", + "itemStyle": "DEFAULT", + "itemType": "BUTTON", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "sysImage": { + "imagePath": "svg/message.svg", + "imagePathX": "svg/message.svg" + }, + "id": "button_calluilogic" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "id": "container4" + }, + { + "panelItems": [ + { + "actionType": "NONE", + "buttonStyle": "DEFAULT", + "buttonType": "PANELBUTTON", + "renderMode": "BUTTON", + "tooltip": "按钮", + "uiactionTarget": "NONE", + "caption": "按钮", + "itemStyle": "DEFAULT", + "itemType": "BUTTON", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "sysImage": { + "imagePath": "svg/setting.svg", + "imagePathX": "svg/setting.svg" + }, + "id": "button_calluilogic1" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "id": "container5" + }, + { + "panelItems": [ + { + "actionType": "NONE", + "buttonStyle": "DEFAULT", + "buttonType": "PANELBUTTON", + "renderMode": "BUTTON", + "tooltip": "按钮", + "uiactionTarget": "NONE", + "caption": "按钮", + "itemStyle": "DEFAULT", + "itemType": "BUTTON", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "sysImage": { + "imagePath": "svg/helper.svg", + "imagePathX": "svg/helper.svg" + }, + "id": "button_calluilogic2" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "id": "container6" + }, + { + "panelItems": [ + { + "actionType": "NONE", + "buttonStyle": "DEFAULT", + "buttonType": "PANELBUTTON", + "renderMode": "BUTTON", + "tooltip": "按钮", + "uiactionTarget": "NONE", + "caption": "按钮", + "itemStyle": "DEFAULT", + "itemType": "BUTTON", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "sysImage": { + "imagePath": "svg/custom-workbench.svg", + "imagePathX": "svg/custom-workbench.svg" + }, + "id": "button_calluilogic3" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "id": "container7" + } + ], + "layout": { + "align": "center", + "dir": "row", + "layout": "FLEX", + "valign": "center" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "indextopactions" + }, + { + "panelItems": [ + { + "rawItem": { + "predefinedType": "AUTH_USERINFO", + "id": "auth_userinfo" + }, + "caption": "用户信息", + "itemStyle": "DEFAULT", + "itemType": "RAWITEM", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "auth_userinfo" + } + ], + "layout": { + "align": "center", + "layout": "FLEX", + "valign": "center" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "container1" + } + ], + "layout": { + "dir": "row", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "id": "container" + } + ], + "predefinedType": "AppHeader", + "layout": { + "align": "space-between", + "dir": "row", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "layoutPos": "CENTER", + "heightMode": "FULL", + "layout": "BORDER" + }, + "id": "app_header" + } + ], + "predefinedType": "CONTAINER_SCROLL_HEADER", + "layout": { + "layout": "BORDER" + }, + "dataRegionType": "INHERIT", + "caption": "面板容器", + "contentHeight": 56, + "height": 56, + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "layoutPos": "NORTH", + "height": 56, + "heightMode": "PX", + "layout": "BORDER" + }, + "showCaption": true, + "id": "container_scroll_header" + } + ], + "predefinedType": "CONTAINER_SCROLL", + "layout": { + "layout": "BORDER" + }, + "dataRegionType": "INHERIT", + "caption": "滚动条容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "id": "container_scroll1" + } + ], + "layoutPanel": true, + "codeName": "IndexViewLayout_TOP", + "controlType": "VIEWLAYOUTPANEL", + "logicName": "应用首页视图布局_上方菜单(预置模型)", + "controlParam": {}, + "name": "layoutpanel", + "id": "indexviewlayout_top" +} diff --git a/packages/studio-theme/src/publish/app-index-view-layout.ts b/packages/studio-theme/src/publish/app-index-view-layout.ts new file mode 100644 index 0000000..051db14 --- /dev/null +++ b/packages/studio-theme/src/publish/app-index-view-layout.ts @@ -0,0 +1,466 @@ +export default { + "viewProxyMode": true, + "layoutMode": "FLEX", + "layout": { + "layout": "FLEX" + }, + "rootPanelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "rawItem": { + "predefinedType": "APP_APPTITLE", + "id": "app_title" + }, + "caption": "应用标题", + "itemStyle": "DEFAULT", + "itemType": "RAWITEM", + "layoutPos": { + "shrink": 0, + "layout": "FLEX" + }, + "showCaption": true, + "id": "app_title" + }, + { + "panelItems": [ + { + "rawItem": { + "predefinedType": "INDEX_TOP_MENUS", + "id": "top_menus" + }, + "caption": "菜单", + "itemStyle": "DEFAULT", + "itemType": "RAWITEM", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "top_menus" + }, + { + "rawItem": { + "predefinedType": "INDEX_USER_MENUS", + "id": "user_menus" + }, + "caption": "菜单", + "itemStyle": "DEFAULT", + "itemType": "RAWITEM", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "user_menus" + } + ], + "layout": { + "align": "space-between", + "dir": "row", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "contentWidth": 50, + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "layout": "FLEX", + "width": 50, + "widthMode": "PERCENTAGE" + }, + "width": 50, + "id": "container4" + } + ], + "layout": { + "align": "space-between", + "dir": "row", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 0, + "layout": "FLEX" + }, + "id": "app_header" + }, + { + "panelItems": [ + { + "panelItems": [ + { + "rawItem": { + "predefinedType": "INDEX_LEFT_EXP", + "id": "left_exp" + }, + "caption": "菜单", + "itemStyle": "DEFAULT", + "itemType": "RAWITEM", + "layoutPos": { + "shrink": 0, + "heightMode": "FULL", + "layout": "FLEX" + }, + "showCaption": true, + "id": "left_exp" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "id": "container11" + }, + { + "panelItems": [ + { + "panelItems": [ + { + "rawItem": { + "predefinedType": "NAV_POS", + "id": "nav_pos" + }, + "caption": "导航占位", + "itemStyle": "DEFAULT", + "itemType": "RAWITEM", + "layoutPos": { + "shrink": 1, + "layout": "FLEX", + "widthMode": "FULL" + }, + "showCaption": true, + "id": "nav_pos" + } + ], + "layout": { + "dir": "row", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "layout": "FLEX", + "widthMode": "FULL" + }, + "id": "container6" + }, + { + "panelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "rawItem": { + "predefinedType": "NAV_TABS", + "id": "nav_tabs" + }, + "caption": "标签页导航栏", + "itemStyle": "DEFAULT", + "itemType": "RAWITEM", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "nav_tabs" + }, + { + "rawItem": { + "predefinedType": "NAV_POS_INDEX", + "id": "nav_pos_index" + }, + "caption": "导航区占位", + "itemStyle": "DEFAULT", + "itemType": "RAWITEM", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "nav_pos_index" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "container9" + }, + { + "panelItems": [ + { + "rawItem": { + "predefinedType": "INDEX_BOTTOM_EXP", + "id": "bottom_exp" + }, + "caption": "菜单", + "itemStyle": "DEFAULT", + "itemType": "RAWITEM", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "bottom_exp" + }, + { + "rawItem": { + "predefinedType": "NAV_POS", + "id": "nav_pos2" + }, + "caption": "导航区占位", + "itemStyle": "DEFAULT", + "itemType": "RAWITEM", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "nav_pos2" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "container10" + } + ], + "predefinedType": "CONTAINER_V_SPLIT", + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "container8" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "layout": "FLEX", + "widthMode": "FULL" + }, + "id": "container7" + } + ], + "predefinedType": "CONTAINER_H_SPLIT", + "layout": { + "dir": "row", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "grow": 1, + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "container5" + } + ], + "layout": { + "dir": "row", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "id": "app_content" + }, + { + "panelItems": [ + { + "rawItem": { + "predefinedType": "INDEX_FOOTER_RIGHT", + "id": "footer_right" + }, + "caption": "菜单", + "itemStyle": "DEFAULT", + "itemType": "RAWITEM", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "footer_right" + }, + { + "rawItem": { + "predefinedType": "INDEX_FOOTER_CENTER", + "id": "footer_center" + }, + "caption": "菜单", + "itemStyle": "DEFAULT", + "itemType": "RAWITEM", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "footer_center" + }, + { + "rawItem": { + "predefinedType": "INDEX_FOOTER_LEFT", + "id": "footer_left" + }, + "caption": "菜单", + "itemStyle": "DEFAULT", + "itemType": "RAWITEM", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "footer_left" + } + ], + "layout": { + "align": "space-between", + "dir": "row-reverse", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 0, + "layout": "FLEX" + }, + "id": "app_footer" + } + ], + "layout": { + "dir": "column", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "container" + } + ], + "layoutPanel": true, + "appCounterRefs": [ + { + "appCounter": { + "codeName": "Portal", + "counterType": "CUSTOM", + "counterId": "PORTAL", + "timer": 60000, + "name": "门户界面计数器", + "id": "studiofrontmodel.portal" + }, + "tag": "956f2c99da31bb9d03e1160e9a90b130", + "id": "956f2c99da31bb9d03e1160e9a90b130" + } + ], + "controls": [ + { + "layoutMode": "TABLE_24COL", + "appMenuItems": [ + { + "itemType": "MENUITEM", + "layout": { + "columnCount": 24, + "layout": "TABLE_24COL" + }, + "layoutPos": { + "colMD": 24, + "layout": "TABLE_24COL" + }, + "valid": true, + "caption": "test", + "tooltip": "test", + "id": "menuitem1" + } + ], + "autoLoad": true, + "showBusyIndicator": true, + "codeName": "Usr0925644569Menu", + "controlType": "APPMENU", + "logicName": "应用首页视图菜单", + "controlParam": {}, + "name": "appmenu", + "id": "usr0925644569menu" + }, + { + "caption": "应用首页视图", + "codeName": "captionbar", + "controlType": "CAPTIONBAR", + "controlParam": {}, + "id": "captionbar" + } + ], + "codeName": "Usr0925249722", + "controlType": "VIEWLAYOUTPANEL", + "logicName": "AppIndexView", + "controlParam": {}, + "name": "layoutpanel", + "id": "usr0925249722" +} diff --git a/packages/studio-theme/src/publish/app-login-view.ts b/packages/studio-theme/src/publish/app-login-view.ts new file mode 100644 index 0000000..2831a5e --- /dev/null +++ b/packages/studio-theme/src/publish/app-login-view.ts @@ -0,0 +1,170 @@ +export default { + "layoutMode": "FLEX", + "layout": { + "layout": "FLEX" + }, + "rootPanelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "editor": { + "editorType": "TEXTBOX", + "predefinedType": "AUTH_USERID", + "valueType": "SIMPLE", + "editable": true, + "id": "auth_userid" + }, + "viewFieldName": "username", + "allowEmpty": true, + "caption": "用户名", + "itemStyle": "DEFAULT", + "itemType": "FIELD", + "layoutPos": { + "shrink": 1, + "layout": "FLEX", + "spacingBottom": "INNERLARGE" + }, + "id": "auth_userid" + }, + { + "editor": { + "editorType": "PASSWORD", + "predefinedType": "AUTH_PASSWORD", + "valueType": "SIMPLE", + "editable": true, + "id": "auth_password" + }, + "viewFieldName": "password", + "allowEmpty": true, + "caption": "密码", + "itemStyle": "DEFAULT", + "itemType": "FIELD", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "id": "auth_password" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "id": "container2" + }, + { + "panelItems": [ + { + "actionType": "UIACTION", + "buttonStyle": "DEFAULT", + "buttonType": "PANELBUTTON", + "uiactionId": "login", + "renderMode": "BUTTON", + "tooltip": "登陆", + "caption": "登陆", + "itemStyle": "DEFAULT", + "itemType": "BUTTON", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "auth_loginbutton" + }, + { + "actionType": "UIACTION", + "buttonStyle": "DEFAULT", + "buttonType": "PANELBUTTON", + "uiactionId": "cancelchanges", + "renderMode": "BUTTON", + "tooltip": "重置", + "caption": "重置", + "itemStyle": "DEFAULT", + "itemType": "BUTTON", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "auth_resetinput" + } + ], + "layout": { + "align": "space-around", + "dir": "row", + "layout": "FLEX", + "valign": "center" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "contentHeight": 100, + "height": 100, + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "height": 100, + "heightMode": "PX", + "layout": "FLEX" + }, + "id": "container3" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "contentHeight": 500, + "contentWidth": 500, + "height": 500, + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "height": 500, + "heightMode": "PX", + "layout": "FLEX", + "width": 500, + "widthMode": "PX" + }, + "width": 500, + "id": "container1" + } + ], + "layout": { + "align": "center", + "layout": "FLEX", + "valign": "center" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "id": "container" + } + ], + "layoutPanel": true, + "codeName": "AppLoginViewLayout", + "controlType": "VIEWLAYOUTPANEL", + "logicName": "应用登录视图", + "controlParam": {}, + "name": "layoutpanel", + "id": "apploginviewlayout" +} diff --git a/packages/studio-theme/src/publish/control-layout/control-layout-model-repository-data-view-exp-bar-layout.ts b/packages/studio-theme/src/publish/control-layout/control-layout-model-repository-data-view-exp-bar-layout.ts new file mode 100644 index 0000000..9f244ff --- /dev/null +++ b/packages/studio-theme/src/publish/control-layout/control-layout-model-repository-data-view-exp-bar-layout.ts @@ -0,0 +1,180 @@ +export default { + "layoutMode": "FLEX", + "layout": { + "layout": "FLEX" + }, + "rootPanelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "caption": "页面标题", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "captionbar" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "id": "control_captionbar" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "id": "control_header_left" + }, + { + "panelItems": [ + { + "panelItems": [ + { + "caption": "搜索栏", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "searchbar" + } + ], + "layout": { + "dir": "column", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 0, + "layout": "FLEX" + }, + "id": "control_searchbar" + }, + { + "panelItems": [ + { + "caption": "工具栏", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "dataviewexpbar_toolbar" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "id": "control_toolbar" + } + ], + "layout": { + "dir": "row", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "id": "control_header_right" + } + ], + "predefinedType": "EXP_HEADER", + "layout": { + "align": "space-between", + "dir": "row", + "layout": "FLEX", + "valign": "center" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 0, + "layout": "FLEX" + }, + "id": "control_header" + }, + { + "panelItems": [ + { + "caption": "导航数据视图", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "dataviewexpbar_dataview" + } + ], + "predefinedType": "DATAVIEW", + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "id": "control_dataview" + } + ], + "layoutPanel": true, + "codeName": "DataViewExpBarLayout", + "controlType": "VIEWLAYOUTPANEL", + "logicName": "部件-卡片导航栏布局面板", + "appDataEntityId": "frontmodel.controllayoutmodelrepository", + "controlParam": {}, + "name": "layoutpanel", + "id": "dataviewexpbarlayout" +} diff --git a/packages/studio-theme/src/publish/control-layout/control-layout-model-repository-grid-exp-bar-layout.ts b/packages/studio-theme/src/publish/control-layout/control-layout-model-repository-grid-exp-bar-layout.ts new file mode 100644 index 0000000..37b1f79 --- /dev/null +++ b/packages/studio-theme/src/publish/control-layout/control-layout-model-repository-grid-exp-bar-layout.ts @@ -0,0 +1,179 @@ +export default { + "layoutMode": "FLEX", + "layout": { + "layout": "FLEX" + }, + "rootPanelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "caption": "页面标题", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "captionbar" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "id": "control_captionbar" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "id": "control_header_left" + }, + { + "panelItems": [ + { + "panelItems": [ + { + "caption": "搜索栏", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "searchbar" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "id": "control_searchbar" + }, + { + "panelItems": [ + { + "caption": "工具栏", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "gridexpbar_toolbar" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "id": "control_toolbar" + } + ], + "layout": { + "dir": "row", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "id": "control_header_right" + } + ], + "predefinedType": "EXP_HEADER", + "layout": { + "align": "space-between", + "dir": "row", + "layout": "FLEX", + "valign": "center" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 0, + "layout": "FLEX" + }, + "id": "control_header" + }, + { + "panelItems": [ + { + "caption": "导航表格", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "gridexpbar_grid" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "id": "control_grid" + } + ], + "layoutPanel": true, + "codeName": "GridExpBarLayout", + "controlType": "VIEWLAYOUTPANEL", + "logicName": "部件-表格导航栏布局面板", + "appDataEntityId": "frontmodel.controllayoutmodelrepository", + "controlParam": {}, + "name": "layoutpanel", + "id": "gridexpbarlayout" +} diff --git a/packages/studio-theme/src/publish/control-layout/control-layout-model-repository-list-exp-bar-layout.ts b/packages/studio-theme/src/publish/control-layout/control-layout-model-repository-list-exp-bar-layout.ts new file mode 100644 index 0000000..dbd0c08 --- /dev/null +++ b/packages/studio-theme/src/publish/control-layout/control-layout-model-repository-list-exp-bar-layout.ts @@ -0,0 +1,179 @@ +export default { + "layoutMode": "FLEX", + "layout": { + "layout": "FLEX" + }, + "rootPanelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "caption": "页面标题", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "captionbar" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "id": "control_captionbar" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "id": "control_header_left" + }, + { + "panelItems": [ + { + "panelItems": [ + { + "caption": "搜索栏", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "searchbar" + } + ], + "layout": { + "dir": "column", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 0, + "layout": "FLEX" + }, + "id": "control_searchbar" + }, + { + "panelItems": [ + { + "caption": "工具栏", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "listexpbar_toolbar" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "id": "control_toolbar" + } + ], + "layout": { + "dir": "row", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "id": "control_header_right" + } + ], + "predefinedType": "EXP_HEADER", + "layout": { + "align": "space-between", + "dir": "row", + "layout": "FLEX", + "valign": "center" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 0, + "layout": "FLEX" + }, + "id": "control_header" + }, + { + "panelItems": [ + { + "caption": "导航列表", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "listexpbar_list" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "id": "control_list" + } + ], + "layoutPanel": true, + "codeName": "ListExpBarLayout", + "controlType": "VIEWLAYOUTPANEL", + "logicName": "部件-列表导航栏布局面板", + "appDataEntityId": "frontmodel.controllayoutmodelrepository", + "controlParam": {}, + "name": "layoutpanel", + "id": "listexpbarlayout" +} diff --git a/packages/studio-theme/src/publish/control-layout/control-layout-model-repository-tree-exp-bar-layout.ts b/packages/studio-theme/src/publish/control-layout/control-layout-model-repository-tree-exp-bar-layout.ts new file mode 100644 index 0000000..892732e --- /dev/null +++ b/packages/studio-theme/src/publish/control-layout/control-layout-model-repository-tree-exp-bar-layout.ts @@ -0,0 +1,179 @@ +export default { + "layoutMode": "FLEX", + "layout": { + "layout": "FLEX" + }, + "rootPanelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "caption": "页面标题", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "captionbar" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "id": "control_captionbar" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "id": "control_header_left" + }, + { + "panelItems": [ + { + "panelItems": [ + { + "caption": "搜索栏", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "searchbar" + } + ], + "layout": { + "dir": "column", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 0, + "layout": "FLEX" + }, + "id": "control_searchbar" + }, + { + "panelItems": [ + { + "caption": "工具栏", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "treeexpbar_toolbar" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "id": "control_toolbar" + } + ], + "layout": { + "dir": "row", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "id": "control_header_right" + } + ], + "predefinedType": "EXP_HEADER", + "layout": { + "align": "space-between", + "dir": "row", + "layout": "FLEX", + "valign": "center" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 0, + "layout": "FLEX" + }, + "id": "control_header" + }, + { + "panelItems": [ + { + "caption": "导航树", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "treeexpbar_tree" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "id": "control_tree" + } + ], + "layoutPanel": true, + "codeName": "TreeExpBarLayout", + "controlType": "VIEWLAYOUTPANEL", + "logicName": "部件-树导航栏布局面板", + "appDataEntityId": "frontmodel.controllayoutmodelrepository", + "controlParam": {}, + "name": "layoutpanel", + "id": "treeexpbarlayout" +} diff --git a/packages/studio-theme/src/publish/index.ts b/packages/studio-theme/src/publish/index.ts new file mode 100644 index 0000000..8d15987 --- /dev/null +++ b/packages/studio-theme/src/publish/index.ts @@ -0,0 +1,169 @@ +/* eslint-disable camelcase */ +// 应用视图 +import AppIndexViewLayout_BLANK_MODE from './app-index-view-layout-blank-mode'; +import AppIndexViewLayout_CENTER from './app-index-view-layout-center'; +import AppIndexViewLayout_TOP from './app-index-view-layout-top'; +import AppIndexViewLayout from './app-index-view-layout'; +import AppLoginView from './app-login-view'; +// 实体视图 +import DEChartView from './view-layout-model-repository/view-layout-model-repository-de-chart-view-layout'; +import DECalendarExpView from './view-layout-model-repository/view-layout-model-repository-de-calendar-exp-view-layout'; +import DECalendarView from './view-layout-model-repository/view-layout-model-repository-de-calendar-view-layout'; +import DEDataViewExpView from './view-layout-model-repository/view-layout-model-repository-de-data-view-exp-view-layout'; +import DEDataView from './view-layout-model-repository/view-layout-model-repository-de-data-view-layout'; +import DEKanbanView from './view-layout-model-repository/view-layout-model-repository-de-kanban-view-layout'; +import DEEdit2View from './view-layout-model-repository/view-layout-model-repository-de-edit-view-2-layout'; +import DEEdit3View from './view-layout-model-repository/view-layout-model-repository-de-edit-view-3-layout'; +import DEEdit4View from './view-layout-model-repository/view-layout-model-repository-de-edit-view-4-layout'; +import DEFormPickupDataView from './view-layout-model-repository/view-layout-model-repository-form-pickup-data-view'; +import DEEditView from './view-layout-model-repository/view-layout-model-repository-de-edit-view-layout'; +import DEGridViewExpView from './view-layout-model-repository/view-layout-model-repository-de-grid-exp-view-layout'; +import DEGridView from './view-layout-model-repository/view-layout-model-repository-de-grid-view-layout'; +import DEListViewExpView from './view-layout-model-repository/view-layout-model-repository-de-list-exp-view-layout'; +import DEListView from './view-layout-model-repository/view-layout-model-repository-de-list-view-layout'; +import DEOptView from './view-layout-model-repository/view-layout-model-repository-de-option-view-layout'; +import DEPickupGirdView from './view-layout-model-repository/view-layout-model-repository-de-pickup-grid-view-layout'; +import DEPickupTreeView from './view-layout-model-repository/view-layout-model-repository-de-pickup-tree-view-layout'; +import DEPickupView2 from './view-layout-model-repository/view-layout-model-repository-de-pickup-view-2-layout'; +import DEPickupView from './view-layout-model-repository/view-layout-model-repository-de-pickup-view-layout'; +import DETabExpView from './view-layout-model-repository/view-layout-model-repository-de-tab-exp-view-layout'; +import DETreeViewExpView from './view-layout-model-repository/view-layout-model-repository-de-tree-exp-view-layout'; +import DETreeView from './view-layout-model-repository/view-layout-model-repository-de-tree-view-layout'; +import DEWizardDView from './view-layout-model-repository/view-layout-model-repository-de-wizard-view-layout'; +import DEMPickupView from './view-layout-model-repository/view-layout-model-repository-dem-pickup-view-layout'; +import DEMPickupView2 from './view-layout-model-repository/view-layout-model-repository-dem-pickup-view-2-layout'; +import DEWFDynaActionView from './view-layout-model-repository/view-layout-model-repository-dewf-dyna-action-view-layout'; +import DEWFDynaStartView from './view-layout-model-repository/view-layout-model-repository-dewf-dyna-start-view-layout'; +import DEWFDynaEditView3 from './view-layout-model-repository/view-layout-model-repository-dewf-dyna-edit-view-3-layout'; +import DEWFDynaEditView from './view-layout-model-repository/view-layout-model-repository-dewf-dyna-edit-view-layout'; +import DEPanelView from './view-layout-model-repository/view-layout-model-repository-de-panel-view-layout'; +import DEPickupDataView from './view-layout-model-repository/view-layout-model-repository-de-pickup-data-view-layout'; +import DEIndexPickupDataView from './view-layout-model-repository/view-layout-model-repository-de-index-pickup-data-view-layout'; + +// 部件布局面板 +import GridExpBar from './control-layout/control-layout-model-repository-grid-exp-bar-layout'; +import ListExpBar from './control-layout/control-layout-model-repository-list-exp-bar-layout'; +import DataViewExpBar from './control-layout/control-layout-model-repository-data-view-exp-bar-layout'; +import TreeExpBar from './control-layout/control-layout-model-repository-tree-exp-bar-layout'; + +/** + * 安装视图默认布局 + * + * @author chitanda + * @date 2023-04-28 15:04:37 + * @export + * @param {(key: string, model: any) => void} callBack + */ +// eslint-disable-next-line @typescript-eslint/no-explicit-any +export function install(callBack: (key: string, model: any) => void): void { + /** + * 应用视图 + */ + // 应用首页视图 + callBack('APPINDEXVIEW_DEFAULT', AppIndexViewLayout); + // 应用首页视图_左侧菜单 + callBack('APPINDEXVIEW_DEFAULT_LEFT', AppIndexViewLayout); + // 应用首页视图_空白模式 + callBack('APPINDEXVIEW_DEFAULT_BLANK_MODE', AppIndexViewLayout_BLANK_MODE); + // 应用首页视图_中间菜单 + callBack('APPINDEXVIEW_DEFAULT_CENTER', AppIndexViewLayout_CENTER); + // 应用首页视图_上方菜单 + callBack('APPINDEXVIEW_DEFAULT_TOP', AppIndexViewLayout_TOP); + // 应用登录视图 + callBack('APPLOGINVIEW_DEFAULT', AppLoginView); + /** + * 实体视图 + */ + // 实体图表视图 + callBack('DECHARTVIEW_DEFAULT', DEChartView); + // 实体图表视图(部件视图) + callBack('DECHARTVIEW9_DEFAULT', DEChartView); + // 实体日历导航视图 + callBack('DECALENDAREXPVIEW_DEFAULT', DECalendarExpView); + // 实体日历视图 + callBack('DECALENDARVIEW_DEFAULT', DECalendarView); + // 实体日历视图(部件视图) + callBack('DECALENDARVIEW9_DEFAULT', DECalendarView); + // 实体卡片视图导航视图 + callBack('DEDATAVIEWEXPVIEW_DEFAULT', DEDataViewExpView); + // 实体卡片视图 + callBack('DEDATAVIEW_DEFAULT', DEDataView); + // 实体卡片视图(部件视图) + callBack('DEDATAVIEW9_DEFAULT', DEDataView); + // 实体看板视图 + callBack('DEKANBANVIEW_DEFAULT', DEKanbanView); + // 实体编辑视图(左右关系) + callBack('DEEDITVIEW2_DEFAULT', DEEdit2View); + // 实体编辑视图(分页关系) + callBack('DEEDITVIEW3_DEFAULT', DEEdit3View); + // 实体编辑视图(上下关系) + callBack('DEEDITVIEW4_DEFAULT', DEEdit4View); + // 实体表单选择数据视图 + callBack('DEFORMPICKUPDATAVIEW_DEFAULT', DEFormPickupDataView); + // 实体编辑视图 + callBack('DEEDITVIEW_DEFAULT', DEEditView); + // 实体编辑视图(部件视图) + callBack('DEEDITVIEW9_DEFAULT', DEEditView); + // 实体表格导航视图 + callBack('DEGRIDEXPVIEW_DEFAULT', DEGridViewExpView); + // 实体表格视图 + callBack('DEGRIDVIEW_DEFAULT', DEGridView); + // 实体表格视图(部件视图) + callBack('DEGRIDVIEW9_DEFAULT', DEGridView); + // 实体列表导航视图 + callBack('DELISTEXPVIEW_DEFAULT', DEListViewExpView); + // 实体列表视图 + callBack('DELISTVIEW_DEFAULT', DEListView); + // 实体列表视图(部件视图) + callBack('DELISTVIEW9_DEFAULT', DEListView); + // 实体选项操作视图 + callBack('DEOPTVIEW_DEFAULT', DEOptView); + // 实体选择表格视图(部件视图) + callBack('DEPICKUPGRIDVIEW_DEFAULT', DEPickupGirdView); + // 实体选择树视图(部件视图) + callBack('DEPICKUPTREEVIEW_DEFAULT', DEPickupTreeView); + // 实体数据选择视图(左右关系) + callBack('DEPICKUPVIEW2_DEFAULT', DEPickupView2); + // 实体数据选择视图 + callBack('DEPICKUPVIEW_DEFAULT', DEPickupView); + // 实体分页导航视图 + callBack('DETABEXPVIEW_DEFAULT', DETabExpView); + // 实体分页导航视图(部件视图) + callBack('DETABEXPVIEW9_DEFAULT', DETabExpView); + // 实体树导航视图 + callBack('DETREEEXPVIEW_DEFAULT', DETreeViewExpView); + // 实体树视图 + callBack('DETREEVIEW_DEFAULT', DETreeView); + // 实体树视图(部件视图) + callBack('DETREEVIEW9_DEFAULT', DETreeView); + // 实体向导视图 + callBack('DEWIZARDVIEW_DEFAULT', DEWizardDView); + // 实体数据多项选择视图 + callBack('DEMPICKUPVIEW_DEFAULT', DEMPickupView); + // 实体数据多项选择视图(左右关系) + callBack('DEMPICKUPVIEW2_DEFAULT', DEMPickupView2); + // 实体工作流动态操作视图 + callBack('DEWFDYNAACTIONVIEW_DEFAULT', DEWFDynaActionView); + // 实体工作流动态操作视图 + callBack('DEWFDYNASTARTVIEW_DEFAULT', DEWFDynaStartView); + // 实体工作流动态视图(分页关系) + callBack('DEWFDYNAEDITVIEW3_DEFAULT', DEWFDynaEditView3); + // 实体工作流动态视图 + callBack('DEWFDYNAEDITVIEW_DEFAULT', DEWFDynaEditView); + // 实体面板视图 + callBack('DEPANELVIEW_DEFAULT', DEPanelView); + // 实体选择数据视图 + callBack('DEPICKUPDATAVIEW_DEFAULT', DEPickupDataView); + // 实体索引关系选择数据视图(部件视图) + callBack('DEINDEXPICKUPDATAVIEW_DEFAULT', DEIndexPickupDataView); + + // 部件布局面板 + // 表格导航 + callBack('GRIDEXPBAR_DEFAULT', GridExpBar); + // 列表导航 + callBack('LISTEXPBAR_DEFAULT', ListExpBar); + // 卡片导航 + callBack('DATAVIEWEXPBAR_DEFAULT', DataViewExpBar); + // 树导航 + callBack('TREEEXPBAR_DEFAULT', TreeExpBar); +} diff --git a/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-calendar-exp-view-layout.ts b/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-calendar-exp-view-layout.ts new file mode 100644 index 0000000..5caacdc --- /dev/null +++ b/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-calendar-exp-view-layout.ts @@ -0,0 +1,98 @@ +export default { + "layoutMode": "FLEX", + "layout": { + "layout": "FLEX" + }, + "rootPanelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "caption": "日历导航栏", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "calendarexpbar" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "contentWidth": 600, + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "layout": "FLEX", + "width": 600, + "widthMode": "PX" + }, + "width": 600, + "id": "view_content_left" + }, + { + "panelItems": [ + { + "rawItem": { + "predefinedType": "NAV_POS", + "id": "nav_pos" + }, + "caption": "导航区占位", + "itemStyle": "DEFAULT", + "itemType": "RAWITEM", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "nav_pos" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "id": "view_content_right" + } + ], + "predefinedType": "CONTAINER_H_SPLIT", + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "id": "view_exp_split" + } + ], + "layoutPanel": true, + "codeName": "CalendarExpViewLayout", + "controlType": "VIEWLAYOUTPANEL", + "logicName": "日历导航视图布局面板(预置模型)", + "appDataEntityId": "frontmodel.viewlayoutmodelrepository", + "controlParam": {}, + "name": "layoutpanel", + "id": "calendarexpviewlayout" +} diff --git a/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-calendar-view-layout.ts b/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-calendar-view-layout.ts new file mode 100644 index 0000000..37209bf --- /dev/null +++ b/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-calendar-view-layout.ts @@ -0,0 +1,206 @@ +export default { + "layoutMode": "FLEX", + "layout": { + "layout": "FLEX" + }, + "rootPanelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "caption": "页面标题", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "captionbar" + } + ], + "layout": { + "align": "center", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_captionbar" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_header_left" + }, + { + "panelItems": [ + { + "panelItems": [ + { + "caption": "搜索栏", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "searchbar" + } + ], + "layout": { + "align": "center", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_searchbar" + }, + { + "panelItems": [ + { + "caption": "工具栏", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "toolbar" + } + ], + "layout": { + "align": "center", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_toolbar" + } + ], + "layout": { + "dir": "row", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_header_right" + } + ], + "predefinedType": "VIEWHEADER", + "layout": { + "align": "space-between", + "dir": "row", + "layout": "FLEX", + "valign": "center" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 0, + "layout": "FLEX" + }, + "id": "view_header" + } + ], + "predefinedType": "PANELPART", + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "引用布局面板", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "panelpart" + }, + { + "panelItems": [ + { + "caption": "日历", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "calendar" + } + ], + "predefinedType": "VIEWCONTENT", + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "id": "view_content" + } + ], + "layoutPanel": true, + "codeName": "CalendarViewLayout", + "controlType": "VIEWLAYOUTPANEL", + "logicName": "日历视图布局面板(预置模型)", + "appDataEntityId": "frontmodel.viewlayoutmodelrepository", + "controlParam": {}, + "name": "layoutpanel", + "id": "calendarviewlayout" +} diff --git a/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-chart-view-layout.ts b/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-chart-view-layout.ts new file mode 100644 index 0000000..811e257 --- /dev/null +++ b/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-chart-view-layout.ts @@ -0,0 +1,251 @@ +export default { + "layoutMode": "FLEX", + "layout": { + "layout": "FLEX" + }, + "rootPanelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "caption": "页面标题", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "captionbar" + } + ], + "layout": { + "align": "center", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_captionbar" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_header_left" + }, + { + "panelItems": [ + { + "panelItems": [ + { + "caption": "搜索栏", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "searchbar" + } + ], + "layout": { + "align": "center", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_searchbar" + }, + { + "panelItems": [ + { + "caption": "工具栏", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "toolbar" + } + ], + "layout": { + "align": "center", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_toolbar" + } + ], + "layout": { + "dir": "row", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_header_right" + } + ], + "predefinedType": "VIEWHEADER", + "layout": { + "align": "space-between", + "dir": "row", + "layout": "FLEX", + "valign": "center" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 0, + "layout": "FLEX" + }, + "id": "view_header" + } + ], + "predefinedType": "PANELPART", + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "引用布局面板", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "panelpart" + }, + { + "panelItems": [ + { + "panelItems": [ + { + "caption": "搜索表单", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "searchform" + } + ], + "layout": { + "dir": "column", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 0, + "layout": "FLEX" + }, + "id": "view_searchform" + } + ], + "predefinedType": "PANELPART", + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "引用布局面板", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "panelpart1" + }, + { + "panelItems": [ + { + "caption": "图表", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "showCaption": true, + "id": "chart" + } + ], + "predefinedType": "VIEWCONTENT", + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "id": "view_content" + } + ], + "layoutPanel": true, + "codeName": "ChartViewLayout", + "controlType": "VIEWLAYOUTPANEL", + "logicName": "图表视图布局面板(预置模型)", + "appDataEntityId": "frontmodel.viewlayoutmodelrepository", + "controlParam": {}, + "name": "layoutpanel", + "id": "chartviewlayout" +} diff --git a/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-data-view-exp-view-layout.ts b/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-data-view-exp-view-layout.ts new file mode 100644 index 0000000..6cfdc5c --- /dev/null +++ b/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-data-view-exp-view-layout.ts @@ -0,0 +1,98 @@ +export default { + "layoutMode": "FLEX", + "layout": { + "layout": "FLEX" + }, + "rootPanelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "caption": "卡片导航", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "dataviewexpbar" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "contentWidth": 500, + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "layout": "FLEX", + "width": 500, + "widthMode": "PX" + }, + "width": 500, + "id": "view_exp" + }, + { + "panelItems": [ + { + "rawItem": { + "predefinedType": "NAV_POS", + "id": "nav_pos" + }, + "caption": "导航区占位", + "itemStyle": "DEFAULT", + "itemType": "RAWITEM", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "nav_pos" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "id": "view_content" + } + ], + "predefinedType": "CONTAINER_H_SPLIT", + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "id": "view_exp_split" + } + ], + "layoutPanel": true, + "codeName": "DataViewExpViewLayout", + "controlType": "VIEWLAYOUTPANEL", + "logicName": "实体卡片视图导航视图布局面板(预置模型)", + "appDataEntityId": "frontmodel.viewlayoutmodelrepository", + "controlParam": {}, + "name": "layoutpanel", + "id": "dataviewexpviewlayout" +} diff --git a/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-data-view-layout.ts b/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-data-view-layout.ts new file mode 100644 index 0000000..8037568 --- /dev/null +++ b/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-data-view-layout.ts @@ -0,0 +1,251 @@ +export default { + "layoutMode": "FLEX", + "layout": { + "layout": "FLEX" + }, + "rootPanelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "caption": "页面标题", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "captionbar" + } + ], + "layout": { + "align": "center", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_captionbar" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_header_left" + }, + { + "panelItems": [ + { + "panelItems": [ + { + "caption": "搜索栏", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "searchbar" + } + ], + "layout": { + "align": "center", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_searchbar" + }, + { + "panelItems": [ + { + "caption": "工具栏", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "toolbar" + } + ], + "layout": { + "align": "center", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_toolbar" + } + ], + "layout": { + "dir": "row", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_header_right" + } + ], + "predefinedType": "VIEWHEADER", + "layout": { + "align": "space-between", + "dir": "row", + "layout": "FLEX", + "valign": "center" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 0, + "layout": "FLEX" + }, + "id": "view_header" + } + ], + "predefinedType": "PANELPART", + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "引用布局面板", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "panelpart" + }, + { + "panelItems": [ + { + "panelItems": [ + { + "caption": "搜索表单", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "searchform" + } + ], + "layout": { + "dir": "column", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 0, + "layout": "FLEX" + }, + "id": "view_searchform" + } + ], + "predefinedType": "PANELPART", + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "引用布局面板", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "panelpart1" + }, + { + "panelItems": [ + { + "caption": "数据视图", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "dataview" + } + ], + "predefinedType": "VIEWCONTENT", + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "id": "view_dataview" + } + ], + "layoutPanel": true, + "codeName": "DataViewLayout", + "controlType": "VIEWLAYOUTPANEL", + "logicName": "卡片视图布局面(预置模型)", + "appDataEntityId": "frontmodel.viewlayoutmodelrepository", + "controlParam": {}, + "name": "layoutpanel", + "id": "dataviewlayout" +} diff --git a/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-edit-view-2-layout.ts b/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-edit-view-2-layout.ts new file mode 100644 index 0000000..52a4061 --- /dev/null +++ b/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-edit-view-2-layout.ts @@ -0,0 +1,275 @@ +export default { + "layoutMode": "FLEX", + "layout": { + "layout": "FLEX" + }, + "rootPanelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "caption": "页面标题", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "captionbar" + } + ], + "layout": { + "align": "center", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_captionbar" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_header_left" + }, + { + "panelItems": [ + { + "panelItems": [ + { + "caption": "工具栏", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "toolbar" + } + ], + "layout": { + "align": "center", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_toolbar" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_header_right" + } + ], + "predefinedType": "VIEWHEADER", + "layout": { + "align": "space-between", + "dir": "row", + "layout": "FLEX", + "valign": "center" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 0, + "layout": "FLEX" + }, + "id": "view_header" + } + ], + "predefinedType": "PANELPART", + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "引用布局面板", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "panelpart" + }, + { + "panelItems": [ + { + "panelItems": [ + { + "caption": "关系数据栏", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "drbar" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "contentWidth": 300, + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 0, + "heightMode": "FULL", + "layout": "FLEX", + "width": 300, + "widthMode": "PX" + }, + "width": 300, + "id": "view_drbar" + }, + { + "panelItems": [ + { + "panelItems": [ + { + "caption": "表单", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "showCaption": true, + "id": "form" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_form" + }, + { + "panelItems": [ + { + "rawItem": { + "predefinedType": "NAV_POS", + "id": "nav_pos" + }, + "caption": "导航区占位", + "itemStyle": "DEFAULT", + "itemType": "RAWITEM", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "showCaption": true, + "id": "nav_pos" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_nav_pos" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "id": "view_exp_content" + } + ], + "layout": { + "dir": "row", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "id": "view_content" + } + ], + "layoutPanel": true, + "codeName": "EditView2Layout", + "controlType": "VIEWLAYOUTPANEL", + "logicName": "实体编辑视图(左右关系)布局面板布局面板(预置模型)", + "appDataEntityId": "frontmodel.viewlayoutmodelrepository", + "controlParam": {}, + "name": "layoutpanel", + "id": "editview2layout" +} diff --git a/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-edit-view-3-layout.ts b/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-edit-view-3-layout.ts new file mode 100644 index 0000000..de38a84 --- /dev/null +++ b/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-edit-view-3-layout.ts @@ -0,0 +1,257 @@ +export default { + "layoutMode": "FLEX", + "layout": { + "layout": "FLEX" + }, + "rootPanelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "caption": "页面标题", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "captionbar" + } + ], + "layout": { + "align": "center", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_captionbar" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_header_left" + }, + { + "panelItems": [ + { + "panelItems": [ + { + "caption": "工具栏", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "toolbar" + } + ], + "layout": { + "align": "center", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_toolbar" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_header_right" + } + ], + "predefinedType": "VIEWHEADER", + "layout": { + "align": "space-between", + "dir": "row", + "layout": "FLEX", + "valign": "center" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 0, + "layout": "FLEX" + }, + "id": "view_header" + } + ], + "predefinedType": "PANELPART", + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "引用布局面板", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "panelpart" + }, + { + "panelItems": [ + { + "panelItems": [ + { + "caption": "关系分页部件", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX", + "widthMode": "FULL" + }, + "showCaption": true, + "id": "drtab" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "contentHeight": 54, + "height": 54, + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 0, + "height": 54, + "heightMode": "PX", + "layout": "FLEX" + }, + "id": "view_drtab" + }, + { + "panelItems": [ + { + "caption": "表单", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "form" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "id": "view_form" + }, + { + "panelItems": [ + { + "rawItem": { + "predefinedType": "NAV_POS", + "id": "nav_pos" + }, + "caption": "导航区占位", + "itemStyle": "DEFAULT", + "itemType": "RAWITEM", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "nav_pos" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "id": "view_nav_pos" + } + ], + "predefinedType": "VIEWCONTENT", + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "id": "view_content" + } + ], + "layoutPanel": true, + "codeName": "EditView3Layout", + "controlType": "VIEWLAYOUTPANEL", + "logicName": "实体编辑视图(分页关系)布局面板布局面板(预置模型)", + "appDataEntityId": "frontmodel.viewlayoutmodelrepository", + "controlParam": {}, + "name": "layoutpanel", + "id": "editview3layout" +} diff --git a/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-edit-view-4-layout.ts b/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-edit-view-4-layout.ts new file mode 100644 index 0000000..e8b3a79 --- /dev/null +++ b/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-edit-view-4-layout.ts @@ -0,0 +1,234 @@ +export default { + "layoutMode": "FLEX", + "layout": { + "layout": "FLEX" + }, + "rootPanelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "caption": "页面标题", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "captionbar" + } + ], + "layout": { + "align": "center", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_captionbar" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_header_left" + }, + { + "panelItems": [ + { + "panelItems": [ + { + "caption": "工具栏", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "toolbar" + } + ], + "layout": { + "align": "center", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_toolbar" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_header_right" + } + ], + "predefinedType": "VIEWHEADER", + "layout": { + "align": "space-between", + "dir": "row", + "layout": "FLEX", + "valign": "center" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 0, + "layout": "FLEX" + }, + "id": "view_header" + } + ], + "predefinedType": "PANELPART", + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "引用布局面板", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "panelpart" + }, + { + "panelItems": [ + { + "caption": "表单", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "form" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 0, + "layout": "FLEX" + }, + "id": "view_form" + }, + { + "panelItems": [ + { + "caption": "关系分页部件", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "drtab" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 0, + "layout": "FLEX" + }, + "id": "view_drtab" + }, + { + "panelItems": [ + { + "rawItem": { + "predefinedType": "NAV_POS", + "id": "nav_pos" + }, + "caption": "导航区占位", + "itemStyle": "DEFAULT", + "itemType": "RAWITEM", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "nav_pos" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "id": "view_nav_pos" + } + ], + "layoutPanel": true, + "codeName": "EditView4Layout", + "controlType": "VIEWLAYOUTPANEL", + "logicName": "实体编辑视图(上下关系)布局面板", + "appDataEntityId": "frontmodel.viewlayoutmodelrepository", + "controlParam": {}, + "name": "layoutpanel", + "id": "editview4layout" +} diff --git a/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-edit-view-layout.ts b/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-edit-view-layout.ts new file mode 100644 index 0000000..22422e1 --- /dev/null +++ b/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-edit-view-layout.ts @@ -0,0 +1,176 @@ +export default { + "layoutMode": "FLEX", + "layout": { + "layout": "FLEX" + }, + "rootPanelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "caption": "页面标题", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "captionbar" + } + ], + "layout": { + "align": "center", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_captionbar" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_header_left" + }, + { + "panelItems": [ + { + "panelItems": [ + { + "caption": "工具栏", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "toolbar" + } + ], + "layout": { + "align": "center", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_toolbar" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_header_right" + } + ], + "predefinedType": "VIEWHEADER", + "layout": { + "align": "space-between", + "dir": "row", + "layout": "FLEX", + "valign": "center" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 0, + "layout": "FLEX" + }, + "id": "view_header" + } + ], + "predefinedType": "PANELPART", + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "引用布局面板", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "panelpart" + }, + { + "panelItems": [ + { + "caption": "表单", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "form" + } + ], + "predefinedType": "VIEWCONTENT", + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "id": "view_content" + } + ], + "layoutPanel": true, + "codeName": "EditViewLayout", + "controlType": "VIEWLAYOUTPANEL", + "logicName": "编辑视图布局面板(预置模型)", + "appDataEntityId": "frontmodel.viewlayoutmodelrepository", + "controlParam": {}, + "name": "layoutpanel", + "id": "editviewlayout" +} diff --git a/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-grid-exp-view-layout.ts b/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-grid-exp-view-layout.ts new file mode 100644 index 0000000..d1d018d --- /dev/null +++ b/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-grid-exp-view-layout.ts @@ -0,0 +1,98 @@ +export default { + "layoutMode": "FLEX", + "layout": { + "layout": "FLEX" + }, + "rootPanelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "caption": "表格导航", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "gridexpbar" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "contentWidth": 500, + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "layout": "FLEX", + "width": 500, + "widthMode": "PX" + }, + "width": 500, + "id": "view_content_left" + }, + { + "panelItems": [ + { + "rawItem": { + "predefinedType": "NAV_POS", + "id": "nav_pos" + }, + "caption": "导航区占位", + "itemStyle": "DEFAULT", + "itemType": "RAWITEM", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "nav_pos" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "id": "view_content_right" + } + ], + "predefinedType": "CONTAINER_H_SPLIT", + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "id": "view_exp_split" + } + ], + "layoutPanel": true, + "codeName": "GridExpViewLayout", + "controlType": "VIEWLAYOUTPANEL", + "logicName": "表格导航视图布局面板(预置模型)", + "appDataEntityId": "frontmodel.viewlayoutmodelrepository", + "controlParam": {}, + "name": "layoutpanel", + "id": "gridexpviewlayout" +} diff --git a/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-grid-view-layout.ts b/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-grid-view-layout.ts new file mode 100644 index 0000000..907eff0 --- /dev/null +++ b/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-grid-view-layout.ts @@ -0,0 +1,251 @@ +export default { + "layoutMode": "FLEX", + "layout": { + "layout": "FLEX" + }, + "rootPanelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "caption": "页面标题", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "captionbar" + } + ], + "layout": { + "align": "center", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_captionbar" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_header_left" + }, + { + "panelItems": [ + { + "panelItems": [ + { + "caption": "搜索栏", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "searchbar" + } + ], + "layout": { + "align": "center", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_searchbar" + }, + { + "panelItems": [ + { + "caption": "工具栏", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "toolbar" + } + ], + "layout": { + "align": "center", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_toolbar" + } + ], + "layout": { + "dir": "row", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_header_right" + } + ], + "predefinedType": "VIEWHEADER", + "layout": { + "align": "space-between", + "dir": "row", + "layout": "FLEX", + "valign": "center" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 0, + "layout": "FLEX" + }, + "id": "view_header" + } + ], + "predefinedType": "PANELPART", + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "引用布局面板", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "panelpart" + }, + { + "panelItems": [ + { + "panelItems": [ + { + "caption": "搜索表单", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "searchform" + } + ], + "layout": { + "dir": "column", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 0, + "layout": "FLEX" + }, + "id": "view_searchform" + } + ], + "predefinedType": "PANELPART", + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "引用布局面板", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "panelpart1" + }, + { + "panelItems": [ + { + "caption": "表格", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "grid" + } + ], + "predefinedType": "VIEWCONTENT", + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "id": "view_content" + } + ], + "layoutPanel": true, + "codeName": "GridViewLayout", + "controlType": "VIEWLAYOUTPANEL", + "logicName": "表格视图布局(预置模型)", + "appDataEntityId": "frontmodel.viewlayoutmodelrepository", + "controlParam": {}, + "name": "layoutpanel", + "id": "gridviewlayout" +} diff --git a/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-index-pickup-data-view-layout.ts b/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-index-pickup-data-view-layout.ts new file mode 100644 index 0000000..f22bff6 --- /dev/null +++ b/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-index-pickup-data-view-layout.ts @@ -0,0 +1,28 @@ +export default { + "layoutMode": "FLEX", + "layout": { + "layout": "FLEX" + }, + "rootPanelItems": [ + { + "caption": "数据视图", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "dataview" + } + ], + "layoutPanel": true, + "codeName": "IndexPickupDataViewLayout", + "controlType": "VIEWLAYOUTPANEL", + "logicName": " 实体索引关系选择数据视图(部件视图)布局面板(预置模型)", + "appDataEntityId": "frontmodel.viewlayoutmodelrepository", + "controlParam": {}, + "name": "layoutpanel", + "id": "indexpickupdataviewlayout" +} diff --git a/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-kanban-view-layout.ts b/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-kanban-view-layout.ts new file mode 100644 index 0000000..010a7ee --- /dev/null +++ b/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-kanban-view-layout.ts @@ -0,0 +1,251 @@ +export default { + "layoutMode": "FLEX", + "layout": { + "layout": "FLEX" + }, + "rootPanelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "caption": "页面标题", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "captionbar" + } + ], + "layout": { + "align": "center", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_captionbar" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_header_left" + }, + { + "panelItems": [ + { + "panelItems": [ + { + "caption": "搜索栏", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "searchbar" + } + ], + "layout": { + "align": "center", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_searchbar" + }, + { + "panelItems": [ + { + "caption": "工具栏", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "toolbar" + } + ], + "layout": { + "align": "center", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_toolbar" + } + ], + "layout": { + "dir": "row", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_header_right" + } + ], + "predefinedType": "VIEWHEADER", + "layout": { + "align": "space-between", + "dir": "row", + "layout": "FLEX", + "valign": "center" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 0, + "layout": "FLEX" + }, + "id": "view_header" + } + ], + "predefinedType": "PANELPART", + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "引用布局面板", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "panelpart" + }, + { + "panelItems": [ + { + "panelItems": [ + { + "caption": "搜索表单", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "searchform" + } + ], + "layout": { + "dir": "column", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 0, + "layout": "FLEX" + }, + "id": "view_searchform" + } + ], + "predefinedType": "PANELPART", + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "引用布局面板", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "panelpart1" + }, + { + "panelItems": [ + { + "caption": "看板", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "kanban" + } + ], + "predefinedType": "VIEWCONTENT", + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "id": "view_kanban" + } + ], + "layoutPanel": true, + "codeName": "DEKanbanViewLayout", + "controlType": "VIEWLAYOUTPANEL", + "logicName": "实体看板视图布局面板(预置模型)", + "appDataEntityId": "frontmodel.viewlayoutmodelrepository", + "controlParam": {}, + "name": "layoutpanel", + "id": "dekanbanviewlayout" +} diff --git a/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-list-exp-view-layout.ts b/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-list-exp-view-layout.ts new file mode 100644 index 0000000..d411180 --- /dev/null +++ b/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-list-exp-view-layout.ts @@ -0,0 +1,98 @@ +export default { + "layoutMode": "FLEX", + "layout": { + "layout": "FLEX" + }, + "rootPanelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "caption": "列表导航", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "listexpbar" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "contentWidth": 500, + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "layout": "FLEX", + "width": 500, + "widthMode": "PX" + }, + "width": 500, + "id": "view_exp" + }, + { + "panelItems": [ + { + "rawItem": { + "predefinedType": "NAV_POS", + "id": "nav_pos" + }, + "caption": "导航区占位", + "itemStyle": "DEFAULT", + "itemType": "RAWITEM", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "nav_pos" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "id": "view_content" + } + ], + "predefinedType": "CONTAINER_H_SPLIT", + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "id": "view_exp_split" + } + ], + "layoutPanel": true, + "codeName": "ListExpViewLayout", + "controlType": "VIEWLAYOUTPANEL", + "logicName": " 实体列表导航视图布局面板(预置模型)", + "appDataEntityId": "frontmodel.viewlayoutmodelrepository", + "controlParam": {}, + "name": "layoutpanel", + "id": "listexpviewlayout" +} diff --git a/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-list-view-layout.ts b/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-list-view-layout.ts new file mode 100644 index 0000000..a9f9968 --- /dev/null +++ b/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-list-view-layout.ts @@ -0,0 +1,251 @@ +export default { + "layoutMode": "FLEX", + "layout": { + "layout": "FLEX" + }, + "rootPanelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "caption": "页面标题", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "captionbar" + } + ], + "layout": { + "align": "center", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_captionbar" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_header_left" + }, + { + "panelItems": [ + { + "panelItems": [ + { + "caption": "搜索栏", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "searchbar" + } + ], + "layout": { + "align": "center", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_searchbar" + }, + { + "panelItems": [ + { + "caption": "工具栏", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "toolbar" + } + ], + "layout": { + "align": "center", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_toolbar" + } + ], + "layout": { + "dir": "row", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_header_right" + } + ], + "predefinedType": "VIEWHEADER", + "layout": { + "align": "space-between", + "dir": "row", + "layout": "FLEX", + "valign": "center" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 0, + "layout": "FLEX" + }, + "id": "view_header" + } + ], + "predefinedType": "PANELPART", + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "引用布局面板", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "panelpart" + }, + { + "panelItems": [ + { + "panelItems": [ + { + "caption": "搜索表单", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "searchform" + } + ], + "layout": { + "dir": "column", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 0, + "layout": "FLEX" + }, + "id": "view_searchform" + } + ], + "predefinedType": "PANELPART", + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "引用布局面板", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "panelpart1" + }, + { + "panelItems": [ + { + "caption": "列表", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "list" + } + ], + "predefinedType": "VIEWCONTENT", + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "id": "view_content" + } + ], + "layoutPanel": true, + "codeName": "ListViewLayout", + "controlType": "VIEWLAYOUTPANEL", + "logicName": "列表视图布局面板(预置模型)", + "appDataEntityId": "frontmodel.viewlayoutmodelrepository", + "controlParam": {}, + "name": "layoutpanel", + "id": "listviewlayout" +} diff --git a/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-option-view-layout.ts b/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-option-view-layout.ts new file mode 100644 index 0000000..d907090 --- /dev/null +++ b/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-option-view-layout.ts @@ -0,0 +1,228 @@ +export default { + "layoutBodyOnly": true, + "layoutMode": "FLEX", + "layout": { + "layout": "FLEX" + }, + "rootPanelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "caption": "页面标题", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "captionbar" + } + ], + "layout": { + "align": "center", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_captionbar" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_header_left" + }, + { + "panelItems": [ + { + "panelItems": [ + { + "caption": "工具栏", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "toolbar" + } + ], + "layout": { + "align": "center", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_toolbar" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_header_right" + } + ], + "predefinedType": "VIEWHEADER", + "layout": { + "align": "space-between", + "dir": "row", + "layout": "FLEX", + "valign": "center" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 0, + "layout": "FLEX" + }, + "id": "view_header" + } + ], + "predefinedType": "PANELPART", + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "引用布局面板", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "panelpart" + }, + { + "panelItems": [ + { + "caption": "表单", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "form" + } + ], + "predefinedType": "VIEWCONTENT", + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "id": "view_content" + }, + { + "panelItems": [ + { + "actionType": "UIACTION", + "buttonStyle": "PRIMARY", + "buttonType": "PANELBUTTON", + "uiactionId": "ok", + "renderMode": "BUTTON", + "tooltip": "确定", + "caption": "确定", + "itemStyle": "PRIMARY", + "itemType": "BUTTON", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "button_okaction" + }, + { + "actionType": "UIACTION", + "buttonStyle": "INFO", + "buttonType": "PANELBUTTON", + "uiactionId": "cancel", + "renderMode": "BUTTON", + "tooltip": "取消", + "caption": "取消", + "itemStyle": "INFO", + "itemType": "BUTTON", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "button_cancelaction" + } + ], + "layout": { + "dir": "row-reverse", + "layout": "FLEX", + "valign": "center" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 0, + "layout": "FLEX" + }, + "id": "view_footer" + } + ], + "layoutPanel": true, + "codeName": "OptionViewLayout", + "controlType": "VIEWLAYOUTPANEL", + "logicName": "选项操作视图布局面(预置模型)", + "appDataEntityId": "frontmodel.viewlayoutmodelrepository", + "controlParam": {}, + "name": "layoutpanel", + "id": "optionviewlayout" +} diff --git a/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-panel-view-layout.ts b/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-panel-view-layout.ts new file mode 100644 index 0000000..88e28f7 --- /dev/null +++ b/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-panel-view-layout.ts @@ -0,0 +1,176 @@ +export default { + "layoutMode": "Flex", + "layout": { + "layout": "FLEX" + }, + "rootPanelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "caption": "页面标题", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "captionbar" + } + ], + "layout": { + "align": "center", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_captionbar" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_header_left" + }, + { + "panelItems": [ + { + "panelItems": [ + { + "caption": "工具栏", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "toolbar" + } + ], + "layout": { + "align": "center", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_toolbar" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_header_right" + } + ], + "predefinedType": "VIEWHEADER", + "layout": { + "align": "space-between", + "dir": "row", + "layout": "FLEX", + "valign": "center" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 0, + "layout": "FLEX" + }, + "id": "view_header" + } + ], + "predefinedType": "PANELPART", + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "引用布局面板", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "panelpart" + }, + { + "panelItems": [ + { + "caption": "面板部件", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX", + "widthMode": "FULL" + }, + "showCaption": true, + "id": "panel" + } + ], + "predefinedType": "VIEWCONTENT", + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "id": "view_content" + } + ], + "layoutPanel": true, + "codeName": "PanelViewLayout", + "controlType": "VIEWLAYOUTPANEL", + "logicName": "实体面板视图布局面板(预置模型)", + "appDataEntityId": "frontmodel.viewlayoutmodelrepository", + "controlParam": {}, + "name": "layoutpanel", + "id": "panelviewlayout" +} diff --git a/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-pickup-data-view-layout.ts b/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-pickup-data-view-layout.ts new file mode 100644 index 0000000..ad10fea --- /dev/null +++ b/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-pickup-data-view-layout.ts @@ -0,0 +1,28 @@ +export default { + "layoutMode": "FLEX", + "layout": { + "layout": "FLEX" + }, + "rootPanelItems": [ + { + "caption": "数据视图", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "dataview" + } + ], + "layoutPanel": true, + "codeName": "PickupDataViewLayout", + "controlType": "VIEWLAYOUTPANEL", + "logicName": "实体选择数据视图布局面板(预置模型)", + "appDataEntityId": "frontmodel.viewlayoutmodelrepository", + "controlParam": {}, + "name": "layoutpanel", + "id": "pickupdataviewlayout" +} diff --git a/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-pickup-grid-view-layout.ts b/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-pickup-grid-view-layout.ts new file mode 100644 index 0000000..8cf4a63 --- /dev/null +++ b/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-pickup-grid-view-layout.ts @@ -0,0 +1,28 @@ +export default { + "layoutMode": "FLEX", + "layout": { + "layout": "FLEX" + }, + "rootPanelItems": [ + { + "caption": "表格", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "grid" + } + ], + "layoutPanel": true, + "codeName": "PickupGridViewLayout", + "controlType": "VIEWLAYOUTPANEL", + "logicName": "实体选择表格视图布局面板(预置模型)", + "appDataEntityId": "frontmodel.viewlayoutmodelrepository", + "controlParam": {}, + "name": "layoutpanel", + "id": "pickupgridviewlayout" +} diff --git a/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-pickup-tree-view-layout.ts b/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-pickup-tree-view-layout.ts new file mode 100644 index 0000000..eed7d2f --- /dev/null +++ b/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-pickup-tree-view-layout.ts @@ -0,0 +1,27 @@ +export default { + "layoutMode": "FLEX", + "layout": { + "layout": "FLEX" + }, + "rootPanelItems": [ + { + "caption": "树", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "tree" + } + ], + "layoutPanel": true, + "codeName": "PickupTreeViewLayout", + "controlType": "VIEWLAYOUTPANEL", + "logicName": "实体选择树视图布局面板(预置模型)", + "appDataEntityId": "frontmodel.viewlayoutmodelrepository", + "controlParam": {}, + "name": "layoutpanel", + "id": "pickuptreeviewlayout" +} diff --git a/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-pickup-view-2-layout.ts b/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-pickup-view-2-layout.ts new file mode 100644 index 0000000..a6827ef --- /dev/null +++ b/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-pickup-view-2-layout.ts @@ -0,0 +1,273 @@ +export default { + "layoutMode": "FLEX", + "layout": { + "layout": "FLEX" + }, + "rootPanelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "caption": "页面标题", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "captionbar" + } + ], + "layout": { + "align": "center", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_captionbar" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_header_left" + }, + { + "panelItems": [ + { + "panelItems": [ + { + "caption": "工具栏", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "toolbar" + } + ], + "layout": { + "align": "center", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_toolbar" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_header_right" + } + ], + "predefinedType": "VIEWHEADER", + "layout": { + "align": "space-between", + "dir": "row", + "layout": "FLEX", + "valign": "center" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 0, + "layout": "FLEX" + }, + "id": "view_header" + } + ], + "predefinedType": "PANELPART", + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "引用布局面板", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "panelpart" + }, + { + "panelItems": [ + { + "panelItems": [ + { + "caption": "树导航", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "treeexpbar" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 0, + "layout": "FLEX" + }, + "id": "view_exp" + }, + { + "panelItems": [ + { + "caption": "选择面板", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "pickupviewpanel" + } + ], + "predefinedType": "VIEWCONTENT", + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "id": "view_content" + } + ], + "layout": { + "dir": "row", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "id": "view_container" + }, + { + "panelItems": [ + { + "actionType": "UIACTION", + "buttonStyle": "PRIMARY", + "buttonType": "PANELBUTTON", + "uiactionId": "ok", + "renderMode": "BUTTON", + "tooltip": "确定", + "caption": "确定", + "itemStyle": "PRIMARY", + "itemType": "BUTTON", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "button_okaction" + }, + { + "actionType": "UIACTION", + "buttonStyle": "INFO", + "buttonType": "PANELBUTTON", + "uiactionId": "cancel", + "renderMode": "BUTTON", + "tooltip": "取消", + "caption": "取消", + "itemStyle": "INFO", + "itemType": "BUTTON", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "button_cancelaction" + } + ], + "layout": { + "dir": "row-reverse", + "layout": "FLEX", + "valign": "center" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 0, + "layout": "FLEX" + }, + "id": "view_footer" + } + ], + "layoutPanel": true, + "codeName": "PickupView2Layout", + "controlType": "VIEWLAYOUTPANEL", + "logicName": "实体数据选择视图(左右关系)布局面板", + "appDataEntityId": "frontmodel.viewlayoutmodelrepository", + "controlParam": {}, + "name": "layoutpanel", + "id": "pickupview2layout" +} diff --git a/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-pickup-view-layout.ts b/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-pickup-view-layout.ts new file mode 100644 index 0000000..6eefbde --- /dev/null +++ b/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-pickup-view-layout.ts @@ -0,0 +1,228 @@ +export default { + "layoutMode": "FLEX", + "layout": { + "layout": "FLEX" + }, + "rootPanelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "caption": "页面标题", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "captionbar" + } + ], + "layout": { + "align": "center", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_captionbar" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_header_left" + }, + { + "panelItems": [ + { + "panelItems": [ + { + "caption": "工具栏", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "toolbar" + } + ], + "layout": { + "align": "center", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_toolbar" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_header_right" + } + ], + "predefinedType": "VIEWHEADER", + "layout": { + "align": "space-between", + "dir": "row", + "layout": "FLEX", + "valign": "center" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 0, + "layout": "FLEX" + }, + "id": "view_header" + } + ], + "predefinedType": "PANELPART", + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "引用布局面板", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "panelpart" + }, + { + "panelItems": [ + { + "caption": "控件占位", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "pickupviewpanel" + } + ], + "predefinedType": "VIEWCONTENT", + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "id": "view_content" + }, + { + "panelItems": [ + { + "actionType": "UIACTION", + "buttonStyle": "PRIMARY", + "buttonType": "PANELBUTTON", + "uiactionId": "ok", + "renderMode": "BUTTON", + "tooltip": "确定", + "caption": "确定", + "itemStyle": "PRIMARY", + "itemType": "BUTTON", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "button_okaction" + }, + { + "actionType": "UIACTION", + "buttonStyle": "INFO", + "buttonType": "PANELBUTTON", + "uiactionId": "cancel", + "renderMode": "BUTTON", + "tooltip": "取消", + "caption": "取消", + "itemStyle": "INFO", + "itemType": "BUTTON", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "button_cancelaction" + } + ], + "layout": { + "dir": "row-reverse", + "layout": "FLEX", + "valign": "center" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 0, + "layout": "FLEX" + }, + "id": "view_footer" + } + ], + "layoutPanel": true, + "codeName": "PickupViewLayout", + "controlType": "VIEWLAYOUTPANEL", + "logicName": "选择视图布局面板(预置模型)", + "appDataEntityId": "frontmodel.viewlayoutmodelrepository", + "controlParam": {}, + "name": "layoutpanel", + "id": "pickupviewlayout" +} diff --git a/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-tab-exp-view-layout.ts b/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-tab-exp-view-layout.ts new file mode 100644 index 0000000..403e2ef --- /dev/null +++ b/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-tab-exp-view-layout.ts @@ -0,0 +1,201 @@ +export default { + "layoutMode": "FLEX", + "layout": { + "layout": "FLEX" + }, + "rootPanelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "caption": "标题栏", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "captionbar" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "id": "view_captionbar" + }, + { + "panelItems": [ + { + "caption": "分页导航", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "tabexppanel" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "id": "view_tabexppanel" + } + ], + "predefinedType": "VIEWHEADER", + "layout": { + "dir": "row", + "layout": "FLEX", + "valign": "center" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 0, + "layout": "FLEX" + }, + "id": "view_header" + }, + { + "panelItems": [ + { + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "id": "view_tabexppanel_left" + }, + { + "panelItems": [ + { + "panelItems": [ + { + "rawItem": { + "predefinedType": "NAV_POS", + "id": "nav_pos" + }, + "caption": "导航区占位", + "itemStyle": "DEFAULT", + "itemType": "RAWITEM", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "nav_pos" + } + ], + "predefinedType": "VIEWCONTENT", + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "id": "view_content" + }, + { + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 0, + "layout": "FLEX" + }, + "id": "view_tabexppanel_bottom" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "id": "container1" + }, + { + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 0, + "layout": "FLEX" + }, + "id": "view_tabexppanel_right" + } + ], + "layout": { + "dir": "row", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "id": "container" + } + ], + "layoutPanel": true, + "codeName": "TabExpViewLayout", + "controlType": "VIEWLAYOUTPANEL", + "logicName": "分页导航视图布局面板(预置模型)", + "appDataEntityId": "frontmodel.viewlayoutmodelrepository", + "controlParam": {}, + "name": "layoutpanel", + "id": "tabexpviewlayout" +} diff --git a/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-tree-exp-view-layout.ts b/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-tree-exp-view-layout.ts new file mode 100644 index 0000000..305287c --- /dev/null +++ b/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-tree-exp-view-layout.ts @@ -0,0 +1,98 @@ +export default { + "layoutMode": "FLEX", + "layout": { + "layout": "FLEX" + }, + "rootPanelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "caption": "树导航栏", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "treeexpbar" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "contentWidth": 300, + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "layout": "FLEX", + "width": 300, + "widthMode": "PX" + }, + "width": 300, + "id": "view_content_left" + }, + { + "panelItems": [ + { + "rawItem": { + "predefinedType": "NAV_POS", + "id": "nav_pos" + }, + "caption": "导航区占位", + "itemStyle": "DEFAULT", + "itemType": "RAWITEM", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "nav_pos" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "id": "view_content_right" + } + ], + "predefinedType": "CONTAINER_H_SPLIT", + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "id": "view_exp_split" + } + ], + "layoutPanel": true, + "codeName": "TreeExpViewLayout", + "controlType": "VIEWLAYOUTPANEL", + "logicName": "实体树导航视图布局面板(预置模型)", + "appDataEntityId": "frontmodel.viewlayoutmodelrepository", + "controlParam": {}, + "name": "layoutpanel", + "id": "treeexpviewlayout" +} diff --git a/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-tree-view-layout.ts b/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-tree-view-layout.ts new file mode 100644 index 0000000..461602a --- /dev/null +++ b/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-tree-view-layout.ts @@ -0,0 +1,250 @@ +export default { + "layoutMode": "FLEX", + "layout": { + "layout": "FLEX" + }, + "rootPanelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "caption": "页面标题", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "captionbar" + } + ], + "layout": { + "align": "center", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_captionbar" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_header_left" + }, + { + "panelItems": [ + { + "panelItems": [ + { + "caption": "搜索栏", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "searchbar" + } + ], + "layout": { + "align": "center", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_searchbar" + }, + { + "panelItems": [ + { + "caption": "工具栏", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "toolbar" + } + ], + "layout": { + "align": "center", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_toolbar" + } + ], + "layout": { + "dir": "row", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_header_right" + } + ], + "predefinedType": "VIEWHEADER", + "layout": { + "align": "space-between", + "dir": "row", + "layout": "FLEX", + "valign": "center" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 0, + "layout": "FLEX" + }, + "id": "view_header" + } + ], + "predefinedType": "PANELPART", + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "引用布局面板", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "panelpart" + }, + { + "panelItems": [ + { + "panelItems": [ + { + "caption": "搜索表单", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "searchform" + } + ], + "layout": { + "dir": "column", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 0, + "layout": "FLEX" + }, + "id": "view_searchform" + } + ], + "predefinedType": "PANELPART", + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "引用布局面板", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "panelpart1" + }, + { + "panelItems": [ + { + "caption": "树视图", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "tree" + } + ], + "predefinedType": "VIEWCONTENT", + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "id": "view_content" + } + ], + "layoutPanel": true, + "codeName": "TreeViewLayout", + "controlType": "VIEWLAYOUTPANEL", + "logicName": "树视图布局面板(预置模型)", + "appDataEntityId": "frontmodel.viewlayoutmodelrepository", + "controlParam": {}, + "name": "layoutpanel", + "id": "treeviewlayout" +} diff --git a/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-wizard-view-layout.ts b/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-wizard-view-layout.ts new file mode 100644 index 0000000..96131c3 --- /dev/null +++ b/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-de-wizard-view-layout.ts @@ -0,0 +1,49 @@ +export default { + "layoutMode": "FLEX", + "layout": { + "layout": "FLEX" + }, + "rootPanelItems": [ + { + "panelItems": [ + { + "caption": "向导面板", + "contentHeight": 100, + "height": 100, + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "height": 100, + "heightMode": "PERCENTAGE", + "layout": "FLEX" + }, + "showCaption": true, + "id": "wizardpanel" + } + ], + "predefinedType": "VIEWCONTENT", + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "id": "view_content" + } + ], + "layoutPanel": true, + "codeName": "WizardViewLayout", + "controlType": "VIEWLAYOUTPANEL", + "logicName": "向导视图布局面板(预置模型)", + "appDataEntityId": "frontmodel.viewlayoutmodelrepository", + "controlParam": {}, + "name": "layoutpanel", + "id": "wizardviewlayout" +} diff --git a/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-dem-pickup-view-2-layout.ts b/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-dem-pickup-view-2-layout.ts new file mode 100644 index 0000000..b18993b --- /dev/null +++ b/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-dem-pickup-view-2-layout.ts @@ -0,0 +1,414 @@ +export default { + "layoutMode": "FLEX", + "layout": { + "layout": "FLEX" + }, + "rootPanelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "caption": "页面标题", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "captionbar" + } + ], + "layout": { + "align": "center", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_captionbar" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_header_left" + }, + { + "panelItems": [ + { + "panelItems": [ + { + "caption": "工具栏", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "toolbar" + } + ], + "layout": { + "align": "center", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_toolbar" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_header_right" + } + ], + "predefinedType": "VIEWHEADER", + "layout": { + "align": "space-between", + "dir": "row", + "layout": "FLEX", + "valign": "center" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 0, + "layout": "FLEX" + }, + "id": "view_header" + } + ], + "predefinedType": "PANELPART", + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "引用布局面板", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "panelpart" + }, + { + "panelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "caption": "树导航栏", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "treeexpbar" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 0, + "layout": "FLEX" + }, + "id": "container6" + }, + { + "panelItems": [ + { + "caption": "控件占位", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "pickupviewpanel" + } + ], + "predefinedType": "VIEWCONTENT", + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "id": "container7" + } + ], + "layout": { + "dir": "row", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "id": "container3" + }, + { + "panelItems": [ + { + "actionType": "UIACTION", + "buttonStyle": "DEFAULT", + "buttonType": "PANELBUTTON", + "uiactionId": "addselection", + "renderMode": "BUTTON", + "tooltip": "添加选中数据", + "caption": "添加选中数据", + "itemStyle": "DEFAULT", + "itemType": "BUTTON", + "layoutPos": { + "shrink": 1, + "layout": "FLEX", + "spacingBottom": "OUTERMEDIUM" + }, + "showCaption": true, + "id": "button_addselection" + }, + { + "actionType": "UIACTION", + "buttonStyle": "DEFAULT", + "buttonType": "PANELBUTTON", + "uiactionId": "addall", + "renderMode": "BUTTON", + "tooltip": "添加全部数据", + "caption": "添加全部数据", + "itemStyle": "DEFAULT", + "itemType": "BUTTON", + "layoutPos": { + "shrink": 1, + "layout": "FLEX", + "spacingBottom": "OUTERMEDIUM" + }, + "showCaption": true, + "id": "button_addall" + }, + { + "actionType": "UIACTION", + "buttonStyle": "DEFAULT", + "buttonType": "PANELBUTTON", + "uiactionId": "removeall", + "renderMode": "BUTTON", + "tooltip": "移除全部数据", + "caption": "移除全部数据", + "itemStyle": "DEFAULT", + "itemType": "BUTTON", + "layoutPos": { + "shrink": 1, + "layout": "FLEX", + "spacingBottom": "OUTERMEDIUM" + }, + "showCaption": true, + "id": "button_removeall" + }, + { + "actionType": "UIACTION", + "buttonStyle": "DEFAULT", + "buttonType": "PANELBUTTON", + "uiactionId": "removeselection", + "renderMode": "BUTTON", + "tooltip": "移除选中数据", + "caption": "移除选中数据", + "itemStyle": "DEFAULT", + "itemType": "BUTTON", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "button_removeselection" + } + ], + "layout": { + "align": "center", + "dir": "column", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 0, + "layout": "FLEX", + "spacingLeft": "OUTERMEDIUM", + "spacingRight": "OUTERMEDIUM" + }, + "id": "container4" + }, + { + "panelItems": [ + { + "caption": "列表", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "simplelist" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "contentWidth": 300, + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 0, + "layout": "FLEX", + "width": 300, + "widthMode": "PX" + }, + "width": 300, + "id": "container5" + } + ], + "predefinedType": "VIEWCONTENT", + "layout": { + "dir": "row", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "id": "view_content" + }, + { + "panelItems": [ + { + "actionType": "UIACTION", + "buttonStyle": "PRIMARY", + "buttonType": "PANELBUTTON", + "uiactionId": "ok", + "renderMode": "BUTTON", + "tooltip": "确定", + "caption": "确定", + "itemStyle": "PRIMARY", + "itemType": "BUTTON", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "button_okaction" + }, + { + "actionType": "UIACTION", + "buttonStyle": "INFO", + "buttonType": "PANELBUTTON", + "uiactionId": "cancel", + "renderMode": "BUTTON", + "tooltip": "取消", + "caption": "取消", + "itemStyle": "INFO", + "itemType": "BUTTON", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "button_cancelaction" + } + ], + "layout": { + "dir": "row-reverse", + "layout": "FLEX", + "valign": "center" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 0, + "layout": "FLEX" + }, + "id": "view_footer" + } + ], + "layoutPanel": true, + "codeName": "MPickupView2Layout", + "controlType": "VIEWLAYOUTPANEL", + "logicName": "多项选择视图(左右关系)布局面板(预置模型)", + "appDataEntityId": "frontmodel.viewlayoutmodelrepository", + "controlParam": {}, + "name": "layoutpanel", + "id": "mpickupview2layout" +} diff --git a/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-dem-pickup-view-layout.ts b/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-dem-pickup-view-layout.ts new file mode 100644 index 0000000..066c43e --- /dev/null +++ b/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-dem-pickup-view-layout.ts @@ -0,0 +1,368 @@ +export default { + "layoutMode": "FLEX", + "layout": { + "layout": "FLEX" + }, + "rootPanelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "caption": "页面标题", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "captionbar" + } + ], + "layout": { + "align": "center", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_captionbar" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_header_left" + }, + { + "panelItems": [ + { + "panelItems": [ + { + "caption": "工具栏", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "toolbar" + } + ], + "layout": { + "align": "center", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_toolbar" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_header_right" + } + ], + "predefinedType": "VIEWHEADER", + "layout": { + "align": "space-between", + "dir": "row", + "layout": "FLEX", + "valign": "center" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 0, + "layout": "FLEX" + }, + "id": "view_header" + } + ], + "predefinedType": "PANELPART", + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "引用布局面板", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "panelpart" + }, + { + "panelItems": [ + { + "panelItems": [ + { + "caption": "控件占位", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "pickupviewpanel" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "id": "container3" + }, + { + "panelItems": [ + { + "actionType": "UIACTION", + "buttonStyle": "DEFAULT", + "buttonType": "PANELBUTTON", + "uiactionId": "addselection", + "renderMode": "BUTTON", + "tooltip": "添加选中数据", + "caption": "添加选中数据", + "itemStyle": "DEFAULT", + "itemType": "BUTTON", + "layoutPos": { + "shrink": 1, + "layout": "FLEX", + "spacingBottom": "OUTERMEDIUM" + }, + "showCaption": true, + "id": "button_addselection" + }, + { + "actionType": "UIACTION", + "buttonStyle": "DEFAULT", + "buttonType": "PANELBUTTON", + "uiactionId": "addall", + "renderMode": "BUTTON", + "tooltip": "添加全部数据", + "caption": "添加全部数据", + "itemStyle": "DEFAULT", + "itemType": "BUTTON", + "layoutPos": { + "shrink": 1, + "layout": "FLEX", + "spacingBottom": "OUTERMEDIUM" + }, + "showCaption": true, + "id": "button_addall" + }, + { + "actionType": "UIACTION", + "buttonStyle": "DEFAULT", + "buttonType": "PANELBUTTON", + "uiactionId": "removeall", + "renderMode": "BUTTON", + "tooltip": "移除全部数据", + "caption": "移除全部数据", + "itemStyle": "DEFAULT", + "itemType": "BUTTON", + "layoutPos": { + "shrink": 1, + "layout": "FLEX", + "spacingBottom": "OUTERMEDIUM" + }, + "showCaption": true, + "id": "button_removeall" + }, + { + "actionType": "UIACTION", + "buttonStyle": "DEFAULT", + "buttonType": "PANELBUTTON", + "uiactionId": "removeselection", + "renderMode": "BUTTON", + "tooltip": "移除选中数据", + "caption": "移除选中数据", + "itemStyle": "DEFAULT", + "itemType": "BUTTON", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "button_removeselection" + } + ], + "layout": { + "align": "center", + "dir": "column", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 0, + "layout": "FLEX", + "spacingLeft": "OUTERMEDIUM", + "spacingRight": "OUTERMEDIUM" + }, + "id": "container4" + }, + { + "panelItems": [ + { + "caption": "列表", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "simplelist" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "contentWidth": 300, + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 0, + "layout": "FLEX", + "width": 300, + "widthMode": "PX" + }, + "width": 300, + "id": "container5" + } + ], + "predefinedType": "VIEWCONTENT", + "layout": { + "dir": "row", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "id": "view_content" + }, + { + "panelItems": [ + { + "actionType": "UIACTION", + "buttonStyle": "PRIMARY", + "buttonType": "PANELBUTTON", + "uiactionId": "ok", + "renderMode": "BUTTON", + "tooltip": "确定", + "caption": "确定", + "itemStyle": "PRIMARY", + "itemType": "BUTTON", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "button_okaction" + }, + { + "actionType": "UIACTION", + "buttonStyle": "INFO", + "buttonType": "PANELBUTTON", + "uiactionId": "cancel", + "renderMode": "BUTTON", + "tooltip": "取消", + "caption": "取消", + "itemStyle": "INFO", + "itemType": "BUTTON", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "button_cancelaction" + } + ], + "layout": { + "dir": "row-reverse", + "layout": "FLEX", + "valign": "center" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 0, + "layout": "FLEX" + }, + "id": "view_footer" + } + ], + "layoutPanel": true, + "codeName": "MPickupViewLayout", + "controlType": "VIEWLAYOUTPANEL", + "logicName": "多项选择视图布局面板(预置模型)", + "appDataEntityId": "frontmodel.viewlayoutmodelrepository", + "controlParam": {}, + "name": "layoutpanel", + "id": "mpickupviewlayout" +} diff --git a/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-dewf-dyna-action-view-layout.ts b/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-dewf-dyna-action-view-layout.ts new file mode 100644 index 0000000..cd179da --- /dev/null +++ b/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-dewf-dyna-action-view-layout.ts @@ -0,0 +1,98 @@ +export default { + "layoutMode": "FLEX", + "layout": { + "layout": "FLEX" + }, + "rootPanelItems": [ + { + "panelItems": [ + { + "caption": "表单", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "form" + } + ], + "predefinedType": "VIEWCONTENT", + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "id": "view_content" + }, + { + "panelItems": [ + { + "actionType": "UIACTION", + "buttonStyle": "INFO", + "buttonType": "PANELBUTTON", + "uiactionId": "cancel", + "renderMode": "BUTTON", + "tooltip": "取消", + "caption": "取消", + "itemStyle": "INFO", + "itemType": "BUTTON", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "button_cancelaction" + }, + { + "actionType": "UIACTION", + "buttonStyle": "PRIMARY", + "buttonType": "PANELBUTTON", + "uiactionId": "ok", + "renderMode": "BUTTON", + "tooltip": "确定", + "caption": "确定", + "itemStyle": "PRIMARY", + "itemType": "BUTTON", + "layoutPos": { + "shrink": 1, + "layout": "FLEX", + "spacingRight": "OUTERMEDIUM" + }, + "showCaption": true, + "id": "button_okaction" + } + ], + "layout": { + "dir": "row-reverse", + "layout": "FLEX", + "valign": "center" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 0, + "layout": "FLEX" + }, + "id": "view_footer" + } + ], + "layoutPanel": true, + "codeName": "WFDynaActionViewLayout", + "controlType": "VIEWLAYOUTPANEL", + "logicName": "实体工作流动态操作视图布局面板(预置模型)", + "appDataEntityId": "frontmodel.viewlayoutmodelrepository", + "controlParam": {}, + "name": "layoutpanel", + "id": "wfdynaactionviewlayout" +} diff --git a/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-dewf-dyna-edit-view-3-layout.ts b/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-dewf-dyna-edit-view-3-layout.ts new file mode 100644 index 0000000..54ef264 --- /dev/null +++ b/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-dewf-dyna-edit-view-3-layout.ts @@ -0,0 +1,257 @@ +export default { + "layoutMode": "FLEX", + "layout": { + "layout": "FLEX" + }, + "rootPanelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "caption": "页面标题", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "captionbar" + } + ], + "layout": { + "align": "center", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_captionbar" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_header_left" + }, + { + "panelItems": [ + { + "panelItems": [ + { + "caption": "工具栏", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "toolbar" + } + ], + "layout": { + "align": "center", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_toolbar" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_header_right" + } + ], + "predefinedType": "VIEWHEADER", + "layout": { + "align": "space-between", + "dir": "row", + "layout": "FLEX", + "valign": "center" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 0, + "layout": "FLEX" + }, + "id": "view_header" + } + ], + "predefinedType": "PANELPART", + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "引用布局面板", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "panelpart" + }, + { + "panelItems": [ + { + "panelItems": [ + { + "caption": "关系分页部件", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX", + "widthMode": "FULL" + }, + "showCaption": true, + "id": "drtab" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "contentHeight": 54, + "height": 54, + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 0, + "height": 54, + "heightMode": "PX", + "layout": "FLEX" + }, + "id": "view_drtab" + }, + { + "panelItems": [ + { + "caption": "表单", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "form" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "id": "view_form" + }, + { + "panelItems": [ + { + "rawItem": { + "predefinedType": "NAV_POS", + "id": "nav_pos" + }, + "caption": "导航区占位", + "itemStyle": "DEFAULT", + "itemType": "RAWITEM", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "nav_pos" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "id": "view_nav_pos" + } + ], + "predefinedType": "VIEWCONTENT", + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "id": "view_content" + } + ], + "layoutPanel": true, + "codeName": "WFDynaEditView3Layout", + "controlType": "VIEWLAYOUTPANEL", + "logicName": "实体工作流动态视图(分页关系)布局面板(预置模型)", + "appDataEntityId": "frontmodel.viewlayoutmodelrepository", + "controlParam": {}, + "name": "layoutpanel", + "id": "wfdynaeditview3layout" +} diff --git a/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-dewf-dyna-edit-view-layout.ts b/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-dewf-dyna-edit-view-layout.ts new file mode 100644 index 0000000..35a09a2 --- /dev/null +++ b/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-dewf-dyna-edit-view-layout.ts @@ -0,0 +1,175 @@ +export default { + "layoutMode": "FLEX", + "layout": { + "layout": "FLEX" + }, + "rootPanelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "panelItems": [ + { + "caption": "页面标题", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "captionbar" + } + ], + "layout": { + "align": "center", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_captionbar" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_header_left" + }, + { + "panelItems": [ + { + "panelItems": [ + { + "caption": "工具栏", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "toolbar" + } + ], + "layout": { + "align": "center", + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_toolbar" + } + ], + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "heightMode": "FULL", + "layout": "FLEX" + }, + "id": "view_header_right" + } + ], + "predefinedType": "VIEWHEADER", + "layout": { + "align": "space-between", + "dir": "row", + "layout": "FLEX", + "valign": "center" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 0, + "layout": "FLEX" + }, + "id": "view_header" + } + ], + "predefinedType": "PANELPART", + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "引用布局面板", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "panelpart" + }, + { + "panelItems": [ + { + "caption": "表单", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "form" + } + ], + "predefinedType": "VIEWCONTENT", + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "id": "view_content" + } + ], + "layoutPanel": true, + "codeName": "WFDynaEditViewLayout", + "controlType": "VIEWLAYOUTPANEL", + "logicName": "实体工作流动态编辑视图布局面板(预置模型)", + "appDataEntityId": "frontmodel.viewlayoutmodelrepository", + "controlParam": {}, + "name": "layoutpanel", + "id": "wfdynaeditviewlayout" +} diff --git a/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-dewf-dyna-start-view-layout.ts b/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-dewf-dyna-start-view-layout.ts new file mode 100644 index 0000000..d40280b --- /dev/null +++ b/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-dewf-dyna-start-view-layout.ts @@ -0,0 +1,99 @@ +export default { + "layoutMode": "FLEX", + "layout": { + "layout": "FLEX" + }, + "rootPanelItems": [ + { + "panelItems": [ + { + "caption": "表单", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "form" + } + ], + "predefinedType": "VIEWCONTENT", + "layout": { + "layout": "FLEX" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "id": "view_content" + }, + { + "panelItems": [ + { + "actionType": "UIACTION", + "buttonStyle": "INFO", + "buttonType": "PANELBUTTON", + "uiactionId": "cancel", + "renderMode": "BUTTON", + "tooltip": "取消", + "caption": "取消", + "itemStyle": "INFO", + "itemType": "BUTTON", + "layoutPos": { + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "button_cancelaction" + }, + { + "actionType": "UIACTION", + "buttonStyle": "PRIMARY", + "buttonType": "PANELBUTTON", + "uiactionId": "ok", + "renderMode": "BUTTON", + "tooltip": "确定", + "caption": "确定", + "itemStyle": "PRIMARY", + "itemType": "BUTTON", + "layoutPos": { + "shrink": 1, + "layout": "FLEX", + "spacingRight": "OUTERMEDIUM" + }, + "showCaption": true, + "id": "button_okaction" + } + ], + "layout": { + "dir": "row-reverse", + "layout": "FLEX", + "valign": "center" + }, + "dataRegionType": "INHERIT", + "caption": "容器", + "itemStyle": "DEFAULT", + "itemType": "CONTAINER", + "layoutPos": { + "shrink": 0, + "layout": "FLEX" + }, + "id": "view_footer" + } + ], + "layoutPanel": true, + "codeName": "WFDynaStartViewLayout", + "controlType": "VIEWLAYOUTPANEL", + "logicName": "实体工作流动态启动视图布局面板(预置模型)", + "appDataEntityId": "frontmodel.viewlayoutmodelrepository", + "controlParam": {}, + "name": "layoutpanel", + "id": "wfdynastartviewlayout" +} diff --git a/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-form-pickup-data-view.ts b/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-form-pickup-data-view.ts new file mode 100644 index 0000000..6a5e997 --- /dev/null +++ b/packages/studio-theme/src/publish/view-layout-model-repository/view-layout-model-repository-form-pickup-data-view.ts @@ -0,0 +1,28 @@ +export default { + "layoutMode": "FLEX", + "layout": { + "layout": "FLEX" + }, + "rootPanelItems": [ + { + "caption": "数据视图", + "itemStyle": "DEFAULT", + "itemType": "CTRLPOS", + "layoutPos": { + "grow": 1, + "shrink": 1, + "layout": "FLEX" + }, + "showCaption": true, + "id": "dataview" + } + ], + "layoutPanel": true, + "codeName": "FormPickupDataViewLayout", + "controlType": "VIEWLAYOUTPANEL", + "logicName": " 实体表单选择数据视图布局面板", + "appDataEntityId": "frontmodel.viewlayoutmodelrepository", + "controlParam": {}, + "name": "layoutpanel", + "id": "formpickupdataviewlayout" +} diff --git a/packages/studio-theme/src/theme/elements/index.scss b/packages/studio-theme/src/theme/elements/index.scss new file mode 100644 index 0000000..339521a --- /dev/null +++ b/packages/studio-theme/src/theme/elements/index.scss @@ -0,0 +1,35 @@ +/** 定义网站 HTML 元素的样式(如 H1 标签默认样式等),或者基础样式 **/ +html, +body { + padding: 0; + margin: 0; + overflow: hidden; +} + +* { + box-sizing: border-box; +} + +.ibiz-app { + width: 100vw; + height: 100vh; +} + +// 滚动条 +::-webkit-scrollbar { + width: 4px; + height: 6px; +} + +::-webkit-scrollbar-thumb { + background: #{getCssVar(color, fill, 2)}; +} + +div::-webkit-scrollbar { + width: 4px; + height: 6px; +} + +div::-webkit-scrollbar-thumb { + background: #{getCssVar(color, fill, 2)}; +} diff --git a/packages/studio-theme/src/theme/generic/element-plus.scss b/packages/studio-theme/src/theme/generic/element-plus.scss new file mode 100644 index 0000000..127b3b3 --- /dev/null +++ b/packages/studio-theme/src/theme/generic/element-plus.scss @@ -0,0 +1,454 @@ +/* stylelint-disable no-descending-specificity */ +:root { + --el-color-primary: #{getCssVar(color, primary)}; + --el-bg-color: #{getCssVar(color, bg, 0)}; + --el-border-color-light: #{getCssVar(color, border)}; + --el-border-radius-base: #{getCssVar(border, radius, small)}; + --el-mask-color: rgba(#{getCssVar(grey, 6)}, 0.1); + --el-text-color-regular: #{getCssVar(color, text, 0)}; + --el-text-color-placeholder: #{getCssVar(color, text, 3)}; + --el-font-size-base: #{getCssVar(font-size, regular)}; + --el-disabled-text-color: #{getCssVar(color, disabled, text)}; + --el-disabled-bg-color: #{getCssVar(color, disabled, fill)}; + --el-disabled-border-color: #{getCssVar(color, disabled, border)}; + --el-border-color-hover: #{getCssVar(color, primary, hover)}; + --el-fill-color-light: #{getCssVar(color, bg, 2)}; + --el-border-color: #{getCssVar(color, border)}; + --el-border-color-extra-light: #{getCssVar(color, secondary, light, default)}; + --el-bg-color-overlay: #{getCssVar(color, bg, 3)}; + --el-border-color-lighter:#{getCssVar(color, border)}; + --el-fill-color-blank: transparent; + --el-fill-color-lighter: #{getCssVar(color, fill, 0)}; + --el-border-color-darker: #{getCssVar(color, border)}; + --el-color-success: #{getCssVar(color, success)}; + --el-color-info: #{getCssVar(color, text, 2)}; + + color: getCssVar(color, text, 0); + background-color: getCssVar(color, bg, 0); +} + +.el-input-number { + .el-input__wrapper { + --el-border-color: #{getCssVar(color, border)}; + --el-input-border-color : #{getCssVar(color, border)}; + } +} + +// 去除 溢出阴影 +.el-input-number__increase:hover~.el-input:not(.is-disabled) .el-input__wrapper { + box-shadow: 0 0 0 1px var(--el-input-focus-border-color); +} + +// 模态 +.el-dialog__headerbtn { + width: 32px; + height: 32px; +} + +.el-input, +.el-textarea, +.el-date-editor { + --el-input-text-color: #{getCssVar(editor, default, text-color)}; + --el-input-border-color: #{getCssVar(editor, default, border-color)}; + --el-input-hover-border-color: #{getCssVar(editor, hover, border-color)}; +} + +.el-autocomplete-suggestion { + --el-fill-color-light: #{getCssVar(editor, hover, bg-color)}; +} + +// 默认输入框背景色 +.el-input__wrapper { + --el-input-bg-color: #{getCssVar(editor, default, bg-color)}; +} + + +// 飘窗 +.el-drawer { + .el-drawer__body { + padding: 0; + } +} + +// 应用菜单 +.el-menu { + --el-menu-bg-color: transparent; +} + +// 下拉框 +.el-dropdown-menu { + background-color: getCssVar('color', 'bg', 3); +} + +.el-dropdown-menu__item { + color: getCssVar('color', 'text', 0); + + &:hover { + color: getCssVar('color', 'white'); + background-color: getCssVar('color', 'primary', 'active'); + } +} + +// 树 +.el-tree { + --el-tree-text-color: #{getCssVar(color, text, 0)}; + --el-tree-node-hover-bg-color: #{getCssVar(color, fill, 0)}; + --el-tree-expand-icon-color: #{getCssVar(color, text, 2)}; + + font-size: getCssVar('font-size', 'regular'); + background-color: transparent; + + &.el-tree--highlight-current .el-tree-node.is-current>.el-tree-node__content { + background-color: #{getCssVar(color, primary, light, default)}; + } +} + +// 按钮 begin +.el-button { + --el-button-bg-color: #{getCssVar(color, primary)}; + --el-button-text-color: #{getCssVar(color, white)}; + --el-button-hover-text-color: #{getCssVar(color, white)}; + --el-button-hover-bg-color: #{getCssVar(color, primary, hover)}; + --el-button-hover-border-color: #{getCssVar(color, primary, hover)}; + --el-button-active-text-color: #{getCssVar(color, white)}; + --el-button-active-bg-color: #{getCssVar(color, primary, active)}; + --el-button-active-border-color: #{getCssVar(color, primary, active)}; + --el-button-disabled-bg-color: #{getCssVar(color, disabled, bg)}; + --el-button-disabled-text-color: #{getCssVar(color, disabled, text)}; + + border-width: 0; +} + +.el-button--primary { + --el-button-bg-color: #{getCssVar(color, primary)}; + --el-button-hover-bg-color: #{getCssVar(color, primary, hover)}; + --el-button-active-bg-color: #{getCssVar(color, primary, active)}; +} + +.el-button--info { + --el-button-bg-color: #{getCssVar(color, tertiary)}; + --el-button-hover-bg-color: #{getCssVar(color, tertiary, hover)}; + --el-button-active-bg-color: #{getCssVar(color, tertiary, active)}; +} + +.el-button--success { + --el-button-bg-color: #{getCssVar(color, success)}; + --el-button-hover-bg-color: #{getCssVar(color, success, hover)}; + --el-button-active-bg-color: #{getCssVar(color, success, active)}; +} + +.el-button--warning { + --el-button-bg-color: #{getCssVar(color, warning)}; + --el-button-hover-bg-color: #{getCssVar(color, warning, hover)}; + --el-button-active-bg-color: #{getCssVar(color, warning, active)}; +} + +.el-button--danger { + --el-button-bg-color: #{getCssVar(color, danger)}; + --el-button-hover-bg-color: #{getCssVar(color, danger, hover)}; + --el-button-active-bg-color: #{getCssVar(color, danger, active)}; +} + +.el-button.is-link { + --el-button-text-color: #{getCssVar(color, link)}; + --el-button-hover-link-text-color: #{getCssVar(color, link, hover)}; +} + +.el-button.is-text { + --el-button-text-color: #{getCssVar(color, primary)}; + + background-color: transparent; + border: 0 solid transparent; +} + +.el-button.is-plain { + --el-button-hover-text-color: #{getCssVar(color, white)}; + --el-button-hover-bg-color: #{getCssVar(color, primary, hover)}; +} + +.el-button.is-text:not(.is-disabled):focus, +.el-button.is-text:not(.is-disabled):hover { + background-color: #{getCssVar(color, fill, 0)}; +} + +// 按钮 end + +// 表格 begin +.el-table { + --el-table-row-hover-bg-color: rgba(#{getCssVar(grey, 1)}, 1); + --el-table-current-row-bg-color: rgba(#{getCssVar(blue, cyan, 0)}, 1); + --el-table-bg-color: transparent; + --el-table-tr-bg-color: transparent; + --el-table-header-bg-color: transparent; + --el-table-border:.1px solid #{getCssVar(color, border)}; + --el-table-border-color: #{getCssVar(color, border)}; + + font-size: #{getCssVar(font, size, regular)}; + + // 表格底部额外 border + .el-table__inner-wrapper::before { + display: none; + } +} + +// 表格分页栏 +.el-pagination { + --el-pagination-bg-color: transparent; + --el-pagination-text-color: #{getCssVar(color, text, 2)}; + --el-pagination-hover-color: #{getCssVar(color, text, 0)}; + --el-pagination-button-bg-color: transparent; + --el-pagination-button-color: #{getCssVar(color, text, 0)}; + --el-pagination-button-disabled-bg-color: transparent; + --el-disabled-bg-color: transparent; +} + +.is-background .el-pager li:hover { + background-color: #{getCssVar(color, fill, 0)}; +} + +.el-popper__arrow { + display: none; +} + +.el-pagination__jump { + color: #{getCssVar(color, text, 0)}; + + .el-input__wrapper { + background-color:#{getCssVar(color, fill, 0)}; + box-shadow: none; + } + + .el-input__wrapper:hover { + box-shadow: none; + } + + .el-input__inner { + color: #{getCssVar(color, text, 0)}; + } +} + +.el-pagination.is-background .el-pager li.is-active { + color: #{getCssVar(color, primary)}; + background-color: #{getCssVar(color, primary, light, default)}; +} + +// 表格分页数量选择器 +.el-popper.is-light { + background-color: #{getCssVar(color, bg, 3)}; + border-width: 0; + + .el-select-dropdown__item { + font-weight: #{getCssVar(font-weight, regular)}; + color: #{getCssVar(color, text, 0)}; + } + + .el-select-dropdown__item.hover, + .el-select-dropdown__item:hover { + background-color: #{getCssVar(color, fill, 0)}; + } +} + +.el-pagination button { + --el-button-hover-bg-color:#{getCssVar(color, fill, 0)}; + --el-button-hover-text-color: #{getCssVar(color, text, 0)}; +} + +.el-pagination__sizes { + --el-select-border-color-hover: transparent; + + .el-select { + --el-select-border-color-hover: transparent; + --el-select-input-focus-border-color: #{getCssVar(color, focus, border)}; + } + + .el-input__wrapper { + background-color:#{getCssVar(color, fill, 0)}; + box-shadow: none; + } + + + .el-input__inner { + color: #{getCssVar(color, text, 0)}; + } + + .el-select .el-input.is-focus .el-input__wrapper { + box-shadow: none; + } +} + +// 表格 end + +// 卡片 begin +.el-card { + --el-card-border-radius: #{getCssVar(border, radius, medium)}; + --el-card-padding: #{getCssVar(spacing, base)}; + --el-card-bg-color: transparent; +} + +// 卡片 end + +// 下拉菜单 +.el-scrollbar { + --el-scrollbar-bg-color: #{getCssVar(color, fill, 2)}; + --el-scrollbar-hover-bg-color: #{getCssVar(color, fill, 2)}; + --el-scrollbar-opacity: 1; +} + +// 滑动输入条 +.el-slider { + --el-slider-stop-bg-color:#{getCssVar(color, fill, 0)}; + --el-slider-runway-bg-color: #{getCssVar(color, fill, 0)}; +} + +// 文件上传 +.el-upload--picture-card { + border-width: 2px; +} + +.el-upload--picture-card:hover { + color: #{getCssVar(color, fill, 0)}; + background-color: #{getCssVar(color, fill, 1)}; + border-color: #{getCssVar(color, border)}; +} + +// 选择 +.el-select__tags .el-tag--info { + color: #{getCssVar(editor, default, text-color)}; + background-color: #{getCssVar(color, fill, 0)}; +} + + +// 图片预览 +.el-image { + .el-image-viewer__actions__inner { + color: #{getCssVar(color, text, 1)}; + } + + .el-image-viewer__actions { + background-color: #{getCssVar(color, bg, 1)}; + } + + .el-image-viewer__close { + color: #{getCssVar(color, text, 1)}; + background-color: #{getCssVar(color, bg, 1)}; + } +} + +// 评分 +.el-rate { + --el-rate-fill-color: #{getCssVar(color, primary)}; +} + +// 弹出框 +.el-alert--info { + --el-alert-bg-color: #{getCssVar(color, bg, 1)}; +} + +// 输入框后缀区间隔 +.el-input__suffix-inner { + gap: getCssVar(spacing, tight); +} + + +// 确认框各种类型样式 +.el-message-box{ + &.confirm-info { + .el-message-box__btns{ + .el-button:nth-child(2){ + background-color: #{getCssVar(color, tertiary)}; + + &:hover{ + background-color: #{getCssVar(color, tertiary, hover)} + } + } + } + } + + &.confirm-success { + .el-message-box__btns{ + .el-button:nth-child(2){ + background-color: #{getCssVar(color, success)}; + + &:hover{ + background-color: #{getCssVar(color, success, hover)} + } + } + } + } + + + &.confirm-warning { + .el-message-box__btns{ + .el-button:nth-child(2){ + background-color: #{getCssVar(color, warning)}; + + &:hover{ + background-color: #{getCssVar(color, warning, hover)} + } + } + } + } + + &.confirm-error { + .el-message-box__btns{ + .el-button:nth-child(2){ + background-color: #{getCssVar(color, danger)}; + + &:hover{ + background-color: #{getCssVar(color, danger, hover)} + } + } + } + } +} + +// 多选框 +.el-checkbox__label{ + padding-left: getCssVar(spacing, base-tight); +} + +// 单选框 +.el-radio__label{ + padding-left: getCssVar(spacing, base-tight); +} + +// 下拉悬浮框 +.el-popper.el-dropdown__popper{ + .el-dropdown-menu{ + background-color: getCssVar(color, primary); + + .el-dropdown-menu__item{ + color: getCssVar(color, white); + background-color: getCssVar(color, primary); + + &:hover{ + background-color: getCssVar(color, primary, hover) + } + } + } + + .el-scrollbar{ + .el-dropdown__list{ + background-color: getCssVar(color, primary); + + .el-dropdown-menu__item{ + color: getCssVar(color, white); + background-color: getCssVar(color, primary); + + &:hover{ + background-color: getCssVar(color, primary, hover) + } + } + } + } +} + +// 下拉框内浏览器内置样式边框去除 +.el-dropdown .el-tooltip__trigger:focus-visible { + outline:none; +} + +// 模态和飘窗内视图背景色补充 +.el-drawer__body, .el-dialog__body { + background-color: getCssVar(view, bg, color); +} diff --git a/packages/studio-theme/src/theme/generic/index.scss b/packages/studio-theme/src/theme/generic/index.scss new file mode 100644 index 0000000..f0cfa50 --- /dev/null +++ b/packages/studio-theme/src/theme/generic/index.scss @@ -0,0 +1,2 @@ +/** 重置标准化样式、框大小定义等,例如 normalize.css、reset.css **/ +@import './element-plus'; diff --git a/packages/studio-theme/src/theme/index.scss b/packages/studio-theme/src/theme/index.scss new file mode 100644 index 0000000..efa610f --- /dev/null +++ b/packages/studio-theme/src/theme/index.scss @@ -0,0 +1,17 @@ +/* 重置标准样式 */ +@import './generic/index'; + +/* 标准元素样式 */ +@import './elements/index'; + +/* 面向对象编写样式 */ +@import './objects/index'; + +/* 特异性最高的样式,唯一可以使用 !important */ +@import './tumps/index'; + +/* 默认主题 */ +@import './theme/index'; + +/* 定义变量 */ +@import './var'; diff --git a/packages/studio-theme/src/theme/objects/expand/expand.scss b/packages/studio-theme/src/theme/objects/expand/expand.scss new file mode 100644 index 0000000..6b16825 --- /dev/null +++ b/packages/studio-theme/src/theme/objects/expand/expand.scss @@ -0,0 +1,41 @@ +// 默认组件的样式扩展 + +@include b(view-detabexpview) { + position: relative; + + .#{bem(control-tabexppanel)} { + .el-tabs__nav-wrap::after { + background-color: transparent; + } + } +} + +@include b(panel-container) { + + @include m(indexactions) { + .el-button { + font-size: 28px; + } + + .el-button:hover { + background-color: transparent; + } + } + + @include m(indextopactions) { + .el-button { + padding: 0 getCssVar(spacing, tight); + font-size: 20px; + } + + .el-button:hover { + background-color: transparent; + } + } +} + +.#{bem(panel-container)}.#{bem(panel-container, '', view_footer)} { + height: 54px; + padding: 0 getCssVar(spacing, base); + border-top: 1px solid getCssVar(color, border); +} \ No newline at end of file diff --git a/packages/studio-theme/src/theme/objects/index.scss b/packages/studio-theme/src/theme/objects/index.scss new file mode 100644 index 0000000..f5c5241 --- /dev/null +++ b/packages/studio-theme/src/theme/objects/index.scss @@ -0,0 +1,3 @@ +/** 面向对象编写样式, **/ +@import './expand/expand'; +@import './state/state'; diff --git a/packages/studio-theme/src/theme/objects/state/state.scss b/packages/studio-theme/src/theme/objects/state/state.scss new file mode 100644 index 0000000..74f384a --- /dev/null +++ b/packages/studio-theme/src/theme/objects/state/state.scss @@ -0,0 +1 @@ +// 状态 \ No newline at end of file diff --git a/packages/studio-theme/src/theme/theme/dark/dark-theme.scss b/packages/studio-theme/src/theme/theme/dark/dark-theme.scss new file mode 100644 index 0000000..ffce388 --- /dev/null +++ b/packages/studio-theme/src/theme/theme/dark/dark-theme.scss @@ -0,0 +1,280 @@ +:root.dark { + #{getCssVarName(red, 0)}: 108, 9, 11; + #{getCssVarName(red, 1)}: 144, 17, 16; + #{getCssVarName(red, 2)}: 180, 32, 25; + #{getCssVarName(red, 3)}: 215, 51, 36; + #{getCssVarName(red, 4)}: 251, 73, 50; + #{getCssVarName(red, 5)}: 252, 114, 90; + #{getCssVarName(red, 6)}: 253, 153, 131; + #{getCssVarName(red, 7)}: 253, 190, 172; + #{getCssVarName(red, 8)}: 254, 224, 213; + #{getCssVarName(red, 9)}: 255, 243, 239; + #{getCssVarName(pink, 0)}: 92, 7, 48; + #{getCssVarName(pink, 1)}: 128, 14, 65; + #{getCssVarName(pink, 2)}: 164, 23, 81; + #{getCssVarName(pink, 3)}: 199, 34, 97; + #{getCssVarName(pink, 4)}: 235, 47, 113; + #{getCssVarName(pink, 5)}: 239, 86, 134; + #{getCssVarName(pink, 6)}: 243, 126, 159; + #{getCssVarName(pink, 7)}: 247, 168, 188; + #{getCssVarName(pink, 8)}: 251, 211, 220; + #{getCssVarName(pink, 9)}: 253, 238, 241; + #{getCssVarName(purple, 0)}: 74, 16, 97; + #{getCssVarName(purple, 1)}: 94, 23, 118; + #{getCssVarName(purple, 2)}: 115, 31, 138; + #{getCssVarName(purple, 3)}: 137, 40, 159; + #{getCssVarName(purple, 4)}: 160, 51, 179; + #{getCssVarName(purple, 5)}: 181, 83, 194; + #{getCssVarName(purple, 6)}: 202, 120, 209; + #{getCssVarName(purple, 7)}: 221, 160, 225; + #{getCssVarName(purple, 8)}: 239, 206, 240; + #{getCssVarName(purple, 9)}: 247, 235, 247; + #{getCssVarName(violet, 0)}: 64, 27, 119; + #{getCssVarName(violet, 1)}: 76, 36, 140; + #{getCssVarName(violet, 2)}: 88, 46, 160; + #{getCssVarName(violet, 3)}: 100, 57, 181; + #{getCssVarName(violet, 4)}: 114, 70, 201; + #{getCssVarName(violet, 5)}: 136, 101, 212; + #{getCssVarName(violet, 6)}: 162, 136, 223; + #{getCssVarName(violet, 7)}: 190, 173, 233; + #{getCssVarName(violet, 8)}: 221, 212, 244; + #{getCssVarName(violet, 9)}: 241, 238, 250; + #{getCssVarName(indigo, 0)}: 23, 30, 101; + #{getCssVarName(indigo, 1)}: 32, 41, 122; + #{getCssVarName(indigo, 2)}: 41, 54, 142; + #{getCssVarName(indigo, 3)}: 52, 68, 163; + #{getCssVarName(indigo, 4)}: 64, 83, 183; + #{getCssVarName(indigo, 5)}: 95, 113, 197; + #{getCssVarName(indigo, 6)}: 129, 145, 212; + #{getCssVarName(indigo, 7)}: 167, 180, 226; + #{getCssVarName(indigo, 8)}: 209, 216, 241; + #{getCssVarName(indigo, 9)}: 237, 239, 248; + #{getCssVarName(blue, 0)}: 5, 49, 112; + #{getCssVarName(blue, 1)}: 10, 70, 148; + #{getCssVarName(blue, 2)}: 19, 92, 184; + #{getCssVarName(blue, 3)}: 29, 117, 219; + #{getCssVarName(blue, 4)}: 41, 144, 255; + #{getCssVarName(blue, 5)}: 84, 169, 255; + #{getCssVarName(blue, 6)}: 127, 193, 255; + #{getCssVarName(blue, 7)}: 169, 215, 255; + #{getCssVarName(blue, 8)}: 212, 236, 255; + #{getCssVarName(blue, 9)}: 239, 248, 255; + #{getCssVarName(light, blue, 0)}: 0, 55, 97; + #{getCssVarName(light, blue, 1)}: 0, 77, 133; + #{getCssVarName(light, blue, 2)}: 3, 102, 169; + #{getCssVarName(light, blue, 3)}: 10, 129, 204; + #{getCssVarName(light, blue, 4)}: 19, 159, 240; + #{getCssVarName(light, blue, 5)}: 64, 180, 243; + #{getCssVarName(light, blue, 6)}: 110, 200, 246; + #{getCssVarName(light, blue, 7)}: 157, 220, 249; + #{getCssVarName(light, blue, 8)}: 206, 238, 252; + #{getCssVarName(light, blue, 9)}: 235, 248, 254; + #{getCssVarName(cyan, 0)}: 4, 52, 61; + #{getCssVarName(cyan, 1)}: 7, 79, 92; + #{getCssVarName(cyan, 2)}: 10, 108, 123; + #{getCssVarName(cyan, 3)}: 14, 137, 153; + #{getCssVarName(cyan, 4)}: 19, 168, 184; + #{getCssVarName(cyan, 5)}: 56, 187, 198; + #{getCssVarName(cyan, 6)}: 98, 205, 212; + #{getCssVarName(cyan, 7)}: 145, 223, 227; + #{getCssVarName(cyan, 8)}: 198, 239, 241; + #{getCssVarName(cyan, 9)}: 231, 247, 248; + #{getCssVarName(teal, 0)}: 2, 60, 57; + #{getCssVarName(teal, 1)}: 4, 90, 85; + #{getCssVarName(teal, 2)}: 7, 119, 111; + #{getCssVarName(teal, 3)}: 10, 149, 136; + #{getCssVarName(teal, 4)}: 14, 179, 161; + #{getCssVarName(teal, 5)}: 51, 194, 176; + #{getCssVarName(teal, 6)}: 94, 209, 193; + #{getCssVarName(teal, 7)}: 142, 225, 211; + #{getCssVarName(teal, 8)}: 196, 240, 232; + #{getCssVarName(teal, 9)}: 230, 247, 244; + #{getCssVarName(green, 0)}: 18, 60, 25; + #{getCssVarName(green, 1)}: 28, 90, 37; + #{getCssVarName(green, 2)}: 39, 119, 49; + #{getCssVarName(green, 3)}: 50, 149, 61; + #{getCssVarName(green, 4)}: 62, 179, 73; + #{getCssVarName(green, 5)}: 93, 194, 100; + #{getCssVarName(green, 6)}: 127, 209, 132; + #{getCssVarName(green, 7)}: 166, 225, 168; + #{getCssVarName(green, 8)}: 208, 240, 209; + #{getCssVarName(green, 9)}: 236, 247, 236; + #{getCssVarName(light, green, 0)}: 38, 61, 19; + #{getCssVarName(light, green, 1)}: 59, 92, 29; + #{getCssVarName(light, green, 2)}: 81, 123, 40; + #{getCssVarName(light, green, 3)}: 103, 153, 52; + #{getCssVarName(light, green, 4)}: 127, 184, 64; + #{getCssVarName(light, green, 5)}: 151, 198, 95; + #{getCssVarName(light, green, 6)}: 176, 212, 129; + #{getCssVarName(light, green, 7)}: 201, 227, 167; + #{getCssVarName(light, green, 8)}: 228, 241, 209; + #{getCssVarName(light, green, 9)}: 243, 248, 237; + #{getCssVarName(lime, 0)}: 49, 70, 3; + #{getCssVarName(lime, 1)}: 75, 105, 5; + #{getCssVarName(lime, 2)}: 103, 141, 9; + #{getCssVarName(lime, 3)}: 132, 176, 12; + #{getCssVarName(lime, 4)}: 162, 211, 17; + #{getCssVarName(lime, 5)}: 174, 220, 58; + #{getCssVarName(lime, 6)}: 189, 229, 102; + #{getCssVarName(lime, 7)}: 207, 237, 150; + #{getCssVarName(lime, 8)}: 229, 246, 201; + #{getCssVarName(lime, 9)}: 243, 251, 233; + #{getCssVarName(yellow, 0)}: 84, 73, 3; + #{getCssVarName(yellow, 1)}: 126, 108, 6; + #{getCssVarName(yellow, 2)}: 168, 142, 10; + #{getCssVarName(yellow, 3)}: 210, 175, 15; + #{getCssVarName(yellow, 4)}: 252, 206, 20; + #{getCssVarName(yellow, 5)}: 253, 222, 67; + #{getCssVarName(yellow, 6)}: 253, 235, 113; + #{getCssVarName(yellow, 7)}: 254, 245, 160; + #{getCssVarName(yellow, 8)}: 254, 251, 208; + #{getCssVarName(yellow, 9)}: 255, 254, 236; + #{getCssVarName(amber, 0)}: 81, 46, 9; + #{getCssVarName(amber, 1)}: 121, 75, 15; + #{getCssVarName(amber, 2)}: 161, 107, 22; + #{getCssVarName(amber, 3)}: 202, 143, 30; + #{getCssVarName(amber, 4)}: 242, 183, 38; + #{getCssVarName(amber, 5)}: 245, 202, 80; + #{getCssVarName(amber, 6)}: 247, 219, 122; + #{getCssVarName(amber, 7)}: 250, 234, 166; + #{getCssVarName(amber, 8)}: 252, 246, 210; + #{getCssVarName(amber, 9)}: 254, 251, 237; + #{getCssVarName(orange, 0)}: 85, 31, 3; + #{getCssVarName(orange, 1)}: 128, 53, 6; + #{getCssVarName(orange, 2)}: 170, 80, 10; + #{getCssVarName(orange, 3)}: 213, 111, 15; + #{getCssVarName(orange, 4)}: 255, 146, 20; + #{getCssVarName(orange, 5)}: 255, 174, 67; + #{getCssVarName(orange, 6)}: 255, 199, 114; + #{getCssVarName(orange, 7)}: 255, 221, 161; + #{getCssVarName(orange, 8)}: 255, 239, 208; + #{getCssVarName(orange, 9)}: 255, 249, 237; + #{getCssVarName(grey, 0)}: 28, 31, 35; + #{getCssVarName(grey, 1)}: 46, 50, 56; + #{getCssVarName(grey, 2)}: 65, 70, 76; + #{getCssVarName(grey, 3)}: 85, 91, 97; + #{getCssVarName(grey, 4)}: 107, 112, 117; + #{getCssVarName(grey, 5)}: 136, 141, 146; + #{getCssVarName(grey, 6)}: 167, 171, 176; + #{getCssVarName(grey, 7)}: 198, 202, 205; + #{getCssVarName(grey, 8)}: 230, 232, 234; + #{getCssVarName(grey, 9)}: 249, 249, 249; + #{getCssVarName(white)}: 255, 255, 255; + #{getCssVarName(black)}: 0, 0, 0; + + // 主要颜色 + #{getCssVarName(color, white)}: rgba(var(#{getCssVarName(white)}),1); + #{getCssVarName(color, black)}: rgba(var(#{getCssVarName(black)}), 1); + #{getCssVarName(color, primary)}: rgba(var(#{getCssVarName(blue, 5)}), 1); // 主要颜色。仅在需要非常强调的情况下使用。 + #{getCssVarName(color, primary, hover)}: rgba(var(#{getCssVarName(blue, 6)}), 1); // 主要颜色悬浮态 + #{getCssVarName(color, primary, active)}: rgba(var(#{getCssVarName(blue, 7)}), 1); // 主要颜色激活态 + #{getCssVarName(color, primary, disabled)}: rgba(var(#{getCssVarName(blue, 2)}), 1); // 主要颜色禁用态 + #{getCssVarName(color, primary, light, default)}: rgba(var(#{getCssVarName(blue, 5) }),.2); // 浅版主要颜色(多用于背景)。仅在需要非常强调的情况下使用。 + #{getCssVarName(color, primary, light, hover)}: rgba(var(#{getCssVarName(blue, 5) }),.3); // 浅版主要颜色悬浮态 + #{getCssVarName(color, primary, light, active)}: rgba(var(#{getCssVarName(blue, 5) }),.4); // 浅版主要颜色激活态 + + // 次要颜色 + #{getCssVarName(color, secondary)}: rgba(var(#{getCssVarName(light, blue, 5)}), 1); // 次要颜色。强调作用次于主要颜色,但仍然具有强调作用。 + #{getCssVarName(color, secondary, hover)}: rgba(var(#{getCssVarName(light, blue, 6)}), 1); // 次要颜色悬浮态 + #{getCssVarName(color, secondary, active)}: rgba(var(#{getCssVarName(light, blue, 7)}), 1); // 次要颜色激活态 + #{getCssVarName(color, secondary, disabled)}: rgba(var(#{getCssVarName(light, blue, 2)}), 1); // 次要颜色禁用态 + #{getCssVarName(color, secondary, light, default)}: rgba(var(#{getCssVarName(light, blue, 5) }),.2); // 浅版次要颜色(多用于背景)。强调作用次于主要颜色,但仍然具有强调作用。 + #{getCssVarName(color, secondary, light, hover)}: rgba(var(#{getCssVarName(light, blue, 5) }),.3); // 浅版次要颜色悬浮态 + #{getCssVarName(color, secondary, light, active)}: rgba(var(#{getCssVarName(light, blue, 5) }),.4); // 浅版次要颜色激活态 + + // 第三颜色 + #{getCssVarName(color, tertiary)}: rgba(var(#{getCssVarName(grey, 5)}), 1); // 第三颜色,可以在页面上多次使用 + #{getCssVarName(color, tertiary, hover)}: rgba(var(#{getCssVarName(grey, 6)}), 1); // 第三颜色悬浮态 + #{getCssVarName(color, tertiary, active)}: rgba(var(#{getCssVarName(grey, 7)}), 1); // 第三颜色激活态 + #{getCssVarName(color, tertiary, light, default)}: rgba(var(#{getCssVarName(grey, 5) }),.2); // 浅版第三颜色(多用于背景),可以在页面上多次使用 + #{getCssVarName(color, tertiary, light, hover)}: rgba(var(#{getCssVarName(grey, 5) }),.3); // 浅版第三颜色悬浮态 + #{getCssVarName(color, tertiary, light, active)}: rgba(var(#{getCssVarName(grey, 5) }),.4); // 浅版第三颜色激活态 + #{getCssVarName(color, default)}: rgba(var(#{getCssVarName(grey, 0)}), 1); // 不建议使用 + #{getCssVarName(color, default, hover)}: rgba(var(#{getCssVarName(grey, 1)}), 1); // 不建议使用 + #{getCssVarName(color, default, active)}: rgba(var(#{getCssVarName(grey, 2)}), 1); // 不建议使用 + + // 信息色 + #{getCssVarName(color, info)}: rgba(var(#{getCssVarName(blue, 5)}), 1); // 信息色, 通常用于表达客观、中立信息 + #{getCssVarName(color, info, hover)}: rgba(var(#{getCssVarName(blue, 6)}), 1); // 信息色悬浮态 + #{getCssVarName(color, info, active)}: rgba(var(#{getCssVarName(blue, 7)}), 1); // 信息色激活态 + #{getCssVarName(color, info, disabled)}: rgba(var(#{getCssVarName(blue, 2)}), 1); // 信息色禁用态 + #{getCssVarName(color, info, light, default)}: rgba(var(#{getCssVarName(blue, 5) }),.2); // 浅版信息色(多用于背景),通常用于表达客观、中立信息 + #{getCssVarName(color, info, light, hover)}: rgba(var(#{getCssVarName(blue, 5) }),.3); // 浅版信息色悬浮态 + #{getCssVarName(color, info, light, active)}: rgba(var(#{getCssVarName(blue, 5) }),.4);// 浅版信息色激活态 + + // 成功色 + #{getCssVarName(color, success)}: rgba(var(#{getCssVarName(green, 5)}), 1); // 成功色,表示安全、成功、开启的状态 + #{getCssVarName(color, success, hover)}: rgba(var(#{getCssVarName(green, 6)}), 1); // 成功色悬浮态 + #{getCssVarName(color, success, active)}: rgba(var(#{getCssVarName(green, 7)}), 1); // 成功色激活态 + #{getCssVarName(color, success, disabled)}: rgba(var(#{getCssVarName(green, 2)}), 1); // 成功色禁用态 + #{getCssVarName(color, success, light, default)}: rgba(var(#{getCssVarName(green, 5) }),.2); // 浅版成功色(多用于背景),表示安全、成功、开启的状态 + #{getCssVarName(color, success, light, hover)}: rgba(var(#{getCssVarName(green, 5) }),.3); // 浅版成功色悬浮态 + #{getCssVarName(color, success, light, active)}: rgba(var(#{getCssVarName(green, 5) }),.4); // 浅版成功色激活态 + + // 危险色 + #{getCssVarName(color, danger)}: rgba(var(#{getCssVarName(red, 5)}), 1); // 危险色,表示危险的操作、或需要特别注意的危险信息 + #{getCssVarName(color, danger, hover)}: rgba(var(#{getCssVarName(red, 6)}), 1); // 危险色悬浮态 + #{getCssVarName(color, danger, active)}: rgba(var(#{getCssVarName(red, 7)}), 1); // 危险色激活态 + #{getCssVarName(color, danger, light, default)}: rgba(var(#{getCssVarName(red, 5) }),.2); // 浅版危险色(多用于背景),表示危险的操作、或需要特别注意的危险信息 + #{getCssVarName(color, danger, light, hover)}: rgba(var(#{getCssVarName(red, 5) }),.3); // 浅版危险色悬浮态 + #{getCssVarName(color, danger, light, active)}: rgba(var(#{getCssVarName(red, 5) }),.4); // 浅版危险色激活态 + + // 警示色 + #{getCssVarName(color, warning)}: rgba(var(#{getCssVarName(orange, 5)}), 1); // 警示色,表示警告、不安全的状态 + #{getCssVarName(color, warning, hover)}: rgba(var(#{getCssVarName(orange, 6)}), 1); // 警示色悬浮态 + #{getCssVarName(color, warning, active)}: rgba(var(#{getCssVarName(orange, 7)}), 1); // 警示色激活态 + #{getCssVarName(color, warning, light, default)}: rgba(var(#{getCssVarName(orange, 5) }),.2); // 浅版警示色(多用于背景),表示警告、不安全的状态 + #{getCssVarName(color, warning, light, hover)}: rgba(var(#{getCssVarName(orange, 5) }),.3); // 浅版警示色悬浮态 + #{getCssVarName(color, warning, light, active)}: rgba(var(#{getCssVarName(orange, 5) }),.4); // 浅版警示色激活态 + + // 边框 + #{getCssVarName(color, focus, border)}: rgba(var(#{getCssVarName(blue, 5)}), 1); // 多用于边框激活态颜色 + + // 禁用态 + #{getCssVarName(color, disabled, text)}: rgba(var(#{getCssVarName(grey, 9)}), .35); // 禁用态 - 文字 + #{getCssVarName(color, disabled, border)}: rgba(var(#{getCssVarName(grey, 1)}), 1); // 禁用态 - 描边 + #{getCssVarName(color, disabled, bg)}: rgba(var(#{getCssVarName(grey, 1)}), 1); // 禁用态 - 背景 + #{getCssVarName(color, disabled, fill)}: rgba(var(#{getCssVarName(grey, 8)}), .04); // 禁用态 - 填充 + #{getCssVarName(color, shadow)}: rgba(var(#{getCssVarName(black)}), .04); // 用于模拟描边的阴影颜色 + + // 链接颜色 + #{getCssVarName(color, link)}: rgba(var(#{getCssVarName(blue, 5)}), 1); // 链接颜色 + #{getCssVarName(color, link, hover)}: rgba(var(#{getCssVarName(blue, 6)}), 1); // 链接颜色 - 悬浮态 + #{getCssVarName(color, link, active)}: rgba(var(#{getCssVarName(blue, 7)}), 1); // 链接颜色 - 激活态 + #{getCssVarName(color, link, visited)}: rgba(var(#{getCssVarName(blue, 5)}), 1); // 链接颜色 - 已访问 + #{getCssVarName(color, nav, bg)}:rgba(35 36 41 / 100%); // 导航背景色 + #{getCssVarName(shadow, elevated)}: inset 0 0 0 1px rgba(255 255 255 / 10%), 0 4px 14px rgba(0 0 0 / 25%); // 用于toast, modal, popover等需要提升层级的界面元素 + #{getCssVarName(color, overlay, bg)}: rgba(22 22 26 / 60%); // 蒙层背景色 + + // 填充色 + #{getCssVarName(color, fill, 0)}: rgba(var(#{getCssVarName(white)}), .12); // 填充色 - 默认态 + #{getCssVarName(color, fill, 1)}: rgba(var(#{getCssVarName(white)}), .16); // 填充色 - 悬浮态 + #{getCssVarName(color, fill, 2)}: rgba(var(#{getCssVarName(white)}), .20); // 填充色 - 激活态 + + // 背景色 + #{getCssVarName(color, border)}: rgba(var(#{getCssVarName(white)}), .08); // 背景色 - 最下层(底部页面) + #{getCssVarName(color, bg, 0)}: rgba(22 22 26 / 100%); // 背景色 - 最下层(底部页面) + #{getCssVarName(color, bg, 1)}: rgba(35 36 41 / 100%); // 背景色 - 次下层(页面中需要提升的内容) + #{getCssVarName(color, bg, 2)}: rgba(53 54 60 / 100%); // 背景色 - 中间层(模态等容器) + #{getCssVarName(color, bg, 3)}: rgba(67 68 74 / 100%); // 背景色 - 次上层(通知,Toast等) + #{getCssVarName(color, bg, 4)}: rgba(79 81 89 / 100%); // 背景色 - 最上层(特殊) + + // 文本/图标颜色 + #{getCssVarName(color, text, 0)}: rgba(var(#{getCssVarName(grey, 9)}), 1); // 文本/图标颜色 - 最主要 + #{getCssVarName(color, text, 1)}: rgba(var(#{getCssVarName(grey, 9) }), .8); // 文本/图标颜色 - 稍次要 + #{getCssVarName(color, text, 2)}: rgba(var(#{getCssVarName(grey, 9) }), .6); // 文本/图标颜色 - 次要 + #{getCssVarName(color, text, 3)}: rgba(var(#{getCssVarName(grey, 9)}), .35); // 文本/图标颜色 - 最次要 + + // 圆角 + #{getCssVarName(border,radius,extra,small)}: 3px; // 超小圆角,用于 checkbox 内圆角 + #{getCssVarName(border,radius,small)}: 3px; // 小圆角, 用于 button、tag、tabs 等大多数组件, 比较常用 + #{getCssVarName(border,radius,medium)}: 6px; // 中圆角, 用于 dropdown、scrollist、transfer 等菜单类组件 + #{getCssVarName(border,radius,large)}: 12px; // 大圆角, 用于 modal + #{getCssVarName(border,radius,circle)}: 50%; // 全圆角, 用于 avatar, badge 等组件 + #{getCssVarName(border,radius,full)}: 9999px; // 用于创建全尺寸圆角,如胶囊标签等 + + // 高亮 + #{getCssVarName(color, highlight, bg)}: rgba(var(#{getCssVarName(yellow, 2)}), 1); // 高亮文本背景色 + #{getCssVarName(color, highlight)}: rgba(var(#{getCssVarName(white)}), 1); // 高亮文本色 + +} diff --git a/packages/studio-theme/src/theme/theme/default-dark/default-dark-theme.scss b/packages/studio-theme/src/theme/theme/default-dark/default-dark-theme.scss new file mode 100644 index 0000000..6386486 --- /dev/null +++ b/packages/studio-theme/src/theme/theme/default-dark/default-dark-theme.scss @@ -0,0 +1,378 @@ +:root.dark { + // 红色 + #{getCssVarName(red, 0)}: 108, 9, 10; + #{getCssVarName(red, 1)}: 144, 17, 16; + #{getCssVarName(red, 2)}: 181, 31, 25; + #{getCssVarName(red, 3)}: 215, 51, 35; + #{getCssVarName(red, 4)}: 251, 73, 49; + #{getCssVarName(red, 5)}: 252, 114, 90; + #{getCssVarName(red, 6)}: 253, 153, 131; + #{getCssVarName(red, 7)}: 254, 190, 172; + #{getCssVarName(red, 8)}: 254, 224, 213; + #{getCssVarName(red, 9)}: 255, 243, 239; + + // 粉色 + #{getCssVarName(pink, 0)}: 92, 7, 47; + #{getCssVarName(pink, 1)}: 128, 15, 66; + #{getCssVarName(pink, 2)}: 164, 23, 81; + #{getCssVarName(pink, 3)}: 199, 34, 97; + #{getCssVarName(pink, 4)}: 235, 47, 112; + #{getCssVarName(pink, 5)}: 239, 86, 134; + #{getCssVarName(pink, 6)}: 243, 126, 159; + #{getCssVarName(pink, 7)}: 247, 168, 188; + #{getCssVarName(pink, 8)}: 251, 211, 220; + #{getCssVarName(pink, 9)}: 253, 239, 241; + + // 紫色 + #{getCssVarName(purple, 0)}: 74, 16, 97; + #{getCssVarName(purple, 1)}: 94, 23, 118; + #{getCssVarName(purple, 2)}: 115, 31, 138; + #{getCssVarName(purple, 3)}: 137, 40, 159; + #{getCssVarName(purple, 4)}: 160, 51, 179; + #{getCssVarName(purple, 5)}: 181, 83, 194; + #{getCssVarName(purple, 6)}: 202, 120, 209; + #{getCssVarName(purple, 7)}: 221, 160, 225; + #{getCssVarName(purple, 8)}: 239, 206, 240; + #{getCssVarName(purple, 9)}: 247, 235, 247; + + // 紫罗兰色 + #{getCssVarName(violet, 0)}: 64, 27, 119; + #{getCssVarName(violet, 1)}: 76, 36, 140; + #{getCssVarName(violet, 2)}: 88, 46, 160; + #{getCssVarName(violet, 3)}: 100, 57, 180; + #{getCssVarName(violet, 4)}: 113, 70, 201; + #{getCssVarName(violet, 5)}: 136, 101, 212; + #{getCssVarName(violet, 6)}: 162, 136, 223; + #{getCssVarName(violet, 7)}: 190, 173, 233; + #{getCssVarName(violet, 8)}: 221, 212, 243; + #{getCssVarName(violet, 9)}: 240, 238, 250; + + // 靛蓝 + #{getCssVarName(indigo, 0)}: 23, 30, 101; + #{getCssVarName(indigo, 1)}: 32, 41, 122; + #{getCssVarName(indigo, 2)}: 41, 54, 142; + #{getCssVarName(indigo, 3)}: 52, 68, 163; + #{getCssVarName(indigo, 4)}: 64, 83, 183; + #{getCssVarName(indigo, 5)}: 95, 113, 197; + #{getCssVarName(indigo, 6)}: 129, 145, 212; + #{getCssVarName(indigo, 7)}: 167, 180, 226; + #{getCssVarName(indigo, 8)}: 209, 216, 241; + #{getCssVarName(indigo, 9)}: 237, 239, 248; + + // 蓝色 + #{getCssVarName(blue, 0)}: 6, 49, 112; + #{getCssVarName(blue, 1)}: 8, 70, 148; + #{getCssVarName(blue, 2)}: 19, 92, 184; + #{getCssVarName(blue, 3)}: 28, 117, 219; + #{getCssVarName(blue, 4)}: 41, 143, 255; + #{getCssVarName(blue, 5)}: 84, 169, 255; + #{getCssVarName(blue, 6)}: 127, 193, 255; + #{getCssVarName(blue, 7)}: 169, 215, 255; + #{getCssVarName(blue, 8)}: 211, 237, 255; + #{getCssVarName(blue, 9)}: 239, 248, 255; + + // 浅蓝色 + #{getCssVarName(light, blue, 0)}: 1, 55, 97; + #{getCssVarName(light, blue, 1)}: 0, 77, 133; + #{getCssVarName(light, blue, 2)}: 2, 102, 169; + #{getCssVarName(light, blue, 3)}: 7, 129, 204; + #{getCssVarName(light, blue, 4)}: 19, 159, 239; + #{getCssVarName(light, blue, 5)}: 64, 180, 243; + #{getCssVarName(light, blue, 6)}: 111, 200, 245; + #{getCssVarName(light, blue, 7)}: 157, 220, 249; + #{getCssVarName(light, blue, 8)}: 206, 238, 252; + #{getCssVarName(light, blue, 9)}: 235, 248, 254; + + // 青色 + #{getCssVarName(cyan, 0)}: 5, 52, 61; + #{getCssVarName(cyan, 1)}: 6, 79, 92; + #{getCssVarName(cyan, 2)}: 8, 108, 123; + #{getCssVarName(cyan, 3)}: 13, 137, 153; + #{getCssVarName(cyan, 4)}: 20, 168, 183; + #{getCssVarName(cyan, 5)}: 56, 187, 198; + #{getCssVarName(cyan, 6)}: 98, 205, 212; + #{getCssVarName(cyan, 7)}: 145, 223, 227; + #{getCssVarName(cyan, 8)}: 198, 239, 241; + #{getCssVarName(cyan, 9)}: 231, 247, 248; + + // 蓝绿色 + #{getCssVarName(teal, 0)}: 2, 60, 57; + #{getCssVarName(teal, 1)}: 5, 90, 85; + #{getCssVarName(teal, 2)}: 8, 119, 111; + #{getCssVarName(teal, 3)}: 12, 149, 136; + #{getCssVarName(teal, 4)}: 13, 179, 161; + #{getCssVarName(teal, 5)}: 51, 194, 176; + #{getCssVarName(teal, 6)}: 95, 209, 193; + #{getCssVarName(teal, 7)}: 142, 225, 211; + #{getCssVarName(teal, 8)}: 196, 240, 232; + #{getCssVarName(teal, 9)}: 230, 247, 244; + + // 绿色 + #{getCssVarName(green, 0)}: 18, 60, 25; + #{getCssVarName(green, 1)}: 27, 90, 37; + #{getCssVarName(green, 2)}: 39, 119, 49; + #{getCssVarName(green, 3)}: 51, 149, 61; + #{getCssVarName(green, 4)}: 62, 179, 72; + #{getCssVarName(green, 5)}: 92, 194, 100; + #{getCssVarName(green, 6)}: 127, 209, 132; + #{getCssVarName(green, 7)}: 165, 225, 168; + #{getCssVarName(green, 8)}: 208, 240, 208; + #{getCssVarName(green, 9)}: 236, 246, 236; + + // 浅绿色 + #{getCssVarName(light, green, 0)}: 38, 61, 19; + #{getCssVarName(light, green, 1)}: 58, 92, 28; + #{getCssVarName(light, green, 2)}: 81, 123, 41; + #{getCssVarName(light, green, 3)}: 103, 153, 51; + #{getCssVarName(light, green, 4)}: 127, 184, 64; + #{getCssVarName(light, green, 5)}: 151, 198, 95; + #{getCssVarName(light, green, 6)}: 176, 212, 129; + #{getCssVarName(light, green, 7)}: 201, 228, 167; + #{getCssVarName(light, green, 8)}: 227, 241, 209; + #{getCssVarName(light, green, 9)}: 243, 248, 237; + + // 清柠色 + #{getCssVarName(lime, 0)}: 48, 70, 2; + #{getCssVarName(lime, 1)}: 75, 105, 6; + #{getCssVarName(lime, 2)}: 103, 141, 9; + #{getCssVarName(lime, 3)}: 132, 176, 9; + #{getCssVarName(lime, 4)}: 162, 211, 16; + #{getCssVarName(lime, 5)}: 174, 220, 58; + #{getCssVarName(lime, 6)}: 189, 229, 102; + #{getCssVarName(lime, 7)}: 207, 237, 150; + #{getCssVarName(lime, 8)}: 229, 246, 201; + #{getCssVarName(lime, 9)}: 242, 252, 233; + + // 黄色 + #{getCssVarName(yellow, 0)}: 84, 73, 2; + #{getCssVarName(yellow, 1)}: 126, 108, 6; + #{getCssVarName(yellow, 2)}: 168, 142, 12; + #{getCssVarName(yellow, 3)}: 211, 175, 15; + #{getCssVarName(yellow, 4)}: 252, 206, 22; + #{getCssVarName(yellow, 5)}: 253, 222, 68; + #{getCssVarName(yellow, 6)}: 253, 235, 113; + #{getCssVarName(yellow, 7)}: 255, 245, 160; + #{getCssVarName(yellow, 8)}: 254, 251, 207; + #{getCssVarName(yellow, 9)}: 255, 254, 236; + + // 琥珀色 + #{getCssVarName(amber, 0)}: 81, 46, 10; + #{getCssVarName(amber, 1)}: 121, 76, 15; + #{getCssVarName(amber, 2)}: 161, 107, 22; + #{getCssVarName(amber, 3)}: 201, 143, 31; + #{getCssVarName(amber, 4)}: 242, 183, 38; + #{getCssVarName(amber, 5)}: 245, 201, 79; + #{getCssVarName(amber, 6)}: 248, 219, 122; + #{getCssVarName(amber, 7)}: 249, 234, 166; + #{getCssVarName(amber, 8)}: 252, 246, 210; + #{getCssVarName(amber, 9)}: 255, 251, 237; + + // 橙色 + #{getCssVarName(orange, 0)}: 230, 81, 0; + #{getCssVarName(orange, 1)}: 239, 108, 0; + #{getCssVarName(orange, 2)}: 245, 124, 2; + #{getCssVarName(orange, 3)}: 250, 141, 0; + #{getCssVarName(orange, 4)}: 255, 152, 0; + #{getCssVarName(orange, 5)}: 255, 167, 38; + #{getCssVarName(orange, 6)}: 255, 183, 77; + #{getCssVarName(orange, 7)}: 255, 204, 128; + #{getCssVarName(orange, 8)}: 255, 223, 177; + #{getCssVarName(orange, 9)}: 255, 243, 224; + + // 灰色 + #{getCssVarName(grey, 0)}: 29, 31, 35; + #{getCssVarName(grey, 1)}: 46, 50, 55; + #{getCssVarName(grey, 2)}: 65, 70, 76; + #{getCssVarName(grey, 3)}: 85, 91, 97; + #{getCssVarName(grey, 4)}: 107, 112, 116; + #{getCssVarName(grey, 5)}: 136, 141, 145; + #{getCssVarName(grey, 6)}: 167, 171, 175; + #{getCssVarName(grey, 7)}: 198, 202, 205; + #{getCssVarName(grey, 8)}: 230, 232, 234; + #{getCssVarName(grey, 9)}: 249, 249, 249; + + + // 蓝青色 + #{getCssVarName(blue, cyan, 0)}: 16, 41, 68; + #{getCssVarName(blue, cyan, 1)}: 26, 52, 79; + #{getCssVarName(blue, cyan, 2)}: 36, 65, 96; + #{getCssVarName(blue, cyan, 3)}: 48, 81, 115; + #{getCssVarName(blue, cyan, 4)}: 70, 107, 144; + #{getCssVarName(blue, cyan, 5)}: 85, 125, 165; + #{getCssVarName(blue, cyan, 6)}: 105, 148, 190; + #{getCssVarName(blue, cyan, 7)}: 131, 171, 212; + #{getCssVarName(blue, cyan, 8)}: 164, 201, 238; + #{getCssVarName(blue, cyan, 9)}: 217, 236, 255; + + // 深紫色 + #{getCssVarName(dark, purple, 0)}: 0, 0, 0; + #{getCssVarName(dark, purple, 1)}: 4, 3, 6; + #{getCssVarName(dark, purple, 2)}: 17, 16, 26; + #{getCssVarName(dark, purple, 3)}: 31, 31, 47; + #{getCssVarName(dark, purple, 4)}: 43, 43, 64; + #{getCssVarName(dark, purple, 5)}: 79, 79, 105; + #{getCssVarName(dark, purple, 6)}: 115, 116, 142; + #{getCssVarName(dark, purple, 7)}: 157, 158, 180; + #{getCssVarName(dark, purple, 8)}: 204, 205, 217; + #{getCssVarName(dark, purple, 9)}: 255, 255, 255; + + // 黑、白色 + #{getCssVarName(white)}: 255, 255, 255; + #{getCssVarName(black)}: 0, 0, 0; + + // 功能色 + #{getCssVarName(color, white)}: rgba(var(#{getCssVarName(white)}),1); // 浅色模式下深色背景内容Inverse + #{getCssVarName(color, black)}: rgba(var(#{getCssVarName(black)}),1); // 深色模式下浅色背景内容Inverse + + // 主要颜色 + #{getCssVarName(color, primary)}: rgba(var(#{getCssVarName(blue, 4)}),1); // 主要颜色。仅在需要非常强调的情况下使用。 + #{getCssVarName(color, primary, hover)}: rgba(var(#{getCssVarName(blue, 6)}),1); // 主要颜色悬浮态 + #{getCssVarName(color, primary, active)}: rgba(var(#{getCssVarName(blue, 3)}),1); // 主要颜色激活态 + #{getCssVarName(color, primary, disabled)}: rgba(var(#{getCssVarName(blue, 2)}),1); // 主要颜色禁用态 + #{getCssVarName(color, primary, light, default)}: rgba(var(#{getCssVarName(blue, 5)}),.2); // 浅版主要颜色(多用于背景)。仅在需要非常强调的情况下使用。 + #{getCssVarName(color, primary, light, hover)}: rgba(var(#{getCssVarName(blue, 5)}),.3); // 浅版主要颜色悬浮态 + #{getCssVarName(color, primary, light, active)}: rgba(var(#{getCssVarName(blue, 5 )}),.4); // 浅版主要颜色激活态 + + // todo 次要颜色 未确定颜色,需后续调整 + #{getCssVarName(color, secondary)}: rgba(var(#{getCssVarName(light, blue, 5)}),1); // 次要颜色。强调作用次于主要颜色,但仍然具有强调作用。 + #{getCssVarName(color, secondary, hover)}: rgba(var(#{getCssVarName(light, blue, 6)}),1); // 次要颜色悬浮态 + #{getCssVarName(color, secondary, active)}: rgba(var(#{getCssVarName(light, blue, 7)}),1); // 次要颜色激活态 + #{getCssVarName(color, secondary, disabled)}: rgba(var(#{getCssVarName(light, blue, 2)}),1); // 次要颜色禁用态 + #{getCssVarName(color, secondary, light, default)}: rgba(var(#{getCssVarName(light, blue, 0)}),1); // 浅版次要颜色(多用于背景)。强调作用次于主要颜色,但仍然具有强调作用。 + #{getCssVarName(color, secondary, light, hover)}: rgba(var(#{getCssVarName(light, blue, 1)}),1); // 浅版次要颜色悬浮态 + #{getCssVarName(color, secondary, light, active)}: rgba(var(#{getCssVarName(light, blue, 2)}),1); // 浅版次要颜色激活态 + + // 第三颜色 + #{getCssVarName(color, tertiary)}: rgba(var(#{getCssVarName(dark, purple, 4)}),1); // 第三颜色,可以在页面上多次使用 + #{getCssVarName(color, tertiary, hover)}: rgba(var(#{getCssVarName(dark, purple, 6)}),1); // 第三颜色悬浮态 + #{getCssVarName(color, tertiary, active)}: rgba(var(#{getCssVarName(dark, purple, 5)}),1); // 第三颜色激活态 + #{getCssVarName(color, tertiary, light, default)}: rgba(var(#{getCssVarName(dark, purple, 5)}),.2); // 浅版第三颜色(多用于背景),可以在页面上多次使用 + #{getCssVarName(color, tertiary, light, hover)}: rgba(var(#{getCssVarName(dark, purple, 5)}),.3); // 浅版第三颜色悬浮态 + #{getCssVarName(color, tertiary, light, active)}: rgba(var(#{getCssVarName(dark, purple, 5)}),.4); // 浅版第三颜色激活态 + + // 信息色 + #{getCssVarName(color, info)}: rgba(var(#{getCssVarName(blue, 4)}),1); // 信息色, 通常用于表达客观、中立信息 + #{getCssVarName(color, info, hover)}: rgba(var(#{getCssVarName(blue, 6)}),1); // 信息色悬浮态 + #{getCssVarName(color, info, active)}: rgba(var(#{getCssVarName(blue, 3)}),1); // 信息色激活态 + #{getCssVarName(color, info, disabled)}: rgba(var(#{getCssVarName(blue, 2)}),1); // 信息色禁用态 + #{getCssVarName(color, info, light, default)}: rgba(var(#{getCssVarName(blue, 5)}),.2); // 浅版信息色(多用于背景),通常用于表达客观、中立信息 + #{getCssVarName(color, info, light, hover)}: rgba(var(#{getCssVarName(blue, 5)}),.3); // 浅版信息色悬浮态 + #{getCssVarName(color, info, light, active)}: rgba(var(#{getCssVarName(blue, 5)}),.4); // 浅版信息色激活态 + + // 成功色 + #{getCssVarName(color, success)}: rgba(var(#{getCssVarName(green, 5)}),1); // 成功色,表示安全、成功、开启的状态 + #{getCssVarName(color, success, hover)}: rgba(var(#{getCssVarName(green, 6)}),1); // 成功色悬浮态 + #{getCssVarName(color, success, active)}: rgba(var(#{getCssVarName(green, 4)}),1); // 成功色激活态 + #{getCssVarName(color, success, disabled)}: rgba(var(#{getCssVarName(green, 2)}),1); // 成功色禁用态 + #{getCssVarName(color, success, light, default)}: rgba(var(#{getCssVarName(green, 5)}),.2); // 浅版成功色(多用于背景),表示安全、成功、开启的状态 + #{getCssVarName(color, success, light, hover)}: rgba(var(#{getCssVarName(green, 5)}),.3); // 浅版成功色悬浮态 + #{getCssVarName(color, success, light, active)}: rgba(var(#{getCssVarName(green, 5)}),.4); // 浅版成功色激活态 + + // 警示色 + #{getCssVarName(color, warning)}: rgba(var(#{getCssVarName(orange, 5)}),1); // 警示色,表示警告、不安全的状态 + #{getCssVarName(color, warning, hover)}: rgba(var(#{getCssVarName(orange, 6)}),1); // 警示色悬浮态 + #{getCssVarName(color, warning, active)}: rgba(var(#{getCssVarName(orange, 4)}),1); // 警示色激活态 + #{getCssVarName(color, warning, light, default)}: rgba(var(#{getCssVarName(orange, 5)}),.2); // 浅版警示色(多用于背景),表示警告、不安全的状态 + #{getCssVarName(color, warning, light, hover)}: rgba(var(#{getCssVarName(orange, 5)}),.3); // 浅版警示色悬浮态 + #{getCssVarName(color, warning, light, active)}: rgba(var(#{getCssVarName(orange, 5)}),.4); // 浅版警示色激活态 + + // 危险色 + #{getCssVarName(color, danger)}: rgba(var(#{getCssVarName(red, 5)}),1); // 危险色,表示危险的操作、或需要特别注意的危险信息 + #{getCssVarName(color, danger, hover)}: rgba(var(#{getCssVarName(red, 6)}),1); // 危险色悬浮态 + #{getCssVarName(color, danger, active)}: rgba(var(#{getCssVarName(red, 4)}),1); // 危险色激活态 + #{getCssVarName(color, danger, light, default)}: rgba(var(#{getCssVarName(red, 5)}),.2); // 浅版危险色(多用于背景),表示危险的操作、或需要特别注意的危险信息 + #{getCssVarName(color, danger, light, hover)}: rgba(var(#{getCssVarName(red, 5)}),.3); // 浅版危险色悬浮态 + #{getCssVarName(color, danger, light, active)}: rgba(var(#{getCssVarName(red, 5)}),.4); // 浅版危险色激活态 + + // 文本/图标颜色 + #{getCssVarName(color, text, 0)}: rgba(var(#{getCssVarName(dark, purple, 9)}),1); // 文本/图标颜色 - 最主要 + #{getCssVarName(color, text, 1)}: rgba(var(#{getCssVarName(dark, purple, 8)}),1); // 文本/图标颜色 - 稍次要 + #{getCssVarName(color, text, 2)}: rgba(var(#{getCssVarName(grey, 9)}),.6); // 文本/图标颜色 - 次要 + #{getCssVarName(color, text, 3)}: rgba(var(#{getCssVarName(grey, 9)}),.35); // 文本/图标颜色 - 最次要 + + // 链接颜色 + #{getCssVarName(color, link)}: rgba(var(#{getCssVarName(blue, 4)}),1); // 链接颜色 + #{getCssVarName(color, link, hover)}: rgba(var(#{getCssVarName(blue, 6)}),1); // 链接颜色 - 悬浮态 + #{getCssVarName(color, link, active)}: rgba(var(#{getCssVarName(blue, 3)}),1); // 链接颜色 - 激活态 + #{getCssVarName(color, link, visited)}: rgba(var(#{getCssVarName(blue, 2)}),1); // 链接颜色 - 已访问 + + // 背景色 + #{getCssVarName(color, bg, 0)}: rgb(18 18 18 / 100%); // 背景色 - 最下层(底部页面) + #{getCssVarName(color, bg, 1)}: rgb(28 28 28 / 100%); // 背景色 - 次下层(页面中需要提升的内容) + #{getCssVarName(color, bg, 2)}: rgb(53 54 60 / 100%); // 背景色 - 中间层(模态等容器) + #{getCssVarName(color, bg, 3)}: rgb(67 68 74 / 100%); // 背景色 - 次上层(通知,Toast等) + #{getCssVarName(color, bg, 4)}: rgb(79 81 89 / 100%); // 背景色 - 最上层(特殊) + + // 填充色 + #{getCssVarName(color, fill, 0)}: rgba(var(#{getCssVarName(dark, purple, 4)}),1); // 填充色 - 默认态 + #{getCssVarName(color, fill, 1)}: rgba(var(#{getCssVarName(white)}),.16); // 填充色 - 悬浮态 + #{getCssVarName(color, fill, 2)}: rgba(var(#{getCssVarName(white)}),.20); // 填充色 - 激活态 + + + // 边框 + #{getCssVarName(color, border)}: rgba(var(#{getCssVarName(white)}),0.08); // 默认描边颜色 + + // 禁用态 + #{getCssVarName(color, disabled, text)}: rgba(var(#{getCssVarName(grey, 9)}), .35); // 禁用态 - 文字 + #{getCssVarName(color, disabled, border)}: rgba(var(#{getCssVarName(grey, 1)}),1); // 禁用态 - 描边 + #{getCssVarName(color, disabled, bg)}: rgba(var(#{getCssVarName(grey, 1)}),1); // 禁用态 - 背景 + #{getCssVarName(color, disabled, fill)}: rgba(var(#{getCssVarName(grey, 8)}),.04); // 禁用态 - 填充 + + // 阴影 + #{getCssVarName(color, shadow)}: rgba(var(#{getCssVarName(black)}),0.04); // 用于模拟描边的阴影颜色 + #{getCssVarName(shadow, elevated)}: + 0 0 1px rgba(0 0 0 / 30%), + 0 4px 14px rgba(0 0 0 / 10%); // 用于toast, modal, popover等需要提升层级的界面元素 + + // 字号 + #{getCssVarName('font-size', 'small')}: 12px; + #{getCssVarName('font-size', 'regular')}: 14px; + #{getCssVarName('font-size', 'header-6')}: 16px; + #{getCssVarName('font-size', 'header-5')}: 18px; + #{getCssVarName('font-size', 'header-4')}: 20px; + #{getCssVarName('font-size', 'header-3')}: 24px; + #{getCssVarName('font-size', 'header-2')}: 28px; + #{getCssVarName('font-size', 'header-1')}: 32px; + + // 字重 + #{getCssVarName('font-weight', 'light')}: 200; + #{getCssVarName('font-weight', 'regular')}: 400; + #{getCssVarName('font-weight', 'bold')}: 800; + + // 圆角 + #{getCssVarName(border, radius, extra, small)}: 2px; // 超小圆角,用于 checkbox 内圆角 + #{getCssVarName(border, radius, small)}: 4px; // 小圆角, 用于 button、tag、tabs 等大多数组件, 比较常用 + #{getCssVarName(border, radius, medium)}: 8px; // 中圆角, 用于 dropdown、scrollist、transfer 等菜单类组件 + #{getCssVarName(border, radius, large)}: 12px; // 大圆角, 用于 modal + #{getCssVarName(border, radius, circle)}: 50%; // 全圆角, 用于 avatar, badge 等组件 + #{getCssVarName(border, radius, full)}: 9999px; // 用于创建全尺寸圆角,如胶囊标签等 + + // 高度 + #{getCssVarName('height-control', 'small')}: 24px; + #{getCssVarName('height-control', 'default')}: 32px; + #{getCssVarName('height-control', 'large')}: 40px; + + // 描边尺寸 + #{getCssVarName('border-thickness')}: 0; + #{getCssVarName('border-thickness', 'control')}: 1px; + #{getCssVarName('border-thickness', 'control-focus')}: 1px; + + // 图标尺寸 + #{getCssVarName('width-icon', 'extra-small')}: 8px; + #{getCssVarName('width-icon', 'small')}: 12px; + #{getCssVarName('width-icon', 'medium')}: 16px; + #{getCssVarName('width-icon', 'large')}: 20px; + #{getCssVarName('width-icon', 'extra-large')}: 24px; + + // 间距 + #{getCssVarName('spacing', 'none')}: 0; + #{getCssVarName('spacing', 'super-tight')}: 2px; + #{getCssVarName('spacing', 'extra-tight')}: 4px; + #{getCssVarName('spacing', 'tight')}: 8px; + #{getCssVarName('spacing', 'base-tight')}: 12px; + #{getCssVarName('spacing', 'base')}: 16px; + #{getCssVarName('spacing', 'base-loose')}: 20px; + #{getCssVarName('spacing', 'loose')}: 24px; + #{getCssVarName('spacing', 'extra-loose')}: 32px; + #{getCssVarName('spacing', 'super-loose')}: 40px; +} diff --git a/packages/studio-theme/src/theme/theme/default/default-theme.scss b/packages/studio-theme/src/theme/theme/default/default-theme.scss new file mode 100644 index 0000000..220b72e --- /dev/null +++ b/packages/studio-theme/src/theme/theme/default/default-theme.scss @@ -0,0 +1,380 @@ +:root.light { + // 红色 + #{getCssVarName(red, 0)}: 254, 242, 237; + #{getCssVarName(red, 1)}: 254, 221, 210; + #{getCssVarName(red, 2)}: 253, 183, 164; + #{getCssVarName(red, 3)}: 251, 144, 120; + #{getCssVarName(red, 4)}: 250, 102, 75; + #{getCssVarName(red, 5)}: 249, 57, 31; + #{getCssVarName(red, 6)}: 213, 37, 20; + #{getCssVarName(red, 7)}: 177, 20, 13; + #{getCssVarName(red, 8)}: 142, 7, 5; + #{getCssVarName(red, 9)}: 106, 2, 3; + + // 粉色 + #{getCssVarName(pink, 0)}: 253, 236, 239; + #{getCssVarName(pink, 1)}: 251, 207, 216; + #{getCssVarName(pink, 2)}: 246, 160, 181; + #{getCssVarName(pink, 3)}: 242, 115, 150; + #{getCssVarName(pink, 4)}: 238, 72, 122; + #{getCssVarName(pink, 5)}: 233, 31, 99; + #{getCssVarName(pink, 6)}: 197, 18, 86; + #{getCssVarName(pink, 7)}: 162, 11, 72; + #{getCssVarName(pink, 8)}: 126, 4, 58; + #{getCssVarName(pink, 9)}: 90, 1, 44; + + // 紫色 + #{getCssVarName(purple, 0)}: 247, 233, 247; + #{getCssVarName(purple, 1)}: 239, 202, 239; + #{getCssVarName(purple, 2)}: 221, 155, 224; + #{getCssVarName(purple, 3)}: 201, 112, 209; + #{getCssVarName(purple, 4)}: 180, 73, 194; + #{getCssVarName(purple, 5)}: 158, 40, 179; + #{getCssVarName(purple, 6)}: 135, 30, 159; + #{getCssVarName(purple, 7)}: 112, 23, 138; + #{getCssVarName(purple, 8)}: 92, 14, 117; + #{getCssVarName(purple, 9)}: 72, 11, 97; + + // 紫罗兰色 + #{getCssVarName(violet, 0)}: 243, 237, 249; + #{getCssVarName(violet, 1)}: 226, 209, 244; + #{getCssVarName(violet, 2)}: 196, 167, 233; + #{getCssVarName(violet, 3)}: 166, 126, 221; + #{getCssVarName(violet, 4)}: 136, 91, 210; + #{getCssVarName(violet, 5)}: 106, 58, 199; + #{getCssVarName(violet, 6)}: 87, 47, 179; + #{getCssVarName(violet, 7)}: 70, 36, 158; + #{getCssVarName(violet, 8)}: 54, 28, 138; + #{getCssVarName(violet, 9)}: 40, 20, 117; + + // 靛蓝 + #{getCssVarName(indigo, 0)}: 237, 239, 248; + #{getCssVarName(indigo, 1)}: 209, 216, 240; + #{getCssVarName(indigo, 2)}: 167, 179, 225; + #{getCssVarName(indigo, 3)}: 128, 144, 211; + #{getCssVarName(indigo, 4)}: 94, 111, 196; + #{getCssVarName(indigo, 5)}: 63, 81, 181; + #{getCssVarName(indigo, 6)}: 51, 66, 161; + #{getCssVarName(indigo, 7)}: 41, 52, 140; + #{getCssVarName(indigo, 8)}: 31, 40, 120; + #{getCssVarName(indigo, 9)}: 23, 29, 99; + + // 蓝色 + #{getCssVarName(blue, 0)}: 234, 245, 255; + #{getCssVarName(blue, 1)}: 203, 231, 254; + #{getCssVarName(blue, 2)}: 152, 205, 253; + #{getCssVarName(blue, 3)}: 101, 179, 252; + #{getCssVarName(blue, 4)}: 51, 149, 252; + #{getCssVarName(blue, 5)}: 3, 118, 250; + #{getCssVarName(blue, 6)}: 2, 97, 214; + #{getCssVarName(blue, 7)}: 2, 79, 179; + #{getCssVarName(blue, 8)}: 0, 61, 143; + #{getCssVarName(blue, 9)}: 0, 44, 107; + + // 浅蓝色 + #{getCssVarName(light, blue, 0)}: 234, 247, 253; + #{getCssVarName(light, blue, 1)}: 202, 236, 252; + #{getCssVarName(light, blue, 2)}: 149, 216, 248; + #{getCssVarName(light, blue, 3)}: 97, 195, 245; + #{getCssVarName(light, blue, 4)}: 48, 172, 241; + #{getCssVarName(light, blue, 5)}: 0, 149, 238; + #{getCssVarName(light, blue, 6)}: 0, 123, 202; + #{getCssVarName(light, blue, 7)}: 0, 99, 167; + #{getCssVarName(light, blue, 8)}: 0, 75, 131; + #{getCssVarName(light, blue, 9)}: 0, 53, 95; + + // 青色 + #{getCssVarName(cyan, 0)}: 229, 247, 248; + #{getCssVarName(cyan, 1)}: 194, 239, 240; + #{getCssVarName(cyan, 2)}: 138, 221, 225; + #{getCssVarName(cyan, 3)}: 87, 203, 211; + #{getCssVarName(cyan, 4)}: 44, 184, 197; + #{getCssVarName(cyan, 5)}: 6, 164, 182; + #{getCssVarName(cyan, 6)}: 3, 134, 152; + #{getCssVarName(cyan, 7)}: 2, 105, 121; + #{getCssVarName(cyan, 8)}: 0, 77, 91; + #{getCssVarName(cyan, 9)}: 1, 50, 61; + + // 蓝绿色 + #{getCssVarName(teal, 0)}: 227, 247, 244; + #{getCssVarName(teal, 1)}: 192, 240, 232; + #{getCssVarName(teal, 2)}: 135, 224, 211; + #{getCssVarName(teal, 3)}: 84, 209, 193; + #{getCssVarName(teal, 4)}: 39, 194, 176; + #{getCssVarName(teal, 5)}: 5, 179, 161; + #{getCssVarName(teal, 6)}: 0, 149, 137; + #{getCssVarName(teal, 7)}: 0, 119, 111; + #{getCssVarName(teal, 8)}: 0, 90, 85; + #{getCssVarName(teal, 9)}: 1, 60, 58; + + // 绿色 + #{getCssVarName(green, 0)}: 236, 246, 236; + #{getCssVarName(green, 1)}: 208, 240, 208; + #{getCssVarName(green, 2)}: 164, 224, 167; + #{getCssVarName(green, 3)}: 126, 209, 130; + #{getCssVarName(green, 4)}: 90, 194, 98; + #{getCssVarName(green, 5)}: 59, 179, 70; + #{getCssVarName(green, 6)}: 49, 149, 58; + #{getCssVarName(green, 7)}: 37, 119, 47; + #{getCssVarName(green, 8)}: 26, 89, 36; + #{getCssVarName(green, 9)}: 18, 60, 24; + + // 浅绿色 + #{getCssVarName(light, green, 0)}: 243, 248, 236; + #{getCssVarName(light, green, 1)}: 226, 240, 208; + #{getCssVarName(light, green, 2)}: 200, 225, 165; + #{getCssVarName(light, green, 3)}: 173, 211, 127; + #{getCssVarName(light, green, 4)}: 147, 197, 91; + #{getCssVarName(light, green, 5)}: 123, 182, 60; + #{getCssVarName(light, green, 6)}: 100, 152, 47; + #{getCssVarName(light, green, 7)}: 79, 121, 38; + #{getCssVarName(light, green, 8)}: 57, 91, 27; + #{getCssVarName(light, green, 9)}: 36, 61, 18; + + // 清柠色 + #{getCssVarName(lime, 0)}: 241, 250, 230; + #{getCssVarName(lime, 1)}: 227, 246, 197; + #{getCssVarName(lime, 2)}: 203, 237, 142; + #{getCssVarName(lime, 3)}: 183, 226, 91; + #{getCssVarName(lime, 4)}: 168, 218, 44; + #{getCssVarName(lime, 5)}: 154, 209, 0; + #{getCssVarName(lime, 6)}: 125, 174, 0; + #{getCssVarName(lime, 7)}: 99, 139, 2; + #{getCssVarName(lime, 8)}: 72, 104, 0; + #{getCssVarName(lime, 9)}: 47, 70, 0; + + // 黄色 + #{getCssVarName(yellow, 0)}: 255, 253, 234; + #{getCssVarName(yellow, 1)}: 255, 250, 203; + #{getCssVarName(yellow, 2)}: 253, 243, 152; + #{getCssVarName(yellow, 3)}: 252, 231, 101; + #{getCssVarName(yellow, 4)}: 251, 218, 49; + #{getCssVarName(yellow, 5)}: 249, 200, 0; + #{getCssVarName(yellow, 6)}: 208, 170, 0; + #{getCssVarName(yellow, 7)}: 167, 139, 0; + #{getCssVarName(yellow, 8)}: 125, 106, 0; + #{getCssVarName(yellow, 9)}: 83, 72, 0; + + // 琥珀色 + #{getCssVarName(amber, 0)}: 255, 251, 236; + #{getCssVarName(amber, 1)}: 252, 245, 206; + #{getCssVarName(amber, 2)}: 249, 232, 158; + #{getCssVarName(amber, 3)}: 246, 216, 110; + #{getCssVarName(amber, 4)}: 243, 198, 65; + #{getCssVarName(amber, 5)}: 240, 177, 20; + #{getCssVarName(amber, 6)}: 200, 138, 16; + #{getCssVarName(amber, 7)}: 160, 102, 10; + #{getCssVarName(amber, 8)}: 120, 70, 5; + #{getCssVarName(amber, 9)}: 80, 43, 3; + + // 橙色 + #{getCssVarName(orange, 0)}: 255, 243, 224; + #{getCssVarName(orange, 1)}: 255, 223, 177; + #{getCssVarName(orange, 2)}: 255, 204, 128; + #{getCssVarName(orange, 3)}: 254, 183, 77; + #{getCssVarName(orange, 4)}: 255, 167, 38; + #{getCssVarName(orange, 5)}: 255, 152, 0; + #{getCssVarName(orange, 6)}: 250, 141, 0; + #{getCssVarName(orange, 7)}: 245, 124, 2; + #{getCssVarName(orange, 8)}: 239, 108, 0; + #{getCssVarName(orange, 9)}: 230, 81, 0; + + // 灰色 + #{getCssVarName(grey, 0)}: 249, 249, 249; + #{getCssVarName(grey, 1)}: 230, 232, 234; + #{getCssVarName(grey, 2)}: 198, 202, 205; + #{getCssVarName(grey, 3)}: 167, 171, 175; + #{getCssVarName(grey, 4)}: 136, 141, 145; + #{getCssVarName(grey, 5)}: 107, 102, 116; + #{getCssVarName(grey, 6)}: 85, 91, 97; + #{getCssVarName(grey, 7)}: 65, 70, 76; + #{getCssVarName(grey, 8)}: 46, 50, 55; + #{getCssVarName(grey, 9)}: 29, 31, 35; + + + // 蓝青色 + #{getCssVarName(blue, cyan, 0)}: 217, 236, 255; + #{getCssVarName(blue, cyan, 1)}: 164, 201, 238; + #{getCssVarName(blue, cyan, 2)}: 131, 171, 212; + #{getCssVarName(blue, cyan, 3)}: 105, 148, 190; + #{getCssVarName(blue, cyan, 4)}: 85, 125, 165; + #{getCssVarName(blue, cyan, 5)}: 70, 107, 144; + #{getCssVarName(blue, cyan, 6)}: 48, 81, 115; + #{getCssVarName(blue, cyan, 7)}: 36, 65, 96; + #{getCssVarName(blue, cyan, 8)}: 26, 52, 79; + #{getCssVarName(blue, cyan, 9)}: 16, 41, 68; + + + // 黑、白色 + #{getCssVarName(white)}: 255, 255, 255; + #{getCssVarName(black)}: 0, 0, 0; + + // 功能色 + #{getCssVarName(color, white)}: rgba(var(#{getCssVarName(white)}),1); // 浅色模式下深色背景内容Inverse + #{getCssVarName(color, black)}: rgba(var(#{getCssVarName(black)}),1); // 深色模式下浅色背景内容Inverse + + // 主要颜色 + #{getCssVarName(color, primary)}: rgba(var(#{getCssVarName(blue, cyan, 4)}),1); // 主要颜色。仅在需要非常强调的情况下使用。 + #{getCssVarName(color, primary, hover)}: rgba(var(#{getCssVarName(blue, cyan, 3)}),1); // 主要颜色悬浮态 + #{getCssVarName(color, primary, active)}: rgba(var(#{getCssVarName(blue, cyan, 5)}),1); // 主要颜色激活态 + #{getCssVarName(color, primary, disabled)}: rgba(var(#{getCssVarName(blue, cyan, 2)}),1); // 主要颜色禁用态 + #{getCssVarName(color, primary, light, default)}: rgba(var(#{getCssVarName(blue, cyan, 0)}),1); // 浅版主要颜色(多用于背景)。仅在需要非常强调的情况下使用。 + #{getCssVarName(color, primary, light, hover)}: rgba(var(#{getCssVarName(blue, cyan, 1)}),1); // 浅版主要颜色悬浮态 + #{getCssVarName(color, primary, light, active)}: rgba(var(#{getCssVarName(blue, cyan, 2)}),1); // 浅版主要颜色激活态 + + // todo 次要颜色 + #{getCssVarName(color, secondary)}: rgba(var(#{getCssVarName(light, blue, 5)}),1); // 次要颜色。强调作用次于主要颜色,但仍然具有强调作用。 + #{getCssVarName(color, secondary, hover)}: rgba(var(#{getCssVarName(light, blue, 6)}),1); // 次要颜色悬浮态 + #{getCssVarName(color, secondary, active)}: rgba(var(#{getCssVarName(light, blue, 7)}),1); // 次要颜色激活态 + #{getCssVarName(color, secondary, disabled)}: rgba(var(#{getCssVarName(light, blue, 2)}),1); // 次要颜色禁用态 + #{getCssVarName(color, secondary, light, default)}: rgba(var(#{getCssVarName(light, blue, 0)}),1); // 浅版次要颜色(多用于背景)。强调作用次于主要颜色,但仍然具有强调作用。 + #{getCssVarName(color, secondary, light, hover)}: rgba(var(#{getCssVarName(light, blue, 1)}),1); // 浅版次要颜色悬浮态 + #{getCssVarName(color, secondary, light, active)}: rgba(var(#{getCssVarName(light, blue, 2)}),1); // 浅版次要颜色激活态 + + // 第三颜色 + #{getCssVarName(color, tertiary)}: rgba(var(#{getCssVarName(grey, 5)}),1); // 第三颜色,可以在页面上多次使用 + #{getCssVarName(color, tertiary, hover)}: rgba(var(#{getCssVarName(grey, 4)}),1); // 第三颜色悬浮态 + #{getCssVarName(color, tertiary, active)}: rgba(var(#{getCssVarName(grey, 6)}),1); // 第三颜色激活态 + #{getCssVarName(color, tertiary, light, default)}: rgba(var(#{getCssVarName(grey, 0)}),1); // 浅版第三颜色(多用于背景),可以在页面上多次使用 + #{getCssVarName(color, tertiary, light, hover)}: rgba(var(#{getCssVarName(grey, 1)}),1); // 浅版第三颜色悬浮态 + #{getCssVarName(color, tertiary, light, active)}: rgba(var(#{getCssVarName(grey, 2)}),1); // 浅版第三颜色激活态 + + // 信息色 + #{getCssVarName(color, info)}: rgba(var(#{getCssVarName(blue, cyan, 4)}),1); // 信息色, 通常用于表达客观、中立信息 + #{getCssVarName(color, info, hover)}: rgba(var(#{getCssVarName(blue, cyan, 3)}),1); // 信息色悬浮态 + #{getCssVarName(color, info, active)}: rgba(var(#{getCssVarName(blue, cyan, 5)}),1); // 信息色激活态 + #{getCssVarName(color, info, disabled)}: rgba(var(#{getCssVarName(blue, cyan, 2)}),1); // 信息色禁用态 + #{getCssVarName(color, info, light, default)}: rgba(var(#{getCssVarName(blue, cyan, 0)}),1); // 浅版信息色(多用于背景),通常用于表达客观、中立信息 + #{getCssVarName(color, info, light, hover)}: rgba(var(#{getCssVarName(blue, cyan, 1)}),1); // 浅版信息色悬浮态 + #{getCssVarName(color, info, light, active)}: rgba(var(#{getCssVarName(blue, cyan, 2)}),1); // 浅版信息色激活态 + + // 成功色 + #{getCssVarName(color, success)}: rgba(var(#{getCssVarName(green, 5)}),1); // 成功色,表示安全、成功、开启的状态 + #{getCssVarName(color, success, hover)}: rgba(var(#{getCssVarName(green, 4)}),1); // 成功色悬浮态 + #{getCssVarName(color, success, active)}: rgba(var(#{getCssVarName(green, 6)}),1); // 成功色激活态 + #{getCssVarName(color, success, disabled)}: rgba(var(#{getCssVarName(green, 2)}),1); // 成功色禁用态 + #{getCssVarName(color, success, light, default)}: rgba(var(#{getCssVarName(green, 0)}),1); // 浅版成功色(多用于背景),表示安全、成功、开启的状态 + #{getCssVarName(color, success, light, hover)}: rgba(var(#{getCssVarName(green, 1)}),1); // 浅版成功色悬浮态 + #{getCssVarName(color, success, light, active)}: rgba(var(#{getCssVarName(green, 2)}),1); // 浅版成功色激活态 + + // 警示色 + #{getCssVarName(color, warning)}: rgba(var(#{getCssVarName(orange, 5)}),1); // 警示色,表示警告、不安全的状态 + #{getCssVarName(color, warning, hover)}: rgba(var(#{getCssVarName(orange, 4)}),1); // 警示色悬浮态 + #{getCssVarName(color, warning, active)}: rgba(var(#{getCssVarName(orange, 6)}),1); // 警示色激活态 + #{getCssVarName(color, warning, light, default)}: rgba(var(#{getCssVarName(orange, 0)}),1); // 浅版警示色(多用于背景),表示警告、不安全的状态 + #{getCssVarName(color, warning, light, hover)}: rgba(var(#{getCssVarName(orange, 1)}),1); // 浅版警示色悬浮态 + #{getCssVarName(color, warning, light, active)}: rgba(var(#{getCssVarName(orange, 2)}),1); // 浅版警示色激活态 + + // 危险色 + #{getCssVarName(color, danger)}: rgba(var(#{getCssVarName(red, 5)}),1); // 危险色,表示危险的操作、或需要特别注意的危险信息 + #{getCssVarName(color, danger, hover)}: rgba(var(#{getCssVarName(red, 4)}),1); // 危险色悬浮态 + #{getCssVarName(color, danger, active)}: rgba(var(#{getCssVarName(red, 6)}),1); // 危险色激活态 + #{getCssVarName(color, danger, light, default)}: rgba(var(#{getCssVarName(red, 0)}),1); // 浅版危险色(多用于背景),表示危险的操作、或需要特别注意的危险信息 + #{getCssVarName(color, danger, light, hover)}: rgba(var(#{getCssVarName(red, 1)}),1); // 浅版危险色悬浮态 + #{getCssVarName(color, danger, light, active)}: rgba(var(#{getCssVarName(red, 2)}),1); // 浅版危险色激活态 + + // 文本/图标颜色 + #{getCssVarName(color, text, 0)}: rgba(var(#{getCssVarName(grey, 9)}),1); // 文本/图标颜色 - 最主要 + #{getCssVarName(color, text, 1)}: rgba(var(#{getCssVarName(grey, 7)}),1); // 文本/图标颜色 - 稍次要 + #{getCssVarName(color, text, 2)}: rgba(var(#{getCssVarName(grey, 6)}),1); // 文本/图标颜色 - 次要 + #{getCssVarName(color, text, 3)}: rgba(var(#{getCssVarName(grey, 4)}),1); // 文本/图标颜色 - 最次要 + + // 链接颜色 + #{getCssVarName(color, link)}: rgba(var(#{getCssVarName(blue, cyan, 5)}),1); // 链接颜色 + #{getCssVarName(color, link, hover)}: rgba(var(#{getCssVarName(blue, cyan, 4)}),1); // 链接颜色 - 悬浮态 + #{getCssVarName(color, link, active)}: rgba(var(#{getCssVarName(blue, cyan, 6)}),1); // 链接颜色 - 激活态 + #{getCssVarName(color, link, visited)}: rgba(var(#{getCssVarName(blue, cyan, 5)}),1); // 链接颜色 - 已访问 + + // 背景色 + #{getCssVarName(color, bg, 0)}: rgba(var(#{getCssVarName(grey, 0)}),1); // 背景色 - 最下层(底部页面) + #{getCssVarName(color, bg, 1)}: rgba(var(#{getCssVarName(white)}),1); // 背景色 - 次下层(页面中需要提升的内容) + #{getCssVarName(color, bg, 2)}: rgba(var(#{getCssVarName(white)}),1); // 背景色 - 中间层(模态等容器) + #{getCssVarName(color, bg, 3)}: rgba(var(#{getCssVarName(white)}),1); // 背景色 - 次上层(通知,Toast等) + #{getCssVarName(color, bg, 4)}: rgba(var(#{getCssVarName(white)}),1); // 背景色 - 最上层(特殊) + + // 填充色 + #{getCssVarName(color, fill, 0)}: rgba(var(#{getCssVarName(grey, 8)}),0.05); // 填充色 - 默认态 + #{getCssVarName(color, fill, 1)}: rgba(var(#{getCssVarName(grey, 8)}),0.1); // 填充色 - 悬浮态 + #{getCssVarName(color, fill, 2)}: rgba(var(#{getCssVarName(grey, 8), }),0.13); // 填充色 - 激活态 + + + // 边框 + #{getCssVarName(color, border)}: rgba(var(#{getCssVarName(grey, 9)}),0.1); // 默认描边颜色 + + // 禁用态 + #{getCssVarName(color, disabled, text)}: rgba(var(#{getCssVarName(grey, 9)}), 0.35); // 禁用态 - 文字 + #{getCssVarName(color, disabled, border)}: rgba(var(#{getCssVarName(grey, 1)}),1); // 禁用态 - 描边 + #{getCssVarName(color, disabled, bg)}: rgba(var(#{getCssVarName(grey, 1)}),1); // 禁用态 - 背景 + #{getCssVarName(color, disabled, fill)}: rgba(var(#{getCssVarName(grey, 8)}),0.04); // 禁用态 - 填充 + + // 阴影 + #{getCssVarName(color, shadow)}: rgba(var(#{getCssVarName(black)}),0.04); // 用于模拟描边的阴影颜色 + #{getCssVarName(shadow, elevated)}: + 0 0 1px rgba(0 0 0 / 30%), + 0 4px 14px rgba(0 0 0 / 10%); // 用于toast, modal, popover等需要提升层级的界面元素 + + // 字号 + #{getCssVarName('font-size', 'small')}: 12px; + #{getCssVarName('font-size', 'regular')}: 14px; + #{getCssVarName('font-size', 'header-6')}: 16px; + #{getCssVarName('font-size', 'header-5')}: 18px; + #{getCssVarName('font-size', 'header-4')}: 20px; + #{getCssVarName('font-size', 'header-3')}: 24px; + #{getCssVarName('font-size', 'header-2')}: 28px; + #{getCssVarName('font-size', 'header-1')}: 32px; + + // 字重 + #{getCssVarName('font-weight', 'light')}: 200; + #{getCssVarName('font-weight', 'regular')}: 400; + #{getCssVarName('font-weight', 'bold')}: 800; + + // 圆角 + #{getCssVarName(border, radius, extra, small)}: 2px; // 超小圆角,用于 checkbox 内圆角 + #{getCssVarName(border, radius, small)}: 4px; // 小圆角, 用于 button、tag、tabs 等大多数组件, 比较常用 + #{getCssVarName(border, radius, medium)}: 8px; // 中圆角, 用于 dropdown、scrollist、transfer 等菜单类组件 + #{getCssVarName(border, radius, large)}: 12px; // 大圆角, 用于 modal + #{getCssVarName(border, radius, circle)}: 50%; // 全圆角, 用于 avatar, badge 等组件 + #{getCssVarName(border, radius, full)}: 9999px; // 用于创建全尺寸圆角,如胶囊标签等 + + // 高度 + #{getCssVarName('height-control', 'small')}: 24px; + #{getCssVarName('height-control', 'default')}: 32px; + #{getCssVarName('height-control', 'large')}: 40px; + + // 描边尺寸 + #{getCssVarName('border-thickness')}: 0; + #{getCssVarName('border-thickness', 'control')}: 1px; + #{getCssVarName('border-thickness', 'control-focus')}: 1px; + + // 图标尺寸 + #{getCssVarName('width-icon', 'extra-small')}: 8px; + #{getCssVarName('width-icon', 'small')}: 12px; + #{getCssVarName('width-icon', 'medium')}: 16px; + #{getCssVarName('width-icon', 'large')}: 20px; + #{getCssVarName('width-icon', 'extra-large')}: 24px; + + // 间距 + #{getCssVarName('spacing', 'none')}: 0; + #{getCssVarName('spacing', 'super-tight')}: 2px; + #{getCssVarName('spacing', 'extra-tight')}: 4px; + #{getCssVarName('spacing', 'tight')}: 8px; + #{getCssVarName('spacing', 'base-tight')}: 12px; + #{getCssVarName('spacing', 'base')}: 16px; + #{getCssVarName('spacing', 'base-loose')}: 20px; + #{getCssVarName('spacing', 'loose')}: 24px; + #{getCssVarName('spacing', 'extra-loose')}: 32px; + #{getCssVarName('spacing', 'super-loose')}: 40px; +} + +// 主题下的区域性样式覆盖 + +:root.light { + + @include b(panel-app-header) { + #{getCssVarName(grey, 9)}: 249, 249, 249; + #{getCssVarName(color, text, 0)}: rgba(var(#{getCssVarName(grey, 9)}), 1); // 文本/图标颜色 - 最主要 + #{getCssVarName(color, text, 1)}: rgba(var(#{getCssVarName(grey, 9)}), .8); // 文本/图标颜色 - 稍次要 + #{getCssVarName(color, text, 2)}: rgba(var(#{getCssVarName(grey, 9)}), .6); // 文本/图标颜色 - 次要 + #{getCssVarName(color, text, 3)}: rgba(var(#{getCssVarName(grey, 9)}), .35); // 文本/图标颜色 - 最次要 + } +} \ No newline at end of file diff --git a/packages/studio-theme/src/theme/theme/index.scss b/packages/studio-theme/src/theme/theme/index.scss new file mode 100644 index 0000000..bf081fe --- /dev/null +++ b/packages/studio-theme/src/theme/theme/index.scss @@ -0,0 +1,9 @@ +// @import './light/light-theme'; + +// @import './dark/dark-theme'; + +@import './default/default-theme'; + +@import './default-dark/default-dark-theme'; + +@import './omni-oa/omni-oa-theme'; diff --git a/packages/studio-theme/src/theme/theme/light/light-theme.scss b/packages/studio-theme/src/theme/theme/light/light-theme.scss new file mode 100644 index 0000000..decd2d5 --- /dev/null +++ b/packages/studio-theme/src/theme/theme/light/light-theme.scss @@ -0,0 +1,283 @@ +:root.light { + #{getCssVarName(amber, 0)}: 254, 251, 235; + #{getCssVarName(amber, 1)}: 252, 245, 206; + #{getCssVarName(amber, 2)}: 249, 232, 158; + #{getCssVarName(amber, 3)}: 246, 216, 111; + #{getCssVarName(amber, 4)}: 243, 198, 65; + #{getCssVarName(amber, 5)}: 240, 177, 20; + #{getCssVarName(amber, 6)}: 200, 138, 15; + #{getCssVarName(amber, 7)}: 160, 102, 10; + #{getCssVarName(amber, 8)}: 120, 70, 6; + #{getCssVarName(amber, 9)}: 80, 43, 3; + #{getCssVarName(black)}: 0, 0, 0; + #{getCssVarName(blue, 0)}: 234, 245, 255; + #{getCssVarName(blue, 1)}: 203, 231, 254; + #{getCssVarName(blue, 2)}: 152, 205, 253; + #{getCssVarName(blue, 3)}: 101, 178, 252; + #{getCssVarName(blue, 4)}: 50, 149, 251; + #{getCssVarName(blue, 5)}: 0, 119, 250; + #{getCssVarName(blue, 6)}: 0, 98, 214; + #{getCssVarName(blue, 7)}: 0, 79, 179; + #{getCssVarName(blue, 8)}: 0, 61, 143; + #{getCssVarName(blue, 9)}: 0, 44, 107; + #{getCssVarName(cyan, 0)}: 229, 247, 248; + #{getCssVarName(cyan, 1)}: 194, 239, 240; + #{getCssVarName(cyan, 2)}: 138, 221, 226; + #{getCssVarName(cyan, 3)}: 88, 203, 211; + #{getCssVarName(cyan, 4)}: 44, 184, 197; + #{getCssVarName(cyan, 5)}: 5, 164, 182; + #{getCssVarName(cyan, 6)}: 3, 134, 152; + #{getCssVarName(cyan, 7)}: 1, 105, 121; + #{getCssVarName(cyan, 8)}: 0, 77, 91; + #{getCssVarName(cyan, 9)}: 0, 50, 61; + #{getCssVarName(green, 0)}: 236, 247, 236; + #{getCssVarName(green, 1)}: 208, 240, 209; + #{getCssVarName(green, 2)}: 164, 224, 167; + #{getCssVarName(green, 3)}: 125, 209, 130; + #{getCssVarName(green, 4)}: 90, 194, 98; + #{getCssVarName(green, 5)}: 59, 179, 70; + #{getCssVarName(green, 6)}: 48, 149, 59; + #{getCssVarName(green, 7)}: 37, 119, 47; + #{getCssVarName(green, 8)}: 27, 89, 36; + #{getCssVarName(green, 9)}: 17, 60, 24; + #{getCssVarName(grey, 0)}: 249, 249, 249; + #{getCssVarName(grey, 1)}: 230, 232, 234; + #{getCssVarName(grey, 2)}: 198, 202, 205; + #{getCssVarName(grey, 3)}: 167, 171, 176; + #{getCssVarName(grey, 4)}: 136, 141, 146; + #{getCssVarName(grey, 5)}: 107, 112, 117; + #{getCssVarName(grey, 6)}: 85, 91, 97; + #{getCssVarName(grey, 7)}: 65, 70, 76; + #{getCssVarName(grey, 8)}: 46, 50, 56; + #{getCssVarName(grey, 9)}: 28, 31, 35; + #{getCssVarName(indigo, 0)}: 236, 239, 248; + #{getCssVarName(indigo, 1)}: 209, 216, 240; + #{getCssVarName(indigo, 2)}: 167, 179, 225; + #{getCssVarName(indigo, 3)}: 128, 144, 211; + #{getCssVarName(indigo, 4)}: 94, 111, 196; + #{getCssVarName(indigo, 5)}: 63, 81, 181; + #{getCssVarName(indigo, 6)}: 51, 66, 161; + #{getCssVarName(indigo, 7)}: 40, 52, 140; + #{getCssVarName(indigo, 8)}: 31, 40, 120; + #{getCssVarName(indigo, 9)}: 23, 29, 99; + #{getCssVarName(light, blue)}-0: 233, 247, 253; + #{getCssVarName(light, blue)}-1: 201, 236, 252; + #{getCssVarName(light, blue)}-2: 149, 216, 248; + #{getCssVarName(light, blue)}-3: 98, 195, 245; + #{getCssVarName(light, blue)}-4: 48, 172, 241; + #{getCssVarName(light, blue)}-5: 0, 149, 238; + #{getCssVarName(light, blue)}-6: 0, 123, 202; + #{getCssVarName(light, blue)}-7: 0, 99, 167; + #{getCssVarName(light, blue)}-8: 0, 75, 131; + #{getCssVarName(light, blue)}-9: 0, 53, 95; + #{getCssVarName(light, green)}-0: 243, 248, 236; + #{getCssVarName(light, green)}-1: 227, 240, 208; + #{getCssVarName(light, green)}-2: 200, 226, 165; + #{getCssVarName(light, green)}-3: 173, 211, 126; + #{getCssVarName(light, green)}-4: 147, 197, 91; + #{getCssVarName(light, green)}-5: 123, 182, 60; + #{getCssVarName(light, green)}-6: 100, 152, 48; + #{getCssVarName(light, green)}-7: 78, 121, 38; + #{getCssVarName(light, green)}-8: 57, 91, 27; + #{getCssVarName(light, green)}-9: 37, 61, 18; + #{getCssVarName(lime, 0)}: 242, 250, 230; + #{getCssVarName(lime, 1)}: 227, 246, 197; + #{getCssVarName(lime, 2)}: 203, 237, 142; + #{getCssVarName(lime, 3)}: 183, 227, 91; + #{getCssVarName(lime, 4)}: 167, 218, 44; + #{getCssVarName(lime, 5)}: 155, 209, 0; + #{getCssVarName(lime, 6)}: 126, 174, 0; + #{getCssVarName(lime, 7)}: 99, 139, 0; + #{getCssVarName(lime, 8)}: 72, 104, 0; + #{getCssVarName(lime, 9)}: 47, 70, 0; + #{getCssVarName(orange, 0)}: 255, 248, 234; + #{getCssVarName(orange, 1)}: 254, 238, 204; + #{getCssVarName(orange, 2)}: 254, 217, 152; + #{getCssVarName(orange, 3)}: 253, 193, 101; + #{getCssVarName(orange, 4)}: 253, 166, 51; + #{getCssVarName(orange, 5)}: 252, 136, 0; + #{getCssVarName(orange, 6)}: 210, 103, 0; + #{getCssVarName(orange, 7)}: 168, 74, 0; + #{getCssVarName(orange, 8)}: 126, 49, 0; + #{getCssVarName(orange, 9)}: 84, 29, 0; + #{getCssVarName(pink, 0)}: 253, 236, 239; + #{getCssVarName(pink, 1)}: 251, 207, 216; + #{getCssVarName(pink, 2)}: 246, 160, 181; + #{getCssVarName(pink, 3)}: 242, 115, 150; + #{getCssVarName(pink, 4)}: 237, 72, 123; + #{getCssVarName(pink, 5)}: 233, 30, 99; + #{getCssVarName(pink, 6)}: 197, 19, 86; + #{getCssVarName(pink, 7)}: 162, 11, 72; + #{getCssVarName(pink, 8)}: 126, 5, 58; + #{getCssVarName(pink, 9)}: 90, 1, 43; + #{getCssVarName(purple, 0)}: 247, 233, 247; + #{getCssVarName(purple, 1)}: 239, 202, 240; + #{getCssVarName(purple, 2)}: 221, 155, 224; + #{getCssVarName(purple, 3)}: 201, 111, 209; + #{getCssVarName(purple, 4)}: 180, 73, 194; + #{getCssVarName(purple, 5)}: 158, 40, 179; + #{getCssVarName(purple, 6)}: 135, 30, 158; + #{getCssVarName(purple, 7)}: 113, 22, 138; + #{getCssVarName(purple, 8)}: 92, 15, 117; + #{getCssVarName(purple, 9)}: 73, 10, 97; + #{getCssVarName(red, 0)}: 254, 242, 237; + #{getCssVarName(red, 1)}: 254, 221, 210; + #{getCssVarName(red, 2)}: 253, 183, 165; + #{getCssVarName(red, 3)}: 251, 144, 120; + #{getCssVarName(red, 4)}: 250, 102, 76; + #{getCssVarName(red, 5)}: 249, 57, 32; + #{getCssVarName(red, 6)}: 213, 37, 21; + #{getCssVarName(red, 7)}: 178, 20, 12; + #{getCssVarName(red, 8)}: 142, 8, 5; + #{getCssVarName(red, 9)}: 106, 1, 3; + #{getCssVarName(teal, 0)}: 228, 247, 244; + #{getCssVarName(teal, 1)}: 192, 240, 232; + #{getCssVarName(teal, 2)}: 135, 224, 211; + #{getCssVarName(teal, 3)}: 84, 209, 193; + #{getCssVarName(teal, 4)}: 39, 194, 176; + #{getCssVarName(teal, 5)}: 0, 179, 161; + #{getCssVarName(teal, 6)}: 0, 149, 137; + #{getCssVarName(teal, 7)}: 0, 119, 111; + #{getCssVarName(teal, 8)}: 0, 89, 85; + #{getCssVarName(teal, 9)}: 0, 60, 58; + #{getCssVarName(violet, 0)}: 243, 237, 249; + #{getCssVarName(violet, 1)}: 226, 209, 244; + #{getCssVarName(violet, 2)}: 196, 167, 233; + #{getCssVarName(violet, 3)}: 166, 127, 221; + #{getCssVarName(violet, 4)}: 136, 91, 210; + #{getCssVarName(violet, 5)}: 106, 58, 199; + #{getCssVarName(violet, 6)}: 87, 47, 179; + #{getCssVarName(violet, 7)}: 70, 37, 158; + #{getCssVarName(violet, 8)}: 54, 28, 138; + #{getCssVarName(violet, 9)}: 40, 20, 117; + #{getCssVarName(white)}: 255, 255, 255; + #{getCssVarName(yellow, 0)}: 255, 253, 234; + #{getCssVarName(yellow, 1)}: 254, 251, 203; + #{getCssVarName(yellow, 2)}: 253, 243, 152; + #{getCssVarName(yellow, 3)}: 252, 232, 101; + #{getCssVarName(yellow, 4)}: 251, 218, 50; + #{getCssVarName(yellow, 5)}: 250, 200, 0; + #{getCssVarName(yellow, 6)}: 208, 170, 0; + #{getCssVarName(yellow, 7)}: 167, 139, 0; + #{getCssVarName(yellow, 8)}: 125, 106, 0; + #{getCssVarName(yellow, 9)}: 83, 72, 0; + + // 功能色 + #{getCssVarName(color, white)}: rgba(var(#{getCssVarName(white)}),1); // 浅色模式下深色背景内容Inverse + #{getCssVarName(color, black)}: rgba(var(#{getCssVarName(black)}),1); // 深色模式下浅色背景内容Inverse + + // 主要颜色 + #{getCssVarName(color, primary)}: rgba(var(#{getCssVarName(blue, 5)}),1); // 主要颜色。仅在需要非常强调的情况下使用。 + #{getCssVarName(color, primary, hover)}: rgba(var(#{getCssVarName(blue, 6)}),1); // 主要颜色悬浮态 + #{getCssVarName(color, primary, active)}: rgba(var(#{getCssVarName(blue, 7)}),1); // 主要颜色激活态 + #{getCssVarName(color, primary, disabled)}: rgba(var(#{getCssVarName(blue, 2)}),1); // 主要颜色禁用态 + #{getCssVarName(color, primary, light, default)}: rgba(var(#{getCssVarName(blue, 0)}),1); // 浅版主要颜色(多用于背景)。仅在需要非常强调的情况下使用。 + #{getCssVarName(color, primary, light, hover)}: rgba(var(#{getCssVarName(blue, 1)}),1); // 浅版主要颜色悬浮态 + #{getCssVarName(color, primary, light, active)}: rgba(var(#{getCssVarName(blue, 2)}),1); // 浅版主要颜色激活态 + + // 次要颜色 + #{getCssVarName(color, secondary)}: rgba(var(#{getCssVarName(light, blue, 5)}),1); // 次要颜色。强调作用次于主要颜色,但仍然具有强调作用。 + #{getCssVarName(color, secondary, hover)}: rgba(var(#{getCssVarName(light, blue, 6)}),1); // 次要颜色悬浮态 + #{getCssVarName(color, secondary, active)}: rgba(var(#{getCssVarName(light, blue, 7)}),1); // 次要颜色激活态 + #{getCssVarName(color, secondary, disabled)}: rgba(var(#{getCssVarName(light, blue, 2)}),1); // 次要颜色禁用态 + #{getCssVarName(color, secondary, light, default)}: rgba(var(#{getCssVarName(light, blue, 0)}),1); // 浅版次要颜色(多用于背景)。强调作用次于主要颜色,但仍然具有强调作用。 + #{getCssVarName(color, secondary, light, hover)}: rgba(var(#{getCssVarName(light, blue, 1)}),1); // 浅版次要颜色悬浮态 + #{getCssVarName(color, secondary, light, active)}: rgba(var(#{getCssVarName(light, blue, 2)}),1); // 浅版次要颜色激活态 + + // 第三颜色 + #{getCssVarName(color, tertiary)}: rgba(var(#{getCssVarName(grey, 5)}),1); // 第三颜色,可以在页面上多次使用 + #{getCssVarName(color, tertiary, hover)}: rgba(var(#{getCssVarName(grey, 6)}),1); // 第三颜色悬浮态 + #{getCssVarName(color, tertiary, active)}: rgba(var(#{getCssVarName(grey, 7)}),1); // 第三颜色激活态 + #{getCssVarName(color, tertiary, light, default)}: rgba(var(#{getCssVarName(grey, 0)}),1); // 浅版第三颜色(多用于背景),可以在页面上多次使用 + #{getCssVarName(color, tertiary, light, hover)}: rgba(var(#{getCssVarName(grey, 1)}),1); // 浅版第三颜色悬浮态 + #{getCssVarName(color, tertiary, light, active)}: rgba(var(#{getCssVarName(grey, 2)}),1); // 浅版第三颜色激活态 + #{getCssVarName(color, default)}: rgba(var(#{getCssVarName(grey, 0)}),1); // 不建议使用 + #{getCssVarName(color, default, hover)}: rgba(var(#{getCssVarName(grey, 1)}),1); // 不建议使用 + #{getCssVarName(color, default, active)}: rgba(var(#{getCssVarName(grey, 2)}),1); // 不建议使用 + + // 信息色 + #{getCssVarName(color, info)}: rgba(var(#{getCssVarName(blue, 5)}),1); // 信息色, 通常用于表达客观、中立信息 + #{getCssVarName(color, info, hover)}: rgba(var(#{getCssVarName(blue, 6)}),1); // 信息色悬浮态 + #{getCssVarName(color, info, active)}: rgba(var(#{getCssVarName(blue, 7)}),1); // 信息色激活态 + #{getCssVarName(color, info, disabled)}: rgba(var(#{getCssVarName(blue, 2)}),1); // 信息色禁用态 + #{getCssVarName(color, info, light, default)}: rgba(var(#{getCssVarName(blue, 0)}),1); // 浅版信息色(多用于背景),通常用于表达客观、中立信息 + #{getCssVarName(color, info, light, hover)}: rgba(var(#{getCssVarName(blue, 1)}),1); // 浅版信息色悬浮态 + #{getCssVarName(color, info, light, active)}: rgba(var(#{getCssVarName(blue, 2)}),1); // 浅版信息色激活态 + + // 成功色 + #{getCssVarName(color, success)}: rgba(var(#{getCssVarName(green, 5)}),1); // 成功色,表示安全、成功、开启的状态 + #{getCssVarName(color, success, hover)}: rgba(var(#{getCssVarName(green, 6)}),1); // 成功色悬浮态 + #{getCssVarName(color, success, active)}: rgba(var(#{getCssVarName(green, 7)}),1); // 成功色激活态 + #{getCssVarName(color, success, disabled)}: rgba(var(#{getCssVarName(green, 2)}),1); // 成功色禁用态 + #{getCssVarName(color, success, light, default)}: rgba(var(#{getCssVarName(green, 0)}),1); // 浅版成功色(多用于背景),表示安全、成功、开启的状态 + #{getCssVarName(color, success, light, hover)}: rgba(var(#{getCssVarName(green, 1)}),1); // 浅版成功色悬浮态 + #{getCssVarName(color, success, light, active)}: rgba(var(#{getCssVarName(green, 2)}),1); // 浅版成功色激活态 + + // 危险色 + #{getCssVarName(color, danger)}: rgba(var(#{getCssVarName(red, 5)}),1); // 危险色,表示危险的操作、或需要特别注意的危险信息 + #{getCssVarName(color, danger, hover)}: rgba(var(#{getCssVarName(red, 6)}),1); // 危险色悬浮态 + #{getCssVarName(color, danger, active)}: rgba(var(#{getCssVarName(red, 7)}),1); // 危险色激活态 + #{getCssVarName(color, danger, light, default)}: rgba(var(#{getCssVarName(red, 0)}),1); // 浅版危险色(多用于背景),表示危险的操作、或需要特别注意的危险信息 + #{getCssVarName(color, danger, light, hover)}: rgba(var(#{getCssVarName(red, 1)}),1); // 浅版危险色悬浮态 + #{getCssVarName(color, danger, light, active)}: rgba(var(#{getCssVarName(red, 2)}),1); // 浅版危险色激活态 + + // 警示色 + #{getCssVarName(color, warning)}: rgba(var(#{getCssVarName(orange, 5)}),1); // 警示色,表示警告、不安全的状态 + #{getCssVarName(color, warning, hover)}: rgba(var(#{getCssVarName(orange, 6)}),1); // 警示色悬浮态 + #{getCssVarName(color, warning, active)}: rgba(var(#{getCssVarName(orange, 7)}),1); // 警示色激活态 + #{getCssVarName(color, warning, light, default)}: rgba(var(#{getCssVarName(orange, 0)}),1); // 浅版警示色(多用于背景),表示警告、不安全的状态 + #{getCssVarName(color, warning, light, hover)}: rgba(var(#{getCssVarName(orange, 1)}),1); // 浅版警示色悬浮态 + #{getCssVarName(color, warning, light, active)}: rgba(var(#{getCssVarName(orange, 2)}),1); // 浅版警示色激活态 + + // 边框 + #{getCssVarName(color, focus, border)}: rgba(var(#{getCssVarName(blue, 5)}),1); // 多用于边框激活态颜色 + + // 禁用态 + #{getCssVarName(color, disabled, text)}: rgba(var(#{getCssVarName(grey, 9)}), 0.35); // 禁用态 - 文字 + #{getCssVarName(color, disabled, border)}: rgba(var(#{getCssVarName(grey, 1)}),1); // 禁用态 - 描边 + #{getCssVarName(color, disabled, bg)}: rgba(var(#{getCssVarName(grey, 1)}),1); // 禁用态 - 背景 + #{getCssVarName(color, disabled, fill)}: rgba(var(#{getCssVarName(grey, 8)}),0.04); // 禁用态 - 填充 + #{getCssVarName(color, shadow)}: rgba(var(#{getCssVarName(black)}),0.04); // 用于模拟描边的阴影颜色 + + // 链接颜色 + #{getCssVarName(color, link)}: rgba(var(#{getCssVarName(blue, 5)}),1); // 链接颜色 + #{getCssVarName(color, link, hover)}: rgba(var(#{getCssVarName(blue, 6)}),1); // 链接颜色 - 悬浮态 + #{getCssVarName(color, link, active)}: rgba(var(#{getCssVarName(blue, 7)}),1); // 链接颜色 - 激活态 + #{getCssVarName(color, link, visited)}: rgba(var(#{getCssVarName(blue, 5)}),1); // 链接颜色 - 已访问 + #{getCssVarName(color, border)}: rgba(var(#{getCssVarName(grey, 9)}),0.08); // 默认描边颜色 + #{getCssVarName(color, nav, bg)}: rgba(var(#{getCssVarName(white)}),1); // 导航背景色 + #{getCssVarName(color, overlay, bg)}: rgba(22 22 26 / 60%); // 蒙层背景色 + + // 填充色 + #{getCssVarName(color, fill, 0)}: rgba(var(#{getCssVarName(grey, 8)}),0.05); // 填充色 - 默认态 + #{getCssVarName(color, fill, 1)}: rgba(var(#{getCssVarName(grey, 8)}),0.09); // 填充色 - 悬浮态 + #{getCssVarName(color, fill, 2)}: rgba(var(#{getCssVarName(grey, 8), }),0.13); // 填充色 - 激活态 + + // 背景色 + #{getCssVarName(color, bg, 0)}: rgba(var(#{getCssVarName(white)}),1); // 背景色 - 最下层(底部页面) + #{getCssVarName(color, bg, 1)}: rgba(var(#{getCssVarName(white)}),1); // 背景色 - 次下层(页面中需要提升的内容) + #{getCssVarName(color, bg, 2)}: rgba(var(#{getCssVarName(white)}),1); // 背景色 - 中间层(模态等容器) + #{getCssVarName(color, bg, 3)}: rgba(var(#{getCssVarName(white)}),1); // 背景色 - 次上层(通知,Toast等) + #{getCssVarName(color, bg, 4)}: rgba(var(#{getCssVarName(white)}),1); // 背景色 - 最上层(特殊) + + // 文本/图标颜色 + #{getCssVarName(color, text, 0)}: rgba(var(#{getCssVarName(grey, 9)}),1); // 文本/图标颜色 - 最主要 + #{getCssVarName(color, text, 1)}: rgba(var(#{getCssVarName(grey, 9)}),0.8); // 文本/图标颜色 - 稍次要 + #{getCssVarName(color, text, 2)}: rgba(var(#{getCssVarName(grey, 9)}),0.62); // 文本/图标颜色 - 次要 + #{getCssVarName(color, text, 3)}: rgba(var(#{getCssVarName(grey, 9)}),0.35); // 文本/图标颜色 - 最次要 + #{getCssVarName(shadow, elevated)}: + 0 0 1px rgba(0 0 0 / 30%), + 0 4px 14px rgba(0 0 0 / 10%); // 用于toast, modal, popover等需要提升层级的界面元素 + + // 圆角 + #{getCssVarName(border, radius, extra, small)}: 3px; // 超小圆角,用于 checkbox 内圆角 + #{getCssVarName(border, radius, small)}: 3px; // 小圆角, 用于 button、tag、tabs 等大多数组件, 比较常用 + #{getCssVarName(border, radius, medium)}: 6px; // 中圆角, 用于 dropdown、scrollist、transfer 等菜单类组件 + #{getCssVarName(border, radius, large)}: 12px; // 大圆角, 用于 modal + #{getCssVarName(border, radius, circle)}: 50%; // 全圆角, 用于 avatar, badge 等组件 + #{getCssVarName(border, radius, full)}: 9999px; // 用于创建全尺寸圆角,如胶囊标签等 + + // 高亮 + #{getCssVarName(color, highlight, bg)}: rgba(var(#{getCssVarName(yellow, 4)}),1); // 高亮文本背景色 + #{getCssVarName(color, highlight)}: rgba(var(#{getCssVarName(black)}),1); // 高亮文本色 +} diff --git a/packages/studio-theme/src/theme/theme/omni-oa/omni-oa-theme.scss b/packages/studio-theme/src/theme/theme/omni-oa/omni-oa-theme.scss new file mode 100644 index 0000000..9fac81e --- /dev/null +++ b/packages/studio-theme/src/theme/theme/omni-oa/omni-oa-theme.scss @@ -0,0 +1,392 @@ +:root.omni-oa { + // 红色 + #{getCssVarName(red, 0)}: 254, 242, 237; + #{getCssVarName(red, 1)}: 254, 221, 210; + #{getCssVarName(red, 2)}: 253, 183, 164; + #{getCssVarName(red, 3)}: 251, 144, 120; + #{getCssVarName(red, 4)}: 250, 102, 75; + #{getCssVarName(red, 5)}: 249, 57, 31; + #{getCssVarName(red, 6)}: 213, 37, 20; + #{getCssVarName(red, 7)}: 177, 20, 13; + #{getCssVarName(red, 8)}: 142, 7, 5; + #{getCssVarName(red, 9)}: 106, 2, 3; + + // 粉色 + #{getCssVarName(pink, 0)}: 253, 236, 239; + #{getCssVarName(pink, 1)}: 251, 207, 216; + #{getCssVarName(pink, 2)}: 246, 160, 181; + #{getCssVarName(pink, 3)}: 242, 115, 150; + #{getCssVarName(pink, 4)}: 238, 72, 122; + #{getCssVarName(pink, 5)}: 233, 31, 99; + #{getCssVarName(pink, 6)}: 197, 18, 86; + #{getCssVarName(pink, 7)}: 162, 11, 72; + #{getCssVarName(pink, 8)}: 126, 4, 58; + #{getCssVarName(pink, 9)}: 90, 1, 44; + + // 紫色 + #{getCssVarName(purple, 0)}: 247, 233, 247; + #{getCssVarName(purple, 1)}: 239, 202, 239; + #{getCssVarName(purple, 2)}: 221, 155, 224; + #{getCssVarName(purple, 3)}: 201, 112, 209; + #{getCssVarName(purple, 4)}: 180, 73, 194; + #{getCssVarName(purple, 5)}: 158, 40, 179; + #{getCssVarName(purple, 6)}: 135, 30, 159; + #{getCssVarName(purple, 7)}: 112, 23, 138; + #{getCssVarName(purple, 8)}: 92, 14, 117; + #{getCssVarName(purple, 9)}: 72, 11, 97; + + // 紫罗兰色 + #{getCssVarName(violet, 0)}: 243, 237, 249; + #{getCssVarName(violet, 1)}: 226, 209, 244; + #{getCssVarName(violet, 2)}: 196, 167, 233; + #{getCssVarName(violet, 3)}: 166, 126, 221; + #{getCssVarName(violet, 4)}: 136, 91, 210; + #{getCssVarName(violet, 5)}: 106, 58, 199; + #{getCssVarName(violet, 6)}: 87, 47, 179; + #{getCssVarName(violet, 7)}: 70, 36, 158; + #{getCssVarName(violet, 8)}: 54, 28, 138; + #{getCssVarName(violet, 9)}: 40, 20, 117; + + // 靛蓝 + #{getCssVarName(indigo, 0)}: 237, 239, 248; + #{getCssVarName(indigo, 1)}: 209, 216, 240; + #{getCssVarName(indigo, 2)}: 167, 179, 225; + #{getCssVarName(indigo, 3)}: 128, 144, 211; + #{getCssVarName(indigo, 4)}: 94, 111, 196; + #{getCssVarName(indigo, 5)}: 63, 81, 181; + #{getCssVarName(indigo, 6)}: 51, 66, 161; + #{getCssVarName(indigo, 7)}: 41, 52, 140; + #{getCssVarName(indigo, 8)}: 31, 40, 120; + #{getCssVarName(indigo, 9)}: 23, 29, 99; + + // 蓝色 + #{getCssVarName(blue, 0)}: 234, 245, 255; + #{getCssVarName(blue, 1)}: 203, 231, 254; + #{getCssVarName(blue, 2)}: 152, 205, 253; + #{getCssVarName(blue, 3)}: 101, 179, 252; + #{getCssVarName(blue, 4)}: 51, 149, 252; + #{getCssVarName(blue, 5)}: 3, 118, 250; + #{getCssVarName(blue, 6)}: 2, 97, 214; + #{getCssVarName(blue, 7)}: 2, 79, 179; + #{getCssVarName(blue, 8)}: 0, 61, 143; + #{getCssVarName(blue, 9)}: 0, 44, 107; + + // 浅蓝色 + #{getCssVarName(light, blue, 0)}: 234, 247, 253; + #{getCssVarName(light, blue, 1)}: 202, 236, 252; + #{getCssVarName(light, blue, 2)}: 149, 216, 248; + #{getCssVarName(light, blue, 3)}: 97, 195, 245; + #{getCssVarName(light, blue, 4)}: 48, 172, 241; + #{getCssVarName(light, blue, 5)}: 0, 149, 238; + #{getCssVarName(light, blue, 6)}: 0, 123, 202; + #{getCssVarName(light, blue, 7)}: 0, 99, 167; + #{getCssVarName(light, blue, 8)}: 0, 75, 131; + #{getCssVarName(light, blue, 9)}: 0, 53, 95; + + // 青色 + #{getCssVarName(cyan, 0)}: 229, 247, 248; + #{getCssVarName(cyan, 1)}: 194, 239, 240; + #{getCssVarName(cyan, 2)}: 138, 221, 225; + #{getCssVarName(cyan, 3)}: 87, 203, 211; + #{getCssVarName(cyan, 4)}: 44, 184, 197; + #{getCssVarName(cyan, 5)}: 6, 164, 182; + #{getCssVarName(cyan, 6)}: 3, 134, 152; + #{getCssVarName(cyan, 7)}: 2, 105, 121; + #{getCssVarName(cyan, 8)}: 0, 77, 91; + #{getCssVarName(cyan, 9)}: 1, 50, 61; + + // 蓝绿色 + #{getCssVarName(teal, 0)}: 227, 247, 244; + #{getCssVarName(teal, 1)}: 192, 240, 232; + #{getCssVarName(teal, 2)}: 135, 224, 211; + #{getCssVarName(teal, 3)}: 84, 209, 193; + #{getCssVarName(teal, 4)}: 39, 194, 176; + #{getCssVarName(teal, 5)}: 5, 179, 161; + #{getCssVarName(teal, 6)}: 0, 149, 137; + #{getCssVarName(teal, 7)}: 0, 119, 111; + #{getCssVarName(teal, 8)}: 0, 90, 85; + #{getCssVarName(teal, 9)}: 1, 60, 58; + + // 绿色 + #{getCssVarName(green, 0)}: 236, 246, 236; + #{getCssVarName(green, 1)}: 208, 240, 208; + #{getCssVarName(green, 2)}: 164, 224, 167; + #{getCssVarName(green, 3)}: 126, 209, 130; + #{getCssVarName(green, 4)}: 90, 194, 98; + #{getCssVarName(green, 5)}: 59, 179, 70; + #{getCssVarName(green, 6)}: 49, 149, 58; + #{getCssVarName(green, 7)}: 37, 119, 47; + #{getCssVarName(green, 8)}: 26, 89, 36; + #{getCssVarName(green, 9)}: 18, 60, 24; + + // 浅绿色 + #{getCssVarName(light, green, 0)}: 243, 248, 236; + #{getCssVarName(light, green, 1)}: 226, 240, 208; + #{getCssVarName(light, green, 2)}: 200, 225, 165; + #{getCssVarName(light, green, 3)}: 173, 211, 127; + #{getCssVarName(light, green, 4)}: 147, 197, 91; + #{getCssVarName(light, green, 5)}: 123, 182, 60; + #{getCssVarName(light, green, 6)}: 100, 152, 47; + #{getCssVarName(light, green, 7)}: 79, 121, 38; + #{getCssVarName(light, green, 8)}: 57, 91, 27; + #{getCssVarName(light, green, 9)}: 36, 61, 18; + + // 清柠色 + #{getCssVarName(lime, 0)}: 241, 250, 230; + #{getCssVarName(lime, 1)}: 227, 246, 197; + #{getCssVarName(lime, 2)}: 203, 237, 142; + #{getCssVarName(lime, 3)}: 183, 226, 91; + #{getCssVarName(lime, 4)}: 168, 218, 44; + #{getCssVarName(lime, 5)}: 154, 209, 0; + #{getCssVarName(lime, 6)}: 125, 174, 0; + #{getCssVarName(lime, 7)}: 99, 139, 2; + #{getCssVarName(lime, 8)}: 72, 104, 0; + #{getCssVarName(lime, 9)}: 47, 70, 0; + + // 黄色 + #{getCssVarName(yellow, 0)}: 255, 253, 234; + #{getCssVarName(yellow, 1)}: 255, 250, 203; + #{getCssVarName(yellow, 2)}: 253, 243, 152; + #{getCssVarName(yellow, 3)}: 252, 231, 101; + #{getCssVarName(yellow, 4)}: 251, 218, 49; + #{getCssVarName(yellow, 5)}: 249, 200, 0; + #{getCssVarName(yellow, 6)}: 208, 170, 0; + #{getCssVarName(yellow, 7)}: 167, 139, 0; + #{getCssVarName(yellow, 8)}: 125, 106, 0; + #{getCssVarName(yellow, 9)}: 83, 72, 0; + + // 琥珀色 + #{getCssVarName(amber, 0)}: 255, 251, 236; + #{getCssVarName(amber, 1)}: 252, 245, 206; + #{getCssVarName(amber, 2)}: 249, 232, 158; + #{getCssVarName(amber, 3)}: 246, 216, 110; + #{getCssVarName(amber, 4)}: 243, 198, 65; + #{getCssVarName(amber, 5)}: 240, 177, 20; + #{getCssVarName(amber, 6)}: 200, 138, 16; + #{getCssVarName(amber, 7)}: 160, 102, 10; + #{getCssVarName(amber, 8)}: 120, 70, 5; + #{getCssVarName(amber, 9)}: 80, 43, 3; + + // 橙色 + #{getCssVarName(orange, 0)}: 255, 243, 224; + #{getCssVarName(orange, 1)}: 255, 223, 177; + #{getCssVarName(orange, 2)}: 255, 204, 128; + #{getCssVarName(orange, 3)}: 254, 183, 77; + #{getCssVarName(orange, 4)}: 255, 167, 38; + #{getCssVarName(orange, 5)}: 255, 152, 0; + #{getCssVarName(orange, 6)}: 250, 141, 0; + #{getCssVarName(orange, 7)}: 245, 124, 2; + #{getCssVarName(orange, 8)}: 239, 108, 0; + #{getCssVarName(orange, 9)}: 230, 81, 0; + + // 灰色 + #{getCssVarName(grey, 0)}: 249, 249, 249; + #{getCssVarName(grey, 1)}: 230, 232, 234; + #{getCssVarName(grey, 2)}: 198, 202, 205; + #{getCssVarName(grey, 3)}: 167, 171, 175; + #{getCssVarName(grey, 4)}: 136, 141, 145; + #{getCssVarName(grey, 5)}: 107, 102, 116; + #{getCssVarName(grey, 6)}: 85, 91, 97; + #{getCssVarName(grey, 7)}: 65, 70, 76; + #{getCssVarName(grey, 8)}: 46, 50, 55; + #{getCssVarName(grey, 9)}: 29, 31, 35; + + + // 蓝青色 + #{getCssVarName(blue, cyan, 0)}: 217, 236, 255; + #{getCssVarName(blue, cyan, 1)}: 164, 201, 238; + #{getCssVarName(blue, cyan, 2)}: 131, 171, 212; + #{getCssVarName(blue, cyan, 3)}: 105, 148, 190; + #{getCssVarName(blue, cyan, 4)}: 85, 125, 165; + #{getCssVarName(blue, cyan, 5)}: 70, 107, 144; + #{getCssVarName(blue, cyan, 6)}: 48, 81, 115; + #{getCssVarName(blue, cyan, 7)}: 36, 65, 96; + #{getCssVarName(blue, cyan, 8)}: 26, 52, 79; + #{getCssVarName(blue, cyan, 9)}: 16, 41, 68; + + // 天蓝色 + #{getCssVarName(sky, blue, 0)}: 232, 249, 255; + #{getCssVarName(sky, blue, 1)}: 183, 232, 251; + #{getCssVarName(sky, blue, 2)}: 135, 212, 248; + #{getCssVarName(sky, blue, 3)}: 89, 190, 244; + #{getCssVarName(sky, blue, 4)}: 44, 165, 241; + #{getCssVarName(sky, blue, 5)}: 0, 137, 237; + #{getCssVarName(sky, blue, 6)}: 0, 108, 197; + #{getCssVarName(sky, blue, 7)}: 0, 81, 157; + #{getCssVarName(sky, blue, 8)}: 0, 56, 117; + #{getCssVarName(sky, blue, 9)}: 0, 34, 77; + + + // 黑、白色 + #{getCssVarName(white)}: 255, 255, 255; + #{getCssVarName(black)}: 0, 0, 0; + + // 功能色 + #{getCssVarName(color, white)}: rgba(var(#{getCssVarName(white)}),1); // 浅色模式下深色背景内容Inverse + #{getCssVarName(color, black)}: rgba(var(#{getCssVarName(black)}),1); // 深色模式下浅色背景内容Inverse + + // 主要颜色 + #{getCssVarName(color, primary)}: rgba(var(#{getCssVarName(sky, blue, 5)}),1); // 主要颜色。仅在需要非常强调的情况下使用。 + #{getCssVarName(color, primary, hover)}: rgba(var(#{getCssVarName(sky, blue, 4)}),1); // 主要颜色悬浮态 + #{getCssVarName(color, primary, active)}: rgba(var(#{getCssVarName(sky, blue, 6)}),1); // 主要颜色激活态 + #{getCssVarName(color, primary, disabled)}: rgba(var(#{getCssVarName(sky, blue, 2)}),1); // 主要颜色禁用态 + #{getCssVarName(color, primary, light, default)}: rgba(var(#{getCssVarName(sky, blue, 0)}),1); // 浅版主要颜色(多用于背景)。仅在需要非常强调的情况下使用。 + #{getCssVarName(color, primary, light, hover)}: rgba(var(#{getCssVarName(sky, blue, 1)}),1); // 浅版主要颜色悬浮态 + #{getCssVarName(color, primary, light, active)}: rgba(var(#{getCssVarName(sky, blue, 2)}),1); // 浅版主要颜色激活态 + + // todo 次要颜色 + #{getCssVarName(color, secondary)}: rgba(var(#{getCssVarName(light, blue, 5)}),1); // 次要颜色。强调作用次于主要颜色,但仍然具有强调作用。 + #{getCssVarName(color, secondary, hover)}: rgba(var(#{getCssVarName(light, blue, 6)}),1); // 次要颜色悬浮态 + #{getCssVarName(color, secondary, active)}: rgba(var(#{getCssVarName(light, blue, 7)}),1); // 次要颜色激活态 + #{getCssVarName(color, secondary, disabled)}: rgba(var(#{getCssVarName(light, blue, 2)}),1); // 次要颜色禁用态 + #{getCssVarName(color, secondary, light, default)}: rgba(var(#{getCssVarName(light, blue, 0)}),1); // 浅版次要颜色(多用于背景)。强调作用次于主要颜色,但仍然具有强调作用。 + #{getCssVarName(color, secondary, light, hover)}: rgba(var(#{getCssVarName(light, blue, 1)}),1); // 浅版次要颜色悬浮态 + #{getCssVarName(color, secondary, light, active)}: rgba(var(#{getCssVarName(light, blue, 2)}),1); // 浅版次要颜色激活态 + + // 第三颜色 + #{getCssVarName(color, tertiary)}: rgba(var(#{getCssVarName(grey, 5)}),1); // 第三颜色,可以在页面上多次使用 + #{getCssVarName(color, tertiary, hover)}: rgba(var(#{getCssVarName(grey, 4)}),1); // 第三颜色悬浮态 + #{getCssVarName(color, tertiary, active)}: rgba(var(#{getCssVarName(grey, 6)}),1); // 第三颜色激活态 + #{getCssVarName(color, tertiary, light, default)}: rgba(var(#{getCssVarName(grey, 0)}),1); // 浅版第三颜色(多用于背景),可以在页面上多次使用 + #{getCssVarName(color, tertiary, light, hover)}: rgba(var(#{getCssVarName(grey, 1)}),1); // 浅版第三颜色悬浮态 + #{getCssVarName(color, tertiary, light, active)}: rgba(var(#{getCssVarName(grey, 2)}),1); // 浅版第三颜色激活态 + + // 信息色 + #{getCssVarName(color, info)}: rgba(var(#{getCssVarName(sky, blue, 5)}),1); // 信息色, 通常用于表达客观、中立信息 + #{getCssVarName(color, info, hover)}: rgba(var(#{getCssVarName(sky, blue, 4)}),1); // 信息色悬浮态 + #{getCssVarName(color, info, active)}: rgba(var(#{getCssVarName(sky, blue, 6)}),1); // 信息色激活态 + #{getCssVarName(color, info, disabled)}: rgba(var(#{getCssVarName(sky, blue, 2)}),1); // 信息色禁用态 + #{getCssVarName(color, info, light, default)}: rgba(var(#{getCssVarName(sky, blue, 0)}),1); // 浅版信息色(多用于背景),通常用于表达客观、中立信息 + #{getCssVarName(color, info, light, hover)}: rgba(var(#{getCssVarName(sky, blue, 1)}),1); // 浅版信息色悬浮态 + #{getCssVarName(color, info, light, active)}: rgba(var(#{getCssVarName(sky, blue, 2)}),1); // 浅版信息色激活态 + + // 成功色 + #{getCssVarName(color, success)}: rgba(var(#{getCssVarName(green, 5)}),1); // 成功色,表示安全、成功、开启的状态 + #{getCssVarName(color, success, hover)}: rgba(var(#{getCssVarName(green, 4)}),1); // 成功色悬浮态 + #{getCssVarName(color, success, active)}: rgba(var(#{getCssVarName(green, 6)}),1); // 成功色激活态 + #{getCssVarName(color, success, disabled)}: rgba(var(#{getCssVarName(green, 2)}),1); // 成功色禁用态 + #{getCssVarName(color, success, light, default)}: rgba(var(#{getCssVarName(green, 0)}),1); // 浅版成功色(多用于背景),表示安全、成功、开启的状态 + #{getCssVarName(color, success, light, hover)}: rgba(var(#{getCssVarName(green, 1)}),1); // 浅版成功色悬浮态 + #{getCssVarName(color, success, light, active)}: rgba(var(#{getCssVarName(green, 2)}),1); // 浅版成功色激活态 + + // 警示色 + #{getCssVarName(color, warning)}: rgba(var(#{getCssVarName(orange, 5)}),1); // 警示色,表示警告、不安全的状态 + #{getCssVarName(color, warning, hover)}: rgba(var(#{getCssVarName(orange, 4)}),1); // 警示色悬浮态 + #{getCssVarName(color, warning, active)}: rgba(var(#{getCssVarName(orange, 6)}),1); // 警示色激活态 + #{getCssVarName(color, warning, light, default)}: rgba(var(#{getCssVarName(orange, 0)}),1); // 浅版警示色(多用于背景),表示警告、不安全的状态 + #{getCssVarName(color, warning, light, hover)}: rgba(var(#{getCssVarName(orange, 1)}),1); // 浅版警示色悬浮态 + #{getCssVarName(color, warning, light, active)}: rgba(var(#{getCssVarName(orange, 2)}),1); // 浅版警示色激活态 + + // 危险色 + #{getCssVarName(color, danger)}: rgba(var(#{getCssVarName(red, 5)}),1); // 危险色,表示危险的操作、或需要特别注意的危险信息 + #{getCssVarName(color, danger, hover)}: rgba(var(#{getCssVarName(red, 4)}),1); // 危险色悬浮态 + #{getCssVarName(color, danger, active)}: rgba(var(#{getCssVarName(red, 6)}),1); // 危险色激活态 + #{getCssVarName(color, danger, light, default)}: rgba(var(#{getCssVarName(red, 0)}),1); // 浅版危险色(多用于背景),表示危险的操作、或需要特别注意的危险信息 + #{getCssVarName(color, danger, light, hover)}: rgba(var(#{getCssVarName(red, 1)}),1); // 浅版危险色悬浮态 + #{getCssVarName(color, danger, light, active)}: rgba(var(#{getCssVarName(red, 2)}),1); // 浅版危险色激活态 + + // 文本/图标颜色 + #{getCssVarName(color, text, 0)}: rgba(var(#{getCssVarName(grey, 9)}),1); // 文本/图标颜色 - 最主要 + #{getCssVarName(color, text, 1)}: rgba(var(#{getCssVarName(grey, 7)}),1); // 文本/图标颜色 - 稍次要 + #{getCssVarName(color, text, 2)}: rgba(var(#{getCssVarName(grey, 6)}),1); // 文本/图标颜色 - 次要 + #{getCssVarName(color, text, 3)}: rgba(var(#{getCssVarName(grey, 4)}),1); // 文本/图标颜色 - 最次要 + + // 链接颜色 + #{getCssVarName(color, link)}: rgba(var(#{getCssVarName(sky, blue, 5)}),1); // 链接颜色 + #{getCssVarName(color, link, hover)}: rgba(var(#{getCssVarName(sky, blue, 4)}),1); // 链接颜色 - 悬浮态 + #{getCssVarName(color, link, active)}: rgba(var(#{getCssVarName(sky, blue, 6)}),1); // 链接颜色 - 激活态 + #{getCssVarName(color, link, visited)}: rgba(var(#{getCssVarName(sky, blue, 5)}),1); // 链接颜色 - 已访问 + + // 背景色 + #{getCssVarName(color, bg, 0)}: rgba(var(#{getCssVarName(grey, 0)}),1); // 背景色 - 最下层(底部页面) + #{getCssVarName(color, bg, 1)}: rgba(var(#{getCssVarName(white)}),1); // 背景色 - 次下层(页面中需要提升的内容) + #{getCssVarName(color, bg, 2)}: rgba(var(#{getCssVarName(white)}),1); // 背景色 - 中间层(模态等容器) + #{getCssVarName(color, bg, 3)}: rgba(var(#{getCssVarName(white)}),1); // 背景色 - 次上层(通知,Toast等) + #{getCssVarName(color, bg, 4)}: rgba(var(#{getCssVarName(white)}),1); // 背景色 - 最上层(特殊) + + // 填充色 + #{getCssVarName(color, fill, 0)}: rgba(var(#{getCssVarName(grey, 8)}),0.05); // 填充色 - 默认态 + #{getCssVarName(color, fill, 1)}: rgba(var(#{getCssVarName(grey, 8)}),0.1); // 填充色 - 悬浮态 + #{getCssVarName(color, fill, 2)}: rgba(var(#{getCssVarName(grey, 8), }),0.13); // 填充色 - 激活态 + + + // 边框 + #{getCssVarName(color, border)}: rgba(var(#{getCssVarName(grey, 9)}),0.1); // 默认描边颜色 + + // 禁用态 + #{getCssVarName(color, disabled, text)}: rgba(var(#{getCssVarName(grey, 9)}), 0.35); // 禁用态 - 文字 + #{getCssVarName(color, disabled, border)}: rgba(var(#{getCssVarName(grey, 1)}),1); // 禁用态 - 描边 + #{getCssVarName(color, disabled, bg)}: rgba(var(#{getCssVarName(grey, 1)}),1); // 禁用态 - 背景 + #{getCssVarName(color, disabled, fill)}: rgba(var(#{getCssVarName(grey, 8)}),0.04); // 禁用态 - 填充 + + // 阴影 + #{getCssVarName(color, shadow)}: rgba(var(#{getCssVarName(black)}),0.04); // 用于模拟描边的阴影颜色 + #{getCssVarName(shadow, elevated)}: + 0 0 1px rgba(0 0 0 / 30%), + 0 4px 14px rgba(0 0 0 / 10%); // 用于toast, modal, popover等需要提升层级的界面元素 + + // 字号 + #{getCssVarName('font-size', 'small')}: 12px; + #{getCssVarName('font-size', 'regular')}: 14px; + #{getCssVarName('font-size', 'header-6')}: 16px; + #{getCssVarName('font-size', 'header-5')}: 18px; + #{getCssVarName('font-size', 'header-4')}: 20px; + #{getCssVarName('font-size', 'header-3')}: 24px; + #{getCssVarName('font-size', 'header-2')}: 28px; + #{getCssVarName('font-size', 'header-1')}: 32px; + + // 字重 + #{getCssVarName('font-weight', 'light')}: 200; + #{getCssVarName('font-weight', 'regular')}: 400; + #{getCssVarName('font-weight', 'bold')}: 800; + + // 圆角 + #{getCssVarName(border, radius, extra, small)}: 2px; // 超小圆角,用于 checkbox 内圆角 + #{getCssVarName(border, radius, small)}: 4px; // 小圆角, 用于 button、tag、tabs 等大多数组件, 比较常用 + #{getCssVarName(border, radius, medium)}: 8px; // 中圆角, 用于 dropdown、scrollist、transfer 等菜单类组件 + #{getCssVarName(border, radius, large)}: 12px; // 大圆角, 用于 modal + #{getCssVarName(border, radius, circle)}: 50%; // 全圆角, 用于 avatar, badge 等组件 + #{getCssVarName(border, radius, full)}: 9999px; // 用于创建全尺寸圆角,如胶囊标签等 + + // 高度 + #{getCssVarName('height-control', 'small')}: 24px; + #{getCssVarName('height-control', 'default')}: 32px; + #{getCssVarName('height-control', 'large')}: 40px; + + // 描边尺寸 + #{getCssVarName('border-thickness')}: 0; + #{getCssVarName('border-thickness', 'control')}: 1px; + #{getCssVarName('border-thickness', 'control-focus')}: 1px; + + // 图标尺寸 + #{getCssVarName('width-icon', 'extra-small')}: 8px; + #{getCssVarName('width-icon', 'small')}: 12px; + #{getCssVarName('width-icon', 'medium')}: 16px; + #{getCssVarName('width-icon', 'large')}: 20px; + #{getCssVarName('width-icon', 'extra-large')}: 24px; + + // 间距 + #{getCssVarName('spacing', 'none')}: 0; + #{getCssVarName('spacing', 'super-tight')}: 2px; + #{getCssVarName('spacing', 'extra-tight')}: 4px; + #{getCssVarName('spacing', 'tight')}: 8px; + #{getCssVarName('spacing', 'base-tight')}: 12px; + #{getCssVarName('spacing', 'base')}: 16px; + #{getCssVarName('spacing', 'base-loose')}: 20px; + #{getCssVarName('spacing', 'loose')}: 24px; + #{getCssVarName('spacing', 'extra-loose')}: 32px; + #{getCssVarName('spacing', 'super-loose')}: 40px; +} + +// 主题下的区域性样式覆盖 + +:root.omni-oa { + + @include b(panel-app-header) { + #{getCssVarName(grey, 9)}: 255, 255, 255; + #{getCssVarName(color, text, 0)}: rgba(var(#{getCssVarName(grey, 9)}), 1); // 文本/图标颜色 - 最主要 + #{getCssVarName(color, text, 1)}: rgba(var(#{getCssVarName(grey, 9)}), .8); // 文本/图标颜色 - 稍次要 + #{getCssVarName(color, text, 2)}: rgba(var(#{getCssVarName(grey, 9)}), .6); // 文本/图标颜色 - 次要 + #{getCssVarName(color, text, 3)}: rgba(var(#{getCssVarName(grey, 9)}), .35); // 文本/图标颜色 - 最次要 + } +} diff --git a/packages/studio-theme/src/theme/tumps/index.scss b/packages/studio-theme/src/theme/tumps/index.scss new file mode 100644 index 0000000..89a8fd9 --- /dev/null +++ b/packages/studio-theme/src/theme/tumps/index.scss @@ -0,0 +1 @@ +/** 特异性最高的样式,唯一可以使用 !important **/ \ No newline at end of file diff --git a/packages/studio-theme/src/theme/var.scss b/packages/studio-theme/src/theme/var.scss new file mode 100644 index 0000000..881c534 --- /dev/null +++ b/packages/studio-theme/src/theme/var.scss @@ -0,0 +1,88 @@ +:root { + // 字号 + #{getCssVarName('font-size', 'small')}: 12px; + #{getCssVarName('font-size', 'regular')}: 14px; + #{getCssVarName('font-size', 'header-6')}: 16px; + #{getCssVarName('font-size', 'header-5')}: 18px; + #{getCssVarName('font-size', 'header-4')}: 20px; + #{getCssVarName('font-size', 'header-3')}: 24px; + #{getCssVarName('font-size', 'header-2')}: 28px; + #{getCssVarName('font-size', 'header-1')}: 32px; + + // 字重 + #{getCssVarName('font-weight', 'light')}: 200; + #{getCssVarName('font-weight', 'regular')}: 400; + #{getCssVarName('font-weight', 'bold')}: 600; + + // 圆角 + #{getCssVarName('border-radius', 'extra-small')}: 3px; + #{getCssVarName('border-radius', 'small')}: 3px; + #{getCssVarName('border-radius', 'medium')}: 6px; + #{getCssVarName('border-radius', 'large')}: 12px; + #{getCssVarName('border-radius', 'circle')}: 50%; + #{getCssVarName('border-radius', 'full')}: 9999px; + + // 阴影 + #{getCssVarName('shadow', 'elevated')}: + 0 0 1px rgb(0 0 0 / 30%), + 0 4px 14px rgb(0 0 0 / 10%); + + // 高度 + #{getCssVarName('height-control', 'small')}: 24px; + #{getCssVarName('height-control', 'default')}: 32px; + #{getCssVarName('height-control', 'large')}: 40px; + + // 描边尺寸 + #{getCssVarName('border-thickness')}: 0; + #{getCssVarName('border-thickness', 'control')}: 1px; + #{getCssVarName('border-thickness', 'control-focus')}: 1px; + + // 图标尺寸 + #{getCssVarName('width-icon', 'extra-small')}: 8px; + #{getCssVarName('width-icon', 'small')}: 12px; + #{getCssVarName('width-icon', 'medium')}: 16px; + #{getCssVarName('width-icon', 'large')}: 20px; + #{getCssVarName('width-icon', 'extra-large')}: 24px; + + // 间距 + #{getCssVarName('spacing', 'none')}: 0; + #{getCssVarName('spacing', 'super-tight')}: 2px; + #{getCssVarName('spacing', 'extra-tight')}: 4px; + #{getCssVarName('spacing', 'tight')}: 8px; + #{getCssVarName('spacing', 'base-tight')}: 12px; + #{getCssVarName('spacing', 'base')}: 16px; + #{getCssVarName('spacing', 'base-loose')}: 20px; + #{getCssVarName('spacing', 'loose')}: 24px; + #{getCssVarName('spacing', 'extra-loose')}: 32px; + #{getCssVarName('spacing', 'super-loose')}: 40px; + + // 编辑器默认 + #{getCssVarName(editor, default, placeholder-color)}: getCssVar(color, text, 2); + #{getCssVarName(editor, default, line-height)}: 32px; + #{getCssVarName(editor, default, text-size)}: getCssVar(font-size, regular); + #{getCssVarName(editor, default, text-color)}: getCssVar(color, text, 2); + #{getCssVarName(editor, default, bg-color)}: transparent; + #{getCssVarName(editor, default, border-color)}: getCssVar(color, border); + + // 编辑器悬浮 + #{getCssVarName(editor, hover, bg-color)}: getCssVar(color, fill, 1); + #{getCssVarName(editor, hover, border-color)}: getCssVar(color, primary, hover); + + // 编辑器按下 + #{getCssVarName(editor, active, bg-color)}: getCssVar(color, fill, 2); + #{getCssVarName(editor, active, border-color)}: getCssVar(editor, active, bg-color); + + // 编辑器选中 + #{getCssVarName(editor, focus, bg-color)}: getCssVar(color, fill, 0); + #{getCssVarName(editor, focus, border-color)}: getCssVar(color, focus, border); + + // 编辑器禁用 + #{getCssVarName(editor, disabled, text-color)}: getCssVar(color, disabled, text); + #{getCssVarName(editor, disabled, bg-color)}: getCssVar(color, disabled, fill); + #{getCssVarName(editor, disabled, border-color)}: getCssVar(color, disabled, border); + + // 编辑器只读 + #{getCssVarName(editor, readonly, text-color)}: getCssVar(editor, default, text-color); + #{getCssVarName(editor, readonly, bg-color)}: getCssVar(editor, default, bg-color); + #{getCssVarName(editor, readonly, border-color)}: getCssVar(editor, default, border-color); +} diff --git a/packages/studio-theme/template/control-layout/{{pages@DEDATAVIEWEXPVIEW}}.ts.hbs b/packages/studio-theme/template/control-layout/{{pages@DEDATAVIEWEXPVIEW}}.ts.hbs new file mode 100644 index 0000000..174b71f --- /dev/null +++ b/packages/studio-theme/template/control-layout/{{pages@DEDATAVIEWEXPVIEW}}.ts.hbs @@ -0,0 +1,3 @@ +{{#eq appEntity.codeName 'ControlLayoutModelRepository'}} +export default {{jsonStringify page.DSL.viewLayoutPanel 2}} +{{/eq}} \ No newline at end of file diff --git a/packages/studio-theme/template/control-layout/{{pages@DEGRIDEXPVIEW}}.ts.hbs b/packages/studio-theme/template/control-layout/{{pages@DEGRIDEXPVIEW}}.ts.hbs new file mode 100644 index 0000000..174b71f --- /dev/null +++ b/packages/studio-theme/template/control-layout/{{pages@DEGRIDEXPVIEW}}.ts.hbs @@ -0,0 +1,3 @@ +{{#eq appEntity.codeName 'ControlLayoutModelRepository'}} +export default {{jsonStringify page.DSL.viewLayoutPanel 2}} +{{/eq}} \ No newline at end of file diff --git a/packages/studio-theme/template/control-layout/{{pages@DELISTEXPVIEW}}.ts.hbs b/packages/studio-theme/template/control-layout/{{pages@DELISTEXPVIEW}}.ts.hbs new file mode 100644 index 0000000..174b71f --- /dev/null +++ b/packages/studio-theme/template/control-layout/{{pages@DELISTEXPVIEW}}.ts.hbs @@ -0,0 +1,3 @@ +{{#eq appEntity.codeName 'ControlLayoutModelRepository'}} +export default {{jsonStringify page.DSL.viewLayoutPanel 2}} +{{/eq}} \ No newline at end of file diff --git a/packages/studio-theme/template/control-layout/{{pages@DETREEEXPVIEW}}.ts.hbs b/packages/studio-theme/template/control-layout/{{pages@DETREEEXPVIEW}}.ts.hbs new file mode 100644 index 0000000..174b71f --- /dev/null +++ b/packages/studio-theme/template/control-layout/{{pages@DETREEEXPVIEW}}.ts.hbs @@ -0,0 +1,3 @@ +{{#eq appEntity.codeName 'ControlLayoutModelRepository'}} +export default {{jsonStringify page.DSL.viewLayoutPanel 2}} +{{/eq}} \ No newline at end of file diff --git a/packages/studio-theme/template/index.ts.hbs b/packages/studio-theme/template/index.ts.hbs new file mode 100644 index 0000000..8d15987 --- /dev/null +++ b/packages/studio-theme/template/index.ts.hbs @@ -0,0 +1,169 @@ +/* eslint-disable camelcase */ +// 应用视图 +import AppIndexViewLayout_BLANK_MODE from './app-index-view-layout-blank-mode'; +import AppIndexViewLayout_CENTER from './app-index-view-layout-center'; +import AppIndexViewLayout_TOP from './app-index-view-layout-top'; +import AppIndexViewLayout from './app-index-view-layout'; +import AppLoginView from './app-login-view'; +// 实体视图 +import DEChartView from './view-layout-model-repository/view-layout-model-repository-de-chart-view-layout'; +import DECalendarExpView from './view-layout-model-repository/view-layout-model-repository-de-calendar-exp-view-layout'; +import DECalendarView from './view-layout-model-repository/view-layout-model-repository-de-calendar-view-layout'; +import DEDataViewExpView from './view-layout-model-repository/view-layout-model-repository-de-data-view-exp-view-layout'; +import DEDataView from './view-layout-model-repository/view-layout-model-repository-de-data-view-layout'; +import DEKanbanView from './view-layout-model-repository/view-layout-model-repository-de-kanban-view-layout'; +import DEEdit2View from './view-layout-model-repository/view-layout-model-repository-de-edit-view-2-layout'; +import DEEdit3View from './view-layout-model-repository/view-layout-model-repository-de-edit-view-3-layout'; +import DEEdit4View from './view-layout-model-repository/view-layout-model-repository-de-edit-view-4-layout'; +import DEFormPickupDataView from './view-layout-model-repository/view-layout-model-repository-form-pickup-data-view'; +import DEEditView from './view-layout-model-repository/view-layout-model-repository-de-edit-view-layout'; +import DEGridViewExpView from './view-layout-model-repository/view-layout-model-repository-de-grid-exp-view-layout'; +import DEGridView from './view-layout-model-repository/view-layout-model-repository-de-grid-view-layout'; +import DEListViewExpView from './view-layout-model-repository/view-layout-model-repository-de-list-exp-view-layout'; +import DEListView from './view-layout-model-repository/view-layout-model-repository-de-list-view-layout'; +import DEOptView from './view-layout-model-repository/view-layout-model-repository-de-option-view-layout'; +import DEPickupGirdView from './view-layout-model-repository/view-layout-model-repository-de-pickup-grid-view-layout'; +import DEPickupTreeView from './view-layout-model-repository/view-layout-model-repository-de-pickup-tree-view-layout'; +import DEPickupView2 from './view-layout-model-repository/view-layout-model-repository-de-pickup-view-2-layout'; +import DEPickupView from './view-layout-model-repository/view-layout-model-repository-de-pickup-view-layout'; +import DETabExpView from './view-layout-model-repository/view-layout-model-repository-de-tab-exp-view-layout'; +import DETreeViewExpView from './view-layout-model-repository/view-layout-model-repository-de-tree-exp-view-layout'; +import DETreeView from './view-layout-model-repository/view-layout-model-repository-de-tree-view-layout'; +import DEWizardDView from './view-layout-model-repository/view-layout-model-repository-de-wizard-view-layout'; +import DEMPickupView from './view-layout-model-repository/view-layout-model-repository-dem-pickup-view-layout'; +import DEMPickupView2 from './view-layout-model-repository/view-layout-model-repository-dem-pickup-view-2-layout'; +import DEWFDynaActionView from './view-layout-model-repository/view-layout-model-repository-dewf-dyna-action-view-layout'; +import DEWFDynaStartView from './view-layout-model-repository/view-layout-model-repository-dewf-dyna-start-view-layout'; +import DEWFDynaEditView3 from './view-layout-model-repository/view-layout-model-repository-dewf-dyna-edit-view-3-layout'; +import DEWFDynaEditView from './view-layout-model-repository/view-layout-model-repository-dewf-dyna-edit-view-layout'; +import DEPanelView from './view-layout-model-repository/view-layout-model-repository-de-panel-view-layout'; +import DEPickupDataView from './view-layout-model-repository/view-layout-model-repository-de-pickup-data-view-layout'; +import DEIndexPickupDataView from './view-layout-model-repository/view-layout-model-repository-de-index-pickup-data-view-layout'; + +// 部件布局面板 +import GridExpBar from './control-layout/control-layout-model-repository-grid-exp-bar-layout'; +import ListExpBar from './control-layout/control-layout-model-repository-list-exp-bar-layout'; +import DataViewExpBar from './control-layout/control-layout-model-repository-data-view-exp-bar-layout'; +import TreeExpBar from './control-layout/control-layout-model-repository-tree-exp-bar-layout'; + +/** + * 安装视图默认布局 + * + * @author chitanda + * @date 2023-04-28 15:04:37 + * @export + * @param {(key: string, model: any) => void} callBack + */ +// eslint-disable-next-line @typescript-eslint/no-explicit-any +export function install(callBack: (key: string, model: any) => void): void { + /** + * 应用视图 + */ + // 应用首页视图 + callBack('APPINDEXVIEW_DEFAULT', AppIndexViewLayout); + // 应用首页视图_左侧菜单 + callBack('APPINDEXVIEW_DEFAULT_LEFT', AppIndexViewLayout); + // 应用首页视图_空白模式 + callBack('APPINDEXVIEW_DEFAULT_BLANK_MODE', AppIndexViewLayout_BLANK_MODE); + // 应用首页视图_中间菜单 + callBack('APPINDEXVIEW_DEFAULT_CENTER', AppIndexViewLayout_CENTER); + // 应用首页视图_上方菜单 + callBack('APPINDEXVIEW_DEFAULT_TOP', AppIndexViewLayout_TOP); + // 应用登录视图 + callBack('APPLOGINVIEW_DEFAULT', AppLoginView); + /** + * 实体视图 + */ + // 实体图表视图 + callBack('DECHARTVIEW_DEFAULT', DEChartView); + // 实体图表视图(部件视图) + callBack('DECHARTVIEW9_DEFAULT', DEChartView); + // 实体日历导航视图 + callBack('DECALENDAREXPVIEW_DEFAULT', DECalendarExpView); + // 实体日历视图 + callBack('DECALENDARVIEW_DEFAULT', DECalendarView); + // 实体日历视图(部件视图) + callBack('DECALENDARVIEW9_DEFAULT', DECalendarView); + // 实体卡片视图导航视图 + callBack('DEDATAVIEWEXPVIEW_DEFAULT', DEDataViewExpView); + // 实体卡片视图 + callBack('DEDATAVIEW_DEFAULT', DEDataView); + // 实体卡片视图(部件视图) + callBack('DEDATAVIEW9_DEFAULT', DEDataView); + // 实体看板视图 + callBack('DEKANBANVIEW_DEFAULT', DEKanbanView); + // 实体编辑视图(左右关系) + callBack('DEEDITVIEW2_DEFAULT', DEEdit2View); + // 实体编辑视图(分页关系) + callBack('DEEDITVIEW3_DEFAULT', DEEdit3View); + // 实体编辑视图(上下关系) + callBack('DEEDITVIEW4_DEFAULT', DEEdit4View); + // 实体表单选择数据视图 + callBack('DEFORMPICKUPDATAVIEW_DEFAULT', DEFormPickupDataView); + // 实体编辑视图 + callBack('DEEDITVIEW_DEFAULT', DEEditView); + // 实体编辑视图(部件视图) + callBack('DEEDITVIEW9_DEFAULT', DEEditView); + // 实体表格导航视图 + callBack('DEGRIDEXPVIEW_DEFAULT', DEGridViewExpView); + // 实体表格视图 + callBack('DEGRIDVIEW_DEFAULT', DEGridView); + // 实体表格视图(部件视图) + callBack('DEGRIDVIEW9_DEFAULT', DEGridView); + // 实体列表导航视图 + callBack('DELISTEXPVIEW_DEFAULT', DEListViewExpView); + // 实体列表视图 + callBack('DELISTVIEW_DEFAULT', DEListView); + // 实体列表视图(部件视图) + callBack('DELISTVIEW9_DEFAULT', DEListView); + // 实体选项操作视图 + callBack('DEOPTVIEW_DEFAULT', DEOptView); + // 实体选择表格视图(部件视图) + callBack('DEPICKUPGRIDVIEW_DEFAULT', DEPickupGirdView); + // 实体选择树视图(部件视图) + callBack('DEPICKUPTREEVIEW_DEFAULT', DEPickupTreeView); + // 实体数据选择视图(左右关系) + callBack('DEPICKUPVIEW2_DEFAULT', DEPickupView2); + // 实体数据选择视图 + callBack('DEPICKUPVIEW_DEFAULT', DEPickupView); + // 实体分页导航视图 + callBack('DETABEXPVIEW_DEFAULT', DETabExpView); + // 实体分页导航视图(部件视图) + callBack('DETABEXPVIEW9_DEFAULT', DETabExpView); + // 实体树导航视图 + callBack('DETREEEXPVIEW_DEFAULT', DETreeViewExpView); + // 实体树视图 + callBack('DETREEVIEW_DEFAULT', DETreeView); + // 实体树视图(部件视图) + callBack('DETREEVIEW9_DEFAULT', DETreeView); + // 实体向导视图 + callBack('DEWIZARDVIEW_DEFAULT', DEWizardDView); + // 实体数据多项选择视图 + callBack('DEMPICKUPVIEW_DEFAULT', DEMPickupView); + // 实体数据多项选择视图(左右关系) + callBack('DEMPICKUPVIEW2_DEFAULT', DEMPickupView2); + // 实体工作流动态操作视图 + callBack('DEWFDYNAACTIONVIEW_DEFAULT', DEWFDynaActionView); + // 实体工作流动态操作视图 + callBack('DEWFDYNASTARTVIEW_DEFAULT', DEWFDynaStartView); + // 实体工作流动态视图(分页关系) + callBack('DEWFDYNAEDITVIEW3_DEFAULT', DEWFDynaEditView3); + // 实体工作流动态视图 + callBack('DEWFDYNAEDITVIEW_DEFAULT', DEWFDynaEditView); + // 实体面板视图 + callBack('DEPANELVIEW_DEFAULT', DEPanelView); + // 实体选择数据视图 + callBack('DEPICKUPDATAVIEW_DEFAULT', DEPickupDataView); + // 实体索引关系选择数据视图(部件视图) + callBack('DEINDEXPICKUPDATAVIEW_DEFAULT', DEIndexPickupDataView); + + // 部件布局面板 + // 表格导航 + callBack('GRIDEXPBAR_DEFAULT', GridExpBar); + // 列表导航 + callBack('LISTEXPBAR_DEFAULT', ListExpBar); + // 卡片导航 + callBack('DATAVIEWEXPBAR_DEFAULT', DataViewExpBar); + // 树导航 + callBack('TREEEXPBAR_DEFAULT', TreeExpBar); +} diff --git a/packages/studio-theme/template/{{appEntities}}/{{pages@APPINDEXVIEW}}.ts.hbs b/packages/studio-theme/template/{{appEntities}}/{{pages@APPINDEXVIEW}}.ts.hbs new file mode 100644 index 0000000..567e8dd --- /dev/null +++ b/packages/studio-theme/template/{{appEntities}}/{{pages@APPINDEXVIEW}}.ts.hbs @@ -0,0 +1 @@ +export default {{jsonStringify page.DSL.viewLayoutPanel 2}} diff --git a/packages/studio-theme/template/{{appEntities}}/{{pages@APPLOGINVIEW}}.ts.hbs b/packages/studio-theme/template/{{appEntities}}/{{pages@APPLOGINVIEW}}.ts.hbs new file mode 100644 index 0000000..567e8dd --- /dev/null +++ b/packages/studio-theme/template/{{appEntities}}/{{pages@APPLOGINVIEW}}.ts.hbs @@ -0,0 +1 @@ +export default {{jsonStringify page.DSL.viewLayoutPanel 2}} diff --git a/packages/studio-theme/template/{{appEntities}}/{{pages@DECALENDAREXPVIEW}}.ts.hbs b/packages/studio-theme/template/{{appEntities}}/{{pages@DECALENDAREXPVIEW}}.ts.hbs new file mode 100644 index 0000000..60032d6 --- /dev/null +++ b/packages/studio-theme/template/{{appEntities}}/{{pages@DECALENDAREXPVIEW}}.ts.hbs @@ -0,0 +1,3 @@ +{{#eq appEntity.codeName 'ViewLayoutModelRepository'}} +export default {{jsonStringify page.DSL.viewLayoutPanel 2}} +{{/eq}} diff --git a/packages/studio-theme/template/{{appEntities}}/{{pages@DECALENDARVIEW}}.ts.hbs b/packages/studio-theme/template/{{appEntities}}/{{pages@DECALENDARVIEW}}.ts.hbs new file mode 100644 index 0000000..60032d6 --- /dev/null +++ b/packages/studio-theme/template/{{appEntities}}/{{pages@DECALENDARVIEW}}.ts.hbs @@ -0,0 +1,3 @@ +{{#eq appEntity.codeName 'ViewLayoutModelRepository'}} +export default {{jsonStringify page.DSL.viewLayoutPanel 2}} +{{/eq}} diff --git a/packages/studio-theme/template/{{appEntities}}/{{pages@DECHARTVIEW}}.ts.hbs b/packages/studio-theme/template/{{appEntities}}/{{pages@DECHARTVIEW}}.ts.hbs new file mode 100644 index 0000000..60032d6 --- /dev/null +++ b/packages/studio-theme/template/{{appEntities}}/{{pages@DECHARTVIEW}}.ts.hbs @@ -0,0 +1,3 @@ +{{#eq appEntity.codeName 'ViewLayoutModelRepository'}} +export default {{jsonStringify page.DSL.viewLayoutPanel 2}} +{{/eq}} diff --git a/packages/studio-theme/template/{{appEntities}}/{{pages@DEDATAVIEWEXPVIEW}}.ts.hbs b/packages/studio-theme/template/{{appEntities}}/{{pages@DEDATAVIEWEXPVIEW}}.ts.hbs new file mode 100644 index 0000000..60032d6 --- /dev/null +++ b/packages/studio-theme/template/{{appEntities}}/{{pages@DEDATAVIEWEXPVIEW}}.ts.hbs @@ -0,0 +1,3 @@ +{{#eq appEntity.codeName 'ViewLayoutModelRepository'}} +export default {{jsonStringify page.DSL.viewLayoutPanel 2}} +{{/eq}} diff --git a/packages/studio-theme/template/{{appEntities}}/{{pages@DEDATAVIEW}}.ts.hbs b/packages/studio-theme/template/{{appEntities}}/{{pages@DEDATAVIEW}}.ts.hbs new file mode 100644 index 0000000..60032d6 --- /dev/null +++ b/packages/studio-theme/template/{{appEntities}}/{{pages@DEDATAVIEW}}.ts.hbs @@ -0,0 +1,3 @@ +{{#eq appEntity.codeName 'ViewLayoutModelRepository'}} +export default {{jsonStringify page.DSL.viewLayoutPanel 2}} +{{/eq}} diff --git a/packages/studio-theme/template/{{appEntities}}/{{pages@DEEDITVIEW2}}.ts.hbs b/packages/studio-theme/template/{{appEntities}}/{{pages@DEEDITVIEW2}}.ts.hbs new file mode 100644 index 0000000..60032d6 --- /dev/null +++ b/packages/studio-theme/template/{{appEntities}}/{{pages@DEEDITVIEW2}}.ts.hbs @@ -0,0 +1,3 @@ +{{#eq appEntity.codeName 'ViewLayoutModelRepository'}} +export default {{jsonStringify page.DSL.viewLayoutPanel 2}} +{{/eq}} diff --git a/packages/studio-theme/template/{{appEntities}}/{{pages@DEEDITVIEW3}}.ts.hbs b/packages/studio-theme/template/{{appEntities}}/{{pages@DEEDITVIEW3}}.ts.hbs new file mode 100644 index 0000000..60032d6 --- /dev/null +++ b/packages/studio-theme/template/{{appEntities}}/{{pages@DEEDITVIEW3}}.ts.hbs @@ -0,0 +1,3 @@ +{{#eq appEntity.codeName 'ViewLayoutModelRepository'}} +export default {{jsonStringify page.DSL.viewLayoutPanel 2}} +{{/eq}} diff --git a/packages/studio-theme/template/{{appEntities}}/{{pages@DEEDITVIEW4}}.ts.hbs b/packages/studio-theme/template/{{appEntities}}/{{pages@DEEDITVIEW4}}.ts.hbs new file mode 100644 index 0000000..60032d6 --- /dev/null +++ b/packages/studio-theme/template/{{appEntities}}/{{pages@DEEDITVIEW4}}.ts.hbs @@ -0,0 +1,3 @@ +{{#eq appEntity.codeName 'ViewLayoutModelRepository'}} +export default {{jsonStringify page.DSL.viewLayoutPanel 2}} +{{/eq}} diff --git a/packages/studio-theme/template/{{appEntities}}/{{pages@DEEDITVIEW}}.ts.hbs b/packages/studio-theme/template/{{appEntities}}/{{pages@DEEDITVIEW}}.ts.hbs new file mode 100644 index 0000000..03b4119 --- /dev/null +++ b/packages/studio-theme/template/{{appEntities}}/{{pages@DEEDITVIEW}}.ts.hbs @@ -0,0 +1,3 @@ +{{#eq appEntity.codeName 'ViewLayoutModelRepository'}} +export default {{jsonStringify page.DSL.viewLayoutPanel 2}} +{{/eq}} \ No newline at end of file diff --git a/packages/studio-theme/template/{{appEntities}}/{{pages@DEFORMPICKUPDATAVIEW}}.ts.hbs b/packages/studio-theme/template/{{appEntities}}/{{pages@DEFORMPICKUPDATAVIEW}}.ts.hbs new file mode 100644 index 0000000..60032d6 --- /dev/null +++ b/packages/studio-theme/template/{{appEntities}}/{{pages@DEFORMPICKUPDATAVIEW}}.ts.hbs @@ -0,0 +1,3 @@ +{{#eq appEntity.codeName 'ViewLayoutModelRepository'}} +export default {{jsonStringify page.DSL.viewLayoutPanel 2}} +{{/eq}} diff --git a/packages/studio-theme/template/{{appEntities}}/{{pages@DEGRIDEXPVIEW}}.ts.hbs b/packages/studio-theme/template/{{appEntities}}/{{pages@DEGRIDEXPVIEW}}.ts.hbs new file mode 100644 index 0000000..60032d6 --- /dev/null +++ b/packages/studio-theme/template/{{appEntities}}/{{pages@DEGRIDEXPVIEW}}.ts.hbs @@ -0,0 +1,3 @@ +{{#eq appEntity.codeName 'ViewLayoutModelRepository'}} +export default {{jsonStringify page.DSL.viewLayoutPanel 2}} +{{/eq}} diff --git a/packages/studio-theme/template/{{appEntities}}/{{pages@DEGRIDVIEW}}.ts.hbs b/packages/studio-theme/template/{{appEntities}}/{{pages@DEGRIDVIEW}}.ts.hbs new file mode 100644 index 0000000..03b4119 --- /dev/null +++ b/packages/studio-theme/template/{{appEntities}}/{{pages@DEGRIDVIEW}}.ts.hbs @@ -0,0 +1,3 @@ +{{#eq appEntity.codeName 'ViewLayoutModelRepository'}} +export default {{jsonStringify page.DSL.viewLayoutPanel 2}} +{{/eq}} \ No newline at end of file diff --git a/packages/studio-theme/template/{{appEntities}}/{{pages@DEINDEXPICKUPDATAVIEW}}.ts.hbs b/packages/studio-theme/template/{{appEntities}}/{{pages@DEINDEXPICKUPDATAVIEW}}.ts.hbs new file mode 100644 index 0000000..60032d6 --- /dev/null +++ b/packages/studio-theme/template/{{appEntities}}/{{pages@DEINDEXPICKUPDATAVIEW}}.ts.hbs @@ -0,0 +1,3 @@ +{{#eq appEntity.codeName 'ViewLayoutModelRepository'}} +export default {{jsonStringify page.DSL.viewLayoutPanel 2}} +{{/eq}} diff --git a/packages/studio-theme/template/{{appEntities}}/{{pages@DEKANBANVIEW}}.ts.hbs b/packages/studio-theme/template/{{appEntities}}/{{pages@DEKANBANVIEW}}.ts.hbs new file mode 100644 index 0000000..60032d6 --- /dev/null +++ b/packages/studio-theme/template/{{appEntities}}/{{pages@DEKANBANVIEW}}.ts.hbs @@ -0,0 +1,3 @@ +{{#eq appEntity.codeName 'ViewLayoutModelRepository'}} +export default {{jsonStringify page.DSL.viewLayoutPanel 2}} +{{/eq}} diff --git a/packages/studio-theme/template/{{appEntities}}/{{pages@DELISTEXPVIEW}}.ts.hbs b/packages/studio-theme/template/{{appEntities}}/{{pages@DELISTEXPVIEW}}.ts.hbs new file mode 100644 index 0000000..60032d6 --- /dev/null +++ b/packages/studio-theme/template/{{appEntities}}/{{pages@DELISTEXPVIEW}}.ts.hbs @@ -0,0 +1,3 @@ +{{#eq appEntity.codeName 'ViewLayoutModelRepository'}} +export default {{jsonStringify page.DSL.viewLayoutPanel 2}} +{{/eq}} diff --git a/packages/studio-theme/template/{{appEntities}}/{{pages@DELISTVIEW}}.ts.hbs b/packages/studio-theme/template/{{appEntities}}/{{pages@DELISTVIEW}}.ts.hbs new file mode 100644 index 0000000..60032d6 --- /dev/null +++ b/packages/studio-theme/template/{{appEntities}}/{{pages@DELISTVIEW}}.ts.hbs @@ -0,0 +1,3 @@ +{{#eq appEntity.codeName 'ViewLayoutModelRepository'}} +export default {{jsonStringify page.DSL.viewLayoutPanel 2}} +{{/eq}} diff --git a/packages/studio-theme/template/{{appEntities}}/{{pages@DEMPICKUPVIEW2}}.ts.hbs b/packages/studio-theme/template/{{appEntities}}/{{pages@DEMPICKUPVIEW2}}.ts.hbs new file mode 100644 index 0000000..60032d6 --- /dev/null +++ b/packages/studio-theme/template/{{appEntities}}/{{pages@DEMPICKUPVIEW2}}.ts.hbs @@ -0,0 +1,3 @@ +{{#eq appEntity.codeName 'ViewLayoutModelRepository'}} +export default {{jsonStringify page.DSL.viewLayoutPanel 2}} +{{/eq}} diff --git a/packages/studio-theme/template/{{appEntities}}/{{pages@DEMPICKUPVIEW}}.ts.hbs b/packages/studio-theme/template/{{appEntities}}/{{pages@DEMPICKUPVIEW}}.ts.hbs new file mode 100644 index 0000000..60032d6 --- /dev/null +++ b/packages/studio-theme/template/{{appEntities}}/{{pages@DEMPICKUPVIEW}}.ts.hbs @@ -0,0 +1,3 @@ +{{#eq appEntity.codeName 'ViewLayoutModelRepository'}} +export default {{jsonStringify page.DSL.viewLayoutPanel 2}} +{{/eq}} diff --git a/packages/studio-theme/template/{{appEntities}}/{{pages@DEOPTVIEW}}.ts.hbs b/packages/studio-theme/template/{{appEntities}}/{{pages@DEOPTVIEW}}.ts.hbs new file mode 100644 index 0000000..60032d6 --- /dev/null +++ b/packages/studio-theme/template/{{appEntities}}/{{pages@DEOPTVIEW}}.ts.hbs @@ -0,0 +1,3 @@ +{{#eq appEntity.codeName 'ViewLayoutModelRepository'}} +export default {{jsonStringify page.DSL.viewLayoutPanel 2}} +{{/eq}} diff --git a/packages/studio-theme/template/{{appEntities}}/{{pages@DEPANELVIEW}}.ts.hbs b/packages/studio-theme/template/{{appEntities}}/{{pages@DEPANELVIEW}}.ts.hbs new file mode 100644 index 0000000..60032d6 --- /dev/null +++ b/packages/studio-theme/template/{{appEntities}}/{{pages@DEPANELVIEW}}.ts.hbs @@ -0,0 +1,3 @@ +{{#eq appEntity.codeName 'ViewLayoutModelRepository'}} +export default {{jsonStringify page.DSL.viewLayoutPanel 2}} +{{/eq}} diff --git a/packages/studio-theme/template/{{appEntities}}/{{pages@DEPICKUPDATAVIEW}}.ts.hbs b/packages/studio-theme/template/{{appEntities}}/{{pages@DEPICKUPDATAVIEW}}.ts.hbs new file mode 100644 index 0000000..60032d6 --- /dev/null +++ b/packages/studio-theme/template/{{appEntities}}/{{pages@DEPICKUPDATAVIEW}}.ts.hbs @@ -0,0 +1,3 @@ +{{#eq appEntity.codeName 'ViewLayoutModelRepository'}} +export default {{jsonStringify page.DSL.viewLayoutPanel 2}} +{{/eq}} diff --git a/packages/studio-theme/template/{{appEntities}}/{{pages@DEPICKUPGRIDVIEW}}.ts.hbs b/packages/studio-theme/template/{{appEntities}}/{{pages@DEPICKUPGRIDVIEW}}.ts.hbs new file mode 100644 index 0000000..60032d6 --- /dev/null +++ b/packages/studio-theme/template/{{appEntities}}/{{pages@DEPICKUPGRIDVIEW}}.ts.hbs @@ -0,0 +1,3 @@ +{{#eq appEntity.codeName 'ViewLayoutModelRepository'}} +export default {{jsonStringify page.DSL.viewLayoutPanel 2}} +{{/eq}} diff --git a/packages/studio-theme/template/{{appEntities}}/{{pages@DEPICKUPTREEVIEW}}.ts.hbs b/packages/studio-theme/template/{{appEntities}}/{{pages@DEPICKUPTREEVIEW}}.ts.hbs new file mode 100644 index 0000000..60032d6 --- /dev/null +++ b/packages/studio-theme/template/{{appEntities}}/{{pages@DEPICKUPTREEVIEW}}.ts.hbs @@ -0,0 +1,3 @@ +{{#eq appEntity.codeName 'ViewLayoutModelRepository'}} +export default {{jsonStringify page.DSL.viewLayoutPanel 2}} +{{/eq}} diff --git a/packages/studio-theme/template/{{appEntities}}/{{pages@DEPICKUPVIEW2}}.ts.hbs b/packages/studio-theme/template/{{appEntities}}/{{pages@DEPICKUPVIEW2}}.ts.hbs new file mode 100644 index 0000000..60032d6 --- /dev/null +++ b/packages/studio-theme/template/{{appEntities}}/{{pages@DEPICKUPVIEW2}}.ts.hbs @@ -0,0 +1,3 @@ +{{#eq appEntity.codeName 'ViewLayoutModelRepository'}} +export default {{jsonStringify page.DSL.viewLayoutPanel 2}} +{{/eq}} diff --git a/packages/studio-theme/template/{{appEntities}}/{{pages@DEPICKUPVIEW}}.ts.hbs b/packages/studio-theme/template/{{appEntities}}/{{pages@DEPICKUPVIEW}}.ts.hbs new file mode 100644 index 0000000..60032d6 --- /dev/null +++ b/packages/studio-theme/template/{{appEntities}}/{{pages@DEPICKUPVIEW}}.ts.hbs @@ -0,0 +1,3 @@ +{{#eq appEntity.codeName 'ViewLayoutModelRepository'}} +export default {{jsonStringify page.DSL.viewLayoutPanel 2}} +{{/eq}} diff --git a/packages/studio-theme/template/{{appEntities}}/{{pages@DETABEXPVIEW}}.ts.hbs b/packages/studio-theme/template/{{appEntities}}/{{pages@DETABEXPVIEW}}.ts.hbs new file mode 100644 index 0000000..60032d6 --- /dev/null +++ b/packages/studio-theme/template/{{appEntities}}/{{pages@DETABEXPVIEW}}.ts.hbs @@ -0,0 +1,3 @@ +{{#eq appEntity.codeName 'ViewLayoutModelRepository'}} +export default {{jsonStringify page.DSL.viewLayoutPanel 2}} +{{/eq}} diff --git a/packages/studio-theme/template/{{appEntities}}/{{pages@DETREEEXPVIEW}}.ts.hbs b/packages/studio-theme/template/{{appEntities}}/{{pages@DETREEEXPVIEW}}.ts.hbs new file mode 100644 index 0000000..60032d6 --- /dev/null +++ b/packages/studio-theme/template/{{appEntities}}/{{pages@DETREEEXPVIEW}}.ts.hbs @@ -0,0 +1,3 @@ +{{#eq appEntity.codeName 'ViewLayoutModelRepository'}} +export default {{jsonStringify page.DSL.viewLayoutPanel 2}} +{{/eq}} diff --git a/packages/studio-theme/template/{{appEntities}}/{{pages@DETREEVIEW}}.ts.hbs b/packages/studio-theme/template/{{appEntities}}/{{pages@DETREEVIEW}}.ts.hbs new file mode 100644 index 0000000..60032d6 --- /dev/null +++ b/packages/studio-theme/template/{{appEntities}}/{{pages@DETREEVIEW}}.ts.hbs @@ -0,0 +1,3 @@ +{{#eq appEntity.codeName 'ViewLayoutModelRepository'}} +export default {{jsonStringify page.DSL.viewLayoutPanel 2}} +{{/eq}} diff --git a/packages/studio-theme/template/{{appEntities}}/{{pages@DEWFDYNAACTIONVIEW}}.ts.hbs b/packages/studio-theme/template/{{appEntities}}/{{pages@DEWFDYNAACTIONVIEW}}.ts.hbs new file mode 100644 index 0000000..60032d6 --- /dev/null +++ b/packages/studio-theme/template/{{appEntities}}/{{pages@DEWFDYNAACTIONVIEW}}.ts.hbs @@ -0,0 +1,3 @@ +{{#eq appEntity.codeName 'ViewLayoutModelRepository'}} +export default {{jsonStringify page.DSL.viewLayoutPanel 2}} +{{/eq}} diff --git a/packages/studio-theme/template/{{appEntities}}/{{pages@DEWFDYNAEDITVIEW3}}.ts.hbs b/packages/studio-theme/template/{{appEntities}}/{{pages@DEWFDYNAEDITVIEW3}}.ts.hbs new file mode 100644 index 0000000..60032d6 --- /dev/null +++ b/packages/studio-theme/template/{{appEntities}}/{{pages@DEWFDYNAEDITVIEW3}}.ts.hbs @@ -0,0 +1,3 @@ +{{#eq appEntity.codeName 'ViewLayoutModelRepository'}} +export default {{jsonStringify page.DSL.viewLayoutPanel 2}} +{{/eq}} diff --git a/packages/studio-theme/template/{{appEntities}}/{{pages@DEWFDYNAEDITVIEW}}.ts.hbs b/packages/studio-theme/template/{{appEntities}}/{{pages@DEWFDYNAEDITVIEW}}.ts.hbs new file mode 100644 index 0000000..60032d6 --- /dev/null +++ b/packages/studio-theme/template/{{appEntities}}/{{pages@DEWFDYNAEDITVIEW}}.ts.hbs @@ -0,0 +1,3 @@ +{{#eq appEntity.codeName 'ViewLayoutModelRepository'}} +export default {{jsonStringify page.DSL.viewLayoutPanel 2}} +{{/eq}} diff --git a/packages/studio-theme/template/{{appEntities}}/{{pages@DEWFDYNASTARTVIEW}}.ts.hbs b/packages/studio-theme/template/{{appEntities}}/{{pages@DEWFDYNASTARTVIEW}}.ts.hbs new file mode 100644 index 0000000..60032d6 --- /dev/null +++ b/packages/studio-theme/template/{{appEntities}}/{{pages@DEWFDYNASTARTVIEW}}.ts.hbs @@ -0,0 +1,3 @@ +{{#eq appEntity.codeName 'ViewLayoutModelRepository'}} +export default {{jsonStringify page.DSL.viewLayoutPanel 2}} +{{/eq}} diff --git a/packages/studio-theme/template/{{appEntities}}/{{pages@DEWIZARDVIEW}}.ts.hbs b/packages/studio-theme/template/{{appEntities}}/{{pages@DEWIZARDVIEW}}.ts.hbs new file mode 100644 index 0000000..60032d6 --- /dev/null +++ b/packages/studio-theme/template/{{appEntities}}/{{pages@DEWIZARDVIEW}}.ts.hbs @@ -0,0 +1,3 @@ +{{#eq appEntity.codeName 'ViewLayoutModelRepository'}} +export default {{jsonStringify page.DSL.viewLayoutPanel 2}} +{{/eq}} diff --git a/packages/studio-theme/tsconfig.json b/packages/studio-theme/tsconfig.json new file mode 100644 index 0000000..bd27d3c --- /dev/null +++ b/packages/studio-theme/tsconfig.json @@ -0,0 +1,14 @@ +{ + "extends": "../../tsconfig.json", + "compilerOptions": { + "rootDir": "src", + "declarationDir": "es", + }, + "include": [ + "src/**/*.ts" + ], + "exclude": [ + "node_modules", + "test" + ] +} diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 96ff6be..66d5e85 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -114,6 +114,55 @@ importers: specifier: 0.1.23 version: 0.1.23 + packages/studio-theme: + dependencies: + '@ibiz-template/core': + specifier: ^0.1.24 + version: 0.1.24(axios@1.5.0)(lodash-es@4.17.21)(qs@6.11.2)(qx-util@0.4.8)(ramda@0.29.0) + '@ibiz-template/model-helper': + specifier: ^0.1.28 + version: 0.1.28(@ibiz-template/runtime@0.1.28) + '@ibiz-template/runtime': + specifier: ^0.1.28 + version: 0.1.28(@ibiz-template/core@0.1.24)(@ibiz/model-core@0.0.18)(async-validator@4.2.5)(dayjs@1.11.10)(echarts@5.4.3)(handlebars@4.7.8)(lodash-es@4.17.21)(path-browserify@1.0.1)(qs@6.11.2)(qx-util@0.4.8)(ramda@0.29.0) + '@ibiz-template/theme': + specifier: ^0.1.24 + version: 0.1.24 + '@ibiz-template/vue3-util': + specifier: ^0.1.28 + version: 0.1.28(@ibiz-template/core@0.1.24)(@ibiz-template/runtime@0.1.28)(@ibiz/model-core@0.0.18)(path-browserify@1.0.1)(qs@6.11.2)(qx-util@0.4.8)(ramda@0.29.0)(vue-router@4.2.5)(vue@3.3.4) + '@ibiz/model-core': + specifier: ^0.0.18 + version: 0.0.18 + element-plus: + specifier: ^2.3.14 + version: 2.3.14(vue@3.3.4) + pinia: + specifier: ^2.1.6 + version: 2.1.6(typescript@5.2.2)(vue@3.3.4) + qx-util: + specifier: ^0.4.8 + version: 0.4.8 + vue: + specifier: ^3.3.4 + version: 3.3.4 + vue-i18n: + specifier: ^9.4.1 + version: 9.4.1(vue@3.3.4) + vue-router: + specifier: ^4.2.4 + version: 4.2.5(vue@3.3.4) + devDependencies: + typescript: + specifier: ^5.2.2 + version: 5.2.2 + vite: + specifier: ^4.4.9 + version: 4.4.9(@types/node@20.6.2)(sass@1.67.0) + vue-tsc: + specifier: ^1.8.11 + version: 1.8.11(typescript@5.2.2) + packages/web-theme: devDependencies: '@ibiz-template/theme': @@ -321,12 +370,10 @@ packages: /@babel/helper-string-parser@7.21.5: resolution: {integrity: sha512-5pTUx3hAJaZIdW99sJ6ZUUgWq/Y+Hja7TowEnLNMm1VivRgZQL3vpBY3qUACVsvw+yQU6+YgfBVmcbLaZtrA1w==} engines: {node: '>=6.9.0'} - dev: true /@babel/helper-validator-identifier@7.19.1: resolution: {integrity: sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==} engines: {node: '>=6.9.0'} - dev: true /@babel/helper-validator-option@7.21.0: resolution: {integrity: sha512-rmL/B8/f0mKS2baE9ZpyTcTavvEuWhTTW8amjzXNvYG4AwBsqTLikfXsEofsJEfKHf+HQVQbFOHy6o+4cnC/fQ==} @@ -359,7 +406,6 @@ packages: hasBin: true dependencies: '@babel/types': 7.22.3 - dev: true /@babel/plugin-syntax-jsx@7.21.4(@babel/core@7.22.1): resolution: {integrity: sha512-5hewiLct5OKyh6PLKEYaFclcqtIgCb6bmELouxjF6up5q3Sov7rOayW4RwhbaBL0dit8rA80GNfY+UuDp2mBbQ==} @@ -430,7 +476,6 @@ packages: '@babel/helper-string-parser': 7.21.5 '@babel/helper-validator-identifier': 7.19.1 to-fast-properties: 2.0.0 - dev: true /@commitlint/cli@17.7.1: resolution: {integrity: sha512-BCm/AT06SNCQtvFv921iNhudOHuY16LswT0R3OeolVGLk8oP+Rk9TfQfgjH7QPMjhvp76bNqGFEcpKojxUNW1g==} @@ -641,6 +686,19 @@ packages: postcss-selector-parser: 6.0.13 dev: true + /@ctrl/tinycolor@3.6.1: + resolution: {integrity: sha512-SITSV6aIXsuVNV3f3O0f2n/cgyEDWoSqtZMYiAmcsYHydcKrOz3gUxB/iXd/Qf08+IZX4KpgNbvUdMBmWz+kcA==} + engines: {node: '>=10'} + dev: false + + /@element-plus/icons-vue@2.1.0(vue@3.3.4): + resolution: {integrity: sha512-PSBn3elNoanENc1vnCfh+3WA9fimRC7n+fWkf3rE5jvv+aBohNHABC/KAR5KWPecxWxDTVT1ERpRbOMRcOV/vA==} + peerDependencies: + vue: ^3.2.0 + dependencies: + vue: 3.3.4 + dev: false + /@esbuild/android-arm64@0.18.12: resolution: {integrity: sha512-BMAlczRqC/LUt2P97E4apTBbkvS9JTJnp2DKFbCwpZ8vBvXVbNdqmvzW/OsdtI/+mGr+apkkpqGM8WecLkPgrA==} engines: {node: '>=12'} @@ -1074,6 +1132,23 @@ packages: engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dev: true + /@floating-ui/core@1.5.0: + resolution: {integrity: sha512-kK1h4m36DQ0UHGj5Ah4db7R0rHemTqqO0QLvUqi1/mUUp3LuAWbWxdxSIf/XsnH9VS6rRVPLJCncjRzUvyCLXg==} + dependencies: + '@floating-ui/utils': 0.1.4 + dev: false + + /@floating-ui/dom@1.5.3: + resolution: {integrity: sha512-ClAbQnEqJAKCJOEbbLo5IUlZHkNszqhuxS4fHAVxRPXPya6Ysf2G8KypnYcOTpx6I8xcgF9bbHb6g/2KpbV8qA==} + dependencies: + '@floating-ui/core': 1.5.0 + '@floating-ui/utils': 0.1.4 + dev: false + + /@floating-ui/utils@0.1.4: + resolution: {integrity: sha512-qprfWkn82Iw821mcKofJ5Pk9wgioHicxcQMxx+5zt5GSKoqdWvgG5AxVmpmUUjzTLPVSH5auBrhI93Deayn/DA==} + dev: false + /@humanwhocodes/config-array@0.11.11: resolution: {integrity: sha512-N2brEuAadi0CcdeMXUkhbZB84eskAc8MEX1By6qEchoVywSgXPIjou4rYsl0V3Hj0ZnuGycGCjdNgockbzeWNA==} engines: {node: '>=10.10.0'} @@ -1177,13 +1252,106 @@ packages: - vue dev: true + /@ibiz-template/core@0.1.24(axios@1.5.0)(lodash-es@4.17.21)(qs@6.11.2)(qx-util@0.4.8)(ramda@0.29.0): + resolution: {integrity: sha512-XS0n/9zhTFjCOtNSJiTSEs6QZRsct0gPnmJ2+KP0dRofdDii1oTNcDWqmm6ngP3GNDkrMj321aY9NJe7znIJSA==} + peerDependencies: + axios: ^1.4.0 + lodash-es: ^4.17.21 + qs: ^6.11.0 + qx-util: ^0.4.8 + ramda: ^0.29.0 + dependencies: + axios: 1.5.0 + lodash-es: 4.17.21 + loglevel: 1.8.1 + loglevel-plugin-prefix: 0.8.4 + qs: 6.11.2 + qx-util: 0.4.8 + ramda: 0.29.0 + dev: false + + /@ibiz-template/model-helper@0.1.28(@ibiz-template/runtime@0.1.28): + resolution: {integrity: sha512-s5uMQfsvlpkzcYCgYN521JuOoABMuRqGHGLk5sJ6+xIkKY7bQLKIQtJiRP/1e4sL/sKBWJKua/4CRaysfayT+Q==} + peerDependencies: + '@ibiz-template/runtime': ^0.1.0 + dependencies: + '@ibiz-template/runtime': 0.1.28(@ibiz-template/core@0.1.24)(@ibiz/model-core@0.0.18)(async-validator@4.2.5)(dayjs@1.11.10)(echarts@5.4.3)(handlebars@4.7.8)(lodash-es@4.17.21)(path-browserify@1.0.1)(qs@6.11.2)(qx-util@0.4.8)(ramda@0.29.0) + '@ibiz/model-core': 0.0.18 + '@ibiz/rt-model-api': 0.1.19 + pluralize: 8.0.0 + dev: false + + /@ibiz-template/runtime@0.1.28(@ibiz-template/core@0.1.24)(@ibiz/model-core@0.0.18)(async-validator@4.2.5)(dayjs@1.11.10)(echarts@5.4.3)(handlebars@4.7.8)(lodash-es@4.17.21)(path-browserify@1.0.1)(qs@6.11.2)(qx-util@0.4.8)(ramda@0.29.0): + resolution: {integrity: sha512-R39T0vkJTEtaJHE1q3Hh59BA51bjnNgWY3nbUqxGpmVAFsPIO/FlvCTqTXWSmP3wH5lLuEIaFGr0w8r8S/ZIQg==} + peerDependencies: + '@ibiz-template/core': ^0.1.0 + '@ibiz/model-core': ^0.0.18 + async-validator: ^4.2.5 + dayjs: ^1.11.7 + echarts: ^5.4.3 + handlebars: ^4.7.8 + lodash-es: ^4.17.21 + path-browserify: ^1.0.1 + qs: ^6.11.0 + qx-util: ^0.4.8 + ramda: ^0.29.0 + dependencies: + '@ibiz-template/core': 0.1.24(axios@1.5.0)(lodash-es@4.17.21)(qs@6.11.2)(qx-util@0.4.8)(ramda@0.29.0) + '@ibiz/model-core': 0.0.18 + async-validator: 4.2.5 + dayjs: 1.11.10 + echarts: 5.4.3 + handlebars: 4.7.8 + lodash-es: 4.17.21 + path-browserify: 1.0.1 + qs: 6.11.2 + qx-util: 0.4.8 + ramda: 0.29.0 + dev: false + /@ibiz-template/theme@0.1.23: resolution: {integrity: sha512-6/0qOpdWm3RKvfSBDUX0OnT/NCAqWB8Dp/OWU5Q0FJP5npXfif/mj+fIvWG648VtBIRiQCBeeWfekyenSIaubA==} + /@ibiz-template/theme@0.1.24: + resolution: {integrity: sha512-DbKmxddgeUa1DoX2hPGbS9POE8DfyCqpJByZ9vzIDCPScRxDW9TV9N/kTINBedwSz+o+gx3IYH6u/9F+OHBNgw==} + dev: false + + /@ibiz-template/vue3-util@0.1.28(@ibiz-template/core@0.1.24)(@ibiz-template/runtime@0.1.28)(@ibiz/model-core@0.0.18)(path-browserify@1.0.1)(qs@6.11.2)(qx-util@0.4.8)(ramda@0.29.0)(vue-router@4.2.5)(vue@3.3.4): + resolution: {integrity: sha512-Wii0V62+5C5AQXDOaG1+OTXdhV4WfVKlmWNT7S8VBXidHiWatDQPkonJBJb1AJceY93rbJ7wbNc+Z5h5CbT0Bw==} + peerDependencies: + '@ibiz-template/core': ^0.1.0 + '@ibiz-template/runtime': ^0.1.0 + '@ibiz/model-core': ^0.0.18 + path-browserify: ^1.0.1 + qs: ^6.11.1 + qx-util: ^0.4.8 + ramda: ^0.29.0 + vue: ^3.3.4 + vue-router: ^4.2.4 + dependencies: + '@ibiz-template/core': 0.1.24(axios@1.5.0)(lodash-es@4.17.21)(qs@6.11.2)(qx-util@0.4.8)(ramda@0.29.0) + '@ibiz-template/runtime': 0.1.28(@ibiz-template/core@0.1.24)(@ibiz/model-core@0.0.18)(async-validator@4.2.5)(dayjs@1.11.10)(echarts@5.4.3)(handlebars@4.7.8)(lodash-es@4.17.21)(path-browserify@1.0.1)(qs@6.11.2)(qx-util@0.4.8)(ramda@0.29.0) + '@ibiz/model-core': 0.0.18 + path-browserify: 1.0.1 + qs: 6.11.2 + qx-util: 0.4.8 + ramda: 0.29.0 + vue: 3.3.4 + vue-router: 4.2.5(vue@3.3.4) + dev: false + + /@ibiz/model-core@0.0.18: + resolution: {integrity: sha512-J0eLN3vSp3AEoNhm18TTN6Oza0N5rFcBN5/2w+3kooEvBMbNgJpPy5EJrrFyTbZU2Q4SOFQTCXLWucRS93lgfA==} + dev: false + /@ibiz/rt-model-api@0.1.14: resolution: {integrity: sha512-VeTFwtnhEeO6taO37elZSQpukcDoBGomBrl71ycp9fesKIRwXcd0PI15SPlfhbh1LDUalc52DhvEr8excYVMcA==} dev: true + /@ibiz/rt-model-api@0.1.19: + resolution: {integrity: sha512-49VtBB8MuZiyVZLNtqa2AwOdO6bhyrbN8V1o8UfDXfPGkuPVV6lyxxpUIrj3l0BKJFMnfoT3HwgBCwHVb5Gbdw==} + dev: false + /@ibizlab/cli@0.2.0(@ibizlab/model@0.2.15): resolution: {integrity: sha512-wuZ6fFPp8tnozNQU6DwsDXWl1S6OkakjGH4CBaVLTp/MEciGEO+euSMvbdgGNTTJoyjQCoItoI2ImEUPRAM21Q==} hasBin: true @@ -1267,6 +1435,27 @@ packages: qx-util: 0.4.8 dev: true + /@intlify/core-base@9.4.1: + resolution: {integrity: sha512-WIwx+elsZbxSMxRG5+LC+utRohFvmZMoDevfKOfnYMLbpCjCSavqTfHJAtfsY6ruowzqXeKkeLhRHbYbjoJx5g==} + engines: {node: '>= 16'} + dependencies: + '@intlify/message-compiler': 9.4.1 + '@intlify/shared': 9.4.1 + dev: false + + /@intlify/message-compiler@9.4.1: + resolution: {integrity: sha512-aN2N+dUx320108QhH51Ycd2LEpZ+NKbzyQ2kjjhqMcxhHdxtOnkgdx+MDBhOy/CObwBmhC3Nygzc6hNlfKvPNw==} + engines: {node: '>= 16'} + dependencies: + '@intlify/shared': 9.4.1 + source-map-js: 1.0.2 + dev: false + + /@intlify/shared@9.4.1: + resolution: {integrity: sha512-A51elBmZWf1FS80inf/32diO9DeXoqg9GR9aUDHFcfHoNDuT46Q+fpPOdj8jiJnSHSBh8E1E+6qWRhAZXdK3Ng==} + engines: {node: '>= 16'} + dev: false + /@isaacs/cliui@8.0.2: resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==} engines: {node: '>=12'} @@ -1304,7 +1493,6 @@ packages: /@jridgewell/sourcemap-codec@1.4.15: resolution: {integrity: sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==} - dev: true /@jridgewell/trace-mapping@0.3.18: resolution: {integrity: sha512-w+niJYzMHdd7USdiH2U6869nqhD2nbfZXND5Yp93qIbEmnDNk7PD48o+YchRVpzMU7M6jVCbenTR7PA1FLQ9pA==} @@ -1440,6 +1628,10 @@ packages: rollup: 3.28.0 dev: true + /@sxzz/popperjs-es@2.11.7: + resolution: {integrity: sha512-Ccy0NlLkzr0Ex2FKvh2X+OyERHXJ88XJ1MXtsI9y9fGexlaXaVTPzBCRBwIxFkORuOb+uBqeu+RqnpgYTEZRUQ==} + dev: false + /@tsconfig/node10@1.0.9: resolution: {integrity: sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA==} dev: true @@ -1481,6 +1673,16 @@ packages: '@types/node': 20.6.2 dev: true + /@types/lodash-es@4.17.9: + resolution: {integrity: sha512-ZTcmhiI3NNU7dEvWLZJkzG6ao49zOIjEgIE0RgV7wbPxU0f2xT3VSAHw2gmst8swH6V0YkLRGp4qPlX/6I90MQ==} + dependencies: + '@types/lodash': 4.14.199 + dev: false + + /@types/lodash@4.14.199: + resolution: {integrity: sha512-Vrjz5N5Ia4SEzWWgIVwnHNEnb1UE1XMkvY5DGXrAeOGE9imk0hgTHh5GyDjLDJi9OTCn9oo9dXH1uToK1VRfrg==} + dev: false + /@types/minimist@1.2.2: resolution: {integrity: sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ==} dev: true @@ -1515,6 +1717,10 @@ packages: resolution: {integrity: sha512-G8hZ6XJiHnuhQKR7ZmysCeJWE08o8T0AXtk5darsCaTVsYZhhgUrq53jizaR2FvsoeCwJhlmwTjkXBY5Pn/ZHw==} dev: true + /@types/web-bluetooth@0.0.16: + resolution: {integrity: sha512-oh8q2Zc32S6gd/j50GowEjKLoOVOwHP/bWVjKJInBwQqdOYMdPrf1oVlelTlyfFK3CKxL1uahMDAr+vy8T7yMQ==} + dev: false + /@typescript-eslint/eslint-plugin@6.7.0(@typescript-eslint/parser@6.7.0)(eslint@8.49.0)(typescript@5.2.2): resolution: {integrity: sha512-gUqtknHm0TDs1LhY12K2NA3Rmlmp88jK9Tx8vGZMfHeNMLE3GH2e9TRub+y+SOjuYgtOmok+wt1AyDPZqxbNag==} engines: {node: ^16.0.0 || >=18.0.0} @@ -1719,14 +1925,12 @@ packages: '@vue/shared': 3.3.4 estree-walker: 2.0.2 source-map-js: 1.0.2 - dev: true /@vue/compiler-dom@3.3.4: resolution: {integrity: sha512-wyM+OjOVpuUukIq6p5+nwHYtj9cFroz9cwkfmP9O1nzH68BenTTv0u7/ndggT8cIQlnBeOo6sUT/gvHcIkLA5w==} dependencies: '@vue/compiler-core': 3.3.4 '@vue/shared': 3.3.4 - dev: true /@vue/compiler-sfc@3.3.4: resolution: {integrity: sha512-6y/d8uw+5TkCuzBkgLS0v3lSM3hJDntFEiUORM11pQ/hKvkhSKZrXW6i69UyXlJQisJxuUEJKAWEqWbWsLeNKQ==} @@ -1741,14 +1945,16 @@ packages: magic-string: 0.30.0 postcss: 8.4.29 source-map-js: 1.0.2 - dev: true /@vue/compiler-ssr@3.3.4: resolution: {integrity: sha512-m0v6oKpup2nMSehwA6Uuu+j+wEwcy7QmwMkVNVfrV9P2qE5KshC6RwOCq8fjGS/Eak/uNb8AaWekfiXxbBB6gQ==} dependencies: '@vue/compiler-dom': 3.3.4 '@vue/shared': 3.3.4 - dev: true + + /@vue/devtools-api@6.5.0: + resolution: {integrity: sha512-o9KfBeaBmCKl10usN4crU53fYtC1r7jJwdGKjPT24t348rHxgfpZ0xL3Xm/gLUYnc0oTp8LAmrxOeLyu6tbk2Q==} + dev: false /@vue/language-core@1.8.11(typescript@5.2.2): resolution: {integrity: sha512-+MZOBGqGwfld6hpo0DB47x8eNM0dNqk15ZdfOhj19CpvuYuOWCeVdOEGZunKDyo3QLkTn3kLOSysJzg7FDOQBA==} @@ -1777,20 +1983,17 @@ packages: '@vue/shared': 3.3.4 estree-walker: 2.0.2 magic-string: 0.30.0 - dev: true /@vue/reactivity@3.3.4: resolution: {integrity: sha512-kLTDLwd0B1jG08NBF3R5rqULtv/f8x3rOFByTDz4J53ttIQEDmALqKqXY0J+XQeN0aV2FBxY8nJDf88yvOPAqQ==} dependencies: '@vue/shared': 3.3.4 - dev: true /@vue/runtime-core@3.3.4: resolution: {integrity: sha512-R+bqxMN6pWO7zGI4OMlmvePOdP2c93GsHFM/siJI7O2nxFRzj55pLwkpCedEY+bTMgp5miZ8CxfIZo3S+gFqvA==} dependencies: '@vue/reactivity': 3.3.4 '@vue/shared': 3.3.4 - dev: true /@vue/runtime-dom@3.3.4: resolution: {integrity: sha512-Aj5bTJ3u5sFsUckRghsNjVTtxZQ1OyMWCr5dZRAPijF/0Vy4xEoRCwLyHXcj4D0UFbJ4lbx3gPTgg06K/GnPnQ==} @@ -1798,7 +2001,6 @@ packages: '@vue/runtime-core': 3.3.4 '@vue/shared': 3.3.4 csstype: 3.1.2 - dev: true /@vue/server-renderer@3.3.4(vue@3.3.4): resolution: {integrity: sha512-Q6jDDzR23ViIb67v+vM1Dqntu+HUexQcsWKhhQa4ARVzxOY2HbC7QRW/ggkDBd5BU+uM1sV6XOAP0b216o34JQ==} @@ -1808,11 +2010,9 @@ packages: '@vue/compiler-ssr': 3.3.4 '@vue/shared': 3.3.4 vue: 3.3.4 - dev: true /@vue/shared@3.3.4: resolution: {integrity: sha512-7OjdcV8vQ74eiz1TZLzZP4JwqM5fA94K6yntPS5Z25r9HDuGNzaGdgvwKYq6S+MxwF0TFRwe50fIR/MYnakdkQ==} - dev: true /@vue/typescript@1.8.11(typescript@5.2.2): resolution: {integrity: sha512-skUmMDiPUUtu1flPmf2YybF+PX8IzBtMioQOaNn6Ck/RhdrPJGj1AX/7s3Buf9G6ln+/KHR1XQuti/FFxw5XVA==} @@ -1823,6 +2023,31 @@ packages: - typescript dev: true + /@vueuse/core@9.13.0(vue@3.3.4): + resolution: {integrity: sha512-pujnclbeHWxxPRqXWmdkKV5OX4Wk4YeK7wusHqRwU0Q7EFusHoqNA/aPhB6KCh9hEqJkLAJo7bb0Lh9b+OIVzw==} + dependencies: + '@types/web-bluetooth': 0.0.16 + '@vueuse/metadata': 9.13.0 + '@vueuse/shared': 9.13.0(vue@3.3.4) + vue-demi: 0.14.6(vue@3.3.4) + transitivePeerDependencies: + - '@vue/composition-api' + - vue + dev: false + + /@vueuse/metadata@9.13.0: + resolution: {integrity: sha512-gdU7TKNAUVlXXLbaF+ZCfte8BjRJQWPCa2J55+7/h+yDtzw3vOoGQDRXzI6pyKyo6bXFT5/QoPE4hAknExjRLQ==} + dev: false + + /@vueuse/shared@9.13.0(vue@3.3.4): + resolution: {integrity: sha512-UrnhU+Cnufu4S6JLCPZnkWh0WwZGUp72ktOF2DFptMlOs3TOdVv8xJN53zhHGARmVOsz5KqOls09+J1NR6sBKw==} + dependencies: + vue-demi: 0.14.6(vue@3.3.4) + transitivePeerDependencies: + - '@vue/composition-api' + - vue + dev: false + /JSONStream@1.3.5: resolution: {integrity: sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==} hasBin: true @@ -2151,13 +2376,21 @@ packages: async-done: 1.3.2 dev: true + /async-validator@4.2.5: + resolution: {integrity: sha512-7HhHjtERjqlNbZtqNqy2rckN/SpOOlmDliet+lP7k+eKZEjPk3DgyeU9lIXLdeLz0uBbbVp+9Qdow9wJWgwwfg==} + dev: false + + /asynckit@0.4.0: + resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==} + dev: false + /atob@2.1.2: resolution: {integrity: sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==} engines: {node: '>= 4.5.0'} hasBin: true dev: true - /autoprefixer@10.4.14(postcss@8.4.26): + /autoprefixer@10.4.14(postcss@8.4.29): resolution: {integrity: sha512-FQzyfOsTlwVzjHxKEqRIAdJx9niO6VCBCoEwax/VLSoQF29ggECcPuBqUMZ+u8jCZOPSy8b8/8KnuFbp0SaFZQ==} engines: {node: ^10 || ^12 || >=14} hasBin: true @@ -2169,7 +2402,7 @@ packages: fraction.js: 4.2.0 normalize-range: 0.1.2 picocolors: 1.0.0 - postcss: 8.4.26 + postcss: 8.4.29 postcss-value-parser: 4.2.0 dev: true @@ -2178,6 +2411,16 @@ packages: engines: {node: '>= 0.4'} dev: true + /axios@1.5.0: + resolution: {integrity: sha512-D4DdjDo5CY50Qms0qGQTTw6Q44jl7zRwY7bthds06pUGfChBCTcQs+N743eFWGEd6pRTMd6A+I87aWyFV5wiZQ==} + dependencies: + follow-redirects: 1.15.3 + form-data: 4.0.0 + proxy-from-env: 1.1.0 + transitivePeerDependencies: + - debug + dev: false + /bach@1.2.0: resolution: {integrity: sha512-bZOOfCb3gXBXbTFXq3OZtGR88LwGeJvzu6szttaIzymOTS4ZttBNOWSv7aLZja2EMycKtRYV0Oa8SNKH/zkxvg==} engines: {node: '>= 0.10'} @@ -2349,7 +2592,6 @@ packages: dependencies: function-bind: 1.1.1 get-intrinsic: 1.2.0 - dev: true /callsites@3.1.0: resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} @@ -2579,6 +2821,13 @@ packages: resolution: {integrity: sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==} dev: true + /combined-stream@1.0.8: + resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==} + engines: {node: '>= 0.8'} + dependencies: + delayed-stream: 1.0.0 + dev: false + /commander@11.0.0: resolution: {integrity: sha512-9HMlXtt/BNoYr8ooyjjNRdIilOTkVJXB+GhxMTtOKwk0R4j4lS4NpjuqmRxroBfnfTSHQIHQB7wryHhXarNjmQ==} engines: {node: '>=16'} @@ -2730,7 +2979,6 @@ packages: /csstype@3.1.2: resolution: {integrity: sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ==} - dev: true /d@1.0.1: resolution: {integrity: sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA==} @@ -2744,6 +2992,10 @@ packages: engines: {node: '>=8'} dev: true + /dayjs@1.11.10: + resolution: {integrity: sha512-vjAczensTgRcqDERK0SR2XMwsF/tSvnvlv6VcF2GIhg6Sx4yOIt/irsr1RDJsKiIyBzJDpCoXiWWq28MqH2cnQ==} + dev: false + /de-indent@1.0.2: resolution: {integrity: sha512-e/1zu3xH5MQryN2zdVaF0OrdNLUbvWxzMbi+iNA6Bky7l1RoP8a2fIbRocyHclXt/arDrrR6lL3TqFD9pMQTsg==} dev: true @@ -2879,6 +3131,11 @@ packages: isobject: 3.0.1 dev: true + /delayed-stream@1.0.0: + resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==} + engines: {node: '>=0.4.0'} + dev: false + /delegates@1.0.0: resolution: {integrity: sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==} dev: true @@ -2941,10 +3198,42 @@ packages: resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==} dev: true + /echarts@5.4.3: + resolution: {integrity: sha512-mYKxLxhzy6zyTi/FaEbJMOZU1ULGEQHaeIeuMR5L+JnJTpz+YR03mnnpBhbR4+UYJAgiXgpyTVLffPAjOTLkZA==} + dependencies: + tslib: 2.3.0 + zrender: 5.4.4 + dev: false + /electron-to-chromium@1.4.411: resolution: {integrity: sha512-5VXLW4Qw89vM2WTICHua/y8v7fKGDRVa2VPOtBB9IpLvW316B+xd8yD1wTmLPY2ot/00P/qt87xdolj4aG/Lzg==} dev: true + /element-plus@2.3.14(vue@3.3.4): + resolution: {integrity: sha512-9yvxUaU4jXf2ZNPdmIxoj/f8BG8CDcGM6oHa9JIqxLjQlfY4bpzR1E5CjNimnOX3rxO93w1TQ0jTVt0RSxh9kA==} + peerDependencies: + vue: ^3.2.0 + dependencies: + '@ctrl/tinycolor': 3.6.1 + '@element-plus/icons-vue': 2.1.0(vue@3.3.4) + '@floating-ui/dom': 1.5.3 + '@popperjs/core': /@sxzz/popperjs-es@2.11.7 + '@types/lodash': 4.14.199 + '@types/lodash-es': 4.17.9 + '@vueuse/core': 9.13.0(vue@3.3.4) + async-validator: 4.2.5 + dayjs: 1.11.10 + escape-html: 1.0.3 + lodash: 4.17.21 + lodash-es: 4.17.21 + lodash-unified: 1.0.3(@types/lodash-es@4.17.9)(lodash-es@4.17.21)(lodash@4.17.21) + memoize-one: 6.0.0 + normalize-wheel-es: 1.2.0 + vue: 3.3.4 + transitivePeerDependencies: + - '@vue/composition-api' + dev: false + /emoji-regex@8.0.0: resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} dev: true @@ -3132,6 +3421,10 @@ packages: engines: {node: '>=6'} dev: true + /escape-html@1.0.3: + resolution: {integrity: sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==} + dev: false + /escape-string-regexp@1.0.5: resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==} engines: {node: '>=0.8.0'} @@ -3414,7 +3707,6 @@ packages: /estree-walker@2.0.2: resolution: {integrity: sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==} - dev: true /esutils@2.0.3: resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} @@ -3719,6 +4011,16 @@ packages: readable-stream: 2.3.8 dev: true + /follow-redirects@1.15.3: + resolution: {integrity: sha512-1VzOtuEM8pC9SFU1E+8KfTjZyMztRsgEfwQl44z8A25uy13jSzTj6dyK2Df52iV0vgHCfBwLhDWevLn95w5v6Q==} + engines: {node: '>=4.0'} + peerDependencies: + debug: '*' + peerDependenciesMeta: + debug: + optional: true + dev: false + /for-each@0.3.3: resolution: {integrity: sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==} dependencies: @@ -3745,6 +4047,15 @@ packages: signal-exit: 4.0.1 dev: true + /form-data@4.0.0: + resolution: {integrity: sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==} + engines: {node: '>= 6'} + dependencies: + asynckit: 0.4.0 + combined-stream: 1.0.8 + mime-types: 2.1.35 + dev: false + /fraction.js@4.2.0: resolution: {integrity: sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA==} dev: true @@ -3799,7 +4110,6 @@ packages: /function-bind@1.1.1: resolution: {integrity: sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==} - dev: true /function.prototype.name@1.1.5: resolution: {integrity: sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==} @@ -3849,7 +4159,6 @@ packages: function-bind: 1.1.1 has: 1.0.3 has-symbols: 1.0.3 - dev: true /get-intrinsic@1.2.1: resolution: {integrity: sha512-2DcsyfABl+gVHEfCOaTrWgyt+tb6MSEGmKq+kI5HwLbIYgjgmMcV8KQ41uaKz1xxUcn9tJtgFbQUEVcEbd0FYw==} @@ -4106,11 +4415,11 @@ packages: gulp: optional: true dependencies: - autoprefixer: 10.4.14(postcss@8.4.26) + autoprefixer: 10.4.14(postcss@8.4.29) fancy-log: 1.3.3 gulp: 4.0.2 plugin-error: 1.0.1 - postcss: 8.4.26 + postcss: 8.4.29 through2: 4.0.2 vinyl-sourcemaps-apply: 0.2.1 dev: true @@ -4194,7 +4503,6 @@ packages: wordwrap: 1.0.0 optionalDependencies: uglify-js: 3.17.4 - dev: true /hard-rejection@2.1.0: resolution: {integrity: sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA==} @@ -4229,7 +4537,6 @@ packages: /has-symbols@1.0.3: resolution: {integrity: sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==} engines: {node: '>= 0.4'} - dev: true /has-tostringtag@1.0.0: resolution: {integrity: sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==} @@ -4278,7 +4585,6 @@ packages: engines: {node: '>= 0.4.0'} dependencies: function-bind: 1.1.1 - dev: true /he@1.2.0: resolution: {integrity: sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==} @@ -5017,6 +5323,22 @@ packages: p-locate: 5.0.0 dev: true + /lodash-es@4.17.21: + resolution: {integrity: sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==} + dev: false + + /lodash-unified@1.0.3(@types/lodash-es@4.17.9)(lodash-es@4.17.21)(lodash@4.17.21): + resolution: {integrity: sha512-WK9qSozxXOD7ZJQlpSqOT+om2ZfcT4yO+03FuzAHD0wF6S0l0090LRPDx3vhTTLZ8cFKpBn+IOcVXK6qOcIlfQ==} + peerDependencies: + '@types/lodash-es': '*' + lodash: '*' + lodash-es: '*' + dependencies: + '@types/lodash-es': 4.17.9 + lodash: 4.17.21 + lodash-es: 4.17.21 + dev: false + /lodash.camelcase@4.3.0: resolution: {integrity: sha512-TwuEnCnxbc3rAvhf/LbG7tJUDzhqXyFnv3dtzLOPgCG/hODL7WFnsbwktkD7yUV0RrreP/l1PALq/YSg6VvjlA==} dev: true @@ -5067,7 +5389,6 @@ packages: /lodash@4.17.21: resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} - dev: true /log-update@5.0.1: resolution: {integrity: sha512-5UtUDQ/6edw4ofyljDNcOVJQ4c7OjDro4h3y8e1GQL5iYElYclVHJ3zeWchylvMaKnDbDilC8irOVyexnA/Slw==} @@ -5080,6 +5401,15 @@ packages: wrap-ansi: 8.1.0 dev: true + /loglevel-plugin-prefix@0.8.4: + resolution: {integrity: sha512-WpG9CcFAOjz/FtNht+QJeGpvVl/cdR6P0z6OcXSkr8wFJOsV2GRj2j10JLfjuA4aYkcKCNIEqRGCyTife9R8/g==} + dev: false + + /loglevel@1.8.1: + resolution: {integrity: sha512-tCRIJM51SHjAayKwC+QAg8hT8vg6z7GSgLJKGvzuPb1Wc+hLzqtuVLxp6/HzSPOozuK+8ErAhy7U/sVzw8Dgfg==} + engines: {node: '>= 0.6.0'} + dev: false + /lru-cache@5.1.1: resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==} dependencies: @@ -5110,7 +5440,6 @@ packages: engines: {node: '>=12'} dependencies: '@jridgewell/sourcemap-codec': 1.4.15 - dev: true /make-error@1.3.6: resolution: {integrity: sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==} @@ -5165,6 +5494,10 @@ packages: resolution: {integrity: sha512-GaqWWShW4kv/G9IEucWScBx9G1/vsFZZJUO+tD26M8J8z3Kw5RDQjaoZe03YAClgeS/SWPOcb4nkFBTEi5DUEA==} dev: true + /memoize-one@6.0.0: + resolution: {integrity: sha512-rkpe71W0N0c0Xz6QD0eJETuWAJGnJ9afsl1srmwPrI+yBCkge5EycXXbYRyvL29zZVUWQCY7InPRCv3GDXuZNw==} + dev: false + /meow@10.1.5: resolution: {integrity: sha512-/d+PQ4GKmGvM9Bee/DPa8z3mXs/pkvJE2KEThngVNOqtmljC6K7NMPxtc2JeZYTmpWb9k/TmxjeL18ez3h7vCw==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} @@ -5238,6 +5571,18 @@ packages: picomatch: 2.3.1 dev: true + /mime-db@1.52.0: + resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==} + engines: {node: '>= 0.6'} + dev: false + + /mime-types@2.1.35: + resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==} + engines: {node: '>= 0.6'} + dependencies: + mime-db: 1.52.0 + dev: false + /mimic-fn@2.1.0: resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==} engines: {node: '>=6'} @@ -5291,7 +5636,6 @@ packages: /minimist@1.2.8: resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==} - dev: true /minipass@4.2.8: resolution: {integrity: sha512-fNzuVyifolSLFL4NzpF+wEF4qrgqaaKX0haXPQEdQ7NKAN+WecoKMHV09YcuL/DHxrUsYQOK3MiuDf7Ip2OXfQ==} @@ -5338,7 +5682,6 @@ packages: resolution: {integrity: sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==} engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} hasBin: true - dev: true /nanomatch@1.2.13: resolution: {integrity: sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==} @@ -5365,7 +5708,6 @@ packages: /neo-async@2.6.2: resolution: {integrity: sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==} - dev: true /next-tick@1.1.0: resolution: {integrity: sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ==} @@ -5411,6 +5753,10 @@ packages: engines: {node: '>=0.10.0'} dev: true + /normalize-wheel-es@1.2.0: + resolution: {integrity: sha512-Wj7+EJQ8mSuXr2iWfnujrimU35R2W4FAErEyTmJoJ7ucwTn2hOUSsRehMb5RSYkxXGTM7Y9QpvPmp++w5ftoJw==} + dev: false + /now-and-later@2.0.1: resolution: {integrity: sha512-KGvQ0cB70AQfg107Xvs/Fbu+dGmZoTRJp2TaPwcwQm3/7PteUyN2BCgk8KBMPGBUXZdVwyWS8fDCGFygBm19UQ==} engines: {node: '>= 0.10'} @@ -5464,7 +5810,6 @@ packages: /object-inspect@1.12.3: resolution: {integrity: sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==} - dev: true /object-keys@1.1.1: resolution: {integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==} @@ -5693,6 +6038,10 @@ packages: engines: {node: '>=0.10.0'} dev: true + /path-browserify@1.0.1: + resolution: {integrity: sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==} + dev: false + /path-dirname@1.0.2: resolution: {integrity: sha512-ALzNPpyNq9AqXMBjeymIjFDAkAFH06mHJH/cSBHAgU0s4vfpBn6b2nf8tiRLvagKD8RbTpq2FKTBg7cl9l3c7Q==} dev: true @@ -5772,7 +6121,6 @@ packages: /picocolors@1.0.0: resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==} - dev: true /picomatch@2.3.1: resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} @@ -5790,6 +6138,24 @@ packages: engines: {node: '>=0.10.0'} dev: true + /pinia@2.1.6(typescript@5.2.2)(vue@3.3.4): + resolution: {integrity: sha512-bIU6QuE5qZviMmct5XwCesXelb5VavdOWKWaB17ggk++NUwQWWbP5YnsONTk3b752QkW9sACiR81rorpeOMSvQ==} + peerDependencies: + '@vue/composition-api': ^1.4.0 + typescript: '>=4.4.4' + vue: ^2.6.14 || ^3.3.0 + peerDependenciesMeta: + '@vue/composition-api': + optional: true + typescript: + optional: true + dependencies: + '@vue/devtools-api': 6.5.0 + typescript: 5.2.2 + vue: 3.3.4 + vue-demi: 0.14.6(vue@3.3.4) + dev: false + /pinkie-promise@2.0.1: resolution: {integrity: sha512-0Gni6D4UcLTbv9c57DfxDGdr41XfgUjqWZu492f0cIGr16zDU06BWP/RAEvOuo7CQ0CNjHaLlM59YJJFm3NWlw==} engines: {node: '>=0.10.0'} @@ -5815,7 +6181,6 @@ packages: /pluralize@8.0.0: resolution: {integrity: sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==} engines: {node: '>=4'} - dev: true /posix-character-classes@0.1.1: resolution: {integrity: sha512-xTgYBc3fuo7Yt7JbiuFxSYGToMoz8fLoE6TC9Wx1P/u+LfeThMOAqmuyECnlBaaJb+u1m9hHiXUEtwW4OzfUJg==} @@ -5874,36 +6239,18 @@ packages: util-deprecate: 1.0.2 dev: true - /postcss-sorting@8.0.2(postcss@8.4.24): + /postcss-sorting@8.0.2(postcss@8.4.29): resolution: {integrity: sha512-M9dkSrmU00t/jK7rF6BZSZauA5MAaBW4i5EnJXspMwt4iqTh/L9j6fgMnbElEOfyRyfLfVbIHj/R52zHzAPe1Q==} peerDependencies: postcss: ^8.4.20 dependencies: - postcss: 8.4.24 + postcss: 8.4.29 dev: true /postcss-value-parser@4.2.0: resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==} dev: true - /postcss@8.4.24: - resolution: {integrity: sha512-M0RzbcI0sO/XJNucsGjvWU9ERWxb/ytp1w6dKtxTKgixdtQDq4rmx/g8W1hnaheq9jgwL/oyEdH5Bc4WwJKMqg==} - engines: {node: ^10 || ^12 || >=14} - dependencies: - nanoid: 3.3.6 - picocolors: 1.0.0 - source-map-js: 1.0.2 - dev: true - - /postcss@8.4.26: - resolution: {integrity: sha512-jrXHFF8iTloAenySjM/ob3gSj7pCu0Ji49hnjqzsgSRa50hkWCKD0HQ+gMNJkW38jBI68MpAAg7ZWwHwX8NMMw==} - engines: {node: ^10 || ^12 || >=14} - dependencies: - nanoid: 3.3.6 - picocolors: 1.0.0 - source-map-js: 1.0.2 - dev: true - /postcss@8.4.28: resolution: {integrity: sha512-Z7V5j0cq8oEKyejIKfpD8b4eBy9cwW2JWPk0+fB1HOAMsfHbnAXLLS+PfVWlzMSLQaWttKDt607I0XHmpE67Vw==} engines: {node: ^10 || ^12 || >=14} @@ -5920,7 +6267,6 @@ packages: nanoid: 3.3.6 picocolors: 1.0.0 source-map-js: 1.0.2 - dev: true /prelude-ls@1.2.1: resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} @@ -5954,6 +6300,10 @@ packages: engines: {node: '>= 0.6.0'} dev: true + /proxy-from-env@1.1.0: + resolution: {integrity: sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==} + dev: false + /pump@2.0.1: resolution: {integrity: sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA==} dependencies: @@ -5974,6 +6324,13 @@ packages: engines: {node: '>=6'} dev: true + /qs@6.11.2: + resolution: {integrity: sha512-tDNIz22aBzCDxLtVH++VnTfzxlfeK5CbqohpSqpJgj1Wg/cQbStNAz3NuqCs5vV+pjBsK4x4pN9HlVh7rcYRiA==} + engines: {node: '>=0.6'} + dependencies: + side-channel: 1.0.4 + dev: false + /queue-microtask@1.2.3: resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} dev: true @@ -5990,11 +6347,9 @@ packages: /qx-util@0.4.8: resolution: {integrity: sha512-QSaMIyccyPEZZytdHDqadsFp06m36FBX9nkwUmfD15EZ7hibSj4yO9bLBKuVwCDKnMV2w0QL2qHDsLV5b5rY1Q==} - dev: true /ramda@0.29.0: resolution: {integrity: sha512-BBea6L67bYLtdbOqfp8f58fPMqEwx0doL+pAi8TZyp2YWz8R9G8z9x75CZI8W+ftqhFHCpEX2cRnUUXK130iKA==} - dev: true /read-pkg-up@1.0.1: resolution: {integrity: sha512-WD9MTlNtI55IwYUS27iHh9tK3YoIVhxis8yKhLpTqWtml739uXc9NWTpxoHkfZf3+DkCCsXox94/VWZniuZm6A==} @@ -6441,7 +6796,6 @@ packages: call-bind: 1.0.2 get-intrinsic: 1.2.0 object-inspect: 1.12.3 - dev: true /signal-exit@3.0.7: resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==} @@ -6509,7 +6863,6 @@ packages: /source-map-js@1.0.2: resolution: {integrity: sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==} engines: {node: '>=0.10.0'} - dev: true /source-map-resolve@0.5.3: resolution: {integrity: sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==} @@ -6535,7 +6888,6 @@ packages: /source-map@0.6.1: resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==} engines: {node: '>=0.10.0'} - dev: true /sparkles@1.0.1: resolution: {integrity: sha512-dSO0DDYUahUt/0/pD/Is3VIm5TGJjludZ0HVymmhYF6eNA53PVLhnUk0znSYbH8IYBuJdCE+1luR22jNLMaQdw==} @@ -6890,8 +7242,8 @@ packages: peerDependencies: stylelint: ^14.0.0 || ^15.0.0 dependencies: - postcss: 8.4.24 - postcss-sorting: 8.0.2(postcss@8.4.24) + postcss: 8.4.29 + postcss-sorting: 8.0.2(postcss@8.4.29) stylelint: 15.10.3 dev: true @@ -7079,7 +7431,6 @@ packages: /to-fast-properties@2.0.0: resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==} engines: {node: '>=4'} - dev: true /to-object-path@0.3.0: resolution: {integrity: sha512-9mWHdnGRuh3onocaHzukyvCZhzvr6tiflAy/JRFXcJX0TjgfWA9pk9t8CMbzmBE4Jfw58pXbkngtBtqYxzNEyg==} @@ -7214,6 +7565,10 @@ packages: strip-bom: 3.0.0 dev: true + /tslib@2.3.0: + resolution: {integrity: sha512-N82ooyxVNm6h1riLCoyS9e3fuJ3AMG2zIZs2Gd1ATcSFjSA23Q0fzjjZeh0jbJvWVDZ0cJT8yaNNaaXHzueNjg==} + dev: false + /tslib@2.5.1: resolution: {integrity: sha512-KaI6gPil5m9vF7DKaoXxx1ia9fxS4qG5YveErRRVknPDXXriu5M8h48YRjB6h5ZUOKuAKlSJYb0GaDe8I39fRw==} dev: true @@ -7284,14 +7639,12 @@ packages: resolution: {integrity: sha512-mI4WrpHsbCIcwT9cF4FZvr80QUeKvsUsUvKDoR+X/7XHQH98xYD8YHZg7ANtz2GtZt/CBq2QJ0thkGJMHfqc1w==} engines: {node: '>=14.17'} hasBin: true - dev: true /uglify-js@3.17.4: resolution: {integrity: sha512-T9q82TJI9e/C1TAxYvfb16xO120tMVFZrGA3f9/P4424DNu6ypK103y0GPFVa17yotwSyZW5iYXgjYHkGrJW/g==} engines: {node: '>=0.8.0'} hasBin: true requiresBuild: true - dev: true optional: true /unbox-primitive@1.0.2: @@ -7507,13 +7860,28 @@ packages: dependencies: '@types/node': 20.6.2 esbuild: 0.18.12 - postcss: 8.4.28 + postcss: 8.4.29 rollup: 3.28.0 sass: 1.67.0 optionalDependencies: fsevents: 2.3.2 dev: true + /vue-demi@0.14.6(vue@3.3.4): + resolution: {integrity: sha512-8QA7wrYSHKaYgUxDA5ZC24w+eHm3sYCbp0EzcDwKqN3p6HqtTCGR/GVsPyZW92unff4UlcSh++lmqDWN3ZIq4w==} + engines: {node: '>=12'} + hasBin: true + requiresBuild: true + peerDependencies: + '@vue/composition-api': ^1.0.0-rc.1 + vue: ^3.0.0-0 || ^2.6.0 + peerDependenciesMeta: + '@vue/composition-api': + optional: true + dependencies: + vue: 3.3.4 + dev: false + /vue-eslint-parser@9.3.1(eslint@8.49.0): resolution: {integrity: sha512-Clr85iD2XFZ3lJ52/ppmUDG/spxQu6+MAeHXjjyI4I1NUYZ9xmenQp4N0oaHJhrA8OOxltCVxMRfANGa70vU0g==} engines: {node: ^14.17.0 || >=16.0.0} @@ -7532,6 +7900,27 @@ packages: - supports-color dev: true + /vue-i18n@9.4.1(vue@3.3.4): + resolution: {integrity: sha512-vnQyYE9LBuNOqPpETIcCaGnAyLEqfeIvDcyZ9T+WBCWFTqWw1J8FuF1jfeDwpHBi5JKgAwgXyq1mt8jp/x/GPA==} + engines: {node: '>= 16'} + peerDependencies: + vue: ^3.0.0 + dependencies: + '@intlify/core-base': 9.4.1 + '@intlify/shared': 9.4.1 + '@vue/devtools-api': 6.5.0 + vue: 3.3.4 + dev: false + + /vue-router@4.2.5(vue@3.3.4): + resolution: {integrity: sha512-DIUpKcyg4+PTQKfFPX88UWhlagBEBEfJ5A8XDXRJLUnZOvcpMF8o/dnL90vpVkGaPbjvXazV/rC1qBKrZlFugw==} + peerDependencies: + vue: ^3.2.0 + dependencies: + '@vue/devtools-api': 6.5.0 + vue: 3.3.4 + dev: false + /vue-template-compiler@2.7.14: resolution: {integrity: sha512-zyA5Y3ArvVG0NacJDkkzJuPQDF8RFeRlzV2vLeSnhSpieO6LK2OVbdLPi5MPPs09Ii+gMO8nY4S3iKQxBxDmWQ==} dependencies: @@ -7559,7 +7948,6 @@ packages: '@vue/runtime-dom': 3.3.4 '@vue/server-renderer': 3.3.4(vue@3.3.4) '@vue/shared': 3.3.4 - dev: true /which-boxed-primitive@1.0.2: resolution: {integrity: sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==} @@ -7610,7 +7998,6 @@ packages: /wordwrap@1.0.0: resolution: {integrity: sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q==} - dev: true /wrap-ansi@2.1.0: resolution: {integrity: sha512-vAaEaDM946gbNpH5pLVNR+vX2ht6n0Bt3GXwVB1AuAqZosOvHNF3P7wDnh8KLkSqgUh0uh77le7Owgoz+Z9XBw==} @@ -7739,3 +8126,9 @@ packages: resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} engines: {node: '>=10'} dev: true + + /zrender@5.4.4: + resolution: {integrity: sha512-0VxCNJ7AGOMCWeHVyTrGzUgrK4asT4ml9PEkeGirAkKNYXYzoPJCLvmyfdoOXcjTHPs10OZVMfD1Rwg16AZyYw==} + dependencies: + tslib: 2.3.0 + dev: false -- Gitee