Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

#4145 - implement popup versions of ketcher and routing #6403

Open
wants to merge 24 commits into
base: release/3.1
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
24 commits
Select commit Hold shift + click to select a range
6c83076
#6240 – Export to 3-letter sequence doesn't work (#6245)
svvald Jan 9, 2025
336054d
#6235 – Incorrect representation of hydrogens for alias charge valenc…
svvald Jan 13, 2025
5f61c78
#6034 – Combine two editors in ketcher-react package in order to make…
svvald Jan 14, 2025
67339e8
#6034 – Remove unnecessary transition (#6283)
svvald Jan 15, 2025
26d6f17
#6303 – Update GitHub actions version to v4 (#6305)
svvald Jan 17, 2025
10572b3
#6298 – Update Indigo to 1.28.0-rc.2 in-browser module (#6299)
svvald Jan 17, 2025
c4e7ad2
Backmerge: #6247 - Update the help document (#6312) (#6313)
rrodionov91 Jan 20, 2025
f042fe5
#6034 – Update docs for opting out of macromolecules mode (#6321)
svvald Jan 20, 2025
dc299b0
#3627 - Ketcher requires unsafe-eval in order to run, which contradic…
rrodionov91 Jan 20, 2025
ab9cdfa
Update version to 3.0.0-rc.3 (#6323)
svvald Jan 20, 2025
b92d109
#6291 - Super G and Super T monomers do not load from a saved RXN V30…
rrodionov91 Jan 22, 2025
eca9147
#6344 - Excessive scroll appears in macromolecules mode in canvas if …
rrodionov91 Jan 24, 2025
2a668fb
#6370 - Inconsistent zoom behavior when inserting a molecule via setM…
rrodionov91 Jan 28, 2025
2be7705
#6379 - Ketcher does not respond if switch to macromolecules, close p…
rrodionov91 Jan 28, 2025
32d0dab
- updated ketcher to 3.0.0-rc.6
rrodionov91 Jan 28, 2025
9cb129f
#6196-Ambiguous DNA bases (N, D, H, W) wrongly converted to DNA bases…
KristinaKasyanovskaya Jan 29, 2025
599a441
#6106 Two sense chain to one antisense connection render (#6374)
aproskurnov Jan 30, 2025
3e7f372
Fix example serve adding serve.json for popup and iframe urls.
tanas80 Jan 31, 2025
47ba301
Fix example serve adding serve.json for popup and iframe urls.
tanas80 Jan 31, 2025
3a500da
Fix example serve adding serve.json for popup and iframe urls.
tanas80 Jan 31, 2025
b20195c
Fix example serve adding serve.json for popup and iframe urls.
tanas80 Jan 31, 2025
5fda760
Fix example serve adding serve.json for popup and iframe urls.
tanas80 Feb 3, 2025
1e5a56f
Fix example serve adding serve.json for popup and iframe urls.
tanas80 Feb 3, 2025
3ebf372
Fix example adding duo.
tanas80 Feb 4, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
6 changes: 3 additions & 3 deletions .github/workflows/playwright-macromolecules.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,10 +18,10 @@ jobs:
timeout-minutes: 120
runs-on: self-hosted
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
with:
fetch-depth: 0
- uses: actions/setup-node@v3
- uses: actions/setup-node@v4
with:
node-version: 18.12.0
- name: Install dependencies
Expand All @@ -45,7 +45,7 @@ jobs:
- name: Run playwright tests in docker
run: cd ketcher-autotests && npm run docker:test

- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4
# run even if previous steps fails
if: always()
with:
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/playwright.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,10 +17,10 @@ jobs:
timeout-minutes: 150
runs-on: self-hosted
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
with:
fetch-depth: 0
- uses: actions/setup-node@v3
- uses: actions/setup-node@v4
with:
node-version: 18.12.0
- name: Install dependencies
Expand All @@ -43,7 +43,7 @@ jobs:
- name: Run playwright tests in docker
run: cd ketcher-autotests && npm run docker:test

- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4
# run even if previous steps fails
if: always()
with:
Expand Down
20 changes: 10 additions & 10 deletions .github/workflows/run-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ jobs:
- name: Install dependencies
run: apt-get update -y && apt-get install -y git
- name: Checkout
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
fetch-depth: 1
- name: Git safe
Expand All @@ -40,7 +40,7 @@ jobs:
- name: Build all packages
run: npm run build:packages && npm run build:example:standalone
- name: Upload artifacts
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: ketcher-dist-micro
path: example/dist
Expand All @@ -54,7 +54,7 @@ jobs:
- name: Install dependencies
run: apt-get update -y && apt-get install -y git
- name: Checkout
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
fetch-depth: 1
- name: Git safe
Expand All @@ -64,7 +64,7 @@ jobs:
- name: Build all packages
run: npm run build:packages && npm run build:example:standalone
- name: Upload artifacts
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: ketcher-dist-macro
path: example/dist
Expand All @@ -81,15 +81,15 @@ jobs:
shardTotal: [2]
steps:
- name: Checkout
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
fetch-depth: 1
- name: Install dependencies
run: npm ci
- name: Create folder for dist
run: mkdir -p example/dist
- name: Download compiled ketcher
uses: actions/download-artifact@v3
uses: actions/download-artifact@v4
with:
name: ketcher-dist-micro
path: example/dist/
Expand All @@ -113,7 +113,7 @@ jobs:
npm i
npx playwright install chromium
npx playwright test --shard=${{ matrix.shardIndex }}/${{ matrix.shardTotal }}
- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4
# run even if previous steps fails
if: always()
with:
Expand All @@ -133,15 +133,15 @@ jobs:
shardTotal: [4]
steps:
- name: Checkout
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
fetch-depth: 1
- name: Install dependencies
run: npm ci
- name: Create folder for dist
run: mkdir -p example/dist
- name: Download compiled ketcher
uses: actions/download-artifact@v3
uses: actions/download-artifact@v4
with:
name: ketcher-dist-macro
path: example/dist/
Expand All @@ -165,7 +165,7 @@ jobs:
npm i
npx playwright install chromium
npx playwright test --shard=${{ matrix.shardIndex }}/${{ matrix.shardTotal }}
- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4
# run even if previous steps fails
if: always()
with:
Expand Down
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,9 @@ yarn-error.log*
nohup.out
ketcher-autotests/results.json

# ajv validation file generated with npm run ajv
/packages/ketcher-core/src/domain/serializers/ket/compiledSchema.js

.pnp.*
.yarn/*
tests/test-data/KET/Nucleotide-Templates/01 - (R1) - Left only.ket
Expand Down
30 changes: 25 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -51,11 +51,12 @@ You can find the instruction for service installation

## Packages

| Project | Status | Description |
| --------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------- |
| [ketcher-core](https://github.com/epam/ketcher/tree/master/packages/ketcher-core) | [![npm version](https://badge.fury.io/js/ketcher-core.svg)](https://www.npmjs.com/package/ketcher-core) | Core functionality: domain, shared services, functions and interface declarations |
| [ketcher-standalone](https://github.com/epam/ketcher/tree/master/packages/ketcher-standalone) | [![npm version](https://badge.fury.io/js/ketcher-standalone.svg)](https://www.npmjs.com/package/ketcher-standalone) | Contains only the functionality necessary to start Ketcher in standalone mode |
| [ketcher-react](https://github.com/epam/ketcher/tree/master/packages/ketcher-react) | [![npm version](https://badge.fury.io/js/ketcher-react.svg)](https://www.npmjs.com/package/ketcher-react) | Package contains only the functionality necessary to define components. |
| Project | Status | Description |
|-------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------|
| [ketcher-core](https://github.com/epam/ketcher/tree/master/packages/ketcher-core) | [![npm version](https://badge.fury.io/js/ketcher-core.svg)](https://www.npmjs.com/package/ketcher-core) | Core functionality: domain, shared services, functions and interface declarations |
| [ketcher-standalone](https://github.com/epam/ketcher/tree/master/packages/ketcher-standalone) | [![npm version](https://badge.fury.io/js/ketcher-standalone.svg)](https://www.npmjs.com/package/ketcher-standalone) | Contains only the functionality necessary to start Ketcher in standalone mode |
| [ketcher-react](https://github.com/epam/ketcher/tree/master/packages/ketcher-react) | [![npm version](https://badge.fury.io/js/ketcher-react.svg)](https://www.npmjs.com/package/ketcher-react) | Package contains only the functionality necessary to define components. |
| [ketcher-macromolecules](https://github.com/epam/ketcher/tree/master/packages/ketcher-macromolecules) | [![npm version](https://badge.fury.io/js/ketcher-macromolecules.svg)](https://www.npmjs.com/package/ketcher-macromolecules) | Package contains the macromolecules editor functionality and UI components |

## 3D Viewer

Expand All @@ -64,6 +65,25 @@ Ketcher uses Miew-React for viewing and editing data in 3D.
You can find the latest version of Miew-React [here](https://github.com/epam/miew/tree/master/packages/miew-react).
The last checked version - [1.0.0](https://www.npmjs.com/package/miew-react).

## Macromolecules mode
Starting with version 3.0, Ketcher supports a new control in the top toolbar that allows switching to macromolecules editing mode. If you prefer having only small molecules editing mode available, you can remove the mode switcher from the toolbar by passing `disableMacromoleculesEditor` property to the `Editor` component.

```js
import { Editor } from 'ketcher-react';

const App = () => {
return (
<Editor
{/* ...rest of the properties */}
disableMacromoleculesEditor
/>
);
};
```

Please refer to the `example/src/App.tsx` file for a complete example of how to integrate Ketcher editor into your application.


## Ketcher API
Ketcher can return drawn structures using the following methods:

Expand Down
2 changes: 1 addition & 1 deletion demo/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
"private": true,
"dependencies": {
"@testing-library/jest-dom": "^5.16.2",
"@testing-library/react": "^12.1.3",
"@testing-library/react": "^15.0.7",
"@testing-library/user-event": "^13.5.0",
"@types/jest": "^27.4.1",
"@types/node": "^16.11.26",
Expand Down
Loading
Loading