fomantic-ui 2.10.0-beta.4 → 2.10.0-beta.6

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 (173) hide show
  1. package/dist/components/accordion.css +1 -1
  2. package/dist/components/accordion.js +1 -1
  3. package/dist/components/accordion.min.css +1 -1
  4. package/dist/components/accordion.min.js +1 -1
  5. package/dist/components/ad.css +1 -1
  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 +1 -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 +1 -1
  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 +1 -1
  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 +1 -1
  29. package/dist/components/dimmer.min.css +1 -1
  30. package/dist/components/dimmer.min.js +1 -1
  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 +48 -58
  35. package/dist/components/dropdown.min.css +1 -1
  36. package/dist/components/dropdown.min.js +2 -2
  37. package/dist/components/embed.css +1 -1
  38. package/dist/components/embed.js +26 -8
  39. package/dist/components/embed.min.css +1 -1
  40. package/dist/components/embed.min.js +2 -2
  41. package/dist/components/emoji.css +1 -1
  42. package/dist/components/emoji.min.css +1 -1
  43. package/dist/components/feed.css +1 -1
  44. package/dist/components/feed.min.css +1 -1
  45. package/dist/components/flag.css +1 -1
  46. package/dist/components/flag.min.css +1 -1
  47. package/dist/components/flyout.css +1 -1
  48. package/dist/components/flyout.js +13 -18
  49. package/dist/components/flyout.min.css +1 -1
  50. package/dist/components/flyout.min.js +2 -2
  51. package/dist/components/form.css +1 -1
  52. package/dist/components/form.js +1 -1
  53. package/dist/components/form.min.css +1 -1
  54. package/dist/components/form.min.js +1 -1
  55. package/dist/components/grid.css +1 -1
  56. package/dist/components/grid.min.css +1 -1
  57. package/dist/components/header.css +1 -1
  58. package/dist/components/header.min.css +1 -1
  59. package/dist/components/icon.css +1 -1
  60. package/dist/components/icon.min.css +1 -1
  61. package/dist/components/image.css +1 -1
  62. package/dist/components/image.min.css +1 -1
  63. package/dist/components/input.css +1 -1
  64. package/dist/components/input.min.css +1 -1
  65. package/dist/components/item.css +1 -1
  66. package/dist/components/item.min.css +1 -1
  67. package/dist/components/label.css +1 -1
  68. package/dist/components/label.min.css +1 -1
  69. package/dist/components/list.css +1 -1
  70. package/dist/components/list.min.css +1 -1
  71. package/dist/components/loader.css +1 -1
  72. package/dist/components/loader.min.css +1 -1
  73. package/dist/components/menu.css +1 -1
  74. package/dist/components/menu.min.css +1 -1
  75. package/dist/components/message.css +1 -1
  76. package/dist/components/message.min.css +1 -1
  77. package/dist/components/modal.css +1 -1
  78. package/dist/components/modal.js +13 -18
  79. package/dist/components/modal.min.css +1 -1
  80. package/dist/components/modal.min.js +2 -2
  81. package/dist/components/nag.css +1 -1
  82. package/dist/components/nag.js +1 -1
  83. package/dist/components/nag.min.css +1 -1
  84. package/dist/components/nag.min.js +1 -1
  85. package/dist/components/placeholder.css +1 -1
  86. package/dist/components/placeholder.min.css +1 -1
  87. package/dist/components/popup.css +1 -1
  88. package/dist/components/popup.js +5 -7
  89. package/dist/components/popup.min.css +1 -1
  90. package/dist/components/popup.min.js +2 -2
  91. package/dist/components/progress.css +1 -1
  92. package/dist/components/progress.js +1 -1
  93. package/dist/components/progress.min.css +1 -1
  94. package/dist/components/progress.min.js +1 -1
  95. package/dist/components/rail.css +1 -1
  96. package/dist/components/rail.min.css +1 -1
  97. package/dist/components/rating.css +1 -1
  98. package/dist/components/rating.js +23 -5
  99. package/dist/components/rating.min.css +1 -1
  100. package/dist/components/rating.min.js +2 -2
  101. package/dist/components/reset.css +1 -1
  102. package/dist/components/reset.min.css +1 -1
  103. package/dist/components/reveal.css +1 -1
  104. package/dist/components/reveal.min.css +1 -1
  105. package/dist/components/search.css +1 -1
  106. package/dist/components/search.js +28 -31
  107. package/dist/components/search.min.css +1 -1
  108. package/dist/components/search.min.js +2 -2
  109. package/dist/components/segment.css +1 -1
  110. package/dist/components/segment.min.css +1 -1
  111. package/dist/components/shape.css +1 -1
  112. package/dist/components/shape.js +1 -1
  113. package/dist/components/shape.min.css +1 -1
  114. package/dist/components/shape.min.js +1 -1
  115. package/dist/components/sidebar.css +1 -1
  116. package/dist/components/sidebar.js +1 -1
  117. package/dist/components/sidebar.min.css +1 -1
  118. package/dist/components/sidebar.min.js +1 -1
  119. package/dist/components/site.css +1 -1
  120. package/dist/components/site.js +1 -1
  121. package/dist/components/site.min.css +1 -1
  122. package/dist/components/site.min.js +1 -1
  123. package/dist/components/slider.css +1 -1
  124. package/dist/components/slider.js +1 -1
  125. package/dist/components/slider.min.css +1 -1
  126. package/dist/components/slider.min.js +1 -1
  127. package/dist/components/state.js +1 -1
  128. package/dist/components/state.min.js +1 -1
  129. package/dist/components/statistic.css +1 -1
  130. package/dist/components/statistic.min.css +1 -1
  131. package/dist/components/step.css +1 -1
  132. package/dist/components/step.min.css +1 -1
  133. package/dist/components/sticky.css +1 -1
  134. package/dist/components/sticky.js +1 -1
  135. package/dist/components/sticky.min.css +1 -1
  136. package/dist/components/sticky.min.js +1 -1
  137. package/dist/components/tab.css +1 -1
  138. package/dist/components/tab.js +1 -1
  139. package/dist/components/tab.min.css +1 -1
  140. package/dist/components/tab.min.js +1 -1
  141. package/dist/components/table.css +1 -1
  142. package/dist/components/table.min.css +1 -1
  143. package/dist/components/text.css +1 -1
  144. package/dist/components/text.min.css +1 -1
  145. package/dist/components/toast.css +1 -1
  146. package/dist/components/toast.js +14 -19
  147. package/dist/components/toast.min.css +1 -1
  148. package/dist/components/toast.min.js +2 -2
  149. package/dist/components/transition.css +1 -1
  150. package/dist/components/transition.js +1 -1
  151. package/dist/components/transition.min.css +1 -1
  152. package/dist/components/transition.min.js +1 -1
  153. package/dist/components/visibility.js +1 -1
  154. package/dist/components/visibility.min.js +1 -1
  155. package/dist/semantic.css +53 -53
  156. package/dist/semantic.js +188 -182
  157. package/dist/semantic.min.css +1 -1
  158. package/dist/semantic.min.js +2 -2
  159. package/package.json +1 -2
  160. package/src/definitions/modules/dropdown.js +47 -57
  161. package/src/definitions/modules/embed.js +25 -7
  162. package/src/definitions/modules/flyout.js +12 -17
  163. package/src/definitions/modules/modal.js +12 -17
  164. package/src/definitions/modules/popup.js +4 -6
  165. package/src/definitions/modules/rating.js +22 -4
  166. package/src/definitions/modules/search.js +27 -30
  167. package/src/definitions/modules/toast.js +13 -18
  168. package/tasks/config/defaults.js +0 -1
  169. package/tasks/config/project/install.js +5 -8
  170. package/tasks/install.js +10 -11
  171. package/types/fomantic-ui-dropdown.d.ts +44 -0
  172. package/types/fomantic-ui-embed.d.ts +1 -1
  173. package/types/fomantic-ui-search.d.ts +6 -6
