fomantic-ui 2.9.0-beta.3 → 2.9.0-beta.301

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 (411) hide show
  1. package/.all-contributorsrc +251 -3
  2. package/.github/codeql/codeql-config.yml +4 -0
  3. package/.github/dependabot.yml +10 -0
  4. package/.github/workflows/ci.yml +10 -6
  5. package/.github/workflows/codeql.yml +68 -0
  6. package/.github/workflows/nightly.yml +16 -8
  7. package/.github/workflows/release.yml +34 -0
  8. package/CONTRIBUTING.md +1 -1
  9. package/CONTRIBUTORS.md +82 -37
  10. package/FAQ.md +38 -38
  11. package/README.md +8 -8
  12. package/dist/components/accordion.css +176 -36
  13. package/dist/components/accordion.js +6 -3
  14. package/dist/components/accordion.min.css +2 -2
  15. package/dist/components/accordion.min.js +3 -3
  16. package/dist/components/ad.css +4 -4
  17. package/dist/components/ad.min.css +2 -2
  18. package/dist/components/api.js +90 -31
  19. package/dist/components/api.min.js +3 -3
  20. package/dist/components/breadcrumb.css +1 -1
  21. package/dist/components/breadcrumb.min.css +1 -1
  22. package/dist/components/button.css +204 -157
  23. package/dist/components/button.min.css +2 -2
  24. package/dist/components/calendar.css +18 -1
  25. package/dist/components/calendar.js +189 -76
  26. package/dist/components/calendar.min.css +2 -2
  27. package/dist/components/calendar.min.js +3 -3
  28. package/dist/components/card.css +754 -117
  29. package/dist/components/card.min.css +2 -2
  30. package/dist/components/checkbox.css +92 -91
  31. package/dist/components/checkbox.js +17 -11
  32. package/dist/components/checkbox.min.css +2 -2
  33. package/dist/components/checkbox.min.js +3 -3
  34. package/dist/components/comment.css +12 -12
  35. package/dist/components/comment.min.css +2 -2
  36. package/dist/components/container.css +98 -4
  37. package/dist/components/container.min.css +2 -2
  38. package/dist/components/dimmer.css +29 -14
  39. package/dist/components/dimmer.js +11 -5
  40. package/dist/components/dimmer.min.css +2 -2
  41. package/dist/components/dimmer.min.js +3 -3
  42. package/dist/components/divider.css +31 -31
  43. package/dist/components/divider.min.css +2 -2
  44. package/dist/components/dropdown.css +90 -50
  45. package/dist/components/dropdown.js +152 -117
  46. package/dist/components/dropdown.min.css +2 -2
  47. package/dist/components/dropdown.min.js +3 -3
  48. package/dist/components/embed.css +5 -5
  49. package/dist/components/embed.js +1 -1
  50. package/dist/components/embed.min.css +2 -2
  51. package/dist/components/embed.min.js +3 -3
  52. package/dist/components/emoji.css +10847 -8841
  53. package/dist/components/emoji.min.css +1 -1
  54. package/dist/components/feed.css +29 -29
  55. package/dist/components/feed.min.css +2 -2
  56. package/dist/components/flag.css +1011 -902
  57. package/dist/components/flag.min.css +2 -2
  58. package/dist/components/form.css +160 -83
  59. package/dist/components/form.js +39 -30
  60. package/dist/components/form.min.css +2 -2
  61. package/dist/components/form.min.js +3 -3
  62. package/dist/components/grid.css +25 -21
  63. package/dist/components/grid.min.css +2 -2
  64. package/dist/components/header.css +6 -4
  65. package/dist/components/header.min.css +2 -2
  66. package/dist/components/icon.css +2063 -1984
  67. package/dist/components/icon.min.css +2 -2
  68. package/dist/components/image.css +1 -1
  69. package/dist/components/image.min.css +1 -1
  70. package/dist/components/input.css +759 -22
  71. package/dist/components/input.min.css +2 -2
  72. package/dist/components/item.css +17 -17
  73. package/dist/components/item.min.css +2 -2
  74. package/dist/components/label.css +72 -68
  75. package/dist/components/label.min.css +2 -2
  76. package/dist/components/list.css +31 -31
  77. package/dist/components/list.min.css +2 -2
  78. package/dist/components/loader.css +352 -352
  79. package/dist/components/loader.min.css +2 -2
  80. package/dist/components/menu.css +110 -78
  81. package/dist/components/menu.min.css +1 -1
  82. package/dist/components/message.css +43 -43
  83. package/dist/components/message.min.css +2 -2
  84. package/dist/components/modal.css +29 -4
  85. package/dist/components/modal.js +128 -50
  86. package/dist/components/modal.min.css +2 -2
  87. package/dist/components/modal.min.js +3 -3
  88. package/dist/components/nag.css +1 -1
  89. package/dist/components/nag.js +2 -2
  90. package/dist/components/nag.min.css +1 -1
  91. package/dist/components/nag.min.js +3 -3
  92. package/dist/components/placeholder.css +33 -33
  93. package/dist/components/placeholder.min.css +2 -2
  94. package/dist/components/popup.css +103 -105
  95. package/dist/components/popup.js +11 -11
  96. package/dist/components/popup.min.css +2 -2
  97. package/dist/components/popup.min.js +3 -3
  98. package/dist/components/progress.css +1 -1
  99. package/dist/components/progress.js +6 -3
  100. package/dist/components/progress.min.css +1 -1
  101. package/dist/components/progress.min.js +3 -3
  102. package/dist/components/rail.css +1 -1
  103. package/dist/components/rail.min.css +1 -1
  104. package/dist/components/rating.css +7 -46
  105. package/dist/components/rating.js +1 -1
  106. package/dist/components/rating.min.css +2 -2
  107. package/dist/components/rating.min.js +3 -3
  108. package/dist/components/reset.css +5 -4
  109. package/dist/components/reset.min.css +2 -2
  110. package/dist/components/reveal.css +1 -1
  111. package/dist/components/reveal.min.css +1 -1
  112. package/dist/components/search.css +6 -6
  113. package/dist/components/search.js +23 -7
  114. package/dist/components/search.min.css +2 -2
  115. package/dist/components/search.min.js +3 -3
  116. package/dist/components/segment.css +118 -34
  117. package/dist/components/segment.min.css +2 -2
  118. package/dist/components/shape.css +1 -1
  119. package/dist/components/shape.js +3 -3
  120. package/dist/components/shape.min.css +1 -1
  121. package/dist/components/shape.min.js +3 -3
  122. package/dist/components/sidebar.css +7 -5
  123. package/dist/components/sidebar.js +14 -12
  124. package/dist/components/sidebar.min.css +2 -2
  125. package/dist/components/sidebar.min.js +3 -3
  126. package/dist/components/site.css +139 -42
  127. package/dist/components/site.js +1 -1
  128. package/dist/components/site.min.css +2 -2
  129. package/dist/components/site.min.js +3 -3
  130. package/dist/components/slider.css +17 -17
  131. package/dist/components/slider.js +68 -51
  132. package/dist/components/slider.min.css +1 -1
  133. package/dist/components/slider.min.js +3 -3
  134. package/dist/components/state.js +2 -2
  135. package/dist/components/state.min.js +3 -3
  136. package/dist/components/statistic.css +4 -4
  137. package/dist/components/statistic.min.css +2 -2
  138. package/dist/components/step.css +32 -32
  139. package/dist/components/step.min.css +2 -2
  140. package/dist/components/sticky.css +1 -1
  141. package/dist/components/sticky.js +5 -5
  142. package/dist/components/sticky.min.css +1 -1
  143. package/dist/components/sticky.min.js +3 -3
  144. package/dist/components/tab.css +5 -5
  145. package/dist/components/tab.js +24 -6
  146. package/dist/components/tab.min.css +2 -2
  147. package/dist/components/tab.min.js +3 -3
  148. package/dist/components/table.css +1684 -272
  149. package/dist/components/table.min.css +2 -2
  150. package/dist/components/text.css +1 -1
  151. package/dist/components/text.min.css +1 -1
  152. package/dist/components/toast.css +48 -1
  153. package/dist/components/toast.js +63 -31
  154. package/dist/components/toast.min.css +2 -2
  155. package/dist/components/toast.min.js +3 -3
  156. package/dist/components/transition.css +1 -1
  157. package/dist/components/transition.js +22 -17
  158. package/dist/components/transition.min.css +1 -1
  159. package/dist/components/transition.min.js +3 -3
  160. package/dist/components/visibility.js +3 -3
  161. package/dist/components/visibility.min.js +3 -3
  162. package/dist/semantic.css +20204 -13425
  163. package/dist/semantic.js +883 -481
  164. package/dist/semantic.min.css +3 -3
  165. package/dist/semantic.min.js +3 -3
  166. package/dist/themes/default/assets/fonts/Lato-Bold.woff +0 -0
  167. package/dist/themes/default/assets/fonts/Lato-Bold.woff2 +0 -0
  168. package/dist/themes/default/assets/fonts/Lato-BoldItalic.woff +0 -0
  169. package/dist/themes/default/assets/fonts/Lato-BoldItalic.woff2 +0 -0
  170. package/dist/themes/default/assets/fonts/Lato-Italic.woff +0 -0
  171. package/dist/themes/default/assets/fonts/Lato-Italic.woff2 +0 -0
  172. package/dist/themes/default/assets/fonts/Lato-Regular.woff +0 -0
  173. package/dist/themes/default/assets/fonts/Lato-Regular.woff2 +0 -0
  174. package/dist/themes/default/assets/fonts/LatoLatin-Bold.woff +0 -0
  175. package/dist/themes/default/assets/fonts/LatoLatin-Bold.woff2 +0 -0
  176. package/dist/themes/default/assets/fonts/LatoLatin-BoldItalic.woff +0 -0
  177. package/dist/themes/default/assets/fonts/LatoLatin-BoldItalic.woff2 +0 -0
  178. package/dist/themes/default/assets/fonts/LatoLatin-Italic.woff +0 -0
  179. package/dist/themes/default/assets/fonts/LatoLatin-Italic.woff2 +0 -0
  180. package/dist/themes/default/assets/fonts/LatoLatin-Regular.woff +0 -0
  181. package/dist/themes/default/assets/fonts/LatoLatin-Regular.woff2 +0 -0
  182. package/dist/themes/default/assets/fonts/brand-icons.eot +0 -0
  183. package/dist/themes/default/assets/fonts/brand-icons.svg +801 -654
  184. package/dist/themes/default/assets/fonts/brand-icons.ttf +0 -0
  185. package/dist/themes/default/assets/fonts/brand-icons.woff +0 -0
  186. package/dist/themes/default/assets/fonts/brand-icons.woff2 +0 -0
  187. package/dist/themes/default/assets/fonts/icons.eot +0 -0
  188. package/dist/themes/default/assets/fonts/icons.svg +1175 -1079
  189. package/dist/themes/default/assets/fonts/icons.ttf +0 -0
  190. package/dist/themes/default/assets/fonts/icons.woff +0 -0
  191. package/dist/themes/default/assets/fonts/icons.woff2 +0 -0
  192. package/dist/themes/default/assets/fonts/outline-icons.eot +0 -0
  193. package/dist/themes/default/assets/fonts/outline-icons.svg +93 -95
  194. package/dist/themes/default/assets/fonts/outline-icons.ttf +0 -0
  195. package/dist/themes/default/assets/fonts/outline-icons.woff +0 -0
  196. package/dist/themes/default/assets/fonts/outline-icons.woff2 +0 -0
  197. package/dist/themes/{default → famfamfam}/assets/images/flags.png +0 -0
  198. package/examples/assets/library/iframe-content.js +11 -11
  199. package/examples/assets/library/iframe.js +6 -6
  200. package/examples/components/button.html +1 -1
  201. package/examples/components/card.html +1 -1
  202. package/examples/components/input.html +1 -1
  203. package/examples/components/menu.html +1 -1
  204. package/examples/components/site.html +1 -1
  205. package/examples/components/table.html +1 -1
  206. package/package.json +18 -16
  207. package/scripts/nightly-version.js +47 -38
  208. package/src/definitions/behaviors/api.js +89 -30
  209. package/src/definitions/behaviors/form.js +38 -29
  210. package/src/definitions/behaviors/state.js +1 -1
  211. package/src/definitions/behaviors/visibility.js +2 -2
  212. package/src/definitions/collections/form.less +229 -165
  213. package/src/definitions/collections/grid.less +723 -687
  214. package/src/definitions/collections/menu.less +233 -171
  215. package/src/definitions/collections/message.less +49 -47
  216. package/src/definitions/collections/table.less +882 -272
  217. package/src/definitions/elements/button.less +611 -469
  218. package/src/definitions/elements/container.less +145 -8
  219. package/src/definitions/elements/divider.less +24 -24
  220. package/src/definitions/elements/emoji.less +39 -10
  221. package/src/definitions/elements/flag.less +53 -18
  222. package/src/definitions/elements/header.less +46 -37
  223. package/src/definitions/elements/icon.less +39 -32
  224. package/src/definitions/elements/input.less +281 -33
  225. package/src/definitions/elements/label.less +132 -128
  226. package/src/definitions/elements/list.less +84 -75
  227. package/src/definitions/elements/loader.less +99 -98
  228. package/src/definitions/elements/placeholder.less +32 -32
  229. package/src/definitions/elements/segment.less +177 -56
  230. package/src/definitions/elements/step.less +76 -72
  231. package/src/definitions/elements/text.less +17 -15
  232. package/src/definitions/globals/reset.less +2 -2
  233. package/src/definitions/globals/site.less +25 -2
  234. package/src/definitions/modules/accordion.js +5 -2
  235. package/src/definitions/modules/accordion.less +371 -219
  236. package/src/definitions/modules/calendar.js +188 -75
  237. package/src/definitions/modules/calendar.less +20 -0
  238. package/src/definitions/modules/checkbox.js +16 -10
  239. package/src/definitions/modules/checkbox.less +83 -227
  240. package/src/definitions/modules/dimmer.js +10 -4
  241. package/src/definitions/modules/dimmer.less +22 -8
  242. package/src/definitions/modules/dropdown.js +151 -116
  243. package/src/definitions/modules/dropdown.less +191 -136
  244. package/src/definitions/modules/embed.less +4 -4
  245. package/src/definitions/modules/modal.js +127 -49
  246. package/src/definitions/modules/modal.less +66 -33
  247. package/src/definitions/modules/nag.js +1 -1
  248. package/src/definitions/modules/nag.less +20 -19
  249. package/src/definitions/modules/popup.js +10 -10
  250. package/src/definitions/modules/popup.less +90 -90
  251. package/src/definitions/modules/progress.js +5 -2
  252. package/src/definitions/modules/progress.less +19 -18
  253. package/src/definitions/modules/rating.less +49 -42
  254. package/src/definitions/modules/search.js +22 -6
  255. package/src/definitions/modules/search.less +35 -19
  256. package/src/definitions/modules/shape.js +2 -2
  257. package/src/definitions/modules/sidebar.js +13 -11
  258. package/src/definitions/modules/sidebar.less +36 -22
  259. package/src/definitions/modules/slider.js +67 -50
  260. package/src/definitions/modules/slider.less +48 -47
  261. package/src/definitions/modules/sticky.js +4 -4
  262. package/src/definitions/modules/sticky.less +3 -1
  263. package/src/definitions/modules/tab.js +23 -5
  264. package/src/definitions/modules/tab.less +4 -4
  265. package/src/definitions/modules/toast.js +62 -30
  266. package/src/definitions/modules/toast.less +56 -16
  267. package/src/definitions/modules/transition.js +21 -16
  268. package/src/definitions/views/ad.less +3 -3
  269. package/src/definitions/views/card.less +522 -375
  270. package/src/definitions/views/comment.less +93 -82
  271. package/src/definitions/views/feed.less +164 -144
  272. package/src/definitions/views/item.less +251 -198
  273. package/src/definitions/views/statistic.less +91 -89
  274. package/src/theme.less +13 -2
  275. package/src/themes/amazon/globals/site.variables +1 -0
  276. package/src/themes/basic/elements/icon.overrides +149 -149
  277. package/src/themes/basic/elements/step.overrides +2 -2
  278. package/src/themes/bookish/elements/header.overrides +1 -1
  279. package/src/themes/chubby/elements/button.overrides +1 -1
  280. package/src/themes/chubby/elements/header.overrides +1 -1
  281. package/src/themes/default/assets/fonts/Lato-Bold.woff +0 -0
  282. package/src/themes/default/assets/fonts/Lato-Bold.woff2 +0 -0
  283. package/src/themes/default/assets/fonts/Lato-BoldItalic.woff +0 -0
  284. package/src/themes/default/assets/fonts/Lato-BoldItalic.woff2 +0 -0
  285. package/src/themes/default/assets/fonts/Lato-Italic.woff +0 -0
  286. package/src/themes/default/assets/fonts/Lato-Italic.woff2 +0 -0
  287. package/src/themes/default/assets/fonts/Lato-Regular.woff +0 -0
  288. package/src/themes/default/assets/fonts/Lato-Regular.woff2 +0 -0
  289. package/src/themes/default/assets/fonts/LatoLatin-Bold.woff +0 -0
  290. package/src/themes/default/assets/fonts/LatoLatin-Bold.woff2 +0 -0
  291. package/src/themes/default/assets/fonts/LatoLatin-BoldItalic.woff +0 -0
  292. package/src/themes/default/assets/fonts/LatoLatin-BoldItalic.woff2 +0 -0
  293. package/src/themes/default/assets/fonts/LatoLatin-Italic.woff +0 -0
  294. package/src/themes/default/assets/fonts/LatoLatin-Italic.woff2 +0 -0
  295. package/src/themes/default/assets/fonts/LatoLatin-Regular.woff +0 -0
  296. package/src/themes/default/assets/fonts/LatoLatin-Regular.woff2 +0 -0
  297. package/src/themes/default/assets/fonts/brand-icons.eot +0 -0
  298. package/src/themes/default/assets/fonts/brand-icons.svg +801 -654
  299. package/src/themes/default/assets/fonts/brand-icons.ttf +0 -0
  300. package/src/themes/default/assets/fonts/brand-icons.woff +0 -0
  301. package/src/themes/default/assets/fonts/brand-icons.woff2 +0 -0
  302. package/src/themes/default/assets/fonts/icons.eot +0 -0
  303. package/src/themes/default/assets/fonts/icons.svg +1175 -1079
  304. package/src/themes/default/assets/fonts/icons.ttf +0 -0
  305. package/src/themes/default/assets/fonts/icons.woff +0 -0
  306. package/src/themes/default/assets/fonts/icons.woff2 +0 -0
  307. package/src/themes/default/assets/fonts/outline-icons.eot +0 -0
  308. package/src/themes/default/assets/fonts/outline-icons.svg +93 -95
  309. package/src/themes/default/assets/fonts/outline-icons.ttf +0 -0
  310. package/src/themes/default/assets/fonts/outline-icons.woff +0 -0
  311. package/src/themes/default/assets/fonts/outline-icons.woff2 +0 -0
  312. package/src/themes/default/collections/form.variables +4 -0
  313. package/src/themes/default/collections/menu.variables +6 -0
  314. package/src/themes/default/collections/table.variables +52 -0
  315. package/src/themes/default/elements/button.variables +7 -1
  316. package/src/themes/default/elements/container.variables +12 -0
  317. package/src/themes/default/elements/divider.overrides +7 -7
  318. package/src/themes/default/elements/emoji.overrides +0 -3090
  319. package/src/themes/default/elements/emoji.variables +3575 -1
  320. package/src/themes/default/elements/flag.overrides +0 -991
  321. package/src/themes/default/elements/flag.variables +1609 -5
  322. package/src/themes/default/elements/icon.overrides +1975 -1949
  323. package/src/themes/default/elements/icon.variables +1 -0
  324. package/src/themes/default/elements/input.variables +15 -0
  325. package/src/themes/default/elements/segment.variables +8 -0
  326. package/src/themes/default/elements/step.overrides +4 -4
  327. package/src/themes/default/globals/site.variables +109 -8
  328. package/src/themes/default/globals/variation.variables +145 -6
  329. package/src/themes/default/modules/accordion.overrides +6 -5
  330. package/src/themes/default/modules/accordion.variables +49 -2
  331. package/src/themes/default/modules/calendar.variables +3 -0
  332. package/src/themes/default/modules/checkbox.overrides +9 -9
  333. package/src/themes/default/modules/checkbox.variables +5 -5
  334. package/src/themes/default/modules/dimmer.variables +1 -1
  335. package/src/themes/default/modules/dropdown.overrides +5 -5
  336. package/src/themes/default/modules/dropdown.variables +4 -10
  337. package/src/themes/default/modules/modal.variables +14 -0
  338. package/src/themes/default/modules/popup.variables +0 -2
  339. package/src/themes/default/modules/toast.variables +3 -0
  340. package/src/themes/default/views/card.variables +8 -0
  341. package/src/themes/{default → famfamfam}/assets/images/flags.png +0 -0
  342. package/src/themes/famfamfam/elements/flag.overrides +1026 -0
  343. package/src/themes/famfamfam/elements/flag.variables +20 -0
  344. package/src/themes/github/elements/icon.overrides +206 -206
  345. package/src/themes/github/elements/step.overrides +5 -5
  346. package/src/themes/github/globals/site.variables +1 -0
  347. package/src/themes/github/modules/dropdown.overrides +6 -6
  348. package/src/themes/instagram/views/card.overrides +1 -1
  349. package/src/themes/joypixels/elements/emoji.overrides +0 -3089
  350. package/src/themes/joypixels/elements/emoji.variables +3574 -5
  351. package/src/themes/material/collections/menu.overrides +1 -1
  352. package/src/themes/material/elements/button.overrides +1 -1
  353. package/src/themes/material/elements/header.overrides +1 -1
  354. package/src/themes/material/elements/icon.overrides +932 -932
  355. package/src/themes/material/globals/site.variables +0 -1
  356. package/src/themes/material/modules/dropdown.overrides +1 -1
  357. package/src/themes/material/modules/modal.overrides +1 -1
  358. package/src/themes/pulsar/elements/loader.overrides +2 -2
  359. package/src/themes/resetcss/globals/reset.overrides +3 -3
  360. package/src/themes/rtl/globals/site.overrides +1 -1
  361. package/src/themes/striped/modules/progress.overrides +1 -1
  362. package/src/themes/systemfont/globals/reset.overrides +8 -0
  363. package/src/themes/systemfont/globals/site.variables +10 -0
  364. package/src/themes/twitter/elements/emoji.overrides +0 -3091
  365. package/src/themes/twitter/elements/emoji.variables +3570 -6
  366. package/tasks/admin/components/init.js +2 -2
  367. package/tasks/admin/distributions/create.js +1 -1
  368. package/tasks/admin/distributions/init.js +2 -2
  369. package/tasks/admin/publish.js +1 -1
  370. package/tasks/admin/release.js +1 -1
  371. package/tasks/build/assets.js +1 -1
  372. package/tasks/build/css.js +9 -4
  373. package/tasks/build/javascript.js +3 -3
  374. package/tasks/check-install.js +1 -1
  375. package/tasks/clean.js +1 -1
  376. package/tasks/collections/README.md +1 -1
  377. package/tasks/collections/admin.js +1 -1
  378. package/tasks/config/admin/oauth.example.js +1 -1
  379. package/tasks/config/admin/templates/composer.json +1 -1
  380. package/tasks/config/project/install.js +15 -13
  381. package/tasks/install.js +1 -0
  382. package/tasks/rtl/watch.js +1 -1
  383. package/tasks/version.js +1 -1
  384. package/test/fixtures/accordion.html +1 -1
  385. package/test/fixtures/checkbox.html +1 -1
  386. package/test/fixtures/dropdown.html +1 -1
  387. package/test/fixtures/modal.html +1 -1
  388. package/test/fixtures/popup.html +1 -1
  389. package/test/fixtures/rating.html +1 -1
  390. package/test/fixtures/shape.html +1 -1
  391. package/test/fixtures/sidebar.html +1 -1
  392. package/test/fixtures/tab.html +1 -1
  393. package/test/fixtures/transition.html +1 -1
  394. package/test/fixtures/video.html +1 -1
  395. package/test/helpers/jasmine-jquery.js +2 -2
  396. package/test/helpers/jasmine-sinon.js +1 -1
  397. package/test/helpers/jquery-events.js +1 -1
  398. package/test/helpers/sinon.js +3 -3
  399. package/test/meteor/fonts.js +1 -1
  400. package/test/modules/accordion.spec.js +1 -1
  401. package/test/modules/checkbox.spec.js +1 -1
  402. package/test/modules/dropdown.spec.js +1 -1
  403. package/test/modules/modal.spec.js +1 -1
  404. package/test/modules/module.spec.js +1 -1
  405. package/test/modules/popup.spec.js +1 -1
  406. package/test/modules/search.spec.js +1 -1
  407. package/test/modules/shape.spec.js +1 -1
  408. package/test/modules/sidebar.spec.js +1 -1
  409. package/test/modules/tab.spec.js +1 -1
  410. package/test/modules/transition.spec.js +1 -1
  411. package/test/modules/video.spec.js +1 -1
