@geckou/ui-vue 0.3.1 → 0.5.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 (145) hide show
  1. package/README.md +8 -1
  2. package/dist/components/ArticleList/Card/Artistic.vue.d.ts +10 -0
  3. package/dist/components/ArticleList/Card/Entertainment.vue.d.ts +10 -0
  4. package/dist/components/ArticleList/Card/Gallery.vue.d.ts +10 -0
  5. package/dist/components/ArticleList/Card/Grid.vue.d.ts +11 -0
  6. package/dist/components/ArticleList/Card/News.vue.d.ts +9 -0
  7. package/dist/components/ArticleList/Card/Rounded.vue.d.ts +10 -0
  8. package/dist/components/ArticleList/Card/Row.vue.d.ts +9 -0
  9. package/dist/components/ArticleList/Card/Simple.vue.d.ts +10 -0
  10. package/dist/components/ArticleList/Card/Standard.vue.d.ts +10 -0
  11. package/dist/components/ArticleList/Card/Tile.vue.d.ts +10 -0
  12. package/dist/components/ArticleList/GenericArticleList.vue.d.ts +11 -0
  13. package/dist/components/ArticleList/List/Artistic.vue.d.ts +8 -0
  14. package/dist/components/ArticleList/List/Entertainment.vue.d.ts +8 -0
  15. package/dist/components/ArticleList/List/Gallery.vue.d.ts +8 -0
  16. package/dist/components/ArticleList/List/Grid.vue.d.ts +11 -0
  17. package/dist/components/ArticleList/List/News.vue.d.ts +8 -0
  18. package/dist/components/ArticleList/List/Rounded.vue.d.ts +8 -0
  19. package/dist/components/ArticleList/List/Row.vue.d.ts +8 -0
  20. package/dist/components/ArticleList/List/Simple.vue.d.ts +8 -0
  21. package/dist/components/ArticleList/List/Standard.vue.d.ts +8 -0
  22. package/dist/components/ArticleList/List/Tile.vue.d.ts +8 -0
  23. package/dist/components/ArticleList/Parts/AuthorInfo.vue.d.ts +31 -0
  24. package/dist/components/ArticleList/Parts/CardContainer.vue.d.ts +20 -0
  25. package/dist/components/ArticleList/Parts/CardHeading.vue.d.ts +12 -0
  26. package/dist/components/ArticleList/Parts/CategoryList.vue.d.ts +19 -0
  27. package/dist/components/ArticleList/Parts/ExcerptText.vue.d.ts +12 -0
  28. package/dist/components/ArticleList/Parts/MetadataList.vue.d.ts +32 -0
  29. package/dist/components/ArticleList/Parts/NoImage.vue.d.ts +2 -0
  30. package/dist/components/ArticleList/Parts/PostedDate.vue.d.ts +14 -0
  31. package/dist/components/ArticleList/Parts/TagList.vue.d.ts +18 -0
  32. package/dist/components/ArticleList/Parts/ThumbnailImage.vue.d.ts +17 -0
  33. package/dist/components/BasicButton.vue.d.ts +26 -0
  34. package/dist/components/CheckBox.vue.d.ts +34 -0
  35. package/dist/components/CheckBoxes.vue.d.ts +18 -0
  36. package/dist/components/CheckButton.vue.d.ts +31 -0
  37. package/dist/components/DatePicker.vue.d.ts +27 -0
  38. package/dist/components/DateRangePicker.vue.d.ts +31 -0
  39. package/dist/components/DateSelector.vue.d.ts +17 -0
  40. package/dist/components/DropdownUi.vue.d.ts +37 -0
  41. package/dist/components/ErrorMessage.vue.d.ts +9 -0
  42. package/dist/components/Icon/CalendarIcon.vue.d.ts +2 -0
  43. package/dist/components/Icon/CheckIcon.vue.d.ts +2 -0
  44. package/dist/components/Icon/CloseIcon.vue.d.ts +2 -0
  45. package/dist/components/Icon/Folder.vue.d.ts +2 -0
  46. package/dist/components/Icon/Image.vue.d.ts +2 -0
  47. package/dist/components/Icon/KeyboardArrowDownIcon.vue.d.ts +2 -0
  48. package/dist/components/Icon/Tag.vue.d.ts +2 -0
  49. package/dist/components/InputBox.vue.d.ts +27 -0
  50. package/dist/components/InputGroup.vue.d.ts +17 -0
  51. package/dist/components/LabeledCheckbox.vue.d.ts +20 -0
  52. package/dist/components/LabeledFieldset.vue.d.ts +21 -0
  53. package/dist/components/LoadingSpinner.vue.d.ts +2 -0
  54. package/dist/components/ModalBox.vue.d.ts +27 -0
  55. package/dist/components/PopupBox.vue.d.ts +30 -0
  56. package/dist/components/RadioButtons.vue.d.ts +20 -0
  57. package/dist/components/SelectBox.vue.d.ts +37 -0
  58. package/dist/components/SlideDownUi.vue.d.ts +37 -0
  59. package/dist/components/TabUI.vue.d.ts +52 -0
  60. package/dist/components/TextArea.vue.d.ts +33 -0
  61. package/dist/components/TextBox.vue.d.ts +44 -0
  62. package/dist/components/TextButton.vue.d.ts +10 -0
  63. package/dist/components/ToggleButton.vue.d.ts +23 -0
  64. package/dist/const/index.d.ts +1 -0
  65. package/dist/const/list-theme.d.ts +62 -0
  66. package/dist/index.d.ts +43 -0
  67. package/dist/index.js +3518 -0
  68. package/dist/scripts/form-validation-manager.d.ts +30 -0
  69. package/dist/scripts/unique-id.d.ts +1 -0
  70. package/dist/scripts/use-click-outside.d.ts +13 -0
  71. package/dist/scripts/utils.d.ts +15 -0
  72. package/dist/style.css +1 -0
  73. package/dist/types/index.d.ts +48 -77
  74. package/package.json +16 -8
  75. package/dist/assets/scss/functions.scss +0 -6
  76. package/dist/assets/scss/mixin.scss +0 -33
  77. package/dist/components/ArticleList/Card/Artistic.vue +0 -311
  78. package/dist/components/ArticleList/Card/Entertainment.vue +0 -245
  79. package/dist/components/ArticleList/Card/Gallery.vue +0 -255
  80. package/dist/components/ArticleList/Card/Grid.vue +0 -248
  81. package/dist/components/ArticleList/Card/News.vue +0 -151
  82. package/dist/components/ArticleList/Card/Rounded.vue +0 -155
  83. package/dist/components/ArticleList/Card/Row.vue +0 -168
  84. package/dist/components/ArticleList/Card/Simple.vue +0 -233
  85. package/dist/components/ArticleList/Card/Standard.vue +0 -188
  86. package/dist/components/ArticleList/Card/Tile.vue +0 -172
  87. package/dist/components/ArticleList/GenericArticleList.vue +0 -143
  88. package/dist/components/ArticleList/List/Artistic.vue +0 -24
  89. package/dist/components/ArticleList/List/Entertainment.vue +0 -24
  90. package/dist/components/ArticleList/List/Gallery.vue +0 -24
  91. package/dist/components/ArticleList/List/Grid.vue +0 -216
  92. package/dist/components/ArticleList/List/News.vue +0 -24
  93. package/dist/components/ArticleList/List/Rounded.vue +0 -24
  94. package/dist/components/ArticleList/List/Row.vue +0 -24
  95. package/dist/components/ArticleList/List/Simple.vue +0 -24
  96. package/dist/components/ArticleList/List/Standard.vue +0 -24
  97. package/dist/components/ArticleList/List/Tile.vue +0 -24
  98. package/dist/components/ArticleList/Parts/AuthorInfo.vue +0 -100
  99. package/dist/components/ArticleList/Parts/CardContainer.vue +0 -23
  100. package/dist/components/ArticleList/Parts/CardHeading.vue +0 -43
  101. package/dist/components/ArticleList/Parts/CategoryList.vue +0 -41
  102. package/dist/components/ArticleList/Parts/ExcerptText.vue +0 -43
  103. package/dist/components/ArticleList/Parts/MetadataList.vue +0 -120
  104. package/dist/components/ArticleList/Parts/NoImage.vue +0 -36
  105. package/dist/components/ArticleList/Parts/PostedDate.vue +0 -41
  106. package/dist/components/ArticleList/Parts/TagList.vue +0 -41
  107. package/dist/components/ArticleList/Parts/ThumbnailImage.vue +0 -85
  108. package/dist/components/BasicButton.vue +0 -143
  109. package/dist/components/CheckBox.vue +0 -140
  110. package/dist/components/CheckBoxes.vue +0 -101
  111. package/dist/components/CheckButton.vue +0 -127
  112. package/dist/components/DatePicker.vue +0 -234
  113. package/dist/components/DateRangePicker.vue +0 -85
  114. package/dist/components/DateSelector.vue +0 -273
  115. package/dist/components/DropdownUi.vue +0 -118
  116. package/dist/components/ErrorMessage.vue +0 -61
  117. package/dist/components/Icon/CalendarIcon.vue +0 -8
  118. package/dist/components/Icon/CheckIcon.vue +0 -8
  119. package/dist/components/Icon/CloseIcon.vue +0 -8
  120. package/dist/components/Icon/Folder.vue +0 -8
  121. package/dist/components/Icon/Image.vue +0 -14
  122. package/dist/components/Icon/KeyboardArrowDownIcon.vue +0 -8
  123. package/dist/components/Icon/Tag.vue +0 -8
  124. package/dist/components/InputBox.vue +0 -134
  125. package/dist/components/InputGroup.vue +0 -41
  126. package/dist/components/LabeledCheckbox.vue +0 -82
  127. package/dist/components/LabeledFieldset.vue +0 -41
  128. package/dist/components/LoadingSpinner.vue +0 -56
  129. package/dist/components/ModalBox.vue +0 -192
  130. package/dist/components/PopupBox.vue +0 -93
  131. package/dist/components/RadioButtons.vue +0 -163
  132. package/dist/components/SelectBox.vue +0 -166
  133. package/dist/components/SlideDownUi.vue +0 -123
  134. package/dist/components/TabUI.vue +0 -123
  135. package/dist/components/TextArea.vue +0 -115
  136. package/dist/components/TextBox.vue +0 -111
  137. package/dist/components/TextButton.vue +0 -47
  138. package/dist/components/ToggleButton.vue +0 -179
  139. package/dist/const/index.ts +0 -2
  140. package/dist/const/list-theme.ts +0 -62
  141. package/dist/index.ts +0 -126
  142. package/dist/scripts/form-validation-manager.ts +0 -63
  143. package/dist/scripts/utils.ts +0 -44
  144. package/dist/types/custom.d.ts +0 -1
  145. package/dist/types/vue-shim.d.ts +0 -5
