fomantic-ui 2.9.1-beta.20 → 2.9.1-beta.21

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 (360) hide show
  1. package/.eslintrc.js +2 -1
  2. package/.github/workflows/ci.yml +1 -1
  3. package/.stylelintrc.js +34 -21
  4. package/dist/components/accordion.css +1 -1
  5. package/dist/components/accordion.js +1 -1
  6. package/dist/components/accordion.min.css +1 -1
  7. package/dist/components/accordion.min.js +1 -1
  8. package/dist/components/ad.css +1 -1
  9. package/dist/components/ad.min.css +1 -1
  10. package/dist/components/api.js +1 -6
  11. package/dist/components/api.min.js +2 -2
  12. package/dist/components/breadcrumb.css +1 -1
  13. package/dist/components/breadcrumb.min.css +1 -1
  14. package/dist/components/button.css +1 -1
  15. package/dist/components/button.min.css +1 -1
  16. package/dist/components/calendar.css +1 -1
  17. package/dist/components/calendar.js +36 -29
  18. package/dist/components/calendar.min.css +1 -1
  19. package/dist/components/calendar.min.js +2 -2
  20. package/dist/components/card.css +1 -1
  21. package/dist/components/card.min.css +1 -1
  22. package/dist/components/checkbox.css +1 -1
  23. package/dist/components/checkbox.js +1 -1
  24. package/dist/components/checkbox.min.css +1 -1
  25. package/dist/components/checkbox.min.js +1 -1
  26. package/dist/components/comment.css +1 -1
  27. package/dist/components/comment.min.css +1 -1
  28. package/dist/components/container.css +1 -1
  29. package/dist/components/container.min.css +1 -1
  30. package/dist/components/dimmer.css +1 -1
  31. package/dist/components/dimmer.js +1 -1
  32. package/dist/components/dimmer.min.css +1 -1
  33. package/dist/components/dimmer.min.js +1 -1
  34. package/dist/components/divider.css +1 -1
  35. package/dist/components/divider.min.css +1 -1
  36. package/dist/components/dropdown.css +1 -1
  37. package/dist/components/dropdown.js +2 -2
  38. package/dist/components/dropdown.min.css +1 -1
  39. package/dist/components/dropdown.min.js +2 -2
  40. package/dist/components/embed.css +1 -1
  41. package/dist/components/embed.js +1 -1
  42. package/dist/components/embed.min.css +1 -1
  43. package/dist/components/embed.min.js +1 -1
  44. package/dist/components/feed.css +1 -1
  45. package/dist/components/feed.min.css +1 -1
  46. package/dist/components/flag.css +1 -1
  47. package/dist/components/flag.min.css +1 -1
  48. package/dist/components/flyout.css +1 -1
  49. package/dist/components/flyout.js +1 -1
  50. package/dist/components/flyout.min.css +1 -1
  51. package/dist/components/flyout.min.js +1 -1
  52. package/dist/components/form.css +1 -1
  53. package/dist/components/form.js +1 -1
  54. package/dist/components/form.min.css +1 -1
  55. package/dist/components/form.min.js +1 -1
  56. package/dist/components/grid.css +1 -1
  57. package/dist/components/grid.min.css +1 -1
  58. package/dist/components/header.css +1 -1
  59. package/dist/components/header.min.css +1 -1
  60. package/dist/components/icon.css +1 -1
  61. package/dist/components/icon.min.css +1 -1
  62. package/dist/components/image.css +1 -1
  63. package/dist/components/image.min.css +1 -1
  64. package/dist/components/input.css +1 -1
  65. package/dist/components/input.min.css +1 -1
  66. package/dist/components/item.css +1 -1
  67. package/dist/components/item.min.css +1 -1
  68. package/dist/components/label.css +1 -1
  69. package/dist/components/label.min.css +1 -1
  70. package/dist/components/list.css +1 -1
  71. package/dist/components/list.min.css +1 -1
  72. package/dist/components/loader.css +1 -1
  73. package/dist/components/loader.min.css +1 -1
  74. package/dist/components/message.css +1 -1
  75. package/dist/components/message.min.css +1 -1
  76. package/dist/components/modal.css +1 -1
  77. package/dist/components/modal.js +1 -1
  78. package/dist/components/modal.min.css +1 -1
  79. package/dist/components/modal.min.js +1 -1
  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 +1 -1
  85. package/dist/components/placeholder.min.css +1 -1
  86. package/dist/components/popup.css +1 -1
  87. package/dist/components/popup.js +4 -4
  88. package/dist/components/popup.min.css +1 -1
  89. package/dist/components/popup.min.js +2 -2
  90. package/dist/components/progress.css +1 -1
  91. package/dist/components/progress.js +2 -2
  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 +1 -1
  109. package/dist/components/segment.min.css +1 -1
  110. package/dist/components/shape.css +1 -1
  111. package/dist/components/shape.js +1 -1
  112. package/dist/components/shape.min.css +1 -1
  113. package/dist/components/shape.min.js +1 -1
  114. package/dist/components/sidebar.css +1 -1
  115. package/dist/components/sidebar.js +1 -1
  116. package/dist/components/sidebar.min.css +1 -1
  117. package/dist/components/sidebar.min.js +1 -1
  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.js +1 -1
  123. package/dist/components/slider.min.js +1 -1
  124. package/dist/components/state.js +1 -1
  125. package/dist/components/state.min.js +1 -1
  126. package/dist/components/statistic.css +1 -1
  127. package/dist/components/statistic.min.css +1 -1
  128. package/dist/components/step.css +1 -1
  129. package/dist/components/step.min.css +1 -1
  130. package/dist/components/sticky.css +1 -1
  131. package/dist/components/sticky.js +1 -1
  132. package/dist/components/sticky.min.css +1 -1
  133. package/dist/components/sticky.min.js +1 -1
  134. package/dist/components/tab.css +1 -1
  135. package/dist/components/tab.js +1 -1
  136. package/dist/components/tab.min.css +1 -1
  137. package/dist/components/tab.min.js +1 -1
  138. package/dist/components/table.css +1 -1
  139. package/dist/components/table.min.css +1 -1
  140. package/dist/components/text.css +1 -1
  141. package/dist/components/text.min.css +1 -1
  142. package/dist/components/toast.css +1 -1
  143. package/dist/components/toast.js +1 -1
  144. package/dist/components/toast.min.css +1 -1
  145. package/dist/components/toast.min.js +1 -1
  146. package/dist/components/transition.css +30 -40
  147. package/dist/components/transition.js +1 -1
  148. package/dist/components/transition.min.css +1 -1
  149. package/dist/components/transition.min.js +1 -1
  150. package/dist/components/visibility.js +3 -3
  151. package/dist/components/visibility.min.js +2 -2
  152. package/dist/semantic.css +79 -79
  153. package/dist/semantic.js +69 -67
  154. package/dist/semantic.min.css +1 -1
  155. package/dist/semantic.min.js +2 -2
  156. package/package.json +3 -3
  157. package/src/_site/collections/menu.overrides +1 -1
  158. package/src/_site/elements/flag.variables +2 -2
  159. package/src/_site/globals/site.variables +1 -1
  160. package/src/definitions/behaviors/api.js +0 -5
  161. package/src/definitions/behaviors/visibility.js +2 -2
  162. package/src/definitions/collections/breadcrumb.less +0 -1
  163. package/src/definitions/collections/form.less +0 -8
  164. package/src/definitions/collections/grid.less +0 -3
  165. package/src/definitions/collections/menu.less +2 -10
  166. package/src/definitions/collections/message.less +5 -5
  167. package/src/definitions/elements/button.less +0 -22
  168. package/src/definitions/elements/divider.less +0 -8
  169. package/src/definitions/elements/emoji.less +0 -1
  170. package/src/definitions/elements/icon.less +0 -8
  171. package/src/definitions/elements/image.less +0 -2
  172. package/src/definitions/elements/input.less +0 -10
  173. package/src/definitions/elements/label.less +0 -31
  174. package/src/definitions/elements/list.less +0 -4
  175. package/src/definitions/elements/loader.less +0 -3
  176. package/src/definitions/elements/reveal.less +0 -2
  177. package/src/definitions/elements/segment.less +0 -6
  178. package/src/definitions/elements/step.less +0 -3
  179. package/src/definitions/modules/calendar.js +35 -28
  180. package/src/definitions/modules/checkbox.less +0 -15
  181. package/src/definitions/modules/dimmer.less +0 -6
  182. package/src/definitions/modules/dropdown.js +1 -1
  183. package/src/definitions/modules/dropdown.less +1 -15
  184. package/src/definitions/modules/embed.less +0 -1
  185. package/src/definitions/modules/flyout.less +0 -4
  186. package/src/definitions/modules/modal.less +0 -6
  187. package/src/definitions/modules/nag.less +0 -9
  188. package/src/definitions/modules/popup.js +3 -3
  189. package/src/definitions/modules/popup.less +0 -12
  190. package/src/definitions/modules/progress.js +1 -1
  191. package/src/definitions/modules/progress.less +0 -3
  192. package/src/definitions/modules/search.js +1 -1
  193. package/src/definitions/modules/search.less +0 -12
  194. package/src/definitions/modules/shape.less +0 -4
  195. package/src/definitions/modules/sidebar.less +0 -3
  196. package/src/definitions/modules/sticky.less +1 -0
  197. package/src/definitions/modules/tab.less +0 -5
  198. package/src/definitions/views/ad.less +0 -1
  199. package/src/definitions/views/card.less +1 -5
  200. package/src/definitions/views/item.less +0 -1
  201. package/src/themes/amazon/elements/button.overrides +23 -24
  202. package/src/themes/amazon/elements/button.variables +11 -11
  203. package/src/themes/amazon/globals/site.variables +2 -3
  204. package/src/themes/basic/collections/table.overrides +0 -1
  205. package/src/themes/basic/collections/table.variables +3 -3
  206. package/src/themes/basic/elements/button.overrides +0 -1
  207. package/src/themes/basic/elements/button.variables +2 -2
  208. package/src/themes/basic/elements/icon.overrides +12 -13
  209. package/src/themes/basic/elements/icon.variables +13 -13
  210. package/src/themes/basic/elements/step.overrides +2 -2
  211. package/src/themes/basic/elements/step.variables +2 -2
  212. package/src/themes/basic/globals/reset.overrides +1 -1
  213. package/src/themes/basic/globals/reset.variables +1 -1
  214. package/src/themes/basic/views/card.overrides +0 -1
  215. package/src/themes/basic/views/card.variables +3 -3
  216. package/src/themes/bookish/elements/header.overrides +3 -3
  217. package/src/themes/bookish/elements/header.variables +2 -2
  218. package/src/themes/bootstrap3/elements/button.variables +7 -8
  219. package/src/themes/chubby/collections/form.overrides +9 -9
  220. package/src/themes/chubby/collections/form.variables +3 -3
  221. package/src/themes/chubby/collections/menu.variables +1 -1
  222. package/src/themes/chubby/elements/button.overrides +7 -9
  223. package/src/themes/chubby/elements/button.variables +2 -2
  224. package/src/themes/chubby/elements/header.variables +3 -3
  225. package/src/themes/chubby/modules/accordion.overrides +2 -2
  226. package/src/themes/chubby/modules/accordion.variables +3 -3
  227. package/src/themes/chubby/views/comment.overrides +5 -5
  228. package/src/themes/chubby/views/comment.variables +4 -4
  229. package/src/themes/classic/collections/table.variables +2 -2
  230. package/src/themes/classic/elements/button.variables +20 -21
  231. package/src/themes/classic/elements/header.variables +3 -3
  232. package/src/themes/classic/modules/progress.variables +1 -1
  233. package/src/themes/classic/views/card.overrides +14 -14
  234. package/src/themes/classic/views/card.variables +4 -4
  235. package/src/themes/colored/modules/checkbox.variables +1 -1
  236. package/src/themes/default/collections/breadcrumb.variables +4 -4
  237. package/src/themes/default/collections/form.variables +12 -12
  238. package/src/themes/default/collections/grid.overrides +0 -1
  239. package/src/themes/default/collections/grid.variables +14 -16
  240. package/src/themes/default/collections/menu.variables +19 -31
  241. package/src/themes/default/collections/message.variables +83 -84
  242. package/src/themes/default/collections/table.variables +16 -18
  243. package/src/themes/default/elements/button.variables +30 -31
  244. package/src/themes/default/elements/container.variables +4 -5
  245. package/src/themes/default/elements/divider.overrides +8 -9
  246. package/src/themes/default/elements/divider.variables +4 -5
  247. package/src/themes/default/elements/emoji.overrides +0 -1
  248. package/src/themes/default/elements/emoji.variables +3555 -3555
  249. package/src/themes/default/elements/flag.variables +1594 -1594
  250. package/src/themes/default/elements/header.overrides +0 -1
  251. package/src/themes/default/elements/header.variables +16 -16
  252. package/src/themes/default/elements/icon.variables +2002 -2004
  253. package/src/themes/default/elements/image.variables +6 -7
  254. package/src/themes/default/elements/input.variables +10 -10
  255. package/src/themes/default/elements/label.variables +19 -20
  256. package/src/themes/default/elements/list.variables +16 -16
  257. package/src/themes/default/elements/loader.variables +15 -16
  258. package/src/themes/default/elements/placeholder.variables +6 -7
  259. package/src/themes/default/elements/rail.variables +4 -5
  260. package/src/themes/default/elements/segment.variables +18 -22
  261. package/src/themes/default/elements/step.overrides +4 -4
  262. package/src/themes/default/elements/step.variables +14 -16
  263. package/src/themes/default/elements/text.variables +2 -3
  264. package/src/themes/default/globals/colors.less +22 -22
  265. package/src/themes/default/globals/reset.overrides +57 -57
  266. package/src/themes/default/globals/reset.variables +1 -1
  267. package/src/themes/default/globals/site.variables +861 -875
  268. package/src/themes/default/globals/variation.variables +0 -3
  269. package/src/themes/default/modules/accordion.overrides +11 -11
  270. package/src/themes/default/modules/accordion.variables +14 -15
  271. package/src/themes/default/modules/chatroom.variables +1 -1
  272. package/src/themes/default/modules/checkbox.overrides +6 -7
  273. package/src/themes/default/modules/checkbox.variables +17 -22
  274. package/src/themes/default/modules/dimmer.variables +7 -8
  275. package/src/themes/default/modules/dropdown.overrides +17 -17
  276. package/src/themes/default/modules/dropdown.variables +20 -21
  277. package/src/themes/default/modules/embed.variables +9 -10
  278. package/src/themes/default/modules/flyout.variables +6 -6
  279. package/src/themes/default/modules/modal.variables +18 -18
  280. package/src/themes/default/modules/nag.variables +10 -13
  281. package/src/themes/default/modules/popup.variables +12 -13
  282. package/src/themes/default/modules/progress.variables +10 -11
  283. package/src/themes/default/modules/rating.variables +10 -11
  284. package/src/themes/default/modules/search.variables +9 -11
  285. package/src/themes/default/modules/shape.variables +6 -6
  286. package/src/themes/default/modules/sidebar.variables +4 -4
  287. package/src/themes/default/modules/slider.variables +48 -49
  288. package/src/themes/default/modules/sticky.variables +1 -1
  289. package/src/themes/default/modules/toast.variables +1 -1
  290. package/src/themes/default/modules/transition.overrides +936 -915
  291. package/src/themes/default/views/card.variables +20 -22
  292. package/src/themes/default/views/comment.variables +6 -8
  293. package/src/themes/default/views/feed.variables +6 -6
  294. package/src/themes/default/views/item.variables +6 -9
  295. package/src/themes/default/views/statistic.variables +8 -8
  296. package/src/themes/duo/elements/loader.variables +1 -1
  297. package/src/themes/famfamfam/elements/flag.overrides +263 -268
  298. package/src/themes/famfamfam/elements/flag.variables +3 -3
  299. package/src/themes/fixed-width/collections/grid.variables +1 -1
  300. package/src/themes/fixed-width/modules/modal.variables +3 -5
  301. package/src/themes/flat/collections/form.overrides +9 -9
  302. package/src/themes/flat/collections/form.variables +4 -5
  303. package/src/themes/flat/globals/site.variables +61 -66
  304. package/src/themes/github/collections/breadcrumb.variables +0 -1
  305. package/src/themes/github/collections/form.overrides +7 -8
  306. package/src/themes/github/collections/form.variables +12 -13
  307. package/src/themes/github/collections/grid.variables +1 -2
  308. package/src/themes/github/collections/menu.overrides +2 -2
  309. package/src/themes/github/collections/menu.variables +11 -12
  310. package/src/themes/github/collections/message.overrides +3 -3
  311. package/src/themes/github/collections/message.variables +5 -5
  312. package/src/themes/github/collections/table.variables +1 -1
  313. package/src/themes/github/elements/button.overrides +0 -1
  314. package/src/themes/github/elements/button.variables +14 -14
  315. package/src/themes/github/elements/header.variables +2 -2
  316. package/src/themes/github/elements/icon.overrides +179 -179
  317. package/src/themes/github/elements/icon.variables +10 -10
  318. package/src/themes/github/elements/image.variables +1 -1
  319. package/src/themes/github/elements/input.overrides +16 -16
  320. package/src/themes/github/elements/input.variables +3 -3
  321. package/src/themes/github/elements/label.overrides +3 -3
  322. package/src/themes/github/elements/label.variables +0 -1
  323. package/src/themes/github/elements/segment.variables +2 -3
  324. package/src/themes/github/elements/step.overrides +13 -13
  325. package/src/themes/github/elements/step.variables +2 -2
  326. package/src/themes/github/globals/site.variables +2 -2
  327. package/src/themes/github/modules/dropdown.overrides +18 -19
  328. package/src/themes/github/modules/dropdown.variables +1 -1
  329. package/src/themes/github/modules/popup.variables +0 -2
  330. package/src/themes/instagram/views/card.overrides +3 -4
  331. package/src/themes/instagram/views/card.variables +3 -4
  332. package/src/themes/joypixels/elements/emoji.overrides +0 -2
  333. package/src/themes/joypixels/elements/emoji.variables +3554 -3554
  334. package/src/themes/material/collections/menu.variables +1 -1
  335. package/src/themes/material/elements/button.overrides +6 -8
  336. package/src/themes/material/elements/button.variables +28 -28
  337. package/src/themes/material/elements/header.overrides +2 -2
  338. package/src/themes/material/elements/header.variables +2 -4
  339. package/src/themes/material/elements/icon.overrides +932 -932
  340. package/src/themes/material/elements/icon.variables +11 -11
  341. package/src/themes/material/globals/site.variables +78 -79
  342. package/src/themes/material/modules/dropdown.overrides +1 -1
  343. package/src/themes/material/modules/dropdown.variables +1 -1
  344. package/src/themes/material/modules/modal.overrides +2 -2
  345. package/src/themes/material/modules/modal.variables +1 -2
  346. package/src/themes/pulsar/elements/loader.overrides +58 -58
  347. package/src/themes/raised/elements/button.variables +8 -8
  348. package/src/themes/resetcss/globals/reset.overrides +115 -33
  349. package/src/themes/resetcss/globals/reset.variables +1 -1
  350. package/src/themes/round/elements/button.variables +11 -14
  351. package/src/themes/rtl/globals/site.variables +5 -6
  352. package/src/themes/striped/modules/progress.overrides +20 -16
  353. package/src/themes/systemfont/globals/reset.overrides +1 -1
  354. package/src/themes/systemfont/globals/site.variables +5 -5
  355. package/src/themes/timeline/views/feed.overrides +12 -12
  356. package/src/themes/timeline/views/feed.variables +4 -4
  357. package/src/themes/twitter/elements/button.overrides +4 -5
  358. package/src/themes/twitter/elements/button.variables +6 -7
  359. package/src/themes/twitter/elements/emoji.variables +3555 -3555
  360. package/tasks/docs/metadata.js +2 -2
