@pocketprep/ui-kit 3.1.6 → 3.2.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 (129) hide show
  1. package/.eslintrc.cjs +1 -0
  2. package/README.md +29 -8
  3. package/dist/@pocketprep/ui-kit.js +1772 -1737
  4. package/dist/@pocketprep/ui-kit.js.map +1 -1
  5. package/dist/@pocketprep/ui-kit.umd.cjs +4 -4
  6. package/dist/@pocketprep/ui-kit.umd.cjs.map +1 -1
  7. package/lib/components/BundleIcons/BundleIcon.vue +2 -2
  8. package/lib/components/Filters/FilterDropdown.vue +2 -2
  9. package/lib/components/Icons/Icon.vue +3 -0
  10. package/lib/components/Icons/IconPresent.vue +21 -0
  11. package/lib/components/Icons/icon.d.ts +2 -1
  12. package/lib/pocketprep.scss +12 -12
  13. package/package.json +14 -13
  14. package/lib/components/Banners/Banner.md +0 -41
  15. package/lib/components/Blobs/Blob.md +0 -10
  16. package/lib/components/Blobs/BlobEmptyState.md +0 -9
  17. package/lib/components/BundleIcons/BundleIcon.md +0 -60
  18. package/lib/components/Bundles/BundleList.md +0 -63
  19. package/lib/components/Bundles/BundleSearch.md +0 -195
  20. package/lib/components/Bundles/PremiumPill.md +0 -23
  21. package/lib/components/Buttons/Button.md +0 -99
  22. package/lib/components/Buttons/Link.md +0 -58
  23. package/lib/components/Buttons/Tab.md +0 -35
  24. package/lib/components/Calendar/Calendar.md +0 -18
  25. package/lib/components/Charts/Bar.md +0 -123
  26. package/lib/components/Charts/Pie.md +0 -23
  27. package/lib/components/Controls/SegmentControl.md +0 -47
  28. package/lib/components/Controls/Slider.md +0 -67
  29. package/lib/components/Controls/ToggleSwitch.md +0 -56
  30. package/lib/components/EmptyStates/EmptyState.md +0 -44
  31. package/lib/components/Exams/ExamCard.md +0 -45
  32. package/lib/components/Exams/ExamMenuCard.md +0 -90
  33. package/lib/components/Filters/FilterDropdown.md +0 -68
  34. package/lib/components/Filters/FilterOptions.md +0 -67
  35. package/lib/components/Forms/Checkbox.md +0 -52
  36. package/lib/components/Forms/CheckboxOption.md +0 -37
  37. package/lib/components/Forms/Errors.md +0 -23
  38. package/lib/components/Forms/Input.md +0 -63
  39. package/lib/components/Forms/Radio.md +0 -66
  40. package/lib/components/Forms/Select.md +0 -133
  41. package/lib/components/Forms/Textarea.md +0 -57
  42. package/lib/components/Icons/Icon.md +0 -151
  43. package/lib/components/Icons/IconAccordionArrow.md +0 -7
  44. package/lib/components/Icons/IconActivity.md +0 -7
  45. package/lib/components/Icons/IconAdd.md +0 -7
  46. package/lib/components/Icons/IconAddCircle.md +0 -7
  47. package/lib/components/Icons/IconArrow.md +0 -7
  48. package/lib/components/Icons/IconBarChart.md +0 -7
  49. package/lib/components/Icons/IconCalendar.md +0 -7
  50. package/lib/components/Icons/IconChat.md +0 -7
  51. package/lib/components/Icons/IconCheck.md +0 -7
  52. package/lib/components/Icons/IconClose.md +0 -7
  53. package/lib/components/Icons/IconCorrect.md +0 -7
  54. package/lib/components/Icons/IconEdit.md +0 -7
  55. package/lib/components/Icons/IconExam.md +0 -7
  56. package/lib/components/Icons/IconExternalLink.md +0 -7
  57. package/lib/components/Icons/IconEyeHide.md +0 -7
  58. package/lib/components/Icons/IconEyeShow.md +0 -7
  59. package/lib/components/Icons/IconFilter.md +0 -7
  60. package/lib/components/Icons/IconFilterActive.md +0 -7
  61. package/lib/components/Icons/IconFlag.md +0 -7
  62. package/lib/components/Icons/IconFlagContent.md +0 -7
  63. package/lib/components/Icons/IconFlagFeedback.md +0 -11
  64. package/lib/components/Icons/IconFlagFilled.md +0 -7
  65. package/lib/components/Icons/IconFullView.md +0 -7
  66. package/lib/components/Icons/IconFullViewActive.md +0 -7
  67. package/lib/components/Icons/IconHandle.md +0 -7
  68. package/lib/components/Icons/IconHeart.md +0 -7
  69. package/lib/components/Icons/IconHelp.md +0 -7
  70. package/lib/components/Icons/IconHourglass.md +0 -7
  71. package/lib/components/Icons/IconImage.md +0 -7
  72. package/lib/components/Icons/IconIncorrect.md +0 -7
  73. package/lib/components/Icons/IconInfo.md +0 -7
  74. package/lib/components/Icons/IconKeyboard.md +0 -7
  75. package/lib/components/Icons/IconLaunch.md +0 -7
  76. package/lib/components/Icons/IconLevelUp.md +0 -7
  77. package/lib/components/Icons/IconLightbulb.md +0 -5
  78. package/lib/components/Icons/IconLightning.md +0 -7
  79. package/lib/components/Icons/IconList.md +0 -7
  80. package/lib/components/Icons/IconLoading.md +0 -7
  81. package/lib/components/Icons/IconLoading2.md +0 -7
  82. package/lib/components/Icons/IconLock.md +0 -7
  83. package/lib/components/Icons/IconMissedQuestions.md +0 -7
  84. package/lib/components/Icons/IconMoon.md +0 -7
  85. package/lib/components/Icons/IconPaginationArrow.md +0 -7
  86. package/lib/components/Icons/IconPassage.md +0 -7
  87. package/lib/components/Icons/IconPencil.md +0 -7
  88. package/lib/components/Icons/IconPeople.md +0 -7
  89. package/lib/components/Icons/IconPercent.md +0 -7
  90. package/lib/components/Icons/IconPerson.md +0 -7
  91. package/lib/components/Icons/IconPreview.md +0 -7
  92. package/lib/components/Icons/IconQuestions.md +0 -7
  93. package/lib/components/Icons/IconQuick10.md +0 -7
  94. package/lib/components/Icons/IconRemoveCircle.md +0 -7
  95. package/lib/components/Icons/IconReviewFlag.md +0 -7
  96. package/lib/components/Icons/IconSearch.md +0 -7
  97. package/lib/components/Icons/IconShare.md +0 -7
  98. package/lib/components/Icons/IconSideBar.md +0 -7
  99. package/lib/components/Icons/IconSideBarActive.md +0 -7
  100. package/lib/components/Icons/IconStopwatch.md +0 -7
  101. package/lib/components/Icons/IconStrike.md +0 -60
  102. package/lib/components/Icons/IconSubject.md +0 -7
  103. package/lib/components/Icons/IconText.md +0 -7
  104. package/lib/components/Icons/IconTimer.md +0 -7
  105. package/lib/components/Icons/IconWarning.md +0 -7
  106. package/lib/components/Loaders/SkeletonLoader.md +0 -43
  107. package/lib/components/Modal/Modal.md +0 -31
  108. package/lib/components/Modal/ModalContainer.md +0 -96
  109. package/lib/components/Onboarding/EmailAuth.md +0 -40
  110. package/lib/components/Onboarding/MagicCodeEntry.md +0 -20
  111. package/lib/components/Pagination/QuestionReviewPagination.md +0 -19
  112. package/lib/components/Pagination/TablePagination.md +0 -19
  113. package/lib/components/PhonePerson/PhonePerson.md +0 -36
  114. package/lib/components/Quiz/FlagToggle.md +0 -37
  115. package/lib/components/Quiz/GlobalMetricsToggle.md +0 -46
  116. package/lib/components/Quiz/KeyboardShortcutsButton.md +0 -18
  117. package/lib/components/Quiz/KeyboardShortcutsModal.md +0 -71
  118. package/lib/components/Quiz/Question.md +0 -579
  119. package/lib/components/Quiz/QuizContainer.md +0 -91
  120. package/lib/components/Quiz/QuizProgress.md +0 -122
  121. package/lib/components/Quiz/QuizProgressBar.md +0 -131
  122. package/lib/components/Search/Pill.md +0 -37
  123. package/lib/components/Search/Search.md +0 -44
  124. package/lib/components/SidePanels/SidePanel.md +0 -126
  125. package/lib/components/Tables/StudyTable.md +0 -136
  126. package/lib/components/Tables/TeachTable.md +0 -696
  127. package/lib/components/Toasts/Toast.md +0 -35
  128. package/lib/components/Tooltips/OverflowTooltip.md +0 -14
  129. package/lib/components/Tooltips/Tooltip.md +0 -72