@@ -1,155 +0,0 @@
1
- <script setup lang="ts">
2
- import { returnAuthor } from '../../../scripts/utils'
3
- import type {
4
- Article,
5
- Category,
6
- PostConfig,
7
- } from '../../../types'
8
- import CardContainer from '../../../components/ArticleList/Parts/CardContainer.vue'
9
- import ThumbnailImage from '../../../components/ArticleList/Parts/ThumbnailImage.vue'
10
- import AuthorInfo from '../../../components/ArticleList/Parts/AuthorInfo.vue'
11
- import CardHeading from '../../../components/ArticleList/Parts/CardHeading.vue'
12
- import CategoryList from '../../../components/ArticleList/Parts/CategoryList.vue'
13
- import TagList from '../../../components/ArticleList/Parts/TagList.vue'
14
- import PostedDate from '../../../components/ArticleList/Parts/PostedDate.vue'
15
- import ExcerptText from '../../../components/ArticleList/Parts/ExcerptText.vue'
16
-
17
- defineProps<{
18
- article: Article
19
- path: string
20
- isPickUpItem: boolean
21
- postConfig: PostConfig
22
- categories: Category[]
23
- }>()
24
- </script>
25
-
26
- <template>
27
- <CardContainer
28
- v-if="article"
29
- :path="path"
30
- :class="[$style.container, {[$style.pickup]: isPickUpItem}]"
31
- >
32
- <ThumbnailImage
33
- :article="article"
34
- :class="$style.thumbnail"
35
- style="grid-area: thumbnail;"
36
- />
37
- <PostedDate
38
- :date="article.date"
39
- formatString="yy.M.d"
40
- color="var(--gray)"
41
- :class="$style.date"
42
- style="grid-area: date;"
43
- />
44
- <AuthorInfo
45
- v-if="postConfig.author && returnAuthor(article)"
46
- :avatarUrls="returnAuthor(article)?.avatar_urls"
47
- :thumbnail="{
48
- shape: 'circle',
49
- }"
50
- :class="$style.author"
51
- direction="row-reverse"
52
- style="grid-area: author;"
53
- />
54
- <CardHeading
55
- :heading="article.title.rendered"
56
- :class="$style.heading"
57
- style="grid-area: heading;"
58
- />
59
- <CategoryList
60
- v-if="postConfig.category && article.categories"
61
- :categoryIds="article.categories"
62
- :categoryData="categories"
63
- :icon="{ color: 'var(--main-color)' }"
64
- :label="{
65
- backgroundColor: 'var(--main-color)',
66
- color : 'var(--white)',
67
- fontSize : 'small',
68
- shape : 'rounded',
69
- }"
70
- :class="$style.category"
71
- style="grid-area: category;"
72
- />
73
- <TagList
74
- v-if="postConfig.tag"
75
- :article="article"
76
- :icon="{ color: 'var(--sub-color)' }"
77
- :label="{
78
- backgroundColor: 'var(--sub-color)',
79
- color : 'var(--white)',
80
- fontSize : 'smaller',
81
- shape : 'rounded',
82
- }"
83
- :class="$style.tag"
84
- style="grid-area: tag;"
85
- />
86
- <ExcerptText
87
- :excerpt="article.excerpt.rendered"
88
- :class="$style.excerpt"
89
- style="grid-area: excerpt;"
90
- />
91
- </CardContainer>
92
- </template>
93
-
94
- <style lang="scss" module>
95
- @use '../../../assets/scss/mixin' as *;
96
-
97
- .container {
98
- grid-template-columns: auto auto;
99
- grid-template-rows : auto auto auto auto auto 1fr;
100
- grid-template-areas :
101
- 'thumbnail thumbnail'
102
- 'date author'
103
- 'heading heading'
104
- 'category category'
105
- 'tag tag'
106
- 'excerpt excerpt';
107
- gap: var(--sp-small);
108
-
109
- &:hover {
110
- .thumbnail {
111
- opacity: .8;
112
- }
113
- }
114
-
115
- &.pickup {
116
- @include media('tablet') {
117
- grid-template-columns: calc((100% - var(--sp-larger) * 2) / 3) auto auto;
118
- grid-template-rows : auto auto auto auto 1fr;
119
- grid-template-areas :
120
- 'thumbnail date author'
121
- 'thumbnail heading heading'
122
- 'thumbnail category category'
123
- 'thumbnail tag tag'
124
- 'thumbnail excerpt excerpt';
125
- column-gap: var(--sp-larger);
126
-
127
- .thumbnail {
128
- margin-inline-end: var(--sp-larger);
129
- margin-block-end: 0;
130
- }
131
-
132
- .heading {
133
- font-size: xx-large;
134
- }
135
- }
136
- }
137
- }
138
-
139
- .date {
140
- align-items: center;
141
- }
142
-
143
- .thumbnail {
144
- transition : opacity var(--animation-duration);
145
- margin-block-end: var(--sp-small);
146
-
147
- > * {
148
- border-radius: var(--bv);
149
- }
150
- }
151
-
152
- .heading {
153
- margin-block-end: var(--sp-small);
154
- }
155
- </style>
@@ -1,168 +0,0 @@
1
- <script setup lang="ts">
2
- import { returnAuthor } from '../../../scripts/utils'
3
- import type {
4
- Article,
5
- Category,
6
- PostConfig,
7
- } from '../../../types'
8
- import CardContainer from '../../../components/ArticleList/Parts/CardContainer.vue'
9
- import ThumbnailImage from '../../../components/ArticleList/Parts/ThumbnailImage.vue'
10
- import AuthorInfo from '../../../components/ArticleList/Parts/AuthorInfo.vue'
11
- import CardHeading from '../../../components/ArticleList/Parts/CardHeading.vue'
12
- import CategoryList from '../../../components/ArticleList/Parts/CategoryList.vue'
13
- import TagList from '../../../components/ArticleList/Parts/TagList.vue'
14
- import PostedDate from '../../../components/ArticleList/Parts/PostedDate.vue'
15
- import ExcerptText from '../../../components/ArticleList/Parts/ExcerptText.vue'
16
-
17
- defineProps<{
18
- article: Article
19
- path: string
20
- postConfig: PostConfig
21
- categories: Category[]
22
- }>()
23
- </script>
24
-
25
- <template>
26
- <CardContainer
27
- v-if="article"
28
- :class="$style.container"
29
- :path="path"
30
- >
31
- <CategoryList
32
- v-if="postConfig.category && article.categories"
33
- :categoryIds="article.categories"
34
- :categoryData="categories"
35
- :label="{
36
- color : 'var(--gray)',
37
- fontSize : 'clamp(24px, 0.55rem + 2.99vw, 40px)',
38
- }"
39
- :class="$style.category"
40
- style="grid-area: category;"
41
- />
42
- <ThumbnailImage
43
- :article="article"
44
- :aspectRatio="{
45
- desktop: '21/9',
46
- tablet : '21/9',
47
- mobile : '21/9',
48
- }"
49
- :class="$style.thumbnail"
50
- style="grid-area: thumbnail;"
51
- />
52
- <PostedDate
53
- :date="article.date"
54
- formatString="yy.M.d"
55
- :class="$style.date"
56
- color="var(--gray)"
57
- style="grid-area: date;"
58
- />
59
- <CardHeading
60
- :heading="article.title.rendered"
61
- :class="$style.heading"
62
- style="grid-area: heading;"
63
- />
64
- <ExcerptText
65
- :excerpt="article.excerpt.rendered"
66
- :class="$style.excerpt"
67
- fontSize="small"
68
- style="grid-area: excerpt;"
69
- />
70
- <TagList
71
- v-if="postConfig.tag"
72
- :article="article"
73
- :label="{
74
- color : 'var(--text-color)',
75
- fontSize: 'small',
76
- }"
77
- :class="$style.tag"
78
- delimiter="/"
79
- style="grid-area: tag;"
80
- />
81
- <AuthorInfo
82
- v-if="postConfig.author && returnAuthor(article)"
83
- :avatarUrls="returnAuthor(article)?.avatar_urls"
84
- :name="returnAuthor(article)?.name"
85
- :class="$style.author"
86
- :text="{
87
- fontSize: 'small',
88
- color : 'var(--gray)',
89
- }"
90
- style="grid-area: author;"
91
- />
92
- </CardContainer>
93
- </template>
94
-
95
- <style lang="scss" module>
96
- @use '../../../assets/scss/mixin' as *;
97
-
98
- .container {
99
- grid-template-columns: 50% 1fr auto;
100
- grid-template-rows : auto auto auto 1fr auto;
101
- grid-template-areas :
102
- 'category category category'
103
- 'thumbnail date date'
104
- 'thumbnail heading heading'
105
- 'thumbnail excerpt excerpt'
106
- 'thumbnail tag author';
107
- column-gap: var(--sp-large);
108
-
109
- &::before {
110
- content : '';
111
- display : block;
112
- width : calc(100% + var(--sp-medium));
113
- height : 100%;
114
- background-color: var(--primary-color);
115
- mix-blend-mode : soft-light;
116
- position : absolute;
117
- top : var(--sp-small);
118
- left : calc(-1 * var(--sp-small));
119
- transition : opacity var(--animation-duration);
120
- opacity : 0;
121
- pointer-events : none;
122
- }
123
-
124
- &:hover {
125
- &::before {
126
- opacity: .1;
127
- }
128
- }
129
-
130
- @include media('mobile') {
131
- grid-template-columns: 1fr auto;
132
- grid-template-rows : auto auto auto auto 1fr auto;
133
- grid-template-areas :
134
- 'category category'
135
- 'thumbnail thumbnail'
136
- 'date date'
137
- 'heading heading'
138
- 'excerpt excerpt'
139
- 'tag author';
140
- column-gap: 0;
141
- }
142
- }
143
-
144
- .thumbnail {
145
- @include media('mobile') {
146
- margin-block-end: var(--sp-small);
147
- }
148
- }
149
-
150
- .excerpt {
151
- @include media('mobile') {
152
- margin-block-end: var(--sp-medium);
153
- }
154
- }
155
-
156
- .category {
157
- position: relative;
158
- top : var(--sp-small);
159
- }
160
-
161
- .heading {
162
- margin-block-end: var(--sp-medium);
163
- }
164
-
165
- .tag {
166
- padding-block: var(--sp-small);
167
- }
168
- </style>
@@ -1,233 +0,0 @@
1
- <script setup lang="ts">
2
- import { returnAuthor } from '../../../scripts/utils'
3
- import type {
4
- Article,
5
- Category,
6
- PostConfig,
7
- } from '../../../types'
8
- import CardContainer from '../../../components/ArticleList/Parts/CardContainer.vue'
9
- import ThumbnailImage from '../../../components/ArticleList/Parts/ThumbnailImage.vue'
10
- import AuthorInfo from '../../../components/ArticleList/Parts/AuthorInfo.vue'
11
- import CardHeading from '../../../components/ArticleList/Parts/CardHeading.vue'
12
- import CategoryList from '../../../components/ArticleList/Parts/CategoryList.vue'
13
- import TagList from '../../../components/ArticleList/Parts/TagList.vue'
14
- import PostedDate from '../../../components/ArticleList/Parts/PostedDate.vue'
15
- import ExcerptText from '../../../components/ArticleList/Parts/ExcerptText.vue'
16
-
17
- defineProps<{
18
- article: Article
19
- path: string
20
- isPickUpItem: boolean
21
- postConfig: PostConfig
22
- categories: Category[]
23
- }>()
24
- </script>
25
-
26
- <template>
27
- <CardContainer
28
- v-if="article"
29
- :class="[$style.container, { [$style.pickup]: isPickUpItem} ]"
30
- :path="path"
31
- >
32
- <ThumbnailImage
33
- :article="article"
34
- :aspectRatio="{
35
- desktop: isPickUpItem ? '21/9' : '4/3',
36
- tablet : isPickUpItem ? '21/9' : '4/3',
37
- mobile : '4/3',
38
- }"
39
- :class="$style.thumbnail"
40
- style="grid-area: thumbnail;"
41
- />
42
- <CardHeading
43
- :heading="article.title.rendered"
44
- :class="$style.heading"
45
- color="var(--text-color)"
46
- style="grid-area: heading;"
47
- />
48
- <AuthorInfo
49
- v-if="postConfig.author && returnAuthor(article)"
50
- :name="returnAuthor(article)?.name"
51
- :class="$style.author"
52
- :text="{
53
- color : 'var(--gray)',
54
- preposition: 'by',
55
- }"
56
- style="grid-area: author;"
57
- />
58
- <CategoryList
59
- v-if="postConfig.category && article.categories"
60
- :categoryIds="article.categories"
61
- :categoryData="categories"
62
- :label="{
63
- color : 'var(--gray)',
64
- fontSize : 'small',
65
- fontWeight: 'bold',
66
- }"
67
- :class="$style.category"
68
- style="grid-area: category;"
69
- />
70
- <TagList
71
- v-if="postConfig.tag"
72
- :article="article"
73
- :label="{
74
- color : 'var(--gray)',
75
- fontSize : 'small',
76
- fontWeight: 'bold',
77
- }"
78
- :class="$style.tag"
79
- style="grid-area: tag;"
80
- />
81
- <PostedDate
82
- :date="article.date"
83
- formatString="yy.M.d"
84
- color="var(--gray)"
85
- :class="$style.date"
86
- style="grid-area: date;"
87
- />
88
- <ExcerptText
89
- :excerpt="article.excerpt.rendered"
90
- :class="$style.excerpt"
91
- style="grid-area: excerpt;"
92
- />
93
- </CardContainer>
94
- </template>
95
-
96
- <style lang="scss" module>
97
- @use '../../../assets/scss/mixin' as *;
98
-
99
- .container {
100
- grid-template-columns: auto 1fr;
101
- grid-template-rows : fit-content(62%) auto auto auto 1fr auto;
102
- grid-template-areas :
103
- 'thumbnail thumbnail'
104
- 'category tag'
105
- 'heading heading'
106
- 'excerpt excerpt'
107
- 'author date';
108
- gap : var(--sp-small);
109
- height: 100%;
110
-
111
- &:hover {
112
- .thumbnail {
113
- img {
114
- filter: grayscale(20%);
115
- }
116
- }
117
- }
118
-
119
- &.pickup {
120
- @include media('tablet') {
121
- grid-template-columns: 1fr;
122
- grid-template-rows : 0 1fr auto;
123
- grid-template-areas :
124
- 'thumbnail'
125
- 'heading'
126
- 'date';
127
- gap : 0;
128
- aspect-ratio: 21/9;
129
-
130
- .thumbnail {
131
- position: absolute;
132
- top : 0;
133
- left : 0;
134
-
135
- &::before {
136
- content : '';
137
- display : block;
138
- width : 100%;
139
- height : 100%;
140
- background-color: var(--gray);
141
- mix-blend-mode : multiply;
142
- position : absolute;
143
- top : 0;
144
- left : 0;
145
- z-index : 1;
146
- transition : opacity var(--animation-duration);
147
- opacity : .3;
148
- pointer-events : none;
149
- }
150
- }
151
-
152
- &:hover {
153
- .thumbnail {
154
-
155
- &::before {
156
- opacity: .1;
157
- }
158
- }
159
- }
160
-
161
- .heading,
162
- .date {
163
- position: relative;
164
- z-index : 2;
165
- }
166
-
167
- .heading {
168
- display : flex;
169
- justify-content : flex-start;
170
- align-items : flex-end;
171
- margin-block-start: var(--sp-medium);
172
- margin-inline : var(--sp-large);
173
- font-size : xx-large;
174
- }
175
-
176
- .date {
177
- display : flex;
178
- justify-content: flex-start;
179
- align-items : flex-end;
180
- margin-block : var(--sp-medium) var(--sp-large);
181
- margin-inline : var(--sp-large);
182
- font-size : medium;
183
- color : var(--text-color);
184
- }
185
-
186
- .excerpt,
187
- .category,
188
- .tag,
189
- .author {
190
- display: none;
191
- }
192
- }
193
- }
194
-
195
- .thumbnail {
196
- img {
197
- transition: filter var(--animation-duration);
198
- filter : grayscale(90%);
199
- }
200
- }
201
-
202
- .tag {
203
- grid-column : 1 / 3;
204
- margin-block-start: var(--sp-small);
205
- }
206
-
207
- .category {
208
- margin-block-start: var(--sp-small);
209
-
210
- & + .tag {
211
- grid-column: 2 / 3;
212
-
213
- &::before {
214
- content : '/';
215
- color : var(--gray);
216
- font-size: small;
217
- }
218
- }
219
- }
220
-
221
- .heading {
222
- margin-block-start: var(--sp-small);
223
- }
224
-
225
- .excerpt {
226
- margin-block-end: var(--sp-small);
227
- }
228
-
229
- .date {
230
- justify-content: flex-end;
231
- }
232
- }
233
- </style>