@pocketprep/ui-kit 3.5.0 → 3.5.2
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.
- package/README.md +2 -2
- package/dist/@pocketprep/ui-kit.css +1 -0
- package/dist/@pocketprep/ui-kit.js +14335 -14870
- package/dist/@pocketprep/ui-kit.js.map +1 -1
- package/dist/@pocketprep/ui-kit.umd.cjs +11 -11
- package/dist/@pocketprep/ui-kit.umd.cjs.map +1 -1
- package/eslint.config.ts +111 -0
- package/lib/components/Banners/Banner.vue +2 -2
- package/lib/components/Bundles/BundleList.vue +1 -1
- package/lib/components/Bundles/BundleSearch.vue +123 -121
- package/lib/components/Bundles/PremiumPill.vue +2 -2
- package/lib/components/Buttons/Button.vue +19 -18
- package/lib/components/Buttons/Link.vue +9 -8
- package/lib/components/Buttons/Tab.vue +4 -3
- package/lib/components/Calendar/Calendar.vue +14 -2
- package/lib/components/Charts/Bar.vue +3 -3
- package/lib/components/Charts/Pie.vue +4 -4
- package/lib/components/Controls/SegmentControl.vue +8 -7
- package/lib/components/Controls/Slider.vue +2 -3
- package/lib/components/Controls/ToggleSwitch.vue +3 -2
- package/lib/components/EmptyStates/EmptyState.vue +3 -2
- package/lib/components/Exams/ExamCard.vue +3 -3
- package/lib/components/Exams/ExamMenuCard.vue +2 -2
- package/lib/components/Filters/FilterDropdown.vue +2 -2
- package/lib/components/Filters/FilterOptions.vue +2 -2
- package/lib/components/Forms/Checkbox.vue +2 -2
- package/lib/components/Forms/CheckboxOption.vue +2 -2
- package/lib/components/Forms/Errors.vue +2 -2
- package/lib/components/Forms/Input.vue +2 -2
- package/lib/components/Forms/Radio.vue +37 -39
- package/lib/components/Forms/RadioButton.vue +1 -1
- package/lib/components/Forms/Select.vue +7 -6
- package/lib/components/Forms/Textarea.vue +2 -2
- package/lib/components/Icons/Icon.vue +1 -0
- package/lib/components/Icons/IconEdit.vue +4 -2
- package/lib/components/Icons/IconFullViewActive.vue +1 -1
- package/lib/components/Icons/IconLoading2.vue +1 -3
- package/lib/components/Loaders/SkeletonLoader.vue +2 -2
- package/lib/components/Messaging/InfoMessage.vue +2 -2
- package/lib/components/Modal/Modal.vue +2 -2
- package/lib/components/Modal/ModalContainer.vue +2 -2
- package/lib/components/Onboarding/EmailAuth.vue +5 -5
- package/lib/components/Onboarding/MagicCodeEntry.vue +3 -4
- package/lib/components/Pagination/QuestionReviewPagination.vue +4 -4
- package/lib/components/Pagination/TablePagination.vue +2 -2
- package/lib/components/Quiz/FlagToggle.vue +2 -2
- package/lib/components/Quiz/GlobalMetricsToggle.vue +3 -2
- package/lib/components/Quiz/KeyboardShortcutsButton.vue +1 -1
- package/lib/components/Quiz/KeyboardShortcutsModal.vue +1 -1
- package/lib/components/Quiz/Question/ChoicesContainer.vue +4 -3
- package/lib/components/Quiz/Question/DropdownExplanation.vue +2 -2
- package/lib/components/Quiz/Question/Explanation.vue +2 -2
- package/lib/components/Quiz/Question/MatrixChoicesContainer.vue +12 -17
- package/lib/components/Quiz/Question/MatrixRadioGroup.vue +2 -2
- package/lib/components/Quiz/Question/MobileMatrixChoicesContainer.vue +19 -26
- package/lib/components/Quiz/Question/MobileMatrixRadioGroup.vue +7 -5
- package/lib/components/Quiz/Question/PassageAndImage.vue +2 -2
- package/lib/components/Quiz/Question/PassageAndImageDropdown.vue +7 -6
- package/lib/components/Quiz/Question/Paywall.vue +2 -2
- package/lib/components/Quiz/Question/QuestionContext.vue +2 -3
- package/lib/components/Quiz/Question/StatsSummary.vue +2 -2
- package/lib/components/Quiz/Question/Summary.vue +2 -2
- package/lib/components/Quiz/Question.vue +29 -28
- package/lib/components/Quiz/QuizContainer.vue +31 -37
- package/lib/components/Quiz/QuizProgress.vue +73 -77
- package/lib/components/Quiz/QuizProgressBar.vue +3 -2
- package/lib/components/Search/Pill.vue +2 -2
- package/lib/components/Search/Search.vue +2 -2
- package/lib/components/SidePanels/SidePanel.vue +8 -3
- package/lib/components/Tables/Table.vue +4 -3
- package/lib/components/Tables/TableActions.vue +3 -3
- package/lib/components/Tags/Tag.vue +2 -2
- package/lib/components/Toasts/Toast.vue +5 -3
- package/lib/components/Tooltips/OverflowTooltip.vue +2 -2
- package/lib/components/Tooltips/Tooltip.vue +2 -2
- package/lib/directives.ts +1 -1
- package/lib/pocketprep-export.module.scss +3 -2
- package/lib/pocketprep.scss +2 -2
- package/lib/styles/_breakpoints.scss +6 -12
- package/lib/styles/_colors.scss +0 -1
- package/package.json +36 -27
- package/stylelint.config.js +38 -0
- package/.eslintrc.cjs +0 -74
- package/dist/style.css +0 -1
- package/stylelint.config.cjs +0 -22
|
@@ -8,23 +8,17 @@ $teddy-bear: 319;
|
|
|
8
8
|
@mixin breakpoint($point) {
|
|
9
9
|
@if $point == 'polar-bear' {
|
|
10
10
|
@media (max-width: ($polar-bear + 'px')) { @content; }
|
|
11
|
-
}
|
|
12
|
-
@else if $point == 'grizzly-bear' {
|
|
11
|
+
} @else if $point == 'grizzly-bear' {
|
|
13
12
|
@media (max-width: ($grizzly-bear + 'px')) { @content; }
|
|
14
|
-
}
|
|
15
|
-
@else if $point == 'brown-bear' {
|
|
13
|
+
} @else if $point == 'brown-bear' {
|
|
16
14
|
@media (max-width: ($brown-bear + 'px')) { @content; }
|
|
17
|
-
}
|
|
18
|
-
@else if $point == 'black-bear' {
|
|
15
|
+
} @else if $point == 'black-bear' {
|
|
19
16
|
@media (max-width: ($black-bear + 'px')) { @content; }
|
|
20
|
-
}
|
|
21
|
-
@else if $point == 'koala-bear' {
|
|
17
|
+
} @else if $point == 'koala-bear' {
|
|
22
18
|
@media (max-width: ($koala-bear + 'px')) { @content; }
|
|
23
|
-
}
|
|
24
|
-
@else if $point == 'teddy-bear' {
|
|
19
|
+
} @else if $point == 'teddy-bear' {
|
|
25
20
|
@media (max-width: ($teddy-bear + 'px')) { @content; }
|
|
26
|
-
}
|
|
27
|
-
@else {
|
|
21
|
+
} @else {
|
|
28
22
|
@media (max-width: $point) { @content; }
|
|
29
23
|
}
|
|
30
24
|
}
|
package/lib/styles/_colors.scss
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pocketprep/ui-kit",
|
|
3
|
-
"version": "3.5.
|
|
3
|
+
"version": "3.5.2",
|
|
4
4
|
"description": "Pocket Prep UI Kit",
|
|
5
5
|
"author": "pocketprep",
|
|
6
6
|
"scripts": {
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
"build": "run-p type-check build-only",
|
|
9
9
|
"build-only": "vite build && vite build --config vite.config.docs.ts",
|
|
10
10
|
"preview": "vite preview --config vite.config.docs.ts",
|
|
11
|
-
"lint": "eslint .
|
|
11
|
+
"lint": "eslint . && stylelint '**/*.{scss,vue}'",
|
|
12
12
|
"type-check": "vue-tsc --noEmit -p tsconfig.cypress-ct.json --composite false",
|
|
13
13
|
"test:e2e": "start-server-and-test preview :4173 'cypress run --e2e'",
|
|
14
14
|
"test:e2e:dev": "start-server-and-test 'vite dev --port 4173' :4173 'cypress open --e2e'",
|
|
@@ -25,8 +25,8 @@
|
|
|
25
25
|
"files": [
|
|
26
26
|
"lib",
|
|
27
27
|
"dist",
|
|
28
|
-
".
|
|
29
|
-
"stylelint.config.
|
|
28
|
+
"eslint.config.ts",
|
|
29
|
+
"stylelint.config.js",
|
|
30
30
|
"index.d.ts"
|
|
31
31
|
],
|
|
32
32
|
"exports": {
|
|
@@ -41,8 +41,8 @@
|
|
|
41
41
|
}
|
|
42
42
|
},
|
|
43
43
|
"./styles": {
|
|
44
|
-
"import": "./dist/
|
|
45
|
-
"require": "./dist/
|
|
44
|
+
"import": "./dist/@pocketprep/ui-kit.css",
|
|
45
|
+
"require": "./dist/@pocketprep/ui-kit.css"
|
|
46
46
|
},
|
|
47
47
|
"./pocketprep.scss": {
|
|
48
48
|
"import": "./lib/pocketprep.scss",
|
|
@@ -67,6 +67,10 @@
|
|
|
67
67
|
"./colors": {
|
|
68
68
|
"import": "./lib/styles/_colors.scss",
|
|
69
69
|
"require": "./lib/styles/_colors.scss"
|
|
70
|
+
},
|
|
71
|
+
"./eslint.config": {
|
|
72
|
+
"import": "./eslint.config.ts",
|
|
73
|
+
"require": "./eslint.config.ts"
|
|
70
74
|
}
|
|
71
75
|
},
|
|
72
76
|
"dependencies": {
|
|
@@ -74,29 +78,34 @@
|
|
|
74
78
|
"litepicker": "2.0.12",
|
|
75
79
|
"resize-observer": "1.0.4",
|
|
76
80
|
"vue": "3.5.13",
|
|
77
|
-
"vue-facing-decorator": "
|
|
78
|
-
"vue-router": "4.
|
|
81
|
+
"vue-facing-decorator": "3.0.4",
|
|
82
|
+
"vue-router": "4.5.0"
|
|
79
83
|
},
|
|
80
84
|
"devDependencies": {
|
|
81
|
-
"@pocketprep/types": "1.14.
|
|
82
|
-
"@
|
|
83
|
-
"@
|
|
84
|
-
"@
|
|
85
|
-
"@
|
|
86
|
-
"@vue/
|
|
87
|
-
"
|
|
88
|
-
"
|
|
89
|
-
"eslint
|
|
90
|
-
"eslint-plugin-
|
|
91
|
-
"
|
|
92
|
-
"
|
|
93
|
-
"
|
|
94
|
-
"
|
|
95
|
-
"
|
|
96
|
-
"
|
|
97
|
-
"
|
|
98
|
-
"
|
|
99
|
-
"vue
|
|
85
|
+
"@pocketprep/types": "1.14.43",
|
|
86
|
+
"@stylistic/eslint-plugin-ts": "4.2.0",
|
|
87
|
+
"@tsconfig/node22": "22.0.0",
|
|
88
|
+
"@types/node": "22.13.10",
|
|
89
|
+
"@vitejs/plugin-vue": "5.2.3",
|
|
90
|
+
"@vue/eslint-config-typescript": "14.5.0",
|
|
91
|
+
"@vue/tsconfig": "0.7.0",
|
|
92
|
+
"cypress": "14.2.0",
|
|
93
|
+
"eslint": "9.22.0",
|
|
94
|
+
"eslint-plugin-cypress": "4.2.0",
|
|
95
|
+
"eslint-plugin-vue": "10.0.0",
|
|
96
|
+
"jiti": "2.4.2",
|
|
97
|
+
"npm-run-all2": "7.0.2",
|
|
98
|
+
"postcss-html": "1.8.0",
|
|
99
|
+
"sass": "1.86.0",
|
|
100
|
+
"start-server-and-test": "2.0.11",
|
|
101
|
+
"stylelint": "16.16.0",
|
|
102
|
+
"stylelint-config-recommended-scss": "14.1.0",
|
|
103
|
+
"stylelint-config-recommended-vue": "1.6.0",
|
|
104
|
+
"stylelint-config-standard-scss": "14.0.0",
|
|
105
|
+
"typescript": "5.8.2",
|
|
106
|
+
"vite": "6.2.2",
|
|
107
|
+
"vite-plugin-vue-devtools": "7.7.2",
|
|
108
|
+
"vue-tsc": "2.2.8",
|
|
100
109
|
"yorkie": "2.0.0"
|
|
101
110
|
},
|
|
102
111
|
"bugs": {
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
/** @type {import('stylelint').Config} */
|
|
2
|
+
export default {
|
|
3
|
+
'extends': [
|
|
4
|
+
'stylelint-config-standard-scss',
|
|
5
|
+
'stylelint-config-recommended-vue',
|
|
6
|
+
],
|
|
7
|
+
'rules': {
|
|
8
|
+
'at-rule-no-unknown': null,
|
|
9
|
+
'selector-pseudo-class-no-unknown': [
|
|
10
|
+
true,
|
|
11
|
+
{
|
|
12
|
+
'ignorePseudoClasses': [ 'export', 'deep' ],
|
|
13
|
+
},
|
|
14
|
+
],
|
|
15
|
+
'selector-pseudo-element-no-unknown': null,
|
|
16
|
+
'selector-type-no-unknown': null,
|
|
17
|
+
'selector-class-pattern': null,
|
|
18
|
+
'no-descending-specificity': null,
|
|
19
|
+
'property-no-unknown': null,
|
|
20
|
+
'alpha-value-notation': 'number',
|
|
21
|
+
'scss/at-import-no-partial-leading-underscore': null,
|
|
22
|
+
'scss/no-global-function-names': null,
|
|
23
|
+
'declaration-property-value-no-unknown': null,
|
|
24
|
+
'scss/declaration-property-value-no-unknown': true,
|
|
25
|
+
'shorthand-property-no-redundant-values': null,
|
|
26
|
+
'scss/at-else-closing-brace-newline-after': null,
|
|
27
|
+
'scss/dollar-variable-colon-space-after': null,
|
|
28
|
+
'scss/at-if-closing-brace-newline-after': null,
|
|
29
|
+
'scss/at-else-closing-brace-space-after': null,
|
|
30
|
+
'scss/at-if-closing-brace-space-after': null,
|
|
31
|
+
'color-function-notation': null,
|
|
32
|
+
'length-zero-no-unit': null,
|
|
33
|
+
'declaration-block-no-redundant-longhand-properties': null,
|
|
34
|
+
'rule-empty-line-before': null,
|
|
35
|
+
'media-feature-range-notation': null,
|
|
36
|
+
'declaration-property-value-no-unknown': null,
|
|
37
|
+
},
|
|
38
|
+
}
|
package/.eslintrc.cjs
DELETED
|
@@ -1,74 +0,0 @@
|
|
|
1
|
-
module.exports = {
|
|
2
|
-
root: true,
|
|
3
|
-
globals: {
|
|
4
|
-
NodeJS: 'readonly',
|
|
5
|
-
},
|
|
6
|
-
env: {
|
|
7
|
-
node: true,
|
|
8
|
-
},
|
|
9
|
-
extends: [
|
|
10
|
-
'plugin:@typescript-eslint/recommended',
|
|
11
|
-
'plugin:vue/vue3-essential',
|
|
12
|
-
'eslint:recommended',
|
|
13
|
-
'@vue/eslint-config-typescript',
|
|
14
|
-
],
|
|
15
|
-
ignorePatterns: [ 'docs' ],
|
|
16
|
-
rules: {
|
|
17
|
-
'quotes': [ 'error', 'single' ],
|
|
18
|
-
'comma-dangle': [ 'error', {
|
|
19
|
-
'arrays': 'always-multiline',
|
|
20
|
-
'objects': 'always-multiline',
|
|
21
|
-
'imports': 'always-multiline',
|
|
22
|
-
'exports': 'always-multiline',
|
|
23
|
-
'functions': 'never',
|
|
24
|
-
}],
|
|
25
|
-
'semi': [ 'error', 'never' ],
|
|
26
|
-
'no-console': 'warn',
|
|
27
|
-
'max-len': [ 'error', { 'code': 120 }],
|
|
28
|
-
'brace-style': 'error',
|
|
29
|
-
'keyword-spacing': [ 'error', { 'before': true, 'after': true }],
|
|
30
|
-
'object-curly-spacing': [ 'error', 'always' ],
|
|
31
|
-
'array-bracket-spacing': [ 'error', 'always', { 'objectsInArrays': false, 'arraysInArrays': false }],
|
|
32
|
-
'space-in-parens': [ 'error', 'never' ],
|
|
33
|
-
'space-before-function-paren': [ 'error', 'always' ],
|
|
34
|
-
'space-infix-ops': [ 'error', { 'int32Hint': true }],
|
|
35
|
-
'prefer-const': 'error',
|
|
36
|
-
'no-shadow': 'error',
|
|
37
|
-
'vue/html-indent': [ 'error', 4 ],
|
|
38
|
-
'vue/max-attributes-per-line': [ 'error', { 'singleline': 2 }],
|
|
39
|
-
'vue/no-v-html': 'off',
|
|
40
|
-
'vue/component-name-in-template-casing': [ 'error', 'PascalCase', {
|
|
41
|
-
'registeredComponentsOnly': false,
|
|
42
|
-
}],
|
|
43
|
-
'vue/multi-word-component-names': 'off',
|
|
44
|
-
'indent': 'off',
|
|
45
|
-
'no-unused-vars': 'off', // We use @typescript-eslint/no-unused-vars instead
|
|
46
|
-
'no-template-curly-in-string' : 'error',
|
|
47
|
-
'array-callback-return': [ 'error', { 'allowImplicit': true }],
|
|
48
|
-
'block-scoped-var': 'error',
|
|
49
|
-
'dot-location': [ 'error', 'property' ],
|
|
50
|
-
'eqeqeq': 'error',
|
|
51
|
-
'no-implicit-globals': [ 'error', { 'lexicalBindings': true }],
|
|
52
|
-
'@typescript-eslint/indent': [ 'error', 4 ],
|
|
53
|
-
'@typescript-eslint/member-delimiter-style': [ 'error', { 'multiline': { delimiter: 'none' } }],
|
|
54
|
-
'@typescript-eslint/no-angle-bracket-type-assertion': 'off',
|
|
55
|
-
'@typescript-eslint/explicit-function-return-type': 'off',
|
|
56
|
-
'@typescript-eslint/explicit-member-accessibility': 'off',
|
|
57
|
-
'@typescript-eslint/no-var-requires': 'off',
|
|
58
|
-
'@typescript-eslint/explicit-module-boundary-types': 'off',
|
|
59
|
-
},
|
|
60
|
-
overrides: [
|
|
61
|
-
{
|
|
62
|
-
files: [
|
|
63
|
-
'**/__tests__/*.{cy,spec}.{js,ts,jsx,tsx}',
|
|
64
|
-
'cypress/e2e/**/*.{cy,spec}.{js,ts,jsx,tsx}',
|
|
65
|
-
],
|
|
66
|
-
'extends': [
|
|
67
|
-
'plugin:cypress/recommended',
|
|
68
|
-
],
|
|
69
|
-
},
|
|
70
|
-
],
|
|
71
|
-
parserOptions: {
|
|
72
|
-
ecmaVersion: 'latest',
|
|
73
|
-
},
|
|
74
|
-
}
|