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

Add Jupyterlab GridStack #69

Merged
merged 173 commits into from
Dec 24, 2020
Merged
Show file tree
Hide file tree
Changes from 166 commits
Commits
Show all changes
173 commits
Select commit Hold shift + click to select a range
160a083
Initial commit
hbcarlos Sep 1, 2020
5a2de30
gridstack
hbcarlos Sep 3, 2020
7a87bc5
Grid done
hbcarlos Sep 8, 2020
d65048c
Add all tsbuildinfo files to gitignore
jtpio Sep 8, 2020
474df5f
setup.py
hbcarlos Sep 23, 2020
e5fd136
Merge branch 'develop' of https://github.com/hbcarlos/voila-editor in…
hbcarlos Sep 23, 2020
44b78ea
Upgrade to the latest lab 3 beta using the script
jtpio Sep 23, 2020
bb9b2e7
Update tsconfig.json
jtpio Sep 23, 2020
739bd5e
Update to gridstack 2.0 final
jtpio Sep 23, 2020
029fdf8
Pin to jupyterlab_server==2.0.0rc0 on CI
jtpio Sep 23, 2020
ac19bc4
Import from gridstack directly
jtpio Sep 23, 2020
a7b408d
Disable noImplicitAny for now
jtpio Sep 23, 2020
4f2be8e
Tweak ESLint settings
jtpio Sep 23, 2020
a662444
Pin to jupyterlab_server==2.0.0rc0 in pyrproject.toml
jtpio Sep 23, 2020
2568ae6
Update CI workflow
jtpio Sep 23, 2020
f8acacc
Update README instructions
jtpio Sep 23, 2020
7f5a045
Check the lab extension is installed on CI
jtpio Sep 23, 2020
5fac83a
Update GitHub repo in README, setup.py and package.json
jtpio Sep 23, 2020
85fb31a
changing to lab-3
hbcarlos Sep 23, 2020
82ab66d
Merge pull request #1 from hbcarlos/lab-3
hbcarlos Sep 23, 2020
f54651f
Merge branch 'develop' of https://github.com/hbcarlos/voila-editor in…
hbcarlos Sep 23, 2020
e01abf5
Merge pull request #5 from hbcarlos/develop
jtpio Sep 23, 2020
f0d7832
Temp pin jupyterlab_server in setup.py
jtpio Sep 23, 2020
6b5856f
Merge pull request #6 from hbcarlos/setup
jtpio Sep 23, 2020
3611cee
Remove jupyter lab build step from binder
jtpio Sep 23, 2020
4bb050a
Merge pull request #8 from hbcarlos/binder
jtpio Sep 23, 2020
9597912
Update to JupyterLab 3.0.0rc0
jtpio Sep 24, 2020
067fdb3
Merge pull request #9 from hbcarlos/unpin
jtpio Sep 24, 2020
9fd543d
Update to TypeScript 4
jtpio Sep 24, 2020
ba1d12f
Merge pull request #10 from hbcarlos/ts-4
jtpio Sep 24, 2020
aa1b0fb
Added mamba #4
hbcarlos Sep 24, 2020
4285cde
Add pre-commit hook
jtpio Sep 24, 2020
0eea72a
Merge pull request #11 from hbcarlos/pre-commit
jtpio Sep 24, 2020
13e8795
Changing readme for voila-editor
hbcarlos Sep 24, 2020
d2a3057
Merge pull request #12 from hbcarlos/develop
hbcarlos Sep 24, 2020
06f906e
Make ILayoutRestorer optional
jtpio Sep 25, 2020
664edb2
Merge pull request #14 from hbcarlos/optional-restorer
jtpio Sep 25, 2020
9639244
Build with --development by default
jtpio Sep 25, 2020
8f42a26
Merge pull request #15 from hbcarlos/build-dev
jtpio Sep 25, 2020
27c143e
Update gridstack to 2.0.1
jtpio Sep 28, 2020
20f08de
Merge pull request #16 from hbcarlos/gridstack-2-0-1
jtpio Sep 28, 2020
1b63830
Unify code style
jtpio Sep 28, 2020
269b2ed
Merge pull request #17 from hbcarlos/style-pass
jtpio Sep 28, 2020
ed328fe
Add voila to the Binder setup
jtpio Sep 28, 2020
2e32000
Add more dependencies to Binder
jtpio Sep 28, 2020
8775401
Merge pull request #19 from hbcarlos/binder-voila
jtpio Sep 28, 2020
7c4aa37
Notebook outputs
hbcarlos Sep 29, 2020
2d90017
Disable wheels build
hbcarlos Sep 29, 2020
18f1c2b
nothing
hbcarlos Sep 29, 2020
7dbeb9d
Update src/editor/panel.ts
hbcarlos Sep 29, 2020
0d2228a
Merge pull request #20 from hbcarlos/notebook
hbcarlos Sep 29, 2020
6730c7d
Refactor Cast and autoposition
hbcarlos Sep 29, 2020
049d611
Cast and signals
hbcarlos Sep 30, 2020
dd34a56
Merge pull request #22 from hbcarlos/refactor
jtpio Sep 30, 2020
c5bf31e
Update to JupyterLab rc2
jtpio Sep 30, 2020
7f12cf3
Update yarn.lock
jtpio Sep 30, 2020
1c43bb1
Merge pull request #25 from hbcarlos/rc2
jtpio Sep 30, 2020
0cfcd6e
AutoPosition new cells
hbcarlos Sep 30, 2020
a3b3b0e
Merge branch 'master' into two-gridstack
hbcarlos Sep 30, 2020
c36ec9a
Two gridstacks, run cells
hbcarlos Oct 1, 2020
a969886
Merge pull request #26 from hbcarlos/two-gridstack
hbcarlos Oct 1, 2020
0ce4be9
Height of cells in notebook view
hbcarlos Oct 5, 2020
8fbb30e
Problems how code cell
hbcarlos Oct 6, 2020
50c21b5
Problems remove item
hbcarlos Oct 7, 2020
673c221
Drag and drop to add cells to the gridstack panel
hbcarlos Oct 8, 2020
ba72eeb
Update real time of the cells
hbcarlos Oct 8, 2020
a9d4892
Merge pull request #27 from hbcarlos/notebook
hbcarlos Oct 8, 2020
0faf7d7
Drag and drop cells from a notebook
hbcarlos Oct 8, 2020
58905d8
Minor cleanup
jtpio Oct 21, 2020
ed4ccb1
Use ToolbarButtonComponent for the save icon
jtpio Oct 21, 2020
d20aa25
Use lab CSS variables
jtpio Oct 21, 2020
d5fbd79
Update to rc5
jtpio Oct 22, 2020
a3757da
Remove update cell logic for now
jtpio Oct 22, 2020
c61e176
Merge pull request #30 from hbcarlos/drag-drop-notebook
jtpio Oct 22, 2020
ffe7e79
Clean up, uptadecells and interpolate position
hbcarlos Oct 26, 2020
16c1583
Merge pull request #34 from hbcarlos/interpolate-position
hbcarlos Oct 26, 2020
6e9c646
Check cell origin before adding to gridstack
hbcarlos Oct 26, 2020
41fa2dc
Merge pull request #35 from hbcarlos/notebook-origin
hbcarlos Oct 26, 2020
c2846c6
Add remove button to cells
hbcarlos Oct 26, 2020
7198e9c
Trash can and examples
hbcarlos Oct 27, 2020
66665b4
Use LabIcon for the remove icon
jtpio Oct 28, 2020
4890991
Merge pull request #36 from hbcarlos/remove-button
jtpio Oct 28, 2020
736d89e
Bundle nested dirs in the wheel
jtpio Oct 28, 2020
2f280f1
Merge pull request #38 from hbcarlos/wheel
jtpio Oct 28, 2020
350c50f
Minor typo fix
jtpio Oct 28, 2020
3427dc1
Merge pull request #39 from hbcarlos/typo-fix
jtpio Oct 28, 2020
9e09d8a
New voila and voila editor buttons
hbcarlos Oct 29, 2020
b9d808a
Merge pull request #41 from hbcarlos/voila-button
jtpio Oct 29, 2020
bb95ae4
Update to GridStack 2.1.0
jtpio Oct 29, 2020
5e40572
Merge pull request #42 from hbcarlos/2-1-0
jtpio Oct 29, 2020
5477236
Diaolog to edit grid parameters
hbcarlos Oct 30, 2020
efbf153
Add jupyterlab_widgets to Binder
jtpio Nov 2, 2020
50d666c
Changed life cycle of gridStack widget
hbcarlos Nov 2, 2020
897a046
remove logs
hbcarlos Nov 2, 2020
d58b8c8
Merge pull request #44 from hbcarlos/binder-widgets
jtpio Nov 2, 2020
95cb357
Merge pull request #43 from hbcarlos/notebook-info
jtpio Nov 2, 2020
3def76a
Add support for rendering widgets
jtpio Oct 29, 2020
624c92f
Use widget manager from the host
jtpio Nov 3, 2020
881ec89
Update dev instructions to install widgets
jtpio Nov 4, 2020
894566e
Merge pull request #47 from hbcarlos/display-widgets
jtpio Nov 4, 2020
736d05f
Editor plugin provides a tracker of editors
jtpio Nov 4, 2020
8924472
Merge pull request #52 from hbcarlos/tracker
jtpio Nov 4, 2020
8b866ce
Move widget support to a separate plugin
jtpio Nov 4, 2020
cabb869
Merge pull request #54 from hbcarlos/widgets-plugin
jtpio Nov 5, 2020
e393b22
Changed state, layout, solved widgets, ...
hbcarlos Nov 12, 2020
7b0e53c
delete debug messages
hbcarlos Nov 12, 2020
dd19aa9
Update to rc8
jtpio Nov 13, 2020
9bbfc8c
Add install.json metadata file
jtpio Nov 13, 2020
04a0fe6
Update dependencies
jtpio Nov 13, 2020
4449bfb
Lint
jtpio Nov 13, 2020
3d65fcc
Add missing return types
jtpio Nov 13, 2020
2bc982c
Delete execute method
hbcarlos Nov 13, 2020
70c727f
Merge pull request #55 from hbcarlos/state
jtpio Nov 13, 2020
ee9f9b2
ISignal, stricNullChecks, rename and solve edit metadata issue
hbcarlos Nov 19, 2020
163944b
deleted test.ipynb
hbcarlos Nov 19, 2020
8092b31
Changed name in workflow
hbcarlos Nov 19, 2020
3ce3825
Merge pull request #57 from hbcarlos/signal
jtpio Nov 20, 2020
28dce4c
Code refactor
hbcarlos Nov 24, 2020
9ebc9a7
Merge pull request #60 from hbcarlos/refactor
jtpio Nov 24, 2020
871b69b
Add scaffolding for tests
jtpio Nov 24, 2020
153aa02
Merge pull request #61 from hbcarlos/tests
jtpio Nov 24, 2020
239efc3
Running cells
hbcarlos Nov 25, 2020
681f83d
Changing null check
hbcarlos Nov 25, 2020
5431c63
Update README.md
hbcarlos Nov 25, 2020
05d4679
Merge pull request #63 from hbcarlos/run-cells
jtpio Nov 25, 2020
8922ca5
Quick pass on typing and null checks
jtpio Nov 25, 2020
368e6d5
Merge pull request #64 from hbcarlos/null-checks
hbcarlos Nov 25, 2020
3f1f8bd
Move labextension to packages/jupyterlab-gridstack
jtpio Nov 30, 2020
e5bbafe
Fix setup.py for packages structure
jtpio Nov 30, 2020
b2d2b4b
Move tests files to packages/jupyterlab-gridstack
jtpio Nov 30, 2020
5ac2490
Bootstrap editor from the app template
jtpio Nov 30, 2020
d644f9c
Open default notebook in the editor standalone
jtpio Nov 30, 2020
52f8d00
Remove top area, restorer optional
jtpio Nov 30, 2020
135f67a
Open notebook and editor side by side
jtpio Nov 30, 2020
43d9109
Flatten the file hierarchy
jtpio Dec 1, 2020
642a3d0
Open with a command
jtpio Dec 1, 2020
6fb3ef2
Update yarn.lock
jtpio Dec 1, 2020
bc4ec8d
Update webpack config to prepare for module federation
jtpio Dec 1, 2020
b224746
Support federated extensions
jtpio Dec 1, 2020
4035fa0
Rename editor to gridstack-editor
jtpio Dec 1, 2020
6c0b888
Remove unused @types/node
jtpio Dec 1, 2020
f999f27
Add basic router to open notebooks with URL path
jtpio Dec 1, 2020
947c852
Make the notebook widget not closable
jtpio Dec 1, 2020
df03394
Allow other server extensions such as Voila
jtpio Dec 1, 2020
a71cbc7
Enable noImplicitAny
jtpio Dec 2, 2020
afd77b7
propagate drag event, change cell type, editing markdown cells
hbcarlos Dec 2, 2020
453e699
Merge pull request #66 from hbcarlos/standalone-editor
jtpio Dec 2, 2020
5ffec2c
review
hbcarlos Dec 3, 2020
e079fe3
Merge branch 'master' into contentChanged
hbcarlos Dec 3, 2020
27902dd
added watch script
hbcarlos Dec 3, 2020
d3409b9
remove elements
hbcarlos Dec 3, 2020
e9b0e02
Merge pull request #68 from hbcarlos/contentChanged
jtpio Dec 3, 2020
59ac8d0
Trigger resize events for bqplot
jtpio Dec 11, 2020
fa887b1
Send Lumino Messages to the gridstack item
jtpio Dec 14, 2020
c1f1d81
Merge pull request #71 from hbcarlos/bqplot
hbcarlos Dec 14, 2020
385155e
Rename a couple of files
jtpio Dec 15, 2020
179a9ce
Merge pull request #72 from hbcarlos/rename
jtpio Dec 15, 2020
97ff0bc
Add jupyterlab-gridstack
jtpio Dec 15, 2020
f322137
Update outputDir for jupyterlab-gridstack
jtpio Dec 15, 2020
3bc22f7
Fix data_files list in setup.py
jtpio Dec 15, 2020
52f7667
Remove the develop command on CI
jtpio Dec 15, 2020
6b3800c
Lint
jtpio Dec 15, 2020
3c44827
Check lab and classic extensions are installed on CI
jtpio Dec 15, 2020
7ddc048
Move _jupyter_labextension_paths to voila-gridstack
jtpio Dec 15, 2020
fd719a4
Add DevelopCmd back to setup.py
jtpio Dec 15, 2020
89a316f
Pin jupyter_server for the tests
jtpio Dec 15, 2020
e675923
Fix data_files
jtpio Dec 15, 2020
31f2e8b
Remove Develop command
jtpio Dec 15, 2020
0f80be3
Rename to @voila-dashboards/jupyterlab-gridstack
jtpio Dec 16, 2020
99d42d9
Combine develop cmd to symlink template files
jtpio Dec 16, 2020
27a8402
Cleanup notebooks and docstrings
jtpio Dec 16, 2020
0d5c9e3
Use skip_if_exists from jupyter-packaging
jtpio Dec 21, 2020
2b0467f
Update to JupyterLab 3.0 final
jtpio Dec 24, 2020
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
22 changes: 22 additions & 0 deletions .eslintignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
lint-staged.config.js
.eslintrc.js

