-
-
Notifications
You must be signed in to change notification settings - Fork 96
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
ES6 #1025
Conversation
78a93f5
to
303fb59
Compare
Status: first test migrated and passing:
|
Regarding plone/Products.CMFPlone#3211, have you considered giving up the dependency on jQuery? Is jQuery still providing anything useful at the end of 2020? |
@fulv yes, I did. I try to get rid of it for every pattern I have to touch. But it would take quite an effort to get this done - it's still a core dependency for Patternslib. |
update notes with infos for toolbar with icon resolver |
f8f76ed
to
7cc3573
Compare
Hi! What about addons which uses |
@yurj yes, plone.patternslib would not be necessary anymore - it's just available via ES6 imports - importing a pattern already makes it available. For pat-leaflet - that one needs an update to ES6+ support, webpack and to provide a bundle based on the module federation technology. I have some ideas of improving pat-leaflet - which I wrote some years ago. Maybe that task can someone pick at the Buschenschanksprint. Btw, @fredvd mentioned some problems with the current pat-leaflet - there will probably be some updates on pat-leaflet for Plone < 6 also be necessary. |
[ES6 refactoring, using webpack and babel. Built upon the MrTango/11tydocs branch. Depends on latest ES6yfied patternslib. Following the refactoring in https://github.com/patternslib/Patterns
Current status:
Migrated patterns are uncommented in src/patterns.js. Currently there are autodoc, backdrop, contentloader and cookietrigger. A bundle can be built but no tests are migrated and no demos are tried in the browser.
Patterns
Put your name behind the pattern name to indicate that you are owrking on this pattern!
Status:
functional | tested | responsible
filemanager>> not used anymore in core, will not be migrated by us /MrTangopickadate>> pat-datetime-picker (patterslib)thememapper >> needs update, editor only, but we will give up the Diazo rules builderControl Panels / other pattern usages
Using requirejs, should be converted into patterns inside mockup, see plone.app.portlets as an example.
Addons to be migrated
Not a precondition to merge this branch but still necessary to fix
Toolbar & Icons
Prepared markup updates using icon resolver for the toolbar pattern
https://github.com/plone/plone.app.contentmenu/tree/barceloneta-lts-svg-icons
https://github.com/plone/plone.app.layout/tree/barceloneta-lts-svg-icons
Toolbar icons are roughly defined in https://github.com/plone/plone.staticresources/blob/master/src/plone/staticresources/profiles/default/registry/icons_toolbar.xml
More info
Sprint document from the "Plone 6 Classic UI: ES6 Sprint" from 2021-09-22: https://docs.google.com/document/d/1rX2tAeDC9eZzKycVDnJUf8guTQeA0G1aHSteQgVz_TU
Contains a "How to Develop" section.
Quick note: Use
http://localhost:8000/dist/bundle.js
inhttp://localhost:8080/Plone/@@resourceregistry-controlpanel
for JavaScript to live-develop.NOTE: Tests should be moved into the patterns itself, as done in https://github.com/patternslib/Patterns.
NOTE: Use a feature branch (es6-<feature/or-username>) based on the es6 branch, while working on a pattern and rebase it from time to time.
NOTE: 1 commit per pattern please. that way it's easier to track what was done.
NOTE: there will be a lot of force-pushes along the way, so for any contributions we need coordination. I'll do pulls before force-pushes.
/cc @MrTango