# plone.patternslib
An add-on to make [Patternslib](http://patternslib.com/) available to Plone 6.
## Features
Plone and Mockup depend on Patternslib and it's Patterns registry infrastructure
since quite some time already.
Since Plone 6 there are also some core Patternslib patterns exposed in Plone,
like pat-inject, pat-validation, pat-date-picker and some more.
This package completes that and makes all Patternslib patterns available in
Plone. This includes pat-auto-submit, pat-auto-suggest, pat-carousel,
pat-gallery, the fullcalendar integration pat-calendar, the wysiwyg integration
pat-tiptap, pat-upload and more.
Please note - pat-leaflet is yet not included as it is not part of the
Patternslib distribution.
There are plans to make it available in a separate package.
## Versioning scheme
The version number of plone.patternslib follows the Patternslib version numbers
with an added sub-patch level and a possible pre-release suffix.
E.g. if the Patternslib version is 9.9.16 possible plone.patternslib versions
are `9.9.16.0`, `9.9.16.0a1`, `9.9.16.1` and so on.
## Implementation
This package includes the Patternslib bundle in a resource directory.
The default profile installs the `++resource++patternslib/remote.min.js` bundle
as a Module Federation remote bundle.
The module federation main bundle in Plone is the `plone` bundle.
You can also use the `++resource++patternslib/bundle.min.js` directly, but then
you need to update the plone bundle to use `remote.min.js` instead of
`bundle.min.js`.
You can find more info on module federation here:
https://github.com/Patternslib/Patterns/blob/master/docs/developer/module-federation.md
## Limitations
Some of the Patternslib patterns have the same name like patterns in Mockup.
They are still included but not registered. The Patterns registry does not
register patterns of the same name twice.
## Examples
There are example browser views for four patterns in the browser
directory. If all went well, you can test the following patterns by
calling their browser view examples on your plone site:
- `@@pat-depends`
- `@@pat-inject`
- `@@pat-masonry`
- `@@pat-switch`
## Development
To update Patternslib to the latest released version run:
```bash
make update-patterns
```
or to update Patternslib to an arbitrary version - e.g. a pre-release:
```bash
PATTERNSLIB_VERSION=9.10.1-beta.1 make update-patterns
```
## Contribute
- Issue Tracker: <https://github.com/plone/plone.patternslib/issues>
- Source Code: <https://github.com/plone/plone.patternslib>
## Support
If you are having issues, please put them into the issue tracker.
## License
The project is licensed under the GPLv2.
# Changelog
<!-- towncrier release notes start -->
## 9.9.16 (2025-02-17)
No significant changes.
## 9.9.16.0a1 (2025-02-03)
### Breaking changes:
- Upgrade for Plone 6 and Python >= 3.9 only.
[ale, thet]
### New features:
- Update Patternslib to 9.9.16.
### Internal:
- Update configuration files.
[plone devs]
# 1.3.0 (2023-02-02)
- Update jQuery to 1.12.4 and Patternslib to 2.1.5. Fixes:
<https://github.com/plone/plone.patternslib/issues/73> (thet)
- `pat-leaflet` AJAX geoJSON feature (petschki)
# 1.2.1 (2020-11-23)
- Bugfix: Register upgrade step for the correct profile (frapell)
# 1.2.0 (2020-08-07)
- Register `pat-datetime-picker` in the resource registry. (thet)
- Restructure upgrades to follow bobtemplates.plone recommendations.
(thet)
# 1.1.1 (2020-07-10)
- Do not autoinclude ZCML (this was not needed here). (jensens)
- Fix dependency chain, depend on `Products.CMFPlone` in `setup.py`.
(jensens)
- Upgrade to pat-leaflet 1.4.0. (thet)
# 1.1.0 (2019-04-11)
- Upgrade pat-leaflet to 1.3.0. (thet)
- Remove 2nd CSS resource from Leaflet Markercluster as Plone doesn\'t
compile it properly. (thet)
- Register `pat-date-picker`. (thet)
- Update dependencies, deped on Patterns 2.1.x. (thet)
- Update to latest Patterns. (thet)
- Remove registry initialization in bundles. (cekk)
- Declare support for python 3. (vincero)
# 1.0 (2017-02-28)
- Git-un-exclude `dist` directory within the `static` folder. (thet)
- Fix font-awesome web font path. (thet)
- Fix Leaflet icon integration. (thet)
- Register resources with their uncompressed files, wherever they are
available. This helps debugging and the resource registry itself can
handle compression on it\'s own. (thet)
- Upgrade Patternslib to latest version. (thet)
- Better `pat-gallery` integration. (thet)
- Add `pat-leaflet` resources. (thet)
- Use bower to manage resources instead of Makefile script. (thet)
- Remove browserlayer and add upgrade step for removal from component
registry. (thet)
- Cleanup. (thet)
# 0.2 (2016-04-27)
- Polyfill removeDuplicateObjects so that we can use version 2.0.13 of
Patternslib with Plone/Mockup which still uses Patternslib 2.0.11.
# 0.1 (2016-04-27)
- Initial release.
Raw data
{
"_id": null,
"home_page": "https://github.com/plone/plone.patternslib",
"name": "plone.patternslib",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.9",
"maintainer_email": null,
"keywords": "Python Plone Patternslib",
"author": "Syslab.com",
"author_email": "devel@syslab.com",
"download_url": "https://files.pythonhosted.org/packages/fe/d0/27088fd6c014ecc7c4cbc58e21075822bb34cfef65c91fd2ec93bfad5855/plone_patternslib-9.9.16.tar.gz",
"platform": null,
"description": "# plone.patternslib\n\nAn add-on to make [Patternslib](http://patternslib.com/) available to Plone 6.\n\n\n## Features\n\nPlone and Mockup depend on Patternslib and it's Patterns registry infrastructure\nsince quite some time already.\nSince Plone 6 there are also some core Patternslib patterns exposed in Plone,\nlike pat-inject, pat-validation, pat-date-picker and some more.\n\nThis package completes that and makes all Patternslib patterns available in\nPlone. This includes pat-auto-submit, pat-auto-suggest, pat-carousel,\npat-gallery, the fullcalendar integration pat-calendar, the wysiwyg integration\npat-tiptap, pat-upload and more.\n\nPlease note - pat-leaflet is yet not included as it is not part of the\nPatternslib distribution.\nThere are plans to make it available in a separate package.\n\n\n## Versioning scheme\n\nThe version number of plone.patternslib follows the Patternslib version numbers\nwith an added sub-patch level and a possible pre-release suffix.\n\nE.g. if the Patternslib version is 9.9.16 possible plone.patternslib versions\nare `9.9.16.0`, `9.9.16.0a1`, `9.9.16.1` and so on.\n\n\n## Implementation\n\nThis package includes the Patternslib bundle in a resource directory.\n\nThe default profile installs the `++resource++patternslib/remote.min.js` bundle\nas a Module Federation remote bundle.\nThe module federation main bundle in Plone is the `plone` bundle.\nYou can also use the `++resource++patternslib/bundle.min.js` directly, but then\nyou need to update the plone bundle to use `remote.min.js` instead of\n`bundle.min.js`.\nYou can find more info on module federation here:\n\nhttps://github.com/Patternslib/Patterns/blob/master/docs/developer/module-federation.md\n\n\n## Limitations\n\nSome of the Patternslib patterns have the same name like patterns in Mockup.\nThey are still included but not registered. The Patterns registry does not\nregister patterns of the same name twice.\n\n\n## Examples\n\nThere are example browser views for four patterns in the browser\ndirectory. If all went well, you can test the following patterns by\ncalling their browser view examples on your plone site:\n\n- `@@pat-depends`\n- `@@pat-inject`\n- `@@pat-masonry`\n- `@@pat-switch`\n\n\n## Development\n\nTo update Patternslib to the latest released version run:\n\n```bash\nmake update-patterns\n```\n\nor to update Patternslib to an arbitrary version - e.g. a pre-release:\n\n```bash\nPATTERNSLIB_VERSION=9.10.1-beta.1 make update-patterns\n```\n\n## Contribute\n\n- Issue Tracker: <https://github.com/plone/plone.patternslib/issues>\n- Source Code: <https://github.com/plone/plone.patternslib>\n\n\n## Support\n\nIf you are having issues, please put them into the issue tracker.\n\n\n## License\n\nThe project is licensed under the GPLv2.\n\n\n# Changelog\n\n<!-- towncrier release notes start -->\n\n## 9.9.16 (2025-02-17)\n\nNo significant changes.\n\n\n## 9.9.16.0a1 (2025-02-03)\n\n### Breaking changes:\n\n- Upgrade for Plone 6 and Python >= 3.9 only.\n [ale, thet]\n\n### New features:\n\n- Update Patternslib to 9.9.16.\n\n### Internal:\n\n- Update configuration files.\n [plone devs]\n\n\n# 1.3.0 (2023-02-02)\n\n- Update jQuery to 1.12.4 and Patternslib to 2.1.5. Fixes:\n <https://github.com/plone/plone.patternslib/issues/73> (thet)\n- `pat-leaflet` AJAX geoJSON feature (petschki)\n\n# 1.2.1 (2020-11-23)\n\n- Bugfix: Register upgrade step for the correct profile (frapell)\n\n# 1.2.0 (2020-08-07)\n\n- Register `pat-datetime-picker` in the resource registry. (thet)\n- Restructure upgrades to follow bobtemplates.plone recommendations.\n (thet)\n\n# 1.1.1 (2020-07-10)\n\n- Do not autoinclude ZCML (this was not needed here). (jensens)\n- Fix dependency chain, depend on `Products.CMFPlone` in `setup.py`.\n (jensens)\n- Upgrade to pat-leaflet 1.4.0. (thet)\n\n# 1.1.0 (2019-04-11)\n\n- Upgrade pat-leaflet to 1.3.0. (thet)\n- Remove 2nd CSS resource from Leaflet Markercluster as Plone doesn\\'t\n compile it properly. (thet)\n- Register `pat-date-picker`. (thet)\n- Update dependencies, deped on Patterns 2.1.x. (thet)\n- Update to latest Patterns. (thet)\n- Remove registry initialization in bundles. (cekk)\n- Declare support for python 3. (vincero)\n\n# 1.0 (2017-02-28)\n\n- Git-un-exclude `dist` directory within the `static` folder. (thet)\n- Fix font-awesome web font path. (thet)\n- Fix Leaflet icon integration. (thet)\n- Register resources with their uncompressed files, wherever they are\n available. This helps debugging and the resource registry itself can\n handle compression on it\\'s own. (thet)\n- Upgrade Patternslib to latest version. (thet)\n- Better `pat-gallery` integration. (thet)\n- Add `pat-leaflet` resources. (thet)\n- Use bower to manage resources instead of Makefile script. (thet)\n- Remove browserlayer and add upgrade step for removal from component\n registry. (thet)\n- Cleanup. (thet)\n\n# 0.2 (2016-04-27)\n\n- Polyfill removeDuplicateObjects so that we can use version 2.0.13 of\n Patternslib with Plone/Mockup which still uses Patternslib 2.0.11.\n\n# 0.1 (2016-04-27)\n\n- Initial release.\n",
"bugtrack_url": null,
"license": "GPL version 2",
"summary": "An add-on to make Patternslib available to Plone.",
"version": "9.9.16",
"project_urls": {
"Homepage": "https://github.com/plone/plone.patternslib"
},
"split_keywords": [
"python",
"plone",
"patternslib"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "7ec1c76736a4f470a718906cd7b9c71f7a998b20ba89bce78124dfd023bb1969",
"md5": "acae104eac36936ded83e555fada3d86",
"sha256": "a966fd0005994073945cc8c850226f6e52a58e9e436661770570a851447c095e"
},
"downloads": -1,
"filename": "plone.patternslib-9.9.16-py3-none-any.whl",
"has_sig": false,
"md5_digest": "acae104eac36936ded83e555fada3d86",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.9",
"size": 6363190,
"upload_time": "2025-02-17T10:28:22",
"upload_time_iso_8601": "2025-02-17T10:28:22.954019Z",
"url": "https://files.pythonhosted.org/packages/7e/c1/c76736a4f470a718906cd7b9c71f7a998b20ba89bce78124dfd023bb1969/plone.patternslib-9.9.16-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "fed027088fd6c014ecc7c4cbc58e21075822bb34cfef65c91fd2ec93bfad5855",
"md5": "e0bb33b86ba0bb39602a9a7b4f9f90d5",
"sha256": "cd71d3bf7a56c1c1b34096902697f7ca19e5422fe06fa21057961159f569afa9"
},
"downloads": -1,
"filename": "plone_patternslib-9.9.16.tar.gz",
"has_sig": false,
"md5_digest": "e0bb33b86ba0bb39602a9a7b4f9f90d5",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.9",
"size": 5438254,
"upload_time": "2025-02-17T10:28:30",
"upload_time_iso_8601": "2025-02-17T10:28:30.487213Z",
"url": "https://files.pythonhosted.org/packages/fe/d0/27088fd6c014ecc7c4cbc58e21075822bb34cfef65c91fd2ec93bfad5855/plone_patternslib-9.9.16.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-02-17 10:28:30",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "plone",
"github_project": "plone.patternslib",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"tox": true,
"lcname": "plone.patternslib"
}