Update Semantic to 2.1

Ticket #56
This commit is contained in:
Tim Schumacher 2016-06-10 00:34:34 +02:00
parent 3f1e728781
commit 4385f1acbc
425 changed files with 59924 additions and 37200 deletions

View file

@ -1,322 +0,0 @@
{
"remove-empty-rulesets": true,
"always-semicolon": true,
"color-case": "upper",
"block-indent": " ",
"color-shorthand": false,
"element-case": "lower",
"leading-zero": true,
"space-after-colon": " ",
"space-before-combinator": " ",
"space-after-combinator": " ",
"space-between-declarations": "\n",
"space-before-opening-brace": " ",
"space-after-opening-brace": "\n",
"space-after-selector-delimiter": "\n",
"space-before-selector-delimiter": "",
"space-before-closing-brace": "\n",
"strip-spaces": true,
"tab-size": true,
"vendor-prefix-align": true,
"sort-order": [
[
"display",
"visibility",
"float",
"clear",
"overflow",
"overflow-x",
"overflow-y",
"-webkit-box-sizing",
"-moz-box-sizing",
"box-sizing",
"-ms-overflow-x",
"-ms-overflow-y",
"clip",
"zoom",
"flex-direction",
"flex-order",
"flex-pack",
"flex-align"
],
[
"position",
"z-index",
"top",
"right",
"bottom",
"left"
],
[
"font",
"font-family",
"font-size",
"font-weight",
"font-style",
"font-variant",
"font-size-adjust",
"font-stretch",
"font-effect",
"font-emphasize",
"font-emphasize-position",
"font-emphasize-style",
"font-smooth",
"line-height"
],
[
"width",
"min-width",
"max-width",
"height",
"min-height",
"max-height",
"margin",
"margin-top",
"margin-right",
"margin-bottom",
"margin-left",
"padding",
"padding-top",
"padding-right",
"padding-bottom",
"padding-left"
],
[
"table-layout",
"empty-cells",
"caption-side",
"border-spacing",
"border-collapse",
"list-style",
"list-style-position",
"list-style-type",
"list-style-image"
],
[
"opacity",
"filter:progid:DXImageTransform.Microsoft.Alpha(Opacity",
"-ms-filter:\\'progid:DXImageTransform.Microsoft.Alpha",
"-ms-interpolation-mode",
"color",
"border",
"border-width",
"border-style",
"border-color",
"border-top",
"border-top-width",
"border-top-style",
"border-top-color",
"border-right",
"border-right-width",
"border-right-style",
"border-right-color",
"border-bottom",
"border-bottom-width",
"border-bottom-style",
"border-bottom-color",
"border-left",
"border-left-width",
"border-left-style",
"border-left-color",
"-webkit-border-radius",
"-moz-border-radius",
"border-radius",
"-webkit-border-top-left-radius",
"-moz-border-radius-topleft",
"border-top-left-radius",
"-webkit-border-top-right-radius",
"-moz-border-radius-topright",
"border-top-right-radius",
"-webkit-border-bottom-right-radius",
"-moz-border-radius-bottomright",
"border-bottom-right-radius",
"-webkit-border-bottom-left-radius",
"-moz-border-radius-bottomleft",
"border-bottom-left-radius",
"-webkit-border-image",
"-moz-border-image",
"-o-border-image",
"border-image",
"-webkit-border-image-source",
"-moz-border-image-source",
"-o-border-image-source",
"border-image-source",
"-webkit-border-image-slice",
"-moz-border-image-slice",
"-o-border-image-slice",
"border-image-slice",
"-webkit-border-image-width",
"-moz-border-image-width",
"-o-border-image-width",
"border-image-width",
"-webkit-border-image-outset",
"-moz-border-image-outset",
"-o-border-image-outset",
"border-image-outset",
"-webkit-border-image-repeat",
"-moz-border-image-repeat",
"-o-border-image-repeat",
"border-image-repeat",
"outline",
"outline-width",
"outline-style",
"outline-color",
"outline-offset",
"background",
"filter:progid:DXImageTransform.Microsoft.AlphaImageLoader",
"background-color",
"background-image",
"background-repeat",
"background-attachment",
"background-position",
"background-position-x",
"-ms-background-position-x",
"background-position-y",
"-ms-background-position-y",
"-webkit-background-clip",
"-moz-background-clip",
"background-clip",
"background-origin",
"-webkit-background-size",
"-moz-background-size",
"-o-background-size",
"background-size",
"box-decoration-break",
"-webkit-box-shadow",
"-moz-box-shadow",
"box-shadow",
"filter:progid:DXImageTransform.Microsoft.gradient",
"-ms-filter:\\'progid:DXImageTransform.Microsoft.gradient",
"text-shadow"
],
[
"content",
"quotes",
"counter-reset",
"counter-increment",
"resize",
"cursor",
"-webkit-user-select",
"-moz-user-select",
"-ms-user-select",
"user-select",
"nav-index",
"nav-up",
"nav-right",
"nav-down",
"nav-left",
"-webkit-transition",
"-moz-transition",
"-ms-transition",
"-o-transition",
"transition",
"-webkit-transition-delay",
"-moz-transition-delay",
"-ms-transition-delay",
"-o-transition-delay",
"transition-delay",
"-webkit-transition-timing-function",
"-moz-transition-timing-function",
"-ms-transition-timing-function",
"-o-transition-timing-function",
"transition-timing-function",
"-webkit-transition-duration",
"-moz-transition-duration",
"-ms-transition-duration",
"-o-transition-duration",
"transition-duration",
"-webkit-transition-property",
"-moz-transition-property",
"-ms-transition-property",
"-o-transition-property",
"transition-property",
"-webkit-transform",
"-moz-transform",
"-ms-transform",
"-o-transform",
"transform",
"-webkit-transform-origin",
"-moz-transform-origin",
"-ms-transform-origin",
"-o-transform-origin",
"transform-origin",
"-webkit-animation",
"-moz-animation",
"-ms-animation",
"-o-animation",
"animation",
"-webkit-animation-name",
"-moz-animation-name",
"-ms-animation-name",
"-o-animation-name",
"animation-name",
"-webkit-animation-duration",
"-moz-animation-duration",
"-ms-animation-duration",
"-o-animation-duration",
"animation-duration",
"-webkit-animation-play-state",
"-moz-animation-play-state",
"-ms-animation-play-state",
"-o-animation-play-state",
"animation-play-state",
"-webkit-animation-timing-function",
"-moz-animation-timing-function",
"-ms-animation-timing-function",
"-o-animation-timing-function",
"animation-timing-function",
"-webkit-animation-delay",
"-moz-animation-delay",
"-ms-animation-delay",
"-o-animation-delay",
"animation-delay",
"-webkit-animation-iteration-count",
"-moz-animation-iteration-count",
"-ms-animation-iteration-count",
"-o-animation-iteration-count",
"animation-iteration-count",
"-webkit-animation-direction",
"-moz-animation-direction",
"-ms-animation-direction",
"-o-animation-direction",
"animation-direction",
"text-align",
"-webkit-text-align-last",
"-moz-text-align-last",
"-ms-text-align-last",
"text-align-last",
"vertical-align",
"white-space",
"text-decoration",
"text-emphasis",
"text-emphasis-color",
"text-emphasis-style",
"text-emphasis-position",
"text-indent",
"-ms-text-justify",
"text-justify",
"letter-spacing",
"word-spacing",
"-ms-writing-mode",
"text-outline",
"text-transform",
"text-wrap",
"text-overflow",
"-ms-text-overflow",
"text-overflow-ellipsis",
"text-overflow-mode",
"-ms-word-wrap",
"word-wrap",
"word-break",
"-ms-word-break",
"-moz-tab-size",
"-o-tab-size",
"tab-size",
"-webkit-hyphens",
"-moz-hyphens",
"hyphens",
"pointer-events"
]
]
}

View file

@ -1,18 +0,0 @@
{
"vendor-prefix" : true,
"duplicate-properties" : true,
"display-property-grouping" : true,
"empty-rules" : true,
"adjoining-classes" : false,
"box-model" : false,
"compatible-vendor-prefixes" : false,
"box-sizing" : false,
"duplicate-background-images" : false,
"floats" : false,
"important" : false,
"overqualified-elements" : false,
"rules-count" : false,
"shorthand" : false,
"zero-units" : false
}

View file

@ -1,36 +0,0 @@
node_modules/
test/coverage/
coverage/
src/**/site/
theme.config
semantic.json
tasks/**/oauth.js
# Numerous always-ignore extensions
*.diff
*.err
*.orig
*.log
*.rej
*.swo
*.swp
*.zip
*.vi
*~
*.sass-cache
*.ruby-version
# OS or Editor folders
.DS_Store
._*
Thumbs.db
.cache
.project
.settings
.tmproj
.docpad.db
*.esproj
nbproject
*.sublime-project
*.sublime-workspace
.build*

View file

@ -1,38 +0,0 @@
{
"globals": {
"$" : true,
"afterEach" : true,
"AnimatedPNG" : true,
"beforeEach" : true,
"console" : true,
"describe" : true,
"expect" : true,
"it" : true,
"jQuery" : true,
"loadFixtures" : true,
"module" : true,
"requestAnimationFrame" : true,
"require" : true,
"semantic" : true
},
"debug" : false,
"devel" : true,
"browser" : true,
"curly" : true,
"immed" : true,
"latedef" : true,
"loopfunc" : true,
"noarg" : true,
"undef" : true,
"sub" : true,
"loopfunc" : true,
"laxbreak" : true,
"evil" : true,
"indent" : false,
"trailing" : false
}

View file

@ -1,16 +1,38 @@
# Contributing # Contributing to Semantic UI
### Bugs & Issues ### Usage Questions
Please submit any bugs you encounter when using the library to our [Github Issues Tracker](https://github.com/Semantic-Org/Semantic-UI/issues). Questions about usage should be asked on [the ProjectTalk message board](http://www.projecttalk.io/boards/Semantic-Org%2FSemantic-UI), [StackOverflow](http://stackoverflow.com/questions/tagged/semantic-ui) or [Gitter](https://gitter.im/Semantic-Org/Semantic-UI).
When submiting a bug report, please include a set of steps to reproduce the issue and any related information, browser, OS etc. If we can't see the issue then it will make solving things much more difficult. Examples of usage questions
* *Why isnt my code working?*
Please create a fork of this [jsfiddle](http://jsfiddle.net/efp8z6Ln/) to demonstrate bugs. * *Can Semantic UI do this?*
### Pull Requests Once you receive feedback through community channels you may find your question is actually a bug. At this point it's a good idea to submit it as a bug report. Just keep in mind the following suggestions.
Anyone can jump on the issues board and grab off bugs to fix. This is probably the best way to become a contributor to Semantic. Be sure to adhere to the style guides when submitting code. ### Bugs & Issues
* [Create a Pull Request](https://github.com/Semantic-Org/Semantic-UI/compare) **Please create a fork of this [jsfiddle](http://jsfiddle.net/efp8z6Ln/) to demonstrate bugs.**
* [View Open Issues](https://github.com/Semantic-Org/Semantic-UI/issues)
[Github Issues Tracker](https://github.com/Semantic-Org/Semantic-UI/issues) is used to track all upcoming milestones and changes to the project.
When submiting a bug report, please include a set of steps to reproduce the issue and any related information, browser, OS etc. If we can't see the issue then it will make solving things much more difficult.
If your bug uses a third party framework like Ember, Meteor, or Angular. Be sure to submit the issue to their respective issues boards. If you are confident the bug is part of the 'vanilla' SUI release, keep in mind not all maintainers are familiar with all framework and a simple test case is greatly appreciated.
If your bug is reproduced by a maintainer it will be asssigned the [`confirmed bug`](https://github.com/Semantic-Org/Semantic-UI/issues?q=is%3Aopen+is%3Aissue+label%3A%22Confirmed+Bug%22) tag. Browsing this tag is a good way to keep track of known issues with SUI.
### Upcoming Releases & Roadmap
As bugs and features are triaged they will be assigned to milestones. The best indication of when a change will land is to check the date on the [upcoming milestones](https://github.com/Semantic-Org/Semantic-UI/milestones) page.
### Pull Requests
**All pull requests should be merged into the `next` branch.**
Anyone can jump on the issues board and grab off bugs to fix. This is probably the best way to become a contributor to Semantic. Be sure to adhere to the style guides when submitting code.
* [Create a Pull Request](https://github.com/Semantic-Org/Semantic-UI/compare)
* [View Open Issues](https://github.com/Semantic-Org/Semantic-UI/issues)

View file

@ -4,6 +4,9 @@
[![Join the chat at https://gitter.im/Semantic-Org/Semantic-UI](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/Semantic-Org/Semantic-UI?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) [![Join the chat at https://gitter.im/Semantic-Org/Semantic-UI](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/Semantic-Org/Semantic-UI?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
[![ProjectTalk Messageboard](http://www.projecttalk.io/images/gh_badge-3e578a9f437f841de7446bab9a49d103.svg?vsn=d)]
(http://www.projecttalk.io/boards/Semantic-Org%2FSemantic-UI?utm_campaign=gh-badge&utm_medium=badge&utm_source=github)
Semantic is a UI framework designed for theming. Semantic is a UI framework designed for theming.
Key Features Key Features
@ -13,6 +16,12 @@ Key Features
* Built with EM values for responsive design * Built with EM values for responsive design
* Flexbox friendly * Flexbox friendly
## 2.1 Release
Semantic UI `2.1` is now available. Read up on [what's new](http://www.semantic-ui.com/introduction/new.html) in the docs.
Migration info from `1.x` can be found in the [2.0 release notes](https://github.com/Semantic-Org/Semantic-UI/blob/master/RELEASE-NOTES.md#version-200---march-xx-2015)
## Install ## Install
#### Recommended Install #### Recommended Install
@ -20,38 +29,54 @@ Key Features
npm install semantic-ui # Use themes, import build/watch tasks into your own gulpfile. npm install semantic-ui # Use themes, import build/watch tasks into your own gulpfile.
``` ```
Semantic UI includes an interactive installer to help setup your project
![Getting Started](https://dl.dropboxusercontent.com/u/2657007/install.gif) ![Getting Started](https://dl.dropboxusercontent.com/u/2657007/install.gif)
For details on how work with Semantic theming please [read our customization guide](http://learnsemantic.com/developing/customizing.html) on [LearnSemantic.com](http://learnsemantic.com/) * For more details on setup visit our [getting started guide](http://semantic-ui.com/introduction/getting-started.html).
* To learn more about theming please read our [theming guide](http://www.semantic-ui.com/usage/theming.html)
#### Additional Versions #### Additional Versions
Environment | Install Script | Repo Environment | Install Script | Repo
--- | --- | --- | --- | --- | --- |
CSS Only | `npm install semantic-ui-css` | [CSS Repo](https://github.com/Semantic-Org/Semantic-UI-CSS) CSS Only | `npm install semantic-ui-css` | [CSS Repo](https://github.com/Semantic-Org/Semantic-UI-CSS)
[LESS](https://github.com/less/less.js/) Only | `npm install semantic-ui-less` | [LESS Repo](https://github.com/Semantic-Org/Semantic-UI-LESS) [LESS](https://github.com/less/less.js/) Only | `npm install semantic-ui-less` | [LESS Repo](https://github.com/Semantic-Org/Semantic-UI-LESS)
[LESS](https://github.com/less/less.js/) plugin | `npm install less-plugin-semantic-ui` | [LESS Plugin Repo](https://github.com/bassjobsen/less-plugin-semantic-ui/)
[EmberJS](http://emberjs.com/) | `ember install:addon semantic-ui-ember` | [Ember Repo](https://github.com/Semantic-Org/Semantic-UI-Ember) [EmberJS](http://emberjs.com/) | `ember install:addon semantic-ui-ember` | [Ember Repo](https://github.com/Semantic-Org/Semantic-UI-Ember)
|[Meteor](https://www.meteor.com/) - [LESS](https://github.com/less/less.js/) | `meteor add semantic:ui` | [LESS Repo](https://github.com/Semantic-Org/Semantic-UI-LESS) | |[Meteor](https://www.meteor.com/) - [LESS](https://github.com/less/less.js/) | `meteor add semantic:ui` | [Meteor Repo](https://github.com/Semantic-Org/Semantic-UI-Meteor) |
|[Meteor](https://www.meteor.com/) - CSS | `meteor add semantic:ui-css` | [CSS Repo](https://github.com/Semantic-Org/Semantic-UI-CSS) | |[Meteor](https://www.meteor.com/) - CSS | `meteor add semantic:ui-css` | [CSS Repo](https://github.com/Semantic-Org/Semantic-UI-CSS) |
[Bower](http://bower.io/) | `bower install semantic-ui` | [Bower](http://bower.io/) | `bower install semantic-ui` |
Check out our [integration wiki](https://github.com/Semantic-Org/Semantic-UI/wiki/Integration) for more options. Check out our [integration wiki](https://github.com/Semantic-Org/Semantic-UI/wiki/Integration) for more options.
#### Browser Support #### Browser Support
* Last 2 Versions FF, Chrome, IE 10+ * Last 2 Versions FF, Chrome, IE 10+, Safari Mac
* Safari 6 * IE 10+
* IE 9+ (Browser prefix only) * Android 4.4+, Chrome for Android 44+
* Android 4 * iOS Safari 7+
* Blackberry 10
Browser prefixes are present for Internet Explorer 9, but the browser is not officially supported. Although some components will work in IE9, [grids](http://semantic-ui.com/collections/grid.html) and other [flexbox](https://developer.mozilla.org/en-US/docs/Web/Guide/CSS/Flexible_boxes) components are not supported by IE9 and may not appear correctly.
## Community ## Community
#### Getting Help
Please **do not post** usage questions to GitHub Issues. For these types of questions use [StackOverflow](http://stackoverflow.com/questions/tagged/semantic-ui), [ProjectTalk](http://www.projecttalk.io/boards/Semantic-Org%2FSemantic-UI) or join our [Gitter chatroom](https://gitter.im/Semantic-Org/Semantic-UI).
#### Submitting Bugs and Enhancements
[GitHub Issues](https://github.com/Semantic-Org/Semantic-UI/issues) is for suggesting enhancements and reporting bugs. Before submiting a bug make sure you do the following:
* Check out our [contributing guide](https://github.com/Semantic-Org/Semantic-UI/blob/master/CONTRIBUTING.md) for info on our release cycle
* [Fork this boilerplate JSFiddle](http://jsfiddle.net/efp8z6Ln/) to create a test case for your bug. If a bug is demonstratable from the docs, that's ok as well. Only bugs that include a test case can be triaged.
#### Pull Requests
When adding pull requests be sure to merge into [next](https://github.com/Semantic-Org/Semantic-UI/tree/next) branch. If you need to demonstrate a fix in ``next`` release, you can use [this jsfiddle](http://jsfiddle.net/rduvhn8u/1/)
#### International #### International
* **Chinese** A Chinese mirror site is available at [http://www.semantic-ui.cn](http:/www.semantic-ui.cn) * **Chinese** A Chinese mirror site is available at [http://www.semantic-ui.cn](http://www.semantic-ui.cn)
* **Right-to-Left (RTL)** An RTL version can be created using our build tools by selecting `rtl` from the install script * **Right-to-Left (RTL)** An RTL version can be created using our build tools by selecting `rtl` from the install script
* **Translation** To help translate see the [Wiki Guide](https://github.com/Semantic-Org/Semantic-UI/wiki/Translating-Semantic-UI-Docs) for translations * **Translation** To help translate see the [Wiki Guide](https://github.com/Semantic-Org/Semantic-UI/wiki/Translating-Semantic-UI-Docs) for translations
@ -59,27 +84,25 @@ Browser prefixes are present for Internet Explorer 9, but the browser is not off
Resource | Description Resource | Description
--- | --- | --- | --- |
Bugs & Feature Requests | Make a test case by forking this [jsfiddle](http://jsfiddle.net/efp8z6Ln/), then submit a [bug on GitHub](https://github.com/Semantic-Org/Semantic-UI/issues) Bugs & Feature Requests | All bug submission **require** a link to a test case, and a set of steps to reproduce the issue. You can make a test case by forking this [jsfiddle](http://jsfiddle.net/efp8z6Ln/), then submit your [bug report on GitHub Issues](https://github.com/Semantic-Org/Semantic-UI/issues)
Live Chat | Join our [Gitter.im Room](https://gitter.im/Semantic-Org/Semantic-UI) Live Chat | Join our [Gitter.im Room](https://gitter.im/Semantic-Org/Semantic-UI)
Newsletter Updates | Sign up for updates at [semantic-ui.com](http:/www.semantic-ui.com) Message Board | [ProjectTalk Board](http://www.projecttalk.io/boards/Semantic-Org%2FSemantic-UI)
Additional Resources | Submit a question on [StackOverflow](http://www.stackoverflow.com) or ask our [Google Group](https://groups.google.com/forum/#!forum/semantic-ui) Newsletter Updates | Sign up for updates at [semantic-ui.com](http://www.semantic-ui.com)
Additional Resources | Submit a question on [StackOverflow](http://stackoverflow.com/questions/tagged/semantic-ui) or ask our [Google Group](https://groups.google.com/forum/#!forum/semantic-ui)
#### Places to Help #### Places to Help
Project | How To Help | Next Step Project | How To Help | Next Step
--- | --- | --- | --- | --- | --- |
Localization | Help us translate Semantic UI into your language | [Join our Translation Community](https://github.com/Semantic-Org/Semantic-UI/wiki/Translating-Semantic-UI-Docs) Localization | Help us translate Semantic UI into your language | [Join our Translation Community](https://github.com/Semantic-Org/Semantic-UI/wiki/Translating-Semantic-UI-Docs)
[SCSS](http://sass-lang.com/) | SASS needs PR to support variables inside `@import` | [Add Pull Request](https://github.com/sass/sass/pulls) for [#739](https://github.com/sass/sass/issues/739#issuecomment-73984809) [SCSS](http://sass-lang.com/) | SASS needs PR to support variables inside `@import` | [Add Pull Request](https://github.com/sass/sass/pulls) for [#739](https://github.com/sass/sass/issues/739#issuecomment-73984809)
[Angular](https://angularjs.org/) | Help develop angular bindings | Reach Out on [GitHub Issues](https://github.com/Semantic-Org/Semantic-UI-Angular/issues/8) [Angular](https://angularjs.org/) | Help develop angular bindings | Reach Out on [GitHub Issues](https://github.com/Semantic-Org/Semantic-UI-Angular/issues/8)
Guides & Tutorials | Help write guides and tutorials | [Join the discussion](https://github.com/Semantic-Org/Semantic-UI/issues/1571) Guides & Tutorials | Help write guides and tutorials | [Join the discussion](https://github.com/Semantic-Org/Semantic-UI/issues/1571)
#### Pull Requests
When adding pull requests be sure to merge into [next](https://github.com/Semantic-Org/Semantic-UI/tree/next) branch. If you need to demonstrate a fix in ``next`` release, you can use [this jsfiddle](http://jsfiddle.net/rduvhn8u/1/)
#### Reaching Out #### Reaching Out
If you'd like to start a conversation about Semantic feel free to e-mail me at [jack@semantic-ui.com](mailto:jack@semantic-ui.com) If you'd like to start a conversation about Semantic feel free to e-mail me at [jack@semantic-ui.com](mailto:jack@semantic-ui.com)
[![Flattr This](https://api.flattr.com/button/flattr-badge-large.png)](https://flattr.com/submit/auto?user_id=jlukic&url=https%3A%2F%2Fgithub.com%2Fjlukic%2FSemantic-UI) [![Flattr This](https://api.flattr.com/button/flattr-badge-large.png)](https://flattr.com/submit/auto?user_id=jlukic&url=https%3A%2F%2Fgithub.com%2Fjlukic%2FSemantic-UI)
<a href="http://packagequality.com/#?package=semantic-ui"><img src="http://npm.packagequality.com/badge/semantic-ui.png"/></a>

View file

@ -1,5 +1,847 @@
## RELEASE NOTES ## RELEASE NOTES
### Version 2.1.8 - Jan 7, 2016
**Critical Fix**
- **Install** - This fixes a regression causing users with NPM `2` from using Semantic UI, caused by removing the deprecated `peerDependencies` which are necessary for NPM2 install to function correctly. [#3511](https://github.com/Semantic-Org/Semantic-UI/issues/3511)
**Minor Fix**
- **Flag** - Adds Scotland and Wales flag [#3494](https://github.com/Semantic-Org/Semantic-UI/issues/3494) **Thanks @edumucelli**
- **Install** - Fixes post-install scripts not exiting with correct return values [#3515](https://github.com/Semantic-Org/Semantic-UI/issues/3515) **Thanks @Jeff-Tian**
### Version 2.1.7 - Dec 19, 2015
[Closed Issues List](https://github.com/Semantic-Org/Semantic-UI/issues?q=is%3Aissue+milestone%3A2.1.7+is%3Aclosed)
**Enhancements**
- **API** - All responses fulfilled with settings (like `mockResponse`) will now receive a settings object with all values resolved. For example `url` will be `/user/2/` and not `user/{id}` in the callback. - [#3466](https://github.com/Semantic-Org/Semantic-UI/issues/3466)
- **API** - API now allows the use of settings `response` and `responseAsync` to replace `mockResponse` and `mockResponseAsync`. The use of "mock" may not represent the most common use case which is providing a response from a third party source. (These changes are purely cosmetic and no underlying behavior has changed) - [#3491](https://github.com/Semantic-Org/Semantic-UI/issues/3491)
- **Popup** - Adds `onUnplaceable` callback when element cannot be placed in visible screen [#3388](https://github.com/Semantic-Org/Semantic-UI/issues/3388)
**Bug Fixes**
- **Build Tools** - CSS build will now correctly call callback after both packaged files are created (compressed and uncompressed) Thanks @youngjay [#3405](https://github.com/Semantic-Org/Semantic-UI/issues/3405)
- **Flag** - A flag with no country set will no longer display an incorrect country flag. Thanks @space-alien [#3333](https://github.com/Semantic-Org/Semantic-UI/issues/3333)
- **Form** - Fixed issue where text would turn transparent inside a `loading form` [#3122](https://github.com/Semantic-Org/Semantic-UI/issues/3122)
- **Menu** - Fixed `1px` offset when `attached segment` follows `tabular menu` (max of 2 consecutive segments) [#3479](https://github.com/Semantic-Org/Semantic-UI/issues/3479)
- **Header** - `sub header` used inside a header now correctly forces `block` styling [#3020](https://github.com/Semantic-Org/Semantic-UI/issues/3020)
- **Popup** - Fixed `is visible`, `is animating`, and `is fluid` to always return `true/false` and not the DOM element. [#2781](https://github.com/Semantic-Org/Semantic-UI/issues/2781)
- **Popup** - Fixed issue with `onEnable` callback being defined with name `onEnabled` and `onDisable` with `onDisabled` in default settings, causing an error. To preserve backwards compatibility, the mispelled callback name has been left, but the bug has been fixed. [#3148](https://github.com/Semantic-Org/Semantic-UI/issues/3148)
- **Search** - Search now correctly hides menu when an error message inside results is clicked. [#3039](https://github.com/Semantic-Org/Semantic-UI/issues/3039)
- **Sidebar** - Fixed css rule issue causing `very thin` sidebar to not work [#3300](https://github.com/Semantic-Org/Semantic-UI/issues/3300)
- **Sidebar** - Sidebar no longer includes `transform` rules on child elements, this was causing layout issues in some cases (for example dropdowns in sidebars) [#3306](https://github.com/Semantic-Org/Semantic-UI/issues/3306)
- **Sticky** - Renames variables used to account for scroll offset internally for greater code clarity
- **Transition** - Fixes `noAnimation` error to more reasonably announce that the element is "not in the DOM" [#3040](https://github.com/Semantic-Org/Semantic-UI/issues/3040)
### Version 2.1.6 - Nov 6, 2015
**Bug Fixes**
- **Checkbox/Dropdown/Search** - Fixed issue where dropdown/checkbox `change` events were not bubbling. (Dispatched events were swapped to use native `document.creatEvent` in `2.1.5` unfortunately the flag to bubble events was mistakenly off.)
### Version 2.1.5 - Nov 1, 2015
**Docs Enhancements**
- **Examples** - All code examples now have a "copy to clipboard" button **Thanks @xiwc and @zenorocha for clipboard.js**
**Minor Enhancements**
- **Form** - Adds `equal width form` and `equal width fields` for simpler grouped fields
- **Modal** - `onHide` callback can now cancel event by returning false [#3168](https://github.com/Semantic-Org/Semantic-UI/issues/3168) **Thanks @mdehoog**
- **Dropdown** - Added `onLabelRemove` callback that allows value removal to be cancelled by callback **Thanks @goloveychuk**
- **Table** - Added `selectable` on table cell, allowing for full table-cell links
- **Popup** Added three new variables for `arrow` background color based on position, top, center or bottom. This makes it easier to use gradient backgrounds with popups and still match arrow colors.
- **Popup** - Added behaviors `get popup` and `change content` to more easily determine popup from activating element and change text
**Major Bug Fixes**
- **Checkbox/Dropdown/Search** - Fixed issue where using `.trigger('change')` would not fire native `change` event. Only triggering event handlers attached with jQuery [#3108](https://github.com/Semantic-Org/Semantic-UI/issues/3108)
- **Transition** - Fixed bug where static transitions (those that dont animate in/out of view) would not fire `onComplete` event
- **Sticky** - Fixes bug where sticky would stick at incorrect times when using a different scroll container than `body` and scrollTop is not 0 on page load.
**Bugs**
- **Divider/Step/Modal/AD** - Fixes 1px jump at `@mobileBreakpoint` caused by incorrect edge conditions in media query [#3180](https://github.com/Semantic-Org/Semantic-UI/issues/3180) **THanks @mdehoog**
- **Dimmer** - Dimmer can now works correctly with `opacity: 0` [#3167](https://github.com/Semantic-Org/Semantic-UI/issues/3167) **Thanks @mdehoog**
- **Dropdown** - Fixed condition where focusing on dropdown would show a blank menu when "no results" was reached and the dropdown was refocused
- **Dropdown** - Search dropdowns will now correctly filter by current search term on re-focus
- **Dropdown** - Fixed issue where tabindex was being removed incorrectly with `selection dropdown` in some cases. [#3002](https://github.com/Semantic-Org/Semantic-UI/issues/3002)
- **Dropdown** - Added `remoteValues` as a possible `field` setting. Allowing users to return API results using arbitrary JSON object groupings. [#3080](https://github.com/Semantic-Org/Semantic-UI/issues/3080)
- **Dropdown** - Added ability to pass in `keys` as a setting, to avoid issues with languages where comma delimiter may be a different keycode [#3016](https://github.com/Semantic-Org/Semantic-UI/issues/3016)
- **Dropdown** - `search dropdown` will now initialize with `autocomplete="off"` to avoid triggering native autocomplete menu
- **Form Validation** - Fixes error on `blur` or `change` when using a blank validation object [#3131](https://github.com/Semantic-Org/Semantic-UI/issues/3131) **Thanks @listepo**
- **Form Validation** - Fixes some issues with form integer validation [#3053](https://github.com/Semantic-Org/Semantic-UI/issues/3053) **Thanks @maturano**
- **Form Validation** - `decimal` rule now **only matches decimals**, to match any number use `number` rule. [#3060](https://github.com/Semantic-Org/Semantic-UI/issues/3060)
- **Form** - Removed `divider` spacing as part of `ui form`, this caused inheritance issues when using special divider types [#3092](https://github.com/Semantic-Org/Semantic-UI/issues/3092)
- **Grid** - Fixes attached segment 1px offset inside grid column [#3226](https://github.com/Semantic-Org/Semantic-UI/issues/3226)
- **Grid** - Fixes some inconsistencies with `widescreen only` class [#3161](https://github.com/Semantic-Org/Semantic-UI/issues/3161) **Thanks @mdehoog**
- **Header** - Sub headers now force `display: block` [#3020](https://github.com/Semantic-Org/Semantic-UI/issues/3020)
- **Popup** - Fixes positioning issue when `movePopup: false` [#3213](https://github.com/Semantic-Org/Semantic-UI/issues/3213) **Thanks @parisholley**
- **Popup** - Popup now works with `svg` elements [#3043](https://github.com/Semantic-Org/Semantic-UI/issues/3043)
- **Progress* - Calling `reset` will now reset `value` to 0, so increment starts again at 0
- **Search** - Fixes `onSearchQuery` not firing when results are cached **Thanks @mnquintana**
- **Search** - Fixes `url` parameter not working correctly due to typo in source **Thanks @fabienb4**
- **Segment** - Fixes border on `horizontal segment` when they are `:first-child` inside `segments` group
**Docs Bugs**
- Thanks to everyone who has submitted PRs for typos, grammatical changes. These are too numerous to count, but really help improve the quality of our docs.
- **Progress** - Progress example code no longer shows accidental inline css
- **Sticky** - Fixed issue where pressing home/end button would cause sticky to break due to internal logic not allowing immediate jump from bottom attached to top attached, experienced most likely when pressing "home" or "end" key [#3011](https://github.com/Semantic-Org/Semantic-UI/issues/3011)
### Version 2.1.4 - Sep 13, 2015
**Critical Bugfixes**
- **Build** - Fixed issue where using a packaged theme without a `site.variables` would cause build to fail [#3009](https://github.com/Semantic-Org/Semantic-UI/issues/3009) [#3010](https://github.com/Semantic-Org/Semantic-UI/issues/3010)
**Enhancements**
- **Form Validation** - Form validation now supports a brand new shorthand which is drastically simpler to specify [#2579](https://github.com/Semantic-Org/Semantic-UI/issues/2579)
```javascript
// expands out using default prompts and identifier matching property label
$('.ui.form')
.form({
fields: {
name : 'empty',
gender : 'empty',
username : 'empty',
password : ['minLength[6]', 'empty'],
skills : ['minCount[2]', 'empty'],
terms : 'checked'
}
})
;
```
- **Form Validation** - `identifier` and `prompt` are now optional for all form validation rules. Default prompt values have been added for all rule types, and identifier will now automatically match on the named value for rule if no ID is specified. [#3001](https://github.com/Semantic-Org/Semantic-UI/issues/3001) [#2579](https://github.com/Semantic-Org/Semantic-UI/issues/2579)
- **Form Validation** - All form prompts now support templates values, `{value}`, `{name}`, `{ruleValue}`, and `{identifier}` [#3001](https://github.com/Semantic-Org/Semantic-UI/issues/3001)
**Bugfixes**
- **Dropdown** - Fixed issue with ',' key not being allowed in dropdown due to user tagging shortcut key [#3016](https://github.com/Semantic-Org/Semantic-UI/issues/3016)
- **Message** - `ui list` used inside `ui message` now aligns properly in all conditions [#2958](https://github.com/Semantic-Org/Semantic-UI/issues/2958)
- **Form Validation** - Validation messages in `error message` group are now correctly removed when invalid field revalidates on blur
- **Label** - Labels no longer force single line using `word-wrap: nowrap` [#3006](https://github.com/Semantic-Org/Semantic-UI/issues/3006)
- **Table** - Fixed issue where `(x) column segment table` was inheriting accidentally inheriting some grid styles
- **Grid** - Fixed `middle aligned grid` not applying to columns [#2959](https://github.com/Semantic-Org/Semantic-UI/issues/2959)
- **Menu** - Fixed issue where `right menu` was not floating correctly inside a `menu > container` on mobile [#2969](https://github.com/Semantic-Org/Semantic-UI/issues/2969)
- **Button** - Fixes `right labeled icon button` with a `right` named icon (for example `right arrow`) having incorrect margin on icon. [#2973](https://github.com/Semantic-Org/Semantic-UI/issues/2973)
### Version 2.1.3 - Sep 03, 2015
**Bugfixes**
- **Embed** - Fixes issue with `?=` appearing before parameters instead of `?` [#2956](https://github.com/Semantic-Org/Semantic-UI/issues/2956) **Thanks @AgentShark**
- **Input** - Fixes regression where `ui icon input` inside forms were not correct width [#2953](https://github.com/Semantic-Org/Semantic-UI/issues/2953)
- **Input** - Fixes typo in focused placeholder text color preventing the value from being used [#2939](https://github.com/Semantic-Org/Semantic-UI/issues/2939)
- **Input** - `action input` now correctly show focused border on button side, and avoids duplicating borders
### Version 2.1.2 - Sep 02, 2015
**Bugfix**
- **Form Validation** - Fixes callbacks on `onSuccess` so as to not break backwards compatibility. #2945 #2944
### Version 2.1.1 - Sep 02, 2015
**Bugfix**
- **Build Tools** - Fixes [issue](https://github.com/Semantic-Org/Semantic-UI/commit/3d20d5e9796e05cc100af73370173f3383cf1d81) causing comment banner to incorrectly show version `2.0.7` in `dist/`
### Version 2.1.0 - Sep 02, 2015
#### Features
**New UI Features**
- **API** - Added `encodeParameters` option to enable/disable parameters being encoded with `encodeURIComponent` [#2752](https://github.com/Semantic-Org/Semantic-UI/issues/2752)
- **API** Added new setting `hideError`, defaults to `auto` (will automatically hide error for elements that are not forms). [#2586](https://github.com/Semantic-Org/Semantic-UI/issues/2586)
- **Build Tools** - Packaged `.overrides` file are now an optional include
- **Button** - `colored basic` button are now colored before `:hover` in the default theme, this is more in line with common usage across other websites.
- **Button** - Added `labeled button` variation for display a count next to a button.
- **Cards** - Added documentation for `stackable` cards which was available but undocumented in previous versions.
- **Checkbox** - Added 4 new callbacks `beforeChecked`, `beforeUnchecked`, `beforeDeterminate`, `beforeIndeterminate`. You can now cancel a state change by returning false from these callbacks.
- **Divider** - Vertical divider can now be used multiple times in a single column row (not just 50/50 split). [#2808](https://github.com/Semantic-Org/Semantic-UI/issues/2808)
- **Dropdown** - Dropdown using remote data, can now customize the property names returned by api call using `fields` (similar to search).
- **Dropdown** - Dropdown will now automatically update selected values when hidden input value changes (so long as `change` event is triggered) [#2626](https://github.com/Semantic-Org/Semantic-UI/issues/2626)
- **Dropdown** - Dropdown with user additions now will use custom templated messages to distinguish added choice from preselected choice [#2923](https://github.com/Semantic-Org/Semantic-UI/issues/2923)
- **Form Validation** - Added credit card validation, supports array of card types, and international cards including non luhn cards like China UnionPay [#2729](https://github.com/Semantic-Org/Semantic-UI/issues/2729)
- **Form Validation** - Updated appearance of form validation prompts to use a more lightweight style. Added variables for controlling error validation prompt styles in `form.variables`
- **Grid** - Added new responsive [`reversed`](http://www.semantic-ui.com/collections/grid.html#responsive-order) variations for reversing column order, these are also compatible with other grid types like `divided` and `celled` by device [#2685](https://github.com/Semantic-Org/Semantic-UI/issues/2685)
- **Icon** - Added `fitted` icon variation, and new small sizes `tiny` and `mini`
- **Input** - Added `disabled` state for inputs [#2694](https://github.com/Semantic-Org/Semantic-UI/issues/2694)
- **Input** - Added ability for labeled input to be attached to both sides [#2922 **Thanks @maturano**](https://github.com/Semantic-Org/Semantic-UI/issues/no**)
- **Label** - Added a new `basic label` style, works symbiotically with other label types to provide a more lightweight style label
- **Menu** - Added new `tabular` menu types, `right tabular`, `bottom tabular`, added many new `tabular` menu variables for customizing
- **Menu** - Appearance of `labeled icon menu` has been modified. Horizontal menus now have icons above text, and icons are slightly larger than before.
- **Search** - Search now can use any server response mapping, use the `fields` parameter to pass in a mapping of server response to content **thanks @anibalmf1** [#2645](https://github.com/Semantic-Org/Semantic-UI/issues/2645)
- **Site** - Added global variable `@focusedFormBorderColor` for controlling form focus border color
- **Table** - New `fixed` table variation added for use with `table-layout: fixed;`. This also supports "..." ellipsis when used with `single line` content
**[Additional Features](https://github.com/Semantic-Org/Semantic-UI/issues?q=is%3Aissue+milestone%3A2.1.0+is%3Aclosed)**
- **Breadcrumb** - Breadcrumb no longer receives vertical spacing by default. This may often cause vertical alignment issues when displayed next to other `inline-block` content.
- **Dropdown** - Added `get default text` and `get placeholder text` behaviors for returning text values.
- **Dropdown** - Pointing dropdown (dropdown with arrows) now support `upward`, and will automatically move pointer arrows when appearing upward [#2733](https://github.com/Semantic-Org/Semantic-UI/issues/2733)
- **Form** - `inverted form` now remove input border, added new variables for controlling inverted form input styles
- **GitHub Theme** - Added github icon theme with port of Octicons.
- **Label** - Added `basic` label variation, useful for item counts
- **Menu** - `inverted menu` now support `colored` individual items **Thanks @maturano** [#2850](https://github.com/Semantic-Org/Semantic-UI/issues/2850)
- **Menu** - `text menu` now uses padding for hitboxes to make target area for links larger
**[Community Added Features](https://github.com/Semantic-Org/Semantic-UI/issues?q=is%3Aissue+milestone%3A2.1.0+is%3Aclosed)**
- **Build Tools** - `gulp build` now correctly calls `callback`, allowing those importing tasks to chain it correctly [#2836 **Thanks @artemkaint**](https://github.com/Semantic-Org/Semantic-UI/issues/nt**)
- **Dropdown** - Dropdown `show` and `hide` are now cancellable by returning `false` from `onShow` or `onHide` callbacks.
- **Flag** - England flag alias is now correctly set [#2770 **Thanks @eduardom**](https://github.com/Semantic-Org/Semantic-UI/issues/om**)
- **Form Validation** - Added `number` and `decimal` validations to form **Thanks @TonnyORG** [#2537](https://github.com/Semantic-Org/Semantic-UI/issues/2537)
- **Form Validation** - Form `onSuccess` and `onFailure` now receive current form fields as a parameter **Thanks @guodong**
- **Popup** - Popup will now look for inline popup as any next adjacent sibling [#2772 **Thanks @malacalypse**](https://github.com/Semantic-Org/Semantic-UI/issues/se**)
#### Bugs
**[Reported Bugs](https://github.com/Semantic-Org/Semantic-UI/issues?q=is%3Aissue+milestone%3A2.1.0+is%3Aclosed)**
- **Accordion** - Added missing notation for accordion docs [#2812](https://github.com/Semantic-Org/Semantic-UI/issues/2812)
- **Build Tools** - Fixed bug where `gulp version` would show `x.x` [#2875 [#2920](https://github.com/Semantic-Org/Semantic-UI/issues/2920)
- **Build Tools** - Fixes issue where component glob `{tab, table}` caused table to be included twice in concatenated source **
- **Button** - Fixes inverted button missing an `active` and `active focus` state [#2635](https://github.com/Semantic-Org/Semantic-UI/issues/2635)
- **Button** - Fixes issue where `basic button` would not have focus color text when colored [#2264](https://github.com/Semantic-Org/Semantic-UI/issues/2264)
- **Checkbox** - Clicking a link inside an initialized checkbox `label` will now work correctly, and will not toggle the checkbox. [#2804](https://github.com/Semantic-Org/Semantic-UI/issues/2804)
- **Container** - Fix issue with `fluid container` being `100% + gutter` at mobile resolution (causing overflow)
- **Dropdown** - `forceSelection` no longer sets current value in search selection when current query is blank [#2058](https://github.com/Semantic-Org/Semantic-UI/issues/2058)
- **Dropdown** - Dropdown `@arrowSize` will now automatically reposition itself if size is changed with variable
- **Dropdown** - Dropdown arrow now has a variable `@dropdownArrowSize`, and is slightly smaller than previously
- **Dropdown** - Fix `left menu` inside `ui menu` appearing horizontally [#2778](https://github.com/Semantic-Org/Semantic-UI/issues/2778)
- **Dropdown** - Fixed error where menu would disappear when entering spaced words using `allowAdditions: true` caused by value matching its own whitespace-trimed value [#2853](https://github.com/Semantic-Org/Semantic-UI/issues/2853)
- **Dropdown** - Fixed issue where "no results" message would be still be visible before search query on input focus [#2824](https://github.com/Semantic-Org/Semantic-UI/issues/2824)
- **Dropdown** - Fixed issue where `onChange` would not fire when using `action: 'hide'`. [#2818](https://github.com/Semantic-Org/Semantic-UI/issues/2818)
- **Dropdown** - Fixed issue where selected item would not be shown when being re-shown after filtering with single search selection [#2824](https://github.com/Semantic-Org/Semantic-UI/issues/2824)
- **Dropdown** - Fixes issues with setting "" (empty quote) values when `placeholder: false` is used. Fixes issues with using `clear` and `restore defaults` without placeholders. [#2637](https://github.com/Semantic-Org/Semantic-UI/issues/2637)
- **Dropdown** - Remove use of `trim` which causes issues IE 11 and below [#2806](https://github.com/Semantic-Org/Semantic-UI/issues/2806)
- **Embed** - Remove accidental `console.log` statements in js [#2760](https://github.com/Semantic-Org/Semantic-UI/issues/2760)
- **Form / Input** - Fixes `::placeholder` text color for `ui error input`, modifies form error placeholder color to distinguish from form value error color [#2786](https://github.com/Semantic-Org/Semantic-UI/issues/2786)
- **Form / Input** - Fixes issue where `ui input` would sometimes collapse to `0px` width, especially when used inside an `inline field` [#2705 [#2621 [#2821](https://github.com/Semantic-Org/Semantic-UI/issues/2821)
- **Form** - `disabled field(s)` now remove `pointer-events` allowing it to disable checkbox and dropdown functionality [#555](https://github.com/Semantic-Org/Semantic-UI/issues/#555)
- **Form** - Date input and other special input in chrome now are the same height as normal input (adds custom vendor shadow dom styling) [#2704](https://github.com/Semantic-Org/Semantic-UI/issues/2704)
- **Form** - Form will no longer show messages that are empty in `error`, `warning`, or `success` state.
- **Grid** - Fixed issue where `relaxed stackable grid` would have incorrect margin on mobile width
- **Grid** - Fixed issue where nested `stackable grid` would have incorrect margin on mobile.
- **Header** - Fixed `attached header` to have the correct bottom border on `top attached` and `attached` variations. [#2798](https://github.com/Semantic-Org/Semantic-UI/issues/2798)
- **Icon** - Fixed typo in cube icon alias caused by bad grep [#2765](https://github.com/Semantic-Org/Semantic-UI/issues/2765)
- **Input** - Fixed issue with appearance of `left corner labeled left icon input` [#2782](https://github.com/Semantic-Org/Semantic-UI/issues/2782)
- **Item** - Fixed `bottom aligned` not working in item due to incorrect flex value [#2826](https://github.com/Semantic-Org/Semantic-UI/issues/2826)
- **List** - Lists can now be `right floated` or `left floated`
- **Menu** - Fixed `(x) column` nested grid with alignment stacking vertically (wrong flex-direction) [#2810](https://github.com/Semantic-Org/Semantic-UI/issues/2810)
- **Menu** - Sub menus now work correctly and are correctly spaced inside `secondary menu` and text menu` [#2862](https://github.com/Semantic-Org/Semantic-UI/issues/2862)
- **Modal** - Fix autofocus setting in modal not working due to improper selector [#2737](https://github.com/Semantic-Org/Semantic-UI/issues/2737)
- **Modal** - Increased `close` specificity, modal will now only close on `> .close` [#2736](https://github.com/Semantic-Org/Semantic-UI/issues/2736)
- **Popup** - Fixes issue where variation would not be added to a pre-existing popup even if specified in javascript [#26011](https://github.com/Semantic-Org/Semantic-UI/issues/6011)
- **Search** - Calling `.search('show results')` no longer fails when input is not focused [#2842](https://github.com/Semantic-Org/Semantic-UI/issues/2842)
- **Table/Label** - `ribbon labels` will now automatically position themselves when used inside a table [#1930](https://github.com/Semantic-Org/Semantic-UI/issues/1930)
- **Transition** - Transition callbacks now all have the correct `this` set. [#2758](https://github.com/Semantic-Org/Semantic-UI/issues/2758)
**[Community Bug Fixes](https://github.com/Semantic-Org/Semantic-UI/issues?q=is%3Aissue+milestone%3A2.1.0+is%3Aclosed)**
- **API** - API debug is now `false` by default, like other modules. [#2817](https://github.com/Semantic-Org/Semantic-UI/issues/2817)
- **Build Tools** - Removed octal literals from install scripts (for color escaping), and uses of future ECMAScript reserved words [#2838 [#2839 **Thanks @artemkaint**](https://github.com/Semantic-Org/Semantic-UI/issues/nt**)
- **Dropdown** - Fixed issue where label could not be removed when using a numeric value due to mismatched types [#2754 [#2755 **Thanks @dgurkaynak**](https://github.com/Semantic-Org/Semantic-UI/issues/ak**)
- **Menu** - Fixes tabular menu missing variable for background. **Thanks @frontdevde**
- **Step** - Fixed issue with display of step groups with only one step having incorrect border radius **Thanks @elliotisonfire** [#2869](https://github.com/Semantic-Org/Semantic-UI/issues/2869)
- **Sticky** - Sticky now sets width and height with `!important` to avoid inheritance issues in some cases **Thanks @lauri-elevant** [#2710](https://github.com/Semantic-Org/Semantic-UI/issues/2710)
- **Tab** - Fixed issue where simple path would be tested before full path, i.e. `first/` vs `/second/first/` causing tab to not open in some cases **Thanks @habibutsu** [#2843](https://github.com/Semantic-Org/Semantic-UI/issues/2843)
**Additional Bugs**
- **API** - API now will use automatically use `form` action if no api event is specified now when form is `stateContext` but not intialized element
- **Build Tools** - Fixes issue on `win` platform where packaged theme would not correctly update when using watch due to regExp not matching windows path separators.
- **Dropdown** - Dropdown will no longer fire native `onchange` event on hidden input when setting value during initial load (unless `fireOnInit: true`) #2795 **Thanks @lauri-elevant**
- **Dropdown** - Fixed issue where `forceSelection` would not occur when `pageLostFocus` (clicked into another tab and back)
- **Dropdown** - Fixed issue where using the specific value `value="false"` would cause an option to not be removable from a multiple select
- **Dropdown** - When `useLabels: false` placeholder text will now show up when 0 items selected, instead of the text "0 items selected"
- **Dropdown/Tab** - Fixed an instance where `metadata` was not referencing settings metadata value
- **Form Validation** - Fixed issue with `get value(s)` where unchecked checkboxes would not correctly retrieve values
- **Form** - Dropdown in `inline field` now use auto width instead of 100%
- **Grid / Container** - `ui relaxed grid container` and `ui very relaxed grid container` will now all render at same container width
- **Grid** - Fixed `stackable celled grid` having doubled border width between rows
- **Header** - Fixed issue with em sizing of `chubby` and `bookish` header themes appearing too large
- **Icons** - Fixed issue where `active icon` or `emphasized icon` would not adjust opacity inside menus
- **Input** - `labeled input` now keeps border on label edge so that focus color appears correctly
- **Input** - Input now will reset `font-weight` and `font-style` if set on parent;
- **Input** `action input` and `labeled input` now have focused border on inner edge with label/button
- **Label** - `pointing` and `attached` labels are *now word order sensitive* to allow them to work correctly with other directional variations.
- **Label** - `pointint label` now rounds to exact pixel em value, should align correctly in more cases
- **Menu** - `@pressedItemColor` has been renamed to `@pressedItemTextColor` to match naming conventions of other variables
- **Menu** - Added `flex: 0 0 auto` to menu item to make sure menu do not collapse text content to reduce space
- **Menu** - Fix text align on `dropdown item` inside `icon menu`
- **Menu** - Fixed hybrid initialization not creating `menu` correctly. Fixed docs example of hybrid `<select>` initialization
- **Menu** - Fixed issue with `labeled input` text inside menu not appearing vertically centered
- **Popup** - Fixed `onRemove` firing even when popup is not removed
- **Reveal** - Reveal now uses `display: inherit` instead of forcing `inline-block`
### Version 2.0.8 - August 10, 2015
**All UI** - This release should fix issues caused when importing individual component using `require` when using [single component repos](https://github.com/Semantic-Org/). See discussion in [#2816](https://github.com/Semantic-Org/Semantic-UI/pull/2816), and previously [#1156](https://github.com/Semantic-Org/Semantic-UI/pull/1156), and [#1878](https://github.com/Semantic-Org/Semantic-UI/pull/1878)
### Version 2.0.7 - July 23, 2015
**Important Note**
This release should fix bugs some may have encountered with `npm install semantic-ui` hanging after set-up. See [this thread](https://github.com/Semantic-Org/Semantic-UI/issues/1816) for more details.
**[Reported Bugs](https://github.com/Semantic-Org/Semantic-UI/issues?q=is%3Aissue+milestone%3A2.0.7+is%3Aclosed)**
- **API** - Fixed some cases where `onComplete`, `onSuccess` and `onFailure` would receive XHR as first parameter and not `response`. [#2713](https://github.com/Semantic-Org/Semantic-UI/issues/2713)
- **API** - Fixed issue where `onFailure` would pass response as stringified JSON and not a JS object [#2713](https://github.com/Semantic-Org/Semantic-UI/issues/2713)
- **Build Tools** - Fixed some cases of `npm install` with CI or tests. Install will not stop to ask questions if project has an existing `semantic.json` file (more quiet options to come) [#1816](https://github.com/Semantic-Org/Semantic-UI/issues/1816)
- **Dropdown** - Fixed border radius on `circular labeled icon button` [#2700](https://github.com/Semantic-Org/Semantic-UI/issues/2700)
- **Dropdown** - Fixed issue where dropdown nested inside `label` would not open. [#2711](https://github.com/Semantic-Org/Semantic-UI/issues/2711)
- **Popup** - Fixed issue where popup would not open on tablets with both touchscreen and mouse on mouseenter. [#2715](https://github.com/Semantic-Org/Semantic-UI/issues/2715)
**[Merged PR](https://github.com/Semantic-Org/Semantic-UI/issues?q=is%3Aissue+milestone%3A2.0.7+is%3Aclosed)**
- **Build Tools** - Fixed autoprefixer not correctly setting `last 2 versions` [#2717](https://github.com/Semantic-Org/Semantic-UI/pull/2717) **Thanks @frontdevde**
- **Gulp Import** - Fixes error `Cannot find module 'gulp-help'` which may occur when importing gulp tasks [#2653](https://github.com/Semantic-Org/Semantic-UI/issues/2653) [#2668](https://github.com/Semantic-Org/Semantic-UI/pull/2668) **Thanks @fholzer**
**Docs**
- **Recipes** - Add links to Sketch files for SUI. Add example repo on how to import gulp tasks.
**Minor Enhancements**
- **API** - All API callbacks now recieve `xhr` from API request as the third calback parameter
**Additional Fixes**
- **Checkbox** - Fix checkbox "check" appearing italicized when included inside italicized text
- **Popup** - Fixed terribly typo where popup `onShow` was mistakenly being called instead of `onHide` when hiding popup
- **Popup** - Popup on `touchstart` now occurs immediately without waiting for `delay.show`
### Version 2.0.6 - July 22, 2015
**Important Notes**
- **Form Validation** - In `2.0.4` `length` rules were corrected to match "exact length" and not "minimum length". This may have caused issues for those who were using this rule as min length previously. We've remedied any breaking changes introduced by by returning `length` to functioning as "minimum length" and added a new rule `exactLenght` for matching exact length. #2681
**[Reported Bugs](https://github.com/Semantic-Org/Semantic-UI/issues?q=is%3Aissue+milestone%3A2.0.6+is%3Aclosed)**
- **Dropdown** - Fixed issue where `disabled` dropdown would still receive focus [#2699](https://github.com/Semantic-Org/Semantic-UI/issues/2699)
- **Dropdown** - Fixed `restore value` sometimes now working correctly due to "animating out" label still being mistaken for selected. [#2690](https://github.com/Semantic-Org/Semantic-UI/issues/2690)
- **Dropdown** - Added `set exactly` to remedy confusion of `set selected` not removing current selections with multiple [#2689](https://github.com/Semantic-Org/Semantic-UI/issues/2689)
- **List**- Fixed issue where using an image variation like `ui image label` as a direct child of an `item` would remove right padding [#2691](https://github.com/Semantic-Org/Semantic-UI/issues/2691)
**Additional Fixes**
- **Dropdown** - Fixed issue where using text labels, `useLabels: false`, would cause selection count to appear incorrect.
- **Dropdown** - Text labels, `useLabels: false`, now works correctly with `maxSelections`, and receives special UX considerations
### Version 2.0.5 - July 20, 2015
**[Reported Bugs](https://github.com/Semantic-Org/Semantic-UI/issues?q=is%3Aissue+milestone%3A2.0.5+is%3Aclosed)**
- **API** - Data replaced in urls, `urlData`, will now be url encoded by default. Additionally checks were added to avoid double encoding already encoded values. [#2394](https://github.com/Semantic-Org/Semantic-UI/issues/2394)
- **Checkbox** - Fix issue with `onChange` not firing when space key is used. Checkbox keyboard shortcuts now occur on `keydown` but cancel events correctly on `keyup` [#2676](https://github.com/Semantic-Org/Semantic-UI/issues/2676)
- **Radio Checkbox** - Fixed regression causing radio checkboxes to all appear selected in chrome due to `:indeterminate` selector [#2505](https://github.com/Semantic-Org/Semantic-UI/issues/2505)
- **Dropdown** - Fixed issue causing `multiple search dropdown` using [`search` inside menu](http://www.semantic-ui.com/modules/dropdown.html#search-in-menu) to break when multiple [#2666](https://github.com/Semantic-Org/Semantic-UI/issues/2666)
- **Message** - Fixed issues where icon would overlap in `icon message` when at mobile resolutions due to `flex-collapse` value being incorrect [#2665](https://github.com/Semantic-Org/Semantic-UI/issues/2665)
**Additional Fixes**
- **Dropdown** - `<select>` dropdowns intialized without `multiple` property set on `<select>` will now produce an error to alert users selection will not be preserved correctly. Related [#2573](https://github.com/Semantic-Org/Semantic-UI/issues/2573)
- **Dropdown** - Dropdown `<option>` added with `userAddition` now recieve class name `addition` to distinguish from original `<select>` options. [#2573](https://github.com/Semantic-Org/Semantic-UI/issues/2573)
- **Dropdown** - User additions now have their `<option>` removed if a user deselects an addition. [#2573](https://github.com/Semantic-Org/Semantic-UI/issues/2573)
### Version 2.0.4 - July 17, 2015
**[Reported Bugs](https://github.com/Semantic-Org/Semantic-UI/issues?q=is%3Aissue+milestone%3A2.0.4+is%3Aclosed)**
- **Build Tools** - Fixed issue where sub tasks were undefined when importing SUI's `build` and `watch` tasks into custom gulpfile #2648
- **Button** - Fixed `fluid buttons` not working correctly with `<button>` due to button tags not supporting `flex` rules. [#2617](https://github.com/Semantic-Org/Semantic-UI/issues/2617)
- **Button** - Fixed colored vertical basic buttons appearing 2px offset [#2655](https://github.com/Semantic-Org/Semantic-UI/issues/2655)
- **Checkbox** - Checkbox now focuses after click, allowing for tab navigation from current position [#2610](https://github.com/Semantic-Org/Semantic-UI/issues/2610)
- **Checkbox** - Fixed checkbox not using javascript having incorrect colors on focus [#2607](https://github.com/Semantic-Org/Semantic-UI/issues/2607)
- **Dropdown** - Fixed `search selection` appearing incorrectly inside menu (default text would not disappear) [#2624](https://github.com/Semantic-Org/Semantic-UI/issues/2624)
- **Form** - Added `doesntContain` and `doesntContainExactly` [#2638](https://github.com/Semantic-Org/Semantic-UI/issues/2638)
- **Form** - Fixed issue with `minLength[1]` validation not behaving same as `minLength > 2` [#2636](https://github.com/Semantic-Org/Semantic-UI/issues/2636).
- **Form** - Fixes errors when a field identifier is named `identifier` [#2629](https://github.com/Semantic-Org/Semantic-UI/issues/2629)
- **Form** - Form fields will now error when a non-string identifier is used
- **Formatting** - Fixed several source files that had `CR LF` (Windows) line endings [#2649](https://github.com/Semantic-Org/Semantic-UI/issues/2649)
- **Input** - Fixed `left action input` displaying with incorrect `input` border radius inside `ui form` [#2638](https://github.com/Semantic-Org/Semantic-UI/issues/2638)
- **Modal** - Modal `action` now uses a more specific selector to prevent modifying `comment action`
- **Popup** - `fluid` popup with `setFluidWidth: true` (default value), will now use `parent` width and not `offsetContext` width [#2526](https://github.com/Semantic-Org/Semantic-UI/issues/2526)
- **Popup** - Fixed issues where rounding could cause elements that are against edge of page from not appearing. Add new `jitter` setting for allowing popups to escape page boundaries by a small margin [#2526](https://github.com/Semantic-Org/Semantic-UI/issues/2526)
- **Segment** - Added additional variables for `inverted` segment.
- **Segment* - `horizontal segments` in IE will no longer stretch to the natural width of child imgs [#2550](https://github.com/Semantic-Org/Semantic-UI/issues/2550) [flexbug [#1](h](https://github.com/Semantic-Org/Semantic-UI/issues/1](h)ttps://github.com/philipwalton/flexbugs[#1-mi](https://github.com/Semantic-Org/Semantic-UI/issues/1-mi)nimum-content-sizing-of-flex-items-not-honored)
- **Sidebar** - `right`, `top`, and `bottom` sidebar will not have their direction removed on `destroy` [#2644](https://github.com/Semantic-Org/Semantic-UI/issues/2644)
- **Sticky** - Fixed `sticky` element that cannot fit in viewport not scrolling correctly when fixed to viewport [#2605](https://github.com/Semantic-Org/Semantic-UI/issues/2605)
- **Transition** - Fixed issue where animating same element in its own `onComplete` would fail because animation had not yet called `force visible/hidden` [#2583](https://github.com/Semantic-Org/Semantic-UI/issues/2583)
- **Visibility** - `refreshOnResize` now correctly includes a default value [#2615](https://github.com/Semantic-Org/Semantic-UI/issues/2615)
- **Menu/Segment/Table** - Consolidated `attached` logic for all components using attached. [#2599](https://github.com/Semantic-Org/Semantic-UI/issues/2599)
**Additional Bugs**
- **Checkbox** - Fixed `space` shortcut causing checkbox to trigger twice
- **Checkbox** - Updated `colored` theme to add new focus color variables.
- **Popup** - `wide` and `very wide` popup will now limit themselves to normal popup widths on mobile so that they still appear on screen.
- **Message** - Fixes `attached icon message` not using `flex`
- **Sticky** - Fixed `sticky` content jumping from `fixed` to `bount bottom` when scroll position has surpassed bottom of container during page refresh.
- **Sticky** - Sticky no longer uses `bottomPadding` to determine bottom edge of container.
- **Steps** - Updated `basic` steps theme to appear correctly
**Docs**
- Fixed theme previews appearing incorrectly in all UI in docs. Regex parsing `.variable` files would ignore first variable after a comment.
- Added individual examples of all form validation rules
- Partial rewriite of sidebar documentation
- Updated example in theme guide to include checkbox focus colors
### Version 2.0.3 - July 8, 2015
**Docs Updates**
- **Examples** - Source code examples have been greatly improved. Required class names for each example will be highlighted in yellow. Other UI elements used in examples will now link out to their definition pages.
**[Reported Bugs](https://github.com/Semantic-Org/Semantic-UI/issues?q=is%3Aissue+milestone%3A2.0.3+is%3Aclosed)**
- **Checkbox** - Checkbox initialized with JS and with `for/id` matching would cause toggle to occur twice on click (making it seem as if nothing was updated) **thanks @malacalypse** [#2572](https://github.com/Semantic-Org/Semantic-UI/issues/2572)
- **Divider/Grid** - `vertical divider` no longer has inexplicable right border when stacked on mobile [#2558](https://github.com/Semantic-Org/Semantic-UI/issues/2558)
- **Dropdown** - Dropdown using `<select>` and `apiSettings` will now correctly add new `<option>` value when selections are made [#2573](https://github.com/Semantic-Org/Semantic-UI/issues/2573)
- **Icon** - `black icon` have been added back as a color option [#2556](https://github.com/Semantic-Org/Semantic-UI/issues/2556)
- **Icon** - Adds missing `square` and `square outline` icon [#2532](https://github.com/Semantic-Org/Semantic-UI/issues/2532)
- **Input** - Fixed errored input field having incorrect border radius with `labeled input`
- **Modal** - Modal that is larger than page height will now correctly reset body height on remove [#2576](https://github.com/Semantic-Org/Semantic-UI/issues/2576)
- **Popup** - Popup `preserve` setting (which preserves popup in DOM to avoid regenerating on each show/hide) was set to `true` by default causing generated popups to remain in DOM. [#1369](https://github.com/Semantic-Org/Semantic-UI/issues/1369)
- **Steps** - Fixed `github` theme for steps not displaying correctly in 2.0 [#2545](https://github.com/Semantic-Org/Semantic-UI/issues/2545)
- **Steps** - Last `step` no longer incorrectly shows arrow [#2552](https://github.com/Semantic-Org/Semantic-UI/issues/2552)
- **Transition** - Fixes `get current animation` erroring when `module cache` is cleared. [#2469](https://github.com/Semantic-Org/Semantic-UI/issues/2469)
**Additional Bugs**
- **Form** - URL regexp will now match now works correctly, and matches against non `http://` prefixed urls like `www.google.com`
### Version 2.0.2 - July 7, 2015
**[Reported Bugs](https://github.com/Semantic-Org/Semantic-UI/issues?q=is%3Aissue+milestone%3A2.0.2+is%3Aclosed)**
- **Dropdown** - Fixed regression in `2.0.1` causing search dropdown not to clear values correctly [#2533](https://github.com/Semantic-Org/Semantic-UI/issues/2533)
- **Site** - Sizing variables now are relative to `@emSize` adjusting all sizing variationss proportionately as `@emSize` changes [#2538](https://github.com/Semantic-Org/Semantic-UI/issues/2538)
- **Dropdown** - Dropdown icon will now always toggle menu visibility [#2510](https://github.com/Semantic-Org/Semantic-UI/issues/2510)
- **Dropdown** - Pressing same key on dropdown with multiple choices with same first letter will now cycle selections. For example "California" then "Colorado" when pressing C [#2516](https://github.com/Semantic-Org/Semantic-UI/issues/2516)
- **Dropdown** - Dropdown now changes text before calling `onChange` callback so that callback reflects new dropdown conditions [#2539](https://github.com/Semantic-Org/Semantic-UI/issues/2539)
**Additional Bugs**
- **Dropdown** - Clicking on label, or deleting a label will no longer trigger dropdown menu toggling
- **Dropdown** - Multiselect that do use text labels (e.g. "5 selected") will now remove filters on selection and scroll to last selected value
### Version 2.0.1 - July 6, 2015
**[Reported Bugs](https://github.com/Semantic-Org/Semantic-UI/issues?q=is%3Aissue+milestone%3A2.0.1+is%3Aclosed)**
- **Label** - Attached labels now use a border-radius for corner-edges that matches more closely [#2500](https://github.com/Semantic-Org/Semantic-UI/issues/2500)
- **Label** - Fixes incorrect label sizing for `large` and bigger sizes [#2486](https://github.com/Semantic-Org/Semantic-UI/issues/2486)
- **Segment** - Fixed incorrect margin set on `attached segment` [#2503](https://github.com/Semantic-Org/Semantic-UI/issues/2503)
- **Card** - `centered cards` variation now works similar to `centered card`. [#2520](https://github.com/Semantic-Org/Semantic-UI/issues/2520)
- **Checkbox** - Fixed issue in chrome where radio checkbox would appear incorrectly when no default value was selected [#2505](https://github.com/Semantic-Org/Semantic-UI/issues/2505)
- **Dropdown** - Fixed transparent tap color not being set correctly. Removed toggle behavior from touch events on multiple dropdown. [#2524](https://github.com/Semantic-Org/Semantic-UI/issues/2524)
- **Checkbox** - Fixed issue where radio checkbox were not properly receiving `checked` class [#2506](https://github.com/Semantic-Org/Semantic-UI/issues/2506)
- **Tab** - Tab now correctly obeys `cache` setting. Removed use of API's local caching by default. [#2493](https://github.com/Semantic-Org/Semantic-UI/issues/2493)
- **Form** - `reset` will no longer clear values if no default value is found [#2504](https://github.com/Semantic-Org/Semantic-UI/issues/2504)
**Additional Bugs**
- **Dimmer** - Dimmer now removes variations like `blurring` and `inverted` when `destroy` is called.
- **Dropdown** - `restore defaults` in dropdown when used with multiple will now correctly clear other values selected that were not there on page load.
- **Dropdown** - Removes accidental console.log statement in dropdown
- **Dropdown** - Dropdown no longer closes after max selections reached and enter key used for selection.
- **Dropdown** - Dropdown will now show correctly when menu only includes a message with no other items
- **Menu** - Fixed `pointing menu` arrow color slightly off
- **Progress** - Progress included `debug: true` by default. This has been now correctly set to `false`
- **Modal** - `scrolling modal` now correctly inherits rules so that it appears at top of screen on mobile
- **Menu** - Inverted menu no longer includes a 1px transparent border.
- **Menu** - Fixes `compact vertical menu` using `flex` style incorrectly
- **Menu** - Fixes `border-top` not appearing on `bottom fixed` menu
- **Tab** - Fixed bug where remote loaded tab content would not show `loading tab` on first load.
**Docs**
- **Form** - Clarified usage for `reset` in form docs [#2504](https://github.com/Semantic-Org/Semantic-UI/issues/2504)
- **Docs** - `1.0` docs are now available at [http://1.semantic-ui.com](http://1.semantic-ui.com) Link in footer has been fixed.
- **Image** - Fixed `mini image` having wrong pixel size in docs [#2521](https://github.com/Semantic-Org/Semantic-UI/issues/2521)
- **Image** - Added docs for missing `fluid image` variation
- **Modal** - Removed legacy JS animation settings still accidentally in docs
- **Tab** - Added new examples for `evaluateScripts` and HTML5 state tabs
### Version 2.0.0 - June 30, 2015
**Migration Guide**
- **Modal** - If you are using a modal with image content, you will need to use `image content` on the parent element. This is because `flex` rules require parent styling that the previous `table-row` rules did not.
- **Modal** - Modal will now only close on buttons matching `deny` or `approve` selector. Any button that should hide modal on click should either match one of these selectors, or call `$('.ui.modal').modal('hide')` `onclick`.
- **Grid** - `page grid` has been deprecated. `page grids` used percentage gutters which made it unnecessarily difficult to style responsive page content. Moving forward we recommend using `ui container` a fixed width responsive container for holding page contents.
- **Dropdown** - Dropdowns will now change opening directions automatically based on available screen space. If you need to force a dropdown direction use `dropdown({ direction: 'upward'})`
- **Form Validation** - Form validation now passes settings through a `fields` object. This is to make form initialization match other components. The previous syntax will continue to work but will produce deprecation notices in console
- **Checkbox** - Checkbox `fireOnInit` now defaults to false. Checkboxes now also *do not require javascript* to function.
- **Dropdown** - Dropdown item `description` now are floated in default theme and should be included before other `item` content
- **Form** - `grouped inline field` no longer display horizontally. Use `inline field` instead for horizontal inline field groups.
- **Input** - `pointer-events` have been removed from `icon` in `icon input` unless a `link icon` is used. This is to make sure the hitbox for focusing an input includes the icon.
- **Popup** - Popups are no longer exclusive by default. Opening a popup will not necessarily close other visible popups. You can change this behavior by using the setting `exclusive: true`. Additionally the default theme now uses `1rem` size for standard popups.
- **Colors** - Default colors have been adjusted, which may cause slight changes in your design. New colors have also been added to fill in missing gaps in [color naming](http://en.wikipedia.org/wiki/Linguistic_relativity_and_the_color_naming_debate#Berlin_and_Kay).
- **Segment** - Segment no longer includes a [clearfix](http://learnlayout.com/clearfix.html) by default. You will need to specify a `clearing segment` to clear floated content.
- **Rail** - Rail now uses `border-box` instead of `content-box`. This means manually specified rail widths will now need to account for padding. This was added to fix issues where rail `height: 100%` would incorrectly match content when a rail had padding.
- **Menu** - `tiered menu` has been removed in `2.0`. This may be rewritten in the future, but was not up to the standards of the rest of the library and has been removed.
- **Tab** - `onTabInit` and `onTabLoad` have been renamed to `onFirstLoad` and `onLoad` respectively. This is to conform to the naming conventions of other modules (no self reference). Previous callbacks will continue to work but will produce deprecation notices in console. Two new callbacks `onVisible` and `onRequest` have been added as well.
- **Button** - `wide` variations using numbers `2 wide`, `3 wide` have been removed due to incompatibilities with some build tools. Please use `two wide`, or `three wide` instead.
- **Video** - The undocumented `video` module has been renamed to `embed`. Behaviors remain the same, but users need to adjust their javascript init to `$('.ui.embed').embed();`
- **API** - API `onFailure` will now be called **in all failure conditions**, when a request is errored (504, 404 etc), aborted (page change or CORS), or JSON does not pass `successTest` function. `onError` and `onAbort` will also fire for each specific failure condition.
**New UI**
- **Container** - Containers are fixed width containers meant for holding page contents, and are a simpler alternative to `ui page grid`, view more [examples in docs](http://www.semantic-ui.com/elements/container.html#examples)
- **Multiselect** - New `multiple` dropdown types have been added. Many new dropdown improvements have been added including tagging/tokenizing features and loading data through API requests.
- **Embed** - New embed component allows for responsive iframe embeds that maintain their aspect ratio. Embed can be used with YouTube or Vimeo videos, along with placeholder content to avoid loading third party libraries until a user chooses to interact with the video.
**Major Enhancements (Please Read)**
- **Site** - Added new colors `olive`, `violet`, `brown` and `grey`. These are available in all elements with color variations. **Thanks @lemartialou**
- **API** - API can now be used with mocked responses, and custom AJAX requests. `mockResponse` has been added to resolve request with a prespecified JSON object, or a synchronous function callback.
- **API** `mockResponseAsync` has been added for custom asynchronous requests. This allows you to specify a custom async callback to resolve an API request, helping with integration with libraries like Ember or Angular that may wrap AJAX requests.
- **API** - API callbacks now have an `onResponse` callback that can adjust a servers response before it is parsed by other callbacks for success or failure conditions. **Thanks @mnquintana**
- **API** - API now provides a local caching setting to avoid server roundtrips for identical urls by using `cache: 'local'`. This is not enabled by default. Local caching is useful for results that should return the same values across a single session, for example when querying an autocomplete.
- **Card** - Cards now support multiple custom `content` blocks. Content blocks and images can now appear in any order.
- **Checkbox** - Checkbox no longer require javascript to function.
- **Checkbox** - Added support for `indeterminate` checkboxes, along with new stylings.
- **Checkbox** - Now includes separate behaviors for triggering state changes without invoking callbacks `set checked` vs `checked`
- **Dropdown** - Added remote API integration with dropdown, to allow `search selection` to query against a remote dataset.
- **Dimmer** - Dimmers now have a `blurring` variation which apply a glass-like effect when dimmed
- **Dropdown** - Dropdowns now automatically observe changes in `menu` and will update selector cache with new additions
- **Dropdowns** - Added ability to add custom choices to all search selection dropdowns (multi/single) using `allowAdditions: true` setting. Search now displays error messages on no results in all cases.
- **Dropdown** - Keyboard shortcuts have been added for selecting dropdown choices, for example "N" will scroll to "New York" in a state selection list, similar to native `<select>` behavior.
- **Dropdown** - Added new dropdown variation `scrolling dropdown` and `scrolling menu`, this can be used to include a scrollable section inside a dropdown menu.
- **Dropdown** - Dropdown will automatically animate upward if there is not enough space to appear below.
- **Dropdown** - Using `page up` and `page down` keys will now scroll menus by a page at a time
- **Form** - Forms now use `flexbox` for creating field groups. Inline fields now support `(x) wide` sizing using `flex`
- **Grid** - Grids now use `flexbox`, columns are now all equal height by default. New flexbox alignment types like `stretch` have been added for easier vertical alignment.
- **Multiple UI** - Many components now use flexbox, which means previous confusing fixes like `font-size: 0;` to remove [white-space from inline block](https://css-tricks.com/fighting-the-space-between-inline-block-elements/) is no longer necessary. Removing this hack, now means any element can be a direct child of `grid` or `menu`.
- **Modal** - Added new settings `blurring` and `inverted` which automatically set a modal's dimmer to either inverted or blurring.
- **Menu** - Menu now uses flexbox. This allows menu items to match each others heights regardless of each items content size. `right menu` content should now follow other menu content instead of preceding it (no longer uses float).
- **Grid** - Grids are now `flexbox` and `equal height` by default, the `equal height` variation can safely be removed
- **Popup** - Popup has been rewritten to drastically improve performance, especially when testing multiple positions.
- **Transition** - Fallback javascript animations have been removed from UI components like dropdown and popup to increase performance. This removes need for expensive pseudo selectors like `:visible`, `:animated` and `:hidden` and reduces filesize.
- **Form Validation** - Form validation now uses a single `settings` object like other modules. Using `(fields, settings)` will continue to work but will produce a deprecation notifications in `console`
- **Form Validation** - Form validation now supports many new validation rules, including some specifically for use with multiple select values.
- **Item** - Items now uses `flexbox` for layout.
- **Message** - `icon message` now uses `flexbox` for layout
- **Menu** - `vertical tabular menu`, a vertical tab menu, has been added
- **Input** - All `input` types use `flexbox` for layout
- **Segment** - Segments now support complex nesting, many new rules for how segment groups should appear inside groups
- **Segment** - New `horizontal segment` groups make laying out auto resizing text columns much easier.
- **Sidebar** - iOS will now correctly report `scrollTop` values for `document` or `body` when using a sidebar. Chrome on iOS no longer has issues with fixed content not sticking immediately when using a sidebar.
- **Shapes** - Shapes now correctly adjusts for margin on `sides`
- **Steps** - Steps now use `flexbox`, fluid steps now center content inside each step
- **Steps** - Steps no longer need `item count` and will automatically divide evenly
- **Transition** - Transition code has been optimized to increase performance. 100% improvement on first animation, and 40% improvement on subsequent animations.
- **Visibility** - Using `.visibility({ type: 'fixed'})` will now automatically add a placeholder element which will swap places with an element when it is attached to the viewport. This should make fixed content drastically simpler.
- **Visibility** - Visibility and sticky now use a more performant [pub/sub pattern](http://davidwalsh.name/pubsub-javascript) that will only attach a single event to context `scroll`.
- **Visibility** - Added two new visibility callbacks `onOnScreen` and `onOffScreen`, which occur, most obviously when an element first appears in or out of a browser's viewport.
**Enhancements**
- **Site** - Added many new site variables, including the ability to control input size across all UI `inputPadding`, along with more border colors, accents, and colors.
- **Accordion** - adds `onOpening` and `onClosing` callback (before animation) to go with `onOpen`, `onClose` (after animation) **Thanks @cluppric**
- **Accordion** - Added `on` setting for specifying accordion trigger event.
- **Activity Feed** - Activity feed has been rewritten to use `flexbox`
- **API** - API now has new settings `throttleFirstRequest` and `interruptRequests`. Interrupt requests will abort a previous request on an element when making a new request. `throttleFirstRequest`, sets whether the first request or only subsequent requests should be throttled when a `throttle` duration is specified.
- **Build Tools** - Build tools will now display pre-specified errors when a theme file is missing or an element specifies an unavailable theme.
- **Build Tools** - Adjusting `site.variables` will now rebuild all UI, instead of just `site.less`
- **Button** - Added `:focus` styles for all button types, all button examples in docs now are keyboard focusable using either `<button>` or `tabindex` where appropriate.
- **Card** - Card now includes a `centered` variation
- **Checkbox** - Checkbox will now gracefully correct behaviors invoked on the child input element instead of the `ui checkbox`.
- **Checkbox** - Reduced kb size of icon font
- **Divider** - `vertical divider` inside `ui grid` now accounts for column padding
- **Dropdown** - Nested `scrolling` menus now support keyboard selection, e.g. pressing "A" for apple, and keyboard scrolling.
- **Dropdown** - Dropdowns now have `match` setting to specify whether to match on `text`, `value` or `both`
- **Dropdown** - Multi select dropdowns now have new settings for specifying maximum selection count
- **Dropdown** - Dropdown has new `placeholder` setting for setting placeholder text in javascript
- **Dropdown** - Added `showOnFocus` option that lets you specify whether dropdown menu should show on focus
- **Dropdown** - `fullTextSearch: true` now uses fuzzy search (same as `ui search`)
- **Dropdown** - Page down and page up now works with dropdown menus
- **Dropdown** - Dropdown initialized with `disabled` prop on an `option` will now correctly appear disabled
- **Dropdown** - Added `disabled item` state, disabled items will automatically be skipped with keyboard selection
- **Form** - Added a host of new styles for form fields autocompleted by your browser, including autocompleted error, and focus states
- **Form** - Added placeholder color rules for IE, `ms-input-placeholder`
- **Form** - Fix `errored field` dropdown keyboard selection color
- **Form** - Adds form `success` state
- **Form Validation** - Added `is valid` behavior, returns `true/false` if form is valid
- **Form Validation** - Added `different[field]` rule which requires a field to be different than another field
- **Form Validation** - `data-validate` now takes precedence over other validation matching schemes like `name` or `id`
- **Form Validation** - New rules for matching against custom regular expressions
- **Form Validation** - Form validation now has `minCount`, `maxCount`, and `exactCount` for validating multiple selections
- **Grid** - `celled grid` now removes internal cells on mobile and tablet when used with `doubling` grid responsive variation.
- **Grid** - Added `large screen only` and `widescreen only` responsive variations for grid.
- **Grid** - `equal width` grids now works without `row` wrappers
- **Grid** - rows can now be `stretched` as well as `middle aligned`, `bottom aligned` and `top aligned`!
- **Grid** - Fixed margins on `internally celled` grid
- **Grid** - `celled` and `internally celled` grid now use flexbox instead of `display: table;`
- **Headers** - Added new header type `sub header`, useful for displaying small headers alongside text content. See examples [in the header docs](http://www.semantic-ui.com/elements/header.html#sub-headers)
- **Image** - Images now include a `spaced` variation for adding whitespace around images when used inline with text.
- **Input** - Added placeholder color rules for IE, `ms-input-placeholder`
- **Input** - Action input now supports multiple buttons, and dropdown
- **Label** - Labels now have `active` and `active hover` states
- **Label** - Label now sets an `img` height even when not using an `image label`
- **List** - Any content inside a `ui list` can now be vertically aligned
- **Menu** - Add examples/documentation for `fixed menu`
- **Menu** - Added `stackable` menu variation for simple responsive menus
- **Menu** - Added many new variables to menu
- **Menu** - Fixed several inheritance issues for `dropdown item` inside `menu` appearing as `menu item`.
- **Menu** - Horizontal menus now set a default image size for images / logos
- **Menu** - Menus items are now slightly more padded
- **Menu** - The hover/active state of `dropdown item` have been adjusted to match `item`. Dropdown styles can be themed specifically inside `menu`.
- **Menu** - Vertical dropdown menus are no longer 100% `min-width`
- **Modal** - Modal now uses an adjusted `scale in` transition in the default theme, that should be more subtle and work better with long modal content.
- **Modal** - Modal `onApprove` and `onDeny` now receive the activating element as the first parameter. Added documentation about using `return false` to avoid hiding element on click.
- **Modal** - Modal content now uses flex, image content now requires `image content` class on parent to allow for flex stylings.
- **Popup** - Popup now defines a `transform-origin` so animations will be affected by the direction the element is placed
- **Popup** - `onShow` and `onHide` callback can now cancel popup from showing or hiding by returning false
- **Popup** - Added more size variations for popup `mini`, `tiny`
- **Progress** - `indicating` labels now are more legible use separate css variables from `indicating` bar color
- **Reveal** - Added new `active` state that allows you to show `reveal` programatically
- **Search** - Cache can now be cleared using `$('.search').search('clear cache')`
- **Segment** - Added `padded` and `very padded` segment variations
- **Search** - Search now operates off a unique id generated by result position to retrieve results. For example category #1's first result is 'A1' . Previously result titles were used as their "id", which could cause issues with duplicate titles, or results that do not contain a title.
- **Search** - Search will now automatically add class `category` when using `type: category`.
- **Search** - Search will now generate `results` container if one is not present on init
- **Search** - Search now uses `em` for resizes, making sure it will resize with the surrounding content
- **Search** - Search `prompt` now has focus styles defined if not using `ui input`
- **Segment** - Added `clearing` segment for cases that need a [clearfix](http://learnlayout.com/clearfix.html).
- **Sidebar** - Improved animation performance through performance debugging. Sidebar now caches, width, height, rtl direction on load.
- **Site** - Fixed mixed globals `@defaultDuration` and `@transitionDuration` usage to use a single variable across all UI `@defaultDuration`, the same for `@defaultEasing` and `@transitionEasing`
- **Site** - Added in `pageOverflowX` variable, default theme hides horizontal scrollbars on `body`
- **Site** - Added default `focus` colors for all color variations
- **Site** - All floating/raised variations now inherit from a global `@floatedShadow` making theming easier
- **Sticky** - Sticky now internally caches current scroll position when `cantFit = true` to avoid getting DOM property on scroll.
- **Statistic** - Added new evenly divided group variation, for example `three statistics` shows 3 per row
- **Statistic** - Statitic group now use `flex`. Styles have been updated.
- **Steps** - Added `attached` steps, which can now be attached to other UI like `segment`
- **Tabs** - Tab will now manually correct page scroll position when linking to an in-page anchor in a hidden tab
- **Tabs** - Added new callbacks `onTabVisible` and `onRequest`
- **Tabs** - Added `parseScripts` option, defaults to `once` parsing inline scripts only first load
- **Table** - Adds `selectable table` variation, which shows hover effect on row when hovering
- **Table** - Added `vertical alignment` variations to `ui table`
- **Table** - Added `single line` table variation which prevents text from wrapping
- **Transition** - Adjusting `style` or `class` during a transition, will no longer reset the change after transition completes.
- **Transition** - Transition will no longer force visible/hidden with inline styles if `onComplete` callback sets visibility.
- **Visibility/Sticky** - Visibility and sticky now refresh automatically after page content loading to deal with changes in position from images loading
- **Visibility/Sticky** - Visibility now uses pub/sub pattern to greatly improve scroll performance when attaching multiple events
- **Visibility** - Visiblity includes a new setting `checkOnRefresh` which detemrines whether visibility callbacks should occur on resize or refresh
- **Visibility** - Visibility `image` will now wait to lazy load images that are *above* the current screen position, not just below.
**Bugs**
- **All Modules** - Performance logging now delays 500ms instead of 100ms for console logging to ensure all logs are captured in one group
- **All Modules/Transition** - Transitions no longer use `rotateZ(0deg)` to trigger GPU display of visible state. This causes issues with `transform` creating new stacking context that can disrupt `z-index`.
- **Accordion** - Fixed bug where `exclusive: true` could sometimes cause other accordion element animations to get stuck when animating rapidly
- **API** - API longer uses `readyState = 0` as sole check for request abort, this may accidentally trigger with `JSONP` or `CORS` requests.
- **API** - Fixed `this` context of `beforeSend` to use `stateContext` not `element`
- **API** - Fixed `loadingDuration` not correctly delaying requests when invoking with `.api('query')`
- **Build Tools** - Fixes issue with out of date minify dependency causing rules with `background: inherit;` to be removed.
- **Button** - Fixed `attached buttons` 1px offset when attached to segment and menu (border vs box shadow border)
- **Card** - IE11 now can correctly use `flexbox` cards **THanks @Widcket**
- **Checkbox** - Fix `disabled checkbox` sometimes displaying hand cursor
- **Checkbox** - Fixes nested `dropdown` inside `checkbox` causing issues
- **Checkbox** - Fix `:focus` styles only applying if checkbox is unchecked
- **Divider** - Hidden divider now correctly hides vertical dividers
- **Divider** - Fixes single icon alignment inside `vertical divider` or `horizontal divider`
- **Divider** - Fixed slight offset in `vertical divider` when it automatically adjusts to `horizontal divider` inside a `stackable grid`
- **Dropdown** - `focus` after changing tabs will no longer cause menu to re-open **Thanks @trevorharwell**
- **Dropdown** - Fix issue with search dropdown refocusing on self the first time after "tabbing" away in Chrome
- **Dropdown** - Fixes issue with headers disappearing inside of `ui dropdown` when nested in `ui menu`
- **Dropdown** - Fixes `onChange` to fire when input value changes, not just when menu UI changes
- **Dropdown** - Dropdowns with `transition: none` now work correctly.
- **Dropdown** - Fixed issue where `sortSelect` was relying on object key enumeration order which is browser dependent and unreliable. It now uses a sort function which functions the same in all browsers
- **Dropdown** - Fixed issue with `search selection` not changing text when reselecting same value from list
- **Dropdown** - Fixed `min-width` issues causing background to not appear behind unwrapped text with `white-space: nowrap`
- **Dropdown** - Dropdown `menu` now use same font size as dropdown
- **Dropdown** - Fixed dropdown `metadata` attribute caching causing issues with React integration
- **Dropdown** - Fixed border radius on `sub menu` when aligned `left`
- **Dropdown** - Fixed `inline dropdown` icon not aligning with content
- **Dropdown** - Fixed behaviors called on `<select>` after initialization not being correctly applied to `ui dropdown`
- **Dropdown** - Fixed issue with matching boolean values, and using `set selected` with `true` or `false`
- **Dropdown** - Fixed `search dropdown` submitting parent form when enter shortcut pressed
- **Dropdown** - Fixed dropdown menu items should not center inside of a center aligned container.
- **Dropdown** - Fixed some cases where onChange would not occur for values matching equality against '', for example `0`
- **Form** - Form will no longer set a height for `textarea` using the `rows` property
- **Form** - `inline fields` are now `1em` and do not match label's reduced size
- **Form** - `field` inside `fields` no longer produce double sized margins.
- **Form** - Form sizes and input sizes now inherit from `site.variables`
- **Form Validation** - Fixed bug causing `match` rule not to work as expected.
- **Form Validation** - Fixed `clear` and `reset` causing validation error to appear on checkbox if empty rule was set on checkbox.
- **Form Validation** - Form validation now validates correctly on `<select>` change
- **Form** - Fixed autocompleted `ui selection dropdown` having dropdown icon z-index issues
- **Form/Input** - `ui labeled input` inside `form` will no longer escape column width. `ui fluid input` will now use input widths shorter than browser default.
- **Grid** - Fixed responsive styling for grid types, more consistent display for `divided`, `celled,` on mobile
- **Grid** - Fix `doubling row` not working correctly inside a different `doubling grid` (css spec issue)
- **Grid** - Fix `doubling grid` incorrectly applying width to `(x) column row`
- **Grid** - First column on `stackable grid` no longer receives top margin
- **Grid** - `x column wide` inside `equal width/height` now cannot grow beyond column size
- **Grid** - Fixes colored grid columns not appearing when not nested in rows
- **Icon** - Fixes `ascending` and `descending` icon being swapped
- **Icon** - Fixes phone icon only appearing as alias `call`
- **Image** - `rounded image` and `circular image` now apply border radius to all child elements, fixing dimmers, and other content rounding
- **Input** - Fixed improper left padding on `transparent left icon input` **Thanks @zxfwinder**
- **Input** - Fixed `placeholder` color not changing correctly on focus **Thanks @zxfwinder**
- **Input** - Fixed right padding on `labeled input` that were not `corner labeled`
- **Label** - Labels inside `header` now vertical align better by accounting for line height offset
- **List** - `horizontal list` are now aligned `middle` by default, while vertical lists are aligned `top`.
- **List** - Fixes numbers not appearing when using `inverted ordered list` **Thanks @pcj**
- **List** - `a` elements inside a `ui list` will no longer apply styles on `ui` elements like `button` **Thanks @ahtinurme**
- **List** - Fixed `divided bulleted list` child lists getting wrong indent
- **List** - Bullets and numbers are no longer selectable in `bulleted list` and `ordered list`
- **List** - Fixed `inverted bulleted list` bullet color
- **List** - Fix first element touches border on `ui horizontal celled list`
- **List** - Added many new variables for link stylings inside list, added separate variables and defaults for child-list spacing
- **Loader** - Fix position of `inline centered loader` to be centered correctly
- **Message** - Message now uses `@lineHeight` from `site.variables`
- **Menu** - Fixed menus like `left fixed` `right fixed` are all now class order dependent.
- **Menu** - Fixed 1px border on last element of inline menus like `pagination menu` or `compact menu`
- **Modal** - Modal no longer hides page scroll bar causing dimmed page content to jump positions.
- **Modal** - Fixed bug where clicking an element detached from dom would cause modal to hide prematurely
- **Modal** - Clicking on other modals will no longer close open modal when `allowMultiple: true`
- **Modal** - Fixed `scrolling` class not being removed after opening a normal modal after a `scrolling` modal.
- **Message** - Updated all message colors for legibility
- **Message** - Close icon position adjusted to align with headers
- **Menu** - Fixes divider appears on last element of `(x) item menu`
- **Menu** - Fixed `top attached menu` not having margin-top, and `bottom attached menu` not having `margin-bottom`
- **Menu** - Menu now has a `min-height` that matches standard item padding
- **Menu** - `dropdown menu` in a `secondary pointing menu` or `tabular menu` now receive distinct active styling from other `active item`
- **Menu** - Fixed arrow position in `pointing menu` to be more consistent, round to exact pixels and account for arrow border width
- **Menu** - Fix issue with `pointing` arrow having too high a `z-index` and appearing above `ui dropdown menu`
- **Modal** - `scrollable modal` now correctly adds padding below modal
- **Modal** - Modal with `detachable: false` inside `ui sidebar` `pusher` element will now show correctly
- **Popup** - Popup now correctly adjusts if `data` attributes change
- **Popup** - Fixes issue with `min-width` in firefox exceeding `max-width` causing element to not wrap correctly
- **Popup** - Popup will now produce an error message and not mistakenly appear in the top left corner of page, if called with a `popup` or `target` that does not exist.
- **Popup** - Popup will no longer appear incorrectly if the targeted element is not visible on page
- **Popup** - Fixed bug which could cause pre-existing inline popup to be removed from DOM after hiding
- **Popup** - Fixes popup offstage position calculations with pages including horizontal scrollbars
- **Popup** - Added `addTouchEvents` to specify whether touch events should be added to trigger popup on mobile
- **Progress** - Fixed bug where percentage complete values between 0-1% would display incorrectly (0.5% would show as 50%)
- **Rail** - Rail 100% height now uses `border-box` to ensure exact height match to container
- **Rating** - Rating now correctly adjusts if `data` attributes change
- **Reveal** - Removed `masked` reveal, all reveals are masked by default
- **RTL** - Fixed `rtl: 'both'` in `semantic.json` not building both versions of source correctly.
- **Search** - Search will no longer incorrectly produce an error when API settings are passed through metadata
- **Sidebar** - Top/Bottom sidebar will now show scroll bars correctly when taller than 100% page height
- **Sidebar** - Fixed bug where having a `style[title]` in page causing page not to be pushed correctly
- **Sidebar** - Last menu item now has a border when sidebar and menu are used together
- **Segment** - Segment groups can now be `raised` or `piled` or `stacked`
- **Search** - Fixed `category search` not applying active styles correctly to category names
- **Search** - Fixed `onSelect` not returning the correct value when using `type: category`
- **Search** - Fixed `onSelect` returning the first term that matches the beginining of the selected value not the exact value.
- **Search** - Fix `loading search` with an `icon button` causing double loaders.
- **Search** - `searchFields` setting now correctly replaces default fields instead of adding the user fields to defaults
- **Search** - Calls to `set value` or `query` now obey `minCharacterLength`
- **Search** - Search API calls now use the same level debug settings as search
- **Steps** - Fixes bug where `ordered steps` had smaller numbers in `IE10`
- **Steps** - Fixed bug where `stackable steps` were not working correctly
- **Sticky** - Fix issue with sticky content scroll css transition causing element to scroll too slowly when cannot fit on screen.
- **Sticky** - Fix issues when `pushing: true` with sticky content having incorrect bottom spacing, when container has bottom padding
- **Sticky** - Fixed issue with sticky content animating width on display in some cases.
- **Tab** - multiple tab groups initialized together with `context: 'parent'` will now each use their own parent
- **Tab** - Tabs now use the standard component design pattern internally
- **Table** - Fixes `sorted` column are not correctly centered with `center aligned` due to margin on sort icon
- **Table** - Fixes `ascending` and `descending` icons were reversed in table
- **Table** - `very basic table` now works together with `padded table`
- **Table** - Fix inheritance of text alignment and vertical alignment
- **Transition** - Fixed bug where transition out would cause unwanted focus event in IE if element has focus
- **Transition** - Calling an `out` animation during an `in` animation with `queue: false` now correctly calls the `complete` event of the original animation
- **Transition** - Fixed bug where transition could sometimes not occur when an element was determined to always be hidden
**Changes**
- **All Modules** - All modules now default to `verbose: false`
- **Accordion** - Accordion no longer sets a `font-size` to better couple with other components defaults
- **Button** - Button focus color now uses hoverColor background instead of blue box shadow
- **Button** - `basic colored button` now grow their border size to 2px in default theme on hover
- **Breadcrumb** - Fixed breadcrumb `em` rounding, adjusted distance in default theme
- **Card** - Card styles have been adjusted, `link card` now raise to show selection. Colored variations now have shadows.
- **Checkbox** - Toggle now uses `@primaryColor`
- **Dropdown** - Dropdown padding values now resolve to exact pixel values from em
- **Dropdown** - `item` `description` is now floated by default
- **Feed** - Removed `extra text` pointer border
- **Form** - `set value` no longer automatically calls `validate form`
- **Grid** - Small computer `page grid` gutters have been adjusted from 8% to 3% to allow for roomier layouts on small screens.
- **Grid** - Vertically divided grids now double row spacing to account for dividers
- **Grid** - `center aligned` no longer centers rows, just text. Use `centered grid` to center a grid column on the page.
- **Header/Table/Divider** - These components now pull border color defaults from `site.variables` instead of using their own values
- **Image** - `avatar image` size has been slightly decreased
- **Image** - `mini image` default width has been increased to `35px`
- **Item** - item `description` now longer sets a `max-width`
- **Icon** - `disabled icon` now have `pointer-events` again.
- **Label** - Label size now varies by type. `pointing label` are now `1em` by default.
- **Label** - Padding on `corner label` has been increased
- **Input** - Input now use `em` instead of `rem` so they will inherit the size of the elements they are nested inside
- **Progress** - Update contrast on `indicating`, update default styles. Fixed some examples
- **Menu** - Menu now uses `border` for borders instead of `box-shadow`
- **Menu** - `secondary pointing menu` has had some slight design tweaks, thinner lines, more padding
- **Menu** - Active sub-menu items are now `bold`
- **Menu** - Menus no longer have additional borders on `active item` in the default theme
- **Menu** - `tiered menu` has been removed
- **Menu** - Increased contrast on `inverted` menu selection for legibility
- **Modal** - Modals now used fixed widths and not percentage widths. Widths might be slightly different.
- **Modal** - Modal no longer observes DOM changes by default, added setting to enable
- **Message** - Slightly increases `box-shadow`
- **Popup** - Popups now default to `exclusive: false` and will not hide other popups when opening
- **Popup** - Popup no longer produces a console error when a position cannot be found on the page.
- **Rating** - Rating styles have been adjusted to use subtle transitions and tweaked color values.
- **Segment** - **Clearfix** has been removed from `ui segment`
- **Sidebar** - Sidebar `legacy` animations have been removed. 3D transforms are now available in all supported browsers.
- **Search** - Slightly adjusted search result theme for clarity
- **Segment** - Segment now uses `border` for border instead of a second `box-shadow`, this may adjust position by 1pixel
- **Statistic** - Statistic label styles have been updated
- **Site** - Additional font variables have been added to site to help clarify variable purpose.
- **Site** - Increase contrast on default hovered/down colors for colored variations
- **Site** - Page background is now `#FFFFFF` by default instead of an offwhite `#F7F7F7`
- **Site** - Adjusted global line height to the closest even pixel value
- **Table** - Table header colors and padding defaults have been slightly adjusted
- **Table** - Horizontal cell padding has been slightly reduced, and cell borders are slightly lighter.
- **Transition** - Transition no longer checks for vendor prefixed `animation-name` css property. This was introduced in jQuery `1.8`
- **Transition** - Some transition have been modified so that the `in` animation is more telegraphed than the `out` animation, which may now recede more gently.
- **Visibility** - In returned `calculations` object, `visible` and `hidden` are renamed to `onScreen` and `offScreen`, since this describes more accurately what the value represents.
### Version 1.12.3 - May 20, 2015
**Announcement**
Version 2.0 will be launching on June 1st, which will include 100+ bug fixes, enhancements, new ui, and default theme improvements.
**Bugs**
- **Grid** - Fixes bug causing colored variations not to work on columns without row wrappers. Backport from `2.x`
### Version 1.12.2 - May 4, 2015
**Bugs**
- **Dropdown** - Fixed `left` and `right` arrow does not move input cursor with `visible selection dropdown`. Event accidentally prevented by `sub menu` shortcut keys.
### Version 1.12.1 - April 26, 2015
**Bugs**
- **Dropdown** - Fixes issue with chained dropdown methods used on a `<select>` not applying to the generated `ui dropdown` **Backport from 2.0**
- **Input** - Fixes labeled inputs not adjusting correctly with flex. **Backported from 2.0**
- **Input** - Fixes placeholder text color prefixes for `webkit` **Backport from 2.0**
- **Progress* - Fixes rounding error in precision settings *Thanks @aaroncox*
- **Popup** - Removes `min-width: moz-max-content` from popups, which may cause display differences between chrome and FF
### Version 1.12.0 - April 13, 2015
**Enhancements**
- **Visibility** - Adds updated visibility module from `2.x` channel. Visibility will automatically refresh by default after images load on page refresh. Fixes issues with element positions after image loading.
- **Sticky** - Adds sticky module from `2.x` branch. Sticky elements now use pub/sub with drastically improved performance. Sticky elements that do not fit on page will now scroll at the same speed as the page is scrolled instead of slower.
**Changes**
- **Popup** - Popup no longer produces a console error when it cannot find an adequate position in the browser viewport.
**Bugs**
- **Build Tools** - Fixes issue with component glob matching twice (causing build to include file twice) if duplicate values found in `semantic.json` component.
- **Input** - Backports fix from `2.x` for `ui fluid input` not appearing correctly.
- **Visibility** - Fixed issue where `precache` behavior was missing from visibility causing `image` lazy loading to fail
### Version 1.11.8 - April 13, 2015
**Bugs**
- **Build Tools** - Fixed `npm install` without `semantic.json` to merge changes with site theme and packaged themes in a similar fashion to `npm update`
- **Build** - `gulp build` now properly warns against missing `semantic.json` **Thanks @rudyrk**
### Version 1.11.7 - April 13, 2015
**Bugs**
- **Sticky** - Fixes errant `console.log` statement appearing in source
- **Card** - Fixes card `flex` display issues in IE
- **Build Tools** - Fixes issue where `npm update` install scripts would remove custom themes from `src/themes/` during copy after updating Semantic UI
### Version 1.11.6 - March 27, 2015
More critical bug backports from `2.x` branch, as well as fixes for browserify
**Bugs**
- **Menu/Dropdown** - Fix dropdown headers disappearing inside menus
- **Dropdown** - Fix unescaped character in css property causing css validation errors
- **Form** - Fix `grouped required` fields display issues **Thanks @palmsey**
- **All UI** - Fix `index.js` npm build to work with browserify in individual component repos **Thanks @sdimit**
- **LESS Repo** - Add missing `semantic.less` file to less repo for importing components
### Version 1.11.5 - March 23, 2015
This version backports several bugs that were being packed in `2.0` to `1.x`.
2.0 will be coming in the next 1-2 weeks.
**Bugs**
- **Build Tools** - Adjusting site.variables will now rebuild all UI, instead of just site.less
- **Build Tools** - LESS will now throw errors correctly in `watch`
- **Card** - Fixes dimmer background shorthand property causes transparent dimmer in minified version
- **Dimmer** - Fixed `variation` setting not working correctly
- **Dropdown** - `onChange` no longer fires when reselecting same value
- **Dropdown** - Fix bug where element will not blur on tab key when search selection and no selection made
- **Dropdown** - Dropdown init on `select` now returns `ui dropdown` created for chaining
- **Dropdown** - Dropdown `focus` color has been adjusted to match forms more closely
- **Dropdown** - Fixes IE10 scrollbar width in menu (calc was being precompiled in LESS) **Thanks @gabormeszoly**
### Version 1.11.3-4 - March 6, 2015 ### Version 1.11.3-4 - March 6, 2015
**Enhancements** **Enhancements**
@ -14,7 +856,7 @@
**Enhancements** **Enhancements**
- **Accordion** - Accordion can now specify a trigger element instead of `title`, added an [example in docs](http://www.semantic-ui.com/modules/accordion.html#changing-trigger) - **Accordion** - Accordion can now specify a trigger element instead of `title`, added an [example in docs](http://www.semantic-ui.com/modules/accordion.html#changing-trigger)
- **Accordion** - Accordion can now hide while opening animation is still occuring - **Accordion** - Accordion can now hide while opening animation is still occurring
- **Grid** - Equal width grids will now make column content stretch to full height, not just the column itself (requires flexbox). See examples [in the grid docs](http://www.semantic-ui.com/collections/grid.html#equal-height) - **Grid** - Equal width grids will now make column content stretch to full height, not just the column itself (requires flexbox). See examples [in the grid docs](http://www.semantic-ui.com/collections/grid.html#equal-height)
- **Header** - Labels inside headers have been slightly increased in size - **Header** - Labels inside headers have been slightly increased in size
- **Search** - Search now uses internally [fuzzy search](https://github.com/bevacqua/fuzzysearch) as its new full text search algorithm. - **Search** - Search now uses internally [fuzzy search](https://github.com/bevacqua/fuzzysearch) as its new full text search algorithm.
@ -47,6 +889,7 @@
[See the examples](http://www.semantic-ui.com/behaviors/visibility.html#/examples) online for a demonstration. [See the examples](http://www.semantic-ui.com/behaviors/visibility.html#/examples) online for a demonstration.
**Enhancements** **Enhancements**
- **Menu** - Horizontal menus now use flexbox so they can resize automatically to content size.
- **Form** - `<select>` now receive error formatting on `form error` **Thanks @davialexandre** - **Form** - `<select>` now receive error formatting on `form error` **Thanks @davialexandre**
- **Transition** - Added more reasonable default durations for each animation - **Transition** - Added more reasonable default durations for each animation
- **Loader** - `inline loader` now has a `centered` variation - **Loader** - `inline loader` now has a `centered` variation
@ -57,8 +900,13 @@
- **Dimmer** - Add `opacity` setting to override css value. Add to docs several undocumented settings, like `useCSS`, and `variation`. - **Dimmer** - Add `opacity` setting to override css value. Add to docs several undocumented settings, like `useCSS`, and `variation`.
- **Icon** - added `@src` variable to make it adjustable with themes that dont support all types like `woff2` - **Icon** - added `@src` variable to make it adjustable with themes that dont support all types like `woff2`
**Deprecations**
- **Menu** - `ui tiered menu` has been deprecated. It has been removed from the docs, and will be removed eventually in `2.0`
**Bugs** **Bugs**
- **Input** - Fix bug with vertical centering of `ui action input` inside `menu` due to `flexbox` changes
- **Dropdown** - Fixes issue where dropdown would not open after restoring previus value on failed `search dropdown` search - **Dropdown** - Fixes issue where dropdown would not open after restoring previus value on failed `search dropdown` search
- **Dropdown** - Fixes issue where dropdown would not open after restoring previous value on failed `search dropdown` search
- **Grid** - Fixes specificity of grid `column` colors to not affect other elements with columns - **Grid** - Fixes specificity of grid `column` colors to not affect other elements with columns
- **Icon** - Fix `clockwise rotated icon` causing `clockwise` icon to appear - **Icon** - Fix `clockwise rotated icon` causing `clockwise` icon to appear
- **Popup** - Fix issue with `popup` not re-opening until another element gains focus on a mobile touchscreen - **Popup** - Fix issue with `popup` not re-opening until another element gains focus on a mobile touchscreen
@ -203,7 +1051,7 @@ Importing `semantic.less` still does not require any special syntax
**Enhancement** **Enhancement**
- **API** - API now has an ``onRequest`` callback setting that receives the XHR promise after initializing the request - **API** - API now has an ``onRequest`` callback setting that receives the XHR promise after initializing the request
- **Button** - Loading buttons no longer receive `pointer-events` in default theme. Added variable for `loading button` opacity. - **Button** - Loading buttons no longer receive `pointer-events` in default theme. Added variable for `loading button` opacity.
- **Card** - Card now has colored variations **Tahnks @romuloctba** - **Card** - Card now has colored variations **Thanks @romuloctba**
- **Dropdown** - `search selection dropdown` will now close the menu when a `dropdown icon` is clicked - **Dropdown** - `search selection dropdown` will now close the menu when a `dropdown icon` is clicked
- **Dropdown** - Added new dropdown setting, `forceSelection` which forces `search selection` to a selected value on blur. Defaults to `true`. - **Dropdown** - Added new dropdown setting, `forceSelection` which forces `search selection` to a selected value on blur. Defaults to `true`.
- **Flag** - Updated Burma/Myanmar flag to current flag (was pre-2010 flag) - **Flag** - Updated Burma/Myanmar flag to current flag (was pre-2010 flag)
@ -251,7 +1099,7 @@ Importing `semantic.less` still does not require any special syntax
**Key Features** **Key Features**
- **Form** - Form now has new methods `reset`, `clear`, `set value(s)`, and `read value(s)` for modifying and reading form data. Check docs for details on implementation. **Thanks @mktm** - **Form** - Form now has new methods `reset`, `clear`, `set value(s)`, and `read value(s)` for modifying and reading form data. Check docs for details on implementation. **Thanks @mktm**
- **Search** - Search `onSelect` now recieves JSON object matching currently selected element, you can now programmatically retrieve result JSON using `.search('get result', 'query')` or `.search('get results')`. `get result` will default to current value unless specified as first parameter. - **Search** - Search `onSelect` now receives JSON object matching currently selected element, you can now programmatically retrieve result JSON using `.search('get result', 'query')` or `.search('get results')`. `get result` will default to current value unless specified as first parameter.
- **Transition** - Added many new transitions, and new directions for existing transitions **Thanks @ph7vc** - **Transition** - Added many new transitions, and new directions for existing transitions **Thanks @ph7vc**
- **Dropdown** - Dropdown now stores `placeholder text` (prompt text) as separate from `default text` (text set on page load). You can now reset placeholder conditions using `$('.ui.dropdown').dropdown('clear');`` - **Dropdown** - Dropdown now stores `placeholder text` (prompt text) as separate from `default text` (text set on page load). You can now reset placeholder conditions using `$('.ui.dropdown').dropdown('clear');``
@ -277,7 +1125,7 @@ Importing `semantic.less` still does not require any special syntax
- **Dropdown** - Dropdown no longer will not show menu when no `item` are present in menu. Dropdown will now only filter results for `ui search dropdown` #1632 **Thanks PSyton**. - **Dropdown** - Dropdown no longer will not show menu when no `item` are present in menu. Dropdown will now only filter results for `ui search dropdown` #1632 **Thanks PSyton**.
- **Dropdown** - Dropdown will now produce an error if behaviors on an initialized `<select>` are not invoked on `ui dropdown` - **Dropdown** - Dropdown will now produce an error if behaviors on an initialized `<select>` are not invoked on `ui dropdown`
- **Dropdown** - Fixed bug where link items would not open in sub-menus due to `event.preventDefault` - **Dropdown** - Fixed bug where link items would not open in sub-menus due to `event.preventDefault`
- **Label** - Fixed `ui corner label` appearing on-top of `ui dropdown` menu due to issue in z-index heirarchy - **Label** - Fixed `ui corner label` appearing on-top of `ui dropdown` menu due to issue in z-index hierarchy
- **Label** - Fixed issue with `ui ribbon label` not positioning itself correctly when using sizes like `small` or `large` - **Label** - Fixed issue with `ui ribbon label` not positioning itself correctly when using sizes like `small` or `large`
- **List** - `relaxed list` and `very relaxed list` no longer add padding to child menu items - **List** - `relaxed list` and `very relaxed list` no longer add padding to child menu items
- **Popup** - Popup will now only use a max of one element when `settings.popup` mistakingly passes multiple DOM elements - **Popup** - Popup will now only use a max of one element when `settings.popup` mistakingly passes multiple DOM elements
@ -330,7 +1178,7 @@ Importing `semantic.less` still does not require any special syntax
**Bugs** **Bugs**
- **Video** - Video component now uses `//` instead of defaulting to `http` - **Video** - Video component now uses `//` instead of defaulting to `http`
- **Dropdown** - `restore defaults` will now set placeholder styling and remove active elemenet. Added example in docs. - **Dropdown** - `restore defaults` will now set placeholder styling and remove active element. Added example in docs.
- **Dropdown** - Fixed bug where sub menus may sometimes have dropdown icon overlap text - **Dropdown** - Fixed bug where sub menus may sometimes have dropdown icon overlap text
- **Dropdown** - Fixes dropdown search input from filtering text values when input is inside menu, i.e "In-Menu Search" - **Dropdown** - Fixes dropdown search input from filtering text values when input is inside menu, i.e "In-Menu Search"
- **Dropdown** - Fix issue with search selection not correctly creating RegExp when select values are not strings **Thanks @alufers** - **Dropdown** - Fix issue with search selection not correctly creating RegExp when select values are not strings **Thanks @alufers**
@ -733,7 +1581,7 @@ Importing `semantic.less` still does not require any special syntax
- **Reveal** - Fixes reveal being broken in Chrome in ``0.15.5`` due to poor fix for reveal selectability - **Reveal** - Fixes reveal being broken in Chrome in ``0.15.5`` due to poor fix for reveal selectability
**Fixes** **Fixes**
- **Transition** - Fixes issue where transition hidden was sometimes overwriten by UI styles causing the element to stay visible - **Transition** - Fixes issue where transition hidden was sometimes overwritten by UI styles causing the element to stay visible
- **Checkbox** - Fixes issue where checkboxes with multiple line labels were appearing formatted incorrectly. - **Checkbox** - Fixes issue where checkboxes with multiple line labels were appearing formatted incorrectly.
@ -951,7 +1799,7 @@ Some updates to docs formatting
**Fixes** **Fixes**
- **Popup** - Native browser popups no longer if using ``title`` attribute - **Popup** - Native browser popups no longer if using ``title`` attribute
- **Grid** - Fixes issue where stackable grid was not working correctly when using (x) wide column - **Grid** - Fixes issue where stackable grid was not working correctly when using (x) wide column
- **Modal** - Fixes element detatching sometimes in case where it is already inside a dimmer - **Modal** - Fixes element detaching sometimes in case where it is already inside a dimmer
- **Input** - Removes duplicate sizes - **Input** - Removes duplicate sizes
### Version 0.10.2 - Dec 13, 2013 ### Version 0.10.2 - Dec 13, 2013
@ -986,9 +1834,9 @@ Some updates to docs formatting
### Version 0.9.6 - Dec 04, 2013 ### Version 0.9.6 - Dec 04, 2013
**Updates** **Updates**
- **Rating** - Ratings now recieve class disabled when read only, instead of recieving ``active`` when rateable since active are much more common - **Rating** - Ratings now receive class disabled when read only, instead of receiving ``active`` when rateable since active are much more common
- **Grid** - Fixes some instances where grid column width ``x wide`` was being overruled by parent element ``x column``. - **Grid** - Fixes some instances where grid column width ``x wide`` was being overruled by parent element ``x column``.
- **Header, Grid, Segment** - Adds justified alignemnt - **Header, Grid, Segment** - Adds justified alignment
- **Message** - Fixes issues with attached icon message (thanks overra) - **Message** - Fixes issues with attached icon message (thanks overra)
### Version 0.9.5 - Nov 25, 2013 ### Version 0.9.5 - Nov 25, 2013
@ -1017,7 +1865,7 @@ Some updates to docs formatting
**Fixes** **Fixes**
- **Dropdown** - Fixes "falsey" values (like 0) not being processed correctly - **Dropdown** - Fixes "falsey" values (like 0) not being processed correctly
- **Segment** - Fixes segment text color when nested inside inverted segment - **Segment** - Fixes segment text color when nested inside inverted segment
- **Button** - Fixes improper active/visible state due to :not specificity (most noticiable in mousedown on a dropdown button) - **Button** - Fixes improper active/visible state due to :not specificity (most noticeable in mousedown on a dropdown button)
### Version 0.9.2 - Nov 8, 2013 ### Version 0.9.2 - Nov 8, 2013
@ -1144,13 +1992,13 @@ Some updates to docs formatting
### Version 0.7.0 - Oct 22, 2013 ### Version 0.7.0 - Oct 22, 2013
**New** **New**
- **Table** - Added aweosome new responsive style to ui tables - **Table** - Added awesome new responsive style to ui tables
- **Button** - New social buttons for Instagram, LinkedIn, Google Plus, Pinterest - **Button** - New social buttons for Instagram, LinkedIn, Google Plus, Pinterest
- **List** - Adds documentation for module format - **List** - Adds documentation for module format
- **List** - Adds onTabInit for local tabs on first load - **List** - Adds onTabInit for local tabs on first load
- **List** - Popups can now have a different target than itself - **List** - Popups can now have a different target than itself
- **Modal** - Modal hide can be cancelled from ``onApprove`` and ``onDeny`` by returning false from callback - **Modal** - Modal hide can be cancelled from ``onApprove`` and ``onDeny`` by returning false from callback
- **Transition** - onShow and onHide callbacks for visibilit changing transitions - **Transition** - onShow and onHide callbacks for visibility changing transitions
- **Shape** - New 'cube' and 'text' shape type - **Shape** - New 'cube' and 'text' shape type
- **Shape** - Transition duration can now be set programatically - **Shape** - Transition duration can now be set programatically
- **Shape** - New beforeChange callback - **Shape** - New beforeChange callback

View file

@ -10,7 +10,7 @@
"jquery" : ">=1.8" "jquery" : ">=1.8"
}, },
"main": [ "main": [
"dist/semantic.css", "src/semantic.less",
"dist/semantic.js" "dist/semantic.js"
], ],
"keywords": [ "keywords": [
@ -19,9 +19,7 @@
"css3", "css3",
"framework" "framework"
], ],
"license" : [ "license" : "MIT",
"http://semantic-ui.mit-license.org/"
],
"ignore": [ "ignore": [
"src/site", "src/site",
"test" "test"

35
web/semantic/dist/components/accordion.css vendored Normal file → Executable file
View file

@ -1,9 +1,9 @@
/*! /*!
* # Semantic UI 1.11.4 - Accordion * # Semantic UI 2.1.7 - Accordion
* http://github.com/semantic-org/semantic-ui/ * http://github.com/semantic-org/semantic-ui/
* *
* *
* Copyright 2014 Contributors * Copyright 2015 Contributors
* Released under the MIT license * Released under the MIT license
* http://opensource.org/licenses/MIT * http://opensource.org/licenses/MIT
* *
@ -17,7 +17,6 @@
.ui.accordion, .ui.accordion,
.ui.accordion .accordion { .ui.accordion .accordion {
max-width: 100%; max-width: 100%;
font-size: 1em;
} }
.ui.accordion .accordion { .ui.accordion .accordion {
margin: 1em 0em 0em; margin: 1em 0em 0em;
@ -35,7 +34,7 @@
padding: 0.5em 0em; padding: 0.5em 0em;
font-family: 'Lato', 'Helvetica Neue', Arial, Helvetica, sans-serif; font-family: 'Lato', 'Helvetica Neue', Arial, Helvetica, sans-serif;
font-size: 1em; font-size: 1em;
color: rgba(0, 0, 0, 0.8); color: rgba(0, 0, 0, 0.87);
} }
/* Content */ /* Content */
@ -47,7 +46,7 @@
/* Default Styling */ /* Default Styling */
.ui.accordion:not(.styled) .title ~ .content:not(.ui), .ui.accordion:not(.styled) .title ~ .content:not(.ui),
.ui.accordion:not(.styled) .accordion .title ~ .content:not(.ui) { .ui.accordion:not(.styled) .accordion .title ~ .content:not(.ui) {
margin: 0em; margin: '';
padding: 0.5em 0em 1em; padding: 0.5em 0em 1em;
} }
.ui.accordion:not(.styled) .title ~ .content:not(.ui):last-child { .ui.accordion:not(.styled) .title ~ .content:not(.ui):last-child {
@ -65,8 +64,8 @@
margin: 0em 0.25rem 0em 0rem; margin: 0em 0.25rem 0em 0rem;
padding: 0em; padding: 0em;
font-size: 1em; font-size: 1em;
-webkit-transition: -webkit-transform 0.2s ease, opacity 0.2s ease; -webkit-transition: -webkit-transform 0.1s ease, opacity 0.1s ease;
transition: transform 0.2s ease, opacity 0.2s ease; transition: transform 0.1s ease, opacity 0.1s ease;
vertical-align: baseline; vertical-align: baseline;
-webkit-transform: none; -webkit-transform: none;
-ms-transform: none; -ms-transform: none;
@ -85,7 +84,7 @@
} }
.ui.accordion.menu .item .title > .dropdown.icon { .ui.accordion.menu .item .title > .dropdown.icon {
float: right; float: right;
margin: 0.165em 0em 0em 1em; margin: 0.21425em 0em 0em 1em;
-webkit-transform: rotate(180deg); -webkit-transform: rotate(180deg);
-ms-transform: rotate(180deg); -ms-transform: rotate(180deg);
transform: rotate(180deg); transform: rotate(180deg);
@ -129,9 +128,9 @@
} }
.ui.styled.accordion, .ui.styled.accordion,
.ui.styled.accordion .accordion { .ui.styled.accordion .accordion {
border-radius: 0.2857rem; border-radius: 0.28571429rem;
background: #ffffff; background: #ffffff;
box-shadow: 0px 1px 2px 0 rgba(0, 0, 0, 0.05), 0px 0px 0px 1px rgba(39, 41, 43, 0.15); box-shadow: 0px 1px 2px 0 rgba(34, 36, 38, 0.15), 0px 0px 0px 1px rgba(34, 36, 38, 0.15);
} }
.ui.styled.accordion .title, .ui.styled.accordion .title,
.ui.styled.accordion .accordion .title { .ui.styled.accordion .accordion .title {
@ -139,9 +138,9 @@
padding: 0.75em 1em; padding: 0.75em 1em;
color: rgba(0, 0, 0, 0.4); color: rgba(0, 0, 0, 0.4);
font-weight: bold; font-weight: bold;
border-top: 1px solid rgba(39, 41, 43, 0.15); border-top: 1px solid rgba(34, 36, 38, 0.15);
-webkit-transition: background 0.2s ease, color 0.2s ease; -webkit-transition: background 0.1s ease, color 0.1s ease;
transition: background 0.2s ease, color 0.2s ease; transition: background 0.1s ease, color 0.1s ease;
} }
.ui.styled.accordion > .title:first-child, .ui.styled.accordion > .title:first-child,
.ui.styled.accordion .accordion .title:first-child { .ui.styled.accordion .accordion .title:first-child {
@ -165,22 +164,22 @@
.ui.styled.accordion .accordion .title:hover, .ui.styled.accordion .accordion .title:hover,
.ui.styled.accordion .accordion .active.title { .ui.styled.accordion .accordion .active.title {
background: transparent; background: transparent;
color: rgba(0, 0, 0, 0.8); color: rgba(0, 0, 0, 0.87);
} }
.ui.styled.accordion .accordion .title:hover, .ui.styled.accordion .accordion .title:hover,
.ui.styled.accordion .accordion .active.title { .ui.styled.accordion .accordion .active.title {
background: transparent; background: transparent;
color: rgba(0, 0, 0, 0.8); color: rgba(0, 0, 0, 0.87);
} }
/* Active */ /* Active */
.ui.styled.accordion .active.title { .ui.styled.accordion .active.title {
background: transparent; background: transparent;
color: rgba(0, 0, 0, 0.8); color: rgba(0, 0, 0, 0.95);
} }
.ui.styled.accordion .accordion .active.title { .ui.styled.accordion .accordion .active.title {
background: transparent; background: transparent;
color: rgba(0, 0, 0, 0.8); color: rgba(0, 0, 0, 0.95);
} }
@ -218,7 +217,7 @@
---------------*/ ---------------*/
.ui.inverted.accordion .title:not(.ui) { .ui.inverted.accordion .title:not(.ui) {
color: #ffffff; color: rgba(255, 255, 255, 0.9);
} }

View file

@ -1,9 +1,9 @@
/*! /*!
* # Semantic UI 1.11.4 - Accordion * # Semantic UI 2.1.7 - Accordion
* http://github.com/semantic-org/semantic-ui/ * http://github.com/semantic-org/semantic-ui/
* *
* *
* Copyright 2014 Contributors * Copyright 2015 Contributors
* Released under the MIT license * Released under the MIT license
* http://opensource.org/licenses/MIT * http://opensource.org/licenses/MIT
* *
@ -63,7 +63,9 @@ $.fn.accordion = function(parameters) {
initialize: function() { initialize: function() {
module.debug('Initializing', $module); module.debug('Initializing', $module);
module.bind.events(); module.bind.events();
module.observeChanges(); if(settings.observeChanges) {
module.observeChanges();
}
module.instantiate(); module.instantiate();
}, },
@ -105,7 +107,7 @@ $.fn.accordion = function(parameters) {
events: function() { events: function() {
module.debug('Binding delegated events'); module.debug('Binding delegated events');
$module $module
.on('click' + eventNamespace, selector.trigger, module.event.click) .on(settings.on + eventNamespace, selector.trigger, module.event.click)
; ;
} }
}, },
@ -153,54 +155,59 @@ $.fn.accordion = function(parameters) {
$activeContent = $activeTitle.next($content), $activeContent = $activeTitle.next($content),
isAnimating = $activeContent.hasClass(className.animating), isAnimating = $activeContent.hasClass(className.animating),
isActive = $activeContent.hasClass(className.active), isActive = $activeContent.hasClass(className.active),
isUnopen = (!isActive && !isAnimating) isOpen = (isActive || isAnimating)
; ;
if(isUnopen) { if(isOpen) {
module.debug('Opening accordion content', $activeTitle); module.debug('Accordion already open, skipping', $activeContent);
if(settings.exclusive) { return;
module.closeOthers.call($activeTitle);
}
$activeTitle
.addClass(className.active)
;
$activeContent.addClass(className.animating);
if(settings.animateChildren) {
if($.fn.transition !== undefined && $module.transition('is supported')) {
$activeContent
.children()
.transition({
animation : 'fade in',
queue : false,
useFailSafe : true,
debug : settings.debug,
verbose : settings.verbose,
duration : settings.duration
})
;
}
else {
$activeContent
.children()
.stop(true)
.animate({
opacity: 1
}, settings.duration, module.resetOpacity)
;
}
}
$activeContent
.stop(true)
.slideDown(settings.duration, settings.easing, function() {
$activeContent
.removeClass(className.animating)
.addClass(className.active)
;
module.reset.display.call(this);
settings.onOpen.call(this);
settings.onChange.call(this);
})
;
} }
module.debug('Opening accordion content', $activeTitle);
settings.onOpening.call($activeContent);
if(settings.exclusive) {
module.closeOthers.call($activeTitle);
}
$activeTitle
.addClass(className.active)
;
$activeContent
.stop(true, true)
.addClass(className.animating)
;
if(settings.animateChildren) {
if($.fn.transition !== undefined && $module.transition('is supported')) {
$activeContent
.children()
.transition({
animation : 'fade in',
queue : false,
useFailSafe : true,
debug : settings.debug,
verbose : settings.verbose,
duration : settings.duration
})
;
}
else {
$activeContent
.children()
.stop(true, true)
.animate({
opacity: 1
}, settings.duration, module.resetOpacity)
;
}
}
$activeContent
.slideDown(settings.duration, settings.easing, function() {
$activeContent
.removeClass(className.animating)
.addClass(className.active)
;
module.reset.display.call(this);
settings.onOpen.call(this);
settings.onChange.call(this);
})
;
}, },
close: function(query) { close: function(query) {
@ -218,10 +225,12 @@ $.fn.accordion = function(parameters) {
; ;
if((isActive || isOpening) && !isClosing) { if((isActive || isOpening) && !isClosing) {
module.debug('Closing accordion content', $activeContent); module.debug('Closing accordion content', $activeContent);
settings.onClosing.call($activeContent);
$activeTitle $activeTitle
.removeClass(className.active) .removeClass(className.active)
; ;
$activeContent $activeContent
.stop(true, true)
.addClass(className.animating) .addClass(className.animating)
; ;
if(settings.animateChildren) { if(settings.animateChildren) {
@ -241,7 +250,7 @@ $.fn.accordion = function(parameters) {
else { else {
$activeContent $activeContent
.children() .children()
.stop(true) .stop(true, true)
.animate({ .animate({
opacity: 0 opacity: 0
}, settings.duration, module.resetOpacity) }, settings.duration, module.resetOpacity)
@ -249,7 +258,6 @@ $.fn.accordion = function(parameters) {
} }
} }
$activeContent $activeContent
.stop(true)
.slideUp(settings.duration, settings.easing, function() { .slideUp(settings.duration, settings.easing, function() {
$activeContent $activeContent
.removeClass(className.animating) .removeClass(className.animating)
@ -291,6 +299,10 @@ $.fn.accordion = function(parameters) {
$openTitles $openTitles
.removeClass(className.active) .removeClass(className.active)
; ;
$openContents
.removeClass(className.animating)
.stop(true, true)
;
if(settings.animateChildren) { if(settings.animateChildren) {
if($.fn.transition !== undefined && $module.transition('is supported')) { if($.fn.transition !== undefined && $module.transition('is supported')) {
$openContents $openContents
@ -307,7 +319,7 @@ $.fn.accordion = function(parameters) {
else { else {
$openContents $openContents
.children() .children()
.stop() .stop(true, true)
.animate({ .animate({
opacity: 0 opacity: 0
}, settings.duration, module.resetOpacity) }, settings.duration, module.resetOpacity)
@ -315,7 +327,6 @@ $.fn.accordion = function(parameters) {
} }
} }
$openContents $openContents
.stop()
.slideUp(settings.duration , settings.easing, function() { .slideUp(settings.duration , settings.easing, function() {
$(this).removeClass(className.active); $(this).removeClass(className.active);
module.reset.display.call(this); module.reset.display.call(this);
@ -422,7 +433,7 @@ $.fn.accordion = function(parameters) {
}); });
} }
clearTimeout(module.performance.timer); clearTimeout(module.performance.timer);
module.performance.timer = setTimeout(module.performance.display, 100); module.performance.timer = setTimeout(module.performance.display, 500);
}, },
display: function() { display: function() {
var var
@ -534,20 +545,27 @@ $.fn.accordion.settings = {
namespace : 'accordion', namespace : 'accordion',
debug : false, debug : false,
verbose : true, verbose : false,
performance : true, performance : true,
exclusive : true, on : 'click', // event on title that opens accordion
collapsible : true,
closeNested : false,
animateChildren : true,
duration : 350, observeChanges : true, // whether accordion should automatically refresh on DOM insertion
easing : 'easeOutQuad',
onOpen : function(){}, exclusive : true, // whether a single accordion content panel should be open at once
onClose : function(){}, collapsible : true, // whether accordion content can be closed
onChange : function(){}, closeNested : false, // whether nested content should be closed when a panel is closed
animateChildren : true, // whether children opacity should be animated
duration : 350, // duration of animation
easing : 'easeOutQuad', // easing equation for animation
onOpening : function(){}, // callback before open animation
onOpen : function(){}, // callback after open animation
onClosing : function(){}, // callback before closing animation
onClose : function(){}, // callback after closing animation
onChange : function(){}, // callback after closing or opening animation
error: { error: {
method : 'The method you called is not defined' method : 'The method you called is not defined'
@ -574,5 +592,5 @@ $.extend( $.easing, {
} }
}); });
})( jQuery, window , document ); })( jQuery, window, document );

6
web/semantic/dist/components/accordion.min.css vendored Normal file → Executable file

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -1,5 +1,5 @@
/*! /*!
* # Semantic UI 1.11.4 - Ad * # Semantic UI 2.1.7 - Ad
* http://github.com/semantic-org/semantic-ui/ * http://github.com/semantic-org/semantic-ui/
* *
* *
@ -240,7 +240,7 @@
} }
.ui.test.ad { .ui.test.ad {
position: relative; position: relative;
background: #333333; background: #545454;
} }
.ui.test.ad:after { .ui.test.ad:after {
position: absolute; position: absolute;
@ -257,7 +257,7 @@
font-weight: bold; font-weight: bold;
} }
.ui.mobile.test.ad:after { .ui.mobile.test.ad:after {
font-size: 0.85714em; font-size: 0.85714286em;
} }
.ui.test.ad[data-text]:after { .ui.test.ad[data-text]:after {
content: attr(data-text); content: attr(data-text);

View file

@ -1,5 +1,5 @@
/*! /*!
* # Semantic UI 1.11.4 - Ad * # Semantic UI 2.1.7 - Ad
* http://github.com/semantic-org/semantic-ui/ * http://github.com/semantic-org/semantic-ui/
* *
* *
@ -7,4 +7,4 @@
* Released under the MIT license * Released under the MIT license
* http://opensource.org/licenses/MIT * http://opensource.org/licenses/MIT
* *
*/.ui.ad{display:block;overflow:hidden;margin:1em 0}.ui.ad:first-child,.ui.ad:last-child{margin:0}.ui.ad iframe{margin:0;padding:0;border:none;overflow:hidden}.ui.leaderboard.ad{width:728px;height:90px}.ui[class*="medium rectangle"].ad{width:300px;height:250px}.ui[class*="large rectangle"].ad{width:336px;height:280px}.ui[class*="half page"].ad{width:300px;height:600px}.ui.square.ad{width:250px;height:250px}.ui[class*="small square"].ad{width:200px;height:200px}.ui[class*="small rectangle"].ad{width:180px;height:150px}.ui[class*="vertical rectangle"].ad{width:240px;height:400px}.ui.button.ad{width:120px;height:90px}.ui[class*="square button"].ad{width:125px;height:125px}.ui[class*="small button"].ad{width:120px;height:60px}.ui.skyscraper.ad{width:120px;height:600px}.ui[class*="wide skyscraper"].ad{width:160px}.ui.banner.ad{width:468px;height:60px}.ui[class*="vertical banner"].ad{width:120px;height:240px}.ui[class*="top banner"].ad{width:930px;height:180px}.ui[class*="half banner"].ad{width:234px;height:60px}.ui[class*="large leaderboard"].ad{width:970px;height:90px}.ui.billboard.ad{width:970px;height:250px}.ui.panorama.ad{width:980px;height:120px}.ui.netboard.ad{width:580px;height:400px}.ui[class*="large mobile banner"].ad{width:320px;height:100px}.ui[class*="mobile leaderboard"].ad{width:320px;height:50px}.ui.mobile.ad{display:none}@media only screen and (max-width:767px){.ui.mobile.ad{display:block}}.ui.centered.ad{margin-left:auto;margin-right:auto}.ui.test.ad{position:relative;background:#333}.ui.test.ad:after{position:absolute;top:50%;left:50%;width:100%;text-align:center;-webkit-transform:translateX(-50%) translateY(-50%);-ms-transform:translateX(-50%) translateY(-50%);transform:translateX(-50%) translateY(-50%);content:'Ad';color:#fff;font-size:1em;font-weight:700}.ui.mobile.test.ad:after{font-size:.85714em}.ui.test.ad[data-text]:after{content:attr(data-text)} */.ui.ad{display:block;overflow:hidden;margin:1em 0}.ui.ad:first-child,.ui.ad:last-child{margin:0}.ui.ad iframe{margin:0;padding:0;border:none;overflow:hidden}.ui.leaderboard.ad{width:728px;height:90px}.ui[class*="medium rectangle"].ad{width:300px;height:250px}.ui[class*="large rectangle"].ad{width:336px;height:280px}.ui[class*="half page"].ad{width:300px;height:600px}.ui.square.ad{width:250px;height:250px}.ui[class*="small square"].ad{width:200px;height:200px}.ui[class*="small rectangle"].ad{width:180px;height:150px}.ui[class*="vertical rectangle"].ad{width:240px;height:400px}.ui.button.ad{width:120px;height:90px}.ui[class*="square button"].ad{width:125px;height:125px}.ui[class*="small button"].ad{width:120px;height:60px}.ui.skyscraper.ad{width:120px;height:600px}.ui[class*="wide skyscraper"].ad{width:160px}.ui.banner.ad{width:468px;height:60px}.ui[class*="vertical banner"].ad{width:120px;height:240px}.ui[class*="top banner"].ad{width:930px;height:180px}.ui[class*="half banner"].ad{width:234px;height:60px}.ui[class*="large leaderboard"].ad{width:970px;height:90px}.ui.billboard.ad{width:970px;height:250px}.ui.panorama.ad{width:980px;height:120px}.ui.netboard.ad{width:580px;height:400px}.ui[class*="large mobile banner"].ad{width:320px;height:100px}.ui[class*="mobile leaderboard"].ad{width:320px;height:50px}.ui.mobile.ad{display:none}@media only screen and (max-width:767px){.ui.mobile.ad{display:block}}.ui.centered.ad{margin-left:auto;margin-right:auto}.ui.test.ad{position:relative;background:#545454}.ui.test.ad:after{position:absolute;top:50%;left:50%;width:100%;text-align:center;-webkit-transform:translateX(-50%) translateY(-50%);-ms-transform:translateX(-50%) translateY(-50%);transform:translateX(-50%) translateY(-50%);content:'Ad';color:#fff;font-size:1em;font-weight:700}.ui.mobile.test.ad:after{font-size:.85714286em}.ui.test.ad[data-text]:after{content:attr(data-text)}

View file

@ -1,9 +1,9 @@
/*! /*!
* # Semantic UI 1.11.4 - API * # Semantic UI 2.1.7 - API
* http://github.com/semantic-org/semantic-ui/ * http://github.com/semantic-org/semantic-ui/
* *
* *
* Copyright 2014 Contributors * Copyright 2015 Contributors
* Released under the MIT license * Released under the MIT license
* http://opensource.org/licenses/MIT * http://opensource.org/licenses/MIT
* *
@ -63,10 +63,11 @@ $.api = $.fn.api = function(parameters) {
requestSettings, requestSettings,
url, url,
data, data,
requestStartTime,
// standard module // standard module
element = this, element = this,
context = $context.get(), context = $context[0],
instance = $module.data(moduleNamespace), instance = $module.data(moduleNamespace),
module module
; ;
@ -74,21 +75,8 @@ $.api = $.fn.api = function(parameters) {
module = { module = {
initialize: function() { initialize: function() {
var
triggerEvent = module.get.event()
;
// bind events
if(!methodInvoked) { if(!methodInvoked) {
if( triggerEvent ) { module.bind.events();
module.debug('Attaching API events to element', triggerEvent);
$module
.on(triggerEvent + eventNamespace, module.event.trigger)
;
}
else if(settings.on == 'now') {
module.debug('Querying API now', triggerEvent);
module.query();
}
} }
module.instantiate(); module.instantiate();
}, },
@ -109,16 +97,87 @@ $.api = $.fn.api = function(parameters) {
; ;
}, },
bind: {
events: function() {
var
triggerEvent = module.get.event()
;
if( triggerEvent ) {
module.verbose('Attaching API events to element', triggerEvent);
$module
.on(triggerEvent + eventNamespace, module.event.trigger)
;
}
else if(settings.on == 'now') {
module.debug('Querying API endpoint immediately');
module.query();
}
}
},
decode: {
json: function(response) {
if(response !== undefined && typeof response == 'string') {
try {
response = JSON.parse(response);
}
catch(e) {
// isnt json string
}
}
return response;
}
},
read: {
cachedResponse: function(url) {
var
response
;
if(window.Storage === undefined) {
module.error(error.noStorage);
return;
}
response = sessionStorage.getItem(url);
module.debug('Using cached response', url, response);
response = module.decode.json(response);
return false;
}
},
write: {
cachedResponse: function(url, response) {
if(response && response === '') {
module.debug('Response empty, not caching', response);
return;
}
if(window.Storage === undefined) {
module.error(error.noStorage);
return;
}
if( $.isPlainObject(response) ) {
response = JSON.stringify(response);
}
sessionStorage.setItem(url, response);
module.verbose('Storing cached response for url', url, response);
}
},
query: function() { query: function() {
if(module.is.disabled()) { if(module.is.disabled()) {
module.debug('Element is disabled API request aborted'); module.debug('Element is disabled API request aborted');
return; return;
} }
// determine if an api event already occurred
if(module.is.loading() && settings.throttle === 0 ) { if(module.is.loading()) {
module.debug('Cancelling request, previous request is still pending'); if(settings.interruptRequests) {
return; module.debug('Interrupting previous request');
module.abort();
}
else {
module.debug('Cancelling request, previous request is still pending');
return;
}
} }
// pass element metadata to url (value, text) // pass element metadata to url (value, text)
@ -127,17 +186,12 @@ $.api = $.fn.api = function(parameters) {
} }
// Add form content // Add form content
if(settings.serializeForm !== false || $context.is('form')) { if(settings.serializeForm) {
if(settings.serializeForm == 'json') { settings.data = module.add.formData(settings.data);
$.extend(true, settings.data, module.get.formData());
}
else {
settings.data = module.get.formData();
}
} }
// call beforesend and get any settings changes // call beforesend and get any settings changes
requestSettings = module.get.settings(); requestSettings = module.get.settings();
// check if before send cancelled request // check if before send cancelled request
if(requestSettings === false) { if(requestSettings === false) {
@ -149,31 +203,22 @@ $.api = $.fn.api = function(parameters) {
module.cancelled = false; module.cancelled = false;
} }
if(settings.url) { // get url
// override with url if specified url = module.get.templatedURL();
module.debug('Using specified url', url);
url = module.add.urlData( settings.url ); if(!url && !module.is.mocked()) {
} module.error(error.missingURL);
else { return;
// otherwise find url from api endpoints
url = module.add.urlData( module.get.templateURL() );
module.debug('Added URL Data to url', url);
} }
// exit conditions reached, missing url parameters // replace variables
if( !url ) { url = module.add.urlData( url );
if( module.is.form() ) { // missing url parameters
url = $module.attr('action') || ''; if( !url && !module.is.mocked()) {
module.debug('No url or action specified, defaulting to form action', url); return;
}
else {
module.error(error.missingURL, settings.action);
return;
}
} }
// add loading state requestSettings.url = settings.base + url;
module.set.loading();
// look for jQuery ajax parameters in settings // look for jQuery ajax parameters in settings
ajaxSettings = $.extend(true, {}, settings, { ajaxSettings = $.extend(true, {}, settings, {
@ -187,39 +232,86 @@ $.api = $.fn.api = function(parameters) {
}); });
module.debug('Querying URL', ajaxSettings.url); module.debug('Querying URL', ajaxSettings.url);
module.debug('Sending data', data, ajaxSettings.method);
module.verbose('Using AJAX settings', ajaxSettings); module.verbose('Using AJAX settings', ajaxSettings);
if( module.is.loading() ) { if(settings.cache === 'local' && module.read.cachedResponse(url)) {
// throttle additional requests module.debug('Response returned from local cache');
module.timer = setTimeout(function() { module.request = module.create.request();
module.request = module.create.request(); module.request.resolveWith(context, [ module.read.cachedResponse(url) ]);
module.xhr = module.create.xhr(); return;
settings.onRequest.call(context, module.request, module.xhr); }
}, settings.throttle);
if( !settings.throttle ) {
module.debug('Sending request', data, ajaxSettings.method);
module.send.request();
} }
else { else {
// immediately on first request if(!settings.throttleFirstRequest && !module.timer) {
module.request = module.create.request(); module.debug('Sending request', data, ajaxSettings.method);
module.xhr = module.create.xhr(); module.send.request();
settings.onRequest.call(context, module.request, module.xhr); module.timer = setTimeout(function(){}, settings.throttle);
}
else {
module.debug('Throttling request', settings.throttle);
clearTimeout(module.timer);
module.timer = setTimeout(function() {
if(module.timer) {
delete module.timer;
}
module.debug('Sending throttled request', data, ajaxSettings.method);
module.send.request();
}, settings.throttle);
}
} }
}, },
should: {
removeError: function() {
return ( settings.hideError === true || (settings.hideError === 'auto' && !module.is.form()) );
}
},
is: { is: {
disabled: function() { disabled: function() {
return ($module.filter(settings.filter).length > 0); return ($module.filter(selector.disabled).length > 0);
}, },
form: function() { form: function() {
return $module.is('form'); return $module.is('form') || $context.is('form');
},
mocked: function() {
return (settings.mockResponse || settings.mockResponseAsync || settings.response || settings.responseAsync);
}, },
input: function() { input: function() {
return $module.is('input'); return $module.is('input');
}, },
loading: function() { loading: function() {
return (module.request && module.request.state() == 'pending'); return (module.request && module.request.state() == 'pending');
},
abortedRequest: function(xhr) {
if(xhr && xhr.readyState !== undefined && xhr.readyState === 0) {
module.verbose('XHR request determined to be aborted');
return true;
}
else {
module.verbose('XHR request was not aborted');
return false;
}
},
validResponse: function(response) {
if( (settings.dataType !== 'json' && settings.dataType !== 'jsonp') || !$.isFunction(settings.successTest) ) {
module.verbose('Response is not JSON, skipping validation', settings.successTest, response);
return true;
}
module.debug('Checking JSON returned success', settings.successTest, response);
if( settings.successTest(response) ) {
module.debug('Response passed success test', response);
return true;
}
else {
module.debug('Response failed success test', response);
return false;
}
} }
}, },
@ -272,6 +364,10 @@ $.api = $.fn.api = function(parameters) {
} }
else { else {
module.verbose('Found required variable', variable, value); module.verbose('Found required variable', variable, value);
value = (settings.encodeParameters)
? module.get.urlEncodedValue(value)
: value
;
url = url.replace(templatedString, value); url = url.replace(templatedString, value);
} }
}); });
@ -311,6 +407,48 @@ $.api = $.fn.api = function(parameters) {
} }
} }
return url; return url;
},
formData: function(data) {
var
canSerialize = ($.fn.serializeObject !== undefined),
formData = (canSerialize)
? $form.serializeObject()
: $form.serialize(),
hasOtherData
;
data = data || settings.data;
hasOtherData = $.isPlainObject(data);
if(hasOtherData) {
if(canSerialize) {
module.debug('Extending existing data with form data', data, formData);
data = $.extend(true, {}, data, formData);
}
else {
module.error(error.missingSerialize);
module.debug('Cant extend data. Replacing data with form data', data, formData);
data = formData;
}
}
else {
module.debug('Adding form data', formData);
data = formData;
}
return data;
}
},
send: {
request: function() {
module.set.loading();
module.request = module.create.request();
if( module.is.mocked() ) {
module.mockedXHR = module.create.mockedXHR();
}
else {
module.xhr = module.create.xhr();
}
settings.onRequest.call(context, module.request, module.xhr);
} }
}, },
@ -323,130 +461,194 @@ $.api = $.fn.api = function(parameters) {
}, },
xhr: { xhr: {
always: function() { always: function() {
// calculate if loading time was below minimum threshold // nothing special
}, },
done: function(response) { done: function(response, textStatus, xhr) {
var var
context = this, context = this,
elapsedTime = (new Date().getTime() - time), elapsedTime = (new Date().getTime() - requestStartTime),
timeLeft = (settings.loadingDuration - elapsedTime) timeLeft = (settings.loadingDuration - elapsedTime),
translatedResponse = ( $.isFunction(settings.onResponse) )
? settings.onResponse.call(context, $.extend(true, {}, response))
: false
; ;
timeLeft = (timeLeft > 0) timeLeft = (timeLeft > 0)
? timeLeft ? timeLeft
: 0 : 0
; ;
if(translatedResponse) {
module.debug('Modified API response in onResponse callback', settings.onResponse, translatedResponse, response);
response = translatedResponse;
}
if(timeLeft > 0) {
module.debug('Response completed early delaying state change by', timeLeft);
}
setTimeout(function() { setTimeout(function() {
module.request.resolveWith(context, [response]); if( module.is.validResponse(response) ) {
module.request.resolveWith(context, [response, xhr]);
}
else {
module.request.rejectWith(context, [xhr, 'invalid']);
}
}, timeLeft); }, timeLeft);
}, },
fail: function(xhr, status, httpMessage) { fail: function(xhr, status, httpMessage) {
var var
context = this, context = this,
elapsedTime = (new Date().getTime() - time), elapsedTime = (new Date().getTime() - requestStartTime),
timeLeft = (settings.loadingDuration - elapsedTime) timeLeft = (settings.loadingDuration - elapsedTime)
; ;
timeLeft = (timeLeft > 0) timeLeft = (timeLeft > 0)
? timeLeft ? timeLeft
: 0 : 0
; ;
// page triggers abort on navigation, dont show error if(timeLeft > 0) {
module.debug('Response completed early delaying state change by', timeLeft);
}
setTimeout(function() { setTimeout(function() {
if(status !== 'abort') { if( module.is.abortedRequest(xhr) ) {
module.request.rejectWith(context, [xhr, status, httpMessage]); module.request.rejectWith(context, [xhr, 'aborted', httpMessage]);
} }
else { else {
module.reset(); module.request.rejectWith(context, [xhr, 'error', status, httpMessage]);
} }
}, timeLeft); }, timeLeft);
} }
}, },
request: { request: {
complete: function(response) { done: function(response, xhr) {
module.remove.loading(); module.debug('Successful API Response', response);
settings.onComplete.call(context, response, $module); if(settings.cache === 'local' && url) {
}, module.write.cachedResponse(url, response);
done: function(response) { module.debug('Saving server response locally', module.cache);
module.debug('API Response Received', response);
if(settings.dataType == 'json') {
if( $.isFunction(settings.successTest) ) {
module.debug('Checking JSON returned success', settings.successTest, response);
if( settings.successTest(response) ) {
settings.onSuccess.call(context, response, $module);
}
else {
module.debug('JSON test specified by user and response failed', response);
settings.onFailure.call(context, response, $module);
}
}
else {
settings.onSuccess.call(context, response, $module);
}
}
else {
settings.onSuccess.call(context, response, $module);
} }
settings.onSuccess.call(context, response, $module, xhr);
}, },
error: function(xhr, status, httpMessage) { complete: function(firstParameter, secondParameter) {
var var
errorMessage = (settings.error[status] !== undefined) xhr,
? settings.error[status]
: httpMessage,
response response
; ;
// let em know unless request aborted // have to guess callback parameters based on request success
if(xhr !== undefined) { if( module.was.succesful() ) {
// readyState 4 = done, anything less is not really sent response = firstParameter;
if(xhr.readyState !== undefined && xhr.readyState == 4) { xhr = secondParameter;
}
// if http status code returned and json returned error, look for it else {
xhr = firstParameter;
response = module.get.responseFromXHR(xhr);
}
module.remove.loading();
settings.onComplete.call(context, response, $module, xhr);
},
fail: function(xhr, status, httpMessage) {
var
// pull response from xhr if available
response = module.get.responseFromXHR(xhr),
errorMessage = module.get.errorFromRequest(response, status, httpMessage)
;
if(status == 'aborted') {
module.debug('XHR Aborted (Most likely caused by page navigation or CORS Policy)', status, httpMessage);
settings.onAbort.call(context, status, $module, xhr);
}
else if(status == 'invalid') {
module.debug('JSON did not pass success test. A server-side error has most likely occurred', response);
}
else if(status == 'error') {
if(xhr !== undefined) {
module.debug('XHR produced a server error', status, httpMessage);
// make sure we have an error to display to console
if( xhr.status != 200 && httpMessage !== undefined && httpMessage !== '') { if( xhr.status != 200 && httpMessage !== undefined && httpMessage !== '') {
module.error(error.statusMessage + httpMessage, ajaxSettings.url); module.error(error.statusMessage + httpMessage, ajaxSettings.url);
} }
else { settings.onError.call(context, errorMessage, $module, xhr);
if(status == 'error' && settings.dataType == 'json') {
try {
response = $.parseJSON(xhr.responseText);
if(response && response.error !== undefined) {
errorMessage = response.error;
}
}
catch(e) {
module.error(error.JSONParse);
}
}
}
module.remove.loading();
module.set.error();
// show error state only for duration specified in settings
if(settings.errorDuration) {
setTimeout(module.remove.error, settings.errorDuration);
}
module.debug('API Request error:', errorMessage);
settings.onError.call(context, errorMessage, $module);
}
else {
settings.onAbort.call(context, errorMessage, $module);
module.debug('Request Aborted (Most likely caused by page change or CORS Policy)', status, httpMessage);
} }
} }
if(settings.errorDuration && status !== 'aborted') {
module.debug('Adding error state');
module.set.error();
if( module.should.removeError() ) {
setTimeout(module.remove.error, settings.errorDuration);
}
}
module.debug('API Request failed', errorMessage, xhr);
settings.onFailure.call(context, response, $module, xhr);
} }
} }
}, },
create: { create: {
request: function() { request: function() {
// api request promise
return $.Deferred() return $.Deferred()
.always(module.event.request.complete) .always(module.event.request.complete)
.done(module.event.request.done) .done(module.event.request.done)
.fail(module.event.request.error) .fail(module.event.request.fail)
; ;
}, },
mockedXHR: function () {
var
// xhr does not simulate these properties of xhr but must return them
textStatus = false,
status = false,
httpMessage = false,
responder = settings.mockResponse || settings.response,
asyncResponder = settings.mockResponseAsync || settings.responseAsync,
asyncCallback,
response,
mockedXHR
;
mockedXHR = $.Deferred()
.always(module.event.xhr.complete)
.done(module.event.xhr.done)
.fail(module.event.xhr.fail)
;
if(responder) {
if( $.isFunction(responder) ) {
module.debug('Using specified synchronous callback', responder);
response = responder.call(context, requestSettings);
}
else {
module.debug('Using settings specified response', responder);
response = responder;
}
// simulating response
mockedXHR.resolveWith(context, [ response, textStatus, { responseText: response }]);
}
else if( $.isFunction(asyncResponder) ) {
asyncCallback = function(response) {
module.debug('Async callback returned response', response);
if(response) {
mockedXHR.resolveWith(context, [ response, textStatus, { responseText: response }]);
}
else {
mockedXHR.rejectWith(context, [{ responseText: response }, status, httpMessage]);
}
};
module.debug('Using specified async response callback', asyncResponder);
asyncResponder.call(context, requestSettings, asyncCallback);
}
return mockedXHR;
},
xhr: function() { xhr: function() {
return $.ajax(ajaxSettings) var
xhr
;
// ajax request promise
xhr = $.ajax(ajaxSettings)
.always(module.event.xhr.always) .always(module.event.xhr.always)
.done(module.event.xhr.done) .done(module.event.xhr.done)
.fail(module.event.xhr.fail) .fail(module.event.xhr.fail)
; ;
module.verbose('Created server request', xhr);
return xhr;
} }
}, },
@ -458,6 +660,7 @@ $.api = $.fn.api = function(parameters) {
loading: function() { loading: function() {
module.verbose('Adding loading state to element', $context); module.verbose('Adding loading state to element', $context);
$context.addClass(className.loading); $context.addClass(className.loading);
requestStartTime = new Date().getTime();
} }
}, },
@ -473,6 +676,22 @@ $.api = $.fn.api = function(parameters) {
}, },
get: { get: {
responseFromXHR: function(xhr) {
return $.isPlainObject(xhr)
? (settings.dataType == 'json' || settings.dataType == 'jsonp')
? module.decode.json(xhr.responseText)
: xhr.responseText
: false
;
},
errorFromRequest: function(response, status, httpMessage) {
return ($.isPlainObject(response) && response.error !== undefined)
? response.error // use json error message
: (settings.error[status] !== undefined) // use server error message
? settings.error[status]
: httpMessage
;
},
request: function() { request: function() {
return module.request || false; return module.request || false;
}, },
@ -483,7 +702,7 @@ $.api = $.fn.api = function(parameters) {
var var
runSettings runSettings
; ;
runSettings = settings.beforeSend.call($module, settings); runSettings = settings.beforeSend.call(context, settings);
if(runSettings) { if(runSettings) {
if(runSettings.success !== undefined) { if(runSettings.success !== undefined) {
module.debug('Legacy success callback detected', runSettings); module.debug('Legacy success callback detected', runSettings);
@ -505,10 +724,23 @@ $.api = $.fn.api = function(parameters) {
module.error(error.noReturnedValue); module.error(error.noReturnedValue);
} }
return (runSettings !== undefined) return (runSettings !== undefined)
? runSettings ? $.extend(true, {}, runSettings)
: settings : $.extend(true, {}, settings)
; ;
}, },
urlEncodedValue: function(value) {
var
decodedValue = window.decodeURIComponent(value),
encodedValue = window.encodeURIComponent(value),
alreadyEncoded = (decodedValue !== value)
;
if(alreadyEncoded) {
module.debug('URL value is already encoded, avoiding double encoding', value);
return value;
}
module.verbose('Encoding value using encodeURIComponent', value, encodedValue);
return encodedValue;
},
defaultData: function() { defaultData: function() {
var var
data = {} data = {}
@ -551,34 +783,24 @@ $.api = $.fn.api = function(parameters) {
return settings.on; return settings.on;
} }
}, },
formData: function() { templatedURL: function(action) {
var
formData
;
if($module.serializeObject !== undefined) {
formData = $form.serializeObject();
}
else {
module.error(error.missingSerialize);
formData = $form.serialize();
}
module.debug('Retrieved form data', formData);
return formData;
},
templateURL: function(action) {
var
url
;
action = action || $module.data(metadata.action) || settings.action || false; action = action || $module.data(metadata.action) || settings.action || false;
url = $module.data(metadata.url) || settings.url || false;
if(url) {
module.debug('Using specified url', url);
return url;
}
if(action) { if(action) {
module.debug('Looking up url for action', action, settings.api); module.debug('Looking up url for action', action, settings.api);
if(settings.api[action] !== undefined) { if(settings.api[action] === undefined && !module.is.mocked()) {
url = settings.api[action];
module.debug('Found template url', url);
}
else if( !module.is.form() ) {
module.error(error.missingAction, settings.action, settings.api); module.error(error.missingAction, settings.action, settings.api);
return;
} }
url = settings.api[action];
}
else if( module.is.form() ) {
url = $module.attr('action') || $context.attr('action') || false;
module.debug('No url or action specified, defaulting to form action', url);
} }
return url; return url;
} }
@ -591,7 +813,6 @@ $.api = $.fn.api = function(parameters) {
if( xhr && xhr.state() !== 'resolved') { if( xhr && xhr.state() !== 'resolved') {
module.debug('Cancelling API request'); module.debug('Cancelling API request');
xhr.abort(); xhr.abort();
module.request.rejectWith(settings.apiSettings);
} }
}, },
@ -670,7 +891,7 @@ $.api = $.fn.api = function(parameters) {
}); });
} }
clearTimeout(module.performance.timer); clearTimeout(module.performance.timer);
module.performance.timer = setTimeout(module.performance.display, 100); module.performance.timer = setTimeout(module.performance.display, 500);
}, },
display: function() { display: function() {
var var
@ -780,49 +1001,98 @@ $.api = $.fn.api = function(parameters) {
$.api.settings = { $.api.settings = {
name : 'API', name : 'API',
namespace : 'api', namespace : 'api',
debug : true, debug : false,
verbose : false, verbose : false,
performance : true, performance : true,
// object containing all templates endpoints
api : {},
// whether to cache responses
cache : true,
// whether new requests should abort previous requests
interruptRequests : true,
// event binding // event binding
on : 'auto', on : 'auto',
filter : '.disabled',
stateContext : false,
// state // context for applying state classes
loadingDuration : 0, stateContext : false,
errorDuration : 2000,
// templating // duration for loading state
action : false, loadingDuration : 0,
url : false,
base : '',
// data // whether to hide errors after a period of time
urlData : {}, hideError : 'auto',
// ui // duration for error state
defaultData : true, errorDuration : 2000,
serializeForm : false,
throttle : 0,
// jQ ajax // whether parameters should be encoded with encodeURIComponent
method : 'get', encodeParameters : true,
data : {},
dataType : 'json',
// callbacks // API action to use
action : false,
// templated URL to use
url : false,
// base URL to apply to all endpoints
base : '',
// data that will
urlData : {},
// whether to add default data to url data
defaultData : true,
// whether to serialize closest form
serializeForm : false,
// how long to wait before request should occur
throttle : 0,
// whether to throttle first request or only repeated
throttleFirstRequest : true,
// standard ajax settings
method : 'get',
data : {},
dataType : 'json',
// mock response
mockResponse : false,
mockResponseAsync : false,
// aliases for mock
response : false,
responseAsync : false,
// callbacks before request
beforeSend : function(settings) { return settings; }, beforeSend : function(settings) { return settings; },
beforeXHR : function(xhr) {}, beforeXHR : function(xhr) {},
onRequest : function(promise, xhr) {}, onRequest : function(promise, xhr) {},
// after request
onResponse : false, // function(response) { },
// response was successful, if JSON passed validation
onSuccess : function(response, $module) {}, onSuccess : function(response, $module) {},
// request finished without aborting
onComplete : function(response, $module) {}, onComplete : function(response, $module) {},
onFailure : function(errorMessage, $module) {},
// failed JSON success test
onFailure : function(response, $module) {},
// server error
onError : function(errorMessage, $module) {}, onError : function(errorMessage, $module) {},
// request aborted
onAbort : function(errorMessage, $module) {}, onAbort : function(errorMessage, $module) {},
successTest : false, successTest : false,
@ -836,9 +1106,10 @@ $.api.settings = {
legacyParameters : 'You are using legacy API success callback names', legacyParameters : 'You are using legacy API success callback names',
method : 'The method you called is not defined', method : 'The method you called is not defined',
missingAction : 'API action used but no url was defined', missingAction : 'API action used but no url was defined',
missingSerialize : 'Required dependency jquery-serialize-object missing, using basic serialize', missingSerialize : 'jquery-serialize-object is required to add form data to an existing data object',
missingURL : 'No URL specified for api event', missingURL : 'No URL specified for api event',
noReturnedValue : 'The beforeSend callback must return a settings object, beforeSend ignored.', noReturnedValue : 'The beforeSend callback must return a settings object, beforeSend ignored.',
noStorage : 'Caching responses locally requires session storage',
parseError : 'There was an error parsing your request', parseError : 'There was an error parsing your request',
requiredParameter : 'Missing a required URL parameter: ', requiredParameter : 'Missing a required URL parameter: ',
statusMessage : 'Server gave an error: ', statusMessage : 'Server gave an error: ',
@ -846,8 +1117,8 @@ $.api.settings = {
}, },
regExp : { regExp : {
required: /\{\$*[A-z0-9]+\}/g, required : /\{\$*[A-z0-9]+\}/g,
optional: /\{\/\$*[A-z0-9]+\}/g, optional : /\{\/\$*[A-z0-9]+\}/g,
}, },
className: { className: {
@ -856,16 +1127,16 @@ $.api.settings = {
}, },
selector: { selector: {
form: 'form' disabled : '.disabled',
form : 'form'
}, },
metadata: { metadata: {
action : 'action' action : 'action',
url : 'url'
} }
}; };
$.api.settings.api = {};
})( jQuery, window, document );
})( jQuery, window , document );

File diff suppressed because one or more lines are too long

35
web/semantic/dist/components/breadcrumb.css vendored Normal file → Executable file
View file

@ -1,9 +1,9 @@
/*! /*!
* # Semantic UI 1.11.4 - Breadcrumb * # Semantic UI 2.1.7 - Breadcrumb
* http://github.com/semantic-org/semantic-ui/ * http://github.com/semantic-org/semantic-ui/
* *
* *
* Copyright 2014 Contributors * Copyright 2015 Contributors
* Released under the MIT license * Released under the MIT license
* http://opensource.org/licenses/MIT * http://opensource.org/licenses/MIT
* *
@ -15,8 +15,9 @@
*******************************/ *******************************/
.ui.breadcrumb { .ui.breadcrumb {
margin: 1em 0em; line-height: 1;
display: inline-block; display: inline-block;
margin: 0em 0em;
vertical-align: middle; vertical-align: middle;
} }
.ui.breadcrumb:first-child { .ui.breadcrumb:first-child {
@ -35,19 +36,19 @@
/* Divider */ /* Divider */
.ui.breadcrumb .divider { .ui.breadcrumb .divider {
display: inline-block; display: inline-block;
opacity: 0.5; opacity: 0.7;
margin: 0em 0.2rem 0em; margin: 0em 0.21428571rem 0em;
font-size: 0.9em; font-size: 0.92857143em;
color: rgba(0, 0, 0, 0.4); color: rgba(0, 0, 0, 0.4);
vertical-align: baseline; vertical-align: baseline;
} }
/* Link */ /* Link */
.ui.breadcrumb a { .ui.breadcrumb a {
color: #009fda; color: #4183c4;
} }
.ui.breadcrumb a:hover { .ui.breadcrumb a:hover {
color: #00b2f3; color: #1e70bf;
} }
/* Icon Divider */ /* Icon Divider */
@ -69,7 +70,7 @@
/* Loose Coupling */ /* Loose Coupling */
.ui.breadcrumb.segment { .ui.breadcrumb.segment {
display: inline-block; display: inline-block;
padding: 0.5em 1em; padding: 0.71428571em 1em;
} }
@ -87,28 +88,28 @@
*******************************/ *******************************/
.ui.mini.breadcrumb { .ui.mini.breadcrumb {
font-size: 0.65em; font-size: 0.71428571rem;
} }
.ui.tiny.breadcrumb { .ui.tiny.breadcrumb {
font-size: 0.7em; font-size: 0.85714286rem;
} }
.ui.small.breadcrumb { .ui.small.breadcrumb {
font-size: 0.75em; font-size: 0.92857143rem;
} }
.ui.breadcrumb { .ui.breadcrumb {
font-size: 1em; font-size: 1rem;
} }
.ui.large.breadcrumb { .ui.large.breadcrumb {
font-size: 1.1em; font-size: 1.14285714rem;
} }
.ui.big.breadcrumb { .ui.big.breadcrumb {
font-size: 1.05em; font-size: 1.28571429rem;
} }
.ui.huge.breadcrumb { .ui.huge.breadcrumb {
font-size: 1.3em; font-size: 1.42857143rem;
} }
.ui.massive.breadcrumb { .ui.massive.breadcrumb {
font-size: 1.5em; font-size: 1.71428571rem;
} }

6
web/semantic/dist/components/breadcrumb.min.css vendored Normal file → Executable file
View file

@ -1,10 +1,10 @@
/*! /*!
* # Semantic UI 1.11.4 - Breadcrumb * # Semantic UI 2.1.7 - Breadcrumb
* http://github.com/semantic-org/semantic-ui/ * http://github.com/semantic-org/semantic-ui/
* *
* *
* Copyright 2014 Contributors * Copyright 2015 Contributors
* Released under the MIT license * Released under the MIT license
* http://opensource.org/licenses/MIT * http://opensource.org/licenses/MIT
* *
*/.ui.breadcrumb{margin:1em 0;display:inline-block;vertical-align:middle}.ui.breadcrumb:first-child{margin-top:0}.ui.breadcrumb:last-child{margin-bottom:0}.ui.breadcrumb .divider{display:inline-block;opacity:.5;margin:0 .2rem;font-size:.9em;color:rgba(0,0,0,.4);vertical-align:baseline}.ui.breadcrumb a{color:#009fda}.ui.breadcrumb a:hover{color:#00b2f3}.ui.breadcrumb .icon.divider{font-size:.85714286em;vertical-align:baseline}.ui.breadcrumb a.section{cursor:pointer}.ui.breadcrumb .section{display:inline-block;margin:0;padding:0}.ui.breadcrumb.segment{display:inline-block;padding:.5em 1em}.ui.breadcrumb .active.section{font-weight:700}.ui.mini.breadcrumb{font-size:.65em}.ui.tiny.breadcrumb{font-size:.7em}.ui.small.breadcrumb{font-size:.75em}.ui.breadcrumb{font-size:1em}.ui.large.breadcrumb{font-size:1.1em}.ui.big.breadcrumb{font-size:1.05em}.ui.huge.breadcrumb{font-size:1.3em}.ui.massive.breadcrumb{font-size:1.5em} */.ui.breadcrumb{line-height:1;display:inline-block;margin:0;vertical-align:middle}.ui.breadcrumb:first-child{margin-top:0}.ui.breadcrumb:last-child{margin-bottom:0}.ui.breadcrumb .divider{display:inline-block;opacity:.7;margin:0 .21428571rem;font-size:.92857143em;color:rgba(0,0,0,.4);vertical-align:baseline}.ui.breadcrumb a{color:#4183c4}.ui.breadcrumb a:hover{color:#1e70bf}.ui.breadcrumb .icon.divider{font-size:.85714286em;vertical-align:baseline}.ui.breadcrumb a.section{cursor:pointer}.ui.breadcrumb .section{display:inline-block;margin:0;padding:0}.ui.breadcrumb.segment{display:inline-block;padding:.71428571em 1em}.ui.breadcrumb .active.section{font-weight:700}.ui.mini.breadcrumb{font-size:.71428571rem}.ui.tiny.breadcrumb{font-size:.85714286rem}.ui.small.breadcrumb{font-size:.92857143rem}.ui.breadcrumb{font-size:1rem}.ui.large.breadcrumb{font-size:1.14285714rem}.ui.big.breadcrumb{font-size:1.28571429rem}.ui.huge.breadcrumb{font-size:1.42857143rem}.ui.massive.breadcrumb{font-size:1.71428571rem}

2015
web/semantic/dist/components/button.css vendored Normal file → Executable file

File diff suppressed because it is too large Load diff

6
web/semantic/dist/components/button.min.css vendored Normal file → Executable file

File diff suppressed because one or more lines are too long

406
web/semantic/dist/components/card.css vendored Normal file → Executable file
View file

@ -1,9 +1,9 @@
/*! /*!
* # Semantic UI 1.11.4 - Item * # Semantic UI 2.1.7 - Item
* http://github.com/semantic-org/semantic-ui/ * http://github.com/semantic-org/semantic-ui/
* *
* *
* Copyright 2014 Contributorss * Copyright 2015 Contributors
* Released under the MIT license * Released under the MIT license
* http://opensource.org/licenses/MIT * http://opensource.org/licenses/MIT
* *
@ -37,10 +37,10 @@
background: #ffffff; background: #ffffff;
padding: 0em; padding: 0em;
border: none; border: none;
border-radius: 0.2857rem; border-radius: 0.28571429rem;
box-shadow: 0px 3px 0px 0px #d4d4d5, 0px 0px 0px 1px #d4d4d5; box-shadow: 0px 1px 3px 0px #d4d4d5, 0px 0px 0px 1px #d4d4d5;
-webkit-transition: box-shadow 0.2s ease; -webkit-transition: box-shadow 0.1s ease, -webkit-transform 0.1s ease;
transition: box-shadow 0.2s ease; transition: box-shadow 0.1s ease, transform 0.1s ease;
z-index: ''; z-index: '';
} }
.ui.card { .ui.card {
@ -102,11 +102,16 @@
.ui.cards > .card > :first-child, .ui.cards > .card > :first-child,
.ui.card > :first-child { .ui.card > :first-child {
border-radius: 0.2857rem 0.2857rem 0em 0em !important; border-radius: 0.28571429rem 0.28571429rem 0em 0em !important;
border-top: none !important;
} }
.ui.cards > .card > :last-child, .ui.cards > .card > :last-child,
.ui.card > :last-child { .ui.card > :last-child {
border-radius: 0em 0em 0.2857rem 0.2857rem !important; border-radius: 0em 0em 0.28571429rem 0.28571429rem !important;
}
.ui.cards > .card > :only-child,
.ui.card > :only-child {
border-radius: 0.28571429rem !important;
} }
/*-------------- /*--------------
@ -115,8 +120,12 @@
.ui.cards > .card > .image, .ui.cards > .card > .image,
.ui.card > .image { .ui.card > .image {
display: block;
position: relative; position: relative;
display: block;
-webkit-box-flex: 0;
-webkit-flex: 0 0 auto;
-ms-flex: 0 0 auto;
flex: 0 0 auto;
padding: 0em; padding: 0em;
background: rgba(0, 0, 0, 0.05); background: rgba(0, 0, 0, 0.05);
} }
@ -125,12 +134,11 @@
display: block; display: block;
width: 100%; width: 100%;
height: auto; height: auto;
border-radius: 0.2857rem 0.2857rem 0em 0em; border-radius: inherit;
border: none;
} }
.ui.cards > .card > .image:only-child > img, .ui.cards > .card > .image:not(.ui) > img,
.ui.card > .image:only-child > img { .ui.card > .image:not(.ui) > img {
border-radius: 0.2857rem; border: none;
} }
/*-------------- /*--------------
@ -143,12 +151,13 @@
-webkit-flex-grow: 1; -webkit-flex-grow: 1;
-ms-flex-positive: 1; -ms-flex-positive: 1;
flex-grow: 1; flex-grow: 1;
border: none;
border-top: 1px solid rgba(34, 36, 38, 0.1);
background: none; background: none;
margin: 0em; margin: 0em;
padding: 1em 1em; padding: 1em 1em;
box-shadow: none; box-shadow: none;
font-size: 1em; font-size: 1em;
border: none;
border-radius: 0em; border-radius: 0em;
} }
.ui.cards > .card > .content:after, .ui.cards > .card > .content:after,
@ -163,7 +172,7 @@
.ui.cards > .card > .content > .header, .ui.cards > .card > .content > .header,
.ui.card > .content > .header { .ui.card > .content > .header {
display: block; display: block;
margin: 0em; margin: '';
font-family: 'Lato', 'Helvetica Neue', Arial, Helvetica, sans-serif; font-family: 'Lato', 'Helvetica Neue', Arial, Helvetica, sans-serif;
color: rgba(0, 0, 0, 0.85); color: rgba(0, 0, 0, 0.85);
} }
@ -172,9 +181,9 @@
.ui.cards > .card > .content > .header:not(.ui), .ui.cards > .card > .content > .header:not(.ui),
.ui.card > .content > .header:not(.ui) { .ui.card > .content > .header:not(.ui) {
font-weight: bold; font-weight: bold;
font-size: 1.2em; font-size: 1.28571429em;
margin-top: -0.165em; margin-top: -0.21425em;
line-height: 1.33em; line-height: 1.2857em;
} }
.ui.cards > .card > .content > .meta + .description, .ui.cards > .card > .content > .meta + .description,
.ui.cards > .card > .content > .header + .description, .ui.cards > .card > .content > .header + .description,
@ -183,9 +192,9 @@
margin-top: 0.5em; margin-top: 0.5em;
} }
/*-------------- /*----------------
Floated Floated Content
---------------*/ -----------------*/
.ui.cards > .card [class*="left floated"], .ui.cards > .card [class*="left floated"],
.ui.card [class*="left floated"] { .ui.card [class*="left floated"] {
@ -221,14 +230,14 @@
.ui.card .content img { .ui.card .content img {
display: inline-block; display: inline-block;
vertical-align: middle; vertical-align: middle;
width: auto; width: '';
} }
.ui.cards > .card img.avatar, .ui.cards > .card img.avatar,
.ui.cards > .card .avatar img, .ui.cards > .card .avatar img,
.ui.card img.avatar, .ui.card img.avatar,
.ui.card .avatar img { .ui.card .avatar img {
width: 2.5em; width: 2em;
height: 2.5em; height: 2em;
border-radius: 500rem; border-radius: 500rem;
} }
@ -239,7 +248,7 @@
.ui.cards > .card > .content > .description, .ui.cards > .card > .content > .description,
.ui.card > .content > .description { .ui.card > .content > .description {
clear: both; clear: both;
color: rgba(0, 0, 0, 0.5); color: rgba(0, 0, 0, 0.68);
} }
/*-------------- /*--------------
@ -261,7 +270,7 @@
.ui.cards > .card .meta, .ui.cards > .card .meta,
.ui.card .meta { .ui.card .meta {
font-size: 0.9em; font-size: 1em;
color: rgba(0, 0, 0, 0.4); color: rgba(0, 0, 0, 0.4);
} }
.ui.cards > .card .meta *, .ui.cards > .card .meta *,
@ -287,8 +296,8 @@
.ui.cards > .card > .content a:not(.ui), .ui.cards > .card > .content a:not(.ui),
.ui.card > .content a:not(.ui) { .ui.card > .content a:not(.ui) {
color: ''; color: '';
-webkit-transition: color 0.2s ease; -webkit-transition: color 0.1s ease;
transition: color 0.2s ease; transition: color 0.1s ease;
} }
.ui.cards > .card > .content a:not(.ui):hover, .ui.cards > .card > .content a:not(.ui):hover,
.ui.card > .content a:not(.ui):hover { .ui.card > .content a:not(.ui):hover {
@ -302,7 +311,7 @@
} }
.ui.cards > .card > .content > a.header:hover, .ui.cards > .card > .content > a.header:hover,
.ui.card > .content > a.header:hover { .ui.card > .content > a.header:hover {
color: #00b2f3; color: #1e70bf;
} }
/* Meta */ /* Meta */
@ -312,19 +321,19 @@
} }
.ui.cards > .card .meta > a:not(.ui):hover, .ui.cards > .card .meta > a:not(.ui):hover,
.ui.card .meta > a:not(.ui):hover { .ui.card .meta > a:not(.ui):hover {
color: rgba(0, 0, 0, 0.8); color: rgba(0, 0, 0, 0.87);
} }
/*-------------- /*--------------
Buttons Buttons
---------------*/ ---------------*/
.ui.cards > .card > .buttons:last-child, .ui.cards > .card > .buttons,
.ui.card > .buttons:last-child, .ui.card > .buttons,
.ui.cards > .card > .button:last-child, .ui.cards > .card > .button,
.ui.card > .button:last-child { .ui.card > .button {
margin: 0em 0em -1px; margin: 0px -1px;
width: 100%; width: calc(100% + 2px );
} }
/*-------------- /*--------------
@ -333,7 +342,7 @@
.ui.cards > .card .dimmer, .ui.cards > .card .dimmer,
.ui.card .dimmer { .ui.card .dimmer {
background: ''; background-color: '';
z-index: 10; z-index: 10;
} }
@ -350,8 +359,8 @@
.ui.card > .content .star.icon { .ui.card > .content .star.icon {
cursor: pointer; cursor: pointer;
opacity: 0.75; opacity: 0.75;
-webkit-transition: color 0.2s ease; -webkit-transition: color 0.1s ease;
transition: color 0.2s ease; transition: color 0.1s ease;
} }
.ui.cards > .card > .content .star.icon:hover, .ui.cards > .card > .content .star.icon:hover,
.ui.card > .content .star.icon:hover { .ui.card > .content .star.icon:hover {
@ -371,8 +380,8 @@
.ui.card > .content .like.icon { .ui.card > .content .like.icon {
cursor: pointer; cursor: pointer;
opacity: 0.75; opacity: 0.75;
-webkit-transition: color 0.2s ease; -webkit-transition: color 0.1s ease;
transition: color 0.2s ease; transition: color 0.1s ease;
} }
.ui.cards > .card > .content .like.icon:hover, .ui.cards > .card > .content .like.icon:hover,
.ui.card > .content .like.icon:hover { .ui.card > .content .like.icon:hover {
@ -396,6 +405,7 @@
-webkit-flex-grow: 0; -webkit-flex-grow: 0;
-ms-flex-positive: 0; -ms-flex-positive: 0;
flex-grow: 0; flex-grow: 0;
border-top: 1px solid rgba(0, 0, 0, 0.05) !important;
position: static; position: static;
background: none; background: none;
width: auto; width: auto;
@ -405,9 +415,8 @@
left: 0em; left: 0em;
color: rgba(0, 0, 0, 0.4); color: rgba(0, 0, 0, 0.4);
box-shadow: none; box-shadow: none;
-webkit-transition: color 0.2s ease; -webkit-transition: color 0.1s ease;
transition: color 0.2s ease; transition: color 0.1s ease;
border-top: 1px solid rgba(0, 0, 0, 0.05);
} }
.ui.cards > .card > .extra a:not(.ui), .ui.cards > .card > .extra a:not(.ui),
.ui.card > .extra a:not(.ui) { .ui.card > .extra a:not(.ui) {
@ -415,7 +424,7 @@
} }
.ui.cards > .card > .extra a:not(.ui):hover, .ui.cards > .card > .extra a:not(.ui):hover,
.ui.card > .extra a:not(.ui):hover { .ui.card > .extra a:not(.ui):hover {
color: #00b2f3; color: #1e70bf;
} }
@ -424,6 +433,21 @@
*******************************/ *******************************/
/*-------------------
Centered
--------------------*/
.ui.centered.cards {
-webkit-box-pack: center;
-webkit-justify-content: center;
-ms-flex-pack: center;
justify-content: center;
}
.ui.centered.card {
margin-left: auto;
margin-right: auto;
}
/*------------------- /*-------------------
Fluid Fluid
--------------------*/ --------------------*/
@ -437,112 +461,187 @@
Link Link
--------------------*/ --------------------*/
.ui.cards a.card,
.ui.link.cards .card,
a.ui.card,
.ui.link.card {
-webkit-transform: none;
-ms-transform: none;
transform: none;
}
.ui.cards a.card:hover, .ui.cards a.card:hover,
.ui.link.cards .card:hover, .ui.link.cards .card:hover,
a.ui.card:hover, a.ui.card:hover,
.ui.link.card:hover { .ui.link.card:hover {
cursor: pointer; cursor: pointer;
z-index: 5; z-index: 5;
background: ''; background: #ffffff;
border: none; border: none;
box-shadow: 0px 3px 0px 0px #bebebf, 0px 0px 0px 1px rgba(39, 41, 43, 0.3); box-shadow: 0px 1px 3px 0px #bcbdbd, 0px 0px 0px 1px #d4d4d5;
-webkit-transform: translateY(-3px);
-ms-transform: translateY(-3px);
transform: translateY(-3px);
} }
/*------------------- /*-------------------
Colors Colors
--------------------*/ --------------------*/
.ui.black.cards > .card,
.ui.cards > .black.card, /* Red */
.ui.black.card {
box-shadow: 0px 3px 0px 0px #1b1c1d, 0px 0px 0px 1px #d4d4d5;
}
.ui.blue.cards > .card,
.ui.cards > .blue.card,
.ui.blue.card {
box-shadow: 0px 3px 0px 0px #3b83c0, 0px 0px 0px 1px #d4d4d5;
}
.ui.green.cards > .card,
.ui.cards > .green.card,
.ui.green.card {
box-shadow: 0px 3px 0px 0px #5bbd72, 0px 0px 0px 1px #d4d4d5;
}
.ui.orange.cards > .card,
.ui.cards > .orange.card,
.ui.orange.card {
box-shadow: 0px 3px 0px 0px #e07b53, 0px 0px 0px 1px #d4d4d5;
}
.ui.pink.cards > .card,
.ui.cards > .pink.card,
.ui.pink.card {
box-shadow: 0px 3px 0px 0px #d9499a, 0px 0px 0px 1px #d4d4d5;
}
.ui.purple.cards > .card,
.ui.cards > .purple.card,
.ui.purple.card {
box-shadow: 0px 3px 0px 0px #564f8a, 0px 0px 0px 1px #d4d4d5;
}
.ui.red.cards > .card, .ui.red.cards > .card,
.ui.cards > .red.card, .ui.cards > .red.card,
.ui.red.card { .ui.red.card {
box-shadow: 0px 3px 0px 0px #d95c5c, 0px 0px 0px 1px #d4d4d5; box-shadow: 0px 0px 0px 1px #d4d4d5, 0px 2px 0px 0px #db2828, 0px 1px 3px 0px #d4d4d5;
}
.ui.teal.cards > .card,
.ui.cards > .teal.card,
.ui.teal.card {
box-shadow: 0px 3px 0px 0px #00b5ad, 0px 0px 0px 1px #d4d4d5;
}
.ui.yellow.cards > .card,
.ui.cards > .yellow.card,
.ui.yellow.card {
box-shadow: 0px 3px 0px 0px #f2c61f, 0px 0px 0px 1px #d4d4d5;
}
/* Hover */
.ui.black.cards > .card:hover,
.ui.cards > .black.card:hover,
.ui.black.card:hover {
box-shadow: 0px 3px 0px 0px #1b1c1d, 0px 0px 0px 1px #d4d4d5;
}
.ui.blue.cards > .card:hover,
.ui.cards > .blue.card:hover,
.ui.blue.card:hover {
box-shadow: 0px 3px 0px 0px #458ac6, 0px 0px 0px 1px #d4d4d5;
}
.ui.green.cards > .card:hover,
.ui.cards > .green.card:hover,
.ui.green.card:hover {
box-shadow: 0px 3px 0px 0px #66c17b, 0px 0px 0px 1px #d4d4d5;
}
.ui.orange.cards > .card:hover,
.ui.cards > .orange.card:hover,
.ui.orange.card:hover {
box-shadow: 0px 3px 0px 0px #e28560, 0px 0px 0px 1px #d4d4d5;
}
.ui.pink.cards > .card:hover,
.ui.cards > .pink.card:hover,
.ui.pink.card:hover {
box-shadow: 0px 3px 0px 0px #dc56a1, 0px 0px 0px 1px #d4d4d5;
}
.ui.purple.cards > .card:hover,
.ui.cards > .purple.card:hover,
.ui.purple.card:hover {
box-shadow: 0px 3px 0px 0px #5c5594, 0px 0px 0px 1px #d4d4d5;
} }
.ui.red.cards > .card:hover, .ui.red.cards > .card:hover,
.ui.cards > .red.card:hover, .ui.cards > .red.card:hover,
.ui.red.card:hover { .ui.red.card:hover {
box-shadow: 0px 3px 0px 0px #dc6868, 0px 0px 0px 1px #d4d4d5; box-shadow: 0px 0px 0px 1px #d4d4d5, 0px 2px 0px 0px #d01919, 0px 1px 3px 0px #bcbdbd;
} }
.ui.teal.cards > .card:hover,
.ui.cards > .teal.card:hover, /* Orange */
.ui.teal.card:hover { .ui.orange.cards > .card,
box-shadow: 0px 3px 0px 0px #00c4bc, 0px 0px 0px 1px #d4d4d5; .ui.cards > .orange.card,
.ui.orange.card {
box-shadow: 0px 0px 0px 1px #d4d4d5, 0px 2px 0px 0px #f2711c, 0px 1px 3px 0px #d4d4d5;
}
.ui.orange.cards > .card:hover,
.ui.cards > .orange.card:hover,
.ui.orange.card:hover {
box-shadow: 0px 0px 0px 1px #d4d4d5, 0px 2px 0px 0px #f26202, 0px 1px 3px 0px #bcbdbd;
}
/* Yellow */
.ui.yellow.cards > .card,
.ui.cards > .yellow.card,
.ui.yellow.card {
box-shadow: 0px 0px 0px 1px #d4d4d5, 0px 2px 0px 0px #fbbd08, 0px 1px 3px 0px #d4d4d5;
} }
.ui.yellow.cards > .card:hover, .ui.yellow.cards > .card:hover,
.ui.cards > .yellow.card:hover, .ui.cards > .yellow.card:hover,
.ui.yellow.card:hover { .ui.yellow.card:hover {
box-shadow: 0px 3px 0px 0px #f3ca2d, 0px 0px 0px 1px #d4d4d5; box-shadow: 0px 0px 0px 1px #d4d4d5, 0px 2px 0px 0px #eaae00, 0px 1px 3px 0px #bcbdbd;
}
/* Olive */
.ui.olive.cards > .card,
.ui.cards > .olive.card,
.ui.olive.card {
box-shadow: 0px 0px 0px 1px #d4d4d5, 0px 2px 0px 0px #b5cc18, 0px 1px 3px 0px #d4d4d5;
}
.ui.olive.cards > .card:hover,
.ui.cards > .olive.card:hover,
.ui.olive.card:hover {
box-shadow: 0px 0px 0px 1px #d4d4d5, 0px 2px 0px 0px #a7bd0d, 0px 1px 3px 0px #bcbdbd;
}
/* Green */
.ui.green.cards > .card,
.ui.cards > .green.card,
.ui.green.card {
box-shadow: 0px 0px 0px 1px #d4d4d5, 0px 2px 0px 0px #21ba45, 0px 1px 3px 0px #d4d4d5;
}
.ui.green.cards > .card:hover,
.ui.cards > .green.card:hover,
.ui.green.card:hover {
box-shadow: 0px 0px 0px 1px #d4d4d5, 0px 2px 0px 0px #16ab39, 0px 1px 3px 0px #bcbdbd;
}
/* Teal */
.ui.teal.cards > .card,
.ui.cards > .teal.card,
.ui.teal.card {
box-shadow: 0px 0px 0px 1px #d4d4d5, 0px 2px 0px 0px #00b5ad, 0px 1px 3px 0px #d4d4d5;
}
.ui.teal.cards > .card:hover,
.ui.cards > .teal.card:hover,
.ui.teal.card:hover {
box-shadow: 0px 0px 0px 1px #d4d4d5, 0px 2px 0px 0px #009c95, 0px 1px 3px 0px #bcbdbd;
}
/* Blue */
.ui.blue.cards > .card,
.ui.cards > .blue.card,
.ui.blue.card {
box-shadow: 0px 0px 0px 1px #d4d4d5, 0px 2px 0px 0px #2185d0, 0px 1px 3px 0px #d4d4d5;
}
.ui.blue.cards > .card:hover,
.ui.cards > .blue.card:hover,
.ui.blue.card:hover {
box-shadow: 0px 0px 0px 1px #d4d4d5, 0px 2px 0px 0px #1678c2, 0px 1px 3px 0px #bcbdbd;
}
/* Violet */
.ui.violet.cards > .card,
.ui.cards > .violet.card,
.ui.violet.card {
box-shadow: 0px 0px 0px 1px #d4d4d5, 0px 2px 0px 0px #6435c9, 0px 1px 3px 0px #d4d4d5;
}
.ui.violet.cards > .card:hover,
.ui.cards > .violet.card:hover,
.ui.violet.card:hover {
box-shadow: 0px 0px 0px 1px #d4d4d5, 0px 2px 0px 0px #5829bb, 0px 1px 3px 0px #bcbdbd;
}
/* Purple */
.ui.purple.cards > .card,
.ui.cards > .purple.card,
.ui.purple.card {
box-shadow: 0px 0px 0px 1px #d4d4d5, 0px 2px 0px 0px #a333c8, 0px 1px 3px 0px #d4d4d5;
}
.ui.purple.cards > .card:hover,
.ui.cards > .purple.card:hover,
.ui.purple.card:hover {
box-shadow: 0px 0px 0px 1px #d4d4d5, 0px 2px 0px 0px #9627ba, 0px 1px 3px 0px #bcbdbd;
}
/* Pink */
.ui.pink.cards > .card,
.ui.cards > .pink.card,
.ui.pink.card {
box-shadow: 0px 0px 0px 1px #d4d4d5, 0px 2px 0px 0px #e03997, 0px 1px 3px 0px #d4d4d5;
}
.ui.pink.cards > .card:hover,
.ui.cards > .pink.card:hover,
.ui.pink.card:hover {
box-shadow: 0px 0px 0px 1px #d4d4d5, 0px 2px 0px 0px #e61a8d, 0px 1px 3px 0px #bcbdbd;
}
/* Brown */
.ui.brown.cards > .card,
.ui.cards > .brown.card,
.ui.brown.card {
box-shadow: 0px 0px 0px 1px #d4d4d5, 0px 2px 0px 0px #a5673f, 0px 1px 3px 0px #d4d4d5;
}
.ui.brown.cards > .card:hover,
.ui.cards > .brown.card:hover,
.ui.brown.card:hover {
box-shadow: 0px 0px 0px 1px #d4d4d5, 0px 2px 0px 0px #975b33, 0px 1px 3px 0px #bcbdbd;
}
/* Grey */
.ui.grey.cards > .card,
.ui.cards > .grey.card,
.ui.grey.card {
box-shadow: 0px 0px 0px 1px #d4d4d5, 0px 2px 0px 0px #767676, 0px 1px 3px 0px #d4d4d5;
}
.ui.grey.cards > .card:hover,
.ui.cards > .grey.card:hover,
.ui.grey.card:hover {
box-shadow: 0px 0px 0px 1px #d4d4d5, 0px 2px 0px 0px #838383, 0px 1px 3px 0px #bcbdbd;
}
/* Black */
.ui.black.cards > .card,
.ui.cards > .black.card,
.ui.black.card {
box-shadow: 0px 0px 0px 1px #d4d4d5, 0px 2px 0px 0px #1b1c1d, 0px 1px 3px 0px #d4d4d5;
}
.ui.black.cards > .card:hover,
.ui.cards > .black.card:hover,
.ui.black.card:hover {
box-shadow: 0px 0px 0px 1px #d4d4d5, 0px 2px 0px 0px #27292a, 0px 1px 3px 0px #bcbdbd;
} }
/*-------------- /*--------------
@ -561,120 +660,84 @@ a.ui.card:hover,
margin-right: -1em; margin-right: -1em;
} }
.ui.two.cards > .card { .ui.two.cards > .card {
width: -webkit-calc( 50% - 2em );
width: calc( 50% - 2em ); width: calc( 50% - 2em );
margin-left: 1em; margin-left: 1em;
margin-right: 1em; margin-right: 1em;
} }
.ui.two.cards > .card:nth-child(2n+1) {
clear: left;
}
.ui.three.cards { .ui.three.cards {
margin-left: -1em; margin-left: -1em;
margin-right: -1em; margin-right: -1em;
} }
.ui.three.cards > .card { .ui.three.cards > .card {
width: -webkit-calc( 33.33333333% - 2em );
width: calc( 33.33333333% - 2em ); width: calc( 33.33333333% - 2em );
margin-left: 1em; margin-left: 1em;
margin-right: 1em; margin-right: 1em;
} }
.ui.three.cards > .card:nth-child(3n+1) {
clear: left;
}
.ui.four.cards { .ui.four.cards {
margin-left: -0.75em; margin-left: -0.75em;
margin-right: -0.75em; margin-right: -0.75em;
} }
.ui.four.cards > .card { .ui.four.cards > .card {
width: -webkit-calc( 25% - 1.5em );
width: calc( 25% - 1.5em ); width: calc( 25% - 1.5em );
margin-left: 0.75em; margin-left: 0.75em;
margin-right: 0.75em; margin-right: 0.75em;
} }
.ui.four.cards > .card:nth-child(4n+1) {
clear: left;
}
.ui.five.cards { .ui.five.cards {
margin-left: -0.75em; margin-left: -0.75em;
margin-right: -0.75em; margin-right: -0.75em;
} }
.ui.five.cards > .card { .ui.five.cards > .card {
width: -webkit-calc( 20% - 1.5em );
width: calc( 20% - 1.5em ); width: calc( 20% - 1.5em );
margin-left: 0.75em; margin-left: 0.75em;
margin-right: 0.75em; margin-right: 0.75em;
} }
.ui.five.cards > .card:nth-child(5n+1) {
clear: left;
}
.ui.six.cards { .ui.six.cards {
margin-left: -0.75em; margin-left: -0.75em;
margin-right: -0.75em; margin-right: -0.75em;
} }
.ui.six.cards > .card { .ui.six.cards > .card {
width: -webkit-calc( 16.66666667% - 1.5em );
width: calc( 16.66666667% - 1.5em ); width: calc( 16.66666667% - 1.5em );
margin-left: 0.75em; margin-left: 0.75em;
margin-right: 0.75em; margin-right: 0.75em;
} }
.ui.six.cards > .card:nth-child(6n+1) {
clear: left;
}
.ui.seven.cards { .ui.seven.cards {
margin-left: -0.5em; margin-left: -0.5em;
margin-right: -0.5em; margin-right: -0.5em;
} }
.ui.seven.cards > .card { .ui.seven.cards > .card {
width: -webkit-calc( 14.28571429% - 1em );
width: calc( 14.28571429% - 1em ); width: calc( 14.28571429% - 1em );
margin-left: 0.5em; margin-left: 0.5em;
margin-right: 0.5em; margin-right: 0.5em;
} }
.ui.seven.cards > .card:nth-child(7n+1) {
clear: left;
}
.ui.eight.cards { .ui.eight.cards {
margin-left: -0.5em; margin-left: -0.5em;
margin-right: -0.5em; margin-right: -0.5em;
} }
.ui.eight.cards > .card { .ui.eight.cards > .card {
width: -webkit-calc( 12.5% - 1em );
width: calc( 12.5% - 1em ); width: calc( 12.5% - 1em );
margin-left: 0.5em; margin-left: 0.5em;
margin-right: 0.5em; margin-right: 0.5em;
font-size: 11px; font-size: 11px;
} }
.ui.eight.cards > .card:nth-child(8n+1) {
clear: left;
}
.ui.nine.cards { .ui.nine.cards {
margin-left: -0.5em; margin-left: -0.5em;
margin-right: -0.5em; margin-right: -0.5em;
} }
.ui.nine.cards > .card { .ui.nine.cards > .card {
width: -webkit-calc( 11.11111111% - 1em );
width: calc( 11.11111111% - 1em ); width: calc( 11.11111111% - 1em );
margin-left: 0.5em; margin-left: 0.5em;
margin-right: 0.5em; margin-right: 0.5em;
font-size: 10px; font-size: 10px;
} }
.ui.nine.cards > .card:nth-child(9n+1) {
clear: left;
}
.ui.ten.cards { .ui.ten.cards {
margin-left: -0.5em; margin-left: -0.5em;
margin-right: -0.5em; margin-right: -0.5em;
} }
.ui.ten.cards > .card { .ui.ten.cards > .card {
width: -webkit-calc( 10% - 1em );
width: calc( 10% - 1em ); width: calc( 10% - 1em );
margin-left: 0.5em; margin-left: 0.5em;
margin-right: 0.5em; margin-right: 0.5em;
} }
.ui.ten.cards > .card:nth-child(10n+1) {
clear: left;
}
/*------------------- /*-------------------
Doubling Doubling
@ -697,7 +760,6 @@ a.ui.card:hover,
margin-right: -1em; margin-right: -1em;
} }
.ui.three.doubling.cards .card { .ui.three.doubling.cards .card {
width: -webkit-calc( 50% - 2em );
width: calc( 50% - 2em ); width: calc( 50% - 2em );
margin-left: 1em; margin-left: 1em;
margin-right: 1em; margin-right: 1em;
@ -707,7 +769,6 @@ a.ui.card:hover,
margin-right: -1em; margin-right: -1em;
} }
.ui.four.doubling.cards .card { .ui.four.doubling.cards .card {
width: -webkit-calc( 50% - 2em );
width: calc( 50% - 2em ); width: calc( 50% - 2em );
margin-left: 1em; margin-left: 1em;
margin-right: 1em; margin-right: 1em;
@ -717,7 +778,6 @@ a.ui.card:hover,
margin-right: -1em; margin-right: -1em;
} }
.ui.five.doubling.cards .card { .ui.five.doubling.cards .card {
width: -webkit-calc( 50% - 2em );
width: calc( 50% - 2em ); width: calc( 50% - 2em );
margin-left: 1em; margin-left: 1em;
margin-right: 1em; margin-right: 1em;
@ -727,7 +787,6 @@ a.ui.card:hover,
margin-right: -1em; margin-right: -1em;
} }
.ui.six.doubling.cards .card { .ui.six.doubling.cards .card {
width: -webkit-calc( 50% - 2em );
width: calc( 50% - 2em ); width: calc( 50% - 2em );
margin-left: 1em; margin-left: 1em;
margin-right: 1em; margin-right: 1em;
@ -737,7 +796,6 @@ a.ui.card:hover,
margin-right: -1em; margin-right: -1em;
} }
.ui.seven.doubling.cards .card { .ui.seven.doubling.cards .card {
width: -webkit-calc( 33.33333333% - 2em );
width: calc( 33.33333333% - 2em ); width: calc( 33.33333333% - 2em );
margin-left: 1em; margin-left: 1em;
margin-right: 1em; margin-right: 1em;
@ -747,7 +805,6 @@ a.ui.card:hover,
margin-right: -1em; margin-right: -1em;
} }
.ui.eight.doubling.cards .card { .ui.eight.doubling.cards .card {
width: -webkit-calc( 33.33333333% - 2em );
width: calc( 33.33333333% - 2em ); width: calc( 33.33333333% - 2em );
margin-left: 1em; margin-left: 1em;
margin-right: 1em; margin-right: 1em;
@ -757,7 +814,6 @@ a.ui.card:hover,
margin-right: -1em; margin-right: -1em;
} }
.ui.nine.doubling.cards .card { .ui.nine.doubling.cards .card {
width: -webkit-calc( 33.33333333% - 2em );
width: calc( 33.33333333% - 2em ); width: calc( 33.33333333% - 2em );
margin-left: 1em; margin-left: 1em;
margin-right: 1em; margin-right: 1em;
@ -767,7 +823,6 @@ a.ui.card:hover,
margin-right: -1em; margin-right: -1em;
} }
.ui.ten.doubling.cards .card { .ui.ten.doubling.cards .card {
width: -webkit-calc( 33.33333333% - 2em );
width: calc( 33.33333333% - 2em ); width: calc( 33.33333333% - 2em );
margin-left: 1em; margin-left: 1em;
margin-right: 1em; margin-right: 1em;
@ -790,7 +845,6 @@ a.ui.card:hover,
margin-right: -1em; margin-right: -1em;
} }
.ui.three.doubling.cards .card { .ui.three.doubling.cards .card {
width: -webkit-calc( 50% - 2em );
width: calc( 50% - 2em ); width: calc( 50% - 2em );
margin-left: 1em; margin-left: 1em;
margin-right: 1em; margin-right: 1em;
@ -800,7 +854,6 @@ a.ui.card:hover,
margin-right: -1em; margin-right: -1em;
} }
.ui.four.doubling.cards .card { .ui.four.doubling.cards .card {
width: -webkit-calc( 50% - 2em );
width: calc( 50% - 2em ); width: calc( 50% - 2em );
margin-left: 1em; margin-left: 1em;
margin-right: 1em; margin-right: 1em;
@ -810,7 +863,6 @@ a.ui.card:hover,
margin-right: -1em; margin-right: -1em;
} }
.ui.five.doubling.cards .card { .ui.five.doubling.cards .card {
width: -webkit-calc( 33.33333333% - 2em );
width: calc( 33.33333333% - 2em ); width: calc( 33.33333333% - 2em );
margin-left: 1em; margin-left: 1em;
margin-right: 1em; margin-right: 1em;
@ -820,7 +872,6 @@ a.ui.card:hover,
margin-right: -1em; margin-right: -1em;
} }
.ui.six.doubling.cards .card { .ui.six.doubling.cards .card {
width: -webkit-calc( 33.33333333% - 2em );
width: calc( 33.33333333% - 2em ); width: calc( 33.33333333% - 2em );
margin-left: 1em; margin-left: 1em;
margin-right: 1em; margin-right: 1em;
@ -830,7 +881,6 @@ a.ui.card:hover,
margin-right: -1em; margin-right: -1em;
} }
.ui.eight.doubling.cards .card { .ui.eight.doubling.cards .card {
width: -webkit-calc( 33.33333333% - 2em );
width: calc( 33.33333333% - 2em ); width: calc( 33.33333333% - 2em );
margin-left: 1em; margin-left: 1em;
margin-right: 1em; margin-right: 1em;
@ -840,7 +890,6 @@ a.ui.card:hover,
margin-right: -0.75em; margin-right: -0.75em;
} }
.ui.eight.doubling.cards .card { .ui.eight.doubling.cards .card {
width: -webkit-calc( 25% - 1.5em );
width: calc( 25% - 1.5em ); width: calc( 25% - 1.5em );
margin-left: 0.75em; margin-left: 0.75em;
margin-right: 0.75em; margin-right: 0.75em;
@ -850,7 +899,6 @@ a.ui.card:hover,
margin-right: -0.75em; margin-right: -0.75em;
} }
.ui.nine.doubling.cards .card { .ui.nine.doubling.cards .card {
width: -webkit-calc( 25% - 1.5em );
width: calc( 25% - 1.5em ); width: calc( 25% - 1.5em );
margin-left: 0.75em; margin-left: 0.75em;
margin-right: 0.75em; margin-right: 0.75em;
@ -860,7 +908,6 @@ a.ui.card:hover,
margin-right: -0.75em; margin-right: -0.75em;
} }
.ui.ten.doubling.cards .card { .ui.ten.doubling.cards .card {
width: -webkit-calc( 20% - 1.5em );
width: calc( 20% - 1.5em ); width: calc( 20% - 1.5em );
margin-left: 0.75em; margin-left: 0.75em;
margin-right: 0.75em; margin-right: 0.75em;
@ -883,7 +930,6 @@ a.ui.card:hover,
height: auto !important; height: auto !important;
margin: 1em 1em; margin: 1em 1em;
padding: 0 !important; padding: 0 !important;
width: -webkit-calc( 100% - 2em ) !important;
width: calc( 100% - 2em ) !important; width: calc( 100% - 2em ) !important;
} }
} }

6
web/semantic/dist/components/card.min.css vendored Normal file → Executable file

File diff suppressed because one or more lines are too long

431
web/semantic/dist/components/checkbox.css vendored Normal file → Executable file

File diff suppressed because one or more lines are too long

View file

@ -1,9 +1,9 @@
/*! /*!
* # Semantic UI 1.11.4 - Checkbox * # Semantic UI 2.1.7 - Checkbox
* http://github.com/semantic-org/semantic-ui/ * http://github.com/semantic-org/semantic-ui/
* *
* *
* Copyright 2014 Contributors * Copyright 2015 Contributors
* Released under the MIT license * Released under the MIT license
* http://opensource.org/licenses/MIT * http://opensource.org/licenses/MIT
* *
@ -41,9 +41,12 @@ $.fn.checkbox = function(parameters) {
moduleNamespace = 'module-' + namespace, moduleNamespace = 'module-' + namespace,
$module = $(this), $module = $(this),
$label = $(this).find(selector.label).first(), $label = $(this).children(selector.label),
$input = $(this).find(selector.input), $input = $(this).children(selector.input),
input = $input[0],
initialLoad = false,
shortcutPressed = false,
instance = $module.data(moduleNamespace), instance = $module.data(moduleNamespace),
observer, observer,
@ -57,23 +60,14 @@ $.fn.checkbox = function(parameters) {
module.verbose('Initializing checkbox', settings); module.verbose('Initializing checkbox', settings);
module.create.label(); module.create.label();
module.add.events(); module.bind.events();
module.set.tabbable();
module.hide.input();
if( module.is.checked() ) {
module.set.checked();
if(settings.fireOnInit) {
settings.onChecked.call($input.get());
}
}
else {
module.remove.checked();
if(settings.fireOnInit) {
settings.onUnchecked.call($input.get());
}
}
module.observeChanges(); module.observeChanges();
module.instantiate(); module.instantiate();
module.setup();
}, },
instantiate: function() { instantiate: function() {
@ -86,16 +80,55 @@ $.fn.checkbox = function(parameters) {
destroy: function() { destroy: function() {
module.verbose('Destroying module'); module.verbose('Destroying module');
module.remove.events(); module.unbind.events();
$module module.show.input();
.removeData(moduleNamespace) $module.removeData(moduleNamespace);
; },
fix: {
reference: function() {
if( $module.is(selector.input) ) {
module.debug('Behavior called on <input> adjusting invoked element');
$module = $module.closest(selector.checkbox);
module.refresh();
}
}
},
setup: function() {
module.set.initialLoad();
if( module.is.indeterminate() ) {
module.debug('Initial value is indeterminate');
module.indeterminate();
}
else if( module.is.checked() ) {
module.debug('Initial value is checked');
module.check();
}
else {
module.debug('Initial value is unchecked');
module.uncheck();
}
module.remove.initialLoad();
}, },
refresh: function() { refresh: function() {
$module = $(this); $label = $module.children(selector.label);
$label = $(this).find(selector.label).first(); $input = $module.children(selector.input);
$input = $(this).find(selector.input); input = $input[0];
},
hide: {
input: function() {
module.verbose('Modfying <input> z-index to be unselectable');
$input.addClass(className.hidden);
}
},
show: {
input: function() {
module.verbose('Modfying <input> z-index to be selectable');
$input.removeClass(className.hidden);
}
}, },
observeChanges: function() { observeChanges: function() {
@ -132,6 +165,22 @@ $.fn.checkbox = function(parameters) {
}, },
event: { event: {
click: function(event) {
var
$target = $(event.target)
;
if( $target.is(selector.input) ) {
module.verbose('Using default check action on initialized checkbox');
return;
}
if( $target.is(selector.link) ) {
module.debug('Clicking link inside checkbox, skipping toggle');
return;
}
module.toggle();
$input.focus();
event.preventDefault();
},
keydown: function(event) { keydown: function(event) {
var var
key = event.which, key = event.which,
@ -141,35 +190,195 @@ $.fn.checkbox = function(parameters) {
escape : 27 escape : 27
} }
; ;
if( key == keyCode.escape) { if(key == keyCode.escape) {
module.verbose('Escape key pressed blurring field'); module.verbose('Escape key pressed blurring field');
$module $input.blur();
.blur() shortcutPressed = true;
;
} }
if(!event.ctrlKey && (key == keyCode.enter || key == keyCode.space)) { else if(!event.ctrlKey && ( key == keyCode.space || key == keyCode.enter) ) {
module.verbose('Enter key pressed, toggling checkbox'); module.verbose('Enter/space key pressed, toggling checkbox');
module.toggle.call(this); module.toggle();
shortcutPressed = true;
}
else {
shortcutPressed = false;
}
},
keyup: function(event) {
if(shortcutPressed) {
event.preventDefault(); event.preventDefault();
} }
} }
}, },
check: function() {
if( !module.should.allowCheck() ) {
return;
}
module.debug('Checking checkbox', $input);
module.set.checked();
if( !module.should.ignoreCallbacks() ) {
settings.onChecked.call(input);
settings.onChange.call(input);
}
},
uncheck: function() {
if( !module.should.allowUncheck() ) {
return;
}
module.debug('Unchecking checkbox');
module.set.unchecked();
if( !module.should.ignoreCallbacks() ) {
settings.onUnchecked.call(input);
settings.onChange.call(input);
}
},
indeterminate: function() {
if( module.should.allowIndeterminate() ) {
module.debug('Checkbox is already indeterminate');
return;
}
module.debug('Making checkbox indeterminate');
module.set.indeterminate();
if( !module.should.ignoreCallbacks() ) {
settings.onIndeterminate.call(input);
settings.onChange.call(input);
}
},
determinate: function() {
if( module.should.allowDeterminate() ) {
module.debug('Checkbox is already determinate');
return;
}
module.debug('Making checkbox determinate');
module.set.determinate();
if( !module.should.ignoreCallbacks() ) {
settings.onDeterminate.call(input);
settings.onChange.call(input);
}
},
enable: function() {
if( module.is.enabled() ) {
module.debug('Checkbox is already enabled');
return;
}
module.debug('Enabling checkbox');
module.set.enabled();
settings.onEnabled.call(input);
},
disable: function() {
if( module.is.disabled() ) {
module.debug('Checkbox is already disabled');
return;
}
module.debug('Disabling checkbox');
module.set.disabled();
settings.onDisabled.call(input);
},
get: {
radios: function() {
var
name = module.get.name()
;
return $('input[name="' + name + '"]').closest(selector.checkbox);
},
otherRadios: function() {
return module.get.radios().not($module);
},
name: function() {
return $input.attr('name');
}
},
is: { is: {
initialLoad: function() {
return initialLoad;
},
radio: function() { radio: function() {
return $module.hasClass(className.radio); return ($input.hasClass(className.radio) || $input.attr('type') == 'radio');
},
indeterminate: function() {
return $input.prop('indeterminate') !== undefined && $input.prop('indeterminate');
}, },
checked: function() { checked: function() {
return $input.prop('checked') !== undefined && $input.prop('checked'); return $input.prop('checked') !== undefined && $input.prop('checked');
}, },
disabled: function() {
return $input.prop('disabled') !== undefined && $input.prop('disabled');
},
enabled: function() {
return !module.is.disabled();
},
determinate: function() {
return !module.is.indeterminate();
},
unchecked: function() { unchecked: function() {
return !module.is.checked(); return !module.is.checked();
} }
}, },
should: {
allowCheck: function() {
if(module.is.determinate() && module.is.checked() && !module.should.forceCallbacks() ) {
module.debug('Should not allow check, checkbox is already checked');
return false;
}
if(settings.beforeChecked.apply(input) === false) {
module.debug('Should not allow check, beforeChecked cancelled');
return false;
}
return true;
},
allowUncheck: function() {
if(module.is.determinate() && module.is.unchecked() && !module.should.forceCallbacks() ) {
module.debug('Should not allow uncheck, checkbox is already unchecked');
return false;
}
if(settings.beforeUnchecked.apply(input) === false) {
module.debug('Should not allow uncheck, beforeUnchecked cancelled');
return false;
}
return true;
},
allowIndeterminate: function() {
if(module.is.indeterminate() && !module.should.forceCallbacks() ) {
module.debug('Should not allow indeterminate, checkbox is already indeterminate');
return false;
}
if(settings.beforeIndeterminate.apply(input) === false) {
module.debug('Should not allow indeterminate, beforeIndeterminate cancelled');
return false;
}
return true;
},
allowDeterminate: function() {
if(module.is.determinate() && !module.should.forceCallbacks() ) {
module.debug('Should not allow determinate, checkbox is already determinate');
return false;
}
if(settings.beforeDeterminate.apply(input) === false) {
module.debug('Should not allow determinate, beforeDeterminate cancelled');
return false;
}
return true;
},
forceCallbacks: function() {
return (module.is.initialLoad() && settings.fireOnInit);
},
ignoreCallbacks: function() {
return (initialLoad && !settings.fireOnInit);
}
},
can: { can: {
change: function() { change: function() {
return !( $module.hasClass(className.disabled) || $module.hasClass(className.readOnly) || $input.prop('disabled') ); return !( $module.hasClass(className.disabled) || $module.hasClass(className.readOnly) || $input.prop('disabled') || $input.prop('readonly') );
}, },
uncheck: function() { uncheck: function() {
return (typeof settings.uncheckable === 'boolean') return (typeof settings.uncheckable === 'boolean')
@ -180,18 +389,132 @@ $.fn.checkbox = function(parameters) {
}, },
set: { set: {
checked: function() { initialLoad: function() {
$module.addClass(className.checked); initialLoad = true;
}, },
tab: function() { checked: function() {
module.verbose('Setting class to checked');
$module
.removeClass(className.indeterminate)
.addClass(className.checked)
;
if( module.is.radio() ) {
module.uncheckOthers();
}
if(!module.is.indeterminate() && module.is.checked()) {
module.debug('Input is already checked, skipping input property change');
return;
}
module.verbose('Setting state to checked', input);
$input
.prop('indeterminate', false)
.prop('checked', true)
;
module.trigger.change();
},
unchecked: function() {
module.verbose('Removing checked class');
$module
.removeClass(className.indeterminate)
.removeClass(className.checked)
;
if(!module.is.indeterminate() && module.is.unchecked() ) {
module.debug('Input is already unchecked');
return;
}
module.debug('Setting state to unchecked');
$input
.prop('indeterminate', false)
.prop('checked', false)
;
module.trigger.change();
},
indeterminate: function() {
module.verbose('Setting class to indeterminate');
$module
.addClass(className.indeterminate)
;
if( module.is.indeterminate() ) {
module.debug('Input is already indeterminate, skipping input property change');
return;
}
module.debug('Setting state to indeterminate');
$input
.prop('indeterminate', true)
;
module.trigger.change();
},
determinate: function() {
module.verbose('Removing indeterminate class');
$module
.removeClass(className.indeterminate)
;
if( module.is.determinate() ) {
module.debug('Input is already determinate, skipping input property change');
return;
}
module.debug('Setting state to determinate');
$input
.prop('indeterminate', false)
;
},
disabled: function() {
module.verbose('Setting class to disabled');
$module
.addClass(className.disabled)
;
if( module.is.disabled() ) {
module.debug('Input is already disabled, skipping input property change');
return;
}
module.debug('Setting state to disabled');
$input
.prop('disabled', 'disabled')
;
module.trigger.change();
},
enabled: function() {
module.verbose('Removing disabled class');
$module.removeClass(className.disabled);
if( module.is.enabled() ) {
module.debug('Input is already enabled, skipping input property change');
return;
}
module.debug('Setting state to enabled');
$input
.prop('disabled', false)
;
module.trigger.change();
},
tabbable: function() {
module.verbose('Adding tabindex to checkbox');
if( $input.attr('tabindex') === undefined) { if( $input.attr('tabindex') === undefined) {
$input $input.attr('tabindex', 0);
.attr('tabindex', 0)
;
} }
} }
}, },
remove: {
initialLoad: function() {
initialLoad = false;
}
},
trigger: {
change: function() {
var
events = document.createEvent('HTMLEvents'),
inputElement = $input[0]
;
if(inputElement) {
module.verbose('Triggering native change event');
events.initEvent('change', true, false);
inputElement.dispatchEvent(events);
}
}
},
create: { create: {
label: function() { label: function() {
if($input.prevAll(selector.label).length > 0) { if($input.prevAll(selector.label).length > 0) {
@ -211,84 +534,47 @@ $.fn.checkbox = function(parameters) {
} }
}, },
add: { bind: {
events: function() { events: function() {
module.verbose('Attaching checkbox events'); module.verbose('Attaching checkbox events');
$module $module
.on('click' + eventNamespace, module.toggle) .on('click' + eventNamespace, module.event.click)
.on('keydown' + eventNamespace, selector.input, module.event.keydown) .on('keydown' + eventNamespace, selector.input, module.event.keydown)
.on('keyup' + eventNamespace, selector.input, module.event.keyup)
; ;
} }
}, },
remove: { unbind: {
checked: function() {
$module.removeClass(className.checked);
},
events: function() { events: function() {
module.debug('Removing events'); module.debug('Removing events');
$module $module
.off(eventNamespace) .off(eventNamespace)
.removeData(moduleNamespace)
;
$input
.off(eventNamespace, module.event.keydown)
;
$label
.off(eventNamespace)
; ;
} }
}, },
enable: function() { uncheckOthers: function() {
module.debug('Enabling checkbox functionality'); var
$module.removeClass(className.disabled); $radios = module.get.otherRadios()
$input.prop('disabled', false);
settings.onEnabled.call($input.get());
},
disable: function() {
module.debug('Disabling checkbox functionality');
$module.addClass(className.disabled);
$input.prop('disabled', 'disabled');
settings.onDisabled.call($input.get());
},
check: function() {
module.debug('Enabling checkbox', $input);
$input
.prop('checked', true)
.trigger('change')
; ;
module.set.checked(); module.debug('Unchecking other radios', $radios);
$input.trigger('blur'); $radios.removeClass(className.checked);
settings.onChange.call($input.get());
settings.onChecked.call($input.get());
}, },
uncheck: function() { toggle: function() {
module.debug('Disabling checkbox');
$input
.prop('checked', false)
.trigger('change')
;
module.remove.checked();
$input.trigger('blur');
settings.onChange.call($input.get());
settings.onUnchecked.call($input.get());
},
toggle: function(event) {
if( !module.can.change() ) { if( !module.can.change() ) {
console.log(module.can.change()); if(!module.is.radio()) {
module.debug('Checkbox is read-only or disabled, ignoring toggle'); module.debug('Checkbox is read-only or disabled, ignoring toggle');
}
return; return;
} }
module.verbose('Determining new checkbox state'); if( module.is.indeterminate() || module.is.unchecked() ) {
if( module.is.unchecked() ) { module.debug('Currently unchecked');
module.check(); module.check();
} }
else if( module.is.checked() && module.can.uncheck() ) { else if( module.is.checked() && module.can.uncheck() ) {
module.debug('Currently checked');
module.uncheck(); module.uncheck();
} }
}, },
@ -361,7 +647,7 @@ $.fn.checkbox = function(parameters) {
}); });
} }
clearTimeout(module.performance.timer); clearTimeout(module.performance.timer);
module.performance.timer = setTimeout(module.performance.display, 100); module.performance.timer = setTimeout(module.performance.display, 500);
}, },
display: function() { display: function() {
var var
@ -471,39 +757,53 @@ $.fn.checkbox = function(parameters) {
$.fn.checkbox.settings = { $.fn.checkbox.settings = {
name : 'Checkbox', name : 'Checkbox',
namespace : 'checkbox', namespace : 'checkbox',
debug : false, debug : false,
verbose : true, verbose : true,
performance : true, performance : true,
// delegated event context // delegated event context
uncheckable : 'auto', uncheckable : 'auto',
fireOnInit : true, fireOnInit : false,
onChange : function(){}, onChange : function(){},
onChecked : function(){},
onUnchecked : function(){},
onEnabled : function(){},
onDisabled : function(){},
className : { beforeChecked : function(){},
checked : 'checked', beforeUnchecked : function(){},
disabled : 'disabled', beforeDeterminate : function(){},
radio : 'radio', beforeIndeterminate : function(){},
readOnly : 'read-only'
onChecked : function(){},
onUnchecked : function(){},
onDeterminate : function() {},
onIndeterminate : function() {},
onEnable : function(){},
onDisable : function(){},
className : {
checked : 'checked',
indeterminate : 'indeterminate',
disabled : 'disabled',
hidden : 'hidden',
radio : 'radio',
readOnly : 'read-only'
}, },
error : { error : {
method : 'The method you called is not defined' method : 'The method you called is not defined'
}, },
selector : { selector : {
input : 'input[type="checkbox"], input[type="radio"]', checkbox : '.ui.checkbox',
label : 'label' label : 'label, .box',
input : 'input[type="checkbox"], input[type="radio"]',
link : 'a[href]'
} }
}; };
})( jQuery, window , document ); })( jQuery, window, document );

6
web/semantic/dist/components/checkbox.min.css vendored Normal file → Executable file

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

274
web/semantic/dist/components/colorize.js vendored Normal file
View file

@ -0,0 +1,274 @@
/*!
* # Semantic UI 2.0.0 - Colorize
* http://github.com/semantic-org/semantic-ui/
*
*
* Copyright 2015 Contributors
* Released under the MIT license
* http://opensource.org/licenses/MIT
*
*/
;(function ( $, window, document, undefined ) {
"use strict";
$.fn.colorize = function(parameters) {
var
settings = ( $.isPlainObject(parameters) )
? $.extend(true, {}, $.fn.colorize.settings, parameters)
: $.extend({}, $.fn.colorize.settings),
// hoist arguments
moduleArguments = arguments || false
;
$(this)
.each(function(instanceIndex) {
var
$module = $(this),
mainCanvas = $('<canvas />')[0],
imageCanvas = $('<canvas />')[0],
overlayCanvas = $('<canvas />')[0],
backgroundImage = new Image(),
// defs
mainContext,
imageContext,
overlayContext,
image,
imageName,
width,
height,
// shortucts
colors = settings.colors,
paths = settings.paths,
namespace = settings.namespace,
error = settings.error,
// boilerplate
instance = $module.data('module-' + namespace),
module
;
module = {
checkPreconditions: function() {
module.debug('Checking pre-conditions');
if( !$.isPlainObject(colors) || $.isEmptyObject(colors) ) {
module.error(error.undefinedColors);
return false;
}
return true;
},
async: function(callback) {
if(settings.async) {
setTimeout(callback, 0);
}
else {
callback();
}
},
getMetadata: function() {
module.debug('Grabbing metadata');
image = $module.data('image') || settings.image || undefined;
imageName = $module.data('name') || settings.name || instanceIndex;
width = settings.width || $module.width();
height = settings.height || $module.height();
if(width === 0 || height === 0) {
module.error(error.undefinedSize);
}
},
initialize: function() {
module.debug('Initializing with colors', colors);
if( module.checkPreconditions() ) {
module.async(function() {
module.getMetadata();
module.canvas.create();
module.draw.image(function() {
module.draw.colors();
module.canvas.merge();
});
$module
.data('module-' + namespace, module)
;
});
}
},
redraw: function() {
module.debug('Redrawing image');
module.async(function() {
module.canvas.clear();
module.draw.colors();
module.canvas.merge();
});
},
change: {
color: function(colorName, color) {
module.debug('Changing color', colorName);
if(colors[colorName] === undefined) {
module.error(error.missingColor);
return false;
}
colors[colorName] = color;
module.redraw();
}
},
canvas: {
create: function() {
module.debug('Creating canvases');
mainCanvas.width = width;
mainCanvas.height = height;
imageCanvas.width = width;
imageCanvas.height = height;
overlayCanvas.width = width;
overlayCanvas.height = height;
mainContext = mainCanvas.getContext('2d');
imageContext = imageCanvas.getContext('2d');
overlayContext = overlayCanvas.getContext('2d');
$module
.append( mainCanvas )
;
mainContext = $module.children('canvas')[0].getContext('2d');
},
clear: function(context) {
module.debug('Clearing canvas');
overlayContext.fillStyle = '#FFFFFF';
overlayContext.fillRect(0, 0, width, height);
},
merge: function() {
if( !$.isFunction(mainContext.blendOnto) ) {
module.error(error.missingPlugin);
return;
}
mainContext.putImageData( imageContext.getImageData(0, 0, width, height), 0, 0);
overlayContext.blendOnto(mainContext, 'multiply');
}
},
draw: {
image: function(callback) {
module.debug('Drawing image');
callback = callback || function(){};
if(image) {
backgroundImage.src = image;
backgroundImage.onload = function() {
imageContext.drawImage(backgroundImage, 0, 0);
callback();
};
}
else {
module.error(error.noImage);
callback();
}
},
colors: function() {
module.debug('Drawing color overlays', colors);
$.each(colors, function(colorName, color) {
settings.onDraw(overlayContext, imageName, colorName, color);
});
}
},
debug: function(message, variableName) {
if(settings.debug) {
if(variableName !== undefined) {
console.info(settings.name + ': ' + message, variableName);
}
else {
console.info(settings.name + ': ' + message);
}
}
},
error: function(errorMessage) {
console.warn(settings.name + ': ' + errorMessage);
},
invoke: function(methodName, context, methodArguments) {
var
method
;
methodArguments = methodArguments || Array.prototype.slice.call( arguments, 2 );
if(typeof methodName == 'string' && instance !== undefined) {
methodName = methodName.split('.');
$.each(methodName, function(index, name) {
if( $.isPlainObject( instance[name] ) ) {
instance = instance[name];
return true;
}
else if( $.isFunction( instance[name] ) ) {
method = instance[name];
return true;
}
module.error(settings.error.method);
return false;
});
}
return ( $.isFunction( method ) )
? method.apply(context, methodArguments)
: false
;
}
};
if(instance !== undefined && moduleArguments) {
// simpler than invoke realizing to invoke itself (and losing scope due prototype.call()
if(moduleArguments[0] == 'invoke') {
moduleArguments = Array.prototype.slice.call( moduleArguments, 1 );
}
return module.invoke(moduleArguments[0], this, Array.prototype.slice.call( moduleArguments, 1 ) );
}
// initializing
module.initialize();
})
;
return this;
};
$.fn.colorize.settings = {
name : 'Image Colorizer',
debug : true,
namespace : 'colorize',
onDraw : function(overlayContext, imageName, colorName, color) {},
// whether to block execution while updating canvas
async : true,
// object containing names and default values of color regions
colors : {},
metadata: {
image : 'image',
name : 'name'
},
error: {
noImage : 'No tracing image specified',
undefinedColors : 'No default colors specified.',
missingColor : 'Attempted to change color that does not exist',
missingPlugin : 'Blend onto plug-in must be included',
undefinedHeight : 'The width or height of image canvas could not be automatically determined. Please specify a height.'
}
};
})( jQuery, window , document );

View file

@ -0,0 +1,11 @@
/*!
* # Semantic UI 2.0.0 - Colorize
* http://github.com/semantic-org/semantic-ui/
*
*
* Copyright 2015 Contributors
* Released under the MIT license
* http://opensource.org/licenses/MIT
*
*/
!function(e,n,i,t){"use strict";e.fn.colorize=function(n){var i=e.isPlainObject(n)?e.extend(!0,{},e.fn.colorize.settings,n):e.extend({},e.fn.colorize.settings),o=arguments||!1;return e(this).each(function(n){var a,r,c,s,d,g,u,l,m=e(this),f=e("<canvas />")[0],h=e("<canvas />")[0],p=e("<canvas />")[0],v=new Image,w=i.colors,b=(i.paths,i.namespace),y=i.error,C=m.data("module-"+b);return l={checkPreconditions:function(){return l.debug("Checking pre-conditions"),!e.isPlainObject(w)||e.isEmptyObject(w)?(l.error(y.undefinedColors),!1):!0},async:function(e){i.async?setTimeout(e,0):e()},getMetadata:function(){l.debug("Grabbing metadata"),s=m.data("image")||i.image||t,d=m.data("name")||i.name||n,g=i.width||m.width(),u=i.height||m.height(),(0===g||0===u)&&l.error(y.undefinedSize)},initialize:function(){l.debug("Initializing with colors",w),l.checkPreconditions()&&l.async(function(){l.getMetadata(),l.canvas.create(),l.draw.image(function(){l.draw.colors(),l.canvas.merge()}),m.data("module-"+b,l)})},redraw:function(){l.debug("Redrawing image"),l.async(function(){l.canvas.clear(),l.draw.colors(),l.canvas.merge()})},change:{color:function(e,n){return l.debug("Changing color",e),w[e]===t?(l.error(y.missingColor),!1):(w[e]=n,void l.redraw())}},canvas:{create:function(){l.debug("Creating canvases"),f.width=g,f.height=u,h.width=g,h.height=u,p.width=g,p.height=u,a=f.getContext("2d"),r=h.getContext("2d"),c=p.getContext("2d"),m.append(f),a=m.children("canvas")[0].getContext("2d")},clear:function(e){l.debug("Clearing canvas"),c.fillStyle="#FFFFFF",c.fillRect(0,0,g,u)},merge:function(){return e.isFunction(a.blendOnto)?(a.putImageData(r.getImageData(0,0,g,u),0,0),void c.blendOnto(a,"multiply")):void l.error(y.missingPlugin)}},draw:{image:function(e){l.debug("Drawing image"),e=e||function(){},s?(v.src=s,v.onload=function(){r.drawImage(v,0,0),e()}):(l.error(y.noImage),e())},colors:function(){l.debug("Drawing color overlays",w),e.each(w,function(e,n){i.onDraw(c,d,e,n)})}},debug:function(e,n){i.debug&&(n!==t?console.info(i.name+": "+e,n):console.info(i.name+": "+e))},error:function(e){console.warn(i.name+": "+e)},invoke:function(n,o,a){var r;return a=a||Array.prototype.slice.call(arguments,2),"string"==typeof n&&C!==t&&(n=n.split("."),e.each(n,function(n,t){return e.isPlainObject(C[t])?(C=C[t],!0):e.isFunction(C[t])?(r=C[t],!0):(l.error(i.error.method),!1)})),e.isFunction(r)?r.apply(o,a):!1}},C!==t&&o?("invoke"==o[0]&&(o=Array.prototype.slice.call(o,1)),l.invoke(o[0],this,Array.prototype.slice.call(o,1))):void l.initialize()}),this},e.fn.colorize.settings={name:"Image Colorizer",debug:!0,namespace:"colorize",onDraw:function(e,n,i,t){},async:!0,colors:{},metadata:{image:"image",name:"name"},error:{noImage:"No tracing image specified",undefinedColors:"No default colors specified.",missingColor:"Attempted to change color that does not exist",missingPlugin:"Blend onto plug-in must be included",undefinedHeight:"The width or height of image canvas could not be automatically determined. Please specify a height."}}}(jQuery,window,document);

12
web/semantic/dist/components/comment.css vendored Normal file → Executable file
View file

@ -1,9 +1,9 @@
/*! /*!
* # Semantic UI 1.11.4 - Comment * # Semantic UI 2.1.7 - Comment
* http://github.com/semantic-org/semantic-ui/ * http://github.com/semantic-org/semantic-ui/
* *
* *
* Copyright 2014 Contributorss * Copyright 2015 Contributors
* Released under the MIT license * Released under the MIT license
* http://opensource.org/licenses/MIT * http://opensource.org/licenses/MIT
* *
@ -106,14 +106,14 @@
.ui.comments .comment .author { .ui.comments .comment .author {
font-size: 1em; font-size: 1em;
color: rgba(0, 0, 0, 0.8); color: rgba(0, 0, 0, 0.87);
font-weight: bold; font-weight: bold;
} }
.ui.comments .comment a.author { .ui.comments .comment a.author {
cursor: pointer; cursor: pointer;
} }
.ui.comments .comment a.author:hover { .ui.comments .comment a.author:hover {
color: #00b2f3; color: #1e70bf;
} }
/*-------------- /*--------------
@ -142,7 +142,7 @@
margin: 0.25em 0em 0.5em; margin: 0.25em 0em 0.5em;
font-size: 1em; font-size: 1em;
word-wrap: break-word; word-wrap: break-word;
color: rgba(0, 0, 0, 0.8); color: rgba(0, 0, 0, 0.87);
line-height: 1.3; line-height: 1.3;
} }
@ -207,7 +207,7 @@
.ui.threaded.comments .comment .comments { .ui.threaded.comments .comment .comments {
margin: -1.5em 0 -1em 1.25em; margin: -1.5em 0 -1em 1.25em;
padding: 3em 0em 2em 2.25em; padding: 3em 0em 2em 2.25em;
box-shadow: -1px 0px 0px rgba(39, 41, 43, 0.15); box-shadow: -1px 0px 0px rgba(34, 36, 38, 0.15);
} }
/*-------------------- /*--------------------

6
web/semantic/dist/components/comment.min.css vendored Normal file → Executable file
View file

@ -1,10 +1,10 @@
/*! /*!
* # Semantic UI 1.11.4 - Comment * # Semantic UI 2.1.7 - Comment
* http://github.com/semantic-org/semantic-ui/ * http://github.com/semantic-org/semantic-ui/
* *
* *
* Copyright 2014 Contributorss * Copyright 2015 Contributors
* Released under the MIT license * Released under the MIT license
* http://opensource.org/licenses/MIT * http://opensource.org/licenses/MIT
* *
*/.ui.comments{margin:1.5em 0;max-width:650px}.ui.comments:first-child{margin-top:0}.ui.comments:last-child{margin-bottom:0}.ui.comments .comment{position:relative;background:0 0;margin:.5em 0 0;padding:.5em 0 0;border:none;border-top:none;line-height:1.2}.ui.comments .comment:first-child{margin-top:0;padding-top:0}.ui.comments .comment .comments{margin:0 0 .5em .5em;padding:1em 0 1em 1em}.ui.comments .comment .comments:before{position:absolute;top:0;left:0}.ui.comments .comment .comments .comment{border:none;border-top:none;background:0 0}.ui.comments .comment .avatar{display:block;width:2.5em;height:auto;float:left;margin:.2em 0 0}.ui.comments .comment .avatar img,.ui.comments .comment img.avatar{display:block;margin:0 auto;width:100%;height:100%;border-radius:.25rem}.ui.comments .comment>.content{display:block}.ui.comments .comment>.avatar~.content{margin-left:3.5em}.ui.comments .comment .author{font-size:1em;color:rgba(0,0,0,.8);font-weight:700}.ui.comments .comment a.author{cursor:pointer}.ui.comments .comment a.author:hover{color:#00b2f3}.ui.comments .comment .metadata{display:inline-block;margin-left:.5em;color:rgba(0,0,0,.4);font-size:.875em}.ui.comments .comment .metadata>*{display:inline-block;margin:0 .5em 0 0}.ui.comments .comment .metadata>:last-child{margin-right:0}.ui.comments .comment .text{margin:.25em 0 .5em;font-size:1em;word-wrap:break-word;color:rgba(0,0,0,.8);line-height:1.3}.ui.comments .comment .actions{font-size:.875em}.ui.comments .comment .actions a{cursor:pointer;display:inline-block;margin:0 .75em 0 0;color:rgba(0,0,0,.4)}.ui.comments .comment .actions a:last-child{margin-right:0}.ui.comments .comment .actions a.active,.ui.comments .comment .actions a:hover{color:rgba(0,0,0,.8)}.ui.comments>.reply.form{margin-top:1em}.ui.comments .comment .reply.form{width:100%;margin-top:1em}.ui.comments .reply.form textarea{font-size:1em;height:12em}.ui.collapsed.comments,.ui.comments .collapsed.comment,.ui.comments .collapsed.comments{display:none}.ui.threaded.comments .comment .comments{margin:-1.5em 0 -1em 1.25em;padding:3em 0 2em 2.25em;box-shadow:-1px 0 0 rgba(39,41,43,.15)}.ui.minimal.comments .comment .actions{opacity:0;position:absolute;top:0;right:0;left:auto;-webkit-transition:opacity .2s ease;transition:opacity .2s ease;-webkit-transition-delay:.1s;transition-delay:.1s}.ui.minimal.comments .comment>.content:hover>.actions{opacity:1}.ui.small.comments{font-size:.9em}.ui.comments{font-size:1em}.ui.large.comments{font-size:1.1em}.ui.huge.comments{font-size:1.2em} */.ui.comments{margin:1.5em 0;max-width:650px}.ui.comments:first-child{margin-top:0}.ui.comments:last-child{margin-bottom:0}.ui.comments .comment{position:relative;background:0 0;margin:.5em 0 0;padding:.5em 0 0;border:none;border-top:none;line-height:1.2}.ui.comments .comment:first-child{margin-top:0;padding-top:0}.ui.comments .comment .comments{margin:0 0 .5em .5em;padding:1em 0 1em 1em}.ui.comments .comment .comments:before{position:absolute;top:0;left:0}.ui.comments .comment .comments .comment{border:none;border-top:none;background:0 0}.ui.comments .comment .avatar{display:block;width:2.5em;height:auto;float:left;margin:.2em 0 0}.ui.comments .comment .avatar img,.ui.comments .comment img.avatar{display:block;margin:0 auto;width:100%;height:100%;border-radius:.25rem}.ui.comments .comment>.content{display:block}.ui.comments .comment>.avatar~.content{margin-left:3.5em}.ui.comments .comment .author{font-size:1em;color:rgba(0,0,0,.87);font-weight:700}.ui.comments .comment a.author{cursor:pointer}.ui.comments .comment a.author:hover{color:#1e70bf}.ui.comments .comment .metadata{display:inline-block;margin-left:.5em;color:rgba(0,0,0,.4);font-size:.875em}.ui.comments .comment .metadata>*{display:inline-block;margin:0 .5em 0 0}.ui.comments .comment .metadata>:last-child{margin-right:0}.ui.comments .comment .text{margin:.25em 0 .5em;font-size:1em;word-wrap:break-word;color:rgba(0,0,0,.87);line-height:1.3}.ui.comments .comment .actions{font-size:.875em}.ui.comments .comment .actions a{cursor:pointer;display:inline-block;margin:0 .75em 0 0;color:rgba(0,0,0,.4)}.ui.comments .comment .actions a:last-child{margin-right:0}.ui.comments .comment .actions a.active,.ui.comments .comment .actions a:hover{color:rgba(0,0,0,.8)}.ui.comments>.reply.form{margin-top:1em}.ui.comments .comment .reply.form{width:100%;margin-top:1em}.ui.comments .reply.form textarea{font-size:1em;height:12em}.ui.collapsed.comments,.ui.comments .collapsed.comment,.ui.comments .collapsed.comments{display:none}.ui.threaded.comments .comment .comments{margin:-1.5em 0 -1em 1.25em;padding:3em 0 2em 2.25em;box-shadow:-1px 0 0 rgba(34,36,38,.15)}.ui.minimal.comments .comment .actions{opacity:0;position:absolute;top:0;right:0;left:auto;-webkit-transition:opacity .2s ease;transition:opacity .2s ease;-webkit-transition-delay:.1s;transition-delay:.1s}.ui.minimal.comments .comment>.content:hover>.actions{opacity:1}.ui.small.comments{font-size:.9em}.ui.comments{font-size:1em}.ui.large.comments{font-size:1.1em}.ui.huge.comments{font-size:1.2em}

View file

@ -0,0 +1,149 @@
/*!
* # Semantic UI 2.1.7 - Container
* http://github.com/semantic-org/semantic-ui/
*
*
* Copyright 2015 Contributors
* Released under the MIT license
* http://opensource.org/licenses/MIT
*
*/
/*******************************
Container
*******************************/
/* All Sizes */
.ui.container {
display: block;
max-width: 100% !important;
}
/* Mobile */
@media only screen and (max-width: 767px) {
.ui.container {
width: auto !important;
margin-left: 1em !important;
margin-right: 1em !important;
}
.ui.grid.container {
width: auto !important;
}
.ui.relaxed.grid.container {
width: auto !important;
}
.ui.very.relaxed.grid.container {
width: auto !important;
}
}
/* Tablet */
@media only screen and (min-width: 768px) and (max-width: 991px) {
.ui.container {
width: 723px;
margin-left: auto !important;
margin-right: auto !important;
}
.ui.grid.container {
width: calc( 723px + 2rem ) !important;
}
.ui.relaxed.grid.container {
width: calc( 723px + 3rem ) !important;
}
.ui.very.relaxed.grid.container {
width: calc( 723px + 5rem ) !important;
}
}
/* Small Monitor */
@media only screen and (min-width: 992px) and (max-width: 1199px) {
.ui.container {
width: 933px;
margin-left: auto !important;
margin-right: auto !important;
}
.ui.grid.container {
width: calc( 933px + 2rem ) !important;
}
.ui.relaxed.grid.container {
width: calc( 933px + 3rem ) !important;
}
.ui.very.relaxed.grid.container {
width: calc( 933px + 5rem ) !important;
}
}
/* Large Monitor */
@media only screen and (min-width: 1200px) {
.ui.container {
width: 1127px;
margin-left: auto !important;
margin-right: auto !important;
}
.ui.grid.container {
width: calc( 1127px + 2rem ) !important;
}
.ui.relaxed.grid.container {
width: calc( 1127px + 3rem ) !important;
}
.ui.very.relaxed.grid.container {
width: calc( 1127px + 5rem ) !important;
}
}
/*******************************
Types
*******************************/
/* Text Container */
.ui.text.container {
font-family: 'Lato', 'Helvetica Neue', Arial, Helvetica, sans-serif;
max-width: 700px !important;
line-height: 1.5;
}
.ui.text.container {
font-size: 1.14285714rem;
}
/* Fluid */
.ui.fluid.container {
width: 100%;
}
/*******************************
Variations
*******************************/
.ui[class*="left aligned"].container {
text-align: left;
}
.ui[class*="center aligned"].container {
text-align: center;
}
.ui[class*="right aligned"].container {
text-align: right;
}
.ui.justified.container {
text-align: justify;
-webkit-hyphens: auto;
-moz-hyphens: auto;
-ms-hyphens: auto;
hyphens: auto;
}
/*******************************
Theme Overrides
*******************************/
/*******************************
Site Overrides
*******************************/

View file

@ -0,0 +1,10 @@
/*!
* # Semantic UI 2.1.7 - Container
* http://github.com/semantic-org/semantic-ui/
*
*
* Copyright 2015 Contributors
* Released under the MIT license
* http://opensource.org/licenses/MIT
*
*/.ui.container{display:block;max-width:100%!important}@media only screen and (max-width:767px){.ui.container{width:auto!important;margin-left:1em!important;margin-right:1em!important}.ui.grid.container,.ui.relaxed.grid.container,.ui.very.relaxed.grid.container{width:auto!important}}@media only screen and (min-width:768px) and (max-width:991px){.ui.container{width:723px;margin-left:auto!important;margin-right:auto!important}.ui.grid.container{width:calc(723px + 2rem)!important}.ui.relaxed.grid.container{width:calc(723px + 3rem)!important}.ui.very.relaxed.grid.container{width:calc(723px + 5rem)!important}}@media only screen and (min-width:992px) and (max-width:1199px){.ui.container{width:933px;margin-left:auto!important;margin-right:auto!important}.ui.grid.container{width:calc(933px + 2rem)!important}.ui.relaxed.grid.container{width:calc(933px + 3rem)!important}.ui.very.relaxed.grid.container{width:calc(933px + 5rem)!important}}@media only screen and (min-width:1200px){.ui.container{width:1127px;margin-left:auto!important;margin-right:auto!important}.ui.grid.container{width:calc(1127px + 2rem)!important}.ui.relaxed.grid.container{width:calc(1127px + 3rem)!important}.ui.very.relaxed.grid.container{width:calc(1127px + 5rem)!important}}.ui.text.container{font-family:Lato,'Helvetica Neue',Arial,Helvetica,sans-serif;max-width:700px!important;line-height:1.5;font-size:1.14285714rem}.ui.fluid.container{width:100%}.ui[class*="left aligned"].container{text-align:left}.ui[class*="center aligned"].container{text-align:center}.ui[class*="right aligned"].container{text-align:right}.ui.justified.container{text-align:justify;-webkit-hyphens:auto;-moz-hyphens:auto;-ms-hyphens:auto;hyphens:auto}

44
web/semantic/dist/components/dimmer.css vendored Normal file → Executable file
View file

@ -1,9 +1,9 @@
/*! /*!
* # Semantic UI 1.11.4 - Dimmer * # Semantic UI 2.1.7 - Dimmer
* http://github.com/semantic-org/semantic-ui/ * http://github.com/semantic-org/semantic-ui/
* *
* *
* Copyright 2014 Contributors * Copyright 2015 Contributors
* Released under the MIT license * Released under the MIT license
* http://opensource.org/licenses/MIT * http://opensource.org/licenses/MIT
* *
@ -26,7 +26,7 @@
height: 100%; height: 100%;
text-align: center; text-align: center;
vertical-align: middle; vertical-align: middle;
background: rgba(0, 0, 0, 0.85); background-color: rgba(0, 0, 0, 0.85);
opacity: 0; opacity: 0;
line-height: 1; line-height: 1;
-webkit-animation-fill-mode: both; -webkit-animation-fill-mode: both;
@ -53,7 +53,7 @@
-ms-user-select: text; -ms-user-select: text;
user-select: text; user-select: text;
} }
.ui.dimmer > .content > div { .ui.dimmer > .content > * {
display: table-cell; display: table-cell;
vertical-align: middle; vertical-align: middle;
color: #ffffff; color: #ffffff;
@ -111,15 +111,29 @@ body.dimmed.dimmable {
body.dimmable > .dimmer { body.dimmable > .dimmer {
position: fixed; position: fixed;
} }
/*
body.dimmable > :not(.dimmer) { /*--------------
filter: @elementStartFilter; Blurring
---------------*/
.blurring.dimmable > :not(.dimmer) {
-webkit-filter: blur(0px) grayscale(0);
filter: blur(0px) grayscale(0);
-webkit-transition: 800ms -webkit-filter ease, 800ms filter ease;
transition: 800ms filter ease;
} }
body.dimmed.dimmable > :not(.dimmer) { .blurring.dimmed.dimmable > :not(.dimmer) {
filter: @elementEndFilter; -webkit-filter: blur(5px) grayscale(0.7);
transition: @elementTransition; filter: blur(5px) grayscale(0.7);
}
/* Dimmer Color */
.blurring.dimmable > .dimmer {
background-color: rgba(0, 0, 0, 0.6);
}
.blurring.dimmable > .inverted.dimmer {
background-color: rgba(255, 255, 255, 0.6);
} }
*/
/*-------------- /*--------------
Aligned Aligned
@ -137,7 +151,7 @@ body.dimmed.dimmable > :not(.dimmer) {
---------------*/ ---------------*/
.ui.inverted.dimmer { .ui.inverted.dimmer {
background: rgba(255, 255, 255, 0.85); background-color: rgba(255, 255, 255, 0.85);
} }
.ui.inverted.dimmer > .content > * { .ui.inverted.dimmer > .content > * {
color: #ffffff; color: #ffffff;
@ -163,14 +177,14 @@ body.dimmed.dimmable > :not(.dimmer) {
opacity: 1; opacity: 1;
width: 100%; width: 100%;
height: 100%; height: 100%;
background: rgba(0, 0, 0, 0.85); background-color: rgba(0, 0, 0, 0.85);
z-index: 1; z-index: 1;
} }
.ui.simple.inverted.dimmer { .ui.simple.inverted.dimmer {
background: rgba(255, 255, 255, 0); background-color: rgba(255, 255, 255, 0);
} }
.dimmed.dimmable > .ui.simple.inverted.dimmer { .dimmed.dimmable > .ui.simple.inverted.dimmer {
background: rgba(255, 255, 255, 0.85); background-color: rgba(255, 255, 255, 0.85);
} }

View file

@ -1,9 +1,9 @@
/*! /*!
* # Semantic UI 1.11.4 - Dimmer * # Semantic UI 2.1.7 - Dimmer
* http://github.com/semantic-org/semantic-ui/ * http://github.com/semantic-org/semantic-ui/
* *
* *
* Copyright 2014 Contributors * Copyright 2015 Contributors
* Released under the MIT license * Released under the MIT license
* http://opensource.org/licenses/MIT * http://opensource.org/licenses/MIT
* *
@ -60,6 +60,7 @@ $.fn.dimmer = function(parameters) {
preinitialize: function() { preinitialize: function() {
if( module.is.dimmer() ) { if( module.is.dimmer() ) {
$dimmable = $module.parent(); $dimmable = $module.parent();
$dimmer = $module; $dimmer = $module;
} }
@ -67,10 +68,10 @@ $.fn.dimmer = function(parameters) {
$dimmable = $module; $dimmable = $module;
if( module.has.dimmer() ) { if( module.has.dimmer() ) {
if(settings.dimmerName) { if(settings.dimmerName) {
$dimmer = $dimmable.children(selector.dimmer).filter('.' + settings.dimmerName); $dimmer = $dimmable.find(selector.dimmer).filter('.' + settings.dimmerName);
} }
else { else {
$dimmer = $dimmable.children(selector.dimmer); $dimmer = $dimmable.find(selector.dimmer);
} }
} }
else { else {
@ -81,28 +82,8 @@ $.fn.dimmer = function(parameters) {
initialize: function() { initialize: function() {
module.debug('Initializing dimmer', settings); module.debug('Initializing dimmer', settings);
if(settings.on == 'hover') {
$dimmable
.on('mouseenter' + eventNamespace, module.show)
.on('mouseleave' + eventNamespace, module.hide)
;
}
else if(settings.on == 'click') {
$dimmable
.on(clickEvent + eventNamespace, module.toggle)
;
}
if( module.is.page() ) {
module.debug('Setting as a page dimmer', $dimmable);
module.set.pageDimmer();
}
if( module.is.closable() ) { module.bind.events();
module.verbose('Adding dimmer close event', $dimmer);
$dimmer
.on(clickEvent + eventNamespace, module.event.click)
;
}
module.set.dimmable(); module.set.dimmable();
module.instantiate(); module.instantiate();
}, },
@ -117,15 +98,46 @@ $.fn.dimmer = function(parameters) {
destroy: function() { destroy: function() {
module.verbose('Destroying previous module', $dimmer); module.verbose('Destroying previous module', $dimmer);
$module module.unbind.events();
.removeData(moduleNamespace) module.remove.variation();
;
$dimmable $dimmable
.off(eventNamespace) .off(eventNamespace)
; ;
$dimmer },
.off(eventNamespace)
; bind: {
events: function() {
if(settings.on == 'hover') {
$dimmable
.on('mouseenter' + eventNamespace, module.show)
.on('mouseleave' + eventNamespace, module.hide)
;
}
else if(settings.on == 'click') {
$dimmable
.on(clickEvent + eventNamespace, module.toggle)
;
}
if( module.is.page() ) {
module.debug('Setting as a page dimmer', $dimmable);
module.set.pageDimmer();
}
if( module.is.closable() ) {
module.verbose('Adding dimmer close event', $dimmer);
$dimmable
.on(clickEvent + eventNamespace, selector.dimmer, module.event.click)
;
}
}
},
unbind: {
events: function() {
$module
.removeData(moduleNamespace)
;
}
}, },
event: { event: {
@ -154,7 +166,7 @@ $.fn.dimmer = function(parameters) {
; ;
if(settings.variation) { if(settings.variation) {
module.debug('Creating dimmer with variation', settings.variation); module.debug('Creating dimmer with variation', settings.variation);
$element.addClass(className.variation); $element.addClass(settings.variation);
} }
if(settings.dimmerName) { if(settings.dimmerName) {
module.debug('Creating named dimmer', settings.dimmerName); module.debug('Creating named dimmer', settings.dimmerName);
@ -313,10 +325,10 @@ $.fn.dimmer = function(parameters) {
has: { has: {
dimmer: function() { dimmer: function() {
if(settings.dimmerName) { if(settings.dimmerName) {
return ($module.children(selector.dimmer).filter('.' + settings.dimmerName).length > 0); return ($module.find(selector.dimmer).filter('.' + settings.dimmerName).length > 0);
} }
else { else {
return ( $module.children(selector.dimmer).length > 0 ); return ( $module.find(selector.dimmer).length > 0 );
} }
} }
}, },
@ -338,10 +350,10 @@ $.fn.dimmer = function(parameters) {
return settings.closable; return settings.closable;
}, },
dimmer: function() { dimmer: function() {
return $module.is(selector.dimmer); return $module.hasClass(className.dimmer);
}, },
dimmable: function() { dimmable: function() {
return $module.is(selector.dimmable); return $module.hasClass(className.dimmable);
}, },
dimmed: function() { dimmed: function() {
return $dimmable.hasClass(className.dimmed); return $dimmable.hasClass(className.dimmed);
@ -369,11 +381,11 @@ $.fn.dimmer = function(parameters) {
set: { set: {
opacity: function(opacity) { opacity: function(opacity) {
var var
opacity = settings.opacity || opacity,
color = $dimmer.css('background-color'), color = $dimmer.css('background-color'),
colorArray = color.split(','), colorArray = color.split(','),
isRGBA = (colorArray && colorArray.length == 4) isRGBA = (colorArray && colorArray.length == 4)
; ;
opacity = settings.opacity === 0 ? 0 : settings.opacity || opacity;
if(isRGBA) { if(isRGBA) {
colorArray[3] = opacity + ')'; colorArray[3] = opacity + ')';
color = colorArray.join(','); color = colorArray.join(',');
@ -398,6 +410,12 @@ $.fn.dimmer = function(parameters) {
}, },
disabled: function() { disabled: function() {
$dimmer.addClass(className.disabled); $dimmer.addClass(className.disabled);
},
variation: function(variation) {
variation = variation || settings.variation;
if(variation) {
$dimmer.addClass(variation);
}
} }
}, },
@ -412,6 +430,12 @@ $.fn.dimmer = function(parameters) {
}, },
disabled: function() { disabled: function() {
$dimmer.removeClass(className.disabled); $dimmer.removeClass(className.disabled);
},
variation: function(variation) {
variation = variation || settings.variation;
if(variation) {
$dimmer.removeClass(variation);
}
} }
}, },
@ -484,7 +508,7 @@ $.fn.dimmer = function(parameters) {
}); });
} }
clearTimeout(module.performance.timer); clearTimeout(module.performance.timer);
module.performance.timer = setTimeout(module.performance.display, 100); module.performance.timer = setTimeout(module.performance.display, 500);
}, },
display: function() { display: function() {
var var
@ -603,7 +627,7 @@ $.fn.dimmer.settings = {
namespace : 'dimmer', namespace : 'dimmer',
debug : false, debug : false,
verbose : true, verbose : false,
performance : true, performance : true,
// name to distinguish between multiple dimmers in context // name to distinguish between multiple dimmers in context
@ -641,9 +665,20 @@ $.fn.dimmer.settings = {
method : 'The method you called is not defined.' method : 'The method you called is not defined.'
}, },
className : {
active : 'active',
animating : 'animating',
dimmable : 'dimmable',
dimmed : 'dimmed',
dimmer : 'dimmer',
disabled : 'disabled',
hide : 'hide',
pageDimmer : 'page',
show : 'show'
},
selector: { selector: {
dimmable : '.dimmable', dimmer : '> .ui.dimmer',
dimmer : '.ui.dimmer',
content : '.ui.dimmer > .content, .ui.dimmer > .content > .center' content : '.ui.dimmer > .content, .ui.dimmer > .content > .center'
}, },
@ -651,19 +686,8 @@ $.fn.dimmer.settings = {
dimmer: function() { dimmer: function() {
return $('<div />').attr('class', 'ui dimmer'); return $('<div />').attr('class', 'ui dimmer');
} }
},
className : {
active : 'active',
animating : 'animating',
dimmable : 'dimmable',
dimmed : 'dimmed',
disabled : 'disabled',
hide : 'hide',
pageDimmer : 'page',
show : 'show'
} }
}; };
})( jQuery, window , document ); })( jQuery, window, document );

6
web/semantic/dist/components/dimmer.min.css vendored Normal file → Executable file
View file

@ -1,10 +1,10 @@
/*! /*!
* # Semantic UI 1.11.4 - Dimmer * # Semantic UI 2.1.7 - Dimmer
* http://github.com/semantic-org/semantic-ui/ * http://github.com/semantic-org/semantic-ui/
* *
* *
* Copyright 2014 Contributors * Copyright 2015 Contributors
* Released under the MIT license * Released under the MIT license
* http://opensource.org/licenses/MIT * http://opensource.org/licenses/MIT
* *
*/.dimmable{position:relative}.ui.dimmer{display:none;position:absolute;top:0!important;left:0!important;width:100%;height:100%;text-align:center;vertical-align:middle;background:rgba(0,0,0,.85);opacity:0;line-height:1;-webkit-animation-fill-mode:both;animation-fill-mode:both;-webkit-animation-duration:.5s;animation-duration:.5s;-webkit-transition:background-color .5s linear;transition:background-color .5s linear;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;will-change:opacity;z-index:1000}.ui.dimmer>.content{width:100%;height:100%;display:table;-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text}.ui.dimmer>.content>div{display:table-cell;vertical-align:middle;color:#fff}.ui.segment>.ui.dimmer{border-radius:inherit!important}.animating.dimmable:not(body),.dimmed.dimmable:not(body){overflow:hidden}.dimmed.dimmable>.ui.animating.dimmer,.dimmed.dimmable>.ui.visible.dimmer,.ui.active.dimmer{display:block;opacity:1}.ui.disabled.dimmer{width:0!important;height:0!important}.ui.page.dimmer{position:fixed;-webkit-transform-style:'';transform-style:'';-webkit-perspective:2000px;perspective:2000px;-webkit-transform-origin:center center;-ms-transform-origin:center center;transform-origin:center center}body.animating.in.dimmable,body.dimmed.dimmable{overflow:hidden}body.dimmable>.dimmer{position:fixed}.ui.dimmer>.top.aligned.content>*{vertical-align:top}.ui.dimmer>.bottom.aligned.content>*{vertical-align:bottom}.ui.inverted.dimmer{background:rgba(255,255,255,.85)}.ui.inverted.dimmer>.content>*{color:#fff}.ui.simple.dimmer{display:block;overflow:hidden;opacity:1;width:0;height:0;z-index:-100;background-color:transparent}.dimmed.dimmable>.ui.simple.dimmer{overflow:visible;opacity:1;width:100%;height:100%;background:rgba(0,0,0,.85);z-index:1}.ui.simple.inverted.dimmer{background:rgba(255,255,255,0)}.dimmed.dimmable>.ui.simple.inverted.dimmer{background:rgba(255,255,255,.85)} */.dimmable{position:relative}.ui.dimmer{display:none;position:absolute;top:0!important;left:0!important;width:100%;height:100%;text-align:center;vertical-align:middle;background-color:rgba(0,0,0,.85);opacity:0;line-height:1;-webkit-animation-fill-mode:both;animation-fill-mode:both;-webkit-animation-duration:.5s;animation-duration:.5s;-webkit-transition:background-color .5s linear;transition:background-color .5s linear;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;will-change:opacity;z-index:1000}.ui.dimmer>.content{width:100%;height:100%;display:table;-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text}.ui.dimmer>.content>*{display:table-cell;vertical-align:middle;color:#fff}.ui.segment>.ui.dimmer{border-radius:inherit!important}.animating.dimmable:not(body),.dimmed.dimmable:not(body){overflow:hidden}.dimmed.dimmable>.ui.animating.dimmer,.dimmed.dimmable>.ui.visible.dimmer,.ui.active.dimmer{display:block;opacity:1}.ui.disabled.dimmer{width:0!important;height:0!important}.ui.page.dimmer{position:fixed;-webkit-transform-style:'';transform-style:'';-webkit-perspective:2000px;perspective:2000px;-webkit-transform-origin:center center;-ms-transform-origin:center center;transform-origin:center center}body.animating.in.dimmable,body.dimmed.dimmable{overflow:hidden}body.dimmable>.dimmer{position:fixed}.blurring.dimmable>:not(.dimmer){-webkit-filter:blur(0) grayscale(0);filter:blur(0) grayscale(0);-webkit-transition:800ms -webkit-filter ease,800ms filter ease;transition:800ms filter ease}.blurring.dimmed.dimmable>:not(.dimmer){-webkit-filter:blur(5px) grayscale(.7);filter:blur(5px) grayscale(.7)}.blurring.dimmable>.dimmer{background-color:rgba(0,0,0,.6)}.blurring.dimmable>.inverted.dimmer{background-color:rgba(255,255,255,.6)}.ui.dimmer>.top.aligned.content>*{vertical-align:top}.ui.dimmer>.bottom.aligned.content>*{vertical-align:bottom}.ui.inverted.dimmer{background-color:rgba(255,255,255,.85)}.ui.inverted.dimmer>.content>*{color:#fff}.ui.simple.dimmer{display:block;overflow:hidden;opacity:1;width:0;height:0;z-index:-100;background-color:transparent}.dimmed.dimmable>.ui.simple.dimmer{overflow:visible;opacity:1;width:100%;height:100%;background-color:rgba(0,0,0,.85);z-index:1}.ui.simple.inverted.dimmer{background-color:rgba(255,255,255,0)}.dimmed.dimmable>.ui.simple.inverted.dimmer{background-color:rgba(255,255,255,.85)}

File diff suppressed because one or more lines are too long

89
web/semantic/dist/components/divider.css vendored Normal file → Executable file
View file

@ -1,9 +1,9 @@
/*! /*!
* # Semantic UI 1.11.4 - Divider * # Semantic UI 2.1.7 - Divider
* http://github.com/semantic-org/semantic-ui/ * http://github.com/semantic-org/semantic-ui/
* *
* *
* Copyright 2014 Contributors * Copyright 2015 Contributors
* Released under the MIT license * Released under the MIT license
* http://opensource.org/licenses/MIT * http://opensource.org/licenses/MIT
* *
@ -34,16 +34,19 @@
---------------*/ ---------------*/
.ui.divider:not(.vertical):not(.horizontal) { .ui.divider:not(.vertical):not(.horizontal) {
border-top: 1px solid rgba(0, 0, 0, 0.1); border-top: 1px solid rgba(34, 36, 38, 0.15);
border-bottom: 1px solid rgba(255, 255, 255, 0.2); border-bottom: 1px solid rgba(255, 255, 255, 0.1);
} }
/*-------------- /*--------------
Coupling Coupling
---------------*/ ---------------*/
.ui.grid > .ui.divider {
font-size: 1rem; /* Allow divider between each column row */
.ui.grid > .column + .divider,
.ui.grid > .row > .column + .divider {
left: auto;
} }
/*-------------- /*--------------
@ -51,7 +54,8 @@
---------------*/ ---------------*/
.ui.horizontal.divider { .ui.horizontal.divider {
position: relative; display: table;
white-space: nowrap;
height: auto; height: auto;
margin: ''; margin: '';
overflow: hidden; overflow: hidden;
@ -60,21 +64,18 @@
} }
.ui.horizontal.divider:before, .ui.horizontal.divider:before,
.ui.horizontal.divider:after { .ui.horizontal.divider:after {
position: absolute;
content: ''; content: '';
z-index: 3; display: table-cell;
width: 50%; position: relative;
top: 50%; top: 50%;
height: 0px; width: 50%;
border-top: 1px solid rgba(0, 0, 0, 0.1); background-repeat: no-repeat;
border-bottom: 1px solid rgba(255, 255, 255, 0.2);
} }
.ui.horizontal.divider:before { .ui.horizontal.divider:before {
margin-left: -webkit-calc(-50% - 1em ); background-position: right 1em top 50%;
margin-left: calc(-50% - 1em );
} }
.ui.horizontal.divider:after { .ui.horizontal.divider:after {
margin-left: 1em; background-position: left 1em top 50%;
} }
/*-------------- /*--------------
@ -102,10 +103,9 @@
left: 50%; left: 50%;
content: ''; content: '';
z-index: 3; z-index: 3;
border-left: 1px solid rgba(0, 0, 0, 0.1); border-left: 1px solid rgba(34, 36, 38, 0.15);
border-right: 1px solid rgba(255, 255, 255, 0.2); border-right: 1px solid rgba(255, 255, 255, 0.1);
width: 0%; width: 0%;
height: -webkit-calc(100% - 1rem );
height: calc(100% - 1rem ); height: calc(100% - 1rem );
} }
.ui.vertical.divider:before { .ui.vertical.divider:before {
@ -120,35 +120,42 @@
@media only screen and (max-width: 767px) { @media only screen and (max-width: 767px) {
.ui.stackable.grid .ui.vertical.divider, .ui.stackable.grid .ui.vertical.divider,
.ui.grid .stackable.row .ui.vertical.divider { .ui.grid .stackable.row .ui.vertical.divider {
position: relative; display: table;
margin: 1rem 0rem; white-space: nowrap;
left: 50%;
height: auto; height: auto;
margin: '';
overflow: hidden; overflow: hidden;
line-height: 1; line-height: 1;
text-align: center; text-align: center;
position: static;
top: 0;
left: 0;
-webkit-transform: none;
-ms-transform: none;
transform: none;
} }
.ui.stackable.grid .ui.vertical.divider:before, .ui.stackable.grid .ui.vertical.divider:before,
.ui.grid .stackable.row .ui.vertical.divider:before, .ui.grid .stackable.row .ui.vertical.divider:before,
.ui.stackable.grid .ui.vertical.divider:after, .ui.stackable.grid .ui.vertical.divider:after,
.ui.grid .stackable.row .ui.vertical.divider:after { .ui.grid .stackable.row .ui.vertical.divider:after {
position: absolute; position: static;
left: auto; left: 0;
border-left: none;
border-right: none;
content: ''; content: '';
z-index: 3; display: table-cell;
width: 50%; position: relative;
top: 50%; top: 50%;
height: 0px; width: 50%;
border-top: 1px solid rgba(0, 0, 0, 0.1); background-repeat: no-repeat;
border-bottom: 1px solid rgba(255, 255, 255, 0.2);
} }
.ui.stackable.grid .ui.vertical.divider:before, .ui.stackable.grid .ui.vertical.divider:before,
.ui.grid .stackable.row .ui.vertical.divider:before { .ui.grid .stackable.row .ui.vertical.divider:before {
margin-left: -51%; background-position: right 1em top 50%;
} }
.ui.stackable.grid .ui.vertical.divider:after, .ui.stackable.grid .ui.vertical.divider:after,
.ui.grid .stackable.row .ui.vertical.divider:after { .ui.grid .stackable.row .ui.vertical.divider:after {
margin-left: 1em; background-position: left 1em top 50%;
} }
} }
@ -176,6 +183,10 @@
.ui.hidden.divider { .ui.hidden.divider {
border-color: transparent !important; border-color: transparent !important;
} }
.ui.hidden.divider:before,
.ui.hidden.divider:after {
display: none;
}
/*-------------- /*--------------
Inverted Inverted
@ -189,9 +200,9 @@
.ui.divider.inverted, .ui.divider.inverted,
.ui.divider.inverted:after, .ui.divider.inverted:after,
.ui.divider.inverted:before { .ui.divider.inverted:before {
border-top-color: rgba(0, 0, 0, 0.15) !important; border-top-color: rgba(34, 36, 38, 0.15) !important;
border-left-color: rgba(34, 36, 38, 0.15) !important;
border-bottom-color: rgba(255, 255, 255, 0.15) !important; border-bottom-color: rgba(255, 255, 255, 0.15) !important;
border-left-color: rgba(0, 0, 0, 0.15) !important;
border-right-color: rgba(255, 255, 255, 0.15) !important; border-right-color: rgba(255, 255, 255, 0.15) !important;
} }
@ -233,6 +244,18 @@
Theme Overrides Theme Overrides
*******************************/ *******************************/
.ui.horizontal.divider:before,
.ui.horizontal.divider:after {
background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABaAAAAACCAYAAACuTHuKAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyFpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNS1jMDE0IDc5LjE1MTQ4MSwgMjAxMy8wMy8xMy0xMjowOToxNSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIChXaW5kb3dzKSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo1OThBRDY4OUNDMTYxMUU0OUE3NUVGOEJDMzMzMjE2NyIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDo1OThBRDY4QUNDMTYxMUU0OUE3NUVGOEJDMzMzMjE2NyI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOjU5OEFENjg3Q0MxNjExRTQ5QTc1RUY4QkMzMzMyMTY3IiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjU5OEFENjg4Q0MxNjExRTQ5QTc1RUY4QkMzMzMyMTY3Ii8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+VU513gAAADVJREFUeNrs0DENACAQBDBIWLGBJQby/mUcJn5sJXQmOQMAAAAAAJqt+2prAAAAAACg2xdgANk6BEVuJgyMAAAAAElFTkSuQmCC');
}
@media only screen and (max-width: 767px) {
.ui.stackable.grid .ui.vertical.divider:before,
.ui.grid .stackable.row .ui.vertical.divider:before,
.ui.stackable.grid .ui.vertical.divider:after,
.ui.grid .stackable.row .ui.vertical.divider:after {
background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABaAAAAACCAYAAACuTHuKAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyFpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNS1jMDE0IDc5LjE1MTQ4MSwgMjAxMy8wMy8xMy0xMjowOToxNSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIChXaW5kb3dzKSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo1OThBRDY4OUNDMTYxMUU0OUE3NUVGOEJDMzMzMjE2NyIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDo1OThBRDY4QUNDMTYxMUU0OUE3NUVGOEJDMzMzMjE2NyI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOjU5OEFENjg3Q0MxNjExRTQ5QTc1RUY4QkMzMzMyMTY3IiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjU5OEFENjg4Q0MxNjExRTQ5QTc1RUY4QkMzMzMyMTY3Ii8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+VU513gAAADVJREFUeNrs0DENACAQBDBIWLGBJQby/mUcJn5sJXQmOQMAAAAAAJqt+2prAAAAAACg2xdgANk6BEVuJgyMAAAAAElFTkSuQmCC');
}
}
/******************************* /*******************************

6
web/semantic/dist/components/divider.min.css vendored Normal file → Executable file

File diff suppressed because one or more lines are too long

639
web/semantic/dist/components/dropdown.css vendored Normal file → Executable file

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

6
web/semantic/dist/components/dropdown.min.css vendored Normal file → Executable file

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

168
web/semantic/dist/components/embed.css vendored Normal file
View file

@ -0,0 +1,168 @@
/*!
* # Semantic UI 2.1.7 - Video
* http://github.com/semantic-org/semantic-ui/
*
*
* Copyright 2015 Contributors
* Released under the MIT license
* http://opensource.org/licenses/MIT
*
*/
/*******************************
Types
*******************************/
.ui.embed {
position: relative;
max-width: 100%;
height: 0px;
overflow: hidden;
background: #dcddde;
padding-bottom: 56.25%;
}
/*-----------------
Embedded Content
------------------*/
.ui.embed iframe,
.ui.embed embed,
.ui.embed object {
position: absolute;
border: none;
width: 100%;
height: 100%;
top: 0px;
left: 0px;
margin: 0em;
padding: 0em;
}
/*-----------------
Embed
------------------*/
.ui.embed > .embed {
display: none;
}
/*--------------
Placeholder
---------------*/
.ui.embed > .placeholder {
position: absolute;
cursor: pointer;
top: 0px;
left: 0px;
display: block;
width: 100%;
height: 100%;
background-color: radial-gradient(transparent 45%, rgba(0, 0, 0, 0.3));
}
/*--------------
Icon
---------------*/
.ui.embed > .icon {
cursor: pointer;
position: absolute;
top: 0px;
left: 0px;
width: 100%;
height: 100%;
z-index: 2;
}
.ui.embed > .icon:after {
position: absolute;
top: 0%;
left: 0%;
width: 100%;
height: 100%;
z-index: 3;
content: '';
background: -webkit-radial-gradient(transparent 45%, rgba(0, 0, 0, 0.3));
background: radial-gradient(transparent 45%, rgba(0, 0, 0, 0.3));
opacity: 0.5;
-webkit-transition: opacity 0.5s ease;
transition: opacity 0.5s ease;
}
.ui.embed > .icon:before {
position: absolute;
top: 50%;
left: 50%;
z-index: 4;
-webkit-transform: translateX(-50%) translateY(-50%);
-ms-transform: translateX(-50%) translateY(-50%);
transform: translateX(-50%) translateY(-50%);
color: #ffffff;
font-size: 6rem;
text-shadow: 0px 2px 10px rgba(34, 36, 38, 0.2);
-webkit-transition: opacity 0.5s ease, color 0.5s ease;
transition: opacity 0.5s ease, color 0.5s ease;
z-index: 10;
}
/*******************************
States
*******************************/
/*--------------
Hover
---------------*/
.ui.embed .icon:hover:after {
background: -webkit-radial-gradient(transparent 45%, rgba(0, 0, 0, 0.3));
background: radial-gradient(transparent 45%, rgba(0, 0, 0, 0.3));
opacity: 1;
}
.ui.embed .icon:hover:before {
color: #ffffff;
}
/*--------------
Active
---------------*/
.ui.active.embed > .icon,
.ui.active.embed > .placeholder {
display: none;
}
.ui.active.embed > .embed {
display: block;
}
/*******************************
Video Overrides
*******************************/
/*******************************
Site Overrides
*******************************/
/*******************************
Variations
*******************************/
.ui.square.embed {
padding-bottom: 100%;
}
.ui[class*="4:3"].embed {
padding-bottom: 75%;
}
.ui[class*="16:9"].embed {
padding-bottom: 56.25%;
}
.ui[class*="21:9"].embed {
padding-bottom: 42.85714286%;
}

659
web/semantic/dist/components/embed.js vendored Normal file
View file

@ -0,0 +1,659 @@
/*!
* # Semantic UI 2.1.7 - Video
* http://github.com/semantic-org/semantic-ui/
*
*
* Copyright 2015 Contributors
* Released under the MIT license
* http://opensource.org/licenses/MIT
*
*/
;(function ($, window, document, undefined) {
"use strict";
$.fn.embed = function(parameters) {
var
$allModules = $(this),
moduleSelector = $allModules.selector || '',
time = new Date().getTime(),
performance = [],
query = arguments[0],
methodInvoked = (typeof query == 'string'),
queryArguments = [].slice.call(arguments, 1),
returnedValue
;
$allModules
.each(function() {
var
settings = ( $.isPlainObject(parameters) )
? $.extend(true, {}, $.fn.embed.settings, parameters)
: $.extend({}, $.fn.embed.settings),
selector = settings.selector,
className = settings.className,
sources = settings.sources,
error = settings.error,
metadata = settings.metadata,
namespace = settings.namespace,
templates = settings.templates,
eventNamespace = '.' + namespace,
moduleNamespace = 'module-' + namespace,
$window = $(window),
$module = $(this),
$placeholder = $module.find(selector.placeholder),
$icon = $module.find(selector.icon),
$embed = $module.find(selector.embed),
element = this,
instance = $module.data(moduleNamespace),
module
;
module = {
initialize: function() {
module.debug('Initializing embed');
module.determine.autoplay();
module.create();
module.bind.events();
module.instantiate();
},
instantiate: function() {
module.verbose('Storing instance of module', module);
instance = module;
$module
.data(moduleNamespace, module)
;
},
destroy: function() {
module.verbose('Destroying previous instance of embed');
module.reset();
$module
.removeData(moduleNamespace)
.off(eventNamespace)
;
},
refresh: function() {
module.verbose('Refreshing selector cache');
$placeholder = $module.find(selector.placeholder);
$icon = $module.find(selector.icon);
$embed = $module.find(selector.embed);
},
bind: {
events: function() {
if( module.has.placeholder() ) {
module.debug('Adding placeholder events');
$module
.on('click' + eventNamespace, selector.placeholder, module.createAndShow)
.on('click' + eventNamespace, selector.icon, module.createAndShow)
;
}
}
},
create: function() {
var
placeholder = module.get.placeholder()
;
if(placeholder) {
module.createPlaceholder();
}
else {
module.createAndShow();
}
},
createPlaceholder: function(placeholder) {
var
icon = module.get.icon(),
url = module.get.url(),
embed = module.generate.embed(url)
;
placeholder = placeholder || module.get.placeholder();
$module.html( templates.placeholder(placeholder, icon) );
module.debug('Creating placeholder for embed', placeholder, icon);
},
createEmbed: function(url) {
module.refresh();
url = url || module.get.url();
$embed = $('<div/>')
.addClass(className.embed)
.html( module.generate.embed(url) )
.appendTo($module)
;
settings.onCreate.call(element, url);
module.debug('Creating embed object', $embed);
},
createAndShow: function() {
module.createEmbed();
module.show();
},
// sets new embed
change: function(source, id, url) {
module.debug('Changing video to ', source, id, url);
$module
.data(metadata.source, source)
.data(metadata.id, id)
.data(metadata.url, url)
;
module.create();
},
// clears embed
reset: function() {
module.debug('Clearing embed and showing placeholder');
module.remove.active();
module.remove.embed();
module.showPlaceholder();
settings.onReset.call(element);
},
// shows current embed
show: function() {
module.debug('Showing embed');
module.set.active();
settings.onDisplay.call(element);
},
hide: function() {
module.debug('Hiding embed');
module.showPlaceholder();
},
showPlaceholder: function() {
module.debug('Showing placeholder image');
module.remove.active();
settings.onPlaceholderDisplay.call(element);
},
get: {
id: function() {
return settings.id || $module.data(metadata.id);
},
placeholder: function() {
return settings.placeholder || $module.data(metadata.placeholder);
},
icon: function() {
return (settings.icon)
? settings.icon
: ($module.data(metadata.icon) !== undefined)
? $module.data(metadata.icon)
: module.determine.icon()
;
},
source: function(url) {
return (settings.source)
? settings.source
: ($module.data(metadata.source) !== undefined)
? $module.data(metadata.source)
: module.determine.source()
;
},
type: function() {
var source = module.get.source();
return (sources[source] !== undefined)
? sources[source].type
: false
;
},
url: function() {
return (settings.url)
? settings.url
: ($module.data(metadata.url) !== undefined)
? $module.data(metadata.url)
: module.determine.url()
;
}
},
determine: {
autoplay: function() {
if(module.should.autoplay()) {
settings.autoplay = true;
}
},
source: function(url) {
var
matchedSource = false
;
url = url || module.get.url();
if(url) {
$.each(sources, function(name, source) {
if(url.search(source.domain) !== -1) {
matchedSource = name;
return false;
}
});
}
return matchedSource;
},
icon: function() {
var
source = module.get.source()
;
return (sources[source] !== undefined)
? sources[source].icon
: false
;
},
url: function() {
var
id = settings.id || $module.data(metadata.id),
source = settings.source || $module.data(metadata.source),
url
;
url = (sources[source] !== undefined)
? sources[source].url.replace('{id}', id)
: false
;
if(url) {
$module.data(metadata.url, url);
}
return url;
}
},
set: {
active: function() {
$module.addClass(className.active);
}
},
remove: {
active: function() {
$module.removeClass(className.active);
},
embed: function() {
$embed.empty();
}
},
encode: {
parameters: function(parameters) {
var
urlString = [],
index
;
for (index in parameters) {
urlString.push( encodeURIComponent(index) + '=' + encodeURIComponent( parameters[index] ) );
}
return urlString.join('&amp;');
}
},
generate: {
embed: function(url) {
module.debug('Generating embed html');
var
source = module.get.source(),
html,
parameters
;
url = module.get.url(url);
if(url) {
parameters = module.generate.parameters(source);
html = templates.iframe(url, parameters);
}
else {
module.error(error.noURL, $module);
}
return html;
},
parameters: function(source, extraParameters) {
var
parameters = (sources[source] && sources[source].parameters !== undefined)
? sources[source].parameters(settings)
: {}
;
extraParameters = extraParameters || settings.parameters;
if(extraParameters) {
parameters = $.extend({}, parameters, extraParameters);
}
parameters = settings.onEmbed(parameters);
return module.encode.parameters(parameters);
}
},
has: {
placeholder: function() {
return settings.placeholder || $module.data(metadata.placeholder);
}
},
should: {
autoplay: function() {
return (settings.autoplay === 'auto')
? (settings.placeholder || $module.data(metadata.placeholder) !== undefined)
: settings.autoplay
;
}
},
is: {
video: function() {
return module.get.type() == 'video';
}
},
setting: function(name, value) {
module.debug('Changing setting', name, value);
if( $.isPlainObject(name) ) {
$.extend(true, settings, name);
}
else if(value !== undefined) {
settings[name] = value;
}
else {
return settings[name];
}
},
internal: function(name, value) {
if( $.isPlainObject(name) ) {
$.extend(true, module, name);
}
else if(value !== undefined) {
module[name] = value;
}
else {
return module[name];
}
},
debug: function() {
if(settings.debug) {
if(settings.performance) {
module.performance.log(arguments);
}
else {
module.debug = Function.prototype.bind.call(console.info, console, settings.name + ':');
module.debug.apply(console, arguments);
}
}
},
verbose: function() {
if(settings.verbose && settings.debug) {
if(settings.performance) {
module.performance.log(arguments);
}
else {
module.verbose = Function.prototype.bind.call(console.info, console, settings.name + ':');
module.verbose.apply(console, arguments);
}
}
},
error: function() {
module.error = Function.prototype.bind.call(console.error, console, settings.name + ':');
module.error.apply(console, arguments);
},
performance: {
log: function(message) {
var
currentTime,
executionTime,
previousTime
;
if(settings.performance) {
currentTime = new Date().getTime();
previousTime = time || currentTime;
executionTime = currentTime - previousTime;
time = currentTime;
performance.push({
'Name' : message[0],
'Arguments' : [].slice.call(message, 1) || '',
'Element' : element,
'Execution Time' : executionTime
});
}
clearTimeout(module.performance.timer);
module.performance.timer = setTimeout(module.performance.display, 500);
},
display: function() {
var
title = settings.name + ':',
totalTime = 0
;
time = false;
clearTimeout(module.performance.timer);
$.each(performance, function(index, data) {
totalTime += data['Execution Time'];
});
title += ' ' + totalTime + 'ms';
if(moduleSelector) {
title += ' \'' + moduleSelector + '\'';
}
if($allModules.length > 1) {
title += ' ' + '(' + $allModules.length + ')';
}
if( (console.group !== undefined || console.table !== undefined) && performance.length > 0) {
console.groupCollapsed(title);
if(console.table) {
console.table(performance);
}
else {
$.each(performance, function(index, data) {
console.log(data['Name'] + ': ' + data['Execution Time']+'ms');
});
}
console.groupEnd();
}
performance = [];
}
},
invoke: function(query, passedArguments, context) {
var
object = instance,
maxDepth,
found,
response
;
passedArguments = passedArguments || queryArguments;
context = element || context;
if(typeof query == 'string' && object !== undefined) {
query = query.split(/[\. ]/);
maxDepth = query.length - 1;
$.each(query, function(depth, value) {
var camelCaseValue = (depth != maxDepth)
? value + query[depth + 1].charAt(0).toUpperCase() + query[depth + 1].slice(1)
: query
;
if( $.isPlainObject( object[camelCaseValue] ) && (depth != maxDepth) ) {
object = object[camelCaseValue];
}
else if( object[camelCaseValue] !== undefined ) {
found = object[camelCaseValue];
return false;
}
else if( $.isPlainObject( object[value] ) && (depth != maxDepth) ) {
object = object[value];
}
else if( object[value] !== undefined ) {
found = object[value];
return false;
}
else {
module.error(error.method, query);
return false;
}
});
}
if ( $.isFunction( found ) ) {
response = found.apply(context, passedArguments);
}
else if(found !== undefined) {
response = found;
}
if($.isArray(returnedValue)) {
returnedValue.push(response);
}
else if(returnedValue !== undefined) {
returnedValue = [returnedValue, response];
}
else if(response !== undefined) {
returnedValue = response;
}
return found;
}
};
if(methodInvoked) {
if(instance === undefined) {
module.initialize();
}
module.invoke(query);
}
else {
if(instance !== undefined) {
instance.invoke('destroy');
}
module.initialize();
}
})
;
return (returnedValue !== undefined)
? returnedValue
: this
;
};
$.fn.embed.settings = {
name : 'Embed',
namespace : 'embed',
debug : false,
verbose : false,
performance : true,
icon : false,
source : false,
url : false,
id : false,
// standard video settings
autoplay : 'auto',
color : '#444444',
hd : true,
brandedUI : false,
// additional parameters to include with the embed
parameters: false,
onDisplay : function() {},
onPlaceholderDisplay : function() {},
onReset : function() {},
onCreate : function(url) {},
onEmbed : function(parameters) {
return parameters;
},
metadata : {
id : 'id',
icon : 'icon',
placeholder : 'placeholder',
source : 'source',
url : 'url'
},
error : {
noURL : 'No URL specified',
method : 'The method you called is not defined'
},
className : {
active : 'active',
embed : 'embed'
},
selector : {
embed : '.embed',
placeholder : '.placeholder',
icon : '.icon'
},
sources: {
youtube: {
name : 'youtube',
type : 'video',
icon : 'video play',
domain : 'youtube.com',
url : '//www.youtube.com/embed/{id}',
parameters: function(settings) {
return {
autohide : !settings.brandedUI,
autoplay : settings.autoplay,
color : settings.colors || undefined,
hq : settings.hd,
jsapi : settings.api,
modestbranding : !settings.brandedUI
};
}
},
vimeo: {
name : 'vimeo',
type : 'video',
icon : 'video play',
domain : 'vimeo.com',
url : '//player.vimeo.com/video/{id}',
parameters: function(settings) {
return {
api : settings.api,
autoplay : settings.autoplay,
byline : settings.brandedUI,
color : settings.colors || undefined,
portrait : settings.brandedUI,
title : settings.brandedUI
};
}
}
},
templates: {
iframe : function(url, parameters) {
return ''
+ '<iframe src="' + url + '?' + parameters + '"'
+ ' width="100%" height="100%"'
+ ' frameborder="0" scrolling="no" webkitAllowFullScreen mozallowfullscreen allowFullScreen></iframe>'
;
},
placeholder : function(image, icon) {
var
html = ''
;
if(icon) {
html += '<i class="' + icon + ' icon"></i>';
}
if(image) {
html += '<img class="placeholder" src="' + image + '">';
}
return html;
}
},
// NOT YET IMPLEMENTED
api : true,
onPause : function() {},
onPlay : function() {},
onStop : function() {}
};
})( jQuery, window, document );

View file

@ -0,0 +1,10 @@
/*!
* # Semantic UI 2.1.7 - Video
* http://github.com/semantic-org/semantic-ui/
*
*
* Copyright 2015 Contributors
* Released under the MIT license
* http://opensource.org/licenses/MIT
*
*/.ui.embed{position:relative;max-width:100%;height:0;overflow:hidden;background:#dcddde;padding-bottom:56.25%}.ui.embed embed,.ui.embed iframe,.ui.embed object{position:absolute;border:none;width:100%;height:100%;top:0;left:0;margin:0;padding:0}.ui.embed>.embed{display:none}.ui.embed>.placeholder{position:absolute;cursor:pointer;top:0;left:0;display:block;width:100%;height:100%;background-color:radial-gradient(transparent 45%,rgba(0,0,0,.3))}.ui.embed>.icon{cursor:pointer;position:absolute;top:0;left:0;width:100%;height:100%;z-index:2}.ui.embed>.icon:after{position:absolute;top:0;left:0;width:100%;height:100%;z-index:3;content:'';background:-webkit-radial-gradient(transparent 45%,rgba(0,0,0,.3));background:radial-gradient(transparent 45%,rgba(0,0,0,.3));opacity:.5;-webkit-transition:opacity .5s ease;transition:opacity .5s ease}.ui.embed>.icon:before{position:absolute;top:50%;left:50%;-webkit-transform:translateX(-50%) translateY(-50%);-ms-transform:translateX(-50%) translateY(-50%);transform:translateX(-50%) translateY(-50%);color:#fff;font-size:6rem;text-shadow:0 2px 10px rgba(34,36,38,.2);-webkit-transition:opacity .5s ease,color .5s ease;transition:opacity .5s ease,color .5s ease;z-index:10}.ui.embed .icon:hover:after{background:-webkit-radial-gradient(transparent 45%,rgba(0,0,0,.3));background:radial-gradient(transparent 45%,rgba(0,0,0,.3));opacity:1}.ui.embed .icon:hover:before{color:#fff}.ui.active.embed>.icon,.ui.active.embed>.placeholder{display:none}.ui.active.embed>.embed{display:block}.ui.square.embed{padding-bottom:100%}.ui[class*="4:3"].embed{padding-bottom:75%}.ui[class*="16:9"].embed{padding-bottom:56.25%}.ui[class*="21:9"].embed{padding-bottom:42.85714286%}

File diff suppressed because one or more lines are too long

77
web/semantic/dist/components/feed.css vendored Normal file → Executable file
View file

@ -1,9 +1,9 @@
/*! /*!
* # Semantic UI 1.11.4 - Feed * # Semantic UI 2.1.7 - Feed
* http://github.com/semantic-org/semantic-ui/ * http://github.com/semantic-org/semantic-ui/
* *
* *
* Copyright 2014 Contributorss * Copyright 2015 Contributors
* Released under the MIT license * Released under the MIT license
* http://opensource.org/licenses/MIT * http://opensource.org/licenses/MIT
* *
@ -21,7 +21,7 @@
margin-top: 0em; margin-top: 0em;
} }
.ui.feed:last-child { .ui.feed:last-child {
margin-top: 0em; margin-bottom: 0em;
} }
@ -32,9 +32,17 @@
/* Event */ /* Event */
.ui.feed > .event { .ui.feed > .event {
display: table; display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-box-orient: horizontal;
-webkit-box-direction: normal;
-webkit-flex-direction: row;
-ms-flex-direction: row;
flex-direction: row;
width: 100%; width: 100%;
padding: 0.5rem 0em; padding: 0.21428571rem 0em;
margin: 0em; margin: 0em;
background: none; background: none;
border-top: none; border-top: none;
@ -49,10 +57,16 @@
/* Event Label */ /* Event Label */
.ui.feed > .event > .label { .ui.feed > .event > .label {
display: table-cell; display: block;
-webkit-box-flex: 0;
-webkit-flex: 0 0 auto;
-ms-flex: 0 0 auto;
flex: 0 0 auto;
width: 2.5em; width: 2.5em;
height: 2.5em; height: auto;
vertical-align: top; -webkit-align-self: stretch;
-ms-flex-item-align: stretch;
align-self: stretch;
text-align: left; text-align: left;
} }
.ui.feed > .event > .label .icon { .ui.feed > .event > .label .icon {
@ -71,13 +85,24 @@
border-radius: 500rem; border-radius: 500rem;
} }
.ui.feed > .event > .label + .content { .ui.feed > .event > .label + .content {
padding: 0.5em 0em 0.5em 1.25em; margin: 0.5em 0em 0.35714286em 1.14285714em;
} }
/*--------------
Content
---------------*/
/* Content */ /* Content */
.ui.feed > .event > .content { .ui.feed > .event > .content {
display: table-cell; display: block;
vertical-align: top; -webkit-box-flex: 1;
-webkit-flex: 1 1 auto;
-ms-flex: 1 1 auto;
flex: 1 1 auto;
-webkit-align-self: stretch;
-ms-flex-item-align: stretch;
align-self: stretch;
text-align: left; text-align: left;
word-wrap: break-word; word-wrap: break-word;
} }
@ -111,14 +136,14 @@
margin: 0em; margin: 0em;
font-size: 1em; font-size: 1em;
font-weight: bold; font-weight: bold;
color: rgba(0, 0, 0, 0.8); color: rgba(0, 0, 0, 0.87);
} }
/* Summary Image */ /* Summary Image */
.ui.feed > .event > .content .summary img { .ui.feed > .event > .content .summary img {
display: inline-block; display: inline-block;
width: auto; width: auto;
height: 2em; height: 10em;
margin: -0.25em 0.25em 0em 0em; margin: -0.25em 0.25em 0em 0em;
border-radius: 0.25em; border-radius: 0.25em;
vertical-align: middle; vertical-align: middle;
@ -137,7 +162,7 @@
.ui.feed > .event > .content .user img { .ui.feed > .event > .content .user img {
margin: -0.25em 0.25em 0em 0em; margin: -0.25em 0.25em 0em 0em;
width: auto; width: auto;
height: 2em; height: 10em;
vertical-align: middle; vertical-align: middle;
} }
@ -151,7 +176,7 @@
display: inline-block; display: inline-block;
float: none; float: none;
font-weight: normal; font-weight: normal;
font-size: 0.875em; font-size: 0.85714286em;
font-style: normal; font-style: normal;
margin: 0em 0em 0em 0.5em; margin: 0em 0em 0em 0.5em;
padding: 0em; padding: 0em;
@ -166,7 +191,7 @@
margin: 0.5em 0em 0em; margin: 0.5em 0em 0em;
background: none; background: none;
padding: 0em; padding: 0em;
color: rgba(0, 0, 0, 0.8); color: rgba(0, 0, 0, 0.87);
} }
/* Images */ /* Images */
@ -178,11 +203,11 @@
/* Text */ /* Text */
.ui.feed > .event > .content .extra.text { .ui.feed > .event > .content .extra.text {
padding: 0.5em 1em; padding: 0em;
border-left: 3px solid rgba(0, 0, 0, 0.2); border-left: none;
font-size: 1em; font-size: 1em;
max-width: 500px; max-width: 500px;
line-height: 1.33; line-height: 1.4285em;
} }
/*-------------- /*--------------
@ -191,7 +216,7 @@
.ui.feed > .event > .content .meta { .ui.feed > .event > .content .meta {
display: inline-block; display: inline-block;
font-size: 0.875em; font-size: 0.85714286em;
margin: 0.5em 0em 0em; margin: 0.5em 0em 0em;
background: none; background: none;
border: none; border: none;
@ -239,13 +264,13 @@
cursor: pointer; cursor: pointer;
opacity: 1; opacity: 1;
color: rgba(0, 0, 0, 0.5); color: rgba(0, 0, 0, 0.5);
-webkit-transition: color 0.2s ease; -webkit-transition: color 0.1s ease;
transition: color 0.2s ease; transition: color 0.1s ease;
} }
.ui.feed > .event > .content .meta a:hover, .ui.feed > .event > .content .meta a:hover,
.ui.feed > .event > .content .meta a:hover .icon, .ui.feed > .event > .content .meta a:hover .icon,
.ui.feed > .event > .content .meta > .icon:hover { .ui.feed > .event > .content .meta > .icon:hover {
color: rgba(0, 0, 0, 0.8); color: rgba(0, 0, 0, 0.95);
} }
@ -254,13 +279,13 @@
*******************************/ *******************************/
.ui.small.feed { .ui.small.feed {
font-size: 0.9em; font-size: 0.92857143rem;
} }
.ui.feed { .ui.feed {
font-size: 1em; font-size: 1rem;
} }
.ui.large.feed { .ui.large.feed {
font-size: 1.1em; font-size: 1.14285714rem;
} }

6
web/semantic/dist/components/feed.min.css vendored Normal file → Executable file
View file

@ -1,10 +1,10 @@
/*! /*!
* # Semantic UI 1.11.4 - Feed * # Semantic UI 2.1.7 - Feed
* http://github.com/semantic-org/semantic-ui/ * http://github.com/semantic-org/semantic-ui/
* *
* *
* Copyright 2014 Contributorss * Copyright 2015 Contributors
* Released under the MIT license * Released under the MIT license
* http://opensource.org/licenses/MIT * http://opensource.org/licenses/MIT
* *
*/.ui.feed{margin:1em 0}.ui.feed:first-child,.ui.feed:last-child{margin-top:0}.ui.feed>.event{display:table;width:100%;padding:.5rem 0;margin:0;background:0 0;border-top:none}.ui.feed>.event:first-child{border-top:0;padding-top:0}.ui.feed>.event:last-child{padding-bottom:0}.ui.feed>.event>.label{display:table-cell;width:2.5em;height:2.5em;vertical-align:top;text-align:left}.ui.feed>.event>.label .icon{opacity:1;font-size:1.5em;width:100%;padding:.25em;background:0 0;border:none;border-radius:none;color:rgba(0,0,0,.6)}.ui.feed>.event>.label img{width:100%;height:auto;border-radius:500rem}.ui.feed>.event>.label+.content{padding:.5em 0 .5em 1.25em}.ui.feed>.event>.content{display:table-cell;vertical-align:top;text-align:left;word-wrap:break-word}.ui.feed>.event:last-child>.content{padding-bottom:0}.ui.feed>.event>.content a{cursor:pointer}.ui.feed>.event>.content .date{margin:-.5rem 0 0;padding:0;font-weight:400;font-size:1em;font-style:normal;color:rgba(0,0,0,.4)}.ui.feed>.event>.content .summary{margin:0;font-size:1em;font-weight:700;color:rgba(0,0,0,.8)}.ui.feed>.event>.content .summary img{display:inline-block;width:auto;height:2em;margin:-.25em .25em 0 0;border-radius:.25em;vertical-align:middle}.ui.feed>.event>.content .user{display:inline-block;font-weight:700;margin-right:0;vertical-align:baseline}.ui.feed>.event>.content .user img{margin:-.25em .25em 0 0;width:auto;height:2em;vertical-align:middle}.ui.feed>.event>.content .summary>.date{display:inline-block;float:none;font-weight:400;font-size:.875em;font-style:normal;margin:0 0 0 .5em;padding:0;color:rgba(0,0,0,.4)}.ui.feed>.event>.content .extra{margin:.5em 0 0;background:0 0;padding:0;color:rgba(0,0,0,.8)}.ui.feed>.event>.content .extra.images img{display:inline-block;margin:0 .25em 0 0;width:6em}.ui.feed>.event>.content .extra.text{padding:.5em 1em;border-left:3px solid rgba(0,0,0,.2);font-size:1em;max-width:500px;line-height:1.33}.ui.feed>.event>.content .meta{display:inline-block;font-size:.875em;margin:.5em 0 0;background:0 0;border:none;border-radius:0;box-shadow:none;padding:0;color:rgba(0,0,0,.6)}.ui.feed>.event>.content .meta>*{position:relative;margin-left:.75em}.ui.feed>.event>.content .meta>:after{content:'';color:rgba(0,0,0,.2);top:0;left:-1em;opacity:1;position:absolute;vertical-align:top}.ui.feed>.event>.content .meta .like{color:'';-webkit-transition:.2s color ease;transition:.2s color ease}.ui.feed>.event>.content .meta .like:hover .icon{color:#ff2733}.ui.feed>.event>.content .meta .active.like .icon{color:#ef404a}.ui.feed>.event>.content .meta>:first-child{margin-left:0}.ui.feed>.event>.content .meta>:first-child::after{display:none}.ui.feed>.event>.content .meta a,.ui.feed>.event>.content .meta>.icon{cursor:pointer;opacity:1;color:rgba(0,0,0,.5);-webkit-transition:color .2s ease;transition:color .2s ease}.ui.feed>.event>.content .meta a:hover,.ui.feed>.event>.content .meta a:hover .icon,.ui.feed>.event>.content .meta>.icon:hover{color:rgba(0,0,0,.8)}.ui.small.feed{font-size:.9em}.ui.feed{font-size:1em}.ui.large.feed{font-size:1.1em} */.ui.feed{margin:1em 0}.ui.feed:first-child{margin-top:0}.ui.feed:last-child{margin-bottom:0}.ui.feed>.event{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;width:100%;padding:.21428571rem 0;margin:0;background:0 0;border-top:none}.ui.feed>.event:first-child{border-top:0;padding-top:0}.ui.feed>.event:last-child{padding-bottom:0}.ui.feed>.event>.label{display:block;-webkit-box-flex:0;-webkit-flex:0 0 auto;-ms-flex:0 0 auto;flex:0 0 auto;width:2.5em;height:auto;-webkit-align-self:stretch;-ms-flex-item-align:stretch;align-self:stretch;text-align:left}.ui.feed>.event>.label .icon{opacity:1;font-size:1.5em;width:100%;padding:.25em;background:0 0;border:none;border-radius:none;color:rgba(0,0,0,.6)}.ui.feed>.event>.label img{width:100%;height:auto;border-radius:500rem}.ui.feed>.event>.label+.content{margin:.5em 0 .35714286em 1.14285714em}.ui.feed>.event>.content{display:block;-webkit-box-flex:1;-webkit-flex:1 1 auto;-ms-flex:1 1 auto;flex:1 1 auto;-webkit-align-self:stretch;-ms-flex-item-align:stretch;align-self:stretch;text-align:left;word-wrap:break-word}.ui.feed>.event:last-child>.content{padding-bottom:0}.ui.feed>.event>.content a{cursor:pointer}.ui.feed>.event>.content .date{margin:-.5rem 0 0;padding:0;font-weight:400;font-size:1em;font-style:normal;color:rgba(0,0,0,.4)}.ui.feed>.event>.content .summary{margin:0;font-size:1em;font-weight:700;color:rgba(0,0,0,.87)}.ui.feed>.event>.content .summary img{display:inline-block;width:auto;height:10em;margin:-.25em .25em 0 0;border-radius:.25em;vertical-align:middle}.ui.feed>.event>.content .user{display:inline-block;font-weight:700;margin-right:0;vertical-align:baseline}.ui.feed>.event>.content .user img{margin:-.25em .25em 0 0;width:auto;height:10em;vertical-align:middle}.ui.feed>.event>.content .summary>.date{display:inline-block;float:none;font-weight:400;font-size:.85714286em;font-style:normal;margin:0 0 0 .5em;padding:0;color:rgba(0,0,0,.4)}.ui.feed>.event>.content .extra{margin:.5em 0 0;background:0 0;padding:0;color:rgba(0,0,0,.87)}.ui.feed>.event>.content .extra.images img{display:inline-block;margin:0 .25em 0 0;width:6em}.ui.feed>.event>.content .extra.text{padding:0;border-left:none;font-size:1em;max-width:500px;line-height:1.4285em}.ui.feed>.event>.content .meta{display:inline-block;font-size:.85714286em;margin:.5em 0 0;background:0 0;border:none;border-radius:0;box-shadow:none;padding:0;color:rgba(0,0,0,.6)}.ui.feed>.event>.content .meta>*{position:relative;margin-left:.75em}.ui.feed>.event>.content .meta>:after{content:'';color:rgba(0,0,0,.2);top:0;left:-1em;opacity:1;position:absolute;vertical-align:top}.ui.feed>.event>.content .meta .like{color:'';-webkit-transition:.2s color ease;transition:.2s color ease}.ui.feed>.event>.content .meta .like:hover .icon{color:#ff2733}.ui.feed>.event>.content .meta .active.like .icon{color:#ef404a}.ui.feed>.event>.content .meta>:first-child{margin-left:0}.ui.feed>.event>.content .meta>:first-child::after{display:none}.ui.feed>.event>.content .meta a,.ui.feed>.event>.content .meta>.icon{cursor:pointer;opacity:1;color:rgba(0,0,0,.5);-webkit-transition:color .1s ease;transition:color .1s ease}.ui.feed>.event>.content .meta a:hover,.ui.feed>.event>.content .meta a:hover .icon,.ui.feed>.event>.content .meta>.icon:hover{color:rgba(0,0,0,.95)}.ui.small.feed{font-size:.92857143rem}.ui.feed{font-size:1rem}.ui.large.feed{font-size:1.14285714rem}

14
web/semantic/dist/components/flag.css vendored Normal file → Executable file
View file

@ -1,9 +1,9 @@
/*! /*!
* # Semantic UI 1.11.4 - Flag * # Semantic UI 2.1.7 - Flag
* http://github.com/semantic-org/semantic-ui/ * http://github.com/semantic-org/semantic-ui/
* *
* *
* Copyright 2014 Contributors * Copyright 2015 Contributors
* Released under the MIT license * Released under the MIT license
* http://opensource.org/licenses/MIT * http://opensource.org/licenses/MIT
* *
@ -32,7 +32,7 @@ i.flag:not(.icon) {
i.flag:not(.icon):before { i.flag:not(.icon):before {
display: inline-block; display: inline-block;
content: ''; content: '';
background: url("../themes/default/assets/images/flags.png") no-repeat 0px 0px; background: url("../themes/default/assets/images/flags.png") no-repeat -108px -1976px;
width: 16px; width: 16px;
height: 11px; height: 11px;
} }
@ -806,6 +806,10 @@ i.flag.sc:before,
i.flag.seychelles:before { i.flag.seychelles:before {
background-position: -72px -988px; background-position: -72px -988px;
} }
i.flag.gb.sct:before,
i.flag.scotland:before {
background-position: -72px -1014px;
}
i.flag.sd:before, i.flag.sd:before,
i.flag.sudan:before { i.flag.sudan:before {
background-position: -72px -1040px; background-position: -72px -1040px;
@ -988,6 +992,10 @@ i.flag.vu:before,
i.flag.vanuatu:before { i.flag.vanuatu:before {
background-position: -108px -182px; background-position: -108px -182px;
} }
i.flag.gb.wls:before,
i.flag.wales:before {
background-position: -108px -208px;
}
i.flag.wf:before, i.flag.wf:before,
i.flag.wallis.and.futuna:before { i.flag.wallis.and.futuna:before {
background-position: -108px -234px; background-position: -108px -234px;

6
web/semantic/dist/components/flag.min.css vendored Normal file → Executable file

File diff suppressed because one or more lines are too long

480
web/semantic/dist/components/form.css vendored Normal file → Executable file
View file

@ -1,9 +1,9 @@
/*! /*!
* # Semantic UI 1.11.4 - Form * # Semantic UI 2.1.7 - Form
* http://github.com/semantic-org/semantic-ui/ * http://github.com/semantic-org/semantic-ui/
* *
* *
* Copyright 2014 Contributors * Copyright 2015 Contributors
* Released under the MIT license * Released under the MIT license
* http://opensource.org/licenses/MIT * http://opensource.org/licenses/MIT
* *
@ -36,15 +36,18 @@
Field Field
---------------------*/ ---------------------*/
.ui.form .fields .field,
.ui.form .field { .ui.form .field {
clear: both; clear: both;
margin: 0em 0em 1em; margin: 0em 0em 1em;
} }
.ui.form .fields:last-child, .ui.form .field:last-child,
.ui.form .field:last-child { .ui.form .fields:last-child .field {
margin-bottom: 0em; margin-bottom: 0em;
} }
.ui.form .fields .field {
clear: both;
margin: 0em 0em 1em;
}
/*-------------------- /*--------------------
Labels Labels
@ -52,25 +55,9 @@
.ui.form .field > label { .ui.form .field > label {
display: block; display: block;
margin: 0em 0em 0.2857rem 0em; margin: 0em 0em 0.28571429rem 0em;
color: rgba(0, 0, 0, 0.8); color: rgba(0, 0, 0, 0.87);
font-size: 0.9285em; font-size: 0.92857143em;
font-weight: bold;
text-transform: none;
}
.ui.form .grouped.fields > label {
margin: 0em 0em 0.2857rem 0em;
color: rgba(0, 0, 0, 0.8);
font-size: 0.9285em;
font-weight: bold;
text-transform: none;
}
.ui.form .inline.fields > label {
display: inline-block;
vertical-align: middle;
margin: 0em 1em 0em 0em;
color: rgba(0, 0, 0, 0.8);
font-size: 0.9285em;
font-weight: bold; font-weight: bold;
text-transform: none; text-transform: none;
} }
@ -90,11 +77,16 @@
.ui.form input[type="tel"], .ui.form input[type="tel"],
.ui.form input[type="time"], .ui.form input[type="time"],
.ui.form input[type="text"], .ui.form input[type="text"],
.ui.form input[type="url"], .ui.form input[type="url"] {
.ui.form .ui.input {
width: 100%; width: 100%;
vertical-align: top; vertical-align: top;
} }
/* Set max height on unusual input */
.ui.form ::-webkit-datetime-edit,
.ui.form ::-webkit-inner-spin-button {
height: 1.2142em;
}
.ui.form input:not([type]), .ui.form input:not([type]),
.ui.form input[type="date"], .ui.form input[type="date"],
.ui.form input[type="datetime-local"], .ui.form input[type="datetime-local"],
@ -112,36 +104,39 @@
-webkit-appearance: none; -webkit-appearance: none;
tap-highlight-color: rgba(255, 255, 255, 0); tap-highlight-color: rgba(255, 255, 255, 0);
line-height: 1.2142em; line-height: 1.2142em;
padding: 0.67861em 1em; padding: 0.67861429em 1em;
font-size: 1em; font-size: 1em;
background: #ffffff; background: #ffffff;
border: 1px solid rgba(39, 41, 43, 0.15); border: 1px solid rgba(34, 36, 38, 0.15);
color: rgba(0, 0, 0, 0.8); color: rgba(0, 0, 0, 0.87);
border-radius: 0.2857rem; border-radius: 0.28571429rem;
box-shadow: 0em 0em 0em 0em transparent inset; box-shadow: 0em 0em 0em 0em transparent inset;
-webkit-transition: background-color 0.2s ease, color 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease; -webkit-transition: color 0.1s ease, border-color 0.1s ease;
transition: background-color 0.2s ease, color 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease; transition: color 0.1s ease, border-color 0.1s ease;
} }
.ui.textarea,
/* Text Area */
.ui.form textarea { .ui.form textarea {
margin: 0em; margin: 0em;
-webkit-appearance: none; -webkit-appearance: none;
tap-highlight-color: rgba(255, 255, 255, 0); tap-highlight-color: rgba(255, 255, 255, 0);
padding: 0.78571em 1em; padding: 0.78571429em 1em;
background: #ffffff; background: #ffffff;
border: 1px solid rgba(39, 41, 43, 0.15); border: 1px solid rgba(34, 36, 38, 0.15);
outline: none; outline: none;
color: rgba(0, 0, 0, 0.8); color: rgba(0, 0, 0, 0.87);
border-radius: 0.2857rem; border-radius: 0.28571429rem;
box-shadow: 0em 0em 0em 0em transparent inset; box-shadow: 0em 0em 0em 0em transparent inset;
-webkit-transition: background-color 0.2s ease, color 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease; -webkit-transition: color 0.1s ease, border-color 0.1s ease;
transition: background-color 0.2s ease, color 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease; transition: color 0.1s ease, border-color 0.1s ease;
font-size: 1em; font-size: 1em;
line-height: 1.2857;
resize: vertical;
}
.ui.form textarea:not([rows]) {
height: 12em; height: 12em;
min-height: 8em; min-height: 8em;
max-height: 24em; max-height: 24em;
line-height: 1.2857;
resize: vertical;
} }
.ui.form textarea, .ui.form textarea,
.ui.form input[type="checkbox"] { .ui.form input[type="checkbox"] {
@ -165,39 +160,79 @@
height: auto; height: auto;
width: 100%; width: 100%;
background: #ffffff; background: #ffffff;
border: 1px solid rgba(39, 41, 43, 0.15); border: 1px solid rgba(34, 36, 38, 0.15);
border-radius: 0.2857rem; border-radius: 0.28571429rem;
box-shadow: 0em 0em 0em 0em transparent inset; box-shadow: 0em 0em 0em 0em transparent inset;
padding: 0.62em 1em; padding: 0.62em 1em;
color: rgba(0, 0, 0, 0.8); color: rgba(0, 0, 0, 0.87);
-webkit-transition: background-color 0.2s ease, color 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease; -webkit-transition: color 0.1s ease, border-color 0.1s ease;
transition: background-color 0.2s ease, color 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease; transition: color 0.1s ease, border-color 0.1s ease;
} }
/*-------------------- /*--------------------
Dropdown Dropdown
---------------------*/ ---------------------*/
/* Block */
.ui.form .field > .selection.dropdown { .ui.form .field > .selection.dropdown {
width: 100%; width: 100%;
} }
.ui.form .field > .selection.dropdown > .dropdown.icon { .ui.form .field > .selection.dropdown > .dropdown.icon {
float: right; float: right;
} }
/* Inline */
.ui.form .inline.fields .field > .selection.dropdown,
.ui.form .inline.field > .selection.dropdown { .ui.form .inline.field > .selection.dropdown {
width: auto; width: auto;
} }
.ui.form .inline.fields .field > .selection.dropdown > .dropdown.icon,
.ui.form .inline.field > .selection.dropdown > .dropdown.icon { .ui.form .inline.field > .selection.dropdown > .dropdown.icon {
float: none; float: none;
} }
/*-------------------- /*--------------------
Dividers UI Input
---------------------*/ ---------------------*/
.ui.form .divider {
clear: both; /* Block */
margin: 1em 0em; .ui.form .field .ui.input,
.ui.form .fields .field .ui.input,
.ui.form .wide.field .ui.input {
width: 100%;
}
/* Inline */
.ui.form .inline.fields .field:not(.wide) .ui.input,
.ui.form .inline.field:not(.wide) .ui.input {
width: auto;
vertical-align: middle;
}
/* Auto Input */
.ui.form .fields .field .ui.input input,
.ui.form .field .ui.input input {
width: auto;
}
/* Full Width Input */
.ui.form .ten.fields .ui.input input,
.ui.form .nine.fields .ui.input input,
.ui.form .eight.fields .ui.input input,
.ui.form .seven.fields .ui.input input,
.ui.form .six.fields .ui.input input,
.ui.form .five.fields .ui.input input,
.ui.form .four.fields .ui.input input,
.ui.form .three.fields .ui.input input,
.ui.form .two.fields .ui.input input,
.ui.form .wide.field .ui.input input {
-webkit-box-flex: 1;
-webkit-flex: 1 0 auto;
-ms-flex: 1 0 auto;
flex: 1 0 auto;
width: 0px;
} }
/*-------------------- /*--------------------
@ -220,13 +255,19 @@
---------------------*/ ---------------------*/
.ui.form .field .prompt.label { .ui.form .field .prompt.label {
white-space: nowrap; white-space: normal;
background: #ffffff !important;
border: 1px solid #e0b4b4 !important;
color: #9f3a38 !important;
} }
.ui.form .inline.fields .field .prompt,
.ui.form .inline.field .prompt { .ui.form .inline.field .prompt {
margin: -0.5em 0em -0.5em 1em; vertical-align: top;
margin: -0.25em 0em -0.5em 0.5em;
} }
.ui.form .inline.fields .field .prompt:before,
.ui.form .inline.field .prompt:before { .ui.form .inline.field .prompt:before {
margin-top: -0.3em; border-width: 0px 0px 1px 1px;
bottom: auto; bottom: auto;
right: auto; right: auto;
top: 50%; top: 50%;
@ -239,6 +280,27 @@
*******************************/ *******************************/
/*--------------------
Autofilled
---------------------*/
.ui.form .field.field input:-webkit-autofill {
box-shadow: 0px 0px 0px 100px #fffff0 inset !important;
border-color: #e5dfa1 !important;
}
/* Focus */
.ui.form .field.field input:-webkit-autofill:focus {
box-shadow: 0px 0px 0px 100px #fffff0 inset !important;
border-color: #d5c315 !important;
}
/* Error */
.ui.form .error.error input:-webkit-autofill {
box-shadow: 0px 0px 0px 100px #fffaf0 inset !important;
border-color: #e0b4b4 !important;
}
/*-------------------- /*--------------------
Placeholder Placeholder
---------------------*/ ---------------------*/
@ -246,30 +308,42 @@
/* browsers require these rules separate */ /* browsers require these rules separate */
.ui.form ::-webkit-input-placeholder { .ui.form ::-webkit-input-placeholder {
color: rgba(140, 140, 140, 0.8); color: rgba(140, 140, 140, 0.87);
}
.ui.form ::-ms-input-placeholder {
color: rgba(140, 140, 140, 0.87);
} }
.ui.form ::-moz-placeholder { .ui.form ::-moz-placeholder {
color: rgba(140, 140, 140, 0.8); color: rgba(140, 140, 140, 0.87);
} }
.ui.form :focus::-webkit-input-placeholder { .ui.form :focus::-webkit-input-placeholder {
color: rgba(89, 89, 89, 0.8); color: rgba(89, 89, 89, 0.87);
}
.ui.form :focus::-ms-input-placeholder {
color: rgba(89, 89, 89, 0.87);
} }
.ui.form :focus::-moz-placeholder { .ui.form :focus::-moz-placeholder {
color: rgba(89, 89, 89, 0.8); color: rgba(89, 89, 89, 0.87);
} }
/* Error Placeholder */ /* Error Placeholder */
.ui.form .error ::-webkit-input-placeholder { .ui.form .error ::-webkit-input-placeholder {
color: #e38585; color: #e7bdbc;
}
.ui.form .error ::-ms-input-placeholder {
color: #e7bdbc;
} }
.ui.form .error ::-moz-placeholder { .ui.form .error ::-moz-placeholder {
color: #e38585; color: #e7bdbc;
} }
.ui.form .error :focus::-webkit-input-placeholder { .ui.form .error :focus::-webkit-input-placeholder {
color: #de7171; color: #da9796;
}
.ui.form .error :focus::-ms-input-placeholder {
color: #da9796;
} }
.ui.form .error :focus::-moz-placeholder { .ui.form .error :focus::-moz-placeholder {
color: #de7171; color: #da9796;
} }
/*-------------------- /*--------------------
@ -287,18 +361,18 @@
.ui.form input[type="time"]:focus, .ui.form input[type="time"]:focus,
.ui.form input[type="text"]:focus, .ui.form input[type="text"]:focus,
.ui.form input[type="url"]:focus { .ui.form input[type="url"]:focus {
color: rgba(0, 0, 0, 0.85); color: rgba(0, 0, 0, 0.95);
border-color: rgba(39, 41, 43, 0.3); border-color: #85b7d9;
border-radius: 0em 0.2857rem 0.2857rem 0em; border-radius: 0.28571429rem;
background: #ffffff; background: #ffffff;
box-shadow: 1px 0em 0em 0em rgba(39, 41, 43, 0.3) inset; box-shadow: 0px 0em 0em 0em rgba(34, 36, 38, 0.35) inset;
} }
.ui.form textarea:focus { .ui.form textarea:focus {
color: rgba(0, 0, 0, 0.85); color: rgba(0, 0, 0, 0.95);
border-color: rgba(39, 41, 43, 0.3); border-color: #85b7d9;
border-radius: 0em 0.2857rem 0.2857rem 0em; border-radius: 0.28571429rem;
background: #ffffff; background: #ffffff;
box-shadow: 1px 0em 0em 0em rgba(39, 41, 43, 0.3) inset; box-shadow: 0px 0em 0em 0em rgba(34, 36, 38, 0.35) inset;
-webkit-appearance: none; -webkit-appearance: none;
} }
@ -308,18 +382,14 @@
/* On Form */ /* On Form */
.ui.form.success .success.message { .ui.form.success .success.message:not(:empty) {
display: block; display: block;
} }
.ui.form.success .icon.success.message:not(:empty) {
/*-------------------- display: -webkit-box;
Error display: -webkit-flex;
---------------------*/ display: -ms-flexbox;
display: flex;
/* On Form */
.ui.form.warning .warning.message {
display: block;
} }
/*-------------------- /*--------------------
@ -328,20 +398,42 @@
/* On Form */ /* On Form */
.ui.form.error .error.message { .ui.form.warning .warning.message:not(:empty) {
display: block; display: block;
} }
.ui.form.warning .icon.warning.message:not(:empty) {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
}
/*--------------------
Error
---------------------*/
/* On Form */
.ui.form.error .error.message:not(:empty) {
display: block;
}
.ui.form.error .icon.error.message:not(:empty) {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
}
/* On Field(s) */ /* On Field(s) */
.ui.form .fields.error .field label, .ui.form .fields.error .field label,
.ui.form .field.error label, .ui.form .field.error label,
.ui.form .fields.error .field .input, .ui.form .fields.error .field .input,
.ui.form .field.error .input { .ui.form .field.error .input {
color: #d95c5c; color: #9f3a38;
} }
.ui.form .fields.error .field .corner.label, .ui.form .fields.error .field .corner.label,
.ui.form .field.error .corner.label { .ui.form .field.error .corner.label {
border-color: #d95c5c; border-color: #9f3a38;
color: #ffffff; color: #ffffff;
} }
.ui.form .fields.error .field textarea, .ui.form .fields.error .field textarea,
@ -370,11 +462,11 @@
.ui.form .field.error input[type="time"], .ui.form .field.error input[type="time"],
.ui.form .field.error input[type="text"], .ui.form .field.error input[type="text"],
.ui.form .field.error input[type="url"] { .ui.form .field.error input[type="url"] {
background: #fff0f0; background: #fff6f6;
border-color: #dbb1b1; border-color: #e0b4b4;
color: #d95c5c; color: #9f3a38;
border-radius: 0em 0.2857rem 0.2857rem 0em; border-radius: '';
box-shadow: 2px 0em 0em 0em #d95c5c inset; box-shadow: none;
} }
.ui.form .field.error textarea:focus, .ui.form .field.error textarea:focus,
.ui.form .field.error select:focus, .ui.form .field.error select:focus,
@ -389,11 +481,11 @@
.ui.form .field.error input[type="time"]:focus, .ui.form .field.error input[type="time"]:focus,
.ui.form .field.error input[type="text"]:focus, .ui.form .field.error input[type="text"]:focus,
.ui.form .field.error input[type="url"]:focus { .ui.form .field.error input[type="url"]:focus {
background: #fff0f0; background: #fff6f6;
border-color: #dbb1b1; border-color: #e0b4b4;
color: #dc6868; color: #9f3a38;
-webkit-appearance: none; -webkit-appearance: none;
box-shadow: 2px 0em 0em 0em #dc6868 inset; box-shadow: none;
} }
/* Preserve Native Select Stylings */ /* Preserve Native Select Stylings */
@ -410,20 +502,25 @@
.ui.form .field.error .ui.dropdown, .ui.form .field.error .ui.dropdown,
.ui.form .field.error .ui.dropdown .text, .ui.form .field.error .ui.dropdown .text,
.ui.form .field.error .ui.dropdown .item { .ui.form .field.error .ui.dropdown .item {
background: #fff0f0; background: #fff6f6;
color: #d95c5c; color: #9f3a38;
} }
.ui.form .fields.error .field .ui.dropdown, .ui.form .fields.error .field .ui.dropdown,
.ui.form .field.error .ui.dropdown { .ui.form .field.error .ui.dropdown {
border-color: #dbb1b1 !important; border-color: #e0b4b4 !important;
} }
.ui.form .fields.error .field .ui.dropdown:hover, .ui.form .fields.error .field .ui.dropdown:hover,
.ui.form .field.error .ui.dropdown:hover { .ui.form .field.error .ui.dropdown:hover {
border-color: #dbb1b1 !important; border-color: #e0b4b4 !important;
} }
.ui.form .fields.error .field .ui.dropdown:hover .menu, .ui.form .fields.error .field .ui.dropdown:hover .menu,
.ui.form .field.error .ui.dropdown:hover .menu { .ui.form .field.error .ui.dropdown:hover .menu {
border-color: #dbb1b1; border-color: #e0b4b4;
}
.ui.form .fields.error .field .ui.multiple.selection.dropdown > .label,
.ui.form .field.error .ui.multiple.selection.dropdown > .label {
background-color: #eacbcb;
color: #9f3a38;
} }
/* Hover */ /* Hover */
@ -432,6 +529,12 @@
background-color: #fbe7e7; background-color: #fbe7e7;
} }
/* Selected */
.ui.form .fields.error .field .ui.dropdown .menu .selected.item,
.ui.form .field.error .ui.dropdown .menu .selected.item {
background-color: #fbe7e7;
}
/* Active */ /* Active */
.ui.form .fields.error .field .ui.dropdown .menu .active.item, .ui.form .fields.error .field .ui.dropdown .menu .active.item,
.ui.form .field.error .ui.dropdown .menu .active.item { .ui.form .field.error .ui.dropdown .menu .active.item {
@ -446,32 +549,34 @@
.ui.form .field.error .checkbox:not(.toggle):not(.slider) label, .ui.form .field.error .checkbox:not(.toggle):not(.slider) label,
.ui.form .fields.error .field .checkbox:not(.toggle):not(.slider) .box, .ui.form .fields.error .field .checkbox:not(.toggle):not(.slider) .box,
.ui.form .field.error .checkbox:not(.toggle):not(.slider) .box { .ui.form .field.error .checkbox:not(.toggle):not(.slider) .box {
color: #d95c5c; color: #9f3a38;
} }
.ui.form .fields.error .field .checkbox:not(.toggle):not(.slider) label:before, .ui.form .fields.error .field .checkbox:not(.toggle):not(.slider) label:before,
.ui.form .field.error .checkbox:not(.toggle):not(.slider) label:before, .ui.form .field.error .checkbox:not(.toggle):not(.slider) label:before,
.ui.form .fields.error .field .checkbox:not(.toggle):not(.slider) .box:before, .ui.form .fields.error .field .checkbox:not(.toggle):not(.slider) .box:before,
.ui.form .field.error .checkbox:not(.toggle):not(.slider) .box:before { .ui.form .field.error .checkbox:not(.toggle):not(.slider) .box:before {
background: #fff0f0; background: #fff6f6;
border-color: #dbb1b1; border-color: #e0b4b4;
} }
.ui.form .fields.error .field .checkbox label:after, .ui.form .fields.error .field .checkbox label:after,
.ui.form .field.error .checkbox label:after, .ui.form .field.error .checkbox label:after,
.ui.form .fields.error .field .checkbox .box:after, .ui.form .fields.error .field .checkbox .box:after,
.ui.form .field.error .checkbox .box:after { .ui.form .field.error .checkbox .box:after {
color: #d95c5c; color: #9f3a38;
} }
/*-------------------- /*--------------------
Disabled Disabled
---------------------*/ ---------------------*/
.ui.form .field :disabled, .ui.form .disabled.fields .field,
.ui.form .field.disabled { .ui.form .disabled.field,
opacity: 0.5; .ui.form .field :disabled {
pointer-events: none;
opacity: 0.45;
} }
.ui.form .field.disabled label { .ui.form .field.disabled label {
opacity: 0.5; opacity: 0.45;
} }
.ui.form .field.disabled :disabled { .ui.form .field.disabled :disabled {
opacity: 1; opacity: 1;
@ -485,11 +590,6 @@
position: relative; position: relative;
cursor: default; cursor: default;
point-events: none; point-events: none;
text-shadow: none !important;
color: transparent !important;
-webkit-transition: all 0s linear;
transition: all 0s linear;
z-index: 100;
} }
.ui.loading.form:before { .ui.loading.form:before {
position: absolute; position: absolute;
@ -514,7 +614,7 @@
-webkit-animation-iteration-count: infinite; -webkit-animation-iteration-count: infinite;
animation-iteration-count: infinite; animation-iteration-count: infinite;
border-radius: 500rem; border-radius: 500rem;
border-color: #aaaaaa rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1); border-color: #767676 rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1);
border-style: solid; border-style: solid;
border-width: 0.2em; border-width: 0.2em;
box-shadow: 0px 0px 0px 1px transparent; box-shadow: 0px 0px 0px 1px transparent;
@ -552,20 +652,22 @@
Required Field Required Field
---------------------*/ ---------------------*/
.ui.form .required.fields > .field > label:after, .ui.form .required.fields:not(.grouped) > .field > label:after,
.ui.form .required.fields.grouped > label:after,
.ui.form .required.field > label:after, .ui.form .required.field > label:after,
.ui.form .required.fields > .field > .checkbox:after, .ui.form .required.fields:not(.grouped) > .field > .checkbox:after,
.ui.form .required.field > .checkbox:after { .ui.form .required.field > .checkbox:after {
margin: -0.2em 0em 0em 0.2em; margin: -0.2em 0em 0em 0.2em;
content: '*'; content: '*';
color: #d95c5c; color: #db2828;
} }
.ui.form .required.fields > .field > label:after, .ui.form .required.fields:not(.grouped) > .field > label:after,
.ui.form .required.fields.grouped > label:after,
.ui.form .required.field > label:after { .ui.form .required.field > label:after {
display: inline-block; display: inline-block;
vertical-align: top; vertical-align: top;
} }
.ui.form .required.fields > .field > .checkbox:after, .ui.form .required.fields:not(.grouped) > .field > .checkbox:after,
.ui.form .required.field > .checkbox:after { .ui.form .required.field > .checkbox:after {
position: absolute; position: absolute;
top: 0%; top: 0%;
@ -588,7 +690,25 @@
.ui.form .inverted.segment .ui.checkbox .box, .ui.form .inverted.segment .ui.checkbox .box,
.ui.inverted.form .ui.checkbox label, .ui.inverted.form .ui.checkbox label,
.ui.inverted.form .ui.checkbox .box { .ui.inverted.form .ui.checkbox .box {
color: #ffffff; color: rgba(255, 255, 255, 0.9);
}
/* Inverted Field */
.ui.inverted.form input:not([type]),
.ui.inverted.form input[type="date"],
.ui.inverted.form input[type="datetime-local"],
.ui.inverted.form input[type="email"],
.ui.inverted.form input[type="number"],
.ui.inverted.form input[type="password"],
.ui.inverted.form input[type="search"],
.ui.inverted.form input[type="tel"],
.ui.inverted.form input[type="time"],
.ui.inverted.form input[type="text"],
.ui.inverted.form input[type="url"] {
background: #ffffff;
border-color: rgba(255, 255, 255, 0.1);
color: rgba(0, 0, 0, 0.87);
box-shadow: none;
} }
/*-------------------- /*--------------------
@ -598,17 +718,22 @@
/* Grouped Vertically */ /* Grouped Vertically */
.ui.form .grouped.fields { .ui.form .grouped.fields {
display: block;
margin: 0em 0em 1em; margin: 0em 0em 1em;
} }
.ui.form .grouped.fields:last-child { .ui.form .grouped.fields:last-child {
margin-bottom: 0em; margin-bottom: 0em;
} }
.ui.form .grouped.fields > label { .ui.form .grouped.fields > label {
font-size: 0.9285em; margin: 0em 0em 0.28571429rem 0em;
color: rgba(0, 0, 0, 0.87);
font-size: 0.92857143em;
font-weight: bold;
text-transform: none;
} }
.ui.form .grouped.fields .field { .ui.form .grouped.fields .field,
.ui.form .grouped.inline.fields .field {
display: block; display: block;
float: none;
margin: 0.5em 0em; margin: 0.5em 0em;
padding: 0em; padding: 0em;
} }
@ -620,19 +745,21 @@
/* Split fields */ /* Split fields */
.ui.form .fields { .ui.form .fields {
clear: both; display: -webkit-box;
} display: -webkit-flex;
.ui.form .fields:after { display: -ms-flexbox;
content: ' '; display: flex;
display: block; -webkit-box-orient: horizontal;
clear: both; -webkit-box-direction: normal;
visibility: hidden; -webkit-flex-direction: row;
line-height: 0; -ms-flex-direction: row;
height: 0; flex-direction: row;
} }
.ui.form .fields > .field { .ui.form .fields > .field {
clear: none; -webkit-box-flex: 0;
float: left; -webkit-flex: 0 1 auto;
-ms-flex: 0 1 auto;
flex: 0 1 auto;
padding-left: 0.5em; padding-left: 0.5em;
padding-right: 0.5em; padding-right: 0.5em;
} }
@ -681,6 +808,11 @@
/* Swap to full width on mobile */ /* Swap to full width on mobile */
@media only screen and (max-width: 767px) { @media only screen and (max-width: 767px) {
.ui.form .fields {
-webkit-flex-wrap: wrap;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
}
.ui.form .two.fields > .fields, .ui.form .two.fields > .fields,
.ui.form .two.fields > .field, .ui.form .two.fields > .field,
.ui.form .three.fields > .fields, .ui.form .three.fields > .fields,
@ -805,54 +937,96 @@
} }
} }
/*--------------------
Equal Width
---------------------*/
.ui[class*="equal width"].form .fields > .field,
.ui.form [class*="equal width"].fields > .field {
width: 100%;
-webkit-box-flex: 1;
-webkit-flex: 1 1 auto;
-ms-flex: 1 1 auto;
flex: 1 1 auto;
}
/*-------------------- /*--------------------
Inline Fields Inline Fields
---------------------*/ ---------------------*/
.ui.form .inline.fields { .ui.form .inline.fields {
margin: 0em 0em 1em; margin: 0em 0em 1em;
-webkit-box-align: center;
-webkit-align-items: center;
-ms-flex-align: center;
align-items: center;
} }
.ui.form .inline.fields .field { .ui.form .inline.fields .field {
display: inline-block; margin: 0em;
float: none; padding: 0em 1em 0em 0em;
margin: 0em 1em 0em 0em;
padding: 0em;
} }
/* Inline Label */
.ui.form .inline.fields > label,
.ui.form .inline.fields .field > label, .ui.form .inline.fields .field > label,
.ui.form .inline.fields .field > p, .ui.form .inline.fields .field > p,
.ui.form .inline.fields .field > input,
.ui.form .inline.fields .field > .ui.input,
.ui.form .inline.field > label, .ui.form .inline.field > label,
.ui.form .inline.field > p, .ui.form .inline.field > p {
display: inline-block;
width: auto;
margin-top: 0em;
margin-bottom: 0em;
vertical-align: baseline;
font-size: 0.92857143em;
font-weight: bold;
color: rgba(0, 0, 0, 0.87);
text-transform: none;
}
/* Grouped Inline Label */
.ui.form .inline.fields > label {
margin: 0.035714em 1em 0em 0em;
}
/* Inline Input */
.ui.form .inline.fields .field > input,
.ui.form .inline.fields .field > select,
.ui.form .inline.field > input, .ui.form .inline.field > input,
.ui.form .inline.field > .ui.input { .ui.form .inline.field > select {
display: inline-block; display: inline-block;
width: auto; width: auto;
margin-top: 0em; margin-top: 0em;
margin-bottom: 0em; margin-bottom: 0em;
vertical-align: middle; vertical-align: middle;
font-size: 0.9285em; font-size: 1em;
}
.ui.form .inline.fields .field > input,
.ui.form .inline.fields .field > .ui.input,
.ui.form .inline.field > input,
.ui.form .inline.field > .ui.input {
font-size: 0.9285em;
}
.ui.form .inline.fields .field > .ui.checkbox label {
padding-left: 1.75em;
} }
/* Label */ /* Label */
.ui.form .inline.fields .field > :first-child, .ui.form .inline.fields .field > :first-child,
.ui.form .inline.field > :first-child { .ui.form .inline.field > :first-child {
margin: 0em 0.2857rem 0em 0em; margin: 0em 0.85714286em 0em 0em;
} }
.ui.form .inline.fields .field > :only-child, .ui.form .inline.fields .field > :only-child,
.ui.form .inline.field > :only-child { .ui.form .inline.field > :only-child {
margin: 0em; margin: 0em;
} }
/* Wide */
.ui.form .inline.fields .wide.field {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
-webkit-align-items: center;
-ms-flex-align: center;
align-items: center;
}
.ui.form .inline.fields .wide.field > input,
.ui.form .inline.fields .wide.field > select {
width: 100%;
}
/*-------------------- /*--------------------
Sizes Sizes
---------------------*/ ---------------------*/
@ -860,22 +1034,22 @@
/* Standard */ /* Standard */
.ui.small.form { .ui.small.form {
font-size: 0.875em; font-size: 0.92857143rem;
} }
/* Medium */ /* Medium */
.ui.form { .ui.form {
font-size: auto; font-size: 1rem;
} }
/* Large */ /* Large */
.ui.large.form { .ui.large.form {
font-size: 1.125em; font-size: 1.14285714rem;
} }
/* Huge */ /* Huge */
.ui.huge.form { .ui.huge.form {
font-size: 1.2em; font-size: 1.42857143rem;
} }

File diff suppressed because it is too large Load diff

6
web/semantic/dist/components/form.min.css vendored Normal file → Executable file

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

1109
web/semantic/dist/components/grid.css vendored Normal file → Executable file

File diff suppressed because it is too large Load diff

6
web/semantic/dist/components/grid.min.css vendored Normal file → Executable file

File diff suppressed because one or more lines are too long

485
web/semantic/dist/components/header.css vendored Normal file → Executable file
View file

@ -1,9 +1,9 @@
/*! /*!
* # Semantic UI 1.11.4 - Header * # Semantic UI 2.1.7 - Header
* http://github.com/semantic-org/semantic-ui/ * http://github.com/semantic-org/semantic-ui/
* *
* *
* Copyright 2014 Contributors * Copyright 2015 Contributors
* Released under the MIT license * Released under the MIT license
* http://opensource.org/licenses/MIT * http://opensource.org/licenses/MIT
* *
@ -18,17 +18,16 @@
/* Standard */ /* Standard */
.ui.header { .ui.header {
border: none; border: none;
margin: -webkit-calc(2rem - 0.165em ) 0em 1rem; margin: calc(2rem - 0.14285em ) 0em 1rem;
margin: calc(2rem - 0.165em ) 0em 1rem;
padding: 0em 0em; padding: 0em 0em;
font-family: 'Lato', 'Helvetica Neue', Arial, Helvetica, sans-serif; font-family: 'Lato', 'Helvetica Neue', Arial, Helvetica, sans-serif;
font-weight: bold; font-weight: bold;
line-height: 1.33em; line-height: 1.2857em;
text-transform: none; text-transform: none;
color: rgba(0, 0, 0, 0.8); color: rgba(0, 0, 0, 0.87);
} }
.ui.header:first-child { .ui.header:first-child {
margin-top: -0.165em; margin-top: -0.14285em;
} }
.ui.header:last-child { .ui.header:last-child {
margin-bottom: 0em; margin-bottom: 0em;
@ -39,12 +38,13 @@
---------------*/ ---------------*/
.ui.header .sub.header { .ui.header .sub.header {
display: block;
font-weight: normal; font-weight: normal;
margin: 0em;
padding: 0em; padding: 0em;
font-size: 1.1428rem; margin: 0em;
font-size: 1rem;
line-height: 1.2em; line-height: 1.2em;
color: rgba(0, 0, 0, 0.5); color: rgba(0, 0, 0, 0.6);
} }
/*-------------- /*--------------
@ -55,7 +55,7 @@
display: table-cell; display: table-cell;
opacity: 1; opacity: 1;
font-size: 1.5em; font-size: 1.5em;
padding-top: 0.165em; padding-top: 0.14285em;
vertical-align: middle; vertical-align: middle;
} }
@ -73,7 +73,7 @@
.ui.header > .image, .ui.header > .image,
.ui.header > img { .ui.header > img {
display: inline-block; display: inline-block;
margin-top: 0.165em; margin-top: 0.14285em;
width: 2.5em; width: 2.5em;
height: auto; height: auto;
vertical-align: middle; vertical-align: middle;
@ -111,8 +111,8 @@
---------------*/ ---------------*/
.ui.header .ui.label { .ui.header .ui.label {
font-size: 1.28em; font-size: '';
margin: 0em 0em 0em 0.5rem; margin-left: 0.5rem;
vertical-align: middle; vertical-align: middle;
} }
@ -149,19 +149,19 @@ h5.ui.header {
/* Sub Header */ /* Sub Header */
h1.ui.header .sub.header { h1.ui.header .sub.header {
font-size: 1.4285rem; font-size: 1.14285714rem;
} }
h2.ui.header .sub.header { h2.ui.header .sub.header {
font-size: 1.1428rem; font-size: 1.14285714rem;
} }
h3.ui.header .sub.header { h3.ui.header .sub.header {
font-size: 1.1428rem; font-size: 1rem;
} }
h4.ui.header .sub.header { h4.ui.header .sub.header {
font-size: 1rem; font-size: 1rem;
} }
h5.ui.header .sub.header { h5.ui.header .sub.header {
font-size: 0.9285rem; font-size: 0.92857143rem;
} }
/*-------------- /*--------------
@ -187,19 +187,44 @@ h5.ui.header .sub.header {
/* Sub Header */ /* Sub Header */
.ui.huge.header .sub.header { .ui.huge.header .sub.header {
font-size: 1.4285rem; font-size: 1.14285714rem;
} }
.ui.large.header .sub.header { .ui.large.header .sub.header {
font-size: 1.4285rem; font-size: 1.14285714rem;
} }
.ui.header .sub.header { .ui.header .sub.header {
font-size: 1.1428rem; font-size: 1rem;
} }
.ui.small.header .sub.header { .ui.small.header .sub.header {
font-size: 1rem; font-size: 1rem;
} }
.ui.tiny.header .sub.header { .ui.tiny.header .sub.header {
font-size: 0.9285rem; font-size: 0.92857143rem;
}
/*--------------
Sub Heading
---------------*/
.ui.sub.header {
padding: 0em;
margin-bottom: 0.14285714rem;
font-weight: bold;
font-size: 0.85714286em;
text-transform: uppercase;
color: '';
}
.ui.small.sub.header {
font-size: 0.71428571em;
}
.ui.sub.header {
font-size: 0.85714286em;
}
.ui.large.sub.header {
font-size: 0.92857143em;
}
.ui.huge.sub.header {
font-size: 1em;
} }
/*------------------- /*-------------------
@ -226,9 +251,10 @@ h5.ui.header .sub.header {
display: block; display: block;
width: auto; width: auto;
height: auto; height: auto;
line-height: 1;
padding: 0em; padding: 0em;
font-size: 3em; font-size: 3em;
margin: 0em auto 0.25rem; margin: 0em auto 0.5rem;
opacity: 1; opacity: 1;
} }
.ui.icon.header .content { .ui.icon.header .content {
@ -255,7 +281,7 @@ h5.ui.header .sub.header {
*******************************/ *******************************/
.ui.disabled.header { .ui.disabled.header {
opacity: 0.3; opacity: 0.45;
} }
@ -264,92 +290,6 @@ h5.ui.header .sub.header {
*******************************/ *******************************/
/*-------------------
Colors
--------------------*/
.ui.black.header {
color: #1b1c1d !important;
}
a.ui.black.header:hover {
color: #1b1c1d !important;
}
.ui.blue.header {
color: #3b83c0 !important;
}
a.ui.blue.header:hover {
color: #458ac6 !important;
}
.ui.green.header {
color: #5bbd72 !important;
}
a.ui.green.header:hover {
color: #66c17b !important;
}
.ui.orange.header {
color: #e07b53 !important;
}
a.ui.orange.header:hover {
color: #e28560 !important;
}
.ui.pink.header {
color: #d9499a !important;
}
a.ui.pink.header:hover {
color: #dc56a1 !important;
}
.ui.purple.header {
color: #564f8a !important;
}
a.ui.purple.header:hover {
color: #5c5594 !important;
}
.ui.red.header {
color: #d95c5c !important;
}
a.ui.red.header:hover {
color: #dc6868 !important;
}
.ui.teal.header {
color: #00b5ad !important;
}
a.ui.teal.header:hover {
color: #00c4bc !important;
}
.ui.yellow.header {
color: #f2c61f !important;
}
a.ui.yellow.header:hover {
color: #f3ca2d !important;
}
.ui.black.dividing.header {
border-bottom: 2px solid #1b1c1d;
}
.ui.blue.dividing.header {
border-bottom: 2px solid #3b83c0;
}
.ui.green.dividing.header {
border-bottom: 2px solid #5bbd72;
}
.ui.orange.dividing.header {
border-bottom: 2px solid #e07b53;
}
.ui.pink.dividing.header {
border-bottom: 2px solid #d9499a;
}
.ui.purple.dividing.header {
border-bottom: 2px solid #564f8a;
}
.ui.red.dividing.header {
border-bottom: 2px solid #d95c5c;
}
.ui.teal.dividing.header {
border-bottom: 2px solid #00b5ad;
}
.ui.yellow.dividing.header {
border-bottom: 2px solid #f2c61f;
}
/*------------------- /*-------------------
Inverted Inverted
--------------------*/ --------------------*/
@ -358,79 +298,266 @@ a.ui.yellow.header:hover {
color: #ffffff; color: #ffffff;
} }
.ui.inverted.header .sub.header { .ui.inverted.header .sub.header {
color: rgba(255, 255, 255, 0.85); color: rgba(255, 255, 255, 0.8);
} }
.ui.inverted.attached.header { .ui.inverted.attached.header {
background: #333333 -webkit-linear-gradient(transparent, rgba(0, 0, 0, 0.05)); background: #545454 -webkit-linear-gradient(transparent, rgba(0, 0, 0, 0.05));
background: #333333 linear-gradient(transparent, rgba(0, 0, 0, 0.05)); background: #545454 linear-gradient(transparent, rgba(0, 0, 0, 0.05));
box-shadow: none;
border-color: transparent;
}
.ui.inverted.block.header {
background: #545454 -webkit-linear-gradient(transparent, rgba(0, 0, 0, 0.05));
background: #545454 linear-gradient(transparent, rgba(0, 0, 0, 0.05));
box-shadow: none; box-shadow: none;
} }
.ui.inverted.block.header { .ui.inverted.block.header {
background: #333333 -webkit-linear-gradient(transparent, rgba(0, 0, 0, 0.05)); border-bottom: none;
background: #333333 linear-gradient(transparent, rgba(0, 0, 0, 0.05));
box-shadow: none;
} }
/*------------------- /*-------------------
Inverted Colors Colors
--------------------*/ --------------------*/
.ui.inverted.black.header {
color: #aaaaaa !important; /*--- Red ---*/
.ui.red.header {
color: #db2828 !important;
} }
a.ui.inverted.black.header:hover { a.ui.red.header:hover {
color: #b2b2b2 !important; color: #d01919 !important;
} }
.ui.inverted.blue.header { .ui.red.dividing.header {
color: #54c8ff !important; border-bottom: 2px solid #db2828;
}
a.ui.inverted.blue.header:hover {
color: #63cdff !important;
}
.ui.inverted.green.header {
color: #2ecc40 !important;
}
a.ui.inverted.green.header:hover {
color: #37d249 !important;
}
.ui.inverted.orange.header {
color: #ff851b !important;
}
a.ui.inverted.orange.header:hover {
color: #ff8d2a !important;
}
.ui.inverted.pink.header {
color: #ff8edf !important;
}
a.ui.inverted.pink.header:hover {
color: #ff9de3 !important;
}
.ui.inverted.purple.header {
color: #cdc6ff !important;
}
a.ui.inverted.purple.header:hover {
color: #dad5ff !important;
} }
/* Inverted */
.ui.inverted.red.header { .ui.inverted.red.header {
color: #ff695e !important; color: #ff695e !important;
} }
a.ui.inverted.red.header:hover { a.ui.inverted.red.header:hover {
color: #ff776d !important; color: #ff5144 !important;
} }
.ui.inverted.teal.header {
color: #6dffff !important; /*--- Orange ---*/
.ui.orange.header {
color: #f2711c !important;
} }
a.ui.inverted.teal.header:hover { a.ui.orange.header:hover {
color: #7cffff !important; color: #f26202 !important;
} }
.ui.orange.dividing.header {
border-bottom: 2px solid #f2711c;
}
/* Inverted */
.ui.inverted.orange.header {
color: #ff851b !important;
}
a.ui.inverted.orange.header:hover {
color: #ff7701 !important;
}
/*--- Olive ---*/
.ui.olive.header {
color: #b5cc18 !important;
}
a.ui.olive.header:hover {
color: #a7bd0d !important;
}
.ui.olive.dividing.header {
border-bottom: 2px solid #b5cc18;
}
/* Inverted */
.ui.inverted.olive.header {
color: #d9e778 !important;
}
a.ui.inverted.olive.header:hover {
color: #d8ea5c !important;
}
/*--- Yellow ---*/
.ui.yellow.header {
color: #fbbd08 !important;
}
a.ui.yellow.header:hover {
color: #eaae00 !important;
}
.ui.yellow.dividing.header {
border-bottom: 2px solid #fbbd08;
}
/* Inverted */
.ui.inverted.yellow.header { .ui.inverted.yellow.header {
color: #ffe21f !important; color: #ffe21f !important;
} }
a.ui.inverted.yellow.header:hover { a.ui.inverted.yellow.header:hover {
color: #ffe42e !important; color: #ffdf05 !important;
} }
.ui.inverted.block.header {
border-bottom: none; /*--- Green ---*/
.ui.green.header {
color: #21ba45 !important;
}
a.ui.green.header:hover {
color: #16ab39 !important;
}
.ui.green.dividing.header {
border-bottom: 2px solid #21ba45;
}
/* Inverted */
.ui.inverted.green.header {
color: #2ecc40 !important;
}
a.ui.inverted.green.header:hover {
color: #22be34 !important;
}
/*--- Teal ---*/
.ui.teal.header {
color: #00b5ad !important;
}
a.ui.teal.header:hover {
color: #009c95 !important;
}
.ui.teal.dividing.header {
border-bottom: 2px solid #00b5ad;
}
/* Inverted */
.ui.inverted.teal.header {
color: #6dffff !important;
}
a.ui.inverted.teal.header:hover {
color: #54ffff !important;
}
/*--- Blue ---*/
.ui.blue.header {
color: #2185d0 !important;
}
a.ui.blue.header:hover {
color: #1678c2 !important;
}
.ui.blue.dividing.header {
border-bottom: 2px solid #2185d0;
}
/* Inverted */
.ui.inverted.blue.header {
color: #54c8ff !important;
}
a.ui.inverted.blue.header:hover {
color: #3ac0ff !important;
}
/*--- Violet ---*/
.ui.violet.header {
color: #6435c9 !important;
}
a.ui.violet.header:hover {
color: #5829bb !important;
}
.ui.violet.dividing.header {
border-bottom: 2px solid #6435c9;
}
/* Inverted */
.ui.inverted.violet.header {
color: #a291fb !important;
}
a.ui.inverted.violet.header:hover {
color: #8a73ff !important;
}
/*--- Purple ---*/
.ui.purple.header {
color: #a333c8 !important;
}
a.ui.purple.header:hover {
color: #9627ba !important;
}
.ui.purple.dividing.header {
border-bottom: 2px solid #a333c8;
}
/* Inverted */
.ui.inverted.purple.header {
color: #dc73ff !important;
}
a.ui.inverted.purple.header:hover {
color: #d65aff !important;
}
/*--- Pink ---*/
.ui.pink.header {
color: #e03997 !important;
}
a.ui.pink.header:hover {
color: #e61a8d !important;
}
.ui.pink.dividing.header {
border-bottom: 2px solid #e03997;
}
/* Inverted */
.ui.inverted.pink.header {
color: #ff8edf !important;
}
a.ui.inverted.pink.header:hover {
color: #ff74d8 !important;
}
/*--- Brown ---*/
.ui.brown.header {
color: #a5673f !important;
}
a.ui.brown.header:hover {
color: #975b33 !important;
}
.ui.brown.dividing.header {
border-bottom: 2px solid #a5673f;
}
/* Inverted */
.ui.inverted.brown.header {
color: #d67c1c !important;
}
a.ui.inverted.brown.header:hover {
color: #c86f11 !important;
}
/*--- Grey ---*/
.ui.grey.header {
color: #767676 !important;
}
a.ui.grey.header:hover {
color: #838383 !important;
}
.ui.grey.dividing.header {
border-bottom: 2px solid #767676;
}
/* Inverted */
.ui.inverted.grey.header {
color: #dcddde !important;
}
a.ui.inverted.grey.header:hover {
color: #cfd0d2 !important;
} }
/*------------------- /*-------------------
@ -485,17 +612,17 @@ a.ui.inverted.yellow.header:hover {
--------------------*/ --------------------*/
.ui.dividing.header { .ui.dividing.header {
padding-bottom: 0.25rem; padding-bottom: 0.21428571rem;
border-bottom: 1px solid rgba(0, 0, 0, 0.1); border-bottom: 1px solid rgba(34, 36, 38, 0.15);
} }
.ui.dividing.header .sub.header { .ui.dividing.header .sub.header {
padding-bottom: 0.25rem; padding-bottom: 0.21428571rem;
} }
.ui.dividing.header .icon { .ui.dividing.header .icon {
margin-bottom: 0em; margin-bottom: 0em;
} }
.ui.inverted.dividing.header { .ui.inverted.dividing.header {
border-bottom-color: rgba(255, 255, 255, 0.2); border-bottom-color: rgba(255, 255, 255, 0.1);
} }
/*------------------- /*-------------------
@ -503,26 +630,26 @@ a.ui.inverted.yellow.header:hover {
--------------------*/ --------------------*/
.ui.block.header { .ui.block.header {
background: #f0f0f0; background: #f3f4f5;
padding: 0.75rem 1rem; padding: 0.71428571rem 1rem;
box-shadow: none; box-shadow: none;
border: 1px solid #d4d4d5; border: 1px solid #d4d4d5;
border-radius: 0.3125rem; border-radius: 0.28571429rem;
} }
.ui.tiny.block.header { .ui.tiny.block.header {
font-size: 1em; font-size: 0.85714286rem;
} }
.ui.small.block.header { .ui.small.block.header {
font-size: 1.071em; font-size: 0.92857143rem;
} }
.ui.block.header:not(h1):not(h2):not(h3):not(h4):not(h5):not(h6) { .ui.block.header:not(h1):not(h2):not(h3):not(h4):not(h5):not(h6) {
font-size: 1.28em; font-size: 1rem;
} }
.ui.large.block.header { .ui.large.block.header {
font-size: 1.714em; font-size: 1.14285714rem;
} }
.ui.huge.block.header { .ui.huge.block.header {
font-size: 2em; font-size: 1.42857143rem;
} }
/*------------------- /*-------------------
@ -531,48 +658,46 @@ a.ui.inverted.yellow.header:hover {
.ui.attached.header { .ui.attached.header {
background: #ffffff; background: #ffffff;
padding: 0.75rem 1rem; padding: 0.71428571rem 1rem;
margin-left: -1px; margin-left: -1px;
margin-right: -1px; margin-right: -1px;
box-shadow: none; box-shadow: none;
border: 1px solid #d4d4d5; border: 1px solid #d4d4d5;
} }
.ui.attached.block.header { .ui.attached.block.header {
background: #f0f0f0; background: #f3f4f5;
} }
.ui.attached:not(.top):not(.bottom).header { .ui.attached:not(.top):not(.bottom).header {
margin-top: 0em; margin-top: 0em;
margin-bottom: 0em; margin-bottom: 0em;
border-top: none; border-top: none;
border-bottom: none;
border-radius: 0em; border-radius: 0em;
} }
.ui.top.attached.header { .ui.top.attached.header {
margin-bottom: 0em; margin-bottom: 0em;
border-bottom: none; border-radius: 0.28571429rem 0.28571429rem 0em 0em;
border-radius: 0.3125rem 0.3125rem 0em 0em;
} }
.ui.bottom.attached.header { .ui.bottom.attached.header {
margin-top: 0em; margin-top: 0em;
border-top: none; border-top: none;
border-radius: 0em 0em 0.3125rem 0.3125rem; border-radius: 0em 0em 0.28571429rem 0.28571429rem;
} }
/* Attached Sizes */ /* Attached Sizes */
.ui.tiny.attached.header { .ui.tiny.attached.header {
font-size: 0.8571em; font-size: 0.85714286em;
} }
.ui.small.attached.header { .ui.small.attached.header {
font-size: 0.9285em; font-size: 0.92857143em;
} }
.ui.attached.header:not(h1):not(h2):not(h3):not(h4):not(h5):not(h6) { .ui.attached.header:not(h1):not(h2):not(h3):not(h4):not(h5):not(h6) {
font-size: 1em; font-size: 1em;
} }
.ui.large.attached.header { .ui.large.attached.header {
font-size: 1.0714em; font-size: 1.14285714em;
} }
.ui.huge.attached.header { .ui.huge.attached.header {
font-size: 1.1428em; font-size: 1.42857143em;
} }
/*------------------- /*-------------------

6
web/semantic/dist/components/header.min.css vendored Normal file → Executable file

File diff suppressed because one or more lines are too long

453
web/semantic/dist/components/icon.css vendored Normal file → Executable file
View file

@ -1,9 +1,9 @@
/*! /*!
* # Semantic UI 1.11.4 - Icon * # Semantic UI 2.1.7 - Icon
* http://github.com/semantic-org/semantic-ui/ * http://github.com/semantic-org/semantic-ui/
* *
* *
* Copyright 2014 Contributors * Copyright 2015 Contributors
* Released under the MIT license * Released under the MIT license
* http://opensource.org/licenses/MIT * http://opensource.org/licenses/MIT
* *
@ -17,7 +17,7 @@
@font-face { @font-face {
font-family: 'Icons'; font-family: 'Icons';
src: url("../themes/default/assets/fonts/icons.eot"); src: url("../themes/default/assets/fonts/icons.eot");
src: url("../themes/default/assets/fonts/icons.eot?#iefix") format('embedded-opentype'), url("../themes/default/assets/fonts/icons.woff2") format('woff'), url("../themes/default/assets/fonts/icons.woff") format('woff'), url("../themes/default/assets/fonts/icons.ttf") format('truetype'), url("../themes/default/assets/fonts/icons.svg#icons") format('svg'); src: url("../themes/default/assets/fonts/icons.eot?#iefix") format('embedded-opentype'), url("../themes/default/assets/fonts/icons.woff2") format('woff2'), url("../themes/default/assets/fonts/icons.woff") format('woff'), url("../themes/default/assets/fonts/icons.ttf") format('truetype'), url("../themes/default/assets/fonts/icons.svg#icons") format('svg');
font-style: normal; font-style: normal;
font-weight: normal; font-weight: normal;
font-variant: normal; font-variant: normal;
@ -28,17 +28,17 @@ i.icon {
display: inline-block; display: inline-block;
opacity: 1; opacity: 1;
margin: 0em 0.25rem 0em 0em; margin: 0em 0.25rem 0em 0em;
width: 1.23em; width: 1.18em;
height: 0.9em; height: 1em;
font-family: 'Icons'; font-family: 'Icons';
font-style: normal; font-style: normal;
line-height: 1;
font-weight: normal; font-weight: normal;
text-decoration: inherit; text-decoration: inherit;
text-align: center; text-align: center;
speak: none; speak: none;
font-smoothing: antialiased; font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale; -moz-osx-font-smoothing: grayscale;
-webkit-font-smoothing: antialiased;
-webkit-backface-visibility: hidden; -webkit-backface-visibility: hidden;
backface-visibility: hidden; backface-visibility: hidden;
} }
@ -58,6 +58,7 @@ i.icon:before {
i.icon.loading { i.icon.loading {
height: 1em; height: 1em;
line-height: 1;
-webkit-animation: icon-loading 2s linear infinite; -webkit-animation: icon-loading 2s linear infinite;
animation: icon-loading 2s linear infinite; animation: icon-loading 2s linear infinite;
} }
@ -88,17 +89,16 @@ i.icon.loading {
*******************************/ *******************************/
i.icon.hover { i.icon.hover {
opacity: 1; opacity: 1 !important;
} }
i.icon.active { i.icon.active {
opacity: 1; opacity: 1 !important;
} }
i.emphasized.icon { i.emphasized.icon {
opacity: 1; opacity: 1 !important;
} }
i.disabled.icon { i.disabled.icon {
pointer-events: none; opacity: 0.45 !important;
opacity: 0.3 !important;
} }
@ -107,6 +107,15 @@ i.disabled.icon {
*******************************/ *******************************/
/*-------------------
Fitted
--------------------*/
i.fitted.icon {
width: auto;
margin: 0em;
}
/*------------------- /*-------------------
Link Link
--------------------*/ --------------------*/
@ -114,8 +123,8 @@ i.disabled.icon {
i.link.icon { i.link.icon {
cursor: pointer; cursor: pointer;
opacity: 0.8; opacity: 0.8;
-webkit-transition: opacity 0.2s ease; -webkit-transition: opacity 0.1s ease;
transition: opacity 0.2s ease; transition: opacity 0.1s ease;
} }
i.link.icon:hover { i.link.icon:hover {
opacity: 1 !important; opacity: 1 !important;
@ -127,9 +136,9 @@ i.link.icon:hover {
i.circular.icon { i.circular.icon {
border-radius: 500em !important; border-radius: 500em !important;
line-height: 1 !important;
padding: 0.5em 0.5em !important; padding: 0.5em 0.5em !important;
box-shadow: 0em 0em 0em 0.1em rgba(0, 0, 0, 0.1) inset; box-shadow: 0em 0em 0em 0.1em rgba(0, 0, 0, 0.1) inset;
line-height: 1 !important;
width: 2em !important; width: 2em !important;
height: 2em !important; height: 2em !important;
} }
@ -177,164 +186,300 @@ i.counterclockwise.rotated.icon {
--------------------*/ --------------------*/
i.bordered.icon { i.bordered.icon {
line-height: 1;
vertical-align: baseline;
width: 2em; width: 2em;
height: 2em; height: 2em;
padding: 0.55em 0.385em !important; padding: 0.5em 0.41em !important;
box-shadow: 0em 0em 0em 0.1em rgba(0, 0, 0, 0.1) inset; box-shadow: 0em 0em 0em 0.1em rgba(0, 0, 0, 0.1) inset;
vertical-align: baseline;
} }
i.bordered.inverted.icon { i.bordered.inverted.icon {
border: none; border: none;
box-shadow: none; box-shadow: none;
} }
/*-------------------
Colors
--------------------*/
i.white.icon {
color: #ffffff !important;
}
i.black.icon {
color: #1b1c1d !important;
}
i.blue.icon {
color: #3b83c0 !important;
}
i.green.icon {
color: #5bbd72 !important;
}
i.orange.icon {
color: #e07b53 !important;
}
i.pink.icon {
color: #d9499a !important;
}
i.purple.icon {
color: #564f8a !important;
}
i.red.icon {
color: #d95c5c !important;
}
i.teal.icon {
color: #00b5ad !important;
}
i.yellow.icon {
color: #f2c61f !important;
}
/*------------------- /*-------------------
Inverted Inverted
--------------------*/ --------------------*/
i.inverted.icon {
color: #ffffff;
}
i.inverted.black.icon {
color: #333333 !important;
}
i.inverted.blue.icon {
color: #54c8ff !important;
}
i.inverted.green.icon {
color: #2ecc40 !important;
}
i.inverted.orange.icon {
color: #ff851b !important;
}
i.inverted.pink.icon {
color: #ff8edf !important;
}
i.inverted.purple.icon {
color: #cdc6ff !important;
}
i.inverted.red.icon {
color: #ff695e !important;
}
i.inverted.teal.icon {
color: #6dffff !important;
}
i.inverted.yellow.icon {
color: #ffe21f !important;
}
/* Inverted Shapes */ /* Inverted Shapes */
i.inverted.bordered.icon, i.inverted.bordered.icon,
i.inverted.circular.icon { i.inverted.circular.icon {
background-color: #222222 !important;
color: #FFFFFF !important;
}
i.inverted.bordered.black.icon,
i.inverted.circular.black.icon {
background-color: #1b1c1d !important; background-color: #1b1c1d !important;
color: #FFFFFF !important; color: #ffffff !important;
} }
i.inverted.bordered.blue.icon, i.inverted.icon {
i.inverted.circular.blue.icon { color: #ffffff;
background-color: #3b83c0 !important;
color: #FFFFFF !important;
} }
i.inverted.bordered.green.icon,
i.inverted.circular.green.icon { /*-------------------
background-color: #5bbd72 !important; Colors
color: #FFFFFF !important; --------------------*/
/* Red */
i.red.icon {
color: #db2828 !important;
} }
i.inverted.bordered.orange.icon, i.inverted.red.icon {
i.inverted.circular.orange.icon { color: #ff695e !important;
background-color: #e07b53 !important;
color: #FFFFFF !important;
}
i.inverted.bordered.pink.icon,
i.inverted.circular.pink.icon {
background-color: #d9499a !important;
color: #FFFFFF !important;
}
i.inverted.bordered.purple.icon,
i.inverted.circular.purple.icon {
background-color: #564f8a !important;
color: #FFFFFF !important;
} }
i.inverted.bordered.red.icon, i.inverted.bordered.red.icon,
i.inverted.circular.red.icon { i.inverted.circular.red.icon {
background-color: #d95c5c !important; background-color: #db2828 !important;
color: #FFFFFF !important; color: #ffffff !important;
}
/* Orange */
i.orange.icon {
color: #f2711c !important;
}
i.inverted.orange.icon {
color: #ff851b !important;
}
i.inverted.bordered.orange.icon,
i.inverted.circular.orange.icon {
background-color: #f2711c !important;
color: #ffffff !important;
}
/* Yellow */
i.yellow.icon {
color: #fbbd08 !important;
}
i.inverted.yellow.icon {
color: #ffe21f !important;
}
i.inverted.bordered.yellow.icon,
i.inverted.circular.yellow.icon {
background-color: #fbbd08 !important;
color: #ffffff !important;
}
/* Olive */
i.olive.icon {
color: #b5cc18 !important;
}
i.inverted.olive.icon {
color: #d9e778 !important;
}
i.inverted.bordered.olive.icon,
i.inverted.circular.olive.icon {
background-color: #b5cc18 !important;
color: #ffffff !important;
}
/* Green */
i.green.icon {
color: #21ba45 !important;
}
i.inverted.green.icon {
color: #2ecc40 !important;
}
i.inverted.bordered.green.icon,
i.inverted.circular.green.icon {
background-color: #21ba45 !important;
color: #ffffff !important;
}
/* Teal */
i.teal.icon {
color: #00b5ad !important;
}
i.inverted.teal.icon {
color: #6dffff !important;
} }
i.inverted.bordered.teal.icon, i.inverted.bordered.teal.icon,
i.inverted.circular.teal.icon { i.inverted.circular.teal.icon {
background-color: #00b5ad !important; background-color: #00b5ad !important;
color: #FFFFFF !important; color: #ffffff !important;
} }
i.inverted.bordered.yellow.icon,
i.inverted.circular.yellow.icon { /* Blue */
background-color: #f2c61f !important; i.blue.icon {
color: #FFFFFF !important; color: #2185d0 !important;
}
i.inverted.blue.icon {
color: #54c8ff !important;
}
i.inverted.bordered.blue.icon,
i.inverted.circular.blue.icon {
background-color: #2185d0 !important;
color: #ffffff !important;
}
/* Violet */
i.violet.icon {
color: #6435c9 !important;
}
i.inverted.violet.icon {
color: #a291fb !important;
}
i.inverted.bordered.violet.icon,
i.inverted.circular.violet.icon {
background-color: #6435c9 !important;
color: #ffffff !important;
}
/* Purple */
i.purple.icon {
color: #a333c8 !important;
}
i.inverted.purple.icon {
color: #dc73ff !important;
}
i.inverted.bordered.purple.icon,
i.inverted.circular.purple.icon {
background-color: #a333c8 !important;
color: #ffffff !important;
}
/* Pink */
i.pink.icon {
color: #e03997 !important;
}
i.inverted.pink.icon {
color: #ff8edf !important;
}
i.inverted.bordered.pink.icon,
i.inverted.circular.pink.icon {
background-color: #e03997 !important;
color: #ffffff !important;
}
/* Brown */
i.brown.icon {
color: #a5673f !important;
}
i.inverted.brown.icon {
color: #d67c1c !important;
}
i.inverted.bordered.brown.icon,
i.inverted.circular.brown.icon {
background-color: #a5673f !important;
color: #ffffff !important;
}
/* Grey */
i.grey.icon {
color: #767676 !important;
}
i.inverted.grey.icon {
color: #dcddde !important;
}
i.inverted.bordered.grey.icon,
i.inverted.circular.grey.icon {
background-color: #767676 !important;
color: #ffffff !important;
}
/* Black */
i.black.icon {
color: #1b1c1d !important;
}
i.inverted.black.icon {
color: #545454 !important;
}
i.inverted.bordeblack.black.icon,
i.inverted.circular.black.icon {
background-color: #1b1c1d !important;
color: #ffffff !important;
} }
/*------------------- /*-------------------
Sizes Sizes
--------------------*/ --------------------*/
i.small.icon { i.mini.icon,
font-size: 0.875em; i.mini.icons {
line-height: 1;
font-size: 0.71428571rem;
} }
i.icon { i.tiny.icon,
i.tiny.icons {
line-height: 1;
font-size: 0.85714286rem;
}
i.small.icon,
i.small.icons {
line-height: 1;
font-size: 0.92857143em;
}
i.icon,
i.icons {
font-size: 1em; font-size: 1em;
} }
i.large.icon { i.large.icon,
i.large.icons {
line-height: 1;
vertical-align: middle;
font-size: 1.5em; font-size: 1.5em;
vertical-align: middle;
} }
i.big.icon { i.big.icon,
i.big.icons {
line-height: 1;
vertical-align: middle;
font-size: 2em; font-size: 2em;
vertical-align: middle;
} }
i.huge.icon { i.huge.icon,
i.huge.icons {
line-height: 1;
vertical-align: middle;
font-size: 4em; font-size: 4em;
vertical-align: middle;
} }
i.massive.icon { i.massive.icon,
font-size: 8em; i.massive.icons {
line-height: 1;
vertical-align: middle; vertical-align: middle;
font-size: 8em;
}
/*******************************
Groups
*******************************/
i.icons {
display: inline-block;
position: relative;
line-height: 1;
}
i.icons .icon {
position: absolute;
top: 50%;
left: 50%;
-webkit-transform: translateX(-50%) translateY(-50%);
-ms-transform: translateX(-50%) translateY(-50%);
transform: translateX(-50%) translateY(-50%);
margin: 0em;
margin: 0;
}
i.icons .icon:first-child {
position: static;
width: auto;
height: auto;
vertical-align: top;
-webkit-transform: none;
-ms-transform: none;
transform: none;
margin-right: 0.25rem;
}
/* Corner Icon */
i.icons .corner.icon {
top: auto;
left: auto;
right: 0;
bottom: 0;
-webkit-transform: none;
-ms-transform: none;
transform: none;
font-size: 0.45em;
text-shadow: -1px -1px 0 #ffffff, 1px -1px 0 #ffffff, -1px 1px 0 #ffffff, 1px 1px 0 #ffffff;
}
i.icons .inverted.corner.icon {
text-shadow: -1px -1px 0 #1b1c1d, 1px -1px 0 #1b1c1d, -1px 1px 0 #1b1c1d, 1px 1px 0 #1b1c1d;
} }
/* /*
* Font Awesome 4.3.0 by @davegandy - http://fontawesome.io - @fontawesome * Font Awesome 4.3.0 by @davegandy - http://fontawesome.io - @fontawesome
@ -957,6 +1102,12 @@ i.icon.circle.notched:before {
i.icon.circle.thin:before { i.icon.circle.thin:before {
content: "\f1db"; content: "\f1db";
} }
i.icon.square.outline:before {
content: "\f096";
}
i.icon.square:before {
content: "\f0c8";
}
/* Item Selection */ /* Item Selection */
i.icon.checkmark:before { i.icon.checkmark:before {
@ -1506,10 +1657,10 @@ i.icon.sort:before {
content: "\f0dc"; content: "\f0dc";
} }
i.icon.sort.ascending:before { i.icon.sort.ascending:before {
content: "\f0dd"; content: "\f0de";
} }
i.icon.sort.descending:before { i.icon.sort.descending:before {
content: "\f0de"; content: "\f0dd";
} }
i.icon.sort.alphabet.ascending:before { i.icon.sort.alphabet.ascending:before {
content: "\f15d"; content: "\f15d";
@ -1977,9 +2128,6 @@ i.icon.video:before {
i.icon.check:before { i.icon.check:before {
content: "\f00c"; content: "\f00c";
} }
i.icon.remove:before {
content: "\f00d";
}
i.icon.close:before { i.icon.close:before {
content: "\f00d"; content: "\f00d";
} }
@ -2028,9 +2176,6 @@ i.icon.play.circle.outline:before {
i.icon.headphone:before { i.icon.headphone:before {
content: "\f025"; content: "\f025";
} }
i.icon.volume.off:before {
content: "\f026";
}
i.icon.camera:before { i.icon.camera:before {
content: "\f030"; content: "\f030";
} }
@ -2058,9 +2203,6 @@ i.icon.signup:before {
i.icon.plus.circle:before { i.icon.plus.circle:before {
content: "\f055"; content: "\f055";
} }
i.icon.minus.circle:before {
content: "\f056";
}
i.icon.dont:before { i.icon.dont:before {
content: "\f05e"; content: "\f05e";
} }
@ -2106,9 +2248,6 @@ i.icon.line.graph:before {
i.icon.key:before { i.icon.key:before {
content: "\f084"; content: "\f084";
} }
i.icon.privacy:before {
content: "\f084";
}
i.icon.cogs:before { i.icon.cogs:before {
content: "\f085"; content: "\f085";
} }
@ -2136,8 +2275,8 @@ i.icon.winner:before {
i.icon.bookmark.outline:before { i.icon.bookmark.outline:before {
content: "\f097"; content: "\f097";
} }
i.icon.phone.square:before { i.icon.phone:before {
content: "\f098"; content: "\f095";
} }
i.icon.phone.square:before { i.icon.phone.square:before {
content: "\f098"; content: "\f098";
@ -2235,21 +2374,15 @@ i.icon.envelope:before {
i.icon.conversation:before { i.icon.conversation:before {
content: "\f0e6"; content: "\f0e6";
} }
i.icon.lightning:before {
content: "\f0e7";
}
i.icon.umbrella:before { i.icon.umbrella:before {
content: "\f0e9"; content: "\f0e9";
} }
i.icon.clipboard:before {
content: "\f0ea";
}
i.icon.lightbulb:before { i.icon.lightbulb:before {
content: "\f0eb"; content: "\f0eb";
} }
i.icon.suitcase:before {
content: "\f0f2";
}
i.icon.bell.outline:before {
content: "\f0a2";
}
i.icon.ambulance:before { i.icon.ambulance:before {
content: "\f0f9"; content: "\f0f9";
} }
@ -2289,9 +2422,6 @@ i.icon.star.half.full:before {
i.icon.question:before { i.icon.question:before {
content: "\f128"; content: "\f128";
} }
i.icon.attention:before {
content: "\f12a";
}
i.icon.eraser:before { i.icon.eraser:before {
content: "\f12d"; content: "\f12d";
} }
@ -2316,6 +2446,9 @@ i.icon.pencil.square:before {
i.icon.compass:before { i.icon.compass:before {
content: "\f14e"; content: "\f14e";
} }
i.icon.amex:before {
content: "\f1f3";
}
i.icon.eur:before { i.icon.eur:before {
content: "\f153"; content: "\f153";
} }
@ -2337,7 +2470,6 @@ i.icon.rouble:before,
i.icon.rub:before { i.icon.rub:before {
content: "\f158"; content: "\f158";
} }
i.icon.won:before,
i.icon.krw:before { i.icon.krw:before {
content: "\f159"; content: "\f159";
} }
@ -2366,9 +2498,6 @@ i.icon.wi-fi:before {
i.icon.graduation:before { i.icon.graduation:before {
content: "\f19d"; content: "\f19d";
} }
i.icon.\33d:before {
content: "\f1b2";
}
i.icon.weixin:before { i.icon.weixin:before {
content: "\f1d7"; content: "\f1d7";
} }
@ -2393,9 +2522,6 @@ i.icon.tty:before {
i.icon.cc:before { i.icon.cc:before {
content: "\f20a"; content: "\f20a";
} }
i.icon.ils:before {
content: "\f20b";
}
i.icon.plus.cart:before { i.icon.plus.cart:before {
content: "\f217"; content: "\f217";
} }
@ -2447,9 +2573,6 @@ i.icon.mars.stroke.vertical:before {
i.icon.mars.stroke.horizontal:before { i.icon.mars.stroke.horizontal:before {
content: "\f22b"; content: "\f22b";
} }
i.icon.neuter:before {
content: "\f22c";
}
i.icon.facebook.official { i.icon.facebook.official {
content: "\f230"; content: "\f230";
} }

6
web/semantic/dist/components/icon.min.css vendored Normal file → Executable file

File diff suppressed because one or more lines are too long

46
web/semantic/dist/components/image.css vendored Normal file → Executable file
View file

@ -1,9 +1,9 @@
/*! /*!
* # Semantic UI 1.11.4 - Image * # Semantic UI 2.1.7 - Image
* http://github.com/semantic-org/semantic-ui/ * http://github.com/semantic-org/semantic-ui/
* *
* *
* Copyright 2014 Contributors * Copyright 2015 Contributors
* Released under the MIT license * Released under the MIT license
* http://opensource.org/licenses/MIT * http://opensource.org/licenses/MIT
* *
@ -43,7 +43,7 @@ img.ui.image {
.ui.disabled.images, .ui.disabled.images,
.ui.disabled.image { .ui.disabled.image {
cursor: default; cursor: default;
opacity: 0.3; opacity: 0.45;
} }
@ -93,11 +93,9 @@ img.ui.image {
---------------*/ ---------------*/
.ui.rounded.images .image, .ui.rounded.images .image,
.ui.rounded.images img, .ui.rounded.image,
.ui.rounded.images svg, .ui.rounded.images .image > *,
.ui.rounded.image img, .ui.rounded.image > * {
.ui.rounded.image svg,
.ui.rounded.image {
border-radius: 0.3125em; border-radius: 0.3125em;
} }
@ -123,11 +121,9 @@ img.ui.bordered.image {
overflow: hidden; overflow: hidden;
} }
.ui.circular.images .image, .ui.circular.images .image,
.ui.circular.images img, .ui.circular.image,
.ui.circular.images svg, .ui.circular.images .image > *,
.ui.circular.image img, .ui.circular.image > * {
.ui.circular.image svg,
.ui.circular.image {
border-radius: 500rem; border-radius: 500rem;
} }
@ -158,11 +154,29 @@ img.ui.bordered.image {
.ui.avatar.image { .ui.avatar.image {
margin-right: 0.25em; margin-right: 0.25em;
display: inline-block; display: inline-block;
width: 2.5em; width: 2em;
height: 2.5em; height: 2em;
border-radius: 500rem; border-radius: 500rem;
} }
/*-------------------
Spaced
--------------------*/
.ui.spaced.image {
display: inline-block !important;
margin-left: 0.5em;
margin-right: 0.5em;
}
.ui[class*="left spaced"].image {
margin-left: 0.5em;
margin-right: 0em;
}
.ui[class*="right spaced"].image {
margin-left: 0em;
margin-right: 0.5em;
}
/*------------------- /*-------------------
Floated Floated
--------------------*/ --------------------*/
@ -198,7 +212,7 @@ img.ui.bordered.image {
.ui.mini.images img, .ui.mini.images img,
.ui.mini.images svg, .ui.mini.images svg,
.ui.mini.image { .ui.mini.image {
width: 20px; width: 35px;
height: auto; height: auto;
font-size: 0.71428571rem; font-size: 0.71428571rem;
} }

6
web/semantic/dist/components/image.min.css vendored Normal file → Executable file
View file

@ -1,10 +1,10 @@
/*! /*!
* # Semantic UI 1.11.4 - Image * # Semantic UI 2.1.7 - Image
* http://github.com/semantic-org/semantic-ui/ * http://github.com/semantic-org/semantic-ui/
* *
* *
* Copyright 2014 Contributors * Copyright 2015 Contributors
* Released under the MIT license * Released under the MIT license
* http://opensource.org/licenses/MIT * http://opensource.org/licenses/MIT
* *
*/.ui.image{position:relative;display:inline-block;vertical-align:middle;max-width:100%;background-color:transparent}img.ui.image{display:block}.ui.image img,.ui.image svg{display:block;max-width:100%;height:auto}.ui.hidden.image,.ui.hidden.images{display:none}.ui.disabled.image,.ui.disabled.images{cursor:default;opacity:.3}.ui.inline.image,.ui.inline.image img,.ui.inline.image svg{display:inline-block}.ui.top.aligned.image,.ui.top.aligned.image img,.ui.top.aligned.image svg,.ui.top.aligned.images .image{display:inline-block;vertical-align:top}.ui.middle.aligned.image,.ui.middle.aligned.image img,.ui.middle.aligned.image svg,.ui.middle.aligned.images .image{display:inline-block;vertical-align:middle}.ui.bottom.aligned.image,.ui.bottom.aligned.image img,.ui.bottom.aligned.image svg,.ui.bottom.aligned.images .image{display:inline-block;vertical-align:bottom}.ui.rounded.image,.ui.rounded.image img,.ui.rounded.image svg,.ui.rounded.images .image,.ui.rounded.images img,.ui.rounded.images svg{border-radius:.3125em}.ui.bordered.image img,.ui.bordered.image svg,.ui.bordered.images .image,.ui.bordered.images img,.ui.bordered.images svg,img.ui.bordered.image{border:1px solid rgba(0,0,0,.1)}.ui.circular.image,.ui.circular.images{overflow:hidden}.ui.circular.image,.ui.circular.image img,.ui.circular.image svg,.ui.circular.images .image,.ui.circular.images img,.ui.circular.images svg{border-radius:500rem}.ui.fluid.image,.ui.fluid.image img,.ui.fluid.image svg,.ui.fluid.images,.ui.fluid.images img,.ui.fluid.images svg{display:block;width:100%;height:auto}.ui.avatar.image,.ui.avatar.image img,.ui.avatar.image svg,.ui.avatar.images .image,.ui.avatar.images img,.ui.avatar.images svg{margin-right:.25em;display:inline-block;width:2.5em;height:2.5em;border-radius:500rem}.ui.floated.image,.ui.floated.images{float:left;margin-right:1em;margin-bottom:1em}.ui.right.floated.image,.ui.right.floated.images{float:right;margin-right:0;margin-bottom:1em;margin-left:1em}.ui.floated.image:last-child,.ui.floated.images:last-child{margin-bottom:0}.ui.centered.image,.ui.centered.images{margin-left:auto;margin-right:auto}.ui.mini.image,.ui.mini.images .image,.ui.mini.images img,.ui.mini.images svg{width:20px;height:auto;font-size:.71428571rem}.ui.tiny.image,.ui.tiny.images .image,.ui.tiny.images img,.ui.tiny.images svg{width:80px;height:auto;font-size:.85714286rem}.ui.small.image,.ui.small.images .image,.ui.small.images img,.ui.small.images svg{width:150px;height:auto;font-size:.92857143rem}.ui.medium.image,.ui.medium.images .image,.ui.medium.images img,.ui.medium.images svg{width:300px;height:auto;font-size:1rem}.ui.large.image,.ui.large.images .image,.ui.large.images img,.ui.large.images svg{width:450px;height:auto;font-size:1.14285714rem}.ui.big.image,.ui.big.images .image,.ui.big.images img,.ui.big.images svg{width:600px;height:auto;font-size:1.28571429rem}.ui.huge.image,.ui.huge.images .image,.ui.huge.images img,.ui.huge.images svg{width:800px;height:auto;font-size:1.42857143rem}.ui.massive.image,.ui.massive.images .image,.ui.massive.images img,.ui.massive.images svg{width:960px;height:auto;font-size:1.71428571rem}.ui.images{font-size:0;margin:0 -.25rem}.ui.images .image,.ui.images img,.ui.images svg{display:inline-block;margin:0 .25rem .5rem} */.ui.image{position:relative;display:inline-block;vertical-align:middle;max-width:100%;background-color:transparent}img.ui.image{display:block}.ui.image img,.ui.image svg{display:block;max-width:100%;height:auto}.ui.hidden.image,.ui.hidden.images{display:none}.ui.disabled.image,.ui.disabled.images{cursor:default;opacity:.45}.ui.inline.image,.ui.inline.image img,.ui.inline.image svg{display:inline-block}.ui.top.aligned.image,.ui.top.aligned.image img,.ui.top.aligned.image svg,.ui.top.aligned.images .image{display:inline-block;vertical-align:top}.ui.middle.aligned.image,.ui.middle.aligned.image img,.ui.middle.aligned.image svg,.ui.middle.aligned.images .image{display:inline-block;vertical-align:middle}.ui.bottom.aligned.image,.ui.bottom.aligned.image img,.ui.bottom.aligned.image svg,.ui.bottom.aligned.images .image{display:inline-block;vertical-align:bottom}.ui.rounded.image,.ui.rounded.image>*,.ui.rounded.images .image,.ui.rounded.images .image>*{border-radius:.3125em}.ui.bordered.image img,.ui.bordered.image svg,.ui.bordered.images .image,.ui.bordered.images img,.ui.bordered.images svg,img.ui.bordered.image{border:1px solid rgba(0,0,0,.1)}.ui.circular.image,.ui.circular.images{overflow:hidden}.ui.circular.image,.ui.circular.image>*,.ui.circular.images .image,.ui.circular.images .image>*{border-radius:500rem}.ui.fluid.image,.ui.fluid.image img,.ui.fluid.image svg,.ui.fluid.images,.ui.fluid.images img,.ui.fluid.images svg{display:block;width:100%;height:auto}.ui.avatar.image,.ui.avatar.image img,.ui.avatar.image svg,.ui.avatar.images .image,.ui.avatar.images img,.ui.avatar.images svg{margin-right:.25em;display:inline-block;width:2em;height:2em;border-radius:500rem}.ui.spaced.image{display:inline-block!important;margin-left:.5em;margin-right:.5em}.ui[class*="left spaced"].image{margin-left:.5em;margin-right:0}.ui[class*="right spaced"].image{margin-left:0;margin-right:.5em}.ui.floated.image,.ui.floated.images{float:left;margin-right:1em;margin-bottom:1em}.ui.right.floated.image,.ui.right.floated.images{float:right;margin-right:0;margin-bottom:1em;margin-left:1em}.ui.floated.image:last-child,.ui.floated.images:last-child{margin-bottom:0}.ui.centered.image,.ui.centered.images{margin-left:auto;margin-right:auto}.ui.mini.image,.ui.mini.images .image,.ui.mini.images img,.ui.mini.images svg{width:35px;height:auto;font-size:.71428571rem}.ui.tiny.image,.ui.tiny.images .image,.ui.tiny.images img,.ui.tiny.images svg{width:80px;height:auto;font-size:.85714286rem}.ui.small.image,.ui.small.images .image,.ui.small.images img,.ui.small.images svg{width:150px;height:auto;font-size:.92857143rem}.ui.medium.image,.ui.medium.images .image,.ui.medium.images img,.ui.medium.images svg{width:300px;height:auto;font-size:1rem}.ui.large.image,.ui.large.images .image,.ui.large.images img,.ui.large.images svg{width:450px;height:auto;font-size:1.14285714rem}.ui.big.image,.ui.big.images .image,.ui.big.images img,.ui.big.images svg{width:600px;height:auto;font-size:1.28571429rem}.ui.huge.image,.ui.huge.images .image,.ui.huge.images img,.ui.huge.images svg{width:800px;height:auto;font-size:1.42857143rem}.ui.massive.image,.ui.massive.images .image,.ui.massive.images img,.ui.massive.images svg{width:960px;height:auto;font-size:1.71428571rem}.ui.images{font-size:0;margin:0 -.25rem}.ui.images .image,.ui.images img,.ui.images svg{display:inline-block;margin:0 .25rem .5rem}

336
web/semantic/dist/components/input.css vendored Normal file → Executable file
View file

@ -1,9 +1,9 @@
/*! /*!
* # Semantic UI 1.11.4 - Input * # Semantic UI 2.1.7 - Input
* http://github.com/semantic-org/semantic-ui/ * http://github.com/semantic-org/semantic-ui/
* *
* *
* Copyright 2014 Contributors * Copyright 2015 Contributors
* Released under the MIT license * Released under the MIT license
* http://opensource.org/licenses/MIT * http://opensource.org/licenses/MIT
* *
@ -21,24 +21,33 @@
.ui.input { .ui.input {
position: relative; position: relative;
display: inline-block; font-weight: normal;
color: rgba(0, 0, 0, 0.8); font-style: normal;
display: -webkit-inline-box;
display: -webkit-inline-flex;
display: -ms-inline-flexbox;
display: inline-flex;
color: rgba(0, 0, 0, 0.87);
} }
.ui.input input { .ui.input input {
margin: 0em; margin: 0em;
width: 100%; max-width: 100%;
-webkit-box-flex: 1;
-webkit-flex: 1 0 auto;
-ms-flex: 1 0 auto;
flex: 1 0 auto;
outline: none; outline: none;
-webkit-tap-highlight-color: rgba(255, 255, 255, 0); -webkit-tap-highlight-color: rgba(255, 255, 255, 0);
text-align: left; text-align: left;
line-height: 1.2142em; line-height: 1.2142em;
font-family: 'Lato', 'Helvetica Neue', Arial, Helvetica, sans-serif; font-family: 'Lato', 'Helvetica Neue', Arial, Helvetica, sans-serif;
padding: 0.67861em 1em; padding: 0.67861429em 1em;
background: #ffffff; background: #ffffff;
border: 1px solid rgba(0, 0, 0, 0.15); border: 1px solid rgba(34, 36, 38, 0.15);
color: rgba(0, 0, 0, 0.8); color: rgba(0, 0, 0, 0.87);
border-radius: 0.2857rem; border-radius: 0.28571429rem;
-webkit-transition: background-color 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease; -webkit-transition: box-shadow 0.1s ease, border-color 0.1s ease;
transition: background-color 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease; transition: box-shadow 0.1s ease, border-color 0.1s ease;
box-shadow: none; box-shadow: none;
} }
@ -54,6 +63,9 @@
.ui.input input::-moz-placeholder { .ui.input input::-moz-placeholder {
color: rgba(0, 0, 0, 0.4); color: rgba(0, 0, 0, 0.4);
} }
.ui.input input::-ms-input-placeholder {
color: rgba(0, 0, 0, 0.4);
}
/******************************* /*******************************
@ -61,6 +73,18 @@
*******************************/ *******************************/
/*--------------------
Disabled
---------------------*/
.ui.disabled.input,
.ui.input input[disabled] {
opacity: 0.45;
}
.ui.disabled.input input {
pointer-events: none;
}
/*-------------------- /*--------------------
Active Active
---------------------*/ ---------------------*/
@ -69,7 +93,7 @@
.ui.input.down input { .ui.input.down input {
border-color: rgba(0, 0, 0, 0.3); border-color: rgba(0, 0, 0, 0.3);
background: #fafafa; background: #fafafa;
color: rgba(0, 0, 0, 0.8); color: rgba(0, 0, 0, 0.87);
box-shadow: none; box-shadow: none;
} }
@ -82,9 +106,9 @@
content: ''; content: '';
top: 50%; top: 50%;
left: 50%; left: 50%;
margin: -0.64285em 0em 0em -0.64285em; margin: -0.64285714em 0em 0em -0.64285714em;
width: 1.2857em; width: 1.28571429em;
height: 1.2857em; height: 1.28571429em;
border-radius: 500rem; border-radius: 500rem;
border: 0.2em solid rgba(0, 0, 0, 0.1); border: 0.2em solid rgba(0, 0, 0, 0.1);
} }
@ -93,15 +117,15 @@
content: ''; content: '';
top: 50%; top: 50%;
left: 50%; left: 50%;
margin: -0.64285em 0em 0em -0.64285em; margin: -0.64285714em 0em 0em -0.64285714em;
width: 1.2857em; width: 1.28571429em;
height: 1.2857em; height: 1.28571429em;
-webkit-animation: button-spin 0.6s linear; -webkit-animation: button-spin 0.6s linear;
animation: button-spin 0.6s linear; animation: button-spin 0.6s linear;
-webkit-animation-iteration-count: infinite; -webkit-animation-iteration-count: infinite;
animation-iteration-count: infinite; animation-iteration-count: infinite;
border-radius: 500rem; border-radius: 500rem;
border-color: #aaaaaa transparent transparent; border-color: #767676 transparent transparent;
border-style: solid; border-style: solid;
border-width: 0.2em; border-width: 0.2em;
box-shadow: 0px 0px 0px 1px transparent; box-shadow: 0px 0px 0px 1px transparent;
@ -113,18 +137,22 @@
.ui.input.focus input, .ui.input.focus input,
.ui.input input:focus { .ui.input input:focus {
border-color: rgba(39, 41, 43, 0.3); border-color: #85b7d9;
background: #ffffff; background: #ffffff;
color: rgba(0, 0, 0, 0.8); color: rgba(0, 0, 0, 0.8);
box-shadow: none; box-shadow: none;
} }
.ui.input.focus input input::-webkit-input-placeholder, .ui.input.focus input::-webkit-input-placeholder,
.ui.input input:focus input::-webkit-input-placeholder { .ui.input input:focus::-webkit-input-placeholder {
color: rgba(0, 0, 0, 0.8); color: rgba(0, 0, 0, 0.87);
} }
.ui.input.focus input input::-moz-placeholder, .ui.input.focus input::-moz-placeholder,
.ui.input input:focus input::-moz-placeholder { .ui.input input:focus::-moz-placeholder {
color: rgba(0, 0, 0, 0.8); color: rgba(0, 0, 0, 0.87);
}
.ui.input.focus input::-ms-input-placeholder,
.ui.input input:focus::-ms-input-placeholder {
color: rgba(0, 0, 0, 0.87);
} }
/*-------------------- /*--------------------
@ -132,26 +160,32 @@
---------------------*/ ---------------------*/
.ui.input.error input { .ui.input.error input {
background-color: #fff0f0; background-color: #fff6f6;
border-color: #dbb1b1; border-color: #e0b4b4;
color: #d95c5c; color: #9f3a38;
box-shadow: none; box-shadow: none;
} }
/* Error Placeholder */ /* Error Placeholder */
.ui.input.error input ::-webkit-input-placeholder { .ui.input.error input::-webkit-input-placeholder {
color: rgba(255, 80, 80, 0.4); color: #e7bdbc;
} }
.ui.input.error input ::-moz-placeholder { .ui.input.error input::-moz-placeholder {
color: rgba(255, 80, 80, 0.4); color: #e7bdbc;
}
.ui.input.error input::-ms-input-placeholder {
color: #e7bdbc;
} }
/* Focused Error Placeholder */ /* Focused Error Placeholder */
.ui.input.error input :focus::-webkit-input-placeholder { .ui.input.error input:focus::-webkit-input-placeholder {
color: rgba(255, 80, 80, 0.7); color: #da9796;
} }
.ui.input.error input :focus::-moz-placeholder { .ui.input.error input:focus::-moz-placeholder {
color: rgba(255, 80, 80, 0.7); color: #da9796;
}
.ui.input.error input:focus::-ms-input-placeholder {
color: #da9796;
} }
@ -165,34 +199,41 @@
---------------------*/ ---------------------*/
.ui.transparent.input input { .ui.transparent.input input {
border-color: transparent; border-color: transparent !important;
background-color: transparent; background-color: transparent !important;
padding: 0em; padding: 0em !important;
box-shadow: none !important;
} }
/* Transparent Icon */ /* Transparent Icon */
.ui.transparent.icon.input > i.icon { .ui.transparent.icon.input > i.icon {
width: 1.25em; width: 1.1em;
} }
.ui.transparent.icon.input > input { .ui.transparent.icon.input > input {
padding-left: 0em !important; padding-left: 0em !important;
padding-right: 2em !important; padding-right: 2em !important;
} }
.ui.transparent[class*="left icon"].input > input { .ui.transparent[class*="left icon"].input > input {
padding-left: 0em !important;
padding-left: 2em !important; padding-left: 2em !important;
padding-right: 0em !important;
} }
/* Transparent Inverted */ /* Transparent Inverted */
.ui.transparent.inverted.input input::-moz-placeholder {
color: rgba(255, 255, 255, 0.5);
}
.ui.transparent.inverted.input { .ui.transparent.inverted.input {
color: #ffffff; color: #ffffff;
} }
.ui.transparent.inverted.input input { .ui.transparent.inverted.input input {
color: inherit; color: inherit;
} }
.ui.transparent.inverted.input input::-webkit-input-placeholder {
color: rgba(255, 255, 255, 0.5);
}
.ui.transparent.inverted.input input::-moz-placeholder {
color: rgba(255, 255, 255, 0.5);
}
.ui.transparent.inverted.input input::-ms-input-placeholder {
color: rgba(255, 255, 255, 0.5);
}
/*-------------------- /*--------------------
Icon Icon
@ -201,19 +242,23 @@
.ui.icon.input > i.icon { .ui.icon.input > i.icon {
cursor: default; cursor: default;
position: absolute; position: absolute;
line-height: 1;
text-align: center; text-align: center;
top: 0px; top: 0px;
right: 0px; right: 0px;
margin: 0em; margin: 0em;
height: 100%; height: 100%;
width: 2.82142em; width: 2.67142857em;
opacity: 0.5; opacity: 0.5;
border-radius: 0em 0.2857rem 0.2857rem 0em; border-radius: 0em 0.28571429rem 0.28571429rem 0em;
-webkit-transition: opacity 0.3s ease; -webkit-transition: opacity 0.3s ease;
transition: opacity 0.3s ease; transition: opacity 0.3s ease;
} }
.ui.icon.input > i.icon:not(.link) {
pointer-events: none;
}
.ui.icon.input input { .ui.icon.input input {
padding-right: 2.82142em !important; padding-right: 2.67142857em !important;
} }
.ui.icon.input > i.icon:before, .ui.icon.input > i.icon:before,
.ui.icon.input > i.icon:after { .ui.icon.input > i.icon:after {
@ -236,14 +281,14 @@
.ui[class*="left icon"].input > i.icon { .ui[class*="left icon"].input > i.icon {
right: auto; right: auto;
left: 1px; left: 1px;
border-radius: 0.2857rem 0em 0em 0.2857rem; border-radius: 0.28571429rem 0em 0em 0.28571429rem;
} }
.ui[class*="left icon"].input > i.circular.icon { .ui[class*="left icon"].input > i.circular.icon {
right: auto; right: auto;
left: 0.5em; left: 0.5em;
} }
.ui[class*="left icon"].input > input { .ui[class*="left icon"].input > input {
padding-left: 2.82142em !important; padding-left: 2.67142857em !important;
padding-right: 1em !important; padding-right: 1em !important;
} }
@ -258,128 +303,155 @@
/* Adjacent Label */ /* Adjacent Label */
.ui.labeled.input {
display: -webkit-inline-box;
display: -webkit-inline-flex;
display: -ms-inline-flexbox;
display: inline-flex;
}
.ui.labeled.input > .label { .ui.labeled.input > .label {
-webkit-box-flex: 1; -webkit-box-flex: 0;
-webkit-flex: 1 0 auto; -webkit-flex: 0 0 auto;
-ms-flex: 1 0 auto; -ms-flex: 0 0 auto;
flex: 1 0 auto; flex: 0 0 auto;
margin: 0; margin: 0;
font-size: 1em; font-size: 1em;
} }
.ui.labeled.input > .label:not(.corner) { .ui.labeled.input > .label:not(.corner) {
padding-top: 0.78571em; padding-top: 0.78571429em;
padding-bottom: 0.78571em; padding-bottom: 0.78571429em;
} }
/* Fluid Labeled */ /* Regular Label on Left */
.ui.fluid.labeled.input { .ui.labeled.input:not([class*="corner labeled"]) .label:first-child {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
}
/* Label on Left */
.ui.labeled.input:not([class*="corner labeled"]):not([class*="right labeled"]) > input {
border-left: none;
border-top-left-radius: 0px;
border-bottom-left-radius: 0px;
}
.ui.labeled.input:not([class*="corner labeled"]):not([class*="right labeled"]) > .label {
border-top-right-radius: 0px; border-top-right-radius: 0px;
border-bottom-right-radius: 0px; border-bottom-right-radius: 0px;
} }
.ui.labeled.input:not([class*="corner labeled"]) .label:first-child + input {
/* Label on Right */
.ui[class*="right labeled"].input > input {
border-right: none;
border-top-right-radius: 0px !important;
border-bottom-right-radius: 0px !important;
}
.ui[class*="right labeled"].input > .label {
border-top-left-radius: 0px; border-top-left-radius: 0px;
border-bottom-left-radius: 0px; border-bottom-left-radius: 0px;
border-left-color: transparent;
}
.ui.labeled.input:not([class*="corner labeled"]) .label:first-child + input:focus {
border-left-color: #85b7d9;
}
/* Regular Label on Right */
.ui[class*="right labeled"].input input {
border-top-right-radius: 0px !important;
border-bottom-right-radius: 0px !important;
border-right-color: transparent !important;
}
.ui[class*="right labeled"].input input + .label {
border-top-left-radius: 0px;
border-bottom-left-radius: 0px;
}
.ui[class*="right labeled"].input input:focus {
border-right-color: #85b7d9 !important;
} }
/* Corner Label */ /* Corner Label */
.ui.labeled.input .corner.label { .ui.labeled.input .corner.label {
top: 1px; top: 1px;
right: 1px; right: 1px;
font-size: 0.75em; font-size: 0.64285714em;
border-radius: 0em 0.2857rem 0em 0em; border-radius: 0em 0.28571429rem 0em 0em;
}
.ui.labeled.input input {
padding-right: 2.5em !important;
} }
/* Spacing with corner label */ /* Spacing with corner label */
.ui[class*="corner labeled"].icon.input:not(.left) > input { .ui[class*="corner labeled"]:not([class*="left corner labeled"]).labeled.input input {
padding-right: 2.5em !important;
}
.ui[class*="corner labeled"].icon.input:not([class*="left corner labeled"]) > input {
padding-right: 3.25em !important; padding-right: 3.25em !important;
} }
.ui[class*="corner labeled"].icon.input:not(.left) > .icon { .ui[class*="corner labeled"].icon.input:not([class*="left corner labeled"]) > .icon {
margin-right: 1.25em; margin-right: 1.25em;
} }
/* Left Labeled */
.ui[class*="left corner labeled"].labeled.input input {
padding-left: 2.5em !important;
}
.ui[class*="left corner labeled"].icon.input > input {
padding-left: 3.25em !important;
}
.ui[class*="left corner labeled"].icon.input > .icon {
margin-left: 1.25em;
}
/* Corner Label Position */
.ui.input > .ui.corner.label {
top: 1px;
right: 1px;
}
.ui.input > .ui.left.corner.label {
right: auto;
left: 1px;
}
/*-------------------- /*--------------------
Action Action
---------------------*/ ---------------------*/
.ui.action.input {
display: -webkit-inline-box;
display: -webkit-inline-flex;
display: -ms-inline-flexbox;
display: inline-flex;
}
.ui.action.input > .button, .ui.action.input > .button,
.ui.action.input > .buttons { .ui.action.input > .buttons {
-webkit-box-flex: 1;
-webkit-flex: 1 0 auto;
-ms-flex: 1 0 auto;
flex: 1 0 auto;
}
.ui.action.input > .button,
.ui.action.input > .buttons > .button {
padding-top: 0.78571em;
padding-bottom: 0.78571em;
margin: 0;
}
/* Fluid */
.ui.fluid.action.input {
display: -webkit-box; display: -webkit-box;
display: -webkit-flex; display: -webkit-flex;
display: -ms-flexbox; display: -ms-flexbox;
display: flex; display: flex;
-webkit-box-align: center;
-webkit-align-items: center;
-ms-flex-align: center;
align-items: center;
-webkit-box-flex: 0;
-webkit-flex: 0 0 auto;
-ms-flex: 0 0 auto;
flex: 0 0 auto;
}
.ui.action.input > .button,
.ui.action.input > .buttons > .button {
padding-top: 0.78571429em;
padding-bottom: 0.78571429em;
margin: 0;
} }
/* Button on Right */ /* Button on Right */
.ui.action.input:not([class*="left action"]) > input { .ui.action.input:not([class*="left action"]) > input {
border-right: none;
border-top-right-radius: 0px !important; border-top-right-radius: 0px !important;
border-bottom-right-radius: 0px !important; border-bottom-right-radius: 0px !important;
border-right-color: transparent !important;
} }
.ui.action.input:not([class*="left action"]) > .dropdown,
.ui.action.input:not([class*="left action"]) > .button, .ui.action.input:not([class*="left action"]) > .button,
.ui.action.input:not([class*="left action"]) > .buttons > .button { .ui.action.input:not([class*="left action"]) > .buttons > .button {
border-top-left-radius: 0px; border-radius: 0px;
border-bottom-left-radius: 0px; }
.ui.action.input:not([class*="left action"]) > .dropdown:last-child,
.ui.action.input:not([class*="left action"]) > .button:last-child,
.ui.action.input:not([class*="left action"]) > .buttons:last-child > .button {
border-radius: 0px 0.28571429rem 0.28571429rem 0px;
}
/* Input Focus */
.ui.action.input:not([class*="left action"]) input:focus {
border-right-color: #85b7d9 !important;
} }
/* Button on Left */ /* Button on Left */
.ui[class*="left action"].input > input {
border-top-left-radius: 0px !important;
border-bottom-left-radius: 0px !important;
border-left-color: transparent !important;
}
.ui[class*="left action"].input > .dropdown,
.ui[class*="left action"].input > .button, .ui[class*="left action"].input > .button,
.ui[class*="left action"].input > .buttons > .button { .ui[class*="left action"].input > .buttons > .button {
border-top-right-radius: 0px; border-radius: 0px;
border-bottom-right-radius: 0px;
} }
.ui[class*="left action"].input > input { .ui[class*="left action"].input > .dropdown:first-child,
border-left: none; .ui[class*="left action"].input > .button:first-child,
border-top-left-radius: 0px; .ui[class*="left action"].input > .buttons:first-child > .button {
border-bottom-left-radius: 0px; border-radius: 0.28571429rem 0px 0px 0.28571429rem;
}
/* Input Focus */
.ui[class*="left action"].input > input:focus {
border-left-color: #85b7d9 !important;
} }
/*-------------------- /*--------------------
@ -397,7 +469,13 @@
---------------------*/ ---------------------*/
.ui.fluid.input { .ui.fluid.input {
display: block; display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
}
.ui.fluid.input > input {
width: 0px !important;
} }
/*-------------------- /*--------------------
@ -405,25 +483,25 @@
---------------------*/ ---------------------*/
.ui.mini.input { .ui.mini.input {
font-size: 0.8125rem; font-size: 0.71428571em;
} }
.ui.small.input { .ui.small.input {
font-size: 0.875rem; font-size: 0.92857143em;
} }
.ui.input { .ui.input {
font-size: 1rem; font-size: 1em;
} }
.ui.large.input { .ui.large.input {
font-size: 1.125rem; font-size: 1.14285714em;
} }
.ui.big.input { .ui.big.input {
font-size: 1.25rem; font-size: 1.28571429em;
} }
.ui.huge.input { .ui.huge.input {
font-size: 1.375rem; font-size: 1.42857143em;
} }
.ui.massive.input { .ui.massive.input {
font-size: 1.5rem; font-size: 1.71428571em;
} }

6
web/semantic/dist/components/input.min.css vendored Normal file → Executable file

File diff suppressed because one or more lines are too long

98
web/semantic/dist/components/item.css vendored Normal file → Executable file
View file

@ -1,9 +1,9 @@
/*! /*!
* # Semantic UI 1.11.4 - Item * # Semantic UI 2.1.7 - Item
* http://github.com/semantic-org/semantic-ui/ * http://github.com/semantic-org/semantic-ui/
* *
* *
* Copyright 2014 Contributorss * Copyright 2015 Contributors
* Released under the MIT license * Released under the MIT license
* http://opensource.org/licenses/MIT * http://opensource.org/licenses/MIT
* *
@ -20,8 +20,10 @@
---------------*/ ---------------*/
.ui.items > .item { .ui.items > .item {
table-layout: fixed; display: -webkit-box;
display: table; display: -webkit-flex;
display: -ms-flexbox;
display: flex;
margin: 1em 0em; margin: 1em 0em;
width: 100%; width: 100%;
min-height: 0px; min-height: 0px;
@ -30,8 +32,8 @@
border: none; border: none;
border-radius: 0rem; border-radius: 0rem;
box-shadow: none; box-shadow: none;
-webkit-transition: box-shadow 0.2s ease; -webkit-transition: box-shadow 0.1s ease;
transition: box-shadow 0.2s ease; transition: box-shadow 0.1s ease;
z-index: ''; z-index: '';
} }
.ui.items > .item a { .ui.items > .item a {
@ -56,9 +58,6 @@
Item Item
---------------*/ ---------------*/
.ui.items > .item {
min-width: 100%;
}
.ui.items > .item:after { .ui.items > .item:after {
display: block; display: block;
content: ' '; content: ' ';
@ -80,12 +79,18 @@
.ui.items > .item > .image { .ui.items > .item > .image {
position: relative; position: relative;
display: table-cell; -webkit-box-flex: 0;
-webkit-flex: 0 0 auto;
-ms-flex: 0 0 auto;
flex: 0 0 auto;
display: block;
float: none; float: none;
margin: 0em; margin: 0em;
padding: 0em; padding: 0em;
max-height: ''; max-height: '';
vertical-align: top; -webkit-align-self: top;
-ms-flex-item-align: top;
align-self: top;
} }
.ui.items > .item > .image > img { .ui.items > .item > .image > img {
display: block; display: block;
@ -104,6 +109,10 @@
.ui.items > .item > .content { .ui.items > .item > .content {
display: block; display: block;
-webkit-box-flex: 1;
-webkit-flex: 1 1 auto;
-ms-flex: 1 1 auto;
flex: 1 1 auto;
background: none; background: none;
margin: 0em; margin: 0em;
padding: 0em; padding: 0em;
@ -121,15 +130,18 @@
visibility: hidden; visibility: hidden;
} }
.ui.items > .item > .image + .content { .ui.items > .item > .image + .content {
width: 100%; min-width: 0;
display: table-cell; width: auto;
display: block;
margin-left: 0em; margin-left: 0em;
vertical-align: top; -webkit-align-self: top;
-ms-flex-item-align: top;
align-self: top;
padding-left: 1.5em; padding-left: 1.5em;
} }
.ui.items > .item > .content > .header { .ui.items > .item > .content > .header {
display: block; display: inline-block;
margin: -0.165em 0em 0em; margin: -0.21425em 0em 0em;
font-family: 'Lato', 'Helvetica Neue', Arial, Helvetica, sans-serif; font-family: 'Lato', 'Helvetica Neue', Arial, Helvetica, sans-serif;
font-weight: bold; font-weight: bold;
color: rgba(0, 0, 0, 0.85); color: rgba(0, 0, 0, 0.85);
@ -137,7 +149,7 @@
/* Default Header Size */ /* Default Header Size */
.ui.items > .item > .content > .header:not(.ui) { .ui.items > .item > .content > .header:not(.ui) {
font-size: 1.2em; font-size: 1.28571429em;
} }
/*-------------- /*--------------
@ -156,7 +168,9 @@
---------------*/ ---------------*/
.ui.items > .item .content img { .ui.items > .item .content img {
vertical-align: middle; -webkit-align-self: middle;
-ms-flex-item-align: middle;
align-self: middle;
width: ''; width: '';
} }
.ui.items > .item img.avatar, .ui.items > .item img.avatar,
@ -172,10 +186,10 @@
.ui.items > .item > .content > .description { .ui.items > .item > .content > .description {
margin-top: 0.6em; margin-top: 0.6em;
max-width: 550px; max-width: auto;
font-size: 1em; font-size: 1em;
line-height: 1.33; line-height: 1.4285em;
color: rgba(0, 0, 0, 0.8); color: rgba(0, 0, 0, 0.87);
} }
/*-------------- /*--------------
@ -194,6 +208,7 @@
---------------*/ ---------------*/
.ui.items > .item .meta { .ui.items > .item .meta {
margin: 0.5em 0em 0.5em;
font-size: 1em; font-size: 1em;
line-height: 1em; line-height: 1em;
color: rgba(0, 0, 0, 0.6); color: rgba(0, 0, 0, 0.6);
@ -217,8 +232,8 @@
/* Generic */ /* Generic */
.ui.items > .item > .content a:not(.ui) { .ui.items > .item > .content a:not(.ui) {
color: ''; color: '';
-webkit-transition: color 0.2s ease; -webkit-transition: color 0.1s ease;
transition: color 0.2s ease; transition: color 0.1s ease;
} }
.ui.items > .item > .content a:not(.ui):hover { .ui.items > .item > .content a:not(.ui):hover {
color: ''; color: '';
@ -229,7 +244,7 @@
color: rgba(0, 0, 0, 0.85); color: rgba(0, 0, 0, 0.85);
} }
.ui.items > .item > .content > a.header:hover { .ui.items > .item > .content > a.header:hover {
color: #00b2f3; color: #1e70bf;
} }
/* Meta */ /* Meta */
@ -237,7 +252,7 @@
color: rgba(0, 0, 0, 0.4); color: rgba(0, 0, 0, 0.4);
} }
.ui.items > .item .meta > a:not(.ui):hover { .ui.items > .item .meta > a:not(.ui):hover {
color: rgba(0, 0, 0, 0.8); color: rgba(0, 0, 0, 0.87);
} }
/*-------------- /*--------------
@ -252,8 +267,8 @@
.ui.items > .item > .content .favorite.icon { .ui.items > .item > .content .favorite.icon {
cursor: pointer; cursor: pointer;
opacity: 0.75; opacity: 0.75;
-webkit-transition: color 0.2s ease; -webkit-transition: color 0.1s ease;
transition: color 0.2s ease; transition: color 0.1s ease;
} }
.ui.items > .item > .content .favorite.icon:hover { .ui.items > .item > .content .favorite.icon:hover {
opacity: 1; opacity: 1;
@ -270,8 +285,8 @@
.ui.items > .item > .content .like.icon { .ui.items > .item > .content .like.icon {
cursor: pointer; cursor: pointer;
opacity: 0.75; opacity: 0.75;
-webkit-transition: color 0.2s ease; -webkit-transition: color 0.1s ease;
transition: color 0.2s ease; transition: color 0.1s ease;
} }
.ui.items > .item > .content .like.icon:hover { .ui.items > .item > .content .like.icon:hover {
opacity: 1; opacity: 1;
@ -296,8 +311,8 @@
left: 0em; left: 0em;
color: rgba(0, 0, 0, 0.4); color: rgba(0, 0, 0, 0.4);
box-shadow: none; box-shadow: none;
-webkit-transition: color 0.2s ease; -webkit-transition: color 0.1s ease;
transition: color 0.2s ease; transition: color 0.1s ease;
border-top: none; border-top: none;
} }
.ui.items > .item .extra > * { .ui.items > .item .extra > * {
@ -343,6 +358,11 @@
/* Mobily Only */ /* Mobily Only */
@media only screen and (max-width: 767px) { @media only screen and (max-width: 767px) {
.ui.items > .item { .ui.items > .item {
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
-webkit-flex-direction: column;
-ms-flex-direction: column;
flex-direction: column;
margin: 2em 0em; margin: 2em 0em;
} }
.ui.items > .item > .image { .ui.items > .item > .image {
@ -373,13 +393,19 @@
--------------------*/ --------------------*/
.ui.items > .item > .image + [class*="top aligned"].content { .ui.items > .item > .image + [class*="top aligned"].content {
vertical-align: top; -webkit-align-self: flex-start;
-ms-flex-item-align: start;
align-self: flex-start;
} }
.ui.items > .item > .image + [class*="middle aligned"].content { .ui.items > .item > .image + [class*="middle aligned"].content {
vertical-align: middle; -webkit-align-self: center;
-ms-flex-item-align: center;
align-self: center;
} }
.ui.items > .item > .image + [class*="bottom aligned"].content { .ui.items > .item > .image + [class*="bottom aligned"].content {
vertical-align: bottom; -webkit-align-self: flex-end;
-ms-flex-item-align: end;
align-self: flex-end;
} }
/*-------------- /*--------------
@ -398,7 +424,7 @@
--------------------*/ --------------------*/
.ui.divided.items > .item { .ui.divided.items > .item {
border-top: 1px solid rgba(39, 41, 43, 0.15); border-top: 1px solid rgba(34, 36, 38, 0.15);
margin: 0em; margin: 0em;
padding: 1em 0em; padding: 1em 0em;
} }
@ -432,7 +458,7 @@
} }
.ui.items a.item:hover .content .header, .ui.items a.item:hover .content .header,
.ui.link.items > .item:hover .content .header { .ui.link.items > .item:hover .content .header {
color: #00b2f3; color: #1e70bf;
} }
/*-------------- /*--------------

6
web/semantic/dist/components/item.min.css vendored Normal file → Executable file

File diff suppressed because one or more lines are too long

1045
web/semantic/dist/components/label.css vendored Normal file → Executable file

File diff suppressed because it is too large Load diff

6
web/semantic/dist/components/label.min.css vendored Normal file → Executable file

File diff suppressed because one or more lines are too long

331
web/semantic/dist/components/list.css vendored Normal file → Executable file
View file

@ -1,9 +1,9 @@
/*! /*!
* # Semantic UI 1.11.4 - List * # Semantic UI 2.1.7 - List
* http://github.com/semantic-org/semantic-ui/ * http://github.com/semantic-org/semantic-ui/
* *
* *
* Copyright 2014 Contributorss * Copyright 2015 Contributors
* Released under the MIT license * Released under the MIT license
* http://opensource.org/licenses/MIT * http://opensource.org/licenses/MIT
* *
@ -49,8 +49,8 @@ ol.ui.list li,
table-layout: fixed; table-layout: fixed;
list-style-type: none; list-style-type: none;
list-style-position: outside; list-style-position: outside;
padding: 0.3em 0em; padding: 0.21428571em 0em;
line-height: 1.2; line-height: 1.14285714em;
} }
ul.ui.list > li:first-child:after, ul.ui.list > li:first-child:after,
ol.ui.list > li:first-child:after, ol.ui.list > li:first-child:after,
@ -84,20 +84,24 @@ ol.ui.list ol,
padding: 0.75em 0em 0.25em 0.5em; padding: 0.75em 0em 0.25em 0.5em;
} }
/* Child Item */
ul.ui.list ul li,
ol.ui.list ol li,
.ui.list .list > .item {
padding: 0.14285714em 0em;
line-height: inherit;
}
/* Icon */ /* Icon */
.ui.list .list > .item > i.icon, .ui.list .list > .item > i.icon,
.ui.list > .item > i.icon { .ui.list > .item > i.icon {
display: table-cell; display: table-cell;
margin: 0em; margin: 0em;
padding-top: 0.1rem; padding-top: 0.07142857em;
padding-right: 0.3em; padding-right: 0.28571429em;
vertical-align: middle;
-webkit-transition: color 0.2s ease;
transition: color 0.2s ease;
}
.ui.list .list > .item i[class*="top aligned"].icon,
.ui.list > .item > i[class*="top aligned"].icon {
vertical-align: top; vertical-align: top;
-webkit-transition: color 0.1s ease;
transition: color 0.1s ease;
} }
.ui.list .list > .item > i.icon:only-child, .ui.list .list > .item > i.icon:only-child,
.ui.list > .item > i.icon:only-child { .ui.list > .item > i.icon:only-child {
@ -111,36 +115,27 @@ ol.ui.list ol,
display: table-cell; display: table-cell;
background-color: transparent; background-color: transparent;
margin: 0em; margin: 0em;
padding-right: 0.5em;
vertical-align: middle;
}
.ui.list .list > .item > [class*="top aligned"].image,
.ui.list > .item > [class*="top aligned"].image {
vertical-align: top; vertical-align: top;
} }
.ui.list .list > .item > .image:not(:only-child):not(img),
.ui.list > .item > .image:not(:only-child):not(img) {
padding-right: 0.5em;
}
.ui.list .list > .item > .image img, .ui.list .list > .item > .image img,
.ui.list > .item > .image img { .ui.list > .item > .image img {
vertical-align: middle; vertical-align: top;
} }
.ui.list .list > .item > img.image, .ui.list .list > .item > img.image,
.ui.list .list > .item > .image:only-child, .ui.list .list > .item > .image:only-child,
.ui.list > .item > img.image, .ui.list > .item > img.image,
.ui.list > .item > .image:only-child { .ui.list > .item > .image:only-child {
display: inline-block; display: inline-block;
padding-right: 0em;
} }
/* Content */ /* Content */
.ui.list .list > .item > .content, .ui.list .list > .item > .content,
.ui.list > .item > .content { .ui.list > .item > .content {
line-height: 1.2em; line-height: 1.14285714em;
}
.ui.list .list > .item > .image + .content,
.ui.list .list > .item > .icon + .content .ui.list > .item > .image + .content,
.ui.list > .item > .icon + .content {
display: table-cell;
padding: 0em 0em 0em 0.5em;
vertical-align: middle;
} }
.ui.list .list > .item > .image + .content, .ui.list .list > .item > .image + .content,
.ui.list .list > .item > .icon + .content, .ui.list .list > .item > .icon + .content,
@ -148,48 +143,18 @@ ol.ui.list ol,
.ui.list > .item > .icon + .content { .ui.list > .item > .icon + .content {
display: table-cell; display: table-cell;
padding: 0em 0em 0em 0.5em; padding: 0em 0em 0em 0.5em;
vertical-align: middle; vertical-align: top;
} }
.ui.list .list > .item > img.image + .content, .ui.list .list > .item > img.image + .content,
.ui.list > .item > img.image + .content { .ui.list > .item > img.image + .content {
display: inline-block; display: inline-block;
} }
.ui.list .list > .item [class*="top aligned"].content,
.ui.list > .item > [class*="top aligned"].content {
vertical-align: top;
}
.ui.list .list > .item > .content > .list, .ui.list .list > .item > .content > .list,
.ui.list > .item > .content > .list { .ui.list > .item > .content > .list {
margin-left: 0em; margin-left: 0em;
padding-left: 0em; padding-left: 0em;
} }
/* Item Link */
.ui.list .list > a.item,
.ui.list > a.item {
cursor: pointer;
color: rgba(0, 0, 0, 0.8);
}
.ui.list .list > a.item:hover,
.ui.list > a.item:hover {
color: #00b2f3;
}
/* Linked Item Icons */
.ui.list .list > a.item i.icon,
.ui.list > a.item i.icon {
color: rgba(0, 0, 0, 0.4);
}
/* Linking Content */
.ui.list .item a {
cursor: pointer;
color: rgba(0, 0, 0, 0.8) !important;
}
.ui.list .item a:hover {
color: #00b2f3 !important;
}
/* Header */ /* Header */
.ui.list .list > .item .header, .ui.list .list > .item .header,
.ui.list > .item .header { .ui.list > .item .header {
@ -197,15 +162,57 @@ ol.ui.list ol,
margin: 0em; margin: 0em;
font-family: 'Lato', 'Helvetica Neue', Arial, Helvetica, sans-serif; font-family: 'Lato', 'Helvetica Neue', Arial, Helvetica, sans-serif;
font-weight: bold; font-weight: bold;
color: rgba(0, 0, 0, 0.8); color: rgba(0, 0, 0, 0.87);
} }
/* Description */
.ui.list .list > .item .description, .ui.list .list > .item .description,
.ui.list > .item .description { .ui.list > .item .description {
display: block; display: block;
color: rgba(0, 0, 0, 0.8); color: rgba(0, 0, 0, 0.7);
}
/* Child Link */
.ui.list > .item a,
.ui.list .list > .item a {
cursor: pointer;
}
/* Linking Item */
.ui.list .list > a.item,
.ui.list > a.item {
cursor: pointer;
color: #4183c4;
}
.ui.list .list > a.item:hover,
.ui.list > a.item:hover {
color: #1e70bf;
}
/* Linked Item Icons */
.ui.list .list > a.item i.icon,
.ui.list > a.item i.icon {
color: rgba(0, 0, 0, 0.4);
}
/* Header Link */
.ui.list .list > .item a.header,
.ui.list > .item a.header {
cursor: pointer;
color: #4183c4 !important;
}
.ui.list .list > .item a.header:hover,
.ui.list > .item a.header:hover {
color: #1e70bf !important;
} }
/* Floated Content */ /* Floated Content */
.ui[class*="left floated"].list {
float: left;
}
.ui[class*="right floated"].list {
float: right;
}
.ui.list .list > .item [class*="left floated"], .ui.list .list > .item [class*="left floated"],
.ui.list > .item [class*="left floated"] { .ui.list > .item [class*="left floated"] {
float: left; float: left;
@ -229,8 +236,8 @@ ol.ui.list ol,
background-color: transparent; background-color: transparent;
list-style-type: none; list-style-type: none;
list-style-position: outside; list-style-position: outside;
padding: 0.3em 0em; padding: 0.21428571em 0em;
line-height: 1.2; line-height: 1.14285714em;
} }
.ui.menu .ui.list .list > .item:before, .ui.menu .ui.list .list > .item:before,
.ui.menu .ui.list > .item:before { .ui.menu .ui.list > .item:before {
@ -265,7 +272,7 @@ ol.ui.list ol,
margin-left: 1em; margin-left: 1em;
font-size: 1rem; font-size: 1rem;
} }
.ui.horizontal.list > .item:first-child { .ui.horizontal.list:not(.celled) > .item:first-child {
margin-left: 0em !important; margin-left: 0em !important;
padding-left: 0em !important; padding-left: 0em !important;
} }
@ -273,12 +280,20 @@ ol.ui.list ol,
padding-left: 0em; padding-left: 0em;
padding-bottom: 0em; padding-bottom: 0em;
} }
.ui.horizontal.list > .item > .image,
.ui.horizontal.list .list > .item > .image,
.ui.horizontal.list > .item > .icon,
.ui.horizontal.list .list > .item > .icon,
.ui.horizontal.list > .item > .content,
.ui.horizontal.list .list > .item > .content {
vertical-align: middle;
}
/* Padding on all elements */ /* Padding on all elements */
.ui.horizontal.list > .item:first-child, .ui.horizontal.list > .item:first-child,
.ui.horizontal.list > .item:last-child { .ui.horizontal.list > .item:last-child {
padding-top: 0.3em; padding-top: 0.21428571em;
padding-bottom: 0.3em; padding-bottom: 0.21428571em;
} }
/* Horizontal List */ /* Horizontal List */
@ -318,7 +333,7 @@ ol.ui.list ol,
.ui.list .list > a.item:hover .icon, .ui.list .list > a.item:hover .icon,
.ui.list > a.item:hover .icon { .ui.list > a.item:hover .icon {
color: rgba(0, 0, 0, 0.8); color: rgba(0, 0, 0, 0.87);
} }
@ -333,35 +348,54 @@ ol.ui.list ol,
.ui.inverted.list .list > a.item > .icon, .ui.inverted.list .list > a.item > .icon,
.ui.inverted.list > a.item > .icon { .ui.inverted.list > a.item > .icon {
color: rgba(255, 255, 255, 0.8); color: rgba(255, 255, 255, 0.7);
} }
.ui.inverted.list .list > .item .header, .ui.inverted.list .list > .item .header,
.ui.inverted.list > .item .header { .ui.inverted.list > .item .header {
color: #ffffff; color: rgba(255, 255, 255, 0.9);
} }
.ui.inverted.list .list > .item .description, .ui.inverted.list .list > .item .description,
.ui.inverted.list > .item .description { .ui.inverted.list > .item .description {
color: rgba(255, 255, 255, 0.8); color: rgba(255, 255, 255, 0.7);
} }
/* Item Link */ /* Item Link */
.ui.inverted.list .list > a.item, .ui.inverted.list .list > a.item,
.ui.inverted.list > a.item { .ui.inverted.list > a.item {
cursor: pointer; cursor: pointer;
color: #ffffff; color: rgba(255, 255, 255, 0.9);
} }
.ui.inverted.list .list > a.item:hover, .ui.inverted.list .list > a.item:hover,
.ui.inverted.list > a.item:hover { .ui.inverted.list > a.item:hover {
color: #00b2f3; color: #1e70bf;
} }
/* Linking Content */ /* Linking Content */
.ui.inverted.list .item a { .ui.inverted.list .item a:not(.ui) {
cursor: pointer; color: rgba(255, 255, 255, 0.9) !important;
color: #ffffff !important;
} }
.ui.inverted.list .item a:hover { .ui.inverted.list .item a:not(.ui):hover {
color: #00b2f3 !important; color: #1e70bf !important;
}
/*-------------------
Aligned
--------------------*/
.ui.list[class*="top aligned"] .image,
.ui.list[class*="top aligned"] .content,
.ui.list [class*="top aligned"] {
vertical-align: top !important;
}
.ui.list[class*="middle aligned"] .image,
.ui.list[class*="middle aligned"] .content,
.ui.list [class*="middle aligned"] {
vertical-align: middle !important;
}
.ui.list[class*="bottom aligned"] .image,
.ui.list[class*="bottom aligned"] .content,
.ui.list [class*="bottom aligned"] {
vertical-align: bottom !important;
} }
/*------------------- /*-------------------
@ -370,40 +404,40 @@ ol.ui.list ol,
.ui.link.list .item, .ui.link.list .item,
.ui.link.list a.item, .ui.link.list a.item,
.ui.link.list .item a { .ui.link.list .item a:not(.ui) {
color: rgba(0, 0, 0, 0.4); color: rgba(0, 0, 0, 0.4);
-webkit-transition: 0.2s color ease; -webkit-transition: 0.1s color ease;
transition: 0.2s color ease; transition: 0.1s color ease;
} }
.ui.link.list a.item:hover, .ui.link.list a.item:hover,
.ui.link.list .item a:hover { .ui.link.list .item a:not(.ui):hover {
color: rgba(0, 0, 0, 0.8); color: rgba(0, 0, 0, 0.8);
} }
.ui.link.list a.item:active, .ui.link.list a.item:active,
.ui.link.list .item a:active { .ui.link.list .item a:not(.ui):active {
color: rgba(0, 0, 0, 0.8); color: rgba(0, 0, 0, 0.9);
} }
.ui.link.list .active.item, .ui.link.list .active.item,
.ui.link.list .active.item a { .ui.link.list .active.item a:not(.ui) {
color: rgba(0, 0, 0, 0.8); color: rgba(0, 0, 0, 0.95);
} }
/* Inverted */ /* Inverted */
.ui.inverted.link.list .item, .ui.inverted.link.list .item,
.ui.inverted.link.list a.item, .ui.inverted.link.list a.item,
.ui.inverted.link.list .item a { .ui.inverted.link.list .item a:not(.ui) {
color: rgba(255, 255, 255, 0.5); color: rgba(255, 255, 255, 0.5);
} }
.ui.inverted.link.list a.item:hover, .ui.inverted.link.list a.item:hover,
.ui.inverted.link.list .item a:hover { .ui.inverted.link.list .item a:not(.ui):hover {
color: #ffffff; color: #ffffff;
} }
.ui.inverted.link.list a.item:active, .ui.inverted.link.list a.item:active,
.ui.inverted.link.list .item a:active { .ui.inverted.link.list .item a:not(.ui):active {
color: #ffffff; color: #ffffff;
} }
.ui.inverted.link.list a.active.item, .ui.inverted.link.list a.active.item,
.ui.inverted.link.list .active.item a { .ui.inverted.link.list .active.item a:not(.ui) {
color: #ffffff; color: #ffffff;
} }
@ -419,8 +453,8 @@ ol.ui.list ol,
margin: 0em; margin: 0em;
color: rgba(0, 0, 0, 0.4); color: rgba(0, 0, 0, 0.4);
border-radius: 0.5em; border-radius: 0.5em;
-webkit-transition: 0.2s color ease, 0.2s padding-left ease, 0.2s background-color ease; -webkit-transition: 0.1s color ease, 0.1s padding-left ease, 0.1s background-color ease;
transition: 0.2s color ease, 0.2s padding-left ease, 0.2s background-color ease; transition: 0.1s color ease, 0.1s padding-left ease, 0.1s background-color ease;
} }
.ui.selection.list .list > .item:last-child, .ui.selection.list .list > .item:last-child,
.ui.selection.list > .item:last-child { .ui.selection.list > .item:last-child {
@ -434,12 +468,12 @@ ol.ui.list ol,
.ui.selection.list .list > .item:active, .ui.selection.list .list > .item:active,
.ui.selection.list > .item:active { .ui.selection.list > .item:active {
background: rgba(0, 0, 0, 0.05); background: rgba(0, 0, 0, 0.05);
color: rgba(0, 0, 0, 0.8); color: rgba(0, 0, 0, 0.9);
} }
.ui.selection.list .list > .item.active, .ui.selection.list .list > .item.active,
.ui.selection.list > .item.active { .ui.selection.list > .item.active {
background: rgba(0, 0, 0, 0.05); background: rgba(0, 0, 0, 0.05);
color: rgba(0, 0, 0, 0.8); color: rgba(0, 0, 0, 0.95);
} }
/* Inverted */ /* Inverted */
@ -455,12 +489,12 @@ ol.ui.list ol,
} }
.ui.inverted.selection.list > .item:active, .ui.inverted.selection.list > .item:active,
.ui.inverted.selection.list > .item:active { .ui.inverted.selection.list > .item:active {
background: rgba(255, 255, 255, 0.05); background: rgba(255, 255, 255, 0.08);
color: #ffffff; color: #ffffff;
} }
.ui.inverted.selection.list > .item.active, .ui.inverted.selection.list > .item.active,
.ui.inverted.selection.list > .item.active { .ui.inverted.selection.list > .item.active {
background: rgba(255, 255, 255, 0.05); background: rgba(255, 255, 255, 0.08);
color: #ffffff; color: #ffffff;
} }
@ -477,8 +511,8 @@ ol.ui.list ol,
--------------------*/ --------------------*/
.ui.animated.list > .item { .ui.animated.list > .item {
-webkit-transition: 0.2s color ease, 0.2s padding-left ease, 0.2s background-color ease; -webkit-transition: 0.25s color ease 0.1s, 0.25s padding-left ease 0.1s, 0.25s background-color ease 0.1s;
transition: 0.2s color ease, 0.2s padding-left ease, 0.2s background-color ease; transition: 0.25s color ease 0.1s, 0.25s padding-left ease 0.1s, 0.25s background-color ease 0.1s;
} }
.ui.animated.list:not(.horizontal) > .item:hover { .ui.animated.list:not(.horizontal) > .item:hover {
padding-left: 1em; padding-left: 1em;
@ -505,7 +539,7 @@ ol.ui.list ol,
ul.ui.list, ul.ui.list,
.ui.bulleted.list { .ui.bulleted.list {
margin-left: 1rem; margin-left: 1.25rem;
} }
ul.ui.list li, ul.ui.list li,
.ui.bulleted.list .list > .item, .ui.bulleted.list .list > .item,
@ -515,18 +549,23 @@ ul.ui.list li,
ul.ui.list li:before, ul.ui.list li:before,
.ui.bulleted.list .list > .item:before, .ui.bulleted.list .list > .item:before,
.ui.bulleted.list > .item:before { .ui.bulleted.list > .item:before {
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
pointer-events: none;
position: absolute; position: absolute;
top: auto; top: auto;
left: auto; left: auto;
margin-left: -1rem; margin-left: -1.25rem;
content: '•'; content: '•';
opacity: 1; opacity: 1;
color: rgba(0, 0, 0, 0.8); color: inherit;
vertical-align: top; vertical-align: top;
} }
ul.ui.list ul, ul.ui.list ul,
.ui.bulleted.list .list { .ui.bulleted.list .list {
padding-left: 1rem; padding-left: 1.25rem;
} }
/* Horizontal Bulleted */ /* Horizontal Bulleted */
@ -536,12 +575,16 @@ ul.ui.horizontal.bulleted.list,
} }
ul.ui.horizontal.bulleted.list li, ul.ui.horizontal.bulleted.list li,
.ui.horizontal.bulleted.list > .item { .ui.horizontal.bulleted.list > .item {
margin-left: 1.5rem; margin-left: 1.75rem;
} }
ul.ui.horizontal.bulleted.list li:first-child, ul.ui.horizontal.bulleted.list li:first-child,
.ui.horizontal.bulleted.list > .item:first-child { .ui.horizontal.bulleted.list > .item:first-child {
margin-left: 0em; margin-left: 0em;
} }
ul.ui.horizontal.bulleted.list li::before,
.ui.horizontal.bulleted.list > .item::before {
color: rgba(0, 0, 0, 0.87);
}
ul.ui.horizontal.bulleted.list li:first-child::before, ul.ui.horizontal.bulleted.list li:first-child::before,
.ui.horizontal.bulleted.list > .item:first-child::before { .ui.horizontal.bulleted.list > .item:first-child::before {
display: none; display: none;
@ -571,14 +614,33 @@ ol.ui.list li:before,
position: absolute; position: absolute;
top: auto; top: auto;
left: auto; left: auto;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
pointer-events: none;
margin-left: -1.25rem; margin-left: -1.25rem;
counter-increment: ordered; counter-increment: ordered;
content: counters(ordered, ".") " "; content: counters(ordered, ".") " ";
text-align: right; text-align: right;
color: rgba(0, 0, 0, 0.8); color: rgba(0, 0, 0, 0.87);
vertical-align: middle; vertical-align: middle;
opacity: 0.8; opacity: 0.8;
} }
ol.ui.inverted.list li:before,
.ui.ordered.inverted.list .list > .item:before,
.ui.ordered.inverted.list > .item:before {
color: rgba(255, 255, 255, 0.7);
}
/* Value */
.ui.ordered.list > .list > .item[data-value],
.ui.ordered.list > .item[data-value] {
content: attr(data-value);
}
ol.ui.list li[value]:before {
content: attr(value);
}
/* Child Lists */ /* Child Lists */
ol.ui.list ol, ol.ui.list ol,
@ -607,7 +669,7 @@ ol.ui.horizontal.list li:before,
--------------------*/ --------------------*/
.ui.divided.list > .item { .ui.divided.list > .item {
border-top: 1px solid rgba(39, 41, 43, 0.15); border-top: 1px solid rgba(34, 36, 38, 0.15);
} }
.ui.divided.list .list > .item { .ui.divided.list .list > .item {
border-top: none; border-top: none;
@ -631,9 +693,8 @@ ol.ui.horizontal.list li:before,
margin-left: 0em; margin-left: 0em;
padding-left: 0em; padding-left: 0em;
} }
.ui.divided.bulleted.list .list > .item:not(.horizontal),
.ui.divided.bulleted.list > .item:not(.horizontal) { .ui.divided.bulleted.list > .item:not(.horizontal) {
padding-left: 1rem; padding-left: 1.25rem;
} }
/* Divided Ordered */ /* Divided Ordered */
@ -647,7 +708,7 @@ ol.ui.horizontal.list li:before,
.ui.divided.ordered.list .item .list { .ui.divided.ordered.list .item .list {
margin-left: 0em; margin-left: 0em;
margin-right: 0em; margin-right: 0em;
padding-bottom: 0.3em; padding-bottom: 0.21428571em;
} }
.ui.divided.ordered.list .item .list > .item { .ui.divided.ordered.list .item .list > .item {
padding-left: 1em; padding-left: 1em;
@ -666,7 +727,7 @@ ol.ui.horizontal.list li:before,
} }
.ui.divided.horizontal.list > .item { .ui.divided.horizontal.list > .item {
border-top: none; border-top: none;
border-left: 1px solid rgba(39, 41, 43, 0.15); border-left: 1px solid rgba(34, 36, 38, 0.15);
margin: 0em; margin: 0em;
padding-left: 0.5em; padding-left: 0.5em;
padding-right: 0.5em; padding-right: 0.5em;
@ -680,7 +741,7 @@ ol.ui.horizontal.list li:before,
.ui.divided.inverted.list > .item, .ui.divided.inverted.list > .item,
.ui.divided.inverted.list > .list, .ui.divided.inverted.list > .list,
.ui.divided.inverted.horizontal.list > .item { .ui.divided.inverted.horizontal.list > .item {
border-color: rgba(255, 255, 255, 0.2); border-color: rgba(255, 255, 255, 0.1);
} }
/*------------------- /*-------------------
@ -689,19 +750,19 @@ ol.ui.horizontal.list li:before,
.ui.celled.list > .item, .ui.celled.list > .item,
.ui.celled.list > .list { .ui.celled.list > .list {
border-top: 1px solid rgba(39, 41, 43, 0.15); border-top: 1px solid rgba(34, 36, 38, 0.15);
padding-left: 0.5em; padding-left: 0.5em;
padding-right: 0.5em; padding-right: 0.5em;
} }
.ui.celled.list > .item:last-child { .ui.celled.list > .item:last-child {
border-bottom: 1px solid rgba(39, 41, 43, 0.15); border-bottom: 1px solid rgba(34, 36, 38, 0.15);
} }
/* Padding on all elements */ /* Padding on all elements */
.ui.celled.list > .item:first-child, .ui.celled.list > .item:first-child,
.ui.celled.list > .item:last-child { .ui.celled.list > .item:last-child {
padding-top: 0.3em; padding-top: 0.21428571em;
padding-bottom: 0.3em; padding-bottom: 0.21428571em;
} }
/* Sub Menu */ /* Sub Menu */
@ -718,12 +779,12 @@ ol.ui.horizontal.list li:before,
} }
.ui.celled.bulleted.list .list > .item, .ui.celled.bulleted.list .list > .item,
.ui.celled.bulleted.list > .item { .ui.celled.bulleted.list > .item {
padding-left: 1rem; padding-left: 1.25rem;
} }
.ui.celled.bulleted.list .item .list { .ui.celled.bulleted.list .item .list {
margin-left: -1rem; margin-left: -1.25rem;
margin-right: -1rem; margin-right: -1.25rem;
padding-bottom: 0.3em; padding-bottom: 0.21428571em;
} }
/* Celled Ordered */ /* Celled Ordered */
@ -737,7 +798,7 @@ ol.ui.horizontal.list li:before,
.ui.celled.ordered.list .item .list { .ui.celled.ordered.list .item .list {
margin-left: 0em; margin-left: 0em;
margin-right: 0em; margin-right: 0em;
padding-bottom: 0.3em; padding-bottom: 0.21428571em;
} }
.ui.celled.ordered.list .list > .item { .ui.celled.ordered.list .list > .item {
padding-left: 1em; padding-left: 1em;
@ -750,7 +811,7 @@ ol.ui.horizontal.list li:before,
.ui.horizontal.celled.list .list > .item, .ui.horizontal.celled.list .list > .item,
.ui.horizontal.celled.list > .item { .ui.horizontal.celled.list > .item {
border-top: none; border-top: none;
border-left: 1px solid rgba(39, 41, 43, 0.15); border-left: 1px solid rgba(34, 36, 38, 0.15);
margin: 0em; margin: 0em;
padding-left: 0.5em; padding-left: 0.5em;
padding-right: 0.5em; padding-right: 0.5em;
@ -759,17 +820,17 @@ ol.ui.horizontal.list li:before,
.ui.horizontal.celled.list .list > .item:last-child, .ui.horizontal.celled.list .list > .item:last-child,
.ui.horizontal.celled.list > .item:last-child { .ui.horizontal.celled.list > .item:last-child {
border-bottom: none; border-bottom: none;
border-right: 1px solid rgba(39, 41, 43, 0.15); border-right: 1px solid rgba(34, 36, 38, 0.15);
} }
/* Inverted */ /* Inverted */
.ui.celled.inverted.list > .item, .ui.celled.inverted.list > .item,
.ui.celled.inverted.list > .list { .ui.celled.inverted.list > .list {
border-color: 1px solid rgba(255, 255, 255, 0.2); border-color: 1px solid rgba(255, 255, 255, 0.1);
} }
.ui.celled.inverted.horizontal.list .list > .item, .ui.celled.inverted.horizontal.list .list > .item,
.ui.celled.inverted.horizontal.list > .item { .ui.celled.inverted.horizontal.list > .item {
border-color: 1px solid rgba(255, 255, 255, 0.2); border-color: 1px solid rgba(255, 255, 255, 0.1);
} }
/*------------------- /*-------------------
@ -777,31 +838,31 @@ ol.ui.horizontal.list li:before,
--------------------*/ --------------------*/
.ui.relaxed.list:not(.horizontal) > .item { .ui.relaxed.list:not(.horizontal) > .item {
padding-top: 0.5rem; padding-top: 0.42857143em;
padding-bottom: 0.5rem; padding-bottom: 0.42857143em;
} }
.ui.relaxed.list .list > .item .header, .ui.relaxed.list:not(.horizontal) .list > .item {
.ui.relaxed.list > .item .header { padding-top: 0.21428571em;
/*margin-bottom: @relaxedHeaderMargin;*/ padding-bottom: 0.21428571em;
} }
.ui.horizontal.relaxed.list > .item { .ui.horizontal.relaxed.list > .item {
padding-left: 1.25rem; padding-left: 1rem;
padding-right: 1.25rem; padding-right: 1rem;
} }
/* Very Relaxed */ /* Very Relaxed */
.ui[class*="very relaxed"].list:not(.horizontal) > .item { .ui[class*="very relaxed"].list:not(.horizontal) > .item {
padding-top: 1rem; padding-top: 0.85714286em;
padding-bottom: 1rem; padding-bottom: 0.85714286em;
} }
.ui[class*="very relaxed"].list .list > .item .header, .ui[class*="very relaxed"].list:not(.horizontal) .list > .item {
.ui[class*="very relaxed"].list > .item .header { padding-top: 0.28571429em;
/*margin-bottom: @veryRelaxedHeaderMargin;*/ padding-bottom: 0.28571429em;
} }
.ui.horizontal[class*="very relaxed"].list .list > .item, .ui.horizontal[class*="very relaxed"].list .list > .item,
.ui.horizontal[class*="very relaxed"].list > .item { .ui.horizontal[class*="very relaxed"].list > .item {
padding-left: 2rem; padding-left: 1.5rem;
padding-right: 2rem; padding-right: 1.5rem;
} }
/*------------------- /*-------------------

6
web/semantic/dist/components/list.min.css vendored Normal file → Executable file

File diff suppressed because one or more lines are too long

30
web/semantic/dist/components/loader.css vendored Normal file → Executable file
View file

@ -1,9 +1,9 @@
/*! /*!
* # Semantic UI 1.11.4 - Loader * # Semantic UI 2.1.7 - Loader
* http://github.com/semantic-org/semantic-ui/ * http://github.com/semantic-org/semantic-ui/
* *
* *
* Copyright 2014 Contributors * Copyright 2015 Contributors
* Released under the MIT license * Released under the MIT license
* http://opensource.org/licenses/MIT * http://opensource.org/licenses/MIT
* *
@ -54,7 +54,7 @@
-webkit-animation-iteration-count: infinite; -webkit-animation-iteration-count: infinite;
animation-iteration-count: infinite; animation-iteration-count: infinite;
border-radius: 500rem; border-radius: 500rem;
border-color: #aaaaaa transparent transparent; border-color: #767676 transparent transparent;
border-style: solid; border-style: solid;
border-width: 0.2em; border-width: 0.2em;
box-shadow: 0px 0px 0px 1px transparent; box-shadow: 0px 0px 0px 1px transparent;
@ -120,7 +120,7 @@
/* Black Dimmer */ /* Black Dimmer */
.ui.dimmer .ui.loader { .ui.dimmer .ui.loader {
color: #ffffff; color: rgba(255, 255, 255, 0.9);
} }
.ui.dimmer .ui.loader:before { .ui.dimmer .ui.loader:before {
border-color: rgba(255, 255, 255, 0.15); border-color: rgba(255, 255, 255, 0.15);
@ -131,13 +131,13 @@
/* White Dimmer (Inverted) */ /* White Dimmer (Inverted) */
.ui.inverted.dimmer .ui.loader { .ui.inverted.dimmer .ui.loader {
color: rgba(0, 0, 0, 0.8); color: rgba(0, 0, 0, 0.87);
} }
.ui.inverted.dimmer .ui.loader:before { .ui.inverted.dimmer .ui.loader:before {
border-color: rgba(0, 0, 0, 0.1); border-color: rgba(0, 0, 0, 0.1);
} }
.ui.inverted.dimmer .ui.loader:after { .ui.inverted.dimmer .ui.loader:after {
border-color: #aaaaaa transparent transparent; border-color: #767676 transparent transparent;
} }
@ -193,13 +193,13 @@
.ui.mini.loader { .ui.mini.loader {
width: 1.2857em; width: 1.2857em;
height: 1.2857em; height: 1.2857em;
font-size: 0.7857em; font-size: 0.71428571em;
} }
.ui.inverted.dimmer .ui.small.loader, .ui.inverted.dimmer .ui.small.loader,
.ui.small.loader { .ui.small.loader {
width: 1.7142em; width: 1.7142em;
height: 1.7142em; height: 1.7142em;
font-size: 0.9285em; font-size: 0.92857143em;
} }
.ui.inverted.dimmer .ui.loader, .ui.inverted.dimmer .ui.loader,
.ui.loader { .ui.loader {
@ -211,25 +211,25 @@
.ui.loader.large { .ui.loader.large {
width: 4.5714em; width: 4.5714em;
height: 4.5714em; height: 4.5714em;
font-size: 1.1428em; font-size: 1.14285714em;
} }
/* Text Loader */ /* Text Loader */
.ui.mini.text.loader { .ui.mini.text.loader {
min-width: 1.2857em; min-width: 1.2857em;
padding-top: 1.9857em; padding-top: 1.99998571em;
} }
.ui.small.text.loader { .ui.small.text.loader {
min-width: 1.7142em; min-width: 1.7142em;
padding-top: 2.4142em; padding-top: 2.42848571em;
} }
.ui.text.loader { .ui.text.loader {
min-width: 2.2585em; min-width: 2.2585em;
padding-top: 2.9585em; padding-top: 2.97278571em;
} }
.ui.large.text.loader { .ui.large.text.loader {
min-width: 4.5714em; min-width: 4.5714em;
padding-top: 5.2714em; padding-top: 5.28568571em;
} }
/*------------------- /*-------------------
@ -237,7 +237,7 @@
--------------------*/ --------------------*/
.ui.inverted.loader { .ui.inverted.loader {
color: #ffffff; color: rgba(255, 255, 255, 0.9);
} }
.ui.inverted.loader:before { .ui.inverted.loader:before {
border-color: rgba(255, 255, 255, 0.15); border-color: rgba(255, 255, 255, 0.15);
@ -269,6 +269,8 @@
.ui.centered.inline.loader.active, .ui.centered.inline.loader.active,
.ui.centered.inline.loader.visible { .ui.centered.inline.loader.visible {
display: block; display: block;
margin-left: auto;
margin-right: auto;
} }

6
web/semantic/dist/components/loader.min.css vendored Normal file → Executable file
View file

@ -1,10 +1,10 @@
/*! /*!
* # Semantic UI 1.11.4 - Loader * # Semantic UI 2.1.7 - Loader
* http://github.com/semantic-org/semantic-ui/ * http://github.com/semantic-org/semantic-ui/
* *
* *
* Copyright 2014 Contributors * Copyright 2015 Contributors
* Released under the MIT license * Released under the MIT license
* http://opensource.org/licenses/MIT * http://opensource.org/licenses/MIT
* *
*/.ui.loader{display:none;position:absolute;top:50%;left:50%;margin:0;text-align:center;z-index:1000;-webkit-transform:translateX(-50%) translateY(-50%);-ms-transform:translateX(-50%) translateY(-50%);transform:translateX(-50%) translateY(-50%)}.ui.loader:before{position:absolute;content:'';top:0;left:50%;border-radius:500rem;border:.2em solid rgba(0,0,0,.1)}.ui.loader:after{position:absolute;content:'';top:0;left:50%;-webkit-animation:loader .6s linear;animation:loader .6s linear;-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite;border-radius:500rem;border-color:#aaa transparent transparent;border-style:solid;border-width:.2em;box-shadow:0 0 0 1px transparent}@-webkit-keyframes loader{from{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes loader{from{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}.ui.loader:after,.ui.loader:before{width:2.2585em;height:2.2585em;margin:0 0 0 -1.12925em}.ui.mini.loader:after,.ui.mini.loader:before{width:1.2857em;height:1.2857em;margin:0 0 0 -.64285em}.ui.small.loader:after,.ui.small.loader:before{width:1.7142em;height:1.7142em;margin:0 0 0 -.8571em}.ui.large.loader:after,.ui.large.loader:before{width:4.5714em;height:4.5714em;margin:0 0 0 -2.2857em}.ui.dimmer .loader{display:block}.ui.dimmer .ui.loader{color:#fff}.ui.dimmer .ui.loader:before{border-color:rgba(255,255,255,.15)}.ui.dimmer .ui.loader:after{border-color:#fff transparent transparent}.ui.inverted.dimmer .ui.loader{color:rgba(0,0,0,.8)}.ui.inverted.dimmer .ui.loader:before{border-color:rgba(0,0,0,.1)}.ui.inverted.dimmer .ui.loader:after{border-color:#aaa transparent transparent}.ui.text.loader{width:auto!important;height:auto!important;text-align:center;font-style:normal}.ui.indeterminate.loader:after{-webkit-animation-direction:reverse;animation-direction:reverse;-webkit-animation-duration:1.2s;animation-duration:1.2s}.ui.loader.active,.ui.loader.visible{display:block}.ui.loader.disabled,.ui.loader.hidden{display:none}.ui.inverted.dimmer .ui.mini.loader,.ui.mini.loader{width:1.2857em;height:1.2857em;font-size:.7857em}.ui.inverted.dimmer .ui.small.loader,.ui.small.loader{width:1.7142em;height:1.7142em;font-size:.9285em}.ui.inverted.dimmer .ui.loader,.ui.loader{width:2.2585em;height:2.2585em;font-size:1em}.ui.inverted.dimmer .ui.loader.large,.ui.loader.large{width:4.5714em;height:4.5714em;font-size:1.1428em}.ui.mini.text.loader{min-width:1.2857em;padding-top:1.9857em}.ui.small.text.loader{min-width:1.7142em;padding-top:2.4142em}.ui.text.loader{min-width:2.2585em;padding-top:2.9585em}.ui.large.text.loader{min-width:4.5714em;padding-top:5.2714em}.ui.inverted.loader{color:#fff}.ui.inverted.loader:before{border-color:rgba(255,255,255,.15)}.ui.inverted.loader:after{border-top-color:#fff}.ui.inline.loader{position:relative;vertical-align:middle;margin:0;left:0;top:0;-webkit-transform:none;-ms-transform:none;transform:none}.ui.inline.loader.active,.ui.inline.loader.visible{display:inline-block}.ui.centered.inline.loader.active,.ui.centered.inline.loader.visible{display:block} */.ui.loader{display:none;position:absolute;top:50%;left:50%;margin:0;text-align:center;z-index:1000;-webkit-transform:translateX(-50%) translateY(-50%);-ms-transform:translateX(-50%) translateY(-50%);transform:translateX(-50%) translateY(-50%)}.ui.loader:before{position:absolute;content:'';top:0;left:50%;border-radius:500rem;border:.2em solid rgba(0,0,0,.1)}.ui.loader:after{position:absolute;content:'';top:0;left:50%;-webkit-animation:loader .6s linear;animation:loader .6s linear;-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite;border-radius:500rem;border-color:#767676 transparent transparent;border-style:solid;border-width:.2em;box-shadow:0 0 0 1px transparent}@-webkit-keyframes loader{from{-webkit-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes loader{from{-webkit-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}.ui.loader:after,.ui.loader:before{width:2.2585em;height:2.2585em;margin:0 0 0 -1.12925em}.ui.mini.loader:after,.ui.mini.loader:before{width:1.2857em;height:1.2857em;margin:0 0 0 -.64285em}.ui.small.loader:after,.ui.small.loader:before{width:1.7142em;height:1.7142em;margin:0 0 0 -.8571em}.ui.large.loader:after,.ui.large.loader:before{width:4.5714em;height:4.5714em;margin:0 0 0 -2.2857em}.ui.dimmer .loader{display:block}.ui.dimmer .ui.loader{color:rgba(255,255,255,.9)}.ui.dimmer .ui.loader:before{border-color:rgba(255,255,255,.15)}.ui.dimmer .ui.loader:after{border-color:#fff transparent transparent}.ui.inverted.dimmer .ui.loader{color:rgba(0,0,0,.87)}.ui.inverted.dimmer .ui.loader:before{border-color:rgba(0,0,0,.1)}.ui.inverted.dimmer .ui.loader:after{border-color:#767676 transparent transparent}.ui.text.loader{width:auto!important;height:auto!important;text-align:center;font-style:normal}.ui.indeterminate.loader:after{-webkit-animation-direction:reverse;animation-direction:reverse;-webkit-animation-duration:1.2s;animation-duration:1.2s}.ui.loader.active,.ui.loader.visible{display:block}.ui.loader.disabled,.ui.loader.hidden{display:none}.ui.inverted.dimmer .ui.mini.loader,.ui.mini.loader{width:1.2857em;height:1.2857em;font-size:.71428571em}.ui.inverted.dimmer .ui.small.loader,.ui.small.loader{width:1.7142em;height:1.7142em;font-size:.92857143em}.ui.inverted.dimmer .ui.loader,.ui.loader{width:2.2585em;height:2.2585em;font-size:1em}.ui.inverted.dimmer .ui.loader.large,.ui.loader.large{width:4.5714em;height:4.5714em;font-size:1.14285714em}.ui.mini.text.loader{min-width:1.2857em;padding-top:1.99998571em}.ui.small.text.loader{min-width:1.7142em;padding-top:2.42848571em}.ui.text.loader{min-width:2.2585em;padding-top:2.97278571em}.ui.large.text.loader{min-width:4.5714em;padding-top:5.28568571em}.ui.inverted.loader{color:rgba(255,255,255,.9)}.ui.inverted.loader:before{border-color:rgba(255,255,255,.15)}.ui.inverted.loader:after{border-top-color:#fff}.ui.inline.loader{position:relative;vertical-align:middle;margin:0;left:0;top:0;-webkit-transform:none;-ms-transform:none;transform:none}.ui.inline.loader.active,.ui.inline.loader.visible{display:inline-block}.ui.centered.inline.loader.active,.ui.centered.inline.loader.visible{display:block;margin-left:auto;margin-right:auto}

1796
web/semantic/dist/components/menu.css vendored Normal file → Executable file

File diff suppressed because it is too large Load diff

11
web/semantic/dist/components/menu.min.css vendored Normal file → Executable file

File diff suppressed because one or more lines are too long

254
web/semantic/dist/components/message.css vendored Normal file → Executable file
View file

@ -1,9 +1,9 @@
/*! /*!
* # Semantic UI 1.11.4 - Message * # Semantic UI 2.1.7 - Message
* http://github.com/semantic-org/semantic-ui/ * http://github.com/semantic-org/semantic-ui/
* *
* *
* Copyright 2014 Contributors * Copyright 2015 Contributors
* Released under the MIT license * Released under the MIT license
* http://opensource.org/licenses/MIT * http://opensource.org/licenses/MIT
* *
@ -18,14 +18,14 @@
position: relative; position: relative;
min-height: 1em; min-height: 1em;
margin: 1em 0em; margin: 1em 0em;
background: #efefef; background: #f8f8f9;
padding: 1em 1.5em; padding: 1em 1.5em;
line-height: 1.3; line-height: 1.4285em;
color: rgba(0, 0, 0, 0.8); color: rgba(0, 0, 0, 0.87);
-webkit-transition: opacity 0.2s ease, color 0.2s ease, background 0.2s ease, box-shadow 0.2s ease; -webkit-transition: opacity 0.1s ease, color 0.1s ease, background 0.1s ease, box-shadow 0.1s ease;
transition: opacity 0.2s ease, color 0.2s ease, background 0.2s ease, box-shadow 0.2s ease; transition: opacity 0.1s ease, color 0.1s ease, background 0.1s ease, box-shadow 0.1s ease;
border-radius: 0.2857rem; border-radius: 0.28571429rem;
box-shadow: 0px 0px 0px 1px rgba(39, 41, 43, 0.15) inset, 0px 0px 0px 0px transparent; box-shadow: 0px 0px 0px 1px rgba(34, 36, 38, 0.22) inset, 0px 0px 0px 0px rgba(0, 0, 0, 0);
} }
.ui.message:first-child { .ui.message:first-child {
margin-top: 0em; margin-top: 0em;
@ -44,12 +44,12 @@
display: block; display: block;
font-family: 'Lato', 'Helvetica Neue', Arial, Helvetica, sans-serif; font-family: 'Lato', 'Helvetica Neue', Arial, Helvetica, sans-serif;
font-weight: bold; font-weight: bold;
margin: 0em 0em 0.5rem 0em; margin: -0.14285em 0em 0rem 0em;
} }
/* Default font size */ /* Default font size */
.ui.message .header:not(.ui) { .ui.message .header:not(.ui) {
font-size: 1.1em; font-size: 1.14285714em;
} }
/* Paragraph */ /* Paragraph */
@ -68,32 +68,33 @@
} }
/* List */ /* List */
.ui.message ul.list { .ui.message .list:not(.ui) {
text-align: left;
padding: 0em;
opacity: 0.85; opacity: 0.85;
list-style-position: inside; list-style-position: inside;
margin: 0.5em 0em 0em; margin: 0.5em 0em 0em;
padding: 0em;
} }
.ui.message ul.list:first-child { .ui.message .list:not(.ui):first-child {
margin-top: 0em; margin-top: 0em;
} }
.ui.message ul.list:last-child { .ui.message .list:not(.ui):last-child {
margin-bottom: 0em; margin-bottom: 0em;
} }
.ui.message ul.list li { .ui.message .list:not(.ui) li {
position: relative; position: relative;
list-style-type: none; list-style-type: none;
margin: 0em 0em 0.3em 1em; margin: 0em 0em 0.3em 1em;
padding: 0em; padding: 0em;
} }
.ui.message ul.list li:before { .ui.message .list:not(.ui) li:before {
position: absolute; position: absolute;
content: '•'; content: '•';
left: -1em; left: -1em;
height: 100%; height: 100%;
vertical-align: baseline; vertical-align: baseline;
} }
.ui.message ul.list li:last-child { .ui.message .list:not(.ui) li:last-child {
margin-bottom: 0em; margin-bottom: 0em;
} }
@ -107,13 +108,11 @@
cursor: pointer; cursor: pointer;
position: absolute; position: absolute;
margin: 0em; margin: 0em;
top: 1.15em; top: 0.78575em;
right: 0.5em; right: 0.5em;
opacity: 0.7; opacity: 0.7;
-webkit-transition: opacity 0.1s linear -webkit-transition: opacity 0.1s ease;
; transition: opacity 0.1s ease;
transition: opacity 0.1s linear
;
} }
.ui.message > .close.icon:hover { .ui.message > .close.icon:hover {
opacity: 1; opacity: 1;
@ -128,6 +127,15 @@
} }
/*******************************
Coupling
*******************************/
.ui.dropdown .menu > .message {
margin: 0px -1px;
}
/******************************* /*******************************
States States
*******************************/ *******************************/
@ -141,7 +149,10 @@
display: block; display: block;
} }
.ui.icon.visible.visible.visible.visible.message { .ui.icon.visible.visible.visible.visible.message {
display: table; display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
} }
/*-------------- /*--------------
@ -172,8 +183,8 @@
.ui.attached.message { .ui.attached.message {
margin-bottom: -1px; margin-bottom: -1px;
border-radius: 0.2857rem 0.2857rem 0em 0em; border-radius: 0.28571429rem 0.28571429rem 0em 0em;
box-shadow: 0em 0em 0em 1px rgba(0, 0, 0, 0.1) inset; box-shadow: 0em 0em 0em 1px rgba(34, 36, 38, 0.15) inset;
margin-left: -1px; margin-left: -1px;
margin-right: -1px; margin-right: -1px;
} }
@ -183,14 +194,13 @@
} }
.ui.bottom.attached.message { .ui.bottom.attached.message {
margin-top: -1px; margin-top: -1px;
border-radius: 0em 0em 0.2857rem 0.2857rem; border-radius: 0em 0em 0.28571429rem 0.28571429rem;
box-shadow: 0em 0em 0em 1px rgba(0, 0, 0, 0.1) inset, 0px 1px 2px 0 rgba(0, 0, 0, 0.05); box-shadow: 0em 0em 0em 1px rgba(34, 36, 38, 0.15) inset, 0px 1px 2px 0 rgba(34, 36, 38, 0.15);
} }
.ui.bottom.attached.message:not(:last-child) { .ui.bottom.attached.message:not(:last-child) {
margin-bottom: 1em; margin-bottom: 1em;
} }
.ui.attached.icon.message { .ui.attached.icon.message {
display: block;
width: auto; width: auto;
} }
@ -199,38 +209,49 @@
---------------*/ ---------------*/
.ui.icon.message { .ui.icon.message {
display: table; display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
width: 100%; width: 100%;
-webkit-box-align: center;
-webkit-align-items: center;
-ms-flex-align: center;
align-items: center;
} }
.ui.icon.message > .icon:not(.close) { .ui.icon.message > .icon:not(.close) {
display: table-cell; display: block;
-webkit-box-flex: 0;
-webkit-flex: 0 0 auto;
-ms-flex: 0 0 auto;
flex: 0 0 auto;
width: auto; width: auto;
line-height: 1;
vertical-align: middle; vertical-align: middle;
font-size: 3em; font-size: 3em;
opacity: 0.8; opacity: 0.8;
} }
.ui.icon.message > .content { .ui.icon.message > .content {
display: table-cell; display: block;
width: 100%; -webkit-box-flex: 1;
-webkit-flex: 1 1 auto;
-ms-flex: 1 1 auto;
flex: 1 1 auto;
vertical-align: middle; vertical-align: middle;
} }
.ui.icon.message .icon:not(.close) + .content { .ui.icon.message .icon:not(.close) + .content {
padding-left: 1.5rem; padding-left: 0rem;
} }
.ui.icon.message .circular.icon { .ui.icon.message .circular.icon {
width: 1em; width: 1em;
} }
.ui.icon.message .circular.icon + .content {
width: auto;
padding-left: 2em;
}
/*-------------- /*--------------
Floating Floating
---------------*/ ---------------*/
.ui.floating.message { .ui.floating.message {
box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.15), 0px 0px 0px 1px rgba(39, 41, 43, 0.15) inset; box-shadow: 0px 0px 0px 1px rgba(34, 36, 38, 0.22) inset, 0px 2px 4px 0px rgba(34, 36, 38, 0.12), 0px 2px 10px 0px rgba(34, 36, 38, 0.08);
} }
/*-------------- /*--------------
@ -239,7 +260,7 @@
.ui.black.message { .ui.black.message {
background-color: #1b1c1d; background-color: #1b1c1d;
color: #ffffff; color: rgba(255, 255, 255, 0.9);
} }
/*-------------- /*--------------
@ -249,25 +270,25 @@
/* Positive */ /* Positive */
.ui.positive.message { .ui.positive.message {
background-color: #eeffe7; background-color: #fcfff5;
color: #3c763d; color: #2c662d;
} }
.ui.positive.message, .ui.positive.message,
.ui.attached.positive.message { .ui.attached.positive.message {
box-shadow: 0px 0px 0px 1px #b7caa7 inset, 0px 1px 2px 0 rgba(0, 0, 0, 0.05); box-shadow: 0px 0px 0px 1px #a3c293 inset, 0px 0px 0px 0px rgba(0, 0, 0, 0);
} }
.ui.positive.message .header { .ui.positive.message .header {
color: #356e36; color: #1a531b;
} }
/* Negative */ /* Negative */
.ui.negative.message { .ui.negative.message {
background-color: #fff0f0; background-color: #fff6f6;
color: #a94442; color: #9f3a38;
} }
.ui.negative.message, .ui.negative.message,
.ui.attached.negative.message { .ui.attached.negative.message {
box-shadow: 0px 0px 0px 1px #dbb1b1 inset, 0px 1px 2px 0 rgba(0, 0, 0, 0.05); box-shadow: 0px 0px 0px 1px #e0b4b4 inset, 0px 0px 0px 0px rgba(0, 0, 0, 0);
} }
.ui.negative.message .header { .ui.negative.message .header {
color: #912d2b; color: #912d2b;
@ -275,38 +296,38 @@
/* Info */ /* Info */
.ui.info.message { .ui.info.message {
background-color: #e9faff; background-color: #f8ffff;
color: #337b92; color: #276f86;
} }
.ui.info.message, .ui.info.message,
.ui.attached.info.message { .ui.attached.info.message {
box-shadow: 0px 0px 0px 1px #aad6df inset, 0px 1px 2px 0 rgba(0, 0, 0, 0.05); box-shadow: 0px 0px 0px 1px #a9d5de inset, 0px 0px 0px 0px rgba(0, 0, 0, 0);
} }
.ui.info.message .header { .ui.info.message .header {
color: #297187; color: #0e566c;
} }
/* Warning */ /* Warning */
.ui.warning.message { .ui.warning.message {
background-color: #fffbe6; background-color: #fffaf3;
color: #876a38; color: #573a08;
} }
.ui.warning.message, .ui.warning.message,
.ui.attached.warning.message { .ui.attached.warning.message {
box-shadow: 0px 0px 0px 1px #d9caab inset, 0px 1px 2px 0 rgba(0, 0, 0, 0.05); box-shadow: 0px 0px 0px 1px #c9ba9b inset, 0px 0px 0px 0px rgba(0, 0, 0, 0);
} }
.ui.warning.message .header { .ui.warning.message .header {
color: #825c01; color: #794b02;
} }
/* Error */ /* Error */
.ui.error.message { .ui.error.message {
background-color: #fff0f0; background-color: #fff6f6;
color: #a94442; color: #9f3a38;
} }
.ui.error.message, .ui.error.message,
.ui.attached.error.message { .ui.attached.error.message {
box-shadow: 0px 0px 0px 1px #dbb1b1 inset, 0px 1px 2px 0 rgba(0, 0, 0, 0.05); box-shadow: 0px 0px 0px 1px #e0b4b4 inset, 0px 0px 0px 0px rgba(0, 0, 0, 0);
} }
.ui.error.message .header { .ui.error.message .header {
color: #912d2b; color: #912d2b;
@ -314,71 +335,36 @@
/* Success */ /* Success */
.ui.success.message { .ui.success.message {
background-color: #eeffe7; background-color: #fcfff5;
color: #3c763d; color: #2c662d;
} }
.ui.success.message, .ui.success.message,
.ui.attached.success.message { .ui.attached.success.message {
box-shadow: 0px 0px 0px 1px #b7caa7 inset, 0px 1px 2px 0 rgba(0, 0, 0, 0.05); box-shadow: 0px 0px 0px 1px #a3c293 inset, 0px 0px 0px 0px rgba(0, 0, 0, 0);
} }
.ui.success.message .header { .ui.success.message .header {
color: #356e36; color: #1a531b;
} }
/* Colors */ /* Colors */
.ui.inverted.message, .ui.inverted.message,
.ui.black.message { .ui.black.message {
background-color: #1b1c1d; background-color: #1b1c1d;
color: #ffffff; color: rgba(255, 255, 255, 0.9);
}
.ui.blue.message {
background-color: #dff0ff;
color: #3b83c0;
}
.ui.blue.message .header {
color: #3576ac;
}
.ui.green.message {
background-color: #ebffed;
color: #1ebc30;
}
.ui.green.message .header {
color: #1aa62a;
}
.ui.orange.message {
background-color: #ffedde;
color: #e07b53;
}
.ui.orange.message .header {
color: #dc6a3d;
}
.ui.pink.message {
background-color: #ffe3fb;
color: #d9499a;
}
.ui.pink.message .header {
color: #d5348e;
}
.ui.purple.message {
background-color: #eae7ff;
color: #564f8a;
}
.ui.purple.message .header {
color: #4c467a;
} }
.ui.red.message { .ui.red.message {
background-color: #ffe8e6; background-color: #ffe8e6;
color: #d95c5c; color: #db2828;
} }
.ui.red.message .header { .ui.red.message .header {
color: #d44747; color: #c82121;
} }
.ui.teal.message { .ui.orange.message {
background-color: #e9ffff; background-color: #ffedde;
color: #10a3a3; color: #f2711c;
} }
.ui.teal.message .header { .ui.orange.message .header {
color: #0e8c8c; color: #e7640d;
} }
.ui.yellow.message { .ui.yellow.message {
background-color: #fff8db; background-color: #fff8db;
@ -387,6 +373,62 @@
.ui.yellow.message .header { .ui.yellow.message .header {
color: #9c6f04; color: #9c6f04;
} }
.ui.olive.message {
background-color: #fbfdef;
color: #8abc1e;
}
.ui.olive.message .header {
color: #7aa61a;
}
.ui.green.message {
background-color: #e5f9e7;
color: #1ebc30;
}
.ui.green.message .header {
color: #1aa62a;
}
.ui.teal.message {
background-color: #e1f7f7;
color: #10a3a3;
}
.ui.teal.message .header {
color: #0e8c8c;
}
.ui.blue.message {
background-color: #dff0ff;
color: #2185d0;
}
.ui.blue.message .header {
color: #1e77ba;
}
.ui.violet.message {
background-color: #eae7ff;
color: #6435c9;
}
.ui.violet.message .header {
color: #5a30b5;
}
.ui.purple.message {
background-color: #f6e7ff;
color: #a333c8;
}
.ui.purple.message .header {
color: #922eb4;
}
.ui.pink.message {
background-color: #ffe3fb;
color: #e03997;
}
.ui.pink.message .header {
color: #dd238b;
}
.ui.brown.message {
background-color: #f1e2d3;
color: #a5673f;
}
.ui.brown.message .header {
color: #935b38;
}
/*-------------- /*--------------
Sizes Sizes
@ -416,6 +458,6 @@
/******************************* /*******************************
User Variable Overrides Site Overrides
*******************************/ *******************************/

6
web/semantic/dist/components/message.min.css vendored Normal file → Executable file

File diff suppressed because one or more lines are too long

266
web/semantic/dist/components/modal.css vendored Normal file → Executable file
View file

@ -1,9 +1,9 @@
/*! /*!
* # Semantic UI 1.11.4 - Modal * # Semantic UI 2.1.7 - Modal
* http://github.com/semantic-org/semantic-ui/ * http://github.com/semantic-org/semantic-ui/
* *
* *
* Copyright 2014 Contributors * Copyright 2015 Contributors
* Released under the MIT license * Released under the MIT license
* http://opensource.org/licenses/MIT * http://opensource.org/licenses/MIT
* *
@ -21,12 +21,13 @@
top: 50%; top: 50%;
left: 50%; left: 50%;
text-align: left; text-align: left;
width: 90%;
margin-left: -45%;
background: #ffffff; background: #ffffff;
border: none; border: none;
box-shadow: 0 1px 4px 1px rgba(0, 0, 0, 0.3); box-shadow: 1px 3px 3px 0px rgba(0, 0, 0, 0.2), 1px 3px 15px 2px rgba(0, 0, 0, 0.2);
border-radius: 0.2857rem; -webkit-transform-origin: 50% 25%;
-ms-transform-origin: 50% 25%;
transform-origin: 50% 25%;
border-radius: 0.28571429rem;
-webkit-user-select: text; -webkit-user-select: text;
-moz-user-select: text; -moz-user-select: text;
-ms-user-select: text; -ms-user-select: text;
@ -35,12 +36,12 @@
} }
.ui.modal > :first-child:not(.icon), .ui.modal > :first-child:not(.icon),
.ui.modal > .icon:first-child + * { .ui.modal > .icon:first-child + * {
border-top-left-radius: 0.2857rem; border-top-left-radius: 0.28571429rem;
border-top-right-radius: 0.2857rem; border-top-right-radius: 0.28571429rem;
} }
.ui.modal > :last-child { .ui.modal > :last-child {
border-bottom-left-radius: 0.2857rem; border-bottom-left-radius: 0.28571429rem;
border-bottom-right-radius: 0.2857rem; border-bottom-right-radius: 0.28571429rem;
} }
@ -77,16 +78,17 @@
.ui.modal > .header { .ui.modal > .header {
display: block; display: block;
font-family: 'Lato', 'Helvetica Neue', Arial, Helvetica, sans-serif; font-family: 'Lato', 'Helvetica Neue', Arial, Helvetica, sans-serif;
background: -webkit-linear-gradient(transparent, rgba(0, 0, 0, 0.05)) #ffffff; background: #ffffff;
background: linear-gradient(transparent, rgba(0, 0, 0, 0.05)) #ffffff;
margin: 0em; margin: 0em;
padding: 1.2rem 2rem; padding: 1.25rem 1.5rem;
box-shadow: 0px 1px 2px 0 rgba(0, 0, 0, 0.05); box-shadow: none;
font-size: 1.6em;
line-height: 1.3em;
font-weight: bold;
color: rgba(0, 0, 0, 0.85); color: rgba(0, 0, 0, 0.85);
border-bottom: 1px solid rgba(39, 41, 43, 0.15); border-bottom: 1px solid rgba(34, 36, 38, 0.15);
}
.ui.modal > .header:not(.ui) {
font-size: 1.42857143rem;
line-height: 1.2857em;
font-weight: bold;
} }
/*-------------- /*--------------
@ -94,55 +96,92 @@
---------------*/ ---------------*/
.ui.modal > .content { .ui.modal > .content {
display: table; display: block;
table-layout: fixed;
width: 100%; width: 100%;
font-size: 1em; font-size: 1em;
line-height: 1.4; line-height: 1.4;
padding: 2rem; padding: 1.5rem;
background: #ffffff; background: #ffffff;
} }
.ui.modal > .image.content {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-box-orient: horizontal;
-webkit-box-direction: normal;
-webkit-flex-direction: row;
-ms-flex-direction: row;
flex-direction: row;
}
/* Image */ /* Image */
.ui.modal > .content > .image { .ui.modal > .content > .image {
display: table-cell; display: block;
-webkit-box-flex: 0;
-webkit-flex: 0 1 auto;
-ms-flex: 0 1 auto;
flex: 0 1 auto;
width: ''; width: '';
vertical-align: top; -webkit-align-self: top;
-ms-flex-item-align: top;
align-self: top;
} }
.ui.modal > .content > .image[class*="top aligned"] { .ui.modal > [class*="top aligned"] {
vertical-align: top; -webkit-align-self: top;
-ms-flex-item-align: top;
align-self: top;
} }
.ui.modal > .content > .image[class*="middle aligned"] { .ui.modal > [class*="middle aligned"] {
vertical-align: middle; -webkit-align-self: middle;
-ms-flex-item-align: middle;
align-self: middle;
}
.ui.modal > [class*="stretched"] {
-webkit-align-self: stretch;
-ms-flex-item-align: stretch;
align-self: stretch;
} }
/* Description */ /* Description */
.ui.modal > .content > .description { .ui.modal > .content > .description {
display: table-cell; display: block;
vertical-align: top; -webkit-box-flex: 1;
-webkit-flex: 1 0 auto;
-ms-flex: 1 0 auto;
flex: 1 0 auto;
min-width: 0px;
-webkit-align-self: top;
-ms-flex-item-align: top;
align-self: top;
} }
.ui.modal > .content > .icon + .description, .ui.modal > .content > .icon + .description,
.ui.modal > .content > .image + .description { .ui.modal > .content > .image + .description {
-webkit-box-flex: 0;
-webkit-flex: 0 1 auto;
-ms-flex: 0 1 auto;
flex: 0 1 auto;
min-width: ''; min-width: '';
width: 80%; width: auto;
padding-left: 2em; padding-left: 2em;
} }
/*rtl:ignore*/ /*rtl:ignore*/
.ui.modal > .content > .image > i.icon { .ui.modal > .content > .image > i.icon {
font-size: 8rem;
margin: 0em; margin: 0em;
opacity: 1; opacity: 1;
width: auto; width: auto;
line-height: 1;
font-size: 8rem;
} }
/*-------------- /*--------------
Actions Actions
---------------*/ ---------------*/
.ui.modal .actions { .ui.modal > .actions {
background: #efefef; background: #f9fafb;
padding: 1rem 2rem; padding: 1rem 1rem;
border-top: 1px solid rgba(39, 41, 43, 0.15); border-top: 1px solid rgba(34, 36, 38, 0.15);
text-align: right; text-align: right;
} }
.ui.modal .actions > .button { .ui.modal .actions > .button {
@ -169,32 +208,32 @@
} }
@media only screen and (min-width: 992px) { @media only screen and (min-width: 992px) {
.ui.modal { .ui.modal {
width: 74%; width: 850px;
margin: 0em 0em 0em -37%; margin: 0em 0em 0em -425px;
} }
} }
@media only screen and (min-width: 1400px) { @media only screen and (min-width: 1200px) {
.ui.modal { .ui.modal {
width: 56%; width: 900px;
margin: 0em 0em 0em -28%; margin: 0em 0em 0em -450px;
} }
} }
@media only screen and (min-width: 1920px) { @media only screen and (min-width: 1920px) {
.ui.modal { .ui.modal {
width: 42%; width: 950px;
margin: 0em 0em 0em -21%; margin: 0em 0em 0em -475px;
} }
} }
/* Tablet and Mobile */ /* Tablet and Mobile */
@media only screen and (max-width: 992px) { @media only screen and (max-width: 991px) {
.ui.modal > .header { .ui.modal > .header {
padding-right: 2.25rem; padding-right: 2.25rem;
} }
.ui.modal > .close { .ui.modal > .close {
top: 0.905rem; top: 1.0535rem;
right: 1rem; right: 1rem;
color: rgba(0, 0, 0, 0.8); color: rgba(0, 0, 0, 0.87);
} }
} }
@ -213,6 +252,13 @@
right: 0.5rem !important; right: 0.5rem !important;
} }
/*rtl:ignore*/ /*rtl:ignore*/
.ui.modal .image.content {
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
-webkit-flex-direction: column;
-ms-flex-direction: column;
flex-direction: column;
}
.ui.modal .content > .image { .ui.modal .content > .image {
display: block; display: block;
max-width: 100%; max-width: 100%;
@ -243,6 +289,14 @@
} }
} }
/*--------------
Coupling
---------------*/
.ui.inverted.dimmer > .ui.modal {
box-shadow: 1px 3px 10px 2px rgba(0, 0, 0, 0.2);
}
/******************************* /*******************************
Types Types
@ -252,7 +306,7 @@
background-color: transparent; background-color: transparent;
border: none; border: none;
border-radius: 0em; border-radius: 0em;
box-shadow: 0px 0px 0px 0px; box-shadow: none !important;
color: #ffffff; color: #ffffff;
} }
.ui.basic.modal > .header, .ui.basic.modal > .header,
@ -267,43 +321,21 @@
top: 1rem; top: 1rem;
right: 1.5rem; right: 1.5rem;
} }
.ui.inverted.dimmer > .basic.modal {
color: rgba(0, 0, 0, 0.87);
}
.ui.inverted.dimmer > .ui.basic.modal > .header {
color: rgba(0, 0, 0, 0.85);
}
/* Tablet and Mobile */ /* Tablet and Mobile */
@media only screen and (max-width: 992px) { @media only screen and (max-width: 991px) {
.ui.basic.modal > .close { .ui.basic.modal > .close {
color: #ffffff; color: #ffffff;
} }
} }
/*******************************
Variations
*******************************/
/* A modal that cannot fit on the page */
.scrolling.dimmable.dimmed {
overflow: hidden;
}
.scrolling.dimmable.dimmed > .dimmer {
overflow: auto;
-webkit-overflow-scrolling: touch;
}
.scrolling.dimmable > .dimmer {
position: fixed;
}
.ui.scrolling.modal {
position: static;
margin: 3.5rem auto !important;
}
@media only screen and (max-width: 992px) {
.ui.scrolling.modal {
margin-top: 1rem;
margin-bottom: 1rem;
}
}
/******************************* /*******************************
States States
*******************************/ *******************************/
@ -318,6 +350,52 @@
*******************************/ *******************************/
/*--------------
Scrolling
---------------*/
/* A modal that cannot fit on the page */
.scrolling.dimmable.dimmed {
overflow: hidden;
}
.scrolling.dimmable.dimmed > .dimmer {
overflow: auto;
-webkit-overflow-scrolling: touch;
}
.scrolling.dimmable > .dimmer {
position: fixed;
}
.modals.dimmer .ui.scrolling.modal {
position: static !important;
margin: 3.5rem auto !important;
}
/* undetached scrolling */
.scrolling.undetached.dimmable.dimmed {
overflow: auto;
-webkit-overflow-scrolling: touch;
}
.scrolling.undetached.dimmable.dimmed > .dimmer {
overflow: hidden;
}
.scrolling.undetached.dimmable .ui.scrolling.modal {
position: absolute;
left: 50%;
margin-top: 3.5rem !important;
}
/* Coupling with Sidebar */
.undetached.dimmable.dimmed > .pusher {
z-index: auto;
}
@media only screen and (max-width: 991px) {
.modals.dimmer .ui.scrolling.modal {
margin-top: 1rem !important;
margin-bottom: 1rem !important;
}
}
/*-------------- /*--------------
Full Screen Full Screen
---------------*/ ---------------*/
@ -334,9 +412,9 @@
padding-right: 2.25rem; padding-right: 2.25rem;
} }
.ui.fullscreen.modal > .close { .ui.fullscreen.modal > .close {
top: 0.905rem; top: 1.0535rem;
right: 1rem; right: 1rem;
color: rgba(0, 0, 0, 0.8); color: rgba(0, 0, 0, 0.87);
} }
/*-------------- /*--------------
@ -348,7 +426,7 @@
} }
/* Small */ /* Small */
.ui.small.modal > .header { .ui.small.modal > .header:not(.ui) {
font-size: 1.3em; font-size: 1.3em;
} }
@ -361,26 +439,26 @@
} }
@media only screen and (min-width: 768px) { @media only screen and (min-width: 768px) {
.ui.small.modal { .ui.small.modal {
width: 52.8%; width: 70.4%;
margin: 0em 0em 0em -26.4%; margin: 0em 0em 0em -35.2%;
} }
} }
@media only screen and (min-width: 992px) { @media only screen and (min-width: 992px) {
.ui.small.modal { .ui.small.modal {
width: 44.4%; width: 680px;
margin: 0em 0em 0em -22.2%; margin: 0em 0em 0em -340px;
} }
} }
@media only screen and (min-width: 1400px) { @media only screen and (min-width: 1200px) {
.ui.small.modal { .ui.small.modal {
width: 33.6%; width: 720px;
margin: 0em 0em 0em -16.8%; margin: 0em 0em 0em -360px;
} }
} }
@media only screen and (min-width: 1920px) { @media only screen and (min-width: 1920px) {
.ui.small.modal { .ui.small.modal {
width: 25.2%; width: 760px;
margin: 0em 0em 0em -12.6%; margin: 0em 0em 0em -380px;
} }
} }
@ -402,20 +480,20 @@
} }
@media only screen and (min-width: 992px) { @media only screen and (min-width: 992px) {
.ui.large.modal { .ui.large.modal {
width: 88.8%; width: 1020px;
margin: 0em 0em 0em -44.4%; margin: 0em 0em 0em -510px;
} }
} }
@media only screen and (min-width: 1400px) { @media only screen and (min-width: 1200px) {
.ui.large.modal { .ui.large.modal {
width: 67.2%; width: 1080px;
margin: 0em 0em 0em -33.6%; margin: 0em 0em 0em -540px;
} }
} }
@media only screen and (min-width: 1920px) { @media only screen and (min-width: 1920px) {
.ui.large.modal { .ui.large.modal {
width: 50.4%; width: 1140px;
margin: 0em 0em 0em -25.2%; margin: 0em 0em 0em -570px;
} }
} }

View file

@ -1,9 +1,9 @@
/*! /*!
* # Semantic UI 1.11.4 - Modal * # Semantic UI 2.1.7 - Modal
* http://github.com/semantic-org/semantic-ui/ * http://github.com/semantic-org/semantic-ui/
* *
* *
* Copyright 2014 Contributors * Copyright 2015 Contributors
* Released under the MIT license * Released under the MIT license
* http://opensource.org/licenses/MIT * http://opensource.org/licenses/MIT
* *
@ -80,9 +80,10 @@ $.fn.modal = function(parameters) {
module.create.dimmer(); module.create.dimmer();
module.refreshModals(); module.refreshModals();
module.verbose('Attaching close events', $close);
module.bind.events(); module.bind.events();
module.observeChanges(); if(settings.observeChanges) {
module.observeChanges();
}
module.instantiate(); module.instantiate();
}, },
@ -107,6 +108,12 @@ $.fn.modal = function(parameters) {
}, },
dimmerSettings = $.extend(true, defaultSettings, settings.dimmerSettings) dimmerSettings = $.extend(true, defaultSettings, settings.dimmerSettings)
; ;
if(settings.inverted) {
dimmerSettings.variation = (dimmerSettings.variation !== undefined)
? dimmerSettings.variation + ' inverted'
: 'inverted'
;
}
if($.fn.dimmer === undefined) { if($.fn.dimmer === undefined) {
module.error(error.dimmer); module.error(error.dimmer);
return; return;
@ -117,6 +124,12 @@ $.fn.modal = function(parameters) {
module.verbose('Modal is detachable, moving content into dimmer'); module.verbose('Modal is detachable, moving content into dimmer');
$dimmable.dimmer('add content', $module); $dimmable.dimmer('add content', $module);
} }
else {
module.set.undetached();
}
if(settings.blurring) {
$dimmable.addClass(className.blurring);
}
$dimmer = $dimmable.dimmer('get dimmer'); $dimmer = $dimmable.dimmer('get dimmer');
}, },
id: function() { id: function() {
@ -186,8 +199,15 @@ $.fn.modal = function(parameters) {
bind: { bind: {
events: function() { events: function() {
$close.on('click' + eventNamespace, module.event.close); module.verbose('Attaching events');
$window.on('resize' + elementNamespace, module.event.resize); $module
.on('click' + eventNamespace, selector.close, module.event.close)
.on('click' + eventNamespace, selector.approve, module.event.approve)
.on('click' + eventNamespace, selector.deny, module.event.deny)
;
$window
.on('resize' + elementNamespace, module.event.resize)
;
} }
}, },
@ -198,30 +218,30 @@ $.fn.modal = function(parameters) {
}, },
event: { event: {
approve: function() {
if(settings.onApprove.call(element, $(this)) === false) {
module.verbose('Approve callback returned false cancelling hide');
return;
}
module.hide();
},
deny: function() {
if(settings.onDeny.call(element, $(this)) === false) {
module.verbose('Deny callback returned false cancelling hide');
return;
}
module.hide();
},
close: function() { close: function() {
module.verbose('Closing element pressed'); module.hide();
if( $(this).is(selector.approve) ) {
if(settings.onApprove.call(element) !== false) {
module.hide();
}
else {
module.verbose('Approve callback returned false cancelling hide');
}
}
else if( $(this).is(selector.deny) ) {
if(settings.onDeny.call(element) !== false) {
module.hide();
}
else {
module.verbose('Deny callback returned false cancelling hide');
}
}
else {
module.hide();
}
}, },
click: function(event) { click: function(event) {
if( $(event.target).closest($module).length === 0 ) { var
$target = $(event.target),
isInModal = ($target.closest(selector.modal).length > 0),
isInDOM = $.contains(document.documentElement, event.target)
;
if(!isInModal && isInDOM) {
module.debug('Dimmer clicked, hiding all modals'); module.debug('Dimmer clicked, hiding all modals');
if( module.is.active() ) { if( module.is.active() ) {
module.remove.clickaway(); module.remove.clickaway();
@ -302,8 +322,7 @@ $.fn.modal = function(parameters) {
module.set.type(); module.set.type();
module.set.clickaway(); module.set.clickaway();
if( !settings.allowMultiple && $otherModals.filter('.' + className.active).length > 0) { if( !settings.allowMultiple && module.others.active() ) {
module.debug('Other modals visible, queueing show animation');
module.hideOthers(module.showModal); module.hideOthers(module.showModal);
} }
else { else {
@ -322,23 +341,16 @@ $.fn.modal = function(parameters) {
module.add.keyboardShortcuts(); module.add.keyboardShortcuts();
module.save.focus(); module.save.focus();
module.set.active(); module.set.active();
module.set.autofocus(); if(settings.autofocus) {
module.set.autofocus();
}
callback(); callback();
} }
}) })
; ;
} }
else { else {
module.debug('Showing modal with javascript'); module.error(error.noTransition);
$module
.fadeIn(settings.duration, settings.easing, function() {
settings.onVisible.apply(element);
module.add.keyboardShortcuts();
module.save.focus();
module.set.active();
callback();
})
;
} }
} }
} }
@ -353,7 +365,10 @@ $.fn.modal = function(parameters) {
: function(){} : function(){}
; ;
module.debug('Hiding modal'); module.debug('Hiding modal');
settings.onHide.call(element); if(settings.onHide.call(element, $(this)) === false) {
module.verbose('Hide callback returned false cancelling hide');
return;
}
if( module.is.animating() || module.is.active() ) { if( module.is.animating() || module.is.active() ) {
if(settings.transition && $.fn.transition !== undefined && $module.transition('is supported')) { if(settings.transition && $.fn.transition !== undefined && $module.transition('is supported')) {
@ -366,7 +381,7 @@ $.fn.modal = function(parameters) {
duration : settings.duration, duration : settings.duration,
useFailSafe : true, useFailSafe : true,
onStart : function() { onStart : function() {
if(!module.othersActive() && !keepDimmed) { if(!module.others.active() && !keepDimmed) {
module.hideDimmer(); module.hideDimmer();
} }
module.remove.keyboardShortcuts(); module.remove.keyboardShortcuts();
@ -380,18 +395,7 @@ $.fn.modal = function(parameters) {
; ;
} }
else { else {
module.remove.active(); module.error(error.noTransition);
if( !module.othersActive() ) {
module.hideDimmer();
}
module.remove.keyboardShortcuts();
$module
.fadeOut(settings.duration, settings.easing, function() {
settings.onHidden.call(element);
module.restore.focus();
callback();
})
;
} }
} }
}, },
@ -409,10 +413,8 @@ $.fn.modal = function(parameters) {
hideDimmer: function() { hideDimmer: function() {
if( $dimmable.dimmer('is animating') || ($dimmable.dimmer('is active')) ) { if( $dimmable.dimmer('is animating') || ($dimmable.dimmer('is active')) ) {
$dimmable.dimmer('hide', function() { $dimmable.dimmer('hide', function() {
if(settings.transition && $.fn.transition !== undefined && $module.transition('is supported')) { module.remove.clickaway();
module.remove.clickaway(); module.remove.screenHeight();
module.remove.screenHeight();
}
}); });
} }
else { else {
@ -423,7 +425,7 @@ $.fn.modal = function(parameters) {
hideAll: function(callback) { hideAll: function(callback) {
var var
$visibleModals = $allModals.filter(':visible') $visibleModals = $allModals.filter('.' + className.active + ', .' + className.animating)
; ;
callback = $.isFunction(callback) callback = $.isFunction(callback)
? callback ? callback
@ -440,7 +442,7 @@ $.fn.modal = function(parameters) {
hideOthers: function(callback) { hideOthers: function(callback) {
var var
$visibleModals = $otherModals.filter(':visible') $visibleModals = $otherModals.filter('.' + className.active + ', .' + className.animating)
; ;
callback = $.isFunction(callback) callback = $.isFunction(callback)
? callback ? callback
@ -454,10 +456,16 @@ $.fn.modal = function(parameters) {
} }
}, },
othersActive: function() { others: {
return ($otherModals.filter('.' + className.active).length > 0); active: function() {
return ($otherModals.filter('.' + className.active).length > 0);
},
animating: function() {
return ($otherModals.filter('.' + className.animating).length > 0);
}
}, },
add: { add: {
keyboardShortcuts: function() { keyboardShortcuts: function() {
module.verbose('Adding keyboard shortcuts'); module.verbose('Adding keyboard shortcuts');
@ -492,14 +500,18 @@ $.fn.modal = function(parameters) {
; ;
} }
}, },
screenHeight: function() { bodyStyle: function() {
if(module.cache.height > module.cache.pageHeight) { if($body.attr('style') === '') {
module.debug('Removing page height'); module.verbose('Removing style attribute');
$body $body.removeAttr('style');
.css('height', '')
;
} }
}, },
screenHeight: function() {
module.debug('Removing page height');
$body
.css('height', '')
;
},
keyboardShortcuts: function() { keyboardShortcuts: function() {
module.verbose('Removing keyboard shortcuts'); module.verbose('Removing keyboard shortcuts');
$document $document
@ -555,15 +567,15 @@ $.fn.modal = function(parameters) {
set: { set: {
autofocus: function() { autofocus: function() {
if(settings.autofocus) { var
var $inputs = $module.find(':input').filter(':visible'),
$inputs = $module.find(':input:visible'), $autofocus = $inputs.filter('[autofocus]'),
$autofocus = $inputs.filter('[autofocus]'), $input = ($autofocus.length > 0)
$input = ($autofocus.length > 0) ? $autofocus.first()
? $autofocus : $inputs.first()
: $inputs ;
; if($input.length > 0) {
$input.first().focus(); $input.focus();
} }
}, },
clickaway: function() { clickaway: function() {
@ -580,7 +592,7 @@ $.fn.modal = function(parameters) {
else { else {
module.debug('Modal is taller than page content, resizing page height'); module.debug('Modal is taller than page content, resizing page height');
$body $body
.css('height', module.cache.height + (settings.padding / 2) ) .css('height', module.cache.height + (settings.padding * 2) )
; ;
} }
}, },
@ -594,7 +606,7 @@ $.fn.modal = function(parameters) {
type: function() { type: function() {
if(module.can.fit()) { if(module.can.fit()) {
module.verbose('Modal fits on screen'); module.verbose('Modal fits on screen');
if(!module.othersActive) { if(!module.others.active() && !module.others.animating()) {
module.remove.scrolling(); module.remove.scrolling();
} }
} }
@ -621,6 +633,9 @@ $.fn.modal = function(parameters) {
}) })
; ;
} }
},
undetached: function() {
$dimmable.addClass(className.undetached);
} }
}, },
@ -693,7 +708,7 @@ $.fn.modal = function(parameters) {
}); });
} }
clearTimeout(module.performance.timer); clearTimeout(module.performance.timer);
module.performance.timer = setTimeout(module.performance.display, 100); module.performance.timer = setTimeout(module.performance.display, 500);
}, },
display: function() { display: function() {
var var
@ -806,40 +821,55 @@ $.fn.modal.settings = {
namespace : 'modal', namespace : 'modal',
debug : false, debug : false,
verbose : true, verbose : false,
performance : true, performance : true,
observeChanges : false,
allowMultiple : false, allowMultiple : false,
detachable : true, detachable : true,
closable : true, closable : true,
autofocus : true, autofocus : true,
inverted : false,
blurring : false,
dimmerSettings : { dimmerSettings : {
closable : false, closable : false,
useCSS : true useCSS : true
}, },
context : 'body',
queue : false, context : 'body',
duration : 500,
easing : 'easeOutExpo',
offset : 0,
transition : 'scale',
padding : 50, queue : false,
duration : 500,
offset : 0,
transition : 'scale',
onShow : function(){}, // padding with edge of page
onHide : function(){}, padding : 50,
onVisible : function(){}, // called before show animation
onHidden : function(){}, onShow : function(){},
onApprove : function(){ return true; }, // called after show animation
onDeny : function(){ return true; }, onVisible : function(){},
// called before hide animation
onHide : function(){ return true; },
// called after hide animation
onHidden : function(){},
// called after approve selector match
onApprove : function(){ return true; },
// called after deny selector match
onDeny : function(){ return true; },
selector : { selector : {
close : '.close, .actions .button', close : '> .close',
approve : '.actions .positive, .actions .approve, .actions .ok', approve : '.actions .positive, .actions .approve, .actions .ok',
deny : '.actions .negative, .actions .deny, .actions .cancel', deny : '.actions .negative, .actions .deny, .actions .cancel',
modal : '.ui.modal' modal : '.ui.modal'
@ -850,11 +880,13 @@ $.fn.modal.settings = {
notFound : 'The element you specified could not be found' notFound : 'The element you specified could not be found'
}, },
className : { className : {
active : 'active', active : 'active',
animating : 'animating', animating : 'animating',
scrolling : 'scrolling' blurring : 'blurring',
scrolling : 'scrolling',
undetached : 'undetached'
} }
}; };
})( jQuery, window , document ); })( jQuery, window, document );

6
web/semantic/dist/components/modal.min.css vendored Normal file → Executable file

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

16
web/semantic/dist/components/nag.css vendored Normal file → Executable file
View file

@ -1,9 +1,9 @@
/*! /*!
* # Semantic UI 1.11.4 - Nag * # Semantic UI 2.1.7 - Nag
* http://github.com/semantic-org/semantic-ui/ * http://github.com/semantic-org/semantic-ui/
* *
* *
* Copyright 2014 Contributors * Copyright 2015 Contributors
* Released under the MIT license * Released under the MIT license
* http://opensource.org/licenses/MIT * http://opensource.org/licenses/MIT
* *
@ -29,8 +29,8 @@
box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.2); box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.2);
font-size: 1rem; font-size: 1rem;
text-align: center; text-align: center;
color: rgba(0, 0, 0, 0.8); color: rgba(0, 0, 0, 0.87);
border-radius: 0em 0em 0.2857rem 0.2857rem; border-radius: 0em 0em 0.28571429rem 0.28571429rem;
-webkit-transition: 0.2s background ease; -webkit-transition: 0.2s background ease;
transition: 0.2s background ease; transition: 0.2s background ease;
} }
@ -99,7 +99,7 @@ a.ui.nag {
.ui.bottom.nags, .ui.bottom.nags,
.ui.bottom.nag { .ui.bottom.nag {
border-radius: 0.2857rem 0.2857rem 0em 0em; border-radius: 0.28571429rem 0.28571429rem 0em 0em;
top: auto; top: auto;
bottom: 0em; bottom: 0em;
} }
@ -110,7 +110,7 @@ a.ui.nag {
.ui.inverted.nags .nag, .ui.inverted.nags .nag,
.ui.inverted.nag { .ui.inverted.nag {
background-color: #f0f0f0; background-color: #f3f4f5;
color: rgba(0, 0, 0, 0.85); color: rgba(0, 0, 0, 0.85);
} }
.ui.inverted.nags .nag .close, .ui.inverted.nags .nag .close,
@ -129,10 +129,10 @@ a.ui.nag {
border-radius: 0em !important; border-radius: 0em !important;
} }
.ui.nags .nag:last-child { .ui.nags .nag:last-child {
border-radius: 0em 0em 0.2857rem 0.2857rem; border-radius: 0em 0em 0.28571429rem 0.28571429rem;
} }
.ui.bottom.nags .nag:last-child { .ui.bottom.nags .nag:last-child {
border-radius: 0.2857rem 0.2857rem 0em 0em; border-radius: 0.28571429rem 0.28571429rem 0em 0em;
} }

View file

@ -1,9 +1,9 @@
/*! /*!
* # Semantic UI 1.11.4 - Nag * # Semantic UI 2.1.7 - Nag
* http://github.com/semantic-org/semantic-ui/ * http://github.com/semantic-org/semantic-ui/
* *
* *
* Copyright 2014 Contributors * Copyright 2015 Contributors
* Released under the MIT license * Released under the MIT license
* http://opensource.org/licenses/MIT * http://opensource.org/licenses/MIT
* *
@ -76,11 +76,9 @@ $.fn.nag = function(parameters) {
module.verbose('Initializing element'); module.verbose('Initializing element');
$module $module
.on('click' + eventNamespace, selector.close, module.dismiss)
.data(moduleNamespace, module) .data(moduleNamespace, module)
; ;
$close
.on('click' + eventNamespace, module.dismiss)
;
if(settings.detachable && $module.parent()[0] !== $context[0]) { if(settings.detachable && $module.parent()[0] !== $context[0]) {
$module $module
@ -196,6 +194,10 @@ $.fn.nag = function(parameters) {
window.localStorage.setItem(key, value); window.localStorage.setItem(key, value);
module.debug('Value stored using local storage', key, value); module.debug('Value stored using local storage', key, value);
} }
else if(settings.storageMethod == 'sessionstorage' && window.sessionStorage !== undefined) {
window.sessionStorage.setItem(key, value);
module.debug('Value stored using session storage', key, value);
}
else if($.cookie !== undefined) { else if($.cookie !== undefined) {
$.cookie(key, value, options); $.cookie(key, value, options);
module.debug('Value stored using cookie', key, value, options); module.debug('Value stored using cookie', key, value, options);
@ -212,6 +214,9 @@ $.fn.nag = function(parameters) {
if(settings.storageMethod == 'localstorage' && window.localStorage !== undefined) { if(settings.storageMethod == 'localstorage' && window.localStorage !== undefined) {
storedValue = window.localStorage.getItem(key); storedValue = window.localStorage.getItem(key);
} }
else if(settings.storageMethod == 'sessionstorage' && window.sessionStorage !== undefined) {
storedValue = window.sessionStorage.getItem(key);
}
// get by cookie // get by cookie
else if($.cookie !== undefined) { else if($.cookie !== undefined) {
storedValue = $.cookie(key); storedValue = $.cookie(key);
@ -228,9 +233,12 @@ $.fn.nag = function(parameters) {
var var
options = module.get.storageOptions() options = module.get.storageOptions()
; ;
if(settings.storageMethod == 'local' && window.store !== undefined) { if(settings.storageMethod == 'localstorage' && window.localStorage !== undefined) {
window.localStorage.removeItem(key); window.localStorage.removeItem(key);
} }
else if(settings.storageMethod == 'sessionstorage' && window.sessionStorage !== undefined) {
window.sessionStorage.removeItem(key);
}
// store by cookie // store by cookie
else if($.cookie !== undefined) { else if($.cookie !== undefined) {
$.removeCookie(key, options); $.removeCookie(key, options);
@ -310,7 +318,7 @@ $.fn.nag = function(parameters) {
}); });
} }
clearTimeout(module.performance.timer); clearTimeout(module.performance.timer);
module.performance.timer = setTimeout(module.performance.display, 100); module.performance.timer = setTimeout(module.performance.display, 500);
}, },
display: function() { display: function() {
var var
@ -423,7 +431,7 @@ $.fn.nag.settings = {
name : 'Nag', name : 'Nag',
debug : false, debug : false,
verbose : true, verbose : false,
performance : true, performance : true,
namespace : 'Nag', namespace : 'Nag',
@ -454,8 +462,9 @@ $.fn.nag.settings = {
value : 'dismiss', value : 'dismiss',
error: { error: {
noStorage : 'Neither $.cookie or store is defined. A storage solution is required for storing state', noCookieStorage : '$.cookie is not included. A storage solution is required.',
method : 'The method you called is not defined.' noStorage : 'Neither $.cookie or store is defined. A storage solution is required for storing state',
method : 'The method you called is not defined.'
}, },
className : { className : {
@ -474,4 +483,4 @@ $.fn.nag.settings = {
}; };
})( jQuery, window , document ); })( jQuery, window, document );

6
web/semantic/dist/components/nag.min.css vendored Normal file → Executable file
View file

@ -1,10 +1,10 @@
/*! /*!
* # Semantic UI 1.11.4 - Nag * # Semantic UI 2.1.7 - Nag
* http://github.com/semantic-org/semantic-ui/ * http://github.com/semantic-org/semantic-ui/
* *
* *
* Copyright 2014 Contributors * Copyright 2015 Contributors
* Released under the MIT license * Released under the MIT license
* http://opensource.org/licenses/MIT * http://opensource.org/licenses/MIT
* *
*/.ui.nag{display:none;opacity:.95;position:relative;top:0;left:0;z-index:999;min-height:0;width:100%;margin:0;padding:.75em 1em;background:#555;box-shadow:0 1px 2px 0 rgba(0,0,0,.2);font-size:1rem;text-align:center;color:rgba(0,0,0,.8);border-radius:0 0 .2857rem .2857rem;-webkit-transition:.2s background ease;transition:.2s background ease}a.ui.nag{cursor:pointer}.ui.nag>.title{display:inline-block;margin:0 .5em;color:#fff}.ui.nag>.close.icon{cursor:pointer;opacity:.4;position:absolute;top:50%;right:1em;font-size:1em;margin:-.5em 0 0;color:#fff;-webkit-transition:opacity .2s ease;transition:opacity .2s ease}.ui.nag:hover{background:#555;opacity:1}.ui.nag .close:hover{opacity:1}.ui.overlay.nag{position:absolute;display:block}.ui.fixed.nag{position:fixed}.ui.bottom.nag,.ui.bottom.nags{border-radius:.2857rem .2857rem 0 0;top:auto;bottom:0}.ui.inverted.nag,.ui.inverted.nags .nag{background-color:#f0f0f0;color:rgba(0,0,0,.85)}.ui.inverted.nag .close,.ui.inverted.nag .title,.ui.inverted.nags .nag .close,.ui.inverted.nags .nag .title{color:rgba(0,0,0,.4)}.ui.nags .nag{border-radius:0!important}.ui.nags .nag:last-child{border-radius:0 0 .2857rem .2857rem}.ui.bottom.nags .nag:last-child{border-radius:.2857rem .2857rem 0 0} */.ui.nag{display:none;opacity:.95;position:relative;top:0;left:0;z-index:999;min-height:0;width:100%;margin:0;padding:.75em 1em;background:#555;box-shadow:0 1px 2px 0 rgba(0,0,0,.2);font-size:1rem;text-align:center;color:rgba(0,0,0,.87);border-radius:0 0 .28571429rem .28571429rem;-webkit-transition:.2s background ease;transition:.2s background ease}a.ui.nag{cursor:pointer}.ui.nag>.title{display:inline-block;margin:0 .5em;color:#fff}.ui.nag>.close.icon{cursor:pointer;opacity:.4;position:absolute;top:50%;right:1em;font-size:1em;margin:-.5em 0 0;color:#fff;-webkit-transition:opacity .2s ease;transition:opacity .2s ease}.ui.nag:hover{background:#555;opacity:1}.ui.nag .close:hover{opacity:1}.ui.overlay.nag{position:absolute;display:block}.ui.fixed.nag{position:fixed}.ui.bottom.nag,.ui.bottom.nags{border-radius:.28571429rem .28571429rem 0 0;top:auto;bottom:0}.ui.inverted.nag,.ui.inverted.nags .nag{background-color:#f3f4f5;color:rgba(0,0,0,.85)}.ui.inverted.nag .close,.ui.inverted.nag .title,.ui.inverted.nags .nag .close,.ui.inverted.nags .nag .title{color:rgba(0,0,0,.4)}.ui.nags .nag{border-radius:0!important}.ui.nags .nag:last-child{border-radius:0 0 .28571429rem .28571429rem}.ui.bottom.nags .nag:last-child{border-radius:.28571429rem .28571429rem 0 0}

File diff suppressed because one or more lines are too long

146
web/semantic/dist/components/popup.css vendored Normal file → Executable file
View file

@ -1,9 +1,9 @@
/*! /*!
* # Semantic UI 1.11.4 - Popup * # Semantic UI 2.1.7 - Popup
* http://github.com/semantic-org/semantic-ui/ * http://github.com/semantic-org/semantic-ui/
* *
* *
* Copyright 2014 Contributors * Copyright 2015 Contributors
* Released under the MIT license * Released under the MIT license
* http://opensource.org/licenses/MIT * http://opensource.org/licenses/MIT
* *
@ -21,17 +21,20 @@
right: 0px; right: 0px;
/* Fixes content being squished when inline (moz only) */ /* Fixes content being squished when inline (moz only) */
min-width: -moz-max-content; min-width: -webkit-min-content;
min-width: -moz-min-content;
min-width: min-content;
z-index: 1900; z-index: 1900;
border: 1px solid #cccccc; border: 1px solid #d4d4d5;
line-height: 1.4285em;
max-width: 250px; max-width: 250px;
background-color: #ffffff; background: #ffffff;
padding: 0.833em 1em; padding: 0.833em 1em;
font-weight: normal; font-weight: normal;
font-style: normal; font-style: normal;
color: rgba(0, 0, 0, 0.8); color: rgba(0, 0, 0, 0.87);
border-radius: 0.2857rem; border-radius: 0.28571429rem;
box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.1); box-shadow: 0px 2px 4px 0px rgba(34, 36, 38, 0.12), 0px 2px 10px 0px rgba(34, 36, 38, 0.08);
} }
.ui.popup > .header { .ui.popup > .header {
padding: 0em; padding: 0em;
@ -53,7 +56,7 @@
-ms-transform: rotate(45deg); -ms-transform: rotate(45deg);
transform: rotate(45deg); transform: rotate(45deg);
z-index: 2; z-index: 2;
box-shadow: 1px 1px 0px 0px #b3b3b3; box-shadow: 1px 1px 0px 0px #bababc;
} }
@ -69,17 +72,59 @@
.ui.popup { .ui.popup {
margin: 0em; margin: 0em;
} }
.ui.popup.bottom {
margin: 0.75em 0em 0em; /* Extending from Top */
} .ui.top.popup {
.ui.popup.top {
margin: 0em 0em 0.75em; margin: 0em 0em 0.75em;
} }
.ui.popup.left.center { .ui.top.left.popup {
margin: 0em 0.75em 0em 0em; -webkit-transform-origin: left bottom;
-ms-transform-origin: left bottom;
transform-origin: left bottom;
} }
.ui.popup.right.center { .ui.top.center.popup {
-webkit-transform-origin: center bottom;
-ms-transform-origin: center bottom;
transform-origin: center bottom;
}
.ui.top.right.popup {
-webkit-transform-origin: right bottom;
-ms-transform-origin: right bottom;
transform-origin: right bottom;
}
/* Extending from Vertical Center */
.ui.left.center.popup {
margin: 0em 0.75em 0em 0em;
-webkit-transform-origin: right 50%;
-ms-transform-origin: right 50%;
transform-origin: right 50%;
}
.ui.right.center.popup {
margin: 0em 0em 0em 0.75em; margin: 0em 0em 0em 0.75em;
-webkit-transform-origin: left 50%;
-ms-transform-origin: left 50%;
transform-origin: left 50%;
}
/* Extending from Bottom */
.ui.bottom.popup {
margin: 0.75em 0em 0em;
}
.ui.bottom.left.popup {
-webkit-transform-origin: left top;
-ms-transform-origin: left top;
transform-origin: left top;
}
.ui.bottom.center.popup {
-webkit-transform-origin: center top;
-ms-transform-origin: center top;
transform-origin: center top;
}
.ui.bottom.right.popup {
-webkit-transform-origin: right top;
-ms-transform-origin: right top;
transform-origin: right top;
} }
/*-------------- /*--------------
@ -95,29 +140,31 @@
left: 50%; left: 50%;
right: auto; right: auto;
bottom: auto; bottom: auto;
box-shadow: -1px -1px 0px 0px #b3b3b3; box-shadow: -1px -1px 0px 0px #bababc;
} }
.ui.bottom.left.popup { .ui.bottom.left.popup {
margin-left: 0em; margin-left: 0em;
} }
/*rtl:rename*/
.ui.bottom.left.popup:before { .ui.bottom.left.popup:before {
top: -0.325em; top: -0.325em;
left: 1em; left: 1em;
right: auto; right: auto;
bottom: auto; bottom: auto;
margin-left: 0em; margin-left: 0em;
box-shadow: -1px -1px 0px 0px #b3b3b3; box-shadow: -1px -1px 0px 0px #bababc;
} }
.ui.bottom.right.popup { .ui.bottom.right.popup {
margin-right: 0em; margin-right: 0em;
} }
/*rtl:rename*/
.ui.bottom.right.popup:before { .ui.bottom.right.popup:before {
top: -0.325em; top: -0.325em;
right: 1em; right: 1em;
bottom: auto; bottom: auto;
left: auto; left: auto;
margin-left: 0em; margin-left: 0em;
box-shadow: -1px -1px 0px 0px #b3b3b3; box-shadow: -1px -1px 0px 0px #bababc;
} }
/*--- Above ---*/ /*--- Above ---*/
@ -132,6 +179,7 @@
.ui.top.left.popup { .ui.top.left.popup {
margin-left: 0em; margin-left: 0em;
} }
/*rtl:rename*/
.ui.top.left.popup:before { .ui.top.left.popup:before {
bottom: -0.325em; bottom: -0.325em;
left: 1em; left: 1em;
@ -142,6 +190,7 @@
.ui.top.right.popup { .ui.top.right.popup {
margin-right: 0em; margin-right: 0em;
} }
/*rtl:rename*/
.ui.top.right.popup:before { .ui.top.right.popup:before {
bottom: -0.325em; bottom: -0.325em;
right: 1em; right: 1em;
@ -152,24 +201,50 @@
/*--- Left Center ---*/ /*--- Left Center ---*/
/*rtl:rename*/
.ui.left.center.popup:before { .ui.left.center.popup:before {
top: 50%; top: 50%;
right: -0.325em; right: -0.325em;
bottom: auto; bottom: auto;
left: auto; left: auto;
margin-top: -0.325em; margin-top: -0.325em;
box-shadow: 1px -1px 0px 0px #b3b3b3; box-shadow: 1px -1px 0px 0px #bababc;
} }
/*--- Right Center ---*/ /*--- Right Center ---*/
/*rtl:rename*/
.ui.right.center.popup:before { .ui.right.center.popup:before {
top: 50%; top: 50%;
left: -0.325em; left: -0.325em;
bottom: auto; bottom: auto;
right: auto; right: auto;
margin-top: -0.325em; margin-top: -0.325em;
box-shadow: -1px 1px 0px 0px #b3b3b3; box-shadow: -1px 1px 0px 0px #bababc;
}
/* Arrow Color By Location */
.ui.bottom.popup:before {
background: #ffffff;
}
.ui.right.center.popup:before,
.ui.left.center.popup:before {
background: #ffffff;
}
.ui.top.popup:before {
background: #ffffff;
}
/* Inverted Arrow Color */
.ui.inverted.bottom.popup:before {
background: #1b1c1d;
}
.ui.inverted.right.center.popup:before,
.ui.inverted.left.center.popup:before {
background: #1b1c1d;
}
.ui.inverted.top.popup:before {
background: #1b1c1d;
} }
@ -180,7 +255,6 @@
/* Immediate Nested Grid */ /* Immediate Nested Grid */
.ui.popup > .ui.grid:not(.padded) { .ui.popup > .ui.grid:not(.padded) {
width: -webkit-calc(100% + 1.75rem);
width: calc(100% + 1.75rem); width: calc(100% + 1.75rem);
margin: -0.7rem -0.875rem; margin: -0.7rem -0.875rem;
} }
@ -199,6 +273,12 @@
.ui.visible.popup { .ui.visible.popup {
display: block; display: block;
} }
.ui.visible.popup {
-webkit-transform: translateZ(0px);
transform: translateZ(0px);
-webkit-backface-visibility: hidden;
backface-visibility: hidden;
}
/******************************* /*******************************
@ -224,6 +304,12 @@
.ui[class*="very wide"].popup { .ui[class*="very wide"].popup {
max-width: 550px; max-width: 550px;
} }
@media only screen and (max-width: 767px) {
.ui.wide.popup,
.ui[class*="very wide"].popup {
max-width: 250px;
}
}
/*-------------- /*--------------
Fluid Fluid
@ -267,17 +353,23 @@
Sizes Sizes
---------------*/ ---------------*/
.ui.mini.popup {
font-size: 0.71428571rem;
}
.ui.tiny.popup {
font-size: 0.85714286rem;
}
.ui.small.popup { .ui.small.popup {
font-size: 0.785714rem; font-size: 0.92857143rem;
} }
.ui.popup { .ui.popup {
font-size: 0.85714rem;
}
.ui.large.popup {
font-size: 1rem; font-size: 1rem;
} }
.ui.large.popup {
font-size: 1.14285714rem;
}
.ui.huge.popup { .ui.huge.popup {
font-size: 1.14285rem; font-size: 1.42857143rem;
} }

File diff suppressed because it is too large Load diff

6
web/semantic/dist/components/popup.min.css vendored Normal file → Executable file
View file

@ -1,10 +1,10 @@
/*! /*!
* # Semantic UI 1.11.4 - Popup * # Semantic UI 2.1.7 - Popup
* http://github.com/semantic-org/semantic-ui/ * http://github.com/semantic-org/semantic-ui/
* *
* *
* Copyright 2014 Contributors * Copyright 2015 Contributors
* Released under the MIT license * Released under the MIT license
* http://opensource.org/licenses/MIT * http://opensource.org/licenses/MIT
* *
*/.ui.popup{display:none;position:absolute;top:0;right:0;min-width:-moz-max-content;z-index:1900;border:1px solid #ccc;max-width:250px;background-color:#fff;padding:.833em 1em;font-weight:400;font-style:normal;color:rgba(0,0,0,.8);border-radius:.2857rem;box-shadow:0 2px 4px rgba(0,0,0,.1)}.ui.popup>.header{padding:0;font-family:Lato,'Helvetica Neue',Arial,Helvetica,sans-serif;font-size:1.125em;line-height:1.2;font-weight:700}.ui.popup>.header+.content{padding-top:.5em}.ui.popup:before{position:absolute;content:'';width:.75em;height:.75em;background:#fff;-webkit-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg);z-index:2;box-shadow:1px 1px 0 0 #b3b3b3}.ui.popup{margin:0}.ui.popup.bottom{margin:.75em 0 0}.ui.popup.top{margin:0 0 .75em}.ui.popup.left.center{margin:0 .75em 0 0}.ui.popup.right.center{margin:0 0 0 .75em}.ui.bottom.center.popup:before{margin-left:-.325em;top:-.325em;left:50%;right:auto;bottom:auto;box-shadow:-1px -1px 0 0 #b3b3b3}.ui.bottom.left.popup{margin-left:0}.ui.bottom.left.popup:before{top:-.325em;left:1em;right:auto;bottom:auto;margin-left:0;box-shadow:-1px -1px 0 0 #b3b3b3}.ui.bottom.right.popup{margin-right:0}.ui.bottom.right.popup:before{top:-.325em;right:1em;bottom:auto;left:auto;margin-left:0;box-shadow:-1px -1px 0 0 #b3b3b3}.ui.top.center.popup:before{top:auto;right:auto;bottom:-.325em;left:50%;margin-left:-.325em}.ui.top.left.popup{margin-left:0}.ui.top.left.popup:before{bottom:-.325em;left:1em;top:auto;right:auto;margin-left:0}.ui.top.right.popup{margin-right:0}.ui.top.right.popup:before{bottom:-.325em;right:1em;top:auto;left:auto;margin-left:0}.ui.left.center.popup:before{top:50%;right:-.325em;bottom:auto;left:auto;margin-top:-.325em;box-shadow:1px -1px 0 0 #b3b3b3}.ui.right.center.popup:before{top:50%;left:-.325em;bottom:auto;right:auto;margin-top:-.325em;box-shadow:-1px 1px 0 0 #b3b3b3}.ui.popup>.ui.grid:not(.padded){width:-webkit-calc(100% + 1.75rem);width:calc(100% + 1.75rem);margin:-.7rem -.875rem}.ui.loading.popup{display:block;visibility:hidden;z-index:-1}.ui.animating.popup,.ui.visible.popup{display:block}.ui.basic.popup:before{display:none}.ui.wide.popup{max-width:350px}.ui[class*="very wide"].popup{max-width:550px}.ui.fluid.popup{width:100%;max-width:none}.ui.inverted.popup{background:#1b1c1d;color:#fff;border:none;box-shadow:none}.ui.inverted.popup .header{background-color:none;color:#fff}.ui.inverted.popup:before{background-color:#1b1c1d;box-shadow:none!important}.ui.flowing.popup{max-width:none}.ui.small.popup{font-size:.785714rem}.ui.popup{font-size:.85714rem}.ui.large.popup{font-size:1rem}.ui.huge.popup{font-size:1.14285rem} */.ui.popup{display:none;position:absolute;top:0;right:0;min-width:-webkit-min-content;min-width:-moz-min-content;min-width:min-content;z-index:1900;border:1px solid #d4d4d5;line-height:1.4285em;max-width:250px;background:#fff;padding:.833em 1em;font-weight:400;font-style:normal;color:rgba(0,0,0,.87);border-radius:.28571429rem;box-shadow:0 2px 4px 0 rgba(34,36,38,.12),0 2px 10px 0 rgba(34,36,38,.08);margin:0}.ui.popup>.header{padding:0;font-family:Lato,'Helvetica Neue',Arial,Helvetica,sans-serif;font-size:1.125em;line-height:1.2;font-weight:700}.ui.popup>.header+.content{padding-top:.5em}.ui.popup:before{position:absolute;content:'';width:.75em;height:.75em;background:#fff;-webkit-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg);z-index:2;box-shadow:1px 1px 0 0 #bababc}.ui.top.popup{margin:0 0 .75em}.ui.top.left.popup{-webkit-transform-origin:left bottom;-ms-transform-origin:left bottom;transform-origin:left bottom}.ui.top.center.popup{-webkit-transform-origin:center bottom;-ms-transform-origin:center bottom;transform-origin:center bottom}.ui.top.right.popup{-webkit-transform-origin:right bottom;-ms-transform-origin:right bottom;transform-origin:right bottom}.ui.left.center.popup{margin:0 .75em 0 0;-webkit-transform-origin:right 50%;-ms-transform-origin:right 50%;transform-origin:right 50%}.ui.right.center.popup{margin:0 0 0 .75em;-webkit-transform-origin:left 50%;-ms-transform-origin:left 50%;transform-origin:left 50%}.ui.bottom.popup{margin:.75em 0 0}.ui.bottom.left.popup{-webkit-transform-origin:left top;-ms-transform-origin:left top;transform-origin:left top}.ui.bottom.center.popup{-webkit-transform-origin:center top;-ms-transform-origin:center top;transform-origin:center top}.ui.bottom.right.popup{-webkit-transform-origin:right top;-ms-transform-origin:right top;transform-origin:right top;margin-right:0}.ui.bottom.center.popup:before{margin-left:-.325em;top:-.325em;left:50%;right:auto;bottom:auto;box-shadow:-1px -1px 0 0 #bababc}.ui.bottom.left.popup{margin-left:0}.ui.bottom.left.popup:before{top:-.325em;left:1em;right:auto;bottom:auto;margin-left:0;box-shadow:-1px -1px 0 0 #bababc}.ui.bottom.right.popup:before{top:-.325em;right:1em;bottom:auto;left:auto;margin-left:0;box-shadow:-1px -1px 0 0 #bababc}.ui.top.center.popup:before{top:auto;right:auto;bottom:-.325em;left:50%;margin-left:-.325em}.ui.top.left.popup{margin-left:0}.ui.top.left.popup:before{bottom:-.325em;left:1em;top:auto;right:auto;margin-left:0}.ui.top.right.popup{margin-right:0}.ui.top.right.popup:before{bottom:-.325em;right:1em;top:auto;left:auto;margin-left:0}.ui.left.center.popup:before{top:50%;right:-.325em;bottom:auto;left:auto;margin-top:-.325em;box-shadow:1px -1px 0 0 #bababc}.ui.right.center.popup:before{top:50%;left:-.325em;bottom:auto;right:auto;margin-top:-.325em;box-shadow:-1px 1px 0 0 #bababc}.ui.bottom.popup:before,.ui.left.center.popup:before,.ui.right.center.popup:before,.ui.top.popup:before{background:#fff}.ui.inverted.bottom.popup:before,.ui.inverted.left.center.popup:before,.ui.inverted.right.center.popup:before,.ui.inverted.top.popup:before{background:#1b1c1d}.ui.popup>.ui.grid:not(.padded){width:calc(100% + 1.75rem);margin:-.7rem -.875rem}.ui.loading.popup{display:block;visibility:hidden;z-index:-1}.ui.animating.popup,.ui.visible.popup{display:block}.ui.visible.popup{-webkit-transform:translateZ(0);transform:translateZ(0);-webkit-backface-visibility:hidden;backface-visibility:hidden}.ui.basic.popup:before{display:none}.ui.wide.popup{max-width:350px}.ui[class*="very wide"].popup{max-width:550px}@media only screen and (max-width:767px){.ui.wide.popup,.ui[class*="very wide"].popup{max-width:250px}}.ui.fluid.popup{width:100%;max-width:none}.ui.inverted.popup{background:#1b1c1d;color:#fff;border:none;box-shadow:none}.ui.inverted.popup .header{background-color:none;color:#fff}.ui.inverted.popup:before{background-color:#1b1c1d;box-shadow:none!important}.ui.flowing.popup{max-width:none}.ui.mini.popup{font-size:.71428571rem}.ui.tiny.popup{font-size:.85714286rem}.ui.small.popup{font-size:.92857143rem}.ui.popup{font-size:1rem}.ui.large.popup{font-size:1.14285714rem}.ui.huge.popup{font-size:1.42857143rem}

File diff suppressed because one or more lines are too long

346
web/semantic/dist/components/progress.css vendored Normal file → Executable file
View file

@ -1,9 +1,9 @@
/*! /*!
* # Semantic UI 1.11.4 - Progress Bar * # Semantic UI 2.1.7 - Progress Bar
* http://github.com/semantic-org/semantic-ui/ * http://github.com/semantic-org/semantic-ui/
* *
* *
* Copyright 2014 Contributorss * Copyright 2015 Contributors
* Released under the MIT license * Released under the MIT license
* http://opensource.org/licenses/MIT * http://opensource.org/licenses/MIT
* *
@ -18,12 +18,12 @@
position: relative; position: relative;
display: block; display: block;
max-width: 100%; max-width: 100%;
border: 1px solid rgba(39, 41, 43, 0.15); border: none;
margin: 1em 0em 2.5em; margin: 1em 0em 2.5em;
box-shadow: none; box-shadow: none;
background: rgba(0, 0, 0, 0.03); background: rgba(0, 0, 0, 0.1);
padding: 0.2857em; padding: 0em;
border-radius: 0.2857rem; border-radius: 0.28571429rem;
} }
.ui.progress:first-child { .ui.progress:first-child {
margin: 0em 0em 2.5em; margin: 0em 0em 2.5em;
@ -32,83 +32,6 @@
margin: 0em 0em 1.5em; margin: 0em 0em 1.5em;
} }
/* Indicating */
.ui.indicating.progress .bar[style*="width: 1"],
.ui.indicating.progress .bar[style*="width: 2"] {
background-color: #d95c5c;
}
.ui.indicating.progress .bar[style*="width: 3"] {
background-color: #d9a65c;
}
.ui.indicating.progress .bar[style*="width: 4"],
.ui.indicating.progress .bar[style*="width: 5"] {
background-color: #e6bb48;
}
.ui.indicating.progress .bar[style*="width: 6"] {
background-color: #ddc928;
}
.ui.indicating.progress .bar[style*="width: 7"],
.ui.indicating.progress .bar[style*="width: 8"] {
background-color: #b4d95c;
}
.ui.indicating.progress .bar[style*="width: 9"],
.ui.indicating.progress .bar[style*="width: 100"] {
background-color: #66da81;
}
/* Indicating Label */
.ui.indicating.progress[data-percent^="1"] .label,
.ui.indicating.progress[data-percent^="2"] .label {
color: #d95c5c;
}
.ui.indicating.progress[data-percent^="3"] .label {
color: #d9a65c;
}
.ui.indicating.progress[data-percent^="4"] .label,
.ui.indicating.progress[data-percent^="5"] .label {
color: #e6bb48;
}
.ui.indicating.progress[data-percent^="6"] .label {
color: #ddc928;
}
.ui.indicating.progress[data-percent^="7"] .label,
.ui.indicating.progress[data-percent^="8"] .label {
color: #b4d95c;
}
.ui.indicating.progress[data-percent^="9"] .label,
.ui.indicating.progress[data-percent^="100"] .label {
color: #66da81;
}
/* Single Digits */
.ui.indicating.progress .bar[style^="width: 1%"],
.ui.indicating.progress .bar[style^="width: 2%"],
.ui.indicating.progress .bar[style^="width: 3%"],
.ui.indicating.progress .bar[style^="width: 4%"],
.ui.indicating.progress .bar[style^="width: 5%"],
.ui.indicating.progress .bar[style^="width: 6%"],
.ui.indicating.progress .bar[style^="width: 7%"],
.ui.indicating.progress .bar[style^="width: 8%"],
.ui.indicating.progress .bar[style^="width: 9%"] {
background-color: #d95c5c;
}
.ui.indicating.progress[data-percent="1"] .label,
.ui.indicating.progress[data-percent="2"] .label,
.ui.indicating.progress[data-percent="3"] .label,
.ui.indicating.progress[data-percent="4"] .label,
.ui.indicating.progress[data-percent="5"] .label,
.ui.indicating.progress[data-percent="6"] .label,
.ui.indicating.progress[data-percent="7"] .label,
.ui.indicating.progress[data-percent="8"] .label,
.ui.indicating.progress[data-percent="9"] .label {
color: #d95c5c;
}
/* Indicating Success */
.ui.indicating.progress.success .label {
color: #356e36;
}
/******************************* /*******************************
Content Content
@ -123,9 +46,9 @@
width: 0%; width: 0%;
min-width: 2em; min-width: 2em;
background: #888888; background: #888888;
border-radius: 0.2857rem; border-radius: 0.28571429rem;
-webkit-transition: width 0.3s ease, background-color 0.3s ease; -webkit-transition: width 0.1s ease, background-color 0.1s ease;
transition: width 0.3s ease, background-color 0.3s ease; transition: width 0.1s ease, background-color 0.1s ease;
} }
/* Percent Complete */ /* Percent Complete */
@ -133,12 +56,12 @@
white-space: nowrap; white-space: nowrap;
position: absolute; position: absolute;
width: auto; width: auto;
font-size: 0.9em; font-size: 0.92857143em;
top: 50%; top: 50%;
right: 0.5em; right: 0.5em;
left: auto; left: auto;
bottom: auto; bottom: auto;
color: rgba(255, 255, 255, 0.8); color: rgba(255, 255, 255, 0.7);
text-shadow: none; text-shadow: none;
margin-top: -0.5em; margin-top: -0.5em;
font-weight: bold; font-weight: bold;
@ -154,7 +77,7 @@
right: auto; right: auto;
left: 0%; left: 0%;
bottom: auto; bottom: auto;
color: rgba(0, 0, 0, 0.8); color: rgba(0, 0, 0, 0.87);
font-weight: bold; font-weight: bold;
text-shadow: none; text-shadow: none;
margin-top: 0.2em; margin-top: 0.2em;
@ -164,6 +87,89 @@
} }
/*******************************
Types
*******************************/
/* Indicating */
.ui.indicating.progress[data-percent^="1"] .bar,
.ui.indicating.progress[data-percent^="2"] .bar {
background-color: #d95c5c;
}
.ui.indicating.progress[data-percent^="3"] .bar {
background-color: #efbc72;
}
.ui.indicating.progress[data-percent^="4"] .bar,
.ui.indicating.progress[data-percent^="5"] .bar {
background-color: #e6bb48;
}
.ui.indicating.progress[data-percent^="6"] .bar {
background-color: #ddc928;
}
.ui.indicating.progress[data-percent^="7"] .bar,
.ui.indicating.progress[data-percent^="8"] .bar {
background-color: #b4d95c;
}
.ui.indicating.progress[data-percent^="9"] .bar,
.ui.indicating.progress[data-percent^="100"] .bar {
background-color: #66da81;
}
/* Indicating Label */
.ui.indicating.progress[data-percent^="1"] .label,
.ui.indicating.progress[data-percent^="2"] .label {
color: rgba(0, 0, 0, 0.87);
}
.ui.indicating.progress[data-percent^="3"] .label {
color: rgba(0, 0, 0, 0.87);
}
.ui.indicating.progress[data-percent^="4"] .label,
.ui.indicating.progress[data-percent^="5"] .label {
color: rgba(0, 0, 0, 0.87);
}
.ui.indicating.progress[data-percent^="6"] .label {
color: rgba(0, 0, 0, 0.87);
}
.ui.indicating.progress[data-percent^="7"] .label,
.ui.indicating.progress[data-percent^="8"] .label {
color: rgba(0, 0, 0, 0.87);
}
.ui.indicating.progress[data-percent^="9"] .label,
.ui.indicating.progress[data-percent^="100"] .label {
color: rgba(0, 0, 0, 0.87);
}
/* Single Digits */
.ui.indicating.progress[data-percent="1"] .bar,
.ui.indicating.progress[data-percent="2"] .bar,
.ui.indicating.progress[data-percent="3"] .bar,
.ui.indicating.progress[data-percent="4"] .bar,
.ui.indicating.progress[data-percent="5"] .bar,
.ui.indicating.progress[data-percent="6"] .bar,
.ui.indicating.progress[data-percent="7"] .bar,
.ui.indicating.progress[data-percent="8"] .bar,
.ui.indicating.progress[data-percent="9"] .bar {
background-color: #d95c5c;
}
.ui.indicating.progress[data-percent="1"] .label,
.ui.indicating.progress[data-percent="2"] .label,
.ui.indicating.progress[data-percent="3"] .label,
.ui.indicating.progress[data-percent="4"] .label,
.ui.indicating.progress[data-percent="5"] .label,
.ui.indicating.progress[data-percent="6"] .label,
.ui.indicating.progress[data-percent="7"] .label,
.ui.indicating.progress[data-percent="8"] .label,
.ui.indicating.progress[data-percent="9"] .label {
color: rgba(0, 0, 0, 0.87);
}
/* Indicating Success */
.ui.indicating.progress.success .label {
color: #1a531b;
}
/******************************* /*******************************
States States
*******************************/ *******************************/
@ -174,7 +180,7 @@
---------------*/ ---------------*/
.ui.progress.success .bar { .ui.progress.success .bar {
background-color: #5bbd72 !important; background-color: #21ba45 !important;
} }
.ui.progress.success .bar, .ui.progress.success .bar,
.ui.progress.success .bar::after { .ui.progress.success .bar::after {
@ -182,7 +188,7 @@
animation: none !important; animation: none !important;
} }
.ui.progress.success > .label { .ui.progress.success > .label {
color: #356e36; color: #1a531b;
} }
/*-------------- /*--------------
@ -198,7 +204,7 @@
animation: none !important; animation: none !important;
} }
.ui.progress.warning > .label { .ui.progress.warning > .label {
color: #825c01; color: #794b02;
} }
/*-------------- /*--------------
@ -206,7 +212,7 @@
---------------*/ ---------------*/
.ui.progress.error .bar { .ui.progress.error .bar {
background-color: #d95c5c !important; background-color: #db2828 !important;
} }
.ui.progress.error .bar, .ui.progress.error .bar,
.ui.progress.error .bar::after { .ui.progress.error .bar::after {
@ -234,7 +240,7 @@
right: 0px; right: 0px;
bottom: 0px; bottom: 0px;
background: #ffffff; background: #ffffff;
border-radius: 0.2857rem; border-radius: 0.28571429rem;
-webkit-animation: progress-active 2s ease infinite; -webkit-animation: progress-active 2s ease infinite;
animation: progress-active 2s ease infinite; animation: progress-active 2s ease infinite;
} }
@ -283,26 +289,26 @@
---------------*/ ---------------*/
.ui.inverted.progress { .ui.inverted.progress {
background: rgba(255, 255, 255, 0.05); background: rgba(255, 255, 255, 0.08);
border: none; border: none;
} }
.ui.inverted.progress .bar { .ui.inverted.progress .bar {
background: #888888; background: #888888;
} }
.ui.inverted.progress .bar > .progress { .ui.inverted.progress .bar > .progress {
color: #fafafa; color: #f9fafb;
} }
.ui.inverted.progress > .label { .ui.inverted.progress > .label {
color: #ffffff; color: #ffffff;
} }
.ui.inverted.progress.success > .label { .ui.inverted.progress.success > .label {
color: #5bbd72; color: #21ba45;
} }
.ui.inverted.progress.warning > .label { .ui.inverted.progress.warning > .label {
color: #f2c037; color: #f2c037;
} }
.ui.inverted.progress.error > .label { .ui.inverted.progress.error > .label {
color: #d95c5c; color: #db2828;
} }
/*-------------- /*--------------
@ -323,7 +329,7 @@
height: 0.2rem; height: 0.2rem;
padding: 0px; padding: 0px;
overflow: hidden; overflow: hidden;
border-radius: 0em 0em 0.2857rem 0.2857rem; border-radius: 0em 0em 0.28571429rem 0.28571429rem;
} }
.ui.progress.attached .bar { .ui.progress.attached .bar {
border-radius: 0em; border-radius: 0em;
@ -333,7 +339,7 @@
.ui.progress.top.attached, .ui.progress.top.attached,
.ui.progress.top.attached .bar { .ui.progress.top.attached .bar {
top: 0px; top: 0px;
border-radius: 0.2857rem 0.2857rem 0em 0em; border-radius: 0.28571429rem 0.28571429rem 0em 0em;
} }
.ui.progress.top.attached .bar { .ui.progress.top.attached .bar {
border-radius: 0em; border-radius: 0em;
@ -358,61 +364,111 @@
Colors Colors
---------------*/ ---------------*/
.ui.black.progress .bar {
background-color: #1b1c1d; /* Red */
}
.ui.blue.progress .bar {
background-color: #3b83c0;
}
.ui.green.progress .bar {
background-color: #5bbd72;
}
.ui.orange.progress .bar {
background-color: #e07b53;
}
.ui.pink.progress .bar {
background-color: #d9499a;
}
.ui.purple.progress .bar {
background-color: #564f8a;
}
.ui.red.progress .bar { .ui.red.progress .bar {
background-color: #d95c5c; background-color: #db2828;
}
.ui.teal.progress .bar {
background-color: #00b5ad;
}
.ui.yellow.progress .bar {
background-color: #f2c61f;
}
.ui.black.inverted.progress .bar {
background-color: #333333;
}
.ui.blue.inverted.progress .bar {
background-color: #54c8ff;
}
.ui.green.inverted.progress .bar {
background-color: #2ecc40;
}
.ui.orange.inverted.progress .bar {
background-color: #ff851b;
}
.ui.pink.inverted.progress .bar {
background-color: #ff8edf;
}
.ui.purple.inverted.progress .bar {
background-color: #cdc6ff;
} }
.ui.red.inverted.progress .bar { .ui.red.inverted.progress .bar {
background-color: #ff695e; background-color: #ff695e;
} }
.ui.teal.inverted.progress .bar {
background-color: #6dffff; /* Orange */
.ui.orange.progress .bar {
background-color: #f2711c;
}
.ui.orange.inverted.progress .bar {
background-color: #ff851b;
}
/* Yellow */
.ui.yellow.progress .bar {
background-color: #fbbd08;
} }
.ui.yellow.inverted.progress .bar { .ui.yellow.inverted.progress .bar {
background-color: #ffe21f; background-color: #ffe21f;
} }
/* Olive */
.ui.olive.progress .bar {
background-color: #b5cc18;
}
.ui.olive.inverted.progress .bar {
background-color: #d9e778;
}
/* Green */
.ui.green.progress .bar {
background-color: #21ba45;
}
.ui.green.inverted.progress .bar {
background-color: #2ecc40;
}
/* Teal */
.ui.teal.progress .bar {
background-color: #00b5ad;
}
.ui.teal.inverted.progress .bar {
background-color: #6dffff;
}
/* Blue */
.ui.blue.progress .bar {
background-color: #2185d0;
}
.ui.blue.inverted.progress .bar {
background-color: #54c8ff;
}
/* Violet */
.ui.violet.progress .bar {
background-color: #6435c9;
}
.ui.violet.inverted.progress .bar {
background-color: #a291fb;
}
/* Purple */
.ui.purple.progress .bar {
background-color: #a333c8;
}
.ui.purple.inverted.progress .bar {
background-color: #dc73ff;
}
/* Pink */
.ui.pink.progress .bar {
background-color: #e03997;
}
.ui.pink.inverted.progress .bar {
background-color: #ff8edf;
}
/* Brown */
.ui.brown.progress .bar {
background-color: #a5673f;
}
.ui.brown.inverted.progress .bar {
background-color: #d67c1c;
}
/* Grey */
.ui.grey.progress .bar {
background-color: #767676;
}
.ui.grey.inverted.progress .bar {
background-color: #dcddde;
}
/* Black */
.ui.black.progress .bar {
background-color: #1b1c1d;
}
.ui.black.inverted.progress .bar {
background-color: #545454;
}
/*-------------- /*--------------
Sizes Sizes
---------------*/ ---------------*/

View file

@ -1,9 +1,9 @@
/*! /*!
* # Semantic UI 1.11.4 - Progress * # Semantic UI 2.1.7 - Progress
* http://github.com/semantic-org/semantic-ui/ * http://github.com/semantic-org/semantic-ui/
* *
* *
* Copyright 2014 Contributors * Copyright 2015 Contributors
* Released under the MIT license * Released under the MIT license
* http://opensource.org/licenses/MIT * http://opensource.org/licenses/MIT
* *
@ -63,11 +63,12 @@ $.fn.progress = function(parameters) {
initialize: function() { initialize: function() {
module.debug('Initializing progress bar', settings); module.debug('Initializing progress bar', settings);
transitionEnd = module.get.transitionEnd(); module.set.duration();
module.set.transitionEvent();
module.read.metadata(); module.read.metadata();
module.set.duration(); module.read.settings();
module.set.initials();
module.instantiate(); module.instantiate();
}, },
@ -88,6 +89,7 @@ $.fn.progress = function(parameters) {
reset: function() { reset: function() {
module.set.percent(0); module.set.percent(0);
module.set.value(0);
}, },
complete: function() { complete: function() {
@ -98,92 +100,116 @@ $.fn.progress = function(parameters) {
read: { read: {
metadata: function() { metadata: function() {
if( $module.data(metadata.percent) ) { var
module.verbose('Current percent value set from metadata'); data = {
module.percent = $module.data(metadata.percent); percent : $module.data(metadata.percent),
total : $module.data(metadata.total),
value : $module.data(metadata.value)
}
;
if(data.percent) {
module.debug('Current percent value set from metadata', data.percent);
module.set.percent(data.percent);
} }
if( $module.data(metadata.total) ) { if(data.total) {
module.verbose('Total value set from metadata'); module.debug('Total value set from metadata', data.total);
module.total = $module.data(metadata.total); module.set.total(data.total);
} }
if( $module.data(metadata.value) ) { if(data.value) {
module.verbose('Current value set from metadata'); module.debug('Current value set from metadata', data.value);
module.value = $module.data(metadata.value); module.set.value(data.value);
module.set.progress(data.value);
} }
}, },
currentValue: function() { settings: function() {
return (module.value !== undefined) if(settings.total !== false) {
? module.value module.debug('Current total set in settings', settings.total);
: false module.set.total(settings.total);
; }
if(settings.value !== false) {
module.debug('Current value set in settings', settings.value);
module.set.value(settings.value);
module.set.progress(module.value);
}
if(settings.percent !== false) {
module.debug('Current percent set in settings', settings.percent);
module.set.percent(settings.percent);
}
} }
}, },
increment: function(incrementValue) { increment: function(incrementValue) {
var var
total = module.total || false, maxValue,
edgeValue,
startValue, startValue,
newValue newValue
; ;
if(total) { if( module.has.total() ) {
startValue = module.value || 0; startValue = module.get.value();
incrementValue = incrementValue || 1; incrementValue = incrementValue || 1;
newValue = startValue + incrementValue; newValue = startValue + incrementValue;
edgeValue = module.total; maxValue = module.get.total();
module.debug('Incrementing value by', incrementValue, startValue, edgeValue);
if(newValue > edgeValue ) { module.debug('Incrementing value', startValue, newValue, maxValue);
module.debug('Value cannot increment above total', edgeValue); if(newValue > maxValue ) {
newValue = edgeValue; module.debug('Value cannot increment above total', maxValue);
newValue = maxValue;
} }
module.set.progress(newValue);
} }
else { else {
startValue = module.percent || 0; startValue = module.get.percent();
incrementValue = incrementValue || module.get.randomValue(); incrementValue = incrementValue || module.get.randomValue();
newValue = startValue + incrementValue; newValue = startValue + incrementValue;
edgeValue = 100; maxValue = 100;
module.debug('Incrementing percentage by', incrementValue, startValue);
if(newValue > edgeValue ) { module.debug('Incrementing percentage by', startValue, newValue);
if(newValue > maxValue ) {
module.debug('Value cannot increment above 100 percent'); module.debug('Value cannot increment above 100 percent');
newValue = edgeValue; newValue = maxValue;
} }
module.set.progress(newValue);
} }
module.set.progress(newValue);
}, },
decrement: function(decrementValue) { decrement: function(decrementValue) {
var var
total = module.total || false, total = module.get.total(),
edgeValue = 0,
startValue, startValue,
newValue newValue
; ;
if(total) { if(total) {
startValue = module.value || 0; startValue = module.get.value();
decrementValue = decrementValue || 1; decrementValue = decrementValue || 1;
newValue = startValue - decrementValue; newValue = startValue - decrementValue;
module.debug('Decrementing value by', decrementValue, startValue); module.debug('Decrementing value by', decrementValue, startValue);
} }
else { else {
startValue = module.percent || 0; startValue = module.get.percent();
decrementValue = decrementValue || module.get.randomValue(); decrementValue = decrementValue || module.get.randomValue();
newValue = startValue - decrementValue; newValue = startValue - decrementValue;
module.debug('Decrementing percentage by', decrementValue, startValue); module.debug('Decrementing percentage by', decrementValue, startValue);
} }
if(newValue < edgeValue) { if(newValue < 0) {
module.debug('Value cannot decrement below 0'); module.debug('Value cannot decrement below 0');
newValue = 0; newValue = 0;
} }
module.set.progress(newValue); module.set.progress(newValue);
}, },
has: {
total: function() {
return (module.get.total() !== false);
}
},
get: { get: {
text: function(templateText) { text: function(templateText) {
var var
value = module.value || 0, value = module.value || 0,
total = module.total || 0, total = module.total || 0,
percent = (module.is.visible() && animating) percent = (animating)
? module.get.displayPercent() ? module.get.displayPercent()
: module.percent || 0, : module.percent || 0,
left = (module.total > 0) left = (module.total > 0)
@ -200,11 +226,22 @@ $.fn.progress = function(parameters) {
module.debug('Adding variables to progress bar text', templateText); module.debug('Adding variables to progress bar text', templateText);
return templateText; return templateText;
}, },
randomValue: function() { randomValue: function() {
module.debug('Generating random increment percentage'); module.debug('Generating random increment percentage');
return Math.floor((Math.random() * settings.random.max) + settings.random.min); return Math.floor((Math.random() * settings.random.max) + settings.random.min);
}, },
numericValue: function(value) {
return (typeof value === 'string')
? (value.replace(/[^\d.]/g, '') !== '')
? +(value.replace(/[^\d.]/g, ''))
: false
: value
;
},
transitionEnd: function() { transitionEnd: function() {
var var
element = document.createElement('element'), element = document.createElement('element'),
@ -233,17 +270,17 @@ $.fn.progress = function(parameters) {
? (barWidth / totalWidth * 100) ? (barWidth / totalWidth * 100)
: module.percent : module.percent
; ;
if(settings.precision === 0) { return (settings.precision > 0)
return Math.round(displayPercent); ? Math.round(displayPercent * (10 * settings.precision)) / (10 * settings.precision)
} : Math.round(displayPercent)
return Math.round(displayPercent * (10 * settings.precision) / (10 * settings.precision) ); ;
}, },
percent: function() { percent: function() {
return module.percent || 0; return module.percent || 0;
}, },
value: function() { value: function() {
return module.value || false; return module.value || 0;
}, },
total: function() { total: function() {
return module.total || false; return module.total || false;
@ -319,66 +356,37 @@ $.fn.progress = function(parameters) {
module.verbose('Setting progress bar transition duration', duration); module.verbose('Setting progress bar transition duration', duration);
$bar $bar
.css({ .css({
'-webkit-transition-duration': duration,
'-moz-transition-duration': duration,
'-ms-transition-duration': duration,
'-o-transition-duration': duration,
'transition-duration': duration 'transition-duration': duration
}) })
; ;
}, },
initials: function() {
if(settings.total !== false) {
module.verbose('Current total set in settings', settings.total);
module.total = settings.total;
}
if(settings.value !== false) {
module.verbose('Current value set in settings', settings.value);
module.value = settings.value;
}
if(settings.percent !== false) {
module.verbose('Current percent set in settings', settings.percent);
module.percent = settings.percent;
}
if(module.percent !== undefined) {
module.set.percent(module.percent);
}
else if(module.value !== undefined) {
module.set.progress(module.value);
}
},
percent: function(percent) { percent: function(percent) {
percent = (typeof percent == 'string') percent = (typeof percent == 'string')
? +(percent.replace('%', '')) ? +(percent.replace('%', ''))
: percent : percent
; ;
if(percent > 0 && percent < 1) { // round display percentage
module.verbose('Module percentage passed as decimal, converting'); percent = (settings.precision > 0)
percent = percent * 100; ? Math.round(percent * (10 * settings.precision)) / (10 * settings.precision)
} : Math.round(percent)
// round percentage ;
if(settings.precision === 0) {
percent = Math.round(percent);
}
else {
percent = Math.round(percent * (10 * settings.precision) / (10 * settings.precision) );
}
module.percent = percent; module.percent = percent;
if(module.total) { if( !module.has.total() ) {
module.value = Math.round( (percent / 100) * module.total); module.value = (settings.precision > 0)
} ? Math.round( (percent / 100) * module.total * (10 * settings.precision)) / (10 * settings.precision)
else if(settings.limitValues) { : Math.round( (percent / 100) * module.total * 10) / 10
module.value = (module.value > 100)
? 100
: (module.value < 0)
? 0
: module.value
; ;
if(settings.limitValues) {
module.value = (module.value > 100)
? 100
: (module.value < 0)
? 0
: module.value
;
}
} }
module.set.barWidth(percent); module.set.barWidth(percent);
if( module.is.visible() ) { module.set.labelInterval();
module.set.labelInterval();
}
module.set.labels(); module.set.labels();
settings.onChange.call(element, percent, module.value, module.total); settings.onChange.call(element, percent, module.value, module.total);
}, },
@ -500,23 +508,25 @@ $.fn.progress = function(parameters) {
} }
settings.onError.call(element, module.value, module.total); settings.onError.call(element, module.value, module.total);
}, },
transitionEvent: function() {
transitionEnd = module.get.transitionEnd();
},
total: function(totalValue) { total: function(totalValue) {
module.total = totalValue; module.total = totalValue;
}, },
value: function(value) {
module.value = value;
},
progress: function(value) { progress: function(value) {
var var
numericValue = (typeof value === 'string') numericValue = module.get.numericValue(value),
? (value.replace(/[^\d.]/g, '') !== '')
? +(value.replace(/[^\d.]/g, ''))
: false
: value,
percentComplete percentComplete
; ;
if(numericValue === false) { if(numericValue === false) {
module.error(error.nonNumeric, value); module.error(error.nonNumeric, value);
} }
if(module.total) { if( module.has.total() ) {
module.value = numericValue; module.set.value(numericValue);
percentComplete = (numericValue / module.total) * 100; percentComplete = (numericValue / module.total) * 100;
module.debug('Calculating percent complete from total', percentComplete); module.debug('Calculating percent complete from total', percentComplete);
module.set.percent( percentComplete ); module.set.percent( percentComplete );
@ -598,7 +608,7 @@ $.fn.progress = function(parameters) {
}); });
} }
clearTimeout(module.performance.timer); clearTimeout(module.performance.timer);
module.performance.timer = setTimeout(module.performance.display, 100); module.performance.timer = setTimeout(module.performance.display, 500);
}, },
display: function() { display: function() {
var var
@ -712,7 +722,7 @@ $.fn.progress.settings = {
namespace : 'progress', namespace : 'progress',
debug : false, debug : false,
verbose : true, verbose : false,
performance : true, performance : true,
random : { random : {
@ -727,7 +737,7 @@ $.fn.progress.settings = {
limitValues : true, limitValues : true,
label : 'percent', label : 'percent',
precision : 1, precision : 0,
framerate : (1000 / 30), /// 30 fps framerate : (1000 / 30), /// 30 fps
percent : false, percent : false,
@ -782,4 +792,4 @@ $.fn.progress.settings = {
}; };
})( jQuery, window , document ); })( jQuery, window, document );

6
web/semantic/dist/components/progress.min.css vendored Normal file → Executable file

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

22
web/semantic/dist/components/rail.css vendored Normal file → Executable file
View file

@ -1,9 +1,9 @@
/*! /*!
* # Semantic UI 1.11.4 - Rail * # Semantic UI 2.1.7 - Rail
* http://github.com/semantic-org/semantic-ui/ * http://github.com/semantic-org/semantic-ui/
* *
* *
* Copyright 2014 Contributors * Copyright 2015 Contributors
* Released under the MIT license * Released under the MIT license
* http://opensource.org/licenses/MIT * http://opensource.org/licenses/MIT
* *
@ -19,7 +19,6 @@
top: 0%; top: 0%;
width: 300px; width: 300px;
height: 100%; height: 100%;
box-sizing: content-box;
} }
.ui.left.rail { .ui.left.rail {
left: auto; left: auto;
@ -58,16 +57,19 @@
} }
/*-------------- /*--------------
Divided Dividing
---------------*/ ---------------*/
.ui.dividing.rail {
width: 302.5px;
}
.ui.left.dividing.rail { .ui.left.dividing.rail {
padding: 0em 2.5rem 0em 0em; padding: 0em 2.5rem 0em 0em;
margin: 0em 2.5rem 0em 0em; margin: 0em 2.5rem 0em 0em;
border-right: 1px solid rgba(39, 41, 43, 0.15); border-right: 1px solid rgba(34, 36, 38, 0.15);
} }
.ui.right.dividing.rail { .ui.right.dividing.rail {
border-left: 1px solid rgba(39, 41, 43, 0.15); border-left: 1px solid rgba(34, 36, 38, 0.15);
padding: 0em 0em 0em 2.5rem; padding: 0em 0em 0em 2.5rem;
margin: 0em 0em 0em 2.5rem; margin: 0em 0em 0em 2.5rem;
} }
@ -76,6 +78,9 @@
Distance Distance
---------------*/ ---------------*/
.ui.close.rail {
width: 301px;
}
.ui.close.left.rail { .ui.close.left.rail {
padding: 0em 1em 0em 0em; padding: 0em 1em 0em 0em;
margin: 0em 1em 0em 0em; margin: 0em 1em 0em 0em;
@ -84,6 +89,9 @@
padding: 0em 0em 0em 1em; padding: 0em 0em 0em 1em;
margin: 0em 0em 0em 1em; margin: 0em 0em 0em 1em;
} }
.ui.very.close.rail {
width: 300.5px;
}
.ui.very.close.left.rail { .ui.very.close.left.rail {
padding: 0em 0.5em 0em 0em; padding: 0em 0.5em 0em 0em;
margin: 0em 0.5em 0em 0em; margin: 0em 0.5em 0em 0em;
@ -108,7 +116,7 @@
---------------*/ ---------------*/
.ui.rail { .ui.rail {
font-size: 1em; font-size: 1rem;
} }

6
web/semantic/dist/components/rail.min.css vendored Normal file → Executable file
View file

@ -1,10 +1,10 @@
/*! /*!
* # Semantic UI 1.11.4 - Rail * # Semantic UI 2.1.7 - Rail
* http://github.com/semantic-org/semantic-ui/ * http://github.com/semantic-org/semantic-ui/
* *
* *
* Copyright 2014 Contributors * Copyright 2015 Contributors
* Released under the MIT license * Released under the MIT license
* http://opensource.org/licenses/MIT * http://opensource.org/licenses/MIT
* *
*/.ui.rail{position:absolute;top:0;width:300px;height:100%;box-sizing:content-box}.ui.left.rail{left:auto;right:100%;padding:0 2rem 0 0;margin:0 2rem 0 0}.ui.right.rail{left:100%;right:auto;padding:0 0 0 2rem;margin:0 0 0 2rem}.ui.left.internal.rail{left:0;right:auto;padding:0 0 0 2rem;margin:0 0 0 2rem}.ui.right.internal.rail{left:auto;right:0;padding:0 2rem 0 0;margin:0 2rem 0 0}.ui.left.dividing.rail{padding:0 2.5rem 0 0;margin:0 2.5rem 0 0;border-right:1px solid rgba(39,41,43,.15)}.ui.right.dividing.rail{border-left:1px solid rgba(39,41,43,.15);padding:0 0 0 2.5rem;margin:0 0 0 2.5rem}.ui.close.left.rail{padding:0 1em 0 0;margin:0 1em 0 0}.ui.close.right.rail{padding:0 0 0 1em;margin:0 0 0 1em}.ui.very.close.left.rail{padding:0 .5em 0 0;margin:0 .5em 0 0}.ui.very.close.right.rail{padding:0 0 0 .5em;margin:0 0 0 .5em}.ui.attached.left.rail,.ui.attached.right.rail{padding:0;margin:0}.ui.rail{font-size:1em} */.ui.rail{position:absolute;top:0;width:300px;height:100%;font-size:1rem}.ui.left.rail{left:auto;right:100%;padding:0 2rem 0 0;margin:0 2rem 0 0}.ui.right.rail{left:100%;right:auto;padding:0 0 0 2rem;margin:0 0 0 2rem}.ui.left.internal.rail{left:0;right:auto;padding:0 0 0 2rem;margin:0 0 0 2rem}.ui.right.internal.rail{left:auto;right:0;padding:0 2rem 0 0;margin:0 2rem 0 0}.ui.dividing.rail{width:302.5px}.ui.left.dividing.rail{padding:0 2.5rem 0 0;margin:0 2.5rem 0 0;border-right:1px solid rgba(34,36,38,.15)}.ui.right.dividing.rail{border-left:1px solid rgba(34,36,38,.15);padding:0 0 0 2.5rem;margin:0 0 0 2.5rem}.ui.close.rail{width:301px}.ui.close.left.rail{padding:0 1em 0 0;margin:0 1em 0 0}.ui.close.right.rail{padding:0 0 0 1em;margin:0 0 0 1em}.ui.very.close.rail{width:300.5px}.ui.very.close.left.rail{padding:0 .5em 0 0;margin:0 .5em 0 0}.ui.very.close.right.rail{padding:0 0 0 .5em;margin:0 0 0 .5em}.ui.attached.left.rail,.ui.attached.right.rail{padding:0;margin:0}

137
web/semantic/dist/components/rating.css vendored Normal file → Executable file
View file

@ -1,9 +1,9 @@
/*! /*!
* # Semantic UI 1.11.4 - Rating * # Semantic UI 2.1.7 - Rating
* http://github.com/semantic-org/semantic-ui/ * http://github.com/semantic-org/semantic-ui/
* *
* *
* Copyright 2014 Contributors * Copyright 2015 Contributors
* Released under the MIT license * Released under the MIT license
* http://opensource.org/licenses/MIT * http://opensource.org/licenses/MIT
* *
@ -15,30 +15,33 @@
*******************************/ *******************************/
.ui.rating { .ui.rating {
display: inline-block; display: -webkit-inline-box;
vertical-align: middle; display: -webkit-inline-flex;
display: -ms-inline-flexbox;
display: inline-flex;
white-space: nowrap;
vertical-align: baseline;
} }
.ui.rating:last-child { .ui.rating:last-child {
margin-right: 0em; margin-right: 0em;
} }
.ui.rating:before {
display: block;
content: '';
visibility: hidden;
clear: both;
height: 0;
}
/* Icon */ /* Icon */
.ui.rating .icon { .ui.rating .icon {
cursor: pointer;
margin: 0em;
width: 1.1em;
height: auto;
text-align: center;
padding: 0em; padding: 0em;
margin: 0em;
text-align: center;
font-weight: normal; font-weight: normal;
font-style: normal; font-style: normal;
-webkit-box-flex: 1;
-webkit-flex: 1 0 auto;
-ms-flex: 1 0 auto;
flex: 1 0 auto;
cursor: pointer;
width: 1.25em;
height: auto;
-webkit-transition: opacity 0.1s ease, background 0.1s ease, text-shadow 0.1s ease, color 0.1s ease;
transition: opacity 0.1s ease, background 0.1s ease, text-shadow 0.1s ease, color 0.1s ease;
} }
@ -47,6 +50,30 @@
*******************************/ *******************************/
/*-------------------
Standard
--------------------*/
/* Inactive Icon */
.ui.rating .icon {
background: transparent;
color: rgba(0, 0, 0, 0.15);
}
/* Active Icon */
.ui.rating .active.icon {
background: transparent;
color: rgba(0, 0, 0, 0.85);
}
/* Selected Icon */
.ui.rating .icon.selected,
.ui.rating .icon.selected.active {
background: transparent;
color: rgba(0, 0, 0, 0.87);
}
/*------------------- /*-------------------
Star Star
--------------------*/ --------------------*/
@ -54,28 +81,26 @@
/* Inactive */ /* Inactive */
.ui.star.rating .icon { .ui.star.rating .icon {
width: 1.1em; width: 1.25em;
height: auto;
background: transparent;
color: rgba(0, 0, 0, 0.15); color: rgba(0, 0, 0, 0.15);
text-shadow: none;
} }
/* Active Star */ /* Active Star */
.ui.star.rating .active.icon { .ui.star.rating .active.icon {
background: transparent !important;
color: #ffe623 !important; color: #ffe623 !important;
text-shadow: 0px -1px 0px #cfa300, -1px 0px 0px #cfa300, 0px 1px 0px #cfa300, 1px 0px 0px #cfa300; text-shadow: 0px -1px 0px #ddc507, -1px 0px 0px #ddc507, 0px 1px 0px #ddc507, 1px 0px 0px #ddc507 !important;
} }
/* Selected Star */ /* Selected Star */
.ui.star.rating .icon.selected, .ui.star.rating .icon.selected,
.ui.star.rating .icon.selected.active { .ui.star.rating .icon.selected.active {
color: #ffb70a !important; background: transparent !important;
} color: #ffcc00 !important;
.ui.star.rating.partial { text-shadow: 0px -1px 0px #e6a200, -1px 0px 0px #e6a200, 0px 1px 0px #e6a200, 1px 0px 0px #e6a200 !important;
position: relative;
z-index: 1;
}
.ui.star.rating.partial:before {
position: absolute;
z-index: -1;
} }
/*------------------- /*-------------------
@ -83,20 +108,26 @@
--------------------*/ --------------------*/
.ui.heart.rating .icon { .ui.heart.rating .icon {
width: 1.25em; width: 1.4em;
height: auto;
background: transparent;
color: rgba(0, 0, 0, 0.15); color: rgba(0, 0, 0, 0.15);
text-shadow: none !important;
} }
/* Active Heart */ /* Active Heart */
.ui.heart.rating .active.icon { .ui.heart.rating .active.icon {
color: #ff2733 !important; background: transparent !important;
text-shadow: 0px -1px 0px #9e0000, -1px 0px 0px #9e0000, 0px 1px 0px #9e0000, 1px 0px 0px #9e0000; color: #ff6d75 !important;
text-shadow: 0px -1px 0px #cd0707, -1px 0px 0px #cd0707, 0px 1px 0px #cd0707, 1px 0px 0px #cd0707 !important;
} }
/* Selected Heart */ /* Selected Heart */
.ui.heart.rating .icon.selected, .ui.heart.rating .icon.selected,
.ui.heart.rating .icon.selected.active { .ui.heart.rating .icon.selected.active {
color: #ff2733 !important; background: transparent !important;
color: #ff3000 !important;
text-shadow: 0px -1px 0px #aa0101, -1px 0px 0px #aa0101, 0px 1px 0px #aa0101, 1px 0px 0px #aa0101 !important;
} }
@ -105,22 +136,6 @@
*******************************/ *******************************/
/* Inactive Icon */
.ui.rating .icon {
color: rgba(0, 0, 0, 0.15);
}
/* Active Icon */
.ui.rating .active.icon {
color: rgba(0, 0, 0, 0.85);
}
/* Selected Icon */
.ui.rating .icon.selected,
.ui.rating .icon.selected.active {
color: rgba(0, 0, 0, 0.8);
}
/*------------------- /*-------------------
Disabled Disabled
--------------------*/ --------------------*/
@ -132,13 +147,13 @@
} }
/*------------------- /*-------------------
Interacting (Active) User Interactive
--------------------*/ --------------------*/
/* Selected Rating */ /* Selected Rating */
.ui.rating.selected .active.icon { .ui.rating.selected .active.icon {
opacity: 0.5; opacity: 1;
} }
.ui.rating.selected .icon.selected, .ui.rating.selected .icon.selected,
.ui.rating .icon.selected { .ui.rating .icon.selected {
@ -150,25 +165,25 @@
Variations Variations
*******************************/ *******************************/
.ui.mini.rating .icon { .ui.mini.rating {
font-size: 0.7rem; font-size: 0.71428571rem;
} }
.ui.tiny.rating .icon { .ui.tiny.rating {
font-size: 0.8rem; font-size: 0.85714286rem;
} }
.ui.small.rating .icon { .ui.small.rating {
font-size: 0.875rem; font-size: 0.92857143rem;
} }
.ui.rating .icon { .ui.rating {
font-size: 1rem; font-size: 1rem;
} }
.ui.large.rating .icon { .ui.large.rating {
font-size: 1.1rem; font-size: 1.14285714rem;
} }
.ui.huge.rating .icon { .ui.huge.rating {
font-size: 1.5rem; font-size: 1.42857143rem;
} }
.ui.massive.rating .icon { .ui.massive.rating {
font-size: 2rem; font-size: 2rem;
} }

View file

@ -1,9 +1,9 @@
/*! /*!
* # Semantic UI 1.11.4 - Rating * # Semantic UI 2.1.7 - Rating
* http://github.com/semantic-org/semantic-ui/ * http://github.com/semantic-org/semantic-ui/
* *
* *
* Copyright 2014 Contributors * Copyright 2015 Contributors
* Released under the MIT license * Released under the MIT license
* http://opensource.org/licenses/MIT * http://opensource.org/licenses/MIT
* *
@ -66,14 +66,7 @@ $.fn.rating = function(parameters) {
else { else {
module.disable(); module.disable();
} }
if(settings.initialRating) { module.set.rating( module.get.initialRating() );
module.debug('Setting initial rating');
module.setRating(settings.initialRating);
}
if( $module.data(metadata.rating) ) {
module.debug('Rating found in metadata');
module.setRating( $module.data(metadata.rating) );
}
module.instantiate(); module.instantiate();
}, },
@ -87,12 +80,10 @@ $.fn.rating = function(parameters) {
destroy: function() { destroy: function() {
module.verbose('Destroying previous instance', instance); module.verbose('Destroying previous instance', instance);
module.remove.events();
$module $module
.removeData(moduleNamespace) .removeData(moduleNamespace)
; ;
$icon
.off(eventNamespace)
;
}, },
refresh: function() { refresh: function() {
@ -102,11 +93,12 @@ $.fn.rating = function(parameters) {
setup: { setup: {
layout: function() { layout: function() {
var var
maxRating = $module.data(metadata.maxRating) || settings.maxRating maxRating = module.get.maxRating(),
html = $.fn.rating.settings.templates.icon(maxRating)
; ;
module.debug('Generating icon html dynamically'); module.debug('Generating icon html dynamically');
$module $module
.html($.fn.rating.settings.templates.icon(maxRating)) .html(html)
; ;
module.refresh(); module.refresh();
} }
@ -141,7 +133,7 @@ $.fn.rating = function(parameters) {
click: function() { click: function() {
var var
$activeIcon = $(this), $activeIcon = $(this),
currentRating = module.getRating(), currentRating = module.get.rating(),
rating = $icon.index($activeIcon) + 1, rating = $icon.index($activeIcon) + 1,
canClear = (settings.clearable == 'auto') canClear = (settings.clearable == 'auto')
? ($icon.length === 1) ? ($icon.length === 1)
@ -151,31 +143,39 @@ $.fn.rating = function(parameters) {
module.clearRating(); module.clearRating();
} }
else { else {
module.setRating( rating ); module.set.rating( rating );
} }
} }
}, },
clearRating: function() { clearRating: function() {
module.debug('Clearing current rating'); module.debug('Clearing current rating');
module.setRating(0); module.set.rating(0);
}, },
getRating: function() { bind: {
var events: function() {
currentRating = $icon.filter('.' + className.active).length module.verbose('Binding events');
; $module
module.verbose('Current rating retrieved', currentRating); .on('mouseenter' + eventNamespace, selector.icon, module.event.mouseenter)
return currentRating; .on('mouseleave' + eventNamespace, selector.icon, module.event.mouseleave)
.on('click' + eventNamespace, selector.icon, module.event.click)
;
}
},
remove: {
events: function() {
module.verbose('Removing events');
$module
.off(eventNamespace)
;
}
}, },
enable: function() { enable: function() {
module.debug('Setting rating to interactive mode'); module.debug('Setting rating to interactive mode');
$icon module.bind.events();
.on('mouseenter' + eventNamespace, module.event.mouseenter)
.on('mouseleave' + eventNamespace, module.event.mouseleave)
.on('click' + eventNamespace, module.event.click)
;
$module $module
.removeClass(className.disabled) .removeClass(className.disabled)
; ;
@ -183,37 +183,61 @@ $.fn.rating = function(parameters) {
disable: function() { disable: function() {
module.debug('Setting rating to read-only mode'); module.debug('Setting rating to read-only mode');
$icon module.remove.events();
.off(eventNamespace)
;
$module $module
.addClass(className.disabled) .addClass(className.disabled)
; ;
}, },
setRating: function(rating) { get: {
var initialRating: function() {
ratingIndex = (rating - 1 >= 0) if($module.data(metadata.rating) !== undefined) {
? (rating - 1) $module.removeData(metadata.rating);
: 0, return $module.data(metadata.rating);
$activeIcon = $icon.eq(ratingIndex) }
; return settings.initialRating;
$module },
.removeClass(className.selected) maxRating: function() {
; if($module.data(metadata.maxRating) !== undefined) {
$icon $module.removeData(metadata.maxRating);
.removeClass(className.selected) return $module.data(metadata.maxRating);
.removeClass(className.active) }
; return settings.maxRating;
if(rating > 0) { },
module.verbose('Setting current rating to', rating); rating: function() {
$activeIcon var
.prevAll() currentRating = $icon.filter('.' + className.active).length
.andSelf()
.addClass(className.active)
; ;
module.verbose('Current rating retrieved', currentRating);
return currentRating;
}
},
set: {
rating: function(rating) {
var
ratingIndex = (rating - 1 >= 0)
? (rating - 1)
: 0,
$activeIcon = $icon.eq(ratingIndex)
;
$module
.removeClass(className.selected)
;
$icon
.removeClass(className.selected)
.removeClass(className.active)
;
if(rating > 0) {
module.verbose('Setting current rating to', rating);
$activeIcon
.prevAll()
.andSelf()
.addClass(className.active)
;
}
settings.onRate.call(element, rating);
} }
settings.onRate.call(element, rating);
}, },
setting: function(name, value) { setting: function(name, value) {
@ -285,7 +309,7 @@ $.fn.rating = function(parameters) {
}); });
} }
clearTimeout(module.performance.timer); clearTimeout(module.performance.timer);
module.performance.timer = setTimeout(module.performance.display, 100); module.performance.timer = setTimeout(module.performance.display, 500);
}, },
display: function() { display: function() {
var var
@ -400,7 +424,7 @@ $.fn.rating.settings = {
namespace : 'rating', namespace : 'rating',
debug : false, debug : false,
verbose : true, verbose : false,
performance : true, performance : true,
initialRating : 0, initialRating : 0,
@ -448,4 +472,4 @@ $.fn.rating.settings = {
}; };
})( jQuery, window , document ); })( jQuery, window, document );

6
web/semantic/dist/components/rating.min.css vendored Normal file → Executable file

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

4
web/semantic/dist/components/reset.css vendored Normal file → Executable file
View file

@ -1,9 +1,9 @@
/*! /*!
* # Semantic UI 1.11.4 - Reset * # Semantic UI 2.1.7 - Reset
* http://github.com/semantic-org/semantic-ui/ * http://github.com/semantic-org/semantic-ui/
* *
* *
* Copyright 2014 Contributors * Copyright 2015 Contributors
* Released under the MIT license * Released under the MIT license
* http://opensource.org/licenses/MIT * http://opensource.org/licenses/MIT
* *

6
web/semantic/dist/components/reset.min.css vendored Normal file → Executable file
View file

@ -1,10 +1,10 @@
/*! /*!
* # Semantic UI 1.11.4 - Reset * # Semantic UI 2.1.7 - Reset
* http://github.com/semantic-org/semantic-ui/ * http://github.com/semantic-org/semantic-ui/
* *
* *
* Copyright 2014 Contributors * Copyright 2015 Contributors
* Released under the MIT license * Released under the MIT license
* http://opensource.org/licenses/MIT * http://opensource.org/licenses/MIT
* *
*/*,:after,:before{box-sizing:inherit}html{box-sizing:border-box}input[type=text],input[type=email],input[type=search],input[type=password]{-webkit-appearance:none;-moz-appearance:none}html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background:0 0}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:700}dfn{font-style:italic}h1{font-size:2em;margin:.67em 0}mark{background:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{line-height:normal}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]{-webkit-appearance:textfield;box-sizing:content-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{border:0;padding:0}textarea{overflow:auto}optgroup{font-weight:700}table{border-collapse:collapse;border-spacing:0}td,th{padding:0} */*,:after,:before{box-sizing:inherit}html{box-sizing:border-box;font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}input[type=text],input[type=email],input[type=search],input[type=password]{-webkit-appearance:none;-moz-appearance:none}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background:0 0}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,optgroup,strong{font-weight:700}dfn{font-style:italic}h1{font-size:2em;margin:.67em 0}mark{background:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{box-sizing:content-box;height:0}pre,textarea{overflow:auto}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{line-height:normal}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]{-webkit-appearance:textfield;box-sizing:content-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{border:0;padding:0}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}

Some files were not shown because too many files have changed in this diff Show more