@pocketprep/ui-kit 2.0.40 → 3.0.0

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 (305) hide show
  1. package/{.eslintrc.js → .eslintrc.cjs} +16 -17
  2. package/dist/@pocketprep/ui-kit.js +18856 -0
  3. package/dist/@pocketprep/ui-kit.js.map +1 -0
  4. package/dist/@pocketprep/ui-kit.umd.cjs +28 -0
  5. package/dist/@pocketprep/ui-kit.umd.cjs.map +1 -0
  6. package/dist/style.css +1 -0
  7. package/lib/SVGDefinitions.vue +85 -0
  8. package/lib/assets/emojis/tada.png +0 -0
  9. package/lib/assets/halftones/halftone-black.png +0 -0
  10. package/lib/assets/halftones/halftone-blue.png +0 -0
  11. package/lib/assets/halftones/halftone-green.png +0 -0
  12. package/lib/assets/halftones/halftone-purple.png +0 -0
  13. package/lib/assets/halftones/halftone-red.png +0 -0
  14. package/lib/assets/halftones/halftone-yellow.png +0 -0
  15. package/lib/assets/question/paywall-dark.png +0 -0
  16. package/lib/assets/question/paywall-light.png +0 -0
  17. package/lib/components/Banners/Banner.md +41 -0
  18. package/lib/components/Banners/Banner.vue +87 -0
  19. package/lib/components/BundleIcons/AMTA.vue +134 -0
  20. package/lib/components/BundleIcons/BundleIcon.md +60 -0
  21. package/lib/components/BundleIcons/BundleIcon.vue +111 -0
  22. package/lib/components/Bundles/BundleList.md +63 -0
  23. package/lib/components/Bundles/BundleList.vue +170 -0
  24. package/lib/components/Bundles/BundleSearch.md +195 -0
  25. package/lib/components/Bundles/BundleSearch.vue +573 -0
  26. package/lib/components/Bundles/PremiumPill.md +23 -0
  27. package/lib/components/Bundles/PremiumPill.vue +43 -0
  28. package/lib/components/Buttons/Button.md +99 -0
  29. package/lib/components/Buttons/Button.vue +496 -0
  30. package/lib/components/Buttons/Link.md +58 -0
  31. package/lib/components/Buttons/Link.vue +192 -0
  32. package/lib/components/Buttons/Tab.md +35 -0
  33. package/lib/components/Buttons/Tab.vue +103 -0
  34. package/lib/components/Calendar/Calendar.md +18 -0
  35. package/lib/components/Calendar/Calendar.vue +162 -0
  36. package/lib/components/Charts/Bar.md +123 -0
  37. package/lib/components/Charts/Bar.vue +364 -0
  38. package/lib/components/Charts/Pie.md +23 -0
  39. package/lib/components/Charts/Pie.vue +105 -0
  40. package/lib/components/Controls/SegmentControl.md +47 -0
  41. package/lib/components/Controls/SegmentControl.vue +117 -0
  42. package/lib/components/Controls/Slider.md +67 -0
  43. package/lib/components/Controls/Slider.vue +358 -0
  44. package/lib/components/Controls/ToggleSwitch.md +56 -0
  45. package/lib/components/Controls/ToggleSwitch.vue +160 -0
  46. package/lib/components/Exams/ExamCard.md +45 -0
  47. package/lib/components/Exams/ExamCard.vue +257 -0
  48. package/lib/components/Exams/ExamMenuCard.md +90 -0
  49. package/lib/components/Exams/ExamMenuCard.vue +218 -0
  50. package/lib/components/Filters/FilterDropdown.md +59 -0
  51. package/lib/components/Filters/FilterDropdown.vue +176 -0
  52. package/lib/components/Filters/FilterOptions.md +65 -0
  53. package/lib/components/Filters/FilterOptions.vue +265 -0
  54. package/lib/components/Filters/filterOptions.d.ts +10 -0
  55. package/lib/components/Forms/Checkbox.md +52 -0
  56. package/lib/components/Forms/Checkbox.vue +184 -0
  57. package/lib/components/Forms/CheckboxOption.md +37 -0
  58. package/lib/components/Forms/CheckboxOption.vue +173 -0
  59. package/lib/components/Forms/Errors.md +23 -0
  60. package/lib/components/Forms/Errors.vue +109 -0
  61. package/lib/components/Forms/Input.md +63 -0
  62. package/lib/components/Forms/Input.vue +310 -0
  63. package/lib/components/Forms/Radio.md +66 -0
  64. package/lib/components/Forms/Radio.vue +312 -0
  65. package/lib/components/Forms/Select.md +133 -0
  66. package/lib/components/Forms/Select.vue +670 -0
  67. package/lib/components/Forms/Textarea.md +57 -0
  68. package/lib/components/Forms/Textarea.vue +157 -0
  69. package/lib/components/Icons/Icon.md +146 -0
  70. package/lib/components/Icons/Icon.vue +192 -0
  71. package/lib/components/Icons/IconAccordionArrow.md +7 -0
  72. package/lib/components/Icons/IconAccordionArrow.vue +23 -0
  73. package/lib/components/Icons/IconActivity.md +7 -0
  74. package/lib/components/Icons/IconActivity.vue +21 -0
  75. package/lib/components/Icons/IconAdd.md +7 -0
  76. package/lib/components/Icons/IconAdd.vue +19 -0
  77. package/lib/components/Icons/IconAddCircle.md +7 -0
  78. package/lib/components/Icons/IconAddCircle.vue +22 -0
  79. package/lib/components/Icons/IconArrow.md +7 -0
  80. package/lib/components/Icons/IconArrow.vue +21 -0
  81. package/lib/components/Icons/IconBarChart.md +7 -0
  82. package/lib/components/Icons/IconBarChart.vue +23 -0
  83. package/lib/components/Icons/IconCalendar.md +7 -0
  84. package/lib/components/Icons/IconCalendar.vue +19 -0
  85. package/lib/components/Icons/IconCheck.md +7 -0
  86. package/lib/components/Icons/IconCheck.vue +21 -0
  87. package/lib/components/Icons/IconClose.md +7 -0
  88. package/lib/components/Icons/IconClose.vue +23 -0
  89. package/lib/components/Icons/IconCorrect.md +7 -0
  90. package/lib/components/Icons/IconCorrect.vue +19 -0
  91. package/lib/components/Icons/IconEdit.md +7 -0
  92. package/lib/components/Icons/IconEdit.vue +21 -0
  93. package/lib/components/Icons/IconExam.md +7 -0
  94. package/lib/components/Icons/IconExam.vue +34 -0
  95. package/lib/components/Icons/IconExternalLink.md +7 -0
  96. package/lib/components/Icons/IconExternalLink.vue +30 -0
  97. package/lib/components/Icons/IconEyeHide.md +7 -0
  98. package/lib/components/Icons/IconEyeHide.vue +21 -0
  99. package/lib/components/Icons/IconEyeShow.md +7 -0
  100. package/lib/components/Icons/IconEyeShow.vue +21 -0
  101. package/lib/components/Icons/IconFilter.md +7 -0
  102. package/lib/components/Icons/IconFilter.vue +19 -0
  103. package/lib/components/Icons/IconFilterActive.md +7 -0
  104. package/lib/components/Icons/IconFilterActive.vue +20 -0
  105. package/lib/components/Icons/IconFlag.md +7 -0
  106. package/lib/components/Icons/IconFlag.vue +25 -0
  107. package/lib/components/Icons/IconFlagFeedback.md +11 -0
  108. package/lib/components/Icons/IconFlagFeedback.vue +24 -0
  109. package/lib/components/Icons/IconFlagFilled.md +7 -0
  110. package/lib/components/Icons/IconFlagFilled.vue +22 -0
  111. package/lib/components/Icons/IconFullView.md +7 -0
  112. package/lib/components/Icons/IconFullView.vue +30 -0
  113. package/lib/components/Icons/IconFullViewActive.md +7 -0
  114. package/lib/components/Icons/IconFullViewActive.vue +28 -0
  115. package/lib/components/Icons/IconHandle.md +7 -0
  116. package/lib/components/Icons/IconHandle.vue +23 -0
  117. package/lib/components/Icons/IconHeart.md +7 -0
  118. package/lib/components/Icons/IconHeart.vue +19 -0
  119. package/lib/components/Icons/IconHelp.md +7 -0
  120. package/lib/components/Icons/IconHelp.vue +25 -0
  121. package/lib/components/Icons/IconHourglass.md +7 -0
  122. package/lib/components/Icons/IconHourglass.vue +22 -0
  123. package/lib/components/Icons/IconImage.md +7 -0
  124. package/lib/components/Icons/IconImage.vue +21 -0
  125. package/lib/components/Icons/IconIncorrect.md +7 -0
  126. package/lib/components/Icons/IconIncorrect.vue +21 -0
  127. package/lib/components/Icons/IconInfo.md +7 -0
  128. package/lib/components/Icons/IconInfo.vue +24 -0
  129. package/lib/components/Icons/IconKeyboard.md +7 -0
  130. package/lib/components/Icons/IconKeyboard.vue +25 -0
  131. package/lib/components/Icons/IconLaunch.md +7 -0
  132. package/lib/components/Icons/IconLaunch.vue +25 -0
  133. package/lib/components/Icons/IconLightning.md +7 -0
  134. package/lib/components/Icons/IconLightning.vue +21 -0
  135. package/lib/components/Icons/IconList.md +7 -0
  136. package/lib/components/Icons/IconList.vue +26 -0
  137. package/lib/components/Icons/IconLoading.md +7 -0
  138. package/lib/components/Icons/IconLoading.vue +65 -0
  139. package/lib/components/Icons/IconLoading2.md +7 -0
  140. package/lib/components/Icons/IconLoading2.vue +52 -0
  141. package/lib/components/Icons/IconLock.md +7 -0
  142. package/lib/components/Icons/IconLock.vue +23 -0
  143. package/lib/components/Icons/IconMissedQuestions.md +7 -0
  144. package/lib/components/Icons/IconMissedQuestions.vue +22 -0
  145. package/lib/components/Icons/IconMoon.md +7 -0
  146. package/lib/components/Icons/IconMoon.vue +25 -0
  147. package/lib/components/Icons/IconPaginationArrow.md +7 -0
  148. package/lib/components/Icons/IconPaginationArrow.vue +23 -0
  149. package/lib/components/Icons/IconPassage.md +7 -0
  150. package/lib/components/Icons/IconPassage.vue +22 -0
  151. package/lib/components/Icons/IconPencil.md +7 -0
  152. package/lib/components/Icons/IconPencil.vue +19 -0
  153. package/lib/components/Icons/IconPeople.md +7 -0
  154. package/lib/components/Icons/IconPeople.vue +25 -0
  155. package/lib/components/Icons/IconQuestions.md +7 -0
  156. package/lib/components/Icons/IconQuestions.vue +25 -0
  157. package/lib/components/Icons/IconQuick10.md +7 -0
  158. package/lib/components/Icons/IconQuick10.vue +23 -0
  159. package/lib/components/Icons/IconRemoveCircle.md +7 -0
  160. package/lib/components/Icons/IconRemoveCircle.vue +22 -0
  161. package/lib/components/Icons/IconReviewFlag.md +7 -0
  162. package/lib/components/Icons/IconReviewFlag.vue +32 -0
  163. package/lib/components/Icons/IconSearch.md +7 -0
  164. package/lib/components/Icons/IconSearch.vue +23 -0
  165. package/lib/components/Icons/IconShare.md +7 -0
  166. package/lib/components/Icons/IconShare.vue +31 -0
  167. package/lib/components/Icons/IconSideBar.md +7 -0
  168. package/lib/components/Icons/IconSideBar.vue +26 -0
  169. package/lib/components/Icons/IconSideBarActive.md +7 -0
  170. package/lib/components/Icons/IconSideBarActive.vue +28 -0
  171. package/lib/components/Icons/IconStopwatch.md +7 -0
  172. package/lib/components/Icons/IconStopwatch.vue +22 -0
  173. package/lib/components/Icons/IconStrike.md +60 -0
  174. package/lib/components/Icons/IconStrike.vue +23 -0
  175. package/lib/components/Icons/IconSubject.md +7 -0
  176. package/lib/components/Icons/IconSubject.vue +22 -0
  177. package/lib/components/Icons/IconText.md +7 -0
  178. package/lib/components/Icons/IconText.vue +22 -0
  179. package/lib/components/Icons/IconWarning.md +7 -0
  180. package/lib/components/Icons/IconWarning.vue +22 -0
  181. package/lib/components/Modal/Modal.md +31 -0
  182. package/lib/components/Modal/Modal.vue +133 -0
  183. package/lib/components/Modal/ModalContainer.md +96 -0
  184. package/lib/components/Modal/ModalContainer.vue +208 -0
  185. package/lib/components/Onboarding/EmailAuth.md +40 -0
  186. package/lib/components/Onboarding/EmailAuth.vue +218 -0
  187. package/lib/components/Onboarding/MagicCodeEntry.md +20 -0
  188. package/lib/components/Onboarding/MagicCodeEntry.vue +189 -0
  189. package/lib/components/PhonePerson/PhonePerson.md +36 -0
  190. package/lib/components/PhonePerson/PhonePerson.vue +48 -0
  191. package/lib/components/PhonePerson/phoneperson-IT@2x.png +0 -0
  192. package/lib/components/PhonePerson/phoneperson-auto@2x.png +0 -0
  193. package/lib/components/PhonePerson/phoneperson-behavioralhealth@2x.png +0 -0
  194. package/lib/components/PhonePerson/phoneperson-emt@2x.png +0 -0
  195. package/lib/components/PhonePerson/phoneperson-essentials@2x.png +0 -0
  196. package/lib/components/PhonePerson/phoneperson-finance@2x.png +0 -0
  197. package/lib/components/PhonePerson/phoneperson-fitness@2x.png +0 -0
  198. package/lib/components/PhonePerson/phoneperson-medical@2x.png +0 -0
  199. package/lib/components/PhonePerson/phoneperson-nursing@2x.png +0 -0
  200. package/lib/components/PhonePerson/phoneperson-nursingschool@2x.png +0 -0
  201. package/lib/components/PhonePerson/phoneperson-professional@2x.png +0 -0
  202. package/lib/components/PhonePerson/phoneperson-skilledtrades@2x.png +0 -0
  203. package/lib/components/Quiz/FlagToggle.md +37 -0
  204. package/lib/components/Quiz/FlagToggle.vue +124 -0
  205. package/lib/components/Quiz/GlobalMetricsToggle.md +46 -0
  206. package/lib/components/Quiz/GlobalMetricsToggle.vue +124 -0
  207. package/lib/components/Quiz/KeyboardShortcutsButton.md +18 -0
  208. package/lib/components/Quiz/KeyboardShortcutsButton.vue +102 -0
  209. package/lib/components/Quiz/KeyboardShortcutsModal.md +71 -0
  210. package/lib/components/Quiz/KeyboardShortcutsModal.vue +261 -0
  211. package/lib/components/Quiz/Question.md +579 -0
  212. package/lib/components/Quiz/Question.vue +3262 -0
  213. package/lib/components/Quiz/QuizContainer.md +91 -0
  214. package/lib/components/Quiz/QuizContainer.vue +207 -0
  215. package/lib/components/Quiz/QuizProgress.md +122 -0
  216. package/lib/components/Quiz/QuizProgress.vue +188 -0
  217. package/lib/components/Quiz/QuizProgressBar.md +131 -0
  218. package/lib/components/Quiz/QuizProgressBar.vue +96 -0
  219. package/lib/components/Search/Pill.md +37 -0
  220. package/lib/components/Search/Pill.vue +117 -0
  221. package/lib/components/Search/Search.md +44 -0
  222. package/lib/components/Search/Search.vue +341 -0
  223. package/lib/components/SidePanels/SidePanel.md +126 -0
  224. package/lib/components/SidePanels/SidePanel.vue +592 -0
  225. package/lib/components/Tables/StudyTable.md +136 -0
  226. package/lib/components/Tables/Table.vue +497 -0
  227. package/lib/components/Tables/TableActions.vue +199 -0
  228. package/lib/components/Tables/TablePagination.md +19 -0
  229. package/lib/components/Tables/TablePagination.vue +109 -0
  230. package/lib/components/Tables/TeachTable.md +696 -0
  231. package/lib/components/Toasts/Toast.md +35 -0
  232. package/lib/components/Toasts/Toast.vue +213 -0
  233. package/lib/components/Tooltips/OverflowTooltip.md +14 -0
  234. package/lib/components/Tooltips/OverflowTooltip.vue +68 -0
  235. package/lib/components/Tooltips/Tooltip.md +72 -0
  236. package/lib/components/Tooltips/Tooltip.vue +143 -0
  237. package/lib/directives.ts +213 -0
  238. package/lib/index.ts +108 -0
  239. package/{pocketprep-export.module.scss → lib/pocketprep-export.module.scss} +2 -2
  240. package/{pocketprep.scss → lib/pocketprep.scss} +16 -18
  241. package/{styles → lib/styles}/_colors.scss +1 -1
  242. package/lib/styles/fonts.css +149 -0
  243. package/lib/utils.ts +53 -0
  244. package/package.json +75 -56
  245. package/{stylelint.config.js → stylelint.config.cjs} +6 -3
  246. package/assets/Fonts.md +0 -114
  247. package/assets/Images.md +0 -2
  248. package/assets/Styleguidist.vue +0 -11
  249. package/dist/@pocketprep/ui-kit.common.js +0 -29726
  250. package/dist/@pocketprep/ui-kit.common.js.map +0 -1
  251. package/dist/@pocketprep/ui-kit.umd.js +0 -29745
  252. package/dist/@pocketprep/ui-kit.umd.js.map +0 -1
  253. package/dist/@pocketprep/ui-kit.umd.min.js +0 -33
  254. package/dist/@pocketprep/ui-kit.umd.min.js.map +0 -1
  255. package/dist/demo.html +0 -1
  256. package/index.d.ts +0 -63
  257. package/src/directives.d.ts +0 -2
  258. package/src/shims.d.ts +0 -19
  259. package/src/utils.d.ts +0 -51
  260. package/styles/Colors.md +0 -53
  261. package/styles/Styles.md +0 -4
  262. package/styles/_fonts.scss +0 -149
  263. package/tests/shims-test.d.ts +0 -9
  264. /package/{assets → lib/assets}/fonts/muli/muli-400.eot +0 -0
  265. /package/{assets → lib/assets}/fonts/muli/muli-400.svg +0 -0
  266. /package/{assets → lib/assets}/fonts/muli/muli-400.ttf +0 -0
  267. /package/{assets → lib/assets}/fonts/muli/muli-400.woff +0 -0
  268. /package/{assets → lib/assets}/fonts/muli/muli-400.woff2 +0 -0
  269. /package/{assets → lib/assets}/fonts/muli/muli-400italic.eot +0 -0
  270. /package/{assets → lib/assets}/fonts/muli/muli-400italic.svg +0 -0
  271. /package/{assets → lib/assets}/fonts/muli/muli-400italic.ttf +0 -0
  272. /package/{assets → lib/assets}/fonts/muli/muli-400italic.woff +0 -0
  273. /package/{assets → lib/assets}/fonts/muli/muli-400italic.woff2 +0 -0
  274. /package/{assets → lib/assets}/fonts/muli/muli-600.eot +0 -0
  275. /package/{assets → lib/assets}/fonts/muli/muli-600.svg +0 -0
  276. /package/{assets → lib/assets}/fonts/muli/muli-600.ttf +0 -0
  277. /package/{assets → lib/assets}/fonts/muli/muli-600.woff +0 -0
  278. /package/{assets → lib/assets}/fonts/muli/muli-600.woff2 +0 -0
  279. /package/{assets → lib/assets}/fonts/muli/muli-600italic.eot +0 -0
  280. /package/{assets → lib/assets}/fonts/muli/muli-600italic.svg +0 -0
  281. /package/{assets → lib/assets}/fonts/muli/muli-600italic.ttf +0 -0
  282. /package/{assets → lib/assets}/fonts/muli/muli-600italic.woff +0 -0
  283. /package/{assets → lib/assets}/fonts/muli/muli-600italic.woff2 +0 -0
  284. /package/{assets → lib/assets}/fonts/muli/muli-700.eot +0 -0
  285. /package/{assets → lib/assets}/fonts/muli/muli-700.svg +0 -0
  286. /package/{assets → lib/assets}/fonts/muli/muli-700.ttf +0 -0
  287. /package/{assets → lib/assets}/fonts/muli/muli-700.woff +0 -0
  288. /package/{assets → lib/assets}/fonts/muli/muli-700.woff2 +0 -0
  289. /package/{assets → lib/assets}/fonts/muli/muli-700italic.eot +0 -0
  290. /package/{assets → lib/assets}/fonts/muli/muli-700italic.svg +0 -0
  291. /package/{assets → lib/assets}/fonts/muli/muli-700italic.ttf +0 -0
  292. /package/{assets → lib/assets}/fonts/muli/muli-700italic.woff +0 -0
  293. /package/{assets → lib/assets}/fonts/muli/muli-700italic.woff2 +0 -0
  294. /package/{assets → lib/assets}/images/amta.svg +0 -0
  295. /package/{assets → lib/assets}/images/favicon.ico +0 -0
  296. /package/{assets → lib/assets}/images/thumb-large-dark.svg +0 -0
  297. /package/{assets → lib/assets}/images/thumb-large.svg +0 -0
  298. /package/{assets → lib/assets}/images/thumb-small-dark.svg +0 -0
  299. /package/{assets → lib/assets}/images/thumb-small.svg +0 -0
  300. /package/{src → lib}/components/BundleIcons/bundleIcon.d.ts +0 -0
  301. /package/{src → lib}/components/Icons/icon.d.ts +0 -0
  302. /package/{src → lib}/components/PhonePerson/phonePerson.d.ts +0 -0
  303. /package/{src → lib}/components/Tables/table.d.ts +0 -0
  304. /package/{styles → lib/styles}/_breakpoints.scss +0 -0
  305. /package/{styles/_normalize.scss → lib/styles/normalize.css} +0 -0
