diff --git a/.babelrc b/.babelrc new file mode 100644 index 0000000..30366ba --- /dev/null +++ b/.babelrc @@ -0,0 +1,3 @@ +{ + "presets": ['es2015', 'react'] +} \ No newline at end of file diff --git a/.bowerrc b/.bowerrc deleted file mode 100644 index 69fad35..0000000 --- a/.bowerrc +++ /dev/null @@ -1,3 +0,0 @@ -{ - "directory": "bower_components" -} diff --git a/.editorconfig b/.editorconfig deleted file mode 100644 index c2cdfb8..0000000 --- a/.editorconfig +++ /dev/null @@ -1,21 +0,0 @@ -# EditorConfig helps developers define and maintain consistent -# coding styles between different editors and IDEs -# editorconfig.org - -root = true - - -[*] - -# Change these settings to your own preference -indent_style = space -indent_size = 2 - -# We recommend you to keep these unchanged -end_of_line = lf -charset = utf-8 -trim_trailing_whitespace = true -insert_final_newline = true - -[*.md] -trim_trailing_whitespace = false diff --git a/.gitattributes b/.gitattributes index 2125666..fcedec9 100644 --- a/.gitattributes +++ b/.gitattributes @@ -1 +1,2 @@ -* text=auto \ No newline at end of file +docs/* linguist-documentation +dist/* linguist-vendored \ No newline at end of file diff --git a/.gitignore b/.gitignore index d2ac02c..b4dac1f 100644 --- a/.gitignore +++ b/.gitignore @@ -1,7 +1,7 @@ +npm-debug.log node_modules -.tmp -.sass-cache -bower_components/* .DS_Store -!bower_components/saveSvgAsPng +test/coverage/* + +*.js.map \ No newline at end of file diff --git a/.jshintrc b/.jshintrc deleted file mode 100644 index 40377ba..0000000 --- a/.jshintrc +++ /dev/null @@ -1,24 +0,0 @@ -{ - "node": true, - "browser": true, - "esnext": true, - "bitwise": true, - "camelcase": true, - "curly": true, - "eqeqeq": true, - "immed": true, - "indent": 2, - "latedef": true, - "newcap": true, - "noarg": true, - "quotmark": "single", - "regexp": true, - "undef": true, - "unused": true, - "strict": true, - "trailing": true, - "smarttabs": true, - "globals": { - "angular": false - } -} diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index a80b6e0..0000000 --- a/.travis.yml +++ /dev/null @@ -1,6 +0,0 @@ -language: node_js -node_js: - - '0.10' -before_script: - - 'npm install -g bower grunt-cli' - - 'bower install' diff --git a/Gemfile b/Gemfile deleted file mode 100644 index 33403b1..0000000 --- a/Gemfile +++ /dev/null @@ -1,3 +0,0 @@ -source "https://rubygems.org" - -gem 'compass', "1.0.3" diff --git a/Gemfile.lock b/Gemfile.lock deleted file mode 100644 index 85803bb..0000000 --- a/Gemfile.lock +++ /dev/null @@ -1,28 +0,0 @@ -GEM - remote: https://rubygems.org/ - specs: - chunky_png (1.3.4) - compass (1.0.3) - chunky_png (~> 1.2) - compass-core (~> 1.0.2) - compass-import-once (~> 1.0.5) - rb-fsevent (>= 0.9.3) - rb-inotify (>= 0.9) - sass (>= 3.3.13, < 3.5) - compass-core (1.0.3) - multi_json (~> 1.0) - sass (>= 3.3.0, < 3.5) - compass-import-once (1.0.5) - sass (>= 3.2, < 3.5) - ffi (1.9.8) - multi_json (1.11.1) - rb-fsevent (0.9.5) - rb-inotify (0.9.5) - ffi (>= 0.5.0) - sass (3.4.14) - -PLATFORMS - ruby - -DEPENDENCIES - compass (= 1.0.3) diff --git a/Gruntfile.js b/Gruntfile.js deleted file mode 100644 index 5be6ef0..0000000 --- a/Gruntfile.js +++ /dev/null @@ -1,463 +0,0 @@ -// Generated on 2014-10-30 using generator-angular 0.9.8 -'use strict'; - -// # Globbing -// for performance reasons we're only matching one level down: -// 'test/spec/{,*/}*.js' -// use this if you want to recursively match all subfolders: -// 'test/spec/**/*.js' - -module.exports = function (grunt) { - - // Load grunt tasks automatically - require('load-grunt-tasks')(grunt); - - // Time how long tasks take. Can help when optimizing build times - require('time-grunt')(grunt); - - // Configurable paths for the application - var appConfig = { - app: require('./bower.json').appPath || 'app', - dist: 'dist' - }; - - // Define the configuration for all the tasks - grunt.initConfig({ - - // Project settings - yeoman: appConfig, - - // Watches files for changes and runs tasks based on the changed files - watch: { - bower: { - files: ['bower.json'], - tasks: ['wiredep'] - }, - js: { - files: ['<%= yeoman.app %>/scripts/{,*/}*.js'], - tasks: ['newer:jshint:all'], - options: { - livereload: '<%= connect.options.livereload %>' - } - }, - jsTest: { - files: ['test/spec/{,*/}*.js'], - tasks: ['newer:jshint:test', 'karma'] - }, - compass: { - files: ['<%= yeoman.app %>/styles/{,*/}*.{scss,sass}'], - tasks: ['compass:server', 'autoprefixer'] - }, - gruntfile: { - files: ['Gruntfile.js'] - }, - livereload: { - options: { - livereload: '<%= connect.options.livereload %>' - }, - files: [ - '<%= yeoman.app %>/{,*/}*.html', - '.tmp/styles/{,*/}*.css', - '<%= yeoman.app %>/images/{,*/}*.{png,jpg,jpeg,gif,webp,svg}' - ] - } - }, - - // The actual grunt server settings - connect: { - options: { - port: 9000, - // Change this to '0.0.0.0' to access the server from outside. - hostname: 'localhost', - livereload: 35729 - }, - livereload: { - options: { - open: true, - middleware: function (connect) { - return [ - connect.static('.tmp'), - connect().use( - '/bower_components', - connect.static('./bower_components') - ), - connect.static(appConfig.app) - ]; - } - } - }, - test: { - options: { - port: 9001, - middleware: function (connect) { - return [ - connect.static('.tmp'), - connect.static('test'), - connect().use( - '/bower_components', - connect.static('./bower_components') - ), - connect.static(appConfig.app) - ]; - } - } - }, - dist: { - options: { - open: true, - base: '<%= yeoman.dist %>' - } - } - }, - - // Make sure code styles are up to par and there are no obvious mistakes - jshint: { - options: { - jshintrc: '.jshintrc', - reporter: require('jshint-stylish') - }, - all: { - src: [ - 'Gruntfile.js', - '<%= yeoman.app %>/scripts/{,*/}*.js' - ] - }, - test: { - options: { - jshintrc: 'test/.jshintrc' - }, - src: ['test/spec/{,*/}*.js'] - } - }, - - // Empties folders to start fresh - clean: { - dist: { - files: [{ - dot: true, - src: [ - '.tmp', - '<%= yeoman.dist %>/{,*/}*', - '!<%= yeoman.dist %>/.git*' - ] - }] - }, - server: '.tmp' - }, - - // Add vendor prefixed styles - autoprefixer: { - options: { - browsers: ['last 1 version'] - }, - dist: { - files: [{ - expand: true, - cwd: '.tmp/styles/', - src: '{,*/}*.css', - dest: '.tmp/styles/' - }] - } - }, - - // Automatically inject Bower components into the app - wiredep: { - app: { - src: ['<%= yeoman.app %>/index.html'], - ignorePath: /\.\.\// - }, - sass: { - src: ['<%= yeoman.app %>/styles/{,*/}*.{scss,sass}'], - ignorePath: /(\.\.\/){1,2}bower_components\// - } - }, - - // Compiles Sass to CSS and generates necessary files if requested - compass: { - options: { - sassDir: '<%= yeoman.app %>/styles', - cssDir: '.tmp/styles', - generatedImagesDir: '.tmp/images/generated', - imagesDir: '<%= yeoman.app %>/images', - javascriptsDir: '<%= yeoman.app %>/scripts', - fontsDir: '<%= yeoman.app %>/styles/fonts', - importPath: './bower_components', - httpImagesPath: '/images', - httpGeneratedImagesPath: '/images/generated', - httpFontsPath: '/styles/fonts', - relativeAssets: false, - assetCacheBuster: false, - raw: 'Sass::Script::Number.precision = 10\n' - }, - dist: { - options: { - generatedImagesDir: '<%= yeoman.dist %>/images/generated' - } - }, - server: { - options: { - debugInfo: true - } - } - }, - - // Renames files for browser caching purposes - filerev: { - dist: { - src: [ - '<%= yeoman.dist %>/scripts/{,*/}*.js', - '<%= yeoman.dist %>/styles/{,*/}*.css', - '<%= yeoman.dist %>/images/{,*/}*.{png,jpg,jpeg,gif,webp,svg}', - '<%= yeoman.dist %>/styles/fonts/*' - ] - } - }, - - // Reads HTML for usemin blocks to enable smart builds that automatically - // concat, minify and revision files. Creates configurations in memory so - // additional tasks can operate on them - useminPrepare: { - html: '<%= yeoman.app %>/index.html', - options: { - dest: '<%= yeoman.dist %>', - flow: { - html: { - steps: { - js: ['concat', 'uglifyjs'], - css: ['cssmin'] - }, - post: {} - } - } - } - }, - - // Performs rewrites based on filerev and the useminPrepare configuration - usemin: { - html: ['<%= yeoman.dist %>/{,*/}*.html'], - css: ['<%= yeoman.dist %>/styles/{,*/}*.css'], - options: { - assetsDirs: ['<%= yeoman.dist %>','<%= yeoman.dist %>/images'] - } - }, - - // The following *-min tasks will produce minified files in the dist folder - // By default, your `index.html`'s will take care of - // minification. These next options are pre-configured if you do not wish - // to use the Usemin blocks. - // cssmin: { - // dist: { - // files: { - // '<%= yeoman.dist %>/styles/main.css': [ - // '.tmp/styles/{,*/}*.css' - // ] - // } - // } - // }, - // uglify: { - // dist: { - // files: { - // '<%= yeoman.dist %>/scripts/scripts.js': [ - // '<%= yeoman.dist %>/scripts/scripts.js' - // ] - // } - // } - // }, - // concat: { - // dist: {} - // }, - - imagemin: { - dist: { - files: [{ - expand: true, - cwd: '<%= yeoman.app %>/images', - src: '{,*/}*.{png,jpg,jpeg,gif}', - dest: '<%= yeoman.dist %>/images' - }] - } - }, - - svgmin: { - dist: { - files: [{ - expand: true, - cwd: '<%= yeoman.app %>/images', - src: '{,*/}*.svg', - dest: '<%= yeoman.dist %>/images' - }] - } - }, - - htmlmin: { - dist: { - options: { - collapseWhitespace: true, - conservativeCollapse: true, - collapseBooleanAttributes: true, - removeCommentsFromCDATA: true, - removeOptionalTags: true - }, - files: [{ - expand: true, - cwd: '<%= yeoman.dist %>', - src: ['*.html', 'views/{,*/}*.html'], - dest: '<%= yeoman.dist %>' - }] - } - }, - - // ng-annotate tries to make the code safe for minification automatically - // by using the Angular long form for dependency injection. - ngAnnotate: { - dist: { - files: [{ - expand: true, - cwd: '.tmp/concat/scripts', - src: ['*.js', '!oldieshim.js'], - dest: '.tmp/concat/scripts' - }] - } - }, - - // Replace Google CDN references - cdnify: { - dist: { - html: ['<%= yeoman.dist %>/*.html'] - } - }, - - // Copies remaining files to places other tasks can use - copy: { - dist: { - files: [{ - expand: true, - dot: true, - cwd: '<%= yeoman.app %>', - dest: '<%= yeoman.dist %>', - src: [ - '*.{ico,png,txt}', - '.htaccess', - '*.html', - 'views/{,*/}*.html', - 'images/{,*/}*.{webp}', - 'fonts/*', - 'themes.config.json' - ] - }, { - expand: true, - cwd: '.tmp/images', - dest: '<%= yeoman.dist %>/images', - src: ['generated/*'] - }, { - expand: true, - cwd: '.', - src: 'bower_components/bootstrap-sass-official/assets/fonts/bootstrap/*', - dest: '<%= yeoman.dist %>' - }, { - expand: true, - dot: true, - cwd: 'bower_components/fontawesome', - src: ['fonts/*.*'], - dest: '<%= yeoman.dist %>' - }] - }, - styles: { - expand: true, - cwd: '<%= yeoman.app %>/styles', - dest: '.tmp/styles/', - src: '{,*/}*.css' - } - }, - - // Run some tasks in parallel to speed up the build process - concurrent: { - server: [ - 'compass:server' - ], - test: [ - 'compass' - ], - dist: [ - 'compass:dist', - 'imagemin', - 'svgmin' - ] - }, - - // Test settings - karma: { - unit: { - configFile: 'test/karma.conf.js', - singleRun: true - } - }, - - buildcontrol: { - options: { - dir: 'dist', - commit: true, - push: true, - message: 'Built %sourceName% from commit %sourceCommit% on branch %sourceBranch%' - }, - pages: { - options: { - remote: 'git@github.com:times/cardkit.git', - branch: 'gh-pages' - } - }, - } - }); - - - grunt.registerTask('serve', 'Compile then start a connect web server', function (target) { - if (target === 'dist') { - return grunt.task.run(['build', 'connect:dist:keepalive']); - } - - grunt.task.run([ - 'clean:server', - 'wiredep', - 'concurrent:server', - 'autoprefixer', - 'connect:livereload', - 'watch' - ]); - }); - - grunt.registerTask('server', 'DEPRECATED TASK. Use the "serve" task instead', function (target) { - grunt.log.warn('The `server` task has been deprecated. Use `grunt serve` to start a server.'); - grunt.task.run(['serve:' + target]); - }); - - grunt.registerTask('test', [ - 'clean:server', - 'concurrent:test', - 'autoprefixer', - 'connect:test', - 'karma' - ]); - - grunt.registerTask('build', [ - 'clean:dist', - 'wiredep', - 'useminPrepare', - 'concurrent:dist', - 'autoprefixer', - 'concat', - 'ngAnnotate', - 'copy:dist', - 'cdnify', - 'cssmin', - 'uglify', - 'filerev', - 'usemin', - 'htmlmin' - ]); - - grunt.registerTask('default', [ - 'newer:jshint', - 'test', - 'build' - ]); -}; diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..8151162 --- /dev/null +++ b/LICENSE @@ -0,0 +1,8 @@ +The MIT License (MIT) +Copyright (c) 2016 Times Newspapers Limited + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. \ No newline at end of file diff --git a/README.md b/README.md index 0674d7f..f0a47e6 100644 --- a/README.md +++ b/README.md @@ -1,61 +1,231 @@ -# CardKit +# CardKit 2 -[![Join the chat at https://gitter.im/times/cardkit](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/times/cardkit?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) +A simple, powerful and fully configurable image editor for web browers and servers. Optional UI included. -## Version 1.1.1 +CardKit 2 has three main parts: -### 2016 [Chris Hutchinson](http://www.github.com/chrishutchinson) for The [Times and Sunday Times](http://www.github.com/times) +- [`CardKit`](#cardkit): The core library, that manages and maintains the configuration object which defines the structure and options of a card +- [`CardKitDOM`](#cardkitdom): A DOM renderer, that takes an instance of CardKit and renders either a standalone image, or a pre-packaged UI for editing the image +- [`CardKitServer`](#cardkitserver): A server renderer, that allows you to take an instance of CardKit and render it into an image on a Node.js server -CardKit is flexible, SVG image / card creation tool, with simple configuration options, which is easy to extend. +Additionally, a base class allows you to create your own renderers. See more in the [Custom Renderers](#custom-renderers) section. -![CardKit Usage](demo.gif) - +## Installation -CardKit is aimed at newsrooms, however has many potential uses that extend beyond that: +`$ npm install cardkit --save` -- Coupon and offer images -- Templated asset generation -- Video preview images (e.g. 16:9) -- Educational resources -- Marketing and promotion -- Personal branding -## Twitter +## Running locally -Follow [@CardKit](http://www.twitter.com/cardkit) on Twitter for the latest news, updates and tutorials. +To run a sample UI locally, run: `$ npm start` -## Project origins +You can optionally pass a port like so: `$ npm start -- --port=8080` -You can find out more about the origins of CardKit [here](https://medium.com/digital-times/how-we-used-an-open-source-meme-generator-to-promote-our-journalism-a0f963aa7465). -## Roadmap +## Configuring -See `ROADMAP.md`. +See the Wiki for all the available options for your configuration. -## Setup, configuration and deployment -See the [CardKit Wiki](https://github.com/times/cardkit/wiki) for guides on how to build with CardKit +## Usage -#### Push to `gh-pages` +#### Browser with Webpack / Browserify usage + + // Load CardKit and CardKit DOM + const CardKit = require('cardkit'); + const CardKitDOM = require('cardkit/dom'); + + // Base configuration object - see `./examples/configurations` for examples + var configuration = {}; -If you want to use [GitHub Pages](https://pages.github.com/) to host your build of CardKit, follow this to push your `/dist` folder: https://gist.github.com/cobyism/4730490 + // Optional themes object - see `./examples/configurations` for examples + var themes = {}; -## Version history + // Optional layouts object - see `./examples/configurations` for examples + var layouts = {}; -**1.1.1** (June 12, 2016) + // Initialise CardKit + var cardkit = new CardKit(configuration, { + themes: themes, + layouts: layouts + }); -- Fix: Hover rectangle is now removed correctly in all cases (#45 - thanks @satotake) + // Initialise Renderer + var renderer = new CardKitDOM(cardkit); -**1.1.0** (February 22, 2016) + // To render the card only (with optional theme / layout overrides) + renderer.renderCard('card', { + theme: 'Alt', + layout: 'Square' + }); -- Add support for images to be editable via a drop down, as well as through file upload -- Allow dragging to be locked to a single direction through configuration -- Allow themes and sizes to have a default set -- Enable element attaching on the Y-axis, so that elements can be attached to elements above them, and move as they expand -- Add a configuration options to add a bounding-box when dragging elements, to give an understanding of their size -- Add support for variable line height, defined in the configuration object + // OR To render the editing UI + renderer.renderUI('card'); -**1.0.0** +#### Browser with ` + -- Initial release + + + + + +
+ + + + +#### Server usage + + // Require CardKit and CardKitServer + const CardKit = require('cardkit'); + const CardKitServer = require('cardkit/server'); + + // Base configuration object - see `./examples/configurations` for examples + const configuration = {}; + + // Initialise CardKit + const cardkit = new CardKit(configuration); + + // Initialise Renderer + var renderer = new CardKitServer(cardkit); + + // Render to image + renderer.renderToImage(2) + .then((image) => { + // Do what you want with the image here... + console.log(''); + process.exit(); + }) + .catch((e) => { + console.log('[ERR]', e); + process.exit(); + }); + + +## APIs + +### CardKit + +#### `new CardKit(configuration, options)` + +> Initialisation. Pass in a required configuration object, and optional themes, templates and layouts + +#### `cardkit.updateConfiguration(configuration, options, rerender)` + +> Updates the configuration in your instance of CardKit. Can optionally rerender with a flag if previously rendered (supported in CardKitDOM). + +#### `cardkit.computeConfiguration(options)` + +> Computes a configuaration object, optionally accepting a named template, theme and layout. These get merged into the base configuration and returned. + + +### CardKitDOM + +#### `new CardKitDOM(cardkit)` + +> Accepts an instance of CardKit and initialises the renderer + +#### `cardkit.renderUI(id, overrides)` + +> Renders the include user interface to the specified DOM element + +#### `cardkit.renderCard(id)` + +> Renders just the card in it's SVG form to the specified DOM element + +#### `cardkit.rerender()` + +> Will re-render the existing UI or card + +#### `cardkit.download(scale, element)` + +> Downloads the image to your local machine. Accepts a scale (default=2), and an element to grab from. If not provided it will fall back to the existing card being rendererd (if `renderCard()` was used). + + +### CardKitServer + +#### `new CardKitDOM(cardkit)` + +> Accepts an instance of CardKit and initialises the renderer + +#### `cardkit.renderToString()` + +> Renders the card to a HTML string (e.g. ``) + +#### `cardkit.renderToImage(scale)` + +> Renders the card to an image returning a Promise containing the image as a base64 string + + +## Custom Renderers + +A base class `CardKitRenderer` allows you to create your own renderer for CardKit. For example, CardKitDOM currently uses SVG to create the card, and React to render the UI. You may, however, wish to render your card using HTML canvas, or build a UI using Vue.js. Creating a custom renderer is a good way to achieve this. Below is a brief example of how you might achieve this: + + class CardKitCanvas extends CardKitRenderer { + + renderCard () { + // Canvas-specific code here + } + + rerender () { // A method that `CardKit` calls if the base configuration object is updated + // Handle an update to the base configuration, e.g. you may want to re-render the canvas element here + } + + yourCustomMethod () { + // You can implement any custom methods here, for example you may wish to expose or manipulate the element for other users to take advantage of + } + + } + + const cardkit = new CardKit(configuration); + + const renderer = new CardKitCanvas(cardkit); + + renderer.yourCustomMethod(); + + +## Custom Fonts + +CardKit allows you to load in custom fonts for use on your cards, see the Wiki for details. These need to be encoded into base64 format. If you wish to use a Google font, you can use the [googlefontcss64](https://www.npmjs.com/package/googlefontcss64) library to generate a base64 version of any Google font. + + +## Upgrading from v1.x + +Upgrading from v1.x to v2 should be a fairly straightforward process if you haven't made any major modifications to the v1.x user interface. Your configuration object from v1.x should be compatible with v2 with a few minor tweaks. Specific variations are available in the Wiki. + + +## Tests + +To trigger the test suite, run `$ npm run test` \ No newline at end of file diff --git a/ROADMAP.md b/ROADMAP.md deleted file mode 100644 index 30d2509..0000000 --- a/ROADMAP.md +++ /dev/null @@ -1,5 +0,0 @@ -# CardKit Roadmap - -## v1.0.0 - -See the 1.0.0 milestone in GitHub [here](https://github.com/times/cardkit/milestones/1.0.0). \ No newline at end of file diff --git a/app/.buildignore b/app/.buildignore deleted file mode 100644 index fc98b8e..0000000 --- a/app/.buildignore +++ /dev/null @@ -1 +0,0 @@ -*.coffee \ No newline at end of file diff --git a/app/404.html b/app/404.html deleted file mode 100644 index ec98e3c..0000000 --- a/app/404.html +++ /dev/null @@ -1,157 +0,0 @@ - - - - - Page Not Found :( - - - -
-

Not found :(

-

Sorry, but the page you were trying to view does not exist.

-

It looks like this was the result of either:

-
    -
  • a mistyped address
  • -
  • an out-of-date link
  • -
- - -
- - diff --git a/app/demo.themes.config.json b/app/demo.themes.config.json deleted file mode 100644 index ee10ac1..0000000 --- a/app/demo.themes.config.json +++ /dev/null @@ -1,16 +0,0 @@ -[{ - "name": "CardKit #1", - "background": "#FFFFFF", - "headline": "#3a3a3a", - "quote": "#3a3a3a", - "headlineFont": "\"Open Sans\", Helvetica, sans-serif", - "logoSrc": "data:image/png;base64,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" -}, { - "name": "CardKit #2", - "default": true, - "background": "#48a5be", - "headline": "#FFFFFF", - "quote": "#FFFFFF", - "headlineFont": "\"Open Sans\", Helvetica, sans-serif", - "logoSrc": "data:image/png;base64,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" -}] diff --git a/app/favicon.ico b/app/favicon.ico deleted file mode 100644 index 6527905..0000000 Binary files a/app/favicon.ico and /dev/null differ diff --git a/app/index.html b/app/index.html deleted file mode 100644 index 12d2877..0000000 --- a/app/index.html +++ /dev/null @@ -1,87 +0,0 @@ - - - - - CardKit - From The Times and Sunday Times - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/app/robots.txt b/app/robots.txt deleted file mode 100644 index 9417495..0000000 --- a/app/robots.txt +++ /dev/null @@ -1,3 +0,0 @@ -# robotstxt.org - -User-agent: * diff --git a/app/scripts/app.js b/app/scripts/app.js deleted file mode 100644 index 2c6a77b..0000000 --- a/app/scripts/app.js +++ /dev/null @@ -1,40 +0,0 @@ -'use strict'; - -/** - * @ngdoc overview - * @name cardkitApp - * @description - * # cardkitApp - * - * Main module of the application. - */ -angular - .module('cardkitApp', [ - 'ngAnimate', - 'ngCookies', - 'ngResource', - 'ngRoute', - 'ngSanitize', - 'ngTouch', - 'colorpicker.module', - 'draganddrop', - 'colorpicker.module', - 'ui.router' - ]) - .config(function ($stateProvider, $urlRouterProvider) { - // For any unmatched url, redirect to / - $urlRouterProvider.otherwise('/'); - - // Now set up the states - $stateProvider - .state('index', { - url: '/', - controller: 'MainCtrl', - templateUrl: 'views/main.html', - resolve: { - themeConfig: function(themeConfigProvider) { - return themeConfigProvider; - } - } - }); - }); diff --git a/app/scripts/controllers/main.js b/app/scripts/controllers/main.js deleted file mode 100644 index 76761e6..0000000 --- a/app/scripts/controllers/main.js +++ /dev/null @@ -1,330 +0,0 @@ -'use strict'; - -/** - * @ngdoc function - * @name cardkitApp.controller:MainCtrl - * @description - * # MainCtrl - * Controller of the cardkitApp - */ -angular.module('cardkitApp') - .controller('MainCtrl', function ($scope, $filter, saveSvgAsPng, themeConfig) { - - $scope.config = { - sizes: [ - { - name: 'Facebook', - width: 800, - height: 370, - default: true - }, - { - name: 'Twitter', - width: 650, - height: 320, - }, - { - name: 'Video', - width: 640, - height: 360, - }, - ], - themes: themeConfig, - output: { - scale: 2, - editable: { - scale: true - } - }, - svg: { - canvas: { - height: function() { - return $scope.size.height; - }, - width: function() { - return $scope.size.width; - }, - fill: 'transparent' - }, - elements: { - background: { - name: 'Background Colour', - type: 'rect', - height: function() { - return $scope.size.height; - }, - width: function() { - return $scope.size.width; - }, - fill: function() { - return $scope.theme.background; - }, - editable: { - fill: 'picker' - } - }, - image: { - name: 'Image', - type: 'image', - width: 600, - height: function() { - return this.width; - }, - src: '', - opacity: 1, - x: '0%', - y: '0%', - preserveAspectRatio: 'xMinYMin meet', - draggable: true, - defaultFilter: '', - editable: { - src: true, - width: true, - opacity: true, - filters: [ - 'Sepia', - 'Grayscale', - 'Saturate', - 'Invert', - 'Blur' - ], - } - }, - logo: { - name: 'Logo', - type: 'image', - width: 150, - height: function() { - return this.width/4; - }, - opacity: 1, - src: function() { - return $scope.theme.logoSrc; - }, - x: 20, - y: function() { - return $scope.size.height - 58; - }, - preserveAspectRatio: 'xMinYMin meet', - editable: { - src: { - 'Blue': 'data:image/png;base64,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', - 'Dark': 'data:image/png;base64,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', - 'White': 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAfQAAAB+CAYAAADSiuOAAAAACXBIWXMAAAsTAAALEwEAmpwYAAAKT2lDQ1BQaG90b3Nob3AgSUNDIHByb2ZpbGUAAHjanVNnVFPpFj333vRCS4iAlEtvUhUIIFJCi4AUkSYqIQkQSoghodkVUcERRUUEG8igiAOOjoCMFVEsDIoK2AfkIaKOg6OIisr74Xuja9a89+bN/rXXPues852zzwfACAyWSDNRNYAMqUIeEeCDx8TG4eQuQIEKJHAAEAizZCFz/SMBAPh+PDwrIsAHvgABeNMLCADATZvAMByH/w/qQplcAYCEAcB0kThLCIAUAEB6jkKmAEBGAYCdmCZTAKAEAGDLY2LjAFAtAGAnf+bTAICd+Jl7AQBblCEVAaCRACATZYhEAGg7AKzPVopFAFgwABRmS8Q5ANgtADBJV2ZIALC3AMDOEAuyAAgMADBRiIUpAAR7AGDIIyN4AISZABRG8lc88SuuEOcqAAB4mbI8uSQ5RYFbCC1xB1dXLh4ozkkXKxQ2YQJhmkAuwnmZGTKBNA/g88wAAKCRFRHgg/P9eM4Ors7ONo62Dl8t6r8G/yJiYuP+5c+rcEAAAOF0ftH+LC+zGoA7BoBt/qIl7gRoXgugdfeLZrIPQLUAoOnaV/Nw+H48PEWhkLnZ2eXk5NhKxEJbYcpXff5nwl/AV/1s+X48/Pf14L7iJIEyXYFHBPjgwsz0TKUcz5IJhGLc5o9H/LcL//wd0yLESWK5WCoU41EScY5EmozzMqUiiUKSKcUl0v9k4t8s+wM+3zUAsGo+AXuRLahdYwP2SycQWHTA4vcAAPK7b8HUKAgDgGiD4c93/+8//UegJQCAZkmScQAAXkQkLlTKsz/HCAAARKCBKrBBG/TBGCzABhzBBdzBC/xgNoRCJMTCQhBCCmSAHHJgKayCQiiGzbAdKmAv1EAdNMBRaIaTcA4uwlW4Dj1wD/phCJ7BKLyBCQRByAgTYSHaiAFiilgjjggXmYX4IcFIBBKLJCDJiBRRIkuRNUgxUopUIFVIHfI9cgI5h1xGupE7yAAygvyGvEcxlIGyUT3UDLVDuag3GoRGogvQZHQxmo8WoJvQcrQaPYw2oefQq2gP2o8+Q8cwwOgYBzPEbDAuxsNCsTgsCZNjy7EirAyrxhqwVqwDu4n1Y8+xdwQSgUXACTYEd0IgYR5BSFhMWE7YSKggHCQ0EdoJNwkDhFHCJyKTqEu0JroR+cQYYjIxh1hILCPWEo8TLxB7iEPENyQSiUMyJ7mQAkmxpFTSEtJG0m5SI+ksqZs0SBojk8naZGuyBzmULCAryIXkneTD5DPkG+Qh8lsKnWJAcaT4U+IoUspqShnlEOU05QZlmDJBVaOaUt2ooVQRNY9aQq2htlKvUYeoEzR1mjnNgxZJS6WtopXTGmgXaPdpr+h0uhHdlR5Ol9BX0svpR+iX6AP0dwwNhhWDx4hnKBmbGAcYZxl3GK+YTKYZ04sZx1QwNzHrmOeZD5lvVVgqtip8FZHKCpVKlSaVGyovVKmqpqreqgtV81XLVI+pXlN9rkZVM1PjqQnUlqtVqp1Q61MbU2epO6iHqmeob1Q/pH5Z/YkGWcNMw09DpFGgsV/jvMYgC2MZs3gsIWsNq4Z1gTXEJrHN2Xx2KruY/R27iz2qqaE5QzNKM1ezUvOUZj8H45hx+Jx0TgnnKKeX836K3hTvKeIpG6Y0TLkxZVxrqpaXllirSKtRq0frvTau7aedpr1Fu1n7gQ5Bx0onXCdHZ4/OBZ3nU9lT3acKpxZNPTr1ri6qa6UbobtEd79up+6Ynr5egJ5Mb6feeb3n+hx9L/1U/W36p/VHDFgGswwkBtsMzhg8xTVxbzwdL8fb8VFDXcNAQ6VhlWGX4YSRudE8o9VGjUYPjGnGXOMk423GbcajJgYmISZLTepN7ppSTbmmKaY7TDtMx83MzaLN1pk1mz0x1zLnm+eb15vft2BaeFostqi2uGVJsuRaplnutrxuhVo5WaVYVVpds0atna0l1rutu6cRp7lOk06rntZnw7Dxtsm2qbcZsOXYBtuutm22fWFnYhdnt8Wuw+6TvZN9un2N/T0HDYfZDqsdWh1+c7RyFDpWOt6azpzuP33F9JbpL2dYzxDP2DPjthPLKcRpnVOb00dnF2e5c4PziIuJS4LLLpc+Lpsbxt3IveRKdPVxXeF60vWdm7Obwu2o26/uNu5p7ofcn8w0nymeWTNz0MPIQ+BR5dE/C5+VMGvfrH5PQ0+BZ7XnIy9jL5FXrdewt6V3qvdh7xc+9j5yn+M+4zw33jLeWV/MN8C3yLfLT8Nvnl+F30N/I/9k/3r/0QCngCUBZwOJgUGBWwL7+Hp8Ib+OPzrbZfay2e1BjKC5QRVBj4KtguXBrSFoyOyQrSH355jOkc5pDoVQfujW0Adh5mGLw34MJ4WHhVeGP45wiFga0TGXNXfR3ENz30T6RJZE3ptnMU85ry1KNSo+qi5qPNo3ujS6P8YuZlnM1VidWElsSxw5LiquNm5svt/87fOH4p3iC+N7F5gvyF1weaHOwvSFpxapLhIsOpZATIhOOJTwQRAqqBaMJfITdyWOCnnCHcJnIi/RNtGI2ENcKh5O8kgqTXqS7JG8NXkkxTOlLOW5hCepkLxMDUzdmzqeFpp2IG0yPTq9MYOSkZBxQqohTZO2Z+pn5mZ2y6xlhbL+xW6Lty8elQfJa7OQrAVZLQq2QqboVFoo1yoHsmdlV2a/zYnKOZarnivN7cyzytuQN5zvn//tEsIS4ZK2pYZLVy0dWOa9rGo5sjxxedsK4xUFK4ZWBqw8uIq2Km3VT6vtV5eufr0mek1rgV7ByoLBtQFr6wtVCuWFfevc1+1dT1gvWd+1YfqGnRs+FYmKrhTbF5cVf9go3HjlG4dvyr+Z3JS0qavEuWTPZtJm6ebeLZ5bDpaql+aXDm4N2dq0Dd9WtO319kXbL5fNKNu7g7ZDuaO/PLi8ZafJzs07P1SkVPRU+lQ27tLdtWHX+G7R7ht7vPY07NXbW7z3/T7JvttVAVVN1WbVZftJ+7P3P66Jqun4lvttXa1ObXHtxwPSA/0HIw6217nU1R3SPVRSj9Yr60cOxx++/p3vdy0NNg1VjZzG4iNwRHnk6fcJ3/ceDTradox7rOEH0x92HWcdL2pCmvKaRptTmvtbYlu6T8w+0dbq3nr8R9sfD5w0PFl5SvNUyWna6YLTk2fyz4ydlZ19fi753GDborZ752PO32oPb++6EHTh0kX/i+c7vDvOXPK4dPKy2+UTV7hXmq86X23qdOo8/pPTT8e7nLuarrlca7nuer21e2b36RueN87d9L158Rb/1tWeOT3dvfN6b/fF9/XfFt1+cif9zsu72Xcn7q28T7xf9EDtQdlD3YfVP1v+3Njv3H9qwHeg89HcR/cGhYPP/pH1jw9DBY+Zj8uGDYbrnjg+OTniP3L96fynQ89kzyaeF/6i/suuFxYvfvjV69fO0ZjRoZfyl5O/bXyl/erA6xmv28bCxh6+yXgzMV70VvvtwXfcdx3vo98PT+R8IH8o/2j5sfVT0Kf7kxmTk/8EA5jz/GMzLdsAAAAgY0hSTQAAeiUAAICDAAD5/wAAgOkAAHUwAADqYAAAOpgAABdvkl/FRgAAG5JJREFUeNrsnXfYVcW1h98PAQERkGZBxdhCRL1W1IAlakjUGwtRgxURFXtsqbZ4NcZoTKwoigjYQIy9ocYIsQVrNBqJXURBOlKlfPePNSjg2TP7tH32Pvv3Ps95PmXmnLPP2rPnN2XNWg2NjY2fAG0QQghRLH8FBsgMIg00BTaQGYQQoiQ6ygQiLTQBZssMQghREvNlApEmQRdCCCGEBF0IIYQQEnQhhBBCSNCFEEIIIUEXQgghJOhCCCGEkKALIYQQQoIuhBBCCAm6EEIIIUEXQgghhARdCCGEEBJ0IYQQQkjQhRBCCAm6EEIIISToQgghhJCgCyGEEEKCLoQQQtQpTXP0W2cBU4C5wDSgEWhY4W8nYE2gC9BKTUMIIYQEvfZ8ALwJvO5eHwNfADOABZ73reGEvTPQHdgN2AzYKWeDHyGEEBL0mvEWcA/wLPACMK+Ez5jnXh8B44Fb3b9/D9gFOAzoCbSss3ZwLzAiUOc6YP2UXfel7j6ljbWB9kBXoJv7+50aXMdI90qSdYDWQEdgPWAT92/ruAGzEEKCXpClTsTvAB6q4vf8x72GApsDhwJHuf+uB34NvBuosyNwbsqu+0Hgnxl5zrYBtsdWffYF2iXwvS8CD6Tg9zcBNga+6147Ab2c4It80gqYLzNUlobGxsZZQNsMXvstwFXAv2v0/c2AAcDP3SwsqzwN7BWj3qYxRD9pDnCinjU6AD91g8JeVfyei4DfpdQGLdxv/xGwH7YKlkVGYit3pXIOsA+waJV/bw5MAE7F/HyywsXYKuaiiOtuwFawriK8Kni5GwQvKtB2ngT+4Hnvr1zbWpgTLV8dGJdFQX8G+I2bfaTFkL9w15RFZ7q+wKiYdZ+KKf4S9Pgc6jqf7XIm6KuK1x7AScCBORP0h92AphBTgHUzJOhDgf4x6t3lBiozAvXe9gz0ngJ+6HnvGKB3ziboz2Xp2No898D/IEVijhs9XgJsi+3fZ4kpFLckOwRRae52s5CLc2yDr4AngIMwZ9ShOfrtMwLPZ1a4P6aYXwYcHkPMAaaWaDdifn69MT0re+jjgGOB90t470bYXve2mHNSJ8xhpxW2B78a8CUwE5jkRoXjseWuBUV8z3+x/dE/A2dkxK63UdyS1APAdGzJWFSWC4DngNHY8cm88ja2lXUL8EequyUhyqcl8Biwe4y6ZwBXy2TVIwuCPgQ4GVhcxHt2AfoAO7v/Xq2E730X+DvwqHvF+f5G4EzMgW5wyu3a6DrNYliALTGekoF20x7YE1hCckuWq2ExDj4DJmMxD4phDLb0/Deq7zTXFNtjbOFsVM5vXuR+81fA526QWK7D0/PArm6gc5G66lTS2Q3yd45RdyBwk0yWb0E/D/h9Eb/lKOCEmA0sxGbudYIT92FucPFFjPfe5DrzO1Js2yeAd0p434iMCHp3N9utBYuxQEZvuln3i25QGIdXMT+Fsdjxr2rRGvM/qOS22zIn5HOAicCHro19BLzsZt/FDq7+D/gHcAPmIS/SQVc3AI1zTw7BTiMlydo5vCfrplnQz8aWr+PQFztStWWVrmUzN7A42f29IcZ77nQzltEpte/NnhnXvpgXaaHl+PHYUbGdMrACUSuaYVs7e7oXWJyE65zdl8YQ9X7AX6tsn6/cDL1SNHEDhdbYkbSdVhnkTHQDycfd37hbWn/Hlt4fqtBgXZTHFu5ebByoNxc7zfFEDa7xPpLzQdgVizBaiGmYA18SvJJWQf9FTDFffvyhb0LX1QUY5BrpSYSPcd0DHEf6nMk+J9o7vBsWUKcHFnGvEMMyIOjLUrhicAO2P9zPzVZ93Iv5OBxVxWtaVGFBDw1yNgZOdK8PXBu8CduiCjENOw715AqDJJE8PTDn32aBevMwL/RaOTBf615JcCfRJx3eoLxTEEWPqNPGNcCfYtQ72Bmrbw2ucS9sCfFnMereEnNGnyR3EO0TsA/m9La35/33U5zDoPiGHVwnd3CMumdgDpv1yMbu973lBrwbxRyk7eeee5E8/+sGVCEx/xQ7ufFiTuzii4DYIskLSZugj8UCtYQ4F1vK7lzDa22DOYidFKPu6TFnIUkxLOLfG/jm6IlvZjiZ9G4lZIE1nf1CM80ZwBV1bosGt2rxipu5h1joBp1fqBklyv6YA1ybQL23sKPFE2Sy5EmToE/HnCdC/Ak7950WBsXoiJbUaCWhEE+7h64QvbD9seX/3d3zOdfq8Smbewg77wyieG/5LNIeW8l6mOj9yOV85gRmqZpQIpzgxDykF69ipzTek8kk6P3xBxIACwV4dgrteAPhfZI3UiKCN3vKBq7y/0d46r4M/EuPUFmsBVwfY6D7UI5ssh+2RxsKBftPshEFL+ucQbwjuGPcJGCaTCZBHxWj0zobc5ZLK3di3vA+zqe2e6KziHaG68C393UPDXzeCD1CZfNTbL/RxyM5s8lGWDCpUIa6S4hebRLlcxnwlxj1HgR+jPxqJOiYN+QZgTq7Es9RrtbcHiifHfMBqRZDiQ74cRAWl35FNsEfu/02lDGpEgwMlL+YQ5t0dAOZUKrik9V8qsJVWI6BELeSvfj7EvQq8gfMySqKdlT3PG4l6RGjgxlUQxH0HZ87NuLfB3jeM5V8LQdXi/3xe8N+ggVnyRvfizFIHoedaxeV4xbiOScPcv1Go0wmQQc7i3p5oM71WJCOrHAJfk/QKZjjT9I8SbSn/Q5YiNwosekUGKGL8lgbyzcfxWLy62jUBzg+UOdCNaGK0AILyHJsjLoXko2IkRL0BLkCf4z0H2CZebLEWoSPso2qwXUN8pQd7SlbA9vnjWIMFuJTlEcofer0HNvmGmAdT/l4LPa7KJ01sS2OA2PUPRMLySsk6F8zAxgeqHNVRu16Cv7gC0+T7LL750Q7VjUj7PwWSos4TI9S2YRiYi/JsW1aEE7Qcp2aUFmTkGeJF4GvX4b7ZQl6FRmB3ytyH2DrjNp1AyyTVRSzEp5RDCN6JWR/wmehe+CPk3+3HqWyaRcon5Jz+/THH0hqDJYURhTfV42N2df+DJ1skaBHENp7zfqSTiiQzJsJXUcj5t0exXExP+dIT9k71CYBQz3RNlCe9xz0zfAHcJqB7f+K+HTDMtltFai3CEvYpIG7BL0g4/HHY94dc9TKMqHlq6SOIo0h2qFqM6B3EYLe3FM+WI9TWTQEylvKRPTDsgFGIUGPT083M+8aqPcFsBvwmEwmQY8idAytHs6WrotFvWqPOfSs+OrgRr1JEDqqFrcNdMGyJ0XxMFoWLofQcnEbmYiNnRBFMRYtu8fhh9ieeSgXxkQsDsV4mSwb1Cp96tOesvbY8k49cDcws8DMdnFCtp9G9DnxBvyhXQtxNNHOdV9h0fLO1GNVEiEv9vVlIsAyfo2LKJsFvIQ/GFLe6Uv4bD9Yaujvo1CumqEH+ADLrBTFvkDrOrFvKzez7bTKaz2SyRQ33AltIfbBHGKK4Sf493K17F46Pp+KzsCmMhFgy78+XpGJIjkCuAv/tgVYnPw9JeYS9Liz88aAoIvK4HOGK2VboyX+HPATgGdk9pJ4ylO2HQnnVU4x2wYGwy/KRAU5O+bMfBywN5bTXEjQgzznKWtOvLOQIsxY4O2Isg2xZAqlcGSgfIhMXzQv4I8Et7tMtFIf4XOYfQ1YJjOtxMXEy4Ux0rW1uTKZBD0u//aU7UD4TLSIxw2essMIL7tFsQt23CWKe9FSXbGEEvZo1WplunvKPsfypQtjEHBejHq3Ek4BLSToKzHJM2sE2Ea3pCJMBx7wlB9T5uf7QsUuQOdVix3gjvaU9yC7AZZqIeiLyG/c+1UZSjgMNcCVxIvfLiToK/EJ/pCn3XRLKsJgYGFEWa8K2PnQwAx/mG5BbE4IlP9GJvoWobPTn8hEjCIcshks2+U5MpcEvRTeKWPkLeKxBEt/GMVxFfiOUJ70l7C9TOHndGz/PIrtUK7pQnQKDCin5tg2bYC/E87PgBPy36o5SdBLxZeVqymwuW5J2YzBjgYWYi3g4Ap9T2gp7ybdCi+/B64N1PmzzFSQdYCOEvRvsT6WJnmPQL1GbNvsSjUlCXo5+JxVOiOHuErgOwveB0uHWgn2DdyvUfiT7+SZEwk7Kg1E3u14BqZrSdBXogsW/a1HjD74IOA2NSMJerl8GhhdNtMtKYtJ+GMuD6jgdzUHDvGUzyQ6Sl1eeQ5bRg8F4NkSf/569Vv+7HR5C0HcHcve2DVG3TvxO8wKCXps5gRm6KI8RhCdN3sb7MhZJTkmUF7LM+kNKbov/8DO7/ci7FvQFXic2mZCzAK+4FR5CsKzPRasa8Mintmeaj71SZKx3JcAX3rKW+l2lN3BVSJNarGdyfZEh9t8CjumuEWOBH0ZthL1qns9THwHwZ2xI39d1JyD+NLN5iUOwj6uvRQTKrsjcD/wP+i8vgS9DBbjj0Ck/fPyeJLo87etCUd4K5XDPILe6GbptXDuehMLYbkswWdpFpZuckZg8FqIc4Ar1Ixjs56n7AvX9hrq+Pf3IZy10ifqD2OBvBRVT4Je8oxptRTOqOqFIYGHv20VBf2Xno7hLuByks/sNxv4Wwbu24+wo0O7qQkXhU+I6t0X5wTKT4S0LRYdrp+aUv2Qpn26Rt2OkpmK39GlmlGg1gN6e8onu9mAMNbEnJhOdwOOxyXm6i+K4LSYYv5+jDpHA6eqKUnQS30AG1OyWlBv3EZ0mtQtEhCM0Cj/Bt2irwc/ZwFPAFejRETl4Osvltbpb74AuCZGvdHATsDNMepejT/ZjZCgRz6Avodwtm5HSSwNPLjHUP3tjAPxn1J4KuaMod6ZDdzoOtA+bqAzXWYpiVmesnpxsG2ywiToL8BFMd4zGIsSN93N5l+P8R33Ae3VpCToxdAMfzAIZegqjbFEh9RtAhyRwDW0wJ8nfRlwh24V87Az0p+7TvRk4HtY1Dg5JxWHz0N7XerDJ2eG+zsIOCNG/cuwoEXLWQTsjz9/BlgMkAfVpLJP0svczT1lc3Q7SuJGT9k++L2BK8kR+EOZDseWDJOik/v9S2vwTM3AgvxMcCLuYyoWNe5RdGSt2AlCFPWy5N4O843ZP0bdC7C856syEVtBeyLw/p7u+T1NTUuCXkwnG8Vk3Y6SZin3ecoHJHgtO2ERzqLy3X/gOpXeCV3PFm4QUUvex4703U44at7z2Jn+5ceJhF+wfVt09bJ8vDXxUueehS3JR/EkcDbh2O2nYjEThqqJZZOkvdx9s49PsXChIj43Ex0Zbj03Q02SULrGYQley+IU3J9NsP3MB12numWg/hQsRv7natpe5gf6ig45ssVJATFfzp+xsK9x+pQeamIS9Dhs6imbC3ykWxKbUJrUX5F8CMyz8DvH3U9+M2HtjSXP2C9QbyrQV807aKO8C/pC4Cf4t9wKDbj/FUMT7sXv7yRSStJL7psEyidgAQ9EmDHY/lgUH2Be1PMTup4m2BnrtbBIXYVYgB2xOyun96wttqTe283YoxiHOREeoWYeKeg+34R6zwsxBzslUWzgpK+w/fS3gZaeel3c4FvZ/iToZQn6v+vQxkOd+LZZ5d/nYx7O55X4uaEzplen1B55FvTl3Ad8F3Oci+J8CXokkwLlG9Txb//SCe3rJb7/IyxLYijY027YMv1Zam4S9Ci6utfHEeVv1KGNh7sZVyG6lSjon5Hd6GuvA+PJ9z7dGsBN+JffP8Q83/dVN/Ut3gv0aV3r9HdPBA4oQ8yX8whwLnZc0seZwD+BUWpy2SDpPfSW+B2DxpPcEnEShLxxS91eGEG2j+bcqEePfbE47j5GykwF8WWv60h4JTCLTHCz5tcq9HmXEi82xHBqky1RZEDQAXb0lE2pwOgzTUwG3vWUb1bCZy7D7wyXBUa5e513fhkof4HoUwx55hVPWTdg9Tr7vc9jy+wfVfhz+xNeFV0d2zJsp2YnQS9EKK74Y3U2qp4f6HyK5Wn8S45ZYD7mdJN39gQ295S/h0Lmrsp/MYfPKOrNqXYcFvSlGgPgxZiT3MJAvfXRsnsmqEVClJ6YF2qUJ/TjFI54lNWRtY8tS/jMkDPcRu5BrWU2qmaYJ+7MwO8YqEeQA7H0slG8hTnQCeMF/NtNu9TRb/2Q8LZMJb7jYMI+Ob1dv3y+mqAEfUWaA3tgYS4L8ZrrxLrXgX0f95R1LeE3TsafJrU/cJ0T9FrGBm+OhT/dnuhz56+41/Y5fwZ7xRD0PuqqvuaZwECynpwtp8eYPVeCR2KK9XnAy4E+SORM0MECIkQJ+lJgCPGiH6WZj13jj2J3it/yGIYlXIjiNNKTaWoNLA/7Hz11RkjQ2QkLALTQM4MSxryAmGxDfXm4N8eSzCSx2nYBFmb2gEC9O5yd31NzTB9NavS9B/Dtc9krMhQ7b5ll7g2Ib7E5ypdiR52i2J707R8ejT/r1V1YsJk80xm/L8Wn6qa+5q/4t3EOkYnK4nCiMzeuOFB/ItB/i5wJ+pr4lxHnkP0EAb697gYsFGgxPBmYrR2TQhtsgflMRDHVddJ5xxcSWfkNvuH6QPlBMlFZzHc2DG3XfQcYLXNJ0FfkuED5ZWQ3R/Q/gP94yr9P8UuDvtl5cywJSBo5MVA+TI+hN8XtbCxkZ955EYtTEcXOgYGRiMc7xMsl0Bv4ncwlQV9OT/wOLJOBKzJq18sD5f2K/LyP8B/z+gnpjV99MBbsI4qn0T6x7941IgB+XebAUcRnNH7fl+VcSPIZHUVKBR3gkkD5RWQvleR4/EdA2lF8Nq0RgY79pBTbY3Vsb84nWHnPv+yboS9Cfga3A2M95esCh6k7r/gAakyMeiOp31C7EvQi+SG2VBbFAuD4jNn0lED5AMyHIC5L8UeG2wT4QcptMiBQfivpyF9eK3wrGNPJb8pZsLwFpwbq/BzbdhKV5VD8QXzAnOMewY4MipwLOsC1gfJHyM4+62D8R9VWB35R5GeOAT7xlPdPyX30sTX+gB+TYs4G6hVf7umGDNzfatIHfz6EtYHT1ZVXhTnYdl6I7tiJFSFBZwfseJOP47AAG2nmQ+wcuI+BrgMqhlsD5VlJsXlkoPyWHD+HbTzP4jKynYinHI7Hsn35uAJ/bm9RHm8Tbzvjp8BvZS4JOljubt+y41LMqzKtCT2WYc5fiwOddrGpUicBD3nKf4yFes0Ch2JnWKN4mMonn8gKHTy2WUB0mOR65pdYgCkfuwJHqRuvOiMJO/qCpWPtLXNJ0Nthafp8fIYls/gspWL1aqDOpUCnIj93OP7gNFmKhd4Rf+CPJeT3CFtT/FEb8+RfMAdbZg+dcGmFlnmT5FfE2xYbjZzkci/oYPmhzwrUeRtzpJuYouvuRzg4ym6EneVWpRH/cvv6zmZZ4thAecibv17pDLT2lOcluMxzWGz7+2LUvQPooi48UQ6L0fcud5JrInPlW9ABrsRinIdEvQfhTGZJ0N+JkI/VYqw+FOIJ/PGSDyN7nr274s8B/yF2Lj1vNADtPeXT6/z3z3CD+V7AmzH7iQPVfSfOTMKx3sGc5IbLXBJ03OgulC5yspv1Xl2ja/wcOyo2LEbdEZS2zz04UH54RttcKELgkJw+ix08ZZPq9DdPxKKNbU38ZEynE17JE9XjNcJOzGBOsKfJXBL0NdwsbYtAvaXAGVgq1ucSvL7bsEQoz8Soe1GJwvsx/uA0PbCMR1mkL3Z8L4r7czAjLUTbQHuop9n4bdjpjG7uGYk7YDm3hoN4sXIfeGWMete4/lnkWNDBImc9DWwZo+5YbKluAPBGFa9pLLCfG53GiV53MpaSsBSG43eE6p/hNrehs2MUC4E7c/gs+hwm363Ss9+2yr9pLvAv154vxJxav+OeoTuxZCBxaAbcSDiypEiOc4DHY9S7B4vkJxKgaYqvbW3sDOohwKMx6g91HUcf4GfAXpj3fDksc989BH8e5lU5lXDAHN/Kg88Zbk33+7LMQCy9bBTDyN9yXYeAoH9FZX0mFrlnplWFZt0z3TVOBqZh/h9TsSN35Zyj7+aev57qrlPH4W4StX6gXT+ErSouk8nyK+i4zuYR7ExqnEQtS7FjE6NdI/s+5mS3DeYRux7+EIXzsKhs/wEeA54lnB94VS4qY2YO5gz3kaf8APyRxbJAbyxk7fsR5a9iEfd2yNGz6JvFTHEz3R0r+H3zCYfkrTVnAn/Av0UjasdMLN3qS4F622M+QcfLZPkW9OVcji2rn078/cRPgbvdC+xY0IZODNuxcjz1L90s4wssdnEpR6dauJl13zJ/6w2B8v510vaOAc4PzNIl6N/wUoUFPc0cgO2X74hIOy9jyaFC/dZx2IrrEJlMgg6wP5bI5beUFiZ0LnbkrVrXdil2XKMcPnQrElFsjnn31wNHuZWMqMHTXW4g1yonz+Km2L521LLkWMwvo15pjm2vHQPsra45U9yIrYKGAl0Ndn3w8zJZdcja4f/OboT3LOnIw7s15vH5QAXEHMwHwLfPNCBjgzAfXfEHxplBvpzjuuOPsPUo9Zl1bXfgYmyb63aJeWY5ERgXQ28epPh8FqJOBX05PV0H9xQWdjVptnKjzVcIJx2JyyLCjnT96qz9hfbU/oTfocrnJT0vY7ZoBvzIUz4XuKyENpU2tnIz8euwhEvPYDkONlZ3nHn6YE6RPpY7yYkqkPXZ3l7udQF2POJeqnd0rR223N0f2+NrqPDnP+lmpS0KlC1xA5d6G9nuhwUReo/CzooTgNcxp5qoe7Jagfcuxh95La2cgm01zHe/a1VuwpY1N4/5eWsQjhNfKRrd96yFLZ+v5e7BRk6stwI2cH8bEPXIdCzrWiguyI5uQjRQJpOgF6K7e12IOQ+9DLwAjMeSuXxZwme2xzzle2IOebu6DqlabIeFvWy2SofX6ASqa522v2fdqL55xKx0Q8/7r3L3vHmBmWnbDNpjS8ybfV6BZ7PR2aNNEZ93IhYitVkC177MXXMnzCu9hbrXWLQMDMiyxvPYkdPQauMJbvJ1vadOqxLtltt72LQOH5Ad3esk9/8TsXO8U9xrARaZapGbBS1zgrCu+7uhE/LNKT47Wjms5155oyP+1Lk+ulB/CToqOXDrgP98u6g9s4jeHpqW0d90nRucHhnQnouxLZe3IurM8NhmVkbuYaJRLxsaGxtnZXQ2I4QQtWYkliipVFoTfc5+CTA7w7YJDSZbYdtLUaLXhujVpUXYilUaWJPooE+LsZTAmqELIUSdMzdFwlRpppdZPicjv/PLtFyIctYKIYQQdYAEXQghhJCgCyGEEEKCLoQQQggJuhBCCCEk6EIIIYQEXQghhBASdCGEEEJI0IUQQgghQRdCCCEk6EIIIYSQoAshhBBCgi6EEEIICboQQgghQRdCCCGEBF0IIYQQEnQhhBBCSNCFEEIICboQQgghJOhCCCGEqLqgt5UZhBCiJFrJBCItNAUmAm1kCiGEKJppMoFIC/8/ALPeIRWZw4SiAAAAAElFTkSuQmCC' - }, - width: true, - }, - draggable: { - x: false, - y: true - }, - showHoverArea: true - }, - headline: { - name: 'Headline', - type: 'text', - text: 'CardKit is a powerful, configurable\nimage editor, that can be run right\ninside your web browser.', - fill: function() { - return $scope.theme.quote; - }, - fontSize: 40, - fontFamily: function() { - return $scope.theme.headlineFont; - }, - fontWeight: 300, - lineHeight: function() { - return this.fontSize*1.3; - }, - textAnchor: 'middle', - x: '50%', - y: 75, - draggable: true, - showHoverArea: true, - editable: { - text: true, - fill: 'picker', - textAnchor: true, - fontSize: { - 'Small (18px)': 18, - 'Medium (26px)': 26, - 'Large (32px)': 32, - 'Extra Large (40px)': 40, - }, - } - }, - subtext: { - name: 'Subtext', - type: 'text', - text: 'Created by The Times of London\nAvailable on GitHub at github.com/times/cardkit', - fill: function() { - return $scope.theme.quote; - }, - fontSize: 18, - lineHeight: 22, - fontWeight: 300, - fontFamily: function() { - return $scope.theme.headlineFont; - }, - textAnchor: 'middle', - x: '50%', - yAttach: { - element: 'headline' - }, - draggable: true, - showHoverArea: true, - editable: { - text: true, - fontSize: { - 'Small (12px)' : 12, - 'Medium (18px)': 18, - 'Large (22px)': 22, - 'Extra Large (36px)': 36, - }, - fill: 'picker', - textAnchor: true - }, - } - }, - } - }; - - function createConfigCopy() { - $scope.defaultConfig = angular.copy($scope.config); - $scope.$broadcast('resetSvg'); - } - - // Configure themes, set default - if(typeof $scope.config.themes !== 'undefined') { - var defaultTheme = $filter('filter')($scope.config.themes, { - default: true - }, true)[0]; - if(defaultTheme) { - $scope.theme = defaultTheme; - } else { - $scope.theme = ($scope.config.themes.length > 1) ? null : $scope.config.themes[0]; - } - } - - // Configure sizes, set default - var defaultSize = $filter('filter')($scope.config.sizes, { - default: true - }, true)[0]; - if(defaultSize) { - $scope.size = defaultSize; - } else { - $scope.size = ($scope.config.sizes.length > 1) ? null : $scope.config.sizes[0]; - } - - $scope.$watch('theme', function() { - $scope.$broadcast('changeTheme'); - createConfigCopy(); - }); - - $scope.$watch('size', function() { - $scope.$broadcast('changeSize'); - createConfigCopy(); - }); - - $scope.resetSvg = function() { - $scope.config.svg = $scope.defaultConfig.svg - createConfigCopy(); - }; - - // Drop handler. - $scope.onDrop = function (data, event, key) { - var dataTransfer = getDataTransfer(event); - readFile(dataTransfer.files[0], key); - }; - - $scope.fileChanged = function(file) { - readFile(angular.element(file)[0].files[0], angular.element(file).data('key')); - }; - - /** - * Read the supplied file (from DataTransfer API) - */ - function readFile(file, key) { - var reader = new FileReader(); - - reader.onload = function() { - $scope.config.svg.elements[key].src = reader.result; - $scope.$apply(); - }; - - reader.readAsDataURL(file); - } - - /** - * Gets the data transfer - * - * @param {Event} The data transfer event - * - * @return The event's data transfer or null - */ - function getDataTransfer(event) { - event.stopPropagation(); - event.preventDefault(); - return event.dataTransfer || null; - } - - /** - * Slugifies the supplied string - * - * @param {string} text - The string to slugify - * - * @return {string} The slugified string - */ - function slugify(text) { - return text.toString().toLowerCase() - .replace(/\s+/g, '-') // Replace spaces with - - .replace(/[^\w\-]+/g, '') // Remove all non-word chars - .replace(/\-\-+/g, '-') // Replace multiple - with single - - .replace(/^-+/, '') // Trim - from start of text - .replace(/-+$/, ''); // Trim - from end of text - } - - /** - * Finds the first element with 'useAsFilename' set to true, and returns the file name based on it's text value - * - * @return string The file name - */ - function findFileName() { - // Map elements object to an array - var elementsArray = []; - angular.forEach($scope.config.svg.elements, function(value){ - elementsArray.push(value); - }); - - // Filter to find the element that has `useAsFilename` set as true - var fileNameElement = $filter('filter')(elementsArray, { - useAsFilename: true, - type: 'text' - }, true)[0]; - - // Default the title to 'image.png' - var fileName = 'image.png'; - - // If we found an appropriate element, set that as the title instead - if(fileNameElement) { - // We run `slugify()` here to make it an acceptable file name - fileName = slugify(fileNameElement.text) + '.png'; - } - - // Return the filename - return fileName; - } - - $scope.removeImage = function(key) { - $scope.config.svg.elements[key].src = ''; - }; - - $scope.downloadSvg = function() { - // Get the file name - var fileName = findFileName(); - - // Run the conversion and download - saveSvgAsPng(document.getElementById('snap-svg'), fileName, { - scale: $scope.config.output.scale - }); - }; - }); diff --git a/app/scripts/directives/filleditor.js b/app/scripts/directives/filleditor.js deleted file mode 100644 index c8d3303..0000000 --- a/app/scripts/directives/filleditor.js +++ /dev/null @@ -1,19 +0,0 @@ -'use strict'; - -/** - * @ngdoc directive - * @name cardkitApp.directive:fillEditor - * @description - * # fillEditor - */ -angular.module('cardkitApp') - .directive('fillEditor', function () { - return { - template: '
', - restrict: 'E', - scope: { - field: '=', - element: '=' - }, - }; - }); diff --git a/app/scripts/directives/filtereditor.js b/app/scripts/directives/filtereditor.js deleted file mode 100644 index 6bcf781..0000000 --- a/app/scripts/directives/filtereditor.js +++ /dev/null @@ -1,25 +0,0 @@ -'use strict'; - -/** - * @ngdoc directive - * @name cardkitApp.directive:filterEditor - * @description - * # filterEditor - */ -angular.module('cardkitApp') - .directive('filterEditor', function () { - return { - template: '
' + - '' + - '' + - '
', - replace: true, - restrict: 'E', - scope: { - element: '=', - filters: '=' - }, - }; - }); diff --git a/app/scripts/directives/fixedscroll.js b/app/scripts/directives/fixedscroll.js deleted file mode 100644 index 765f4b3..0000000 --- a/app/scripts/directives/fixedscroll.js +++ /dev/null @@ -1,21 +0,0 @@ -'use strict'; - -/** - * @ngdoc directive - * @name cardkitApp.directive:fixedScroll - * @description - * # fixedScroll - */ -angular.module('cardkitApp') - .directive('fixedScroll', function ($window) { - return function(scope, element) { - var offset = element.offset().top-20; - angular.element($window).bind('scroll', function() { - if(angular.element($window).scrollTop() >= offset) { - element.addClass('fixed'); - } else { - element.removeClass('fixed'); - } - }); - }; - }); diff --git a/app/scripts/directives/fontfamilyeditor.js b/app/scripts/directives/fontfamilyeditor.js deleted file mode 100644 index 0b60f40..0000000 --- a/app/scripts/directives/fontfamilyeditor.js +++ /dev/null @@ -1,25 +0,0 @@ -'use strict'; - -/** - * @ngdoc directive - * @name cardkitApp.directive:fontfamilyEditor - * @description - * # fontfamilyEditor - */ -angular.module('cardkitApp') - .directive('fontfamilyEditor', function () { - return { - template: '
' + - '' + - '' + - '
', - restrict: 'E', - replace: true, - scope: { - element: '=', - field: '=' - }, - }; - }); diff --git a/app/scripts/directives/fontsizeeditor.js b/app/scripts/directives/fontsizeeditor.js deleted file mode 100644 index 24fe1a0..0000000 --- a/app/scripts/directives/fontsizeeditor.js +++ /dev/null @@ -1,25 +0,0 @@ -'use strict'; - -/** - * @ngdoc directive - * @name cardkitApp.directive:fontsizeEditor - * @description - * # fontsizeEditor - */ -angular.module('cardkitApp') - .directive('fontsizeEditor', function () { - return { - template: '
'+ - ''+ - ''+ - '
', - restrict: 'E', - replace: true, - scope: { - element: '=', - field: '=' - }, - }; - }); diff --git a/app/scripts/directives/imageeditor.js b/app/scripts/directives/imageeditor.js deleted file mode 100644 index f58ed70..0000000 --- a/app/scripts/directives/imageeditor.js +++ /dev/null @@ -1,46 +0,0 @@ -'use strict'; - -/** - * @ngdoc directive - * @name cardkitApp.directive:imageEditor - * @description - * # imageEditor - */ -angular.module('cardkitApp') - .directive('imageEditor', function () { - return { - template: '
' + - '' + - '
' + - - '
' + - 'or select an image' + - '' + - '
' + - - '
' + - - '' + - - '' + - '
', - restrict: 'E', - scope: { - key: '=', - onDrop: '=', - removeImage: '=', - fileChanged: '=fileChanged', - field: '=', - element: '=' - }, - link: function(scope, element) { - if(scope.element.src === '' || typeof scope.element.src === 'undefined') { - if(angular.isObject(scope.field)) { - scope.element.src = scope.field[Object.keys(scope.field)[0]]; - } - } - } - }; - }); diff --git a/app/scripts/directives/opacityeditor.js b/app/scripts/directives/opacityeditor.js deleted file mode 100644 index fab3e1f..0000000 --- a/app/scripts/directives/opacityeditor.js +++ /dev/null @@ -1,22 +0,0 @@ -'use strict'; - -/** - * @ngdoc directive - * @name cardkitApp.directive:opacityEditor - * @description - * # opacityEditor - */ -angular.module('cardkitApp') - .directive('opacityEditor', function () { - return { - template: '
' + - '' + - '' + - '
', - restrict: 'E', - replace: true, - scope: { - element: '=element' - }, - }; - }); diff --git a/app/scripts/directives/sizeeditor.js b/app/scripts/directives/sizeeditor.js deleted file mode 100644 index 2a79483..0000000 --- a/app/scripts/directives/sizeeditor.js +++ /dev/null @@ -1,22 +0,0 @@ -'use strict'; - -/** - * @ngdoc directive - * @name cardkitApp.directive:sizeEditor - * @description - * # sizeEditor - */ -angular.module('cardkitApp') - .directive('sizeEditor', function () { - return { - template: '
' + - '' + - '' + - '
', - restrict: 'E', - replace: true, - scope: { - element: '=', - }, - }; - }); diff --git a/app/scripts/directives/snapsvg.js b/app/scripts/directives/snapsvg.js deleted file mode 100644 index 525b2ae..0000000 --- a/app/scripts/directives/snapsvg.js +++ /dev/null @@ -1,456 +0,0 @@ -'use strict'; - -/** - * @ngdoc directive - * @name cardkitApp.directive:snapSvg - * @description - * # snapSvg - */ -angular.module('cardkitApp') - .directive('snapSvg', function (snapSVG) { - return { - template: '', - restrict: 'E', - scope: { - svgConfig: '=', - svgTheme: '=', - }, - link: function postLink(scope, element) { - // Check for functions in the config, and resolve them - function functionise(element) { - var attrs = {}; - for(var item in element) { - switch(typeof element[item]) { - case 'function': - attrs[item] = element[item](); - break; - default: - attrs[item] = element[item]; - break; - } - } - - return attrs; - } - - // Inlines all styles - function styles(el, selectorRemap) { - var css = ''; - var sheets = document.styleSheets; - for (var i = 0; i < sheets.length; i++) { - if (isExternal(sheets[i].href)) { - console.warn('Cannot include styles from other hosts: ' + sheets[i].href); - continue; - } - var rules = sheets[i].cssRules; - if (rules !== null) { - for (var j = 0; j < rules.length; j++) { - var rule = rules[j]; - if (typeof(rule.style) !== 'undefined') { - try { - var matches = el.querySelectorAll(rule.selectorText); - if (matches.length > 0) { - var selector = selectorRemap ? selectorRemap(rule.selectorText) : rule.selectorText; - css += selector + ' { ' + rule.style.cssText + ' }\n'; - } else if(rule.cssText.match(/^@font-face/)) { - css += rule.cssText + '\n'; - } - } catch (e) { - // Do nothing - } - } - } - } - } - return css; - } - - // Checks for external files and ignores them - function isExternal(url) { - return url && url.lastIndexOf('http',0) === 0 && url.lastIndexOf(window.location.host) === -1; - } - - // Destringify the JSON object - var data = angular.fromJson(scope.svgConfig); - - // Custom SVG Drag function, given that we scale the SVG - snapSVG.plugin(function(Snap, Element) { - Element.prototype.altDrag = function(x, y) { - if(x && y) { - this.drag(dragMoveAll, dragStart, dragEnd); - } else if(x && !y) { - this.drag(dragMoveX, dragStart, dragEnd); - } else if(!x && y) { - this.drag(dragMoveY, dragStart, dragEnd); - } - - return this; - }; - - var dragStart = function () { - this.data('ot', this.transform().local); - s.elementDragging = true; - }; - - var dragMoveAll = function(dx, dy) { - var tdx, tdy; - var snapInvMatrix = this.transform().diffMatrix.invert(); - snapInvMatrix.e = snapInvMatrix.f = 0; - tdx = snapInvMatrix.x(dx, dy); - tdy = snapInvMatrix.y(dx, dy); - this.transform(this.data('ot') + 't' + [tdx, tdy]); - - if(this.hoverRect) { - this.hoverRect.transform('t' + [0, 0] + 't' + [tdx, tdy]); - } - }; - - var dragMoveX = function(dx, dy) { - var tdx, tdy; - var snapInvMatrix = this.transform().diffMatrix.invert(); - snapInvMatrix.e = snapInvMatrix.f = 0; - tdx = snapInvMatrix.x(dx, dy); - tdy = snapInvMatrix.y(dx, dy); - this.transform(this.data('ot') + 't' + [tdx, 0]); - - if(this.hoverRect) { - this.hoverRect.transform('t' + [0, 0] + 't' + [tdx, 0]); - } - }; - - var dragMoveY = function(dx, dy) { - var tdx, tdy; - var snapInvMatrix = this.transform().diffMatrix.invert(); - snapInvMatrix.e = snapInvMatrix.f = 0; - tdx = snapInvMatrix.x(dx, dy); - tdy = snapInvMatrix.y(dx, dy); - this.transform(this.data('ot') + 't' + [0, tdy]); - - if(this.hoverRect) { - this.hoverRect.transform('t' + [0, 0] + 't' + [0, tdy]); - } - }; - - var dragEnd = function() { - s.elementDragging = false; - - // We have to get the hover rectangle bounding box, store it, remove it, and add it again using the bounding box. - // This prevents weird issues with the rectangle not positioning itself correctly if the user drags again without - // un-hovering. - if(this.hoverRect) { - var hoverBBox = this.hoverRect.getBBox(); - this.hoverRect.remove(); - this.hoverRect = s.rect(hoverBBox.x, hoverBBox.y, hoverBBox.width, hoverBBox.height, 0, 0).attr({ - fill: 'rgba(0, 0, 0, 0.05)' - }); - this.before(this.hoverRect); - } - - // Elements, which have `draggablex = false`, can be unhovered by moving horizontally the cursor during dragging. - // It is also true that `draggabley = false` and moving the cursor vertically - // At the moment, the hoverRect is not removed correctly. This prevents unexpected proliferations of hoverRect - if(this.unhoveringDuringDragging){ - this.hoverRect.remove(); - this.unhoveringDuringDragging = false; - } - }; - }); - - // Setup element - var s = snapSVG(element[0].children[0]); - s.attr({ - height: '100%', - width: '100%', - }); - - // Generate all our styles and put them inside the attribute of the SVG - // This is done as early as possible to ensure all webfonts declared via @font-face are included appropriately - // @TODO: Find a smarter way of defining any external fonts via config, and process them here - var stylesElement = s.paper.el('style', { - type: 'text/css' - }); - var css = styles(s.node); - stylesElement.node.innerHTML = css; - stylesElement.toDefs(); - - // Setup canvas background - var canvasData = functionise(data.canvas); - var background = s.rect(0, 0, canvasData.width, canvasData.height, 0, 0).attr(canvasData); - if(canvasData.draggable === true) { - background.altDrag(true, true); - } - - // Create us some filters for later use - var filters; - function setupFilters() { - // Store filters - filters = { - 'Sepia': s.paper.filter(snapSVG.filter.sepia(1)).attr({ - width: canvasData.width*4 + 'px', - height: canvasData.height*4 + 'px' - }), - 'Grayscale': s.paper.filter(snapSVG.filter.grayscale(1)).attr({ - width: canvasData.width*4 + 'px', - height: canvasData.height*4 + 'px' - }), - 'Saturate': s.paper.filter(snapSVG.filter.saturate(0.5)).attr({ - width: canvasData.width*4 + 'px', - height: canvasData.height*4 + 'px' - }), - 'Invert': s.paper.filter(snapSVG.filter.invert(1)).attr({ - width: canvasData.width*4 + 'px', - height: canvasData.height*4 + 'px' - }), - 'Blur': s.paper.filter(snapSVG.filter.blur(4, 4)).attr({ - width: canvasData.width*4 + 'px', - height: canvasData.height*4 + 'px' - }), - }; - } - setupFilters(); - - // Setup some element variables - var elements = {}, - el; - - // The function that sets up the element with the required settings - function setupElement(element) { - var el; - - // If elements should be attached on the Y axis - if(element.yAttach) { - if(angular.isObject(element.yAttach)) { - var attachElement = scope.svgConfig.elements[element.yAttach.element]; - var attachOffset = element.yAttach.offset || 0; - } else { - var attachElement = scope.svgConfig.elements[element.yAttach]; - var attachOffset = 0; - } - - var attachText = attachElement.text.split('\n'); - var attachY = attachElement.y; - - var lineHeight; - switch(typeof attachElement.lineHeight) { - case 'function': - lineHeight = attachElement.lineHeight(); - break; - default: - lineHeight = attachElement.lineHeight; - break; - } - - var elementValue = (attachText.length*(lineHeight || attachElement.fontSize)) + attachY + attachOffset; - element.y = elementValue; - } - - element = functionise(element); - - switch(element.type) { - case 'text': - el = s.text(element.x, element.y); - break; - case 'image': - el = s.image(element.src, element.x, element.y, element.width, element.height); - break; - case 'rect': - el = s.rect(element.x, element.y, element.width, element.height, 0, 0); - break; - case 'circle': - break; - case 'group': - var gEl; - el = ''; - angular.forEach(element.elements, function(e, k) { - gEl = setupElement(e); - setAttributes(gEl, e); - - if(k === 0) { - el = s.group(gEl); - } else { - el.group(gEl); - } - }); - break; - default: - return false; - } - - /** Filters **/ - if(typeof element.defaultFilter !== 'undefined') { - if(element.defaultFilter !== '') { - el.attr({ - filter: filters[element.defaultFilter] - }); - } else { - el.attr({ - filter: '' - }); - } - } - - return el; - } - - // Setup our atrribtes on the specific element - function setAttributes(el, element) { - var attrs = functionise(element); - var elementData = attrs; - delete elementData.$$hashKey; - if(elementData.type === 'text') { - elementData.text = elementData.text.split('\n'); - } - - if(angular.isObject(elementData.draggable)) { - elementData.draggablex = elementData.draggable.x; - elementData.draggabley = elementData.draggable.y; - } - - el.attr(elementData); - - if(elementData.type === 'text') { - el.selectAll('tspan').forEach(function(tspan, i){ - tspan.attr({x: elementData.x, y: elementData.y + ((elementData.lineHeight || elementData.fontSize)*i)}); - }); - } - - return el; - } - - // Draw the elements on the SVG - function drawElements() { - // Make changes to the canvas - var canvasData = functionise(scope.svgConfig.canvas); - - s.attr({ - viewBox: '0, 0, ' + canvasData.width + ', ' + canvasData.height, - 'data-width': canvasData.width, - 'data-height': canvasData.height - }); - setAttributes(background, scope.svgConfig.canvas); - - var matrix; - - // Loop through all elements - angular.forEach(scope.svgConfig.elements, function(element, key) { - // Check if we have setup the element already - if(typeof elements[key] !== 'undefined') { - // The element already exists - el = elements[key]; - - // Store matrix transformation, we'll need it later to prevent the image moving around the SVG when replaced - matrix = el.matrix; - - // Create new element based on config - var newEl = setupElement(scope.svgConfig.elements[key]); - - if(newEl === false) { - return; - } - - // Place new element directly after old one - el.after(newEl); - - // Apply matrix transformation from previous element - newEl.transform(matrix); - - // Destroy old element - el.remove(); - - el = newEl; - - // Add the created element to a list of elements - elements[key] = el; - - if(el.type === 'g') { - // Store matrix transformation, we'll need it later to prevent the group moving around the SVG when replaced - matrix = el.matrix; - - // Destroy and recreate - el.remove(); - - // Create new element based on config - el = setupElement(scope.svgConfig.elements[key]); - - if(el === false) { - return; - } - - // Apply matrix transformation from previous element - el.transform(matrix); - - // Add the created element to a list of elements - elements[key] = el; - } - } else { - // Create new element based on config - el = setupElement(element); - - if(el === false) { - return; - } - - // Add the created element to a list of elements - elements[key] = el; - } - - if(element.draggable) { - el.hover(function(e) { - if(!s.elementDragging && element.showHoverArea) { - var bBox = this.getBBox(); - this.hoverRect = s.rect(bBox.x, bBox.y, bBox.width, bBox.height, 0, 0).attr({ - fill: 'rgba(0, 0, 0, 0.05)' - }); - this.before(this.hoverRect); - } - if(s.elementDragging && element.showHoverArea) { - this.unhoveringDuringDragging = false; - } - }, function(e) { - if(!s.elementDragging && element.showHoverArea && this.hoverRect) { - this.hoverRect.remove(); - } - if(s.elementDragging && element.showHoverArea && this.hoverRect) { - this.unhoveringDuringDragging = true; - } - }); - } - - // Update the attributes (e.g. text and colours) based on config data - var elementData = element; - delete elementData.$$hashKey; - - // Update the element! - setAttributes(el, element); - - // Check if we're to enable dragging - if(element.draggable) { - // We have to 'undrag' the element here, because they can get choppy after a few redraws otherwise - el.undrag(); - - if(angular.isObject(element.draggable)) { - // Drag dat - el.altDrag(element.draggable.x, element.draggable.y); - } else { - el.altDrag(true, true); - } - } - }); - } - - function resetSvg() { - var els = s.selectAll('*'); - angular.forEach(els, function(e, i) { - e.transform(''); - }); - } - - // Watch for changes on the scope and the theme, and redraw - scope.$watch('svgConfig', drawElements, true); - scope.$on('changeTheme', drawElements); - scope.$on('changeSize', drawElements); - scope.$on('changeSize', setupFilters); - scope.$on('resetSvg', resetSvg); - } - }; - }); diff --git a/app/scripts/directives/textanchoreditor.js b/app/scripts/directives/textanchoreditor.js deleted file mode 100644 index 8af7662..0000000 --- a/app/scripts/directives/textanchoreditor.js +++ /dev/null @@ -1,27 +0,0 @@ -'use strict'; - -/** - * @ngdoc directive - * @name cardkitApp.directive:textanchorEditor - * @description - * # textanchorEditor - */ -angular.module('cardkitApp') - .directive('textanchorEditor', function () { - return { - template: '
' + - '' + - '' + - '
', - restrict: 'E', - replace: true, - scope: { - element: '=' - }, - }; - }); diff --git a/app/scripts/directives/texteditor.js b/app/scripts/directives/texteditor.js deleted file mode 100644 index 170dc3b..0000000 --- a/app/scripts/directives/texteditor.js +++ /dev/null @@ -1,19 +0,0 @@ -'use strict'; - -/** - * @ngdoc directive - * @name cardkitApp.directive:textEditor - * @description - * # textEditor - */ -angular.module('cardkitApp') - .directive('textEditor', function () { - return { - template: '
', - restrict: 'E', - replace: true, - scope: { - element: '=' - } - }; - }); diff --git a/app/scripts/services/savesvgaspng.js b/app/scripts/services/savesvgaspng.js deleted file mode 100644 index 8cbeef5..0000000 --- a/app/scripts/services/savesvgaspng.js +++ /dev/null @@ -1,13 +0,0 @@ -'use strict'; - -/** - * @ngdoc service - * @name cardkitApp.saveSvgAsPng - * @description - * # saveSvgAsPng - * Service in the cardkitApp. - */ -angular.module('cardkitApp') - .service('saveSvgAsPng', function ($window) { - return $window.saveSvgAsPng; - }); diff --git a/app/scripts/services/snapsvg.js b/app/scripts/services/snapsvg.js deleted file mode 100644 index d2c5c41..0000000 --- a/app/scripts/services/snapsvg.js +++ /dev/null @@ -1,13 +0,0 @@ -'use strict'; - -/** - * @ngdoc service - * @name cardkitApp.snapSVG - * @description - * # snapSVG - * Service in the cardkitApp. - */ -angular.module('cardkitApp') - .service('snapSVG', function snapSVG($window) { - return $window.Snap; - }); diff --git a/app/scripts/services/themeconfigprovider.js b/app/scripts/services/themeconfigprovider.js deleted file mode 100644 index f3a3a2e..0000000 --- a/app/scripts/services/themeconfigprovider.js +++ /dev/null @@ -1,27 +0,0 @@ -'use strict'; - -/** - * @ngdoc provider - * @name cardkitApp.themeConfigProvider - * @description - * # themeConfigProvider - * Service in the cardkitApp. - */ -angular.module('cardkitApp') - .provider('themeConfigProvider', function () { - return { - $get: function($http, $q) { - var defaultConfig = $http.get('themes.config.json').catch(function(err) { - if(err.status === 404) { - return []; - } - - return $q.reject(err); - }); - - return $q.all([defaultConfig]).then(function(values){ - return values[0].data; - }); - } - }; - }); diff --git a/app/styles/_body.scss b/app/styles/_body.scss deleted file mode 100644 index 398906c..0000000 --- a/app/styles/_body.scss +++ /dev/null @@ -1,9 +0,0 @@ -#body { - max-width: 1200px; - margin: 0 auto; - padding: 20px; -} - -@import "svg"; - -@import "elements"; \ No newline at end of file diff --git a/app/styles/_config.scss b/app/styles/_config.scss deleted file mode 100644 index 2193751..0000000 --- a/app/styles/_config.scss +++ /dev/null @@ -1,26 +0,0 @@ -div.config-wrapper { - overflow: auto; - h3 { - text-transform: uppercase; - font-weight: 300; - margin: 0 0 5px; - font-size: 1.2em; - cursor: pointer; - user-select: none; - - small { - color: $secondary-color; - text-transform: initial; - } - } - - .panel { - margin-bottom: 20px; - padding: 10px 0 20px; - border-bottom: 1px solid lighten($primary-color, 30%); - - &:last-of-type { - border-bottom: 0px; - } - } -} \ No newline at end of file diff --git a/app/styles/_elements.scss b/app/styles/_elements.scss deleted file mode 100644 index a00c7b0..0000000 --- a/app/styles/_elements.scss +++ /dev/null @@ -1,66 +0,0 @@ -aside.elements { - width: 45%; - float: right; - padding: 0 0 0 5%; - margin-bottom: 40px; - border-left: 1px solid lighten($primary-color, 30%); - - .panel { - h3 { - text-transform: uppercase; - font-weight: 300; - margin: 0 0 5px; - font-size: 1.2em; - cursor: pointer; - user-select: none; - - small { - color: $secondary-color; - text-transform: initial; - } - } - - label { - font-weight: 300; - color: $secondary-color; - } - - .fileInputWrapper { - position: relative; - overflow: hidden; - margin: 110px auto 10px; - width: 50%; - text-align: center; - cursor: pointer; - - input { - position: absolute; - top: 0; - right: 0; - margin: 0; - padding: 0; - font-size: 20px; - cursor: pointer; - opacity: 0; - filter: alpha(opacity=0); - width: 100%; - } - } - - margin-bottom: 20px; - padding: 10px 0 20px; - border-bottom: 1px solid lighten($primary-color, 30%); - - &:last-of-type { - border-bottom: 0px; - } - } - - @media screen and (max-width: 828px) { - width: 100%; - float: none; - padding: 0; - border-left: 0px; - margin: 0 0 20px; - } -} \ No newline at end of file diff --git a/app/styles/_footer.scss b/app/styles/_footer.scss deleted file mode 100644 index 156a5a8..0000000 --- a/app/styles/_footer.scss +++ /dev/null @@ -1,17 +0,0 @@ -#footer { - margin: 0 auto; - padding: 10px 20px 0px; - position: fixed; bottom: 0; - width: 100%; - background: rgba(255, 255, 255, 0.6); - box-shadow: 0px -2px 0 #dadada; - - p.version { - font-weight: 800; - margin: 0; - } - - p.credits { - - } -} \ No newline at end of file diff --git a/app/styles/_header.scss b/app/styles/_header.scss deleted file mode 100644 index b07ab60..0000000 --- a/app/styles/_header.scss +++ /dev/null @@ -1,30 +0,0 @@ -#header { - background: $header-background-color; - color: $header-color; - padding: 10px 12px; - height: 50px; - - a.logo { - background-image: url($logo-src); - width: 115px; - height: 30px; - background-size: contain; - background-repeat: no-repeat; - background-position: center; - display: inline-block; - float: left; - } - - @media screen and (max-width: 828px) { - padding: 0; - height: auto; - overflow: hidden; - - a.logo { - float: none; - margin: 10px 0 5px 12px; - } - } -} - -@import "nav"; \ No newline at end of file diff --git a/app/styles/_mixins.scss b/app/styles/_mixins.scss deleted file mode 100644 index 4c1a326..0000000 --- a/app/styles/_mixins.scss +++ /dev/null @@ -1,27 +0,0 @@ -@mixin inline-list { - letter-spacing: -4px; - list-style-type: none; - margin: 0; padding: 0; - - li { - letter-spacing: normal; - display: inline-block; - } -} - -@mixin button($background-color, $color) { - padding: 5px 10px; - background: $background-color; - - border: 0px; outline: 0px; - -webkit-appearance: none; - - font-family: $font-family; font-size: 1em; - color: $color; - cursor: pointer; - margin: 0 0 20px; - - &:hover { - background: darken($background-color, 10%); - } -} \ No newline at end of file diff --git a/app/styles/_nav.scss b/app/styles/_nav.scss deleted file mode 100644 index a06b843..0000000 --- a/app/styles/_nav.scss +++ /dev/null @@ -1,57 +0,0 @@ -#nav { - float: right; - padding: 4px 0; - - ul { - @include inline-list; - - li { - margin: 0 10px 0 0; - - &.link { - a { - @include button($nav-button-background-color, $nav-button-color); - } - } - - &.text { - font-size: 1.2em; - font-weight: 300; - } - - &:last-of-type { - margin: 0; - } - } - } - - @media screen and (max-width: 828px) { - float: none; - padding: 0; - - ul { - display: block; - width: 100%; - background: lighten($header-background-color, 20%); - padding: 5px 0; - - li { - display: block; - padding: 5px 10px; - margin: 0; - - &.link { - a { - @include button($nav-button-background-color, $nav-button-color); - display: block; - margin: 0; - } - } - - &.text { - font-size: 1em; - } - } - } - } -} \ No newline at end of file diff --git a/app/styles/_reset.scss b/app/styles/_reset.scss deleted file mode 100644 index 08ec2c6..0000000 --- a/app/styles/_reset.scss +++ /dev/null @@ -1,3 +0,0 @@ -h1, h2, h3, h4, h5, h6, p { - margin: 0 0 1em; -} \ No newline at end of file diff --git a/app/styles/_settings.scss b/app/styles/_settings.scss deleted file mode 100644 index 9e2608d..0000000 --- a/app/styles/_settings.scss +++ /dev/null @@ -1,17 +0,0 @@ -$font-family: "Open Sans", Helvetica, sans-serif; -$font-size: 14px; - -$primary-color: #4da5bd; -$secondary-color: #384e87; -$color: #000000; -$success-color: #8cce67; -$danger-color: #d28b8e; - -$logo-src: 'data:image/png;base64,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'; -/** Header **/ -$header-background-color: $primary-color; -$header-color: #FFFFFF; - -/** Nav **/ -$nav-button-background-color: #367384; -$nav-button-color: #FFFFFF; \ No newline at end of file diff --git a/app/styles/_svg.scss b/app/styles/_svg.scss deleted file mode 100644 index 87fec1d..0000000 --- a/app/styles/_svg.scss +++ /dev/null @@ -1,27 +0,0 @@ -div.svg { - width: 50%; - max-width: 580px; - overflow: auto; - padding: 0 0 40px; - - &.fixed { - position: fixed; - top: 20px; - height: 90%; - } - - @import "card"; - - @import "config"; - - @media screen and (max-width: 828px) { - width: 100%; - max-width: 100%; - - &.fixed { - position: relative; - top: auto; - height: auto; - } - } -} \ No newline at end of file diff --git a/app/styles/main.scss b/app/styles/main.scss deleted file mode 100644 index 7429da7..0000000 --- a/app/styles/main.scss +++ /dev/null @@ -1,101 +0,0 @@ -@import "settings"; -@import "mixins"; -@import "reset"; - -// bower:scss -// endbower - -*, *:before, *:after { - box-sizing: border-box; -} - -@font-face { - font-family: 'TimesModern-Regular-Italic'; - src: url(data:application/x-font-woff;charset=utf-8;base64,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) format('woff'); - font-weight: normal; - font-style: normal; -} - -// Body -body { - font-family: $font-family; - font-size: $font-size; - margin: 0px; - padding: 0 0 100px; -} - -// Links -a { - text-decoration: none; -} - -// Buttons -.button { - @include button($primary-color, #FFFFFF); - - &.button-danger { - @include button($danger-color, #FFFFFF); - } - - &.button-success { - @include button($success-color, #FFFFFF); - } -} - -.pull-right { - float: right; -} - -// Header -@import "header"; - -// Body -@import "body"; - -// Footer -@import "footer"; - -// SVGs -#svg, #snap-svg { - [draggable="true"] { - cursor: move; - } - - [draggablex="true"] { - cursor: ew-resize; - } - - [draggabley="true"] { - cursor: ns-resize; - } - - [draggablex="true"][draggabley="true"] { - cursor: move; - } -} - -#filters-svg { -} - -// Dropzone -.dropzone { - border: 2px dashed #b7b7b7; - width: 100%; - height: 200px; - position: relative; - margin: 0 0 10px; - - &:before { - content: 'Drop your image here'; - color: #b7b7b7; - font-size: 2em; - position: absolute; - top: 60px; left: 0; - width: 100%; - text-align: center; - } - - &.drag-over-accept { - background: #eaeaea; - } -} diff --git a/app/themes.config.json b/app/themes.config.json deleted file mode 100644 index 480c353..0000000 --- a/app/themes.config.json +++ /dev/null @@ -1,16 +0,0 @@ -[{ - "name": "CardKit #1", - "background": "#FFFFFF", - "headline": "#3a3a3a", - "quote": "#3a3a3a", - "headlineFont": "\"Open Sans\", Helvetica, sans-serif", - "logoSrc": "data:image/png;base64,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" -}, { - "name": "CardKit #2", - "default": true, - "background": "#48a5be", - "headline": "#FFFFFF", - "quote": "#FFFFFF", - "headlineFont": "\"Open Sans\", Helvetica, sans-serif", - "logoSrc": "data:image/png;base64,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" -}] diff --git a/app/views/main.html b/app/views/main.html deleted file mode 100644 index 45bd048..0000000 --- a/app/views/main.html +++ /dev/null @@ -1,100 +0,0 @@ -
- - - - - -
-
- - - -
- -
-
-

Dimensions Choose your image output size

- -
- -
-

Theme Choose the look and feel

- -
- -
-

Scale ({{config.output.scale}}x) Choose the scaled output size

- -
-
-
-
diff --git a/bower.json b/bower.json deleted file mode 100644 index 6a89a30..0000000 --- a/bower.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "name": "cardkit", - "version": "2.0.0", - "dependencies": { - "angular": "~1.2.0", - "json3": "~3.3.1", - "es5-shim": "~3.1.0", - "angular-resource": "~1.2.0", - "angular-cookies": "~1.2.0", - "angular-sanitize": "~1.2.0", - "angular-animate": "~1.2.0", - "angular-touch": "~1.2.0", - "angular-route": "~1.2.0", - "snap.svg": "~0.3.0", - "angular-bootstrap-colorpicker": "~3.0.11", - "angular-draganddrop": "~0.2.1", - "angular-ui-router": "~0.2.13", - "awesome-form": "*", - "jquery": "~2.1.3", - "fontawesome": "~4.3.0" - }, - "devDependencies": { - "angular-mocks": "~1.2.0", - "angular-scenario": "~1.2.0" - }, - "appPath": "app" -} diff --git a/bower_components/saveSvgAsPng/.bower.json b/bower_components/saveSvgAsPng/.bower.json deleted file mode 100644 index 872f193..0000000 --- a/bower_components/saveSvgAsPng/.bower.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "name": "saveSvgAsPng", - "homepage": "https://github.com/exupero/saveSvgAsPng", - "_release": "b8c33c0d12", - "_resolution": { - "type": "branch", - "branch": "gh-pages", - "commit": "b8c33c0d12e13b1ab32d465d13f5a1b9c20cf8df" - }, - "_source": "git://github.com/exupero/saveSvgAsPng.git", - "_target": "gh-pages", - "_originalSource": "exupero/saveSvgAsPng" -} \ No newline at end of file diff --git a/bower_components/saveSvgAsPng/LICENSE b/bower_components/saveSvgAsPng/LICENSE deleted file mode 100644 index 4bb8987..0000000 --- a/bower_components/saveSvgAsPng/LICENSE +++ /dev/null @@ -1,22 +0,0 @@ -The MIT License (MIT) - -Copyright (c) 2014 Eric Shull - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. - diff --git a/bower_components/saveSvgAsPng/README.md b/bower_components/saveSvgAsPng/README.md deleted file mode 100644 index 4c23693..0000000 --- a/bower_components/saveSvgAsPng/README.md +++ /dev/null @@ -1,31 +0,0 @@ -saveSvgAsPng -============ - -To save a PNG, include the script `saveSvgAsPng.js` in your page, then call the `saveSvgAsPng` function with an SVG node and a filename: - -```javascript -saveSvgAsPng(document.getElementById("diagram"), "diagram.png"); -``` - -The filename is the preferred filename when saving the image to the file system. The browser may change the name of the file if there is already a file by that name in the target directory. - -If you want to scale the image up or down, you can pass a scale factor in an options object: - -```javascript -saveSvgAsPng(document.getElementById("diagram"), "diagram.png", {scale: 0.5}); -``` - -If you just want a dataURI for an SVG, you can call `svgAsDataUri` with an SVG node, options, and a callback: - -```javascript -svgAsDataUri(document.getElementById("diagram"), {}, function(uri) { - ... -}); -``` - -Compatible with browserify. - -Browser Support ---------------- - -saveSvgAsPng relies on the canvas element's `toDataURL`, which throws a SecurityError in IE. diff --git a/bower_components/saveSvgAsPng/bootstrap.min.css b/bower_components/saveSvgAsPng/bootstrap.min.css deleted file mode 100644 index 6f2e02b..0000000 --- a/bower_components/saveSvgAsPng/bootstrap.min.css +++ /dev/null @@ -1,8 +0,0 @@ -/*! - * Bootstrap v3.0.0 by @fat and @mdo - * Copyright 2013 Twitter, Inc. - * Licensed under http://www.apache.org/licenses/LICENSE-2.0 - * - * Designed and built with all the love in the world by @mdo and @fat. - */ -/*! normalize.css v2.1.3 | MIT License | git.io/normalize */article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary{display:block}audio,canvas,video{display:inline-block}audio:not([controls]){display:none;height:0}[hidden],template{display:none}html{font-family:sans-serif;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}body{margin:0}a{background:transparent}a:focus{outline:thin dotted}a:active,a:hover{outline:0}h1{margin:.67em 0;font-size:2em}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:bold}dfn{font-style:italic}hr{height:0;-moz-box-sizing:content-box;box-sizing:content-box}mark{color:#000;background:#ff0}code,kbd,pre,samp{font-family:monospace,serif;font-size:1em}pre{white-space:pre-wrap}q{quotes:"\201C" "\201D" "\2018" "\2019"}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sup{top:-0.5em}sub{bottom:-0.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:0}fieldset{padding:.35em .625em .75em;margin:0 2px;border:1px solid #c0c0c0}legend{padding:0;border:0}button,input,select,textarea{margin:0;font-family:inherit;font-size:100%}button,input{line-height:normal}button,select{text-transform:none}button,html input[type="button"],input[type="reset"],input[type="submit"]{cursor:pointer;-webkit-appearance:button}button[disabled],html input[disabled]{cursor:default}input[type="checkbox"],input[type="radio"]{padding:0;box-sizing:border-box}input[type="search"]{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;-webkit-appearance:textfield}input[type="search"]::-webkit-search-cancel-button,input[type="search"]::-webkit-search-decoration{-webkit-appearance:none}button::-moz-focus-inner,input::-moz-focus-inner{padding:0;border:0}textarea{overflow:auto;vertical-align:top}table{border-collapse:collapse;border-spacing:0}@media print{*{color:#000!important;text-shadow:none!important;background:transparent!important;box-shadow:none!important}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}abbr[title]:after{content:" (" attr(title) ")"}.ir a:after,a[href^="javascript:"]:after,a[href^="#"]:after{content:""}pre,blockquote{border:1px solid #999;page-break-inside:avoid}thead{display:table-header-group}tr,img{page-break-inside:avoid}img{max-width:100%!important}@page{margin:2cm .5cm}p,h2,h3{orphans:3;widows:3}h2,h3{page-break-after:avoid}.navbar{display:none}.table td,.table th{background-color:#fff!important}.btn>.caret,.dropup>.btn>.caret{border-top-color:#000!important}.label{border:1px solid #000}.table{border-collapse:collapse!important}.table-bordered th,.table-bordered td{border:1px solid #ddd!important}}*,*:before,*:after{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}html{font-size:62.5%;-webkit-tap-highlight-color:rgba(0,0,0,0)}body{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;line-height:1.428571429;color:#333;background-color:#fff}input,button,select,textarea{font-family:inherit;font-size:inherit;line-height:inherit}a{color:#428bca;text-decoration:none}a:hover,a:focus{color:#2a6496;text-decoration:underline}a:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}img{vertical-align:middle}.img-responsive{display:block;height:auto;max-width:100%}.img-rounded{border-radius:6px}.img-thumbnail{display:inline-block;height:auto;max-width:100%;padding:4px;line-height:1.428571429;background-color:#fff;border:1px solid #ddd;border-radius:4px;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.img-circle{border-radius:50%}hr{margin-top:20px;margin-bottom:20px;border:0;border-top:1px solid #eee}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);border:0}p{margin:0 0 10px}.lead{margin-bottom:20px;font-size:16.099999999999998px;font-weight:200;line-height:1.4}@media(min-width:768px){.lead{font-size:21px}}small,.small{font-size:85%}cite{font-style:normal}.text-muted{color:#999}.text-primary{color:#428bca}.text-primary:hover{color:#3071a9}.text-warning{color:#c09853}.text-warning:hover{color:#a47e3c}.text-danger{color:#b94a48}.text-danger:hover{color:#953b39}.text-success{color:#468847}.text-success:hover{color:#356635}.text-info{color:#3a87ad}.text-info:hover{color:#2d6987}.text-left{text-align:left}.text-right{text-align:right}.text-center{text-align:center}h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-weight:500;line-height:1.1;color:inherit}h1 small,h2 small,h3 small,h4 small,h5 small,h6 small,.h1 small,.h2 small,.h3 small,.h4 small,.h5 small,.h6 small{font-weight:normal;line-height:1;color:#999}h1,h2,h3{margin-top:20px;margin-bottom:10px}h1 small,h2 small,h3 small{font-size:65%}h4,h5,h6{margin-top:10px;margin-bottom:10px}h4 small,h5 small,h6 small{font-size:75%}h1,.h1{font-size:36px}h2,.h2{font-size:30px}h3,.h3{font-size:24px}h4,.h4{font-size:18px}h5,.h5{font-size:14px}h6,.h6{font-size:12px}.page-header{padding-bottom:9px;margin:40px 0 20px;border-bottom:1px solid #eee}ul,ol{margin-top:0;margin-bottom:10px}ul ul,ol ul,ul ol,ol ol{margin-bottom:0}.list-unstyled{padding-left:0;list-style:none}.list-inline{padding-left:0;list-style:none}.list-inline>li{display:inline-block;padding-right:5px;padding-left:5px}dl{margin-bottom:20px}dt,dd{line-height:1.428571429}dt{font-weight:bold}dd{margin-left:0}@media(min-width:768px){.dl-horizontal dt{float:left;width:160px;overflow:hidden;clear:left;text-align:right;text-overflow:ellipsis;white-space:nowrap}.dl-horizontal dd{margin-left:180px}.dl-horizontal dd:before,.dl-horizontal dd:after{display:table;content:" "}.dl-horizontal dd:after{clear:both}.dl-horizontal dd:before,.dl-horizontal dd:after{display:table;content:" "}.dl-horizontal dd:after{clear:both}}abbr[title],abbr[data-original-title]{cursor:help;border-bottom:1px dotted #999}abbr.initialism{font-size:90%;text-transform:uppercase}blockquote{padding:10px 20px;margin:0 0 20px;border-left:5px solid #eee}blockquote p{font-size:17.5px;font-weight:300;line-height:1.25}blockquote p:last-child{margin-bottom:0}blockquote small{display:block;line-height:1.428571429;color:#999}blockquote small:before{content:'\2014 \00A0'}blockquote.pull-right{padding-right:15px;padding-left:0;border-right:5px solid #eee;border-left:0}blockquote.pull-right p,blockquote.pull-right small{text-align:right}blockquote.pull-right small:before{content:''}blockquote.pull-right small:after{content:'\00A0 \2014'}blockquote:before,blockquote:after{content:""}address{margin-bottom:20px;font-style:normal;line-height:1.428571429}code,kdb,pre,samp{font-family:Monaco,Menlo,Consolas,"Courier New",monospace}code{padding:2px 4px;font-size:90%;color:#c7254e;white-space:nowrap;background-color:#f9f2f4;border-radius:4px}pre{display:block;padding:9.5px;margin:0 0 10px;font-size:13px;line-height:1.428571429;color:#333;word-break:break-all;word-wrap:break-word;background-color:#f5f5f5;border:1px solid #ccc;border-radius:4px}pre code{padding:0;font-size:inherit;color:inherit;white-space:pre-wrap;background-color:transparent;border:0}.pre-scrollable{max-height:340px;overflow-y:scroll}.container{padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}.container:before,.container:after{display:table;content:" "}.container:after{clear:both}.container:before,.container:after{display:table;content:" "}.container:after{clear:both}.row{margin-right:-15px;margin-left:-15px}.row:before,.row:after{display:table;content:" "}.row:after{clear:both}.row:before,.row:after{display:table;content:" "}.row:after{clear:both}.col-xs-1,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9,.col-xs-10,.col-xs-11,.col-xs-12,.col-sm-1,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-10,.col-sm-11,.col-sm-12,.col-md-1,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-10,.col-md-11,.col-md-12,.col-lg-1,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-10,.col-lg-11,.col-lg-12{position:relative;min-height:1px;padding-right:15px;padding-left:15px}.col-xs-1,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9,.col-xs-10,.col-xs-11{float:left}.col-xs-1{width:8.333333333333332%}.col-xs-2{width:16.666666666666664%}.col-xs-3{width:25%}.col-xs-4{width:33.33333333333333%}.col-xs-5{width:41.66666666666667%}.col-xs-6{width:50%}.col-xs-7{width:58.333333333333336%}.col-xs-8{width:66.66666666666666%}.col-xs-9{width:75%}.col-xs-10{width:83.33333333333334%}.col-xs-11{width:91.66666666666666%}.col-xs-12{width:100%}@media(min-width:768px){.container{width:750px}.col-sm-1,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-10,.col-sm-11{float:left}.col-sm-1{width:8.333333333333332%}.col-sm-2{width:16.666666666666664%}.col-sm-3{width:25%}.col-sm-4{width:33.33333333333333%}.col-sm-5{width:41.66666666666667%}.col-sm-6{width:50%}.col-sm-7{width:58.333333333333336%}.col-sm-8{width:66.66666666666666%}.col-sm-9{width:75%}.col-sm-10{width:83.33333333333334%}.col-sm-11{width:91.66666666666666%}.col-sm-12{width:100%}.col-sm-push-1{left:8.333333333333332%}.col-sm-push-2{left:16.666666666666664%}.col-sm-push-3{left:25%}.col-sm-push-4{left:33.33333333333333%}.col-sm-push-5{left:41.66666666666667%}.col-sm-push-6{left:50%}.col-sm-push-7{left:58.333333333333336%}.col-sm-push-8{left:66.66666666666666%}.col-sm-push-9{left:75%}.col-sm-push-10{left:83.33333333333334%}.col-sm-push-11{left:91.66666666666666%}.col-sm-pull-1{right:8.333333333333332%}.col-sm-pull-2{right:16.666666666666664%}.col-sm-pull-3{right:25%}.col-sm-pull-4{right:33.33333333333333%}.col-sm-pull-5{right:41.66666666666667%}.col-sm-pull-6{right:50%}.col-sm-pull-7{right:58.333333333333336%}.col-sm-pull-8{right:66.66666666666666%}.col-sm-pull-9{right:75%}.col-sm-pull-10{right:83.33333333333334%}.col-sm-pull-11{right:91.66666666666666%}.col-sm-offset-1{margin-left:8.333333333333332%}.col-sm-offset-2{margin-left:16.666666666666664%}.col-sm-offset-3{margin-left:25%}.col-sm-offset-4{margin-left:33.33333333333333%}.col-sm-offset-5{margin-left:41.66666666666667%}.col-sm-offset-6{margin-left:50%}.col-sm-offset-7{margin-left:58.333333333333336%}.col-sm-offset-8{margin-left:66.66666666666666%}.col-sm-offset-9{margin-left:75%}.col-sm-offset-10{margin-left:83.33333333333334%}.col-sm-offset-11{margin-left:91.66666666666666%}}@media(min-width:992px){.container{width:970px}.col-md-1,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-10,.col-md-11{float:left}.col-md-1{width:8.333333333333332%}.col-md-2{width:16.666666666666664%}.col-md-3{width:25%}.col-md-4{width:33.33333333333333%}.col-md-5{width:41.66666666666667%}.col-md-6{width:50%}.col-md-7{width:58.333333333333336%}.col-md-8{width:66.66666666666666%}.col-md-9{width:75%}.col-md-10{width:83.33333333333334%}.col-md-11{width:91.66666666666666%}.col-md-12{width:100%}.col-md-push-0{left:auto}.col-md-push-1{left:8.333333333333332%}.col-md-push-2{left:16.666666666666664%}.col-md-push-3{left:25%}.col-md-push-4{left:33.33333333333333%}.col-md-push-5{left:41.66666666666667%}.col-md-push-6{left:50%}.col-md-push-7{left:58.333333333333336%}.col-md-push-8{left:66.66666666666666%}.col-md-push-9{left:75%}.col-md-push-10{left:83.33333333333334%}.col-md-push-11{left:91.66666666666666%}.col-md-pull-0{right:auto}.col-md-pull-1{right:8.333333333333332%}.col-md-pull-2{right:16.666666666666664%}.col-md-pull-3{right:25%}.col-md-pull-4{right:33.33333333333333%}.col-md-pull-5{right:41.66666666666667%}.col-md-pull-6{right:50%}.col-md-pull-7{right:58.333333333333336%}.col-md-pull-8{right:66.66666666666666%}.col-md-pull-9{right:75%}.col-md-pull-10{right:83.33333333333334%}.col-md-pull-11{right:91.66666666666666%}.col-md-offset-0{margin-left:0}.col-md-offset-1{margin-left:8.333333333333332%}.col-md-offset-2{margin-left:16.666666666666664%}.col-md-offset-3{margin-left:25%}.col-md-offset-4{margin-left:33.33333333333333%}.col-md-offset-5{margin-left:41.66666666666667%}.col-md-offset-6{margin-left:50%}.col-md-offset-7{margin-left:58.333333333333336%}.col-md-offset-8{margin-left:66.66666666666666%}.col-md-offset-9{margin-left:75%}.col-md-offset-10{margin-left:83.33333333333334%}.col-md-offset-11{margin-left:91.66666666666666%}}@media(min-width:1200px){.container{width:1170px}.col-lg-1,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-10,.col-lg-11{float:left}.col-lg-1{width:8.333333333333332%}.col-lg-2{width:16.666666666666664%}.col-lg-3{width:25%}.col-lg-4{width:33.33333333333333%}.col-lg-5{width:41.66666666666667%}.col-lg-6{width:50%}.col-lg-7{width:58.333333333333336%}.col-lg-8{width:66.66666666666666%}.col-lg-9{width:75%}.col-lg-10{width:83.33333333333334%}.col-lg-11{width:91.66666666666666%}.col-lg-12{width:100%}.col-lg-push-0{left:auto}.col-lg-push-1{left:8.333333333333332%}.col-lg-push-2{left:16.666666666666664%}.col-lg-push-3{left:25%}.col-lg-push-4{left:33.33333333333333%}.col-lg-push-5{left:41.66666666666667%}.col-lg-push-6{left:50%}.col-lg-push-7{left:58.333333333333336%}.col-lg-push-8{left:66.66666666666666%}.col-lg-push-9{left:75%}.col-lg-push-10{left:83.33333333333334%}.col-lg-push-11{left:91.66666666666666%}.col-lg-pull-0{right:auto}.col-lg-pull-1{right:8.333333333333332%}.col-lg-pull-2{right:16.666666666666664%}.col-lg-pull-3{right:25%}.col-lg-pull-4{right:33.33333333333333%}.col-lg-pull-5{right:41.66666666666667%}.col-lg-pull-6{right:50%}.col-lg-pull-7{right:58.333333333333336%}.col-lg-pull-8{right:66.66666666666666%}.col-lg-pull-9{right:75%}.col-lg-pull-10{right:83.33333333333334%}.col-lg-pull-11{right:91.66666666666666%}.col-lg-offset-0{margin-left:0}.col-lg-offset-1{margin-left:8.333333333333332%}.col-lg-offset-2{margin-left:16.666666666666664%}.col-lg-offset-3{margin-left:25%}.col-lg-offset-4{margin-left:33.33333333333333%}.col-lg-offset-5{margin-left:41.66666666666667%}.col-lg-offset-6{margin-left:50%}.col-lg-offset-7{margin-left:58.333333333333336%}.col-lg-offset-8{margin-left:66.66666666666666%}.col-lg-offset-9{margin-left:75%}.col-lg-offset-10{margin-left:83.33333333333334%}.col-lg-offset-11{margin-left:91.66666666666666%}}table{max-width:100%;background-color:transparent}th{text-align:left}.table{width:100%;margin-bottom:20px}.table>thead>tr>th,.table>tbody>tr>th,.table>tfoot>tr>th,.table>thead>tr>td,.table>tbody>tr>td,.table>tfoot>tr>td{padding:8px;line-height:1.428571429;vertical-align:top;border-top:1px solid #ddd}.table>thead>tr>th{vertical-align:bottom;border-bottom:2px solid #ddd}.table>caption+thead>tr:first-child>th,.table>colgroup+thead>tr:first-child>th,.table>thead:first-child>tr:first-child>th,.table>caption+thead>tr:first-child>td,.table>colgroup+thead>tr:first-child>td,.table>thead:first-child>tr:first-child>td{border-top:0}.table>tbody+tbody{border-top:2px solid #ddd}.table .table{background-color:#fff}.table-condensed>thead>tr>th,.table-condensed>tbody>tr>th,.table-condensed>tfoot>tr>th,.table-condensed>thead>tr>td,.table-condensed>tbody>tr>td,.table-condensed>tfoot>tr>td{padding:5px}.table-bordered{border:1px solid #ddd}.table-bordered>thead>tr>th,.table-bordered>tbody>tr>th,.table-bordered>tfoot>tr>th,.table-bordered>thead>tr>td,.table-bordered>tbody>tr>td,.table-bordered>tfoot>tr>td{border:1px solid #ddd}.table-bordered>thead>tr>th,.table-bordered>thead>tr>td{border-bottom-width:2px}.table-striped>tbody>tr:nth-child(odd)>td,.table-striped>tbody>tr:nth-child(odd)>th{background-color:#f9f9f9}.table-hover>tbody>tr:hover>td,.table-hover>tbody>tr:hover>th{background-color:#f5f5f5}table col[class*="col-"]{display:table-column;float:none}table td[class*="col-"],table th[class*="col-"]{display:table-cell;float:none}.table>thead>tr>td.active,.table>tbody>tr>td.active,.table>tfoot>tr>td.active,.table>thead>tr>th.active,.table>tbody>tr>th.active,.table>tfoot>tr>th.active,.table>thead>tr.active>td,.table>tbody>tr.active>td,.table>tfoot>tr.active>td,.table>thead>tr.active>th,.table>tbody>tr.active>th,.table>tfoot>tr.active>th{background-color:#f5f5f5}.table>thead>tr>td.success,.table>tbody>tr>td.success,.table>tfoot>tr>td.success,.table>thead>tr>th.success,.table>tbody>tr>th.success,.table>tfoot>tr>th.success,.table>thead>tr.success>td,.table>tbody>tr.success>td,.table>tfoot>tr.success>td,.table>thead>tr.success>th,.table>tbody>tr.success>th,.table>tfoot>tr.success>th{background-color:#dff0d8;border-color:#d6e9c6}.table-hover>tbody>tr>td.success:hover,.table-hover>tbody>tr>th.success:hover,.table-hover>tbody>tr.success:hover>td,.table-hover>tbody>tr.success:hover>th{background-color:#d0e9c6;border-color:#c9e2b3}.table>thead>tr>td.danger,.table>tbody>tr>td.danger,.table>tfoot>tr>td.danger,.table>thead>tr>th.danger,.table>tbody>tr>th.danger,.table>tfoot>tr>th.danger,.table>thead>tr.danger>td,.table>tbody>tr.danger>td,.table>tfoot>tr.danger>td,.table>thead>tr.danger>th,.table>tbody>tr.danger>th,.table>tfoot>tr.danger>th{background-color:#f2dede;border-color:#ebccd1}.table-hover>tbody>tr>td.danger:hover,.table-hover>tbody>tr>th.danger:hover,.table-hover>tbody>tr.danger:hover>td,.table-hover>tbody>tr.danger:hover>th{background-color:#ebcccc;border-color:#e4b9c0}.table>thead>tr>td.warning,.table>tbody>tr>td.warning,.table>tfoot>tr>td.warning,.table>thead>tr>th.warning,.table>tbody>tr>th.warning,.table>tfoot>tr>th.warning,.table>thead>tr.warning>td,.table>tbody>tr.warning>td,.table>tfoot>tr.warning>td,.table>thead>tr.warning>th,.table>tbody>tr.warning>th,.table>tfoot>tr.warning>th{background-color:#fcf8e3;border-color:#faebcc}.table-hover>tbody>tr>td.warning:hover,.table-hover>tbody>tr>th.warning:hover,.table-hover>tbody>tr.warning:hover>td,.table-hover>tbody>tr.warning:hover>th{background-color:#faf2cc;border-color:#f7e1b5}@media(max-width:768px){.table-responsive{width:100%;margin-bottom:15px;overflow-x:scroll;overflow-y:hidden;border:1px solid #ddd;-ms-overflow-style:-ms-autohiding-scrollbar;-webkit-overflow-scrolling:touch}.table-responsive>.table{margin-bottom:0}.table-responsive>.table>thead>tr>th,.table-responsive>.table>tbody>tr>th,.table-responsive>.table>tfoot>tr>th,.table-responsive>.table>thead>tr>td,.table-responsive>.table>tbody>tr>td,.table-responsive>.table>tfoot>tr>td{white-space:nowrap}.table-responsive>.table-bordered{border:0}.table-responsive>.table-bordered>thead>tr>th:first-child,.table-responsive>.table-bordered>tbody>tr>th:first-child,.table-responsive>.table-bordered>tfoot>tr>th:first-child,.table-responsive>.table-bordered>thead>tr>td:first-child,.table-responsive>.table-bordered>tbody>tr>td:first-child,.table-responsive>.table-bordered>tfoot>tr>td:first-child{border-left:0}.table-responsive>.table-bordered>thead>tr>th:last-child,.table-responsive>.table-bordered>tbody>tr>th:last-child,.table-responsive>.table-bordered>tfoot>tr>th:last-child,.table-responsive>.table-bordered>thead>tr>td:last-child,.table-responsive>.table-bordered>tbody>tr>td:last-child,.table-responsive>.table-bordered>tfoot>tr>td:last-child{border-right:0}.table-responsive>.table-bordered>tbody>tr:last-child>th,.table-responsive>.table-bordered>tfoot>tr:last-child>th,.table-responsive>.table-bordered>tbody>tr:last-child>td,.table-responsive>.table-bordered>tfoot>tr:last-child>td{border-bottom:0}}fieldset{padding:0;margin:0;border:0}legend{display:block;width:100%;padding:0;margin-bottom:20px;font-size:21px;line-height:inherit;color:#333;border:0;border-bottom:1px solid #e5e5e5}label{display:inline-block;margin-bottom:5px;font-weight:bold}input[type="search"]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}input[type="radio"],input[type="checkbox"]{margin:4px 0 0;margin-top:1px \9;line-height:normal}input[type="file"]{display:block}select[multiple],select[size]{height:auto}select optgroup{font-family:inherit;font-size:inherit;font-style:inherit}input[type="file"]:focus,input[type="radio"]:focus,input[type="checkbox"]:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}input[type="number"]::-webkit-outer-spin-button,input[type="number"]::-webkit-inner-spin-button{height:auto}output{display:block;padding-top:7px;font-size:14px;line-height:1.428571429;color:#555;vertical-align:middle}.form-control:-moz-placeholder{color:#999}.form-control::-moz-placeholder{color:#999}.form-control:-ms-input-placeholder{color:#999}.form-control::-webkit-input-placeholder{color:#999}.form-control{display:block;width:100%;height:34px;padding:6px 12px;font-size:14px;line-height:1.428571429;color:#555;vertical-align:middle;background-color:#fff;background-image:none;border:1px solid #ccc;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-webkit-transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s;transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s}.form-control:focus{border-color:#66afe9;outline:0;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(102,175,233,0.6);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(102,175,233,0.6)}.form-control[disabled],.form-control[readonly],fieldset[disabled] .form-control{cursor:not-allowed;background-color:#eee}textarea.form-control{height:auto}.form-group{margin-bottom:15px}.radio,.checkbox{display:block;min-height:20px;padding-left:20px;margin-top:10px;margin-bottom:10px;vertical-align:middle}.radio label,.checkbox label{display:inline;margin-bottom:0;font-weight:normal;cursor:pointer}.radio input[type="radio"],.radio-inline input[type="radio"],.checkbox input[type="checkbox"],.checkbox-inline input[type="checkbox"]{float:left;margin-left:-20px}.radio+.radio,.checkbox+.checkbox{margin-top:-5px}.radio-inline,.checkbox-inline{display:inline-block;padding-left:20px;margin-bottom:0;font-weight:normal;vertical-align:middle;cursor:pointer}.radio-inline+.radio-inline,.checkbox-inline+.checkbox-inline{margin-top:0;margin-left:10px}input[type="radio"][disabled],input[type="checkbox"][disabled],.radio[disabled],.radio-inline[disabled],.checkbox[disabled],.checkbox-inline[disabled],fieldset[disabled] input[type="radio"],fieldset[disabled] input[type="checkbox"],fieldset[disabled] .radio,fieldset[disabled] .radio-inline,fieldset[disabled] .checkbox,fieldset[disabled] .checkbox-inline{cursor:not-allowed}.input-sm{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}select.input-sm{height:30px;line-height:30px}textarea.input-sm{height:auto}.input-lg{height:45px;padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}select.input-lg{height:45px;line-height:45px}textarea.input-lg{height:auto}.has-warning .help-block,.has-warning .control-label{color:#c09853}.has-warning .form-control{border-color:#c09853;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.has-warning .form-control:focus{border-color:#a47e3c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #dbc59e;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #dbc59e}.has-warning .input-group-addon{color:#c09853;background-color:#fcf8e3;border-color:#c09853}.has-error .help-block,.has-error .control-label{color:#b94a48}.has-error .form-control{border-color:#b94a48;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.has-error .form-control:focus{border-color:#953b39;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #d59392;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #d59392}.has-error .input-group-addon{color:#b94a48;background-color:#f2dede;border-color:#b94a48}.has-success .help-block,.has-success .control-label{color:#468847}.has-success .form-control{border-color:#468847;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.has-success .form-control:focus{border-color:#356635;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7aba7b;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7aba7b}.has-success .input-group-addon{color:#468847;background-color:#dff0d8;border-color:#468847}.form-control-static{padding-top:7px;margin-bottom:0}.help-block{display:block;margin-top:5px;margin-bottom:10px;color:#737373}@media(min-width:768px){.form-inline .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.form-inline .form-control{display:inline-block}.form-inline .radio,.form-inline .checkbox{display:inline-block;padding-left:0;margin-top:0;margin-bottom:0}.form-inline .radio input[type="radio"],.form-inline .checkbox input[type="checkbox"]{float:none;margin-left:0}}.form-horizontal .control-label,.form-horizontal .radio,.form-horizontal .checkbox,.form-horizontal .radio-inline,.form-horizontal .checkbox-inline{padding-top:7px;margin-top:0;margin-bottom:0}.form-horizontal .form-group{margin-right:-15px;margin-left:-15px}.form-horizontal .form-group:before,.form-horizontal .form-group:after{display:table;content:" "}.form-horizontal .form-group:after{clear:both}.form-horizontal .form-group:before,.form-horizontal .form-group:after{display:table;content:" "}.form-horizontal .form-group:after{clear:both}@media(min-width:768px){.form-horizontal .control-label{text-align:right}}.btn{display:inline-block;padding:6px 12px;margin-bottom:0;font-size:14px;font-weight:normal;line-height:1.428571429;text-align:center;white-space:nowrap;vertical-align:middle;cursor:pointer;background-image:none;border:1px solid transparent;border-radius:4px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none}.btn:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.btn:hover,.btn:focus{color:#333;text-decoration:none}.btn:active,.btn.active{background-image:none;outline:0;-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,0.125);box-shadow:inset 0 3px 5px rgba(0,0,0,0.125)}.btn.disabled,.btn[disabled],fieldset[disabled] .btn{pointer-events:none;cursor:not-allowed;opacity:.65;filter:alpha(opacity=65);-webkit-box-shadow:none;box-shadow:none}.btn-default{color:#333;background-color:#fff;border-color:#ccc}.btn-default:hover,.btn-default:focus,.btn-default:active,.btn-default.active,.open .dropdown-toggle.btn-default{color:#333;background-color:#ebebeb;border-color:#adadad}.btn-default:active,.btn-default.active,.open .dropdown-toggle.btn-default{background-image:none}.btn-default.disabled,.btn-default[disabled],fieldset[disabled] .btn-default,.btn-default.disabled:hover,.btn-default[disabled]:hover,fieldset[disabled] .btn-default:hover,.btn-default.disabled:focus,.btn-default[disabled]:focus,fieldset[disabled] .btn-default:focus,.btn-default.disabled:active,.btn-default[disabled]:active,fieldset[disabled] .btn-default:active,.btn-default.disabled.active,.btn-default[disabled].active,fieldset[disabled] .btn-default.active{background-color:#fff;border-color:#ccc}.btn-primary{color:#fff;background-color:#428bca;border-color:#357ebd}.btn-primary:hover,.btn-primary:focus,.btn-primary:active,.btn-primary.active,.open .dropdown-toggle.btn-primary{color:#fff;background-color:#3276b1;border-color:#285e8e}.btn-primary:active,.btn-primary.active,.open .dropdown-toggle.btn-primary{background-image:none}.btn-primary.disabled,.btn-primary[disabled],fieldset[disabled] .btn-primary,.btn-primary.disabled:hover,.btn-primary[disabled]:hover,fieldset[disabled] .btn-primary:hover,.btn-primary.disabled:focus,.btn-primary[disabled]:focus,fieldset[disabled] .btn-primary:focus,.btn-primary.disabled:active,.btn-primary[disabled]:active,fieldset[disabled] .btn-primary:active,.btn-primary.disabled.active,.btn-primary[disabled].active,fieldset[disabled] .btn-primary.active{background-color:#428bca;border-color:#357ebd}.btn-warning{color:#fff;background-color:#f0ad4e;border-color:#eea236}.btn-warning:hover,.btn-warning:focus,.btn-warning:active,.btn-warning.active,.open .dropdown-toggle.btn-warning{color:#fff;background-color:#ed9c28;border-color:#d58512}.btn-warning:active,.btn-warning.active,.open .dropdown-toggle.btn-warning{background-image:none}.btn-warning.disabled,.btn-warning[disabled],fieldset[disabled] .btn-warning,.btn-warning.disabled:hover,.btn-warning[disabled]:hover,fieldset[disabled] .btn-warning:hover,.btn-warning.disabled:focus,.btn-warning[disabled]:focus,fieldset[disabled] .btn-warning:focus,.btn-warning.disabled:active,.btn-warning[disabled]:active,fieldset[disabled] .btn-warning:active,.btn-warning.disabled.active,.btn-warning[disabled].active,fieldset[disabled] .btn-warning.active{background-color:#f0ad4e;border-color:#eea236}.btn-danger{color:#fff;background-color:#d9534f;border-color:#d43f3a}.btn-danger:hover,.btn-danger:focus,.btn-danger:active,.btn-danger.active,.open .dropdown-toggle.btn-danger{color:#fff;background-color:#d2322d;border-color:#ac2925}.btn-danger:active,.btn-danger.active,.open .dropdown-toggle.btn-danger{background-image:none}.btn-danger.disabled,.btn-danger[disabled],fieldset[disabled] .btn-danger,.btn-danger.disabled:hover,.btn-danger[disabled]:hover,fieldset[disabled] .btn-danger:hover,.btn-danger.disabled:focus,.btn-danger[disabled]:focus,fieldset[disabled] .btn-danger:focus,.btn-danger.disabled:active,.btn-danger[disabled]:active,fieldset[disabled] .btn-danger:active,.btn-danger.disabled.active,.btn-danger[disabled].active,fieldset[disabled] .btn-danger.active{background-color:#d9534f;border-color:#d43f3a}.btn-success{color:#fff;background-color:#5cb85c;border-color:#4cae4c}.btn-success:hover,.btn-success:focus,.btn-success:active,.btn-success.active,.open .dropdown-toggle.btn-success{color:#fff;background-color:#47a447;border-color:#398439}.btn-success:active,.btn-success.active,.open .dropdown-toggle.btn-success{background-image:none}.btn-success.disabled,.btn-success[disabled],fieldset[disabled] .btn-success,.btn-success.disabled:hover,.btn-success[disabled]:hover,fieldset[disabled] .btn-success:hover,.btn-success.disabled:focus,.btn-success[disabled]:focus,fieldset[disabled] .btn-success:focus,.btn-success.disabled:active,.btn-success[disabled]:active,fieldset[disabled] .btn-success:active,.btn-success.disabled.active,.btn-success[disabled].active,fieldset[disabled] .btn-success.active{background-color:#5cb85c;border-color:#4cae4c}.btn-info{color:#fff;background-color:#5bc0de;border-color:#46b8da}.btn-info:hover,.btn-info:focus,.btn-info:active,.btn-info.active,.open .dropdown-toggle.btn-info{color:#fff;background-color:#39b3d7;border-color:#269abc}.btn-info:active,.btn-info.active,.open .dropdown-toggle.btn-info{background-image:none}.btn-info.disabled,.btn-info[disabled],fieldset[disabled] .btn-info,.btn-info.disabled:hover,.btn-info[disabled]:hover,fieldset[disabled] .btn-info:hover,.btn-info.disabled:focus,.btn-info[disabled]:focus,fieldset[disabled] .btn-info:focus,.btn-info.disabled:active,.btn-info[disabled]:active,fieldset[disabled] .btn-info:active,.btn-info.disabled.active,.btn-info[disabled].active,fieldset[disabled] .btn-info.active{background-color:#5bc0de;border-color:#46b8da}.btn-link{font-weight:normal;color:#428bca;cursor:pointer;border-radius:0}.btn-link,.btn-link:active,.btn-link[disabled],fieldset[disabled] .btn-link{background-color:transparent;-webkit-box-shadow:none;box-shadow:none}.btn-link,.btn-link:hover,.btn-link:focus,.btn-link:active{border-color:transparent}.btn-link:hover,.btn-link:focus{color:#2a6496;text-decoration:underline;background-color:transparent}.btn-link[disabled]:hover,fieldset[disabled] .btn-link:hover,.btn-link[disabled]:focus,fieldset[disabled] .btn-link:focus{color:#999;text-decoration:none}.btn-lg{padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}.btn-sm,.btn-xs{padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.btn-xs{padding:1px 5px}.btn-block{display:block;width:100%;padding-right:0;padding-left:0}.btn-block+.btn-block{margin-top:5px}input[type="submit"].btn-block,input[type="reset"].btn-block,input[type="button"].btn-block{width:100%}.fade{opacity:0;-webkit-transition:opacity .15s linear;transition:opacity .15s linear}.fade.in{opacity:1}.collapse{display:none}.collapse.in{display:block}.collapsing{position:relative;height:0;overflow:hidden;-webkit-transition:height .35s ease;transition:height .35s ease}@font-face{font-family:'Glyphicons Halflings';src:url('../fonts/glyphicons-halflings-regular.eot');src:url('../fonts/glyphicons-halflings-regular.eot?#iefix') format('embedded-opentype'),url('../fonts/glyphicons-halflings-regular.woff') format('woff'),url('../fonts/glyphicons-halflings-regular.ttf') format('truetype'),url('../fonts/glyphicons-halflings-regular.svg#glyphicons-halflingsregular') format('svg')}.glyphicon{position:relative;top:1px;display:inline-block;font-family:'Glyphicons Halflings';-webkit-font-smoothing:antialiased;font-style:normal;font-weight:normal;line-height:1}.glyphicon:empty{width:1em}.glyphicon-asterisk:before{content:"\2a"}.glyphicon-plus:before{content:"\2b"}.glyphicon-euro:before{content:"\20ac"}.glyphicon-minus:before{content:"\2212"}.glyphicon-cloud:before{content:"\2601"}.glyphicon-envelope:before{content:"\2709"}.glyphicon-pencil:before{content:"\270f"}.glyphicon-glass:before{content:"\e001"}.glyphicon-music:before{content:"\e002"}.glyphicon-search:before{content:"\e003"}.glyphicon-heart:before{content:"\e005"}.glyphicon-star:before{content:"\e006"}.glyphicon-star-empty:before{content:"\e007"}.glyphicon-user:before{content:"\e008"}.glyphicon-film:before{content:"\e009"}.glyphicon-th-large:before{content:"\e010"}.glyphicon-th:before{content:"\e011"}.glyphicon-th-list:before{content:"\e012"}.glyphicon-ok:before{content:"\e013"}.glyphicon-remove:before{content:"\e014"}.glyphicon-zoom-in:before{content:"\e015"}.glyphicon-zoom-out:before{content:"\e016"}.glyphicon-off:before{content:"\e017"}.glyphicon-signal:before{content:"\e018"}.glyphicon-cog:before{content:"\e019"}.glyphicon-trash:before{content:"\e020"}.glyphicon-home:before{content:"\e021"}.glyphicon-file:before{content:"\e022"}.glyphicon-time:before{content:"\e023"}.glyphicon-road:before{content:"\e024"}.glyphicon-download-alt:before{content:"\e025"}.glyphicon-download:before{content:"\e026"}.glyphicon-upload:before{content:"\e027"}.glyphicon-inbox:before{content:"\e028"}.glyphicon-play-circle:before{content:"\e029"}.glyphicon-repeat:before{content:"\e030"}.glyphicon-refresh:before{content:"\e031"}.glyphicon-list-alt:before{content:"\e032"}.glyphicon-lock:before{content:"\e033"}.glyphicon-flag:before{content:"\e034"}.glyphicon-headphones:before{content:"\e035"}.glyphicon-volume-off:before{content:"\e036"}.glyphicon-volume-down:before{content:"\e037"}.glyphicon-volume-up:before{content:"\e038"}.glyphicon-qrcode:before{content:"\e039"}.glyphicon-barcode:before{content:"\e040"}.glyphicon-tag:before{content:"\e041"}.glyphicon-tags:before{content:"\e042"}.glyphicon-book:before{content:"\e043"}.glyphicon-bookmark:before{content:"\e044"}.glyphicon-print:before{content:"\e045"}.glyphicon-camera:before{content:"\e046"}.glyphicon-font:before{content:"\e047"}.glyphicon-bold:before{content:"\e048"}.glyphicon-italic:before{content:"\e049"}.glyphicon-text-height:before{content:"\e050"}.glyphicon-text-width:before{content:"\e051"}.glyphicon-align-left:before{content:"\e052"}.glyphicon-align-center:before{content:"\e053"}.glyphicon-align-right:before{content:"\e054"}.glyphicon-align-justify:before{content:"\e055"}.glyphicon-list:before{content:"\e056"}.glyphicon-indent-left:before{content:"\e057"}.glyphicon-indent-right:before{content:"\e058"}.glyphicon-facetime-video:before{content:"\e059"}.glyphicon-picture:before{content:"\e060"}.glyphicon-map-marker:before{content:"\e062"}.glyphicon-adjust:before{content:"\e063"}.glyphicon-tint:before{content:"\e064"}.glyphicon-edit:before{content:"\e065"}.glyphicon-share:before{content:"\e066"}.glyphicon-check:before{content:"\e067"}.glyphicon-move:before{content:"\e068"}.glyphicon-step-backward:before{content:"\e069"}.glyphicon-fast-backward:before{content:"\e070"}.glyphicon-backward:before{content:"\e071"}.glyphicon-play:before{content:"\e072"}.glyphicon-pause:before{content:"\e073"}.glyphicon-stop:before{content:"\e074"}.glyphicon-forward:before{content:"\e075"}.glyphicon-fast-forward:before{content:"\e076"}.glyphicon-step-forward:before{content:"\e077"}.glyphicon-eject:before{content:"\e078"}.glyphicon-chevron-left:before{content:"\e079"}.glyphicon-chevron-right:before{content:"\e080"}.glyphicon-plus-sign:before{content:"\e081"}.glyphicon-minus-sign:before{content:"\e082"}.glyphicon-remove-sign:before{content:"\e083"}.glyphicon-ok-sign:before{content:"\e084"}.glyphicon-question-sign:before{content:"\e085"}.glyphicon-info-sign:before{content:"\e086"}.glyphicon-screenshot:before{content:"\e087"}.glyphicon-remove-circle:before{content:"\e088"}.glyphicon-ok-circle:before{content:"\e089"}.glyphicon-ban-circle:before{content:"\e090"}.glyphicon-arrow-left:before{content:"\e091"}.glyphicon-arrow-right:before{content:"\e092"}.glyphicon-arrow-up:before{content:"\e093"}.glyphicon-arrow-down:before{content:"\e094"}.glyphicon-share-alt:before{content:"\e095"}.glyphicon-resize-full:before{content:"\e096"}.glyphicon-resize-small:before{content:"\e097"}.glyphicon-exclamation-sign:before{content:"\e101"}.glyphicon-gift:before{content:"\e102"}.glyphicon-leaf:before{content:"\e103"}.glyphicon-fire:before{content:"\e104"}.glyphicon-eye-open:before{content:"\e105"}.glyphicon-eye-close:before{content:"\e106"}.glyphicon-warning-sign:before{content:"\e107"}.glyphicon-plane:before{content:"\e108"}.glyphicon-calendar:before{content:"\e109"}.glyphicon-random:before{content:"\e110"}.glyphicon-comment:before{content:"\e111"}.glyphicon-magnet:before{content:"\e112"}.glyphicon-chevron-up:before{content:"\e113"}.glyphicon-chevron-down:before{content:"\e114"}.glyphicon-retweet:before{content:"\e115"}.glyphicon-shopping-cart:before{content:"\e116"}.glyphicon-folder-close:before{content:"\e117"}.glyphicon-folder-open:before{content:"\e118"}.glyphicon-resize-vertical:before{content:"\e119"}.glyphicon-resize-horizontal:before{content:"\e120"}.glyphicon-hdd:before{content:"\e121"}.glyphicon-bullhorn:before{content:"\e122"}.glyphicon-bell:before{content:"\e123"}.glyphicon-certificate:before{content:"\e124"}.glyphicon-thumbs-up:before{content:"\e125"}.glyphicon-thumbs-down:before{content:"\e126"}.glyphicon-hand-right:before{content:"\e127"}.glyphicon-hand-left:before{content:"\e128"}.glyphicon-hand-up:before{content:"\e129"}.glyphicon-hand-down:before{content:"\e130"}.glyphicon-circle-arrow-right:before{content:"\e131"}.glyphicon-circle-arrow-left:before{content:"\e132"}.glyphicon-circle-arrow-up:before{content:"\e133"}.glyphicon-circle-arrow-down:before{content:"\e134"}.glyphicon-globe:before{content:"\e135"}.glyphicon-wrench:before{content:"\e136"}.glyphicon-tasks:before{content:"\e137"}.glyphicon-filter:before{content:"\e138"}.glyphicon-briefcase:before{content:"\e139"}.glyphicon-fullscreen:before{content:"\e140"}.glyphicon-dashboard:before{content:"\e141"}.glyphicon-paperclip:before{content:"\e142"}.glyphicon-heart-empty:before{content:"\e143"}.glyphicon-link:before{content:"\e144"}.glyphicon-phone:before{content:"\e145"}.glyphicon-pushpin:before{content:"\e146"}.glyphicon-usd:before{content:"\e148"}.glyphicon-gbp:before{content:"\e149"}.glyphicon-sort:before{content:"\e150"}.glyphicon-sort-by-alphabet:before{content:"\e151"}.glyphicon-sort-by-alphabet-alt:before{content:"\e152"}.glyphicon-sort-by-order:before{content:"\e153"}.glyphicon-sort-by-order-alt:before{content:"\e154"}.glyphicon-sort-by-attributes:before{content:"\e155"}.glyphicon-sort-by-attributes-alt:before{content:"\e156"}.glyphicon-unchecked:before{content:"\e157"}.glyphicon-expand:before{content:"\e158"}.glyphicon-collapse-down:before{content:"\e159"}.glyphicon-collapse-up:before{content:"\e160"}.glyphicon-log-in:before{content:"\e161"}.glyphicon-flash:before{content:"\e162"}.glyphicon-log-out:before{content:"\e163"}.glyphicon-new-window:before{content:"\e164"}.glyphicon-record:before{content:"\e165"}.glyphicon-save:before{content:"\e166"}.glyphicon-open:before{content:"\e167"}.glyphicon-saved:before{content:"\e168"}.glyphicon-import:before{content:"\e169"}.glyphicon-export:before{content:"\e170"}.glyphicon-send:before{content:"\e171"}.glyphicon-floppy-disk:before{content:"\e172"}.glyphicon-floppy-saved:before{content:"\e173"}.glyphicon-floppy-remove:before{content:"\e174"}.glyphicon-floppy-save:before{content:"\e175"}.glyphicon-floppy-open:before{content:"\e176"}.glyphicon-credit-card:before{content:"\e177"}.glyphicon-transfer:before{content:"\e178"}.glyphicon-cutlery:before{content:"\e179"}.glyphicon-header:before{content:"\e180"}.glyphicon-compressed:before{content:"\e181"}.glyphicon-earphone:before{content:"\e182"}.glyphicon-phone-alt:before{content:"\e183"}.glyphicon-tower:before{content:"\e184"}.glyphicon-stats:before{content:"\e185"}.glyphicon-sd-video:before{content:"\e186"}.glyphicon-hd-video:before{content:"\e187"}.glyphicon-subtitles:before{content:"\e188"}.glyphicon-sound-stereo:before{content:"\e189"}.glyphicon-sound-dolby:before{content:"\e190"}.glyphicon-sound-5-1:before{content:"\e191"}.glyphicon-sound-6-1:before{content:"\e192"}.glyphicon-sound-7-1:before{content:"\e193"}.glyphicon-copyright-mark:before{content:"\e194"}.glyphicon-registration-mark:before{content:"\e195"}.glyphicon-cloud-download:before{content:"\e197"}.glyphicon-cloud-upload:before{content:"\e198"}.glyphicon-tree-conifer:before{content:"\e199"}.glyphicon-tree-deciduous:before{content:"\e200"}.caret{display:inline-block;width:0;height:0;margin-left:2px;vertical-align:middle;border-top:4px solid #000;border-right:4px solid transparent;border-bottom:0 dotted;border-left:4px solid transparent}.dropdown{position:relative}.dropdown-toggle:focus{outline:0}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:160px;padding:5px 0;margin:2px 0 0;font-size:14px;list-style:none;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.15);border-radius:4px;-webkit-box-shadow:0 6px 12px rgba(0,0,0,0.175);box-shadow:0 6px 12px rgba(0,0,0,0.175);background-clip:padding-box}.dropdown-menu.pull-right{right:0;left:auto}.dropdown-menu .divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.dropdown-menu>li>a{display:block;padding:3px 20px;clear:both;font-weight:normal;line-height:1.428571429;color:#333;white-space:nowrap}.dropdown-menu>li>a:hover,.dropdown-menu>li>a:focus{color:#262626;text-decoration:none;background-color:#f5f5f5}.dropdown-menu>.active>a,.dropdown-menu>.active>a:hover,.dropdown-menu>.active>a:focus{color:#fff;text-decoration:none;background-color:#428bca;outline:0}.dropdown-menu>.disabled>a,.dropdown-menu>.disabled>a:hover,.dropdown-menu>.disabled>a:focus{color:#999}.dropdown-menu>.disabled>a:hover,.dropdown-menu>.disabled>a:focus{text-decoration:none;cursor:not-allowed;background-color:transparent;background-image:none;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.open>.dropdown-menu{display:block}.open>a{outline:0}.dropdown-header{display:block;padding:3px 20px;font-size:12px;line-height:1.428571429;color:#999}.dropdown-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:990}.pull-right>.dropdown-menu{right:0;left:auto}.dropup .caret,.navbar-fixed-bottom .dropdown .caret{border-top:0 dotted;border-bottom:4px solid #000;content:""}.dropup .dropdown-menu,.navbar-fixed-bottom .dropdown .dropdown-menu{top:auto;bottom:100%;margin-bottom:1px}@media(min-width:768px){.navbar-right .dropdown-menu{right:0;left:auto}}.btn-default .caret{border-top-color:#333}.btn-primary .caret,.btn-success .caret,.btn-warning .caret,.btn-danger .caret,.btn-info .caret{border-top-color:#fff}.dropup .btn-default .caret{border-bottom-color:#333}.dropup .btn-primary .caret,.dropup .btn-success .caret,.dropup .btn-warning .caret,.dropup .btn-danger .caret,.dropup .btn-info .caret{border-bottom-color:#fff}.btn-group,.btn-group-vertical{position:relative;display:inline-block;vertical-align:middle}.btn-group>.btn,.btn-group-vertical>.btn{position:relative;float:left}.btn-group>.btn:hover,.btn-group-vertical>.btn:hover,.btn-group>.btn:focus,.btn-group-vertical>.btn:focus,.btn-group>.btn:active,.btn-group-vertical>.btn:active,.btn-group>.btn.active,.btn-group-vertical>.btn.active{z-index:2}.btn-group>.btn:focus,.btn-group-vertical>.btn:focus{outline:0}.btn-group .btn+.btn,.btn-group .btn+.btn-group,.btn-group .btn-group+.btn,.btn-group .btn-group+.btn-group{margin-left:-1px}.btn-toolbar:before,.btn-toolbar:after{display:table;content:" "}.btn-toolbar:after{clear:both}.btn-toolbar:before,.btn-toolbar:after{display:table;content:" "}.btn-toolbar:after{clear:both}.btn-toolbar .btn-group{float:left}.btn-toolbar>.btn+.btn,.btn-toolbar>.btn-group+.btn,.btn-toolbar>.btn+.btn-group,.btn-toolbar>.btn-group+.btn-group{margin-left:5px}.btn-group>.btn:not(:first-child):not(:last-child):not(.dropdown-toggle){border-radius:0}.btn-group>.btn:first-child{margin-left:0}.btn-group>.btn:first-child:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn:last-child:not(:first-child),.btn-group>.dropdown-toggle:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.btn-group>.btn-group{float:left}.btn-group>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.btn-group>.btn-group:first-child>.btn:last-child,.btn-group>.btn-group:first-child>.dropdown-toggle{border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn-group:last-child>.btn:first-child{border-bottom-left-radius:0;border-top-left-radius:0}.btn-group .dropdown-toggle:active,.btn-group.open .dropdown-toggle{outline:0}.btn-group-xs>.btn{padding:5px 10px;padding:1px 5px;font-size:12px;line-height:1.5;border-radius:3px}.btn-group-sm>.btn{padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.btn-group-lg>.btn{padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}.btn-group>.btn+.dropdown-toggle{padding-right:8px;padding-left:8px}.btn-group>.btn-lg+.dropdown-toggle{padding-right:12px;padding-left:12px}.btn-group.open .dropdown-toggle{-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,0.125);box-shadow:inset 0 3px 5px rgba(0,0,0,0.125)}.btn .caret{margin-left:0}.btn-lg .caret{border-width:5px 5px 0;border-bottom-width:0}.dropup .btn-lg .caret{border-width:0 5px 5px}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group{display:block;float:none;width:100%;max-width:100%}.btn-group-vertical>.btn-group:before,.btn-group-vertical>.btn-group:after{display:table;content:" "}.btn-group-vertical>.btn-group:after{clear:both}.btn-group-vertical>.btn-group:before,.btn-group-vertical>.btn-group:after{display:table;content:" "}.btn-group-vertical>.btn-group:after{clear:both}.btn-group-vertical>.btn-group>.btn{float:none}.btn-group-vertical>.btn+.btn,.btn-group-vertical>.btn+.btn-group,.btn-group-vertical>.btn-group+.btn,.btn-group-vertical>.btn-group+.btn-group{margin-top:-1px;margin-left:0}.btn-group-vertical>.btn:not(:first-child):not(:last-child){border-radius:0}.btn-group-vertical>.btn:first-child:not(:last-child){border-top-right-radius:4px;border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn:last-child:not(:first-child){border-top-right-radius:0;border-bottom-left-radius:4px;border-top-left-radius:0}.btn-group-vertical>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.btn-group-vertical>.btn-group:first-child>.btn:last-child,.btn-group-vertical>.btn-group:first-child>.dropdown-toggle{border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn-group:last-child>.btn:first-child{border-top-right-radius:0;border-top-left-radius:0}.btn-group-justified{display:table;width:100%;border-collapse:separate;table-layout:fixed}.btn-group-justified .btn{display:table-cell;float:none;width:1%}[data-toggle="buttons"]>.btn>input[type="radio"],[data-toggle="buttons"]>.btn>input[type="checkbox"]{display:none}.input-group{position:relative;display:table;border-collapse:separate}.input-group.col{float:none;padding-right:0;padding-left:0}.input-group .form-control{width:100%;margin-bottom:0}.input-group-lg>.form-control,.input-group-lg>.input-group-addon,.input-group-lg>.input-group-btn>.btn{height:45px;padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}select.input-group-lg>.form-control,select.input-group-lg>.input-group-addon,select.input-group-lg>.input-group-btn>.btn{height:45px;line-height:45px}textarea.input-group-lg>.form-control,textarea.input-group-lg>.input-group-addon,textarea.input-group-lg>.input-group-btn>.btn{height:auto}.input-group-sm>.form-control,.input-group-sm>.input-group-addon,.input-group-sm>.input-group-btn>.btn{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}select.input-group-sm>.form-control,select.input-group-sm>.input-group-addon,select.input-group-sm>.input-group-btn>.btn{height:30px;line-height:30px}textarea.input-group-sm>.form-control,textarea.input-group-sm>.input-group-addon,textarea.input-group-sm>.input-group-btn>.btn{height:auto}.input-group-addon,.input-group-btn,.input-group .form-control{display:table-cell}.input-group-addon:not(:first-child):not(:last-child),.input-group-btn:not(:first-child):not(:last-child),.input-group .form-control:not(:first-child):not(:last-child){border-radius:0}.input-group-addon,.input-group-btn{width:1%;white-space:nowrap;vertical-align:middle}.input-group-addon{padding:6px 12px;font-size:14px;font-weight:normal;line-height:1;color:#555;text-align:center;background-color:#eee;border:1px solid #ccc;border-radius:4px}.input-group-addon.input-sm{padding:5px 10px;font-size:12px;border-radius:3px}.input-group-addon.input-lg{padding:10px 16px;font-size:18px;border-radius:6px}.input-group-addon input[type="radio"],.input-group-addon input[type="checkbox"]{margin-top:0}.input-group .form-control:first-child,.input-group-addon:first-child,.input-group-btn:first-child>.btn,.input-group-btn:first-child>.dropdown-toggle,.input-group-btn:last-child>.btn:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.input-group-addon:first-child{border-right:0}.input-group .form-control:last-child,.input-group-addon:last-child,.input-group-btn:last-child>.btn,.input-group-btn:last-child>.dropdown-toggle,.input-group-btn:first-child>.btn:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.input-group-addon:last-child{border-left:0}.input-group-btn{position:relative;white-space:nowrap}.input-group-btn:first-child>.btn{margin-right:-1px}.input-group-btn:last-child>.btn{margin-left:-1px}.input-group-btn>.btn{position:relative}.input-group-btn>.btn+.btn{margin-left:-4px}.input-group-btn>.btn:hover,.input-group-btn>.btn:active{z-index:2}.nav{padding-left:0;margin-bottom:0;list-style:none}.nav:before,.nav:after{display:table;content:" "}.nav:after{clear:both}.nav:before,.nav:after{display:table;content:" "}.nav:after{clear:both}.nav>li{position:relative;display:block}.nav>li>a{position:relative;display:block;padding:10px 15px}.nav>li>a:hover,.nav>li>a:focus{text-decoration:none;background-color:#eee}.nav>li.disabled>a{color:#999}.nav>li.disabled>a:hover,.nav>li.disabled>a:focus{color:#999;text-decoration:none;cursor:not-allowed;background-color:transparent}.nav .open>a,.nav .open>a:hover,.nav .open>a:focus{background-color:#eee;border-color:#428bca}.nav .open>a .caret,.nav .open>a:hover .caret,.nav .open>a:focus .caret{border-top-color:#2a6496;border-bottom-color:#2a6496}.nav .nav-divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.nav>li>a>img{max-width:none}.nav-tabs{border-bottom:1px solid #ddd}.nav-tabs>li{float:left;margin-bottom:-1px}.nav-tabs>li>a{margin-right:2px;line-height:1.428571429;border:1px solid transparent;border-radius:4px 4px 0 0}.nav-tabs>li>a:hover{border-color:#eee #eee #ddd}.nav-tabs>li.active>a,.nav-tabs>li.active>a:hover,.nav-tabs>li.active>a:focus{color:#555;cursor:default;background-color:#fff;border:1px solid #ddd;border-bottom-color:transparent}.nav-tabs.nav-justified{width:100%;border-bottom:0}.nav-tabs.nav-justified>li{float:none}.nav-tabs.nav-justified>li>a{margin-bottom:5px;text-align:center}@media(min-width:768px){.nav-tabs.nav-justified>li{display:table-cell;width:1%}.nav-tabs.nav-justified>li>a{margin-bottom:0}}.nav-tabs.nav-justified>li>a{margin-right:0;border-radius:4px}.nav-tabs.nav-justified>.active>a,.nav-tabs.nav-justified>.active>a:hover,.nav-tabs.nav-justified>.active>a:focus{border:1px solid #ddd}@media(min-width:768px){.nav-tabs.nav-justified>li>a{border-bottom:1px solid #ddd;border-radius:4px 4px 0 0}.nav-tabs.nav-justified>.active>a,.nav-tabs.nav-justified>.active>a:hover,.nav-tabs.nav-justified>.active>a:focus{border-bottom-color:#fff}}.nav-pills>li{float:left}.nav-pills>li>a{border-radius:4px}.nav-pills>li+li{margin-left:2px}.nav-pills>li.active>a,.nav-pills>li.active>a:hover,.nav-pills>li.active>a:focus{color:#fff;background-color:#428bca}.nav-pills>li.active>a .caret,.nav-pills>li.active>a:hover .caret,.nav-pills>li.active>a:focus .caret{border-top-color:#fff;border-bottom-color:#fff}.nav-stacked>li{float:none}.nav-stacked>li+li{margin-top:2px;margin-left:0}.nav-justified{width:100%}.nav-justified>li{float:none}.nav-justified>li>a{margin-bottom:5px;text-align:center}@media(min-width:768px){.nav-justified>li{display:table-cell;width:1%}.nav-justified>li>a{margin-bottom:0}}.nav-tabs-justified{border-bottom:0}.nav-tabs-justified>li>a{margin-right:0;border-radius:4px}.nav-tabs-justified>.active>a,.nav-tabs-justified>.active>a:hover,.nav-tabs-justified>.active>a:focus{border:1px solid #ddd}@media(min-width:768px){.nav-tabs-justified>li>a{border-bottom:1px solid #ddd;border-radius:4px 4px 0 0}.nav-tabs-justified>.active>a,.nav-tabs-justified>.active>a:hover,.nav-tabs-justified>.active>a:focus{border-bottom-color:#fff}}.tabbable:before,.tabbable:after{display:table;content:" "}.tabbable:after{clear:both}.tabbable:before,.tabbable:after{display:table;content:" "}.tabbable:after{clear:both}.tab-content>.tab-pane,.pill-content>.pill-pane{display:none}.tab-content>.active,.pill-content>.active{display:block}.nav .caret{border-top-color:#428bca;border-bottom-color:#428bca}.nav a:hover .caret{border-top-color:#2a6496;border-bottom-color:#2a6496}.nav-tabs .dropdown-menu{margin-top:-1px;border-top-right-radius:0;border-top-left-radius:0}.navbar{position:relative;z-index:1000;min-height:50px;margin-bottom:20px;border:1px solid transparent}.navbar:before,.navbar:after{display:table;content:" "}.navbar:after{clear:both}.navbar:before,.navbar:after{display:table;content:" "}.navbar:after{clear:both}@media(min-width:768px){.navbar{border-radius:4px}}.navbar-header:before,.navbar-header:after{display:table;content:" "}.navbar-header:after{clear:both}.navbar-header:before,.navbar-header:after{display:table;content:" "}.navbar-header:after{clear:both}@media(min-width:768px){.navbar-header{float:left}}.navbar-collapse{max-height:340px;padding-right:15px;padding-left:15px;overflow-x:visible;border-top:1px solid transparent;box-shadow:inset 0 1px 0 rgba(255,255,255,0.1);-webkit-overflow-scrolling:touch}.navbar-collapse:before,.navbar-collapse:after{display:table;content:" "}.navbar-collapse:after{clear:both}.navbar-collapse:before,.navbar-collapse:after{display:table;content:" "}.navbar-collapse:after{clear:both}.navbar-collapse.in{overflow-y:auto}@media(min-width:768px){.navbar-collapse{width:auto;border-top:0;box-shadow:none}.navbar-collapse.collapse{display:block!important;height:auto!important;padding-bottom:0;overflow:visible!important}.navbar-collapse.in{overflow-y:visible}.navbar-collapse .navbar-nav.navbar-left:first-child{margin-left:-15px}.navbar-collapse .navbar-nav.navbar-right:last-child{margin-right:-15px}.navbar-collapse .navbar-text:last-child{margin-right:0}}.container>.navbar-header,.container>.navbar-collapse{margin-right:-15px;margin-left:-15px}@media(min-width:768px){.container>.navbar-header,.container>.navbar-collapse{margin-right:0;margin-left:0}}.navbar-static-top{border-width:0 0 1px}@media(min-width:768px){.navbar-static-top{border-radius:0}}.navbar-fixed-top,.navbar-fixed-bottom{position:fixed;right:0;left:0;border-width:0 0 1px}@media(min-width:768px){.navbar-fixed-top,.navbar-fixed-bottom{border-radius:0}}.navbar-fixed-top{top:0;z-index:1030}.navbar-fixed-bottom{bottom:0;margin-bottom:0}.navbar-brand{float:left;padding:15px 15px;font-size:18px;line-height:20px}.navbar-brand:hover,.navbar-brand:focus{text-decoration:none}@media(min-width:768px){.navbar>.container .navbar-brand{margin-left:-15px}}.navbar-toggle{position:relative;float:right;padding:9px 10px;margin-top:8px;margin-right:15px;margin-bottom:8px;background-color:transparent;border:1px solid transparent;border-radius:4px}.navbar-toggle .icon-bar{display:block;width:22px;height:2px;border-radius:1px}.navbar-toggle .icon-bar+.icon-bar{margin-top:4px}@media(min-width:768px){.navbar-toggle{display:none}}.navbar-nav{margin:7.5px -15px}.navbar-nav>li>a{padding-top:10px;padding-bottom:10px;line-height:20px}@media(max-width:767px){.navbar-nav .open .dropdown-menu{position:static;float:none;width:auto;margin-top:0;background-color:transparent;border:0;box-shadow:none}.navbar-nav .open .dropdown-menu>li>a,.navbar-nav .open .dropdown-menu .dropdown-header{padding:5px 15px 5px 25px}.navbar-nav .open .dropdown-menu>li>a{line-height:20px}.navbar-nav .open .dropdown-menu>li>a:hover,.navbar-nav .open .dropdown-menu>li>a:focus{background-image:none}}@media(min-width:768px){.navbar-nav{float:left;margin:0}.navbar-nav>li{float:left}.navbar-nav>li>a{padding-top:15px;padding-bottom:15px}}@media(min-width:768px){.navbar-left{float:left!important}.navbar-right{float:right!important}}.navbar-form{padding:10px 15px;margin-top:8px;margin-right:-15px;margin-bottom:8px;margin-left:-15px;border-top:1px solid transparent;border-bottom:1px solid transparent;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.1);box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.1)}@media(min-width:768px){.navbar-form .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.navbar-form .form-control{display:inline-block}.navbar-form .radio,.navbar-form .checkbox{display:inline-block;padding-left:0;margin-top:0;margin-bottom:0}.navbar-form .radio input[type="radio"],.navbar-form .checkbox input[type="checkbox"]{float:none;margin-left:0}}@media(max-width:767px){.navbar-form .form-group{margin-bottom:5px}}@media(min-width:768px){.navbar-form{width:auto;padding-top:0;padding-bottom:0;margin-right:0;margin-left:0;border:0;-webkit-box-shadow:none;box-shadow:none}}.navbar-nav>li>.dropdown-menu{margin-top:0;border-top-right-radius:0;border-top-left-radius:0}.navbar-fixed-bottom .navbar-nav>li>.dropdown-menu{border-bottom-right-radius:0;border-bottom-left-radius:0}.navbar-nav.pull-right>li>.dropdown-menu,.navbar-nav>li>.dropdown-menu.pull-right{right:0;left:auto}.navbar-btn{margin-top:8px;margin-bottom:8px}.navbar-text{float:left;margin-top:15px;margin-bottom:15px}@media(min-width:768px){.navbar-text{margin-right:15px;margin-left:15px}}.navbar-default{background-color:#f8f8f8;border-color:#e7e7e7}.navbar-default .navbar-brand{color:#777}.navbar-default .navbar-brand:hover,.navbar-default .navbar-brand:focus{color:#5e5e5e;background-color:transparent}.navbar-default .navbar-text{color:#777}.navbar-default .navbar-nav>li>a{color:#777}.navbar-default .navbar-nav>li>a:hover,.navbar-default .navbar-nav>li>a:focus{color:#333;background-color:transparent}.navbar-default .navbar-nav>.active>a,.navbar-default .navbar-nav>.active>a:hover,.navbar-default .navbar-nav>.active>a:focus{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav>.disabled>a,.navbar-default .navbar-nav>.disabled>a:hover,.navbar-default .navbar-nav>.disabled>a:focus{color:#ccc;background-color:transparent}.navbar-default .navbar-toggle{border-color:#ddd}.navbar-default .navbar-toggle:hover,.navbar-default .navbar-toggle:focus{background-color:#ddd}.navbar-default .navbar-toggle .icon-bar{background-color:#ccc}.navbar-default .navbar-collapse,.navbar-default .navbar-form{border-color:#e7e7e7}.navbar-default .navbar-nav>.dropdown>a:hover .caret,.navbar-default .navbar-nav>.dropdown>a:focus .caret{border-top-color:#333;border-bottom-color:#333}.navbar-default .navbar-nav>.open>a,.navbar-default .navbar-nav>.open>a:hover,.navbar-default .navbar-nav>.open>a:focus{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav>.open>a .caret,.navbar-default .navbar-nav>.open>a:hover .caret,.navbar-default .navbar-nav>.open>a:focus .caret{border-top-color:#555;border-bottom-color:#555}.navbar-default .navbar-nav>.dropdown>a .caret{border-top-color:#777;border-bottom-color:#777}@media(max-width:767px){.navbar-default .navbar-nav .open .dropdown-menu>li>a{color:#777}.navbar-default .navbar-nav .open .dropdown-menu>li>a:hover,.navbar-default .navbar-nav .open .dropdown-menu>li>a:focus{color:#333;background-color:transparent}.navbar-default .navbar-nav .open .dropdown-menu>.active>a,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:hover,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:focus{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:hover,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:focus{color:#ccc;background-color:transparent}}.navbar-default .navbar-link{color:#777}.navbar-default .navbar-link:hover{color:#333}.navbar-inverse{background-color:#222;border-color:#080808}.navbar-inverse .navbar-brand{color:#999}.navbar-inverse .navbar-brand:hover,.navbar-inverse .navbar-brand:focus{color:#fff;background-color:transparent}.navbar-inverse .navbar-text{color:#999}.navbar-inverse .navbar-nav>li>a{color:#999}.navbar-inverse .navbar-nav>li>a:hover,.navbar-inverse .navbar-nav>li>a:focus{color:#fff;background-color:transparent}.navbar-inverse .navbar-nav>.active>a,.navbar-inverse .navbar-nav>.active>a:hover,.navbar-inverse .navbar-nav>.active>a:focus{color:#fff;background-color:#080808}.navbar-inverse .navbar-nav>.disabled>a,.navbar-inverse .navbar-nav>.disabled>a:hover,.navbar-inverse .navbar-nav>.disabled>a:focus{color:#444;background-color:transparent}.navbar-inverse .navbar-toggle{border-color:#333}.navbar-inverse .navbar-toggle:hover,.navbar-inverse .navbar-toggle:focus{background-color:#333}.navbar-inverse .navbar-toggle .icon-bar{background-color:#fff}.navbar-inverse .navbar-collapse,.navbar-inverse .navbar-form{border-color:#101010}.navbar-inverse .navbar-nav>.open>a,.navbar-inverse .navbar-nav>.open>a:hover,.navbar-inverse .navbar-nav>.open>a:focus{color:#fff;background-color:#080808}.navbar-inverse .navbar-nav>.dropdown>a:hover .caret{border-top-color:#fff;border-bottom-color:#fff}.navbar-inverse .navbar-nav>.dropdown>a .caret{border-top-color:#999;border-bottom-color:#999}.navbar-inverse .navbar-nav>.open>a .caret,.navbar-inverse .navbar-nav>.open>a:hover .caret,.navbar-inverse .navbar-nav>.open>a:focus .caret{border-top-color:#fff;border-bottom-color:#fff}@media(max-width:767px){.navbar-inverse .navbar-nav .open .dropdown-menu>.dropdown-header{border-color:#080808}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a{color:#999}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:hover,.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:focus{color:#fff;background-color:transparent}.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:hover,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:focus{color:#fff;background-color:#080808}.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:hover,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:focus{color:#444;background-color:transparent}}.navbar-inverse .navbar-link{color:#999}.navbar-inverse .navbar-link:hover{color:#fff}.breadcrumb{padding:8px 15px;margin-bottom:20px;list-style:none;background-color:#f5f5f5;border-radius:4px}.breadcrumb>li{display:inline-block}.breadcrumb>li+li:before{padding:0 5px;color:#ccc;content:"/\00a0"}.breadcrumb>.active{color:#999}.pagination{display:inline-block;padding-left:0;margin:20px 0;border-radius:4px}.pagination>li{display:inline}.pagination>li>a,.pagination>li>span{position:relative;float:left;padding:6px 12px;margin-left:-1px;line-height:1.428571429;text-decoration:none;background-color:#fff;border:1px solid #ddd}.pagination>li:first-child>a,.pagination>li:first-child>span{margin-left:0;border-bottom-left-radius:4px;border-top-left-radius:4px}.pagination>li:last-child>a,.pagination>li:last-child>span{border-top-right-radius:4px;border-bottom-right-radius:4px}.pagination>li>a:hover,.pagination>li>span:hover,.pagination>li>a:focus,.pagination>li>span:focus{background-color:#eee}.pagination>.active>a,.pagination>.active>span,.pagination>.active>a:hover,.pagination>.active>span:hover,.pagination>.active>a:focus,.pagination>.active>span:focus{z-index:2;color:#fff;cursor:default;background-color:#428bca;border-color:#428bca}.pagination>.disabled>span,.pagination>.disabled>span:hover,.pagination>.disabled>span:focus,.pagination>.disabled>a,.pagination>.disabled>a:hover,.pagination>.disabled>a:focus{color:#999;cursor:not-allowed;background-color:#fff;border-color:#ddd}.pagination-lg>li>a,.pagination-lg>li>span{padding:10px 16px;font-size:18px}.pagination-lg>li:first-child>a,.pagination-lg>li:first-child>span{border-bottom-left-radius:6px;border-top-left-radius:6px}.pagination-lg>li:last-child>a,.pagination-lg>li:last-child>span{border-top-right-radius:6px;border-bottom-right-radius:6px}.pagination-sm>li>a,.pagination-sm>li>span{padding:5px 10px;font-size:12px}.pagination-sm>li:first-child>a,.pagination-sm>li:first-child>span{border-bottom-left-radius:3px;border-top-left-radius:3px}.pagination-sm>li:last-child>a,.pagination-sm>li:last-child>span{border-top-right-radius:3px;border-bottom-right-radius:3px}.pager{padding-left:0;margin:20px 0;text-align:center;list-style:none}.pager:before,.pager:after{display:table;content:" "}.pager:after{clear:both}.pager:before,.pager:after{display:table;content:" "}.pager:after{clear:both}.pager li{display:inline}.pager li>a,.pager li>span{display:inline-block;padding:5px 14px;background-color:#fff;border:1px solid #ddd;border-radius:15px}.pager li>a:hover,.pager li>a:focus{text-decoration:none;background-color:#eee}.pager .next>a,.pager .next>span{float:right}.pager .previous>a,.pager .previous>span{float:left}.pager .disabled>a,.pager .disabled>a:hover,.pager .disabled>a:focus,.pager .disabled>span{color:#999;cursor:not-allowed;background-color:#fff}.label{display:inline;padding:.2em .6em .3em;font-size:75%;font-weight:bold;line-height:1;color:#fff;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:.25em}.label[href]:hover,.label[href]:focus{color:#fff;text-decoration:none;cursor:pointer}.label:empty{display:none}.label-default{background-color:#999}.label-default[href]:hover,.label-default[href]:focus{background-color:#808080}.label-primary{background-color:#428bca}.label-primary[href]:hover,.label-primary[href]:focus{background-color:#3071a9}.label-success{background-color:#5cb85c}.label-success[href]:hover,.label-success[href]:focus{background-color:#449d44}.label-info{background-color:#5bc0de}.label-info[href]:hover,.label-info[href]:focus{background-color:#31b0d5}.label-warning{background-color:#f0ad4e}.label-warning[href]:hover,.label-warning[href]:focus{background-color:#ec971f}.label-danger{background-color:#d9534f}.label-danger[href]:hover,.label-danger[href]:focus{background-color:#c9302c}.badge{display:inline-block;min-width:10px;padding:3px 7px;font-size:12px;font-weight:bold;line-height:1;color:#fff;text-align:center;white-space:nowrap;vertical-align:baseline;background-color:#999;border-radius:10px}.badge:empty{display:none}a.badge:hover,a.badge:focus{color:#fff;text-decoration:none;cursor:pointer}.btn .badge{position:relative;top:-1px}a.list-group-item.active>.badge,.nav-pills>.active>a>.badge{color:#428bca;background-color:#fff}.nav-pills>li>a>.badge{margin-left:3px}.jumbotron{padding:30px;margin-bottom:30px;font-size:21px;font-weight:200;line-height:2.1428571435;color:inherit;background-color:#eee}.jumbotron h1{line-height:1;color:inherit}.jumbotron p{line-height:1.4}.container .jumbotron{border-radius:6px}@media screen and (min-width:768px){.jumbotron{padding-top:48px;padding-bottom:48px}.container .jumbotron{padding-right:60px;padding-left:60px}.jumbotron h1{font-size:63px}}.thumbnail{display:inline-block;display:block;height:auto;max-width:100%;padding:4px;margin-bottom:20px;line-height:1.428571429;background-color:#fff;border:1px solid #ddd;border-radius:4px;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.thumbnail>img{display:block;height:auto;max-width:100%}a.thumbnail:hover,a.thumbnail:focus{border-color:#428bca}.thumbnail>img{margin-right:auto;margin-left:auto}.thumbnail .caption{padding:9px;color:#333}.alert{padding:15px;margin-bottom:20px;border:1px solid transparent;border-radius:4px}.alert h4{margin-top:0;color:inherit}.alert .alert-link{font-weight:bold}.alert>p,.alert>ul{margin-bottom:0}.alert>p+p{margin-top:5px}.alert-dismissable{padding-right:35px}.alert-dismissable .close{position:relative;top:-2px;right:-21px;color:inherit}.alert-success{color:#468847;background-color:#dff0d8;border-color:#d6e9c6}.alert-success hr{border-top-color:#c9e2b3}.alert-success .alert-link{color:#356635}.alert-info{color:#3a87ad;background-color:#d9edf7;border-color:#bce8f1}.alert-info hr{border-top-color:#a6e1ec}.alert-info .alert-link{color:#2d6987}.alert-warning{color:#c09853;background-color:#fcf8e3;border-color:#faebcc}.alert-warning hr{border-top-color:#f7e1b5}.alert-warning .alert-link{color:#a47e3c}.alert-danger{color:#b94a48;background-color:#f2dede;border-color:#ebccd1}.alert-danger hr{border-top-color:#e4b9c0}.alert-danger .alert-link{color:#953b39}@-webkit-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-moz-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-o-keyframes progress-bar-stripes{from{background-position:0 0}to{background-position:40px 0}}@keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}.progress{height:20px;margin-bottom:20px;overflow:hidden;background-color:#f5f5f5;border-radius:4px;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);box-shadow:inset 0 1px 2px rgba(0,0,0,0.1)}.progress-bar{float:left;width:0;height:100%;font-size:12px;line-height:20px;color:#fff;text-align:center;background-color:#428bca;-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);-webkit-transition:width .6s ease;transition:width .6s ease}.progress-striped .progress-bar{background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-size:40px 40px}.progress.active .progress-bar{-webkit-animation:progress-bar-stripes 2s linear infinite;-moz-animation:progress-bar-stripes 2s linear infinite;-ms-animation:progress-bar-stripes 2s linear infinite;-o-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}.progress-bar-success{background-color:#5cb85c}.progress-striped .progress-bar-success{background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)}.progress-bar-info{background-color:#5bc0de}.progress-striped .progress-bar-info{background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)}.progress-bar-warning{background-color:#f0ad4e}.progress-striped .progress-bar-warning{background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)}.progress-bar-danger{background-color:#d9534f}.progress-striped .progress-bar-danger{background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)}.media,.media-body{overflow:hidden;zoom:1}.media,.media .media{margin-top:15px}.media:first-child{margin-top:0}.media-object{display:block}.media-heading{margin:0 0 5px}.media>.pull-left{margin-right:10px}.media>.pull-right{margin-left:10px}.media-list{padding-left:0;list-style:none}.list-group{padding-left:0;margin-bottom:20px}.list-group-item{position:relative;display:block;padding:10px 15px;margin-bottom:-1px;background-color:#fff;border:1px solid #ddd}.list-group-item:first-child{border-top-right-radius:4px;border-top-left-radius:4px}.list-group-item:last-child{margin-bottom:0;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.list-group-item>.badge{float:right}.list-group-item>.badge+.badge{margin-right:5px}a.list-group-item{color:#555}a.list-group-item .list-group-item-heading{color:#333}a.list-group-item:hover,a.list-group-item:focus{text-decoration:none;background-color:#f5f5f5}.list-group-item.active,.list-group-item.active:hover,.list-group-item.active:focus{z-index:2;color:#fff;background-color:#428bca;border-color:#428bca}.list-group-item.active .list-group-item-heading,.list-group-item.active:hover .list-group-item-heading,.list-group-item.active:focus .list-group-item-heading{color:inherit}.list-group-item.active .list-group-item-text,.list-group-item.active:hover .list-group-item-text,.list-group-item.active:focus .list-group-item-text{color:#e1edf7}.list-group-item-heading{margin-top:0;margin-bottom:5px}.list-group-item-text{margin-bottom:0;line-height:1.3}.panel{margin-bottom:20px;background-color:#fff;border:1px solid transparent;border-radius:4px;-webkit-box-shadow:0 1px 1px rgba(0,0,0,0.05);box-shadow:0 1px 1px rgba(0,0,0,0.05)}.panel-body{padding:15px}.panel-body:before,.panel-body:after{display:table;content:" "}.panel-body:after{clear:both}.panel-body:before,.panel-body:after{display:table;content:" "}.panel-body:after{clear:both}.panel>.list-group{margin-bottom:0}.panel>.list-group .list-group-item{border-width:1px 0}.panel>.list-group .list-group-item:first-child{border-top-right-radius:0;border-top-left-radius:0}.panel>.list-group .list-group-item:last-child{border-bottom:0}.panel-heading+.list-group .list-group-item:first-child{border-top-width:0}.panel>.table,.panel>.table-responsive{margin-bottom:0}.panel>.panel-body+.table,.panel>.panel-body+.table-responsive{border-top:1px solid #ddd}.panel>.table-bordered,.panel>.table-responsive>.table-bordered{border:0}.panel>.table-bordered>thead>tr>th:first-child,.panel>.table-responsive>.table-bordered>thead>tr>th:first-child,.panel>.table-bordered>tbody>tr>th:first-child,.panel>.table-responsive>.table-bordered>tbody>tr>th:first-child,.panel>.table-bordered>tfoot>tr>th:first-child,.panel>.table-responsive>.table-bordered>tfoot>tr>th:first-child,.panel>.table-bordered>thead>tr>td:first-child,.panel>.table-responsive>.table-bordered>thead>tr>td:first-child,.panel>.table-bordered>tbody>tr>td:first-child,.panel>.table-responsive>.table-bordered>tbody>tr>td:first-child,.panel>.table-bordered>tfoot>tr>td:first-child,.panel>.table-responsive>.table-bordered>tfoot>tr>td:first-child{border-left:0}.panel>.table-bordered>thead>tr>th:last-child,.panel>.table-responsive>.table-bordered>thead>tr>th:last-child,.panel>.table-bordered>tbody>tr>th:last-child,.panel>.table-responsive>.table-bordered>tbody>tr>th:last-child,.panel>.table-bordered>tfoot>tr>th:last-child,.panel>.table-responsive>.table-bordered>tfoot>tr>th:last-child,.panel>.table-bordered>thead>tr>td:last-child,.panel>.table-responsive>.table-bordered>thead>tr>td:last-child,.panel>.table-bordered>tbody>tr>td:last-child,.panel>.table-responsive>.table-bordered>tbody>tr>td:last-child,.panel>.table-bordered>tfoot>tr>td:last-child,.panel>.table-responsive>.table-bordered>tfoot>tr>td:last-child{border-right:0}.panel>.table-bordered>thead>tr:last-child>th,.panel>.table-responsive>.table-bordered>thead>tr:last-child>th,.panel>.table-bordered>tbody>tr:last-child>th,.panel>.table-responsive>.table-bordered>tbody>tr:last-child>th,.panel>.table-bordered>tfoot>tr:last-child>th,.panel>.table-responsive>.table-bordered>tfoot>tr:last-child>th,.panel>.table-bordered>thead>tr:last-child>td,.panel>.table-responsive>.table-bordered>thead>tr:last-child>td,.panel>.table-bordered>tbody>tr:last-child>td,.panel>.table-responsive>.table-bordered>tbody>tr:last-child>td,.panel>.table-bordered>tfoot>tr:last-child>td,.panel>.table-responsive>.table-bordered>tfoot>tr:last-child>td{border-bottom:0}.panel-heading{padding:10px 15px;border-bottom:1px solid transparent;border-top-right-radius:3px;border-top-left-radius:3px}.panel-title{margin-top:0;margin-bottom:0;font-size:16px}.panel-title>a{color:inherit}.panel-footer{padding:10px 15px;background-color:#f5f5f5;border-top:1px solid #ddd;border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel-group .panel{margin-bottom:0;overflow:hidden;border-radius:4px}.panel-group .panel+.panel{margin-top:5px}.panel-group .panel-heading{border-bottom:0}.panel-group .panel-heading+.panel-collapse .panel-body{border-top:1px solid #ddd}.panel-group .panel-footer{border-top:0}.panel-group .panel-footer+.panel-collapse .panel-body{border-bottom:1px solid #ddd}.panel-default{border-color:#ddd}.panel-default>.panel-heading{color:#333;background-color:#f5f5f5;border-color:#ddd}.panel-default>.panel-heading+.panel-collapse .panel-body{border-top-color:#ddd}.panel-default>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#ddd}.panel-primary{border-color:#428bca}.panel-primary>.panel-heading{color:#fff;background-color:#428bca;border-color:#428bca}.panel-primary>.panel-heading+.panel-collapse .panel-body{border-top-color:#428bca}.panel-primary>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#428bca}.panel-success{border-color:#d6e9c6}.panel-success>.panel-heading{color:#468847;background-color:#dff0d8;border-color:#d6e9c6}.panel-success>.panel-heading+.panel-collapse .panel-body{border-top-color:#d6e9c6}.panel-success>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#d6e9c6}.panel-warning{border-color:#faebcc}.panel-warning>.panel-heading{color:#c09853;background-color:#fcf8e3;border-color:#faebcc}.panel-warning>.panel-heading+.panel-collapse .panel-body{border-top-color:#faebcc}.panel-warning>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#faebcc}.panel-danger{border-color:#ebccd1}.panel-danger>.panel-heading{color:#b94a48;background-color:#f2dede;border-color:#ebccd1}.panel-danger>.panel-heading+.panel-collapse .panel-body{border-top-color:#ebccd1}.panel-danger>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#ebccd1}.panel-info{border-color:#bce8f1}.panel-info>.panel-heading{color:#3a87ad;background-color:#d9edf7;border-color:#bce8f1}.panel-info>.panel-heading+.panel-collapse .panel-body{border-top-color:#bce8f1}.panel-info>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#bce8f1}.well{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);box-shadow:inset 0 1px 1px rgba(0,0,0,0.05)}.well blockquote{border-color:#ddd;border-color:rgba(0,0,0,0.15)}.well-lg{padding:24px;border-radius:6px}.well-sm{padding:9px;border-radius:3px}.close{float:right;font-size:21px;font-weight:bold;line-height:1;color:#000;text-shadow:0 1px 0 #fff;opacity:.2;filter:alpha(opacity=20)}.close:hover,.close:focus{color:#000;text-decoration:none;cursor:pointer;opacity:.5;filter:alpha(opacity=50)}button.close{padding:0;cursor:pointer;background:transparent;border:0;-webkit-appearance:none}.modal-open{overflow:hidden}body.modal-open,.modal-open .navbar-fixed-top,.modal-open .navbar-fixed-bottom{margin-right:15px}.modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1040;display:none;overflow:auto;overflow-y:scroll}.modal.fade .modal-dialog{-webkit-transform:translate(0,-25%);-ms-transform:translate(0,-25%);transform:translate(0,-25%);-webkit-transition:-webkit-transform .3s ease-out;-moz-transition:-moz-transform .3s ease-out;-o-transition:-o-transform .3s ease-out;transition:transform .3s ease-out}.modal.in .modal-dialog{-webkit-transform:translate(0,0);-ms-transform:translate(0,0);transform:translate(0,0)}.modal-dialog{z-index:1050;width:auto;padding:10px;margin-right:auto;margin-left:auto}.modal-content{position:relative;background-color:#fff;border:1px solid #999;border:1px solid rgba(0,0,0,0.2);border-radius:6px;outline:0;-webkit-box-shadow:0 3px 9px rgba(0,0,0,0.5);box-shadow:0 3px 9px rgba(0,0,0,0.5);background-clip:padding-box}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1030;background-color:#000}.modal-backdrop.fade{opacity:0;filter:alpha(opacity=0)}.modal-backdrop.in{opacity:.5;filter:alpha(opacity=50)}.modal-header{min-height:16.428571429px;padding:15px;border-bottom:1px solid #e5e5e5}.modal-header .close{margin-top:-2px}.modal-title{margin:0;line-height:1.428571429}.modal-body{position:relative;padding:20px}.modal-footer{padding:19px 20px 20px;margin-top:15px;text-align:right;border-top:1px solid #e5e5e5}.modal-footer:before,.modal-footer:after{display:table;content:" "}.modal-footer:after{clear:both}.modal-footer:before,.modal-footer:after{display:table;content:" "}.modal-footer:after{clear:both}.modal-footer .btn+.btn{margin-bottom:0;margin-left:5px}.modal-footer .btn-group .btn+.btn{margin-left:-1px}.modal-footer .btn-block+.btn-block{margin-left:0}@media screen and (min-width:768px){.modal-dialog{width:600px;padding-top:30px;padding-bottom:30px}.modal-content{-webkit-box-shadow:0 5px 15px rgba(0,0,0,0.5);box-shadow:0 5px 15px rgba(0,0,0,0.5)}}.tooltip{position:absolute;z-index:1030;display:block;font-size:12px;line-height:1.4;opacity:0;filter:alpha(opacity=0);visibility:visible}.tooltip.in{opacity:.9;filter:alpha(opacity=90)}.tooltip.top{padding:5px 0;margin-top:-3px}.tooltip.right{padding:0 5px;margin-left:3px}.tooltip.bottom{padding:5px 0;margin-top:3px}.tooltip.left{padding:0 5px;margin-left:-3px}.tooltip-inner{max-width:200px;padding:3px 8px;color:#fff;text-align:center;text-decoration:none;background-color:#000;border-radius:4px}.tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}.tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-top-color:#000;border-width:5px 5px 0}.tooltip.top-left .tooltip-arrow{bottom:0;left:5px;border-top-color:#000;border-width:5px 5px 0}.tooltip.top-right .tooltip-arrow{right:5px;bottom:0;border-top-color:#000;border-width:5px 5px 0}.tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-right-color:#000;border-width:5px 5px 5px 0}.tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-left-color:#000;border-width:5px 0 5px 5px}.tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-bottom-color:#000;border-width:0 5px 5px}.tooltip.bottom-left .tooltip-arrow{top:0;left:5px;border-bottom-color:#000;border-width:0 5px 5px}.tooltip.bottom-right .tooltip-arrow{top:0;right:5px;border-bottom-color:#000;border-width:0 5px 5px}.popover{position:absolute;top:0;left:0;z-index:1010;display:none;max-width:276px;padding:1px;text-align:left;white-space:normal;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.2);border-radius:6px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,0.2);box-shadow:0 5px 10px rgba(0,0,0,0.2);background-clip:padding-box}.popover.top{margin-top:-10px}.popover.right{margin-left:10px}.popover.bottom{margin-top:10px}.popover.left{margin-left:-10px}.popover-title{padding:8px 14px;margin:0;font-size:14px;font-weight:normal;line-height:18px;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;border-radius:5px 5px 0 0}.popover-content{padding:9px 14px}.popover .arrow,.popover .arrow:after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}.popover .arrow{border-width:11px}.popover .arrow:after{border-width:10px;content:""}.popover.top .arrow{bottom:-11px;left:50%;margin-left:-11px;border-top-color:#999;border-top-color:rgba(0,0,0,0.25);border-bottom-width:0}.popover.top .arrow:after{bottom:1px;margin-left:-10px;border-top-color:#fff;border-bottom-width:0;content:" "}.popover.right .arrow{top:50%;left:-11px;margin-top:-11px;border-right-color:#999;border-right-color:rgba(0,0,0,0.25);border-left-width:0}.popover.right .arrow:after{bottom:-10px;left:1px;border-right-color:#fff;border-left-width:0;content:" "}.popover.bottom .arrow{top:-11px;left:50%;margin-left:-11px;border-bottom-color:#999;border-bottom-color:rgba(0,0,0,0.25);border-top-width:0}.popover.bottom .arrow:after{top:1px;margin-left:-10px;border-bottom-color:#fff;border-top-width:0;content:" "}.popover.left .arrow{top:50%;right:-11px;margin-top:-11px;border-left-color:#999;border-left-color:rgba(0,0,0,0.25);border-right-width:0}.popover.left .arrow:after{right:1px;bottom:-10px;border-left-color:#fff;border-right-width:0;content:" "}.carousel{position:relative}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel-inner>.item{position:relative;display:none;-webkit-transition:.6s ease-in-out left;transition:.6s ease-in-out left}.carousel-inner>.item>img,.carousel-inner>.item>a>img{display:block;height:auto;max-width:100%;line-height:1}.carousel-inner>.active,.carousel-inner>.next,.carousel-inner>.prev{display:block}.carousel-inner>.active{left:0}.carousel-inner>.next,.carousel-inner>.prev{position:absolute;top:0;width:100%}.carousel-inner>.next{left:100%}.carousel-inner>.prev{left:-100%}.carousel-inner>.next.left,.carousel-inner>.prev.right{left:0}.carousel-inner>.active.left{left:-100%}.carousel-inner>.active.right{left:100%}.carousel-control{position:absolute;top:0;bottom:0;left:0;width:15%;font-size:20px;color:#fff;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,0.6);opacity:.5;filter:alpha(opacity=50)}.carousel-control.left{background-image:-webkit-gradient(linear,0 top,100% top,from(rgba(0,0,0,0.5)),to(rgba(0,0,0,0.0001)));background-image:-webkit-linear-gradient(left,color-stop(rgba(0,0,0,0.5) 0),color-stop(rgba(0,0,0,0.0001) 100%));background-image:-moz-linear-gradient(left,rgba(0,0,0,0.5) 0,rgba(0,0,0,0.0001) 100%);background-image:linear-gradient(to right,rgba(0,0,0,0.5) 0,rgba(0,0,0,0.0001) 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000',endColorstr='#00000000',GradientType=1)}.carousel-control.right{right:0;left:auto;background-image:-webkit-gradient(linear,0 top,100% top,from(rgba(0,0,0,0.0001)),to(rgba(0,0,0,0.5)));background-image:-webkit-linear-gradient(left,color-stop(rgba(0,0,0,0.0001) 0),color-stop(rgba(0,0,0,0.5) 100%));background-image:-moz-linear-gradient(left,rgba(0,0,0,0.0001) 0,rgba(0,0,0,0.5) 100%);background-image:linear-gradient(to right,rgba(0,0,0,0.0001) 0,rgba(0,0,0,0.5) 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000',endColorstr='#80000000',GradientType=1)}.carousel-control:hover,.carousel-control:focus{color:#fff;text-decoration:none;opacity:.9;filter:alpha(opacity=90)}.carousel-control .icon-prev,.carousel-control .icon-next,.carousel-control .glyphicon-chevron-left,.carousel-control .glyphicon-chevron-right{position:absolute;top:50%;z-index:5;display:inline-block}.carousel-control .icon-prev,.carousel-control .glyphicon-chevron-left{left:50%}.carousel-control .icon-next,.carousel-control .glyphicon-chevron-right{right:50%}.carousel-control .icon-prev,.carousel-control .icon-next{width:20px;height:20px;margin-top:-10px;margin-left:-10px;font-family:serif}.carousel-control .icon-prev:before{content:'\2039'}.carousel-control .icon-next:before{content:'\203a'}.carousel-indicators{position:absolute;bottom:10px;left:50%;z-index:15;width:60%;padding-left:0;margin-left:-30%;text-align:center;list-style:none}.carousel-indicators li{display:inline-block;width:10px;height:10px;margin:1px;text-indent:-999px;cursor:pointer;border:1px solid #fff;border-radius:10px}.carousel-indicators .active{width:12px;height:12px;margin:0;background-color:#fff}.carousel-caption{position:absolute;right:15%;bottom:20px;left:15%;z-index:10;padding-top:20px;padding-bottom:20px;color:#fff;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,0.6)}.carousel-caption .btn{text-shadow:none}@media screen and (min-width:768px){.carousel-control .glyphicons-chevron-left,.carousel-control .glyphicons-chevron-right,.carousel-control .icon-prev,.carousel-control .icon-next{width:30px;height:30px;margin-top:-15px;margin-left:-15px;font-size:30px}.carousel-caption{right:20%;left:20%;padding-bottom:30px}.carousel-indicators{bottom:20px}}.clearfix:before,.clearfix:after{display:table;content:" "}.clearfix:after{clear:both}.center-block{display:block;margin-right:auto;margin-left:auto}.pull-right{float:right!important}.pull-left{float:left!important}.hide{display:none!important}.show{display:block!important}.invisible{visibility:hidden}.text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.affix{position:fixed}@-ms-viewport{width:device-width}.hidden{display:none!important;visibility:hidden!important}.visible-xs,tr.visible-xs,th.visible-xs,td.visible-xs{display:none!important}@media(max-width:767px){.visible-xs{display:block!important}tr.visible-xs{display:table-row!important}th.visible-xs,td.visible-xs{display:table-cell!important}}@media(min-width:768px) and (max-width:991px){.visible-xs.visible-sm{display:block!important}tr.visible-xs.visible-sm{display:table-row!important}th.visible-xs.visible-sm,td.visible-xs.visible-sm{display:table-cell!important}}@media(min-width:992px) and (max-width:1199px){.visible-xs.visible-md{display:block!important}tr.visible-xs.visible-md{display:table-row!important}th.visible-xs.visible-md,td.visible-xs.visible-md{display:table-cell!important}}@media(min-width:1200px){.visible-xs.visible-lg{display:block!important}tr.visible-xs.visible-lg{display:table-row!important}th.visible-xs.visible-lg,td.visible-xs.visible-lg{display:table-cell!important}}.visible-sm,tr.visible-sm,th.visible-sm,td.visible-sm{display:none!important}@media(max-width:767px){.visible-sm.visible-xs{display:block!important}tr.visible-sm.visible-xs{display:table-row!important}th.visible-sm.visible-xs,td.visible-sm.visible-xs{display:table-cell!important}}@media(min-width:768px) and (max-width:991px){.visible-sm{display:block!important}tr.visible-sm{display:table-row!important}th.visible-sm,td.visible-sm{display:table-cell!important}}@media(min-width:992px) and (max-width:1199px){.visible-sm.visible-md{display:block!important}tr.visible-sm.visible-md{display:table-row!important}th.visible-sm.visible-md,td.visible-sm.visible-md{display:table-cell!important}}@media(min-width:1200px){.visible-sm.visible-lg{display:block!important}tr.visible-sm.visible-lg{display:table-row!important}th.visible-sm.visible-lg,td.visible-sm.visible-lg{display:table-cell!important}}.visible-md,tr.visible-md,th.visible-md,td.visible-md{display:none!important}@media(max-width:767px){.visible-md.visible-xs{display:block!important}tr.visible-md.visible-xs{display:table-row!important}th.visible-md.visible-xs,td.visible-md.visible-xs{display:table-cell!important}}@media(min-width:768px) and (max-width:991px){.visible-md.visible-sm{display:block!important}tr.visible-md.visible-sm{display:table-row!important}th.visible-md.visible-sm,td.visible-md.visible-sm{display:table-cell!important}}@media(min-width:992px) and (max-width:1199px){.visible-md{display:block!important}tr.visible-md{display:table-row!important}th.visible-md,td.visible-md{display:table-cell!important}}@media(min-width:1200px){.visible-md.visible-lg{display:block!important}tr.visible-md.visible-lg{display:table-row!important}th.visible-md.visible-lg,td.visible-md.visible-lg{display:table-cell!important}}.visible-lg,tr.visible-lg,th.visible-lg,td.visible-lg{display:none!important}@media(max-width:767px){.visible-lg.visible-xs{display:block!important}tr.visible-lg.visible-xs{display:table-row!important}th.visible-lg.visible-xs,td.visible-lg.visible-xs{display:table-cell!important}}@media(min-width:768px) and (max-width:991px){.visible-lg.visible-sm{display:block!important}tr.visible-lg.visible-sm{display:table-row!important}th.visible-lg.visible-sm,td.visible-lg.visible-sm{display:table-cell!important}}@media(min-width:992px) and (max-width:1199px){.visible-lg.visible-md{display:block!important}tr.visible-lg.visible-md{display:table-row!important}th.visible-lg.visible-md,td.visible-lg.visible-md{display:table-cell!important}}@media(min-width:1200px){.visible-lg{display:block!important}tr.visible-lg{display:table-row!important}th.visible-lg,td.visible-lg{display:table-cell!important}}.hidden-xs{display:block!important}tr.hidden-xs{display:table-row!important}th.hidden-xs,td.hidden-xs{display:table-cell!important}@media(max-width:767px){.hidden-xs,tr.hidden-xs,th.hidden-xs,td.hidden-xs{display:none!important}}@media(min-width:768px) and (max-width:991px){.hidden-xs.hidden-sm,tr.hidden-xs.hidden-sm,th.hidden-xs.hidden-sm,td.hidden-xs.hidden-sm{display:none!important}}@media(min-width:992px) and (max-width:1199px){.hidden-xs.hidden-md,tr.hidden-xs.hidden-md,th.hidden-xs.hidden-md,td.hidden-xs.hidden-md{display:none!important}}@media(min-width:1200px){.hidden-xs.hidden-lg,tr.hidden-xs.hidden-lg,th.hidden-xs.hidden-lg,td.hidden-xs.hidden-lg{display:none!important}}.hidden-sm{display:block!important}tr.hidden-sm{display:table-row!important}th.hidden-sm,td.hidden-sm{display:table-cell!important}@media(max-width:767px){.hidden-sm.hidden-xs,tr.hidden-sm.hidden-xs,th.hidden-sm.hidden-xs,td.hidden-sm.hidden-xs{display:none!important}}@media(min-width:768px) and (max-width:991px){.hidden-sm,tr.hidden-sm,th.hidden-sm,td.hidden-sm{display:none!important}}@media(min-width:992px) and (max-width:1199px){.hidden-sm.hidden-md,tr.hidden-sm.hidden-md,th.hidden-sm.hidden-md,td.hidden-sm.hidden-md{display:none!important}}@media(min-width:1200px){.hidden-sm.hidden-lg,tr.hidden-sm.hidden-lg,th.hidden-sm.hidden-lg,td.hidden-sm.hidden-lg{display:none!important}}.hidden-md{display:block!important}tr.hidden-md{display:table-row!important}th.hidden-md,td.hidden-md{display:table-cell!important}@media(max-width:767px){.hidden-md.hidden-xs,tr.hidden-md.hidden-xs,th.hidden-md.hidden-xs,td.hidden-md.hidden-xs{display:none!important}}@media(min-width:768px) and (max-width:991px){.hidden-md.hidden-sm,tr.hidden-md.hidden-sm,th.hidden-md.hidden-sm,td.hidden-md.hidden-sm{display:none!important}}@media(min-width:992px) and (max-width:1199px){.hidden-md,tr.hidden-md,th.hidden-md,td.hidden-md{display:none!important}}@media(min-width:1200px){.hidden-md.hidden-lg,tr.hidden-md.hidden-lg,th.hidden-md.hidden-lg,td.hidden-md.hidden-lg{display:none!important}}.hidden-lg{display:block!important}tr.hidden-lg{display:table-row!important}th.hidden-lg,td.hidden-lg{display:table-cell!important}@media(max-width:767px){.hidden-lg.hidden-xs,tr.hidden-lg.hidden-xs,th.hidden-lg.hidden-xs,td.hidden-lg.hidden-xs{display:none!important}}@media(min-width:768px) and (max-width:991px){.hidden-lg.hidden-sm,tr.hidden-lg.hidden-sm,th.hidden-lg.hidden-sm,td.hidden-lg.hidden-sm{display:none!important}}@media(min-width:992px) and (max-width:1199px){.hidden-lg.hidden-md,tr.hidden-lg.hidden-md,th.hidden-lg.hidden-md,td.hidden-lg.hidden-md{display:none!important}}@media(min-width:1200px){.hidden-lg,tr.hidden-lg,th.hidden-lg,td.hidden-lg{display:none!important}}.visible-print,tr.visible-print,th.visible-print,td.visible-print{display:none!important}@media print{.visible-print{display:block!important}tr.visible-print{display:table-row!important}th.visible-print,td.visible-print{display:table-cell!important}.hidden-print,tr.hidden-print,th.hidden-print,td.hidden-print{display:none!important}} \ No newline at end of file diff --git a/bower_components/saveSvgAsPng/image.png b/bower_components/saveSvgAsPng/image.png deleted file mode 100644 index e94e7a1..0000000 Binary files a/bower_components/saveSvgAsPng/image.png and /dev/null differ diff --git a/bower_components/saveSvgAsPng/index.html b/bower_components/saveSvgAsPng/index.html deleted file mode 100644 index fa42151..0000000 --- a/bower_components/saveSvgAsPng/index.html +++ /dev/null @@ -1,257 +0,0 @@ - - -saveSvgAsPng - - - - - - - -
-

saveSvgAsPng

-

This page tests various features of saveSvgAsPng.

-

You can test your own SVG code in the Sandbox. If something doesn't work as expected, you can file an issue on GitHub.

- -
    -
  • -

    Sandbox

    -

    Paste you SVG below to see how it renders.

    - - -
    - -
    - -
    -

    Preview

    - -
    -
  • - -
  • -
    -
    -

    Load from your hard drive

    -
    - -
    -

    Preview

    -
    -
    - -
    -
    - -
    -
    - -
    -
    No file selected.
    -
    -
    -
  • - -
  • - - - -
  • - -
  • - - - -
  • - -
  • - - - -
  • - -
  • - - - -
  • - -
  • - - - -
  • - -
  • - - - -
  • - -
  • - - - - -
  • - -
  • - - - - -
  • - -
  • - - - - - -
  • -
-
- - - - diff --git a/bower_components/saveSvgAsPng/saveSvgAsPng.js b/bower_components/saveSvgAsPng/saveSvgAsPng.js deleted file mode 100644 index 3fde80e..0000000 --- a/bower_components/saveSvgAsPng/saveSvgAsPng.js +++ /dev/null @@ -1,119 +0,0 @@ -(function() { - var out$ = typeof exports != 'undefined' && exports || this; - - var doctype = ''; - - function isExternal(url) { - return url && url.lastIndexOf('http',0) == 0 && url.lastIndexOf(window.location.host) == -1; - } - - function inlineImages(el, callback) { - var images = el.querySelectorAll('image'); - var left = images.length; - if (left == 0) { - callback(); - } - for (var i = 0; i < images.length; i++) { - (function(image) { - var href = image.getAttribute('xlink:href'); - if (href) { - if (isExternal(href.value)) { - console.warn("Cannot render embedded images linking to external hosts: "+href.value); - return; - } - } - var canvas = document.createElement('canvas'); - var ctx = canvas.getContext('2d'); - var img = new Image(); - href = href || image.getAttribute('href'); - if(href === null) { - left--; - if (left == 0) { - callback(); - } - } else { - img.src = href; - } - - img.onload = function() { - canvas.width = img.width; - canvas.height = img.height; - ctx.drawImage(img, 0, 0); - //image.setAttribute('xlink:href', canvas.toDataURL('image/png')); - left--; - if (left == 0) { - callback(); - } - } - img.onerror = function() { - console.log("Could not load "+href); - left--; - if (left == 0) { - callback(); - } - } - })(images[i]); - } - } - - out$.svgAsDataUri = function(el, options, cb) { - options = options || {}; - options.scale = options.scale || 1; - var xmlns = "http://www.w3.org/2000/xmlns/"; - - inlineImages(el, function() { - var outer = document.createElement("div"); - var clone = el.cloneNode(true); - var width, height; - if(el.tagName == 'svg') { - width = parseInt(clone.getAttribute('data-width') || clone.style.width || out$.getComputedStyle(el).getPropertyValue('width')); - height = parseInt(clone.getAttribute('data-height') || clone.style.height || out$.getComputedStyle(el).getPropertyValue('height')); - } else { - var box = el.getBBox(); - width = box.x + box.width; - height = box.y + box.height; - clone.setAttribute('transform', clone.getAttribute('transform').replace(/translate\(.*?\)/, '')); - - var svg = document.createElementNS('http://www.w3.org/2000/svg','svg') - svg.appendChild(clone) - clone = svg; - } - - clone.setAttribute("version", "1.1"); - clone.setAttributeNS(xmlns, "xmlns", "http://www.w3.org/2000/svg"); - clone.setAttributeNS(xmlns, "xmlns:xlink", "http://www.w3.org/1999/xlink"); - clone.setAttribute("width", width * options.scale); - clone.setAttribute("height", height * options.scale); - clone.setAttribute("viewBox", "0 0 " + width + " " + height); - outer.appendChild(clone); - - var svg = doctype + outer.innerHTML; - var uri = 'data:image/svg+xml;base64,' + window.btoa(unescape(encodeURIComponent(svg))); - if (cb) { - cb(uri); - } - }); - } - - out$.saveSvgAsPng = function(el, name, options) { - options = options || {}; - out$.svgAsDataUri(el, options, function(uri) { - var image = new Image(); - image.src = uri; - image.onload = function() { - var canvas = document.createElement('canvas'); - canvas.width = image.width; - canvas.height = image.height; - var context = canvas.getContext('2d'); - context.drawImage(image, 0, 0, image.width, image.height, 0, 0, canvas.width, canvas.height); - - var a = document.createElement('a'); - a.download = name; - a.href = canvas.toDataURL('image/png'); - document.body.appendChild(a); - a.click(); - - } - }); - } -})(); diff --git a/bower_components/saveSvgAsPng/stalemate.ttf b/bower_components/saveSvgAsPng/stalemate.ttf deleted file mode 100644 index 687c591..0000000 Binary files a/bower_components/saveSvgAsPng/stalemate.ttf and /dev/null differ diff --git a/bower_components/saveSvgAsPng/test.svg b/bower_components/saveSvgAsPng/test.svg deleted file mode 100644 index 4da05c7..0000000 --- a/bower_components/saveSvgAsPng/test.svg +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - diff --git a/cardkit.js b/cardkit.js new file mode 100644 index 0000000..8a0e541 --- /dev/null +++ b/cardkit.js @@ -0,0 +1,340 @@ +(function webpackUniversalModuleDefinition(root, factory) { + if(typeof exports === 'object' && typeof module === 'object') + module.exports = factory(require("deep-extend")); + else if(typeof define === 'function' && define.amd) + define("CardKit", ["deep-extend"], factory); + else if(typeof exports === 'object') + exports["CardKit"] = factory(require("deep-extend")); + else + root["CardKit"] = factory(root["deep-extend"]); +})(this, function(__WEBPACK_EXTERNAL_MODULE_1__) { +return /******/ (function(modules) { // webpackBootstrap +/******/ // The module cache +/******/ var installedModules = {}; + +/******/ // The require function +/******/ function __webpack_require__(moduleId) { + +/******/ // Check if module is in cache +/******/ if(installedModules[moduleId]) +/******/ return installedModules[moduleId].exports; + +/******/ // Create a new module (and put it into the cache) +/******/ var module = installedModules[moduleId] = { +/******/ exports: {}, +/******/ id: moduleId, +/******/ loaded: false +/******/ }; + +/******/ // Execute the module function +/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__); + +/******/ // Flag the module as loaded +/******/ module.loaded = true; + +/******/ // Return the exports of the module +/******/ return module.exports; +/******/ } + + +/******/ // expose the modules object (__webpack_modules__) +/******/ __webpack_require__.m = modules; + +/******/ // expose the module cache +/******/ __webpack_require__.c = installedModules; + +/******/ // __webpack_public_path__ +/******/ __webpack_require__.p = ""; + +/******/ // Load entry module and return exports +/******/ return __webpack_require__(0); +/******/ }) +/************************************************************************/ +/******/ ([ +/* 0 */ +/***/ function(module, exports, __webpack_require__) { + + 'use strict'; + + var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; + + var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }(); + + function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + + var deepExtend = __webpack_require__(1); + + /** + * @name CardKit + * @class Core CardKit class used for managing a single card instance + */ + + var CardKit = function () { + + /** + * Constructor takes in the configuration and stores it for later user + * + * @param {object} configuration - The configuration object to initialise the CardKit image with. + * @param {object} options - The additional options for use + */ + function CardKit(configuration) { + var options = arguments.length <= 1 || arguments[1] === undefined ? false : arguments[1]; + + _classCallCheck(this, CardKit); + + if (!configuration) { + throw new Error('A configuration object was not provided'); + } + + if (!this._isValidConfiguration(configuration)) { + throw new Error('Invalid configuration object provided'); + } + + // Store the configuration + this.configuration = configuration; + + // Configure the options + this._configureOptions(options); + + // Setup an empty array of renderers + this.renderers = []; + } + + /** + * Configures the supplied options on this instance of CardKit + * + * @param {object} options - The options to configure + */ + + + _createClass(CardKit, [{ + key: '_configureOptions', + value: function _configureOptions(options) { + if (options) { + if (options.templates) { + if (!this._isValidTemplatesConfiguration(options.templates)) { + throw new Error('Invalid templates configuration object provided'); + } + + this.templates = options.templates; + } else { + this.templates = null; + } + + if (options.themes) { + if (!this._isValidThemesConfiguration(options.themes)) { + throw new Error('Invalid themes configuration object provided'); + } + + this.themes = options.themes; + } else { + this.themes = null; + } + + if (options.layouts) { + if (!this._isValidLayoutsConfiguration(options.layouts)) { + throw new Error('Invalid layouts configuration object provided'); + } + + this.layouts = options.layouts; + } else { + this.layouts = null; + } + } + } + + /** + * Validates the provided configuration object + * + * @param {object} configuration - The configuration object to validate + * + * @return {boolean} Is the configuration object valid + */ + + }, { + key: '_isValidConfiguration', + value: function _isValidConfiguration(configuration) { + return (typeof configuration === 'undefined' ? 'undefined' : _typeof(configuration)) === 'object' && // Should be an object + typeof configuration.card !== 'undefined' && // Should have a card property + _typeof(configuration.card) === 'object' && // Card property should be an object + typeof configuration.card.height !== 'undefined' && // Should have a height + typeof configuration.card.width !== 'undefined'; // Should have a width + } + + /** + * Validates the provided templates configuration object + * + * @param {object} configuration - The templates configuration object to validate + * + * @return {boolean} Is the templates configuration object valid + */ + + }, { + key: '_isValidTemplatesConfiguration', + value: function _isValidTemplatesConfiguration(templates) { + return (typeof templates === 'undefined' ? 'undefined' : _typeof(templates)) === 'object'; // Should be an object + } + + /** + * Validates the provided themes configuration object + * + * @param {object} configuration - The themes configuration object to validate + * + * @return {boolean} Is the themes configuration object valid + */ + + }, { + key: '_isValidThemesConfiguration', + value: function _isValidThemesConfiguration(themes) { + return (typeof themes === 'undefined' ? 'undefined' : _typeof(themes)) === 'object'; // Should be an object + } + + /** + * Validates the provided layouts configuration object + * + * @param {object} configuration - The layouts configuration object to validate + * + * @return {boolean} Is the layouts configuration object valid + */ + + }, { + key: '_isValidLayoutsConfiguration', + value: function _isValidLayoutsConfiguration(layouts) { + return (typeof layouts === 'undefined' ? 'undefined' : _typeof(layouts)) === 'object'; // Should be an object + } + + /** + * Validates the supplied renderer + * + * @param {object} renderer - The renderer to validate + * + * @return {boolean} If the renderer is valid + */ + + }, { + key: '_isValidRenderer', + value: function _isValidRenderer(renderer) { + return renderer.cardkit === this; + } + + /** + * Compute the configuration + * + * @param {object} options - Any options (e.g. a specific theme and / or layout) to use when computing the configuration + * + * @return {object} The computed configuration + */ + + }, { + key: 'computeConfiguration', + value: function computeConfiguration() { + var options = arguments.length <= 0 || arguments[0] === undefined ? null : arguments[0]; + + // Get the base configuration + var configuration = Object.assign({}, this.configuration); + + // If we got options supplied + if (options) { + if (options.template && typeof this.templates[options.template] !== 'undefined') { + // Get the template based on the name and merge it onto the base configuration + configuration = deepExtend(configuration, this.templates[options.template]); + } + + if (options.theme && typeof this.themes[options.theme] !== 'undefined') { + // Get the theme based on the name and merge it onto the base configuration + configuration = deepExtend(configuration, this.themes[options.theme]); + } + + if (options.layout && typeof this.layouts[options.layout] !== 'undefined') { + // Get the layout based on the name and merge it onto the base configuration + configuration = deepExtend(configuration, this.layouts[options.layout]); + } + } + + // Return the computed configuration + return configuration; + } + + /** + * Updates the configuration, and optionally rerenders the image (if previously rendered) + * + * @param {object} configuration - The configuration object to update to + * @param {object} options - Any options to supply (templates, themes, layouts) + * @param {boolean} rerender - Whether or not to attempt to rerender the image + */ + + }, { + key: 'updateConfiguration', + value: function updateConfiguration(configuration) { + var options = arguments.length <= 1 || arguments[1] === undefined ? { layouts: null, templates: null, themes: null } : arguments[1]; + var rerender = arguments.length <= 2 || arguments[2] === undefined ? true : arguments[2]; + + this.configuration = configuration; + + this._configureOptions(options); + + if (rerender) { + var renderers = this.getRenderers(); + + renderers.forEach(function (renderer) { + switch (renderer.constructor.name) { + case 'CardKitDOM': + renderer.rerender(); + break; + } + }); + } + } + + /** + * Get the renderers + * + * @return {array} The configured renderers + */ + + }, { + key: 'getRenderers', + value: function getRenderers() { + return this.renderers; + } + + /** + * Add a renderer + * + * @param {object} renderer - A renderer to add + */ + + }, { + key: 'addRenderer', + value: function addRenderer(renderer) { + if (!this._isValidRenderer(renderer)) { + throw new Error('Invalid renderer object provided'); + } + + this.renderers.push(renderer); + } + }]); + + return CardKit; + }(); + + // Export it + + + module.exports = CardKit; + + // Add it to the window object if we have one + if (typeof window !== 'undefined') { + window.CardKit = CardKit; + } + +/***/ }, +/* 1 */ +/***/ function(module, exports) { + + module.exports = __WEBPACK_EXTERNAL_MODULE_1__; + +/***/ } +/******/ ]) +}); +; \ No newline at end of file diff --git a/demo.gif b/demo.gif deleted file mode 100644 index 94f7e75..0000000 Binary files a/demo.gif and /dev/null differ diff --git a/dist/404.html b/dist/404.html deleted file mode 100644 index 6f0d4bd..0000000 --- a/dist/404.html +++ /dev/null @@ -1,133 +0,0 @@ - Page Not Found :(

Not found :(

Sorry, but the page you were trying to view does not exist.

It looks like this was the result of either:

  • a mistyped address
  • an out-of-date link
\ No newline at end of file diff --git a/dist/README.md b/dist/README.md new file mode 100644 index 0000000..26e51c2 --- /dev/null +++ b/dist/README.md @@ -0,0 +1,18 @@ +# CardKit `./dist` directory + +The files in here can be used in ` + + + + + \ No newline at end of file diff --git a/dist/bower_components/bootstrap-sass-official/assets/fonts/bootstrap/glyphicons-halflings-regular.eot b/dist/bower_components/bootstrap-sass-official/assets/fonts/bootstrap/glyphicons-halflings-regular.eot deleted file mode 100644 index 4a4ca86..0000000 Binary files a/dist/bower_components/bootstrap-sass-official/assets/fonts/bootstrap/glyphicons-halflings-regular.eot and /dev/null differ diff --git a/dist/bower_components/bootstrap-sass-official/assets/fonts/bootstrap/glyphicons-halflings-regular.svg b/dist/bower_components/bootstrap-sass-official/assets/fonts/bootstrap/glyphicons-halflings-regular.svg deleted file mode 100644 index e3e2dc7..0000000 --- a/dist/bower_components/bootstrap-sass-official/assets/fonts/bootstrap/glyphicons-halflings-regular.svg +++ /dev/null @@ -1,229 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/dist/bower_components/bootstrap-sass-official/assets/fonts/bootstrap/glyphicons-halflings-regular.ttf b/dist/bower_components/bootstrap-sass-official/assets/fonts/bootstrap/glyphicons-halflings-regular.ttf deleted file mode 100644 index 67fa00b..0000000 Binary files a/dist/bower_components/bootstrap-sass-official/assets/fonts/bootstrap/glyphicons-halflings-regular.ttf and /dev/null differ diff --git a/dist/bower_components/bootstrap-sass-official/assets/fonts/bootstrap/glyphicons-halflings-regular.woff b/dist/bower_components/bootstrap-sass-official/assets/fonts/bootstrap/glyphicons-halflings-regular.woff deleted file mode 100644 index 8c54182..0000000 Binary files a/dist/bower_components/bootstrap-sass-official/assets/fonts/bootstrap/glyphicons-halflings-regular.woff and /dev/null differ diff --git a/dist/cardkit.js b/dist/cardkit.js new file mode 100644 index 0000000..4700c6d --- /dev/null +++ b/dist/cardkit.js @@ -0,0 +1,33 @@ +!function(t,r){"object"==typeof exports&&"object"==typeof module?module.exports=r():"function"==typeof define&&define.amd?define("CardKit",[],r):"object"==typeof exports?exports.CardKit=r():t.CardKit=r()}(this,function(){return function(t){function r(n){if(e[n])return e[n].exports;var i=e[n]={exports:{},id:n,loaded:!1};return t[n].call(i.exports,i,i.exports,r),i.loaded=!0,i.exports}var e={};return r.m=t,r.c=e,r.p="",r(0)}([function(t,r,e){"use strict";function n(t,r){if(!(t instanceof r))throw new TypeError("Cannot call a class as a function")}var i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},o=function(){function t(t,r){for(var e=0;e + * @license MIT + * + * The MIT License (MIT) + * + * Copyright (c) 2013-2015 Viacheslav Lotsmanov + * + * Permission is hereby granted, free of charge, to any person obtaining a copy of + * this software and associated documentation files (the "Software"), to deal in + * the Software without restriction, including without limitation the rights to + * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of + * the Software, and to permit persons to whom the Software is furnished to do so, + * subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS + * FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR + * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER + * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + */ +"use strict";function e(t){return t instanceof r||t instanceof Date||t instanceof RegExp}function n(t){if(t instanceof r){var e=new r(t.length);return t.copy(e),e}if(t instanceof Date)return new Date(t.getTime());if(t instanceof RegExp)return new RegExp(t);throw new Error("Unexpected situation")}function i(t){var r=[];return t.forEach(function(t,u){"object"==typeof t&&null!==t?Array.isArray(t)?r[u]=i(t):e(t)?r[u]=n(t):r[u]=o({},t):r[u]=t}),r}var o=t.exports=function(){if(arguments.length<1||"object"!=typeof arguments[0])return!1;if(arguments.length<2)return arguments[0];var t,r,u=arguments[0],f=Array.prototype.slice.call(arguments,1);return f.forEach(function(f){"object"!=typeof f||Array.isArray(f)||Object.keys(f).forEach(function(s){return r=u[s],t=f[s],t===u?void 0:"object"!=typeof t||null===t?void(u[s]=t):Array.isArray(t)?void(u[s]=i(t)):e(t)?void(u[s]=n(t)):"object"!=typeof r||null===r||Array.isArray(r)?void(u[s]=o({},t)):void(u[s]=o(r,t))})}),u}}).call(r,e(2).Buffer)},function(t,r,e){(function(t,n){/*! + * The buffer module from node.js, for the browser. + * + * @author Feross Aboukhadijeh + * @license MIT + */ +"use strict";function i(){try{var t=new Uint8Array(1);return t.__proto__={__proto__:Uint8Array.prototype,foo:function(){return 42}},42===t.foo()&&"function"==typeof t.subarray&&0===t.subarray(1,1).byteLength}catch(r){return!1}}function o(){return t.TYPED_ARRAY_SUPPORT?2147483647:1073741823}function u(r,e){if(o()=o())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+o().toString(16)+" bytes");return 0|t}function d(r){return+r!=r&&(r=0),t.alloc(+r)}function w(r,e){if(t.isBuffer(r))return r.length;if("undefined"!=typeof ArrayBuffer&&"function"==typeof ArrayBuffer.isView&&(ArrayBuffer.isView(r)||r instanceof ArrayBuffer))return r.byteLength;"string"!=typeof r&&(r=""+r);var n=r.length;if(0===n)return 0;for(var i=!1;;)switch(e){case"ascii":case"latin1":case"binary":return n;case"utf8":case"utf-8":case void 0:return X(r).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*n;case"hex":return n>>>1;case"base64":return Z(r).length;default:if(i)return X(r).length;e=(""+e).toLowerCase(),i=!0}}function v(t,r,e){var n=!1;if((void 0===r||r<0)&&(r=0),r>this.length)return"";if((void 0===e||e>this.length)&&(e=this.length),e<=0)return"";if(e>>>=0,r>>>=0,e<=r)return"";for(t||(t="utf8");;)switch(t){case"hex":return O(this,r,e);case"utf8":case"utf-8":return S(this,r,e);case"ascii":return I(this,r,e);case"latin1":case"binary":return Y(this,r,e);case"base64":return U(this,r,e);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return x(this,r,e);default:if(n)throw new TypeError("Unknown encoding: "+t);t=(t+"").toLowerCase(),n=!0}}function m(t,r,e){var n=t[r];t[r]=t[e],t[e]=n}function b(r,e,n,i,o){if(0===r.length)return-1;if("string"==typeof n?(i=n,n=0):n>2147483647?n=2147483647:n<-2147483648&&(n=-2147483648),n=+n,isNaN(n)&&(n=o?0:r.length-1),n<0&&(n=r.length+n),n>=r.length){if(o)return-1;n=r.length-1}else if(n<0){if(!o)return-1;n=0}if("string"==typeof e&&(e=t.from(e,i)),t.isBuffer(e))return 0===e.length?-1:E(r,e,n,i,o);if("number"==typeof e)return e=255&e,t.TYPED_ARRAY_SUPPORT&&"function"==typeof Uint8Array.prototype.indexOf?o?Uint8Array.prototype.indexOf.call(r,e,n):Uint8Array.prototype.lastIndexOf.call(r,e,n):E(r,[e],n,i,o);throw new TypeError("val must be string, number or Buffer")}function E(t,r,e,n,i){function o(t,r){return 1===u?t[r]:t.readUInt16BE(r*u)}var u=1,f=t.length,s=r.length;if(void 0!==n&&(n=String(n).toLowerCase(),"ucs2"===n||"ucs-2"===n||"utf16le"===n||"utf-16le"===n)){if(t.length<2||r.length<2)return-1;u=2,f/=2,s/=2,e/=2}var a;if(i){var h=-1;for(a=e;af&&(e=f-s),a=e;a>=0;a--){for(var c=!0,l=0;li&&(n=i)):n=i;var o=r.length;if(o%2!==0)throw new TypeError("Invalid hex string");n>o/2&&(n=o/2);for(var u=0;u239?4:o>223?3:o>191?2:1;if(i+f<=e){var s,a,h,c;switch(f){case 1:o<128&&(u=o);break;case 2:s=t[i+1],128===(192&s)&&(c=(31&o)<<6|63&s,c>127&&(u=c));break;case 3:s=t[i+1],a=t[i+2],128===(192&s)&&128===(192&a)&&(c=(15&o)<<12|(63&s)<<6|63&a,c>2047&&(c<55296||c>57343)&&(u=c));break;case 4:s=t[i+1],a=t[i+2],h=t[i+3],128===(192&s)&&128===(192&a)&&128===(192&h)&&(c=(15&o)<<18|(63&s)<<12|(63&a)<<6|63&h,c>65535&&c<1114112&&(u=c))}}null===u?(u=65533,f=1):u>65535&&(u-=65536,n.push(u>>>10&1023|55296),u=56320|1023&u),n.push(u),i+=f}return C(n)}function C(t){var r=t.length;if(r<=tt)return String.fromCharCode.apply(String,t);for(var e="",n=0;nn)&&(e=n);for(var i="",o=r;oe)throw new RangeError("Trying to access beyond buffer length")}function M(r,e,n,i,o,u){if(!t.isBuffer(r))throw new TypeError('"buffer" argument must be a Buffer instance');if(e>o||er.length)throw new RangeError("Index out of range")}function D(t,r,e,n){r<0&&(r=65535+r+1);for(var i=0,o=Math.min(t.length-e,2);i>>8*(n?i:1-i)}function j(t,r,e,n){r<0&&(r=4294967295+r+1);for(var i=0,o=Math.min(t.length-e,4);i>>8*(n?i:3-i)&255}function k(t,r,e,n,i,o){if(e+n>t.length)throw new RangeError("Index out of range");if(e<0)throw new RangeError("Index out of range")}function N(t,r,e,n,i){return i||k(t,r,e,4,3.4028234663852886e38,-3.4028234663852886e38),W.write(t,r,e,n,23,4),e+4}function V(t,r,e,n,i){return i||k(t,r,e,8,1.7976931348623157e308,-1.7976931348623157e308),W.write(t,r,e,n,52,8),e+8}function z(t){if(t=F(t).replace(rt,""),t.length<2)return"";for(;t.length%4!==0;)t+="=";return t}function F(t){return t.trim?t.trim():t.replace(/^\s+|\s+$/g,"")}function K(t){return t<16?"0"+t.toString(16):t.toString(16)}function X(t,r){r=r||1/0;for(var e,n=t.length,i=null,o=[],u=0;u55295&&e<57344){if(!i){if(e>56319){(r-=3)>-1&&o.push(239,191,189);continue}if(u+1===n){(r-=3)>-1&&o.push(239,191,189);continue}i=e;continue}if(e<56320){(r-=3)>-1&&o.push(239,191,189),i=e;continue}e=(i-55296<<10|e-56320)+65536}else i&&(r-=3)>-1&&o.push(239,191,189);if(i=null,e<128){if((r-=1)<0)break;o.push(e)}else if(e<2048){if((r-=2)<0)break;o.push(e>>6|192,63&e|128)}else if(e<65536){if((r-=3)<0)break;o.push(e>>12|224,e>>6&63|128,63&e|128)}else{if(!(e<1114112))throw new Error("Invalid code point");if((r-=4)<0)break;o.push(e>>18|240,e>>12&63|128,e>>6&63|128,63&e|128)}}return o}function q(t){for(var r=[],e=0;e>8,i=e%256,o.push(i),o.push(n);return o}function Z(t){return Q.toByteArray(z(t))}function G(t,r,e,n){for(var i=0;i=r.length||i>=t.length);++i)r[i+e]=t[i];return i}function H(t){return t!==t}var Q=e(3),W=e(4),$=e(5);r.Buffer=t,r.SlowBuffer=d,r.INSPECT_MAX_BYTES=50,t.TYPED_ARRAY_SUPPORT=void 0!==n.TYPED_ARRAY_SUPPORT?n.TYPED_ARRAY_SUPPORT:i(),r.kMaxLength=o(),t.poolSize=8192,t._augment=function(r){return r.__proto__=t.prototype,r},t.from=function(t,r,e){return f(null,t,r,e)},t.TYPED_ARRAY_SUPPORT&&(t.prototype.__proto__=Uint8Array.prototype,t.__proto__=Uint8Array,"undefined"!=typeof Symbol&&Symbol.species&&t[Symbol.species]===t&&Object.defineProperty(t,Symbol.species,{value:null,configurable:!0})),t.alloc=function(t,r,e){return a(null,t,r,e)},t.allocUnsafe=function(t){return h(null,t)},t.allocUnsafeSlow=function(t){return h(null,t)},t.isBuffer=function(t){return!(null==t||!t._isBuffer)},t.compare=function(r,e){if(!t.isBuffer(r)||!t.isBuffer(e))throw new TypeError("Arguments must be Buffers");if(r===e)return 0;for(var n=r.length,i=e.length,o=0,u=Math.min(n,i);o0&&(t=this.toString("hex",0,e).match(/.{2}/g).join(" "),this.length>e&&(t+=" ... ")),""},t.prototype.compare=function(r,e,n,i,o){if(!t.isBuffer(r))throw new TypeError("Argument must be a Buffer");if(void 0===e&&(e=0),void 0===n&&(n=r?r.length:0),void 0===i&&(i=0),void 0===o&&(o=this.length),e<0||n>r.length||i<0||o>this.length)throw new RangeError("out of range index");if(i>=o&&e>=n)return 0;if(i>=o)return-1;if(e>=n)return 1;if(e>>>=0,n>>>=0,i>>>=0,o>>>=0,this===r)return 0;for(var u=o-i,f=n-e,s=Math.min(u,f),a=this.slice(i,o),h=r.slice(e,n),c=0;ci)&&(e=i),t.length>0&&(e<0||r<0)||r>this.length)throw new RangeError("Attempt to write outside buffer bounds");n||(n="utf8");for(var o=!1;;)switch(n){case"hex":return A(this,t,r,e);case"utf8":case"utf-8":return _(this,t,r,e);case"ascii":return R(this,t,r,e);case"latin1":case"binary":return T(this,t,r,e);case"base64":return P(this,t,r,e);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return B(this,t,r,e);default:if(o)throw new TypeError("Unknown encoding: "+n);n=(""+n).toLowerCase(),o=!0}},t.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var tt=4096;t.prototype.slice=function(r,e){var n=this.length;r=~~r,e=void 0===e?n:~~e,r<0?(r+=n,r<0&&(r=0)):r>n&&(r=n),e<0?(e+=n,e<0&&(e=0)):e>n&&(e=n),e0&&(i*=256);)n+=this[t+--r]*i;return n},t.prototype.readUInt8=function(t,r){return r||L(t,1,this.length),this[t]},t.prototype.readUInt16LE=function(t,r){return r||L(t,2,this.length),this[t]|this[t+1]<<8},t.prototype.readUInt16BE=function(t,r){return r||L(t,2,this.length),this[t]<<8|this[t+1]},t.prototype.readUInt32LE=function(t,r){return r||L(t,4,this.length),(this[t]|this[t+1]<<8|this[t+2]<<16)+16777216*this[t+3]},t.prototype.readUInt32BE=function(t,r){return r||L(t,4,this.length),16777216*this[t]+(this[t+1]<<16|this[t+2]<<8|this[t+3])},t.prototype.readIntLE=function(t,r,e){t=0|t,r=0|r,e||L(t,r,this.length);for(var n=this[t],i=1,o=0;++o=i&&(n-=Math.pow(2,8*r)),n},t.prototype.readIntBE=function(t,r,e){t=0|t,r=0|r,e||L(t,r,this.length);for(var n=r,i=1,o=this[t+--n];n>0&&(i*=256);)o+=this[t+--n]*i;return i*=128,o>=i&&(o-=Math.pow(2,8*r)),o},t.prototype.readInt8=function(t,r){return r||L(t,1,this.length),128&this[t]?(255-this[t]+1)*-1:this[t]},t.prototype.readInt16LE=function(t,r){r||L(t,2,this.length);var e=this[t]|this[t+1]<<8;return 32768&e?4294901760|e:e},t.prototype.readInt16BE=function(t,r){r||L(t,2,this.length);var e=this[t+1]|this[t]<<8;return 32768&e?4294901760|e:e},t.prototype.readInt32LE=function(t,r){return r||L(t,4,this.length),this[t]|this[t+1]<<8|this[t+2]<<16|this[t+3]<<24},t.prototype.readInt32BE=function(t,r){return r||L(t,4,this.length),this[t]<<24|this[t+1]<<16|this[t+2]<<8|this[t+3]},t.prototype.readFloatLE=function(t,r){return r||L(t,4,this.length),W.read(this,t,!0,23,4)},t.prototype.readFloatBE=function(t,r){return r||L(t,4,this.length),W.read(this,t,!1,23,4)},t.prototype.readDoubleLE=function(t,r){return r||L(t,8,this.length),W.read(this,t,!0,52,8)},t.prototype.readDoubleBE=function(t,r){return r||L(t,8,this.length),W.read(this,t,!1,52,8)},t.prototype.writeUIntLE=function(t,r,e,n){if(t=+t,r=0|r,e=0|e,!n){var i=Math.pow(2,8*e)-1;M(this,t,r,e,i,0)}var o=1,u=0;for(this[r]=255&t;++u=0&&(u*=256);)this[r+o]=t/u&255;return r+e},t.prototype.writeUInt8=function(r,e,n){return r=+r,e=0|e,n||M(this,r,e,1,255,0),t.TYPED_ARRAY_SUPPORT||(r=Math.floor(r)),this[e]=255&r,e+1},t.prototype.writeUInt16LE=function(r,e,n){return r=+r,e=0|e,n||M(this,r,e,2,65535,0),t.TYPED_ARRAY_SUPPORT?(this[e]=255&r,this[e+1]=r>>>8):D(this,r,e,!0),e+2},t.prototype.writeUInt16BE=function(r,e,n){return r=+r,e=0|e,n||M(this,r,e,2,65535,0),t.TYPED_ARRAY_SUPPORT?(this[e]=r>>>8,this[e+1]=255&r):D(this,r,e,!1),e+2},t.prototype.writeUInt32LE=function(r,e,n){return r=+r,e=0|e,n||M(this,r,e,4,4294967295,0),t.TYPED_ARRAY_SUPPORT?(this[e+3]=r>>>24,this[e+2]=r>>>16,this[e+1]=r>>>8,this[e]=255&r):j(this,r,e,!0),e+4},t.prototype.writeUInt32BE=function(r,e,n){return r=+r,e=0|e,n||M(this,r,e,4,4294967295,0),t.TYPED_ARRAY_SUPPORT?(this[e]=r>>>24,this[e+1]=r>>>16,this[e+2]=r>>>8,this[e+3]=255&r):j(this,r,e,!1),e+4},t.prototype.writeIntLE=function(t,r,e,n){if(t=+t,r=0|r,!n){var i=Math.pow(2,8*e-1);M(this,t,r,e,i-1,-i)}var o=0,u=1,f=0;for(this[r]=255&t;++o>0)-f&255;return r+e},t.prototype.writeIntBE=function(t,r,e,n){if(t=+t,r=0|r,!n){var i=Math.pow(2,8*e-1);M(this,t,r,e,i-1,-i)}var o=e-1,u=1,f=0;for(this[r+o]=255&t;--o>=0&&(u*=256);)t<0&&0===f&&0!==this[r+o+1]&&(f=1),this[r+o]=(t/u>>0)-f&255;return r+e},t.prototype.writeInt8=function(r,e,n){return r=+r,e=0|e,n||M(this,r,e,1,127,-128),t.TYPED_ARRAY_SUPPORT||(r=Math.floor(r)),r<0&&(r=255+r+1),this[e]=255&r,e+1},t.prototype.writeInt16LE=function(r,e,n){return r=+r,e=0|e,n||M(this,r,e,2,32767,-32768),t.TYPED_ARRAY_SUPPORT?(this[e]=255&r,this[e+1]=r>>>8):D(this,r,e,!0),e+2},t.prototype.writeInt16BE=function(r,e,n){return r=+r,e=0|e,n||M(this,r,e,2,32767,-32768),t.TYPED_ARRAY_SUPPORT?(this[e]=r>>>8,this[e+1]=255&r):D(this,r,e,!1),e+2},t.prototype.writeInt32LE=function(r,e,n){return r=+r,e=0|e,n||M(this,r,e,4,2147483647,-2147483648),t.TYPED_ARRAY_SUPPORT?(this[e]=255&r,this[e+1]=r>>>8,this[e+2]=r>>>16,this[e+3]=r>>>24):j(this,r,e,!0),e+4},t.prototype.writeInt32BE=function(r,e,n){return r=+r,e=0|e,n||M(this,r,e,4,2147483647,-2147483648),r<0&&(r=4294967295+r+1),t.TYPED_ARRAY_SUPPORT?(this[e]=r>>>24,this[e+1]=r>>>16,this[e+2]=r>>>8,this[e+3]=255&r):j(this,r,e,!1),e+4},t.prototype.writeFloatLE=function(t,r,e){return N(this,t,r,!0,e)},t.prototype.writeFloatBE=function(t,r,e){return N(this,t,r,!1,e)},t.prototype.writeDoubleLE=function(t,r,e){return V(this,t,r,!0,e)},t.prototype.writeDoubleBE=function(t,r,e){return V(this,t,r,!1,e)},t.prototype.copy=function(r,e,n,i){if(n||(n=0),i||0===i||(i=this.length),e>=r.length&&(e=r.length),e||(e=0),i>0&&i=this.length)throw new RangeError("sourceStart out of bounds");if(i<0)throw new RangeError("sourceEnd out of bounds");i>this.length&&(i=this.length),r.length-e=0;--o)r[o+e]=this[o+n];else if(u<1e3||!t.TYPED_ARRAY_SUPPORT)for(o=0;o>>=0,n=void 0===n?this.length:n>>>0,r||(r=0);var u;if("number"==typeof r)for(u=e;u0)throw new Error("Invalid string. Length must be a multiple of 4");o="="===t[f-2]?2:"="===t[f-1]?1:0,u=new a(3*f/4-o),n=o>0?f-4:f;var h=0;for(r=0,e=0;r>16&255,u[h++]=i>>8&255,u[h++]=255&i;return 2===o?(i=s[t.charCodeAt(r)]<<2|s[t.charCodeAt(r+1)]>>4,u[h++]=255&i):1===o&&(i=s[t.charCodeAt(r)]<<10|s[t.charCodeAt(r+1)]<<4|s[t.charCodeAt(r+2)]>>2,u[h++]=i>>8&255,u[h++]=255&i),u}function i(t){return f[t>>18&63]+f[t>>12&63]+f[t>>6&63]+f[63&t]}function o(t,r,e){for(var n,o=[],u=r;uh?h:a+s));return 1===n?(r=t[e-1],i+=f[r>>2],i+=f[r<<4&63],i+="=="):2===n&&(r=(t[e-2]<<8)+t[e-1],i+=f[r>>10],i+=f[r>>4&63],i+=f[r<<2&63],i+="="),u.push(i),u.join("")}r.toByteArray=n,r.fromByteArray=u;var f=[],s=[],a="undefined"!=typeof Uint8Array?Uint8Array:Array;e()},function(t,r){r.read=function(t,r,e,n,i){var o,u,f=8*i-n-1,s=(1<>1,h=-7,c=e?i-1:0,l=e?-1:1,p=t[r+c];for(c+=l,o=p&(1<<-h)-1,p>>=-h,h+=f;h>0;o=256*o+t[r+c],c+=l,h-=8);for(u=o&(1<<-h)-1,o>>=-h,h+=n;h>0;u=256*u+t[r+c],c+=l,h-=8);if(0===o)o=1-a;else{if(o===s)return u?NaN:(p?-1:1)*(1/0);u+=Math.pow(2,n),o-=a}return(p?-1:1)*u*Math.pow(2,o-n)},r.write=function(t,r,e,n,i,o){var u,f,s,a=8*o-i-1,h=(1<>1,l=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,p=n?0:o-1,g=n?1:-1,y=r<0||0===r&&1/r<0?1:0;for(r=Math.abs(r),isNaN(r)||r===1/0?(f=isNaN(r)?1:0,u=h):(u=Math.floor(Math.log(r)/Math.LN2),r*(s=Math.pow(2,-u))<1&&(u--,s*=2),r+=u+c>=1?l/s:l*Math.pow(2,1-c),r*s>=2&&(u++,s/=2),u+c>=h?(f=0,u=h):u+c>=1?(f=(r*s-1)*Math.pow(2,i),u+=c):(f=r*Math.pow(2,c-1)*Math.pow(2,i),u=0));i>=8;t[e+p]=255&f,p+=g,f/=256,i-=8);for(u=u<0;t[e+p]=255&u,p+=g,u/=256,a-=8);t[e+p-g]|=128*y}},function(t,r){var e={}.toString;t.exports=Array.isArray||function(t){return"[object Array]"==e.call(t)}}])}); \ No newline at end of file diff --git a/dist/dom.js b/dist/dom.js new file mode 100644 index 0000000..d882698 --- /dev/null +++ b/dist/dom.js @@ -0,0 +1,42 @@ +!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("react"),require("react-dom")):"function"==typeof define&&define.amd?define("CardKitDOM",["react","react-dom"],t):"object"==typeof exports?exports.CardKitDOM=t(require("react"),require("react-dom")):e.CardKitDOM=t(e.React,e.ReactDOM)}(this,function(e,t){return function(e){function t(r){if(n[r])return n[r].exports;var o=n[r]={exports:{},id:r,loaded:!1};return e[r].call(o.exports,o,o.exports,t),o.loaded=!0,o.exports}var n={};return t.m=e,t.c=n,t.p="",t(0)}([function(e,t,n){"use strict";function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function o(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function a(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}var i=function(){function e(e,t){for(var n=0;n=3&&(r.depth=arguments[2]),arguments.length>=4&&(r.colors=arguments[3]),b(n)?r.showHidden=n:n&&t._extend(r,n),x(r.showHidden)&&(r.showHidden=!1),x(r.depth)&&(r.depth=2),x(r.colors)&&(r.colors=!1),x(r.customInspect)&&(r.customInspect=!0),r.colors&&(r.stylize=a),l(r,e,r.depth)}function a(e,t){var n=o.styles[t];return n?"["+o.colors[n][0]+"m"+e+"["+o.colors[n][1]+"m":e}function i(e,t){return e}function u(e){var t={};return e.forEach(function(e,n){t[e]=!0}),t}function l(e,n,r){if(e.customInspect&&n&&_(n.inspect)&&n.inspect!==t.inspect&&(!n.constructor||n.constructor.prototype!==n)){var o=n.inspect(r,e);return m(o)||(o=l(e,o,r)),o}var a=s(e,n);if(a)return a;var i=Object.keys(n),b=u(i);if(e.showHidden&&(i=Object.getOwnPropertyNames(n)),j(n)&&(i.indexOf("message")>=0||i.indexOf("description")>=0))return f(n);if(0===i.length){if(_(n)){var y=n.name?": "+n.name:"";return e.stylize("[Function"+y+"]","special")}if(O(n))return e.stylize(RegExp.prototype.toString.call(n),"regexp");if(C(n))return e.stylize(Date.prototype.toString.call(n),"date");if(j(n))return f(n)}var g="",v=!1,w=["{","}"];if(d(n)&&(v=!0,w=["[","]"]),_(n)){var x=n.name?": "+n.name:"";g=" [Function"+x+"]"}if(O(n)&&(g=" "+RegExp.prototype.toString.call(n)),C(n)&&(g=" "+Date.prototype.toUTCString.call(n)),j(n)&&(g=" "+f(n)),0===i.length&&(!v||0==n.length))return w[0]+g+w[1];if(r<0)return O(n)?e.stylize(RegExp.prototype.toString.call(n),"regexp"):e.stylize("[Object]","special");e.seen.push(n);var E;return E=v?c(e,n,r,b,i):i.map(function(t){return p(e,n,r,b,t,v)}),e.seen.pop(),h(E,g,w)}function s(e,t){if(x(t))return e.stylize("undefined","undefined");if(m(t)){var n="'"+JSON.stringify(t).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return e.stylize(n,"string")}return v(t)?e.stylize(""+t,"number"):b(t)?e.stylize(""+t,"boolean"):y(t)?e.stylize("null","null"):void 0}function f(e){return"["+Error.prototype.toString.call(e)+"]"}function c(e,t,n,r,o){for(var a=[],i=0,u=t.length;i-1&&(u=a?u.split("\n").map(function(e){return" "+e}).join("\n").substr(2):"\n"+u.split("\n").map(function(e){return" "+e}).join("\n"))):u=e.stylize("[Circular]","special")),x(i)){if(a&&o.match(/^\d+$/))return u;i=JSON.stringify(""+o),i.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(i=i.substr(1,i.length-2),i=e.stylize(i,"name")):(i=i.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),i=e.stylize(i,"string"))}return i+": "+u}function h(e,t,n){var r=0,o=e.reduce(function(e,t){return r++,t.indexOf("\n")>=0&&r++,e+t.replace(/\u001b\[\d\d?m/g,"").length+1},0);return o>60?n[0]+(""===t?"":t+"\n ")+" "+e.join(",\n ")+" "+n[1]:n[0]+t+" "+e.join(", ")+" "+n[1]}function d(e){return Array.isArray(e)}function b(e){return"boolean"==typeof e}function y(e){return null===e}function g(e){return null==e}function v(e){return"number"==typeof e}function m(e){return"string"==typeof e}function w(e){return"symbol"==typeof e}function x(e){return void 0===e}function O(e){return E(e)&&"[object RegExp]"===k(e)}function E(e){return"object"==typeof e&&null!==e}function C(e){return E(e)&&"[object Date]"===k(e)}function j(e){return E(e)&&("[object Error]"===k(e)||e instanceof Error)}function _(e){return"function"==typeof e}function P(e){return null===e||"boolean"==typeof e||"number"==typeof e||"string"==typeof e||"symbol"==typeof e||"undefined"==typeof e}function k(e){return Object.prototype.toString.call(e)}function T(e){return e<10?"0"+e.toString(10):e.toString(10)}function A(){var e=new Date,t=[T(e.getHours()),T(e.getMinutes()),T(e.getSeconds())].join(":");return[e.getDate(),L[e.getMonth()],t].join(" ")}function S(e,t){return Object.prototype.hasOwnProperty.call(e,t)}var R=/%[sdj%]/g;t.format=function(e){if(!m(e)){for(var t=[],n=0;n=a)return e;switch(e){case"%s":return String(r[n++]);case"%d":return Number(r[n++]);case"%j":try{return JSON.stringify(r[n++])}catch(t){return"[Circular]"}default:return e}}),u=r[n];n1)for(var n=1;n + * @license MIT + * + * The MIT License (MIT) + * + * Copyright (c) 2013-2015 Viacheslav Lotsmanov + * + * Permission is hereby granted, free of charge, to any person obtaining a copy of + * this software and associated documentation files (the "Software"), to deal in + * the Software without restriction, including without limitation the rights to + * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of + * the Software, and to permit persons to whom the Software is furnished to do so, + * subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS + * FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR + * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER + * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + */ +"use strict";function n(e){return e instanceof t||e instanceof Date||e instanceof RegExp}function r(e){if(e instanceof t){var n=new t(e.length);return e.copy(n),n}if(e instanceof Date)return new Date(e.getTime());if(e instanceof RegExp)return new RegExp(e);throw new Error("Unexpected situation")}function o(e){var t=[];return e.forEach(function(e,i){"object"==typeof e&&null!==e?Array.isArray(e)?t[i]=o(e):n(e)?t[i]=r(e):t[i]=a({},e):t[i]=e}),t}var a=e.exports=function(){if(arguments.length<1||"object"!=typeof arguments[0])return!1;if(arguments.length<2)return arguments[0];var e,t,i=arguments[0],u=Array.prototype.slice.call(arguments,1);return u.forEach(function(u){"object"!=typeof u||Array.isArray(u)||Object.keys(u).forEach(function(l){return t=i[l],e=u[l],e===i?void 0:"object"!=typeof e||null===e?void(i[l]=e):Array.isArray(e)?void(i[l]=o(e)):n(e)?void(i[l]=r(e)):"object"!=typeof t||null===t||Array.isArray(t)?void(i[l]=a({},e)):void(i[l]=a(t,e))})}),i}}).call(t,n(25).Buffer)},function(e,t,n){(function(e,r){/*! + * The buffer module from node.js, for the browser. + * + * @author Feross Aboukhadijeh + * @license MIT + */ +"use strict";function o(){try{var e=new Uint8Array(1);return e.__proto__={__proto__:Uint8Array.prototype,foo:function(){return 42}},42===e.foo()&&"function"==typeof e.subarray&&0===e.subarray(1,1).byteLength}catch(t){return!1}}function a(){return e.TYPED_ARRAY_SUPPORT?2147483647:1073741823}function i(t,n){if(a()=a())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+a().toString(16)+" bytes");return 0|e}function y(t){return+t!=t&&(t=0),e.alloc(+t)}function g(t,n){if(e.isBuffer(t))return t.length;if("undefined"!=typeof ArrayBuffer&&"function"==typeof ArrayBuffer.isView&&(ArrayBuffer.isView(t)||t instanceof ArrayBuffer))return t.byteLength;"string"!=typeof t&&(t=""+t);var r=t.length;if(0===r)return 0;for(var o=!1;;)switch(n){case"ascii":case"latin1":case"binary":return r;case"utf8":case"utf-8":case void 0:return q(t).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*r;case"hex":return r>>>1;case"base64":return W(t).length;default:if(o)return q(t).length;n=(""+n).toLowerCase(),o=!0}}function v(e,t,n){var r=!1;if((void 0===t||t<0)&&(t=0),t>this.length)return"";if((void 0===n||n>this.length)&&(n=this.length),n<=0)return"";if(n>>>=0,t>>>=0,n<=t)return"";for(e||(e="utf8");;)switch(e){case"hex":return B(this,t,n);case"utf8":case"utf-8":return T(this,t,n);case"ascii":return S(this,t,n);case"latin1":case"binary":return R(this,t,n);case"base64":return k(this,t,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return M(this,t,n);default:if(r)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),r=!0}}function m(e,t,n){var r=e[t];e[t]=e[n],e[n]=r}function w(t,n,r,o,a){if(0===t.length)return-1;if("string"==typeof r?(o=r,r=0):r>2147483647?r=2147483647:r<-2147483648&&(r=-2147483648),r=+r,isNaN(r)&&(r=a?0:t.length-1),r<0&&(r=t.length+r),r>=t.length){if(a)return-1;r=t.length-1}else if(r<0){if(!a)return-1;r=0}if("string"==typeof n&&(n=e.from(n,o)),e.isBuffer(n))return 0===n.length?-1:x(t,n,r,o,a);if("number"==typeof n)return n=255&n,e.TYPED_ARRAY_SUPPORT&&"function"==typeof Uint8Array.prototype.indexOf?a?Uint8Array.prototype.indexOf.call(t,n,r):Uint8Array.prototype.lastIndexOf.call(t,n,r):x(t,[n],r,o,a);throw new TypeError("val must be string, number or Buffer")}function x(e,t,n,r,o){function a(e,t){return 1===i?e[t]:e.readUInt16BE(t*i)}var i=1,u=e.length,l=t.length;if(void 0!==r&&(r=String(r).toLowerCase(),"ucs2"===r||"ucs-2"===r||"utf16le"===r||"utf-16le"===r)){if(e.length<2||t.length<2)return-1;i=2,u/=2,l/=2,n/=2}var s;if(o){var f=-1;for(s=n;su&&(n=u-l),s=n;s>=0;s--){for(var c=!0,p=0;po&&(r=o)):r=o;var a=t.length;if(a%2!==0)throw new TypeError("Invalid hex string");r>a/2&&(r=a/2);for(var i=0;i239?4:a>223?3:a>191?2:1;if(o+u<=n){var l,s,f,c;switch(u){case 1:a<128&&(i=a);break;case 2:l=e[o+1],128===(192&l)&&(c=(31&a)<<6|63&l,c>127&&(i=c));break;case 3:l=e[o+1],s=e[o+2],128===(192&l)&&128===(192&s)&&(c=(15&a)<<12|(63&l)<<6|63&s,c>2047&&(c<55296||c>57343)&&(i=c));break;case 4:l=e[o+1],s=e[o+2],f=e[o+3],128===(192&l)&&128===(192&s)&&128===(192&f)&&(c=(15&a)<<18|(63&l)<<12|(63&s)<<6|63&f,c>65535&&c<1114112&&(i=c))}}null===i?(i=65533,u=1):i>65535&&(i-=65536,r.push(i>>>10&1023|55296),i=56320|1023&i),r.push(i),o+=u}return A(r)}function A(e){var t=e.length;if(t<=ee)return String.fromCharCode.apply(String,e);for(var n="",r=0;rr)&&(n=r);for(var o="",a=t;an)throw new RangeError("Trying to access beyond buffer length")}function I(t,n,r,o,a,i){if(!e.isBuffer(t))throw new TypeError('"buffer" argument must be a Buffer instance');if(n>a||nt.length)throw new RangeError("Index out of range")}function F(e,t,n,r){t<0&&(t=65535+t+1);for(var o=0,a=Math.min(e.length-n,2);o>>8*(r?o:1-o)}function U(e,t,n,r){t<0&&(t=4294967295+t+1);for(var o=0,a=Math.min(e.length-n,4);o>>8*(r?o:3-o)&255}function D(e,t,n,r,o,a){if(n+r>e.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("Index out of range")}function V(e,t,n,r,o){return o||D(e,t,n,4,3.4028234663852886e38,-3.4028234663852886e38),Q.write(e,t,n,r,23,4),n+4}function z(e,t,n,r,o){return o||D(e,t,n,8,1.7976931348623157e308,-1.7976931348623157e308),Q.write(e,t,n,r,52,8),n+8}function N(e){if(e=Y(e).replace(te,""),e.length<2)return"";for(;e.length%4!==0;)e+="=";return e}function Y(e){return e.trim?e.trim():e.replace(/^\s+|\s+$/g,"")}function H(e){return e<16?"0"+e.toString(16):e.toString(16)}function q(e,t){t=t||1/0;for(var n,r=e.length,o=null,a=[],i=0;i55295&&n<57344){if(!o){if(n>56319){(t-=3)>-1&&a.push(239,191,189);continue}if(i+1===r){(t-=3)>-1&&a.push(239,191,189);continue}o=n;continue}if(n<56320){(t-=3)>-1&&a.push(239,191,189),o=n;continue}n=(o-55296<<10|n-56320)+65536}else o&&(t-=3)>-1&&a.push(239,191,189);if(o=null,n<128){if((t-=1)<0)break;a.push(n)}else if(n<2048){if((t-=2)<0)break;a.push(n>>6|192,63&n|128)}else if(n<65536){if((t-=3)<0)break;a.push(n>>12|224,n>>6&63|128,63&n|128)}else{if(!(n<1114112))throw new Error("Invalid code point");if((t-=4)<0)break;a.push(n>>18|240,n>>12&63|128,n>>6&63|128,63&n|128)}}return a}function X(e){for(var t=[],n=0;n>8,o=n%256,a.push(o),a.push(r);return a}function W(e){return Z.toByteArray(N(e))}function K(e,t,n,r){for(var o=0;o=t.length||o>=e.length);++o)t[o+n]=e[o];return o}function J(e){return e!==e}var Z=n(26),Q=n(27),$=n(28);t.Buffer=e,t.SlowBuffer=y,t.INSPECT_MAX_BYTES=50,e.TYPED_ARRAY_SUPPORT=void 0!==r.TYPED_ARRAY_SUPPORT?r.TYPED_ARRAY_SUPPORT:o(),t.kMaxLength=a(),e.poolSize=8192,e._augment=function(t){return t.__proto__=e.prototype,t},e.from=function(e,t,n){return u(null,e,t,n)},e.TYPED_ARRAY_SUPPORT&&(e.prototype.__proto__=Uint8Array.prototype,e.__proto__=Uint8Array,"undefined"!=typeof Symbol&&Symbol.species&&e[Symbol.species]===e&&Object.defineProperty(e,Symbol.species,{value:null,configurable:!0})),e.alloc=function(e,t,n){return s(null,e,t,n)},e.allocUnsafe=function(e){return f(null,e)},e.allocUnsafeSlow=function(e){return f(null,e)},e.isBuffer=function(e){return!(null==e||!e._isBuffer)},e.compare=function(t,n){if(!e.isBuffer(t)||!e.isBuffer(n))throw new TypeError("Arguments must be Buffers");if(t===n)return 0;for(var r=t.length,o=n.length,a=0,i=Math.min(r,o);a0&&(e=this.toString("hex",0,n).match(/.{2}/g).join(" "),this.length>n&&(e+=" ... ")),""},e.prototype.compare=function(t,n,r,o,a){if(!e.isBuffer(t))throw new TypeError("Argument must be a Buffer");if(void 0===n&&(n=0),void 0===r&&(r=t?t.length:0),void 0===o&&(o=0),void 0===a&&(a=this.length),n<0||r>t.length||o<0||a>this.length)throw new RangeError("out of range index");if(o>=a&&n>=r)return 0;if(o>=a)return-1;if(n>=r)return 1;if(n>>>=0,r>>>=0,o>>>=0,a>>>=0,this===t)return 0;for(var i=a-o,u=r-n,l=Math.min(i,u),s=this.slice(o,a),f=t.slice(n,r),c=0;co)&&(n=o),e.length>0&&(n<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");r||(r="utf8");for(var a=!1;;)switch(r){case"hex":return O(this,e,t,n);case"utf8":case"utf-8":return E(this,e,t,n);case"ascii":return C(this,e,t,n);case"latin1":case"binary":return j(this,e,t,n);case"base64":return _(this,e,t,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return P(this,e,t,n);default:if(a)throw new TypeError("Unknown encoding: "+r);r=(""+r).toLowerCase(),a=!0}},e.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var ee=4096;e.prototype.slice=function(t,n){var r=this.length;t=~~t,n=void 0===n?r:~~n,t<0?(t+=r,t<0&&(t=0)):t>r&&(t=r),n<0?(n+=r,n<0&&(n=0)):n>r&&(n=r),n0&&(o*=256);)r+=this[e+--t]*o;return r},e.prototype.readUInt8=function(e,t){return t||L(e,1,this.length),this[e]},e.prototype.readUInt16LE=function(e,t){return t||L(e,2,this.length),this[e]|this[e+1]<<8},e.prototype.readUInt16BE=function(e,t){return t||L(e,2,this.length),this[e]<<8|this[e+1]},e.prototype.readUInt32LE=function(e,t){return t||L(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+16777216*this[e+3]},e.prototype.readUInt32BE=function(e,t){return t||L(e,4,this.length),16777216*this[e]+(this[e+1]<<16|this[e+2]<<8|this[e+3])},e.prototype.readIntLE=function(e,t,n){e=0|e,t=0|t,n||L(e,t,this.length);for(var r=this[e],o=1,a=0;++a=o&&(r-=Math.pow(2,8*t)),r},e.prototype.readIntBE=function(e,t,n){e=0|e,t=0|t,n||L(e,t,this.length);for(var r=t,o=1,a=this[e+--r];r>0&&(o*=256);)a+=this[e+--r]*o;return o*=128,a>=o&&(a-=Math.pow(2,8*t)),a},e.prototype.readInt8=function(e,t){return t||L(e,1,this.length),128&this[e]?(255-this[e]+1)*-1:this[e]},e.prototype.readInt16LE=function(e,t){t||L(e,2,this.length);var n=this[e]|this[e+1]<<8;return 32768&n?4294901760|n:n},e.prototype.readInt16BE=function(e,t){t||L(e,2,this.length);var n=this[e+1]|this[e]<<8;return 32768&n?4294901760|n:n},e.prototype.readInt32LE=function(e,t){return t||L(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},e.prototype.readInt32BE=function(e,t){return t||L(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},e.prototype.readFloatLE=function(e,t){return t||L(e,4,this.length),Q.read(this,e,!0,23,4)},e.prototype.readFloatBE=function(e,t){return t||L(e,4,this.length),Q.read(this,e,!1,23,4)},e.prototype.readDoubleLE=function(e,t){return t||L(e,8,this.length),Q.read(this,e,!0,52,8)},e.prototype.readDoubleBE=function(e,t){return t||L(e,8,this.length),Q.read(this,e,!1,52,8)},e.prototype.writeUIntLE=function(e,t,n,r){if(e=+e,t=0|t,n=0|n,!r){var o=Math.pow(2,8*n)-1;I(this,e,t,n,o,0)}var a=1,i=0;for(this[t]=255&e;++i=0&&(i*=256);)this[t+a]=e/i&255;return t+n},e.prototype.writeUInt8=function(t,n,r){return t=+t,n=0|n,r||I(this,t,n,1,255,0),e.TYPED_ARRAY_SUPPORT||(t=Math.floor(t)),this[n]=255&t,n+1},e.prototype.writeUInt16LE=function(t,n,r){return t=+t,n=0|n,r||I(this,t,n,2,65535,0),e.TYPED_ARRAY_SUPPORT?(this[n]=255&t,this[n+1]=t>>>8):F(this,t,n,!0),n+2},e.prototype.writeUInt16BE=function(t,n,r){return t=+t,n=0|n,r||I(this,t,n,2,65535,0),e.TYPED_ARRAY_SUPPORT?(this[n]=t>>>8,this[n+1]=255&t):F(this,t,n,!1),n+2},e.prototype.writeUInt32LE=function(t,n,r){return t=+t,n=0|n,r||I(this,t,n,4,4294967295,0),e.TYPED_ARRAY_SUPPORT?(this[n+3]=t>>>24,this[n+2]=t>>>16,this[n+1]=t>>>8,this[n]=255&t):U(this,t,n,!0),n+4},e.prototype.writeUInt32BE=function(t,n,r){return t=+t,n=0|n,r||I(this,t,n,4,4294967295,0),e.TYPED_ARRAY_SUPPORT?(this[n]=t>>>24,this[n+1]=t>>>16,this[n+2]=t>>>8,this[n+3]=255&t):U(this,t,n,!1),n+4},e.prototype.writeIntLE=function(e,t,n,r){if(e=+e,t=0|t,!r){var o=Math.pow(2,8*n-1);I(this,e,t,n,o-1,-o)}var a=0,i=1,u=0;for(this[t]=255&e;++a>0)-u&255;return t+n},e.prototype.writeIntBE=function(e,t,n,r){if(e=+e,t=0|t,!r){var o=Math.pow(2,8*n-1);I(this,e,t,n,o-1,-o)}var a=n-1,i=1,u=0;for(this[t+a]=255&e;--a>=0&&(i*=256);)e<0&&0===u&&0!==this[t+a+1]&&(u=1),this[t+a]=(e/i>>0)-u&255;return t+n},e.prototype.writeInt8=function(t,n,r){return t=+t,n=0|n,r||I(this,t,n,1,127,-128),e.TYPED_ARRAY_SUPPORT||(t=Math.floor(t)),t<0&&(t=255+t+1),this[n]=255&t,n+1},e.prototype.writeInt16LE=function(t,n,r){return t=+t,n=0|n,r||I(this,t,n,2,32767,-32768),e.TYPED_ARRAY_SUPPORT?(this[n]=255&t,this[n+1]=t>>>8):F(this,t,n,!0),n+2},e.prototype.writeInt16BE=function(t,n,r){return t=+t,n=0|n,r||I(this,t,n,2,32767,-32768),e.TYPED_ARRAY_SUPPORT?(this[n]=t>>>8,this[n+1]=255&t):F(this,t,n,!1),n+2},e.prototype.writeInt32LE=function(t,n,r){return t=+t,n=0|n,r||I(this,t,n,4,2147483647,-2147483648),e.TYPED_ARRAY_SUPPORT?(this[n]=255&t,this[n+1]=t>>>8,this[n+2]=t>>>16,this[n+3]=t>>>24):U(this,t,n,!0),n+4},e.prototype.writeInt32BE=function(t,n,r){return t=+t,n=0|n,r||I(this,t,n,4,2147483647,-2147483648),t<0&&(t=4294967295+t+1),e.TYPED_ARRAY_SUPPORT?(this[n]=t>>>24,this[n+1]=t>>>16,this[n+2]=t>>>8,this[n+3]=255&t):U(this,t,n,!1),n+4},e.prototype.writeFloatLE=function(e,t,n){return V(this,e,t,!0,n)},e.prototype.writeFloatBE=function(e,t,n){return V(this,e,t,!1,n)},e.prototype.writeDoubleLE=function(e,t,n){return z(this,e,t,!0,n)},e.prototype.writeDoubleBE=function(e,t,n){return z(this,e,t,!1,n)},e.prototype.copy=function(t,n,r,o){if(r||(r=0),o||0===o||(o=this.length),n>=t.length&&(n=t.length),n||(n=0),o>0&&o=this.length)throw new RangeError("sourceStart out of bounds");if(o<0)throw new RangeError("sourceEnd out of bounds");o>this.length&&(o=this.length),t.length-n=0;--a)t[a+n]=this[a+r];else if(i<1e3||!e.TYPED_ARRAY_SUPPORT)for(a=0;a>>=0,r=void 0===r?this.length:r>>>0,t||(t=0);var i;if("number"==typeof t)for(i=n;i0)throw new Error("Invalid string. Length must be a multiple of 4");a="="===e[u-2]?2:"="===e[u-1]?1:0,i=new s(3*u/4-a),r=a>0?u-4:u;var f=0;for(t=0,n=0;t>16&255,i[f++]=o>>8&255,i[f++]=255&o;return 2===a?(o=l[e.charCodeAt(t)]<<2|l[e.charCodeAt(t+1)]>>4,i[f++]=255&o):1===a&&(o=l[e.charCodeAt(t)]<<10|l[e.charCodeAt(t+1)]<<4|l[e.charCodeAt(t+2)]>>2,i[f++]=o>>8&255,i[f++]=255&o),i}function o(e){return u[e>>18&63]+u[e>>12&63]+u[e>>6&63]+u[63&e]}function a(e,t,n){for(var r,a=[],i=t;if?f:s+l));return 1===r?(t=e[n-1],o+=u[t>>2],o+=u[t<<4&63],o+="=="):2===r&&(t=(e[n-2]<<8)+e[n-1],o+=u[t>>10],o+=u[t>>4&63],o+=u[t<<2&63],o+="="),i.push(o),i.join("")}t.toByteArray=r,t.fromByteArray=i;var u=[],l=[],s="undefined"!=typeof Uint8Array?Uint8Array:Array;n()},function(e,t){t.read=function(e,t,n,r,o){var a,i,u=8*o-r-1,l=(1<>1,f=-7,c=n?o-1:0,p=n?-1:1,h=e[t+c];for(c+=p,a=h&(1<<-f)-1,h>>=-f,f+=u;f>0;a=256*a+e[t+c],c+=p,f-=8);for(i=a&(1<<-f)-1,a>>=-f,f+=r;f>0;i=256*i+e[t+c],c+=p,f-=8);if(0===a)a=1-s;else{if(a===l)return i?NaN:(h?-1:1)*(1/0);i+=Math.pow(2,r),a-=s}return(h?-1:1)*i*Math.pow(2,a-r)},t.write=function(e,t,n,r,o,a){var i,u,l,s=8*a-o-1,f=(1<>1,p=23===o?Math.pow(2,-24)-Math.pow(2,-77):0,h=r?0:a-1,d=r?1:-1,b=t<0||0===t&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(u=isNaN(t)?1:0,i=f):(i=Math.floor(Math.log(t)/Math.LN2),t*(l=Math.pow(2,-i))<1&&(i--,l*=2),t+=i+c>=1?p/l:p*Math.pow(2,1-c),t*l>=2&&(i++,l/=2),i+c>=f?(u=0,i=f):i+c>=1?(u=(t*l-1)*Math.pow(2,o),i+=c):(u=t*Math.pow(2,c-1)*Math.pow(2,o),i=0));o>=8;e[n+h]=255&u,h+=d,u/=256,o-=8);for(i=i<0;e[n+h]=255&i,h+=d,i/=256,s-=8);e[n+h-d]|=128*b}},function(e,t){var n={}.toString;e.exports=Array.isArray||function(e){return"[object Array]"==n.call(e)}},function(e,t,n){"use strict";function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function o(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function a(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}var i=function(){function e(e,t){for(var n=0;n=0&&m.splice(t,1)}function u(e){var t=document.createElement("style");return t.type="text/css",a(e,t),t}function l(e){var t=document.createElement("link");return t.rel="stylesheet",a(e,t),t}function s(e,t){var n,r,o;if(t.singleton){var a=v++;n=g||(g=u(t)),r=f.bind(null,n,a,!1),o=f.bind(null,n,a,!0)}else e.sourceMap&&"function"==typeof URL&&"function"==typeof URL.createObjectURL&&"function"==typeof URL.revokeObjectURL&&"function"==typeof Blob&&"function"==typeof btoa?(n=l(t),r=p.bind(null,n),o=function(){i(n),n.href&&URL.revokeObjectURL(n.href)}):(n=u(t),r=c.bind(null,n),o=function(){i(n)});return r(e),function(t){if(t){if(t.css===e.css&&t.media===e.media&&t.sourceMap===e.sourceMap)return;r(e=t)}else o()}}function f(e,t,n,r){var o=n?"":r.css;if(e.styleSheet)e.styleSheet.cssText=w(t,o);else{var a=document.createTextNode(o),i=e.childNodes;i[t]&&e.removeChild(i[t]),i.length?e.insertBefore(a,i[t]):e.appendChild(a)}}function c(e,t){var n=t.css,r=t.media;if(r&&e.setAttribute("media",r),e.styleSheet)e.styleSheet.cssText=n;else{for(;e.firstChild;)e.removeChild(e.firstChild);e.appendChild(document.createTextNode(n))}}function p(e,t){var n=t.css,r=t.sourceMap;r&&(n+="\n/*# sourceMappingURL=data:application/json;base64,"+btoa(unescape(encodeURIComponent(JSON.stringify(r))))+" */");var o=new Blob([n],{type:"text/css"}),a=e.href;e.href=URL.createObjectURL(o),a&&URL.revokeObjectURL(a)}var h={},d=function(e){var t;return function(){return"undefined"==typeof t&&(t=e.apply(this,arguments)),t}},b=d(function(){return/msie [6-9]\b/.test(window.navigator.userAgent.toLowerCase())}),y=d(function(){return document.head||document.getElementsByTagName("head")[0]}),g=null,v=0,m=[];e.exports=function(e,t){t=t||{},"undefined"==typeof t.singleton&&(t.singleton=b()),"undefined"==typeof t.insertAt&&(t.insertAt="bottom");var n=o(e);return r(n,t),function(e){for(var a=[],i=0;i1?t-1:0),r=1;r-1}var o=n(65);e.exports=r},function(e,t,n){function r(e,t){var n=this.__data__,r=o(n,e);return r<0?(++this.size,n.push([e,t])):n[r][1]=t,this}var o=n(65);e.exports=r},function(e,t,n){function r(){this.__data__=new o,this.size=0}var o=n(62);e.exports=r},function(e,t){function n(e){var t=this.__data__,n=t["delete"](e);return this.size=t.size,n}e.exports=n},function(e,t){function n(e){return this.__data__.get(e)}e.exports=n},function(e,t){function n(e){return this.__data__.has(e)}e.exports=n},function(e,t,n){function r(e,t){var n=this.__data__;if(n instanceof o){var r=n.__data__;if(!a||r.lengthp))return!1;var d=f.get(e);if(d&&f.get(t))return d==t;var b=-1,y=!0,g=s&u?new o:void 0;for(f.set(e,t),f.set(t,e);++b-1&&e%1==0&&e<=r}var r=9007199254740991;e.exports=n},function(e,t){function n(e){return null!=e&&"object"==typeof e}e.exports=n},function(e,t){var n=Array.isArray;e.exports=n},function(e,t){function n(e,t){return t=null==t?r:t,!!t&&("number"==typeof e||o.test(e))&&e>-1&&e%1==0&&e0&&(n=t.apply(this,arguments)),e<=1&&(t=void 0),n}}var o=n(214),a="Expected a function";e.exports=r},function(e,t,n){function r(e){var t=o(e),n=t%1;return t===t?n?t-n:t:0}var o=n(215);e.exports=r},function(e,t,n){function r(e){if(!e)return 0===e?e:0;if(e=o(e),e===a||e===-a){var t=e<0?-1:1;return t*i}return e===e?e:0}var o=n(216),a=1/0,i=1.7976931348623157e308;e.exports=r},function(e,t,n){function r(e){if("number"==typeof e)return e;if(a(e))return i;if(o(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=o(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=e.replace(u,"");var n=s.test(e);return n||f.test(e)?c(e.slice(2),n?2:8):l.test(e)?i:+e}var o=n(79),a=n(154),i=NaN,u=/^\s+|\s+$/g,l=/^[-+]0x[0-9a-f]+$/i,s=/^0b[01]+$/i,f=/^0o[0-7]+$/i,c=parseInt;e.exports=r},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{"default":e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function a(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function i(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0}),t.hover=void 0;var u=Object.assign||function(e){for(var t=1;to?1:Math.round(100*u/o)/100,r.props.a!==l&&r.props.onChange({h:r.props.hsl.h,s:r.props.hsl.s,l:r.props.hsl.l,a:l,source:"rgb"})},r.handleMouseDown=function(e){r.handleChange(e,!0),window.addEventListener("mousemove",r.handleChange),window.addEventListener("mouseup",r.handleMouseUp)},r.handleMouseUp=function(){r.unbindEventListeners()},r.unbindEventListeners=function(){window.removeEventListener("mousemove",r.handleChange),window.removeEventListener("mouseup",r.handleMouseUp)},i=n,a(r,i)}return i(t,e),u(t,[{key:"componentWillUnmount",value:function(){this.unbindEventListeners()}},{key:"render",value:function(){var e=this.props.rgb,t=(0,c["default"])({"default":{alpha:{absolute:"0px 0px 0px 0px",borderRadius:this.props.radius},checkboard:{absolute:"0px 0px 0px 0px",overflow:"hidden"},gradient:{absolute:"0px 0px 0px 0px",background:"linear-gradient(to right, rgba("+e.r+","+e.g+","+e.b+", 0) 0%,\n rgba("+e.r+","+e.g+","+e.b+", 1) 100%)",boxShadow:this.props.shadow,borderRadius:this.props.radius},container:{position:"relative",height:"100%",margin:"0 3px"},pointer:{position:"absolute",left:100*e.a+"%"},slider:{width:"4px",borderRadius:"1px",height:"8px",boxShadow:"0 0 2px rgba(0, 0, 0, .6)",background:"#fff",marginTop:"1px",transform:"translateX(-2px)"}}}),n=this.props.pointer?s["default"].createElement(this.props.pointer,this.props):s["default"].createElement("div",{style:t.slider});return s["default"].createElement("div",{style:t.alpha},s["default"].createElement("div",{style:t.checkboard},s["default"].createElement(b["default"],null)),s["default"].createElement("div",{style:t.gradient}),s["default"].createElement("div",{style:t.container,ref:"container",onMouseDown:this.handleMouseDown,onTouchMove:this.handleChange,onTouchStart:this.handleChange},s["default"].createElement("div",{style:t.pointer,ref:"pointer"},n)))}}]),t}(s["default"].Component);t["default"]=y},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{"default":e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function a(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function i(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}function u(e,t,n){if("undefined"==typeof document)return null;var r=document.createElement("canvas");r.width=r.height=2*n;var o=r.getContext("2d");return o?(o.fillStyle=e,o.fillRect(0,0,r.width,r.height),o.fillStyle=t,o.fillRect(0,0,n,n),o.translate(n,n),o.fillRect(0,0,n,n),r.toDataURL()):null}function l(e,t,n){var r=e+","+t+", "+n,o=u(e,t,n);return y[r]?y[r]:(y[r]=o,o)}Object.defineProperty(t,"__esModule",{value:!0}),t.Checkboard=void 0;var s=function(){function e(e,t){for(var n=0;n=0&&t<=n.props.dragMax&&n.props.onChange(o({},n.props.label,t))}},n.handleMouseDown=function(e){n.props.dragLabel&&(e.preventDefault(),n.handleDrag(e),window.addEventListener("mousemove",n.handleDrag),window.addEventListener("mouseup",n.handleMouseUp))},n.handleMouseUp=function(){n.unbindEventListeners()},n.unbindEventListeners=function(){window.removeEventListener("mousemove",n.handleChange),window.removeEventListener("mouseup",n.handleMouseUp)},n.state={value:String(e.value).toUpperCase(),blurValue:String(e.value).toUpperCase()},n}return u(t,e),l(t,[{key:"componentWillReceiveProps",value:function(e){var t=this.refs.input;e.value!==this.state.value&&(t===document.activeElement?this.setState({blurValue:String(e.value).toUpperCase()}):this.setState({value:String(e.value).toUpperCase()}))}},{key:"componentWillUnmount",value:function(){this.unbindEventListeners()}},{key:"render",value:function(){var e=(0,p["default"])({"default":{wrap:{position:"relative"}},"user-override":{wrap:this.props.style&&this.props.style.wrap?this.props.style.wrap:{},input:this.props.style&&this.props.style.input?this.props.style.input:{},label:this.props.style&&this.props.style.label?this.props.style.label:{}},"dragLabel-true":{label:{cursor:"ew-resize"}}},{"user-override":!0},this.props);return f["default"].createElement("div",{style:e.wrap,ref:"container"},f["default"].createElement("input",{style:e.input,ref:"input",value:this.state.value,onKeyDown:this.handleKeyDown,onChange:this.handleChange,onBlur:this.handleBlur,placeholder:this.props.placeholder}),this.props.label?f["default"].createElement("span",{style:e.label,ref:"label",onMouseDown:this.handleMouseDown},this.props.label):null)}}]),t}(f["default"].Component);t["default"]=b},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{"default":e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function a(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function i(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0}),t.Hue=void 0;var u=function(){function e(e,t){for(var n=0;na)c=0;else{var p=-(100*f/a)+100;c=360*p/100}r.props.hsl.h!==c&&r.props.onChange({h:c,s:r.props.hsl.s,l:r.props.hsl.l,a:r.props.hsl.a,source:"rgb"})}else{var h=void 0;if(s<0)h=0;else if(s>o)h=359;else{var d=100*s/o;h=360*d/100}r.props.hsl.h!==h&&r.props.onChange({h:h,s:r.props.hsl.s,l:r.props.hsl.l,a:r.props.hsl.a,source:"rgb"})}},r.handleMouseDown=function(e){r.handleChange(e,!0),window.addEventListener("mousemove",r.handleChange),window.addEventListener("mouseup",r.handleMouseUp)},r.handleMouseUp=function(){r.unbindEventListeners()},i=n,a(r,i)}return i(t,e),u(t,[{key:"componentWillUnmount",value:function(){this.unbindEventListeners()}},{key:"unbindEventListeners",value:function(){window.removeEventListener("mousemove",this.handleChange),window.removeEventListener("mouseup",this.handleMouseUp)}},{key:"render",value:function(){var e=(0,c["default"])({"default":{hue:{absolute:"0px 0px 0px 0px",background:"linear-gradient(to right, #f00 0%, #ff0 17%, #0f0 33%,\n #0ff 50%, #00f 67%, #f0f 83%, #f00 100%)",borderRadius:this.props.radius,boxShadow:this.props.shadow},container:{margin:"0 2px",position:"relative",height:"100%"},pointer:{position:"absolute",left:100*this.props.hsl.h/360+"%"},slider:{marginTop:"1px",width:"4px",borderRadius:"1px",height:"8px",boxShadow:"0 0 2px rgba(0, 0, 0, .6)",background:"#fff",transform:"translateX(-2px)"}},"direction-vertical":{hue:{background:"linear-gradient(to top, #f00 0%, #ff0 17%, #0f0 33%,\n #0ff 50%, #00f 67%, #f0f 83%, #f00 100%)"},pointer:{left:"0px",top:-(100*this.props.hsl.h/360)+100+"%"}}},this.props);return s["default"].createElement("div",{style:e.hue},s["default"].createElement("div",{style:e.container,ref:"container",onMouseDown:this.handleMouseDown,onTouchMove:this.handleChange,onTouchStart:this.handleChange},s["default"].createElement("div",{style:e.pointer,ref:"pointer"},this.props.pointer?s["default"].createElement(this.props.pointer,this.props):s["default"].createElement("div",{style:e.slider}))))}}]),t}(s["default"].Component);t["default"]=d},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{"default":e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function a(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function i(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0}),t.Saturation=void 0;var u=function(){function e(e,t){for(var n=0;no?s=o:f<0?f=0:f>a&&(f=a);var c=100*s/o,p=-(100*f/a)+100;n.throttle(n.props.onChange,{h:n.props.hsl.h,s:c,v:p,a:n.props.hsl.a,source:"rgb"})},n.handleMouseDown=function(e){n.handleChange(e,!0),window.addEventListener("mousemove",n.handleChange),window.addEventListener("mouseup",n.handleMouseUp)},n.handleMouseUp=function(){n.unbindEventListeners()},n.throttle=(0,h["default"])(function(e,t){e(t)},50),n}return i(t,e),u(t,[{key:"componentWillUnmount",value:function(){this.unbindEventListeners()}},{key:"unbindEventListeners",value:function(){window.removeEventListener("mousemove",this.handleChange),window.removeEventListener("mouseup",this.handleMouseUp)}},{key:"render",value:function(){var e=(0,c["default"])({"default":{color:{absolute:"0px 0px 0px 0px",background:"hsl("+this.props.hsl.h+",100%, 50%)",borderRadius:this.props.radius},white:{absolute:"0px 0px 0px 0px",background:"linear-gradient(to right, #fff, rgba(255,255,255,0))"},black:{absolute:"0px 0px 0px 0px",background:"linear-gradient(to top, #000, rgba(0,0,0,0))",boxShadow:this.props.shadow},pointer:{position:"absolute",top:-(100*this.props.hsv.v)+100+"%",left:100*this.props.hsv.s+"%",cursor:"default"},circle:{width:"4px",height:"4px",boxShadow:"0 0 0 1.5px #fff, inset 0 0 1px 1px rgba(0,0,0,.3),\n 0 0 1px 2px rgba(0,0,0,.4)",borderRadius:"50%",cursor:"hand",transform:"translate(-2px, -2px)"}}});return s["default"].createElement("div",{style:e.color,ref:"container",onMouseDown:this.handleMouseDown,onTouchMove:this.handleChange,onTouchStart:this.handleChange},s["default"].createElement("div",{style:e.white},s["default"].createElement("div",{style:e.black}),s["default"].createElement("div",{style:e.pointer,ref:"pointer"},this.props.pointer?s["default"].createElement(this.props.pointer,this.props):s["default"].createElement("div",{style:e.circle}))))}}]),t}(s["default"].Component);t["default"]=y},function(e,t,n){function r(e,t,n){var r=!0,u=!0;if("function"!=typeof e)throw new TypeError(i);return a(n)&&(r="leading"in n?!!n.leading:r,u="trailing"in n?!!n.trailing:u),o(e,t,{leading:r,maxWait:t,trailing:u})}var o=n(226),a=n(79),i="Expected a function";e.exports=r},function(e,t,n){function r(e,t,n){function r(t){var n=v,r=m;return v=m=void 0,C=t,x=e.apply(r,n)}function f(e){return C=e,O=setTimeout(h,t),j?r(e):x}function c(e){var n=e-E,r=e-C,o=t-n;return _?s(o,w-r):o}function p(e){var n=e-E,r=e-C;return void 0===E||n>=t||n<0||_&&r>=w}function h(){var e=a();return p(e)?d(e):void(O=setTimeout(h,c(e)))}function d(e){return O=void 0,P&&v?r(e):(v=m=void 0,x)}function b(){void 0!==O&&clearTimeout(O),C=0,v=E=m=O=void 0}function y(){return void 0===O?x:d(a())}function g(){var e=a(),n=p(e);if(v=arguments,m=this,E=e,n){if(void 0===O)return f(E);if(_)return O=setTimeout(h,t),r(E)}return void 0===O&&(O=setTimeout(h,t)),x}var v,m,w,x,O,E,C=0,j=!1,_=!1,P=!0;if("function"!=typeof e)throw new TypeError(u);return t=i(t)||0,o(n)&&(j=!!n.leading,_="maxWait"in n,w=_?l(i(n.maxWait)||0,t):w,P="trailing"in n?!!n.trailing:P),g.cancel=b,g.flush=y,g}var o=n(79),a=n(227),i=n(216),u="Expected a function",l=Math.max,s=Math.min;e.exports=r},function(e,t,n){var r=n(82),o=function(){return r.Date.now()};e.exports=o},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{"default":e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function a(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function i(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0}),t.ColorWrap=void 0;var u=Object.assign||function(e){for(var t=1;t.5?l/(2-a-i):l/(a+i),a){case e:r=(t-n)/l+(t1&&(n-=1),n<1/6?e+6*(t-e)*n:n<.5?t:n<2/3?e+(t-e)*(2/3-n)*6:e}var o,a,i;if(e=k(e,360),t=k(t,100),n=k(n,100),0===t)o=a=i=n;else{var u=n<.5?n*(1+t):n+t-n*t,l=2*n-u;o=r(l,u,e+1/3),a=r(l,u,e),i=r(l,u,e-1/3)}return{r:255*o,g:255*a,b:255*i}}function s(e,t,n){e=k(e,255),t=k(t,255),n=k(n,255);var r,o,a=q(e,t,n),i=H(e,t,n),u=a,l=a-i;if(o=0===a?0:l/a,a==i)r=0;else{switch(a){case e:r=(t-n)/l+(t>1)+720)%360;--t;)r.h=(r.h+a)%360,i.push(o(r));return i}function j(e,t){t=t||6;for(var n=o(e).toHsv(),r=n.h,a=n.s,i=n.v,u=[],l=1/t;t--;)u.push(o({h:r,s:a,v:i})),i=(i+l)%1;return u}function _(e){var t={};for(var n in e)e.hasOwnProperty(n)&&(t[e[n]]=n);return t}function P(e){return e=parseFloat(e),(isNaN(e)||e<0||e>1)&&(e=1),e}function k(e,t){S(e)&&(e="100%");var n=R(e);return e=H(t,q(0,parseFloat(e))),n&&(e=parseInt(e*t,10)/100),N.abs(e-t)<1e-6?1:e%t/parseFloat(t)}function T(e){return H(1,q(0,e))}function A(e){return parseInt(e,16)}function S(e){return"string"==typeof e&&e.indexOf(".")!=-1&&1===parseFloat(e)}function R(e){return"string"==typeof e&&e.indexOf("%")!=-1}function B(e){return 1==e.length?"0"+e:""+e}function M(e,t){return t=t||100,e<=1&&(e=e*t+"%"),e}function L(e){return Math.round(255*parseFloat(e)).toString(16)}function I(e){return A(e)/255}function F(e){e=e.replace(D,"").replace(V,"").toLowerCase();var t=!1;if(G[e])e=G[e],t=!0;else if("transparent"==e)return{r:0,g:0,b:0,a:0,format:"name"};var n;return(n=K.rgb.exec(e))?{r:n[1],g:n[2],b:n[3]}:(n=K.rgba.exec(e))?{r:n[1],g:n[2],b:n[3],a:n[4]}:(n=K.hsl.exec(e))?{h:n[1],s:n[2],l:n[3]}:(n=K.hsla.exec(e))?{h:n[1],s:n[2],l:n[3],a:n[4]}:(n=K.hsv.exec(e))?{h:n[1],s:n[2],v:n[3]}:(n=K.hsva.exec(e))?{h:n[1],s:n[2],v:n[3],a:n[4]}:(n=K.hex8.exec(e))?{a:I(n[1]),r:A(n[2]),g:A(n[3]),b:A(n[4]),format:t?"name":"hex8"}:(n=K.hex6.exec(e))?{r:A(n[1]),g:A(n[2]),b:A(n[3]),format:t?"name":"hex"}:!!(n=K.hex3.exec(e))&&{r:A(n[1]+""+n[1]),g:A(n[2]+""+n[2]),b:A(n[3]+""+n[3]),format:t?"name":"hex"}}function U(e){var t,n;return e=e||{level:"AA",size:"small"},t=(e.level||"AA").toUpperCase(),n=(e.size||"small").toLowerCase(),"AA"!==t&&"AAA"!==t&&(t="AA"),"small"!==n&&"large"!==n&&(n="small"),{level:t,size:n}}var D=/^[\s,#]+/,V=/\s+$/,z=0,N=Math,Y=N.round,H=N.min,q=N.max,X=N.random;o.prototype={isDark:function(){return this.getBrightness()<128},isLight:function(){return!this.isDark()},isValid:function(){return this._ok},getOriginalInput:function(){return this._originalInput},getFormat:function(){return this._format},getAlpha:function(){return this._a},getBrightness:function(){var e=this.toRgb();return(299*e.r+587*e.g+114*e.b)/1e3},getLuminance:function(){var e,t,n,r,o,a,i=this.toRgb();return e=i.r/255,t=i.g/255,n=i.b/255,r=e<=.03928?e/12.92:Math.pow((e+.055)/1.055,2.4),o=t<=.03928?t/12.92:Math.pow((t+.055)/1.055,2.4),a=n<=.03928?n/12.92:Math.pow((n+.055)/1.055,2.4),.2126*r+.7152*o+.0722*a},setAlpha:function(e){return this._a=P(e),this._roundA=Y(100*this._a)/100,this},toHsv:function(){var e=s(this._r,this._g,this._b);return{h:360*e.h,s:e.s,v:e.v,a:this._a}},toHsvString:function(){var e=s(this._r,this._g,this._b),t=Y(360*e.h),n=Y(100*e.s),r=Y(100*e.v);return 1==this._a?"hsv("+t+", "+n+"%, "+r+"%)":"hsva("+t+", "+n+"%, "+r+"%, "+this._roundA+")"},toHsl:function(){var e=u(this._r,this._g,this._b);return{h:360*e.h,s:e.s,l:e.l,a:this._a}},toHslString:function(){var e=u(this._r,this._g,this._b),t=Y(360*e.h),n=Y(100*e.s),r=Y(100*e.l);return 1==this._a?"hsl("+t+", "+n+"%, "+r+"%)":"hsla("+t+", "+n+"%, "+r+"%, "+this._roundA+")"},toHex:function(e){return c(this._r,this._g,this._b,e)},toHexString:function(e){return"#"+this.toHex(e)},toHex8:function(){return p(this._r,this._g,this._b,this._a)},toHex8String:function(){return"#"+this.toHex8()},toRgb:function(){return{r:Y(this._r),g:Y(this._g),b:Y(this._b),a:this._a}},toRgbString:function(){return 1==this._a?"rgb("+Y(this._r)+", "+Y(this._g)+", "+Y(this._b)+")":"rgba("+Y(this._r)+", "+Y(this._g)+", "+Y(this._b)+", "+this._roundA+")"},toPercentageRgb:function(){return{r:Y(100*k(this._r,255))+"%",g:Y(100*k(this._g,255))+"%",b:Y(100*k(this._b,255))+"%",a:this._a}},toPercentageRgbString:function(){return 1==this._a?"rgb("+Y(100*k(this._r,255))+"%, "+Y(100*k(this._g,255))+"%, "+Y(100*k(this._b,255))+"%)":"rgba("+Y(100*k(this._r,255))+"%, "+Y(100*k(this._g,255))+"%, "+Y(100*k(this._b,255))+"%, "+this._roundA+")"},toName:function(){return 0===this._a?"transparent":!(this._a<1)&&(W[c(this._r,this._g,this._b,!0)]||!1)},toFilter:function(e){var t="#"+p(this._r,this._g,this._b,this._a),n=t,r=this._gradientType?"GradientType = 1, ":"";if(e){var a=o(e);n=a.toHex8String()}return"progid:DXImageTransform.Microsoft.gradient("+r+"startColorstr="+t+",endColorstr="+n+")"},toString:function(e){var t=!!e;e=e||this._format;var n=!1,r=this._a<1&&this._a>=0,o=!t&&r&&("hex"===e||"hex6"===e||"hex3"===e||"name"===e);return o?"name"===e&&0===this._a?this.toName():this.toRgbString():("rgb"===e&&(n=this.toRgbString()),"prgb"===e&&(n=this.toPercentageRgbString()),"hex"!==e&&"hex6"!==e||(n=this.toHexString()),"hex3"===e&&(n=this.toHexString(!0)),"hex8"===e&&(n=this.toHex8String()),"name"===e&&(n=this.toName()),"hsl"===e&&(n=this.toHslString()),"hsv"===e&&(n=this.toHsvString()),n||this.toHexString())},_applyModification:function(e,t){var n=e.apply(null,[this].concat([].slice.call(t)));return this._r=n._r,this._g=n._g,this._b=n._b,this.setAlpha(n._a),this},lighten:function(){return this._applyModification(y,arguments)},brighten:function(){return this._applyModification(g,arguments)},darken:function(){return this._applyModification(v,arguments)},desaturate:function(){return this._applyModification(h,arguments)},saturate:function(){return this._applyModification(d,arguments)},greyscale:function(){return this._applyModification(b,arguments)},spin:function(){return this._applyModification(m,arguments)},_applyCombination:function(e,t){return e.apply(null,[this].concat([].slice.call(t)))},analogous:function(){return this._applyCombination(C,arguments)},complement:function(){return this._applyCombination(w,arguments)},monochromatic:function(){return this._applyCombination(j,arguments)},splitcomplement:function(){return this._applyCombination(E,arguments)},triad:function(){return this._applyCombination(x,arguments)},tetrad:function(){return this._applyCombination(O,arguments)}},o.fromRatio=function(e,t){if("object"==typeof e){var n={};for(var r in e)e.hasOwnProperty(r)&&("a"===r?n[r]=e[r]:n[r]=M(e[r]));e=n}return o(e,t)},o.equals=function(e,t){return!(!e||!t)&&o(e).toRgbString()==o(t).toRgbString()},o.random=function(){return o.fromRatio({r:X(),g:X(),b:X()})},o.mix=function(e,t,n){n=0===n?0:n||50;var r,a=o(e).toRgb(),i=o(t).toRgb(),u=n/100,l=2*u-1,s=i.a-a.a;r=l*s==-1?l:(l+s)/(1+l*s),r=(r+1)/2;var f=1-r,c={r:i.r*r+a.r*f,g:i.g*r+a.g*f,b:i.b*r+a.b*f,a:i.a*u+a.a*(1-u)};return o(c)},o.readability=function(e,t){var n=o(e),r=o(t);return(Math.max(n.getLuminance(),r.getLuminance())+.05)/(Math.min(n.getLuminance(),r.getLuminance())+.05)},o.isReadable=function(e,t,n){var r,a,i=o.readability(e,t);switch(a=!1,r=U(n),r.level+r.size){case"AAsmall":case"AAAlarge":a=i>=4.5;break;case"AAlarge":a=i>=3;break;case"AAAsmall":a=i>=7}return a},o.mostReadable=function(e,t,n){var r,a,i,u,l=null,s=0;n=n||{},a=n.includeFallbackColors,i=n.level,u=n.size;for(var f=0;fs&&(s=r,l=o(t[f]));return o.isReadable(e,l,{level:i,size:u})||!a?l:(n.includeFallbackColors=!1,o.mostReadable(e,["#fff","#000"],n))};var G=o.names={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"0ff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000",blanchedalmond:"ffebcd",blue:"00f",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",burntsienna:"ea7e5d",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"0ff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkgrey:"a9a9a9",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkslategrey:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dimgrey:"696969",dodgerblue:"1e90ff",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"f0f",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",greenyellow:"adff2f",grey:"808080",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgray:"d3d3d3",lightgreen:"90ee90",lightgrey:"d3d3d3",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslategray:"789",lightslategrey:"789",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"0f0",limegreen:"32cd32",linen:"faf0e6",magenta:"f0f",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370db",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"db7093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",rebeccapurple:"663399",red:"f00",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",slategrey:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",wheat:"f5deb3",white:"fff",whitesmoke:"f5f5f5",yellow:"ff0",yellowgreen:"9acd32"},W=o.hexNames=_(G),K=function(){var e="[-\\+]?\\d+%?",t="[-\\+]?\\d*\\.\\d+%?",n="(?:"+t+")|(?:"+e+")",r="[\\s|\\(]+("+n+")[,|\\s]+("+n+")[,|\\s]+("+n+")\\s*\\)?",o="[\\s|\\(]+("+n+")[,|\\s]+("+n+")[,|\\s]+("+n+")[,|\\s]+("+n+")\\s*\\)?";return{rgb:new RegExp("rgb"+r),rgba:new RegExp("rgba"+o),hsl:new RegExp("hsl"+r),hsla:new RegExp("hsla"+o),hsv:new RegExp("hsv"+r),hsva:new RegExp("hsva"+o),hex3:/^([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex6:/^([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,hex8:/^([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/}}();"undefined"!=typeof e&&e.exports?e.exports=o:(r=function(){return o}.call(t,n,t,e),!(void 0!==r&&(e.exports=r)))}()},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{"default":e}}Object.defineProperty(t,"__esModule",{value:!0}),t.Swatch=void 0;var o=n(1),a=r(o),i=n(53),u=r(i),l=t.Swatch=function(e){var t=(0,u["default"])({"default":{swatch:{background:e.color,height:"100%",width:"100%",cursor:"pointer"}},custom:{swatch:e.style}},"custom"),n=function(t){e.onClick&&e.onClick(e.color,t)};return a["default"].createElement("div",{style:t.swatch,onClick:n})};t["default"]=l},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{"default":e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function a(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function i(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0}),t.AlphaPointer=void 0;var u=function(){function e(e,t){for(var n=0;n1&&(e.a=1),r.props.onChange({h:r.props.hsl.h,s:r.props.hsl.s,l:r.props.hsl.l,a:Math.round(100*e.a)/100,source:"rgb"})):(e.h||e.s||e.l)&&r.props.onChange({h:e.h||r.props.hsl.h,s:e.s&&e.s.replace("%","")||r.props.hsl.s,l:e.l&&e.l.replace("%","")||r.props.hsl.l,source:"hsl"})},r.showHighlight=function(e){e.target.style.background="#eee"},r.hideHighlight=function(e){e.target.style.background="transparent"},i=n,a(r,i)}return i(t,e),u(t,[{key:"componentDidMount",value:function(){1===this.props.hsl.a&&"hex"!==this.state.view?this.setState({view:"hex"}):"rgb"!==this.state.view&&"hsl"!==this.state.view&&this.setState({view:"rgb"})}},{key:"componentWillReceiveProps",value:function(e){1!==e.hsl.a&&"hex"===this.state.view&&this.setState({view:"rgb"})}},{key:"render",value:function(){var e=(0,c["default"])({"default":{wrap:{paddingTop:"16px",display:"flex"},fields:{flex:"1",display:"flex",marginLeft:"-6px"},field:{paddingLeft:"6px",width:"100%"},alpha:{paddingLeft:"6px",width:"100%"},toggle:{width:"32px",textAlign:"right",position:"relative"},icon:{marginRight:"-4px",marginTop:"12px",cursor:"pointer",position:"relative"},iconHighlight:{position:"absolute",width:"24px",height:"28px",background:"#eee",borderRadius:"4px",top:"10px",left:"12px",display:"none"},input:{fontSize:"11px",color:"#333",width:"100%",borderRadius:"2px",border:"none",boxShadow:"inset 0 0 0 1px #dadada",height:"21px",textAlign:"center"},label:{textTransform:"uppercase",fontSize:"11px",lineHeight:"11px",color:"#969696",textAlign:"center",display:"block",marginTop:"12px"},svg:{width:"24px",height:"24px",border:"1px transparent solid",borderRadius:"5px"}},disableAlpha:{alpha:{display:"none"}}},this.props,this.state),t=void 0;return"hex"===this.state.view?t=s["default"].createElement("div",{style:e.fields,className:"flexbox-fix"},s["default"].createElement("div",{style:e.field},s["default"].createElement(y.EditableInput,{style:{input:e.input,label:e.label},label:"hex",value:this.props.hex,onChange:this.handleChange}))):"rgb"===this.state.view?t=s["default"].createElement("div",{style:e.fields,className:"flexbox-fix"},s["default"].createElement("div",{style:e.field},s["default"].createElement(y.EditableInput,{style:{input:e.input,label:e.label},label:"r",value:this.props.rgb.r,onChange:this.handleChange})),s["default"].createElement("div",{style:e.field},s["default"].createElement(y.EditableInput,{style:{input:e.input,label:e.label},label:"g",value:this.props.rgb.g,onChange:this.handleChange})),s["default"].createElement("div",{style:e.field},s["default"].createElement(y.EditableInput,{style:{input:e.input,label:e.label},label:"b",value:this.props.rgb.b,onChange:this.handleChange})),s["default"].createElement("div",{style:e.alpha},s["default"].createElement(y.EditableInput,{style:{input:e.input,label:e.label},label:"a",value:this.props.rgb.a,arrowOffset:.01,onChange:this.handleChange}))):"hsl"===this.state.view&&(t=s["default"].createElement("div",{style:e.fields,className:"flexbox-fix"},s["default"].createElement("div",{style:e.field},s["default"].createElement(y.EditableInput,{style:{input:e.input,label:e.label},label:"h",value:Math.round(this.props.hsl.h),onChange:this.handleChange})),s["default"].createElement("div",{style:e.field},s["default"].createElement(y.EditableInput,{style:{input:e.input,label:e.label},label:"s",value:Math.round(100*this.props.hsl.s)+"%",onChange:this.handleChange})),s["default"].createElement("div",{style:e.field},s["default"].createElement(y.EditableInput,{style:{input:e.input,label:e.label},label:"l",value:Math.round(100*this.props.hsl.l)+"%",onChange:this.handleChange})),s["default"].createElement("div",{style:e.alpha},s["default"].createElement(y.EditableInput,{style:{input:e.input,label:e.label},label:"a",value:this.props.hsl.a,arrowOffset:.01,onChange:this.handleChange})))),s["default"].createElement("div",{style:e.wrap,className:"flexbox-fix"},t,s["default"].createElement("div",{style:e.toggle},s["default"].createElement("div",{style:e.icon,onClick:this.toggleViews,ref:"icon"},s["default"].createElement("svg",{style:e.svg,viewBox:"0 0 24 24",onMouseOver:this.showHighlight,onMouseEnter:this.showHighlight,onMouseOut:this.hideHighlight},s["default"].createElement("path",{ref:"iconUp",fill:"#333",d:"M12,5.83L15.17,9L16.58,7.59L12,3L7.41,7.59L8.83,9L12,5.83Z"}),s["default"].createElement("path",{ref:"iconDown",fill:"#333",d:"M12,18.17L8.83,15L7.42,16.41L12,21L16.59,16.41L15.17,15Z"})))))}}]),t}(s["default"].Component);t["default"]=g},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{"default":e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function a(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function i(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0}),t.ChromePointer=void 0;var u=function(){function e(e,t){for(var n=0;nn&&(e.scrollLeft+=a-n),o=(e.tabs&&e.tabs.length)&&(t.selectedTab=e.tabs.length-1)}},{key:"componentDidUpdate",value:function(){this.slide()}},{key:"render",value:function(){for(var e=(0,c["default"])({"default":{tabs:{position:"relative",background:this.props.background},tabWrap:{display:"flex"},tab:{justifyContent:"flex-start",minWidth:"68px",maxWidth:"240px"},Tab:{color:this.props.color,inactive:this.props.inactive,capitalize:this.props.capitalize},indicator:{height:"0",position:"absolute",bottom:"0",left:"0",background:this.props.color,transition:"all 200ms linear"}},scrollable:{tabs:{overflowX:"scroll"},tabWrap:{paddingLeft:"60px",justifyContent:"flex-start",width:"400%"},tab:{width:"auto"}},"align-justify":{tabWrap:{justifyContent:"space-between"},tab:{width:100/this.props.tabs.length+"%"}},"align-left":{tabWrap:{paddingLeft:"60px",justifyContent:"flex-start"},tab:{width:"auto"}},"align-center":{tabWrap:{justifyContent:"center"},tab:{width:"auto"}}},{scrollable:this.props.width/this.props.tabs.length<72},this.props,this.state),t=[],n=0;n.5});return s["default"].createElement("div",{style:e.picker})}}]),t}(s["default"].Component);t["default"]=d},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{"default":e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function a(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function i(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0}),t.PhotoshopPointerCircle=void 0;var u=function(){function e(e,t){for(var n=0;n100&&(e.a=100),e.a=e.a/100,r.props.onChange({h:r.props.hsl.h,s:r.props.hsl.s,l:r.props.hsl.l,a:e.a,source:"rgb"}))},i=n,a(r,i)}return i(t,e),u(t,[{key:"render",value:function(){var e=(0,c["default"])({"default":{fields:{display:"flex",paddingTop:"4px"},single:{flex:"1",paddingLeft:"6px"},alpha:{flex:"1",paddingLeft:"6px"},"double":{flex:"2"},input:{width:"80%",padding:"4px 10% 3px",border:"none",boxShadow:"inset 0 0 0 1px #ccc",fontSize:"11px"},label:{display:"block",textAlign:"center",fontSize:"11px",color:"#222",paddingTop:"3px",paddingBottom:"4px",textTransform:"capitalize"}},disableAlpha:{alpha:{display:"none"}}},this.props);return s["default"].createElement("div",{style:e.fields,className:"flexbox-fix"},s["default"].createElement("div",{style:e["double"]},s["default"].createElement(y.EditableInput,{style:{input:e.input,label:e.label},label:"hex",value:this.props.hex.replace("#",""),onChange:this.handleChange})),s["default"].createElement("div",{style:e.single},s["default"].createElement(y.EditableInput,{style:{input:e.input,label:e.label},label:"r",value:this.props.rgb.r,onChange:this.handleChange,dragLabel:"true",dragMax:"255"})),s["default"].createElement("div",{style:e.single},s["default"].createElement(y.EditableInput,{style:{input:e.input,label:e.label},label:"g",value:this.props.rgb.g,onChange:this.handleChange,dragLabel:"true",dragMax:"255"})),s["default"].createElement("div",{style:e.single},s["default"].createElement(y.EditableInput,{style:{input:e.input,label:e.label},label:"b",value:this.props.rgb.b,onChange:this.handleChange,dragLabel:"true",dragMax:"255"})),s["default"].createElement("div",{style:e.alpha},s["default"].createElement(y.EditableInput,{style:{input:e.input,label:e.label},label:"a",value:Math.round(100*this.props.rgb.a),onChange:this.handleChange,dragLabel:"true",dragMax:"100"})))}}]),t}(s["default"].Component);t["default"]=g},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{"default":e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function a(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function i(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0}),t.SketchPresetColors=void 0;var u=function(){function e(e,t){for(var n=0;n - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/dist/fonts/fontawesome-webfont.ttf b/dist/fonts/fontawesome-webfont.ttf deleted file mode 100644 index ed9372f..0000000 Binary files a/dist/fonts/fontawesome-webfont.ttf and /dev/null differ diff --git a/dist/fonts/fontawesome-webfont.woff b/dist/fonts/fontawesome-webfont.woff deleted file mode 100644 index 8b280b9..0000000 Binary files a/dist/fonts/fontawesome-webfont.woff and /dev/null differ diff --git a/dist/fonts/fontawesome-webfont.woff2 b/dist/fonts/fontawesome-webfont.woff2 deleted file mode 100644 index 3311d58..0000000 Binary files a/dist/fonts/fontawesome-webfont.woff2 and /dev/null differ diff --git a/dist/index.html b/dist/index.html deleted file mode 100644 index 792b7ee..0000000 --- a/dist/index.html +++ /dev/null @@ -1,3 +0,0 @@ - CardKit - From The Times and Sunday Times
\ No newline at end of file diff --git a/dist/robots.txt b/dist/robots.txt deleted file mode 100644 index 9417495..0000000 --- a/dist/robots.txt +++ /dev/null @@ -1,3 +0,0 @@ -# robotstxt.org - -User-agent: * diff --git a/dist/scripts/oldieshim.a466b7b1.js b/dist/scripts/oldieshim.a466b7b1.js deleted file mode 100644 index 9471ce7..0000000 --- a/dist/scripts/oldieshim.a466b7b1.js +++ /dev/null @@ -1 +0,0 @@ -!function(a,b){"function"==typeof define&&define.amd?define(b):"object"==typeof exports?module.exports=b():a.returnExports=b()}(this,function(){function a(){}function b(a){return a=+a,a!==a?a=0:0!==a&&a!==1/0&&a!==-(1/0)&&(a=(a>0||-1)*Math.floor(Math.abs(a))),a}function c(a){var b=typeof a;return null===a||"undefined"===b||"boolean"===b||"number"===b||"string"===b}function d(a){var b,d,e;if(c(a))return a;if(d=a.valueOf,l(d)&&(b=d.call(a),c(b)))return b;if(e=a.toString,l(e)&&(b=e.call(a),c(b)))return b;throw new TypeError}var e=Function.prototype.call,f=Array.prototype,g=Object.prototype,h=f.slice,i=Array.prototype.splice,j=Array.prototype.push,k=Array.prototype.unshift,l=function(a){return"[object Function]"===g.toString.call(a)},m=function(a){return"[object RegExp]"===g.toString.call(a)};Function.prototype.bind||(Function.prototype.bind=function(b){var c=this;if(!l(c))throw new TypeError("Function.prototype.bind called on incompatible "+c);for(var d=h.call(arguments,1),e=function(){if(this instanceof j){var a=c.apply(this,d.concat(h.call(arguments)));return Object(a)===a?a:this}return c.apply(b,d.concat(h.call(arguments)))},f=Math.max(0,c.length-d.length),g=[],i=0;f>i;i++)g.push("$"+i);var j=Function("binder","return function("+g.join(",")+"){return binder.apply(this,arguments)}")(e);return c.prototype&&(a.prototype=c.prototype,j.prototype=new a,a.prototype=null),j});var n,o,p,q,r,s=e.bind(g.hasOwnProperty),t=e.bind(g.toString);(r=s(g,"__defineGetter__"))&&(n=e.bind(g.__defineGetter__),o=e.bind(g.__defineSetter__),p=e.bind(g.__lookupGetter__),q=e.bind(g.__lookupSetter__)),2!==[1,2].splice(0).length&&(Array.prototype.splice=function(){function a(a){for(var b=[];a--;)b.unshift(a);return b}var b,c=[];return c.splice.bind(c,0,0).apply(null,a(20)),c.splice.bind(c,0,0).apply(null,a(26)),b=c.length,c.splice(5,0,"XXX"),b+1===c.length?!0:void 0}()?function(a,b){return arguments.length?i.apply(this,[void 0===a?0:a,void 0===b?this.length-a:b].concat(h.call(arguments,2))):[]}:function(a,b){var c,d=h.call(arguments,2),e=d.length;if(!arguments.length)return[];if(void 0===a&&(a=0),void 0===b&&(b=this.length-a),e>0){if(0>=b){if(a===this.length)return j.apply(this,d),[];if(0===a)return k.apply(this,d),[]}return c=h.call(this,a,a+b),d.push.apply(d,h.call(this,a+b,this.length)),d.unshift.apply(d,h.call(this,0,a)),d.unshift(0,this.length),i.apply(this,d),c}return i.call(this,a,b)}),1!==[].unshift(0)&&(Array.prototype.unshift=function(){return k.apply(this,arguments),this.length}),Array.isArray||(Array.isArray=function(a){return"[object Array]"===t(a)});var u=Object("a"),v="a"!==u[0]||!(0 in u),w=function(a){var b=!0;return a&&a.call("foo",function(a,c,d){"object"!=typeof d&&(b=!1)}),!!a&&b};Array.prototype.forEach&&w(Array.prototype.forEach)||(Array.prototype.forEach=function(a){var b=S(this),c=v&&"[object String]"===t(this)?this.split(""):b,d=arguments[1],e=-1,f=c.length>>>0;if(!l(a))throw new TypeError;for(;++e>>0,e=Array(d),f=arguments[1];if(!l(a))throw new TypeError(a+" is not a function");for(var g=0;d>g;g++)g in c&&(e[g]=a.call(f,c[g],g,b));return e}),Array.prototype.filter&&w(Array.prototype.filter)||(Array.prototype.filter=function(a){var b,c=S(this),d=v&&"[object String]"===t(this)?this.split(""):c,e=d.length>>>0,f=[],g=arguments[1];if(!l(a))throw new TypeError(a+" is not a function");for(var h=0;e>h;h++)h in d&&(b=d[h],a.call(g,b,h,c)&&f.push(b));return f}),Array.prototype.every&&w(Array.prototype.every)||(Array.prototype.every=function(a){var b=S(this),c=v&&"[object String]"===t(this)?this.split(""):b,d=c.length>>>0,e=arguments[1];if(!l(a))throw new TypeError(a+" is not a function");for(var f=0;d>f;f++)if(f in c&&!a.call(e,c[f],f,b))return!1;return!0}),Array.prototype.some&&w(Array.prototype.some)||(Array.prototype.some=function(a){var b=S(this),c=v&&"[object String]"===t(this)?this.split(""):b,d=c.length>>>0,e=arguments[1];if(!l(a))throw new TypeError(a+" is not a function");for(var f=0;d>f;f++)if(f in c&&a.call(e,c[f],f,b))return!0;return!1});var x=!1;if(Array.prototype.reduce&&(x="object"==typeof Array.prototype.reduce.call("a",function(a,b,c,d){return d})),Array.prototype.reduce&&x||(Array.prototype.reduce=function(a){var b=S(this),c=v&&"[object String]"===t(this)?this.split(""):b,d=c.length>>>0;if(!l(a))throw new TypeError(a+" is not a function");if(!d&&1===arguments.length)throw new TypeError("reduce of empty array with no initial value");var e,f=0;if(arguments.length>=2)e=arguments[1];else for(;;){if(f in c){e=c[f++];break}if(++f>=d)throw new TypeError("reduce of empty array with no initial value")}for(;d>f;f++)f in c&&(e=a.call(void 0,e,c[f],f,b));return e}),Array.prototype.reduceRight||(Array.prototype.reduceRight=function(a){var b=S(this),c=v&&"[object String]"===t(this)?this.split(""):b,d=c.length>>>0;if(!l(a))throw new TypeError(a+" is not a function");if(!d&&1===arguments.length)throw new TypeError("reduceRight of empty array with no initial value");var e,f=d-1;if(arguments.length>=2)e=arguments[1];else for(;;){if(f in c){e=c[f--];break}if(--f<0)throw new TypeError("reduceRight of empty array with no initial value")}if(0>f)return e;do f in this&&(e=a.call(void 0,e,c[f],f,b));while(f--);return e}),Array.prototype.indexOf&&-1===[0,1].indexOf(1,2)||(Array.prototype.indexOf=function(a){var c=v&&"[object String]"===t(this)?this.split(""):S(this),d=c.length>>>0;if(!d)return-1;var e=0;for(arguments.length>1&&(e=b(arguments[1])),e=e>=0?e:Math.max(0,d+e);d>e;e++)if(e in c&&c[e]===a)return e;return-1}),Array.prototype.lastIndexOf&&-1===[0,1].lastIndexOf(0,-3)||(Array.prototype.lastIndexOf=function(a){var c=v&&"[object String]"===t(this)?this.split(""):S(this),d=c.length>>>0;if(!d)return-1;var e=d-1;for(arguments.length>1&&(e=Math.min(e,b(arguments[1]))),e=e>=0?e:d-Math.abs(e);e>=0;e--)if(e in c&&a===c[e])return e;return-1}),!Object.keys){var y=!{toString:null}.propertyIsEnumerable("toString"),z=function(){}.propertyIsEnumerable("prototype"),A=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],B=A.length,C=function(a){var b=t(a),c="[object Arguments]"===b;return c||(c=!Array.isArray(b)&&null!==a&&"object"==typeof a&&"number"==typeof a.length&&a.length>=0&&l(a.callee)),c};Object.keys=function(a){var b=l(a),c=C(a),d=null!==a&&"object"==typeof a,e=d&&"[object String]"===t(a);if(!d&&!b&&!c)throw new TypeError("Object.keys called on a non-object");var f=[],g=z&&b;if(e||c)for(var h=0;hm;m++){var n=A[m];k&&"constructor"===n||!s(a,n)||f.push(n)}return f}}var D=-621987552e5,E="-000001";Date.prototype.toISOString&&-1!==new Date(D).toISOString().indexOf(E)||(Date.prototype.toISOString=function(){var a,b,c,d,e;if(!isFinite(this))throw new RangeError("Date.prototype.toISOString called on non-finite value.");for(d=this.getUTCFullYear(),e=this.getUTCMonth(),d+=Math.floor(e/12),e=(e%12+12)%12,a=[e+1,this.getUTCDate(),this.getUTCHours(),this.getUTCMinutes(),this.getUTCSeconds()],d=(0>d?"-":d>9999?"+":"")+("00000"+Math.abs(d)).slice(d>=0&&9999>=d?-4:-6),b=a.length;b--;)c=a[b],10>c&&(a[b]="0"+c);return d+"-"+a.slice(0,2).join("-")+"T"+a.slice(2).join(":")+"."+("000"+this.getUTCMilliseconds()).slice(-3)+"Z"});var F=!1;try{F=Date.prototype.toJSON&&null===new Date(0/0).toJSON()&&-1!==new Date(D).toJSON().indexOf(E)&&Date.prototype.toJSON.call({toISOString:function(){return!0}})}catch(G){}F||(Date.prototype.toJSON=function(){var a,b=Object(this),c=d(b);if("number"==typeof c&&!isFinite(c))return null;if(a=b.toISOString,"function"!=typeof a)throw new TypeError("toISOString property is not callable");return a.call(b)});var H=1e15===Date.parse("+033658-09-27T01:46:40.000Z"),I=!isNaN(Date.parse("2012-04-04T24:00:00.500Z"))||!isNaN(Date.parse("2012-11-31T23:59:59.000Z")),J=isNaN(Date.parse("2000-01-01T00:00:00.000Z"));(!Date.parse||J||I||!H)&&(Date=function(a){function b(c,d,e,f,g,h,i){var j=arguments.length;if(this instanceof a){var k=1===j&&String(c)===c?new a(b.parse(c)):j>=7?new a(c,d,e,f,g,h,i):j>=6?new a(c,d,e,f,g,h):j>=5?new a(c,d,e,f,g):j>=4?new a(c,d,e,f):j>=3?new a(c,d,e):j>=2?new a(c,d):j>=1?new a(c):new a;return k.constructor=b,k}return a.apply(this,arguments)}function c(a,b){var c=b>1?1:0;return f[b]+Math.floor((a-1969+c)/4)-Math.floor((a-1901+c)/100)+Math.floor((a-1601+c)/400)+365*(a-1970)}function d(b){return Number(new a(1970,0,1,0,0,0,b))}var e=new RegExp("^(\\d{4}|[+-]\\d{6})(?:-(\\d{2})(?:-(\\d{2})(?:T(\\d{2}):(\\d{2})(?::(\\d{2})(?:(\\.\\d{1,}))?)?(Z|(?:([-+])(\\d{2}):(\\d{2})))?)?)?)?$"),f=[0,31,59,90,120,151,181,212,243,273,304,334,365];for(var g in a)b[g]=a[g];return b.now=a.now,b.UTC=a.UTC,b.prototype=a.prototype,b.prototype.constructor=b,b.parse=function(b){var f=e.exec(b);if(f){var g,h=Number(f[1]),i=Number(f[2]||1)-1,j=Number(f[3]||1)-1,k=Number(f[4]||0),l=Number(f[5]||0),m=Number(f[6]||0),n=Math.floor(1e3*Number(f[7]||0)),o=Boolean(f[4]&&!f[8]),p="-"===f[9]?1:-1,q=Number(f[10]||0),r=Number(f[11]||0);return(l>0||m>0||n>0?24:25)>k&&60>l&&60>m&&1e3>n&&i>-1&&12>i&&24>q&&60>r&&j>-1&&j=-864e13&&864e13>=g)?g:0/0}return a.parse.apply(this,arguments)},b}(Date)),Date.now||(Date.now=function(){return(new Date).getTime()}),Number.prototype.toFixed&&"0.000"===8e-5.toFixed(3)&&"0"!==.9.toFixed(0)&&"1.25"===1.255.toFixed(2)&&"1000000000000000128"===0xde0b6b3a7640080.toFixed(0)||!function(){function a(a,b){for(var c=-1;++c=0;)c+=h[b],h[b]=Math.floor(c/a),c=c%a*f}function c(){for(var a=g,b="";--a>=0;)if(""!==b||0===a||0!==h[a]){var c=String(h[a]);""===b?b=c:b+="0000000".slice(0,7-c.length)+c}return b}function d(a,b,c){return 0===b?c:b%2===1?d(a,b-1,c*a):d(a*a,b/2,c)}function e(a){for(var b=0;a>=4096;)b+=12,a/=4096;for(;a>=2;)b+=1,a/=2;return b}var f,g,h;f=1e7,g=6,h=[0,0,0,0,0,0],Number.prototype.toFixed=function(f){var g,h,i,j,k,l,m,n;if(g=Number(f),g=g!==g?0:Math.floor(g),0>g||g>20)throw new RangeError("Number.toFixed called with invalid number of decimals");if(h=Number(this),h!==h)return"NaN";if(-1e21>=h||h>=1e21)return String(h);if(i="",0>h&&(i="-",h=-h),j="0",h>1e-21)if(k=e(h*d(2,69,1))-69,l=0>k?h*d(2,-k,1):h/d(2,k,1),l*=4503599627370496,k=52-k,k>0){for(a(0,l),m=g;m>=7;)a(1e7,0),m-=7;for(a(d(10,m,1),0),m=k-1;m>=23;)b(1<<23),m-=23;b(1<0?(n=j.length,j=g>=n?i+"0.0000000000000000000".slice(0,g-n+2)+j:i+j.slice(0,n-g)+"."+j.slice(n-g)):j=i+j,j}}();var K=String.prototype.split;2!=="ab".split(/(?:ab)*/).length||4!==".".split(/(.?)(.?)/).length||"t"==="tesst".split(/(s)*/)[1]||"".split(/.?/).length||".".split(/()()/).length>1?!function(){var a=void 0===/()??/.exec("")[1];String.prototype.split=function(b,c){var d=this;if(void 0===b&&0===c)return[];if("[object RegExp]"!==Object.prototype.toString.call(b))return K.apply(this,arguments);var e,f,g,h,i=[],j=(b.ignoreCase?"i":"")+(b.multiline?"m":"")+(b.extended?"x":"")+(b.sticky?"y":""),k=0;for(b=new RegExp(b.source,j+"g"),d+="",a||(e=new RegExp("^"+b.source+"$(?!\\s)",j)),c=void 0===c?-1>>>0:c>>>0;(f=b.exec(d))&&(g=f.index+f[0].length,!(g>k&&(i.push(d.slice(k,f.index)),!a&&f.length>1&&f[0].replace(e,function(){for(var a=1;a1&&f.index=c)));)b.lastIndex===f.index&&b.lastIndex++;return k===d.length?(h||!b.test(""))&&i.push(""):i.push(d.slice(k)),i.length>c?i.slice(0,c):i}}():"0".split(void 0,0).length&&(String.prototype.split=function(a,b){return void 0===a&&0===b?[]:K.apply(this,arguments)});var L=String.prototype.replace,M=function(){var a=[];return"x".replace(/x(.)?/g,function(b,c){a.push(c)}),1===a.length&&"undefined"==typeof a[0]}();if(M||(String.prototype.replace=function(a,b){var c=l(b),d=m(a)&&/\)[*?]/.test(a.source);if(c&&d){var e=function(c){var d=arguments.length,e=a.lastIndex;a.lastIndex=0;var f=a.exec(c);return a.lastIndex=e,f.push(arguments[d-2],arguments[d-1]),b.apply(this,f)};return L.call(this,a,e)}return L.apply(this,arguments)}),"".substr&&"b"!=="0b".substr(-1)){var N=String.prototype.substr;String.prototype.substr=function(a,b){return N.call(this,0>a&&(a=this.length+a)<0?0:a,b)}}var O=" \n \f\r   ᠎              \u2028\u2029",P="​";if(!String.prototype.trim||O.trim()||!P.trim()){O="["+O+"]";var Q=new RegExp("^"+O+O+"*"),R=new RegExp(O+O+"*$");String.prototype.trim=function(){if(void 0===this||null===this)throw new TypeError("can't convert "+this+" to object");return String(this).replace(Q,"").replace(R,"")}}(8!==parseInt(O+"08")||22!==parseInt(O+"0x16"))&&(parseInt=function(a){var b=/^0[xX]/;return function(c,d){return c=String(c).trim(),Number(d)||(d=b.test(c)?16:10),a(c,d)}}(parseInt));var S=function(a){if(null==a)throw new TypeError("can't convert "+a+" to object");return Object(a)}}),function(){function a(b,d){function f(a){if(f[a]!==q)return f[a];var b;if("bug-string-char-index"==a)b="a"!="a"[0];else if("json"==a)b=f("json-stringify")&&f("json-parse");else{var c,e='{"a":[1,true,false,null,"\\u0000\\b\\n\\f\\r\\t"]}';if("json-stringify"==a){var i=d.stringify,k="function"==typeof i&&t;if(k){(c=function(){return 1}).toJSON=c;try{k="0"===i(0)&&"0"===i(new g)&&'""'==i(new h)&&i(s)===q&&i(q)===q&&i()===q&&"1"===i(c)&&"[1]"==i([c])&&"[null]"==i([q])&&"null"==i(null)&&"[null,null,null]"==i([q,s,null])&&i({a:[c,!0,!1,null,"\x00\b\n\f\r "]})==e&&"1"===i(null,c)&&"[\n 1,\n 2\n]"==i([1,2],null,1)&&'"-271821-04-20T00:00:00.000Z"'==i(new j(-864e13))&&'"+275760-09-13T00:00:00.000Z"'==i(new j(864e13))&&'"-000001-01-01T00:00:00.000Z"'==i(new j(-621987552e5))&&'"1969-12-31T23:59:59.999Z"'==i(new j(-1))}catch(l){k=!1}}b=k}if("json-parse"==a){var m=d.parse;if("function"==typeof m)try{if(0===m("0")&&!m(!1)){c=m(e);var n=5==c.a.length&&1===c.a[0];if(n){try{n=!m('" "')}catch(l){}if(n)try{n=1!==m("01")}catch(l){}if(n)try{n=1!==m("1.")}catch(l){}}}}catch(l){n=!1}b=n}}return f[a]=!!b}b||(b=e.Object()),d||(d=e.Object());var g=b.Number||e.Number,h=b.String||e.String,i=b.Object||e.Object,j=b.Date||e.Date,k=b.SyntaxError||e.SyntaxError,l=b.TypeError||e.TypeError,m=b.Math||e.Math,n=b.JSON||e.JSON;"object"==typeof n&&n&&(d.stringify=n.stringify,d.parse=n.parse);var o,p,q,r=i.prototype,s=r.toString,t=new j(-0xc782b5b800cec);try{t=-109252==t.getUTCFullYear()&&0===t.getUTCMonth()&&1===t.getUTCDate()&&10==t.getUTCHours()&&37==t.getUTCMinutes()&&6==t.getUTCSeconds()&&708==t.getUTCMilliseconds()}catch(u){}if(!f("json")){var v="[object Function]",w="[object Date]",x="[object Number]",y="[object String]",z="[object Array]",A="[object Boolean]",B=f("bug-string-char-index");if(!t)var C=m.floor,D=[0,31,59,90,120,151,181,212,243,273,304,334],E=function(a,b){return D[b]+365*(a-1970)+C((a-1969+(b=+(b>1)))/4)-C((a-1901+b)/100)+C((a-1601+b)/400)};if((o=r.hasOwnProperty)||(o=function(a){var b,c={};return(c.__proto__=null,c.__proto__={toString:1},c).toString!=s?o=function(a){var b=this.__proto__,c=a in(this.__proto__=null,this);return this.__proto__=b,c}:(b=c.constructor,o=function(a){var c=(this.constructor||b).prototype;return a in this&&!(a in c&&this[a]===c[a])}),c=null,o.call(this,a)}),p=function(a,b){var d,e,f,g=0;(d=function(){this.valueOf=0}).prototype.valueOf=0,e=new d;for(f in e)o.call(e,f)&&g++;return d=e=null,g?p=2==g?function(a,b){var c,d={},e=s.call(a)==v;for(c in a)e&&"prototype"==c||o.call(d,c)||!(d[c]=1)||!o.call(a,c)||b(c)}:function(a,b){var c,d,e=s.call(a)==v;for(c in a)e&&"prototype"==c||!o.call(a,c)||(d="constructor"===c)||b(c);(d||o.call(a,c="constructor"))&&b(c)}:(e=["valueOf","toString","toLocaleString","propertyIsEnumerable","isPrototypeOf","hasOwnProperty","constructor"],p=function(a,b){var d,f,g=s.call(a)==v,h=!g&&"function"!=typeof a.constructor&&c[typeof a.hasOwnProperty]&&a.hasOwnProperty||o;for(d in a)g&&"prototype"==d||!h.call(a,d)||b(d);for(f=e.length;d=e[--f];h.call(a,d)&&b(d));}),p(a,b)},!f("json-stringify")){var F={92:"\\\\",34:'\\"',8:"\\b",12:"\\f",10:"\\n",13:"\\r",9:"\\t"},G="000000",H=function(a,b){return(G+(b||0)).slice(-a)},I="\\u00",J=function(a){for(var b='"',c=0,d=a.length,e=!B||d>10,f=e&&(B?a.split(""):a);d>c;c++){var g=a.charCodeAt(c);switch(g){case 8:case 9:case 10:case 12:case 13:case 34:case 92:b+=F[g];break;default:if(32>g){b+=I+H(2,g.toString(16));break}b+=e?f[c]:a.charAt(c)}}return b+'"'},K=function(a,b,c,d,e,f,g){var h,i,j,k,m,n,r,t,u,v,B,D,F,G,I,L;try{h=b[a]}catch(M){}if("object"==typeof h&&h)if(i=s.call(h),i!=w||o.call(h,"toJSON"))"function"==typeof h.toJSON&&(i!=x&&i!=y&&i!=z||o.call(h,"toJSON"))&&(h=h.toJSON(a));else if(h>-1/0&&1/0>h){if(E){for(m=C(h/864e5),j=C(m/365.2425)+1970-1;E(j+1,0)<=m;j++);for(k=C((m-E(j,0))/30.42);E(j,k+1)<=m;k++);m=1+m-E(j,k),n=(h%864e5+864e5)%864e5,r=C(n/36e5)%24,t=C(n/6e4)%60,u=C(n/1e3)%60,v=n%1e3}else j=h.getUTCFullYear(),k=h.getUTCMonth(),m=h.getUTCDate(),r=h.getUTCHours(),t=h.getUTCMinutes(),u=h.getUTCSeconds(),v=h.getUTCMilliseconds();h=(0>=j||j>=1e4?(0>j?"-":"+")+H(6,0>j?-j:j):H(4,j))+"-"+H(2,k+1)+"-"+H(2,m)+"T"+H(2,r)+":"+H(2,t)+":"+H(2,u)+"."+H(3,v)+"Z"}else h=null;if(c&&(h=c.call(b,a,h)),null===h)return"null";if(i=s.call(h),i==A)return""+h;if(i==x)return h>-1/0&&1/0>h?""+h:"null";if(i==y)return J(""+h);if("object"==typeof h){for(G=g.length;G--;)if(g[G]===h)throw l();if(g.push(h),B=[],I=f,f+=e,i==z){for(F=0,G=h.length;G>F;F++)D=K(F,h,c,d,e,f,g),B.push(D===q?"null":D);L=B.length?e?"[\n"+f+B.join(",\n"+f)+"\n"+I+"]":"["+B.join(",")+"]":"[]"}else p(d||h,function(a){var b=K(a,h,c,d,e,f,g);b!==q&&B.push(J(a)+":"+(e?" ":"")+b)}),L=B.length?e?"{\n"+f+B.join(",\n"+f)+"\n"+I+"}":"{"+B.join(",")+"}":"{}";return g.pop(),L}};d.stringify=function(a,b,d){var e,f,g,h;if(c[typeof b]&&b)if((h=s.call(b))==v)f=b;else if(h==z){g={};for(var i,j=0,k=b.length;k>j;i=b[j++],h=s.call(i),(h==y||h==x)&&(g[i]=1));}if(d)if((h=s.call(d))==x){if((d-=d%1)>0)for(e="",d>10&&(d=10);e.lengthL;)switch(e=f.charCodeAt(L)){case 9:case 10:case 13:case 32:L++;break;case 123:case 125:case 91:case 93:case 58:case 44:return a=B?f.charAt(L):f[L],L++,a;case 34:for(a="@",L++;g>L;)if(e=f.charCodeAt(L),32>e)P();else if(92==e)switch(e=f.charCodeAt(++L)){case 92:case 34:case 47:case 98:case 116:case 110:case 102:case 114:a+=O[e],L++;break;case 117:for(b=++L,c=L+4;c>L;L++)e=f.charCodeAt(L),e>=48&&57>=e||e>=97&&102>=e||e>=65&&70>=e||P();a+=N("0x"+f.slice(b,L));break;default:P()}else{if(34==e)break;for(e=f.charCodeAt(L),b=L;e>=32&&92!=e&&34!=e;)e=f.charCodeAt(++L);a+=f.slice(b,L)}if(34==f.charCodeAt(L))return L++,a;P();default:if(b=L,45==e&&(d=!0,e=f.charCodeAt(++L)),e>=48&&57>=e){for(48==e&&(e=f.charCodeAt(L+1),e>=48&&57>=e)&&P(),d=!1;g>L&&(e=f.charCodeAt(L),e>=48&&57>=e);L++);if(46==f.charCodeAt(L)){for(c=++L;g>c&&(e=f.charCodeAt(c),e>=48&&57>=e);c++);c==L&&P(),L=c}if(e=f.charCodeAt(L),101==e||69==e){for(e=f.charCodeAt(++L),(43==e||45==e)&&L++,c=L;g>c&&(e=f.charCodeAt(c),e>=48&&57>=e);c++);c==L&&P(),L=c}return+f.slice(b,L)}if(d&&P(),"true"==f.slice(L,L+4))return L+=4,!0;if("false"==f.slice(L,L+5))return L+=5,!1;if("null"==f.slice(L,L+4))return L+=4,null;P()}return"$"},R=function(a){var b,c;if("$"==a&&P(),"string"==typeof a){if("@"==(B?a.charAt(0):a[0]))return a.slice(1);if("["==a){for(b=[];a=Q(),"]"!=a;c||(c=!0))c&&(","==a?(a=Q(),"]"==a&&P()):P()),","==a&&P(),b.push(R(a));return b}if("{"==a){for(b={};a=Q(),"}"!=a;c||(c=!0))c&&(","==a?(a=Q(),"}"==a&&P()):P()),(","==a||"string"!=typeof a||"@"!=(B?a.charAt(0):a[0])||":"!=Q())&&P(),b[a.slice(1)]=R(Q());return b}P()}return a},S=function(a,b,c){var d=T(a,b,c);d===q?delete a[b]:a[b]=d},T=function(a,b,c){var d,e=a[b];if("object"==typeof e&&e)if(s.call(e)==z)for(d=e.length;d--;)S(e,d,c);else p(e,function(a){S(e,a,c)});return c.call(a,b,e)};d.parse=function(a,b){var c,d;return L=0,M=""+a,c=R(Q()),"$"!=Q()&&P(),L=M=null,b&&s.call(b)==v?T((d={},d[""]=c,d),"",b):c}}}return d.runInContext=a,d}var b="function"==typeof define&&define.amd,c={"function":!0,object:!0},d=c[typeof exports]&&exports&&!exports.nodeType&&exports,e=c[typeof window]&&window||this,f=d&&c[typeof module]&&module&&!module.nodeType&&"object"==typeof global&&global;if(!f||f.global!==f&&f.window!==f&&f.self!==f||(e=f),d&&!b)a(e,d);else{var g=e.JSON,h=e.JSON3,i=!1,j=a(e,e.JSON3={noConflict:function(){return i||(i=!0,e.JSON=g,e.JSON3=h,g=h=null),j}});e.JSON={parse:j.parse,stringify:j.stringify}}b&&define(function(){return j})}.call(this); \ No newline at end of file diff --git a/dist/scripts/scripts.bc77e49c.js b/dist/scripts/scripts.bc77e49c.js deleted file mode 100644 index 32c3bcc..0000000 --- a/dist/scripts/scripts.bc77e49c.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";angular.module("cardkitApp",["ngAnimate","ngCookies","ngResource","ngRoute","ngSanitize","ngTouch","colorpicker.module","draganddrop","colorpicker.module","ui.router"]).config(["$stateProvider","$urlRouterProvider",function(a,b){b.otherwise("/"),a.state("index",{url:"/",controller:"MainCtrl",templateUrl:"views/main.html",resolve:{themeConfig:["themeConfigProvider",function(a){return a}]}})}]),angular.module("cardkitApp").controller("MainCtrl",["$scope","$filter","saveSvgAsPng","themeConfig",function(a,b,c,d){function e(){a.defaultConfig=angular.copy(a.config),a.$broadcast("resetSvg")}function f(b,c){var d=new FileReader;d.onload=function(){a.config.svg.elements[c].src=d.result,a.$apply()},d.readAsDataURL(b)}function g(a){return a.stopPropagation(),a.preventDefault(),a.dataTransfer||null}function h(a){return a.toString().toLowerCase().replace(/\s+/g,"-").replace(/[^\w\-]+/g,"").replace(/\-\-+/g,"-").replace(/^-+/,"").replace(/-+$/,"")}function i(){var c=[];angular.forEach(a.config.svg.elements,function(a){c.push(a)});var d=b("filter")(c,{useAsFilename:!0,type:"text"},!0)[0],e="image.png";return d&&(e=h(d.text)+".png"),e}if(a.config={sizes:[{name:"Facebook",width:800,height:370,"default":!0},{name:"Twitter",width:650,height:320},{name:"Video",width:640,height:360}],themes:d,output:{scale:2,editable:{scale:!0}},svg:{canvas:{height:function(){return a.size.height},width:function(){return a.size.width},fill:"transparent"},elements:{background:{name:"Background Colour",type:"rect",height:function(){return a.size.height},width:function(){return a.size.width},fill:function(){return a.theme.background},editable:{fill:"picker"}},image:{name:"Image",type:"image",width:600,height:function(){return this.width},src:"",opacity:1,x:"0%",y:"0%",preserveAspectRatio:"xMinYMin meet",draggable:!0,defaultFilter:"",editable:{src:!0,width:!0,opacity:!0,filters:["Sepia","Grayscale","Saturate","Invert","Blur"]}},logo:{name:"Logo",type:"image",width:150,height:function(){return this.width/4},opacity:1,src:function(){return a.theme.logoSrc},x:20,y:function(){return a.size.height-58},preserveAspectRatio:"xMinYMin meet",editable:{src:{Blue:"data:image/png;base64,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",Dark:"data:image/png;base64,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",White:"data:image/png;base64,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"},width:!0},draggable:{x:!1,y:!0},showHoverArea:!0},headline:{name:"Headline",type:"text",text:"CardKit is a powerful, configurable\nimage editor, that can be run right\ninside your web browser.",fill:function(){return a.theme.quote -},fontSize:40,fontFamily:function(){return a.theme.headlineFont},fontWeight:300,lineHeight:function(){return 1.3*this.fontSize},textAnchor:"middle",x:"50%",y:75,draggable:!0,showHoverArea:!0,editable:{text:!0,fill:"picker",textAnchor:!0,fontSize:{"Small (18px)":18,"Medium (26px)":26,"Large (32px)":32,"Extra Large (40px)":40}}},subtext:{name:"Subtext",type:"text",text:"Created by The Times of London\nAvailable on GitHub at github.com/times/cardkit",fill:function(){return a.theme.quote},fontSize:18,lineHeight:22,fontWeight:300,fontFamily:function(){return a.theme.headlineFont},textAnchor:"middle",x:"50%",yAttach:{element:"headline"},draggable:!0,showHoverArea:!0,editable:{text:!0,fontSize:{"Small (12px)":12,"Medium (18px)":18,"Large (22px)":22,"Extra Large (36px)":36},fill:"picker",textAnchor:!0}}}}},"undefined"!=typeof a.config.themes){var j=b("filter")(a.config.themes,{"default":!0},!0)[0];a.theme=j?j:a.config.themes.length>1?null:a.config.themes[0]}var k=b("filter")(a.config.sizes,{"default":!0},!0)[0];a.size=k?k:a.config.sizes.length>1?null:a.config.sizes[0],a.$watch("theme",function(){a.$broadcast("changeTheme"),e()}),a.$watch("size",function(){a.$broadcast("changeSize"),e()}),a.resetSvg=function(){a.config.svg=a.defaultConfig.svg,e()},a.onDrop=function(a,b,c){var d=g(b);f(d.files[0],c)},a.fileChanged=function(a){f(angular.element(a)[0].files[0],angular.element(a).data("key"))},a.removeImage=function(b){a.config.svg.elements[b].src=""},a.downloadSvg=function(){var b=i();c(document.getElementById("snap-svg"),b,{scale:a.config.output.scale})}}]),angular.module("cardkitApp").service("snapSVG",["$window",function(a){return a.Snap}]),angular.module("cardkitApp").directive("snapSvg",["snapSVG",function(a){return{template:'',restrict:"E",scope:{svgConfig:"=",svgTheme:"="},link:function(b,c){function d(a){var b={};for(var c in a)switch(typeof a[c]){case"function":b[c]=a[c]();break;default:b[c]=a[c]}return b}function e(a,b){for(var c="",d=document.styleSheets,e=0;e0){var k=b?b(i.selectorText):i.selectorText;c+=k+" { "+i.style.cssText+" }\n"}else i.cssText.match(/^@font-face/)&&(c+=i.cssText+"\n")}catch(l){}}}return c}function f(a){return a&&0===a.lastIndexOf("http",0)&&-1===a.lastIndexOf(window.location.host)}function g(){r={Sepia:m.paper.filter(a.filter.sepia(1)).attr({width:4*p.width+"px",height:4*p.height+"px"}),Grayscale:m.paper.filter(a.filter.grayscale(1)).attr({width:4*p.width+"px",height:4*p.height+"px"}),Saturate:m.paper.filter(a.filter.saturate(.5)).attr({width:4*p.width+"px",height:4*p.height+"px"}),Invert:m.paper.filter(a.filter.invert(1)).attr({width:4*p.width+"px",height:4*p.height+"px"}),Blur:m.paper.filter(a.filter.blur(4,4)).attr({width:4*p.width+"px",height:4*p.height+"px"})}}function h(a){var c;if(a.yAttach){if(angular.isObject(a.yAttach))var e=b.svgConfig.elements[a.yAttach.element],f=a.yAttach.offset||0;else var e=b.svgConfig.elements[a.yAttach],f=0;var g,j=e.text.split("\n"),k=e.y;switch(typeof e.lineHeight){case"function":g=e.lineHeight();break;default:g=e.lineHeight}var l=j.length*(g||e.fontSize)+k+f;a.y=l}switch(a=d(a),a.type){case"text":c=m.text(a.x,a.y);break;case"image":c=m.image(a.src,a.x,a.y,a.width,a.height);break;case"rect":c=m.rect(a.x,a.y,a.width,a.height,0,0);break;case"circle":break;case"group":var n;c="",angular.forEach(a.elements,function(a,b){n=h(a),i(n,a),0===b?c=m.group(n):c.group(n)});break;default:return!1}return"undefined"!=typeof a.defaultFilter&&c.attr(""!==a.defaultFilter?{filter:r[a.defaultFilter]}:{filter:""}),c}function i(a,b){var c=d(b),e=c;return delete e.$$hashKey,"text"===e.type&&(e.text=e.text.split("\n")),angular.isObject(e.draggable)&&(e.draggablex=e.draggable.x,e.draggabley=e.draggable.y),a.attr(e),"text"===e.type&&a.selectAll("tspan").forEach(function(a,b){a.attr({x:e.x,y:e.y+(e.lineHeight||e.fontSize)*b})}),a}function j(){var a=d(b.svgConfig.canvas);m.attr({viewBox:"0, 0, "+a.width+", "+a.height,"data-width":a.width,"data-height":a.height}),i(q,b.svgConfig.canvas);var c;angular.forEach(b.svgConfig.elements,function(a,d){if("undefined"!=typeof t[d]){s=t[d],c=s.matrix;var e=h(b.svgConfig.elements[d]);if(e===!1)return;if(s.after(e),e.transform(c),s.remove(),s=e,t[d]=s,"g"===s.type){if(c=s.matrix,s.remove(),s=h(b.svgConfig.elements[d]),s===!1)return;s.transform(c),t[d]=s}}else{if(s=h(a),s===!1)return;t[d]=s}a.draggable&&s.hover(function(){if(!m.elementDragging&&a.showHoverArea){var b=this.getBBox();this.hoverRect=m.rect(b.x,b.y,b.width,b.height,0,0).attr({fill:"rgba(0, 0, 0, 0.05)"}),this.before(this.hoverRect)}},function(){!m.elementDragging&&a.showHoverArea&&this.hoverRect&&this.hoverRect.remove()});var f=a;delete f.$$hashKey,i(s,a),a.draggable&&(s.undrag(),angular.isObject(a.draggable)?s.altDrag(a.draggable.x,a.draggable.y):s.altDrag(!0,!0))})}function k(){var a=m.selectAll("*");angular.forEach(a,function(a){a.transform("")})}var l=angular.fromJson(b.svgConfig);a.plugin(function(a,b){b.prototype.altDrag=function(a,b){return a&&b?this.drag(d,c,g):a&&!b?this.drag(e,c,g):!a&&b&&this.drag(f,c,g),this};var c=function(){this.data("ot",this.transform().local),m.elementDragging=!0},d=function(a,b){var c,d,e=this.transform().diffMatrix.invert();e.e=e.f=0,c=e.x(a,b),d=e.y(a,b),this.transform(this.data("ot")+"t"+[c,d]),this.hoverRect&&this.hoverRect.transform("t"+[0,0]+"t"+[c,d])},e=function(a,b){var c,d,e=this.transform().diffMatrix.invert();e.e=e.f=0,c=e.x(a,b),d=e.y(a,b),this.transform(this.data("ot")+"t"+[c,0]),this.hoverRect&&this.hoverRect.transform("t"+[0,0]+"t"+[c,0])},f=function(a,b){var c,d,e=this.transform().diffMatrix.invert();e.e=e.f=0,c=e.x(a,b),d=e.y(a,b),this.transform(this.data("ot")+"t"+[0,d]),this.hoverRect&&this.hoverRect.transform("t"+[0,0]+"t"+[0,d])},g=function(){if(m.elementDragging=!1,this.hoverRect){var a=this.hoverRect.getBBox();this.hoverRect.remove(),this.hoverRect=m.rect(a.x,a.y,a.width,a.height,0,0).attr({fill:"rgba(0, 0, 0, 0.05)"}),this.before(this.hoverRect)}}});var m=a(c[0].children[0]);m.attr({height:"100%",width:"100%"});var n=m.paper.el("style",{type:"text/css"}),o=e(m.node);n.node.innerHTML=o,n.toDefs();var p=d(l.canvas),q=m.rect(0,0,p.width,p.height,0,0).attr(p);p.draggable===!0&&q.altDrag(!0,!0);var r;g();var s,t={};b.$watch("svgConfig",j,!0),b.$on("changeTheme",j),b.$on("changeSize",j),b.$on("changeSize",g),b.$on("resetSvg",k)}}}]),angular.module("cardkitApp").service("saveSvgAsPng",["$window",function(a){return a.saveSvgAsPng}]),angular.module("cardkitApp").directive("fixedScroll",["$window",function(a){return function(b,c){var d=c.offset().top-20;angular.element(a).bind("scroll",function(){angular.element(a).scrollTop()>=d?c.addClass("fixed"):c.removeClass("fixed")})}}]),angular.module("cardkitApp").provider("themeConfigProvider",function(){return{$get:["$http","$q",function(a,b){var c=a.get("themes.config.json")["catch"](function(a){return 404===a.status?[]:b.reject(a)});return b.all([c]).then(function(a){return a[0].data})}]}}),angular.module("cardkitApp").directive("textEditor",function(){return{template:'
',restrict:"E",replace:!0,scope:{element:"="}}}),angular.module("cardkitApp").directive("fillEditor",function(){return{template:'
',restrict:"E",scope:{field:"=",element:"="}}}),angular.module("cardkitApp").directive("fontsizeEditor",function(){return{template:'
',restrict:"E",replace:!0,scope:{element:"=",field:"="}}}),angular.module("cardkitApp").directive("fontfamilyEditor",function(){return{template:'
',restrict:"E",replace:!0,scope:{element:"=",field:"="}}}),angular.module("cardkitApp").directive("imageEditor",function(){return{template:'
or select an image
',restrict:"E",scope:{key:"=",onDrop:"=",removeImage:"=",fileChanged:"=fileChanged",field:"=",element:"="},link:function(a){(""===a.element.src||"undefined"==typeof a.element.src)&&angular.isObject(a.field)&&(a.element.src=a.field[Object.keys(a.field)[0]])}}}),angular.module("cardkitApp").directive("sizeEditor",function(){return{template:'
',restrict:"E",replace:!0,scope:{element:"="}}}),angular.module("cardkitApp").directive("textanchorEditor",function(){return{template:'
',restrict:"E",replace:!0,scope:{element:"="}}}),angular.module("cardkitApp").directive("opacityEditor",function(){return{template:'
',restrict:"E",replace:!0,scope:{element:"=element"}}}),angular.module("cardkitApp").directive("filterEditor",function(){return{template:'
',replace:!0,restrict:"E",scope:{element:"=",filters:"="}}}); \ No newline at end of file diff --git a/dist/scripts/vendor.6afd2fbb.js b/dist/scripts/vendor.6afd2fbb.js deleted file mode 100644 index 3e3f9a0..0000000 --- a/dist/scripts/vendor.6afd2fbb.js +++ /dev/null @@ -1,11 +0,0 @@ -function draggableDirective(){return{restrict:"A",link:function(a,b,c){var d=b[0],e=c.effectAllowed,f=c.draggableData,g=c.draggableType,h="false"===c.draggable?!1:!0;d.draggable=h,h&&d.addEventListener("dragstart",function(b){b.dataTransfer.effectAllowed=e||b.dataTransfer.effectAllowed;var c=a.$eval(f),d=angular.toJson(c);b.dataTransfer.setData("json/"+g,d),b.stopPropagation()})}}}function dropDirective(a){return{restrict:"A",link:function(b,c,d){function e(a){return h(b.$eval(m),a)?(n&&c.addClass(n),a.dataTransfer.dropEffect=l||a.dataTransfer.dropEffect,b.$apply(function(){o(b,{$event:a})}),void a.preventDefault()):!0}function f(a){var c=i(a);g(),b.$apply(function(){p(b,{$data:c,$event:a})}),a.preventDefault()}function g(){c.removeClass(n)}function h(a,b){return"boolean"==typeof a?a:"string"==typeof a?h([a],b):Array.isArray(a)?h(function(b){return b.some(function(b){return-1!==a.indexOf(b)})},b):"function"==typeof a?a(j(b.dataTransfer.types)):!1}function i(a){var b=j(a.dataTransfer.types);return b.reduce(function(b,c){var d=a.dataTransfer.getData(c),e=/(.*)\//.exec(c);return e=e?e[1]:null,"json"===e&&(d=JSON.parse(d)),b[c]=d,b},{})}function j(a){return Array.prototype.slice.call(a)}var k=c[0],l=d.dropEffect,m=d.dropAccept,n=d.dragOverClass,o=a(d.dragOver),p=a(d.drop);k.addEventListener("dragover",e),k.addEventListener("drop",f),k.addEventListener("dragleave",g),b.$on("$destroy",function(){k.removeEventListener("dragover",e),k.removeEventListener("drop",f),k.removeEventListener("dragleave",g)})}}}!function(a,b){"object"==typeof module&&"object"==typeof module.exports?module.exports=a.document?b(a,!0):function(a){if(!a.document)throw new Error("jQuery requires a window with a document");return b(a)}:b(a)}("undefined"!=typeof window?window:this,function(a,b){function c(a){var b=a.length,c=_.type(a);return"function"===c||_.isWindow(a)?!1:1===a.nodeType&&b?!0:"array"===c||0===b||"number"==typeof b&&b>0&&b-1 in a}function d(a,b,c){if(_.isFunction(b))return _.grep(a,function(a,d){return!!b.call(a,d,a)!==c});if(b.nodeType)return _.grep(a,function(a){return a===b!==c});if("string"==typeof b){if(hb.test(b))return _.filter(b,a,c);b=_.filter(b,a)}return _.grep(a,function(a){return U.call(b,a)>=0!==c})}function e(a,b){for(;(a=a[b])&&1!==a.nodeType;);return a}function f(a){var b=ob[a]={};return _.each(a.match(nb)||[],function(a,c){b[c]=!0}),b}function g(){Z.removeEventListener("DOMContentLoaded",g,!1),a.removeEventListener("load",g,!1),_.ready()}function h(){Object.defineProperty(this.cache={},0,{get:function(){return{}}}),this.expando=_.expando+h.uid++}function i(a,b,c){var d;if(void 0===c&&1===a.nodeType)if(d="data-"+b.replace(ub,"-$1").toLowerCase(),c=a.getAttribute(d),"string"==typeof c){try{c="true"===c?!0:"false"===c?!1:"null"===c?null:+c+""===c?+c:tb.test(c)?_.parseJSON(c):c}catch(e){}sb.set(a,b,c)}else c=void 0;return c}function j(){return!0}function k(){return!1}function l(){try{return Z.activeElement}catch(a){}}function m(a,b){return _.nodeName(a,"table")&&_.nodeName(11!==b.nodeType?b:b.firstChild,"tr")?a.getElementsByTagName("tbody")[0]||a.appendChild(a.ownerDocument.createElement("tbody")):a}function n(a){return a.type=(null!==a.getAttribute("type"))+"/"+a.type,a}function o(a){var b=Kb.exec(a.type);return b?a.type=b[1]:a.removeAttribute("type"),a}function p(a,b){for(var c=0,d=a.length;d>c;c++)rb.set(a[c],"globalEval",!b||rb.get(b[c],"globalEval"))}function q(a,b){var c,d,e,f,g,h,i,j;if(1===b.nodeType){if(rb.hasData(a)&&(f=rb.access(a),g=rb.set(b,f),j=f.events)){delete g.handle,g.events={};for(e in j)for(c=0,d=j[e].length;d>c;c++)_.event.add(b,e,j[e][c])}sb.hasData(a)&&(h=sb.access(a),i=_.extend({},h),sb.set(b,i))}}function r(a,b){var c=a.getElementsByTagName?a.getElementsByTagName(b||"*"):a.querySelectorAll?a.querySelectorAll(b||"*"):[];return void 0===b||b&&_.nodeName(a,b)?_.merge([a],c):c}function s(a,b){var c=b.nodeName.toLowerCase();"input"===c&&yb.test(a.type)?b.checked=a.checked:("input"===c||"textarea"===c)&&(b.defaultValue=a.defaultValue)}function t(b,c){var d,e=_(c.createElement(b)).appendTo(c.body),f=a.getDefaultComputedStyle&&(d=a.getDefaultComputedStyle(e[0]))?d.display:_.css(e[0],"display");return e.detach(),f}function u(a){var b=Z,c=Ob[a];return c||(c=t(a,b),"none"!==c&&c||(Nb=(Nb||_("