d2aura 26.0.7 → 26.0.9

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 (121) hide show
  1. package/api/eda/edaManagerApi.d.ts +26 -0
  2. package/api/eda/edaManagerApi.js +51 -0
  3. package/api/eda/edaManagerApi.js.map +1 -0
  4. package/api/eda/generated/events.d.ts +132 -0
  5. package/api/eda/generated/events.js +295 -0
  6. package/api/eda/generated/events.js.map +1 -0
  7. package/api/eda/generated/structures.d.ts +109 -0
  8. package/api/eda/generated/structures.js +2 -0
  9. package/api/eda/generated/structures.js.map +1 -0
  10. package/core/i18n/d2aura.en.json +40 -1
  11. package/core/i18n/d2aura.sk.json +87 -1
  12. package/coreui/components/edaManagerComponent/components/edaBasePanel.d.ts +16 -0
  13. package/coreui/components/edaManagerComponent/components/edaBasePanel.js +85 -0
  14. package/coreui/components/edaManagerComponent/components/edaBasePanel.js.map +1 -0
  15. package/coreui/components/edaManagerComponent/components/edaDataBasePanel.d.ts +43 -0
  16. package/coreui/components/edaManagerComponent/components/edaDataBasePanel.js +217 -0
  17. package/coreui/components/edaManagerComponent/components/edaDataBasePanel.js.map +1 -0
  18. package/coreui/components/edaManagerComponent/components/edaDetailPanel.d.ts +16 -0
  19. package/coreui/components/edaManagerComponent/components/edaDetailPanel.js +25 -0
  20. package/coreui/components/edaManagerComponent/components/edaDetailPanel.js.map +1 -0
  21. package/coreui/components/edaManagerComponent/components/edaGraphPanel.d.ts +7 -0
  22. package/coreui/components/edaManagerComponent/components/edaGraphPanel.js +393 -0
  23. package/coreui/components/edaManagerComponent/components/edaGraphPanel.js.map +1 -0
  24. package/coreui/components/edaManagerComponent/components/edaGroupDetailPanel.d.ts +18 -0
  25. package/coreui/components/edaManagerComponent/components/edaGroupDetailPanel.js +72 -0
  26. package/coreui/components/edaManagerComponent/components/edaGroupDetailPanel.js.map +1 -0
  27. package/coreui/components/edaManagerComponent/components/edaSampleRangePickerPanel.d.ts +29 -0
  28. package/coreui/components/edaManagerComponent/components/edaSampleRangePickerPanel.js +94 -0
  29. package/coreui/components/edaManagerComponent/components/edaSampleRangePickerPanel.js.map +1 -0
  30. package/coreui/components/edaManagerComponent/components/edaScenarioDetailPanel.d.ts +18 -0
  31. package/coreui/components/edaManagerComponent/components/edaScenarioDetailPanel.js +86 -0
  32. package/coreui/components/edaManagerComponent/components/edaScenarioDetailPanel.js.map +1 -0
  33. package/coreui/components/edaManagerComponent/components/edaTablePanel.d.ts +4 -0
  34. package/coreui/components/edaManagerComponent/components/edaTablePanel.js +73 -0
  35. package/coreui/components/edaManagerComponent/components/edaTablePanel.js.map +1 -0
  36. package/coreui/components/edaManagerComponent/components/edaTimeWindowPickerPanel.d.ts +34 -0
  37. package/coreui/components/edaManagerComponent/components/edaTimeWindowPickerPanel.js +202 -0
  38. package/coreui/components/edaManagerComponent/components/edaTimeWindowPickerPanel.js.map +1 -0
  39. package/coreui/components/edaManagerComponent/components/edaTreeView.d.ts +61 -0
  40. package/coreui/components/edaManagerComponent/components/edaTreeView.js +399 -0
  41. package/coreui/components/edaManagerComponent/components/edaTreeView.js.map +1 -0
  42. package/coreui/components/edaManagerComponent/components/edaVectorDetailPanel.d.ts +20 -0
  43. package/coreui/components/edaManagerComponent/components/edaVectorDetailPanel.js +162 -0
  44. package/coreui/components/edaManagerComponent/components/edaVectorDetailPanel.js.map +1 -0
  45. package/coreui/components/edaManagerComponent/constants/edaTypes.d.ts +78 -0
  46. package/coreui/components/edaManagerComponent/constants/edaTypes.js +71 -0
  47. package/coreui/components/edaManagerComponent/constants/edaTypes.js.map +1 -0
  48. package/coreui/components/edaManagerComponent/constants/storageTypes.d.ts +5 -0
  49. package/coreui/components/edaManagerComponent/constants/storageTypes.js +7 -0
  50. package/coreui/components/edaManagerComponent/constants/storageTypes.js.map +1 -0
  51. package/coreui/components/edaManagerComponent/context/sharedSampleRange.d.ts +17 -0
  52. package/coreui/components/edaManagerComponent/context/sharedSampleRange.js +3 -0
  53. package/coreui/components/edaManagerComponent/context/sharedSampleRange.js.map +1 -0
  54. package/coreui/components/edaManagerComponent/context/sharedSampleRangeWrapper.d.ts +6 -0
  55. package/coreui/components/edaManagerComponent/context/sharedSampleRangeWrapper.js +14 -0
  56. package/coreui/components/edaManagerComponent/context/sharedSampleRangeWrapper.js.map +1 -0
  57. package/coreui/components/edaManagerComponent/edaDetail.d.ts +45 -0
  58. package/coreui/components/edaManagerComponent/edaDetail.js +173 -0
  59. package/coreui/components/edaManagerComponent/edaDetail.js.map +1 -0
  60. package/coreui/components/edaManagerComponent/edaManager.d.ts +20 -0
  61. package/coreui/components/edaManagerComponent/edaManager.js +33 -0
  62. package/coreui/components/edaManagerComponent/edaManager.js.map +1 -0
  63. package/coreui/components/edaManagerComponent/edaNavigator.d.ts +19 -0
  64. package/coreui/components/edaManagerComponent/edaNavigator.js +64 -0
  65. package/coreui/components/edaManagerComponent/edaNavigator.js.map +1 -0
  66. package/coreui/components/edaManagerComponent/edaSelect.d.ts +10 -0
  67. package/coreui/components/edaManagerComponent/edaSelect.js +9 -0
  68. package/coreui/components/edaManagerComponent/edaSelect.js.map +1 -0
  69. package/coreui/components/edaManagerComponent/icons/letterCFilled.d.ts +6 -0
  70. package/coreui/components/edaManagerComponent/icons/letterCFilled.js +6 -0
  71. package/coreui/components/edaManagerComponent/icons/letterCFilled.js.map +1 -0
  72. package/coreui/components/edaManagerComponent/icons/letterDFilled.d.ts +6 -0
  73. package/coreui/components/edaManagerComponent/icons/letterDFilled.js +6 -0
  74. package/coreui/components/edaManagerComponent/icons/letterDFilled.js.map +1 -0
  75. package/coreui/components/edaManagerComponent/icons/letterHFilled.d.ts +6 -0
  76. package/coreui/components/edaManagerComponent/icons/letterHFilled.js +6 -0
  77. package/coreui/components/edaManagerComponent/icons/letterHFilled.js.map +1 -0
  78. package/coreui/components/edaManagerComponent/icons/letterIFilled.d.ts +6 -0
  79. package/coreui/components/edaManagerComponent/icons/letterIFilled.js +6 -0
  80. package/coreui/components/edaManagerComponent/icons/letterIFilled.js.map +1 -0
  81. package/coreui/components/edaManagerComponent/icons/letterMFilled.d.ts +6 -0
  82. package/coreui/components/edaManagerComponent/icons/letterMFilled.js +6 -0
  83. package/coreui/components/edaManagerComponent/icons/letterMFilled.js.map +1 -0
  84. package/coreui/components/edaManagerComponent/icons/numberFifteenFilled.d.ts +6 -0
  85. package/coreui/components/edaManagerComponent/icons/numberFifteenFilled.js +7 -0
  86. package/coreui/components/edaManagerComponent/icons/numberFifteenFilled.js.map +1 -0
  87. package/coreui/components/edaManagerComponent/icons/pairOutlined.d.ts +6 -0
  88. package/coreui/components/edaManagerComponent/icons/pairOutlined.js +6 -0
  89. package/coreui/components/edaManagerComponent/icons/pairOutlined.js.map +1 -0
  90. package/coreui/components/edaManagerComponent/icons/periodicOutlined.d.ts +6 -0
  91. package/coreui/components/edaManagerComponent/icons/periodicOutlined.js +6 -0
  92. package/coreui/components/edaManagerComponent/icons/periodicOutlined.js.map +1 -0
  93. package/coreui/components/edaManagerComponent/utils/utils.d.ts +2 -0
  94. package/coreui/components/edaManagerComponent/utils/utils.js +8 -0
  95. package/coreui/components/edaManagerComponent/utils/utils.js.map +1 -0
  96. package/d2configuration/edaManager/DB.EM_EDA_Function.xml +65 -0
  97. package/d2configuration/edaManager/DB.EM_EDA_GroupVector.xml +65 -0
  98. package/d2configuration/edaManager/DB.EM_EDA_Scenario.xml +65 -0
  99. package/d2configuration/edaManager/DB.EM_EDA_Vector.xml +65 -0
  100. package/d2configuration/edaManager/DB.EM_EDA_VectorEx.xml +65 -0
  101. package/d2configuration/edaManager/DBC_EM_EDA.xml +51 -0
  102. package/d2configuration/edaManager/E.EM_DETAIL_IMPL.xml +124 -0
  103. package/d2configuration/edaManager/E.EM_DETAIL_UNIT.xml +202 -0
  104. package/d2configuration/edaManager/E.EM_NAVIGATOR_IMPL.xml +160 -0
  105. package/d2configuration/edaManager/E.EM_NAVIGATOR_SQL.xml +272 -0
  106. package/d2configuration/edaManager/E.EM_NAVIGATOR_UNIT.xml +346 -0
  107. package/d2configuration/edaManager/E.EM_VECTOR_IMPL.xml +92 -0
  108. package/d2configuration/edaManager/E.EM_VECTOR_MANAGER.xml +116 -0
  109. package/d2configuration/edaManager/E.EM_VECTOR_UNIT.xml +124 -0
  110. package/d2configuration/edaManager/EDA_CancelSession.xml +54 -0
  111. package/d2configuration/edaManager/EDA_GetSessionId.xml +54 -0
  112. package/d2configuration/edaManager/EDA_ReadValuesFromVektorRec.xml +54 -0
  113. package/d2configuration/edaManager/SD.EM_EDA_Function.xml +135 -0
  114. package/d2configuration/edaManager/SD.EM_EDA_GroupVector.xml +190 -0
  115. package/d2configuration/edaManager/SD.EM_EDA_ReadValuesFromVector_V1.xml +168 -0
  116. package/d2configuration/edaManager/SD.EM_EDA_Scenario.xml +322 -0
  117. package/d2configuration/edaManager/SD.EM_EDA_Vector.xml +465 -0
  118. package/d2configuration/edaManager/SD.EM_EDA_VectorEx.xml +80 -0
  119. package/d2configuration/edaManager/SD.EM_EDA_VectorValues.xml +58 -0
  120. package/d2configuration/edaManager/SD.EM_Tree_Item.xml +113 -0
  121. package/package.json +8 -6
