d2aura 26.0.11 → 26.0.13

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 (75) hide show
  1. package/api/eda/edaManagerApi.d.ts +19 -2
  2. package/api/eda/edaManagerApi.js +36 -3
  3. package/api/eda/edaManagerApi.js.map +1 -1
  4. package/api/eda/generated/events.d.ts +86 -28
  5. package/api/eda/generated/events.js +154 -42
  6. package/api/eda/generated/events.js.map +1 -1
  7. package/api/eda/generated/structures.d.ts +21 -0
  8. package/api/eda/generated/structures.js.map +1 -1
  9. package/api/impl/utils/reportError.js +16 -0
  10. package/api/impl/utils/reportError.js.map +1 -1
  11. package/api/webPush/webPushApi.js.map +1 -1
  12. package/api/webPush/webPushUtils.js.map +1 -1
  13. package/core/i18n/d2aura.sk.json +8 -0
  14. package/core/i18n/jsapi.sk.json +4 -0
  15. package/core/i18n/jsapi.ua.json +4 -0
  16. package/coreui/components/edaManagerComponent/components/edaDataBasePanel.d.ts +13 -37
  17. package/coreui/components/edaManagerComponent/components/edaDataBasePanel.js +114 -211
  18. package/coreui/components/edaManagerComponent/components/edaDataBasePanel.js.map +1 -1
  19. package/coreui/components/edaManagerComponent/components/edaDetailPanel.d.ts +2 -0
  20. package/coreui/components/edaManagerComponent/components/edaDetailPanel.js +2 -2
  21. package/coreui/components/edaManagerComponent/components/edaDetailPanel.js.map +1 -1
  22. package/coreui/components/edaManagerComponent/components/edaGraphPanel.d.ts +14 -5
  23. package/coreui/components/edaManagerComponent/components/edaGraphPanel.js +338 -326
  24. package/coreui/components/edaManagerComponent/components/edaGraphPanel.js.map +1 -1
  25. package/coreui/components/edaManagerComponent/components/edaTablePanel.d.ts +15 -4
  26. package/coreui/components/edaManagerComponent/components/edaTablePanel.js +139 -64
  27. package/coreui/components/edaManagerComponent/components/edaTablePanel.js.map +1 -1
  28. package/coreui/components/edaManagerComponent/components/edaTimeWindowPickerPanel.d.ts +3 -8
  29. package/coreui/components/edaManagerComponent/components/edaTimeWindowPickerPanel.js +12 -38
  30. package/coreui/components/edaManagerComponent/components/edaTimeWindowPickerPanel.js.map +1 -1
  31. package/coreui/components/edaManagerComponent/components/edaTreeView.d.ts +1 -1
  32. package/coreui/components/edaManagerComponent/components/edaTreeView.js +5 -5
  33. package/coreui/components/edaManagerComponent/components/edaTreeView.js.map +1 -1
  34. package/coreui/components/edaManagerComponent/components/edaVectorDetailPanel.d.ts +8 -2
  35. package/coreui/components/edaManagerComponent/components/edaVectorDetailPanel.js +39 -11
  36. package/coreui/components/edaManagerComponent/components/edaVectorDetailPanel.js.map +1 -1
  37. package/coreui/components/edaManagerComponent/context/edaVectorDataContext.d.ts +33 -0
  38. package/coreui/components/edaManagerComponent/context/edaVectorDataContext.js +3 -0
  39. package/coreui/components/edaManagerComponent/context/edaVectorDataContext.js.map +1 -0
  40. package/coreui/components/edaManagerComponent/context/edaVectorDataProvider.d.ts +9 -0
  41. package/coreui/components/edaManagerComponent/context/edaVectorDataProvider.js +267 -0
  42. package/coreui/components/edaManagerComponent/context/edaVectorDataProvider.js.map +1 -0
  43. package/coreui/components/edaManagerComponent/context/loadingContext.d.ts +7 -0
  44. package/coreui/components/edaManagerComponent/context/loadingContext.js +3 -0
  45. package/coreui/components/edaManagerComponent/context/loadingContext.js.map +1 -0
  46. package/coreui/components/edaManagerComponent/context/sharedSampleRange.d.ts +1 -2
  47. package/coreui/components/edaManagerComponent/context/sharedSampleRange.js +10 -0
  48. package/coreui/components/edaManagerComponent/context/sharedSampleRange.js.map +1 -1
  49. package/coreui/components/edaManagerComponent/edaDetail.d.ts +4 -12
  50. package/coreui/components/edaManagerComponent/edaDetail.js +53 -88
  51. package/coreui/components/edaManagerComponent/edaDetail.js.map +1 -1
  52. package/coreui/components/edaManagerComponent/edaNavigator.d.ts +2 -1
  53. package/coreui/components/edaManagerComponent/edaNavigator.js.map +1 -1
  54. package/coreui/components/edaManagerComponent/edaSelect.d.ts +13 -7
  55. package/coreui/components/edaManagerComponent/edaSelect.js +211 -7
  56. package/coreui/components/edaManagerComponent/edaSelect.js.map +1 -1
  57. package/coreui/components/edaManagerComponent/utils/utils.d.ts +17 -0
  58. package/coreui/components/edaManagerComponent/utils/utils.js +57 -0
  59. package/coreui/components/edaManagerComponent/utils/utils.js.map +1 -1
  60. package/coreui/components/webPush/webPushSwitch.js.map +1 -1
  61. package/coreui/images/logo.svg +9 -9
  62. package/coreui/images/logo_full.svg +11 -11
  63. package/d2configuration/edaManager/E.EM_NAVIGATOR_IMPL.xml +64 -2
  64. package/d2configuration/edaManager/E.EM_NAVIGATOR_SQL.xml +51 -13
  65. package/d2configuration/edaManager/E.EM_NAVIGATOR_UNIT.xml +304 -4
  66. package/d2configuration/edaManager/E.EM_VECTOR_IMPL.xml +9 -3
  67. package/d2configuration/edaManager/E.EM_VECTOR_UNIT.xml +89 -3
  68. package/d2configuration/edaManager/EDA_StatVectorRec.xml +56 -0
  69. package/d2configuration/edaManager/SD.EM_EDA_StatVectorRec_V1.xml +125 -0
  70. package/d2configuration/edaManager/SD.EM_Filter_Condition.xml +156 -0
  71. package/d2configuration/edaManager/SD.EM_Tree_Item.xml +34 -1
  72. package/package.json +3 -3
  73. package/coreui/components/edaManagerComponent/context/sharedSampleRangeWrapper.d.ts +0 -6
  74. package/coreui/components/edaManagerComponent/context/sharedSampleRangeWrapper.js +0 -14
  75. package/coreui/components/edaManagerComponent/context/sharedSampleRangeWrapper.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"edaTimeWindowPickerPanel.js","sourceRoot":"","sources":["../../../../../../coreui/components/edaManagerComponent/components/edaTimeWindowPickerPanel.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,OAAO,MAAM,mCAAmC,CAAC;AACxD,OAAO,EAAC,YAAY,EAAC,MAAM,YAAY,CAAC;AACxC,OAAO,EAAC,YAAY,EAAC,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAC,MAAM,EAAE,KAAK,EAAC,MAAM,MAAM,CAAC;AAEnC,OAAO,EAAC,YAAY,EAAE,aAAa,EAAE,oBAAoB,EAAE,qBAAqB,EAAC,MAAM,mBAAmB,CAAC;AAG3G,OAAO,eAAe,MAAM,4CAA4C,CAAC;AACzE,OAAO,EAAC,QAAQ,EAAC,MAAM,uBAAuB,CAAC;AAE/C,MAAM,SAAS,GAAG,YAAY,CAAC,CAAC,EAAC,GAAG,EAAE,KAAK,EAAC,EAAE,EAAE;IAC5C,OAAO;QACH,UAAU,EAAE,GAAG,CAAA;;oCAEa,KAAK,CAAC,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;SA4B5C;KACJ,CAAA;AACL,CAAC,CAAC,CAAC;AAkBH,MAAM,OAAO,wBAAyB,SAAQ,KAAK,CAAC,SAAuB;IAGvE,YAAY,KAAsB;QAC9B,KAAK,CAAC,KAAK,CAAC,CAAC;QAHT,SAAI,GAAG,YAAY,CAAC,iBAAiB,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;QAI9D,MAAM,EAAC,EAAE,EAAE,EAAE,EAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;QAE9D,IAAI,CAAC,KAAK,GAAG;YACT,EAAE,EAAE,EAAE;YACN,EAAE,EAAE,EAAE;YACN,IAAI,EAAE,KAAK,CAAC,IAAI;SACnB,CAAA;QAED,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACvC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACzC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnD,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC/D,CAAC;IAED,kBAAkB,CAAC,SAA0B;QACzC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;YACrF,MAAM,EAAC,EAAE,EAAE,EAAE,EAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAC7E,IAAI,CAAC,QAAQ,CAAC,EAAC,EAAE,EAAE,EAAE,EAAC,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;QACpD,CAAC;QAED,IAAI,SAAS,CAAC,IAAI,KAAK,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;YACrC,MAAM,EAAC,EAAE,EAAE,EAAE,EAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAC7E,IAAI,CAAC,QAAQ,CAAC,EAAC,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,EAAC,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;QAC3E,CAAC;IACL,CAAC;IAED,MAAM;QACF,MAAM,EAAC,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAC,GAAG,IAAI,CAAC,KAAK,CAAC;QAChD,MAAM,EAAC,EAAE,EAAE,EAAE,EAAE,IAAI,EAAC,GAAG,IAAI,CAAC,KAAK,CAAC;QAElC,OAAO,CACH,oBAAC,OAAO,IAAC,SAAS,EAAE,SAAS,IACxB,CAAC,GAAG,EAAE,EAAE,CACL,oBAAC,KAAK,IAAC,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC,UAAU;YAC/C,oBAAC,KAAK,CAAC,OAAO,IAAC,IAAI,EAAE,IAAI;gBACrB,oBAAC,MAAM,IAAC,IAAI,EAAE,oBAAC,qBAAqB,OAAE,EAAE,QAAQ,EAAE,EAAE,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,QAAQ,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,GAAG;gBAChH,oBAAC,MAAM,IAAC,IAAI,EAAE,oBAAC,YAAY,OAAE,EAAE,QAAQ,EAAE,EAAE,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,QAAQ,EAAE,OAAO,EAAE,IAAI,CAAC,QAAQ,GAAG;gBACxG,oBAAC,KAAK,CAAC,KAAK,QAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAe;gBACjD,oBAAC,KAAK,CAAC,KAAK,iBAAgB;gBAC5B,oBAAC,KAAK,CAAC,KAAK,QAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAe;gBACjD,oBAAC,MAAM,IAAC,IAAI,EAAE,oBAAC,aAAa,OAAE,EAAE,QAAQ,EAAE,EAAE,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,QAAQ,EAAE,OAAO,EAAE,IAAI,CAAC,IAAI,GAAG;gBAClG,oBAAC,MAAM,IAAC,IAAI,EAAE,oBAAC,oBAAoB,OAAE,EAAE,QAAQ,EAAE,EAAE,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,QAAQ,EAAE,OAAO,EAAE,IAAI,CAAC,KAAK,GAAG,CAC9F;YAEhB,oBAAC,eAAe,IACZ,MAAM,EAAE,QAAQ,EAChB,KAAK,EAAE,IAAI,EACX,KAAK,EAAE,EAAC,KAAK,EAAE,OAAO,EAAC,EACvB,cAAc,QACd,IAAI,EAAE,IAAI,EACV,qBAAqB,QACrB,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE;oBAChB,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;wBACtB,IAAI,CAAC,aAAa,CAAC,KAAiB,CAAC,CAAC;oBAC1C,CAAC;gBACL,CAAC,GACH,CACE,CAEN,CACb,CAAA;IACL,CAAC;IAEO,OAAO;QACX,MAAM,EAAC,KAAK,EAAC,GAAG,IAAI,CAAC,KAAK,CAAC;QAC3B,MAAM,EAAC,IAAI,EAAC,GAAG,IAAI,CAAC,KAAK,CAAC;QAC1B,MAAM,IAAI,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC;QAEnC,IAAI,CAAC,IAAI,EAAE,CAAC;YACR,OAAO;QACX,CAAC;QAED,IAAI,CAAC,QAAQ,CAAC,EAAC,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,EAAC,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;IAC9E,CAAC;IAEO,KAAK;QACT,MAAM,EAAC,GAAG,EAAC,GAAG,IAAI,CAAC,KAAK,CAAC;QACzB,MAAM,EAAC,IAAI,EAAC,GAAG,IAAI,CAAC,KAAK,CAAC;QAC1B,MAAM,IAAI,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC;QAEnC,IAAI,CAAC,IAAI,EAAE,CAAC;YACR,OAAO;QACX,CAAC;QAED,IAAI,CAAC,QAAQ,CAAC,EAAC,EAAE,EAAE,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,GAAG,EAAC,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;IAC5E,CAAC;IAEO,QAAQ;QACZ,MAAM,EAAC,KAAK,EAAC,GAAG,IAAI,CAAC,KAAK,CAAC;QAC3B,MAAM,EAAC,IAAI,EAAC,GAAG,IAAI,CAAC,KAAK,CAAC;QAC1B,MAAM,IAAI,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC;QACnC,IAAI,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QACvB,IAAI,EAAE,CAAC;QAEP,IAAI,CAAC,IAAI,EAAE,CAAC;YACR,OAAO;QACX,CAAC;QAED,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAC5C,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAEpB,IAAI,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;YACrB,EAAE,GAAG,KAAK,CAAC;QACf,CAAC;QAED,IAAI,CAAC,QAAQ,CAAC,EAAC,EAAE,EAAE,EAAE,EAAC,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;IACpD,CAAC;IAEO,IAAI;QACR,MAAM,EAAC,GAAG,EAAC,GAAG,IAAI,CAAC,KAAK,CAAC;QACzB,MAAM,EAAC,IAAI,EAAC,GAAG,IAAI,CAAC,KAAK,CAAC;QAC1B,MAAM,IAAI,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC;QACnC,IAAI,EAAE,CAAC;QACP,IAAI,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QAEvB,IAAI,CAAC,IAAI,EAAE,CAAC;YACR,OAAO;QACX,CAAC;QAED,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACrC,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAEtB,IAAI,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;YAClB,EAAE,GAAG,GAAG,CAAC;QACb,CAAC;QAED,IAAI,CAAC,QAAQ,CAAC,EAAC,EAAE,EAAE,EAAE,EAAC,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;IACpD,CAAC;IAEO,aAAa,CAAC,IAAc;QAChC,MAAM,EAAC,KAAK,EAAE,GAAG,EAAC,GAAG,IAAI,CAAC,KAAK,CAAC;QAChC,MAAM,IAAI,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC;QACnC,IAAI,EAAE,CAAC;QACP,IAAI,EAAE,CAAC;QAEP,IAAI,IAAI,EAAE,CAAC;YACP,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YACjC,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAEpB,IAAI,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;gBACrB,EAAE,GAAG,KAAK,CAAC;YACf,CAAC;YACD,IAAI,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;gBAClB,EAAE,GAAG,GAAG,CAAC;YACb,CAAC;QACL,CAAC;aAAM,CAAC;YACJ,EAAE,GAAG,KAAK,CAAC;YACX,EAAE,GAAG,GAAG,CAAC;QACb,CAAC;QAED,IAAI,CAAC,QAAQ,CAAC,EAAC,IAAI,EAAE,EAAE,EAAE,EAAE,EAAC,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;IAC1D,CAAC;IAEO,iBAAiB;QACrB,MAAM,EAAC,EAAE,EAAE,EAAE,EAAE,IAAI,EAAC,GAAG,IAAI,CAAC,KAAK,CAAC;QAClC,IAAI,CAAC,KAAK,CAAC,mBAAmB,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC;IACnD,CAAC;CACJ;AAED,SAAS,eAAe,CAAC,IAAc;IACnC,QAAQ,IAAI,EAAE,CAAC;QACX,KAAK,QAAQ,CAAC,MAAM;YAChB,OAAO,MAAM,CAAC;QAClB,KAAK,QAAQ,CAAC,KAAK;YACf,OAAO,KAAK,CAAC;QACjB,KAAK,QAAQ,CAAC,MAAM;YAChB,OAAO,MAAM,CAAC;QAClB,KAAK,QAAQ,CAAC,OAAO;YACjB,OAAO,OAAO,CAAC;QACnB,KAAK,QAAQ,CAAC,MAAM;YAChB,OAAO,MAAM,CAAC;QAClB,KAAK,QAAQ,CAAC,aAAa;YACvB,OAAO,IAAI,CAAC;IACpB,CAAC;AACL,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,KAAkB,EAAE,GAAgB,EAAE,IAAc;IACzE,MAAM,IAAI,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC;IAEnC,IAAI,CAAC,IAAI,EAAE,CAAC;QACR,OAAO;YACH,EAAE,EAAE,KAAK;YACT,EAAE,EAAE,GAAG;SACV,CAAC;IACN,CAAC;IAED,IAAI,EAAE,GAAgB,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1C,IAAI,EAAE,GAAgB,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAExC,IAAI,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QACrB,EAAE,GAAG,KAAK,CAAC;IACf,CAAC;IACD,IAAI,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QAClB,EAAE,GAAG,GAAG,CAAC;IACb,CAAC;IAED,OAAO;QACH,EAAE,EAAE,EAAE;QACN,EAAE,EAAE,EAAE;KACT,CAAA;AACL,CAAC","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"]}
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 bt: dayjs.Dayjs\r\n et: 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\nexport class EdaTimeWindowPickerPanel extends React.Component<Props> {\r\n private mask = LocaleHolder.getDateTimeFormat(true, false, false);\r\n\r\n constructor(props: Readonly<Props>) {\r\n super(props);\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 }\r\n\r\n render() {\r\n const {size, start, end, bt, et, step, disabled} = this.props;\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, step} = this.props;\r\n const unit = stepToDayJsType(step);\r\n\r\n if (!unit) {\r\n return;\r\n }\r\n\r\n this.props.onTimeWindowChanged?.(start, start.endOf(unit), step);\r\n }\r\n\r\n private toEnd() {\r\n const {end, step} = this.props;\r\n const unit = stepToDayJsType(step);\r\n\r\n if (!unit) {\r\n return;\r\n }\r\n\r\n this.props.onTimeWindowChanged?.(end.startOf(unit), end, step);\r\n }\r\n\r\n private previous() {\r\n const {start, step} = this.props;\r\n const unit = stepToDayJsType(step);\r\n let bt = this.props.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.props.onTimeWindowChanged?.(bt, et, step);\r\n }\r\n\r\n private next() {\r\n const {end, step} = this.props;\r\n const unit = stepToDayJsType(step);\r\n let bt;\r\n let et = this.props.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.props.onTimeWindowChanged?.(bt, et, step);\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.props.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.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"]}
@@ -24,7 +24,7 @@ interface Props {
24
24
  api: EdaManagerApi;
25
25
  type: TreeViewType;
26
26
  onItemSelected?: () => void;
27
- onItemDoubleClick?: (item: TypedIndex) => void;
27
+ onItemDoubleClick?: (id: TypedIndex, item: SD_EM_Tree_Item) => void;
28
28
  }
29
29
  interface State {
30
30
  treeData: DataNode[];
@@ -1,6 +1,6 @@
1
1
  import React from "react";
2
2
  import { Tree, Typography } from "antd";
3
- import { FolderOpenOutlined, FunctionOutlined, LoadingOutlined, QuestionOutlined } from "@ant-design/icons";
3
+ import { DownOutlined, FolderOpenOutlined, FunctionOutlined, LoadingOutlined, QuestionOutlined } from "@ant-design/icons";
4
4
  import WithCss from "d2coreui/components/style/withCss";
5
5
  import { createStyles } from "antd-style";
6
6
  import { EdaVectorType } from "../constants/edaTypes";
@@ -98,7 +98,7 @@ export class EdaTreeView extends React.Component {
98
98
  const { treeData, expandedKeys, selectedKeys } = this.state;
99
99
  return (React.createElement(WithCss, { useStyles: useStyles }, (css) => React.createElement("div", { ref: this.divRef, className: css.styles.baseLayout },
100
100
  React.createElement("div", { className: css.styles.absoluteLayout },
101
- React.createElement(Tree, { blockNode: true, showLine: true, showIcon: true, height: this.state.height, loadData: this.onLoadData, onExpand: this.onExpand, onDoubleClick: this.onDoubleClick, expandedKeys: expandedKeys, selectedKeys: selectedKeys, titleRender: this.titleRenderer, treeData: treeData })))));
101
+ React.createElement(Tree, { blockNode: true, showLine: true, showIcon: true, switcherIcon: React.createElement(DownOutlined, null), height: this.state.height, loadData: this.onLoadData, onExpand: this.onExpand, onDoubleClick: this.onDoubleClick, expandedKeys: expandedKeys, selectedKeys: selectedKeys, titleRender: this.titleRenderer, treeData: treeData })))));
102
102
  }
