semantic-fe visual modeling pr (#21)

* [improvement][semantic-fe] Added an editing component to set filtering rules for Q&A. Now, the SQL editor will be accompanied by a list for display and control, to resolve ambiguity when using comma-separated values.
[improvement][semantic-fe] Improved validation logic and prompt copywriting for data source/dimension/metric editing and creation.
[improvement][semantic-fe] Improved user experience for visual modeling. Now, when using the legend to control the display/hide of data sources and their associated metric dimensions, the canvas will be re-layout based on the activated data source in the legend.

* [improvement][semantic-fe] Submitted a new version of the visual modeling tool.
[improvement][semantic-fe] Fixed an issue with the initialization of YoY and MoM metrics in Q&A settings.
[improvement][semantic-fe] Added a version field to the database settings.
[improvement][semantic-fe] 1. Added the ability to set YoY and MoM metrics in Q&A settings.2. Moved dimension value editing from the dimension editing window to the dimension list.

---------

Co-authored-by: tristanliu <tristanliu@tencent.com>
This commit is contained in:
tristanliu
2023-07-31 11:23:37 +08:00
committed by GitHub
parent e2b2d31429
commit 0ac652c5d9
50 changed files with 2375 additions and 1188 deletions

View File

@@ -12,11 +12,11 @@ type Props = {
};
const SemanticGraphCanvas: React.FC<Props> = ({ domainManger }) => {
const [graphShowType, setGraphShowType] = useState<SemanticNodeType>(SemanticNodeType.DATASOURCE);
const [graphShowType, setGraphShowType] = useState<SemanticNodeType>(SemanticNodeType.DIMENSION);
const { selectDomainId } = domainManger;
return (
<div className={styles.semanticGraphCanvas}>
<div className={styles.toolbar}>
{/* <div className={styles.toolbar}>
<Radio.Group
buttonStyle="solid"
value={graphShowType}
@@ -29,7 +29,7 @@ const SemanticGraphCanvas: React.FC<Props> = ({ domainManger }) => {
<Radio.Button value={SemanticNodeType.DIMENSION}>维度</Radio.Button>
<Radio.Button value={SemanticNodeType.METRIC}>指标</Radio.Button>
</Radio.Group>
</div>
</div> */}
<div className={styles.canvasContainer}>
{graphShowType === SemanticNodeType.DATASOURCE ? (
@@ -37,8 +37,8 @@ const SemanticGraphCanvas: React.FC<Props> = ({ domainManger }) => {
<SemanticFlow />
</div>
) : (
<div style={{ width: '100%', height: 'calc(100vh - 220px)' }}>
<SemanticGraph domainId={selectDomainId} graphShowType={graphShowType} />
<div style={{ width: '100%' }}>
<SemanticGraph domainId={selectDomainId} />
</div>
)}
</div>