package/dist/semantic.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /*
2
- * # Fomantic UI - 2.10.0-beta.4+fcf090f
2
+ * # Fomantic UI - 2.10.0-beta.6+42a411a
3
3
  * https://github.com/fomantic/Fomantic-UI
4
4
  * https://fomantic-ui.com/
5
5
  *
@@ -9,7 +9,7 @@
9
9
  *
10
10
  */
11
11
  /*!
12
- * # Fomantic-UI 2.10.0-beta.4+fcf090f - Site
12
+ * # Fomantic-UI 2.10.0-beta.6+42a411a - Site
13
13
  * https://github.com/fomantic/Fomantic-UI/
14
14
  *
15
15
  *
@@ -465,7 +465,7 @@
465
465
  })(jQuery, window, document);
466
466
 
467
467
  /*!
468
- * # Fomantic-UI 2.10.0-beta.4+fcf090f - Form Validation
468
+ * # Fomantic-UI 2.10.0-beta.6+42a411a - Form Validation
469
469
  * https://github.com/fomantic/Fomantic-UI/
470
470
  *
471
471
  *
@@ -2660,7 +2660,7 @@
2660
2660
  })(jQuery, window, document);
2661
2661
 
2662
2662
  /*!
2663
- * # Fomantic-UI 2.10.0-beta.4+fcf090f - Accordion
2663
+ * # Fomantic-UI 2.10.0-beta.6+42a411a - Accordion
2664
2664
  * https://github.com/fomantic/Fomantic-UI/
2665
2665
  *
2666
2666
  *
@@ -3256,7 +3256,7 @@
3256
3256
  })(jQuery, window, document);
3257
3257
 
3258
3258
  /*!
3259
- * # Fomantic-UI 2.10.0-beta.4+fcf090f - Calendar
3259
+ * # Fomantic-UI 2.10.0-beta.6+42a411a - Calendar
3260
3260
  * https://github.com/fomantic/Fomantic-UI/
3261
3261
  *
3262
3262
  *
@@ -5302,7 +5302,7 @@
5302
5302
  })(jQuery, window, document);
5303
5303
 
5304
5304
  /*!
5305
- * # Fomantic-UI 2.10.0-beta.4+fcf090f - Checkbox
5305
+ * # Fomantic-UI 2.10.0-beta.6+42a411a - Checkbox
5306
5306
  * https://github.com/fomantic/Fomantic-UI/
5307
5307
  *
5308
5308
  *
@@ -6183,7 +6183,7 @@
6183
6183
  })(jQuery, window, document);
6184
6184
 
6185
6185
  /*!
6186
- * # Fomantic-UI 2.10.0-beta.4+fcf090f - Dimmer
6186
+ * # Fomantic-UI 2.10.0-beta.6+42a411a - Dimmer
6187
6187
  * https://github.com/fomantic/Fomantic-UI/
6188
6188
  *
6189
6189
  *
@@ -6916,7 +6916,7 @@
6916
6916
  })(jQuery, window, document);
6917
6917
 
6918
6918
  /*!
6919
- * # Fomantic-UI 2.10.0-beta.4+fcf090f - Dropdown
6919
+ * # Fomantic-UI 2.10.0-beta.6+42a411a - Dropdown
6920
6920
  * https://github.com/fomantic/Fomantic-UI/
6921
6921
  *
6922
6922
  *
@@ -7031,11 +7031,6 @@
7031
7031
  if (module.is.alreadySetup()) {
7032
7032
  module.setup.reference();
7033
7033
  } else {
7034
- if (settings.ignoreDiacritics && !String.prototype.normalize) {
7035
- settings.ignoreDiacritics = false;
7036
- module.error(error.noNormalize, element);
7037
- }
7038
-
7039
7034
  module.create.id();
7040
7035
  module.setup.layout();
7041
7036
 
@@ -7333,7 +7328,7 @@
7333
7328
  .attr('class', $input.attr('class'))
7334
7329
  .addClass(className.selection)
7335
7330
  .addClass(className.dropdown)
7336
- .html(templates.dropdown(selectValues, fields, settings.preserveHTML, settings.className))
7331
+ .html(templates.dropdown(selectValues, settings))
7337
7332
  .insertBefore($input)
7338
7333
  ;
7339
7334
  if ($input.hasClass(className.multiple) && $input.prop('multiple') === false) {
@@ -7363,7 +7358,7 @@
7363
7358
  module.refresh();
7364
7359
  },
7365
7360
  menu: function (values) {
7366
- $menu.html(templates.menu(values, fields, settings.preserveHTML, settings.className));
7361
+ $menu.html(templates.menu(values, settings));
7367
7362
  $item = $menu.find(selector.item);
7368
7363
  $divider = settings.hideDividers ? $item.parent().children(selector.divider) : $();
7369
7364
  },
@@ -8027,10 +8022,10 @@
8027
8022
  $input.append('<option disabled selected value></option>');
8028
8023
  $.each(values, function (index, item) {
8029
8024
  var
8030
- value = settings.templates.deQuote(item[fields.value]),
8025
+ value = settings.templates.escape(item[fields.value]),
8031
8026
  name = settings.templates.escape(
8032
8027
  item[fields.name] || '',
8033
- settings.preserveHTML
8028
+ settings
8034
8029
  )
8035
8030
  ;
8036
8031
  $input.append('<option value="' + value + '"' + (item.selected === true ? ' selected' : '') + '>' + name + '</option>');
@@ -9819,7 +9814,7 @@
9819
9814
  $label = $('<a />')
9820
9815
  .addClass(className.label)
9821
9816
  .attr('data-' + metadata.value, escapedValue)
9822
- .html(templates.label(escapedValue, text, settings.preserveHTML, settings.className))
9817
+ .html(templates.label(escapedValue, text, settings))
9823
9818
  ;
9824
9819
  $label = settings.onLabelCreate.call($label, escapedValue, text);
9825
9820
 
@@ -10758,14 +10753,13 @@
10758
10753
  htmlEntities: function (string, forceAmpersand) {
10759
10754
  forceAmpersand = typeof forceAmpersand === 'number' ? false : forceAmpersand;
10760
10755
  var
10761
- badChars = /["'<>`]/g,
10762
- shouldEscape = /["&'<>`]/,
10756
+ badChars = /["'<>]/g,
10757
+ shouldEscape = /["&'<>]/,
10763
10758
  escape = {
10764
10759
  '<': '&lt;',
10765
10760
  '>': '&gt;',
10766
10761
  '"': '&quot;',
10767
- "'": '&#x27;',
10768
- '`': '&#x60;',
10762
+ "'": '&apos;',
10769
10763
  },
10770
10764
  escapedChar = function (chr) {
10771
10765
  return escape[chr];
@@ -11069,7 +11063,6 @@
11069
11063
  noAPI: 'The API module is required to load resources remotely',
11070
11064
  noStorage: 'Saving remote data requires session storage',
11071
11065
  noElement: 'This module requires ui {element}',
11072
- noNormalize: '"ignoreDiacritics" setting will be ignored. Browser does not support String().normalize(). You may consider including <https://cdn.jsdelivr.net/npm/unorm@1.4.1/lib/unorm.min.js> as a polyfill.',
11073
11066
  },
11074
11067
 
11075
11068
  regExp: {
@@ -11183,22 +11176,18 @@
11183
11176
 
11184
11177
  /* Templates */
