diff --git a/.all-contributorsrc b/.all-contributorsrc
index 9f85871a65..01e5d122de 100644
--- a/.all-contributorsrc
+++ b/.all-contributorsrc
@@ -10,6 +10,7 @@
"commit": false,
"commitConvention": "angular",
"contributorsPerLine": 7,
+ "badgeTemplate": "\n[all-contributors-badge]: https://img.shields.io/badge/all_contributors-<%= contributors.length %>-orange.svg?style=flat-square\n",
"contributors": [
{
"login": "darkskygit",
@@ -229,6 +230,42 @@
"contributions": [
"doc"
]
+ },
+ {
+ "login": "liby",
+ "name": "Bryan Lee",
+ "avatar_url": "https://avatars.githubusercontent.com/u/38807139?v=4",
+ "profile": "https://liby.github.io/notes",
+ "contributions": [
+ "code"
+ ]
+ },
+ {
+ "login": "chenmoonmo",
+ "name": "Simon Li",
+ "avatar_url": "https://avatars.githubusercontent.com/u/36295999?v=4",
+ "profile": "https://github.com/chenmoonmo",
+ "contributions": [
+ "code"
+ ]
+ },
+ {
+ "login": "githbq",
+ "name": "Bob Hu",
+ "avatar_url": "https://avatars.githubusercontent.com/u/10009709?v=4",
+ "profile": "https://github.com/githbq",
+ "contributions": [
+ "code"
+ ]
+ },
+ {
+ "login": "lucky-chap",
+ "name": "Quavo",
+ "avatar_url": "https://avatars.githubusercontent.com/u/67266933?v=4",
+ "profile": "https://quavo.vercel.app/",
+ "contributions": [
+ "doc"
+ ]
}
]
}
diff --git a/.cz-config.js b/.cz-config.js
index e282d831ee..a0608d5afa 100644
--- a/.cz-config.js
+++ b/.cz-config.js
@@ -26,7 +26,7 @@ module.exports = {
],
scopes: [
{ name: 'selection' },
- { name: 'whiteboard' },
+ { name: 'edgeless' },
{ name: 'point' },
{ name: 'group' },
{ name: 'page' },
diff --git a/.env b/.env
index 30dbae3055..63e14bc841 100644
--- a/.env
+++ b/.env
@@ -1,4 +1,5 @@
# use for download icon from figma
+
FIGMA_TOKEN
NODE_ENV
AFFINE_FEATURE_FLAG_TOKEN
diff --git a/.vscode/settings.json b/.vscode/settings.json
index 8d06279b15..e69da8bc93 100644
--- a/.vscode/settings.json
+++ b/.vscode/settings.json
@@ -25,6 +25,7 @@
"Kanban",
"keyval",
"ligo",
+ "livedemo",
"lozad",
"mastersthesis",
"nrwl",
diff --git a/README.md b/README.md
index c506f7edbe..5352732aa9 100644
--- a/README.md
+++ b/README.md
@@ -18,7 +18,7 @@ See https://github.com/all-?/all-contributors/issues/361#issuecomment-637166066
-->
-[all-contributors-badge]: https://img.shields.io/badge/all_contributors-23-orange.svg?style=flat-square
+[all-contributors-badge]: https://img.shields.io/badge/all_contributors-27-orange.svg?style=flat-square
@@ -224,6 +224,10 @@ For help, discussion about best practices, or any other conversation that would
 Weston Graham 📖 |
 pointmax 📖 |
+  Bryan Lee 💻 |
+  Simon Li 💻 |
+  Bob Hu 💻 |
+  Quavo 📖 |
diff --git a/apps/ligo-virgo-e2e/package.json b/apps/ligo-virgo-e2e/package.json
new file mode 100644
index 0000000000..03d495c5a1
--- /dev/null
+++ b/apps/ligo-virgo-e2e/package.json
@@ -0,0 +1,11 @@
+{
+ "name": "ligo-virgo-e2e",
+ "version": "1.0.0",
+ "license": "MIT",
+ "description": "",
+ "author": "AFFiNE ",
+ "dependencies": {},
+ "devDependencies": {
+ "cypress": "^10.4.0"
+ }
+}
diff --git a/apps/ligo-virgo-e2e/src/integration/app.spec.ts b/apps/ligo-virgo-e2e/src/integration/app.spec.ts
index 9ef8947047..520bd9ada3 100644
--- a/apps/ligo-virgo-e2e/src/integration/app.spec.ts
+++ b/apps/ligo-virgo-e2e/src/integration/app.spec.ts
@@ -4,7 +4,7 @@ describe('ligo-virgo', () => {
beforeEach(() => cy.visit('/'));
it('basic load check', () => {
- getTitle().contains('👋 Get Started with AFFINE');
+ getTitle().contains('👋 Get Started with AFFiNE');
cy.get('.block_container').contains('The Essentials');
diff --git a/apps/ligo-virgo-e2e/src/support/commands.ts b/apps/ligo-virgo-e2e/src/support/commands.ts
index 4200179bac..395bb4a20f 100644
--- a/apps/ligo-virgo-e2e/src/support/commands.ts
+++ b/apps/ligo-virgo-e2e/src/support/commands.ts
@@ -12,14 +12,14 @@
declare namespace Cypress {
// eslint-disable-next-line @typescript-eslint/no-unused-vars
interface Chainable {
- login(email: string, password: string): void;
+ // login(email: string, password: string): void;
}
}
//
// -- This is a parent command --
-Cypress.Commands.add('login', (email, password) => {
- console.log('Custom command example: Login', email, password);
-});
+// Cypress.Commands.add('login', (email, password) => {
+// console.log('Custom command example: Login', email, password);
+// });
//
// -- This is a child command --
// Cypress.Commands.add("drag", { prevSubject: 'element'}, (subject, options) => { ... })
diff --git a/apps/ligo-virgo/src/pages/AppContainer.tsx b/apps/ligo-virgo/src/pages/AppContainer.tsx
index db451148f9..05d7fa4eef 100644
--- a/apps/ligo-virgo/src/pages/AppContainer.tsx
+++ b/apps/ligo-virgo/src/pages/AppContainer.tsx
@@ -1,11 +1,20 @@
-import { Outlet } from 'react-router-dom';
-
+import { css, Global } from '@emotion/react';
import { LayoutHeader, SettingsSidebar } from '@toeverything/components/layout';
import { styled } from '@toeverything/components/ui';
+import { Outlet } from 'react-router-dom';
export function LigoVirgoRootContainer() {
return (
-
+ <>
+
@@ -13,7 +22,7 @@ export function LigoVirgoRootContainer() {
-
+ >
);
}
@@ -23,12 +32,6 @@ const StyledMainContainer = styled('div')({
overflowY: 'hidden',
});
-const StyledRootContainer = styled('div')({
- display: 'flex',
- flexDirection: 'row',
- height: '100vh',
-});
-
const StyledContentContainer = styled('div')({
flex: 'auto',
display: 'flex',
diff --git a/apps/ligo-virgo/src/pages/workspace/Whiteboard.tsx b/apps/ligo-virgo/src/pages/workspace/Edgeless.tsx
similarity index 92%
rename from apps/ligo-virgo/src/pages/workspace/Whiteboard.tsx
rename to apps/ligo-virgo/src/pages/workspace/Edgeless.tsx
index 7059a264c3..c84ceda481 100644
--- a/apps/ligo-virgo/src/pages/workspace/Whiteboard.tsx
+++ b/apps/ligo-virgo/src/pages/workspace/Edgeless.tsx
@@ -9,11 +9,11 @@ const MemoAffineBoard = memo(AffineBoard, (prev, next) => {
return prev.rootBlockId === next.rootBlockId;
});
-type WhiteboardProps = {
+type EdgelessProps = {
workspace: string;
};
-export const Whiteboard = (props: WhiteboardProps) => {
+export const Edgeless = (props: EdgelessProps) => {
const { page_id } = useParams();
const { user } = useUserAndSpaces();
diff --git a/apps/ligo-virgo/src/pages/workspace/Home.tsx b/apps/ligo-virgo/src/pages/workspace/Home.tsx
index aa7f62cd4f..d0ac1f3872 100644
--- a/apps/ligo-virgo/src/pages/workspace/Home.tsx
+++ b/apps/ligo-virgo/src/pages/workspace/Home.tsx
@@ -22,8 +22,12 @@ export function WorkspaceHome() {
workspace_id,
user_initial_page_id,
TemplateFactory.generatePageTemplateByGroupKeys({
- name: '👋 Get Started with AFFINE',
- groupKeys: ['getStartedGroup0', 'getStartedGroup1'],
+ name: '👋 Get Started with AFFiNE',
+ groupKeys: [
+ 'getStartedGroup0',
+ 'getStartedGroup1',
+ 'getStartedGroup2',
+ ],
})
);
}
diff --git a/apps/ligo-virgo/src/pages/workspace/WorkspaceContainer.tsx b/apps/ligo-virgo/src/pages/workspace/WorkspaceContainer.tsx
index f8cdb7a242..8e83c601a0 100644
--- a/apps/ligo-virgo/src/pages/workspace/WorkspaceContainer.tsx
+++ b/apps/ligo-virgo/src/pages/workspace/WorkspaceContainer.tsx
@@ -4,10 +4,10 @@ import { useUserAndSpaces } from '@toeverything/datasource/state';
import { WorkspaceRootContainer } from './Container';
import { Page } from './docs';
+import { Edgeless } from './Edgeless';
import { WorkspaceHome } from './Home';
import Labels from './labels';
import Pages from './pages';
-import { Whiteboard } from './Whiteboard';
export function WorkspaceContainer() {
const { workspace_id } = useParams();
@@ -26,8 +26,8 @@ export function WorkspaceContainer() {
} />
} />
}
+ path="/:page_id/edgeless"
+ element={}
/>
Your data is yours; it is always locally stored and
secured - available to you always. While still being
- able enjoy collaboration features such as real-time
- editing and sharing with others, without any cloud
- setup.
+ able to enjoy collaboration features such as
+ real-time editing and sharing with others, without
+ any cloud setup.
diff --git a/docs/CONTRIBUTING.md b/docs/CONTRIBUTING.md
deleted file mode 100644
index dbf6928456..0000000000
--- a/docs/CONTRIBUTING.md
+++ /dev/null
@@ -1,13 +0,0 @@
-# AFFiNE CONTRIBUTING
-
-Contributions are **welcome** and will be fully **credited**.
-
-## **Requirements**
-
-If the project maintainer has any additional requirements, you will find them listed here.
-
-- Code Style [AFFiNE Code Guideline](./affine-code-guideline.md)
-- Git Rules [AFFiNE Git Guideline ](./affine-git-guideline.md)
-- • **One pull request per feature** - If you want to do more than one thing, send multiple pull requests.
-
-**Happy coding**!
diff --git a/docs/affine-code-guideline.md b/docs/affine-code-guideline.md
deleted file mode 100644
index d98ba3cb51..0000000000
--- a/docs/affine-code-guideline.md
+++ /dev/null
@@ -1,22 +0,0 @@
-# AFFiNE Code Guideline
-
-| Item | Specification | Example |
-| ----------------------------------------------- | --------------------------------------------------- | ------------------------------------------------------------------------------------- |
-| [Packages/Paths]() | aaa-bbb-ccc | ligo-virgo, editor-todo |
-| [.tsx]() | PascalCase | AddPage.tsx |
-| [.ts]() | kebab-case | file-export.ts |
-| [.json]() | kebab-case | file-export.ts |
-| [Domain File]() | OpenRules | xx._d.ts_ | _tsconfig.xx_.json | xx.spec .ts | .env.xx | yy-ds.ts |
-| [Types]() | UpperCamelCase | WebEvent |
-| [Enum variants]() | UpperCamelCase | Status{ Todo,Completed } |
-| [Functions]() | lowerCamelCase | |
-| [React Funciton Compoment]() | UpperCamelCase | function DocShare(){} |
-| [React HOC]() | UpperCamelCase | function BussinessText(){} |
-| [Function Parameter]() | lowerCamelCase | function searchByIdOrName(idOrname){ } |
-| [Methods for external access]() | lowerCamelCase | public sayHello(){ }; |
-| [Externally Accessible Variables (Variables)]() | lowerCamelCase | animal.sleepCount |
-| [General constructors]() | constructor or with_more_details | |
-| [Local variables]() | lowerCamelCase | const tableCollection = []; |
-| [Statics]() | SCREAMING_SNAKE_CASE | GLOBAL_MESSAGES |
-| [Constants](b) | SCREAMING_SNAKE_CASE | GLOBAL_CONFIG |
-| [Type parameters]() | UpperCamelCase , usually a single capital letter: T | let a: Animal = new Animal() |
diff --git a/docs/affine-git-guideline.md b/docs/affine-git-guideline.md
deleted file mode 100644
index 71fcb12834..0000000000
--- a/docs/affine-git-guideline.md
+++ /dev/null
@@ -1,91 +0,0 @@
-# AFFiNE Git Guideline
-
-# 1. Git Branch Name
-
-- fix/
-- feat/
-
-# 2. **Commit message guidelines**
-
-AFFiNE uses [semantic-release](https://github.com/semantic-release/semantic-release) for automated version management and package publishing. For that to work, commitmessages need to be in the right format.
-
-### **Atomic commits**
-
-If possible, make [atomic commits](https://en.wikipedia.org/wiki/Atomic_commit), which means:
-
-- a commit should contain exactly one self-contained functional change
-- a functional change should be contained in exactly one commit
-- a commit should not create an inconsistent state (such as test errors, linting errors, partial fix, feature with documentation etc...)
-
-A complex feature can be broken down into multiple commits as long as each one keep a consistent state and consist of a self-contained change.
-
-### **Commit message format**
-
-Each commit message consists of a **header**, a **body** and a **footer**. The header has a special format that includes a **type**, a **scope** and a **subject**:
-
-`():
-
-
-
-
-