inputosaurus jQuery to native so we can drop jquery-ui
20
README.md
|
|
@ -79,11 +79,13 @@ Things might work in Edge 18, Firefox 50-62 and Chrome 54-68 due to one polyfill
|
|||
* Replaced knockoutjs 3.4 with a modified 3.5.1
|
||||
* Replaced knockout-sortable with native HTML5 drag&drop
|
||||
* Replaced simplestatemanager with @media
|
||||
* Replaced inputosaurus to native
|
||||
* Removed pikaday
|
||||
* Removed underscore
|
||||
* Removed polyfills
|
||||
* Removed Modernizr
|
||||
* Removed nanoscroll
|
||||
* Removed jquery-ui
|
||||
* Removed jquery-scrollstop
|
||||
* Removed jquery-mousewheel
|
||||
* Removed matchmedia-polyfill
|
||||
|
|
@ -94,22 +96,22 @@ Things might work in Edge 18, Firefox 50-62 and Chrome 54-68 due to one polyfill
|
|||
|js/* |1.14.0 |native |
|
||||
|----------- |--------: |--------: |
|
||||
|admin.js |2.130.942 | 851.365 |
|
||||
|app.js |4.184.455 |2.496.337 |
|
||||
|app.js |4.184.455 |2.494.604 |
|
||||
|boot.js | 671.522 | 5.777 |
|
||||
|libs.js | 647.614 | 311.853 |
|
||||
|libs.js | 647.614 | 227.246 |
|
||||
|polyfills.js | 325.834 | 0 |
|
||||
|TOTAL |7.960.367 |3.665.332 |
|
||||
|TOTAL |7.960.367 |3.578.992 |
|
||||
|
||||
|js/min/* |1.14.0 |native |gzip 1.14 |gzip |brotli |
|
||||
|--------------- |--------: |--------: |--------: |--------: |--------: |
|
||||
|admin.min.js | 252.147 | 116.656 | 73.657 | 33.346 | 28.783 |
|
||||
|app.min.js | 511.202 | 340.291 |140.462 | 89.644 | 72.618 |
|
||||
|app.min.js | 511.202 | 340.071 |140.462 | 89.602 | 72.526 |
|
||||
|boot.min.js | 66.007 | 3.117 | 22.567 | 1.563 | 1.333 |
|
||||
|libs.min.js | 572.545 | 288.859 |176.720 | 90.396 | 79.821 |
|
||||
|libs.min.js | 572.545 | 206.304 |176.720 | 69.988 | 62.272 |
|
||||
|polyfills.min.js | 32.452 | 0 | 11.312 | 0 | 0 |
|
||||
|TOTAL |1.434.353 | 748.923 |424.718 |214.949 |182.555 |
|
||||
|TOTAL |1.434.353 | 666.148 |424.718 |194.499 |164.914 |
|
||||
|
||||
685.430 bytes (209.769 gzip) is around 48% smaller and faster.
|
||||
768.205 bytes (230.219 gzip) is around 54% smaller and faster.
|
||||
|
||||
### CSS changes
|
||||
|
||||
|
|
@ -134,8 +136,8 @@ Things might work in Edge 18, Firefox 50-62 and Chrome 54-68 due to one polyfill
|
|||
|
||||
|css/* |1.14.0 |native |gzip 1.14 |gzip |brotli |
|
||||
|-------------- |-------: |-------: |------: |------: |------: |
|
||||
|app.css | 340.334 | 254.026 | 46,959 | 36.763 | 30.920 |
|
||||
|app.min.css | 274.791 | 207.208 | 39.618 | 32.074 | 27.219 |
|
||||
|app.css | 340.334 | 233.750 | 46,959 | 33.604 | 28.245 |
|
||||
|app.min.css | 274.791 | 200.511 | 39.618 | 30.790 | 26.080 |
|
||||
|boot.css | | 2.534 | | 837 | 668 |
|
||||
|boot.min.css | | 2.055 | | 732 | 560 |
|
||||
|
||||
|
|
|
|||
23
dev/External/User/ko.js
vendored
|
|
@ -1,5 +1,4 @@
|
|||
const ko = window.ko,
|
||||
$ = jQuery,
|
||||
rlContentType = 'application/x-rainloop-action',
|
||||
validTransfer = data => ['move','copy'].includes(data.dropEffect) // effectAllowed
|
||||
&& data.getData('application/x-rainloop-messages');
|
||||
|
|
@ -39,24 +38,18 @@ ko.bindingHandlers.moment = {
|
|||
ko.bindingHandlers.emailsTags = {
|
||||
init: (element, fValueAccessor, fAllBindingsAccessor) => {
|
||||
const EmailModel = require('Model/Email').default,
|
||||
$el = $(element),
|
||||
fValue = fValueAccessor(),
|
||||
fAllBindings = fAllBindingsAccessor(),
|
||||
inputDelimiters = [',', ';', '\n'];
|
||||
|
||||
$el.inputosaurus({
|
||||
focusCallback: value => {
|
||||
if (fValue && fValue.focused) {
|
||||
fValue.focused(!!value);
|
||||
}
|
||||
},
|
||||
element.inputosaurus = new window.Inputosaurus(element, {
|
||||
focusCallback: value => fValue && fValue.focused && fValue.focused(!!value),
|
||||
autoCompleteSource: fAllBindings.autoCompleteSource || null,
|
||||
splitHook: value => {
|
||||
const v = value.trim();
|
||||
if (v && inputDelimiters.includes(v.substr(-1))) {
|
||||
return EmailModel.splitEmailLine(value);
|
||||
}
|
||||
return null;
|
||||
return (v && inputDelimiters.includes(v.substr(-1)))
|
||||
? EmailModel.splitEmailLine(value)
|
||||
: null;
|
||||
},
|
||||
parseHook: input =>
|
||||
input.map(inputValue => {
|
||||
|
|
@ -72,8 +65,8 @@ ko.bindingHandlers.emailsTags = {
|
|||
});
|
||||
|
||||
if (fValue && fValue.focused && fValue.focused.subscribe) {
|
||||
fValue.focused.subscribe((value) => {
|
||||
$el.inputosaurus(value ? 'focus' : 'blur');
|
||||
fValue.focused.subscribe(value => {
|
||||
element.inputosaurus[value ? 'focus' : 'blur']();
|
||||
});
|
||||
}
|
||||
},
|
||||
|
|
@ -83,7 +76,7 @@ ko.bindingHandlers.emailsTags = {
|
|||
if (element.EmailsTagsValue !== value) {
|
||||
element.value = value;
|
||||
element.EmailsTagsValue = value;
|
||||
$(element).inputosaurus('refresh');
|
||||
element.inputosaurus.refresh();
|
||||
}
|
||||
}
|
||||
};
|
||||
|
|
|
|||
|
|
@ -304,10 +304,6 @@ html.rl-left-panel-disabled {
|
|||
.hide-on-panel-disabled {
|
||||
display: none;
|
||||
}
|
||||
|
||||
&.ui-state-disabled {
|
||||
opacity: 1;
|
||||
}
|
||||
}
|
||||
|
||||
#rl-right {
|
||||
|
|
|
|||
|
|
@ -92,19 +92,6 @@
|
|||
cursor: pointer;
|
||||
opacity: 0.5;
|
||||
}
|
||||
|
||||
&.ui-sortable-helper {
|
||||
background: #F5F5F5;
|
||||
border: 1px solid #DDD;
|
||||
|
||||
.button-delete, .delete-account {
|
||||
display: none;
|
||||
}
|
||||
|
||||
td {
|
||||
border-width: 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.identity-item {
|
||||
|
|
@ -134,18 +121,5 @@
|
|||
cursor: pointer;
|
||||
opacity: 0.5;
|
||||
}
|
||||
|
||||
&.ui-sortable-helper {
|
||||
background: #F5F5F5;
|
||||
border: 1px solid #DDD;
|
||||
|
||||
.button-delete, .delete-identity {
|
||||
display: none;
|
||||
}
|
||||
|
||||
td {
|
||||
border-width: 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -88,18 +88,5 @@
|
|||
cursor: pointer;
|
||||
opacity: 0.5;
|
||||
}
|
||||
|
||||
&.ui-sortable-helper {
|
||||
background: #F5F5F5;
|
||||
border: 1px solid #DDD;
|
||||
|
||||
.button-delete, .delete-filter {
|
||||
display: none;
|
||||
}
|
||||
|
||||
td {
|
||||
border-width: 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -77,18 +77,5 @@
|
|||
cursor: pointer;
|
||||
opacity: 0.5;
|
||||
}
|
||||
|
||||
&.ui-sortable-helper {
|
||||
background: #F5F5F5;
|
||||
border: 1px solid #DDD;
|
||||
|
||||
.button-delete, .delete-template {
|
||||
display: none;
|
||||
}
|
||||
|
||||
td {
|
||||
border-width: 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -26,10 +26,6 @@
|
|||
color: #555;
|
||||
z-index: 100;
|
||||
|
||||
&.ui-draggable.ui-draggable-dragging {
|
||||
z-index: 101;
|
||||
}
|
||||
|
||||
position: relative;
|
||||
|
||||
a {
|
||||
|
|
@ -74,10 +70,6 @@
|
|||
}
|
||||
}
|
||||
|
||||
.ui-autocomplete {
|
||||
z-index: 2000;
|
||||
}
|
||||
|
||||
.inputosaurus-fake-span {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
|
|
|
|||
|
|
@ -51,7 +51,6 @@ config.paths.css = {
|
|||
name: 'app.css',
|
||||
src: [
|
||||
'vendors/normalize.css/normalize.css',
|
||||
'vendors/jquery-ui/css/smoothness/jquery-ui-1.12.1.custom.css',
|
||||
'vendors/fontastic/styles.css',
|
||||
'vendors/inputosaurus/inputosaurus.css',
|
||||
'vendors/flags/flags-fixed.css',
|
||||
|
|
@ -78,7 +77,6 @@ config.paths.js = {
|
|||
'dev/polyfill.js',
|
||||
'dev/prototype.js',
|
||||
'node_modules/jquery/dist/jquery.slim.min.js',
|
||||
'vendors/jquery-ui/js/jquery-ui-1.12.1.custom.min.js', // custom
|
||||
'vendors/inputosaurus/inputosaurus.js', // custom (modified)
|
||||
'vendors/routes/signals.min.js', // fixed
|
||||
'vendors/routes/hasher.min.js', // fixed
|
||||
|
|
|
|||
701
vendors/inputosaurus/inputosaurus.js
vendored
|
|
@ -4,11 +4,6 @@
|
|||
* Must be instantiated on an <input> element
|
||||
* Allows multiple input items. Each item is represented with a removable tag that appears to be inside the input area.
|
||||
*
|
||||
* @requires:
|
||||
*
|
||||
* jQuery 3.5+
|
||||
* jQueryUI 1.12+ Core
|
||||
*
|
||||
* @version 0.1.6
|
||||
* @author Dan Kielp <dan@sproutsocial.com>
|
||||
* @created October 3,2012
|
||||
|
|
@ -17,15 +12,36 @@
|
|||
* @modified by DJMaze
|
||||
*/
|
||||
|
||||
(() => {
|
||||
|
||||
($ => {
|
||||
const doc = document,
|
||||
createEl = (name, attr) => {
|
||||
let el = doc.createElement(name);
|
||||
attr && Object.entries(attr).forEach(([k,v]) => el.setAttribute(k,v));
|
||||
return el;
|
||||
},
|
||||
datalist = createEl('datalist',{id:"inputosaurus-datalist"}),
|
||||
fakeSpan = createEl('span',{class:"inputosaurus-fake-span"}),
|
||||
|
||||
const fakeSpan = $('<span class="inputosaurus-fake-span"></span>');
|
||||
contentType = 'application/x-inputosaurus-item',
|
||||
getTransferData = data => 'move' === data.dropEffect && data.getData(contentType);
|
||||
|
||||
$('body').append(fakeSpan);
|
||||
$.widget("ui.inputosaurus", {
|
||||
doc.body.append(fakeSpan, datalist);
|
||||
|
||||
options: {
|
||||
let removeDragged = null;
|
||||
|
||||
window.Inputosaurus = class {
|
||||
|
||||
constructor(element, options) {
|
||||
|
||||
var self = this,
|
||||
els = {};
|
||||
|
||||
self.element = element;
|
||||
|
||||
self._focusTriggerTimer = 0;
|
||||
|
||||
self.options = Object.assign({
|
||||
|
||||
// bindable events
|
||||
//
|
||||
|
|
@ -34,260 +50,186 @@
|
|||
|
||||
// while typing, the user can separate values using these delimiters
|
||||
// the value tags are created on the fly when an inputDelimiter is detected
|
||||
inputDelimiters : [',', ';'],
|
||||
|
||||
allowDragAndDrop : true,
|
||||
inputDelimiters : [',', ';', '\n'],
|
||||
|
||||
focusCallback : null,
|
||||
|
||||
parseOnBlur : false,
|
||||
|
||||
// simply passing an autoComplete source (array, string or function) will instantiate autocomplete functionality
|
||||
autoCompleteSource : '',
|
||||
|
||||
// When forcing users to select from the autocomplete list, allow them to press 'Enter' to select an item if it's the only option left.
|
||||
activateFinalResult : false,
|
||||
|
||||
// manipulate and return the input value after parseInput() parsing
|
||||
// the array of tag names is passed and expected to be returned as an array after manipulation
|
||||
parseHook : null,
|
||||
|
||||
splitHook : null
|
||||
},
|
||||
}, options);
|
||||
|
||||
_create: function() {
|
||||
var widget = this,
|
||||
els = {},
|
||||
o = widget.options,
|
||||
placeholder = this.element.attr('placeholder') || null;
|
||||
|
||||
this._chosenValues = [];
|
||||
self._chosenValues = [];
|
||||
|
||||
// Create the elements
|
||||
els.ul = $('<ul class="inputosaurus-container"></ul>');
|
||||
els.ul = createEl('ul',{class:"inputosaurus-container"});
|
||||
|
||||
if (this.options.allowDragAndDrop)
|
||||
{
|
||||
els.ul.droppable({
|
||||
'drop': (event, ui) => {
|
||||
|
||||
ui.draggable.addClass('inputosaurus-dropped');
|
||||
els.input.val(ui.draggable.data('inputosaurus-value'));
|
||||
|
||||
if (ui.draggable.__widget)
|
||||
{
|
||||
ui.draggable.__widget._removeDraggedTag(ui.draggable);
|
||||
}
|
||||
|
||||
widget.parseInput();
|
||||
els.ul.addEventListener("dragover", e => getTransferData(e.dataTransfer) && e.preventDefault());
|
||||
els.ul.addEventListener("drop", e => {
|
||||
let value = getTransferData(e.dataTransfer);
|
||||
if (value) {
|
||||
els.input.value = value;
|
||||
removeDragged();
|
||||
self.parseInput();
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
els.input = $('<input type="text" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false" />');
|
||||
// els.input = $('<input type="email" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false" />');
|
||||
els.inputCont = $('<li class="inputosaurus-input inputosaurus-required"></li>');
|
||||
els.origInputCont = $('<li class="inputosaurus-input-hidden inputosaurus-required"></li>');
|
||||
els.input = createEl('input',{type:"text", list:datalist.id,
|
||||
autocomplete:"off", autocorrect:"off", autocapitalize:"off", spellcheck:"false"});
|
||||
|
||||
els.lastEdit = '';
|
||||
|
||||
els.input.on('focus', () => {
|
||||
widget._focusTrigger(true);
|
||||
}).on('blur', () => {
|
||||
widget._focusTrigger(false);
|
||||
});
|
||||
els.input.addEventListener('focus', () => self._focusTrigger(true));
|
||||
els.input.addEventListener('blur', () => self._focusTrigger(false));
|
||||
|
||||
// define starting placeholder
|
||||
if (placeholder) {
|
||||
o.placeholder = placeholder;
|
||||
els.input.attr('placeholder', o.placeholder);
|
||||
if (element.placeholder) {
|
||||
els.input.placeholder = element.placeholder;
|
||||
}
|
||||
|
||||
this.element.replaceWith(els.ul);
|
||||
els.origInputCont.append(this.element).hide();
|
||||
element.replaceWith(els.ul);
|
||||
element.hidden = true;
|
||||
|
||||
els.inputCont = createEl('li',{class:"inputosaurus-input"});
|
||||
els.inputCont.append(els.input);
|
||||
els.ul.append(els.inputCont);
|
||||
els.ul.append(els.origInputCont);
|
||||
|
||||
this.elements = els;
|
||||
self.elements = els;
|
||||
|
||||
widget._attachEvents();
|
||||
els.input.addEventListener('keyup', e => self._inputKeypress(e));
|
||||
els.input.addEventListener('keydown', e => self._inputKeypress(e));
|
||||
els.input.addEventListener('change', e => self._inputKeypress(e));
|
||||
els.input.addEventListener('input', e => self._inputKeypress(e));
|
||||
els.input.addEventListener('focus', () => els.input.value || self._resetAutocomplete());
|
||||
els.input.addEventListener('blur', e => self.parseInput(e));
|
||||
|
||||
els.ul.addEventListener('click', e => self._focus(e));
|
||||
els.ul.addEventListener('dblclick', e => e.currentTarget.closest('li') && self._editTag(e));
|
||||
|
||||
// if instantiated input already contains a value, parse that junk
|
||||
if($.trim(this.element.val())){
|
||||
els.input.val( this.element.val() );
|
||||
this.parseInput();
|
||||
if (element.value.trim()) {
|
||||
els.input.value = element.value;
|
||||
self.parseInput();
|
||||
}
|
||||
|
||||
this._instAutocomplete();
|
||||
},
|
||||
self._updateAutocomplete = self.options.autoCompleteSource
|
||||
? (() => {
|
||||
let value = self.elements.input.value.trim();
|
||||
if (datalist.inputValue !== value) {
|
||||
datalist.inputValue = value;
|
||||
value.length && self.options.autoCompleteSource(
|
||||
{term:value},
|
||||
items => {
|
||||
self._resetAutocomplete();
|
||||
items && items.forEach(item => datalist.append(new Option(item)));
|
||||
}
|
||||
)
|
||||
}
|
||||
}).throttle(500)
|
||||
: () => {};
|
||||
}
|
||||
|
||||
_focusTriggerTimer : 0,
|
||||
|
||||
_focusTrigger : function (bValue) {
|
||||
var widget = this;
|
||||
clearTimeout(this._focusTriggerTimer);
|
||||
this._focusTriggerTimer = setTimeout(() => {
|
||||
widget.elements.ul[!bValue ? 'removeClass' : 'addClass']('inputosaurus-focused');
|
||||
widget.options.focusCallback(bValue);
|
||||
_focusTrigger(bValue) {
|
||||
var self = this;
|
||||
clearTimeout(self._focusTriggerTimer);
|
||||
self._focusTriggerTimer = setTimeout(() => {
|
||||
self.elements.ul.classList.toggle('inputosaurus-focused', bValue);
|
||||
self.options.focusCallback(bValue);
|
||||
}, 10);
|
||||
},
|
||||
|
||||
_instAutocomplete : function() {
|
||||
if(this.options.autoCompleteSource){
|
||||
var widget = this;
|
||||
|
||||
this.elements.input.autocomplete({
|
||||
position : {
|
||||
of : this.elements.ul
|
||||
},
|
||||
source : this.options.autoCompleteSource,
|
||||
minLength : 1,
|
||||
autoFocus : true,
|
||||
select : (ev, ui) => {
|
||||
ev.preventDefault();
|
||||
widget.elements.input.val(ui.item.value);
|
||||
widget.parseInput();
|
||||
},
|
||||
open : function() {
|
||||
var menu = $(this).data('ui-autocomplete').menu,
|
||||
$menuItems;
|
||||
|
||||
menu.element.width(widget.elements.ul.outerWidth() - 6);
|
||||
|
||||
// auto-activate the result if it's the only one
|
||||
if(widget.options.activateFinalResult){
|
||||
$menuItems = menu.element.find('li');
|
||||
|
||||
// activate single item to allow selection upon pressing 'Enter'
|
||||
if($menuItems.length === 1){
|
||||
menu[menu.activate ? 'activate' : 'focus']($.Event('click'), $menuItems);
|
||||
}
|
||||
}
|
||||
},
|
||||
focus: () => false
|
||||
});
|
||||
}
|
||||
},
|
||||
|
||||
_autoCompleteMenuPosition : function() {
|
||||
var widget;
|
||||
if(this.options.autoCompleteSource){
|
||||
widget = this.elements.input.data('ui-autocomplete');
|
||||
widget && widget.menu.element.position({
|
||||
of: this.elements.ul,
|
||||
my: 'left top',
|
||||
at: 'left bottom',
|
||||
collision: 'none'
|
||||
});
|
||||
_resetAutocomplete() {
|
||||
datalist.textContent = '';
|
||||
}
|
||||
},
|
||||
|
||||
parseInput : function(ev) {
|
||||
var widget = (ev && ev.data.widget) || this,
|
||||
parseInput(ev) {
|
||||
var self = this,
|
||||
val,
|
||||
hook,
|
||||
delimiterFound = false,
|
||||
values = [];
|
||||
|
||||
val = widget.elements.input.val();
|
||||
val = self.elements.input.value;
|
||||
|
||||
if (val) {
|
||||
hook = widget.options.splitHook(val);
|
||||
hook = self.options.splitHook(val);
|
||||
}
|
||||
|
||||
if (hook) {
|
||||
values = hook;
|
||||
} else if(delimiterFound !== false){
|
||||
} else if (delimiterFound !== false) {
|
||||
values = val.split(delimiterFound);
|
||||
} else if(!ev || ev.which === $.ui.keyCode.ENTER && !$('.ui-menu-item .ui-state-focus').length && !$('#ui-active-menuitem').length){
|
||||
} else if (!ev || ev.key == 'Enter') {
|
||||
values.push(val);
|
||||
ev && ev.preventDefault();
|
||||
|
||||
// prevent autoComplete menu click from causing a false 'blur'
|
||||
} else if(ev.type === 'blur' && !$('#ui-active-menuitem').length){
|
||||
} else if(ev.type === 'blur'){
|
||||
values.push(val);
|
||||
}
|
||||
|
||||
values = widget.options.parseHook(values);
|
||||
values = self.options.parseHook(values);
|
||||
|
||||
if(values.length){
|
||||
widget._setChosen(values);
|
||||
widget.elements.input.val('');
|
||||
widget._resizeInput();
|
||||
if (values.length) {
|
||||
self._setChosen(values);
|
||||
self.elements.input.value = '';
|
||||
self.resizeInput();
|
||||
}
|
||||
},
|
||||
|
||||
_inputFocus : function(ev) {
|
||||
var widget = ev.data.widget || this;
|
||||
|
||||
widget.elements.input.value || (widget.options.autoCompleteSource.length && widget.elements.input.autocomplete('search', ''));
|
||||
},
|
||||
|
||||
_inputKeypress : function(ev) {
|
||||
var widget = ev.data.widget || this;
|
||||
|
||||
ev.type === 'keyup' && widget._trigger('keyup', ev, widget);
|
||||
|
||||
switch(ev.which){
|
||||
case $.ui.keyCode.BACKSPACE:
|
||||
ev.type === 'keydown' && widget._inputBackspace(ev);
|
||||
break;
|
||||
|
||||
case $.ui.keyCode.LEFT:
|
||||
ev.type === 'keydown' && widget._inputBackspace(ev);
|
||||
break;
|
||||
|
||||
default :
|
||||
widget.parseInput(ev);
|
||||
widget._resizeInput(ev);
|
||||
}
|
||||
|
||||
// reposition autoComplete menu as <ul> grows and shrinks vertically
|
||||
if(widget.options.autoCompleteSource){
|
||||
setTimeout(()=>widget._autoCompleteMenuPosition.call(widget), 200);
|
||||
}
|
||||
},
|
||||
|
||||
resizeInput : function () {
|
||||
this._resizeInput();
|
||||
},
|
||||
|
||||
// the input dynamically resizes based on the length of its value
|
||||
_resizeInput : function(ev) {
|
||||
var widget = (ev && ev.data.widget) || this;
|
||||
fakeSpan.text(widget.elements.input.val());
|
||||
|
||||
// setTimeout(function () {
|
||||
var txtWidth = 25 + fakeSpan.width();
|
||||
txtWidth = txtWidth > 50 ? txtWidth : 50;
|
||||
txtWidth = txtWidth < 500 ? txtWidth : 500;
|
||||
widget.elements.input.width(txtWidth);
|
||||
// }, 1);
|
||||
},
|
||||
_inputKeypress(ev) {
|
||||
let self = this;
|
||||
|
||||
switch (ev.key) {
|
||||
case 'Backspace':
|
||||
case 'ArrowLeft':
|
||||
// if our input contains no value and backspace has been pressed, select the last tag
|
||||
_inputBackspace : function(ev) {
|
||||
var widget = (ev && ev.data.widget) || this,
|
||||
lastTag = widget.elements.ul.find('li:not(.inputosaurus-required):last');
|
||||
if (ev.type === 'keydown') {
|
||||
var lastTag = self.elements.inputCont.previousElementSibling,
|
||||
target = ev.currentTarget;
|
||||
|
||||
// IE goes back in history if the event isn't stopped
|
||||
ev.stopPropagation();
|
||||
|
||||
if((!$(ev.currentTarget).val() || (('selectionStart' in ev.currentTarget) && ev.currentTarget.selectionStart === 0 && ev.currentTarget.selectionEnd === 0)) && lastTag.length){
|
||||
if (lastTag && (!target.value
|
||||
|| (('selectionStart' in target) && target.selectionStart === 0 && target.selectionEnd === 0))
|
||||
) {
|
||||
ev.preventDefault();
|
||||
lastTag.find('a').focus();
|
||||
lastTag.querySelector('a').focus();
|
||||
}
|
||||
|
||||
},
|
||||
}
|
||||
break;
|
||||
|
||||
_editTag : function(ev) {
|
||||
var widget = (ev && ev.data.widget) || this,
|
||||
default :
|
||||
self.parseInput(ev);
|
||||
self.resizeInput();
|
||||
}
|
||||
|
||||
self._updateAutocomplete();
|
||||
}
|
||||
|
||||
// the input dynamically resizes based on the length of its value
|
||||
resizeInput() {
|
||||
let input = this.elements.input;
|
||||
fakeSpan.textContent = input.value;
|
||||
// setTimeout(function () {
|
||||
input.style.width = Math.min(500, Math.max(200, 25 + fakeSpan.clientWidth)) + 'px';
|
||||
// }, 1);
|
||||
}
|
||||
|
||||
_editTag(ev) {
|
||||
var self = this,
|
||||
tagName = '',
|
||||
$li = $(ev.currentTarget).closest('li'),
|
||||
tagKey = $li.data('inputosaurus');
|
||||
li = ev.currentTarget.closest('li'),
|
||||
tagKey = li.inputosaurusKey;
|
||||
|
||||
if(!tagKey){
|
||||
if (!tagKey) {
|
||||
return true;
|
||||
}
|
||||
|
||||
|
|
@ -298,7 +240,7 @@
|
|||
next = false
|
||||
;
|
||||
|
||||
$.each(widget._chosenValues, (i,v) => {
|
||||
self._chosenValues.forEach(v => {
|
||||
if (v.key === tagKey)
|
||||
{
|
||||
tagName = v.value;
|
||||
|
|
@ -312,97 +254,43 @@
|
|||
|
||||
if (oPrev)
|
||||
{
|
||||
widget.elements.lastEdit = oPrev.value;
|
||||
self.elements.lastEdit = oPrev.value;
|
||||
}
|
||||
|
||||
$li.after(widget.elements.inputCont);
|
||||
li.after(self.elements.inputCont);
|
||||
|
||||
widget.elements.input.val(tagName);
|
||||
setTimeout(() => widget.elements.input.select(), 100);
|
||||
self.elements.input.value = tagName;
|
||||
setTimeout(() => self.elements.input.select(), 100);
|
||||
|
||||
widget._removeTag(ev);
|
||||
widget._resizeInput(ev);
|
||||
},
|
||||
|
||||
_tagKeypress : ev => {
|
||||
var widget = ev.data.widget;
|
||||
switch(ev.which){
|
||||
|
||||
case $.ui.keyCode.DELETE:
|
||||
case $.ui.keyCode.BACKSPACE:
|
||||
ev && ev.preventDefault();
|
||||
ev && ev.stopPropagation();
|
||||
$(ev.currentTarget).trigger('click');
|
||||
break;
|
||||
|
||||
// 'e' - edit tag (removes tag and places value into visible input
|
||||
case 69:
|
||||
case $.ui.keyCode.ENTER:
|
||||
widget._editTag(ev);
|
||||
break;
|
||||
|
||||
case $.ui.keyCode.LEFT:
|
||||
ev.type === 'keydown' && widget._prevTag(ev);
|
||||
break;
|
||||
|
||||
case $.ui.keyCode.RIGHT:
|
||||
ev.type === 'keydown' && widget._nextTag(ev);
|
||||
break;
|
||||
|
||||
case $.ui.keyCode.DOWN:
|
||||
ev.type === 'keydown' && widget._focus(ev);
|
||||
break;
|
||||
self._removeTag(ev);
|
||||
self.resizeInput(ev);
|
||||
}
|
||||
},
|
||||
|
||||
// select the previous tag or input if no more tags exist
|
||||
_prevTag : function(ev) {
|
||||
var widget = (ev && ev.data.widget) || this,
|
||||
tag = $(ev.currentTarget).closest('li'),
|
||||
previous = tag.prev();
|
||||
|
||||
if(previous.is('li')){
|
||||
previous.find('a').focus();
|
||||
} else {
|
||||
widget._focus();
|
||||
}
|
||||
},
|
||||
|
||||
// select the next tag or input if no more tags exist
|
||||
_nextTag : function(ev) {
|
||||
var widget = (ev && ev.data.widget) || this,
|
||||
tag = $(ev.currentTarget).closest('li'),
|
||||
_nextTag(ev) {
|
||||
var tag = ev.currentTarget.closest('li'),
|
||||
next = tag.next();
|
||||
|
||||
if(next.is('li:not(.inputosaurus-input)')){
|
||||
next.find('a').focus();
|
||||
if (next !== this.elements.inputCont) {
|
||||
next.querySelector('a').focus();
|
||||
} else {
|
||||
widget._focus();
|
||||
this._focus();
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
// return the inputDelimiter that was detected or false if none were found
|
||||
_containsDelimiter : function(tagStr) {
|
||||
|
||||
var found = false;
|
||||
|
||||
$.each(this.options.inputDelimiters, (k,v) => {
|
||||
if(tagStr.indexOf(v) !== -1){
|
||||
found = v;
|
||||
_containsDelimiter(tagStr) {
|
||||
return -1 < this.options.inputDelimiters.findIndex(v => tagStr.indexOf(v) !== -1);
|
||||
}
|
||||
});
|
||||
|
||||
return found;
|
||||
},
|
||||
|
||||
_setChosen : function(valArr) {
|
||||
_setChosen(valArr) {
|
||||
var self = this;
|
||||
|
||||
if(!Array.isArray(valArr)){
|
||||
if (!Array.isArray(valArr)){
|
||||
return false;
|
||||
}
|
||||
|
||||
$.each(valArr, (k,a) => {
|
||||
valArr.forEach(a => {
|
||||
var v = '', exists = false,
|
||||
lastIndex = -1,
|
||||
obj = {
|
||||
|
|
@ -411,9 +299,9 @@
|
|||
value : ''
|
||||
};
|
||||
|
||||
v = $.trim(a[0]);
|
||||
v = a[0].trim();
|
||||
|
||||
$.each(self._chosenValues, (kk, vv) => {
|
||||
self._chosenValues.forEach((vv, kk) => {
|
||||
if (vv.value === self.elements.lastEdit)
|
||||
{
|
||||
lastIndex = kk;
|
||||
|
|
@ -422,7 +310,7 @@
|
|||
vv.value === v && (exists = true);
|
||||
});
|
||||
|
||||
if(v !== '' && a && a[1] && !exists){
|
||||
if (v !== '' && a && a[1] && !exists) {
|
||||
|
||||
obj.key = 'mi_' + Math.random().toString( 16 ).slice( 2, 10 );
|
||||
obj.value = v;
|
||||
|
|
@ -449,192 +337,159 @@
|
|||
}
|
||||
|
||||
self._setValue(self._buildValue());
|
||||
},
|
||||
|
||||
_buildValue : function() {
|
||||
var value = '';
|
||||
|
||||
$.each(this._chosenValues, (k,v) => {
|
||||
value += value.length ? ',' + v.value : v.value;
|
||||
});
|
||||
|
||||
return value;
|
||||
},
|
||||
|
||||
_setValue : function(value) {
|
||||
var val = this.element.val();
|
||||
|
||||
if(val !== value){
|
||||
this.element.val(value);
|
||||
this._trigger('change');
|
||||
}
|
||||
},
|
||||
|
||||
// @name text for tag
|
||||
// @className optional className for <li>
|
||||
_createTag : function(name, key, obj) {
|
||||
if (name !== undefined && obj) {
|
||||
_buildValue() {
|
||||
return this._chosenValues.map(v => v.value).join(',');
|
||||
}
|
||||
|
||||
_setValue(value) {
|
||||
var val = this.element.value;
|
||||
if (val !== value) {
|
||||
this.element.value = value;
|
||||
}
|
||||
}
|
||||
|
||||
_renderTags() {
|
||||
let self = this, els = self.elements;
|
||||
[...els.ul.children].forEach(node => node !== els.inputCont && node.remove());
|
||||
|
||||
self._chosenValues.forEach(v => {
|
||||
if (v.obj) {
|
||||
let li = createEl('li',{title:v.obj.toLine(false, false, true),draggable:'true'}),
|
||||
el = createEl('span');
|
||||
el.append(v.obj.toLine(true, false, true));
|
||||
li.append(el);
|
||||
|
||||
el = createEl('a',{href:'#', class:'ficon'});
|
||||
el.append('✖');
|
||||
el.addEventListener('click', e => self._removeTag(e));
|
||||
el.addEventListener('focus', () => li.className = 'inputosaurus-selected');
|
||||
el.addEventListener('blur', () => li.className = null);
|
||||
el.addEventListener('keydown', e => {
|
||||
switch (e.key) {
|
||||
case 'Delete':
|
||||
case 'Backspace':
|
||||
self._removeTag(e);
|
||||
break;
|
||||
|
||||
// 'e' - edit tag (removes tag and places value into visible input
|
||||
case 'e':
|
||||
case 'Enter':
|
||||
self._editTag(e);
|
||||
break;
|
||||
|
||||
case 'ArrowLeft':
|
||||
// select the previous tag or input if no more tags exist
|
||||
var previous = el.closest('li').previousElementSibling;
|
||||
if (previous.matches('li')) {
|
||||
previous.querySelector('a').focus();
|
||||
} else {
|
||||
self._focus();
|
||||
}
|
||||
break;
|
||||
|
||||
case 'ArrowRight':
|
||||
self._nextTag(e);
|
||||
break;
|
||||
|
||||
case 'ArrowDown':
|
||||
self._focus(e);
|
||||
break;
|
||||
}
|
||||
});
|
||||
li.append(el);
|
||||
|
||||
li.inputosaurusKey = v.key;
|
||||
li.inputosaurusValue = v.obj.toLine(false, false, false);
|
||||
|
||||
li.addEventListener("dragstart", e => {
|
||||
e.dataTransfer.setData(contentType, li.inputosaurusValue);
|
||||
e.dataTransfer.setDragImage(li, 0, 0);
|
||||
e.dataTransfer.effectAllowed = 'move';
|
||||
li.style.opacity = 0.25;
|
||||
removeDragged = () => self._removeDraggedTag(li);
|
||||
});
|
||||
li.addEventListener("dragend", () => li.style.opacity = null);
|
||||
|
||||
els.inputCont.before(li);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
_removeTag(ev) {
|
||||
ev.preventDefault();
|
||||
|
||||
var target = ev.currentTarget,
|
||||
key = target.closest('li').inputosaurusKey,
|
||||
self = this,
|
||||
indexFound = self._chosenValues.findIndex(v => key === v.key);
|
||||
|
||||
indexFound > -1 && self._chosenValues.splice(indexFound, 1);
|
||||
|
||||
self._setValue(self._buildValue());
|
||||
|
||||
target.closest('li').remove();
|
||||
setTimeout(() => self.elements.input.focus(), 100);
|
||||
}
|
||||
|
||||
_removeDraggedTag(li) {
|
||||
var
|
||||
widget = this,
|
||||
$li = $('<li data-inputosaurus="' + key + '" title="' + obj.toLine(false, false, true) +
|
||||
'"><a href="javascript:void(0);" class="ficon">✖</a><span>' +
|
||||
obj.toLine(true, false, true) + '</span></li>')
|
||||
key = li.inputosaurusKey,
|
||||
self = this,
|
||||
indexFound = self._chosenValues.findIndex(v => key === v.key)
|
||||
;
|
||||
|
||||
$li.data('inputosaurus-value', obj.toLine(false, false, false));
|
||||
|
||||
if (this.options.allowDragAndDrop)
|
||||
if (-1 < indexFound)
|
||||
{
|
||||
$li.draggable({
|
||||
'revert': 'invalid',
|
||||
'revertDuration': 200,
|
||||
'start': (event, ui) => ui.helper.__widget = widget
|
||||
});
|
||||
self._chosenValues.splice(indexFound, 1);
|
||||
self._setValue(self._buildValue());
|
||||
}
|
||||
|
||||
return $li;
|
||||
}
|
||||
},
|
||||
|
||||
_renderTags : function() {
|
||||
var self = this;
|
||||
|
||||
this.elements.ul.find('li:not(.inputosaurus-required)').remove();
|
||||
|
||||
$.each(this._chosenValues, (k, v) => {
|
||||
var el = self._createTag(v.value, v.key, v.obj);
|
||||
if (el) {
|
||||
self.elements.ul.find('li.inputosaurus-input').before(el);
|
||||
}
|
||||
});
|
||||
},
|
||||
|
||||
_removeTag : function(ev) {
|
||||
var key = $(ev.currentTarget).closest('li').data('inputosaurus'),
|
||||
indexFound = false,
|
||||
widget = (ev && ev.data.widget) || this;
|
||||
|
||||
|
||||
$.each(widget._chosenValues, (k,v) => {
|
||||
if(key === v.key){
|
||||
indexFound = k;
|
||||
}
|
||||
});
|
||||
|
||||
indexFound !== false && widget._chosenValues.splice(indexFound, 1);
|
||||
|
||||
widget._setValue(widget._buildValue());
|
||||
|
||||
$(ev.currentTarget).closest('li').remove();
|
||||
setTimeout(() => widget.elements.input.focus(), 100);
|
||||
},
|
||||
|
||||
_removeDraggedTag : function ($li) {
|
||||
var
|
||||
key = $li.data('inputosaurus'),
|
||||
widget = this,
|
||||
indexFound = false
|
||||
;
|
||||
|
||||
$.each(widget._chosenValues, (k,v) => {
|
||||
if (key === v.key) {
|
||||
|
||||
indexFound = k;
|
||||
}
|
||||
});
|
||||
|
||||
if (false !== indexFound)
|
||||
{
|
||||
widget._chosenValues.splice(indexFound, 1);
|
||||
widget._setValue(widget._buildValue());
|
||||
li.remove();
|
||||
}
|
||||
|
||||
$li.remove();
|
||||
},
|
||||
|
||||
focus : function () {
|
||||
focus () {
|
||||
this.elements.input.focus();
|
||||
},
|
||||
}
|
||||
|
||||
blur : function () {
|
||||
blur() {
|
||||
this.elements.input.blur();
|
||||
},
|
||||
|
||||
_focus : function(ev) {
|
||||
var
|
||||
widget = (ev && ev.data.widget) || this,
|
||||
li = (ev && ev.target) ? $(ev.target).closest('li') : null
|
||||
;
|
||||
|
||||
if (li && li.is('li')) {
|
||||
li.find('a').focus();
|
||||
}
|
||||
if (!ev || !$(ev.target).closest('li').data('inputosaurus')) {
|
||||
widget.elements.input.focus();
|
||||
|
||||
_focus(ev) {
|
||||
var li = ev && ev.target && ev.target.closest('li');
|
||||
if (li && li.inputosaurusKey) {
|
||||
li.querySelector('a').focus();
|
||||
} else {
|
||||
this.focus();
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
_tagFocus : ev => $(ev.currentTarget).parent()[ev.type === 'focusout' ? 'removeClass' : 'addClass']('inputosaurus-selected'),
|
||||
|
||||
refresh : function() {
|
||||
var delim = ',',
|
||||
val = this.element.val(),
|
||||
refresh() {
|
||||
var self = this,
|
||||
val = self.element.value,
|
||||
values = [];
|
||||
|
||||
values.push(val);
|
||||
|
||||
if (val) {
|
||||
if ($.isFunction(this.options.splitHook)) {
|
||||
var hook = this.options.splitHook(val);
|
||||
var hook = self.options.splitHook(val);
|
||||
if (hook) {
|
||||
values = hook;
|
||||
}
|
||||
} else {
|
||||
delim && (values = val.split(delim));
|
||||
}
|
||||
}
|
||||
|
||||
if (values.length) {
|
||||
this._chosenValues = [];
|
||||
self._chosenValues = [];
|
||||
|
||||
values = this.options.parseHook(values);
|
||||
values = self.options.parseHook(values);
|
||||
|
||||
this._setChosen(values);
|
||||
this._renderTags();
|
||||
this.elements.input.val('');
|
||||
this._resizeInput();
|
||||
}
|
||||
},
|
||||
|
||||
_attachEvents : function() {
|
||||
|
||||
var widget = this, els = this.elements;
|
||||
if (els) {
|
||||
els.input.on('keyup.inputosaurus', {widget : widget}, this._inputKeypress);
|
||||
els.input.on('keydown.inputosaurus', {widget : widget}, this._inputKeypress);
|
||||
els.input.on('change.inputosaurus', {widget : widget}, this._inputKeypress);
|
||||
els.input.on('focus.inputosaurus', {widget : widget}, this._inputFocus);
|
||||
|
||||
this.options.parseOnBlur && els.input.on('blur.inputosaurus', {widget : widget}, this.parseInput);
|
||||
|
||||
els.ul.on('click.inputosaurus', {widget : widget}, this._focus);
|
||||
els.ul.on('click.inputosaurus', 'a', {widget : widget}, this._removeTag);
|
||||
els.ul.on('dblclick.inputosaurus', 'li', {widget : widget}, this._editTag);
|
||||
els.ul.on('doubletap.inputosaurus', 'li', {widget : widget}, this._editTag);
|
||||
els.ul.on('focus.inputosaurus', 'a', {widget : widget}, this._tagFocus);
|
||||
els.ul.on('blur.inputosaurus', 'a', {widget : widget}, this._tagFocus);
|
||||
els.ul.on('keydown.inputosaurus', 'a', {widget : widget}, this._tagKeypress);
|
||||
}
|
||||
},
|
||||
|
||||
_destroy: function() {
|
||||
var els = this.elements;
|
||||
if (els) {
|
||||
els.input.off('.inputosaurus');
|
||||
els.ul.replaceWith(this.element);
|
||||
self._setChosen(values);
|
||||
self._renderTags();
|
||||
self.elements.input.value = '';
|
||||
self.resizeInput();
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
})(jQuery);
|
||||
};
|
||||
|
||||
})();
|
||||
|
|
|
|||
245
vendors/jquery-ui/AUTHORS.txt
vendored
|
|
@ -1,245 +0,0 @@
|
|||
Authors ordered by first contribution
|
||||
A list of current team members is available at http://jqueryui.com/about
|
||||
|
||||
Paul Bakaus <paul.bakaus@googlemail.com>
|
||||
Richard Worth <rdworth@gmail.com>
|
||||
Yehuda Katz <wycats@gmail.com>
|
||||
Sean Catchpole <sean@sunsean.com>
|
||||
John Resig <jeresig@gmail.com>
|
||||
Tane Piper <piper.tane@gmail.com>
|
||||
Dmitri Gaskin <dmitrig01@gmail.com>
|
||||
Klaus Hartl <klaus.hartl@googlemail.com>
|
||||
Stefan Petre <stefan.petre@gmail.com>
|
||||
Gilles van den Hoven <gilles@webunity.nl>
|
||||
Micheil Bryan Smith <micheil@brandedcode.com>
|
||||
Jörn Zaefferer <joern.zaefferer@gmail.com>
|
||||
Marc Grabanski <m@marcgrabanski.com>
|
||||
Keith Wood <kbwood.au@gmail.com>
|
||||
Brandon Aaron <brandon.aaron@gmail.com>
|
||||
Scott González <scott.gonzalez@gmail.com>
|
||||
Eduardo Lundgren <eduardolundgren@gmail.com>
|
||||
Aaron Eisenberger <aaronchi@gmail.com>
|
||||
Joan Piedra <theneojp@gmail.com>
|
||||
Bruno Basto <b.basto@gmail.com>
|
||||
Remy Sharp <remy@leftlogic.com>
|
||||
Bohdan Ganicky <bohdan.ganicky@gmail.com>
|
||||
David Bolter <david.bolter@gmail.com>
|
||||
Chi Cheng <cloudream@gmail.com>
|
||||
Ca-Phun Ung <pazu2k@gmail.com>
|
||||
Ariel Flesler <aflesler@gmail.com>
|
||||
Maggie Costello Wachs <fg.maggie@gmail.com>
|
||||
Scott Jehl <scott@scottjehl.com>
|
||||
Todd Parker <fg.todd@gmail.com>
|
||||
Andrew Powell <powella@gmail.com>
|
||||
Brant Burnett <btburnett3@gmail.com>
|
||||
Douglas Neiner <doug@pixelgraphics.us>
|
||||
Paul Irish <paul.irish@gmail.com>
|
||||
Ralph Whitbeck <ralph.whitbeck@gmail.com>
|
||||
Thibault Duplessis <thibault.duplessis@gmail.com>
|
||||
Dominique Vincent <dominique.vincent@toitl.com>
|
||||
Jack Hsu <jack.hsu@gmail.com>
|
||||
Adam Sontag <ajpiano@ajpiano.com>
|
||||
Carl Fürstenberg <carl@excito.com>
|
||||
Kevin Dalman <development@allpro.net>
|
||||
Alberto Fernández Capel <afcapel@gmail.com>
|
||||
Jacek Jędrzejewski (http://jacek.jedrzejewski.name)
|
||||
Ting Kuei <ting@kuei.com>
|
||||
Samuel Cormier-Iijima <sam@chide.it>
|
||||
Jon Palmer <jonspalmer@gmail.com>
|
||||
Ben Hollis <bhollis@amazon.com>
|
||||
Justin MacCarthy <Justin@Rubystars.biz>
|
||||
Eyal Kobrigo <kobrigo@hotmail.com>
|
||||
Tiago Freire <tiago.freire@gmail.com>
|
||||
Diego Tres <diegotres@gmail.com>
|
||||
Holger Rüprich <holger@rueprich.de>
|
||||
Ziling Zhao <zizhao@cisco.com>
|
||||
Mike Alsup <malsup@gmail.com>
|
||||
Robson Braga Araujo <robsonbraga@gmail.com>
|
||||
Pierre-Henri Ausseil <ph.ausseil@gmail.com>
|
||||
Christopher McCulloh <cmcculloh@gmail.com>
|
||||
Andrew Newcomb <ext.github@preceptsoftware.co.uk>
|
||||
Lim Chee Aun <cheeaun@gmail.com>
|
||||
Jorge Barreiro <yortx.barry@gmail.com>
|
||||
Daniel Steigerwald <daniel@steigerwald.cz>
|
||||
John Firebaugh <john_firebaugh@bigfix.com>
|
||||
John Enters <github@darkdark.net>
|
||||
Andrey Kapitcyn <ru.m157y@gmail.com>
|
||||
Dmitry Petrov <dpetroff@gmail.com>
|
||||
Eric Hynds <eric@hynds.net>
|
||||
Chairat Sunthornwiphat <pipo@sixhead.com>
|
||||
Josh Varner <josh.varner@gmail.com>
|
||||
Stéphane Raimbault <stephane.raimbault@gmail.com>
|
||||
Jay Merrifield <fracmak@gmail.com>
|
||||
J. Ryan Stinnett <jryans@gmail.com>
|
||||
Peter Heiberg <peter@heiberg.se>
|
||||
Alex Dovenmuehle <adovenmuehle@gmail.com>
|
||||
Jamie Gegerson <git@jamiegegerson.com>
|
||||
Raymond Schwartz <skeetergraphics@gmail.com>
|
||||
Phillip Barnes <philbar@gmail.com>
|
||||
Kyle Wilkinson <kai@wikyd.org>
|
||||
Khaled AlHourani <me@khaledalhourani.com>
|
||||
Marian Rudzynski <mr@impaled.org>
|
||||
Jean-Francois Remy <jfremy@virtuoz.com>
|
||||
Doug Blood <dougblood@gmail.com>
|
||||
Filippo Cavallarin <filippo.cavallarin@codseq.it>
|
||||
Heiko Henning <h.henning@educa.ch>
|
||||
Aliaksandr Rahalevich <saksmlz@gmail.com>
|
||||
Mario Visic <mario@mariovisic.com>
|
||||
Xavi Ramirez <xavi.rmz@gmail.com>
|
||||
Max Schnur <max.schnur@gmail.com>
|
||||
Saji Nediyanchath <saji89@gmail.com>
|
||||
Corey Frang <gnarf@gnarf.net>
|
||||
Aaron Peterson <aaronp123@yahoo.com>
|
||||
Ivan Peters <ivan@ivanpeters.com>
|
||||
Mohamed Cherif Bouchelaghem <cherifbouchelaghem@yahoo.fr>
|
||||
Marcos Sousa <falecomigo@marcossousa.com>
|
||||
Michael DellaNoce <mdellanoce@mailtrust.com>
|
||||
George Marshall <echosx@gmail.com>
|
||||
Tobias Brunner <tobias@strongswan.org>
|
||||
Martin Solli <msolli@gmail.com>
|
||||
David Petersen <public@petersendidit.com>
|
||||
Dan Heberden <danheberden@gmail.com>
|
||||
William Kevin Manire <williamkmanire@gmail.com>
|
||||
Gilmore Davidson <gilmoreorless@gmail.com>
|
||||
Michael Wu <michaelmwu@gmail.com>
|
||||
Adam Parod <mystic414@gmail.com>
|
||||
Guillaume Gautreau <guillaume+github@ghusse.com>
|
||||
Marcel Toele <EleotleCram@gmail.com>
|
||||
Dan Streetman <ddstreet@ieee.org>
|
||||
Matt Hoskins <furlined@cat-basket.org>
|
||||
Giovanni Giacobbi <giovanni@giacobbi.net>
|
||||
Kyle Florence <kyle.florence@gmail.com>
|
||||
Pavol Hluchý <lopo@losys.sk>
|
||||
Hans Hillen <hans.hillen@gmail.com>
|
||||
Mark Johnson <virgofx@live.com>
|
||||
Trey Hunner <treyhunner@gmail.com>
|
||||
Shane Whittet <whittet@gmail.com>
|
||||
Edward A Faulkner <ef@alum.mit.edu>
|
||||
Adam Baratz <adam@adambaratz.com>
|
||||
Kato Kazuyoshi <kato.kazuyoshi@gmail.com>
|
||||
Eike Send <eike.send@gmail.com>
|
||||
Kris Borchers <kris.borchers@gmail.com>
|
||||
Eddie Monge <eddie@eddiemonge.com>
|
||||
Israel Tsadok <itsadok@gmail.com>
|
||||
Carson McDonald <carson@ioncannon.net>
|
||||
Jason Davies <jason@jasondavies.com>
|
||||
Garrison Locke <gplocke@gmail.com>
|
||||
David Murdoch <musicisair@yahoo.com>
|
||||
Benjamin Scott Boyle <benjamins.boyle@gmail.com>
|
||||
Jesse Baird <jebaird@gmail.com>
|
||||
Jonathan Vingiano <jvingiano@gmail.com>
|
||||
Dylan Just <dev@ephox.com>
|
||||
Hiroshi Tomita <tomykaira@gmail.com>
|
||||
Glenn Goodrich <glenn.goodrich@gmail.com>
|
||||
Tarafder Ashek-E-Elahi <mail.ashek@gmail.com>
|
||||
Ryan Neufeld <ryan@neufeldmail.com>
|
||||
Marc Neuwirth <marc.neuwirth@gmail.com>
|
||||
Philip Graham <philip.robert.graham@gmail.com>
|
||||
Benjamin Sterling <benjamin.sterling@kenzomedia.com>
|
||||
Wesley Walser <waw325@gmail.com>
|
||||
Kouhei Sutou <kou@clear-code.com>
|
||||
Karl Kirch <karlkrch@gmail.com>
|
||||
Chris Kelly <ckdake@ckdake.com>
|
||||
Jay Oster <jay@loyalize.com>
|
||||
Alexander Polomoshnov <alex.polomoshnov@gmail.com>
|
||||
David Leal <dgleal@gmail.com>
|
||||
Igor Milla <igor.fsp.milla@gmail.com>
|
||||
Dave Methvin <dave.methvin@gmail.com>
|
||||
Florian Gutmann <f.gutmann@chronimo.com>
|
||||
Marwan Al Jubeh <marwan.aljubeh@gmail.com>
|
||||
Milan Broum <midlis@googlemail.com>
|
||||
Sebastian Sauer <info@dynpages.de>
|
||||
Gaëtan Muller <m.gaetan89@gmail.com>
|
||||
Michel Weimerskirch <michel@weimerskirch.net>
|
||||
William Griffiths <william@ycymro.com>
|
||||
Stojce Slavkovski <stojce@gmail.com>
|
||||
David Soms <david.soms@gmail.com>
|
||||
David De Sloovere <david.desloovere@hotmail.com>
|
||||
Michael P. Jung <michael.jung@terreon.de>
|
||||
Shannon Pekary <spekary@gmail.com>
|
||||
Matthew Edward Hutton <meh@corefiling.co.uk>
|
||||
James Khoury <james@jameskhoury.com>
|
||||
Rob Loach <robloach@gmail.com>
|
||||
Alberto Monteiro <betimbrasil@gmail.com>
|
||||
Alex Rhea <alex.rhea@gmail.com>
|
||||
Krzysztof Rosiński <rozwell69@gmail.com>
|
||||
Ryan Olton <oltonr@gmail.com>
|
||||
Genie <386@mail.com>
|
||||
Rick Waldron <waldron.rick@gmail.com>
|
||||
Ian Simpson <spoonlikesham@gmail.com>
|
||||
Lev Kitsis <spam4lev@gmail.com>
|
||||
TJ VanToll <tj.vantoll@gmail.com>
|
||||
Justin Domnitz <jdomnitz@gmail.com>
|
||||
Douglas Cerna <douglascerna@yahoo.com>
|
||||
Bert ter Heide <bertjh@hotmail.com>
|
||||
Jasvir Nagra <jasvir@gmail.com>
|
||||
Petr Hromadko <yuriy@tokyoscale.com>
|
||||
Harri Kilpiö <harri.kilpio@gmail.com>
|
||||
Lado Lomidze <lado.lomidze@gmail.com>
|
||||
Amir E. Aharoni <amir.aharoni@mail.huji.ac.il>
|
||||
Simon Sattes <simon.sattes@gmail.com>
|
||||
Jo Liss <joliss42@gmail.com>
|
||||
Guntupalli Karunakar <karunakarg@yahoo.com>
|
||||
Shahyar Ghobadpour <shahyar@gmail.com>
|
||||
Lukasz Lipinski <uzza17@gmail.com>
|
||||
Timo Tijhof <krinklemail@gmail.com>
|
||||
Jason Moon <jmoon@socialcast.com>
|
||||
Martin Frost <martinf55@hotmail.com>
|
||||
Eneko Illarramendi <eneko@illarra.com>
|
||||
EungJun Yi <semtlenori@gmail.com>
|
||||
Courtland Allen <courtlandallen@gmail.com>
|
||||
Viktar Varvanovich <non4eg@gmail.com>
|
||||
Danny Trunk <dtrunk90@gmail.com>
|
||||
Pavel Stetina <pavel.stetina@nangu.tv>
|
||||
Michael Stay <metaweta@gmail.com>
|
||||
Steven Roussey <sroussey@gmail.com>
|
||||
Michael Hollis <hollis21@gmail.com>
|
||||
Lee Rowlands <lee.rowlands@previousnext.com.au>
|
||||
Timmy Willison <timmywillisn@gmail.com>
|
||||
Karl Swedberg <kswedberg@gmail.com>
|
||||
Baoju Yuan <the_guy_1987@hotmail.com>
|
||||
Maciej Mroziński <mrozik87@gmail.com>
|
||||
Luis Dalmolin <luis.nh@gmail.com>
|
||||
Mark Aaron Shirley <maspwr@gmail.com>
|
||||
Martin Hoch <martin@fidion.de>
|
||||
Jiayi Yang <tr870829@gmail.com>
|
||||
Philipp Benjamin Köppchen <xgxtpbk@gws.ms>
|
||||
Sindre Sorhus <sindresorhus@gmail.com>
|
||||
Bernhard Sirlinger <bernhard.sirlinger@tele2.de>
|
||||
Jared A. Scheel <jared@jaredscheel.com>
|
||||
Rafael Xavier de Souza <rxaviers@gmail.com>
|
||||
John Chen <zhang.z.chen@intel.com>
|
||||
Dale Kocian <dale.kocian@gmail.com>
|
||||
Mike Sherov <mike.sherov@gmail.com>
|
||||
Andrew Couch <andy@couchand.com>
|
||||
Marc-Andre Lafortune <github@marc-andre.ca>
|
||||
Nate Eagle <nate.eagle@teamaol.com>
|
||||
David Souther <davidsouther@gmail.com>
|
||||
Mathias Stenbom <mathias@stenbom.com>
|
||||
Sergey Kartashov <ebishkek@yandex.ru>
|
||||
Avinash R <nashpapa@gmail.com>
|
||||
Ethan Romba <ethanromba@gmail.com>
|
||||
Cory Gackenheimer <cory.gack@gmail.com>
|
||||
Juan Pablo Kaniefsky <jpkaniefsky@gmail.com>
|
||||
Roman Salnikov <bardt.dz@gmail.com>
|
||||
Anika Henke <anika@selfthinker.org>
|
||||
Samuel Bovée <samycookie2000@yahoo.fr>
|
||||
Fabrício Matté <ult_combo@hotmail.com>
|
||||
Viktor Kojouharov <vkojouharov@gmail.com>
|
||||
Pawel Maruszczyk <lord_t@o2.pl>
|
||||
Pavel Selitskas <p.selitskas@gmail.com>
|
||||
Bjørn Johansen <bjorn.johansen@metronet.no>
|
||||
Matthieu Penant <thieum22@hotmail.com>
|
||||
Dominic Barnes <dominic@dbarnes.info>
|
||||
David Sullivan <david.sullivan@gmail.com>
|
||||
Thomas Jaggi <thomas.jaggi@gmail.com>
|
||||
Vahid Sohrabloo <vahid4134@gmail.com>
|
||||
Travis Carden <travis.carden@gmail.com>
|
||||
Bruno M. Custódio <bruno@brunomcustodio.com>
|
||||
Nathanael Silverman <nathanael.silverman@gmail.com>
|
||||
Christian Wenz <christian@wenz.org>
|
||||
Steve Urmston <steve@urm.st>
|
||||
Zaven Muradyan <megalivoithos@gmail.com>
|
||||
Woody Gilk <shadowhand@deviantart.com>
|
||||
Zbigniew Motyka <zbigniew.motyka@gmail.com>
|
||||
Suhail Alkowaileet <xsoh.k7@gmail.com>
|
||||
26
vendors/jquery-ui/MIT-LICENSE.txt
vendored
|
|
@ -1,26 +0,0 @@
|
|||
Copyright 2013 jQuery Foundation and other contributors,
|
||||
http://jqueryui.com/
|
||||
|
||||
This software consists of voluntary contributions made by many
|
||||
individuals (AUTHORS.txt, http://jqueryui.com/about) For exact
|
||||
contribution history, see the revision history and logs, available
|
||||
at http://jquery-ui.googlecode.com/svn/
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining
|
||||
a copy of this software and associated documentation files (the
|
||||
"Software"), to deal in the Software without restriction, including
|
||||
without limitation the rights to use, copy, modify, merge, publish,
|
||||
distribute, sublicense, and/or sell copies of the Software, and to
|
||||
permit persons to whom the Software is furnished to do so, subject to
|
||||
the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be
|
||||
included in all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
||||
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
||||
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
||||
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
||||
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
99
vendors/jquery-ui/README.md
vendored
|
|
@ -1,99 +0,0 @@
|
|||
[jQuery UI](http://jqueryui.com/) - Interactions and Widgets for the web
|
||||
================================
|
||||
|
||||
jQuery UI provides interactions like Drag and Drop and widgets like Autocomplete, Tabs and Slider and makes these as easy to use as jQuery itself.
|
||||
|
||||
If you want to use jQuery UI, go to [jqueryui.com](http://jqueryui.com) to get started. Or visit the [Using jQuery UI Forum](http://forum.jquery.com/using-jquery-ui) for discussions and questions.
|
||||
|
||||
If you are interested in helping develop jQuery UI, you are in the right place.
|
||||
To discuss development with team members and the community, visit the [Developing jQuery UI Forum](http://forum.jquery.com/developing-jquery-ui) or in #jquery on irc.freednode.net.
|
||||
|
||||
|
||||
For contributors
|
||||
---
|
||||
|
||||
If you want to help and provide a patch for a bugfix or new feature, please take
|
||||
a few minutes and look at [our Getting Involved guide](http://wiki.jqueryui.com/w/page/35263114/Getting-Involved).
|
||||
In particular check out the [Coding standards](http://wiki.jqueryui.com/w/page/12137737/Coding-standards)
|
||||
and [Commit Message Style Guide](http://wiki.jqueryui.com/w/page/25941597/Commit-Message-Style-Guide).
|
||||
|
||||
In general, fork the project, create a branch for a specific change and send a
|
||||
pull request for that branch. Don't mix unrelated changes. You can use the commit
|
||||
message as the description for the pull request.
|
||||
|
||||
|
||||
Running the Unit Tests
|
||||
---
|
||||
|
||||
Run the unit tests with a local server that supports PHP. No database is required. Pre-configured php local servers are available for Windows and Mac. Here are some options:
|
||||
|
||||
- Windows: [WAMP download](http://www.wampserver.com/en/)
|
||||
- Mac: [MAMP download](http://www.mamp.info/en/index.html)
|
||||
- Linux: [Setting up LAMP](https://www.linux.com/learn/tutorials/288158-easy-lamp-server-installation)
|
||||
- [Mongoose (most platforms)](http://code.google.com/p/mongoose/)
|
||||
|
||||
|
||||
Building jQuery UI
|
||||
---
|
||||
|
||||
jQuery UI uses the [grunt](http://github.com/cowboy/grunt) build system. Building jQuery UI requires node.js and a command line zip program.
|
||||
|
||||
Install grunt.
|
||||
|
||||
`npm install grunt -g`
|
||||
|
||||
Clone the jQuery UI git repo.
|
||||
|
||||
`git clone git://github.com/jquery/jquery-ui.git`
|
||||
|
||||
`cd jquery-ui`
|
||||
|
||||
Install node modules.
|
||||
|
||||
`npm install`
|
||||
|
||||
Run grunt.
|
||||
|
||||
`grunt build`
|
||||
|
||||
There are many other tasks that can be run through grunt. For a list of all tasks:
|
||||
|
||||
`grunt --help`
|
||||
|
||||
|
||||
For committers
|
||||
---
|
||||
|
||||
When looking at pull requests, first check for [proper commit messages](http://wiki.jqueryui.com/w/page/12137724/Bug-Fixing-Guide).
|
||||
|
||||
Do not merge pull requests directly through GitHub's interface.
|
||||
Most pull requests are a single commit; cherry-picking will avoid creating a merge commit.
|
||||
It's also common for contributors to make minor fixes in an additional one or two commits.
|
||||
These should be squashed before landing in master.
|
||||
|
||||
**Make sure the author has a valid name and email address associated with the commit.**
|
||||
|
||||
Fetch the remote first:
|
||||
|
||||
git fetch [their-fork.git] [their-branch]
|
||||
|
||||
Then cherry-pick the commit(s):
|
||||
|
||||
git cherry-pick [sha-of-commit]
|
||||
|
||||
If you need to edit the commit message:
|
||||
|
||||
git cherry-pick -e [sha-of-commit]
|
||||
|
||||
If you need to edit the changes:
|
||||
|
||||
git cherry-pick -n [sha-of-commit]
|
||||
# make changes
|
||||
git commit --author="[author-name-and-email]"
|
||||
|
||||
If it should go to the stable brach, cherry-pick it to stable:
|
||||
|
||||
git checkout 1-8-stable
|
||||
git cherry-pick -x [sha-of-commit-from-master]
|
||||
|
||||
*NOTE: Do not cherry-pick into 1-8-stable until you have pushed the commit from master upstream.*
|
||||
|
|
@ -1,90 +0,0 @@
|
|||
/*! jQuery UI - v1.12.1 - 2016-09-14
|
||||
* http://jqueryui.com
|
||||
* Includes: core.css, resizable.css
|
||||
* Copyright jQuery Foundation and other contributors; Licensed MIT */
|
||||
|
||||
/* Layout helpers
|
||||
----------------------------------*/
|
||||
.ui-helper-hidden {
|
||||
display: none;
|
||||
}
|
||||
.ui-helper-hidden-accessible {
|
||||
border: 0;
|
||||
clip: rect(0 0 0 0);
|
||||
height: 1px;
|
||||
margin: -1px;
|
||||
overflow: hidden;
|
||||
padding: 0;
|
||||
position: absolute;
|
||||
width: 1px;
|
||||
}
|
||||
.ui-helper-reset {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
border: 0;
|
||||
outline: 0;
|
||||
line-height: 1.3;
|
||||
text-decoration: none;
|
||||
font-size: 100%;
|
||||
list-style: none;
|
||||
}
|
||||
.ui-helper-clearfix:before,
|
||||
.ui-helper-clearfix:after {
|
||||
content: "";
|
||||
display: table;
|
||||
border-collapse: collapse;
|
||||
}
|
||||
.ui-helper-clearfix:after {
|
||||
clear: both;
|
||||
}
|
||||
.ui-helper-zfix {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
top: 0;
|
||||
left: 0;
|
||||
position: absolute;
|
||||
opacity: 0;
|
||||
}
|
||||
|
||||
.ui-front {
|
||||
z-index: 100;
|
||||
}
|
||||
|
||||
|
||||
/* Interaction Cues
|
||||
----------------------------------*/
|
||||
.ui-state-disabled {
|
||||
cursor: default !important;
|
||||
pointer-events: none;
|
||||
}
|
||||
|
||||
|
||||
/* Icons
|
||||
----------------------------------*/
|
||||
.ui-icon {
|
||||
display: inline-block;
|
||||
vertical-align: middle;
|
||||
margin-top: -.25em;
|
||||
position: relative;
|
||||
text-indent: -99999px;
|
||||
overflow: hidden;
|
||||
background-repeat: no-repeat;
|
||||
}
|
||||
|
||||
.ui-widget-icon-block {
|
||||
left: 50%;
|
||||
margin-left: -8px;
|
||||
display: block;
|
||||
}
|
||||
|
||||
/* Misc visuals
|
||||
----------------------------------*/
|
||||
|
||||
/* Overlays */
|
||||
.ui-widget-overlay {
|
||||
position: fixed;
|
||||
top: 0;
|
||||
left: 0;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
}
|
||||
|
|
@ -1,6 +0,0 @@
|
|||
/*! jQuery UI - v1.12.1 - 2016-09-14
|
||||
* http://jqueryui.com
|
||||
* Includes: core.css, resizable.css
|
||||
* Copyright jQuery Foundation and other contributors; Licensed MIT */
|
||||
|
||||
.ui-helper-hidden{display:none}.ui-helper-hidden-accessible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.ui-helper-reset{margin:0;padding:0;border:0;outline:0;line-height:1.3;text-decoration:none;font-size:100%;list-style:none}.ui-helper-clearfix:after,.ui-helper-clearfix:before{content:"";display:table;border-collapse:collapse}.ui-helper-clearfix:after{clear:both}.ui-helper-zfix{width:100%;height:100%;top:0;left:0;position:absolute;opacity:0}.ui-front{z-index:100}.ui-state-disabled{cursor:default!important;pointer-events:none}.ui-icon{display:inline-block;vertical-align:middle;margin-top:-.25em;position:relative;text-indent:-99999px;overflow:hidden;background-repeat:no-repeat}.ui-widget-icon-block{left:50%;margin-left:-8px;display:block}.ui-widget-overlay{position:fixed;top:0;left:0;width:100%;height:100%}.ui-resizable{position:relative}.ui-resizable-handle{position:absolute;font-size:.1px;display:block;-ms-touch-action:none;touch-action:none}.ui-resizable-autohide .ui-resizable-handle,.ui-resizable-disabled .ui-resizable-handle{display:none}.ui-resizable-n{cursor:n-resize;height:7px;width:100%;top:-5px;left:0}.ui-resizable-s{cursor:s-resize;height:7px;width:100%;bottom:-5px;left:0}.ui-resizable-e{cursor:e-resize;width:7px;right:-5px;top:0;height:100%}.ui-resizable-w{cursor:w-resize;width:7px;left:-5px;top:0;height:100%}.ui-resizable-se{cursor:se-resize;width:12px;height:12px;right:1px;bottom:1px}.ui-resizable-sw{cursor:sw-resize;width:9px;height:9px;left:-5px;bottom:-5px}.ui-resizable-nw{cursor:nw-resize;width:9px;height:9px;left:-5px;top:-5px}.ui-resizable-ne{cursor:ne-resize;width:9px;height:9px;right:-5px;top:-5px}
|
||||
|
Before Width: | Height: | Size: 1.7 KiB |
|
Before Width: | Height: | Size: 212 B |
|
Before Width: | Height: | Size: 208 B |
|
Before Width: | Height: | Size: 335 B |
|
Before Width: | Height: | Size: 207 B |
|
Before Width: | Height: | Size: 262 B |
|
Before Width: | Height: | Size: 262 B |
|
Before Width: | Height: | Size: 332 B |
|
Before Width: | Height: | Size: 280 B |
|
Before Width: | Height: | Size: 6.8 KiB |
|
Before Width: | Height: | Size: 4.4 KiB |
|
Before Width: | Height: | Size: 6.8 KiB |
|
Before Width: | Height: | Size: 6.8 KiB |
|
Before Width: | Height: | Size: 4.4 KiB |
|
|
@ -1,576 +0,0 @@
|
|||
/*! jQuery UI - v1.10.3 - 2013-11-25
|
||||
* http://jqueryui.com
|
||||
* Includes: jquery.ui.core.css, jquery.ui.selectable.css, jquery.ui.autocomplete.css, jquery.ui.menu.css, jquery.ui.theme.css
|
||||
* Copyright 2013 jQuery Foundation and other contributors; Licensed MIT */
|
||||
|
||||
/* Layout helpers
|
||||
----------------------------------*/
|
||||
.ui-helper-hidden {
|
||||
display: none;
|
||||
}
|
||||
.ui-helper-hidden-accessible {
|
||||
border: 0;
|
||||
clip: rect(0 0 0 0);
|
||||
height: 1px;
|
||||
margin: -1px;
|
||||
overflow: hidden;
|
||||
padding: 0;
|
||||
position: absolute;
|
||||
width: 1px;
|
||||
}
|
||||
.ui-helper-reset {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
border: 0;
|
||||
outline: 0;
|
||||
line-height: 1.3;
|
||||
text-decoration: none;
|
||||
font-size: 100%;
|
||||
list-style: none;
|
||||
}
|
||||
.ui-helper-clearfix:before,
|
||||
.ui-helper-clearfix:after {
|
||||
content: "";
|
||||
display: table;
|
||||
border-collapse: collapse;
|
||||
}
|
||||
.ui-helper-clearfix:after {
|
||||
clear: both;
|
||||
}
|
||||
.ui-helper-zfix {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
top: 0;
|
||||
left: 0;
|
||||
position: absolute;
|
||||
opacity: 0;
|
||||
}
|
||||
|
||||
.ui-front {
|
||||
z-index: 100;
|
||||
}
|
||||
|
||||
|
||||
/* Interaction Cues
|
||||
----------------------------------*/
|
||||
.ui-state-disabled {
|
||||
cursor: default !important;
|
||||
pointer-events: none;
|
||||
}
|
||||
|
||||
|
||||
/* Icons
|
||||
----------------------------------*/
|
||||
|
||||
/* states and images */
|
||||
.ui-icon {
|
||||
display: inline-block;
|
||||
vertical-align: middle;
|
||||
margin-top: -.25em;
|
||||
position: relative;
|
||||
text-indent: -99999px;
|
||||
overflow: hidden;
|
||||
background-repeat: no-repeat;
|
||||
}
|
||||
|
||||
.ui-widget-icon-block {
|
||||
left: 50%;
|
||||
margin-left: -8px;
|
||||
display: block;
|
||||
}
|
||||
|
||||
/* Misc visuals
|
||||
----------------------------------*/
|
||||
|
||||
/* Overlays */
|
||||
.ui-widget-overlay {
|
||||
position: fixed;
|
||||
top: 0;
|
||||
left: 0;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
}
|
||||
.ui-selectable-helper {
|
||||
position: absolute;
|
||||
z-index: 100;
|
||||
border: 1px dotted black;
|
||||
}
|
||||
.ui-autocomplete {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
cursor: default;
|
||||
}
|
||||
.ui-menu {
|
||||
list-style: none;
|
||||
padding: 2px;
|
||||
margin: 0;
|
||||
display: block;
|
||||
outline: none;
|
||||
}
|
||||
.ui-menu .ui-menu {
|
||||
margin-top: -3px;
|
||||
position: absolute;
|
||||
}
|
||||
.ui-menu .ui-menu-item {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
width: 100%;
|
||||
/* support: IE10, see #8844 */
|
||||
list-style-image: url(data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7);
|
||||
}
|
||||
.ui-menu .ui-menu-divider {
|
||||
margin: 5px -2px 5px -2px;
|
||||
height: 0;
|
||||
font-size: 0;
|
||||
line-height: 0;
|
||||
border-width: 1px 0 0 0;
|
||||
}
|
||||
.ui-menu .ui-menu-item a {
|
||||
text-decoration: none;
|
||||
display: block;
|
||||
padding: 2px .4em;
|
||||
line-height: 1.5;
|
||||
min-height: 0; /* support: IE7 */
|
||||
font-weight: normal;
|
||||
}
|
||||
.ui-menu .ui-menu-item a.ui-state-focus,
|
||||
.ui-menu .ui-menu-item a.ui-state-active {
|
||||
font-weight: normal;
|
||||
margin: -1px;
|
||||
}
|
||||
|
||||
.ui-menu .ui-state-disabled {
|
||||
font-weight: normal;
|
||||
margin: .4em 0 .2em;
|
||||
line-height: 1.5;
|
||||
}
|
||||
.ui-menu .ui-state-disabled a {
|
||||
cursor: default;
|
||||
}
|
||||
|
||||
/* icon support */
|
||||
.ui-menu-icons {
|
||||
position: relative;
|
||||
}
|
||||
.ui-menu-icons .ui-menu-item a {
|
||||
position: relative;
|
||||
padding-left: 2em;
|
||||
}
|
||||
|
||||
/* left-aligned */
|
||||
.ui-menu .ui-icon {
|
||||
position: absolute;
|
||||
top: .2em;
|
||||
left: .2em;
|
||||
}
|
||||
|
||||
/* right-aligned */
|
||||
.ui-menu .ui-menu-icon {
|
||||
position: static;
|
||||
float: right;
|
||||
}
|
||||
|
||||
/* Component containers
|
||||
----------------------------------*/
|
||||
.ui-widget {
|
||||
font-family: Verdana,Arial,sans-serif;
|
||||
font-size: 1.1em;
|
||||
}
|
||||
.ui-widget .ui-widget {
|
||||
font-size: 1em;
|
||||
}
|
||||
.ui-widget input,
|
||||
.ui-widget select,
|
||||
.ui-widget textarea,
|
||||
.ui-widget button {
|
||||
font-family: Verdana,Arial,sans-serif;
|
||||
font-size: 1em;
|
||||
}
|
||||
.ui-widget-content {
|
||||
border: 1px solid #aaaaaa;
|
||||
/*background: #ffffff url(images/ui-bg_flat_75_ffffff_40x100.png) 50% 50% repeat-x;*/
|
||||
background: #ffffff;
|
||||
color: #222222;
|
||||
}
|
||||
.ui-widget-content a {
|
||||
color: #222222;
|
||||
}
|
||||
.ui-widget-header {
|
||||
border: 1px solid #aaaaaa;
|
||||
/*background: #cccccc url(images/ui-bg_highlight-soft_75_cccccc_1x100.png) 50% 50% repeat-x;*/
|
||||
background: #cccccc;
|
||||
color: #222222;
|
||||
font-weight: bold;
|
||||
}
|
||||
.ui-widget-header a {
|
||||
color: #222222;
|
||||
}
|
||||
|
||||
/* Interaction states
|
||||
----------------------------------*/
|
||||
.ui-state-default,
|
||||
.ui-widget-content .ui-state-default,
|
||||
.ui-widget-header .ui-state-default {
|
||||
border: 1px solid #ccc;
|
||||
/*background: #e6e6e6 url(images/ui-bg_glass_75_e6e6e6_1x400.png) 50% 50% repeat-x;*/
|
||||
background: #eee;
|
||||
font-weight: normal;
|
||||
color: #555555;
|
||||
}
|
||||
.ui-state-default a,
|
||||
.ui-state-default a:link,
|
||||
.ui-state-default a:visited {
|
||||
color: #555555;
|
||||
text-decoration: none;
|
||||
}
|
||||
.ui-state-hover,
|
||||
.ui-widget-content .ui-state-hover,
|
||||
.ui-widget-header .ui-state-hover,
|
||||
.ui-state-focus,
|
||||
.ui-widget-content .ui-state-focus,
|
||||
.ui-widget-header .ui-state-focus {
|
||||
border: 1px solid #ccc;
|
||||
/* background: #dadada url(images/ui-bg_glass_75_dadada_1x400.png) 50% 50% repeat-x;*/
|
||||
background: #eee;
|
||||
font-weight: normal;
|
||||
color: #212121;
|
||||
}
|
||||
.ui-state-hover a,
|
||||
.ui-state-hover a:hover,
|
||||
.ui-state-hover a:link,
|
||||
.ui-state-hover a:visited {
|
||||
color: #212121;
|
||||
text-decoration: none;
|
||||
}
|
||||
.ui-state-active,
|
||||
.ui-widget-content .ui-state-active,
|
||||
.ui-widget-header .ui-state-active {
|
||||
border: 1px solid #aaaaaa;
|
||||
/*background: #ffffff url(images/ui-bg_glass_65_ffffff_1x400.png) 50% 50% repeat-x;*/
|
||||
background: #fff;
|
||||
font-weight: normal;
|
||||
color: #212121;
|
||||
}
|
||||
.ui-state-active a,
|
||||
.ui-state-active a:link,
|
||||
.ui-state-active a:visited {
|
||||
color: #212121;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
/* Interaction Cues
|
||||
----------------------------------*/
|
||||
.ui-state-highlight,
|
||||
.ui-widget-content .ui-state-highlight,
|
||||
.ui-widget-header .ui-state-highlight {
|
||||
border: 1px solid #fcefa1;
|
||||
/*background: #fbf9ee url(images/ui-bg_glass_55_fbf9ee_1x400.png) 50% 50% repeat-x;*/
|
||||
background: #fbf9ee;
|
||||
color: #363636;
|
||||
}
|
||||
.ui-state-highlight a,
|
||||
.ui-widget-content .ui-state-highlight a,
|
||||
.ui-widget-header .ui-state-highlight a {
|
||||
color: #363636;
|
||||
}
|
||||
.ui-state-error,
|
||||
.ui-widget-content .ui-state-error,
|
||||
.ui-widget-header .ui-state-error {
|
||||
border: 1px solid #cd0a0a;
|
||||
/*background: #fef1ec url(images/ui-bg_glass_95_fef1ec_1x400.png) 50% 50% repeat-x;*/
|
||||
background: #fef1ec;
|
||||
color: #cd0a0a;
|
||||
}
|
||||
.ui-state-error a,
|
||||
.ui-widget-content .ui-state-error a,
|
||||
.ui-widget-header .ui-state-error a {
|
||||
color: #cd0a0a;
|
||||
}
|
||||
.ui-state-error-text,
|
||||
.ui-widget-content .ui-state-error-text,
|
||||
.ui-widget-header .ui-state-error-text {
|
||||
color: #cd0a0a;
|
||||
}
|
||||
.ui-priority-primary,
|
||||
.ui-widget-content .ui-priority-primary,
|
||||
.ui-widget-header .ui-priority-primary {
|
||||
font-weight: bold;
|
||||
}
|
||||
.ui-priority-secondary,
|
||||
.ui-widget-content .ui-priority-secondary,
|
||||
.ui-widget-header .ui-priority-secondary {
|
||||
opacity: .7;
|
||||
filter:Alpha(Opacity=70);
|
||||
font-weight: normal;
|
||||
}
|
||||
.ui-state-disabled,
|
||||
.ui-widget-content .ui-state-disabled,
|
||||
.ui-widget-header .ui-state-disabled {
|
||||
opacity: .35;
|
||||
filter:Alpha(Opacity=35);
|
||||
background-image: none;
|
||||
}
|
||||
.ui-state-disabled .ui-icon {
|
||||
filter:Alpha(Opacity=35); /* For IE8 - See #6059 */
|
||||
}
|
||||
|
||||
/* Icons
|
||||
----------------------------------*/
|
||||
|
||||
/* states and images */
|
||||
.ui-icon {
|
||||
width: 16px;
|
||||
height: 16px;
|
||||
}
|
||||
/*
|
||||
.ui-icon,
|
||||
.ui-widget-content .ui-icon {
|
||||
background-image: url(images/ui-icons_222222_256x240.png);
|
||||
}
|
||||
.ui-widget-header .ui-icon {
|
||||
background-image: url(images/ui-icons_222222_256x240.png);
|
||||
}
|
||||
.ui-state-default .ui-icon {
|
||||
background-image: url(images/ui-icons_888888_256x240.png);
|
||||
}
|
||||
.ui-state-hover .ui-icon,
|
||||
.ui-state-focus .ui-icon {
|
||||
background-image: url(images/ui-icons_454545_256x240.png);
|
||||
}
|
||||
.ui-state-active .ui-icon {
|
||||
background-image: url(images/ui-icons_454545_256x240.png);
|
||||
}
|
||||
.ui-state-highlight .ui-icon {
|
||||
background-image: url(images/ui-icons_2e83ff_256x240.png);
|
||||
}
|
||||
.ui-state-error .ui-icon,
|
||||
.ui-state-error-text .ui-icon {
|
||||
background-image: url(images/ui-icons_cd0a0a_256x240.png);
|
||||
}*/
|
||||
|
||||
/* positioning */
|
||||
/*.ui-icon-blank { background-position: 16px 16px; }
|
||||
.ui-icon-carat-1-n { background-position: 0 0; }
|
||||
.ui-icon-carat-1-ne { background-position: -16px 0; }
|
||||
.ui-icon-carat-1-e { background-position: -32px 0; }
|
||||
.ui-icon-carat-1-se { background-position: -48px 0; }
|
||||
.ui-icon-carat-1-s { background-position: -64px 0; }
|
||||
.ui-icon-carat-1-sw { background-position: -80px 0; }
|
||||
.ui-icon-carat-1-w { background-position: -96px 0; }
|
||||
.ui-icon-carat-1-nw { background-position: -112px 0; }
|
||||
.ui-icon-carat-2-n-s { background-position: -128px 0; }
|
||||
.ui-icon-carat-2-e-w { background-position: -144px 0; }
|
||||
.ui-icon-triangle-1-n { background-position: 0 -16px; }
|
||||
.ui-icon-triangle-1-ne { background-position: -16px -16px; }
|
||||
.ui-icon-triangle-1-e { background-position: -32px -16px; }
|
||||
.ui-icon-triangle-1-se { background-position: -48px -16px; }
|
||||
.ui-icon-triangle-1-s { background-position: -64px -16px; }
|
||||
.ui-icon-triangle-1-sw { background-position: -80px -16px; }
|
||||
.ui-icon-triangle-1-w { background-position: -96px -16px; }
|
||||
.ui-icon-triangle-1-nw { background-position: -112px -16px; }
|
||||
.ui-icon-triangle-2-n-s { background-position: -128px -16px; }
|
||||
.ui-icon-triangle-2-e-w { background-position: -144px -16px; }
|
||||
.ui-icon-arrow-1-n { background-position: 0 -32px; }
|
||||
.ui-icon-arrow-1-ne { background-position: -16px -32px; }
|
||||
.ui-icon-arrow-1-e { background-position: -32px -32px; }
|
||||
.ui-icon-arrow-1-se { background-position: -48px -32px; }
|
||||
.ui-icon-arrow-1-s { background-position: -64px -32px; }
|
||||
.ui-icon-arrow-1-sw { background-position: -80px -32px; }
|
||||
.ui-icon-arrow-1-w { background-position: -96px -32px; }
|
||||
.ui-icon-arrow-1-nw { background-position: -112px -32px; }
|
||||
.ui-icon-arrow-2-n-s { background-position: -128px -32px; }
|
||||
.ui-icon-arrow-2-ne-sw { background-position: -144px -32px; }
|
||||
.ui-icon-arrow-2-e-w { background-position: -160px -32px; }
|
||||
.ui-icon-arrow-2-se-nw { background-position: -176px -32px; }
|
||||
.ui-icon-arrowstop-1-n { background-position: -192px -32px; }
|
||||
.ui-icon-arrowstop-1-e { background-position: -208px -32px; }
|
||||
.ui-icon-arrowstop-1-s { background-position: -224px -32px; }
|
||||
.ui-icon-arrowstop-1-w { background-position: -240px -32px; }
|
||||
.ui-icon-arrowthick-1-n { background-position: 0 -48px; }
|
||||
.ui-icon-arrowthick-1-ne { background-position: -16px -48px; }
|
||||
.ui-icon-arrowthick-1-e { background-position: -32px -48px; }
|
||||
.ui-icon-arrowthick-1-se { background-position: -48px -48px; }
|
||||
.ui-icon-arrowthick-1-s { background-position: -64px -48px; }
|
||||
.ui-icon-arrowthick-1-sw { background-position: -80px -48px; }
|
||||
.ui-icon-arrowthick-1-w { background-position: -96px -48px; }
|
||||
.ui-icon-arrowthick-1-nw { background-position: -112px -48px; }
|
||||
.ui-icon-arrowthick-2-n-s { background-position: -128px -48px; }
|
||||
.ui-icon-arrowthick-2-ne-sw { background-position: -144px -48px; }
|
||||
.ui-icon-arrowthick-2-e-w { background-position: -160px -48px; }
|
||||
.ui-icon-arrowthick-2-se-nw { background-position: -176px -48px; }
|
||||
.ui-icon-arrowthickstop-1-n { background-position: -192px -48px; }
|
||||
.ui-icon-arrowthickstop-1-e { background-position: -208px -48px; }
|
||||
.ui-icon-arrowthickstop-1-s { background-position: -224px -48px; }
|
||||
.ui-icon-arrowthickstop-1-w { background-position: -240px -48px; }
|
||||
.ui-icon-arrowreturnthick-1-w { background-position: 0 -64px; }
|
||||
.ui-icon-arrowreturnthick-1-n { background-position: -16px -64px; }
|
||||
.ui-icon-arrowreturnthick-1-e { background-position: -32px -64px; }
|
||||
.ui-icon-arrowreturnthick-1-s { background-position: -48px -64px; }
|
||||
.ui-icon-arrowreturn-1-w { background-position: -64px -64px; }
|
||||
.ui-icon-arrowreturn-1-n { background-position: -80px -64px; }
|
||||
.ui-icon-arrowreturn-1-e { background-position: -96px -64px; }
|
||||
.ui-icon-arrowreturn-1-s { background-position: -112px -64px; }
|
||||
.ui-icon-arrowrefresh-1-w { background-position: -128px -64px; }
|
||||
.ui-icon-arrowrefresh-1-n { background-position: -144px -64px; }
|
||||
.ui-icon-arrowrefresh-1-e { background-position: -160px -64px; }
|
||||
.ui-icon-arrowrefresh-1-s { background-position: -176px -64px; }
|
||||
.ui-icon-arrow-4 { background-position: 0 -80px; }
|
||||
.ui-icon-arrow-4-diag { background-position: -16px -80px; }
|
||||
.ui-icon-extlink { background-position: -32px -80px; }
|
||||
.ui-icon-newwin { background-position: -48px -80px; }
|
||||
.ui-icon-refresh { background-position: -64px -80px; }
|
||||
.ui-icon-shuffle { background-position: -80px -80px; }
|
||||
.ui-icon-transfer-e-w { background-position: -96px -80px; }
|
||||
.ui-icon-transferthick-e-w { background-position: -112px -80px; }
|
||||
.ui-icon-folder-collapsed { background-position: 0 -96px; }
|
||||
.ui-icon-folder-open { background-position: -16px -96px; }
|
||||
.ui-icon-document { background-position: -32px -96px; }
|
||||
.ui-icon-document-b { background-position: -48px -96px; }
|
||||
.ui-icon-note { background-position: -64px -96px; }
|
||||
.ui-icon-mail-closed { background-position: -80px -96px; }
|
||||
.ui-icon-mail-open { background-position: -96px -96px; }
|
||||
.ui-icon-suitcase { background-position: -112px -96px; }
|
||||
.ui-icon-comment { background-position: -128px -96px; }
|
||||
.ui-icon-person { background-position: -144px -96px; }
|
||||
.ui-icon-print { background-position: -160px -96px; }
|
||||
.ui-icon-trash { background-position: -176px -96px; }
|
||||
.ui-icon-locked { background-position: -192px -96px; }
|
||||
.ui-icon-unlocked { background-position: -208px -96px; }
|
||||
.ui-icon-bookmark { background-position: -224px -96px; }
|
||||
.ui-icon-tag { background-position: -240px -96px; }
|
||||
.ui-icon-home { background-position: 0 -112px; }
|
||||
.ui-icon-flag { background-position: -16px -112px; }
|
||||
.ui-icon-calendar { background-position: -32px -112px; }
|
||||
.ui-icon-cart { background-position: -48px -112px; }
|
||||
.ui-icon-pencil { background-position: -64px -112px; }
|
||||
.ui-icon-clock { background-position: -80px -112px; }
|
||||
.ui-icon-disk { background-position: -96px -112px; }
|
||||
.ui-icon-calculator { background-position: -112px -112px; }
|
||||
.ui-icon-zoomin { background-position: -128px -112px; }
|
||||
.ui-icon-zoomout { background-position: -144px -112px; }
|
||||
.ui-icon-search { background-position: -160px -112px; }
|
||||
.ui-icon-wrench { background-position: -176px -112px; }
|
||||
.ui-icon-gear { background-position: -192px -112px; }
|
||||
.ui-icon-heart { background-position: -208px -112px; }
|
||||
.ui-icon-star { background-position: -224px -112px; }
|
||||
.ui-icon-link { background-position: -240px -112px; }
|
||||
.ui-icon-cancel { background-position: 0 -128px; }
|
||||
.ui-icon-plus { background-position: -16px -128px; }
|
||||
.ui-icon-plusthick { background-position: -32px -128px; }
|
||||
.ui-icon-minus { background-position: -48px -128px; }
|
||||
.ui-icon-minusthick { background-position: -64px -128px; }
|
||||
.ui-icon-close { background-position: -80px -128px; }
|
||||
.ui-icon-closethick { background-position: -96px -128px; }
|
||||
.ui-icon-key { background-position: -112px -128px; }
|
||||
.ui-icon-lightbulb { background-position: -128px -128px; }
|
||||
.ui-icon-scissors { background-position: -144px -128px; }
|
||||
.ui-icon-clipboard { background-position: -160px -128px; }
|
||||
.ui-icon-copy { background-position: -176px -128px; }
|
||||
.ui-icon-contact { background-position: -192px -128px; }
|
||||
.ui-icon-image { background-position: -208px -128px; }
|
||||
.ui-icon-video { background-position: -224px -128px; }
|
||||
.ui-icon-script { background-position: -240px -128px; }
|
||||
.ui-icon-alert { background-position: 0 -144px; }
|
||||
.ui-icon-info { background-position: -16px -144px; }
|
||||
.ui-icon-notice { background-position: -32px -144px; }
|
||||
.ui-icon-help { background-position: -48px -144px; }
|
||||
.ui-icon-check { background-position: -64px -144px; }
|
||||
.ui-icon-bullet { background-position: -80px -144px; }
|
||||
.ui-icon-radio-on { background-position: -96px -144px; }
|
||||
.ui-icon-radio-off { background-position: -112px -144px; }
|
||||
.ui-icon-pin-w { background-position: -128px -144px; }
|
||||
.ui-icon-pin-s { background-position: -144px -144px; }
|
||||
.ui-icon-play { background-position: 0 -160px; }
|
||||
.ui-icon-pause { background-position: -16px -160px; }
|
||||
.ui-icon-seek-next { background-position: -32px -160px; }
|
||||
.ui-icon-seek-prev { background-position: -48px -160px; }
|
||||
.ui-icon-seek-end { background-position: -64px -160px; }
|
||||
.ui-icon-seek-start { background-position: -80px -160px; }
|
||||
ui-icon-seek-first is deprecated, use ui-icon-seek-start instead
|
||||
.ui-icon-seek-first { background-position: -80px -160px; }
|
||||
.ui-icon-stop { background-position: -96px -160px; }
|
||||
.ui-icon-eject { background-position: -112px -160px; }
|
||||
.ui-icon-volume-off { background-position: -128px -160px; }
|
||||
.ui-icon-volume-on { background-position: -144px -160px; }
|
||||
.ui-icon-power { background-position: 0 -176px; }
|
||||
.ui-icon-signal-diag { background-position: -16px -176px; }
|
||||
.ui-icon-signal { background-position: -32px -176px; }
|
||||
.ui-icon-battery-0 { background-position: -48px -176px; }
|
||||
.ui-icon-battery-1 { background-position: -64px -176px; }
|
||||
.ui-icon-battery-2 { background-position: -80px -176px; }
|
||||
.ui-icon-battery-3 { background-position: -96px -176px; }
|
||||
.ui-icon-circle-plus { background-position: 0 -192px; }
|
||||
.ui-icon-circle-minus { background-position: -16px -192px; }
|
||||
.ui-icon-circle-close { background-position: -32px -192px; }
|
||||
.ui-icon-circle-triangle-e { background-position: -48px -192px; }
|
||||
.ui-icon-circle-triangle-s { background-position: -64px -192px; }
|
||||
.ui-icon-circle-triangle-w { background-position: -80px -192px; }
|
||||
.ui-icon-circle-triangle-n { background-position: -96px -192px; }
|
||||
.ui-icon-circle-arrow-e { background-position: -112px -192px; }
|
||||
.ui-icon-circle-arrow-s { background-position: -128px -192px; }
|
||||
.ui-icon-circle-arrow-w { background-position: -144px -192px; }
|
||||
.ui-icon-circle-arrow-n { background-position: -160px -192px; }
|
||||
.ui-icon-circle-zoomin { background-position: -176px -192px; }
|
||||
.ui-icon-circle-zoomout { background-position: -192px -192px; }
|
||||
.ui-icon-circle-check { background-position: -208px -192px; }
|
||||
.ui-icon-circlesmall-plus { background-position: 0 -208px; }
|
||||
.ui-icon-circlesmall-minus { background-position: -16px -208px; }
|
||||
.ui-icon-circlesmall-close { background-position: -32px -208px; }
|
||||
.ui-icon-squaresmall-plus { background-position: -48px -208px; }
|
||||
.ui-icon-squaresmall-minus { background-position: -64px -208px; }
|
||||
.ui-icon-squaresmall-close { background-position: -80px -208px; }
|
||||
.ui-icon-grip-dotted-vertical { background-position: 0 -224px; }
|
||||
.ui-icon-grip-dotted-horizontal { background-position: -16px -224px; }
|
||||
.ui-icon-grip-solid-vertical { background-position: -32px -224px; }
|
||||
.ui-icon-grip-solid-horizontal { background-position: -48px -224px; }
|
||||
.ui-icon-gripsmall-diagonal-se { background-position: -64px -224px; }
|
||||
.ui-icon-grip-diagonal-se { background-position: -80px -224px; }
|
||||
*/
|
||||
|
||||
/* Misc visuals
|
||||
----------------------------------*/
|
||||
|
||||
/* Corner radius */
|
||||
.ui-corner-all,
|
||||
.ui-corner-top,
|
||||
.ui-corner-left,
|
||||
.ui-corner-tl {
|
||||
border-top-left-radius: 2px;
|
||||
}
|
||||
.ui-corner-all,
|
||||
.ui-corner-top,
|
||||
.ui-corner-right,
|
||||
.ui-corner-tr {
|
||||
border-top-right-radius: 2px;
|
||||
}
|
||||
.ui-corner-all,
|
||||
.ui-corner-bottom,
|
||||
.ui-corner-left,
|
||||
.ui-corner-bl {
|
||||
border-bottom-left-radius: 2px;
|
||||
}
|
||||
.ui-corner-all,
|
||||
.ui-corner-bottom,
|
||||
.ui-corner-right,
|
||||
.ui-corner-br {
|
||||
border-bottom-right-radius: 2px;
|
||||
}
|
||||
|
||||
/* Overlays */
|
||||
.ui-widget-overlay {
|
||||
/*background: #aaaaaa url(images/ui-bg_flat_0_aaaaaa_40x100.png) 50% 50% repeat-x;*/
|
||||
background: #aaa;
|
||||
opacity: .3;
|
||||
filter: Alpha(Opacity=30);
|
||||
}
|
||||
.ui-widget-shadow {
|
||||
margin: -8px 0 0 -8px;
|
||||
padding: 8px;
|
||||
/*background: #aaaaaa url(images/ui-bg_flat_0_aaaaaa_40x100.png) 50% 50% repeat-x;*/
|
||||
background: #aaa;
|
||||
opacity: .3;
|
||||
filter: Alpha(Opacity=30);
|
||||
border-radius: 8px;
|
||||
}
|
||||
|
||||
|
|
@ -1,5 +0,0 @@
|
|||
/*! jQuery UI - v1.10.3 - 2013-11-25
|
||||
* http://jqueryui.com
|
||||
* Includes: jquery.ui.core.css, jquery.ui.selectable.css, jquery.ui.autocomplete.css, jquery.ui.menu.css, jquery.ui.theme.css
|
||||
* Copyright 2013 jQuery Foundation and other contributors; Licensed MIT */
|
||||
.ui-helper-hidden{display:none}.ui-helper-hidden-accessible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.ui-helper-reset{margin:0;padding:0;border:0;outline:0;line-height:1.3;text-decoration:none;font-size:100%;list-style:none}.ui-helper-clearfix:after,.ui-helper-clearfix:before{content:"";display:table;border-collapse:collapse}.ui-helper-clearfix:after{clear:both}.ui-helper-zfix{width:100%;height:100%;top:0;left:0;position:absolute;opacity:0}.ui-front{z-index:100}.ui-state-disabled{cursor:default!important;pointer-events:none}.ui-icon{display:inline-block;vertical-align:middle;margin-top:-.25em;position:relative;text-indent:-99999px;overflow:hidden;background-repeat:no-repeat}.ui-widget-icon-block{left:50%;margin-left:-8px;display:block}.ui-widget-overlay{position:fixed;top:0;left:0;width:100%;height:100%}.ui-selectable-helper{position:absolute;z-index:100;border:1px dotted #000}.ui-autocomplete{position:absolute;top:0;left:0;cursor:default}.ui-menu{list-style:none;padding:2px;margin:0;display:block;outline:0}.ui-menu .ui-menu{margin-top:-3px;position:absolute}.ui-menu .ui-menu-item{margin:0;padding:0;width:100%;list-style-image:url(data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)}.ui-menu .ui-menu-divider{margin:5px -2px 5px -2px;height:0;font-size:0;line-height:0;border-width:1px 0 0 0}.ui-menu .ui-menu-item a{text-decoration:none;display:block;padding:2px .4em;line-height:1.5;min-height:0;font-weight:400}.ui-menu .ui-menu-item a.ui-state-active,.ui-menu .ui-menu-item a.ui-state-focus{font-weight:400;margin:-1px}.ui-menu .ui-state-disabled{font-weight:400;margin:.4em 0 .2em;line-height:1.5}.ui-menu .ui-state-disabled a{cursor:default}.ui-menu-icons{position:relative}.ui-menu-icons .ui-menu-item a{position:relative;padding-left:2em}.ui-menu .ui-icon{position:absolute;top:.2em;left:.2em}.ui-menu .ui-menu-icon{position:static;float:right}.ui-widget{font-family:Verdana,Arial,sans-serif;font-size:1.1em}.ui-widget .ui-widget{font-size:1em}.ui-widget button,.ui-widget input,.ui-widget select,.ui-widget textarea{font-family:Verdana,Arial,sans-serif;font-size:1em}.ui-widget-content{border:1px solid #aaa;background:#fff;color:#222}.ui-widget-content a{color:#222}.ui-widget-header{border:1px solid #aaa;background:#ccc;color:#222;font-weight:700}.ui-widget-header a{color:#222}.ui-state-default,.ui-widget-content .ui-state-default,.ui-widget-header .ui-state-default{border:1px solid #ccc;background:#eee;font-weight:400;color:#555}.ui-state-default a,.ui-state-default a:link,.ui-state-default a:visited{color:#555;text-decoration:none}.ui-state-focus,.ui-state-hover,.ui-widget-content .ui-state-focus,.ui-widget-content .ui-state-hover,.ui-widget-header .ui-state-focus,.ui-widget-header .ui-state-hover{border:1px solid #ccc;background:#eee;font-weight:400;color:#212121}.ui-state-hover a,.ui-state-hover a:hover,.ui-state-hover a:link,.ui-state-hover a:visited{color:#212121;text-decoration:none}.ui-state-active,.ui-widget-content .ui-state-active,.ui-widget-header .ui-state-active{border:1px solid #aaa;background:#fff;font-weight:400;color:#212121}.ui-state-active a,.ui-state-active a:link,.ui-state-active a:visited{color:#212121;text-decoration:none}.ui-state-highlight,.ui-widget-content .ui-state-highlight,.ui-widget-header .ui-state-highlight{border:1px solid #fcefa1;background:#fbf9ee;color:#363636}.ui-state-highlight a,.ui-widget-content .ui-state-highlight a,.ui-widget-header .ui-state-highlight a{color:#363636}.ui-state-error,.ui-widget-content .ui-state-error,.ui-widget-header .ui-state-error{border:1px solid #cd0a0a;background:#fef1ec;color:#cd0a0a}.ui-state-error a,.ui-widget-content .ui-state-error a,.ui-widget-header .ui-state-error a{color:#cd0a0a}.ui-state-error-text,.ui-widget-content .ui-state-error-text,.ui-widget-header .ui-state-error-text{color:#cd0a0a}.ui-priority-primary,.ui-widget-content .ui-priority-primary,.ui-widget-header .ui-priority-primary{font-weight:700}.ui-priority-secondary,.ui-widget-content .ui-priority-secondary,.ui-widget-header .ui-priority-secondary{opacity:.7;filter:Alpha(Opacity=70);font-weight:400}.ui-state-disabled,.ui-widget-content .ui-state-disabled,.ui-widget-header .ui-state-disabled{opacity:.35;filter:Alpha(Opacity=35);background-image:none}.ui-state-disabled .ui-icon{filter:Alpha(Opacity=35)}.ui-icon{width:16px;height:16px}.ui-corner-all,.ui-corner-left,.ui-corner-tl,.ui-corner-top{border-top-left-radius:2px}.ui-corner-all,.ui-corner-right,.ui-corner-top,.ui-corner-tr{border-top-right-radius:2px}.ui-corner-all,.ui-corner-bl,.ui-corner-bottom,.ui-corner-left{border-bottom-left-radius:2px}.ui-corner-all,.ui-corner-bottom,.ui-corner-br,.ui-corner-right{border-bottom-right-radius:2px}.ui-widget-overlay{background:#aaa;opacity:.3;filter:Alpha(Opacity=30)}.ui-widget-shadow{margin:-8px 0 0 -8px;padding:8px;background:#aaa;opacity:.3;filter:Alpha(Opacity=30);border-radius:8px}
|
||||
5823
vendors/jquery-ui/js/jquery-ui-1.12.1.custom.js
vendored
70
vendors/jquery-ui/package.json
vendored
|
|
@ -1,70 +0,0 @@
|
|||
{
|
||||
"name": "jquery-ui",
|
||||
"title": "jQuery UI",
|
||||
"description": "A curated set of user interface interactions, effects, widgets, and themes built on top of the jQuery JavaScript Library.",
|
||||
"version": "1.12.1",
|
||||
"homepage": "http://jqueryui.com",
|
||||
"author": {
|
||||
"name": "jQuery Foundation and other contributors",
|
||||
"url": "https://github.com/jquery/jquery-ui/blob/1.12.1/AUTHORS.txt"
|
||||
},
|
||||
"maintainers": [
|
||||
{
|
||||
"name": "Scott González",
|
||||
"email": "scott.gonzalez@gmail.com",
|
||||
"url": "http://scottgonzalez.com"
|
||||
},
|
||||
{
|
||||
"name": "Jörn Zaefferer",
|
||||
"email": "joern.zaefferer@gmail.com",
|
||||
"url": "http://bassistance.de"
|
||||
},
|
||||
{
|
||||
"name": "Kris Borchers",
|
||||
"email": "kris.borchers@gmail.com",
|
||||
"url": "http://krisborchers.com"
|
||||
},
|
||||
{
|
||||
"name": "Corey Frang",
|
||||
"email": "gnarf37@gmail.com",
|
||||
"url": "http://gnarf.net"
|
||||
},
|
||||
{
|
||||
"name": "Mike Sherov",
|
||||
"email": "mike.sherov@gmail.com",
|
||||
"url": "http://mike.sherov.com"
|
||||
},
|
||||
{
|
||||
"name": "TJ VanToll",
|
||||
"email": "tj.vantoll@gmail.com",
|
||||
"url": "http://tjvantoll.com"
|
||||
}
|
||||
],
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "git://github.com/jquery/jquery-ui.git"
|
||||
},
|
||||
"bugs": "http://bugs.jqueryui.com/",
|
||||
"licenses": [
|
||||
{
|
||||
"type": "MIT",
|
||||
"url": "https://github.com/jquery/jquery-ui/blob/1.12.1/MIT-LICENSE.txt"
|
||||
}
|
||||
],
|
||||
"dependencies": {},
|
||||
"devDependencies": {
|
||||
"grunt": "0.4.1",
|
||||
"grunt-contrib-jshint": "0.4.1",
|
||||
"grunt-contrib-uglify": "0.1.1",
|
||||
"grunt-contrib-concat": "0.1.3",
|
||||
"grunt-contrib-qunit": "0.2.0",
|
||||
"grunt-contrib-csslint": "0.1.0",
|
||||
"grunt-contrib-cssmin": "0.4.2",
|
||||
"grunt-compare-size": "0.3.1",
|
||||
"grunt-html": "0.3.3",
|
||||
"grunt-git-authors": "1.2.0",
|
||||
"rimraf": "2.1.4",
|
||||
"testswarm": "1.0.0-alpha"
|
||||
},
|
||||
"keywords": []
|
||||
}
|
||||