d2aura 26.0.13 → 26.0.15

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 (158) hide show
  1. package/api/eda/edaManagerApi.d.ts +54 -15
  2. package/api/eda/edaManagerApi.js +106 -29
  3. package/api/eda/edaManagerApi.js.map +1 -1
  4. package/api/eda/generated/events.d.ts +115 -35
  5. package/api/eda/generated/events.js +193 -41
  6. package/api/eda/generated/events.js.map +1 -1
  7. package/api/eda/generated/structures.d.ts +110 -33
  8. package/api/eda/generated/structures.js.map +1 -1
  9. package/core/i18n/d2aura.en.json +14 -0
  10. package/core/i18n/d2aura.sk.json +92 -2
  11. package/coreui/components/edaManager/components/detail/components/edaVectorMassChangeButton.d.ts +1 -1
  12. package/coreui/components/edaManager/components/detail/components/edaVectorMassChangeButton.js +2 -2
  13. package/coreui/components/edaManager/components/detail/components/edaVectorMassChangeButton.js.map +1 -1
  14. package/coreui/components/edaManagerComponent/components/edaChartViewer.d.ts +14 -0
  15. package/coreui/components/edaManagerComponent/components/edaChartViewer.js +374 -0
  16. package/coreui/components/edaManagerComponent/components/edaChartViewer.js.map +1 -0
  17. package/coreui/components/edaManagerComponent/components/edaDataBasePanel.d.ts +4 -8
  18. package/coreui/components/edaManagerComponent/components/edaDataBasePanel.js +18 -75
  19. package/coreui/components/edaManagerComponent/components/edaDataBasePanel.js.map +1 -1
  20. package/coreui/components/edaManagerComponent/components/edaDetailPanel.d.ts +5 -14
  21. package/coreui/components/edaManagerComponent/components/edaDetailPanel.js +80 -19
  22. package/coreui/components/edaManagerComponent/components/edaDetailPanel.js.map +1 -1
  23. package/coreui/components/edaManagerComponent/components/edaGraphPanel.d.ts +2 -7
  24. package/coreui/components/edaManagerComponent/components/edaGraphPanel.js +22 -390
  25. package/coreui/components/edaManagerComponent/components/edaGraphPanel.js.map +1 -1
  26. package/coreui/components/edaManagerComponent/components/edaGroupDetailPanel.d.ts +3 -14
  27. package/coreui/components/edaManagerComponent/components/edaGroupDetailPanel.js +54 -67
  28. package/coreui/components/edaManagerComponent/components/edaGroupDetailPanel.js.map +1 -1
  29. package/coreui/components/edaManagerComponent/components/edaLoadingOverlay.d.ts +7 -0
  30. package/coreui/components/edaManagerComponent/components/edaLoadingOverlay.js +35 -0
  31. package/coreui/components/edaManagerComponent/components/edaLoadingOverlay.js.map +1 -0
  32. package/coreui/components/edaManagerComponent/components/edaSampleRangePickerPanel.d.ts +12 -18
  33. package/coreui/components/edaManagerComponent/components/edaSampleRangePickerPanel.js +55 -51
  34. package/coreui/components/edaManagerComponent/components/edaSampleRangePickerPanel.js.map +1 -1
  35. package/coreui/components/edaManagerComponent/components/edaScenarioDetailPanel.d.ts +3 -14
  36. package/coreui/components/edaManagerComponent/components/edaScenarioDetailPanel.js +67 -81
  37. package/coreui/components/edaManagerComponent/components/edaScenarioDetailPanel.js.map +1 -1
  38. package/coreui/components/edaManagerComponent/components/edaTablePanel.d.ts +2 -6
  39. package/coreui/components/edaManagerComponent/components/edaTablePanel.js +188 -110
  40. package/coreui/components/edaManagerComponent/components/edaTablePanel.js.map +1 -1
  41. package/coreui/components/edaManagerComponent/components/edaTimeWindowPickerPanel.d.ts +2 -13
  42. package/coreui/components/edaManagerComponent/components/edaTimeWindowPickerPanel.js +57 -88
  43. package/coreui/components/edaManagerComponent/components/edaTimeWindowPickerPanel.js.map +1 -1
  44. package/coreui/components/edaManagerComponent/components/edaTreeView.d.ts +9 -51
  45. package/coreui/components/edaManagerComponent/components/edaTreeView.js +431 -262
  46. package/coreui/components/edaManagerComponent/components/edaTreeView.js.map +1 -1
  47. package/coreui/components/edaManagerComponent/components/edaVectorDetailPanel.d.ts +3 -21
  48. package/coreui/components/edaManagerComponent/components/edaVectorDetailPanel.js +160 -179
  49. package/coreui/components/edaManagerComponent/components/edaVectorDetailPanel.js.map +1 -1
  50. package/coreui/components/edaManagerComponent/constants/actionTypes.d.ts +5 -0
  51. package/coreui/components/edaManagerComponent/constants/actionTypes.js +7 -0
  52. package/coreui/components/edaManagerComponent/constants/actionTypes.js.map +1 -0
  53. package/coreui/components/edaManagerComponent/constants/edaTypes.d.ts +23 -11
  54. package/coreui/components/edaManagerComponent/constants/edaTypes.js +15 -0
  55. package/coreui/components/edaManagerComponent/constants/edaTypes.js.map +1 -1
  56. package/coreui/components/edaManagerComponent/context/edaConfigContext.d.ts +26 -0
  57. package/coreui/components/edaManagerComponent/context/edaConfigContext.js +20 -0
  58. package/coreui/components/edaManagerComponent/context/edaConfigContext.js.map +1 -0
  59. package/coreui/components/edaManagerComponent/context/edaVectorDataContext.d.ts +10 -16
  60. package/coreui/components/edaManagerComponent/context/edaVectorDataContext.js +8 -1
  61. package/coreui/components/edaManagerComponent/context/edaVectorDataContext.js.map +1 -1
  62. package/coreui/components/edaManagerComponent/context/edaVectorDataProvider.d.ts +0 -1
  63. package/coreui/components/edaManagerComponent/context/edaVectorDataProvider.js +90 -92
  64. package/coreui/components/edaManagerComponent/context/edaVectorDataProvider.js.map +1 -1
  65. package/coreui/components/edaManagerComponent/context/loadingContext.d.ts +1 -1
  66. package/coreui/components/edaManagerComponent/context/loadingContext.js.map +1 -1
  67. package/coreui/components/edaManagerComponent/context/{sharedSampleRange.d.ts → sharedSampleRangeContext.d.ts} +12 -4
  68. package/coreui/components/edaManagerComponent/context/sharedSampleRangeContext.js +10 -0
  69. package/coreui/components/edaManagerComponent/context/sharedSampleRangeContext.js.map +1 -0
  70. package/coreui/components/edaManagerComponent/context/useEdaActions.d.ts +9 -0
  71. package/coreui/components/edaManagerComponent/context/useEdaActions.js +36 -0
  72. package/coreui/components/edaManagerComponent/context/useEdaActions.js.map +1 -0
  73. package/coreui/components/edaManagerComponent/dialogs/descriptiveVectorDialog/controlButtons.d.ts +13 -0
  74. package/coreui/components/edaManagerComponent/dialogs/descriptiveVectorDialog/controlButtons.js +19 -0
  75. package/coreui/components/edaManagerComponent/dialogs/descriptiveVectorDialog/controlButtons.js.map +1 -0
  76. package/coreui/components/edaManagerComponent/dialogs/descriptiveVectorDialog/descriptiveVectorDetailPanel.d.ts +8 -0
  77. package/coreui/components/edaManagerComponent/dialogs/descriptiveVectorDialog/descriptiveVectorDetailPanel.js +171 -0
  78. package/coreui/components/edaManagerComponent/dialogs/descriptiveVectorDialog/descriptiveVectorDetailPanel.js.map +1 -0
  79. package/coreui/components/edaManagerComponent/dialogs/descriptiveVectorDialog/graphPanel.d.ts +22 -0
  80. package/coreui/components/edaManagerComponent/dialogs/descriptiveVectorDialog/graphPanel.js +75 -0
  81. package/coreui/components/edaManagerComponent/dialogs/descriptiveVectorDialog/graphPanel.js.map +1 -0
  82. package/coreui/components/edaManagerComponent/dialogs/descriptiveVectorDialog/intervalInput.d.ts +12 -0
  83. package/coreui/components/edaManagerComponent/dialogs/descriptiveVectorDialog/intervalInput.js +52 -0
  84. package/coreui/components/edaManagerComponent/dialogs/descriptiveVectorDialog/intervalInput.js.map +1 -0
  85. package/coreui/components/edaManagerComponent/dialogs/descriptiveVectorDialog/tablePanel.d.ts +22 -0
  86. package/coreui/components/edaManagerComponent/dialogs/descriptiveVectorDialog/tablePanel.js +130 -0
  87. package/coreui/components/edaManagerComponent/dialogs/descriptiveVectorDialog/tablePanel.js.map +1 -0
  88. package/coreui/components/edaManagerComponent/dialogs/descriptiveVectorDialog/types.d.ts +58 -0
  89. package/coreui/components/edaManagerComponent/dialogs/descriptiveVectorDialog/types.js +51 -0
  90. package/coreui/components/edaManagerComponent/dialogs/descriptiveVectorDialog/types.js.map +1 -0
  91. package/coreui/components/edaManagerComponent/dialogs/descriptiveVectorDialog/useSharedData.d.ts +18 -0
  92. package/coreui/components/edaManagerComponent/dialogs/descriptiveVectorDialog/useSharedData.js +74 -0
  93. package/coreui/components/edaManagerComponent/dialogs/descriptiveVectorDialog/useSharedData.js.map +1 -0
  94. package/coreui/components/edaManagerComponent/dialogs/descriptiveVectorDialog/utils.d.ts +38 -0
  95. package/coreui/components/edaManagerComponent/dialogs/descriptiveVectorDialog/utils.js +299 -0
  96. package/coreui/components/edaManagerComponent/dialogs/descriptiveVectorDialog/utils.js.map +1 -0
  97. package/coreui/components/edaManagerComponent/dialogs/edaDescriptiveVectorEditorDialog.d.ts +10 -0
  98. package/coreui/components/edaManagerComponent/dialogs/edaDescriptiveVectorEditorDialog.js +343 -0
  99. package/coreui/components/edaManagerComponent/dialogs/edaDescriptiveVectorEditorDialog.js.map +1 -0
  100. package/coreui/components/edaManagerComponent/dialogs/edaTableEditorDialog.d.ts +12 -0
  101. package/coreui/components/edaManagerComponent/dialogs/edaTableEditorDialog.js +268 -0
  102. package/coreui/components/edaManagerComponent/dialogs/edaTableEditorDialog.js.map +1 -0
  103. package/coreui/components/edaManagerComponent/dialogs/exportDialog.d.ts +18 -0
  104. package/coreui/components/edaManagerComponent/dialogs/exportDialog.js +156 -0
  105. package/coreui/components/edaManagerComponent/dialogs/exportDialog.js.map +1 -0
  106. package/coreui/components/edaManagerComponent/dialogs/groupVectorSelection.d.ts +12 -0
  107. package/coreui/components/edaManagerComponent/dialogs/groupVectorSelection.js +74 -0
  108. package/coreui/components/edaManagerComponent/dialogs/groupVectorSelection.js.map +1 -0
  109. package/coreui/components/edaManagerComponent/dialogs/insertVectorDialog.d.ts +16 -0
  110. package/coreui/components/edaManagerComponent/dialogs/insertVectorDialog.js +32 -0
  111. package/coreui/components/edaManagerComponent/dialogs/insertVectorDialog.js.map +1 -0
  112. package/coreui/components/edaManagerComponent/edaDetail.d.ts +7 -26
  113. package/coreui/components/edaManagerComponent/edaDetail.js +138 -106
  114. package/coreui/components/edaManagerComponent/edaDetail.js.map +1 -1
  115. package/coreui/components/edaManagerComponent/edaManager.d.ts +4 -11
  116. package/coreui/components/edaManagerComponent/edaManager.js +29 -22
  117. package/coreui/components/edaManagerComponent/edaManager.js.map +1 -1
  118. package/coreui/components/edaManagerComponent/edaNavigator.d.ts +6 -12
  119. package/coreui/components/edaManagerComponent/edaNavigator.js +36 -41
  120. package/coreui/components/edaManagerComponent/edaNavigator.js.map +1 -1
  121. package/coreui/components/edaManagerComponent/edaSelect.d.ts +4 -3
  122. package/coreui/components/edaManagerComponent/edaSelect.js +32 -54
  123. package/coreui/components/edaManagerComponent/edaSelect.js.map +1 -1
  124. package/coreui/components/edaManagerComponent/icons/folderRemoveOutlined.d.ts +6 -0
  125. package/coreui/components/edaManagerComponent/icons/folderRemoveOutlined.js +7 -0
  126. package/coreui/components/edaManagerComponent/icons/folderRemoveOutlined.js.map +1 -0
  127. package/coreui/components/edaManagerComponent/utils/export.d.ts +9 -0
  128. package/coreui/components/edaManagerComponent/utils/export.js +570 -0
  129. package/coreui/components/edaManagerComponent/utils/export.js.map +1 -0
  130. package/coreui/components/edaManagerComponent/utils/utils.d.ts +6 -12
  131. package/coreui/components/edaManagerComponent/utils/utils.js +26 -15
  132. package/coreui/components/edaManagerComponent/utils/utils.js.map +1 -1
  133. package/d2configuration/edaManager/DB.EM_EDA_FunctionPrescription.xml +65 -0
  134. package/d2configuration/edaManager/DB.EM_EDA_VectorScenario.xml +65 -0
  135. package/d2configuration/edaManager/E.EM_DETAIL_IMPL.xml +67 -1
  136. package/d2configuration/edaManager/E.EM_DETAIL_SQL.xml +85 -0
  137. package/d2configuration/edaManager/E.EM_DETAIL_UNIT.xml +143 -2
  138. package/d2configuration/edaManager/E.EM_NAVIGATOR_IMPL.xml +14 -6
  139. package/d2configuration/edaManager/E.EM_NAVIGATOR_SQL.xml +12 -1
  140. package/d2configuration/edaManager/E.EM_NAVIGATOR_UNIT.xml +114 -6
  141. package/d2configuration/edaManager/E.EM_VECTOR_IMPL.xml +30 -6
  142. package/d2configuration/edaManager/E.EM_VECTOR_UNIT.xml +119 -17
  143. package/d2configuration/edaManager/SD.EM_EDA_FunctionPrescription.xml +91 -0
  144. package/d2configuration/edaManager/SD.EM_EDA_PairVector.xml +454 -0
  145. package/d2configuration/edaManager/{SD.EM_EDA_StatVectorRec_V1.xml → SD.EM_EDA_VectorScenario.xml} +13 -36
  146. package/d2configuration/edaManager/{SD.EM_EDA_VectorValues.xml → SD.EM_EDA_VectorStats.xml} +39 -6
  147. package/d2configuration/edaManager/SD.EM_Filter_Condition.xml +1 -1
  148. package/package.json +5 -3
  149. package/coreui/components/edaManagerComponent/components/edaBasePanel.d.ts +0 -16
  150. package/coreui/components/edaManagerComponent/components/edaBasePanel.js +0 -85
  151. package/coreui/components/edaManagerComponent/components/edaBasePanel.js.map +0 -1
  152. package/coreui/components/edaManagerComponent/context/sharedSampleRange.js +0 -13
  153. package/coreui/components/edaManagerComponent/context/sharedSampleRange.js.map +0 -1
  154. package/d2configuration/edaManager/EDA_CancelSession.xml +0 -54
  155. package/d2configuration/edaManager/EDA_GetSessionId.xml +0 -54
  156. package/d2configuration/edaManager/EDA_ReadValuesFromVektorRec.xml +0 -54
  157. package/d2configuration/edaManager/EDA_StatVectorRec.xml +0 -56
  158. package/d2configuration/edaManager/SD.EM_EDA_ReadValuesFromVector_V1.xml +0 -168
