@capillarytech/creatives-library 0.0.1

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 (1045) hide show
  1. package/app.js +92 -0
  2. package/assets/loading_img.gif +0 -0
  3. package/components/BreadCrumbs/index.js +64 -0
  4. package/components/BreadCrumbs/messages.js +13 -0
  5. package/components/BreadCrumbs/tests/index.test.js +10 -0
  6. package/components/CapTagList/index.js +230 -0
  7. package/components/CapTagList/messages.js +13 -0
  8. package/components/CapTagList/tests/index.test.js +10 -0
  9. package/components/Card/_customCard.scss +35 -0
  10. package/components/Card/index.js +75 -0
  11. package/components/Card/tests/index.test.js +10 -0
  12. package/components/CardGrid/index.js +61 -0
  13. package/components/CardGrid/tests/index.test.js +10 -0
  14. package/components/Ckeditor/index.js +189 -0
  15. package/components/Ckeditor/messages.js +13 -0
  16. package/components/Ckeditor/tests/index.test.js +10 -0
  17. package/components/Component/index.js +27 -0
  18. package/components/Component/tests/index.test.js +10 -0
  19. package/components/CustomPopOver/index.js +77 -0
  20. package/components/CustomPopOver/messages.js +13 -0
  21. package/components/CustomPopOver/tests/index.test.js +10 -0
  22. package/components/DateFilter/index.js +347 -0
  23. package/components/DateFilter/messages.js +17 -0
  24. package/components/DateFilter/tests/index.test.js +15 -0
  25. package/components/DateRange/index.js +111 -0
  26. package/components/DateRange/messages.js +13 -0
  27. package/components/DateRange/tests/index.test.js +10 -0
  28. package/components/Edmeditor/index.js +63 -0
  29. package/components/Edmeditor/messages.js +13 -0
  30. package/components/Edmeditor/tests/index.test.js +10 -0
  31. package/components/EmailPreview/_emailPreview.scss +116 -0
  32. package/components/EmailPreview/assets/images/iPad.svg +10 -0
  33. package/components/EmailPreview/assets/images/mobile.png +0 -0
  34. package/components/EmailPreview/index.js +93 -0
  35. package/components/EmailPreview/tests/index.test.js +10 -0
  36. package/components/Footer/index.js +27 -0
  37. package/components/Footer/messages.js +13 -0
  38. package/components/Footer/tests/index.test.js +10 -0
  39. package/components/FormBuilder/_formBuilder.scss +59 -0
  40. package/components/FormBuilder/index.js +2756 -0
  41. package/components/FormBuilder/messages.js +13 -0
  42. package/components/FormBuilder/tests/index.test.js +10 -0
  43. package/components/ImagePreview/_imagePreview.scss +63 -0
  44. package/components/ImagePreview/index.js +50 -0
  45. package/components/ImagePreview/messages.js +13 -0
  46. package/components/ImagePreview/tests/index.test.js +10 -0
  47. package/components/PageHeader/_pageHeader.scss +22 -0
  48. package/components/PageHeader/index.js +36 -0
  49. package/components/PageHeader/messages.js +13 -0
  50. package/components/PageHeader/tests/index.test.js +10 -0
  51. package/components/Pagination/_pagination.scss +5 -0
  52. package/components/Pagination/index.js +47 -0
  53. package/components/Pagination/tests/index.test.js +10 -0
  54. package/components/PreviewSideBar/_previewsidebar.scss +28 -0
  55. package/components/PreviewSideBar/index.js +136 -0
  56. package/components/PreviewSideBar/messages.js +33 -0
  57. package/components/PreviewSideBar/tests/index.test.js +10 -0
  58. package/components/Sidebar/_sidebar.scss +115 -0
  59. package/components/Sidebar/index.js +231 -0
  60. package/components/Sidebar/messages.js +21 -0
  61. package/components/Sidebar/tests/index.test.js +10 -0
  62. package/components/SlideBox/_slideBox.scss +63 -0
  63. package/components/SlideBox/index.js +47 -0
  64. package/components/SlideBox/tests/index.test.js +103 -0
  65. package/components/SmsEditor/index.js +53 -0
  66. package/components/SmsEditor/tests/index.test.js +10 -0
  67. package/components/SmsTest/index.js +115 -0
  68. package/components/SmsTest/messages.js +13 -0
  69. package/components/SmsTest/tests/index.test.js +10 -0
  70. package/components/TemplatePreview/_templatePreview.scss +271 -0
  71. package/components/TemplatePreview/assets/images/WECHAT_5x.png +0 -0
  72. package/components/TemplatePreview/assets/images/androidPushMessage.svg +45 -0
  73. package/components/TemplatePreview/assets/images/iPhonePushMessage.svg +135 -0
  74. package/components/TemplatePreview/assets/images/mobile.svg +24 -0
  75. package/components/TemplatePreview/assets/images/sms-body.png +0 -0
  76. package/components/TemplatePreview/assets/images/sms-icon.png +0 -0
  77. package/components/TemplatePreview/assets/images/sms_mobile.png +0 -0
  78. package/components/TemplatePreview/assets/images/user-icon.svg +19 -0
  79. package/components/TemplatePreview/assets/images/wechat-mobile.svg +78 -0
  80. package/components/TemplatePreview/index.js +126 -0
  81. package/components/TemplatePreview/messages.js +21 -0
  82. package/components/TemplatePreview/tests/index.test.js +10 -0
  83. package/components/Toastr/index.js +59 -0
  84. package/components/Toastr/messages.js +13 -0
  85. package/components/Toastr/tests/index.test.js +10 -0
  86. package/components/ToastrMessage/index.js +108 -0
  87. package/components/ToastrMessage/messages.js +13 -0
  88. package/components/ToastrMessage/tests/index.test.js +10 -0
  89. package/components/TopBar/_topbar.scss +46 -0
  90. package/components/TopBar/assets/images/capillary_logo.png +0 -0
  91. package/components/TopBar/index.js +112 -0
  92. package/components/TopBar/messages.js +29 -0
  93. package/components/TopBar/tests/index.test.js +10 -0
  94. package/config/app.js +24 -0
  95. package/config/path.js +3 -0
  96. package/config/request.js +135 -0
  97. package/config/toastr.js +44 -0
  98. package/containers/App/actions.js +7 -0
  99. package/containers/App/constants.js +3 -0
  100. package/containers/App/reducer.js +19 -0
  101. package/containers/App/sagas.js +26 -0
  102. package/containers/App/selectors.js +25 -0
  103. package/containers/App/tests/actions.test.js +18 -0
  104. package/containers/App/tests/reducer.test.js +9 -0
  105. package/containers/App/tests/sagas.test.js +15 -0
  106. package/containers/App/tests/selectors.test.js +10 -0
  107. package/containers/Assets/Gallery/_gallery.scss +107 -0
  108. package/containers/Assets/Gallery/actions.js +37 -0
  109. package/containers/Assets/Gallery/constants.js +23 -0
  110. package/containers/Assets/Gallery/index.js +450 -0
  111. package/containers/Assets/Gallery/messages.js +89 -0
  112. package/containers/Assets/Gallery/reducer.js +81 -0
  113. package/containers/Assets/Gallery/sagas.js +84 -0
  114. package/containers/Assets/Gallery/selectors.js +25 -0
  115. package/containers/Assets/Gallery/tests/__snapshots__/reducer.test.js.snap +7 -0
  116. package/containers/Assets/Gallery/tests/actions.test.js +26 -0
  117. package/containers/Assets/Gallery/tests/index.test.js +10 -0
  118. package/containers/Assets/Gallery/tests/reducer.test.js +95 -0
  119. package/containers/Assets/Gallery/tests/sagas.test.js +15 -0
  120. package/containers/Assets/Gallery/tests/selectors.test.js +10 -0
  121. package/containers/Cap/actions.js +52 -0
  122. package/containers/Cap/constants.js +20 -0
  123. package/containers/Cap/index.js +332 -0
  124. package/containers/Cap/messsages.js +63 -0
  125. package/containers/Cap/reducer.js +98 -0
  126. package/containers/Cap/sagas.js +130 -0
  127. package/containers/Cap/selectors.js +53 -0
  128. package/containers/Cap/tests/index.test.js +16 -0
  129. package/containers/Cap/tests/selectors.test.js +28 -0
  130. package/containers/Dashboard/actions.js +15 -0
  131. package/containers/Dashboard/constants.js +7 -0
  132. package/containers/Dashboard/index.js +53 -0
  133. package/containers/Dashboard/messages.js +13 -0
  134. package/containers/Dashboard/reducer.js +21 -0
  135. package/containers/Dashboard/sagas.js +11 -0
  136. package/containers/Dashboard/selectors.js +25 -0
  137. package/containers/Dashboard/tests/actions.test.js +18 -0
  138. package/containers/Dashboard/tests/index.test.js +10 -0
  139. package/containers/Dashboard/tests/reducer.test.js +9 -0
  140. package/containers/Dashboard/tests/sagas.test.js +15 -0
  141. package/containers/Dashboard/tests/selectors.test.js +10 -0
  142. package/containers/Ebill/actions.js +43 -0
  143. package/containers/Ebill/constants.js +20 -0
  144. package/containers/Ebill/index.js +1273 -0
  145. package/containers/Ebill/messages.js +41 -0
  146. package/containers/Ebill/reducer.js +66 -0
  147. package/containers/Ebill/sagas.js +61 -0
  148. package/containers/Ebill/selectors.js +25 -0
  149. package/containers/Ebill/tests/actions.test.js +18 -0
  150. package/containers/Ebill/tests/index.test.js +10 -0
  151. package/containers/Ebill/tests/reducer.test.js +9 -0
  152. package/containers/Ebill/tests/sagas.test.js +15 -0
  153. package/containers/Ebill/tests/selectors.test.js +10 -0
  154. package/containers/Email/_email.scss +126 -0
  155. package/containers/Email/actions.js +69 -0
  156. package/containers/Email/constants.js +32 -0
  157. package/containers/Email/index.js +2356 -0
  158. package/containers/Email/messages.js +125 -0
  159. package/containers/Email/reducer.js +117 -0
  160. package/containers/Email/sagas.js +110 -0
  161. package/containers/Email/selectors.js +25 -0
  162. package/containers/Email/tests/actions.test.js +18 -0
  163. package/containers/Email/tests/index.test.js +10 -0
  164. package/containers/Email/tests/reducer.test.js +9 -0
  165. package/containers/Email/tests/sagas.test.js +15 -0
  166. package/containers/Email/tests/selectors.test.js +10 -0
  167. package/containers/LanguageProvider/actions.js +17 -0
  168. package/containers/LanguageProvider/constants.js +8 -0
  169. package/containers/LanguageProvider/index.js +44 -0
  170. package/containers/LanguageProvider/reducer.js +30 -0
  171. package/containers/LanguageProvider/selectors.js +20 -0
  172. package/containers/LanguageProvider/tests/actions.test.js +19 -0
  173. package/containers/LanguageProvider/tests/index.test.js +49 -0
  174. package/containers/LanguageProvider/tests/reducer.test.js +20 -0
  175. package/containers/LanguageProvider/tests/selectors.test.js +15 -0
  176. package/containers/Login/assets/images/capillary_logo.png +0 -0
  177. package/containers/Login/components/LoginForm/index.js +58 -0
  178. package/containers/Login/components/LoginForm/messages.js +21 -0
  179. package/containers/Login/components/LoginForm/tests/index.test.js +10 -0
  180. package/containers/Login/index.js +105 -0
  181. package/containers/Login/messages.js +21 -0
  182. package/containers/Login/selectors.js +25 -0
  183. package/containers/Login/tests/index.test.js +10 -0
  184. package/containers/Login/tests/sagas.test.js +15 -0
  185. package/containers/Login/tests/selectors.test.js +10 -0
  186. package/containers/MobilePush/Create/_mobilePushCreate.scss +25 -0
  187. package/containers/MobilePush/Create/actions.js +46 -0
  188. package/containers/MobilePush/Create/constants.js +23 -0
  189. package/containers/MobilePush/Create/index.js +2193 -0
  190. package/containers/MobilePush/Create/messages.js +17 -0
  191. package/containers/MobilePush/Create/reducer.js +67 -0
  192. package/containers/MobilePush/Create/sagas.js +57 -0
  193. package/containers/MobilePush/Create/selectors.js +28 -0
  194. package/containers/MobilePush/Create/tests/actions.test.js +18 -0
  195. package/containers/MobilePush/Create/tests/index.test.js +10 -0
  196. package/containers/MobilePush/Create/tests/reducer.test.js +9 -0
  197. package/containers/MobilePush/Create/tests/sagas.test.js +15 -0
  198. package/containers/MobilePush/Create/tests/selectors.test.js +10 -0
  199. package/containers/MobilePush/Edit/_mobilePushCreate.scss +25 -0
  200. package/containers/MobilePush/Edit/actions.js +84 -0
  201. package/containers/MobilePush/Edit/constants.js +35 -0
  202. package/containers/MobilePush/Edit/index.js +2479 -0
  203. package/containers/MobilePush/Edit/messages.js +85 -0
  204. package/containers/MobilePush/Edit/reducer.js +109 -0
  205. package/containers/MobilePush/Edit/sagas.js +115 -0
  206. package/containers/MobilePush/Edit/selectors.js +29 -0
  207. package/containers/MobilePush/Edit/tests/actions.test.js +18 -0
  208. package/containers/MobilePush/Edit/tests/index.test.js +10 -0
  209. package/containers/MobilePush/Edit/tests/reducer.test.js +9 -0
  210. package/containers/MobilePush/Edit/tests/sagas.test.js +15 -0
  211. package/containers/MobilePush/Edit/tests/selectors.test.js +10 -0
  212. package/containers/NotFoundPage/index.js +25 -0
  213. package/containers/NotFoundPage/messages.js +13 -0
  214. package/containers/NotFoundPage/tests/index.test.js +17 -0
  215. package/containers/Sms/Create/_smsCreate.scss +45 -0
  216. package/containers/Sms/Create/actions.js +27 -0
  217. package/containers/Sms/Create/constants.js +16 -0
  218. package/containers/Sms/Create/index.js +1464 -0
  219. package/containers/Sms/Create/messages.js +81 -0
  220. package/containers/Sms/Create/reducer.js +38 -0
  221. package/containers/Sms/Create/sagas.js +31 -0
  222. package/containers/Sms/Create/selectors.js +28 -0
  223. package/containers/Sms/Create/tests/actions.test.js +18 -0
  224. package/containers/Sms/Create/tests/index.test.js +10 -0
  225. package/containers/Sms/Create/tests/reducer.test.js +9 -0
  226. package/containers/Sms/Create/tests/sagas.test.js +15 -0
  227. package/containers/Sms/Create/tests/selectors.test.js +10 -0
  228. package/containers/Sms/Edit/actions.js +33 -0
  229. package/containers/Sms/Edit/constants.js +17 -0
  230. package/containers/Sms/Edit/index.js +1439 -0
  231. package/containers/Sms/Edit/messages.js +85 -0
  232. package/containers/Sms/Edit/reducer.js +47 -0
  233. package/containers/Sms/Edit/sagas.js +47 -0
  234. package/containers/Sms/Edit/selectors.js +32 -0
  235. package/containers/Sms/Edit/tests/actions.test.js +18 -0
  236. package/containers/Sms/Edit/tests/index.test.js +10 -0
  237. package/containers/Sms/Edit/tests/reducer.test.js +9 -0
  238. package/containers/Sms/Edit/tests/sagas.test.js +15 -0
  239. package/containers/Sms/Edit/tests/selectors.test.js +10 -0
  240. package/containers/TagList/_tagList.scss +8 -0
  241. package/containers/TagList/actions.js +15 -0
  242. package/containers/TagList/constants.js +7 -0
  243. package/containers/TagList/index.js +227 -0
  244. package/containers/TagList/messages.js +13 -0
  245. package/containers/TagList/reducer.js +23 -0
  246. package/containers/TagList/sagas.js +11 -0
  247. package/containers/TagList/selectors.js +25 -0
  248. package/containers/TagList/tests/actions.test.js +18 -0
  249. package/containers/TagList/tests/index.test.js +10 -0
  250. package/containers/TagList/tests/reducer.test.js +9 -0
  251. package/containers/TagList/tests/sagas.test.js +15 -0
  252. package/containers/TagList/tests/selectors.test.js +10 -0
  253. package/containers/Templates/_templates.scss +326 -0
  254. package/containers/Templates/actions.js +95 -0
  255. package/containers/Templates/constants.js +44 -0
  256. package/containers/Templates/index.js +1290 -0
  257. package/containers/Templates/messages.js +177 -0
  258. package/containers/Templates/reducer.js +131 -0
  259. package/containers/Templates/sagas.js +167 -0
  260. package/containers/Templates/selectors.js +28 -0
  261. package/containers/Templates/tests/actions.test.js +18 -0
  262. package/containers/Templates/tests/index.test.js +10 -0
  263. package/containers/Templates/tests/reducer.test.js +9 -0
  264. package/containers/Templates/tests/sagas.test.js +15 -0
  265. package/containers/Templates/tests/selectors.test.js +10 -0
  266. package/containers/TestPage/constants.js +7 -0
  267. package/containers/TestPage/index.js +31 -0
  268. package/containers/TestPage/messages.js +13 -0
  269. package/containers/TestPage/reducer.js +21 -0
  270. package/containers/TestPage/sagas.js +11 -0
  271. package/containers/Testv2/actions.js +15 -0
  272. package/containers/Testv2/constants.js +7 -0
  273. package/containers/Testv2/index.js +45 -0
  274. package/containers/Testv2/messages.js +13 -0
  275. package/containers/Testv2/reducer.js +23 -0
  276. package/containers/Testv2/sagas.js +11 -0
  277. package/containers/Testv2/selectors.js +25 -0
  278. package/containers/Testv2/tests/actions.test.js +18 -0
  279. package/containers/Testv2/tests/index.test.js +10 -0
  280. package/containers/Testv2/tests/reducer.test.js +9 -0
  281. package/containers/Testv2/tests/sagas.test.js +15 -0
  282. package/containers/Testv2/tests/selectors.test.js +10 -0
  283. package/containers/WeChat/_wechat.scss +8 -0
  284. package/containers/WeChat/actions.js +46 -0
  285. package/containers/WeChat/constants.js +28 -0
  286. package/containers/WeChat/index.js +1597 -0
  287. package/containers/WeChat/messages.js +73 -0
  288. package/containers/WeChat/reducer.js +74 -0
  289. package/containers/WeChat/sagas.js +86 -0
  290. package/containers/WeChat/selectors.js +25 -0
  291. package/containers/WeChat/tests/actions.test.js +18 -0
  292. package/containers/WeChat/tests/index.test.js +10 -0
  293. package/containers/WeChat/tests/reducer.test.js +9 -0
  294. package/containers/WeChat/tests/sagas.test.js +15 -0
  295. package/containers/WeChat/tests/selectors.test.js +10 -0
  296. package/containers/package.json +64 -0
  297. package/favicon.ico +0 -0
  298. package/global-styles.js +15 -0
  299. package/gtm/eventDefinitions.js +17 -0
  300. package/gtm/eventDefinitionsMap.js +12 -0
  301. package/gtm/tests/events.test.js +3 -0
  302. package/i18n.js +39 -0
  303. package/index.html +43 -0
  304. package/index.js +9 -0
  305. package/initialState.js +32 -0
  306. package/package.json +63 -0
  307. package/reducers.js +61 -0
  308. package/routes.js +426 -0
  309. package/schemas/user.js +8 -0
  310. package/services/api.js +291 -0
  311. package/services/localStorageApi.js +33 -0
  312. package/store.js +61 -0
  313. package/styles/_variables.scss +53 -0
  314. package/styles/abstracts/_functions.scss +1 -0
  315. package/styles/abstracts/_mixins.scss +0 -0
  316. package/styles/abstracts/_module.scss +6 -0
  317. package/styles/abstracts/_placeholders.scss +0 -0
  318. package/styles/abstracts/_variables.scss +34 -0
  319. package/styles/base/_animations.scss +0 -0
  320. package/styles/base/_base.scss +64 -0
  321. package/styles/base/_module.scss +5 -0
  322. package/styles/base/_reset.scss +0 -0
  323. package/styles/base/_typography.scss +0 -0
  324. package/styles/components/_module.scss +11 -0
  325. package/styles/components/autocompletebox/_module.scss +60 -0
  326. package/styles/components/breadcrumbs/_breadcrumbs.scss +14 -0
  327. package/styles/components/common/_accordianDropdown.scss +35 -0
  328. package/styles/components/common/_message.scss +3 -0
  329. package/styles/components/dimension/_dimension.scss +77 -0
  330. package/styles/components/filters/_dateFilter.scss +68 -0
  331. package/styles/components/filters/_dimensionFilter.scss +66 -0
  332. package/styles/components/footer/_footer.scss +13 -0
  333. package/styles/components/login/_loginForm.scss +0 -0
  334. package/styles/components/navigation/_leftnav.scss +213 -0
  335. package/styles/components/navigation/_topnav.scss +52 -0
  336. package/styles/containers/_module.scss +3 -0
  337. package/styles/containers/layout/_layoutPage.scss +169 -0
  338. package/styles/containers/login/_loginPage.scss +60 -0
  339. package/styles/containers/reports/_reportPage.scss +128 -0
  340. package/styles/layout/_footer.scss +0 -0
  341. package/styles/layout/_forms.scss +3 -0
  342. package/styles/layout/_grid.scss +3 -0
  343. package/styles/layout/_header.scss +25 -0
  344. package/styles/layout/_module.scss +1 -0
  345. package/styles/layout/_navigation.scss +0 -0
  346. package/styles/layout/_sidebar.scss +0 -0
  347. package/styles/main.scss +6 -0
  348. package/styles/vendor/_module.scss +0 -0
  349. package/styles/vendor/semantic/dist/components/accordion.css +311 -0
  350. package/styles/vendor/semantic/dist/components/accordion.js +610 -0
  351. package/styles/vendor/semantic/dist/components/accordion.min.css +9 -0
  352. package/styles/vendor/semantic/dist/components/accordion.min.js +10 -0
  353. package/styles/vendor/semantic/dist/components/accordion.rtl.css +252 -0
  354. package/styles/vendor/semantic/dist/components/accordion.rtl.min.css +9 -0
  355. package/styles/vendor/semantic/dist/components/ad.css +275 -0
  356. package/styles/vendor/semantic/dist/components/ad.min.css +10 -0
  357. package/styles/vendor/semantic/dist/components/ad.rtl.css +275 -0
  358. package/styles/vendor/semantic/dist/components/ad.rtl.min.css +10 -0
  359. package/styles/vendor/semantic/dist/components/api.js +1167 -0
  360. package/styles/vendor/semantic/dist/components/api.min.js +10 -0
  361. package/styles/vendor/semantic/dist/components/breadcrumb.css +124 -0
  362. package/styles/vendor/semantic/dist/components/breadcrumb.min.css +9 -0
  363. package/styles/vendor/semantic/dist/components/breadcrumb.rtl.css +124 -0
  364. package/styles/vendor/semantic/dist/components/breadcrumb.rtl.min.css +9 -0
  365. package/styles/vendor/semantic/dist/components/button.css +3557 -0
  366. package/styles/vendor/semantic/dist/components/button.min.css +9 -0
  367. package/styles/vendor/semantic/dist/components/button.rtl.css +3450 -0
  368. package/styles/vendor/semantic/dist/components/button.rtl.min.css +9 -0
  369. package/styles/vendor/semantic/dist/components/card.css +964 -0
  370. package/styles/vendor/semantic/dist/components/card.min.css +9 -0
  371. package/styles/vendor/semantic/dist/components/card.rtl.css +964 -0
  372. package/styles/vendor/semantic/dist/components/card.rtl.min.css +9 -0
  373. package/styles/vendor/semantic/dist/components/checkbox.css +625 -0
  374. package/styles/vendor/semantic/dist/components/checkbox.js +831 -0
  375. package/styles/vendor/semantic/dist/components/checkbox.min.css +9 -0
  376. package/styles/vendor/semantic/dist/components/checkbox.min.js +10 -0
  377. package/styles/vendor/semantic/dist/components/checkbox.rtl.css +625 -0
  378. package/styles/vendor/semantic/dist/components/checkbox.rtl.min.css +9 -0
  379. package/styles/vendor/semantic/dist/components/comment.css +270 -0
  380. package/styles/vendor/semantic/dist/components/comment.min.css +9 -0
  381. package/styles/vendor/semantic/dist/components/comment.rtl.css +270 -0
  382. package/styles/vendor/semantic/dist/components/comment.rtl.min.css +9 -0
  383. package/styles/vendor/semantic/dist/components/container.css +147 -0
  384. package/styles/vendor/semantic/dist/components/container.min.css +9 -0
  385. package/styles/vendor/semantic/dist/components/container.rtl.css +147 -0
  386. package/styles/vendor/semantic/dist/components/container.rtl.min.css +9 -0
  387. package/styles/vendor/semantic/dist/components/dimmer.css +200 -0
  388. package/styles/vendor/semantic/dist/components/dimmer.js +708 -0
  389. package/styles/vendor/semantic/dist/components/dimmer.min.css +9 -0
  390. package/styles/vendor/semantic/dist/components/dimmer.min.js +10 -0
  391. package/styles/vendor/semantic/dist/components/dimmer.rtl.css +200 -0
  392. package/styles/vendor/semantic/dist/components/dimmer.rtl.min.css +9 -0
  393. package/styles/vendor/semantic/dist/components/divider.css +260 -0
  394. package/styles/vendor/semantic/dist/components/divider.min.css +9 -0
  395. package/styles/vendor/semantic/dist/components/divider.rtl.css +260 -0
  396. package/styles/vendor/semantic/dist/components/divider.rtl.min.css +9 -0
  397. package/styles/vendor/semantic/dist/components/dropdown.css +1487 -0
  398. package/styles/vendor/semantic/dist/components/dropdown.js +3741 -0
  399. package/styles/vendor/semantic/dist/components/dropdown.min.css +9 -0
  400. package/styles/vendor/semantic/dist/components/dropdown.min.js +11 -0
  401. package/styles/vendor/semantic/dist/components/dropdown.rtl.css +1417 -0
  402. package/styles/vendor/semantic/dist/components/dropdown.rtl.min.css +9 -0
  403. package/styles/vendor/semantic/dist/components/embed.css +166 -0
  404. package/styles/vendor/semantic/dist/components/embed.js +696 -0
  405. package/styles/vendor/semantic/dist/components/embed.min.css +9 -0
  406. package/styles/vendor/semantic/dist/components/embed.min.js +10 -0
  407. package/styles/vendor/semantic/dist/components/embed.rtl.css +166 -0
  408. package/styles/vendor/semantic/dist/components/embed.rtl.min.css +9 -0
  409. package/styles/vendor/semantic/dist/components/feed.css +296 -0
  410. package/styles/vendor/semantic/dist/components/feed.min.css +9 -0
  411. package/styles/vendor/semantic/dist/components/feed.rtl.css +296 -0
  412. package/styles/vendor/semantic/dist/components/feed.rtl.min.css +9 -0
  413. package/styles/vendor/semantic/dist/components/flag.css +1031 -0
  414. package/styles/vendor/semantic/dist/components/flag.min.css +9 -0
  415. package/styles/vendor/semantic/dist/components/flag.rtl.css +1031 -0
  416. package/styles/vendor/semantic/dist/components/flag.rtl.min.css +9 -0
  417. package/styles/vendor/semantic/dist/components/form.css +1067 -0
  418. package/styles/vendor/semantic/dist/components/form.js +1558 -0
  419. package/styles/vendor/semantic/dist/components/form.min.css +9 -0
  420. package/styles/vendor/semantic/dist/components/form.min.js +10 -0
  421. package/styles/vendor/semantic/dist/components/form.rtl.css +1067 -0
  422. package/styles/vendor/semantic/dist/components/form.rtl.min.css +9 -0
  423. package/styles/vendor/semantic/dist/components/grid.css +2002 -0
  424. package/styles/vendor/semantic/dist/components/grid.min.css +9 -0
  425. package/styles/vendor/semantic/dist/components/grid.rtl.css +2002 -0
  426. package/styles/vendor/semantic/dist/components/grid.rtl.min.css +9 -0
  427. package/styles/vendor/semantic/dist/components/header.css +721 -0
  428. package/styles/vendor/semantic/dist/components/header.min.css +9 -0
  429. package/styles/vendor/semantic/dist/components/header.rtl.css +721 -0
  430. package/styles/vendor/semantic/dist/components/header.rtl.min.css +9 -0
  431. package/styles/vendor/semantic/dist/components/icon.css +3142 -0
  432. package/styles/vendor/semantic/dist/components/icon.min.css +9 -0
  433. package/styles/vendor/semantic/dist/components/icon.rtl.css +3142 -0
  434. package/styles/vendor/semantic/dist/components/icon.rtl.min.css +9 -0
  435. package/styles/vendor/semantic/dist/components/image.css +306 -0
  436. package/styles/vendor/semantic/dist/components/image.min.css +9 -0
  437. package/styles/vendor/semantic/dist/components/image.rtl.css +306 -0
  438. package/styles/vendor/semantic/dist/components/image.rtl.min.css +9 -0
  439. package/styles/vendor/semantic/dist/components/input.css +536 -0
  440. package/styles/vendor/semantic/dist/components/input.min.css +9 -0
  441. package/styles/vendor/semantic/dist/components/input.rtl.css +510 -0
  442. package/styles/vendor/semantic/dist/components/input.rtl.min.css +9 -0
  443. package/styles/vendor/semantic/dist/components/item.css +475 -0
  444. package/styles/vendor/semantic/dist/components/item.min.css +9 -0
  445. package/styles/vendor/semantic/dist/components/item.rtl.css +475 -0
  446. package/styles/vendor/semantic/dist/components/item.rtl.min.css +9 -0
  447. package/styles/vendor/semantic/dist/components/label.css +1320 -0
  448. package/styles/vendor/semantic/dist/components/label.min.css +9 -0
  449. package/styles/vendor/semantic/dist/components/label.rtl.css +1307 -0
  450. package/styles/vendor/semantic/dist/components/label.rtl.min.css +9 -0
  451. package/styles/vendor/semantic/dist/components/list.css +951 -0
  452. package/styles/vendor/semantic/dist/components/list.min.css +9 -0
  453. package/styles/vendor/semantic/dist/components/list.rtl.css +951 -0
  454. package/styles/vendor/semantic/dist/components/list.rtl.min.css +9 -0
  455. package/styles/vendor/semantic/dist/components/loader.css +347 -0
  456. package/styles/vendor/semantic/dist/components/loader.min.css +9 -0
  457. package/styles/vendor/semantic/dist/components/loader.rtl.css +347 -0
  458. package/styles/vendor/semantic/dist/components/loader.rtl.min.css +9 -0
  459. package/styles/vendor/semantic/dist/components/menu.css +2020 -0
  460. package/styles/vendor/semantic/dist/components/menu.min.css +1 -0
  461. package/styles/vendor/semantic/dist/components/menu.rtl.css +2002 -0
  462. package/styles/vendor/semantic/dist/components/menu.rtl.min.css +1 -0
  463. package/styles/vendor/semantic/dist/components/message.css +477 -0
  464. package/styles/vendor/semantic/dist/components/message.min.css +9 -0
  465. package/styles/vendor/semantic/dist/components/message.rtl.css +477 -0
  466. package/styles/vendor/semantic/dist/components/message.rtl.min.css +9 -0
  467. package/styles/vendor/semantic/dist/components/modal.css +512 -0
  468. package/styles/vendor/semantic/dist/components/modal.js +913 -0
  469. package/styles/vendor/semantic/dist/components/modal.min.css +9 -0
  470. package/styles/vendor/semantic/dist/components/modal.min.js +10 -0
  471. package/styles/vendor/semantic/dist/components/modal.rtl.css +499 -0
  472. package/styles/vendor/semantic/dist/components/modal.rtl.min.css +9 -0
  473. package/styles/vendor/semantic/dist/components/nag.css +147 -0
  474. package/styles/vendor/semantic/dist/components/nag.js +507 -0
  475. package/styles/vendor/semantic/dist/components/nag.min.css +9 -0
  476. package/styles/vendor/semantic/dist/components/nag.min.js +10 -0
  477. package/styles/vendor/semantic/dist/components/nag.rtl.css +147 -0
  478. package/styles/vendor/semantic/dist/components/nag.rtl.min.css +9 -0
  479. package/styles/vendor/semantic/dist/components/popup.css +733 -0
  480. package/styles/vendor/semantic/dist/components/popup.js +1475 -0
  481. package/styles/vendor/semantic/dist/components/popup.min.css +9 -0
  482. package/styles/vendor/semantic/dist/components/popup.min.js +10 -0
  483. package/styles/vendor/semantic/dist/components/popup.rtl.css +727 -0
  484. package/styles/vendor/semantic/dist/components/popup.rtl.min.css +9 -0
  485. package/styles/vendor/semantic/dist/components/progress.css +516 -0
  486. package/styles/vendor/semantic/dist/components/progress.js +931 -0
  487. package/styles/vendor/semantic/dist/components/progress.min.css +9 -0
  488. package/styles/vendor/semantic/dist/components/progress.min.js +10 -0
  489. package/styles/vendor/semantic/dist/components/progress.rtl.css +516 -0
  490. package/styles/vendor/semantic/dist/components/progress.rtl.min.css +9 -0
  491. package/styles/vendor/semantic/dist/components/rail.css +152 -0
  492. package/styles/vendor/semantic/dist/components/rail.min.css +9 -0
  493. package/styles/vendor/semantic/dist/components/rail.rtl.css +152 -0
  494. package/styles/vendor/semantic/dist/components/rail.rtl.min.css +9 -0
  495. package/styles/vendor/semantic/dist/components/rating.css +263 -0
  496. package/styles/vendor/semantic/dist/components/rating.js +508 -0
  497. package/styles/vendor/semantic/dist/components/rating.min.css +9 -0
  498. package/styles/vendor/semantic/dist/components/rating.min.js +10 -0
  499. package/styles/vendor/semantic/dist/components/rating.rtl.css +263 -0
  500. package/styles/vendor/semantic/dist/components/rating.rtl.min.css +9 -0
  501. package/styles/vendor/semantic/dist/components/reset.css +424 -0
  502. package/styles/vendor/semantic/dist/components/reset.min.css +9 -0
  503. package/styles/vendor/semantic/dist/components/reset.rtl.css +424 -0
  504. package/styles/vendor/semantic/dist/components/reset.rtl.min.css +9 -0
  505. package/styles/vendor/semantic/dist/components/reveal.css +284 -0
  506. package/styles/vendor/semantic/dist/components/reveal.min.css +9 -0
  507. package/styles/vendor/semantic/dist/components/reveal.rtl.css +284 -0
  508. package/styles/vendor/semantic/dist/components/reveal.rtl.min.css +9 -0
  509. package/styles/vendor/semantic/dist/components/search.css +408 -0
  510. package/styles/vendor/semantic/dist/components/search.js +1407 -0
  511. package/styles/vendor/semantic/dist/components/search.min.css +9 -0
  512. package/styles/vendor/semantic/dist/components/search.min.js +10 -0
  513. package/styles/vendor/semantic/dist/components/search.rtl.css +408 -0
  514. package/styles/vendor/semantic/dist/components/search.rtl.min.css +9 -0
  515. package/styles/vendor/semantic/dist/components/segment.css +791 -0
  516. package/styles/vendor/semantic/dist/components/segment.min.css +9 -0
  517. package/styles/vendor/semantic/dist/components/segment.rtl.css +791 -0
  518. package/styles/vendor/semantic/dist/components/segment.rtl.min.css +9 -0
  519. package/styles/vendor/semantic/dist/components/shape.css +157 -0
  520. package/styles/vendor/semantic/dist/components/shape.js +921 -0
  521. package/styles/vendor/semantic/dist/components/shape.min.css +9 -0
  522. package/styles/vendor/semantic/dist/components/shape.min.js +10 -0
  523. package/styles/vendor/semantic/dist/components/shape.rtl.css +157 -0
  524. package/styles/vendor/semantic/dist/components/shape.rtl.min.css +9 -0
  525. package/styles/vendor/semantic/dist/components/sidebar.css +638 -0
  526. package/styles/vendor/semantic/dist/components/sidebar.js +1036 -0
  527. package/styles/vendor/semantic/dist/components/sidebar.min.css +9 -0
  528. package/styles/vendor/semantic/dist/components/sidebar.min.js +10 -0
  529. package/styles/vendor/semantic/dist/components/sidebar.rtl.css +638 -0
  530. package/styles/vendor/semantic/dist/components/sidebar.rtl.min.css +9 -0
  531. package/styles/vendor/semantic/dist/components/site.css +154 -0
  532. package/styles/vendor/semantic/dist/components/site.js +487 -0
  533. package/styles/vendor/semantic/dist/components/site.min.css +9 -0
  534. package/styles/vendor/semantic/dist/components/site.min.js +10 -0
  535. package/styles/vendor/semantic/dist/components/site.rtl.css +154 -0
  536. package/styles/vendor/semantic/dist/components/site.rtl.min.css +9 -0
  537. package/styles/vendor/semantic/dist/components/state.js +708 -0
  538. package/styles/vendor/semantic/dist/components/state.min.js +10 -0
  539. package/styles/vendor/semantic/dist/components/statistic.css +569 -0
  540. package/styles/vendor/semantic/dist/components/statistic.min.css +9 -0
  541. package/styles/vendor/semantic/dist/components/statistic.rtl.css +569 -0
  542. package/styles/vendor/semantic/dist/components/statistic.rtl.min.css +9 -0
  543. package/styles/vendor/semantic/dist/components/step.css +623 -0
  544. package/styles/vendor/semantic/dist/components/step.min.css +9 -0
  545. package/styles/vendor/semantic/dist/components/step.rtl.css +623 -0
  546. package/styles/vendor/semantic/dist/components/step.rtl.min.css +9 -0
  547. package/styles/vendor/semantic/dist/components/sticky.css +78 -0
  548. package/styles/vendor/semantic/dist/components/sticky.js +942 -0
  549. package/styles/vendor/semantic/dist/components/sticky.min.css +9 -0
  550. package/styles/vendor/semantic/dist/components/sticky.min.js +10 -0
  551. package/styles/vendor/semantic/dist/components/sticky.rtl.css +78 -0
  552. package/styles/vendor/semantic/dist/components/sticky.rtl.min.css +9 -0
  553. package/styles/vendor/semantic/dist/components/tab.css +91 -0
  554. package/styles/vendor/semantic/dist/components/tab.js +946 -0
  555. package/styles/vendor/semantic/dist/components/tab.min.css +9 -0
  556. package/styles/vendor/semantic/dist/components/tab.min.js +10 -0
  557. package/styles/vendor/semantic/dist/components/tab.rtl.css +91 -0
  558. package/styles/vendor/semantic/dist/components/tab.rtl.min.css +9 -0
  559. package/styles/vendor/semantic/dist/components/table.css +1108 -0
  560. package/styles/vendor/semantic/dist/components/table.min.css +9 -0
  561. package/styles/vendor/semantic/dist/components/table.rtl.css +1108 -0
  562. package/styles/vendor/semantic/dist/components/table.rtl.min.css +9 -0
  563. package/styles/vendor/semantic/dist/components/transition.css +1964 -0
  564. package/styles/vendor/semantic/dist/components/transition.js +1095 -0
  565. package/styles/vendor/semantic/dist/components/transition.min.css +9 -0
  566. package/styles/vendor/semantic/dist/components/transition.min.js +10 -0
  567. package/styles/vendor/semantic/dist/components/transition.rtl.css +1964 -0
  568. package/styles/vendor/semantic/dist/components/transition.rtl.min.css +9 -0
  569. package/styles/vendor/semantic/dist/components/visibility.js +1283 -0
  570. package/styles/vendor/semantic/dist/components/visibility.min.js +10 -0
  571. package/styles/vendor/semantic/dist/semantic.css +36950 -0
  572. package/styles/vendor/semantic/dist/semantic.js +22500 -0
  573. package/styles/vendor/semantic/dist/semantic.min.css +364 -0
  574. package/styles/vendor/semantic/dist/semantic.min.js +19 -0
  575. package/styles/vendor/semantic/dist/semantic.rtl.css +36579 -0
  576. package/styles/vendor/semantic/dist/semantic.rtl.min.css +11 -0
  577. package/styles/vendor/semantic/dist/themes/basic/assets/fonts/icons.eot +0 -0
  578. package/styles/vendor/semantic/dist/themes/basic/assets/fonts/icons.svg +450 -0
  579. package/styles/vendor/semantic/dist/themes/basic/assets/fonts/icons.ttf +0 -0
  580. package/styles/vendor/semantic/dist/themes/basic/assets/fonts/icons.woff +0 -0
  581. package/styles/vendor/semantic/dist/themes/default/assets/fonts/icons.eot +0 -0
  582. package/styles/vendor/semantic/dist/themes/default/assets/fonts/icons.svg +685 -0
  583. package/styles/vendor/semantic/dist/themes/default/assets/fonts/icons.ttf +0 -0
  584. package/styles/vendor/semantic/dist/themes/default/assets/fonts/icons.woff +0 -0
  585. package/styles/vendor/semantic/dist/themes/default/assets/fonts/icons.woff2 +0 -0
  586. package/styles/vendor/semantic/dist/themes/default/assets/images/flags.png +0 -0
  587. package/styles/vendor/semantic/dist/themes/github/assets/fonts/octicons-local.ttf +0 -0
  588. package/styles/vendor/semantic/dist/themes/github/assets/fonts/octicons.svg +200 -0
  589. package/styles/vendor/semantic/dist/themes/github/assets/fonts/octicons.ttf +0 -0
  590. package/styles/vendor/semantic/dist/themes/github/assets/fonts/octicons.woff +0 -0
  591. package/styles/vendor/semantic/dist/themes/material/assets/fonts/icons.eot +0 -0
  592. package/styles/vendor/semantic/dist/themes/material/assets/fonts/icons.svg +2373 -0
  593. package/styles/vendor/semantic/dist/themes/material/assets/fonts/icons.ttf +0 -0
  594. package/styles/vendor/semantic/dist/themes/material/assets/fonts/icons.woff +0 -0
  595. package/styles/vendor/semantic/gulpfile.js +72 -0
  596. package/styles/vendor/semantic/src/definitions/behaviors/api.js +1167 -0
  597. package/styles/vendor/semantic/src/definitions/behaviors/colorize.js +280 -0
  598. package/styles/vendor/semantic/src/definitions/behaviors/form.js +1558 -0
  599. package/styles/vendor/semantic/src/definitions/behaviors/state.js +708 -0
  600. package/styles/vendor/semantic/src/definitions/behaviors/visibility.js +1283 -0
  601. package/styles/vendor/semantic/src/definitions/behaviors/visit.js +525 -0
  602. package/styles/vendor/semantic/src/definitions/collections/breadcrumb.less +122 -0
  603. package/styles/vendor/semantic/src/definitions/collections/form.less +1053 -0
  604. package/styles/vendor/semantic/src/definitions/collections/grid.less +1920 -0
  605. package/styles/vendor/semantic/src/definitions/collections/menu.less +1965 -0
  606. package/styles/vendor/semantic/src/definitions/collections/message.less +478 -0
  607. package/styles/vendor/semantic/src/definitions/collections/table.less +1114 -0
  608. package/styles/vendor/semantic/src/definitions/elements/button.less +3427 -0
  609. package/styles/vendor/semantic/src/definitions/elements/container.less +143 -0
  610. package/styles/vendor/semantic/src/definitions/elements/divider.less +255 -0
  611. package/styles/vendor/semantic/src/definitions/elements/flag.less +52 -0
  612. package/styles/vendor/semantic/src/definitions/elements/header.less +708 -0
  613. package/styles/vendor/semantic/src/definitions/elements/icon.less +477 -0
  614. package/styles/vendor/semantic/src/definitions/elements/image.less +324 -0
  615. package/styles/vendor/semantic/src/definitions/elements/input.less +507 -0
  616. package/styles/vendor/semantic/src/definitions/elements/label.less +1257 -0
  617. package/styles/vendor/semantic/src/definitions/elements/list.less +951 -0
  618. package/styles/vendor/semantic/src/definitions/elements/loader.less +332 -0
  619. package/styles/vendor/semantic/src/definitions/elements/rail.less +154 -0
  620. package/styles/vendor/semantic/src/definitions/elements/reveal.less +265 -0
  621. package/styles/vendor/semantic/src/definitions/elements/segment.less +768 -0
  622. package/styles/vendor/semantic/src/definitions/elements/step.less +562 -0
  623. package/styles/vendor/semantic/src/definitions/globals/reset.less +40 -0
  624. package/styles/vendor/semantic/src/definitions/globals/site.js +487 -0
  625. package/styles/vendor/semantic/src/definitions/globals/site.less +166 -0
  626. package/styles/vendor/semantic/src/definitions/modules/accordion.js +610 -0
  627. package/styles/vendor/semantic/src/definitions/modules/accordion.less +219 -0
  628. package/styles/vendor/semantic/src/definitions/modules/checkbox.js +831 -0
  629. package/styles/vendor/semantic/src/definitions/modules/checkbox.less +598 -0
  630. package/styles/vendor/semantic/src/definitions/modules/dimmer.js +708 -0
  631. package/styles/vendor/semantic/src/definitions/modules/dimmer.less +189 -0
  632. package/styles/vendor/semantic/src/definitions/modules/dropdown.js +3741 -0
  633. package/styles/vendor/semantic/src/definitions/modules/dropdown.less +1352 -0
  634. package/styles/vendor/semantic/src/definitions/modules/embed.js +696 -0
  635. package/styles/vendor/semantic/src/definitions/modules/embed.less +163 -0
  636. package/styles/vendor/semantic/src/definitions/modules/modal.js +913 -0
  637. package/styles/vendor/semantic/src/definitions/modules/modal.less +484 -0
  638. package/styles/vendor/semantic/src/definitions/modules/nag.js +507 -0
  639. package/styles/vendor/semantic/src/definitions/modules/nag.less +158 -0
  640. package/styles/vendor/semantic/src/definitions/modules/popup.js +1475 -0
  641. package/styles/vendor/semantic/src/definitions/modules/popup.less +712 -0
  642. package/styles/vendor/semantic/src/definitions/modules/progress.js +931 -0
  643. package/styles/vendor/semantic/src/definitions/modules/progress.less +503 -0
  644. package/styles/vendor/semantic/src/definitions/modules/rating.js +508 -0
  645. package/styles/vendor/semantic/src/definitions/modules/rating.less +191 -0
  646. package/styles/vendor/semantic/src/definitions/modules/search.js +1407 -0
  647. package/styles/vendor/semantic/src/definitions/modules/search.less +417 -0
  648. package/styles/vendor/semantic/src/definitions/modules/shape.js +921 -0
  649. package/styles/vendor/semantic/src/definitions/modules/shape.less +150 -0
  650. package/styles/vendor/semantic/src/definitions/modules/sidebar.js +1036 -0
  651. package/styles/vendor/semantic/src/definitions/modules/sidebar.less +552 -0
  652. package/styles/vendor/semantic/src/definitions/modules/sticky.js +942 -0
  653. package/styles/vendor/semantic/src/definitions/modules/sticky.less +74 -0
  654. package/styles/vendor/semantic/src/definitions/modules/tab.js +946 -0
  655. package/styles/vendor/semantic/src/definitions/modules/tab.less +94 -0
  656. package/styles/vendor/semantic/src/definitions/modules/transition.js +1095 -0
  657. package/styles/vendor/semantic/src/definitions/modules/transition.less +78 -0
  658. package/styles/vendor/semantic/src/definitions/views/ad.less +268 -0
  659. package/styles/vendor/semantic/src/definitions/views/card.less +1059 -0
  660. package/styles/vendor/semantic/src/definitions/views/comment.less +269 -0
  661. package/styles/vendor/semantic/src/definitions/views/feed.less +278 -0
  662. package/styles/vendor/semantic/src/definitions/views/item.less +464 -0
  663. package/styles/vendor/semantic/src/definitions/views/statistic.less +557 -0
  664. package/styles/vendor/semantic/src/semantic.less +66 -0
  665. package/styles/vendor/semantic/src/site/collections/breadcrumb.overrides +3 -0
  666. package/styles/vendor/semantic/src/site/collections/breadcrumb.variables +3 -0
  667. package/styles/vendor/semantic/src/site/collections/form.overrides +3 -0
  668. package/styles/vendor/semantic/src/site/collections/form.variables +3 -0
  669. package/styles/vendor/semantic/src/site/collections/grid.overrides +3 -0
  670. package/styles/vendor/semantic/src/site/collections/grid.variables +3 -0
  671. package/styles/vendor/semantic/src/site/collections/menu.overrides +24 -0
  672. package/styles/vendor/semantic/src/site/collections/menu.variables +6 -0
  673. package/styles/vendor/semantic/src/site/collections/message.overrides +3 -0
  674. package/styles/vendor/semantic/src/site/collections/message.variables +3 -0
  675. package/styles/vendor/semantic/src/site/collections/table.overrides +3 -0
  676. package/styles/vendor/semantic/src/site/collections/table.variables +3 -0
  677. package/styles/vendor/semantic/src/site/elements/button.overrides +110 -0
  678. package/styles/vendor/semantic/src/site/elements/button.variables +3 -0
  679. package/styles/vendor/semantic/src/site/elements/container.overrides +3 -0
  680. package/styles/vendor/semantic/src/site/elements/container.variables +3 -0
  681. package/styles/vendor/semantic/src/site/elements/divider.overrides +3 -0
  682. package/styles/vendor/semantic/src/site/elements/divider.variables +3 -0
  683. package/styles/vendor/semantic/src/site/elements/flag.overrides +3 -0
  684. package/styles/vendor/semantic/src/site/elements/flag.variables +3 -0
  685. package/styles/vendor/semantic/src/site/elements/header.overrides +3 -0
  686. package/styles/vendor/semantic/src/site/elements/header.variables +3 -0
  687. package/styles/vendor/semantic/src/site/elements/icon.overrides +3 -0
  688. package/styles/vendor/semantic/src/site/elements/icon.variables +3 -0
  689. package/styles/vendor/semantic/src/site/elements/image.overrides +3 -0
  690. package/styles/vendor/semantic/src/site/elements/image.variables +3 -0
  691. package/styles/vendor/semantic/src/site/elements/input.overrides +25 -0
  692. package/styles/vendor/semantic/src/site/elements/input.variables +3 -0
  693. package/styles/vendor/semantic/src/site/elements/label.overrides +18 -0
  694. package/styles/vendor/semantic/src/site/elements/label.variables +3 -0
  695. package/styles/vendor/semantic/src/site/elements/list.overrides +3 -0
  696. package/styles/vendor/semantic/src/site/elements/list.variables +3 -0
  697. package/styles/vendor/semantic/src/site/elements/loader.overrides +3 -0
  698. package/styles/vendor/semantic/src/site/elements/loader.variables +3 -0
  699. package/styles/vendor/semantic/src/site/elements/rail.overrides +3 -0
  700. package/styles/vendor/semantic/src/site/elements/rail.variables +3 -0
  701. package/styles/vendor/semantic/src/site/elements/reveal.overrides +3 -0
  702. package/styles/vendor/semantic/src/site/elements/reveal.variables +3 -0
  703. package/styles/vendor/semantic/src/site/elements/segment.overrides +3 -0
  704. package/styles/vendor/semantic/src/site/elements/segment.variables +3 -0
  705. package/styles/vendor/semantic/src/site/elements/step.overrides +3 -0
  706. package/styles/vendor/semantic/src/site/elements/step.variables +3 -0
  707. package/styles/vendor/semantic/src/site/globals/reset.overrides +3 -0
  708. package/styles/vendor/semantic/src/site/globals/reset.variables +3 -0
  709. package/styles/vendor/semantic/src/site/globals/site.overrides +3 -0
  710. package/styles/vendor/semantic/src/site/globals/site.variables +52 -0
  711. package/styles/vendor/semantic/src/site/modules/accordion.overrides +67 -0
  712. package/styles/vendor/semantic/src/site/modules/accordion.variables +3 -0
  713. package/styles/vendor/semantic/src/site/modules/chatroom.overrides +3 -0
  714. package/styles/vendor/semantic/src/site/modules/chatroom.variables +3 -0
  715. package/styles/vendor/semantic/src/site/modules/checkbox.overrides +3 -0
  716. package/styles/vendor/semantic/src/site/modules/checkbox.variables +3 -0
  717. package/styles/vendor/semantic/src/site/modules/dimmer.overrides +3 -0
  718. package/styles/vendor/semantic/src/site/modules/dimmer.variables +3 -0
  719. package/styles/vendor/semantic/src/site/modules/dropdown.overrides +80 -0
  720. package/styles/vendor/semantic/src/site/modules/dropdown.variables +3 -0
  721. package/styles/vendor/semantic/src/site/modules/embed.overrides +3 -0
  722. package/styles/vendor/semantic/src/site/modules/embed.variables +0 -0
  723. package/styles/vendor/semantic/src/site/modules/modal.overrides +13 -0
  724. package/styles/vendor/semantic/src/site/modules/modal.variables +3 -0
  725. package/styles/vendor/semantic/src/site/modules/nag.overrides +3 -0
  726. package/styles/vendor/semantic/src/site/modules/nag.variables +3 -0
  727. package/styles/vendor/semantic/src/site/modules/popup.overrides +3 -0
  728. package/styles/vendor/semantic/src/site/modules/popup.variables +3 -0
  729. package/styles/vendor/semantic/src/site/modules/progress.overrides +3 -0
  730. package/styles/vendor/semantic/src/site/modules/progress.variables +3 -0
  731. package/styles/vendor/semantic/src/site/modules/rating.overrides +3 -0
  732. package/styles/vendor/semantic/src/site/modules/rating.variables +3 -0
  733. package/styles/vendor/semantic/src/site/modules/search.overrides +3 -0
  734. package/styles/vendor/semantic/src/site/modules/search.variables +3 -0
  735. package/styles/vendor/semantic/src/site/modules/shape.overrides +3 -0
  736. package/styles/vendor/semantic/src/site/modules/shape.variables +3 -0
  737. package/styles/vendor/semantic/src/site/modules/sidebar.overrides +3 -0
  738. package/styles/vendor/semantic/src/site/modules/sidebar.variables +3 -0
  739. package/styles/vendor/semantic/src/site/modules/sticky.overrides +3 -0
  740. package/styles/vendor/semantic/src/site/modules/sticky.variables +3 -0
  741. package/styles/vendor/semantic/src/site/modules/tab.overrides +3 -0
  742. package/styles/vendor/semantic/src/site/modules/tab.variables +3 -0
  743. package/styles/vendor/semantic/src/site/modules/transition.overrides +3 -0
  744. package/styles/vendor/semantic/src/site/modules/transition.variables +3 -0
  745. package/styles/vendor/semantic/src/site/views/ad.overrides +3 -0
  746. package/styles/vendor/semantic/src/site/views/ad.variables +3 -0
  747. package/styles/vendor/semantic/src/site/views/card.overrides +3 -0
  748. package/styles/vendor/semantic/src/site/views/card.variables +3 -0
  749. package/styles/vendor/semantic/src/site/views/comment.overrides +3 -0
  750. package/styles/vendor/semantic/src/site/views/comment.variables +3 -0
  751. package/styles/vendor/semantic/src/site/views/feed.overrides +3 -0
  752. package/styles/vendor/semantic/src/site/views/feed.variables +3 -0
  753. package/styles/vendor/semantic/src/site/views/item.overrides +3 -0
  754. package/styles/vendor/semantic/src/site/views/item.variables +3 -0
  755. package/styles/vendor/semantic/src/site/views/statistic.overrides +3 -0
  756. package/styles/vendor/semantic/src/site/views/statistic.variables +3 -0
  757. package/styles/vendor/semantic/src/theme.config +92 -0
  758. package/styles/vendor/semantic/src/theme.less +61 -0
  759. package/styles/vendor/semantic/src/themes/amazon/elements/button.overrides +46 -0
  760. package/styles/vendor/semantic/src/themes/amazon/elements/button.variables +58 -0
  761. package/styles/vendor/semantic/src/themes/amazon/globals/site.variables +43 -0
  762. package/styles/vendor/semantic/src/themes/basic/assets/fonts/icons.eot +0 -0
  763. package/styles/vendor/semantic/src/themes/basic/assets/fonts/icons.svg +450 -0
  764. package/styles/vendor/semantic/src/themes/basic/assets/fonts/icons.ttf +0 -0
  765. package/styles/vendor/semantic/src/themes/basic/assets/fonts/icons.woff +0 -0
  766. package/styles/vendor/semantic/src/themes/basic/collections/table.overrides +4 -0
  767. package/styles/vendor/semantic/src/themes/basic/collections/table.variables +11 -0
  768. package/styles/vendor/semantic/src/themes/basic/elements/button.overrides +4 -0
  769. package/styles/vendor/semantic/src/themes/basic/elements/button.variables +44 -0
  770. package/styles/vendor/semantic/src/themes/basic/elements/icon.overrides +189 -0
  771. package/styles/vendor/semantic/src/themes/basic/elements/icon.variables +12 -0
  772. package/styles/vendor/semantic/src/themes/basic/elements/step.overrides +10 -0
  773. package/styles/vendor/semantic/src/themes/basic/elements/step.variables +18 -0
  774. package/styles/vendor/semantic/src/themes/basic/globals/reset.overrides +5 -0
  775. package/styles/vendor/semantic/src/themes/basic/globals/reset.variables +3 -0
  776. package/styles/vendor/semantic/src/themes/basic/modules/progress.overrides +3 -0
  777. package/styles/vendor/semantic/src/themes/basic/modules/progress.variables +15 -0
  778. package/styles/vendor/semantic/src/themes/basic/views/card.overrides +4 -0
  779. package/styles/vendor/semantic/src/themes/basic/views/card.variables +35 -0
  780. package/styles/vendor/semantic/src/themes/bookish/elements/header.overrides +15 -0
  781. package/styles/vendor/semantic/src/themes/bookish/elements/header.variables +37 -0
  782. package/styles/vendor/semantic/src/themes/bootstrap3/elements/button.overrides +0 -0
  783. package/styles/vendor/semantic/src/themes/bootstrap3/elements/button.variables +63 -0
  784. package/styles/vendor/semantic/src/themes/chubby/collections/form.overrides +16 -0
  785. package/styles/vendor/semantic/src/themes/chubby/collections/form.variables +9 -0
  786. package/styles/vendor/semantic/src/themes/chubby/collections/menu.overrides +0 -0
  787. package/styles/vendor/semantic/src/themes/chubby/collections/menu.variables +40 -0
  788. package/styles/vendor/semantic/src/themes/chubby/elements/button.overrides +21 -0
  789. package/styles/vendor/semantic/src/themes/chubby/elements/button.variables +57 -0
  790. package/styles/vendor/semantic/src/themes/chubby/elements/header.overrides +5 -0
  791. package/styles/vendor/semantic/src/themes/chubby/elements/header.variables +21 -0
  792. package/styles/vendor/semantic/src/themes/chubby/modules/accordion.overrides +7 -0
  793. package/styles/vendor/semantic/src/themes/chubby/modules/accordion.variables +15 -0
  794. package/styles/vendor/semantic/src/themes/chubby/views/comment.overrides +12 -0
  795. package/styles/vendor/semantic/src/themes/chubby/views/comment.variables +46 -0
  796. package/styles/vendor/semantic/src/themes/classic/collections/table.overrides +3 -0
  797. package/styles/vendor/semantic/src/themes/classic/collections/table.variables +14 -0
  798. package/styles/vendor/semantic/src/themes/classic/elements/button.overrides +3 -0
  799. package/styles/vendor/semantic/src/themes/classic/elements/button.variables +96 -0
  800. package/styles/vendor/semantic/src/themes/classic/elements/header.overrides +3 -0
  801. package/styles/vendor/semantic/src/themes/classic/elements/header.variables +12 -0
  802. package/styles/vendor/semantic/src/themes/classic/modules/progress.overrides +3 -0
  803. package/styles/vendor/semantic/src/themes/classic/modules/progress.variables +9 -0
  804. package/styles/vendor/semantic/src/themes/classic/views/card.overrides +98 -0
  805. package/styles/vendor/semantic/src/themes/classic/views/card.variables +22 -0
  806. package/styles/vendor/semantic/src/themes/colored/modules/checkbox.overrides +0 -0
  807. package/styles/vendor/semantic/src/themes/colored/modules/checkbox.variables +29 -0
  808. package/styles/vendor/semantic/src/themes/default/assets/fonts/icons.eot +0 -0
  809. package/styles/vendor/semantic/src/themes/default/assets/fonts/icons.svg +685 -0
  810. package/styles/vendor/semantic/src/themes/default/assets/fonts/icons.ttf +0 -0
  811. package/styles/vendor/semantic/src/themes/default/assets/fonts/icons.woff +0 -0
  812. package/styles/vendor/semantic/src/themes/default/assets/fonts/icons.woff2 +0 -0
  813. package/styles/vendor/semantic/src/themes/default/assets/images/flags.png +0 -0
  814. package/styles/vendor/semantic/src/themes/default/collections/breadcrumb.overrides +3 -0
  815. package/styles/vendor/semantic/src/themes/default/collections/breadcrumb.variables +33 -0
  816. package/styles/vendor/semantic/src/themes/default/collections/form.overrides +3 -0
  817. package/styles/vendor/semantic/src/themes/default/collections/form.variables +195 -0
  818. package/styles/vendor/semantic/src/themes/default/collections/grid.overrides +4 -0
  819. package/styles/vendor/semantic/src/themes/default/collections/grid.variables +103 -0
  820. package/styles/vendor/semantic/src/themes/default/collections/menu.overrides +3 -0
  821. package/styles/vendor/semantic/src/themes/default/collections/menu.variables +458 -0
  822. package/styles/vendor/semantic/src/themes/default/collections/message.overrides +3 -0
  823. package/styles/vendor/semantic/src/themes/default/collections/message.variables +158 -0
  824. package/styles/vendor/semantic/src/themes/default/collections/table.overrides +0 -0
  825. package/styles/vendor/semantic/src/themes/default/collections/table.variables +246 -0
  826. package/styles/vendor/semantic/src/themes/default/elements/button.overrides +3 -0
  827. package/styles/vendor/semantic/src/themes/default/elements/button.variables +358 -0
  828. package/styles/vendor/semantic/src/themes/default/elements/container.overrides +3 -0
  829. package/styles/vendor/semantic/src/themes/default/elements/container.variables +58 -0
  830. package/styles/vendor/semantic/src/themes/default/elements/divider.overrides +18 -0
  831. package/styles/vendor/semantic/src/themes/default/elements/divider.variables +53 -0
  832. package/styles/vendor/semantic/src/themes/default/elements/flag.overrides +986 -0
  833. package/styles/vendor/semantic/src/themes/default/elements/flag.variables +13 -0
  834. package/styles/vendor/semantic/src/themes/default/elements/header.overrides +4 -0
  835. package/styles/vendor/semantic/src/themes/default/elements/header.variables +151 -0
  836. package/styles/vendor/semantic/src/themes/default/elements/icon.overrides +941 -0
  837. package/styles/vendor/semantic/src/themes/default/elements/icon.variables +62 -0
  838. package/styles/vendor/semantic/src/themes/default/elements/image.overrides +3 -0
  839. package/styles/vendor/semantic/src/themes/default/elements/image.variables +44 -0
  840. package/styles/vendor/semantic/src/themes/default/elements/input.overrides +3 -0
  841. package/styles/vendor/semantic/src/themes/default/elements/input.variables +101 -0
  842. package/styles/vendor/semantic/src/themes/default/elements/label.overrides +3 -0
  843. package/styles/vendor/semantic/src/themes/default/elements/label.variables +254 -0
  844. package/styles/vendor/semantic/src/themes/default/elements/list.overrides +3 -0
  845. package/styles/vendor/semantic/src/themes/default/elements/list.variables +224 -0
  846. package/styles/vendor/semantic/src/themes/default/elements/loader.overrides +3 -0
  847. package/styles/vendor/semantic/src/themes/default/elements/loader.variables +72 -0
  848. package/styles/vendor/semantic/src/themes/default/elements/rail.overrides +3 -0
  849. package/styles/vendor/semantic/src/themes/default/elements/rail.variables +34 -0
  850. package/styles/vendor/semantic/src/themes/default/elements/reveal.overrides +3 -0
  851. package/styles/vendor/semantic/src/themes/default/elements/reveal.variables +17 -0
  852. package/styles/vendor/semantic/src/themes/default/elements/segment.overrides +3 -0
  853. package/styles/vendor/semantic/src/themes/default/elements/segment.variables +139 -0
  854. package/styles/vendor/semantic/src/themes/default/elements/step.overrides +16 -0
  855. package/styles/vendor/semantic/src/themes/default/elements/step.variables +130 -0
  856. package/styles/vendor/semantic/src/themes/default/globals/reset.overrides +429 -0
  857. package/styles/vendor/semantic/src/themes/default/globals/reset.variables +3 -0
  858. package/styles/vendor/semantic/src/themes/default/globals/site.overrides +3 -0
  859. package/styles/vendor/semantic/src/themes/default/globals/site.variables +936 -0
  860. package/styles/vendor/semantic/src/themes/default/modules/accordion.overrides +28 -0
  861. package/styles/vendor/semantic/src/themes/default/modules/accordion.variables +100 -0
  862. package/styles/vendor/semantic/src/themes/default/modules/chatroom.overrides +3 -0
  863. package/styles/vendor/semantic/src/themes/default/modules/chatroom.variables +3 -0
  864. package/styles/vendor/semantic/src/themes/default/modules/checkbox.overrides +36 -0
  865. package/styles/vendor/semantic/src/themes/default/modules/checkbox.variables +193 -0
  866. package/styles/vendor/semantic/src/themes/default/modules/dimmer.overrides +3 -0
  867. package/styles/vendor/semantic/src/themes/default/modules/dimmer.variables +61 -0
  868. package/styles/vendor/semantic/src/themes/default/modules/dropdown.overrides +62 -0
  869. package/styles/vendor/semantic/src/themes/default/modules/dropdown.variables +373 -0
  870. package/styles/vendor/semantic/src/themes/default/modules/embed.overrides +3 -0
  871. package/styles/vendor/semantic/src/themes/default/modules/embed.variables +53 -0
  872. package/styles/vendor/semantic/src/themes/default/modules/modal.overrides +3 -0
  873. package/styles/vendor/semantic/src/themes/default/modules/modal.variables +151 -0
  874. package/styles/vendor/semantic/src/themes/default/modules/nag.overrides +3 -0
  875. package/styles/vendor/semantic/src/themes/default/modules/nag.variables +74 -0
  876. package/styles/vendor/semantic/src/themes/default/modules/popup.overrides +3 -0
  877. package/styles/vendor/semantic/src/themes/default/modules/popup.variables +137 -0
  878. package/styles/vendor/semantic/src/themes/default/modules/progress.overrides +3 -0
  879. package/styles/vendor/semantic/src/themes/default/modules/progress.variables +113 -0
  880. package/styles/vendor/semantic/src/themes/default/modules/rating.overrides +68 -0
  881. package/styles/vendor/semantic/src/themes/default/modules/rating.variables +103 -0
  882. package/styles/vendor/semantic/src/themes/default/modules/search.overrides +3 -0
  883. package/styles/vendor/semantic/src/themes/default/modules/search.variables +158 -0
  884. package/styles/vendor/semantic/src/themes/default/modules/shape.overrides +3 -0
  885. package/styles/vendor/semantic/src/themes/default/modules/shape.variables +40 -0
  886. package/styles/vendor/semantic/src/themes/default/modules/sidebar.overrides +3 -0
  887. package/styles/vendor/semantic/src/themes/default/modules/sidebar.variables +45 -0
  888. package/styles/vendor/semantic/src/themes/default/modules/sticky.overrides +3 -0
  889. package/styles/vendor/semantic/src/themes/default/modules/sticky.variables +7 -0
  890. package/styles/vendor/semantic/src/themes/default/modules/tab.overrides +3 -0
  891. package/styles/vendor/semantic/src/themes/default/modules/tab.variables +11 -0
  892. package/styles/vendor/semantic/src/themes/default/modules/transition.overrides +910 -0
  893. package/styles/vendor/semantic/src/themes/default/modules/transition.variables +10 -0
  894. package/styles/vendor/semantic/src/themes/default/views/ad.overrides +3 -0
  895. package/styles/vendor/semantic/src/themes/default/views/ad.variables +13 -0
  896. package/styles/vendor/semantic/src/themes/default/views/card.overrides +3 -0
  897. package/styles/vendor/semantic/src/themes/default/views/card.variables +220 -0
  898. package/styles/vendor/semantic/src/themes/default/views/comment.overrides +3 -0
  899. package/styles/vendor/semantic/src/themes/default/views/comment.variables +104 -0
  900. package/styles/vendor/semantic/src/themes/default/views/feed.overrides +3 -0
  901. package/styles/vendor/semantic/src/themes/default/views/feed.variables +141 -0
  902. package/styles/vendor/semantic/src/themes/default/views/item.overrides +3 -0
  903. package/styles/vendor/semantic/src/themes/default/views/item.variables +154 -0
  904. package/styles/vendor/semantic/src/themes/default/views/statistic.overrides +3 -0
  905. package/styles/vendor/semantic/src/themes/default/views/statistic.variables +98 -0
  906. package/styles/vendor/semantic/src/themes/duo/elements/loader.overrides +3 -0
  907. package/styles/vendor/semantic/src/themes/duo/elements/loader.variables +6 -0
  908. package/styles/vendor/semantic/src/themes/fixed-width/collections/grid.overrides +3 -0
  909. package/styles/vendor/semantic/src/themes/fixed-width/collections/grid.variables +23 -0
  910. package/styles/vendor/semantic/src/themes/fixed-width/modules/modal.overrides +3 -0
  911. package/styles/vendor/semantic/src/themes/fixed-width/modules/modal.variables +37 -0
  912. package/styles/vendor/semantic/src/themes/flat/collections/form.overrides +28 -0
  913. package/styles/vendor/semantic/src/themes/flat/collections/form.variables +74 -0
  914. package/styles/vendor/semantic/src/themes/flat/globals/site.overrides +3 -0
  915. package/styles/vendor/semantic/src/themes/flat/globals/site.variables +107 -0
  916. package/styles/vendor/semantic/src/themes/github/assets/fonts/octicons-local.ttf +0 -0
  917. package/styles/vendor/semantic/src/themes/github/assets/fonts/octicons.svg +200 -0
  918. package/styles/vendor/semantic/src/themes/github/assets/fonts/octicons.ttf +0 -0
  919. package/styles/vendor/semantic/src/themes/github/assets/fonts/octicons.woff +0 -0
  920. package/styles/vendor/semantic/src/themes/github/collections/breadcrumb.variables +11 -0
  921. package/styles/vendor/semantic/src/themes/github/collections/form.overrides +16 -0
  922. package/styles/vendor/semantic/src/themes/github/collections/form.variables +40 -0
  923. package/styles/vendor/semantic/src/themes/github/collections/grid.variables +2 -0
  924. package/styles/vendor/semantic/src/themes/github/collections/menu.overrides +7 -0
  925. package/styles/vendor/semantic/src/themes/github/collections/menu.variables +61 -0
  926. package/styles/vendor/semantic/src/themes/github/collections/message.overrides +11 -0
  927. package/styles/vendor/semantic/src/themes/github/collections/message.variables +29 -0
  928. package/styles/vendor/semantic/src/themes/github/collections/table.variables +8 -0
  929. package/styles/vendor/semantic/src/themes/github/elements/button.overrides +4 -0
  930. package/styles/vendor/semantic/src/themes/github/elements/button.variables +77 -0
  931. package/styles/vendor/semantic/src/themes/github/elements/header.variables +9 -0
  932. package/styles/vendor/semantic/src/themes/github/elements/icon.overrides +208 -0
  933. package/styles/vendor/semantic/src/themes/github/elements/icon.variables +13 -0
  934. package/styles/vendor/semantic/src/themes/github/elements/image.variables +5 -0
  935. package/styles/vendor/semantic/src/themes/github/elements/input.overrides +32 -0
  936. package/styles/vendor/semantic/src/themes/github/elements/input.variables +16 -0
  937. package/styles/vendor/semantic/src/themes/github/elements/label.overrides +9 -0
  938. package/styles/vendor/semantic/src/themes/github/elements/label.variables +4 -0
  939. package/styles/vendor/semantic/src/themes/github/elements/segment.overrides +3 -0
  940. package/styles/vendor/semantic/src/themes/github/elements/segment.variables +40 -0
  941. package/styles/vendor/semantic/src/themes/github/elements/step.overrides +26 -0
  942. package/styles/vendor/semantic/src/themes/github/elements/step.variables +26 -0
  943. package/styles/vendor/semantic/src/themes/github/globals/site.variables +47 -0
  944. package/styles/vendor/semantic/src/themes/github/modules/dropdown.overrides +53 -0
  945. package/styles/vendor/semantic/src/themes/github/modules/dropdown.variables +35 -0
  946. package/styles/vendor/semantic/src/themes/github/modules/popup.variables +12 -0
  947. package/styles/vendor/semantic/src/themes/gmail/collections/message.overrides +0 -0
  948. package/styles/vendor/semantic/src/themes/gmail/collections/message.variables +15 -0
  949. package/styles/vendor/semantic/src/themes/instagram/views/card.overrides +12 -0
  950. package/styles/vendor/semantic/src/themes/instagram/views/card.variables +23 -0
  951. package/styles/vendor/semantic/src/themes/material/assets/fonts/icons.eot +0 -0
  952. package/styles/vendor/semantic/src/themes/material/assets/fonts/icons.svg +2373 -0
  953. package/styles/vendor/semantic/src/themes/material/assets/fonts/icons.ttf +0 -0
  954. package/styles/vendor/semantic/src/themes/material/assets/fonts/icons.woff +0 -0
  955. package/styles/vendor/semantic/src/themes/material/collections/menu.overrides +1 -0
  956. package/styles/vendor/semantic/src/themes/material/collections/menu.variables +10 -0
  957. package/styles/vendor/semantic/src/themes/material/elements/button.overrides +15 -0
  958. package/styles/vendor/semantic/src/themes/material/elements/button.variables +97 -0
  959. package/styles/vendor/semantic/src/themes/material/elements/header.overrides +15 -0
  960. package/styles/vendor/semantic/src/themes/material/elements/header.variables +21 -0
  961. package/styles/vendor/semantic/src/themes/material/elements/icon.overrides +934 -0
  962. package/styles/vendor/semantic/src/themes/material/elements/icon.variables +11 -0
  963. package/styles/vendor/semantic/src/themes/material/globals/site.overrides +0 -0
  964. package/styles/vendor/semantic/src/themes/material/globals/site.variables +128 -0
  965. package/styles/vendor/semantic/src/themes/material/modules/dropdown.overrides +5 -0
  966. package/styles/vendor/semantic/src/themes/material/modules/dropdown.variables +20 -0
  967. package/styles/vendor/semantic/src/themes/material/modules/modal.overrides +6 -0
  968. package/styles/vendor/semantic/src/themes/material/modules/modal.variables +15 -0
  969. package/styles/vendor/semantic/src/themes/pulsar/elements/loader.overrides +70 -0
  970. package/styles/vendor/semantic/src/themes/pulsar/elements/loader.variables +7 -0
  971. package/styles/vendor/semantic/src/themes/raised/elements/button.overrides +3 -0
  972. package/styles/vendor/semantic/src/themes/raised/elements/button.variables +27 -0
  973. package/styles/vendor/semantic/src/themes/resetcss/globals/reset.overrides +52 -0
  974. package/styles/vendor/semantic/src/themes/resetcss/globals/reset.variables +3 -0
  975. package/styles/vendor/semantic/src/themes/round/elements/button.overrides +0 -0
  976. package/styles/vendor/semantic/src/themes/round/elements/button.variables +138 -0
  977. package/styles/vendor/semantic/src/themes/rtl/globals/site.overrides +6 -0
  978. package/styles/vendor/semantic/src/themes/rtl/globals/site.variables +14 -0
  979. package/styles/vendor/semantic/src/themes/striped/modules/progress.overrides +29 -0
  980. package/styles/vendor/semantic/src/themes/striped/modules/progress.variables +3 -0
  981. package/styles/vendor/semantic/src/themes/timeline/views/feed.overrides +27 -0
  982. package/styles/vendor/semantic/src/themes/timeline/views/feed.variables +36 -0
  983. package/styles/vendor/semantic/src/themes/twitter/elements/button.overrides +13 -0
  984. package/styles/vendor/semantic/src/themes/twitter/elements/button.variables +44 -0
  985. package/styles/vendor/semantic/tasks/README.md +17 -0
  986. package/styles/vendor/semantic/tasks/admin/components/create.js +332 -0
  987. package/styles/vendor/semantic/tasks/admin/components/init.js +170 -0
  988. package/styles/vendor/semantic/tasks/admin/components/update.js +184 -0
  989. package/styles/vendor/semantic/tasks/admin/distributions/create.js +219 -0
  990. package/styles/vendor/semantic/tasks/admin/distributions/init.js +169 -0
  991. package/styles/vendor/semantic/tasks/admin/distributions/update.js +179 -0
  992. package/styles/vendor/semantic/tasks/admin/publish.js +25 -0
  993. package/styles/vendor/semantic/tasks/admin/register.js +55 -0
  994. package/styles/vendor/semantic/tasks/admin/release.js +29 -0
  995. package/styles/vendor/semantic/tasks/build/assets.js +35 -0
  996. package/styles/vendor/semantic/tasks/build/css.js +113 -0
  997. package/styles/vendor/semantic/tasks/build/javascript.js +77 -0
  998. package/styles/vendor/semantic/tasks/build.js +50 -0
  999. package/styles/vendor/semantic/tasks/check-install.js +28 -0
  1000. package/styles/vendor/semantic/tasks/clean.js +14 -0
  1001. package/styles/vendor/semantic/tasks/collections/README.md +16 -0
  1002. package/styles/vendor/semantic/tasks/collections/admin.js +49 -0
  1003. package/styles/vendor/semantic/tasks/collections/build.js +19 -0
  1004. package/styles/vendor/semantic/tasks/collections/internal.js +227 -0
  1005. package/styles/vendor/semantic/tasks/collections/rtl.js +16 -0
  1006. package/styles/vendor/semantic/tasks/config/admin/github.js +37 -0
  1007. package/styles/vendor/semantic/tasks/config/admin/oauth.example.js +11 -0
  1008. package/styles/vendor/semantic/tasks/config/admin/release.js +111 -0
  1009. package/styles/vendor/semantic/tasks/config/admin/templates/README.md +32 -0
  1010. package/styles/vendor/semantic/tasks/config/admin/templates/bower.json +29 -0
  1011. package/styles/vendor/semantic/tasks/config/admin/templates/component-package.js +14 -0
  1012. package/styles/vendor/semantic/tasks/config/admin/templates/composer.json +20 -0
  1013. package/styles/vendor/semantic/tasks/config/admin/templates/css-package.js +34 -0
  1014. package/styles/vendor/semantic/tasks/config/admin/templates/less-package.js +21 -0
  1015. package/styles/vendor/semantic/tasks/config/admin/templates/package.json +17 -0
  1016. package/styles/vendor/semantic/tasks/config/defaults.js +117 -0
  1017. package/styles/vendor/semantic/tasks/config/docs.js +32 -0
  1018. package/styles/vendor/semantic/tasks/config/npm/gulpfile.js +72 -0
  1019. package/styles/vendor/semantic/tasks/config/project/config.js +141 -0
  1020. package/styles/vendor/semantic/tasks/config/project/install.js +763 -0
  1021. package/styles/vendor/semantic/tasks/config/project/release.js +65 -0
  1022. package/styles/vendor/semantic/tasks/config/tasks.js +166 -0
  1023. package/styles/vendor/semantic/tasks/config/user.js +58 -0
  1024. package/styles/vendor/semantic/tasks/docs/build.js +189 -0
  1025. package/styles/vendor/semantic/tasks/docs/metadata.js +138 -0
  1026. package/styles/vendor/semantic/tasks/docs/serve.js +255 -0
  1027. package/styles/vendor/semantic/tasks/install.js +459 -0
  1028. package/styles/vendor/semantic/tasks/rtl/build.js +132 -0
  1029. package/styles/vendor/semantic/tasks/rtl/watch.js +221 -0
  1030. package/styles/vendor/semantic/tasks/version.js +11 -0
  1031. package/styles/vendor/semantic/tasks/watch.js +231 -0
  1032. package/tests/i18n.test.js +32 -0
  1033. package/tests/store.test.js +26 -0
  1034. package/translations/en.json +155 -0
  1035. package/translations/zh.json +155 -0
  1036. package/utils/ApiCaller.js +101 -0
  1037. package/utils/Formatter.js +77 -0
  1038. package/utils/asyncInjectors.js +78 -0
  1039. package/utils/authWrapper.js +38 -0
  1040. package/utils/common.js +23 -0
  1041. package/utils/jed.js +1497 -0
  1042. package/utils/messageUtils.js +11 -0
  1043. package/utils/smsCharCount.js +351 -0
  1044. package/utils/smscharcount.js +331 -0
  1045. package/utils/tests/asyncInjectors.test.js +173 -0
