aldehyde 0.2.6 → 0.2.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (122) hide show
  1. package/lib/controls/cquery/cquick-button.js +3 -3
  2. package/lib/controls/cquery/cquick-button.js.map +1 -1
  3. package/lib/controls/entity-select/entity-select.d.ts +10 -5
  4. package/lib/controls/entity-select/entity-select.d.ts.map +1 -1
  5. package/lib/controls/entity-select/entity-select.js +60 -24
  6. package/lib/controls/entity-select/entity-select.js.map +1 -1
  7. package/lib/custom-page/def-custom-page.d.ts.map +1 -1
  8. package/lib/custom-page/def-custom-page.js.map +1 -1
  9. package/lib/custom-page/dtmpl-custom-edit-modal-page.d.ts +41 -0
  10. package/lib/custom-page/dtmpl-custom-edit-modal-page.d.ts.map +1 -0
  11. package/lib/custom-page/dtmpl-custom-edit-modal-page.js +35 -0
  12. package/lib/custom-page/dtmpl-custom-edit-modal-page.js.map +1 -0
  13. package/lib/detail/edit/fields-edit-card.d.ts.map +1 -1
  14. package/lib/detail/edit/fields-edit-card.js.map +1 -1
  15. package/lib/index.d.ts +7 -3
  16. package/lib/index.d.ts.map +1 -1
  17. package/lib/index.js +29 -5
  18. package/lib/index.js.map +1 -1
  19. package/lib/layout/MainPage.d.ts.map +1 -1
  20. package/lib/layout/MainPage.js.map +1 -1
  21. package/lib/layout/menu/l2menu-quick-bar.js +2 -2
  22. package/lib/layout/menu/l2menu-quick-bar.js.map +1 -1
  23. package/lib/layout/menu/userinfo-bar.d.ts.map +1 -1
  24. package/lib/layout/menu/userinfo-bar.js +2 -2
  25. package/lib/layout/menu/userinfo-bar.js.map +1 -1
  26. package/lib/{detail/edit → module}/dtmpl-edit-card.d.ts +1 -1
  27. package/lib/module/dtmpl-edit-card.d.ts.map +1 -0
  28. package/lib/{detail/edit → module}/dtmpl-edit-card.js +5 -5
  29. package/lib/module/dtmpl-edit-card.js.map +1 -0
  30. package/lib/module/dtmpl-edit-drawer.d.ts +17 -0
  31. package/lib/module/dtmpl-edit-drawer.d.ts.map +1 -0
  32. package/lib/module/dtmpl-edit-drawer.js +8 -0
  33. package/lib/module/dtmpl-edit-drawer.js.map +1 -0
  34. package/lib/module/dtmpl-edit-modal.d.ts +17 -0
  35. package/lib/module/dtmpl-edit-modal.d.ts.map +1 -0
  36. package/lib/module/dtmpl-edit-modal.js +8 -0
  37. package/lib/module/dtmpl-edit-modal.js.map +1 -0
  38. package/lib/{detail/edit → module}/dtmpl-edit-page.d.ts +1 -1
  39. package/lib/module/dtmpl-edit-page.d.ts.map +1 -0
  40. package/lib/{detail/edit → module}/dtmpl-edit-page.js +5 -8
  41. package/lib/module/dtmpl-edit-page.js.map +1 -0
  42. package/lib/module/dtmpl-editor.d.ts +39 -0
  43. package/lib/module/dtmpl-editor.d.ts.map +1 -0
  44. package/lib/module/dtmpl-editor.js +146 -0
  45. package/lib/module/dtmpl-editor.js.map +1 -0
  46. package/lib/module/dtmpl-view-card.d.ts.map +1 -0
  47. package/lib/{detail/view → module}/dtmpl-view-card.js +3 -3
  48. package/lib/module/dtmpl-view-card.js.map +1 -0
  49. package/lib/module/dtmpl-view-drawer.d.ts +27 -0
  50. package/lib/module/dtmpl-view-drawer.d.ts.map +1 -0
  51. package/lib/module/dtmpl-view-drawer.js +40 -0
  52. package/lib/module/dtmpl-view-drawer.js.map +1 -0
  53. package/lib/module/dtmpl-view-modal.d.ts +28 -0
  54. package/lib/module/dtmpl-view-modal.d.ts.map +1 -0
  55. package/lib/module/dtmpl-view-modal.js +36 -0
  56. package/lib/module/dtmpl-view-modal.js.map +1 -0
  57. package/lib/module/ltmpl-drawer.d.ts +29 -0
  58. package/lib/module/ltmpl-drawer.d.ts.map +1 -0
  59. package/lib/module/ltmpl-drawer.js +37 -0
  60. package/lib/module/ltmpl-drawer.js.map +1 -0
  61. package/lib/module/ltmpl-modal.d.ts +29 -0
  62. package/lib/module/ltmpl-modal.d.ts.map +1 -0
  63. package/lib/module/ltmpl-modal.js +35 -0
  64. package/lib/module/ltmpl-modal.js.map +1 -0
  65. package/lib/module/{ltmpl-page.d.ts → ltmpl-table.d.ts} +9 -7
  66. package/lib/module/ltmpl-table.d.ts.map +1 -0
  67. package/lib/module/{ltmpl-page.js → ltmpl-table.js} +46 -20
  68. package/lib/module/ltmpl-table.js.map +1 -0
  69. package/lib/table/relation-table.d.ts.map +1 -1
  70. package/lib/table/relation-table.js +1 -1
  71. package/lib/table/relation-table.js.map +1 -1
  72. package/lib/tmpl/interface.d.ts +1 -1
  73. package/lib/tmpl/interface.d.ts.map +1 -1
  74. package/lib/units/config-loader.js +1 -21
  75. package/lib/units/config-loader.js.map +1 -1
  76. package/lib/units/index.d.ts +2 -2
  77. package/lib/units/index.d.ts.map +1 -1
  78. package/lib/units/index.js +37 -5
  79. package/lib/units/index.js.map +1 -1
  80. package/lib/welcome/HCWelcome.d.ts.map +1 -1
  81. package/lib/welcome/HCWelcome.js.map +1 -1
  82. package/package.json +1 -1
  83. package/src/aldehyde/controls/cquery/cquick-button.tsx +3 -3
  84. package/src/aldehyde/controls/entity-select/entity-select.tsx +84 -24
  85. package/src/aldehyde/custom-page/def-custom-page.js +0 -2
  86. package/src/aldehyde/custom-page/dtmpl-custom-edit-modal-page.tsx +73 -0
  87. package/src/aldehyde/detail/edit/fields-edit-card.tsx +1 -2
  88. package/src/aldehyde/index.tsx +41 -7
  89. package/src/aldehyde/layout/MainPage.tsx +0 -1
  90. package/src/aldehyde/layout/menu/l2menu-quick-bar.tsx +2 -2
  91. package/src/aldehyde/layout/menu/userinfo-bar.tsx +2 -4
  92. package/src/aldehyde/{detail/edit → module}/dtmpl-edit-card.tsx +6 -6
  93. package/src/aldehyde/module/dtmpl-edit-drawer.tsx +24 -0
  94. package/src/aldehyde/module/dtmpl-edit-modal.tsx +25 -0
  95. package/src/aldehyde/{detail/edit → module}/dtmpl-edit-page.tsx +6 -9
  96. package/src/aldehyde/module/dtmpl-editor.tsx +155 -0
  97. package/src/aldehyde/{detail/view → module}/dtmpl-view-card.tsx +3 -3
  98. package/src/aldehyde/module/dtmpl-view-drawer.tsx +62 -0
  99. package/src/aldehyde/module/dtmpl-view-modal.tsx +51 -0
  100. package/src/aldehyde/module/ltmpl-drawer.tsx +58 -0
  101. package/src/aldehyde/module/ltmpl-modal.tsx +52 -0
  102. package/src/aldehyde/module/ltmpl-table.tsx +262 -0
  103. package/src/aldehyde/table/relation-table.tsx +2 -3
  104. package/src/aldehyde/tmpl/interface.tsx +1 -1
  105. package/src/aldehyde/units/config-loader.tsx +0 -22
  106. package/src/aldehyde/units/index.tsx +36 -5
  107. package/src/aldehyde/welcome/HCWelcome.js +0 -2
  108. package/lib/detail/edit/dtmpl-edit-card.d.ts.map +0 -1
  109. package/lib/detail/edit/dtmpl-edit-card.js.map +0 -1
  110. package/lib/detail/edit/dtmpl-edit-page.d.ts.map +0 -1
  111. package/lib/detail/edit/dtmpl-edit-page.js.map +0 -1
  112. package/lib/detail/view/dtmpl-view-card.d.ts.map +0 -1
  113. package/lib/detail/view/dtmpl-view-card.js.map +0 -1
  114. package/lib/detail/view/dtmpl-view-page.d.ts +0 -33
  115. package/lib/detail/view/dtmpl-view-page.d.ts.map +0 -1
  116. package/lib/detail/view/dtmpl-view-page.js +0 -46
  117. package/lib/detail/view/dtmpl-view-page.js.map +0 -1
  118. package/lib/module/ltmpl-page.d.ts.map +0 -1
  119. package/lib/module/ltmpl-page.js.map +0 -1
  120. package/src/aldehyde/detail/view/dtmpl-view-page.tsx +0 -79
  121. package/src/aldehyde/module/ltmpl-page.tsx +0 -233
  122. /package/lib/{detail/view → module}/dtmpl-view-card.d.ts +0 -0