node_modules
**/build
**/lib
**/node_modules
**/mock_packages
**/static
**/typings
**/schemas
**/themes
coverage
*.map.js
*.bundle.js

# jetbrains IDE stuff
.idea/

# ms IDE stuff
.history/
.vscode/
56 changes: 56 additions & 0 deletions .eslintrc.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
module.exports = {
env: {
browser: true,
es6: true,
commonjs: true,
node: true,
'jest/globals': true
},
root: true,
extends: [
'eslint:recommended',
'plugin:@typescript-eslint/eslint-recommended',
'plugin:@typescript-eslint/recommended',
'plugin:prettier/recommended',
'plugin:react/recommended',
'plugin:jest/recommended'
],
parser: '@typescript-eslint/parser',
parserOptions: {
project: 'tsconfig.eslint.json',
sourceType: 'module'
},
plugins: ['@typescript-eslint', 'jest'],
rules: {
'@typescript-eslint/naming-convention': [
'error',
{
selector: 'interface',
format: ['PascalCase'],
custom: {
regex: '^I[A-Z]',
match: true
}
}
],
'@typescript-eslint/no-unused-vars': ['warn', { args: 'none' }],
'@typescript-eslint/no-explicit-any': 'off',
'@typescript-eslint/no-namespace': 'off',
'@typescript-eslint/no-var-requires': 'off',
'@typescript-eslint/no-use-before-define': 'off',
'@typescript-eslint/no-empty-interface': 'off',
'@typescript-eslint/quotes': [
'error',
'single',
{ avoidEscape: true, allowTemplateLiterals: false }
],
curly: ['error', 'all'],
eqeqeq: 'error',
'prefer-arrow-callback': 'error'
},
settings: {
react: {
version: 'detect'
}
}
};
52 changes: 52 additions & 0 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
name: Build

