fomantic-ui 2.9.2-beta.6 → 2.9.2-beta.8

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.
Files changed (172) hide show
  1. package/dist/components/accordion.css +1 -1
  2. package/dist/components/accordion.js +4 -4
  3. package/dist/components/accordion.min.css +1 -1
  4. package/dist/components/accordion.min.js +2 -2
  5. package/dist/components/ad.css +2 -2
  6. package/dist/components/ad.min.css +1 -1
  7. package/dist/components/api.js +1 -1
  8. package/dist/components/api.min.js +1 -1
  9. package/dist/components/breadcrumb.css +1 -1
  10. package/dist/components/breadcrumb.min.css +1 -1
  11. package/dist/components/button.css +1 -1
  12. package/dist/components/button.min.css +1 -1
  13. package/dist/components/calendar.css +7 -1
  14. package/dist/components/calendar.js +1 -1
  15. package/dist/components/calendar.min.css +1 -1
  16. package/dist/components/calendar.min.js +1 -1
  17. package/dist/components/card.css +2 -2
  18. package/dist/components/card.min.css +1 -1
  19. package/dist/components/checkbox.css +1 -1
  20. package/dist/components/checkbox.js +1 -1
  21. package/dist/components/checkbox.min.css +1 -1
  22. package/dist/components/checkbox.min.js +1 -1
  23. package/dist/components/comment.css +2 -2
  24. package/dist/components/comment.min.css +1 -1
  25. package/dist/components/container.css +1 -1
  26. package/dist/components/container.min.css +1 -1
  27. package/dist/components/dimmer.css +1 -1
  28. package/dist/components/dimmer.js +3 -3
  29. package/dist/components/dimmer.min.css +1 -1
  30. package/dist/components/dimmer.min.js +2 -2
  31. package/dist/components/divider.css +1 -1
  32. package/dist/components/divider.min.css +1 -1
  33. package/dist/components/dropdown.css +1 -1
  34. package/dist/components/dropdown.js +3 -3
  35. package/dist/components/dropdown.min.css +1 -1
  36. package/dist/components/dropdown.min.js +2 -2
  37. package/dist/components/embed.css +2 -2
  38. package/dist/components/embed.js +2 -2
  39. package/dist/components/embed.min.css +2 -2
  40. package/dist/components/embed.min.js +2 -2
  41. package/dist/components/emoji.css +6 -0
  42. package/dist/components/feed.css +2 -2
  43. package/dist/components/feed.min.css +1 -1
  44. package/dist/components/flag.css +1 -1
  45. package/dist/components/flag.min.css +1 -1
  46. package/dist/components/flyout.css +7 -1
  47. package/dist/components/flyout.js +18 -30
  48. package/dist/components/flyout.min.css +1 -1
  49. package/dist/components/flyout.min.js +2 -2
  50. package/dist/components/form.css +1 -1
  51. package/dist/components/form.js +3 -3
  52. package/dist/components/form.min.css +1 -1
  53. package/dist/components/form.min.js +2 -2
  54. package/dist/components/grid.css +1 -1
  55. package/dist/components/grid.min.css +1 -1
  56. package/dist/components/header.css +1 -1
  57. package/dist/components/header.min.css +1 -1
  58. package/dist/components/icon.css +1 -1
  59. package/dist/components/icon.min.css +1 -1
  60. package/dist/components/image.css +1 -1
  61. package/dist/components/image.min.css +1 -1
  62. package/dist/components/input.css +1 -1
  63. package/dist/components/input.min.css +1 -1
  64. package/dist/components/item.css +3 -3
  65. package/dist/components/item.min.css +2 -2
  66. package/dist/components/label.css +1 -1
  67. package/dist/components/label.min.css +1 -1
  68. package/dist/components/list.css +2 -2
  69. package/dist/components/list.min.css +1 -1
  70. package/dist/components/loader.css +1 -1
  71. package/dist/components/loader.min.css +1 -1
  72. package/dist/components/menu.css +1 -1
  73. package/dist/components/menu.min.css +1 -1
  74. package/dist/components/message.css +2 -2
  75. package/dist/components/message.min.css +1 -1
  76. package/dist/components/modal.css +1 -1
  77. package/dist/components/modal.js +15 -8
  78. package/dist/components/modal.min.css +1 -1
  79. package/dist/components/modal.min.js +2 -2
  80. package/dist/components/nag.css +1 -1
  81. package/dist/components/nag.js +1 -1
  82. package/dist/components/nag.min.css +1 -1
  83. package/dist/components/nag.min.js +1 -1
  84. package/dist/components/placeholder.css +7 -1
  85. package/dist/components/placeholder.min.css +1 -1
  86. package/dist/components/popup.css +2 -2
  87. package/dist/components/popup.js +3 -3
  88. package/dist/components/popup.min.css +2 -2
  89. package/dist/components/popup.min.js +2 -2
  90. package/dist/components/progress.css +1 -1
  91. package/dist/components/progress.js +3 -29
  92. package/dist/components/progress.min.css +1 -1
  93. package/dist/components/progress.min.js +2 -2
  94. package/dist/components/rail.css +1 -1
  95. package/dist/components/rail.min.css +1 -1
  96. package/dist/components/rating.css +1 -1
  97. package/dist/components/rating.js +1 -1
  98. package/dist/components/rating.min.css +1 -1
  99. package/dist/components/rating.min.js +1 -1
  100. package/dist/components/reset.css +1 -1
  101. package/dist/components/reset.min.css +1 -1
  102. package/dist/components/reveal.css +1 -1
  103. package/dist/components/reveal.min.css +1 -1
  104. package/dist/components/search.css +1 -1
  105. package/dist/components/search.js +2 -2
  106. package/dist/components/search.min.css +1 -1
  107. package/dist/components/search.min.js +2 -2
  108. package/dist/components/segment.css +3 -3
  109. package/dist/components/segment.min.css +2 -2
  110. package/dist/components/shape.css +1 -1
  111. package/dist/components/shape.js +15 -37
  112. package/dist/components/shape.min.css +1 -1
  113. package/dist/components/shape.min.js +2 -2
  114. package/dist/components/sidebar.css +1 -1
  115. package/dist/components/sidebar.js +7 -27
  116. package/dist/components/sidebar.min.css +1 -1
  117. package/dist/components/sidebar.min.js +2 -2
  118. package/dist/components/site.css +1 -1
  119. package/dist/components/site.js +1 -1
  120. package/dist/components/site.min.css +1 -1
  121. package/dist/components/site.min.js +1 -1
  122. package/dist/components/slider.css +6 -0
  123. package/dist/components/slider.js +1 -1
  124. package/dist/components/slider.min.js +1 -1
  125. package/dist/components/state.js +1 -1
  126. package/dist/components/state.min.js +1 -1
  127. package/dist/components/statistic.css +2 -2
  128. package/dist/components/statistic.min.css +1 -1
  129. package/dist/components/step.css +4 -4
  130. package/dist/components/step.min.css +2 -2
  131. package/dist/components/sticky.css +1 -1
  132. package/dist/components/sticky.js +1 -1
  133. package/dist/components/sticky.min.css +1 -1
  134. package/dist/components/sticky.min.js +1 -1
  135. package/dist/components/tab.css +1 -1
  136. package/dist/components/tab.js +1 -1
  137. package/dist/components/tab.min.css +1 -1
  138. package/dist/components/tab.min.js +1 -1
  139. package/dist/components/table.css +2 -2
  140. package/dist/components/table.min.css +2 -2
  141. package/dist/components/text.css +7 -1
  142. package/dist/components/text.min.css +1 -1
  143. package/dist/components/toast.css +7 -1
  144. package/dist/components/toast.js +3 -3
  145. package/dist/components/toast.min.css +1 -1
  146. package/dist/components/toast.min.js +2 -2
  147. package/dist/components/transition.css +1 -1
  148. package/dist/components/transition.js +10 -61
  149. package/dist/components/transition.min.css +1 -1
  150. package/dist/components/transition.min.js +2 -2
  151. package/dist/components/visibility.js +1 -1
  152. package/dist/components/visibility.min.js +1 -1
  153. package/dist/semantic.css +96 -68
  154. package/dist/semantic.js +103 -227
  155. package/dist/semantic.min.css +2 -2
  156. package/dist/semantic.min.js +2 -2
  157. package/package.json +1 -1
  158. package/src/definitions/behaviors/form.js +2 -2
  159. package/src/definitions/modules/accordion.js +3 -3
  160. package/src/definitions/modules/dimmer.js +2 -2
  161. package/src/definitions/modules/dropdown.js +2 -2
  162. package/src/definitions/modules/embed.js +1 -1
  163. package/src/definitions/modules/flyout.js +17 -29
  164. package/src/definitions/modules/modal.js +13 -7
  165. package/src/definitions/modules/popup.js +2 -2
  166. package/src/definitions/modules/progress.js +2 -28
  167. package/src/definitions/modules/search.js +1 -1
  168. package/src/definitions/modules/shape.js +14 -36
  169. package/src/definitions/modules/sidebar.js +6 -26
  170. package/src/definitions/modules/toast.js +2 -2
  171. package/src/definitions/modules/transition.js +8 -56
  172. package/tasks/install.js +2 -2
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * # Fomantic-UI 2.9.1 - Flyout
2
+ * # Fomantic-UI 2.9.2-beta.8+8838309 - Flyout
3
3
  * https://github.com/fomantic/Fomantic-UI/
4
4
  *
5
5
  *
@@ -80,8 +80,8 @@
80
80
  elementNamespace,
81
81
  id,
82
82
  observer,
83
+ observeAttributes = false,
83
84
  currentScroll,
84
- transitionEvent,
85
85
 
86
86
  module
87
87
  ;
@@ -145,8 +145,6 @@
145
145
  });
146
146
  }
147
147
 
148
- transitionEvent = module.get.transitionEvent();
149
-
150
148
  // avoids locking rendering if initialized in onReady