@@ -1,8 +1,6 @@
1
1
  import React from 'react'
2
- import { Drawer, Space,Button} from 'antd'
3
2
  import {SolutionOutlined} from '@ant-design/icons';
4
- import DtmplViewCard from "../../detail/view/dtmpl-view-card";
5
- import DtmplViewPage from "../../detail/view/dtmpl-view-page";
3
+ import DtmplViewDrawer from "../../module/dtmpl-view-drawer";
6
4
 
7
5
  interface UserInfoBarProps {
8
6
 
@@ -38,7 +36,7 @@ class UserInfoBar extends React.PureComponent<UserInfoBarProps, UserInfoBarState
38
36
  return (
39
37
  <>
40
38
  <span onClick={this.showDraw}><SolutionOutlined />个人信息</span>
41
- {showDraw?<DtmplViewPage title={'个人信息'} width={'calc(100% - 280px)'} pageType={'drawer'} sourceId={'0'} open={showDraw} code={"userCode"} onClose={this.closeDrawer}></DtmplViewPage>:null}
39
+ {showDraw?<DtmplViewDrawer title={'个人信息'} width={'calc(100% - 280px)'} sourceId={'0'} open={showDraw} code={"userCode"} onClose={this.closeDrawer}></DtmplViewDrawer>:null}
42
40
  </>
43
41
  );
44
42
  }