@@ -1,5 +1,5 @@
1
+ <!-- eslint-disable -->
1
2
  <template>
2
- <!-- eslint-disable -->
3
3
  <div class="uikit-bundle-icon">
4
4
  <AMTA v-if="bundleId === 'VEcpw3DhnA' && theme === 'color'" />
5
5
  <svg v-else width="209px" height="209px" viewBox="0 0 209 209" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
@@ -23,8 +23,8 @@
23
23
  </g>
24
24
  </svg>
25
25
  </div>
26
- <!-- eslint-enable -->
27
26
  </template>
27
+ <!-- eslint-enable -->
28
28
 
29
29
  <script lang="ts">
30
30
  import { Component, Vue, Prop } from 'vue-facing-decorator'
@@ -12,8 +12,8 @@
12
12
  role="button"
13
13
  type="tertiary"
14
14
  tabindex="0"
15
- @keypress.enter="showFilterDropdown"
16
- @click="showFilterDropdown = !showFilterDropdown"
15
+ @keypress.enter="() => showFilterDropdown = !showFilterDropdown"
16
+ @click="() => showFilterDropdown = !showFilterDropdown"
17
17
  >
18
18
  <Icon
19
19
  type="filter"
@@ -70,6 +70,7 @@
70
70
  <IconLightbulb v-else-if="type === 'lightbulb'" :title="title" />