on:
push:
branches: [ master ]
pull_request:
branches: '*'

jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v2

- name: Install node
uses: actions/setup-node@v1
with:
node-version: '14.x'

- name: Install Python
uses: actions/setup-python@v2
with:
python-version: '3.9'
architecture: 'x64'

- name: Install dependencies
run: |
python -m pip install --upgrade pip
python -m pip install jupyter_packaging
python -m pip install --pre jupyterlab

- name: Install the extension
run: |
python -m pip install .

- name: Check the extensions are installed
run: |
jupyter nbextension list 2>&1 | grep -ie "voila-gridstack/extension.*enabled" -
jupyter labextension list 2>&1 | grep -ie "jupyterlab-gridstack.*enabled.*ok" -
python -m jupyterlab.browser_check

- name: Lint
run: |
jlpm
jlpm run eslint:check
jlpm run prettier:check

- name: Test
run: |
jlpm run build:test
jlpm run test
118 changes: 114 additions & 4 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,6 +1,116 @@
.vscode
*.bundle.*
node_modules/
*.egg-info/
dist/
build/
.ipynb_checkpoints
.vscode
__pycache__
*.tsbuildinfo
voila-gridstack/labextension

# Created by https://www.gitignore.io/api/python
# Edit at https://www.gitignore.io/?templates=python