@@ -1,11 +1,11 @@
1
1
  import React, {ReactNode} from 'react';
2
2
  import {Button, Drawer, FormInstance, Modal, Popconfirm, Space,Card} from 'antd'
3
- import {DtmplBaseProps, DtmplConfig, DtmplData, PageType} from "../../tmpl/interface";
4
- import DtmplForm from '../../form/dtmpl-form';
5
- import HCDataSource from "../../tmpl/hc-data-source";
6
- import Units from "../../units";
7
- import HcserviceV3 from "../../tmpl/hcservice-v3";
8
- import Action from "../../controls/action";
3
+ import {DtmplBaseProps, DtmplConfig, DtmplData, PageType} from "../tmpl/interface";
4
+ import DtmplForm from '../form/dtmpl-form';
5
+ import HCDataSource from "../tmpl/hc-data-source";
6
+ import Units from "../units";
7
+ import HcserviceV3 from "../tmpl/hcservice-v3";
8
+ import Action from "../controls/action";
9
9
 
10
10
  interface DtmplEditCardProps extends DtmplBaseProps {
11
11
  onOk?: (code: string) => void,
@@ -0,0 +1,24 @@
1
+ import React, {ReactNode} from 'react';
2
+ import {DtmplBaseProps} from "../tmpl/interface";
3
+ import DtmplEditPage from "./dtmpl-edit-page";
4
+
5
+ interface DtmplEditDrawerProps extends DtmplBaseProps {
6
+ width?: number,
7
+ open: boolean,
8
+ onOk: (code: string) => void,
9
+ onCancel: () => void,
10
+ title?: ReactNode,
11
+ placement?:'top' | 'right' | 'bottom' | 'left',
12
+ }
13
+
14
+ interface DtmplEditDrawerState {
15
+
16
+ }
17
+
18
+ export default class DtmplEditDrawer extends React.PureComponent<DtmplEditDrawerProps, DtmplEditDrawerState> {
19
+
20
+ render() {
21
+ return <DtmplEditPage pageType={'drawer'} {...this.props}></DtmplEditPage>
22
+ }
23
+
24
+ }
@@ -0,0 +1,25 @@
1
+ import React, {ReactNode} from 'react';
2
+ import {DtmplBaseProps} from "../tmpl/interface";
3
+ import DtmplEditPage from "./dtmpl-edit-page";
4
+
5
+ interface DtmplEditModalProps extends DtmplBaseProps {
6
+ height?: any,
7
+ width?: number,
8
+ open: boolean,
9
+ onOk: (code: string) => void,
10
+ onCancel: () => void,
11
+ title?: ReactNode,
12
+ }
13
+
14
+ interface DtmplEditModalState {
15
+
16
+ }
17
+
18
+ export default class DtmplEditModal extends React.PureComponent<DtmplEditModalProps, DtmplEditModalState> {
19
+
20
+
21
+ render() {
22
+ return <DtmplEditPage {...this.props}></DtmplEditPage>
23
+ }
24
+
25
+ }
@@ -1,11 +1,11 @@
1
1
  import React, {ReactNode} from 'react';
2
2
  import {Button, Drawer, FormInstance, Modal, Popconfirm, Space,Card} from 'antd'
3
- import {DtmplBaseProps, DtmplConfig, DtmplData, PageType} from "../../tmpl/interface";
4
- import DtmplForm from '../../form/dtmpl-form';
5
- import HCDataSource from "../../tmpl/hc-data-source";
6
- import Units from "../../units";
7
- import HcserviceV3 from "../../tmpl/hcservice-v3";
8
- import Action from "../../controls/action";
3
+ import {DtmplBaseProps, DtmplConfig, DtmplData, PageType} from "../tmpl/interface";
4
+ import DtmplForm from '../form/dtmpl-form';
5
+ import HCDataSource from "../tmpl/hc-data-source";
6
+ import Units from "../units";
7
+ import HcserviceV3 from "../tmpl/hcservice-v3";
8
+ import Action from "../controls/action";
9
9
 
10
10
  interface ModalEditorProps extends DtmplBaseProps {
11
11
  height?: any,
@@ -70,9 +70,6 @@ export default class DtmplEditPage extends React.PureComponent<ModalEditorProps,
70
70
  await this.loadData(dtmplConfig);
71
71
  }
72
72
  }
