コード例 #1
0
ファイル: assets.py プロジェクト: Workiva/gae-financials
def _bundle_3rd_party_js(env, debug=False):
    """Combine thrid party js libs into libs.js.

    For debug, they are left uncompressed.  For production the minified
    versions are used.  We suggest using hte vendor supplied minified version
    of each library.
    """
    JSPATH = path.join('js', 'lib')
    if debug:
        all_js = Bundle(
            path.join(JSPATH, 'json2.js'),
            path.join(JSPATH, 'jquery.js'),
            path.join(JSPATH, 'underscore.js'),
            path.join(JSPATH, 'backbone.js'),
            path.join(JSPATH, 'bootstrap.js'),
            path.join(JSPATH, 'leaflet.js'),
            path.join(JSPATH, 'bootstrap-typeahead-improved.js'),
            output=path.join('..', 'static', 'script', 'libs.js')
        )
    else:
        JSPATH = path.join(JSPATH, 'min')
        all_js = Bundle(
            path.join(JSPATH, 'json2.min.js'),
            path.join(JSPATH, 'jquery-min.js'),
            path.join(JSPATH, 'underscore-min.js'),
            path.join(JSPATH, 'backbone-min.js'),
            path.join(JSPATH, 'bootstrap-min.js'),
            path.join(JSPATH, 'leaflet-min.js'),
            path.join(JSPATH, 'bootstrap-typeahead-improved-min.js'),
            output=path.join('..', 'static', 'script', 'libs.js')
        )

    env.add(all_js)
    if debug:
        all_js.build()
コード例 #2
0
ファイル: assets.py プロジェクト: kirkboyer-wf/github-stats
def _bundle_3rd_party_js(env, debug=False):
    """Combine thrid party js libs into libs.js.

    For debug, they are left uncompressed.  For production the minified
    versions are used.  We suggest using hte vendor supplied minified version
    of each library.
    """
    JSPATH = path.join('js', 'lib')
    if debug:
        all_js = Bundle(path.join(JSPATH, 'json2.js'),
                        path.join(JSPATH, 'jquery.js'),
                        path.join(JSPATH, 'underscore.js'),
                        path.join(JSPATH, 'backbone.js'),
                        path.join(JSPATH, 'bootstrap.js'),
                        path.join(JSPATH, 'leaflet.js'),
                        path.join(JSPATH, 'bootstrap-typeahead-improved.js'),
                        output=path.join('..', 'static', 'script', 'libs.js'))
    else:
        JSPATH = path.join(JSPATH, 'min')
        all_js = Bundle(path.join(JSPATH, 'json2.min.js'),
                        path.join(JSPATH, 'jquery-min.js'),
                        path.join(JSPATH, 'underscore-min.js'),
                        path.join(JSPATH, 'backbone-min.js'),
                        path.join(JSPATH, 'bootstrap-min.js'),
                        path.join(JSPATH, 'leaflet-min.js'),
                        path.join(JSPATH,
                                  'bootstrap-typeahead-improved-min.js'),
                        output=path.join('..', 'static', 'script', 'libs.js'))

    env.add(all_js)
    if debug:
        all_js.build()
コード例 #3
0
def _bundle_3rd_party_js(app, env, debug=False):
    """Combine thrid party js libs into libs.js.

    For debug, they are left uncompressed.  For production the minified
    versions are used.  We suggest using hte vendor supplied minified version
    of each library.
    """
    JSPATH = path.join('js', 'lib')

    if debug:
        scripts = ()
        if not scripts:
            return

        all_js = Bundle(
            *scripts,
            output=path.join('..', '..', app, 'static', 'script', 'libs.js')
        )
    else:
        JSPATH = path.join(JSPATH, 'min')

        scripts = ()
        if not scripts:
            return

        all_js = Bundle(
            *scripts,
            output=path.join('..', '..', app, 'static', 'script', 'libs.js')
        )

    env.add(all_js)
    if debug:
        all_js.build()
コード例 #4
0
 def get_bundle_output(self, test_name):
     f = StringIO()
     js = Bundle('scss/%s.scss' % test_name, filters=CompassConnectorFilter, output='%s.css' % test_name)
     self.env.register(test_name, js)
     js.build(output=f)
     
     return f.getvalue()
コード例 #5
0
def _bundle_3rd_party_js(app, env, debug=False):
    """Combine thrid party js libs into libs.js.

    For debug, they are left uncompressed.  For production the minified
    versions are used.  We suggest using hte vendor supplied minified version
    of each library.
    """
    JSPATH = path.join('js', 'lib')

    if debug:
        scripts = ()
        if not scripts:
            return

        all_js = Bundle(*scripts,
                        output=path.join('..', '..', app, 'static', 'script',
                                         'libs.js'))
    else:
        JSPATH = path.join(JSPATH, 'min')

        scripts = ()
        if not scripts:
            return

        all_js = Bundle(*scripts,
                        output=path.join('..', '..', app, 'static', 'script',
                                         'libs.js'))

    env.add(all_js)
    if debug:
        all_js.build()