@@ -0,0 +1,57 @@
1
+ ```vue
2
+ <template>
3
+ <div>
4
+ <Button @click="isDarkMode = !isDarkMode">{{ isDarkMode ? 'Disable' : 'Enable' }} Dark Mode</Button>
5
+ <div class="textareas" :class="{ dark: isDarkMode }">
6
+ <Textarea
7
+ label="Standard Textarea Field"
8
+ placeholder="Transfiguration Year Ones"
9
+ v-model="textareaVal1"
10
+ :isDarkMode="isDarkMode"
11
+ />
12
+ <Textarea
13
+ label="Disabled Textarea Field"
14
+ placeholder="Transfiguration Year Ones"
15
+ :disabled="true"
16
+ v-model="textareaVal2"
17
+ :isDarkMode="isDarkMode"
18
+ />
19
+ </div>
20
+ </div>
21
+ </template>
22
+
23
+ <script>
24
+ import Button from '../Buttons/Button.vue'
25
+
26
+ export default {
27
+ components: {
28
+ Button
29
+ },
30
+ data() {
31
+ return {
32
+ textareaVal1: null,
33
+ textareaVal2: null,
34
+ isDarkMode: false,
35
+ }
36
+ }
37
+ }
38
+ </script>
39
+
40
+ <style>
41
+ .uikit-btn {
42
+ margin-bottom: 30px;
43
+ }
44
+
45
+ .textareas {
46
+ padding: 30px;
47
+ }
48
+
49
+ .dark {
50
+ background-color: #1f3545;
51
+ }
52
+
53
+ .uikit-textarea:first-child {
54
+ margin-bottom: 10px;
55
+ }
56
+ </style>
57
+ ```
@@ -0,0 +1,157 @@
1
+ <template>
2
+ <div
3
+ class="uikit-textarea"
4
+ @mouseover="hover = true"
5
+ @mouseout="hover = false"
6
+ >
7
+ <label
8
+ v-if="label"
9
+ v-dark="isDarkMode"
10
+ class="uikit-textarea__label"
11
+ :class="{
12
+ 'uikit-textarea__label--hover': hover,
13
+ 'uikit-textarea__label--focus': focus
14
+ }"
15
+ >{{ label }}</label>
16
+ <textarea
17
+ v-dark="isDarkMode"
18
+ :value="modelValue"
19
+ :disabled="disabled"
20
+ :placeholder="placeholder"
21
+ :autofocus="autoFocus"
22
+ :style="{ height }"
23
+ class="uikit-textarea__textarea"
24
+ :class="{
25
+ 'uikit-textarea__textarea--hover': hover,
26
+ 'uikit-textarea__textarea--focus': focus
27
+ }"
28
+ @input="valueChange"
29
+ @focus="focus = true"
30
+ @blur="focus = false"
31
+ />
32
+ </div>
33
+ </template>
34
+
35
+ <script lang="ts">
36
+ import { Component, Vue, Prop, Emit } from 'vue-facing-decorator'
37
+ import { dark } from '../../directives'
38
+
39
+ @Component({
40
+ directives: {
41
+ dark,
42
+ },
43
+ })
44
+ export default class Textarea extends Vue {
45
+ @Prop() label?: string
46
+ @Prop() placeholder?: string
47
+ @Prop() center?: boolean
48
+ @Prop() modelValue!: string
49
+ @Prop() disabled?: boolean
50
+ @Prop() autoFocus?: boolean
51
+ @Prop({ default: '150px' }) height?: string
52
+ @Prop({ default: false }) isDarkMode!: boolean
53
+
54
+ hover = false
55
+ focus = false
56
+
57
+ @Emit('update:modelValue')
58
+ valueChange ($event: Event) {
59
+ return ($event.target as HTMLInputElement).value
60
+ }
61
+ }
62
+ </script>
63
+
64
+ <style lang="scss">
65
+ @import '../../styles/colors';
66
+ @import '../../styles/breakpoints';
67
+
68
+ .uikit-textarea {
69
+ &__label {
70
+ font-size: 13px;
71
+ line-height: 14px;
72
+ margin: 0 0 6px 11px;
73
+ color: $slate-01;
74
+ display: block;
75
+
76
+ &--dark {
77
+ color: $fog;
78
+ }
79
+
80
+ &--hover {
81
+ color: $slate-03;
82
+
83
+ &--dark {
84
+ color: $fog;
85
+ }
86
+ }
87
+
88
+ &--focus {
89
+ color: $brand-blue;
90
+
91
+ &--dark {
92
+ color: $banana-bread;
93
+ }
94
+ }
95
+
96
+ &--error {
97
+ color: $red-pegasus;
98
+ }
99
+ }
100
+
101
+ &__textarea {
102
+ background-color: $white;
103
+ border: 1px solid rgba($pewter, 0.85);
104
+ color: $brand-black;
105
+ border-radius: 3px;
106
+ caret-color: $brand-blue;
107
+ padding: 7px 8px;
108
+ font-size: 16px;
109
+ line-height: 21px;
110
+ width: 100%;
111
+ box-sizing: border-box;
112
+ outline: none;
113
+
114
+ &::placeholder {
115
+ color: $pewter;
116
+ }
117
+
118
+ &:disabled {
119
+ background: $gray-background;
120
+ border: 1px solid $gray-background;
121
+ color: $slate-03;
122
+
123
+ &:placeholder {
124
+ color: $slate-03;
125
+ }
126
+ }
127
+
128
+ &--dark {
129
+ background-color: $moonlit-ocean;
130
+ border-color: $pewter;
131
+ color: $white;
132
+ caret-color: $banana-bread;
133
+
134
+ &:disabled {
135
+ border-color: $moonlit-ocean;
136
+ background-color: $moonlit-ocean;
137
+ }
138
+ }
139
+
140
+ &--hover {
141
+ border: 1px solid $baby-blue;
142
+
143
+ &--dark {
144
+ border: 0.5px solid $banana-bread;
145
+ }
146
+ }
147
+
148
+ &--focus {
149
+ border: 1px solid $brand-blue;
150
+
151
+ &--dark {
152
+ border-color: $banana-bread;
153
+ }
154
+ }
155
+ }
156
+ }
157
+ </style>
@@ -0,0 +1,146 @@
1
+ ```vue
2
+ <template>
3
+ <div>
4
+ <Button @click="toggleBackground">Toggle Background</Button>
5
+ <Button @click="toggleBorders">{{ showBorders ? 'Hide' : 'Show' }} Borders</Button>
6
+ <div class="icons__color">
7
+ <label>
8
+ Icon Color
9
+ </label>
10
+ <input type="color" v-model="iconColor">
11
+ </div>
12
+ <div
13
+ class="icons"
14
+ :class="{
15
+ 'icons--dark': isDark,
16
+ 'icons--borders': showBorders,
17
+ }"
18
+ :style="{
19
+ color: iconColor,
20
+ }"
21
+ >
22
+ <Icon type="accordionArrow" title="accordionArrow" />
23
+ <Icon type="activity" title="activity" />
24
+ <Icon type="add" title="add" />
25
+ <Icon type="addCircle" title="addCircle" />
26
+ <Icon type="arrow" title="arrow" />
27
+ <Icon type="barChart" title="barChart" />
28
+ <Icon type="calendar" title="calendar" />
29
+ <Icon type="check" title="check" />
30
+ <Icon type="close" title="close" />
31
+ <Icon type="correct" title="correct" />
32
+ <Icon type="edit" title="edit" />
33
+ <Icon type="exam" title="exam" />
34
+ <Icon type="eyeShow" title="eyeShow" />
35
+ <Icon type="eyeHide" title="eyeHide" />
36
+ <Icon type="filter" title="filter" />
37
+ <Icon type="filterActive" title="filterActive" />
38
+ <Icon type="flag" title="flag" />
39
+ <Icon type="flagFeedback" title="flagFeedback" />
40
+ <Icon type="flag-filled" title="flag-filled" />
41
+ <Icon type="handle" title="handle" />
42
+ <Icon type="help" title="help" />
43
+ <Icon type="hourglass" title="hourglass" />
44
+ <Icon type="image" title="image" />
45
+ <Icon type="incorrect" title="incorrect" />
46
+ <Icon type="info" title="info"/>
47
+ <Icon type="lightning" title="lightning" />
48
+ <Icon type="list" title="list" />
49
+ <Icon type="loading" title="loading" />
50
+ <Icon type="loading2" title="loading2" :isDarkMode="isDark" />
51
+ <Icon type="missedQuestions" title="missedQuestions" />
52
+ <Icon type="paginationArrow" title="paginationArrow" />
53
+ <Icon type="passage" title="passage" />
54
+ <Icon type="pencil" title="pencil" />
55
+ <Icon type="people" title="people" />
56
+ <Icon type="questions" title="questions" />
57
+ <Icon type="quick10" title="quick10" />
58
+ <Icon type="removeCircle" title="removeCircle" />
59
+ <Icon type="search" title="search" />
60
+ <Icon type="share" title="share" />
61
+ <Icon type="stopwatch" title="stopwatch" />
62
+ <Icon type="strike" title="strike" />
63
+ <Icon type="subject" title="subject" />
64
+ <Icon type="warning" title="warning" />
65
+ <Icon type="lock" title="lock" />
66
+ <Icon type="moon" title="moon" />
67
+ <Icon type="heart" title="heart" />
68
+ <Icon type="externalLink" title="externalLink" />
69
+ <Icon type="keyboard" title="keyboard" />
70
+ <Icon type="fullView" title="fullView" />
71
+ <Icon type="fullViewActive" title="fullViewActive" />
72
+ <Icon type="sideBar" title="sideBar" />
73
+ <Icon type="sideBarActive" title="sideBarActive" />
74
+ <Icon type="text" title="text" />
75
+ <Icon type="review-flag" title="review-flag" />
76
+ </div>
77
+ </div>
78
+ </template>
79
+
80
+ <script lang="ts">
81
+ export default {
82
+ data () {
83
+ return {
84
+ showBorders: false,
85
+ isDark: false,
86
+ iconColor: '#1f3545',
87
+ }
88
+ },
89
+ methods: {
90
+ toggleBackground () {
91
+ this.isDark = !this.isDark
92
+ if (this.isDark) {
93
+ this.iconColor = '#ffffff'
94
+ } else {
95
+ this.iconColor = '#1f3545'
96
+ }
97
+ },
98
+ toggleBorders () {
99
+ this.showBorders = !this.showBorders
100
+ }
101
+ }
102
+ }
103
+ </script>
104
+
105
+ <style>
106
+ .icons {
107
+ display: flex;
108
+ align-items: center;
109
+ flex-wrap: wrap;
110
+ margin-top: 12px;
111
+ padding: 12px;
112
+ border-radius: 4px;
113
+ }
114
+
115
+ .icons--dark {
116
+ background-color: #1f3545;
117
+ }
118
+
119
+ .icons svg,
120
+ .icons div {
121
+ margin: 5px;
122
+ }
123
+
124
+ .icons--borders svg,
125
+ .icons--borders div {
126
+ border: 1px solid #1f3545;
127
+ }
128
+
129
+ .icons--dark.icons--borders svg,
130
+ .icons--dark.icons--borders div {
131
+ border: 1px solid #fff;
132
+ }
133
+
134
+ .icons svg:hover {
135
+ color: #0064ff;
136
+ }
137
+
138
+ .icons--dark svg:hover {
139
+ color: #ffce74;
140
+ }
141
+
142
+ .icons__color {
143
+ margin: 10px 0;
144
+ }
145
+ </style>
146
+ ```
@@ -0,0 +1,192 @@
1
+ <template>
2
+ <IconAdd v-if="type === 'add'" :title="title" />
3
+ <IconEdit v-else-if="type === 'edit'" :title="title" />
4
+ <IconFilter v-else-if="type === 'filter'" :title="title" />
5
+ <IconFilterActive v-else-if="type === 'filterActive'" :title="title" />
6
+ <IconSearch v-else-if="type === 'search'" :title="title" />
7
+ <IconClose v-else-if="type === 'close'" :title="title" />
8
+ <IconCheck v-else-if="type === 'check'" :title="title" />
9
+ <IconHandle v-else-if="type === 'handle'" :title="title" />
10
+ <IconHelp v-else-if="type === 'help'" :title="title" />
11
+ <IconArrow v-else-if="type === 'arrow'" :title="title" />
12
+ <IconPaginationArrow v-else-if="type === 'paginationArrow'" :title="title" />
13
+ <IconAccordionArrow v-else-if="type === 'accordionArrow'" :title="title" />
14
+ <IconQuestions v-else-if="type === 'questions'" :title="title" />
15
+ <IconSubject v-else-if="type === 'subject'" :title="title" />
16
+ <IconFlag v-else-if="type === 'flag'" :title="title" />
17
+ <IconFlagFilled v-else-if="type === 'flag-filled'" :title="title" />
18
+ <IconLoading v-else-if="type === 'loading'" :title="title" />
19
+ <IconLoading2
20
+ v-else-if="type === 'loading2'"
21
+ :title="title"
22
+ :is-dark-mode="isDarkMode"
23
+ />
24
+ <IconWarning v-else-if="type === 'warning'" :title="title" />
25
+ <IconHourglass v-else-if="type === 'hourglass'" :title="title" />
26
+ <IconImage v-else-if="type === 'image'" :title="title" />
27
+ <IconActivity v-else-if="type === 'activity'" :title="title" />
28
+ <IconBarChart v-else-if="type === 'barChart'" :title="title" />
29
+ <IconExam v-else-if="type === 'exam'" :title="title" />
30
+ <IconLightning v-else-if="type === 'lightning'" :title="title" />
31
+ <IconCalendar v-else-if="type === 'calendar'" :title="title" />
32
+ <IconPassage v-else-if="type === 'passage'" :title="title" />
33
+ <IconPencil v-else-if="type === 'pencil'" :title="title" />
34
+ <IconPeople v-else-if="type === 'people'" :title="title" />
35
+ <IconMissedQuestions v-else-if="type === 'missedQuestions'" :title="title" />
36
+ <IconQuick10 v-else-if="type === 'quick10'" :title="title" />
37
+ <IconShare v-else-if="type === 'share'" :title="title" />
38
+ <IconStopwatch v-else-if="type === 'stopwatch'" :title="title" />
39
+ <IconStrike v-else-if="type === 'strike'" :title="title" />
40
+ <IconAddCircle v-else-if="type === 'addCircle'" :title="title" />
41
+ <IconRemoveCircle v-else-if="type === 'removeCircle'" :title="title" />
42
+ <IconReviewFlag v-else-if="type === 'review-flag'" :title="title" />
43
+ <IconEyeShow v-else-if="type === 'eyeShow'" :title="title" />
44
+ <IconEyeHide v-else-if="type === 'eyeHide'" :title="title" />
45
+ <IconLock v-else-if="type === 'lock'" :title="title" />
46
+ <IconMoon v-else-if="type === 'moon'" :title="title" />
47
+ <IconHeart v-else-if="type === 'heart'" :title="title" />
48
+ <IconExternalLink v-else-if="type === 'externalLink'" :title="title" />
49
+ <IconKeyboard v-else-if="type === 'keyboard'" :title="title" />
50
+ <IconFullView v-else-if="type === 'fullView'" :title="title" />
51
+ <IconFullViewActive v-else-if="type === 'fullViewActive'" :title="title" />
52
+ <IconSideBar v-else-if="type === 'sideBar'" :title="title" />
53
+ <IconSideBarActive v-else-if="type === 'sideBarActive'" :title="title" />
54
+ <IconCorrect v-else-if="type === 'correct'" :title="title" />
55
+ <IconIncorrect v-else-if="type === 'incorrect'" :title="title" />
56
+ <IconFlagFeedback
57
+ v-else-if="type === 'flagFeedback'"
58
+ :title="title"
59
+ :secondary-color="secondaryColor"
60
+ />
61
+ <IconText v-else-if="type === 'text'" :title="title" />
62
+ <IconInfo v-else-if="type === 'info'" :title="title" />
63
+ <IconList v-else-if="type === 'list'" :title="title" />
64
+ <IconLaunch v-else-if="type === 'launch'" :title="title" />
65
+ </template>
66
+
67
+ <script lang="ts">
68
+ import { Component, Vue, Prop } from 'vue-facing-decorator'
69
+ import IconAdd from './IconAdd.vue'
70
+ import IconEdit from './IconEdit.vue'
71
+ import IconFilter from './IconFilter.vue'
72
+ import IconFilterActive from './IconFilterActive.vue'
73
+ import IconSearch from './IconSearch.vue'
74
+ import IconClose from './IconClose.vue'
75
+ import IconCheck from './IconCheck.vue'
76
+ import IconHandle from './IconHandle.vue'
77
+ import IconHelp from './IconHelp.vue'
78
+ import IconArrow from './IconArrow.vue'
79
+ import IconAccordionArrow from './IconAccordionArrow.vue'
80
+ import IconPaginationArrow from './IconPaginationArrow.vue'
81
+ import IconQuestions from './IconQuestions.vue'
82
+ import IconSubject from './IconSubject.vue'
83
+ import IconFlag from './IconFlag.vue'
84
+ import IconFlagFilled from './IconFlagFilled.vue'
85
+ import IconLoading from './IconLoading.vue'
86
+ import IconLoading2 from './IconLoading2.vue'
87
+ import IconHourglass from './IconHourglass.vue'
88
+ import IconImage from './IconImage.vue'
89
+ import IconActivity from './IconActivity.vue'
90
+ import IconBarChart from './IconBarChart.vue'
91
+ import IconExam from './IconExam.vue'
92
+ import IconLightning from './IconLightning.vue'
93
+ import IconCalendar from './IconCalendar.vue'
94
+ import IconPassage from './IconPassage.vue'
95
+ import IconPencil from './IconPencil.vue'
96
+ import IconPeople from './IconPeople.vue'
97
+ import IconMissedQuestions from './IconMissedQuestions.vue'
98
+ import IconQuick10 from './IconQuick10.vue'
99
+ import IconShare from './IconShare.vue'
100
+ import IconStopwatch from './IconStopwatch.vue'
101
+ import IconStrike from './IconStrike.vue'
102
+ import IconWarning from './IconWarning.vue'
103
+ import IconAddCircle from './IconAddCircle.vue'
104
+ import IconRemoveCircle from './IconRemoveCircle.vue'
105
+ import IconReviewFlag from './IconReviewFlag.vue'
106
+ import IconEyeShow from './IconEyeShow.vue'
107
+ import IconEyeHide from './IconEyeHide.vue'
108
+ import IconLock from './IconLock.vue'
109
+ import IconMoon from './IconMoon.vue'
110
+ import IconHeart from './IconHeart.vue'
111
+ import IconExternalLink from './IconExternalLink.vue'
112
+ import IconKeyboard from './IconKeyboard.vue'
113
+ import IconFullView from './IconFullView.vue'
114
+ import IconFullViewActive from './IconFullViewActive.vue'
115
+ import IconSideBar from './IconSideBar.vue'
116
+ import IconSideBarActive from './IconSideBarActive.vue'
117
+ import IconCorrect from './IconCorrect.vue'
118
+ import IconIncorrect from './IconIncorrect.vue'
119
+ import IconFlagFeedback from './IconFlagFeedback.vue'
120
+ import IconText from './IconText.vue'
121
+ import IconInfo from './IconInfo.vue'
122
+ import IconList from './IconList.vue'
123
+ import IconLaunch from './IconLaunch.vue'
124
+ import type { TIconType } from './icon'
125
+
126
+ @Component({
127
+ components: {
128
+ IconAdd,
129
+ IconEdit,
130
+ IconFilter,
131
+ IconFilterActive,
132
+ IconSearch,
133
+ IconClose,
134
+ IconAccordionArrow,
135
+ IconHandle,
136
+ IconHelp,
137
+ IconArrow,
138
+ IconCheck,
139
+ IconPaginationArrow,
140
+ IconQuestions,
141
+ IconSubject,
142
+ IconFlag,
143
+ IconFlagFilled,
144
+ IconLoading,
145
+ IconLoading2,
146
+ IconHourglass,
147
+ IconImage,
148
+ IconActivity,
149
+ IconBarChart,
150
+ IconExam,
151
+ IconLightning,
152
+ IconCalendar,
153
+ IconPassage,
154
+ IconPencil,
155
+ IconPeople,
156
+ IconMissedQuestions,
157
+ IconQuick10,
158
+ IconShare,
159
+ IconStopwatch,
160
+ IconStrike,
161
+ IconWarning,
162
+ IconAddCircle,
163
+ IconRemoveCircle,
164
+ IconReviewFlag,
165
+ IconEyeShow,
166
+ IconEyeHide,
167
+ IconLock,
168
+ IconMoon,
169
+ IconHeart,
170
+ IconExternalLink,
171
+ IconKeyboard,
172
+ IconFullView,
173
+ IconFullViewActive,
174
+ IconSideBar,
175
+ IconSideBarActive,
176
+ IconCorrect,
177
+ IconIncorrect,
178
+ IconFlagFeedback,
179
+ IconText,
180
+ IconInfo,
181
+ IconList,
182
+ IconLaunch,
183
+ },
184
+ })
185
+ export default class Icon extends Vue {
186
+ @Prop({ default: 'add' }) type!: TIconType
187
+ @Prop({ default: '' }) title!: string
188
+ @Prop({ default: false }) isDarkMode!: boolean
189
+ @Prop({ default: undefined }) primaryColor!: string
190
+ @Prop({ default: 'currentColor' }) secondaryColor!: string
191
+ }
192
+ </script>
@@ -0,0 +1,7 @@
1
+ ```vue
2
+ <template>
3
+ <div>
4
+ <Icon type="accordionArrow" />
5
+ </div>
6
+ </template>
7
+ ```
@@ -0,0 +1,23 @@
1
+ <template>
2
+ <!-- eslint-disable -->
3
+ <svg width="12px" height="8px" viewBox="0 0 12 8" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
4
+ <title>{{ title }}</title>
5
+ <g stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
6
+ <g transform="translate(-384.000000, -42.000000)" fill="currentColor">
7
+ <g transform="translate(384.000000, 42.500000)">
8
+ <path d="M9.5,-3.38775253 C9.9807836,-3.38775253 10.377038,-3.02583985 10.4311928,-2.55958484 L10.4375,-2.45025253 L10.4375,4.54974747 C10.4375,5.06751442 10.017767,5.48724747 9.5,5.48724747 C9.0192164,5.48724747 8.62296204,5.12533479 8.56880725,4.65907977 L8.5625,4.54974747 L8.562,-1.512 L2.5,-1.51275253 C2.0192164,-1.51275253 1.62296204,-1.87466521 1.56880725,-2.34092023 L1.5625,-2.45025253 C1.5625,-2.93103613 1.92441268,-3.32729049 2.39066769,-3.38144528 L2.5,-3.38775253 L9.5,-3.38775253 Z" transform="translate(6.000000, 1.049747) rotate(135.000000) translate(-6.000000, -1.049747) "></path>
9
+ </g>
10
+ </g>
11
+ </g>
12
+ </svg>
13
+ <!-- eslint-enable -->
14
+ </template>
15
+
16
+ <script lang="ts">
17
+ import { Component, Vue, Prop } from 'vue-facing-decorator'
18
+
19
+ @Component
20
+ export default class IconAccordionArrow extends Vue {
21
+ @Prop() title!: string
22
+ }
23
+ </script>
@@ -0,0 +1,7 @@
1
+ ```vue
2
+ <template>
3
+ <div>
4
+ <Icon type="activity" />
5
+ </div>
6
+ </template>
7
+ ```
@@ -0,0 +1,21 @@
1
+ <template>
2
+ <!-- eslint-disable -->
3
+ <svg width="18px" height="23px" viewBox="0 0 18 23" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
4
+ <title>{{ title }}</title>
5
+ <g stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
6
+ <g fill="currentColor" fill-rule="nonzero">
7
+ <path d="M5.10867965,11.5081032 C5.55630801,11.7583619 5.7368526,12.3015762 5.54457653,12.7638667 L5.49353888,12.8689424 L3.15073969,17.0594186 C2.79600262,17.6939233 1.91911309,17.7406008 1.4907398,17.1888447 L1.41591284,17.0783749 L0.138022373,14.9055354 C-0.141956348,14.4294783 0.0169965822,13.8165902 0.49305368,13.5366114 C0.9351067,13.2766312 1.49514158,13.3951175 1.79705782,13.7945285 L1.86197763,13.8916427 L2.255,14.561 L3.74784043,11.8929624 C4.01734986,11.4109011 4.62661833,11.2385937 5.10867965,11.5081032 Z M15.6034483,13.4761905 C16.155733,13.4761905 16.6034483,13.9239057 16.6034483,14.4761905 C16.6034483,14.9890263 16.2174081,15.4116976 15.7200694,15.4694627 L15.6034483,15.4761905 L8.60344828,15.4761905 C8.05116353,15.4761905 7.60344828,15.0284752 7.60344828,14.4761905 C7.60344828,13.9633546 7.98948847,13.5406833 8.48682715,13.4829182 L8.60344828,13.4761905 L15.6034483,13.4761905 Z M5.10867965,4.12715078 C5.55630801,4.37740954 5.7368526,4.92062379 5.54457653,5.38291427 L5.49353888,5.48798999 L3.15073969,9.67846618 C2.79600262,10.3129709 1.91911309,10.3596484 1.4907398,9.80789228 L1.41591284,9.69742251 L0.138022373,7.524583 C-0.141956348,7.04852591 0.0169965822,6.43563778 0.49305368,6.15565906 C0.9351067,5.89567882 1.49514158,6.01416515 1.79705782,6.41357616 L1.86197763,6.51069036 L2.255,7.181 L3.74784043,4.51201001 C4.01734986,4.02994869 4.62661833,3.85764135 5.10867965,4.12715078 Z M15.6034483,7.0952381 C16.155733,7.0952381 16.6034483,7.54295335 16.6034483,8.0952381 C16.6034483,8.60807393 16.2174081,9.03074526 15.7200694,9.08851036 L15.6034483,9.0952381 L8.60344828,9.0952381 C8.05116353,9.0952381 7.60344828,8.64752285 7.60344828,8.0952381 C7.60344828,7.58240226 7.98948847,7.15973093 8.48682715,7.10196583 L8.60344828,7.0952381 L15.6034483,7.0952381 Z"></path>
8
+ </g>
9
+ </g>
10
+ </svg>
11
+ <!-- eslint-enable -->
12
+ </template>
13
+
14
+ <script lang="ts">
15
+ import { Vue, Component, Prop } from 'vue-facing-decorator'
16
+
17
+ @Component
18
+ export default class IconActivity extends Vue {
19
+ @Prop() title!: string
20
+ }
21
+ </script>
@@ -0,0 +1,7 @@
1
+ ```vue
2
+ <template>
3
+ <div>
4
+ <Icon type="add" />
5
+ </div>
6
+ </template>
7
+ ```
@@ -0,0 +1,19 @@
1
+ <template>
2
+ <!-- eslint-disable -->
3
+ <svg width="24px" height="24px" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
4
+ <title>{{ title }}</title>
5
+ <g stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
6
+ <path d="M12,4 C12.6903559,4 13.25,4.55964406 13.25,5.25 L13.25,10.749 L18.75,10.75 C19.4403559,10.75 20,11.3096441 20,12 C20,12.6903559 19.4403559,13.25 18.75,13.25 L13.25,13.25 L13.25,18.75 C13.25,19.4403559 12.6903559,20 12,20 C11.3096441,20 10.75,19.4403559 10.75,18.75 L10.75,13.25 L5.25,13.25 C4.55964406,13.25 4,12.6903559 4,12 C4,11.3096441 4.55964406,10.75 5.25,10.75 L10.75,10.75 L10.75,5.25 C10.75,4.55964406 11.3096441,4 12,4 Z" fill="currentColor"></path>
7
+ </g>
8
+ </svg>
9
+ <!-- eslint-enable -->
10
+ </template>
11
+
12
+ <script lang="ts">
13
+ import { Component, Vue, Prop } from 'vue-facing-decorator'
14
+
15
+ @Component
16
+ export default class IconAdd extends Vue {
17
+ @Prop() title!: string
18
+ }
19
+ </script>
@@ -0,0 +1,7 @@
1
+ ```vue
2
+ <template>
3
+ <div>
4
+ <Icon type="addCircle" />
5
+ </div>
6
+ </template>
7
+ ```