@@ -61,7 +61,7 @@ $.fn.toast = function(parameters) {
61
61
  $animationObject,
62
62
  $close,
63
63
  $context = (settings.context)
64
- ? $(settings.context)
64
+ ? ([window,document].indexOf(settings.context) < 0 ? $(document).find(settings.context) : $(settings.context))
65
65
  : $('body'),
66
66
 
67
67
  isToastComponent = $module.hasClass('toast') || $module.hasClass('message') || $module.hasClass('card'),
@@ -69,12 +69,14 @@ $.fn.toast = function(parameters) {
69
69
  element = this,
70
70
  instance = isToastComponent ? $module.data(moduleNamespace) : undefined,
71
71
 
72
+ id,
72
73
  module
73
74
  ;
74
75
  module = {
75
76
 
76
77
  initialize: function() {
77
78
  module.verbose('Initializing element');
79
+ module.create.id();
78
80
  if (!module.has.container()) {
79
81
  module.create.container();
80
82
  }
@@ -124,17 +126,22 @@ $.fn.toast = function(parameters) {
124
126
  },
125
127
 
126
128
  show: function(callback) {
127
- callback = callback || function(){};
128
- module.debug('Showing toast');
129
129
  if(settings.onShow.call($toastBox, element) === false) {
130
130
  module.debug('onShow callback returned false, cancelling toast animation');
131
131
  return;
132
132
  }
133
+ callback = callback || function(){};
134
+ module.debug('Showing toast');
133
135
  module.animate.show(callback);
134
136
  },
135
137
 
136
138
  close: function(callback) {
139
+ if(settings.onHide.call($toastBox, element) === false) {
140
+ module.debug('onHide callback returned false, cancelling toast animation');
141
+ return;
142
+ }
137
143
  callback = callback || function(){};
144
+ module.debug('Closing toast');
138
145
  module.remove.visible();
139
146
  module.unbind.events();
140
147
  module.animate.close(callback);
@@ -144,14 +151,18 @@ $.fn.toast = function(parameters) {
144
151
  create: {
145
152
  container: function() {
146
153
  module.verbose('Creating container');
147
- $context.append($('<div/>',{class: settings.position + ' ' + className.container + ' ' +(settings.horizontal ? className.horizontal : '')}));
154
+ $context.append($('<div/>',{class: settings.position + ' ' + className.container + ' ' +(settings.horizontal ? className.horizontal : '') + ' ' + (settings.context && settings.context !== 'body' ? className.absolute : '')}));
155
+ },
156
+ id: function() {
157
+ id = (Math.random().toString(16) + '000000000').slice(2, 10);
158
+ module.verbose('Creating unique id for element', id);
148
159
  },
149
160
  toast: function() {
150
161
  $toastBox = $('<div/>', {class: className.box});
151
162
  var iconClass = module.get.iconClass();
152
163
  if (!isToastComponent) {
153
164
  module.verbose('Creating toast');
154
- $toast = $('<div/>');
165
+ $toast = $('<div/>', {role: 'alert'});
155
166
  var $content = $('<div/>', {class: className.content});
156
167
  if (iconClass !== '') {
157
168
  $toast.append($('<i/>', {class: iconClass + ' ' + className.icon}));
@@ -164,13 +175,21 @@ $.fn.toast = function(parameters) {
164
175
  }));
165
176
  }
166
177
  if (settings.title !== '') {
178
+ var titleId = '_' + module.get.id() + 'title';
179
+ $toast.attr('aria-labelledby', titleId);
167
180
  $content.append($('<div/>', {
168
181
  class: className.title,
169
- text: settings.title
182
+ id: titleId,
183
+ html: module.helpers.escape(settings.title, settings.preserveHTML)
170
184
  }));
171
185
  }
172
-
173
- $content.append($('<div/>', {class: className.message, html: module.helpers.escape(settings.message, settings.preserveHTML)}));
186
+ var descId = '_' + module.get.id() + 'desc';
187
+ $toast.attr('aria-describedby', descId);
188
+ $content.append($('<div/>', {
189
+ class: className.message,
190
+ id: descId,
191
+ html: module.helpers.escape(settings.message, settings.preserveHTML)
192
+ }));
174
193
 
175
194
  $toast
176
195
  .addClass(settings.class + ' ' + className.toast)
@@ -178,7 +197,7 @@ $.fn.toast = function(parameters) {
178
197
  ;
179
198
  $toast.css('opacity', settings.opacity);
180
199
  if (settings.closeIcon) {
181
- $close = $('<i/>', {class: className.close + ' ' + (typeof settings.closeIcon === 'string' ? settings.closeIcon : '')});
200
+ $close = $('<i/>', {class: className.close + ' ' + (typeof settings.closeIcon === 'string' ? settings.closeIcon : ''), role: 'button', tabindex: 0, 'aria-label': settings.text.close});
182
201
  if($close.hasClass(className.left)) {
183
202
  $toast.prepend($close);
184
203
  } else {
@@ -221,15 +240,17 @@ $.fn.toast = function(parameters) {
221
240
  }
222
241
  }
223
242
  settings.actions.forEach(function (el) {
224
- var icon = el[fields.icon] ? '<i class="' + module.helpers.deQuote(el[fields.icon]) + ' icon"></i>' : '',
243
+ var icon = el[fields.icon] ? '<i '+(el[fields.text] ? 'aria-hidden="true"' : '')+' class="' + module.helpers.deQuote(el[fields.icon]) + ' icon"></i>' : '',
225
244
  text = module.helpers.escape(el[fields.text] || '', settings.preserveHTML),
226
245
  cls = module.helpers.deQuote(el[fields.class] || ''),
227
246
  click = el[fields.click] && $.isFunction(el[fields.click]) ? el[fields.click] : function () {};
228
247
  $actions.append($('<button/>', {
229
248
  html: icon + text,
249
+ 'aria-label': (el[fields.text] || el[fields.icon] || '').replace(/<[^>]+(>|$)/g,''),
230
250
  class: className.button + ' ' + cls,
231
251
  click: function () {
232
- if (click.call(element, $module) === false) {
252
+ var button = $(this);
253
+ if (button.is(selector.approve) || button.is(selector.deny) || click.call(element, $module) === false) {
233
254
  return;
234
255
  }
235
256
  module.close();
@@ -329,13 +350,12 @@ $.fn.toast = function(parameters) {
329
350
  bind: {
330
351
  events: function() {
331
352
  module.debug('Binding events to toast');
332
- if(settings.closeOnClick || settings.closeIcon) {
333
- (settings.closeIcon ? $close : $toast)
334
- .on('click' + eventNamespace, module.event.click)
335
- ;
353
+ if(settings.closeIcon) {
354
+ $close.on('click' + eventNamespace, module.event.close);
336
355
  }
356
+ $toast.on('click' + eventNamespace, module.event.click);
337
357
  if($animationObject) {
338
- $animationObject.on('animationend' + eventNamespace, module.close);
358
+ $animationObject.on('animationend' + eventNamespace, module.event.close);
339
359
  }
340
360
  $toastBox
341
361
  .on('click' + eventNamespace, selector.approve, module.event.approve)
@@ -347,11 +367,10 @@ $.fn.toast = function(parameters) {
347
367
  unbind: {
348
368
  events: function() {
349
369
  module.debug('Unbinding events to toast');
350
- if(settings.closeOnClick || settings.closeIcon) {
351
- (settings.closeIcon ? $close : $toast)
352
- .off('click' + eventNamespace)
353
- ;
370
+ if(settings.closeIcon) {
371
+ $close.off('click' + eventNamespace);
354
372
  }
373
+ $toast.off('click' + eventNamespace);
355
374
  if($animationObject) {
356
375
  $animationObject.off('animationend' + eventNamespace);
357
376
  }
@@ -383,11 +402,6 @@ $.fn.toast = function(parameters) {
383
402
  },
384
403
  close: function(callback) {
385
404
  callback = $.isFunction(callback) ? callback : function(){};
386
- module.debug('Closing toast');
387
- if(settings.onHide.call($toastBox, element) === false) {
388
- module.debug('onHide callback returned false, cancelling toast animation');
389
- return;
390
- }
391
405
  if(settings.transition && $.fn.transition !== undefined && $module.transition('is supported')) {
392
406
  $toastBox
393
407
  .transition({
@@ -443,7 +457,7 @@ $.fn.toast = function(parameters) {
443
457
  has: {
444
458
  container: function() {
445
459
  module.verbose('Determining if there is already a container');
446
- return ($context.find(module.helpers.toClass(settings.position) + selector.container + (settings.horizontal ? module.helpers.toClass(className.horizontal) : '')).length > 0);
460
+ return module.get.containers().length > 0;
447
461
  },
448
462
  toast: function(){
449
463
  return !!module.get.toast();
@@ -457,8 +471,14 @@ $.fn.toast = function(parameters) {
457
471
  },
458
472
 
459
473
  get: {
474
+ id: function() {
475
+ return id;
476
+ },
477
+ containers: function() {
478
+ return $context.children(module.helpers.toClass(settings.position) + selector.container + (settings.horizontal ? module.helpers.toClass(className.horizontal) : ':not('+module.helpers.toClass(className.horizontal)+')') + (settings.context && settings.context !== 'body' ? module.helpers.toClass(className.absolute) : ':not('+module.helpers.toClass(className.absolute)+')'));
479
+ },
460
480
  container: function() {
461
- return ($context.find(module.helpers.toClass(settings.position) + selector.container)[0]);
481
+ return module.get.containers()[0];
462
482
  },
463
483
  toastBox: function() {
464
484
  return $toastBox || null;
@@ -490,9 +510,15 @@ $.fn.toast = function(parameters) {
490
510
  },
491
511
 
492
512
  event: {
513
+ close: function(){
514
+ module.close();
515
+ },
493
516
  click: function(event) {
494
- if($(event.target).closest('a').length === 0) {
495
- settings.onClick.call($toastBox, element);
517
+ if($(event.target).closest(selector.clickable).length === 0) {
518
+ if(settings.onClick.call($toastBox, element) === false || !settings.closeOnClick) {
519
+ module.verbose('Click callback returned false or close denied by setting cancelling close');
520
+ return;
521
+ }
496
522
  module.close();
497
523
  }
498
524
  },
@@ -515,7 +541,7 @@ $.fn.toast = function(parameters) {
515
541
  helpers: {
516
542
  toClass: function(selector) {
517
543
  var
518
- classes = selector.split(' '),
544
+ classes = selector.trim().split(/\s+/),
519
545
  result = ''
520
546
  ;
521
547
 
@@ -805,6 +831,7 @@ $.fn.toast.settings = {
805
831
 
806
832
  className : {
807
833
  container : 'ui toast-container',
834
+ absolute : 'absolute',
808
835
  box : 'floating toast-box',
809
836
  progress : 'ui attached active progress',
810
837
  toast : 'ui toast',
@@ -833,6 +860,10 @@ $.fn.toast.settings = {
833
860
  unclickable : 'unclickable'
834
861
  },
835
862
 
863
+ text: {
864
+ close : 'Close'
865
+ },
866
+
836
867
  icons : {
837
868
  info : 'info',
838
869
  success : 'checkmark',
@@ -849,6 +880,7 @@ $.fn.toast.settings = {
849
880
  image : '> img.image, > .image > img',
850
881
  icon : '> i.icon',
851
882
  input : 'input:not([type="hidden"]), textarea, select, button, .ui.button, ui.dropdown',
883
+ clickable : 'a, details, .ui.accordion',
852
884
  approve : '.actions .positive, .actions .approve, .actions .ok',
853
885
  deny : '.actions .negative, .actions .deny, .actions .cancel'
854
886
  },
@@ -25,6 +25,9 @@
25
25
  .ui.toast-container {
26
26
  position: fixed;
27
27
  z-index: 9999;
28
+ &.absolute {
29
+ position: absolute;
30
+ }
28
31
  &.ui.attached when (@variationToastAttached) {
29
32
  width: 100%;
30
33
  left: 0;
@@ -103,6 +106,11 @@
103
106
  bottom: @toastContainerDistance;
104
107
  }
105
108
  }
109
+ &.centered when (@variationToastCentered) {
110
+ transform: translate(-50%, -50%);
111
+ top: 50%;
112
+ left: 50%;
113
+ }
106
114
  & .visible.toast-box,
107
115
  .animating.toast-box,
108
116
  .toast-box {
@@ -518,6 +526,12 @@
518
526
  }
519
527
  }
520
528
  &.vertical when (@variationToastVertical) {
529
+ & > .content {
530
+ flex-grow: 1;
531
+ }
532
+ &.attached when (@variationToastAttached){
533
+ flex-grow: 1;
534
+ }
521
535
  & > .close.icon + .content when (@variationToastClose){
522
536
  padding-left: @toastCloseDistanceVertical;
523
537
  }
@@ -549,6 +563,29 @@
549
563
  border-bottom-right-radius: 0;
550
564
  }
551
565
  }
566
+
567
+ &.ui.ui.ui.image when (@variationToastImage) {
568
+ padding: 0;
569
+ & > .content {
570
+ padding-top: @inputVerticalPadding;
571
+ padding-bottom: @inputVerticalPadding;
572
+ padding-right: @inputHorizontalPadding;
573
+ }
574
+ & > .actions when (@variationToastActions) {
575
+ margin: 0;
576
+ }
577
+ & > .ui.image {
578
+ border-top-left-radius: @defaultBorderRadius;
579
+ border-bottom-left-radius: @defaultBorderRadius;
580
+ &.mini {
581
+ min-width: @toastImageMiniImageAdjustment;
582
+ & + .content {
583
+ min-height: @toastImageMiniImageAdjustment;
584
+ padding-left: @toastImageMiniImagePadding;
585
+ }
586
+ }
587
+ }
588
+ }
552
589
  }
553
590
 
554
591
 
@@ -598,24 +635,25 @@
598
635
  /*--------------
599
636
  Colors
600
637
  -------------- */
638
+ & when not (@variationToastColors = false) {
639
+ each(@variationToastColors, {
640
+ @color: @value;
641
+ @c: @colors[@@color][color];
642
+ @l: @colors[@@color][light];
601
643
 
602
- each(@colors, {
603
- @color: replace(@key, '@', '');
604
- @c: @colors[@@color][color];
605
- @l: @colors[@@color][light];
606
-
607
- .ui.@{color}.toast {
608
- background-color: @c;
609
- color: @toastTextColor;
610
- }
611
- & when (@variationToastInverted) {
612
- .ui.inverted.@{color}.toast,
613
- .ui.toast-container .toast-box > .inverted.@{color}.attached.progress .bar {
614
- background-color: @l;
615
- color: @toastInvertedTextColor;
644
+ .ui.@{color}.toast {
645
+ background-color: @c;
646
+ color: @toastTextColor;
616
647
  }
617
- }
618
- })
648
+ & when (@variationToastInverted) {
649
+ .ui.inverted.@{color}.toast,
650
+ .ui.toast-container .toast-box > .inverted.@{color}.attached.progress .bar {
651
+ background-color: @l;
652
+ color: @toastInvertedTextColor;
653
+ }
654
+ }
655
+ })
656
+ }
619
657
 
620
658
  & when (@variationToastInverted) {
621
659
  .ui.inverted.toast {
@@ -674,3 +712,5 @@ each(@colors, {
674
712
  opacity: 0;
675
713
  }
676
714
  }
715
+
716
+ .loadUIOverrides();
@@ -771,6 +771,10 @@ $.fn.transition = function() {
771
771
  },
772
772
 
773
773
  hide: function() {
774
+ if(settings.onHide.call(element) === false) {
775
+ module.verbose('Hide callback returned false cancelling hide');
776
+ return false;
777
+ }
774
778
  module.verbose('Hiding element');
775
779
  if( module.is.animating() ) {
776
780
  module.reset();
@@ -778,35 +782,32 @@ $.fn.transition = function() {
778
782
  element.blur(); // IE will trigger focus change if element is not blurred before hiding
779
783
  module.remove.display();
780
784
  module.remove.visible();
781
- if($.isFunction(settings.onBeforeHide)){
782
- settings.onBeforeHide.call(element,function(){
783
- module.hideNow();
784
- });
785
- } else {
786
- module.hideNow();
787
- }
788
-
785
+ settings.onBeforeHide.call(element, module.hideNow);
789
786
  },
790
787
 
791
788
  hideNow: function() {
792
789
  module.set.hidden();
793
790
  module.force.hidden();
794
- settings.onHide.call(element);
791
+ settings.onHidden.call(element);
795
792
  settings.onComplete.call(element);
796
793
  // module.repaint();
797
794
  },
798
795
 
799
796
  show: function(display) {
800
- module.verbose('Showing element', display);
801
- if(module.force.visible()) {
797
+ if(module.force.visible() && settings.onShow.call(element) !== false) {
798
+ module.verbose('Showing element', display);
802
799
  module.remove.hidden();
803
- module.set.visible();
804
- settings.onShow.call(element);
805
- settings.onComplete.call(element);
806
- // module.repaint();
800
+ settings.onBeforeShow.call(element, module.showNow);
807
801
  }
808
802
  },
809
803
 
804
+ showNow: function(){
805
+ module.set.visible();
806
+ settings.onVisible.call(element);
807
+ settings.onComplete.call(element);
808
+ // module.repaint();
809
+ },
810
+
810
811
  toggle: function() {
811
812
  if( module.is.visible() ) {
812
813
  module.hide();
@@ -1055,7 +1056,11 @@ $.fn.transition.settings = {
1055
1056
  onStart : function() {},
1056
1057
  onComplete : function() {},
1057
1058
  onShow : function() {},
1059
+ onBeforeShow : function(callback) {callback.call(this)},
1060
+ onVisible : function() {},
1058
1061
  onHide : function() {},
1062
+ onHidden : function() {},
1063
+ onBeforeHide : function(callback) {callback.call(this)},
1059
1064
 
1060
1065
  // whether timeout should be used to ensure callback fires in cases animationend does not
1061
1066
  useFailSafe : true,
@@ -1097,7 +1102,7 @@ $.fn.transition.settings = {
1097
1102
 
1098
1103
  // possible errors
1099
1104
  error: {
1100
- noAnimation : 'Element is no longer attached to DOM. Unable to animate. Use silent setting to surpress this warning in production.',
1105
+ noAnimation : 'Element is no longer attached to DOM. Unable to animate. Use silent setting to suppress this warning in production.',
1101
1106
  repeated : 'That animation is already occurring, cancelling repeated animation',
1102
1107
  method : 'The method you called is not defined',
1103
1108
  support : 'This browser does not support CSS animations'
@@ -271,7 +271,7 @@
271
271
  position: relative;
272
272
  background: @testBackground;
273
273
  }
274
- .ui.test.ad:after {
274
+ .ui.test.ad::after {
275
275
  position: absolute;
276
276
  top: 50%;
277
277
  left: 50%;
@@ -285,11 +285,11 @@
285
285
  font-weight: @testFontWeight;
286
286
  }
287
287
  & when (@variationAdMobile) {
288
- .ui.mobile.test.ad:after {
288
+ .ui.mobile.test.ad::after {
289
289
  font-size: @testMobileFontSize;
290
290
  }
291
291
  }
292
- .ui.test.ad[data-text]:after {
292
+ .ui.test.ad[data-text]::after {
293
293
  content: attr(data-text);
294
294
  }
295
295
  }