@@ -0,0 +1,202 @@
1
+ import React from "react";
2
+ import WithCss from "d2coreui/components/style/withCss";
3
+ import { createStyles } from "antd-style";
4
+ import { LocaleHolder } from "d2core/i18n/localeHolder";
5
+ import { Button, Space } from "antd";
6
+ import { LeftOutlined, RightOutlined, VerticalLeftOutlined, VerticalRightOutlined } from "@ant-design/icons";
7
+ import EnumValuePicker from "d2coreui/components/picker/enumValuePicker";
8
+ import { StepType } from "../constants/edaTypes";
9
+ const useStyles = createStyles(({ css, token }) => {
10
+ return {
11
+ baseLayout: css `
12
+ .segmented {
13
+ border: 1px solid ${token.colorBorder};
14
+ }
15
+ .segmented.ant-segmented-sm {
16
+ height: 24px;
17
+ }
18
+ .segmented {
19
+ height: 32px;
20
+ }
21
+ .segmented.ant-segmented-lg {
22
+ height: 40px;
23
+ }
24
+
25
+ .ant-segmented.ant-segmented-sm .ant-segmented-item-label {
26
+ min-height: 18px;
27
+ line-height: 18px;
28
+ }
29
+ .ant-segmented .ant-segmented-item-label {
30
+ min-height: 26px;
31
+ line-height: 26px;
32
+ }
33
+ .ant-segmented.ant-segmented-lg .ant-segmented-item-label {
34
+ min-height: 34px;
35
+ line-height: 34px;
36
+ }
37
+
38
+ .ant-space-addon {
39
+ white-space: nowrap;
40
+ }
41
+ `,
42
+ };
43
+ });
44
+ export class EdaTimeWindowPickerPanel extends React.Component {
45
+ constructor(props) {
46
+ super(props);
47
+ this.mask = LocaleHolder.getDateTimeFormat(true, false, false);
48
+ const { bt, et } = getRange(props.start, props.end, props.step);
49
+ this.state = {
50
+ bt: bt,
51
+ et: et,
52
+ step: props.step,
53
+ };
54
+ this.toStart = this.toStart.bind(this);
55
+ this.toEnd = this.toEnd.bind(this);
56
+ this.previous = this.previous.bind(this);
57
+ this.next = this.next.bind(this);
58
+ this.onStepUpdated = this.onStepUpdated.bind(this);
59
+ this.timeWindowChanged = this.timeWindowChanged.bind(this);
60
+ }
61
+ componentDidUpdate(prevProps) {
62
+ if (!prevProps.start.isSame(this.props.start) || !prevProps.end.isSame(this.props.end)) {
63
+ const { bt, et } = getRange(this.props.start, this.props.end, this.state.step);
64
+ this.setState({ bt, et }, this.timeWindowChanged);
65
+ }
66
+ if (prevProps.step !== this.props.step) {
67
+ const { bt, et } = getRange(this.props.start, this.props.end, this.props.step);
68
+ this.setState({ bt, et, step: this.props.step }, this.timeWindowChanged);
69
+ }
70
+ }
71
+ render() {
72
+ const { size, start, end, disabled } = this.props;
73
+ const { bt, et, step } = this.state;
74
+ return (React.createElement(WithCss, { useStyles: useStyles }, (css) => React.createElement(Space, { size: size, className: css.styles.baseLayout },
75
+ React.createElement(Space.Compact, { size: size },
76
+ React.createElement(Button, { icon: React.createElement(VerticalRightOutlined, null), disabled: bt.isSameOrBefore(start) || disabled, onClick: this.toStart }),
77
+ React.createElement(Button, { icon: React.createElement(LeftOutlined, null), disabled: bt.isSameOrBefore(start) || disabled, onClick: this.previous }),
78
+ React.createElement(Space.Addon, null, bt.format(this.mask)),
79
+ React.createElement(Space.Addon, null, "\u27F7"),
80
+ React.createElement(Space.Addon, null, et.format(this.mask)),
81
+ React.createElement(Button, { icon: React.createElement(RightOutlined, null), disabled: et.isSameOrAfter(end) || disabled, onClick: this.next }),
82
+ React.createElement(Button, { icon: React.createElement(VerticalLeftOutlined, null), disabled: et.isSameOrAfter(end) || disabled, onClick: this.toEnd })),
83
+ React.createElement(EnumValuePicker, { values: StepType, value: step, style: { width: '150px' }, translateValue: true, size: size, popupMatchSelectWidth: true, onChange: (value) => {
84
+ if (value !== undefined) {
85
+ this.onStepUpdated(value);
86
+ }
87
+ } }))));
88
+ }
89
+ toStart() {
90
+ const { start } = this.props;
91
+ const { step } = this.state;
92
+ const unit = stepToDayJsType(step);
93
+ if (!unit) {
94
+ return;
95
+ }
96
+ this.setState({ bt: start, et: start.endOf(unit) }, this.timeWindowChanged);
97
+ }
98
+ toEnd() {
99
+ const { end } = this.props;
100
+ const { step } = this.state;
101
+ const unit = stepToDayJsType(step);
102
+ if (!unit) {
103
+ return;
104
+ }
105
+ this.setState({ bt: end.startOf(unit), et: end }, this.timeWindowChanged);
106
+ }
107
+ previous() {
108
+ const { start } = this.props;
109
+ const { step } = this.state;
110
+ const unit = stepToDayJsType(step);
111
+ let bt = this.state.bt;
112
+ let et;
113
+ if (!unit) {
114
+ return;
115
+ }
116
+ bt = bt.subtract(1, 'minute').startOf(unit);
117
+ et = bt.endOf(unit);
118
+ if (bt.isBefore(start)) {
119
+ bt = start;
120
+ }
121
+ this.setState({ bt, et }, this.timeWindowChanged);
122
+ }
123
+ next() {
124
+ const { end } = this.props;
125
+ const { step } = this.state;
126
+ const unit = stepToDayJsType(step);
127
+ let bt;
128
+ let et = this.state.et;
129
+ if (!unit) {
130
+ return;
131
+ }
132
+ et = et.add(1, 'minute').endOf(unit);
133
+ bt = et.startOf(unit);
134
+ if (et.isAfter(end)) {
135
+ et = end;
136
+ }
137
+ this.setState({ bt, et }, this.timeWindowChanged);
138
+ }
139
+ onStepUpdated(step) {
140
+ const { start, end } = this.props;
141
+ const unit = stepToDayJsType(step);
142
+ let bt;
143
+ let et;
144
+ if (unit) {
145
+ bt = this.state.bt.startOf(unit);
146
+ et = bt.endOf(unit);
147
+ if (bt.isBefore(start)) {
148
+ bt = start;
149
+ }
150
+ if (et.isAfter(end)) {
151
+ et = end;
152
+ }
153
+ }
154
+ else {
155
+ bt = start;
156
+ et = end;
157
+ }
158
+ this.setState({ step, bt, et }, this.timeWindowChanged);
159
+ }
160
+ timeWindowChanged() {
161
+ const { bt, et, step } = this.state;
162
+ this.props.onTimeWindowChanged?.(bt, et, step);
163
+ }
164
+ }
165
+ function stepToDayJsType(step) {
166
+ switch (step) {
167
+ case StepType.Hourly:
168
+ return 'hour';
169
+ case StepType.Daily:
170
+ return 'day';
171
+ case StepType.Weekly:
172
+ return 'week';
173
+ case StepType.Monthly:
174
+ return 'month';
175
+ case StepType.Yearly:
176
+ return 'year';
177
+ case StepType.WholeInterval:
178
+ return null;
179
+ }
180
+ }
181
+ export function getRange(start, end, step) {
182
+ const unit = stepToDayJsType(step);
183
+ if (!unit) {
184
+ return {
185
+ bt: start,
186
+ et: end,
187
+ };
188
+ }
189
+ let bt = start.startOf(unit);
190
+ let et = start.endOf(unit);
191
+ if (bt.isBefore(start)) {
192
+ bt = start;
193
+ }
194
+ if (et.isAfter(end)) {
195
+ et = end;
196
+ }
197
+ return {
198
+ bt: bt,
199
+ et: et,
200
+ };
201
+ }
202
+ //# sourceMappingURL=edaTimeWindowPickerPanel.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"edaTimeWindowPickerPanel.js","sourceRoot":"","sources":["../../../../../../coreui/components/edaManagerComponent/components/edaTimeWindowPickerPanel.tsx"],"names":[],"mappings":"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","sourcesContent":["import React from \"react\";\r\nimport WithCss from \"d2coreui/components/style/withCss\";\r\nimport {createStyles} from \"antd-style\";\r\nimport {LocaleHolder} from \"d2core/i18n/localeHolder\";\r\nimport {Button, Space} from \"antd\";\r\nimport {SizeType} from \"antd/lib/config-provider/SizeContext\";\r\nimport {LeftOutlined, RightOutlined, VerticalLeftOutlined, VerticalRightOutlined} from \"@ant-design/icons\";\r\nimport dayjs from \"d2core/dayjs\";\r\nimport {OpUnitType} from \"dayjs\";\r\nimport EnumValuePicker from \"d2coreui/components/picker/enumValuePicker\";\r\nimport {StepType} from \"../constants/edaTypes\";\r\n\r\nconst useStyles = createStyles(({css, token}) => {\r\n return {\r\n baseLayout: css`\r\n .segmented {\r\n border: 1px solid ${token.colorBorder};\r\n }\r\n .segmented.ant-segmented-sm {\r\n height: 24px;\r\n }\r\n .segmented {\r\n height: 32px;\r\n }\r\n .segmented.ant-segmented-lg {\r\n height: 40px;\r\n }\r\n\r\n .ant-segmented.ant-segmented-sm .ant-segmented-item-label {\r\n min-height: 18px;\r\n line-height: 18px;\r\n }\r\n .ant-segmented .ant-segmented-item-label {\r\n min-height: 26px;\r\n line-height: 26px;\r\n }\r\n .ant-segmented.ant-segmented-lg .ant-segmented-item-label {\r\n min-height: 34px;\r\n line-height: 34px;\r\n }\r\n \r\n .ant-space-addon {\r\n white-space: nowrap;\r\n }\r\n `,\r\n }\r\n});\r\n\r\ninterface Props {\r\n start: dayjs.Dayjs\r\n end: dayjs.Dayjs\r\n step: StepType\r\n size?: SizeType\r\n disabled?: boolean\r\n\r\n onTimeWindowChanged?: (bt: dayjs.Dayjs, et: dayjs.Dayjs, step: StepType) => void\r\n}\r\n\r\ninterface State {\r\n bt: dayjs.Dayjs\r\n et: dayjs.Dayjs\r\n step: StepType\r\n}\r\n\r\nexport class EdaTimeWindowPickerPanel extends React.Component<Props, State> {\r\n private mask = LocaleHolder.getDateTimeFormat(true, false, false);\r\n\r\n constructor(props: Readonly<Props>) {\r\n super(props);\r\n const {bt, et} = getRange(props.start, props.end, props.step);\r\n\r\n this.state = {\r\n bt: bt,\r\n et: et,\r\n step: props.step,\r\n }\r\n\r\n this.toStart = this.toStart.bind(this);\r\n this.toEnd = this.toEnd.bind(this);\r\n this.previous = this.previous.bind(this);\r\n this.next = this.next.bind(this);\r\n this.onStepUpdated = this.onStepUpdated.bind(this);\r\n this.timeWindowChanged = this.timeWindowChanged.bind(this);\r\n }\r\n\r\n componentDidUpdate(prevProps: Readonly<Props>) {\r\n if (!prevProps.start.isSame(this.props.start) || !prevProps.end.isSame(this.props.end)) {\r\n const {bt, et} = getRange(this.props.start, this.props.end, this.state.step);\r\n this.setState({bt, et}, this.timeWindowChanged);\r\n }\r\n\r\n if (prevProps.step !== this.props.step) {\r\n const {bt, et} = getRange(this.props.start, this.props.end, this.props.step);\r\n this.setState({bt, et, step: this.props.step}, this.timeWindowChanged);\r\n }\r\n }\r\n\r\n render() {\r\n const {size, start, end, disabled} = this.props;\r\n const {bt, et, step} = this.state;\r\n\r\n return (\r\n <WithCss useStyles={useStyles}>\r\n {(css) =>\r\n <Space size={size} className={css.styles.baseLayout}>\r\n <Space.Compact size={size}>\r\n <Button icon={<VerticalRightOutlined/>} disabled={bt.isSameOrBefore(start) || disabled} onClick={this.toStart}/>\r\n <Button icon={<LeftOutlined/>} disabled={bt.isSameOrBefore(start) || disabled} onClick={this.previous}/>\r\n <Space.Addon>{bt.format(this.mask)}</Space.Addon>\r\n <Space.Addon>⟷</Space.Addon>\r\n <Space.Addon>{et.format(this.mask)}</Space.Addon>\r\n <Button icon={<RightOutlined/>} disabled={et.isSameOrAfter(end) || disabled} onClick={this.next}/>\r\n <Button icon={<VerticalLeftOutlined/>} disabled={et.isSameOrAfter(end) || disabled} onClick={this.toEnd}/>\r\n </Space.Compact>\r\n\r\n <EnumValuePicker\r\n values={StepType}\r\n value={step}\r\n style={{width: '150px'}}\r\n translateValue\r\n size={size}\r\n popupMatchSelectWidth\r\n onChange={(value) => {\r\n if (value !== undefined) {\r\n this.onStepUpdated(value as StepType);\r\n }\r\n }}\r\n />\r\n </Space>\r\n }\r\n </WithCss>\r\n )\r\n }\r\n\r\n private toStart() {\r\n const {start} = this.props;\r\n const {step} = this.state;\r\n const unit = stepToDayJsType(step);\r\n\r\n if (!unit) {\r\n return;\r\n }\r\n\r\n this.setState({bt: start, et: start.endOf(unit)}, this.timeWindowChanged);\r\n }\r\n\r\n private toEnd() {\r\n const {end} = this.props;\r\n const {step} = this.state;\r\n const unit = stepToDayJsType(step);\r\n\r\n if (!unit) {\r\n return;\r\n }\r\n\r\n this.setState({bt: end.startOf(unit), et: end}, this.timeWindowChanged);\r\n }\r\n\r\n private previous() {\r\n const {start} = this.props;\r\n const {step} = this.state;\r\n const unit = stepToDayJsType(step);\r\n let bt = this.state.bt;\r\n let et;\r\n\r\n if (!unit) {\r\n return;\r\n }\r\n\r\n bt = bt.subtract(1, 'minute').startOf(unit);\r\n et = bt.endOf(unit);\r\n\r\n if (bt.isBefore(start)) {\r\n bt = start;\r\n }\r\n\r\n this.setState({bt, et}, this.timeWindowChanged);\r\n }\r\n\r\n private next() {\r\n const {end} = this.props;\r\n const {step} = this.state;\r\n const unit = stepToDayJsType(step);\r\n let bt;\r\n let et = this.state.et;\r\n\r\n if (!unit) {\r\n return;\r\n }\r\n\r\n et = et.add(1, 'minute').endOf(unit);\r\n bt = et.startOf(unit);\r\n\r\n if (et.isAfter(end)) {\r\n et = end;\r\n }\r\n\r\n this.setState({bt, et}, this.timeWindowChanged);\r\n }\r\n\r\n private onStepUpdated(step: StepType) {\r\n const {start, end} = this.props;\r\n const unit = stepToDayJsType(step);\r\n let bt;\r\n let et;\r\n\r\n if (unit) {\r\n bt = this.state.bt.startOf(unit);\r\n et = bt.endOf(unit);\r\n\r\n if (bt.isBefore(start)) {\r\n bt = start;\r\n }\r\n if (et.isAfter(end)) {\r\n et = end;\r\n }\r\n } else {\r\n bt = start;\r\n et = end;\r\n }\r\n\r\n this.setState({step, bt, et}, this.timeWindowChanged);\r\n }\r\n\r\n private timeWindowChanged() {\r\n const {bt, et, step} = this.state;\r\n this.props.onTimeWindowChanged?.(bt, et, step);\r\n }\r\n}\r\n\r\nfunction stepToDayJsType(step: StepType): OpUnitType | null {\r\n switch (step) {\r\n case StepType.Hourly:\r\n return 'hour';\r\n case StepType.Daily:\r\n return 'day';\r\n case StepType.Weekly:\r\n return 'week';\r\n case StepType.Monthly:\r\n return 'month';\r\n case StepType.Yearly:\r\n return 'year';\r\n case StepType.WholeInterval:\r\n return null;\r\n }\r\n}\r\n\r\nexport function getRange(start: dayjs.Dayjs, end: dayjs.Dayjs, step: StepType) {\r\n const unit = stepToDayJsType(step);\r\n\r\n if (!unit) {\r\n return {\r\n bt: start,\r\n et: end,\r\n };\r\n }\r\n\r\n let bt: dayjs.Dayjs = start.startOf(unit);\r\n let et: dayjs.Dayjs = start.endOf(unit);\r\n\r\n if (bt.isBefore(start)) {\r\n bt = start;\r\n }\r\n if (et.isAfter(end)) {\r\n et = end;\r\n }\r\n\r\n return {\r\n bt: bt,\r\n et: et,\r\n }\r\n}\r\n"]}
@@ -0,0 +1,61 @@
1
+ import React, { Key } from "react";
2
+ import { TreeDataNode } from "antd";
3
+ import EdaManagerApi from "../../../../api/eda/edaManagerApi";
4
+ import { TypedIndex } from "../constants/edaTypes";
5
+ import { SD_EM_Tree_Item } from "../../../../api/eda/generated/structures";
6
+ export declare enum TreeViewType {
7
+ GROUP = "group",
8
+ SCENARIO = "scenario"
9
+ }
10
+ interface PageData {
11
+ total: number;
12
+ offset: number;
13
+ done: boolean;
14
+ }
15
+ interface DataNode extends TreeDataNode {
16
+ group?: SD_EM_Tree_Item;
17
+ vector?: SD_EM_Tree_Item;
18
+ scenario?: SD_EM_Tree_Item;
19
+ vectorOffset?: PageData;
20
+ groupOffset?: PageData;
21
+ scenarioOffset?: PageData;
22
+ }
23
+ interface Props {
24
+ api: EdaManagerApi;
25
+ type: TreeViewType;
26
+ onItemSelected?: () => void;
27
+ onItemDoubleClick?: (item: TypedIndex) => void;
28
+ }
29
+ interface State {
30
+ treeData: DataNode[];
31
+ expandedKeys: Key[];
32
+ selectedKeys: Key[];
33
+ height: number;
34
+ loading?: string;
35
+ }
36
+ export declare class EdaTreeView extends React.Component<Props, State> {
37
+ private readonly childParentMap;
38
+ private readonly nodeMap;
39
+ private readonly divRef;
40
+ private resizeObserver;
41
+ constructor(props: Readonly<Props>);
42
+ componentDidMount(): Promise<void>;
43
+ componentDidUpdate(prevProps: Props): Promise<void>;
44
+ componentWillUnmount(): void;
45
+ render(): React.ReactNode;
46
+ private titleRenderer;
47
+ private renderTitle;
48
+ private onExpand;
49
+ private loadData;
50
+ private loadGroups;
51
+ private loadScenarios;
52
+ private loadVectors;
53
+ private onLoadData;
54
+ private onDoubleClick;
55
+ private updateTree;
56
+ private convertGroups;
57
+ private convertScenarios;
58
+ private convertVectors;
59
+ private getVectorIcon;
60
+ }
61
+ export {};