11185
11178
  $.fn.dropdown.settings.templates = {
11186
- deQuote: function (string, encode) {
11187
- return String(string).replace(/"/g, encode ? '&quot;' : '');
11188
- },
11189
- escape: function (string, preserveHTML) {
11190
- if (preserveHTML) {
11179
+ escape: function (string, settings) {
11180
+ if (settings !== undefined && settings.preserveHTML) {
11191
11181
  return string;
11192
11182
  }
11193
11183
  var
11194
- badChars = /["'<>`]/g,
11195
- shouldEscape = /["&'<>`]/,
11184
+ badChars = /["'<>]/g,
11185
+ shouldEscape = /["&'<>]/,
11196
11186
  escape = {
11197
11187
  '<': '&lt;',
11198
11188
  '>': '&gt;',
11199
11189
  '"': '&quot;',
11200
- "'": '&#x27;',
11201
- '`': '&#x60;',
11190
+ "'": '&apos;',
11202
11191
  },
11203
11192
  escapedChar = function (chr) {
11204
11193
  return escape[chr];
@@ -11212,31 +11201,32 @@
11212
11201
  return string;
11213
11202
  },
11214
11203
  // generates dropdown from select values
11215
- dropdown: function (select, fields, preserveHTML, className) {
11204
+ dropdown: function (select, settings) {
11216
11205
  var
11217
11206
  placeholder = select.placeholder || false,
11218
- html = '',
11219
- escape = $.fn.dropdown.settings.templates.escape,
11220
- deQuote = $.fn.dropdown.settings.templates.deQuote
11207
+ html = '',
11208
+ className = settings.className,
11209
+ escape = settings.templates.escape
11221
11210
  ;
11222
11211
  html += '<i class="dropdown icon"></i>';
11223
11212
  html += placeholder
11224
- ? '<div class="default text">' + escape(placeholder, preserveHTML) + '</div>'
11213
+ ? '<div class="default text">' + escape(placeholder, settings) + '</div>'
11225
11214
  : '<div class="text"></div>';
11226
- html += '<div class="' + deQuote(className.menu) + '">';
11227
- html += $.fn.dropdown.settings.templates.menu(select, fields, preserveHTML, className);
11215
+ html += '<div class="' + escape(className.menu) + '">';
11216
+ html += settings.templates.menu(select, settings);
11228
11217
  html += '</div>';
11229
11218
 
11230
11219
  return html;
11231
11220
  },
11232
11221
 
11233
11222
  // generates just menu from select
11234
- menu: function (response, fields, preserveHTML, className) {
11223
+ menu: function (response, settings) {
11235
11224
  var
11225
+ fields = settings.fields,
11236
11226
  values = response[fields.values] || [],
11237
- html = '',
11238
- escape = $.fn.dropdown.settings.templates.escape,
11239
- deQuote = $.fn.dropdown.settings.templates.deQuote
11227
+ html = '',
11228
+ className = settings.className,
11229
+ escape = settings.templates.escape
11240
11230
  ;
11241
11231
  $.each(values, function (index, option) {
11242
11232
  var
@@ -11252,14 +11242,14 @@
11252
11242
  for (dataKey in dataObject) {
11253
11243
  dataKeyEscaped = String(dataKey).replace(/\W/g, '');
11254
11244
  if (Object.prototype.hasOwnProperty.call(dataObject, dataKey) && ['text', 'value'].indexOf(dataKeyEscaped.toLowerCase()) === -1) {
11255
- maybeData += ' data-' + dataKeyEscaped + '="' + deQuote(String(dataObject[dataKey])) + '"';
11245
+ maybeData += ' data-' + dataKeyEscaped + '="' + escape(String(dataObject[dataKey])) + '"';
11256
11246
  }
11257
11247
  }
11258
11248
  }
11259
11249
  if (itemType === 'item' || isMenu) {
11260
11250
  var
11261
11251
  maybeText = option[fields.text]
11262
- ? ' data-text="' + deQuote(option[fields.text], true) + '"'
11252
+ ? ' data-text="' + escape(option[fields.text]) + '"'
11263
11253
  : '',
11264
11254
  maybeActionable = option[fields.actionable]
11265
11255
  ? className.actionable + ' '
@@ -11270,30 +11260,30 @@
11270
11260
  maybeDescriptionVertical = option[fields.descriptionVertical]
11271
11261
  ? className.descriptionVertical + ' '
11272
11262
  : '',
11273
- hasDescription = escape(option[fields.description] || '', preserveHTML) !== ''
11263
+ hasDescription = escape(option[fields.description] || '', settings) !== ''
11274
11264
  ;
11275
- html += '<div class="' + deQuote(maybeActionable + maybeDisabled + maybeDescriptionVertical + (option[fields.class] || className.item)) + '" data-value="' + deQuote(option[fields.value], true) + '"' + maybeText + maybeData + '>';
11265
+ html += '<div class="' + escape(maybeActionable + maybeDisabled + maybeDescriptionVertical + (option[fields.class] || className.item)) + '" data-value="' + escape(option[fields.value]) + '"' + maybeText + maybeData + '>';
11276
11266
  if (isMenu) {
11277
11267
  html += '<i class="' + (itemType.indexOf('left') !== -1 ? 'left' : '') + ' dropdown icon"></i>';
11278
11268
  }
11279
11269
  if (option[fields.image]) {
11280
- html += '<img class="' + deQuote(option[fields.imageClass] || className.image) + '" src="' + deQuote(option[fields.image]) + (option[fields.alt] ? '" alt="' + deQuote(option[fields.alt]) : '') + '">';
11270
+ html += '<img class="' + escape(option[fields.imageClass] || className.image) + '" src="' + escape(option[fields.image]) + '"' + (option[fields.alt] ? ' alt="' + escape(option[fields.alt]) + '"' : '') + '>';
11281
11271
  }
11282
11272
  if (option[fields.icon]) {
11283
- html += '<i class="' + deQuote(option[fields.icon] + ' ' + (option[fields.iconClass] || className.icon)) + '"></i>';
11273
+ html += '<i class="' + escape(option[fields.icon] + ' ' + (option[fields.iconClass] || className.icon)) + '"></i>';
11284
11274
  }
11285
11275
  if (hasDescription) {
11286
- html += '<span class="' + deQuote(className.description) + '">' + escape(option[fields.description] || '', preserveHTML) + '</span>';
11287
- html += !isMenu ? '<span class="' + deQuote(className.text) + '">' : '';
11276
+ html += '<span class="' + escape(className.description) + '">' + escape(option[fields.description] || '', settings) + '</span>';
11277
+ html += !isMenu ? '<span class="' + escape(className.text) + '">' : '';
11288
11278
  }
11289
11279
  if (isMenu) {
11290
- html += '<span class="' + deQuote(className.text) + '">';
11280
+ html += '<span class="' + escape(className.text) + '">';
11291
11281
  }
11292
- html += escape(option[fields.name] || '', preserveHTML);
11282
+ html += escape(option[fields.name] || '', settings);
11293
11283
  if (isMenu) {
11294
11284
  html += '</span>';
11295
- html += '<div class="' + deQuote(itemType) + '">';
11296
- html += $.fn.dropdown.settings.templates.menu(option, fields, preserveHTML, className);
11285
+ html += '<div class="' + escape(itemType) + '">';
11286
+ html += settings.templates.menu(option, settings);
11297
11287
  html += '</div>';
11298
11288
  } else if (hasDescription) {
11299
11289
  html += '</span>';
@@ -11301,19 +11291,19 @@
11301
11291
  html += '</div>';
11302
11292
  } else if (itemType === 'header') {
11303
11293
  var
11304
- groupName = escape(option[fields.name] || '', preserveHTML),
11305
- groupIcon = deQuote(option[fields.icon] || className.groupIcon)
11294
+ groupName = option[fields.name] || '',
11295
+ groupIcon = option[fields.icon] || className.groupIcon
11306
11296
  ;
11307
11297
  if (groupName !== '' || groupIcon !== '') {
11308
- html += '<div class="' + deQuote(option[fields.class] || className.header) + '">';
11298
+ html += '<div class="' + escape(option[fields.class] || className.header) + '">';
11309
11299
  if (groupIcon !== '') {
11310
- html += '<i class="' + deQuote(groupIcon + ' ' + (option[fields.iconClass] || className.icon)) + '"></i>';
11300
+ html += '<i class="' + escape(groupIcon + ' ' + (option[fields.iconClass] || className.icon)) + '"></i>';
11311
11301
  }
11312
- html += groupName;
11302
+ html += escape(groupName, settings);
11313
11303
  html += '</div>';
11314
11304
  }
11315
11305
  if (option[fields.divider]) {
11316
- html += '<div class="' + deQuote(className.divider) + '"></div>';
11306
+ html += '<div class="' + escape(className.divider) + '"></div>';
11317
11307
  }
11318
11308
  }
11319
11309
  });
@@ -11322,13 +11312,13 @@
11322
11312
  },
11323
11313
 
11324
11314
  // generates label for multiselect
11325
- label: function (value, text, preserveHTML, className) {
11315
+ label: function (value, text, settings) {
11326
11316
  var
11327
- escape = $.fn.dropdown.settings.templates.escape,
11328
- deQuote = $.fn.dropdown.settings.templates.deQuote
11317
+ className = settings.className,
11318
+ escape = settings.templates.escape
11329
11319
  ;
11330
11320
 
11331
- return escape(text, preserveHTML) + '<i class="' + deQuote(className.delete) + ' icon"></i>';
11321
+ return escape(text, settings) + '<i class="' + escape(className.delete) + ' icon"></i>';
11332
11322
  },
11333
11323
 
11334
11324
  // generates messages like "No results"
@@ -11345,7 +11335,7 @@
11345
11335
  })(jQuery, window, document);
11346
11336
 
11347
11337
  /*!
11348
- * # Fomantic-UI 2.10.0-beta.4+fcf090f - Embed
11338
+ * # Fomantic-UI 2.10.0-beta.6+42a411a - Embed
11349
11339
  * https://github.com/fomantic/Fomantic-UI/
11350
11340
  *
11351
11341
  *
@@ -11991,33 +11981,51 @@
11991
11981
  },
11992
11982
 
11993
11983
  templates: {
11994
- deQuote: function (string, encode) {
11995
- return String(string).replace(/"/g, encode ? '&quot;' : '');
11984
+ escape: function (string) {
11985
+ var
11986
+ badChars = /["'<>]/g,
11987
+ shouldEscape = /["&'<>]/,
11988
+ escape = {
11989
+ '<': '&lt;',
11990
+ '>': '&gt;',
11991
+ '"': '&quot;',
11992
+ "'": '&apos;',
11993
+ },
11994
+ escapedChar = function (chr) {
11995
+ return escape[chr];
11996
+ }
11997
+ ;
11998
+ if (shouldEscape.test(string)) {
11999
+ string = string.replace(/&(?![\d#a-z]{1,12};)/gi, '&amp;');
12000
+ string = string.replace(badChars, escapedChar);
12001
+ }
12002
+
12003
+ return string;
11996
12004
  },
11997
12005
  iframe: function (url, parameters) {
11998
12006
  var
11999
12007
  src = url,
12000
- deQuote = $.fn.embed.settings.templates.deQuote
12008
+ escape = $.fn.embed.settings.templates.escape
12001
12009
  ;
12002
12010
  if (parameters) {
12003
12011
  src += '?' + parameters;
12004
12012
  }
12005
12013
 
12006
12014
  return ''
12007
- + '<iframe src="' + deQuote(src) + '"'
12015
+ + '<iframe src="' + escape(src) + '"'
12008
12016
  + ' width="100%" height="100%"'
12009
12017
  + ' msallowFullScreen allowFullScreen></iframe>';
12010
12018
  },
12011
12019
  placeholder: function (image, icon, alt) {
12012
12020
  var
12013
12021
  html = '',
12014
- deQuote = $.fn.embed.settings.templates.deQuote
12022
+ escape = $.fn.embed.settings.templates.escape
12015
12023
  ;
12016
12024
  if (icon) {
12017
- html += '<i class="' + deQuote(icon) + ' icon"></i>';
12025
+ html += '<i class="' + escape(icon) + ' icon"></i>';
12018
12026
  }
12019
12027
  if (image) {
12020
- html += '<img class="placeholder" src="' + deQuote(image) + (alt ? '" alt="' + deQuote(alt) : '') + '">';
12028
+ html += '<img class="placeholder" src="' + escape(image) + '"' + (alt ? ' alt="' + escape(alt) + '"' : '') + '>';
12021
12029
  }
12022
12030
 
12023
12031
  return html;
@@ -12034,7 +12042,7 @@
12034
12042
  })(jQuery, window, document);
12035
12043
 
12036
12044
  /*!
12037
- * # Fomantic-UI 2.10.0-beta.4+fcf090f - Flyout
12045
+ * # Fomantic-UI 2.10.0-beta.6+42a411a - Flyout
12038
12046
  * https://github.com/fomantic/Fomantic-UI/
12039
12047
  *
12040
12048
  *
@@ -12152,10 +12160,10 @@
12152
12160
  }
12153
12161
  $module.addClass(settings.class);
12154
12162
  if (settings.title !== '') {
12155
- $module.find(selector.header).html(module.helpers.escape(settings.title, settings.preserveHTML)).addClass(settings.classTitle);
12163
+ $module.find(selector.header).html(module.helpers.escape(settings.title, settings)).addClass(settings.classTitle);
12156
12164
  }
12157
12165
  if (settings.content !== '') {
12158
- $module.find(selector.content).html(module.helpers.escape(settings.content, settings.preserveHTML)).addClass(settings.classContent);
12166
+ $module.find(selector.content).html(module.helpers.escape(settings.content, settings)).addClass(settings.classContent);
12159
12167
  }
12160
12168
  if (module.has.configActions()) {
12161
12169
  var $actions = $module.find(selector.actions).addClass(settings.classActions);
@@ -12167,10 +12175,10 @@
12167
12175
  settings.actions.forEach(function (el) {
12168
12176
  var
12169
12177
  icon = el[fields.icon]
12170
- ? '<i ' + (el[fields.text] ? 'aria-hidden="true"' : '') + ' class="' + module.helpers.deQuote(el[fields.icon]) + ' icon"></i>'
12178
+ ? '<i ' + (el[fields.text] ? 'aria-hidden="true"' : '') + ' class="' + module.helpers.escape(el[fields.icon]) + ' icon"></i>'
12171
12179
  : '',
12172
- text = module.helpers.escape(el[fields.text] || '', settings.preserveHTML),
12173
- cls = module.helpers.deQuote(el[fields.class] || ''),
12180
+ text = module.helpers.escape(el[fields.text] || '', settings),
12181
+ cls = module.helpers.escape(el[fields.class] || ''),
12174
12182
  click = el[fields.click] && isFunction(el[fields.click])
12175
12183
  ? el[fields.click]
12176
12184
  : function () {}
@@ -13114,22 +13122,18 @@
13114
13122
  },
13115
13123
 
13116
13124
  helpers: {
13117
- deQuote: function (string) {
13118
- return String(string).replace(/"/g, '');
13119
- },
13120
- escape: function (string, preserveHTML) {
13121
- if (preserveHTML) {
13125
+ escape: function (string, settings) {
13126
+ if (settings !== undefined && settings.preserveHTML) {
13122
13127
  return string;
13123
13128
  }
13124
13129
  var
13125
- badChars = /["'<>`]/g,
13126
- shouldEscape = /["&'<>`]/,
13130
+ badChars = /["'<>]/g,
13131
+ shouldEscape = /["&'<>]/,
13127
13132
  escape = {
13128
13133
  '<': '&lt;',
13129
13134
  '>': '&gt;',
13130
13135
  '"': '&quot;',
13131
- "'": '&#x27;',
13132
- '`': '&#x60;',
13136
+ "'": '&apos;',
13133
13137
  },
13134
13138
  escapedChar = function (chr) {
13135
13139
  return escape[chr];
@@ -13137,8 +13141,7 @@
13137
13141
  ;
13138
13142
  if (shouldEscape.test(string)) {
13139
13143
  string = string.replace(/&(?![\d#a-z]{1,12};)/gi, '&amp;');
13140
-
13141
- return string.replace(badChars, escapedChar);
13144
+ string = string.replace(badChars, escapedChar);
13142
13145
  }
13143
13146
 
13144
13147
  return string;
@@ -13517,7 +13520,7 @@
13517
13520
  input = $($.parseHTML(args.content)).filter('.ui.input')
13518
13521
  ;
13519
13522
  if (input.length === 0) {
13520
- args.content += '<p><div class="' + settings.className.prompt + '"><input placeholder="' + this.helpers.deQuote(args.placeholder || '') + '" type="text" value="' + this.helpers.deQuote(args.defaultValue || '') + '"></div></p>';
13523
+ args.content += '<p><div class="' + settings.className.prompt + '"><input placeholder="' + this.helpers.escape(args.placeholder || '') + '" type="text" value="' + this.helpers.escape(args.defaultValue || '') + '"></div></p>';
13521
13524
  }
13522
13525
 
13523
13526
  return {
@@ -13546,7 +13549,7 @@
13546
13549
  })(jQuery, window, document);
13547
13550
 
13548
13551
  /*!
13549
- * # Fomantic-UI 2.10.0-beta.4+fcf090f - Modal
13552
+ * # Fomantic-UI 2.10.0-beta.6+42a411a - Modal
13550
13553
  * https://github.com/fomantic/Fomantic-UI/
13551
13554
  *
13552
13555
  *
@@ -13658,10 +13661,10 @@
13658
13661
  }
13659
13662
  $module.addClass(settings.class);
13660
13663
  if (settings.title !== '') {
13661
- $module.find(selector.title).html(module.helpers.escape(settings.title, settings.preserveHTML)).addClass(settings.classTitle);
13664
+ $module.find(selector.title).html(module.helpers.escape(settings.title, settings)).addClass(settings.classTitle);
13662
13665
  }
13663
13666
  if (settings.content !== '') {
13664
- $module.find(selector.content).html(module.helpers.escape(settings.content, settings.preserveHTML)).addClass(settings.classContent);
13667
+ $module.find(selector.content).html(module.helpers.escape(settings.content, settings)).addClass(settings.classContent);
13665
13668
  }
13666
13669
  if (module.has.configActions()) {
13667
13670
  var $actions = $module.find(selector.actions).addClass(settings.classActions);
@@ -13673,10 +13676,10 @@
13673
13676
  settings.actions.forEach(function (el) {
13674
13677
  var
13675
13678
  icon = el[fields.icon]
13676
- ? '<i ' + (el[fields.text] ? 'aria-hidden="true"' : '') + ' class="' + module.helpers.deQuote(el[fields.icon]) + ' icon"></i>'
13679
+ ? '<i ' + (el[fields.text] ? 'aria-hidden="true"' : '') + ' class="' + module.helpers.escape(el[fields.icon]) + ' icon"></i>'
13677
13680
  : '',
13678
- text = module.helpers.escape(el[fields.text] || '', settings.preserveHTML),
13679
- cls = module.helpers.deQuote(el[fields.class] || ''),
13681
+ text = module.helpers.escape(el[fields.text] || '', settings),
13682
+ cls = module.helpers.escape(el[fields.class] || ''),
13680
13683
  click = el[fields.click] && isFunction(el[fields.click])
13681
13684
  ? el[fields.click]
13682
13685
  : function () {}
@@ -14474,22 +14477,18 @@
14474
14477
  module.debug('Caching modal and container sizes', module.cache);
14475
14478
  },
14476
14479
  helpers: {
14477
- deQuote: function (string) {
14478
- return String(string).replace(/"/g, '');
14479
- },
14480
- escape: function (string, preserveHTML) {
14481
- if (preserveHTML) {
14480
+ escape: function (string, settings) {
14481
+ if (settings !== undefined && settings.preserveHTML) {
14482
14482
  return string;
14483
14483
  }
14484
14484
  var
14485
- badChars = /["'<>`]/g,
14486
- shouldEscape = /["&'<>`]/,
14485
+ badChars = /["'<>]/g,
14486
+ shouldEscape = /["&'<>]/,
14487
14487
  escape = {
14488
14488
  '<': '&lt;',
14489
14489
  '>': '&gt;',
14490
14490
  '"': '&quot;',
14491
- "'": '&#x27;',
14492
- '`': '&#x60;',
14491
+ "'": '&apos;',
14493
14492
  },
14494
14493
  escapedChar = function (chr) {
14495
14494
  return escape[chr];
@@ -14497,8 +14496,7 @@
14497
14496
  ;
14498
14497
  if (shouldEscape.test(string)) {
14499
14498
  string = string.replace(/&(?![\d#a-z]{1,12};)/gi, '&amp;');
14500
-
14501
- return string.replace(badChars, escapedChar);
14499
+ string = string.replace(badChars, escapedChar);
14502
14500
  }
14503
14501
 
14504
14502
  return string;
@@ -15137,7 +15135,7 @@
15137
15135
  }
15138
15136
  ;
15139
15137
  if (input.length === 0) {
15140
- args.content += '<p><div class="' + this.helpers.deQuote(settings.className.prompt) + '"><input placeholder="' + this.helpers.deQuote(args.placeholder || '') + '" type="text" value="' + this.helpers.deQuote(args.defaultValue || '') + '"></div></p>';
15138
+ args.content += '<p><div class="' + this.helpers.escape(settings.className.prompt) + '"><input placeholder="' + this.helpers.escape(args.placeholder || '') + '" type="text" value="' + this.helpers.escape(args.defaultValue || '') + '"></div></p>';
15141
15139
  }
15142
15140
 
15143
15141
  return {
@@ -15160,7 +15158,7 @@
15160
15158
  })(jQuery, window, document);
15161
15159
 
15162
15160
  /*!
15163
- * # Fomantic-UI 2.10.0-beta.4+fcf090f - Nag
15161
+ * # Fomantic-UI 2.10.0-beta.6+42a411a - Nag
15164
15162
  * https://github.com/fomantic/Fomantic-UI/
15165
15163
  *
15166
15164
  *
@@ -15727,7 +15725,7 @@
15727
15725
  })(jQuery, window, document);
15728
15726
 
15729
15727
  /*!
15730
- * # Fomantic-UI 2.10.0-beta.4+fcf090f - Popup
15728
+ * # Fomantic-UI 2.10.0-beta.6+42a411a - Popup
15731
15729
  * https://github.com/fomantic/Fomantic-UI/
15732
15730
  *
15733
15731
  *
@@ -17244,14 +17242,13 @@
17244
17242
  templates: {
17245
17243
  escape: function (string) {
17246
17244
  var
17247
- badChars = /["'<>`]/g,
17248
- shouldEscape = /["&'<>`]/,
17245
+ badChars = /["'<>]/g,
17246
+ shouldEscape = /["&'<>]/,
17249
17247
  escape = {
17250
17248
  '<': '&lt;',
17251
17249
  '>': '&gt;',
17252
17250
  '"': '&quot;',
17253
- "'": '&#x27;',
17254
- '`': '&#x60;',
17251
+ "'": '&apos;',
17255
17252
  },
17256
17253
  escapedChar = function (chr) {
17257
17254
  return escape[chr];
@@ -17259,8 +17256,7 @@
17259
17256
  ;
17260
17257
  if (shouldEscape.test(string)) {
17261
17258
  string = string.replace(/&(?![\d#a-z]{1,12};)/gi, '&amp;');
17262
-
17263
- return string.replace(badChars, escapedChar);
17259
+ string = string.replace(badChars, escapedChar);
17264
17260
  }
17265
17261
 
17266
17262
  return string;
@@ -17289,7 +17285,7 @@
17289
17285
  })(jQuery, window, document);
17290
17286
 
17291
17287
  /*!
17292
- * # Fomantic-UI 2.10.0-beta.4+fcf090f - Progress
17288
+ * # Fomantic-UI 2.10.0-beta.6+42a411a - Progress
17293
17289
  * https://github.com/fomantic/Fomantic-UI/
17294
17290
  *
17295
17291
  *
@@ -18269,7 +18265,7 @@
18269
18265
  })(jQuery, window, document);
18270
18266
 
18271
18267
  /*!
18272
- * # Fomantic-UI 2.10.0-beta.4+fcf090f - Slider
18268
+ * # Fomantic-UI 2.10.0-beta.6+42a411a - Slider
18273
18269
  * https://github.com/fomantic/Fomantic-UI/
18274
18270
  *
18275
18271
  *
@@ -19816,7 +19812,7 @@
19816
19812
  })(jQuery, window, document);
19817
19813
 
19818
19814
  /*!
19819
- * # Fomantic-UI 2.10.0-beta.4+fcf090f - Rating
19815
+ * # Fomantic-UI 2.10.0-beta.6+42a411a - Rating
19820
19816
  * https://github.com/fomantic/Fomantic-UI/
19821
19817
  *
19822
19818
  *
@@ -20335,17 +20331,35 @@
20335
20331
  },
20336
20332
 
20337
20333
  templates: {
20338
- deQuote: function (string, encode) {
20339
- return String(string).replace(/"/g, encode ? '&quot;' : '');
20334
+ escape: function (string) {
20335
+ var
20336
+ badChars = /["'<>]/g,
20337
+ shouldEscape = /["&'<>]/,
20338
+ escape = {
20339
+ '<': '&lt;',
20340
+ '>': '&gt;',
20341
+ '"': '&quot;',
20342
+ "'": '&apos;',
20343
+ },
20344
+ escapedChar = function (chr) {
20345
+ return escape[chr];
20346
+ }
20347
+ ;
20348
+ if (shouldEscape.test(string)) {
20349
+ string = string.replace(/&(?![\d#a-z]{1,12};)/gi, '&amp;');
20350
+ string = string.replace(badChars, escapedChar);
20351
+ }
20352
+
20353
+ return string;
20340
20354
  },
20341
20355
  icon: function (maxRating, iconClass) {
20342
20356
  var
20343
20357
  icon = 1,
20344
20358
  html = '',
20345
- deQuote = $.fn.rating.settings.templates.deQuote
20359
+ escape = $.fn.rating.settings.templates.escape
20346
20360
  ;
20347
20361
  while (icon <= maxRating) {
20348
- html += '<i class="' + deQuote(iconClass) + ' icon"></i>';
20362
+ html += '<i class="' + escape(iconClass) + ' icon"></i>';
20349
20363
  icon++;
20350
20364
  }
20351
20365
 
@@ -20357,7 +20371,7 @@
20357
20371
  })(jQuery, window, document);
20358
20372
 
20359
20373
  /*!
20360
- * # Fomantic-UI 2.10.0-beta.4+fcf090f - Search
20374
+ * # Fomantic-UI 2.10.0-beta.6+42a411a - Search
20361
20375
  * https://github.com/fomantic/Fomantic-UI/
20362
20376
  *
20363
20377
  *
@@ -20819,10 +20833,6 @@
20819
20833
  settings.fullTextSearch = parameters.searchFullText;
20820
20834
  module.error(settings.error.oldSearchSyntax, element);
20821
20835
  }
20822
- if (settings.ignoreDiacritics && !String.prototype.normalize) {
20823
- settings.ignoreDiacritics = false;
20824
- module.error(error.noNormalize, element);
20825
- }
20826
20836
  },
20827
20837
  inputEvent: function () {
20828
20838
  var
@@ -21498,7 +21508,7 @@
21498
21508
  });
21499
21509
  }
21500
21510
  if (isFunction(template)) {
21501
- html = template(response, fields, settings.preserveHTML);
21511
+ html = template(response, settings);
21502
21512
  } else {
21503
21513
  module.error(error.noTemplate, false);
21504
21514
  }
@@ -21791,7 +21801,6 @@
21791
21801
  serverError: 'There was an issue querying the server.',
21792
21802
  maxResults: 'Results must be an array to use maxResults setting',
21793
21803
  method: 'The method you called is not defined.',
21794
- noNormalize: '"ignoreDiacritics" setting will be ignored. Browser does not support String().normalize(). You may consider including <https://cdn.jsdelivr.net/npm/unorm@1.4.1/lib/unorm.min.js> as a polyfill.',
21795
21804
  },
21796
21805
 
21797
21806
  metadata: {
@@ -21834,23 +21843,23 @@
21834
21843
  },
21835
21844
 
21836
21845
  templates: {
21837
- escape: function (string, preserveHTML) {
21838
- if (preserveHTML) {
21846
+ escape: function (string, settings) {
21847
+ if (settings !== undefined && settings.preserveHTML) {
21839
21848
  return string;
21840
21849
  }
21841
21850
  var
21842
- badChars = /["'<>`]/g,
21843
- shouldEscape = /["&'<>`]/,
21851
+ badChars = /["'<>]/g,
21852
+ shouldEscape = /["&'<>]/,
21844
21853
  escape = {
21845
21854
  '<': '&lt;',
21846
21855
  '>': '&gt;',
21847
21856
  '"': '&quot;',
21848
- "'": '&#x27;',
21849
- '`': '&#x60;',
21857
+ "'": '&apos;',
21850
21858
  },
21851
21859
  escapedChar = function (chr) {
21852
21860
  return escape[chr];
21853
- };
21861
+ }
21862
+ ;
21854
21863
  if (shouldEscape.test(string)) {
21855
21864
  string = string.replace(/&(?![\d#a-z]{1,12};)/gi, '&amp;');
21856
21865
  string = string.replace(badChars, escapedChar);
@@ -21877,10 +21886,11 @@
21877
21886
 
21878
21887
  return html;
21879
21888
  },
21880
- category: function (response, fields, preserveHTML) {
21889
+ category: function (response, settings) {
21881
21890
  var
21882
21891
  html = '',
21883
- escape = $.fn.search.settings.templates.escape
21892
+ fields = settings.fields,
21893
+ escape = settings.templates.escape
21884
21894
  ;
21885
21895
  if (response[fields.categoryResults] !== undefined) {
21886
21896
  // each category
@@ -21889,7 +21899,7 @@
21889
21899
  html += '<div class="category">';
21890
21900
 
21891
21901
  if (category[fields.categoryName] !== undefined) {
21892
- html += '<div class="name">' + escape(category[fields.categoryName], preserveHTML) + '</div>';
21902
+ html += '<div class="name">' + escape(category[fields.categoryName], settings) + '</div>';
21893
21903
  }
21894
21904
 
21895
21905
  // each item inside category
@@ -21901,18 +21911,18 @@
21901
21911
  if (result[fields.image] !== undefined) {
21902
21912
  html += ''
21903
21913
  + '<div class="image">'
21904
- + ' <img src="' + result[fields.image].replace(/"/g, '') + (result[fields.alt] ? '" alt="' + result[fields.alt].replace(/"/g, '') : '') + '">'
21914
+ + ' <img src="' + result[fields.image].replace(/"/g, '') + '"' + (result[fields.alt] ? ' alt="' + result[fields.alt].replace(/"/g, '') + '"' : '') + '>'
21905
21915
  + '</div>';
21906
21916
  }
21907
21917
  html += '<div class="content">';
21908
21918
  if (result[fields.price] !== undefined) {
21909
- html += '<div class="price">' + escape(result[fields.price], preserveHTML) + '</div>';
21919
+ html += '<div class="price">' + escape(result[fields.price], settings) + '</div>';
21910
21920
  }
21911
21921
  if (result[fields.title] !== undefined) {
21912
- html += '<div class="title">' + escape(result[fields.title], preserveHTML) + '</div>';
21922
+ html += '<div class="title">' + escape(result[fields.title], settings) + '</div>';
21913
21923
  }
21914
21924
  if (result[fields.description] !== undefined) {
21915
- html += '<div class="description">' + escape(result[fields.description], preserveHTML) + '</div>';
21925
+ html += '<div class="description">' + escape(result[fields.description], settings) + '</div>';
21916
21926
  }
21917
21927
  html += ''
21918
21928
  + '</div>';
@@ -21927,11 +21937,11 @@
21927
21937
  html += fields.actionURL === false
21928
21938
  ? ''
21929
21939
  + '<div class="action">'
21930
- + escape(response[fields.action][fields.actionText], preserveHTML)
21940
+ + escape(response[fields.action][fields.actionText], settings)
21931
21941
  + '</div>'
21932
21942
  : ''
21933
21943
  + '<a href="' + response[fields.action][fields.actionURL].replace(/"/g, '') + '" class="action">'
21934
- + escape(response[fields.action][fields.actionText], preserveHTML)
21944
+ + escape(response[fields.action][fields.actionText], settings)
21935
21945
  + '</a>';
21936
21946
  }
21937
21947
 
@@ -21940,10 +21950,11 @@
21940
21950
 
21941
21951
  return false;
21942
21952
  },
21943
- standard: function (response, fields, preserveHTML) {
21953
+ standard: function (response, settings) {
21944
21954
  var
21945
21955
  html = '',
21946
- escape = $.fn.search.settings.templates.escape
21956
+ fields = settings.fields,
21957
+ escape = settings.templates.escape
21947
21958
  ;
21948
21959
  if (response[fields.results] !== undefined) {
21949
21960
  // each result
@@ -21954,18 +21965,18 @@
21954
21965
  if (result[fields.image] !== undefined) {
21955
21966
  html += ''
21956
21967
  + '<div class="image">'
21957
- + ' <img src="' + result[fields.image].replace(/"/g, '') + (result[fields.alt] ? '" alt="' + result[fields.alt].replace(/"/g, '') : '') + '">'
21968
+ + ' <img src="' + result[fields.image].replace(/"/g, '') + '"' + (result[fields.alt] ? ' alt="' + result[fields.alt].replace(/"/g, '') + '"' : '') + '>'
21958
21969
  + '</div>';
21959
21970
  }
21960
21971
  html += '<div class="content">';
21961
21972
  if (result[fields.price] !== undefined) {
21962
- html += '<div class="price">' + escape(result[fields.price], preserveHTML) + '</div>';
21973
+ html += '<div class="price">' + escape(result[fields.price], settings) + '</div>';
21963
21974
  }
21964
21975
  if (result[fields.title] !== undefined) {
21965
- html += '<div class="title">' + escape(result[fields.title], preserveHTML) + '</div>';
21976
+ html += '<div class="title">' + escape(result[fields.title], settings) + '</div>';
21966
21977
  }
21967
21978
  if (result[fields.description] !== undefined) {
21968
- html += '<div class="description">' + escape(result[fields.description], preserveHTML) + '</div>';
21979
+ html += '<div class="description">' + escape(result[fields.description], settings) + '</div>';
21969
21980
  }
21970
21981
  html += ''
21971
21982
  + '</div>';
@@ -21975,11 +21986,11 @@
21975
21986
  html += fields.actionURL === false
21976
21987
  ? ''
21977
21988
  + '<div class="action">'
21978
- + escape(response[fields.action][fields.actionText], preserveHTML)
21989
+ + escape(response[fields.action][fields.actionText], settings)
21979
21990
  + '</div>'
21980
21991
  : ''
21981
21992
  + '<a href="' + response[fields.action][fields.actionURL].replace(/"/g, '') + '" class="action">'
21982
- + escape(response[fields.action][fields.actionText], preserveHTML)
21993
+ + escape(response[fields.action][fields.actionText], settings)
21983
21994
  + '</a>';
21984
21995
  }
21985
21996
 
@@ -21999,7 +22010,7 @@
21999
22010
  })(jQuery, window, document);
22000
22011
 
22001
22012
  /*!
22002
- * # Fomantic-UI 2.10.0-beta.4+fcf090f - Shape
22013
+ * # Fomantic-UI 2.10.0-beta.6+42a411a - Shape
22003
22014
  * https://github.com/fomantic/Fomantic-UI/
22004
22015
  *
22005
22016
  *
@@ -22797,7 +22808,7 @@
22797
22808
  })(jQuery, window, document);
22798
22809
 
22799
22810
  /*!
22800
- * # Fomantic-UI 2.10.0-beta.4+fcf090f - Sidebar
22811
+ * # Fomantic-UI 2.10.0-beta.6+42a411a - Sidebar
22801
22812
  * https://github.com/fomantic/Fomantic-UI/
22802
22813
  *
22803
22814
  *
@@ -23811,7 +23822,7 @@
23811
23822
  })(jQuery, window, document);
23812
23823
 
23813
23824
  /*!
23814
- * # Fomantic-UI 2.10.0-beta.4+fcf090f - Sticky
23825
+ * # Fomantic-UI 2.10.0-beta.6+42a411a - Sticky
23815
23826
  * https://github.com/fomantic/Fomantic-UI/
23816
23827
  *
23817
23828
  *
@@ -24729,7 +24740,7 @@
24729
24740
  })(jQuery, window, document);
24730
24741
 
24731
24742
  /*!
24732
- * # Fomantic-UI 2.10.0-beta.4+fcf090f - Tab
24743
+ * # Fomantic-UI 2.10.0-beta.6+42a411a - Tab
24733
24744
  * https://github.com/fomantic/Fomantic-UI/
24734
24745
  *
24735
24746
  *
@@ -25694,7 +25705,7 @@
25694
25705
  })(jQuery, window, document);
25695
25706
 
25696
25707
  /*!
25697
- * # Fomantic-UI 2.10.0-beta.4+fcf090f - Toast
25708
+ * # Fomantic-UI 2.10.0-beta.6+42a411a - Toast
25698
25709
  * https://github.com/fomantic/Fomantic-UI/
25699
25710
  *
25700
25711
  *
@@ -25887,7 +25898,7 @@
25887
25898
  $content.append($('<div/>', {
25888
25899
  class: className.title,
25889
25900
  id: titleId,
25890
- html: module.helpers.escape(settings.title, settings.preserveHTML),
25901
+ html: module.helpers.escape(settings.title, settings),
25891
25902
  }));
25892
25903
  }
25893
25904
  var descId = '_' + module.get.id() + 'desc';
@@ -25895,7 +25906,7 @@
25895
25906
  $content.append($('<div/>', {
25896
25907
  class: className.message,
25897
25908
  id: descId,
25898
- html: module.helpers.escape(settings.message, settings.preserveHTML),
25909
+ html: module.helpers.escape(settings.message, settings),
25899
25910
  }));
25900
25911
 
25901
25912
  $toast
@@ -25927,10 +25938,10 @@
25927
25938
  $toast.find(selector.image).attr('src', settings.showImage).attr('alt', settings.alt || '');
25928
25939
  }
25929
25940
  if (settings.title !== '') {
25930
- $toast.find(selector.title).html(module.helpers.escape(settings.title, settings.preserveHTML));
25941
+ $toast.find(selector.title).html(module.helpers.escape(settings.title, settings));
25931
25942
  }
25932
25943
  if (settings.message !== '') {
25933
- $toast.find(selector.message).html(module.helpers.escape(settings.message, settings.preserveHTML));
25944
+ $toast.find(selector.message).html(module.helpers.escape(settings.message, settings));
25934
25945
  }
25935
25946
  }
25936
25947
  if ($toast.hasClass(className.compact)) {
@@ -25955,10 +25966,10 @@
25955
25966
  var
25956
25967
  icon = el[fields.icon]
25957
25968
  ? '<i ' + (el[fields.text] ? 'aria-hidden="true"' : '')
25958
- + ' class="' + module.helpers.deQuote(el[fields.icon]) + ' icon"></i>'
25969
+ + ' class="' + module.helpers.escape(el[fields.icon]) + ' icon"></i>'
25959
25970
  : '',
25960
- text = module.helpers.escape(el[fields.text] || '', settings.preserveHTML),
25961
- cls = module.helpers.deQuote(el[fields.class] || ''),
25971
+ text = module.helpers.escape(el[fields.text] || '', settings),
25972
+ cls = module.helpers.escape(el[fields.class] || ''),
25962
25973
  click = el[fields.click] && isFunction(el[fields.click])
25963
25974
  ? el[fields.click]
25964
25975
  : function () {}
@@ -26287,22 +26298,18 @@
26287
26298
 
26288
26299
  return result;
26289
26300
  },
26290
- deQuote: function (string) {
26291
- return String(string).replace(/"/g, '');
26292
- },
26293
- escape: function (string, preserveHTML) {
26294
- if (preserveHTML) {
26301
+ escape: function (string, settings) {
26302
+ if (settings !== undefined && settings.preserveHTML) {
26295
26303
  return string;
26296
26304
  }
26297
26305
  var
26298
- badChars = /["'<>`]/g,
26299
- shouldEscape = /["&'<>`]/,
26306
+ badChars = /["'<>]/g,
26307
+ shouldEscape = /["&'<>]/,
26300
26308
  escape = {
26301
26309
  '<': '&lt;',
26302
26310
  '>': '&gt;',
26303
26311
  '"': '&quot;',
26304
- "'": '&#x27;',
26305
- '`': '&#x60;',
26312
+ "'": '&apos;',
26306
26313
  },
26307
26314
  escapedChar = function (chr) {
26308
26315
  return escape[chr];
@@ -26310,8 +26317,7 @@
26310
26317
  ;
26311
26318
  if (shouldEscape.test(string)) {
26312
26319
  string = string.replace(/&(?![\d#a-z]{1,12};)/gi, '&amp;');
26313
-
26314
- return string.replace(badChars, escapedChar);
26320
+ string = string.replace(badChars, escapedChar);
26315
26321
  }
26316
26322
 
26317
26323
  return string;
@@ -26659,7 +26665,7 @@
26659
26665
  })(jQuery, window, document);
26660
26666
 
26661
26667
  /*!
26662
- * # Fomantic-UI 2.10.0-beta.4+fcf090f - Transition
26668
+ * # Fomantic-UI 2.10.0-beta.6+42a411a - Transition
26663
26669
  * https://github.com/fomantic/Fomantic-UI/
26664
26670
  *
26665
26671
  *
@@ -27694,7 +27700,7 @@
27694
27700
  })(jQuery, window, document);
27695
27701
 
27696
27702
  /*!
27697
- * # Fomantic-UI 2.10.0-beta.4+fcf090f - API
27703
+ * # Fomantic-UI 2.10.0-beta.6+42a411a - API
27698
27704
  * https://github.com/fomantic/Fomantic-UI/
27699
27705
  *
27700
27706
  *
@@ -28920,7 +28926,7 @@
28920
28926
  })(jQuery, window, document);
28921
28927
 
28922
28928
  /*!
28923
- * # Fomantic-UI 2.10.0-beta.4+fcf090f - State
28929
+ * # Fomantic-UI 2.10.0-beta.6+42a411a - State
28924
28930
  * https://github.com/fomantic/Fomantic-UI/
28925
28931
  *
28926
28932
  *
@@ -29618,7 +29624,7 @@
29618
29624
  })(jQuery, window, document);
29619
29625
 
29620
29626
  /*!
29621
- * # Fomantic-UI 2.10.0-beta.4+fcf090f - Visibility
29627
+ * # Fomantic-UI 2.10.0-beta.6+42a411a - Visibility
29622
29628
  * https://github.com/fomantic/Fomantic-UI/
29623
29629
  *
29624
29630
  *