@fastkit/vui 0.12.8 → 0.12.10

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 (130) hide show
  1. package/LICENSE +1 -1
  2. package/dist/vui.css +2522 -2723
  3. package/dist/vui.css.map +1 -0
  4. package/dist/vui.d.ts +8760 -10172
  5. package/dist/vui.mjs +1704 -2490
  6. package/dist/vui.mjs.map +1 -0
  7. package/package.json +69 -61
  8. package/src/components/VApp/VApp.tsx +3 -1
  9. package/src/components/VAvatar/VAvatar.scss +62 -60
  10. package/src/components/VAvatar/VAvatar.tsx +6 -1
  11. package/src/components/VBreadcrumbs/VBreadcrumbs.scss +53 -51
  12. package/src/components/VBusyImage/VBusyImage.scss +50 -51
  13. package/src/components/VButton/VButton.scss +120 -118
  14. package/src/components/VButton/VButton.tsx +6 -1
  15. package/src/components/VButton/VButtonGroup.scss +21 -19
  16. package/src/components/VCard/VCard.scss +41 -42
  17. package/src/components/VCard/VCard.tsx +5 -0
  18. package/src/components/VCard/VCardActions.scss +9 -7
  19. package/src/components/VCard/VCardContent.scss +4 -2
  20. package/src/components/VCheckable/VCheckable.scss +79 -80
  21. package/src/components/VCheckable/VCheckable.tsx +1 -1
  22. package/src/components/VCheckbox/VCheckbox.scss +50 -48
  23. package/src/components/VCheckbox/VCheckbox.tsx +2 -2
  24. package/src/components/VChip/VChip.scss +61 -59
  25. package/src/components/VChip/VChip.tsx +6 -1
  26. package/src/components/VContentSwitcher/VContentSwitcher.scss +52 -50
  27. package/src/components/VControlField/VControlField.scss +148 -146
  28. package/src/components/VControlField/VControlField.tsx +3 -3
  29. package/src/components/VDataTable/VDataTable.scss +167 -168
  30. package/src/components/VDrawerLayout/VDrawerLayout.scss +27 -25
  31. package/src/components/VForm/VForm.tsx +3 -4
  32. package/src/components/VFormControl/VFormControl.scss +84 -82
  33. package/src/components/VFormControl/VFormControl.tsx +2 -3
  34. package/src/components/VGrid/VGridContainer.scss +5 -3
  35. package/src/components/VGrid/VGridItem.scss +4 -2
  36. package/src/components/VHero/VHero.scss +23 -21
  37. package/src/components/VIcon/VIcon.scss +19 -17
  38. package/src/components/VListTile/VListTile.scss +60 -58
  39. package/src/components/VListTile/VListTile.tsx +5 -0
  40. package/src/components/VNavigation/VNavigation.scss +12 -10
  41. package/src/components/VNavigation/VNavigationItem.scss +21 -19
  42. package/src/components/VNavigation/VNavigationItem.tsx +5 -0
  43. package/src/components/VOption/VOption.scss +55 -56
  44. package/src/components/VOption/VOption.tsx +2 -2
  45. package/src/components/VOptionGroup/VOptionGroup.scss +14 -12
  46. package/src/components/VOptionGroup/VOptionGroup.tsx +3 -1
  47. package/src/components/VPagination/VPagination.scss +81 -79
  48. package/src/components/VPagination/VPagination.tsx +1 -1
  49. package/src/components/VPaper/VPaper.scss +43 -41
  50. package/src/components/VRadio/VRadio.scss +52 -53
  51. package/src/components/VRadio/VRadio.tsx +2 -2
  52. package/src/components/VSelect/VSelect.scss +77 -75
  53. package/src/components/VSelect/VSelect.tsx +5 -2
  54. package/src/components/VSkeltonLoader/VSkeltonLoaderBone.scss +24 -22
  55. package/src/components/VSwitch/VSwitch.scss +96 -94
  56. package/src/components/VSwitch/VSwitch.tsx +2 -2
  57. package/src/components/VTabs/VTab.scss +59 -57
  58. package/src/components/VTabs/VTabs.scss +41 -39
  59. package/src/components/VTabs/VTabs.tsx +5 -2
  60. package/src/components/VTextCounter/VTextCounter.scss +4 -2
  61. package/src/components/VTextField/VTextField.scss +37 -35
  62. package/src/components/VTextField/VTextField.tsx +2 -2
  63. package/src/components/VTextarea/VTextarea.scss +33 -31
  64. package/src/components/VTextarea/VTextarea.tsx +2 -2
  65. package/src/components/VToolbar/VToolbar.scss +19 -17
  66. package/src/components/VToolbar/VToolbarEdge.scss +21 -19
  67. package/src/components/VToolbar/VToolbarMenu.scss +6 -4
  68. package/src/components/VToolbar/VToolbarMenu.tsx +5 -0
  69. package/src/components/VToolbar/VToolbarTitle.scss +19 -17
  70. package/src/components/index.ts +3 -1
  71. package/src/components/kits.ts +1 -1
  72. package/src/composables/control.ts +1 -1
  73. package/src/composables/form-selector.scss +20 -18
  74. package/src/composables/form-selector.tsx +5 -3
  75. package/src/index.ts +13 -2
  76. package/src/injections.ts +1 -1
  77. package/src/plugin.tsx +4 -4
  78. package/src/schemes/control.ts +2 -2
  79. package/src/service.tsx +5 -5
  80. package/src/styles/core/functions.scss +2 -2
  81. package/src/styles/index.scss +23 -9
  82. package/dist/tool/index.d.ts +0 -2
  83. package/dist/tool/index.d.ts.map +0 -1
  84. package/dist/tool/index.mjs +0 -193
  85. package/dist/tool/vite-plugin.d.ts +0 -25
  86. package/dist/tool/vite-plugin.d.ts.map +0 -1
  87. package/src/.DS_Store +0 -0
  88. package/src/assets/builtins/color-scheme.ts +0 -9
  89. package/src/assets/builtins/media-match.ts +0 -3
  90. package/src/components/.DS_Store +0 -0
  91. package/src/components/VAvatar/.DS_Store +0 -0
  92. package/src/components/VChip/.DS_Store +0 -0
  93. package/src/components/VSkeltonLoader/.DS_Store +0 -0
  94. package/src/components/VTextField/.DS_Store +0 -0
  95. package/src/components/VWysiwygEditor/.DS_Store +0 -0
  96. package/src/components/VWysiwygEditor/VWysiwygEditor.scss +0 -66
  97. package/src/components/VWysiwygEditor/VWysiwygEditor.tsx +0 -354
  98. package/src/components/VWysiwygEditor/extensions/.DS_Store +0 -0
  99. package/src/components/VWysiwygEditor/extensions/color.ts +0 -72
  100. package/src/components/VWysiwygEditor/extensions/index.ts +0 -2
  101. package/src/components/VWysiwygEditor/extensions/linter/.DS_Store +0 -0
  102. package/src/components/VWysiwygEditor/extensions/linter/Linter.scss +0 -140
  103. package/src/components/VWysiwygEditor/extensions/linter/Linter.tsx +0 -210
  104. package/src/components/VWysiwygEditor/extensions/linter/LinterPlugin.ts +0 -65
  105. package/src/components/VWysiwygEditor/extensions/linter/index.ts +0 -5
  106. package/src/components/VWysiwygEditor/extensions/linter/plugins/BadWords.tsx +0 -50
  107. package/src/components/VWysiwygEditor/extensions/linter/plugins/HeadingLevel.ts +0 -39
  108. package/src/components/VWysiwygEditor/extensions/linter/plugins/Punctuation.ts +0 -49
  109. package/src/components/VWysiwygEditor/extensions/linter/plugins/index.ts +0 -3
  110. package/src/components/VWysiwygEditor/extensions/linter/utils.ts +0 -28
  111. package/src/components/VWysiwygEditor/index.ts +0 -4
  112. package/src/components/VWysiwygEditor/schemes.ts +0 -251
  113. package/src/components/VWysiwygEditor/tools/bullet-list.ts +0 -18
  114. package/src/components/VWysiwygEditor/tools/color.scss +0 -140
  115. package/src/components/VWysiwygEditor/tools/color.tsx +0 -90
  116. package/src/components/VWysiwygEditor/tools/format-bold.ts +0 -19
  117. package/src/components/VWysiwygEditor/tools/format-italic.ts +0 -18
  118. package/src/components/VWysiwygEditor/tools/format-underline.ts +0 -18
  119. package/src/components/VWysiwygEditor/tools/history.ts +0 -26
  120. package/src/components/VWysiwygEditor/tools/index.ts +0 -8
  121. package/src/components/VWysiwygEditor/tools/link.ts +0 -57
  122. package/src/components/VWysiwygEditor/tools/ordered-list.ts +0 -21
  123. package/src/tool/index.ts +0 -2
  124. package/src/tool/vite-plugin.ts +0 -266
  125. /package/{src/styles → dist}/after-effects/display-flow.scss +0 -0
  126. /package/{src/styles → dist}/after-effects/spacing.scss +0 -0
  127. /package/{src/styles → dist}/after-effects/text.scss +0 -0
  128. /package/{src/styles → dist}/after-effects.scss +0 -0
  129. /package/dist/{assets/builtins → builtins}/color-scheme.ts +0 -0
  130. /package/dist/{assets/builtins → builtins}/media-match.ts +0 -0