151
149
  if (settings.delaySetup) {
152
150
  requestAnimationFrame(module.setup.layout);
@@ -498,7 +496,7 @@
498
496
  ;
499
497
  mutations.every(function (mutation) {
500
498
  if (mutation.type === 'attributes') {
501
- if (mutation.attributeName === 'disabled' || $(mutation.target).find(':input').addBack(':input')) {
499
+ if (observeAttributes && (mutation.attributeName === 'disabled' || $(mutation.target).find(':input').addBack(':input').length > 0)) {
502
500
  shouldRefreshInputs = true;
503
501
  }
504
502
  } else {
@@ -549,13 +547,14 @@
549
547
  if (!settings.dimPage) {
550
548
  return;
551
549
  }
552
- $inputs = $module.find('[tabindex], :input:enabled').filter(':visible').filter(function () {
550
+ $inputs = $module.find('a[href], [tabindex], :input:enabled').filter(':visible').filter(function () {
553
551
  return $(this).closest('.disabled').length === 0;
554
552
  });
555
- $module.removeAttr('tabindex');
556
553
  if ($inputs.length === 0) {
557
554
  $inputs = $module;
558
555
  $module.attr('tabindex', -1);
556
+ } else {
557
+ $module.removeAttr('tabindex');
559
558
  }
560
559
  $inputs.first()
561
560
  .on('keydown' + elementNamespace, module.event.inputKeyDown.first)
@@ -652,6 +651,7 @@
652
651
  }
653
652
  }
654
653
  module.set.dimmerStyles();
654
+ module.set.observeAttributes(false);
655
655
  module.pushPage(function () {
656
656
  callback.call(element);
657
657
  settings.onVisible.call(element);
@@ -660,6 +660,7 @@
660
660
  }
661
661
  module.save.focus();
662
662
  module.refreshInputs();
663
+ requestAnimationFrame(module.set.observeAttributes);
663
664
  });
664
665
  settings.onChange.call(element);
665
666
  } else {
@@ -680,6 +681,7 @@
680
681
  if (module.is.visible() || module.is.animating()) {
681
682
  module.debug('Hiding flyout', callback);
682
683
  module.refreshFlyouts();
684
+ module.set.observeAttributes(false);
683
685
  module.pullPage(function () {
684
686
  callback.call(element);
685
687
  if (isFunction(settings.onHidden)) {
@@ -752,13 +754,13 @@
752
754
  };
753
755
  transitionEnd = function (event) {
754
756
  if (event.target === $module[0]) {
755
- $module.off(transitionEvent + elementNamespace, transitionEnd);
757
+ $module.off('transitionend' + elementNamespace, transitionEnd);
756
758
  module.remove.animating();
757
759
  callback.call(element);
758
760
  }
759
761
  };
760
- $module.off(transitionEvent + elementNamespace);
761
- $module.on(transitionEvent + elementNamespace, transitionEnd);
762
+ $module.off('transitionend' + elementNamespace);
763
+ $module.on('transitionend' + elementNamespace, transitionEnd);
762
764
  requestAnimationFrame(animate);
763
765
  if (settings.dimPage && !module.othersVisible()) {
764
766
  requestAnimationFrame(dim);
@@ -793,7 +795,7 @@
793
795
  };
794
796
  transitionEnd = function (event) {
795
797
  if (event.target === $module[0]) {
796
- $module.off(transitionEvent + elementNamespace, transitionEnd);
798
+ $module.off('transitionend' + elementNamespace, transitionEnd);
797
799
  module.remove.animating();
798
800
  module.remove.closing();
799
801
  module.remove.overlay();
@@ -807,8 +809,8 @@
807
809
  callback.call(element);
808
810
  }
809
811
  };
810
- $module.off(transitionEvent + elementNamespace);
811
- $module.on(transitionEvent + elementNamespace, transitionEnd);
812
+ $module.off('transitionend' + elementNamespace);
813
+ $module.on('transitionend' + elementNamespace, transitionEnd);
812
814
  requestAnimationFrame(animate);
813
815
  },
814
816
 
@@ -831,6 +833,9 @@
831
833
  },
832
834
 
833
835
  set: {
836
+ observeAttributes: function (state) {
837
+ observeAttributes = state !== false;
838
+ },
834
839
  autofocus: function () {
835
840
  var
836
841
  $autofocus = $inputs.filter('[autofocus]'),
@@ -973,23 +978,6 @@
973
978
 
974
979
  return className.left;
975
980
  },
976
- transitionEvent: function () {
977
- var
978
- element = document.createElement('element'),
979
- transitions = {
980
- transition: 'transitionend',
981
- OTransition: 'oTransitionEnd',
982
- MozTransition: 'transitionend',
983
- WebkitTransition: 'webkitTransitionEnd',
984
- },
985
- transition
986
- ;
987
- for (transition in transitions) {
988
- if (element.style[transition] !== undefined) {
989
- return transitions[transition];
990
- }
991
- }
992
- },
993
981
  id: function () {
994
982
  return id;
995
983
  },
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * # Fomantic-UI 2.9.1 - Flyout
2
+ * # Fomantic-UI 2.9.2-beta.8+8838309 - Flyout
3
3
  * https://github.com/fomantic/Fomantic-UI/
4
4
  *
5
5
  *
@@ -1,5 +1,5 @@
1
1
  /*
2
- * # Fomantic UI - 2.9.1
2
+ * # Fomantic UI - 2.9.2-beta.8+8838309
3
3
  * https://github.com/fomantic/Fomantic-UI
4
4
  * https://fomantic-ui.com/
5
5
  *
@@ -8,4 +8,4 @@
8
8
  * https://opensource.org/licenses/MIT
9
9
  *
10
10
  */
11
- !function(W,Q,U){"use strict";function X(e){return"function"==typeof e&&"number"!=typeof e.nodeType}Q=void 0!==Q&&Q.Math===Math?Q:globalThis,W.fn.flyout=function(M){var O,e=W(this),D=W(Q),N=W(U),L=W("html"),B=W("head"),z=W("body"),I=e.selector||"",j=Date.now(),R=[],q=M,K="string"==typeof q,V=[].slice.call(arguments,1);return e.each(function(){var n,e,o,s,t,i,r,a,l=W.isPlainObject(M)?W.extend(!0,{},W.fn.flyout.settings,M):W.extend({},W.fn.flyout.settings),c=l.selector,u=l.className,d=l.namespace,f=l.fields,h=l.regExp,g=l.error,p="."+d,v="module-"+d,m=W(this),b=[Q,U].indexOf(l.context)<0?N.find(l.context):z,y=m.find(c.close),k=m.children(c.flyout),x=b.children(c.pusher),S=m.hasClass("flyout"),C=this,w=S?m.data(v):void 0,A=!1,T=b[0]===z[0],F="",E="",H=!1,P={initialize:function(){var s;P.debug("Initializing flyout",M),P.create.id(),S||(P.create.flyout(),X(l.onHidden)||(l.onHidden=function(){P.destroy(),m.remove()}),l.autoShow||(l.autoShow=!0)),m.addClass(l.class),""!==l.title&&m.find(c.header).html(P.helpers.escape(l.title,l.preserveHTML)).addClass(l.classTitle),""!==l.content&&m.find(c.content).html(P.helpers.escape(l.content,l.preserveHTML)).addClass(l.classContent),P.has.configActions()&&(0===(s=m.find(c.actions).addClass(l.classActions)).length?s=W("<div/>",{class:u.actions+" "+(l.classActions||"")}).appendTo(m):s.empty(),l.actions.forEach(function(e){var t=e[f.icon]?"<i "+(e[f.text]?'aria-hidden="true"':"")+' class="'+P.helpers.deQuote(e[f.icon])+' icon"></i>':"",n=P.helpers.escape(e[f.text]||"",l.preserveHTML),i=P.helpers.deQuote(e[f.class]||""),o=e[f.click]&&X(e[f.click])?e[f.click]:function(){};s.append(W("<button/>",{html:t+n,"aria-label":(e[f.text]||e[f.icon]||"").replace(/<[^>]+(>|$)/g,""),class:u.button+" "+i,on:{click:function(){!1!==o.call(C,m)&&P.hide()}}}))})),a=P.get.transitionEvent(),l.delaySetup?requestAnimationFrame(P.setup.layout):P.setup.layout(),requestAnimationFrame(function(){P.setup.cache()}),"left"!==P.get.direction()&&"right"!==P.get.direction()||(P.setup.heights(),P.bind.resize()),P.bind.events(),P.observeChanges(),P.instantiate(),l.autoShow&&P.show()},instantiate:function(){P.verbose("Storing instance of module",P),w=P,m.data(v,w)},create:{flyout:function(){var e;P.verbose("Programmaticaly create flyout",b),m=W("<div/>",{class:u.flyout,role:"dialog","aria-modal":l.dimPage}),l.closeIcon&&(y=W("<i/>",{class:u.close,role:"button",tabindex:0,"aria-label":l.text.close}),m.append(y)),""!==l.title&&(e="_"+P.get.id()+"title",m.attr("aria-labelledby",e),W("<div/>",{class:u.header,id:e}).appendTo(m)),""!==l.content&&(e="_"+P.get.id()+"desc",m.attr("aria-describedby",e),W("<div/>",{class:u.content,id:e}).appendTo(m)),P.has.configActions()&&W("<div/>",{class:u.actions}).appendTo(m),m.prependTo(b),C=m[0]},id:function(){t=(Math.random().toString(16)+"000000000").slice(2,10),s="."+t,P.verbose("Creating unique id for element",t)}},destroy:function(){i&&i.disconnect(),P.verbose("Destroying previous module for",m),m.off(p).removeData(v),P.is.ios()&&P.remove.ios(),y.off(s),n&&n.off(s),b.off(s),D.off(s),N.off(s)},event:{keyboard:function(e){e.which===l.keys.escape&&(l.closable?(P.debug("Escape key pressed hiding flyout"),P.hide()):P.debug("Escape key pressed, but closable is set to false"),e.preventDefault())},resize:function(){P.setup.heights()},focus:function(){P.is.visible()&&l.autofocus&&l.dimPage&&requestAnimationFrame(P.set.autofocus)},clickaway:function(e){var t;l.closable&&(t=0<x.find(e.target).length||x.is(e.target),e=b.is(e.target),t&&(P.verbose("User clicked on dimmed page"),P.hide()),e&&(P.verbose("User clicked on dimmable context (scaled out page)"),P.hide()))},close:function(e){P.hide()},closeKeyUp:function(e){e=e.which;e!==l.keys.enter&&e!==l.keys.space||P.hide()},inputKeyDown:{first:function(e){e.which===l.keys.tab&&e.shiftKey&&(n.last().trigger("focus"),e.preventDefault())},last:function(e){e.which!==l.keys.tab||e.shiftKey||(n.first().trigger("focus"),e.preventDefault())}},approve:function(e){A||!1===l.onApprove.call(P.element,W(this))?P.verbose("Approve callback returned false cancelling close"):(A=!0,P.hide(function(){A=!1}))},deny:function(e){A||!1===l.onDeny.call(P.element,W(this))?P.verbose("Deny callback returned false cancelling close"):(A=!0,P.hide(function(){A=!1}))},touch:function(e){},containScroll:function(e){C.scrollTop<=0&&(C.scrollTop=1),C.scrollTop+C.offsetHeight>=C.scrollHeight&&(C.scrollTop=C.scrollHeight-C.offsetHeight-1)},scroll:function(e){0===W(e.target).closest(c.flyout).length&&e.preventDefault()}},bind:{resize:function(){P.verbose("Adding resize event to window",D),D.on("resize"+s,P.event.resize)},events:function(){P.verbose("Attaching events"),m.on("click"+p,c.close,P.event.close).on("click"+p,c.approve,P.event.approve).on("click"+p,c.deny,P.event.deny),y.on("keyup"+s,P.event.closeKeyUp),D.on("focus"+s,P.event.focus)},clickaway:function(){P.verbose("Adding clickaway events to context",b),b.on("click"+s,P.event.clickaway).on("touchend"+s,P.event.clickaway)},scrollLock:function(){l.scrollLock&&(P.debug("Disabling page scroll"),(H=P.has.scrollbar())&&(P.save.bodyMargin(),P.set.bodyMargin()),b.addClass(u.locked)),P.verbose("Adding events to contain flyout scroll"),N.on("touchmove"+s,P.event.touch),m.on("scroll"+p,P.event.containScroll)}},unbind:{clickaway:function(){P.verbose("Removing clickaway events from context",b),b.off(s)},scrollLock:function(){P.verbose("Removing scroll lock from page"),H&&P.restore.bodyMargin(),b.removeClass(u.locked),N.off(s),m.off("scroll"+p)}},add:{inlineCSS:function(){var e=P.cache.width||m.outerWidth(),t=P.cache.height||m.outerHeight(),n=P.is.rtl(),i=P.get.direction(),t={left:e,right:-e,top:t,bottom:-t};n&&(P.verbose("RTL detected, flipping widths"),t.left=-e,t.right=e),n="<style>","left"===i||"right"===i?(P.debug("Adding CSS rules for animation distance",e),n+=" .ui.visible."+i+".flyout ~ .fixed, .ui.visible."+i+".flyout ~ .pusher { transform: translate3d("+t[i]+"px, 0, 0); }"):"top"!==i&&"bottom"!==i||(n+=" .ui.visible."+i+".flyout ~ .fixed, .ui.visible."+i+".flyout ~ .pusher { transform: translate3d(0, "+t[i]+"px, 0); }"),P.is.ie()&&("left"===i||"right"===i?(P.debug("Adding CSS rules for animation distance",e),n+=" body.pushable > .ui.visible."+i+".flyout ~ .pusher::after { transform: translate3d("+t[i]+"px, 0, 0); }"):"top"!==i&&"bottom"!==i||(n+=" body.pushable > .ui.visible."+i+".flyout ~ .pusher::after { transform: translate3d(0, "+t[i]+"px, 0); }"),n+=" body.pushable > .ui.visible.left.flyout ~ .ui.visible.right.flyout ~ .pusher::after, body.pushable > .ui.visible.right.flyout ~ .ui.visible.left.flyout ~ .pusher::after { transform: translate3d(0, 0, 0); }"),o=W(n+="</style>").appendTo(B),P.debug("Adding sizing css to head",o)},keyboardShortcuts:function(){P.verbose("Adding keyboard shortcuts"),N.on("keydown"+p,P.event.keyboard)}},observeChanges:function(){"MutationObserver"in Q&&((i=new MutationObserver(function(e){function o(e){for(var t=[],n=0,i=e.length;n<i;n++)Array.prototype.push.apply(t,o(e[n].childNodes)),t.push(e[n]);return t}var n=!1;e.every(function(e){var t;return"attributes"===e.type?"disabled"!==e.attributeName&&!W(e.target).find(":input").addBack(":input")||(n=!0):(t=W(o(e.addedNodes)).filter("a[href], [tabindex], :input:enabled").filter(":visible"),e=W(o(e.removedNodes)).filter("a[href], [tabindex], :input"),(0<t.length||0<e.length)&&(n=!0)),!n}),n&&P.refreshInputs()})).observe(C,{attributeFilter:["class","disabled"],attributes:!0,childList:!0,subtree:!0}),P.debug("Setting up mutation observer",i))},refresh:function(){P.verbose("Refreshing selector cache"),b=[Q,U].indexOf(l.context)<0?N.find(l.context):z,P.refreshFlyouts(),x=b.children(c.pusher),P.clear.cache()},refreshFlyouts:function(){P.verbose("Refreshing other flyouts"),k=b.children(c.flyout)},refreshInputs:function(){n&&n.off("keydown"+s),l.dimPage&&(n=m.find("[tabindex], :input:enabled").filter(":visible").filter(function(){return 0===W(this).closest(".disabled").length}),m.removeAttr("tabindex"),0===n.length&&(n=m).attr("tabindex",-1),n.first().on("keydown"+s,P.event.inputKeyDown.first),n.last().on("keydown"+s,P.event.inputKeyDown.last),l.autofocus&&0===n.filter(":focus").length&&P.set.autofocus())},setup:{cache:function(){P.cache={width:m.outerWidth(),height:m.outerHeight()}},layout:function(){0===b.children(c.pusher).length&&(P.debug("Adding wrapper element for flyout"),P.error(g.pusher),x=W('<div class="pusher" />'),b.children().not(c.omitted).not(k).wrapAll(x),P.refresh()),0!==m.nextAll(c.pusher).length&&m.nextAll(c.pusher)[0]===x[0]||(P.debug("Moved flyout to correct parent element"),P.error(g.movedFlyout,C),m.detach().prependTo(b),P.refresh()),P.is.mobile()&&m.addClass(u.fullscreen),P.clear.cache(),P.set.pushable(),P.set.direction()},heights:function(){P.debug("Setting up heights",m);var e=m.children(c.header),t=m.children(c.content),n=m.children(c.actions),e=(b.height()||0)-(e.outerHeight()||0)-(n.outerHeight()||0);0<e&&t.css("min-height",String(e)+"px")}},attachEvents:function(e,t){var n=W(e);t=X(P[t])?P[t]:P.toggle,0<n.length?(P.debug("Attaching flyout events to element",e,t),n.on("click"+p,t)):P.error(g.notFound,e)},show:function(e){e=X(e)?e:function(){},P.is.hidden()?!1===l.onShow.call(C)?P.verbose("Show callback returned false cancelling show"):(P.refresh(),P.othersActive()&&(P.debug("Other flyouts currently visible"),l.exclusive?P.hideOthers():A=!1),P.set.dimmerStyles(),P.pushPage(function(){e.call(C),l.onVisible.call(C),l.keyboardShortcuts&&P.add.keyboardShortcuts(),P.save.focus(),P.refreshInputs()}),l.onChange.call(C)):P.debug("Flyout is already visible")},hide:function(e){if(e=X(e)?e:function(){},!1===l.onHide.call(C,W(this)))return P.verbose("Hide callback returned false cancelling hide"),A=!1;(P.is.visible()||P.is.animating())&&(P.debug("Hiding flyout",e),P.refreshFlyouts(),P.pullPage(function(){e.call(C),X(l.onHidden)&&l.onHidden.call(C),P.restore.focus()}),l.onChange.call(C))},othersAnimating:function(){return 0<k.not(m).filter("."+u.animating).length},othersVisible:function(){return 0<k.not(m).filter("."+u.visible).length},othersActive:function(){return P.othersVisible()||P.othersAnimating()},hideOthers:function(e){var t=k.not(m).filter("."+u.visible),n=t.length,i=0;e=e||function(){},t.flyout("hide",function(){++i===n&&e()})},toggle:function(){P.verbose("Determining toggled direction"),P.is.hidden()?P.show():P.hide()},pushPage:function(t){var e,n,i;t=X(t)?t:function(){},P.set.overlay(),l.returnScroll&&(r=(T?D:b).scrollTop()),P.bind.scrollLock(),e=function(){P.bind.clickaway(),P.add.inlineCSS(),P.set.animating(),P.set.visible()},n=function(){P.set.dimmed()},i=function(e){e.target===m[0]&&(m.off(a+s,i),P.remove.animating(),t.call(C))},m.off(a+s),m.on(a+s,i),requestAnimationFrame(e),l.dimPage&&!P.othersVisible()&&requestAnimationFrame(n)},pullPage:function(t){var e,n;t=X(t)?t:function(){},P.verbose("Removing context push state",P.get.direction()),P.unbind.clickaway(),P.othersActive()||(P.unbind.scrollLock(),l.keyboardShortcuts&&P.remove.keyboardShortcuts()),e=function(){P.set.overlay(),P.set.animating(),l.dimPage&&!P.othersVisible()&&P.set.closing(),P.remove.visible()},n=function(e){e.target===m[0]&&(m.off(a+s,n),P.remove.animating(),P.remove.closing(),P.remove.overlay(),P.remove.inlineCSS(),l.returnScroll&&P.scrollBack(),l.dimPage&&!P.othersVisible()&&x.removeClass(u.dimmed),t.call(C))},m.off(a+s),m.on(a+s,n),requestAnimationFrame(e)},scrollToTop:function(){P.verbose("Scrolling to top of page to avoid animation issues"),m.scrollTop(0),(T?D:b)[0].scrollTo(0,0)},scrollBack:function(){P.verbose("Scrolling back to original page position"),(T?D:b)[0].scrollTo(0,r)},clear:{cache:function(){P.verbose("Clearing cached dimensions"),P.cache={}}},set:{autofocus:function(){var e=n.filter("[autofocus]"),t=n.filter(":input"),e=(0<e.length?e:0<t.length?t:n.filter(":not(i.close)")).first();0<(e=0===e.length&&0<n.length?n.first():e).length&&e.trigger("focus")},dimmerStyles:function(){l.blurring?x.addClass(u.blurring):x.removeClass(u.blurring)},bodyMargin:function(){var n=P.can.leftBodyScrollbar()?"left":"right";b.css((T?"margin-":"padding-")+n,E+"px"),b.find(c.bodyFixed.replace("right",n)).each(function(){var e=W(this),t="fixed"===e.css("position")?"padding-"+n:n;e.css(t,"calc("+e.css(t)+" + "+E+"px)")})},ios:function(){L.addClass(u.ios)},pushed:function(){b.addClass(u.pushed)},pushable:function(){b.addClass(u.pushable)},dimmed:function(){x.addClass(u.dimmed)},active:function(){m.addClass(u.active)},animating:function(){m.addClass(u.animating)},closing:function(){x.addClass(u.closing)},direction:function(e){e=e||P.get.direction(),m.addClass(u[e])},visible:function(){m.addClass(u.visible)},overlay:function(){m.addClass(u.overlay)}},remove:{inlineCSS:function(){P.debug("Removing inline css styles",o),o&&0<o.length&&o.remove()},keyboardShortcuts:function(){P.verbose("Removing keyboard shortcuts"),N.off("keydown"+p)},ios:function(){L.removeClass(u.ios)},pushed:function(){b.removeClass(u.pushed)},pushable:function(){b.removeClass(u.pushable)},active:function(){m.removeClass(u.active)},animating:function(){m.removeClass(u.animating)},closing:function(){x.removeClass(u.closing)},direction:function(e){e=e||P.get.direction(),m.removeClass(u[e])},visible:function(){m.removeClass(u.visible)},overlay:function(){m.removeClass(u.overlay)}},get:{direction:function(){return m.hasClass(u.top)?u.top:m.hasClass(u.right)?u.right:m.hasClass(u.bottom)?u.bottom:u.left},transitionEvent:function(){var e,t=U.createElement("element"),n={transition:"transitionend",OTransition:"oTransitionEnd",MozTransition:"transitionend",WebkitTransition:"webkitTransitionEnd"};for(e in n)if(void 0!==t.style[e])return n[e]},id:function(){return t},element:function(){return m},settings:function(){return l}},can:{leftBodyScrollbar:function(){return void 0===P.cache.leftBodyScrollbar&&(P.cache.leftBodyScrollbar=P.is.rtl()&&(P.is.iframe&&!P.is.firefox()||P.is.safari()||P.is.edge()||P.is.ie())),P.cache.leftBodyScrollbar}},save:{focus:function(){0<W(U.activeElement).closest(m).length||(e=W(U.activeElement).trigger("blur"))},bodyMargin:function(){F=b.css((T?"margin-":"padding-")+(P.can.leftBodyScrollbar()?"left":"right"));var e=parseInt(F.replace(/[^\d.]/g,""),10),t=T?Q.innerWidth-U.documentElement.clientWidth:b[0].offsetWidth-b[0].clientWidth;E=e+t}},is:{safari:function(){return void 0===P.cache.isSafari&&(P.cache.isSafari=/constructor/i.test(Q.HTMLElement)||!!Q.ApplePaySession),P.cache.isSafari},edge:function(){return void 0===P.cache.isEdge&&(P.cache.isEdge=!!Q.setImmediate&&!P.is.ie()),P.cache.isEdge},firefox:function(){return void 0===P.cache.isFirefox&&(P.cache.isFirefox=!!Q.InstallTrigger),P.cache.isFirefox},iframe:function(){return!(self===top)},ie:function(){var e,t;return void 0===P.cache.isIE&&(e=!Q.ActiveXObject&&"ActiveXObject"in Q,t="ActiveXObject"in Q,P.cache.isIE=e||t),P.cache.isIE},ios:function(){var e=navigator.userAgent,t=e.match(h.ios),n=e.match(h.mobileChrome);return!(!t||n)&&(P.verbose("Browser was found to be iOS",e),!0)},mobile:function(){var e=navigator.userAgent;return e.match(h.mobile)?(P.verbose("Browser was found to be mobile",e),!0):(P.verbose("Browser is not mobile, using regular transition",e),!1)},hidden:function(){return!P.is.visible()},visible:function(){return m.hasClass(u.visible)},animating:function(){return b.hasClass(u.animating)},rtl:function(){return void 0===P.cache.isRTL&&(P.cache.isRTL="rtl"===m.attr("dir")||"rtl"===m.css("direction")||"rtl"===z.attr("dir")||"rtl"===z.css("direction")||"rtl"===b.attr("dir")||"rtl"===b.css("direction")),P.cache.isRTL}},has:{configActions:function(){return Array.isArray(l.actions)&&0<l.actions.length},scrollbar:function(){return T||"hidden"!==b.css("overflow-y")}},restore:{focus:function(){e&&0<e.length&&l.restoreFocus&&e.trigger("focus")},bodyMargin:function(){var n=P.can.leftBodyScrollbar()?"left":"right";b.css((T?"margin-":"padding-")+n,F),b.find(c.bodyFixed.replace("right",n)).each(function(){var e=W(this),t="fixed"===e.css("position")?"padding-"+n:n;e.css(t,"")})}},helpers:{deQuote:function(e){return String(e).replace(/"/g,"")},escape:function(e,t){if(t)return e;var n={"<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#x27;","`":"&#x60;"};return/["&'<>`]/.test(e)?(e=e.replace(/&(?![\d#a-z]{1,12};)/gi,"&amp;")).replace(/["'<>`]/g,function(e){return n[e]}):e}},setting:function(e,t){if(P.debug("Changing setting",e,t),W.isPlainObject(e))W.extend(!0,l,e);else{if(void 0===t)return l[e];W.isPlainObject(l[e])?W.extend(!0,l[e],t):l[e]=t}},internal:function(e,t){if(W.isPlainObject(e))W.extend(!0,P,e);else{if(void 0===t)return P[e];P[e]=t}},debug:function(){!l.silent&&l.debug&&(l.performance?P.performance.log(arguments):(P.debug=Function.prototype.bind.call(console.info,console,l.name+":"),P.debug.apply(console,arguments)))},verbose:function(){!l.silent&&l.verbose&&l.debug&&(l.performance?P.performance.log(arguments):(P.verbose=Function.prototype.bind.call(console.info,console,l.name+":"),P.verbose.apply(console,arguments)))},error:function(){l.silent||(P.error=Function.prototype.bind.call(console.error,console,l.name+":"),P.error.apply(console,arguments))},performance:{log:function(e){var t,n;l.performance&&(n=(t=Date.now())-(j||t),j=t,R.push({Name:e[0],Arguments:[].slice.call(e,1)||"",Element:C,"Execution Time":n})),clearTimeout(P.performance.timer),P.performance.timer=setTimeout(P.performance.display,500)},display:function(){var e=l.name+":",n=0;j=!1,clearTimeout(P.performance.timer),W.each(R,function(e,t){n+=t["Execution Time"]}),e+=" "+n+"ms",I&&(e+=" '"+I+"'"),0<R.length&&(console.groupCollapsed(e),console.table?console.table(R):W.each(R,function(e,t){console.log(t.Name+": "+t["Execution Time"]+"ms")}),console.groupEnd()),R=[]}},invoke:function(i,e,t){var o,s,n,r=w;return e=e||V,t=C||t,"string"==typeof i&&void 0!==r&&(i=i.split(/[ .]/),o=i.length-1,W.each(i,function(e,t){var n=e!==o?t+i[e+1].charAt(0).toUpperCase()+i[e+1].slice(1):i;if(W.isPlainObject(r[n])&&e!==o)r=r[n];else{if(void 0!==r[n])return s=r[n],!1;{if(!W.isPlainObject(r[t])||e===o)return void 0!==r[t]?s=r[t]:P.error(g.method,i),!1;r=r[t]}}})),X(s)?n=s.apply(t,e):void 0!==s&&(n=s),Array.isArray(O)?O.push(n):void 0!==O?O=[O,n]:void 0!==n&&(O=n),s}};K?(void 0===w&&(X(l.templates[q])&&(l.autoShow=!0,l.className.flyout=l.className.template,l=W.extend(!0,{},l,l.templates[q].apply(P,V)),u=l.className,l.namespace,f=l.fields,g=l.error),P.initialize()),X(l.templates[q])||P.invoke(q)):(void 0!==w&&w.invoke("destroy"),P.initialize(),O=m)}),void 0!==O?O:this},W.flyout=W.fn.flyout,W.fn.flyout.settings={name:"Flyout",namespace:"flyout",silent:!1,debug:!1,verbose:!1,performance:!0,context:"body",exclusive:!1,closable:!0,autofocus:!0,restoreFocus:!0,dimPage:!0,scrollLock:!1,returnScroll:!1,delaySetup:!1,autoShow:!1,keyboardShortcuts:!0,title:"",content:"",class:"",classTitle:"",classContent:"",classActions:"",closeIcon:!1,actions:!1,preserveHTML:!0,fields:{class:"class",text:"text",icon:"icon",click:"click"},onChange:function(){},onShow:function(){},onHide:function(){return!0},onHidden:!1,onVisible:function(){},onApprove:function(){},onDeny:function(){},keys:{space:32,enter:13,escape:27,tab:9},className:{flyout:"ui flyout",close:"close icon",header:"ui header",content:"content",actions:"actions",active:"active",animating:"animating",blurring:"blurring",closing:"closing",dimmed:"dimmed",ios:"ios",locked:"locked",pushable:"pushable",pushed:"pushed",right:"right",top:"top",left:"left",bottom:"bottom",visible:"visible",overlay:"overlay",fullscreen:"fullscreen",template:"ui flyout",button:"ui button",ok:"positive",cancel:"negative",prompt:"ui fluid input"},selector:{bodyFixed:"> .ui.fixed.menu, > .ui.right.toast-container, > .ui.right.sidebar, > .ui.right.flyout, > .ui.fixed.nag, > .ui.fixed.nag > .close",fixed:".fixed",omitted:"script, link, style, .ui.modal, .ui.dimmer, .ui.nag, .ui.fixed",pusher:".pusher",flyout:".ui.flyout",header:".ui.header",content:".content",actions:".actions",close:".close",approve:".actions .positive, .actions .approve, .actions .ok",deny:".actions .negative, .actions .deny, .actions .cancel"},regExp:{ios:/(iPad|iPhone|iPod)/g,mobileChrome:/(CriOS)/g,mobile:/Mobile|iP(hone|od|ad)|Android|BlackBerry|IEMobile|Kindle|NetFront|Silk-Accelerated|(hpw|web)OS|Fennec|Minimo|Opera M(obi|ini)|Blazer|Dolfin|Dolphin|Skyfire|Zune/g},error:{method:"The method you called is not defined.",pusher:"Had to add pusher element. For optimal performance make sure body content is inside a pusher element",movedFlyout:"Had to move flyout. For optimal performance make sure flyout and pusher are direct children of your body tag",notFound:"There were no elements that matched the specified selector"},text:{ok:"Ok",cancel:"Cancel",close:"Close"}},W.fn.flyout.settings.templates={getArguments:function(e){e=[].slice.call(e);return W.isPlainObject(e[0])?W.extend({handler:function(){},content:"",title:""},e[0]):(X(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);return{title:t.title,content:t.content,actions:[{text:e.text.ok,class:e.className.ok,click:t.handler}]}},confirm:function(){var e=this.get.settings(),t=e.templates.getArguments(arguments);return{title:t.title,content:t.content,actions:[{text:e.text.ok,class:e.className.ok,click:function(){t.handler(!0)}},{text:e.text.cancel,class:e.className.cancel,click:function(){t.handler(!1)}}]}},prompt:function(){var t=this,e=this.get.settings(),n=e.templates.getArguments(arguments);return 0===W(W.parseHTML(n.content)).filter(".ui.input").length&&(n.content+='<p><div class="'+e.className.prompt+'"><input placeholder="'+this.helpers.deQuote(n.placeholder||"")+'" type="text" value="'+this.helpers.deQuote(n.defaultValue||"")+'"></div></p>'),{title:n.title,content:n.content,actions:[{text:e.text.ok,class:e.className.ok,click:function(){var e=t.get.settings(),e=t.get.element().find(e.selector.prompt)[0];n.handler(W(e).val())}},{text:e.text.cancel,class:e.className.cancel,click:function(){n.handler(null)}}]}}}}(jQuery,window,document);
11
+ !function(Q,W,U){"use strict";function X(e){return"function"==typeof e&&"number"!=typeof e.nodeType}W=void 0!==W&&W.Math===Math?W:globalThis,Q.fn.flyout=function(M){var O,e=Q(this),D=Q(W),N=Q(U),L=Q("html"),B=Q("head"),z=Q("body"),I=e.selector||"",j=Date.now(),R=[],q=M,K="string"==typeof q,V=[].slice.call(arguments,1);return e.each(function(){var n,e,o,s,t,i,r,a=Q.isPlainObject(M)?Q.extend(!0,{},Q.fn.flyout.settings,M):Q.extend({},Q.fn.flyout.settings),l=a.selector,c=a.className,u=a.namespace,d=a.fields,f=a.regExp,h=a.error,g="."+u,p="module-"+u,v=Q(this),b=[W,U].indexOf(a.context)<0?N.find(a.context):z,m=v.find(l.close),y=v.children(l.flyout),k=b.children(l.pusher),x=v.hasClass("flyout"),S=this,A=x?v.data(p):void 0,C=!1,w=b[0]===z[0],T="",F="",H=!1,P=!1,E={initialize:function(){var s;E.debug("Initializing flyout",M),E.create.id(),x||(E.create.flyout(),X(a.onHidden)||(a.onHidden=function(){E.destroy(),v.remove()}),a.autoShow||(a.autoShow=!0)),v.addClass(a.class),""!==a.title&&v.find(l.header).html(E.helpers.escape(a.title,a.preserveHTML)).addClass(a.classTitle),""!==a.content&&v.find(l.content).html(E.helpers.escape(a.content,a.preserveHTML)).addClass(a.classContent),E.has.configActions()&&(0===(s=v.find(l.actions).addClass(a.classActions)).length?s=Q("<div/>",{class:c.actions+" "+(a.classActions||"")}).appendTo(v):s.empty(),a.actions.forEach(function(e){var t=e[d.icon]?"<i "+(e[d.text]?'aria-hidden="true"':"")+' class="'+E.helpers.deQuote(e[d.icon])+' icon"></i>':"",n=E.helpers.escape(e[d.text]||"",a.preserveHTML),i=E.helpers.deQuote(e[d.class]||""),o=e[d.click]&&X(e[d.click])?e[d.click]:function(){};s.append(Q("<button/>",{html:t+n,"aria-label":(e[d.text]||e[d.icon]||"").replace(/<[^>]+(>|$)/g,""),class:c.button+" "+i,on:{click:function(){!1!==o.call(S,v)&&E.hide()}}}))})),a.delaySetup?requestAnimationFrame(E.setup.layout):E.setup.layout(),requestAnimationFrame(function(){E.setup.cache()}),"left"!==E.get.direction()&&"right"!==E.get.direction()||(E.setup.heights(),E.bind.resize()),E.bind.events(),E.observeChanges(),E.instantiate(),a.autoShow&&E.show()},instantiate:function(){E.verbose("Storing instance of module",E),A=E,v.data(p,A)},create:{flyout:function(){var e;E.verbose("Programmaticaly create flyout",b),v=Q("<div/>",{class:c.flyout,role:"dialog","aria-modal":a.dimPage}),a.closeIcon&&(m=Q("<i/>",{class:c.close,role:"button",tabindex:0,"aria-label":a.text.close}),v.append(m)),""!==a.title&&(e="_"+E.get.id()+"title",v.attr("aria-labelledby",e),Q("<div/>",{class:c.header,id:e}).appendTo(v)),""!==a.content&&(e="_"+E.get.id()+"desc",v.attr("aria-describedby",e),Q("<div/>",{class:c.content,id:e}).appendTo(v)),E.has.configActions()&&Q("<div/>",{class:c.actions}).appendTo(v),v.prependTo(b),S=v[0]},id:function(){t=(Math.random().toString(16)+"000000000").slice(2,10),s="."+t,E.verbose("Creating unique id for element",t)}},destroy:function(){i&&i.disconnect(),E.verbose("Destroying previous module for",v),v.off(g).removeData(p),E.is.ios()&&E.remove.ios(),m.off(s),n&&n.off(s),b.off(s),D.off(s),N.off(s)},event:{keyboard:function(e){e.which===a.keys.escape&&(a.closable?(E.debug("Escape key pressed hiding flyout"),E.hide()):E.debug("Escape key pressed, but closable is set to false"),e.preventDefault())},resize:function(){E.setup.heights()},focus:function(){E.is.visible()&&a.autofocus&&a.dimPage&&requestAnimationFrame(E.set.autofocus)},clickaway:function(e){var t;a.closable&&(t=0<k.find(e.target).length||k.is(e.target),e=b.is(e.target),t&&(E.verbose("User clicked on dimmed page"),E.hide()),e&&(E.verbose("User clicked on dimmable context (scaled out page)"),E.hide()))},close:function(e){E.hide()},closeKeyUp:function(e){e=e.which;e!==a.keys.enter&&e!==a.keys.space||E.hide()},inputKeyDown:{first:function(e){e.which===a.keys.tab&&e.shiftKey&&(n.last().trigger("focus"),e.preventDefault())},last:function(e){e.which!==a.keys.tab||e.shiftKey||(n.first().trigger("focus"),e.preventDefault())}},approve:function(e){C||!1===a.onApprove.call(E.element,Q(this))?E.verbose("Approve callback returned false cancelling close"):(C=!0,E.hide(function(){C=!1}))},deny:function(e){C||!1===a.onDeny.call(E.element,Q(this))?E.verbose("Deny callback returned false cancelling close"):(C=!0,E.hide(function(){C=!1}))},touch:function(e){},containScroll:function(e){S.scrollTop<=0&&(S.scrollTop=1),S.scrollTop+S.offsetHeight>=S.scrollHeight&&(S.scrollTop=S.scrollHeight-S.offsetHeight-1)},scroll:function(e){0===Q(e.target).closest(l.flyout).length&&e.preventDefault()}},bind:{resize:function(){E.verbose("Adding resize event to window",D),D.on("resize"+s,E.event.resize)},events:function(){E.verbose("Attaching events"),v.on("click"+g,l.close,E.event.close).on("click"+g,l.approve,E.event.approve).on("click"+g,l.deny,E.event.deny),m.on("keyup"+s,E.event.closeKeyUp),D.on("focus"+s,E.event.focus)},clickaway:function(){E.verbose("Adding clickaway events to context",b),b.on("click"+s,E.event.clickaway).on("touchend"+s,E.event.clickaway)},scrollLock:function(){a.scrollLock&&(E.debug("Disabling page scroll"),(H=E.has.scrollbar())&&(E.save.bodyMargin(),E.set.bodyMargin()),b.addClass(c.locked)),E.verbose("Adding events to contain flyout scroll"),N.on("touchmove"+s,E.event.touch),v.on("scroll"+g,E.event.containScroll)}},unbind:{clickaway:function(){E.verbose("Removing clickaway events from context",b),b.off(s)},scrollLock:function(){E.verbose("Removing scroll lock from page"),H&&E.restore.bodyMargin(),b.removeClass(c.locked),N.off(s),v.off("scroll"+g)}},add:{inlineCSS:function(){var e=E.cache.width||v.outerWidth(),t=E.cache.height||v.outerHeight(),n=E.is.rtl(),i=E.get.direction(),t={left:e,right:-e,top:t,bottom:-t};n&&(E.verbose("RTL detected, flipping widths"),t.left=-e,t.right=e),n="<style>","left"===i||"right"===i?(E.debug("Adding CSS rules for animation distance",e),n+=" .ui.visible."+i+".flyout ~ .fixed, .ui.visible."+i+".flyout ~ .pusher { transform: translate3d("+t[i]+"px, 0, 0); }"):"top"!==i&&"bottom"!==i||(n+=" .ui.visible."+i+".flyout ~ .fixed, .ui.visible."+i+".flyout ~ .pusher { transform: translate3d(0, "+t[i]+"px, 0); }"),E.is.ie()&&("left"===i||"right"===i?(E.debug("Adding CSS rules for animation distance",e),n+=" body.pushable > .ui.visible."+i+".flyout ~ .pusher::after { transform: translate3d("+t[i]+"px, 0, 0); }"):"top"!==i&&"bottom"!==i||(n+=" body.pushable > .ui.visible."+i+".flyout ~ .pusher::after { transform: translate3d(0, "+t[i]+"px, 0); }"),n+=" body.pushable > .ui.visible.left.flyout ~ .ui.visible.right.flyout ~ .pusher::after, body.pushable > .ui.visible.right.flyout ~ .ui.visible.left.flyout ~ .pusher::after { transform: translate3d(0, 0, 0); }"),o=Q(n+="</style>").appendTo(B),E.debug("Adding sizing css to head",o)},keyboardShortcuts:function(){E.verbose("Adding keyboard shortcuts"),N.on("keydown"+g,E.event.keyboard)}},observeChanges:function(){"MutationObserver"in W&&((i=new MutationObserver(function(e){function o(e){for(var t=[],n=0,i=e.length;n<i;n++)Array.prototype.push.apply(t,o(e[n].childNodes)),t.push(e[n]);return t}var n=!1;e.every(function(e){var t;return"attributes"===e.type?P&&("disabled"===e.attributeName||0<Q(e.target).find(":input").addBack(":input").length)&&(n=!0):(t=Q(o(e.addedNodes)).filter("a[href], [tabindex], :input:enabled").filter(":visible"),e=Q(o(e.removedNodes)).filter("a[href], [tabindex], :input"),(0<t.length||0<e.length)&&(n=!0)),!n}),n&&E.refreshInputs()})).observe(S,{attributeFilter:["class","disabled"],attributes:!0,childList:!0,subtree:!0}),E.debug("Setting up mutation observer",i))},refresh:function(){E.verbose("Refreshing selector cache"),b=[W,U].indexOf(a.context)<0?N.find(a.context):z,E.refreshFlyouts(),k=b.children(l.pusher),E.clear.cache()},refreshFlyouts:function(){E.verbose("Refreshing other flyouts"),y=b.children(l.flyout)},refreshInputs:function(){n&&n.off("keydown"+s),a.dimPage&&(0===(n=v.find("a[href], [tabindex], :input:enabled").filter(":visible").filter(function(){return 0===Q(this).closest(".disabled").length})).length?(n=v).attr("tabindex",-1):v.removeAttr("tabindex"),n.first().on("keydown"+s,E.event.inputKeyDown.first),n.last().on("keydown"+s,E.event.inputKeyDown.last),a.autofocus&&0===n.filter(":focus").length&&E.set.autofocus())},setup:{cache:function(){E.cache={width:v.outerWidth(),height:v.outerHeight()}},layout:function(){0===b.children(l.pusher).length&&(E.debug("Adding wrapper element for flyout"),E.error(h.pusher),k=Q('<div class="pusher" />'),b.children().not(l.omitted).not(y).wrapAll(k),E.refresh()),0!==v.nextAll(l.pusher).length&&v.nextAll(l.pusher)[0]===k[0]||(E.debug("Moved flyout to correct parent element"),E.error(h.movedFlyout,S),v.detach().prependTo(b),E.refresh()),E.is.mobile()&&v.addClass(c.fullscreen),E.clear.cache(),E.set.pushable(),E.set.direction()},heights:function(){E.debug("Setting up heights",v);var e=v.children(l.header),t=v.children(l.content),n=v.children(l.actions),e=(b.height()||0)-(e.outerHeight()||0)-(n.outerHeight()||0);0<e&&t.css("min-height",String(e)+"px")}},attachEvents:function(e,t){var n=Q(e);t=X(E[t])?E[t]:E.toggle,0<n.length?(E.debug("Attaching flyout events to element",e,t),n.on("click"+g,t)):E.error(h.notFound,e)},show:function(e){e=X(e)?e:function(){},E.is.hidden()?!1===a.onShow.call(S)?E.verbose("Show callback returned false cancelling show"):(E.refresh(),E.othersActive()&&(E.debug("Other flyouts currently visible"),a.exclusive?E.hideOthers():C=!1),E.set.dimmerStyles(),E.set.observeAttributes(!1),E.pushPage(function(){e.call(S),a.onVisible.call(S),a.keyboardShortcuts&&E.add.keyboardShortcuts(),E.save.focus(),E.refreshInputs(),requestAnimationFrame(E.set.observeAttributes)}),a.onChange.call(S)):E.debug("Flyout is already visible")},hide:function(e){if(e=X(e)?e:function(){},!1===a.onHide.call(S,Q(this)))return E.verbose("Hide callback returned false cancelling hide"),C=!1;(E.is.visible()||E.is.animating())&&(E.debug("Hiding flyout",e),E.refreshFlyouts(),E.set.observeAttributes(!1),E.pullPage(function(){e.call(S),X(a.onHidden)&&a.onHidden.call(S),E.restore.focus()}),a.onChange.call(S))},othersAnimating:function(){return 0<y.not(v).filter("."+c.animating).length},othersVisible:function(){return 0<y.not(v).filter("."+c.visible).length},othersActive:function(){return E.othersVisible()||E.othersAnimating()},hideOthers:function(e){var t=y.not(v).filter("."+c.visible),n=t.length,i=0;e=e||function(){},t.flyout("hide",function(){++i===n&&e()})},toggle:function(){E.verbose("Determining toggled direction"),E.is.hidden()?E.show():E.hide()},pushPage:function(t){var e,n,i;t=X(t)?t:function(){},E.set.overlay(),a.returnScroll&&(r=(w?D:b).scrollTop()),E.bind.scrollLock(),e=function(){E.bind.clickaway(),E.add.inlineCSS(),E.set.animating(),E.set.visible()},n=function(){E.set.dimmed()},i=function(e){e.target===v[0]&&(v.off("transitionend"+s,i),E.remove.animating(),t.call(S))},v.off("transitionend"+s),v.on("transitionend"+s,i),requestAnimationFrame(e),a.dimPage&&!E.othersVisible()&&requestAnimationFrame(n)},pullPage:function(t){var e,n;t=X(t)?t:function(){},E.verbose("Removing context push state",E.get.direction()),E.unbind.clickaway(),E.othersActive()||(E.unbind.scrollLock(),a.keyboardShortcuts&&E.remove.keyboardShortcuts()),e=function(){E.set.overlay(),E.set.animating(),a.dimPage&&!E.othersVisible()&&E.set.closing(),E.remove.visible()},n=function(e){e.target===v[0]&&(v.off("transitionend"+s,n),E.remove.animating(),E.remove.closing(),E.remove.overlay(),E.remove.inlineCSS(),a.returnScroll&&E.scrollBack(),a.dimPage&&!E.othersVisible()&&k.removeClass(c.dimmed),t.call(S))},v.off("transitionend"+s),v.on("transitionend"+s,n),requestAnimationFrame(e)},scrollToTop:function(){E.verbose("Scrolling to top of page to avoid animation issues"),v.scrollTop(0),(w?D:b)[0].scrollTo(0,0)},scrollBack:function(){E.verbose("Scrolling back to original page position"),(w?D:b)[0].scrollTo(0,r)},clear:{cache:function(){E.verbose("Clearing cached dimensions"),E.cache={}}},set:{observeAttributes:function(e){P=!1!==e},autofocus:function(){var e=n.filter("[autofocus]"),t=n.filter(":input"),e=(0<e.length?e:0<t.length?t:n.filter(":not(i.close)")).first();0<(e=0===e.length&&0<n.length?n.first():e).length&&e.trigger("focus")},dimmerStyles:function(){a.blurring?k.addClass(c.blurring):k.removeClass(c.blurring)},bodyMargin:function(){var n=E.can.leftBodyScrollbar()?"left":"right";b.css((w?"margin-":"padding-")+n,F+"px"),b.find(l.bodyFixed.replace("right",n)).each(function(){var e=Q(this),t="fixed"===e.css("position")?"padding-"+n:n;e.css(t,"calc("+e.css(t)+" + "+F+"px)")})},ios:function(){L.addClass(c.ios)},pushed:function(){b.addClass(c.pushed)},pushable:function(){b.addClass(c.pushable)},dimmed:function(){k.addClass(c.dimmed)},active:function(){v.addClass(c.active)},animating:function(){v.addClass(c.animating)},closing:function(){k.addClass(c.closing)},direction:function(e){e=e||E.get.direction(),v.addClass(c[e])},visible:function(){v.addClass(c.visible)},overlay:function(){v.addClass(c.overlay)}},remove:{inlineCSS:function(){E.debug("Removing inline css styles",o),o&&0<o.length&&o.remove()},keyboardShortcuts:function(){E.verbose("Removing keyboard shortcuts"),N.off("keydown"+g)},ios:function(){L.removeClass(c.ios)},pushed:function(){b.removeClass(c.pushed)},pushable:function(){b.removeClass(c.pushable)},active:function(){v.removeClass(c.active)},animating:function(){v.removeClass(c.animating)},closing:function(){k.removeClass(c.closing)},direction:function(e){e=e||E.get.direction(),v.removeClass(c[e])},visible:function(){v.removeClass(c.visible)},overlay:function(){v.removeClass(c.overlay)}},get:{direction:function(){return v.hasClass(c.top)?c.top:v.hasClass(c.right)?c.right:v.hasClass(c.bottom)?c.bottom:c.left},id:function(){return t},element:function(){return v},settings:function(){return a}},can:{leftBodyScrollbar:function(){return void 0===E.cache.leftBodyScrollbar&&(E.cache.leftBodyScrollbar=E.is.rtl()&&(E.is.iframe&&!E.is.firefox()||E.is.safari()||E.is.edge()||E.is.ie())),E.cache.leftBodyScrollbar}},save:{focus:function(){0<Q(U.activeElement).closest(v).length||(e=Q(U.activeElement).trigger("blur"))},bodyMargin:function(){T=b.css((w?"margin-":"padding-")+(E.can.leftBodyScrollbar()?"left":"right"));var e=parseInt(T.replace(/[^\d.]/g,""),10),t=w?W.innerWidth-U.documentElement.clientWidth:b[0].offsetWidth-b[0].clientWidth;F=e+t}},is:{safari:function(){return void 0===E.cache.isSafari&&(E.cache.isSafari=/constructor/i.test(W.HTMLElement)||!!W.ApplePaySession),E.cache.isSafari},edge:function(){return void 0===E.cache.isEdge&&(E.cache.isEdge=!!W.setImmediate&&!E.is.ie()),E.cache.isEdge},firefox:function(){return void 0===E.cache.isFirefox&&(E.cache.isFirefox=!!W.InstallTrigger),E.cache.isFirefox},iframe:function(){return!(self===top)},ie:function(){var e,t;return void 0===E.cache.isIE&&(e=!W.ActiveXObject&&"ActiveXObject"in W,t="ActiveXObject"in W,E.cache.isIE=e||t),E.cache.isIE},ios:function(){var e=navigator.userAgent,t=e.match(f.ios),n=e.match(f.mobileChrome);return!(!t||n)&&(E.verbose("Browser was found to be iOS",e),!0)},mobile:function(){var e=navigator.userAgent;return e.match(f.mobile)?(E.verbose("Browser was found to be mobile",e),!0):(E.verbose("Browser is not mobile, using regular transition",e),!1)},hidden:function(){return!E.is.visible()},visible:function(){return v.hasClass(c.visible)},animating:function(){return b.hasClass(c.animating)},rtl:function(){return void 0===E.cache.isRTL&&(E.cache.isRTL="rtl"===v.attr("dir")||"rtl"===v.css("direction")||"rtl"===z.attr("dir")||"rtl"===z.css("direction")||"rtl"===b.attr("dir")||"rtl"===b.css("direction")),E.cache.isRTL}},has:{configActions:function(){return Array.isArray(a.actions)&&0<a.actions.length},scrollbar:function(){return w||"hidden"!==b.css("overflow-y")}},restore:{focus:function(){e&&0<e.length&&a.restoreFocus&&e.trigger("focus")},bodyMargin:function(){var n=E.can.leftBodyScrollbar()?"left":"right";b.css((w?"margin-":"padding-")+n,T),b.find(l.bodyFixed.replace("right",n)).each(function(){var e=Q(this),t="fixed"===e.css("position")?"padding-"+n:n;e.css(t,"")})}},helpers:{deQuote:function(e){return String(e).replace(/"/g,"")},escape:function(e,t){if(t)return e;var n={"<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#x27;","`":"&#x60;"};return/["&'<>`]/.test(e)?(e=e.replace(/&(?![\d#a-z]{1,12};)/gi,"&amp;")).replace(/["'<>`]/g,function(e){return n[e]}):e}},setting:function(e,t){if(E.debug("Changing setting",e,t),Q.isPlainObject(e))Q.extend(!0,a,e);else{if(void 0===t)return a[e];Q.isPlainObject(a[e])?Q.extend(!0,a[e],t):a[e]=t}},internal:function(e,t){if(Q.isPlainObject(e))Q.extend(!0,E,e);else{if(void 0===t)return E[e];E[e]=t}},debug:function(){!a.silent&&a.debug&&(a.performance?E.performance.log(arguments):(E.debug=Function.prototype.bind.call(console.info,console,a.name+":"),E.debug.apply(console,arguments)))},verbose:function(){!a.silent&&a.verbose&&a.debug&&(a.performance?E.performance.log(arguments):(E.verbose=Function.prototype.bind.call(console.info,console,a.name+":"),E.verbose.apply(console,arguments)))},error:function(){a.silent||(E.error=Function.prototype.bind.call(console.error,console,a.name+":"),E.error.apply(console,arguments))},performance:{log:function(e){var t,n;a.performance&&(n=(t=Date.now())-(j||t),j=t,R.push({Name:e[0],Arguments:[].slice.call(e,1)||"",Element:S,"Execution Time":n})),clearTimeout(E.performance.timer),E.performance.timer=setTimeout(E.performance.display,500)},display:function(){var e=a.name+":",n=0;j=!1,clearTimeout(E.performance.timer),Q.each(R,function(e,t){n+=t["Execution Time"]}),e+=" "+n+"ms",I&&(e+=" '"+I+"'"),0<R.length&&(console.groupCollapsed(e),console.table?console.table(R):Q.each(R,function(e,t){console.log(t.Name+": "+t["Execution Time"]+"ms")}),console.groupEnd()),R=[]}},invoke:function(i,e,t){var o,s,n,r=A;return e=e||V,t=S||t,"string"==typeof i&&void 0!==r&&(i=i.split(/[ .]/),o=i.length-1,Q.each(i,function(e,t){var n=e!==o?t+i[e+1].charAt(0).toUpperCase()+i[e+1].slice(1):i;if(Q.isPlainObject(r[n])&&e!==o)r=r[n];else{if(void 0!==r[n])return s=r[n],!1;{if(!Q.isPlainObject(r[t])||e===o)return void 0!==r[t]?s=r[t]:E.error(h.method,i),!1;r=r[t]}}})),X(s)?n=s.apply(t,e):void 0!==s&&(n=s),Array.isArray(O)?O.push(n):void 0!==O?O=[O,n]:void 0!==n&&(O=n),s}};K?(void 0===A&&(X(a.templates[q])&&(a.autoShow=!0,a.className.flyout=a.className.template,a=Q.extend(!0,{},a,a.templates[q].apply(E,V)),c=a.className,a.namespace,d=a.fields,h=a.error),E.initialize()),X(a.templates[q])||E.invoke(q)):(void 0!==A&&A.invoke("destroy"),E.initialize(),O=v)}),void 0!==O?O:this},Q.flyout=Q.fn.flyout,Q.fn.flyout.settings={name:"Flyout",namespace:"flyout",silent:!1,debug:!1,verbose:!1,performance:!0,context:"body",exclusive:!1,closable:!0,autofocus:!0,restoreFocus:!0,dimPage:!0,scrollLock:!1,returnScroll:!1,delaySetup:!1,autoShow:!1,keyboardShortcuts:!0,title:"",content:"",class:"",classTitle:"",classContent:"",classActions:"",closeIcon:!1,actions:!1,preserveHTML:!0,fields:{class:"class",text:"text",icon:"icon",click:"click"},onChange:function(){},onShow:function(){},onHide:function(){return!0},onHidden:!1,onVisible:function(){},onApprove:function(){},onDeny:function(){},keys:{space:32,enter:13,escape:27,tab:9},className:{flyout:"ui flyout",close:"close icon",header:"ui header",content:"content",actions:"actions",active:"active",animating:"animating",blurring:"blurring",closing:"closing",dimmed:"dimmed",ios:"ios",locked:"locked",pushable:"pushable",pushed:"pushed",right:"right",top:"top",left:"left",bottom:"bottom",visible:"visible",overlay:"overlay",fullscreen:"fullscreen",template:"ui flyout",button:"ui button",ok:"positive",cancel:"negative",prompt:"ui fluid input"},selector:{bodyFixed:"> .ui.fixed.menu, > .ui.right.toast-container, > .ui.right.sidebar, > .ui.right.flyout, > .ui.fixed.nag, > .ui.fixed.nag > .close",fixed:".fixed",omitted:"script, link, style, .ui.modal, .ui.dimmer, .ui.nag, .ui.fixed",pusher:".pusher",flyout:".ui.flyout",header:".ui.header",content:".content",actions:".actions",close:".close",approve:".actions .positive, .actions .approve, .actions .ok",deny:".actions .negative, .actions .deny, .actions .cancel"},regExp:{ios:/(iPad|iPhone|iPod)/g,mobileChrome:/(CriOS)/g,mobile:/Mobile|iP(hone|od|ad)|Android|BlackBerry|IEMobile|Kindle|NetFront|Silk-Accelerated|(hpw|web)OS|Fennec|Minimo|Opera M(obi|ini)|Blazer|Dolfin|Dolphin|Skyfire|Zune/g},error:{method:"The method you called is not defined.",pusher:"Had to add pusher element. For optimal performance make sure body content is inside a pusher element",movedFlyout:"Had to move flyout. For optimal performance make sure flyout and pusher are direct children of your body tag",notFound:"There were no elements that matched the specified selector"},text:{ok:"Ok",cancel:"Cancel",close:"Close"}},Q.fn.flyout.settings.templates={getArguments:function(e){e=[].slice.call(e);return Q.isPlainObject(e[0])?Q.extend({handler:function(){},content:"",title:""},e[0]):(X(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);return{title:t.title,content:t.content,actions:[{text:e.text.ok,class:e.className.ok,click:t.handler}]}},confirm:function(){var e=this.get.settings(),t=e.templates.getArguments(arguments);return{title:t.title,content:t.content,actions:[{text:e.text.ok,class:e.className.ok,click:function(){t.handler(!0)}},{text:e.text.cancel,class:e.className.cancel,click:function(){t.handler(!1)}}]}},prompt:function(){var t=this,e=this.get.settings(),n=e.templates.getArguments(arguments);return 0===Q(Q.parseHTML(n.content)).filter(".ui.input").length&&(n.content+='<p><div class="'+e.className.prompt+'"><input placeholder="'+this.helpers.deQuote(n.placeholder||"")+'" type="text" value="'+this.helpers.deQuote(n.defaultValue||"")+'"></div></p>'),{title:n.title,content:n.content,actions:[{text:e.text.ok,class:e.className.ok,click:function(){var e=t.get.settings(),e=t.get.element().find(e.selector.prompt)[0];n.handler(Q(e).val())}},{text:e.text.cancel,class:e.className.cancel,click:function(){n.handler(null)}}]}}}}(jQuery,window,document);
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * # Fomantic-UI 2.9.1 - Form
2
+ * # Fomantic-UI 2.9.2-beta.8+8838309 - Form
3
3
  * https://github.com/fomantic/Fomantic-UI/
4
4
  *
5
5
  *
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * # Fomantic-UI 2.9.1 - Form Validation
2
+ * # Fomantic-UI 2.9.2-beta.8+8838309 - Form Validation
3
3
  * https://github.com/fomantic/Fomantic-UI/
4
4
  *
5
5
  *
@@ -888,7 +888,7 @@
888
888
  .html(settings.templates.prompt(errors))
889
889
  ;
890
890
  if (!promptExists) {
891
- if (settings.transition && module.can.useElement('transition') && $module.transition('is supported')) {
891
+ if (settings.transition && module.can.useElement('transition')) {
892
892
  module.verbose('Displaying error with css transition', settings.transition);
893
893
  $prompt.transition(settings.transition + ' in', settings.duration);
894
894
  } else {
@@ -984,7 +984,7 @@
984
984
  ;
985
985
  if (settings.inline && $prompt.is(':visible')) {
986
986
  module.verbose('Removing prompt for field', identifier);
987
- if (settings.transition && module.can.useElement('transition') && $module.transition('is supported')) {
987
+ if (settings.transition && module.can.useElement('transition')) {
988
988
  $prompt.transition(settings.transition + ' out', settings.duration, function () {
989
989
  $prompt.remove();
990
990
  });
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * # Fomantic-UI 2.9.1 - Form
2
+ * # Fomantic-UI 2.9.2-beta.8+8838309 - Form
3
3
  * https://github.com/fomantic/Fomantic-UI/
4
4
  *
5
5
  *
@@ -1,5 +1,5 @@
1
1
  /*
2
- * # Fomantic UI - 2.9.1
2
+ * # Fomantic UI - 2.9.2-beta.8+8838309
3
3
  * https://github.com/fomantic/Fomantic-UI
4
4
  * https://fomantic-ui.com/
5
5
  *
@@ -8,4 +8,4 @@
8
8
  * https://opensource.org/licenses/MIT
9
9
  *
10
10
  */
11
- !function(j,$,I){"use strict";function O(e){return"function"==typeof e&&"number"!=typeof e.nodeType}$=void 0!==$&&$.Math===Math?$:globalThis,j.fn.form=function(C){var w,V=j(this),A=V.selector||"",D=Date.now(),R=[],S=C,F="string"==typeof S,T=[].slice.call(arguments,1);return V.each(function(){var n,d,t,e,f,s,m,p,g,r,u,i,a,l,c,h=j(this),v=this,b=[],y=!1,o=!1,x=!1,k=["clean","clean"],E={initialize:function(){E.get.settings(),F?(void 0===c&&E.instantiate(),E.invoke(S)):(void 0!==c&&(c.invoke("destroy"),E.refresh()),E.verbose("Initializing form validation",h,f),E.bindEvents(),E.set.defaults(),f.autoCheckRequired&&E.set.autoCheck(),E.instantiate())},instantiate:function(){E.verbose("Storing instance of module",E),c=E,h.data(a,E)},destroy:function(){E.verbose("Destroying previous module",c),E.removeEvents(),h.removeData(a)},refresh:function(){E.verbose("Refreshing selector cache"),n=h.find(p.field),d=h.find(p.group),t=h.find(p.message),h.find(p.prompt),e=h.find(p.submit),h.find(p.clear),h.find(p.reset)},refreshEvents:function(){E.removeEvents(),E.bindEvents()},submit:function(){E.verbose("Submitting form",h),o=!0,h.trigger("submit")},attachEvents:function(e,t){t=t||"submit",j(e).on("click"+l,function(e){E[t](),e.preventDefault()})},bindEvents:function(){E.verbose("Attaching form events"),h.on("submit"+l,E.validate.form).on("blur"+l,p.field,E.event.field.blur).on("click"+l,p.submit,E.submit).on("click"+l,p.reset,E.reset).on("click"+l,p.clear,E.clear),f.keyboardShortcuts&&h.on("keydown"+l,p.field,E.event.field.keydown),n.each(function(e,t){var t=j(t),n=t.prop("type"),n=E.get.changeEvent(n,t);t.on(n+l,E.event.field.change)}),f.preventLeaving&&j($).on("beforeunload"+l,E.event.beforeUnload),n.on("change click keyup keydown blur",function(e){E.determine.isDirty()}),h.on("dirty"+l,function(e){f.onDirty.call()}),h.on("clean"+l,function(e){f.onClean.call()})},clear:function(){n.each(function(e,t){var t=j(t),n=t.parent(),r=t.closest(d),i=r.find(p.prompt),a=t.closest(p.uiCalendar),o=t.data(m.defaultValue)||"",l=n.is(p.uiCheckbox),s=n.is(p.uiDropdown)&&E.can.useElement("dropdown"),u=0<a.length&&E.can.useElement("calendar");r.hasClass(g.error)&&(E.verbose("Resetting error on field",r),r.removeClass(g.error),i.remove()),s?(E.verbose("Resetting dropdown value",n,o),n.dropdown("clear",!0)):l?t.prop("checked",!1):u?a.calendar("clear"):(E.verbose("Resetting field value",t,o),t.val(""))}),E.remove.states()},reset:function(){n.each(function(e,t){var t=j(t),n=t.parent(),r=t.closest(d),i=t.closest(p.uiCalendar),a=r.find(p.prompt),o=t.data(m.defaultValue),l=n.is(p.uiCheckbox),s=n.is(p.uiDropdown)&&E.can.useElement("dropdown"),u=0<i.length&&E.can.useElement("calendar"),c=r.hasClass(g.error);void 0!==o&&(c&&(E.verbose("Resetting error on field",r),r.removeClass(g.error),a.remove()),s?(E.verbose("Resetting dropdown value",n,o),n.dropdown("restore defaults",!0)):l?(E.verbose("Resetting checkbox value",n,o),t.prop("checked",o)):u?i.calendar("set date",o):(E.verbose("Resetting field value",t,o),t.val(o)))}),E.remove.states()},determine:{isValid:function(){var n=!0;return j.each(s,function(e,t){E.validate.field(t,e,!0)||(n=!1)}),n},isDirty:function(e){var r=!1;n.each(function(e,t){var t=j(t),n=0<t.filter(p.checkbox).length?E.is.checkboxDirty(t):E.is.fieldDirty(t);t.data(f.metadata.isDirty,n),r=r||n}),r?E.set.dirty():E.set.clean()}},is:{bracketedRule:function(e){return e.type&&e.type.match(f.regExp.bracket)},shorthandRules:function(e){return"string"==typeof e||Array.isArray(e)},empty:function(e){return!e||0===e.length||(e.is(p.checkbox)?!e.is(":checked"):E.is.blank(e))},blank:function(e){return""===String(e.val()).trim()},valid:function(e,n){var r=!0;return e?(E.verbose("Checking if field is valid",e),E.validate.field(s[e],e,!!n)):(E.verbose("Checking if form is valid"),j.each(s,function(e,t){E.is.valid(e,n)||(r=!1)}),r)},dirty:function(){return x},clean:function(){return!x},fieldDirty:function(e){var t=e.data(m.defaultValue),e=(null==t?t="":Array.isArray(t)&&(t=t.toString()),e.val()),n=(null==e?e="":Array.isArray(e)&&(e=e.toString()),/^(true|false)$/i);return n.test(t)&&n.test(e)?!new RegExp("^"+t+"$","i").test(e):e!==t},checkboxDirty:function(e){return e.data(m.defaultValue)!==e.is(":checked")},justDirty:function(){return"dirty"===k[0]},justClean:function(){return"clean"===k[0]}},removeEvents:function(){h.off(l),n.off(l),e.off(l)},event:{field:{keydown:function(e){var t=j(this),n=e.which,r=t.is(p.input),i=t.is(p.checkbox),a=0<t.closest(p.uiDropdown).length,o=13;n===27&&(E.verbose("Escape key pressed blurring field"),t[0].blur()),e.ctrlKey||n!==o||!r||a||i||(y||(t.one("keyup"+l,E.event.field.keyup),E.submit(),E.debug("Enter pressed on input submitting form"),e.preventDefault()),y=!0)},keyup:function(){y=!1},blur:function(e){var t=j(this),n=t.closest(d),r=E.get.validation(t);r&&("blur"===f.on||n.hasClass(g.error)&&f.revalidate)&&(E.debug("Revalidating field",t,r),E.validate.field(r),f.inline||E.validate.form(!1,!0))},change:function(e){var t=j(this),n=t.closest(d),r=E.get.validation(t);r&&("change"===f.on||n.hasClass(g.error)&&f.revalidate)&&(clearTimeout(E.timer),E.timer=setTimeout(function(){E.debug("Revalidating field",t,r),E.validate.field(r),f.inline||E.validate.form(!1,!0)},f.delay))}},beforeUnload:function(e){if(E.is.dirty()&&!o)return(e=e||$.event)&&(e.returnValue=f.text.leavingMessage),f.text.leavingMessage}},get:{ancillaryValue:function(e){return!(!e.type||!e.value&&!E.is.bracketedRule(e))&&(void 0!==e.value?e.value:e.type.match(f.regExp.bracket)[1]+"")},ruleName:function(e){return E.is.bracketedRule(e)?e.type.replace(e.type.match(f.regExp.bracket)[0],""):e.type},changeEvent:function(e,t){return"checkbox"===e||"radio"===e||"hidden"===e||t.is("select")?"change":E.get.inputEvent()},inputEvent:function(){return void 0!==I.createElement("input").oninput?"input":void 0!==I.createElement("input").onpropertychange?"propertychange":"keyup"},fieldsFromShorthand:function(e){var r={};return j.each(e,function(n,e){Array.isArray(e)||"object"!=typeof e?("string"==typeof e&&(e=[e]),r[n]={rules:[]},j.each(e,function(e,t){r[n].rules.push({type:t})})):r[n]=e}),r},prompt:function(e,t){var n,r=E.get.ruleName(e),i=E.get.ancillaryValue(e),a=E.get.field(t.identifier),o=a.val(),o=O(e.prompt)?e.prompt(o):e.prompt||f.prompt[r]||f.text.unspecifiedRule,l=-1!==o.search("{value}"),s=-1!==o.search("{name}");return i&&0<=["integer","decimal","number"].indexOf(r)&&0<=i.indexOf("..")&&(n=i.split("..",2),e.prompt||(o+=(""===n[0]?f.prompt.maxValue.replace(/{ruleValue}/g,"{max}"):""===n[1]?f.prompt.minValue.replace(/{ruleValue}/g,"{min}"):f.prompt.range).replace(/{name}/g," "+f.text.and)),o=(o=o.replace(/{min}/g,n[0])).replace(/{max}/g,n[1])),l&&(o=o.replace(/{value}/g,a.val())),s&&(l=1===(n=a.closest(p.group).find("label").eq(0)).length?n.text():a.prop("placeholder")||f.text.unspecifiedField,o=o.replace(/{name}/g,l)),o=(o=o.replace(/{identifier}/g,t.identifier)).replace(/{ruleValue}/g,i),e.prompt||E.verbose("Using default validation prompt for type",o,r),o},settings:function(){j.isPlainObject(C)?(C.fields&&(C.fields=E.get.fieldsFromShorthand(C.fields)),f=j.extend(!0,{},j.fn.form.settings,C),s=j.extend(!0,{},j.fn.form.settings.defaults,f.fields),E.verbose("Extending settings",s,f)):(f=j.extend(!0,{},j.fn.form.settings),s=j.extend(!0,{},j.fn.form.settings.defaults),E.verbose("Using default form validation",s,f)),i=f.namespace,m=f.metadata,p=f.selector,g=f.className,r=f.regExp,u=f.error,a="module-"+i,l="."+i,((c=h.data(a))||E).refresh()},field:function(e){var t;return E.verbose("Finding field with identifier",e),e=E.escape.string(e),0<(t=n.filter("#"+e)).length||0<(t=n.filter('[name="'+e+'"]')).length||0<(t=n.filter('[name="'+e+'[]"]')).length||0<(t=n.filter("[data-"+m.validate+'="'+e+'"]')).length?t:(E.error(u.noField.replace("{identifier}",e)),j("<input/>"))},fields:function(e){var n=j();return j.each(e,function(e,t){n=n.add(E.get.field(t))}),n},validation:function(r){var i,a;return!!s&&(j.each(s,function(e,n){a=n.identifier||e,j.each(E.get.field(a),function(e,t){if(t==r[0])return n.identifier=a,i=n,!1})}),i||!1)},value:function(e){var t=[];return t.push(e),E.get.values.call(v,t)[e]},values:function(e){var e=Array.isArray(e)?E.get.fields(e):n,d={};return e.each(function(e,t){var t=j(t),n=t.closest(p.uiCalendar),r=t.prop("name"),i=t.val(),a=t.is(p.checkbox),o=t.is(p.radio),l=-1!==r.indexOf("[]"),s=0<n.length&&E.can.useElement("calendar"),t=!!a&&t.is(":checked");if(r)if(l)r=r.replace("[]",""),d[r]||(d[r]=[]),a?t?d[r].push(i||!0):d[r].push(!1):d[r].push(i);else if(o)void 0!==d[r]&&!1!==d[r]||(d[r]=!!t&&(i||!0));else if(a)d[r]=!!t&&(i||!0);else if(s){var u=n.calendar("get date");if(null!==u)switch(f.dateHandling){case"date":d[r]=u;break;case"input":d[r]=n.calendar("get input date");break;case"formatter":var c=n.calendar("setting","type");switch(c){case"date":d[r]=f.formatter.date(u);break;case"datetime":d[r]=f.formatter.datetime(u);break;case"time":d[r]=f.formatter.time(u);break;case"month":d[r]=f.formatter.month(u);break;case"year":d[r]=f.formatter.year(u);break;default:E.debug("Wrong calendar mode",n,c),d[r]=""}}else d[r]=""}else d[r]=i}),d},dirtyFields:function(){return n.filter(function(e,t){return j(t).data(m.isDirty)})}},has:{field:function(e){return E.verbose("Checking for existence of a field with identifier",e),"string"!=typeof(e=E.escape.string(e))&&E.error(u.identifier,e),0<n.filter("#"+e).length||0<n.filter('[name="'+e+'"]').length||0<n.filter("[data-"+m.validate+'="'+e+'"]').length}},can:{useElement:function(e){return void 0!==j.fn[e]||(E.error(u.noElement.replace("{element}",e)),!1)}},escape:{string:function(e){return(e=String(e)).replace(r.escape,"\\$&")}},add:{rule:function(e,t){E.add.field(e,t)},field:function(n,e){void 0!==s[n]&&void 0!==s[n].rules||(s[n]={rules:[]});var r={rules:[]};E.is.shorthandRules(e)?(e=Array.isArray(e)?e:[e],j.each(e,function(e,t){r.rules.push({type:t})})):r.rules=e.rules,j.each(r.rules,function(e,t){0===j.grep(s[n].rules,function(e){return e.type===t.type}).length&&s[n].rules.push(t)}),E.debug("Adding rules",r.rules,s),E.refreshEvents()},fields:function(e){s=j.extend(!0,{},s,E.get.fieldsFromShorthand(e)),E.refreshEvents()},prompt:function(e,t,n){var r=E.get.field(e).closest(d),i=r.children(p.prompt),a=0<i.length;t="string"==typeof t?[t]:t,E.verbose("Adding field error state",e),n||r.addClass(g.error),f.inline&&(a||(i=j("<div/>").addClass(g.label)).appendTo(r),i.html(f.templates.prompt(t)),a?E.verbose("Inline errors are disabled, no inline error added",e):f.transition&&E.can.useElement("transition")&&h.transition("is supported")?(E.verbose("Displaying error with css transition",f.transition),i.transition(f.transition+" in",f.duration)):(E.verbose("Displaying error with fallback javascript animation"),i.fadeIn(f.duration)))},errors:function(e){E.debug("Adding form error messages",e),E.set.error(),t.html(f.templates.error(e))}},remove:{errors:function(){E.debug("Removing form error messages"),t.empty()},states:function(){h.removeClass(g.error).removeClass(g.success),f.inline||E.remove.errors(),E.determine.isDirty()},rule:function(n,e){var r=Array.isArray(e)?e:[e];if(void 0!==s[n]&&Array.isArray(s[n].rules))return void 0===e?(E.debug("Removed all rules"),void(E.has.field(n)?s[n].rules=[]:delete s[n])):void j.each(s[n].rules,function(e,t){t&&-1!==r.indexOf(t.type)&&(E.debug("Removed rule",t.type),s[n].rules.splice(e,1))})},field:function(e){e=Array.isArray(e)?e:[e];j.each(e,function(e,t){E.remove.rule(t)}),E.refreshEvents()},rules:function(e,n){Array.isArray(e)?j.each(e,function(e,t){E.remove.rule(t,n)}):E.remove.rule(e,n)},fields:function(e){E.remove.field(e)},prompt:function(e){var t=E.get.field(e).closest(d),n=t.children(p.prompt);t.removeClass(g.error),f.inline&&n.is(":visible")&&(E.verbose("Removing prompt for field",e),f.transition&&E.can.useElement("transition")&&h.transition("is supported")?n.transition(f.transition+" out",f.duration,function(){n.remove()}):n.fadeOut(f.duration,function(){n.remove()}))}},set:{success:function(){h.removeClass(g.error).addClass(g.success)},defaults:function(){n.each(function(e,t){var t=j(t),n=t.parent(),r=0<t.filter(p.checkbox).length,i=n.is(p.uiDropdown)&&E.can.useElement("dropdown"),a=t.closest(p.uiCalendar),o=0<a.length&&E.can.useElement("calendar"),r=r?t.is(":checked"):t.val();i?n.dropdown("save defaults"):o&&a.calendar("refresh"),t.data(m.defaultValue,r),t.data(m.isDirty,!1)})},error:function(){h.removeClass(g.success).addClass(g.error)},value:function(e,t){var n={};return n[e]=t,E.set.values.call(v,n)},values:function(e){j.isEmptyObject(e)||j.each(e,function(e,t){var n,r=E.get.field(e),i=r.parent(),e=r.closest(p.uiCalendar),a=Array.isArray(t),o=i.is(p.uiCheckbox)&&E.can.useElement("checkbox"),l=i.is(p.uiDropdown)&&E.can.useElement("dropdown"),s=r.is(p.radio)&&o,u=0<e.length&&E.can.useElement("calendar");0<r.length&&(a&&o?(E.verbose("Selecting multiple",t,r),i.checkbox("uncheck"),j.each(t,function(e,t){n=r.filter('[value="'+t+'"]'),i=n.parent(),0<n.length&&i.checkbox("check")})):s?(E.verbose("Selecting radio value",t,r),r.filter('[value="'+t+'"]').parent(p.uiCheckbox).checkbox("check")):o?(E.verbose("Setting checkbox value",t,i),!0===t||1===t||"on"===t?i.checkbox("check"):i.checkbox("uncheck"),"string"==typeof t&&r.val(t)):l?(E.verbose("Setting dropdown value",t,i),i.dropdown("set selected",t)):u?e.calendar("set date",t):(E.verbose("Setting field value",t,r),r.val(t)))})},dirty:function(){E.verbose("Setting state dirty"),x=!0,k[0]=k[1],k[1]="dirty",E.is.justClean()&&h.trigger("dirty")},clean:function(){E.verbose("Setting state clean"),x=!1,k[0]=k[1],k[1]="clean",E.is.justDirty()&&h.trigger("clean")},asClean:function(){E.set.defaults(),E.set.clean()},asDirty:function(){E.set.defaults(),E.set.dirty()},autoCheck:function(){E.debug("Enabling auto check on required fields"),s&&j.each(s,function(e){E.has.field(e)||(E.verbose("Field not found, removing from validation",e),E.remove.field(e))}),n.each(function(e,t){var t=j(t),n=t.closest(d),r=0<t.filter(p.checkbox).length,i=t.prop("required")||n.hasClass(g.required)||n.parent().hasClass(g.required),n=t.is(":disabled")||n.hasClass(g.disabled)||n.parent().hasClass(g.disabled),a=E.get.validation(t),o=!!a&&0!==j.grep(a.rules,function(e){return"empty"===e.type}),a=a.identifier||t.attr("id")||t.attr("name")||t.data(m.validate);!i||n||o||void 0===a||(r?(E.verbose("Adding 'checked' rule on field",a),E.add.rule(a,"checked")):(E.verbose("Adding 'empty' rule on field",a),E.add.rule(a,"empty")))})},optional:function(n,r){r=!1!==r,j.each(s,function(e,t){n!==e&&n!==t.identifier||(t.optional=r)})}},validate:{form:function(e,t){var n,r=E.get.values();if(y)return!1;if(b=[],E.determine.isValid()){if(E.debug("Form has no validation errors, submitting"),E.set.success(),f.inline||E.remove.errors(),!0!==t)return f.onSuccess.call(v,e,r)}else if(E.debug("Form has errors"),o=!1,E.set.error(),f.inline||E.add.errors(b),e&&void 0!==h.data("moduleApi")&&e.stopImmediatePropagation(),f.errorFocus&&!0!==t&&(e=!0,"string"==typeof f.errorFocus?(e=(n=j(I).find(f.errorFocus)).is("[tabindex]"))||n.attr("tabindex",-1):n=d.filter("."+g.error).first().find(p.field),n.trigger("focus"),e||n.removeAttr("tabindex")),!0!==t)return f.onFailure.call(v,b,r)},field:function(r,e,i){if(i=void 0===i||i,"string"==typeof r&&(E.verbose("Validating field",r),r=s[e=r]),!r)return E.debug("Unable to find field validation. Skipping",e),!0;var a=r.identifier||e,e=E.get.field(a),t=!!r.depends&&E.get.field(r.depends),o=!0,l=[];return r.identifier||(E.debug("Using field name as identifier",a),r.identifier=a),0===e.filter(":not(:disabled)").length?E.debug("Field is disabled. Skipping",a):r.optional&&E.is.blank(e)?E.debug("Field is optional and blank. Skipping",a):r.depends&&E.is.empty(t)?E.debug("Field depends on another value that is not present or empty. Skipping",t):void 0!==r.rules&&(i&&e.closest(d).removeClass(g.error),j.each(r.rules,function(e,t){var n;E.has.field(a)&&0<(n=E.validate.rule(r,t,!0)||[]).length&&(E.debug("Field is invalid",a,t.type),l.push(E.get.prompt(t,r)),o=!1,i&&j(n).closest(d).addClass(g.error))})),o?(i&&(E.remove.prompt(a,l),f.onValid.call(e)),!0):(i&&(b=b.concat(l),E.add.prompt(a,l,!0),f.onInvalid.call(e,l)),!1)},rule:function(e,n,t){function r(e){var t=void 0===(t=(s?j(e).filter(":checked"):j(e)).val())||""===t||null===t?"":f.shouldTrim&&!1!==n.shouldTrim||n.shouldTrim?String(t+"").trim():String(t+"");return o.call(e,t,i,h)}var e=E.get.field(e.identifier),i=E.get.ancillaryValue(n),a=E.get.ruleName(n),o=f.rules[a],l=[],s=e.is(p.checkbox);if(O(o))return s?r(e)||(l=e):j.each(e,function(e,t){r(t)||l.push(t)}),t?l:0===l.length;E.error(u.noRule,a)}},setting:function(e,t){if(j.isPlainObject(e))j.extend(!0,f,e);else{if(void 0===t)return f[e];f[e]=t}},internal:function(e,t){if(j.isPlainObject(e))j.extend(!0,E,e);else{if(void 0===t)return E[e];E[e]=t}},debug:function(){!f.silent&&f.debug&&(f.performance?E.performance.log(arguments):(E.debug=Function.prototype.bind.call(console.info,console,f.name+":"),E.debug.apply(console,arguments)))},verbose:function(){!f.silent&&f.verbose&&f.debug&&(f.performance?E.performance.log(arguments):(E.verbose=Function.prototype.bind.call(console.info,console,f.name+":"),E.verbose.apply(console,arguments)))},error:function(){f.silent||(E.error=Function.prototype.bind.call(console.error,console,f.name+":"),E.error.apply(console,arguments))},performance:{log:function(e){var t,n;f.performance&&(n=(t=Date.now())-(D||t),D=t,R.push({Name:e[0],Arguments:[].slice.call(e,1)||"",Element:v,"Execution Time":n})),clearTimeout(E.performance.timer),E.performance.timer=setTimeout(E.performance.display,500)},display:function(){var e=f.name+":",n=0;D=!1,clearTimeout(E.performance.timer),j.each(R,function(e,t){n+=t["Execution Time"]}),e+=" "+n+"ms",A&&(e+=" '"+A+"'"),1<V.length&&(e+=" ("+V.length+")"),0<R.length&&(console.groupCollapsed(e),console.table?console.table(R):j.each(R,function(e,t){console.log(t.Name+": "+t["Execution Time"]+"ms")}),console.groupEnd()),R=[]}},invoke:function(r,e,t){var i,a,n,o=c;return e=e||T,t=t||v,"string"==typeof r&&void 0!==o&&(r=r.split(/[ .]/),i=r.length-1,j.each(r,function(e,t){var n=e!==i?t+r[e+1].charAt(0).toUpperCase()+r[e+1].slice(1):r;if(j.isPlainObject(o[n])&&e!==i)o=o[n];else{if(void 0!==o[n])return a=o[n],!1;{if(!j.isPlainObject(o[t])||e===i)return void 0!==o[t]?a=o[t]:E.error(u.method,r),!1;o=o[t]}}})),O(a)?n=a.apply(t,e):void 0!==a&&(n=a),Array.isArray(w)?w.push(n):void 0!==w?w=[w,n]:void 0!==n&&(w=n),a}};E.initialize()}),void 0!==w?w:this},j.fn.form.settings={name:"Form",namespace:"form",debug:!1,verbose:!1,performance:!0,fields:!1,keyboardShortcuts:!0,on:"submit",inline:!1,delay:200,revalidate:!0,shouldTrim:!0,transition:"scale",duration:200,autoCheckRequired:!1,preventLeaving:!1,errorFocus:!0,dateHandling:"date",onValid:function(){},onInvalid:function(){},onSuccess:function(){return!0},onFailure:function(){return!1},onDirty:function(){},onClean:function(){},metadata:{defaultValue:"default",validate:"validate",isDirty:"isDirty"},regExp:{htmlID:/^[A-Za-z][\w.:-]*$/g,bracket:/\[(.*)]/i,decimal:/^\d+\.?\d*$/,email:/^[\w!#$%&'*+./=?^`{|}~-]+@[\da-z]([\da-z-]*[\da-z])?(\.[\da-z]([\da-z-]*[\da-z])?)*$/i,escape:/[$()*+,./:=?@[\\\]^{|}-]/g,flags:/^\/(.*)\/(.*)?/,integer:/^-?\d+$/,number:/^-?\d*(\.\d+)?$/,url:/(https?:\/\/(?:www\.|(?!www))[^\s.]+\.\S{2,}|www\.\S+\.\S{2,})/i},text:{and:"and",unspecifiedRule:"Please enter a valid value",unspecifiedField:"This field",leavingMessage:"There are unsaved changes on this page which will be discarded if you continue."},prompt:{range:"{name} must be in a range from {min} to {max}",maxValue:"{name} must have a maximum value of {ruleValue}",minValue:"{name} must have a minimum value of {ruleValue}",empty:"{name} must have a value",checked:"{name} must be checked",email:"{name} must be a valid e-mail",url:"{name} must be a valid url",regExp:"{name} is not formatted correctly",integer:"{name} must be an integer",decimal:"{name} must be a decimal number",number:"{name} must be set to a number",is:'{name} must be "{ruleValue}"',isExactly:'{name} must be exactly "{ruleValue}"',not:'{name} cannot be set to "{ruleValue}"',notExactly:'{name} cannot be set to exactly "{ruleValue}"',contain:'{name} must contain "{ruleValue}"',containExactly:'{name} must contain exactly "{ruleValue}"',doesntContain:'{name} cannot contain "{ruleValue}"',doesntContainExactly:'{name} cannot contain exactly "{ruleValue}"',minLength:"{name} must be at least {ruleValue} characters",exactLength:"{name} must be exactly {ruleValue} characters",maxLength:"{name} cannot be longer than {ruleValue} characters",match:"{name} must match {ruleValue} field",different:"{name} must have a different value than {ruleValue} field",creditCard:"{name} must be a valid credit card number",minCount:"{name} must have at least {ruleValue} choices",exactCount:"{name} must have exactly {ruleValue} choices",maxCount:"{name} must have {ruleValue} or less choices"},selector:{checkbox:'input[type="checkbox"], input[type="radio"]',clear:".clear",field:'input:not(.search):not([type="file"]):not([type="reset"]):not([type="button"]):not([type="submit"]), textarea, select',group:".field",input:'input:not([type="file"])',message:".error.message",prompt:".prompt.label",radio:'input[type="radio"]',reset:'.reset:not([type="reset"])',submit:'.submit:not([type="submit"])',uiCheckbox:".ui.checkbox",uiDropdown:".ui.dropdown",uiCalendar:".ui.calendar"},className:{error:"error",label:"ui basic red pointing prompt label",pressed:"down",success:"success",required:"required",disabled:"disabled"},error:{identifier:"You must specify a string identifier for each field",method:"The method you called is not defined.",noRule:"There is no rule matching the one you specified",noField:"Field identifier {identifier} not found",noElement:"This module requires ui {element}"},templates:{error:function(e){var n='<ul class="list">';return j.each(e,function(e,t){n+="<li>"+t+"</li>"}),n+="</ul>"},prompt:function(e){if(1===e.length)return e[0];var n='<ul class="ui list">';return j.each(e,function(e,t){n+="<li>"+t+"</li>"}),n+="</ul>"}},formatter:{date:function(e){return Intl.DateTimeFormat("en-GB").format(e)},datetime:function(e){return Intl.DateTimeFormat("en-GB",{year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit"}).format(e)},time:function(e){return Intl.DateTimeFormat("en-GB",{hour:"2-digit",minute:"2-digit",second:"2-digit"}).format(e)},month:function(e){return Intl.DateTimeFormat("en-GB",{month:"2-digit",year:"numeric"}).format(e)},year:function(e){return Intl.DateTimeFormat("en-GB",{year:"numeric"}).format(e)}},rules:{empty:function(e){return!(void 0===e||""===e||Array.isArray(e)&&0===e.length)},checked:function(){return 0<j(this).filter(":checked").length},email:function(e){return j.fn.form.settings.regExp.email.test(e)},url:function(e){return j.fn.form.settings.regExp.url.test(e)},regExp:function(e,t){if(t instanceof RegExp)return e.match(t);var n,r=t.match(j.fn.form.settings.regExp.flags);return r&&(t=2<=r.length?r[1]:t,n=3<=r.length?r[2]:""),e.match(new RegExp(t,n))},minValue:function(e,t){return j.fn.form.settings.rules.range(e,t+"..","number")},maxValue:function(e,t){return j.fn.form.settings.rules.range(e,".."+t,"number")},integer:function(e,t){return j.fn.form.settings.rules.range(e,t,"integer")},range:function(e,t,n){var r,i;return(n="string"==typeof n?j.fn.form.settings.regExp[n]:n)instanceof RegExp||(n=j.fn.form.settings.regExp.integer),t&&-1===["",".."].indexOf(t)&&(-1===t.indexOf("..")?n.test(t)&&(i=r=+t):(t=t.split("..",2),n.test(t[0])&&(r=+t[0]),n.test(t[1])&&(i=+t[1]))),n.test(e)&&(void 0===r||r<=e)&&(void 0===i||e<=i)},decimal:function(e,t){return j.fn.form.settings.rules.range(e,t,"decimal")},number:function(e,t){return j.fn.form.settings.rules.range(e,t,"number")},is:function(e,t){return t="string"==typeof t?t.toLowerCase():t,(e="string"==typeof e?e.toLowerCase():e)==t},isExactly:function(e,t){return e==t},not:function(e,t){return(e="string"==typeof e?e.toLowerCase():e)!=(t="string"==typeof t?t.toLowerCase():t)},notExactly:function(e,t){return e!=t},contains:function(e,t){return t=t.replace(j.fn.form.settings.regExp.escape,"\\$&"),-1!==e.search(new RegExp(t,"i"))},containsExactly:function(e,t){return t=t.replace(j.fn.form.settings.regExp.escape,"\\$&"),-1!==e.search(new RegExp(t))},doesntContain:function(e,t){return t=t.replace(j.fn.form.settings.regExp.escape,"\\$&"),-1===e.search(new RegExp(t,"i"))},doesntContainExactly:function(e,t){return t=t.replace(j.fn.form.settings.regExp.escape,"\\$&"),-1===e.search(new RegExp(t))},minLength:function(e,t){return void 0!==e&&e.length>=t},exactLength:function(e,t){return void 0!==e&&e.length===Number(t)},maxLength:function(e,t){return void 0!==e&&e.length<=t},match:function(e,t,n){var r,i=n.find('[data-validate="'+t+'"]');return 0<i.length||0<(i=n.find("#"+t)).length||0<(i=n.find('[name="'+t+'"]')).length?r=i.val():0<(i=n.find('[name="'+t+'[]"]')).length&&(r=i),void 0!==r&&e.toString()===r.toString()},different:function(e,t,n){var r,i=n.find('[data-validate="'+t+'"]');return 0<i.length||0<(i=n.find("#"+t)).length||0<(i=n.find('[name="'+t+'"]')).length?r=i.val():0<(i=n.find('[name="'+t+'[]"]')).length&&(r=i),void 0!==r&&e.toString()!==r.toString()},creditCard:function(n,e){var r,i={visa:{pattern:/^4/,length:[16]},amex:{pattern:/^3[47]/,length:[15]},mastercard:{pattern:/^5[1-5]/,length:[16]},discover:{pattern:/^(6011|622(12[6-9]|1[3-9]\d|[2-8]\d{2}|9[01]\d|92[0-5]|64[4-9])|65)/,length:[16]},unionPay:{pattern:/^(62|88)/,length:[16,17,18,19]},jcb:{pattern:/^35(2[89]|[3-8]\d)/,length:[16]},maestro:{pattern:/^(5018|5020|5038|6304|6759|676[1-3])/,length:[12,13,14,15,16,17,18,19]},dinersClub:{pattern:/^(30[0-5]|^36)/,length:[14]},laser:{pattern:/^(6304|670[69]|6771)/,length:[16,17,18,19]},visaElectron:{pattern:/^(4026|417500|4508|4844|491(3|7))/,length:[16]}},a=!1,e="string"==typeof e&&e.split(",");if("string"==typeof n&&0!==n.length){if(n=n.replace(/[\s-]/g,""),e&&(j.each(e,function(e,t){(r=i[t])&&0<(r={length:-1!==j.inArray(n.length,r.length),pattern:-1!==n.search(r.pattern)}).length&&r.pattern&&(a=!0)}),!a))return!1;if((e={number:-1!==j.inArray(n.length,i.unionPay.length),pattern:-1!==n.search(i.unionPay.pattern)}).number&&e.pattern)return!0;for(var t=n.length,o=0,l=[[0,1,2,3,4,5,6,7,8,9],[0,2,4,6,8,1,3,5,7,9]],s=0;t--;)s+=l[o][parseInt(n.charAt(t),10)],o^=1;return s%10==0&&0<s}},minCount:function(e,t){return 0===(t=Number(t))||(1===t?""!==e:e.split(",").length>=t)},exactCount:function(e,t){return 0===(t=Number(t))?""===e:1===t?""!==e&&-1===e.search(","):e.split(",").length===t},maxCount:function(e,t){return 0!==(t=Number(t))&&(1===t?-1===e.search(","):e.split(",").length<=t)}}}}(jQuery,window,document);
11
+ !function(j,$,I){"use strict";function O(e){return"function"==typeof e&&"number"!=typeof e.nodeType}$=void 0!==$&&$.Math===Math?$:globalThis,j.fn.form=function(C){var w,V=j(this),A=V.selector||"",D=Date.now(),R=[],S=C,F="string"==typeof S,T=[].slice.call(arguments,1);return V.each(function(){var n,d,t,e,f,s,m,p,g,r,u,i,a,l,c,h=j(this),v=this,b=[],y=!1,o=!1,x=!1,k=["clean","clean"],E={initialize:function(){E.get.settings(),F?(void 0===c&&E.instantiate(),E.invoke(S)):(void 0!==c&&(c.invoke("destroy"),E.refresh()),E.verbose("Initializing form validation",h,f),E.bindEvents(),E.set.defaults(),f.autoCheckRequired&&E.set.autoCheck(),E.instantiate())},instantiate:function(){E.verbose("Storing instance of module",E),c=E,h.data(a,E)},destroy:function(){E.verbose("Destroying previous module",c),E.removeEvents(),h.removeData(a)},refresh:function(){E.verbose("Refreshing selector cache"),n=h.find(p.field),d=h.find(p.group),t=h.find(p.message),h.find(p.prompt),e=h.find(p.submit),h.find(p.clear),h.find(p.reset)},refreshEvents:function(){E.removeEvents(),E.bindEvents()},submit:function(){E.verbose("Submitting form",h),o=!0,h.trigger("submit")},attachEvents:function(e,t){t=t||"submit",j(e).on("click"+l,function(e){E[t](),e.preventDefault()})},bindEvents:function(){E.verbose("Attaching form events"),h.on("submit"+l,E.validate.form).on("blur"+l,p.field,E.event.field.blur).on("click"+l,p.submit,E.submit).on("click"+l,p.reset,E.reset).on("click"+l,p.clear,E.clear),f.keyboardShortcuts&&h.on("keydown"+l,p.field,E.event.field.keydown),n.each(function(e,t){var t=j(t),n=t.prop("type"),n=E.get.changeEvent(n,t);t.on(n+l,E.event.field.change)}),f.preventLeaving&&j($).on("beforeunload"+l,E.event.beforeUnload),n.on("change click keyup keydown blur",function(e){E.determine.isDirty()}),h.on("dirty"+l,function(e){f.onDirty.call()}),h.on("clean"+l,function(e){f.onClean.call()})},clear:function(){n.each(function(e,t){var t=j(t),n=t.parent(),r=t.closest(d),i=r.find(p.prompt),a=t.closest(p.uiCalendar),o=t.data(m.defaultValue)||"",l=n.is(p.uiCheckbox),s=n.is(p.uiDropdown)&&E.can.useElement("dropdown"),u=0<a.length&&E.can.useElement("calendar");r.hasClass(g.error)&&(E.verbose("Resetting error on field",r),r.removeClass(g.error),i.remove()),s?(E.verbose("Resetting dropdown value",n,o),n.dropdown("clear",!0)):l?t.prop("checked",!1):u?a.calendar("clear"):(E.verbose("Resetting field value",t,o),t.val(""))}),E.remove.states()},reset:function(){n.each(function(e,t){var t=j(t),n=t.parent(),r=t.closest(d),i=t.closest(p.uiCalendar),a=r.find(p.prompt),o=t.data(m.defaultValue),l=n.is(p.uiCheckbox),s=n.is(p.uiDropdown)&&E.can.useElement("dropdown"),u=0<i.length&&E.can.useElement("calendar"),c=r.hasClass(g.error);void 0!==o&&(c&&(E.verbose("Resetting error on field",r),r.removeClass(g.error),a.remove()),s?(E.verbose("Resetting dropdown value",n,o),n.dropdown("restore defaults",!0)):l?(E.verbose("Resetting checkbox value",n,o),t.prop("checked",o)):u?i.calendar("set date",o):(E.verbose("Resetting field value",t,o),t.val(o)))}),E.remove.states()},determine:{isValid:function(){var n=!0;return j.each(s,function(e,t){E.validate.field(t,e,!0)||(n=!1)}),n},isDirty:function(e){var r=!1;n.each(function(e,t){var t=j(t),n=0<t.filter(p.checkbox).length?E.is.checkboxDirty(t):E.is.fieldDirty(t);t.data(f.metadata.isDirty,n),r=r||n}),r?E.set.dirty():E.set.clean()}},is:{bracketedRule:function(e){return e.type&&e.type.match(f.regExp.bracket)},shorthandRules:function(e){return"string"==typeof e||Array.isArray(e)},empty:function(e){return!e||0===e.length||(e.is(p.checkbox)?!e.is(":checked"):E.is.blank(e))},blank:function(e){return""===String(e.val()).trim()},valid:function(e,n){var r=!0;return e?(E.verbose("Checking if field is valid",e),E.validate.field(s[e],e,!!n)):(E.verbose("Checking if form is valid"),j.each(s,function(e,t){E.is.valid(e,n)||(r=!1)}),r)},dirty:function(){return x},clean:function(){return!x},fieldDirty:function(e){var t=e.data(m.defaultValue),e=(null==t?t="":Array.isArray(t)&&(t=t.toString()),e.val()),n=(null==e?e="":Array.isArray(e)&&(e=e.toString()),/^(true|false)$/i);return n.test(t)&&n.test(e)?!new RegExp("^"+t+"$","i").test(e):e!==t},checkboxDirty:function(e){return e.data(m.defaultValue)!==e.is(":checked")},justDirty:function(){return"dirty"===k[0]},justClean:function(){return"clean"===k[0]}},removeEvents:function(){h.off(l),n.off(l),e.off(l)},event:{field:{keydown:function(e){var t=j(this),n=e.which,r=t.is(p.input),i=t.is(p.checkbox),a=0<t.closest(p.uiDropdown).length,o=13;n===27&&(E.verbose("Escape key pressed blurring field"),t[0].blur()),e.ctrlKey||n!==o||!r||a||i||(y||(t.one("keyup"+l,E.event.field.keyup),E.submit(),E.debug("Enter pressed on input submitting form"),e.preventDefault()),y=!0)},keyup:function(){y=!1},blur:function(e){var t=j(this),n=t.closest(d),r=E.get.validation(t);r&&("blur"===f.on||n.hasClass(g.error)&&f.revalidate)&&(E.debug("Revalidating field",t,r),E.validate.field(r),f.inline||E.validate.form(!1,!0))},change:function(e){var t=j(this),n=t.closest(d),r=E.get.validation(t);r&&("change"===f.on||n.hasClass(g.error)&&f.revalidate)&&(clearTimeout(E.timer),E.timer=setTimeout(function(){E.debug("Revalidating field",t,r),E.validate.field(r),f.inline||E.validate.form(!1,!0)},f.delay))}},beforeUnload:function(e){if(E.is.dirty()&&!o)return(e=e||$.event)&&(e.returnValue=f.text.leavingMessage),f.text.leavingMessage}},get:{ancillaryValue:function(e){return!(!e.type||!e.value&&!E.is.bracketedRule(e))&&(void 0!==e.value?e.value:e.type.match(f.regExp.bracket)[1]+"")},ruleName:function(e){return E.is.bracketedRule(e)?e.type.replace(e.type.match(f.regExp.bracket)[0],""):e.type},changeEvent:function(e,t){return"checkbox"===e||"radio"===e||"hidden"===e||t.is("select")?"change":E.get.inputEvent()},inputEvent:function(){return void 0!==I.createElement("input").oninput?"input":void 0!==I.createElement("input").onpropertychange?"propertychange":"keyup"},fieldsFromShorthand:function(e){var r={};return j.each(e,function(n,e){Array.isArray(e)||"object"!=typeof e?("string"==typeof e&&(e=[e]),r[n]={rules:[]},j.each(e,function(e,t){r[n].rules.push({type:t})})):r[n]=e}),r},prompt:function(e,t){var n,r=E.get.ruleName(e),i=E.get.ancillaryValue(e),a=E.get.field(t.identifier),o=a.val(),o=O(e.prompt)?e.prompt(o):e.prompt||f.prompt[r]||f.text.unspecifiedRule,l=-1!==o.search("{value}"),s=-1!==o.search("{name}");return i&&0<=["integer","decimal","number"].indexOf(r)&&0<=i.indexOf("..")&&(n=i.split("..",2),e.prompt||(o+=(""===n[0]?f.prompt.maxValue.replace(/{ruleValue}/g,"{max}"):""===n[1]?f.prompt.minValue.replace(/{ruleValue}/g,"{min}"):f.prompt.range).replace(/{name}/g," "+f.text.and)),o=(o=o.replace(/{min}/g,n[0])).replace(/{max}/g,n[1])),l&&(o=o.replace(/{value}/g,a.val())),s&&(l=1===(n=a.closest(p.group).find("label").eq(0)).length?n.text():a.prop("placeholder")||f.text.unspecifiedField,o=o.replace(/{name}/g,l)),o=(o=o.replace(/{identifier}/g,t.identifier)).replace(/{ruleValue}/g,i),e.prompt||E.verbose("Using default validation prompt for type",o,r),o},settings:function(){j.isPlainObject(C)?(C.fields&&(C.fields=E.get.fieldsFromShorthand(C.fields)),f=j.extend(!0,{},j.fn.form.settings,C),s=j.extend(!0,{},j.fn.form.settings.defaults,f.fields),E.verbose("Extending settings",s,f)):(f=j.extend(!0,{},j.fn.form.settings),s=j.extend(!0,{},j.fn.form.settings.defaults),E.verbose("Using default form validation",s,f)),i=f.namespace,m=f.metadata,p=f.selector,g=f.className,r=f.regExp,u=f.error,a="module-"+i,l="."+i,((c=h.data(a))||E).refresh()},field:function(e){var t;return E.verbose("Finding field with identifier",e),e=E.escape.string(e),0<(t=n.filter("#"+e)).length||0<(t=n.filter('[name="'+e+'"]')).length||0<(t=n.filter('[name="'+e+'[]"]')).length||0<(t=n.filter("[data-"+m.validate+'="'+e+'"]')).length?t:(E.error(u.noField.replace("{identifier}",e)),j("<input/>"))},fields:function(e){var n=j();return j.each(e,function(e,t){n=n.add(E.get.field(t))}),n},validation:function(r){var i,a;return!!s&&(j.each(s,function(e,n){a=n.identifier||e,j.each(E.get.field(a),function(e,t){if(t==r[0])return n.identifier=a,i=n,!1})}),i||!1)},value:function(e){var t=[];return t.push(e),E.get.values.call(v,t)[e]},values:function(e){var e=Array.isArray(e)?E.get.fields(e):n,d={};return e.each(function(e,t){var t=j(t),n=t.closest(p.uiCalendar),r=t.prop("name"),i=t.val(),a=t.is(p.checkbox),o=t.is(p.radio),l=-1!==r.indexOf("[]"),s=0<n.length&&E.can.useElement("calendar"),t=!!a&&t.is(":checked");if(r)if(l)r=r.replace("[]",""),d[r]||(d[r]=[]),a?t?d[r].push(i||!0):d[r].push(!1):d[r].push(i);else if(o)void 0!==d[r]&&!1!==d[r]||(d[r]=!!t&&(i||!0));else if(a)d[r]=!!t&&(i||!0);else if(s){var u=n.calendar("get date");if(null!==u)switch(f.dateHandling){case"date":d[r]=u;break;case"input":d[r]=n.calendar("get input date");break;case"formatter":var c=n.calendar("setting","type");switch(c){case"date":d[r]=f.formatter.date(u);break;case"datetime":d[r]=f.formatter.datetime(u);break;case"time":d[r]=f.formatter.time(u);break;case"month":d[r]=f.formatter.month(u);break;case"year":d[r]=f.formatter.year(u);break;default:E.debug("Wrong calendar mode",n,c),d[r]=""}}else d[r]=""}else d[r]=i}),d},dirtyFields:function(){return n.filter(function(e,t){return j(t).data(m.isDirty)})}},has:{field:function(e){return E.verbose("Checking for existence of a field with identifier",e),"string"!=typeof(e=E.escape.string(e))&&E.error(u.identifier,e),0<n.filter("#"+e).length||0<n.filter('[name="'+e+'"]').length||0<n.filter("[data-"+m.validate+'="'+e+'"]').length}},can:{useElement:function(e){return void 0!==j.fn[e]||(E.error(u.noElement.replace("{element}",e)),!1)}},escape:{string:function(e){return(e=String(e)).replace(r.escape,"\\$&")}},add:{rule:function(e,t){E.add.field(e,t)},field:function(n,e){void 0!==s[n]&&void 0!==s[n].rules||(s[n]={rules:[]});var r={rules:[]};E.is.shorthandRules(e)?(e=Array.isArray(e)?e:[e],j.each(e,function(e,t){r.rules.push({type:t})})):r.rules=e.rules,j.each(r.rules,function(e,t){0===j.grep(s[n].rules,function(e){return e.type===t.type}).length&&s[n].rules.push(t)}),E.debug("Adding rules",r.rules,s),E.refreshEvents()},fields:function(e){s=j.extend(!0,{},s,E.get.fieldsFromShorthand(e)),E.refreshEvents()},prompt:function(e,t,n){var r=E.get.field(e).closest(d),i=r.children(p.prompt),a=0<i.length;t="string"==typeof t?[t]:t,E.verbose("Adding field error state",e),n||r.addClass(g.error),f.inline&&(a||(i=j("<div/>").addClass(g.label)).appendTo(r),i.html(f.templates.prompt(t)),a?E.verbose("Inline errors are disabled, no inline error added",e):f.transition&&E.can.useElement("transition")?(E.verbose("Displaying error with css transition",f.transition),i.transition(f.transition+" in",f.duration)):(E.verbose("Displaying error with fallback javascript animation"),i.fadeIn(f.duration)))},errors:function(e){E.debug("Adding form error messages",e),E.set.error(),t.html(f.templates.error(e))}},remove:{errors:function(){E.debug("Removing form error messages"),t.empty()},states:function(){h.removeClass(g.error).removeClass(g.success),f.inline||E.remove.errors(),E.determine.isDirty()},rule:function(n,e){var r=Array.isArray(e)?e:[e];if(void 0!==s[n]&&Array.isArray(s[n].rules))return void 0===e?(E.debug("Removed all rules"),void(E.has.field(n)?s[n].rules=[]:delete s[n])):void j.each(s[n].rules,function(e,t){t&&-1!==r.indexOf(t.type)&&(E.debug("Removed rule",t.type),s[n].rules.splice(e,1))})},field:function(e){e=Array.isArray(e)?e:[e];j.each(e,function(e,t){E.remove.rule(t)}),E.refreshEvents()},rules:function(e,n){Array.isArray(e)?j.each(e,function(e,t){E.remove.rule(t,n)}):E.remove.rule(e,n)},fields:function(e){E.remove.field(e)},prompt:function(e){var t=E.get.field(e).closest(d),n=t.children(p.prompt);t.removeClass(g.error),f.inline&&n.is(":visible")&&(E.verbose("Removing prompt for field",e),f.transition&&E.can.useElement("transition")?n.transition(f.transition+" out",f.duration,function(){n.remove()}):n.fadeOut(f.duration,function(){n.remove()}))}},set:{success:function(){h.removeClass(g.error).addClass(g.success)},defaults:function(){n.each(function(e,t){var t=j(t),n=t.parent(),r=0<t.filter(p.checkbox).length,i=n.is(p.uiDropdown)&&E.can.useElement("dropdown"),a=t.closest(p.uiCalendar),o=0<a.length&&E.can.useElement("calendar"),r=r?t.is(":checked"):t.val();i?n.dropdown("save defaults"):o&&a.calendar("refresh"),t.data(m.defaultValue,r),t.data(m.isDirty,!1)})},error:function(){h.removeClass(g.success).addClass(g.error)},value:function(e,t){var n={};return n[e]=t,E.set.values.call(v,n)},values:function(e){j.isEmptyObject(e)||j.each(e,function(e,t){var n,r=E.get.field(e),i=r.parent(),e=r.closest(p.uiCalendar),a=Array.isArray(t),o=i.is(p.uiCheckbox)&&E.can.useElement("checkbox"),l=i.is(p.uiDropdown)&&E.can.useElement("dropdown"),s=r.is(p.radio)&&o,u=0<e.length&&E.can.useElement("calendar");0<r.length&&(a&&o?(E.verbose("Selecting multiple",t,r),i.checkbox("uncheck"),j.each(t,function(e,t){n=r.filter('[value="'+t+'"]'),i=n.parent(),0<n.length&&i.checkbox("check")})):s?(E.verbose("Selecting radio value",t,r),r.filter('[value="'+t+'"]').parent(p.uiCheckbox).checkbox("check")):o?(E.verbose("Setting checkbox value",t,i),!0===t||1===t||"on"===t?i.checkbox("check"):i.checkbox("uncheck"),"string"==typeof t&&r.val(t)):l?(E.verbose("Setting dropdown value",t,i),i.dropdown("set selected",t)):u?e.calendar("set date",t):(E.verbose("Setting field value",t,r),r.val(t)))})},dirty:function(){E.verbose("Setting state dirty"),x=!0,k[0]=k[1],k[1]="dirty",E.is.justClean()&&h.trigger("dirty")},clean:function(){E.verbose("Setting state clean"),x=!1,k[0]=k[1],k[1]="clean",E.is.justDirty()&&h.trigger("clean")},asClean:function(){E.set.defaults(),E.set.clean()},asDirty:function(){E.set.defaults(),E.set.dirty()},autoCheck:function(){E.debug("Enabling auto check on required fields"),s&&j.each(s,function(e){E.has.field(e)||(E.verbose("Field not found, removing from validation",e),E.remove.field(e))}),n.each(function(e,t){var t=j(t),n=t.closest(d),r=0<t.filter(p.checkbox).length,i=t.prop("required")||n.hasClass(g.required)||n.parent().hasClass(g.required),n=t.is(":disabled")||n.hasClass(g.disabled)||n.parent().hasClass(g.disabled),a=E.get.validation(t),o=!!a&&0!==j.grep(a.rules,function(e){return"empty"===e.type}),a=a.identifier||t.attr("id")||t.attr("name")||t.data(m.validate);!i||n||o||void 0===a||(r?(E.verbose("Adding 'checked' rule on field",a),E.add.rule(a,"checked")):(E.verbose("Adding 'empty' rule on field",a),E.add.rule(a,"empty")))})},optional:function(n,r){r=!1!==r,j.each(s,function(e,t){n!==e&&n!==t.identifier||(t.optional=r)})}},validate:{form:function(e,t){var n,r=E.get.values();if(y)return!1;if(b=[],E.determine.isValid()){if(E.debug("Form has no validation errors, submitting"),E.set.success(),f.inline||E.remove.errors(),!0!==t)return f.onSuccess.call(v,e,r)}else if(E.debug("Form has errors"),o=!1,E.set.error(),f.inline||E.add.errors(b),e&&void 0!==h.data("moduleApi")&&e.stopImmediatePropagation(),f.errorFocus&&!0!==t&&(e=!0,"string"==typeof f.errorFocus?(e=(n=j(I).find(f.errorFocus)).is("[tabindex]"))||n.attr("tabindex",-1):n=d.filter("."+g.error).first().find(p.field),n.trigger("focus"),e||n.removeAttr("tabindex")),!0!==t)return f.onFailure.call(v,b,r)},field:function(r,e,i){if(i=void 0===i||i,"string"==typeof r&&(E.verbose("Validating field",r),r=s[e=r]),!r)return E.debug("Unable to find field validation. Skipping",e),!0;var a=r.identifier||e,e=E.get.field(a),t=!!r.depends&&E.get.field(r.depends),o=!0,l=[];return r.identifier||(E.debug("Using field name as identifier",a),r.identifier=a),0===e.filter(":not(:disabled)").length?E.debug("Field is disabled. Skipping",a):r.optional&&E.is.blank(e)?E.debug("Field is optional and blank. Skipping",a):r.depends&&E.is.empty(t)?E.debug("Field depends on another value that is not present or empty. Skipping",t):void 0!==r.rules&&(i&&e.closest(d).removeClass(g.error),j.each(r.rules,function(e,t){var n;E.has.field(a)&&0<(n=E.validate.rule(r,t,!0)||[]).length&&(E.debug("Field is invalid",a,t.type),l.push(E.get.prompt(t,r)),o=!1,i&&j(n).closest(d).addClass(g.error))})),o?(i&&(E.remove.prompt(a,l),f.onValid.call(e)),!0):(i&&(b=b.concat(l),E.add.prompt(a,l,!0),f.onInvalid.call(e,l)),!1)},rule:function(e,n,t){function r(e){var t=void 0===(t=(s?j(e).filter(":checked"):j(e)).val())||""===t||null===t?"":f.shouldTrim&&!1!==n.shouldTrim||n.shouldTrim?String(t+"").trim():String(t+"");return o.call(e,t,i,h)}var e=E.get.field(e.identifier),i=E.get.ancillaryValue(n),a=E.get.ruleName(n),o=f.rules[a],l=[],s=e.is(p.checkbox);if(O(o))return s?r(e)||(l=e):j.each(e,function(e,t){r(t)||l.push(t)}),t?l:0===l.length;E.error(u.noRule,a)}},setting:function(e,t){if(j.isPlainObject(e))j.extend(!0,f,e);else{if(void 0===t)return f[e];f[e]=t}},internal:function(e,t){if(j.isPlainObject(e))j.extend(!0,E,e);else{if(void 0===t)return E[e];E[e]=t}},debug:function(){!f.silent&&f.debug&&(f.performance?E.performance.log(arguments):(E.debug=Function.prototype.bind.call(console.info,console,f.name+":"),E.debug.apply(console,arguments)))},verbose:function(){!f.silent&&f.verbose&&f.debug&&(f.performance?E.performance.log(arguments):(E.verbose=Function.prototype.bind.call(console.info,console,f.name+":"),E.verbose.apply(console,arguments)))},error:function(){f.silent||(E.error=Function.prototype.bind.call(console.error,console,f.name+":"),E.error.apply(console,arguments))},performance:{log:function(e){var t,n;f.performance&&(n=(t=Date.now())-(D||t),D=t,R.push({Name:e[0],Arguments:[].slice.call(e,1)||"",Element:v,"Execution Time":n})),clearTimeout(E.performance.timer),E.performance.timer=setTimeout(E.performance.display,500)},display:function(){var e=f.name+":",n=0;D=!1,clearTimeout(E.performance.timer),j.each(R,function(e,t){n+=t["Execution Time"]}),e+=" "+n+"ms",A&&(e+=" '"+A+"'"),1<V.length&&(e+=" ("+V.length+")"),0<R.length&&(console.groupCollapsed(e),console.table?console.table(R):j.each(R,function(e,t){console.log(t.Name+": "+t["Execution Time"]+"ms")}),console.groupEnd()),R=[]}},invoke:function(r,e,t){var i,a,n,o=c;return e=e||T,t=t||v,"string"==typeof r&&void 0!==o&&(r=r.split(/[ .]/),i=r.length-1,j.each(r,function(e,t){var n=e!==i?t+r[e+1].charAt(0).toUpperCase()+r[e+1].slice(1):r;if(j.isPlainObject(o[n])&&e!==i)o=o[n];else{if(void 0!==o[n])return a=o[n],!1;{if(!j.isPlainObject(o[t])||e===i)return void 0!==o[t]?a=o[t]:E.error(u.method,r),!1;o=o[t]}}})),O(a)?n=a.apply(t,e):void 0!==a&&(n=a),Array.isArray(w)?w.push(n):void 0!==w?w=[w,n]:void 0!==n&&(w=n),a}};E.initialize()}),void 0!==w?w:this},j.fn.form.settings={name:"Form",namespace:"form",debug:!1,verbose:!1,performance:!0,fields:!1,keyboardShortcuts:!0,on:"submit",inline:!1,delay:200,revalidate:!0,shouldTrim:!0,transition:"scale",duration:200,autoCheckRequired:!1,preventLeaving:!1,errorFocus:!0,dateHandling:"date",onValid:function(){},onInvalid:function(){},onSuccess:function(){return!0},onFailure:function(){return!1},onDirty:function(){},onClean:function(){},metadata:{defaultValue:"default",validate:"validate",isDirty:"isDirty"},regExp:{htmlID:/^[A-Za-z][\w.:-]*$/g,bracket:/\[(.*)]/i,decimal:/^\d+\.?\d*$/,email:/^[\w!#$%&'*+./=?^`{|}~-]+@[\da-z]([\da-z-]*[\da-z])?(\.[\da-z]([\da-z-]*[\da-z])?)*$/i,escape:/[$()*+,./:=?@[\\\]^{|}-]/g,flags:/^\/(.*)\/(.*)?/,integer:/^-?\d+$/,number:/^-?\d*(\.\d+)?$/,url:/(https?:\/\/(?:www\.|(?!www))[^\s.]+\.\S{2,}|www\.\S+\.\S{2,})/i},text:{and:"and",unspecifiedRule:"Please enter a valid value",unspecifiedField:"This field",leavingMessage:"There are unsaved changes on this page which will be discarded if you continue."},prompt:{range:"{name} must be in a range from {min} to {max}",maxValue:"{name} must have a maximum value of {ruleValue}",minValue:"{name} must have a minimum value of {ruleValue}",empty:"{name} must have a value",checked:"{name} must be checked",email:"{name} must be a valid e-mail",url:"{name} must be a valid url",regExp:"{name} is not formatted correctly",integer:"{name} must be an integer",decimal:"{name} must be a decimal number",number:"{name} must be set to a number",is:'{name} must be "{ruleValue}"',isExactly:'{name} must be exactly "{ruleValue}"',not:'{name} cannot be set to "{ruleValue}"',notExactly:'{name} cannot be set to exactly "{ruleValue}"',contain:'{name} must contain "{ruleValue}"',containExactly:'{name} must contain exactly "{ruleValue}"',doesntContain:'{name} cannot contain "{ruleValue}"',doesntContainExactly:'{name} cannot contain exactly "{ruleValue}"',minLength:"{name} must be at least {ruleValue} characters",exactLength:"{name} must be exactly {ruleValue} characters",maxLength:"{name} cannot be longer than {ruleValue} characters",match:"{name} must match {ruleValue} field",different:"{name} must have a different value than {ruleValue} field",creditCard:"{name} must be a valid credit card number",minCount:"{name} must have at least {ruleValue} choices",exactCount:"{name} must have exactly {ruleValue} choices",maxCount:"{name} must have {ruleValue} or less choices"},selector:{checkbox:'input[type="checkbox"], input[type="radio"]',clear:".clear",field:'input:not(.search):not([type="file"]):not([type="reset"]):not([type="button"]):not([type="submit"]), textarea, select',group:".field",input:'input:not([type="file"])',message:".error.message",prompt:".prompt.label",radio:'input[type="radio"]',reset:'.reset:not([type="reset"])',submit:'.submit:not([type="submit"])',uiCheckbox:".ui.checkbox",uiDropdown:".ui.dropdown",uiCalendar:".ui.calendar"},className:{error:"error",label:"ui basic red pointing prompt label",pressed:"down",success:"success",required:"required",disabled:"disabled"},error:{identifier:"You must specify a string identifier for each field",method:"The method you called is not defined.",noRule:"There is no rule matching the one you specified",noField:"Field identifier {identifier} not found",noElement:"This module requires ui {element}"},templates:{error:function(e){var n='<ul class="list">';return j.each(e,function(e,t){n+="<li>"+t+"</li>"}),n+="</ul>"},prompt:function(e){if(1===e.length)return e[0];var n='<ul class="ui list">';return j.each(e,function(e,t){n+="<li>"+t+"</li>"}),n+="</ul>"}},formatter:{date:function(e){return Intl.DateTimeFormat("en-GB").format(e)},datetime:function(e){return Intl.DateTimeFormat("en-GB",{year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit"}).format(e)},time:function(e){return Intl.DateTimeFormat("en-GB",{hour:"2-digit",minute:"2-digit",second:"2-digit"}).format(e)},month:function(e){return Intl.DateTimeFormat("en-GB",{month:"2-digit",year:"numeric"}).format(e)},year:function(e){return Intl.DateTimeFormat("en-GB",{year:"numeric"}).format(e)}},rules:{empty:function(e){return!(void 0===e||""===e||Array.isArray(e)&&0===e.length)},checked:function(){return 0<j(this).filter(":checked").length},email:function(e){return j.fn.form.settings.regExp.email.test(e)},url:function(e){return j.fn.form.settings.regExp.url.test(e)},regExp:function(e,t){if(t instanceof RegExp)return e.match(t);var n,r=t.match(j.fn.form.settings.regExp.flags);return r&&(t=2<=r.length?r[1]:t,n=3<=r.length?r[2]:""),e.match(new RegExp(t,n))},minValue:function(e,t){return j.fn.form.settings.rules.range(e,t+"..","number")},maxValue:function(e,t){return j.fn.form.settings.rules.range(e,".."+t,"number")},integer:function(e,t){return j.fn.form.settings.rules.range(e,t,"integer")},range:function(e,t,n){var r,i;return(n="string"==typeof n?j.fn.form.settings.regExp[n]:n)instanceof RegExp||(n=j.fn.form.settings.regExp.integer),t&&-1===["",".."].indexOf(t)&&(-1===t.indexOf("..")?n.test(t)&&(i=r=+t):(t=t.split("..",2),n.test(t[0])&&(r=+t[0]),n.test(t[1])&&(i=+t[1]))),n.test(e)&&(void 0===r||r<=e)&&(void 0===i||e<=i)},decimal:function(e,t){return j.fn.form.settings.rules.range(e,t,"decimal")},number:function(e,t){return j.fn.form.settings.rules.range(e,t,"number")},is:function(e,t){return t="string"==typeof t?t.toLowerCase():t,(e="string"==typeof e?e.toLowerCase():e)==t},isExactly:function(e,t){return e==t},not:function(e,t){return(e="string"==typeof e?e.toLowerCase():e)!=(t="string"==typeof t?t.toLowerCase():t)},notExactly:function(e,t){return e!=t},contains:function(e,t){return t=t.replace(j.fn.form.settings.regExp.escape,"\\$&"),-1!==e.search(new RegExp(t,"i"))},containsExactly:function(e,t){return t=t.replace(j.fn.form.settings.regExp.escape,"\\$&"),-1!==e.search(new RegExp(t))},doesntContain:function(e,t){return t=t.replace(j.fn.form.settings.regExp.escape,"\\$&"),-1===e.search(new RegExp(t,"i"))},doesntContainExactly:function(e,t){return t=t.replace(j.fn.form.settings.regExp.escape,"\\$&"),-1===e.search(new RegExp(t))},minLength:function(e,t){return void 0!==e&&e.length>=t},exactLength:function(e,t){return void 0!==e&&e.length===Number(t)},maxLength:function(e,t){return void 0!==e&&e.length<=t},match:function(e,t,n){var r,i=n.find('[data-validate="'+t+'"]');return 0<i.length||0<(i=n.find("#"+t)).length||0<(i=n.find('[name="'+t+'"]')).length?r=i.val():0<(i=n.find('[name="'+t+'[]"]')).length&&(r=i),void 0!==r&&e.toString()===r.toString()},different:function(e,t,n){var r,i=n.find('[data-validate="'+t+'"]');return 0<i.length||0<(i=n.find("#"+t)).length||0<(i=n.find('[name="'+t+'"]')).length?r=i.val():0<(i=n.find('[name="'+t+'[]"]')).length&&(r=i),void 0!==r&&e.toString()!==r.toString()},creditCard:function(n,e){var r,i={visa:{pattern:/^4/,length:[16]},amex:{pattern:/^3[47]/,length:[15]},mastercard:{pattern:/^5[1-5]/,length:[16]},discover:{pattern:/^(6011|622(12[6-9]|1[3-9]\d|[2-8]\d{2}|9[01]\d|92[0-5]|64[4-9])|65)/,length:[16]},unionPay:{pattern:/^(62|88)/,length:[16,17,18,19]},jcb:{pattern:/^35(2[89]|[3-8]\d)/,length:[16]},maestro:{pattern:/^(5018|5020|5038|6304|6759|676[1-3])/,length:[12,13,14,15,16,17,18,19]},dinersClub:{pattern:/^(30[0-5]|^36)/,length:[14]},laser:{pattern:/^(6304|670[69]|6771)/,length:[16,17,18,19]},visaElectron:{pattern:/^(4026|417500|4508|4844|491(3|7))/,length:[16]}},a=!1,e="string"==typeof e&&e.split(",");if("string"==typeof n&&0!==n.length){if(n=n.replace(/[\s-]/g,""),e&&(j.each(e,function(e,t){(r=i[t])&&0<(r={length:-1!==j.inArray(n.length,r.length),pattern:-1!==n.search(r.pattern)}).length&&r.pattern&&(a=!0)}),!a))return!1;if((e={number:-1!==j.inArray(n.length,i.unionPay.length),pattern:-1!==n.search(i.unionPay.pattern)}).number&&e.pattern)return!0;for(var t=n.length,o=0,l=[[0,1,2,3,4,5,6,7,8,9],[0,2,4,6,8,1,3,5,7,9]],s=0;t--;)s+=l[o][parseInt(n.charAt(t),10)],o^=1;return s%10==0&&0<s}},minCount:function(e,t){return 0===(t=Number(t))||(1===t?""!==e:e.split(",").length>=t)},exactCount:function(e,t){return 0===(t=Number(t))?""===e:1===t?""!==e&&-1===e.search(","):e.split(",").length===t},maxCount:function(e,t){return 0!==(t=Number(t))&&(1===t?-1===e.search(","):e.split(",").length<=t)}}}}(jQuery,window,document);
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * # Fomantic-UI 2.9.1 - Grid
2
+ * # Fomantic-UI 2.9.2-beta.8+8838309 - Grid
3
3
  * https://github.com/fomantic/Fomantic-UI/
4
4
  *
5
5
  *
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * # Fomantic-UI 2.9.1 - Grid
2
+ * # Fomantic-UI 2.9.2-beta.8+8838309 - Grid
3
3
  * https://github.com/fomantic/Fomantic-UI/
4
4
  *
5
5
  *
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * # Fomantic-UI 2.9.1 - Header
2
+ * # Fomantic-UI 2.9.2-beta.8+8838309 - Header
3
3
  * https://github.com/fomantic/Fomantic-UI/
4
4
  *
5
5
  *
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * # Fomantic-UI 2.9.1 - Header
2
+ * # Fomantic-UI 2.9.2-beta.8+8838309 - Header
3
3
  * https://github.com/fomantic/Fomantic-UI/
4
4
  *
5
5
  *
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * # Fomantic-UI 2.9.1 - Icon
2
+ * # Fomantic-UI 2.9.2-beta.8+8838309 - Icon
3
3
  * https://github.com/fomantic/Fomantic-UI/
4
4
  *
5
5
  *
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * # Fomantic-UI 2.9.1 - Icon
2
+ * # Fomantic-UI 2.9.2-beta.8+8838309 - Icon
3
3
  * https://github.com/fomantic/Fomantic-UI/
4
4
  *
5
5
  *
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * # Fomantic-UI 2.9.1 - Image
2
+ * # Fomantic-UI 2.9.2-beta.8+8838309 - Image
3
3
  * https://github.com/fomantic/Fomantic-UI/
4
4
  *
5
5
  *
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * # Fomantic-UI 2.9.1 - Image
2
+ * # Fomantic-UI 2.9.2-beta.8+8838309 - Image
3
3
  * https://github.com/fomantic/Fomantic-UI/
4
4
  *
5
5
  *
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * # Fomantic-UI 2.9.1 - Input
2
+ * # Fomantic-UI 2.9.2-beta.8+8838309 - Input
3
3
  * https://github.com/fomantic/Fomantic-UI/
4
4
  *
5
5
  *
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * # Fomantic-UI 2.9.1 - Input
2
+ * # Fomantic-UI 2.9.2-beta.8+8838309 - Input
3
3
  * https://github.com/fomantic/Fomantic-UI/
4
4
  *
5
5
  *
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * # Fomantic-UI 2.9.1 - Item
2
+ * # Fomantic-UI 2.9.2-beta.8+8838309 - Item
3
3
  * https://github.com/fomantic/Fomantic-UI/
4
4
  *
5
5
  *
@@ -162,7 +162,7 @@
162
162
  --------------- */
163
163
  .ui.items > .item > .content > .description {
164
164
  margin-top: 0.6em;
165
- max-width: auto;
165
+ max-width: none;
166
166
  font-size: 1em;
167
167
  line-height: 1.4285em;
168
168
  color: rgba(0, 0, 0, 0.87);
@@ -524,6 +524,6 @@
524
524
 
525
525
 
526
526
  /*******************************
527
- User Variable Overrides
527
+ Site Overrides
528
528
  *******************************/
529
529