d2aura 26.0.17 → 26.0.18

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 (37) hide show
  1. package/api/eda/edaManagerApi.d.ts +5 -3
  2. package/api/eda/edaManagerApi.js +36 -2
  3. package/api/eda/edaManagerApi.js.map +1 -1
  4. package/api/eda/generated/events.d.ts +63 -61
  5. package/api/eda/generated/events.js +143 -141
  6. package/api/eda/generated/events.js.map +1 -1
  7. package/api/eda/generated/structures.d.ts +35 -6
  8. package/api/eda/generated/structures.js.map +1 -1
  9. package/api/webAuthn/webAuthnManageApi.js +2 -2
  10. package/api/webAuthn/webAuthnManageApi.js.map +1 -1
  11. package/core/i18n/d2aura.sk.json +4 -0
  12. package/coreui/components/edaManagerComponent/constants/edaTypes.d.ts +2 -1
  13. package/coreui/components/edaManagerComponent/constants/edaTypes.js.map +1 -1
  14. package/coreui/components/edaManagerComponent/context/edaVectorDataContext.d.ts +4 -1
  15. package/coreui/components/edaManagerComponent/context/edaVectorDataContext.js.map +1 -1
  16. package/coreui/components/edaManagerComponent/context/edaVectorDataProvider.js +57 -46
  17. package/coreui/components/edaManagerComponent/context/edaVectorDataProvider.js.map +1 -1
  18. package/coreui/components/edaManagerComponent/dialogs/exportDialog.js +2 -2
  19. package/coreui/components/edaManagerComponent/dialogs/exportDialog.js.map +1 -1
  20. package/coreui/components/edaManagerComponent/dialogs/importDialog.js +55 -4
  21. package/coreui/components/edaManagerComponent/dialogs/importDialog.js.map +1 -1
  22. package/coreui/components/edaManagerComponent/dialogs/importExport/import.d.ts +7 -0
  23. package/coreui/components/edaManagerComponent/dialogs/importExport/import.js.map +1 -1
  24. package/coreui/components/edaManagerComponent/dialogs/importExport/vectorTypeSelection.d.ts +8 -1
  25. package/coreui/components/edaManagerComponent/dialogs/importExport/vectorTypeSelection.js +10 -4
  26. package/coreui/components/edaManagerComponent/dialogs/importExport/vectorTypeSelection.js.map +1 -1
  27. package/coreui/components/edaManagerComponent/edaDetail.d.ts +2 -3
  28. package/coreui/components/edaManagerComponent/edaDetail.js.map +1 -1
  29. package/coreui/components/edaManagerComponent/utils/utils.d.ts +1 -2
  30. package/coreui/components/edaManagerComponent/utils/utils.js.map +1 -1
  31. package/d2configuration/edaManager/E.EM_DETAIL_IMPL.xml +4 -0
  32. package/d2configuration/edaManager/E.EM_DETAIL_UNIT.xml +34 -0
  33. package/d2configuration/edaManager/E.EM_NAVIGATOR_SQL.xml +5 -5
  34. package/d2configuration/edaManager/E.EM_VECTOR_IMPL.xml +18 -2
  35. package/d2configuration/edaManager/E.EM_VECTOR_UNIT.xml +377 -16
  36. package/d2configuration/edaManager/SD.EM_Tree_Item.xml +22 -0
  37. package/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"edaDetail.js","sourceRoot":"","sources":["../../../../../coreui/components/edaManagerComponent/edaDetail.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, {FC, useCallback, useEffect, useMemo, useState} from \"react\";\r\nimport {createStyles} from \"antd-style\";\r\nimport {EdaSamplingType, IdType, StepType, TypedData, TypedIndex} from \"./constants/edaTypes\";\r\nimport EdaManagerApi, {TreeItem} from \"../../../api/eda/edaManagerApi\";\r\nimport {SizeType} from \"antd/lib/config-provider/SizeContext\";\r\nimport {Variant} from \"antd/es/config-provider\";\r\nimport {SharedSampleRangeContext, SharedSampleRangeState} from \"./context/sharedSampleRangeContext\";\r\nimport dayjs from \"d2core/dayjs\";\r\nimport {loadDetail, loadPreference, savePreference, stepToDayJsType} from \"./utils/utils\";\r\nimport {StorageTypes} from \"./constants/storageTypes\";\r\nimport {getRange} from \"./components/edaTimeWindowPickerPanel\";\r\nimport i18n from \"d2core/i18n/i18n\";\r\nimport {EdaDetailPanel} from \"./components/edaDetailPanel\";\r\nimport {EdaTablePanel} from \"./components/edaTablePanel\";\r\nimport {EdaVectorDataProvider} from \"./context/edaVectorDataProvider\";\r\nimport {Button, ConfigProvider, Space, Tabs} from \"antd\";\r\nimport {EdaConfiguration} from \"./context/edaConfigContext\";\r\nimport {EdaGraphPanel} from \"./components/edaGraphPanel\";\r\nimport {AppstoreAddOutlined, ExportOutlined, FileAddOutlined, FolderAddOutlined, FullscreenExitOutlined, FullscreenOutlined, ImportOutlined} from \"@ant-design/icons\";\r\nimport {createPortal} from \"react-dom\";\r\nimport {ModalDialog, ModalDialogMode} from \"d2coreui/components/modal/modalDialog\";\r\nimport {useEdaActions} from \"./context/useEdaActions\";\r\nimport {LoadingContextProvider} from \"./context/loadingContext\";\r\n\r\nconst useStyles = createStyles(({css},) => {\r\n return {\r\n baseLayout: css`\r\n height: 100%;\r\n overflow: hidden;\r\n\r\n .ant-tabs-content {\r\n height: 100%;\r\n }\r\n `,\r\n fullscreenLayout: css`\r\n .ant-design-draggable-modal-title {\r\n display: none;\r\n }\r\n `\r\n }\r\n});\r\n\r\nexport type ItemType = TreeItem[] | TypedIndex\r\n\r\ninterface Props {\r\n api: EdaManagerApi\r\n item?: ItemType\r\n className?: string\r\n style?: React.CSSProperties\r\n\r\n size?: SizeType\r\n variant?: Variant\r\n\r\n // Eda detail configuration\r\n configuration?: EdaConfiguration\r\n}\r\n\r\nexport const EdaDetail: FC<Props> = ({api, item, className, style, size, variant}) => {\r\n const {styles} = useStyles();\r\n const {triggerExportToXML, triggerImportToXML, triggerIncludeToScenario, triggerIncludeToGroup, renderActionDialogs} = useEdaActions(api);\r\n\r\n const [activeTabKey, setActiveTabKey] = useState<string>(\"detail\");\r\n const [detailData, setDetailData] = useState<TypedData>();\r\n\r\n const [isFullscreen, setIsFullscreen] = useState<boolean>(false);\r\n const [portalTarget, setPortalTarget] = useState<HTMLDivElement | null>(null);\r\n\r\n const [sampleRange, setSampleRange] = useState<SharedSampleRangeState>(() => {\r\n const btTotal = dayjs(loadPreference(StorageTypes.EDA_DETAIL_BT, dayjs().startOf('day').toISOString()));\r\n const etTotal = dayjs(loadPreference(StorageTypes.EDA_DETAIL_ET, dayjs().endOf('day').toISOString()));\r\n const step = loadPreference(StorageTypes.EDA_DETAIL_STEP, StepType.Daily);\r\n const {bt, et} = getRange(btTotal, etTotal, step);\r\n\r\n return {\r\n btTotal,\r\n etTotal,\r\n btWindow: bt,\r\n etWindow: et,\r\n sampling: EdaSamplingType.Default,\r\n step,\r\n vectorPage: 1,\r\n totalCount: 0,\r\n }\r\n });\r\n\r\n const updateValues = useCallback((bt: dayjs.Dayjs, et: dayjs.Dayjs, sampling: EdaSamplingType) => {\r\n setSampleRange((s) => {\r\n let {btWindow, etWindow} = s;\r\n const unit = stepToDayJsType(s.step);\r\n\r\n if (unit) {\r\n if (s.btWindow.isBefore(bt)) {\r\n btWindow = bt;\r\n etWindow = bt.endOf(unit);\r\n }\r\n\r\n if (s.etWindow.isAfter(et)) {\r\n btWindow = et.startOf(unit);\r\n etWindow = et;\r\n }\r\n } else {\r\n btWindow = bt;\r\n etWindow = et;\r\n }\r\n\r\n return {...s, btTotal: bt, etTotal: et, btWindow, etWindow, sampling}\r\n });\r\n }, []);\r\n const updatePage = useCallback((page: number) => {\r\n setSampleRange((s) => ({...s, vectorPage: page, vectors: undefined}));\r\n }, []);\r\n const updateVectors = useCallback((vectors: TreeItem[]) => {\r\n setSampleRange((s) => ({...s, vectorPage: 1, vectors: vectors}));\r\n }, []);\r\n const updateTimeWindow = useCallback((bt: dayjs.Dayjs, et: dayjs.Dayjs, step: StepType) => {\r\n setSampleRange((s) => ({...s, btWindow: bt, etWindow: et, step}));\r\n }, []);\r\n const updateTotalCount = useCallback((totalCount: number) => {\r\n setSampleRange((s) => ({...s, totalCount}));\r\n }, []);\r\n const contextValue: SharedSampleRangeContext = useMemo(() => ({\r\n ...sampleRange,\r\n updateValues,\r\n updatePage,\r\n updateVectors,\r\n updateTimeWindow,\r\n updateTotalCount,\r\n }), [sampleRange, updateValues, updatePage, updateVectors, updateTimeWindow, updateTotalCount]);\r\n\r\n const handleToggleFullscreen = useCallback(() => {\r\n setIsFullscreen(!isFullscreen);\r\n\r\n if (isFullscreen) {\r\n setPortalTarget(null);\r\n }\r\n }, [isFullscreen]);\r\n\r\n const tabItems = useMemo(() => [\r\n {\r\n key: \"detail\",\r\n label: i18n(\"Detail\"),\r\n children: (\r\n <EdaDetailPanel\r\n api={api}\r\n data={detailData}\r\n />\r\n ),\r\n },\r\n {\r\n key: \"table\",\r\n label: i18n(\"Table\"),\r\n children: (\r\n <EdaTablePanel\r\n api={api}\r\n data={detailData}\r\n isActive={activeTabKey === \"table\"}\r\n />\r\n ),\r\n },\r\n {\r\n key: \"graph\",\r\n label: i18n(\"Graph\"),\r\n children: (\r\n <EdaGraphPanel\r\n api={api}\r\n data={detailData}\r\n isActive={activeTabKey === \"graph\"}\r\n />\r\n ),\r\n },\r\n ], [api, detailData, activeTabKey]);\r\n\r\n const renderTabs = (\r\n <div style={{position: 'relative', height: '100%', width: '100%', display: 'flex', flexDirection: 'column'}}>\r\n <Tabs\r\n type={\"card\"}\r\n className={styles.baseLayout}\r\n onChange={setActiveTabKey}\r\n activeKey={activeTabKey}\r\n destroyOnHidden={false}\r\n items={tabItems}\r\n tabBarExtraContent={{\r\n right: (\r\n <Space.Compact>\r\n {detailData !== undefined && (\r\n <>\r\n {!Array.isArray(item) && item && (\r\n <Button\r\n icon={<ExportOutlined/>}\r\n onClick={() => triggerExportToXML(detailData)}\r\n title={i18n(\"Export\")}\r\n />\r\n )}\r\n {!Array.isArray(item) && item && item.type === IdType.VECTOR && (\r\n <>\r\n <Button\r\n icon={<AppstoreAddOutlined/>}\r\n onClick={() => triggerIncludeToGroup(item)}\r\n title={i18n(\"Include vector to group\")}\r\n />\r\n <Button\r\n icon={<FolderAddOutlined/>}\r\n onClick={() => triggerIncludeToScenario(item)}\r\n title={i18n(\"Include vector to scenario\")}\r\n />\r\n </>\r\n )}\r\n {!Array.isArray(item) && item && item.type === IdType.GROUP && (\r\n <>\r\n <Button\r\n icon={<ImportOutlined/>}\r\n onClick={() => triggerImportToXML(detailData)}\r\n title={i18n(\"Import\")}\r\n />\r\n <Button\r\n icon={<FileAddOutlined/>}\r\n onClick={() => triggerIncludeToGroup(item)}\r\n title={i18n(\"Include vector to group\")}\r\n />\r\n </>\r\n )}\r\n {!Array.isArray(item) && item && item.type === IdType.SCENARIO && (\r\n <Button\r\n icon={<FileAddOutlined/>}\r\n onClick={() => triggerIncludeToScenario(item)}\r\n title={i18n(\"Include vector to scenario\")}\r\n />\r\n )}\r\n </>\r\n )}\r\n <Button\r\n disabled={item === undefined}\r\n icon={isFullscreen ? <FullscreenExitOutlined/> : <FullscreenOutlined/>}\r\n onClick={handleToggleFullscreen}\r\n title={i18n(isFullscreen ? \"Restore\" : \"Fullscreen\")}\r\n />\r\n </Space.Compact>\r\n ),\r\n }}\r\n />\r\n </div>\r\n );\r\n\r\n useEffect(() => {\r\n let isMounted = true;\r\n\r\n if (item) {\r\n loadDetail(api, item).then((result) => {\r\n if (isMounted && result) {\r\n setDetailData(result);\r\n }\r\n });\r\n }\r\n\r\n return () => {\r\n isMounted = false;\r\n }\r\n }, [api, item]);\r\n\r\n useEffect(() => {\r\n savePreference(StorageTypes.EDA_DETAIL_BT, sampleRange.btTotal.toISOString());\r\n savePreference(StorageTypes.EDA_DETAIL_ET, sampleRange.etTotal.toISOString());\r\n savePreference(StorageTypes.EDA_DETAIL_STEP, sampleRange.step);\r\n }, [sampleRange.btTotal, sampleRange.etTotal, sampleRange.step]);\r\n\r\n return (\r\n <ConfigProvider componentSize={size} variant={variant}>\r\n <div className={className} style={style}>\r\n <SharedSampleRangeContext.Provider value={contextValue}>\r\n <LoadingContextProvider>\r\n <EdaVectorDataProvider api={api}>\r\n {isFullscreen && portalTarget ? createPortal(renderTabs, portalTarget) : renderTabs}\r\n <ModalDialog\r\n classNames={{header: styles.fullscreenLayout}}\r\n open={isFullscreen}\r\n onCancel={handleToggleFullscreen}\r\n footer={null}\r\n closable={false}\r\n initialWidth={window.innerWidth * 0.9}\r\n initialHeight={window.innerHeight * 0.9}\r\n destroyOnHidden={false}\r\n mode={ModalDialogMode.NO_BUTTONS}\r\n styles={{\r\n header: {\r\n padding: 0,\r\n margin: 0\r\n },\r\n }}\r\n >\r\n <div\r\n style={{width: '100%', height: '100%'}}\r\n ref={(el) => {\r\n if (el && !portalTarget) {\r\n setPortalTarget(el);\r\n }\r\n }}\r\n />\r\n </ModalDialog>\r\n {renderActionDialogs()}\r\n </EdaVectorDataProvider>\r\n </LoadingContextProvider>\r\n </SharedSampleRangeContext.Provider>\r\n </div>\r\n </ConfigProvider>\r\n );\r\n}"]}
