From 8ef774a513205ea531dad37c1ac0fb9225c6ec20 Mon Sep 17 00:00:00 2001 From: Jack Lukic Date: Fri, 14 Jun 2013 11:31:56 -0400 Subject: [PATCH] Updates to dropdown, checkbox, examples, forms Former-commit-id: 498f223b8fe0035b95352e0f7719ee48bf67c817 Former-commit-id: 1c2d5ed712fbaf372050b44718f6deffc1a93809 --- build/minified/collections/form.min.css | 2 +- build/minified/modules/behavior/state.min.js | 2 +- build/minified/modules/checkbox.js | 18 ++-- build/minified/modules/checkbox.min.js | 2 +- build/minified/modules/dimmer.min.css | 2 +- build/minified/modules/dimmer.min.js | 2 +- build/minified/modules/dropdown.min.css | 2 +- build/minified/modules/dropdown.min.js | 2 +- build/packaged/modules/checkbox.js | 18 ++-- .../packaged/semantic.min.css.REMOVED.git-id | 2 +- build/packaged/semantic.min.js.REMOVED.git-id | 2 +- build/uncompressed/collections/form.css | 15 +++- build/uncompressed/modules/checkbox.js | 18 ++-- build/uncompressed/modules/dimmer.css | 3 +- build/uncompressed/modules/dropdown.css | 10 ++- node/src/documents/collections/form.html | 59 ++++++++++--- node/src/documents/modules/checkbox.html | 82 ++++++++++++------- .../components/semantic/collections/form.css | 15 +++- .../semantic/modules/behavior/state.js | 10 ++- .../components/semantic/modules/checkbox.js | 18 ++-- .../components/semantic/modules/dimmer.css | 3 +- .../components/semantic/modules/dropdown.css | 10 ++- node/src/files/javascript/checkbox.js | 2 +- node/src/files/javascript/semantic.js | 2 +- node/src/files/overrides/card.js | 4 +- node/src/files/stylesheets/semantic.css | 5 +- src/collections/form.less | 18 +++- src/modules/checkbox.js | 18 ++-- src/modules/dimmer.less | 3 +- src/modules/dropdown.less | 12 ++- 30 files changed, 258 insertions(+), 103 deletions(-) mode change 100644 => 100755 node/src/files/javascript/checkbox.js diff --git a/build/minified/collections/form.min.css b/build/minified/collections/form.min.css index 4353845ef..f5ef383aa 100644 --- a/build/minified/collections/form.min.css +++ b/build/minified/collections/form.min.css @@ -1 +1 @@ -.ui.form{position:relative;max-width:100%}.ui.form :first-child{margin-top:0}.ui.form>p{margin:1em 0}.ui.form .field{clear:both;margin:0 0 1em}.ui.form .field>label{margin:0 0 .3em;display:block;color:#555;font-size:.875em;line-height:1.2}.ui.form textarea,.ui.form input[type=text],.ui.form input[type=date],.ui.form input[type=password],.ui.form .ui.input{width:100%}.ui.form textarea,.ui.form input[type=text],.ui.form input[type=date],.ui.form input[type=password]{margin:0;padding:.9em 1.2em;font-size:.825em;background-color:#FFF;border:1px solid rgba(0,0,0,.15);outline:0;color:rgba(0,0,0,.7);-webkit-border-radius:.3125em;-moz-border-radius:.3125em;border-radius:.3125em;-webkit-transition:background-color .3s ease-out,box-shadow .2s ease,border-color .2s ease;-moz-transition:background-color .3s ease-out,box-shadow .2s ease,border-color .2s ease;-o-transition:background-color .3s ease-out,box-shadow .2s ease,border-color .2s ease;-ms-transition:background-color .3s ease-out,box-shadow .2s ease,border-color .2s ease;transition:background-color .3s ease-out,box-shadow .2s ease,border-color .2s ease;-webkit-box-shadow:0 rgba(0,0,0,.3) inset;-moz-box-shadow:0 rgba(0,0,0,.3) inset;box-shadow:0 rgba(0,0,0,.3) inset;-webkit-tap-highlight-color:rgba(255,255,255,0);-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box}.ui.textarea,.ui.form textarea{line-height:1.33;min-height:8em;height:12em;max-height:24em;resize:vertical}.ui.form select{-webkit-tap-highlight-color:rgba(255,255,255,0)}.ui.form textarea,.ui.form input[type=checkbox]{vertical-align:top}.ui.form .divider{clear:both;margin:1em 0}.ui.form .info.message,.ui.form .warning.message,.ui.form .error.message{display:none}.ui.form .message:first-child{margin-top:0}.ui.form .field .prompt.label{white-space:nowrap}.ui.form .inline.field .prompt{margin-top:0;margin-left:1em}.ui.form .inline.field .prompt:before{margin-top:-.3em;bottom:auto;right:auto;top:50%;left:0}.ui.form input[type=text]:focus,.ui.form input[type=password]:focus,.ui.form textarea:focus{color:rgba(0,0,0,.85);border-color:rgba(0,0,0,.2);border-bottom-left-radius:0;border-top-left-radius:0;-webkit-box-shadow:.3em 0 0 0 rgba(0,0,0,.2) inset;-moz-box-shadow:.3em 0 0 0 rgba(0,0,0,.2) inset;box-shadow:.3em 0 0 0 rgba(0,0,0,.2) inset}.ui.form.warning .warning.message{display:block}.ui.form.error .error.message{display:block}.ui.form .fields.error .field label,.ui.form .field.error label{color:#EF4D6D}.ui.form .fields.error .field textarea,.ui.form .fields.error .field input[type=text],.ui.form .fields.error .field input[type=date],.ui.form .fields.error .field input[type=password],.ui.form .field.error textarea,.ui.form .field.error input[type=text],.ui.form .field.error input[type=date],.ui.form .field.error input[type=password]{background-color:#FFFAFA;border-color:#E7BEBE;border-left:0;color:#EF4D6D;padding-left:1.2em;border-bottom-left-radius:0;border-top-left-radius:0;-webkit-box-shadow:.3em 0 0 0 #EF4D6D inset;-moz-box-shadow:.3em 0 0 0 #EF4D6D inset;box-shadow:.3em 0 0 0 #EF4D6D inset}.ui.form .field.error textarea:focus,.ui.form .field.error input[type=text]:focus,.ui.form .field.error input[type=password]:focus{border-color:#ff5050;color:#ff5050;-webkit-box-shadow:.3em 0 0 0 #FF5050 inset;-moz-box-shadow:.3em 0 0 0 #FF5050 inset;box-shadow:.3em 0 0 0 #FF5050 inset}.ui.form ::-webkit-input-placeholder{color:#E0E0E0}.ui.form ::-moz-placeholder{color:#E0E0E0}.ui.form :focus::-webkit-input-placeholder{color:#AAA}.ui.form :focus::-moz-placeholder{color:#AAA}.ui.form .error ::-webkit-input-placeholder{color:rgba(255,80,80,.4)}.ui.form .error ::-moz-placeholder{color:rgba(255,80,80,.4)}.ui.form .error :focus::-webkit-input-placeholder{color:rgba(255,80,80,.7)}.ui.form .error :focus::-moz-placeholder{color:rgba(255,80,80,.7)}.ui.form .field :disabled,.ui.form .field.disabled{opacity:.5}.ui.form .field.disabled label{opacity:.5}.ui.form .field.disabled :disabled{opacity:1}.ui.form.loading{position:relative}.ui.form.loading:after{position:absolute;top:0;left:0;content:'';width:100%;height:100%;background:rgba(255,255,255,.8) url(../images/loader-large.gif) no-repeat 50% 50%;visibility:visible}.ui.form.fluid{width:100%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box}.ui.form input.attached{width:auto}.ui.form .date.field>label{position:relative}.ui.form .date.field>label:after{position:absolute;top:1.4em;right:.5em;font-family:Icons;content:'📅';font-size:1.5em;font-weight:400;color:#CCC}.ui.inverted.form label{color:#FFF}.ui.inverted.form .field.error textarea,.ui.inverted.form .field.error input[type=text]{background-color:#FCC}.ui.form .fields{clear:both}.ui.form .fields:after{content:' ';display:block;clear:both;visibility:hidden;line-height:0;height:0}.ui.form .fields .field{clear:none;float:left;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box}.ui.form .fields .field:first-child{border-left:0;box-shadow:none}.ui.form .two.fields .field{width:50%;padding-left:1%;padding-right:1%}.ui.form .three.fields .field{width:33.333%;padding-left:1%;padding-right:1%}.ui.form .four.fields .field{width:25%;padding-left:1%;padding-right:1%}.ui.form .five.fields .field{width:20%;padding-left:1%;padding-right:1%}.ui.form .fields .field:first-child{padding-left:0}.ui.form .fields .field:last-child{padding-right:0}.ui.form .inline.fields .field{margin-right:.5em}.ui.form .inline.fields .field>label,.ui.form .inline.fields .field>p,.ui.form .inline.fields .field>input,.ui.form .inline.fields .field>select,.ui.form .inline.field>label,.ui.form .inline.field>p,.ui.form .inline.field>input,.ui.form .inline.field>select{display:inline-block;width:auto;margin-top:0;margin-bottom:0;vertical-align:middle;font-size:1em}.ui.form .inline.fields .field>input,.ui.form .inline.field>input{font-size:.875em}.ui.form .inline.fields .field>:first-child,.ui.form .inline.field>:first-child{margin:0 .5em 0 0}.ui.form .inline.fields .field>:only-child,.ui.form .inline.field>:only-child{margin:0}.ui.small.form{font-size:.875em}.ui.small.form textarea,.ui.small.form input[type=text],.ui.small.form input[type=password],.ui.small.form label{font-size:1em}.ui.large.form{font-size:1.125em} \ No newline at end of file +.ui.form{position:relative;max-width:100%}.ui.form :first-child{margin-top:0}.ui.form>p{margin:1em 0}.ui.form .field{clear:both;margin:0 0 1em}.ui.form .field>label{margin:0 0 .3em;display:block;color:#555;font-size:.875em;line-height:1.2}.ui.form textarea,.ui.form input[type=text],.ui.form input[type=date],.ui.form input[type=password],.ui.form .ui.input{width:100%}.ui.form textarea,.ui.form input[type=text],.ui.form input[type=date],.ui.form input[type=password]{margin:0;padding:.9em 1.2em;font-size:.825em;background-color:#FFF;border:1px solid rgba(0,0,0,.15);outline:0;color:rgba(0,0,0,.7);-webkit-border-radius:.3125em;-moz-border-radius:.3125em;border-radius:.3125em;-webkit-transition:background-color .3s ease-out,box-shadow .2s ease,border-color .2s ease;-moz-transition:background-color .3s ease-out,box-shadow .2s ease,border-color .2s ease;-o-transition:background-color .3s ease-out,box-shadow .2s ease,border-color .2s ease;-ms-transition:background-color .3s ease-out,box-shadow .2s ease,border-color .2s ease;transition:background-color .3s ease-out,box-shadow .2s ease,border-color .2s ease;-webkit-box-shadow:0 rgba(0,0,0,.3) inset;-moz-box-shadow:0 rgba(0,0,0,.3) inset;box-shadow:0 rgba(0,0,0,.3) inset;-webkit-tap-highlight-color:rgba(255,255,255,0);-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box}.ui.textarea,.ui.form textarea{line-height:1.33;min-height:8em;height:12em;max-height:24em;resize:vertical}.ui.form select{-webkit-tap-highlight-color:rgba(255,255,255,0)}.ui.form textarea,.ui.form input[type=checkbox]{vertical-align:top}.ui.form .divider{clear:both;margin:1em 0}.ui.form .info.message,.ui.form .warning.message,.ui.form .error.message{display:none}.ui.form .message:first-child{margin-top:0}.ui.form .field .prompt.label{white-space:nowrap}.ui.form .inline.field .prompt{margin-top:0;margin-left:1em}.ui.form .inline.field .prompt:before{margin-top:-.3em;bottom:auto;right:auto;top:50%;left:0}.ui.form input[type=text]:focus,.ui.form input[type=password]:focus,.ui.form textarea:focus{color:rgba(0,0,0,.85);border-color:rgba(0,0,0,.2);border-bottom-left-radius:0;border-top-left-radius:0;-webkit-box-shadow:.3em 0 0 0 rgba(0,0,0,.2) inset;-moz-box-shadow:.3em 0 0 0 rgba(0,0,0,.2) inset;box-shadow:.3em 0 0 0 rgba(0,0,0,.2) inset}.ui.form.warning .warning.message{display:block}.ui.form.error .error.message{display:block}.ui.form .fields.error .field label,.ui.form .field.error label{color:#EF4D6D}.ui.form .fields.error .field textarea,.ui.form .fields.error .field input[type=text],.ui.form .fields.error .field input[type=date],.ui.form .fields.error .field input[type=password],.ui.form .field.error textarea,.ui.form .field.error input[type=text],.ui.form .field.error input[type=date],.ui.form .field.error input[type=password]{background-color:#FFFAFA;border-color:#E7BEBE;border-left:0;color:#EF4D6D;padding-left:1.2em;border-bottom-left-radius:0;border-top-left-radius:0;-webkit-box-shadow:.3em 0 0 0 #EF4D6D inset;-moz-box-shadow:.3em 0 0 0 #EF4D6D inset;box-shadow:.3em 0 0 0 #EF4D6D inset}.ui.form .field.error textarea:focus,.ui.form .field.error input[type=text]:focus,.ui.form .field.error input[type=password]:focus{border-color:#ff5050;color:#ff5050;-webkit-box-shadow:.3em 0 0 0 #FF5050 inset;-moz-box-shadow:.3em 0 0 0 #FF5050 inset;box-shadow:.3em 0 0 0 #FF5050 inset}.ui.form ::-webkit-input-placeholder{color:#E0E0E0}.ui.form ::-moz-placeholder{color:#E0E0E0}.ui.form :focus::-webkit-input-placeholder{color:#AAA}.ui.form :focus::-moz-placeholder{color:#AAA}.ui.form .error ::-webkit-input-placeholder{color:rgba(255,80,80,.4)}.ui.form .error ::-moz-placeholder{color:rgba(255,80,80,.4)}.ui.form .error :focus::-webkit-input-placeholder{color:rgba(255,80,80,.7)}.ui.form .error :focus::-moz-placeholder{color:rgba(255,80,80,.7)}.ui.form .field :disabled,.ui.form .field.disabled{opacity:.5}.ui.form .field.disabled label{opacity:.5}.ui.form .field.disabled :disabled{opacity:1}.ui.form.loading{position:relative}.ui.form.loading:after{position:absolute;top:0;left:0;content:'';width:100%;height:100%;background:rgba(255,255,255,.8) url(../images/loader-large.gif) no-repeat 50% 50%;visibility:visible}.ui.form.fluid{width:100%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box}.ui.form input.attached{width:auto}.ui.form .date.field>label{position:relative}.ui.form .date.field>label:after{position:absolute;top:1.4em;right:.5em;font-family:Icons;content:'📅';font-size:1.5em;font-weight:400;color:#CCC}.ui.inverted.form label{color:#FFF}.ui.inverted.form .field.error textarea,.ui.inverted.form .field.error input[type=text]{background-color:#FCC}.ui.form .grouped.fields{margin:0 0 1em}.ui.form .grouped.fields .field{display:block;float:none;margin:.5em 0;padding:0}.ui.form .fields{clear:both}.ui.form .fields:after{content:' ';display:block;clear:both;visibility:hidden;line-height:0;height:0}.ui.form .fields .field{clear:none;float:left;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box}.ui.form .fields .field:first-child{border-left:0;box-shadow:none}.ui.form .two.fields .field{width:50%;padding-left:1%;padding-right:1%}.ui.form .three.fields .field{width:33.333%;padding-left:1%;padding-right:1%}.ui.form .four.fields .field{width:25%;padding-left:1%;padding-right:1%}.ui.form .five.fields .field{width:20%;padding-left:1%;padding-right:1%}.ui.form .fields .field:first-child{padding-left:0}.ui.form .fields .field:last-child{padding-right:0}.ui.form .inline.fields .field{margin-right:.5em}.ui.form .inline.fields .field>label,.ui.form .inline.fields .field>p,.ui.form .inline.fields .field>input,.ui.form .inline.fields .field>select,.ui.form .inline.field>label,.ui.form .inline.field>p,.ui.form .inline.field>input,.ui.form .inline.field>select{display:inline-block;width:auto;margin-top:0;margin-bottom:0;vertical-align:middle;font-size:1em}.ui.form .inline.fields .field>input,.ui.form .inline.field>input{font-size:.875em}.ui.form .inline.fields .field>:first-child,.ui.form .inline.field>:first-child{margin:0 .5em 0 0}.ui.form .inline.fields .field>:only-child,.ui.form .inline.field>:only-child{margin:0}.ui.small.form{font-size:.875em}.ui.small.form textarea,.ui.small.form input[type=text],.ui.small.form input[type=password],.ui.small.form label{font-size:1em}.ui.large.form{font-size:1.125em} \ No newline at end of file diff --git a/build/minified/modules/behavior/state.min.js b/build/minified/modules/behavior/state.min.js index 99e98a187..0cd7b7e12 100644 --- a/build/minified/modules/behavior/state.min.js +++ b/build/minified/modules/behavior/state.min.js @@ -1 +1 @@ -(function(e,t,n,o){e.fn.state=function(t){var n,i=e(this),a=i.selector||"",r=arguments[0],s=[].slice.call(arguments,1),c=(new Date).getTime(),l=[];return i.each(function(){var u,d=e(this),f=e.extend(!0,{},e.fn.state.settings,t),m=this,g=d.data("module-"+f.namespace),p="string"==typeof r,v=f.namespace,h=f.metadata,b=f.className,x=f.states,y=f.text;u={initialize:function(){u.verbose("Initializing module",m),f.automatic&&u.add.defaults(),f.context&&""!==a?(u.allows("hover")&&e(m,f.context).on(a,"mouseenter."+v,u.hover.enable).on(a,"mouseleave."+v,u.hover.disable),u.allows("pressed")&&e(m,f.context).on(a,"mousedown."+v,u.pressed.enable).on(a,"mouseup."+v,u.pressed.disable),u.allows("focus")&&e(m,f.context).on(a,"focus."+v,u.focus.enable).on(a,"blur."+v,u.focus.disable),e(f.context).on(a,"mouseenter."+v,u.text.change).on(a,"mouseleave."+v,u.text.reset).on(a,"click."+v,u.toggle)):(u.allows("hover")&&d.on("mouseenter."+v,u.hover.enable).on("mouseleave."+v,u.hover.disable),u.allows("pressed")&&d.on("mousedown."+v,u.pressed.enable).on("mouseup."+v,u.pressed.disable),u.allows("focus")&&d.on("focus."+v,u.focus.enable).on("blur."+v,u.focus.disable),d.on("mouseenter."+v,u.text.change).on("mouseleave."+v,u.text.reset).on("click."+v,u.toggle)),d.data("module-"+v,u)},destroy:function(){u.verbose("Destroying previous module",m),d.off("."+v)},refresh:function(){u.verbose("Refreshing selector cache",m),d=e(m)},add:{defaults:function(){var n=t&&e.isPlainObject(t.states)?t.states:{};e.each(f.defaults,function(t,i){u.is[t]!==o&&u.is[t]()&&(u.verbose("Adding default states",t,m),e.extend(f.states,i,n))})}},is:{active:function(){return d.hasClass(b.active)},loading:function(){return d.hasClass(b.loading)},inactive:function(){return!d.hasClass(b.active)},enabled:function(){return!d.is(f.filter.active)},disabled:function(){return d.is(f.filter.active)},textEnabled:function(){return!d.is(f.filter.text)},button:function(){return d.is(".button:not(a, .submit)")},input:function(){return d.is("input")}},allows:function(e){return x[e]||!1},enable:function(e){u.allows(e)&&d.addClass(b[e])},disable:function(e){u.allows(e)&&d.removeClass(b[e])},textFor:function(e){return y[e]||!1},focus:{enable:function(){d.addClass(b.focus)},disable:function(){d.removeClass(b.focus)}},hover:{enable:function(){d.addClass(b.hover)},disable:function(){d.removeClass(b.hover)}},pressed:{enable:function(){d.addClass(b.pressed).one("mouseleave",u.pressed.disable)},disable:function(){d.removeClass(b.pressed)}},toggle:function(){var e=d.data(h.promise);u.allows("active")&&u.is.enabled()&&(u.refresh(),e!==o?u.listenTo(e):u.change())},listenTo:function(t){u.debug("API request detected, waiting for state signal",t),t?(y.loading&&u.text.update(y.loading),e.when(t).then(function(){"resolved"==t.state()?(u.debug("API request succeeded"),f.activateTest=function(){return!0},f.deactivateTest=function(){return!0}):(u.debug("API request failed"),f.activateTest=function(){return!1},f.deactivateTest=function(){return!1}),u.change()})):(f.activateTest=function(){return!1},f.deactivateTest=function(){return!1})},change:function(){u.debug("Determining state change direction"),u.is.inactive()?u.activate():u.deactivate(),f.sync&&u.sync(),f.onChange()},activate:function(){e.proxy(f.activateTest,m)()&&(u.debug("Setting state to active"),d.addClass(b.active),u.text.update(y.active))},deactivate:function(){e.proxy(f.deactivateTest,m)()&&(u.debug("Setting state to inactive"),d.removeClass(b.active),u.text.update(y.inactive))},sync:function(){u.verbose("Syncing other buttons to current state"),u.is.active()?i.not(d).state("activate"):i.not(d).state("deactivate")},text:{get:function(){return f.selector.text?d.find(f.selector.text).text():d.html()},flash:function(e,t){var n=u.text.get();e=e||f.text.flash,t=t||f.flashDuration,u.text.update(e),setTimeout(function(){u.text.update(n)},t)},change:function(){u.verbose("Checking if text should be changed"),u.is.textEnabled()&&(u.is.active()?y.hover?(u.verbose("Changing text to hover text",y.hover),u.text.update(y.hover)):y.disable&&(u.verbose("Changing text to disable text",y.disable),u.text.update(y.disable)):y.hover?(u.verbose("Changing text to hover text",y.disable),u.text.update(y.hover)):y.enable&&(u.verbose("Changing text to enable text",y.disable),u.text.update(y.enable)))},reset:function(){var e=y.active||d.data(h.storedText),t=y.inactive||d.data(h.storedText);u.is.textEnabled()&&(u.is.active()&&e?(u.verbose("Resetting active text",e),u.text.update(e)):t&&(u.verbose("Resetting inactive text",e),u.text.update(t)))},update:function(e){var t=u.text.get();e&&e!==t&&(u.debug("Updating text",e),f.selector.text?d.data(h.storedText,e).find(f.selector.text).text(e):d.data(h.storedText,e).html(e))}},setting:function(e,t){return t===o?f[e]:(f[e]=t,o)},performance:{log:function(e){var t,n;f.performance&&(t=(new Date).getTime(),n=t-c,c=t,l.push({Name:e,"Execution Time":n}),clearTimeout(u.performance.timer),u.performance.timer=setTimeout(u.performance.display,100))},display:function(){var t=f.moduleName+" Performance ("+a+")";f.moduleName+": "+a+"("+i.size()+" elements)",console.group!==o&&l.length>0&&(console.groupCollapsed(t),console.table?console.table(l):e.each(l,function(e,t){console.log(t.Name+":"+t["Execution Time"])}),console.groupEnd(),l=[])}},verbose:function(){f.verbose&&f.debug&&(u.performance.log(arguments[0]),u.verbose=Function.prototype.bind.call(console.info,console,f.moduleName+":"))},debug:function(){f.debug&&(u.performance.log(arguments[0]),u.debug=Function.prototype.bind.call(console.info,console,f.moduleName+":"))},error:function(){console.log!==o&&(u.error=Function.prototype.bind.call(console.log,console,f.moduleName+":"))},invoke:function(t,n,i){var a,r;return i=i||[].slice.call(arguments,2),"string"==typeof t&&g!==o&&(t=t.split("."),a=t.length-1,e.each(t,function(t,n){return e.isPlainObject(g[n])&&t!=a?(g=g[n],!0):g[n]!==o?(r=g[n],!0):(u.error(f.errors.method),!1)})),e.isFunction(r)?r.apply(n,i):r}},p?n=u.invoke(r,this,s):(g!==o&&u.destroy(),u.initialize())}),n!==o?n:this},e.fn.state.settings={moduleName:"State Module",debug:!0,verbose:!1,namespace:"state",performance:!0,onChange:function(){},activateTest:function(){return!0},deactivateTest:function(){return!0},automatic:!0,sync:!1,flashDuration:3e3,filter:{text:".loading, .disabled",active:".disabled"},context:!1,errors:{method:"The method you called is not defined."},metadata:{promise:"promise",storedText:"stored-text"},className:{focus:"focus",hover:"hover",pressed:"down",active:"active",loading:"loading"},selector:{text:!1},defaults:{input:{hover:!0,focus:!0,pressed:!0,loading:!1,active:!1},button:{hover:!0,focus:!1,pressed:!0,active:!1,loading:!0}},states:{hover:!0,focus:!0,pressed:!0,loading:!1,active:!1},text:{flash:!1,hover:!1,active:!1,inactive:!1,enable:!1,disable:!1}}})(jQuery,window,document); \ No newline at end of file +(function(e,t,n,o){e.fn.state=function(t){var n,i=e(this),a=i.selector||"",r=arguments[0],s=[].slice.call(arguments,1),c=(new Date).getTime(),l=[];return i.each(function(){var u,d=e(this),f=e.extend(!0,{},e.fn.state.settings,t),m=this,g=d.data("module-"+f.namespace),p="string"==typeof r,v=f.namespace,h=f.metadata,b=f.className,x=f.states,y=f.text;u={initialize:function(){u.verbose("Initializing module",m),f.automatic&&u.add.defaults(),f.context&&""!==a?(u.allows("hover")&&e(m,f.context).on(a,"mouseenter."+v,u.hover.enable).on(a,"mouseleave."+v,u.hover.disable),u.allows("pressed")&&e(m,f.context).on(a,"mousedown."+v,u.pressed.enable).on(a,"mouseup."+v,u.pressed.disable),u.allows("focus")&&e(m,f.context).on(a,"focus."+v,u.focus.enable).on(a,"blur."+v,u.focus.disable),e(f.context).on(a,"mouseenter."+v,u.text.change).on(a,"mouseleave."+v,u.text.reset).on(a,"click."+v,u.toggle)):(u.allows("hover")&&d.on("mouseenter."+v,u.hover.enable).on("mouseleave."+v,u.hover.disable),u.allows("pressed")&&d.on("mousedown."+v,u.pressed.enable).on("mouseup."+v,u.pressed.disable),u.allows("focus")&&d.on("focus."+v,u.focus.enable).on("blur."+v,u.focus.disable),d.on("mouseenter."+v,u.text.change).on("mouseleave."+v,u.text.reset).on("click."+v,u.toggle)),d.data("module-"+v,u)},destroy:function(){u.verbose("Destroying previous module",m),d.off("."+v)},refresh:function(){u.verbose("Refreshing selector cache",m),d=e(m)},add:{defaults:function(){var n=t&&e.isPlainObject(t.states)?t.states:{};e.each(f.defaults,function(t,i){u.is[t]!==o&&u.is[t]()&&(u.verbose("Adding default states",t,m),e.extend(f.states,i,n))})}},is:{active:function(){return d.hasClass(b.active)},loading:function(){return d.hasClass(b.loading)},inactive:function(){return!d.hasClass(b.active)},enabled:function(){return!d.is(f.filter.active)},disabled:function(){return d.is(f.filter.active)},textEnabled:function(){return!d.is(f.filter.text)},button:function(){return d.is(".button:not(a, .submit)")},input:function(){return d.is("input")}},allows:function(e){return x[e]||!1},enable:function(e){u.allows(e)&&d.addClass(b[e])},disable:function(e){u.allows(e)&&d.removeClass(b[e])},textFor:function(e){return y[e]||!1},focus:{enable:function(){d.addClass(b.focus)},disable:function(){d.removeClass(b.focus)}},hover:{enable:function(){d.addClass(b.hover)},disable:function(){d.removeClass(b.hover)}},pressed:{enable:function(){d.addClass(b.pressed).one("mouseleave",u.pressed.disable)},disable:function(){d.removeClass(b.pressed)}},toggle:function(){var e=d.data(h.promise);u.allows("active")&&u.is.enabled()&&(u.refresh(),e!==o?u.listenTo(e):u.change())},listenTo:function(t){u.debug("API request detected, waiting for state signal",t),t?(y.loading&&u.text.update(y.loading),e.when(t).then(function(){"resolved"==t.state()?(u.debug("API request succeeded"),f.activateTest=function(){return!0},f.deactivateTest=function(){return!0}):(u.debug("API request failed"),f.activateTest=function(){return!1},f.deactivateTest=function(){return!1}),u.change()})):(f.activateTest=function(){return!1},f.deactivateTest=function(){return!1})},change:function(){u.debug("Determining state change direction"),u.is.inactive()?u.activate():u.deactivate(),f.sync&&u.sync(),e.proxy(f.onChange,d)()},activate:function(){e.proxy(f.activateTest,m)()&&(u.debug("Setting state to active"),d.addClass(b.active),u.text.update(y.active),e.proxy(f.onActivate,d)())},deactivate:function(){e.proxy(f.deactivateTest,m)()&&(u.debug("Setting state to inactive"),d.removeClass(b.active),u.text.update(y.inactive),e.proxy(f.onDeactivate,d)())},sync:function(){u.verbose("Syncing other buttons to current state"),u.is.active()?i.not(d).state("activate"):i.not(d).state("deactivate")},text:{get:function(){return f.selector.text?d.find(f.selector.text).text():d.html()},flash:function(e,t){var n=u.text.get();e=e||f.text.flash,t=t||f.flashDuration,u.text.update(e),setTimeout(function(){u.text.update(n)},t)},change:function(){u.verbose("Checking if text should be changed"),u.is.textEnabled()&&(u.is.active()?y.hover?(u.verbose("Changing text to hover text",y.hover),u.text.update(y.hover)):y.disable&&(u.verbose("Changing text to disable text",y.disable),u.text.update(y.disable)):y.hover?(u.verbose("Changing text to hover text",y.disable),u.text.update(y.hover)):y.enable&&(u.verbose("Changing text to enable text",y.disable),u.text.update(y.enable)))},reset:function(){var e=y.active||d.data(h.storedText),t=y.inactive||d.data(h.storedText);u.is.textEnabled()&&(u.is.active()&&e?(u.verbose("Resetting active text",e),u.text.update(e)):t&&(u.verbose("Resetting inactive text",e),u.text.update(t)))},update:function(e){var t=u.text.get();e&&e!==t&&(u.debug("Updating text",e),f.selector.text?d.data(h.storedText,e).find(f.selector.text).text(e):d.data(h.storedText,e).html(e))}},setting:function(e,t){return t===o?f[e]:(f[e]=t,o)},performance:{log:function(e){var t,n;f.performance&&(t=(new Date).getTime(),n=t-c,c=t,l.push({Name:e,"Execution Time":n}),clearTimeout(u.performance.timer),u.performance.timer=setTimeout(u.performance.display,100))},display:function(){var t=f.moduleName+" Performance ("+a+")";f.moduleName+": "+a+"("+i.size()+" elements)",console.group!==o&&l.length>0&&(console.groupCollapsed(t),console.table?console.table(l):e.each(l,function(e,t){console.log(t.Name+":"+t["Execution Time"])}),console.groupEnd(),l=[])}},verbose:function(){f.verbose&&f.debug&&(u.performance.log(arguments[0]),u.verbose=Function.prototype.bind.call(console.info,console,f.moduleName+":"))},debug:function(){f.debug&&(u.performance.log(arguments[0]),u.debug=Function.prototype.bind.call(console.info,console,f.moduleName+":"))},error:function(){console.log!==o&&(u.error=Function.prototype.bind.call(console.log,console,f.moduleName+":"))},invoke:function(t,n,i){var a,r;return i=i||[].slice.call(arguments,2),"string"==typeof t&&g!==o&&(t=t.split("."),a=t.length-1,e.each(t,function(t,n){return e.isPlainObject(g[n])&&t!=a?(g=g[n],!0):g[n]!==o?(r=g[n],!0):(u.error(f.errors.method),!1)})),e.isFunction(r)?r.apply(n,i):r}},p?n=u.invoke(r,this,s):(g!==o&&u.destroy(),u.initialize())}),n!==o?n:this},e.fn.state.settings={moduleName:"State Module",debug:!0,verbose:!1,namespace:"state",performance:!0,onChange:function(){},onActivate:function(){},onDeactivate:function(){},activateTest:function(){return!0},deactivateTest:function(){return!0},automatic:!0,sync:!1,flashDuration:3e3,filter:{text:".loading, .disabled",active:".disabled"},context:!1,errors:{method:"The method you called is not defined."},metadata:{promise:"promise",storedText:"stored-text"},className:{focus:"focus",hover:"hover",pressed:"down",active:"active",loading:"loading"},selector:{text:!1},defaults:{input:{hover:!0,focus:!0,pressed:!0,loading:!1,active:!1},button:{hover:!0,focus:!1,pressed:!0,active:!1,loading:!0}},states:{flash:!1,hover:!0,focus:!0,pressed:!0,loading:!1,active:!1},text:{flash:!1,hover:!1,active:!1,inactive:!1,loading:!1,enable:!1,disable:!1}}})(jQuery,window,document); \ No newline at end of file diff --git a/build/minified/modules/checkbox.js b/build/minified/modules/checkbox.js index c219dcce2..90b640e8c 100644 --- a/build/minified/modules/checkbox.js +++ b/build/minified/modules/checkbox.js @@ -4,7 +4,7 @@ Notes: First Commit March 25, 2013 Simple plug-in which maintains the state for ui checkbox - This can be done without javascript, only in instances + This can be done without javascript, only in instances where each checkbox is assigned a unique ID. This provides a separate programmatic option when that is not possible. @@ -15,7 +15,7 @@ $.fn.checkbox = function(parameters) { var $allModules = $(this), - + settings = $.extend(true, {}, $.fn.checkbox.settings, parameters), eventNamespace = '.' + settings.namespace, @@ -35,12 +35,13 @@ $.fn.checkbox = function(parameters) { .each(function() { var $module = $(this), + $label = $(this).next(settings.selector.label).first(), $input = $(this).find(settings.selector.input), selector = $module.selector || '', element = this, instance = $module.data('module-' + settings.namespace), - + className = settings.className, namespace = settings.namespace, errors = settings.errors, @@ -54,6 +55,7 @@ $.fn.checkbox = function(parameters) { module.verbose('Initializing checkbox with delegated events', $module); $(element, settings.context) .on(selector, 'click' + eventNamespace, module.toggle) + .on(selector + ' + ' + settings.selector.label, 'click' + eventNamespace, module.toggle) .data(moduleNamespace, module) ; } @@ -63,6 +65,9 @@ $.fn.checkbox = function(parameters) { .on('click' + eventNamespace, module.toggle) .data(moduleNamespace, module) ; + $label + .on('click' + eventNamespace, module.toggle) + ; } }, @@ -286,7 +291,7 @@ $.fn.checkbox.settings = { verbose : true, debug : true, performance : true, - + // delegated event context context : false, required : 'auto', @@ -294,13 +299,14 @@ $.fn.checkbox.settings = { onChange : function(){}, onEnable : function(){}, onDisable : function(){}, - + errors : { method : 'The method you called is not defined.' }, selector : { - input : 'input' + input : 'input', + label : 'label' }, className : { diff --git a/build/minified/modules/checkbox.min.js b/build/minified/modules/checkbox.min.js index cedd61374..2f773f5e3 100644 --- a/build/minified/modules/checkbox.min.js +++ b/build/minified/modules/checkbox.min.js @@ -1 +1 @@ -(function(e,t,n,o){e.fn.checkbox=function(t){var n,i=e(this),a=e.extend(!0,{},e.fn.checkbox.settings,t),r="."+a.namespace,s="module-"+a.namespace,c=i.selector||"",l=(new Date).getTime(),u=[],d=arguments[0],m="string"==typeof d,f=[].slice.call(arguments,1);return i.each(function(){var t,i=e(this),p=e(this).find(a.selector.input),g=i.selector||"",h=this,v=i.data("module-"+a.namespace),b=a.className,y=a.namespace,x=a.errors;t={initialize:function(){a.context&&""!==g?(t.verbose("Initializing checkbox with delegated events",i),e(h,a.context).on(g,"click"+r,t.toggle).data(s,t)):(t.verbose("Initializing checkbox with bound events",i),i.on("click"+r,t.toggle).data(s,t))},destroy:function(){t.verbose("Destroying previous module for",i),i.off(y)},is:{radio:function(){return i.hasClass(b.radio)}},can:{disable:function(){return"boolean"==typeof a.required?a.required:!t.is.radio()}},enable:function(){t.debug("Enabling checkbox"),i.addClass(b.active),p.prop("checked",!0),e.proxy(a.onChange,p.get())(),e.proxy(a.onEnable,p.get())()},disable:function(){t.debug("Disabling checkbox"),i.removeClass(b.active),p.prop("checked",!1),e.proxy(a.onChange,p.get())(),e.proxy(a.onDisable,p.get())()},toggle:function(){t.verbose("Toggling checkbox state"),p.prop("checked")!==o&&p.prop("checked")?t.can.disable()&&t.disable():t.enable()},setting:function(n,i){return i===o?a[n]:(e.isPlainObject(n)?(t.verbose("Modifying settings object",n,i),e.extend(!0,a,n)):(t.verbose("Modifying setting",n,i),a[n]=i),o)},internal:function(n,i){return i===o?t[n]:(e.isPlainObject(n)?(t.verbose("Modifying internal property",n,i),e.extend(!0,t,n)):(t.verbose("Changing internal method to",i),t[n]=i),o)},debug:function(){a.debug&&(a.performance?t.performance.log(arguments):t.debug=Function.prototype.bind.call(console.info,console,a.moduleName+":"))},verbose:function(){a.verbose&&a.debug&&(a.performance?t.performance.log(arguments):t.verbose=Function.prototype.bind.call(console.info,console,a.moduleName+":"))},error:function(){t.error=Function.prototype.bind.call(console.log,console,a.moduleName+":")},performance:{log:function(e){var n,o,i;a.performance&&(n=(new Date).getTime(),i=l||n,o=n-i,l=n,u.push({Element:h,Name:e[0],Arguments:e[1]||"","Execution Time":o})),clearTimeout(t.performance.timer),t.performance.timer=setTimeout(t.performance.display,100)},display:function(){var t=a.moduleName+":",n=0;l=!1,e.each(u,function(e,t){n+=t["Execution Time"]}),t+=" "+n+"ms",c&&(t+=" '"+c+"'"),(console.group!==o||console.table!==o)&&u.length>0&&(console.groupCollapsed(t),console.table?console.table(u):e.each(u,function(e,t){console.log(t.Name+": "+t["Execution Time"]+"ms")}),console.groupEnd()),u=[]}},invoke:function(n,i,a){var r,s;return i=i||f,a=h||a,"string"==typeof n&&v!==o&&(n=n.split("."),r=n.length-1,e.each(n,function(n,i){return e.isPlainObject(v[i])&&n!=r?(v=v[i],!0):v[i]!==o?(s=v[i],!0):(t.error(x.method),!1)})),e.isFunction(s)?(v.verbose("Executing invoked function",s),s.apply(a,i)):s||!1}},m?(v===o&&t.initialize(),n=t.invoke(d)):(v!==o&&t.destroy(),t.initialize())}),n?n:this},e.fn.checkbox.settings={moduleName:"Checkbox",namespace:"checkbox",verbose:!0,debug:!0,performance:!0,context:!1,required:"auto",onChange:function(){},onEnable:function(){},onDisable:function(){},errors:{method:"The method you called is not defined."},selector:{input:"input"},className:{active:"active",radio:"radio"}}})(jQuery,window,document); \ No newline at end of file +(function(e,t,n,o){e.fn.checkbox=function(t){var n,i=e(this),a=e.extend(!0,{},e.fn.checkbox.settings,t),r="."+a.namespace,s="module-"+a.namespace,c=i.selector||"",l=(new Date).getTime(),u=[],d=arguments[0],m="string"==typeof d,f=[].slice.call(arguments,1);return i.each(function(){var t,i=e(this),g=e(this).next(a.selector.label).first(),p=e(this).find(a.selector.input),h=i.selector||"",v=this,b=i.data("module-"+a.namespace),y=a.className,x=a.namespace,C=a.errors;t={initialize:function(){a.context&&""!==h?(t.verbose("Initializing checkbox with delegated events",i),e(v,a.context).on(h,"click"+r,t.toggle).on(h+" + "+a.selector.label,"click"+r,t.toggle).data(s,t)):(t.verbose("Initializing checkbox with bound events",i),i.on("click"+r,t.toggle).data(s,t),g.on("click"+r,t.toggle))},destroy:function(){t.verbose("Destroying previous module for",i),i.off(x)},is:{radio:function(){return i.hasClass(y.radio)}},can:{disable:function(){return"boolean"==typeof a.required?a.required:!t.is.radio()}},enable:function(){t.debug("Enabling checkbox"),i.addClass(y.active),p.prop("checked",!0),e.proxy(a.onChange,p.get())(),e.proxy(a.onEnable,p.get())()},disable:function(){t.debug("Disabling checkbox"),i.removeClass(y.active),p.prop("checked",!1),e.proxy(a.onChange,p.get())(),e.proxy(a.onDisable,p.get())()},toggle:function(){t.verbose("Toggling checkbox state"),p.prop("checked")!==o&&p.prop("checked")?t.can.disable()&&t.disable():t.enable()},setting:function(n,i){return i===o?a[n]:(e.isPlainObject(n)?(t.verbose("Modifying settings object",n,i),e.extend(!0,a,n)):(t.verbose("Modifying setting",n,i),a[n]=i),o)},internal:function(n,i){return i===o?t[n]:(e.isPlainObject(n)?(t.verbose("Modifying internal property",n,i),e.extend(!0,t,n)):(t.verbose("Changing internal method to",i),t[n]=i),o)},debug:function(){a.debug&&(a.performance?t.performance.log(arguments):t.debug=Function.prototype.bind.call(console.info,console,a.moduleName+":"))},verbose:function(){a.verbose&&a.debug&&(a.performance?t.performance.log(arguments):t.verbose=Function.prototype.bind.call(console.info,console,a.moduleName+":"))},error:function(){t.error=Function.prototype.bind.call(console.log,console,a.moduleName+":")},performance:{log:function(e){var n,o,i;a.performance&&(n=(new Date).getTime(),i=l||n,o=n-i,l=n,u.push({Element:v,Name:e[0],Arguments:e[1]||"","Execution Time":o})),clearTimeout(t.performance.timer),t.performance.timer=setTimeout(t.performance.display,100)},display:function(){var t=a.moduleName+":",n=0;l=!1,e.each(u,function(e,t){n+=t["Execution Time"]}),t+=" "+n+"ms",c&&(t+=" '"+c+"'"),(console.group!==o||console.table!==o)&&u.length>0&&(console.groupCollapsed(t),console.table?console.table(u):e.each(u,function(e,t){console.log(t.Name+": "+t["Execution Time"]+"ms")}),console.groupEnd()),u=[]}},invoke:function(n,i,a){var r,s;return i=i||f,a=v||a,"string"==typeof n&&b!==o&&(n=n.split("."),r=n.length-1,e.each(n,function(n,i){return e.isPlainObject(b[i])&&n!=r?(b=b[i],!0):b[i]!==o?(s=b[i],!0):(t.error(C.method),!1)})),e.isFunction(s)?(b.verbose("Executing invoked function",s),s.apply(a,i)):s||!1}},m?(b===o&&t.initialize(),n=t.invoke(d)):(b!==o&&t.destroy(),t.initialize())}),n?n:this},e.fn.checkbox.settings={moduleName:"Checkbox",namespace:"checkbox",verbose:!0,debug:!0,performance:!0,context:!1,required:"auto",onChange:function(){},onEnable:function(){},onDisable:function(){},errors:{method:"The method you called is not defined."},selector:{input:"input",label:"label"},className:{active:"active",radio:"radio"}}})(jQuery,window,document); \ No newline at end of file diff --git a/build/minified/modules/dimmer.min.css b/build/minified/modules/dimmer.min.css index 3f8a19fc4..defbfb136 100644 --- a/build/minified/modules/dimmer.min.css +++ b/build/minified/modules/dimmer.min.css @@ -1 +1 @@ -.ui.dimmable{position:relative}.ui.dimmer{position:absolute;top:0!important;left:0!important;text-align:center;vertical-align:middle;background-color:rgba(0,0,0,.85);opacity:0;line-height:1;-webkit-animation-fill-mode:forwards;-moz-animation-fill-mode:forwards;-o-animation-fill-mode:forwards;-ms-animation-fill-mode:forwards;animation-fill-mode:forwards;-webkit-transition:background-color .5s linear;-moz-transition:background-color .5s linear;-o-transition:background-color .5s linear;-ms-transition:background-color .5s linear;transition:background-color .5s linear;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box;z-index:1000}.ui.dimmable.dimmed>:not(.dimmer){}.ui.dimmer .content{width:100%;height:100%;display:table;-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text}.ui.dimmer .content>*{display:table-cell;vertical-align:middle}.ui.segment>.ui.dimmer{-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}.ui.horizontal.segment>.ui.dimmer,.ui.vertical.segment>.ui.dimmer{-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}.ui.dimmable.dimmed>:not(.dimmer){-webkit-filter:blur(5px) grayscale(0.7);-moz-filter:blur(5px) grayscale(0.7);filter:url(../vector/blur.svg#blur)}body.dimmable.dimmed{overflow:hidden}.ui.dimmable.dimmed>.ui.dimmer,.ui.dimmer.active{width:100%;height:100%;opacity:1}.ui.disabled.dimmer{width:0!important;height:0!important}.ui.page.dimmer{position:fixed}body.ui.dimmable.dimmed>:not(.dimmer){-webkit-filter:blur(15px) grayscale(0.7);-moz-filter:blur(15px) grayscale(0.7);filter:url(../vector/blur.svg#blur);-webkit-translate:rotateZ(0deg);-moz-translate:rotateZ(0deg);translate:rotateZ(0deg)}.ui.dimmer .top.aligned.content>*{vertical-align:top}.ui.dimmer .bottom.aligned.content>*{vertical-align:bottom}.ui.inverted.dimmer{background-color:rgba(255,255,255,.85)}.ui.simple.dimmer{display:block;overflow:hidden;opacity:1;height:0;width:0;background-color:rgba(0,0,0,0)}.ui.dimmable.dimmed>.ui.simple.dimmer{overflow:visible;opacity:1;width:100%;height:100%;background-color:rgba(0,0,0,.85)}.ui.simple.inverted.dimmer{background-color:rgba(255,255,255,0)}.ui.dimmable.dimmed>.ui.simple.inverted.dimmer{background-color:rgba(255,255,255,.85)}.ui.dimmer.show{width:100%;height:100%;-webkit-animation:dimmer-show .5s;-moz-animation:dimmer-show .5s;animation:dimmer-show .5s}@-webkit-keyframes dimmer-show{0%{opacity:0}100%{opacity:1}}@-moz-keyframes dimmer-show{0%{opacity:0}100%{opacity:1}}@keyframes dimmer-show{0%{opacity:0}100%{opacity:1}}.ui.dimmer.hide{-webkit-animation:dimmer-hide .5s;-moz-animation:dimmer-hide .5s;animation:dimmer-hide .5s}@-webkit-keyframes dimmer-hide{0%{opacity:1}99%{width:100%;height:100%;opacity:0}100%{opacity:0;height:0;width:0}}@-moz-keyframes dimmer-hide{0%{opacity:1}99%{width:100%;height:100%;opacity:0}100%{opacity:0;height:0;width:0}}@keyframes dimmer-hide{0%{opacity:1}99%{width:100%;height:100%;opacity:0}100%{opacity:0;height:0;width:0}} \ No newline at end of file +.ui.dimmable{position:relative}.ui.dimmer{position:absolute;top:0!important;left:0!important;text-align:center;vertical-align:middle;background-color:rgba(0,0,0,.85);opacity:0;line-height:1;-webkit-animation-fill-mode:forwards;-moz-animation-fill-mode:forwards;-o-animation-fill-mode:forwards;-ms-animation-fill-mode:forwards;animation-fill-mode:forwards;-webkit-transition:background-color .5s linear;-moz-transition:background-color .5s linear;-o-transition:background-color .5s linear;-ms-transition:background-color .5s linear;transition:background-color .5s linear;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box;z-index:1000}.ui.dimmable.dimmed>:not(.dimmer){}.ui.dimmer .content{width:100%;height:100%;display:table;-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text}.ui.dimmer .content>*{display:table-cell;vertical-align:middle}.ui.segment>.ui.dimmer{-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}.ui.horizontal.segment>.ui.dimmer,.ui.vertical.segment>.ui.dimmer{-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}.ui.dimmable.dimmed>:not(.dimmer){-webkit-filter:blur(5px) grayscale(0.7);-moz-filter:blur(5px) grayscale(0.7);filter:url(../vector/blur.svg#blur)}body.dimmable.dimmed{overflow:hidden}.ui.dimmable.dimmed>.ui.dimmer,.ui.dimmer.active{width:100%;height:100%;opacity:1}.ui.disabled.dimmer{width:0!important;height:0!important}.ui.page.dimmer{position:fixed}body.ui.dimmable.dimmed>:not(.dimmer){-webkit-filter:blur(15px) grayscale(0.7);-moz-filter:blur(15px) grayscale(0.7);filter:url(../vector/blur.svg#blur);-webkit-translate:rotateZ(0deg);-moz-translate:rotateZ(0deg);translate:rotateZ(0deg)}.ui.dimmer .top.aligned.content>*{vertical-align:top}.ui.dimmer .bottom.aligned.content>*{vertical-align:bottom}.ui.inverted.dimmer{background-color:rgba(255,255,255,.85)}.ui.simple.dimmer{display:block;overflow:hidden;opacity:1;z-index:-100;background-color:rgba(0,0,0,0)}.ui.dimmable.dimmed>.ui.simple.dimmer{overflow:visible;opacity:1;width:100%;height:100%;background-color:rgba(0,0,0,.85)}.ui.simple.inverted.dimmer{background-color:rgba(255,255,255,0)}.ui.dimmable.dimmed>.ui.simple.inverted.dimmer{background-color:rgba(255,255,255,.85)}.ui.dimmer.show{width:100%;height:100%;-webkit-animation:dimmer-show .5s;-moz-animation:dimmer-show .5s;animation:dimmer-show .5s}@-webkit-keyframes dimmer-show{0%{opacity:0}100%{opacity:1}}@-moz-keyframes dimmer-show{0%{opacity:0}100%{opacity:1}}@keyframes dimmer-show{0%{opacity:0}100%{opacity:1}}.ui.dimmer.hide{-webkit-animation:dimmer-hide .5s;-moz-animation:dimmer-hide .5s;animation:dimmer-hide .5s}@-webkit-keyframes dimmer-hide{0%{opacity:1}99%{width:100%;height:100%;opacity:0}100%{opacity:0;height:0;width:0}}@-moz-keyframes dimmer-hide{0%{opacity:1}99%{width:100%;height:100%;opacity:0}100%{opacity:0;height:0;width:0}}@keyframes dimmer-hide{0%{opacity:1}99%{width:100%;height:100%;opacity:0}100%{opacity:0;height:0;width:0}} \ No newline at end of file diff --git a/build/minified/modules/dimmer.min.js b/build/minified/modules/dimmer.min.js index 5307e0a02..af7f40ad7 100644 --- a/build/minified/modules/dimmer.min.js +++ b/build/minified/modules/dimmer.min.js @@ -1 +1 @@ -(function(e,n,t,o){e.fn.dimmer=function(n){var t,i=e(this),a=e.isPlainObject(n)?e.extend(!0,{},e.fn.dimmer.settings,n):e.fn.dimmer.settings,r=("."+a.namespace,"module-"+a.namespace,i.selector||""),s=(i.size(),(new Date).getTime()),c=[],l=arguments[0],u="string"==typeof l,d=[].slice.call(arguments,1),m=a.selector,f=a.namespace,g=a.className,p=a.error;return i.each(function(){var n,i=e(this),h=i.children(m.dimmer).first(),v="animationend msAnimationEnd oAnimationEnd webkitAnimationEnd",b=this,y=h.data("module-"+f);n={initialize:function(){n.is.dimmer()?(h=i,i=h.parent(),n.debug("Module initialized as dimmer",h)):(n.has.dimmer()?(h=i.find(m.dimmer),n.debug("Module initialized with found dimmer",h)):(h=a.template.dimmer(),h.appendTo(i),n.debug("Module initialized with created dimmer",h)),"hover"==a.on?i.on("mouseenter",n.show).on("mouseleave",n.hide):"click"==a.on&&i.on("click",n.toggle)),i.addClass(g.dimmable),a.closable&&h.on("click",n.event.click),n.instantiate()},instantiate:function(){n.verbose("Storing instance of module"),y=n,h.data("module-"+f,y)},destroy:function(){n.verbose("Destroying previous module for",i),i.off(f)},event:{click:function(t){n.verbose("Determining if event occured on dimmer",t),console.log(t.target,m.content,e(t.target).is(m.content)),(0===h.find(t.target).size()||e(t.target).is(m.content))&&n.hide()}},animate:{show:function(){n.set.dimmed(),"css"==a.animation.show?(n.verbose("Showing dimmer animation with css"),h.one(v,function(){n.set.active(),h.removeClass(g.show)}).addClass(g.show)):"fade"==a.animation.show&&(n.verbose("Showing dimmer animation with javascript"),h.stop().css({opacity:0,width:"100%",height:"100%"}).fadeTo(a.duration,1,function(){h.removeAttr("style"),n.set.active()}))},hide:function(){n.remove.dimmed(),"css"==a.animation.hide?(n.verbose("Hiding dimmer with css"),h.one(v,function(){n.remove.active(),h.removeClass(g.hide)}).addClass(g.hide)):"fade"==a.animation.hide?(n.verbose("Hiding dimmer with javascript"),h.stop().fadeOut(a.duration,function(){h.removeAttr("style"),n.remove.active()})):e.isFunction(a.animation.hide)&&e.proxy(a.animation.hide,h)()}},has:{dimmer:function(){return i.children(m.dimmer).size()>0}},is:{animating:function(){return h.hasClass(g.show)||h.hasClass(g.hide)||h.is(":animated")},dimmer:function(){return i.is(m.dimmer)},pageDimmer:function(){return i.is(m.pageDimmer)},dimmable:function(){return i.is(m.dimmable)},enabled:function(){return!i.hasClass(g.disabled)},disabled:function(){return i.hasClass(g.disabled)},active:function(){return h.hasClass(g.active)}},can:{show:function(){return!h.hasClass(g.disabled)}},set:{active:function(){h.addClass(g.active)},dimmed:function(){i.addClass(g.dimmed)},disabled:function(){h.addClass(g.disabled)}},remove:{active:function(){h.removeClass(g.active)},dimmed:function(){i.removeClass(g.dimmed)},disabled:function(){h.removeClass(g.disabled)}},show:function(){n.debug("Showing dimmer",h),n.is.active()&&!n.is.animating()||!n.is.enabled()?n.debug("Dimmer is already shown or disabled"):(n.animate.show(),e.proxy(a.onShow,b)(),e.proxy(a.onChange,b)())},hide:function(){n.is.active()||n.is.animating()?(n.debug("Hiding dimmer",h),n.animate.hide(),e.proxy(a.onHide,b)(),e.proxy(a.onChange,b)()):n.debug("Dimmer is not visible")},toggle:function(){n.verbose("Toggling dimmer visibility",h),n.is.hidden()?n.show():n.hide()},setting:function(n,t){return t===o?a[n]:(e.isPlainObject(n)?e.extend(!0,a,n):a[n]=t,o)},internal:function(t,i){return i===o?n[t]:(e.isPlainObject(t)?e.extend(!0,n,t):n[t]=i,o)},debug:function(){a.debug&&(a.performance?n.performance.log(arguments):n.debug=Function.prototype.bind.call(console.info,console,a.moduleName+":"))},verbose:function(){a.verbose&&a.debug&&(a.performance?n.performance.log(arguments):n.verbose=Function.prototype.bind.call(console.info,console,a.moduleName+":"))},error:function(){n.error=Function.prototype.bind.call(console.log,console,a.moduleName+":")},performance:{log:function(e){var t,o,i;a.performance&&(t=(new Date).getTime(),i=s||t,o=t-i,s=t,c.push({Element:b,Name:e[0],Arguments:e[1]||"","Execution Time":o})),clearTimeout(n.performance.timer),n.performance.timer=setTimeout(n.performance.display,100)},display:function(){var n=a.moduleName+":",t=0;s=!1,e.each(c,function(e,n){t+=n["Execution Time"]}),n+=" "+t+"ms",r&&(n+=" '"+r+"'"),(console.group!==o||console.table!==o)&&c.length>0&&(console.groupCollapsed(n),console.table?console.table(c):e.each(c,function(e,n){console.log(n.Name+": "+n["Execution Time"]+"ms")}),console.groupEnd()),c=[]}},invoke:function(t,i,a){var r,s;return i=i||d,a=b||a,"string"==typeof t&&y!==o&&(t=t.split("."),r=t.length-1,e.each(t,function(t,i){e.isPlainObject(y[i])&&t!=r?y=y[i]:y[i]!==o?s=y[i]:n.error(p.method)})),e.isFunction(s)?(y.verbose("Executing invoked function",s),s.apply(a,i)):s||!1}},u?(y===o&&n.initialize(),t=n.invoke(l)):(y===o&&n.destroy(),n.initialize())}),t?t:this},e.fn.dimmer.settings={moduleName:"Dimmer",namespace:"dimmer",verbose:!0,debug:!0,performance:!0,animation:{show:"fade",hide:"fade"},on:!1,closable:!0,duration:500,onChange:function(){},onShow:function(){},onHide:function(){},error:{method:"The method you called is not defined."},selector:{dimmable:".ui.dimmable",dimmer:".ui.dimmer",content:".ui.dimmer > .content"},template:{dimmer:function(){return e("
").attr("class","ui dimmer")}},className:{active:"active",animating:"animating",dimmable:"ui dimmable",dimmed:"dimmed",disabled:"disabled",hide:"hide",show:"show"}}})(jQuery,window,document); \ No newline at end of file +(function(e,t,n,o){e.fn.dimmer=function(t){var n,i=e(this),a=e.isPlainObject(t)?e.extend(!0,{},e.fn.dimmer.settings,t):e.fn.dimmer.settings,r=("."+a.namespace,"module-"+a.namespace,i.selector||""),s=(i.size(),(new Date).getTime()),c=[],l=arguments[0],u="string"==typeof l,d=[].slice.call(arguments,1),m=a.selector,f=a.namespace,g=a.className,p=a.error;return i.each(function(){var t,i=e(this),h=i.children(m.dimmer).first(),v="animationend msAnimationEnd oAnimationEnd webkitAnimationEnd",b=this,y=h.data("module-"+f);t={initialize:function(){t.is.dimmer()?(h=i,i=h.parent(),t.debug("Module initialized as dimmer",h)):(t.has.dimmer()?(h=i.find(m.dimmer),t.debug("Module initialized with found dimmer",h)):(h=a.template.dimmer(),h.appendTo(i),t.debug("Module initialized with created dimmer",h)),"hover"==a.on?i.on("mouseenter",t.show).on("mouseleave",t.hide):"click"==a.on&&i.on("click",t.toggle)),i.addClass(g.dimmable),a.closable&&h.on("click",t.event.click),t.instantiate()},instantiate:function(){t.verbose("Storing instance of module"),y=t,h.data("module-"+f,y)},destroy:function(){t.verbose("Destroying previous module for",i),i.off(f)},event:{click:function(n){t.verbose("Determining if event occured on dimmer",n),console.log(n.target,m.content,e(n.target).is(m.content)),(0===h.find(n.target).size()||e(n.target).is(m.content))&&t.hide()}},animate:{show:function(){t.set.dimmed(),"css"==a.animation.show?(t.verbose("Showing dimmer animation with css"),h.one(v,function(){t.set.active(),h.removeClass(g.show)}).addClass(g.show)):"fade"==a.animation.show&&(t.verbose("Showing dimmer animation with javascript"),h.stop().css({opacity:0,width:"100%",height:"100%"}).fadeTo(a.duration,1,function(){h.removeAttr("style"),t.set.active()}))},hide:function(){t.remove.dimmed(),"css"==a.animation.hide?(t.verbose("Hiding dimmer with css"),h.one(v,function(){t.remove.active(),h.removeClass(g.hide)}).addClass(g.hide)):"fade"==a.animation.hide?(t.verbose("Hiding dimmer with javascript"),h.stop().fadeOut(a.duration,function(){h.removeAttr("style"),t.remove.active()})):e.isFunction(a.animation.hide)&&e.proxy(a.animation.hide,h)()}},has:{dimmer:function(){return i.children(m.dimmer).size()>0}},is:{animating:function(){return h.hasClass(g.show)||h.hasClass(g.hide)||h.is(":animated")},dimmer:function(){return i.is(m.dimmer)},pageDimmer:function(){return i.is(m.pageDimmer)},dimmable:function(){return i.is(m.dimmable)},enabled:function(){return!i.hasClass(g.disabled)},disabled:function(){return i.hasClass(g.disabled)},active:function(){return h.hasClass(g.active)}},can:{show:function(){return!h.hasClass(g.disabled)}},set:{active:function(){h.addClass(g.active)},dimmed:function(){i.addClass(g.dimmed)},disabled:function(){h.addClass(g.disabled)}},remove:{active:function(){h.removeClass(g.active)},dimmed:function(){i.removeClass(g.dimmed)},disabled:function(){h.removeClass(g.disabled)}},show:function(){t.debug("Showing dimmer",h),t.is.active()&&!t.is.animating()||!t.is.enabled()?t.debug("Dimmer is already shown or disabled"):(t.animate.show(),e.proxy(a.onShow,b)(),e.proxy(a.onChange,b)())},hide:function(){t.is.active()||t.is.animating()?(t.debug("Hiding dimmer",h),t.animate.hide(),e.proxy(a.onHide,b)(),e.proxy(a.onChange,b)()):t.debug("Dimmer is not visible")},toggle:function(){t.verbose("Toggling dimmer visibility",h),t.is.hidden()?t.show():t.hide()},setting:function(t,n){return n===o?a[t]:(e.isPlainObject(t)?e.extend(!0,a,t):a[t]=n,o)},internal:function(n,i){return i===o?t[n]:(e.isPlainObject(n)?e.extend(!0,t,n):t[n]=i,o)},debug:function(){a.debug&&(a.performance?t.performance.log(arguments):t.debug=Function.prototype.bind.call(console.info,console,a.moduleName+":"))},verbose:function(){a.verbose&&a.debug&&(a.performance?t.performance.log(arguments):t.verbose=Function.prototype.bind.call(console.info,console,a.moduleName+":"))},error:function(){t.error=Function.prototype.bind.call(console.log,console,a.moduleName+":")},performance:{log:function(e){var n,o,i;a.performance&&(n=(new Date).getTime(),i=s||n,o=n-i,s=n,c.push({Element:b,Name:e[0],Arguments:e[1]||"","Execution Time":o})),clearTimeout(t.performance.timer),t.performance.timer=setTimeout(t.performance.display,100)},display:function(){var t=a.moduleName+":",n=0;s=!1,e.each(c,function(e,t){n+=t["Execution Time"]}),t+=" "+n+"ms",r&&(t+=" '"+r+"'"),(console.group!==o||console.table!==o)&&c.length>0&&(console.groupCollapsed(t),console.table?console.table(c):e.each(c,function(e,t){console.log(t.Name+": "+t["Execution Time"]+"ms")}),console.groupEnd()),c=[]}},invoke:function(n,i,a){var r,s;return i=i||d,a=b||a,"string"==typeof n&&y!==o&&(n=n.split("."),r=n.length-1,e.each(n,function(n,i){e.isPlainObject(y[i])&&n!=r?y=y[i]:y[i]!==o?s=y[i]:t.error(p.method)})),e.isFunction(s)?(y.verbose("Executing invoked function",s),s.apply(a,i)):s||!1}},u?(y===o&&t.initialize(),n=t.invoke(l)):(y===o&&t.destroy(),t.initialize())}),n?n:this},e.fn.dimmer.settings={moduleName:"Dimmer",namespace:"dimmer",verbose:!0,debug:!0,performance:!0,animation:{show:"fade",hide:"fade"},on:!1,closable:!0,duration:500,onChange:function(){},onShow:function(){},onHide:function(){},error:{method:"The method you called is not defined."},selector:{dimmable:".ui.dimmable",dimmer:".ui.dimmer",content:".ui.dimmer > .content"},template:{dimmer:function(){return e("
").attr("class","ui dimmer")}},className:{active:"active",animating:"animating",dimmable:"ui dimmable",dimmed:"dimmed",disabled:"disabled",hide:"hide",show:"show"}}})(jQuery,window,document); \ No newline at end of file diff --git a/build/minified/modules/dropdown.min.css b/build/minified/modules/dropdown.min.css index 0ee06871d..dd1d318f7 100644 --- a/build/minified/modules/dropdown.min.css +++ b/build/minified/modules/dropdown.min.css @@ -1 +1 @@ -.ui.dropdown{position:relative;display:inline-block;line-height:1;-webkit-transition:border-radius .1s ease,width .2s ease;-moz-transition:border-radius .1s ease,width .2s ease;-o-transition:border-radius .1s ease,width .2s ease;-ms-transition:border-radius .1s ease,width .2s ease;transition:border-radius .1s ease,width .2s ease}.ui.dropdown .menu{position:absolute;display:none;top:100%;background-color:#FFF;min-width:100%;white-space:nowrap;text-shadow:none;-webkit-box-shadow:0 0 1px 1px rgba(0,0,0,.1),0 -2px 0 0 rgba(0,0,0,.1) inset;-moz-box-shadow:0 0 1px 1px rgba(0,0,0,.1),0 -2px 0 0 rgba(0,0,0,.1) inset;box-shadow:0 0 1px 1px rgba(0,0,0,.1),0 -2px 0 0 rgba(0,0,0,.1) inset;-moz-border-radius:0 0 .325em .325em;-webkit-border-radius:0 0 .325em .325em;border-radius:0 0 .325em .325em;-webkit-transition:opacity .2s ease;-moz-transition:opacity .2s ease;-o-transition:opacity .2s ease;-ms-transition:opacity .2s ease;transition:opacity .2s ease;z-index:11}.ui.dropdown>.dropdown.icon{width:auto}.ui.dropdown>.text{display:inline-block}.ui.dropdown .menu{left:0}.ui.menu .dropdown:last-child .menu,.ui>.ui.dropdown:last-child .menu{left:auto;right:0}.ui.dropdown .menu .item{cursor:pointer;border:0;border-top:1px solid rgba(0,0,0,.05);font-size:.9em;display:block;color:rgba(0,0,0,.75);padding:.85em 1em!important;font-size:.9rem;text-transform:none;font-weight:400;text-align:left;-webkit-touch-callout:none}.ui.dropdown .menu .item:before{display:none}.ui.dropdown .menu .item .icon{margin-right:.75em}.ui.dropdown .menu .item:first-child{border-top:0}.ui.dropdown.visible{border-bottom-left-radius:0!important;border-bottom-right-radius:0!important}.ui.dropdown .menu .item:hover{background-color:rgba(0,0,0,.02)}.ui.dropdown .menu .active.item{background-color:rgba(0,0,0,.04);border-left:0}.ui.dropdown>.default.text,.ui.default.dropdown>.text{color:rgba(0,0,0,.2)}.ui.dropdown:hover>.default.text,.ui.default.dropdown:hover>.text{color:rgba(0,0,0,.4)}.ui.simple.dropdown .menu:before,.ui.simple.dropdown .menu:after{display:none}.ui.simple.dropdown .menu{display:block;overflow:hidden;top:100%;height:0;width:0;position:absolute;opacity:0;-webkit-transition:opacity .2s ease-out;-moz-transition:opacity .2s ease-out;-o-transition:opacity .2s ease-out;-ms-transition:opacity .2s ease-out;transition:opacity .2s ease-out}.ui.simple.dropdown.visible .menu,.ui.simple.dropdown:hover .menu{overflow:visible;width:auto;height:auto;opacity:1}.ui.simple.disabled.dropdown:hover .menu{height:0;width:0;overflow:hidden}.ui.selection.dropdown{cursor:pointer;display:inline-block;background-color:#FFF;padding:.5em 1em;line-height:1.33;color:rgba(0,0,0,.8);-webkit-box-shadow:0 0 0 1px rgba(0,0,0,.1);-moz-box-shadow:0 0 0 1px rgba(0,0,0,.1);box-shadow:0 0 0 1px rgba(0,0,0,.1);-webkit-border-radius:.3125em!important;-moz-border-radius:.3125em!important;border-radius:.3125em!important}.ui.selection.dropdown>.dropdown.icon{float:right;margin:.2em 0 .2em .5em}.ui.selection.dropdown,.ui.selection.dropdown .menu{top:100%;-webkit-transition:box-shadow .2s ease-out;-moz-transition:box-shadow .2s ease-out;-o-transition:box-shadow .2s ease-out;-ms-transition:box-shadow .2s ease-out;transition:box-shadow .2s ease-out}.ui.selection.dropdown .menu{max-height:312px;overflow-x:hidden;overflow-y:auto;-webkit-box-shadow:0 1px 0 1px #EEE;-moz-box-shadow:0 1px 0 1px #EEE;box-shadow:0 1px 0 1px #EEE;-moz-border-radius:0 0 .325em .325em;-webkit-border-radius:0 0 .325em .325em;border-radius:0 0 .325em .325em}.ui.selection.dropdown.visible,.ui.selection.dropdown:hover,.ui.selection.dropdown.hover{-webkit-box-shadow:0 0 0 1px rgba(0,0,0,.2);-moz-box-shadow:0 0 0 1px rgba(0,0,0,.2);box-shadow:0 0 0 1px rgba(0,0,0,.2);-webkit-border-radius:.3125em .3125em 0 0!important;-moz-border-radius:.3125em .3125em 0 0!important;border-radius:.3125em .3125em 0 0!important}.ui.selection.dropdown.visible .menu,.ui.selection.dropdown.hover .menu,.ui.selection.dropdown:hover .menu{-webkit-box-shadow:0 1px 0 1px #D3D3D3;-moz-box-shadow:0 1px 0 1px #D3D3D3;box-shadow:0 1px 0 1px #D3D3D3}.ui.fluid.dropdown{display:block}.ui.pointing.dropdown .menu{top:100%;margin-top:.75em;-moz-border-radius:.325em;-webkit-border-radius:.325em;border-radius:.325em}.ui.pointing.dropdown .menu:after{position:absolute;pointer-events:none;content:" ";width:.5em;height:.5em;-moz-box-shadow:-1px -1px 0 1px rgba(0,0,0,.05);-webkit-box-shadow:-1px -1px 0 1px rgba(0,0,0,.05);box-shadow:-1px -1px 0 1px rgba(0,0,0,.05);background-image:none;background-color:#FFF;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);transform:rotate(45deg);z-index:2}.ui.pointing.dropdown .menu .item.active:first-child{background:transparent -webkit-linear-gradient(transparent,rgba(0,0,0,.03));background:transparent -moz-linear-gradient(transparent,rgba(0,0,0,.03));background:transparent -o-linear-gradient(transparent,rgba(0,0,0,.03));background:transparent -ms-linear-gradient(transparent,rgba(0,0,0,.03));background:transparent linear-gradient(transparent,rgba(0,0,0,.03))}.ui.pointing.dropdown .menu:after{top:-.25em;left:50%;margin:0 0 0 -.25em}.ui.top.left.pointing.dropdown .menu:after{top:-.25em;left:1em;right:auto;margin:0}.ui.top.right.pointing.dropdown .menu:after{top:-.25em;left:auto;right:1em;margin:0}.ui.left.pointing.dropdown .menu:after{top:1em;left:-.25em;margin-top:-.25em 0 0 0}.ui.right.pointing.dropdown .menu:after{top:1em;left:auto;right:-.25em;margin-top:-.25em 0 0 0}.ui.pointing.dropdown.visible,.ui.pointing.dropdown.visible .menu{-moz-border-radius:.325em!important;-webkit-border-radius:.325em!important;border-radius:.325em!important} \ No newline at end of file +.ui.dropdown{position:relative;display:inline-block;line-height:1;-webkit-transition:border-radius .1s ease,width .2s ease;-moz-transition:border-radius .1s ease,width .2s ease;-o-transition:border-radius .1s ease,width .2s ease;-ms-transition:border-radius .1s ease,width .2s ease;transition:border-radius .1s ease,width .2s ease}.ui.dropdown .menu{position:absolute;display:none;top:100%;background-color:#FFF;min-width:100%;white-space:nowrap;text-shadow:none;-webkit-box-shadow:0 0 1px 1px rgba(0,0,0,.1),0 -2px 0 0 rgba(0,0,0,.1) inset;-moz-box-shadow:0 0 1px 1px rgba(0,0,0,.1),0 -2px 0 0 rgba(0,0,0,.1) inset;box-shadow:0 0 1px 1px rgba(0,0,0,.1),0 -2px 0 0 rgba(0,0,0,.1) inset;-moz-border-radius:0 0 .325em .325em;-webkit-border-radius:0 0 .325em .325em;border-radius:0 0 .325em .325em;-webkit-transition:opacity .2s ease;-moz-transition:opacity .2s ease;-o-transition:opacity .2s ease;-ms-transition:opacity .2s ease;transition:opacity .2s ease;z-index:11}.ui.dropdown>.dropdown.icon{width:auto}.ui.dropdown>.text{display:inline-block}.ui.dropdown .menu{left:0}.ui.menu .dropdown:last-child .menu,.ui>.ui.dropdown:last-child .menu{left:auto;right:0}.ui.dropdown .menu .item{cursor:pointer;border:0;border-top:1px solid rgba(0,0,0,.05);font-size:.9em;display:block;color:rgba(0,0,0,.75);padding:.85em 1em!important;font-size:.9rem;text-transform:none;font-weight:400;text-align:left;-webkit-touch-callout:none}.ui.dropdown .menu .item:before{display:none}.ui.dropdown .menu .item .icon{margin-right:.75em}.ui.dropdown .menu .item:first-child{border-top:0}.ui.dropdown.visible{border-bottom-left-radius:0!important;border-bottom-right-radius:0!important}.ui.dropdown .menu .item:hover{background-color:rgba(0,0,0,.02)}.ui.dropdown .menu .active.item{background-color:rgba(0,0,0,.04);border-left:0}.ui.dropdown>.default.text,.ui.default.dropdown>.text{color:rgba(0,0,0,.2)}.ui.dropdown:hover>.default.text,.ui.default.dropdown:hover>.text{color:rgba(0,0,0,.4)}.ui.simple.dropdown .menu:before,.ui.simple.dropdown .menu:after{display:none}.ui.simple.dropdown .menu{display:block;overflow:hidden;top:-9999px;position:absolute;opacity:0;-webkit-transition:opacity .2s ease-out;-moz-transition:opacity .2s ease-out;-o-transition:opacity .2s ease-out;-ms-transition:opacity .2s ease-out;transition:opacity .2s ease-out}.ui.simple.dropdown.visible,.ui.simple.dropdown:hover{border-bottom-left-radius:0!important;border-bottom-right-radius:0!important}.ui.simple.dropdown.visible .menu,.ui.simple.dropdown:hover .menu{overflow:visible;width:auto;height:auto;top:100%;opacity:1}.ui.simple.disabled.dropdown:hover .menu{height:0;width:0;overflow:hidden}.ui.selection.dropdown{cursor:pointer;display:inline-block;background-color:#FFF;padding:.5em 1em;line-height:1.33;color:rgba(0,0,0,.8);-webkit-box-shadow:0 0 0 1px rgba(0,0,0,.1);-moz-box-shadow:0 0 0 1px rgba(0,0,0,.1);box-shadow:0 0 0 1px rgba(0,0,0,.1);-webkit-border-radius:.3125em!important;-moz-border-radius:.3125em!important;border-radius:.3125em!important}.ui.selection.dropdown>.dropdown.icon{float:right;margin:.2em 0 .2em .5em}.ui.selection.dropdown,.ui.selection.dropdown .menu{top:100%;-webkit-transition:box-shadow .2s ease-out;-moz-transition:box-shadow .2s ease-out;-o-transition:box-shadow .2s ease-out;-ms-transition:box-shadow .2s ease-out;transition:box-shadow .2s ease-out}.ui.selection.dropdown .menu{max-height:312px;overflow-x:hidden;overflow-y:auto;-webkit-box-shadow:0 1px 0 1px #EEE;-moz-box-shadow:0 1px 0 1px #EEE;box-shadow:0 1px 0 1px #EEE;-moz-border-radius:0 0 .325em .325em;-webkit-border-radius:0 0 .325em .325em;border-radius:0 0 .325em .325em}.ui.selection.dropdown.visible,.ui.selection.dropdown:hover,.ui.selection.dropdown.hover{-webkit-box-shadow:0 0 0 1px rgba(0,0,0,.2);-moz-box-shadow:0 0 0 1px rgba(0,0,0,.2);box-shadow:0 0 0 1px rgba(0,0,0,.2);-webkit-border-radius:.3125em .3125em 0 0!important;-moz-border-radius:.3125em .3125em 0 0!important;border-radius:.3125em .3125em 0 0!important}.ui.selection.dropdown.visible .menu,.ui.selection.dropdown.hover .menu,.ui.selection.dropdown:hover .menu{-webkit-box-shadow:0 1px 0 1px #D3D3D3;-moz-box-shadow:0 1px 0 1px #D3D3D3;box-shadow:0 1px 0 1px #D3D3D3}.ui.fluid.dropdown{display:block}.ui.pointing.dropdown .menu{top:100%;margin-top:.75em;-moz-border-radius:.325em;-webkit-border-radius:.325em;border-radius:.325em}.ui.pointing.dropdown .menu:after{position:absolute;pointer-events:none;content:" ";width:.5em;height:.5em;-moz-box-shadow:-1px -1px 0 1px rgba(0,0,0,.05);-webkit-box-shadow:-1px -1px 0 1px rgba(0,0,0,.05);box-shadow:-1px -1px 0 1px rgba(0,0,0,.05);background-image:none;background-color:#FFF;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);transform:rotate(45deg);z-index:2}.ui.pointing.dropdown .menu .item.active:first-child{background:transparent -webkit-linear-gradient(transparent,rgba(0,0,0,.03));background:transparent -moz-linear-gradient(transparent,rgba(0,0,0,.03));background:transparent -o-linear-gradient(transparent,rgba(0,0,0,.03));background:transparent -ms-linear-gradient(transparent,rgba(0,0,0,.03));background:transparent linear-gradient(transparent,rgba(0,0,0,.03))}.ui.pointing.dropdown .menu:after{top:-.25em;left:50%;margin:0 0 0 -.25em}.ui.top.left.pointing.dropdown .menu:after{top:-.25em;left:1em;right:auto;margin:0}.ui.top.right.pointing.dropdown .menu:after{top:-.25em;left:auto;right:1em;margin:0}.ui.left.pointing.dropdown .menu:after{top:1em;left:-.25em;margin-top:-.25em 0 0 0}.ui.right.pointing.dropdown .menu:after{top:1em;left:auto;right:-.25em;margin-top:-.25em 0 0 0}.ui.pointing.dropdown.visible,.ui.pointing.dropdown.visible .menu{-moz-border-radius:.325em!important;-webkit-border-radius:.325em!important;border-radius:.325em!important} \ No newline at end of file diff --git a/build/minified/modules/dropdown.min.js b/build/minified/modules/dropdown.min.js index 437e54f18..c3028eb9a 100644 --- a/build/minified/modules/dropdown.min.js +++ b/build/minified/modules/dropdown.min.js @@ -1 +1 @@ -(function(e,n,t,o){e.fn.dropdown=function(n){var i,a=e(this),r=e(t),s=e.isPlainObject(n)?e.extend(!0,{},e.fn.dropdown.settings,n):e.fn.dropdown.settings,c="."+s.namespace,l="module-"+s.namespace,u=a.selector||"",d=(new Date).getTime(),m=[],f=arguments[0],g="string"==typeof f,p=[].slice.call(arguments,1);return a.each(function(){var n,h=e(this),v=e(this).find(s.selector.menu),b=e(this).find(s.selector.item),y=e(this).find(s.selector.text),x=e(this).find(s.selector.input),w="ontouchstart"in t.documentElement,C=(h.selector||"",this),T=h.data("module-"+s.namespace),k=s.className,N=s.metadata,z=s.namespace,E=s.animation,P=s.errors;n={initialize:function(){n.verbose("Initializing dropdown with bound events",h),w?h.on("touchstart"+c,n.event.test.toggle):"click"==s.on?h.on("click"+c,n.event.test.toggle):"hover"==s.on?h.on("mouseenter"+c,n.show).on("mouseleave"+c,n.delayedHide):h.on(s.on+c,n.toggle),"form"==s.action&&n.set.selected(),b.on(n.get.selectEvent()+c,n.event.item.click),h.data(l,n)},destroy:function(){n.verbose("Destroying previous module for",h),h.off(z)},event:{stopPropagation:function(e){e.stopPropagation()},test:{toggle:function(e){n.intent.test(e,n.toggle),e.stopPropagation()},hide:function(e){n.intent.test(e,n.hide),e.stopPropagation()}},item:{click:function(t){var o=e(this),i=o.data(N.text)||o.text(),a=o.data(N.value)||i;n.verbose("Adding active state to selected item"),b.removeClass(k.active),o.addClass(k.active),n.action.determine(i,a),e.proxy(s.onChange,h.get())(a,i),t.stopPropagation()}}},intent:{test:function(t,o){n.debug("Determining whether event occurred in dropdown",t.target),o=o||function(){},0===e(t.target).closest(v).size()?(n.verbose("Triggering event",o),o()):n.verbose("Event occurred in dropdown, canceling callback")},bind:function(){n.verbose("Binding hide intent event to document"),r.on(n.get.selectEvent(),n.event.test.hide)},unbind:function(){n.verbose("Removing hide intent event from document"),r.off(n.get.selectEvent())}},action:{determine:function(t,o){e.isFunction(n.action[s.action])?(n.verbose("Triggering preset action",s.action),n.action[s.action](t,o)):e.isFunction(s.action)?(n.verbose("Triggering user action",s.action),s.action(t,o)):n.error(P.action)},none:function(){},hide:function(){n.hide()},changeText:function(e){n.set.text(e),n.hide()},form:function(e,t){n.set.text(e),n.set.value(t),n.hide()}},get:{selectEvent:function(){return w?"touchstart":"click"},text:function(){return y.text()},value:function(){return x.val()},item:function(n){var t;return n=n||x.val(),b.each(function(){e(this).data(N.value)==n&&(t=e(this))}),t||!1}},set:{text:function(e){n.debug("Changing text",e,y),y.removeClass(k.placeholder),y.text(e)},value:function(e){n.debug("Adding selected value to hidden input",e,x),x.val(e)},selected:function(e){var t,o=(e||x.val(),n.get.item(e));o&&(n.debug("Setting selected menu item to",o),t=o.data(N.text)||o.text(),b.removeClass(k.active),o.addClass(k.active),n.set.text(t))}},is:{visible:function(){return v.is(":visible")},hidden:function(){return v.is(":not(:visible)")}},can:{click:function(){return w||"click"==s.on},show:function(){return!h.hasClass(k.disabled)}},animate:{show:function(){n.verbose("Doing menu showing animation"),"none"==E.show?v.show():"fade"==E.show?v.fadeIn(150):"slide"==E.show?v.clearQueue().children().clearQueue().css("opacity",0).delay(50).animate({opacity:1},200,"easeOutQuad").end().slideDown(100,"easeOutQuad"):n.error(P.animation)},hide:function(){n.verbose("Doing menu hiding animation"),"none"==E.hide?v.hide():"fade"==E.hide?v.fadeOut(150):"slide"==E.hide?v.clearQueue().children().clearQueue().css("opacity",1).animate({opacity:0},100,"easeOutQuad").end().delay(50).slideUp(100,"easeOutQuad"):n.error(P.animation)}},show:function(){n.debug("Checking if dropdown can show"),clearTimeout(n.graceTimer),n.is.visible()||(n.hideOthers(),h.addClass(k.visible),n.animate.show(),n.can.click()&&n.intent.bind(),e.proxy(s.onShow,h.get())())},hide:function(){n.is.hidden()||(n.debug("Hiding dropdown"),h.removeClass(k.visible),n.can.click()&&n.intent.unbind(),n.animate.hide(),e.proxy(s.onHide,h.get())())},delayedHide:function(){n.verbose("User moused away setting timer to hide dropdown"),n.graceTimer=setTimeout(n.hide,s.gracePeriod)},hideOthers:function(){n.verbose("Finding other dropdowns to hide"),a.not(h).has(s.selector.menu+":visible").dropdown("hide")},toggle:function(){n.verbose("Toggling menu visibility"),n.is.hidden()?n.show():n.hide()},setting:function(t,i){return n.debug("Changing setting",t,i),i===o?s[t]:(e.isPlainObject(t)?e.extend(!0,s,t):s[t]=i,o)},internal:function(t,i){return n.debug("Changing internal",t,i),i===o?n[t]:(e.isPlainObject(t)?e.extend(!0,n,t):n[t]=i,o)},debug:function(){s.debug&&(s.performance?n.performance.log(arguments):n.debug=Function.prototype.bind.call(console.info,console,s.moduleName+":"))},verbose:function(){s.verbose&&s.debug&&(s.performance?n.performance.log(arguments):n.verbose=Function.prototype.bind.call(console.info,console,s.moduleName+":"))},error:function(){n.error=Function.prototype.bind.call(console.log,console,s.moduleName+":")},performance:{log:function(e){var t,o,i;s.performance&&(t=(new Date).getTime(),i=d||t,o=t-i,d=t,m.push({Element:C,Name:e[0],Arguments:e[1]||"","Execution Time":o})),clearTimeout(n.performance.timer),n.performance.timer=setTimeout(n.performance.display,100)},display:function(){var n=s.moduleName+":",t=0;d=!1,e.each(m,function(e,n){t+=n["Execution Time"]}),n+=" "+t+"ms",u&&(n+=" '"+u+"'"),(console.group!==o||console.table!==o)&&m.length>0&&(console.groupCollapsed(n),console.table?console.table(m):e.each(m,function(e,n){console.log(n.Name+": "+n["Execution Time"]+"ms")}),console.groupEnd()),m=[]}},invoke:function(t,i,a){var r,s;return i=i||p,a=C||a,"string"==typeof t&&T!==o&&(t=t.split("."),r=t.length-1,e.each(t,function(t,i){return e.isPlainObject(T[i])&&t!=r?(T=T[i],!0):T[i]!==o?(s=T[i],!0):(n.error(P.method),!1)})),e.isFunction(s)?(T.verbose("Executing invoked function",s),s.apply(a,i)):s||!1}},g?(T===o&&n.initialize(),i=n.invoke(f)):(T!==o&&n.destroy(),n.initialize())}),i?i:this},e.fn.dropdown.settings={moduleName:"Dropdown",namespace:"dropdown",verbose:!0,debug:!0,performance:!0,on:"click",gracePeriod:300,action:"hide",animation:{show:"slide",hide:"slide"},onChange:function(){},onShow:function(){},onHide:function(){},errors:{action:"You called a dropdown action that was not defined",method:"The method you called is not defined.",animation:"The requested animation was not found"},metadata:{text:"text",value:"value"},selector:{menu:".menu",item:".menu > .item",text:"> .text",input:'> input[type="hidden"]'},className:{active:"active",placeholder:"default",disabled:"disabled",visible:"visible"}}})(jQuery,window,document); \ No newline at end of file +(function(e,n,t,o){e.fn.dropdown=function(n){var i,a=e(this),r=e(t),s=e.isPlainObject(n)?e.extend(!0,{},e.fn.dropdown.settings,n):e.fn.dropdown.settings,c="."+s.namespace,l="module-"+s.namespace,u=a.selector||"",d=(new Date).getTime(),m=[],f=arguments[0],g="string"==typeof f,p=[].slice.call(arguments,1);return a.each(function(){var n,h=e(this),v=e(this).find(s.selector.menu),b=e(this).find(s.selector.item),y=e(this).find(s.selector.text),x=e(this).find(s.selector.input),w="ontouchstart"in t.documentElement,C=(h.selector||"",this),T=h.data("module-"+s.namespace),k=s.className,N=s.metadata,z=s.namespace,E=s.animation,D=s.errors;n={initialize:function(){n.verbose("Initializing dropdown with bound events",h),w?h.on("touchstart"+c,n.event.test.toggle):"click"==s.on?h.on("click"+c,n.event.test.toggle):"hover"==s.on?h.on("mouseenter"+c,n.show).on("mouseleave"+c,n.delayedHide):h.on(s.on+c,n.toggle),"form"==s.action&&n.set.selected(),b.on(n.get.selectEvent()+c,n.event.item.click),h.data(l,n)},destroy:function(){n.verbose("Destroying previous module for",h),h.off(z)},event:{stopPropagation:function(e){e.stopPropagation()},test:{toggle:function(e){n.intent.test(e,n.toggle),e.stopPropagation()},hide:function(e){n.intent.test(e,n.hide),e.stopPropagation()}},item:{click:function(t){var o=e(this),i=o.data(N.text)||o.text(),a=o.data(N.value)||i;n.verbose("Adding active state to selected item"),b.removeClass(k.active),o.addClass(k.active),n.action.determine(i,a),e.proxy(s.onChange,h.get())(a,i),t.stopPropagation()}}},intent:{test:function(t,o){n.debug("Determining whether event occurred in dropdown",t.target),o=o||function(){},0===e(t.target).closest(v).size()?(n.verbose("Triggering event",o),o()):n.verbose("Event occurred in dropdown, canceling callback")},bind:function(){n.verbose("Binding hide intent event to document"),r.on(n.get.selectEvent(),n.event.test.hide)},unbind:function(){n.verbose("Removing hide intent event from document"),r.off(n.get.selectEvent())}},action:{determine:function(t,o){e.isFunction(n.action[s.action])?(n.verbose("Triggering preset action",s.action),n.action[s.action](t,o)):e.isFunction(s.action)?(n.verbose("Triggering user action",s.action),s.action(t,o)):n.error(D.action)},none:function(){},hide:function(){n.hide()},changeText:function(e){n.set.text(e),n.hide()},form:function(e,t){n.set.text(e),n.set.value(t),n.hide()}},get:{selectEvent:function(){return w?"touchstart":"click"},text:function(){return y.text()},value:function(){return x.val()},item:function(n){var t;return n=n||x.val(),b.each(function(){e(this).data(N.value)==n&&(t=e(this))}),t||!1}},set:{text:function(e){n.debug("Changing text",e,y),y.removeClass(k.placeholder),y.text(e)},value:function(e){n.debug("Adding selected value to hidden input",e,x),x.val(e)},selected:function(e){var t,o=(e||x.val(),n.get.item(e));o&&(n.debug("Setting selected menu item to",o),t=o.data(N.text)||o.text(),b.removeClass(k.active),o.addClass(k.active),n.set.text(t))}},is:{visible:function(){return v.is(":visible")},hidden:function(){return v.is(":not(:visible)")}},can:{click:function(){return w||"click"==s.on},show:function(){return!h.hasClass(k.disabled)}},animate:{show:function(){n.verbose("Doing menu showing animation"),"none"==E.show?v.show():"fade"==E.show?v.fadeIn(150):"slide"==E.show?v.clearQueue().children().clearQueue().css("opacity",0).delay(50).animate({opacity:1},200,"easeOutQuad").end().slideDown(100,"easeOutQuad"):n.error(D.animation)},hide:function(){n.verbose("Doing menu hiding animation"),"none"==E.hide?v.hide():"fade"==E.hide?v.fadeOut(150):"slide"==E.hide?v.clearQueue().children().clearQueue().css("opacity",1).animate({opacity:0},100,"easeOutQuad").end().delay(50).slideUp(100,"easeOutQuad"):n.error(D.animation)}},show:function(){n.debug("Checking if dropdown can show"),clearTimeout(n.graceTimer),n.is.visible()||(n.hideOthers(),h.addClass(k.visible),n.animate.show(),n.can.click()&&n.intent.bind(),e.proxy(s.onShow,h.get())())},hide:function(){n.is.hidden()||(n.debug("Hiding dropdown"),h.removeClass(k.visible),n.can.click()&&n.intent.unbind(),n.animate.hide(),e.proxy(s.onHide,h.get())())},delayedHide:function(){n.verbose("User moused away setting timer to hide dropdown"),n.graceTimer=setTimeout(n.hide,s.gracePeriod)},hideOthers:function(){n.verbose("Finding other dropdowns to hide"),a.not(h).has(s.selector.menu+":visible").dropdown("hide")},toggle:function(){n.verbose("Toggling menu visibility"),n.is.hidden()?n.show():n.hide()},setting:function(t,i){return n.debug("Changing setting",t,i),i===o?s[t]:(e.isPlainObject(t)?e.extend(!0,s,t):s[t]=i,o)},internal:function(t,i){return n.debug("Changing internal",t,i),i===o?n[t]:(e.isPlainObject(t)?e.extend(!0,n,t):n[t]=i,o)},debug:function(){s.debug&&(s.performance?n.performance.log(arguments):n.debug=Function.prototype.bind.call(console.info,console,s.moduleName+":"))},verbose:function(){s.verbose&&s.debug&&(s.performance?n.performance.log(arguments):n.verbose=Function.prototype.bind.call(console.info,console,s.moduleName+":"))},error:function(){n.error=Function.prototype.bind.call(console.log,console,s.moduleName+":")},performance:{log:function(e){var t,o,i;s.performance&&(t=(new Date).getTime(),i=d||t,o=t-i,d=t,m.push({Element:C,Name:e[0],Arguments:e[1]||"","Execution Time":o})),clearTimeout(n.performance.timer),n.performance.timer=setTimeout(n.performance.display,100)},display:function(){var n=s.moduleName+":",t=0;d=!1,e.each(m,function(e,n){t+=n["Execution Time"]}),n+=" "+t+"ms",u&&(n+=" '"+u+"'"),(console.group!==o||console.table!==o)&&m.length>0&&(console.groupCollapsed(n),console.table?console.table(m):e.each(m,function(e,n){console.log(n.Name+": "+n["Execution Time"]+"ms")}),console.groupEnd()),m=[]}},invoke:function(t,i,a){var r,s;return i=i||p,a=C||a,"string"==typeof t&&T!==o&&(t=t.split("."),r=t.length-1,e.each(t,function(t,i){return e.isPlainObject(T[i])&&t!=r?(T=T[i],!0):T[i]!==o?(s=T[i],!0):(n.error(D.method),!1)})),e.isFunction(s)?(T.verbose("Executing invoked function",s),s.apply(a,i)):s||!1}},g?(T===o&&n.initialize(),i=n.invoke(f)):(T!==o&&n.destroy(),n.initialize())}),i?i:this},e.fn.dropdown.settings={moduleName:"Dropdown",namespace:"dropdown",verbose:!0,debug:!0,performance:!0,on:"click",gracePeriod:300,action:"hide",animation:{show:"slide",hide:"slide"},onChange:function(){},onShow:function(){},onHide:function(){},errors:{action:"You called a dropdown action that was not defined",method:"The method you called is not defined.",animation:"The requested animation was not found"},metadata:{text:"text",value:"value"},selector:{menu:".menu",item:".menu > .item",text:"> .text",input:'> input[type="hidden"]'},className:{active:"active",placeholder:"default",disabled:"disabled",visible:"visible"}}})(jQuery,window,document); \ No newline at end of file diff --git a/build/packaged/modules/checkbox.js b/build/packaged/modules/checkbox.js index c219dcce2..90b640e8c 100644 --- a/build/packaged/modules/checkbox.js +++ b/build/packaged/modules/checkbox.js @@ -4,7 +4,7 @@ Notes: First Commit March 25, 2013 Simple plug-in which maintains the state for ui checkbox - This can be done without javascript, only in instances + This can be done without javascript, only in instances where each checkbox is assigned a unique ID. This provides a separate programmatic option when that is not possible. @@ -15,7 +15,7 @@ $.fn.checkbox = function(parameters) { var $allModules = $(this), - + settings = $.extend(true, {}, $.fn.checkbox.settings, parameters), eventNamespace = '.' + settings.namespace, @@ -35,12 +35,13 @@ $.fn.checkbox = function(parameters) { .each(function() { var $module = $(this), + $label = $(this).next(settings.selector.label).first(), $input = $(this).find(settings.selector.input), selector = $module.selector || '', element = this, instance = $module.data('module-' + settings.namespace), - + className = settings.className, namespace = settings.namespace, errors = settings.errors, @@ -54,6 +55,7 @@ $.fn.checkbox = function(parameters) { module.verbose('Initializing checkbox with delegated events', $module); $(element, settings.context) .on(selector, 'click' + eventNamespace, module.toggle) + .on(selector + ' + ' + settings.selector.label, 'click' + eventNamespace, module.toggle) .data(moduleNamespace, module) ; } @@ -63,6 +65,9 @@ $.fn.checkbox = function(parameters) { .on('click' + eventNamespace, module.toggle) .data(moduleNamespace, module) ; + $label + .on('click' + eventNamespace, module.toggle) + ; } }, @@ -286,7 +291,7 @@ $.fn.checkbox.settings = { verbose : true, debug : true, performance : true, - + // delegated event context context : false, required : 'auto', @@ -294,13 +299,14 @@ $.fn.checkbox.settings = { onChange : function(){}, onEnable : function(){}, onDisable : function(){}, - + errors : { method : 'The method you called is not defined.' }, selector : { - input : 'input' + input : 'input', + label : 'label' }, className : { diff --git a/build/packaged/semantic.min.css.REMOVED.git-id b/build/packaged/semantic.min.css.REMOVED.git-id index e3b72a506..fdac345c8 100644 --- a/build/packaged/semantic.min.css.REMOVED.git-id +++ b/build/packaged/semantic.min.css.REMOVED.git-id @@ -1 +1 @@ -732ae08e361f1bcc6c78cd8f233816b0da957044 \ No newline at end of file +7ab46ac9558343ad364e7126f8a90f6aafa71f35 \ No newline at end of file diff --git a/build/packaged/semantic.min.js.REMOVED.git-id b/build/packaged/semantic.min.js.REMOVED.git-id index 16783107e..da86c8b6e 100644 --- a/build/packaged/semantic.min.js.REMOVED.git-id +++ b/build/packaged/semantic.min.js.REMOVED.git-id @@ -1 +1 @@ -7d78365214efee53d29f5fe42d9d35413c66a554 \ No newline at end of file +2fc9e39d4f5d7bcc72eee759fba42933198702c5 \ No newline at end of file diff --git a/build/uncompressed/collections/form.css b/build/uncompressed/collections/form.css index 136d1c287..d06c4549a 100644 --- a/build/uncompressed/collections/form.css +++ b/build/uncompressed/collections/form.css @@ -305,7 +305,20 @@ background-color: #FFCCCC; } /*-------------------- - Field Groups + Field Groups +---------------------*/ +/* Grouped Vertically */ +.ui.form .grouped.fields { + margin: 0em 0em 1em; +} +.ui.form .grouped.fields .field { + display: block; + float: none; + margin: 0.5em 0em; + padding: 0em; +} +/*-------------------- + Fields ---------------------*/ /* Split fields */ .ui.form .fields { diff --git a/build/uncompressed/modules/checkbox.js b/build/uncompressed/modules/checkbox.js index c219dcce2..90b640e8c 100644 --- a/build/uncompressed/modules/checkbox.js +++ b/build/uncompressed/modules/checkbox.js @@ -4,7 +4,7 @@ Notes: First Commit March 25, 2013 Simple plug-in which maintains the state for ui checkbox - This can be done without javascript, only in instances + This can be done without javascript, only in instances where each checkbox is assigned a unique ID. This provides a separate programmatic option when that is not possible. @@ -15,7 +15,7 @@ $.fn.checkbox = function(parameters) { var $allModules = $(this), - + settings = $.extend(true, {}, $.fn.checkbox.settings, parameters), eventNamespace = '.' + settings.namespace, @@ -35,12 +35,13 @@ $.fn.checkbox = function(parameters) { .each(function() { var $module = $(this), + $label = $(this).next(settings.selector.label).first(), $input = $(this).find(settings.selector.input), selector = $module.selector || '', element = this, instance = $module.data('module-' + settings.namespace), - + className = settings.className, namespace = settings.namespace, errors = settings.errors, @@ -54,6 +55,7 @@ $.fn.checkbox = function(parameters) { module.verbose('Initializing checkbox with delegated events', $module); $(element, settings.context) .on(selector, 'click' + eventNamespace, module.toggle) + .on(selector + ' + ' + settings.selector.label, 'click' + eventNamespace, module.toggle) .data(moduleNamespace, module) ; } @@ -63,6 +65,9 @@ $.fn.checkbox = function(parameters) { .on('click' + eventNamespace, module.toggle) .data(moduleNamespace, module) ; + $label + .on('click' + eventNamespace, module.toggle) + ; } }, @@ -286,7 +291,7 @@ $.fn.checkbox.settings = { verbose : true, debug : true, performance : true, - + // delegated event context context : false, required : 'auto', @@ -294,13 +299,14 @@ $.fn.checkbox.settings = { onChange : function(){}, onEnable : function(){}, onDisable : function(){}, - + errors : { method : 'The method you called is not defined.' }, selector : { - input : 'input' + input : 'input', + label : 'label' }, className : { diff --git a/build/uncompressed/modules/dimmer.css b/build/uncompressed/modules/dimmer.css index d936a8e1d..336d6dd6a 100644 --- a/build/uncompressed/modules/dimmer.css +++ b/build/uncompressed/modules/dimmer.css @@ -150,8 +150,7 @@ body.ui.dimmable.dimmed > :not(.dimmer) { display: block; overflow: hidden; opacity: 1; - height: 0px; - width: 0px; + z-index: -100; background-color: rgba(0, 0, 0, 0); } .ui.dimmable.dimmed > .ui.simple.dimmer { diff --git a/build/uncompressed/modules/dropdown.css b/build/uncompressed/modules/dropdown.css index 5260f9fd3..690d2f26f 100644 --- a/build/uncompressed/modules/dropdown.css +++ b/build/uncompressed/modules/dropdown.css @@ -118,9 +118,7 @@ .ui.simple.dropdown .menu { display: block; overflow: hidden; - top: 100%; - height: 0px; - width: 0px; + top: -9999px; position: absolute; opacity: 0; -webkit-transition: opacity 0.2s ease-out; @@ -129,11 +127,17 @@ -ms-transition: opacity 0.2s ease-out; transition: opacity 0.2s ease-out; } +.ui.simple.dropdown.visible, +.ui.simple.dropdown:hover { + border-bottom-left-radius: 0em !important; + border-bottom-right-radius: 0em !important; +} .ui.simple.dropdown.visible .menu, .ui.simple.dropdown:hover .menu { overflow: visible; width: auto; height: auto; + top: 100%; opacity: 1; } .ui.simple.disabled.dropdown:hover .menu { diff --git a/node/src/documents/collections/form.html b/node/src/documents/collections/form.html index c22ddd799..5a27f9837 100755 --- a/node/src/documents/collections/form.html +++ b/node/src/documents/collections/form.html @@ -10,14 +10,6 @@ type : 'UI Collection'

Form

-

Forms are a grouping of elements requiring user input.

-

Form input can be validated using the form validation behavior

-

- Forms always include fields, and fields always contain form elements. Fields themselves may also include: - ui inputs, standard form fields, ui labels, textareas, as well as: - checkboxes, and message blocks. -

-

Validation messages use messages which are formatted for use inside forms.

@@ -34,6 +26,16 @@ type : 'UI Collection'

Form:

A form is a collection of user input elements, and has no stylings of its own.

+
+ Looking for form validation? + Form input can be validated using the form validation behavior +
+

+ Forms always include fields, and fields always contain form elements. Fields themselves may also include: + ui inputs, standard form fields, ui labels, textareas, as well as: + checkboxes, and message blocks. +

+

Validation messages use messages which are formatted for use inside forms.

This example uses a ui segment to add the padding and background color. This is not required.

@@ -435,8 +437,8 @@ type : 'UI Collection'

Groups

-

Field Groups

-

Fields can exist side by side to show relation

+

Fields

+

Fields can exist together side by side

@@ -454,6 +456,43 @@ type : 'UI Collection'
+ +
+

Grouped Fields

+

Fields can be grouped to show related choices

+
+
+
+
+ + +
+ +
+
+
+ + +
+ +
+
+
+ + +
+ +
+
+
+ + +
+ +
+
+
+

Inline

diff --git a/node/src/documents/modules/checkbox.html b/node/src/documents/modules/checkbox.html index 19f5eac42..09fd6a22f 100755 --- a/node/src/documents/modules/checkbox.html +++ b/node/src/documents/modules/checkbox.html @@ -30,18 +30,38 @@ type : 'UI Module'

Check Box

A standard checkbox

-
- -
+ +
Javascript
+
+ $('.ui.checkbox') + .checkbox() + ; +
+
HTML
+
+
+
+ +
+
+ +
+
-
+

Static Check Box

A checkbox can function without javascript

-
- - +
HTML Only
+
+
+
+ + +
+ +
@@ -70,33 +90,35 @@ type : 'UI Module'

Radio Box

A checkbox can be formatted as a radio element. This means it is an exclusive option.

-
-
- - +
+
+
+ + +
+
- -
-
-
- - +
+
+ + +
+
- -
-
-
- - +
+
+ + +
+
- -
-
-
- - +
+
+ + +
+
-
diff --git a/node/src/files/components/semantic/collections/form.css b/node/src/files/components/semantic/collections/form.css index 136d1c287..d06c4549a 100644 --- a/node/src/files/components/semantic/collections/form.css +++ b/node/src/files/components/semantic/collections/form.css @@ -305,7 +305,20 @@ background-color: #FFCCCC; } /*-------------------- - Field Groups + Field Groups +---------------------*/ +/* Grouped Vertically */ +.ui.form .grouped.fields { + margin: 0em 0em 1em; +} +.ui.form .grouped.fields .field { + display: block; + float: none; + margin: 0.5em 0em; + padding: 0em; +} +/*-------------------- + Fields ---------------------*/ /* Split fields */ .ui.form .fields { diff --git a/node/src/files/components/semantic/modules/behavior/state.js b/node/src/files/components/semantic/modules/behavior/state.js index f7ee1638a..aabc202a0 100644 --- a/node/src/files/components/semantic/modules/behavior/state.js +++ b/node/src/files/components/semantic/modules/behavior/state.js @@ -305,7 +305,7 @@ $.fn.state = function(parameters) { if(settings.sync) { module.sync(); } - settings.onChange(); + $.proxy(settings.onChange, $module)(); }, activate: function() { @@ -315,6 +315,7 @@ $.fn.state = function(parameters) { .addClass(className.active) ; module.text.update(text.active); + $.proxy(settings.onActivate, $module)(); } }, @@ -325,6 +326,7 @@ $.fn.state = function(parameters) { .removeClass(className.active) ; module.text.update(text.inactive); + $.proxy(settings.onDeactivate, $module)(); } }, @@ -561,7 +563,9 @@ $.fn.state.settings = { performance: true, // callback occurs on state change - onChange: function() {}, + onChange : function() {}, + onActivate : function() {}, + onDeactivate : function() {}, // state test functions activateTest : function() { return true; }, @@ -626,6 +630,7 @@ $.fn.state.settings = { }, states : { + flash : false, hover : true, focus : true, pressed : true, @@ -638,6 +643,7 @@ $.fn.state.settings = { hover : false, active : false, inactive : false, + loading : false, enable : false, disable : false } diff --git a/node/src/files/components/semantic/modules/checkbox.js b/node/src/files/components/semantic/modules/checkbox.js index c219dcce2..90b640e8c 100644 --- a/node/src/files/components/semantic/modules/checkbox.js +++ b/node/src/files/components/semantic/modules/checkbox.js @@ -4,7 +4,7 @@ Notes: First Commit March 25, 2013 Simple plug-in which maintains the state for ui checkbox - This can be done without javascript, only in instances + This can be done without javascript, only in instances where each checkbox is assigned a unique ID. This provides a separate programmatic option when that is not possible. @@ -15,7 +15,7 @@ $.fn.checkbox = function(parameters) { var $allModules = $(this), - + settings = $.extend(true, {}, $.fn.checkbox.settings, parameters), eventNamespace = '.' + settings.namespace, @@ -35,12 +35,13 @@ $.fn.checkbox = function(parameters) { .each(function() { var $module = $(this), + $label = $(this).next(settings.selector.label).first(), $input = $(this).find(settings.selector.input), selector = $module.selector || '', element = this, instance = $module.data('module-' + settings.namespace), - + className = settings.className, namespace = settings.namespace, errors = settings.errors, @@ -54,6 +55,7 @@ $.fn.checkbox = function(parameters) { module.verbose('Initializing checkbox with delegated events', $module); $(element, settings.context) .on(selector, 'click' + eventNamespace, module.toggle) + .on(selector + ' + ' + settings.selector.label, 'click' + eventNamespace, module.toggle) .data(moduleNamespace, module) ; } @@ -63,6 +65,9 @@ $.fn.checkbox = function(parameters) { .on('click' + eventNamespace, module.toggle) .data(moduleNamespace, module) ; + $label + .on('click' + eventNamespace, module.toggle) + ; } }, @@ -286,7 +291,7 @@ $.fn.checkbox.settings = { verbose : true, debug : true, performance : true, - + // delegated event context context : false, required : 'auto', @@ -294,13 +299,14 @@ $.fn.checkbox.settings = { onChange : function(){}, onEnable : function(){}, onDisable : function(){}, - + errors : { method : 'The method you called is not defined.' }, selector : { - input : 'input' + input : 'input', + label : 'label' }, className : { diff --git a/node/src/files/components/semantic/modules/dimmer.css b/node/src/files/components/semantic/modules/dimmer.css index d936a8e1d..336d6dd6a 100644 --- a/node/src/files/components/semantic/modules/dimmer.css +++ b/node/src/files/components/semantic/modules/dimmer.css @@ -150,8 +150,7 @@ body.ui.dimmable.dimmed > :not(.dimmer) { display: block; overflow: hidden; opacity: 1; - height: 0px; - width: 0px; + z-index: -100; background-color: rgba(0, 0, 0, 0); } .ui.dimmable.dimmed > .ui.simple.dimmer { diff --git a/node/src/files/components/semantic/modules/dropdown.css b/node/src/files/components/semantic/modules/dropdown.css index 5260f9fd3..690d2f26f 100644 --- a/node/src/files/components/semantic/modules/dropdown.css +++ b/node/src/files/components/semantic/modules/dropdown.css @@ -118,9 +118,7 @@ .ui.simple.dropdown .menu { display: block; overflow: hidden; - top: 100%; - height: 0px; - width: 0px; + top: -9999px; position: absolute; opacity: 0; -webkit-transition: opacity 0.2s ease-out; @@ -129,11 +127,17 @@ -ms-transition: opacity 0.2s ease-out; transition: opacity 0.2s ease-out; } +.ui.simple.dropdown.visible, +.ui.simple.dropdown:hover { + border-bottom-left-radius: 0em !important; + border-bottom-right-radius: 0em !important; +} .ui.simple.dropdown.visible .menu, .ui.simple.dropdown:hover .menu { overflow: visible; width: auto; height: auto; + top: 100%; opacity: 1; } .ui.simple.disabled.dropdown:hover .menu { diff --git a/node/src/files/javascript/checkbox.js b/node/src/files/javascript/checkbox.js old mode 100644 new mode 100755 index 47117e522..781dfe5d9 --- a/node/src/files/javascript/checkbox.js +++ b/node/src/files/javascript/checkbox.js @@ -5,7 +5,7 @@ semantic.dropdown.ready = function() { // selector cache var - $checkbox = $('.ui.checkbox'), + $checkbox = $('.example').not('.static').find('.ui.checkbox'), // alias handler ; diff --git a/node/src/files/javascript/semantic.js b/node/src/files/javascript/semantic.js index 81bca86c9..bf48816a3 100755 --- a/node/src/files/javascript/semantic.js +++ b/node/src/files/javascript/semantic.js @@ -112,7 +112,7 @@ semantic.ready = function() { var $example = $(this).closest('.example'), $header = $example.children('.ui.header:first-of-type, p:first-of-type'), - $demo = $example.children().not($header).not('i.code:first-child, .annotated, br, .ignore, .ignored'), + $demo = $example.children().not($header).not('i.code:first-child, .code, .language.label, .annotated, br, .ignore, .ignored'), $annotated = $example.find('.annotated'), $code = $annotated.find('.code'), whiteSpace = new RegExp('\\n\\s{4}', 'g'), diff --git a/node/src/files/overrides/card.js b/node/src/files/overrides/card.js index 6591956ad..f16d5f824 100755 --- a/node/src/files/overrides/card.js +++ b/node/src/files/overrides/card.js @@ -63,6 +63,7 @@ $.fn.card = function(parameters) { }) ; $vote + .popup(settings.popup.vote) .state(settings.state.vote) ; $close @@ -314,7 +315,8 @@ $.fn.card.settings = { popup: { vote: { - content: '' + delay : 500, + content : 'Vote for an idea to help it get to eval' } }, diff --git a/node/src/files/stylesheets/semantic.css b/node/src/files/stylesheets/semantic.css index 2c350de5e..12fa857fc 100755 --- a/node/src/files/stylesheets/semantic.css +++ b/node/src/files/stylesheets/semantic.css @@ -226,7 +226,7 @@ p:last-child { margin-bottom: 0em; } p > a { - font-weight: bold; + /* font-weight: bold; */ } /* links */ a { @@ -473,6 +473,9 @@ a:hover { #example .main.ui.grid { position: relative; } +#example .example .language.label { + margin: 1em 0em 0.75em; +} #example .example .two.column.grid .column { padding-left: 4%; padding-right: 4%; diff --git a/src/collections/form.less b/src/collections/form.less index 236c3d724..cd04200f5 100755 --- a/src/collections/form.less +++ b/src/collections/form.less @@ -395,7 +395,23 @@ } /*-------------------- - Field Groups + Field Groups +---------------------*/ + +/* Grouped Vertically */ +.ui.form .grouped.fields { + margin: 0em 0em 1em; +} +.ui.form .grouped.fields .field { + display: block; + float: none; + margin: 0.5em 0em; + padding: 0em; +} + + +/*-------------------- + Fields ---------------------*/ /* Split fields */ diff --git a/src/modules/checkbox.js b/src/modules/checkbox.js index c219dcce2..90b640e8c 100755 --- a/src/modules/checkbox.js +++ b/src/modules/checkbox.js @@ -4,7 +4,7 @@ Notes: First Commit March 25, 2013 Simple plug-in which maintains the state for ui checkbox - This can be done without javascript, only in instances + This can be done without javascript, only in instances where each checkbox is assigned a unique ID. This provides a separate programmatic option when that is not possible. @@ -15,7 +15,7 @@ $.fn.checkbox = function(parameters) { var $allModules = $(this), - + settings = $.extend(true, {}, $.fn.checkbox.settings, parameters), eventNamespace = '.' + settings.namespace, @@ -35,12 +35,13 @@ $.fn.checkbox = function(parameters) { .each(function() { var $module = $(this), + $label = $(this).next(settings.selector.label).first(), $input = $(this).find(settings.selector.input), selector = $module.selector || '', element = this, instance = $module.data('module-' + settings.namespace), - + className = settings.className, namespace = settings.namespace, errors = settings.errors, @@ -54,6 +55,7 @@ $.fn.checkbox = function(parameters) { module.verbose('Initializing checkbox with delegated events', $module); $(element, settings.context) .on(selector, 'click' + eventNamespace, module.toggle) + .on(selector + ' + ' + settings.selector.label, 'click' + eventNamespace, module.toggle) .data(moduleNamespace, module) ; } @@ -63,6 +65,9 @@ $.fn.checkbox = function(parameters) { .on('click' + eventNamespace, module.toggle) .data(moduleNamespace, module) ; + $label + .on('click' + eventNamespace, module.toggle) + ; } }, @@ -286,7 +291,7 @@ $.fn.checkbox.settings = { verbose : true, debug : true, performance : true, - + // delegated event context context : false, required : 'auto', @@ -294,13 +299,14 @@ $.fn.checkbox.settings = { onChange : function(){}, onEnable : function(){}, onDisable : function(){}, - + errors : { method : 'The method you called is not defined.' }, selector : { - input : 'input' + input : 'input', + label : 'label' }, className : { diff --git a/src/modules/dimmer.less b/src/modules/dimmer.less index 2df1be0c9..f12c7762f 100755 --- a/src/modules/dimmer.less +++ b/src/modules/dimmer.less @@ -192,8 +192,7 @@ body.ui.dimmable.dimmed > :not(.dimmer){ display: block; overflow: hidden; opacity: 1; - height: 0px; - width: 0px; + z-index: -100; background-color: rgba(0, 0, 0, 0); } .ui.dimmable.dimmed > .ui.simple.dimmer { diff --git a/src/modules/dropdown.less b/src/modules/dropdown.less index 0a99f6580..9c134c2e9 100755 --- a/src/modules/dropdown.less +++ b/src/modules/dropdown.less @@ -167,9 +167,7 @@ .ui.simple.dropdown .menu { display: block; overflow: hidden; - top: 100%; - height: 0px; - width: 0px; + top: -9999px; position: absolute; opacity: 0; -webkit-transition: opacity 0.2s ease-out; @@ -178,11 +176,19 @@ -ms-transition: opacity 0.2s ease-out; transition: opacity 0.2s ease-out; } + +.ui.simple.dropdown.visible, +.ui.simple.dropdown:hover { + border-bottom-left-radius: 0em !important; + border-bottom-right-radius: 0em !important; +} + .ui.simple.dropdown.visible .menu, .ui.simple.dropdown:hover .menu { overflow: visible; width: auto; height: auto; + top: 100%; opacity: 1; } .ui.simple.disabled.dropdown:hover .menu {