0.1.23-beta.13 • Published 27 days ago

teld-approval-flow v0.1.23-beta.13

Weekly downloads
-
License
-
Repository
-
Last release
27 days ago

teld-approval-flow

TELD 审批流设计器组件包,主要包含设计器和查看器两大功能。
另外对于旧有流程图转换新版流程图,提供了从.bpmn文件转换的功能。

RuntimeDesigner
runtimedesigner

Usage

用于 TELD 内部 ToC 框架中

  1. 组件准备

/plugins/components/pc.js文件中注册项目中用到的组件
确保如下注册组件:

// import Vue from 'vue';
import { install }  from '@teld/component-proxy/export/pc.js'
import {
  Button,
  Popover,
  Tooltip,
  Drawer,
  Input,
  Link,
  RadioGroup,
  RadioButton,
  Radio,
  Switch,
  // ...
} from '@teld/component-proxy/pc.js'

const components = [
  Button,
  Popover,
  Tooltip,
  Drawer,
  Input,
  Link,
  RadioGroup,
  RadioButton,
  Radio,
  Switch,
  // ...
]

// El-xx 组件注册为 Tp-xx
install(components)

// El-xx 组件
// components.forEach(c => {
//   Vue.component(c.name, c);
// })
// 2023.07.13 ↑ 这里不需要了

关于注册组件:
作为NPM包开发中本地 Demo 开发无法安装引入@teld/component-proxy的组件,
因为 ToC 框架中对引入路径做了特殊处理,组件代理的这个包只能在 ToC 框架下使用
@teld/component-proxy/pc.js这个引入解析为每个组件对应的element-ui引入路径,
所以实际注册的还是element-ui的组件。
所以包开发中无法使用tp-而使用el-导致这里注册组件需要修改;
为了方便,将来考虑包中直接使用tp-标签,避免该处引入要修改的麻烦

2023.07.13 已去除el-,全部替换为tp-

另外,关于上面用到的组件,应在/assets/custom-pc.scss文件中引入其样式:

@import "~@teld/component-proxy/style/pc/drawer.scss";
@import "~@teld/component-proxy/style/pc/radio.scss";
@import "~@teld/component-proxy/style/pc/radio-button.scss";
@import "~@teld/component-proxy/style/pc/radio-group.scss";
@import "~@teld/component-proxy/style/pc/icon.scss";

(如果还有其它组件,缺少样式的话,按照上面的方式进行引入即可)

  1. plugins下新建approval-flow.js文件
import Vue form 'vue'
import * as TAF from 'teld-approval-flow'
import 'teld-approval-flow/lib/approval-flow.css'
Vue.use(TAF, {
  scaleButtons: {
    visible: true,
    position: 'bottom right',
    spaceX: '10px',
    spaceY: '20px',
  },
  designer: {
    useButtonToggleAll: true, // 【全展开|全收起】
    legendDefaultOpen: true, // 默认展开图例--废弃
    legend: {
      open: true, // 默认展开图例(新)
    },
  }
})
// v0.1.2 起支持传入配置控制缩放按钮组,上面示例等同于默认值
  1. nuxt.config.js中引入approval-flow.jsssr: false即可

  2. 引入flow数据管理模块

store/下新建flow.js文件

注:nuxtjs 会按文件名做子模块引入,无需手动在store/index.js中引入子模块

// import { flowStore } from 'teld-approval-flow'
// export default flowStore
// 用 ES6 的解构会导致后面使用 Store 时有问题,暂时使用 require 或者
// import * as TAF
// export default TAF.flowStore

// 或
const { flowStore } = require('teld-approval-flow').default || require('teld-approval-flow');
export default flowStore;
  1. 引入完成,使用组件
  • ApprovalFlowRuntime
  • ApprovalFlowDesigner
  • 以上两个基于组件ApprovalFlow,可以直接引入该组件使用更灵活

运行时:查看流程实例带流转状态的流程图

<approval-flow-runtime :flow-info="flowInfo">

设计时:设计器及静态流程图查看都属于设计时

<!--
<approval-flow-designer :design-data="designData" :editable="editable" />
-->

Changelog

changelog

Development

pnpm install

Compiles and hot-reloads for development

npm run serve

Compiles and minifies for production

npm run build

Deploy (publish to NMP)

pnpm build
pnpm publish

注:2023-12后 NPM 问题(nodejs14 build 后,切 nodejs18 publish,否则发布不上文件,但由于老旧又无法直接使用 18 build)

Customize configuration

See Configuration Reference.

0.1.23-beta.13

27 days ago

0.1.23-beta.12

2 months ago

0.1.23-beta.11

2 months ago

0.1.23-beta.10

4 months ago

0.1.23-beta.7

4 months ago

0.1.23-beta.8

4 months ago

0.1.23-beta.9

4 months ago

0.1.23-beta.5

4 months ago

0.1.23-beta.4

4 months ago

0.1.23-beta.2

4 months ago

0.1.23-beta.3

4 months ago

0.1.23-beta.1

5 months ago

0.1.10

11 months ago

0.1.11

11 months ago

0.1.12

11 months ago

0.1.13

11 months ago

0.1.14

11 months ago

0.1.15

10 months ago

0.1.20

9 months ago

0.1.21

8 months ago

0.1.22

8 months ago

0.1.16

10 months ago

0.1.8

11 months ago

0.1.7

11 months ago

0.1.18

10 months ago

0.1.19

10 months ago

0.1.9

11 months ago

0.1.6

12 months ago

0.1.5

12 months ago

0.1.4

12 months ago

0.1.3

12 months ago

0.1.2

12 months ago

0.1.1

12 months ago

0.1.0

12 months ago

0.0.8

12 months ago

0.0.7

1 year ago

0.0.6

1 year ago

0.0.5

1 year ago

0.0.4

1 year ago

0.0.3

1 year ago

0.0.2

1 year ago

0.0.1

1 year ago