package/package.json CHANGED
@@ -1,35 +1,41 @@
1
1
  {
2
2
  "name": "@fastkit/vui",
3
- "version": "0.12.8",
3
+ "version": "0.12.10",
4
4
  "description": "A simple, extensible UI kit for Vue applications.",
5
- "buildOptions": {
6
- "name": "Vui",
7
- "tool": true
5
+ "keywords": [
6
+ "fastkit",
7
+ "vue",
8
+ "ui",
9
+ "component"
10
+ ],
11
+ "homepage": "https://github.com/dadajam4/fastkit/tree/dev/packages/vui#readme",
12
+ "bugs": {
13
+ "url": "https://github.com/dadajam4/fastkit/issues"
8
14
  },
9
- "_docs": {
10
- "scope": "vue",
11
- "feature": "ui",
12
- "description": {
13
- "en": "A simple, extensible UI kit for Vue applications.",
14
- "ja": "Vueアプリケーション用のシンプルで拡張可能なUIキット。"
15
- }
15
+ "repository": {
16
+ "type": "git",
17
+ "url": "git+https://github.com/dadajam4/fastkit.git"
16
18
  },
17
- "main": "./dist/vui.mjs",
19
+ "license": "MIT",
20
+ "author": "dadajam4",
21
+ "type": "module",
18
22
  "exports": {
23
+ "./package.json": "./package.json",
19
24
  "./vui.css": "./dist/vui.css",
20
- "./tool": {
21
- "import": "./dist/tool/index.mjs",
22
- "types": "./dist/tool/index.d.ts"
25
+ ".": {
26
+ "types": "./dist/vui.d.ts",
27
+ "import": {
28
+ "default": "./dist/vui.mjs"
29
+ }
23
30
  },
24
- ".": "./dist/vui.mjs"
31
+ "./*": "./dist/*"
25
32
  },
33
+ "main": "./dist/vui.mjs",
34
+ "types": "./dist/vui.d.ts",
26
35
  "typesVersions": {
27
36
  "*": {
28
37
  ".": [
29
38
  "./dist/vui.d.ts"
30
- ],
31
- "tool": [
32
- "./dist/tool/index.d.ts"
33
39
  ]
34
40
  }
35
41
  },
@@ -37,49 +43,51 @@
37
43
  "dist",
38
44
  "src"
39
45
  ],
40
- "types": "dist/vui.d.ts",
41
- "repository": {
42
- "type": "git",
43
- "url": "git+https://github.com/dadajam4/fastkit.git"
44
- },
45
- "keywords": [
46
- "fastkit",
47
- "vue",
48
- "ui",
49
- "component"
50
- ],
51
- "author": "dadajam4",
52
- "license": "MIT",
53
- "bugs": {
54
- "url": "https://github.com/dadajam4/fastkit/issues"
46
+ "dependencies": {
47
+ "@fastkit/color-scheme": "0.12.10",
48
+ "@fastkit/color-scheme-gen": "0.12.10",
49
+ "@fastkit/icon-font": "0.12.10",
50
+ "@fastkit/helpers": "0.12.10",
51
+ "@fastkit/media-match": "0.12.10",
52
+ "@fastkit/media-match-gen": "0.12.10",
53
+ "@fastkit/rules": "0.12.10",
54
+ "@fastkit/tiny-logger": "0.12.10",
55
+ "@fastkit/stylebase": "0.12.10",
56
+ "@fastkit/vue-app-layout": "0.12.10",
57
+ "@fastkit/vue-form-control": "0.12.10",
58
+ "@fastkit/vue-color-scheme": "0.12.10",
59
+ "@fastkit/vue-loading": "0.12.10",
60
+ "@fastkit/vue-media-match": "0.12.10",
61
+ "@fastkit/vue-scroller": "0.12.10",
62
+ "@fastkit/vue-stack": "0.12.10",
63
+ "@fastkit/vue-utils": "0.12.10"
55
64
  },
56
- "homepage": "https://github.com/dadajam4/fastkit/tree/dev/packages/vui#readme",
57
65
  "peerDependencies": {
58
- "vite": "^4.0.4",
59
- "vue": "^3.2.45"
66
+ "vue": "^3.2.0",
67
+ "vue-router": "^4.1.0"
60
68
  },
61
- "dependencies": {
62
- "@fastkit/color-scheme": "0.12.8",
63
- "@fastkit/icon-font": "0.12.8",
64
- "@fastkit/tiny-logger": "0.12.8",
65
- "@fastkit/vite-kit": "0.12.8",
66
- "@fastkit/vue-kit": "0.12.8",
67
- "@tiptap/extension-link": "^2.0.0-beta.209",
68
- "@tiptap/extension-text-style": "^2.0.0-beta.209",
69
- "@tiptap/extension-underline": "^2.0.0-beta.209",
70
- "@tiptap/starter-kit": "^2.0.0-beta.209",
71
- "@tiptap/vue-3": "^2.0.0-beta.209",
72
- "eta": "^1.12.3",
73
- "fs-extra": "^11.1.0",
74
- "prosemirror-commands": "^1.5.0",
75
- "prosemirror-dropcursor": "^1.6.1",
76
- "prosemirror-gapcursor": "^1.3.1",
77
- "prosemirror-history": "^1.3.0",
78
- "prosemirror-keymap": "^1.2.0",
79
- "prosemirror-model": "^1.18.3",
80
- "prosemirror-schema-list": "^1.2.2",
81
- "prosemirror-state": "^1.4.2",
82
- "prosemirror-transform": "^1.7.0",
83
- "prosemirror-view": "^1.29.1"
69
+ "buildOptions": {
70
+ "name": "Vui"
71
+ },
72
+ "_docs": {
73
+ "scope": "vue",
74
+ "feature": "ui",
75
+ "description": {
76
+ "en": "A simple, extensible UI kit for Vue applications.",
77
+ "ja": "Vueアプリケーション用のシンプルで拡張可能なUIキット。"
78
+ }
79
+ },
80
+ "scripts": {
81
+ "build": "plugboy build",
82
+ "clean": "rm -rf .turbo && rm -rf node_modules && rm -rf dist",
83
+ "eslint": "eslint . --ext ts,tsx,js,vue,html,yaml",
84
+ "eslint:fix": "eslint . --ext ts,tsx,js,vue,html,yaml --fix",
85
+ "format": "pnpm run \"/^(eslint:fix|stylelint:fix)$/\"",
86
+ "lint": "pnpm run \"/^(eslint|stylelint)$/\"",
87
+ "stub": "plugboy stub",
88
+ "stylelint": "stylelint \"**/*.{css,scss,vue,html}\" --allow-empty-input",
89
+ "stylelint:fix": "stylelint \"**/*.{css,scss,vue,html}\" --fix --allow-empty-input",
90
+ "test": "vitest run",
91
+ "typecheck": "tsc --noEmit --skipLibCheck"
84
92
  }
85
- }
93
+ }
@@ -1,5 +1,7 @@
1
1
  import { defineComponent } from 'vue';
2
- import { VAppLayout, VStackRoot, useInjectTheme } from '@fastkit/vue-kit';
2
+ import { VAppLayout } from '@fastkit/vue-app-layout';
3
+ import { VStackRoot } from '@fastkit/vue-stack';
4
+ import { useInjectTheme } from '@fastkit/vue-color-scheme';
3
5
 
4
6
  export const VApp = defineComponent({
5
7
  name: 'VApp',
@@ -1,76 +1,78 @@
1
1
  @use '../../styles/core.scss';
2
2
 
3
- .v-avatar {
4
- @include core.button-reset();
3
+ @layer vui {
4
+ .v-avatar {
5
+ @include core.button-reset();
5
6
 
6
- --avatar-radius: 50%;
7
- --avatar-font-weight: var(--typo-medium-weight);
8
- --avatar-base-font-size: var(--typo-base-size);
9
- --avatar-font-size: var(--avatar-base-font-size);
7
+ --avatar-radius: 50%;
8
+ --avatar-font-weight: var(--typo-medium-weight);
9
+ --avatar-base-font-size: var(--typo-base-size);
10
+ --avatar-font-size: var(--avatar-base-font-size);
10
11
 
11
- display: inline-flex;
12
- flex-basis: var(--avatar-size);
13
- align-items: center;
14
- justify-content: center;
15
- width: var(--avatar-size);
16
- min-width: var(--avatar-size);
17
- height: var(--avatar-size);
18
- overflow: hidden;
19
- font-size: var(--avatar-font-size);
20
- font-weight: var(--avatar-font-weight);
21
- line-height: 1;
22
- text-align: center;
23
- vertical-align: bottom;
24
- cursor: default;
25
- border-style: solid;
26
- border-width: 1px;
27
- border-radius: var(--avatar-radius);
28
- // border-radius: var(--control-field-radius);
12
+ display: inline-flex;
13
+ flex-basis: var(--avatar-size);
14
+ align-items: center;
15
+ justify-content: center;
16
+ width: var(--avatar-size);
17
+ min-width: var(--avatar-size);
18
+ height: var(--avatar-size);
19
+ overflow: hidden;
20
+ font-size: var(--avatar-font-size);
21
+ font-weight: var(--avatar-font-weight);
22
+ line-height: 1;
23
+ text-align: center;
24
+ vertical-align: bottom;
25
+ cursor: default;
26
+ border-style: solid;
27
+ border-width: 1px;
28
+ border-radius: var(--avatar-radius);
29
+ // border-radius: var(--control-field-radius);
29
30
 
30
- --shadow-color: rgba(0, 0, 0, 0) !important; // @TODO layer supports
31
- --focusShadow-color: rgba(0, 0, 0, 0) !important; // @TODO layer supports
31
+ --shadow-color: rgba(0, 0, 0, 0) !important; // @TODO layer supports
32
+ --focusShadow-color: rgba(0, 0, 0, 0) !important; // @TODO layer supports
32
33
 
33
- &--clickable {
34
- cursor: pointer;
35
- }
34
+ &--clickable {
35
+ cursor: pointer;
36
+ }
36
37
 
37
- &--sm {
38
- --avatar-size: 36px;
39
- --avatar-font-size: calc(var(--avatar-base-font-size) * 0.75);
40
- }
38
+ &--sm {
39
+ --avatar-size: 36px;
40
+ --avatar-font-size: calc(var(--avatar-base-font-size) * 0.75);
41
+ }
41
42
 
42
- &--md {
43
- --avatar-size: 48px;
44
- }
43
+ &--md {
44
+ --avatar-size: 48px;
45
+ }
45
46
 
46
- &--lg {
47
- --avatar-size: 62px;
48
- --avatar-font-size: calc(var(--avatar-base-font-size) * 1.25);
49
- }
47
+ &--lg {
48
+ --avatar-size: 62px;
49
+ --avatar-font-size: calc(var(--avatar-base-font-size) * 1.25);
50
+ }
50
51
 
51
- &--rounded {
52
- --avatar-radius: 4px;
53
- }
52
+ &--rounded {
53
+ --avatar-radius: 4px;
54
+ }
54
55
 
55
- &--tile {
56
- --avatar-radius: 0;
57
- }
56
+ &--tile {
57
+ --avatar-radius: 0;
58
+ }
58
59
 
59
- // &[disabled] {
60
- // pointer-events: none;
60
+ // &[disabled] {
61
+ // pointer-events: none;
61
62
 
62
- // &::before {
63
- // content: none;
64
- // }
65
- // }
66
- // // noop
63
+ // &::before {
64
+ // content: none;
65
+ // }
66
+ // }
67
+ // // noop
67
68
 
68
- img,
69
- &__image {
70
- display: inline-flex;
71
- width: inherit !important;
72
- height: inherit !important;
73
- border-radius: inherit;
74
- object-fit: cover;
69
+ img,
70
+ &__image {
71
+ display: inline-flex;
72
+ width: inherit !important;
73
+ height: inherit !important;
74
+ border-radius: inherit;
75
+ object-fit: cover;
76
+ }
75
77
  }
76
78
  }
@@ -9,9 +9,14 @@ import { colorSchemeProps, useColorClasses } from '@fastkit/vue-color-scheme';
9
9
  import { useVui } from '../../injections';
10
10
  import { VBusyImage } from '../VBusyImage';
11
11
 
12
+ // @TODO Unable to resolve dts for `navigationableInheritProps`.
13
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
14
+ // @ts-ignore
15
+ import { RouteLocationRaw } from 'vue-router';
16
+
12
17
  export const AVATAR_SIZES = ['sm', 'md', 'lg'] as const;
13
18
 
14
- export type AvatarSize = typeof AVATAR_SIZES[number];
19
+ export type AvatarSize = (typeof AVATAR_SIZES)[number];
15
20
 
16
21
  export function createAvatarProps() {
17
22
  return {
@@ -1,61 +1,63 @@
1
- .v-breadcrumbs {
2
- display: block;
3
- margin: 1.5em auto;
4
- font-size: var(--breadcrumbs-font-size);
1
+ @layer vui {
2
+ .v-breadcrumbs {
3
+ display: block;
4
+ margin: 1.5em auto;
5
+ font-size: var(--breadcrumbs-font-size);
5
6
 
6
- &__list {
7
- display: inline-flex;
8
- flex-wrap: wrap;
9
- align-items: center;
10
- padding: 0;
11
- margin: 0;
12
- vertical-align: bottom;
13
- list-style: none;
14
- }
7
+ &__list {
8
+ display: inline-flex;
9
+ flex-wrap: wrap;
10
+ align-items: center;
11
+ padding: 0;
12
+ margin: 0;
13
+ vertical-align: bottom;
14
+ list-style: none;
15
+ }
15
16
 
16
- &__item,
17
- &__divider {
18
- padding: 0;
19
- margin: 0;
20
- list-style: none;
21
- }
17
+ &__item,
18
+ &__divider {
19
+ padding: 0;
20
+ margin: 0;
21
+ list-style: none;
22
+ }
22
23
 
23
- &__link {
24
- display: inline-flex;
25
- align-items: center;
26
- text-decoration: none;
27
- white-space: nowrap;
28
- vertical-align: middle;
29
- }
24
+ &__link {
25
+ display: inline-flex;
26
+ align-items: center;
27
+ text-decoration: none;
28
+ white-space: nowrap;
29
+ vertical-align: middle;
30
+ }
30
31
 
31
- &__item--disabled &__link {
32
- color: inherit;
33
- // color: get-color(text-muted);
34
- pointer-events: none;
35
- }
32
+ &__item--disabled &__link {
33
+ color: inherit;
34
+ // color: get-color(text-muted);
35
+ pointer-events: none;
36
+ }
36
37
 
37
- &__icon {
38
- margin-right: 0.2em;
39
- font-size: 140%;
40
- }
38
+ &__icon {
39
+ margin-right: 0.2em;
40
+ font-size: 140%;
41
+ }
41
42
 
42
- &__divider {
43
- // opacity: 0.3;
44
- position: relative;
45
- top: 1px;
46
- display: flex;
47
- align-items: center;
48
- justify-content: center;
49
- margin: 0 1.25em;
43
+ &__divider {
44
+ // opacity: 0.3;
45
+ position: relative;
46
+ top: 1px;
47
+ display: flex;
48
+ align-items: center;
49
+ justify-content: center;
50
+ margin: 0 1.25em;
50
51
 
51
- &__icon {
52
- display: block;
53
- width: 0.5em;
54
- height: 0.5em;
55
- margin-left: -0.25em;
56
- border-top: solid 1px currentColor;
57
- border-right: solid 1px currentColor;
58
- transform: rotate(45deg);
52
+ &__icon {
53
+ display: block;
54
+ width: 0.5em;
55
+ height: 0.5em;
56
+ margin-left: -0.25em;
57
+ border-top: solid 1px currentColor;
58
+ border-right: solid 1px currentColor;
59
+ transform: rotate(45deg);
60
+ }
59
61
  }
60
62
  }
61
63
  }
@@ -1,58 +1,57 @@
1
- .v-busy-image {
2
- position: relative;
3
- display: inline-block;
4
- max-width: 100%;
5
- vertical-align: bottom;
6
-
7
- &--clickable {
8
- cursor: pointer;
9
- }
10
-
11
- &--cover {
12
- background-repeat: no-repeat;
13
- background-position: center;
14
- background-size: cover;
15
- }
16
-
17
- &--loading::before {
18
- position: absolute;
19
- top: 0;
20
- right: 0;
21
- bottom: 0;
22
- left: 0;
23
- display: block;
24
- content: '';
25
- background: rgba(0, 0, 0, 0.1);
26
- animation: v-tiny-image-blink normal 1.5s infinite ease-in-out;
27
- }
28
-
29
- &__node {
1
+ @layer vui {
2
+ .v-busy-image {
30
3
  position: relative;
31
4
  display: inline-block;
32
5
  max-width: 100%;
33
6
  vertical-align: bottom;
34
- }
35
-
36
- &__slot {
37
- position: absolute;
38
- top: 0;
39
- left: 0;
40
- width: 100%;
41
- height: 100%;
42
- pointer-events: none;
43
- }
44
- }
45
-
46
- @keyframes v-tiny-image-blink {
47
- 0% {
48
- opacity: 1;
49
- }
50
-
51
- 50% {
52
- opacity: 0;
53
- }
54
7
 
55
- 100% {
56
- opacity: 1;
8
+ &--clickable {
9
+ cursor: pointer;
10
+ }
11
+
12
+ &--cover {
13
+ background-repeat: no-repeat;
14
+ background-position: center;
15
+ background-size: cover;
16
+ }
17
+
18
+ &--loading::before {
19
+ position: absolute;
20
+ inset: 0;
21
+ display: block;
22
+ content: '';
23
+ background: rgba(0, 0, 0, 0.1);
24
+ animation: v-tiny-image-blink normal 1.5s infinite ease-in-out;
25
+ }
26
+
27
+ &__node {
28
+ position: relative;
29
+ display: inline-block;
30
+ max-width: 100%;
31
+ vertical-align: bottom;
32
+ }
33
+
34
+ &__slot {
35
+ position: absolute;
36
+ top: 0;
37
+ left: 0;
38
+ width: 100%;
39
+ height: 100%;
40
+ pointer-events: none;
41
+ }
42
+ }
43
+
44
+ @keyframes v-tiny-image-blink {
45
+ 0% {
46
+ opacity: 1;
47
+ }
48
+
49
+ 50% {
50
+ opacity: 0;
51
+ }
52
+
53
+ 100% {
54
+ opacity: 1;
55
+ }
57
56
  }
58
57
  }