fomantic-ui 2.9.0-beta.304 → 2.9.0-beta.305
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.all-contributorsrc +9 -0
- package/CONTRIBUTORS.md +3 -0
- package/dist/components/accordion.css +1 -1
- package/dist/components/accordion.js +1 -1
- package/dist/components/accordion.min.css +1 -1
- package/dist/components/accordion.min.js +1 -1
- package/dist/components/ad.css +1 -1
- package/dist/components/ad.min.css +1 -1
- package/dist/components/api.js +1 -1
- package/dist/components/api.min.js +1 -1
- package/dist/components/breadcrumb.css +1 -1
- package/dist/components/breadcrumb.min.css +1 -1
- package/dist/components/button.css +1 -1
- package/dist/components/button.min.css +1 -1
- package/dist/components/calendar.css +1 -1
- package/dist/components/calendar.js +6 -3
- package/dist/components/calendar.min.css +1 -1
- package/dist/components/calendar.min.js +2 -2
- package/dist/components/card.css +1 -1
- package/dist/components/card.min.css +1 -1
- package/dist/components/checkbox.css +1 -1
- package/dist/components/checkbox.js +2 -1
- package/dist/components/checkbox.min.css +1 -1
- package/dist/components/checkbox.min.js +2 -2
- package/dist/components/comment.css +1 -1
- package/dist/components/comment.min.css +1 -1
- package/dist/components/container.css +1 -1
- package/dist/components/container.min.css +1 -1
- package/dist/components/dimmer.css +1 -1
- package/dist/components/dimmer.js +1 -1
- package/dist/components/dimmer.min.css +1 -1
- package/dist/components/dimmer.min.js +1 -1
- package/dist/components/divider.css +1 -1
- package/dist/components/divider.min.css +1 -1
- package/dist/components/dropdown.css +1 -1
- package/dist/components/dropdown.js +2 -1
- package/dist/components/dropdown.min.css +1 -1
- package/dist/components/dropdown.min.js +2 -2
- package/dist/components/embed.css +1 -1
- package/dist/components/embed.js +1 -1
- package/dist/components/embed.min.css +1 -1
- package/dist/components/embed.min.js +1 -1
- package/dist/components/feed.css +1 -1
- package/dist/components/feed.min.css +1 -1
- package/dist/components/flag.css +1 -1
- package/dist/components/flag.min.css +1 -1
- package/dist/components/form.css +1 -1
- package/dist/components/form.js +1 -1
- package/dist/components/form.min.css +1 -1
- package/dist/components/form.min.js +1 -1
- package/dist/components/grid.css +1 -1
- package/dist/components/grid.min.css +1 -1
- package/dist/components/header.css +1 -1
- package/dist/components/header.min.css +1 -1
- package/dist/components/icon.css +1 -1
- package/dist/components/icon.min.css +1 -1
- package/dist/components/image.css +1 -1
- package/dist/components/image.min.css +1 -1
- package/dist/components/input.css +1 -1
- package/dist/components/input.min.css +1 -1
- package/dist/components/item.css +1 -1
- package/dist/components/item.min.css +1 -1
- package/dist/components/label.css +1 -1
- package/dist/components/label.min.css +1 -1
- package/dist/components/list.css +1 -1
- package/dist/components/list.min.css +1 -1
- package/dist/components/loader.css +1 -1
- package/dist/components/loader.min.css +1 -1
- package/dist/components/message.css +1 -1
- package/dist/components/message.min.css +1 -1
- package/dist/components/modal.css +1 -1
- package/dist/components/modal.js +3 -3
- package/dist/components/modal.min.css +1 -1
- package/dist/components/modal.min.js +2 -2
- package/dist/components/nag.css +1 -1
- package/dist/components/nag.js +1 -1
- package/dist/components/nag.min.css +1 -1
- package/dist/components/nag.min.js +1 -1
- package/dist/components/placeholder.css +1 -1
- package/dist/components/placeholder.min.css +1 -1
- package/dist/components/popup.css +1 -1
- package/dist/components/popup.js +1 -1
- package/dist/components/popup.min.css +1 -1
- package/dist/components/popup.min.js +1 -1
- package/dist/components/progress.css +1 -1
- package/dist/components/progress.js +1 -1
- package/dist/components/progress.min.css +1 -1
- package/dist/components/progress.min.js +1 -1
- package/dist/components/rail.css +1 -1
- package/dist/components/rail.min.css +1 -1
- package/dist/components/rating.css +1 -1
- package/dist/components/rating.js +1 -1
- package/dist/components/rating.min.css +1 -1
- package/dist/components/rating.min.js +1 -1
- package/dist/components/reset.css +1 -1
- package/dist/components/reset.min.css +1 -1
- package/dist/components/reveal.css +1 -1
- package/dist/components/reveal.min.css +1 -1
- package/dist/components/search.css +1 -1
- package/dist/components/search.js +5 -4
- package/dist/components/search.min.css +1 -1
- package/dist/components/search.min.js +2 -2
- package/dist/components/segment.css +1 -1
- package/dist/components/segment.min.css +1 -1
- package/dist/components/shape.css +1 -1
- package/dist/components/shape.js +1 -1
- package/dist/components/shape.min.css +1 -1
- package/dist/components/shape.min.js +1 -1
- package/dist/components/sidebar.css +1 -1
- package/dist/components/sidebar.js +1 -1
- package/dist/components/sidebar.min.css +1 -1
- package/dist/components/sidebar.min.js +1 -1
- package/dist/components/site.css +1 -1
- package/dist/components/site.js +1 -1
- package/dist/components/site.min.css +1 -1
- package/dist/components/site.min.js +1 -1
- package/dist/components/slider.js +1 -1
- package/dist/components/slider.min.js +1 -1
- package/dist/components/state.js +1 -1
- package/dist/components/state.min.js +1 -1
- package/dist/components/statistic.css +1 -1
- package/dist/components/statistic.min.css +1 -1
- package/dist/components/step.css +1 -1
- package/dist/components/step.min.css +1 -1
- package/dist/components/sticky.css +1 -1
- package/dist/components/sticky.js +1 -1
- package/dist/components/sticky.min.css +1 -1
- package/dist/components/sticky.min.js +1 -1
- package/dist/components/tab.css +1 -1
- package/dist/components/tab.js +1 -1
- package/dist/components/tab.min.css +1 -1
- package/dist/components/tab.min.js +1 -1
- package/dist/components/table.css +1 -1
- package/dist/components/table.min.css +1 -1
- package/dist/components/text.css +1 -1
- package/dist/components/text.min.css +1 -1
- package/dist/components/toast.css +1 -1
- package/dist/components/toast.js +1 -1
- package/dist/components/toast.min.css +1 -1
- package/dist/components/toast.min.js +1 -1
- package/dist/components/transition.css +1 -1
- package/dist/components/transition.js +1 -1
- package/dist/components/transition.min.css +1 -1
- package/dist/components/transition.min.js +1 -1
- package/dist/components/visibility.js +1 -1
- package/dist/components/visibility.min.js +1 -1
- package/dist/semantic.css +49 -49
- package/dist/semantic.js +38 -32
- package/dist/semantic.min.css +1 -1
- package/dist/semantic.min.js +2 -2
- package/package.json +1 -1
- package/src/definitions/modules/calendar.js +5 -2
- package/src/definitions/modules/checkbox.js +1 -0
- package/src/definitions/modules/dropdown.js +1 -0
- package/src/definitions/modules/modal.js +2 -2
- package/src/definitions/modules/search.js +4 -3
package/dist/components/modal.js
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
/*!
|
2
|
-
* # Fomantic-UI 2.9.0-beta.
|
2
|
+
* # Fomantic-UI 2.9.0-beta.305+4585cd0 - Modal
|
3
3
|
* http://github.com/fomantic/Fomantic-UI/
|
4
4
|
*
|
5
5
|
*
|
@@ -723,7 +723,7 @@ $.fn.modal = function(parameters) {
|
|
723
723
|
keyboardShortcuts: function() {
|
724
724
|
module.verbose('Adding keyboard shortcuts');
|
725
725
|
$document
|
726
|
-
.on('
|
726
|
+
.on('keydown' + eventNamespace, module.event.keyboard)
|
727
727
|
;
|
728
728
|
}
|
729
729
|
},
|
@@ -803,7 +803,7 @@ $.fn.modal = function(parameters) {
|
|
803
803
|
keyboardShortcuts: function() {
|
804
804
|
module.verbose('Removing keyboard shortcuts');
|
805
805
|
$document
|
806
|
-
.off('
|
806
|
+
.off('keydown' + eventNamespace)
|
807
807
|
;
|
808
808
|
},
|
809
809
|
scrolling: function() {
|
@@ -1,5 +1,5 @@
|
|
1
1
|
/*
|
2
|
-
* # Fomantic UI - 2.9.0-beta.
|
2
|
+
* # Fomantic UI - 2.9.0-beta.305+4585cd0
|
3
3
|
* https://github.com/fomantic/Fomantic-UI
|
4
4
|
* http://fomantic-ui.com/
|
5
5
|
*
|
@@ -8,4 +8,4 @@
|
|
8
8
|
* http://opensource.org/licenses/MIT
|
9
9
|
*
|
10
10
|
*/
|
11
|
-
!function(R,P,K,Q){"use strict";R.isFunction=R.isFunction||function(e){return"function"==typeof e&&"number"!=typeof e.nodeType},P=void 0!==P&&P.Math==Math?P:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")(),R.fn.modal=function(T){var D,e=R(this),H=R(P),O=R(K),E=R("body"),L=e.selector||"",I=(new Date).getTime(),N=[],z=T,j="string"==typeof z,q=[].slice.call(arguments,1),B=P.requestAnimationFrame||P.mozRequestAnimationFrame||P.webkitRequestAnimationFrame||P.msRequestAnimationFrame||function(e){setTimeout(e,0)};return e.each(function(){var t,o,s,e,i,n,a,c,r,l,d,u=R.isPlainObject(T)?R.extend(!0,{},R.fn.modal.settings,T):R.extend({},R.fn.modal.settings),f=u.selector,m=u.className,h=u.namespace,g=u.fields,p=u.error,v="."+h,b="module-"+h,y=R(this),x=[P,K].indexOf(u.context)<0?R(K).find(u.context):R(u.context),k=y.find(f.closeIcon),w=this,C=y.hasClass("modal")?y.data(b):Q,S=!1,F="",M="",A={initialize:function(){var s;A.create.id(),y.hasClass("modal")||(A.create.modal(),R.isFunction(u.onHidden)||(u.onHidden=function(){A.destroy(),y.remove()})),y.addClass(u.class),""!==u.title&&y.find(f.title).html(A.helpers.escape(u.title,u.preserveHTML)).addClass(u.classTitle),""!==u.content&&y.find(f.content).html(A.helpers.escape(u.content,u.preserveHTML)).addClass(u.classContent),A.has.configActions()&&(0===(s=y.find(f.actions).addClass(u.classActions)).length?s=R("<div/>",{class:m.actions+" "+(u.classActions||"")}).appendTo(y):s.empty(),u.actions.forEach(function(e){var t=e[g.icon]?"<i "+(e[g.text]?'aria-hidden="true"':"")+' class="'+A.helpers.deQuote(e[g.icon])+' icon"></i>':"",n=A.helpers.escape(e[g.text]||"",u.preserveHTML),i=A.helpers.deQuote(e[g.class]||""),o=e[g.click]&&R.isFunction(e[g.click])?e[g.click]:function(){};s.append(R("<button/>",{html:t+n,"aria-label":(e[g.text]||e[g.icon]||"").replace(/<[^>]+(>|$)/g,""),class:m.button+" "+i,click:function(){var e=R(this);e.is(f.approve)||e.is(f.deny)||!1===o.call(w,y)||A.hide()}}))})),A.cache={},A.verbose("Initializing dimmer",x),A.create.dimmer(),u.allowMultiple&&A.create.innerDimmer(),u.centered||y.addClass("top aligned"),A.refreshModals(),A.refreshInputs(),A.bind.events(),A.observeChanges(),A.instantiate(),u.autoShow&&A.show()},instantiate:function(){A.verbose("Storing instance of modal"),C=A,y.data(b,C)},create:{modal:function(){var e;y=R("<div/>",{class:m.modal,role:"dialog","aria-modal":!0}),u.closeIcon&&(k=R("<i/>",{class:m.close,role:"button",tabindex:0,"aria-label":u.text.close}),y.append(k)),""!==u.title&&(e="_"+A.get.id()+"title",y.attr("aria-labelledby",e),R("<div/>",{class:m.title,id:e}).appendTo(y)),""!==u.content&&(e="_"+A.get.id()+"desc",y.attr("aria-describedby",e),R("<div/>",{class:m.content,id:e}).appendTo(y)),A.has.configActions()&&R("<div/>",{class:m.actions}).appendTo(y),x.append(y)},dimmer:function(){var e={debug:u.debug,dimmerName:"modals"},e=R.extend(!0,e,u.dimmerSettings);R.fn.dimmer===Q?A.error(p.dimmer):(A.debug("Creating dimmer"),i=x.dimmer(e),u.detachable?(A.verbose("Modal is detachable, moving content into dimmer"),i.dimmer("add content",y)):A.set.undetached(),n=i.dimmer("get dimmer"))},id:function(){l=(Math.random().toString(16)+"000000000").slice(2,10),r="."+l,A.verbose("Creating unique id for element",l)},innerDimmer:function(){0===y.find(f.dimmer).length&&R("<div/>",{class:m.innerDimmer}).prependTo(y)}},destroy:function(){d&&d.disconnect(),A.verbose("Destroying previous modal"),y.removeData(b).off(v),H.off(r),n.off(r),k.off(r),t&&t.off(r),x.dimmer("destroy")},observeChanges:function(){"MutationObserver"in P&&((d=new MutationObserver(function(e){u.observeChanges&&(A.debug("DOM tree modified, refreshing"),A.refresh()),A.refreshInputs()})).observe(w,{childList:!0,subtree:!0}),A.debug("Setting up mutation observer",d))},refresh:function(){A.remove.scrolling(),A.cacheSizes(),A.can.useFlex()||A.set.modalOffset(),A.set.screenHeight(),A.set.type()},refreshModals:function(){s=y.siblings(f.modal),o=s.add(y)},refreshInputs:function(){t&&t.off("keydown"+r),(t=y.find("[tabindex], :input").filter(":visible").filter(function(){return 0===R(this).closest(".disabled").length})).first().on("keydown"+r,A.event.inputKeyDown.first),t.last().on("keydown"+r,A.event.inputKeyDown.last)},attachEvents:function(e,t){var n=R(e);t=R.isFunction(A[t])?A[t]:A.toggle,0<n.length?(A.debug("Attaching modal events to element",e,t),n.off(v).on("click"+v,t)):A.error(p.notFound,e)},bind:{events:function(){A.verbose("Attaching events"),y.on("click"+v,f.close,A.event.close).on("click"+v,f.approve,A.event.approve).on("click"+v,f.deny,A.event.deny),k.on("keyup"+r,A.event.closeKeyUp),H.on("resize"+r,A.event.resize)},scrollLock:function(){i.get(0).addEventListener("touchmove",A.event.preventScroll,{passive:!1})}},unbind:{scrollLock:function(){i.get(0).removeEventListener("touchmove",A.event.preventScroll,{passive:!1})}},get:{id:function(){return l},element:function(){return y},settings:function(){return u}},event:{approve:function(){S||!1===u.onApprove.call(w,R(this))?A.verbose("Approve callback returned false cancelling hide"):(S=!0,A.hide(function(){S=!1}))},preventScroll:function(e){-1!==e.target.className.indexOf("dimmer")&&e.preventDefault()},deny:function(){S||!1===u.onDeny.call(w,R(this))?A.verbose("Deny callback returned false cancelling hide"):(S=!0,A.hide(function(){S=!1}))},close:function(){A.hide()},closeKeyUp:function(e){e=e.which;e!==u.keys.enter&&e!==u.keys.space||!y.hasClass(m.front)||A.hide()},inputKeyDown:{first:function(e){e.which===u.keys.tab&&e.shiftKey&&(t.last().focus(),e.preventDefault())},last:function(e){e.which!==u.keys.tab||e.shiftKey||(t.first().focus(),e.preventDefault())}},mousedown:function(e){var t=R(e.target),n=A.is.rtl();(a=0<t.closest(f.modal).length)&&A.verbose("Mouse down event registered inside the modal"),(c=A.is.scrolling()&&(!n&&R(P).outerWidth()-u.scrollbarWidth<=e.clientX||n&&u.scrollbarWidth>=e.clientX))&&A.verbose("Mouse down event registered inside the scrollbar")},mouseup:function(e){if(u.closable)if(a)A.debug("Dimmer clicked but mouse down was initially registered inside the modal");else if(c)A.debug("Dimmer clicked but mouse down was initially registered inside the scrollbar");else{var t=0<R(e.target).closest(f.modal).length,e=R.contains(K.documentElement,e.target);if(!t&&e&&A.is.active()&&y.hasClass(m.front)){if(A.debug("Dimmer clicked, hiding all modals"),u.allowMultiple){if(!A.hideAll())return}else if(!A.hide())return;A.remove.clickaway()}}else A.verbose("Dimmer clicked but closable setting is disabled")},debounce:function(e,t){clearTimeout(A.timer),A.timer=setTimeout(e,t)},keyboard:function(e){e.which===u.keys.escape&&(u.closable?(A.debug("Escape key pressed hiding modal"),y.hasClass(m.front)&&A.hide()):A.debug("Escape key pressed, but closable is set to false"),e.preventDefault())},resize:function(){i.dimmer("is active")&&(A.is.animating()||A.is.active())&&B(A.refresh)}},toggle:function(){A.is.active()||A.is.animating()?A.hide():A.show()},show:function(e){e=R.isFunction(e)?e:function(){},A.refreshModals(),A.set.dimmerSettings(),A.set.dimmerStyles(),A.showModal(e)},hide:function(e){return e=R.isFunction(e)?e:function(){},A.refreshModals(),A.hideModal(e)},showModal:function(e){e=R.isFunction(e)?e:function(){},A.is.animating()||!A.is.active()?!1===u.onShow.call(w)?A.verbose("Show callback returned false cancelling show"):(A.showDimmer(),A.cacheSizes(),A.set.bodyMargin(),A.can.useFlex()?A.remove.legacy():(A.set.legacy(),A.set.modalOffset(),A.debug("Using non-flex legacy modal positioning.")),A.set.screenHeight(),A.set.type(),A.set.clickaway(),!u.allowMultiple&&A.others.active()?A.hideOthers(A.showModal):(S=!1,u.allowMultiple&&(A.others.active()&&s.filter("."+m.active).find(f.dimmer).addClass("active"),u.detachable&&y.detach().appendTo(n)),u.transition&&R.fn.transition!==Q&&y.transition("is supported")?(A.debug("Showing modal with css animations"),y.transition({debug:u.debug,animation:(u.transition.showMethod||u.transition)+" in",queue:u.queue,duration:u.transition.showDuration||u.duration,useFailSafe:!0,onComplete:function(){u.onVisible.apply(w),u.keyboardShortcuts&&A.add.keyboardShortcuts(),A.save.focus(),A.set.active(),u.autofocus&&A.set.autofocus(),e()}})):A.error(p.noTransition))):A.debug("Modal is already visible")},hideModal:function(e,t,n){var i=s.filter("."+m.active).last();if(e=R.isFunction(e)?e:function(){},!1===u.onHide.call(w,R(this)))return A.verbose("Hide callback returned false cancelling hide"),S=!1;(A.is.animating()||A.is.active())&&(A.debug("Hiding modal"),u.transition&&R.fn.transition!==Q&&y.transition("is supported")?(A.remove.active(),y.transition({debug:u.debug,animation:(u.transition.hideMethod||u.transition)+" out",queue:u.queue,duration:u.transition.hideDuration||u.duration,useFailSafe:!0,onStart:function(){A.others.active()||A.others.animating()||t||A.hideDimmer(),u.keyboardShortcuts&&!A.others.active()&&A.remove.keyboardShortcuts()},onComplete:function(){A.unbind.scrollLock(),u.allowMultiple&&(i.addClass(m.front),y.removeClass(m.front),(n?o:i).find(f.dimmer).removeClass("active")),R.isFunction(u.onHidden)&&u.onHidden.call(w),A.remove.dimmerStyles(),A.restore.focus(),e()}})):A.error(p.noTransition))},showDimmer:function(){i.dimmer("is animating")||!i.dimmer("is active")?(A.save.bodyMargin(),A.debug("Showing dimmer"),i.dimmer("show")):A.debug("Dimmer already visible")},hideDimmer:function(){i.dimmer("is animating")||i.dimmer("is active")?(A.unbind.scrollLock(),i.dimmer("hide",function(){A.restore.bodyMargin(),A.remove.clickaway(),A.remove.screenHeight()})):A.debug("Dimmer is not visible cannot hide")},hideAll:function(n){var i,e=o.filter("."+m.active+", ."+m.animating);if(n=R.isFunction(n)?n:function(){},0<e.length)return A.debug("Hiding all visible modals"),i=!0,R(e.get().reverse()).each(function(e,t){i=i&&R(t).modal("hide modal",n,!1,!0)}),i&&A.hideDimmer(),i},hideOthers:function(e){var t=s.filter("."+m.active+", ."+m.animating);e=R.isFunction(e)?e:function(){},0<t.length&&(A.debug("Hiding other modals",s),t.modal("hide modal",e,!0))},others:{active:function(){return 0<s.filter("."+m.active).length},animating:function(){return 0<s.filter("."+m.animating).length}},add:{keyboardShortcuts:function(){A.verbose("Adding keyboard shortcuts"),O.on("keyup"+v,A.event.keyboard)}},save:{focus:function(){0<R(K.activeElement).closest(y).length||(e=R(K.activeElement).blur())},bodyMargin:function(){F=E.css("margin-"+(A.can.leftBodyScrollbar()?"left":"right"));var e=parseInt(F.replace(/[^\d.]/g,"")),t=P.innerWidth-K.documentElement.clientWidth;M=e+t}},restore:{focus:function(){e&&0<e.length&&u.restoreFocus&&e.focus()},bodyMargin:function(){var n=A.can.leftBodyScrollbar()?"left":"right";E.css("margin-"+n,F),E.find(f.bodyFixed.replace("right",n)).each(function(){var e=R(this),t="fixed"===e.css("position")?"padding-"+n:n;e.css(t,"")})}},remove:{active:function(){y.removeClass(m.active)},legacy:function(){y.removeClass(m.legacy)},clickaway:function(){u.detachable||y.off("mousedown"+r),n.off("mousedown"+r),n.off("mouseup"+r)},dimmerStyles:function(){n.removeClass(m.inverted),i.removeClass(m.blurring)},bodyStyle:function(){""===E.attr("style")&&(A.verbose("Removing style attribute"),E.removeAttr("style"))},screenHeight:function(){A.debug("Removing page height"),E.css("height","")},keyboardShortcuts:function(){A.verbose("Removing keyboard shortcuts"),O.off("keyup"+v)},scrolling:function(){i.removeClass(m.scrolling),y.removeClass(m.scrolling)}},cacheSizes:function(){y.addClass(m.loading);var e=y.prop("scrollHeight"),t=y.outerWidth(),n=y.outerHeight();A.cache.pageHeight!==Q&&0===n||(R.extend(A.cache,{pageHeight:R(K).outerHeight(),width:t,height:n+u.offset,scrollHeight:e+u.offset,contextHeight:("body"==u.context?R(P):i).height()}),A.cache.topOffset=-A.cache.height/2),y.removeClass(m.loading),A.debug("Caching modal and container sizes",A.cache)},helpers:{deQuote:function(e){return String(e).replace(/"/g,"")},escape:function(e,t){if(t)return e;var n={"<":"<",">":">",'"':""","'":"'","`":"`"};return/[&<>"'`]/.test(e)?(e=e.replace(/&(?![a-z0-9#]{1,6};)/,"&")).replace(/[<>"'`]/g,function(e){return n[e]}):e}},can:{leftBodyScrollbar:function(){return A.cache.leftBodyScrollbar===Q&&(A.cache.leftBodyScrollbar=A.is.rtl()&&(A.is.iframe&&!A.is.firefox()||A.is.safari()||A.is.edge()||A.is.ie())),A.cache.leftBodyScrollbar},useFlex:function(){return"auto"===u.useFlex?u.detachable&&!A.is.ie():(u.useFlex&&A.is.ie()?A.debug("useFlex true is not supported in IE"):u.useFlex&&!u.detachable&&A.debug("useFlex true in combination with detachable false is not supported"),u.useFlex)},fit:function(){var e=A.cache.contextHeight,t=A.cache.contextHeight/2,n=A.cache.topOffset,i=A.cache.scrollHeight,o=A.cache.height,s=u.padding;return o<i?t+n+i+s<e:o+2*s<e}},has:{configActions:function(){return Array.isArray(u.actions)&&0<u.actions.length}},is:{active:function(){return y.hasClass(m.active)},ie:function(){var e,t;return A.cache.isIE===Q&&(e=!P.ActiveXObject&&"ActiveXObject"in P,t="ActiveXObject"in P,A.cache.isIE=e||t),A.cache.isIE},animating:function(){return y.transition("is supported")?y.transition("is animating"):y.is(":visible")},scrolling:function(){return i.hasClass(m.scrolling)},modernBrowser:function(){return!(P.ActiveXObject||"ActiveXObject"in P)},rtl:function(){return A.cache.isRTL===Q&&(A.cache.isRTL="rtl"===E.attr("dir")||"rtl"===E.css("direction")),A.cache.isRTL},safari:function(){return A.cache.isSafari===Q&&(A.cache.isSafari=/constructor/i.test(P.HTMLElement)||!!P.ApplePaySession),A.cache.isSafari},edge:function(){return A.cache.isEdge===Q&&(A.cache.isEdge=!!P.setImmediate&&!A.is.ie()),A.cache.isEdge},firefox:function(){return A.cache.isFirefox===Q&&(A.cache.isFirefox=!!P.InstallTrigger),A.cache.isFirefox},iframe:function(){return!(self===top)}},set:{autofocus:function(){var e=t.filter("[autofocus]"),e=(0<e.length?e:1<t.length?t.filter(":not(i.close)"):t).first();0<e.length&&e.focus()},bodyMargin:function(){var n=A.can.leftBodyScrollbar()?"left":"right";(u.detachable||A.can.fit())&&E.css("margin-"+n,M+"px"),E.find(f.bodyFixed.replace("right",n)).each(function(){var e=R(this),t="fixed"===e.css("position")?"padding-"+n:n;e.css(t,"calc("+e.css(t)+" + "+M+"px)")})},clickaway:function(){u.detachable||y.on("mousedown"+r,A.event.mousedown),n.on("mousedown"+r,A.event.mousedown),n.on("mouseup"+r,A.event.mouseup)},dimmerSettings:function(){var e;R.fn.dimmer===Q?A.error(p.dimmer):(e={debug:u.debug,dimmerName:"modals",closable:"auto",useFlex:A.can.useFlex(),duration:{show:u.transition.showDuration||u.duration,hide:u.transition.hideDuration||u.duration}},e=R.extend(!0,e,u.dimmerSettings),u.inverted&&(e.variation=e.variation!==Q?e.variation+" inverted":"inverted"),x.dimmer("setting",e))},dimmerStyles:function(){u.inverted?n.addClass(m.inverted):n.removeClass(m.inverted),u.blurring?i.addClass(m.blurring):i.removeClass(m.blurring)},modalOffset:function(){var e;u.detachable?y.css({marginTop:!y.hasClass("aligned")&&A.can.fit()?-A.cache.height/2:u.padding/2,marginLeft:-A.cache.width/2}):(e=A.can.fit(),y.css({top:!y.hasClass("aligned")&&e?R(K).scrollTop()+(A.cache.contextHeight-A.cache.height)/2:!e||y.hasClass("top")?R(K).scrollTop()+u.padding:R(K).scrollTop()+(A.cache.contextHeight-A.cache.height-u.padding),marginLeft:-A.cache.width/2})),A.verbose("Setting modal offset for legacy mode")},screenHeight:function(){A.can.fit()?E.css("height",""):y.hasClass("bottom")||(A.debug("Modal is taller than page content, resizing page height"),E.css("height",A.cache.height+2*u.padding))},active:function(){y.addClass(m.active+" "+m.front),s.filter("."+m.active).removeClass(m.front)},scrolling:function(){i.addClass(m.scrolling),y.addClass(m.scrolling),A.unbind.scrollLock()},legacy:function(){y.addClass(m.legacy)},type:function(){A.can.fit()?(A.verbose("Modal fits on screen"),A.others.active()||A.others.animating()||(A.remove.scrolling(),A.bind.scrollLock())):y.hasClass("bottom")?A.verbose("Bottom aligned modal not fitting on screen is unsupported for scrolling"):(A.verbose("Modal cannot fit on screen setting to scrolling"),A.set.scrolling())},undetached:function(){i.addClass(m.undetached)}},setting:function(e,t){if(A.debug("Changing setting",e,t),R.isPlainObject(e))R.extend(!0,u,e);else{if(t===Q)return u[e];R.isPlainObject(u[e])?R.extend(!0,u[e],t):u[e]=t}},internal:function(e,t){if(R.isPlainObject(e))R.extend(!0,A,e);else{if(t===Q)return A[e];A[e]=t}},debug:function(){!u.silent&&u.debug&&(u.performance?A.performance.log(arguments):(A.debug=Function.prototype.bind.call(console.info,console,u.name+":"),A.debug.apply(console,arguments)))},verbose:function(){!u.silent&&u.verbose&&u.debug&&(u.performance?A.performance.log(arguments):(A.verbose=Function.prototype.bind.call(console.info,console,u.name+":"),A.verbose.apply(console,arguments)))},error:function(){u.silent||(A.error=Function.prototype.bind.call(console.error,console,u.name+":"),A.error.apply(console,arguments))},performance:{log:function(e){var t,n;u.performance&&(n=(t=(new Date).getTime())-(I||t),I=t,N.push({Name:e[0],Arguments:[].slice.call(e,1)||"",Element:w,"Execution Time":n})),clearTimeout(A.performance.timer),A.performance.timer=setTimeout(A.performance.display,500)},display:function(){var e=u.name+":",n=0;I=!1,clearTimeout(A.performance.timer),R.each(N,function(e,t){n+=t["Execution Time"]}),e+=" "+n+"ms",L&&(e+=" '"+L+"'"),(console.group!==Q||console.table!==Q)&&0<N.length&&(console.groupCollapsed(e),console.table?console.table(N):R.each(N,function(e,t){console.log(t.Name+": "+t["Execution Time"]+"ms")}),console.groupEnd()),N=[]}},invoke:function(i,e,t){var o,s,n,a=C;return e=e||q,t=w||t,"string"==typeof i&&a!==Q&&(i=i.split(/[\. ]/),o=i.length-1,R.each(i,function(e,t){var n=e!=o?t+i[e+1].charAt(0).toUpperCase()+i[e+1].slice(1):i;if(R.isPlainObject(a[n])&&e!=o)a=a[n];else{if(a[n]!==Q)return s=a[n],!1;{if(!R.isPlainObject(a[t])||e==o)return a[t]!==Q&&(s=a[t]),!1;a=a[t]}}})),R.isFunction(s)?n=s.apply(t,e):s!==Q&&(n=s),Array.isArray(D)?D.push(n):D!==Q?D=[D,n]:n!==Q&&(D=n),s}};j?(C===Q&&(R.isFunction(u.templates[z])&&(u.autoShow=!0,u.className.modal=u.className.template,u=R.extend(!0,{},u,u.templates[z].apply(A,q)),m=u.className,u.namespace,g=u.fields,p=u.error),A.initialize()),R.isFunction(u.templates[z])||A.invoke(z)):(C!==Q&&C.invoke("destroy"),A.initialize(),D=y)}),D!==Q?D:this},R.fn.modal.settings={name:"Modal",namespace:"modal",useFlex:"auto",offset:0,silent:!1,debug:!1,verbose:!1,performance:!0,observeChanges:!1,allowMultiple:!1,detachable:!0,closable:!0,autofocus:!0,restoreFocus:!0,autoShow:!1,inverted:!1,blurring:!1,centered:!0,dimmerSettings:{closable:!1,useCSS:!0},keyboardShortcuts:!0,context:"body",queue:!1,duration:500,transition:"scale",padding:50,scrollbarWidth:10,title:"",content:"",class:"",classTitle:"",classContent:"",classActions:"",closeIcon:!1,actions:!1,preserveHTML:!0,fields:{class:"class",text:"text",icon:"icon",click:"click"},onShow:function(){},onVisible:function(){},onHide:function(){return!0},onHidden:!1,onApprove:function(){return!0},onDeny:function(){return!0},keys:{space:32,enter:13,escape:27,tab:9},selector:{title:"> .header",content:"> .content",actions:"> .actions",close:"> .close",closeIcon:"> .close",approve:".actions .positive, .actions .approve, .actions .ok",deny:".actions .negative, .actions .deny, .actions .cancel",modal:".ui.modal",dimmer:"> .ui.dimmer",bodyFixed:"> .ui.fixed.menu, > .ui.right.toast-container, > .ui.right.sidebar, > .ui.fixed.nag, > .ui.fixed.nag > .close",prompt:".ui.input > input"},error:{dimmer:"UI Dimmer, a required component is not included in this page",method:"The method you called is not defined.",notFound:"The element you specified could not be found"},className:{active:"active",animating:"animating",blurring:"blurring",inverted:"inverted",legacy:"legacy",loading:"loading",scrolling:"scrolling",undetached:"undetached",front:"front",close:"close icon",button:"ui button",modal:"ui modal",title:"header",content:"content",actions:"actions",template:"ui tiny modal",ok:"positive",cancel:"negative",prompt:"ui fluid input",innerDimmer:"ui inverted dimmer"},text:{ok:"Ok",cancel:"Cancel",close:"Close"}},R.fn.modal.settings.templates={getArguments:function(e){e=[].slice.call(e);return R.isPlainObject(e[0])?R.extend({handler:function(){},content:"",title:""},e[0]):(R.isFunction(e[e.length-1])||e.push(function(){}),{handler:e.pop(),content:e.pop()||"",title:e.pop()||""})},alert:function(){var e=this.get.settings(),t=e.templates.getArguments(arguments),n=t.handler;return{title:t.title,content:t.content,onApprove:n,actions:[{text:e.text.ok,class:e.className.ok,click:n}]}},confirm:function(){function e(){i.handler(!0)}function t(){i.handler(!1)}var n=this.get.settings(),i=n.templates.getArguments(arguments);return{title:i.title,content:i.content,onApprove:e,onDeny:t,actions:[{text:n.text.ok,class:n.className.ok,click:e},{text:n.text.cancel,class:n.className.cancel,click:t}]}},prompt:function(){function e(){var e=n.get.settings(),e=n.get.element().find(e.selector.prompt)[0];o.handler(R(e).val())}function t(){o.handler(null)}var n=this,i=this.get.settings(),o=i.templates.getArguments(arguments);return 0===R(R.parseHTML(o.content)).filter(".ui.input").length&&(o.content+='<p><div class="'+this.helpers.deQuote(i.className.prompt)+'"><input placeholder="'+this.helpers.deQuote(o.placeholder||"")+'" type="text" value="'+this.helpers.deQuote(o.defaultValue||"")+'"></div></p>'),{title:o.title,content:o.content,onApprove:e,onDeny:t,actions:[{text:i.text.ok,class:i.className.ok,click:e},{text:i.text.cancel,class:i.className.cancel,click:t}]}}}}(jQuery,window,document);
|
11
|
+
!function(R,P,K,Q){"use strict";R.isFunction=R.isFunction||function(e){return"function"==typeof e&&"number"!=typeof e.nodeType},P=void 0!==P&&P.Math==Math?P:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")(),R.fn.modal=function(T){var D,e=R(this),H=R(P),O=R(K),E=R("body"),L=e.selector||"",I=(new Date).getTime(),N=[],z=T,j="string"==typeof z,q=[].slice.call(arguments,1),B=P.requestAnimationFrame||P.mozRequestAnimationFrame||P.webkitRequestAnimationFrame||P.msRequestAnimationFrame||function(e){setTimeout(e,0)};return e.each(function(){var t,o,s,e,i,n,a,c,r,l,d,u=R.isPlainObject(T)?R.extend(!0,{},R.fn.modal.settings,T):R.extend({},R.fn.modal.settings),f=u.selector,m=u.className,h=u.namespace,g=u.fields,p=u.error,v="."+h,b="module-"+h,y=R(this),x=[P,K].indexOf(u.context)<0?R(K).find(u.context):R(u.context),k=y.find(f.closeIcon),w=this,C=y.hasClass("modal")?y.data(b):Q,S=!1,F="",M="",A={initialize:function(){var s;A.create.id(),y.hasClass("modal")||(A.create.modal(),R.isFunction(u.onHidden)||(u.onHidden=function(){A.destroy(),y.remove()})),y.addClass(u.class),""!==u.title&&y.find(f.title).html(A.helpers.escape(u.title,u.preserveHTML)).addClass(u.classTitle),""!==u.content&&y.find(f.content).html(A.helpers.escape(u.content,u.preserveHTML)).addClass(u.classContent),A.has.configActions()&&(0===(s=y.find(f.actions).addClass(u.classActions)).length?s=R("<div/>",{class:m.actions+" "+(u.classActions||"")}).appendTo(y):s.empty(),u.actions.forEach(function(e){var t=e[g.icon]?"<i "+(e[g.text]?'aria-hidden="true"':"")+' class="'+A.helpers.deQuote(e[g.icon])+' icon"></i>':"",n=A.helpers.escape(e[g.text]||"",u.preserveHTML),i=A.helpers.deQuote(e[g.class]||""),o=e[g.click]&&R.isFunction(e[g.click])?e[g.click]:function(){};s.append(R("<button/>",{html:t+n,"aria-label":(e[g.text]||e[g.icon]||"").replace(/<[^>]+(>|$)/g,""),class:m.button+" "+i,click:function(){var e=R(this);e.is(f.approve)||e.is(f.deny)||!1===o.call(w,y)||A.hide()}}))})),A.cache={},A.verbose("Initializing dimmer",x),A.create.dimmer(),u.allowMultiple&&A.create.innerDimmer(),u.centered||y.addClass("top aligned"),A.refreshModals(),A.refreshInputs(),A.bind.events(),A.observeChanges(),A.instantiate(),u.autoShow&&A.show()},instantiate:function(){A.verbose("Storing instance of modal"),C=A,y.data(b,C)},create:{modal:function(){var e;y=R("<div/>",{class:m.modal,role:"dialog","aria-modal":!0}),u.closeIcon&&(k=R("<i/>",{class:m.close,role:"button",tabindex:0,"aria-label":u.text.close}),y.append(k)),""!==u.title&&(e="_"+A.get.id()+"title",y.attr("aria-labelledby",e),R("<div/>",{class:m.title,id:e}).appendTo(y)),""!==u.content&&(e="_"+A.get.id()+"desc",y.attr("aria-describedby",e),R("<div/>",{class:m.content,id:e}).appendTo(y)),A.has.configActions()&&R("<div/>",{class:m.actions}).appendTo(y),x.append(y)},dimmer:function(){var e={debug:u.debug,dimmerName:"modals"},e=R.extend(!0,e,u.dimmerSettings);R.fn.dimmer===Q?A.error(p.dimmer):(A.debug("Creating dimmer"),i=x.dimmer(e),u.detachable?(A.verbose("Modal is detachable, moving content into dimmer"),i.dimmer("add content",y)):A.set.undetached(),n=i.dimmer("get dimmer"))},id:function(){l=(Math.random().toString(16)+"000000000").slice(2,10),r="."+l,A.verbose("Creating unique id for element",l)},innerDimmer:function(){0===y.find(f.dimmer).length&&R("<div/>",{class:m.innerDimmer}).prependTo(y)}},destroy:function(){d&&d.disconnect(),A.verbose("Destroying previous modal"),y.removeData(b).off(v),H.off(r),n.off(r),k.off(r),t&&t.off(r),x.dimmer("destroy")},observeChanges:function(){"MutationObserver"in P&&((d=new MutationObserver(function(e){u.observeChanges&&(A.debug("DOM tree modified, refreshing"),A.refresh()),A.refreshInputs()})).observe(w,{childList:!0,subtree:!0}),A.debug("Setting up mutation observer",d))},refresh:function(){A.remove.scrolling(),A.cacheSizes(),A.can.useFlex()||A.set.modalOffset(),A.set.screenHeight(),A.set.type()},refreshModals:function(){s=y.siblings(f.modal),o=s.add(y)},refreshInputs:function(){t&&t.off("keydown"+r),(t=y.find("[tabindex], :input").filter(":visible").filter(function(){return 0===R(this).closest(".disabled").length})).first().on("keydown"+r,A.event.inputKeyDown.first),t.last().on("keydown"+r,A.event.inputKeyDown.last)},attachEvents:function(e,t){var n=R(e);t=R.isFunction(A[t])?A[t]:A.toggle,0<n.length?(A.debug("Attaching modal events to element",e,t),n.off(v).on("click"+v,t)):A.error(p.notFound,e)},bind:{events:function(){A.verbose("Attaching events"),y.on("click"+v,f.close,A.event.close).on("click"+v,f.approve,A.event.approve).on("click"+v,f.deny,A.event.deny),k.on("keyup"+r,A.event.closeKeyUp),H.on("resize"+r,A.event.resize)},scrollLock:function(){i.get(0).addEventListener("touchmove",A.event.preventScroll,{passive:!1})}},unbind:{scrollLock:function(){i.get(0).removeEventListener("touchmove",A.event.preventScroll,{passive:!1})}},get:{id:function(){return l},element:function(){return y},settings:function(){return u}},event:{approve:function(){S||!1===u.onApprove.call(w,R(this))?A.verbose("Approve callback returned false cancelling hide"):(S=!0,A.hide(function(){S=!1}))},preventScroll:function(e){-1!==e.target.className.indexOf("dimmer")&&e.preventDefault()},deny:function(){S||!1===u.onDeny.call(w,R(this))?A.verbose("Deny callback returned false cancelling hide"):(S=!0,A.hide(function(){S=!1}))},close:function(){A.hide()},closeKeyUp:function(e){e=e.which;e!==u.keys.enter&&e!==u.keys.space||!y.hasClass(m.front)||A.hide()},inputKeyDown:{first:function(e){e.which===u.keys.tab&&e.shiftKey&&(t.last().focus(),e.preventDefault())},last:function(e){e.which!==u.keys.tab||e.shiftKey||(t.first().focus(),e.preventDefault())}},mousedown:function(e){var t=R(e.target),n=A.is.rtl();(a=0<t.closest(f.modal).length)&&A.verbose("Mouse down event registered inside the modal"),(c=A.is.scrolling()&&(!n&&R(P).outerWidth()-u.scrollbarWidth<=e.clientX||n&&u.scrollbarWidth>=e.clientX))&&A.verbose("Mouse down event registered inside the scrollbar")},mouseup:function(e){if(u.closable)if(a)A.debug("Dimmer clicked but mouse down was initially registered inside the modal");else if(c)A.debug("Dimmer clicked but mouse down was initially registered inside the scrollbar");else{var t=0<R(e.target).closest(f.modal).length,e=R.contains(K.documentElement,e.target);if(!t&&e&&A.is.active()&&y.hasClass(m.front)){if(A.debug("Dimmer clicked, hiding all modals"),u.allowMultiple){if(!A.hideAll())return}else if(!A.hide())return;A.remove.clickaway()}}else A.verbose("Dimmer clicked but closable setting is disabled")},debounce:function(e,t){clearTimeout(A.timer),A.timer=setTimeout(e,t)},keyboard:function(e){e.which===u.keys.escape&&(u.closable?(A.debug("Escape key pressed hiding modal"),y.hasClass(m.front)&&A.hide()):A.debug("Escape key pressed, but closable is set to false"),e.preventDefault())},resize:function(){i.dimmer("is active")&&(A.is.animating()||A.is.active())&&B(A.refresh)}},toggle:function(){A.is.active()||A.is.animating()?A.hide():A.show()},show:function(e){e=R.isFunction(e)?e:function(){},A.refreshModals(),A.set.dimmerSettings(),A.set.dimmerStyles(),A.showModal(e)},hide:function(e){return e=R.isFunction(e)?e:function(){},A.refreshModals(),A.hideModal(e)},showModal:function(e){e=R.isFunction(e)?e:function(){},A.is.animating()||!A.is.active()?!1===u.onShow.call(w)?A.verbose("Show callback returned false cancelling show"):(A.showDimmer(),A.cacheSizes(),A.set.bodyMargin(),A.can.useFlex()?A.remove.legacy():(A.set.legacy(),A.set.modalOffset(),A.debug("Using non-flex legacy modal positioning.")),A.set.screenHeight(),A.set.type(),A.set.clickaway(),!u.allowMultiple&&A.others.active()?A.hideOthers(A.showModal):(S=!1,u.allowMultiple&&(A.others.active()&&s.filter("."+m.active).find(f.dimmer).addClass("active"),u.detachable&&y.detach().appendTo(n)),u.transition&&R.fn.transition!==Q&&y.transition("is supported")?(A.debug("Showing modal with css animations"),y.transition({debug:u.debug,animation:(u.transition.showMethod||u.transition)+" in",queue:u.queue,duration:u.transition.showDuration||u.duration,useFailSafe:!0,onComplete:function(){u.onVisible.apply(w),u.keyboardShortcuts&&A.add.keyboardShortcuts(),A.save.focus(),A.set.active(),u.autofocus&&A.set.autofocus(),e()}})):A.error(p.noTransition))):A.debug("Modal is already visible")},hideModal:function(e,t,n){var i=s.filter("."+m.active).last();if(e=R.isFunction(e)?e:function(){},!1===u.onHide.call(w,R(this)))return A.verbose("Hide callback returned false cancelling hide"),S=!1;(A.is.animating()||A.is.active())&&(A.debug("Hiding modal"),u.transition&&R.fn.transition!==Q&&y.transition("is supported")?(A.remove.active(),y.transition({debug:u.debug,animation:(u.transition.hideMethod||u.transition)+" out",queue:u.queue,duration:u.transition.hideDuration||u.duration,useFailSafe:!0,onStart:function(){A.others.active()||A.others.animating()||t||A.hideDimmer(),u.keyboardShortcuts&&!A.others.active()&&A.remove.keyboardShortcuts()},onComplete:function(){A.unbind.scrollLock(),u.allowMultiple&&(i.addClass(m.front),y.removeClass(m.front),(n?o:i).find(f.dimmer).removeClass("active")),R.isFunction(u.onHidden)&&u.onHidden.call(w),A.remove.dimmerStyles(),A.restore.focus(),e()}})):A.error(p.noTransition))},showDimmer:function(){i.dimmer("is animating")||!i.dimmer("is active")?(A.save.bodyMargin(),A.debug("Showing dimmer"),i.dimmer("show")):A.debug("Dimmer already visible")},hideDimmer:function(){i.dimmer("is animating")||i.dimmer("is active")?(A.unbind.scrollLock(),i.dimmer("hide",function(){A.restore.bodyMargin(),A.remove.clickaway(),A.remove.screenHeight()})):A.debug("Dimmer is not visible cannot hide")},hideAll:function(n){var i,e=o.filter("."+m.active+", ."+m.animating);if(n=R.isFunction(n)?n:function(){},0<e.length)return A.debug("Hiding all visible modals"),i=!0,R(e.get().reverse()).each(function(e,t){i=i&&R(t).modal("hide modal",n,!1,!0)}),i&&A.hideDimmer(),i},hideOthers:function(e){var t=s.filter("."+m.active+", ."+m.animating);e=R.isFunction(e)?e:function(){},0<t.length&&(A.debug("Hiding other modals",s),t.modal("hide modal",e,!0))},others:{active:function(){return 0<s.filter("."+m.active).length},animating:function(){return 0<s.filter("."+m.animating).length}},add:{keyboardShortcuts:function(){A.verbose("Adding keyboard shortcuts"),O.on("keydown"+v,A.event.keyboard)}},save:{focus:function(){0<R(K.activeElement).closest(y).length||(e=R(K.activeElement).blur())},bodyMargin:function(){F=E.css("margin-"+(A.can.leftBodyScrollbar()?"left":"right"));var e=parseInt(F.replace(/[^\d.]/g,"")),t=P.innerWidth-K.documentElement.clientWidth;M=e+t}},restore:{focus:function(){e&&0<e.length&&u.restoreFocus&&e.focus()},bodyMargin:function(){var n=A.can.leftBodyScrollbar()?"left":"right";E.css("margin-"+n,F),E.find(f.bodyFixed.replace("right",n)).each(function(){var e=R(this),t="fixed"===e.css("position")?"padding-"+n:n;e.css(t,"")})}},remove:{active:function(){y.removeClass(m.active)},legacy:function(){y.removeClass(m.legacy)},clickaway:function(){u.detachable||y.off("mousedown"+r),n.off("mousedown"+r),n.off("mouseup"+r)},dimmerStyles:function(){n.removeClass(m.inverted),i.removeClass(m.blurring)},bodyStyle:function(){""===E.attr("style")&&(A.verbose("Removing style attribute"),E.removeAttr("style"))},screenHeight:function(){A.debug("Removing page height"),E.css("height","")},keyboardShortcuts:function(){A.verbose("Removing keyboard shortcuts"),O.off("keydown"+v)},scrolling:function(){i.removeClass(m.scrolling),y.removeClass(m.scrolling)}},cacheSizes:function(){y.addClass(m.loading);var e=y.prop("scrollHeight"),t=y.outerWidth(),n=y.outerHeight();A.cache.pageHeight!==Q&&0===n||(R.extend(A.cache,{pageHeight:R(K).outerHeight(),width:t,height:n+u.offset,scrollHeight:e+u.offset,contextHeight:("body"==u.context?R(P):i).height()}),A.cache.topOffset=-A.cache.height/2),y.removeClass(m.loading),A.debug("Caching modal and container sizes",A.cache)},helpers:{deQuote:function(e){return String(e).replace(/"/g,"")},escape:function(e,t){if(t)return e;var n={"<":"<",">":">",'"':""","'":"'","`":"`"};return/[&<>"'`]/.test(e)?(e=e.replace(/&(?![a-z0-9#]{1,6};)/,"&")).replace(/[<>"'`]/g,function(e){return n[e]}):e}},can:{leftBodyScrollbar:function(){return A.cache.leftBodyScrollbar===Q&&(A.cache.leftBodyScrollbar=A.is.rtl()&&(A.is.iframe&&!A.is.firefox()||A.is.safari()||A.is.edge()||A.is.ie())),A.cache.leftBodyScrollbar},useFlex:function(){return"auto"===u.useFlex?u.detachable&&!A.is.ie():(u.useFlex&&A.is.ie()?A.debug("useFlex true is not supported in IE"):u.useFlex&&!u.detachable&&A.debug("useFlex true in combination with detachable false is not supported"),u.useFlex)},fit:function(){var e=A.cache.contextHeight,t=A.cache.contextHeight/2,n=A.cache.topOffset,i=A.cache.scrollHeight,o=A.cache.height,s=u.padding;return o<i?t+n+i+s<e:o+2*s<e}},has:{configActions:function(){return Array.isArray(u.actions)&&0<u.actions.length}},is:{active:function(){return y.hasClass(m.active)},ie:function(){var e,t;return A.cache.isIE===Q&&(e=!P.ActiveXObject&&"ActiveXObject"in P,t="ActiveXObject"in P,A.cache.isIE=e||t),A.cache.isIE},animating:function(){return y.transition("is supported")?y.transition("is animating"):y.is(":visible")},scrolling:function(){return i.hasClass(m.scrolling)},modernBrowser:function(){return!(P.ActiveXObject||"ActiveXObject"in P)},rtl:function(){return A.cache.isRTL===Q&&(A.cache.isRTL="rtl"===E.attr("dir")||"rtl"===E.css("direction")),A.cache.isRTL},safari:function(){return A.cache.isSafari===Q&&(A.cache.isSafari=/constructor/i.test(P.HTMLElement)||!!P.ApplePaySession),A.cache.isSafari},edge:function(){return A.cache.isEdge===Q&&(A.cache.isEdge=!!P.setImmediate&&!A.is.ie()),A.cache.isEdge},firefox:function(){return A.cache.isFirefox===Q&&(A.cache.isFirefox=!!P.InstallTrigger),A.cache.isFirefox},iframe:function(){return!(self===top)}},set:{autofocus:function(){var e=t.filter("[autofocus]"),e=(0<e.length?e:1<t.length?t.filter(":not(i.close)"):t).first();0<e.length&&e.focus()},bodyMargin:function(){var n=A.can.leftBodyScrollbar()?"left":"right";(u.detachable||A.can.fit())&&E.css("margin-"+n,M+"px"),E.find(f.bodyFixed.replace("right",n)).each(function(){var e=R(this),t="fixed"===e.css("position")?"padding-"+n:n;e.css(t,"calc("+e.css(t)+" + "+M+"px)")})},clickaway:function(){u.detachable||y.on("mousedown"+r,A.event.mousedown),n.on("mousedown"+r,A.event.mousedown),n.on("mouseup"+r,A.event.mouseup)},dimmerSettings:function(){var e;R.fn.dimmer===Q?A.error(p.dimmer):(e={debug:u.debug,dimmerName:"modals",closable:"auto",useFlex:A.can.useFlex(),duration:{show:u.transition.showDuration||u.duration,hide:u.transition.hideDuration||u.duration}},e=R.extend(!0,e,u.dimmerSettings),u.inverted&&(e.variation=e.variation!==Q?e.variation+" inverted":"inverted"),x.dimmer("setting",e))},dimmerStyles:function(){u.inverted?n.addClass(m.inverted):n.removeClass(m.inverted),u.blurring?i.addClass(m.blurring):i.removeClass(m.blurring)},modalOffset:function(){var e;u.detachable?y.css({marginTop:!y.hasClass("aligned")&&A.can.fit()?-A.cache.height/2:u.padding/2,marginLeft:-A.cache.width/2}):(e=A.can.fit(),y.css({top:!y.hasClass("aligned")&&e?R(K).scrollTop()+(A.cache.contextHeight-A.cache.height)/2:!e||y.hasClass("top")?R(K).scrollTop()+u.padding:R(K).scrollTop()+(A.cache.contextHeight-A.cache.height-u.padding),marginLeft:-A.cache.width/2})),A.verbose("Setting modal offset for legacy mode")},screenHeight:function(){A.can.fit()?E.css("height",""):y.hasClass("bottom")||(A.debug("Modal is taller than page content, resizing page height"),E.css("height",A.cache.height+2*u.padding))},active:function(){y.addClass(m.active+" "+m.front),s.filter("."+m.active).removeClass(m.front)},scrolling:function(){i.addClass(m.scrolling),y.addClass(m.scrolling),A.unbind.scrollLock()},legacy:function(){y.addClass(m.legacy)},type:function(){A.can.fit()?(A.verbose("Modal fits on screen"),A.others.active()||A.others.animating()||(A.remove.scrolling(),A.bind.scrollLock())):y.hasClass("bottom")?A.verbose("Bottom aligned modal not fitting on screen is unsupported for scrolling"):(A.verbose("Modal cannot fit on screen setting to scrolling"),A.set.scrolling())},undetached:function(){i.addClass(m.undetached)}},setting:function(e,t){if(A.debug("Changing setting",e,t),R.isPlainObject(e))R.extend(!0,u,e);else{if(t===Q)return u[e];R.isPlainObject(u[e])?R.extend(!0,u[e],t):u[e]=t}},internal:function(e,t){if(R.isPlainObject(e))R.extend(!0,A,e);else{if(t===Q)return A[e];A[e]=t}},debug:function(){!u.silent&&u.debug&&(u.performance?A.performance.log(arguments):(A.debug=Function.prototype.bind.call(console.info,console,u.name+":"),A.debug.apply(console,arguments)))},verbose:function(){!u.silent&&u.verbose&&u.debug&&(u.performance?A.performance.log(arguments):(A.verbose=Function.prototype.bind.call(console.info,console,u.name+":"),A.verbose.apply(console,arguments)))},error:function(){u.silent||(A.error=Function.prototype.bind.call(console.error,console,u.name+":"),A.error.apply(console,arguments))},performance:{log:function(e){var t,n;u.performance&&(n=(t=(new Date).getTime())-(I||t),I=t,N.push({Name:e[0],Arguments:[].slice.call(e,1)||"",Element:w,"Execution Time":n})),clearTimeout(A.performance.timer),A.performance.timer=setTimeout(A.performance.display,500)},display:function(){var e=u.name+":",n=0;I=!1,clearTimeout(A.performance.timer),R.each(N,function(e,t){n+=t["Execution Time"]}),e+=" "+n+"ms",L&&(e+=" '"+L+"'"),(console.group!==Q||console.table!==Q)&&0<N.length&&(console.groupCollapsed(e),console.table?console.table(N):R.each(N,function(e,t){console.log(t.Name+": "+t["Execution Time"]+"ms")}),console.groupEnd()),N=[]}},invoke:function(i,e,t){var o,s,n,a=C;return e=e||q,t=w||t,"string"==typeof i&&a!==Q&&(i=i.split(/[\. ]/),o=i.length-1,R.each(i,function(e,t){var n=e!=o?t+i[e+1].charAt(0).toUpperCase()+i[e+1].slice(1):i;if(R.isPlainObject(a[n])&&e!=o)a=a[n];else{if(a[n]!==Q)return s=a[n],!1;{if(!R.isPlainObject(a[t])||e==o)return a[t]!==Q&&(s=a[t]),!1;a=a[t]}}})),R.isFunction(s)?n=s.apply(t,e):s!==Q&&(n=s),Array.isArray(D)?D.push(n):D!==Q?D=[D,n]:n!==Q&&(D=n),s}};j?(C===Q&&(R.isFunction(u.templates[z])&&(u.autoShow=!0,u.className.modal=u.className.template,u=R.extend(!0,{},u,u.templates[z].apply(A,q)),m=u.className,u.namespace,g=u.fields,p=u.error),A.initialize()),R.isFunction(u.templates[z])||A.invoke(z)):(C!==Q&&C.invoke("destroy"),A.initialize(),D=y)}),D!==Q?D:this},R.fn.modal.settings={name:"Modal",namespace:"modal",useFlex:"auto",offset:0,silent:!1,debug:!1,verbose:!1,performance:!0,observeChanges:!1,allowMultiple:!1,detachable:!0,closable:!0,autofocus:!0,restoreFocus:!0,autoShow:!1,inverted:!1,blurring:!1,centered:!0,dimmerSettings:{closable:!1,useCSS:!0},keyboardShortcuts:!0,context:"body",queue:!1,duration:500,transition:"scale",padding:50,scrollbarWidth:10,title:"",content:"",class:"",classTitle:"",classContent:"",classActions:"",closeIcon:!1,actions:!1,preserveHTML:!0,fields:{class:"class",text:"text",icon:"icon",click:"click"},onShow:function(){},onVisible:function(){},onHide:function(){return!0},onHidden:!1,onApprove:function(){return!0},onDeny:function(){return!0},keys:{space:32,enter:13,escape:27,tab:9},selector:{title:"> .header",content:"> .content",actions:"> .actions",close:"> .close",closeIcon:"> .close",approve:".actions .positive, .actions .approve, .actions .ok",deny:".actions .negative, .actions .deny, .actions .cancel",modal:".ui.modal",dimmer:"> .ui.dimmer",bodyFixed:"> .ui.fixed.menu, > .ui.right.toast-container, > .ui.right.sidebar, > .ui.fixed.nag, > .ui.fixed.nag > .close",prompt:".ui.input > input"},error:{dimmer:"UI Dimmer, a required component is not included in this page",method:"The method you called is not defined.",notFound:"The element you specified could not be found"},className:{active:"active",animating:"animating",blurring:"blurring",inverted:"inverted",legacy:"legacy",loading:"loading",scrolling:"scrolling",undetached:"undetached",front:"front",close:"close icon",button:"ui button",modal:"ui modal",title:"header",content:"content",actions:"actions",template:"ui tiny modal",ok:"positive",cancel:"negative",prompt:"ui fluid input",innerDimmer:"ui inverted dimmer"},text:{ok:"Ok",cancel:"Cancel",close:"Close"}},R.fn.modal.settings.templates={getArguments:function(e){e=[].slice.call(e);return R.isPlainObject(e[0])?R.extend({handler:function(){},content:"",title:""},e[0]):(R.isFunction(e[e.length-1])||e.push(function(){}),{handler:e.pop(),content:e.pop()||"",title:e.pop()||""})},alert:function(){var e=this.get.settings(),t=e.templates.getArguments(arguments),n=t.handler;return{title:t.title,content:t.content,onApprove:n,actions:[{text:e.text.ok,class:e.className.ok,click:n}]}},confirm:function(){function e(){i.handler(!0)}function t(){i.handler(!1)}var n=this.get.settings(),i=n.templates.getArguments(arguments);return{title:i.title,content:i.content,onApprove:e,onDeny:t,actions:[{text:n.text.ok,class:n.className.ok,click:e},{text:n.text.cancel,class:n.className.cancel,click:t}]}},prompt:function(){function e(){var e=n.get.settings(),e=n.get.element().find(e.selector.prompt)[0];o.handler(R(e).val())}function t(){o.handler(null)}var n=this,i=this.get.settings(),o=i.templates.getArguments(arguments);return 0===R(R.parseHTML(o.content)).filter(".ui.input").length&&(o.content+='<p><div class="'+this.helpers.deQuote(i.className.prompt)+'"><input placeholder="'+this.helpers.deQuote(o.placeholder||"")+'" type="text" value="'+this.helpers.deQuote(o.defaultValue||"")+'"></div></p>'),{title:o.title,content:o.content,onApprove:e,onDeny:t,actions:[{text:i.text.ok,class:i.className.ok,click:e},{text:i.text.cancel,class:i.className.cancel,click:t}]}}}}(jQuery,window,document);
|
package/dist/components/nag.css
CHANGED
package/dist/components/nag.js
CHANGED
package/dist/components/popup.js
CHANGED
package/dist/components/rail.css
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
/*!
|
2
|
-
* # Fomantic-UI 2.9.0-beta.
|
2
|
+
* # Fomantic-UI 2.9.0-beta.305+4585cd0 - Search
|
3
3
|
* http://github.com/fomantic/Fomantic-UI/
|
4
4
|
*
|
5
5
|
*
|
@@ -262,7 +262,7 @@ $.fn.search = function(parameters) {
|
|
262
262
|
|
263
263
|
resultsScrollTop = $results.scrollTop();
|
264
264
|
resultsHeight = $results.height();
|
265
|
-
|
265
|
+
|
266
266
|
if (elTop < 0) {
|
267
267
|
$results.scrollTop(resultsScrollTop + elTop);
|
268
268
|
}
|
@@ -295,6 +295,7 @@ $.fn.search = function(parameters) {
|
|
295
295
|
if(keyCode == keys.escape) {
|
296
296
|
module.verbose('Escape key pressed, blurring search field');
|
297
297
|
module.hideResults();
|
298
|
+
event.stopPropagation();
|
298
299
|
resultsDismissed = true;
|
299
300
|
}
|
300
301
|
if( module.is.visible() ) {
|
@@ -678,10 +679,10 @@ $.fn.search = function(parameters) {
|
|
678
679
|
;
|
679
680
|
if(fieldExists) {
|
680
681
|
var text;
|
681
|
-
if (typeof content[field] === 'string'){
|
682
|
+
if (typeof content[field] === 'string'){
|
682
683
|
text = module.remove.diacritics(content[field]);
|
683
684
|
} else {
|
684
|
-
text = content[field].toString();
|
685
|
+
text = content[field].toString();
|
685
686
|
}
|
686
687
|
if( text.search(matchRegExp) !== -1) {
|
687
688
|
// content starts with value (first in results)
|
@@ -1,5 +1,5 @@
|
|
1
1
|
/*
|
2
|
-
* # Fomantic UI - 2.9.0-beta.
|
2
|
+
* # Fomantic UI - 2.9.0-beta.305+4585cd0
|
3
3
|
* https://github.com/fomantic/Fomantic-UI
|
4
4
|
* http://fomantic-ui.com/
|
5
5
|
*
|
@@ -8,4 +8,4 @@
|
|
8
8
|
* http://opensource.org/licenses/MIT
|
9
9
|
*
|
10
10
|
*/
|
11
|
-
!function(q,k,D,E){"use strict";q.isFunction=q.isFunction||function(e){return"function"==typeof e&&"number"!=typeof e.nodeType},k=void 0!==k&&k.Math==Math?k:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")(),q.fn.search=function(R){var S,x=q(this),C=x.selector||"",w=(new Date).getTime(),F=[],T=R,A="string"==typeof T,j=[].slice.call(arguments,1);return q(this).each(function(){var l=q.isPlainObject(R)?q.extend(!0,{},q.fn.search.settings,R):q.extend({},q.fn.search.settings),d=l.className,c=l.metadata,n=l.regExp,i=l.fields,f=l.selector,g=l.error,e=l.namespace,r="."+e,t=e+"-module",p=q(this),h=p.find(f.prompt),s=p.find(f.searchButton),a=p.find(f.results),o=p.find(f.result),u=(p.find(f.category),this),m=p.data(t),v=!1,y=!1,b={initialize:function(){b.verbose("Initializing module"),b.get.settings(),b.determine.searchFields(),b.bind.events(),b.set.type(),b.create.results(),b.instantiate()},instantiate:function(){b.verbose("Storing instance of module",b),m=b,p.data(t,b)},destroy:function(){b.verbose("Destroying instance"),p.off(r).removeData(t)},refresh:function(){b.debug("Refreshing selector cache"),h=p.find(f.prompt),s=p.find(f.searchButton),p.find(f.category),a=p.find(f.results),o=p.find(f.result)},refreshResults:function(){a=p.find(f.results),o=p.find(f.result)},bind:{events:function(){b.verbose("Binding events to search"),l.automatic&&(p.on(b.get.inputEvent()+r,f.prompt,b.event.input),h.attr("autocomplete",b.is.chrome()?"fomantic-search":"off")),p.on("focus"+r,f.prompt,b.event.focus).on("blur"+r,f.prompt,b.event.blur).on("keydown"+r,f.prompt,b.handleKeyboard).on("click"+r,f.searchButton,b.query).on("mousedown"+r,f.results,b.event.result.mousedown).on("mouseup"+r,f.results,b.event.result.mouseup).on("click"+r,f.result,b.event.result.click)}},determine:{searchFields:function(){R&&R.searchFields!==E&&(l.searchFields=R.searchFields)}},event:{input:function(){l.searchDelay?(clearTimeout(b.timer),b.timer=setTimeout(function(){b.is.focused()&&b.query()},l.searchDelay)):b.query()},focus:function(){b.set.focus(),l.searchOnFocus&&b.has.minimumCharacters()&&b.query(function(){b.can.show()&&b.showResults()})},blur:function(e){function t(){b.cancel.query(),b.remove.focus(),b.timer=setTimeout(b.hideResults,l.hideDelay)}var s=D.activeElement===this;s||(y=!1,b.resultsClicked?(b.debug("Determining if user action caused search to close"),p.one("click.close"+r,f.results,function(e){b.is.inMessage(e)||v?h.focus():(v=!1,b.is.animating()||b.is.hidden()||t())})):(b.debug("Input blurred without user action, closing results"),t()))},result:{mousedown:function(){b.resultsClicked=!0},mouseup:function(){b.resultsClicked=!1},click:function(e){b.debug("Search result selected");var t=q(this),s=t.find(f.title).eq(0),n=t.is("a[href]")?t:t.find("a[href]").eq(0),r=n.attr("href")||!1,i=n.attr("target")||!1,s=0<s.length&&s.text(),a=b.get.results(),t=t.data(c.result)||b.get.result(s,a),o=b.get.value();if(q.isFunction(l.onSelect)&&!1===l.onSelect.call(u,t,a))return b.debug("Custom onSelect callback cancelled default select action"),void(v=!0);b.hideResults(),s&&b.get.value()===o&&b.set.value(s),r&&(e.preventDefault(),b.verbose("Opening search link found in result",n),"_blank"==i||e.ctrlKey?k.open(r):k.location.href=r)}}},ensureVisible:function(e){var t,s,n;0!==e.length&&(e=(t=e.position().top)+e.outerHeight(!0),s=a.scrollTop(),n=a.height(),t<0?a.scrollTop(s+t):n<e&&a.scrollTop(s+(e-n)))},handleKeyboard:function(e){var t,s=p.find(f.result),n=p.find(f.category),r=s.filter("."+d.active),i=s.index(r),a=s.length,r=0<r.length,o=e.which,c=13,u=38,l=40;if(o==27&&(b.verbose("Escape key pressed, blurring search field"),b.hideResults(),y=!0),b.is.visible())if(o==c){if(b.verbose("Enter key pressed, selecting active result"),0<s.filter("."+d.active).length)return b.event.result.click.call(s.filter("."+d.active),e),e.preventDefault(),!1}else o==u&&r?(b.verbose("Up key pressed, changing active result"),t=i-1<0?i:i-1,n.removeClass(d.active),s.removeClass(d.active).eq(t).addClass(d.active).closest(n).addClass(d.active),b.ensureVisible(s.eq(t)),e.preventDefault()):o==l&&(b.verbose("Down key pressed, changing active result"),t=a<=i+1?i:i+1,n.removeClass(d.active),s.removeClass(d.active).eq(t).addClass(d.active).closest(n).addClass(d.active),b.ensureVisible(s.eq(t)),e.preventDefault());else o==c&&(b.verbose("Enter key pressed, executing query"),b.query(),b.set.buttonPressed(),h.one("keyup",b.remove.buttonFocus))},setup:{api:function(n,r){var e={debug:l.debug,on:!1,cache:l.cache,action:"search",urlData:{query:n}};q.extend(!0,e,l.apiSettings,{onSuccess:function(e,t,s){b.parse.response.call(u,e,n),r(),l.apiSettings&&"function"==typeof l.apiSettings.onSuccess&&l.apiSettings.onSuccess.call(this,e,t,s)},onFailure:function(e,t,s){b.displayMessage(g.serverError),r(),l.apiSettings&&"function"==typeof l.apiSettings.onFailure&&l.apiSettings.onFailure.call(this,e,t,s)},onAbort:function(e,t,s){l.apiSettings&&"function"==typeof l.apiSettings.onAbort&&l.apiSettings.onAbort.call(this,e,t,s)},onError:function(e,t,s){b.error(),l.apiSettings&&"function"==typeof l.apiSettings.onError&&l.apiSettings.onError.call(this,e,t,s)}}),b.verbose("Setting up API request",e),p.api(e)}},can:{useAPI:function(){return q.fn.api!==E},show:function(){return b.is.focused()&&!b.is.visible()&&!b.is.empty()},transition:function(){return l.transition&&q.fn.transition!==E&&p.transition("is supported")}},is:{animating:function(){return a.hasClass(d.animating)},chrome:function(){return!!k.chrome&&!k.StyleMedia},hidden:function(){return a.hasClass(d.hidden)},inMessage:function(e){var t;if(e.target)return t=q(e.target),q.contains(D.documentElement,e.target)&&0<t.closest(f.message).length},empty:function(){return""===a.html()},visible:function(){return 0<a.filter(":visible").length},focused:function(){return 0<h.filter(":focus").length}},get:{settings:function(){q.isPlainObject(R)&&R.searchFullText&&(l.fullTextSearch=R.searchFullText,b.error(l.error.oldSearchSyntax,u)),l.ignoreDiacritics&&!String.prototype.normalize&&(l.ignoreDiacritics=!1,b.error(g.noNormalize,u))},inputEvent:function(){var e=h[0];return e!==E&&e.oninput!==E?"input":e!==E&&e.onpropertychange!==E?"propertychange":"keyup"},value:function(){return h.val()},results:function(){return p.data(c.results)},result:function(s,e){var n=!1;return s=s!==E?s:b.get.value(),e=e!==E?e:b.get.results(),"category"===l.type?(b.debug("Finding result that matches",s),q.each(e,function(e,t){if(Array.isArray(t.results)&&(n=b.search.object(s,t.results)[0]))return!1})):(b.debug("Finding result in results object",s),n=b.search.object(s,e)[0]),n||!1}},select:{firstResult:function(){b.verbose("Selecting first result"),o.first().addClass(d.active)}},set:{focus:function(){p.addClass(d.focus)},loading:function(){p.addClass(d.loading)},value:function(e){b.verbose("Setting search input value",e),h.val(e)},type:function(e){e=e||l.type,"category"==l.type&&p.addClass(l.type)},buttonPressed:function(){s.addClass(d.pressed)}},remove:{loading:function(){p.removeClass(d.loading)},focus:function(){p.removeClass(d.focus)},buttonPressed:function(){s.removeClass(d.pressed)},diacritics:function(e){return l.ignoreDiacritics?e.normalize("NFD").replace(/[\u0300-\u036f]/g,""):e}},query:function(e){e=q.isFunction(e)?e:function(){};var t=b.get.value(),s=b.read.cache(t);e=e||function(){},b.has.minimumCharacters()?(s?(b.debug("Reading result from cache",t),b.save.results(s.results),b.addResults(s.html),b.inject.id(s.results),e()):(b.debug("Querying for",t),q.isPlainObject(l.source)||Array.isArray(l.source)?(b.search.local(t),e()):b.can.useAPI()?b.search.remote(t,e):(b.error(g.source),e())),l.onSearchQuery.call(u,t)):b.hideResults()},search:{local:function(e){var t,s=b.search.object(e,l.source);b.set.loading(),b.save.results(s),b.debug("Returned full local search results",s),0<l.maxResults&&(b.debug("Using specified max results",s),s=s.slice(0,l.maxResults)),"category"==l.type&&(s=b.create.categoryResults(s)),t=b.generateResults({results:s}),b.remove.loading(),b.addResults(t),b.inject.id(s),b.write.cache(e,{html:t,results:s})},remote:function(e,t){t=q.isFunction(t)?t:function(){},p.api("is loading")&&p.api("abort"),b.setup.api(e,t),p.api("query")},object:function(r,t,e){r=b.remove.diacritics(String(r));function i(e,t){var s=-1==q.inArray(t,a),n=-1==q.inArray(t,c),r=-1==q.inArray(t,o);s&&n&&r&&e.push(t)}var a=[],o=[],c=[],s=r.replace(n.escape,"\\$&"),u=new RegExp(n.beginsWith+s,"i");return t=t||l.source,e=e!==E?e:l.searchFields,Array.isArray(e)||(e=[e]),t===E||!1===t?(b.error(g.source),[]):(q.each(e,function(e,n){q.each(t,function(e,t){var s;"string"!=typeof t[n]&&"number"!=typeof t[n]||(-1!==(s="string"==typeof t[n]?b.remove.diacritics(t[n]):t[n].toString()).search(u)?i(a,t):"exact"===l.fullTextSearch&&b.exactSearch(r,s)?i(o,t):1==l.fullTextSearch&&b.fuzzySearch(r,s)&&i(c,t))})}),q.merge(o,c),q.merge(a,o),a)}},exactSearch:function(e,t){return e=e.toLowerCase(),-1<(t=t.toLowerCase()).indexOf(e)},fuzzySearch:function(e,t){var s=t.length,n=e.length;if("string"!=typeof e)return!1;if(e=e.toLowerCase(),t=t.toLowerCase(),s<n)return!1;if(n===s)return e===t;e:for(var r=0,i=0;r<n;r++){for(var a=e.charCodeAt(r);i<s;)if(t.charCodeAt(i++)===a)continue e;return!1}return!0},parse:{response:function(e,t){Array.isArray(e)&&((s={})[i.results]=e,e=s);var s=b.generateResults(e);b.verbose("Parsing server response",e),e!==E&&t!==E&&e[i.results]!==E&&(b.addResults(s),b.inject.id(e[i.results]),b.write.cache(t,{html:s,results:e[i.results]}),b.save.results(e[i.results]))}},cancel:{query:function(){b.can.useAPI()&&p.api("abort")}},has:{minimumCharacters:function(){return b.get.value().length>=l.minCharacters},results:function(){return 0!==a.length&&""!=a.html()}},clear:{cache:function(e){var t=p.data(c.cache);e?t&&t[e]&&(b.debug("Removing value from cache",e),delete t[e],p.data(c.cache,t)):(b.debug("Clearing cache",e),p.removeData(c.cache))}},read:{cache:function(e){var t=p.data(c.cache);return!!l.cache&&(b.verbose("Checking cache for generated html for query",e),"object"==typeof t&&t[e]!==E&&t[e])}},create:{categoryResults:function(e){var s={};return q.each(e,function(e,t){t.category&&(s[t.category]===E?(b.verbose("Creating new category of results",t.category),s[t.category]={name:t.category,results:[t]}):s[t.category].results.push(t))}),s},id:function(e,t){var s,e=e+1;return t!==E?(t=String.fromCharCode(97+t),b.verbose("Creating category result id",s=t+e)):b.verbose("Creating result id",s=e),s},results:function(){0===a.length&&(a=q("<div />").addClass(d.results).appendTo(p))}},inject:{result:function(e,t,s){b.verbose("Injecting result into results");s=(s!==E?a.children().eq(s).children(f.results).first():a).children(f.result).eq(t);b.verbose("Injecting results metadata",s),s.data(c.result,e)},id:function(e){b.debug("Injecting unique ids into results");var s=0,n=0;return"category"===l.type?q.each(e,function(e,t){0<t.results.length&&(n=0,q.each(t.results,function(e,t){t.id===E&&(t.id=b.create.id(n,s)),b.inject.result(t,n,s),n++}),s++)}):q.each(e,function(e,t){t.id===E&&(t.id=b.create.id(n)),b.inject.result(t,n),n++}),e}},save:{results:function(e){b.verbose("Saving current search results to metadata",e),p.data(c.results,e)}},write:{cache:function(e,t){var s=p.data(c.cache)!==E?p.data(c.cache):{};l.cache&&(b.verbose("Writing generated html to cache",e,t),s[e]=t,p.data(c.cache,s))}},addResults:function(e){if(q.isFunction(l.onResultsAdd)&&!1===l.onResultsAdd.call(a,e))return b.debug("onResultsAdd callback cancelled default action"),!1;e?(a.html(e),b.refreshResults(),l.selectFirstResult&&b.select.firstResult(),b.showResults()):b.hideResults(function(){a.empty()})},showResults:function(e){e=q.isFunction(e)?e:function(){},y||!b.is.visible()&&b.has.results()&&(b.can.transition()?(b.debug("Showing results with css animations"),a.transition({animation:l.transition+" in",debug:l.debug,verbose:l.verbose,duration:l.duration,onShow:function(){var e=p.find(f.result).eq(0);b.ensureVisible(e)},onComplete:function(){e()},queue:!0})):(b.debug("Showing results with javascript"),a.stop().fadeIn(l.duration,l.easing)),l.onResultsOpen.call(a))},hideResults:function(e){e=q.isFunction(e)?e:function(){},b.is.visible()&&(b.can.transition()?(b.debug("Hiding results with css animations"),a.transition({animation:l.transition+" out",debug:l.debug,verbose:l.verbose,duration:l.duration,onComplete:function(){e()},queue:!0})):(b.debug("Hiding results with javascript"),a.stop().fadeOut(l.duration,l.easing)),l.onResultsClose.call(a))},generateResults:function(e){b.debug("Generating html from response",e);var t=l.templates[l.type],s=q.isPlainObject(e[i.results])&&!q.isEmptyObject(e[i.results]),n=Array.isArray(e[i.results])&&0<e[i.results].length,r="";return s||n?(0<l.maxResults&&(s?"standard"==l.type&&b.error(g.maxResults):e[i.results]=e[i.results].slice(0,l.maxResults)),q.isFunction(t)?r=t(e,i,l.preserveHTML):b.error(g.noTemplate,!1)):l.showNoResults&&(r=b.displayMessage(g.noResults,"empty",g.noResultsHeader)),l.onResults.call(u,e),r},displayMessage:function(e,t,s){return b.debug("Displaying message",e,t=t||"standard",s),b.addResults(l.templates.message(e,t,s)),l.templates.message(e,t,s)},setting:function(e,t){if(q.isPlainObject(e))q.extend(!0,l,e);else{if(t===E)return l[e];l[e]=t}},internal:function(e,t){if(q.isPlainObject(e))q.extend(!0,b,e);else{if(t===E)return b[e];b[e]=t}},debug:function(){!l.silent&&l.debug&&(l.performance?b.performance.log(arguments):(b.debug=Function.prototype.bind.call(console.info,console,l.name+":"),b.debug.apply(console,arguments)))},verbose:function(){!l.silent&&l.verbose&&l.debug&&(l.performance?b.performance.log(arguments):(b.verbose=Function.prototype.bind.call(console.info,console,l.name+":"),b.verbose.apply(console,arguments)))},error:function(){l.silent||(b.error=Function.prototype.bind.call(console.error,console,l.name+":"),b.error.apply(console,arguments))},performance:{log:function(e){var t,s;l.performance&&(s=(t=(new Date).getTime())-(w||t),w=t,F.push({Name:e[0],Arguments:[].slice.call(e,1)||"",Element:u,"Execution Time":s})),clearTimeout(b.performance.timer),b.performance.timer=setTimeout(b.performance.display,500)},display:function(){var e=l.name+":",s=0;w=!1,clearTimeout(b.performance.timer),q.each(F,function(e,t){s+=t["Execution Time"]}),e+=" "+s+"ms",C&&(e+=" '"+C+"'"),1<x.length&&(e+=" ("+x.length+")"),(console.group!==E||console.table!==E)&&0<F.length&&(console.groupCollapsed(e),console.table?console.table(F):q.each(F,function(e,t){console.log(t.Name+": "+t["Execution Time"]+"ms")}),console.groupEnd()),F=[]}},invoke:function(n,e,t){var r,i,s,a=m;return e=e||j,t=u||t,"string"==typeof n&&a!==E&&(n=n.split(/[\. ]/),r=n.length-1,q.each(n,function(e,t){var s=e!=r?t+n[e+1].charAt(0).toUpperCase()+n[e+1].slice(1):n;if(q.isPlainObject(a[s])&&e!=r)a=a[s];else{if(a[s]!==E)return i=a[s],!1;{if(!q.isPlainObject(a[t])||e==r)return a[t]!==E&&(i=a[t]),!1;a=a[t]}}})),q.isFunction(i)?s=i.apply(t,e):i!==E&&(s=i),Array.isArray(S)?S.push(s):S!==E?S=[S,s]:s!==E&&(S=s),i}};A?(m===E&&b.initialize(),b.invoke(T)):(m!==E&&m.invoke("destroy"),b.initialize())}),S!==E?S:this},q.fn.search.settings={name:"Search",namespace:"search",silent:!1,debug:!1,verbose:!1,performance:!0,type:"standard",minCharacters:1,selectFirstResult:!1,apiSettings:!1,source:!1,searchOnFocus:!0,searchFields:["id","title","description"],displayField:"",fullTextSearch:"exact",ignoreDiacritics:!1,automatic:!0,hideDelay:0,searchDelay:200,maxResults:7,cache:!0,showNoResults:!0,preserveHTML:!0,transition:"scale",duration:200,easing:"easeOutExpo",onSelect:!1,onResultsAdd:!1,onSearchQuery:function(e){},onResults:function(e){},onResultsOpen:function(){},onResultsClose:function(){},className:{animating:"animating",active:"active",empty:"empty",focus:"focus",hidden:"hidden",loading:"loading",results:"results",pressed:"down"},error:{source:"Cannot search. No source used, and Semantic API module was not included",noResultsHeader:"No Results",noResults:"Your search returned no results",logging:"Error in debug logging, exiting.",noEndpoint:"No search endpoint was specified",noTemplate:"A valid template name was not specified.",oldSearchSyntax:"searchFullText setting has been renamed fullTextSearch for consistency, please adjust your settings.",serverError:"There was an issue querying the server.",maxResults:"Results must be an array to use maxResults setting",method:"The method you called is not defined.",noNormalize:'"ignoreDiacritics" setting will be ignored. Browser does not support String().normalize(). You may consider including <https://cdn.jsdelivr.net/npm/unorm@1.4.1/lib/unorm.min.js> as a polyfill.'},metadata:{cache:"cache",results:"results",result:"result"},regExp:{escape:/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,beginsWith:"(?:s|^)"},fields:{categories:"results",categoryName:"name",categoryResults:"results",description:"description",image:"image",price:"price",results:"results",title:"title",url:"url",action:"action",actionText:"text",actionURL:"url"},selector:{prompt:".prompt",searchButton:".search.button",results:".results",message:".results > .message",category:".category",result:".result",title:".title, .name"},templates:{escape:function(e,t){if(t)return e;var s={"<":"<",">":">",'"':""","'":"'","`":"`"};return/[&<>"'`]/.test(e)?(e=e.replace(/&(?![a-z0-9#]{1,6};)/,"&")).replace(/[<>"'`]/g,function(e){return s[e]}):e},message:function(e,t,s){var n="";return e!==E&&t!==E&&(n+='<div class="message '+t+'">',s&&(n+='<div class="header">'+s+"</div>"),n=n+' <div class="description">'+e+"</div></div>"),n},category:function(e,s,n){var r="",i=q.fn.search.settings.templates.escape;return e[s.categoryResults]!==E&&(q.each(e[s.categoryResults],function(e,t){t[s.results]!==E&&0<t.results.length&&(r+='<div class="category">',t[s.categoryName]!==E&&(r+='<div class="name">'+i(t[s.categoryName],n)+"</div>"),r+='<div class="results">',q.each(t.results,function(e,t){t[s.url]?r+='<a class="result" href="'+t[s.url].replace(/"/g,"")+'">':r+='<a class="result">',t[s.image]!==E&&(r+='<div class="image"> <img src="'+t[s.image].replace(/"/g,"")+'"></div>'),r+='<div class="content">',t[s.price]!==E&&(r+='<div class="price">'+i(t[s.price],n)+"</div>"),t[s.title]!==E&&(r+='<div class="title">'+i(t[s.title],n)+"</div>"),t[s.description]!==E&&(r+='<div class="description">'+i(t[s.description],n)+"</div>"),r+="</div></a>"}),r+="</div></div>")}),e[s.action]&&(!1===s.actionURL?r+='<div class="action">'+i(e[s.action][s.actionText],n)+"</div>":r+='<a href="'+e[s.action][s.actionURL].replace(/"/g,"")+'" class="action">'+i(e[s.action][s.actionText],n)+"</a>"),r)},standard:function(e,s,n){var r="",i=q.fn.search.settings.templates.escape;return e[s.results]!==E&&(q.each(e[s.results],function(e,t){t[s.url]?r+='<a class="result" href="'+t[s.url].replace(/"/g,"")+'">':r+='<a class="result">',t[s.image]!==E&&(r+='<div class="image"> <img src="'+t[s.image].replace(/"/g,"")+'"></div>'),r+='<div class="content">',t[s.price]!==E&&(r+='<div class="price">'+i(t[s.price],n)+"</div>"),t[s.title]!==E&&(r+='<div class="title">'+i(t[s.title],n)+"</div>"),t[s.description]!==E&&(r+='<div class="description">'+i(t[s.description],n)+"</div>"),r+="</div></a>"}),e[s.action]&&(!1===s.actionURL?r+='<div class="action">'+i(e[s.action][s.actionText],n)+"</div>":r+='<a href="'+e[s.action][s.actionURL].replace(/"/g,"")+'" class="action">'+i(e[s.action][s.actionText],n)+"</a>"),r)}}}}(jQuery,window,document);
|
11
|
+
!function(q,k,D,E){"use strict";q.isFunction=q.isFunction||function(e){return"function"==typeof e&&"number"!=typeof e.nodeType},k=void 0!==k&&k.Math==Math?k:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")(),q.fn.search=function(R){var S,x=q(this),C=x.selector||"",w=(new Date).getTime(),F=[],T=R,A="string"==typeof T,j=[].slice.call(arguments,1);return q(this).each(function(){var l=q.isPlainObject(R)?q.extend(!0,{},q.fn.search.settings,R):q.extend({},q.fn.search.settings),d=l.className,c=l.metadata,n=l.regExp,i=l.fields,f=l.selector,g=l.error,e=l.namespace,r="."+e,t=e+"-module",p=q(this),h=p.find(f.prompt),s=p.find(f.searchButton),a=p.find(f.results),o=p.find(f.result),u=(p.find(f.category),this),m=p.data(t),v=!1,y=!1,b={initialize:function(){b.verbose("Initializing module"),b.get.settings(),b.determine.searchFields(),b.bind.events(),b.set.type(),b.create.results(),b.instantiate()},instantiate:function(){b.verbose("Storing instance of module",b),m=b,p.data(t,b)},destroy:function(){b.verbose("Destroying instance"),p.off(r).removeData(t)},refresh:function(){b.debug("Refreshing selector cache"),h=p.find(f.prompt),s=p.find(f.searchButton),p.find(f.category),a=p.find(f.results),o=p.find(f.result)},refreshResults:function(){a=p.find(f.results),o=p.find(f.result)},bind:{events:function(){b.verbose("Binding events to search"),l.automatic&&(p.on(b.get.inputEvent()+r,f.prompt,b.event.input),h.attr("autocomplete",b.is.chrome()?"fomantic-search":"off")),p.on("focus"+r,f.prompt,b.event.focus).on("blur"+r,f.prompt,b.event.blur).on("keydown"+r,f.prompt,b.handleKeyboard).on("click"+r,f.searchButton,b.query).on("mousedown"+r,f.results,b.event.result.mousedown).on("mouseup"+r,f.results,b.event.result.mouseup).on("click"+r,f.result,b.event.result.click)}},determine:{searchFields:function(){R&&R.searchFields!==E&&(l.searchFields=R.searchFields)}},event:{input:function(){l.searchDelay?(clearTimeout(b.timer),b.timer=setTimeout(function(){b.is.focused()&&b.query()},l.searchDelay)):b.query()},focus:function(){b.set.focus(),l.searchOnFocus&&b.has.minimumCharacters()&&b.query(function(){b.can.show()&&b.showResults()})},blur:function(e){function t(){b.cancel.query(),b.remove.focus(),b.timer=setTimeout(b.hideResults,l.hideDelay)}var s=D.activeElement===this;s||(y=!1,b.resultsClicked?(b.debug("Determining if user action caused search to close"),p.one("click.close"+r,f.results,function(e){b.is.inMessage(e)||v?h.focus():(v=!1,b.is.animating()||b.is.hidden()||t())})):(b.debug("Input blurred without user action, closing results"),t()))},result:{mousedown:function(){b.resultsClicked=!0},mouseup:function(){b.resultsClicked=!1},click:function(e){b.debug("Search result selected");var t=q(this),s=t.find(f.title).eq(0),n=t.is("a[href]")?t:t.find("a[href]").eq(0),r=n.attr("href")||!1,i=n.attr("target")||!1,s=0<s.length&&s.text(),a=b.get.results(),t=t.data(c.result)||b.get.result(s,a),o=b.get.value();if(q.isFunction(l.onSelect)&&!1===l.onSelect.call(u,t,a))return b.debug("Custom onSelect callback cancelled default select action"),void(v=!0);b.hideResults(),s&&b.get.value()===o&&b.set.value(s),r&&(e.preventDefault(),b.verbose("Opening search link found in result",n),"_blank"==i||e.ctrlKey?k.open(r):k.location.href=r)}}},ensureVisible:function(e){var t,s,n;0!==e.length&&(e=(t=e.position().top)+e.outerHeight(!0),s=a.scrollTop(),n=a.height(),t<0?a.scrollTop(s+t):n<e&&a.scrollTop(s+(e-n)))},handleKeyboard:function(e){var t,s=p.find(f.result),n=p.find(f.category),r=s.filter("."+d.active),i=s.index(r),a=s.length,r=0<r.length,o=e.which,c=13,u=38,l=40;if(o==27&&(b.verbose("Escape key pressed, blurring search field"),b.hideResults(),e.stopPropagation(),y=!0),b.is.visible())if(o==c){if(b.verbose("Enter key pressed, selecting active result"),0<s.filter("."+d.active).length)return b.event.result.click.call(s.filter("."+d.active),e),e.preventDefault(),!1}else o==u&&r?(b.verbose("Up key pressed, changing active result"),t=i-1<0?i:i-1,n.removeClass(d.active),s.removeClass(d.active).eq(t).addClass(d.active).closest(n).addClass(d.active),b.ensureVisible(s.eq(t)),e.preventDefault()):o==l&&(b.verbose("Down key pressed, changing active result"),t=a<=i+1?i:i+1,n.removeClass(d.active),s.removeClass(d.active).eq(t).addClass(d.active).closest(n).addClass(d.active),b.ensureVisible(s.eq(t)),e.preventDefault());else o==c&&(b.verbose("Enter key pressed, executing query"),b.query(),b.set.buttonPressed(),h.one("keyup",b.remove.buttonFocus))},setup:{api:function(n,r){var e={debug:l.debug,on:!1,cache:l.cache,action:"search",urlData:{query:n}};q.extend(!0,e,l.apiSettings,{onSuccess:function(e,t,s){b.parse.response.call(u,e,n),r(),l.apiSettings&&"function"==typeof l.apiSettings.onSuccess&&l.apiSettings.onSuccess.call(this,e,t,s)},onFailure:function(e,t,s){b.displayMessage(g.serverError),r(),l.apiSettings&&"function"==typeof l.apiSettings.onFailure&&l.apiSettings.onFailure.call(this,e,t,s)},onAbort:function(e,t,s){l.apiSettings&&"function"==typeof l.apiSettings.onAbort&&l.apiSettings.onAbort.call(this,e,t,s)},onError:function(e,t,s){b.error(),l.apiSettings&&"function"==typeof l.apiSettings.onError&&l.apiSettings.onError.call(this,e,t,s)}}),b.verbose("Setting up API request",e),p.api(e)}},can:{useAPI:function(){return q.fn.api!==E},show:function(){return b.is.focused()&&!b.is.visible()&&!b.is.empty()},transition:function(){return l.transition&&q.fn.transition!==E&&p.transition("is supported")}},is:{animating:function(){return a.hasClass(d.animating)},chrome:function(){return!!k.chrome&&!k.StyleMedia},hidden:function(){return a.hasClass(d.hidden)},inMessage:function(e){var t;if(e.target)return t=q(e.target),q.contains(D.documentElement,e.target)&&0<t.closest(f.message).length},empty:function(){return""===a.html()},visible:function(){return 0<a.filter(":visible").length},focused:function(){return 0<h.filter(":focus").length}},get:{settings:function(){q.isPlainObject(R)&&R.searchFullText&&(l.fullTextSearch=R.searchFullText,b.error(l.error.oldSearchSyntax,u)),l.ignoreDiacritics&&!String.prototype.normalize&&(l.ignoreDiacritics=!1,b.error(g.noNormalize,u))},inputEvent:function(){var e=h[0];return e!==E&&e.oninput!==E?"input":e!==E&&e.onpropertychange!==E?"propertychange":"keyup"},value:function(){return h.val()},results:function(){return p.data(c.results)},result:function(s,e){var n=!1;return s=s!==E?s:b.get.value(),e=e!==E?e:b.get.results(),"category"===l.type?(b.debug("Finding result that matches",s),q.each(e,function(e,t){if(Array.isArray(t.results)&&(n=b.search.object(s,t.results)[0]))return!1})):(b.debug("Finding result in results object",s),n=b.search.object(s,e)[0]),n||!1}},select:{firstResult:function(){b.verbose("Selecting first result"),o.first().addClass(d.active)}},set:{focus:function(){p.addClass(d.focus)},loading:function(){p.addClass(d.loading)},value:function(e){b.verbose("Setting search input value",e),h.val(e)},type:function(e){e=e||l.type,"category"==l.type&&p.addClass(l.type)},buttonPressed:function(){s.addClass(d.pressed)}},remove:{loading:function(){p.removeClass(d.loading)},focus:function(){p.removeClass(d.focus)},buttonPressed:function(){s.removeClass(d.pressed)},diacritics:function(e){return l.ignoreDiacritics?e.normalize("NFD").replace(/[\u0300-\u036f]/g,""):e}},query:function(e){e=q.isFunction(e)?e:function(){};var t=b.get.value(),s=b.read.cache(t);e=e||function(){},b.has.minimumCharacters()?(s?(b.debug("Reading result from cache",t),b.save.results(s.results),b.addResults(s.html),b.inject.id(s.results),e()):(b.debug("Querying for",t),q.isPlainObject(l.source)||Array.isArray(l.source)?(b.search.local(t),e()):b.can.useAPI()?b.search.remote(t,e):(b.error(g.source),e())),l.onSearchQuery.call(u,t)):b.hideResults()},search:{local:function(e){var t,s=b.search.object(e,l.source);b.set.loading(),b.save.results(s),b.debug("Returned full local search results",s),0<l.maxResults&&(b.debug("Using specified max results",s),s=s.slice(0,l.maxResults)),"category"==l.type&&(s=b.create.categoryResults(s)),t=b.generateResults({results:s}),b.remove.loading(),b.addResults(t),b.inject.id(s),b.write.cache(e,{html:t,results:s})},remote:function(e,t){t=q.isFunction(t)?t:function(){},p.api("is loading")&&p.api("abort"),b.setup.api(e,t),p.api("query")},object:function(r,t,e){r=b.remove.diacritics(String(r));function i(e,t){var s=-1==q.inArray(t,a),n=-1==q.inArray(t,c),r=-1==q.inArray(t,o);s&&n&&r&&e.push(t)}var a=[],o=[],c=[],s=r.replace(n.escape,"\\$&"),u=new RegExp(n.beginsWith+s,"i");return t=t||l.source,e=e!==E?e:l.searchFields,Array.isArray(e)||(e=[e]),t===E||!1===t?(b.error(g.source),[]):(q.each(e,function(e,n){q.each(t,function(e,t){var s;"string"!=typeof t[n]&&"number"!=typeof t[n]||(-1!==(s="string"==typeof t[n]?b.remove.diacritics(t[n]):t[n].toString()).search(u)?i(a,t):"exact"===l.fullTextSearch&&b.exactSearch(r,s)?i(o,t):1==l.fullTextSearch&&b.fuzzySearch(r,s)&&i(c,t))})}),q.merge(o,c),q.merge(a,o),a)}},exactSearch:function(e,t){return e=e.toLowerCase(),-1<(t=t.toLowerCase()).indexOf(e)},fuzzySearch:function(e,t){var s=t.length,n=e.length;if("string"!=typeof e)return!1;if(e=e.toLowerCase(),t=t.toLowerCase(),s<n)return!1;if(n===s)return e===t;e:for(var r=0,i=0;r<n;r++){for(var a=e.charCodeAt(r);i<s;)if(t.charCodeAt(i++)===a)continue e;return!1}return!0},parse:{response:function(e,t){Array.isArray(e)&&((s={})[i.results]=e,e=s);var s=b.generateResults(e);b.verbose("Parsing server response",e),e!==E&&t!==E&&e[i.results]!==E&&(b.addResults(s),b.inject.id(e[i.results]),b.write.cache(t,{html:s,results:e[i.results]}),b.save.results(e[i.results]))}},cancel:{query:function(){b.can.useAPI()&&p.api("abort")}},has:{minimumCharacters:function(){return b.get.value().length>=l.minCharacters},results:function(){return 0!==a.length&&""!=a.html()}},clear:{cache:function(e){var t=p.data(c.cache);e?t&&t[e]&&(b.debug("Removing value from cache",e),delete t[e],p.data(c.cache,t)):(b.debug("Clearing cache",e),p.removeData(c.cache))}},read:{cache:function(e){var t=p.data(c.cache);return!!l.cache&&(b.verbose("Checking cache for generated html for query",e),"object"==typeof t&&t[e]!==E&&t[e])}},create:{categoryResults:function(e){var s={};return q.each(e,function(e,t){t.category&&(s[t.category]===E?(b.verbose("Creating new category of results",t.category),s[t.category]={name:t.category,results:[t]}):s[t.category].results.push(t))}),s},id:function(e,t){var s,e=e+1;return t!==E?(t=String.fromCharCode(97+t),b.verbose("Creating category result id",s=t+e)):b.verbose("Creating result id",s=e),s},results:function(){0===a.length&&(a=q("<div />").addClass(d.results).appendTo(p))}},inject:{result:function(e,t,s){b.verbose("Injecting result into results");s=(s!==E?a.children().eq(s).children(f.results).first():a).children(f.result).eq(t);b.verbose("Injecting results metadata",s),s.data(c.result,e)},id:function(e){b.debug("Injecting unique ids into results");var s=0,n=0;return"category"===l.type?q.each(e,function(e,t){0<t.results.length&&(n=0,q.each(t.results,function(e,t){t.id===E&&(t.id=b.create.id(n,s)),b.inject.result(t,n,s),n++}),s++)}):q.each(e,function(e,t){t.id===E&&(t.id=b.create.id(n)),b.inject.result(t,n),n++}),e}},save:{results:function(e){b.verbose("Saving current search results to metadata",e),p.data(c.results,e)}},write:{cache:function(e,t){var s=p.data(c.cache)!==E?p.data(c.cache):{};l.cache&&(b.verbose("Writing generated html to cache",e,t),s[e]=t,p.data(c.cache,s))}},addResults:function(e){if(q.isFunction(l.onResultsAdd)&&!1===l.onResultsAdd.call(a,e))return b.debug("onResultsAdd callback cancelled default action"),!1;e?(a.html(e),b.refreshResults(),l.selectFirstResult&&b.select.firstResult(),b.showResults()):b.hideResults(function(){a.empty()})},showResults:function(e){e=q.isFunction(e)?e:function(){},y||!b.is.visible()&&b.has.results()&&(b.can.transition()?(b.debug("Showing results with css animations"),a.transition({animation:l.transition+" in",debug:l.debug,verbose:l.verbose,duration:l.duration,onShow:function(){var e=p.find(f.result).eq(0);b.ensureVisible(e)},onComplete:function(){e()},queue:!0})):(b.debug("Showing results with javascript"),a.stop().fadeIn(l.duration,l.easing)),l.onResultsOpen.call(a))},hideResults:function(e){e=q.isFunction(e)?e:function(){},b.is.visible()&&(b.can.transition()?(b.debug("Hiding results with css animations"),a.transition({animation:l.transition+" out",debug:l.debug,verbose:l.verbose,duration:l.duration,onComplete:function(){e()},queue:!0})):(b.debug("Hiding results with javascript"),a.stop().fadeOut(l.duration,l.easing)),l.onResultsClose.call(a))},generateResults:function(e){b.debug("Generating html from response",e);var t=l.templates[l.type],s=q.isPlainObject(e[i.results])&&!q.isEmptyObject(e[i.results]),n=Array.isArray(e[i.results])&&0<e[i.results].length,r="";return s||n?(0<l.maxResults&&(s?"standard"==l.type&&b.error(g.maxResults):e[i.results]=e[i.results].slice(0,l.maxResults)),q.isFunction(t)?r=t(e,i,l.preserveHTML):b.error(g.noTemplate,!1)):l.showNoResults&&(r=b.displayMessage(g.noResults,"empty",g.noResultsHeader)),l.onResults.call(u,e),r},displayMessage:function(e,t,s){return b.debug("Displaying message",e,t=t||"standard",s),b.addResults(l.templates.message(e,t,s)),l.templates.message(e,t,s)},setting:function(e,t){if(q.isPlainObject(e))q.extend(!0,l,e);else{if(t===E)return l[e];l[e]=t}},internal:function(e,t){if(q.isPlainObject(e))q.extend(!0,b,e);else{if(t===E)return b[e];b[e]=t}},debug:function(){!l.silent&&l.debug&&(l.performance?b.performance.log(arguments):(b.debug=Function.prototype.bind.call(console.info,console,l.name+":"),b.debug.apply(console,arguments)))},verbose:function(){!l.silent&&l.verbose&&l.debug&&(l.performance?b.performance.log(arguments):(b.verbose=Function.prototype.bind.call(console.info,console,l.name+":"),b.verbose.apply(console,arguments)))},error:function(){l.silent||(b.error=Function.prototype.bind.call(console.error,console,l.name+":"),b.error.apply(console,arguments))},performance:{log:function(e){var t,s;l.performance&&(s=(t=(new Date).getTime())-(w||t),w=t,F.push({Name:e[0],Arguments:[].slice.call(e,1)||"",Element:u,"Execution Time":s})),clearTimeout(b.performance.timer),b.performance.timer=setTimeout(b.performance.display,500)},display:function(){var e=l.name+":",s=0;w=!1,clearTimeout(b.performance.timer),q.each(F,function(e,t){s+=t["Execution Time"]}),e+=" "+s+"ms",C&&(e+=" '"+C+"'"),1<x.length&&(e+=" ("+x.length+")"),(console.group!==E||console.table!==E)&&0<F.length&&(console.groupCollapsed(e),console.table?console.table(F):q.each(F,function(e,t){console.log(t.Name+": "+t["Execution Time"]+"ms")}),console.groupEnd()),F=[]}},invoke:function(n,e,t){var r,i,s,a=m;return e=e||j,t=u||t,"string"==typeof n&&a!==E&&(n=n.split(/[\. ]/),r=n.length-1,q.each(n,function(e,t){var s=e!=r?t+n[e+1].charAt(0).toUpperCase()+n[e+1].slice(1):n;if(q.isPlainObject(a[s])&&e!=r)a=a[s];else{if(a[s]!==E)return i=a[s],!1;{if(!q.isPlainObject(a[t])||e==r)return a[t]!==E&&(i=a[t]),!1;a=a[t]}}})),q.isFunction(i)?s=i.apply(t,e):i!==E&&(s=i),Array.isArray(S)?S.push(s):S!==E?S=[S,s]:s!==E&&(S=s),i}};A?(m===E&&b.initialize(),b.invoke(T)):(m!==E&&m.invoke("destroy"),b.initialize())}),S!==E?S:this},q.fn.search.settings={name:"Search",namespace:"search",silent:!1,debug:!1,verbose:!1,performance:!0,type:"standard",minCharacters:1,selectFirstResult:!1,apiSettings:!1,source:!1,searchOnFocus:!0,searchFields:["id","title","description"],displayField:"",fullTextSearch:"exact",ignoreDiacritics:!1,automatic:!0,hideDelay:0,searchDelay:200,maxResults:7,cache:!0,showNoResults:!0,preserveHTML:!0,transition:"scale",duration:200,easing:"easeOutExpo",onSelect:!1,onResultsAdd:!1,onSearchQuery:function(e){},onResults:function(e){},onResultsOpen:function(){},onResultsClose:function(){},className:{animating:"animating",active:"active",empty:"empty",focus:"focus",hidden:"hidden",loading:"loading",results:"results",pressed:"down"},error:{source:"Cannot search. No source used, and Semantic API module was not included",noResultsHeader:"No Results",noResults:"Your search returned no results",logging:"Error in debug logging, exiting.",noEndpoint:"No search endpoint was specified",noTemplate:"A valid template name was not specified.",oldSearchSyntax:"searchFullText setting has been renamed fullTextSearch for consistency, please adjust your settings.",serverError:"There was an issue querying the server.",maxResults:"Results must be an array to use maxResults setting",method:"The method you called is not defined.",noNormalize:'"ignoreDiacritics" setting will be ignored. Browser does not support String().normalize(). You may consider including <https://cdn.jsdelivr.net/npm/unorm@1.4.1/lib/unorm.min.js> as a polyfill.'},metadata:{cache:"cache",results:"results",result:"result"},regExp:{escape:/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,beginsWith:"(?:s|^)"},fields:{categories:"results",categoryName:"name",categoryResults:"results",description:"description",image:"image",price:"price",results:"results",title:"title",url:"url",action:"action",actionText:"text",actionURL:"url"},selector:{prompt:".prompt",searchButton:".search.button",results:".results",message:".results > .message",category:".category",result:".result",title:".title, .name"},templates:{escape:function(e,t){if(t)return e;var s={"<":"<",">":">",'"':""","'":"'","`":"`"};return/[&<>"'`]/.test(e)?(e=e.replace(/&(?![a-z0-9#]{1,6};)/,"&")).replace(/[<>"'`]/g,function(e){return s[e]}):e},message:function(e,t,s){var n="";return e!==E&&t!==E&&(n+='<div class="message '+t+'">',s&&(n+='<div class="header">'+s+"</div>"),n=n+' <div class="description">'+e+"</div></div>"),n},category:function(e,s,n){var r="",i=q.fn.search.settings.templates.escape;return e[s.categoryResults]!==E&&(q.each(e[s.categoryResults],function(e,t){t[s.results]!==E&&0<t.results.length&&(r+='<div class="category">',t[s.categoryName]!==E&&(r+='<div class="name">'+i(t[s.categoryName],n)+"</div>"),r+='<div class="results">',q.each(t.results,function(e,t){t[s.url]?r+='<a class="result" href="'+t[s.url].replace(/"/g,"")+'">':r+='<a class="result">',t[s.image]!==E&&(r+='<div class="image"> <img src="'+t[s.image].replace(/"/g,"")+'"></div>'),r+='<div class="content">',t[s.price]!==E&&(r+='<div class="price">'+i(t[s.price],n)+"</div>"),t[s.title]!==E&&(r+='<div class="title">'+i(t[s.title],n)+"</div>"),t[s.description]!==E&&(r+='<div class="description">'+i(t[s.description],n)+"</div>"),r+="</div></a>"}),r+="</div></div>")}),e[s.action]&&(!1===s.actionURL?r+='<div class="action">'+i(e[s.action][s.actionText],n)+"</div>":r+='<a href="'+e[s.action][s.actionURL].replace(/"/g,"")+'" class="action">'+i(e[s.action][s.actionText],n)+"</a>"),r)},standard:function(e,s,n){var r="",i=q.fn.search.settings.templates.escape;return e[s.results]!==E&&(q.each(e[s.results],function(e,t){t[s.url]?r+='<a class="result" href="'+t[s.url].replace(/"/g,"")+'">':r+='<a class="result">',t[s.image]!==E&&(r+='<div class="image"> <img src="'+t[s.image].replace(/"/g,"")+'"></div>'),r+='<div class="content">',t[s.price]!==E&&(r+='<div class="price">'+i(t[s.price],n)+"</div>"),t[s.title]!==E&&(r+='<div class="title">'+i(t[s.title],n)+"</div>"),t[s.description]!==E&&(r+='<div class="description">'+i(t[s.description],n)+"</div>"),r+="</div></a>"}),e[s.action]&&(!1===s.actionURL?r+='<div class="action">'+i(e[s.action][s.actionText],n)+"</div>":r+='<a href="'+e[s.action][s.actionURL].replace(/"/g,"")+'" class="action">'+i(e[s.action][s.actionText],n)+"</a>"),r)}}}}(jQuery,window,document);
|
package/dist/components/shape.js
CHANGED