├── Rakefile ├── lib ├── messengerjs-rails │ └── version.rb └── messengerjs-rails.rb ├── Gemfile ├── .gitignore ├── messengerjs-rails.gemspec ├── MIT-LICENSE ├── vendor └── assets │ ├── javascripts │ ├── messenger-theme-flat.js │ ├── messenger-theme-future.js │ ├── messenger.min.js │ └── messenger.js │ └── stylesheets │ ├── messenger.css │ ├── messenger-theme-block.css │ ├── messenger-spinner.css │ ├── messenger-theme-ice.css │ ├── messenger-theme-air.css │ ├── messenger-theme-flat.css │ └── messenger-theme-future.css └── README.md /Rakefile: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env rake 2 | require "bundler/gem_tasks" -------------------------------------------------------------------------------- /lib/messengerjs-rails/version.rb: -------------------------------------------------------------------------------- 1 | module MessengerJS 2 | module Rails 3 | VERSION = "1.5.0" 4 | end 5 | end 6 | -------------------------------------------------------------------------------- /Gemfile: -------------------------------------------------------------------------------- 1 | source 'https://rubygems.org' 2 | 3 | # Specify your gem's dependencies in messengerjs-rails.gemspec 4 | gemspec 5 | -------------------------------------------------------------------------------- /lib/messengerjs-rails.rb: -------------------------------------------------------------------------------- 1 | require "messengerjs-rails/version" 2 | 3 | module MessengerJS 4 | module Rails 5 | class Engine < ::Rails::Engine 6 | end 7 | end 8 | end -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | *.gem 3 | *.rbc 4 | .bundle 5 | .config 6 | .yardoc 7 | Gemfile.lock 8 | InstalledFiles 9 | _yardoc 10 | coverage 11 | doc/ 12 | lib/bundler/man 13 | pkg 14 | rdoc 15 | spec/reports 16 | test/tmp 17 | test/version_tmp 18 | tmp 19 | -------------------------------------------------------------------------------- /messengerjs-rails.gemspec: -------------------------------------------------------------------------------- 1 | # -*- encoding: utf-8 -*- 2 | require File.expand_path('../lib/messengerjs-rails/version', __FILE__) 3 | 4 | Gem::Specification.new do |s| 5 | s.name = 'messengerjs-rails' 6 | s.version = MessengerJS::Rails::VERSION 7 | s.date = '2014-03-21' 8 | s.summary = 'Messenger js on Rails' 9 | s.description = 'Injects Messenger javascript and stylesheets into your asset pipeline.' 10 | s.authors = ["Ben Song"] 11 | s.email = 'zbin.song@gmail.com' 12 | s.files = Dir["{lib,vendor}/**/*"] + ["MIT-LICENSE", "README.md"] 13 | s.homepage = 'https://github.com/benjis/messengerjs-rails/' 14 | s.license = 'MIT' 15 | end -------------------------------------------------------------------------------- /MIT-LICENSE: -------------------------------------------------------------------------------- 1 | Permission is hereby granted, free of charge, to any person obtaining 2 | a copy of this software and associated documentation files (the 3 | "Software"), to deal in the Software without restriction, including 4 | without limitation the rights to use, copy, modify, merge, publish, 5 | distribute, sublicense, and/or sell copies of the Software, and to 6 | permit persons to whom the Software is furnished to do so, subject to 7 | the following conditions: 8 | 9 | The above copyright notice and this permission notice shall be 10 | included in all copies or substantial portions of the Software. 11 | 12 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 13 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 14 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE 16 | LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION 17 | OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION 18 | WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -------------------------------------------------------------------------------- /vendor/assets/javascripts/messenger-theme-flat.js: -------------------------------------------------------------------------------- 1 | (function () { 2 | var $, FlatMessage, spinner_template, 3 | __hasProp = {}.hasOwnProperty, 4 | __extends = function (child, parent) { for (var key in parent) { if (__hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; }; 5 | 6 | $ = jQuery; 7 | 8 | spinner_template = '
\n \n \n \n \n \n \n
'; 9 | 10 | FlatMessage = (function (_super) { 11 | 12 | __extends(FlatMessage, _super); 13 | 14 | function FlatMessage() { 15 | return FlatMessage.__super__.constructor.apply(this, arguments); 16 | } 17 | 18 | FlatMessage.prototype.template = function (opts) { 19 | var $message; 20 | $message = FlatMessage.__super__.template.apply(this, arguments); 21 | $message.append($(spinner_template)); 22 | return $message; 23 | }; 24 | 25 | return FlatMessage; 26 | 27 | })(window.Messenger.Message); 28 | 29 | window.Messenger.themes.flat = { 30 | Message: FlatMessage 31 | }; 32 | 33 | }).call(this); -------------------------------------------------------------------------------- /vendor/assets/javascripts/messenger-theme-future.js: -------------------------------------------------------------------------------- 1 | (function () { 2 | var $, FutureMessage, spinner_template, 3 | __hasProp = {}.hasOwnProperty, 4 | __extends = function (child, parent) { for (var key in parent) { if (__hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; }; 5 | 6 | $ = jQuery; 7 | 8 | spinner_template = '
\n \n \n \n \n \n \n
'; 9 | 10 | FutureMessage = (function (_super) { 11 | 12 | __extends(FutureMessage, _super); 13 | 14 | function FutureMessage() { 15 | return FutureMessage.__super__.constructor.apply(this, arguments); 16 | } 17 | 18 | FutureMessage.prototype.template = function (opts) { 19 | var $message; 20 | $message = FutureMessage.__super__.template.apply(this, arguments); 21 | $message.append($(spinner_template)); 22 | return $message; 23 | }; 24 | 25 | return FutureMessage; 26 | 27 | })(window.Messenger.Message); 28 | 29 | window.Messenger.themes.future = { 30 | Message: FutureMessage 31 | }; 32 | 33 | }).call(this); -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # messengerjs-rails 2 | 3 | messengerjs-rails is a Rails (3.1 and above) wrapper for [Messenger](http://github.hubspot.com/messenger/) javascript library. 4 | 5 | # Messenger 6 | 7 | - Show messages in your app. 8 | - Wrap AJAX requests with progress, success and error messages, and add retry to your failed requests. 9 | - Add actions (undo, cancel, etc.) to your messages. 10 | 11 | 12 | ![Messenger](https://raw.github.com/HubSpot/messenger/master/docs/images/messenger.gif) 13 | 14 | 15 | #### [Demo and Usage](http://hubspot.github.com/messenger/docs/welcome) 16 | #### [Docs](http://github.hubspot.com/messenger/) 17 | 18 | 19 | ## Requirement/Dependency: 20 | 21 | 1. jQuery 22 | 23 | 2. Plays well with, but doesn't require, Bootstrap 24 | 25 | ## Installation 26 | 27 | Add the following to your gemfile: 28 | 29 | gem "messengerjs-rails", "~> 1.4.1" 30 | 31 | Add the following directive to your application.coffee / application.js: 32 | 33 | //= require jquery-rails 34 | * 35 | * 36 | //= require messenger 37 | //= require messenger-theme-future 38 | 39 | Add the following directive to your application.scss / application.css. There are four themes/styles provided (future, air, block and ice), change required stylesheet as needed. 40 | 41 | *= require messenger 42 | *= require messenger-spinner 43 | *= require messenger-theme-future 44 | 45 | ## Versioning 46 | 47 | Every attempt is made to mirror the currently shipping Messenger version number wherever possible. 48 | The major, minor, and patch version numbers will always represent the Messenger version. 49 | 50 | ## Contributing 51 | 52 | Feel free to open an issue ticket if you find something that could be improved. 53 | 54 | ## Acknowledgements 55 | 56 | Copyright Ben Song(zbin.song@gmail.com), released under the MIT License. 57 | -------------------------------------------------------------------------------- /vendor/assets/stylesheets/messenger.css: -------------------------------------------------------------------------------- 1 | /* line 4, ../../src/sass/messenger.sass */ 2 | ul.messenger { 3 | margin: 0; 4 | padding: 0; 5 | } 6 | /* line 8, ../../src/sass/messenger.sass */ 7 | ul.messenger > li { 8 | list-style: none; 9 | margin: 0; 10 | padding: 0; 11 | } 12 | /* line 14, ../../src/sass/messenger.sass */ 13 | ul.messenger.messenger-empty { 14 | display: none; 15 | } 16 | /* line 17, ../../src/sass/messenger.sass */ 17 | ul.messenger .messenger-message { 18 | overflow: hidden; 19 | *zoom: 1; 20 | } 21 | /* line 20, ../../src/sass/messenger.sass */ 22 | ul.messenger .messenger-message.messenger-hidden { 23 | display: none; 24 | } 25 | /* line 23, ../../src/sass/messenger.sass */ 26 | ul.messenger .messenger-message .messenger-phrase, ul.messenger .messenger-message .messenger-actions a { 27 | padding-right: 5px; 28 | } 29 | /* line 26, ../../src/sass/messenger.sass */ 30 | ul.messenger .messenger-message .messenger-actions { 31 | float: right; 32 | } 33 | /* line 29, ../../src/sass/messenger.sass */ 34 | ul.messenger .messenger-message .messenger-actions a { 35 | cursor: pointer; 36 | text-decoration: underline; 37 | } 38 | /* line 33, ../../src/sass/messenger.sass */ 39 | ul.messenger .messenger-message ul, ul.messenger .messenger-message ol { 40 | margin: 10px 18px 0; 41 | } 42 | /* line 36, ../../src/sass/messenger.sass */ 43 | ul.messenger.messenger-fixed { 44 | position: fixed; 45 | z-index: 10000; 46 | } 47 | /* line 40, ../../src/sass/messenger.sass */ 48 | ul.messenger.messenger-fixed .messenger-message { 49 | min-width: 0; 50 | -moz-box-sizing: border-box; 51 | -webkit-box-sizing: border-box; 52 | box-sizing: border-box; 53 | } 54 | /* line 45, ../../src/sass/messenger.sass */ 55 | ul.messenger.messenger-fixed .message .messenger-actions { 56 | float: left; 57 | } 58 | /* line 48, ../../src/sass/messenger.sass */ 59 | ul.messenger.messenger-fixed.messenger-on-top { 60 | top: 20px; 61 | } 62 | /* line 51, ../../src/sass/messenger.sass */ 63 | ul.messenger.messenger-fixed.messenger-on-bottom { 64 | bottom: 20px; 65 | } 66 | /* line 54, ../../src/sass/messenger.sass */ 67 | ul.messenger.messenger-fixed.messenger-on-top, ul.messenger.messenger-fixed.messenger-on-bottom { 68 | left: 50%; 69 | width: 800px; 70 | margin-left: -400px; 71 | } 72 | @media (max-width: 960px) { 73 | /* line 54, ../../src/sass/messenger.sass */ 74 | ul.messenger.messenger-fixed.messenger-on-top, ul.messenger.messenger-fixed.messenger-on-bottom { 75 | left: 10%; 76 | width: 80%; 77 | margin-left: 0px; 78 | } 79 | } 80 | /* line 64, ../../src/sass/messenger.sass */ 81 | ul.messenger.messenger-fixed.messenger-on-top.messenger-on-right, ul.messenger.messenger-fixed.messenger-on-bottom.messenger-on-right { 82 | right: 20px; 83 | left: auto; 84 | } 85 | /* line 68, ../../src/sass/messenger.sass */ 86 | ul.messenger.messenger-fixed.messenger-on-top.messenger-on-left, ul.messenger.messenger-fixed.messenger-on-bottom.messenger-on-left { 87 | left: 20px; 88 | margin-left: 0px; 89 | } 90 | /* line 72, ../../src/sass/messenger.sass */ 91 | ul.messenger.messenger-fixed.messenger-on-right, ul.messenger.messenger-fixed.messenger-on-left { 92 | width: 350px; 93 | } 94 | /* line 75, ../../src/sass/messenger.sass */ 95 | ul.messenger.messenger-fixed.messenger-on-right .messenger-actions, ul.messenger.messenger-fixed.messenger-on-left .messenger-actions { 96 | float: left; 97 | } 98 | /* line 78, ../../src/sass/messenger.sass */ 99 | ul.messenger .messenger-spinner { 100 | display: none; 101 | } 102 | /* line 81, ../../src/sass/messenger.sass */ 103 | ul.messenger .messenger-clickable { 104 | cursor: pointer; 105 | } -------------------------------------------------------------------------------- /vendor/assets/stylesheets/messenger-theme-block.css: -------------------------------------------------------------------------------- 1 | /* line 4, ../../src/sass/messenger-theme-block.sass */ 2 | ul.messenger.messenger-theme-block.messenger-fixed { 3 | width: 100%; 4 | top: 0; 5 | left: 0; 6 | margin-left: 0px; 7 | } 8 | /* line 10, ../../src/sass/messenger-theme-block.sass */ 9 | ul.messenger.messenger-theme-block.messenger-fixed.messenger-on-bottom { 10 | top: auto; 11 | bottom: 0; 12 | } 13 | /* line 14, ../../src/sass/messenger-theme-block.sass */ 14 | ul.messenger.messenger-theme-block.messenger-fixed.messenger-on-top { 15 | top: 0px; 16 | bottom: auto; 17 | } 18 | /* line 18, ../../src/sass/messenger-theme-block.sass */ 19 | ul.messenger.messenger-theme-block.messenger-fixed.messenger-on-top, ul.messenger.messenger-theme-block.messenger-fixed.messenger-on-bottom { 20 | left: 0px; 21 | right: 0px; 22 | } 23 | /* line 22, ../../src/sass/messenger-theme-block.sass */ 24 | ul.messenger.messenger-theme-block.messenger-fixed.messenger-on-top.messenger-on-right, ul.messenger.messenger-theme-block.messenger-fixed.messenger-on-top.messenger-on-left, ul.messenger.messenger-theme-block.messenger-fixed.messenger-on-bottom.messenger-on-right, ul.messenger.messenger-theme-block.messenger-fixed.messenger-on-bottom.messenger-on-left { 25 | width: 350px; 26 | } 27 | /* line 25, ../../src/sass/messenger-theme-block.sass */ 28 | ul.messenger.messenger-theme-block.messenger-fixed.messenger-on-top.messenger-on-left, ul.messenger.messenger-theme-block.messenger-fixed.messenger-on-bottom.messenger-on-left { 29 | right: auto; 30 | } 31 | /* line 28, ../../src/sass/messenger-theme-block.sass */ 32 | ul.messenger.messenger-theme-block.messenger-fixed.messenger-on-top.messenger-on-right, ul.messenger.messenger-theme-block.messenger-fixed.messenger-on-bottom.messenger-on-right { 33 | left: auto; 34 | } 35 | /* line 31, ../../src/sass/messenger-theme-block.sass */ 36 | ul.messenger.messenger-theme-block.messenger-fixed .messenger-message-slot { 37 | max-width: none; 38 | } 39 | /* line 34, ../../src/sass/messenger-theme-block.sass */ 40 | ul.messenger.messenger-theme-block.messenger-fixed .messenger-message { 41 | text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5); 42 | border-width: 1px; 43 | border-style: solid; 44 | text-align: center; 45 | padding: 1em; 46 | } 47 | /* line 41, ../../src/sass/messenger-theme-block.sass */ 48 | ul.messenger.messenger-theme-block.messenger-fixed .messenger-message.alert-warning { 49 | color: #c09853; 50 | background-color: #fcf8e3; 51 | border-color: #fbeed5; 52 | } 53 | /* line 46, ../../src/sass/messenger-theme-block.sass */ 54 | ul.messenger.messenger-theme-block.messenger-fixed .messenger-message.alert-error, ul.messenger.messenger-theme-block.messenger-fixed .messenger-message.alert-danger { 55 | color: #b94a48; 56 | background-color: #f2dede; 57 | border-color: #eed3d7; 58 | } 59 | /* line 51, ../../src/sass/messenger-theme-block.sass */ 60 | ul.messenger.messenger-theme-block.messenger-fixed .messenger-message.alert-success { 61 | color: #468847; 62 | background-color: #dff0d8; 63 | border-color: #d6e9c6; 64 | } 65 | /* line 56, ../../src/sass/messenger-theme-block.sass */ 66 | ul.messenger.messenger-theme-block.messenger-fixed .messenger-message.alert-info { 67 | color: #3a87ad; 68 | background-color: #d9edf7; 69 | border-color: #bce8f1; 70 | } 71 | /* line 61, ../../src/sass/messenger-theme-block.sass */ 72 | ul.messenger.messenger-theme-block.messenger-fixed .messenger-message .messenger-close { 73 | filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=50); 74 | opacity: 0.5; 75 | padding: 0; 76 | cursor: pointer; 77 | color: inherit; 78 | background: transparent; 79 | border: 0; 80 | -webkit-appearance: none; 81 | float: right; 82 | position: relative; 83 | top: -13px; 84 | left: 11px; 85 | font-size: 22px; 86 | } 87 | /* line 75, ../../src/sass/messenger-theme-block.sass */ 88 | ul.messenger.messenger-theme-block.messenger-fixed .messenger-message .messenger-close:hover { 89 | filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=80); 90 | opacity: 0.8; 91 | } 92 | /* line 78, ../../src/sass/messenger-theme-block.sass */ 93 | ul.messenger.messenger-theme-block.messenger-fixed .messenger-message .messenger-close:active { 94 | filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false); 95 | opacity: 1; 96 | } -------------------------------------------------------------------------------- /vendor/assets/stylesheets/messenger-spinner.css: -------------------------------------------------------------------------------- 1 | @-webkit-keyframes ui-spinner-rotate-right { 2 | 0% { 3 | -webkit-transform: rotate(0deg); 4 | } 5 | 25% { 6 | -webkit-transform: rotate(180deg); 7 | } 8 | 50% { 9 | -webkit-transform: rotate(180deg); 10 | } 11 | 75% { 12 | -webkit-transform: rotate(360deg); 13 | } 14 | 100% { 15 | -webkit-transform: rotate(360deg); 16 | } 17 | } 18 | @-webkit-keyframes ui-spinner-rotate-left { 19 | 0% { 20 | -webkit-transform: rotate(0deg); 21 | } 22 | 25% { 23 | -webkit-transform: rotate(0deg); 24 | } 25 | 50% { 26 | -webkit-transform: rotate(180deg); 27 | } 28 | 75% { 29 | -webkit-transform: rotate(180deg); 30 | } 31 | 100% { 32 | -webkit-transform: rotate(360deg); 33 | } 34 | } 35 | @-moz-keyframes ui-spinner-rotate-right { 36 | 0% { 37 | -moz-transform: rotate(0deg); 38 | } 39 | 25% { 40 | -moz-transform: rotate(180deg); 41 | } 42 | 50% { 43 | -moz-transform: rotate(180deg); 44 | } 45 | 75% { 46 | -moz-transform: rotate(360deg); 47 | } 48 | 100% { 49 | -moz-transform: rotate(360deg); 50 | } 51 | } 52 | @-moz-keyframes ui-spinner-rotate-left { 53 | 0% { 54 | -moz-transform: rotate(0deg); 55 | } 56 | 25% { 57 | -moz-transform: rotate(0deg); 58 | } 59 | 50% { 60 | -moz-transform: rotate(180deg); 61 | } 62 | 75% { 63 | -moz-transform: rotate(180deg); 64 | } 65 | 100% { 66 | -moz-transform: rotate(360deg); 67 | } 68 | } 69 | @keyframes ui-spinner-rotate-right { 70 | 0% { 71 | transform: rotate(0deg); 72 | } 73 | 25% { 74 | transform: rotate(180deg); 75 | } 76 | 50% { 77 | transform: rotate(180deg); 78 | } 79 | 75% { 80 | transform: rotate(360deg); 81 | } 82 | 100% { 83 | transform: rotate(360deg); 84 | } 85 | } 86 | @keyframes ui-spinner-rotate-left { 87 | 0% { 88 | transform: rotate(0deg); 89 | } 90 | 25% { 91 | transform: rotate(0deg); 92 | } 93 | 50% { 94 | transform: rotate(180deg); 95 | } 96 | 75% { 97 | transform: rotate(180deg); 98 | } 99 | 100% { 100 | transform: rotate(360deg); 101 | } 102 | } 103 | /* line 118, ../../src/sass/messenger-spinner.scss */ 104 | .messenger-spinner { 105 | position: relative; 106 | border-radius: 100%; 107 | } 108 | /* line 122, ../../src/sass/messenger-spinner.scss */ 109 | ul.messenger.messenger-spinner-active .messenger-spinner .messenger-spinner { 110 | display: block; 111 | } 112 | /* line 126, ../../src/sass/messenger-spinner.scss */ 113 | .messenger-spinner .messenger-spinner-side { 114 | width: 50%; 115 | height: 100%; 116 | overflow: hidden; 117 | position: absolute; 118 | } 119 | /* line 132, ../../src/sass/messenger-spinner.scss */ 120 | .messenger-spinner .messenger-spinner-side .messenger-spinner-fill { 121 | border-radius: 999px; 122 | position: absolute; 123 | width: 100%; 124 | height: 100%; 125 | -moz-animation-iteration-count: infinite; 126 | -webkit-animation-iteration-count: infinite; 127 | animation-iteration-count: infinite; 128 | -moz-animation-timing-function: linear; 129 | -webkit-animation-timing-function: linear; 130 | animation-timing-function: linear; 131 | } 132 | /* line 142, ../../src/sass/messenger-spinner.scss */ 133 | .messenger-spinner .messenger-spinner-side-left { 134 | left: 0; 135 | } 136 | /* line 145, ../../src/sass/messenger-spinner.scss */ 137 | .messenger-spinner .messenger-spinner-side-left .messenger-spinner-fill { 138 | left: 100%; 139 | border-top-left-radius: 0; 140 | border-bottom-left-radius: 0; 141 | -moz-animation-name: ui-spinner-rotate-left; 142 | -webkit-animation-name: ui-spinner-rotate-left; 143 | animation-name: ui-spinner-rotate-left; 144 | -moz-transform-origin: 0 50% 50%; 145 | -ms-transform-origin: 0 50% 50%; 146 | -webkit-transform-origin: 0 50% 50%; 147 | transform-origin: 0 50% 50%; 148 | } 149 | /* line 154, ../../src/sass/messenger-spinner.scss */ 150 | .messenger-spinner .messenger-spinner-side-right { 151 | left: 50%; 152 | } 153 | /* line 157, ../../src/sass/messenger-spinner.scss */ 154 | .messenger-spinner .messenger-spinner-side-right .messenger-spinner-fill { 155 | left: -100%; 156 | border-top-right-radius: 0; 157 | border-bottom-right-radius: 0; 158 | -moz-animation-name: ui-spinner-rotate-right; 159 | -webkit-animation-name: ui-spinner-rotate-right; 160 | animation-name: ui-spinner-rotate-right; 161 | -moz-transform-origin: 100% 50% 50%; 162 | -ms-transform-origin: 100% 50% 50%; 163 | -webkit-transform-origin: 100% 50% 50%; 164 | transform-origin: 100% 50% 50%; 165 | } -------------------------------------------------------------------------------- /vendor/assets/stylesheets/messenger-theme-ice.css: -------------------------------------------------------------------------------- 1 | @import url("//fonts.googleapis.com/css?family=Raleway:400"); 2 | /* line 12, ../../src/sass/messenger-theme-ice.sass */ 3 | ul.messenger-theme-ice { 4 | -moz-user-select: none; 5 | -webkit-user-select: none; 6 | -o-user-select: none; 7 | user-select: none; 8 | font-family: "Raleway", sans-serif; 9 | } 10 | /* line 16, ../../src/sass/messenger-theme-ice.sass */ 11 | ul.messenger-theme-ice .messenger-message { 12 | -moz-border-radius: 5px; 13 | -webkit-border-radius: 5px; 14 | border-radius: 5px; 15 | -moz-box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.14), 0 4px #aaa, 0 5px rgba(0, 0, 0, 0.05); 16 | -webkit-box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.14), 0 4px #aaa, 0 5px rgba(0, 0, 0, 0.05); 17 | box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.14), 0 4px #aaa, 0 5px rgba(0, 0, 0, 0.05); 18 | border: 0px; 19 | background-color: #f6f6f6; 20 | position: relative; 21 | margin-bottom: 1.5em; 22 | font-size: 13px; 23 | color: #666; 24 | font-weight: 500; 25 | padding: 12px 22px; 26 | } 27 | /* line 28, ../../src/sass/messenger-theme-ice.sass */ 28 | ul.messenger-theme-ice .messenger-message .messenger-close { 29 | position: absolute; 30 | top: 0px; 31 | right: 0px; 32 | color: #888; 33 | opacity: 1; 34 | font-weight: bold; 35 | display: block; 36 | font-size: 20px; 37 | line-height: 20px; 38 | padding: 8px 10px 7px 7px; 39 | cursor: pointer; 40 | background: transparent; 41 | border: 0; 42 | -webkit-appearance: none; 43 | } 44 | /* line 44, ../../src/sass/messenger-theme-ice.sass */ 45 | ul.messenger-theme-ice .messenger-message .messenger-close:hover { 46 | color: #444; 47 | } 48 | /* line 47, ../../src/sass/messenger-theme-ice.sass */ 49 | ul.messenger-theme-ice .messenger-message .messenger-close:active { 50 | color: #222; 51 | } 52 | /* line 50, ../../src/sass/messenger-theme-ice.sass */ 53 | ul.messenger-theme-ice .messenger-message .messenger-actions { 54 | float: none; 55 | margin-top: 10px; 56 | } 57 | /* line 54, ../../src/sass/messenger-theme-ice.sass */ 58 | ul.messenger-theme-ice .messenger-message .messenger-actions a { 59 | -moz-box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.1), inset 0px 1px rgba(255, 255, 255, 0.05); 60 | -webkit-box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.1), inset 0px 1px rgba(255, 255, 255, 0.05); 61 | box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.1), inset 0px 1px rgba(255, 255, 255, 0.05); 62 | -moz-border-radius: 4px; 63 | -webkit-border-radius: 4px; 64 | border-radius: 4px; 65 | position: relative; 66 | text-decoration: none; 67 | display: inline-block; 68 | padding: 10px; 69 | color: #888; 70 | margin-right: 10px; 71 | padding: 3px 10px 5px; 72 | text-transform: capitalize; 73 | } 74 | /* line 66, ../../src/sass/messenger-theme-ice.sass */ 75 | ul.messenger-theme-ice .messenger-message .messenger-actions a:hover, ul.messenger-theme-ice .messenger-message .messenger-actions a:active { 76 | -moz-box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.1), inset 0px 1px rgba(255, 255, 255, 0.15), 0 2px #aaa; 77 | -webkit-box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.1), inset 0px 1px rgba(255, 255, 255, 0.15), 0 2px #aaa; 78 | box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.1), inset 0px 1px rgba(255, 255, 255, 0.15), 0 2px #aaa; 79 | color: #444; 80 | } 81 | /* line 70, ../../src/sass/messenger-theme-ice.sass */ 82 | ul.messenger-theme-ice .messenger-message .messenger-actions a:active { 83 | -moz-box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.1), inset 0px 1px rgba(255, 255, 255, 0.15), 0 1px #aaa; 84 | -webkit-box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.1), inset 0px 1px rgba(255, 255, 255, 0.15), 0 1px #aaa; 85 | box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.1), inset 0px 1px rgba(255, 255, 255, 0.15), 0 1px #aaa; 86 | top: 1px; 87 | } 88 | /* line 74, ../../src/sass/messenger-theme-ice.sass */ 89 | ul.messenger-theme-ice .messenger-message .messenger-actions .messenger-phrase { 90 | display: none; 91 | } 92 | /* line 77, ../../src/sass/messenger-theme-ice.sass */ 93 | ul.messenger-theme-ice .messenger-message .messenger-message-inner:before { 94 | display: block; 95 | z-index: 20; 96 | font-weight: bold; 97 | margin-bottom: 2px; 98 | } 99 | /* line 84, ../../src/sass/messenger-theme-ice.sass */ 100 | ul.messenger-theme-ice .messenger-message.alert-success .messenger-message-inner:before { 101 | content: "Success"; 102 | } 103 | /* line 88, ../../src/sass/messenger-theme-ice.sass */ 104 | ul.messenger-theme-ice .messenger-message.alert-error .messenger-message-inner:before { 105 | content: "Error"; 106 | } 107 | /* line 92, ../../src/sass/messenger-theme-ice.sass */ 108 | ul.messenger-theme-ice .messenger-message.alert-info .messenger-message-inner:before { 109 | content: "Information"; 110 | } -------------------------------------------------------------------------------- /vendor/assets/stylesheets/messenger-theme-air.css: -------------------------------------------------------------------------------- 1 | @import url("//fonts.googleapis.com/css?family=Raleway:400"); 2 | @-webkit-keyframes ui-spinner-rotate-right { 3 | 0% { 4 | -webkit-transform: rotate(0deg); 5 | } 6 | 25% { 7 | -webkit-transform: rotate(180deg); 8 | } 9 | 50% { 10 | -webkit-transform: rotate(180deg); 11 | } 12 | 75% { 13 | -webkit-transform: rotate(360deg); 14 | } 15 | 100% { 16 | -webkit-transform: rotate(360deg); 17 | } 18 | } 19 | @-webkit-keyframes ui-spinner-rotate-left { 20 | 0% { 21 | -webkit-transform: rotate(0deg); 22 | } 23 | 25% { 24 | -webkit-transform: rotate(0deg); 25 | } 26 | 50% { 27 | -webkit-transform: rotate(180deg); 28 | } 29 | 75% { 30 | -webkit-transform: rotate(180deg); 31 | } 32 | 100% { 33 | -webkit-transform: rotate(360deg); 34 | } 35 | } 36 | @-moz-keyframes ui-spinner-rotate-right { 37 | 0% { 38 | -moz-transform: rotate(0deg); 39 | } 40 | 25% { 41 | -moz-transform: rotate(180deg); 42 | } 43 | 50% { 44 | -moz-transform: rotate(180deg); 45 | } 46 | 75% { 47 | -moz-transform: rotate(360deg); 48 | } 49 | 100% { 50 | -moz-transform: rotate(360deg); 51 | } 52 | } 53 | @-moz-keyframes ui-spinner-rotate-left { 54 | 0% { 55 | -moz-transform: rotate(0deg); 56 | } 57 | 25% { 58 | -moz-transform: rotate(0deg); 59 | } 60 | 50% { 61 | -moz-transform: rotate(180deg); 62 | } 63 | 75% { 64 | -moz-transform: rotate(180deg); 65 | } 66 | 100% { 67 | -moz-transform: rotate(360deg); 68 | } 69 | } 70 | @keyframes ui-spinner-rotate-right { 71 | 0% { 72 | transform: rotate(0deg); 73 | } 74 | 25% { 75 | transform: rotate(180deg); 76 | } 77 | 50% { 78 | transform: rotate(180deg); 79 | } 80 | 75% { 81 | transform: rotate(360deg); 82 | } 83 | 100% { 84 | transform: rotate(360deg); 85 | } 86 | } 87 | @keyframes ui-spinner-rotate-left { 88 | 0% { 89 | transform: rotate(0deg); 90 | } 91 | 25% { 92 | transform: rotate(0deg); 93 | } 94 | 50% { 95 | transform: rotate(180deg); 96 | } 97 | 75% { 98 | transform: rotate(180deg); 99 | } 100 | 100% { 101 | transform: rotate(360deg); 102 | } 103 | } 104 | /* line 118, ../../src/sass/messenger-spinner.scss */ 105 | .messenger-spinner { 106 | position: relative; 107 | border-radius: 100%; 108 | } 109 | /* line 122, ../../src/sass/messenger-spinner.scss */ 110 | ul.messenger.messenger-spinner-active .messenger-spinner .messenger-spinner { 111 | display: block; 112 | } 113 | /* line 126, ../../src/sass/messenger-spinner.scss */ 114 | .messenger-spinner .messenger-spinner-side { 115 | width: 50%; 116 | height: 100%; 117 | overflow: hidden; 118 | position: absolute; 119 | } 120 | /* line 132, ../../src/sass/messenger-spinner.scss */ 121 | .messenger-spinner .messenger-spinner-side .messenger-spinner-fill { 122 | border-radius: 999px; 123 | position: absolute; 124 | width: 100%; 125 | height: 100%; 126 | -moz-animation-iteration-count: infinite; 127 | -webkit-animation-iteration-count: infinite; 128 | animation-iteration-count: infinite; 129 | -moz-animation-timing-function: linear; 130 | -webkit-animation-timing-function: linear; 131 | animation-timing-function: linear; 132 | } 133 | /* line 142, ../../src/sass/messenger-spinner.scss */ 134 | .messenger-spinner .messenger-spinner-side-left { 135 | left: 0; 136 | } 137 | /* line 145, ../../src/sass/messenger-spinner.scss */ 138 | .messenger-spinner .messenger-spinner-side-left .messenger-spinner-fill { 139 | left: 100%; 140 | border-top-left-radius: 0; 141 | border-bottom-left-radius: 0; 142 | -moz-animation-name: ui-spinner-rotate-left; 143 | -webkit-animation-name: ui-spinner-rotate-left; 144 | animation-name: ui-spinner-rotate-left; 145 | -moz-transform-origin: 0 50% 50%; 146 | -ms-transform-origin: 0 50% 50%; 147 | -webkit-transform-origin: 0 50% 50%; 148 | transform-origin: 0 50% 50%; 149 | } 150 | /* line 154, ../../src/sass/messenger-spinner.scss */ 151 | .messenger-spinner .messenger-spinner-side-right { 152 | left: 50%; 153 | } 154 | /* line 157, ../../src/sass/messenger-spinner.scss */ 155 | .messenger-spinner .messenger-spinner-side-right .messenger-spinner-fill { 156 | left: -100%; 157 | border-top-right-radius: 0; 158 | border-bottom-right-radius: 0; 159 | -moz-animation-name: ui-spinner-rotate-right; 160 | -webkit-animation-name: ui-spinner-rotate-right; 161 | animation-name: ui-spinner-rotate-right; 162 | -moz-transform-origin: 100% 50% 50%; 163 | -ms-transform-origin: 100% 50% 50%; 164 | -webkit-transform-origin: 100% 50% 50%; 165 | transform-origin: 100% 50% 50%; 166 | } 167 | 168 | /* line 16, ../../src/sass/messenger-theme-air.sass */ 169 | ul.messenger-theme-air { 170 | -moz-user-select: none; 171 | -webkit-user-select: none; 172 | -o-user-select: none; 173 | user-select: none; 174 | font-family: "Raleway", sans-serif; 175 | } 176 | /* line 20, ../../src/sass/messenger-theme-air.sass */ 177 | ul.messenger-theme-air .messenger-message { 178 | -moz-transition: background-color 0.4s; 179 | -o-transition: background-color 0.4s; 180 | -webkit-transition: background-color 0.4s; 181 | transition: background-color 0.4s; 182 | -moz-border-radius: 5px; 183 | -webkit-border-radius: 5px; 184 | border-radius: 5px; 185 | -moz-box-shadow: inset 0 0 0 1px #fff, inset 0 2px #fff, 0 0 0 1px rgba(0, 0, 0, 0.1), 0 1px rgba(0, 0, 0, 0.2); 186 | -webkit-box-shadow: inset 0 0 0 1px #fff, inset 0 2px #fff, 0 0 0 1px rgba(0, 0, 0, 0.1), 0 1px rgba(0, 0, 0, 0.2); 187 | box-shadow: inset 0 0 0 1px #fff, inset 0 2px #fff, 0 0 0 1px rgba(0, 0, 0, 0.1), 0 1px rgba(0, 0, 0, 0.2); 188 | border: 0px; 189 | background-color: rgba(255, 255, 255, 0.8); 190 | position: relative; 191 | margin-bottom: 1em; 192 | font-size: 13px; 193 | color: #666; 194 | font-weight: 500; 195 | padding: 10px 30px 11px 46px; 196 | } 197 | /* line 33, ../../src/sass/messenger-theme-air.sass */ 198 | ul.messenger-theme-air .messenger-message:hover { 199 | background-color: white; 200 | } 201 | /* line 36, ../../src/sass/messenger-theme-air.sass */ 202 | ul.messenger-theme-air .messenger-message .messenger-close { 203 | position: absolute; 204 | top: 0px; 205 | right: 0px; 206 | color: #888; 207 | opacity: 1; 208 | font-weight: bold; 209 | display: block; 210 | font-size: 20px; 211 | line-height: 20px; 212 | padding: 8px 10px 7px 7px; 213 | cursor: pointer; 214 | background: transparent; 215 | border: 0; 216 | -webkit-appearance: none; 217 | } 218 | /* line 52, ../../src/sass/messenger-theme-air.sass */ 219 | ul.messenger-theme-air .messenger-message .messenger-close:hover { 220 | color: #444; 221 | } 222 | /* line 55, ../../src/sass/messenger-theme-air.sass */ 223 | ul.messenger-theme-air .messenger-message .messenger-close:active { 224 | color: #222; 225 | } 226 | /* line 58, ../../src/sass/messenger-theme-air.sass */ 227 | ul.messenger-theme-air .messenger-message .messenger-actions { 228 | float: none; 229 | margin-top: 10px; 230 | } 231 | /* line 62, ../../src/sass/messenger-theme-air.sass */ 232 | ul.messenger-theme-air .messenger-message .messenger-actions a { 233 | -moz-box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.1), inset 0px 1px rgba(255, 255, 255, 0.05); 234 | -webkit-box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.1), inset 0px 1px rgba(255, 255, 255, 0.05); 235 | box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.1), inset 0px 1px rgba(255, 255, 255, 0.05); 236 | -moz-border-radius: 4px; 237 | -webkit-border-radius: 4px; 238 | border-radius: 4px; 239 | text-decoration: none; 240 | display: inline-block; 241 | padding: 10px; 242 | color: #888; 243 | margin-right: 10px; 244 | padding: 3px 10px 5px; 245 | text-transform: capitalize; 246 | } 247 | /* line 73, ../../src/sass/messenger-theme-air.sass */ 248 | ul.messenger-theme-air .messenger-message .messenger-actions a:hover { 249 | -moz-box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.1), inset 0px 1px rgba(255, 255, 255, 0.15); 250 | -webkit-box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.1), inset 0px 1px rgba(255, 255, 255, 0.15); 251 | box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.1), inset 0px 1px rgba(255, 255, 255, 0.15); 252 | color: #444; 253 | } 254 | /* line 77, ../../src/sass/messenger-theme-air.sass */ 255 | ul.messenger-theme-air .messenger-message .messenger-actions a:active { 256 | -moz-box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.18), inset 0px 1px rgba(0, 0, 0, 0.05); 257 | -webkit-box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.18), inset 0px 1px rgba(0, 0, 0, 0.05); 258 | box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.18), inset 0px 1px rgba(0, 0, 0, 0.05); 259 | background: rgba(0, 0, 0, 0.04); 260 | color: #444; 261 | } 262 | /* line 82, ../../src/sass/messenger-theme-air.sass */ 263 | ul.messenger-theme-air .messenger-message .messenger-actions .messenger-phrase { 264 | display: none; 265 | } 266 | /* line 85, ../../src/sass/messenger-theme-air.sass */ 267 | ul.messenger-theme-air .messenger-message .messenger-message-inner:before { 268 | -moz-box-shadow: inset 0px 1px 3px rgba(0, 0, 0, 0.3); 269 | -webkit-box-shadow: inset 0px 1px 3px rgba(0, 0, 0, 0.3); 270 | box-shadow: inset 0px 1px 3px rgba(0, 0, 0, 0.3); 271 | -moz-border-radius: 50%; 272 | -webkit-border-radius: 50%; 273 | border-radius: 50%; 274 | position: absolute; 275 | left: 17px; 276 | display: block; 277 | content: " "; 278 | top: 50%; 279 | margin-top: -8px; 280 | height: 13px; 281 | width: 13px; 282 | z-index: 20; 283 | } 284 | /* line 99, ../../src/sass/messenger-theme-air.sass */ 285 | ul.messenger-theme-air .messenger-message.alert-success .messenger-message-inner:before { 286 | background-color: #5fca4a; 287 | } 288 | /* line 34, ../../src/sass/messenger-spinner.scss */ 289 | ul.messenger-theme-air .messenger-message.alert-error.messenger-retry-soon .messenger-spinner { 290 | width: 24px; 291 | height: 24px; 292 | background: transparent; 293 | } 294 | /* line 39, ../../src/sass/messenger-spinner.scss */ 295 | ul.messenger-theme-air .messenger-message.alert-error.messenger-retry-soon .messenger-spinner .messenger-spinner-side .messenger-spinner-fill { 296 | background: #dd6a45; 297 | -moz-animation-duration: 20s; 298 | -webkit-animation-duration: 20s; 299 | animation-duration: 20s; 300 | opacity: 1; 301 | } 302 | /* line 47, ../../src/sass/messenger-spinner.scss */ 303 | ul.messenger-theme-air .messenger-message.alert-error.messenger-retry-soon .messenger-spinner:after { 304 | content: ""; 305 | background: #fff; 306 | position: absolute; 307 | width: 19px; 308 | height: 19px; 309 | border-radius: 50%; 310 | top: 2px; 311 | left: 2px; 312 | display: block; 313 | } 314 | /* line 34, ../../src/sass/messenger-spinner.scss */ 315 | ul.messenger-theme-air .messenger-message.alert-error.messenger-retry-later .messenger-spinner { 316 | width: 24px; 317 | height: 24px; 318 | background: transparent; 319 | } 320 | /* line 39, ../../src/sass/messenger-spinner.scss */ 321 | ul.messenger-theme-air .messenger-message.alert-error.messenger-retry-later .messenger-spinner .messenger-spinner-side .messenger-spinner-fill { 322 | background: #dd6a45; 323 | -moz-animation-duration: 600s; 324 | -webkit-animation-duration: 600s; 325 | animation-duration: 600s; 326 | opacity: 1; 327 | } 328 | /* line 47, ../../src/sass/messenger-spinner.scss */ 329 | ul.messenger-theme-air .messenger-message.alert-error.messenger-retry-later .messenger-spinner:after { 330 | content: ""; 331 | background: #fff; 332 | position: absolute; 333 | width: 19px; 334 | height: 19px; 335 | border-radius: 50%; 336 | top: 2px; 337 | left: 2px; 338 | display: block; 339 | } 340 | /* line 109, ../../src/sass/messenger-theme-air.sass */ 341 | ul.messenger-theme-air .messenger-message.alert-error .messenger-message-inner:before { 342 | background-color: #dd6a45; 343 | } 344 | /* line 113, ../../src/sass/messenger-theme-air.sass */ 345 | ul.messenger-theme-air .messenger-message.alert-info .messenger-message-inner:before { 346 | background-color: #61c4b8; 347 | } 348 | /* line 116, ../../src/sass/messenger-theme-air.sass */ 349 | ul.messenger-theme-air .messenger-spinner { 350 | display: block; 351 | position: absolute; 352 | left: 12px; 353 | top: 50%; 354 | margin-top: -13px; 355 | z-index: 999; 356 | height: 24px; 357 | width: 24px; 358 | z-index: 10; 359 | } -------------------------------------------------------------------------------- /vendor/assets/stylesheets/messenger-theme-flat.css: -------------------------------------------------------------------------------- 1 | @-webkit-keyframes ui-spinner-rotate-right { 2 | 0% { 3 | -webkit-transform: rotate(0deg); 4 | } 5 | 25% { 6 | -webkit-transform: rotate(180deg); 7 | } 8 | 50% { 9 | -webkit-transform: rotate(180deg); 10 | } 11 | 75% { 12 | -webkit-transform: rotate(360deg); 13 | } 14 | 100% { 15 | -webkit-transform: rotate(360deg); 16 | } 17 | } 18 | @-webkit-keyframes ui-spinner-rotate-left { 19 | 0% { 20 | -webkit-transform: rotate(0deg); 21 | } 22 | 25% { 23 | -webkit-transform: rotate(0deg); 24 | } 25 | 50% { 26 | -webkit-transform: rotate(180deg); 27 | } 28 | 75% { 29 | -webkit-transform: rotate(180deg); 30 | } 31 | 100% { 32 | -webkit-transform: rotate(360deg); 33 | } 34 | } 35 | @-moz-keyframes ui-spinner-rotate-right { 36 | 0% { 37 | -moz-transform: rotate(0deg); 38 | } 39 | 25% { 40 | -moz-transform: rotate(180deg); 41 | } 42 | 50% { 43 | -moz-transform: rotate(180deg); 44 | } 45 | 75% { 46 | -moz-transform: rotate(360deg); 47 | } 48 | 100% { 49 | -moz-transform: rotate(360deg); 50 | } 51 | } 52 | @-moz-keyframes ui-spinner-rotate-left { 53 | 0% { 54 | -moz-transform: rotate(0deg); 55 | } 56 | 25% { 57 | -moz-transform: rotate(0deg); 58 | } 59 | 50% { 60 | -moz-transform: rotate(180deg); 61 | } 62 | 75% { 63 | -moz-transform: rotate(180deg); 64 | } 65 | 100% { 66 | -moz-transform: rotate(360deg); 67 | } 68 | } 69 | @keyframes ui-spinner-rotate-right { 70 | 0% { 71 | transform: rotate(0deg); 72 | } 73 | 25% { 74 | transform: rotate(180deg); 75 | } 76 | 50% { 77 | transform: rotate(180deg); 78 | } 79 | 75% { 80 | transform: rotate(360deg); 81 | } 82 | 100% { 83 | transform: rotate(360deg); 84 | } 85 | } 86 | @keyframes ui-spinner-rotate-left { 87 | 0% { 88 | transform: rotate(0deg); 89 | } 90 | 25% { 91 | transform: rotate(0deg); 92 | } 93 | 50% { 94 | transform: rotate(180deg); 95 | } 96 | 75% { 97 | transform: rotate(180deg); 98 | } 99 | 100% { 100 | transform: rotate(360deg); 101 | } 102 | } 103 | /* line 118, ../../src/sass/messenger-spinner.scss */ 104 | .messenger-spinner { 105 | position: relative; 106 | border-radius: 100%; 107 | } 108 | /* line 122, ../../src/sass/messenger-spinner.scss */ 109 | ul.messenger.messenger-spinner-active .messenger-spinner .messenger-spinner { 110 | display: block; 111 | } 112 | /* line 126, ../../src/sass/messenger-spinner.scss */ 113 | .messenger-spinner .messenger-spinner-side { 114 | width: 50%; 115 | height: 100%; 116 | overflow: hidden; 117 | position: absolute; 118 | } 119 | /* line 132, ../../src/sass/messenger-spinner.scss */ 120 | .messenger-spinner .messenger-spinner-side .messenger-spinner-fill { 121 | border-radius: 999px; 122 | position: absolute; 123 | width: 100%; 124 | height: 100%; 125 | -moz-animation-iteration-count: infinite; 126 | -webkit-animation-iteration-count: infinite; 127 | animation-iteration-count: infinite; 128 | -moz-animation-timing-function: linear; 129 | -webkit-animation-timing-function: linear; 130 | animation-timing-function: linear; 131 | } 132 | /* line 142, ../../src/sass/messenger-spinner.scss */ 133 | .messenger-spinner .messenger-spinner-side-left { 134 | left: 0; 135 | } 136 | /* line 145, ../../src/sass/messenger-spinner.scss */ 137 | .messenger-spinner .messenger-spinner-side-left .messenger-spinner-fill { 138 | left: 100%; 139 | border-top-left-radius: 0; 140 | border-bottom-left-radius: 0; 141 | -moz-animation-name: ui-spinner-rotate-left; 142 | -webkit-animation-name: ui-spinner-rotate-left; 143 | animation-name: ui-spinner-rotate-left; 144 | -moz-transform-origin: 0 50% 50%; 145 | -ms-transform-origin: 0 50% 50%; 146 | -webkit-transform-origin: 0 50% 50%; 147 | transform-origin: 0 50% 50%; 148 | } 149 | /* line 154, ../../src/sass/messenger-spinner.scss */ 150 | .messenger-spinner .messenger-spinner-side-right { 151 | left: 50%; 152 | } 153 | /* line 157, ../../src/sass/messenger-spinner.scss */ 154 | .messenger-spinner .messenger-spinner-side-right .messenger-spinner-fill { 155 | left: -100%; 156 | border-top-right-radius: 0; 157 | border-bottom-right-radius: 0; 158 | -moz-animation-name: ui-spinner-rotate-right; 159 | -webkit-animation-name: ui-spinner-rotate-right; 160 | animation-name: ui-spinner-rotate-right; 161 | -moz-transform-origin: 100% 50% 50%; 162 | -ms-transform-origin: 100% 50% 50%; 163 | -webkit-transform-origin: 100% 50% 50%; 164 | transform-origin: 100% 50% 50%; 165 | } 166 | 167 | /* line 15, ../../src/sass/messenger-theme-flat.sass */ 168 | ul.messenger-theme-flat { 169 | -moz-border-radius: 4px; 170 | -webkit-border-radius: 4px; 171 | border-radius: 4px; 172 | -moz-user-select: none; 173 | -webkit-user-select: none; 174 | -o-user-select: none; 175 | user-select: none; 176 | background: #404040; 177 | } 178 | /* line 20, ../../src/sass/messenger-theme-flat.sass */ 179 | ul.messenger-theme-flat.messenger-empty { 180 | display: none; 181 | } 182 | /* line 23, ../../src/sass/messenger-theme-flat.sass */ 183 | ul.messenger-theme-flat .messenger-message { 184 | -moz-box-shadow: inset 0px 1px rgba(255, 255, 255, 0.13), inset 48px 0px 0px #292929; 185 | -webkit-box-shadow: inset 0px 1px rgba(255, 255, 255, 0.13), inset 48px 0px 0px #292929; 186 | box-shadow: inset 0px 1px rgba(255, 255, 255, 0.13), inset 48px 0px 0px #292929; 187 | -moz-border-radius: 0px; 188 | -webkit-border-radius: 0px; 189 | border-radius: 0px; 190 | position: relative; 191 | border: 0px; 192 | margin-bottom: 0px; 193 | font-size: 13px; 194 | background: transparent; 195 | color: #f0f0f0; 196 | font-weight: 500; 197 | padding: 10px 30px 13px 65px; 198 | } 199 | /* line 35, ../../src/sass/messenger-theme-flat.sass */ 200 | ul.messenger-theme-flat .messenger-message .messenger-close { 201 | position: absolute; 202 | top: 0px; 203 | right: 0px; 204 | color: #888; 205 | opacity: 1; 206 | font-weight: bold; 207 | display: block; 208 | font-size: 20px; 209 | line-height: 20px; 210 | padding: 8px 10px 7px 7px; 211 | cursor: pointer; 212 | background: transparent; 213 | border: 0; 214 | -webkit-appearance: none; 215 | } 216 | /* line 51, ../../src/sass/messenger-theme-flat.sass */ 217 | ul.messenger-theme-flat .messenger-message .messenger-close:hover { 218 | color: #bbb; 219 | } 220 | /* line 54, ../../src/sass/messenger-theme-flat.sass */ 221 | ul.messenger-theme-flat .messenger-message .messenger-close:active { 222 | color: #777; 223 | } 224 | /* line 57, ../../src/sass/messenger-theme-flat.sass */ 225 | ul.messenger-theme-flat .messenger-message .messenger-actions { 226 | float: none; 227 | margin-top: 10px; 228 | } 229 | /* line 61, ../../src/sass/messenger-theme-flat.sass */ 230 | ul.messenger-theme-flat .messenger-message .messenger-actions a { 231 | -moz-border-radius: 4px; 232 | -webkit-border-radius: 4px; 233 | border-radius: 4px; 234 | text-decoration: none; 235 | color: #aaa; 236 | background: #2e2e2e; 237 | display: inline-block; 238 | padding: 10px; 239 | margin-right: 10px; 240 | padding: 4px 11px 6px; 241 | text-transform: capitalize; 242 | } 243 | /* line 72, ../../src/sass/messenger-theme-flat.sass */ 244 | ul.messenger-theme-flat .messenger-message .messenger-actions a:hover { 245 | color: #f0f0f0; 246 | background: #2e2e2e; 247 | } 248 | /* line 76, ../../src/sass/messenger-theme-flat.sass */ 249 | ul.messenger-theme-flat .messenger-message .messenger-actions a:active { 250 | background: #292929; 251 | color: #aaa; 252 | } 253 | /* line 80, ../../src/sass/messenger-theme-flat.sass */ 254 | ul.messenger-theme-flat .messenger-message .messenger-actions .messenger-phrase { 255 | display: none; 256 | } 257 | /* line 83, ../../src/sass/messenger-theme-flat.sass */ 258 | ul.messenger-theme-flat .messenger-message .messenger-message-inner:before { 259 | -moz-border-radius: 50%; 260 | -webkit-border-radius: 50%; 261 | border-radius: 50%; 262 | position: absolute; 263 | left: 17px; 264 | display: block; 265 | content: " "; 266 | top: 50%; 267 | margin-top: -8px; 268 | height: 13px; 269 | width: 13px; 270 | z-index: 20; 271 | } 272 | /* line 95, ../../src/sass/messenger-theme-flat.sass */ 273 | ul.messenger-theme-flat .messenger-message.alert-success .messenger-message-inner:before { 274 | background: #5fca4a; 275 | } 276 | /* line 98, ../../src/sass/messenger-theme-flat.sass */ 277 | ul.messenger-theme-flat .messenger-message.alert-info .messenger-message-inner:before { 278 | background: #61c4b8; 279 | } 280 | /* line 103, ../../src/sass/messenger-theme-flat.sass */ 281 | ul.messenger-theme-flat .messenger-message.alert-error .messenger-message-inner:before { 282 | background: #dd6a45; 283 | } 284 | /* line 34, ../../src/sass/messenger-spinner.scss */ 285 | ul.messenger-theme-flat .messenger-message.alert-error.messenger-retry-soon .messenger-spinner { 286 | width: 32px; 287 | height: 32px; 288 | background: transparent; 289 | } 290 | /* line 39, ../../src/sass/messenger-spinner.scss */ 291 | ul.messenger-theme-flat .messenger-message.alert-error.messenger-retry-soon .messenger-spinner .messenger-spinner-side .messenger-spinner-fill { 292 | background: #dd6a45; 293 | -moz-animation-duration: 20s; 294 | -webkit-animation-duration: 20s; 295 | animation-duration: 20s; 296 | opacity: 1; 297 | } 298 | /* line 47, ../../src/sass/messenger-spinner.scss */ 299 | ul.messenger-theme-flat .messenger-message.alert-error.messenger-retry-soon .messenger-spinner:after { 300 | content: ""; 301 | background: #292929; 302 | position: absolute; 303 | width: 26px; 304 | height: 26px; 305 | border-radius: 50%; 306 | top: 3px; 307 | left: 3px; 308 | display: block; 309 | } 310 | /* line 34, ../../src/sass/messenger-spinner.scss */ 311 | ul.messenger-theme-flat .messenger-message.alert-error.messenger-retry-later .messenger-spinner { 312 | width: 32px; 313 | height: 32px; 314 | background: transparent; 315 | } 316 | /* line 39, ../../src/sass/messenger-spinner.scss */ 317 | ul.messenger-theme-flat .messenger-message.alert-error.messenger-retry-later .messenger-spinner .messenger-spinner-side .messenger-spinner-fill { 318 | background: #dd6a45; 319 | -moz-animation-duration: 600s; 320 | -webkit-animation-duration: 600s; 321 | animation-duration: 600s; 322 | opacity: 1; 323 | } 324 | /* line 47, ../../src/sass/messenger-spinner.scss */ 325 | ul.messenger-theme-flat .messenger-message.alert-error.messenger-retry-later .messenger-spinner:after { 326 | content: ""; 327 | background: #292929; 328 | position: absolute; 329 | width: 26px; 330 | height: 26px; 331 | border-radius: 50%; 332 | top: 3px; 333 | left: 3px; 334 | display: block; 335 | } 336 | /* line 114, ../../src/sass/messenger-theme-flat.sass */ 337 | ul.messenger-theme-flat .messenger-message-slot.messenger-last .messenger-message { 338 | -moz-border-radius: 4px 4px 0px 0px; 339 | -webkit-border-radius: 4px; 340 | border-radius: 4px 4px 0px 0px; 341 | -moz-box-shadow: inset 48px 0px 0px #292929; 342 | -webkit-box-shadow: inset 48px 0px 0px #292929; 343 | box-shadow: inset 48px 0px 0px #292929; 344 | } 345 | /* line 118, ../../src/sass/messenger-theme-flat.sass */ 346 | ul.messenger-theme-flat .messenger-message-slot.messenger-first .messenger-message { 347 | -moz-border-radius: 0px 0px 4px 4px; 348 | -webkit-border-radius: 0px; 349 | border-radius: 0px 0px 4px 4px; 350 | -moz-box-shadow: inset 0px 1px rgba(255, 255, 255, 0.13), inset 48px 0px 0px #292929; 351 | -webkit-box-shadow: inset 0px 1px rgba(255, 255, 255, 0.13), inset 48px 0px 0px #292929; 352 | box-shadow: inset 0px 1px rgba(255, 255, 255, 0.13), inset 48px 0px 0px #292929; 353 | } 354 | /* line 122, ../../src/sass/messenger-theme-flat.sass */ 355 | ul.messenger-theme-flat .messenger-message-slot.messenger-first.messenger-last .messenger-message { 356 | -moz-border-radius: 4px; 357 | -webkit-border-radius: 4px; 358 | border-radius: 4px; 359 | -moz-box-shadow: inset 48px 0px 0px #292929; 360 | -webkit-box-shadow: inset 48px 0px 0px #292929; 361 | box-shadow: inset 48px 0px 0px #292929; 362 | } 363 | /* line 126, ../../src/sass/messenger-theme-flat.sass */ 364 | ul.messenger-theme-flat .messenger-spinner { 365 | display: block; 366 | position: absolute; 367 | left: 7px; 368 | top: 50%; 369 | margin-top: -18px; 370 | z-index: 999; 371 | height: 32px; 372 | width: 32px; 373 | z-index: 10; 374 | } -------------------------------------------------------------------------------- /vendor/assets/stylesheets/messenger-theme-future.css: -------------------------------------------------------------------------------- 1 | @-webkit-keyframes ui-spinner-rotate-right { 2 | 0% { 3 | -webkit-transform: rotate(0deg); 4 | } 5 | 25% { 6 | -webkit-transform: rotate(180deg); 7 | } 8 | 50% { 9 | -webkit-transform: rotate(180deg); 10 | } 11 | 75% { 12 | -webkit-transform: rotate(360deg); 13 | } 14 | 100% { 15 | -webkit-transform: rotate(360deg); 16 | } 17 | } 18 | @-webkit-keyframes ui-spinner-rotate-left { 19 | 0% { 20 | -webkit-transform: rotate(0deg); 21 | } 22 | 25% { 23 | -webkit-transform: rotate(0deg); 24 | } 25 | 50% { 26 | -webkit-transform: rotate(180deg); 27 | } 28 | 75% { 29 | -webkit-transform: rotate(180deg); 30 | } 31 | 100% { 32 | -webkit-transform: rotate(360deg); 33 | } 34 | } 35 | @-moz-keyframes ui-spinner-rotate-right { 36 | 0% { 37 | -moz-transform: rotate(0deg); 38 | } 39 | 25% { 40 | -moz-transform: rotate(180deg); 41 | } 42 | 50% { 43 | -moz-transform: rotate(180deg); 44 | } 45 | 75% { 46 | -moz-transform: rotate(360deg); 47 | } 48 | 100% { 49 | -moz-transform: rotate(360deg); 50 | } 51 | } 52 | @-moz-keyframes ui-spinner-rotate-left { 53 | 0% { 54 | -moz-transform: rotate(0deg); 55 | } 56 | 25% { 57 | -moz-transform: rotate(0deg); 58 | } 59 | 50% { 60 | -moz-transform: rotate(180deg); 61 | } 62 | 75% { 63 | -moz-transform: rotate(180deg); 64 | } 65 | 100% { 66 | -moz-transform: rotate(360deg); 67 | } 68 | } 69 | @keyframes ui-spinner-rotate-right { 70 | 0% { 71 | transform: rotate(0deg); 72 | } 73 | 25% { 74 | transform: rotate(180deg); 75 | } 76 | 50% { 77 | transform: rotate(180deg); 78 | } 79 | 75% { 80 | transform: rotate(360deg); 81 | } 82 | 100% { 83 | transform: rotate(360deg); 84 | } 85 | } 86 | @keyframes ui-spinner-rotate-left { 87 | 0% { 88 | transform: rotate(0deg); 89 | } 90 | 25% { 91 | transform: rotate(0deg); 92 | } 93 | 50% { 94 | transform: rotate(180deg); 95 | } 96 | 75% { 97 | transform: rotate(180deg); 98 | } 99 | 100% { 100 | transform: rotate(360deg); 101 | } 102 | } 103 | /* line 118, ../../src/sass/messenger-spinner.scss */ 104 | .messenger-spinner { 105 | position: relative; 106 | border-radius: 100%; 107 | } 108 | /* line 122, ../../src/sass/messenger-spinner.scss */ 109 | ul.messenger.messenger-spinner-active .messenger-spinner .messenger-spinner { 110 | display: block; 111 | } 112 | /* line 126, ../../src/sass/messenger-spinner.scss */ 113 | .messenger-spinner .messenger-spinner-side { 114 | width: 50%; 115 | height: 100%; 116 | overflow: hidden; 117 | position: absolute; 118 | } 119 | /* line 132, ../../src/sass/messenger-spinner.scss */ 120 | .messenger-spinner .messenger-spinner-side .messenger-spinner-fill { 121 | border-radius: 999px; 122 | position: absolute; 123 | width: 100%; 124 | height: 100%; 125 | -moz-animation-iteration-count: infinite; 126 | -webkit-animation-iteration-count: infinite; 127 | animation-iteration-count: infinite; 128 | -moz-animation-timing-function: linear; 129 | -webkit-animation-timing-function: linear; 130 | animation-timing-function: linear; 131 | } 132 | /* line 142, ../../src/sass/messenger-spinner.scss */ 133 | .messenger-spinner .messenger-spinner-side-left { 134 | left: 0; 135 | } 136 | /* line 145, ../../src/sass/messenger-spinner.scss */ 137 | .messenger-spinner .messenger-spinner-side-left .messenger-spinner-fill { 138 | left: 100%; 139 | border-top-left-radius: 0; 140 | border-bottom-left-radius: 0; 141 | -moz-animation-name: ui-spinner-rotate-left; 142 | -webkit-animation-name: ui-spinner-rotate-left; 143 | animation-name: ui-spinner-rotate-left; 144 | -moz-transform-origin: 0 50% 50%; 145 | -ms-transform-origin: 0 50% 50%; 146 | -webkit-transform-origin: 0 50% 50%; 147 | transform-origin: 0 50% 50%; 148 | } 149 | /* line 154, ../../src/sass/messenger-spinner.scss */ 150 | .messenger-spinner .messenger-spinner-side-right { 151 | left: 50%; 152 | } 153 | /* line 157, ../../src/sass/messenger-spinner.scss */ 154 | .messenger-spinner .messenger-spinner-side-right .messenger-spinner-fill { 155 | left: -100%; 156 | border-top-right-radius: 0; 157 | border-bottom-right-radius: 0; 158 | -moz-animation-name: ui-spinner-rotate-right; 159 | -webkit-animation-name: ui-spinner-rotate-right; 160 | animation-name: ui-spinner-rotate-right; 161 | -moz-transform-origin: 100% 50% 50%; 162 | -ms-transform-origin: 100% 50% 50%; 163 | -webkit-transform-origin: 100% 50% 50%; 164 | transform-origin: 100% 50% 50%; 165 | } 166 | 167 | /* line 15, ../../src/sass/messenger-theme-future.sass */ 168 | ul.messenger-theme-future { 169 | -moz-box-shadow: inset 0px 1px rgba(255, 255, 255, 0.24), 0px 1px 5px rgba(0, 0, 0, 0.6); 170 | -webkit-box-shadow: inset 0px 1px rgba(255, 255, 255, 0.24), 0px 1px 5px rgba(0, 0, 0, 0.6); 171 | box-shadow: inset 0px 1px rgba(255, 255, 255, 0.24), 0px 1px 5px rgba(0, 0, 0, 0.6); 172 | -moz-border-radius: 4px; 173 | -webkit-border-radius: 4px; 174 | border-radius: 4px; 175 | -moz-user-select: none; 176 | -webkit-user-select: none; 177 | -o-user-select: none; 178 | user-select: none; 179 | background-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzVjNWI1YiIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iIzM1MzUzNSIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA=='); 180 | background-size: 100%; 181 | background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #5c5b5b), color-stop(100%, #353535)); 182 | background-image: -moz-linear-gradient(#5c5b5b, #353535); 183 | background-image: -webkit-linear-gradient(#5c5b5b, #353535); 184 | background-image: linear-gradient(#5c5b5b, #353535); 185 | background-color: #5c5b5b; 186 | border: 1px solid rgba(0, 0, 0, 0.5); 187 | } 188 | /* line 23, ../../src/sass/messenger-theme-future.sass */ 189 | ul.messenger-theme-future .messenger-message { 190 | -moz-box-shadow: inset 0px 1px rgba(255, 255, 255, 0.13), inset 0px -1px rgba(0, 0, 0, 0.23), inset 48px 0px 0px rgba(0, 0, 0, 0.3), inset 46px 0px 0px rgba(255, 255, 255, 0.07); 191 | -webkit-box-shadow: inset 0px 1px rgba(255, 255, 255, 0.13), inset 0px -1px rgba(0, 0, 0, 0.23), inset 48px 0px 0px rgba(0, 0, 0, 0.3), inset 46px 0px 0px rgba(255, 255, 255, 0.07); 192 | box-shadow: inset 0px 1px rgba(255, 255, 255, 0.13), inset 0px -1px rgba(0, 0, 0, 0.23), inset 48px 0px 0px rgba(0, 0, 0, 0.3), inset 46px 0px 0px rgba(255, 255, 255, 0.07); 193 | -moz-border-radius: 0px; 194 | -webkit-border-radius: 0px; 195 | border-radius: 0px; 196 | position: relative; 197 | border: 0px; 198 | margin-bottom: 0px; 199 | font-size: 13px; 200 | background: transparent; 201 | color: #f0f0f0; 202 | text-shadow: 0px 1px #111; 203 | font-weight: 500; 204 | padding: 10px 30px 13px 65px; 205 | } 206 | /* line 36, ../../src/sass/messenger-theme-future.sass */ 207 | ul.messenger-theme-future .messenger-message a { 208 | color: #5599ff; 209 | } 210 | /* line 39, ../../src/sass/messenger-theme-future.sass */ 211 | ul.messenger-theme-future .messenger-message .messenger-close { 212 | position: absolute; 213 | top: 0px; 214 | right: 0px; 215 | color: #888; 216 | text-shadow: 0px 1px #000; 217 | opacity: 1; 218 | font-weight: bold; 219 | display: block; 220 | font-size: 20px; 221 | line-height: 20px; 222 | padding: 8px 10px 7px 7px; 223 | cursor: pointer; 224 | background: transparent; 225 | border: 0; 226 | -webkit-appearance: none; 227 | } 228 | /* line 56, ../../src/sass/messenger-theme-future.sass */ 229 | ul.messenger-theme-future .messenger-message .messenger-close:hover { 230 | color: #bbb; 231 | } 232 | /* line 59, ../../src/sass/messenger-theme-future.sass */ 233 | ul.messenger-theme-future .messenger-message .messenger-close:active { 234 | color: #777; 235 | } 236 | /* line 62, ../../src/sass/messenger-theme-future.sass */ 237 | ul.messenger-theme-future .messenger-message .messenger-actions { 238 | float: none; 239 | margin-top: 10px; 240 | } 241 | /* line 66, ../../src/sass/messenger-theme-future.sass */ 242 | ul.messenger-theme-future .messenger-message .messenger-actions a { 243 | -moz-box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.2), inset 0px 1px rgba(255, 255, 255, 0.1); 244 | -webkit-box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.2), inset 0px 1px rgba(255, 255, 255, 0.1); 245 | box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.2), inset 0px 1px rgba(255, 255, 255, 0.1); 246 | -moz-border-radius: 4px; 247 | -webkit-border-radius: 4px; 248 | border-radius: 4px; 249 | text-decoration: none; 250 | display: inline-block; 251 | padding: 10px; 252 | color: #aaa; 253 | text-shadow: 0px 1px #222; 254 | margin-right: 10px; 255 | padding: 3px 10px 5px; 256 | text-transform: capitalize; 257 | } 258 | /* line 78, ../../src/sass/messenger-theme-future.sass */ 259 | ul.messenger-theme-future .messenger-message .messenger-actions a:hover { 260 | -moz-box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.2), inset 0px 1px rgba(255, 255, 255, 0.2); 261 | -webkit-box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.2), inset 0px 1px rgba(255, 255, 255, 0.2); 262 | box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.2), inset 0px 1px rgba(255, 255, 255, 0.2); 263 | color: #f0f0f0; 264 | } 265 | /* line 82, ../../src/sass/messenger-theme-future.sass */ 266 | ul.messenger-theme-future .messenger-message .messenger-actions a:active { 267 | -moz-box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.28), inset 0px 1px rgba(0, 0, 0, 0.1); 268 | -webkit-box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.28), inset 0px 1px rgba(0, 0, 0, 0.1); 269 | box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.28), inset 0px 1px rgba(0, 0, 0, 0.1); 270 | background: rgba(0, 0, 0, 0.04); 271 | color: #aaa; 272 | } 273 | /* line 87, ../../src/sass/messenger-theme-future.sass */ 274 | ul.messenger-theme-future .messenger-message .messenger-actions .messenger-phrase { 275 | display: none; 276 | } 277 | /* line 90, ../../src/sass/messenger-theme-future.sass */ 278 | ul.messenger-theme-future .messenger-message .messenger-message-inner:before { 279 | -moz-box-shadow: inset 0px 1px 3px rgba(0, 0, 0, 0.6), 0px 0px 0px 1px rgba(0, 0, 0, 0.2); 280 | -webkit-box-shadow: inset 0px 1px 3px rgba(0, 0, 0, 0.6), 0px 0px 0px 1px rgba(0, 0, 0, 0.2); 281 | box-shadow: inset 0px 1px 3px rgba(0, 0, 0, 0.6), 0px 0px 0px 1px rgba(0, 0, 0, 0.2); 282 | -moz-border-radius: 50%; 283 | -webkit-border-radius: 50%; 284 | border-radius: 50%; 285 | position: absolute; 286 | left: 17px; 287 | display: block; 288 | content: " "; 289 | top: 50%; 290 | margin-top: -8px; 291 | height: 13px; 292 | width: 13px; 293 | z-index: 20; 294 | } 295 | /* line 103, ../../src/sass/messenger-theme-future.sass */ 296 | ul.messenger-theme-future .messenger-message.alert-success .messenger-message-inner:before { 297 | background-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzVmY2E0YSIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iIzA5OGQzOCIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA=='); 298 | background-size: 100%; 299 | background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #5fca4a), color-stop(100%, #098d38)); 300 | background-image: -moz-linear-gradient(top, #5fca4a, #098d38); 301 | background-image: -webkit-linear-gradient(top, #5fca4a, #098d38); 302 | background-image: linear-gradient(to bottom, #5fca4a, #098d38); 303 | background-color: #5fca4a; 304 | } 305 | /* line 107, ../../src/sass/messenger-theme-future.sass */ 306 | ul.messenger-theme-future .messenger-message.alert-info .messenger-message-inner:before { 307 | background-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzYxYzRiOCIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iIzE5OTJhMyIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA=='); 308 | background-size: 100%; 309 | background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #61c4b8), color-stop(100%, #1992a3)); 310 | background-image: -moz-linear-gradient(top, #61c4b8, #1992a3); 311 | background-image: -webkit-linear-gradient(top, #61c4b8, #1992a3); 312 | background-image: linear-gradient(to bottom, #61c4b8, #1992a3); 313 | background-color: #61c4b8; 314 | } 315 | /* line 113, ../../src/sass/messenger-theme-future.sass */ 316 | ul.messenger-theme-future .messenger-message.alert-error .messenger-message-inner:before { 317 | background-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2RkNmE0NSIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iIzkxMzYxYSIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA=='); 318 | background-size: 100%; 319 | background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #dd6a45), color-stop(100%, #91361a)); 320 | background-image: -moz-linear-gradient(top, #dd6a45, #91361a); 321 | background-image: -webkit-linear-gradient(top, #dd6a45, #91361a); 322 | background-image: linear-gradient(to bottom, #dd6a45, #91361a); 323 | background-color: #dd6a45; 324 | } 325 | /* line 34, ../../src/sass/messenger-spinner.scss */ 326 | ul.messenger-theme-future .messenger-message.alert-error.messenger-retry-soon .messenger-spinner { 327 | width: 32px; 328 | height: 32px; 329 | background: transparent; 330 | } 331 | /* line 39, ../../src/sass/messenger-spinner.scss */ 332 | ul.messenger-theme-future .messenger-message.alert-error.messenger-retry-soon .messenger-spinner .messenger-spinner-side .messenger-spinner-fill { 333 | background: #dd6a45; 334 | -moz-animation-duration: 20s; 335 | -webkit-animation-duration: 20s; 336 | animation-duration: 20s; 337 | opacity: 1; 338 | } 339 | /* line 47, ../../src/sass/messenger-spinner.scss */ 340 | ul.messenger-theme-future .messenger-message.alert-error.messenger-retry-soon .messenger-spinner:after { 341 | content: ""; 342 | background: #333; 343 | position: absolute; 344 | width: 26px; 345 | height: 26px; 346 | border-radius: 50%; 347 | top: 3px; 348 | left: 3px; 349 | display: block; 350 | } 351 | /* line 34, ../../src/sass/messenger-spinner.scss */ 352 | ul.messenger-theme-future .messenger-message.alert-error.messenger-retry-later .messenger-spinner { 353 | width: 32px; 354 | height: 32px; 355 | background: transparent; 356 | } 357 | /* line 39, ../../src/sass/messenger-spinner.scss */ 358 | ul.messenger-theme-future .messenger-message.alert-error.messenger-retry-later .messenger-spinner .messenger-spinner-side .messenger-spinner-fill { 359 | background: #dd6a45; 360 | -moz-animation-duration: 600s; 361 | -webkit-animation-duration: 600s; 362 | animation-duration: 600s; 363 | opacity: 1; 364 | } 365 | /* line 47, ../../src/sass/messenger-spinner.scss */ 366 | ul.messenger-theme-future .messenger-message.alert-error.messenger-retry-later .messenger-spinner:after { 367 | content: ""; 368 | background: #333; 369 | position: absolute; 370 | width: 26px; 371 | height: 26px; 372 | border-radius: 50%; 373 | top: 3px; 374 | left: 3px; 375 | display: block; 376 | } 377 | /* line 125, ../../src/sass/messenger-theme-future.sass */ 378 | ul.messenger-theme-future .messenger-message-slot.messenger-last .messenger-message { 379 | -moz-border-radius: 4px 4px 0px 0px; 380 | -webkit-border-radius: 4px; 381 | border-radius: 4px 4px 0px 0px; 382 | } 383 | /* line 128, ../../src/sass/messenger-theme-future.sass */ 384 | ul.messenger-theme-future .messenger-message-slot.messenger-first .messenger-message { 385 | -moz-border-radius: 0px 0px 4px 4px; 386 | -webkit-border-radius: 0px; 387 | border-radius: 0px 0px 4px 4px; 388 | -moz-box-shadow: inset 0px 1px rgba(255, 255, 255, 0.13), inset 48px 0px 0px rgba(0, 0, 0, 0.3), inset 46px 0px 0px rgba(255, 255, 255, 0.07); 389 | -webkit-box-shadow: inset 0px 1px rgba(255, 255, 255, 0.13), inset 48px 0px 0px rgba(0, 0, 0, 0.3), inset 46px 0px 0px rgba(255, 255, 255, 0.07); 390 | box-shadow: inset 0px 1px rgba(255, 255, 255, 0.13), inset 48px 0px 0px rgba(0, 0, 0, 0.3), inset 46px 0px 0px rgba(255, 255, 255, 0.07); 391 | } 392 | /* line 132, ../../src/sass/messenger-theme-future.sass */ 393 | ul.messenger-theme-future .messenger-message-slot.messenger-first.messenger-last .messenger-message { 394 | -moz-border-radius: 4px; 395 | -webkit-border-radius: 4px; 396 | border-radius: 4px; 397 | -moz-box-shadow: inset 48px 0px 0px rgba(0, 0, 0, 0.3), inset 46px 0px 0px rgba(255, 255, 255, 0.07); 398 | -webkit-box-shadow: inset 48px 0px 0px rgba(0, 0, 0, 0.3), inset 46px 0px 0px rgba(255, 255, 255, 0.07); 399 | box-shadow: inset 48px 0px 0px rgba(0, 0, 0, 0.3), inset 46px 0px 0px rgba(255, 255, 255, 0.07); 400 | } 401 | /* line 136, ../../src/sass/messenger-theme-future.sass */ 402 | ul.messenger-theme-future .messenger-spinner { 403 | display: block; 404 | position: absolute; 405 | left: 7px; 406 | top: 50%; 407 | margin-top: -18px; 408 | z-index: 999; 409 | height: 32px; 410 | width: 32px; 411 | z-index: 10; 412 | } -------------------------------------------------------------------------------- /vendor/assets/javascripts/messenger.min.js: -------------------------------------------------------------------------------- 1 | /*! messenger 1.5.0 */ 2 | (function () { var e, t = window.Messenger; e = window.Messenger = function () { return e._call.apply(this, arguments) }, window.Messenger.noConflict = function () { return window.Messenger = t, e } })(), window.Messenger._ = function () { if (window._) return window._; var e = Array.prototype, t = Object.prototype, n = Function.prototype, s = (e.push, e.slice), r = (e.concat, t.toString); t.hasOwnProperty; var o = e.forEach, i = (e.map, e.reduce, e.reduceRight, e.filter), a = (e.every, e.some, e.indexOf, e.lastIndexOf, Array.isArray, Object.keys), l = n.bind, u = {}, c = {}, h = u.each = u.forEach = function (e, t, n) { if (null != e) if (o && e.forEach === o) e.forEach(t, n); else if (e.length === +e.length) { for (var s = 0, r = e.length; r > s; s++)if (t.call(n, e[s], s, e) === c) return } else for (var i in e) if (u.has(e, i) && t.call(n, e[i], i, e) === c) return }; u.result = function (e, t) { if (null == e) return null; var n = e[t]; return u.isFunction(n) ? n.call(e) : n }, u.once = function (e) { var t, n = !1; return function () { return n ? t : (n = !0, t = e.apply(this, arguments), e = null, t) } }; var p = 0; return u.uniqueId = function (e) { var t = ++p + ""; return e ? e + t : t }, u.filter = u.select = function (e, t, n) { var s = []; return null == e ? s : i && e.filter === i ? e.filter(t, n) : (h(e, function (e, r, o) { t.call(n, e, r, o) && (s[s.length] = e) }), s) }, h(["Arguments", "Function", "String", "Number", "Date", "RegExp"], function (e) { u["is" + e] = function (t) { return r.call(t) == "[object " + e + "]" } }), u.defaults = function (e) { return h(s.call(arguments, 1), function (t) { if (t) for (var n in t) null == e[n] && (e[n] = t[n]) }), e }, u.extend = function (e) { return h(s.call(arguments, 1), function (t) { if (t) for (var n in t) e[n] = t[n] }), e }, u.keys = a || function (e) { if (e !== Object(e)) throw new TypeError("Invalid object"); var t = []; for (var n in e) u.has(e, n) && (t[t.length] = n); return t }, u.bind = function (e, t) { if (e.bind === l && l) return l.apply(e, s.call(arguments, 1)); var n = s.call(arguments, 2); return function () { return e.apply(t, n.concat(s.call(arguments))) } }, u.isObject = function (e) { return e === Object(e) }, u }(), window.Messenger.Events = function () { if (window.Backbone && Backbone.Events) return Backbone.Events; var e = function () { var e = /\s+/, t = function (t, n, s, r) { if (!s) return !0; if ("object" == typeof s) for (var o in s) t[n].apply(t, [o, s[o]].concat(r)); else { if (!e.test(s)) return !0; for (var i = s.split(e), a = 0, l = i.length; l > a; a++)t[n].apply(t, [i[a]].concat(r)) } }, n = function (e, t) { var n, s = -1, r = e.length; switch (t.length) { case 0: for (; r > ++s;)(n = e[s]).callback.call(n.ctx); return; case 1: for (; r > ++s;)(n = e[s]).callback.call(n.ctx, t[0]); return; case 2: for (; r > ++s;)(n = e[s]).callback.call(n.ctx, t[0], t[1]); return; case 3: for (; r > ++s;)(n = e[s]).callback.call(n.ctx, t[0], t[1], t[2]); return; default: for (; r > ++s;)(n = e[s]).callback.apply(n.ctx, t) } }, s = { on: function (e, n, s) { if (!t(this, "on", e, [n, s]) || !n) return this; this._events || (this._events = {}); var r = this._events[e] || (this._events[e] = []); return r.push({ callback: n, context: s, ctx: s || this }), this }, once: function (e, n, s) { if (!t(this, "once", e, [n, s]) || !n) return this; var r = this, o = _.once(function () { r.off(e, o), n.apply(this, arguments) }); return o._callback = n, this.on(e, o, s), this }, off: function (e, n, s) { var r, o, i, a, l, u, c, h; if (!this._events || !t(this, "off", e, [n, s])) return this; if (!e && !n && !s) return this._events = {}, this; for (a = e ? [e] : _.keys(this._events), l = 0, u = a.length; u > l; l++)if (e = a[l], r = this._events[e]) { if (i = [], n || s) for (c = 0, h = r.length; h > c; c++)o = r[c], (n && n !== o.callback && n !== o.callback._callback || s && s !== o.context) && i.push(o); this._events[e] = i } return this }, trigger: function (e) { if (!this._events) return this; var s = Array.prototype.slice.call(arguments, 1); if (!t(this, "trigger", e, s)) return this; var r = this._events[e], o = this._events.all; return r && n(r, s), o && n(o, arguments), this }, listenTo: function (e, t, n) { var s = this._listeners || (this._listeners = {}), r = e._listenerId || (e._listenerId = _.uniqueId("l")); return s[r] = e, e.on(t, "object" == typeof t ? this : n, this), this }, stopListening: function (e, t, n) { var s = this._listeners; if (s) { if (e) e.off(t, "object" == typeof t ? this : n, this), t || n || delete s[e._listenerId]; else { "object" == typeof t && (n = this); for (var r in s) s[r].off(t, n, this); this._listeners = {} } return this } } }; return s.bind = s.on, s.unbind = s.off, s }; return e() }(), function () { var e, t, n, s, r, o, i, a, l, u, c, h = {}.hasOwnProperty, p = function (e, t) { function n() { this.constructor = e } for (var s in t) h.call(t, s) && (e[s] = t[s]); return n.prototype = t.prototype, e.prototype = new n, e.__super__ = t.prototype, e }, d = [].slice, f = [].indexOf || function (e) { for (var t = 0, n = this.length; n > t; t++)if (t in this && this[t] === e) return t; return -1 }; e = jQuery, o = null != (l = window._) ? l : window.Messenger._, s = null != (u = "undefined" != typeof Backbone && null !== Backbone ? Backbone.Events : void 0) ? u : window.Messenger.Events, n = function () { function t(t) { e.extend(this, s), o.isObject(t) && (t.el && this.setElement(t.el), this.model = t.model), this.initialize.apply(this, arguments) } return t.prototype.setElement = function (t) { return this.$el = e(t), this.el = this.$el[0] }, t.prototype.delegateEvents = function (e) { var t, n, s, r, i, a, l; if (e || (e = o.result(this, "events"))) { this.undelegateEvents(), t = /^(\S+)\s*(.*)$/, l = []; for (s in e) { if (i = e[s], o.isFunction(i) || (i = this[e[s]]), !i) throw Error('Method "' + e[s] + '" does not exist'); r = s.match(t), n = r[1], a = r[2], i = o.bind(i, this), n += ".delegateEvents" + this.cid, "" === a ? l.push(this.jqon(n, i)) : l.push(this.jqon(n, a, i)) } return l } }, t.prototype.jqon = function (e, t, n) { var s; return null != this.$el.on ? (s = this.$el).on.apply(s, arguments) : (null == n && (n = t, t = void 0), null != t ? this.$el.delegate(t, e, n) : this.$el.bind(e, n)) }, t.prototype.jqoff = function (e) { var t; return null != this.$el.off ? (t = this.$el).off.apply(t, arguments) : (this.$el.undelegate(), this.$el.unbind(e)) }, t.prototype.undelegateEvents = function () { return this.jqoff(".delegateEvents" + this.cid) }, t.prototype.remove = function () { return this.undelegateEvents(), this.$el.remove() }, t }(), i = function (t) { function n() { return n.__super__.constructor.apply(this, arguments) } return p(n, t), n.prototype.defaults = { hideAfter: 10, scroll: !0, closeButtonText: "×", escapeText: !1 }, n.prototype.initialize = function (t) { return null == t && (t = {}), this.shown = !1, this.rendered = !1, this.messenger = t.messenger, this.options = e.extend({}, this.options, t, this.defaults) }, n.prototype.show = function () { var e; return this.rendered || this.render(), this.$message.removeClass("messenger-hidden"), e = this.shown, this.shown = !0, e ? void 0 : this.trigger("show") }, n.prototype.hide = function () { var e; if (this.rendered) return this.$message.addClass("messenger-hidden"), e = this.shown, this.shown = !1, e ? this.trigger("hide") : void 0 }, n.prototype.cancel = function () { return this.hide() }, n.prototype.update = function (t) { var n, s = this; return o.isString(t) && (t = { message: t }), e.extend(this.options, t), this.lastUpdate = new Date, this.rendered = !1, this.events = null != (n = this.options.events) ? n : {}, this.render(), this.actionsToEvents(), this.delegateEvents(), this.checkClickable(), this.options.hideAfter ? (this.$message.addClass("messenger-will-hide-after"), null != this._hideTimeout && clearTimeout(this._hideTimeout), this._hideTimeout = setTimeout(function () { return s.hide() }, 1e3 * this.options.hideAfter)) : this.$message.removeClass("messenger-will-hide-after"), this.options.hideOnNavigate ? (this.$message.addClass("messenger-will-hide-on-navigate"), null != ("undefined" != typeof Backbone && null !== Backbone ? Backbone.history : void 0) && Backbone.history.on("route", function () { return s.hide() })) : this.$message.removeClass("messenger-will-hide-on-navigate"), this.trigger("update", this) }, n.prototype.scrollTo = function () { return this.options.scroll ? e.scrollTo(this.$el, { duration: 400, offset: { left: 0, top: -20 } }) : void 0 }, n.prototype.timeSinceUpdate = function () { return this.lastUpdate ? new Date - this.lastUpdate : null }, n.prototype.actionsToEvents = function () { var e, t, n, s, r = this; n = this.options.actions, s = []; for (t in n) e = n[t], s.push(this.events['click [data-action="' + t + '"] a'] = function (e) { return function (n) { return n.preventDefault(), n.stopPropagation(), r.trigger("action:" + t, e, n), e.action.call(r, n, r) } }(e)); return s }, n.prototype.checkClickable = function () { var e, t, n, s; n = this.events, s = []; for (t in n) e = n[t], "click" === t ? s.push(this.$message.addClass("messenger-clickable")) : s.push(void 0); return s }, n.prototype.undelegateEvents = function () { var e; return n.__super__.undelegateEvents.apply(this, arguments), null != (e = this.$message) ? e.removeClass("messenger-clickable") : void 0 }, n.prototype.parseActions = function () { var t, n, s, r, o, i; n = [], o = this.options.actions; for (r in o) t = o[r], s = e.extend({}, t), s.name = r, null == (i = s.label) && (s.label = r), n.push(s); return n }, n.prototype.template = function (t) { var n, s, r, o, i, a, l, u, c, h, p = this; for (i = e("
"), t.showCloseButton && (r = e('