71
71
  <IconChat v-else-if="type === 'chat'" :title="title" />
72
72
  <IconPreview v-else-if="type === 'preview'" :title="title" />
73
+ <IconPresent v-else-if="type === 'present'" :title="title" />
73
74
  </template>
74
75
 
75
76
  <script lang="ts">
@@ -138,6 +139,7 @@ import type { TIconType } from './icon'
138
139
  import IconPercent from './IconPercent.vue'
139
140
  import IconPerson from './IconPerson.vue'
140
141
  import IconTimer from './IconTimer.vue'
142
+ import IconPresent from './IconPresent.vue'
141
143
 
142
144
  @Component({
143
145
  components: {
@@ -204,6 +206,7 @@ import IconTimer from './IconTimer.vue'
204
206
  IconChat,
205
207
  IconPreview,
206
208
  IconTimer,
209
+ IconPresent,
207
210
  },
208
211
  })
209
212
  export default class Icon extends Vue {
@@ -0,0 +1,21 @@
1
+ <template>
2
+ <!-- eslint-disable -->
3
+ <svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
4
+ <title>{{ title }}</title>
5
+ <path d="M3.3 11.05H20.7V19.25C20.7 19.9127 20.1627 20.45 19.5 20.45H4.5C3.83726 20.45 3.3 19.9127 3.3 19.25V11.05Z" stroke="currentColor" stroke-width="1.6" stroke-linejoin="round"/>
6
+ <rect x="2.3" y="7.05" width="19.4" height="4.4" rx="1.2" stroke="currentColor" stroke-width="1.6" stroke-linejoin="round"/>
7
+ <rect x="11.2" y="6.25" width="1.6" height="15" fill="currentColor"/>
8
+ <path d="M11.5 5.89096C11.5 4.39096 11 1.59096 9.00005 2.39096C6.50005 3.39096 6.50005 6.89099 11.5 5.89096Z" stroke="currentColor" stroke-width="1.6"/>
9
+ <path d="M12 5.89096C12 4.39096 12.5 1.59096 14.5 2.39096C17 3.39096 17 6.89099 12 5.89096Z" stroke="currentColor" stroke-width="1.6"/>
10
+ </svg>
11
+ <!-- eslint-enable -->
12
+ </template>
13
+
14
+ <script lang="ts">
15
+ import { Component, Vue, Prop } from 'vue-facing-decorator'
16
+
17
+ @Component
18
+ export default class IconPresent extends Vue {
19
+ @Prop() title!: string
20
+ }
21
+ </script>
@@ -61,4 +61,5 @@ export type TIconType =
61
61
  | 'lightbulb'
62
62
  | 'chat'
63
63
  | 'preview'
64
- | 'timer'
64
+ | 'timer'
65
+ | 'present'
@@ -26,30 +26,30 @@ textarea {
26
26
  .uikit-slider__slide-input {
27
27
  &:focus {
28
28
  &::-webkit-slider-thumb {
29
- background-image: url("./assets/images/thumb-small.svg") !important;
29
+ background-image: url("@/assets/images/thumb-small.svg") !important;
30
30
  }
31
31
 
32
32
  &::-moz-range-thumb {
33
- background-image: url("./assets/images/thumb-small.svg") !important;
33
+ background-image: url("@/assets/images/thumb-small.svg") !important;
34
34
  }
35
35
 
36
36
  &::-ms-thumb {
37
- background-image: url("./assets/images/thumb-small.svg") !important;
37
+ background-image: url("@/assets/images/thumb-small.svg") !important;
38
38
  }
39
39
  }
40
40
 
41
41
  &--dark {
42
42
  &:focus {
43
43
  &::-webkit-slider-thumb {
44
- background-image: url("./assets/images/thumb-small-dark.svg") !important;
44
+ background-image: url("@/assets/images/thumb-small-dark.svg") !important;
45
45
  }
46
46
 
47
47
  &::-moz-range-thumb {
48
- background-image: url("./assets/images/thumb-small-dark.svg") !important;
48
+ background-image: url("@/assets/images/thumb-small-dark.svg") !important;
49
49
  }
50
50
 
51
51
  &::-ms-thumb {
52
- background-image: url("./assets/images/thumb-small-dark.svg") !important;
52
+ background-image: url("@/assets/images/thumb-small-dark.svg") !important;
53
53
  }
54
54
  }
55
55
  }
@@ -61,30 +61,30 @@ textarea {
61
61
  .uikit-slider__slide-input {
62
62
  &:focus {
63
63
  &::-webkit-slider-thumb {
64
- background-image: url("./assets/images/thumb-large.svg") !important;
64
+ background-image: url("@/assets/images/thumb-large.svg") !important;
65
65
  }
66
66
 
67
67
  &::-moz-range-thumb {
68
- background-image: url("./assets/images/thumb-large.svg") !important;
68
+ background-image: url("@/assets/images/thumb-large.svg") !important;
69
69
  }
70
70
 
71
71
  &::-ms-thumb {
72
- background-image: url("./assets/images/thumb-large.svg") !important;
72
+ background-image: url("@/assets/images/thumb-large.svg") !important;
73
73
  }
74
74
  }
75
75
 
76
76
  &--dark {
77
77
  &:focus {
78
78
  &::-webkit-slider-thumb {
79
- background-image: url("./assets/images/thumb-large-dark.svg") !important;
79
+ background-image: url("@/assets/images/thumb-large-dark.svg") !important;
80
80
  }
81
81
 
82
82
  &::-moz-range-thumb {
83
- background-image: url("./assets/images/thumb-large-dark.svg") !important;
83
+ background-image: url("@/assets/images/thumb-large-dark.svg") !important;
84
84
  }
85
85
 
86
86
  &::-ms-thumb {
87
- background-image: url("./assets/images/thumb-large-dark.svg") !important;
87
+ background-image: url("@/assets/images/thumb-large-dark.svg") !important;
88
88
  }
89
89
  }
90
90
  }
package/package.json CHANGED
@@ -1,21 +1,21 @@
1
1
  {
2
2
  "name": "@pocketprep/ui-kit",
3
- "version": "3.1.6",
3
+ "version": "3.2.1",
4
4
  "description": "Pocket Prep UI Kit",
5
5
  "author": "pocketprep",
6
6
  "scripts": {
7
- "dev": "vite",
7
+ "dev": "vite --config vite.config.docs.ts",
8
8
  "build": "run-p type-check build-only",
9
- "preview": "vite preview",
9
+ "build-only": "vite build && vite build --config vite.config.docs.ts",
10
+ "preview": "vite preview --config vite.config.docs.ts",
11
+ "lint": "eslint . --ext .vue,.js,.jsx,.cjs,.mjs,.ts,.tsx,.cts,.mts --ignore-path .gitignore && stylelint '**/*.{scss,vue}'",
12
+ "type-check": "vue-tsc --noEmit -p tsconfig.json --composite false",
10
13
  "test:e2e": "start-server-and-test preview :4173 'cypress run --e2e'",
11
14
  "test:e2e:dev": "start-server-and-test 'vite dev --port 4173' :4173 'cypress open --e2e'",
12
15
  "test:unit": "cypress run --component",
13
16
  "test:unit:dev": "cypress open --component",
14
- "build-only": "vite build",
15
- "minor": "npm version minor --no-git-tag-version",
16
- "type-check": "vue-tsc --noEmit -p tsconfig.json --composite false",
17
17
  "patch": "npm version patch --no-git-tag-version",
18
- "lint": "eslint . --ext .vue,.js,.jsx,.cjs,.mjs,.ts,.tsx,.cts,.mts --fix --ignore-path .gitignore && stylelint '**/*.{scss,vue}'",
18
+ "minor": "npm version minor --no-git-tag-version",
19
19
  "uikit-copy": "npm run build && pwd | pbcopy"
20
20
  },
21
21
  "type": "module",
@@ -73,14 +73,15 @@
73
73
  "highcharts": "10.3.3",
74
74
  "litepicker": "2.0.12",
75
75
  "resize-observer": "1.0.4",
76
- "vue": "3.2.47",
77
- "vue-facing-decorator": "2.1.20"
76
+ "vue": "3.4.15",
77
+ "vue-facing-decorator": "2.1.20",
78
+ "vue-router": "4.2.5"
78
79
  },
79
80
  "devDependencies": {
80
81
  "@pocketprep/types": "1.11.1",
81
82
  "@tsconfig/node16": "1.0.3",
82
83
  "@types/node": "16.18.25",
83
- "@vitejs/plugin-vue": "4.2.1",
84
+ "@vitejs/plugin-vue": "4.6.2",
84
85
  "@vue/eslint-config-typescript": "11.0.2",
85
86
  "@vue/tsconfig": "0.3.2",
86
87
  "cypress": "12.0.2",
@@ -102,7 +103,7 @@
102
103
  "url": "https://github.com/Pocket-Prep/ui-kit/issues"
103
104
  },
104
105
  "gitHooks": {
105
- "pre-commit": "npm run build"
106
+ "pre-commit": "npm run lint && npm run type-check && npm run build && git add docs/"
106
107
  },
107
108
  "homepage": "https://github.com/Pocket-Prep/ui-kit#readme",
108
109
  "keywords": [
@@ -114,7 +115,7 @@
114
115
  "url": "git+https://github.com/Pocket-Prep/ui-kit.git"
115
116
  },
116
117
  "engines": {
117
- "node": "16.14.0",
118
- "npm": "8.3.1"
118
+ "node": "20.10.0",
119
+ "npm": "10.2.3"
119
120
  }
120
121
  }
@@ -1,41 +0,0 @@
1
- ```vue
2
- <template>
3
- <div>
4
- <div class="light">
5
- <Banner text="Default text." />
6
- </div>
7
- <div class="dark">
8
- <Banner
9
- :isDarkMode="true"
10
- text="Default text, but in dark mode."/>
11
- </div>
12
- <div class="light">
13
- <Banner>Override at BANNER level!</Banner>
14
- </div>
15
- <div class="light">
16
- <Banner>
17
- <template #bannerText>
18
- Someone sent you 20% off your first subscription with Pocket Prep. Sweet!
19
- </template>
20
- </Banner>
21
- </div>
22
- <div class="light">
23
- <Banner>
24
- <template #bannerImage><div></div></template>
25
- <template #bannerText>I don't want an image!</template>
26
- </Banner>
27
- </div>
28
- </div>
29
- </template>
30
-
31
- <style>
32
- .light,
33
- .dark {
34
- padding: 30px;
35
- }
36
-
37
- .dark {
38
- background-color: #1f3545;
39
- }
40
- </style>
41
- ```
@@ -1,10 +0,0 @@
1
- ```vue
2
- <template>
3
- <div>
4
- <Blob
5
- type="empty"
6
- title="emptyBlob"
7
- />
8
- </div>
9
- </template>
10
- ```
@@ -1,9 +0,0 @@
1
- ```vue
2
- <template>
3
- <div>
4
- <Blob
5
- type="empty"
6
- />
7
- </div>
8
- </template>
9
- ```
@@ -1,60 +0,0 @@
1
- ```vue
2
- <template>
3
- <div>
4
- <SVGDefinitions />
5
- <Select v-model="theme" :data="themeOptions" />
6
- <div class="icons">
7
- <BundleIcon bundleId="mO5EIsoZ9H" :theme="theme.value"/>
8
- <BundleIcon bundleId="uKLwvbsbPV" :theme="theme.value"/>
9
- <BundleIcon bundleId="gAlCkoUVLl" :theme="theme.value"/>
10
- <BundleIcon bundleId="GVCNrq4ixh" :theme="theme.value"/>
11
- <BundleIcon bundleId="PusoOu7qGQ" :theme="theme.value"/>
12
- <BundleIcon bundleId="1kS20KPPkH" :theme="theme.value"/>
13
- <BundleIcon bundleId="tVMt7KCrkQ" :theme="theme.value"/>
14
- <BundleIcon bundleId="4dTgUX97Dk" :theme="theme.value"/>
15
- <BundleIcon bundleId="9970muCFGV" :theme="theme.value"/>
16
- <BundleIcon bundleId="k9T5L3kC0U" :theme="theme.value"/>
17
- <BundleIcon bundleId="DO5jBm0OJo" :theme="theme.value"/>
18
- <BundleIcon bundleId="vtgI9oxCI4" :theme="theme.value"/>
19
- <BundleIcon bundleId="VEcpw3DhnA" :theme="theme.value"/>
20
- </div>
21
- </div>
22
- </template>
23
-
24
- <script>
25
- export default {
26
- data () {
27
- return {
28
- theme: { label: 'Color', value: 'color' },
29
- themeOptions: [
30
- {
31
- label: 'Color',
32
- value: 'color',
33
- },
34
- {
35
- label: 'Grayscale',
36
- value: 'grayscale',
37
- },
38
- {
39
- label: 'Silver',
40
- value: 'silver',
41
- }
42
- ]
43
- }
44
- }
45
- }
46
- </script>
47
-
48
- <style>
49
- .icons {
50
- display: flex;
51
- align-items: center;
52
- background: black;
53
- }
54
-
55
- .icons > div {
56
- margin: 5px;
57
- width: 50px;
58
- }
59
- </style>
60
- ```
@@ -1,63 +0,0 @@
1
- ```vue
2
- <template>
3
- <div>
4
- <Button @click="isDarkMode = !isDarkMode">{{ isDarkMode ? 'Disable' : 'Enable' }} Dark Mode</Button>
5
- <div class="bundles" :class="{ dark: isDarkMode }">
6
- <SVGDefinitions />
7
- Selected Bundle: {{ selectedBundle?.objectId }}<br><br>
8
- <BundleList :isDarkMode="isDarkMode" v-model="selectedBundle" :bundles="bundles" :premiumBundleIds="[ 'tVMt7KCrkQ' ]" />
9
- </div>
10
- </div>
11
- </template>
12
-
13
- <script>
14
- import Button from '../Buttons/Button.vue'
15
-
16
- const bundles = [
17
- {
18
- objectId: 'tVMt7KCrkQ',
19
- name: 'AMTA',
20
- },
21
- {
22
- objectId: 'k9T5L3kC0U',
23
- name: 'Professional',
24
- },
25
- {
26
- objectId: '1kS20KPPkH',
27
- name: 'IT & Cybersecurity',
28
- },
29
- {
30
- objectId: '9970muCFGV',
31
- name: 'Nursing School',
32
- }
33
- ]
34
-
35
- export default {
36
- components: {
37
- Button
38
- },
39
- data () {
40
- return {
41
- bundles,
42
- selectedBundle: bundles[2],
43
- isDarkMode: false,
44
- }
45
- }
46
- }
47
- </script>
48
-
49
- <style>
50
- .bundles {
51
- padding: 30px;
52
- }
53
-
54
- .dark {
55
- background-color: #1f3545;
56
- color: #fff;
57
- }
58
-
59
- .uikit-btn {
60
- margin-bottom: 30px;
61
- }
62
- </style>
63
- ```
@@ -1,195 +0,0 @@
1
- ```vue
2
- <template>
3
- <div>
4
- <Button @click="showBundleSearch = !showBundleSearch">Toggle Bundle Search</Button>
5
- <Button @click="isDarkMode = !isDarkMode">{{ isDarkMode ? 'Disable' : 'Enable' }} Dark Mode</Button><br>
6
- Selected Exam: {{ selectedExam?.objectId }}
7
- <div class="bundle-search-container" :class="{ dark: isDarkMode }">
8
- <BundleSearch
9
- v-if="showBundleSearch"
10
- @select="exam => selectedExam = exam"
11
- :bundles="bundles"
12
- :isDarkMode="isDarkMode"
13
- :examMetadataById="examMetadata"
14
- :premiumBundleIds="[ 'k9T5L3kC0U' ]"
15
- :premiumExamIds="[ 'W54AAON6ZP', 'LIjSJZQEB1' ]"
16
- />
17
- </div>
18
- </div>
19
- </template>
20
-
21
- <script>
22
- const bundles = [
23
- {
24
- objectId: 'tVMt7KCrkQ',
25
- name: 'AMTA',
26
- exams: [
27
- {
28
- "objectId": "icX2CYGp2P"
29
- }
30
- ]
31
- },
32
- {
33
- objectId: 'k9T5L3kC0U',
34
- name: 'Professional',
35
- exams: [
36
- {
37
- "objectId": "W54AAON6ZP"
38
- },
39
- {
40
- "objectId": "LIjSJZQEB1"
41
- },
42
- ]
43
- },
44
- {
45
- objectId: '1kS20KPPkH',
46
- name: 'IT & Cybersecurity',
47
- exams: [
48
- {
49
- "objectId": "rGNBApGBEg"
50
- },
51
- {
52
- "objectId": "rGNBApGBEg2"
53
- },
54
- {
55
- "objectId": "rGNBApGBEg3"
56
- },
57
- {
58
- "objectId": "rGNBApGBEg4"
59
- },
60
- {
61
- "objectId": "rGNBApGBEg5"
62
- },
63
- {
64
- "objectId": "rGNBApGBEg6"
65
- },
66
- {
67
- "objectId": "rGNBApGBEg7"
68
- },
69
- ]
70
- },
71
- {
72
- objectId: '9970muCFGV',
73
- name: 'Nursing School',
74
- exams: [
75
- {
76
- "objectId": "o98Hn8iUO4"
77
- }
78
- ]
79
- }
80
- ]
81
- const examMetadata = {
82
- icX2CYGp2P: {
83
- objectId: 'icX2CYGp2P',
84
- nativeAppName: 'AMTA mBLEX',
85
- descriptiveName: 'The AMTA Exam',
86
- itemCount: '100',
87
- archivedCount: '2',
88
- knowledgeAreas: ['', ''],
89
- },
90
- W54AAON6ZP: {
91
- objectId: 'W54AAON6ZP',
92
- nativeAppName: 'BCSP ASP®',
93
- descriptiveName: 'Associate Safety Professional Prep',
94
- itemCount: '100',
95
- archivedCount: '2',
96
- knowledgeAreas: ['', ''],
97
- },
98
- LIjSJZQEB1: {
99
- objectId: 'LIjSJZQEB1',
100
- nativeAppName: 'ASP',
101
- descriptiveName: 'Board of Certified Safety Professionals: Associate Safety Professional',
102
- itemCount: '100',
103
- archivedCount: '2',
104
- knowledgeAreas: ['', ''],
105
- },
106
- rGNBApGBEg: {
107
- objectId: 'rGNBApGBEg',
108
- nativeAppName: 'EC-Council® CEH™',
109
- descriptiveName: 'Certified Ethical Hacker™ v10 Prep',
110
- itemCount: '100',
111
- archivedCount: '2',
112
- knowledgeAreas: ['', ''],
113
- },
114
- rGNBApGBEg2: {
115
- objectId: 'rGNBApGBEg2',
116
- nativeAppName: 'EC-Council® CEH™',
117
- descriptiveName: 'Certified Ethical Hacker™ v10 Prep',
118
- itemCount: '100',
119
- archivedCount: '2',
120
- knowledgeAreas: ['', ''],
121
- },
122
- rGNBApGBEg3: {
123
- objectId: 'rGNBApGBEg3',
124
- nativeAppName: 'EC-Council® CEH™',
125
- descriptiveName: 'Certified Ethical Hacker™ v10 Prep',
126
- itemCount: '100',
127
- archivedCount: '2',
128
- knowledgeAreas: ['', ''],
129
- },
130
- rGNBApGBEg4: {
131
- objectId: 'rGNBApGBEg4',
132
- nativeAppName: 'EC-Council® CEH™',
133
- descriptiveName: 'Certified Ethical Hacker™ v10 Prep',
134
- itemCount: '100',
135
- archivedCount: '2',
136
- knowledgeAreas: ['', ''],
137
- },
138
- rGNBApGBEg5: {
139
- objectId: 'rGNBApGBEg5',
140
- nativeAppName: 'EC-Council® CEH™',
141
- descriptiveName: 'Certified Ethical Hacker™ v10 Prep',
142
- itemCount: '100',
143
- archivedCount: '2',
144
- knowledgeAreas: ['', ''],
145
- },
146
- rGNBApGBEg6: {
147
- objectId: 'rGNBApGBEg6',
148
- nativeAppName: 'EC-Council® CEH™',
149
- descriptiveName: 'Certified Ethical Hacker™ v10 Prep',
150
- itemCount: '100',
151
- archivedCount: '2',
152
- knowledgeAreas: ['', ''],
153
- },
154
- rGNBApGBEg7: {
155
- objectId: 'rGNBApGBEg7',
156
- nativeAppName: 'EC-Council® CEH™',
157
- descriptiveName: 'Certified Ethical Hacker™ v10 Prep',
158
- itemCount: '100',
159
- archivedCount: '2',
160
- knowledgeAreas: ['', ''],
161
- },
162
- o98Hn8iUO4: {
163
- objectId: 'o98Hn8iUO4',
164
- nativeAppName: 'College Biology',
165
- descriptiveName: 'College-level Biology Practice',
166
- itemCount: '100',
167
- archivedCount: '2',
168
- knowledgeAreas: ['', ''],
169
- }
170
- }
171
- export default {
172
- data () {
173
- return {
174
- isDarkMode: false,
175
- bundles,
176
- selectedExam: null,
177
- examMetadata,
178
- showBundleSearch: true,
179
- }
180
- }
181
- }
182
- </script>
183
-
184
- <style>
185
- .dark {
186
- background-color: #1f3545;
187
- color: #fff;
188
- }
189
-
190
- .bundle-search-container {
191
- height: 400px;
192
- padding: 30px 0;
193
- }
194
- </style>
195
- ```
@@ -1,23 +0,0 @@
1
- ```vue
2
- <template>
3
- <div>
4
- <div class="light">
5
- <PremiumPill />
6
- </div>
7
- <div class="dark">
8
- <PremiumPill :isDarkMode="true" />
9
- </div>
10
- </div>
11
- </template>
12
-
13
- <style>
14
- .light,
15
- .dark {
16
- padding: 30px;
17
- }
18
-
19
- .dark {
20
- background-color: #1f3545;
21
- }
22
- </style>
23
- ```