package/.eslintrc.js CHANGED
@@ -105,6 +105,7 @@ module.exports = {
105
105
  semi: ['error'],
106
106
  'no-extra-semi': ['error'],
107
107
  'no-trailing-spaces': ['error'],
108
+ 'array-callback-return': ['error', { allowImplicit: true }],
108
109
  },
109
110
  reportUnusedDisableDirectives: true,
110
- };
111
+ };
@@ -12,7 +12,7 @@ jobs:
12
12
  - uses: actions/setup-node@v3
13
13
  - name: Install dependencies
14
14
  run: yarn
15
- - name: Lint JS files
15
+ - name: Lint JS and CSS/LESS files
16
16
  run: npm run lint
17
17
  test:
18
18
  name: Test build process on node ${{ matrix.node-version }}
package/.stylelintrc.js CHANGED
@@ -8,39 +8,52 @@ module.exports = {
8
8
  'test/coverage/**',
9
9
  ],
10
10
  rules: {
11
- indentation: 4,
12
11
  'at-rule-empty-line-before': null,
13
- 'block-closing-brace-newline-before': null,
14
- 'declaration-block-trailing-semicolon': null, // bad formatting with "each()"
15
- 'declaration-empty-line-before': null,
12
+ 'block-closing-brace-newline-before': null, // fix bad formatting with "each()"
13
+ 'declaration-block-trailing-semicolon': null, // fix bad formatting with "each()"
14
+ indentation: null, // TODO change to "4" once https://github.com/fomantic/Fomantic-UI/pull/2593#discussion_r1045131096 is fixed
16
15
  'max-line-length': null,
16
+ 'no-descending-specificity': null,
17
+ 'no-extra-semicolons': null, // fix GH-1832 - workaround for wikimedia/less.php parser
17
18
  'rule-empty-line-before': null,
18
19
 
19
20
  // TODO
20
- 'no-descending-specificity': null, // 11532 errors
21
- 'property-case': null, // 338 errors
22
- 'string-quotes': null, // 249 errors
23
- 'no-duplicate-selectors': null, // 212 errors
21
+ 'string-quotes': null, // 1676 errors
22
+ 'at-rule-no-unknown': null, // 1081 errors
23
+ 'property-case': null, // 866 errors
24
+ 'at-rule-name-case': null, // 764 errors
25
+ 'no-duplicate-selectors': null, // 224 errors
24
26
  'selector-not-notation': null, // 169 errors
25
27
  'no-invalid-position-at-import-rule': null, // 104 errors
26
- 'at-rule-no-unknown': null, // 104 errors
27
- 'import-notation': null, // 55 errors
28
- 'function-no-unknown': null, // 43 errors
29
- 'property-no-vendor-prefix': null, // 31 errors
28
+ 'function-no-unknown': null, // 67 errors
29
+ 'length-zero-no-unit': null, // 64 errors
30
+ 'import-notation': null, // 56 errors
31
+ 'keyframes-name-pattern': null, // 50 errors
32
+ 'property-no-vendor-prefix': null, // 49 errors
33
+ 'number-leading-zero': null, // 49 errors
34
+ 'color-function-notation': null, // 32 errors
35
+ 'alpha-value-notation': null, // 32 errors
36
+ 'color-hex-case': null, // 32 errors
37
+ 'block-no-empty': null, // 25 errors
30
38
  'selector-no-vendor-prefix': null, // 19 errors
31
- 'number-leading-zero': null, // 19 errors
39
+ 'selector-class-pattern': null, // 19 errors
40
+ 'number-no-trailing-zeros': null, // 16 errors
41
+ 'font-family-name-quotes': null, // 13 errors
32
42
  'declaration-block-no-redundant-longhand-properties': null, // 12 errors
33
- 'value-keyword-case': null, // 11 errors
43
+ 'value-keyword-case': null, // 12 errors
34
44
  'value-no-vendor-prefix': null, // 9 errors
35
- 'keyframes-name-pattern': null, // 9 errors
36
- 'color-function-notation': null, // 8 errors
37
- 'alpha-value-notation': null, // 8 errors
45
+ 'color-hex-length': null, // 9 errors
46
+ 'no-empty-source': null, // 8 errors
47
+ 'font-family-no-missing-generic-family-keyword': null, // 8 errors
48
+ 'number-max-precision': null, // 7 errors
38
49
  'selector-attribute-quotes': null, // 7 errors
39
- 'number-no-trailing-zeros': null, // 6 errors
40
50
  'shorthand-property-no-redundant-values': null, // 5 errors
51
+ 'function-url-quotes': null, // 5 errors
41
52
  'declaration-block-no-duplicate-properties': null, // 2 errors
42
- 'number-max-precision': null, // 2 errors
43
- 'color-hex-case': null, // 1 error
44
- 'color-hex-length': null, // 1 error
53
+ 'font-family-no-duplicate-names': null, // 2 errors
54
+ 'function-linear-gradient-no-nonstandard-direction': null, // 1 error
55
+ 'at-rule-no-vendor-prefix': null, // 1 error
56
+ 'declaration-block-no-shorthand-property-overrides': null, // 1 error
45
57
  },