73
- // if(this.formRef.current){
74
- // this.formRef.current.resetFields();
75
- // }
76
73
  }
77
74
 
78
75
  componentWillUnmount(): void {
@@ -0,0 +1,155 @@
1
+ import React from 'react';
2
+ import {FormInstance} from 'antd'
3
+ import {DtmplBaseProps, DtmplConfig, DtmplData} from "../tmpl/interface";
4
+ import DtmplForm from '../form/dtmpl-form';
5
+ import HCDataSource from "../tmpl/hc-data-source";
6
+ import Units from "../units";
7
+ import HcserviceV3 from "../tmpl/hcservice-v3";
8
+
9
+ interface ModalEditorProps extends DtmplBaseProps {
10
+ onOk: (code: string) => void,
11
+ onCancel: () => void,
12
+ open:boolean,
13
+ }
14
+
15
+ interface ModalEditorState {
16
+ id:string,
17
+ dtmplConfig: DtmplConfig,
18
+ loading: boolean;
19
+ serial:number,
20
+ dtmplData:DtmplData,
21
+ }
22
+
23
+ export default class DtmplEditPage extends React.PureComponent<ModalEditorProps, ModalEditorState> {
24
+ formRef = React.createRef<FormInstance>();
25
+ autoSaveTimer = -1000000000000000;
26
+ autoSaveInterval=undefined;
27
+ onClickBody = (e) => {
28
+ this.autoSaveTimer = 0;
29
+ }
30
+ static defaultProps = {
31
+
32
+ }
33
+ state = {
34
+ id:'modelDtmplEdit'+Units.getRandomNum(6),
35
+ dtmplConfig: undefined,
36
+ loading: true,
37
+ serial:1,
38
+ dtmplData:undefined,
39
+ }
40
+
41
+ async componentDidMount() {
42
+ if(this.props.open){
43
+ await this.loadConfigData();
44
+ }
45
+ }
46
+
47
+ async componentDidUpdate(prevProps) {
48
+ const { dtmplConfig} = this.state;
49
+ if(prevProps && prevProps!=this.props){
50
+ if(prevProps.sourceId!=this.props.sourceId || dtmplConfig==null){
51
+ await this.loadConfigData();
52
+ }else{
53
+ await this.loadData(dtmplConfig);
54
+ }
55
+ }
56
+ }
57
+
58
+ componentWillUnmount(): void {
59
+ if(this.autoSaveInterval){
60
+ clearInterval( this.autoSaveInterval);
61
+ }
62
+ }
63
+
64
+ loadConfigData = async () => {
65
+ const { sourceId,open,code} = this.props;
66
+ this.setState({
67
+ loading: true,
68
+ })
69
+ let dtmplConfig=undefined;
70
+ if(code){
71
+ dtmplConfig = await HCDataSource.requestDtmplConfig(sourceId);
72
+ }else{
73
+ dtmplConfig = await HCDataSource.requestAddDtmplConfig(sourceId);
74
+ }
75
+
76
+ if(dtmplConfig.authSaveInterval && dtmplConfig.authSaveInterval>0){
77
+ if(this.autoSaveInterval){
78
+ clearInterval( this.autoSaveInterval);
79
+ }
80
+ this.autoSaveInterval = setInterval(() => {
81
+ if(this.autoSaveTimer>=dtmplConfig.authSaveInterval){
82
+ //console.log('执行自动保存');
83
+ this.autoSaveTimer=-1000000000000000;
84
+ this.doSubmit(undefined);
85
+ }else{
86
+ this.autoSaveTimer=this.autoSaveTimer+1;
87
+ }
88
+ }, 1000);
89
+ }
90
+ await this.loadData(dtmplConfig);
91
+ this.setState({
92
+ dtmplConfig,
93
+ loading: false,
94
+ })
95
+ }
96
+
97
+ loadData = async (dtmplConfig:DtmplConfig ) => {
98
+ const { sourceId, code,defaultDtmplData,open} = this.props;
99
+ if(!open){
100
+ return;
101
+ }
102
+ if (code) {
103
+ this.setState({
104
+ loading: true,
105
+ })
106
+ const dtmplData_ = await HcserviceV3.requestDtmplData( sourceId, code, null);
107
+ this.setState({
108
+ dtmplData:dtmplData_,
109
+ id:code,
110
+ // changedGroupData:new Map<number,DtmplData[]>(),
111
+ loading: false,
112
+ })
113
+ }else if(defaultDtmplData){
114
+ this.setState({
115
+ dtmplData:defaultDtmplData,
116
+ loading: false,
117
+ })
118
+ }else{
119
+ this.setState({
120
+ dtmplData:{code:undefined,title:undefined,fieldMap:{},arrayMap:{}},
121
+ loading: false,
122
+ })
123
+ }
124
+ setTimeout(()=> this.onValuesChange(),300);
125
+ }
126
+
127
+ onValuesChange=()=>{
128
+ this.setState({
129
+ serial:this.state.serial+1
130
+ })
131
+ }
132
+
133
+ doSubmit = (actionId?: number,codes?:string[],params?:object) => {
134
+ const {mainCode}=this.props;
135
+ if (actionId) {
136
+ this.formRef.current.setFieldsValue({'actionId': actionId});
137
+ }
138
+ if(mainCode){
139
+ this.formRef.current.setFieldsValue({'mainCode': mainCode});
140
+ }
141
+ if(params){
142
+ this.formRef.current.setFieldsValue(params);
143
+ }
144
+ this.formRef.current.submit();
145
+ }
146
+
147
+ render() {
148
+ const {onOk,sourceId,mainCode,maxColsOnRow} = this.props
149
+ const {dtmplConfig,id,dtmplData} = this.state;
150
+ return <DtmplForm mainCode={mainCode} parentId={id} dtmplConfig={dtmplConfig} formRef={this.formRef} sourceId={sourceId}
151
+ onFinish={onOk} maxColsOnRow={maxColsOnRow}
152
+ showConfirm={false} dtmplData={dtmplData} onValuesChange={this.onValuesChange} />
153
+ }
154
+
155
+ }
@@ -1,6 +1,6 @@
1
1
  import React from 'react'
2
- import DtmplEditPage from "../edit/dtmpl-edit-page";
3
- import ActDtmplView from "./act-dtmpl-view";
2
+ import ActDtmplView from "./../detail/view/act-dtmpl-view";
3
+ import DtmplEditModal from './dtmpl-edit-modal';
4
4
 
5
5
  //以列表为入口的,页面内列表,基本原则是所有交互在页面内完成,不会触发路由。
6
6
 
@@ -48,7 +48,7 @@ class DtmplViewCard extends React.PureComponent<DtmplViewCardProps, DtmplViewCar
48
48
  const { sourceId,code,mainCode} = this.props;
49
49
  return <>
50
50
  <ActDtmplView goDtmpl={this.goDtmpl} sourceId={sourceId} code={code} mainCode={mainCode}></ActDtmplView>
51
- {showDtmplEdit? <DtmplEditPage open={showDtmplEdit} onCancel={()=>{
51
+ {showDtmplEdit? <DtmplEditModal open={showDtmplEdit} onCancel={()=>{
52
52
  this.setState({
53
53
  showDtmplEdit:false,
54
54
  })}}
@@ -0,0 +1,62 @@
1
+ import React, {ReactNode} from 'react'
2
+ import {Drawer, Space, Button} from 'antd'
3
+ import DtmplViewCard from "./dtmpl-view-card";
4
+ import {DtmplBaseProps} from "../tmpl/interface";
5
+
6
+ interface DtmplViewDrawerProps extends DtmplBaseProps{
7
+ title?:ReactNode,
8
+ open: boolean,
9
+ onClose: () => void,
10
+ placement?:'top' | 'right' | 'bottom' | 'left',
11
+ width?:string|number,
12
+ cancelText:string,
13
+ }
14
+
15
+ interface DtmplViewDrawerState {
16
+
17
+ }
18
+
19
+
20
+ class DtmplViewDrawer extends React.PureComponent<DtmplViewDrawerProps, DtmplViewDrawerState> {
21
+ state={
22
+
23
+ }
24
+
25
+ static defaultProps = {
26
+ height: 500,
27
+ width:1250,
28
+ forceRender: true,
29
+ cancelText: "关闭",
30
+ placement:'left',
31
+ open:false,
32
+ }
33
+
34
+ async componentDidMount() {
35
+
36
+ }
37
+
38
+ render() {
39
+ const {title,sourceId,code,placement,open,onClose,width,cancelText}=this.props;
40
+ return (<Drawer
41
+ placement={placement}
42
+ title={title}
43
+ closable={true}
44
+ mask={false}
45
+ onClose={onClose}
46
+ open={open}
47
+ width={width}
48
+ style={{
49
+ maxWidth: 1960,
50
+ }}
51
+ extra={
52
+ <Space>
53
+ <Button onClick={()=>onClose()}>{cancelText}</Button>
54
+ </Space>
55
+ }
56
+ >
57
+ <DtmplViewCard sourceId={sourceId} code={code}></DtmplViewCard>
58
+ </Drawer>)
59
+ }
60
+ }
61
+
62
+ export default DtmplViewDrawer;
@@ -0,0 +1,51 @@
1
+ import React, {ReactNode} from 'react'
2
+ import { Modal} from 'antd'
3
+ import DtmplViewCard from "./dtmpl-view-card";
4
+ import {DtmplBaseProps} from "../tmpl/interface";
5
+
6
+ interface DtmplViewModalProps extends DtmplBaseProps{
7
+ title?:ReactNode,
8
+ open: boolean,
9
+ onClose: () => void,
10
+ width?:string|number,
11
+ height?:string|number,
12
+ }
13
+
14
+ interface DtmplViewModalState {
15
+
16
+ }
17
+
18
+
19
+ class DtmplViewModal extends React.PureComponent<DtmplViewModalProps, DtmplViewModalState> {
20
+ state={
21
+
22
+ }
23
+
24
+ static defaultProps = {
25
+ height: 500,
26
+ width:1250,
27
+ forceRender: true,
28
+ style: {maxWidth: 'calc(100vw - 60px)', maxHeight: 'calc(100vh - 50px)'},
29
+ open:false,
30
+ }
31
+
32
+ async componentDidMount() {
33
+
34
+ }
35
+
36
+ render() {
37
+ const {title,sourceId,code,open,onClose,width,height}=this.props;
38
+ return <Modal
39
+ open={open}
40
+ width={width}
41
+ title={title}
42
+ bodyStyle={{height: height, overflow: 'auto'}}
43
+ destroyOnClose={true}
44
+ centered
45
+ onCancel={onClose}
46
+ ><DtmplViewCard sourceId={sourceId} code={code}></DtmplViewCard>
47
+ </Modal>
48
+ }
49
+ }
50
+
51
+ export default DtmplViewModal;
@@ -0,0 +1,58 @@
1
+ import React, {ReactNode} from 'react';
2
+ import {Drawer} from 'antd'
3
+ import LtmplTable, {LtmplTableProps} from "./ltmpl-table";
4
+
5
+
6
+ interface LtmplDrawPageProps extends LtmplTableProps {
7
+ onCancel: () => void,
8
+ placement?:'top' | 'right' | 'bottom' | 'left',
9
+ title?:ReactNode,
10
+ width?:number,
11
+ open:boolean,
12
+ }
13
+
14
+ interface LtmplDrawPageState {
15
+
16
+ }
17
+
18
+ export default class LtmplDrawer extends React.PureComponent<LtmplDrawPageProps, LtmplDrawPageState> {
19
+
20
+ static defaultProps = {
21
+ showConfirm: true,
22
+ width:1250,
23
+ forceRender: true,
24
+ style: {maxWidth: 'calc(100vw - 60px)', maxHeight: 'calc(100vh - 50px)'},
25
+ okText: "确定",
26
+ cancelText: "取消",
27
+ placement:'left',
28
+ }
29
+ state = {
30
+
31
+ }
32
+
33
+
34
+ render() {
35
+ const {title,placement,width,onCancel,open,...other} = this.props
36
+
37
+ return (<Drawer
38
+ title={title}
39
+ placement={placement}
40
+ closable={true}
41
+ mask={false}
42
+ onClose={onCancel}
43
+ open={open}
44
+ width={width}
45
+ style={{
46
+ maxWidth: 1960,
47
+ }}
48
+ // extra={
49
+ // <Space>{this.getFooter()}</Space>
50
+ // }
51
+ >
52
+ <LtmplTable {...other}></LtmplTable>
53
+ </Drawer>
54
+ )
55
+
56
+ }
57
+
58
+ }
@@ -0,0 +1,52 @@
1
+ import React, {ReactNode} from 'react';
2
+ import { Modal} from 'antd'
3
+ import LtmplTable, {LtmplTableProps} from "./ltmpl-table";
4
+
5
+
6
+ interface LtmplDrawPageProps extends LtmplTableProps {
7
+ onCancel: () => void,
8
+ title?:ReactNode,
9
+ width?:number|string,
10
+ height?:number|string,
11
+ open:boolean,
12
+ }
13
+
14
+ interface LtmplDrawPageState {
15
+
16
+ }
17
+
18
+ export default class LtmplDrawer extends React.PureComponent<LtmplDrawPageProps, LtmplDrawPageState> {
19
+
20
+ static defaultProps = {
21
+ showConfirm: true,
22
+ height: 500,
23
+ width:1250,
24
+ forceRender: true,
25
+ style: {maxWidth: 'calc(100vw - 60px)', maxHeight: 'calc(100vh - 50px)'},
26
+ okText: "确定",
27
+ cancelText: "取消",
28
+ }
29
+ state = {
30
+
31
+ }
32
+
33
+
34
+ render() {
35
+ const {title,height,width,onCancel,open,...other} = this.props
36
+
37
+ return (<Modal
38
+ open={open}
39
+ width={width}
40
+ title={title}
41
+ bodyStyle={{height: height, overflow: 'auto'}}
42
+ destroyOnClose={true}
43
+ centered
44
+ onCancel={onCancel}
45
+ >
46
+ <LtmplTable {...other}></LtmplTable>
47
+ </Modal>
48
+ )
49
+
50
+ }
51
+
52
+ }