Skip to content

Commit

Permalink
repl: improve sorting UX (finos#3293)
Browse files Browse the repository at this point in the history
* repl: improve sorting UX

* repl: customize overlay components for main grid

* devex: add 'copyright' code snippet for faster copyright header generation

* datacube: add base context menu and support sorting from menu

* repl: minor update to webpack flag to build static web content with relative path

* data-cube: basic setup with query configuration object

* data-cube: introduce loader and change detection mechanism

* bump dependencies

* data-cube: improve dropdown

* data-cube: complete layout for general properties editor panel

* bump dependencies

* datacube: fix ordering of function composition

* data-cube: complete column configuration editor
  • Loading branch information
akphi authored Jul 2, 2024
1 parent 146dd8b commit f16d66b
Show file tree
Hide file tree
Showing 140 changed files with 5,502 additions and 905 deletions.
29 changes: 29 additions & 0 deletions .changeset/brave-monkeys-remain.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
---
'@finos/legend-extension-dsl-data-space-studio': patch
'@finos/legend-extension-store-service-store': patch
'@finos/legend-vscode-extension-dependencies': patch
'@finos/legend-application-repl-deployment': patch
'@finos/legend-extension-store-relational': patch
'@finos/legend-server-showcase-deployment': patch
'@finos/legend-extension-dsl-persistence': patch
'@finos/legend-extension-store-flat-data': patch
'@finos/legend-extension-dsl-data-space': patch
'@finos/legend-extension-dsl-diagram': patch
'@finos/legend-extension-dsl-service': patch
'@finos/legend-application-pure-ide': patch
'@finos/legend-extension-assortment': patch
'@finos/legend-application-studio': patch
'@finos/legend-extension-dsl-text': patch
'@finos/legend-application-query': patch
'@finos/legend-application-repl': patch
'@finos/legend-server-showcase': patch
'@finos/legend-query-builder': patch
'@finos/legend-application': patch
'@finos/legend-server-sdlc': patch
'@finos/legend-dev-utils': patch
'@finos/stylelint-config-legend-studio': patch
'@finos/legend-shared': patch
'@finos/legend-graph': patch
'@finos/legend-lego': patch
'@finos/legend-art': patch
---
17 changes: 17 additions & 0 deletions .changeset/cool-mayflies-warn.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
---
'@finos/legend-extension-store-service-store': patch
'@finos/legend-application-repl-deployment': patch
'@finos/legend-extension-dsl-data-space': patch
'@finos/legend-extension-dsl-diagram': patch
'@finos/legend-application-pure-ide': patch
'@finos/legend-application-studio': patch
'@finos/legend-extension-dsl-text': patch
'@finos/legend-application-query': patch
'@finos/legend-application-repl': patch
'@finos/legend-query-builder': patch
'@finos/legend-dev-utils': patch
'@finos/stylelint-config-legend-studio': patch
'@finos/legend-shared': patch
'@finos/legend-lego': patch
'@finos/legend-art': patch
---
4 changes: 4 additions & 0 deletions .changeset/grumpy-pens-hear.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
---
'@finos/legend-application-repl': patch
'@finos/legend-art': patch
---
8 changes: 8 additions & 0 deletions .changeset/poor-ligers-teach.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
---
'@finos/legend-application-repl-deployment': patch
'@finos/legend-application-repl': patch
'@finos/legend-query-builder': patch
'@finos/legend-dev-utils': patch
'@finos/legend-shared': patch
'@finos/legend-art': patch
---
5 changes: 5 additions & 0 deletions .changeset/short-keys-flash.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
'@finos/legend-application-repl-deployment': patch
'@finos/legend-application-repl': patch
'@finos/legend-art': patch
---
7 changes: 7 additions & 0 deletions .vscode/copyright.code-snippets
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
{
"Print to console": {
"prefix": ["copyright"],
"body": ["/**\n * Copyright (c) 2020-present, Goldman Sachs\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n"],
"description": "Add copyright header",
},
}
2 changes: 1 addition & 1 deletion fixtures/legend-mock-server/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@
},
"dependencies": {
"@fastify/cors": "9.0.1",
"fastify": "4.28.0"
"fastify": "4.28.1"
},
"devDependencies": {
"@finos/legend-dev-utils": "workspace:*",
Expand Down
7 changes: 4 additions & 3 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,7 @@
"fix:format": "prettier --write --loglevel=warn \"(scripts|docs)/**/*.{md,json,mjs,cjs,js,ts,tsx,html,scss,css}\" \"packages/*/**/*.{md,json,mjs,cjs,js,ts,tsx,html,scss,css}\" && yarn sort-package-json \"package.json\" \"packages/*/package.json\"",
"fix:js": "cross-env NODE_ENV=production FORCE_COLOR=1 eslint --cache --cache-location ./build/.eslintcache \"scripts/**/*.{mjs,cjs,js,ts,tsx}\" --report-unused-disable-directives --fix && cross-env FORCE_COLOR=1 yarn workspaces foreach --all --parallel --exclude legend-studio -vv run lint:js --fix",
"fix:style": "yarn lint:style --fix",
"fix:watchman": "node ./scripts/test/fixWatchman.js",
"git:install-hooks": "husky install",
"git:pre-commit": "lint-staged --config ./package.json",
"git:upstream:setup": "git remote add upstream https://github.com/finos/legend-studio.git",
Expand Down Expand Up @@ -99,14 +100,14 @@
"@finos/eslint-plugin-legend-studio": "workspace:*",
"@finos/legend-dev-utils": "workspace:*",
"@finos/stylelint-config-legend-studio": "workspace:*",
"@types/node": "20.14.8",
"@types/node": "20.14.9",
"chalk": "5.3.0",
"cross-env": "7.0.3",
"envinfo": "7.13.0",
"eslint": "8.57.0",
"fs-extra": "11.2.0",
"husky": "9.0.11",
"inquirer": "9.2.23",
"inquirer": "9.3.2",
"jest": "29.7.0",
"lint-staged": "15.2.7",
"micromatch": "4.0.7",
Expand All @@ -118,7 +119,7 @@
"semver": "7.6.2",
"sort-package-json": "2.10.0",
"stylelint": "16.6.1",
"typedoc": "0.26.2",
"typedoc": "0.26.3",
"typescript": "5.5.2",
"yargs": "17.7.2"
},
Expand Down
2 changes: 1 addition & 1 deletion packages/legend-application-pure-ide/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@
"@finos/legend-shared": "workspace:*",
"@types/react": "18.3.3",
"@types/react-dom": "18.3.0",
"mobx": "6.12.4",
"mobx": "6.12.5",
"mobx-react-lite": "4.0.7",
"monaco-editor": "0.50.0",
"react": "18.3.1",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ import {
clsx,
DistributeHorizontalIcon,
DistributeVerticalIcon,
DropdownMenu,
ControlledDropdownMenu,
GoToFileIcon,
MenuContent,
MenuContentDivider,
Expand Down Expand Up @@ -276,7 +276,7 @@ const DiagramEditorHeader = observer(
<DistributeVerticalIcon className="diagram-editor__icon--aligner" />
</button>
</div>
<DropdownMenu
<ControlledDropdownMenu
className="diagram-editor__header__dropdown"
title="Zoom..."
content={
Expand Down Expand Up @@ -311,7 +311,7 @@ const DiagramEditorHeader = observer(
<div className="diagram-editor__header__dropdown__trigger diagram-editor__header__zoomer__dropdown__trigger">
<CaretDownIcon />
</div>
</DropdownMenu>
</ControlledDropdownMenu>
<div className="diagram-editor__header__actions">
<button
className="diagram-editor__header__action"
Expand Down
2 changes: 1 addition & 1 deletion packages/legend-application-query/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,7 @@
"@testing-library/react": "16.0.0",
"@types/react": "18.3.3",
"@types/react-dom": "18.3.0",
"mobx": "6.12.4",
"mobx": "6.12.5",
"mobx-react-lite": "4.0.7",
"react": "18.3.1",
"react-dom": "18.3.1",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ import {
Button,
CaretDownIcon,
DroidIcon,
DropdownMenu,
ControlledDropdownMenu,
InfoCircleIcon,
ManageSearchIcon,
MenuContent,
Expand Down Expand Up @@ -640,7 +640,7 @@ export class Core_LegendQueryApplicationPlugin extends LegendQueryApplicationPlu
Save
</div>
</Button>
<DropdownMenu
<ControlledDropdownMenu
className="query-editor__header__action-combo__dropdown-btn"
disabled={editorStore.isViewProjectActionDisabled}
title="query__editor__save-dropdown"
Expand All @@ -666,7 +666,7 @@ export class Core_LegendQueryApplicationPlugin extends LegendQueryApplicationPlu
}
>
<CaretDownIcon />
</DropdownMenu>
</ControlledDropdownMenu>
</div>
);
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ import {
Dialog,
PanelLoadingIndicator,
BlankPanelContent,
DropdownMenu,
ControlledDropdownMenu,
MenuContent,
MenuContentItem,
MenuIcon,
Expand Down Expand Up @@ -622,7 +622,7 @@ export const QueryEditor = observer(() => {
<div className="query-editor__logo-header">
<div className="query-editor__logo-header__combo">
<div className="query-editor__logo-header__combo__menu">
<DropdownMenu
<ControlledDropdownMenu
className="query-editor__logo-header__combo__menu-item"
menuProps={{
anchorOrigin: { vertical: 'top', horizontal: 'right' },
Expand Down Expand Up @@ -666,7 +666,7 @@ export const QueryEditor = observer(() => {
}
>
<MenuIcon />
</DropdownMenu>
</ControlledDropdownMenu>
</div>
<div className="query-editor__logo-header__combo__name">
Legend Query
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ import {
QuestionCircleIcon,
CogIcon,
MoreHorizontalIcon,
DropdownMenu,
ControlledDropdownMenu,
PencilIcon,
ThinChevronDownIcon,
CircleIcon,
Expand Down Expand Up @@ -214,7 +214,7 @@ const QuerySetupActionGroup = observer(
)}
<div className="query-setup__landing-page__action-group__header">
{(!tag || setupStore.tagToFocus === tag) && (
<DropdownMenu
<ControlledDropdownMenu
className="query-setup__landing-page__action-group__config"
title="Show settings..."
content={<QuerySetupActionGroupConfigMenu />}
Expand All @@ -229,7 +229,7 @@ const QuerySetupActionGroup = observer(
<CircleIcon />
</div>
)}
</DropdownMenu>
</ControlledDropdownMenu>
)}
</div>
<div className="query-setup__landing-page__action-group__body">
Expand Down
4 changes: 2 additions & 2 deletions packages/legend-application-repl-deployment/repl.config.js
Original file line number Diff line number Diff line change
Expand Up @@ -29,11 +29,11 @@ export default {
*/
baseUrl: '/repl/',
/**
* `isRelativePathSupported` [boolean, optional]
* `useRelativePath` [boolean, optional]
* Boolean flag to check if your website supports resolution of relative
* paths for resources
*/
isRelativePathSupported: true,
useRelativePath: true,
/**
* `devServerOptions` [object, optional]
* Options to override `webpack-dev-server` configs.
Expand Down
2 changes: 1 addition & 1 deletion packages/legend-application-repl-deployment/src/index.html
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<!doctype html>
<html lang="en">
<head>
<title>&#x25A6; Legend DataCube</title>
<title>&#x229E; Legend DataCube</title>
<meta charset="UTF-8" />
<meta
name="viewport"
Expand Down
4 changes: 2 additions & 2 deletions packages/legend-application-repl-deployment/src/index.scss
Original file line number Diff line number Diff line change
Expand Up @@ -14,9 +14,9 @@
* limitations under the License.
*/

@import url('@finos/legend-art/lib/index.css');
@import url('@finos/legend-art/lib/fonts.css');
@import url('@finos/legend-application/lib/index.css');
@import url('@finos/legend-lego/lib/index.css');
// @import url('@finos/legend-lego/lib/index.css');

@import url('@finos/legend-application-repl/lib/index.css');

Expand Down
10 changes: 10 additions & 0 deletions packages/legend-application-repl-deployment/tailwind.config.js
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,16 @@ export default {
'3xl': ['24px', '32px'],
},
fontFamily: {
sans: [
'Roboto',
'ui-sans-serif',
'system-ui',
'sans-serif',
'Apple Color Emoji',
'Segoe UI Emoji',
'Segoe UI Symbol',
'Noto Color Emoji',
],
mono: [
'ui-monospace',
'Roboto Mono',
Expand Down
4 changes: 3 additions & 1 deletion packages/legend-application-repl/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -49,8 +49,10 @@
"@ag-grid-community/core": "31.3.2",
"@ag-grid-community/react": "31.3.2",
"@ag-grid-community/styles": "31.3.2",
"@ag-grid-enterprise/clipboard": "31.3.2",
"@ag-grid-enterprise/core": "31.3.2",
"@ag-grid-enterprise/menu": "31.3.2",
"@ag-grid-enterprise/range-selection": "31.3.2",
"@ag-grid-enterprise/row-grouping": "31.3.2",
"@ag-grid-enterprise/server-side-row-model": "31.3.2",
"@finos/legend-application": "workspace:*",
Expand All @@ -61,7 +63,7 @@
"@types/react": "18.3.3",
"@types/react-dom": "18.3.0",
"antlr4": "4.13.1-patch-1",
"mobx": "6.12.4",
"mobx": "6.12.5",
"mobx-react-lite": "4.0.7",
"monaco-editor": "0.50.0",
"react": "18.3.1",
Expand Down
Loading

0 comments on commit f16d66b

Please sign in to comment.