### Python ###
# Byte-compiled / optimized / DLL files
__pycache__/
*.py[cod]
*$py.class

# C extensions
*.so

# Distribution / packaging
.Python
build/
develop-eggs/
dist/
downloads/
eggs/
.eggs/
lib/
lib64/
parts/
sdist/
var/
wheels/
pip-wheel-metadata/
share/python-wheels/
.installed.cfg
*.egg
MANIFEST

# PyInstaller
# Usually these files are written by a python script from a template
# before PyInstaller builds the exe, so as to inject date/other infos into it.
*.manifest
*.spec

# Installer logs
pip-log.txt
pip-delete-this-directory.txt

# Unit test / coverage reports
htmlcov/
.tox/
.nox/
.coverage
.coverage.*
.cache
nosetests.xml
coverage.xml
*.cover
.hypothesis/
.pytest_cache/

# Translations
*.mo
*.pot

# Scrapy stuff:
.scrapy

# Sphinx documentation
docs/_build/

# PyBuilder
target/

# pyenv
.python-version

# celery beat schedule file
celerybeat-schedule

# SageMath parsed files
*.sage.py

# Spyder project settings
.spyderproject
.spyproject

# Rope project settings
.ropeproject

# Mr Developer
.mr.developer.cfg
.project
.pydevproject

