/* * # Fomantic UI - 2.9.2 * https://github.com/fomantic/Fomantic-UI * https://fomantic-ui.com/ * * Copyright 2023 Contributors * Released under the MIT license * https://opensource.org/licenses/MIT * */ !function(T,e){"use strict";e=void 0!==e&&e.Math===Math?e:globalThis,T.fn.rating=function(f){var p,b=T(this),h=b.selector||"",y=Date.now(),C=[],x=f,R="string"==typeof x,A=[].slice.call(arguments,1);return b.each(function(){var e,a=T.isPlainObject(f)?T.extend(!0,{},T.fn.rating.settings,f):T.extend({},T.fn.rating.settings),n=a.namespace,o=a.className,l=a.error,t=a.metadata,i=a.selector,r=a.cssVars,s="."+n,c="module-"+n,d=this,u=T(this).data(c),g=T(this),v=g.find(i.icon),m={initialize:function(){m.verbose("Initializing rating module",a),0===v.length&&m.setup.layout(),a.interactive&&!m.is.disabled()?m.enable():m.disable(),m.set.initialLoad(),m.set.rating(m.get.initialRating()),m.remove.initialLoad(),m.instantiate()},instantiate:function(){m.verbose("Instantiating module",a),u=m,g.data(c,m)},destroy:function(){m.verbose("Destroying previous instance",u),m.remove.events(),g.removeData(c)},refresh:function(){v=g.find(i.icon)},setup:{layout:function(){var e=m.get.maxRating(),n=m.get.icon(),e=T.fn.rating.settings.templates.icon(e,n);m.debug("Generating icon html dynamically"),g.html(e),m.refresh()}},event:{mouseenter:function(){var e=T(this);e.nextAll().removeClass(o.selected),g.addClass(o.selected),e.addClass(o.selected).prevAll().addClass(o.selected)},mouseleave:function(){g.removeClass(o.selected),v.removeClass(o.selected)},click:function(){var e=T(this),n=m.get.rating(),e=v.index(e)+1;("auto"===a.clearable?1===v.length:a.clearable)&&n===e?m.clearRating():m.set.rating(e)}},clearRating:function(){m.debug("Clearing current rating"),m.set.rating(0)},bind:{events:function(){m.verbose("Binding events"),g.on("mouseenter"+s,i.icon,m.event.mouseenter).on("mouseleave"+s,i.icon,m.event.mouseleave).on("click"+s,i.icon,m.event.click)}},remove:{events:function(){m.verbose("Removing events"),g.off(s)},initialLoad:function(){e=!1}},enable:function(){m.debug("Setting rating to interactive mode"),m.bind.events(),g.removeClass(o.disabled)},disable:function(){m.debug("Setting rating to read-only mode"),m.remove.events(),g.addClass(o.disabled)},is:{initialLoad:function(){return e},disabled:function(){return g.hasClass(o.disabled)}},get:{icon:function(){var e=g.data(t.icon);return e&&g.removeData(t.icon),e||a.icon},initialRating:function(){return void 0!==g.data(t.rating)?(g.removeData(t.rating),g.data(t.rating)):a.initialRating},maxRating:function(){return void 0!==g.data(t.maxRating)?(g.removeData(t.maxRating),g.data(t.maxRating)):a.maxRating},rating:function(){var e=v.filter("."+o.active).length;return m.verbose("Current rating retrieved",e),e}},set:{rating:function(e){var n=Math.floor(0<=e-1?e-1:0),n=v.eq(n),t=e<=1?n:n.next(),i=e%1*100;g.removeClass(o.selected),v.removeClass(o.selected).removeClass(o.active).removeClass(o.partiallyActive),0',t++;return i}}}}(jQuery,window,document);