@@ -0,0 +1,58 @@
1
+ import { DescriptiveVectorDetail } from "../../../../../api/eda/edaManagerApi";
2
+ import dayjs from "d2core/dayjs";
3
+ import { TreeDataNode } from "antd";
4
+ export declare enum FullPeriodType {
5
+ Base = 1,
6
+ YearQuarter = 2,
7
+ YearMonth = 3,
8
+ YearWeek = 4,
9
+ YearDay = 5,
10
+ Week = 6,
11
+ Day = 7,
12
+ Interval = 8
13
+ }
14
+ export declare enum DaysInWeek {
15
+ Monday = 0,
16
+ Tuesday = 1,
17
+ Wednesday = 2,
18
+ Thursday = 3,
19
+ Friday = 4,
20
+ Saturday = 5,
21
+ Sunday = 6
22
+ }
23
+ export declare enum MonthsInYear {
24
+ January = 0,
25
+ February = 1,
26
+ March = 2,
27
+ April = 3,
28
+ May = 4,
29
+ June = 5,
30
+ July = 6,
31
+ August = 7,
32
+ September = 8,
33
+ October = 9,
34
+ November = 10,
35
+ December = 11
36
+ }
37
+ export declare enum YearPeriodType {
38
+ Quarter = 1972,
39
+ Month = 1973,
40
+ Week = 1974,
41
+ Day = 1975
42
+ }
43
+ export declare enum QuarterType {
44
+ First = 1,
45
+ Second = 2,
46
+ Third = 3,
47
+ Fourth = 4
48
+ }
49
+ export interface DescriptiveVector extends Omit<DescriptiveVectorDetail, "timeFrom" | "timeTo"> {
50
+ timeFrom: dayjs.Dayjs;
51
+ timeTo: dayjs.Dayjs;
52
+ }
53
+ export interface TreeNode extends TreeDataNode {
54
+ data: DescriptiveVector;
55
+ }
56
+ export interface TableNode extends DescriptiveVector {
57
+ id: number;
58
+ }
@@ -0,0 +1,51 @@
1
+ export var FullPeriodType;
2
+ (function (FullPeriodType) {
3
+ FullPeriodType[FullPeriodType["Base"] = 1] = "Base";
4
+ FullPeriodType[FullPeriodType["YearQuarter"] = 2] = "YearQuarter";
5
+ FullPeriodType[FullPeriodType["YearMonth"] = 3] = "YearMonth";
6
+ FullPeriodType[FullPeriodType["YearWeek"] = 4] = "YearWeek";
7
+ FullPeriodType[FullPeriodType["YearDay"] = 5] = "YearDay";
8
+ FullPeriodType[FullPeriodType["Week"] = 6] = "Week";
9
+ FullPeriodType[FullPeriodType["Day"] = 7] = "Day";
10
+ FullPeriodType[FullPeriodType["Interval"] = 8] = "Interval";
11
+ })(FullPeriodType || (FullPeriodType = {}));
12
+ export var DaysInWeek;
13
+ (function (DaysInWeek) {
14
+ DaysInWeek[DaysInWeek["Monday"] = 0] = "Monday";
15
+ DaysInWeek[DaysInWeek["Tuesday"] = 1] = "Tuesday";
16
+ DaysInWeek[DaysInWeek["Wednesday"] = 2] = "Wednesday";
17
+ DaysInWeek[DaysInWeek["Thursday"] = 3] = "Thursday";
18
+ DaysInWeek[DaysInWeek["Friday"] = 4] = "Friday";
19
+ DaysInWeek[DaysInWeek["Saturday"] = 5] = "Saturday";
20
+ DaysInWeek[DaysInWeek["Sunday"] = 6] = "Sunday";
21
+ })(DaysInWeek || (DaysInWeek = {}));
22
+ export var MonthsInYear;
23
+ (function (MonthsInYear) {
24
+ MonthsInYear[MonthsInYear["January"] = 0] = "January";
25
+ MonthsInYear[MonthsInYear["February"] = 1] = "February";
26
+ MonthsInYear[MonthsInYear["March"] = 2] = "March";
27
+ MonthsInYear[MonthsInYear["April"] = 3] = "April";
28
+ MonthsInYear[MonthsInYear["May"] = 4] = "May";
29
+ MonthsInYear[MonthsInYear["June"] = 5] = "June";
30
+ MonthsInYear[MonthsInYear["July"] = 6] = "July";
31
+ MonthsInYear[MonthsInYear["August"] = 7] = "August";
32
+ MonthsInYear[MonthsInYear["September"] = 8] = "September";
33
+ MonthsInYear[MonthsInYear["October"] = 9] = "October";
34
+ MonthsInYear[MonthsInYear["November"] = 10] = "November";
35
+ MonthsInYear[MonthsInYear["December"] = 11] = "December";
36
+ })(MonthsInYear || (MonthsInYear = {}));
37
+ export var YearPeriodType;
38
+ (function (YearPeriodType) {
39
+ YearPeriodType[YearPeriodType["Quarter"] = 1972] = "Quarter";
40
+ YearPeriodType[YearPeriodType["Month"] = 1973] = "Month";
41
+ YearPeriodType[YearPeriodType["Week"] = 1974] = "Week";
42
+ YearPeriodType[YearPeriodType["Day"] = 1975] = "Day";
43
+ })(YearPeriodType || (YearPeriodType = {}));
44
+ export var QuarterType;
45
+ (function (QuarterType) {
46
+ QuarterType[QuarterType["First"] = 1] = "First";
47
+ QuarterType[QuarterType["Second"] = 2] = "Second";
48
+ QuarterType[QuarterType["Third"] = 3] = "Third";
49
+ QuarterType[QuarterType["Fourth"] = 4] = "Fourth";
50
+ })(QuarterType || (QuarterType = {}));
51
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../../../coreui/components/edaManagerComponent/dialogs/descriptiveVectorDialog/types.ts"],"names":[],"mappings":"AAIA,MAAM,CAAN,IAAY,cASX;AATD,WAAY,cAAc;IACtB,mDAAQ,CAAA;IACR,iEAAW,CAAA;IACX,6DAAS,CAAA;IACT,2DAAQ,CAAA;IACR,yDAAO,CAAA;IACP,mDAAI,CAAA;IACJ,iDAAG,CAAA;IACH,2DAAQ,CAAA;AACZ,CAAC,EATW,cAAc,KAAd,cAAc,QASzB;AAED,MAAM,CAAN,IAAY,UAQX;AARD,WAAY,UAAU;IAClB,+CAAM,CAAA;IACN,iDAAO,CAAA;IACP,qDAAS,CAAA;IACT,mDAAQ,CAAA;IACR,+CAAM,CAAA;IACN,mDAAQ,CAAA;IACR,+CAAM,CAAA;AACV,CAAC,EARW,UAAU,KAAV,UAAU,QAQrB;AAED,MAAM,CAAN,IAAY,YAaX;AAbD,WAAY,YAAY;IACpB,qDAAO,CAAA;IACP,uDAAQ,CAAA;IACR,iDAAK,CAAA;IACL,iDAAK,CAAA;IACL,6CAAG,CAAA;IACH,+CAAI,CAAA;IACJ,+CAAI,CAAA;IACJ,mDAAM,CAAA;IACN,yDAAS,CAAA;IACT,qDAAO,CAAA;IACP,wDAAQ,CAAA;IACR,wDAAQ,CAAA;AACZ,CAAC,EAbW,YAAY,KAAZ,YAAY,QAavB;AAED,MAAM,CAAN,IAAY,cAKX;AALD,WAAY,cAAc;IACtB,4DAAc,CAAA;IACd,wDAAK,CAAA;IACL,sDAAI,CAAA;IACJ,oDAAG,CAAA;AACP,CAAC,EALW,cAAc,KAAd,cAAc,QAKzB;AAED,MAAM,CAAN,IAAY,WAKX;AALD,WAAY,WAAW;IACnB,+CAAS,CAAA;IACT,iDAAM,CAAA;IACN,+CAAK,CAAA;IACL,iDAAM,CAAA;AACV,CAAC,EALW,WAAW,KAAX,WAAW,QAKtB","sourcesContent":["import {DescriptiveVectorDetail} from \"../../../../../api/eda/edaManagerApi\";\r\nimport dayjs from \"d2core/dayjs\";\r\nimport {TreeDataNode} from \"antd\";\r\n\r\nexport enum FullPeriodType {\r\n Base = 1,\r\n YearQuarter,\r\n YearMonth,\r\n YearWeek,\r\n YearDay,\r\n Week,\r\n Day,\r\n Interval,\r\n}\r\n\r\nexport enum DaysInWeek {\r\n Monday,\r\n Tuesday,\r\n Wednesday,\r\n Thursday,\r\n Friday,\r\n Saturday,\r\n Sunday,\r\n}\r\n\r\nexport enum MonthsInYear {\r\n January,\r\n February,\r\n March,\r\n April,\r\n May,\r\n June,\r\n July,\r\n August,\r\n September,\r\n October,\r\n November,\r\n December,\r\n}\r\n\r\nexport enum YearPeriodType {\r\n Quarter = 1972,\r\n Month,\r\n Week,\r\n Day\r\n}\r\n\r\nexport enum QuarterType {\r\n First = 1,\r\n Second,\r\n Third,\r\n Fourth,\r\n}\r\n\r\nexport interface DescriptiveVector extends Omit<DescriptiveVectorDetail, \"timeFrom\" | \"timeTo\"> {\r\n timeFrom: dayjs.Dayjs\r\n timeTo: dayjs.Dayjs\r\n}\r\n\r\nexport interface TreeNode extends TreeDataNode {\r\n data: DescriptiveVector\r\n}\r\n\r\nexport interface TableNode extends DescriptiveVector {\r\n id: number\r\n}"]}
@@ -0,0 +1,18 @@
1
+ import dayjs from "d2core/dayjs";
2
+ import { EdaSamplingType } from "../../constants/edaTypes";
3
+ import EdaManagerApi, { VectorValuesData } from "../../../../../api/eda/edaManagerApi";
4
+ import { DescriptiveVector } from "./types";
5
+ interface DataParams {
6
+ bt: dayjs.Dayjs;
7
+ et: dayjs.Dayjs;
8
+ sampling: EdaSamplingType;
9
+ }
10
+ export declare const useSharedEdaData: (api: EdaManagerApi, originalData: DescriptiveVector[], modifiedData: DescriptiveVector[], isDataTabActive: boolean) => {
11
+ displayData: Record<number, {
12
+ data: VectorValuesData;
13
+ }>;
14
+ isLoading: boolean;
15
+ params: DataParams;
16
+ setParams: import("react").Dispatch<import("react").SetStateAction<DataParams>>;
17
+ };
18
+ export {};
@@ -0,0 +1,74 @@
1
+ import { useEffect, useRef, useState } from "react";
2
+ import dayjs from "d2core/dayjs";
3
+ import { EdaSamplingType } from "../../constants/edaTypes";
4
+ export const useSharedEdaData = (api, originalData, modifiedData, isDataTabActive) => {
5
+ const [displayData, setDisplayData] = useState({});
6
+ const [isLoading, setIsLoading] = useState(false);
7
+ const [params, setParams] = useState({
8
+ bt: dayjs().startOf("year"),
9
+ et: dayjs().endOf("year"),
10
+ sampling: EdaSamplingType.Changes,
11
+ });
12
+ const fetchedOriginalRef = useRef(null);
13
+ const fetchedModifiedRef = useRef(null);
14
+ const fetchedParamsRef = useRef(null);
15
+ useEffect(() => {
16
+ if (!isDataTabActive || !originalData) {
17
+ return;
18
+ }
19
+ const isDataChanged = fetchedOriginalRef.current !== originalData;
20
+ const isParamsChanged = fetchedParamsRef.current?.bt !== params.bt ||
21
+ fetchedParamsRef.current?.et !== params.et ||
22
+ fetchedParamsRef.current?.sampling !== params.sampling;
23
+ if (!isDataChanged && !isParamsChanged && displayData[0]) {
24
+ return;
25
+ }
26
+ setIsLoading(true);
27
+ const param = originalData.map((d) => ({
28
+ ...d,
29
+ timeFrom: d.timeFrom.valueOf(),
30
+ timeTo: d.timeTo.valueOf(),
31
+ }));
32
+ api.getValuesForDescriptiveVector(param, params.bt, params.et, params.sampling, false)
33
+ .then((result) => {
34
+ setDisplayData((prev) => ({ ...prev, 0: { data: { data: result } } }));
35
+ fetchedOriginalRef.current = originalData;
36
+ fetchedParamsRef.current = params;
37
+ })
38
+ .catch((err) => console.error(err))
39
+ .finally(() => setIsLoading(false));
40
+ }, [isDataTabActive, originalData, params, api, displayData]);
41
+ useEffect(() => {
42
+ if (!isDataTabActive || !modifiedData) {
43
+ return;
44
+ }
45
+ const isDataChanged = fetchedModifiedRef.current !== modifiedData;
46
+ const isParamsChanged = fetchedParamsRef.current?.bt !== params.bt ||
47
+ fetchedParamsRef.current?.et !== params.et ||
48
+ fetchedParamsRef.current?.sampling !== params.sampling;
49
+ if (!isDataChanged && !isParamsChanged && displayData[1]) {
50
+ return;
51
+ }
52
+ setIsLoading(true);
53
+ const param = modifiedData.map((d) => ({
54
+ ...d,
55
+ timeFrom: d.timeFrom.valueOf(),
56
+ timeTo: d.timeTo.valueOf(),
57
+ }));
58
+ api.getValuesForDescriptiveVector(param, params.bt, params.et, params.sampling, false)
59
+ .then((result) => {
60
+ setDisplayData((prev) => ({ ...prev, 1: { data: { data: result } } }));
61
+ fetchedModifiedRef.current = modifiedData;
62
+ fetchedParamsRef.current = params;
63
+ })
64
+ .catch((err) => console.error(err))
65
+ .finally(() => setIsLoading(false));
66
+ }, [isDataTabActive, modifiedData, params, api, displayData]);
67
+ return {
68
+ displayData,
69
+ isLoading,
70
+ params,
71
+ setParams,
72
+ };
73
+ };
74
+ //# sourceMappingURL=useSharedData.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useSharedData.js","sourceRoot":"","sources":["../../../../../../../coreui/components/edaManagerComponent/dialogs/descriptiveVectorDialog/useSharedData.ts"],"names":[],"mappings":"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","sourcesContent":["import {useEffect, useRef, useState} from \"react\";\r\nimport dayjs from \"d2core/dayjs\";\r\nimport {EdaSamplingType} from \"../../constants/edaTypes\";\r\nimport EdaManagerApi, {VectorValuesData} from \"../../../../../api/eda/edaManagerApi\";\r\nimport {DescriptiveVector} from \"./types\";\r\n\r\ninterface DataParams {\r\n bt: dayjs.Dayjs;\r\n et: dayjs.Dayjs;\r\n sampling: EdaSamplingType;\r\n}\r\n\r\nexport const useSharedEdaData = (\r\n api: EdaManagerApi,\r\n originalData: DescriptiveVector[],\r\n modifiedData: DescriptiveVector[],\r\n isDataTabActive: boolean\r\n) => {\r\n const [displayData, setDisplayData] = useState<Record<number, {data: VectorValuesData}>>({});\r\n const [isLoading, setIsLoading] = useState(false);\r\n\r\n const [params, setParams] = useState<DataParams>({\r\n bt: dayjs().startOf(\"year\"),\r\n et: dayjs().endOf(\"year\"),\r\n sampling: EdaSamplingType.Changes,\r\n });\r\n\r\n const fetchedOriginalRef = useRef<DescriptiveVector[] | null>(null);\r\n const fetchedModifiedRef = useRef<DescriptiveVector[] | null>(null);\r\n const fetchedParamsRef = useRef<DataParams | null>(null);\r\n\r\n useEffect(() => {\r\n if (!isDataTabActive || !originalData) {\r\n return;\r\n }\r\n\r\n const isDataChanged = fetchedOriginalRef.current !== originalData;\r\n const isParamsChanged =\r\n fetchedParamsRef.current?.bt !== params.bt ||\r\n fetchedParamsRef.current?.et !== params.et ||\r\n fetchedParamsRef.current?.sampling !== params.sampling;\r\n\r\n if (!isDataChanged && !isParamsChanged && displayData[0]) {\r\n return;\r\n }\r\n\r\n setIsLoading(true);\r\n const param = originalData.map((d) => ({\r\n ...d,\r\n timeFrom: d.timeFrom.valueOf(),\r\n timeTo: d.timeTo.valueOf(),\r\n }));\r\n\r\n api.getValuesForDescriptiveVector(param, params.bt, params.et, params.sampling, false)\r\n .then((result) => {\r\n setDisplayData((prev) => ({...prev, 0: {data: {data: result}}}));\r\n fetchedOriginalRef.current = originalData;\r\n fetchedParamsRef.current = params;\r\n })\r\n .catch((err) => console.error(err))\r\n .finally(() => setIsLoading(false));\r\n\r\n }, [isDataTabActive, originalData, params, api, displayData]);\r\n\r\n useEffect(() => {\r\n if (!isDataTabActive || !modifiedData) {\r\n return;\r\n }\r\n\r\n const isDataChanged = fetchedModifiedRef.current !== modifiedData;\r\n const isParamsChanged =\r\n fetchedParamsRef.current?.bt !== params.bt ||\r\n fetchedParamsRef.current?.et !== params.et ||\r\n fetchedParamsRef.current?.sampling !== params.sampling;\r\n\r\n if (!isDataChanged && !isParamsChanged && displayData[1]) {\r\n return;\r\n }\r\n\r\n setIsLoading(true);\r\n const param = modifiedData.map((d) => ({\r\n ...d,\r\n timeFrom: d.timeFrom.valueOf(),\r\n timeTo: d.timeTo.valueOf(),\r\n }));\r\n\r\n api.getValuesForDescriptiveVector(param, params.bt, params.et, params.sampling, false)\r\n .then((result) => {\r\n setDisplayData((prev) => ({...prev, 1: {data: {data: result}}}));\r\n fetchedModifiedRef.current = modifiedData;\r\n fetchedParamsRef.current = params;\r\n })\r\n .catch((err) => console.error(err))\r\n .finally(() => setIsLoading(false));\r\n\r\n }, [isDataTabActive, modifiedData, params, api, displayData]);\r\n\r\n return {\r\n displayData,\r\n isLoading,\r\n params,\r\n setParams,\r\n };\r\n};"]}
@@ -0,0 +1,38 @@
1
+ import dayjs from "d2core/dayjs";
2
+ import { EdaPeriodType, EdaPeriodValueType, EdaRoundingType, EdaVectorType } from "../../constants/edaTypes";
3
+ import { DescriptiveVector, FullPeriodType, TableNode, TreeNode } from "./types";
4
+ export declare function getFormattedPeriodTime(periodType: EdaPeriodType, time: dayjs.Dayjs, fullMask: string, dateMask: string): string;
5
+ export declare function getFormattedPeriodValue(valueType: EdaPeriodValueType, value: number, value2: number): string;
6
+ export declare function toFullPeriodType(data: DescriptiveVector): FullPeriodType;
7
+ export declare function buildTable(data: DescriptiveVector[]): TableNode[];
8
+ export declare function buildTree(data: DescriptiveVector[], fullMask: string, dateMask: string): TreeNode[];
9
+ export declare function getPeriodName(period: EdaPeriodType): string;
10
+ export declare function canMove(data: DescriptiveVector[], selected: DescriptiveVector, direction: "up" | "down"): boolean;
11
+ export declare function reorder(data: DescriptiveVector[], selected: DescriptiveVector, direction: "up" | "down"): {
12
+ data: DescriptiveVector[];
13
+ selected?: DescriptiveVector;
14
+ };
15
+ export declare function addEntry(data: DescriptiveVector[], selected?: DescriptiveVector): {
16
+ data: DescriptiveVector[];
17
+ selected?: DescriptiveVector;
18
+ };
19
+ export declare function addSubEntry(data: DescriptiveVector[], selected: DescriptiveVector): {
20
+ data: DescriptiveVector[];
21
+ selected?: DescriptiveVector;
22
+ };
23
+ export declare function removeEntry(data: DescriptiveVector[], selected: DescriptiveVector): {
24
+ data: DescriptiveVector[];
25
+ selected?: DescriptiveVector;
26
+ };
27
+ export declare function removeSubEntries(data: DescriptiveVector[], selected: DescriptiveVector): {
28
+ data: DescriptiveVector[];
29
+ selected?: DescriptiveVector;
30
+ };
31
+ export declare function getOrigModifiedVectors(): {
32
+ ID: number;
33
+ DisplayName: string;
34
+ Type: EdaVectorType;
35
+ RoundingType: EdaRoundingType;
36
+ RoundingPlaces: number;
37
+ Name: string;
38
+ }[];
@@ -0,0 +1,299 @@
1
+ import React from "react";
2
+ import dayjs from "d2core/dayjs";
3
+ import { EdaPeriodType, EdaPeriodValueType, EdaRoundingType, EdaVectorType } from "../../constants/edaTypes";
4
+ import i18n from "d2core/i18n/i18n";
5
+ import { DaysInWeek, FullPeriodType, YearPeriodType } from "./types";
6
+ import { FolderFilled, FolderOutlined } from "@ant-design/icons";
7
+ export function getFormattedPeriodTime(periodType, time, fullMask, dateMask) {
8
+ switch (periodType) {
9
+ case EdaPeriodType.Base:
10
+ return "";
11
+ case EdaPeriodType.Week:
12
+ return i18n(DaysInWeek[time.second()]);
13
+ case EdaPeriodType.Day:
14
+ return time.format("HH:mm");
15
+ case EdaPeriodType.Interval:
16
+ return time.format(fullMask);
17
+ case EdaPeriodType.Year: {
18
+ const year = time.year();
19
+ switch (year) {
20
+ case YearPeriodType.Quarter:
21
+ return time.format("Q");
22
+ case YearPeriodType.Month:
23
+ return time.format("MMMM").replace(/^\w/, (c) => c.toUpperCase());
24
+ case YearPeriodType.Week:
25
+ return String(time.second());
26
+ case YearPeriodType.Day:
27
+ return time.format(dateMask);
28
+ }
29
+ break;
30
+ }
31
+ }
32
+ return "Invalid";
33
+ }
34
+ export function getFormattedPeriodValue(valueType, value, value2) {
35
+ switch (valueType) {
36
+ case EdaPeriodValueType.Value:
37
+ return String(value);
38
+ case EdaPeriodValueType.CoefficientPlus:
39
+ return `+(${value})`;
40
+ case EdaPeriodValueType.CoefficientMul:
41
+ return `*(${value})`;
42
+ case EdaPeriodValueType.Interpolation:
43
+ return `${value} ${i18n("To[Till]")} ${value2}`;
44
+ }
45
+ }
46
+ export function toFullPeriodType(data) {
47
+ switch (data.periodType) {
48
+ case EdaPeriodType.Base:
49
+ return FullPeriodType.Base;
50
+ case EdaPeriodType.Interval:
51
+ return FullPeriodType.Interval;
52
+ case EdaPeriodType.Week:
53
+ return FullPeriodType.Week;
54
+ case EdaPeriodType.Day:
55
+ return FullPeriodType.Day;
56
+ case EdaPeriodType.Year:
57
+ switch (data.timeFrom.year()) {
58
+ case 1972:
59
+ return FullPeriodType.YearQuarter;
60
+ case 1973:
61
+ return FullPeriodType.YearMonth;
62
+ case 1974:
63
+ return FullPeriodType.YearWeek;
64
+ case 1975:
65
+ return FullPeriodType.YearDay;
66
+ }
67
+ }
68
+ throw "Invalid period type";
69
+ }
70
+ export function buildTable(data) {
71
+ const result = [];
72
+ for (let i = 0; i < data.length; i++) {
73
+ let d = data[i];
74
+ result.push({ id: i, ...d });
75
+ }
76
+ return result;
77
+ }
78
+ export function buildTree(data, fullMask, dateMask) {
79
+ const parentMap = new Map();
80
+ for (const item of data) {
81
+ const pId = item.parent ?? 0;
82
+ if (!parentMap.has(pId)) {
83
+ parentMap.set(pId, []);
84
+ }
85
+ parentMap.get(pId).push(item);
86
+ }
87
+ function recurse(parentId) {
88
+ const childrenData = parentMap.get(parentId) || [];
89
+ return childrenData.map((d) => {
90
+ const children = recurse(d.idx);
91
+ return {
92
+ key: d.idx,
93
+ title: getTitle(d, fullMask, dateMask),
94
+ data: d,
95
+ children: children,
96
+ icon: !d.valid ? React.createElement(FolderFilled, null) : React.createElement(FolderOutlined, null),
97
+ isLeaf: children.length === 0,
98
+ };
99
+ });
100
+ }
101
+ return recurse(0);
102
+ }
103
+ export function getPeriodName(period) {
104
+ return i18n("EdaPeriodType_" + EdaPeriodType[period]);
105
+ }
106
+ export function canMove(data, selected, direction) {
107
+ const branch = data.filter((d) => d.parent === selected.parent);
108
+ const position = branch.findIndex((b) => b.idx === selected.idx);
109
+ return direction === "up" ? position > 0 : position < branch.length - 1;
110
+ }
111
+ export function reorder(data, selected, direction) {
112
+ const result = [...data];
113
+ const swapVector = getNextVector(data, selected, direction);
114
+ const upperVector = direction === "up" ? swapVector : selected;
115
+ const insertionIndex = result.findIndex((d) => d.idx === upperVector.idx);
116
+ let branch;
117
+ let swap;
118
+ if (direction === "up") {
119
+ branch = removeBranch(result, selected.idx);
120
+ swap = removeBranch(result, swapVector.idx);
121
+ result.splice(insertionIndex, 0, ...branch, ...swap);
122
+ }
123
+ else {
124
+ swap = removeBranch(result, swapVector.idx);
125
+ branch = removeBranch(result, selected.idx);
126
+ result.splice(insertionIndex, 0, ...swap, ...branch);
127
+ }
128
+ return reindexData(result, selected);
129
+ }
130
+ export function addEntry(data, selected) {
131
+ const result = [...data];
132
+ if (!selected) {
133
+ result.push(getNewEntry(data.length + 1, 0));
134
+ return { data: result, selected };
135
+ }
136
+ const selectedIndex = result.findIndex((d) => d.idx === selected.idx);
137
+ let insertionIndex = selectedIndex + 1;
138
+ while (insertionIndex < result.length && result[insertionIndex].parent >= selected.idx) {
139
+ insertionIndex++;
140
+ }
141
+ const newEntry = getNewEntry(data.length + 1, selected.parent);
142
+ result.splice(insertionIndex, 0, newEntry);
143
+ return reindexData(result, selected);
144
+ }
145
+ export function addSubEntry(data, selected) {
146
+ const result = [...data];
147
+ const selectedIndex = result.findIndex((d) => d.idx === selected.idx);
148
+ let insertionIndex = selectedIndex + 1;
149
+ while (insertionIndex < result.length && result[insertionIndex].parent >= selected.idx) {
150
+ insertionIndex++;
151
+ }
152
+ result.splice(insertionIndex, 0, getNewEntry(data.length + 1, selected.idx));
153
+ return reindexData(result, selected);
154
+ }
155
+ export function removeEntry(data, selected) {
156
+ const result = [...data];
157
+ let next = getNextVector(data, selected, "down");
158
+ if (!next) {
159
+ next = getNextVector(data, selected, "up");
160
+ }
161
+ if (!next && selected.parent !== 0) {
162
+ next = data.find((d) => d.idx === selected.parent);
163
+ }
164
+ removeBranch(result, selected.idx);
165
+ return reindexData(result, next);
166
+ }
167
+ export function removeSubEntries(data, selected) {
168
+ const result = [...data];
169
+ const start = result.findIndex((d) => d.idx === selected.idx);
170
+ let count = 0;
171
+ while (start + 1 + count < result.length && result[start + 1 + count].parent >= selected.idx) {
172
+ count++;
173
+ }
174
+ if (count > 0) {
175
+ result.splice(start + 1, count);
176
+ }
177
+ return reindexData(result, selected);
178
+ }
179
+ export function getOrigModifiedVectors() {
180
+ return [
181
+ {
182
+ ID: 0,
183
+ DisplayName: i18n("Original vector"),
184
+ Type: EdaVectorType.Change,
185
+ RoundingType: EdaRoundingType.NoRounding,
186
+ RoundingPlaces: 0,
187
+ Name: "OriginalVector",
188
+ },
189
+ {
190
+ ID: 1,
191
+ DisplayName: i18n("Modified vector"),
192
+ Type: EdaVectorType.Change,
193
+ RoundingType: EdaRoundingType.NoRounding,
194
+ RoundingPlaces: 0,
195
+ Name: "ModifiedVector",
196
+ }
197
+ ];
198
+ }
199
+ function getNewEntry(idx, parent) {
200
+ return {
201
+ idx,
202
+ parent,
203
+ value: 0,
204
+ value2: 0,
205
+ valid: true,
206
+ valueType: EdaPeriodValueType.Value,
207
+ supplement: 0,
208
+ status: 0,
209
+ periodType: EdaPeriodType.Base,
210
+ timeFrom: dayjs().startOf('year'),
211
+ timeTo: dayjs().endOf('year').millisecond(0),
212
+ };
213
+ }
214
+ function removeBranch(data, idx) {
215
+ const start = data.findIndex((d) => d.idx === idx);
216
+ let count = 1;
217
+ while (start + count < data.length && data[start + count].parent >= idx) {
218
+ count++;
219
+ }
220
+ return data.splice(start, count);
221
+ }
222
+ function getTitle(data, fullMask, dateMask) {
223
+ const from = getFormattedPeriodTime(data.periodType, data.timeFrom, fullMask, dateMask);
224
+ const to = getFormattedPeriodTime(data.periodType, data.timeTo, fullMask, dateMask);
225
+ let description = "Invalid period type! " + data.periodType;
226
+ switch (data.periodType) {
227
+ case EdaPeriodType.Base:
228
+ description = getPeriodName(data.periodType);
229
+ break;
230
+ case EdaPeriodType.Week: {
231
+ description = i18n(`%{from} To %{to}`, { from, to });
232
+ break;
233
+ }
234
+ case EdaPeriodType.Day:
235
+ description = i18n("Daily From %{from} To %{to}", { from, to });
236
+ break;
237
+ case EdaPeriodType.Interval:
238
+ description = i18n("From %{from} To %{to}", { from, to });
239
+ break;
240
+ case EdaPeriodType.Year: {
241
+ if (data.timeFrom.year() !== data.timeTo.year()) {
242
+ break;
243
+ }
244
+ switch (data.timeFrom.year()) {
245
+ case YearPeriodType.Quarter: {
246
+ description = i18n(`%{from} To %{to}`, { from: `${from}. ${i18n("Quarter")}`, to: `${to}. ${i18n("Quarter")}` });
247
+ break;
248
+ }
249
+ case YearPeriodType.Month: {
250
+ description = i18n(`%{from} To %{to}`, { from: from, to: to });
251
+ break;
252
+ }
253
+ case YearPeriodType.Week: {
254
+ description = i18n(`%{from} To %{to}`, { from: `${from}.`, to: `${to}. ${i18n("Week")}` });
255
+ break;
256
+ }
257
+ case YearPeriodType.Day: {
258
+ description = i18n("From %{from} To %{to}", { from, to });
259
+ }
260
+ }
261
+ break;
262
+ }
263
+ }
264
+ return `${description} => ${getFormattedPeriodValue(data.valueType, data.value, data.value2)}`;
265
+ }
266
+ function getNextVector(data, selected, direction) {
267
+ if ((direction === "up" && !canMove(data, selected, "up")) || (direction === "down" && !canMove(data, selected, "down"))) {
268
+ return undefined;
269
+ }
270
+ const sameBranch = data.filter((d) => d.parent === selected.parent);
271
+ const sameBranchIndex = sameBranch.findIndex((d) => d.idx === selected.idx);
272
+ const swapIndex = direction === "up" ? sameBranchIndex - 1 : sameBranchIndex + 1;
273
+ return sameBranch[swapIndex];
274
+ }
275
+ function reindexData(data, selected) {
276
+ const idMap = new Map();
277
+ let updatedSelected = selected;
278
+ const reindexedResult = data.map((item, index) => {
279
+ const newIdx = index + 1;
280
+ idMap.set(item.idx, newIdx);
281
+ const newItem = { ...item, idx: newIdx };
282
+ if (item.idx === selected?.idx) {
283
+ updatedSelected = newItem;
284
+ }
285
+ return newItem;
286
+ });
287
+ const finalData = reindexedResult.map((item) => {
288
+ if (item.parent && idMap.has(item.parent)) {
289
+ const updatedItem = { ...item, parent: idMap.get(item.parent) };
290
+ if (item.idx === updatedSelected?.idx) {
291
+ updatedSelected = updatedItem;
292
+ }
293
+ return updatedItem;
294
+ }
295
+ return item;
296
+ });
297
+ return { data: finalData, selected: updatedSelected };
298
+ }
299
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../../../../coreui/components/edaManagerComponent/dialogs/descriptiveVectorDialog/utils.tsx"],"names":[],"mappings":"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","sourcesContent":["import React from \"react\";\r\nimport dayjs from \"d2core/dayjs\";\r\nimport {EdaPeriodType, EdaPeriodValueType, EdaRoundingType, EdaVectorType} from \"../../constants/edaTypes\";\r\nimport i18n from \"d2core/i18n/i18n\";\r\nimport {DaysInWeek, DescriptiveVector, FullPeriodType, TableNode, TreeNode, YearPeriodType} from \"./types\";\r\nimport {FolderFilled, FolderOutlined} from \"@ant-design/icons\";\r\n\r\nexport function getFormattedPeriodTime(periodType: EdaPeriodType, time: dayjs.Dayjs, fullMask: string, dateMask: string): string {\r\n switch (periodType) {\r\n case EdaPeriodType.Base:\r\n return \"\";\r\n case EdaPeriodType.Week:\r\n return i18n(DaysInWeek[time.second()]);\r\n case EdaPeriodType.Day:\r\n return time.format(\"HH:mm\");\r\n case EdaPeriodType.Interval:\r\n return time.format(fullMask);\r\n case EdaPeriodType.Year: {\r\n const year = time.year();\r\n\r\n switch (year) {\r\n case YearPeriodType.Quarter:\r\n return time.format(\"Q\");\r\n case YearPeriodType.Month:\r\n return time.format(\"MMMM\").replace(/^\\w/, (c) => c.toUpperCase());\r\n case YearPeriodType.Week:\r\n return String(time.second());\r\n case YearPeriodType.Day:\r\n return time.format(dateMask);\r\n }\r\n break;\r\n }\r\n }\r\n\r\n return \"Invalid\";\r\n}\r\n\r\nexport function getFormattedPeriodValue(valueType: EdaPeriodValueType, value: number, value2: number): string {\r\n switch (valueType) {\r\n case EdaPeriodValueType.Value:\r\n return String(value);\r\n case EdaPeriodValueType.CoefficientPlus:\r\n return `+(${value})`;\r\n case EdaPeriodValueType.CoefficientMul:\r\n return `*(${value})`;\r\n case EdaPeriodValueType.Interpolation:\r\n return `${value} ${i18n(\"To[Till]\")} ${value2}`;\r\n }\r\n}\r\n\r\nexport function toFullPeriodType(data: DescriptiveVector): FullPeriodType {\r\n switch (data.periodType as EdaPeriodType) {\r\n case EdaPeriodType.Base:\r\n return FullPeriodType.Base;\r\n case EdaPeriodType.Interval:\r\n return FullPeriodType.Interval;\r\n case EdaPeriodType.Week:\r\n return FullPeriodType.Week;\r\n case EdaPeriodType.Day:\r\n return FullPeriodType.Day;\r\n case EdaPeriodType.Year:\r\n switch (data.timeFrom.year()) {\r\n case 1972:\r\n return FullPeriodType.YearQuarter;\r\n case 1973:\r\n return FullPeriodType.YearMonth;\r\n case 1974:\r\n return FullPeriodType.YearWeek;\r\n case 1975:\r\n return FullPeriodType.YearDay;\r\n }\r\n }\r\n\r\n throw \"Invalid period type\";\r\n}\r\n\r\nexport function buildTable(data: DescriptiveVector[]): TableNode[] {\r\n const result: TableNode[] = [];\r\n\r\n for (let i = 0; i < data.length; i++) {\r\n let d = data[i];\r\n\r\n result.push({id: i, ...d});\r\n }\r\n\r\n return result;\r\n}\r\n\r\nexport function buildTree(data: DescriptiveVector[], fullMask: string, dateMask: string): TreeNode[] {\r\n const parentMap = new Map<number, DescriptiveVector[]>();\r\n\r\n for (const item of data) {\r\n const pId = item.parent ?? 0;\r\n\r\n if (!parentMap.has(pId)) {\r\n parentMap.set(pId, []);\r\n }\r\n\r\n parentMap.get(pId)!.push(item);\r\n }\r\n\r\n function recurse(parentId: number): TreeNode[] {\r\n const childrenData = parentMap.get(parentId) || [];\r\n return childrenData.map((d): TreeNode => {\r\n const children = recurse(d.idx);\r\n return {\r\n key: d.idx,\r\n title: getTitle(d, fullMask, dateMask),\r\n data: d,\r\n children: children,\r\n icon: !d.valid ? <FolderFilled /> : <FolderOutlined />,\r\n isLeaf: children.length === 0,\r\n };\r\n });\r\n }\r\n\r\n return recurse(0);\r\n}\r\n\r\nexport function getPeriodName(period: EdaPeriodType) {\r\n return i18n(\"EdaPeriodType_\" + EdaPeriodType[period]);\r\n}\r\n\r\nexport function canMove(data: DescriptiveVector[], selected: DescriptiveVector, direction: \"up\" | \"down\"): boolean {\r\n const branch = data.filter((d) => d.parent === selected.parent);\r\n const position = branch.findIndex((b) => b.idx === selected.idx);\r\n\r\n return direction === \"up\" ? position > 0 : position < branch.length - 1;\r\n}\r\n\r\nexport function reorder(data: DescriptiveVector[], selected: DescriptiveVector, direction: \"up\" | \"down\") {\r\n const result = [...data];\r\n const swapVector = getNextVector(data, selected, direction)!; // always can go UP or DOWN (otherwise button is disabled)\r\n const upperVector = direction === \"up\" ? swapVector : selected;\r\n const insertionIndex = result.findIndex((d) => d.idx === upperVector.idx);\r\n let branch: DescriptiveVector[];\r\n let swap: DescriptiveVector[];\r\n\r\n if (direction === \"up\") {\r\n branch = removeBranch(result, selected.idx);\r\n swap = removeBranch(result, swapVector.idx);\r\n result.splice(insertionIndex, 0, ...branch, ...swap);\r\n } else {\r\n swap = removeBranch(result, swapVector.idx);\r\n branch = removeBranch(result, selected.idx);\r\n result.splice(insertionIndex, 0, ...swap, ...branch);\r\n }\r\n\r\n return reindexData(result, selected);\r\n}\r\n\r\nexport function addEntry(data: DescriptiveVector[], selected?: DescriptiveVector): { data: DescriptiveVector[], selected?: DescriptiveVector } {\r\n const result = [...data];\r\n\r\n if (!selected) {\r\n result.push(getNewEntry(data.length + 1, 0));\r\n return {data: result, selected};\r\n }\r\n\r\n const selectedIndex = result.findIndex((d) => d.idx === selected.idx);\r\n let insertionIndex = selectedIndex + 1;\r\n\r\n while (insertionIndex < result.length && result[insertionIndex].parent >= selected.idx) {\r\n insertionIndex++;\r\n }\r\n\r\n const newEntry = getNewEntry(data.length + 1, selected.parent);\r\n\r\n result.splice(insertionIndex, 0, newEntry);\r\n return reindexData(result, selected);\r\n}\r\n\r\nexport function addSubEntry(data: DescriptiveVector[], selected: DescriptiveVector): { data: DescriptiveVector[], selected?: DescriptiveVector } {\r\n const result = [...data];\r\n const selectedIndex = result.findIndex((d) => d.idx === selected.idx);\r\n let insertionIndex = selectedIndex + 1;\r\n\r\n while (insertionIndex < result.length && result[insertionIndex].parent >= selected.idx) {\r\n insertionIndex++;\r\n }\r\n\r\n result.splice(insertionIndex, 0, getNewEntry(data.length + 1, selected.idx));\r\n return reindexData(result, selected);\r\n}\r\n\r\nexport function removeEntry(data: DescriptiveVector[], selected: DescriptiveVector): { data: DescriptiveVector[], selected?: DescriptiveVector } {\r\n const result = [...data];\r\n let next = getNextVector(data, selected, \"down\");\r\n\r\n if (!next) {\r\n next = getNextVector(data, selected, \"up\");\r\n }\r\n\r\n if (!next && selected.parent !== 0) {\r\n next = data.find((d) => d.idx === selected.parent);\r\n }\r\n\r\n removeBranch(result, selected.idx);\r\n return reindexData(result, next);\r\n}\r\n\r\nexport function removeSubEntries(data: DescriptiveVector[], selected: DescriptiveVector): { data: DescriptiveVector[], selected?: DescriptiveVector } {\r\n const result = [...data];\r\n const start = result.findIndex((d) => d.idx === selected.idx);\r\n let count = 0;\r\n\r\n while (start + 1 + count < result.length && result[start + 1 + count].parent >= selected.idx) {\r\n count++;\r\n }\r\n\r\n if (count > 0) {\r\n result.splice(start + 1, count);\r\n }\r\n\r\n return reindexData(result, selected);\r\n}\r\n\r\nexport function getOrigModifiedVectors() {\r\n return [\r\n {\r\n ID: 0,\r\n DisplayName: i18n(\"Original vector\"),\r\n Type: EdaVectorType.Change,\r\n RoundingType: EdaRoundingType.NoRounding,\r\n RoundingPlaces: 0,\r\n Name: \"OriginalVector\",\r\n },\r\n {\r\n ID: 1,\r\n DisplayName: i18n(\"Modified vector\"),\r\n Type: EdaVectorType.Change,\r\n RoundingType: EdaRoundingType.NoRounding,\r\n RoundingPlaces: 0,\r\n Name: \"ModifiedVector\",\r\n }\r\n ];\r\n}\r\n\r\nfunction getNewEntry(idx: number, parent: number): DescriptiveVector {\r\n return {\r\n idx,\r\n parent,\r\n value: 0,\r\n value2: 0,\r\n valid: true,\r\n valueType: EdaPeriodValueType.Value,\r\n supplement: 0,\r\n status: 0,\r\n periodType: EdaPeriodType.Base,\r\n timeFrom: dayjs().startOf('year'),\r\n timeTo: dayjs().endOf('year').millisecond(0),\r\n }\r\n}\r\n\r\nfunction removeBranch(data: DescriptiveVector[], idx: number) {\r\n const start = data.findIndex((d) => d.idx === idx);\r\n let count = 1;\r\n\r\n while (start + count < data.length && data[start + count].parent >= idx) {\r\n count++;\r\n }\r\n\r\n return data.splice(start, count);\r\n}\r\n\r\nfunction getTitle(data: DescriptiveVector, fullMask: string, dateMask: string): string {\r\n const from = getFormattedPeriodTime(data.periodType, data.timeFrom, fullMask, dateMask);\r\n const to = getFormattedPeriodTime(data.periodType, data.timeTo, fullMask, dateMask);\r\n let description = \"Invalid period type! \" + data.periodType;\r\n\r\n switch (data.periodType) {\r\n case EdaPeriodType.Base:\r\n description = getPeriodName(data.periodType);\r\n break;\r\n case EdaPeriodType.Week: {\r\n description = i18n(`%{from} To %{to}`, {from, to});\r\n break;\r\n }\r\n case EdaPeriodType.Day:\r\n description = i18n(\"Daily From %{from} To %{to}\", {from, to});\r\n break;\r\n case EdaPeriodType.Interval:\r\n description = i18n(\"From %{from} To %{to}\", {from, to});\r\n break;\r\n case EdaPeriodType.Year: {\r\n if (data.timeFrom.year() !== data.timeTo.year()) {\r\n break;\r\n }\r\n\r\n switch (data.timeFrom.year()) {\r\n case YearPeriodType.Quarter: {\r\n description = i18n(`%{from} To %{to}`, {from: `${from}. ${i18n(\"Quarter\")}`, to: `${to}. ${i18n(\"Quarter\")}`});\r\n break;\r\n }\r\n case YearPeriodType.Month: {\r\n description = i18n(`%{from} To %{to}`, {from: from, to: to});\r\n break;\r\n }\r\n case YearPeriodType.Week: {\r\n description = i18n(`%{from} To %{to}`, {from: `${from}.`, to: `${to}. ${i18n(\"Week\")}`});\r\n break;\r\n }\r\n case YearPeriodType.Day: {\r\n description = i18n(\"From %{from} To %{to}\", {from, to});\r\n }\r\n }\r\n break;\r\n }\r\n }\r\n\r\n return `${description} => ${getFormattedPeriodValue(data.valueType, data.value, data.value2)}`;\r\n}\r\n\r\nfunction getNextVector(data: DescriptiveVector[], selected: DescriptiveVector, direction: \"up\" | \"down\"): DescriptiveVector | undefined {\r\n if ((direction === \"up\" && !canMove(data, selected, \"up\")) || (direction === \"down\" && !canMove(data, selected, \"down\"))) {\r\n return undefined;\r\n }\r\n\r\n const sameBranch = data.filter((d) => d.parent === selected.parent);\r\n const sameBranchIndex = sameBranch.findIndex((d) => d.idx === selected.idx);\r\n const swapIndex = direction === \"up\" ? sameBranchIndex - 1 : sameBranchIndex + 1;\r\n return sameBranch[swapIndex];\r\n}\r\n\r\nfunction reindexData(data: DescriptiveVector[], selected?: DescriptiveVector): { data: DescriptiveVector[], selected?: DescriptiveVector } {\r\n const idMap = new Map<number, number>();\r\n let updatedSelected: DescriptiveVector | undefined = selected;\r\n const reindexedResult = data.map((item, index) => {\r\n const newIdx = index + 1;\r\n idMap.set(item.idx, newIdx);\r\n\r\n const newItem = {...item, idx: newIdx};\r\n\r\n if (item.idx === selected?.idx) {\r\n updatedSelected = newItem;\r\n }\r\n\r\n return newItem;\r\n });\r\n const finalData = reindexedResult.map((item) => {\r\n if (item.parent && idMap.has(item.parent)) {\r\n const updatedItem = {...item, parent: idMap.get(item.parent)!};\r\n\r\n if (item.idx === updatedSelected?.idx) {\r\n updatedSelected = updatedItem;\r\n }\r\n\r\n return updatedItem;\r\n }\r\n return item;\r\n });\r\n\r\n return {data: finalData, selected: updatedSelected}\r\n}"]}
@@ -0,0 +1,10 @@
1
+ import { FC } from "react";
2
+ import { ModalDialogProps } from "d2coreui/components/modal/modalDialog";
3
+ import EdaManagerApi, { TreeItem } from "../../../../api/eda/edaManagerApi";
4
+ interface Props extends Omit<ModalDialogProps, "mode" | "onOk"> {
5
+ api: EdaManagerApi;
6
+ vector: TreeItem;
7
+ onSaved: () => void;
8
+ }
9
+ export declare const EdaDescriptiveVectorEditorDialog: FC<Props>;
10
+ export {};