# mkdocs documentation
/site

# mypy
.mypy_cache/
.dmypy.json
dmypy.json

# Pyre type checker
.pyre/

# OS X stuff
*.DS_Store

# End of https://www.gitignore.io/api/python

_temp_extension
junit.xml
[uU]ntitled*
121 changes: 121 additions & 0 deletions .npmignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,121 @@
################################################
############### .gitignore ##################
################################################
#
# This file is only relevant if you are using git.
#
# Files which match the splat patterns below will
# be ignored by git. This keeps random crap and
# sensitive credentials from being uploaded to
# your repository. It allows you to configure your
# app for your machine without accidentally
# committing settings which will smash the local
# settings of other developers on your team.
#
# Some reasonable defaults are included below,
# but, of course, you should modify/extend/prune
# to fit your needs!
################################################
.github
.gitignore



################################################
# Local Configuration
#
# Explicitly ignore files which contain:
#
# 1. Sensitive information you'd rather not push to
# your git repository.
# e.g., your personal API keys or passwords.
#
# 2. Environment-specific configuration
# Basically, anything that would be annoying
# to have to change every time you do a
# `git pull`
# e.g., your local development database, or
# the S3 bucket you're using for file uploads
# development.
#
################################################

config/local.js





################################################
# Dependencies
#
# When releasing a production app, you may
# consider including your node_modules and
# bower_components directory in your git repo,
# but during development, its best to exclude it,
# since different developers may be working on
# different kernels, where dependencies would
# need to be recompiled anyway.
#
# More on that here about node_modules dir:
# http://www.futurealoof.com/posts/nodemodules-in-git.html
# (credit Mikeal Rogers, @mikeal)
#
# About bower_components dir, you can see this:
# http://addyosmani.com/blog/checking-in-front-end-dependencies/
# (credit Addy Osmani, @addyosmani)
#
################################################

node_modules
bower_components




################################################
# Sails.js / Waterline / Webpack
#
# Files generated by Sails and Grunt, or related
# tasks and adapters.
################################################
.tmp
public/dist
assets.json
dump.rdb





################################################
# Node.js / NPM
#
# Common files generated by Node, NPM, and the
# related ecosystem.
################################################
lib-cov
*.seed
*.log
*.out
*.pid
npm-debug.log





################################################
# Miscellaneous
#
# Common files generated by text editors,
# operating systems, file systems, etc.
################################################

*~
*#
.DS_STORE
.netbeans
nbproject
.idea
.node_history
5 changes: 5 additions & 0 deletions .prettierignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
node_modules
**/node_modules
**/lib
**/package.json
**/static
3 changes: 3 additions & 0 deletions .prettierrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
{
"singleQuote": true
}
Loading