コード例 #6
0
    def test(self):
        bundle = Bundle("one.css", "two.css", output="styles.css")
        assets_env = create_assets_env(
            source_dir="./tests/fixtures/bundle", build_dir=self.build_dir, static_url="/", bundles={}
        )
        bundle.build(env=assets_env)

        self.assertTrue("styles.css" in os.listdir(self.build_dir))
コード例 #7
0
ファイル: __init__.py プロジェクト: cmorgia/indicopicture
 def register_tpl_bundle(self, name, *files):
     def noop(_in, out, **kw):
         out.write(_in.read())
     bundle = Bundle(*files, filters=(noop,), output='tpls/{}'.format(name))
     fileName = bundle.resolve_output(self.assets)
     if os.path.isfile(fileName):
         os.remove(fileName)
     bundle.build(self.assets,force=False,disable_cache=True)
     self.assets.register(name, bundle)
コード例 #8
0
def create_and_register_bundles(section, filter, DEPLOY):
    environment = Environment('.')
    for option in config.options(section):
        deps = [v.strip() for v in config.get(section, option).split(',')]
        log.info("%s.%s has dependencies: %s", option, section, deps)
        bndl = Bundle(*deps, filters=filter,
                      output=concat_string([DEPLOY, '/', option, '.', section]))
        environment.register(option, bndl)
        bndlgz = Bundle(*deps, filters=concat_string([filter, ', gzip']),
                      output=concat_string([DEPLOY, '/', option, '.', section, '.gz']))
        environment.register(concat_string([option, 'gz']), bndlgz)
        bndl.build()
        bndlgz.build()
コード例 #9
0
def configure_assets(flask_app):
    assets = Environment(flask_app)
    style_bundle = Bundle(
        'assets/scss/slider.scss',
        filters=
        'pyscss',  # https://webassets.readthedocs.io/en/latest/builtin_filters.html#pyscss
        output='dist/css/slider.min.css',
        extra={'rel': 'stylesheet/css'})
    assets.register('main_styles', style_bundle)
    js_bundle = Bundle(
        'assets/js/slider.js',
        'assets/js/modal.js',
        filters=
        'rjsmin',  # https://webassets.readthedocs.io/en/latest/builtin_filters.html#rjsmin
        output='dist/js/custom.min.js')
    assets.register('main_js', js_bundle)
    style_bundle.build()
    js_bundle.build()
コード例 #10
0
def compressFile(f, webFilters):
    filePath = os.path.join(webFolder, f)
    baseName = os.path.basename(filePath)
    prefix = f[0:len(f) - len(baseName)]
    fn = os.path.splitext(baseName)
    newFileName = fn[0] + '.%(version)s' + fn[1]
    env = Environment("")
    env.auto_build = False
    env.url_expire = True
    tmpFile = os.path.join(tempFolder, newFileName)
    env.url_mapping = {tempFolder: ''}
    bundle = Bundle(filePath, filters=webFilters, output=tmpFile)
    env.add(bundle)
    bundle.build()
    vfn = bundle.urls()[0][1:]
    if (vfn.index("?") > 0):
        vfn = vfn[0:vfn.index("?")]

    #print(prefix, vfn)
    zf.write(os.path.join(tempFolder, vfn), prefix + vfn)
    return prefix + vfn
コード例 #11
0
ファイル: assets.py プロジェクト: 0x1997/webassets
#!/usr/bin/env python
from os import path
from webassets import Bundle, Environment

env = Environment(path.join(path.dirname(__file__), 'static'), '/stylesheets')
# App Engine doesn't support automatic rebuilding.
env.auto_build = False
# This file needs to be shipped with your code.
env.manifest = 'file'

bundle = Bundle('in.css', filters="cssmin", output="out.css")
env.add(bundle)


if __name__== "__main__":
    # If this file is called directly, do a manual build.
    bundle.build()
コード例 #12
0
 def test_output(self):
     environment = Environment(path.dirname(__file__))
     bundle = Bundle('input.jsx', output='input.js', filters=('react',))
     environment.register('test_bundle', bundle)
     bundle.build()
コード例 #13
0
ファイル: assets.py プロジェクト: grunskis/webassets
#!/usr/bin/env python
from os import path
from webassets import Bundle, Environment

env = Environment(path.join(path.dirname(__file__), 'static'), '/stylesheets')
# App Engine doesn't support automatic rebuilding.
env.updater = False
# URL expiry not currently supported on App Engine
env.expire = False

bundle = Bundle('in.css', filters="cssmin", output="out.css")
env.add(bundle)


if __name__== "__main__":
    # If this file is called directly, do a manual build.
    bundle.build()
コード例 #14
0
    def test(self):
        bundle = Bundle('one.css', 'two.css', output='styles.css')
        assets_env = create_assets_env('./tests/fixtures/bundle', self.build_dir, {})
        bundle.build(env=assets_env)

        self.assertTrue('styles.css' in os.listdir(self.build_dir))