zoom.packages module¶
zoom.packages
Provide a simple shorthand way to include external components in projects.
-
zoom.packages.get_registered_packages()¶ Returns the list of packages known to the site
>>> import zoom.request >>> zoom.system.request = zoom.request.Request(dict(PATH_INFO='/')) >>> zoom.system.site = zoom.site.Site(zoom.system.request) >>> zoom.system.request.app = zoom.utils.Bunch(packages={})
>>> packages = get_registered_packages() >>> 'c3' in packages True
-
zoom.packages.load(pathname)¶ Load a packages file into a dict
-
zoom.packages.requires(*package_names)¶ Inform framework of the packages required for rendering
>>> import zoom.request >>> request = zoom.request.Request(dict(PATH_INFO='/')) >>> zoom.system.site = zoom.site.Site(request) >>> zoom.system.parts = zoom.Component()
>>> requires('c3') >>> libs = zoom.system.parts.parts['libs'] >>> print('\n'.join(list(libs))) https://cdnjs.cloudflare.com/ajax/libs/d3/3.5.17/d3.min.js https://cdnjs.cloudflare.com/ajax/libs/c3/0.4.15/c3.min.js
>>> zoom.system.parts = zoom.Component() >>> requires('jquery-ui') >>> libs = zoom.system.parts.parts['libs'] >>> print('\n'.join(list(libs))) //code.jquery.com/jquery-3.3.1.min.js //code.jquery.com/ui/1.12.1/jquery-ui.min.js
>>> try: ... requires('d4') ... except Exception as e: ... 'Missing required' in str(e) and 'raised!' 'raised!'