1
+ {"version":3,"file":"edaDetail.js","sourceRoot":"","sources":["../../../../../coreui/components/edaManagerComponent/edaDetail.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, {FC, useCallback, useEffect, useMemo, useState} from \"react\";\r\nimport {createStyles} from \"antd-style\";\r\nimport {EdaSamplingType, IdType, ItemType, StepType, TypedData} from \"./constants/edaTypes\";\r\nimport EdaManagerApi, {TreeItem} from \"../../../api/eda/edaManagerApi\";\r\nimport {SizeType} from \"antd/lib/config-provider/SizeContext\";\r\nimport {Variant} from \"antd/es/config-provider\";\r\nimport {SharedSampleRangeContext, SharedSampleRangeState} from \"./context/sharedSampleRangeContext\";\r\nimport dayjs from \"d2core/dayjs\";\r\nimport {loadDetail, loadPreference, savePreference, stepToDayJsType} from \"./utils/utils\";\r\nimport {StorageTypes} from \"./constants/storageTypes\";\r\nimport {getRange} from \"./components/edaTimeWindowPickerPanel\";\r\nimport i18n from \"d2core/i18n/i18n\";\r\nimport {EdaDetailPanel} from \"./components/edaDetailPanel\";\r\nimport {EdaTablePanel} from \"./components/edaTablePanel\";\r\nimport {EdaVectorDataProvider} from \"./context/edaVectorDataProvider\";\r\nimport {Button, ConfigProvider, Space, Tabs} from \"antd\";\r\nimport {EdaConfiguration} from \"./context/edaConfigContext\";\r\nimport {EdaGraphPanel} from \"./components/edaGraphPanel\";\r\nimport {AppstoreAddOutlined, ExportOutlined, FileAddOutlined, FolderAddOutlined, FullscreenExitOutlined, FullscreenOutlined, ImportOutlined} from \"@ant-design/icons\";\r\nimport {createPortal} from \"react-dom\";\r\nimport {ModalDialog, ModalDialogMode} from \"d2coreui/components/modal/modalDialog\";\r\nimport {useEdaActions} from \"./context/useEdaActions\";\r\nimport {LoadingContextProvider} from \"./context/loadingContext\";\r\n\r\nconst useStyles = createStyles(({css},) => {\r\n return {\r\n baseLayout: css`\r\n height: 100%;\r\n overflow: hidden;\r\n\r\n .ant-tabs-content {\r\n height: 100%;\r\n }\r\n `,\r\n fullscreenLayout: css`\r\n .ant-design-draggable-modal-title {\r\n display: none;\r\n }\r\n `\r\n }\r\n});\r\n\r\ninterface Props {\r\n api: EdaManagerApi\r\n item?: ItemType\r\n className?: string\r\n style?: React.CSSProperties\r\n\r\n size?: SizeType\r\n variant?: Variant\r\n\r\n // Eda detail configuration\r\n configuration?: EdaConfiguration\r\n}\r\n\r\nexport const EdaDetail: FC<Props> = ({api, item, className, style, size, variant}) => {\r\n const {styles} = useStyles();\r\n const {triggerExportToXML, triggerImportToXML, triggerIncludeToScenario, triggerIncludeToGroup, renderActionDialogs} = useEdaActions(api);\r\n\r\n const [activeTabKey, setActiveTabKey] = useState<string>(\"detail\");\r\n const [detailData, setDetailData] = useState<TypedData>();\r\n\r\n const [isFullscreen, setIsFullscreen] = useState<boolean>(false);\r\n const [portalTarget, setPortalTarget] = useState<HTMLDivElement | null>(null);\r\n\r\n const [sampleRange, setSampleRange] = useState<SharedSampleRangeState>(() => {\r\n const btTotal = dayjs(loadPreference(StorageTypes.EDA_DETAIL_BT, dayjs().startOf('day').toISOString()));\r\n const etTotal = dayjs(loadPreference(StorageTypes.EDA_DETAIL_ET, dayjs().endOf('day').toISOString()));\r\n const step = loadPreference(StorageTypes.EDA_DETAIL_STEP, StepType.Daily);\r\n const {bt, et} = getRange(btTotal, etTotal, step);\r\n\r\n return {\r\n btTotal,\r\n etTotal,\r\n btWindow: bt,\r\n etWindow: et,\r\n sampling: EdaSamplingType.Default,\r\n step,\r\n vectorPage: 1,\r\n totalCount: 0,\r\n }\r\n });\r\n\r\n const updateValues = useCallback((bt: dayjs.Dayjs, et: dayjs.Dayjs, sampling: EdaSamplingType) => {\r\n setSampleRange((s) => {\r\n let {btWindow, etWindow} = s;\r\n const unit = stepToDayJsType(s.step);\r\n\r\n if (unit) {\r\n if (s.btWindow.isBefore(bt)) {\r\n btWindow = bt;\r\n etWindow = bt.endOf(unit);\r\n }\r\n\r\n if (s.etWindow.isAfter(et)) {\r\n btWindow = et.startOf(unit);\r\n etWindow = et;\r\n }\r\n } else {\r\n btWindow = bt;\r\n etWindow = et;\r\n }\r\n\r\n return {...s, btTotal: bt, etTotal: et, btWindow, etWindow, sampling}\r\n });\r\n }, []);\r\n const updatePage = useCallback((page: number) => {\r\n setSampleRange((s) => ({...s, vectorPage: page, vectors: undefined}));\r\n }, []);\r\n const updateVectors = useCallback((vectors: TreeItem[]) => {\r\n setSampleRange((s) => ({...s, vectorPage: 1, vectors: vectors}));\r\n }, []);\r\n const updateTimeWindow = useCallback((bt: dayjs.Dayjs, et: dayjs.Dayjs, step: StepType) => {\r\n setSampleRange((s) => ({...s, btWindow: bt, etWindow: et, step}));\r\n }, []);\r\n const updateTotalCount = useCallback((totalCount: number) => {\r\n setSampleRange((s) => ({...s, totalCount}));\r\n }, []);\r\n const contextValue: SharedSampleRangeContext = useMemo(() => ({\r\n ...sampleRange,\r\n updateValues,\r\n updatePage,\r\n updateVectors,\r\n updateTimeWindow,\r\n updateTotalCount,\r\n }), [sampleRange, updateValues, updatePage, updateVectors, updateTimeWindow, updateTotalCount]);\r\n\r\n const handleToggleFullscreen = useCallback(() => {\r\n setIsFullscreen(!isFullscreen);\r\n\r\n if (isFullscreen) {\r\n setPortalTarget(null);\r\n }\r\n }, [isFullscreen]);\r\n\r\n const tabItems = useMemo(() => [\r\n {\r\n key: \"detail\",\r\n label: i18n(\"Detail\"),\r\n children: (\r\n <EdaDetailPanel\r\n api={api}\r\n data={detailData}\r\n />\r\n ),\r\n },\r\n {\r\n key: \"table\",\r\n label: i18n(\"Table\"),\r\n children: (\r\n <EdaTablePanel\r\n api={api}\r\n data={detailData}\r\n isActive={activeTabKey === \"table\"}\r\n />\r\n ),\r\n },\r\n {\r\n key: \"graph\",\r\n label: i18n(\"Graph\"),\r\n children: (\r\n <EdaGraphPanel\r\n api={api}\r\n data={detailData}\r\n isActive={activeTabKey === \"graph\"}\r\n />\r\n ),\r\n },\r\n ], [api, detailData, activeTabKey]);\r\n\r\n const renderTabs = (\r\n <div style={{position: 'relative', height: '100%', width: '100%', display: 'flex', flexDirection: 'column'}}>\r\n <Tabs\r\n type={\"card\"}\r\n className={styles.baseLayout}\r\n onChange={setActiveTabKey}\r\n activeKey={activeTabKey}\r\n destroyOnHidden={false}\r\n items={tabItems}\r\n tabBarExtraContent={{\r\n right: (\r\n <Space.Compact>\r\n {detailData !== undefined && (\r\n <>\r\n {!Array.isArray(item) && item && (\r\n <Button\r\n icon={<ExportOutlined/>}\r\n onClick={() => triggerExportToXML(detailData)}\r\n title={i18n(\"Export\")}\r\n />\r\n )}\r\n {!Array.isArray(item) && item && item.type === IdType.VECTOR && (\r\n <>\r\n <Button\r\n icon={<AppstoreAddOutlined/>}\r\n onClick={() => triggerIncludeToGroup(item)}\r\n title={i18n(\"Include vector to group\")}\r\n />\r\n <Button\r\n icon={<FolderAddOutlined/>}\r\n onClick={() => triggerIncludeToScenario(item)}\r\n title={i18n(\"Include vector to scenario\")}\r\n />\r\n </>\r\n )}\r\n {!Array.isArray(item) && item && item.type === IdType.GROUP && (\r\n <>\r\n <Button\r\n icon={<ImportOutlined/>}\r\n onClick={() => triggerImportToXML(detailData)}\r\n title={i18n(\"Import\")}\r\n />\r\n <Button\r\n icon={<FileAddOutlined/>}\r\n onClick={() => triggerIncludeToGroup(item)}\r\n title={i18n(\"Include vector to group\")}\r\n />\r\n </>\r\n )}\r\n {!Array.isArray(item) && item && item.type === IdType.SCENARIO && (\r\n <Button\r\n icon={<FileAddOutlined/>}\r\n onClick={() => triggerIncludeToScenario(item)}\r\n title={i18n(\"Include vector to scenario\")}\r\n />\r\n )}\r\n </>\r\n )}\r\n <Button\r\n disabled={item === undefined}\r\n icon={isFullscreen ? <FullscreenExitOutlined/> : <FullscreenOutlined/>}\r\n onClick={handleToggleFullscreen}\r\n title={i18n(isFullscreen ? \"Restore\" : \"Fullscreen\")}\r\n />\r\n </Space.Compact>\r\n ),\r\n }}\r\n />\r\n </div>\r\n );\r\n\r\n useEffect(() => {\r\n let isMounted = true;\r\n\r\n if (item) {\r\n loadDetail(api, item).then((result) => {\r\n if (isMounted && result) {\r\n setDetailData(result);\r\n }\r\n });\r\n }\r\n\r\n return () => {\r\n isMounted = false;\r\n }\r\n }, [api, item]);\r\n\r\n useEffect(() => {\r\n savePreference(StorageTypes.EDA_DETAIL_BT, sampleRange.btTotal.toISOString());\r\n savePreference(StorageTypes.EDA_DETAIL_ET, sampleRange.etTotal.toISOString());\r\n savePreference(StorageTypes.EDA_DETAIL_STEP, sampleRange.step);\r\n }, [sampleRange.btTotal, sampleRange.etTotal, sampleRange.step]);\r\n\r\n return (\r\n <ConfigProvider componentSize={size} variant={variant}>\r\n <div className={className} style={style}>\r\n <SharedSampleRangeContext.Provider value={contextValue}>\r\n <LoadingContextProvider>\r\n <EdaVectorDataProvider api={api}>\r\n {isFullscreen && portalTarget ? createPortal(renderTabs, portalTarget) : renderTabs}\r\n <ModalDialog\r\n classNames={{header: styles.fullscreenLayout}}\r\n open={isFullscreen}\r\n onCancel={handleToggleFullscreen}\r\n footer={null}\r\n closable={false}\r\n initialWidth={window.innerWidth * 0.9}\r\n initialHeight={window.innerHeight * 0.9}\r\n destroyOnHidden={false}\r\n mode={ModalDialogMode.NO_BUTTONS}\r\n styles={{\r\n header: {\r\n padding: 0,\r\n margin: 0\r\n },\r\n }}\r\n >\r\n <div\r\n style={{width: '100%', height: '100%'}}\r\n ref={(el) => {\r\n if (el && !portalTarget) {\r\n setPortalTarget(el);\r\n }\r\n }}\r\n />\r\n </ModalDialog>\r\n {renderActionDialogs()}\r\n </EdaVectorDataProvider>\r\n </LoadingContextProvider>\r\n </SharedSampleRangeContext.Provider>\r\n </div>\r\n </ConfigProvider>\r\n );\r\n}"]}
@@ -1,8 +1,7 @@
1
- import { EdaRoundingType, EdaVectorType, StepType, TypedData } from "../constants/edaTypes";
1
+ import { EdaRoundingType, EdaVectorType, ItemType, StepType, TypedData } from "../constants/edaTypes";
2
2
  import EdaManagerApi from "../../../../api/eda/edaManagerApi";