103
103
  titleRenderer(node) {
104
104
  if (node.key === this.state.loading) {
@@ -283,13 +283,13 @@ export class EdaTreeView extends React.Component {
283
283
  }
284
284
  onDoubleClick(_e, node) {
285
285
  if (node.vector !== undefined) {
286
- this.props.onItemDoubleClick?.({ id: node.vector.ID, type: 0 });
286
+ this.props.onItemDoubleClick?.({ id: node.vector.ID, type: 0 }, node.vector);
287
287
  }
288
288
  else if (node.group !== undefined) {
289
- this.props.onItemDoubleClick?.({ id: node.group.ID, type: 1 });
289
+ this.props.onItemDoubleClick?.({ id: node.group.ID, type: 1 }, node.group);
290
290
  }
291
291
  else if (node.scenario !== undefined) {
292
- this.props.onItemDoubleClick?.({ id: node.scenario.ID, type: 2 });
292
+ this.props.onItemDoubleClick?.({ id: node.scenario.ID, type: 2 }, node.scenario);
293
293
  }
294
294
  this.setState({ selectedKeys: [node.key] });
295
295
  }
@@ -1 +1 @@
1
- {"version":3,"file":"edaTreeView.js","sourceRoot":"","sources":["../../../../../../coreui/components/edaManagerComponent/components/edaTreeView.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, {Key} from \"react\";\r\nimport {Tree, TreeDataNode, Typography} from \"antd\";\r\nimport EdaManagerApi from \"../../../../api/eda/edaManagerApi\";\r\nimport {FolderOpenOutlined, FunctionOutlined, LoadingOutlined, QuestionOutlined} from \"@ant-design/icons\";\r\nimport WithCss from \"d2coreui/components/style/withCss\";\r\nimport {createStyles} from \"antd-style\";\r\nimport {EdaVectorType, IdType, TypedIndex} from \"../constants/edaTypes\";\r\nimport {NumberFifteenFilled} from \"../icons/numberFifteenFilled\";\r\nimport {LetterHFilled} from \"../icons/letterHFilled\";\r\nimport {LetterDFilled} from \"../icons/letterDFilled\";\r\nimport {LetterCFilled} from \"../icons/letterCFilled\";\r\nimport {LetterIFilled} from \"../icons/letterIFilled\";\r\nimport {PairOutlined} from \"../icons/pairOutlined\";\r\nimport {PeriodicOutlined} from \"../icons/periodicOutlined\";\r\nimport i18n from \"d2core/i18n/i18n\";\r\nimport {SD_EM_Tree_Item} from \"../../../../api/eda/generated/structures\";\r\nimport {EM_NAVIGATOR_IMPLGetGroupVectorsResult, EM_NAVIGATOR_IMPLGetScenarioVectorsResult} from \"../../../../api/eda/generated/events\";\r\n\r\nconst useStyles = createStyles(({css}) => {\r\n return {\r\n baseLayout: css`\r\n position: relative;\r\n height: 100%;\r\n width: 100%;\r\n \r\n .ant-tree {\r\n height: 100%;\r\n background-color: transparent;\r\n }\r\n\r\n .ant-tree-node-content-wrapper {\r\n user-select: none;\r\n -webkit-user-select: none;\r\n -moz-user-select: none;\r\n -ms-user-select: none;\r\n white-space: nowrap;\r\n text-overflow: ellipsis;\r\n overflow: hidden;\r\n \r\n .ant-tree-title {\r\n white-space: nowrap;\r\n }\r\n }\r\n `,\r\n absoluteLayout: css`\r\n overflow: auto;\r\n position: absolute;\r\n left: 0;\r\n right: 0;\r\n top: 0;\r\n bottom: 0;\r\n `\r\n }\r\n});\r\n\r\nexport enum TreeViewType {\r\n GROUP = \"group\",\r\n SCENARIO = \"scenario\",\r\n}\r\n\r\ninterface PageData {\r\n total: number\r\n offset: number\r\n done: boolean\r\n}\r\n\r\ninterface DataNode extends TreeDataNode {\r\n group?: SD_EM_Tree_Item\r\n vector?: SD_EM_Tree_Item\r\n scenario?: SD_EM_Tree_Item\r\n\r\n vectorOffset?: PageData\r\n groupOffset?: PageData\r\n scenarioOffset?: PageData\r\n}\r\n\r\ninterface Props {\r\n api: EdaManagerApi\r\n type: TreeViewType\r\n\r\n onItemSelected?: () => void\r\n onItemDoubleClick?: (item: TypedIndex) => void\r\n}\r\n\r\ninterface State {\r\n treeData: DataNode[]\r\n expandedKeys: Key[]\r\n selectedKeys: Key[]\r\n height: number;\r\n loading?: string;\r\n}\r\n\r\nexport class EdaTreeView extends React.Component<Props, State> {\r\n private readonly childParentMap: Map<number | string, number | undefined> = new Map();\r\n private readonly nodeMap: Map<number | string, DataNode> = new Map();\r\n private readonly divRef = React.createRef<HTMLDivElement>();\r\n private resizeObserver: ResizeObserver | null = null;\r\n\r\n constructor(props: Readonly<Props>) {\r\n super(props);\r\n this.state = {\r\n treeData: [],\r\n expandedKeys: [],\r\n selectedKeys: [],\r\n height: 0,\r\n }\r\n\r\n this.onExpand = this.onExpand.bind(this);\r\n this.onLoadData = this.onLoadData.bind(this);\r\n this.onDoubleClick = this.onDoubleClick.bind(this);\r\n this.titleRenderer = this.titleRenderer.bind(this);\r\n }\r\n\r\n async componentDidMount() {\r\n await this.loadData(this.props.type);\r\n if (this.divRef.current) {\r\n this.resizeObserver = new ResizeObserver((entries) => {\r\n const entry = entries[0];\r\n\r\n if (entry) {\r\n const {height} = entry.contentRect;\r\n this.setState({height});\r\n }\r\n });\r\n\r\n this.resizeObserver.observe(this.divRef.current);\r\n }\r\n }\r\n\r\n async componentDidUpdate(prevProps: Props) {\r\n if (prevProps.type !== this.props.type) {\r\n await this.loadData(this.props.type);\r\n }\r\n }\r\n\r\n componentWillUnmount() {\r\n if (this.resizeObserver) {\r\n this.resizeObserver.disconnect();\r\n }\r\n }\r\n\r\n render(): React.ReactNode {\r\n const {treeData, expandedKeys, selectedKeys} = this.state;\r\n\r\n return (\r\n <WithCss useStyles={useStyles}>\r\n {(css) =>\r\n <div ref={this.divRef} className={css.styles.baseLayout}>\r\n <div className={css.styles.absoluteLayout}>\r\n <Tree<DataNode>\r\n blockNode\r\n showLine\r\n showIcon\r\n height={this.state.height}\r\n loadData={this.onLoadData}\r\n onExpand={this.onExpand}\r\n onDoubleClick={this.onDoubleClick}\r\n expandedKeys={expandedKeys}\r\n selectedKeys={selectedKeys}\r\n titleRender={this.titleRenderer}\r\n treeData={treeData}/>\r\n </div>\r\n </div>\r\n }\r\n </WithCss>\r\n )\r\n }\r\n\r\n private titleRenderer(node: DataNode): React.ReactNode {\r\n if (node.key === this.state.loading) {\r\n return <Typography.Link><LoadingOutlined /> {i18n(\"Loading\")}...</Typography.Link>;\r\n }\r\n\r\n return node.title as React.ReactNode;\r\n }\r\n\r\n private renderTitle(key: string, data: DataNode, amount: number, total: number): React.ReactNode {\r\n return (\r\n <Typography.Link onClick={() => this.onLoadData(data, key)}>\r\n {i18n(\"Show %{n} more (of %{o})\", {n: String(amount), o: String(total)})}\r\n </Typography.Link>\r\n );\r\n }\r\n\r\n private onExpand(keys: Key[]) {\r\n this.setState({expandedKeys: (keys)})\r\n }\r\n\r\n private async loadData(type: TreeViewType) {\r\n this.setState({loading: \"\"});\r\n\r\n try {\r\n let treeData: DataNode[];\r\n\r\n switch (type) {\r\n case TreeViewType.GROUP:\r\n const rootGroups = await this.props.api.getGroupChildren(undefined);\r\n treeData = this.convertGroups(rootGroups.items as SD_EM_Tree_Item[], undefined);\r\n break;\r\n case TreeViewType.SCENARIO:\r\n const rootScenarios = await this.props.api.getScenarioChildren(undefined);\r\n treeData = this.convertScenarios(rootScenarios.items as SD_EM_Tree_Item[], undefined);\r\n break;\r\n }\r\n\r\n this.setState({treeData: treeData});\r\n } catch (e) {\r\n console.warn(\"failed to load tree data\", e);\r\n } finally {\r\n this.setState({loading: undefined});\r\n }\r\n }\r\n\r\n private async loadGroups(data: DataNode, id: number, nodes: DataNode[]) {\r\n const {api} = this.props;\r\n\r\n if (!data.groupOffset?.done) {\r\n const groups = await api.getGroupChildren(id, data.groupOffset?.offset);\r\n const amount = groups.leftCount > api.pageSize ? api.pageSize : groups.leftCount;\r\n\r\n nodes.push(...this.convertGroups(groups.items as SD_EM_Tree_Item[], id));\r\n\r\n if (data.groupOffset === undefined) {\r\n data.groupOffset = {\r\n done: groups.leftCount === 0,\r\n offset: groups.items.length,\r\n total: groups.items.length + groups.leftCount,\r\n }\r\n } else {\r\n data.groupOffset.done = groups.leftCount === 0;\r\n data.groupOffset.offset += groups.items.length;\r\n }\r\n\r\n if (!data.groupOffset.done) {\r\n const key = `${id}_show_more`;\r\n\r\n nodes.push({\r\n key: key,\r\n title: this.renderTitle(key, data, amount, data.groupOffset.total),\r\n isLeaf: true,\r\n });\r\n }\r\n }\r\n\r\n if (data.groupOffset.done && !data.vectorOffset?.done) {\r\n const vectors = await api.getGroupVectors(id, data.vectorOffset?.offset);\r\n\r\n this.loadVectors(data, id, nodes, vectors);\r\n }\r\n }\r\n\r\n private async loadScenarios(data: DataNode, id: number, nodes: DataNode[]) {\r\n const {api} = this.props;\r\n\r\n if (!data.scenarioOffset?.done) {\r\n const groups = await api.getScenarioChildren(id, data.scenarioOffset?.offset);\r\n const amount = groups.leftCount > api.pageSize ? api.pageSize : groups.leftCount;\r\n\r\n nodes.push(...this.convertScenarios(groups.items as SD_EM_Tree_Item[], id));\r\n\r\n if (data.scenarioOffset === undefined) {\r\n data.scenarioOffset = {\r\n done: groups.leftCount === 0,\r\n offset: groups.items.length,\r\n total: groups.items.length + groups.leftCount,\r\n }\r\n } else {\r\n data.scenarioOffset.done = groups.leftCount === 0;\r\n data.scenarioOffset.offset += groups.items.length;\r\n }\r\n\r\n if (!data.scenarioOffset.done) {\r\n const key = `${id}_show_more`;\r\n\r\n nodes.push({\r\n key: key,\r\n title: this.renderTitle(key, data, amount, data.scenarioOffset.total),\r\n isLeaf: true,\r\n });\r\n }\r\n }\r\n\r\n if (data.scenarioOffset.done && !data.vectorOffset?.done) {\r\n const vectors = await api.getScenarioVectors(id, data.vectorOffset?.offset, undefined, true);\r\n\r\n this.loadVectors(data, id, nodes, vectors);\r\n }\r\n }\r\n\r\n private loadVectors(data: DataNode, id: number, nodes: DataNode[], vectors: Omit<EM_NAVIGATOR_IMPLGetGroupVectorsResult | EM_NAVIGATOR_IMPLGetScenarioVectorsResult, \"isOk\" | \"errorMsg\">) {\r\n const {api} = this.props;\r\n\r\n const amount = vectors.leftCount > api.pageSize ? api.pageSize : vectors.leftCount;\r\n\r\n nodes.push(...this.convertVectors(vectors.items as SD_EM_Tree_Item[], id));\r\n\r\n if (data.vectorOffset === undefined) {\r\n data.vectorOffset = {\r\n done: vectors.leftCount === 0,\r\n offset: vectors.items.length,\r\n total: vectors.items.length + vectors.leftCount,\r\n }\r\n } else {\r\n data.vectorOffset.done = vectors.leftCount === 0;\r\n data.vectorOffset.offset += vectors.items.length;\r\n }\r\n\r\n if (!data.vectorOffset.done) {\r\n const key = `${id}_show_more`;\r\n\r\n nodes.push({\r\n key: key,\r\n title: this.renderTitle(key, data, amount, data.vectorOffset.total),\r\n isLeaf: true,\r\n });\r\n }\r\n }\r\n\r\n private async onLoadData(data: DataNode, id?: string): Promise<void> {\r\n if (data.children) { // data already available\r\n return Promise.resolve();\r\n }\r\n\r\n this.setState({loading: id});\r\n\r\n try {\r\n const {type} = this.props;\r\n let id: number;\r\n const nodes: DataNode[] = [];\r\n\r\n switch (type) {\r\n case TreeViewType.GROUP:\r\n if (!data.group) {\r\n console.warn(\"No group!\");\r\n this.setState({loading: undefined});\r\n return;\r\n }\r\n\r\n id = data.group.ID;\r\n await this.loadGroups(data, id, nodes);\r\n break;\r\n case TreeViewType.SCENARIO:\r\n if (!data.scenario) {\r\n console.warn(\"No scenario!\");\r\n this.setState({loading: undefined});\r\n return;\r\n }\r\n\r\n id = data.scenario.ID;\r\n await this.loadScenarios(data, id, nodes);\r\n break;\r\n default:\r\n this.setState({loading: undefined});\r\n return;\r\n }\r\n\r\n const parentId = this.childParentMap.get(id);\r\n\r\n await new Promise<void>((resolve, reject) => {\r\n if (parentId !== undefined) {\r\n const parentNode = this.nodeMap.get(parentId);\r\n\r\n if (parentNode?.children) {\r\n this.updateTree(data, nodes, parentNode.children, id, resolve, reject);\r\n } else {\r\n console.warn(\"No parent for node\", id);\r\n reject();\r\n }\r\n } else {\r\n this.updateTree(data, nodes, this.state.treeData, id, resolve, reject);\r\n }\r\n });\r\n } catch (e) {\r\n console.warn(\"Failed to load tree data\", e);\r\n } finally {\r\n this.setState({loading: undefined});\r\n }\r\n }\r\n\r\n private onDoubleClick(_e: React.MouseEvent, node: DataNode) {\r\n if (node.vector !== undefined) {\r\n this.props.onItemDoubleClick?.({id: node.vector.ID, type: IdType.VECTOR});\r\n } else if (node.group !== undefined) {\r\n this.props.onItemDoubleClick?.({id: node.group.ID, type: IdType.GROUP});\r\n } else if (node.scenario !== undefined) {\r\n this.props.onItemDoubleClick?.({id: node.scenario.ID, type: IdType.SCENARIO});\r\n }\r\n\r\n this.setState({selectedKeys: [node.key]});\r\n }\r\n\r\n private updateTree(data: DataNode, nodes: DataNode[], treeData: DataNode[], dataId: number, resolve: () => void, reject: () => void) {\r\n const {type} = this.props;\r\n const index: number = treeData.findIndex((t: DataNode) => (type === TreeViewType.GROUP ? t.group?.ID : t.scenario?.ID) === dataId);\r\n\r\n if (index < 0) {\r\n console.warn(\"Failed to find index\");\r\n reject();\r\n return;\r\n }\r\n\r\n treeData[index] = {...data, children: treeData[index].children};\r\n\r\n if (treeData[index].children) {\r\n treeData[index].children.pop();\r\n treeData[index].children.push(...nodes);\r\n } else {\r\n treeData[index].children = nodes;\r\n }\r\n\r\n this.nodeMap.set(dataId, treeData[index]);\r\n\r\n this.setState({treeData: [...this.state.treeData]}, resolve);\r\n }\r\n\r\n private convertGroups(groups: SD_EM_Tree_Item[], parentId: number | undefined): DataNode[] {\r\n const data: DataNode[] = [];\r\n\r\n for (let group of groups) {\r\n const node: DataNode = {\r\n key: group.ID,\r\n title: group.DisplayName,\r\n isLeaf: false,\r\n icon: <FolderOpenOutlined/>,\r\n group: group,\r\n };\r\n\r\n data.push(node);\r\n this.childParentMap.set(group.ID, parentId);\r\n this.nodeMap.set(group.ID, node);\r\n }\r\n\r\n return data;\r\n }\r\n\r\n private convertScenarios(scenarios: SD_EM_Tree_Item[], parentId: number | undefined): DataNode[] {\r\n const data: DataNode[] = [];\r\n\r\n for (let scenario of scenarios) {\r\n const node: DataNode = {\r\n key: scenario.ID,\r\n title: scenario.DisplayName,\r\n isLeaf: false,\r\n icon: <FolderOpenOutlined/>,\r\n scenario: scenario,\r\n };\r\n\r\n data.push(node);\r\n this.childParentMap.set(scenario.ID, parentId);\r\n this.nodeMap.set(scenario.ID, node);\r\n }\r\n\r\n return data;\r\n }\r\n\r\n private convertVectors(vectors: SD_EM_Tree_Item[], parentId: number | undefined): DataNode[] {\r\n const data: DataNode[] = [];\r\n\r\n for (let vector of vectors) {\r\n const id = `${parentId}_${vector.ID}`;\r\n const node: DataNode = {\r\n key: id,\r\n title: vector.DisplayName,\r\n isLeaf: true,\r\n icon: this.getVectorIcon(vector.Type),\r\n vector: vector,\r\n };\r\n\r\n data.push(node);\r\n this.childParentMap.set(id, parentId);\r\n this.nodeMap.set(id, node);\r\n }\r\n\r\n return data;\r\n }\r\n\r\n private getVectorIcon(type: number) {\r\n switch (type) {\r\n case EdaVectorType.FifteenMinutes:\r\n return <NumberFifteenFilled/>;\r\n case EdaVectorType.Hour:\r\n return <LetterHFilled/>;\r\n case EdaVectorType.Day:\r\n return <LetterDFilled/>;\r\n case EdaVectorType.Descriptive:\r\n return <LetterCFilled/>;\r\n case EdaVectorType.Interval:\r\n return <LetterIFilled/>;\r\n case EdaVectorType.FifteenMinutesCalc:\r\n return <NumberFifteenFilled style={{color: \"orange\"}}/>;\r\n case EdaVectorType.HourCalc:\r\n return <LetterHFilled style={{color: \"orange\"}}/>;\r\n case EdaVectorType.DayCalc:\r\n return <LetterDFilled style={{color: \"orange\"}}/>;\r\n case EdaVectorType.Change:\r\n return <LetterCFilled/>;\r\n case EdaVectorType.ChangeCalc:\r\n return <LetterCFilled style={{color: \"orange\"}}/>;\r\n case EdaVectorType.Pair:\r\n return <PairOutlined/>\r\n case EdaVectorType.Periodic:\r\n return <PeriodicOutlined/>\r\n case EdaVectorType.PeriodicCalc:\r\n return <PeriodicOutlined style={{color: \"orange\"}}/>\r\n case EdaVectorType.Functional:\r\n return <FunctionOutlined/>\r\n default:\r\n return <QuestionOutlined/>;\r\n }\r\n }\r\n}"]}
1
+ {"version":3,"file":"edaTreeView.js","sourceRoot":"","sources":["../../../../../../coreui/components/edaManagerComponent/components/edaTreeView.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, {Key} from \"react\";\r\nimport {Tree, TreeDataNode, Typography} from \"antd\";\r\nimport EdaManagerApi from \"../../../../api/eda/edaManagerApi\";\r\nimport {DownOutlined, FolderOpenOutlined, FunctionOutlined, LoadingOutlined, QuestionOutlined} from \"@ant-design/icons\";\r\nimport WithCss from \"d2coreui/components/style/withCss\";\r\nimport {createStyles} from \"antd-style\";\r\nimport {EdaVectorType, IdType, TypedIndex} from \"../constants/edaTypes\";\r\nimport {NumberFifteenFilled} from \"../icons/numberFifteenFilled\";\r\nimport {LetterHFilled} from \"../icons/letterHFilled\";\r\nimport {LetterDFilled} from \"../icons/letterDFilled\";\r\nimport {LetterCFilled} from \"../icons/letterCFilled\";\r\nimport {LetterIFilled} from \"../icons/letterIFilled\";\r\nimport {PairOutlined} from \"../icons/pairOutlined\";\r\nimport {PeriodicOutlined} from \"../icons/periodicOutlined\";\r\nimport i18n from \"d2core/i18n/i18n\";\r\nimport {SD_EM_Tree_Item} from \"../../../../api/eda/generated/structures\";\r\nimport {EM_NAVIGATOR_IMPLGetGroupVectorsResult, EM_NAVIGATOR_IMPLGetScenarioVectorsResult} from \"../../../../api/eda/generated/events\";\r\n\r\nconst useStyles = createStyles(({css}) => {\r\n return {\r\n baseLayout: css`\r\n position: relative;\r\n height: 100%;\r\n width: 100%;\r\n \r\n .ant-tree {\r\n height: 100%;\r\n background-color: transparent;\r\n }\r\n\r\n .ant-tree-node-content-wrapper {\r\n user-select: none;\r\n -webkit-user-select: none;\r\n -moz-user-select: none;\r\n -ms-user-select: none;\r\n white-space: nowrap;\r\n text-overflow: ellipsis;\r\n overflow: hidden;\r\n \r\n .ant-tree-title {\r\n white-space: nowrap;\r\n }\r\n }\r\n `,\r\n absoluteLayout: css`\r\n overflow: auto;\r\n position: absolute;\r\n left: 0;\r\n right: 0;\r\n top: 0;\r\n bottom: 0;\r\n `\r\n }\r\n});\r\n\r\nexport enum TreeViewType {\r\n GROUP = \"group\",\r\n SCENARIO = \"scenario\",\r\n}\r\n\r\ninterface PageData {\r\n total: number\r\n offset: number\r\n done: boolean\r\n}\r\n\r\ninterface DataNode extends TreeDataNode {\r\n group?: SD_EM_Tree_Item\r\n vector?: SD_EM_Tree_Item\r\n scenario?: SD_EM_Tree_Item\r\n\r\n vectorOffset?: PageData\r\n groupOffset?: PageData\r\n scenarioOffset?: PageData\r\n}\r\n\r\ninterface Props {\r\n api: EdaManagerApi\r\n type: TreeViewType\r\n\r\n onItemSelected?: () => void\r\n onItemDoubleClick?: (id: TypedIndex, item: SD_EM_Tree_Item) => void\r\n}\r\n\r\ninterface State {\r\n treeData: DataNode[]\r\n expandedKeys: Key[]\r\n selectedKeys: Key[]\r\n height: number;\r\n loading?: string;\r\n}\r\n\r\nexport class EdaTreeView extends React.Component<Props, State> {\r\n private readonly childParentMap: Map<number | string, number | undefined> = new Map();\r\n private readonly nodeMap: Map<number | string, DataNode> = new Map();\r\n private readonly divRef = React.createRef<HTMLDivElement>();\r\n private resizeObserver: ResizeObserver | null = null;\r\n\r\n constructor(props: Readonly<Props>) {\r\n super(props);\r\n this.state = {\r\n treeData: [],\r\n expandedKeys: [],\r\n selectedKeys: [],\r\n height: 0,\r\n }\r\n\r\n this.onExpand = this.onExpand.bind(this);\r\n this.onLoadData = this.onLoadData.bind(this);\r\n this.onDoubleClick = this.onDoubleClick.bind(this);\r\n this.titleRenderer = this.titleRenderer.bind(this);\r\n }\r\n\r\n async componentDidMount() {\r\n await this.loadData(this.props.type);\r\n if (this.divRef.current) {\r\n this.resizeObserver = new ResizeObserver((entries) => {\r\n const entry = entries[0];\r\n\r\n if (entry) {\r\n const {height} = entry.contentRect;\r\n this.setState({height});\r\n }\r\n });\r\n\r\n this.resizeObserver.observe(this.divRef.current);\r\n }\r\n }\r\n\r\n async componentDidUpdate(prevProps: Props) {\r\n if (prevProps.type !== this.props.type) {\r\n await this.loadData(this.props.type);\r\n }\r\n }\r\n\r\n componentWillUnmount() {\r\n if (this.resizeObserver) {\r\n this.resizeObserver.disconnect();\r\n }\r\n }\r\n\r\n render(): React.ReactNode {\r\n const {treeData, expandedKeys, selectedKeys} = this.state;\r\n\r\n return (\r\n <WithCss useStyles={useStyles}>\r\n {(css) =>\r\n <div ref={this.divRef} className={css.styles.baseLayout}>\r\n <div className={css.styles.absoluteLayout}>\r\n <Tree<DataNode>\r\n blockNode\r\n showLine\r\n showIcon\r\n switcherIcon={<DownOutlined/>}\r\n height={this.state.height}\r\n loadData={this.onLoadData}\r\n onExpand={this.onExpand}\r\n onDoubleClick={this.onDoubleClick}\r\n expandedKeys={expandedKeys}\r\n selectedKeys={selectedKeys}\r\n titleRender={this.titleRenderer}\r\n treeData={treeData}/>\r\n </div>\r\n </div>\r\n }\r\n </WithCss>\r\n )\r\n }\r\n\r\n private titleRenderer(node: DataNode): React.ReactNode {\r\n if (node.key === this.state.loading) {\r\n return <Typography.Link><LoadingOutlined /> {i18n(\"Loading\")}...</Typography.Link>;\r\n }\r\n\r\n return node.title as React.ReactNode;\r\n }\r\n\r\n private renderTitle(key: string, data: DataNode, amount: number, total: number): React.ReactNode {\r\n return (\r\n <Typography.Link onClick={() => this.onLoadData(data, key)}>\r\n {i18n(\"Show %{n} more (of %{o})\", {n: String(amount), o: String(total)})}\r\n </Typography.Link>\r\n );\r\n }\r\n\r\n private onExpand(keys: Key[]) {\r\n this.setState({expandedKeys: (keys)})\r\n }\r\n\r\n private async loadData(type: TreeViewType) {\r\n this.setState({loading: \"\"});\r\n\r\n try {\r\n let treeData: DataNode[];\r\n\r\n switch (type) {\r\n case TreeViewType.GROUP:\r\n const rootGroups = await this.props.api.getGroupChildren(undefined);\r\n treeData = this.convertGroups(rootGroups.items as SD_EM_Tree_Item[], undefined);\r\n break;\r\n case TreeViewType.SCENARIO:\r\n const rootScenarios = await this.props.api.getScenarioChildren(undefined);\r\n treeData = this.convertScenarios(rootScenarios.items as SD_EM_Tree_Item[], undefined);\r\n break;\r\n }\r\n\r\n this.setState({treeData: treeData});\r\n } catch (e) {\r\n console.warn(\"failed to load tree data\", e);\r\n } finally {\r\n this.setState({loading: undefined});\r\n }\r\n }\r\n\r\n private async loadGroups(data: DataNode, id: number, nodes: DataNode[]) {\r\n const {api} = this.props;\r\n\r\n if (!data.groupOffset?.done) {\r\n const groups = await api.getGroupChildren(id, data.groupOffset?.offset);\r\n const amount = groups.leftCount > api.pageSize ? api.pageSize : groups.leftCount;\r\n\r\n nodes.push(...this.convertGroups(groups.items as SD_EM_Tree_Item[], id));\r\n\r\n if (data.groupOffset === undefined) {\r\n data.groupOffset = {\r\n done: groups.leftCount === 0,\r\n offset: groups.items.length,\r\n total: groups.items.length + groups.leftCount,\r\n }\r\n } else {\r\n data.groupOffset.done = groups.leftCount === 0;\r\n data.groupOffset.offset += groups.items.length;\r\n }\r\n\r\n if (!data.groupOffset.done) {\r\n const key = `${id}_show_more`;\r\n\r\n nodes.push({\r\n key: key,\r\n title: this.renderTitle(key, data, amount, data.groupOffset.total),\r\n isLeaf: true,\r\n });\r\n }\r\n }\r\n\r\n if (data.groupOffset.done && !data.vectorOffset?.done) {\r\n const vectors = await api.getGroupVectors(id, data.vectorOffset?.offset);\r\n\r\n this.loadVectors(data, id, nodes, vectors);\r\n }\r\n }\r\n\r\n private async loadScenarios(data: DataNode, id: number, nodes: DataNode[]) {\r\n const {api} = this.props;\r\n\r\n if (!data.scenarioOffset?.done) {\r\n const groups = await api.getScenarioChildren(id, data.scenarioOffset?.offset);\r\n const amount = groups.leftCount > api.pageSize ? api.pageSize : groups.leftCount;\r\n\r\n nodes.push(...this.convertScenarios(groups.items as SD_EM_Tree_Item[], id));\r\n\r\n if (data.scenarioOffset === undefined) {\r\n data.scenarioOffset = {\r\n done: groups.leftCount === 0,\r\n offset: groups.items.length,\r\n total: groups.items.length + groups.leftCount,\r\n }\r\n } else {\r\n data.scenarioOffset.done = groups.leftCount === 0;\r\n data.scenarioOffset.offset += groups.items.length;\r\n }\r\n\r\n if (!data.scenarioOffset.done) {\r\n const key = `${id}_show_more`;\r\n\r\n nodes.push({\r\n key: key,\r\n title: this.renderTitle(key, data, amount, data.scenarioOffset.total),\r\n isLeaf: true,\r\n });\r\n }\r\n }\r\n\r\n if (data.scenarioOffset.done && !data.vectorOffset?.done) {\r\n const vectors = await api.getScenarioVectors(id, data.vectorOffset?.offset, undefined, true);\r\n\r\n this.loadVectors(data, id, nodes, vectors);\r\n }\r\n }\r\n\r\n private loadVectors(data: DataNode, id: number, nodes: DataNode[], vectors: Omit<EM_NAVIGATOR_IMPLGetGroupVectorsResult | EM_NAVIGATOR_IMPLGetScenarioVectorsResult, \"isOk\" | \"errorMsg\">) {\r\n const {api} = this.props;\r\n\r\n const amount = vectors.leftCount > api.pageSize ? api.pageSize : vectors.leftCount;\r\n\r\n nodes.push(...this.convertVectors(vectors.items as SD_EM_Tree_Item[], id));\r\n\r\n if (data.vectorOffset === undefined) {\r\n data.vectorOffset = {\r\n done: vectors.leftCount === 0,\r\n offset: vectors.items.length,\r\n total: vectors.items.length + vectors.leftCount,\r\n }\r\n } else {\r\n data.vectorOffset.done = vectors.leftCount === 0;\r\n data.vectorOffset.offset += vectors.items.length;\r\n }\r\n\r\n if (!data.vectorOffset.done) {\r\n const key = `${id}_show_more`;\r\n\r\n nodes.push({\r\n key: key,\r\n title: this.renderTitle(key, data, amount, data.vectorOffset.total),\r\n isLeaf: true,\r\n });\r\n }\r\n }\r\n\r\n private async onLoadData(data: DataNode, id?: string): Promise<void> {\r\n if (data.children) { // data already available\r\n return Promise.resolve();\r\n }\r\n\r\n this.setState({loading: id});\r\n\r\n try {\r\n const {type} = this.props;\r\n let id: number;\r\n const nodes: DataNode[] = [];\r\n\r\n switch (type) {\r\n case TreeViewType.GROUP:\r\n if (!data.group) {\r\n console.warn(\"No group!\");\r\n this.setState({loading: undefined});\r\n return;\r\n }\r\n\r\n id = data.group.ID;\r\n await this.loadGroups(data, id, nodes);\r\n break;\r\n case TreeViewType.SCENARIO:\r\n if (!data.scenario) {\r\n console.warn(\"No scenario!\");\r\n this.setState({loading: undefined});\r\n return;\r\n }\r\n\r\n id = data.scenario.ID;\r\n await this.loadScenarios(data, id, nodes);\r\n break;\r\n default:\r\n this.setState({loading: undefined});\r\n return;\r\n }\r\n\r\n const parentId = this.childParentMap.get(id);\r\n\r\n await new Promise<void>((resolve, reject) => {\r\n if (parentId !== undefined) {\r\n const parentNode = this.nodeMap.get(parentId);\r\n\r\n if (parentNode?.children) {\r\n this.updateTree(data, nodes, parentNode.children, id, resolve, reject);\r\n } else {\r\n console.warn(\"No parent for node\", id);\r\n reject();\r\n }\r\n } else {\r\n this.updateTree(data, nodes, this.state.treeData, id, resolve, reject);\r\n }\r\n });\r\n } catch (e) {\r\n console.warn(\"Failed to load tree data\", e);\r\n } finally {\r\n this.setState({loading: undefined});\r\n }\r\n }\r\n\r\n private onDoubleClick(_e: React.MouseEvent, node: DataNode) {\r\n if (node.vector !== undefined) {\r\n this.props.onItemDoubleClick?.({id: node.vector.ID, type: IdType.VECTOR}, node.vector);\r\n } else if (node.group !== undefined) {\r\n this.props.onItemDoubleClick?.({id: node.group.ID, type: IdType.GROUP}, node.group);\r\n } else if (node.scenario !== undefined) {\r\n this.props.onItemDoubleClick?.({id: node.scenario.ID, type: IdType.SCENARIO}, node.scenario);\r\n }\r\n\r\n this.setState({selectedKeys: [node.key]});\r\n }\r\n\r\n private updateTree(data: DataNode, nodes: DataNode[], treeData: DataNode[], dataId: number, resolve: () => void, reject: () => void) {\r\n const {type} = this.props;\r\n const index: number = treeData.findIndex((t: DataNode) => (type === TreeViewType.GROUP ? t.group?.ID : t.scenario?.ID) === dataId);\r\n\r\n if (index < 0) {\r\n console.warn(\"Failed to find index\");\r\n reject();\r\n return;\r\n }\r\n\r\n treeData[index] = {...data, children: treeData[index].children};\r\n\r\n if (treeData[index].children) {\r\n treeData[index].children.pop();\r\n treeData[index].children.push(...nodes);\r\n } else {\r\n treeData[index].children = nodes;\r\n }\r\n\r\n this.nodeMap.set(dataId, treeData[index]);\r\n\r\n this.setState({treeData: [...this.state.treeData]}, resolve);\r\n }\r\n\r\n private convertGroups(groups: SD_EM_Tree_Item[], parentId: number | undefined): DataNode[] {\r\n const data: DataNode[] = [];\r\n\r\n for (let group of groups) {\r\n const node: DataNode = {\r\n key: group.ID,\r\n title: group.DisplayName,\r\n isLeaf: false,\r\n icon: <FolderOpenOutlined/>,\r\n group: group,\r\n };\r\n\r\n data.push(node);\r\n this.childParentMap.set(group.ID, parentId);\r\n this.nodeMap.set(group.ID, node);\r\n }\r\n\r\n return data;\r\n }\r\n\r\n private convertScenarios(scenarios: SD_EM_Tree_Item[], parentId: number | undefined): DataNode[] {\r\n const data: DataNode[] = [];\r\n\r\n for (let scenario of scenarios) {\r\n const node: DataNode = {\r\n key: scenario.ID,\r\n title: scenario.DisplayName,\r\n isLeaf: false,\r\n icon: <FolderOpenOutlined/>,\r\n scenario: scenario,\r\n };\r\n\r\n data.push(node);\r\n this.childParentMap.set(scenario.ID, parentId);\r\n this.nodeMap.set(scenario.ID, node);\r\n }\r\n\r\n return data;\r\n }\r\n\r\n private convertVectors(vectors: SD_EM_Tree_Item[], parentId: number | undefined): DataNode[] {\r\n const data: DataNode[] = [];\r\n\r\n for (let vector of vectors) {\r\n const id = `${parentId}_${vector.ID}`;\r\n const node: DataNode = {\r\n key: id,\r\n title: vector.DisplayName,\r\n isLeaf: true,\r\n icon: this.getVectorIcon(vector.Type),\r\n vector: vector,\r\n };\r\n\r\n data.push(node);\r\n this.childParentMap.set(id, parentId);\r\n this.nodeMap.set(id, node);\r\n }\r\n\r\n return data;\r\n }\r\n\r\n private getVectorIcon(type: number) {\r\n switch (type) {\r\n case EdaVectorType.FifteenMinutes:\r\n return <NumberFifteenFilled/>;\r\n case EdaVectorType.Hour:\r\n return <LetterHFilled/>;\r\n case EdaVectorType.Day:\r\n return <LetterDFilled/>;\r\n case EdaVectorType.Descriptive:\r\n return <LetterCFilled/>;\r\n case EdaVectorType.Interval:\r\n return <LetterIFilled/>;\r\n case EdaVectorType.FifteenMinutesCalc:\r\n return <NumberFifteenFilled style={{color: \"orange\"}}/>;\r\n case EdaVectorType.HourCalc:\r\n return <LetterHFilled style={{color: \"orange\"}}/>;\r\n case EdaVectorType.DayCalc:\r\n return <LetterDFilled style={{color: \"orange\"}}/>;\r\n case EdaVectorType.Change:\r\n return <LetterCFilled/>;\r\n case EdaVectorType.ChangeCalc:\r\n return <LetterCFilled style={{color: \"orange\"}}/>;\r\n case EdaVectorType.Pair:\r\n return <PairOutlined/>\r\n case EdaVectorType.Periodic:\r\n return <PeriodicOutlined/>\r\n case EdaVectorType.PeriodicCalc:\r\n return <PeriodicOutlined style={{color: \"orange\"}}/>\r\n case EdaVectorType.Functional:\r\n return <FunctionOutlined/>\r\n default:\r\n return <QuestionOutlined/>;\r\n }\r\n }\r\n}"]}
@@ -2,18 +2,24 @@ import React from "react";
2
2
  import { VectorData } from "../constants/edaTypes";
3
3
  import { SizeType } from "antd/lib/config-provider/SizeContext";
4
4
  import { Variant } from "antd/es/config-provider";
5
+ import EdaManagerApi from "../../../../api/eda/edaManagerApi";
6
+ import { SD_EM_Tree_Item } from "../../../../api/eda/generated/structures";
5
7
  interface Props {
8
+ api: EdaManagerApi;
6
9
  data: VectorData;
7
10
  size?: SizeType;
8
11
  variant?: Variant;
9
12
  }
10
13
  interface State {
14
+ expandedKeys: string[];
15
+ validator?: SD_EM_Tree_Item;
11
16
  }
12
17
  export declare class EdaVectorDetailPanel extends React.Component<Props, State> {
13
18
  private mask;
14
19
  private readonly formRef;
15
- componentDidMount(): void;
16
- componentDidUpdate(prevProps: Readonly<Props>): void;
20
+ constructor(props: Readonly<Props>);
21
+ componentDidMount(): Promise<void>;
22
+ componentDidUpdate(prevProps: Readonly<Props>): Promise<void>;
17
23
  render(): React.JSX.Element;
18
24
  private getCollapseItems;
19
25
  }
@@ -1,5 +1,5 @@
1
1
  import React from "react";
2
- import { Checkbox, Col, Collapse, Form, Input, InputNumber, Row, Select, Typography } from "antd";
2
+ import { Button, Checkbox, Col, Collapse, Form, Input, InputNumber, Row, Select, Space, Typography } from "antd";
3
3
  import WithCss from "d2coreui/components/style/withCss";
4
4
  import i18n from "d2core/i18n/i18n";
5
5
  import { createStyles } from "antd-style";
@@ -8,6 +8,7 @@ import { EdaAccessType, EdaRoundingType, EdaValueClassType, EdaVectorType } from
8
8
  import EnumValuePicker from "d2coreui/components/picker/enumValuePicker";
9
9
  import { EdaSelect } from "../edaSelect";
10
10
  import { LocaleHolder } from "d2core/i18n/localeHolder";
11
+ import { FullscreenExitOutlined, FullscreenOutlined } from "@ant-design/icons";
11
12
  const useStyles = createStyles(({ css }) => {
12
13
  return {
13
14
  baseLayout: css `
@@ -15,21 +16,37 @@ const useStyles = createStyles(({ css }) => {
15
16
  };
16
17
  });
17
18
  export class EdaVectorDetailPanel extends React.Component {
18
- constructor() {
19
- super(...arguments);
19
+ constructor(props) {
20
+ super(props);
20
21
  this.mask = LocaleHolder.getDateTimeFormat(true, false, false, true);
21
22
  this.formRef = React.createRef();
23
+ this.state = {
24
+ expandedKeys: [],
25
+ };
22
26
  }
23
- componentDidMount() {
24
- this.formRef.current?.setFieldsValue(this.props.data);
27
+ async componentDidMount() {
28
+ const { api, data } = this.props;
29
+ if (data.data.ID_VALIDATOR) {
30
+ const validator = await api.getVector(data.data.ID_VALIDATOR);
31
+ this.setState({ validator: validator.item[0] });
32
+ }
33
+ this.formRef.current?.setFieldsValue(data);
25
34
  }
26
- componentDidUpdate(prevProps) {
27
- if (prevProps.data !== this.props.data) {
28
- this.formRef.current?.setFieldsValue(this.props.data);
35
+ async componentDidUpdate(prevProps) {
36
+ const { api, data } = this.props;
37
+ if (prevProps.data !== data) {
38
+ this.formRef.current?.resetFields();
39
+ this.setState({ validator: undefined });
40
+ this.formRef.current?.setFieldsValue(data);
41
+ if (data.data.ID_VALIDATOR) {
42
+ const validator = await api.getVector(data.data.ID_VALIDATOR);
43
+ this.setState({ validator: validator.item[0] });
44
+ }
29
45
  }
30
46
  }
31
47
  render() {
32
48
  const { data, size, variant } = this.props;
49
+ const { expandedKeys } = this.state;
33
50
  return (React.createElement(WithCss, { useStyles: useStyles }, (css) => React.createElement(Form, { ref: this.formRef, layout: "horizontal", style: { overflowX: "hidden" }, className: "record-config-form", size: size, variant: variant, labelCol: { sm: 24, md: 24, lg: 24, xl: 24, xxl: 24 } },
34
51
  React.createElement(Row, { gutter: css.theme.padding, align: "bottom" },
35
52
  React.createElement(Col, { flex: "auto" },
@@ -62,13 +79,24 @@ export class EdaVectorDetailPanel extends React.Component {
62
79
  React.createElement(Col, { span: 24 },
63
80
  React.createElement(Form.Item, { required: true, label: i18n("Filter"), name: ["data", "MENOEX"] },
64
81
  React.createElement(Input, { readOnly: true })))),
65
- React.createElement(Collapse, { size: size, items: this.getCollapseItems(css), style: { marginTop: css.theme.paddingXS + "px" }, bordered: false }))));
82
+ React.createElement(Collapse, { size: size, items: this.getCollapseItems(css), style: { marginTop: css.theme.paddingXS + "px" }, onChange: (keys) => this.setState({ expandedKeys: keys }), bordered: false, activeKey: expandedKeys }))));
66
83
  }
67
84
  getCollapseItems(css) {
85
+ const { api, size } = this.props;
86
+ const { validator } = this.state;
68
87
  return [
69
88
  {
70
89
  key: "rounding",
71
90
  label: i18n("Rounding"),
91
+ extra: (React.createElement(Space.Compact, { size: size },
92
+ React.createElement(Button, { icon: React.createElement(FullscreenOutlined, null), title: i18n("Expand All"), onClick: (e) => {
93
+ this.setState({ expandedKeys: ["rounding", "time_values", "other_info", "note", "parameters"] });
94
+ e.stopPropagation();
95
+ } }),
96
+ React.createElement(Button, { icon: React.createElement(FullscreenExitOutlined, null), title: i18n("Collapse All"), onClick: (e) => {
97
+ this.setState({ expandedKeys: [] });
98
+ e.stopPropagation();
99
+ } }))),
72
100
  children: (React.createElement(React.Fragment, null,
73
101
  React.createElement(Row, { gutter: css.theme.padding },
74
102
  React.createElement(Col, { span: 16 },
@@ -121,8 +149,8 @@ export class EdaVectorDetailPanel extends React.Component {
121
149
  React.createElement(Select, { open: false })))),
122
150
  React.createElement(Row, null,
123
151
  React.createElement(Col, { span: 24 },
124
- React.createElement(Form.Item, { label: i18n("Validation"), name: ["data", "ID_VALIDATOR"] },
125
- React.createElement(EdaSelect, { open: false })))),
152
+ React.createElement(Form.Item, { label: i18n("Validation"), name: ["data", "ID_VALIDATOR"], getValueProps: (v) => ({ value: v ? validator : undefined }) },
153
+ React.createElement(EdaSelect, { api: api, type: 0, displayType: "name_code", showDetailButton: true, showCancelButton: true })))),
126
154
  React.createElement(Row, { gutter: css.theme.padding },
127
155
  React.createElement(Col, { flex: "auto" },
128
156
  React.createElement(Form.Item, { label: i18n("Time Zone"), name: ["data", "TIME_ZONE"] },
@@ -1 +1 @@
1
- {"version":3,"file":"edaVectorDetailPanel.js","sourceRoot":"","sources":["../../../../../../coreui/components/edaManagerComponent/components/edaVectorDetailPanel.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAC,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAgB,KAAK,EAAE,WAAW,EAAE,GAAG,EAAE,MAAM,EAAE,UAAU,EAAC,MAAM,MAAM,CAAC;AAC9G,OAAO,OAAO,MAAM,mCAAmC,CAAC;AACxD,OAAO,IAAI,MAAM,kBAAkB,CAAC;AACpC,OAAO,EAAC,YAAY,EAAC,MAAM,YAAY,CAAC;AAExC,OAAO,KAAK,MAAM,cAAc,CAAC;AACjC,OAAO,EAAC,aAAa,EAAE,eAAe,EAAE,iBAAiB,EAAE,aAAa,EAAa,MAAM,uBAAuB,CAAC;AACnH,OAAO,eAAe,MAAM,4CAA4C,CAAC;AACzE,OAAO,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AAEvC,OAAO,EAAC,YAAY,EAAC,MAAM,0BAA0B,CAAC;AAGtD,MAAM,SAAS,GAAG,YAAY,CAAC,CAAC,EAAC,GAAG,EAAC,EAAG,EAAE;IACtC,OAAO;QACH,UAAU,EAAE,GAAG,CAAA;SACd;KACJ,CAAA;AACL,CAAC,CAAC,CAAC;AAaH,MAAM,OAAO,oBAAqB,SAAQ,KAAK,CAAC,SAAuB;IAAvE;;QACY,SAAI,GAAG,YAAY,CAAC,iBAAiB,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;QACvD,YAAO,GAAG,KAAK,CAAC,SAAS,EAA4B,CAAC;IAmW3E,CAAC;IAjWG,iBAAiB;QACb,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC1D,CAAC;IAED,kBAAkB,CAAC,SAA0B;QACzC,IAAI,SAAS,CAAC,IAAI,KAAK,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;YACrC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC1D,CAAC;IACL,CAAC;IAED,MAAM;QACF,MAAM,EAAC,IAAI,EAAE,IAAI,EAAE,OAAO,EAAC,GAAG,IAAI,CAAC,KAAK,CAAC;QAEzC,OAAO,CACH,oBAAC,OAAO,IAAC,SAAS,EAAE,SAAS,IACxB,CAAC,GAAG,EAAE,EAAE,CACL,oBAAC,IAAI,IACD,GAAG,EAAE,IAAI,CAAC,OAAO,EACjB,MAAM,EAAE,YAAY,EACpB,KAAK,EAAE,EAAC,SAAS,EAAE,QAAQ,EAAC,EAC5B,SAAS,EAAE,oBAAoB,EAC/B,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,EAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAC;YAEnD,oBAAC,GAAG,IAAC,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,EAAE,QAAQ;gBAC3C,oBAAC,GAAG,IAAC,IAAI,EAAE,MAAM;oBACb,oBAAC,IAAI,CAAC,IAAI,IAAC,KAAK,EAAE,IAAI,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,QAAQ;wBAClE,oBAAC,eAAe,IACZ,IAAI,EAAE,KAAK,EACX,KAAK,EAAE,EAAC,QAAQ,EAAE,OAAO,EAAC,EAC1B,MAAM,EAAE,aAAa,EACrB,cAAc,QACd,iBAAiB,EAAE,gBAAgB,GACrC,CACM,CACV;gBACN,oBAAC,GAAG;oBACA;;wBAAW,IAAI,CAAC,IAAI,CAAC,SAAS,CAAQ,CACpC,CACJ;YACN,oBAAC,GAAG,IAAC,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,OAAO;gBAC1B,oBAAC,GAAG,IAAC,IAAI,EAAE,EAAE;oBACT,oBAAC,IAAI,CAAC,IAAI,IACN,QAAQ,QACR,IAAI,EAAE,CAAC,MAAM,EAAE,YAAY,CAAC,EAC5B,aAAa,EAAE,SAAS,EACxB,aAAa,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAC,OAAO,EAAE,CAAC,KAAK,CAAC,EAAC,CAAC,EAC1C,iBAAiB,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;wBAEpD,oBAAC,QAAQ,IAAC,QAAQ,UAAE,IAAI,CAAC,4BAA4B,CAAC,CAAY,CAC1D,CACV,CACJ;YACN,oBAAC,GAAG,IAAC,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,OAAO;gBAC1B,oBAAC,GAAG,IAAC,IAAI,EAAE,EAAE;oBACT,oBAAC,IAAI,CAAC,IAAI,IACN,QAAQ,QACR,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,EACtB,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC;wBAEnB,oBAAC,KAAK,IAAC,QAAQ,SAAG,CACV,CACV,CACJ;YACN,oBAAC,GAAG,IAAC,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,OAAO;gBAC1B,oBAAC,GAAG,IAAC,IAAI,EAAE,EAAE;oBACT,oBAAC,IAAI,CAAC,IAAI,IACN,QAAQ,QACR,IAAI,EAAE,CAAC,MAAM,EAAE,aAAa,CAAC,EAC7B,KAAK,EAAE,IAAI,CAAC,aAAa,CAAC;wBAE1B,oBAAC,KAAK,IAAC,QAAQ,SAAG,CACV,CACV,CACJ;YACN,oBAAC,GAAG,IAAC,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,OAAO;gBAC1B,oBAAC,GAAG,IAAC,IAAI,EAAE,EAAE;oBACT,oBAAC,IAAI,CAAC,IAAI,IACN,QAAQ,QACR,IAAI,EAAE,CAAC,MAAM,EAAE,UAAU,CAAC,EAC1B,KAAK,EAAE,IAAI,CAAC,aAAa,CAAC;wBAE1B,oBAAC,eAAe,IACZ,IAAI,EAAE,KAAK,EACX,MAAM,EAAE,iBAAiB,EACzB,cAAc,QACd,iBAAiB,EAAE,oBAAoB,GACzC,CACM,CACV;gBACN,oBAAC,GAAG,IAAC,IAAI,EAAE,EAAE;oBACT,oBAAC,IAAI,CAAC,IAAI,IACN,IAAI,EAAE,CAAC,MAAM,EAAE,eAAe,CAAC,EAC/B,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC;wBAEpB,oBAAC,KAAK,IAAC,QAAQ,QAAC,KAAK,EAAE,EAAC,KAAK,EAAE,MAAM,EAAC,GAAI,CAClC,CACV,CACJ;YACN,oBAAC,GAAG,IAAC,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,OAAO;gBAC1B,oBAAC,GAAG,IAAC,IAAI,EAAE,EAAE;oBACT,oBAAC,IAAI,CAAC,IAAI,IACN,QAAQ,QACR,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,EACrB,IAAI,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC;wBAExB,oBAAC,KAAK,IAAC,QAAQ,SAAG,CACV,CACV,CACJ;YACN,oBAAC,QAAQ,IACL,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,EACjC,KAAK,EAAE,EAAC,SAAS,EAAE,GAAG,CAAC,KAAK,CAAC,SAAS,GAAG,IAAI,EAAC,EAC9C,QAAQ,EAAE,KAAK,GACjB,CACC,CAEL,CACb,CAAA;IACL,CAAC;IAEO,gBAAgB,CAAC,GAAQ;QAC7B,OAAO;YACH;gBACI,GAAG,EAAE,UAAU;gBACf,KAAK,EAAE,IAAI,CAAC,UAAU,CAAC;gBACvB,QAAQ,EAAE,CACN;oBACI,oBAAC,GAAG,IAAC,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,OAAO;wBAC1B,oBAAC,GAAG,IAAC,IAAI,EAAE,EAAE;4BACT,oBAAC,IAAI,CAAC,IAAI,IACN,QAAQ,QACR,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,EACnB,IAAI,EAAE,CAAC,MAAM,EAAE,YAAY,CAAC;gCAE5B,oBAAC,eAAe,IACZ,IAAI,EAAE,KAAK,EACX,MAAM,EAAE,eAAe,EACvB,cAAc,QACd,iBAAiB,EAAE,kBAAkB,GACvC,CACM,CACV;wBACN,oBAAC,GAAG,IAAC,IAAI,EAAE,CAAC;4BACR,oBAAC,IAAI,CAAC,IAAI,IACN,QAAQ,QACR,KAAK,EAAE,IAAI,CAAC,gBAAgB,CAAC,EAC7B,IAAI,EAAE,CAAC,MAAM,EAAE,aAAa,CAAC;gCAE7B,oBAAC,WAAW,IAAC,QAAQ,QAAC,KAAK,EAAE,EAAC,KAAK,EAAE,MAAM,EAAC,GAAI,CACxC,CACV,CACJ;oBACN,oBAAC,GAAG,IAAC,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,OAAO;wBAC1B,oBAAC,GAAG,IAAC,IAAI,EAAE,EAAE;4BACT,oBAAC,IAAI,CAAC,IAAI,IACN,QAAQ,QACR,KAAK,EAAE,IAAI,CAAC,aAAa,CAAC,EAC1B,IAAI,EAAE,CAAC,MAAM,EAAE,YAAY,CAAC;gCAE5B,oBAAC,eAAe,IACZ,IAAI,EAAE,KAAK,EACX,MAAM,EAAE,eAAe,EACvB,cAAc,QACd,iBAAiB,EAAE,kBAAkB,GACvC,CACM,CACV;wBACN,oBAAC,GAAG,IAAC,IAAI,EAAE,CAAC;4BACR,oBAAC,IAAI,CAAC,IAAI,IACN,QAAQ,QACR,KAAK,EAAE,IAAI,CAAC,gBAAgB,CAAC,EAC7B,IAAI,EAAE,CAAC,MAAM,EAAE,aAAa,CAAC;gCAE7B,oBAAC,WAAW,IAAC,QAAQ,QAAC,KAAK,EAAE,EAAC,KAAK,EAAE,MAAM,EAAC,GAAI,CACxC,CACV,CACJ,CACP,CACN;aACJ;YACD;gBACI,GAAG,EAAE,aAAa;gBAClB,KAAK,EAAE,IAAI,CAAC,aAAa,CAAC;gBAC1B,QAAQ,EAAE,CACN;oBACI,oBAAC,GAAG,IAAC,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,OAAO;wBAC1B,oBAAC,GAAG,IAAC,IAAI,EAAE,EAAE;4BACT,oBAAC,IAAI,CAAC,IAAI,IACN,KAAK,EAAE,IAAI,CAAC,eAAe,CAAC,EAC5B,IAAI,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC,EAC5B,aAAa,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,EAAC,CAAC;gCAE3E,oBAAC,KAAK,IAAC,QAAQ,QAAC,OAAO,EAAE,YAAY,EAAE,KAAK,EAAE,EAAC,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAC,GAAG,CAC5E,CACV;wBACN,oBAAC,GAAG,IAAC,IAAI,EAAE,EAAE;4BACT,oBAAC,IAAI,CAAC,IAAI,IACN,KAAK,EAAE,IAAI,CAAC,oBAAoB,CAAC,EACjC,IAAI,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC,EAC5B,aAAa,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,EAAC,CAAC;gCAE3E,oBAAC,KAAK,IAAC,QAAQ,QAAC,OAAO,EAAE,YAAY,EAAE,KAAK,EAAE,EAAC,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAC,GAAG,CAC5E,CACV,CACJ;oBACN,oBAAC,GAAG,IAAC,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,OAAO;wBAC1B,oBAAC,GAAG,IAAC,IAAI,EAAE,EAAE;4BACT,oBAAC,IAAI,CAAC,IAAI,IACN,KAAK,EAAE,IAAI,CAAC,eAAe,CAAC,EAC5B,IAAI,EAAE,CAAC,MAAM,EAAE,SAAS,CAAC,EACzB,aAAa,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,EAAC,CAAC;gCAE3E,oBAAC,KAAK,IAAC,QAAQ,QAAC,OAAO,EAAE,YAAY,EAAE,KAAK,EAAE,EAAC,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAC,GAAI,CAC7E,CACV;wBACN,oBAAC,GAAG,IAAC,IAAI,EAAE,EAAE;4BACT,oBAAC,IAAI,CAAC,IAAI,IACN,KAAK,EAAE,IAAI,CAAC,aAAa,CAAC,EAC1B,IAAI,EAAE,CAAC,MAAM,EAAE,SAAS,CAAC,EACzB,aAAa,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,EAAC,CAAC;gCAE3E,oBAAC,KAAK,IAAC,QAAQ,QAAC,OAAO,EAAE,YAAY,EAAE,KAAK,EAAE,EAAC,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAC,GAAI,CAC7E,CACV,CACJ;oBACN,oBAAC,GAAG,IAAC,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,OAAO;wBAC1B,oBAAC,GAAG,IAAC,IAAI,EAAE,EAAE;4BACT,oBAAC,IAAI,CAAC,IAAI,IACN,KAAK,EAAE,IAAI,CAAC,eAAe,CAAC,EAC5B,IAAI,EAAE,CAAC,cAAc,EAAE,UAAU,CAAC,EAClC,aAAa,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,EAAC,CAAC;gCAE3E,oBAAC,KAAK,IAAC,QAAQ,QAAC,OAAO,EAAE,YAAY,EAAE,KAAK,EAAE,EAAC,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAC,GAAG,CAC5E,CACV;wBACN,oBAAC,GAAG,IAAC,IAAI,EAAE,EAAE;4BACT,oBAAC,IAAI,CAAC,IAAI,IACN,KAAK,EAAE,IAAI,CAAC,aAAa,CAAC,EAC1B,IAAI,EAAE,CAAC,cAAc,EAAE,UAAU,CAAC,EAClC,aAAa,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,EAAC,CAAC;gCAE3E,oBAAC,KAAK,IAAC,QAAQ,QAAC,OAAO,EAAE,YAAY,EAAE,KAAK,EAAE,EAAC,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAC,GAAG,CAC5E,CACV,CACJ,CACP,CACN;aACJ;YACD;gBACI,GAAG,EAAE,YAAY;gBACjB,KAAK,EAAE,IAAI,CAAC,YAAY,CAAC;gBACzB,QAAQ,EAAE,CACN;oBACI,oBAAC,GAAG;wBACA,oBAAC,GAAG,IAAC,IAAI,EAAE,EAAE;4BACT,oBAAC,IAAI,CAAC,IAAI,IACN,KAAK,EAAE,IAAI,CAAC,YAAY,CAAC,EACzB,IAAI,EAAE,CAAC,MAAM,EAAE,eAAe,CAAC;gCAE/B,oBAAC,MAAM,IAAC,IAAI,EAAE,KAAK,GAAI,CACf,CACV,CACJ;oBACN,oBAAC,GAAG;wBACA,oBAAC,GAAG,IAAC,IAAI,EAAE,EAAE;4BACT,oBAAC,IAAI,CAAC,IAAI,IACN,KAAK,EAAE,IAAI,CAAC,YAAY,CAAC,EACzB,IAAI,EAAE,CAAC,MAAM,EAAE,cAAc,CAAC;gCAE9B,oBAAC,SAAS,IAAC,IAAI,EAAE,KAAK,GAAI,CAClB,CACV,CACJ;oBACN,oBAAC,GAAG,IAAC,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,OAAO;wBAC1B,oBAAC,GAAG,IAAC,IAAI,EAAE,MAAM;4BACb,oBAAC,IAAI,CAAC,IAAI,IACN,KAAK,EAAE,IAAI,CAAC,WAAW,CAAC,EACxB,IAAI,EAAE,CAAC,MAAM,EAAE,WAAW,CAAC;gCAE3B,oBAAC,KAAK,IAAC,QAAQ,SAAG,CACV,CACV;wBACN,oBAAC,GAAG,IAAC,IAAI,EAAE,MAAM;4BACb,oBAAC,IAAI,CAAC,IAAI,IACN,QAAQ,QACR,KAAK,EAAE,IAAI,CAAC,aAAa,CAAC,EAC1B,IAAI,EAAE,CAAC,MAAM,EAAE,aAAa,CAAC;gCAE7B,oBAAC,KAAK,IAAC,QAAQ,SAAG,CACV,CACV,CACJ;oBACN,oBAAC,GAAG,IAAC,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,OAAO;wBAC1B,oBAAC,GAAG,IAAC,IAAI,EAAE,MAAM;4BACb,oBAAC,IAAI,CAAC,IAAI,IACN,QAAQ,QACR,KAAK,EAAE,IAAI,CAAC,aAAa,CAAC,EAC1B,IAAI,EAAE,CAAC,MAAM,EAAE,SAAS,CAAC;gCAEzB,oBAAC,eAAe,IACZ,IAAI,EAAE,KAAK,EACX,MAAM,EAAE,aAAa,EACrB,cAAc,QACd,iBAAiB,EAAE,gBAAgB,GACrC,CACM,CACV;wBACN,oBAAC,GAAG,IAAC,IAAI,EAAE,MAAM;4BACb,oBAAC,IAAI,CAAC,IAAI,IACN,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,EACpB,IAAI,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC;gCAEvB,oBAAC,KAAK,IAAC,QAAQ,SAAG,CACV,CACV,CACJ,CACP,CACN;aACJ;YACD;gBACI,GAAG,EAAE,MAAM;gBACX,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC;gBACnB,QAAQ,EAAE,CACN,oBAAC,IAAI,CAAC,IAAI,IACN,IAAI,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC;oBAEvB,oBAAC,KAAK,CAAC,QAAQ,IAAC,IAAI,EAAE,CAAC,EAAE,QAAQ,SAAG,CAC5B,CACf;aACJ;YACD;gBACI,GAAG,EAAE,YAAY;gBACjB,KAAK,EAAE,IAAI,CAAC,YAAY,CAAC;gBACzB,QAAQ,EAAE,CACN;oBACI,oBAAC,UAAU,CAAC,KAAK,eAAwB,CAC1C,CACN;aACJ;YACD;gBACI,GAAG,EAAE,YAAY;gBACjB,KAAK,EAAE,IAAI,CAAC,YAAY,CAAC;gBACzB,QAAQ,EAAE,CACN;oBACI,oBAAC,UAAU,CAAC,KAAK,eAAwB,CAC1C,CACN;aACJ;SACJ,CAAA;IACL,CAAC;CACJ","sourcesContent":["import React from \"react\";\r\nimport {Checkbox, Col, Collapse, Form, FormInstance, Input, InputNumber, Row, Select, Typography} from \"antd\";\r\nimport WithCss from \"d2coreui/components/style/withCss\";\r\nimport i18n from \"d2core/i18n/i18n\";\r\nimport {createStyles} from \"antd-style\";\r\nimport {ItemType} from \"rc-collapse/lib/interface\"\r\nimport dayjs from \"d2core/dayjs\";\r\nimport {EdaAccessType, EdaRoundingType, EdaValueClassType, EdaVectorType, VectorData} from \"../constants/edaTypes\";\r\nimport EnumValuePicker from \"d2coreui/components/picker/enumValuePicker\";\r\nimport {EdaSelect} from \"../edaSelect\";\r\nimport {SizeType} from \"antd/lib/config-provider/SizeContext\";\r\nimport {LocaleHolder} from \"d2core/i18n/localeHolder\";\r\nimport {Variant} from \"antd/es/config-provider\";\r\n\r\nconst useStyles = createStyles(({css},) => {\r\n return {\r\n baseLayout: css`\r\n `\r\n }\r\n});\r\n\r\ninterface Props {\r\n data: VectorData\r\n\r\n size?: SizeType\r\n variant?: Variant\r\n}\r\n\r\ninterface State {\r\n\r\n}\r\n\r\nexport class EdaVectorDetailPanel extends React.Component<Props, State> {\r\n private mask = LocaleHolder.getDateTimeFormat(true, false, false, true);\r\n private readonly formRef = React.createRef<FormInstance<VectorData>>();\r\n\r\n componentDidMount() {\r\n this.formRef.current?.setFieldsValue(this.props.data);\r\n }\r\n\r\n componentDidUpdate(prevProps: Readonly<Props>) {\r\n if (prevProps.data !== this.props.data) {\r\n this.formRef.current?.setFieldsValue(this.props.data);\r\n }\r\n }\r\n\r\n render() {\r\n const {data, size, variant} = this.props;\r\n\r\n return (\r\n <WithCss useStyles={useStyles}>\r\n {(css) =>\r\n <Form<VectorData>\r\n ref={this.formRef}\r\n layout={\"horizontal\"}\r\n style={{overflowX: \"hidden\"}}\r\n className={\"record-config-form\"}\r\n size={size}\r\n variant={variant}\r\n labelCol={{sm: 24, md: 24, lg: 24, xl: 24, xxl: 24}}\r\n >\r\n <Row gutter={css.theme.padding} align={\"bottom\"}>\r\n <Col flex={\"auto\"}>\r\n <Form.Item label={i18n(\"Vector Type\")} name={[\"data\", \"TYP\"]} required>\r\n <EnumValuePicker\r\n open={false}\r\n style={{maxWidth: \"250px\"}}\r\n values={EdaVectorType}\r\n translateValue\r\n translationPrefix={\"EdaVectorType_\"}\r\n />\r\n </Form.Item>\r\n </Col>\r\n <Col>\r\n <span>ID: {data.data.ID_VEKTOR}</span>\r\n </Col>\r\n </Row>\r\n <Row gutter={css.theme.padding}>\r\n <Col span={24}>\r\n <Form.Item\r\n required\r\n name={[\"data\", \"ANO_PLATNY\"]}\r\n valuePropName={\"checked\"}\r\n getValueProps={(v) => ({checked: v === 1})}\r\n getValueFromEvent={(e) => (e.target.checked ? 1 : 0)}\r\n >\r\n <Checkbox disabled>{i18n(\"Record Validity Indication\")}</Checkbox>\r\n </Form.Item>\r\n </Col>\r\n </Row>\r\n <Row gutter={css.theme.padding}>\r\n <Col span={24}>\r\n <Form.Item\r\n required\r\n name={[\"data\", \"MENO\"]}\r\n label={i18n(\"Code\")}\r\n >\r\n <Input readOnly />\r\n </Form.Item>\r\n </Col>\r\n </Row>\r\n <Row gutter={css.theme.padding}>\r\n <Col span={24}>\r\n <Form.Item\r\n required\r\n name={[\"data\", \"ZOBRAZ_MENO\"]}\r\n label={i18n(\"Name[Title]\")}\r\n >\r\n <Input readOnly />\r\n </Form.Item>\r\n </Col>\r\n </Row>\r\n <Row gutter={css.theme.padding}>\r\n <Col span={12}>\r\n <Form.Item\r\n required\r\n name={[\"data\", \"INTEGRAL\"]}\r\n label={i18n(\"Value Class\")}\r\n >\r\n <EnumValuePicker\r\n open={false}\r\n values={EdaValueClassType}\r\n translateValue\r\n translationPrefix={\"EdaValueClassType_\"}\r\n />\r\n </Form.Item>\r\n </Col>\r\n <Col span={12}>\r\n <Form.Item\r\n name={[\"data\", \"TECH_JEDNOTKY\"]}\r\n label={i18n(\"Units\")}\r\n >\r\n <Input readOnly style={{width: '100%'}} />\r\n </Form.Item>\r\n </Col>\r\n </Row>\r\n <Row gutter={css.theme.padding}>\r\n <Col span={24}>\r\n <Form.Item\r\n required\r\n label={i18n(\"Filter\")}\r\n name={[\"data\", \"MENOEX\"]}\r\n >\r\n <Input readOnly />\r\n </Form.Item>\r\n </Col>\r\n </Row>\r\n <Collapse\r\n size={size}\r\n items={this.getCollapseItems(css)}\r\n style={{marginTop: css.theme.paddingXS + \"px\"}}\r\n bordered={false}\r\n />\r\n </Form>\r\n }\r\n </WithCss>\r\n )\r\n }\r\n\r\n private getCollapseItems(css: any): ItemType[] {\r\n return [\r\n {\r\n key: \"rounding\",\r\n label: i18n(\"Rounding\"),\r\n children: (\r\n <>\r\n <Row gutter={css.theme.padding}>\r\n <Col span={16}>\r\n <Form.Item\r\n required\r\n label={i18n(\"View\")}\r\n name={[\"data\", \"VIEW_ROUND\"]}\r\n >\r\n <EnumValuePicker\r\n open={false}\r\n values={EdaRoundingType}\r\n translateValue\r\n translationPrefix={\"EdaRoundingType_\"}\r\n />\r\n </Form.Item>\r\n </Col>\r\n <Col span={8}>\r\n <Form.Item\r\n required\r\n label={i18n(\"Decimal Places\")}\r\n name={[\"data\", \"VIEW_DEC_PL\"]}\r\n >\r\n <InputNumber readOnly style={{width: \"100%\"}} />\r\n </Form.Item>\r\n </Col>\r\n </Row>\r\n <Row gutter={css.theme.padding}>\r\n <Col span={16}>\r\n <Form.Item\r\n required\r\n label={i18n(\"Calculation\")}\r\n name={[\"data\", \"EXEC_ROUND\"]}\r\n >\r\n <EnumValuePicker\r\n open={false}\r\n values={EdaRoundingType}\r\n translateValue\r\n translationPrefix={\"EdaRoundingType_\"}\r\n />\r\n </Form.Item>\r\n </Col>\r\n <Col span={8}>\r\n <Form.Item\r\n required\r\n label={i18n(\"Decimal Places\")}\r\n name={[\"data\", \"EXEC_DEC_PL\"]}\r\n >\r\n <InputNumber readOnly style={{width: \"100%\"}} />\r\n </Form.Item>\r\n </Col>\r\n </Row>\r\n </>\r\n ),\r\n },\r\n {\r\n key: \"time_values\",\r\n label: i18n(\"Time Values\"),\r\n children: (\r\n <>\r\n <Row gutter={css.theme.padding}>\r\n <Col span={12}>\r\n <Form.Item\r\n label={i18n(\"Creation Date\")}\r\n name={[\"extData\", \"DATE_IN\"]}\r\n getValueProps={(v) => ({value: v ? dayjs(v).format(this.mask) : undefined})}\r\n >\r\n <Input readOnly variant={\"borderless\"} style={{fontWeight: \"bold\", width: \"100%\"}}/>\r\n </Form.Item>\r\n </Col>\r\n <Col span={12}>\r\n <Form.Item\r\n label={i18n(\"Last Modified Date\")}\r\n name={[\"extData\", \"DATE_CH\"]}\r\n getValueProps={(v) => ({value: v ? dayjs(v).format(this.mask) : undefined})}\r\n >\r\n <Input readOnly variant={\"borderless\"} style={{fontWeight: \"bold\", width: \"100%\"}}/>\r\n </Form.Item>\r\n </Col>\r\n </Row>\r\n <Row gutter={css.theme.padding}>\r\n <Col span={12}>\r\n <Form.Item\r\n label={i18n(\"Validity From\")}\r\n name={[\"data\", \"DATA_OD\"]}\r\n getValueProps={(v) => ({value: v ? dayjs(v).format(this.mask) : undefined})}\r\n >\r\n <Input readOnly variant={\"borderless\"} style={{fontWeight: \"bold\", width: \"100%\"}} />\r\n </Form.Item>\r\n </Col>\r\n <Col span={12}>\r\n <Form.Item\r\n label={i18n(\"Validity To\")}\r\n name={[\"data\", \"DATA_DO\"]}\r\n getValueProps={(v) => ({value: v ? dayjs(v).format(this.mask) : undefined})}\r\n >\r\n <Input readOnly variant={\"borderless\"} style={{fontWeight: \"bold\", width: \"100%\"}} />\r\n </Form.Item>\r\n </Col>\r\n </Row>\r\n <Row gutter={css.theme.padding}>\r\n <Col span={12}>\r\n <Form.Item\r\n label={i18n(\"Pre-calc From\")}\r\n name={[\"dataFunction\", \"PREDV_OD\"]}\r\n getValueProps={(v) => ({value: v ? dayjs(v).format(this.mask) : undefined})}\r\n >\r\n <Input readOnly variant={\"borderless\"} style={{fontWeight: \"bold\", width: \"100%\"}}/>\r\n </Form.Item>\r\n </Col>\r\n <Col span={12}>\r\n <Form.Item\r\n label={i18n(\"Pre-calc To\")}\r\n name={[\"dataFunction\", \"PREDV_DO\"]}\r\n getValueProps={(v) => ({value: v ? dayjs(v).format(this.mask) : undefined})}\r\n >\r\n <Input readOnly variant={\"borderless\"} style={{fontWeight: \"bold\", width: \"100%\"}}/>\r\n </Form.Item>\r\n </Col>\r\n </Row>\r\n </>\r\n ),\r\n },\r\n {\r\n key: \"other_info\",\r\n label: i18n(\"Other Info\"),\r\n children: (\r\n <>\r\n <Row>\r\n <Col span={24}>\r\n <Form.Item\r\n label={i18n(\"Tablespace\")}\r\n name={[\"data\", \"ID_TABLESPACE\"]} //TODO\r\n >\r\n <Select open={false} />\r\n </Form.Item>\r\n </Col>\r\n </Row>\r\n <Row>\r\n <Col span={24}>\r\n <Form.Item\r\n label={i18n(\"Validation\")}\r\n name={[\"data\", \"ID_VALIDATOR\"]} //TODO\r\n >\r\n <EdaSelect open={false} />\r\n </Form.Item>\r\n </Col>\r\n </Row>\r\n <Row gutter={css.theme.padding}>\r\n <Col flex={\"auto\"}>\r\n <Form.Item\r\n label={i18n(\"Time Zone\")}\r\n name={[\"data\", \"TIME_ZONE\"]}\r\n >\r\n <Input readOnly />\r\n </Form.Item>\r\n </Col>\r\n <Col flex={\"none\"}>\r\n <Form.Item\r\n required\r\n label={i18n(\"Data Offset\")}\r\n name={[\"data\", \"DATA_OFFSET\"]}\r\n >\r\n <Input readOnly />\r\n </Form.Item>\r\n </Col>\r\n </Row>\r\n <Row gutter={css.theme.padding}>\r\n <Col flex={\"auto\"}>\r\n <Form.Item\r\n required\r\n label={i18n(\"Access Type\")}\r\n name={[\"data\", \"PRIVATE\"]}\r\n >\r\n <EnumValuePicker\r\n open={false}\r\n values={EdaAccessType}\r\n translateValue\r\n translationPrefix={\"EdaAccessType_\"}\r\n />\r\n </Form.Item>\r\n </Col>\r\n <Col flex={\"none\"}>\r\n <Form.Item\r\n label={i18n(\"Owner\")}\r\n name={[\"data\", \"AUTOR\"]}\r\n >\r\n <Input readOnly />\r\n </Form.Item>\r\n </Col>\r\n </Row>\r\n </>\r\n ),\r\n },\r\n {\r\n key: \"note\",\r\n label: i18n(\"Note\"),\r\n children: (\r\n <Form.Item\r\n name={[\"data\", \"POPIS\"]}\r\n >\r\n <Input.TextArea rows={4} readOnly />\r\n </Form.Item>\r\n )\r\n },\r\n {\r\n key: \"parameters\",\r\n label: i18n(\"Parameters\"),\r\n children: (\r\n <>\r\n <Typography.Title>TODO</Typography.Title>\r\n </>\r\n )\r\n },\r\n {\r\n key: \"versioning\",\r\n label: i18n(\"Versioning\"),\r\n children: (\r\n <>\r\n <Typography.Title>TODO</Typography.Title>\r\n </>\r\n )\r\n },\r\n ]\r\n }\r\n}"]}
1
+ {"version":3,"file":"edaVectorDetailPanel.js","sourceRoot":"","sources":["../../../../../../coreui/components/edaManagerComponent/components/edaVectorDetailPanel.tsx"],"names":[],"mappings":"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","sourcesContent":["import React from \"react\";\r\nimport {Button, Checkbox, Col, Collapse, Form, FormInstance, Input, InputNumber, Row, Select, Space, Typography} from \"antd\";\r\nimport WithCss from \"d2coreui/components/style/withCss\";\r\nimport i18n from \"d2core/i18n/i18n\";\r\nimport {createStyles} from \"antd-style\";\r\nimport {ItemType} from \"rc-collapse/lib/interface\"\r\nimport dayjs from \"d2core/dayjs\";\r\nimport {EdaAccessType, EdaRoundingType, EdaValueClassType, EdaVectorType, IdType, VectorData} from \"../constants/edaTypes\";\r\nimport EnumValuePicker from \"d2coreui/components/picker/enumValuePicker\";\r\nimport {EdaSelect} from \"../edaSelect\";\r\nimport {SizeType} from \"antd/lib/config-provider/SizeContext\";\r\nimport {LocaleHolder} from \"d2core/i18n/localeHolder\";\r\nimport {Variant} from \"antd/es/config-provider\";\r\nimport {FullscreenExitOutlined, FullscreenOutlined} from \"@ant-design/icons\";\r\nimport EdaManagerApi from \"../../../../api/eda/edaManagerApi\";\r\nimport {SD_EM_Tree_Item} from \"../../../../api/eda/generated/structures\";\r\n\r\nconst useStyles = createStyles(({css},) => {\r\n return {\r\n baseLayout: css`\r\n `\r\n }\r\n});\r\n\r\ninterface Props {\r\n api: EdaManagerApi\r\n data: VectorData\r\n\r\n size?: SizeType\r\n variant?: Variant\r\n}\r\n\r\ninterface State {\r\n expandedKeys: string[]\r\n validator?: SD_EM_Tree_Item\r\n}\r\n\r\nexport class EdaVectorDetailPanel extends React.Component<Props, State> {\r\n private mask = LocaleHolder.getDateTimeFormat(true, false, false, true);\r\n private readonly formRef = React.createRef<FormInstance<VectorData>>();\r\n\r\n constructor(props: Readonly<Props>) {\r\n super(props);\r\n this.state = {\r\n expandedKeys: [],\r\n }\r\n }\r\n\r\n async componentDidMount() {\r\n const {api, data} = this.props;\r\n\r\n if (data.data.ID_VALIDATOR) {\r\n const validator = await api.getVector(data.data.ID_VALIDATOR);\r\n this.setState({validator: validator.item[0] as SD_EM_Tree_Item})\r\n }\r\n\r\n this.formRef.current?.setFieldsValue(data);\r\n }\r\n\r\n async componentDidUpdate(prevProps: Readonly<Props>) {\r\n const {api, data} = this.props;\r\n\r\n if (prevProps.data !== data) {\r\n this.formRef.current?.resetFields();\r\n this.setState({validator: undefined});\r\n\r\n this.formRef.current?.setFieldsValue(data);\r\n\r\n if (data.data.ID_VALIDATOR) {\r\n const validator = await api.getVector(data.data.ID_VALIDATOR);\r\n this.setState({validator: validator.item[0] as SD_EM_Tree_Item})\r\n }\r\n }\r\n }\r\n\r\n render() {\r\n const {data, size, variant} = this.props;\r\n const {expandedKeys} = this.state;\r\n\r\n return (\r\n <WithCss useStyles={useStyles}>\r\n {(css) =>\r\n <Form<VectorData>\r\n ref={this.formRef}\r\n layout={\"horizontal\"}\r\n style={{overflowX: \"hidden\"}}\r\n className={\"record-config-form\"}\r\n size={size}\r\n variant={variant}\r\n labelCol={{sm: 24, md: 24, lg: 24, xl: 24, xxl: 24}}\r\n >\r\n <Row gutter={css.theme.padding} align={\"bottom\"}>\r\n <Col flex={\"auto\"}>\r\n <Form.Item label={i18n(\"Vector Type\")} name={[\"data\", \"TYP\"]} required>\r\n <EnumValuePicker\r\n open={false}\r\n style={{maxWidth: \"250px\"}}\r\n values={EdaVectorType}\r\n translateValue\r\n translationPrefix={\"EdaVectorType_\"}\r\n />\r\n </Form.Item>\r\n </Col>\r\n <Col>\r\n <span>ID: {data.data.ID_VEKTOR}</span>\r\n </Col>\r\n </Row>\r\n <Row gutter={css.theme.padding}>\r\n <Col span={24}>\r\n <Form.Item\r\n required\r\n name={[\"data\", \"ANO_PLATNY\"]}\r\n valuePropName={\"checked\"}\r\n getValueProps={(v) => ({checked: v === 1})}\r\n getValueFromEvent={(e) => (e.target.checked ? 1 : 0)}\r\n >\r\n <Checkbox disabled>{i18n(\"Record Validity Indication\")}</Checkbox>\r\n </Form.Item>\r\n </Col>\r\n </Row>\r\n <Row gutter={css.theme.padding}>\r\n <Col span={24}>\r\n <Form.Item\r\n required\r\n name={[\"data\", \"MENO\"]}\r\n label={i18n(\"Code\")}\r\n >\r\n <Input readOnly />\r\n </Form.Item>\r\n </Col>\r\n </Row>\r\n <Row gutter={css.theme.padding}>\r\n <Col span={24}>\r\n <Form.Item\r\n required\r\n name={[\"data\", \"ZOBRAZ_MENO\"]}\r\n label={i18n(\"Name[Title]\")}\r\n >\r\n <Input readOnly />\r\n </Form.Item>\r\n </Col>\r\n </Row>\r\n <Row gutter={css.theme.padding}>\r\n <Col span={12}>\r\n <Form.Item\r\n required\r\n name={[\"data\", \"INTEGRAL\"]}\r\n label={i18n(\"Value Class\")}\r\n >\r\n <EnumValuePicker\r\n open={false}\r\n values={EdaValueClassType}\r\n translateValue\r\n translationPrefix={\"EdaValueClassType_\"}\r\n />\r\n </Form.Item>\r\n </Col>\r\n <Col span={12}>\r\n <Form.Item\r\n name={[\"data\", \"TECH_JEDNOTKY\"]}\r\n label={i18n(\"Units\")}\r\n >\r\n <Input readOnly style={{width: '100%'}} />\r\n </Form.Item>\r\n </Col>\r\n </Row>\r\n <Row gutter={css.theme.padding}>\r\n <Col span={24}>\r\n <Form.Item\r\n required\r\n label={i18n(\"Filter\")}\r\n name={[\"data\", \"MENOEX\"]}\r\n >\r\n <Input readOnly />\r\n </Form.Item>\r\n </Col>\r\n </Row>\r\n <Collapse\r\n size={size}\r\n items={this.getCollapseItems(css)}\r\n style={{marginTop: css.theme.paddingXS + \"px\"}}\r\n onChange={(keys) => this.setState({expandedKeys: keys})}\r\n bordered={false}\r\n activeKey={expandedKeys}\r\n />\r\n </Form>\r\n }\r\n </WithCss>\r\n )\r\n }\r\n\r\n private getCollapseItems(css: any): ItemType[] {\r\n const {api, size} = this.props;\r\n const {validator} = this.state;\r\n\r\n return [\r\n {\r\n key: \"rounding\",\r\n label: i18n(\"Rounding\"),\r\n extra: (\r\n <Space.Compact size={size}>\r\n <Button\r\n icon={<FullscreenOutlined/>}\r\n title={i18n(\"Expand All\")}\r\n onClick={(e) => {\r\n this.setState({expandedKeys: [\"rounding\", \"time_values\", \"other_info\", \"note\", \"parameters\"]});\r\n e.stopPropagation();\r\n }}\r\n />\r\n <Button\r\n icon={<FullscreenExitOutlined/>}\r\n title={i18n(\"Collapse All\")}\r\n onClick={(e) => {\r\n this.setState({expandedKeys: []});\r\n e.stopPropagation();\r\n }}\r\n />\r\n </Space.Compact>\r\n ),\r\n children: (\r\n <>\r\n <Row gutter={css.theme.padding}>\r\n <Col span={16}>\r\n <Form.Item\r\n required\r\n label={i18n(\"View\")}\r\n name={[\"data\", \"VIEW_ROUND\"]}\r\n >\r\n <EnumValuePicker\r\n open={false}\r\n values={EdaRoundingType}\r\n translateValue\r\n translationPrefix={\"EdaRoundingType_\"}\r\n />\r\n </Form.Item>\r\n </Col>\r\n <Col span={8}>\r\n <Form.Item\r\n required\r\n label={i18n(\"Decimal Places\")}\r\n name={[\"data\", \"VIEW_DEC_PL\"]}\r\n >\r\n <InputNumber readOnly style={{width: \"100%\"}} />\r\n </Form.Item>\r\n </Col>\r\n </Row>\r\n <Row gutter={css.theme.padding}>\r\n <Col span={16}>\r\n <Form.Item\r\n required\r\n label={i18n(\"Calculation\")}\r\n name={[\"data\", \"EXEC_ROUND\"]}\r\n >\r\n <EnumValuePicker\r\n open={false}\r\n values={EdaRoundingType}\r\n translateValue\r\n translationPrefix={\"EdaRoundingType_\"}\r\n />\r\n </Form.Item>\r\n </Col>\r\n <Col span={8}>\r\n <Form.Item\r\n required\r\n label={i18n(\"Decimal Places\")}\r\n name={[\"data\", \"EXEC_DEC_PL\"]}\r\n >\r\n <InputNumber readOnly style={{width: \"100%\"}} />\r\n </Form.Item>\r\n </Col>\r\n </Row>\r\n </>\r\n ),\r\n },\r\n {\r\n key: \"time_values\",\r\n label: i18n(\"Time Values\"),\r\n children: (\r\n <>\r\n <Row gutter={css.theme.padding}>\r\n <Col span={12}>\r\n <Form.Item\r\n label={i18n(\"Creation Date\")}\r\n name={[\"extData\", \"DATE_IN\"]}\r\n getValueProps={(v) => ({value: v ? dayjs(v).format(this.mask) : undefined})}\r\n >\r\n <Input readOnly variant={\"borderless\"} style={{fontWeight: \"bold\", width: \"100%\"}}/>\r\n </Form.Item>\r\n </Col>\r\n <Col span={12}>\r\n <Form.Item\r\n label={i18n(\"Last Modified Date\")}\r\n name={[\"extData\", \"DATE_CH\"]}\r\n getValueProps={(v) => ({value: v ? dayjs(v).format(this.mask) : undefined})}\r\n >\r\n <Input readOnly variant={\"borderless\"} style={{fontWeight: \"bold\", width: \"100%\"}}/>\r\n </Form.Item>\r\n </Col>\r\n </Row>\r\n <Row gutter={css.theme.padding}>\r\n <Col span={12}>\r\n <Form.Item\r\n label={i18n(\"Validity From\")}\r\n name={[\"data\", \"DATA_OD\"]}\r\n getValueProps={(v) => ({value: v ? dayjs(v).format(this.mask) : undefined})}\r\n >\r\n <Input readOnly variant={\"borderless\"} style={{fontWeight: \"bold\", width: \"100%\"}} />\r\n </Form.Item>\r\n </Col>\r\n <Col span={12}>\r\n <Form.Item\r\n label={i18n(\"Validity To\")}\r\n name={[\"data\", \"DATA_DO\"]}\r\n getValueProps={(v) => ({value: v ? dayjs(v).format(this.mask) : undefined})}\r\n >\r\n <Input readOnly variant={\"borderless\"} style={{fontWeight: \"bold\", width: \"100%\"}} />\r\n </Form.Item>\r\n </Col>\r\n </Row>\r\n <Row gutter={css.theme.padding}>\r\n <Col span={12}>\r\n <Form.Item\r\n label={i18n(\"Pre-calc From\")}\r\n name={[\"dataFunction\", \"PREDV_OD\"]}\r\n getValueProps={(v) => ({value: v ? dayjs(v).format(this.mask) : undefined})}\r\n >\r\n <Input readOnly variant={\"borderless\"} style={{fontWeight: \"bold\", width: \"100%\"}}/>\r\n </Form.Item>\r\n </Col>\r\n <Col span={12}>\r\n <Form.Item\r\n label={i18n(\"Pre-calc To\")}\r\n name={[\"dataFunction\", \"PREDV_DO\"]}\r\n getValueProps={(v) => ({value: v ? dayjs(v).format(this.mask) : undefined})}\r\n >\r\n <Input readOnly variant={\"borderless\"} style={{fontWeight: \"bold\", width: \"100%\"}}/>\r\n </Form.Item>\r\n </Col>\r\n </Row>\r\n </>\r\n ),\r\n },\r\n {\r\n key: \"other_info\",\r\n label: i18n(\"Other Info\"),\r\n children: (\r\n <>\r\n <Row>\r\n <Col span={24}>\r\n <Form.Item\r\n label={i18n(\"Tablespace\")}\r\n name={[\"data\", \"ID_TABLESPACE\"]} //TODO\r\n >\r\n <Select open={false} />\r\n </Form.Item>\r\n </Col>\r\n </Row>\r\n <Row>\r\n <Col span={24}>\r\n <Form.Item\r\n label={i18n(\"Validation\")}\r\n name={[\"data\", \"ID_VALIDATOR\"]}\r\n getValueProps={(v) => ({value: v ? validator : undefined})}\r\n >\r\n <EdaSelect\r\n api={api}\r\n type={IdType.VECTOR}\r\n displayType={\"name_code\"}\r\n showDetailButton\r\n showCancelButton\r\n // open={false}\r\n />\r\n </Form.Item>\r\n </Col>\r\n </Row>\r\n <Row gutter={css.theme.padding}>\r\n <Col flex={\"auto\"}>\r\n <Form.Item\r\n label={i18n(\"Time Zone\")}\r\n name={[\"data\", \"TIME_ZONE\"]}\r\n >\r\n <Input readOnly />\r\n </Form.Item>\r\n </Col>\r\n <Col flex={\"none\"}>\r\n <Form.Item\r\n required\r\n label={i18n(\"Data Offset\")}\r\n name={[\"data\", \"DATA_OFFSET\"]}\r\n >\r\n <Input readOnly />\r\n </Form.Item>\r\n </Col>\r\n </Row>\r\n <Row gutter={css.theme.padding}>\r\n <Col flex={\"auto\"}>\r\n <Form.Item\r\n required\r\n label={i18n(\"Access Type\")}\r\n name={[\"data\", \"PRIVATE\"]}\r\n >\r\n <EnumValuePicker\r\n open={false}\r\n values={EdaAccessType}\r\n translateValue\r\n translationPrefix={\"EdaAccessType_\"}\r\n />\r\n </Form.Item>\r\n </Col>\r\n <Col flex={\"none\"}>\r\n <Form.Item\r\n label={i18n(\"Owner\")}\r\n name={[\"data\", \"AUTOR\"]}\r\n >\r\n <Input readOnly />\r\n </Form.Item>\r\n </Col>\r\n </Row>\r\n </>\r\n ),\r\n },\r\n {\r\n key: \"note\",\r\n label: i18n(\"Note\"),\r\n children: (\r\n <Form.Item\r\n name={[\"data\", \"POPIS\"]}\r\n >\r\n <Input.TextArea rows={4} readOnly />\r\n </Form.Item>\r\n )\r\n },\r\n {\r\n key: \"parameters\",\r\n label: i18n(\"Parameters\"),\r\n children: (\r\n <>\r\n <Typography.Title>TODO</Typography.Title>\r\n </>\r\n )\r\n },\r\n {\r\n key: \"versioning\",\r\n label: i18n(\"Versioning\"),\r\n children: (\r\n <>\r\n <Typography.Title>TODO</Typography.Title>\r\n </>\r\n )\r\n },\r\n ]\r\n }\r\n}"]}
@@ -0,0 +1,33 @@
1
+ import { VectorValuesData } from "../../../../api/eda/edaManagerApi";
2
+ import { SD_EM_Tree_Item } from "../../../../api/eda/generated/structures";
3
+ import { EdaSamplingType, GroupData, IdType, ScenarioData, VectorData } from "../constants/edaTypes";
4
+ import dayjs from "d2core/dayjs";
5
+ import { SharedSampleRange } from "./sharedSampleRange";
6
+ export interface VectorDataState {
7
+ data: VectorValuesData;
8
+ from: dayjs.Dayjs;
9
+ to: dayjs.Dayjs;
10
+ sampling: EdaSamplingType;
11
+ }
12
+ export interface EdaVectorDataState {
13
+ data: {
14
+ [id: number]: VectorDataState;
15
+ };
16
+ vectors: SD_EM_Tree_Item[];
17
+ visible: Set<number>;
18
+ initialized: boolean;
19
+ loadedType?: IdType;
20
+ loadedData?: VectorData | GroupData | ScenarioData;
21
+ loadedRange?: SharedSampleRange;
22
+ }
23
+ export interface EdaVectorDataContextValue extends EdaVectorDataState {
24
+ loadAllData: (type: IdType, data: VectorData | GroupData | ScenarioData) => void;
25
+ loadSpecificVectors: (vectors: SD_EM_Tree_Item[]) => void;
26
+ cancelLoading: () => void;
27
+ toggleVectorVisibility: (id: number, visible: boolean) => void;
28
+ setAllVectorVisibility: (visible: boolean) => void;
29
+ isVectorVisible: (id: number) => boolean;
30
+ allVectorsVisible: () => boolean;
31
+ noVectorsVisible: () => boolean;
32
+ }
33
+ export declare const EdaVectorDataContext: import("react").Context<EdaVectorDataContextValue | undefined>;