@@ -0,0 +1,1558 @@
1
+ /*!
2
+ * # Semantic UI - Form Validation
3
+ * http://github.com/semantic-org/semantic-ui/
4
+ *
5
+ *
6
+ * Released under the MIT license
7
+ * http://opensource.org/licenses/MIT
8
+ *
9
+ */
10
+
11
+ ;(function ($, window, document, undefined) {
12
+
13
+ "use strict";
14
+
15
+ window = (typeof window != 'undefined' && window.Math == Math)
16
+ ? window
17
+ : (typeof self != 'undefined' && self.Math == Math)
18
+ ? self
19
+ : Function('return this')()
20
+ ;
21
+
22
+ $.fn.form = function(parameters) {
23
+ var
24
+ $allModules = $(this),
25
+ moduleSelector = $allModules.selector || '',
26
+
27
+ time = new Date().getTime(),
28
+ performance = [],
29
+
30
+ query = arguments[0],
31
+ legacyParameters = arguments[1],
32
+ methodInvoked = (typeof query == 'string'),
33
+ queryArguments = [].slice.call(arguments, 1),
34
+ returnedValue
35
+ ;
36
+ $allModules
37
+ .each(function() {
38
+ var
39
+ $module = $(this),
40
+ element = this,
41
+
42
+ formErrors = [],
43
+ keyHeldDown = false,
44
+
45
+ // set at run-time
46
+ $field,
47
+ $group,
48
+ $message,
49
+ $prompt,
50
+ $submit,
51
+ $clear,
52
+ $reset,
53
+
54
+ settings,
55
+ validation,
56
+
57
+ metadata,
58
+ selector,
59
+ className,
60
+ error,
61
+
62
+ namespace,
63
+ moduleNamespace,
64
+ eventNamespace,
65
+
66
+ instance,
67
+ module
68
+ ;
69
+
70
+ module = {
71
+
72
+ initialize: function() {
73
+
74
+ // settings grabbed at run time
75
+ module.get.settings();
76
+ if(methodInvoked) {
77
+ if(instance === undefined) {
78
+ module.instantiate();
79
+ }
80
+ module.invoke(query);
81
+ }
82
+ else {
83
+ if(instance !== undefined) {
84
+ instance.invoke('destroy');
85
+ }
86
+ module.verbose('Initializing form validation', $module, settings);
87
+ module.bindEvents();
88
+ module.set.defaults();
89
+ module.instantiate();
90
+ }
91
+ },
92
+
93
+ instantiate: function() {
94
+ module.verbose('Storing instance of module', module);
95
+ instance = module;
96
+ $module
97
+ .data(moduleNamespace, module)
98
+ ;
99
+ },
100
+
101
+ destroy: function() {
102
+ module.verbose('Destroying previous module', instance);
103
+ module.removeEvents();
104
+ $module
105
+ .removeData(moduleNamespace)
106
+ ;
107
+ },
108
+
109
+ refresh: function() {
110
+ module.verbose('Refreshing selector cache');
111
+ $field = $module.find(selector.field);
112
+ $group = $module.find(selector.group);
113
+ $message = $module.find(selector.message);
114
+ $prompt = $module.find(selector.prompt);
115
+
116
+ $submit = $module.find(selector.submit);
117
+ $clear = $module.find(selector.clear);
118
+ $reset = $module.find(selector.reset);
119
+ },
120
+
121
+ submit: function() {
122
+ module.verbose('Submitting form', $module);
123
+ $module
124
+ .submit()
125
+ ;
126
+ },
127
+
128
+ attachEvents: function(selector, action) {
129
+ action = action || 'submit';
130
+ $(selector)
131
+ .on('click' + eventNamespace, function(event) {
132
+ module[action]();
133
+ event.preventDefault();
134
+ })
135
+ ;
136
+ },
137
+
138
+ bindEvents: function() {
139
+ module.verbose('Attaching form events');
140
+ $module
141
+ .on('submit' + eventNamespace, module.validate.form)
142
+ .on('blur' + eventNamespace, selector.field, module.event.field.blur)
143
+ .on('click' + eventNamespace, selector.submit, module.submit)
144
+ .on('click' + eventNamespace, selector.reset, module.reset)
145
+ .on('click' + eventNamespace, selector.clear, module.clear)
146
+ ;
147
+ if(settings.keyboardShortcuts) {
148
+ $module
149
+ .on('keydown' + eventNamespace, selector.field, module.event.field.keydown)
150
+ ;
151
+ }
152
+ $field
153
+ .each(function() {
154
+ var
155
+ $input = $(this),
156
+ type = $input.prop('type'),
157
+ inputEvent = module.get.changeEvent(type, $input)
158
+ ;
159
+ $(this)
160
+ .on(inputEvent + eventNamespace, module.event.field.change)
161
+ ;
162
+ })
163
+ ;
164
+ },
165
+
166
+ clear: function() {
167
+ $field
168
+ .each(function () {
169
+ var
170
+ $field = $(this),
171
+ $element = $field.parent(),
172
+ $fieldGroup = $field.closest($group),
173
+ $prompt = $fieldGroup.find(selector.prompt),
174
+ defaultValue = $field.data(metadata.defaultValue) || '',
175
+ isCheckbox = $element.is(selector.uiCheckbox),
176
+ isDropdown = $element.is(selector.uiDropdown),
177
+ isErrored = $fieldGroup.hasClass(className.error)
178
+ ;
179
+ if(isErrored) {
180
+ module.verbose('Resetting error on field', $fieldGroup);
181
+ $fieldGroup.removeClass(className.error);
182
+ $prompt.remove();
183
+ }
184
+ if(isDropdown) {
185
+ module.verbose('Resetting dropdown value', $element, defaultValue);
186
+ $element.dropdown('clear');
187
+ }
188
+ else if(isCheckbox) {
189
+ $field.prop('checked', false);
190
+ }
191
+ else {
192
+ module.verbose('Resetting field value', $field, defaultValue);
193
+ $field.val('');
194
+ }
195
+ })
196
+ ;
197
+ },
198
+
199
+ reset: function() {
200
+ $field
201
+ .each(function () {
202
+ var
203
+ $field = $(this),
204
+ $element = $field.parent(),
205
+ $fieldGroup = $field.closest($group),
206
+ $prompt = $fieldGroup.find(selector.prompt),
207
+ defaultValue = $field.data(metadata.defaultValue),
208
+ isCheckbox = $element.is(selector.uiCheckbox),
209
+ isDropdown = $element.is(selector.uiDropdown),
210
+ isErrored = $fieldGroup.hasClass(className.error)
211
+ ;
212
+ if(defaultValue === undefined) {
213
+ return;
214
+ }
215
+ if(isErrored) {
216
+ module.verbose('Resetting error on field', $fieldGroup);
217
+ $fieldGroup.removeClass(className.error);
218
+ $prompt.remove();
219
+ }
220
+ if(isDropdown) {
221
+ module.verbose('Resetting dropdown value', $element, defaultValue);
222
+ $element.dropdown('restore defaults');
223
+ }
224
+ else if(isCheckbox) {
225
+ module.verbose('Resetting checkbox value', $element, defaultValue);
226
+ $field.prop('checked', defaultValue);
227
+ }
228
+ else {
229
+ module.verbose('Resetting field value', $field, defaultValue);
230
+ $field.val(defaultValue);
231
+ }
232
+ })
233
+ ;
234
+ },
235
+
236
+ is: {
237
+ bracketedRule: function(rule) {
238
+ return (rule.type && rule.type.match(settings.regExp.bracket));
239
+ },
240
+ empty: function($field) {
241
+ if(!$field || $field.length === 0) {
242
+ return true;
243
+ }
244
+ else if($field.is('input[type="checkbox"]')) {
245
+ return !$field.is(':checked');
246
+ }
247
+ else {
248
+ return module.is.blank($field);
249
+ }
250
+ },
251
+ blank: function($field) {
252
+ return $.trim($field.val()) === '';
253
+ },
254
+ valid: function() {
255
+ var
256
+ allValid = true
257
+ ;
258
+ module.verbose('Checking if form is valid');
259
+ $.each(validation, function(fieldName, field) {
260
+ if( !( module.validate.field(field, fieldName) ) ) {
261
+ allValid = false;
262
+ }
263
+ });
264
+ return allValid;
265
+ }
266
+ },
267
+
268
+ removeEvents: function() {
269
+ $module
270
+ .off(eventNamespace)
271
+ ;
272
+ $field
273
+ .off(eventNamespace)
274
+ ;
275
+ $submit
276
+ .off(eventNamespace)
277
+ ;
278
+ $field
279
+ .off(eventNamespace)
280
+ ;
281
+ },
282
+
283
+ event: {
284
+ field: {
285
+ keydown: function(event) {
286
+ var
287
+ $field = $(this),
288
+ key = event.which,
289
+ isInput = $field.is(selector.input),
290
+ isCheckbox = $field.is(selector.checkbox),
291
+ isInDropdown = ($field.closest(selector.uiDropdown).length > 0),
292
+ keyCode = {
293
+ enter : 13,
294
+ escape : 27
295
+ }
296
+ ;
297
+ if( key == keyCode.escape) {
298
+ module.verbose('Escape key pressed blurring field');
299
+ $field
300
+ .blur()
301
+ ;
302
+ }
303
+ if(!event.ctrlKey && key == keyCode.enter && isInput && !isInDropdown && !isCheckbox) {
304
+ if(!keyHeldDown) {
305
+ $field
306
+ .one('keyup' + eventNamespace, module.event.field.keyup)
307
+ ;
308
+ module.submit();
309
+ module.debug('Enter pressed on input submitting form');
310
+ }
311
+ keyHeldDown = true;
312
+ }
313
+ },
314
+ keyup: function() {
315
+ keyHeldDown = false;
316
+ },
317
+ blur: function(event) {
318
+ var
319
+ $field = $(this),
320
+ $fieldGroup = $field.closest($group),
321
+ validationRules = module.get.validation($field)
322
+ ;
323
+ if( $fieldGroup.hasClass(className.error) ) {
324
+ module.debug('Revalidating field', $field, validationRules);
325
+ if(validationRules) {
326
+ module.validate.field( validationRules );
327
+ }
328
+ }
329
+ else if(settings.on == 'blur' || settings.on == 'change') {
330
+ if(validationRules) {
331
+ module.validate.field( validationRules );
332
+ }
333
+ }
334
+ },
335
+ change: function(event) {
336
+ var
337
+ $field = $(this),
338
+ $fieldGroup = $field.closest($group),
339
+ validationRules = module.get.validation($field)
340
+ ;
341
+ if(settings.on == 'change' || ( $fieldGroup.hasClass(className.error) && settings.revalidate) ) {
342
+ clearTimeout(module.timer);
343
+ module.timer = setTimeout(function() {
344
+ module.debug('Revalidating field', $field, module.get.validation($field));
345
+ module.validate.field( validationRules );
346
+ }, settings.delay);
347
+ }
348
+ }
349
+ }
350
+
351
+ },
352
+
353
+ get: {
354
+ ancillaryValue: function(rule) {
355
+ if(!rule.type || (!rule.value && !module.is.bracketedRule(rule))) {
356
+ return false;
357
+ }
358
+ return (rule.value !== undefined)
359
+ ? rule.value
360
+ : rule.type.match(settings.regExp.bracket)[1] + ''
361
+ ;
362
+ },
363
+ ruleName: function(rule) {
364
+ if( module.is.bracketedRule(rule) ) {
365
+ return rule.type.replace(rule.type.match(settings.regExp.bracket)[0], '');
366
+ }
367
+ return rule.type;
368
+ },
369
+ changeEvent: function(type, $input) {
370
+ if(type == 'checkbox' || type == 'radio' || type == 'hidden' || $input.is('select')) {
371
+ return 'change';
372
+ }
373
+ else {
374
+ return module.get.inputEvent();
375
+ }
376
+ },
377
+ inputEvent: function() {
378
+ return (document.createElement('input').oninput !== undefined)
379
+ ? 'input'
380
+ : (document.createElement('input').onpropertychange !== undefined)
381
+ ? 'propertychange'
382
+ : 'keyup'
383
+ ;
384
+ },
385
+ prompt: function(rule, field) {
386
+ var
387
+ ruleName = module.get.ruleName(rule),
388
+ ancillary = module.get.ancillaryValue(rule),
389
+ prompt = rule.prompt || settings.prompt[ruleName] || settings.text.unspecifiedRule,
390
+ requiresValue = (prompt.search('{value}') !== -1),
391
+ requiresName = (prompt.search('{name}') !== -1),
392
+ $label,
393
+ $field,
394
+ name
395
+ ;
396
+ if(requiresName || requiresValue) {
397
+ $field = module.get.field(field.identifier);
398
+ }
399
+ if(requiresValue) {
400
+ prompt = prompt.replace('{value}', $field.val());
401
+ }
402
+ if(requiresName) {
403
+ $label = $field.closest(selector.group).find('label').eq(0);
404
+ name = ($label.length == 1)
405
+ ? $label.text()
406
+ : $field.prop('placeholder') || settings.text.unspecifiedField
407
+ ;
408
+ prompt = prompt.replace('{name}', name);
409
+ }
410
+ prompt = prompt.replace('{identifier}', field.identifier);
411
+ prompt = prompt.replace('{ruleValue}', ancillary);
412
+ if(!rule.prompt) {
413
+ module.verbose('Using default validation prompt for type', prompt, ruleName);
414
+ }
415
+ return prompt;
416
+ },
417
+ settings: function() {
418
+ if($.isPlainObject(parameters)) {
419
+ var
420
+ keys = Object.keys(parameters),
421
+ isLegacySettings = (keys.length > 0)
422
+ ? (parameters[keys[0]].identifier !== undefined && parameters[keys[0]].rules !== undefined)
423
+ : false,
424
+ ruleKeys
425
+ ;
426
+ if(isLegacySettings) {
427
+ // 1.x (ducktyped)
428
+ settings = $.extend(true, {}, $.fn.form.settings, legacyParameters);
429
+ validation = $.extend({}, $.fn.form.settings.defaults, parameters);
430
+ module.error(settings.error.oldSyntax, element);
431
+ module.verbose('Extending settings from legacy parameters', validation, settings);
432
+ }
433
+ else {
434
+ // 2.x
435
+ if(parameters.fields) {
436
+ ruleKeys = Object.keys(parameters.fields);
437
+ if( typeof parameters.fields[ruleKeys[0]] == 'string' || $.isArray(parameters.fields[ruleKeys[0]]) ) {
438
+ $.each(parameters.fields, function(name, rules) {
439
+ if(typeof rules == 'string') {
440
+ rules = [rules];
441
+ }
442
+ parameters.fields[name] = {
443
+ rules: []
444
+ };
445
+ $.each(rules, function(index, rule) {
446
+ parameters.fields[name].rules.push({ type: rule });
447
+ });
448
+ });
449
+ }
450
+ }
451
+
452
+ settings = $.extend(true, {}, $.fn.form.settings, parameters);
453
+ validation = $.extend({}, $.fn.form.settings.defaults, settings.fields);
454
+ module.verbose('Extending settings', validation, settings);
455
+ }
456
+ }
457
+ else {
458
+ settings = $.fn.form.settings;
459
+ validation = $.fn.form.settings.defaults;
460
+ module.verbose('Using default form validation', validation, settings);
461
+ }
462
+
463
+ // shorthand
464
+ namespace = settings.namespace;
465
+ metadata = settings.metadata;
466
+ selector = settings.selector;
467
+ className = settings.className;
468
+ error = settings.error;
469
+ moduleNamespace = 'module-' + namespace;
470
+ eventNamespace = '.' + namespace;
471
+
472
+ // grab instance
473
+ instance = $module.data(moduleNamespace);
474
+
475
+ // refresh selector cache
476
+ module.refresh();
477
+ },
478
+ field: function(identifier) {
479
+ module.verbose('Finding field with identifier', identifier);
480
+ if( $field.filter('#' + identifier).length > 0 ) {
481
+ return $field.filter('#' + identifier);
482
+ }
483
+ else if( $field.filter('[name="' + identifier +'"]').length > 0 ) {
484
+ return $field.filter('[name="' + identifier +'"]');
485
+ }
486
+ else if( $field.filter('[name="' + identifier +'[]"]').length > 0 ) {
487
+ return $field.filter('[name="' + identifier +'[]"]');
488
+ }
489
+ else if( $field.filter('[data-' + metadata.validate + '="'+ identifier +'"]').length > 0 ) {
490
+ return $field.filter('[data-' + metadata.validate + '="'+ identifier +'"]');
491
+ }
492
+ return $('<input/>');
493
+ },
494
+ fields: function(fields) {
495
+ var
496
+ $fields = $()
497
+ ;
498
+ $.each(fields, function(index, name) {
499
+ $fields = $fields.add( module.get.field(name) );
500
+ });
501
+ return $fields;
502
+ },
503
+ validation: function($field) {
504
+ var
505
+ fieldValidation,
506
+ identifier
507
+ ;
508
+ if(!validation) {
509
+ return false;
510
+ }
511
+ $.each(validation, function(fieldName, field) {
512
+ identifier = field.identifier || fieldName;
513
+ if( module.get.field(identifier)[0] == $field[0] ) {
514
+ field.identifier = identifier;
515
+ fieldValidation = field;
516
+ }
517
+ });
518
+ return fieldValidation || false;
519
+ },
520
+ value: function (field) {
521
+ var
522
+ fields = [],
523
+ results
524
+ ;
525
+ fields.push(field);
526
+ results = module.get.values.call(element, fields);
527
+ return results[field];
528
+ },
529
+ values: function (fields) {
530
+ var
531
+ $fields = $.isArray(fields)
532
+ ? module.get.fields(fields)
533
+ : $field,
534
+ values = {}
535
+ ;
536
+ $fields.each(function(index, field) {
537
+ var
538
+ $field = $(field),
539
+ type = $field.prop('type'),
540
+ name = $field.prop('name'),
541
+ value = $field.val(),
542
+ isCheckbox = $field.is(selector.checkbox),
543
+ isRadio = $field.is(selector.radio),
544
+ isMultiple = (name.indexOf('[]') !== -1),
545
+ isChecked = (isCheckbox)
546
+ ? $field.is(':checked')
547
+ : false
548
+ ;
549
+ if(name) {
550
+ if(isMultiple) {
551
+ name = name.replace('[]', '');
552
+ if(!values[name]) {
553
+ values[name] = [];
554
+ }
555
+ if(isCheckbox) {
556
+ if(isChecked) {
557
+ values[name].push(value || true);
558
+ }
559
+ else {
560
+ values[name].push(false);
561
+ }
562
+ }
563
+ else {
564
+ values[name].push(value);
565
+ }
566
+ }
567
+ else {
568
+ if(isRadio) {
569
+ if(isChecked) {
570
+ values[name] = value;
571
+ }
572
+ }
573
+ else if(isCheckbox) {
574
+ if(isChecked) {
575
+ values[name] = value || true;
576
+ }
577
+ else {
578
+ values[name] = false;
579
+ }
580
+ }
581
+ else {
582
+ values[name] = value;
583
+ }
584
+ }
585
+ }
586
+ });
587
+ return values;
588
+ }
589
+ },
590
+
591
+ has: {
592
+
593
+ field: function(identifier) {
594
+ module.verbose('Checking for existence of a field with identifier', identifier);
595
+ if(typeof identifier !== 'string') {
596
+ module.error(error.identifier, identifier);
597
+ }
598
+ if( $field.filter('#' + identifier).length > 0 ) {
599
+ return true;
600
+ }
601
+ else if( $field.filter('[name="' + identifier +'"]').length > 0 ) {
602
+ return true;
603
+ }
604
+ else if( $field.filter('[data-' + metadata.validate + '="'+ identifier +'"]').length > 0 ) {
605
+ return true;
606
+ }
607
+ return false;
608
+ }
609
+
610
+ },
611
+
612
+ add: {
613
+ prompt: function(identifier, errors) {
614
+ var
615
+ $field = module.get.field(identifier),
616
+ $fieldGroup = $field.closest($group),
617
+ $prompt = $fieldGroup.children(selector.prompt),
618
+ promptExists = ($prompt.length !== 0)
619
+ ;
620
+ errors = (typeof errors == 'string')
621
+ ? [errors]
622
+ : errors
623
+ ;
624
+ module.verbose('Adding field error state', identifier);
625
+ $fieldGroup
626
+ .addClass(className.error)
627
+ ;
628
+ if(settings.inline) {
629
+ if(!promptExists) {
630
+ $prompt = settings.templates.prompt(errors);
631
+ $prompt
632
+ .appendTo($fieldGroup)
633
+ ;
634
+ }
635
+ $prompt
636
+ .html(errors[0])
637
+ ;
638
+ if(!promptExists) {
639
+ if(settings.transition && $.fn.transition !== undefined && $module.transition('is supported')) {
640
+ module.verbose('Displaying error with css transition', settings.transition);
641
+ $prompt.transition(settings.transition + ' in', settings.duration);
642
+ }
643
+ else {
644
+ module.verbose('Displaying error with fallback javascript animation');
645
+ $prompt
646
+ .fadeIn(settings.duration)
647
+ ;
648
+ }
649
+ }
650
+ else {
651
+ module.verbose('Inline errors are disabled, no inline error added', identifier);
652
+ }
653
+ }
654
+ },
655
+ errors: function(errors) {
656
+ module.debug('Adding form error messages', errors);
657
+ module.set.error();
658
+ $message
659
+ .html( settings.templates.error(errors) )
660
+ ;
661
+ }
662
+ },
663
+
664
+ remove: {
665
+ prompt: function(identifier) {
666
+ var
667
+ $field = module.get.field(identifier),
668
+ $fieldGroup = $field.closest($group),
669
+ $prompt = $fieldGroup.children(selector.prompt)
670
+ ;
671
+ $fieldGroup
672
+ .removeClass(className.error)
673
+ ;
674
+ if(settings.inline && $prompt.is(':visible')) {
675
+ module.verbose('Removing prompt for field', identifier);
676
+ if(settings.transition && $.fn.transition !== undefined && $module.transition('is supported')) {
677
+ $prompt.transition(settings.transition + ' out', settings.duration, function() {
678
+ $prompt.remove();
679
+ });
680
+ }
681
+ else {
682
+ $prompt
683
+ .fadeOut(settings.duration, function(){
684
+ $prompt.remove();
685
+ })
686
+ ;
687
+ }
688
+ }
689
+ }
690
+ },
691
+
692
+ set: {
693
+ success: function() {
694
+ $module
695
+ .removeClass(className.error)
696
+ .addClass(className.success)
697
+ ;
698
+ },
699
+ defaults: function () {
700
+ $field
701
+ .each(function () {
702
+ var
703
+ $field = $(this),
704
+ isCheckbox = ($field.filter(selector.checkbox).length > 0),
705
+ value = (isCheckbox)
706
+ ? $field.is(':checked')
707
+ : $field.val()
708
+ ;
709
+ $field.data(metadata.defaultValue, value);
710
+ })
711
+ ;
712
+ },
713
+ error: function() {
714
+ $module
715
+ .removeClass(className.success)
716
+ .addClass(className.error)
717
+ ;
718
+ },
719
+ value: function (field, value) {
720
+ var
721
+ fields = {}
722
+ ;
723
+ fields[field] = value;
724
+ return module.set.values.call(element, fields);
725
+ },
726
+ values: function (fields) {
727
+ if($.isEmptyObject(fields)) {
728
+ return;
729
+ }
730
+ $.each(fields, function(key, value) {
731
+ var
732
+ $field = module.get.field(key),
733
+ $element = $field.parent(),
734
+ isMultiple = $.isArray(value),
735
+ isCheckbox = $element.is(selector.uiCheckbox),
736
+ isDropdown = $element.is(selector.uiDropdown),
737
+ isRadio = ($field.is(selector.radio) && isCheckbox),
738
+ fieldExists = ($field.length > 0),
739
+ $multipleField
740
+ ;
741
+ if(fieldExists) {
742
+ if(isMultiple && isCheckbox) {
743
+ module.verbose('Selecting multiple', value, $field);
744
+ $element.checkbox('uncheck');
745
+ $.each(value, function(index, value) {
746
+ $multipleField = $field.filter('[value="' + value + '"]');
747
+ $element = $multipleField.parent();
748
+ if($multipleField.length > 0) {
749
+ $element.checkbox('check');
750
+ }
751
+ });
752
+ }
753
+ else if(isRadio) {
754
+ module.verbose('Selecting radio value', value, $field);
755
+ $field.filter('[value="' + value + '"]')
756
+ .parent(selector.uiCheckbox)
757
+ .checkbox('check')
758
+ ;
759
+ }
760
+ else if(isCheckbox) {
761
+ module.verbose('Setting checkbox value', value, $element);
762
+ if(value === true) {
763
+ $element.checkbox('check');
764
+ }
765
+ else {
766
+ $element.checkbox('uncheck');
767
+ }
768
+ }
769
+ else if(isDropdown) {
770
+ module.verbose('Setting dropdown value', value, $element);
771
+ $element.dropdown('set selected', value);
772
+ }
773
+ else {
774
+ module.verbose('Setting field value', value, $field);
775
+ $field.val(value);
776
+ }
777
+ }
778
+ });
779
+ }
780
+ },
781
+
782
+ validate: {
783
+
784
+ form: function(event, ignoreCallbacks) {
785
+ var
786
+ values = module.get.values(),
787
+ apiRequest
788
+ ;
789
+
790
+ // input keydown event will fire submit repeatedly by browser default
791
+ if(keyHeldDown) {
792
+ return false;
793
+ }
794
+
795
+ // reset errors
796
+ formErrors = [];
797
+ if( module.is.valid() ) {
798
+ module.debug('Form has no validation errors, submitting');
799
+ module.set.success();
800
+ if(ignoreCallbacks !== true) {
801
+ return settings.onSuccess.call(element, event, values);
802
+ }
803
+ }
804
+ else {
805
+ module.debug('Form has errors');
806
+ module.set.error();
807
+ if(!settings.inline) {
808
+ module.add.errors(formErrors);
809
+ }
810
+ // prevent ajax submit
811
+ if($module.data('moduleApi') !== undefined) {
812
+ event.stopImmediatePropagation();
813
+ }
814
+ if(ignoreCallbacks !== true) {
815
+ return settings.onFailure.call(element, formErrors, values);
816
+ }
817
+ }
818
+ },
819
+
820
+ // takes a validation object and returns whether field passes validation
821
+ field: function(field, fieldName) {
822
+ var
823
+ identifier = field.identifier || fieldName,
824
+ $field = module.get.field(identifier),
825
+ $dependsField = (field.depends)
826
+ ? module.get.field(field.depends)
827
+ : false,
828
+ fieldValid = true,
829
+ fieldErrors = []
830
+ ;
831
+ if(!field.identifier) {
832
+ module.debug('Using field name as identifier', identifier);
833
+ field.identifier = identifier;
834
+ }
835
+ if($field.prop('disabled')) {
836
+ module.debug('Field is disabled. Skipping', identifier);
837
+ fieldValid = true;
838
+ }
839
+ else if(field.optional && module.is.blank($field)){
840
+ module.debug('Field is optional and blank. Skipping', identifier);
841
+ fieldValid = true;
842
+ }
843
+ else if(field.depends && module.is.empty($dependsField)) {
844
+ module.debug('Field depends on another value that is not present or empty. Skipping', $dependsField);
845
+ fieldValid = true;
846
+ }
847
+ else if(field.rules !== undefined) {
848
+ $.each(field.rules, function(index, rule) {
849
+ if( module.has.field(identifier) && !( module.validate.rule(field, rule) ) ) {
850
+ module.debug('Field is invalid', identifier, rule.type);
851
+ fieldErrors.push(module.get.prompt(rule, field));
852
+ fieldValid = false;
853
+ }
854
+ });
855
+ }
856
+ if(fieldValid) {
857
+ module.remove.prompt(identifier, fieldErrors);
858
+ settings.onValid.call($field);
859
+ }
860
+ else {
861
+ formErrors = formErrors.concat(fieldErrors);
862
+ module.add.prompt(identifier, fieldErrors);
863
+ settings.onInvalid.call($field, fieldErrors);
864
+ return false;
865
+ }
866
+ return true;
867
+ },
868
+
869
+ // takes validation rule and returns whether field passes rule
870
+ rule: function(field, rule) {
871
+ var
872
+ $field = module.get.field(field.identifier),
873
+ type = rule.type,
874
+ value = $field.val(),
875
+ isValid = true,
876
+ ancillary = module.get.ancillaryValue(rule),
877
+ ruleName = module.get.ruleName(rule),
878
+ ruleFunction = settings.rules[ruleName]
879
+ ;
880
+ if( !$.isFunction(ruleFunction) ) {
881
+ module.error(error.noRule, ruleName);
882
+ return;
883
+ }
884
+ // cast to string avoiding encoding special values
885
+ value = (value === undefined || value === '' || value === null)
886
+ ? ''
887
+ : $.trim(value + '')
888
+ ;
889
+ return ruleFunction.call($field, value, ancillary);
890
+ }
891
+ },
892
+
893
+ setting: function(name, value) {
894
+ if( $.isPlainObject(name) ) {
895
+ $.extend(true, settings, name);
896
+ }
897
+ else if(value !== undefined) {
898
+ settings[name] = value;
899
+ }
900
+ else {
901
+ return settings[name];
902
+ }
903
+ },
904
+ internal: function(name, value) {
905
+ if( $.isPlainObject(name) ) {
906
+ $.extend(true, module, name);
907
+ }
908
+ else if(value !== undefined) {
909
+ module[name] = value;
910
+ }
911
+ else {
912
+ return module[name];
913
+ }
914
+ },
915
+ debug: function() {
916
+ if(!settings.silent && settings.debug) {
917
+ if(settings.performance) {
918
+ module.performance.log(arguments);
919
+ }
920
+ else {
921
+ module.debug = Function.prototype.bind.call(console.info, console, settings.name + ':');
922
+ module.debug.apply(console, arguments);
923
+ }
924
+ }
925
+ },
926
+ verbose: function() {
927
+ if(!settings.silent && settings.verbose && settings.debug) {
928
+ if(settings.performance) {
929
+ module.performance.log(arguments);
930
+ }
931
+ else {
932
+ module.verbose = Function.prototype.bind.call(console.info, console, settings.name + ':');
933
+ module.verbose.apply(console, arguments);
934
+ }
935
+ }
936
+ },
937
+ error: function() {
938
+ if(!settings.silent) {
939
+ module.error = Function.prototype.bind.call(console.error, console, settings.name + ':');
940
+ module.error.apply(console, arguments);
941
+ }
942
+ },
943
+ performance: {
944
+ log: function(message) {
945
+ var
946
+ currentTime,
947
+ executionTime,
948
+ previousTime
949
+ ;
950
+ if(settings.performance) {
951
+ currentTime = new Date().getTime();
952
+ previousTime = time || currentTime;
953
+ executionTime = currentTime - previousTime;
954
+ time = currentTime;
955
+ performance.push({
956
+ 'Name' : message[0],
957
+ 'Arguments' : [].slice.call(message, 1) || '',
958
+ 'Element' : element,
959
+ 'Execution Time' : executionTime
960
+ });
961
+ }
962
+ clearTimeout(module.performance.timer);
963
+ module.performance.timer = setTimeout(module.performance.display, 500);
964
+ },
965
+ display: function() {
966
+ var
967
+ title = settings.name + ':',
968
+ totalTime = 0
969
+ ;
970
+ time = false;
971
+ clearTimeout(module.performance.timer);
972
+ $.each(performance, function(index, data) {
973
+ totalTime += data['Execution Time'];
974
+ });
975
+ title += ' ' + totalTime + 'ms';
976
+ if(moduleSelector) {
977
+ title += ' \'' + moduleSelector + '\'';
978
+ }
979
+ if($allModules.length > 1) {
980
+ title += ' ' + '(' + $allModules.length + ')';
981
+ }
982
+ if( (console.group !== undefined || console.table !== undefined) && performance.length > 0) {
983
+ console.groupCollapsed(title);
984
+ if(console.table) {
985
+ console.table(performance);
986
+ }
987
+ else {
988
+ $.each(performance, function(index, data) {
989
+ console.log(data['Name'] + ': ' + data['Execution Time']+'ms');
990
+ });
991
+ }
992
+ console.groupEnd();
993
+ }
994
+ performance = [];
995
+ }
996
+ },
997
+ invoke: function(query, passedArguments, context) {
998
+ var
999
+ object = instance,
1000
+ maxDepth,
1001
+ found,
1002
+ response
1003
+ ;
1004
+ passedArguments = passedArguments || queryArguments;
1005
+ context = element || context;
1006
+ if(typeof query == 'string' && object !== undefined) {
1007
+ query = query.split(/[\. ]/);
1008
+ maxDepth = query.length - 1;
1009
+ $.each(query, function(depth, value) {
1010
+ var camelCaseValue = (depth != maxDepth)
1011
+ ? value + query[depth + 1].charAt(0).toUpperCase() + query[depth + 1].slice(1)
1012
+ : query
1013
+ ;
1014
+ if( $.isPlainObject( object[camelCaseValue] ) && (depth != maxDepth) ) {
1015
+ object = object[camelCaseValue];
1016
+ }
1017
+ else if( object[camelCaseValue] !== undefined ) {
1018
+ found = object[camelCaseValue];
1019
+ return false;
1020
+ }
1021
+ else if( $.isPlainObject( object[value] ) && (depth != maxDepth) ) {
1022
+ object = object[value];
1023
+ }
1024
+ else if( object[value] !== undefined ) {
1025
+ found = object[value];
1026
+ return false;
1027
+ }
1028
+ else {
1029
+ return false;
1030
+ }
1031
+ });
1032
+ }
1033
+ if( $.isFunction( found ) ) {
1034
+ response = found.apply(context, passedArguments);
1035
+ }
1036
+ else if(found !== undefined) {
1037
+ response = found;
1038
+ }
1039
+ if($.isArray(returnedValue)) {
1040
+ returnedValue.push(response);
1041
+ }
1042
+ else if(returnedValue !== undefined) {
1043
+ returnedValue = [returnedValue, response];
1044
+ }
1045
+ else if(response !== undefined) {
1046
+ returnedValue = response;
1047
+ }
1048
+ return found;
1049
+ }
1050
+ };
1051
+ module.initialize();
1052
+ })
1053
+ ;
1054
+
1055
+ return (returnedValue !== undefined)
1056
+ ? returnedValue
1057
+ : this
1058
+ ;
1059
+ };
1060
+
1061
+ $.fn.form.settings = {
1062
+
1063
+ name : 'Form',
1064
+ namespace : 'form',
1065
+
1066
+ debug : false,
1067
+ verbose : false,
1068
+ performance : true,
1069
+
1070
+ fields : false,
1071
+
1072
+ keyboardShortcuts : true,
1073
+ on : 'submit',
1074
+ inline : false,
1075
+
1076
+ delay : 200,
1077
+ revalidate : true,
1078
+
1079
+ transition : 'scale',
1080
+ duration : 200,
1081
+
1082
+ onValid : function() {},
1083
+ onInvalid : function() {},
1084
+ onSuccess : function() { return true; },
1085
+ onFailure : function() { return false; },
1086
+
1087
+ metadata : {
1088
+ defaultValue : 'default',
1089
+ validate : 'validate'
1090
+ },
1091
+
1092
+ regExp: {
1093
+ bracket : /\[(.*)\]/i,
1094
+ decimal : /^\d*(\.)\d+/,
1095
+ email : /^[a-z0-9!#$%&'*+\/=?^_`{|}~.-]+@[a-z0-9]([a-z0-9-]*[a-z0-9])?(\.[a-z0-9]([a-z0-9-]*[a-z0-9])?)*$/i,
1096
+ escape : /[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,
1097
+ flags : /^\/(.*)\/(.*)?/,
1098
+ integer : /^\-?\d+$/,
1099
+ number : /^\-?\d*(\.\d+)?$/,
1100
+ url : /(https?:\/\/(?:www\.|(?!www))[^\s\.]+\.[^\s]{2,}|www\.[^\s]+\.[^\s]{2,})/i
1101
+ },
1102
+
1103
+ text: {
1104
+ unspecifiedRule : 'Please enter a valid value',
1105
+ unspecifiedField : 'This field'
1106
+ },
1107
+
1108
+ prompt: {
1109
+ empty : '{name} must have a value',
1110
+ checked : '{name} must be checked',
1111
+ email : '{name} must be a valid e-mail',
1112
+ url : '{name} must be a valid url',
1113
+ regExp : '{name} is not formatted correctly',
1114
+ integer : '{name} must be an integer',
1115
+ decimal : '{name} must be a decimal number',
1116
+ number : '{name} must be set to a number',
1117
+ is : '{name} must be "{ruleValue}"',
1118
+ isExactly : '{name} must be exactly "{ruleValue}"',
1119
+ not : '{name} cannot be set to "{ruleValue}"',
1120
+ notExactly : '{name} cannot be set to exactly "{ruleValue}"',
1121
+ contain : '{name} cannot contain "{ruleValue}"',
1122
+ containExactly : '{name} cannot contain exactly "{ruleValue}"',
1123
+ doesntContain : '{name} must contain "{ruleValue}"',
1124
+ doesntContainExactly : '{name} must contain exactly "{ruleValue}"',
1125
+ minLength : '{name} must be at least {ruleValue} characters',
1126
+ length : '{name} must be at least {ruleValue} characters',
1127
+ exactLength : '{name} must be exactly {ruleValue} characters',
1128
+ maxLength : '{name} cannot be longer than {ruleValue} characters',
1129
+ match : '{name} must match {ruleValue} field',
1130
+ different : '{name} must have a different value than {ruleValue} field',
1131
+ creditCard : '{name} must be a valid credit card number',
1132
+ minCount : '{name} must have at least {ruleValue} choices',
1133
+ exactCount : '{name} must have exactly {ruleValue} choices',
1134
+ maxCount : '{name} must have {ruleValue} or less choices'
1135
+ },
1136
+
1137
+ selector : {
1138
+ checkbox : 'input[type="checkbox"], input[type="radio"]',
1139
+ clear : '.clear',
1140
+ field : 'input, textarea, select',
1141
+ group : '.field',
1142
+ input : 'input',
1143
+ message : '.error.message',
1144
+ prompt : '.prompt.label',
1145
+ radio : 'input[type="radio"]',
1146
+ reset : '.reset:not([type="reset"])',
1147
+ submit : '.submit:not([type="submit"])',
1148
+ uiCheckbox : '.ui.checkbox',
1149
+ uiDropdown : '.ui.dropdown'
1150
+ },
1151
+
1152
+ className : {
1153
+ error : 'error',
1154
+ label : 'ui prompt label',
1155
+ pressed : 'down',
1156
+ success : 'success'
1157
+ },
1158
+
1159
+ error: {
1160
+ identifier : 'You must specify a string identifier for each field',
1161
+ method : 'The method you called is not defined.',
1162
+ noRule : 'There is no rule matching the one you specified',
1163
+ oldSyntax : 'Starting in 2.0 forms now only take a single settings object. Validation settings converted to new syntax automatically.'
1164
+ },
1165
+
1166
+ templates: {
1167
+
1168
+ // template that produces error message
1169
+ error: function(errors) {
1170
+ var
1171
+ html = '<ul class="list">'
1172
+ ;
1173
+ $.each(errors, function(index, value) {
1174
+ html += '<li>' + value + '</li>';
1175
+ });
1176
+ html += '</ul>';
1177
+ return $(html);
1178
+ },
1179
+
1180
+ // template that produces label
1181
+ prompt: function(errors) {
1182
+ return $('<div/>')
1183
+ .addClass('ui basic red pointing prompt label')
1184
+ .html(errors[0])
1185
+ ;
1186
+ }
1187
+ },
1188
+
1189
+ rules: {
1190
+
1191
+ // is not empty or blank string
1192
+ empty: function(value) {
1193
+ return !(value === undefined || '' === value || $.isArray(value) && value.length === 0);
1194
+ },
1195
+
1196
+ // checkbox checked
1197
+ checked: function() {
1198
+ return ($(this).filter(':checked').length > 0);
1199
+ },
1200
+
1201
+ // is most likely an email
1202
+ email: function(value){
1203
+ return $.fn.form.settings.regExp.email.test(value);
1204
+ },
1205
+
1206
+ // value is most likely url
1207
+ url: function(value) {
1208
+ return $.fn.form.settings.regExp.url.test(value);
1209
+ },
1210
+
1211
+ // matches specified regExp
1212
+ regExp: function(value, regExp) {
1213
+ if(regExp instanceof RegExp) {
1214
+ return value.match(regExp);
1215
+ }
1216
+ var
1217
+ regExpParts = regExp.match($.fn.form.settings.regExp.flags),
1218
+ flags
1219
+ ;
1220
+ // regular expression specified as /baz/gi (flags)
1221
+ if(regExpParts) {
1222
+ regExp = (regExpParts.length >= 2)
1223
+ ? regExpParts[1]
1224
+ : regExp
1225
+ ;
1226
+ flags = (regExpParts.length >= 3)
1227
+ ? regExpParts[2]
1228
+ : ''
1229
+ ;
1230
+ }
1231
+ return value.match( new RegExp(regExp, flags) );
1232
+ },
1233
+
1234
+ // is valid integer or matches range
1235
+ integer: function(value, range) {
1236
+ var
1237
+ intRegExp = $.fn.form.settings.regExp.integer,
1238
+ min,
1239
+ max,
1240
+ parts
1241
+ ;
1242
+ if( !range || ['', '..'].indexOf(range) !== -1) {
1243
+ // do nothing
1244
+ }
1245
+ else if(range.indexOf('..') == -1) {
1246
+ if(intRegExp.test(range)) {
1247
+ min = max = range - 0;
1248
+ }
1249
+ }
1250
+ else {
1251
+ parts = range.split('..', 2);
1252
+ if(intRegExp.test(parts[0])) {
1253
+ min = parts[0] - 0;
1254
+ }
1255
+ if(intRegExp.test(parts[1])) {
1256
+ max = parts[1] - 0;
1257
+ }
1258
+ }
1259
+ return (
1260
+ intRegExp.test(value) &&
1261
+ (min === undefined || value >= min) &&
1262
+ (max === undefined || value <= max)
1263
+ );
1264
+ },
1265
+
1266
+ // is valid number (with decimal)
1267
+ decimal: function(value) {
1268
+ return $.fn.form.settings.regExp.decimal.test(value);
1269
+ },
1270
+
1271
+ // is valid number
1272
+ number: function(value) {
1273
+ return $.fn.form.settings.regExp.number.test(value);
1274
+ },
1275
+
1276
+ // is value (case insensitive)
1277
+ is: function(value, text) {
1278
+ text = (typeof text == 'string')
1279
+ ? text.toLowerCase()
1280
+ : text
1281
+ ;
1282
+ value = (typeof value == 'string')
1283
+ ? value.toLowerCase()
1284
+ : value
1285
+ ;
1286
+ return (value == text);
1287
+ },
1288
+
1289
+ // is value
1290
+ isExactly: function(value, text) {
1291
+ return (value == text);
1292
+ },
1293
+
1294
+ // value is not another value (case insensitive)
1295
+ not: function(value, notValue) {
1296
+ value = (typeof value == 'string')
1297
+ ? value.toLowerCase()
1298
+ : value
1299
+ ;
1300
+ notValue = (typeof notValue == 'string')
1301
+ ? notValue.toLowerCase()
1302
+ : notValue
1303
+ ;
1304
+ return (value != notValue);
1305
+ },
1306
+
1307
+ // value is not another value (case sensitive)
1308
+ notExactly: function(value, notValue) {
1309
+ return (value != notValue);
1310
+ },
1311
+
1312
+ // value contains text (insensitive)
1313
+ contains: function(value, text) {
1314
+ // escape regex characters
1315
+ text = text.replace($.fn.form.settings.regExp.escape, "\\$&");
1316
+ return (value.search( new RegExp(text, 'i') ) !== -1);
1317
+ },
1318
+
1319
+ // value contains text (case sensitive)
1320
+ containsExactly: function(value, text) {
1321
+ // escape regex characters
1322
+ text = text.replace($.fn.form.settings.regExp.escape, "\\$&");
1323
+ return (value.search( new RegExp(text) ) !== -1);
1324
+ },
1325
+
1326
+ // value contains text (insensitive)
1327
+ doesntContain: function(value, text) {
1328
+ // escape regex characters
1329
+ text = text.replace($.fn.form.settings.regExp.escape, "\\$&");
1330
+ return (value.search( new RegExp(text, 'i') ) === -1);
1331
+ },
1332
+
1333
+ // value contains text (case sensitive)
1334
+ doesntContainExactly: function(value, text) {
1335
+ // escape regex characters
1336
+ text = text.replace($.fn.form.settings.regExp.escape, "\\$&");
1337
+ return (value.search( new RegExp(text) ) === -1);
1338
+ },
1339
+
1340
+ // is at least string length
1341
+ minLength: function(value, requiredLength) {
1342
+ return (value !== undefined)
1343
+ ? (value.length >= requiredLength)
1344
+ : false
1345
+ ;
1346
+ },
1347
+
1348
+ // see rls notes for 2.0.6 (this is a duplicate of minLength)
1349
+ length: function(value, requiredLength) {
1350
+ return (value !== undefined)
1351
+ ? (value.length >= requiredLength)
1352
+ : false
1353
+ ;
1354
+ },
1355
+
1356
+ // is exactly length
1357
+ exactLength: function(value, requiredLength) {
1358
+ return (value !== undefined)
1359
+ ? (value.length == requiredLength)
1360
+ : false
1361
+ ;
1362
+ },
1363
+
1364
+ // is less than length
1365
+ maxLength: function(value, maxLength) {
1366
+ return (value !== undefined)
1367
+ ? (value.length <= maxLength)
1368
+ : false
1369
+ ;
1370
+ },
1371
+
1372
+ // matches another field
1373
+ match: function(value, identifier) {
1374
+ var
1375
+ $form = $(this),
1376
+ matchingValue
1377
+ ;
1378
+ if( $('[data-validate="'+ identifier +'"]').length > 0 ) {
1379
+ matchingValue = $('[data-validate="'+ identifier +'"]').val();
1380
+ }
1381
+ else if($('#' + identifier).length > 0) {
1382
+ matchingValue = $('#' + identifier).val();
1383
+ }
1384
+ else if($('[name="' + identifier +'"]').length > 0) {
1385
+ matchingValue = $('[name="' + identifier + '"]').val();
1386
+ }
1387
+ else if( $('[name="' + identifier +'[]"]').length > 0 ) {
1388
+ matchingValue = $('[name="' + identifier +'[]"]');
1389
+ }
1390
+ return (matchingValue !== undefined)
1391
+ ? ( value.toString() == matchingValue.toString() )
1392
+ : false
1393
+ ;
1394
+ },
1395
+
1396
+ // different than another field
1397
+ different: function(value, identifier) {
1398
+ // use either id or name of field
1399
+ var
1400
+ $form = $(this),
1401
+ matchingValue
1402
+ ;
1403
+ if( $('[data-validate="'+ identifier +'"]').length > 0 ) {
1404
+ matchingValue = $('[data-validate="'+ identifier +'"]').val();
1405
+ }
1406
+ else if($('#' + identifier).length > 0) {
1407
+ matchingValue = $('#' + identifier).val();
1408
+ }
1409
+ else if($('[name="' + identifier +'"]').length > 0) {
1410
+ matchingValue = $('[name="' + identifier + '"]').val();
1411
+ }
1412
+ else if( $('[name="' + identifier +'[]"]').length > 0 ) {
1413
+ matchingValue = $('[name="' + identifier +'[]"]');
1414
+ }
1415
+ return (matchingValue !== undefined)
1416
+ ? ( value.toString() !== matchingValue.toString() )
1417
+ : false
1418
+ ;
1419
+ },
1420
+
1421
+ creditCard: function(cardNumber, cardTypes) {
1422
+ var
1423
+ cards = {
1424
+ visa: {
1425
+ pattern : /^4/,
1426
+ length : [16]
1427
+ },
1428
+ amex: {
1429
+ pattern : /^3[47]/,
1430
+ length : [15]
1431
+ },
1432
+ mastercard: {
1433
+ pattern : /^5[1-5]/,
1434
+ length : [16]
1435
+ },
1436
+ discover: {
1437
+ pattern : /^(6011|622(12[6-9]|1[3-9][0-9]|[2-8][0-9]{2}|9[0-1][0-9]|92[0-5]|64[4-9])|65)/,
1438
+ length : [16]
1439
+ },
1440
+ unionPay: {
1441
+ pattern : /^(62|88)/,
1442
+ length : [16, 17, 18, 19]
1443
+ },
1444
+ jcb: {
1445
+ pattern : /^35(2[89]|[3-8][0-9])/,
1446
+ length : [16]
1447
+ },
1448
+ maestro: {
1449
+ pattern : /^(5018|5020|5038|6304|6759|676[1-3])/,
1450
+ length : [12, 13, 14, 15, 16, 17, 18, 19]
1451
+ },
1452
+ dinersClub: {
1453
+ pattern : /^(30[0-5]|^36)/,
1454
+ length : [14]
1455
+ },
1456
+ laser: {
1457
+ pattern : /^(6304|670[69]|6771)/,
1458
+ length : [16, 17, 18, 19]
1459
+ },
1460
+ visaElectron: {
1461
+ pattern : /^(4026|417500|4508|4844|491(3|7))/,
1462
+ length : [16]
1463
+ }
1464
+ },
1465
+ valid = {},
1466
+ validCard = false,
1467
+ requiredTypes = (typeof cardTypes == 'string')
1468
+ ? cardTypes.split(',')
1469
+ : false,
1470
+ unionPay,
1471
+ validation
1472
+ ;
1473
+
1474
+ if(typeof cardNumber !== 'string' || cardNumber.length === 0) {
1475
+ return;
1476
+ }
1477
+
1478
+ // verify card types
1479
+ if(requiredTypes) {
1480
+ $.each(requiredTypes, function(index, type){
1481
+ // verify each card type
1482
+ validation = cards[type];
1483
+ if(validation) {
1484
+ valid = {
1485
+ length : ($.inArray(cardNumber.length, validation.length) !== -1),
1486
+ pattern : (cardNumber.search(validation.pattern) !== -1)
1487
+ };
1488
+ if(valid.length && valid.pattern) {
1489
+ validCard = true;
1490
+ }
1491
+ }
1492
+ });
1493
+
1494
+ if(!validCard) {
1495
+ return false;
1496
+ }
1497
+ }
1498
+
1499
+ // skip luhn for UnionPay
1500
+ unionPay = {
1501
+ number : ($.inArray(cardNumber.length, cards.unionPay.length) !== -1),
1502
+ pattern : (cardNumber.search(cards.unionPay.pattern) !== -1)
1503
+ };
1504
+ if(unionPay.number && unionPay.pattern) {
1505
+ return true;
1506
+ }
1507
+
1508
+ // verify luhn, adapted from <https://gist.github.com/2134376>
1509
+ var
1510
+ length = cardNumber.length,
1511
+ multiple = 0,
1512
+ producedValue = [
1513
+ [0, 1, 2, 3, 4, 5, 6, 7, 8, 9],
1514
+ [0, 2, 4, 6, 8, 1, 3, 5, 7, 9]
1515
+ ],
1516
+ sum = 0
1517
+ ;
1518
+ while (length--) {
1519
+ sum += producedValue[multiple][parseInt(cardNumber.charAt(length), 10)];
1520
+ multiple ^= 1;
1521
+ }
1522
+ return (sum % 10 === 0 && sum > 0);
1523
+ },
1524
+
1525
+ minCount: function(value, minCount) {
1526
+ if(minCount == 0) {
1527
+ return true;
1528
+ }
1529
+ if(minCount == 1) {
1530
+ return (value !== '');
1531
+ }
1532
+ return (value.split(',').length >= minCount);
1533
+ },
1534
+
1535
+ exactCount: function(value, exactCount) {
1536
+ if(exactCount == 0) {
1537
+ return (value === '');
1538
+ }
1539
+ if(exactCount == 1) {
1540
+ return (value !== '' && value.search(',') === -1);
1541
+ }
1542
+ return (value.split(',').length == exactCount);
1543
+ },
1544
+
1545
+ maxCount: function(value, maxCount) {
1546
+ if(maxCount == 0) {
1547
+ return false;
1548
+ }
1549
+ if(maxCount == 1) {
1550
+ return (value.search(',') === -1);
1551
+ }
1552
+ return (value.split(',').length <= maxCount);
1553
+ }
1554
+ }
1555
+
1556
+ };
1557
+
1558
+ })( jQuery, window, document );