58
+ reportNeedlessDisables: true,
46
59
  };
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * # Fomantic-UI 2.9.1-beta.20+d4987bf - Accordion
2
+ * # Fomantic-UI 2.9.1-beta.21+2722e1b - Accordion
3
3
  * https://github.com/fomantic/Fomantic-UI/
4
4
  *
5
5
  *
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * # Fomantic-UI 2.9.1-beta.20+d4987bf - Accordion
2
+ * # Fomantic-UI 2.9.1-beta.21+2722e1b - Accordion
3
3
  * https://github.com/fomantic/Fomantic-UI/
4
4
  *
5
5
  *
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * # Fomantic-UI 2.9.1-beta.20+d4987bf - Accordion
2
+ * # Fomantic-UI 2.9.1-beta.21+2722e1b - Accordion
3
3
  * https://github.com/fomantic/Fomantic-UI/
4
4
  *
5
5
  *
@@ -1,5 +1,5 @@
1
1
  /*
2
- * # Fomantic UI - 2.9.1-beta.20+d4987bf
2
+ * # Fomantic UI - 2.9.1-beta.21+2722e1b
3
3
  * https://github.com/fomantic/Fomantic-UI
4
4
  * https://fomantic-ui.com/
5
5
  *
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * # Fomantic-UI 2.9.1-beta.20+d4987bf - Ad
2
+ * # Fomantic-UI 2.9.1-beta.21+2722e1b - Ad
3
3
  * https://github.com/fomantic/Fomantic-UI/
4
4
  *
5
5
  *
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * # Fomantic-UI 2.9.1-beta.20+d4987bf - Ad
2
+ * # Fomantic-UI 2.9.1-beta.21+2722e1b - Ad
3
3
  * https://github.com/fomantic/Fomantic-UI/
4
4
  *
5
5
  *
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * # Fomantic-UI 2.9.1-beta.20+d4987bf - API
2
+ * # Fomantic-UI 2.9.1-beta.21+2722e1b - API
3
3
  * https://github.com/fomantic/Fomantic-UI/
4
4
  *
5
5
  *
@@ -157,11 +157,6 @@
157
157
  },
158
158
  write: {
159
159
  cachedResponse: function (url, response) {
160
- if (response && response === '') {
161
- module.debug('Response empty, not caching', response);
162
-
163
- return;
164
- }
165
160
  if (window.Storage === undefined) {
166
161
  module.error(error.noStorage);
167
162
 
@@ -1,5 +1,5 @@
1
1
  /*
2
- * # Fomantic UI - 2.9.1-beta.20+d4987bf
2
+ * # Fomantic UI - 2.9.1-beta.21+2722e1b
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(P,w,j,C){"use strict";function E(e){return null!=e&&e===e.window}function F(e){return"function"==typeof e&&"number"!=typeof e.nodeType}w=void 0!==w&&w.Math==Math?w:globalThis,P.api=P.fn.api=function(q){var x,e=F(this)?P(w):P(this),A=e.selector||"",k=(new Date).getTime(),S=[],T=q,D="string"==typeof T,O=[].slice.call(arguments,1);return e.each(function(){var a,n,r,e,s,o,f=P.isPlainObject(q)?P.extend(!0,{},P.fn.api.settings,q):P.extend({},P.fn.api.settings),t=f.namespace,i=f.metadata,u=f.selector,c=f.error,d=f.className,l="."+t,p="module-"+t,g=P(this),m=g.closest(u.form),b=f.stateContext?[w,j].indexOf(f.stateContext)<0?P(j).find(f.stateContext):P(f.stateContext):g,v=this,h=b[0],y=g.data(p),R={initialize:function(){D||(o=f.data,R.bind.events()),R.instantiate()},instantiate:function(){R.verbose("Storing instance of module",R),y=R,g.data(p,y)},destroy:function(){R.verbose("Destroying previous module for",v),g.removeData(p).off(l)},bind:{events:function(){var e=R.get.event();e?(R.verbose("Attaching API events to element",e),g.on(e+l,R.event.trigger)):"now"==f.on&&(R.debug("Querying API endpoint immediately"),R.query())}},decode:{json:function(e){if(e!==C&&"string"==typeof e)try{e=JSON.parse(e)}catch(e){}return e}},read:{cachedResponse:function(e){var t;if(w.Storage!==C)return t=sessionStorage.getItem(e+R.get.normalizedData()),R.debug("Using cached response",e,f.data,t),R.decode.json(t);R.error(c.noStorage)}},write:{cachedResponse:function(e,t){t&&""===t?R.debug("Response empty, not caching",t):w.Storage===C?R.error(c.noStorage):(P.isPlainObject(t)&&(t=JSON.stringify(t)),sessionStorage.setItem(e+R.get.normalizedData(),t),R.verbose("Storing cached response for url",e,f.data,t))}},query:function(){if(R.is.disabled())R.debug("Element is disabled API request aborted");else{if(R.is.loading()){if(!f.interruptRequests)return void R.debug("Cancelling request, previous request is still pending");R.debug("Interrupting previous request"),R.abort()}if(f.defaultData&&P.extend(!0,f.urlData,R.get.defaultData()),f.serializeForm&&(f.data=R.add.formData(o||f.data)),!1===(n=R.get.settings()))return R.cancelled=!0,void R.error(c.beforeSend);if(R.cancelled=!1,(r=R.get.templatedURL())||R.is.mocked()){if((r=R.add.urlData(r))||R.is.mocked()){if(n.url=f.base+r,a=P.extend(!0,{},f,{type:f.method||f.type,data:e,url:f.base+r,beforeSend:f.beforeXHR,success:function(){},failure:function(){},complete:function(){}}),R.debug("Querying URL",a.url),R.verbose("Using AJAX settings",a),"local"===f.cache&&R.read.cachedResponse(r))return R.debug("Response returned from local cache"),R.request=R.create.request(),void R.request.resolveWith(h,[R.read.cachedResponse(r)]);f.throttle?f.throttleFirstRequest||R.timer?(R.debug("Throttling request",f.throttle),clearTimeout(R.timer),R.timer=setTimeout(function(){R.timer&&delete R.timer,R.debug("Sending throttled request",e,a.method),R.send.request()},f.throttle)):(R.debug("Sending request",e,a.method),R.send.request(),R.timer=setTimeout(function(){},f.throttle)):(R.debug("Sending request",e,a.method),R.send.request())}}else R.error(c.missingURL)}},should:{removeError:function(){return!0===f.hideError||"auto"===f.hideError&&!R.is.form()}},is:{disabled:function(){return 0<g.filter(u.disabled).length},expectingJSON:function(){return"json"===f.dataType||"jsonp"===f.dataType},form:function(){return g.is("form")||b.is("form")},mocked:function(){return f.mockResponse||f.mockResponseAsync||f.response||f.responseAsync},input:function(){return g.is("input")},loading:function(){return!!R.request&&"pending"==R.request.state()},abortedRequest:function(e){return e&&e.readyState!==C&&0===e.readyState?(R.verbose("XHR request determined to be aborted"),!0):(R.verbose("XHR request was not aborted"),!1)},validResponse:function(e){return R.is.expectingJSON()&&F(f.successTest)?(R.debug("Checking JSON returned success",f.successTest,e),f.successTest(e)?(R.debug("Response passed success test",e),!0):(R.debug("Response failed success test",e),!1)):(R.verbose("Response is not JSON, skipping validation",f.successTest,e),!0)}},was:{cancelled:function(){return R.cancelled||!1},successful:function(){return R.request&&"resolved"==R.request.state()},failure:function(){return R.request&&"rejected"==R.request.state()},complete:function(){return R.request&&("resolved"==R.request.state()||"rejected"==R.request.state())}},add:{urlData:function(o,a){var e,t;return o&&(e=o.match(f.regExp.required),t=o.match(f.regExp.optional),a=a||f.urlData,e&&(R.debug("Looking for required URL variables",e),P.each(e,function(e,t){var r=-1!==t.indexOf("$")?t.slice(2,-1):t.slice(1,-1),n=P.isPlainObject(a)&&a[r]!==C?a[r]:g.data(r)!==C?g.data(r):b.data(r)!==C?b.data(r):a[r];if(n===C)return R.error(c.requiredParameter,r,o),o=!1;R.verbose("Found required variable",r,n),n=f.encodeParameters?R.get.urlEncodedValue(n):n,o=o.replace(t,n)})),t&&(R.debug("Looking for optional URL variables",e),P.each(t,function(e,t){var r=-1!==t.indexOf("$")?t.slice(3,-1):t.slice(2,-1),n=P.isPlainObject(a)&&a[r]!==C?a[r]:g.data(r)!==C?g.data(r):b.data(r)!==C?b.data(r):a[r];o=n!==C?(R.verbose("Optional variable Found",r,n),o.replace(t,n)):(R.verbose("Optional variable not found",r),-1!==o.indexOf("/"+t)?o.replace("/"+t,""):o.replace(t,""))}))),o},formData:function(r){var e,n,u,c,d,l={},t="formdata"===f.serializeForm;return r=r||o||f.data,e=P.isPlainObject(r),t?(l=new FormData(m[0]),f.processData=void 0!==f.processData&&f.processData,f.contentType=void 0!==f.contentType&&f.contentType):(n=m.serializeArray(),u={},c={},d=function(e,t,r){return e[t]=r,e},P.each(P('input[type="file"]',m),function(e,r){P.each(P(r)[0].files,function(e,t){n.push({name:r.name,value:t})})}),P.each(n,function(e,t){if(f.regExp.validate.test(t.name)){var r,n="checkbox"===P('[name="'+t.name+'"]',m).attr("type"),o=parseFloat(t.value),a=n&&"on"===t.value||"true"===t.value||(String(o)===t.value?o:"false"!==t.value&&t.value),s=t.name.match(f.regExp.key)||[],i=t.name.replace(/\[\]$/,"");i in u?Array.isArray(c[i])?c[i].push(a):c[i]=[c[i],a]:(u[i]=0,c[i]=a),-1===i.indexOf("[]")&&(a=c[i]);for(;(r=s.pop())!==C;)""!=r||Array.isArray(a)?f.regExp.fixed.test(r)?a=d([],r,a):f.regExp.named.test(r)&&(a=d({},r,a)):a=d([],u[i]++,a);l=P.extend(!0,l,a)}})),r=e?(R.debug("Extending existing data with form data",r,l),t?(P.each(Object.keys(r),function(e,t){l.append(t,r[t])}),l):P.extend(!0,{},r,l)):(R.debug("Adding form data",l),l)}},send:{request:function(){R.set.loading(),R.request=R.create.request(),R.is.mocked()?R.mockedXHR=R.create.mockedXHR():R.xhr=R.create.xhr(),f.onRequest.call(h,R.request,R.xhr)}},event:{trigger:function(e){R.query(),"submit"!=e.type&&"click"!=e.type||e.preventDefault()},xhr:{always:function(){},done:function(e,t,r){var n=this,o=(new Date).getTime()-s,o=f.loadingDuration-o,a=!!F(f.onResponse)&&(R.is.expectingJSON()&&!f.rawResponse?f.onResponse.call(n,P.extend(!0,{},e)):f.onResponse.call(n,e)),o=0<o?o:0;a&&(R.debug("Modified API response in onResponse callback",f.onResponse,a,e),e=a),0<o&&R.debug("Response completed early delaying state change by",o),setTimeout(function(){R.is.validResponse(e)?R.request.resolveWith(n,[e,r]):R.request.rejectWith(n,[r,"invalid"])},o)},fail:function(e,t,r){var n=this,o=(new Date).getTime()-s,o=f.loadingDuration-o;0<(o=0<o?o:0)&&R.debug("Response completed early delaying state change by",o),setTimeout(function(){R.is.abortedRequest(e)?R.request.rejectWith(n,[e,"aborted",r]):R.request.rejectWith(n,[e,"error",t,r])},o)}},request:{done:function(e,t){R.debug("Successful API Response",e),"local"===f.cache&&r&&(R.write.cachedResponse(r,e),R.debug("Saving server response locally",R.cache)),f.onSuccess.call(h,e,g,t)},complete:function(e,t){var r,n;R.was.successful()?(n=e,r=t):n=R.get.responseFromXHR(r=e),R.remove.loading(),f.onComplete.call(h,n,g,r)},fail:function(e,t,r){var n=R.get.responseFromXHR(e),o=R.get.errorFromRequest(n,t,r);if("aborted"==t)return R.debug("XHR Aborted (Most likely caused by page navigation or CORS Policy)",t,r),f.onAbort.call(h,t,g,e),!0;"invalid"==t?R.debug("JSON did not pass success test. A server-side error has most likely occurred",n):"error"==t&&e!==C&&(R.debug("XHR produced a server error",t,r),(e.status<200||300<=e.status)&&r!==C&&""!==r&&R.error(c.statusMessage+r,a.url),f.onError.call(h,o,g,e)),f.errorDuration&&"aborted"!==t&&(R.debug("Adding error state"),R.set.error(),R.should.removeError()&&setTimeout(R.remove.error,f.errorDuration)),R.debug("API Request failed",o,e),f.onFailure.call(h,n,g,e)}}},create:{request:function(){return P.Deferred().always(R.event.request.complete).done(R.event.request.done).fail(R.event.request.fail)},mockedXHR:function(){var e=f.mockResponse||f.response,t=f.mockResponseAsync||f.responseAsync,r=P.Deferred().always(R.event.xhr.complete).done(R.event.xhr.done).fail(R.event.xhr.fail);return e?(e=F(e)?(R.debug("Using specified synchronous callback",e),e.call(h,n)):(R.debug("Using settings specified response",e),e),r.resolveWith(h,[e,!1,{responseText:e}])):F(t)&&(e=function(e){R.debug("Async callback returned response",e),e?r.resolveWith(h,[e,!1,{responseText:e}]):r.rejectWith(h,[{responseText:e},!1,!1])},R.debug("Using specified async response callback",t),t.call(h,n,e)),r},xhr:function(){var e=P.ajax(a).always(R.event.xhr.always).done(R.event.xhr.done).fail(R.event.xhr.fail);return R.verbose("Created server request",e,a),e}},set:{error:function(){R.verbose("Adding error state to element",b),b.addClass(d.error)},loading:function(){R.verbose("Adding loading state to element",b),b.addClass(d.loading),s=(new Date).getTime()}},remove:{error:function(){R.verbose("Removing error state from element",b),b.removeClass(d.error)},loading:function(){R.verbose("Removing loading state from element",b),b.removeClass(d.loading)}},get:{normalizedData:function(){return"string"==typeof f.data?f.data:JSON.stringify(f.data,Object.keys(f.data).sort())},responseFromXHR:function(e){return!!P.isPlainObject(e)&&(R.is.expectingJSON()?R.decode.json(e.responseText):e.responseText)},errorFromRequest:function(e,t,r){return P.isPlainObject(e)&&e.error!==C?e.error:f.error[t]!==C?f.error[t]:r},request:function(){return R.request||!1},xhr:function(){return R.xhr||!1},settings:function(){var e=f.beforeSend.call(g,f);return e&&(e.success!==C&&(R.debug("Legacy success callback detected",e),R.error(c.legacyParameters,e.success),e.onSuccess=e.success),e.failure!==C&&(R.debug("Legacy failure callback detected",e),R.error(c.legacyParameters,e.failure),e.onFailure=e.failure),e.complete!==C&&(R.debug("Legacy complete callback detected",e),R.error(c.legacyParameters,e.complete),e.onComplete=e.complete)),e===C&&R.error(c.noReturnedValue),!1===e?e:e!==C?P.extend(!0,{},e):P.extend(!0,{},f)},urlEncodedValue:function(e){var t=w.decodeURIComponent(e),r=w.encodeURIComponent(e);return t!==e?(R.debug("URL value is already encoded, avoiding double encoding",e),e):(R.verbose("Encoding value using encodeURIComponent",e,r),r)},defaultData:function(){var e={};return E(v)||(R.is.input()?e.value=g.val():R.is.form()||(e.text=g.text())),e},event:function(){return E(v)||"now"==f.on?(R.debug("API called without element, no events attached"),!1):"auto"==f.on?g.is("input")?v.oninput!==C?"input":v.onpropertychange!==C?"propertychange":"keyup":g.is("form")?"submit":"click":f.on},templatedURL:function(e){if(e=e||g.data(i.action)||f.action||!1,r=g.data(i.url)||f.url||!1)return R.debug("Using specified url",r),r;if(e){if(R.debug("Looking up url for action",e,f.api),f.api[e]===C&&!R.is.mocked())return void R.error(c.missingAction,f.action,f.api);r=f.api[e]}else R.is.form()&&(r=g.attr("action")||b.attr("action")||!1,R.debug("No url or action specified, defaulting to form action",r));return r}},abort:function(){var e=R.get.xhr();e&&"resolved"!==e.state()&&(R.debug("Cancelling API request"),e.abort())},reset:function(){R.remove.error(),R.remove.loading()},setting:function(e,t){if(R.debug("Changing setting",e,t),P.isPlainObject(e))P.extend(!0,f,e);else{if(t===C)return f[e];P.isPlainObject(f[e])?P.extend(!0,f[e],t):f[e]=t}},internal:function(e,t){if(P.isPlainObject(e))P.extend(!0,R,e);else{if(t===C)return R[e];R[e]=t}},debug:function(){!f.silent&&f.debug&&(f.performance?R.performance.log(arguments):(R.debug=Function.prototype.bind.call(console.info,console,f.name+":"),R.debug.apply(console,arguments)))},verbose:function(){!f.silent&&f.verbose&&f.debug&&(f.performance?R.performance.log(arguments):(R.verbose=Function.prototype.bind.call(console.info,console,f.name+":"),R.verbose.apply(console,arguments)))},error:function(){f.silent||(R.error=Function.prototype.bind.call(console.error,console,f.name+":"),R.error.apply(console,arguments))},performance:{log:function(e){var t,r;f.performance&&(r=(t=(new Date).getTime())-(k||t),k=t,S.push({Name:e[0],Arguments:[].slice.call(e,1)||"","Execution Time":r})),clearTimeout(R.performance.timer),R.performance.timer=setTimeout(R.performance.display,500)},display:function(){var e=f.name+":",r=0;k=!1,clearTimeout(R.performance.timer),P.each(S,function(e,t){r+=t["Execution Time"]}),e+=" "+r+"ms",A&&(e+=" '"+A+"'"),(console.group!==C||console.table!==C)&&0<S.length&&(console.groupCollapsed(e),console.table?console.table(S):P.each(S,function(e,t){console.log(t.Name+": "+t["Execution Time"]+"ms")}),console.groupEnd()),S=[]}},invoke:function(n,e,t){var o,a,r,s=y;return e=e||O,t=t||v,"string"==typeof n&&s!==C&&(n=n.split(/[\. ]/),o=n.length-1,P.each(n,function(e,t){var r=e!=o?t+n[e+1].charAt(0).toUpperCase()+n[e+1].slice(1):n;if(P.isPlainObject(s[r])&&e!=o)s=s[r];else{if(s[r]!==C)return a=s[r],!1;{if(!P.isPlainObject(s[t])||e==o)return s[t]!==C?a=s[t]:R.error(c.method,n),!1;s=s[t]}}})),F(a)?r=a.apply(t,e):a!==C&&(r=a),Array.isArray(x)?x.push(r):x!==C?x=[x,r]:r!==C&&(x=r),a}};D?(y===C&&R.initialize(),R.invoke(T)):(y!==C&&y.invoke("destroy"),R.initialize())}),x!==C?x:this},P.api.settings={name:"API",namespace:"api",debug:!1,verbose:!1,performance:!0,api:{},cache:!0,interruptRequests:!0,on:"auto",stateContext:!1,loadingDuration:0,hideError:"auto",errorDuration:2e3,encodeParameters:!0,action:!1,url:!1,base:"",urlData:{},defaultData:!0,serializeForm:!1,throttle:0,throttleFirstRequest:!0,method:"get",data:{},dataType:"json",mockResponse:!1,mockResponseAsync:!1,response:!1,responseAsync:!1,rawResponse:!0,beforeSend:function(e){return e},beforeXHR:function(e){},onRequest:function(e,t){},onResponse:!1,onSuccess:function(e,t){},onComplete:function(e,t){},onFailure:function(e,t){},onError:function(e,t){},onAbort:function(e,t){},successTest:!1,error:{beforeSend:"The before send function has aborted the request",error:"There was an error with your request",exitConditions:"API Request Aborted. Exit conditions met",JSONParse:"JSON could not be parsed during error handling",legacyParameters:"You are using legacy API success callback names",method:"The method you called is not defined",missingAction:"API action used but no url was defined",missingURL:"No URL specified for api event",noReturnedValue:"The beforeSend callback must return a settings object, beforeSend ignored.",noStorage:"Caching responses locally requires session storage",parseError:"There was an error parsing your request",requiredParameter:"Missing a required URL parameter: ",statusMessage:"Server gave an error: ",timeout:"Your request timed out"},regExp:{required:/\{\$*[a-z0-9]+\}/gi,optional:/\{\/\$*[a-z0-9]+\}/gi,validate:/^[a-z_][a-z0-9_-]*(?:\[[a-z0-9_-]*\])*$/i,key:/[a-z0-9_-]+|(?=\[\])/gi,push:/^$/,fixed:/^\d+$/,named:/^[a-z0-9_-]+$/i},className:{loading:"loading",error:"error"},selector:{disabled:".disabled",form:"form"},metadata:{action:"action",url:"url"}}}(jQuery,window,document);
11
+ !function(P,w,j,C){"use strict";function E(e){return null!=e&&e===e.window}function F(e){return"function"==typeof e&&"number"!=typeof e.nodeType}w=void 0!==w&&w.Math==Math?w:globalThis,P.api=P.fn.api=function(q){var x,e=F(this)?P(w):P(this),A=e.selector||"",k=(new Date).getTime(),S=[],T=q,D="string"==typeof T,O=[].slice.call(arguments,1);return e.each(function(){var a,n,r,e,s,o,f=P.isPlainObject(q)?P.extend(!0,{},P.fn.api.settings,q):P.extend({},P.fn.api.settings),t=f.namespace,i=f.metadata,u=f.selector,c=f.error,d=f.className,l="."+t,p="module-"+t,g=P(this),m=g.closest(u.form),b=f.stateContext?[w,j].indexOf(f.stateContext)<0?P(j).find(f.stateContext):P(f.stateContext):g,v=this,h=b[0],y=g.data(p),R={initialize:function(){D||(o=f.data,R.bind.events()),R.instantiate()},instantiate:function(){R.verbose("Storing instance of module",R),y=R,g.data(p,y)},destroy:function(){R.verbose("Destroying previous module for",v),g.removeData(p).off(l)},bind:{events:function(){var e=R.get.event();e?(R.verbose("Attaching API events to element",e),g.on(e+l,R.event.trigger)):"now"==f.on&&(R.debug("Querying API endpoint immediately"),R.query())}},decode:{json:function(e){if(e!==C&&"string"==typeof e)try{e=JSON.parse(e)}catch(e){}return e}},read:{cachedResponse:function(e){var t;if(w.Storage!==C)return t=sessionStorage.getItem(e+R.get.normalizedData()),R.debug("Using cached response",e,f.data,t),R.decode.json(t);R.error(c.noStorage)}},write:{cachedResponse:function(e,t){w.Storage===C?R.error(c.noStorage):(P.isPlainObject(t)&&(t=JSON.stringify(t)),sessionStorage.setItem(e+R.get.normalizedData(),t),R.verbose("Storing cached response for url",e,f.data,t))}},query:function(){if(R.is.disabled())R.debug("Element is disabled API request aborted");else{if(R.is.loading()){if(!f.interruptRequests)return void R.debug("Cancelling request, previous request is still pending");R.debug("Interrupting previous request"),R.abort()}if(f.defaultData&&P.extend(!0,f.urlData,R.get.defaultData()),f.serializeForm&&(f.data=R.add.formData(o||f.data)),!1===(n=R.get.settings()))return R.cancelled=!0,void R.error(c.beforeSend);if(R.cancelled=!1,(r=R.get.templatedURL())||R.is.mocked()){if((r=R.add.urlData(r))||R.is.mocked()){if(n.url=f.base+r,a=P.extend(!0,{},f,{type:f.method||f.type,data:e,url:f.base+r,beforeSend:f.beforeXHR,success:function(){},failure:function(){},complete:function(){}}),R.debug("Querying URL",a.url),R.verbose("Using AJAX settings",a),"local"===f.cache&&R.read.cachedResponse(r))return R.debug("Response returned from local cache"),R.request=R.create.request(),void R.request.resolveWith(h,[R.read.cachedResponse(r)]);f.throttle?f.throttleFirstRequest||R.timer?(R.debug("Throttling request",f.throttle),clearTimeout(R.timer),R.timer=setTimeout(function(){R.timer&&delete R.timer,R.debug("Sending throttled request",e,a.method),R.send.request()},f.throttle)):(R.debug("Sending request",e,a.method),R.send.request(),R.timer=setTimeout(function(){},f.throttle)):(R.debug("Sending request",e,a.method),R.send.request())}}else R.error(c.missingURL)}},should:{removeError:function(){return!0===f.hideError||"auto"===f.hideError&&!R.is.form()}},is:{disabled:function(){return 0<g.filter(u.disabled).length},expectingJSON:function(){return"json"===f.dataType||"jsonp"===f.dataType},form:function(){return g.is("form")||b.is("form")},mocked:function(){return f.mockResponse||f.mockResponseAsync||f.response||f.responseAsync},input:function(){return g.is("input")},loading:function(){return!!R.request&&"pending"==R.request.state()},abortedRequest:function(e){return e&&e.readyState!==C&&0===e.readyState?(R.verbose("XHR request determined to be aborted"),!0):(R.verbose("XHR request was not aborted"),!1)},validResponse:function(e){return R.is.expectingJSON()&&F(f.successTest)?(R.debug("Checking JSON returned success",f.successTest,e),f.successTest(e)?(R.debug("Response passed success test",e),!0):(R.debug("Response failed success test",e),!1)):(R.verbose("Response is not JSON, skipping validation",f.successTest,e),!0)}},was:{cancelled:function(){return R.cancelled||!1},successful:function(){return R.request&&"resolved"==R.request.state()},failure:function(){return R.request&&"rejected"==R.request.state()},complete:function(){return R.request&&("resolved"==R.request.state()||"rejected"==R.request.state())}},add:{urlData:function(o,a){var e,t;return o&&(e=o.match(f.regExp.required),t=o.match(f.regExp.optional),a=a||f.urlData,e&&(R.debug("Looking for required URL variables",e),P.each(e,function(e,t){var r=-1!==t.indexOf("$")?t.slice(2,-1):t.slice(1,-1),n=P.isPlainObject(a)&&a[r]!==C?a[r]:g.data(r)!==C?g.data(r):b.data(r)!==C?b.data(r):a[r];if(n===C)return R.error(c.requiredParameter,r,o),o=!1;R.verbose("Found required variable",r,n),n=f.encodeParameters?R.get.urlEncodedValue(n):n,o=o.replace(t,n)})),t&&(R.debug("Looking for optional URL variables",e),P.each(t,function(e,t){var r=-1!==t.indexOf("$")?t.slice(3,-1):t.slice(2,-1),n=P.isPlainObject(a)&&a[r]!==C?a[r]:g.data(r)!==C?g.data(r):b.data(r)!==C?b.data(r):a[r];o=n!==C?(R.verbose("Optional variable Found",r,n),o.replace(t,n)):(R.verbose("Optional variable not found",r),-1!==o.indexOf("/"+t)?o.replace("/"+t,""):o.replace(t,""))}))),o},formData:function(r){var e,n,u,c,d,l={},t="formdata"===f.serializeForm;return r=r||o||f.data,e=P.isPlainObject(r),t?(l=new FormData(m[0]),f.processData=void 0!==f.processData&&f.processData,f.contentType=void 0!==f.contentType&&f.contentType):(n=m.serializeArray(),u={},c={},d=function(e,t,r){return e[t]=r,e},P.each(P('input[type="file"]',m),function(e,r){P.each(P(r)[0].files,function(e,t){n.push({name:r.name,value:t})})}),P.each(n,function(e,t){if(f.regExp.validate.test(t.name)){var r,n="checkbox"===P('[name="'+t.name+'"]',m).attr("type"),o=parseFloat(t.value),a=n&&"on"===t.value||"true"===t.value||(String(o)===t.value?o:"false"!==t.value&&t.value),s=t.name.match(f.regExp.key)||[],i=t.name.replace(/\[\]$/,"");i in u?Array.isArray(c[i])?c[i].push(a):c[i]=[c[i],a]:(u[i]=0,c[i]=a),-1===i.indexOf("[]")&&(a=c[i]);for(;(r=s.pop())!==C;)""!=r||Array.isArray(a)?f.regExp.fixed.test(r)?a=d([],r,a):f.regExp.named.test(r)&&(a=d({},r,a)):a=d([],u[i]++,a);l=P.extend(!0,l,a)}})),r=e?(R.debug("Extending existing data with form data",r,l),t?(P.each(Object.keys(r),function(e,t){l.append(t,r[t])}),l):P.extend(!0,{},r,l)):(R.debug("Adding form data",l),l)}},send:{request:function(){R.set.loading(),R.request=R.create.request(),R.is.mocked()?R.mockedXHR=R.create.mockedXHR():R.xhr=R.create.xhr(),f.onRequest.call(h,R.request,R.xhr)}},event:{trigger:function(e){R.query(),"submit"!=e.type&&"click"!=e.type||e.preventDefault()},xhr:{always:function(){},done:function(e,t,r){var n=this,o=(new Date).getTime()-s,o=f.loadingDuration-o,a=!!F(f.onResponse)&&(R.is.expectingJSON()&&!f.rawResponse?f.onResponse.call(n,P.extend(!0,{},e)):f.onResponse.call(n,e)),o=0<o?o:0;a&&(R.debug("Modified API response in onResponse callback",f.onResponse,a,e),e=a),0<o&&R.debug("Response completed early delaying state change by",o),setTimeout(function(){R.is.validResponse(e)?R.request.resolveWith(n,[e,r]):R.request.rejectWith(n,[r,"invalid"])},o)},fail:function(e,t,r){var n=this,o=(new Date).getTime()-s,o=f.loadingDuration-o;0<(o=0<o?o:0)&&R.debug("Response completed early delaying state change by",o),setTimeout(function(){R.is.abortedRequest(e)?R.request.rejectWith(n,[e,"aborted",r]):R.request.rejectWith(n,[e,"error",t,r])},o)}},request:{done:function(e,t){R.debug("Successful API Response",e),"local"===f.cache&&r&&(R.write.cachedResponse(r,e),R.debug("Saving server response locally",R.cache)),f.onSuccess.call(h,e,g,t)},complete:function(e,t){var r,n;R.was.successful()?(n=e,r=t):n=R.get.responseFromXHR(r=e),R.remove.loading(),f.onComplete.call(h,n,g,r)},fail:function(e,t,r){var n=R.get.responseFromXHR(e),o=R.get.errorFromRequest(n,t,r);if("aborted"==t)return R.debug("XHR Aborted (Most likely caused by page navigation or CORS Policy)",t,r),f.onAbort.call(h,t,g,e),!0;"invalid"==t?R.debug("JSON did not pass success test. A server-side error has most likely occurred",n):"error"==t&&e!==C&&(R.debug("XHR produced a server error",t,r),(e.status<200||300<=e.status)&&r!==C&&""!==r&&R.error(c.statusMessage+r,a.url),f.onError.call(h,o,g,e)),f.errorDuration&&"aborted"!==t&&(R.debug("Adding error state"),R.set.error(),R.should.removeError()&&setTimeout(R.remove.error,f.errorDuration)),R.debug("API Request failed",o,e),f.onFailure.call(h,n,g,e)}}},create:{request:function(){return P.Deferred().always(R.event.request.complete).done(R.event.request.done).fail(R.event.request.fail)},mockedXHR:function(){var e=f.mockResponse||f.response,t=f.mockResponseAsync||f.responseAsync,r=P.Deferred().always(R.event.xhr.complete).done(R.event.xhr.done).fail(R.event.xhr.fail);return e?(e=F(e)?(R.debug("Using specified synchronous callback",e),e.call(h,n)):(R.debug("Using settings specified response",e),e),r.resolveWith(h,[e,!1,{responseText:e}])):F(t)&&(e=function(e){R.debug("Async callback returned response",e),e?r.resolveWith(h,[e,!1,{responseText:e}]):r.rejectWith(h,[{responseText:e},!1,!1])},R.debug("Using specified async response callback",t),t.call(h,n,e)),r},xhr:function(){var e=P.ajax(a).always(R.event.xhr.always).done(R.event.xhr.done).fail(R.event.xhr.fail);return R.verbose("Created server request",e,a),e}},set:{error:function(){R.verbose("Adding error state to element",b),b.addClass(d.error)},loading:function(){R.verbose("Adding loading state to element",b),b.addClass(d.loading),s=(new Date).getTime()}},remove:{error:function(){R.verbose("Removing error state from element",b),b.removeClass(d.error)},loading:function(){R.verbose("Removing loading state from element",b),b.removeClass(d.loading)}},get:{normalizedData:function(){return"string"==typeof f.data?f.data:JSON.stringify(f.data,Object.keys(f.data).sort())},responseFromXHR:function(e){return!!P.isPlainObject(e)&&(R.is.expectingJSON()?R.decode.json(e.responseText):e.responseText)},errorFromRequest:function(e,t,r){return P.isPlainObject(e)&&e.error!==C?e.error:f.error[t]!==C?f.error[t]:r},request:function(){return R.request||!1},xhr:function(){return R.xhr||!1},settings:function(){var e=f.beforeSend.call(g,f);return e&&(e.success!==C&&(R.debug("Legacy success callback detected",e),R.error(c.legacyParameters,e.success),e.onSuccess=e.success),e.failure!==C&&(R.debug("Legacy failure callback detected",e),R.error(c.legacyParameters,e.failure),e.onFailure=e.failure),e.complete!==C&&(R.debug("Legacy complete callback detected",e),R.error(c.legacyParameters,e.complete),e.onComplete=e.complete)),e===C&&R.error(c.noReturnedValue),!1===e?e:e!==C?P.extend(!0,{},e):P.extend(!0,{},f)},urlEncodedValue:function(e){var t=w.decodeURIComponent(e),r=w.encodeURIComponent(e);return t!==e?(R.debug("URL value is already encoded, avoiding double encoding",e),e):(R.verbose("Encoding value using encodeURIComponent",e,r),r)},defaultData:function(){var e={};return E(v)||(R.is.input()?e.value=g.val():R.is.form()||(e.text=g.text())),e},event:function(){return E(v)||"now"==f.on?(R.debug("API called without element, no events attached"),!1):"auto"==f.on?g.is("input")?v.oninput!==C?"input":v.onpropertychange!==C?"propertychange":"keyup":g.is("form")?"submit":"click":f.on},templatedURL:function(e){if(e=e||g.data(i.action)||f.action||!1,r=g.data(i.url)||f.url||!1)return R.debug("Using specified url",r),r;if(e){if(R.debug("Looking up url for action",e,f.api),f.api[e]===C&&!R.is.mocked())return void R.error(c.missingAction,f.action,f.api);r=f.api[e]}else R.is.form()&&(r=g.attr("action")||b.attr("action")||!1,R.debug("No url or action specified, defaulting to form action",r));return r}},abort:function(){var e=R.get.xhr();e&&"resolved"!==e.state()&&(R.debug("Cancelling API request"),e.abort())},reset:function(){R.remove.error(),R.remove.loading()},setting:function(e,t){if(R.debug("Changing setting",e,t),P.isPlainObject(e))P.extend(!0,f,e);else{if(t===C)return f[e];P.isPlainObject(f[e])?P.extend(!0,f[e],t):f[e]=t}},internal:function(e,t){if(P.isPlainObject(e))P.extend(!0,R,e);else{if(t===C)return R[e];R[e]=t}},debug:function(){!f.silent&&f.debug&&(f.performance?R.performance.log(arguments):(R.debug=Function.prototype.bind.call(console.info,console,f.name+":"),R.debug.apply(console,arguments)))},verbose:function(){!f.silent&&f.verbose&&f.debug&&(f.performance?R.performance.log(arguments):(R.verbose=Function.prototype.bind.call(console.info,console,f.name+":"),R.verbose.apply(console,arguments)))},error:function(){f.silent||(R.error=Function.prototype.bind.call(console.error,console,f.name+":"),R.error.apply(console,arguments))},performance:{log:function(e){var t,r;f.performance&&(r=(t=(new Date).getTime())-(k||t),k=t,S.push({Name:e[0],Arguments:[].slice.call(e,1)||"","Execution Time":r})),clearTimeout(R.performance.timer),R.performance.timer=setTimeout(R.performance.display,500)},display:function(){var e=f.name+":",r=0;k=!1,clearTimeout(R.performance.timer),P.each(S,function(e,t){r+=t["Execution Time"]}),e+=" "+r+"ms",A&&(e+=" '"+A+"'"),(console.group!==C||console.table!==C)&&0<S.length&&(console.groupCollapsed(e),console.table?console.table(S):P.each(S,function(e,t){console.log(t.Name+": "+t["Execution Time"]+"ms")}),console.groupEnd()),S=[]}},invoke:function(n,e,t){var o,a,r,s=y;return e=e||O,t=t||v,"string"==typeof n&&s!==C&&(n=n.split(/[\. ]/),o=n.length-1,P.each(n,function(e,t){var r=e!=o?t+n[e+1].charAt(0).toUpperCase()+n[e+1].slice(1):n;if(P.isPlainObject(s[r])&&e!=o)s=s[r];else{if(s[r]!==C)return a=s[r],!1;{if(!P.isPlainObject(s[t])||e==o)return s[t]!==C?a=s[t]:R.error(c.method,n),!1;s=s[t]}}})),F(a)?r=a.apply(t,e):a!==C&&(r=a),Array.isArray(x)?x.push(r):x!==C?x=[x,r]:r!==C&&(x=r),a}};D?(y===C&&R.initialize(),R.invoke(T)):(y!==C&&y.invoke("destroy"),R.initialize())}),x!==C?x:this},P.api.settings={name:"API",namespace:"api",debug:!1,verbose:!1,performance:!0,api:{},cache:!0,interruptRequests:!0,on:"auto",stateContext:!1,loadingDuration:0,hideError:"auto",errorDuration:2e3,encodeParameters:!0,action:!1,url:!1,base:"",urlData:{},defaultData:!0,serializeForm:!1,throttle:0,throttleFirstRequest:!0,method:"get",data:{},dataType:"json",mockResponse:!1,mockResponseAsync:!1,response:!1,responseAsync:!1,rawResponse:!0,beforeSend:function(e){return e},beforeXHR:function(e){},onRequest:function(e,t){},onResponse:!1,onSuccess:function(e,t){},onComplete:function(e,t){},onFailure:function(e,t){},onError:function(e,t){},onAbort:function(e,t){},successTest:!1,error:{beforeSend:"The before send function has aborted the request",error:"There was an error with your request",exitConditions:"API Request Aborted. Exit conditions met",JSONParse:"JSON could not be parsed during error handling",legacyParameters:"You are using legacy API success callback names",method:"The method you called is not defined",missingAction:"API action used but no url was defined",missingURL:"No URL specified for api event",noReturnedValue:"The beforeSend callback must return a settings object, beforeSend ignored.",noStorage:"Caching responses locally requires session storage",parseError:"There was an error parsing your request",requiredParameter:"Missing a required URL parameter: ",statusMessage:"Server gave an error: ",timeout:"Your request timed out"},regExp:{required:/\{\$*[a-z0-9]+\}/gi,optional:/\{\/\$*[a-z0-9]+\}/gi,validate:/^[a-z_][a-z0-9_-]*(?:\[[a-z0-9_-]*\])*$/i,key:/[a-z0-9_-]+|(?=\[\])/gi,push:/^$/,fixed:/^\d+$/,named:/^[a-z0-9_-]+$/i},className:{loading:"loading",error:"error"},selector:{disabled:".disabled",form:"form"},metadata:{action:"action",url:"url"}}}(jQuery,window,document);
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * # Fomantic-UI 2.9.1-beta.20+d4987bf - Breadcrumb
2
+ * # Fomantic-UI 2.9.1-beta.21+2722e1b - Breadcrumb
3
3
  * https://github.com/fomantic/Fomantic-UI/
4
4
  *
5
5
  *
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * # Fomantic-UI 2.9.1-beta.20+d4987bf - Breadcrumb
2
+ * # Fomantic-UI 2.9.1-beta.21+2722e1b - Breadcrumb
3
3
  * https://github.com/fomantic/Fomantic-UI/
4
4
  *
5
5
  *
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * # Fomantic-UI 2.9.1-beta.20+d4987bf - Button
2
+ * # Fomantic-UI 2.9.1-beta.21+2722e1b - Button
3
3
  * https://github.com/fomantic/Fomantic-UI/
4
4
  *
5
5
  *
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * # Fomantic-UI 2.9.1-beta.20+d4987bf - Button
2
+ * # Fomantic-UI 2.9.1-beta.21+2722e1b - Button
3
3
  * https://github.com/fomantic/Fomantic-UI/
4
4
  *
5
5
  *
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * # Fomantic-UI 2.9.1-beta.20+d4987bf - Calendar
2
+ * # Fomantic-UI 2.9.1-beta.21+2722e1b - Calendar
3
3
  * https://github.com/fomantic/Fomantic-UI/
4
4
  *
5
5
  *
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * # Fomantic-UI 2.9.1-beta.20+d4987bf - Calendar
2
+ * # Fomantic-UI 2.9.1-beta.21+2722e1b - Calendar
3
3
  * https://github.com/fomantic/Fomantic-UI/
4
4
  *
5
5
  *
@@ -255,7 +255,7 @@
255
255
  today = new Date(),
256
256
  date = module.get.date(),
257
257
  focusDate = module.get.focusDate(),
258
- display = module.helper.dateInRange(focusDate || date || settings.initialDate || today)
258
+ display = module.helper.dateInRange(focusDate || date || parser.date(settings.initialDate, settings) || today)
259
259
  ;
260
260
 
261
261
  if (!focusDate) {
@@ -885,7 +885,7 @@
885
885
  var endDate = module.get.endDate();
886
886
  if (!!endDate && !!date && date > endDate) {
887
887
  // selected date is greater than end date in range, so clear end date
888
- module.set.endDate(undefined);
888
+ module.set.endDate();
889
889
  }
890
890
  module.set.dataKeyValue(metadata.date, date);
891
891
 
@@ -1022,7 +1022,7 @@
1022
1022
  },
1023
1023
 
1024
1024
  clear: function () {
1025
- module.set.date(undefined);
1025
+ module.set.date();
1026
1026
  },
1027
1027
 
1028
1028
  popup: function () {
@@ -1104,57 +1104,59 @@
1104
1104
  },
1105
1105
  isDisabled: function (date, mode) {
1106
1106
  return (mode === 'day' || mode === 'month' || mode === 'year' || mode === 'hour') && (((mode === 'day' && settings.disabledDaysOfWeek.indexOf(date.getDay()) !== -1) || settings.disabledDates.some(function (d) {
1107
+ var blocked = false;
1108
+
1107
1109
  if (typeof d === 'string') {
1108
1110
  d = module.helper.sanitiseDate(d);
1109
1111
  }
1110
1112
  if (d instanceof Date) {
1111
- return module.helper.dateEqual(date, d, mode);
1112
- }
1113
- if (d !== null && typeof d === 'object') {
1113
+ blocked = module.helper.dateEqual(date, d, mode);
1114
+ } else if (d !== null && typeof d === 'object') {
1114
1115
  if (d[metadata.year]) {
1115
1116
  if (typeof d[metadata.year] === 'number') {
1116
- return date.getFullYear() == d[metadata.year];
1117
+ blocked = date.getFullYear() == d[metadata.year];
1117
1118
  } else if (Array.isArray(d[metadata.year])) {
1118
- return d[metadata.year].indexOf(date.getFullYear()) > -1;
1119
+ blocked = d[metadata.year].indexOf(date.getFullYear()) > -1;
1119
1120
  }
1120
1121
  } else if (d[metadata.month]) {
1121
1122
  if (typeof d[metadata.month] === 'number') {
1122
- return date.getMonth() == d[metadata.month];
1123
+ blocked = date.getMonth() == d[metadata.month];
1123
1124
  } else if (Array.isArray(d[metadata.month])) {
1124
- return d[metadata.month].indexOf(date.getMonth()) > -1;
1125
+ blocked = d[metadata.month].indexOf(date.getMonth()) > -1;
1125
1126
  } else if (d[metadata.month] instanceof Date) {
1126
1127
  var sdate = module.helper.sanitiseDate(d[metadata.month]);
1127
1128
 
1128
- return (date.getMonth() == sdate.getMonth()) && (date.getFullYear() == sdate.getFullYear());
1129
+ blocked = (date.getMonth() == sdate.getMonth()) && (date.getFullYear() == sdate.getFullYear());
1129
1130
  }
1130
1131
  } else if (d[metadata.date] && mode === 'day') {
1131
1132
  if (d[metadata.date] instanceof Date) {
1132
- return module.helper.dateEqual(date, module.helper.sanitiseDate(d[metadata.date]), mode);
1133
+ blocked = module.helper.dateEqual(date, module.helper.sanitiseDate(d[metadata.date]), mode);
1133
1134
  } else if (Array.isArray(d[metadata.date])) {
1134
- return d[metadata.date].some(function (idate) {
1135
+ blocked = d[metadata.date].some(function (idate) {
1135
1136
  return module.helper.dateEqual(date, idate, mode);
1136
1137
  });
1137
1138
  }
1138
1139
  }
1139
1140
  }
1141
+
1142
+ return blocked;
1140
1143
  })) || (mode === 'hour' && settings.disabledHours.some(function (d) {
1144
+ var blocked = false;
1145
+
1141
1146
  if (typeof d === 'string') {
1142
1147
  d = module.helper.sanitiseDate(d);
1143
1148
  }
1144
1149
  if (d instanceof Date) {
1145
- return module.helper.dateEqual(date, d, mode);
1150
+ blocked = module.helper.dateEqual(date, d, mode);
1146
1151
  } else if (typeof d === 'number') {
1147
- return date.getHours() === d;
1148
- }
1149
- if (d !== null && typeof d === 'object') {
1150
- var blocked = true;
1151
-
1152
+ blocked = date.getHours() === d;
1153
+ } else if (d !== null && typeof d === 'object') {
1152
1154
  if (d[metadata.date]) {
1153
1155
  if (d[metadata.date] instanceof Date) {
1154
1156
  blocked = module.helper.dateEqual(date, module.helper.sanitiseDate(d[metadata.date]));
1155
1157
  } else if (Array.isArray(d[metadata.date])) {
1156
- return d[metadata.date].some(function (idate) {
1157
- blocked = module.helper.dateEqual(date, idate, mode);
1158
+ blocked = d[metadata.date].some(function (idate) {
1159
+ return module.helper.dateEqual(date, idate, mode);
1158
1160
  });
1159
1161
  }
1160
1162
  }
@@ -1169,26 +1171,31 @@
1169
1171
 
1170
1172
  if (d[metadata.hours]) {
1171
1173
  if (typeof d[metadata.hours] === 'number') {
1172
- return blocked && date.getHours() == d[metadata.hours];
1174
+ blocked = blocked && date.getHours() == d[metadata.hours];
1173
1175
  } else if (Array.isArray(d[metadata.hours])) {
1174
- return blocked && d[metadata.hours].indexOf(date.getHours()) > -1;
1176
+ blocked = blocked && d[metadata.hours].indexOf(date.getHours()) > -1;
1175
1177
  }
1176
1178
  }
1177
1179
  }
1180
+
1181
+ return blocked;
1178
1182
  })));
1179
1183
  },
1180
1184
  isEnabled: function (date, mode) {
1181
1185
  if (mode === 'day') {
1182
1186
  return settings.enabledDates.length === 0 || settings.enabledDates.some(function (d) {
1187
+ var enabled = false;
1188
+
1183
1189
  if (typeof d === 'string') {
1184
1190
  d = module.helper.sanitiseDate(d);
1185
1191
  }
1186
1192
  if (d instanceof Date) {
1187
- return module.helper.dateEqual(date, d, mode);
1188
- }
1189
- if (d !== null && typeof d === 'object' && d[metadata.date]) {
1190
- return module.helper.dateEqual(date, module.helper.sanitiseDate(d[metadata.date]), mode);
1193
+ enabled = module.helper.dateEqual(date, d, mode);
1194
+ } else if (d !== null && typeof d === 'object' && d[metadata.date]) {
1195
+ enabled = module.helper.dateEqual(date, module.helper.sanitiseDate(d[metadata.date]), mode);
1191
1196
  }
1197
+
1198
+ return enabled;
1192
1199
  });
1193
1200
  } else {
1194
1201
  return true;
@@ -1721,7 +1728,7 @@
1721
1728
  }
1722
1729
  for (j = 0; j < settings.text.months.length; j++) {
1723
1730
  monthString = settings.text.months[j];
1724
- monthString = monthString.substring(0, word.length).toLowerCase();
1731
+ monthString = monthString.slice(0, word.length).toLowerCase();
1725
1732
  if (monthString === word) {
1726
1733
  month = j + 1;
1727
1734
 
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * # Fomantic-UI 2.9.1-beta.20+d4987bf - Calendar
2
+ * # Fomantic-UI 2.9.1-beta.21+2722e1b - Calendar
3
3
  * https://github.com/fomantic/Fomantic-UI/
4
4
  *
5
5
  *