Merge branch 'master' of https://bitbucket.org/acorbi/scopesessions.org
# Conflicts: # _posts/session/2018-11-08-077.markdown # _site/about/index.html # _site/artists/index.html # _site/feed.json # _site/feed.xml # _site/index.html # _site/newsletter_content/index.html # _site/session/2018/11/08/077.html # _site/video/index.html # _site/video_fullscreen/index.html
This commit is contained in:
commit
05cf48534a
179 changed files with 38719 additions and 32839 deletions
|
|
@ -11,6 +11,7 @@ fb_event_url: "https://www.facebook.com/events/1677297595709114/"
|
|||
fb_gallery_id:
|
||||
talks:
|
||||
- title: "Cyborgian Spaces"
|
||||
<<<<<<< HEAD
|
||||
topics: "cyborg, feminism, performance, installation"
|
||||
artist: "Kate Danyu Chen"
|
||||
speakers: "Kate Danyu Chen"
|
||||
|
|
@ -33,6 +34,25 @@ Mila Chiral is also one of the organizers of MEETUP Berlin, a new and growing co
|
|||
description: "Mila Chiral will talk about her music, her transdisciplinary artworks and collaborations. In selected examples she will give an insight to her artistic approach and techniques, including her artistic background from dance/choreography to electronic music and interdisciplinary art forms such as digital arts. At the end of the talk, Mila Chiral will show as a premiere the brand-new video directed by Faulty Agatha by Was Deferenz to her track 'Stars & Flowers' from the album 'WHERE TIME MEETS SPACE' (2017)."
|
||||
artist_website: "https://www.milachiral.de"
|
||||
media_artist_url: "/images/chiral.jpg"
|
||||
=======
|
||||
topics: "CYborg"
|
||||
artist: "Kate Danyu Chen"
|
||||
speakers: "Kate Danyu Chen"
|
||||
artist_bio: "Kate Danyu Chen is an artist and spatial designer currently based in Berlin. Her artistic practice focuses on corporeal and theoretical experiments of space. She incorporates media of drawing, installation, performance, text, and film, and is interested in translations between analog and digital processes. With a background in architecture, Kate's practice addresses body-politics of space, urban rituals of the everyday, and intersections of technology with the human body."
|
||||
description: "Currently, her research focuses on Donna Haraway’s post-humanist concept of the 'cyborg' as a synthesis of dualisms — human/machine, male/female, natural/artificial, virtual/real — to critically reconstruct an understanding of being and consciousness. She recently took part to the exhibition « Un_becoming: The Erotic, the Body & technology » in SomoS Art Gallery in the context of the Berlin Pornfilm Festival 2018 and presented there the Installation/Video piece «Offline Venus : Memories and myths of the Cyborg»."
|
||||
artist_website: "http://cyborg-archive.net/"
|
||||
media_artist_url: "/images/image_scope_kate.jpg"
|
||||
video_artist_url:
|
||||
talk_video_url:
|
||||
- title: "Four-Dimensional Sound Choreographies"
|
||||
topics: "Electronic music"
|
||||
artist: "Mila Chiral"
|
||||
speakers: "Mila Chiral"
|
||||
artist_bio: "Mila Chiral is a Berlin-based dancer-choreographer, electronic musician and DJ, who works in composing sounds and poetry as well as bodies and movements in time and space. She will talk about her music, her transdisciplinary artworks and collaborations. In selected examples she will give an insight to her artistic approach and techniques, including her artistic background from dance/choreography to electronic music and interdisciplinary art forms such as digital arts. At the end of the talk, Mila Chiral will show as a premiere the brandnew video directed by Faulty Agatha by Was Deferenz to her track 'Stars & Flowers' from the album 'WHERE TIME MEETS SPACE' (2017)."
|
||||
description: "Mila Chiral is part of minutektiv, a group of female* music producers from Berlin, and of the transdisciplinary art collective WAH (Weber / Anderson / Helschinger) in which she performs with dance, voice, acoustic soundscapes, electronic music, poetry and elements from visual arts, questioning the inherent relationship of existential and artistic freedom. Mila Chiral is also one of the organizers of MEETUP Berlin, a new and growing community of female-identifying, trans and non-binary artists in the fields of electronic music and arts and a member of female:pressure."
|
||||
artist_website: "https://www.milachiral.de"
|
||||
media_artist_url: "/images/mila_cheral.jpg"
|
||||
>>>>>>> 1f73d0f078cc399e14b6596f6e4862c4f84a2d0c
|
||||
video_artist_url:
|
||||
talk_video_url:
|
||||
---
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
|
|
@ -1,5 +0,0 @@
|
|||
Bootstrap uses [GitHub's Releases feature](https://github.com/blog/1547-release-your-software) for its changelogs.
|
||||
|
||||
See [the Releases section of our GitHub project](https://github.com/twbs/bootstrap/releases) for changelogs for each release version of Bootstrap.
|
||||
|
||||
Release announcement posts on [the official Bootstrap blog](http://blog.getbootstrap.com) contain summaries of the most noteworthy changes made in each release.
|
||||
6
_site/bower_components/bootstrap/Gemfile
vendored
6
_site/bower_components/bootstrap/Gemfile
vendored
|
|
@ -1,6 +0,0 @@
|
|||
source 'https://rubygems.org'
|
||||
|
||||
group :development, :test do
|
||||
gem 'jekyll', '~> 3.1.2'
|
||||
gem 'jekyll-sitemap', '~> 0.11.0'
|
||||
end
|
||||
43
_site/bower_components/bootstrap/Gemfile.lock
vendored
43
_site/bower_components/bootstrap/Gemfile.lock
vendored
|
|
@ -1,43 +0,0 @@
|
|||
GEM
|
||||
remote: https://rubygems.org/
|
||||
specs:
|
||||
addressable (2.4.0)
|
||||
colorator (0.1)
|
||||
ffi (1.9.14-x64-mingw32)
|
||||
jekyll (3.1.6)
|
||||
colorator (~> 0.1)
|
||||
jekyll-sass-converter (~> 1.0)
|
||||
jekyll-watch (~> 1.1)
|
||||
kramdown (~> 1.3)
|
||||
liquid (~> 3.0)
|
||||
mercenary (~> 0.3.3)
|
||||
rouge (~> 1.7)
|
||||
safe_yaml (~> 1.0)
|
||||
jekyll-sass-converter (1.4.0)
|
||||
sass (~> 3.4)
|
||||
jekyll-sitemap (0.11.0)
|
||||
addressable (~> 2.4.0)
|
||||
jekyll-watch (1.4.0)
|
||||
listen (~> 3.0, < 3.1)
|
||||
kramdown (1.11.1)
|
||||
liquid (3.0.6)
|
||||
listen (3.0.8)
|
||||
rb-fsevent (~> 0.9, >= 0.9.4)
|
||||
rb-inotify (~> 0.9, >= 0.9.7)
|
||||
mercenary (0.3.6)
|
||||
rb-fsevent (0.9.7)
|
||||
rb-inotify (0.9.7)
|
||||
ffi (>= 0.5.0)
|
||||
rouge (1.11.1)
|
||||
safe_yaml (1.0.4)
|
||||
sass (3.4.22)
|
||||
|
||||
PLATFORMS
|
||||
x64-mingw32
|
||||
|
||||
DEPENDENCIES
|
||||
jekyll (~> 3.1.2)
|
||||
jekyll-sitemap (~> 0.11.0)
|
||||
|
||||
BUNDLED WITH
|
||||
1.12.5
|
||||
86
_site/bower_components/bootstrap/Gruntfile.js
vendored
86
_site/bower_components/bootstrap/Gruntfile.js
vendored
|
|
@ -1,7 +1,7 @@
|
|||
/*!
|
||||
* Bootstrap's Gruntfile
|
||||
* http://getbootstrap.com
|
||||
* Copyright 2013-2016 Twitter, Inc.
|
||||
* Copyright 2013-2015 Twitter, Inc.
|
||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
||||
*/
|
||||
|
||||
|
|
@ -17,6 +17,7 @@ module.exports = function (grunt) {
|
|||
|
||||
var fs = require('fs');
|
||||
var path = require('path');
|
||||
var npmShrinkwrap = require('npm-shrinkwrap');
|
||||
var generateGlyphiconsData = require('./grunt/bs-glyphicons-data-generator.js');
|
||||
var BsLessdocParser = require('./grunt/bs-lessdoc-parser.js');
|
||||
var getLessVarsData = function () {
|
||||
|
|
@ -129,7 +130,7 @@ module.exports = function (grunt) {
|
|||
warnings: false
|
||||
},
|
||||
mangle: true,
|
||||
preserveComments: /^!|@preserve|@license|@cc_on/i
|
||||
preserveComments: 'some'
|
||||
},
|
||||
core: {
|
||||
src: '<%= concat.bootstrap.dest %>',
|
||||
|
|
@ -230,8 +231,6 @@ module.exports = function (grunt) {
|
|||
// and then simplify the fix for https://github.com/twbs/bootstrap/issues/14837 accordingly
|
||||
compatibility: 'ie8',
|
||||
keepSpecialComments: '*',
|
||||
sourceMap: true,
|
||||
sourceMapInlineSources: true,
|
||||
advanced: false
|
||||
},
|
||||
minifyCore: {
|
||||
|
|
@ -244,7 +243,6 @@ module.exports = function (grunt) {
|
|||
},
|
||||
docs: {
|
||||
src: [
|
||||
'docs/assets/css/ie10-viewport-bug-workaround.css',
|
||||
'docs/assets/css/src/pygments-manni.css',
|
||||
'docs/assets/css/src/docs.css'
|
||||
],
|
||||
|
|
@ -277,7 +275,7 @@ module.exports = function (grunt) {
|
|||
copy: {
|
||||
fonts: {
|
||||
expand: true,
|
||||
src: 'fonts/**',
|
||||
src: 'fonts/*',
|
||||
dest: 'dist/'
|
||||
},
|
||||
docs: {
|
||||
|
|
@ -301,9 +299,7 @@ module.exports = function (grunt) {
|
|||
|
||||
jekyll: {
|
||||
options: {
|
||||
bundleExec: true,
|
||||
config: '_config.yml',
|
||||
incremental: false
|
||||
config: '_config.yml'
|
||||
},
|
||||
docs: {},
|
||||
github: {
|
||||
|
|
@ -316,27 +312,12 @@ module.exports = function (grunt) {
|
|||
htmlmin: {
|
||||
dist: {
|
||||
options: {
|
||||
collapseBooleanAttributes: true,
|
||||
collapseWhitespace: true,
|
||||
conservativeCollapse: true,
|
||||
decodeEntities: false,
|
||||
minifyCSS: {
|
||||
compatibility: 'ie8',
|
||||
keepSpecialComments: 0
|
||||
},
|
||||
minifyCSS: true,
|
||||
minifyJS: true,
|
||||
minifyURLs: false,
|
||||
processConditionalComments: true,
|
||||
removeAttributeQuotes: true,
|
||||
removeComments: true,
|
||||
removeOptionalAttributes: true,
|
||||
removeOptionalTags: true,
|
||||
removeRedundantAttributes: true,
|
||||
removeScriptTypeAttributes: true,
|
||||
removeStyleLinkTypeAttributes: true,
|
||||
removeTagWhitespace: false,
|
||||
sortAttributes: true,
|
||||
sortClassName: true
|
||||
removeComments: true
|
||||
},
|
||||
expand: true,
|
||||
cwd: '_gh_pages',
|
||||
|
|
@ -348,17 +329,17 @@ module.exports = function (grunt) {
|
|||
}
|
||||
},
|
||||
|
||||
pug: {
|
||||
jade: {
|
||||
options: {
|
||||
pretty: true,
|
||||
data: getLessVarsData
|
||||
},
|
||||
customizerVars: {
|
||||
src: 'docs/_pug/customizer-variables.pug',
|
||||
src: 'docs/_jade/customizer-variables.jade',
|
||||
dest: 'docs/_includes/customizer-variables.html'
|
||||
},
|
||||
customizerNav: {
|
||||
src: 'docs/_pug/customizer-nav.pug',
|
||||
src: 'docs/_jade/customizer-nav.jade',
|
||||
dest: 'docs/_includes/nav/customize.html'
|
||||
}
|
||||
},
|
||||
|
|
@ -367,7 +348,7 @@ module.exports = function (grunt) {
|
|||
options: {
|
||||
ignore: [
|
||||
'Attribute "autocomplete" not allowed on element "button" at this point.',
|
||||
'Attribute "autocomplete" is only allowed when the input type is "color", "date", "datetime", "datetime-local", "email", "hidden", "month", "number", "password", "range", "search", "tel", "text", "time", "url", or "week".',
|
||||
'Attribute "autocomplete" not allowed on element "input" at this point.',
|
||||
'Element "img" is missing required attribute "src".'
|
||||
]
|
||||
},
|
||||
|
|
@ -389,6 +370,25 @@ module.exports = function (grunt) {
|
|||
}
|
||||
},
|
||||
|
||||
sed: {
|
||||
versionNumber: {
|
||||
pattern: (function () {
|
||||
var old = grunt.option('oldver');
|
||||
return old ? RegExp.quote(old) : old;
|
||||
})(),
|
||||
replacement: grunt.option('newver'),
|
||||
exclude: [
|
||||
'dist/fonts',
|
||||
'docs/assets',
|
||||
'fonts',
|
||||
'js/tests/vendor',
|
||||
'node_modules',
|
||||
'test-infra'
|
||||
],
|
||||
recursive: true
|
||||
}
|
||||
},
|
||||
|
||||
'saucelabs-qunit': {
|
||||
all: {
|
||||
options: {
|
||||
|
|
@ -483,11 +483,16 @@ module.exports = function (grunt) {
|
|||
// Default task.
|
||||
grunt.registerTask('default', ['clean:dist', 'copy:fonts', 'test']);
|
||||
|
||||
// Version numbering task.
|
||||
// grunt change-version-number --oldver=A.B.C --newver=X.Y.Z
|
||||
// This can be overzealous, so its changes should always be manually reviewed!
|
||||
grunt.registerTask('change-version-number', 'sed');
|
||||
|
||||
grunt.registerTask('build-glyphicons-data', function () { generateGlyphiconsData.call(this, grunt); });
|
||||
|
||||
// task for building customizer
|
||||
grunt.registerTask('build-customizer', ['build-customizer-html', 'build-raw-files']);
|
||||
grunt.registerTask('build-customizer-html', 'pug');
|
||||
grunt.registerTask('build-customizer-html', 'jade');
|
||||
grunt.registerTask('build-raw-files', 'Add scripts/less files to customizer.', function () {
|
||||
var banner = grunt.template.process('<%= banner %>');
|
||||
generateRawFiles(grunt, banner);
|
||||
|
|
@ -505,7 +510,22 @@ module.exports = function (grunt) {
|
|||
grunt.registerTask('docs-js', ['uglify:docsJs', 'uglify:customize']);
|
||||
grunt.registerTask('lint-docs-js', ['jshint:assets', 'jscs:assets']);
|
||||
grunt.registerTask('docs', ['docs-css', 'lint-docs-css', 'docs-js', 'lint-docs-js', 'clean:docs', 'copy:docs', 'build-glyphicons-data', 'build-customizer']);
|
||||
grunt.registerTask('docs-github', ['jekyll:github', 'htmlmin']);
|
||||
|
||||
grunt.registerTask('prep-release', ['dist', 'docs', 'docs-github', 'compress']);
|
||||
grunt.registerTask('prep-release', ['dist', 'docs', 'jekyll:github', 'htmlmin', 'compress']);
|
||||
|
||||
// Task for updating the cached npm packages used by the Travis build (which are controlled by test-infra/npm-shrinkwrap.json).
|
||||
// This task should be run and the updated file should be committed whenever Bootstrap's dependencies change.
|
||||
grunt.registerTask('update-shrinkwrap', ['exec:npmUpdate', '_update-shrinkwrap']);
|
||||
grunt.registerTask('_update-shrinkwrap', function () {
|
||||
var done = this.async();
|
||||
npmShrinkwrap({ dev: true, dirname: __dirname }, function (err) {
|
||||
if (err) {
|
||||
grunt.fail.warn(err);
|
||||
}
|
||||
var dest = 'test-infra/npm-shrinkwrap.json';
|
||||
fs.renameSync('npm-shrinkwrap.json', dest);
|
||||
grunt.log.writeln('File ' + dest.cyan + ' updated.');
|
||||
done();
|
||||
});
|
||||
});
|
||||
};
|
||||
|
|
|
|||
|
|
@ -1,22 +0,0 @@
|
|||
Before opening an issue:
|
||||
|
||||
- [Search for duplicate or closed issues](https://github.com/twbs/bootstrap/issues?utf8=%E2%9C%93&q=is%3Aissue)
|
||||
- [Validate](http://validator.w3.org/nu/) and [lint](https://github.com/twbs/bootlint#in-the-browser) any HTML to avoid common problems
|
||||
- Prepare a [reduced test case](https://css-tricks.com/reduced-test-cases/) for any bugs
|
||||
- Read the [contributing guidelines](https://github.com/twbs/bootstrap/blob/master/CONTRIBUTING.md)
|
||||
|
||||
When asking general "how to" questions:
|
||||
|
||||
- Please do not open an issue here
|
||||
- Instead, ask for help on [StackOverflow, IRC, or Slack](https://github.com/twbs/bootstrap/blob/master/README.md#community)
|
||||
|
||||
When reporting a bug, include:
|
||||
|
||||
- Operating system and version (Windows, Mac OS X, Android, iOS, Win10 Mobile)
|
||||
- Browser and version (Chrome, Firefox, Safari, IE, MS Edge, Opera 15+, Android Browser)
|
||||
- Reduced test cases and potential fixes using [JS Bin](https://jsbin.com)
|
||||
|
||||
When suggesting a feature, include:
|
||||
|
||||
- As much detail as possible for what we should add and why it's important to Bootstrap
|
||||
- Relevant links to prior art, screenshots, or live demos whenever possible
|
||||
2
_site/bower_components/bootstrap/LICENSE
vendored
2
_site/bower_components/bootstrap/LICENSE
vendored
|
|
@ -1,6 +1,6 @@
|
|||
The MIT License (MIT)
|
||||
|
||||
Copyright (c) 2011-2016 Twitter, Inc.
|
||||
Copyright (c) 2011-2015 Twitter, Inc
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
|
|
|
|||
77
_site/bower_components/bootstrap/README.md
vendored
77
_site/bower_components/bootstrap/README.md
vendored
|
|
@ -1,40 +1,36 @@
|
|||
# [Bootstrap](http://getbootstrap.com)
|
||||
|
||||
[](https://bootstrap-slack.herokuapp.com)
|
||||

|
||||
[](https://www.npmjs.com/package/bootstrap)
|
||||
[](https://travis-ci.org/twbs/bootstrap)
|
||||
[](https://david-dm.org/twbs/bootstrap#info=devDependencies)
|
||||
[](https://www.nuget.org/packages/Bootstrap)
|
||||
[](https://saucelabs.com/u/bootstrap)
|
||||
|
||||
Bootstrap is a sleek, intuitive, and powerful front-end framework for faster and easier web development, created by [Mark Otto](https://twitter.com/mdo) and [Jacob Thornton](https://twitter.com/fat), and maintained by the [core team](https://github.com/orgs/twbs/people) with the massive support and involvement of the community.
|
||||
|
||||
To get started, check out <http://getbootstrap.com>!
|
||||
|
||||
|
||||
## Table of contents
|
||||
|
||||
* [Quick start](#quick-start)
|
||||
* [Bugs and feature requests](#bugs-and-feature-requests)
|
||||
* [Documentation](#documentation)
|
||||
* [Contributing](#contributing)
|
||||
* [Community](#community)
|
||||
* [Versioning](#versioning)
|
||||
* [Creators](#creators)
|
||||
* [Copyright and license](#copyright-and-license)
|
||||
|
||||
- [Quick start](#quick-start)
|
||||
- [Bugs and feature requests](#bugs-and-feature-requests)
|
||||
- [Documentation](#documentation)
|
||||
- [Contributing](#contributing)
|
||||
- [Community](#community)
|
||||
- [Versioning](#versioning)
|
||||
- [Creators](#creators)
|
||||
- [Copyright and license](#copyright-and-license)
|
||||
|
||||
## Quick start
|
||||
|
||||
Several quick start options are available:
|
||||
|
||||
* [Download the latest release](https://github.com/twbs/bootstrap/archive/v3.3.7.zip).
|
||||
* Clone the repo: `git clone https://github.com/twbs/bootstrap.git`.
|
||||
* Install with [Bower](http://bower.io): `bower install bootstrap`.
|
||||
* Install with [npm](https://www.npmjs.com): `npm install bootstrap@3`.
|
||||
* Install with [Meteor](https://www.meteor.com): `meteor add twbs:bootstrap`.
|
||||
* Install with [Composer](https://getcomposer.org): `composer require twbs/bootstrap`.
|
||||
- [Download the latest release](https://github.com/twbs/bootstrap/archive/v3.3.5.zip).
|
||||
- Clone the repo: `git clone https://github.com/twbs/bootstrap.git`.
|
||||
- Install with [Bower](http://bower.io): `bower install bootstrap`.
|
||||
- Install with [npm](https://www.npmjs.com): `npm install bootstrap`.
|
||||
- Install with [Meteor](https://www.meteor.com): `meteor add twbs:bootstrap`.
|
||||
- Install with [Composer](https://getcomposer.org): `composer require twbs/bootstrap`.
|
||||
|
||||
Read the [Getting started page](http://getbootstrap.com/getting-started/) for information on the framework contents, templates and examples, and more.
|
||||
|
||||
|
|
@ -48,11 +44,9 @@ bootstrap/
|
|||
│ ├── bootstrap.css
|
||||
│ ├── bootstrap.css.map
|
||||
│ ├── bootstrap.min.css
|
||||
│ ├── bootstrap.min.css.map
|
||||
│ ├── bootstrap-theme.css
|
||||
│ ├── bootstrap-theme.css.map
|
||||
│ ├── bootstrap-theme.min.css
|
||||
│ └── bootstrap-theme.min.css.map
|
||||
│ └── bootstrap-theme.min.css
|
||||
├── js/
|
||||
│ ├── bootstrap.js
|
||||
│ └── bootstrap.min.js
|
||||
|
|
@ -67,12 +61,11 @@ bootstrap/
|
|||
We provide compiled CSS and JS (`bootstrap.*`), as well as compiled and minified CSS and JS (`bootstrap.min.*`). CSS [source maps](https://developer.chrome.com/devtools/docs/css-preprocessors) (`bootstrap.*.map`) are available for use with certain browsers' developer tools. Fonts from Glyphicons are included, as is the optional Bootstrap theme.
|
||||
|
||||
|
||||
|
||||
## Bugs and feature requests
|
||||
|
||||
Have a bug or a feature request? Please first read the [issue guidelines](https://github.com/twbs/bootstrap/blob/master/CONTRIBUTING.md#using-the-issue-tracker) and search for existing and closed issues. If your problem or idea is not addressed yet, [please open a new issue](https://github.com/twbs/bootstrap/issues/new).
|
||||
|
||||
Note that **feature requests must target [Bootstrap v4](https://github.com/twbs/bootstrap/tree/v4-dev),** because Bootstrap v3 is now in maintenance mode and is closed off to new features. This is so that we can focus our efforts on Bootstrap v4.
|
||||
|
||||
|
||||
## Documentation
|
||||
|
||||
|
|
@ -80,10 +73,11 @@ Bootstrap's documentation, included in this repo in the root directory, is built
|
|||
|
||||
### Running documentation locally
|
||||
|
||||
1. If necessary, [install Jekyll](http://jekyllrb.com/docs/installation) and other Ruby dependencies with `bundle install`.
|
||||
**Note for Windows users:** Read [this unofficial guide](http://jekyll-windows.juthilo.com/) to get Jekyll up and running without problems.
|
||||
2. From the root `/bootstrap` directory, run `bundle exec jekyll serve` in the command line.
|
||||
4. Open `http://localhost:9001` in your browser, and voilà.
|
||||
1. If necessary, [install Jekyll](http://jekyllrb.com/docs/installation) (requires v2.5.x).
|
||||
- **Windows users:** Read [this unofficial guide](http://jekyll-windows.juthilo.com/) to get Jekyll up and running without problems.
|
||||
2. Install the Ruby-based syntax highlighter, [Rouge](https://github.com/jneen/rouge), with `gem install rouge`.
|
||||
3. From the root `/bootstrap` directory, run `jekyll serve` in the command line.
|
||||
4. Open <http://localhost:9001> in your browser, and voilà.
|
||||
|
||||
Learn more about using Jekyll by reading its [documentation](http://jekyllrb.com/docs/home/).
|
||||
|
||||
|
|
@ -94,49 +88,50 @@ Documentation for v2.3.2 has been made available for the time being at <http://g
|
|||
[Previous releases](https://github.com/twbs/bootstrap/releases) and their documentation are also available for download.
|
||||
|
||||
|
||||
|
||||
## Contributing
|
||||
|
||||
Please read through our [contributing guidelines](https://github.com/twbs/bootstrap/blob/master/CONTRIBUTING.md). Included are directions for opening issues, coding standards, and notes on development.
|
||||
|
||||
Moreover, if your pull request contains JavaScript patches or features, you must include [relevant unit tests](https://github.com/twbs/bootstrap/tree/master/js/tests). All HTML and CSS should conform to the [Code Guide](https://github.com/mdo/code-guide), maintained by [Mark Otto](https://github.com/mdo).
|
||||
|
||||
**Bootstrap v3 is now closed off to new features.** It has gone into maintenance mode so that we can focus our efforts on [Bootstrap v4](https://github.com/twbs/bootstrap/tree/v4-dev), the future of the framework. Pull requests which add new features (rather than fix bugs) should target [Bootstrap v4 (the `v4-dev` git branch)](https://github.com/twbs/bootstrap/tree/v4-dev) instead.
|
||||
|
||||
Editor preferences are available in the [editor config](https://github.com/twbs/bootstrap/blob/master/.editorconfig) for easy use in common text editors. Read more and download plugins at <http://editorconfig.org>.
|
||||
|
||||
|
||||
|
||||
## Community
|
||||
|
||||
Get updates on Bootstrap's development and chat with the project maintainers and community members.
|
||||
|
||||
* Follow [@getbootstrap on Twitter](https://twitter.com/getbootstrap).
|
||||
* Read and subscribe to [The Official Bootstrap Blog](http://blog.getbootstrap.com).
|
||||
* Join [the official Slack room](https://bootstrap-slack.herokuapp.com).
|
||||
* Chat with fellow Bootstrappers in IRC. On the `irc.freenode.net` server, in the `##bootstrap` channel.
|
||||
* Implementation help may be found at Stack Overflow (tagged [`twitter-bootstrap-3`](https://stackoverflow.com/questions/tagged/twitter-bootstrap-3)).
|
||||
* Developers should use the keyword `bootstrap` on packages which modify or add to the functionality of Bootstrap when distributing through [npm](https://www.npmjs.com/browse/keyword/bootstrap) or similar delivery mechanisms for maximum discoverability.
|
||||
- Follow [@getbootstrap on Twitter](https://twitter.com/getbootstrap).
|
||||
- Read and subscribe to [The Official Bootstrap Blog](http://blog.getbootstrap.com).
|
||||
- Join [the official Slack room](https://bootstrap-slack.herokuapp.com).
|
||||
- Chat with fellow Bootstrappers in IRC. On the `irc.freenode.net` server, in the `##bootstrap` channel.
|
||||
- Implementation help may be found at Stack Overflow (tagged [`twitter-bootstrap-3`](https://stackoverflow.com/questions/tagged/twitter-bootstrap-3)).
|
||||
- Developers should use the keyword `bootstrap` on packages which modify or add to the functionality of Bootstrap when distributing through [npm](https://www.npmjs.com/browse/keyword/bootstrap) or similar delivery mechanisms for maximum discoverability.
|
||||
|
||||
|
||||
|
||||
## Versioning
|
||||
|
||||
For transparency into our release cycle and in striving to maintain backward compatibility, Bootstrap is maintained under [the Semantic Versioning guidelines](http://semver.org/). Sometimes we screw up, but we'll adhere to those rules whenever possible.
|
||||
|
||||
See [the Releases section of our GitHub project](https://github.com/twbs/bootstrap/releases) for changelogs for each release version of Bootstrap. Release announcement posts on [the official Bootstrap blog](http://blog.getbootstrap.com) contain summaries of the most noteworthy changes made in each release.
|
||||
|
||||
|
||||
## Creators
|
||||
|
||||
**Mark Otto**
|
||||
|
||||
* <https://twitter.com/mdo>
|
||||
* <https://github.com/mdo>
|
||||
- <https://twitter.com/mdo>
|
||||
- <https://github.com/mdo>
|
||||
|
||||
**Jacob Thornton**
|
||||
|
||||
* <https://twitter.com/fat>
|
||||
* <https://github.com/fat>
|
||||
- <https://twitter.com/fat>
|
||||
- <https://github.com/fat>
|
||||
|
||||
|
||||
|
||||
## Copyright and license
|
||||
|
||||
Code and documentation copyright 2011-2016 Twitter, Inc. Code released under [the MIT license](https://github.com/twbs/bootstrap/blob/master/LICENSE). Docs released under [Creative Commons](https://github.com/twbs/bootstrap/blob/master/docs/LICENSE).
|
||||
Code and documentation copyright 2011-2015 Twitter, Inc. Code released under [the MIT license](https://github.com/twbs/bootstrap/blob/master/LICENSE). Docs released under [Creative Commons](https://github.com/twbs/bootstrap/blob/master/docs/LICENSE).
|
||||
|
|
|
|||
2
_site/bower_components/bootstrap/bower.json
vendored
2
_site/bower_components/bootstrap/bower.json
vendored
|
|
@ -29,6 +29,6 @@
|
|||
"test-infra"
|
||||
],
|
||||
"dependencies": {
|
||||
"jquery": "1.9.1 - 3"
|
||||
"jquery": ">= 1.9.1"
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
/*!
|
||||
* Bootstrap v3.3.7 (http://getbootstrap.com)
|
||||
* Copyright 2011-2016 Twitter, Inc.
|
||||
* Bootstrap v3.3.5 (http://getbootstrap.com)
|
||||
* Copyright 2011-2015 Twitter, Inc.
|
||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
||||
*/
|
||||
.btn-default,
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
|
@ -1,6 +1,6 @@
|
|||
/*!
|
||||
* Bootstrap v3.3.7 (http://getbootstrap.com)
|
||||
* Copyright 2011-2016 Twitter, Inc.
|
||||
* Bootstrap v3.3.5 (http://getbootstrap.com)
|
||||
* Copyright 2011-2015 Twitter, Inc.
|
||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
||||
*/
|
||||
/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */
|
||||
|
|
@ -279,10 +279,10 @@ th {
|
|||
-moz-osx-font-smoothing: grayscale;
|
||||
}
|
||||
.glyphicon-asterisk:before {
|
||||
content: "\002a";
|
||||
content: "\2a";
|
||||
}
|
||||
.glyphicon-plus:before {
|
||||
content: "\002b";
|
||||
content: "\2b";
|
||||
}
|
||||
.glyphicon-euro:before,
|
||||
.glyphicon-eur:before {
|
||||
|
|
@ -1106,6 +1106,7 @@ a:focus {
|
|||
text-decoration: underline;
|
||||
}
|
||||
a:focus {
|
||||
outline: thin dotted;
|
||||
outline: 5px auto -webkit-focus-ring-color;
|
||||
outline-offset: -2px;
|
||||
}
|
||||
|
|
@ -2536,6 +2537,7 @@ select[size] {
|
|||
input[type="file"]:focus,
|
||||
input[type="radio"]:focus,
|
||||
input[type="checkbox"]:focus {
|
||||
outline: thin dotted;
|
||||
outline: 5px auto -webkit-focus-ring-color;
|
||||
outline-offset: -2px;
|
||||
}
|
||||
|
|
@ -2580,10 +2582,6 @@ output {
|
|||
.form-control::-webkit-input-placeholder {
|
||||
color: #999;
|
||||
}
|
||||
.form-control::-ms-expand {
|
||||
background-color: transparent;
|
||||
border: 0;
|
||||
}
|
||||
.form-control[disabled],
|
||||
.form-control[readonly],
|
||||
fieldset[disabled] .form-control {
|
||||
|
|
@ -2990,7 +2988,7 @@ select[multiple].input-lg {
|
|||
}
|
||||
@media (min-width: 768px) {
|
||||
.form-horizontal .form-group-lg .control-label {
|
||||
padding-top: 11px;
|
||||
padding-top: 14.333333px;
|
||||
font-size: 18px;
|
||||
}
|
||||
}
|
||||
|
|
@ -3027,6 +3025,7 @@ select[multiple].input-lg {
|
|||
.btn.focus,
|
||||
.btn:active.focus,
|
||||
.btn.active.focus {
|
||||
outline: thin dotted;
|
||||
outline: 5px auto -webkit-focus-ring-color;
|
||||
outline-offset: -2px;
|
||||
}
|
||||
|
|
@ -3097,6 +3096,9 @@ fieldset[disabled] a.btn {
|
|||
.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,
|
||||
|
|
@ -3105,7 +3107,13 @@ fieldset[disabled] .btn-default:hover,
|
|||
fieldset[disabled] .btn-default:focus,
|
||||
.btn-default.disabled.focus,
|
||||
.btn-default[disabled].focus,
|
||||
fieldset[disabled] .btn-default.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;
|
||||
}
|
||||
|
|
@ -3154,6 +3162,9 @@ fieldset[disabled] .btn-default.focus {
|
|||
.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,
|
||||
|
|
@ -3162,7 +3173,13 @@ fieldset[disabled] .btn-primary:hover,
|
|||
fieldset[disabled] .btn-primary:focus,
|
||||
.btn-primary.disabled.focus,
|
||||
.btn-primary[disabled].focus,
|
||||
fieldset[disabled] .btn-primary.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: #337ab7;
|
||||
border-color: #2e6da4;
|
||||
}
|
||||
|
|
@ -3211,6 +3228,9 @@ fieldset[disabled] .btn-primary.focus {
|
|||
.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,
|
||||
|
|
@ -3219,7 +3239,13 @@ fieldset[disabled] .btn-success:hover,
|
|||
fieldset[disabled] .btn-success:focus,
|
||||
.btn-success.disabled.focus,
|
||||
.btn-success[disabled].focus,
|
||||
fieldset[disabled] .btn-success.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;
|
||||
}
|
||||
|
|
@ -3268,6 +3294,9 @@ fieldset[disabled] .btn-success.focus {
|
|||
.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,
|
||||
|
|
@ -3276,7 +3305,13 @@ fieldset[disabled] .btn-info:hover,
|
|||
fieldset[disabled] .btn-info:focus,
|
||||
.btn-info.disabled.focus,
|
||||
.btn-info[disabled].focus,
|
||||
fieldset[disabled] .btn-info.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;
|
||||
}
|
||||
|
|
@ -3325,6 +3360,9 @@ fieldset[disabled] .btn-info.focus {
|
|||
.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,
|
||||
|
|
@ -3333,7 +3371,13 @@ fieldset[disabled] .btn-warning:hover,
|
|||
fieldset[disabled] .btn-warning:focus,
|
||||
.btn-warning.disabled.focus,
|
||||
.btn-warning[disabled].focus,
|
||||
fieldset[disabled] .btn-warning.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;
|
||||
}
|
||||
|
|
@ -3382,6 +3426,9 @@ fieldset[disabled] .btn-warning.focus {
|
|||
.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,
|
||||
|
|
@ -3390,7 +3437,13 @@ fieldset[disabled] .btn-danger:hover,
|
|||
fieldset[disabled] .btn-danger:focus,
|
||||
.btn-danger.disabled.focus,
|
||||
.btn-danger[disabled].focus,
|
||||
fieldset[disabled] .btn-danger.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;
|
||||
}
|
||||
|
|
@ -3764,7 +3817,6 @@ tbody.collapse.in {
|
|||
border-radius: 0;
|
||||
}
|
||||
.btn-group-vertical > .btn:first-child:not(:last-child) {
|
||||
border-top-left-radius: 4px;
|
||||
border-top-right-radius: 4px;
|
||||
border-bottom-right-radius: 0;
|
||||
border-bottom-left-radius: 0;
|
||||
|
|
@ -3772,7 +3824,6 @@ tbody.collapse.in {
|
|||
.btn-group-vertical > .btn:last-child:not(:first-child) {
|
||||
border-top-left-radius: 0;
|
||||
border-top-right-radius: 0;
|
||||
border-bottom-right-radius: 4px;
|
||||
border-bottom-left-radius: 4px;
|
||||
}
|
||||
.btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn {
|
||||
|
|
@ -3830,9 +3881,6 @@ tbody.collapse.in {
|
|||
width: 100%;
|
||||
margin-bottom: 0;
|
||||
}
|
||||
.input-group .form-control:focus {
|
||||
z-index: 3;
|
||||
}
|
||||
.input-group-lg > .form-control,
|
||||
.input-group-lg > .input-group-addon,
|
||||
.input-group-lg > .input-group-btn > .btn {
|
||||
|
|
@ -4744,7 +4792,7 @@ fieldset[disabled] .navbar-inverse .btn-link:focus {
|
|||
.pagination > li > span:hover,
|
||||
.pagination > li > a:focus,
|
||||
.pagination > li > span:focus {
|
||||
z-index: 2;
|
||||
z-index: 3;
|
||||
color: #23527c;
|
||||
background-color: #eee;
|
||||
border-color: #ddd;
|
||||
|
|
@ -4755,7 +4803,7 @@ fieldset[disabled] .navbar-inverse .btn-link:focus {
|
|||
.pagination > .active > span:hover,
|
||||
.pagination > .active > a:focus,
|
||||
.pagination > .active > span:focus {
|
||||
z-index: 3;
|
||||
z-index: 2;
|
||||
color: #fff;
|
||||
cursor: default;
|
||||
background-color: #337ab7;
|
||||
|
|
@ -4976,8 +5024,6 @@ a.badge:focus {
|
|||
}
|
||||
.container .jumbotron,
|
||||
.container-fluid .jumbotron {
|
||||
padding-right: 15px;
|
||||
padding-left: 15px;
|
||||
border-radius: 6px;
|
||||
}
|
||||
.jumbotron .container {
|
||||
|
|
@ -5932,6 +5978,7 @@ button.close {
|
|||
opacity: .5;
|
||||
}
|
||||
.modal-header {
|
||||
min-height: 16.42857143px;
|
||||
padding: 15px;
|
||||
border-bottom: 1px solid #e5e5e5;
|
||||
}
|
||||
|
|
@ -6324,7 +6371,6 @@ button.close {
|
|||
color: #fff;
|
||||
text-align: center;
|
||||
text-shadow: 0 1px 2px rgba(0, 0, 0, .6);
|
||||
background-color: rgba(0, 0, 0, 0);
|
||||
filter: alpha(opacity=50);
|
||||
opacity: .5;
|
||||
}
|
||||
|
|
@ -6438,16 +6484,16 @@ button.close {
|
|||
.carousel-control .icon-next {
|
||||
width: 30px;
|
||||
height: 30px;
|
||||
margin-top: -10px;
|
||||
margin-top: -15px;
|
||||
font-size: 30px;
|
||||
}
|
||||
.carousel-control .glyphicon-chevron-left,
|
||||
.carousel-control .icon-prev {
|
||||
margin-left: -10px;
|
||||
margin-left: -15px;
|
||||
}
|
||||
.carousel-control .glyphicon-chevron-right,
|
||||
.carousel-control .icon-next {
|
||||
margin-right: -10px;
|
||||
margin-right: -15px;
|
||||
}
|
||||
.carousel-caption {
|
||||
right: 20%;
|
||||
|
|
@ -6486,8 +6532,6 @@ button.close {
|
|||
.pager:after,
|
||||
.panel-body:before,
|
||||
.panel-body:after,
|
||||
.modal-header:before,
|
||||
.modal-header:after,
|
||||
.modal-footer:before,
|
||||
.modal-footer:after {
|
||||
display: table;
|
||||
|
|
@ -6507,7 +6551,6 @@ button.close {
|
|||
.navbar-collapse:after,
|
||||
.pager:after,
|
||||
.panel-body:after,
|
||||
.modal-header:after,
|
||||
.modal-footer:after {
|
||||
clear: both;
|
||||
}
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
|
@ -1,6 +1,6 @@
|
|||
/*!
|
||||
* Bootstrap v3.3.7 (http://getbootstrap.com)
|
||||
* Copyright 2011-2016 Twitter, Inc.
|
||||
* Bootstrap v3.3.5 (http://getbootstrap.com)
|
||||
* Copyright 2011-2015 Twitter, Inc.
|
||||
* Licensed under the MIT license
|
||||
*/
|
||||
|
||||
|
|
@ -11,16 +11,16 @@ if (typeof jQuery === 'undefined') {
|
|||
+function ($) {
|
||||
'use strict';
|
||||
var version = $.fn.jquery.split(' ')[0].split('.')
|
||||
if ((version[0] < 2 && version[1] < 9) || (version[0] == 1 && version[1] == 9 && version[2] < 1) || (version[0] > 3)) {
|
||||
throw new Error('Bootstrap\'s JavaScript requires jQuery version 1.9.1 or higher, but lower than version 4')
|
||||
if ((version[0] < 2 && version[1] < 9) || (version[0] == 1 && version[1] == 9 && version[2] < 1)) {
|
||||
throw new Error('Bootstrap\'s JavaScript requires jQuery version 1.9.1 or higher')
|
||||
}
|
||||
}(jQuery);
|
||||
|
||||
/* ========================================================================
|
||||
* Bootstrap: transition.js v3.3.7
|
||||
* Bootstrap: transition.js v3.3.5
|
||||
* http://getbootstrap.com/javascript/#transitions
|
||||
* ========================================================================
|
||||
* Copyright 2011-2016 Twitter, Inc.
|
||||
* Copyright 2011-2015 Twitter, Inc.
|
||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
||||
* ======================================================================== */
|
||||
|
||||
|
|
@ -77,10 +77,10 @@ if (typeof jQuery === 'undefined') {
|
|||
}(jQuery);
|
||||
|
||||
/* ========================================================================
|
||||
* Bootstrap: alert.js v3.3.7
|
||||
* Bootstrap: alert.js v3.3.5
|
||||
* http://getbootstrap.com/javascript/#alerts
|
||||
* ========================================================================
|
||||
* Copyright 2011-2016 Twitter, Inc.
|
||||
* Copyright 2011-2015 Twitter, Inc.
|
||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
||||
* ======================================================================== */
|
||||
|
||||
|
|
@ -96,7 +96,7 @@ if (typeof jQuery === 'undefined') {
|
|||
$(el).on('click', dismiss, this.close)
|
||||
}
|
||||
|
||||
Alert.VERSION = '3.3.7'
|
||||
Alert.VERSION = '3.3.5'
|
||||
|
||||
Alert.TRANSITION_DURATION = 150
|
||||
|
||||
|
|
@ -109,7 +109,7 @@ if (typeof jQuery === 'undefined') {
|
|||
selector = selector && selector.replace(/.*(?=#[^\s]*$)/, '') // strip for ie7
|
||||
}
|
||||
|
||||
var $parent = $(selector === '#' ? [] : selector)
|
||||
var $parent = $(selector)
|
||||
|
||||
if (e) e.preventDefault()
|
||||
|
||||
|
|
@ -172,10 +172,10 @@ if (typeof jQuery === 'undefined') {
|
|||
}(jQuery);
|
||||
|
||||
/* ========================================================================
|
||||
* Bootstrap: button.js v3.3.7
|
||||
* Bootstrap: button.js v3.3.5
|
||||
* http://getbootstrap.com/javascript/#buttons
|
||||
* ========================================================================
|
||||
* Copyright 2011-2016 Twitter, Inc.
|
||||
* Copyright 2011-2015 Twitter, Inc.
|
||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
||||
* ======================================================================== */
|
||||
|
||||
|
|
@ -192,7 +192,7 @@ if (typeof jQuery === 'undefined') {
|
|||
this.isLoading = false
|
||||
}
|
||||
|
||||
Button.VERSION = '3.3.7'
|
||||
Button.VERSION = '3.3.5'
|
||||
|
||||
Button.DEFAULTS = {
|
||||
loadingText: 'loading...'
|
||||
|
|
@ -214,10 +214,10 @@ if (typeof jQuery === 'undefined') {
|
|||
|
||||
if (state == 'loadingText') {
|
||||
this.isLoading = true
|
||||
$el.addClass(d).attr(d, d).prop(d, true)
|
||||
$el.addClass(d).attr(d, d)
|
||||
} else if (this.isLoading) {
|
||||
this.isLoading = false
|
||||
$el.removeClass(d).removeAttr(d).prop(d, false)
|
||||
$el.removeClass(d).removeAttr(d)
|
||||
}
|
||||
}, this), 0)
|
||||
}
|
||||
|
|
@ -281,15 +281,10 @@ if (typeof jQuery === 'undefined') {
|
|||
|
||||
$(document)
|
||||
.on('click.bs.button.data-api', '[data-toggle^="button"]', function (e) {
|
||||
var $btn = $(e.target).closest('.btn')
|
||||
var $btn = $(e.target)
|
||||
if (!$btn.hasClass('btn')) $btn = $btn.closest('.btn')
|
||||
Plugin.call($btn, 'toggle')
|
||||
if (!($(e.target).is('input[type="radio"], input[type="checkbox"]'))) {
|
||||
// Prevent double click on radios, and the double selections (so cancellation) on checkboxes
|
||||
e.preventDefault()
|
||||
// The target component still receive the focus
|
||||
if ($btn.is('input,button')) $btn.trigger('focus')
|
||||
else $btn.find('input:visible,button:visible').first().trigger('focus')
|
||||
}
|
||||
if (!($(e.target).is('input[type="radio"]') || $(e.target).is('input[type="checkbox"]'))) e.preventDefault()
|
||||
})
|
||||
.on('focus.bs.button.data-api blur.bs.button.data-api', '[data-toggle^="button"]', function (e) {
|
||||
$(e.target).closest('.btn').toggleClass('focus', /^focus(in)?$/.test(e.type))
|
||||
|
|
@ -298,10 +293,10 @@ if (typeof jQuery === 'undefined') {
|
|||
}(jQuery);
|
||||
|
||||
/* ========================================================================
|
||||
* Bootstrap: carousel.js v3.3.7
|
||||
* Bootstrap: carousel.js v3.3.5
|
||||
* http://getbootstrap.com/javascript/#carousel
|
||||
* ========================================================================
|
||||
* Copyright 2011-2016 Twitter, Inc.
|
||||
* Copyright 2011-2015 Twitter, Inc.
|
||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
||||
* ======================================================================== */
|
||||
|
||||
|
|
@ -329,7 +324,7 @@ if (typeof jQuery === 'undefined') {
|
|||
.on('mouseleave.bs.carousel', $.proxy(this.cycle, this))
|
||||
}
|
||||
|
||||
Carousel.VERSION = '3.3.7'
|
||||
Carousel.VERSION = '3.3.5'
|
||||
|
||||
Carousel.TRANSITION_DURATION = 600
|
||||
|
||||
|
|
@ -536,14 +531,13 @@ if (typeof jQuery === 'undefined') {
|
|||
}(jQuery);
|
||||
|
||||
/* ========================================================================
|
||||
* Bootstrap: collapse.js v3.3.7
|
||||
* Bootstrap: collapse.js v3.3.5
|
||||
* http://getbootstrap.com/javascript/#collapse
|
||||
* ========================================================================
|
||||
* Copyright 2011-2016 Twitter, Inc.
|
||||
* Copyright 2011-2015 Twitter, Inc.
|
||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
||||
* ======================================================================== */
|
||||
|
||||
/* jshint latedef: false */
|
||||
|
||||
+function ($) {
|
||||
'use strict';
|
||||
|
|
@ -567,7 +561,7 @@ if (typeof jQuery === 'undefined') {
|
|||
if (this.options.toggle) this.toggle()
|
||||
}
|
||||
|
||||
Collapse.VERSION = '3.3.7'
|
||||
Collapse.VERSION = '3.3.5'
|
||||
|
||||
Collapse.TRANSITION_DURATION = 350
|
||||
|
||||
|
|
@ -749,10 +743,10 @@ if (typeof jQuery === 'undefined') {
|
|||
}(jQuery);
|
||||
|
||||
/* ========================================================================
|
||||
* Bootstrap: dropdown.js v3.3.7
|
||||
* Bootstrap: dropdown.js v3.3.5
|
||||
* http://getbootstrap.com/javascript/#dropdowns
|
||||
* ========================================================================
|
||||
* Copyright 2011-2016 Twitter, Inc.
|
||||
* Copyright 2011-2015 Twitter, Inc.
|
||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
||||
* ======================================================================== */
|
||||
|
||||
|
|
@ -769,7 +763,7 @@ if (typeof jQuery === 'undefined') {
|
|||
$(element).on('click.bs.dropdown', this.toggle)
|
||||
}
|
||||
|
||||
Dropdown.VERSION = '3.3.7'
|
||||
Dropdown.VERSION = '3.3.5'
|
||||
|
||||
function getParent($this) {
|
||||
var selector = $this.attr('data-target')
|
||||
|
|
@ -801,7 +795,7 @@ if (typeof jQuery === 'undefined') {
|
|||
if (e.isDefaultPrevented()) return
|
||||
|
||||
$this.attr('aria-expanded', 'false')
|
||||
$parent.removeClass('open').trigger($.Event('hidden.bs.dropdown', relatedTarget))
|
||||
$parent.removeClass('open').trigger('hidden.bs.dropdown', relatedTarget)
|
||||
})
|
||||
}
|
||||
|
||||
|
|
@ -835,7 +829,7 @@ if (typeof jQuery === 'undefined') {
|
|||
|
||||
$parent
|
||||
.toggleClass('open')
|
||||
.trigger($.Event('shown.bs.dropdown', relatedTarget))
|
||||
.trigger('shown.bs.dropdown', relatedTarget)
|
||||
}
|
||||
|
||||
return false
|
||||
|
|
@ -915,10 +909,10 @@ if (typeof jQuery === 'undefined') {
|
|||
}(jQuery);
|
||||
|
||||
/* ========================================================================
|
||||
* Bootstrap: modal.js v3.3.7
|
||||
* Bootstrap: modal.js v3.3.5
|
||||
* http://getbootstrap.com/javascript/#modals
|
||||
* ========================================================================
|
||||
* Copyright 2011-2016 Twitter, Inc.
|
||||
* Copyright 2011-2015 Twitter, Inc.
|
||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
||||
* ======================================================================== */
|
||||
|
||||
|
|
@ -949,7 +943,7 @@ if (typeof jQuery === 'undefined') {
|
|||
}
|
||||
}
|
||||
|
||||
Modal.VERSION = '3.3.7'
|
||||
Modal.VERSION = '3.3.5'
|
||||
|
||||
Modal.TRANSITION_DURATION = 300
|
||||
Modal.BACKDROP_TRANSITION_DURATION = 150
|
||||
|
|
@ -1056,9 +1050,7 @@ if (typeof jQuery === 'undefined') {
|
|||
$(document)
|
||||
.off('focusin.bs.modal') // guard against infinite focus loop
|
||||
.on('focusin.bs.modal', $.proxy(function (e) {
|
||||
if (document !== e.target &&
|
||||
this.$element[0] !== e.target &&
|
||||
!this.$element.has(e.target).length) {
|
||||
if (this.$element[0] !== e.target && !this.$element.has(e.target).length) {
|
||||
this.$element.trigger('focus')
|
||||
}
|
||||
}, this))
|
||||
|
|
@ -1255,11 +1247,11 @@ if (typeof jQuery === 'undefined') {
|
|||
}(jQuery);
|
||||
|
||||
/* ========================================================================
|
||||
* Bootstrap: tooltip.js v3.3.7
|
||||
* Bootstrap: tooltip.js v3.3.5
|
||||
* http://getbootstrap.com/javascript/#tooltip
|
||||
* Inspired by the original jQuery.tipsy by Jason Frame
|
||||
* ========================================================================
|
||||
* Copyright 2011-2016 Twitter, Inc.
|
||||
* Copyright 2011-2015 Twitter, Inc.
|
||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
||||
* ======================================================================== */
|
||||
|
||||
|
|
@ -1282,7 +1274,7 @@ if (typeof jQuery === 'undefined') {
|
|||
this.init('tooltip', element, options)
|
||||
}
|
||||
|
||||
Tooltip.VERSION = '3.3.7'
|
||||
Tooltip.VERSION = '3.3.5'
|
||||
|
||||
Tooltip.TRANSITION_DURATION = 150
|
||||
|
||||
|
|
@ -1573,11 +1565,9 @@ if (typeof jQuery === 'undefined') {
|
|||
|
||||
function complete() {
|
||||
if (that.hoverState != 'in') $tip.detach()
|
||||
if (that.$element) { // TODO: Check whether guarding this code with this `if` is really necessary.
|
||||
that.$element
|
||||
.removeAttr('aria-describedby')
|
||||
.trigger('hidden.bs.' + that.type)
|
||||
}
|
||||
that.$element
|
||||
.removeAttr('aria-describedby')
|
||||
.trigger('hidden.bs.' + that.type)
|
||||
callback && callback()
|
||||
}
|
||||
|
||||
|
|
@ -1620,10 +1610,7 @@ if (typeof jQuery === 'undefined') {
|
|||
// width and height are missing in IE8, so compute them manually; see https://github.com/twbs/bootstrap/issues/14093
|
||||
elRect = $.extend({}, elRect, { width: elRect.right - elRect.left, height: elRect.bottom - elRect.top })
|
||||
}
|
||||
var isSvg = window.SVGElement && el instanceof window.SVGElement
|
||||
// Avoid using $.offset() on SVGs since it gives incorrect results in jQuery 3.
|
||||
// See https://github.com/twbs/bootstrap/issues/20280
|
||||
var elOffset = isBody ? { top: 0, left: 0 } : (isSvg ? null : $element.offset())
|
||||
var elOffset = isBody ? { top: 0, left: 0 } : $element.offset()
|
||||
var scroll = { scroll: isBody ? document.documentElement.scrollTop || document.body.scrollTop : $element.scrollTop() }
|
||||
var outerDims = isBody ? { width: $(window).width(), height: $(window).height() } : null
|
||||
|
||||
|
|
@ -1739,7 +1726,6 @@ if (typeof jQuery === 'undefined') {
|
|||
that.$tip = null
|
||||
that.$arrow = null
|
||||
that.$viewport = null
|
||||
that.$element = null
|
||||
})
|
||||
}
|
||||
|
||||
|
|
@ -1776,10 +1762,10 @@ if (typeof jQuery === 'undefined') {
|
|||
}(jQuery);
|
||||
|
||||
/* ========================================================================
|
||||
* Bootstrap: popover.js v3.3.7
|
||||
* Bootstrap: popover.js v3.3.5
|
||||
* http://getbootstrap.com/javascript/#popovers
|
||||
* ========================================================================
|
||||
* Copyright 2011-2016 Twitter, Inc.
|
||||
* Copyright 2011-2015 Twitter, Inc.
|
||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
||||
* ======================================================================== */
|
||||
|
||||
|
|
@ -1796,7 +1782,7 @@ if (typeof jQuery === 'undefined') {
|
|||
|
||||
if (!$.fn.tooltip) throw new Error('Popover requires tooltip.js')
|
||||
|
||||
Popover.VERSION = '3.3.7'
|
||||
Popover.VERSION = '3.3.5'
|
||||
|
||||
Popover.DEFAULTS = $.extend({}, $.fn.tooltip.Constructor.DEFAULTS, {
|
||||
placement: 'right',
|
||||
|
|
@ -1885,10 +1871,10 @@ if (typeof jQuery === 'undefined') {
|
|||
}(jQuery);
|
||||
|
||||
/* ========================================================================
|
||||
* Bootstrap: scrollspy.js v3.3.7
|
||||
* Bootstrap: scrollspy.js v3.3.5
|
||||
* http://getbootstrap.com/javascript/#scrollspy
|
||||
* ========================================================================
|
||||
* Copyright 2011-2016 Twitter, Inc.
|
||||
* Copyright 2011-2015 Twitter, Inc.
|
||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
||||
* ======================================================================== */
|
||||
|
||||
|
|
@ -1914,7 +1900,7 @@ if (typeof jQuery === 'undefined') {
|
|||
this.process()
|
||||
}
|
||||
|
||||
ScrollSpy.VERSION = '3.3.7'
|
||||
ScrollSpy.VERSION = '3.3.5'
|
||||
|
||||
ScrollSpy.DEFAULTS = {
|
||||
offset: 10
|
||||
|
|
@ -2058,10 +2044,10 @@ if (typeof jQuery === 'undefined') {
|
|||
}(jQuery);
|
||||
|
||||
/* ========================================================================
|
||||
* Bootstrap: tab.js v3.3.7
|
||||
* Bootstrap: tab.js v3.3.5
|
||||
* http://getbootstrap.com/javascript/#tabs
|
||||
* ========================================================================
|
||||
* Copyright 2011-2016 Twitter, Inc.
|
||||
* Copyright 2011-2015 Twitter, Inc.
|
||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
||||
* ======================================================================== */
|
||||
|
||||
|
|
@ -2078,7 +2064,7 @@ if (typeof jQuery === 'undefined') {
|
|||
// jscs:enable requireDollarBeforejQueryAssignment
|
||||
}
|
||||
|
||||
Tab.VERSION = '3.3.7'
|
||||
Tab.VERSION = '3.3.5'
|
||||
|
||||
Tab.TRANSITION_DURATION = 150
|
||||
|
||||
|
|
@ -2214,10 +2200,10 @@ if (typeof jQuery === 'undefined') {
|
|||
}(jQuery);
|
||||
|
||||
/* ========================================================================
|
||||
* Bootstrap: affix.js v3.3.7
|
||||
* Bootstrap: affix.js v3.3.5
|
||||
* http://getbootstrap.com/javascript/#affix
|
||||
* ========================================================================
|
||||
* Copyright 2011-2016 Twitter, Inc.
|
||||
* Copyright 2011-2015 Twitter, Inc.
|
||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
||||
* ======================================================================== */
|
||||
|
||||
|
|
@ -2243,7 +2229,7 @@ if (typeof jQuery === 'undefined') {
|
|||
this.checkPosition()
|
||||
}
|
||||
|
||||
Affix.VERSION = '3.3.7'
|
||||
Affix.VERSION = '3.3.5'
|
||||
|
||||
Affix.RESET = 'affix affix-top affix-bottom'
|
||||
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
|
|
@ -1,109 +0,0 @@
|
|||
#!/usr/bin/env node
|
||||
'use strict';
|
||||
|
||||
/* globals Set */
|
||||
/*!
|
||||
* Script to update version number references in the project.
|
||||
* Copyright 2015 Twitter, Inc.
|
||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
||||
*/
|
||||
var fs = require('fs');
|
||||
var path = require('path');
|
||||
var sh = require('shelljs');
|
||||
sh.config.fatal = true;
|
||||
var sed = sh.sed;
|
||||
|
||||
// Blame TC39... https://github.com/benjamingr/RegExp.escape/issues/37
|
||||
RegExp.quote = function (string) {
|
||||
return string.replace(/[-\\^$*+?.()|[\]{}]/g, '\\$&');
|
||||
};
|
||||
RegExp.quoteReplacement = function (string) {
|
||||
return string.replace(/[$]/g, '$$');
|
||||
};
|
||||
|
||||
var DRY_RUN = false;
|
||||
|
||||
function walkAsync(directory, excludedDirectories, fileCallback, errback) {
|
||||
if (excludedDirectories.has(path.parse(directory).base)) {
|
||||
return;
|
||||
}
|
||||
fs.readdir(directory, function (err, names) {
|
||||
if (err) {
|
||||
errback(err);
|
||||
return;
|
||||
}
|
||||
names.forEach(function (name) {
|
||||
var filepath = path.join(directory, name);
|
||||
fs.lstat(filepath, function (err, stats) {
|
||||
if (err) {
|
||||
process.nextTick(errback, err);
|
||||
return;
|
||||
}
|
||||
if (stats.isSymbolicLink()) {
|
||||
return;
|
||||
}
|
||||
else if (stats.isDirectory()) {
|
||||
process.nextTick(walkAsync, filepath, excludedDirectories, fileCallback, errback);
|
||||
}
|
||||
else if (stats.isFile()) {
|
||||
process.nextTick(fileCallback, filepath);
|
||||
}
|
||||
});
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
function replaceRecursively(directory, excludedDirectories, allowedExtensions, original, replacement) {
|
||||
original = new RegExp(RegExp.quote(original), 'g');
|
||||
replacement = RegExp.quoteReplacement(replacement);
|
||||
var updateFile = !DRY_RUN ? function (filepath) {
|
||||
if (allowedExtensions.has(path.parse(filepath).ext)) {
|
||||
sed('-i', original, replacement, filepath);
|
||||
}
|
||||
} : function (filepath) {
|
||||
if (allowedExtensions.has(path.parse(filepath).ext)) {
|
||||
console.log('FILE: ' + filepath);
|
||||
}
|
||||
else {
|
||||
console.log('EXCLUDED:' + filepath);
|
||||
}
|
||||
};
|
||||
walkAsync(directory, excludedDirectories, updateFile, function (err) {
|
||||
console.error('ERROR while traversing directory!:');
|
||||
console.error(err);
|
||||
process.exit(1);
|
||||
});
|
||||
}
|
||||
|
||||
function main(args) {
|
||||
if (args.length !== 2) {
|
||||
console.error('USAGE: change-version old_version new_version');
|
||||
console.error('Got arguments:', args);
|
||||
process.exit(1);
|
||||
}
|
||||
var oldVersion = args[0];
|
||||
var newVersion = args[1];
|
||||
var EXCLUDED_DIRS = new Set([
|
||||
'.git',
|
||||
'node_modules',
|
||||
'vendor'
|
||||
]);
|
||||
var INCLUDED_EXTENSIONS = new Set([
|
||||
// This extension whitelist is how we avoid modifying binary files
|
||||
'',
|
||||
'.css',
|
||||
'.html',
|
||||
'.js',
|
||||
'.json',
|
||||
'.less',
|
||||
'.md',
|
||||
'.nuspec',
|
||||
'.ps1',
|
||||
'.scss',
|
||||
'.txt',
|
||||
'.yml'
|
||||
]);
|
||||
replaceRecursively('.', EXCLUDED_DIRS, INCLUDED_EXTENSIONS, oldVersion, newVersion);
|
||||
}
|
||||
|
||||
main(process.argv.slice(2));
|
||||
|
|
@ -13,7 +13,7 @@
|
|||
"docsJs": [
|
||||
"../assets/js/vendor/holder.min.js",
|
||||
"../assets/js/vendor/ZeroClipboard.min.js",
|
||||
"../assets/js/vendor/anchor.min.js",
|
||||
"../assets/js/vendor/anchor.js",
|
||||
"../assets/js/src/application.js"
|
||||
]
|
||||
},
|
||||
|
|
@ -37,10 +37,10 @@
|
|||
"+function ($) {",
|
||||
" 'use strict';",
|
||||
" var version = $.fn.jquery.split(' ')[0].split('.')",
|
||||
" if ((version[0] < 2 && version[1] < 9) || (version[0] == 1 && version[1] == 9 && version[2] < 1) || (version[0] > 3)) {",
|
||||
" throw new Error('Bootstrap\\'s JavaScript requires jQuery version 1.9.1 or higher, but lower than version 4')",
|
||||
" if ((version[0] < 2 && version[1] < 9) || (version[0] == 1 && version[1] == 9 && version[2] < 1)) {",
|
||||
" throw new Error('Bootstrap\\'s JavaScript requires jQuery version 1.9.1 or higher')",
|
||||
" }",
|
||||
"}(jQuery);\n\n"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
2679
_site/bower_components/bootstrap/grunt/npm-shrinkwrap.json
generated
vendored
2679
_site/bower_components/bootstrap/grunt/npm-shrinkwrap.json
generated
vendored
File diff suppressed because it is too large
Load diff
|
|
@ -57,7 +57,7 @@
|
|||
{
|
||||
browserName: "iphone",
|
||||
platform: "OS X 10.10",
|
||||
version: "9.2"
|
||||
version: "8.2"
|
||||
},
|
||||
|
||||
# iOS Chrome not currently supported by Sauce Labs
|
||||
|
|
|
|||
6
_site/bower_components/bootstrap/js/affix.js
vendored
6
_site/bower_components/bootstrap/js/affix.js
vendored
|
|
@ -1,8 +1,8 @@
|
|||
/* ========================================================================
|
||||
* Bootstrap: affix.js v3.3.7
|
||||
* Bootstrap: affix.js v3.3.5
|
||||
* http://getbootstrap.com/javascript/#affix
|
||||
* ========================================================================
|
||||
* Copyright 2011-2016 Twitter, Inc.
|
||||
* Copyright 2011-2015 Twitter, Inc.
|
||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
||||
* ======================================================================== */
|
||||
|
||||
|
|
@ -28,7 +28,7 @@
|
|||
this.checkPosition()
|
||||
}
|
||||
|
||||
Affix.VERSION = '3.3.7'
|
||||
Affix.VERSION = '3.3.5'
|
||||
|
||||
Affix.RESET = 'affix affix-top affix-bottom'
|
||||
|
||||
|
|
|
|||
8
_site/bower_components/bootstrap/js/alert.js
vendored
8
_site/bower_components/bootstrap/js/alert.js
vendored
|
|
@ -1,8 +1,8 @@
|
|||
/* ========================================================================
|
||||
* Bootstrap: alert.js v3.3.7
|
||||
* Bootstrap: alert.js v3.3.5
|
||||
* http://getbootstrap.com/javascript/#alerts
|
||||
* ========================================================================
|
||||
* Copyright 2011-2016 Twitter, Inc.
|
||||
* Copyright 2011-2015 Twitter, Inc.
|
||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
||||
* ======================================================================== */
|
||||
|
||||
|
|
@ -18,7 +18,7 @@
|
|||
$(el).on('click', dismiss, this.close)
|
||||
}
|
||||
|
||||
Alert.VERSION = '3.3.7'
|
||||
Alert.VERSION = '3.3.5'
|
||||
|
||||
Alert.TRANSITION_DURATION = 150
|
||||
|
||||
|
|
@ -31,7 +31,7 @@
|
|||
selector = selector && selector.replace(/.*(?=#[^\s]*$)/, '') // strip for ie7
|
||||
}
|
||||
|
||||
var $parent = $(selector === '#' ? [] : selector)
|
||||
var $parent = $(selector)
|
||||
|
||||
if (e) e.preventDefault()
|
||||
|
||||
|
|
|
|||
21
_site/bower_components/bootstrap/js/button.js
vendored
21
_site/bower_components/bootstrap/js/button.js
vendored
|
|
@ -1,8 +1,8 @@
|
|||
/* ========================================================================
|
||||
* Bootstrap: button.js v3.3.7
|
||||
* Bootstrap: button.js v3.3.5
|
||||
* http://getbootstrap.com/javascript/#buttons
|
||||
* ========================================================================
|
||||
* Copyright 2011-2016 Twitter, Inc.
|
||||
* Copyright 2011-2015 Twitter, Inc.
|
||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
||||
* ======================================================================== */
|
||||
|
||||
|
|
@ -19,7 +19,7 @@
|
|||
this.isLoading = false
|
||||
}
|
||||
|
||||
Button.VERSION = '3.3.7'
|
||||
Button.VERSION = '3.3.5'
|
||||
|
||||
Button.DEFAULTS = {
|
||||
loadingText: 'loading...'
|
||||
|
|
@ -41,10 +41,10 @@
|
|||
|
||||
if (state == 'loadingText') {
|
||||
this.isLoading = true
|
||||
$el.addClass(d).attr(d, d).prop(d, true)
|
||||
$el.addClass(d).attr(d, d)
|
||||
} else if (this.isLoading) {
|
||||
this.isLoading = false
|
||||
$el.removeClass(d).removeAttr(d).prop(d, false)
|
||||
$el.removeClass(d).removeAttr(d)
|
||||
}
|
||||
}, this), 0)
|
||||
}
|
||||
|
|
@ -108,15 +108,10 @@
|
|||
|
||||
$(document)
|
||||
.on('click.bs.button.data-api', '[data-toggle^="button"]', function (e) {
|
||||
var $btn = $(e.target).closest('.btn')
|
||||
var $btn = $(e.target)
|
||||
if (!$btn.hasClass('btn')) $btn = $btn.closest('.btn')
|
||||
Plugin.call($btn, 'toggle')
|
||||
if (!($(e.target).is('input[type="radio"], input[type="checkbox"]'))) {
|
||||
// Prevent double click on radios, and the double selections (so cancellation) on checkboxes
|
||||
e.preventDefault()
|
||||
// The target component still receive the focus
|
||||
if ($btn.is('input,button')) $btn.trigger('focus')
|
||||
else $btn.find('input:visible,button:visible').first().trigger('focus')
|
||||
}
|
||||
if (!($(e.target).is('input[type="radio"]') || $(e.target).is('input[type="checkbox"]'))) e.preventDefault()
|
||||
})
|
||||
.on('focus.bs.button.data-api blur.bs.button.data-api', '[data-toggle^="button"]', function (e) {
|
||||
$(e.target).closest('.btn').toggleClass('focus', /^focus(in)?$/.test(e.type))
|
||||
|
|
|
|||
|
|
@ -1,8 +1,8 @@
|
|||
/* ========================================================================
|
||||
* Bootstrap: carousel.js v3.3.7
|
||||
* Bootstrap: carousel.js v3.3.5
|
||||
* http://getbootstrap.com/javascript/#carousel
|
||||
* ========================================================================
|
||||
* Copyright 2011-2016 Twitter, Inc.
|
||||
* Copyright 2011-2015 Twitter, Inc.
|
||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
||||
* ======================================================================== */
|
||||
|
||||
|
|
@ -30,7 +30,7 @@
|
|||
.on('mouseleave.bs.carousel', $.proxy(this.cycle, this))
|
||||
}
|
||||
|
||||
Carousel.VERSION = '3.3.7'
|
||||
Carousel.VERSION = '3.3.5'
|
||||
|
||||
Carousel.TRANSITION_DURATION = 600
|
||||
|
||||
|
|
|
|||
|
|
@ -1,12 +1,11 @@
|
|||
/* ========================================================================
|
||||
* Bootstrap: collapse.js v3.3.7
|
||||
* Bootstrap: collapse.js v3.3.5
|
||||
* http://getbootstrap.com/javascript/#collapse
|
||||
* ========================================================================
|
||||
* Copyright 2011-2016 Twitter, Inc.
|
||||
* Copyright 2011-2015 Twitter, Inc.
|
||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
||||
* ======================================================================== */
|
||||
|
||||
/* jshint latedef: false */
|
||||
|
||||
+function ($) {
|
||||
'use strict';
|
||||
|
|
@ -30,7 +29,7 @@
|
|||
if (this.options.toggle) this.toggle()
|
||||
}
|
||||
|
||||
Collapse.VERSION = '3.3.7'
|
||||
Collapse.VERSION = '3.3.5'
|
||||
|
||||
Collapse.TRANSITION_DURATION = 350
|
||||
|
||||
|
|
|
|||
10
_site/bower_components/bootstrap/js/dropdown.js
vendored
10
_site/bower_components/bootstrap/js/dropdown.js
vendored
|
|
@ -1,8 +1,8 @@
|
|||
/* ========================================================================
|
||||
* Bootstrap: dropdown.js v3.3.7
|
||||
* Bootstrap: dropdown.js v3.3.5
|
||||
* http://getbootstrap.com/javascript/#dropdowns
|
||||
* ========================================================================
|
||||
* Copyright 2011-2016 Twitter, Inc.
|
||||
* Copyright 2011-2015 Twitter, Inc.
|
||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
||||
* ======================================================================== */
|
||||
|
||||
|
|
@ -19,7 +19,7 @@
|
|||
$(element).on('click.bs.dropdown', this.toggle)
|
||||
}
|
||||
|
||||
Dropdown.VERSION = '3.3.7'
|
||||
Dropdown.VERSION = '3.3.5'
|
||||
|
||||
function getParent($this) {
|
||||
var selector = $this.attr('data-target')
|
||||
|
|
@ -51,7 +51,7 @@
|
|||
if (e.isDefaultPrevented()) return
|
||||
|
||||
$this.attr('aria-expanded', 'false')
|
||||
$parent.removeClass('open').trigger($.Event('hidden.bs.dropdown', relatedTarget))
|
||||
$parent.removeClass('open').trigger('hidden.bs.dropdown', relatedTarget)
|
||||
})
|
||||
}
|
||||
|
||||
|
|
@ -85,7 +85,7 @@
|
|||
|
||||
$parent
|
||||
.toggleClass('open')
|
||||
.trigger($.Event('shown.bs.dropdown', relatedTarget))
|
||||
.trigger('shown.bs.dropdown', relatedTarget)
|
||||
}
|
||||
|
||||
return false
|
||||
|
|
|
|||
10
_site/bower_components/bootstrap/js/modal.js
vendored
10
_site/bower_components/bootstrap/js/modal.js
vendored
|
|
@ -1,8 +1,8 @@
|
|||
/* ========================================================================
|
||||
* Bootstrap: modal.js v3.3.7
|
||||
* Bootstrap: modal.js v3.3.5
|
||||
* http://getbootstrap.com/javascript/#modals
|
||||
* ========================================================================
|
||||
* Copyright 2011-2016 Twitter, Inc.
|
||||
* Copyright 2011-2015 Twitter, Inc.
|
||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
||||
* ======================================================================== */
|
||||
|
||||
|
|
@ -33,7 +33,7 @@
|
|||
}
|
||||
}
|
||||
|
||||
Modal.VERSION = '3.3.7'
|
||||
Modal.VERSION = '3.3.5'
|
||||
|
||||
Modal.TRANSITION_DURATION = 300
|
||||
Modal.BACKDROP_TRANSITION_DURATION = 150
|
||||
|
|
@ -140,9 +140,7 @@
|
|||
$(document)
|
||||
.off('focusin.bs.modal') // guard against infinite focus loop
|
||||
.on('focusin.bs.modal', $.proxy(function (e) {
|
||||
if (document !== e.target &&
|
||||
this.$element[0] !== e.target &&
|
||||
!this.$element.has(e.target).length) {
|
||||
if (this.$element[0] !== e.target && !this.$element.has(e.target).length) {
|
||||
this.$element.trigger('focus')
|
||||
}
|
||||
}, this))
|
||||
|
|
|
|||
|
|
@ -1,8 +1,8 @@
|
|||
/* ========================================================================
|
||||
* Bootstrap: popover.js v3.3.7
|
||||
* Bootstrap: popover.js v3.3.5
|
||||
* http://getbootstrap.com/javascript/#popovers
|
||||
* ========================================================================
|
||||
* Copyright 2011-2016 Twitter, Inc.
|
||||
* Copyright 2011-2015 Twitter, Inc.
|
||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
||||
* ======================================================================== */
|
||||
|
||||
|
|
@ -19,7 +19,7 @@
|
|||
|
||||
if (!$.fn.tooltip) throw new Error('Popover requires tooltip.js')
|
||||
|
||||
Popover.VERSION = '3.3.7'
|
||||
Popover.VERSION = '3.3.5'
|
||||
|
||||
Popover.DEFAULTS = $.extend({}, $.fn.tooltip.Constructor.DEFAULTS, {
|
||||
placement: 'right',
|
||||
|
|
|
|||
|
|
@ -1,8 +1,8 @@
|
|||
/* ========================================================================
|
||||
* Bootstrap: scrollspy.js v3.3.7
|
||||
* Bootstrap: scrollspy.js v3.3.5
|
||||
* http://getbootstrap.com/javascript/#scrollspy
|
||||
* ========================================================================
|
||||
* Copyright 2011-2016 Twitter, Inc.
|
||||
* Copyright 2011-2015 Twitter, Inc.
|
||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
||||
* ======================================================================== */
|
||||
|
||||
|
|
@ -28,7 +28,7 @@
|
|||
this.process()
|
||||
}
|
||||
|
||||
ScrollSpy.VERSION = '3.3.7'
|
||||
ScrollSpy.VERSION = '3.3.5'
|
||||
|
||||
ScrollSpy.DEFAULTS = {
|
||||
offset: 10
|
||||
|
|
|
|||
6
_site/bower_components/bootstrap/js/tab.js
vendored
6
_site/bower_components/bootstrap/js/tab.js
vendored
|
|
@ -1,8 +1,8 @@
|
|||
/* ========================================================================
|
||||
* Bootstrap: tab.js v3.3.7
|
||||
* Bootstrap: tab.js v3.3.5
|
||||
* http://getbootstrap.com/javascript/#tabs
|
||||
* ========================================================================
|
||||
* Copyright 2011-2016 Twitter, Inc.
|
||||
* Copyright 2011-2015 Twitter, Inc.
|
||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
||||
* ======================================================================== */
|
||||
|
||||
|
|
@ -19,7 +19,7 @@
|
|||
// jscs:enable requireDollarBeforejQueryAssignment
|
||||
}
|
||||
|
||||
Tab.VERSION = '3.3.7'
|
||||
Tab.VERSION = '3.3.5'
|
||||
|
||||
Tab.TRANSITION_DURATION = 150
|
||||
|
||||
|
|
|
|||
20
_site/bower_components/bootstrap/js/tooltip.js
vendored
20
_site/bower_components/bootstrap/js/tooltip.js
vendored
|
|
@ -1,9 +1,9 @@
|
|||
/* ========================================================================
|
||||
* Bootstrap: tooltip.js v3.3.7
|
||||
* Bootstrap: tooltip.js v3.3.5
|
||||
* http://getbootstrap.com/javascript/#tooltip
|
||||
* Inspired by the original jQuery.tipsy by Jason Frame
|
||||
* ========================================================================
|
||||
* Copyright 2011-2016 Twitter, Inc.
|
||||
* Copyright 2011-2015 Twitter, Inc.
|
||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
||||
* ======================================================================== */
|
||||
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
this.init('tooltip', element, options)
|
||||
}
|
||||
|
||||
Tooltip.VERSION = '3.3.7'
|
||||
Tooltip.VERSION = '3.3.5'
|
||||
|
||||
Tooltip.TRANSITION_DURATION = 150
|
||||
|
||||
|
|
@ -317,11 +317,9 @@
|
|||
|
||||
function complete() {
|
||||
if (that.hoverState != 'in') $tip.detach()
|
||||
if (that.$element) { // TODO: Check whether guarding this code with this `if` is really necessary.
|
||||
that.$element
|
||||
.removeAttr('aria-describedby')
|
||||
.trigger('hidden.bs.' + that.type)
|
||||
}
|
||||
that.$element
|
||||
.removeAttr('aria-describedby')
|
||||
.trigger('hidden.bs.' + that.type)
|
||||
callback && callback()
|
||||
}
|
||||
|
||||
|
|
@ -364,10 +362,7 @@
|
|||
// width and height are missing in IE8, so compute them manually; see https://github.com/twbs/bootstrap/issues/14093
|
||||
elRect = $.extend({}, elRect, { width: elRect.right - elRect.left, height: elRect.bottom - elRect.top })
|
||||
}
|
||||
var isSvg = window.SVGElement && el instanceof window.SVGElement
|
||||
// Avoid using $.offset() on SVGs since it gives incorrect results in jQuery 3.
|
||||
// See https://github.com/twbs/bootstrap/issues/20280
|
||||
var elOffset = isBody ? { top: 0, left: 0 } : (isSvg ? null : $element.offset())
|
||||
var elOffset = isBody ? { top: 0, left: 0 } : $element.offset()
|
||||
var scroll = { scroll: isBody ? document.documentElement.scrollTop || document.body.scrollTop : $element.scrollTop() }
|
||||
var outerDims = isBody ? { width: $(window).width(), height: $(window).height() } : null
|
||||
|
||||
|
|
@ -483,7 +478,6 @@
|
|||
that.$tip = null
|
||||
that.$arrow = null
|
||||
that.$viewport = null
|
||||
that.$element = null
|
||||
})
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1,8 +1,8 @@
|
|||
/* ========================================================================
|
||||
* Bootstrap: transition.js v3.3.7
|
||||
* Bootstrap: transition.js v3.3.5
|
||||
* http://getbootstrap.com/javascript/#transitions
|
||||
* ========================================================================
|
||||
* Copyright 2011-2016 Twitter, Inc.
|
||||
* Copyright 2011-2015 Twitter, Inc.
|
||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
||||
* ======================================================================== */
|
||||
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
/*!
|
||||
* Bootstrap v3.3.7 (http://getbootstrap.com)
|
||||
* Copyright 2011-2016 Twitter, Inc.
|
||||
* Bootstrap v3.3.5 (http://getbootstrap.com)
|
||||
* Copyright 2011-2015 Twitter, Inc.
|
||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
||||
*/
|
||||
|
||||
|
|
|
|||
|
|
@ -59,7 +59,7 @@
|
|||
.border-right-radius(0);
|
||||
}
|
||||
}
|
||||
// Need .dropdown-toggle since :last-child doesn't apply, given that a .dropdown-menu is used immediately after it
|
||||
// Need .dropdown-toggle since :last-child doesn't apply given a .dropdown-menu immediately after it
|
||||
.btn-group > .btn:last-child:not(:first-child),
|
||||
.btn-group > .dropdown-toggle:not(:first-child) {
|
||||
.border-left-radius(0);
|
||||
|
|
@ -173,12 +173,12 @@
|
|||
border-radius: 0;
|
||||
}
|
||||
&:first-child:not(:last-child) {
|
||||
.border-top-radius(@btn-border-radius-base);
|
||||
border-top-right-radius: @btn-border-radius-base;
|
||||
.border-bottom-radius(0);
|
||||
}
|
||||
&:last-child:not(:first-child) {
|
||||
border-bottom-left-radius: @btn-border-radius-base;
|
||||
.border-top-radius(0);
|
||||
.border-bottom-radius(@btn-border-radius-base);
|
||||
}
|
||||
}
|
||||
.btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn {
|
||||
|
|
|
|||
|
|
@ -101,7 +101,6 @@
|
|||
color: @carousel-control-color;
|
||||
text-align: center;
|
||||
text-shadow: @carousel-text-shadow;
|
||||
background-color: rgba(0, 0, 0, 0); // Fix IE9 click-thru bug
|
||||
// We can't have this transition here because WebKit cancels the carousel
|
||||
// animation if you trip this while in the middle of another animation.
|
||||
|
||||
|
|
@ -241,18 +240,18 @@
|
|||
.glyphicon-chevron-right,
|
||||
.icon-prev,
|
||||
.icon-next {
|
||||
width: (@carousel-control-font-size * 1.5);
|
||||
height: (@carousel-control-font-size * 1.5);
|
||||
margin-top: (@carousel-control-font-size / -2);
|
||||
font-size: (@carousel-control-font-size * 1.5);
|
||||
width: 30px;
|
||||
height: 30px;
|
||||
margin-top: -15px;
|
||||
font-size: 30px;
|
||||
}
|
||||
.glyphicon-chevron-left,
|
||||
.icon-prev {
|
||||
margin-left: (@carousel-control-font-size / -2);
|
||||
margin-left: -15px;
|
||||
}
|
||||
.glyphicon-chevron-right,
|
||||
.icon-next {
|
||||
margin-right: (@carousel-control-font-size / -2);
|
||||
margin-right: -15px;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
14
_site/bower_components/bootstrap/less/forms.less
vendored
14
_site/bower_components/bootstrap/less/forms.less
vendored
|
|
@ -132,12 +132,6 @@ output {
|
|||
// Placeholder
|
||||
.placeholder();
|
||||
|
||||
// Unstyle the caret on `<select>`s in IE10+.
|
||||
&::-ms-expand {
|
||||
border: 0;
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
// Disabled and read-only inputs
|
||||
//
|
||||
// HTML5 says that controls under a fieldset > legend:first-child won't be
|
||||
|
|
@ -181,7 +175,7 @@ input[type="search"] {
|
|||
// set a pixel line-height that matches the given height of the input, but only
|
||||
// for Safari. See https://bugs.webkit.org/show_bug.cgi?id=139848
|
||||
//
|
||||
// Note that as of 9.3, iOS doesn't support `week`.
|
||||
// Note that as of 8.3, iOS doesn't support `datetime` or `week`.
|
||||
|
||||
@media screen and (-webkit-min-device-pixel-ratio: 0) {
|
||||
input[type="date"],
|
||||
|
|
@ -439,10 +433,10 @@ input[type="checkbox"] {
|
|||
.has-feedback label {
|
||||
|
||||
& ~ .form-control-feedback {
|
||||
top: (@line-height-computed + 5); // Height of the `label` and its margin
|
||||
top: (@line-height-computed + 5); // Height of the `label` and its margin
|
||||
}
|
||||
&.sr-only ~ .form-control-feedback {
|
||||
top: 0;
|
||||
top: 0;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -597,7 +591,7 @@ input[type="checkbox"] {
|
|||
.form-group-lg {
|
||||
@media (min-width: @screen-sm-min) {
|
||||
.control-label {
|
||||
padding-top: (@padding-large-vertical + 1);
|
||||
padding-top: ((@padding-large-vertical * @line-height-large) + 1);
|
||||
font-size: @font-size-large;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -32,8 +32,8 @@
|
|||
}
|
||||
|
||||
// Individual icons
|
||||
.glyphicon-asterisk { &:before { content: "\002a"; } }
|
||||
.glyphicon-plus { &:before { content: "\002b"; } }
|
||||
.glyphicon-asterisk { &:before { content: "\2a"; } }
|
||||
.glyphicon-plus { &:before { content: "\2b"; } }
|
||||
.glyphicon-euro,
|
||||
.glyphicon-eur { &:before { content: "\20ac"; } }
|
||||
.glyphicon-minus { &:before { content: "\2212"; } }
|
||||
|
|
|
|||
|
|
@ -29,10 +29,6 @@
|
|||
|
||||
width: 100%;
|
||||
margin-bottom: 0;
|
||||
|
||||
&:focus {
|
||||
z-index: 3;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -83,18 +79,18 @@
|
|||
text-align: center;
|
||||
background-color: @input-group-addon-bg;
|
||||
border: 1px solid @input-group-addon-border-color;
|
||||
border-radius: @input-border-radius;
|
||||
border-radius: @border-radius-base;
|
||||
|
||||
// Sizing
|
||||
&.input-sm {
|
||||
padding: @padding-small-vertical @padding-small-horizontal;
|
||||
font-size: @font-size-small;
|
||||
border-radius: @input-border-radius-small;
|
||||
border-radius: @border-radius-small;
|
||||
}
|
||||
&.input-lg {
|
||||
padding: @padding-large-vertical @padding-large-horizontal;
|
||||
font-size: @font-size-large;
|
||||
border-radius: @input-border-radius-large;
|
||||
border-radius: @border-radius-large;
|
||||
}
|
||||
|
||||
// Nuke default margins from checkboxes and radios to vertically center within.
|
||||
|
|
|
|||
|
|
@ -28,8 +28,6 @@
|
|||
.container &,
|
||||
.container-fluid & {
|
||||
border-radius: @border-radius-large; // Only round corners at higher resolutions if contained in a container
|
||||
padding-left: (@grid-gutter-width / 2);
|
||||
padding-right: (@grid-gutter-width / 2);
|
||||
}
|
||||
|
||||
.container {
|
||||
|
|
|
|||
|
|
@ -42,9 +42,12 @@
|
|||
&.disabled,
|
||||
&[disabled],
|
||||
fieldset[disabled] & {
|
||||
&,
|
||||
&:hover,
|
||||
&:focus,
|
||||
&.focus {
|
||||
&.focus,
|
||||
&:active,
|
||||
&.active {
|
||||
background-color: @background;
|
||||
border-color: @border;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -6,8 +6,8 @@
|
|||
.container-fixed(@gutter: @grid-gutter-width) {
|
||||
margin-right: auto;
|
||||
margin-left: auto;
|
||||
padding-left: floor((@gutter / 2));
|
||||
padding-right: ceil((@gutter / 2));
|
||||
padding-left: (@gutter / 2);
|
||||
padding-right: (@gutter / 2);
|
||||
&:extend(.clearfix all);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@
|
|||
//
|
||||
// Source: https://github.com/h5bp/html5-boilerplate/commit/aa0396eae757
|
||||
|
||||
// Deprecated as of v3.0.1 (has been removed in v4)
|
||||
// Deprecated as of v3.0.1 (will be removed in v4)
|
||||
.hide-text() {
|
||||
font: ~"0/0" a;
|
||||
color: transparent;
|
||||
|
|
|
|||
|
|
@ -1,9 +1,9 @@
|
|||
// WebKit-style focus
|
||||
|
||||
.tab-focus() {
|
||||
// WebKit-specific. Other browsers will keep their default outline style.
|
||||
// (Initially tried to also force default via `outline: initial`,
|
||||
// but that seems to erroneously remove the outline in Firefox altogether.)
|
||||
// Default
|
||||
outline: thin dotted;
|
||||
// WebKit
|
||||
outline: 5px auto -webkit-focus-ring-color;
|
||||
outline-offset: -2px;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
// Vendor Prefixes
|
||||
//
|
||||
// All vendor mixins are deprecated as of v3.2.0 due to the introduction of
|
||||
// Autoprefixer in our Gruntfile. They have been removed in v4.
|
||||
// Autoprefixer in our Gruntfile. They will be removed in v4.
|
||||
|
||||
// - Animations
|
||||
// - Backface visibility
|
||||
|
|
@ -54,7 +54,7 @@
|
|||
// Prevent browsers from flickering when using CSS 3D transforms.
|
||||
// Default value is `visible`, but can be changed to `hidden`
|
||||
|
||||
.backface-visibility(@visibility) {
|
||||
.backface-visibility(@visibility){
|
||||
-webkit-backface-visibility: @visibility;
|
||||
-moz-backface-visibility: @visibility;
|
||||
backface-visibility: @visibility;
|
||||
|
|
|
|||
|
|
@ -79,7 +79,7 @@
|
|||
.modal-header {
|
||||
padding: @modal-title-padding;
|
||||
border-bottom: 1px solid @modal-header-border-color;
|
||||
&:extend(.clearfix all);
|
||||
min-height: (@modal-title-padding + @modal-title-line-height);
|
||||
}
|
||||
// Close icon
|
||||
.modal-header .close {
|
||||
|
|
|
|||
|
|
@ -40,7 +40,7 @@
|
|||
> li > span {
|
||||
&:hover,
|
||||
&:focus {
|
||||
z-index: 2;
|
||||
z-index: 3;
|
||||
color: @pagination-hover-color;
|
||||
background-color: @pagination-hover-bg;
|
||||
border-color: @pagination-hover-border;
|
||||
|
|
@ -52,7 +52,7 @@
|
|||
&,
|
||||
&:hover,
|
||||
&:focus {
|
||||
z-index: 3;
|
||||
z-index: 2;
|
||||
color: @pagination-active-color;
|
||||
background-color: @pagination-active-bg;
|
||||
border-color: @pagination-active-border;
|
||||
|
|
|
|||
|
|
@ -214,7 +214,7 @@
|
|||
}
|
||||
|
||||
|
||||
// Collapsible panels (aka, accordion)
|
||||
// Collapsable panels (aka, accordion)
|
||||
//
|
||||
// Wrap a series of panels in `.panel-group` to turn them into an accordion with
|
||||
// the help of our collapse JavaScript plugin.
|
||||
|
|
|
|||
|
|
@ -120,7 +120,7 @@ hr {
|
|||
|
||||
// Only display content to screen readers
|
||||
//
|
||||
// See: http://a11yproject.com/posts/how-to-hide-content
|
||||
// See: http://a11yproject.com/posts/how-to-hide-content/
|
||||
|
||||
.sr-only {
|
||||
position: absolute;
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
/*!
|
||||
* Bootstrap v3.3.7 (http://getbootstrap.com)
|
||||
* Copyright 2011-2016 Twitter, Inc.
|
||||
* Bootstrap v3.3.5 (http://getbootstrap.com)
|
||||
* Copyright 2011-2015 Twitter, Inc.
|
||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
||||
*/
|
||||
|
||||
|
|
|
|||
|
|
@ -211,7 +211,7 @@ dd {
|
|||
&:extend(.clearfix all); // Clear the floated `dt` if an empty `dd` is present
|
||||
}
|
||||
|
||||
@media (min-width: @dl-horizontal-breakpoint) {
|
||||
@media (min-width: @grid-float-breakpoint) {
|
||||
dt {
|
||||
float: left;
|
||||
width: (@dl-horizontal-offset - 20);
|
||||
|
|
|
|||
|
|
@ -111,7 +111,7 @@
|
|||
//** Global background color for active items (e.g., navs or dropdowns).
|
||||
@component-active-bg: @brand-primary;
|
||||
|
||||
//** Width of the `border` for generating carets that indicate dropdowns.
|
||||
//** Width of the `border` for generating carets that indicator dropdowns.
|
||||
@caret-width-base: 4px;
|
||||
//** Carets increase slightly in size for larger components.
|
||||
@caret-width-large: 5px;
|
||||
|
|
@ -863,7 +863,5 @@
|
|||
@page-header-border-color: @gray-lighter;
|
||||
//** Width of horizontal description list titles
|
||||
@dl-horizontal-offset: @component-offset-horizontal;
|
||||
//** Point at which .dl-horizontal becomes horizontal
|
||||
@dl-horizontal-breakpoint: @grid-float-breakpoint;
|
||||
//** Horizontal line color.
|
||||
@hr-border: @gray-lighter;
|
||||
|
|
|
|||
|
|
@ -1,8 +0,0 @@
|
|||
$nuget = $env:NuGet
|
||||
|
||||
# parse the version number out of package.json
|
||||
$bsversion = ((Get-Content $env:SourcesPath\package.json) -join "`n" | ConvertFrom-Json).version
|
||||
|
||||
# create packages
|
||||
& $nuget pack "nuget\bootstrap.nuspec" -Verbosity detailed -NonInteractive -NoPackageAnalysis -BasePath $env:SourcesPath -Version $bsversion
|
||||
& $nuget pack "nuget\bootstrap.less.nuspec" -Verbosity detailed -NonInteractive -NoPackageAnalysis -BasePath $env:SourcesPath -Version $bsversion
|
||||
|
|
@ -1,28 +0,0 @@
|
|||
<?xml version="1.0"?>
|
||||
<package xmlns="http://schemas.microsoft.com/packaging/2011/08/nuspec.xsd">
|
||||
<metadata>
|
||||
<id>bootstrap.less</id>
|
||||
<version>3.3.7</version>
|
||||
<title>Bootstrap Less</title>
|
||||
<authors>Twitter, Inc.</authors>
|
||||
<owners>bootstrap</owners>
|
||||
<description>The most popular front-end framework for developing responsive, mobile first projects on the web.</description>
|
||||
<releaseNotes>http://blog.getbootstrap.com</releaseNotes>
|
||||
<summary>Bootstrap framework in Less. Includes fonts and JavaScript</summary>
|
||||
<language>en-us</language>
|
||||
<projectUrl>http://getbootstrap.com</projectUrl>
|
||||
<iconUrl>http://getbootstrap.com/apple-touch-icon.png</iconUrl>
|
||||
<licenseUrl>https://github.com/twbs/bootstrap/blob/master/LICENSE</licenseUrl>
|
||||
<copyright>Copyright 2016</copyright>
|
||||
<requireLicenseAcceptance>false</requireLicenseAcceptance>
|
||||
<dependencies>
|
||||
<dependency id="jQuery" version="[1.9.1,4)" />
|
||||
</dependencies>
|
||||
<tags>css js less mobile-first responsive front-end framework web</tags>
|
||||
</metadata>
|
||||
<files>
|
||||
<file src="less\**\*.less" target="content\Content\bootstrap" />
|
||||
<file src="fonts\*.*" target="content\Content\fonts" />
|
||||
<file src="dist\js\bootstrap*.js" target="content\Scripts" />
|
||||
</files>
|
||||
</package>
|
||||
|
|
@ -1,28 +0,0 @@
|
|||
<?xml version="1.0"?>
|
||||
<package xmlns="http://schemas.microsoft.com/packaging/2011/08/nuspec.xsd">
|
||||
<metadata>
|
||||
<id>bootstrap</id>
|
||||
<version>3.3.7</version>
|
||||
<title>Bootstrap CSS</title>
|
||||
<authors>Twitter, Inc.</authors>
|
||||
<owners>bootstrap</owners>
|
||||
<description>The most popular front-end framework for developing responsive, mobile first projects on the web.</description>
|
||||
<releaseNotes>http://blog.getbootstrap.com</releaseNotes>
|
||||
<summary>Bootstrap framework in CSS. Includes fonts and JavaScript</summary>
|
||||
<language>en-us</language>
|
||||
<projectUrl>http://getbootstrap.com</projectUrl>
|
||||
<iconUrl>http://getbootstrap.com/apple-touch-icon.png</iconUrl>
|
||||
<licenseUrl>https://github.com/twbs/bootstrap/blob/master/LICENSE</licenseUrl>
|
||||
<copyright>Copyright 2016</copyright>
|
||||
<requireLicenseAcceptance>false</requireLicenseAcceptance>
|
||||
<dependencies>
|
||||
<dependency id="jQuery" version="[1.9.1,4)" />
|
||||
</dependencies>
|
||||
<tags>css js less mobile-first responsive front-end framework web</tags>
|
||||
</metadata>
|
||||
<files>
|
||||
<file src="dist\css\*.*" target="content\Content" />
|
||||
<file src="dist\fonts\*.*" target="content\fonts" />
|
||||
<file src="dist\js\bootstrap*.js" target="content\Scripts" />
|
||||
</files>
|
||||
</package>
|
||||
13
_site/bower_components/bootstrap/package.js
vendored
13
_site/bower_components/bootstrap/package.js
vendored
|
|
@ -6,26 +6,19 @@
|
|||
Package.describe({
|
||||
name: 'twbs:bootstrap', // http://atmospherejs.com/twbs/bootstrap
|
||||
summary: 'The most popular front-end framework for developing responsive, mobile first projects on the web.',
|
||||
version: '3.3.7',
|
||||
version: '3.3.5',
|
||||
git: 'https://github.com/twbs/bootstrap.git'
|
||||
});
|
||||
|
||||
Package.onUse(function (api) {
|
||||
api.versionsFrom('METEOR@1.0');
|
||||
api.use('jquery', 'client');
|
||||
var assets = [
|
||||
api.addFiles([
|
||||
'dist/fonts/glyphicons-halflings-regular.eot',
|
||||
'dist/fonts/glyphicons-halflings-regular.svg',
|
||||
'dist/fonts/glyphicons-halflings-regular.ttf',
|
||||
'dist/fonts/glyphicons-halflings-regular.woff',
|
||||
'dist/fonts/glyphicons-halflings-regular.woff2'
|
||||
];
|
||||
if (api.addAssets) {
|
||||
api.addAssets(assets, 'client');
|
||||
} else {
|
||||
api.addFiles(assets, 'client', { isAsset: true });
|
||||
}
|
||||
api.addFiles([
|
||||
'dist/fonts/glyphicons-halflings-regular.woff2',
|
||||
'dist/css/bootstrap.css',
|
||||
'dist/js/bootstrap.js'
|
||||
], 'client');
|
||||
|
|
|
|||
58
_site/bower_components/bootstrap/package.json
vendored
58
_site/bower_components/bootstrap/package.json
vendored
|
|
@ -1,7 +1,7 @@
|
|||
{
|
||||
"name": "bootstrap",
|
||||
"description": "The most popular front-end framework for developing responsive, mobile first projects on the web.",
|
||||
"version": "3.3.7",
|
||||
"version": "3.3.5",
|
||||
"keywords": [
|
||||
"css",
|
||||
"less",
|
||||
|
|
@ -14,8 +14,6 @@
|
|||
"homepage": "http://getbootstrap.com",
|
||||
"author": "Twitter, Inc.",
|
||||
"scripts": {
|
||||
"change-version": "node grunt/change-version.js",
|
||||
"update-shrinkwrap": "npm shrinkwrap --dev && shx mv ./npm-shrinkwrap.json ./grunt/npm-shrinkwrap.json",
|
||||
"test": "grunt test"
|
||||
},
|
||||
"style": "dist/css/bootstrap.css",
|
||||
|
|
@ -31,34 +29,34 @@
|
|||
"license": "MIT",
|
||||
"devDependencies": {
|
||||
"btoa": "~1.1.2",
|
||||
"glob": "~7.0.3",
|
||||
"grunt": "~1.0.1",
|
||||
"grunt-autoprefixer": "~3.0.4",
|
||||
"grunt-contrib-clean": "~1.0.0",
|
||||
"grunt-contrib-compress": "~1.3.0",
|
||||
"grunt-contrib-concat": "~1.0.0",
|
||||
"grunt-contrib-connect": "~1.0.0",
|
||||
"grunt-contrib-copy": "~1.0.0",
|
||||
"grunt-contrib-csslint": "~1.0.0",
|
||||
"grunt-contrib-cssmin": "~1.0.0",
|
||||
"grunt-contrib-htmlmin": "~1.5.0",
|
||||
"grunt-contrib-jshint": "~1.0.0",
|
||||
"grunt-contrib-less": "~1.3.0",
|
||||
"grunt-contrib-pug": "~1.0.0",
|
||||
"glob": "~5.0.5",
|
||||
"grunt": "~0.4.5",
|
||||
"grunt-autoprefixer": "~3.0.0",
|
||||
"grunt-contrib-clean": "~0.6.0",
|
||||
"grunt-contrib-compress": "~0.13.0",
|
||||
"grunt-contrib-concat": "~0.5.1",
|
||||
"grunt-contrib-connect": "~0.10.1",
|
||||
"grunt-contrib-copy": "~0.8.0",
|
||||
"grunt-contrib-csslint": "~0.4.0",
|
||||
"grunt-contrib-cssmin": "~0.12.3",
|
||||
"grunt-contrib-htmlmin": "~0.4.0",
|
||||
"grunt-contrib-jade": "~0.14.1",
|
||||
"grunt-contrib-jshint": "~0.11.2",
|
||||
"grunt-contrib-less": "~1.0.1",
|
||||
"grunt-contrib-qunit": "~0.7.0",
|
||||
"grunt-contrib-uglify": "~1.0.0",
|
||||
"grunt-contrib-watch": "~1.0.0",
|
||||
"grunt-csscomb": "~3.1.0",
|
||||
"grunt-exec": "~1.0.0",
|
||||
"grunt-html": "~8.0.1",
|
||||
"grunt-jekyll": "~0.4.4",
|
||||
"grunt-jscs": "~3.0.1",
|
||||
"grunt-saucelabs": "~9.0.0",
|
||||
"load-grunt-tasks": "~3.5.0",
|
||||
"markdown-it": "^7.0.0",
|
||||
"shelljs": "^0.7.0",
|
||||
"shx": "^0.1.2",
|
||||
"time-grunt": "^1.3.0"
|
||||
"grunt-contrib-uglify": "~0.9.1",
|
||||
"grunt-contrib-watch": "~0.6.1",
|
||||
"grunt-csscomb": "~3.0.0",
|
||||
"grunt-exec": "~0.4.6",
|
||||
"grunt-html": "~4.0.3",
|
||||
"grunt-jekyll": "~0.4.2",
|
||||
"grunt-jscs": "~1.8.0",
|
||||
"grunt-saucelabs": "~8.6.1",
|
||||
"grunt-sed": "twbs/grunt-sed#v0.2.0",
|
||||
"load-grunt-tasks": "~3.2.0",
|
||||
"markdown-it": "^4.2.1",
|
||||
"npm-shrinkwrap": "^200.4.0",
|
||||
"time-grunt": "^1.2.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=0.10.1"
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
/**
|
||||
* matchesSelector v2.0.2
|
||||
* matchesSelector v2.0.1
|
||||
* matchesSelector( element, '.selector' )
|
||||
* MIT license
|
||||
*/
|
||||
|
|
@ -25,7 +25,7 @@
|
|||
'use strict';
|
||||
|
||||
var matchesMethod = ( function() {
|
||||
var ElemProto = window.Element.prototype;
|
||||
var ElemProto = Element.prototype;
|
||||
// check for the standard method name first
|
||||
if ( ElemProto.matches ) {
|
||||
return 'matches';
|
||||
|
|
|
|||
10
_site/bower_components/ev-emitter/README.md
vendored
10
_site/bower_components/ev-emitter/README.md
vendored
|
|
@ -17,7 +17,7 @@ MyClass.prototype = Object.create( EvEmitter.prototype );
|
|||
_.extend( MyClass.prototype, EvEmitter.prototype );
|
||||
|
||||
// single instance
|
||||
var emitter = new EvEmitter();
|
||||
var emitter = new EventEmitter();
|
||||
```
|
||||
|
||||
### on
|
||||
|
|
@ -58,14 +58,6 @@ emitter.emitEvent( eventName, args )
|
|||
+ `eventName` - _String_ - name of the event
|
||||
+ `args` - _Array_ - arguments passed to listeners
|
||||
|
||||
### allOff
|
||||
|
||||
Removes all event listeners.
|
||||
|
||||
``` js
|
||||
emitter.allOff()
|
||||
```
|
||||
|
||||
## Code example
|
||||
|
||||
``` js
|
||||
|
|
|
|||
3
_site/bower_components/ev-emitter/bower.json
vendored
3
_site/bower_components/ev-emitter/bower.json
vendored
|
|
@ -23,7 +23,6 @@
|
|||
"bower_components",
|
||||
"test",
|
||||
"tests",
|
||||
"sandbox",
|
||||
"package.json"
|
||||
"sandbox"
|
||||
]
|
||||
}
|
||||
|
|
|
|||
17
_site/bower_components/ev-emitter/ev-emitter.js
vendored
17
_site/bower_components/ev-emitter/ev-emitter.js
vendored
|
|
@ -1,5 +1,5 @@
|
|||
/**
|
||||
* EvEmitter v1.1.0
|
||||
* EvEmitter v1.0.3
|
||||
* Lil' event emitter
|
||||
* MIT License
|
||||
*/
|
||||
|
|
@ -79,14 +79,13 @@ proto.emitEvent = function( eventName, args ) {
|
|||
if ( !listeners || !listeners.length ) {
|
||||
return;
|
||||
}
|
||||
// copy over to avoid interference if .off() in listener
|
||||
listeners = listeners.slice(0);
|
||||
var i = 0;
|
||||
var listener = listeners[i];
|
||||
args = args || [];
|
||||
// once stuff
|
||||
var onceListeners = this._onceEvents && this._onceEvents[ eventName ];
|
||||
|
||||
for ( var i=0; i < listeners.length; i++ ) {
|
||||
var listener = listeners[i]
|
||||
while ( listener ) {
|
||||
var isOnce = onceListeners && onceListeners[ listener ];
|
||||
if ( isOnce ) {
|
||||
// remove listener
|
||||
|
|
@ -97,16 +96,14 @@ proto.emitEvent = function( eventName, args ) {
|
|||
}
|
||||
// trigger listener
|
||||
listener.apply( this, args );
|
||||
// get next listener
|
||||
i += isOnce ? 0 : 1;
|
||||
listener = listeners[i];
|
||||
}
|
||||
|
||||
return this;
|
||||
};
|
||||
|
||||
proto.allOff = function() {
|
||||
delete this._events;
|
||||
delete this._onceEvents;
|
||||
};
|
||||
|
||||
return EvEmitter;
|
||||
|
||||
}));
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@
|
|||
"description": "UI utilities",
|
||||
"main": "utils.js",
|
||||
"dependencies": {
|
||||
"desandro-matches-selector": "^2.0.0"
|
||||
"desandro-matches-selector": "~2.0.0"
|
||||
},
|
||||
"moduleType": [
|
||||
"amd",
|
||||
|
|
|
|||
38
_site/bower_components/fizzy-ui-utils/utils.js
vendored
38
_site/bower_components/fizzy-ui-utils/utils.js
vendored
|
|
@ -1,5 +1,5 @@
|
|||
/**
|
||||
* Fizzy UI utils v2.0.7
|
||||
* Fizzy UI utils v2.0.3
|
||||
* MIT license
|
||||
*/
|
||||
|
||||
|
|
@ -54,27 +54,22 @@ utils.modulo = function( num, div ) {
|
|||
|
||||
// ----- makeArray ----- //
|
||||
|
||||
var arraySlice = Array.prototype.slice;
|
||||
|
||||
// turn element or nodeList into an array
|
||||
utils.makeArray = function( obj ) {
|
||||
var ary = [];
|
||||
if ( Array.isArray( obj ) ) {
|
||||
// use object if already an array
|
||||
return obj;
|
||||
}
|
||||
// return empty array if undefined or null. #6
|
||||
if ( obj === null || obj === undefined ) {
|
||||
return [];
|
||||
}
|
||||
|
||||
var isArrayLike = typeof obj == 'object' && typeof obj.length == 'number';
|
||||
if ( isArrayLike ) {
|
||||
ary = obj;
|
||||
} else if ( obj && typeof obj.length == 'number' ) {
|
||||
// convert nodeList to array
|
||||
return arraySlice.call( obj );
|
||||
for ( var i=0; i < obj.length; i++ ) {
|
||||
ary.push( obj[i] );
|
||||
}
|
||||
} else {
|
||||
// array of single index
|
||||
ary.push( obj );
|
||||
}
|
||||
|
||||
// array of single index
|
||||
return [ obj ];
|
||||
return ary;
|
||||
};
|
||||
|
||||
// ----- removeFrom ----- //
|
||||
|
|
@ -89,7 +84,7 @@ utils.removeFrom = function( ary, obj ) {
|
|||
// ----- getParent ----- //
|
||||
|
||||
utils.getParent = function( elem, selector ) {
|
||||
while ( elem.parentNode && elem != document.body ) {
|
||||
while ( elem != document.body ) {
|
||||
elem = elem.parentNode;
|
||||
if ( matchesSelector( elem, selector ) ) {
|
||||
return elem;
|
||||
|
|
@ -153,21 +148,22 @@ utils.filterFindElements = function( elems, selector ) {
|
|||
// ----- debounceMethod ----- //
|
||||
|
||||
utils.debounceMethod = function( _class, methodName, threshold ) {
|
||||
threshold = threshold || 100;
|
||||
// original method
|
||||
var method = _class.prototype[ methodName ];
|
||||
var timeoutName = methodName + 'Timeout';
|
||||
|
||||
_class.prototype[ methodName ] = function() {
|
||||
var timeout = this[ timeoutName ];
|
||||
clearTimeout( timeout );
|
||||
|
||||
if ( timeout ) {
|
||||
clearTimeout( timeout );
|
||||
}
|
||||
var args = arguments;
|
||||
|
||||
var _this = this;
|
||||
this[ timeoutName ] = setTimeout( function() {
|
||||
method.apply( _this, args );
|
||||
delete _this[ timeoutName ];
|
||||
}, threshold );
|
||||
}, threshold || 100 );
|
||||
};
|
||||
};
|
||||
|
||||
|
|
|
|||
24
_site/bower_components/get-size/README.md
vendored
24
_site/bower_components/get-size/README.md
vendored
|
|
@ -1,32 +1,24 @@
|
|||
# getSize
|
||||
|
||||
Get the size of elements. Used in [Masonry](https://masonry.desandro.com), [Isotope](https://isotope.metafizzy.co), & [Flickity](https://flickity.metafizzy.co).
|
||||
Get the size of elements.
|
||||
|
||||
``` js
|
||||
var size = getSize( elem );
|
||||
// elem can be an element
|
||||
var size = getSize( document.querySelector('.selector') )
|
||||
// elem can be a selector string
|
||||
var size = getSize('.selector')
|
||||
var size = getSize( document.querySelector('#selector') )
|
||||
// elem can be a string, used as a query selector
|
||||
var size = getSize('#selector')
|
||||
```
|
||||
|
||||
Returns an object with:
|
||||
|
||||
+ width, height
|
||||
+ innerWidth, innerHeight
|
||||
+ outerWidth, outerHeight
|
||||
+ paddingLeft, paddingTop, paddingRight, paddingBottom
|
||||
+ marginLeft, marginTop, marginRight, marginBottom
|
||||
+ borderLeftWidth, borderTopWidth, borderRightWidth, borderBottomWidth
|
||||
+ isBorderBox
|
||||
Returns an object with: `width`, `height`, `innerWidth/Height`, `outerWidth/Height`, `paddingLeft/Top/Right/Bottom`, `marginLeft/Top/Right/Bottom`, `borderLeft/Top/Right/BottomWidth` and `isBorderBox`.
|
||||
|
||||
Browser support: IE10+, Android 4.0+, iOS 5+, and modern browsers
|
||||
|
||||
## Install
|
||||
|
||||
Install with npm: `npm install get-size`
|
||||
Install with [Bower](http://bower.io): `bower install get-size`
|
||||
|
||||
Install with [Bower](https://bower.io): `bower install get-size`
|
||||
Install with npm: `npm install get-size`
|
||||
|
||||
## Firefox hidden iframe bug
|
||||
|
||||
|
|
@ -42,4 +34,4 @@ Install with [Bower](https://bower.io): `bower install get-size`
|
|||
|
||||
## MIT License
|
||||
|
||||
getSize is released under the [MIT License](https://desandro.mit-license.org/).
|
||||
getSize is released under the [MIT License](http://desandro.mit-license.org/).
|
||||
|
|
|
|||
36
_site/bower_components/get-size/bower.json
vendored
36
_site/bower_components/get-size/bower.json
vendored
|
|
@ -1,17 +1,15 @@
|
|||
{
|
||||
"name": "get-size",
|
||||
"description": "measures element size",
|
||||
"version": "2.0.2",
|
||||
"main": "get-size.js",
|
||||
"authors": [
|
||||
"David DeSandro"
|
||||
],
|
||||
"license": "MIT",
|
||||
"keywords": [
|
||||
"size",
|
||||
"DOM"
|
||||
],
|
||||
"homepage": "https://github.com/desandro/get-size",
|
||||
"description": "measures element size",
|
||||
"dependencies": {
|
||||
},
|
||||
"devDependencies": {
|
||||
"qunit": "~1.10"
|
||||
},
|
||||
"ignore": [
|
||||
"test/",
|
||||
"**/.*",
|
||||
"package.json",
|
||||
"node_modules",
|
||||
|
|
@ -19,5 +17,21 @@
|
|||
"test",
|
||||
"tests",
|
||||
"sandbox.html"
|
||||
]
|
||||
],
|
||||
"homepage": "https://github.com/desandro/get-size",
|
||||
"authors": [
|
||||
"David DeSandro <desandrocodes@gmail.com>"
|
||||
],
|
||||
"moduleType": [
|
||||
"amd",
|
||||
"globals",
|
||||
"node"
|
||||
],
|
||||
"keywords": [
|
||||
"size",
|
||||
"dom",
|
||||
"width",
|
||||
"height"
|
||||
],
|
||||
"license": "MIT"
|
||||
}
|
||||
|
|
|
|||
24
_site/bower_components/get-size/get-size.js
vendored
24
_site/bower_components/get-size/get-size.js
vendored
|
|
@ -1,17 +1,20 @@
|
|||
/*!
|
||||
* getSize v2.0.3
|
||||
* getSize v2.0.2
|
||||
* measure size of elements
|
||||
* MIT license
|
||||
*/
|
||||
|
||||
/* jshint browser: true, strict: true, undef: true, unused: true */
|
||||
/* globals console: false */
|
||||
/*jshint browser: true, strict: true, undef: true, unused: true */
|
||||
/*global define: false, module: false, console: false */
|
||||
|
||||
( function( window, factory ) {
|
||||
/* jshint strict: false */ /* globals define, module */
|
||||
'use strict';
|
||||
|
||||
if ( typeof define == 'function' && define.amd ) {
|
||||
// AMD
|
||||
define( factory );
|
||||
define( function() {
|
||||
return factory();
|
||||
});
|
||||
} else if ( typeof module == 'object' && module.exports ) {
|
||||
// CommonJS
|
||||
module.exports = factory();
|
||||
|
|
@ -86,7 +89,7 @@ function getStyle( elem ) {
|
|||
if ( !style ) {
|
||||
logError( 'Style returned ' + style +
|
||||
'. Are you running this code in a hidden iframe on Firefox? ' +
|
||||
'See https://bit.ly/getsizebug1' );
|
||||
'See http://bit.ly/getsizebug1' );
|
||||
}
|
||||
return style;
|
||||
}
|
||||
|
|
@ -112,8 +115,8 @@ function setup() {
|
|||
// -------------------------- box sizing -------------------------- //
|
||||
|
||||
/**
|
||||
* Chrome & Safari measure the outer-width on style.width on border-box elems
|
||||
* IE11 & Firefox<29 measures the inner-width
|
||||
* WebKit measures the outer-width on style.width on border-box elems
|
||||
* IE & Firefox<29 measures the inner-width
|
||||
*/
|
||||
var div = document.createElement('div');
|
||||
div.style.width = '200px';
|
||||
|
|
@ -125,11 +128,10 @@ function setup() {
|
|||
var body = document.body || document.documentElement;
|
||||
body.appendChild( div );
|
||||
var style = getStyle( div );
|
||||
// round value for browser zoom. desandro/masonry#928
|
||||
isBoxSizeOuter = Math.round( getStyleSize( style.width ) ) == 200;
|
||||
getSize.isBoxSizeOuter = isBoxSizeOuter;
|
||||
|
||||
getSize.isBoxSizeOuter = isBoxSizeOuter = getStyleSize( style.width ) == 200;
|
||||
body.removeChild( div );
|
||||
|
||||
}
|
||||
|
||||
// -------------------------- getSize -------------------------- //
|
||||
|
|
|
|||
|
|
@ -6,9 +6,6 @@ See demo and documentation at the [project page](http://johnpolacek.github.io/im
|
|||
|
||||
Requires imagesLoaded - https://github.com/desandro/imagesloaded
|
||||
|
||||
For a jQuery-free version of this plugin, go to:
|
||||
https://github.com/StudioThick/imagefill.js
|
||||
|
||||
* * *
|
||||
#### follow [@johnpolacek](https://twitter.com/johnpolacek)
|
||||
* * *
|
||||
|
|
|
|||
20
_site/bower_components/isotope/README.md
vendored
20
_site/bower_components/isotope/README.md
vendored
|
|
@ -2,42 +2,42 @@
|
|||
|
||||
_Filter & sort magical layouts_
|
||||
|
||||
See [isotope.metafizzy.co](https://isotope.metafizzy.co) for complete docs and demos.
|
||||
See [isotope.metafizzy.co](http://isotope.metafizzy.co) for complete docs and demos.
|
||||
|
||||
## Install
|
||||
|
||||
### Download
|
||||
|
||||
+ [isotope.pkgd.js](https://unpkg.com/isotope-layout@3/dist/isotope.pkgd.js) un-minified, or
|
||||
+ [isotope.pkgd.min.js](https://unpkg.com/isotope-layout@3/dist/isotope.pkgd.min.js) minified
|
||||
+ [isotope.pkgd.js](https://npmcdn.com/isotope-layout@3/dist/isotope.pkgd.js) un-minified, or
|
||||
+ [isotope.pkgd.min.js](https://npmcdn.com/isotope-layout@3/dist/isotope.pkgd.min.js) minified
|
||||
|
||||
### CDN
|
||||
|
||||
Link directly to Isotope files on [unpkg](https://unpkg.com).
|
||||
Link directly to Isotope files on [npmcdn](https://npmcdn.com).
|
||||
|
||||
``` html
|
||||
<script src="https://unpkg.com/isotope-layout@3/dist/isotope.pkgd.min.js"></script>
|
||||
<script src="https://npmcdn.com/isotope-layout@3.0/dist/isotope.pkgd.min.js"></script>
|
||||
<!-- or -->
|
||||
<script src="https://unpkg.com/isotope-layout@3/dist/isotope.pkgd.js"></script>
|
||||
<script src="https://npmcdn.com/isotope-layout@3.0/dist/isotope.pkgd.js"></script>
|
||||
```
|
||||
|
||||
### Package managers
|
||||
|
||||
npm: `npm install isotope-layout --save`
|
||||
|
||||
Bower: `bower install isotope-layout --save`
|
||||
Bower: `bower install isotope --save`
|
||||
|
||||
## License
|
||||
|
||||
### Commercial license
|
||||
|
||||
If you want to use Isotope to develop commercial sites, themes, projects, and applications, the Commercial license is the appropriate license. With this option, your source code is kept proprietary. Purchase an Isotope Commercial License at [isotope.metafizzy.co](https://isotope.metafizzy.co/#commercial-license)
|
||||
If you want to use Isotope to develop commercial sites, themes, projects, and applications, the Commercial license is the appropriate license. With this option, your source code is kept proprietary. Purchase an Isotope Commercial License at [isotope.metafizzy.co](http://isotope.metafizzy.co/#commercial-license)
|
||||
|
||||
### Open source license
|
||||
|
||||
If you are creating an open source application under a license compatible with the [GNU GPL license v3](https://www.gnu.org/licenses/gpl-3.0.html), you may use Isotope under the terms of the GPLv3.
|
||||
|
||||
[Read more about Isotope's license](https://isotope.metafizzy.co/license.html).
|
||||
[Read more about Isotope's license](http://isotope.metafizzy.co/license.html).
|
||||
|
||||
## Initialize
|
||||
|
||||
|
|
@ -82,4 +82,4 @@ Add a `data-isotope` attribute to your element. Options can be set in JSON in th
|
|||
|
||||
* * *
|
||||
|
||||
By [Metafizzy 🌈🐻](https://metafizzy.co), 2010–2018
|
||||
By [Metafizzy](http://metafizzy.co), 2010–2016
|
||||
|
|
|
|||
12
_site/bower_components/isotope/bower.json
vendored
12
_site/bower_components/isotope/bower.json
vendored
|
|
@ -1,18 +1,18 @@
|
|||
{
|
||||
"name": "isotope-layout",
|
||||
"name": "isotope",
|
||||
"description": "Filter and sort magical layouts",
|
||||
"main": "js/isotope.js",
|
||||
"dependencies": {
|
||||
"desandro-matches-selector": "^2.0.0",
|
||||
"fizzy-ui-utils": "^2.0.4",
|
||||
"fizzy-ui-utils": "^2.0.0",
|
||||
"get-size": "^2.0.0",
|
||||
"masonry-layout": "^4.1.0",
|
||||
"masonry": "^4.1.0",
|
||||
"outlayer": "^2.1.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
"jquery": "^3.3.1",
|
||||
"jquery": "2 < 4",
|
||||
"jquery-bridget": "^2",
|
||||
"qunit": "^2.6.0"
|
||||
"qunit": "^1.15"
|
||||
},
|
||||
"ignore": [
|
||||
"test/",
|
||||
|
|
@ -25,7 +25,7 @@
|
|||
"test",
|
||||
"tests"
|
||||
],
|
||||
"homepage": "https://isotope.metafizzy.co",
|
||||
"homepage": "http://isotope.metafizzy.co",
|
||||
"authors": [
|
||||
"David DeSandro"
|
||||
],
|
||||
|
|
|
|||
284
_site/bower_components/isotope/dist/isotope.pkgd.js
vendored
284
_site/bower_components/isotope/dist/isotope.pkgd.js
vendored
|
|
@ -1,28 +1,29 @@
|
|||
/*!
|
||||
* Isotope PACKAGED v3.0.6
|
||||
* Isotope PACKAGED v3.0.1
|
||||
*
|
||||
* Licensed GPLv3 for open source use
|
||||
* or Isotope Commercial License for commercial use
|
||||
*
|
||||
* https://isotope.metafizzy.co
|
||||
* Copyright 2010-2018 Metafizzy
|
||||
* http://isotope.metafizzy.co
|
||||
* Copyright 2016 Metafizzy
|
||||
*/
|
||||
|
||||
/**
|
||||
* Bridget makes jQuery widgets
|
||||
* v2.0.1
|
||||
* v2.0.0
|
||||
* MIT license
|
||||
*/
|
||||
|
||||
/* jshint browser: true, strict: true, undef: true, unused: true */
|
||||
|
||||
( function( window, factory ) {
|
||||
// universal module definition
|
||||
/*jshint strict: false */ /* globals define, module, require */
|
||||
'use strict';
|
||||
/* globals define: false, module: false, require: false */
|
||||
|
||||
if ( typeof define == 'function' && define.amd ) {
|
||||
// AMD
|
||||
define( 'jquery-bridget/jquery-bridget',[ 'jquery' ], function( jQuery ) {
|
||||
return factory( window, jQuery );
|
||||
factory( window, jQuery );
|
||||
});
|
||||
} else if ( typeof module == 'object' && module.exports ) {
|
||||
// CommonJS
|
||||
|
|
@ -153,7 +154,7 @@ return jQueryBridget;
|
|||
}));
|
||||
|
||||
/**
|
||||
* EvEmitter v1.1.0
|
||||
* EvEmitter v1.0.3
|
||||
* Lil' event emitter
|
||||
* MIT License
|
||||
*/
|
||||
|
|
@ -233,14 +234,13 @@ proto.emitEvent = function( eventName, args ) {
|
|||
if ( !listeners || !listeners.length ) {
|
||||
return;
|
||||
}
|
||||
// copy over to avoid interference if .off() in listener
|
||||
listeners = listeners.slice(0);
|
||||
var i = 0;
|
||||
var listener = listeners[i];
|
||||
args = args || [];
|
||||
// once stuff
|
||||
var onceListeners = this._onceEvents && this._onceEvents[ eventName ];
|
||||
|
||||
for ( var i=0; i < listeners.length; i++ ) {
|
||||
var listener = listeners[i]
|
||||
while ( listener ) {
|
||||
var isOnce = onceListeners && onceListeners[ listener ];
|
||||
if ( isOnce ) {
|
||||
// remove listener
|
||||
|
|
@ -251,34 +251,35 @@ proto.emitEvent = function( eventName, args ) {
|
|||
}
|
||||
// trigger listener
|
||||
listener.apply( this, args );
|
||||
// get next listener
|
||||
i += isOnce ? 0 : 1;
|
||||
listener = listeners[i];
|
||||
}
|
||||
|
||||
return this;
|
||||
};
|
||||
|
||||
proto.allOff = function() {
|
||||
delete this._events;
|
||||
delete this._onceEvents;
|
||||
};
|
||||
|
||||
return EvEmitter;
|
||||
|
||||
}));
|
||||
|
||||
/*!
|
||||
* getSize v2.0.3
|
||||
* getSize v2.0.2
|
||||
* measure size of elements
|
||||
* MIT license
|
||||
*/
|
||||
|
||||
/* jshint browser: true, strict: true, undef: true, unused: true */
|
||||
/* globals console: false */
|
||||
/*jshint browser: true, strict: true, undef: true, unused: true */
|
||||
/*global define: false, module: false, console: false */
|
||||
|
||||
( function( window, factory ) {
|
||||
/* jshint strict: false */ /* globals define, module */
|
||||
'use strict';
|
||||
|
||||
if ( typeof define == 'function' && define.amd ) {
|
||||
// AMD
|
||||
define( 'get-size/get-size',factory );
|
||||
define( 'get-size/get-size',[],function() {
|
||||
return factory();
|
||||
});
|
||||
} else if ( typeof module == 'object' && module.exports ) {
|
||||
// CommonJS
|
||||
module.exports = factory();
|
||||
|
|
@ -353,7 +354,7 @@ function getStyle( elem ) {
|
|||
if ( !style ) {
|
||||
logError( 'Style returned ' + style +
|
||||
'. Are you running this code in a hidden iframe on Firefox? ' +
|
||||
'See https://bit.ly/getsizebug1' );
|
||||
'See http://bit.ly/getsizebug1' );
|
||||
}
|
||||
return style;
|
||||
}
|
||||
|
|
@ -379,8 +380,8 @@ function setup() {
|
|||
// -------------------------- box sizing -------------------------- //
|
||||
|
||||
/**
|
||||
* Chrome & Safari measure the outer-width on style.width on border-box elems
|
||||
* IE11 & Firefox<29 measures the inner-width
|
||||
* WebKit measures the outer-width on style.width on border-box elems
|
||||
* IE & Firefox<29 measures the inner-width
|
||||
*/
|
||||
var div = document.createElement('div');
|
||||
div.style.width = '200px';
|
||||
|
|
@ -392,11 +393,10 @@ function setup() {
|
|||
var body = document.body || document.documentElement;
|
||||
body.appendChild( div );
|
||||
var style = getStyle( div );
|
||||
// round value for browser zoom. desandro/masonry#928
|
||||
isBoxSizeOuter = Math.round( getStyleSize( style.width ) ) == 200;
|
||||
getSize.isBoxSizeOuter = isBoxSizeOuter;
|
||||
|
||||
getSize.isBoxSizeOuter = isBoxSizeOuter = getStyleSize( style.width ) == 200;
|
||||
body.removeChild( div );
|
||||
|
||||
}
|
||||
|
||||
// -------------------------- getSize -------------------------- //
|
||||
|
|
@ -474,7 +474,7 @@ return getSize;
|
|||
});
|
||||
|
||||
/**
|
||||
* matchesSelector v2.0.2
|
||||
* matchesSelector v2.0.1
|
||||
* matchesSelector( element, '.selector' )
|
||||
* MIT license
|
||||
*/
|
||||
|
|
@ -500,7 +500,7 @@ return getSize;
|
|||
'use strict';
|
||||
|
||||
var matchesMethod = ( function() {
|
||||
var ElemProto = window.Element.prototype;
|
||||
var ElemProto = Element.prototype;
|
||||
// check for the standard method name first
|
||||
if ( ElemProto.matches ) {
|
||||
return 'matches';
|
||||
|
|
@ -528,7 +528,7 @@ return getSize;
|
|||
}));
|
||||
|
||||
/**
|
||||
* Fizzy UI utils v2.0.7
|
||||
* Fizzy UI utils v2.0.2
|
||||
* MIT license
|
||||
*/
|
||||
|
||||
|
|
@ -583,27 +583,22 @@ utils.modulo = function( num, div ) {
|
|||
|
||||
// ----- makeArray ----- //
|
||||
|
||||
var arraySlice = Array.prototype.slice;
|
||||
|
||||
// turn element or nodeList into an array
|
||||
utils.makeArray = function( obj ) {
|
||||
var ary = [];
|
||||
if ( Array.isArray( obj ) ) {
|
||||
// use object if already an array
|
||||
return obj;
|
||||
}
|
||||
// return empty array if undefined or null. #6
|
||||
if ( obj === null || obj === undefined ) {
|
||||
return [];
|
||||
}
|
||||
|
||||
var isArrayLike = typeof obj == 'object' && typeof obj.length == 'number';
|
||||
if ( isArrayLike ) {
|
||||
ary = obj;
|
||||
} else if ( obj && typeof obj.length == 'number' ) {
|
||||
// convert nodeList to array
|
||||
return arraySlice.call( obj );
|
||||
for ( var i=0; i < obj.length; i++ ) {
|
||||
ary.push( obj[i] );
|
||||
}
|
||||
} else {
|
||||
// array of single index
|
||||
ary.push( obj );
|
||||
}
|
||||
|
||||
// array of single index
|
||||
return [ obj ];
|
||||
return ary;
|
||||
};
|
||||
|
||||
// ----- removeFrom ----- //
|
||||
|
|
@ -618,7 +613,7 @@ utils.removeFrom = function( ary, obj ) {
|
|||
// ----- getParent ----- //
|
||||
|
||||
utils.getParent = function( elem, selector ) {
|
||||
while ( elem.parentNode && elem != document.body ) {
|
||||
while ( elem != document.body ) {
|
||||
elem = elem.parentNode;
|
||||
if ( matchesSelector( elem, selector ) ) {
|
||||
return elem;
|
||||
|
|
@ -682,21 +677,22 @@ utils.filterFindElements = function( elems, selector ) {
|
|||
// ----- debounceMethod ----- //
|
||||
|
||||
utils.debounceMethod = function( _class, methodName, threshold ) {
|
||||
threshold = threshold || 100;
|
||||
// original method
|
||||
var method = _class.prototype[ methodName ];
|
||||
var timeoutName = methodName + 'Timeout';
|
||||
|
||||
_class.prototype[ methodName ] = function() {
|
||||
var timeout = this[ timeoutName ];
|
||||
clearTimeout( timeout );
|
||||
|
||||
if ( timeout ) {
|
||||
clearTimeout( timeout );
|
||||
}
|
||||
var args = arguments;
|
||||
|
||||
var _this = this;
|
||||
this[ timeoutName ] = setTimeout( function() {
|
||||
method.apply( _this, args );
|
||||
delete _this[ timeoutName ];
|
||||
}, threshold );
|
||||
}, threshold || 100 );
|
||||
};
|
||||
};
|
||||
|
||||
|
|
@ -705,8 +701,7 @@ utils.debounceMethod = function( _class, methodName, threshold ) {
|
|||
utils.docReady = function( callback ) {
|
||||
var readyState = document.readyState;
|
||||
if ( readyState == 'complete' || readyState == 'interactive' ) {
|
||||
// do async to allow for other scripts to run. metafizzy/flickity#441
|
||||
setTimeout( callback );
|
||||
callback();
|
||||
} else {
|
||||
document.addEventListener( 'DOMContentLoaded', callback );
|
||||
}
|
||||
|
|
@ -754,7 +749,7 @@ utils.htmlInit = function( WidgetClass, namespace ) {
|
|||
}
|
||||
// initialize
|
||||
var instance = new WidgetClass( elem, options );
|
||||
// make available via $().data('namespace')
|
||||
// make available via $().data('layoutname')
|
||||
if ( jQuery ) {
|
||||
jQuery.data( elem, namespace, instance );
|
||||
}
|
||||
|
|
@ -904,16 +899,13 @@ proto.getPosition = function() {
|
|||
var isOriginTop = this.layout._getOption('originTop');
|
||||
var xValue = style[ isOriginLeft ? 'left' : 'right' ];
|
||||
var yValue = style[ isOriginTop ? 'top' : 'bottom' ];
|
||||
var x = parseFloat( xValue );
|
||||
var y = parseFloat( yValue );
|
||||
// convert percent to pixels
|
||||
var layoutSize = this.layout.size;
|
||||
if ( xValue.indexOf('%') != -1 ) {
|
||||
x = ( x / 100 ) * layoutSize.width;
|
||||
}
|
||||
if ( yValue.indexOf('%') != -1 ) {
|
||||
y = ( y / 100 ) * layoutSize.height;
|
||||
}
|
||||
var x = xValue.indexOf('%') != -1 ?
|
||||
( parseFloat( xValue ) / 100 ) * layoutSize.width : parseInt( xValue, 10 );
|
||||
var y = yValue.indexOf('%') != -1 ?
|
||||
( parseFloat( yValue ) / 100 ) * layoutSize.height : parseInt( yValue, 10 );
|
||||
|
||||
// clean up 'auto' or other non-integer values
|
||||
x = isNaN( x ) ? 0 : x;
|
||||
y = isNaN( y ) ? 0 : y;
|
||||
|
|
@ -976,7 +968,9 @@ proto._transitionTo = function( x, y ) {
|
|||
var curX = this.position.x;
|
||||
var curY = this.position.y;
|
||||
|
||||
var didNotMove = x == this.position.x && y == this.position.y;
|
||||
var compareX = parseInt( x, 10 );
|
||||
var compareY = parseInt( y, 10 );
|
||||
var didNotMove = compareX === this.position.x && compareY === this.position.y;
|
||||
|
||||
// save end position
|
||||
this.setPosition( x, y );
|
||||
|
|
@ -1019,8 +1013,8 @@ proto.goTo = function( x, y ) {
|
|||
proto.moveTo = proto._transitionTo;
|
||||
|
||||
proto.setPosition = function( x, y ) {
|
||||
this.position.x = parseFloat( x );
|
||||
this.position.y = parseFloat( y );
|
||||
this.position.x = parseInt( x, 10 );
|
||||
this.position.y = parseInt( y, 10 );
|
||||
};
|
||||
|
||||
// ----- transition ----- //
|
||||
|
|
@ -1325,7 +1319,7 @@ return Item;
|
|||
}));
|
||||
|
||||
/*!
|
||||
* Outlayer v2.1.1
|
||||
* Outlayer v2.1.0
|
||||
* the brains and guts of a layout library
|
||||
* MIT license
|
||||
*/
|
||||
|
|
@ -2273,7 +2267,7 @@ return Outlayer;
|
|||
/* jshint strict: false */ /*globals define, module, require */
|
||||
if ( typeof define == 'function' && define.amd ) {
|
||||
// AMD
|
||||
define( 'isotope-layout/js/item',[
|
||||
define( 'isotope/js/item',[
|
||||
'outlayer/outlayer'
|
||||
],
|
||||
factory );
|
||||
|
|
@ -2351,7 +2345,7 @@ return Item;
|
|||
/* jshint strict: false */ /*globals define, module, require */
|
||||
if ( typeof define == 'function' && define.amd ) {
|
||||
// AMD
|
||||
define( 'isotope-layout/js/layout-mode',[
|
||||
define( 'isotope/js/layout-mode',[
|
||||
'get-size/get-size',
|
||||
'outlayer/outlayer'
|
||||
],
|
||||
|
|
@ -2501,9 +2495,9 @@ return Item;
|
|||
}));
|
||||
|
||||
/*!
|
||||
* Masonry v4.2.1
|
||||
* Masonry v4.1.0
|
||||
* Cascading grid layout library
|
||||
* https://masonry.desandro.com
|
||||
* http://masonry.desandro.com
|
||||
* MIT License
|
||||
* by David DeSandro
|
||||
*/
|
||||
|
|
@ -2513,7 +2507,7 @@ return Item;
|
|||
/* jshint strict: false */ /*globals define, module, require */
|
||||
if ( typeof define == 'function' && define.amd ) {
|
||||
// AMD
|
||||
define( 'masonry-layout/masonry',[
|
||||
define( 'masonry/masonry',[
|
||||
'outlayer/outlayer',
|
||||
'get-size/get-size'
|
||||
],
|
||||
|
|
@ -2543,9 +2537,7 @@ return Item;
|
|||
// isFitWidth -> fitWidth
|
||||
Masonry.compatOptions.fitWidth = 'isFitWidth';
|
||||
|
||||
var proto = Masonry.prototype;
|
||||
|
||||
proto._resetLayout = function() {
|
||||
Masonry.prototype._resetLayout = function() {
|
||||
this.getSize();
|
||||
this._getMeasurement( 'columnWidth', 'outerWidth' );
|
||||
this._getMeasurement( 'gutter', 'outerWidth' );
|
||||
|
|
@ -2558,10 +2550,9 @@ return Item;
|
|||
}
|
||||
|
||||
this.maxY = 0;
|
||||
this.horizontalColIndex = 0;
|
||||
};
|
||||
|
||||
proto.measureColumns = function() {
|
||||
Masonry.prototype.measureColumns = function() {
|
||||
this.getContainerWidth();
|
||||
// if columnWidth is 0, default to outerWidth of first item
|
||||
if ( !this.columnWidth ) {
|
||||
|
|
@ -2586,7 +2577,7 @@ return Item;
|
|||
this.cols = Math.max( cols, 1 );
|
||||
};
|
||||
|
||||
proto.getContainerWidth = function() {
|
||||
Masonry.prototype.getContainerWidth = function() {
|
||||
// container is parent if fit width
|
||||
var isFitWidth = this._getOption('fitWidth');
|
||||
var container = isFitWidth ? this.element.parentNode : this.element;
|
||||
|
|
@ -2596,7 +2587,7 @@ return Item;
|
|||
this.containerWidth = size && size.innerWidth;
|
||||
};
|
||||
|
||||
proto._getItemLayoutPosition = function( item ) {
|
||||
Masonry.prototype._getItemLayoutPosition = function( item ) {
|
||||
item.getSize();
|
||||
// how many columns does this brick span
|
||||
var remainder = item.size.outerWidth % this.columnWidth;
|
||||
|
|
@ -2604,41 +2595,33 @@ return Item;
|
|||
// round if off by 1 pixel, otherwise use ceil
|
||||
var colSpan = Math[ mathMethod ]( item.size.outerWidth / this.columnWidth );
|
||||
colSpan = Math.min( colSpan, this.cols );
|
||||
// use horizontal or top column position
|
||||
var colPosMethod = this.options.horizontalOrder ?
|
||||
'_getHorizontalColPosition' : '_getTopColPosition';
|
||||
var colPosition = this[ colPosMethod ]( colSpan, item );
|
||||
|
||||
var colGroup = this._getColGroup( colSpan );
|
||||
// get the minimum Y value from the columns
|
||||
var minimumY = Math.min.apply( Math, colGroup );
|
||||
var shortColIndex = colGroup.indexOf( minimumY );
|
||||
|
||||
// position the brick
|
||||
var position = {
|
||||
x: this.columnWidth * colPosition.col,
|
||||
y: colPosition.y
|
||||
x: this.columnWidth * shortColIndex,
|
||||
y: minimumY
|
||||
};
|
||||
|
||||
// apply setHeight to necessary columns
|
||||
var setHeight = colPosition.y + item.size.outerHeight;
|
||||
var setMax = colSpan + colPosition.col;
|
||||
for ( var i = colPosition.col; i < setMax; i++ ) {
|
||||
this.colYs[i] = setHeight;
|
||||
var setHeight = minimumY + item.size.outerHeight;
|
||||
var setSpan = this.cols + 1 - colGroup.length;
|
||||
for ( var i = 0; i < setSpan; i++ ) {
|
||||
this.colYs[ shortColIndex + i ] = setHeight;
|
||||
}
|
||||
|
||||
return position;
|
||||
};
|
||||
|
||||
proto._getTopColPosition = function( colSpan ) {
|
||||
var colGroup = this._getTopColGroup( colSpan );
|
||||
// get the minimum Y value from the columns
|
||||
var minimumY = Math.min.apply( Math, colGroup );
|
||||
|
||||
return {
|
||||
col: colGroup.indexOf( minimumY ),
|
||||
y: minimumY,
|
||||
};
|
||||
};
|
||||
|
||||
/**
|
||||
* @param {Number} colSpan - number of columns the element spans
|
||||
* @returns {Array} colGroup
|
||||
*/
|
||||
proto._getTopColGroup = function( colSpan ) {
|
||||
Masonry.prototype._getColGroup = function( colSpan ) {
|
||||
if ( colSpan < 2 ) {
|
||||
// if brick spans only one column, use all the column Ys
|
||||
return this.colYs;
|
||||
|
|
@ -2649,38 +2632,15 @@ return Item;
|
|||
var groupCount = this.cols + 1 - colSpan;
|
||||
// for each group potential horizontal position
|
||||
for ( var i = 0; i < groupCount; i++ ) {
|
||||
colGroup[i] = this._getColGroupY( i, colSpan );
|
||||
// make an array of colY values for that one group
|
||||
var groupColYs = this.colYs.slice( i, i + colSpan );
|
||||
// and get the max value of the array
|
||||
colGroup[i] = Math.max.apply( Math, groupColYs );
|
||||
}
|
||||
return colGroup;
|
||||
};
|
||||
|
||||
proto._getColGroupY = function( col, colSpan ) {
|
||||
if ( colSpan < 2 ) {
|
||||
return this.colYs[ col ];
|
||||
}
|
||||
// make an array of colY values for that one group
|
||||
var groupColYs = this.colYs.slice( col, col + colSpan );
|
||||
// and get the max value of the array
|
||||
return Math.max.apply( Math, groupColYs );
|
||||
};
|
||||
|
||||
// get column position based on horizontal index. #873
|
||||
proto._getHorizontalColPosition = function( colSpan, item ) {
|
||||
var col = this.horizontalColIndex % this.cols;
|
||||
var isOver = colSpan > 1 && col + colSpan > this.cols;
|
||||
// shift to next row if item can't fit on current row
|
||||
col = isOver ? 0 : col;
|
||||
// don't let zero-size items take up space
|
||||
var hasSize = item.size.outerWidth && item.size.outerHeight;
|
||||
this.horizontalColIndex = hasSize ? col + colSpan : this.horizontalColIndex;
|
||||
|
||||
return {
|
||||
col: col,
|
||||
y: this._getColGroupY( col, colSpan ),
|
||||
};
|
||||
};
|
||||
|
||||
proto._manageStamp = function( stamp ) {
|
||||
Masonry.prototype._manageStamp = function( stamp ) {
|
||||
var stampSize = getSize( stamp );
|
||||
var offset = this._getElementOffset( stamp );
|
||||
// get the columns that this stamp affects
|
||||
|
|
@ -2703,7 +2663,7 @@ return Item;
|
|||
}
|
||||
};
|
||||
|
||||
proto._getContainerSize = function() {
|
||||
Masonry.prototype._getContainerSize = function() {
|
||||
this.maxY = Math.max.apply( Math, this.colYs );
|
||||
var size = {
|
||||
height: this.maxY
|
||||
|
|
@ -2716,7 +2676,7 @@ return Item;
|
|||
return size;
|
||||
};
|
||||
|
||||
proto._getContainerFitWidth = function() {
|
||||
Masonry.prototype._getContainerFitWidth = function() {
|
||||
var unusedCols = 0;
|
||||
// count unused columns
|
||||
var i = this.cols;
|
||||
|
|
@ -2730,7 +2690,7 @@ return Item;
|
|||
return ( this.cols - unusedCols ) * this.columnWidth - this.gutter;
|
||||
};
|
||||
|
||||
proto.needsResizeLayout = function() {
|
||||
Masonry.prototype.needsResizeLayout = function() {
|
||||
var previousWidth = this.containerWidth;
|
||||
this.getContainerWidth();
|
||||
return previousWidth != this.containerWidth;
|
||||
|
|
@ -2743,7 +2703,7 @@ return Item;
|
|||
/*!
|
||||
* Masonry layout mode
|
||||
* sub-classes Masonry
|
||||
* https://masonry.desandro.com
|
||||
* http://masonry.desandro.com
|
||||
*/
|
||||
|
||||
( function( window, factory ) {
|
||||
|
|
@ -2751,9 +2711,9 @@ return Item;
|
|||
/* jshint strict: false */ /*globals define, module, require */
|
||||
if ( typeof define == 'function' && define.amd ) {
|
||||
// AMD
|
||||
define( 'isotope-layout/js/layout-modes/masonry',[
|
||||
define( 'isotope/js/layout-modes/masonry',[
|
||||
'../layout-mode',
|
||||
'masonry-layout/masonry'
|
||||
'masonry/masonry'
|
||||
],
|
||||
factory );
|
||||
} else if ( typeof module == 'object' && module.exports ) {
|
||||
|
|
@ -2824,7 +2784,7 @@ return Item;
|
|||
/* jshint strict: false */ /*globals define, module, require */
|
||||
if ( typeof define == 'function' && define.amd ) {
|
||||
// AMD
|
||||
define( 'isotope-layout/js/layout-modes/fit-rows',[
|
||||
define( 'isotope/js/layout-modes/fit-rows',[
|
||||
'../layout-mode'
|
||||
],
|
||||
factory );
|
||||
|
|
@ -2893,7 +2853,7 @@ return FitRows;
|
|||
/* jshint strict: false */ /*globals define, module, require */
|
||||
if ( typeof define == 'function' && define.amd ) {
|
||||
// AMD
|
||||
define( 'isotope-layout/js/layout-modes/vertical',[
|
||||
define( 'isotope/js/layout-modes/vertical',[
|
||||
'../layout-mode'
|
||||
],
|
||||
factory );
|
||||
|
|
@ -2940,13 +2900,13 @@ return Vertical;
|
|||
}));
|
||||
|
||||
/*!
|
||||
* Isotope v3.0.6
|
||||
* Isotope v3.0.1
|
||||
*
|
||||
* Licensed GPLv3 for open source use
|
||||
* or Isotope Commercial License for commercial use
|
||||
*
|
||||
* https://isotope.metafizzy.co
|
||||
* Copyright 2010-2018 Metafizzy
|
||||
* http://isotope.metafizzy.co
|
||||
* Copyright 2016 Metafizzy
|
||||
*/
|
||||
|
||||
( function( window, factory ) {
|
||||
|
|
@ -2959,12 +2919,12 @@ return Vertical;
|
|||
'get-size/get-size',
|
||||
'desandro-matches-selector/matches-selector',
|
||||
'fizzy-ui-utils/utils',
|
||||
'isotope-layout/js/item',
|
||||
'isotope-layout/js/layout-mode',
|
||||
'isotope/js/item',
|
||||
'isotope/js/layout-mode',
|
||||
// include default layout modes
|
||||
'isotope-layout/js/layout-modes/masonry',
|
||||
'isotope-layout/js/layout-modes/fit-rows',
|
||||
'isotope-layout/js/layout-modes/vertical'
|
||||
'isotope/js/layout-modes/masonry',
|
||||
'isotope/js/layout-modes/fit-rows',
|
||||
'isotope/js/layout-modes/vertical'
|
||||
],
|
||||
function( Outlayer, getSize, matchesSelector, utils, Item, LayoutMode ) {
|
||||
return factory( window, Outlayer, getSize, matchesSelector, utils, Item, LayoutMode );
|
||||
|
|
@ -2977,12 +2937,12 @@ return Vertical;
|
|||
require('get-size'),
|
||||
require('desandro-matches-selector'),
|
||||
require('fizzy-ui-utils'),
|
||||
require('isotope-layout/js/item'),
|
||||
require('isotope-layout/js/layout-mode'),
|
||||
require('isotope/js/item'),
|
||||
require('isotope/js/layout-mode'),
|
||||
// include default layout modes
|
||||
require('isotope-layout/js/layout-modes/masonry'),
|
||||
require('isotope-layout/js/layout-modes/fit-rows'),
|
||||
require('isotope-layout/js/layout-modes/vertical')
|
||||
require('isotope/js/layout-modes/masonry'),
|
||||
require('isotope/js/layout-modes/fit-rows'),
|
||||
require('isotope/js/layout-modes/vertical')
|
||||
);
|
||||
} else {
|
||||
// browser global
|
||||
|
|
@ -3343,28 +3303,20 @@ var trim = String.prototype.trim ?
|
|||
|
||||
// sort filteredItem order
|
||||
proto._sort = function() {
|
||||
if ( !this.options.sortBy ) {
|
||||
var sortByOpt = this.options.sortBy;
|
||||
if ( !sortByOpt ) {
|
||||
return;
|
||||
}
|
||||
// keep track of sortBy History
|
||||
var sortBys = utils.makeArray( this.options.sortBy );
|
||||
if ( !this._getIsSameSortBy( sortBys ) ) {
|
||||
// concat all sortBy and sortHistory, add to front, oldest goes in last
|
||||
this.sortHistory = sortBys.concat( this.sortHistory );
|
||||
}
|
||||
// concat all sortBy and sortHistory
|
||||
var sortBys = [].concat.apply( sortByOpt, this.sortHistory );
|
||||
// sort magic
|
||||
var itemSorter = getItemSorter( this.sortHistory, this.options.sortAscending );
|
||||
var itemSorter = getItemSorter( sortBys, this.options.sortAscending );
|
||||
this.filteredItems.sort( itemSorter );
|
||||
};
|
||||
|
||||
// check if sortBys is same as start of sortHistory
|
||||
proto._getIsSameSortBy = function( sortBys ) {
|
||||
for ( var i=0; i < sortBys.length; i++ ) {
|
||||
if ( sortBys[i] != this.sortHistory[i] ) {
|
||||
return false;
|
||||
}
|
||||
// keep track of sortBy History
|
||||
if ( sortByOpt != this.sortHistory[0] ) {
|
||||
// add to front, oldest goes in last
|
||||
this.sortHistory.unshift( sortByOpt );
|
||||
}
|
||||
return true;
|
||||
};
|
||||
|
||||
// returns a function used for sorting
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
20
_site/bower_components/isotope/gulpfile.js
vendored
20
_site/bower_components/isotope/gulpfile.js
vendored
|
|
@ -56,7 +56,7 @@ function addBanner( str ) {
|
|||
var rjsOptimize = require('gulp-requirejs-optimize');
|
||||
|
||||
gulp.task( 'requirejs', function() {
|
||||
var definitionRE = /define\(\s*'isotope\-layout\/\js\/isotope'(.|\n)+\],/;
|
||||
var definitionRE = /define\(\s*'isotope\/isotope'(.|\n)+\],/;
|
||||
var banner = getBanner();
|
||||
// HACK src is not needed
|
||||
// should refactor rjsOptimize to produce src
|
||||
|
|
@ -66,20 +66,21 @@ gulp.task( 'requirejs', function() {
|
|||
optimize: 'none',
|
||||
include: [
|
||||
'jquery-bridget/jquery-bridget',
|
||||
'isotope-layout/js/isotope'
|
||||
'isotope/isotope'
|
||||
],
|
||||
paths: {
|
||||
'isotope-layout': '../',
|
||||
isotope: '../js/',
|
||||
jquery: 'empty:'
|
||||
}
|
||||
}) )
|
||||
// munge AMD definition
|
||||
.pipe( replace( definitionRE, function( definition ) {
|
||||
// remove named module
|
||||
return definition.replace( "'isotope-layout/js/isotope',", '' )
|
||||
// use explicit file paths, './item' -> 'isotope-layout/js/item'
|
||||
.replace( /'.\//g, "'isotope-layout/js/" );
|
||||
return definition.replace( "'isotope/isotope',", '' )
|
||||
// use explicit file paths, './item' -> 'isotope/js/item'
|
||||
.replace( /'.\//g, "'isotope/js/" );
|
||||
}) )
|
||||
.pipe( replace( "define( 'isotope/", "define( 'isotope/js/" ) )
|
||||
// add banner
|
||||
.pipe( addBanner( banner ) )
|
||||
.pipe( rename('isotope.pkgd.js') )
|
||||
|
|
@ -120,12 +121,17 @@ gulp.task( 'version', function() {
|
|||
gutil.log( 'ticking version to ' + chalk.green( version ) );
|
||||
|
||||
gulp.src('js/isotope.js')
|
||||
.pipe( replace( /Isotope v\d\.\d+\.\d+/, 'Isotope v' + version ) )
|
||||
.pipe( replace( /Packery v\d\.\d+\.\d+/, 'Isotope v' + version ) )
|
||||
.pipe( gulp.dest('js') );
|
||||
|
||||
gulp.src( [ 'package.json' ] )
|
||||
.pipe( replace( /"version": "\d\.\d+\.\d+"/, '"version": "' + version + '"' ) )
|
||||
.pipe( gulp.dest('.') );
|
||||
// replace CDN links in README
|
||||
var minorVersion = version.match( /^\d\.\d+/ )[0];
|
||||
gulp.src('README.md')
|
||||
.pipe( replace( /isotope-layout@\d\.\d+/g, 'isotope-layout@' + minorVersion ))
|
||||
.pipe( gulp.dest('.') );
|
||||
});
|
||||
|
||||
// ----- default ----- //
|
||||
|
|
|
|||
32
_site/bower_components/isotope/js/isotope.js
vendored
32
_site/bower_components/isotope/js/isotope.js
vendored
|
|
@ -1,11 +1,11 @@
|
|||
/*!
|
||||
* Isotope v3.0.6
|
||||
* Isotope v3.0.1
|
||||
*
|
||||
* Licensed GPLv3 for open source use
|
||||
* or Isotope Commercial License for commercial use
|
||||
*
|
||||
* https://isotope.metafizzy.co
|
||||
* Copyright 2010-2018 Metafizzy
|
||||
* http://isotope.metafizzy.co
|
||||
* Copyright 2016 Metafizzy
|
||||
*/
|
||||
|
||||
( function( window, factory ) {
|
||||
|
|
@ -402,28 +402,20 @@ var trim = String.prototype.trim ?
|
|||
|
||||
// sort filteredItem order
|
||||
proto._sort = function() {
|
||||
if ( !this.options.sortBy ) {
|
||||
var sortByOpt = this.options.sortBy;
|
||||
if ( !sortByOpt ) {
|
||||
return;
|
||||
}
|
||||
// keep track of sortBy History
|
||||
var sortBys = utils.makeArray( this.options.sortBy );
|
||||
if ( !this._getIsSameSortBy( sortBys ) ) {
|
||||
// concat all sortBy and sortHistory, add to front, oldest goes in last
|
||||
this.sortHistory = sortBys.concat( this.sortHistory );
|
||||
}
|
||||
// concat all sortBy and sortHistory
|
||||
var sortBys = [].concat.apply( sortByOpt, this.sortHistory );
|
||||
// sort magic
|
||||
var itemSorter = getItemSorter( this.sortHistory, this.options.sortAscending );
|
||||
var itemSorter = getItemSorter( sortBys, this.options.sortAscending );
|
||||
this.filteredItems.sort( itemSorter );
|
||||
};
|
||||
|
||||
// check if sortBys is same as start of sortHistory
|
||||
proto._getIsSameSortBy = function( sortBys ) {
|
||||
for ( var i=0; i < sortBys.length; i++ ) {
|
||||
if ( sortBys[i] != this.sortHistory[i] ) {
|
||||
return false;
|
||||
}
|
||||
// keep track of sortBy History
|
||||
if ( sortByOpt != this.sortHistory[0] ) {
|
||||
// add to front, oldest goes in last
|
||||
this.sortHistory.unshift( sortByOpt );
|
||||
}
|
||||
return true;
|
||||
};
|
||||
|
||||
// returns a function used for sorting
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
/*!
|
||||
* Masonry layout mode
|
||||
* sub-classes Masonry
|
||||
* https://masonry.desandro.com
|
||||
* http://masonry.desandro.com
|
||||
*/
|
||||
|
||||
( function( window, factory ) {
|
||||
|
|
@ -11,7 +11,7 @@
|
|||
// AMD
|
||||
define( [
|
||||
'../layout-mode',
|
||||
'masonry-layout/masonry'
|
||||
'masonry/masonry'
|
||||
],
|
||||
factory );
|
||||
} else if ( typeof module == 'object' && module.exports ) {
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
|
|
@ -4,35 +4,31 @@ _Cascading grid layout library_
|
|||
|
||||
Masonry works by placing elements in optimal position based on available vertical space, sort of like a mason fitting stones in a wall. You’ve probably seen it in use all over the Internet.
|
||||
|
||||
See [masonry.desandro.com](https://masonry.desandro.com) for complete docs and demos.
|
||||
See [masonry.desandro.com](http://masonry.desandro.com) for complete docs and demos.
|
||||
|
||||
## Install
|
||||
|
||||
### Download
|
||||
|
||||
+ [masonry.pkgd.js](https://unpkg.com/masonry-layout@4/dist/masonry.pkgd.js) un-minified, or
|
||||
+ [masonry.pkgd.min.js](https://unpkg.com/masonry-layout@4/dist/masonry.pkgd.min.js) minified
|
||||
+ [masonry.pkgd.js](https://github.com/desandro/masonry/raw/master/dist/masonry.pkgd.js) un-minified, or
|
||||
+ [masonry.pkgd.min.js](https://github.com/desandro/masonry/raw/master/dist/masonry.pkgd.min.js) minified
|
||||
|
||||
### CDN
|
||||
|
||||
Link directly to Masonry files on [unpkg](https://unpkg.com/).
|
||||
Link directly to Masonry files on [npmcdn](https://npmcdn.com/).
|
||||
|
||||
``` html
|
||||
<script src="https://unpkg.com/masonry-layout@4/dist/masonry.pkgd.js"></script>
|
||||
<script src="https://npmcdn.com/masonry-layout@4.1/dist/masonry.pkgd.js"></script>
|
||||
<!-- or -->
|
||||
<script src="https://unpkg.com/masonry-layout@4/dist/masonry.pkgd.min.js"></script>
|
||||
<script src="https://npmcdn.com/masonry-layout@4.1/dist/masonry.pkgd.min.js"></script>
|
||||
```
|
||||
|
||||
### Package managers
|
||||
|
||||
Bower: `bower install masonry --save`
|
||||
|
||||
[npm](https://www.npmjs.com/package/masonry-layout): `npm install masonry-layout --save`
|
||||
|
||||
Bower: `bower install masonry-layout --save`
|
||||
|
||||
## Support Masonry development
|
||||
|
||||
Masonry has been actively maintained and improved upon for 8 years, with 900 GitHub issues closed. Please consider supporting its development by [purchasing a license for one of Metafizzy's commercial libraries](https://metafizzy.co).
|
||||
|
||||
## Initialize
|
||||
|
||||
With jQuery
|
||||
|
|
@ -1,5 +1,5 @@
|
|||
{
|
||||
"name": "masonry-layout",
|
||||
"name": "masonry",
|
||||
"description": "Cascading grid layout library",
|
||||
"main": "masonry.js",
|
||||
"dependencies": {
|
||||
|
|
@ -22,7 +22,7 @@
|
|||
"package.json",
|
||||
"composer.json"
|
||||
],
|
||||
"homepage": "https://masonry.desandro.com",
|
||||
"homepage": "http://masonry.desandro.com",
|
||||
"authors": [
|
||||
"David DeSandro"
|
||||
],
|
||||
|
|
@ -1,7 +1,7 @@
|
|||
/*!
|
||||
* Masonry PACKAGED v4.2.2
|
||||
* Masonry PACKAGED v4.1.1
|
||||
* Cascading grid layout library
|
||||
* https://masonry.desandro.com
|
||||
* http://masonry.desandro.com
|
||||
* MIT License
|
||||
* by David DeSandro
|
||||
*/
|
||||
|
|
@ -151,7 +151,7 @@ return jQueryBridget;
|
|||
}));
|
||||
|
||||
/**
|
||||
* EvEmitter v1.1.0
|
||||
* EvEmitter v1.0.3
|
||||
* Lil' event emitter
|
||||
* MIT License
|
||||
*/
|
||||
|
|
@ -231,14 +231,13 @@ proto.emitEvent = function( eventName, args ) {
|
|||
if ( !listeners || !listeners.length ) {
|
||||
return;
|
||||
}
|
||||
// copy over to avoid interference if .off() in listener
|
||||
listeners = listeners.slice(0);
|
||||
var i = 0;
|
||||
var listener = listeners[i];
|
||||
args = args || [];
|
||||
// once stuff
|
||||
var onceListeners = this._onceEvents && this._onceEvents[ eventName ];
|
||||
|
||||
for ( var i=0; i < listeners.length; i++ ) {
|
||||
var listener = listeners[i]
|
||||
while ( listener ) {
|
||||
var isOnce = onceListeners && onceListeners[ listener ];
|
||||
if ( isOnce ) {
|
||||
// remove listener
|
||||
|
|
@ -249,34 +248,35 @@ proto.emitEvent = function( eventName, args ) {
|
|||
}
|
||||
// trigger listener
|
||||
listener.apply( this, args );
|
||||
// get next listener
|
||||
i += isOnce ? 0 : 1;
|
||||
listener = listeners[i];
|
||||
}
|
||||
|
||||
return this;
|
||||
};
|
||||
|
||||
proto.allOff = function() {
|
||||
delete this._events;
|
||||
delete this._onceEvents;
|
||||
};
|
||||
|
||||
return EvEmitter;
|
||||
|
||||
}));
|
||||
|
||||
/*!
|
||||
* getSize v2.0.3
|
||||
* getSize v2.0.2
|
||||
* measure size of elements
|
||||
* MIT license
|
||||
*/
|
||||
|
||||
/* jshint browser: true, strict: true, undef: true, unused: true */
|
||||
/* globals console: false */
|
||||
/*jshint browser: true, strict: true, undef: true, unused: true */
|
||||
/*global define: false, module: false, console: false */
|
||||
|
||||
( function( window, factory ) {
|
||||
/* jshint strict: false */ /* globals define, module */
|
||||
'use strict';
|
||||
|
||||
if ( typeof define == 'function' && define.amd ) {
|
||||
// AMD
|
||||
define( 'get-size/get-size',factory );
|
||||
define( 'get-size/get-size',[],function() {
|
||||
return factory();
|
||||
});
|
||||
} else if ( typeof module == 'object' && module.exports ) {
|
||||
// CommonJS
|
||||
module.exports = factory();
|
||||
|
|
@ -351,7 +351,7 @@ function getStyle( elem ) {
|
|||
if ( !style ) {
|
||||
logError( 'Style returned ' + style +
|
||||
'. Are you running this code in a hidden iframe on Firefox? ' +
|
||||
'See https://bit.ly/getsizebug1' );
|
||||
'See http://bit.ly/getsizebug1' );
|
||||
}
|
||||
return style;
|
||||
}
|
||||
|
|
@ -377,8 +377,8 @@ function setup() {
|
|||
// -------------------------- box sizing -------------------------- //
|
||||
|
||||
/**
|
||||
* Chrome & Safari measure the outer-width on style.width on border-box elems
|
||||
* IE11 & Firefox<29 measures the inner-width
|
||||
* WebKit measures the outer-width on style.width on border-box elems
|
||||
* IE & Firefox<29 measures the inner-width
|
||||
*/
|
||||
var div = document.createElement('div');
|
||||
div.style.width = '200px';
|
||||
|
|
@ -390,11 +390,10 @@ function setup() {
|
|||
var body = document.body || document.documentElement;
|
||||
body.appendChild( div );
|
||||
var style = getStyle( div );
|
||||
// round value for browser zoom. desandro/masonry#928
|
||||
isBoxSizeOuter = Math.round( getStyleSize( style.width ) ) == 200;
|
||||
getSize.isBoxSizeOuter = isBoxSizeOuter;
|
||||
|
||||
getSize.isBoxSizeOuter = isBoxSizeOuter = getStyleSize( style.width ) == 200;
|
||||
body.removeChild( div );
|
||||
|
||||
}
|
||||
|
||||
// -------------------------- getSize -------------------------- //
|
||||
|
|
@ -472,7 +471,7 @@ return getSize;
|
|||
});
|
||||
|
||||
/**
|
||||
* matchesSelector v2.0.2
|
||||
* matchesSelector v2.0.1
|
||||
* matchesSelector( element, '.selector' )
|
||||
* MIT license
|
||||
*/
|
||||
|
|
@ -498,7 +497,7 @@ return getSize;
|
|||
'use strict';
|
||||
|
||||
var matchesMethod = ( function() {
|
||||
var ElemProto = window.Element.prototype;
|
||||
var ElemProto = Element.prototype;
|
||||
// check for the standard method name first
|
||||
if ( ElemProto.matches ) {
|
||||
return 'matches';
|
||||
|
|
@ -526,7 +525,7 @@ return getSize;
|
|||
}));
|
||||
|
||||
/**
|
||||
* Fizzy UI utils v2.0.7
|
||||
* Fizzy UI utils v2.0.2
|
||||
* MIT license
|
||||
*/
|
||||
|
||||
|
|
@ -581,27 +580,22 @@ utils.modulo = function( num, div ) {
|
|||
|
||||
// ----- makeArray ----- //
|
||||
|
||||
var arraySlice = Array.prototype.slice;
|
||||
|
||||
// turn element or nodeList into an array
|
||||
utils.makeArray = function( obj ) {
|
||||
var ary = [];
|
||||
if ( Array.isArray( obj ) ) {
|
||||
// use object if already an array
|
||||
return obj;
|
||||
}
|
||||
// return empty array if undefined or null. #6
|
||||
if ( obj === null || obj === undefined ) {
|
||||
return [];
|
||||
}
|
||||
|
||||
var isArrayLike = typeof obj == 'object' && typeof obj.length == 'number';
|
||||
if ( isArrayLike ) {
|
||||
ary = obj;
|
||||
} else if ( obj && typeof obj.length == 'number' ) {
|
||||
// convert nodeList to array
|
||||
return arraySlice.call( obj );
|
||||
for ( var i=0; i < obj.length; i++ ) {
|
||||
ary.push( obj[i] );
|
||||
}
|
||||
} else {
|
||||
// array of single index
|
||||
ary.push( obj );
|
||||
}
|
||||
|
||||
// array of single index
|
||||
return [ obj ];
|
||||
return ary;
|
||||
};
|
||||
|
||||
// ----- removeFrom ----- //
|
||||
|
|
@ -616,7 +610,7 @@ utils.removeFrom = function( ary, obj ) {
|
|||
// ----- getParent ----- //
|
||||
|
||||
utils.getParent = function( elem, selector ) {
|
||||
while ( elem.parentNode && elem != document.body ) {
|
||||
while ( elem != document.body ) {
|
||||
elem = elem.parentNode;
|
||||
if ( matchesSelector( elem, selector ) ) {
|
||||
return elem;
|
||||
|
|
@ -680,21 +674,22 @@ utils.filterFindElements = function( elems, selector ) {
|
|||
// ----- debounceMethod ----- //
|
||||
|
||||
utils.debounceMethod = function( _class, methodName, threshold ) {
|
||||
threshold = threshold || 100;
|
||||
// original method
|
||||
var method = _class.prototype[ methodName ];
|
||||
var timeoutName = methodName + 'Timeout';
|
||||
|
||||
_class.prototype[ methodName ] = function() {
|
||||
var timeout = this[ timeoutName ];
|
||||
clearTimeout( timeout );
|
||||
|
||||
if ( timeout ) {
|
||||
clearTimeout( timeout );
|
||||
}
|
||||
var args = arguments;
|
||||
|
||||
var _this = this;
|
||||
this[ timeoutName ] = setTimeout( function() {
|
||||
method.apply( _this, args );
|
||||
delete _this[ timeoutName ];
|
||||
}, threshold );
|
||||
}, threshold || 100 );
|
||||
};
|
||||
};
|
||||
|
||||
|
|
@ -703,8 +698,7 @@ utils.debounceMethod = function( _class, methodName, threshold ) {
|
|||
utils.docReady = function( callback ) {
|
||||
var readyState = document.readyState;
|
||||
if ( readyState == 'complete' || readyState == 'interactive' ) {
|
||||
// do async to allow for other scripts to run. metafizzy/flickity#441
|
||||
setTimeout( callback );
|
||||
callback();
|
||||
} else {
|
||||
document.addEventListener( 'DOMContentLoaded', callback );
|
||||
}
|
||||
|
|
@ -752,7 +746,7 @@ utils.htmlInit = function( WidgetClass, namespace ) {
|
|||
}
|
||||
// initialize
|
||||
var instance = new WidgetClass( elem, options );
|
||||
// make available via $().data('namespace')
|
||||
// make available via $().data('layoutname')
|
||||
if ( jQuery ) {
|
||||
jQuery.data( elem, namespace, instance );
|
||||
}
|
||||
|
|
@ -902,16 +896,13 @@ proto.getPosition = function() {
|
|||
var isOriginTop = this.layout._getOption('originTop');
|
||||
var xValue = style[ isOriginLeft ? 'left' : 'right' ];
|
||||
var yValue = style[ isOriginTop ? 'top' : 'bottom' ];
|
||||
var x = parseFloat( xValue );
|
||||
var y = parseFloat( yValue );
|
||||
// convert percent to pixels
|
||||
var layoutSize = this.layout.size;
|
||||
if ( xValue.indexOf('%') != -1 ) {
|
||||
x = ( x / 100 ) * layoutSize.width;
|
||||
}
|
||||
if ( yValue.indexOf('%') != -1 ) {
|
||||
y = ( y / 100 ) * layoutSize.height;
|
||||
}
|
||||
var x = xValue.indexOf('%') != -1 ?
|
||||
( parseFloat( xValue ) / 100 ) * layoutSize.width : parseInt( xValue, 10 );
|
||||
var y = yValue.indexOf('%') != -1 ?
|
||||
( parseFloat( yValue ) / 100 ) * layoutSize.height : parseInt( yValue, 10 );
|
||||
|
||||
// clean up 'auto' or other non-integer values
|
||||
x = isNaN( x ) ? 0 : x;
|
||||
y = isNaN( y ) ? 0 : y;
|
||||
|
|
@ -974,7 +965,9 @@ proto._transitionTo = function( x, y ) {
|
|||
var curX = this.position.x;
|
||||
var curY = this.position.y;
|
||||
|
||||
var didNotMove = x == this.position.x && y == this.position.y;
|
||||
var compareX = parseInt( x, 10 );
|
||||
var compareY = parseInt( y, 10 );
|
||||
var didNotMove = compareX === this.position.x && compareY === this.position.y;
|
||||
|
||||
// save end position
|
||||
this.setPosition( x, y );
|
||||
|
|
@ -1017,8 +1010,8 @@ proto.goTo = function( x, y ) {
|
|||
proto.moveTo = proto._transitionTo;
|
||||
|
||||
proto.setPosition = function( x, y ) {
|
||||
this.position.x = parseFloat( x );
|
||||
this.position.y = parseFloat( y );
|
||||
this.position.x = parseInt( x, 10 );
|
||||
this.position.y = parseInt( y, 10 );
|
||||
};
|
||||
|
||||
// ----- transition ----- //
|
||||
|
|
@ -1323,7 +1316,7 @@ return Item;
|
|||
}));
|
||||
|
||||
/*!
|
||||
* Outlayer v2.1.1
|
||||
* Outlayer v2.1.0
|
||||
* the brains and guts of a layout library
|
||||
* MIT license
|
||||
*/
|
||||
|
|
@ -2263,9 +2256,9 @@ return Outlayer;
|
|||
}));
|
||||
|
||||
/*!
|
||||
* Masonry v4.2.2
|
||||
* Masonry v4.1.1
|
||||
* Cascading grid layout library
|
||||
* https://masonry.desandro.com
|
||||
* http://masonry.desandro.com
|
||||
* MIT License
|
||||
* by David DeSandro
|
||||
*/
|
||||
|
|
@ -2305,9 +2298,7 @@ return Outlayer;
|
|||
// isFitWidth -> fitWidth
|
||||
Masonry.compatOptions.fitWidth = 'isFitWidth';
|
||||
|
||||
var proto = Masonry.prototype;
|
||||
|
||||
proto._resetLayout = function() {
|
||||
Masonry.prototype._resetLayout = function() {
|
||||
this.getSize();
|
||||
this._getMeasurement( 'columnWidth', 'outerWidth' );
|
||||
this._getMeasurement( 'gutter', 'outerWidth' );
|
||||
|
|
@ -2320,10 +2311,9 @@ return Outlayer;
|
|||
}
|
||||
|
||||
this.maxY = 0;
|
||||
this.horizontalColIndex = 0;
|
||||
};
|
||||
|
||||
proto.measureColumns = function() {
|
||||
Masonry.prototype.measureColumns = function() {
|
||||
this.getContainerWidth();
|
||||
// if columnWidth is 0, default to outerWidth of first item
|
||||
if ( !this.columnWidth ) {
|
||||
|
|
@ -2348,7 +2338,7 @@ return Outlayer;
|
|||
this.cols = Math.max( cols, 1 );
|
||||
};
|
||||
|
||||
proto.getContainerWidth = function() {
|
||||
Masonry.prototype.getContainerWidth = function() {
|
||||
// container is parent if fit width
|
||||
var isFitWidth = this._getOption('fitWidth');
|
||||
var container = isFitWidth ? this.element.parentNode : this.element;
|
||||
|
|
@ -2358,7 +2348,7 @@ return Outlayer;
|
|||
this.containerWidth = size && size.innerWidth;
|
||||
};
|
||||
|
||||
proto._getItemLayoutPosition = function( item ) {
|
||||
Masonry.prototype._getItemLayoutPosition = function( item ) {
|
||||
item.getSize();
|
||||
// how many columns does this brick span
|
||||
var remainder = item.size.outerWidth % this.columnWidth;
|
||||
|
|
@ -2366,41 +2356,33 @@ return Outlayer;
|
|||
// round if off by 1 pixel, otherwise use ceil
|
||||
var colSpan = Math[ mathMethod ]( item.size.outerWidth / this.columnWidth );
|
||||
colSpan = Math.min( colSpan, this.cols );
|
||||
// use horizontal or top column position
|
||||
var colPosMethod = this.options.horizontalOrder ?
|
||||
'_getHorizontalColPosition' : '_getTopColPosition';
|
||||
var colPosition = this[ colPosMethod ]( colSpan, item );
|
||||
|
||||
var colGroup = this._getColGroup( colSpan );
|
||||
// get the minimum Y value from the columns
|
||||
var minimumY = Math.min.apply( Math, colGroup );
|
||||
var shortColIndex = colGroup.indexOf( minimumY );
|
||||
|
||||
// position the brick
|
||||
var position = {
|
||||
x: this.columnWidth * colPosition.col,
|
||||
y: colPosition.y
|
||||
x: this.columnWidth * shortColIndex,
|
||||
y: minimumY
|
||||
};
|
||||
|
||||
// apply setHeight to necessary columns
|
||||
var setHeight = colPosition.y + item.size.outerHeight;
|
||||
var setMax = colSpan + colPosition.col;
|
||||
for ( var i = colPosition.col; i < setMax; i++ ) {
|
||||
this.colYs[i] = setHeight;
|
||||
var setHeight = minimumY + item.size.outerHeight;
|
||||
var setSpan = this.cols + 1 - colGroup.length;
|
||||
for ( var i = 0; i < setSpan; i++ ) {
|
||||
this.colYs[ shortColIndex + i ] = setHeight;
|
||||
}
|
||||
|
||||
return position;
|
||||
};
|
||||
|
||||
proto._getTopColPosition = function( colSpan ) {
|
||||
var colGroup = this._getTopColGroup( colSpan );
|
||||
// get the minimum Y value from the columns
|
||||
var minimumY = Math.min.apply( Math, colGroup );
|
||||
|
||||
return {
|
||||
col: colGroup.indexOf( minimumY ),
|
||||
y: minimumY,
|
||||
};
|
||||
};
|
||||
|
||||
/**
|
||||
* @param {Number} colSpan - number of columns the element spans
|
||||
* @returns {Array} colGroup
|
||||
*/
|
||||
proto._getTopColGroup = function( colSpan ) {
|
||||
Masonry.prototype._getColGroup = function( colSpan ) {
|
||||
if ( colSpan < 2 ) {
|
||||
// if brick spans only one column, use all the column Ys
|
||||
return this.colYs;
|
||||
|
|
@ -2411,38 +2393,15 @@ return Outlayer;
|
|||
var groupCount = this.cols + 1 - colSpan;
|
||||
// for each group potential horizontal position
|
||||
for ( var i = 0; i < groupCount; i++ ) {
|
||||
colGroup[i] = this._getColGroupY( i, colSpan );
|
||||
// make an array of colY values for that one group
|
||||
var groupColYs = this.colYs.slice( i, i + colSpan );
|
||||
// and get the max value of the array
|
||||
colGroup[i] = Math.max.apply( Math, groupColYs );
|
||||
}
|
||||
return colGroup;
|
||||
};
|
||||
|
||||
proto._getColGroupY = function( col, colSpan ) {
|
||||
if ( colSpan < 2 ) {
|
||||
return this.colYs[ col ];
|
||||
}
|
||||
// make an array of colY values for that one group
|
||||
var groupColYs = this.colYs.slice( col, col + colSpan );
|
||||
// and get the max value of the array
|
||||
return Math.max.apply( Math, groupColYs );
|
||||
};
|
||||
|
||||
// get column position based on horizontal index. #873
|
||||
proto._getHorizontalColPosition = function( colSpan, item ) {
|
||||
var col = this.horizontalColIndex % this.cols;
|
||||
var isOver = colSpan > 1 && col + colSpan > this.cols;
|
||||
// shift to next row if item can't fit on current row
|
||||
col = isOver ? 0 : col;
|
||||
// don't let zero-size items take up space
|
||||
var hasSize = item.size.outerWidth && item.size.outerHeight;
|
||||
this.horizontalColIndex = hasSize ? col + colSpan : this.horizontalColIndex;
|
||||
|
||||
return {
|
||||
col: col,
|
||||
y: this._getColGroupY( col, colSpan ),
|
||||
};
|
||||
};
|
||||
|
||||
proto._manageStamp = function( stamp ) {
|
||||
Masonry.prototype._manageStamp = function( stamp ) {
|
||||
var stampSize = getSize( stamp );
|
||||
var offset = this._getElementOffset( stamp );
|
||||
// get the columns that this stamp affects
|
||||
|
|
@ -2465,7 +2424,7 @@ return Outlayer;
|
|||
}
|
||||
};
|
||||
|
||||
proto._getContainerSize = function() {
|
||||
Masonry.prototype._getContainerSize = function() {
|
||||
this.maxY = Math.max.apply( Math, this.colYs );
|
||||
var size = {
|
||||
height: this.maxY
|
||||
|
|
@ -2478,7 +2437,7 @@ return Outlayer;
|
|||
return size;
|
||||
};
|
||||
|
||||
proto._getContainerFitWidth = function() {
|
||||
Masonry.prototype._getContainerFitWidth = function() {
|
||||
var unusedCols = 0;
|
||||
// count unused columns
|
||||
var i = this.cols;
|
||||
|
|
@ -2492,7 +2451,7 @@ return Outlayer;
|
|||
return ( this.cols - unusedCols ) * this.columnWidth - this.gutter;
|
||||
};
|
||||
|
||||
proto.needsResizeLayout = function() {
|
||||
Masonry.prototype.needsResizeLayout = function() {
|
||||
var previousWidth = this.containerWidth;
|
||||
this.getContainerWidth();
|
||||
return previousWidth != this.containerWidth;
|
||||
|
|
@ -1,7 +1,7 @@
|
|||
/*!
|
||||
* Masonry v4.2.2
|
||||
* Masonry v4.1.1
|
||||
* Cascading grid layout library
|
||||
* https://masonry.desandro.com
|
||||
* http://masonry.desandro.com
|
||||
* MIT License
|
||||
* by David DeSandro
|
||||
*/
|
||||
|
|
@ -41,9 +41,7 @@
|
|||
// isFitWidth -> fitWidth
|
||||
Masonry.compatOptions.fitWidth = 'isFitWidth';
|
||||
|
||||
var proto = Masonry.prototype;
|
||||
|
||||
proto._resetLayout = function() {
|
||||
Masonry.prototype._resetLayout = function() {
|
||||
this.getSize();
|
||||
this._getMeasurement( 'columnWidth', 'outerWidth' );
|
||||
this._getMeasurement( 'gutter', 'outerWidth' );
|
||||
|
|
@ -56,10 +54,9 @@
|
|||
}
|
||||
|
||||
this.maxY = 0;
|
||||
this.horizontalColIndex = 0;
|
||||
};
|
||||
|
||||
proto.measureColumns = function() {
|
||||
Masonry.prototype.measureColumns = function() {
|
||||
this.getContainerWidth();
|
||||
// if columnWidth is 0, default to outerWidth of first item
|
||||
if ( !this.columnWidth ) {
|
||||
|
|
@ -84,7 +81,7 @@
|
|||
this.cols = Math.max( cols, 1 );
|
||||
};
|
||||
|
||||
proto.getContainerWidth = function() {
|
||||
Masonry.prototype.getContainerWidth = function() {
|
||||
// container is parent if fit width
|
||||
var isFitWidth = this._getOption('fitWidth');
|
||||
var container = isFitWidth ? this.element.parentNode : this.element;
|
||||
|
|
@ -94,7 +91,7 @@
|
|||
this.containerWidth = size && size.innerWidth;
|
||||
};
|
||||
|
||||
proto._getItemLayoutPosition = function( item ) {
|
||||
Masonry.prototype._getItemLayoutPosition = function( item ) {
|
||||
item.getSize();
|
||||
// how many columns does this brick span
|
||||
var remainder = item.size.outerWidth % this.columnWidth;
|
||||
|
|
@ -102,41 +99,33 @@
|
|||
// round if off by 1 pixel, otherwise use ceil
|
||||
var colSpan = Math[ mathMethod ]( item.size.outerWidth / this.columnWidth );
|
||||
colSpan = Math.min( colSpan, this.cols );
|
||||
// use horizontal or top column position
|
||||
var colPosMethod = this.options.horizontalOrder ?
|
||||
'_getHorizontalColPosition' : '_getTopColPosition';
|
||||
var colPosition = this[ colPosMethod ]( colSpan, item );
|
||||
|
||||
var colGroup = this._getColGroup( colSpan );
|
||||
// get the minimum Y value from the columns
|
||||
var minimumY = Math.min.apply( Math, colGroup );
|
||||
var shortColIndex = colGroup.indexOf( minimumY );
|
||||
|
||||
// position the brick
|
||||
var position = {
|
||||
x: this.columnWidth * colPosition.col,
|
||||
y: colPosition.y
|
||||
x: this.columnWidth * shortColIndex,
|
||||
y: minimumY
|
||||
};
|
||||
|
||||
// apply setHeight to necessary columns
|
||||
var setHeight = colPosition.y + item.size.outerHeight;
|
||||
var setMax = colSpan + colPosition.col;
|
||||
for ( var i = colPosition.col; i < setMax; i++ ) {
|
||||
this.colYs[i] = setHeight;
|
||||
var setHeight = minimumY + item.size.outerHeight;
|
||||
var setSpan = this.cols + 1 - colGroup.length;
|
||||
for ( var i = 0; i < setSpan; i++ ) {
|
||||
this.colYs[ shortColIndex + i ] = setHeight;
|
||||
}
|
||||
|
||||
return position;
|
||||
};
|
||||
|
||||
proto._getTopColPosition = function( colSpan ) {
|
||||
var colGroup = this._getTopColGroup( colSpan );
|
||||
// get the minimum Y value from the columns
|
||||
var minimumY = Math.min.apply( Math, colGroup );
|
||||
|
||||
return {
|
||||
col: colGroup.indexOf( minimumY ),
|
||||
y: minimumY,
|
||||
};
|
||||
};
|
||||
|
||||
/**
|
||||
* @param {Number} colSpan - number of columns the element spans
|
||||
* @returns {Array} colGroup
|
||||
*/
|
||||
proto._getTopColGroup = function( colSpan ) {
|
||||
Masonry.prototype._getColGroup = function( colSpan ) {
|
||||
if ( colSpan < 2 ) {
|
||||
// if brick spans only one column, use all the column Ys
|
||||
return this.colYs;
|
||||
|
|
@ -147,38 +136,15 @@
|
|||
var groupCount = this.cols + 1 - colSpan;
|
||||
// for each group potential horizontal position
|
||||
for ( var i = 0; i < groupCount; i++ ) {
|
||||
colGroup[i] = this._getColGroupY( i, colSpan );
|
||||
// make an array of colY values for that one group
|
||||
var groupColYs = this.colYs.slice( i, i + colSpan );
|
||||
// and get the max value of the array
|
||||
colGroup[i] = Math.max.apply( Math, groupColYs );
|
||||
}
|
||||
return colGroup;
|
||||
};
|
||||
|
||||
proto._getColGroupY = function( col, colSpan ) {
|
||||
if ( colSpan < 2 ) {
|
||||
return this.colYs[ col ];
|
||||
}
|
||||
// make an array of colY values for that one group
|
||||
var groupColYs = this.colYs.slice( col, col + colSpan );
|
||||
// and get the max value of the array
|
||||
return Math.max.apply( Math, groupColYs );
|
||||
};
|
||||
|
||||
// get column position based on horizontal index. #873
|
||||
proto._getHorizontalColPosition = function( colSpan, item ) {
|
||||
var col = this.horizontalColIndex % this.cols;
|
||||
var isOver = colSpan > 1 && col + colSpan > this.cols;
|
||||
// shift to next row if item can't fit on current row
|
||||
col = isOver ? 0 : col;
|
||||
// don't let zero-size items take up space
|
||||
var hasSize = item.size.outerWidth && item.size.outerHeight;
|
||||
this.horizontalColIndex = hasSize ? col + colSpan : this.horizontalColIndex;
|
||||
|
||||
return {
|
||||
col: col,
|
||||
y: this._getColGroupY( col, colSpan ),
|
||||
};
|
||||
};
|
||||
|
||||
proto._manageStamp = function( stamp ) {
|
||||
Masonry.prototype._manageStamp = function( stamp ) {
|
||||
var stampSize = getSize( stamp );
|
||||
var offset = this._getElementOffset( stamp );
|
||||
// get the columns that this stamp affects
|
||||
|
|
@ -201,7 +167,7 @@
|
|||
}
|
||||
};
|
||||
|
||||
proto._getContainerSize = function() {
|
||||
Masonry.prototype._getContainerSize = function() {
|
||||
this.maxY = Math.max.apply( Math, this.colYs );
|
||||
var size = {
|
||||
height: this.maxY
|
||||
|
|
@ -214,7 +180,7 @@
|
|||
return size;
|
||||
};
|
||||
|
||||
proto._getContainerFitWidth = function() {
|
||||
Masonry.prototype._getContainerFitWidth = function() {
|
||||
var unusedCols = 0;
|
||||
// count unused columns
|
||||
var i = this.cols;
|
||||
|
|
@ -228,7 +194,7 @@
|
|||
return ( this.cols - unusedCols ) * this.columnWidth - this.gutter;
|
||||
};
|
||||
|
||||
proto.needsResizeLayout = function() {
|
||||
Masonry.prototype.needsResizeLayout = function() {
|
||||
var previousWidth = this.containerWidth;
|
||||
this.getContainerWidth();
|
||||
return previousWidth != this.containerWidth;
|
||||
21
_site/bower_components/outlayer/item.js
vendored
21
_site/bower_components/outlayer/item.js
vendored
|
|
@ -133,16 +133,13 @@ proto.getPosition = function() {
|
|||
var isOriginTop = this.layout._getOption('originTop');
|
||||
var xValue = style[ isOriginLeft ? 'left' : 'right' ];
|
||||
var yValue = style[ isOriginTop ? 'top' : 'bottom' ];
|
||||
var x = parseFloat( xValue );
|
||||
var y = parseFloat( yValue );
|
||||
// convert percent to pixels
|
||||
var layoutSize = this.layout.size;
|
||||
if ( xValue.indexOf('%') != -1 ) {
|
||||
x = ( x / 100 ) * layoutSize.width;
|
||||
}
|
||||
if ( yValue.indexOf('%') != -1 ) {
|
||||
y = ( y / 100 ) * layoutSize.height;
|
||||
}
|
||||
var x = xValue.indexOf('%') != -1 ?
|
||||
( parseFloat( xValue ) / 100 ) * layoutSize.width : parseInt( xValue, 10 );
|
||||
var y = yValue.indexOf('%') != -1 ?
|
||||
( parseFloat( yValue ) / 100 ) * layoutSize.height : parseInt( yValue, 10 );
|
||||
|
||||
// clean up 'auto' or other non-integer values
|
||||
x = isNaN( x ) ? 0 : x;
|
||||
y = isNaN( y ) ? 0 : y;
|
||||
|
|
@ -205,7 +202,9 @@ proto._transitionTo = function( x, y ) {
|
|||
var curX = this.position.x;
|
||||
var curY = this.position.y;
|
||||
|
||||
var didNotMove = x == this.position.x && y == this.position.y;
|
||||
var compareX = parseInt( x, 10 );
|
||||
var compareY = parseInt( y, 10 );
|
||||
var didNotMove = compareX === this.position.x && compareY === this.position.y;
|
||||
|
||||
// save end position
|
||||
this.setPosition( x, y );
|
||||
|
|
@ -248,8 +247,8 @@ proto.goTo = function( x, y ) {
|
|||
proto.moveTo = proto._transitionTo;
|
||||
|
||||
proto.setPosition = function( x, y ) {
|
||||
this.position.x = parseFloat( x );
|
||||
this.position.y = parseFloat( y );
|
||||
this.position.x = parseInt( x, 10 );
|
||||
this.position.y = parseInt( y, 10 );
|
||||
};
|
||||
|
||||
// ----- transition ----- //
|
||||
|
|
|
|||
2
_site/bower_components/outlayer/outlayer.js
vendored
2
_site/bower_components/outlayer/outlayer.js
vendored
|
|
@ -1,5 +1,5 @@
|
|||
/*!
|
||||
* Outlayer v2.1.1
|
||||
* Outlayer v2.1.0
|
||||
* the brains and guts of a layout library
|
||||
* MIT license
|
||||
*/
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
|
|
@ -1,19 +1,53 @@
|
|||
[
|
||||
|
||||
{
|
||||
<<<<<<< HEAD
|
||||
"title": "Cyborgian Spaces",
|
||||
"description": "During her presentation, she will discuss her work with the curator and art historian Johanna Hohage (Berlin), whose research is focused on art and feminism, technology and new medias.",
|
||||
"artist": "Kate Danyu Chen",
|
||||
"talk_video_url": "",
|
||||
"topics": "cyborg, feminism, performance, installation"
|
||||
=======
|
||||
"title": "Phygital Immersive Experiences",
|
||||
"description": "For Scope #78 INNATIVE LAB will introduce their artistic research on the phenomenon of interconnection between humans and with nature, focused on the study of ancestral practices and the use of cutting-edge sensing technologies. An insight into the interdisciplinarity within the combination of Neuroscience, Visual Arts and Performance Art.",
|
||||
"artist": "Innative Lab",
|
||||
"talk_video_url": "",
|
||||
"topics": "nature"
|
||||
},
|
||||
|
||||
{
|
||||
"title": "The Complaints Department",
|
||||
"description": "The talk will cover transitions, New Work und die Zukunft!****CONTENT WARNING FOR THIS TALK**** Some content may trigger mental health issues, cause epilepsy and/or offend viewers sensitive to pornographic, stroboscopic, psychedelic or traumatic audio visual material.",
|
||||
"artist": "Matt Gingold (aka Helen Back aka gameover/hack)",
|
||||
"talk_video_url": "",
|
||||
"topics": "audiovisual"
|
||||
}
|
||||
|
||||
,
|
||||
|
||||
|
||||
{
|
||||
"title": "Cyborgian Spaces",
|
||||
"description": "Currently, her research focuses on Donna Haraway’s post-humanist concept of the 'cyborg' as a synthesis of dualisms — human/machine, male/female, natural/artificial, virtual/real — to critically reconstruct an understanding of being and consciousness. She recently took part to the exhibition « Un_becoming: The Erotic, the Body & technology » in SomoS Art Gallery in the context of the Berlin Pornfilm Festival 2018 and presented there the Installation/Video piece «Offline Venus : Memories and myths of the Cyborg».",
|
||||
"artist": "Kate Danyu Chen",
|
||||
"talk_video_url": "",
|
||||
"topics": "CYborg"
|
||||
>>>>>>> 1f73d0f078cc399e14b6596f6e4862c4f84a2d0c
|
||||
},
|
||||
|
||||
{
|
||||
"title": "Four-Dimensional Sound Choreographies",
|
||||
<<<<<<< HEAD
|
||||
"description": "Mila Chiral will talk about her music, her transdisciplinary artworks and collaborations. In selected examples she will give an insight to her artistic approach and techniques, including her artistic background from dance/choreography to electronic music and interdisciplinary art forms such as digital arts. At the end of the talk, Mila Chiral will show as a premiere the brand-new video directed by Faulty Agatha by Was Deferenz to her track 'Stars & Flowers' from the album 'WHERE TIME MEETS SPACE' (2017).",
|
||||
"artist": "Mila Chiral",
|
||||
"talk_video_url": "",
|
||||
"topics": "music, dance"
|
||||
=======
|
||||
"description": "Mila Chiral is part of minutektiv, a group of female* music producers from Berlin, and of the transdisciplinary art collective WAH (Weber / Anderson / Helschinger) in which she performs with dance, voice, acoustic soundscapes, electronic music, poetry and elements from visual arts, questioning the inherent relationship of existential and artistic freedom. Mila Chiral is also one of the organizers of MEETUP Berlin, a new and growing community of female-identifying, trans and non-binary artists in the fields of electronic music and arts and a member of female:pressure.",
|
||||
"artist": "Mila Chiral",
|
||||
"talk_video_url": "",
|
||||
"topics": "Electronic music"
|
||||
>>>>>>> 1f73d0f078cc399e14b6596f6e4862c4f84a2d0c
|
||||
}
|
||||
|
||||
,
|
||||
|
|
|
|||
|
|
@ -4,11 +4,43 @@
|
|||
<title>Scope Sessions Artist talks & media salon</title>
|
||||
<description>Scope is a meeting point for the creative and the curious, a platform for sharing and learning in an informal setting. Guest artists are invited to present a project, a concept, a process or an experience. The presentations are short, around 40 minutes and unrestricted in form. Each session offers a variety of topics and approaches; Scope is about exposure, not for the artist, but for the audience. If you wish to share at one of our sessions send us a mail to mail [at] scopesessions [dot] org. Our focus is on intermedia arts and technologies, but we love to be surprised..!
|
||||
</description>
|
||||
<<<<<<< HEAD
|
||||
<link>http://localhost:4000/</link>
|
||||
<atom:link href="http://localhost:4000 /feed.xml " rel="self" type="application/rss+xml" />
|
||||
<pubDate>Wed, 07 Nov 2018 20:56:34 +0100</pubDate>
|
||||
<lastBuildDate>Wed, 07 Nov 2018 20:56:34 +0100</lastBuildDate>
|
||||
<generator>Jekyll v3.3.1</generator>
|
||||
=======
|
||||
<link>http://scopesessions.org/</link>
|
||||
<atom:link href="http://scopesessions.org /feed.xml " rel="self" type="application/rss+xml" />
|
||||
<pubDate>Mon, 03 Dec 2018 22:29:42 +0100</pubDate>
|
||||
<lastBuildDate>Mon, 03 Dec 2018 22:29:42 +0100</lastBuildDate>
|
||||
<generator>Jekyll v3.1.6</generator>
|
||||
|
||||
<item>
|
||||
<title>078</title>
|
||||
<description>
|
||||
</description>
|
||||
<pubDate>Thu, 13 Dec 2018 00:00:00 +0100</pubDate>
|
||||
<link>http://scopesessions.org/session/2018/12/13/078.html</link>
|
||||
<guid isPermaLink="true">http://scopesessions.org/session/2018/12/13/078.html</guid>
|
||||
|
||||
<category>session</category>
|
||||
|
||||
</item>
|
||||
|
||||
<item>
|
||||
<title>077</title>
|
||||
<description>
|
||||
</description>
|
||||
<pubDate>Thu, 08 Nov 2018 00:00:00 +0100</pubDate>
|
||||
<link>http://scopesessions.org/session/2018/11/08/077.html</link>
|
||||
<guid isPermaLink="true">http://scopesessions.org/session/2018/11/08/077.html</guid>
|
||||
|
||||
<category>session</category>
|
||||
|
||||
</item>
|
||||
>>>>>>> 1f73d0f078cc399e14b6596f6e4862c4f84a2d0c
|
||||
|
||||
<item>
|
||||
<title>077</title>
|
||||
|
|
@ -118,6 +150,7 @@
|
|||
|
||||
</item>
|
||||
|
||||
<<<<<<< HEAD
|
||||
<item>
|
||||
<title>069</title>
|
||||
<description>
|
||||
|
|
@ -130,5 +163,7 @@
|
|||
|
||||
</item>
|
||||
|
||||
=======
|
||||
>>>>>>> 1f73d0f078cc399e14b6596f6e4862c4f84a2d0c
|
||||
</channel>
|
||||
</rss>
|
||||
|
|
|
|||
1462
_site/index.html
1462
_site/index.html
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
|
|
@ -16,7 +16,11 @@
|
|||
<tbody>
|
||||
<tr>
|
||||
<td class="mcnImageContent" style="padding-right: 9px;padding-left: 9px;padding-top: 0;padding-bottom: 0;mso-table-lspace: 0pt;mso-table-rspace: 0pt;-ms-text-size-adjust: 100%;-webkit-text-size-adjust: 100%;" valign="top">
|
||||
<<<<<<< HEAD
|
||||
<img alt="" src="http://scopesessions.org/images/cyborg.webp" style="max-width: 3786px;padding-bottom: 0;display: inline !important;vertical-align: bottom;border: 0;outline: none;text-decoration: none;-ms-interpolation-mode: bicubic;" class="mcnImage"
|
||||
=======
|
||||
<img alt="" src="http://scopesessions.org/images/deep_waves_press5.jpg" style="max-width: 3786px;padding-bottom: 0;display: inline !important;vertical-align: bottom;border: 0;outline: none;text-decoration: none;-ms-interpolation-mode: bicubic;" class="mcnImage"
|
||||
>>>>>>> 1f73d0f078cc399e14b6596f6e4862c4f84a2d0c
|
||||
width="564" align="left">
|
||||
</td>
|
||||
</tr>
|
||||
|
|
@ -40,6 +44,7 @@
|
|||
valign="top">
|
||||
|
||||
<h3 class="null" style="margin: 0;padding: 0;display: block;font-family: Helvetica;font-size: 18px;font-style: normal;font-weight: bold;line-height: 125%;letter-spacing: -.5px;text-align: left;color: #606060 !important;">
|
||||
<<<<<<< HEAD
|
||||
<span class="fsl">20:00 / Cyborgian Spaces</span>
|
||||
</h3>
|
||||
|
||||
|
|
@ -52,6 +57,20 @@
|
|||
<br>
|
||||
<br>
|
||||
<span class="fsl">During her presentation, she will discuss her work with the curator and art historian Johanna Hohage (Berlin), whose research is focused on art and feminism, technology and new medias.</span>
|
||||
=======
|
||||
<span class="fsl">20:00 / Phygital Immersive Experiences</span>
|
||||
</h3>
|
||||
|
||||
<h4 class="null" style="margin: 0;padding: 0;display: block;font-family: Helvetica;font-size: 16px;font-style: normal;font-weight: bold;line-height: 125%;letter-spacing: normal;text-align: left;color: #808080 !important;">
|
||||
<a href="http://innativelab.com" target="_blank" style="word-wrap: break-word;-ms-text-size-adjust: 100%;-webkit-text-size-adjust: 100%;color: #6DC6DD;font-weight: normal;text-decoration: underline;">
|
||||
<span class="fsl">Innative Lab</span>
|
||||
</a>
|
||||
</h4>
|
||||
<span class="fsl">Founded in 2017 in Berlin, INNATIVE LAB aims to create immersive experiences through the connection of art and sensing technologies. Parting from the fields of contemporary dance, performance art, neuroscience, audiovisual art and FashTech, INNATIVE LAB thinks of its experimental collaborations as ways of overcoming the barriers between disciplines. Its first performance, DEEP WAVES, adapts ancestral rituals with today’s technology to explore primal ways of connecting; ancient knowledge of influencing neuronal activity joins modern approaches of neuroscience.</span>
|
||||
<br>
|
||||
<br>
|
||||
<span class="fsl">For Scope #78 INNATIVE LAB will introduce their artistic research on the phenomenon of interconnection between humans and with nature, focused on the study of ancestral practices and the use of cutting-edge sensing technologies. An insight into the interdisciplinarity within the combination of Neuroscience, Visual Arts and Performance Art.</span>
|
||||
>>>>>>> 1f73d0f078cc399e14b6596f6e4862c4f84a2d0c
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
|
|
@ -96,7 +115,11 @@
|
|||
<tbody>
|
||||
<tr>
|
||||
<td class="mcnImageContent" style="padding-right: 9px;padding-left: 9px;padding-top: 0;padding-bottom: 0;mso-table-lspace: 0pt;mso-table-rspace: 0pt;-ms-text-size-adjust: 100%;-webkit-text-size-adjust: 100%;" valign="top">
|
||||
<<<<<<< HEAD
|
||||
<img alt="" src="http://scopesessions.org/images/chiral.jpg" style="max-width: 3786px;padding-bottom: 0;display: inline !important;vertical-align: bottom;border: 0;outline: none;text-decoration: none;-ms-interpolation-mode: bicubic;" class="mcnImage"
|
||||
=======
|
||||
<img alt="" src="http://scopesessions.org/images/46513416_10157739415452316_2074904593392730112_n.jpg" style="max-width: 3786px;padding-bottom: 0;display: inline !important;vertical-align: bottom;border: 0;outline: none;text-decoration: none;-ms-interpolation-mode: bicubic;" class="mcnImage"
|
||||
>>>>>>> 1f73d0f078cc399e14b6596f6e4862c4f84a2d0c
|
||||
width="564" align="left">
|
||||
</td>
|
||||
</tr>
|
||||
|
|
@ -120,6 +143,7 @@
|
|||
valign="top">
|
||||
|
||||
<h3 class="null" style="margin: 0;padding: 0;display: block;font-family: Helvetica;font-size: 18px;font-style: normal;font-weight: bold;line-height: 125%;letter-spacing: -.5px;text-align: left;color: #606060 !important;">
|
||||
<<<<<<< HEAD
|
||||
<span class="fsl">21:00 / Four-Dimensional Sound Choreographies</span>
|
||||
</h3>
|
||||
|
||||
|
|
@ -132,6 +156,20 @@
|
|||
<br>
|
||||
<br>
|
||||
<span class="fsl">Mila Chiral will talk about her music, her transdisciplinary artworks and collaborations. In selected examples she will give an insight to her artistic approach and techniques, including her artistic background from dance/choreography to electronic music and interdisciplinary art forms such as digital arts. At the end of the talk, Mila Chiral will show as a premiere the brand-new video directed by Faulty Agatha by Was Deferenz to her track 'Stars & Flowers' from the album 'WHERE TIME MEETS SPACE' (2017).</span>
|
||||
=======
|
||||
<span class="fsl">21:00 / The Complaints Department</span>
|
||||
</h3>
|
||||
|
||||
<h4 class="null" style="margin: 0;padding: 0;display: block;font-family: Helvetica;font-size: 16px;font-style: normal;font-weight: bold;line-height: 125%;letter-spacing: normal;text-align: left;color: #808080 !important;">
|
||||
<a href="https://gin.gold" target="_blank" style="word-wrap: break-word;-ms-text-size-adjust: 100%;-webkit-text-size-adjust: 100%;color: #6DC6DD;font-weight: normal;text-decoration: underline;">
|
||||
<span class="fsl">Matt Gingold (aka Helen Back aka gameover/hack)</span>
|
||||
</a>
|
||||
</h4>
|
||||
<span class="fsl">Matt Gingold (aka Helen Back aka gameover/hack) is a trans-feminist artist, producer, curator, critic and coder. Emerging from a multiplicity of Melbourne’s queer, drug and techno scenes in the 90s, they have established their multiple identities in political activism, open source coding, community engagement, real-time media systems, interactivity, installation and perceptual experimentation. Their work has been performed, exhibited and awarded widely including a Prix Ars Electronica Award of Distinction and a Green Room Award for Best Video Design. They have also received numerous honorary fellowships in the area of computer vision, machine learning and dance/somatic intelligence. Since 2015 they live and work from Berlin and Halle (an der Saale), DE.</span>
|
||||
<br>
|
||||
<br>
|
||||
<span class="fsl">The talk will cover transitions, New Work und die Zukunft!****CONTENT WARNING FOR THIS TALK**** Some content may trigger mental health issues, cause epilepsy and/or offend viewers sensitive to pornographic, stroboscopic, psychedelic or traumatic audio visual material.</span>
|
||||
>>>>>>> 1f73d0f078cc399e14b6596f6e4862c4f84a2d0c
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
|
|
@ -160,7 +198,11 @@
|
|||
</tbody>
|
||||
</table>
|
||||
|
||||
<<<<<<< HEAD
|
||||
|
||||
=======
|
||||
|
||||
>>>>>>> 1f73d0f078cc399e14b6596f6e4862c4f84a2d0c
|
||||
</body>
|
||||
|
||||
</html>
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Add a link
Reference in a new issue