3
3
  import { OpUnitType } from "dayjs";
4
4
  import { SharedSampleRangeState } from "../context/sharedSampleRangeContext";
5
- import { ItemType } from "../edaDetail";
6
5
  import React from "react";
7
6
  export declare function savePreference(key: string, value: any): void;
8
7
  export declare function loadPreference<T>(key: string, defaultValue: T): T;
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../../../coreui/components/edaManagerComponent/utils/utils.tsx"],"names":[],"mappings":"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","sourcesContent":["import {EdaRoundingType, EdaVectorType, IdType, StepType, TypedData} from \"../constants/edaTypes\";\r\nimport {LocaleHolder} from \"d2core/i18n/localeHolder\";\r\nimport EdaManagerApi from \"../../../../api/eda/edaManagerApi\";\r\nimport {OpUnitType} from \"dayjs\";\r\nimport {SharedSampleRangeState} from \"../context/sharedSampleRangeContext\";\r\nimport {ItemType} from \"../edaDetail\";\r\nimport React from \"react\";\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 {FunctionOutlined, QuestionOutlined} from \"@ant-design/icons\";\r\n\r\nexport function savePreference(key: string, value: any) {\r\n localStorage.setItem(key, JSON.stringify(value));\r\n}\r\n\r\nexport function loadPreference<T>(key: string, defaultValue: T): T {\r\n const stored = localStorage.getItem(key);\r\n\r\n return stored !== null ? JSON.parse(stored) : defaultValue;\r\n}\r\n\r\nconst TOTAL_DEC_PLACES = 7 //FIXME configurable\r\n\r\nexport function formatValue(value: number | null | undefined, roundType: EdaRoundingType, decPlaces: number): string {\r\n if (value === undefined || value === null) {\r\n return '';\r\n }\r\n\r\n const multiplier = Math.pow(10, decPlaces);\r\n\r\n switch (roundType) {\r\n case EdaRoundingType.NoRounding:\r\n return LocaleHolder.formatNumber(value, TOTAL_DEC_PLACES);\r\n case EdaRoundingType.RoundToNearest:\r\n return LocaleHolder.formatNumber(value, decPlaces);\r\n case EdaRoundingType.Floor:\r\n return LocaleHolder.formatNumber(Math.floor(value * multiplier) / multiplier, TOTAL_DEC_PLACES);\r\n case EdaRoundingType.Ceiling:\r\n return LocaleHolder.formatNumber(Math.ceil(value * multiplier) / multiplier, TOTAL_DEC_PLACES);\r\n }\r\n}\r\n\r\nexport async function loadDetail(api: EdaManagerApi, item: ItemType): Promise<TypedData | undefined> {\r\n if (Array.isArray(item)) {\r\n return {type: IdType.SET, data: item};\r\n }\r\n\r\n let dataItem: TypedData | undefined = undefined;\r\n\r\n switch (item.type) {\r\n case IdType.VECTOR: {\r\n const vectorData = await api.loadVectorData(item.id);\r\n\r\n if (vectorData) {\r\n dataItem = {type: item.type, data: vectorData};\r\n }\r\n break;\r\n }\r\n case IdType.GROUP: {\r\n const groupData = await api.loadGroupData(item.id);\r\n\r\n if (groupData) {\r\n dataItem = {type: item.type, data: groupData};\r\n }\r\n break;\r\n }\r\n case IdType.SCENARIO: {\r\n const scenarioData = await api.loadScenarioData(item.id);\r\n\r\n if (scenarioData) {\r\n dataItem = {type: item.type, data: scenarioData};\r\n }\r\n break;\r\n }\r\n case IdType.SET: {\r\n\r\n }\r\n }\r\n\r\n return dataItem;\r\n}\r\n\r\nexport function 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 isSame(a: SharedSampleRangeState, b: SharedSampleRangeState) {\r\n return a.step === b.step &&\r\n a.sampling === b.sampling &&\r\n a.vectorPage === b.vectorPage &&\r\n a.btWindow.isSame(b.btWindow) &&\r\n a.etWindow.isSame(b.etWindow) &&\r\n a.btTotal.isSame(b.btTotal) &&\r\n a.etTotal.isSame(b.etTotal);\r\n}\r\n\r\nexport async function awaitNextRenderFrame() {\r\n await new Promise<void>((resolve) => {\r\n requestAnimationFrame(() => {\r\n setTimeout(resolve, 0);\r\n });\r\n });\r\n}\r\n\r\nexport function getVectorIcon(type: EdaVectorType) {\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}"]}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../../../coreui/components/edaManagerComponent/utils/utils.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAC,eAAe,EAAE,aAAa,EAAoB,QAAQ,EAAY,MAAM,uBAAuB,CAAC;AAC5G,OAAO,EAAC,YAAY,EAAC,MAAM,0BAA0B,CAAC;AAItD,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAC,mBAAmB,EAAC,MAAM,8BAA8B,CAAC;AACjE,OAAO,EAAC,aAAa,EAAC,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAC,aAAa,EAAC,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAC,aAAa,EAAC,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAC,aAAa,EAAC,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAC,YAAY,EAAC,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAC,gBAAgB,EAAC,MAAM,2BAA2B,CAAC;AAC3D,OAAO,EAAC,gBAAgB,EAAE,gBAAgB,EAAC,MAAM,mBAAmB,CAAC;AAErE,MAAM,UAAU,cAAc,CAAC,GAAW,EAAE,KAAU;IAClD,YAAY,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;AACrD,CAAC;AAED,MAAM,UAAU,cAAc,CAAI,GAAW,EAAE,YAAe;IAC1D,MAAM,MAAM,GAAG,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAEzC,OAAO,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC;AAC/D,CAAC;AAED,MAAM,gBAAgB,GAAG,CAAC,CAAA;AAE1B,MAAM,UAAU,WAAW,CAAC,KAAgC,EAAE,SAA0B,EAAE,SAAiB;IACvG,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QACxC,OAAO,EAAE,CAAC;IACd,CAAC;IAED,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;IAE3C,QAAQ,SAAS,EAAE,CAAC;QAChB,KAAK,eAAe,CAAC,UAAU;YAC3B,OAAO,YAAY,CAAC,YAAY,CAAC,KAAK,EAAE,gBAAgB,CAAC,CAAC;QAC9D,KAAK,eAAe,CAAC,cAAc;YAC/B,OAAO,YAAY,CAAC,YAAY,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;QACvD,KAAK,eAAe,CAAC,KAAK;YACtB,OAAO,YAAY,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,UAAU,CAAC,GAAG,UAAU,EAAE,gBAAgB,CAAC,CAAC;QACpG,KAAK,eAAe,CAAC,OAAO;YACxB,OAAO,YAAY,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,GAAG,UAAU,CAAC,GAAG,UAAU,EAAE,gBAAgB,CAAC,CAAC;IACvG,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,GAAkB,EAAE,IAAc;IAC/D,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QACtB,OAAO,EAAC,IAAI,GAAY,EAAE,IAAI,EAAE,IAAI,EAAC,CAAC;IAC1C,CAAC;IAED,IAAI,QAAQ,GAA0B,SAAS,CAAC;IAEhD,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC;QAChB,MAAkB,CAAC,CAAC,CAAC;YACjB,MAAM,UAAU,GAAG,MAAM,GAAG,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAErD,IAAI,UAAU,EAAE,CAAC;gBACb,QAAQ,GAAG,EAAC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,UAAU,EAAC,CAAC;YACnD,CAAC;YACD,MAAM;QACV,CAAC;QACD,MAAiB,CAAC,CAAC,CAAC;YAChB,MAAM,SAAS,GAAG,MAAM,GAAG,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAEnD,IAAI,SAAS,EAAE,CAAC;gBACZ,QAAQ,GAAG,EAAC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,SAAS,EAAC,CAAC;YAClD,CAAC;YACD,MAAM;QACV,CAAC;QACD,MAAoB,CAAC,CAAC,CAAC;YACnB,MAAM,YAAY,GAAG,MAAM,GAAG,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAEzD,IAAI,YAAY,EAAE,CAAC;gBACf,QAAQ,GAAG,EAAC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,YAAY,EAAC,CAAC;YACrD,CAAC;YACD,MAAM;QACV,CAAC;QACD,MAAe,CAAC,CAAC,CAAC;QAElB,CAAC;IACL,CAAC;IAED,OAAO,QAAQ,CAAC;AACpB,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,IAAc;IAC1C,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,MAAM,CAAC,CAAyB,EAAE,CAAyB;IACvE,OAAO,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI;QACpB,CAAC,CAAC,QAAQ,KAAK,CAAC,CAAC,QAAQ;QACzB,CAAC,CAAC,UAAU,KAAK,CAAC,CAAC,UAAU;QAC7B,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC;QAC7B,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC;QAC7B,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC;QAC3B,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;AACpC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,oBAAoB;IACtC,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;QAChC,qBAAqB,CAAC,GAAG,EAAE;YACvB,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QAC3B,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;AACP,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,IAAmB;IAC7C,QAAQ,IAAI,EAAE,CAAC;QACX,KAAK,aAAa,CAAC,cAAc;YAC7B,OAAO,oBAAC,mBAAmB,OAAE,CAAC;QAClC,KAAK,aAAa,CAAC,IAAI;YACnB,OAAO,oBAAC,aAAa,OAAE,CAAC;QAC5B,KAAK,aAAa,CAAC,GAAG;YAClB,OAAO,oBAAC,aAAa,OAAE,CAAC;QAC5B,KAAK,aAAa,CAAC,WAAW;YAC1B,OAAO,oBAAC,aAAa,OAAE,CAAC;QAC5B,KAAK,aAAa,CAAC,QAAQ;YACvB,OAAO,oBAAC,aAAa,OAAE,CAAC;QAC5B,KAAK,aAAa,CAAC,kBAAkB;YACjC,OAAO,oBAAC,mBAAmB,IAAC,KAAK,EAAE,EAAC,KAAK,EAAE,QAAQ,EAAC,GAAG,CAAC;QAC5D,KAAK,aAAa,CAAC,QAAQ;YACvB,OAAO,oBAAC,aAAa,IAAC,KAAK,EAAE,EAAC,KAAK,EAAE,QAAQ,EAAC,GAAG,CAAC;QACtD,KAAK,aAAa,CAAC,OAAO;YACtB,OAAO,oBAAC,aAAa,IAAC,KAAK,EAAE,EAAC,KAAK,EAAE,QAAQ,EAAC,GAAG,CAAC;QACtD,KAAK,aAAa,CAAC,MAAM;YACrB,OAAO,oBAAC,aAAa,OAAE,CAAC;QAC5B,KAAK,aAAa,CAAC,UAAU;YACzB,OAAO,oBAAC,aAAa,IAAC,KAAK,EAAE,EAAC,KAAK,EAAE,QAAQ,EAAC,GAAG,CAAC;QACtD,KAAK,aAAa,CAAC,IAAI;YACnB,OAAO,oBAAC,YAAY,OAAE,CAAC;QAC3B,KAAK,aAAa,CAAC,QAAQ;YACvB,OAAO,oBAAC,gBAAgB,OAAE,CAAC;QAC/B,KAAK,aAAa,CAAC,YAAY;YAC3B,OAAO,oBAAC,gBAAgB,IAAC,KAAK,EAAE,EAAC,KAAK,EAAE,QAAQ,EAAC,GAAG,CAAC;QACzD,KAAK,aAAa,CAAC,UAAU;YACzB,OAAO,oBAAC,gBAAgB,OAAE,CAAC;QAC/B;YACI,OAAO,oBAAC,gBAAgB,OAAE,CAAC;IACnC,CAAC;AACL,CAAC","sourcesContent":["import {EdaRoundingType, EdaVectorType, IdType, ItemType, StepType, TypedData} from \"../constants/edaTypes\";\r\nimport {LocaleHolder} from \"d2core/i18n/localeHolder\";\r\nimport EdaManagerApi from \"../../../../api/eda/edaManagerApi\";\r\nimport {OpUnitType} from \"dayjs\";\r\nimport {SharedSampleRangeState} from \"../context/sharedSampleRangeContext\";\r\nimport React from \"react\";\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 {FunctionOutlined, QuestionOutlined} from \"@ant-design/icons\";\r\n\r\nexport function savePreference(key: string, value: any) {\r\n localStorage.setItem(key, JSON.stringify(value));\r\n}\r\n\r\nexport function loadPreference<T>(key: string, defaultValue: T): T {\r\n const stored = localStorage.getItem(key);\r\n\r\n return stored !== null ? JSON.parse(stored) : defaultValue;\r\n}\r\n\r\nconst TOTAL_DEC_PLACES = 7 //FIXME configurable\r\n\r\nexport function formatValue(value: number | null | undefined, roundType: EdaRoundingType, decPlaces: number): string {\r\n if (value === undefined || value === null) {\r\n return '';\r\n }\r\n\r\n const multiplier = Math.pow(10, decPlaces);\r\n\r\n switch (roundType) {\r\n case EdaRoundingType.NoRounding:\r\n return LocaleHolder.formatNumber(value, TOTAL_DEC_PLACES);\r\n case EdaRoundingType.RoundToNearest:\r\n return LocaleHolder.formatNumber(value, decPlaces);\r\n case EdaRoundingType.Floor:\r\n return LocaleHolder.formatNumber(Math.floor(value * multiplier) / multiplier, TOTAL_DEC_PLACES);\r\n case EdaRoundingType.Ceiling:\r\n return LocaleHolder.formatNumber(Math.ceil(value * multiplier) / multiplier, TOTAL_DEC_PLACES);\r\n }\r\n}\r\n\r\nexport async function loadDetail(api: EdaManagerApi, item: ItemType): Promise<TypedData | undefined> {\r\n if (Array.isArray(item)) {\r\n return {type: IdType.SET, data: item};\r\n }\r\n\r\n let dataItem: TypedData | undefined = undefined;\r\n\r\n switch (item.type) {\r\n case IdType.VECTOR: {\r\n const vectorData = await api.loadVectorData(item.id);\r\n\r\n if (vectorData) {\r\n dataItem = {type: item.type, data: vectorData};\r\n }\r\n break;\r\n }\r\n case IdType.GROUP: {\r\n const groupData = await api.loadGroupData(item.id);\r\n\r\n if (groupData) {\r\n dataItem = {type: item.type, data: groupData};\r\n }\r\n break;\r\n }\r\n case IdType.SCENARIO: {\r\n const scenarioData = await api.loadScenarioData(item.id);\r\n\r\n if (scenarioData) {\r\n dataItem = {type: item.type, data: scenarioData};\r\n }\r\n break;\r\n }\r\n case IdType.SET: {\r\n\r\n }\r\n }\r\n\r\n return dataItem;\r\n}\r\n\r\nexport function 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 isSame(a: SharedSampleRangeState, b: SharedSampleRangeState) {\r\n return a.step === b.step &&\r\n a.sampling === b.sampling &&\r\n a.vectorPage === b.vectorPage &&\r\n a.btWindow.isSame(b.btWindow) &&\r\n a.etWindow.isSame(b.etWindow) &&\r\n a.btTotal.isSame(b.btTotal) &&\r\n a.etTotal.isSame(b.etTotal);\r\n}\r\n\r\nexport async function awaitNextRenderFrame() {\r\n await new Promise<void>((resolve) => {\r\n requestAnimationFrame(() => {\r\n setTimeout(resolve, 0);\r\n });\r\n });\r\n}\r\n\r\nexport function getVectorIcon(type: EdaVectorType) {\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}"]}
@@ -163,6 +163,10 @@ RPC PROCEDURE LoadDescriptiveVectorData(IN INT _id, RECORD NOALIAS(SD.EDA_Descri
163
163
  CALL [_unit] LoadDescriptiveVectorData(_id, _data, _isOk, _errorMsg)
164
164
  END LoadDescriptiveVectorData
165
165
 
166
+ RPC PROCEDURE SetDescriptiveVectorData(IN INT _id, IN RECORD NOALIAS(SD.EDA_DescriptiveData) _data, BOOL _isOk, TEXT _errorMsg)
167
+ CALL [_unit] SetDescriptiveVectorData(_id, _data, _isOk, _errorMsg)
168
+ END SetDescriptiveVectorData
169
+
166
170
  RPC PROCEDURE LoadCalcVectorData(IN INT _id, RECORD NOALIAS(SD.EM_EDA_FunctionPrescription) _data, TEXT _prescription, BOOL _isOk, TEXT _errorMsg)
167
171
  CALL [_unit] LoadCalcVectorData(_id, _data, _prescription, _isOk, _errorMsg)
168
172
  END LoadCalcVectorData
@@ -55,6 +55,12 @@
55
55
  <objType>EXT_FNCT</objType>
56
56
  <valType>Int</valType>
57
57
  </HOBJ_REF>
58
+ <HOBJ_REF>
59
+ <uid>0AE3CFBF5C0EF64EB226B998E528C6FB</uid>
60
+ <name>EDA_SetDescriptiveVectorRec</name>
61
+ <objType>EXT_FNCT</objType>
62
+ <valType>Int</valType>
63
+ </HOBJ_REF>
58
64
  <HOBJ_REF>
59
65
  <uid>3798D15A71FD1146AB9238660BD3D83E</uid>
60
66
  <name>SD.EDA_DescriptiveData</name>
@@ -83,6 +89,17 @@
83
89
  <col_name>structVersion</col_name>
84
90
  <col_valType>Int</col_valType>
85
91
  </COL_REF>
92
+ <HOBJ_REF>
93
+ <uid>F4921D03EDBA5A448B7B3A65B61FFB62</uid>
94
+ <name>SD.EDA_SetDescriptiveVector_Params_V1</name>
95
+ <objType>STRUCTDEF</objType>
96
+ <valType>NAN</valType>
97
+ </HOBJ_REF>
98
+ <COL_REF>
99
+ <col_idx>1</col_idx>
100
+ <col_name>structVersion</col_name>
101
+ <col_valType>Int</col_valType>
102
+ </COL_REF>
86
103
  <HOBJ_REF>
87
104
  <uid>42C6605F250C9D439C33565F834F13AF</uid>
88
105
  <name>SD.EM_EDA_Function</name>
@@ -278,6 +295,23 @@ PUBLIC PROCEDURE LoadDescriptiveVectorData(IN INT _id, RECORD NOALIAS(SD.EDA_Des
278
295
  _isOk := @TRUE
279
296
  END LoadDescriptiveVectorData
280
297
 
298
+ PUBLIC PROCEDURE SetDescriptiveVectorData(IN INT _id, IN RECORD NOALIAS(SD.EDA_DescriptiveData) _data, BOOL _isOk, TEXT _errorMsg)
299
+ INT _retCode
300
+ RECORD NOALIAS(SD.EDA_SetDescriptiveVector_Params_V1) _params
301
+
302
+ _params^structVersion := 1
303
+
304
+ CALL %EDA_SetDescriptiveVectorRec(_id, _data, _params, _retCode)
305
+
306
+ IF _retCode # _ERR_NO_ERROR THEN
307
+ _errorMsg := "Error writig descriptive vector data [" + %IToStr(_retCode) + "]"
308
+ _isOk := @FALSE
309
+ RETURN
310
+ ENDIF
311
+
312
+ _isOk := @TRUE
313
+ END SetDescriptiveVectorData
314
+
281
315
  PUBLIC PROCEDURE LoadCalcVectorData(IN INT _id, RECORD NOALIAS(SD.EM_EDA_FunctionPrescription) _data, TEXT _prescription, BOOL _isOk, TEXT _errorMsg)
282
316
  RECORD NOALIAS (SD.EDA_ReadFunction_Params_V1) _params
283
317
  INT _retCode
@@ -121,7 +121,7 @@ RPC PROCEDURE GetGroupVectorsCountSql(IN INT _id, IN BOOL _showOmitted, TEXT _sq
121
121
  END GetGroupVectorsCountSql
122
122
 
123
123
  RPC PROCEDURE GetGroupVectorItemsSql(IN INT _id, IN BOOL _showOmitted, TEXT _sql, BOOL _isOk, TEXT _errorMsg)
124
- _sql := "SELECT ID_Vektor, ID_SkVektor, Meno, '', Zobraz_Meno, Typ, Tech_Jednotky, View_Round, View_Dec_Pl FROM EDA_Vektor WHERE "
124
+ _sql := "SELECT ID_Vektor, ID_SkVektor, Meno, '', Zobraz_Meno, Typ, Tech_Jednotky, View_Round, View_Dec_Pl, NULL, CASE WHEN Integral = 2 THEN 1 ELSE 0 END FROM EDA_Vektor WHERE "
125
125
 
126
126
  IF _showOmitted THEN
127
127
  _sql := _sql + "ID_SkVektor IS NULL"
@@ -219,7 +219,7 @@ END GetScenarioVectorsCountSql
219
219
 
220
220
  RPC PROCEDURE GetScenarioVectorItemsSql(IN INT _id, IN BOOL _showOmitted, IN BOOL _showDynamic, TEXT _sql, BOOL _isOk, TEXT _errorMsg)
221
221
  _sql := "SELECT v.ID_Vektor, vs.ID, v.Meno, '', CASE WHEN vs.zobraz_Meno is NULL THEN (v.zobraz_meno) ELSE (vs.Zobraz_Meno || ' (' || v.Zobraz_meno || ')') END zobraz_meno,"
222
- _sql := _sql + " v.Typ, v.Tech_Jednotky, v.View_Round, v.View_Dec_Pl, vs.idx IDX FROM EDA_VEKTOR v, EDA_VEKTOR_SCENAR vs WHERE v.ID_Vektor = vs.ID_Vektor AND "
222
+ _sql := _sql + " v.Typ, v.Tech_Jednotky, v.View_Round, v.View_Dec_Pl, NULL, CASE WHEN v.Integral = 2 THEN 1 ELSE 0 END, vs.idx IDX FROM EDA_VEKTOR v, EDA_VEKTOR_SCENAR vs WHERE v.ID_Vektor = vs.ID_Vektor AND "
223
223
 
224
224
  IF !_id\VLD | _showOmitted THEN
225
225
  _sql := _sql + "1 = 0"
@@ -242,7 +242,7 @@ RPC PROCEDURE GetScenarioVectorItemsSql(IN INT _id, IN BOOL _showOmitted, IN BOO
242
242
  ENDIF
243
243
 
244
244
  IF _EDA_Scenar[1]^FILTER\VLD THEN
245
- _sqlPom := "SELECT v.ID_Vektor, v.ID_SkVektor, v.Meno, '', v.Zobraz_meno, v.Typ, v.Tech_Jednotky, v.View_Round, v.View_Dec_Pl, null FROM EDA_VEKTOR v, (" + _EDA_Scenar[1]^FILTER + ") filter WHERE filter.id_vektor = v.ID_Vektor"
245
+ _sqlPom := "SELECT v.ID_Vektor, v.ID_SkVektor, v.Meno, '', v.Zobraz_meno, v.Typ, v.Tech_Jednotky, v.View_Round, v.View_Dec_Pl, NULL, CASE WHEN v.Integral = 2 THEN 1 ELSE 0 END, NULL FROM EDA_VEKTOR v, (" + _EDA_Scenar[1]^FILTER + ") filter WHERE filter.id_vektor = v.ID_Vektor"
246
246
  _sql := _sql + " UNION " + _sqlPom
247
247
  _sql := _sql + " ORDER BY 7, 5"
248
248
  ENDIF
@@ -254,7 +254,7 @@ RPC PROCEDURE GetScenarioVectorItemsSql(IN INT _id, IN BOOL _showOmitted, IN BOO
254
254
  END GetScenarioVectorItemsSql
255
255
 
256
256
  RPC PROCEDURE GetVectorSql(IN INT _id, TEXT _sql, BOOL _isOk, TEXT _errorMsg)
257
- _sql := "SELECT ID_Vektor, ID_SkVektor, Meno, '', Zobraz_Meno, Typ, Tech_Jednotky, View_Round, View_Dec_Pl FROM EDA_Vektor WHERE ID_Vektor = " + %IToStr(_id)
257
+ _sql := "SELECT ID_Vektor, ID_SkVektor, Meno, '', Zobraz_Meno, Typ, Tech_Jednotky, View_Round, View_Dec_Pl, NULL, CASE WHEN Integral = 2 THEN 1 ELSE 0 END FROM EDA_Vektor WHERE ID_Vektor = " + %IToStr(_id)
258
258
  _isOk := @TRUE
259
259
  END GetVectorSql
260
260
 
@@ -269,7 +269,7 @@ RPC PROCEDURE GetScenarioSql(IN INT _id, TEXT _sql, BOOL _isOk, TEXT _errorMsg)
269
269
  END GetScenarioSql
270
270
 
271
271
  RPC PROCEDURE FindVectorsSql(IN TEXT _filter, TEXT _sql, BOOL _isOk, TEXT _errorMsg)
272
- _sql := "SELECT ID_Vektor, ID_SkVektor, Meno, '', Zobraz_Meno, Typ, Tech_Jednotky, View_Round, View_Dec_Pl FROM EDA_Vektor WHERE " + _filter
272
+ _sql := "SELECT ID_Vektor, ID_SkVektor, Meno, '', Zobraz_Meno, Typ, Tech_Jednotky, View_Round, View_Dec_Pl, NULL, CASE WHEN Integral = 2 THEN 1 ELSE 0 END FROM EDA_Vektor WHERE " + _filter
273
273
  _isOk := @TRUE
274
274
  END FindVectorsSql
275
275
 
@@ -7,6 +7,12 @@
7
7
  <objType>EVENT</objType>
8
8
  <valType>Int</valType>
9
9
  </HOBJ_REF>
10
+ <HOBJ_REF>
11
+ <uid>E92291268519484FBF88946B2BE13785</uid>
12
+ <name>SD.EDA_CalcFunction_Params_V2</name>
13
+ <objType>STRUCTDEF</objType>
14
+ <valType>NAN</valType>
15
+ </HOBJ_REF>
10
16
  <HOBJ_REF>
11
17
  <uid>D28BD988FC3A474E8989005B31979309</uid>
12
18
  <name>SD.EDA_DescriptiveData2</name>
@@ -19,6 +25,12 @@
19
25
  <objType>STRUCTDEF</objType>
20
26
  <valType>NAN</valType>
21
27
  </HOBJ_REF>
28
+ <HOBJ_REF>
29
+ <uid>8C22CCF60968D947BF9BCF139AF28C81</uid>
30
+ <name>SD.EDA_ReadValuesFromVector_Params_V2</name>
31
+ <objType>STRUCTDEF</objType>
32
+ <valType>NAN</valType>
33
+ </HOBJ_REF>
22
34
  <HOBJ_REF>
23
35
  <uid>4388DB083FCC164BBCB0DF4C79593FC1</uid>
24
36
  <name>SD.EDA_VectorData</name>
@@ -93,8 +105,8 @@
93
105
 
94
106
  UNIT (E.EM_VECTOR_UNIT) _unit
95
107
 
96
- RPC PROCEDURE ReadValuesFromVector(IN INT _id, IN TIME _from, IN TIME _to, IN INT _step, RECORD NOALIAS(SD.EDA_VectorData) _data, RECORD NOALIAS(SD.EM_EDA_VectorStats) _stats, BOOL _isOk, TEXT _errorMsg)
97
- CALL [_unit] ReadValuesFromVector(_id, _from, _to, _step, _data, _stats, _isOk, _errorMsg)
108
+ RPC PROCEDURE ReadValuesFromVector(IN INT _id, IN TIME _from, IN TIME _to, IN INT _step, IN RECORD NOALIAS (SD.EDA_ReadValuesFromVector_Params_V2) _readParams, RECORD NOALIAS(SD.EDA_VectorData) _data, RECORD NOALIAS(SD.EM_EDA_VectorStats) _stats, BOOL _isOk, TEXT _errorMsg)
109
+ CALL [_unit] ReadValuesFromVector(_id, _from, _to, _step, _readParams, _data, _stats, _isOk, _errorMsg)
98
110
  END ReadValuesFromVector
99
111
 
100
112
  RPC PROCEDURE InsertValuesToVector(IN INT _id, IN RECORD NOALIAS(SD.EDA_VectorData) _data, BOOL _isOk, TEXT _errorMsg)
@@ -109,6 +121,10 @@ RPC PROCEDURE GetValuesForDescriptiveVector(IN RECORD NOALIAS(SD.EDA_Descriptive
109
121
  CALL [_unit] GetValuesForDescriptiveVector(_definition, _from, _to, _step, _integral, _values, _isOk, _errorMsg)
110
122
  END GetValuesForDescriptiveVector
111
123
 
124
+ RPC PROCEDURE CalcValuesForUnsavedVector(IN INT _type, IN TEXT _prescription, IN TIME _from, IN TIME _to, IN INT _step, RECORD NOALIAS (SD.EDA_CalcFunction_Params_V2) _calcParams, RECORD NOALIAS(SD.EDA_VectorData) _data, RECORD NOALIAS(SD.EM_EDA_VectorStats) _stats, BOOL _isOk, TEXT _errorMsg)
125
+ CALL [_unit] CalcValuesForUnsavedVector(_type, _prescription, _from, _to, _step, _calcParams, _data, _stats, _isOk, _errorMsg)
126
+ END CalcValuesForUnsavedVector
127
+
112
128
  BEGIN
113
129
  PRAGMA "ENABLE_INOUT_BY_REF"
114
130
  END