@northdata/fomantic-ui 2.8.722 → 2.9.400
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/lib/semantic-ui/dist/components/accordion.css +62 -69
- package/lib/semantic-ui/dist/components/accordion.js +595 -618
- package/lib/semantic-ui/dist/components/accordion.min.css +4 -4
- package/lib/semantic-ui/dist/components/accordion.min.js +6 -6
- package/lib/semantic-ui/dist/components/api.js +1225 -1177
- package/lib/semantic-ui/dist/components/api.min.js +6 -6
- package/lib/semantic-ui/dist/components/button.css +291 -634
- package/lib/semantic-ui/dist/components/button.min.css +4 -4
- package/lib/semantic-ui/dist/components/calendar.css +149 -33
- package/lib/semantic-ui/dist/components/calendar.js +2045 -1774
- package/lib/semantic-ui/dist/components/calendar.min.css +4 -4
- package/lib/semantic-ui/dist/components/calendar.min.js +6 -6
- package/lib/semantic-ui/dist/components/card.css +147 -537
- package/lib/semantic-ui/dist/components/card.min.css +4 -4
- package/lib/semantic-ui/dist/components/checkbox.css +215 -405
- package/lib/semantic-ui/dist/components/checkbox.js +888 -876
- package/lib/semantic-ui/dist/components/checkbox.min.css +4 -4
- package/lib/semantic-ui/dist/components/checkbox.min.js +6 -6
- package/lib/semantic-ui/dist/components/container.css +20 -21
- package/lib/semantic-ui/dist/components/container.min.css +4 -4
- package/lib/semantic-ui/dist/components/dimmer.css +76 -184
- package/lib/semantic-ui/dist/components/dimmer.js +732 -753
- package/lib/semantic-ui/dist/components/dimmer.min.css +4 -4
- package/lib/semantic-ui/dist/components/dimmer.min.js +6 -6
- package/lib/semantic-ui/dist/components/divider.css +81 -88
- package/lib/semantic-ui/dist/components/divider.min.css +4 -4
- package/lib/semantic-ui/dist/components/dropdown.css +431 -450
- package/lib/semantic-ui/dist/components/dropdown.js +4432 -4238
- package/lib/semantic-ui/dist/components/dropdown.min.css +4 -4
- package/lib/semantic-ui/dist/components/dropdown.min.js +6 -6
- package/lib/semantic-ui/dist/components/feed.css +130 -87
- package/lib/semantic-ui/dist/components/feed.min.css +4 -4
- package/lib/semantic-ui/dist/components/flag.css +541 -511
- package/lib/semantic-ui/dist/components/flag.min.css +4 -4
- package/lib/semantic-ui/dist/components/form.css +437 -476
- package/lib/semantic-ui/dist/components/form.js +2199 -2033
- package/lib/semantic-ui/dist/components/form.min.css +4 -4
- package/lib/semantic-ui/dist/components/form.min.js +6 -6
- package/lib/semantic-ui/dist/components/grid.css +151 -306
- package/lib/semantic-ui/dist/components/grid.min.css +4 -4
- package/lib/semantic-ui/dist/components/header.css +82 -99
- package/lib/semantic-ui/dist/components/header.min.css +4 -4
- package/lib/semantic-ui/dist/components/icon.css +2744 -2706
- package/lib/semantic-ui/dist/components/icon.min.css +4 -4
- package/lib/semantic-ui/dist/components/image.css +38 -73
- package/lib/semantic-ui/dist/components/image.min.css +4 -4
- package/lib/semantic-ui/dist/components/input.css +344 -254
- package/lib/semantic-ui/dist/components/input.min.css +4 -4
- package/lib/semantic-ui/dist/components/item.css +91 -139
- package/lib/semantic-ui/dist/components/item.min.css +4 -4
- package/lib/semantic-ui/dist/components/label.css +244 -267
- package/lib/semantic-ui/dist/components/label.min.css +4 -4
- package/lib/semantic-ui/dist/components/list.css +75 -113
- package/lib/semantic-ui/dist/components/list.min.css +4 -4
- package/lib/semantic-ui/dist/components/loader.css +142 -601
- package/lib/semantic-ui/dist/components/loader.min.css +4 -4
- package/lib/semantic-ui/dist/components/menu.css +398 -638
- package/lib/semantic-ui/dist/components/menu.min.css +9 -1
- package/lib/semantic-ui/dist/components/message.css +116 -332
- package/lib/semantic-ui/dist/components/message.min.css +4 -4
- package/lib/semantic-ui/dist/components/modal.css +149 -138
- package/lib/semantic-ui/dist/components/modal.js +1637 -1209
- package/lib/semantic-ui/dist/components/modal.min.css +4 -4
- package/lib/semantic-ui/dist/components/modal.min.js +6 -6
- package/lib/semantic-ui/dist/components/popup.css +284 -277
- package/lib/semantic-ui/dist/components/popup.js +1561 -1541
- package/lib/semantic-ui/dist/components/popup.min.css +4 -4
- package/lib/semantic-ui/dist/components/popup.min.js +6 -6
- package/lib/semantic-ui/dist/components/reset.css +12 -17
- package/lib/semantic-ui/dist/components/reset.min.css +4 -4
- package/lib/semantic-ui/dist/components/search.css +99 -137
- package/lib/semantic-ui/dist/components/search.js +1641 -1565
- package/lib/semantic-ui/dist/components/search.min.css +4 -4
- package/lib/semantic-ui/dist/components/search.min.js +6 -6
- package/lib/semantic-ui/dist/components/segment.css +149 -275
- package/lib/semantic-ui/dist/components/segment.min.css +4 -4
- package/lib/semantic-ui/dist/components/site.css +40 -48
- package/lib/semantic-ui/dist/components/site.js +455 -493
- package/lib/semantic-ui/dist/components/site.min.css +4 -4
- package/lib/semantic-ui/dist/components/site.min.js +6 -6
- package/lib/semantic-ui/dist/components/tab.css +16 -20
- package/lib/semantic-ui/dist/components/tab.js +967 -1001
- package/lib/semantic-ui/dist/components/tab.min.css +4 -4
- package/lib/semantic-ui/dist/components/tab.min.js +6 -6
- package/lib/semantic-ui/dist/components/table.css +465 -424
- package/lib/semantic-ui/dist/components/table.min.css +4 -4
- package/lib/semantic-ui/dist/components/transition.css +264 -1282
- package/lib/semantic-ui/dist/components/transition.js +1034 -1109
- package/lib/semantic-ui/dist/components/transition.min.css +4 -4
- package/lib/semantic-ui/dist/components/transition.min.js +6 -6
- package/lib/semantic-ui/dist/semantic-packed.css +5619 -6592
- package/lib/semantic-ui/dist/semantic.css +8547 -11697
- package/lib/semantic-ui/dist/semantic.full.css +14698 -11227
- package/lib/semantic-ui/dist/semantic.full.min.css +6 -262
- package/lib/semantic-ui/dist/semantic.js +19428 -19253
- package/lib/semantic-ui/dist/semantic.min.css +128 -128
- package/lib/semantic-ui/dist/semantic.min.js +6 -6
- package/lib/semantic-ui/dist/themes/basic/assets/fonts/LICENSE.txt +91 -0
- package/lib/semantic-ui/dist/themes/basic/assets/fonts/icons.woff2 +0 -0
- package/lib/semantic-ui/dist/themes/default/assets/fonts/LICENSE_icons.txt +165 -0
- package/lib/semantic-ui/dist/themes/default/assets/fonts/brand-icons.woff +0 -0
- package/lib/semantic-ui/dist/themes/default/assets/fonts/brand-icons.woff2 +0 -0
- package/lib/semantic-ui/dist/themes/default/assets/fonts/icons.woff +0 -0
- package/lib/semantic-ui/dist/themes/default/assets/fonts/icons.woff2 +0 -0
- package/lib/semantic-ui/dist/themes/default/assets/fonts/outline-icons.woff +0 -0
- package/lib/semantic-ui/dist/themes/default/assets/fonts/outline-icons.woff2 +0 -0
- package/package.json +17 -7
- package/lib/semantic-ui/dist/components/shape.css +0 -160
- package/lib/semantic-ui/dist/components/shape.js +0 -848
- package/lib/semantic-ui/dist/components/shape.min.css +0 -9
- package/lib/semantic-ui/dist/components/shape.min.js +0 -11
- package/lib/semantic-ui/dist/themes/basic/assets/fonts/icons.eot +0 -0
- package/lib/semantic-ui/dist/themes/basic/assets/fonts/icons.svg +0 -450
- package/lib/semantic-ui/dist/themes/basic/assets/fonts/icons.ttf +0 -0
- package/lib/semantic-ui/dist/themes/default/assets/fonts/brand-icons.eot +0 -0
- package/lib/semantic-ui/dist/themes/default/assets/fonts/brand-icons.svg +0 -3570
- package/lib/semantic-ui/dist/themes/default/assets/fonts/brand-icons.ttf +0 -0
- package/lib/semantic-ui/dist/themes/default/assets/fonts/icons.eot +0 -0
- package/lib/semantic-ui/dist/themes/default/assets/fonts/icons.svg +0 -4938
- package/lib/semantic-ui/dist/themes/default/assets/fonts/icons.ttf +0 -0
- package/lib/semantic-ui/dist/themes/default/assets/fonts/outline-icons.eot +0 -0
- package/lib/semantic-ui/dist/themes/default/assets/fonts/outline-icons.svg +0 -803
- package/lib/semantic-ui/dist/themes/default/assets/fonts/outline-icons.ttf +0 -0
- package/lib/semantic-ui/dist/themes/github/assets/fonts/octicons-local.ttf +0 -0
- package/lib/semantic-ui/dist/themes/github/assets/fonts/octicons.svg +0 -200
- package/lib/semantic-ui/dist/themes/github/assets/fonts/octicons.ttf +0 -0
- package/lib/semantic-ui/dist/themes/github/assets/fonts/octicons.woff +0 -0
- package/lib/semantic-ui/dist/themes/material/assets/fonts/icons.eot +0 -0
- package/lib/semantic-ui/dist/themes/material/assets/fonts/icons.svg +0 -2373
- package/lib/semantic-ui/dist/themes/material/assets/fonts/icons.ttf +0 -0
- package/lib/semantic-ui/dist/themes/material/assets/fonts/icons.woff +0 -0
- package/lib/semantic-ui/dist/themes/material/assets/fonts/icons.woff2 +0 -0
- /package/lib/semantic-ui/dist/themes/{default → famfamfam}/assets/images/flags.png +0 -0
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* # Fomantic-UI - Search
|
|
3
|
-
*
|
|
2
|
+
* # Fomantic-UI 2.9.4 - Search
|
|
3
|
+
* https://github.com/fomantic/Fomantic-UI/
|
|
4
4
|
*
|
|
5
5
|
*
|
|
6
6
|
* Released under the MIT license
|
|
7
|
-
*
|
|
7
|
+
* https://opensource.org/licenses/MIT
|
|
8
8
|
*
|
|
9
|
-
*/.ui.search{position:relative}.ui.search>.prompt{margin:0;outline:0;-webkit-appearance:none;-webkit-tap-highlight-color:rgba(255,255,255,0);text-shadow:none;font-style:normal;font-weight:300;line-height:1.2142em;padding:.67861429em 1em;font-size:1em;background:#fff;border:1px solid rgba(34,36,38,.15);color:rgba(0,0,0,.87)
|
|
9
|
+
*/.ui.search{position:relative}.ui.search>.prompt{margin:0;outline:0;-webkit-appearance:none;-webkit-tap-highlight-color:rgba(255,255,255,0);text-shadow:none;font-style:normal;font-weight:300;line-height:1.2142em;padding:.67861429em 1em;font-size:1em;background:#fff;border:1px solid rgba(34,36,38,.15);color:rgba(0,0,0,.87);box-shadow:0 0 0 0 transparent inset;transition:background-color .1s ease,color .1s ease,box-shadow .1s ease,border-color .1s ease}.ui.search .prompt{border-radius:500rem}.ui.search .prompt~.search.icon{cursor:pointer}.ui.search>.results{display:none;position:absolute;top:100%;left:0;transform-origin:center top;white-space:normal;text-align:left;text-transform:none;background:#fff;margin-top:.5em;width:18em;border-radius:0;box-shadow:0 2px 4px 0 rgba(34,36,38,.12),0 2px 10px 0 rgba(34,36,38,.15);border:1px solid #d4d4d5;z-index:998}.ui.search>.results>:first-child{border-radius:0}.ui.search>.results>:last-child{border-radius:0}.ui.search>.results .result{cursor:pointer;display:block;overflow:hidden;font-size:1em;padding:.85714286em 1.14285714em;color:rgba(0,0,0,.87);line-height:1.33;border-bottom:1px solid rgba(34,36,38,.1)}.ui.search>.results .result:last-child{border-bottom:none!important}.ui.search>.results .result .image{float:right;overflow:hidden;background:0 0;width:5em;height:3em;border-radius:.25em}.ui.search>.results .result .image img{display:block;width:auto;height:100%}.ui.search>.results .result .image+.content{margin:0 6em 0 0}.ui.search>.results .result .title{margin:-.14285714em 0 0;font-family:"Josefin Sans",serif;font-weight:700;font-size:1em;color:rgba(0,0,0,.85)}.ui.search>.results .result .description{margin-top:0;font-size:.92857143em;color:rgba(0,0,0,.4)}.ui.search>.results .result .price{float:right;color:#66af8b}.ui.search>.results>.message{padding:1em 1em}.ui.search>.results>.message .header{font-family:"Josefin Sans",serif;font-size:1rem;font-weight:700;color:rgba(0,0,0,.87)}.ui.search>.results>.message .description{margin-top:.25rem;font-size:1em;color:rgba(0,0,0,.87)}.ui.search>.results>.action{display:block;border-top:none;background:#f3f4f5;padding:.92857143em 1em;color:rgba(0,0,0,.87);font-weight:700;text-align:center}.ui.search>.prompt:focus{border-color:rgba(34,36,38,.35);background:#fff;color:rgba(0,0,0,.95)}.ui.loading.search .input>i.icon::before{position:absolute;content:"";top:50%;left:50%;margin:-.64285714em 0 0 -.64285714em;width:1.28571429em;height:1.28571429em;border-radius:500rem;border:.2em solid rgba(0,0,0,.1)}.ui.loading.search .input>i.icon::after{position:absolute;content:"";top:50%;left:50%;margin:-.64285714em 0 0 -.64285714em;width:1.28571429em;height:1.28571429em;animation:loader .6s infinite linear;border:.2em solid #9ab5c1;border-radius:500rem;box-shadow:0 0 0 1px transparent}.ui.category.search>.results .category .result:hover,.ui.search>.results .result:hover{background:#f9fafb}.ui.search .action:hover:not(div){background:#e0e0e0}.ui.category.search>.results .category.active{background:#f3f4f5}.ui.category.search>.results .category.active>.name{color:rgba(0,0,0,.87)}.ui.category.search>.results .category .result.active,.ui.search>.results .result.active{position:relative;border-left-color:rgba(34,36,38,.1);background:#f3f4f5;box-shadow:none}.ui.search>.results .result.active .title{color:rgba(0,0,0,.85)}.ui.search>.results .result.active .description{color:rgba(0,0,0,.85)}.ui.search>.icon.input>.remove.icon{pointer-events:all;transition:opacity .1s ease;cursor:pointer;opacity:.6}.ui.search>.icon.input>.remove.icon:hover{opacity:1}.ui.search>.icon.input:not([class*="left icon"])>.icon~.remove.icon{right:1.85714em}.ui.search input[type=search]::-webkit-search-cancel-button{-webkit-appearance:none;cursor:pointer;-webkit-transition:opacity .1s ease;transition:opacity .1s ease;opacity:.6;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 352 512'%3E%3Cpath d='M242.7 256l100.1-100.1c12.3-12.3 12.3-32.2 0-44.5l-22.2-22.2c-12.3-12.3-32.2-12.3-44.5 0L176 189.3 75.9 89.2c-12.3-12.3-32.2-12.3-44.5 0L9.2 111.5c-12.3 12.3-12.3 32.2 0 44.5L109.3 256 9.2 356.1c-12.3 12.3-12.3 32.2 0 44.5l22.2 22.2c12.3 12.3 32.2 12.3 44.5 0L176 322.7l100.1 100.1c12.3 12.3 32.2 12.3 44.5 0l22.2-22.2c12.3-12.3 12.3-32.2 0-44.5L242.7 256z'/%3E%3C/svg%3E") no-repeat;height:1em;width:1em}.ui.search input[type=search]::-webkit-search-cancel-button:hover{opacity:1}.ui.loading.search input[type=search]::-webkit-search-cancel-button{display:none}.ui.search.loading>.icon.input>.remove.icon,.ui.search>.icon.input>input:placeholder-shown~.remove.icon{display:none}.ui.category.search .results{width:28em}.ui.category.search .results.animating,.ui.category.search .results.visible{display:table}.ui.category.search>.results .category{display:table-row;background:#f3f4f5;box-shadow:none;transition:background .1s ease,border-color .1s ease}.ui.category.search>.results .category:last-child{border-bottom:none}.ui.category.search>.results .category:first-child .name+.result{border-radius:0}.ui.category.search>.results .category:last-child .result:last-child{border-radius:0}.ui.category.search>.results .category>.name{display:table-cell;text-overflow:ellipsis;width:100px;white-space:nowrap;background:0 0;font-family:Roboto,"Helvetica Neue",Arial,Helvetica,sans-serif;font-size:1em;padding:.4em 1em;font-weight:700;color:rgba(0,0,0,.4);border-bottom:1px solid rgba(34,36,38,.1)}.ui.category.search>.results .category .results{display:table-cell;background:#fff;border-left:1px solid rgba(34,36,38,.15);border-bottom:1px solid rgba(34,36,38,.1)}.ui.category.search>.results .category .result{border-bottom:1px solid rgba(34,36,38,.1);transition:background .1s ease,border-color .1s ease;padding:.85714286em 1.14285714em}.ui.horizontal.category.search>.results .category,.ui.horizontal.category.search>.results .category>.name,.ui.horizontal.category.search>.results .category>.results{display:block}.ui.horizontal.category.search>.results .category>.results{width:100%;border-left:0}.ui.scrolling.search>.results,.ui.search.long>.results,.ui.search.short>.results{overflow-x:hidden;overflow-y:auto;-ms-scroll-chaining:none;overscroll-behavior:none;-webkit-backface-visibility:hidden;backface-visibility:hidden}@media only screen and (max-width:767.98px){.ui.scrolling.search>.results{max-height:12.17714286em}}@media only screen and (min-width:768px){.ui.scrolling.search>.results{max-height:18.26571429em}}@media only screen and (min-width:992px){.ui.scrolling.search>.results{max-height:24.35428571em}}@media only screen and (min-width:1920px){.ui.scrolling.search>.results{max-height:36.53142857em}}@media only screen and (max-width:767.98px){.ui.search.short>.results{max-height:12.17714286em}.ui.search.long>.results{max-height:24.35428571em}}@media only screen and (min-width:768px){.ui.search.short>.results{max-height:18.26571429em}.ui.search.long>.results{max-height:36.53142857em}}@media only screen and (min-width:992px){.ui.search.short>.results{max-height:24.35428571em}.ui.search.long>.results{max-height:48.70857143em}}@media only screen and (min-width:1920px){.ui.search.short>.results{max-height:36.53142857em}.ui.search.long>.results{max-height:73.06285714em}}.ui[class*="left aligned"].search>.results{right:auto;left:0}.ui[class*="right aligned"].search>.results{right:0;left:auto}.ui.fluid.search .results{width:100%}.ui.search{font-size:1em}.ui.mini.search{font-size:.78571429em}.ui.tiny.search{font-size:.85714286em}.ui.small.search{font-size:.92857143em}.ui.large.search{font-size:1.14285714em}.ui.big.search{font-size:1.28571429em}.ui.huge.search{font-size:1.42857143em}.ui.massive.search{font-size:1.71428571em}@media only screen and (max-width:767.98px){.ui.search .results{max-width:calc(100vw - 2rem)}}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
* # Fomantic UI - 2.
|
|
1
|
+
/*
|
|
2
|
+
* # Fomantic UI - 2.9.4
|
|
3
3
|
* https://github.com/fomantic/Fomantic-UI
|
|
4
|
-
*
|
|
4
|
+
* https://fomantic-ui.com/
|
|
5
5
|
*
|
|
6
|
-
* Copyright
|
|
6
|
+
* Copyright 2025 Contributors
|
|
7
7
|
* Released under the MIT license
|
|
8
|
-
*
|
|
8
|
+
* https://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 x,C=q(this),w=C.selector||"",S=(new Date).getTime(),T=[],F=R,j="string"==typeof F,A=[].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,o=l.metadata,n=l.regExp,i=l.fields,f=l.selector,g=l.error,e=l.namespace,r="."+e,t=e+"-module",h=q(this),p=h.find(f.prompt),s=h.find(f.searchButton),a=h.find(f.results),c=h.find(f.result),u=(h.find(f.category),this),m=h.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,h.data(t,b)},destroy:function(){b.verbose("Destroying instance"),h.off(r).removeData(t)},refresh:function(){b.debug("Refreshing selector cache"),p=h.find(f.prompt),s=h.find(f.searchButton),h.find(f.category),a=h.find(f.results),c=h.find(f.result)},refreshResults:function(){a=h.find(f.results),c=h.find(f.result)},bind:{events:function(){b.verbose("Binding events to search"),l.automatic&&(h.on(b.get.inputEvent()+r,f.prompt,b.event.input),p.attr("autocomplete","off")),h.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"),h.one("click.close"+r,f.results,function(e){b.is.inMessage(e)||v?p.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,a=0<s.length&&s.text(),s=b.get.results(),t=t.data(o.result)||b.get.result(a,s);if(a&&b.set.value(a),q.isFunction(l.onSelect)&&!1===l.onSelect.call(u,t,s))return b.debug("Custom onSelect callback cancelled default select action"),void(v=!0);b.hideResults(),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=e.position().top,s=t+e.outerHeight(!0),n=a.scrollTop(),e=a.height();parseInt(a.css("paddingTop"),0),parseInt(a.css("paddingBottom"),0),t<0?a.scrollTop(n+t):e<s&&a.scrollTop(n+(s-e))},handleKeyboard:function(e){var t,s=h.find(f.result),n=h.find(f.category),r=s.filter("."+d.active),i=s.index(r),a=s.length,o=0<r.length,c=e.which,u=13,l=38,r=40;if(c==27&&(b.verbose("Escape key pressed, blurring search field"),b.hideResults(),y=!0),b.is.visible())if(c==u){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 c==l&&o?(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()):c==r&&(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 c==u&&(b.verbose("Enter key pressed, executing query"),b.query(),b.set.buttonPressed(),p.one("keyup",b.remove.buttonFocus))},setup:{api:function(t,s){var e={debug:l.debug,on:!1,cache:l.cache,action:"search",urlData:{query:t},onSuccess:function(e){b.parse.response.call(u,e,t),s()},onFailure:function(){b.displayMessage(g.serverError),s()},onAbort:function(e){},onError:b.error};q.extend(!0,e,l.apiSettings),b.verbose("Setting up API request",e),h.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&&h.transition("is supported")}},is:{animating:function(){return a.hasClass(d.animating)},hidden:function(){return a.hasClass(d.hidden)},inMessage:function(e){if(e.target){var t=q(e.target);return 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<p.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=p[0];return e!==E&&e.oninput!==E?"input":e!==E&&e.onpropertychange!==E?"propertychange":"keyup"},value:function(){return p.val()},results:function(){return h.data(o.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"),c.first().addClass(d.active)}},set:{focus:function(){h.addClass(d.focus)},loading:function(){h.addClass(d.loading)},value:function(e){b.verbose("Setting search input value",e),p.val(e)},type:function(e){e=e||l.type,"category"==l.type&&h.addClass(l.type)},buttonPressed:function(){s.addClass(d.pressed)}},remove:{loading:function(){h.removeClass(d.loading)},focus:function(){h.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(){},h.api("is loading")&&h.api("abort"),b.setup.api(e,t),h.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()&&h.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=h.data(o.cache);e?e&&t&&t[e]&&(b.debug("Removing value from cache",e),delete t[e],h.data(o.cache,t)):(b.debug("Clearing cache",e),h.removeData(o.cache))}},read:{cache:function(e){var t=h.data(o.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?(s=String.fromCharCode(97+t)+e,b.verbose("Creating category result id",s)):(s=e,b.verbose("Creating result id",s)),s},results:function(){0===a.length&&(a=q("<div />").addClass(d.results).appendTo(h))}},inject:{result:function(e,t,s){b.verbose("Injecting result into results");t=(s!==E?a.children().eq(s).children(f.results).first():a).children(f.result).eq(t);b.verbose("Injecting results metadata",t),t.data(o.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),h.data(o.results,e)}},write:{cache:function(e,t){var s=h.data(o.cache)!==E?h.data(o.cache):{};l.cache&&(b.verbose("Writing generated html to cache",e,t),s[e]=t,h.data(o.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=h.find(f.result).eq(0);0<e.length&&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 t=t||"standard",b.debug("Displaying message",e,t,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())-(S||t),S=t,T.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;S=!1,clearTimeout(b.performance.timer),q.each(T,function(e,t){s+=t["Execution Time"]}),e+=" "+s+"ms",w&&(e+=" '"+w+"'"),1<C.length&&(e+=" ("+C.length+")"),(console.group!==E||console.table!==E)&&0<T.length&&(console.groupCollapsed(e),console.table?console.table(T):q.each(T,function(e,t){console.log(t.Name+": "+t["Execution Time"]+"ms")}),console.groupEnd()),T=[]}},invoke:function(n,e,t){var r,i,s,a=m;return e=e||A,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(x)?x.push(s):x!==E?x=[x,s]:s!==E&&(x=s),i}};j?(m===E&&b.initialize(),b.invoke(F)):(m!==E&&m.invoke("destroy"),b.initialize())}),x!==E?x: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+=' <div class="description">'+e+"</div>",n+="</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>",r+="</a>"}),r+="</div>",r+="</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>",r+="</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(j,F,q){"use strict";function D(e){return"function"==typeof e&&"number"!=typeof e.nodeType}F=void 0!==F&&F.Math===Math?F:globalThis,j.fn.search=function(R){var S,x=j(this),C=Date.now(),w=[],T=R,k="string"==typeof T,A=[].slice.call(arguments,1);return x.each(function(){var d=j.isPlainObject(R)?j.extend(!0,{},j.fn.search.settings,R):j.extend({},j.fn.search.settings),f=d.className,c=d.metadata,r=d.regExp,u=d.fields,g=d.selector,h=d.error,e=d.namespace,n="."+e,t=e+"-module",v=j(this),p=v.find(g.prompt),s=v.find(g.searchButton),i=v.find(g.results),a=v.find(g.result),m=(v.find(g.category),this),o=v.data(t),l=!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),o=b,v.data(t,b)},destroy:function(){b.verbose("Destroying instance"),v.off(n).removeData(t)},refresh:function(){b.debug("Refreshing selector cache"),p=v.find(g.prompt),s=v.find(g.searchButton),v.find(g.category),i=v.find(g.results),a=v.find(g.result)},refreshResults:function(){i=v.find(g.results),a=v.find(g.result)},bind:{events:function(){b.verbose("Binding events to search"),d.automatic&&(v.on(b.get.inputEvent()+n,g.prompt,b.event.input),p.attr("autocomplete",b.is.chrome()?"fomantic-search":"off")),v.on("focus"+n,g.prompt,b.event.focus).on("blur"+n,g.prompt,b.event.blur).on("keydown"+n,g.prompt,b.handleKeyboard).on("click"+n,g.searchButton,b.query).on("mousedown"+n,g.results,b.event.result.mousedown).on("mouseup"+n,g.results,b.event.result.mouseup).on("click"+n,g.result,b.event.result.click).on("click"+n,g.remove,b.event.remove.click)}},determine:{searchFields:function(){R&&void 0!==R.searchFields&&(d.searchFields=Array.isArray(R.searchFields)?R.searchFields:[R.searchFields])}},event:{input:function(){d.searchDelay?(clearTimeout(b.timer),b.timer=setTimeout(function(){b.is.focused()&&b.query()},d.searchDelay)):b.query()},focus:function(){b.set.focus(),d.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(function(){b.hideResults()},d.hideDelay)}var s=q.activeElement===this;s||(y=!1,b.resultsClicked?(b.debug("Determining if user action caused search to close"),v.one("click.close"+n,g.results,function(e){b.is.inMessage(e)||l?p.trigger("focus"):(l=!1,b.is.animating()||b.is.hidden()||t())})):(b.debug("Input blurred without user action, closing results"),t()))},remove:{click:function(){b.clear.value(),p.trigger("focus")}},result:{mousedown:function(){b.resultsClicked=!0},mouseup:function(){b.resultsClicked=!1},click:function(e){b.debug("Search result selected");var t=j(this),s=t.find(g.title).eq(0),r=t.is("a[href]")?t:t.find("a[href]").eq(0),n=r.attr("href")||!1,i=r.attr("target")||!1,a=0<s.length&&s.text(),o=b.get.results(),s=t.data(c.result)||b.get.result(a,o),t=b.get.value();if(D(d.onSelect)&&!1===d.onSelect.call(m,s,o))return b.debug("Custom onSelect callback cancelled default select action"),void(l=!0);b.hideResults(),a&&b.get.value()===t&&b.set.value(a),n&&(e.preventDefault(),b.verbose("Opening search link found in result",r),"_blank"===i||e.ctrlKey?F.open(n):F.location.href=n)}}},ensureVisible:function(e){var t,s,r;0!==e.length&&(s=(t=e.position().top)+e.outerHeight(!0),r=i.scrollTop(),e=i.height(),t<0?i.scrollTop(r+t):e<s&&i.scrollTop(r+(s-e)))},handleKeyboard:function(e){var t,s=v.find(g.result),r=v.find(g.category),n=s.filter("."+f.active),i=s.index(n),a=s.length,o=0<n.length,c=e.which,l=13,u=38,n=40;if(c===27&&(b.is.visible()?b.hideResults():(b.verbose("Escape key pressed, blurring search field"),p.trigger("blur")),e.stopPropagation(),y=!0),b.is.visible())if(c===l){if(b.verbose("Enter key pressed, selecting active result"),0<s.filter("."+f.active).length)return b.event.result.click.call(s.filter("."+f.active),e),e.preventDefault(),!1}else c===u&&o?(b.verbose("Up key pressed, changing active result"),t=i-1<0?i:i-1,r.removeClass(f.active),s.removeClass(f.active).eq(t).addClass(f.active).closest(r).addClass(f.active),b.ensureVisible(s.eq(t)),e.preventDefault()):c===n&&(b.verbose("Down key pressed, changing active result"),t=a<=i+1?i:i+1,r.removeClass(f.active),s.removeClass(f.active).eq(t).addClass(f.active).closest(r).addClass(f.active),b.ensureVisible(s.eq(t)),e.preventDefault());else c===l&&(b.verbose("Enter key pressed, executing query"),b.query(),b.set.buttonPressed(),p.one("keyup",b.remove.buttonFocus))},setup:{api:function(r,n){var e={debug:d.debug,on:!1,cache:d.cache,action:"search",urlData:{query:r}},t={onSuccess:function(e,t,s){b.parse.response.call(m,e,r),n(),d.apiSettings&&"function"==typeof d.apiSettings.onSuccess&&d.apiSettings.onSuccess.call(this,e,t,s)},onFailure:function(e,t,s){b.displayMessage(h.serverError),n(),d.apiSettings&&"function"==typeof d.apiSettings.onFailure&&d.apiSettings.onFailure.call(this,e,t,s)},onAbort:function(e,t,s){d.apiSettings&&"function"==typeof d.apiSettings.onAbort&&d.apiSettings.onAbort.call(this,e,t,s)},onError:function(e,t,s){b.error(),d.apiSettings&&"function"==typeof d.apiSettings.onError&&d.apiSettings.onError.call(this,e,t,s)}};j.extend(!0,e,d.apiSettings,t),b.verbose("Setting up API request",e),v.api(e)}},can:{useAPI:function(){return void 0!==j.fn.api},show:function(){return b.is.focused()&&!b.is.visible()&&!b.is.empty()},transition:function(){return d.transition&&void 0!==j.fn.transition}},is:{animating:function(){return i.hasClass(f.animating)},chrome:function(){return!!F.chrome&&!F.StyleMedia},hidden:function(){return i.hasClass(f.hidden)},inMessage:function(e){if(e.target){var t=j(e.target);return j.contains(q.documentElement,e.target)&&0<t.closest(g.message).length}},empty:function(){return""===i.html()},visible:function(){return 0<i.filter(":visible").length},focused:function(){return 0<p.filter(":focus").length}},get:{settings:function(){j.isPlainObject(R)&&R.searchFullText&&(d.fullTextSearch=R.searchFullText,b.error(d.error.oldSearchSyntax,m)),d.ignoreDiacritics&&!String.prototype.normalize&&(d.ignoreDiacritics=!1,b.error(h.noNormalize,m))},inputEvent:function(){var e=p[0];return void 0!==e&&void 0!==e.oninput?"input":void 0!==e&&void 0!==e.onpropertychange?"propertychange":"keyup"},value:function(){return p.val()},results:function(){return v.data(c.results)},result:function(s,e){var r=!1;return s=void 0!==s?s:b.get.value(),e=void 0!==e?e:b.get.results(),"category"===d.type?(b.debug("Finding result that matches",s),j.each(e,function(e,t){if(Array.isArray(t.results)&&(r=b.search.object(s,t.results)[0]))return!1})):(b.debug("Finding result in results object",s),r=b.search.object(s,e)[0]),r||!1}},select:{firstResult:function(){b.verbose("Selecting first result"),a.first().addClass(f.active)}},set:{focus:function(){v.addClass(f.focus)},loading:function(){v.addClass(f.loading)},value:function(e){b.verbose("Setting search input value",e),p.val(e)},type:function(e){e=e||d.type,f[e]&&v.addClass(f[e])},buttonPressed:function(){s.addClass(f.pressed)}},remove:{loading:function(){v.removeClass(f.loading)},focus:function(){v.removeClass(f.focus)},buttonPressed:function(){s.removeClass(f.pressed)},diacritics:function(e){return d.ignoreDiacritics?e.normalize("NFD").replace(/[\u0300-\u036F]/g,""):e}},query:function(e){e=D(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),d.onResults.call(m,s.results,!0),b.addResults(s.html),b.inject.id(s.results),e()):(b.debug("Querying for",t),j.isPlainObject(d.source)||Array.isArray(d.source)?(b.search.local(t),e()):b.can.useAPI()?b.search.remote(t,e):(b.error(h.source),e())),d.onSearchQuery.call(m,t)):b.hideResults()},search:{local:function(e){var t,s=b.search.object(e,d.source);b.set.loading(),b.save.results(s),b.debug("Returned full local search results",s),0<d.maxResults&&(b.debug("Using specified max results",s),s=s.slice(0,d.maxResults)),"category"===d.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=D(t)?t:function(){},v.api("is loading")&&v.api("abort"),b.setup.api(e,t),v.api("query")},object:function(n,e,t){n=b.remove.diacritics(String(n));function i(e,t){var s=-1===j.inArray(t,a),r=-1===j.inArray(t,c),n=-1===j.inArray(t,o);s&&r&&n&&e.push(t)}var a=[],o=[],c=[],s=n.replace(r.escape,"\\$&"),l=new RegExp(r.beginsWith+s,d.ignoreSearchCase?"i":"");if(e=e||d.source,t=void 0!==t?t:d.searchFields,Array.isArray(t)||(t=[t]),void 0===e||!1===e)return b.error(h.source),[];var u=t.length-1;return j.each(e,function(e,s){var r=[];j.each(t,function(e,t){if("string"==typeof s[t]||"number"==typeof s[t]){t="string"==typeof s[t]?b.remove.diacritics(s[t]):s[t].toString();if(t=j("<div/>",{html:t}).text().trim(),"all"===d.fullTextSearch){if(r.push(t),e<u)return!0;t=r.join(" ")}"all"!==d.fullTextSearch&&-1!==t.search(l)?i(a,s):"exact"===d.fullTextSearch&&b.exactSearch(n,t)||"some"===d.fullTextSearch&&b.wordSearch(n,t)||"all"===d.fullTextSearch&&b.wordSearch(n,t,!0)?i(o,s):!0===d.fullTextSearch&&b.fuzzySearch(n,t)&&i(c,s)}})}),j.merge(o,c),j.merge(a,o),a}},exactSearch:function(e,t){return d.ignoreSearchCase&&(e=e.toLowerCase(),t=t.toLowerCase()),-1<t.indexOf(e)},wordSearch:function(e,t,s){for(var r=e.split(/\s+/),n=r.length,i=!1,a=0;a<n&&!(!(i=b.exactSearch(r[a],t))&&s||i&&!s);a++);return i},fuzzySearch:function(e,t){var s=t.length,r=e.length;if("string"!=typeof e)return!1;if(d.ignoreSearchCase&&(e=e.toLowerCase(),t=t.toLowerCase()),s<r)return!1;if(r===s)return e===t;for(var n=0,i=0;n<r;n++){for(var a=!1,o=e.charCodeAt(n);i<s;)if(t.charCodeAt(i++)===o){a=!0;break}if(!a)return!1}return!0},parse:{response:function(e,t){Array.isArray(e)&&((s={})[u.results]=e,e=s);var s=b.generateResults(e);b.verbose("Parsing server response",e),void 0!==e&&void 0!==t&&void 0!==e[u.results]&&(b.addResults(s),b.inject.id(e[u.results]),b.write.cache(t,{html:s,results:e[u.results]}),b.save.results(e[u.results]))}},cancel:{query:function(){b.can.useAPI()&&v.api("abort")}},has:{minimumCharacters:function(){return b.get.value().length>=d.minCharacters},results:function(){return 0!==i.length&&""!==i.html()}},clear:{cache:function(e){var t=v.data(c.cache);e?e&&t&&t[e]&&(b.debug("Removing value from cache",e),delete t[e],v.data(c.cache,t)):(b.debug("Clearing cache",e),v.removeData(c.cache))},value:function(){b.set.value("")}},read:{cache:function(e){var t=v.data(c.cache);return!!d.cache&&(b.verbose("Checking cache for generated html for query",e),"object"==typeof t&&void 0!==t[e]&&t[e])}},create:{categoryResults:function(e){var s={};return j.each(e,function(e,t){t.category&&(void 0===s[t.category]?(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 void 0!==t?(s=String.fromCharCode(97+t)+e,b.verbose("Creating category result id",s)):(s=e,b.verbose("Creating result id",s)),s},results:function(){0===i.length&&(i=j("<div />").addClass(f.results).appendTo(v))}},inject:{result:function(e,t,s){b.verbose("Injecting result into results");t=(void 0!==s?i.children().eq(s).children(g.results).first():i).children(g.result).eq(t);b.verbose("Injecting results metadata",t),t.data(c.result,e)},id:function(e){b.debug("Injecting unique ids into results");var s=0,r=0;return"category"===d.type?j.each(e,function(e,t){0<t.results.length&&(r=0,j.each(t.results,function(e,t){void 0===t.id&&(t.id=b.create.id(r,s)),b.inject.result(t,r,s),r++}),s++)}):j.each(e,function(e,t){void 0===t.id&&(t.id=b.create.id(r)),b.inject.result(t,r),r++}),e}},save:{results:function(e){b.verbose("Saving current search results to metadata",e),v.data(c.results,e)}},write:{cache:function(e,t){var s=void 0!==v.data(c.cache)?v.data(c.cache):{};d.cache&&(b.verbose("Writing generated html to cache",e,t),s[e]=t,v.data(c.cache,s))}},addResults:function(e){if(D(d.onResultsAdd)&&!1===d.onResultsAdd.call(i,e))return b.debug("onResultsAdd callback cancelled default action"),!1;e?(i.html(e),b.refreshResults(),d.selectFirstResult&&b.select.firstResult(),b.showResults()):b.hideResults(function(){i.empty()})},showResults:function(e){e=D(e)?e:function(){},y||!b.is.visible()&&b.has.results()&&(b.can.transition()?(b.debug("Showing results with css animations"),i.transition({animation:d.transition+" in",debug:d.debug,verbose:d.verbose,silent:d.silent,duration:d.duration,onShow:function(){var e=v.find(g.result).eq(0);b.ensureVisible(e)},onComplete:function(){e()},queue:!0})):(b.debug("Showing results with javascript"),i.stop().fadeIn(d.duration,d.easing)),d.onResultsOpen.call(i))},hideResults:function(e){e=D(e)?e:function(){},b.is.visible()&&(b.can.transition()?(b.debug("Hiding results with css animations"),i.transition({animation:d.transition+" out",debug:d.debug,verbose:d.verbose,silent:d.silent,duration:d.duration,onComplete:function(){e()},queue:!0})):(b.debug("Hiding results with javascript"),i.stop().fadeOut(d.duration,d.easing)),d.onResultsClose.call(i))},generateResults:function(i){b.debug("Generating html from response",i);var e,t,s,a,o,r=d.templates[d.type],n=j.isPlainObject(i[u.results])&&!j.isEmptyObject(i[u.results]),c=Array.isArray(i[u.results])&&0<i[u.results].length,l="";return n||c?(0<d.maxResults&&(n?"standard"===d.type&&b.error(h.maxResults):i[u.results]=i[u.results].slice(0,d.maxResults)),d.highlightMatches&&(e=i[u.results],t=d.ignoreSearchCase?"i":"",s=b.get.value().split(""),c=d.ignoreDiacritics?"[̀-ͯ]?":"",n="(?![^<]*>)",a=new RegExp(n+"("+s.join(c+")(.*?)"+n+"(")+c+")",t),o=function(){return[].slice.call(arguments,1,2*s.length).map(function(e,t){return 1&t?e:"<mark>"+e+"</mark>"}).join("")},j.each(e,function(r,n){j.each(d.searchFields,function(e,t){var s;"string"!=typeof n[t]&&"number"!=typeof n[t]||(s="string"==typeof n[t]?n[t]:n[t].toString(),s=(s=d.ignoreDiacritics?s.normalize("NFD"):s).replace(/<\/?mark>/g,""),i[u.results][r][t]=s.replace(a,o))})})),D(r)?l=r(i,u,d.preserveHTML):b.error(h.noTemplate,!1)):d.showNoResults&&(l=b.displayMessage(h.noResults,"empty",h.noResultsHeader)),d.onResults.call(m,i),l},displayMessage:function(e,t,s){return t=t||"standard",b.debug("Displaying message",e,t,s),b.addResults(d.templates.message(e,t,s)),d.templates.message(e,t,s)},setting:function(e,t){if(j.isPlainObject(e))j.extend(!0,d,e);else{if(void 0===t)return d[e];d[e]=t}},internal:function(e,t){if(j.isPlainObject(e))j.extend(!0,b,e);else{if(void 0===t)return b[e];b[e]=t}},debug:function(){!d.silent&&d.debug&&(d.performance?b.performance.log(arguments):(b.debug=Function.prototype.bind.call(console.info,console,d.name+":"),b.debug.apply(console,arguments)))},verbose:function(){!d.silent&&d.verbose&&d.debug&&(d.performance?b.performance.log(arguments):(b.verbose=Function.prototype.bind.call(console.info,console,d.name+":"),b.verbose.apply(console,arguments)))},error:function(){d.silent||(b.error=Function.prototype.bind.call(console.error,console,d.name+":"),b.error.apply(console,arguments))},performance:{log:function(e){var t,s;d.performance&&(s=(t=Date.now())-(C||t),C=t,w.push({Name:e[0],Arguments:[].slice.call(e,1)||"",Element:m,"Execution Time":s})),clearTimeout(b.performance.timer),b.performance.timer=setTimeout(function(){b.performance.display()},500)},display:function(){var e=d.name+":",s=0;C=!1,clearTimeout(b.performance.timer),j.each(w,function(e,t){s+=t["Execution Time"]}),e+=" "+s+"ms",1<x.length&&(e+=" ("+x.length+")"),0<w.length&&(console.groupCollapsed(e),console.table?console.table(w):j.each(w,function(e,t){console.log(t.Name+": "+t["Execution Time"]+"ms")}),console.groupEnd()),w=[]}},invoke:function(r,e,t){var n,i,s,a=o;return e=e||A,t=t||m,"string"==typeof r&&void 0!==a&&(r=r.split(/[ .]/),n=r.length-1,j.each(r,function(e,t){var s=e!==n?t+r[e+1].charAt(0).toUpperCase()+r[e+1].slice(1):r;if(j.isPlainObject(a[s])&&e!==n)a=a[s];else{if(void 0!==a[s])return i=a[s],!1;{if(!j.isPlainObject(a[t])||e===n)return void 0!==a[t]?i=a[t]:b.error(h.method,r),!1;a=a[t]}}})),D(i)?s=i.apply(t,e):void 0!==i&&(s=i),Array.isArray(S)?S.push(s):void 0!==S?S=[S,s]:void 0!==s&&(S=s),i}};k?(void 0===o&&b.initialize(),b.invoke(T)):(void 0!==o&&o.invoke("destroy"),b.initialize())}),void 0!==S?S:this},j.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",highlightMatches:!1,ignoreDiacritics:!1,ignoreSearchCase:!0,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,t){},onResultsOpen:function(){},onResultsClose:function(){},className:{animating:"animating",active:"active",category:"category",empty:"empty",focus:"focus",hidden:"hidden",loading:"loading",results:"results",pressed:"down"},error:{source:"Cannot search. No source used, and Fomantic API module was not included",noResultsHeader:"No Results",noResults:"Your search returned no results",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",alt:"alt",price:"price",results:"results",title:"title",url:"url",action:"action",actionText:"text",actionURL:"url"},selector:{prompt:".prompt",remove:"> .icon.input > .remove.icon",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 e=/["&'<>`]/.test(e)?(e=(e=e.replace(/&(?![\d#a-z]{1,12};)/gi,"&")).replace(/["'<>`]/g,function(e){return s[e]})).replace(/<(\/)*mark>/g,"<$1mark>"):e},message:function(e,t,s){var r="";return void 0!==e&&void 0!==t&&(r+='<div class="message '+t+'">',s&&(r+='<div class="header">'+s+"</div>"),r+=' <div class="description">'+e+"</div>",r+="</div>"),r},category:function(e,s,r){var n="",i=j.fn.search.settings.templates.escape;return void 0!==e[s.categoryResults]&&(j.each(e[s.categoryResults],function(e,t){void 0!==t[s.results]&&0<t.results.length&&(n+='<div class="category">',void 0!==t[s.categoryName]&&(n+='<div class="name">'+i(t[s.categoryName],r)+"</div>"),n+='<div class="results">',j.each(t.results,function(e,t){n+=t[s.url]?'<a class="result" href="'+t[s.url].replace(/"/g,"")+'">':'<a class="result">',void 0!==t[s.image]&&(n+='<div class="image"> <img src="'+t[s.image].replace(/"/g,"")+(t[s.alt]?'" alt="'+t[s.alt].replace(/"/g,""):"")+'"></div>'),n+='<div class="content">',void 0!==t[s.price]&&(n+='<div class="price">'+i(t[s.price],r)+"</div>"),void 0!==t[s.title]&&(n+='<div class="title">'+i(t[s.title],r)+"</div>"),void 0!==t[s.description]&&(n+='<div class="description">'+i(t[s.description],r)+"</div>"),n+="</div>",n+="</a>"}),n+="</div>",n+="</div>")}),e[s.action]&&(n+=!1===s.actionURL?'<div class="action">'+i(e[s.action][s.actionText],r)+"</div>":'<a href="'+e[s.action][s.actionURL].replace(/"/g,"")+'" class="action">'+i(e[s.action][s.actionText],r)+"</a>"),n)},standard:function(e,s,r){var n="",i=j.fn.search.settings.templates.escape;return void 0!==e[s.results]&&(j.each(e[s.results],function(e,t){n+=t[s.url]?'<a class="result" href="'+t[s.url].replace(/"/g,"")+'">':'<a class="result">',void 0!==t[s.image]&&(n+='<div class="image"> <img src="'+t[s.image].replace(/"/g,"")+(t[s.alt]?'" alt="'+t[s.alt].replace(/"/g,""):"")+'"></div>'),n+='<div class="content">',void 0!==t[s.price]&&(n+='<div class="price">'+i(t[s.price],r)+"</div>"),void 0!==t[s.title]&&(n+='<div class="title">'+i(t[s.title],r)+"</div>"),void 0!==t[s.description]&&(n+='<div class="description">'+i(t[s.description],r)+"</div>"),n+="</div>",n+="</a>"}),e[s.action]&&(n+=!1===s.actionURL?'<div class="action">'+i(e[s.action][s.actionText],r)+"</div>":'<a href="'+e[s.action][s.actionURL].replace(/"/g,"")+'" class="action">'+i(e[s.action][s.actionText],r)+"</a>"),n)}}},j.extend(j.easing,{easeOutExpo:function(e){return 1===e?1:1-Math.pow(2,-10*e)}})}(jQuery,window,document);
|